From 2ea21878a3bae38ccd511ffe63d6989bc50bbd52 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 8 Sep 2021 09:25:47 -0400 Subject: [PATCH] Carve out 202D968, 202DB34, 202DBA8, hall_of_fame --- asm/bss_temp.s | 4 +- asm/hall_of_fame.s | 42921 +++++++++++++++++++++++++++++++++++++++++ asm/unk_0202D938.s | 44120 ------------------------------------------- asm/unk_0202D968.s | 332 + asm/unk_0202DB34.s | 107 + asm/unk_0202DBA8.s | 781 + global.inc | 5193 ++--- main.lsf | 4 + 8 files changed, 46744 insertions(+), 46718 deletions(-) create mode 100644 asm/hall_of_fame.s create mode 100644 asm/unk_0202D968.s create mode 100644 asm/unk_0202DB34.s create mode 100644 asm/unk_0202DBA8.s diff --git a/asm/bss_temp.s b/asm/bss_temp.s index 153333c20..33ed3af84 100644 --- a/asm/bss_temp.s +++ b/asm/bss_temp.s @@ -1,8 +1,8 @@ ; Temporary file to declare the static BSS section for ARM9 .bss -_021D2AF4: - .space 0x12DF4 +_021D2AF8: + .space 0x12DF0 .public __global_destructor_chain __global_destructor_chain: ; 0x021E58E8 diff --git a/asm/hall_of_fame.s b/asm/hall_of_fame.s new file mode 100644 index 000000000..30b4bcf33 --- /dev/null +++ b/asm/hall_of_fame.s @@ -0,0 +1,42921 @@ + .include "asm/macros.inc" + .include "global.inc" + + .text + + thumb_func_start sub_0202E0DC +sub_0202E0DC: ; 0x0202E0DC + ldr r0, _0202E0E0 ; =0x00002AB0 + bx lr + .balign 4, 0 +_0202E0E0: .word 0x00002AB0 + thumb_func_end sub_0202E0DC + + thumb_func_start sub_0202E0E4 +sub_0202E0E4: ; 0x0202E0E4 + ldr r3, _0202E0F0 ; =sub_020D47EC + add r1, r0, #0 + mov r0, #0 + ldr r2, _0202E0F4 ; =0x00002AB0 + bx r3 + nop +_0202E0F0: .word sub_020D47EC +_0202E0F4: .word 0x00002AB0 + thumb_func_end sub_0202E0E4 + + thumb_func_start sub_0202E0F8 +sub_0202E0F8: ; 0x0202E0F8 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x18 + str r0, [sp] + str r1, [sp, #4] + str r2, [sp, #8] + cmp r0, #0 + bne _0202E10A + bl GF_AssertFail +_0202E10A: + ldr r1, _0202E288 ; =0x00002AA8 + ldr r0, [sp] + ldr r0, [r0, r1] + cmp r0, #0x1e + blo _0202E118 + bl GF_AssertFail +_0202E118: + ldr r1, _0202E28C ; =0x00002AAC + ldr r0, [sp] + ldr r2, [r0, r1] + ldr r0, _0202E290 ; =0x0000270F + cmp r2, r0 + blo _0202E126 + b _0202E284 +_0202E126: + ldr r0, [sp] + sub r1, r1, #4 + ldr r1, [r0, r1] + mov r0, #0x5b + lsl r0, r0, #2 + add r2, r1, #0 + mul r2, r0 + ldr r0, [sp] + add r0, r0, r2 + str r0, [sp, #0x14] + ldr r0, [sp, #4] + bl GetPartyCount + str r0, [sp, #0x10] + mov r0, #0xb + mov r1, #0 + bl String_ctor + mov r2, #0x5a + add r6, r0, #0 + ldr r1, [sp, #0x14] + mov r0, #0 + lsl r2, r2, #2 + bl sub_020D4790 + ldr r0, [sp, #0x10] + mov r7, #0 + cmp r0, #0 + ble _0202E236 + ldr r5, [sp, #0x14] +_0202E162: + ldr r0, [sp, #4] + add r1, r7, #0 + bl GetPartyMonByIndex + add r4, r0, #0 + bl sub_0206DD40 + str r0, [sp, #0xc] + add r0, r4, #0 + mov r1, #0x4c + mov r2, #0 + bl GetMonData + cmp r0, #0 + bne _0202E226 + add r0, r4, #0 + mov r1, #5 + mov r2, #0 + bl GetMonData + strh r0, [r5] + add r0, r4, #0 + mov r1, #0xa1 + mov r2, #0 + bl GetMonData + strb r0, [r5, #2] + add r0, r4, #0 + mov r1, #0x70 + mov r2, #0 + bl GetMonData + mov r1, #0 + strb r0, [r5, #3] + add r0, r4, #0 + add r2, r1, #0 + bl GetMonData + str r0, [r5, #4] + add r0, r4, #0 + mov r1, #7 + mov r2, #0 + bl GetMonData + str r0, [r5, #8] + add r0, r4, #0 + mov r1, #0x36 + mov r2, #0 + bl GetMonData + strh r0, [r5, #0x32] + add r0, r4, #0 + mov r1, #0x37 + mov r2, #0 + bl GetMonData + strh r0, [r5, #0x34] + add r0, r4, #0 + mov r1, #0x38 + mov r2, #0 + bl GetMonData + strh r0, [r5, #0x36] + add r0, r4, #0 + mov r1, #0x39 + mov r2, #0 + bl GetMonData + strh r0, [r5, #0x38] + cmp r6, #0 + beq _0202E21E + add r0, r4, #0 + mov r1, #0x77 + add r2, r6, #0 + bl GetMonData + add r1, r5, #0 + add r0, r6, #0 + add r1, #0xc + mov r2, #0xb + bl CopyStringToU16Array + add r0, r4, #0 + mov r1, #0x91 + add r2, r6, #0 + bl GetMonData + add r1, r5, #0 + add r0, r6, #0 + add r1, #0x22 + mov r2, #8 + bl CopyStringToU16Array + b _0202E224 +_0202E21E: + ldr r0, _0202E294 ; =0x0000FFFF + strh r0, [r5, #0xc] + strh r0, [r5, #0x22] +_0202E224: + add r5, #0x3c +_0202E226: + ldr r1, [sp, #0xc] + add r0, r4, #0 + bl sub_0206DD8C + ldr r0, [sp, #0x10] + add r7, r7, #1 + cmp r7, r0 + blt _0202E162 +_0202E236: + ldr r0, [sp, #8] + mov r1, #0x5a + ldr r2, [r0] + ldr r0, [sp, #0x14] + lsl r1, r1, #2 + strh r2, [r0, r1] + ldr r0, [sp, #8] + add r2, r1, #2 + ldr r3, [r0, #4] + ldr r0, [sp, #0x14] + add r1, r1, #3 + strb r3, [r0, r2] + ldr r0, [sp, #8] + ldr r2, [r0, #8] + ldr r0, [sp, #0x14] + strb r2, [r0, r1] + ldr r1, _0202E288 ; =0x00002AA8 + ldr r0, [sp] + ldr r0, [r0, r1] + add r2, r0, #1 + ldr r0, [sp] + str r2, [r0, r1] + ldr r0, [r0, r1] + cmp r0, #0x1e + blo _0202E26E + ldr r0, [sp] + mov r2, #0 + str r2, [r0, r1] +_0202E26E: + ldr r1, _0202E28C ; =0x00002AAC + ldr r0, [sp] + ldr r0, [r0, r1] + add r2, r0, #1 + ldr r0, [sp] + cmp r6, #0 + str r2, [r0, r1] + beq _0202E284 + add r0, r6, #0 + bl String_dtor +_0202E284: + add sp, #0x18 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0202E288: .word 0x00002AA8 +_0202E28C: .word 0x00002AAC +_0202E290: .word 0x0000270F +_0202E294: .word 0x0000FFFF + thumb_func_end sub_0202E0F8 + + thumb_func_start sub_0202E298 +sub_0202E298: ; 0x0202E298 + push {r4, lr} + add r4, r0, #0 + bne _0202E2A2 + bl GF_AssertFail +_0202E2A2: + ldr r0, _0202E2BC ; =0x00002AA8 + ldr r0, [r4, r0] + cmp r0, #0x1e + blo _0202E2AE + bl GF_AssertFail +_0202E2AE: + ldr r0, _0202E2C0 ; =0x00002AAC + ldr r0, [r4, r0] + cmp r0, #0x1e + blo _0202E2B8 + mov r0, #0x1e +_0202E2B8: + pop {r4, pc} + nop +_0202E2BC: .word 0x00002AA8 +_0202E2C0: .word 0x00002AAC + thumb_func_end sub_0202E298 + + thumb_func_start sub_0202E2C4 +sub_0202E2C4: ; 0x0202E2C4 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + cmp r5, #0 + bne _0202E2D2 + bl GF_AssertFail +_0202E2D2: + ldr r0, _0202E2F0 ; =0x00002AA8 + ldr r0, [r5, r0] + cmp r0, #0x1e + blo _0202E2DE + bl GF_AssertFail +_0202E2DE: + cmp r4, #0x1e + blt _0202E2E6 + bl GF_AssertFail +_0202E2E6: + ldr r0, _0202E2F4 ; =0x00002AAC + ldr r0, [r5, r0] + sub r0, r0, r4 + pop {r3, r4, r5, pc} + nop +_0202E2F0: .word 0x00002AA8 +_0202E2F4: .word 0x00002AAC + thumb_func_end sub_0202E2C4 + + thumb_func_start sub_0202E2F8 +sub_0202E2F8: ; 0x0202E2F8 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + cmp r5, #0 + bne _0202E306 + bl GF_AssertFail +_0202E306: + ldr r0, _0202E340 ; =0x00002AA8 + ldr r0, [r5, r0] + cmp r0, #0x1e + blo _0202E312 + bl GF_AssertFail +_0202E312: + cmp r4, #0x1e + blt _0202E31A + bl GF_AssertFail +_0202E31A: + ldr r0, _0202E340 ; =0x00002AA8 + ldr r0, [r5, r0] + sub r0, r0, #1 + sub r2, r0, r4 + bpl _0202E326 + add r2, #0x1e +_0202E326: + mov r1, #0x5b + lsl r1, r1, #2 + mul r1, r2 + mov r0, #0 + add r2, r5, r1 +_0202E330: + ldrh r1, [r2] + cmp r1, #0 + beq _0202E33E + add r0, r0, #1 + add r2, #0x3c + cmp r0, #6 + blo _0202E330 +_0202E33E: + pop {r3, r4, r5, pc} + .balign 4, 0 +_0202E340: .word 0x00002AA8 + thumb_func_end sub_0202E2F8 + + thumb_func_start sub_0202E344 +sub_0202E344: ; 0x0202E344 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + add r7, r2, #0 + add r4, r3, #0 + cmp r5, #0 + bne _0202E356 + bl GF_AssertFail +_0202E356: + ldr r0, _0202E3C0 ; =0x00002AA8 + ldr r0, [r5, r0] + cmp r0, #0x1e + blo _0202E362 + bl GF_AssertFail +_0202E362: + cmp r6, #0x1e + blt _0202E36A + bl GF_AssertFail +_0202E36A: + ldr r0, _0202E3C0 ; =0x00002AA8 + ldr r0, [r5, r0] + sub r0, r0, #1 + sub r1, r0, r6 + bpl _0202E376 + add r1, #0x1e +_0202E376: + mov r0, #0x5b + lsl r0, r0, #2 + mul r0, r1 + add r1, r5, r0 + mov r0, #0x3c + mul r0, r7 + add r5, r1, r0 + ldrh r0, [r1, r0] + add r1, r5, #0 + add r1, #0xc + strh r0, [r4, #0x10] + ldrb r0, [r5, #2] + strb r0, [r4, #0x12] + ldr r0, [r5, #4] + str r0, [r4, #8] + ldr r0, [r5, #8] + str r0, [r4, #0xc] + ldrb r0, [r5, #3] + strb r0, [r4, #0x13] + ldr r0, [r4] + bl CopyU16ArrayToString + add r1, r5, #0 + ldr r0, [r4, #4] + add r1, #0x22 + bl CopyU16ArrayToString + mov r1, #0 +_0202E3AE: + ldrh r0, [r5, #0x32] + add r1, r1, #1 + add r5, r5, #2 + strh r0, [r4, #0x14] + add r4, r4, #2 + cmp r1, #4 + blt _0202E3AE + pop {r3, r4, r5, r6, r7, pc} + nop +_0202E3C0: .word 0x00002AA8 + thumb_func_end sub_0202E344 + + thumb_func_start sub_0202E3C4 +sub_0202E3C4: ; 0x0202E3C4 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r6, r1, #0 + add r4, r2, #0 + cmp r5, #0 + bne _0202E3D4 + bl GF_AssertFail +_0202E3D4: + ldr r0, _0202E418 ; =0x00002AA8 + ldr r0, [r5, r0] + cmp r0, #0x1e + blo _0202E3E0 + bl GF_AssertFail +_0202E3E0: + cmp r6, #0x1e + blt _0202E3E8 + bl GF_AssertFail +_0202E3E8: + ldr r0, _0202E418 ; =0x00002AA8 + ldr r0, [r5, r0] + sub r0, r0, #1 + sub r2, r0, r6 + bpl _0202E3F4 + add r2, #0x1e +_0202E3F4: + mov r0, #0x5b + lsl r0, r0, #2 + add r1, r2, #0 + mul r1, r0 + add r2, r5, r1 + sub r1, r0, #4 + ldrh r1, [r2, r1] + str r1, [r4] + sub r1, r0, #2 + ldrb r1, [r2, r1] + sub r0, r0, #1 + str r1, [r4, #4] + ldrb r0, [r2, r0] + str r0, [r4, #8] + mov r0, #0 + str r0, [r4, #0xc] + pop {r4, r5, r6, pc} + nop +_0202E418: .word 0x00002AA8 + thumb_func_end sub_0202E3C4 + + thumb_func_start sub_0202E41C +sub_0202E41C: ; 0x0202E41C + ldr r0, _0202E420 ; =0x00000BC8 + bx lr + .balign 4, 0 +_0202E420: .word 0x00000BC8 + thumb_func_end sub_0202E41C + + thumb_func_start sub_0202E424 +sub_0202E424: ; 0x0202E424 + push {r3, lr} + ldr r2, _0202E438 ; =0x00000BC8 + add r1, r0, #0 + mov r0, #0 + bl MIi_CpuClearFast + mov r0, #0x17 + bl sub_0202893C + pop {r3, pc} + .balign 4, 0 +_0202E438: .word 0x00000BC8 + thumb_func_end sub_0202E424 + + thumb_func_start sub_0202E43C +sub_0202E43C: ; 0x0202E43C + push {r4, lr} + add r4, r0, #0 + add r1, r4, #0 + mov r0, #0 + add r1, #0xc + mov r2, #0xc0 + bl MIi_CpuClearFast + add r1, r4, #0 + mov r0, #0 + add r1, #0xcc + mov r2, #0xc0 + bl MIi_CpuClearFast + mov r1, #0x63 + lsl r1, r1, #2 + mov r0, #0 + add r1, r4, r1 + mov r2, #0xc0 + bl MIi_CpuClearFast + add r0, r4, #0 + bl sub_0202E474 + mov r0, #0x17 + bl sub_0202893C + pop {r4, pc} + thumb_func_end sub_0202E43C + + thumb_func_start sub_0202E474 +sub_0202E474: ; 0x0202E474 + push {r4, lr} + add r4, r0, #0 + mov r1, #0 + bl sub_0202E48C + add r0, r4, #0 + bl sub_0202E498 + mov r0, #0x17 + bl sub_0202893C + pop {r4, pc} + thumb_func_end sub_0202E474 + + thumb_func_start sub_0202E48C +sub_0202E48C: ; 0x0202E48C + ldr r3, _0202E494 ; =sub_0202893C + strb r1, [r0, #8] + mov r0, #0x17 + bx r3 + .balign 4, 0 +_0202E494: .word sub_0202893C + thumb_func_end sub_0202E48C + + thumb_func_start sub_0202E498 +sub_0202E498: ; 0x0202E498 + mov r2, #0 + add r1, r2, #0 +_0202E49C: + strb r1, [r0, r2] + add r2, r2, #1 + cmp r2, #4 + blt _0202E49C + ldr r3, _0202E4AC ; =sub_0202893C + mov r0, #0x17 + bx r3 + nop +_0202E4AC: .word sub_0202893C + thumb_func_end sub_0202E498 + + thumb_func_start sub_0202E4B0 +sub_0202E4B0: ; 0x0202E4B0 + lsl r1, r0, #1 + ldr r0, _0202E4B8 ; =0x020F684C + ldrb r0, [r0, r1] + bx lr + .balign 4, 0 +_0202E4B8: .word 0x020F684C + thumb_func_end sub_0202E4B0 + + thumb_func_start sub_0202E4BC +sub_0202E4BC: ; 0x0202E4BC + lsl r1, r0, #1 + ldr r0, _0202E4C4 ; =0x020F684D + ldrb r0, [r0, r1] + bx lr + .balign 4, 0 +_0202E4C4: .word 0x020F684D + thumb_func_end sub_0202E4BC + + thumb_func_start sub_0202E4C8 +sub_0202E4C8: ; 0x0202E4C8 + push {r3, lr} + mov r1, #0 + str r1, [r0] + str r1, [r0, #4] + add r0, #8 + mov r1, #8 + bl StringFillEOS + mov r0, #0x18 + bl sub_0202893C + pop {r3, pc} + thumb_func_end sub_0202E4C8 + + thumb_func_start sub_0202E4E0 +sub_0202E4E0: ; 0x0202E4E0 + push {r3, lr} + add r0, #8 + bl StringLength + cmp r0, #0 + beq _0202E4F0 + mov r0, #1 + pop {r3, pc} +_0202E4F0: + mov r0, #0 + pop {r3, pc} + thumb_func_end sub_0202E4E0 + + thumb_func_start sub_0202E4F4 +sub_0202E4F4: ; 0x0202E4F4 + mov r0, #0xea + lsl r0, r0, #4 + bx lr + .balign 4, 0 + thumb_func_end sub_0202E4F4 + + thumb_func_start sub_0202E4FC +sub_0202E4FC: ; 0x0202E4FC + push {r3, r4, r5, r6, r7, lr} + mov r2, #0xea + mov r1, #0 + lsl r2, r2, #4 + add r6, r0, #0 + bl MIi_CpuFill8 + mov r7, #0 +_0202E50C: + mov r4, #0 + add r5, r6, #0 +_0202E510: + add r0, r5, #0 + bl sub_0202E4C8 + add r4, r4, #1 + add r5, #0x18 + cmp r4, #6 + blt _0202E510 + add r7, r7, #1 + add r6, #0x90 + cmp r7, #0x1a + blt _0202E50C + mov r0, #0x18 + bl sub_0202893C + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0202E4FC + + thumb_func_start sub_0202E530 +sub_0202E530: ; 0x0202E530 + push {r4, lr} + add r4, r0, #0 + mov r0, #0x18 + bl sub_02028900 + add r0, r4, #0 + mov r1, #0x18 + bl SavArray_get + pop {r4, pc} + thumb_func_end sub_0202E530 + + thumb_func_start sub_0202E544 +sub_0202E544: ; 0x0202E544 + push {r4, r5, r6, lr} + cmp r2, #6 + blo _0202E552 + blo _0202E58A + bl GF_AssertFail + pop {r4, r5, r6, pc} +_0202E552: + mov r3, #0x90 + mul r3, r1 + add r3, r0, r3 + cmp r2, #5 + bge _0202E57C + mov r0, #0x18 + mul r0, r2 + add r6, r3, r0 +_0202E562: + add r5, r6, #0 + add r5, #0x18 + add r4, r6, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + add r2, r2, #1 + add r6, #0x18 + stmia r4!, {r0, r1} + cmp r2, #5 + blt _0202E562 +_0202E57C: + add r3, #0x78 + add r0, r3, #0 + bl sub_0202E4C8 + mov r0, #0x18 + bl sub_0202893C +_0202E58A: + pop {r4, r5, r6, pc} + thumb_func_end sub_0202E544 + + thumb_func_start sub_0202E58C +sub_0202E58C: ; 0x0202E58C + mov r0, #0x4e + lsl r0, r0, #2 + bx lr + .balign 4, 0 + thumb_func_end sub_0202E58C + + thumb_func_start sub_0202E594 +sub_0202E594: ; 0x0202E594 + push {r4, r5, r6, r7, lr} + sub sp, #0x14 + add r5, r0, #0 + add r6, r1, #0 + bl sub_0202CF54 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203107C + str r0, [sp, #4] + add r0, r6, #0 + mov r1, #0x34 + bl AllocFromHeapAtEnd + ldr r7, _0202E668 ; =0x020F6854 + str r0, [sp] + mov r6, #0 + add r5, r0, #0 +_0202E5BA: + cmp r6, #5 + beq _0202E5C8 + cmp r6, #0xa + beq _0202E5EC + cmp r6, #0xb + beq _0202E606 + b _0202E630 +_0202E5C8: + add r0, r4, #0 + mov r1, #0x10 + bl sub_0202D18C + str r0, [sp, #8] + cmp r0, #0 + beq _0202E5E6 + add r0, r4, #0 + mov r1, #0x1e + bl sub_0202D18C + ldr r1, [sp, #8] + bl _u32_div_f + str r0, [sp, #8] +_0202E5E6: + ldr r0, [sp, #8] + str r0, [r5] + b _0202E650 +_0202E5EC: + add r0, r4, #0 + mov r1, #0x5d + bl sub_0202D18C + str r0, [sp, #0xc] + add r0, r4, #0 + mov r1, #0x5e + bl sub_0202D18C + ldr r1, [sp, #0xc] + add r0, r1, r0 + str r0, [r5] + b _0202E650 +_0202E606: + add r0, r4, #0 + mov r1, #0x5b + bl sub_0202D18C + str r0, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x5c + bl sub_0202D18C + ldr r1, [sp, #0x10] + add r1, r1, r0 + beq _0202E62C + ldr r0, [sp] + ldr r2, [r0, #0x28] + mov r0, #0x64 + mul r0, r2 + bl _u32_div_f + add r1, r0, #0 +_0202E62C: + str r1, [r5] + b _0202E650 +_0202E630: + cmp r6, #0 + blt _0202E646 + cmp r6, #4 + bgt _0202E646 + ldr r0, [sp, #4] + ldr r1, [r7] + mov r2, #0xff + bl sub_020310BC + str r0, [r5] + b _0202E650 +_0202E646: + ldr r1, [r7] + add r0, r4, #0 + bl sub_0202D18C + str r0, [r5] +_0202E650: + add r6, r6, #1 + add r5, r5, #4 + add r7, r7, #4 + cmp r6, #0xd + blt _0202E5BA + mov r0, #0x18 + bl sub_0202893C + ldr r0, [sp] + add sp, #0x14 + pop {r4, r5, r6, r7, pc} + nop +_0202E668: .word 0x020F6854 + thumb_func_end sub_0202E594 + + thumb_func_start sub_0202E66C +sub_0202E66C: ; 0x0202E66C + push {r4, r5, r6, r7, lr} + sub sp, #0xc + add r5, r0, #0 + add r4, r1, #0 + bl Sav2_PlayerData_GetProfileAddr + mov r1, #0x4e + add r6, r0, #0 + add r0, r4, #0 + lsl r1, r1, #2 + bl AllocFromHeapAtEnd + mov r2, #0x4e + mov r1, #0 + lsl r2, r2, #2 + str r0, [sp, #4] + bl MIi_CpuFill8 + add r0, r5, #0 + bl sub_0202C854 + mov r1, #1 + bl sub_0202C7B4 + str r0, [sp, #8] + add r0, r6, #0 + add r1, r4, #0 + bl sub_02028F68 + add r7, r0, #0 + add r0, r5, #0 + add r1, r4, #0 + bl sub_0202E594 + ldr r4, [sp, #4] + str r0, [sp] + mov r6, #0 + add r5, r0, #0 +_0202E6B8: + ldr r0, [sp, #8] + add r1, r4, #0 + str r0, [r4] + add r0, r7, #0 + add r1, #8 + mov r2, #8 + bl CopyStringToU16Array + ldr r0, [r5] + add r6, r6, #1 + str r0, [r4, #4] + add r4, #0x18 + add r5, r5, #4 + cmp r6, #0xd + blt _0202E6B8 + ldr r0, [sp] + bl FreeToHeap + add r0, r7, #0 + bl String_dtor + mov r0, #0x18 + bl sub_0202893C + ldr r0, [sp, #4] + add sp, #0xc + pop {r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0202E66C + + thumb_func_start sub_0202E6F0 +sub_0202E6F0: ; 0x0202E6F0 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r4, #0 +_0202E6F6: + add r0, r5, #0 + bl sub_0202E4C8 + add r4, r4, #1 + add r5, #0x18 + cmp r4, #6 + blt _0202E6F6 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0202E6F0 + + thumb_func_start sub_0202E708 +sub_0202E708: ; 0x0202E708 + push {r3, lr} + ldr r3, [r0] + ldr r2, [r1] + cmp r3, r2 + beq _0202E716 + mov r0, #0 + pop {r3, pc} +_0202E716: + add r0, #8 + add r1, #8 + bl StringNotEqual + cmp r0, #0 + bne _0202E726 + mov r0, #1 + pop {r3, pc} +_0202E726: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0202E708 + + thumb_func_start sub_0202E72C +sub_0202E72C: ; 0x0202E72C + push {r3, r4, r5, r6, r7, lr} + add r6, r0, #0 + ldr r0, [r6, #4] + add r7, r1, #0 + mov r4, #0 + cmp r0, #0 + ble _0202E756 + add r5, r6, #0 +_0202E73C: + ldr r0, [r5, #0xc] + add r1, r7, #0 + bl sub_0202E708 + cmp r0, #0 + beq _0202E74C + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0202E74C: + ldr r0, [r6, #4] + add r4, r4, #1 + add r5, r5, #4 + cmp r4, r0 + blt _0202E73C +_0202E756: + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0202E72C + + thumb_func_start sub_0202E75C +sub_0202E75C: ; 0x0202E75C + push {r4, r5, r6, r7, lr} + sub sp, #0xc + add r6, r1, #0 + add r5, r0, #0 + str r2, [sp] + add r0, r6, #0 + mov r1, #0 + mov r2, #0xe0 + add r4, r3, #0 + bl MIi_CpuFill8 + add r0, sp, #0x10 + ldrb r0, [r0, #0x10] + cmp r0, #0 + bne _0202E7EC + mov r2, #0x90 + add r0, r4, #0 + mul r0, r2 + add r1, r6, #0 + add r0, r5, r0 + add r1, #0x50 + str r0, [sp, #8] + bl MIi_CpuCopy8 + add r1, sp, #0x10 + ldrb r3, [r1, #0x18] + mov r0, #0 + cmp r3, #0 + ble _0202E7B6 + mov r2, #0x18 + ldr r1, [sp, #0x24] + mul r2, r4 +_0202E79C: + ldr r5, [r6, #4] + add r0, r0, #1 + add r4, r5, #0 + add r4, r4, #1 + str r4, [r6, #4] + ldr r4, [r1] + lsl r5, r5, #2 + add r4, r4, r2 + add r5, r6, r5 + str r4, [r5, #0xc] + add r1, r1, #4 + cmp r0, r3 + blt _0202E79C +_0202E7B6: + add r4, r6, #0 + add r4, #0x50 + mov r7, #0 + add r5, r4, #0 +_0202E7BE: + add r0, r4, #0 + bl sub_0202E4E0 + cmp r0, #0 + beq _0202E7E0 + add r0, r6, #0 + add r1, r5, #0 + bl sub_0202E72C + cmp r0, #0 + bne _0202E7E0 + ldr r1, [r6] + add r0, r1, #1 + str r0, [r6] + lsl r0, r1, #2 + add r0, r6, r0 + str r4, [r0, #0x38] +_0202E7E0: + add r7, r7, #1 + add r4, #0x18 + add r5, #0x18 + cmp r7, #6 + blt _0202E7BE + b _0202E880 +_0202E7EC: + add r0, r4, #0 + add r0, #0xd + mov r2, #0x90 + add r1, r0, #0 + mul r1, r2 + add r0, r5, r1 + add r1, r6, #0 + add r1, #0x50 + str r0, [sp, #8] + bl MIi_CpuCopy8 + add r0, sp, #0x10 + ldrb r2, [r0, #0x18] + mov r3, #0 + cmp r2, #0 + ble _0202E83A + mov r1, #0x18 + ldr r0, [sp, #0x24] + mul r1, r4 +_0202E812: + ldr r4, [r0] + ldr r5, [r1, r4] + cmp r5, #0 + beq _0202E832 + ldr r4, [sp] + cmp r4, r5 + bne _0202E832 + ldr r5, [r6, #4] + add r4, r5, #0 + add r4, r4, #1 + str r4, [r6, #4] + ldr r4, [r0] + lsl r5, r5, #2 + add r4, r4, r1 + add r5, r6, r5 + str r4, [r5, #0xc] +_0202E832: + add r3, r3, #1 + add r0, r0, #4 + cmp r3, r2 + blt _0202E812 +_0202E83A: + add r4, r6, #0 + mov r0, #0 + add r4, #0x50 + str r0, [sp, #4] + add r5, r6, #0 + add r7, r4, #0 +_0202E846: + add r0, r4, #0 + bl sub_0202E4E0 + cmp r0, #0 + beq _0202E870 + ldr r1, [r5, #0x50] + ldr r0, [sp] + cmp r0, r1 + bne _0202E870 + add r0, r6, #0 + add r1, r7, #0 + bl sub_0202E72C + cmp r0, #0 + bne _0202E870 + ldr r1, [r6] + add r0, r1, #1 + str r0, [r6] + lsl r0, r1, #2 + add r0, r6, r0 + str r4, [r0, #0x38] +_0202E870: + ldr r0, [sp, #4] + add r4, #0x18 + add r0, r0, #1 + add r5, #0x18 + add r7, #0x18 + str r0, [sp, #4] + cmp r0, #6 + blt _0202E846 +_0202E880: + ldr r1, [r6, #4] + ldr r0, [r6] + mov r2, #0 + add r0, r1, r0 + str r0, [r6, #8] + ldr r0, [r6] + cmp r0, #0 + ble _0202E8A8 + add r1, r6, #0 +_0202E892: + ldr r3, [r6, #4] + ldr r0, [r1, #0x38] + add r3, r2, r3 + lsl r3, r3, #2 + add r3, r6, r3 + str r0, [r3, #0xc] + ldr r0, [r6] + add r2, r2, #1 + add r1, r1, #4 + cmp r2, r0 + blt _0202E892 +_0202E8A8: + mov r0, #0 + mov ip, r0 + ldr r0, [r6, #8] + sub r5, r0, #1 + cmp r5, #0 + ble _0202E8EC + add r3, r6, #0 +_0202E8B6: + mov r0, ip + cmp r5, r0 + ble _0202E8DA + lsl r0, r5, #2 + add r4, r6, r0 +_0202E8C0: + ldr r2, [r4, #0xc] + ldr r7, [r3, #0xc] + ldr r0, [r2, #4] + ldr r1, [r7, #4] + cmp r1, r0 + bhs _0202E8D0 + str r2, [r3, #0xc] + str r7, [r4, #0xc] +_0202E8D0: + sub r5, r5, #1 + mov r0, ip + sub r4, r4, #4 + cmp r5, r0 + bgt _0202E8C0 +_0202E8DA: + mov r0, ip + add r0, r0, #1 + mov ip, r0 + ldr r0, [r6, #8] + add r3, r3, #4 + sub r5, r0, #1 + mov r0, ip + cmp r0, r5 + blt _0202E8B6 +_0202E8EC: + ldr r0, [sp, #8] + bl sub_0202E6F0 + mov r3, #0 + add r2, r6, #0 + b _0202E912 +_0202E8F8: + ldr r5, [r2, #0xc] + ldr r4, [sp, #8] + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldr r0, [sp, #8] + add r2, r2, #4 + add r0, #0x18 + str r0, [sp, #8] + add r3, r3, #1 +_0202E912: + cmp r3, #6 + bge _0202E91C + ldr r0, [r6, #8] + cmp r3, r0 + blt _0202E8F8 +_0202E91C: + add sp, #0xc + pop {r4, r5, r6, r7, pc} + thumb_func_end sub_0202E75C + + thumb_func_start sub_0202E920 +sub_0202E920: ; 0x0202E920 + push {r4, r5, r6, r7, lr} + sub sp, #0x14 + add r7, r0, #0 + add r5, r1, #0 + ldr r0, [sp, #0x2c] + mov r1, #0xe0 + str r2, [sp, #0x10] + add r4, r3, #0 + bl AllocFromHeapAtEnd + add r6, r0, #0 + mov r0, #0 + str r0, [sp] + str r4, [sp, #4] + add r0, sp, #0x18 + ldrb r0, [r0, #0x10] + add r1, r6, #0 + add r2, r5, #0 + str r0, [sp, #8] + ldr r0, [sp, #0x2c] + str r0, [sp, #0xc] + ldr r3, [sp, #0x10] + add r0, r7, #0 + bl sub_0202E75C + cmp r5, #0 + beq _0202E972 + mov r0, #1 + str r0, [sp] + str r4, [sp, #4] + add r0, sp, #0x18 + ldrb r0, [r0, #0x10] + add r1, r6, #0 + add r2, r5, #0 + str r0, [sp, #8] + ldr r0, [sp, #0x2c] + str r0, [sp, #0xc] + ldr r3, [sp, #0x10] + add r0, r7, #0 + bl sub_0202E75C +_0202E972: + add r0, r6, #0 + bl FreeToHeap + add sp, #0x14 + pop {r4, r5, r6, r7, pc} + thumb_func_end sub_0202E920 + + thumb_func_start sub_0202E97C +sub_0202E97C: ; 0x0202E97C + push {r4, r5, r6, r7, lr} + sub sp, #0x24 + add r6, r1, #0 + ldr r1, [sp, #0x38] + add r4, r0, #0 + add r5, r2, #0 + add r7, r3, #0 + str r1, [sp, #0x38] + bl sub_0202E530 + str r0, [sp, #8] + add r0, r4, #0 + bl sub_0202C854 + mov r1, #1 + bl sub_0202C7B4 + mov r4, #0 + add r3, r4, #0 + str r0, [sp, #0xc] + cmp r5, #0 + bls _0202E9CC +_0202E9A8: + cmp r3, r6 + beq _0202E9C2 + lsl r0, r3, #2 + ldr r2, [r7, r0] + cmp r2, #0 + beq _0202E9C2 + add r1, r4, #1 + add r0, r4, #0 + lsl r1, r1, #0x18 + lsr r4, r1, #0x18 + lsl r1, r0, #2 + add r0, sp, #0x10 + str r2, [r0, r1] +_0202E9C2: + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 + cmp r3, r5 + blo _0202E9A8 +_0202E9CC: + cmp r4, #0 + beq _0202E9F6 + mov r5, #0 + add r6, sp, #0x10 +_0202E9D4: + ldr r0, [sp, #0x38] + str r4, [sp] + str r0, [sp, #4] + ldr r0, [sp, #8] + ldr r1, [sp, #0xc] + add r2, r5, #0 + add r3, r6, #0 + bl sub_0202E920 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0xd + blo _0202E9D4 + mov r0, #0x18 + bl sub_0202893C +_0202E9F6: + add sp, #0x24 + pop {r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0202E97C + + thumb_func_start sub_0202E9FC +sub_0202E9FC: ; 0x0202E9FC + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + str r2, [sp] + add r4, r0, #0 + add r5, r1, #0 + bl Sav2_PlayerData_GetProfileAddr + str r0, [sp, #4] + ldr r0, [sp] + mov r1, #0x4c + bl AllocFromHeap + mov r1, #0 + mov r2, #0x4c + add r7, r0, #0 + bl MIi_CpuFill8 + add r0, r4, #0 + bl sub_0202C854 + mov r1, #1 + bl sub_0202C7B4 + str r0, [sp, #0xc] + ldr r1, [sp] + add r0, r4, #0 + bl sub_0202E594 + str r0, [sp, #8] + add r0, r5, #0 + bl sub_0202E4B0 + str r0, [r7] + add r0, r5, #0 + bl sub_0202E4BC + ldr r1, [r7] + mov r6, #0 + cmp r1, #0 + ble _0202EA72 + lsl r1, r0, #2 + ldr r0, [sp, #8] + add r4, r7, #0 + add r5, r0, r1 +_0202EA54: + ldr r0, [sp, #0xc] + ldr r1, [sp] + str r0, [r4, #4] + ldr r0, [r5] + str r0, [r4, #8] + ldr r0, [sp, #4] + bl sub_02028F68 + str r0, [r4, #0xc] + ldr r0, [r7] + add r6, r6, #1 + add r4, #0xc + add r5, r5, #4 + cmp r6, r0 + blt _0202EA54 +_0202EA72: + ldr r0, [sp, #8] + bl FreeToHeap + add r0, r7, #0 + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0202E9FC + + thumb_func_start sub_0202EA80 +sub_0202EA80: ; 0x0202EA80 + push {r3, r4, r5, r6, r7, lr} + add r7, r2, #0 + add r5, r0, #0 + str r1, [sp] + add r0, r7, #0 + mov r1, #0x4c + bl AllocFromHeap + mov r1, #0 + mov r2, #0x4c + add r4, r0, #0 + bl MIi_CpuFill8 + ldr r0, [sp] + mov r1, #0x90 + mul r1, r0 + mov r6, #0 + add r5, r5, r1 +_0202EAA4: + add r0, r5, #0 + bl sub_0202E4E0 + cmp r0, #0 + beq _0202EAF0 + ldr r2, [r4] + mov r1, #0xc + mul r1, r2 + ldr r0, [r5] + add r1, r4, r1 + str r0, [r1, #4] + ldr r2, [r4] + mov r1, #0xc + mul r1, r2 + ldr r0, [r5, #4] + add r1, r4, r1 + str r0, [r1, #8] + mov r0, #8 + add r1, r7, #0 + bl String_ctor + ldr r2, [r4] + mov r1, #0xc + mul r1, r2 + add r1, r4, r1 + str r0, [r1, #0xc] + ldr r1, [r4] + mov r0, #0xc + mul r0, r1 + add r0, r4, r0 + add r1, r5, #0 + ldr r0, [r0, #0xc] + add r1, #8 + bl CopyU16ArrayToString + ldr r0, [r4] + add r0, r0, #1 + str r0, [r4] +_0202EAF0: + add r6, r6, #1 + add r5, #0x18 + cmp r6, #6 + blt _0202EAA4 + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0202EA80 + + thumb_func_start sub_0202EAFC +sub_0202EAFC: ; 0x0202EAFC + push {r4, r5, r6, lr} + add r6, r0, #0 + mov r4, #0 + add r5, r6, #0 +_0202EB04: + ldr r0, [r5, #0xc] + cmp r0, #0 + beq _0202EB0E + bl String_dtor +_0202EB0E: + add r4, r4, #1 + add r5, #0xc + cmp r4, #6 + blt _0202EB04 + add r0, r6, #0 + mov r1, #0 + mov r2, #0x4c + bl MIi_CpuFill8 + add r0, r6, #0 + bl FreeToHeap + mov r0, #0x18 + bl sub_0202893C + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0202EAFC + + thumb_func_start sub_0202EB30 +sub_0202EB30: ; 0x0202EB30 + ldr r0, _0202EB34 ; =0x00000688 + bx lr + .balign 4, 0 +_0202EB34: .word 0x00000688 + thumb_func_end sub_0202EB30 + + thumb_func_start sub_0202EB38 +sub_0202EB38: ; 0x0202EB38 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + ldr r2, _0202EB70 ; =0x00000688 + mov r0, #0 + add r1, r5, #0 + bl MIi_CpuClearFast + mov r4, #0 + mov r6, #0xac + add r7, r4, #0 +_0202EB4C: + add r0, r5, #0 + bl ZeroMonData + add r0, r5, #0 + add r1, r6, #0 + add r2, r7, #0 + bl GetMonData + cmp r0, #0 + beq _0202EB64 + bl GF_AssertFail +_0202EB64: + add r4, r4, #1 + add r5, #0xec + cmp r4, #6 + blt _0202EB4C + pop {r3, r4, r5, r6, r7, pc} + nop +_0202EB70: .word 0x00000688 + thumb_func_end sub_0202EB38 + + thumb_func_start sub_0202EB74 +sub_0202EB74: ; 0x0202EB74 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + ldr r2, _0202EBAC ; =0x00000588 + mov r0, #0 + add r1, r5, #0 + bl MIi_CpuClearFast + mov r4, #0 + mov r6, #0xac + add r7, r4, #0 +_0202EB88: + add r0, r5, #0 + bl ZeroMonData + add r0, r5, #0 + add r1, r6, #0 + add r2, r7, #0 + bl GetMonData + cmp r0, #0 + beq _0202EBA0 + bl GF_AssertFail +_0202EBA0: + add r4, r4, #1 + add r5, #0xec + cmp r4, #6 + blt _0202EB88 + pop {r3, r4, r5, r6, r7, pc} + nop +_0202EBAC: .word 0x00000588 + thumb_func_end sub_0202EB74 + + thumb_func_start sub_0202EBB0 +sub_0202EBB0: ; 0x0202EBB0 + push {r4, r5, r6, r7} + add r2, r0, #0 + ldr r3, _0202EC08 ; =0x00000588 + mov r0, #0 + add r5, r2, #0 +_0202EBBA: + ldr r4, [r5, r3] + cmp r1, r4 + beq _0202EC04 + add r0, r0, #1 + add r5, r5, #4 + cmp r0, #0x14 + blt _0202EBBA + ldr r1, _0202EC08 ; =0x00000588 + mov r0, #0 + add r4, r2, #0 +_0202EBCE: + ldr r3, [r4, r1] + cmp r3, #0 + beq _0202EC04 + add r0, r0, #1 + add r4, r4, #4 + cmp r0, #0x14 + blt _0202EBCE + mov r3, #0 + ldr r4, _0202EC0C ; =0x7FFFFFFF + add r5, r3, #0 +_0202EBE2: + ldr r0, _0202EC10 ; =0x000005D8 + ldr r1, [r2, r0] + add r0, r0, #4 + ldr r0, [r2, r0] + sub r6, r1, r4 + mov ip, r0 + mov r6, ip + sbc r6, r3 + bge _0202EBFA + add r4, r1, #0 + add r3, r0, #0 + add r7, r5, #0 +_0202EBFA: + add r5, r5, #1 + add r2, #8 + cmp r5, #0x14 + blt _0202EBE2 + add r0, r7, #0 +_0202EC04: + pop {r4, r5, r6, r7} + bx lr + .balign 4, 0 +_0202EC08: .word 0x00000588 +_0202EC0C: .word 0x7FFFFFFF +_0202EC10: .word 0x000005D8 + thumb_func_end sub_0202EBB0 + + thumb_func_start sub_0202EC14 +sub_0202EC14: ; 0x0202EC14 + add r3, r0, #0 + add r0, r1, #0 + mov r1, #0xec + mul r1, r2 + add r1, r3, r1 + ldr r3, _0202EC24 ; =sub_02071780 + bx r3 + nop +_0202EC24: .word sub_02071780 + thumb_func_end sub_0202EC14 + + thumb_func_start sub_0202EC28 +sub_0202EC28: ; 0x0202EC28 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + bl sub_0202EBB0 + add r6, r0, #0 + lsl r0, r6, #2 + add r1, r5, r0 + ldr r0, _0202EC64 ; =0x00000588 + str r4, [r1, r0] + bl GF_RTC_DateTimeToSec + lsl r2, r6, #3 + add r3, r5, r2 + ldr r2, _0202EC68 ; =0x000005D8 + str r0, [r3, r2] + add r0, r2, #4 + str r1, [r3, r0] + bl OS_GetOwnerRtcOffset + ldr r2, _0202EC6C ; =0x00000678 + str r0, [r5, r2] + add r0, r2, #4 + add r2, #8 + str r1, [r5, r0] + add r0, r5, r2 + bl OS_GetMacAddress + pop {r4, r5, r6, pc} + nop +_0202EC64: .word 0x00000588 +_0202EC68: .word 0x000005D8 +_0202EC6C: .word 0x00000678 + thumb_func_end sub_0202EC28 + + thumb_func_start sub_0202EC70 +sub_0202EC70: ; 0x0202EC70 + push {r4, r5, r6, lr} + add r5, r1, #0 + add r6, r0, #0 + add r4, r2, #0 + cmp r5, #6 + blt _0202EC80 + bl GF_AssertFail +_0202EC80: + mov r0, #0xec + mul r0, r5 + add r3, r6, r0 + mov r2, #0x1d +_0202EC88: + ldmia r3!, {r0, r1} + stmia r4!, {r0, r1} + sub r2, r2, #1 + bne _0202EC88 + ldr r0, [r3] + str r0, [r4] + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0202EC70 + + thumb_func_start sub_0202EC98 +sub_0202EC98: ; 0x0202EC98 + push {r3, r4, r5, r6, r7, lr} + mov r4, #0 + add r5, r0, #0 + add r6, r4, #0 + mov r7, #0xac +_0202ECA2: + add r0, r5, #0 + add r1, r7, #0 + mov r2, #0 + bl GetMonData + cmp r0, #0 + beq _0202ECB2 + add r4, r4, #1 +_0202ECB2: + add r6, r6, #1 + add r5, #0xec + cmp r6, #6 + blt _0202ECA2 + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0202EC98 + + thumb_func_start sub_0202ECC0 +sub_0202ECC0: ; 0x0202ECC0 + push {r3, r4, r5, r6, r7, lr} + add r6, r1, #0 + add r5, r0, #0 + add r0, r6, #0 + mov r1, #0x4c + mov r2, #0 + bl GetMonData + cmp r0, #0 + bne _0202ED12 + add r0, r6, #0 + mov r1, #5 + mov r2, #0 + bl GetMonData + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + add r0, r5, #0 + bl sub_0202A634 + add r7, r0, #0 + add r0, r5, #0 + bl sub_0202CF54 + add r1, r7, #0 + add r2, r4, #0 + bl sub_0202D214 + add r0, r7, #0 + add r1, r6, #0 + bl sub_0202A434 + ldr r0, _0202ED14 ; =0x00000181 + cmp r4, r0 + bne _0202ED12 + add r0, r5, #0 + bl sub_020325EC + mov r1, #0x15 + bl sub_02032744 +_0202ED12: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0202ED14: .word 0x00000181 + thumb_func_end sub_0202ECC0 + + thumb_func_start sub_0202ED18 +sub_0202ED18: ; 0x0202ED18 + mov r0, #8 + bx lr + thumb_func_end sub_0202ED18 + + thumb_func_start sub_0202ED1C +sub_0202ED1C: ; 0x0202ED1C + mov r1, #0 + strb r1, [r0] + strb r1, [r0, #1] + strb r1, [r0, #2] + strb r1, [r0, #3] + strb r1, [r0, #4] + strb r1, [r0, #5] + strb r1, [r0, #6] + strb r1, [r0, #7] + str r1, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202ED1C + + thumb_func_start sub_0202ED34 +sub_0202ED34: ; 0x0202ED34 + ldr r3, _0202ED3C ; =SavArray_get + mov r1, #0x21 + bx r3 + nop +_0202ED3C: .word SavArray_get + thumb_func_end sub_0202ED34 + + thumb_func_start sub_0202ED40 +sub_0202ED40: ; 0x0202ED40 + str r0, [r1] + bx lr + thumb_func_end sub_0202ED40 + + thumb_func_start sub_0202ED44 +sub_0202ED44: ; 0x0202ED44 + ldr r0, [r0] + bx lr + thumb_func_end sub_0202ED44 + + thumb_func_start sub_0202ED48 +sub_0202ED48: ; 0x0202ED48 + ldr r3, [r1, #4] + mov r2, #3 + bic r3, r2 + mov r2, #3 + and r0, r2 + orr r0, r3 + str r0, [r1, #4] + bx lr + thumb_func_end sub_0202ED48 + + thumb_func_start sub_0202ED58 +sub_0202ED58: ; 0x0202ED58 + ldr r3, [r0, #4] + mov r2, #4 + lsl r1, r1, #0x1f + bic r3, r2 + lsr r1, r1, #0x1d + orr r1, r3 + str r1, [r0, #4] + bx lr + thumb_func_end sub_0202ED58 + + thumb_func_start sub_0202ED68 +sub_0202ED68: ; 0x0202ED68 + ldr r0, [r0, #4] + lsl r0, r0, #0x1d + asr r0, r0, #0x1f + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bx lr + thumb_func_end sub_0202ED68 + + thumb_func_start sub_0202ED74 +sub_0202ED74: ; 0x0202ED74 + ldr r0, _0202ED78 ; =0x00000658 + bx lr + .balign 4, 0 +_0202ED78: .word 0x00000658 + thumb_func_end sub_0202ED74 + + thumb_func_start sub_0202ED7C +sub_0202ED7C: ; 0x0202ED7C + ldr r3, _0202ED84 ; =SavArray_get + mov r1, #0x22 + bx r3 + nop +_0202ED84: .word SavArray_get + thumb_func_end sub_0202ED7C + + thumb_func_start sub_0202ED88 +sub_0202ED88: ; 0x0202ED88 + push {r3, lr} + mov r1, #0x22 + bl SavArray_get + bl sub_0202EFB8 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0202ED88 + + thumb_func_start sub_0202ED98 +sub_0202ED98: ; 0x0202ED98 + push {r4, lr} + ldr r2, _0202EDD8 ; =0x00000658 + mov r1, #0 + add r4, r0, #0 + bl MIi_CpuFill8 + mov r0, #3 + strb r0, [r4] + ldr r1, [r4, #4] + ldr r0, _0202EDDC ; =0xFE03FFFF + and r0, r1 + str r0, [r4, #4] + mov r0, #0 + strb r0, [r4, #1] + mov r0, #0x80 + strb r0, [r4, #3] + ldrb r0, [r4, #3] + strb r0, [r4, #2] + ldr r1, [r4, #4] + ldr r0, _0202EDE0 ; =0xF9FFFFFF + and r1, r0 + ldr r0, _0202EDE4 ; =0xE7FFFFFF + and r0, r1 + str r0, [r4, #4] + add r0, r4, #0 + bl sub_0202EF9C + ldr r0, _0202EDE8 ; =0x000004B8 + add r0, r4, r0 + bl sub_0202EFE8 + pop {r4, pc} + .balign 4, 0 +_0202EDD8: .word 0x00000658 +_0202EDDC: .word 0xFE03FFFF +_0202EDE0: .word 0xF9FFFFFF +_0202EDE4: .word 0xE7FFFFFF +_0202EDE8: .word 0x000004B8 + thumb_func_end sub_0202ED98 + + thumb_func_start sub_0202EDEC +sub_0202EDEC: ; 0x0202EDEC + ldr r3, _0202EDF0 ; =sub_0202ED98 + bx r3 + .balign 4, 0 +_0202EDF0: .word sub_0202ED98 + thumb_func_end sub_0202EDEC + + thumb_func_start sub_0202EDF4 +sub_0202EDF4: ; 0x0202EDF4 + add r0, #8 + bx lr + thumb_func_end sub_0202EDF4 + + thumb_func_start sub_0202EDF8 +sub_0202EDF8: ; 0x0202EDF8 + ldrb r0, [r0] + bx lr + thumb_func_end sub_0202EDF8 + + thumb_func_start sub_0202EDFC +sub_0202EDFC: ; 0x0202EDFC + strb r1, [r0] + bx lr + thumb_func_end sub_0202EDFC + + thumb_func_start sub_0202EE00 +sub_0202EE00: ; 0x0202EE00 + cmp r1, #0 + beq _0202EE0E + cmp r1, #1 + beq _0202EE18 + cmp r1, #2 + beq _0202EE30 + bx lr +_0202EE0E: + ldr r2, [r0, #4] + ldr r1, _0202EE48 ; =0xF9FFFFFF + and r1, r2 + str r1, [r0, #4] + bx lr +_0202EE18: + ldr r2, [r0, #4] + ldr r1, _0202EE48 ; =0xF9FFFFFF + and r1, r2 + lsl r2, r2, #5 + lsr r3, r2, #0x1e + mov r2, #1 + orr r2, r3 + lsl r2, r2, #0x1e + lsr r2, r2, #5 + orr r1, r2 + str r1, [r0, #4] + bx lr +_0202EE30: + ldr r2, [r0, #4] + ldr r1, _0202EE48 ; =0xF9FFFFFF + and r1, r2 + lsl r2, r2, #5 + lsr r3, r2, #0x1e + mov r2, #2 + orr r2, r3 + lsl r2, r2, #0x1e + lsr r2, r2, #5 + orr r1, r2 + str r1, [r0, #4] + bx lr + .balign 4, 0 +_0202EE48: .word 0xF9FFFFFF + thumb_func_end sub_0202EE00 + + thumb_func_start sub_0202EE4C +sub_0202EE4C: ; 0x0202EE4C + ldr r0, [r0, #4] + lsl r0, r0, #5 + lsr r0, r0, #0x1e + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bx lr + thumb_func_end sub_0202EE4C + + thumb_func_start sub_0202EE58 +sub_0202EE58: ; 0x0202EE58 + cmp r1, #3 + bhs _0202EE6A + ldr r3, [r0, #4] + ldr r2, _0202EE6C ; =0xE7FFFFFF + lsl r1, r1, #0x1e + and r2, r3 + lsr r1, r1, #3 + orr r1, r2 + str r1, [r0, #4] +_0202EE6A: + bx lr + .balign 4, 0 +_0202EE6C: .word 0xE7FFFFFF + thumb_func_end sub_0202EE58 + + thumb_func_start sub_0202EE70 +sub_0202EE70: ; 0x0202EE70 + ldr r0, [r0, #4] + lsl r0, r0, #3 + lsr r0, r0, #0x1e + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bx lr + thumb_func_end sub_0202EE70 + + thumb_func_start sub_0202EE7C +sub_0202EE7C: ; 0x0202EE7C + ldr r0, [r0, #4] + lsl r0, r0, #7 + lsr r0, r0, #0x19 + bx lr + thumb_func_end sub_0202EE7C + + thumb_func_start sub_0202EE84 +sub_0202EE84: ; 0x0202EE84 + ldr r3, [r0, #4] + ldr r2, _0202EE94 ; =0xFE03FFFF + lsl r1, r1, #0x19 + and r2, r3 + lsr r1, r1, #7 + orr r1, r2 + str r1, [r0, #4] + bx lr + .balign 4, 0 +_0202EE94: .word 0xFE03FFFF + thumb_func_end sub_0202EE84 + + thumb_func_start sub_0202EE98 +sub_0202EE98: ; 0x0202EE98 + ldr r0, [r0, #4] + lsl r0, r0, #0x17 + lsr r0, r0, #0x17 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bx lr + thumb_func_end sub_0202EE98 + + thumb_func_start sub_0202EEA4 +sub_0202EEA4: ; 0x0202EEA4 + ldrb r0, [r0, #1] + bx lr + thumb_func_end sub_0202EEA4 + + thumb_func_start sub_0202EEA8 +sub_0202EEA8: ; 0x0202EEA8 + strb r1, [r0, #1] + bx lr + thumb_func_end sub_0202EEA8 + + thumb_func_start sub_0202EEAC +sub_0202EEAC: ; 0x0202EEAC + strb r1, [r0, #2] + strb r2, [r0, #3] + bx lr + .balign 4, 0 + thumb_func_end sub_0202EEAC + + thumb_func_start sub_0202EEB4 +sub_0202EEB4: ; 0x0202EEB4 + ldrb r3, [r0, #2] + strh r3, [r1] + ldrb r0, [r0, #3] + strh r0, [r2] + bx lr + .balign 4, 0 + thumb_func_end sub_0202EEB4 + + thumb_func_start sub_0202EEC0 +sub_0202EEC0: ; 0x0202EEC0 + ldr r2, _0202EEE0 ; =0x0000060C + mov r3, #0 +_0202EEC4: + add r1, r0, r3 + ldrb r1, [r1, r2] + cmp r1, #0xff + bne _0202EED0 + add r0, r3, #0 + bx lr +_0202EED0: + add r1, r3, #1 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + cmp r3, #0x4b + blo _0202EEC4 + mov r0, #0x4b + bx lr + nop +_0202EEE0: .word 0x0000060C + thumb_func_end sub_0202EEC0 + + thumb_func_start sub_0202EEE4 +sub_0202EEE4: ; 0x0202EEE4 + push {r3, r4} + ldr r3, _0202EF14 ; =0x0000060C + mov r4, #0 +_0202EEEA: + add r2, r0, r4 + ldrb r2, [r2, r3] + cmp r1, r2 + bne _0202EEF8 + add r0, r4, #0 + pop {r3, r4} + bx lr +_0202EEF8: + cmp r2, #0xff + bne _0202EF02 + mov r0, #0xff + pop {r3, r4} + bx lr +_0202EF02: + add r2, r4, #1 + lsl r2, r2, #0x18 + lsr r4, r2, #0x18 + cmp r4, #0x4b + blo _0202EEEA + mov r0, #0xff + pop {r3, r4} + bx lr + nop +_0202EF14: .word 0x0000060C + thumb_func_end sub_0202EEE4 + + thumb_func_start sub_0202EF18 +sub_0202EF18: ; 0x0202EF18 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #0x4b + blo _0202EF28 + bl GF_AssertFail + pop {r3, r4, r5, pc} +_0202EF28: + bl sub_0202EEE4 + cmp r0, #0xff + bne _0202EF3C + add r0, r5, #0 + bl sub_0202EEC0 + add r1, r5, r0 + ldr r0, _0202EF40 ; =0x0000060C + strb r4, [r1, r0] +_0202EF3C: + pop {r3, r4, r5, pc} + nop +_0202EF40: .word 0x0000060C + thumb_func_end sub_0202EF18 + + thumb_func_start sub_0202EF44 +sub_0202EF44: ; 0x0202EF44 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r6, r1, #0 + bl sub_0202EEC0 + add r4, r0, #0 + add r0, r6, #0 + add r1, r4, #0 + bl AllocFromHeap + add r6, r0, #0 + ldr r0, _0202EF6C ; =0x0000060C + add r1, r6, #0 + add r0, r5, r0 + add r2, r4, #0 + bl MIi_CpuCopy8 + add r0, r6, #0 + pop {r4, r5, r6, pc} + nop +_0202EF6C: .word 0x0000060C + thumb_func_end sub_0202EF44 + + thumb_func_start sub_0202EF70 +sub_0202EF70: ; 0x0202EF70 + push {r4, r5, r6, lr} + add r5, r0, #0 + ldr r0, _0202EF98 ; =0x0000060C + add r6, r1, #0 + add r4, r2, #0 + add r0, r5, r0 + mov r1, #0xff + mov r2, #0x4b + bl MIi_CpuFill8 + cmp r4, #0x4b + blo _0202EF8A + mov r4, #0x4b +_0202EF8A: + ldr r1, _0202EF98 ; =0x0000060C + add r0, r6, #0 + add r1, r5, r1 + add r2, r4, #0 + bl MIi_CpuCopy8 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0202EF98: .word 0x0000060C + thumb_func_end sub_0202EF70 + + thumb_func_start sub_0202EF9C +sub_0202EF9C: ; 0x0202EF9C + push {r4, lr} + add r4, r0, #0 + ldr r0, _0202EFB4 ; =0x0000060C + mov r1, #0xff + add r0, r4, r0 + mov r2, #0x4b + bl MIi_CpuFill8 + ldr r0, _0202EFB4 ; =0x0000060C + mov r1, #0 + strb r1, [r4, r0] + pop {r4, pc} + .balign 4, 0 +_0202EFB4: .word 0x0000060C + thumb_func_end sub_0202EF9C + + thumb_func_start sub_0202EFB8 +sub_0202EFB8: ; 0x0202EFB8 + ldr r1, _0202EFC0 ; =0x000004B8 + add r0, r0, r1 + bx lr + nop +_0202EFC0: .word 0x000004B8 + thumb_func_end sub_0202EFB8 + + thumb_func_start sub_0202EFC4 +sub_0202EFC4: ; 0x0202EFC4 + ldrh r2, [r0] + mov r1, #1 + bic r2, r1 + strh r2, [r0] + ldrh r2, [r0] + mov r1, #2 + bic r2, r1 + strh r2, [r0] + ldrh r2, [r0] + mov r1, #0xfc + bic r2, r1 + mov r1, #4 + orr r1, r2 + strh r1, [r0] + mov r1, #0 + strh r1, [r0, #2] + bx lr + .balign 4, 0 + thumb_func_end sub_0202EFC4 + + thumb_func_start sub_0202EFE8 +sub_0202EFE8: ; 0x0202EFE8 + push {r4, r5, r6, lr} + mov r2, #0x55 + mov r1, #0 + lsl r2, r2, #2 + add r6, r0, #0 + bl MIi_CpuFill8 + mov r4, #0 + add r5, r6, #0 +_0202EFFA: + add r0, r5, #0 + bl sub_0202EFC4 + add r4, r4, #1 + add r5, r5, #4 + cmp r4, #0x4b + blt _0202EFFA + ldr r1, _0202F018 ; =0x00000146 + mov r0, #0x7f + ldrb r2, [r6, r1] + bic r2, r0 + mov r0, #7 + orr r0, r2 + strb r0, [r6, r1] + pop {r4, r5, r6, pc} + .balign 4, 0 +_0202F018: .word 0x00000146 + thumb_func_end sub_0202EFE8 + + thumb_func_start sub_0202F01C +sub_0202F01C: ; 0x0202F01C + push {r4, r5, r6, lr} + cmp r1, #0xd + blo _0202F028 + bl GF_AssertFail + pop {r4, r5, r6, pc} +_0202F028: + ldr r2, _0202F04C ; =0x0000014E + lsr r6, r1, #0x1f + lsl r5, r1, #0x1d + add r4, r0, r2 + lsl r0, r1, #0x15 + lsr r3, r0, #0x18 + sub r5, r5, r6 + mov r1, #0x1d + ror r5, r1 + add r1, r6, r5 + lsl r1, r1, #0x18 + ldrb r2, [r4, r3] + mov r0, #1 + lsr r1, r1, #0x18 + lsl r0, r1 + orr r0, r2 + strb r0, [r4, r3] + pop {r4, r5, r6, pc} + .balign 4, 0 +_0202F04C: .word 0x0000014E + thumb_func_end sub_0202F01C + + thumb_func_start sub_0202F050 +sub_0202F050: ; 0x0202F050 + push {r3, r4, r5, lr} + cmp r1, #0xd + blo _0202F05C + bl GF_AssertFail + pop {r3, r4, r5, pc} +_0202F05C: + lsr r4, r1, #0x1f + lsl r3, r1, #0x1d + sub r3, r3, r4 + mov r2, #0x1d + ror r3, r2 + mov r5, #1 + add r2, r4, r3 + add r3, r5, #0 + lsl r3, r2 + lsl r2, r3, #0x18 + ldr r3, _0202F088 ; =0x0000014E + lsr r2, r2, #0x18 + add r4, r0, r3 + lsl r0, r1, #0x15 + lsr r3, r0, #0x18 + ldrb r0, [r4, r3] + add r1, r2, #0 + tst r1, r0 + beq _0202F086 + eor r0, r2 + strb r0, [r4, r3] +_0202F086: + pop {r3, r4, r5, pc} + .balign 4, 0 +_0202F088: .word 0x0000014E + thumb_func_end sub_0202F050 + + thumb_func_start sub_0202F08C +sub_0202F08C: ; 0x0202F08C + push {r3, lr} + cmp r1, #0xd + blo _0202F09A + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} +_0202F09A: + lsl r2, r1, #0x15 + lsr r2, r2, #0x18 + add r2, r0, r2 + ldr r0, _0202F0C0 ; =0x0000014E + ldrb r3, [r2, r0] + lsr r2, r1, #0x1f + lsl r1, r1, #0x1d + sub r1, r1, r2 + mov r0, #0x1d + ror r1, r0 + add r0, r2, r1 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + add r1, r3, #0 + asr r1, r0 + mov r0, #1 + and r0, r1 + pop {r3, pc} + nop +_0202F0C0: .word 0x0000014E + thumb_func_end sub_0202F08C + + thumb_func_start sub_0202F0C4 +sub_0202F0C4: ; 0x0202F0C4 + push {r4, lr} + cmp r1, #0x4b + blo _0202F0D0 + bl GF_AssertFail + pop {r4, pc} +_0202F0D0: + lsl r3, r1, #2 + ldrh r1, [r0, r3] + mov r4, #1 + lsl r2, r2, #0x10 + bic r1, r4 + lsr r4, r2, #0x10 + mov r2, #1 + and r2, r4 + orr r1, r2 + strh r1, [r0, r3] + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0202F0C4 + + thumb_func_start sub_0202F0E8 +sub_0202F0E8: ; 0x0202F0E8 + push {r3, lr} + cmp r1, #0x4b + blo _0202F0F6 + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} +_0202F0F6: + lsl r1, r1, #2 + ldrh r0, [r0, r1] + lsl r0, r0, #0x1f + lsr r0, r0, #0x1f + pop {r3, pc} + thumb_func_end sub_0202F0E8 + + thumb_func_start sub_0202F100 +sub_0202F100: ; 0x0202F100 + push {r3, lr} + cmp r1, #0x4b + blo _0202F10C + bl GF_AssertFail + pop {r3, pc} +_0202F10C: + lsl r1, r1, #2 + add r3, r0, r1 + strh r2, [r3, #2] + cmp r2, #0 + ldrh r1, [r3] + bne _0202F120 + mov r0, #2 + bic r1, r0 + strh r1, [r3] + pop {r3, pc} +_0202F120: + mov r0, #2 + orr r0, r1 + strh r0, [r3] + pop {r3, pc} + thumb_func_end sub_0202F100 + + thumb_func_start sub_0202F128 +sub_0202F128: ; 0x0202F128 + push {r3, lr} + cmp r1, #0x4b + blo _0202F136 + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} +_0202F136: + lsl r2, r1, #2 + ldrh r1, [r0, r2] + lsl r1, r1, #0x1e + lsr r1, r1, #0x1f + beq _0202F146 + add r0, r0, r2 + ldrh r0, [r0, #2] + pop {r3, pc} +_0202F146: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0202F128 + + thumb_func_start sub_0202F14C +sub_0202F14C: ; 0x0202F14C + cmp r1, #1 + beq _0202F15A + cmp r1, #2 + beq _0202F162 + cmp r1, #3 + beq _0202F178 + b _0202F18C +_0202F15A: + mov r1, #5 + lsl r1, r1, #6 + str r2, [r0, r1] + b _0202F18C +_0202F162: + mov r1, #5 + lsl r1, r1, #6 + ldr r3, [r0, r1] + add r2, r3, r2 + str r2, [r0, r1] + ldr r3, [r0, r1] + ldr r2, _0202F194 ; =0x000F423F + cmp r3, r2 + bls _0202F18C + str r2, [r0, r1] + b _0202F18C +_0202F178: + mov r1, #5 + lsl r1, r1, #6 + ldr r3, [r0, r1] + cmp r3, r2 + bhs _0202F188 + mov r2, #0 + str r2, [r0, r1] + b _0202F18C +_0202F188: + sub r2, r3, r2 + str r2, [r0, r1] +_0202F18C: + mov r1, #5 + lsl r1, r1, #6 + ldr r0, [r0, r1] + bx lr + .balign 4, 0 +_0202F194: .word 0x000F423F + thumb_func_end sub_0202F14C + + thumb_func_start sub_0202F198 +sub_0202F198: ; 0x0202F198 + push {r3, r4} + cmp r1, #9 + bhs _0202F1AE + mov r2, #0x51 + lsl r2, r2, #2 + ldrh r4, [r0, r2] + mov r3, #1 + lsl r3, r1 + add r1, r4, #0 + orr r1, r3 + strh r1, [r0, r2] +_0202F1AE: + pop {r3, r4} + bx lr + .balign 4, 0 + thumb_func_end sub_0202F198 + + thumb_func_start sub_0202F1B4 +sub_0202F1B4: ; 0x0202F1B4 + mov r2, #0x51 + lsl r2, r2, #2 + ldrh r0, [r0, r2] + add r2, r0, #0 + asr r2, r1 + mov r0, #1 + and r0, r2 + bx lr + thumb_func_end sub_0202F1B4 + + thumb_func_start sub_0202F1C4 +sub_0202F1C4: ; 0x0202F1C4 + push {r3, r4, r5, r6} + ldr r3, _0202F1F0 ; =0x0000012E + mov r5, #0 + add r6, r0, #0 +_0202F1CC: + ldrh r4, [r6, r3] + cmp r4, #0 + bne _0202F1E4 + lsl r3, r5, #2 + add r3, r0, r3 + mov r0, #0x4b + lsl r0, r0, #2 + strh r1, [r3, r0] + add r0, r0, #2 + strh r2, [r3, r0] + pop {r3, r4, r5, r6} + bx lr +_0202F1E4: + add r5, r5, #1 + add r6, r6, #4 + cmp r5, #5 + blt _0202F1CC + pop {r3, r4, r5, r6} + bx lr + .balign 4, 0 +_0202F1F0: .word 0x0000012E + thumb_func_end sub_0202F1C4 + + thumb_func_start sub_0202F1F4 +sub_0202F1F4: ; 0x0202F1F4 + push {r4, r5, r6, r7} + mov r3, #0x13 + lsl r3, r3, #4 + mov r1, #0 + add r2, r0, #0 + sub r4, r3, #4 + add r5, r3, #2 + sub r6, r3, #2 +_0202F204: + ldrh r7, [r2, r3] + add r1, r1, #1 + strh r7, [r2, r4] + ldrh r7, [r2, r5] + strh r7, [r2, r6] + add r2, r2, #4 + cmp r1, #4 + blt _0202F204 + mov r1, #0x4f + mov r2, #0 + lsl r1, r1, #2 + strh r2, [r0, r1] + add r1, r1, #2 + strh r2, [r0, r1] + pop {r4, r5, r6, r7} + bx lr + thumb_func_end sub_0202F1F4 + + thumb_func_start sub_0202F224 +sub_0202F224: ; 0x0202F224 + cmp r1, #5 + blo _0202F22E + mov r0, #0 + strh r0, [r2] + bx lr +_0202F22E: + lsl r1, r1, #2 + add r3, r0, r1 + mov r0, #0x4b + lsl r0, r0, #2 + ldrh r1, [r3, r0] + add r0, r0, #2 + strh r1, [r2] + ldrh r0, [r3, r0] + bx lr + thumb_func_end sub_0202F224 + + thumb_func_start sub_0202F240 +sub_0202F240: ; 0x0202F240 + ldr r1, _0202F250 ; =0x0000013E + ldrh r0, [r0, r1] + cmp r0, #0 + beq _0202F24C + mov r0, #1 + bx lr +_0202F24C: + mov r0, #0 + bx lr + .balign 4, 0 +_0202F250: .word 0x0000013E + thumb_func_end sub_0202F240 + + thumb_func_start sub_0202F254 +sub_0202F254: ; 0x0202F254 + push {r3, r4} + ldr r4, _0202F270 ; =0x00000146 + lsl r1, r1, #0x18 + ldrb r2, [r0, r4] + lsr r1, r1, #0x18 + mov r3, #0x80 + lsl r1, r1, #0x1f + bic r2, r3 + lsr r1, r1, #0x18 + orr r1, r2 + strb r1, [r0, r4] + pop {r3, r4} + bx lr + nop +_0202F270: .word 0x00000146 + thumb_func_end sub_0202F254 + + thumb_func_start sub_0202F274 +sub_0202F274: ; 0x0202F274 + ldr r1, _0202F280 ; =0x00000146 + ldrb r0, [r0, r1] + lsl r0, r0, #0x18 + lsr r0, r0, #0x1f + bx lr + nop +_0202F280: .word 0x00000146 + thumb_func_end sub_0202F274 + + thumb_func_start sub_0202F284 +sub_0202F284: ; 0x0202F284 + ldr r1, _0202F290 ; =0x00000146 + ldrb r0, [r0, r1] + lsl r0, r0, #0x19 + lsr r0, r0, #0x19 + bx lr + nop +_0202F290: .word 0x00000146 + thumb_func_end sub_0202F284 + + thumb_func_start sub_0202F294 +sub_0202F294: ; 0x0202F294 + push {r3, r4, r5, lr} + ldr r2, _0202F2FC ; =0x00000146 + add r5, r0, #0 + ldrb r3, [r5, r2] + add r4, r1, #0 + mov r1, #0x80 + bic r3, r1 + strb r3, [r5, r2] + mov r1, #0x10 + mov r2, #0 + bl sub_0202F100 + add r0, r5, #0 + mov r1, #0x10 + mov r2, #0 + bl sub_0202F0C4 + cmp r4, #0 + ble _0202F2DA + ldr r2, _0202F2FC ; =0x00000146 + ldrb r0, [r5, r2] + lsl r1, r0, #0x19 + lsr r3, r1, #0x19 + cmp r3, r4 + blt _0202F2DA + mov r1, #0x7f + bic r0, r1 + sub r1, r3, r4 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + mov r1, #0x7f + and r1, r3 + orr r0, r1 + strb r0, [r5, r2] + pop {r3, r4, r5, pc} +_0202F2DA: + bl LCRandom + mov r1, #6 + bl _s32_div_f + ldr r3, _0202F2FC ; =0x00000146 + add r1, r1, #1 + ldrb r0, [r5, r3] + mov r2, #0x7f + lsl r1, r1, #0x18 + bic r0, r2 + lsr r2, r1, #0x18 + mov r1, #0x7f + and r1, r2 + orr r0, r1 + strb r0, [r5, r3] + pop {r3, r4, r5, pc} + .balign 4, 0 +_0202F2FC: .word 0x00000146 + thumb_func_end sub_0202F294 + + thumb_func_start sub_0202F300 +sub_0202F300: ; 0x0202F300 + push {r4, r5, r6, lr} + add r5, r0, #0 + mov r0, #0x52 + lsl r0, r0, #2 + add r6, r1, #0 + add r4, r2, #0 + add r0, r5, r0 + mov r1, #0 + mov r2, #6 + bl MIi_CpuFill8 + cmp r6, #0 + bne _0202F322 + ldr r0, _0202F33C ; =0x00000147 + mov r1, #0 + strb r1, [r5, r0] + pop {r4, r5, r6, pc} +_0202F322: + cmp r4, #6 + blo _0202F328 + mov r4, #6 +_0202F328: + mov r1, #0x52 + lsl r1, r1, #2 + add r0, r6, #0 + add r1, r5, r1 + add r2, r4, #0 + bl MIi_CpuCopy8 + ldr r0, _0202F33C ; =0x00000147 + strb r4, [r5, r0] + pop {r4, r5, r6, pc} + .balign 4, 0 +_0202F33C: .word 0x00000147 + thumb_func_end sub_0202F300 + + thumb_func_start sub_0202F340 +sub_0202F340: ; 0x0202F340 + push {r4, r5, r6, lr} + add r4, r1, #0 + add r5, r0, #0 + ldr r1, _0202F36C ; =0x00000147 + add r0, r2, #0 + ldrb r1, [r5, r1] + bl AllocFromHeap + mov r2, #0x52 + add r6, r0, #0 + lsl r2, r2, #2 + add r0, r5, r2 + sub r2, r2, #1 + ldrb r2, [r5, r2] + add r1, r6, #0 + bl MIi_CpuCopy8 + ldr r0, _0202F36C ; =0x00000147 + ldrb r0, [r5, r0] + strb r0, [r4] + add r0, r6, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0202F36C: .word 0x00000147 + thumb_func_end sub_0202F340 + + thumb_func_start sub_0202F370 +sub_0202F370: ; 0x0202F370 + ldrh r1, [r0] + cmp r1, #0 + beq _0202F37E + mov r0, #0x87 + lsl r0, r0, #2 + cmp r1, r0 + blo _0202F382 +_0202F37E: + mov r0, #0 + bx lr +_0202F382: + mov r0, #1 + bx lr + .balign 4, 0 + thumb_func_end sub_0202F370 + + thumb_func_start sub_0202F388 +sub_0202F388: ; 0x0202F388 + push {r3, r4} + mov r1, #0 + strh r1, [r0] + ldrh r3, [r0, #2] + mov r2, #0xf + bic r3, r2 + mov r2, #0xf + orr r2, r3 + strh r2, [r0, #2] + ldrh r3, [r0, #2] + mov r2, #0xf0 + bic r3, r2 + mov r2, #0xf0 + orr r3, r2 + strh r3, [r0, #2] + ldrh r4, [r0, #2] + ldr r3, _0202F3D0 ; =0xFFFFF0FF + and r4, r3 + lsl r3, r2, #4 + orr r3, r4 + strh r3, [r0, #2] + ldrh r4, [r0, #2] + ldr r3, _0202F3D4 ; =0xFFFF0FFF + lsl r2, r2, #8 + and r3, r4 + orr r2, r3 + strh r2, [r0, #2] + ldr r2, _0202F3D8 ; =0x0000FFFF +_0202F3C0: + add r1, r1, #1 + strh r2, [r0, #4] + add r0, r0, #2 + cmp r1, #4 + blt _0202F3C0 + pop {r3, r4} + bx lr + nop +_0202F3D0: .word 0xFFFFF0FF +_0202F3D4: .word 0xFFFF0FFF +_0202F3D8: .word 0x0000FFFF + thumb_func_end sub_0202F388 + + thumb_func_start sub_0202F3DC +sub_0202F3DC: ; 0x0202F3DC + push {r4, r5} + mov r4, #0 + ldr r1, _0202F3FC ; =0x0000FFFF + str r4, [r0] + add r5, r0, #0 + mov r3, #0xf +_0202F3E8: + add r2, r0, r4 + strb r3, [r2, #4] + strh r1, [r5, #8] + add r4, r4, #1 + add r5, r5, #2 + cmp r4, #4 + blt _0202F3E8 + pop {r4, r5} + bx lr + nop +_0202F3FC: .word 0x0000FFFF + thumb_func_end sub_0202F3DC + + thumb_func_start sub_0202F400 +sub_0202F400: ; 0x0202F400 + push {r3, r4} + ldr r1, _0202F430 ; =0x0000FFFF + mov r3, #0 + add r4, r0, #0 +_0202F408: + add r2, r0, r3 + ldrb r2, [r2, #4] + cmp r2, #0xf + bne _0202F416 + ldrh r2, [r4, #8] + cmp r2, r1 + beq _0202F41C +_0202F416: + mov r0, #1 + pop {r3, r4} + bx lr +_0202F41C: + add r3, r3, #1 + add r4, r4, #2 + cmp r3, #4 + blt _0202F408 + mov r1, #0 + str r1, [r0] + add r0, r1, #0 + pop {r3, r4} + bx lr + nop +_0202F430: .word 0x0000FFFF + thumb_func_end sub_0202F400 + + thumb_func_start sub_0202F434 +sub_0202F434: ; 0x0202F434 + push {r3, r4} + ldr r2, [r0] + strh r2, [r1] + ldrh r3, [r1, #2] + ldrb r4, [r0, #4] + mov r2, #0xf + bic r3, r2 + mov r2, #0xf + and r4, r2 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + and r4, r2 + orr r3, r4 + strh r3, [r1, #2] + ldrh r3, [r1, #2] + mov r4, #0xf0 + bic r3, r4 + ldrb r4, [r0, #5] + and r4, r2 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + lsl r4, r4, #0x1c + lsr r4, r4, #0x18 + orr r3, r4 + strh r3, [r1, #2] + ldrh r4, [r1, #2] + ldr r3, _0202F4A8 ; =0xFFFFF0FF + and r3, r4 + ldrb r4, [r0, #6] + and r4, r2 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + lsl r4, r4, #0x1c + lsr r4, r4, #0x14 + orr r3, r4 + strh r3, [r1, #2] + ldrh r4, [r1, #2] + ldr r3, _0202F4AC ; =0xFFFF0FFF + and r3, r4 + ldrb r4, [r0, #7] + and r2, r4 + lsl r2, r2, #0x10 + lsr r2, r2, #0x10 + lsl r2, r2, #0x1c + lsr r2, r2, #0x10 + orr r2, r3 + strh r2, [r1, #2] + mov r3, #0 +_0202F494: + ldrh r2, [r0, #8] + add r3, r3, #1 + add r0, r0, #2 + strh r2, [r1, #4] + add r1, r1, #2 + cmp r3, #4 + blt _0202F494 + pop {r3, r4} + bx lr + nop +_0202F4A8: .word 0xFFFFF0FF +_0202F4AC: .word 0xFFFF0FFF + thumb_func_end sub_0202F434 + + thumb_func_start sub_0202F4B0 +sub_0202F4B0: ; 0x0202F4B0 + ldrh r2, [r0] + mov r3, #0 + str r2, [r1] + ldrh r2, [r0, #2] + lsl r2, r2, #0x1c + lsr r2, r2, #0x1c + strb r2, [r1, #4] + ldrh r2, [r0, #2] + lsl r2, r2, #0x18 + lsr r2, r2, #0x1c + strb r2, [r1, #5] + ldrh r2, [r0, #2] + lsl r2, r2, #0x14 + lsr r2, r2, #0x1c + strb r2, [r1, #6] + ldrh r2, [r0, #2] + lsl r2, r2, #0x10 + lsr r2, r2, #0x1c + strb r2, [r1, #7] +_0202F4D6: + ldrh r2, [r0, #4] + add r3, r3, #1 + add r0, r0, #2 + strh r2, [r1, #8] + add r1, r1, #2 + cmp r3, #4 + blt _0202F4D6 + bx lr + .balign 4, 0 + thumb_func_end sub_0202F4B0 + + thumb_func_start sub_0202F4E8 +sub_0202F4E8: ; 0x0202F4E8 + push {r3, lr} + cmp r1, #0x64 + blo _0202F4F2 + mov r0, #0 + pop {r3, pc} +_0202F4F2: + mov r2, #0xc + mul r2, r1 + add r0, r0, r2 + bl sub_0202F370 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0202F4E8 + + thumb_func_start sub_0202F500 +sub_0202F500: ; 0x0202F500 + push {r3, lr} + cmp r1, #0x64 + bhs _0202F510 + mov r2, #0xc + mul r2, r1 + add r0, r0, r2 + bl sub_0202F388 +_0202F510: + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0202F500 + + thumb_func_start sub_0202F514 +sub_0202F514: ; 0x0202F514 + push {r3, r4, r5, lr} + add r4, r0, #0 + cmp r2, #0x64 + blo _0202F526 + add r0, r1, #0 + bl sub_0202F3DC + mov r0, #0 + pop {r3, r4, r5, pc} +_0202F526: + mov r0, #0xc + add r5, r2, #0 + mul r5, r0 + add r0, r4, r5 + bl sub_0202F4B0 + add r0, r4, r5 + bl sub_0202F370 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0202F514 + + thumb_func_start sub_0202F53C +sub_0202F53C: ; 0x0202F53C + push {r4, r5, r6, lr} + add r4, r2, #0 + add r5, r0, #0 + add r6, r1, #0 + cmp r4, #0x64 + blo _0202F54C + mov r0, #0 + pop {r4, r5, r6, pc} +_0202F54C: + cmp r3, #0 + bne _0202F562 + mov r0, #0xc + mul r0, r4 + add r0, r5, r0 + bl sub_0202F370 + cmp r0, #1 + bne _0202F562 + mov r0, #0 + pop {r4, r5, r6, pc} +_0202F562: + mov r1, #0xc + mul r1, r4 + add r0, r6, #0 + add r1, r5, r1 + bl sub_0202F434 + mov r0, #1 + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0202F53C + + thumb_func_start sub_0202F574 +sub_0202F574: ; 0x0202F574 + ldr r0, _0202F578 ; =0x000005FC + bx lr + .balign 4, 0 +_0202F578: .word 0x000005FC + thumb_func_end sub_0202F574 + + thumb_func_start sub_0202F57C +sub_0202F57C: ; 0x0202F57C + ldr r3, _0202F584 ; =SavArray_get + mov r1, #0x23 + bx r3 + nop +_0202F584: .word SavArray_get + thumb_func_end sub_0202F57C + + thumb_func_start sub_0202F588 +sub_0202F588: ; 0x0202F588 + push {r3, r4, r5, r6, r7, lr} + mov r4, #0 + mov r6, #0xba + str r0, [sp] + add r5, r0, #0 + add r7, r4, #0 + lsl r6, r6, #2 +_0202F596: + mov r2, #0xba + add r0, r5, #0 + add r1, r7, #0 + lsl r2, r2, #2 + bl MIi_CpuFill8 + add r4, r4, #1 + add r5, r5, r6 + cmp r4, #2 + blt _0202F596 + mov r1, #0x5d + ldr r0, [sp] + lsl r1, r1, #4 + add r0, r0, r1 + bl sub_0202FA08 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0202F588 + + thumb_func_start sub_0202F5B8 +sub_0202F5B8: ; 0x0202F5B8 + push {r3, r4, r5, r6, r7, lr} + add r7, r0, #0 + add r0, r1, #0 + mov r1, #0xa + mov r6, #0 + bl _u32_div_f + mov r0, #6 + ldr r2, _0202F5F4 ; =0x020F6888 + mul r0, r1 + add r4, r2, r0 + add r5, r7, #0 +_0202F5D0: + ldrb r1, [r4] + add r0, r5, #0 + bl sub_0202F9E8 + add r6, r6, #1 + add r4, r4, #1 + add r5, #0x7a + cmp r6, #6 + blt _0202F5D0 + mov r0, #0xb7 + lsl r0, r0, #2 + add r0, r7, r0 + mov r1, #0 + mov r2, #0xc + bl MIi_CpuFill8 + pop {r3, r4, r5, r6, r7, pc} + nop +_0202F5F4: .word 0x020F6888 + thumb_func_end sub_0202F5B8 + + thumb_func_start sub_0202F5F8 +sub_0202F5F8: ; 0x0202F5F8 + push {r4, lr} + add r4, r0, #0 + cmp r1, #2 + blt _0202F606 + bl GF_AssertFail + mov r1, #0 +_0202F606: + ldr r3, _0202F61C ; =0x000005F9 + lsl r1, r1, #0x18 + ldrb r0, [r4, r3] + lsr r1, r1, #0x18 + mov r2, #0xc0 + lsl r1, r1, #0x1e + bic r0, r2 + lsr r1, r1, #0x18 + orr r0, r1 + strb r0, [r4, r3] + pop {r4, pc} + .balign 4, 0 +_0202F61C: .word 0x000005F9 + thumb_func_end sub_0202F5F8 + + thumb_func_start sub_0202F620 +sub_0202F620: ; 0x0202F620 + ldr r1, _0202F62C ; =0x000005F9 + ldrb r0, [r0, r1] + lsl r0, r0, #0x18 + lsr r0, r0, #0x1e + bx lr + nop +_0202F62C: .word 0x000005F9 + thumb_func_end sub_0202F620 + + thumb_func_start sub_0202F630 +sub_0202F630: ; 0x0202F630 + push {r4, lr} + add r4, r0, #0 + cmp r1, #3 + bne _0202F640 + ldr r0, _0202F654 ; =0x000005F9 + ldrb r0, [r4, r0] + lsl r0, r0, #0x18 + lsr r1, r0, #0x1e +_0202F640: + cmp r1, #2 + blt _0202F64A + bl GF_AssertFail + mov r1, #0 +_0202F64A: + mov r0, #0xba + lsl r0, r0, #2 + mul r0, r1 + add r0, r4, r0 + pop {r4, pc} + .balign 4, 0 +_0202F654: .word 0x000005F9 + thumb_func_end sub_0202F630 + + thumb_func_start sub_0202F658 +sub_0202F658: ; 0x0202F658 + push {r4, lr} + add r4, r2, #0 + cmp r1, #2 + blt _0202F66C + bl GF_AssertFail + add r0, r4, #0 + bl sub_0202F9CC + pop {r4, pc} +_0202F66C: + mov r2, #0xba + add r3, r1, #0 + lsl r2, r2, #2 + mul r3, r2 + add r0, r0, r3 + add r1, r4, #0 + bl MIi_CpuCopy8 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0202F658 + + thumb_func_start sub_0202F680 +sub_0202F680: ; 0x0202F680 + push {r4, lr} + add r4, r0, #0 + cmp r1, #2 + blt _0202F68E + bl GF_AssertFail + pop {r4, pc} +_0202F68E: + add r0, r2, #0 + mov r2, #0xba + lsl r2, r2, #2 + add r3, r1, #0 + mul r3, r2 + add r1, r4, r3 + bl MIi_CpuCopy8 + pop {r4, pc} + thumb_func_end sub_0202F680 + + thumb_func_start sub_0202F6A0 +sub_0202F6A0: ; 0x0202F6A0 + ldr r2, _0202F6A8 ; =0x000005F8 + strb r1, [r0, r2] + bx lr + nop +_0202F6A8: .word 0x000005F8 + thumb_func_end sub_0202F6A0 + + thumb_func_start sub_0202F6AC +sub_0202F6AC: ; 0x0202F6AC + ldr r1, _0202F6B4 ; =0x000005F8 + ldrb r0, [r0, r1] + bx lr + nop +_0202F6B4: .word 0x000005F8 + thumb_func_end sub_0202F6AC + + thumb_func_start sub_0202F6B8 +sub_0202F6B8: ; 0x0202F6B8 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + add r7, r1, #0 + str r0, [sp] + cmp r7, #0 + ble _0202F71C + mov r4, #0 + add r0, sp, #8 + add r1, r4, #0 + mov r2, #6 + bl MIi_CpuFill8 + add r0, r4, #0 + ldr r5, [sp] + str r0, [sp, #4] +_0202F6D6: + ldrb r6, [r5] + lsl r2, r4, #0x18 + add r1, sp, #8 + add r0, r6, #0 + lsr r2, r2, #0x18 + bl sub_0202FA3C + cmp r0, #0 + bne _0202F710 + ldr r0, [sp] + mov r1, #0xb7 + add r0, r0, r6 + lsl r1, r1, #2 + ldrb r1, [r0, r1] + add r1, r7, r1 + cmp r1, #0xff + bge _0202F702 + mov r1, #0xb7 + lsl r1, r1, #2 + ldrb r1, [r0, r1] + add r2, r1, r7 + b _0202F704 +_0202F702: + mov r2, #0xff +_0202F704: + mov r1, #0xb7 + lsl r1, r1, #2 + strb r2, [r0, r1] + add r0, sp, #8 + strb r6, [r0, r4] + add r4, r4, #1 +_0202F710: + ldr r0, [sp, #4] + add r5, #0x7a + add r0, r0, #1 + str r0, [sp, #4] + cmp r0, #6 + blt _0202F6D6 +_0202F71C: + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0202F6B8 + + thumb_func_start sub_0202F720 +sub_0202F720: ; 0x0202F720 + ldr r1, _0202F72C ; =0x000005F9 + ldrb r0, [r0, r1] + lsl r0, r0, #0x1a + lsr r0, r0, #0x1a + bx lr + nop +_0202F72C: .word 0x000005F9 + thumb_func_end sub_0202F720 + + thumb_func_start sub_0202F730 +sub_0202F730: ; 0x0202F730 + push {r4, lr} + ldr r2, _0202F750 ; =0x000005F9 + add r4, r0, #0 + ldrb r2, [r4, r2] + lsl r2, r2, #0x1a + lsr r2, r2, #0x1a + add r1, r2, r1 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl sub_0202F754 + ldr r0, _0202F750 ; =0x000005F9 + ldrb r0, [r4, r0] + lsl r0, r0, #0x1a + lsr r0, r0, #0x1a + pop {r4, pc} + .balign 4, 0 +_0202F750: .word 0x000005F9 + thumb_func_end sub_0202F730 + + thumb_func_start sub_0202F754 +sub_0202F754: ; 0x0202F754 + push {r3, r4} + cmp r1, #4 + bls _0202F76C + ldr r2, _0202F780 ; =0x000005F9 + mov r1, #0x3f + ldrb r3, [r0, r2] + bic r3, r1 + mov r1, #4 + orr r1, r3 + strb r1, [r0, r2] + pop {r3, r4} + bx lr +_0202F76C: + ldr r3, _0202F780 ; =0x000005F9 + mov r2, #0x3f + ldrb r4, [r0, r3] + bic r4, r2 + mov r2, #0x3f + and r1, r2 + orr r1, r4 + strb r1, [r0, r3] + pop {r3, r4} + bx lr + .balign 4, 0 +_0202F780: .word 0x000005F9 + thumb_func_end sub_0202F754 + + thumb_func_start sub_0202F784 +sub_0202F784: ; 0x0202F784 + ldrh r2, [r1] + ldrb r3, [r1, #2] + mov r1, #0x3c + mul r1, r2 + add r2, r3, r1 + ldr r1, _0202F794 ; =0x000005FA + strh r2, [r0, r1] + bx lr + .balign 4, 0 +_0202F794: .word 0x000005FA + thumb_func_end sub_0202F784 + + thumb_func_start sub_0202F798 +sub_0202F798: ; 0x0202F798 + push {r4, r5} + ldrb r5, [r1, #2] + ldrh r1, [r1] + mov r4, #0x3c + add r3, r1, #0 + mul r3, r4 + add r1, r5, r3 + ldr r3, _0202F7D0 ; =0x000005FA + lsl r1, r1, #0x10 + ldrh r0, [r0, r3] + lsr r1, r1, #0x10 + sub r3, r1, r0 + add r0, r2, #0 + mul r0, r4 + cmp r3, r0 + blt _0202F7BE + mov r0, #1 + pop {r4, r5} + bx lr +_0202F7BE: + ldr r0, _0202F7D4 ; =0x0000EA5F + cmp r1, r0 + blo _0202F7CA + mov r0, #2 + pop {r4, r5} + bx lr +_0202F7CA: + mov r0, #0 + pop {r4, r5} + bx lr + .balign 4, 0 +_0202F7D0: .word 0x000005FA +_0202F7D4: .word 0x0000EA5F + thumb_func_end sub_0202F798 + + thumb_func_start sub_0202F7D8 +sub_0202F7D8: ; 0x0202F7D8 + push {r3, r4, r5, r6, r7, lr} + add r6, r0, #0 + mov r0, #0x5d + lsl r0, r0, #4 + add r5, r1, #0 + add r4, r6, r0 + add r0, r5, #0 + add r7, r2, #0 + bl PlayerProfile_GetTrainerID + str r0, [r4, #0x14] + add r0, r5, #0 + bl PlayerProfile_GetTrainerGender + strb r0, [r4, #0x11] + add r0, r5, #0 + bl sub_02029088 + strb r0, [r4, #0x12] + add r0, r5, #0 + bl sub_0202907C + strb r0, [r4, #0x13] + mov r0, #0x10 + add r1, r7, #0 + bl String_ctor + add r7, r0, #0 + add r0, r5, #0 + add r1, r7, #0 + bl sub_02028F58 + add r1, r4, #0 + add r0, r7, #0 + add r1, #0x18 + mov r2, #0x10 + bl CopyStringToU16Array + add r0, r7, #0 + bl String_dtor + mov r0, #1 + strb r0, [r4, #0x10] + bl GF_RTC_DateTimeToSec + mov r2, #0x5d + lsl r2, r2, #4 + str r0, [r6, r2] + str r1, [r4, #4] + bl OS_GetOwnerRtcOffset + str r0, [r4, #8] + str r1, [r4, #0xc] + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0202F7D8 + + thumb_func_start sub_0202F844 +sub_0202F844: ; 0x0202F844 + push {r3, r4, r5, lr} + add r4, r1, #0 + mov r1, #0x5d + lsl r1, r1, #4 + add r5, r0, r1 + ldr r1, [r5, #0x14] + add r0, r4, #0 + bl sub_02028F80 + ldrb r1, [r5, #0x11] + add r0, r4, #0 + bl sub_02028F90 + ldrb r1, [r5, #0x12] + add r0, r4, #0 + bl sub_0202908C + ldrb r1, [r5, #0x13] + add r0, r4, #0 + bl sub_02029080 + add r5, #0x18 + add r0, r4, #0 + add r1, r5, #0 + bl sub_02028F24 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0202F844 + + thumb_func_start sub_0202F87C +sub_0202F87C: ; 0x0202F87C + ldr r1, _0202F884 ; =0x000005E1 + ldrb r0, [r0, r1] + bx lr + nop +_0202F884: .word 0x000005E1 + thumb_func_end sub_0202F87C + + thumb_func_start sub_0202F888 +sub_0202F888: ; 0x0202F888 + mov r1, #0x5e + lsl r1, r1, #4 + ldrb r0, [r0, r1] + bx lr + thumb_func_end sub_0202F888 + + thumb_func_start sub_0202F890 +sub_0202F890: ; 0x0202F890 + push {r4, lr} + mov r1, #0x5d + lsl r1, r1, #4 + add r4, r0, r1 + ldrb r0, [r4, #0x10] + cmp r0, #0 + beq _0202F8CE + bl GF_RTC_DateTimeToSec + ldr r3, [r4] + ldr r2, [r4, #4] + sub r3, r0, r3 + sbc r1, r2 + mov r2, #0 + ldr r0, _0202F8D0 ; =0x00015180 + sub r0, r0, r3 + sbc r2, r1 + bge _0202F8BA + mov r0, #0 + strb r0, [r4, #0x10] + pop {r4, pc} +_0202F8BA: + bl OS_GetOwnerRtcOffset + ldr r3, [r4, #8] + ldr r2, [r4, #0xc] + eor r0, r3 + eor r1, r2 + orr r0, r1 + beq _0202F8CE + mov r0, #0 + strb r0, [r4, #0x10] +_0202F8CE: + pop {r4, pc} + .balign 4, 0 +_0202F8D0: .word 0x00015180 + thumb_func_end sub_0202F890 + + thumb_func_start sub_0202F8D4 +sub_0202F8D4: ; 0x0202F8D4 + push {r4, r5, r6} + sub sp, #0x7c + mov r4, #0x7a + add r3, r1, #0 + mul r3, r4 + add r1, r0, r3 + add r6, r1, #0 + add r5, sp, #0 +_0202F8E4: + ldrb r3, [r6] + add r6, r6, #1 + strb r3, [r5] + add r5, r5, #1 + sub r4, r4, #1 + bne _0202F8E4 + mov r3, #0x7a + add r4, r2, #0 + mul r4, r3 + add r4, r0, r4 + add r2, r4, #0 +_0202F8FA: + ldrb r0, [r2] + add r2, r2, #1 + strb r0, [r1] + add r1, r1, #1 + sub r3, r3, #1 + bne _0202F8FA + add r2, sp, #0 + mov r1, #0x7a +_0202F90A: + ldrb r0, [r2] + add r2, r2, #1 + strb r0, [r4] + add r4, r4, #1 + sub r1, r1, #1 + bne _0202F90A + add sp, #0x7c + pop {r4, r5, r6} + bx lr + thumb_func_end sub_0202F8D4 + + thumb_func_start sub_0202F91C +sub_0202F91C: ; 0x0202F91C + mov r3, #0x7a + mul r3, r1 + add r0, r0, r3 + lsl r1, r2, #0x18 + ldr r3, _0202F92C ; =sub_0202F9E8 + lsr r1, r1, #0x18 + bx r3 + nop +_0202F92C: .word sub_0202F9E8 + thumb_func_end sub_0202F91C + + thumb_func_start sub_0202F930 +sub_0202F930: ; 0x0202F930 + push {r3, lr} + cmp r1, #6 + blt _0202F93C + bl GF_AssertFail + pop {r3, pc} +_0202F93C: + mov r3, #0x7a + mul r3, r1 + add r3, r0, r3 + ldrb r1, [r3, #1] + cmp r1, #0x1e + blo _0202F94E + bl GF_AssertFail + pop {r3, pc} +_0202F94E: + add r0, r1, #1 + strb r0, [r3, #1] + lsl r0, r1, #2 + add r1, r3, r0 + ldrb r0, [r2] + strb r0, [r1, #2] + ldrb r0, [r2, #1] + strb r0, [r1, #3] + ldrb r0, [r2, #2] + strb r0, [r1, #4] + ldrb r0, [r2, #3] + strb r0, [r1, #5] + pop {r3, pc} + thumb_func_end sub_0202F930 + + thumb_func_start sub_0202F968 +sub_0202F968: ; 0x0202F968 + push {r4, lr} + cmp r1, #6 + blt _0202F974 + bl GF_AssertFail + pop {r4, pc} +_0202F974: + mov r3, #0x7a + mul r3, r1 + add r0, r0, r3 + ldrb r1, [r0, #1] + cmp r2, r1 + blo _0202F986 + bl GF_AssertFail + pop {r4, pc} +_0202F986: + sub r1, r1, #1 + strb r1, [r0, #1] + ldrb r4, [r0, #1] + cmp r2, r4 + bne _0202F99C + add r1, r0, #2 + lsl r0, r2, #2 + add r0, r1, r0 + bl sub_0202F9FC + pop {r4, pc} +_0202F99C: + cmp r2, r4 + bge _0202F9BE + lsl r1, r2, #2 + add r3, r0, r1 +_0202F9A4: + ldrb r1, [r3, #6] + add r2, r2, #1 + strb r1, [r3, #2] + ldrb r1, [r3, #7] + strb r1, [r3, #3] + ldrb r1, [r3, #8] + strb r1, [r3, #4] + ldrb r1, [r3, #9] + strb r1, [r3, #5] + ldrb r4, [r0, #1] + add r3, r3, #4 + cmp r2, r4 + blt _0202F9A4 +_0202F9BE: + add r1, r0, #2 + lsl r0, r4, #2 + add r0, r1, r0 + bl sub_0202F9FC + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0202F968 + + thumb_func_start sub_0202F9CC +sub_0202F9CC: ; 0x0202F9CC + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r4, #0 +_0202F9D2: + lsl r1, r4, #0x18 + add r0, r5, #0 + lsr r1, r1, #0x18 + bl sub_0202F9E8 + add r4, r4, #1 + add r5, #0x7a + cmp r4, #6 + blt _0202F9D2 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0202F9CC + + thumb_func_start sub_0202F9E8 +sub_0202F9E8: ; 0x0202F9E8 + push {r3, r4, r5, lr} + add r4, r1, #0 + mov r1, #0 + mov r2, #0x7a + add r5, r0, #0 + bl MIi_CpuFill8 + strb r4, [r5] + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0202F9E8 + + thumb_func_start sub_0202F9FC +sub_0202F9FC: ; 0x0202F9FC + ldr r3, _0202FA04 ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #4 + bx r3 + .balign 4, 0 +_0202FA04: .word MIi_CpuFill8 + thumb_func_end sub_0202F9FC + + thumb_func_start sub_0202FA08 +sub_0202FA08: ; 0x0202FA08 + push {r4, lr} + mov r1, #0 + mov r2, #0x28 + add r4, r0, #0 + bl MIi_CpuFill8 + mov r0, #0 + str r0, [r4, #0x14] + strb r0, [r4, #0x11] + ldr r0, _0202FA34 ; =gGameLanguage + mov r1, #8 + ldrb r0, [r0] + strb r0, [r4, #0x12] + ldr r0, _0202FA38 ; =gGameVersion + ldrb r0, [r0] + strb r0, [r4, #0x13] + add r4, #0x18 + add r0, r4, #0 + bl StringFillEOS + pop {r4, pc} + nop +_0202FA34: .word gGameLanguage +_0202FA38: .word gGameVersion + thumb_func_end sub_0202FA08 + + thumb_func_start sub_0202FA3C +sub_0202FA3C: ; 0x0202FA3C + push {r3, r4} + mov r4, #0 + cmp r2, #0 + ble _0202FA56 +_0202FA44: + ldrb r3, [r1, r4] + cmp r0, r3 + bne _0202FA50 + mov r0, #1 + pop {r3, r4} + bx lr +_0202FA50: + add r4, r4, #1 + cmp r4, r2 + blt _0202FA44 +_0202FA56: + mov r0, #0 + pop {r3, r4} + bx lr + thumb_func_end sub_0202FA3C + + thumb_func_start sub_0202FA5C +sub_0202FA5C: ; 0x0202FA5C + ldr r0, _0202FA60 ; =0x00001294 + bx lr + .balign 4, 0 +_0202FA60: .word 0x00001294 + thumb_func_end sub_0202FA5C + + thumb_func_start sub_0202FA64 +sub_0202FA64: ; 0x0202FA64 + ldr r3, _0202FA6C ; =SavArray_get + mov r1, #0x24 + bx r3 + nop +_0202FA6C: .word SavArray_get + thumb_func_end sub_0202FA64 + + thumb_func_start sub_0202FA70 +sub_0202FA70: ; 0x0202FA70 + push {r3, r4, r5, lr} + mov r4, #0 + str r4, [r0] + add r5, r0, #4 +_0202FA78: + add r0, r5, #0 + bl sub_0202FB98 + add r4, r4, #1 + add r5, #0x84 + cmp r4, #0x24 + blt _0202FA78 + pop {r3, r4, r5, pc} + thumb_func_end sub_0202FA70 + + thumb_func_start sub_0202FA88 +sub_0202FA88: ; 0x0202FA88 + push {r4, r5, r6, lr} + mov r5, #0 + add r4, r0, #4 + mov r6, #0x84 +_0202FA90: + add r0, r5, #0 + mul r0, r6 + add r0, r4, r0 + bl sub_0202FBBC + cmp r0, #0 + bne _0202FAA2 + add r0, r5, #0 + pop {r4, r5, r6, pc} +_0202FAA2: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x24 + blo _0202FA90 + mov r0, #0xff + pop {r4, r5, r6, pc} + thumb_func_end sub_0202FA88 + + thumb_func_start sub_0202FAB0 +sub_0202FAB0: ; 0x0202FAB0 + push {r3, r4, r5, r6, r7, lr} + mov r4, #0 + add r5, r4, #0 + add r6, r0, #4 + mov r7, #0x84 +_0202FABA: + add r0, r4, #0 + mul r0, r7 + add r0, r6, r0 + bl sub_0202FBBC + cmp r0, #0 + beq _0202FACE + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 +_0202FACE: + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x24 + blo _0202FABA + add r0, r5, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0202FAB0 + + thumb_func_start sub_0202FADC +sub_0202FADC: ; 0x0202FADC + push {r3, lr} + cmp r1, #0x24 + bhs _0202FAEE + add r2, r0, #4 + mov r0, #0x84 + mul r0, r1 + add r0, r2, r0 + bl sub_0202FB98 +_0202FAEE: + pop {r3, pc} + thumb_func_end sub_0202FADC + + thumb_func_start sub_0202FAF0 +sub_0202FAF0: ; 0x0202FAF0 + push {r4, lr} + add r3, r0, #0 + cmp r2, #0x24 + blo _0202FAFC + mov r0, #0 + pop {r4, pc} +_0202FAFC: + add r0, r1, #0 + add r4, r3, #4 + mov r3, #0x84 + add r1, r2, #0 + mul r1, r3 + add r1, r4, r1 + add r2, r3, #0 + bl MIi_CpuCopy8 + mov r0, #1 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0202FAF0 + + thumb_func_start sub_0202FB14 +sub_0202FB14: ; 0x0202FB14 + push {r4, lr} + cmp r2, #0x24 + blo _0202FB24 + add r0, r1, #0 + bl sub_0202FB98 + mov r0, #0 + pop {r4, pc} +_0202FB24: + add r4, r0, #4 + mov r3, #0x84 + add r0, r2, #0 + mul r0, r3 + add r0, r4, r0 + add r2, r3, #0 + bl MIi_CpuCopy8 + mov r0, #1 + pop {r4, pc} + thumb_func_end sub_0202FB14 + + thumb_func_start sub_0202FB38 +sub_0202FB38: ; 0x0202FB38 + push {r3, r4, r5, r6, r7, lr} + add r4, r0, #0 + add r6, r1, #0 + bl sub_0202FAB0 + add r5, r0, #0 + mov r1, #0x84 + mul r5, r1 + add r0, r6, #0 + add r1, r5, #0 + bl AllocFromHeap + mov r1, #0 + add r2, r5, #0 + str r0, [sp] + bl MIi_CpuFill8 + mov r7, #0 + add r5, r7, #0 + add r4, r4, #4 +_0202FB60: + mov r0, #0x84 + add r6, r5, #0 + mul r6, r0 + add r0, r4, r6 + bl sub_0202FBBC + cmp r0, #0 + beq _0202FB88 + add r1, r7, #0 + mov r2, #0x84 + add r0, r7, #1 + mul r2, r1 + ldr r1, [sp] + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 + add r1, r1, r2 + add r0, r4, r6 + mov r2, #0x84 + bl MIi_CpuCopy8 +_0202FB88: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x24 + blo _0202FB60 + ldr r0, [sp] + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0202FB38 + + thumb_func_start sub_0202FB98 +sub_0202FB98: ; 0x0202FB98 + push {r4, lr} + add r4, r0, #0 + mov r1, #0 + mov r2, #0x84 + bl MIi_CpuFill8 + add r0, r4, #0 + add r0, #8 + mov r1, #8 + bl StringFillEOS + add r4, #0x18 + add r0, r4, #0 + mov r1, #0xc + bl StringFillEOS + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0202FB98 + + thumb_func_start sub_0202FBBC +sub_0202FBBC: ; 0x0202FBBC + ldrb r0, [r0, #7] + cmp r0, #0 + beq _0202FBC6 + mov r0, #1 + bx lr +_0202FBC6: + mov r0, #0 + bx lr + .balign 4, 0 + thumb_func_end sub_0202FBBC + + thumb_func_start sub_0202FBCC +sub_0202FBCC: ; 0x0202FBCC + ldr r0, _0202FBD0 ; =0x00001D50 + bx lr + .balign 4, 0 +_0202FBD0: .word 0x00001D50 + thumb_func_end sub_0202FBCC + + thumb_func_start sub_0202FBD4 +sub_0202FBD4: ; 0x0202FBD4 + push {r4, lr} + add r4, r0, #0 + ldr r2, _0202FBEC ; =0x00001D50 + mov r0, #0 + add r1, r4, #0 + bl sub_020D47EC + mov r0, #0 + mvn r0, r0 + str r0, [r4] + pop {r4, pc} + nop +_0202FBEC: .word 0x00001D50 + thumb_func_end sub_0202FBD4 + + thumb_func_start sub_0202FBF0 +sub_0202FBF0: ; 0x0202FBF0 + push {r4, r5, r6, lr} + add r5, r0, #0 + ldr r0, _0202FC20 ; =0x021D2AF8 + add r4, r1, #0 + ldr r0, [r0] + add r6, r2, #0 + cmp r0, #0 + beq _0202FC0A + bl FreeToHeap + ldr r0, _0202FC20 ; =0x021D2AF8 + mov r1, #0 + str r1, [r0] +_0202FC0A: + add r0, r5, #0 + add r1, r4, #0 + add r2, r6, #0 + mov r3, #0 + bl sub_0202711C + ldr r1, _0202FC20 ; =0x021D2AF8 + str r0, [r1] + bl sub_0202FBD4 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0202FC20: .word 0x021D2AF8 + thumb_func_end sub_0202FBF0 + + thumb_func_start sub_0202FC24 +sub_0202FC24: ; 0x0202FC24 + push {r3, lr} + ldr r0, _0202FC44 ; =0x021D2AF8 + ldr r0, [r0] + cmp r0, #0 + bne _0202FC32 + bl GF_AssertFail +_0202FC32: + ldr r0, _0202FC44 ; =0x021D2AF8 + ldr r0, [r0] + bl FreeToHeap + ldr r0, _0202FC44 ; =0x021D2AF8 + mov r1, #0 + str r1, [r0] + pop {r3, pc} + nop +_0202FC44: .word 0x021D2AF8 + thumb_func_end sub_0202FC24 + + thumb_func_start sub_0202FC48 +sub_0202FC48: ; 0x0202FC48 + ldr r0, _0202FC58 ; =0x021D2AF8 + ldr r0, [r0] + cmp r0, #0 + beq _0202FC54 + mov r0, #1 + bx lr +_0202FC54: + mov r0, #0 + bx lr + .balign 4, 0 +_0202FC58: .word 0x021D2AF8 + thumb_func_end sub_0202FC48 + + thumb_func_start sub_0202FC5C +sub_0202FC5C: ; 0x0202FC5C + push {r3, lr} + ldr r0, _0202FC70 ; =0x021D2AF8 + ldr r0, [r0] + cmp r0, #0 + bne _0202FC6A + bl GF_AssertFail +_0202FC6A: + ldr r0, _0202FC70 ; =0x021D2AF8 + ldr r0, [r0] + pop {r3, pc} + .balign 4, 0 +_0202FC70: .word 0x021D2AF8 + thumb_func_end sub_0202FC5C + + thumb_func_start sub_0202FC74 +sub_0202FC74: ; 0x0202FC74 + push {r3, lr} + ldr r0, _0202FC8C ; =0x021D2AF8 + ldr r0, [r0] + cmp r0, #0 + bne _0202FC82 + bl GF_AssertFail +_0202FC82: + ldr r0, _0202FC8C ; =0x021D2AF8 + ldr r0, [r0] + add r0, r0, #4 + pop {r3, pc} + nop +_0202FC8C: .word 0x021D2AF8 + thumb_func_end sub_0202FC74 + + thumb_func_start sub_0202FC90 +sub_0202FC90: ; 0x0202FC90 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + ldr r0, _0202FD1C ; =0x021D2AF8 + add r7, r1, #0 + ldr r0, [r0] + add r4, r2, #0 + add r6, r3, #0 + cmp r0, #0 + beq _0202FCAC + bl FreeToHeap + ldr r0, _0202FD1C ; =0x021D2AF8 + mov r1, #0 + str r1, [r0] +_0202FCAC: + ldr r3, [sp, #0x18] + add r0, r5, #0 + add r1, r7, #0 + add r2, r4, #0 + bl sub_0202711C + ldr r1, _0202FD1C ; =0x021D2AF8 + str r0, [r1] + ldr r1, [r4] + cmp r1, #1 + beq _0202FCCA + mov r0, #3 + str r0, [r4] + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0202FCCA: + ldr r1, _0202FD20 ; =0x00001C64 + add r0, #0xe8 + ldrh r2, [r0, r1] + ldr r3, _0202FD24 ; =0x0000FFFF + eor r3, r2 + lsl r3, r3, #0x10 + add r2, r2, r3 + bl sub_02030258 + ldr r1, _0202FD1C ; =0x021D2AF8 + add r0, r5, #0 + ldr r1, [r1] + bl sub_02030154 + cmp r0, #1 + bne _0202FCF2 + mov r0, #0 + str r0, [r4] + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0202FCF2: + ldr r1, _0202FD1C ; =0x021D2AF8 + add r0, r5, #0 + ldr r1, [r1] + bl sub_0203018C + cmp r0, #0 + bne _0202FD08 + mov r0, #2 + str r0, [r4] + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0202FD08: + cmp r6, #0 + beq _0202FD14 + add r0, r6, #0 + add r1, r5, #0 + bl sub_020304F0 +_0202FD14: + mov r0, #1 + str r0, [r4] + pop {r3, r4, r5, r6, r7, pc} + nop +_0202FD1C: .word 0x021D2AF8 +_0202FD20: .word 0x00001C64 +_0202FD24: .word 0x0000FFFF + thumb_func_end sub_0202FC90 + + thumb_func_start sub_0202FD28 +sub_0202FD28: ; 0x0202FD28 + push {r4, r5, r6, lr} + add r5, r2, #0 + add r6, r0, #0 + bl sub_0202711C + ldr r1, [r5] + add r4, r0, #0 + cmp r1, #1 + beq _0202FD46 + mov r1, #3 + str r1, [r5] + bl FreeToHeap + mov r0, #0 + pop {r4, r5, r6, pc} +_0202FD46: + ldr r1, _0202FD9C ; =0x00001C64 + add r0, #0xe8 + ldrh r2, [r0, r1] + ldr r3, _0202FDA0 ; =0x0000FFFF + eor r3, r2 + lsl r3, r3, #0x10 + add r2, r2, r3 + bl sub_02030258 + add r0, r6, #0 + add r1, r4, #0 + bl sub_02030154 + cmp r0, #1 + bne _0202FD72 + mov r0, #0 + str r0, [r5] + add r0, r4, #0 + bl FreeToHeap + mov r0, #0 + pop {r4, r5, r6, pc} +_0202FD72: + add r0, r6, #0 + add r1, r4, #0 + bl sub_0203018C + cmp r0, #0 + bne _0202FD8C + mov r0, #2 + str r0, [r5] + add r0, r4, #0 + bl FreeToHeap + mov r0, #0 + pop {r4, r5, r6, pc} +_0202FD8C: + mov r0, #1 + str r0, [r5] + add r0, r4, #0 + bl FreeToHeap + mov r0, #1 + pop {r4, r5, r6, pc} + nop +_0202FD9C: .word 0x00001C64 +_0202FDA0: .word 0x0000FFFF + thumb_func_end sub_0202FD28 + + thumb_func_start sub_0202FDA4 +sub_0202FDA4: ; 0x0202FDA4 + push {r3, r4, r5, r6, r7, lr} + add r4, r3, #0 + add r6, r1, #0 + ldrh r1, [r4] + add r5, r0, #0 + add r7, r2, #0 + cmp r1, #0 + beq _0202FDBA + cmp r1, #1 + beq _0202FDF2 + b _0202FE10 +_0202FDBA: + mov r0, #8 + bl sub_0201A728 + mov r0, #0xb + bl sub_0201A748 + add r0, r5, #0 + add r1, r6, #0 + add r2, r7, #0 + bl sub_02027134 + add r6, r0, #0 + cmp r6, #2 + bne _0202FDE8 + add r0, r5, #0 + mov r1, #2 + bl sub_02027550 + ldrh r0, [r4] + add r0, r0, #1 + strh r0, [r4] + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_0202FDE8: + mov r0, #8 + bl sub_0201A738 + add r0, r6, #0 + pop {r3, r4, r5, r6, r7, pc} +_0202FDF2: + bl sub_02027564 + add r5, r0, #0 + sub r0, r5, #2 + cmp r0, #1 + bhi _0202FE0C + mov r0, #0 + strh r0, [r4] + bl sub_0201A774 + mov r0, #8 + bl sub_0201A738 +_0202FE0C: + add r0, r5, #0 + pop {r3, r4, r5, r6, r7, pc} +_0202FE10: + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0202FDA4 + + thumb_func_start sub_0202FE14 +sub_0202FE14: ; 0x0202FE14 + push {r3, r4, r5, r6, r7, lr} + ldr r6, [sp, #0x18] + mov ip, r1 + add r1, r2, #0 + ldrh r2, [r6] + add r7, r0, #0 + cmp r2, #0 + beq _0202FE2A + cmp r2, #1 + beq _0202FE90 + b _0202FE9E +_0202FE2A: + ldr r2, _0202FEA4 ; =0x021D2AF8 + ldr r4, [r2] + cmp r4, #0 + bne _0202FE36 + mov r0, #3 + pop {r3, r4, r5, r6, r7, pc} +_0202FE36: + add r5, r4, #0 + add r4, #0xe8 + add r5, #0x84 + str r1, [sp] + add r1, r5, #0 + add r2, r4, #0 + mov r3, ip + bl sub_0202FF08 + add r0, r5, #0 + ldr r1, _0202FEA8 ; =0x0000E281 + add r0, #0x48 + strh r1, [r0] + add r0, r7, #0 + add r1, r5, #0 + mov r2, #0x58 + bl sub_020275C4 + add r5, #0x60 + strh r0, [r5] + ldr r0, _0202FEA8 ; =0x0000E281 + ldr r2, _0202FEAC ; =0x00001C62 + add r1, r4, #0 + strh r0, [r4, r2] + add r0, r7, #0 + add r2, r2, #2 + bl sub_020275C4 + ldr r1, _0202FEB0 ; =0x00001C64 + ldr r3, _0202FEB4 ; =0x0000FFFF + strh r0, [r4, r1] + ldrh r2, [r4, r1] + add r0, r4, #0 + eor r3, r2 + lsl r3, r3, #0x10 + add r2, r2, r3 + bl sub_02030250 + ldr r0, [sp, #0x1c] + mov r1, #0 + strh r1, [r0] + ldrh r0, [r6] + add r0, r0, #1 + strh r0, [r6] + b _0202FE9E +_0202FE90: + ldr r1, _0202FEA4 ; =0x021D2AF8 + add r2, r3, #0 + ldr r1, [r1] + ldr r3, [sp, #0x1c] + bl sub_0202FDA4 + pop {r3, r4, r5, r6, r7, pc} +_0202FE9E: + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_0202FEA4: .word 0x021D2AF8 +_0202FEA8: .word 0x0000E281 +_0202FEAC: .word 0x00001C62 +_0202FEB0: .word 0x00001C64 +_0202FEB4: .word 0x0000FFFF + thumb_func_end sub_0202FE14 + + thumb_func_start sub_0202FEB8 +sub_0202FEB8: ; 0x0202FEB8 + cmp r0, #0x1a + bgt _0202FEE6 + bge _0202FEF2 + add r3, r0, #0 + sub r3, #0xe + cmp r3, #9 + bhi _0202FEFC + add r3, r3, r3 + add r3, pc + ldrh r3, [r3, #6] + lsl r3, r3, #0x10 + asr r3, r3, #0x10 + add pc, r3 +_0202FED2: ; jump table + .short _0202FEF2 - _0202FED2 - 2 ; case 0 + .short _0202FEFC - _0202FED2 - 2 ; case 1 + .short _0202FEFC - _0202FED2 - 2 ; case 2 + .short _0202FEF2 - _0202FED2 - 2 ; case 3 + .short _0202FEFC - _0202FED2 - 2 ; case 4 + .short _0202FEFC - _0202FED2 - 2 ; case 5 + .short _0202FEF2 - _0202FED2 - 2 ; case 6 + .short _0202FEFC - _0202FED2 - 2 ; case 7 + .short _0202FEFC - _0202FED2 - 2 ; case 8 + .short _0202FEF2 - _0202FED2 - 2 ; case 9 +_0202FEE6: + cmp r0, #0x1d + bgt _0202FEEE + beq _0202FEF2 + b _0202FEFC +_0202FEEE: + cmp r0, #0x20 + bne _0202FEFC +_0202FEF2: + mov r0, #4 + str r0, [r1] + mov r0, #3 + str r0, [r2] + bx lr +_0202FEFC: + mov r0, #2 + str r0, [r1] + mov r0, #6 + str r0, [r2] + bx lr + .balign 4, 0 + thumb_func_end sub_0202FEB8 + + thumb_func_start sub_0202FF08 +sub_0202FF08: ; 0x0202FF08 + push {r4, r5, r6, r7, lr} + sub sp, #0x2c + str r3, [sp, #8] + add r7, r1, #0 + str r2, [sp, #4] + ldr r3, _02030148 ; =0x020F68C8 + str r0, [sp] + add r2, sp, #0x1c + mov r1, #8 +_0202FF1A: + ldrb r0, [r3] + add r3, r3, #1 + strb r0, [r2] + add r2, r2, #1 + sub r1, r1, #1 + bne _0202FF1A + ldr r1, _0203014C ; =0x020F68C4 + add r0, sp, #0x18 + ldrb r2, [r1] + strb r2, [r0] + ldrb r2, [r1, #1] + strb r2, [r0, #1] + ldrb r2, [r1, #2] + ldrb r1, [r1, #3] + strb r2, [r0, #2] + strb r1, [r0, #3] + add r0, r7, #0 + mov r1, #0 + mov r2, #0x64 + bl MIi_CpuFill8 + ldr r0, [sp, #8] + add r1, sp, #0x28 + add r2, sp, #0x24 + bl sub_0202FEB8 + ldr r0, [sp, #4] + mov r2, #0 + ldr r3, [r0] + mov r0, #4 + tst r0, r3 + beq _0202FF74 + mov r1, #0x80 + add r0, r3, #0 + tst r0, r1 + beq _0202FF6C + ldr r0, [sp, #4] + add r1, #0xc4 + ldrh r0, [r0, r1] + lsl r4, r0, #1 + b _0202FF76 +_0202FF6C: + ldr r0, [sp, #4] + add r1, #0xc4 + ldrh r4, [r0, r1] + b _0202FF76 +_0202FF74: + add r4, r2, #0 +_0202FF76: + ldr r5, [sp, #0x28] + mov r0, #0 + mov ip, r0 + cmp r5, #0 + ble _0203004E + add r0, sp, #0x18 + str r0, [sp, #0x14] + ldr r0, [sp, #4] + lsl r1, r4, #2 + add r0, r0, r1 + str r0, [sp, #0x10] + mov r0, #1 + and r0, r4 + add r3, r7, #0 + str r0, [sp, #0xc] +_0202FF94: + ldr r0, [sp, #4] + mov r1, #8 + ldr r0, [r0] + add r6, r0, #0 + and r6, r1 + beq _0202FFD6 + mov r4, #0x80 + add r1, r0, #0 + tst r1, r4 + bne _0202FFD6 + mov r6, #0 + cmp r5, #0 + ble _0202FFF6 + ldr r1, [sp, #0x10] + add r4, #0xb4 + ldr r1, [r1, r4] + ldr r0, [sp, #4] + lsl r1, r1, #0x1f + lsr r4, r1, #0x1d + add r1, sp, #0x1c + add r4, r1, r4 + mov r1, ip + ldrb r1, [r1, r4] +_0202FFC2: + mov r4, #0x4d + lsl r4, r4, #2 + ldr r4, [r0, r4] + cmp r4, r1 + beq _0202FFF6 + add r6, r6, #1 + add r0, r0, #4 + cmp r6, r5 + blt _0202FFC2 + b _0202FFF6 +_0202FFD6: + cmp r6, #0 + beq _0202FFE6 + mov r1, #0x80 + tst r0, r1 + beq _0202FFE6 + ldr r0, [sp, #0x14] + ldrb r6, [r0] + b _0202FFF6 +_0202FFE6: + ldr r0, [sp, #0xc] + mov r6, ip + cmp r0, #0 + beq _0202FFF6 + mov r0, ip + mov r1, #1 + add r6, r0, #0 + eor r6, r1 +_0202FFF6: + ldr r0, [sp, #0x24] + mov r5, #0 + cmp r0, #0 + ble _0203003C + ldr r1, _02030150 ; =0x00001154 + ldr r0, [sp, #4] + add r1, r0, r1 + mov r0, #0xa9 + lsl r0, r0, #2 + mul r0, r6 + add r4, r1, r0 +_0203000C: + ldr r0, [r4, #0x2c] + lsl r0, r0, #1 + lsr r0, r0, #0x1f + bne _0203002E + ldrh r0, [r4, #4] + lsl r0, r0, #0x1d + lsr r0, r0, #0x1f + bne _0203002E + ldrh r0, [r4, #6] + strh r0, [r3] + add r0, r4, #0 + add r0, #0x30 + ldrb r0, [r0] + lsl r0, r0, #0x18 + lsr r1, r0, #0x1b + add r0, r7, r2 + strb r1, [r0, #0x18] +_0203002E: + ldr r0, [sp, #0x24] + add r5, r5, #1 + add r3, r3, #2 + add r2, r2, #1 + add r4, #0x70 + cmp r5, r0 + blt _0203000C +_0203003C: + ldr r0, [sp, #0x14] + ldr r5, [sp, #0x28] + add r0, r0, #1 + str r0, [sp, #0x14] + mov r0, ip + add r0, r0, #1 + mov ip, r0 + cmp r0, r5 + blt _0202FF94 +_0203004E: + ldr r0, [sp, #8] + cmp r0, #0xd + bhi _02030124 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_02030060: ; jump table + .short _02030124 - _02030060 - 2 ; case 0 + .short _0203007C - _02030060 - 2 ; case 1 + .short _02030098 - _02030060 - 2 ; case 2 + .short _020300B4 - _02030060 - 2 ; case 3 + .short _020300D0 - _02030060 - 2 ; case 4 + .short _020300EC - _02030060 - 2 ; case 5 + .short _02030108 - _02030060 - 2 ; case 6 + .short _02030124 - _02030060 - 2 ; case 7 + .short _0203007C - _02030060 - 2 ; case 8 + .short _02030098 - _02030060 - 2 ; case 9 + .short _020300B4 - _02030060 - 2 ; case 10 + .short _020300D0 - _02030060 - 2 ; case 11 + .short _020300EC - _02030060 - 2 ; case 12 + .short _02030108 - _02030060 - 2 ; case 13 +_0203007C: + ldr r0, [sp] + mov r1, #0 + bl sub_020291E8 + add r3, r7, #0 + add r3, #0x28 + mov r2, #0x10 +_0203008A: + ldrh r1, [r0] + add r0, r0, #2 + strh r1, [r3] + add r3, r3, #2 + sub r2, r2, #1 + bne _0203008A + b _0203013A +_02030098: + ldr r0, [sp] + mov r1, #1 + bl sub_020291E8 + add r3, r7, #0 + add r3, #0x28 + mov r2, #0x10 +_020300A6: + ldrh r1, [r0] + add r0, r0, #2 + strh r1, [r3] + add r3, r3, #2 + sub r2, r2, #1 + bne _020300A6 + b _0203013A +_020300B4: + ldr r0, [sp] + mov r1, #2 + bl sub_020291E8 + add r3, r7, #0 + add r3, #0x28 + mov r2, #0x10 +_020300C2: + ldrh r1, [r0] + add r0, r0, #2 + strh r1, [r3] + add r3, r3, #2 + sub r2, r2, #1 + bne _020300C2 + b _0203013A +_020300D0: + ldr r0, [sp] + mov r1, #3 + bl sub_020291E8 + add r3, r7, #0 + add r3, #0x28 + mov r2, #0x10 +_020300DE: + ldrh r1, [r0] + add r0, r0, #2 + strh r1, [r3] + add r3, r3, #2 + sub r2, r2, #1 + bne _020300DE + b _0203013A +_020300EC: + ldr r0, [sp] + mov r1, #4 + bl sub_020291E8 + add r3, r7, #0 + add r3, #0x28 + mov r2, #0x10 +_020300FA: + ldrh r1, [r0] + add r0, r0, #2 + strh r1, [r3] + add r3, r3, #2 + sub r2, r2, #1 + bne _020300FA + b _0203013A +_02030108: + ldr r0, [sp] + mov r1, #5 + bl sub_020291E8 + add r3, r7, #0 + add r3, #0x28 + mov r2, #0x10 +_02030116: + ldrh r1, [r0] + add r0, r0, #2 + strh r1, [r3] + add r3, r3, #2 + sub r2, r2, #1 + bne _02030116 + b _0203013A +_02030124: + bl sub_0202925C + add r3, r7, #0 + add r3, #0x28 + mov r2, #0x10 +_0203012E: + ldrh r1, [r0] + add r0, r0, #2 + strh r1, [r3] + add r3, r3, #2 + sub r2, r2, #1 + bne _0203012E +_0203013A: + ldr r0, [sp, #0x40] + strh r0, [r7, #0x24] + ldr r0, [sp, #8] + add r7, #0x26 + strb r0, [r7] + add sp, #0x2c + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_02030148: .word 0x020F68C8 +_0203014C: .word 0x020F68C4 +_02030150: .word 0x00001154 + thumb_func_end sub_0202FF08 + + thumb_func_start sub_02030154 +sub_02030154: ; 0x02030154 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r1, #0 + add r4, #0xe8 + add r5, #0x84 + bl sub_020274E8 + cmp r0, #0 + bne _0203016A + mov r0, #1 + pop {r3, r4, r5, pc} +_0203016A: + ldr r0, _02030184 ; =0x00001C62 + ldrh r1, [r4, r0] + ldr r0, _02030188 ; =0x0000E281 + cmp r1, r0 + bne _0203017C + add r5, #0x48 + ldrh r1, [r5] + cmp r1, r0 + beq _02030180 +_0203017C: + mov r0, #1 + pop {r3, r4, r5, pc} +_02030180: + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_02030184: .word 0x00001C62 +_02030188: .word 0x0000E281 + thumb_func_end sub_02030154 + + thumb_func_start sub_0203018C +sub_0203018C: ; 0x0203018C + push {r3, r4, r5, r6, r7, lr} + add r4, r1, #0 + add r5, r1, #0 + ldr r1, _0203023C ; =0x00001C62 + add r4, #0xe8 + ldrh r1, [r4, r1] + ldr r2, _02030240 ; =0x0000E281 + add r6, r0, #0 + add r5, #0x84 + cmp r1, r2 + bne _020301AC + add r1, r5, #0 + add r1, #0x48 + ldrh r1, [r1] + cmp r1, r2 + beq _020301B0 +_020301AC: + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_020301B0: + add r1, r5, #0 + mov r2, #0x58 + bl sub_020275C4 + add r5, #0x60 + ldrh r1, [r5] + cmp r0, r1 + beq _020301C4 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_020301C4: + ldr r2, _02030244 ; =0x00001C64 + add r0, r6, #0 + add r1, r4, #0 + bl sub_020275C4 + ldr r1, _02030244 ; =0x00001C64 + ldrh r1, [r4, r1] + cmp r0, r1 + beq _020301DA + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_020301DA: + mov r0, #0 + mov ip, r0 + ldr r0, _02030248 ; =0x00001154 + add r0, r4, r0 + str r0, [sp] + ldr r0, _0203024C ; =0x000001D3 + add r7, r0, #0 + add r6, r0, #0 + add r7, #0x45 + add r6, #0x1c +_020301EE: + ldr r4, [sp] + mov r2, #0 +_020301F2: + ldrh r1, [r4, #6] + cmp r1, r6 + bls _020301FC + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_020301FC: + ldrh r1, [r4, #8] + cmp r1, r7 + bls _02030206 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02030206: + mov r3, #0 + add r5, r4, #0 +_0203020A: + ldrh r1, [r5, #0x1c] + cmp r1, r0 + bls _02030214 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02030214: + add r3, r3, #1 + add r5, r5, #2 + cmp r3, #4 + blt _0203020A + add r2, r2, #1 + add r4, #0x70 + cmp r2, #6 + blt _020301F2 + mov r1, #0xa9 + ldr r2, [sp] + lsl r1, r1, #2 + add r1, r2, r1 + str r1, [sp] + mov r1, ip + add r1, r1, #1 + mov ip, r1 + cmp r1, #4 + blt _020301EE + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203023C: .word 0x00001C62 +_02030240: .word 0x0000E281 +_02030244: .word 0x00001C64 +_02030248: .word 0x00001154 +_0203024C: .word 0x000001D3 + thumb_func_end sub_0203018C + + thumb_func_start sub_02030250 +sub_02030250: ; 0x02030250 + ldr r3, _02030254 ; =sub_0201FF44 + bx r3 + .balign 4, 0 +_02030254: .word sub_0201FF44 + thumb_func_end sub_02030250 + + thumb_func_start sub_02030258 +sub_02030258: ; 0x02030258 + ldr r3, _0203025C ; =sub_0201FF70 + bx r3 + .balign 4, 0 +_0203025C: .word sub_0201FF70 + thumb_func_end sub_02030258 + + thumb_func_start sub_02030260 +sub_02030260: ; 0x02030260 + ldr r3, _02030278 ; =0x021D2AF8 + ldr r3, [r3] + cmp r3, #0 + beq _02030274 + lsl r0, r0, #0xa + add r0, r3, r0 + add r1, r0, r1 + mov r0, #0x8e + lsl r0, r0, #2 + strb r2, [r1, r0] +_02030274: + bx lr + nop +_02030278: .word 0x021D2AF8 + thumb_func_end sub_02030260 + + thumb_func_start sub_0203027C +sub_0203027C: ; 0x0203027C + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, _020302A0 ; =0x021D2AF8 + add r4, r1, #0 + ldr r0, [r0] + cmp r0, #0 + bne _0203028E + bl GF_AssertFail +_0203028E: + ldr r0, _020302A0 ; =0x021D2AF8 + ldr r1, [r0] + lsl r0, r5, #0xa + add r0, r1, r0 + add r1, r0, r4 + mov r0, #0x8e + lsl r0, r0, #2 + ldrb r0, [r1, r0] + pop {r3, r4, r5, pc} + .balign 4, 0 +_020302A0: .word 0x021D2AF8 + thumb_func_end sub_0203027C + + thumb_func_start sub_020302A4 +sub_020302A4: ; 0x020302A4 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + str r0, [sp] + ldr r0, _0203048C ; =0x021D2AF8 + ldr r1, [r0] + cmp r1, #0 + bne _020302B4 + b _02030488 +_020302B4: + ldr r0, [sp] + add r7, r1, #0 + ldr r0, [r0] + add r1, #0xe8 + str r0, [r1] + ldr r0, [sp] + add r7, #0xe8 + ldr r0, [r0, #0x14] + ldr r1, [sp] + str r0, [r7, #4] + mov r0, #0x53 + lsl r0, r0, #2 + ldr r2, [r1, r0] + add r1, r7, #0 + add r1, #0xe8 + str r2, [r1] + ldr r1, [sp] + add r2, r0, #4 + ldr r2, [r1, r2] + add r1, r7, #0 + add r1, #0xec + str r2, [r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #8 + ldr r2, [r1, r2] + add r1, r7, #0 + add r1, #0xf0 + str r2, [r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0xc + ldr r2, [r1, r2] + add r1, r7, #0 + add r1, #0xf4 + str r2, [r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x10 + ldr r2, [r1, r2] + add r1, r7, #0 + add r1, #0xf8 + str r2, [r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x14 + ldr r2, [r1, r2] + add r1, r7, #0 + add r1, #0xfc + str r2, [r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x18 + ldr r2, [r1, r2] + add r1, r0, #0 + sub r1, #0x4c + str r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x1c + ldr r2, [r1, r2] + add r1, r0, #0 + sub r1, #0x48 + str r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x24 + ldr r2, [r1, r2] + add r1, r0, #0 + sub r1, #0x44 + str r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x28 + ldr r2, [r1, r2] + add r1, r0, #0 + sub r1, #0x40 + str r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x2c + ldr r2, [r1, r2] + add r1, r0, #0 + sub r1, #0x3c + str r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x40 + ldr r2, [r1, r2] + add r1, r0, #0 + sub r1, #0x28 + str r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x44 + ldr r2, [r1, r2] + add r1, r0, #0 + sub r1, #0x24 + str r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x48 + ldr r2, [r1, r2] + add r1, r0, #0 + sub r1, #0x20 + str r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x50 + ldr r2, [r1, r2] + add r1, r0, #0 + sub r1, #0x1c + str r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x64 + ldrh r2, [r1, r2] + add r1, r0, #0 + sub r1, #8 + strh r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x67 + ldrb r2, [r1, r2] + sub r1, r0, #6 + ldr r4, [sp] + strh r2, [r7, r1] + add r2, r0, #0 + ldr r1, [sp] + add r2, #0x68 + ldr r1, [r1, r2] + sub r0, r0, #4 + str r1, [r7, r0] + add r0, r4, #0 + mov r3, #0 + add r5, r7, #0 + str r0, [sp, #8] + str r7, [sp, #4] +_020303C8: + ldr r0, [r4, #0x18] + ldr r2, [sp, #8] + ldr r6, [sp, #4] + str r0, [r5, #8] + mov r0, #6 + add r2, #0x28 + add r6, #0x18 + mov ip, r0 +_020303D8: + ldmia r2!, {r0, r1} + stmia r6!, {r0, r1} + mov r0, ip + sub r0, r0, #1 + mov ip, r0 + bne _020303D8 + ldr r0, [r2] + mov r1, #0x5f + lsl r1, r1, #2 + str r0, [r6] + ldr r0, [r4, r1] + cmp r0, #0 + bne _020303FA + mov r0, #5 + sub r1, #0x68 + lsl r0, r0, #6 + b _020303FC +_020303FA: + sub r1, #0x68 +_020303FC: + str r0, [r5, r1] + mov r0, #0x1a + lsl r0, r0, #4 + ldr r2, [r4, r0] + add r1, r0, #0 + sub r1, #0x6c + str r2, [r5, r1] + ldr r1, [sp] + add r4, r4, #4 + add r2, r1, r3 + add r1, r0, #0 + add r1, #0x1c + ldrb r2, [r2, r1] + add r1, r7, r3 + sub r0, #0x54 + strb r2, [r1, r0] + ldr r0, [sp, #8] + add r3, r3, #1 + add r0, #0x34 + str r0, [sp, #8] + ldr r0, [sp, #4] + add r5, r5, #4 + add r0, #0x34 + str r0, [sp, #4] + cmp r3, #4 + blt _020303C8 + ldr r0, _02030490 ; =0x00001150 + ldr r4, [sp] + add r0, r7, r0 + str r0, [sp, #0xc] + ldr r0, _02030494 ; =0x00001BE0 + mov r5, #0 + add r6, r7, r0 +_0203043E: + ldr r0, [r4, #4] + ldr r1, [sp, #0xc] + bl sub_020306DC + add r0, r4, #0 + add r0, #0xf8 + ldr r0, [r0] + add r1, r6, #0 + bl sub_02028EE4 + mov r0, #0x46 + lsl r0, r0, #2 + ldr r0, [r4, r0] + bl sub_02006EFC + mov r1, #0x53 + add r2, r7, r5 + lsl r1, r1, #2 + strb r0, [r2, r1] + mov r0, #0xa9 + ldr r1, [sp, #0xc] + lsl r0, r0, #2 + add r0, r1, r0 + add r5, r5, #1 + str r0, [sp, #0xc] + add r4, r4, #4 + add r6, #0x20 + cmp r5, #4 + blt _0203043E + mov r1, #0x13 + ldr r0, [sp] + lsl r1, r1, #4 + ldr r0, [r0, r1] + ldr r1, _02030498 ; =0x00001C60 + add r1, r7, r1 + bl sub_0202AC9C +_02030488: + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203048C: .word 0x021D2AF8 +_02030490: .word 0x00001150 +_02030494: .word 0x00001BE0 +_02030498: .word 0x00001C60 + thumb_func_end sub_020302A4 + + thumb_func_start sub_0203049C +sub_0203049C: ; 0x0203049C + ldr r2, _020304B0 ; =0x021D2AF8 + ldr r2, [r2] + cmp r2, #0 + beq _020304AE + lsl r0, r0, #2 + add r2, r2, r0 + mov r0, #0x7f + lsl r0, r0, #2 + str r1, [r2, r0] +_020304AE: + bx lr + .balign 4, 0 +_020304B0: .word 0x021D2AF8 + thumb_func_end sub_0203049C + + thumb_func_start sub_020304B4 +sub_020304B4: ; 0x020304B4 + push {r3, r4} + ldr r0, _020304EC ; =0x021D2AF8 + ldr r4, [r0] + cmp r4, #0 + bne _020304C4 + mov r0, #1 + pop {r3, r4} + bx lr +_020304C4: + mov r0, #0x45 + lsl r0, r0, #2 + add r1, r0, #0 + mov r3, #0 + add r4, #0xe8 + add r1, #0x2c +_020304D0: + ldr r2, [r4, r0] + cmp r2, r1 + bls _020304DC + mov r0, #0 + pop {r3, r4} + bx lr +_020304DC: + add r3, r3, #1 + add r4, r4, #4 + cmp r3, #4 + blt _020304D0 + mov r0, #1 + pop {r3, r4} + bx lr + nop +_020304EC: .word 0x021D2AF8 + thumb_func_end sub_020304B4 + + thumb_func_start sub_020304F0 +sub_020304F0: ; 0x020304F0 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x18 + add r6, r0, #0 + ldr r0, _020306C8 ; =0x021D2AF8 + str r1, [sp] + ldr r1, [r0] + add r0, r1, #0 + str r0, [sp, #0x14] + add r0, #0xe8 + add r1, #0xe8 + str r0, [sp, #0x14] + ldr r0, [r1] + str r0, [r6] + ldr r0, [sp, #0x14] + add r0, #0xe8 + ldr r1, [r0] + mov r0, #0x53 + lsl r0, r0, #2 + str r1, [r6, r0] + ldr r1, [sp, #0x14] + add r1, #0xec + ldr r2, [r1] + add r1, r0, #4 + str r2, [r6, r1] + ldr r1, [sp, #0x14] + add r1, #0xf0 + ldr r2, [r1] + add r1, r0, #0 + add r1, #8 + str r2, [r6, r1] + ldr r1, [sp, #0x14] + add r1, #0xf4 + ldr r2, [r1] + add r1, r0, #0 + add r1, #0xc + str r2, [r6, r1] + ldr r1, [sp, #0x14] + add r1, #0xf8 + ldr r2, [r1] + add r1, r0, #0 + add r1, #0x10 + str r2, [r6, r1] + ldr r1, [sp, #0x14] + add r1, #0xfc + ldr r2, [r1] + add r1, r0, #0 + add r1, #0x14 + str r2, [r6, r1] + add r2, r0, #0 + ldr r1, [sp, #0x14] + sub r2, #0x4c + ldr r2, [r1, r2] + add r1, r0, #0 + add r1, #0x18 + str r2, [r6, r1] + add r2, r0, #0 + ldr r1, [sp, #0x14] + sub r2, #0x48 + ldr r2, [r1, r2] + add r1, r0, #0 + add r1, #0x1c + str r2, [r6, r1] + add r2, r0, #0 + ldr r1, [sp, #0x14] + sub r2, #0x44 + ldr r2, [r1, r2] + add r1, r0, #0 + add r1, #0x24 + str r2, [r6, r1] + add r2, r0, #0 + ldr r1, [sp, #0x14] + sub r2, #0x40 + ldr r2, [r1, r2] + add r1, r0, #0 + add r1, #0x28 + str r2, [r6, r1] + add r2, r0, #0 + ldr r1, [sp, #0x14] + sub r2, #0x28 + ldr r2, [r1, r2] + mov r1, #0x10 + orr r2, r1 + add r1, r0, #0 + add r1, #0x40 + str r2, [r6, r1] + add r2, r0, #0 + ldr r1, [sp, #0x14] + sub r2, #0x24 + ldr r2, [r1, r2] + add r1, r0, #0 + add r1, #0x44 + str r2, [r6, r1] + add r2, r0, #0 + ldr r1, [sp, #0x14] + sub r2, #0x20 + ldr r2, [r1, r2] + add r1, r0, #0 + add r1, #0x48 + str r2, [r6, r1] + add r2, r0, #0 + ldr r1, [sp, #0x14] + sub r2, #0x1c + ldr r2, [r1, r2] + add r1, r0, #0 + add r1, #0x50 + str r2, [r6, r1] + add r2, r0, #0 + ldr r1, [sp, #0x14] + sub r2, #8 + ldrh r2, [r1, r2] + add r1, r0, #0 + add r1, #0x64 + strh r2, [r6, r1] + mov r1, #0 + str r1, [r6, #0x14] + add r0, #0x2c + str r1, [r6, r0] + ldr r0, [sp] + bl sub_0202A634 + mov r1, #0x11 + lsl r1, r1, #4 + ldr r1, [r6, r1] + bl sub_020293FC + ldr r5, [sp, #0x14] + ldr r1, _020306CC ; =0x00001150 + add r0, r5, #0 + str r0, [sp, #0x10] + add r0, r0, r1 + str r0, [sp, #8] + ldr r1, _020306D0 ; =0x00001BE0 + add r0, r5, #0 + add r0, r0, r1 + mov r7, #0 + add r4, r6, #0 + str r6, [sp, #0xc] + str r0, [sp, #4] +_02030604: + ldr r0, [r5, #8] + ldr r3, [sp, #0x10] + ldr r2, [sp, #0xc] + str r0, [r4, #0x18] + mov r0, #6 + add r3, #0x18 + add r2, #0x28 + mov ip, r0 +_02030614: + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + mov r0, ip + sub r0, r0, #1 + mov ip, r0 + bne _02030614 + ldr r0, [r3] + mov r1, #0x45 + lsl r1, r1, #2 + str r0, [r2] + add r0, r1, #0 + ldr r2, [r5, r1] + add r0, #0x68 + str r2, [r4, r0] + add r0, r1, #0 + add r0, #0x20 + ldr r0, [r5, r0] + add r1, #0x8c + str r0, [r4, r1] + ldr r0, [sp, #8] + ldr r1, [r4, #4] + bl sub_02030724 + add r1, r4, #0 + add r1, #0xf8 + ldr r0, [sp, #4] + ldr r1, [r1] + bl sub_02028EE4 + ldr r0, [sp, #0x14] + add r5, r5, #4 + add r1, r0, r7 + mov r0, #0x53 + lsl r0, r0, #2 + ldrb r2, [r1, r0] + add r1, r6, r7 + add r0, #0x70 + strb r2, [r1, r0] + ldr r0, [sp, #0x10] + mov r1, #0xa9 + add r0, #0x34 + str r0, [sp, #0x10] + ldr r0, [sp, #0xc] + lsl r1, r1, #2 + add r0, #0x34 + str r0, [sp, #0xc] + ldr r0, [sp, #8] + add r7, r7, #1 + add r0, r0, r1 + str r0, [sp, #8] + ldr r0, [sp, #4] + add r4, r4, #4 + add r0, #0x20 + str r0, [sp, #4] + cmp r7, #4 + blt _02030604 + ldr r0, [sp] + bl Sav2_PlayerData_GetOptionsAddr + mov r1, #0x13 + lsl r1, r1, #4 + ldr r1, [r6, r1] + bl sub_0202AC9C + mov r5, #0x13 + lsl r5, r5, #4 + ldr r1, [r6, r5] + ldr r4, _020306D4 ; =0x00001C60 + ldr r2, [sp, #0x14] + ldrh r0, [r1] + ldrh r2, [r2, r4] + ldr r3, _020306D8 ; =0xFFFF83FF + lsl r2, r2, #0x11 + lsr r2, r2, #0x1b + lsl r2, r2, #0x1b + and r0, r3 + lsr r2, r2, #0x11 + orr r0, r2 + strh r0, [r1] + ldr r2, [r6, r5] + ldrh r0, [r2] + lsl r1, r0, #0x11 + lsr r1, r1, #0x1b + cmp r1, #0x14 + blo _020306C2 + and r0, r3 + strh r0, [r2] +_020306C2: + add sp, #0x18 + pop {r3, r4, r5, r6, r7, pc} + nop +_020306C8: .word 0x021D2AF8 +_020306CC: .word 0x00001150 +_020306D0: .word 0x00001BE0 +_020306D4: .word 0x00001C60 +_020306D8: .word 0xFFFF83FF + thumb_func_end sub_020304F0 + + thumb_func_start sub_020306DC +sub_020306DC: ; 0x020306DC + push {r3, r4, r5, r6, r7, lr} + add r6, r1, #0 + mov r2, #0xa9 + add r7, r0, #0 + add r0, r6, #0 + mov r1, #0 + lsl r2, r2, #2 + bl MIi_CpuFill8 + add r0, r7, #0 + bl sub_0207463C + strh r0, [r6] + add r0, r7, #0 + bl GetPartyCount + strh r0, [r6, #2] + ldrh r0, [r6, #2] + mov r4, #0 + cmp r0, #0 + ble _02030720 + add r5, r6, #4 +_02030708: + add r0, r7, #0 + add r1, r4, #0 + bl GetPartyMonByIndex + add r1, r5, #0 + bl sub_02072A98 + ldrh r0, [r6, #2] + add r4, r4, #1 + add r5, #0x70 + cmp r4, r0 + blt _02030708 +_02030720: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_020306DC + + thumb_func_start sub_02030724 +sub_02030724: ; 0x02030724 + push {r3, r4, r5, r6, r7, lr} + sub sp, #8 + add r7, r0, #0 + str r1, [sp] + mov r1, #0 + add r0, sp, #4 + strb r1, [r0] + mov r0, #0xb + bl AllocMonZeroed + add r4, r0, #0 + ldrh r1, [r7] + ldr r0, [sp] + bl sub_020744DC + ldrh r0, [r7, #2] + mov r6, #0 + cmp r0, #0 + ble _02030770 + add r5, r7, #4 +_0203074C: + add r0, r5, #0 + add r1, r4, #0 + bl sub_02072D64 + add r0, r4, #0 + mov r1, #0xa2 + add r2, sp, #4 + bl sub_0206EC40 + ldr r0, [sp] + add r1, r4, #0 + bl sub_02074524 + ldrh r0, [r7, #2] + add r6, r6, #1 + add r5, #0x70 + cmp r6, r0 + blt _0203074C +_02030770: + add r0, r4, #0 + bl FreeToHeap + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_02030724 + + thumb_func_start sub_0203077C +sub_0203077C: ; 0x0203077C + push {r4, lr} + add r4, r0, #0 + ldr r0, _020307A8 ; =0x021D2AF8 + ldr r0, [r0] + cmp r0, #0 + bne _0203078C + bl GF_AssertFail +_0203078C: + add r0, r4, #0 + mov r1, #0x64 + bl AllocFromHeap + add r4, r0, #0 + ldr r0, _020307A8 ; =0x021D2AF8 + add r1, r4, #0 + ldr r0, [r0] + mov r2, #0x64 + add r0, #0x84 + bl MIi_CpuCopy32 + add r0, r4, #0 + pop {r4, pc} + .balign 4, 0 +_020307A8: .word 0x021D2AF8 + thumb_func_end sub_0203077C + + thumb_func_start sub_020307AC +sub_020307AC: ; 0x020307AC + push {r4, lr} + add r4, r0, #0 + ldr r0, _020307D8 ; =0x021D2AF8 + ldr r0, [r0] + cmp r0, #0 + bne _020307BC + bl GF_AssertFail +_020307BC: + add r0, r4, #0 + mov r1, #0x80 + bl AllocFromHeap + add r4, r0, #0 + ldr r0, _020307D8 ; =0x021D2AF8 + add r1, r4, #0 + ldr r0, [r0] + mov r2, #0x80 + add r0, r0, #4 + bl MIi_CpuCopy32 + add r0, r4, #0 + pop {r4, pc} + .balign 4, 0 +_020307D8: .word 0x021D2AF8 + thumb_func_end sub_020307AC + + thumb_func_start sub_020307DC +sub_020307DC: ; 0x020307DC + push {r3, lr} + ldr r0, _020307F4 ; =0x021D2AF8 + ldr r0, [r0] + cmp r0, #0 + bne _020307EA + bl GF_AssertFail +_020307EA: + ldr r0, _020307F4 ; =0x021D2AF8 + ldr r0, [r0] + add r0, r0, #4 + pop {r3, pc} + nop +_020307F4: .word 0x021D2AF8 + thumb_func_end sub_020307DC + + thumb_func_start sub_020307F8 +sub_020307F8: ; 0x020307F8 + push {r3, lr} + ldr r0, _02030810 ; =0x021D2AF8 + ldr r0, [r0] + cmp r0, #0 + bne _02030806 + bl GF_AssertFail +_02030806: + ldr r0, _02030810 ; =0x021D2AF8 + ldr r0, [r0] + add r0, #0x84 + pop {r3, pc} + nop +_02030810: .word 0x021D2AF8 + thumb_func_end sub_020307F8 + + thumb_func_start sub_02030814 +sub_02030814: ; 0x02030814 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + ldr r0, _0203087C ; =0x021D2AF8 + add r6, r1, #0 + ldr r0, [r0] + add r7, r2, #0 + add r4, r3, #0 + cmp r0, #0 + bne _0203082A + bl GF_AssertFail +_0203082A: + ldr r1, _0203087C ; =0x021D2AF8 + add r0, r6, #0 + ldr r1, [r1] + mov r2, #0x64 + add r1, #0x84 + bl MIi_CpuCopy8 + ldr r1, _0203087C ; =0x021D2AF8 + ldr r2, _02030880 ; =0x00001C68 + ldr r1, [r1] + add r0, r7, #0 + add r1, #0xe8 + bl MIi_CpuCopy8 + ldr r1, _0203087C ; =0x021D2AF8 + add r0, r5, #0 + ldr r1, [r1] + mov r2, #0x80 + add r1, r1, #4 + bl MIi_CpuCopy8 + ldr r0, _0203087C ; =0x021D2AF8 + ldr r1, _02030884 ; =0x00001D4C + ldr r0, [r0] + ldr r2, _02030888 ; =0x0000FFFF + ldrh r3, [r0, r1] + add r0, #0xe8 + sub r1, #0xe8 + eor r2, r3 + lsl r2, r2, #0x10 + add r2, r3, r2 + bl sub_02030258 + cmp r4, #0 + beq _02030878 + ldr r1, [sp, #0x18] + add r0, r4, #0 + bl sub_020304F0 +_02030878: + pop {r3, r4, r5, r6, r7, pc} + nop +_0203087C: .word 0x021D2AF8 +_02030880: .word 0x00001C68 +_02030884: .word 0x00001D4C +_02030888: .word 0x0000FFFF + thumb_func_end sub_02030814 + + thumb_func_start sub_0203088C +sub_0203088C: ; 0x0203088C + push {r3, r4, r5, lr} + add r4, r0, #0 + add r5, r2, #0 + cmp r1, #5 + bhi _0203090C + add r0, r1, r1 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_020308A2: ; jump table + .short _020308AE - _020308A2 - 2 ; case 0 + .short _020308CA - _020308A2 - 2 ; case 1 + .short _020308DA - _020308A2 - 2 ; case 2 + .short _020308EC - _020308A2 - 2 ; case 3 + .short _020308FE - _020308A2 - 2 ; case 4 + .short _02030904 - _020308A2 - 2 ; case 5 +_020308AE: + cmp r5, #0xc + blt _020308B6 + bl GF_AssertFail +_020308B6: + lsl r0, r5, #1 + ldrh r0, [r4, r0] + ldr r1, _02030918 ; =0x000001ED + cmp r0, r1 + bls _020308C6 + mov r0, #0 + add r1, r0, #0 + pop {r3, r4, r5, pc} +_020308C6: + mov r1, #0 + pop {r3, r4, r5, pc} +_020308CA: + cmp r5, #0xc + blt _020308D2 + bl GF_AssertFail +_020308D2: + add r0, r4, r5 + ldrb r0, [r0, #0x18] + mov r1, #0 + pop {r3, r4, r5, pc} +_020308DA: + ldrh r1, [r4, #0x24] + ldr r0, _0203091C ; =0x0000270F + cmp r1, r0 + bls _020308E6 + mov r1, #0 + pop {r3, r4, r5, pc} +_020308E6: + add r0, r1, #0 + mov r1, #0 + pop {r3, r4, r5, pc} +_020308EC: + add r4, #0x26 + ldrb r0, [r4] + cmp r0, #0x21 + blo _020308FA + mov r0, #0 + add r1, r0, #0 + pop {r3, r4, r5, pc} +_020308FA: + mov r1, #0 + pop {r3, r4, r5, pc} +_020308FE: + ldr r0, [r4, #0x58] + ldr r1, [r4, #0x5c] + pop {r3, r4, r5, pc} +_02030904: + add r4, #0x27 + ldrb r0, [r4] + mov r1, #0 + pop {r3, r4, r5, pc} +_0203090C: + bl GF_AssertFail + mov r0, #0 + add r1, r0, #0 + pop {r3, r4, r5, pc} + nop +_02030918: .word 0x000001ED +_0203091C: .word 0x0000270F + thumb_func_end sub_0203088C + + thumb_func_start sub_02030920 +sub_02030920: ; 0x02030920 + push {r4, lr} + mov r1, #0x64 + bl AllocFromHeap + mov r1, #0 + mov r2, #0x64 + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r4, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02030920 + + thumb_func_start sub_02030938 +sub_02030938: ; 0x02030938 + ldr r3, _0203093C ; =FreeToHeap + bx r3 + .balign 4, 0 +_0203093C: .word FreeToHeap + thumb_func_end sub_02030938 + + thumb_func_start sub_02030940 +sub_02030940: ; 0x02030940 + ldr r3, _02030948 ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #0x58 + bx r3 + .balign 4, 0 +_02030948: .word MIi_CpuFill8 + thumb_func_end sub_02030940 + + thumb_func_start sub_0203094C +sub_0203094C: ; 0x0203094C + push {r3, lr} + bl sub_0203107C + mov r1, #0x8e + lsl r1, r1, #4 + add r0, r0, r1 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203094C + + thumb_func_start sub_0203095C +sub_0203095C: ; 0x0203095C + ldrb r0, [r0] + lsl r0, r0, #0x1b + lsr r0, r0, #0x1f + bx lr + thumb_func_end sub_0203095C + + thumb_func_start sub_02030964 +sub_02030964: ; 0x02030964 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r1, r1, #0x1f + ldrb r3, [r0] + mov r2, #0x10 + lsr r1, r1, #0x1b + bic r3, r2 + orr r1, r3 + strb r1, [r0] + bx lr + thumb_func_end sub_02030964 + + thumb_func_start sub_02030978 +sub_02030978: ; 0x02030978 + push {r3, r4} + cmp r1, #9 + bhi _02030A1E + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0203098A: ; jump table + .short _0203099E - _0203098A - 2 ; case 0 + .short _020309B2 - _0203098A - 2 ; case 1 + .short _020309C6 - _0203098A - 2 ; case 2 + .short _020309CE - _0203098A - 2 ; case 3 + .short _020309DA - _0203098A - 2 ; case 4 + .short _020309E6 - _0203098A - 2 ; case 5 + .short _020309F2 - _0203098A - 2 ; case 6 + .short _020309FE - _0203098A - 2 ; case 7 + .short _02030A0A - _0203098A - 2 ; case 8 + .short _02030A16 - _0203098A - 2 ; case 9 +_0203099E: + ldrb r4, [r0] + ldrb r2, [r3] + mov r1, #1 + bic r4, r1 + mov r1, #1 + and r1, r2 + orr r1, r4 + strb r1, [r0] + pop {r3, r4} + bx lr +_020309B2: + ldrb r2, [r0] + mov r1, #0xe + bic r2, r1 + ldrb r1, [r3] + lsl r1, r1, #0x1d + lsr r1, r1, #0x1c + orr r1, r2 + strb r1, [r0] + pop {r3, r4} + bx lr +_020309C6: + ldrb r1, [r3] + strb r1, [r0, #1] + pop {r3, r4} + bx lr +_020309CE: + ldrh r3, [r3] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #4] + pop {r3, r4} + bx lr +_020309DA: + ldrh r3, [r3] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #0x20] + pop {r3, r4} + bx lr +_020309E6: + ldrb r1, [r3] + add r0, r0, r2 + add r0, #0x28 + strb r1, [r0] + pop {r3, r4} + bx lr +_020309F2: + lsl r1, r2, #2 + ldr r3, [r3] + add r0, r0, r1 + str r3, [r0, #0x2c] + pop {r3, r4} + bx lr +_020309FE: + ldrh r3, [r3] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #0x3c] + pop {r3, r4} + bx lr +_02030A0A: + ldrb r1, [r3] + add r0, r0, r2 + add r0, #0x44 + strb r1, [r0] + pop {r3, r4} + bx lr +_02030A16: + lsl r1, r2, #2 + ldr r3, [r3] + add r0, r0, r1 + str r3, [r0, #0x48] +_02030A1E: + pop {r3, r4} + bx lr + .balign 4, 0 + thumb_func_end sub_02030978 + + thumb_func_start sub_02030A24 +sub_02030A24: ; 0x02030A24 + cmp r1, #9 + bhi _02030A94 + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_02030A34: ; jump table + .short _02030A50 - _02030A34 - 2 ; case 0 + .short _02030A48 - _02030A34 - 2 ; case 1 + .short _02030A58 - _02030A34 - 2 ; case 2 + .short _02030A5C - _02030A34 - 2 ; case 3 + .short _02030A64 - _02030A34 - 2 ; case 4 + .short _02030A6C - _02030A34 - 2 ; case 5 + .short _02030A74 - _02030A34 - 2 ; case 6 + .short _02030A7C - _02030A34 - 2 ; case 7 + .short _02030A84 - _02030A34 - 2 ; case 8 + .short _02030A8C - _02030A34 - 2 ; case 9 +_02030A48: + ldrb r0, [r0] + lsl r0, r0, #0x1c + lsr r0, r0, #0x1d + bx lr +_02030A50: + ldrb r0, [r0] + lsl r0, r0, #0x1f + lsr r0, r0, #0x1f + bx lr +_02030A58: + ldrb r0, [r0, #1] + bx lr +_02030A5C: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #4] + bx lr +_02030A64: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #0x20] + bx lr +_02030A6C: + add r0, r0, r2 + add r0, #0x28 + ldrb r0, [r0] + bx lr +_02030A74: + lsl r1, r2, #2 + add r0, r0, r1 + ldr r0, [r0, #0x2c] + bx lr +_02030A7C: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #0x3c] + bx lr +_02030A84: + add r0, r0, r2 + add r0, #0x44 + ldrb r0, [r0] + bx lr +_02030A8C: + lsl r1, r2, #2 + add r0, r0, r1 + ldr r0, [r0, #0x48] + bx lr +_02030A94: + mov r0, #0 + bx lr + thumb_func_end sub_02030A24 + + thumb_func_start sub_02030A98 +sub_02030A98: ; 0x02030A98 + ldr r3, _02030AA0 ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #4 + bx r3 + .balign 4, 0 +_02030AA0: .word MIi_CpuFill8 + thumb_func_end sub_02030A98 + + thumb_func_start sub_02030AA4 +sub_02030AA4: ; 0x02030AA4 + push {r3, r4} + cmp r1, #0xa + bne _02030ACE + ldrb r1, [r3] + cmp r1, #1 + blo _02030ABE + mov r1, #1 + ldrb r3, [r0] + lsl r1, r2 + orr r1, r3 + strb r1, [r0] + pop {r3, r4} + bx lr +_02030ABE: + mov r1, #1 + add r3, r1, #0 + ldrb r4, [r0] + lsl r3, r2 + mov r1, #0xff + eor r1, r3 + and r1, r4 + strb r1, [r0] +_02030ACE: + pop {r3, r4} + bx lr + .balign 4, 0 + thumb_func_end sub_02030AA4 + + thumb_func_start sub_02030AD4 +sub_02030AD4: ; 0x02030AD4 + cmp r1, #0xa + bne _02030AE4 + ldrb r0, [r0] + add r1, r0, #0 + asr r1, r2 + mov r0, #1 + and r0, r1 + bx lr +_02030AE4: + mov r0, #0 + bx lr + thumb_func_end sub_02030AD4 + + thumb_func_start sub_02030AE8 +sub_02030AE8: ; 0x02030AE8 + push {r3, lr} + bl sub_0203107C + ldr r1, _02030AF4 ; =0x00001618 + add r0, r0, r1 + pop {r3, pc} + .balign 4, 0 +_02030AF4: .word 0x00001618 + thumb_func_end sub_02030AE8 + + thumb_func_start sub_02030AF8 +sub_02030AF8: ; 0x02030AF8 + ldr r3, _02030B00 ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #0x54 + bx r3 + .balign 4, 0 +_02030B00: .word MIi_CpuFill8 + thumb_func_end sub_02030AF8 + + thumb_func_start sub_02030B04 +sub_02030B04: ; 0x02030B04 + push {r3, lr} + bl sub_0203107C + mov r1, #0x8e + lsl r1, r1, #4 + add r0, r0, r1 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02030B04 + + thumb_func_start sub_02030B14 +sub_02030B14: ; 0x02030B14 + ldrb r0, [r0] + lsl r0, r0, #0x1c + lsr r0, r0, #0x1f + bx lr + thumb_func_end sub_02030B14 + + thumb_func_start sub_02030B1C +sub_02030B1C: ; 0x02030B1C + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r1, r1, #0x1f + ldrb r3, [r0] + mov r2, #8 + lsr r1, r1, #0x1c + bic r3, r2 + orr r1, r3 + strb r1, [r0] + bx lr + thumb_func_end sub_02030B1C + + thumb_func_start sub_02030B30 +sub_02030B30: ; 0x02030B30 + push {r4, lr} + ldr r3, [sp, #8] + cmp r1, #4 + bhi _02030B82 + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_02030B44: ; jump table + .short _02030B4E - _02030B44 - 2 ; case 0 + .short _02030B60 - _02030B44 - 2 ; case 1 + .short _02030B66 - _02030B44 - 2 ; case 2 + .short _02030B70 - _02030B44 - 2 ; case 3 + .short _02030B78 - _02030B44 - 2 ; case 4 +_02030B4E: + ldrb r4, [r0] + ldrb r2, [r3] + mov r1, #7 + bic r4, r1 + mov r1, #7 + and r1, r2 + orr r1, r4 + strb r1, [r0] + pop {r4, pc} +_02030B60: + ldrb r1, [r3] + strb r1, [r0, #1] + pop {r4, pc} +_02030B66: + ldrh r3, [r3] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #4] + pop {r4, pc} +_02030B70: + ldrb r1, [r3] + add r0, r0, r2 + strb r1, [r0, #2] + pop {r4, pc} +_02030B78: + ldrh r3, [r3] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #0x2c] + pop {r4, pc} +_02030B82: + bl GF_AssertFail + pop {r4, pc} + thumb_func_end sub_02030B30 + + thumb_func_start sub_02030B88 +sub_02030B88: ; 0x02030B88 + push {r3, lr} + cmp r1, #4 + bhi _02030BC6 + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_02030B9A: ; jump table + .short _02030BA4 - _02030B9A - 2 ; case 0 + .short _02030BAC - _02030B9A - 2 ; case 1 + .short _02030BB0 - _02030B9A - 2 ; case 2 + .short _02030BB8 - _02030B9A - 2 ; case 3 + .short _02030BBE - _02030B9A - 2 ; case 4 +_02030BA4: + ldrb r0, [r0] + lsl r0, r0, #0x1d + lsr r0, r0, #0x1d + pop {r3, pc} +_02030BAC: + ldrb r0, [r0, #1] + pop {r3, pc} +_02030BB0: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #4] + pop {r3, pc} +_02030BB8: + add r0, r0, r2 + ldrb r0, [r0, #2] + pop {r3, pc} +_02030BBE: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #0x2c] + pop {r3, pc} +_02030BC6: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02030B88 + + thumb_func_start sub_02030BD0 +sub_02030BD0: ; 0x02030BD0 + lsl r2, r0, #0x17 + lsr r2, r2, #0x18 + ldrb r3, [r1, r2] + lsr r2, r0, #0x1f + lsl r1, r0, #0x1f + sub r1, r1, r2 + mov r0, #0x1f + ror r1, r0 + add r0, r2, r1 + lsl r0, r0, #0x18 + lsr r0, r0, #0x16 + add r1, r3, #0 + asr r1, r0 + mov r0, #0xf + and r0, r1 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bx lr + thumb_func_end sub_02030BD0 + + thumb_func_start sub_02030BF4 +sub_02030BF4: ; 0x02030BF4 + push {r3, r4, r5, r6} + lsr r5, r0, #0x1f + lsl r4, r0, #0x1f + lsl r3, r0, #0x17 + sub r4, r4, r5 + mov r0, #0x1f + ror r4, r0 + add r0, r5, r4 + lsl r0, r0, #0x18 + lsr r3, r3, #0x18 + lsr r0, r0, #0x18 + bne _02030C14 + add r4, r1, r3 + ldrb r6, [r1, r3] + mov r5, #0xf0 + b _02030C1A +_02030C14: + ldrb r6, [r1, r3] + add r4, r1, r3 + mov r5, #0xf +_02030C1A: + and r5, r6 + strb r5, [r1, r3] + lsl r0, r0, #2 + add r1, r2, #0 + lsl r1, r0 + lsl r0, r1, #0x18 + ldrb r3, [r4] + lsr r0, r0, #0x18 + orr r0, r3 + strb r0, [r4] + pop {r3, r4, r5, r6} + bx lr + .balign 4, 0 + thumb_func_end sub_02030BF4 + + thumb_func_start sub_02030C34 +sub_02030C34: ; 0x02030C34 + push {r4, r5, r6, lr} + mov r4, #0 + add r5, r0, #0 + add r6, r4, #0 +_02030C3C: + lsl r0, r4, #0x18 + lsr r0, r0, #0x18 + add r1, r5, #0 + add r2, r6, #0 + bl sub_02030BF4 + add r4, r4, #1 + cmp r4, #0x12 + blt _02030C3C + pop {r4, r5, r6, pc} + thumb_func_end sub_02030C34 + + thumb_func_start sub_02030C50 +sub_02030C50: ; 0x02030C50 + ldr r3, _02030C58 ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #4 + bx r3 + .balign 4, 0 +_02030C58: .word MIi_CpuFill8 + thumb_func_end sub_02030C50 + + thumb_func_start sub_02030C5C +sub_02030C5C: ; 0x02030C5C + push {r3, lr} + bl sub_0203107C + ldr r1, _02030C68 ; =0x0000161C + add r0, r0, r1 + pop {r3, pc} + .balign 4, 0 +_02030C68: .word 0x0000161C + thumb_func_end sub_02030C5C + + thumb_func_start sub_02030C6C +sub_02030C6C: ; 0x02030C6C + push {r4, lr} + ldr r3, [sp, #8] + cmp r1, #5 + bne _02030C98 + ldrb r1, [r3] + cmp r1, #1 + blo _02030C86 + mov r1, #1 + ldrb r3, [r0] + lsl r1, r2 + orr r1, r3 + strb r1, [r0] + pop {r4, pc} +_02030C86: + mov r1, #1 + add r3, r1, #0 + ldrb r4, [r0] + lsl r3, r2 + mov r1, #0xff + eor r1, r3 + and r1, r4 + strb r1, [r0] + pop {r4, pc} +_02030C98: + bl GF_AssertFail + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02030C6C + + thumb_func_start sub_02030CA0 +sub_02030CA0: ; 0x02030CA0 + push {r3, lr} + cmp r1, #5 + bne _02030CB2 + ldrb r0, [r0] + add r1, r0, #0 + asr r1, r2 + mov r0, #1 + and r0, r1 + pop {r3, pc} +_02030CB2: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02030CA0 + + thumb_func_start sub_02030CBC +sub_02030CBC: ; 0x02030CBC + ldr r3, _02030CC4 ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #0x74 + bx r3 + .balign 4, 0 +_02030CC4: .word MIi_CpuFill8 + thumb_func_end sub_02030CBC + + thumb_func_start sub_02030CC8 +sub_02030CC8: ; 0x02030CC8 + push {r3, lr} + bl sub_0203107C + mov r1, #0x8e + lsl r1, r1, #4 + add r0, r0, r1 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02030CC8 + + thumb_func_start sub_02030CD8 +sub_02030CD8: ; 0x02030CD8 + ldrb r0, [r0] + lsl r0, r0, #0x1c + lsr r0, r0, #0x1f + bx lr + thumb_func_end sub_02030CD8 + + thumb_func_start sub_02030CE0 +sub_02030CE0: ; 0x02030CE0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r1, r1, #0x1f + ldrb r3, [r0] + mov r2, #8 + lsr r1, r1, #0x1c + bic r3, r2 + orr r1, r3 + strb r1, [r0] + bx lr + thumb_func_end sub_02030CE0 + + thumb_func_start sub_02030CF4 +sub_02030CF4: ; 0x02030CF4 + push {r4, lr} + ldr r4, [sp, #8] + cmp r1, #8 + bhi _02030D7E + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_02030D08: ; jump table + .short _02030D1A - _02030D08 - 2 ; case 0 + .short _02030D2C - _02030D08 - 2 ; case 1 + .short _02030D32 - _02030D08 - 2 ; case 2 + .short _02030D3C - _02030D08 - 2 ; case 3 + .short _02030D4A - _02030D08 - 2 ; case 4 + .short _02030D54 - _02030D08 - 2 ; case 5 + .short _02030D60 - _02030D08 - 2 ; case 6 + .short _02030D6A - _02030D08 - 2 ; case 7 + .short _02030D72 - _02030D08 - 2 ; case 8 +_02030D1A: + ldrb r3, [r0] + ldrb r2, [r4] + mov r1, #7 + bic r3, r1 + mov r1, #7 + and r1, r2 + orr r1, r3 + strb r1, [r0] + pop {r4, pc} +_02030D2C: + ldrb r1, [r4] + strb r1, [r0, #1] + pop {r4, pc} +_02030D32: + ldrh r3, [r4] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #0x22] + pop {r4, pc} +_02030D3C: + lsl r1, r2, #2 + add r0, r0, r1 + add r0, r0, r3 + ldrb r4, [r4] + add r0, #0x2a + strb r4, [r0] + pop {r4, pc} +_02030D4A: + lsl r1, r2, #2 + ldr r3, [r4] + add r0, r0, r1 + str r3, [r0, #0x3c] + pop {r4, pc} +_02030D54: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r3, [r4] + add r0, #0x4c + strh r3, [r0] + pop {r4, pc} +_02030D60: + ldrh r3, [r4] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #6] + pop {r4, pc} +_02030D6A: + ldrb r1, [r4] + add r0, r0, r2 + strb r1, [r0, #3] + pop {r4, pc} +_02030D72: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r3, [r4] + add r0, #0x54 + strh r3, [r0] + pop {r4, pc} +_02030D7E: + bl GF_AssertFail + pop {r4, pc} + thumb_func_end sub_02030CF4 + + thumb_func_start sub_02030D84 +sub_02030D84: ; 0x02030D84 + push {r3, lr} + cmp r1, #8 + bhi _02030DF2 + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_02030D96: ; jump table + .short _02030DA8 - _02030D96 - 2 ; case 0 + .short _02030DB0 - _02030D96 - 2 ; case 1 + .short _02030DB4 - _02030D96 - 2 ; case 2 + .short _02030DBC - _02030D96 - 2 ; case 3 + .short _02030DC8 - _02030D96 - 2 ; case 4 + .short _02030DD0 - _02030D96 - 2 ; case 5 + .short _02030DDA - _02030D96 - 2 ; case 6 + .short _02030DE2 - _02030D96 - 2 ; case 7 + .short _02030DE8 - _02030D96 - 2 ; case 8 +_02030DA8: + ldrb r0, [r0] + lsl r0, r0, #0x1d + lsr r0, r0, #0x1d + pop {r3, pc} +_02030DB0: + ldrb r0, [r0, #1] + pop {r3, pc} +_02030DB4: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #0x22] + pop {r3, pc} +_02030DBC: + lsl r1, r2, #2 + add r0, r0, r1 + add r0, r0, r3 + add r0, #0x2a + ldrb r0, [r0] + pop {r3, pc} +_02030DC8: + lsl r1, r2, #2 + add r0, r0, r1 + ldr r0, [r0, #0x3c] + pop {r3, pc} +_02030DD0: + lsl r1, r2, #1 + add r0, r0, r1 + add r0, #0x4c + ldrh r0, [r0] + pop {r3, pc} +_02030DDA: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #6] + pop {r3, pc} +_02030DE2: + add r0, r0, r2 + ldrb r0, [r0, #3] + pop {r3, pc} +_02030DE8: + lsl r1, r2, #1 + add r0, r0, r1 + add r0, #0x54 + ldrh r0, [r0] + pop {r3, pc} +_02030DF2: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02030D84 + + thumb_func_start sub_02030DFC +sub_02030DFC: ; 0x02030DFC + ldr r3, _02030E04 ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #4 + bx r3 + .balign 4, 0 +_02030E04: .word MIi_CpuFill8 + thumb_func_end sub_02030DFC + + thumb_func_start sub_02030E08 +sub_02030E08: ; 0x02030E08 + push {r3, lr} + bl sub_0203107C + ldr r1, _02030E14 ; =0x00001620 + add r0, r0, r1 + pop {r3, pc} + .balign 4, 0 +_02030E14: .word 0x00001620 + thumb_func_end sub_02030E08 + + thumb_func_start sub_02030E18 +sub_02030E18: ; 0x02030E18 + push {r4, lr} + ldr r3, [sp, #8] + cmp r1, #9 + beq _02030E26 + cmp r1, #0xa + beq _02030E4A + b _02030E50 +_02030E26: + ldrb r1, [r3] + cmp r1, #1 + blo _02030E38 + mov r1, #1 + ldrb r3, [r0] + lsl r1, r2 + orr r1, r3 + strb r1, [r0] + pop {r4, pc} +_02030E38: + mov r1, #1 + add r3, r1, #0 + ldrb r4, [r0] + lsl r3, r2 + mov r1, #0xff + eor r1, r3 + and r1, r4 + strb r1, [r0] + pop {r4, pc} +_02030E4A: + mov r1, #1 + strb r1, [r0, #1] + pop {r4, pc} +_02030E50: + bl GF_AssertFail + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02030E18 + + thumb_func_start sub_02030E58 +sub_02030E58: ; 0x02030E58 + push {r3, lr} + cmp r1, #9 + beq _02030E64 + cmp r1, #0xa + beq _02030E70 + b _02030E74 +_02030E64: + ldrb r0, [r0] + add r1, r0, #0 + asr r1, r2 + mov r0, #1 + and r0, r1 + pop {r3, pc} +_02030E70: + ldrb r0, [r0, #1] + pop {r3, pc} +_02030E74: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} + thumb_func_end sub_02030E58 + + thumb_func_start sub_02030E7C +sub_02030E7C: ; 0x02030E7C + ldr r3, _02030E84 ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #0x48 + bx r3 + .balign 4, 0 +_02030E84: .word MIi_CpuFill8 + thumb_func_end sub_02030E7C + + thumb_func_start sub_02030E88 +sub_02030E88: ; 0x02030E88 + push {r3, lr} + bl sub_0203107C + mov r1, #0x8e + lsl r1, r1, #4 + add r0, r0, r1 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02030E88 + + thumb_func_start sub_02030E98 +sub_02030E98: ; 0x02030E98 + ldrb r0, [r0] + lsl r0, r0, #0x1c + lsr r0, r0, #0x1f + bx lr + thumb_func_end sub_02030E98 + + thumb_func_start sub_02030EA0 +sub_02030EA0: ; 0x02030EA0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r1, r1, #0x1f + ldrb r3, [r0] + mov r2, #8 + lsr r1, r1, #0x1c + bic r3, r2 + orr r1, r3 + strb r1, [r0] + bx lr + thumb_func_end sub_02030EA0 + + thumb_func_start sub_02030EB4 +sub_02030EB4: ; 0x02030EB4 + push {r4, lr} + ldr r3, [sp, #8] + cmp r1, #7 + bhi _02030F2E + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_02030EC8: ; jump table + .short _02030ED8 - _02030EC8 - 2 ; case 0 + .short _02030EEA - _02030EC8 - 2 ; case 1 + .short _02030EFC - _02030EC8 - 2 ; case 2 + .short _02030F02 - _02030EC8 - 2 ; case 3 + .short _02030F08 - _02030EC8 - 2 ; case 4 + .short _02030F12 - _02030EC8 - 2 ; case 5 + .short _02030F1C - _02030EC8 - 2 ; case 6 + .short _02030F24 - _02030EC8 - 2 ; case 7 +_02030ED8: + ldrb r4, [r0] + ldrb r2, [r3] + mov r1, #7 + bic r4, r1 + mov r1, #7 + and r1, r2 + orr r1, r4 + strb r1, [r0] + pop {r4, pc} +_02030EEA: + ldrb r2, [r0] + mov r1, #0x10 + bic r2, r1 + ldrb r1, [r3] + lsl r1, r1, #0x1f + lsr r1, r1, #0x1b + orr r1, r2 + strb r1, [r0] + pop {r4, pc} +_02030EFC: + ldrb r1, [r3] + strb r1, [r0, #1] + pop {r4, pc} +_02030F02: + ldrb r1, [r3] + strb r1, [r0, #2] + pop {r4, pc} +_02030F08: + ldrh r3, [r3] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #6] + pop {r4, pc} +_02030F12: + ldrh r3, [r3] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #0xe] + pop {r4, pc} +_02030F1C: + ldrb r1, [r3] + add r0, r0, r2 + strb r1, [r0, #3] + pop {r4, pc} +_02030F24: + ldrh r3, [r3] + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #0x2a] + pop {r4, pc} +_02030F2E: + bl GF_AssertFail + pop {r4, pc} + thumb_func_end sub_02030EB4 + + thumb_func_start sub_02030F34 +sub_02030F34: ; 0x02030F34 + push {r3, lr} + cmp r1, #7 + bhi _02030F8C + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_02030F46: ; jump table + .short _02030F56 - _02030F46 - 2 ; case 0 + .short _02030F5E - _02030F46 - 2 ; case 1 + .short _02030F66 - _02030F46 - 2 ; case 2 + .short _02030F6A - _02030F46 - 2 ; case 3 + .short _02030F6E - _02030F46 - 2 ; case 4 + .short _02030F76 - _02030F46 - 2 ; case 5 + .short _02030F7E - _02030F46 - 2 ; case 6 + .short _02030F84 - _02030F46 - 2 ; case 7 +_02030F56: + ldrb r0, [r0] + lsl r0, r0, #0x1d + lsr r0, r0, #0x1d + pop {r3, pc} +_02030F5E: + ldrb r0, [r0] + lsl r0, r0, #0x1b + lsr r0, r0, #0x1f + pop {r3, pc} +_02030F66: + ldrb r0, [r0, #1] + pop {r3, pc} +_02030F6A: + ldrb r0, [r0, #2] + pop {r3, pc} +_02030F6E: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #6] + pop {r3, pc} +_02030F76: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #0xe] + pop {r3, pc} +_02030F7E: + add r0, r0, r2 + ldrb r0, [r0, #3] + pop {r3, pc} +_02030F84: + lsl r1, r2, #1 + add r0, r0, r1 + ldrh r0, [r0, #0x2a] + pop {r3, pc} +_02030F8C: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} + thumb_func_end sub_02030F34 + + thumb_func_start sub_02030F94 +sub_02030F94: ; 0x02030F94 + ldr r3, _02030F9C ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #4 + bx r3 + .balign 4, 0 +_02030F9C: .word MIi_CpuFill8 + thumb_func_end sub_02030F94 + + thumb_func_start sub_02030FA0 +sub_02030FA0: ; 0x02030FA0 + push {r3, lr} + bl sub_0203107C + ldr r1, _02030FAC ; =0x00001624 + add r0, r0, r1 + pop {r3, pc} + .balign 4, 0 +_02030FAC: .word 0x00001624 + thumb_func_end sub_02030FA0 + + thumb_func_start sub_02030FB0 +sub_02030FB0: ; 0x02030FB0 + push {r4, lr} + ldr r3, [sp, #8] + cmp r1, #8 + bne _02030FDC + ldrb r1, [r3] + cmp r1, #1 + blo _02030FCA + mov r1, #1 + ldrb r3, [r0] + lsl r1, r2 + orr r1, r3 + strb r1, [r0] + pop {r4, pc} +_02030FCA: + mov r1, #1 + add r3, r1, #0 + ldrb r4, [r0] + lsl r3, r2 + mov r1, #0xff + eor r1, r3 + and r1, r4 + strb r1, [r0] + pop {r4, pc} +_02030FDC: + bl GF_AssertFail + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02030FB0 + + thumb_func_start sub_02030FE4 +sub_02030FE4: ; 0x02030FE4 + push {r3, lr} + cmp r1, #8 + bne _02030FF6 + ldrb r0, [r0] + add r1, r0, #0 + asr r1, r2 + mov r0, #1 + and r0, r1 + pop {r3, pc} +_02030FF6: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02030FE4 + + thumb_func_start sub_02031000 +sub_02031000: ; 0x02031000 + ldr r0, _02031004 ; =0x00001628 + bx lr + .balign 4, 0 +_02031004: .word 0x00001628 + thumb_func_end sub_02031000 + + thumb_func_start sub_02031008 +sub_02031008: ; 0x02031008 + push {r4, lr} + ldr r2, _02031058 ; =0x00001628 + mov r1, #0 + add r4, r0, #0 + bl MIi_CpuFill8 + ldr r0, _0203105C ; =0x00000954 + add r0, r4, r0 + bl sub_0202D240 + ldr r0, _02031060 ; =0x00000ABC + add r0, r4, r0 + bl sub_0202D254 + ldr r0, _02031064 ; =0x00000ADC + add r0, r4, r0 + bl sub_0202D274 + ldr r0, _02031068 ; =0x00001618 + add r0, r4, r0 + bl sub_02030A98 + ldr r0, _0203106C ; =0x0000161C + add r0, r4, r0 + bl sub_02030C50 + ldr r0, _02031070 ; =0x00001620 + add r0, r4, r0 + bl sub_02030DFC + ldr r0, _02031074 ; =0x00001624 + add r0, r4, r0 + bl sub_02030F94 + ldr r1, _02031078 ; =0x021D2AFC + ldr r2, _02031058 ; =0x00001628 + add r0, r4, #0 + bl MIi_CpuCopy8 + pop {r4, pc} + .balign 4, 0 +_02031058: .word 0x00001628 +_0203105C: .word 0x00000954 +_02031060: .word 0x00000ABC +_02031064: .word 0x00000ADC +_02031068: .word 0x00001618 +_0203106C: .word 0x0000161C +_02031070: .word 0x00001620 +_02031074: .word 0x00001624 +_02031078: .word 0x021D2AFC + thumb_func_end sub_02031008 + + thumb_func_start sub_0203107C +sub_0203107C: ; 0x0203107C + ldr r0, _02031080 ; =0x021D2AFC + bx lr + .balign 4, 0 +_02031080: .word 0x021D2AFC + thumb_func_end sub_0203107C + + thumb_func_start sub_02031084 +sub_02031084: ; 0x02031084 + push {r3, lr} + mov r1, #0x13 + bl SavArray_get + add r1, r0, #0 + ldr r0, _02031098 ; =0x021D2AFC + ldr r2, _0203109C ; =0x00001628 + bl MIi_CpuCopy8 + pop {r3, pc} + .balign 4, 0 +_02031098: .word 0x021D2AFC +_0203109C: .word 0x00001628 + thumb_func_end sub_02031084 + + thumb_func_start sub_020310A0 +sub_020310A0: ; 0x020310A0 + push {r3, lr} + mov r1, #0x13 + bl SavArray_get + ldr r1, _020310B4 ; =0x021D2AFC + ldr r2, _020310B8 ; =0x00001628 + bl MIi_CpuCopy8 + pop {r3, pc} + nop +_020310B4: .word 0x021D2AFC +_020310B8: .word 0x00001628 + thumb_func_end sub_020310A0 + + thumb_func_start sub_020310BC +sub_020310BC: ; 0x020310BC + push {r3, lr} + cmp r1, #0x70 + bge _020310E6 + cmp r1, #0x64 + blt _020310E0 + cmp r2, #0x10 + blt _020310CE + add r1, r1, #1 + sub r2, #0x10 +_020310CE: + lsl r1, r1, #1 + ldrh r0, [r0, r1] + add r1, r0, #0 + asr r1, r2 + mov r0, #1 + and r0, r1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + pop {r3, pc} +_020310E0: + lsl r1, r1, #1 + ldrh r0, [r0, r1] + pop {r3, pc} +_020310E6: + mov r3, #0 + mvn r3, r3 + cmp r2, r3 + bne _020310F6 + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} +_020310F6: + lsl r2, r2, #6 + sub r1, #0x70 + add r2, r0, r2 + lsl r0, r1, #1 + add r0, r2, r0 + add r0, #0xe0 + ldrh r0, [r0] + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_020310BC + + thumb_func_start sub_02031108 +sub_02031108: ; 0x02031108 + push {r3, r4, r5, r6, r7, lr} + add r6, r0, #0 + ldr r0, _02031180 ; =0x0000270F + add r7, r3, #0 + add r5, r1, #0 + add r4, r2, #0 + cmp r7, r0 + bls _0203111A + add r7, r0, #0 +_0203111A: + cmp r5, #0x70 + bge _02031166 + cmp r5, #0x64 + blt _02031158 + cmp r4, #0xff + bne _0203112A + bl GF_AssertFail +_0203112A: + cmp r4, #0x10 + blt _02031132 + add r5, r5, #1 + sub r4, #0x10 +_02031132: + cmp r7, #0 + bne _0203114A + mov r2, #1 + add r3, r2, #0 + lsl r1, r5, #1 + ldrh r0, [r6, r1] + lsl r3, r4 + ldr r2, _02031184 ; =0x0000FFFF + eor r2, r3 + and r0, r2 + strh r0, [r6, r1] + b _0203117C +_0203114A: + lsl r2, r5, #1 + mov r0, #1 + ldrh r1, [r6, r2] + lsl r0, r4 + orr r0, r1 + strh r0, [r6, r2] + b _0203117C +_02031158: + cmp r4, #0xff + beq _02031160 + bl GF_AssertFail +_02031160: + lsl r0, r5, #1 + strh r7, [r6, r0] + b _0203117C +_02031166: + cmp r4, #0xff + bne _0203116E + bl GF_AssertFail +_0203116E: + lsl r0, r4, #6 + sub r5, #0x70 + add r1, r6, r0 + lsl r0, r5, #1 + add r0, r1, r0 + add r0, #0xe0 + strh r7, [r0] +_0203117C: + add r0, r7, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02031180: .word 0x0000270F +_02031184: .word 0x0000FFFF + thumb_func_end sub_02031108 + + thumb_func_start sub_02031188 +sub_02031188: ; 0x02031188 + push {r4, lr} + mov r2, #2 + add r4, r0, #0 + add r0, #0xe0 + mov r1, #0 + lsl r2, r2, #0xa + bl MIi_CpuFill8 + mov r1, #0x64 + add r4, #0xc8 + mov r0, #0 +_0203119E: + add r1, r1, #1 + strh r0, [r4] + add r4, r4, #2 + cmp r1, #0x6f + ble _0203119E + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02031188 + + thumb_func_start sub_020311AC +sub_020311AC: ; 0x020311AC + push {r3, r4, r5, r6, r7, lr} + add r5, r1, #0 + add r6, r0, #0 + cmp r5, #0xff + bne _020311BA + bl GF_AssertFail +_020311BA: + cmp r5, #0x1f + bge _02031200 + add r0, r6, #0 + str r0, [sp] + add r0, #0xe0 + lsl r1, r5, #6 + str r0, [sp] + add r7, r0, r1 +_020311CA: + add r0, r5, #1 + lsl r1, r0, #6 + ldr r0, [sp] + mov r2, #0x40 + add r0, r0, r1 + add r1, r7, #0 + bl MIi_CpuCopy8 + mov r4, #0x64 +_020311DC: + add r0, r6, #0 + add r1, r4, #0 + add r2, r5, #1 + bl sub_020310BC + add r3, r0, #0 + add r0, r6, #0 + add r1, r4, #0 + add r2, r5, #0 + bl sub_02031108 + add r4, r4, #2 + cmp r4, #0x6f + blt _020311DC + add r5, r5, #1 + add r7, #0x40 + cmp r5, #0x1f + blt _020311CA +_02031200: + mov r0, #0x1f + add r6, #0xe0 + lsl r0, r0, #6 + add r0, r6, r0 + mov r1, #0 + mov r2, #0x40 + bl MIi_CpuFill8 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_020311AC + + thumb_func_start sub_02031214 +sub_02031214: ; 0x02031214 + ldr r3, _02031224 ; =MIi_CpuFill8 + add r0, #0xe0 + lsl r1, r1, #6 + add r0, r0, r1 + mov r1, #0 + mov r2, #0x40 + bx r3 + nop +_02031224: .word MIi_CpuFill8 + thumb_func_end sub_02031214 + + thumb_func_start sub_02031228 +sub_02031228: ; 0x02031228 + push {r3, r4, r5, r6, r7, lr} + add r4, r3, #0 + add r5, r0, #0 + add r6, r1, #0 + add r7, r2, #0 + bl sub_020310BC + add r0, r0, r4 + lsl r0, r0, #0x10 + lsr r3, r0, #0x10 + add r0, r5, #0 + add r1, r6, #0 + add r2, r7, #0 + bl sub_02031108 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_02031228 + + thumb_func_start sub_02031248 +sub_02031248: ; 0x02031248 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + add r7, r2, #0 + add r4, r3, #0 + bl sub_020310BC + sub r3, r0, r4 + bpl _0203125C + mov r3, #0 +_0203125C: + lsl r3, r3, #0x10 + add r0, r5, #0 + add r1, r6, #0 + add r2, r7, #0 + lsr r3, r3, #0x10 + bl sub_02031108 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_02031248 + + thumb_func_start sub_0203126C +sub_0203126C: ; 0x0203126C + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + add r7, r2, #0 + add r4, r3, #0 + bl sub_020310BC + cmp r0, r4 + bhs _0203128C + add r0, r5, #0 + add r1, r6, #0 + add r2, r7, #0 + add r3, r4, #0 + bl sub_02031108 + pop {r3, r4, r5, r6, r7, pc} +_0203128C: + ldr r3, _020312A0 ; =0x0000270F + cmp r0, r3 + bls _0203129C + add r0, r5, #0 + add r1, r6, #0 + add r2, r7, #0 + bl sub_02031108 +_0203129C: + pop {r3, r4, r5, r6, r7, pc} + nop +_020312A0: .word 0x0000270F + thumb_func_end sub_0203126C + + thumb_func_start sub_020312A4 +sub_020312A4: ; 0x020312A4 + mov r0, #0xba + lsl r0, r0, #4 + bx lr + .balign 4, 0 + thumb_func_end sub_020312A4 + + thumb_func_start sub_020312AC +sub_020312AC: ; 0x020312AC + push {r4, lr} + mov r2, #0xba + mov r1, #0 + lsl r2, r2, #4 + add r4, r0, #0 + bl MIi_CpuFill8 + mov r0, #0 + mvn r0, r0 + str r0, [r4] + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_020312AC + + thumb_func_start sub_020312C4 +sub_020312C4: ; 0x020312C4 + ldr r3, _020312C8 ; =sub_02027144 + bx r3 + .balign 4, 0 +_020312C8: .word sub_02027144 + thumb_func_end sub_020312C4 + + thumb_func_start sub_020312CC +sub_020312CC: ; 0x020312CC + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_02027158 + add r4, r0, #0 + add r0, r5, #0 + bl sub_020273F0 + orr r0, r4 + pop {r3, r4, r5, pc} + thumb_func_end sub_020312CC + + thumb_func_start sub_020312E0 +sub_020312E0: ; 0x020312E0 + push {r4, r5, r6, lr} + add r5, r1, #0 + add r4, r2, #0 + add r6, r3, #0 + bl sub_020274E8 + cmp r0, #0 + bne _020312F4 + mov r0, #0 + pop {r4, r5, r6, pc} +_020312F4: + cmp r4, #0 + beq _02031302 + cmp r4, #1 + beq _0203130A + cmp r4, #2 + beq _02031314 + b _02031320 +_02031302: + lsl r0, r6, #1 + add r0, r5, r0 + ldrh r0, [r0, #4] + pop {r4, r5, r6, pc} +_0203130A: + lsl r0, r6, #1 + add r1, r5, r0 + ldr r0, _02031328 ; =0x000003E2 + ldrh r0, [r1, r0] + pop {r4, r5, r6, pc} +_02031314: + lsl r0, r6, #1 + add r1, r5, r0 + mov r0, #0x1f + lsl r0, r0, #6 + ldrh r0, [r1, r0] + pop {r4, r5, r6, pc} +_02031320: + bl GF_AssertFail + mov r0, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 +_02031328: .word 0x000003E2 + thumb_func_end sub_020312E0 + + thumb_func_start sub_0203132C +sub_0203132C: ; 0x0203132C + push {r4, lr} + ldr r4, _02031370 ; =0x0000270F + cmp r3, r4 + bls _02031336 + add r3, r4, #0 +_02031336: + cmp r1, #0 + beq _02031344 + cmp r1, #1 + beq _0203134C + cmp r1, #2 + beq _02031356 + b _02031362 +_02031344: + lsl r1, r2, #1 + add r0, r0, r1 + strh r3, [r0, #4] + b _0203136A +_0203134C: + lsl r1, r2, #1 + add r1, r0, r1 + ldr r0, _02031374 ; =0x000003E2 + strh r3, [r1, r0] + b _0203136A +_02031356: + lsl r1, r2, #1 + add r1, r0, r1 + mov r0, #0x1f + lsl r0, r0, #6 + strh r3, [r1, r0] + b _0203136A +_02031362: + bl GF_AssertFail + mov r0, #0 + pop {r4, pc} +_0203136A: + add r0, r3, #0 + pop {r4, pc} + nop +_02031370: .word 0x0000270F +_02031374: .word 0x000003E2 + thumb_func_end sub_0203132C + + thumb_func_start sub_02031378 +sub_02031378: ; 0x02031378 + push {r3, r4, r5, r6, r7, lr} + add r7, r0, #0 + add r5, r1, #0 + add r4, r2, #0 + add r6, r3, #0 + bl sub_020274E8 + cmp r0, #0 + bne _0203138E + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_0203138E: + add r0, r7, #0 + add r1, r5, #0 + add r2, r4, #0 + add r3, r6, #0 + bl sub_020312E0 + add r1, sp, #8 + ldrh r3, [r1, #0x10] + cmp r0, r3 + bhs _020313AE + add r0, r5, #0 + add r1, r4, #0 + add r2, r6, #0 + bl sub_0203132C + pop {r3, r4, r5, r6, r7, pc} +_020313AE: + ldr r3, _020313C0 ; =0x0000270F + cmp r0, r3 + bls _020313BE + add r0, r5, #0 + add r1, r4, #0 + add r2, r6, #0 + bl sub_0203132C +_020313BE: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_020313C0: .word 0x0000270F + thumb_func_end sub_02031378 + + thumb_func_start sub_020313C4 +sub_020313C4: ; 0x020313C4 + push {r4, r5, r6, r7, lr} + sub sp, #0x1c + add r5, r0, #0 + mov r0, #0 + add r6, r1, #0 + str r2, [sp, #4] + str r3, [sp, #8] + ldr r4, [sp, #0x38] + ldr r7, [sp, #0x3c] + str r0, [sp, #0xc] + cmp r6, #0x22 + blt _020313E0 + cmp r6, #0x3c + ble _020313E4 +_020313E0: + bl GF_AssertFail +_020313E4: + ldr r1, [sp, #4] + mov r0, #0 + sub r1, #0x24 + cmp r1, #0x18 + bhi _020313FC + mov r3, #1 + add r2, r3, #0 + lsl r2, r1 + ldr r1, _020314A0 ; =0x01001001 + tst r1, r2 + beq _020313FC + add r0, r3, #0 +_020313FC: + cmp r0, #0 + bne _02031404 + bl GF_AssertFail +_02031404: + mov r0, #1 + str r0, [r4] + mov r0, #2 + str r0, [r7] + ldr r0, [sp, #8] + cmp r0, #0xff + beq _02031418 + add sp, #0x1c + mov r0, #0 + pop {r4, r5, r6, r7, pc} +_02031418: + add r0, r5, #0 + bl sub_020274E8 + cmp r0, #0 + bne _02031428 + add sp, #0x1c + mov r0, #0 + pop {r4, r5, r6, r7, pc} +_02031428: + add r0, r5, #0 + bl sub_0203107C + ldr r2, [sp, #8] + str r0, [sp, #0x18] + add r1, r6, #0 + bl sub_020310BC + str r0, [sp, #0x14] + ldr r0, [sp, #0x18] + ldr r1, [sp, #4] + ldr r2, [sp, #8] + bl sub_020310BC + str r0, [sp, #0x10] + ldr r1, [sp, #0x34] + add r0, r5, #0 + add r2, r4, #0 + bl sub_020312C4 + add r6, r0, #0 + ldr r0, [r4] + cmp r0, #1 + beq _0203145C + mov r4, #0 + b _0203146A +_0203145C: + ldr r2, [sp, #0x30] + ldr r3, [sp, #0x10] + add r0, r5, #0 + add r1, r6, #0 + bl sub_020312E0 + add r4, r0, #0 +_0203146A: + ldr r0, [sp, #0x14] + ldr r2, [sp, #0x30] + str r0, [sp] + ldr r3, [sp, #0x10] + add r0, r5, #0 + add r1, r6, #0 + bl sub_02031378 + ldr r0, [sp, #0x14] + cmp r0, r4 + beq _0203148E + add r0, r5, #0 + add r1, r6, #0 + bl sub_020312CC + str r0, [r7] + mov r0, #1 + str r0, [sp, #0xc] +_0203148E: + cmp r6, #0 + beq _02031498 + add r0, r6, #0 + bl FreeToHeap +_02031498: + ldr r0, [sp, #0xc] + add sp, #0x1c + pop {r4, r5, r6, r7, pc} + nop +_020314A0: .word 0x01001001 + thumb_func_end sub_020313C4 + + thumb_func_start sub_020314A4 +sub_020314A4: ; 0x020314A4 + push {r4, lr} + mov r1, #0x80 + bl AllocFromHeap + mov r1, #0 + mov r2, #0x80 + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r4, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_020314A4 + + thumb_func_start sub_020314BC +sub_020314BC: ; 0x020314BC + ldr r3, _020314C0 ; =FreeToHeap + bx r3 + .balign 4, 0 +_020314C0: .word FreeToHeap + thumb_func_end sub_020314BC + + thumb_func_start sub_020314C4 +sub_020314C4: ; 0x020314C4 + push {r4, r5, r6, r7, lr} + sub sp, #0x64 + add r6, r1, #0 + add r5, r0, #0 + add r0, r6, #0 + bl Sav2_PlayerData_GetProfileAddr + add r4, r0, #0 + add r0, r6, #0 + bl sub_0202CA44 + str r0, [sp] + add r0, r6, #0 + bl Sav2_SysInfo_get + add r0, r6, #0 + bl sub_0202A960 + add r7, r0, #0 + add r0, sp, #0x10 + bl OS_GetOwnerInfo + add r0, r7, #0 + add r1, sp, #0xc + add r2, sp, #8 + add r3, sp, #4 + bl sub_0202AA20 + add r0, r5, #0 + mov r1, #0 + mov r2, #0x80 + bl MIi_CpuFill8 + add r0, r4, #0 + bl PlayerProfile_GetNamePtr + add r1, r0, #0 + add r0, r5, #0 + bl CopyU16StringArray + add r0, r4, #0 + bl PlayerProfile_GetTrainerID + str r0, [r5, #0x10] + add r0, r4, #0 + bl PlayerProfile_GetTrainerGender + strb r0, [r5, #0x14] + ldr r0, [sp, #0xc] + mov r1, #0xfe + strh r0, [r5, #0x1c] + ldrb r0, [r5, #0x1b] + bic r0, r1 + ldr r1, [sp, #8] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r1, r1, #0x19 + lsr r1, r1, #0x18 + orr r0, r1 + strb r0, [r5, #0x1b] + ldrb r0, [r5, #0x1b] + mov r1, #1 + bic r0, r1 + ldr r1, [sp, #4] + lsl r1, r1, #0x18 + lsr r2, r1, #0x18 + mov r1, #1 + and r1, r2 + orr r0, r1 + strb r0, [r5, #0x1b] + ldr r0, [sp] + bl sub_0202CA8C + strb r0, [r5, #0x17] + ldr r0, [sp] + bl sub_0202CA90 + strb r0, [r5, #0x18] + ldr r0, _020315B4 ; =0x0000FFFF + mov r1, #0 + add r2, r5, #0 +_02031566: + add r1, r1, #1 + strh r0, [r2, #0x20] + add r2, r2, #2 + cmp r1, #0x28 + blt _02031566 + add r1, r5, #0 + add r0, r7, #0 + add r1, #0x20 + bl sub_0202ABD0 + add r0, sp, #4 + ldrb r0, [r0, #0xe] + strb r0, [r5, #0x15] + add r0, r4, #0 + bl PlayerProfile_GetTrainerGender + add r7, r0, #0 + add r0, r4, #0 + bl sub_0202903C + add r1, r0, #0 + add r0, r7, #0 + mov r2, #0 + bl sub_0205B46C + strb r0, [r5, #0x16] + mov r0, #GAME_VERSION + strb r0, [r5, #0x19] + mov r0, #2 + strb r0, [r5, #0x1a] + add r0, r6, #0 + add r1, r5, #0 + mov r2, #0x7c + bl sub_020275C4 + add r5, #0x7c + strh r0, [r5] + add sp, #0x64 + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_020315B4: .word 0x0000FFFF + thumb_func_end sub_020314C4 + + thumb_func_start sub_020315B8 +sub_020315B8: ; 0x020315B8 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #0xf + bl String_ctor + add r1, r5, #0 + mov r2, #0xf + add r4, r0, #0 + bl CopyU16ArrayToStringN + add r0, r4, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_020315B8 + + thumb_func_start sub_020315D0 +sub_020315D0: ; 0x020315D0 + ldrb r0, [r0, #0x14] + cmp r0, #0 + beq _020315DC + cmp r0, #1 + beq _020315DC + mov r0, #0 +_020315DC: + bx lr + .balign 4, 0 + thumb_func_end sub_020315D0 + + thumb_func_start sub_020315E0 +sub_020315E0: ; 0x020315E0 + ldrh r0, [r0, #0x1c] + ldr r1, _020315EC ; =0x000001EF + cmp r0, r1 + blo _020315EA + mov r0, #0 +_020315EA: + bx lr + .balign 4, 0 +_020315EC: .word 0x000001EF + thumb_func_end sub_020315E0 + + thumb_func_start sub_020315F0 +sub_020315F0: ; 0x020315F0 + push {r3, lr} + add r2, r0, #0 + ldrh r0, [r2, #0x1c] + ldr r1, _0203160C ; =0x000001EF + cmp r0, r1 + blo _02031600 + mov r0, #0 + pop {r3, pc} +_02031600: + ldrb r1, [r2, #0x1b] + lsl r1, r1, #0x18 + lsr r1, r1, #0x19 + bl sub_02070438 + pop {r3, pc} + .balign 4, 0 +_0203160C: .word 0x000001EF + thumb_func_end sub_020315F0 + + thumb_func_start sub_02031610 +sub_02031610: ; 0x02031610 + ldrb r0, [r0, #0x1b] + lsl r0, r0, #0x1f + lsr r0, r0, #0x1f + cmp r0, #1 + bls _0203161C + mov r0, #1 +_0203161C: + bx lr + .balign 4, 0 + thumb_func_end sub_02031610 + + thumb_func_start sub_02031620 +sub_02031620: ; 0x02031620 + ldrb r0, [r0, #0x17] + cmp r0, #0xea + blo _02031628 + mov r0, #0 +_02031628: + bx lr + .balign 4, 0 + thumb_func_end sub_02031620 + + thumb_func_start sub_0203162C +sub_0203162C: ; 0x0203162C + push {r4, lr} + ldrb r1, [r0, #0x17] + cmp r1, #0xea + blo _02031638 + mov r0, #0 + pop {r4, pc} +_02031638: + ldrb r4, [r0, #0x18] + add r0, r1, #0 + bl sub_02091688 + cmp r0, r4 + bhs _02031646 + mov r4, #0 +_02031646: + add r0, r4, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203162C + + thumb_func_start sub_0203164C +sub_0203164C: ; 0x0203164C + push {r4, r5, r6, lr} + sub sp, #8 + add r5, r0, #0 + ldrb r0, [r5, #0x1e] + add r4, r1, #0 + mov r6, #0 + cmp r0, #0 + bne _020316CE + ldrh r0, [r5, #0x20] + strh r0, [r4] + ldrh r0, [r5, #0x22] + strh r0, [r4, #2] + ldrh r0, [r5, #0x24] + strh r0, [r4, #4] + ldrh r0, [r5, #0x26] + strh r0, [r4, #6] + ldrh r0, [r4] + cmp r0, #5 + blo _02031676 + add r6, r6, #1 + b _020316AA +_02031676: + ldrh r0, [r4, #2] + cmp r0, #0x13 + bls _02031680 + add r6, r6, #1 + b _020316AA +_02031680: + ldrh r0, [r4, #4] + ldr r1, _020316E8 ; =0x0000FFFF + cmp r0, r1 + beq _02031694 + add r1, sp, #4 + add r2, sp, #0 + bl GetCategoryAndMsgNoByECWordIdx + cmp r0, #0 + beq _020316A8 +_02031694: + ldrh r0, [r4, #6] + ldr r1, _020316E8 ; =0x0000FFFF + cmp r0, r1 + beq _020316AA + add r1, sp, #4 + add r2, sp, #0 + bl GetCategoryAndMsgNoByECWordIdx + cmp r0, #0 + bne _020316AA +_020316A8: + add r6, r6, #1 +_020316AA: + cmp r6, #0 + ble _020316C8 + add r0, r4, #0 + mov r1, #4 + bl MailMsg_init_withBank + mov r0, #0 + strh r0, [r4, #2] + ldr r0, _020316EC ; =0x0000011F + mov r1, #0x63 + bl GetECWordIndexByPair + strh r0, [r4, #4] + ldr r0, _020316E8 ; =0x0000FFFF + strh r0, [r4, #6] +_020316C8: + add sp, #8 + mov r0, #0 + pop {r4, r5, r6, pc} +_020316CE: + mov r0, #0x28 + add r1, r2, #0 + bl String_ctor + add r5, #0x20 + add r1, r5, #0 + mov r2, #0x28 + add r4, r0, #0 + bl CopyU16ArrayToStringN + add r0, r4, #0 + add sp, #8 + pop {r4, r5, r6, pc} + .balign 4, 0 +_020316E8: .word 0x0000FFFF +_020316EC: .word 0x0000011F + thumb_func_end sub_0203164C + + thumb_func_start sub_020316F0 +sub_020316F0: ; 0x020316F0 + ldrb r0, [r0, #0x15] + cmp r0, #1 + blo _020316FA + cmp r0, #0xc + bls _020316FC +_020316FA: + mov r0, #1 +_020316FC: + bx lr + .balign 4, 0 + thumb_func_end sub_020316F0 + + thumb_func_start sub_02031700 +sub_02031700: ; 0x02031700 + ldrb r0, [r0, #0x16] + cmp r0, #0xf + bls _02031708 + mov r0, #0 +_02031708: + bx lr + .balign 4, 0 + thumb_func_end sub_02031700 + + thumb_func_start sub_0203170C +sub_0203170C: ; 0x0203170C + mov r0, #0x40 + bx lr + thumb_func_end sub_0203170C + + thumb_func_start sub_02031710 +sub_02031710: ; 0x02031710 + push {r4, lr} + add r4, r0, #0 + mov r1, #0 + mov r2, #0x40 + bl MIi_CpuFill8 + add r0, r4, #0 + mov r1, #0 + mov r2, #0x33 + bl memset + mov r0, #1 + str r0, [r4, #0x34] + mov r0, #0x1f + bl sub_0202893C + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02031710 + + thumb_func_start sub_02031734 +sub_02031734: ; 0x02031734 + push {r3, lr} + mov r1, #0x1f + bl SavArray_get + bl sub_02031710 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02031734 + + thumb_func_start sub_02031744 +sub_02031744: ; 0x02031744 + push {r3, lr} + mov r1, #0x1f + bl SavArray_get + mov r1, #0 + ldrsb r0, [r0, r1] + cmp r0, #0 + beq _02031756 + mov r1, #1 +_02031756: + add r0, r1, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02031744 + + thumb_func_start sub_0203175C +sub_0203175C: ; 0x0203175C + push {r4, lr} + add r4, r1, #0 + mov r1, #0x1f + bl SavArray_get + add r1, r4, #0 + bl strcpy + mov r0, #0x1f + bl sub_0202893C + pop {r4, pc} + thumb_func_end sub_0203175C + + thumb_func_start sub_02031774 +sub_02031774: ; 0x02031774 + ldr r3, _0203177C ; =SavArray_get + mov r1, #0x1f + bx r3 + nop +_0203177C: .word SavArray_get + thumb_func_end sub_02031774 + + thumb_func_start sub_02031780 +sub_02031780: ; 0x02031780 + push {r3, r4, r5, lr} + add r5, r1, #0 + mov r1, #0x1f + add r4, r2, #0 + bl SavArray_get + cmp r5, #3 + bhi _020317B2 + add r1, r5, r5 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0203179C: ; jump table + .short _020317A4 - _0203179C - 2 ; case 0 + .short _020317A8 - _0203179C - 2 ; case 1 + .short _020317AC - _0203179C - 2 ; case 2 + .short _020317B0 - _0203179C - 2 ; case 3 +_020317A4: + str r4, [r0, #0x34] + b _020317B2 +_020317A8: + strh r4, [r0, #0x38] + b _020317B2 +_020317AC: + strh r4, [r0, #0x3a] + b _020317B2 +_020317B0: + str r4, [r0, #0x3c] +_020317B2: + mov r0, #0x1f + bl sub_0202893C + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_02031780 + + thumb_func_start sub_020317BC +sub_020317BC: ; 0x020317BC + push {r4, lr} + add r4, r1, #0 + mov r1, #0x1f + bl SavArray_get + cmp r4, #3 + bhi _020317EE + add r1, r4, r4 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_020317D6: ; jump table + .short _020317DE - _020317D6 - 2 ; case 0 + .short _020317E2 - _020317D6 - 2 ; case 1 + .short _020317E6 - _020317D6 - 2 ; case 2 + .short _020317EA - _020317D6 - 2 ; case 3 +_020317DE: + ldr r0, [r0, #0x34] + pop {r4, pc} +_020317E2: + ldrh r0, [r0, #0x38] + pop {r4, pc} +_020317E6: + ldrh r0, [r0, #0x3a] + pop {r4, pc} +_020317EA: + ldr r0, [r0, #0x3c] + pop {r4, pc} +_020317EE: + mov r0, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_020317BC + + thumb_func_start sub_020317F4 +sub_020317F4: ; 0x020317F4 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r4, r1, #0 + bl sub_0202CA44 + add r6, r0, #0 + add r0, r5, #0 + bl Sav2_PlayerData_GetProfileAddr + add r7, r0, #0 + add r0, r5, #0 + bl sub_02031774 + str r0, [sp] + add r0, r4, #0 + mov r1, #0 + mov r2, #0x64 + bl MIi_CpuFill8 + mov r0, #GAME_VERSION + strb r0, [r4] + mov r0, #2 + strb r0, [r4, #1] + add r0, r6, #0 + bl sub_0202CA8C + strb r0, [r4, #2] + add r0, r6, #0 + bl sub_0202CA90 + strb r0, [r4, #3] + add r0, r7, #0 + bl PlayerProfile_GetTrainerID + str r0, [r4, #4] + add r0, r7, #0 + bl PlayerProfile_GetNamePtr + add r1, r0, #0 + add r0, r4, #0 + add r0, #8 + bl CopyU16StringArray + mov r0, #0 + str r0, [r4, #0x18] + add r0, r4, #0 + ldr r1, [sp] + add r0, #0x24 + bl strcpy + add r0, r5, #0 + mov r1, #0 + bl sub_020317BC + str r0, [r4, #0x5c] + mov r0, #0x1f + bl sub_0202893C + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_020317F4 + + thumb_func_start sub_0203186C +sub_0203186C: ; 0x0203186C + push {r3, r4, r5, lr} + add r5, r1, #0 + bl sub_020317F4 + bl LCRandom + mov r1, #0xfa + lsl r1, r1, #2 + bl _s32_div_f + add r0, r5, #0 + add r4, r1, #0 + add r0, #0x60 + strh r4, [r0] + ldr r0, _02031898 ; =0x0000FFFF + add r5, #0x62 + strh r0, [r5] + mov r0, #0x1f + bl sub_0202893C + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_02031898: .word 0x0000FFFF + thumb_func_end sub_0203186C + + thumb_func_start sub_0203189C +sub_0203189C: ; 0x0203189C + push {r4, r5, r6, lr} + add r5, r1, #0 + add r6, r0, #0 + mov r1, #0x1f + bl SavArray_get + add r4, r0, #0 + add r0, r6, #0 + add r1, r5, #0 + bl sub_020317F4 + add r0, r5, #0 + ldrh r1, [r4, #0x38] + add r0, #0x60 + add r5, #0x62 + strh r1, [r0] + ldrh r0, [r4, #0x3a] + strh r0, [r5] + mov r0, #0x1f + bl sub_0202893C + pop {r4, r5, r6, pc} + thumb_func_end sub_0203189C + + thumb_func_start sub_020318C8 +sub_020318C8: ; 0x020318C8 + mov r0, #8 + bx lr + thumb_func_end sub_020318C8 + + thumb_func_start sub_020318CC +sub_020318CC: ; 0x020318CC + push {r4, lr} + add r4, r0, #0 + bl sub_020318C8 + add r2, r0, #0 + mov r0, #0 + add r1, r4, #0 + bl sub_020D47EC + mov r0, #0 + mvn r0, r0 + str r0, [r4] + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_020318CC + + thumb_func_start sub_020318E8 +sub_020318E8: ; 0x020318E8 + ldr r3, _020318F0 ; =SavArray_get + mov r1, #0x20 + bx r3 + nop +_020318F0: .word SavArray_get + thumb_func_end sub_020318E8 + + thumb_func_start sub_020318F4 +sub_020318F4: ; 0x020318F4 + ldr r0, [r0] + bx lr + thumb_func_end sub_020318F4 + + thumb_func_start sub_020318F8 +sub_020318F8: ; 0x020318F8 + ldr r0, [r0, #4] + bx lr + thumb_func_end sub_020318F8 + + thumb_func_start sub_020318FC +sub_020318FC: ; 0x020318FC + str r1, [r0] + bx lr + thumb_func_end sub_020318FC + + thumb_func_start sub_02031900 +sub_02031900: ; 0x02031900 + str r1, [r0, #4] + bx lr + thumb_func_end sub_02031900 + + thumb_func_start sub_02031904 +sub_02031904: ; 0x02031904 + mov r0, #0x2e + lsl r0, r0, #6 + bx lr + .balign 4, 0 + thumb_func_end sub_02031904 + + thumb_func_start sub_0203190C +sub_0203190C: ; 0x0203190C + push {r3, r4, r5, r6, r7, lr} + mov r2, #0x2e + mov r1, #0 + lsl r2, r2, #6 + str r0, [sp] + bl MIi_CpuFill8 + mov r0, #0 + mov r7, #0xb3 + ldr r1, _02031960 ; =0x0000FFFF + ldr r6, _02031964 ; =0x00000484 + mov ip, r0 + lsl r7, r7, #2 +_02031926: + mov r0, ip + mov r2, #0x2c + mul r2, r0 + ldr r0, [sp] + mov r3, #0 + add r4, r0, r2 + mov r0, ip + mov r2, #0xa4 + mul r2, r0 + ldr r0, [sp] + add r5, r0, r2 +_0203193C: + lsl r2, r3, #3 + add r0, r4, r2 + strh r1, [r0, r7] + add r0, r5, r2 + strh r1, [r0, r6] + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 + cmp r3, #5 + blo _0203193C + mov r0, ip + add r0, r0, #1 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov ip, r0 + cmp r0, #0xa + blo _02031926 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02031960: .word 0x0000FFFF +_02031964: .word 0x00000484 + thumb_func_end sub_0203190C + + thumb_func_start sub_02031968 +sub_02031968: ; 0x02031968 + ldr r3, _02031970 ; =SavArray_get + mov r1, #0x25 + bx r3 + nop +_02031970: .word SavArray_get + thumb_func_end sub_02031968 + + thumb_func_start sub_02031974 +sub_02031974: ; 0x02031974 + bx lr + .balign 4, 0 + thumb_func_end sub_02031974 + + thumb_func_start sub_02031978 +sub_02031978: ; 0x02031978 + add r0, #0xdc + bx lr + thumb_func_end sub_02031978 + + thumb_func_start sub_0203197C +sub_0203197C: ; 0x0203197C + mov r1, #0xb3 + lsl r1, r1, #2 + add r0, r0, r1 + bx lr + thumb_func_end sub_0203197C + + thumb_func_start sub_02031984 +sub_02031984: ; 0x02031984 + ldr r1, _0203198C ; =0x00000484 + add r0, r0, r1 + bx lr + nop +_0203198C: .word 0x00000484 + thumb_func_end sub_02031984 + + thumb_func_start sub_02031990 +sub_02031990: ; 0x02031990 + ldr r1, _02031998 ; =0x00000AEC + add r0, r0, r1 + bx lr + nop +_02031998: .word 0x00000AEC + thumb_func_end sub_02031990 + + thumb_func_start sub_0203199C +sub_0203199C: ; 0x0203199C + mov r1, #0xb + lsl r1, r1, #8 + add r0, r0, r1 + bx lr + thumb_func_end sub_0203199C + + thumb_func_start sub_020319A4 +sub_020319A4: ; 0x020319A4 + bx lr + .balign 4, 0 + thumb_func_end sub_020319A4 + + thumb_func_start sub_020319A8 +sub_020319A8: ; 0x020319A8 + push {r3, lr} + cmp r1, #0 + blt _020319B2 + cmp r1, #4 + ble _020319BA +_020319B2: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} +_020319BA: + sub r2, r2, #1 + bpl _020319C6 + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} +_020319C6: + add r0, r0, r2 + add r0, #0xdc + ldrb r0, [r0] + add r2, r0, #0 + asr r2, r1 + mov r0, #1 + add r1, r2, #0 + tst r1, r0 + bne _020319DA + mov r0, #0 +_020319DA: + pop {r3, pc} + thumb_func_end sub_020319A8 + + thumb_func_start sub_020319DC +sub_020319DC: ; 0x020319DC + mov r1, #0xb3 + lsl r1, r1, #2 + add r0, r0, r1 + bx lr + thumb_func_end sub_020319DC + + thumb_func_start sub_020319E4 +sub_020319E4: ; 0x020319E4 + ldr r1, _020319EC ; =0x00000484 + add r0, r0, r1 + bx lr + nop +_020319EC: .word 0x00000484 + thumb_func_end sub_020319E4 + + thumb_func_start sub_020319F0 +sub_020319F0: ; 0x020319F0 + mov r1, #0xb + lsl r1, r1, #8 + add r0, r0, r1 + bx lr + thumb_func_end sub_020319F0 + + thumb_func_start sub_020319F8 +sub_020319F8: ; 0x020319F8 + push {r4, r5, r6, lr} + add r4, r1, #0 + sub r1, r2, #1 + bpl _02031A06 + bl GF_AssertFail + pop {r4, r5, r6, pc} +_02031A06: + add r2, r0, r1 + mov r0, #1 + mov r3, #0 + add r2, #0xdc + add r6, r0, #0 +_02031A10: + add r1, r4, #0 + asr r1, r3 + and r1, r6 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + beq _02031A2A + add r5, r0, #0 + lsl r5, r3 + lsl r5, r5, #0x18 + ldrb r1, [r2] + lsr r5, r5, #0x18 + orr r1, r5 + strb r1, [r2] +_02031A2A: + add r1, r3, #1 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + cmp r3, #5 + blo _02031A10 + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_020319F8 + + thumb_func_start sub_02031A38 +sub_02031A38: ; 0x02031A38 + ldr r2, _02031A4C ; =0x00000B74 + ldr r3, [r0, r2] + add r1, r3, r1 + str r1, [r0, r2] + ldr r3, [r0, r2] + ldr r1, _02031A50 ; =0x0001869F + cmp r3, r1 + ble _02031A4A + str r1, [r0, r2] +_02031A4A: + bx lr + .balign 4, 0 +_02031A4C: .word 0x00000B74 +_02031A50: .word 0x0001869F + thumb_func_end sub_02031A38 + + thumb_func_start sub_02031A54 +sub_02031A54: ; 0x02031A54 + ldr r2, _02031A68 ; =0x00000B74 + ldr r3, [r0, r2] + sub r1, r3, r1 + str r1, [r0, r2] + ldr r1, [r0, r2] + cmp r1, #0 + bge _02031A66 + mov r1, #0 + str r1, [r0, r2] +_02031A66: + bx lr + .balign 4, 0 +_02031A68: .word 0x00000B74 + thumb_func_end sub_02031A54 + + thumb_func_start sub_02031A6C +sub_02031A6C: ; 0x02031A6C + ldr r1, _02031A74 ; =0x00000B74 + ldr r0, [r0, r1] + bx lr + nop +_02031A74: .word 0x00000B74 + thumb_func_end sub_02031A6C + + thumb_func_start sub_02031A78 +sub_02031A78: ; 0x02031A78 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #0x1b + blt _02031A86 + bl GF_AssertFail +_02031A86: + ldr r0, _02031A94 ; =0x00000B78 + ldr r0, [r5, r0] + add r1, r0, #0 + lsr r1, r4 + mov r0, #1 + and r0, r1 + pop {r3, r4, r5, pc} + .balign 4, 0 +_02031A94: .word 0x00000B78 + thumb_func_end sub_02031A78 + + thumb_func_start sub_02031A98 +sub_02031A98: ; 0x02031A98 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #0x1b + blt _02031AA6 + bl GF_AssertFail +_02031AA6: + ldr r0, _02031AB4 ; =0x00000B78 + mov r1, #1 + ldr r2, [r5, r0] + lsl r1, r4 + orr r1, r2 + str r1, [r5, r0] + pop {r3, r4, r5, pc} + .balign 4, 0 +_02031AB4: .word 0x00000B78 + thumb_func_end sub_02031A98 + + thumb_func_start sub_02031AB8 +sub_02031AB8: ; 0x02031AB8 + ldr r2, _02031AC8 ; =0x00000B7C + ldrh r0, [r0, r2] + add r2, r0, #0 + asr r2, r1 + mov r0, #1 + and r0, r2 + bx lr + nop +_02031AC8: .word 0x00000B7C + thumb_func_end sub_02031AB8 + + thumb_func_start sub_02031ACC +sub_02031ACC: ; 0x02031ACC + push {r3, r4} + ldr r2, _02031AE0 ; =0x00000B7C + mov r3, #1 + ldrh r4, [r0, r2] + lsl r3, r1 + add r1, r4, #0 + orr r1, r3 + strh r1, [r0, r2] + pop {r3, r4} + bx lr + .balign 4, 0 +_02031AE0: .word 0x00000B7C + thumb_func_end sub_02031ACC + + thumb_func_start sub_02031AE4 +sub_02031AE4: ; 0x02031AE4 + ldr r1, _02031AEC ; =0x00000B7C + mov r2, #0 + strh r2, [r0, r1] + bx lr + .balign 4, 0 +_02031AEC: .word 0x00000B7C + thumb_func_end sub_02031AE4 + + thumb_func_start sub_02031AF0 +sub_02031AF0: ; 0x02031AF0 + mov r0, #0x28 + bx lr + thumb_func_end sub_02031AF0 + + thumb_func_start sub_02031AF4 +sub_02031AF4: ; 0x02031AF4 + ldr r3, _02031AFC ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #0x28 + bx r3 + .balign 4, 0 +_02031AFC: .word MIi_CpuFill8 + thumb_func_end sub_02031AF4 + + thumb_func_start sub_02031B00 +sub_02031B00: ; 0x02031B00 + ldr r3, _02031B08 ; =SavArray_get + mov r1, #0x1d + bx r3 + nop +_02031B08: .word SavArray_get + thumb_func_end sub_02031B00 + + thumb_func_start sub_02031B0C +sub_02031B0C: ; 0x02031B0C + mov r0, #0x80 + bx lr + thumb_func_end sub_02031B0C + + thumb_func_start sub_02031B10 +sub_02031B10: ; 0x02031B10 + mov r0, #0x20 + bx lr + thumb_func_end sub_02031B10 + + thumb_func_start sub_02031B14 +sub_02031B14: ; 0x02031B14 + ldr r3, _02031B1C ; =SavArray_get + mov r1, #0x26 + bx r3 + nop +_02031B1C: .word SavArray_get + thumb_func_end sub_02031B14 + + thumb_func_start sub_02031B20 +sub_02031B20: ; 0x02031B20 + push {r4, lr} + add r4, r0, #0 + mov r1, #0 + mov r2, #0x80 + bl MIi_CpuFill8 + add r0, r4, #0 + add r0, #0xc + bl sub_02031B5C + add r0, r4, #0 + bl sub_02031B3C + pop {r4, pc} + thumb_func_end sub_02031B20 + + thumb_func_start sub_02031B3C +sub_02031B3C: ; 0x02031B3C + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r4, #0 + add r5, #0x20 +_02031B44: + add r0, r5, #0 + bl sub_020325CC + add r4, r4, #1 + add r5, #0x20 + cmp r4, #3 + blt _02031B44 + pop {r3, r4, r5, pc} + thumb_func_end sub_02031B3C + + thumb_func_start sub_02031B54 +sub_02031B54: ; 0x02031B54 + ldr r3, _02031B58 ; =sub_02031B20 + bx r3 + .balign 4, 0 +_02031B58: .word sub_02031B20 + thumb_func_end sub_02031B54 + + thumb_func_start sub_02031B5C +sub_02031B5C: ; 0x02031B5C + ldr r3, _02031B64 ; =MIi_CpuFill8 + mov r1, #0 + mov r2, #8 + bx r3 + .balign 4, 0 +_02031B64: .word MIi_CpuFill8 + thumb_func_end sub_02031B5C + + thumb_func_start sub_02031B68 +sub_02031B68: ; 0x02031B68 + push {r3, lr} + cmp r1, #7 + blt _02031B76 + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} +_02031B76: + ldrb r3, [r0, r1] + add r2, r2, r3 + cmp r2, #0x63 + ble _02031B82 + mov r2, #0x63 + b _02031B82 +_02031B82: + strb r2, [r0, r1] + ldrb r0, [r0, r1] + pop {r3, pc} + thumb_func_end sub_02031B68 + + thumb_func_start sub_02031B88 +sub_02031B88: ; 0x02031B88 + push {r3, lr} + cmp r1, #7 + blt _02031B96 + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} +_02031B96: + ldrb r3, [r0, r1] + cmp r3, r2 + blo _02031BA0 + sub r2, r3, r2 + strb r2, [r0, r1] +_02031BA0: + ldrb r0, [r0, r1] + pop {r3, pc} + thumb_func_end sub_02031B88 + + thumb_func_start sub_02031BA4 +sub_02031BA4: ; 0x02031BA4 + push {r3, lr} + cmp r1, #7 + blt _02031BB2 + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} +_02031BB2: + ldrb r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02031BA4 + + thumb_func_start sub_02031BB8 +sub_02031BB8: ; 0x02031BB8 + push {r3, lr} + ldrb r3, [r0, r1] + cmp r3, r2 + bhs _02031BC6 + bl GF_AssertFail + pop {r3, pc} +_02031BC6: + strb r1, [r0, #8] + strb r2, [r0, #7] + bl sub_02031B88 + pop {r3, pc} + thumb_func_end sub_02031BB8 + + thumb_func_start sub_02031BD0 +sub_02031BD0: ; 0x02031BD0 + ldrb r0, [r0, #7] + bx lr + thumb_func_end sub_02031BD0 + + thumb_func_start sub_02031BD4 +sub_02031BD4: ; 0x02031BD4 + ldrb r0, [r0, #8] + cmp r0, #7 + blo _02031BDE + mov r0, #4 + bx lr +_02031BDE: + lsl r1, r0, #1 + ldr r0, _02031BE8 ; =0x020F68D0 + ldrh r0, [r0, r1] + bx lr + nop +_02031BE8: .word 0x020F68D0 + thumb_func_end sub_02031BD4 + + thumb_func_start sub_02031BEC +sub_02031BEC: ; 0x02031BEC + ldr r3, [r0, #0x1c] + ldr r2, _02031BFC ; =0x3FFFFFFF + lsl r1, r1, #0x1e + and r2, r3 + orr r1, r2 + str r1, [r0, #0x1c] + bx lr + nop +_02031BFC: .word 0x3FFFFFFF + thumb_func_end sub_02031BEC + + thumb_func_start sub_02031C00 +sub_02031C00: ; 0x02031C00 + ldr r0, [r0, #0x1c] + lsr r0, r0, #0x1e + bx lr + .balign 4, 0 + thumb_func_end sub_02031C00 + + thumb_func_start sub_02031C08 +sub_02031C08: ; 0x02031C08 + push {r3, r4} + ldrh r4, [r0, #0xa] + mov r3, #0 + add r2, r3, #0 + mov r1, #7 +_02031C12: + add r0, r4, #0 + tst r0, r1 + beq _02031C1E + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 +_02031C1E: + lsl r0, r4, #0xd + add r2, r2, #1 + lsr r4, r0, #0x10 + cmp r2, #5 + blt _02031C12 + add r0, r3, #0 + pop {r3, r4} + bx lr + .balign 4, 0 + thumb_func_end sub_02031C08 + + thumb_func_start sub_02031C30 +sub_02031C30: ; 0x02031C30 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + ldrh r6, [r5, #0xa] + cmp r4, #7 + blt _02031C44 + bl GF_AssertFail + mov r0, #0 + pop {r4, r5, r6, pc} +_02031C44: + mov r3, #0 + mov r1, #7 +_02031C48: + add r0, r6, #0 + tst r0, r1 + beq _02031C54 + lsl r0, r6, #0xd + lsr r6, r0, #0x10 + b _02031C96 +_02031C54: + add r6, r4, #1 + mov r0, #7 + and r0, r6 + lsl r6, r3, #1 + add r3, r3, r6 + lsl r0, r3 + lsl r0, r0, #0x10 + ldrh r1, [r5, #0xa] + lsr r0, r0, #0x10 + orr r0, r1 + strh r0, [r5, #0xa] + mov r0, #2 + ldrh r1, [r5, #0xa] + lsl r0, r0, #0xe + orr r0, r1 + strh r0, [r5, #0xa] + str r2, [r5, #0x14] + ldrb r0, [r5, #9] + cmp r0, #0 + bne _02031C7E + str r2, [r5, #0x18] +_02031C7E: + mov r0, #3 + ldr r1, [r5, #0x1c] + lsl r0, r0, #0x1e + and r0, r1 + str r0, [r5, #0x1c] + add r0, r5, #0 + add r1, r4, #0 + mov r2, #1 + bl sub_02031B88 + mov r0, #1 + pop {r4, r5, r6, pc} +_02031C96: + add r3, r3, #1 + cmp r3, #5 + blt _02031C48 + mov r0, #0 + pop {r4, r5, r6, pc} + thumb_func_end sub_02031C30 + + thumb_func_start sub_02031CA0 +sub_02031CA0: ; 0x02031CA0 + push {r4, lr} + add r4, r0, #0 + bl sub_02031C08 + cmp r0, #0 + bne _02031CB0 + mov r0, #0 + pop {r4, pc} +_02031CB0: + ldr r0, [r4, #0x1c] + lsl r0, r0, #2 + lsr r0, r0, #2 + cmp r0, #0x32 + bhs _02031CBE + mov r0, #1 + pop {r4, pc} +_02031CBE: + cmp r0, #0x50 + bhs _02031CC6 + mov r0, #2 + pop {r4, pc} +_02031CC6: + mov r0, #3 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02031CA0 + + thumb_func_start sub_02031CCC +sub_02031CCC: ; 0x02031CCC + mov r2, #0xa + mul r2, r1 + ldrb r1, [r0, #9] + cmp r1, #0 + beq _02031CE6 + ldrb r1, [r0, #0xe] + add r1, r1, r2 + cmp r1, #0xff + ble _02031CE4 + mov r1, #0xff + strb r1, [r0, #0xe] + bx lr +_02031CE4: + strb r1, [r0, #0xe] +_02031CE6: + bx lr + thumb_func_end sub_02031CCC + + thumb_func_start sub_02031CE8 +sub_02031CE8: ; 0x02031CE8 + ldrb r0, [r0, #9] + bx lr + thumb_func_end sub_02031CE8 + + thumb_func_start sub_02031CEC +sub_02031CEC: ; 0x02031CEC + push {r3, r4, r5, lr} + add r5, r2, #0 + cmp r1, #9 + blt _02031CF6 + mov r1, #0 +_02031CF6: + cmp r1, #4 + bgt _02031D12 + ldr r0, _02031D68 ; =0x020F6902 + lsl r2, r1, #3 + add r1, r0, r2 + ldrh r0, [r0, r2] + strh r0, [r5] + ldrh r0, [r1, #2] + strh r0, [r5, #2] + ldrh r0, [r1, #4] + strh r0, [r5, #4] + ldrh r0, [r1, #6] + strh r0, [r5, #6] + b _02031D64 +_02031D12: + cmp r1, #7 + bgt _02031D44 + sub r1, r1, #5 + add r0, #0x38 + lsl r1, r1, #5 + add r4, r0, r1 + add r0, r4, #0 + bl sub_02031D80 + cmp r0, #0 + bne _02031D32 + add r0, r5, #0 + bl sub_02031B5C + mov r0, #0 + pop {r3, r4, r5, pc} +_02031D32: + ldrh r0, [r4] + strh r0, [r5] + ldrh r0, [r4, #2] + strh r0, [r5, #2] + ldrh r0, [r4, #4] + strh r0, [r5, #4] + ldrh r0, [r4, #6] + strh r0, [r5, #6] + b _02031D64 +_02031D44: + ldrb r1, [r0, #9] + cmp r1, #0 + bne _02031D54 + add r0, r5, #0 + bl sub_02031B5C + mov r0, #0 + pop {r3, r4, r5, pc} +_02031D54: + ldrh r1, [r0, #0xc] + strh r1, [r5] + ldrh r1, [r0, #0xe] + strh r1, [r5, #2] + ldrh r1, [r0, #0x10] + strh r1, [r5, #4] + ldrh r0, [r0, #0x12] + strh r0, [r5, #6] +_02031D64: + mov r0, #1 + pop {r3, r4, r5, pc} + .balign 4, 0 +_02031D68: .word 0x020F6902 + thumb_func_end sub_02031CEC + + thumb_func_start sub_02031D6C +sub_02031D6C: ; 0x02031D6C + push {r3, lr} + bl sub_02031D80 + cmp r0, #0 + beq _02031D7A + mov r0, #1 + pop {r3, pc} +_02031D7A: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02031D6C + + thumb_func_start sub_02031D80 +sub_02031D80: ; 0x02031D80 + mov r3, #0 + add r2, r3, #0 +_02031D84: + add r1, r0, r2 + ldrb r1, [r1, #3] + add r2, r2, #1 + add r1, r3, r1 + lsl r1, r1, #0x10 + lsr r3, r1, #0x10 + cmp r2, #5 + blt _02031D84 + cmp r3, #0x64 + bls _02031D9A + mov r3, #0x64 +_02031D9A: + lsl r0, r3, #0x18 + lsr r0, r0, #0x18 + bx lr + thumb_func_end sub_02031D80 + + thumb_func_start sub_02031DA0 +sub_02031DA0: ; 0x02031DA0 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + add r6, r1, #0 + add r4, r0, #0 + add r0, r6, #0 + mov r1, #0 + mov r2, #0xe + bl MIi_CpuFill8 + add r0, sp, #4 + add r0, #2 + mov r1, #0 + mov r2, #0xa + bl MIi_CpuFill8 + mov r0, #0 + add r1, sp, #4 + str r0, [sp] + add r1, #2 +_02031DC6: + add r2, r4, r0 + ldrb r2, [r2, #3] + strb r0, [r1] + strb r2, [r1, #1] + cmp r2, #0 + beq _02031DDC + ldr r2, [sp] + add r2, r2, #1 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + str r2, [sp] +_02031DDC: + add r0, r0, #1 + add r1, r1, #2 + cmp r0, #5 + blt _02031DC6 + ldr r0, [sp] + cmp r0, #0 + beq _02031E3C + add r0, sp, #4 + add r0, #2 + mov r7, #0 + mov ip, r0 +_02031DF2: + add r5, r7, #1 + cmp r5, #5 + bge _02031E34 + lsl r2, r5, #1 + mov r1, ip + add r1, r1, r2 + add r2, sp, #4 +_02031E00: + ldrb r4, [r1, #1] + ldrb r3, [r0, #1] + cmp r3, r4 + bhi _02031E2C + cmp r3, r4 + bne _02031E14 + ldrb r4, [r0] + ldrb r3, [r1] + cmp r4, r3 + blo _02031E2C +_02031E14: + ldrb r3, [r0] + strb r3, [r2] + ldrb r3, [r0, #1] + strb r3, [r2, #1] + ldrb r3, [r1] + strb r3, [r0] + ldrb r3, [r1, #1] + strb r3, [r0, #1] + ldrb r3, [r2] + strb r3, [r1] + ldrb r3, [r2, #1] + strb r3, [r1, #1] +_02031E2C: + add r5, r5, #1 + add r1, r1, #2 + cmp r5, #5 + blt _02031E00 +_02031E34: + add r7, r7, #1 + add r0, r0, #2 + cmp r7, #5 + blt _02031DF2 +_02031E3C: + add r0, sp, #4 + ldrb r5, [r0, #0xb] + add r3, sp, #4 + add r0, r6, #0 + mov r4, #0 + add r3, #2 + add r0, #0xb +_02031E4A: + ldrb r2, [r3] + add r1, r6, r4 + strb r2, [r1, #6] + ldrb r1, [r3, #1] + cmp r5, r1 + bne _02031E5C + ldrb r1, [r0] + add r1, r1, #1 + strb r1, [r0] +_02031E5C: + add r4, r4, #1 + add r3, r3, #2 + cmp r4, #5 + blt _02031E4A + ldr r0, [sp] + strb r0, [r6, #0xc] + ldr r0, [sp] + cmp r0, #5 + bls _02031E70 + b _02031FDC +_02031E70: + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_02031E7C: ; jump table + .short _02031E88 - _02031E7C - 2 ; case 0 + .short _02031E98 - _02031E7C - 2 ; case 1 + .short _02031EB2 - _02031E7C - 2 ; case 2 + .short _02031ED6 - _02031E7C - 2 ; case 3 + .short _02031EFA - _02031E7C - 2 ; case 4 + .short _02031EFA - _02031E7C - 2 ; case 5 +_02031E88: + ldrh r1, [r6] + mov r0, #0xf + add sp, #0x10 + bic r1, r0 + mov r0, #6 + orr r0, r1 + strh r0, [r6] + pop {r3, r4, r5, r6, r7, pc} +_02031E98: + add r1, sp, #4 + add r0, r6, #0 + add r1, #2 + mov r2, #0 + bl sub_02032588 + ldrh r1, [r6, #2] + mov r0, #0xf + bic r1, r0 + mov r0, #6 + orr r0, r1 + strh r0, [r6, #2] + b _02031FDC +_02031EB2: + add r1, sp, #4 + add r0, r6, #0 + add r1, #2 + mov r2, #0 + bl sub_02032588 + add r0, r6, #2 + add r1, sp, #8 + mov r2, #1 + bl sub_02032588 + ldrh r1, [r6, #4] + mov r0, #0xf + bic r1, r0 + mov r0, #6 + orr r0, r1 + strh r0, [r6, #4] + b _02031FDC +_02031ED6: + add r1, sp, #4 + add r0, r6, #0 + add r1, #2 + mov r2, #0 + bl sub_02032588 + add r0, r6, #2 + add r1, sp, #8 + mov r2, #1 + bl sub_02032588 + add r1, sp, #8 + add r0, r6, #4 + add r1, #2 + mov r2, #2 + bl sub_02032588 + b _02031FDC +_02031EFA: + add r0, sp, #4 + ldrb r2, [r0, #3] + ldrb r1, [r0, #9] + sub r1, r2, r1 + cmp r1, #0xc + bgt _02031F88 + ldrh r3, [r6] + mov r2, #0xf + mov r1, #5 + bic r3, r2 + orr r1, r3 + strh r1, [r6] + ldrb r3, [r0, #3] + ldrh r1, [r6] + ldr r4, _02031FE4 ; =0xFFFF00FF + lsl r3, r3, #0x18 + and r1, r4 + lsr r3, r3, #0x10 + orr r1, r3 + strh r1, [r6] + ldrh r1, [r6, #2] + mov r3, #6 + bic r1, r2 + orr r1, r3 + strh r1, [r6, #2] + ldrb r5, [r0, #5] + ldrh r1, [r6, #2] + lsl r5, r5, #0x18 + and r1, r4 + lsr r5, r5, #0x10 + orr r1, r5 + strh r1, [r6, #2] + ldrh r1, [r6, #4] + bic r1, r2 + orr r1, r3 + strh r1, [r6, #4] + ldrh r1, [r6, #4] + add r2, r1, #0 + ldrb r1, [r0, #7] + and r2, r4 + lsl r1, r1, #0x18 + lsr r1, r1, #0x10 + orr r1, r2 + strh r1, [r6, #4] + mov r1, #1 + strb r1, [r6, #0xc] + ldrb r0, [r0, #3] + cmp r0, #0x14 + bls _02031F6A + ldrh r1, [r6] + mov r0, #0xf0 + bic r1, r0 + mov r0, #0x30 + orr r0, r1 + strh r0, [r6] + b _02031FDC +_02031F6A: + cmp r0, #7 + ldrh r1, [r6] + bls _02031F7C + mov r0, #0xf0 + bic r1, r0 + mov r0, #0x20 + orr r0, r1 + strh r0, [r6] + b _02031FDC +_02031F7C: + mov r0, #0xf0 + bic r1, r0 + mov r0, #0x10 + orr r0, r1 + strh r0, [r6] + b _02031FDC +_02031F88: + add r1, sp, #4 + add r0, r6, #0 + add r1, #2 + mov r2, #0 + bl sub_02032588 + add r0, r6, #2 + add r1, sp, #8 + mov r2, #1 + bl sub_02032588 + ldr r0, [sp] + cmp r0, #4 + bne _02031FB2 + add r1, sp, #0xc + add r0, r6, #4 + add r1, #2 + mov r2, #2 + bl sub_02032588 + b _02031FDC +_02031FB2: + ldrh r1, [r6, #4] + mov r0, #0xf + bic r1, r0 + mov r0, #5 + orr r0, r1 + strh r0, [r6, #4] + ldrh r1, [r6, #4] + mov r0, #0xf0 + bic r1, r0 + mov r0, #0x10 + orr r0, r1 + strh r0, [r6, #4] + ldrh r1, [r6, #4] + ldr r0, _02031FE4 ; =0xFFFF00FF + and r1, r0 + add r0, sp, #4 + ldrb r0, [r0, #7] + lsl r0, r0, #0x18 + lsr r0, r0, #0x10 + orr r0, r1 + strh r0, [r6, #4] +_02031FDC: + ldr r0, [sp] + strb r0, [r6, #0xc] + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02031FE4: .word 0xFFFF00FF + thumb_func_end sub_02031DA0 + + thumb_func_start sub_02031FE8 +sub_02031FE8: ; 0x02031FE8 + push {r3, lr} + sub sp, #0x10 + add r1, sp, #0 + bl sub_02031DA0 + add r0, sp, #0 + ldrh r0, [r0] + lsl r0, r0, #0x1c + lsr r0, r0, #0x1c + cmp r0, #5 + blo _02032000 + mov r0, #5 +_02032000: + add sp, #0x10 + pop {r3, pc} + thumb_func_end sub_02031FE8 + + thumb_func_start sub_02032004 +sub_02032004: ; 0x02032004 + push {r3, lr} + sub sp, #0x10 + add r1, sp, #0 + bl sub_02031DA0 + add r0, sp, #0 + ldrb r1, [r0, #0xc] + cmp r1, #0 + bne _0203201C + add sp, #0x10 + mov r0, #0 + pop {r3, pc} +_0203201C: + ldrb r0, [r0, #6] + add r0, r0, #1 + add sp, #0x10 + pop {r3, pc} + thumb_func_end sub_02032004 + + thumb_func_start sub_02032024 +sub_02032024: ; 0x02032024 + push {r4, lr} + add r4, r0, #0 + ldrb r0, [r4, #9] + cmp r0, #0 + bne _02032032 + mov r0, #0 + pop {r4, pc} +_02032032: + sub r0, r0, #1 + strb r0, [r4, #9] + ldrb r0, [r4, #9] + cmp r0, #0 + bne _02032054 + add r0, r4, #0 + add r0, #0xc + bl sub_02031B5C + mov r0, #0 + str r0, [r4, #0x18] + str r0, [r4, #0x14] + mov r0, #3 + ldr r1, [r4, #0x1c] + lsl r0, r0, #0x1e + and r0, r1 + str r0, [r4, #0x1c] +_02032054: + ldrb r0, [r4, #9] + pop {r4, pc} + thumb_func_end sub_02032024 + + thumb_func_start sub_02032058 +sub_02032058: ; 0x02032058 + push {r4, r5, r6, lr} + add r5, r0, #0 + ldrh r0, [r5, #0xa] + add r4, r1, #0 + lsl r0, r0, #0x10 + lsr r0, r0, #0x1f + bne _0203206C + ldrb r0, [r5, #9] + cmp r0, #0 + beq _020320D8 +_0203206C: + ldr r0, [r5, #0x18] + sub r6, r4, r0 + cmp r6, #0x64 + blo _02032094 + add r0, r6, #0 + mov r1, #0x64 + bl _u32_div_f + add r1, r0, #0 + lsl r1, r1, #0x18 + add r0, r5, #0 + lsr r1, r1, #0x18 + bl sub_02032340 + add r0, r6, #0 + mov r1, #0x64 + bl _u32_div_f + sub r0, r4, r1 + str r0, [r5, #0x18] +_02032094: + ldrh r0, [r5, #0xa] + lsl r0, r0, #0x10 + lsr r0, r0, #0x1f + beq _020320D8 + ldr r1, [r5, #0x1c] + mov r0, #3 + lsl r0, r0, #0x1e + add r2, r1, #0 + and r2, r0 + ldr r0, [r5, #0x14] + sub r1, r4, r0 + ldr r0, _020320DC ; =0x3FFFFFFF + and r0, r1 + orr r0, r2 + str r0, [r5, #0x1c] + lsl r0, r0, #2 + lsr r0, r0, #2 + cmp r0, #0x64 + blo _020320D8 + ldrb r0, [r5, #9] + cmp r0, #0 + beq _020320CA + add r0, r5, #0 + mov r1, #3 + bl sub_02031BEC + b _020320D2 +_020320CA: + add r0, r5, #0 + mov r1, #2 + bl sub_02031BEC +_020320D2: + add r0, r5, #0 + bl sub_02032354 +_020320D8: + pop {r4, r5, r6, pc} + nop +_020320DC: .word 0x3FFFFFFF + thumb_func_end sub_02032058 + + thumb_func_start sub_020320E0 +sub_020320E0: ; 0x020320E0 + push {r3, r4, r5, r6, r7, lr} + add r7, r0, #0 + add r5, r1, #0 + add r0, r3, #0 + mov r1, #0x20 + add r6, r2, #0 + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #0x20 + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl PlayerProfile_GetTrainerID + str r0, [r4] + add r0, r5, #0 + bl PlayerProfile_GetTrainerGender + strb r0, [r4, #4] + add r0, r5, #0 + bl sub_02029088 + strb r0, [r4, #5] + add r0, r5, #0 + bl sub_0202907C + strb r0, [r4, #6] + add r0, r4, #0 + add r0, #8 + mov r1, #8 + bl StringFillEOS + add r0, r5, #0 + bl PlayerProfile_GetNamePtr + add r1, r0, #0 + add r0, r4, #0 + add r0, #8 + mov r2, #7 + bl CopyU16StringArrayN + add r2, r4, #0 + add r0, r7, #0 + mov r1, #8 + add r2, #0x18 + bl sub_02031CEC + ldr r0, _02032154 ; =0x0000FFFF + cmp r6, r0 + bls _0203214C + strh r0, [r4, #0x18] + b _0203214E +_0203214C: + strh r6, [r4, #0x18] +_0203214E: + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_02032154: .word 0x0000FFFF + thumb_func_end sub_020320E0 + + thumb_func_start sub_02032158 +sub_02032158: ; 0x02032158 + push {r3, lr} + ldr r3, [r0] + ldr r2, [r1] + cmp r3, r2 + beq _02032166 + mov r0, #0 + pop {r3, pc} +_02032166: + ldrb r3, [r0, #4] + ldrb r2, [r1, #4] + cmp r3, r2 + beq _02032172 + mov r0, #0 + pop {r3, pc} +_02032172: + ldrb r3, [r0, #6] + ldrb r2, [r1, #6] + cmp r3, r2 + beq _0203217E + mov r0, #0 + pop {r3, pc} +_0203217E: + ldrb r3, [r0, #5] + ldrb r2, [r1, #5] + cmp r3, r2 + beq _0203218A + mov r0, #0 + pop {r3, pc} +_0203218A: + add r0, #8 + add r1, #8 + bl StringNotEqual + cmp r0, #0 + bne _0203219A + mov r0, #1 + pop {r3, pc} +_0203219A: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02032158 + + thumb_func_start sub_020321A0 +sub_020321A0: ; 0x020321A0 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x18 + mov r4, #0 + add r5, r0, #0 + str r0, [sp] + add r7, r1, #0 + str r2, [sp, #4] + str r3, [sp, #8] + str r4, [sp, #0x10] + add r5, #0x38 +_020321B4: + add r0, r5, #0 + bl sub_02031D6C + cmp r0, #0 + beq _020321CC + ldr r0, [sp, #0x10] + add r4, r4, #1 + add r0, r0, #1 + add r5, #0x20 + str r0, [sp, #0x10] + cmp r4, #3 + blt _020321B4 +_020321CC: + mov r0, #0 + str r0, [sp, #0xc] + ldr r0, [sp, #4] + cmp r0, #0 + ble _020322A6 +_020321D6: + ldr r1, [sp, #0xc] + ldr r0, [sp, #8] + cmp r1, r0 + beq _02032298 + add r0, r7, #0 + add r0, #0x18 + bl sub_02031D6C + cmp r0, #0 + beq _02032298 + mov r4, #0 + str r4, [sp, #0x14] + ldr r5, [sp] + ldr r6, [sp, #0x14] + add r5, #0x20 +_020321F4: + add r0, r7, #0 + add r1, r5, #0 + bl sub_02032158 + cmp r0, #0 + beq _0203220A + lsl r0, r6, #0x18 + lsr r4, r0, #0x18 + mov r0, #1 + str r0, [sp, #0x14] + b _02032212 +_0203220A: + add r6, r6, #1 + add r5, #0x20 + cmp r6, #3 + blt _020321F4 +_02032212: + ldr r0, [sp, #0x10] + cmp r0, #3 + blt _02032222 + mov r0, #2 + mov ip, r0 + mov r0, #1 + str r0, [sp, #0x14] + b _02032242 +_02032222: + ldr r0, [sp, #0x14] + cmp r0, #0 + beq _02032234 + ldr r0, [sp, #0x10] + sub r0, r0, #1 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov ip, r0 + b _02032242 +_02032234: + ldr r0, [sp, #0x10] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov ip, r0 + ldr r0, [sp, #0x10] + add r0, r0, #1 + str r0, [sp, #0x10] +_02032242: + ldr r0, [sp, #0x14] + cmp r0, #0 + beq _0203227C + mov r0, ip + cmp r4, r0 + bhs _0203227C + ldr r0, [sp, #0x10] + sub r6, r0, #1 + cmp r4, r6 + bge _0203227C + ldr r0, [sp] + lsl r1, r4, #5 + add r5, r0, r1 +_0203225C: + add r3, r5, #0 + add r2, r5, #0 + add r3, #0x40 + add r2, #0x20 + add r5, r2, #0 + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + add r4, r4, #1 + stmia r2!, {r0, r1} + cmp r4, r6 + blt _0203225C +_0203227C: + mov r0, ip + lsl r1, r0, #5 + ldr r0, [sp] + add r3, r7, #0 + add r2, r0, r1 + add r2, #0x20 + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} +_02032298: + ldr r0, [sp, #0xc] + add r7, #0x20 + add r1, r0, #1 + ldr r0, [sp, #4] + str r1, [sp, #0xc] + cmp r1, r0 + blt _020321D6 +_020322A6: + add sp, #0x18 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_020321A0 + + thumb_func_start sub_020322AC +sub_020322AC: ; 0x020322AC + push {r3, r4, r5, r6, r7, lr} + add r7, r2, #0 + add r4, r0, #0 + add r5, r1, #0 + mov r0, #9 + add r1, r7, #0 + bl String_ctor + add r6, r0, #0 + cmp r5, #5 + bge _020322E2 + mov r0, #1 + mov r1, #0x1b + mov r2, #0x15 + add r3, r7, #0 + bl NewMsgDataFromNarc + add r5, #0xe + add r4, r0, #0 + add r1, r5, #0 + add r2, r6, #0 + bl ReadMsgDataIntoString + add r0, r4, #0 + bl DestroyMsgData + b _02032304 +_020322E2: + cmp r5, #8 + bge _02032304 + sub r0, r5, #5 + lsl r0, r0, #0x18 + lsr r5, r0, #0x13 + add r0, r4, #0 + add r0, #0x38 + add r0, r0, r5 + bl sub_02031D6C + cmp r0, #0 + beq _02032304 + add r4, #0x28 + add r0, r6, #0 + add r1, r4, r5 + bl CopyU16ArrayToString +_02032304: + add r0, r6, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_020322AC + + thumb_func_start sub_02032308 +sub_02032308: ; 0x02032308 + push {r3, r4, r5, lr} + sub sp, #8 + add r4, r2, #0 + add r2, sp, #0 + bl sub_02031CEC + mov r0, #1 + mov r1, #0x1b + mov r2, #0x15 + add r3, r4, #0 + bl NewMsgDataFromNarc + add r5, r0, #0 + add r0, sp, #0 + bl sub_02032004 + add r1, r0, #0 + add r0, r5, #0 + add r1, #0x13 + bl NewString_ReadMsgData + add r4, r0, #0 + add r0, r5, #0 + bl DestroyMsgData + add r0, r4, #0 + add sp, #8 + pop {r3, r4, r5, pc} + thumb_func_end sub_02032308 + + thumb_func_start sub_02032340 +sub_02032340: ; 0x02032340 + ldrb r2, [r0, #0xe] + add r1, r2, r1 + cmp r1, #0xff + ble _0203234E + mov r1, #0xff + strb r1, [r0, #0xe] + bx lr +_0203234E: + strb r1, [r0, #0xe] + bx lr + .balign 4, 0 + thumb_func_end sub_02032340 + + thumb_func_start sub_02032354 +sub_02032354: ; 0x02032354 + push {r4, r5, r6, r7, lr} + sub sp, #0x3c + str r0, [sp] + ldrh r0, [r0, #0xa] + add r1, sp, #0x34 + add r1, #1 + str r0, [sp, #0x14] + ldr r0, [sp] + add r0, #0xc + bl sub_020324F4 + mov r0, #0 + str r0, [sp, #0x28] +_0203236E: + mov r0, #0 + str r0, [sp, #0x10] + ldr r0, [sp, #0x14] + mov r1, #7 + and r0, r1 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + bne _02032380 + b _020324CA +_02032380: + ldr r0, [sp, #0x10] + str r0, [sp, #0x24] + ldr r0, [sp, #0x10] + str r0, [sp, #0x18] + ldr r0, [sp, #0x10] + str r0, [sp, #0x1c] + sub r0, r1, #1 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + str r0, [sp, #0x20] + ldr r0, [sp, #0x10] + add r1, sp, #0x30 +_02032398: + strb r0, [r1] + add r0, r0, #1 + add r1, r1, #1 + cmp r0, #5 + blt _02032398 + mov r0, #0 + add r2, sp, #0x30 + add r7, sp, #0x34 + str r0, [sp, #4] + add r7, #1 + mov ip, r2 +_020323AE: + ldr r0, [sp, #4] + add r1, r0, #1 + cmp r1, #5 + bge _020323DE + mov r0, ip + add r3, r0, r1 +_020323BA: + mov r0, #0 + mov r5, #0 + ldrsb r4, [r3, r0] + ldrsb r5, [r2, r5] + ldrsb r0, [r7, r4] + ldrsb r6, [r7, r5] + cmp r6, r0 + bgt _020323D6 + cmp r6, r0 + bne _020323D2 + cmp r5, r4 + blt _020323D6 +_020323D2: + strb r4, [r2] + strb r5, [r3] +_020323D6: + add r1, r1, #1 + add r3, r3, #1 + cmp r1, #5 + blt _020323BA +_020323DE: + ldr r0, [sp, #4] + add r2, r2, #1 + add r0, r0, #1 + str r0, [sp, #4] + cmp r0, #2 + blt _020323AE + ldr r0, [sp, #0x20] + ldr r2, _020324F0 ; =0x020F68DE + lsl r1, r0, #2 + add r0, r0, r1 + add r1, r2, r0 + add r2, sp, #0x34 + mov r4, #0 + add r3, sp, #0x30 + ldrsb r0, [r3, r4] + add r2, #1 + str r0, [sp, #8] + add r0, r2, r0 + str r0, [sp, #0xc] + mov r0, #1 + ldrsb r7, [r3, r0] + add r0, r2, r7 + str r0, [sp, #0x2c] +_0203240C: + mov r0, #0 + ldrsb r5, [r1, r0] + ldrsb r3, [r2, r0] + add r0, r3, r5 + lsl r0, r0, #0x18 + asr r0, r0, #0x18 + cmp r5, #0 + ble _0203243E + ldr r6, [sp, #0xc] + mov r5, #0 + ldrsb r5, [r6, r5] + cmp r5, #0 + beq _0203243E + ldr r5, [sp, #8] + cmp r5, r4 + beq _0203243E + ldr r5, [sp, #0x2c] + mov r6, #0 + ldrsb r5, [r5, r6] + cmp r5, #0 + beq _0203243E + cmp r7, r4 + beq _0203243E + mov r5, #1 + str r5, [sp, #0x10] +_0203243E: + cmp r0, #0x3f + blt _02032446 + mov r0, #0x3f + b _0203244C +_02032446: + cmp r0, #0 + bge _0203244C + mov r0, #0 +_0203244C: + ldr r5, [sp, #0x20] + cmp r5, #6 + beq _02032456 + cmp r0, r3 + bgt _02032468 +_02032456: + ldr r3, [sp, #0x1c] + cmp r0, r3 + ble _02032468 + lsl r3, r0, #0x18 + lsr r3, r3, #0x18 + str r3, [sp, #0x1c] + lsl r3, r4, #0x18 + lsr r3, r3, #0x18 + str r3, [sp, #0x18] +_02032468: + strb r0, [r2] + ldr r3, [sp, #0x24] + add r4, r4, #1 + add r0, r3, r0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + str r0, [sp, #0x24] + add r1, r1, #1 + add r2, r2, #1 + cmp r4, #5 + blt _0203240C + ldr r0, [sp, #0x14] + lsl r0, r0, #0xd + lsr r0, r0, #0x10 + str r0, [sp, #0x14] + ldr r0, [sp, #0x10] + cmp r0, #0 + beq _0203249E + ldr r0, [sp] + ldrb r1, [r0, #0xe] + cmp r1, #0xa + bhs _0203249A + mov r1, #0 + strb r1, [r0, #0xe] + b _0203249E +_0203249A: + sub r1, #0xa + strb r1, [r0, #0xe] +_0203249E: + ldr r0, [sp, #0x20] + cmp r0, #5 + beq _020324BE + ldr r0, [sp, #0x24] + cmp r0, #0x64 + bls _020324BE + add r2, sp, #0x34 + ldr r0, [sp, #0x18] + add r2, #1 + ldrsb r1, [r2, r0] + ldr r0, [sp, #0x24] + sub r0, #0x64 + str r0, [sp, #0x24] + sub r1, r1, r0 + ldr r0, [sp, #0x18] + strb r1, [r2, r0] +_020324BE: + ldr r0, [sp, #0x28] + add r0, r0, #1 + str r0, [sp, #0x28] + cmp r0, #5 + bge _020324CA + b _0203236E +_020324CA: + mov r4, #0 + add r3, sp, #0x34 + add r3, #1 + add r1, r4, #0 +_020324D2: + ldrsb r2, [r3, r1] + ldr r0, [sp] + add r3, r3, #1 + add r0, r0, r4 + add r4, r4, #1 + strb r2, [r0, #0xf] + cmp r4, #5 + blt _020324D2 + ldr r0, [sp] + mov r1, #3 + strb r1, [r0, #9] + mov r1, #0 + strh r1, [r0, #0xa] + add sp, #0x3c + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_020324F0: .word 0x020F68DE + thumb_func_end sub_02032354 + + thumb_func_start sub_020324F4 +sub_020324F4: ; 0x020324F4 + mov r3, #0 +_020324F6: + add r2, r0, r3 + ldrb r2, [r2, #3] + strb r2, [r1, r3] + add r3, r3, #1 + cmp r3, #5 + blt _020324F6 + bx lr + thumb_func_end sub_020324F4 + + thumb_func_start sub_02032504 +sub_02032504: ; 0x02032504 + cmp r1, #0 + bne _0203250C + mov r0, #0 + bx lr +_0203250C: + cmp r0, #0 + beq _0203251A + cmp r0, #1 + beq _0203254A + cmp r0, #2 + beq _0203256A + b _02032582 +_0203251A: + cmp r1, #0x3e + bls _02032522 + mov r0, #6 + bx lr +_02032522: + cmp r1, #0x32 + bls _0203252A + mov r0, #5 + bx lr +_0203252A: + cmp r1, #0x28 + bls _02032532 + mov r0, #4 + bx lr +_02032532: + cmp r1, #0x1e + bls _0203253A + mov r0, #3 + bx lr +_0203253A: + cmp r1, #0x14 + bls _02032542 + mov r0, #2 + bx lr +_02032542: + cmp r1, #0 + beq _02032582 + mov r0, #1 + bx lr +_0203254A: + cmp r1, #0x28 + bls _02032552 + mov r0, #4 + bx lr +_02032552: + cmp r1, #0x1e + bls _0203255A + mov r0, #3 + bx lr +_0203255A: + cmp r1, #0x14 + bls _02032562 + mov r0, #2 + bx lr +_02032562: + cmp r1, #0 + beq _02032582 + mov r0, #1 + bx lr +_0203256A: + cmp r1, #0x14 + bls _02032572 + mov r0, #3 + bx lr +_02032572: + cmp r1, #0xa + bls _0203257A + mov r0, #2 + bx lr +_0203257A: + cmp r1, #0 + beq _02032582 + mov r0, #1 + bx lr +_02032582: + mov r0, #0 + bx lr + .balign 4, 0 + thumb_func_end sub_02032504 + + thumb_func_start sub_02032588 +sub_02032588: ; 0x02032588 + push {r3, r4, r5, lr} + add r4, r0, #0 + ldrh r0, [r4] + ldrb r5, [r1] + mov r3, #0xf + bic r0, r3 + mov r3, #0xf + and r3, r5 + orr r0, r3 + strh r0, [r4] + ldrh r3, [r4] + ldr r0, _020325C8 ; =0xFFFF00FF + and r3, r0 + ldrb r0, [r1, #1] + lsl r0, r0, #0x18 + lsr r0, r0, #0x10 + orr r0, r3 + strh r0, [r4] + lsl r0, r2, #0x18 + ldrb r1, [r1, #1] + lsr r0, r0, #0x18 + bl sub_02032504 + lsl r0, r0, #0x1c + ldrh r2, [r4] + mov r1, #0xf0 + lsr r0, r0, #0x18 + bic r2, r1 + orr r0, r2 + strh r0, [r4] + pop {r3, r4, r5, pc} + nop +_020325C8: .word 0xFFFF00FF + thumb_func_end sub_02032588 + + thumb_func_start sub_020325CC +sub_020325CC: ; 0x020325CC + push {r4, lr} + add r4, r0, #0 + mov r1, #0 + mov r2, #0x20 + bl MIi_CpuFill8 + add r0, r4, #0 + add r0, #0x18 + bl sub_02031B5C + add r4, #8 + add r0, r4, #0 + mov r1, #8 + bl StringFillEOS + pop {r4, pc} + thumb_func_end sub_020325CC + + thumb_func_start sub_020325EC +sub_020325EC: ; 0x020325EC + ldr r3, _020325F4 ; =SavArray_get + mov r1, #0x27 + bx r3 + nop +_020325F4: .word SavArray_get + thumb_func_end sub_020325EC + + thumb_func_start sub_020325F8 +sub_020325F8: ; 0x020325F8 + mov r0, #0x4d + lsl r0, r0, #2 + bx lr + .balign 4, 0 + thumb_func_end sub_020325F8 + + thumb_func_start sub_02032600 +sub_02032600: ; 0x02032600 + push {r4, lr} + add r4, r0, #0 + mov r2, #0x4d + mov r0, #0 + add r1, r4, #0 + lsl r2, r2, #2 + bl MIi_CpuClearFast + add r0, r4, #0 + mov r1, #0 + bl sub_02032744 + add r0, r4, #0 + mov r1, #1 + bl sub_02032744 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02032600 + + thumb_func_start sub_02032624 +sub_02032624: ; 0x02032624 + push {r3, r4, r5, lr} + mov r1, #0x13 + add r5, r0, #0 + lsl r1, r1, #4 + ldr r4, [r5, r1] + bl sub_02032600 + mov r0, #0x13 + lsl r0, r0, #4 + str r4, [r5, r0] + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_02032624 + + thumb_func_start sub_0203263C +sub_0203263C: ; 0x0203263C + mov r1, #0x49 + lsl r1, r1, #2 + ldrh r0, [r0, r1] + bx lr + thumb_func_end sub_0203263C + + thumb_func_start sub_02032644 +sub_02032644: ; 0x02032644 + mov r1, #0x49 + lsl r1, r1, #2 + ldrh r2, [r0, r1] + add r2, r2, #1 + strh r2, [r0, r1] + bx lr + thumb_func_end sub_02032644 + + thumb_func_start sub_02032650 +sub_02032650: ; 0x02032650 + mov r3, #0x4a + lsl r3, r3, #2 + str r1, [r0, r3] + add r1, r3, #4 + ldr r1, [r0, r1] + add r2, r1, r2 + add r1, r3, #4 + str r2, [r0, r1] + ldr r1, [r0, r1] + ldr r2, _02032670 ; =0x0098967F + cmp r1, r2 + blo _0203266C + add r1, r3, #4 + str r2, [r0, r1] +_0203266C: + bx lr + nop +_02032670: .word 0x0098967F + thumb_func_end sub_02032650 + + thumb_func_start sub_02032674 +sub_02032674: ; 0x02032674 + push {r3, r4} + mov r3, #0x4a + lsl r3, r3, #2 + ldr r4, [r0, r3] + str r4, [r1] + add r1, r3, #4 + ldr r0, [r0, r1] + str r0, [r2] + pop {r3, r4} + bx lr + thumb_func_end sub_02032674 + + thumb_func_start sub_02032688 +sub_02032688: ; 0x02032688 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + cmp r5, #0 + bne _02032698 + bl GF_AssertFail +_02032698: + ldrh r0, [r5] + strh r0, [r4] + ldrh r0, [r5, #2] + strh r0, [r6] + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_02032688 + + thumb_func_start sub_020326A4 +sub_020326A4: ; 0x020326A4 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + cmp r5, #0 + bne _020326B4 + bl GF_AssertFail +_020326B4: + strh r4, [r5] + strh r6, [r5, #2] + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_020326A4 + + thumb_func_start sub_020326BC +sub_020326BC: ; 0x020326BC + ldr r3, _020326C8 ; =sub_020D48B4 + add r2, r0, #0 + add r0, r1, #0 + add r1, r2, #4 + mov r2, #0x88 + bx r3 + .balign 4, 0 +_020326C8: .word sub_020D48B4 + thumb_func_end sub_020326BC + + thumb_func_start sub_020326CC +sub_020326CC: ; 0x020326CC + ldr r3, _020326D8 ; =MIi_CpuClearFast + add r1, r0, #0 + mov r0, #0 + add r1, r1, #4 + mov r2, #0x88 + bx r3 + .balign 4, 0 +_020326D8: .word MIi_CpuClearFast + thumb_func_end sub_020326CC + + thumb_func_start sub_020326DC +sub_020326DC: ; 0x020326DC + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + bl sub_020326FC + cmp r0, #0 + beq _020326F8 + add r0, r5, #4 + add r1, r4, #0 + mov r2, #0x88 + bl sub_020D48B4 + mov r0, #1 + pop {r3, r4, r5, pc} +_020326F8: + mov r0, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_020326DC + + thumb_func_start sub_020326FC +sub_020326FC: ; 0x020326FC + mov r2, #0 +_020326FE: + add r1, r0, r2 + ldrb r1, [r1, #4] + cmp r1, #0 + bne _0203270C + add r2, r2, #1 + cmp r2, #0x88 + blt _020326FE +_0203270C: + cmp r2, #0x88 + bne _02032714 + mov r0, #0 + bx lr +_02032714: + mov r0, #1 + bx lr + thumb_func_end sub_020326FC + + thumb_func_start sub_02032718 +sub_02032718: ; 0x02032718 + add r0, #0xf8 + ldrh r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_02032718 + + thumb_func_start sub_02032720 +sub_02032720: ; 0x02032720 + add r0, #0xf8 + strh r1, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_02032720 + + thumb_func_start sub_02032728 +sub_02032728: ; 0x02032728 + add r0, #0xfc + bx lr + thumb_func_end sub_02032728 + + thumb_func_start sub_0203272C +sub_0203272C: ; 0x0203272C + cmp r1, #0x20 + blt _02032734 + mov r0, #0 + bx lr +_02032734: + mov r2, #0x13 + lsl r2, r2, #4 + ldr r0, [r0, r2] + add r2, r0, #0 + lsr r2, r1 + mov r0, #1 + and r0, r2 + bx lr + thumb_func_end sub_0203272C + + thumb_func_start sub_02032744 +sub_02032744: ; 0x02032744 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #0x20 + blt _02032752 + bl GF_AssertFail +_02032752: + mov r0, #0x13 + lsl r0, r0, #4 + mov r1, #1 + ldr r2, [r5, r0] + lsl r1, r4 + orr r1, r2 + str r1, [r5, r0] + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_02032744 + + thumb_func_start sub_02032764 +sub_02032764: ; 0x02032764 + add r0, #0xfa + ldrh r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_02032764 + + thumb_func_start sub_0203276C +sub_0203276C: ; 0x0203276C + mov r1, #1 + add r0, #0xfa + strh r1, [r0] + bx lr + thumb_func_end sub_0203276C + + thumb_func_start sub_02032774 +sub_02032774: ; 0x02032774 + mov r0, #0xf + lsl r0, r0, #8 + bx lr + .balign 4, 0 + thumb_func_end sub_02032774 + + thumb_func_start sub_0203277C +sub_0203277C: ; 0x0203277C + ldr r3, _02032784 ; =SavArray_get + mov r1, #0x28 + bx r3 + nop +_02032784: .word SavArray_get + thumb_func_end sub_0203277C + + thumb_func_start sub_02032788 +sub_02032788: ; 0x02032788 + push {r4, r5, r6, lr} + mov r2, #0xf + mov r1, #0 + lsl r2, r2, #8 + add r5, r0, #0 + bl MIi_CpuFill8 + mov r6, #6 + mov r4, #0 + lsl r6, r6, #6 +_0203279C: + add r0, r5, #0 + bl sub_020327DC + add r4, r4, #1 + add r5, r5, r6 + cmp r4, #0xa + blt _0203279C + pop {r4, r5, r6, pc} + thumb_func_end sub_02032788 + + thumb_func_start sub_020327AC +sub_020327AC: ; 0x020327AC + push {r4, lr} + add r4, r0, #0 + mov r1, #0 + mov r2, #0x38 + bl MIi_CpuFill8 + add r4, #0x24 + add r0, r4, #0 + mov r1, #0xa + bl StringFillEOS + pop {r4, pc} + thumb_func_end sub_020327AC + + thumb_func_start sub_020327C4 +sub_020327C4: ; 0x020327C4 + push {r4, lr} + add r4, r0, #0 + mov r1, #0 + mov r2, #0x30 + bl MIi_CpuFill8 + add r4, #8 + add r0, r4, #0 + mov r1, #8 + bl StringFillEOS + pop {r4, pc} + thumb_func_end sub_020327C4 + + thumb_func_start sub_020327DC +sub_020327DC: ; 0x020327DC + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_020327C4 + mov r4, #0 + add r5, #0x30 +_020327E8: + add r0, r5, #0 + bl sub_020327AC + add r4, r4, #1 + add r5, #0x38 + cmp r4, #6 + blt _020327E8 + pop {r3, r4, r5, pc} + thumb_func_end sub_020327DC + + thumb_func_start sub_020327F8 +sub_020327F8: ; 0x020327F8 + ldrh r0, [r0, #0x30] + lsl r0, r0, #0x15 + lsr r0, r0, #0x15 + beq _02032804 + mov r0, #1 + bx lr +_02032804: + mov r0, #0 + bx lr + thumb_func_end sub_020327F8 + + thumb_func_start sub_02032808 +sub_02032808: ; 0x02032808 + push {r3, lr} + ldr r3, [r0] + ldr r2, [r1] + cmp r3, r2 + bne _0203282A + ldrb r3, [r0, #6] + ldrb r2, [r1, #6] + cmp r3, r2 + bne _0203282A + ldrb r3, [r0, #5] + ldrb r2, [r1, #5] + cmp r3, r2 + bne _0203282A + ldrb r3, [r0, #7] + ldrb r2, [r1, #7] + cmp r3, r2 + beq _0203282E +_0203282A: + mov r0, #0 + pop {r3, pc} +_0203282E: + add r0, #8 + add r1, #8 + bl StringNotEqual + cmp r0, #0 + bne _0203283E + mov r0, #1 + pop {r3, pc} +_0203283E: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02032808 + + thumb_func_start sub_02032844 +sub_02032844: ; 0x02032844 + ldr r1, _02032850 ; =0x021D4124 + ldr r2, [r1, #4] + ldr r1, _02032854 ; =0x00001310 + str r0, [r2, r1] + bx lr + nop +_02032850: .word 0x021D4124 +_02032854: .word 0x00001310 + thumb_func_end sub_02032844 + + thumb_func_start sub_02032858 +sub_02032858: ; 0x02032858 + ldr r1, _0203286C ; =0x021D4124 + ldr r3, [r1, #4] + ldr r1, _02032870 ; =0x00001310 + ldr r2, [r3, r1] + sub r2, #9 + cmp r2, #1 + bls _0203286A + add r1, #0x20 + str r0, [r3, r1] +_0203286A: + bx lr + .balign 4, 0 +_0203286C: .word 0x021D4124 +_02032870: .word 0x00001310 + thumb_func_end sub_02032858 + + thumb_func_start sub_02032874 +sub_02032874: ; 0x02032874 + push {r3, lr} + mov r0, #3 + bl sub_02032844 + ldr r1, _0203289C ; =0x021D4124 + ldr r0, _020328A0 ; =sub_020328A4 + ldr r1, [r1, #4] + bl sub_020DF4F8 + cmp r0, #2 + beq _02032898 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + mov r0, #0 + pop {r3, pc} +_02032898: + mov r0, #1 + pop {r3, pc} + .balign 4, 0 +_0203289C: .word 0x021D4124 +_020328A0: .word sub_020328A4 + thumb_func_end sub_02032874 + + thumb_func_start sub_020328A4 +sub_020328A4: ; 0x020328A4 + push {r3, lr} + ldrh r0, [r0, #2] + cmp r0, #0 + beq _020328B8 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + pop {r3, pc} +_020328B8: + bl sub_020328C8 + cmp r0, #0 + bne _020328C6 + mov r0, #9 + bl sub_02032844 +_020328C6: + pop {r3, pc} + thumb_func_end sub_020328A4 + + thumb_func_start sub_020328C8 +sub_020328C8: ; 0x020328C8 + push {r4, lr} + ldr r0, _02032924 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02032928 ; =0x00001310 + ldr r0, [r1, r0] + sub r0, r0, #4 + cmp r0, #2 + bhi _020328DC + mov r0, #1 + pop {r4, pc} +_020328DC: + bl sub_020DEB24 + add r4, r0, #0 + mov r0, #0x66 + lsl r0, r0, #2 + add r0, r4, r0 + mov r1, #4 + bl sub_020D285C + mov r0, #0x66 + mov r1, #0 + lsl r0, r0, #2 + str r1, [r4, r0] + add r0, r4, r0 + mov r1, #4 + bl DC_FlushRange + ldr r0, _0203292C ; =sub_02032934 + bl sub_020DF680 + cmp r0, #2 + beq _02032910 + bl sub_02032858 + mov r0, #0 + pop {r4, pc} +_02032910: + ldr r2, _02032924 ; =0x021D4124 + ldr r1, _02032930 ; =0x0000132C + ldr r0, [r2, #4] + mov r3, #0 + strh r3, [r0, r1] + ldr r2, [r2, #4] + mov r0, #1 + add r1, r1, #2 + strh r0, [r2, r1] + pop {r4, pc} + .balign 4, 0 +_02032924: .word 0x021D4124 +_02032928: .word 0x00001310 +_0203292C: .word sub_02032934 +_02032930: .word 0x0000132C + thumb_func_end sub_020328C8 + + thumb_func_start sub_02032934 +sub_02032934: ; 0x02032934 + push {r4, r5, r6, lr} + add r5, r0, #0 + ldrh r0, [r5, #0x10] + mov r1, #1 + lsl r1, r0 + lsl r0, r1, #0x10 + lsr r4, r0, #0x10 + ldrh r0, [r5, #2] + cmp r0, #0 + beq _02032954 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + pop {r4, r5, r6, pc} +_02032954: + ldrh r0, [r5, #8] + cmp r0, #7 + bgt _0203296C + bge _02032986 + cmp r0, #2 + bgt _02032A24 + cmp r0, #0 + blt _02032A24 + beq _02032A16 + cmp r0, #2 + beq _02032978 + pop {r4, r5, r6, pc} +_0203296C: + cmp r0, #9 + bgt _02032974 + beq _020329F8 + pop {r4, r5, r6, pc} +_02032974: + cmp r0, #0x1a + pop {r4, r5, r6, pc} +_02032978: + ldr r0, _02032A28 ; =0x021D4124 + ldr r2, [r0, #4] + ldr r0, _02032A2C ; =0x00001345 + ldrb r1, [r2, r0] + add r1, r1, #1 + strb r1, [r2, r0] + pop {r4, r5, r6, pc} +_02032986: + ldr r0, _02032A28 ; =0x021D4124 + ldr r2, [r0, #4] + ldr r0, _02032A30 ; =0x00001343 + ldrb r1, [r2, r0] + cmp r1, #1 + beq _020329C4 + sub r0, r0, #1 + ldrb r0, [r2, r0] + cmp r0, #1 + beq _020329C4 + bl sub_02033264 + ldr r1, _02032A28 ; =0x021D4124 + ldr r2, [r1, #4] + ldr r1, _02032A34 ; =0x00001334 + ldrb r1, [r2, r1] + cmp r0, r1 + bge _020329C4 + bl sub_0203993C + ldrb r1, [r5, #0x14] + cmp r1, r0 + bne _020329C4 + add r1, r5, #0 + ldr r0, _02032A38 ; =0x0210F8FC + add r1, #0x15 + mov r2, #3 + bl memcmp + cmp r0, #0 + beq _020329DC +_020329C4: + ldrh r1, [r5, #0x10] + mov r0, #0 + bl sub_020DFA18 + cmp r0, #2 + beq _02032A24 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + pop {r4, r5, r6, pc} +_020329DC: + ldr r1, _02032A28 ; =0x021D4124 + ldr r0, _02032A3C ; =0x0000132E + ldr r3, [r1, #4] + ldrh r2, [r3, r0] + orr r2, r4 + strh r2, [r3, r0] + ldr r1, [r1, #4] + sub r0, r0, #6 + ldr r1, [r1, r0] + cmp r1, #0 + beq _02032A24 + ldrh r0, [r5, #0x10] + blx r1 + pop {r4, r5, r6, pc} +_020329F8: + ldr r2, _02032A28 ; =0x021D4124 + ldr r1, _02032A3C ; =0x0000132E + ldr r0, [r2, #4] + mvn r3, r4 + ldrh r6, [r0, r1] + and r3, r6 + strh r3, [r0, r1] + ldr r0, [r2, #4] + sub r1, #0xa + ldr r1, [r0, r1] + cmp r1, #0 + beq _02032A24 + ldrh r0, [r5, #0x10] + blx r1 + pop {r4, r5, r6, pc} +_02032A16: + bl sub_02032A40 + cmp r0, #0 + bne _02032A24 + mov r0, #9 + bl sub_02032844 +_02032A24: + pop {r4, r5, r6, pc} + nop +_02032A28: .word 0x021D4124 +_02032A2C: .word 0x00001345 +_02032A30: .word 0x00001343 +_02032A34: .word 0x00001334 +_02032A38: .word 0x0210F8FC +_02032A3C: .word 0x0000132E + thumb_func_end sub_02032934 + + thumb_func_start sub_02032A40 +sub_02032A40: ; 0x02032A40 + push {r4, lr} + sub sp, #8 + ldr r0, _02032A9C ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02032AA0 ; =0x00001310 + ldr r0, [r1, r0] + sub r0, r0, #4 + cmp r0, #2 + bhi _02032A58 + add sp, #8 + mov r0, #1 + pop {r4, pc} +_02032A58: + mov r0, #4 + bl sub_02032844 + ldr r0, _02032A9C ; =0x021D4124 + ldr r2, _02032AA4 ; =0x00001304 + ldr r4, [r0, #4] + ldr r3, _02032AA8 ; =0x00001020 + ldr r0, [r4, r2] + add r2, r2, #4 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + str r0, [sp] + mov r0, #1 + str r0, [sp, #4] + ldr r2, [r4, r2] + add r1, r4, r3 + lsl r2, r2, #0x10 + sub r3, #0xe0 + ldr r0, _02032AAC ; =sub_02032AB0 + lsr r2, r2, #0x10 + add r3, r4, r3 + bl sub_020DFD14 + cmp r0, #2 + beq _02032A94 + bl sub_02032858 + add sp, #8 + mov r0, #0 + pop {r4, pc} +_02032A94: + mov r0, #1 + add sp, #8 + pop {r4, pc} + nop +_02032A9C: .word 0x021D4124 +_02032AA0: .word 0x00001310 +_02032AA4: .word 0x00001304 +_02032AA8: .word 0x00001020 +_02032AAC: .word sub_02032AB0 + thumb_func_end sub_02032A40 + + thumb_func_start sub_02032AB0 +sub_02032AB0: ; 0x02032AB0 + push {r3, lr} + ldrh r1, [r0, #2] + cmp r1, #0 + beq _02032AC6 + add r0, r1, #0 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + pop {r3, pc} +_02032AC6: + ldrh r0, [r0, #4] + sub r0, #0xa + cmp r0, #3 + bhi _02032B00 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_02032ADA: ; jump table + .short _02032AE2 - _02032ADA - 2 ; case 0 + .short _02032B00 - _02032ADA - 2 ; case 1 + .short _02032B00 - _02032ADA - 2 ; case 2 + .short _02032B00 - _02032ADA - 2 ; case 3 +_02032AE2: + ldr r0, _02032B04 ; =0x021D4124 + ldr r2, [r0, #4] + ldr r0, _02032B08 ; =0x00001314 + ldr r1, [r2, r0] + cmp r1, #2 + bne _02032AFA + sub r0, r0, #4 + ldr r0, [r2, r0] + cmp r0, #4 + beq _02032AFA + cmp r0, #6 + beq _02032B00 +_02032AFA: + mov r0, #4 + bl sub_02032844 +_02032B00: + pop {r3, pc} + nop +_02032B04: .word 0x021D4124 +_02032B08: .word 0x00001314 + thumb_func_end sub_02032AB0 + + thumb_func_start sub_02032B0C +sub_02032B0C: ; 0x02032B0C + push {r3, lr} + mov r0, #3 + bl sub_02032844 + ldr r0, _02032B2C ; =sub_02032B30 + bl sub_020DFEAC + cmp r0, #2 + beq _02032B26 + bl sub_02032858 + mov r0, #0 + pop {r3, pc} +_02032B26: + mov r0, #1 + pop {r3, pc} + nop +_02032B2C: .word sub_02032B30 + thumb_func_end sub_02032B0C + + thumb_func_start sub_02032B30 +sub_02032B30: ; 0x02032B30 + push {r3, lr} + ldrh r0, [r0, #2] + cmp r0, #0 + beq _02032B42 + bl sub_02032858 + bl sub_02033830 + pop {r3, pc} +_02032B42: + bl sub_02032B50 + cmp r0, #0 + bne _02032B4E + bl sub_02033830 +_02032B4E: + pop {r3, pc} + thumb_func_end sub_02032B30 + + thumb_func_start sub_02032B50 +sub_02032B50: ; 0x02032B50 + push {r3, lr} + ldr r0, _02032B68 ; =sub_02032B6C + bl sub_020DF690 + cmp r0, #2 + beq _02032B64 + bl sub_02032858 + mov r0, #0 + pop {r3, pc} +_02032B64: + mov r0, #1 + pop {r3, pc} + .balign 4, 0 +_02032B68: .word sub_02032B6C + thumb_func_end sub_02032B50 + + thumb_func_start sub_02032B6C +sub_02032B6C: ; 0x02032B6C + push {r3, lr} + ldrh r0, [r0, #2] + cmp r0, #0 + beq _02032B7A + bl sub_02032858 + pop {r3, pc} +_02032B7A: + mov r0, #1 + bl sub_02032844 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02032B6C + + thumb_func_start sub_02032B84 +sub_02032B84: ; 0x02032B84 + push {r3, r4, r5, r6, r7, lr} + add r7, r2, #0 + ldr r2, _02032C10 ; =0x021D4124 + add r5, r0, #0 + add r4, r1, #0 + mov r3, #2 + ldr r0, [r2, #4] + ldr r1, _02032C14 ; =0x00001308 + lsl r3, r3, #8 + str r3, [r0, r1] + ldr r2, [r2, #4] + mov r0, #0x40 + sub r1, r1, #4 + str r0, [r2, r1] + mov r0, #2 + bl sub_02032844 + ldr r2, _02032C10 ; =0x021D4124 + ldr r1, _02032C18 ; =0x00001256 + ldr r3, [r2, #4] + mov r0, #1 + strh r0, [r3, r1] + add r0, r1, #0 + ldrh r6, [r4, #4] + ldr r3, [r2, #4] + add r0, #0x96 + strh r6, [r3, r0] + add r0, r1, #0 + ldrh r6, [r4, #2] + ldr r3, [r2, #4] + add r0, #0x94 + strh r6, [r3, r0] + add r0, r1, #0 + ldrh r4, [r4] + ldr r3, [r2, #4] + add r0, #0x92 + strh r4, [r3, r0] + add r0, r1, #0 + ldr r3, [r2, #4] + add r0, #0xbe + str r5, [r3, r0] + add r3, r1, #0 + ldr r4, [r2, #4] + mov r0, #0 + add r3, #0xaa + str r0, [r4, r3] + add r3, r1, #0 + ldr r4, [r2, #4] + add r3, #0xb6 + strh r7, [r4, r3] + add r3, r1, #0 + ldr r4, [r2, #4] + add r3, #0x8e + strh r0, [r4, r3] + ldr r2, [r2, #4] + add r1, #0xb8 + mov r0, #1 + strh r0, [r2, r1] + bl sub_02032C84 + cmp r0, #0 + bne _02032C0A + mov r0, #9 + bl sub_02032844 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02032C0A: + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} + nop +_02032C10: .word 0x021D4124 +_02032C14: .word 0x00001308 +_02032C18: .word 0x00001256 + thumb_func_end sub_02032B84 + + thumb_func_start sub_02032C1C +sub_02032C1C: ; 0x02032C1C + push {r4, r5, r6, lr} + add r5, r0, #0 + mov r0, #2 + add r4, r1, #0 + add r6, r2, #0 + bl sub_02032844 + ldr r1, _02032C80 ; =0x021D4124 + mov r0, #0x13 + ldr r2, [r1, #4] + lsl r0, r0, #8 + str r5, [r2, r0] + add r2, r0, #0 + ldr r3, [r1, #4] + add r2, #0xc + strh r6, [r3, r2] + add r3, r0, #0 + ldr r5, [r1, #4] + mov r2, #0 + sub r3, #0x1c + strh r2, [r5, r3] + add r3, r0, #0 + ldr r5, [r1, #4] + add r3, #0xe + strh r2, [r5, r3] + add r2, r0, #0 + ldrh r5, [r4, #4] + ldr r3, [r1, #4] + sub r2, #0x14 + strh r5, [r3, r2] + add r2, r0, #0 + ldrh r5, [r4, #2] + ldr r3, [r1, #4] + sub r2, #0x16 + strh r5, [r3, r2] + ldrh r2, [r4] + ldr r1, [r1, #4] + sub r0, #0x18 + strh r2, [r1, r0] + bl sub_02032C84 + cmp r0, #0 + bne _02032C7C + mov r0, #9 + bl sub_02032844 + mov r0, #0 + pop {r4, r5, r6, pc} +_02032C7C: + mov r0, #1 + pop {r4, r5, r6, pc} + .balign 4, 0 +_02032C80: .word 0x021D4124 + thumb_func_end sub_02032C1C + + thumb_func_start sub_02032C84 +sub_02032C84: ; 0x02032C84 + push {r3, r4, r5, r6, r7, lr} + bl sub_020DEF24 + add r5, r0, #0 + mov r0, #2 + lsl r0, r0, #0xe + cmp r5, r0 + bne _02032CA4 + mov r0, #3 + bl sub_02032858 + mov r0, #1 + bl sub_02039AD8 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02032CA4: + cmp r5, #0 + bne _02032CB8 + mov r0, #0x16 + bl sub_02032858 + mov r0, #1 + bl sub_02039AD8 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02032CB8: + ldr r1, _02032D38 ; =0x021D4124 + ldr r0, _02032D3C ; =0x0000130C + ldr r3, [r1, #4] + ldrh r2, [r3, r0] + cmp r2, #0 + bne _02032CF8 + add r7, r0, #0 + mov r3, #1 + add r2, r3, #0 + sub r7, #0x28 + sub r0, #0x28 +_02032CCE: + ldr r4, [r1, #4] + ldr r6, _02032D40 ; =0x000012E4 + ldrh r6, [r4, r6] + add r6, r6, #1 + strh r6, [r4, r7] + ldr r4, [r1, #4] + ldrh r6, [r4, r0] + cmp r6, #0x10 + bls _02032CE4 + ldr r6, _02032D40 ; =0x000012E4 + strh r3, [r4, r6] +_02032CE4: + ldr r6, [r1, #4] + ldr r4, _02032D40 ; =0x000012E4 + ldrh r4, [r6, r4] + add r6, r2, #0 + sub r4, r4, #1 + lsl r6, r4 + add r4, r5, #0 + tst r4, r6 + bne _02032CFC + b _02032CCE +_02032CF8: + sub r0, #0x28 + strh r2, [r3, r0] +_02032CFC: + bl sub_020DF064 + mov r1, #3 + bl _s32_div_f + ldr r2, _02032D38 ; =0x021D4124 + ldr r1, _02032D44 ; =0x000012E6 + ldr r3, [r2, #4] + strh r0, [r3, r1] + add r0, r1, #0 + ldr r3, [r2, #4] + sub r0, #0xc6 + add r4, r3, r0 + sub r0, r1, #6 + str r4, [r3, r0] + ldr r2, [r2, #4] + sub r1, r1, #6 + ldr r0, _02032D48 ; =sub_02032D4C + add r1, r2, r1 + bl sub_020DF6D0 + cmp r0, #2 + beq _02032D32 + bl sub_02032858 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02032D32: + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} + nop +_02032D38: .word 0x021D4124 +_02032D3C: .word 0x0000130C +_02032D40: .word 0x000012E4 +_02032D44: .word 0x000012E6 +_02032D48: .word sub_02032D4C + thumb_func_end sub_02032C84 + + thumb_func_start sub_02032D4C +sub_02032D4C: ; 0x02032D4C + push {r4, lr} + add r4, r0, #0 + ldrh r0, [r4, #2] + cmp r0, #0 + beq _02032D62 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + pop {r4, pc} +_02032D62: + ldr r0, _02032E14 ; =0x021D4124 + ldr r2, [r0, #4] + ldr r0, _02032E18 ; =0x00001310 + ldr r1, [r2, r0] + cmp r1, #2 + beq _02032D84 + mov r1, #0 + sub r0, r0, #2 + strh r1, [r2, r0] + bl sub_02032E48 + cmp r0, #0 + bne _02032E10 + mov r0, #9 + bl sub_02032844 + pop {r4, pc} +_02032D84: + ldrh r1, [r4, #8] + cmp r1, #3 + beq _02032E10 + cmp r1, #4 + beq _02032E02 + cmp r1, #5 + bne _02032E02 + sub r0, #0xf0 + add r0, r2, r0 + mov r1, #0xc0 + bl sub_020D285C + ldr r0, _02032E14 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02032E1C ; =0x00001320 + ldr r2, [r1, r0] + cmp r2, #0 + beq _02032DB8 + ldrh r0, [r4, #0x36] + cmp r0, #8 + blo _02032DB8 + add r1, r4, #0 + add r1, #0x48 + ldrb r1, [r1, #4] + ldr r0, [r4, #0x3c] + blx r2 +_02032DB8: + ldrh r0, [r4, #0x36] + cmp r0, #8 + blo _02032E02 + ldr r0, _02032E14 ; =0x021D4124 + ldr r2, [r4, #0x3c] + ldr r0, [r0, #4] + ldr r1, [r0, #8] + cmp r2, r1 + bne _02032E02 + add r4, #0x43 + ldrb r2, [r4] + mov r1, #3 + and r1, r2 + cmp r1, #1 + bne _02032E02 + mov r1, #0x13 + lsl r1, r1, #8 + ldr r2, [r0, r1] + cmp r2, #0 + beq _02032DE6 + sub r1, #0xe0 + add r0, r0, r1 + blx r2 +_02032DE6: + ldr r0, _02032E14 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02032E20 ; =0x0000130E + ldrh r0, [r1, r0] + cmp r0, #0 + beq _02032E02 + bl sub_02032E48 + cmp r0, #0 + bne _02032E10 + mov r0, #9 + bl sub_02032844 + pop {r4, pc} +_02032E02: + bl sub_02032C84 + cmp r0, #0 + bne _02032E10 + mov r0, #9 + bl sub_02032844 +_02032E10: + pop {r4, pc} + nop +_02032E14: .word 0x021D4124 +_02032E18: .word 0x00001310 +_02032E1C: .word 0x00001320 +_02032E20: .word 0x0000130E + thumb_func_end sub_02032D4C + + thumb_func_start sub_02032E24 +sub_02032E24: ; 0x02032E24 + push {r3, lr} + ldr r0, _02032E40 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02032E44 ; =0x00001310 + ldr r0, [r1, r0] + cmp r0, #2 + beq _02032E36 + mov r0, #0 + pop {r3, pc} +_02032E36: + mov r0, #3 + bl sub_02032844 + mov r0, #1 + pop {r3, pc} + .balign 4, 0 +_02032E40: .word 0x021D4124 +_02032E44: .word 0x00001310 + thumb_func_end sub_02032E24 + + thumb_func_start sub_02032E48 +sub_02032E48: ; 0x02032E48 + push {r3, lr} + ldr r0, _02032E60 ; =sub_02032E64 + bl sub_020DF90C + cmp r0, #2 + beq _02032E5C + bl sub_02032858 + mov r0, #0 + pop {r3, pc} +_02032E5C: + mov r0, #1 + pop {r3, pc} + .balign 4, 0 +_02032E60: .word sub_02032E64 + thumb_func_end sub_02032E48 + + thumb_func_start sub_02032E64 +sub_02032E64: ; 0x02032E64 + push {r3, lr} + ldrh r0, [r0, #2] + cmp r0, #0 + beq _02032E72 + bl sub_02032858 + pop {r3, pc} +_02032E72: + mov r0, #1 + bl sub_02032844 + ldr r0, _02032E94 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02032E98 ; =0x0000130E + ldrh r0, [r1, r0] + cmp r0, #0 + beq _02032E92 + bl sub_02032E9C + cmp r0, #0 + bne _02032E92 + mov r0, #9 + bl sub_02032844 +_02032E92: + pop {r3, pc} + .balign 4, 0 +_02032E94: .word 0x021D4124 +_02032E98: .word 0x0000130E + thumb_func_end sub_02032E64 + + thumb_func_start sub_02032E9C +sub_02032E9C: ; 0x02032E9C + push {lr} + sub sp, #0x24 + ldr r0, _02032EF8 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02032EFC ; =0x00001310 + ldr r0, [r1, r0] + sub r0, r0, #4 + cmp r0, #2 + bhi _02032EB4 + add sp, #0x24 + mov r0, #1 + pop {pc} +_02032EB4: + mov r0, #3 + bl sub_02032844 + add r1, sp, #4 + ldr r0, _02032F00 ; =0x0210F8FC + add r1, #1 + mov r2, #3 + bl MIi_CpuCopy8 + bl sub_0203993C + add r1, sp, #4 + strb r0, [r1] + mov r0, #0 + str r0, [sp] + ldr r1, _02032EF8 ; =0x021D4124 + ldr r0, _02032F04 ; =sub_02032F0C + ldr r2, [r1, #4] + ldr r1, _02032F08 ; =0x00001220 + mov r3, #1 + add r1, r2, r1 + add r2, sp, #4 + bl sub_020DF94C + cmp r0, #2 + beq _02032EF2 + bl sub_02032858 + add sp, #0x24 + mov r0, #0 + pop {pc} +_02032EF2: + mov r0, #1 + add sp, #0x24 + pop {pc} + .balign 4, 0 +_02032EF8: .word 0x021D4124 +_02032EFC: .word 0x00001310 +_02032F00: .word 0x0210F8FC +_02032F04: .word sub_02032F0C +_02032F08: .word 0x00001220 + thumb_func_end sub_02032E9C + + thumb_func_start sub_02032F0C +sub_02032F0C: ; 0x02032F0C + push {r4, lr} + add r4, r0, #0 + ldrh r0, [r4, #2] + cmp r0, #0 + beq _02032F58 + bl sub_02032858 + ldrh r0, [r4, #2] + cmp r0, #0xc + bne _02032F28 + mov r0, #9 + bl sub_02032844 + pop {r4, pc} +_02032F28: + cmp r0, #0xb + bne _02032F34 + mov r0, #9 + bl sub_02032844 + pop {r4, pc} +_02032F34: + cmp r0, #1 + bne _02032F50 + bl sub_02039918 + cmp r0, #0 + beq _02032F48 + mov r0, #9 + bl sub_02032844 + pop {r4, pc} +_02032F48: + mov r0, #8 + bl sub_02032844 + pop {r4, pc} +_02032F50: + mov r0, #9 + bl sub_02032844 + pop {r4, pc} +_02032F58: + ldrh r0, [r4, #8] + cmp r0, #8 + beq _02032FBE + cmp r0, #7 + bne _02032F9E + ldr r0, _02032FC0 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02032FC4 ; =0x00001335 + ldrb r0, [r1, r0] + cmp r0, #0 + beq _02032F7C + mov r0, #0x14 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + pop {r4, pc} +_02032F7C: + mov r0, #4 + bl sub_02032844 + bl sub_02032FCC + cmp r0, #0 + bne _02032F92 + mov r0, #3 + bl sub_02032844 + pop {r4, pc} +_02032F92: + ldr r0, _02032FC0 ; =0x021D4124 + ldrh r2, [r4, #0xa] + ldr r1, [r0, #4] + ldr r0, _02032FC8 ; =0x0000132C + strh r2, [r1, r0] + pop {r4, pc} +_02032F9E: + cmp r0, #6 + beq _02032FBE + cmp r0, #9 + bne _02032FB4 + mov r0, #0x14 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + pop {r4, pc} +_02032FB4: + cmp r0, #0x1a + beq _02032FBE + mov r0, #9 + bl sub_02032844 +_02032FBE: + pop {r4, pc} + .balign 4, 0 +_02032FC0: .word 0x021D4124 +_02032FC4: .word 0x00001335 +_02032FC8: .word 0x0000132C + thumb_func_end sub_02032F0C + + thumb_func_start sub_02032FCC +sub_02032FCC: ; 0x02032FCC + push {r4, lr} + sub sp, #8 + ldr r0, _0203300C ; =0x021D4124 + ldr r2, _02033010 ; =0x00001304 + ldr r4, [r0, #4] + ldr r3, _02033014 ; =0x00001020 + ldr r0, [r4, r2] + add r1, r4, r3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + str r0, [sp] + mov r0, #1 + str r0, [sp, #4] + add r2, r2, #4 + ldr r2, [r4, r2] + sub r3, #0xe0 + lsl r2, r2, #0x10 + ldr r0, _02033018 ; =sub_0203301C + lsr r2, r2, #0x10 + add r3, r4, r3 + bl sub_020DFD14 + cmp r0, #2 + beq _02033006 + bl sub_02032858 + add sp, #8 + mov r0, #0 + pop {r4, pc} +_02033006: + mov r0, #1 + add sp, #8 + pop {r4, pc} + .balign 4, 0 +_0203300C: .word 0x021D4124 +_02033010: .word 0x00001304 +_02033014: .word 0x00001020 +_02033018: .word sub_0203301C + thumb_func_end sub_02032FCC + + thumb_func_start sub_0203301C +sub_0203301C: ; 0x0203301C + push {r3, lr} + ldrh r1, [r0, #2] + cmp r1, #0 + beq _0203303E + cmp r1, #0xf + beq _02033074 + cmp r1, #9 + beq _02033074 + cmp r1, #0xd + beq _02033074 + add r0, r1, #0 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + pop {r3, pc} +_0203303E: + ldrh r0, [r0, #4] + sub r0, #0xa + cmp r0, #3 + bhi _02033074 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_02033052: ; jump table + .short _0203305A - _02033052 - 2 ; case 0 + .short _02033074 - _02033052 - 2 ; case 1 + .short _02033074 - _02033052 - 2 ; case 2 + .short _02033074 - _02033052 - 2 ; case 3 +_0203305A: + ldr r0, _02033078 ; =0x021D4124 + ldr r2, [r0, #4] + ldr r0, _0203307C ; =0x00001314 + ldr r1, [r2, r0] + cmp r1, #3 + bne _0203306E + sub r0, r0, #4 + ldr r0, [r2, r0] + cmp r0, #6 + beq _02033074 +_0203306E: + mov r0, #4 + bl sub_02032844 +_02033074: + pop {r3, pc} + nop +_02033078: .word 0x021D4124 +_0203307C: .word 0x00001314 + thumb_func_end sub_0203301C + + thumb_func_start sub_02033080 +sub_02033080: ; 0x02033080 + push {r3, lr} + mov r0, #3 + bl sub_02032844 + ldr r0, _020330A0 ; =sub_020330A4 + bl sub_020DFEAC + cmp r0, #2 + beq _0203309A + bl sub_02032858 + mov r0, #0 + pop {r3, pc} +_0203309A: + mov r0, #1 + pop {r3, pc} + nop +_020330A0: .word sub_020330A4 + thumb_func_end sub_02033080 + + thumb_func_start sub_020330A4 +sub_020330A4: ; 0x020330A4 + push {r3, lr} + ldrh r0, [r0, #2] + cmp r0, #0 + beq _020330B6 + bl sub_02032858 + bl sub_02033858 + pop {r3, pc} +_020330B6: + bl sub_020330C8 + cmp r0, #0 + bne _020330C4 + mov r0, #9 + bl sub_02032844 +_020330C4: + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_020330A4 + + thumb_func_start sub_020330C8 +sub_020330C8: ; 0x020330C8 + push {r3, lr} + mov r0, #3 + bl sub_02032844 + ldr r0, _020330EC ; =sub_020330F0 + mov r1, #0 + bl sub_020DFA18 + cmp r0, #2 + beq _020330E8 + bl sub_02032858 + bl sub_02033830 + mov r0, #0 + pop {r3, pc} +_020330E8: + mov r0, #1 + pop {r3, pc} + .balign 4, 0 +_020330EC: .word sub_020330F0 + thumb_func_end sub_020330C8 + + thumb_func_start sub_020330F0 +sub_020330F0: ; 0x020330F0 + push {r3, lr} + ldrh r0, [r0, #2] + cmp r0, #0 + beq _020330FE + bl sub_02032858 + pop {r3, pc} +_020330FE: + mov r0, #1 + bl sub_02032844 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_020330F0 + + thumb_func_start sub_02033108 +sub_02033108: ; 0x02033108 + push {r3, lr} + mov r0, #3 + bl sub_02032844 + ldr r0, _02033128 ; =sub_0203312C + bl sub_020DF480 + cmp r0, #2 + beq _02033122 + bl sub_02032858 + mov r0, #0 + pop {r3, pc} +_02033122: + mov r0, #1 + pop {r3, pc} + nop +_02033128: .word sub_0203312C + thumb_func_end sub_02033108 + + thumb_func_start sub_0203312C +sub_0203312C: ; 0x0203312C + push {r4, lr} + add r4, r0, #0 + ldrh r0, [r4, #2] + cmp r0, #0 + beq _02033144 + mov r0, #9 + bl sub_02032844 + ldrh r0, [r4, #2] + bl sub_02032858 + pop {r4, pc} +_02033144: + mov r0, #1 + bl sub_02032844 + pop {r4, pc} + thumb_func_end sub_0203312C + + thumb_func_start sub_0203314C +sub_0203314C: ; 0x0203314C + push {r4, r5, r6, r7, lr} + sub sp, #0xc + add r5, r0, #0 + ldr r0, _02033194 ; =0x021D4124 + add r6, r1, #0 + add r4, r2, #0 + ldr r1, [r0, #4] + mov r0, #0x3d + lsl r0, r0, #6 + ldr r2, _02033198 ; =0x00001304 + add r0, r1, r0 + ldr r1, [r1, r2] + add r7, r3, #0 + bl DC_FlushRange + ldr r0, _0203319C ; =0x0000FFFF + add r1, r7, #0 + str r0, [sp] + lsl r0, r4, #0x10 + lsr r0, r0, #0x10 + str r0, [sp, #4] + mov r0, #2 + str r0, [sp, #8] + ldr r0, _020331A0 ; =sub_020331A4 + add r2, r5, #0 + add r3, r6, #0 + bl sub_020DFD7C + cmp r0, #2 + bne _0203318E + add sp, #0xc + mov r0, #1 + pop {r4, r5, r6, r7, pc} +_0203318E: + mov r0, #0 + add sp, #0xc + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_02033194: .word 0x021D4124 +_02033198: .word 0x00001304 +_0203319C: .word 0x0000FFFF +_020331A0: .word sub_020331A4 + thumb_func_end sub_0203314C + + thumb_func_start sub_020331A4 +sub_020331A4: ; 0x020331A4 + push {r3, lr} + ldrh r1, [r0, #2] + cmp r1, #0 + beq _020331B8 + cmp r1, #0xf + beq _020331B8 + add r0, r1, #0 + bl sub_02032858 + pop {r3, pc} +_020331B8: + ldr r2, [r0, #0x20] + cmp r2, #0 + beq _020331CA + cmp r1, #0 + bne _020331C6 + mov r0, #1 + b _020331C8 +_020331C6: + mov r0, #0 +_020331C8: + blx r2 +_020331CA: + pop {r3, pc} + thumb_func_end sub_020331A4 + + thumb_func_start sub_020331CC +sub_020331CC: ; 0x020331CC + push {r3, lr} + add r2, r0, #0 + ldrh r0, [r2, #2] + cmp r0, #0 + beq _020331DC + bl sub_02032858 + pop {r3, pc} +_020331DC: + ldr r0, _0203320C ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02033210 ; =0x00001318 + ldr r3, [r1, r0] + cmp r3, #0 + beq _02033208 + ldrh r0, [r2, #4] + cmp r0, #0x19 + beq _02033208 + cmp r0, #0x15 + bne _020331FC + ldrh r0, [r2, #0x12] + ldr r1, [r2, #0xc] + ldrh r2, [r2, #0x10] + blx r3 + pop {r3, pc} +_020331FC: + cmp r0, #9 + bne _02033208 + ldrh r0, [r2, #0x12] + mov r1, #0 + add r2, r1, #0 + blx r3 +_02033208: + pop {r3, pc} + nop +_0203320C: .word 0x021D4124 +_02033210: .word 0x00001318 + thumb_func_end sub_020331CC + + thumb_func_start sub_02033214 +sub_02033214: ; 0x02033214 + push {r3, lr} + ldrh r0, [r0, #2] + cmp r0, #0 + beq _02033224 + mov r0, #0xa + bl sub_02032844 + pop {r3, pc} +_02033224: + mov r0, #0 + add r1, r0, #0 + bl sub_0209E248 + mov r0, #0 + bl sub_02032844 + pop {r3, pc} + thumb_func_end sub_02033214 + + thumb_func_start sub_02033234 +sub_02033234: ; 0x02033234 + ldr r1, _0203323C ; =0x021D4124 + ldr r1, [r1, #4] + str r0, [r1, #8] + bx lr + .balign 4, 0 +_0203323C: .word 0x021D4124 + thumb_func_end sub_02033234 + + thumb_func_start sub_02033240 +sub_02033240: ; 0x02033240 + ldr r2, _0203324C ; =0x021D4124 + ldr r3, [r2, #4] + str r0, [r3] + ldr r0, [r2, #4] + strh r1, [r0, #4] + bx lr + .balign 4, 0 +_0203324C: .word 0x021D4124 + thumb_func_end sub_02033240 + + thumb_func_start sub_02033250 +sub_02033250: ; 0x02033250 + ldr r0, _0203325C ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02033260 ; =0x0000132E + ldrh r0, [r1, r0] + bx lr + nop +_0203325C: .word 0x021D4124 +_02033260: .word 0x0000132E + thumb_func_end sub_02033250 + + thumb_func_start sub_02033264 +sub_02033264: ; 0x02033264 + push {r3, r4} + ldr r0, _02033290 ; =0x021D4124 + mov r2, #0 + ldr r1, [r0, #4] + ldr r0, _02033294 ; =0x0000132E + add r3, r2, #0 + ldrh r4, [r1, r0] + mov r1, #1 +_02033274: + add r0, r4, #0 + tst r0, r1 + beq _0203327C + add r2, r2, #1 +_0203327C: + lsl r0, r4, #0xf + add r3, r3, #1 + lsr r4, r0, #0x10 + cmp r3, #0x10 + blt _02033274 + lsl r0, r2, #0x10 + lsr r0, r0, #0x10 + pop {r3, r4} + bx lr + nop +_02033290: .word 0x021D4124 +_02033294: .word 0x0000132E + thumb_func_end sub_02033264 + + thumb_func_start sub_02033298 +sub_02033298: ; 0x02033298 + ldr r0, _020332A4 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _020332A8 ; =0x00001310 + ldr r0, [r1, r0] + bx lr + nop +_020332A4: .word 0x021D4124 +_020332A8: .word 0x00001310 + thumb_func_end sub_02033298 + + thumb_func_start sub_020332AC +sub_020332AC: ; 0x020332AC + ldr r0, _020332B8 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _020332BC ; =0x00001330 + ldr r0, [r1, r0] + bx lr + nop +_020332B8: .word 0x021D4124 +_020332BC: .word 0x00001330 + thumb_func_end sub_020332AC + + thumb_func_start sub_020332C0 +sub_020332C0: ; 0x020332C0 + push {r3, r4, r5, lr} + sub sp, #8 + add r0, sp, #0 + bl OS_GetMacAddress + ldr r0, _02033348 ; =0x027FFC3C + ldr r3, [r0] + add r0, sp, #0 + ldrh r2, [r0, #4] + ldrh r1, [r0, #2] + ldrh r0, [r0] + add r0, r0, r3 + add r0, r1, r0 + add r1, r2, r0 + ldr r3, _0203334C ; =0x021D4124 + ldr r2, _02033350 ; =0x00001338 + ldr r0, [r3, #4] + str r1, [r0, r2] + ldr r0, [r3, #4] + ldr r1, _02033354 ; =0x00010DCD + ldr r4, [r0, r2] + add r5, r4, #0 + mul r5, r1 + ldr r1, _02033358 ; =0x00003039 + mov r4, #0 + add r1, r5, r1 + str r1, [r0, r2] + ldr r1, [r3, #4] + add r0, r2, #4 + strh r4, [r1, r0] + ldr r1, [r3, #4] + mov r4, #0x65 + add r0, r2, #6 + strh r4, [r1, r0] + mov r0, #3 + bl sub_02032844 + mov r0, #1 + bl sub_0203335C + cmp r0, #0x18 + bne _0203332C + mov r0, #0x18 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + mov r0, #1 + bl sub_02039AD8 + add sp, #8 + mov r0, #0 + pop {r3, r4, r5, pc} +_0203332C: + cmp r0, #2 + beq _02033340 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + add sp, #8 + mov r0, #0 + pop {r3, r4, r5, pc} +_02033340: + mov r0, #1 + add sp, #8 + pop {r3, r4, r5, pc} + nop +_02033348: .word 0x027FFC3C +_0203334C: .word 0x021D4124 +_02033350: .word 0x00001338 +_02033354: .word 0x00010DCD +_02033358: .word 0x00003039 + thumb_func_end sub_020332C0 + + thumb_func_start sub_0203335C +sub_0203335C: ; 0x0203335C + push {r4, lr} + add r4, r0, #0 + bl sub_020DEF24 + mov r1, #2 + lsl r1, r1, #0xe + cmp r0, r1 + bne _02033382 + mov r0, #3 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + mov r0, #1 + bl sub_02039AD8 + mov r0, #3 + pop {r4, pc} +_02033382: + cmp r0, #0 + bne _0203339C + mov r0, #0x16 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + mov r0, #1 + bl sub_02039AD8 + mov r0, #0x18 + pop {r4, pc} +_0203339C: + mov r2, #1 + sub r1, r4, #1 + lsl r2, r1 + add r1, r2, #0 + tst r1, r0 + bne _020333C4 + mov r2, #1 +_020333AA: + add r1, r4, #1 + lsl r1, r1, #0x10 + lsr r4, r1, #0x10 + cmp r4, #0x10 + bls _020333B8 + mov r0, #0x18 + pop {r4, pc} +_020333B8: + sub r1, r4, #1 + add r3, r2, #0 + lsl r3, r1 + add r1, r3, #0 + tst r1, r0 + beq _020333AA +_020333C4: + ldr r0, _020333D4 ; =sub_020333D8 + add r1, r4, #0 + bl sub_02033454 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + pop {r4, pc} + nop +_020333D4: .word sub_020333D8 + thumb_func_end sub_0203335C + + thumb_func_start sub_020333D8 +sub_020333D8: ; 0x020333D8 + push {r3, r4, r5, lr} + ldrh r1, [r0, #2] + cmp r1, #0 + beq _020333F4 + add r0, r1, #0 + bl sub_02032858 + mov r0, #9 + bl sub_02032844 + mov r0, #1 + bl sub_02039AD8 + pop {r3, r4, r5, pc} +_020333F4: + ldr r2, _0203344C ; =0x021D4124 + ldrh r1, [r0, #8] + ldrh r5, [r0, #0xa] + ldr r0, [r2, #4] + ldr r3, _02033450 ; =0x0000133E + ldrh r4, [r0, r3] + cmp r4, r5 + bls _02033414 + strh r5, [r0, r3] + mov r4, #1 + sub r0, r1, #1 + lsl r4, r0 + ldr r2, [r2, #4] + add r0, r3, #2 + strh r4, [r2, r0] + b _02033428 +_02033414: + cmp r4, r5 + bne _02033428 + add r2, r3, #2 + ldrh r5, [r0, r2] + mov r4, #1 + sub r2, r1, #1 + lsl r4, r2 + orr r4, r5 + add r2, r3, #2 + strh r4, [r0, r2] +_02033428: + add r0, r1, #1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_0203335C + cmp r0, #0x18 + bne _0203343E + mov r0, #7 + bl sub_02032844 + pop {r3, r4, r5, pc} +_0203343E: + cmp r0, #2 + beq _02033448 + mov r0, #9 + bl sub_02032844 +_02033448: + pop {r3, r4, r5, pc} + nop +_0203344C: .word 0x021D4124 +_02033450: .word 0x0000133E + thumb_func_end sub_020333D8 + + thumb_func_start sub_02033454 +sub_02033454: ; 0x02033454 + push {r3, lr} + add r3, r1, #0 + mov r1, #0x1e + str r1, [sp] + mov r1, #3 + mov r2, #0x11 + bl sub_020E0EF4 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02033454 + + thumb_func_start sub_02033468 +sub_02033468: ; 0x02033468 + push {r3, lr} + mov r0, #1 + bl sub_02032844 + ldr r0, _0203348C ; =0x021D4124 + ldr r1, [r0, #4] + mov r0, #0x4d + lsl r0, r0, #6 + ldrh r0, [r1, r0] + bl sub_02033494 + ldr r2, _0203348C ; =0x021D4124 + ldr r1, _02033490 ; =0x0000133C + ldr r3, [r2, #4] + strh r0, [r3, r1] + ldr r0, [r2, #4] + ldrh r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203348C: .word 0x021D4124 +_02033490: .word 0x0000133C + thumb_func_end sub_02033468 + + thumb_func_start sub_02033494 +sub_02033494: ; 0x02033494 + push {r4, r5, r6, r7} + add r4, r0, #0 + mov r0, #0 + add r3, r0, #0 + add r2, r0, #0 + mov r1, #1 +_020334A0: + add r5, r1, #0 + lsl r5, r2 + tst r5, r4 + beq _020334B4 + add r0, r2, #1 + add r3, r3, #1 + lsl r0, r0, #0x10 + lsl r3, r3, #0x10 + asr r0, r0, #0x10 + lsr r3, r3, #0x10 +_020334B4: + add r2, r2, #1 + lsl r2, r2, #0x10 + asr r2, r2, #0x10 + cmp r2, #0x10 + blt _020334A0 + cmp r3, #1 + bls _02033512 + ldr r5, _02033518 ; =0x021D4124 + ldr r2, _0203351C ; =0x00001338 + ldr r0, [r5, #4] + ldr r1, _02033520 ; =0x00010DCD + ldr r6, [r0, r2] + add r7, r6, #0 + mul r7, r1 + ldr r1, _02033524 ; =0x00003039 + add r1, r7, r1 + str r1, [r0, r2] + ldr r0, [r5, #4] + mov r1, #1 + ldr r0, [r0, r2] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mul r0, r3 + lsl r0, r0, #8 + lsr r2, r0, #0x10 + mov r3, #0 +_020334E8: + add r0, r4, #0 + tst r0, r1 + beq _02033502 + cmp r2, #0 + bne _020334FC + add r0, r3, #1 + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + pop {r4, r5, r6, r7} + bx lr +_020334FC: + sub r0, r2, #1 + lsl r0, r0, #0x10 + lsr r2, r0, #0x10 +_02033502: + lsl r0, r4, #0xf + lsr r4, r0, #0x10 + add r0, r3, #1 + lsl r0, r0, #0x10 + asr r3, r0, #0x10 + cmp r3, #0x10 + blt _020334E8 + mov r0, #0 +_02033512: + pop {r4, r5, r6, r7} + bx lr + nop +_02033518: .word 0x021D4124 +_0203351C: .word 0x00001338 +_02033520: .word 0x00010DCD +_02033524: .word 0x00003039 + thumb_func_end sub_02033494 + + thumb_func_start sub_02033528 +sub_02033528: ; 0x02033528 + push {r4, r5, r6, lr} + lsl r2, r0, #0x1b + lsr r3, r2, #0x1b + beq _02033536 + mov r2, #0x20 + sub r2, r2, r3 + add r0, r0, r2 +_02033536: + ldr r3, _020335AC ; =0x021D4124 + ldr r2, _020335B0 ; =0x00001308 + str r0, [r3, #4] + mov r4, #0 + str r4, [r0, r2] + ldr r5, [r3, #4] + sub r0, r2, #4 + str r4, [r5, r0] + add r0, r2, #0 + ldr r5, [r3, #4] + add r0, #0x10 + str r4, [r5, r0] + add r0, r2, #0 + ldr r5, [r3, #4] + add r0, #0x24 + strh r4, [r5, r0] + add r0, r2, #0 + ldr r5, [r3, #4] + mov r6, #1 + add r0, #0x26 + strh r6, [r5, r0] + add r0, r2, #0 + ldr r5, [r3, #4] + add r0, #0x28 + str r4, [r5, r0] + add r0, r2, #0 + ldr r5, [r3, #4] + add r0, #8 + str r4, [r5, r0] + ldr r0, [r3, #4] + mov r6, #8 + str r4, [r0] + ldr r0, [r3, #4] + strh r4, [r0, #4] + add r0, r2, #0 + ldr r5, [r3, #4] + add r0, #0x14 + str r4, [r5, r0] + add r0, r2, #0 + ldr r5, [r3, #4] + add r0, #0x2c + strb r6, [r5, r0] + add r0, r2, #0 + ldr r5, [r3, #4] + add r0, #0x2d + strb r4, [r5, r0] + ldr r0, [r3, #4] + add r2, #0x3a + strb r4, [r0, r2] + add r0, r1, #0 + bl sub_020335D4 + cmp r0, #0 + bne _020335A6 + add r0, r4, #0 + pop {r4, r5, r6, pc} +_020335A6: + mov r0, #1 + pop {r4, r5, r6, pc} + nop +_020335AC: .word 0x021D4124 +_020335B0: .word 0x00001308 + thumb_func_end sub_02033528 + + thumb_func_start sub_020335B4 +sub_020335B4: ; 0x020335B4 + mov r0, #0x4e + lsl r0, r0, #6 + bx lr + .balign 4, 0 + thumb_func_end sub_020335B4 + + thumb_func_start sub_020335BC +sub_020335BC: ; 0x020335BC + push {r3, lr} + ldrh r0, [r0, #2] + cmp r0, #8 + bne _020335D0 + mov r0, #9 + bl sub_02032844 + mov r0, #0x19 + bl sub_02032858 +_020335D0: + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_020335BC + + thumb_func_start sub_020335D4 +sub_020335D4: ; 0x020335D4 + push {r4, lr} + add r4, r0, #0 + mov r0, #3 + bl sub_02032844 + cmp r4, #1 + bne _020335F2 + ldr r0, _02033618 ; =0x021D4124 + ldr r1, _0203361C ; =sub_02033620 + ldr r0, [r0, #4] + mov r2, #2 + add r0, #0x40 + bl sub_020DF3F8 + b _02033602 +_020335F2: + ldr r0, _02033618 ; =0x021D4124 + ldr r1, _0203361C ; =sub_02033620 + ldr r0, [r0, #4] + mov r2, #2 + add r0, #0x40 + mov r3, #0 + bl sub_020DF408 +_02033602: + cmp r0, #2 + beq _02033614 + bl sub_02032858 + mov r0, #0xa + bl sub_02032844 + mov r0, #0 + pop {r4, pc} +_02033614: + mov r0, #1 + pop {r4, pc} + .balign 4, 0 +_02033618: .word 0x021D4124 +_0203361C: .word sub_02033620 + thumb_func_end sub_020335D4 + + thumb_func_start sub_02033620 +sub_02033620: ; 0x02033620 + push {r3, lr} + ldrh r0, [r0, #2] + cmp r0, #0 + beq _0203363A + bl sub_02032858 + mov r0, #0xa + bl sub_02032844 + mov r0, #5 + bl sub_02039AD8 + pop {r3, pc} +_0203363A: + ldr r0, _02033660 ; =sub_020335BC + bl sub_020DEBA8 + cmp r0, #0 + beq _02033656 + bl sub_02032858 + mov r0, #0xa + bl sub_02032844 + mov r0, #5 + bl sub_02039AD8 + pop {r3, pc} +_02033656: + mov r0, #1 + bl sub_02032844 + pop {r3, pc} + nop +_02033660: .word sub_020335BC + thumb_func_end sub_02033620 + + thumb_func_start sub_02033664 +sub_02033664: ; 0x02033664 + bx lr + .balign 4, 0 + thumb_func_end sub_02033664 + + thumb_func_start sub_02033668 +sub_02033668: ; 0x02033668 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + add r7, r2, #0 + add r4, r3, #0 + bl sub_0203993C + bl sub_020340C4 + cmp r0, #0 + beq _0203368C + ldr r0, _0203372C ; =sub_02033664 + mov r2, #0x64 + ldr r1, _02033730 ; =0x0000FFFF + mov r3, #5 + str r2, [sp] + bl sub_020E0E94 +_0203368C: + ldr r1, _02033734 ; =0x021D4124 + mov r0, #7 + ldr r2, [r1, #4] + ldr r1, _02033738 ; =0x00001308 + lsl r0, r0, #6 + str r0, [r2, r1] + ldr r0, _02033734 ; =0x021D4124 + mov r3, #0xe0 + ldr r2, [r0, #4] + sub r0, r1, #4 + str r3, [r2, r0] + ldr r0, _02033734 ; =0x021D4124 + add r1, #0xc + ldr r0, [r0, #4] + str r5, [r0, r1] + mov r0, #3 + bl sub_02032844 + ldr r1, _02033734 ; =0x021D4124 + cmp r5, #0 + ldr r0, [r1, #4] + strh r6, [r0, #0xc] + ldr r0, [r1, #4] + strh r7, [r0, #0x32] + add r0, sp, #8 + ldrh r2, [r0, #0x10] + ldr r0, [r1, #4] + strh r2, [r0, #0x18] + beq _020336CC + cmp r5, #4 + beq _020336E6 + b _020336F2 +_020336CC: + ldr r0, [r1, #4] + mov r2, #0xc0 + strh r2, [r0, #0x34] + cmp r4, #5 + blo _020336DE + ldr r0, [r1, #4] + mov r2, #0xc + strh r2, [r0, #0x36] + b _020336F2 +_020336DE: + ldr r0, [r1, #4] + mov r2, #0x26 + strh r2, [r0, #0x36] + b _020336F2 +_020336E6: + ldr r0, [r1, #4] + mov r2, #0x64 + strh r2, [r0, #0x34] + ldr r0, [r1, #4] + mov r2, #0xc + strh r2, [r0, #0x36] +_020336F2: + ldr r1, _02033734 ; =0x021D4124 + ldr r0, [r1, #4] + strh r4, [r0, #0x10] + ldr r2, [r1, #4] + mov r0, #0 + strh r0, [r2, #0x16] + ldr r2, [r1, #4] + cmp r5, #2 + strh r0, [r2, #0x12] + ldr r2, [sp, #0x1c] + ldr r1, [r1, #4] + strh r2, [r1, #0xe] + bne _0203370E + mov r0, #1 +_0203370E: + ldr r1, _02033734 ; =0x021D4124 + cmp r5, #0 + ldr r1, [r1, #4] + strh r0, [r1, #0x14] + beq _02033720 + cmp r5, #2 + beq _02033720 + cmp r5, #4 + bne _02033726 +_02033720: + bl sub_02032874 + pop {r3, r4, r5, r6, r7, pc} +_02033726: + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203372C: .word sub_02033664 +_02033730: .word 0x0000FFFF +_02033734: .word 0x021D4124 +_02033738: .word 0x00001308 + thumb_func_end sub_02033668 + + thumb_func_start sub_0203373C +sub_0203373C: ; 0x0203373C + push {r3, r4, r5, r6, lr} + sub sp, #4 + add r5, r0, #0 + add r4, r1, #0 + bl sub_0203993C + bl sub_020340C4 + cmp r0, #0 + beq _0203375E + ldr r0, _020337BC ; =sub_02033664 + mov r2, #0x64 + ldr r1, _020337C0 ; =0x0000FFFF + mov r3, #5 + str r2, [sp] + bl sub_020E0E94 +_0203375E: + ldr r2, _020337C4 ; =0x021D4124 + mov r3, #2 + ldr r0, [r2, #4] + ldr r1, _020337C8 ; =0x00001308 + lsl r3, r3, #8 + str r3, [r0, r1] + sub r0, r1, #4 + ldr r3, [r2, #4] + mov r6, #0x40 + str r6, [r3, r0] + ldr r0, [r2, #4] + add r1, #0xc + str r5, [r0, r1] + mov r0, #3 + bl sub_02032844 + cmp r5, #1 + beq _0203378A + cmp r5, #3 + beq _0203378A + cmp r5, #5 + bne _020337B4 +_0203378A: + ldr r1, _020337C4 ; =0x021D4124 + add r0, r4, #0 + ldr r2, [r1, #4] + ldr r1, _020337CC ; =0x00001220 + add r1, r2, r1 + mov r2, #0xc0 + bl MIi_CpuCopy8 + ldr r0, _020337C4 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _020337CC ; =0x00001220 + add r0, r1, r0 + mov r1, #0xc0 + bl DC_FlushRange + bl sub_020D28B8 + bl sub_02032E9C + add sp, #4 + pop {r3, r4, r5, r6, pc} +_020337B4: + mov r0, #0 + add sp, #4 + pop {r3, r4, r5, r6, pc} + nop +_020337BC: .word sub_02033664 +_020337C0: .word 0x0000FFFF +_020337C4: .word 0x021D4124 +_020337C8: .word 0x00001308 +_020337CC: .word 0x00001220 + thumb_func_end sub_0203373C + + thumb_func_start sub_020337D0 +sub_020337D0: ; 0x020337D0 + push {r3, lr} + ldr r2, _020337F4 ; =0x021D4124 + ldr r3, [r2, #4] + ldr r2, _020337F8 ; =0x00001318 + str r0, [r3, r2] + lsl r0, r1, #0x10 + ldr r1, _020337FC ; =sub_020331CC + lsr r0, r0, #0x10 + mov r2, #0 + bl sub_020DEBEC + cmp r0, #0 + beq _020337F2 + mov r0, #9 + bl sub_02032844 +_020337F0: + b _020337F0 +_020337F2: + pop {r3, pc} + .balign 4, 0 +_020337F4: .word 0x021D4124 +_020337F8: .word 0x00001318 +_020337FC: .word sub_020331CC + thumb_func_end sub_020337D0 + + thumb_func_start sub_02033800 +sub_02033800: ; 0x02033800 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + add r7, r3, #0 + bl sub_020338F4 + cmp r0, #0 + bne _02033820 + bl sub_02033250 + mov r1, #0xfe + tst r0, r1 + bne _02033820 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02033820: + add r0, r5, #0 + add r1, r4, #0 + add r2, r6, #0 + add r3, r7, #0 + bl sub_0203314C + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_02033800 + + thumb_func_start sub_02033830 +sub_02033830: ; 0x02033830 + push {r3, lr} + ldr r0, _02033850 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02033854 ; =0x00001310 + ldr r0, [r1, r0] + cmp r0, #2 + bne _02033840 +_0203383E: + b _0203383E +_02033840: + bl sub_02033108 + cmp r0, #0 + bne _0203384E + mov r0, #0xa + bl sub_02032844 +_0203384E: + pop {r3, pc} + .balign 4, 0 +_02033850: .word 0x021D4124 +_02033854: .word 0x00001310 + thumb_func_end sub_02033830 + + thumb_func_start sub_02033858 +sub_02033858: ; 0x02033858 + push {r3, lr} + ldr r0, _020338C4 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _020338C8 ; =0x00001310 + ldr r0, [r1, r0] + cmp r0, #1 + beq _020338C2 + cmp r0, #6 + beq _0203387E + cmp r0, #5 + beq _0203387E + cmp r0, #4 + beq _0203387E + mov r0, #3 + bl sub_02032844 + bl sub_02033830 + pop {r3, pc} +_0203387E: + mov r0, #3 + bl sub_02032844 + ldr r0, _020338C4 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _020338CC ; =0x00001314 + ldr r0, [r1, r0] + cmp r0, #5 + bhi _020338C2 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203389C: ; jump table + .short _020338B6 - _0203389C - 2 ; case 0 + .short _020338A8 - _0203389C - 2 ; case 1 + .short _020338C2 - _0203389C - 2 ; case 2 + .short _020338C2 - _0203389C - 2 ; case 3 + .short _020338B6 - _0203389C - 2 ; case 4 + .short _020338A8 - _0203389C - 2 ; case 5 +_020338A8: + bl sub_02033080 + cmp r0, #0 + bne _020338C2 + bl sub_02033830 + pop {r3, pc} +_020338B6: + bl sub_02032B0C + cmp r0, #0 + bne _020338C2 + bl sub_02033830 +_020338C2: + pop {r3, pc} + .balign 4, 0 +_020338C4: .word 0x021D4124 +_020338C8: .word 0x00001310 +_020338CC: .word 0x00001314 + thumb_func_end sub_02033858 + + thumb_func_start sub_020338D0 +sub_020338D0: ; 0x020338D0 + push {r3, lr} + mov r0, #3 + bl sub_02032844 + ldr r0, _020338F0 ; =sub_02033214 + bl sub_020DF4B8 + cmp r0, #2 + beq _020338EC + mov r0, #9 + bl sub_02032844 + mov r0, #0 + pop {r3, pc} +_020338EC: + mov r0, #1 + pop {r3, pc} + .balign 4, 0 +_020338F0: .word sub_02033214 + thumb_func_end sub_020338D0 + + thumb_func_start sub_020338F4 +sub_020338F4: ; 0x020338F4 + ldr r0, _02033900 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02033904 ; =0x0000132C + ldrh r0, [r1, r0] + bx lr + nop +_02033900: .word 0x021D4124 +_02033904: .word 0x0000132C + thumb_func_end sub_020338F4 + + thumb_func_start sub_02033908 +sub_02033908: ; 0x02033908 + ldr r1, _02033918 ; =0x021D4124 + ldr r2, [r1, #4] + cmp r2, #0 + beq _02033914 + ldr r1, _0203391C ; =0x00001334 + strb r0, [r2, r1] +_02033914: + bx lr + nop +_02033918: .word 0x021D4124 +_0203391C: .word 0x00001334 + thumb_func_end sub_02033908 + + thumb_func_start sub_02033920 +sub_02033920: ; 0x02033920 + ldr r0, _02033934 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02033938 ; =0x00001310 + ldr r0, [r1, r0] + cmp r0, #1 + bne _02033930 + mov r0, #1 + bx lr +_02033930: + mov r0, #0 + bx lr + .balign 4, 0 +_02033934: .word 0x021D4124 +_02033938: .word 0x00001310 + thumb_func_end sub_02033920 + + thumb_func_start sub_0203393C +sub_0203393C: ; 0x0203393C + ldr r0, _02033950 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02033954 ; =0x00001310 + ldr r0, [r1, r0] + cmp r0, #3 + bne _0203394C + mov r0, #1 + bx lr +_0203394C: + mov r0, #0 + bx lr + .balign 4, 0 +_02033950: .word 0x021D4124 +_02033954: .word 0x00001310 + thumb_func_end sub_0203393C + + thumb_func_start sub_02033958 +sub_02033958: ; 0x02033958 + ldr r0, _0203396C ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02033970 ; =0x00001310 + ldr r0, [r1, r0] + cmp r0, #9 + bne _02033968 + mov r0, #1 + bx lr +_02033968: + mov r0, #0 + bx lr + .balign 4, 0 +_0203396C: .word 0x021D4124 +_02033970: .word 0x00001310 + thumb_func_end sub_02033958 + + thumb_func_start sub_02033974 +sub_02033974: ; 0x02033974 + ldr r0, _02033988 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _0203398C ; =0x00001310 + ldr r0, [r1, r0] + cmp r0, #0xa + bne _02033984 + mov r0, #1 + bx lr +_02033984: + mov r0, #0 + bx lr + .balign 4, 0 +_02033988: .word 0x021D4124 +_0203398C: .word 0x00001310 + thumb_func_end sub_02033974 + + thumb_func_start sub_02033990 +sub_02033990: ; 0x02033990 + ldr r0, _020339AC ; =0x021D4124 + ldr r1, [r0, #4] + cmp r1, #0 + beq _020339A8 + ldr r0, _020339B0 ; =0x00001310 + ldr r0, [r1, r0] + cmp r0, #2 + bne _020339A4 + mov r0, #1 + bx lr +_020339A4: + mov r0, #0 + bx lr +_020339A8: + mov r0, #0 + bx lr + .balign 4, 0 +_020339AC: .word 0x021D4124 +_020339B0: .word 0x00001310 + thumb_func_end sub_02033990 + + thumb_func_start sub_020339B4 +sub_020339B4: ; 0x020339B4 + push {r4, r5, r6, lr} + sub sp, #8 + add r6, r0, #0 + ldr r0, _020339E8 ; =0x021D4124 + add r5, r1, #0 + ldr r1, [r0, #4] + ldr r0, _020339EC ; =0x00001310 + add r4, r2, #0 + ldr r0, [r1, r0] + cmp r0, #4 + bne _020339E2 + lsl r0, r3, #0x10 + lsr r0, r0, #0x10 + str r0, [sp] + mov r0, #1 + lsl r2, r5, #0x10 + str r0, [sp, #4] + mov r0, #0 + add r1, r6, #0 + lsr r2, r2, #0x10 + add r3, r4, #0 + bl sub_020E0D8C +_020339E2: + add sp, #8 + pop {r4, r5, r6, pc} + nop +_020339E8: .word 0x021D4124 +_020339EC: .word 0x00001310 + thumb_func_end sub_020339B4 + + thumb_func_start sub_020339F0 +sub_020339F0: ; 0x020339F0 + ldrh r0, [r0, #2] + cmp r0, #0 + bne _02033A00 + ldr r0, _02033A04 ; =0x021D4124 + mov r2, #1 + ldr r1, [r0, #4] + ldr r0, _02033A08 ; =0x00001344 + strb r2, [r1, r0] +_02033A00: + bx lr + nop +_02033A04: .word 0x021D4124 +_02033A08: .word 0x00001344 + thumb_func_end sub_020339F0 + + thumb_func_start sub_02033A0C +sub_02033A0C: ; 0x02033A0C + push {r4, lr} + ldr r2, _02033A38 ; =0x021D4124 + add r1, r0, #0 + ldr r3, [r2, #4] + ldr r0, _02033A3C ; =0x00001344 + mov r4, #0 + strb r4, [r3, r0] + ldr r2, [r2, #4] + sub r0, #0x34 + ldr r0, [r2, r0] + cmp r0, #4 + bne _02033A32 + ldr r0, _02033A40 ; =sub_020339F0 + bl sub_020E0F6C + cmp r0, #2 + bne _02033A32 + mov r0, #1 + pop {r4, pc} +_02033A32: + mov r0, #0 + pop {r4, pc} + nop +_02033A38: .word 0x021D4124 +_02033A3C: .word 0x00001344 +_02033A40: .word sub_020339F0 + thumb_func_end sub_02033A0C + + thumb_func_start sub_02033A44 +sub_02033A44: ; 0x02033A44 + ldr r0, _02033A60 ; =0x021D4124 + ldr r1, [r0, #4] + cmp r1, #0 + beq _02033A5C + ldr r0, _02033A64 ; =0x00001345 + ldrb r0, [r1, r0] + cmp r0, #6 + blo _02033A58 + mov r0, #1 + bx lr +_02033A58: + mov r0, #0 + bx lr +_02033A5C: + mov r0, #0 + bx lr + .balign 4, 0 +_02033A60: .word 0x021D4124 +_02033A64: .word 0x00001345 + thumb_func_end sub_02033A44 + + thumb_func_start sub_02033A68 +sub_02033A68: ; 0x02033A68 + ldr r0, _02033A74 ; =0x021D4124 + mov r2, #0 + ldr r1, [r0, #4] + ldr r0, _02033A78 ; =0x00001345 + strb r2, [r1, r0] + bx lr + .balign 4, 0 +_02033A74: .word 0x021D4124 +_02033A78: .word 0x00001345 + thumb_func_end sub_02033A68 + + thumb_func_start sub_02033A7C +sub_02033A7C: ; 0x02033A7C + ldr r1, _02033A88 ; =0x021D4124 + ldr r2, [r1, #4] + ldr r1, _02033A8C ; =0x00001320 + str r0, [r2, r1] + bx lr + nop +_02033A88: .word 0x021D4124 +_02033A8C: .word 0x00001320 + thumb_func_end sub_02033A7C + + thumb_func_start sub_02033A90 +sub_02033A90: ; 0x02033A90 + ldr r1, _02033A9C ; =0x021D4124 + ldr r2, [r1, #4] + ldr r1, _02033AA0 ; =0x00001328 + str r0, [r2, r1] + bx lr + nop +_02033A9C: .word 0x021D4124 +_02033AA0: .word 0x00001328 + thumb_func_end sub_02033A90 + + thumb_func_start sub_02033AA4 +sub_02033AA4: ; 0x02033AA4 + ldr r1, _02033AB0 ; =0x021D4124 + ldr r2, [r1, #4] + ldr r1, _02033AB4 ; =0x00001342 + strb r0, [r2, r1] + bx lr + nop +_02033AB0: .word 0x021D4124 +_02033AB4: .word 0x00001342 + thumb_func_end sub_02033AA4 + + thumb_func_start sub_02033AB8 +sub_02033AB8: ; 0x02033AB8 + ldr r0, _02033AC4 ; =0x021D4124 + ldr r1, [r0, #4] + ldr r0, _02033AC8 ; =0x00001342 + ldrb r0, [r1, r0] + bx lr + nop +_02033AC4: .word 0x021D4124 +_02033AC8: .word 0x00001342 + thumb_func_end sub_02033AB8 + + thumb_func_start sub_02033ACC +sub_02033ACC: ; 0x02033ACC + ldr r1, _02033AD8 ; =0x021D4124 + ldr r2, [r1, #4] + ldr r1, _02033ADC ; =0x00001343 + strb r0, [r2, r1] + bx lr + nop +_02033AD8: .word 0x021D4124 +_02033ADC: .word 0x00001343 + thumb_func_end sub_02033ACC + + thumb_func_start sub_02033AE0 +sub_02033AE0: ; 0x02033AE0 + str r1, [r0] + strh r2, [r0, #0xa] + mov r1, #0 + strh r1, [r0, #4] + strh r1, [r0, #6] + strh r1, [r0, #8] + bx lr + .balign 4, 0 + thumb_func_end sub_02033AE0 + + thumb_func_start sub_02033AF0 +sub_02033AF0: ; 0x02033AF0 + push {r3, r4, r5, r6, r7, lr} + str r2, [sp] + add r5, r0, #0 + add r7, r1, #0 + bl sub_02033BF4 + ldr r1, [sp] + cmp r0, r1 + bgt _02033B08 + bl sub_02037974 + pop {r3, r4, r5, r6, r7, pc} +_02033B08: + mov r0, #8 + ldrsh r4, [r5, r0] + ldrsh r1, [r5, r0] + ldr r0, [sp] + mov r6, #0 + add r0, r1, r0 + cmp r4, r0 + bge _02033B3E +_02033B18: + cmp r7, #0 + bne _02033B20 + bl GF_AssertFail +_02033B20: + add r0, r5, #0 + add r1, r4, #0 + bl sub_02033C14 + ldrb r2, [r7, r6] + ldr r1, [r5] + add r4, r4, #1 + strb r2, [r1, r0] + mov r0, #8 + ldrsh r1, [r5, r0] + ldr r0, [sp] + add r6, r6, #1 + add r0, r1, r0 + cmp r4, r0 + blt _02033B18 +_02033B3E: + add r0, r5, #0 + add r1, r4, #0 + bl sub_02033C14 + strh r0, [r5, #8] + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_02033AF0 + + thumb_func_start sub_02033B4C +sub_02033B4C: ; 0x02033B4C + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_02033B78 + mov r1, #4 + add r4, r0, #0 + ldrsh r1, [r5, r1] + add r0, r5, #0 + add r1, r1, r4 + bl sub_02033C14 + strh r0, [r5, #4] + add r0, r4, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_02033B4C + + thumb_func_start sub_02033B68 +sub_02033B68: ; 0x02033B68 + push {r3, lr} + add r1, sp, #0 + mov r2, #1 + bl sub_02033B4C + add r0, sp, #0 + ldrb r0, [r0] + pop {r3, pc} + thumb_func_end sub_02033B68 + + thumb_func_start sub_02033B78 +sub_02033B78: ; 0x02033B78 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + mov r0, #4 + ldrsh r4, [r5, r0] + add r7, r2, #0 + str r1, [sp] + add r0, r4, r7 + mov r6, #0 + cmp r4, r0 + bge _02033BBE +_02033B8C: + add r0, r5, #0 + add r1, r4, #0 + bl sub_02033C14 + mov r1, #6 + ldrsh r1, [r5, r1] + cmp r1, r0 + bne _02033BA0 + add r0, r6, #0 + pop {r3, r4, r5, r6, r7, pc} +_02033BA0: + add r0, r5, #0 + add r1, r4, #0 + bl sub_02033C14 + ldr r1, [r5] + add r4, r4, #1 + ldrb r1, [r1, r0] + ldr r0, [sp] + strb r1, [r0, r6] + mov r0, #4 + ldrsh r0, [r5, r0] + add r6, r6, #1 + add r0, r0, r7 + cmp r4, r0 + blt _02033B8C +_02033BBE: + add r0, r6, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_02033B78 + + thumb_func_start sub_02033BC4 +sub_02033BC4: ; 0x02033BC4 + mov r1, #4 + mov r3, #6 + ldrsh r1, [r0, r1] + ldrsh r2, [r0, r3] + cmp r1, r2 + ble _02033BDC + mov r2, #0xa + ldrsh r2, [r0, r2] + ldrsh r0, [r0, r3] + add r0, r2, r0 + sub r0, r0, r1 + bx lr +_02033BDC: + ldrsh r0, [r0, r3] + sub r0, r0, r1 + bx lr + .balign 4, 0 + thumb_func_end sub_02033BC4 + + thumb_func_start sub_02033BE4 +sub_02033BE4: ; 0x02033BE4 + push {r4, lr} + add r4, r0, #0 + bl sub_02033BC4 + mov r1, #0xa + ldrsh r1, [r4, r1] + sub r0, r1, r0 + pop {r4, pc} + thumb_func_end sub_02033BE4 + + thumb_func_start sub_02033BF4 +sub_02033BF4: ; 0x02033BF4 + mov r1, #4 + mov r2, #8 + ldrsh r3, [r0, r1] + ldrsh r1, [r0, r2] + cmp r3, r1 + ble _02033C06 + ldrsh r0, [r0, r2] + sub r0, r3, r0 + bx lr +_02033C06: + mov r1, #0xa + ldrsh r1, [r0, r1] + ldrsh r0, [r0, r2] + sub r0, r0, r3 + sub r0, r1, r0 + bx lr + .balign 4, 0 + thumb_func_end sub_02033BF4 + + thumb_func_start sub_02033C14 +sub_02033C14: ; 0x02033C14 + push {r3, lr} + add r2, r0, #0 + add r0, r1, #0 + mov r1, #0xa + ldrsh r1, [r2, r1] + bl _s32_div_f + add r0, r1, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02033C14 + + thumb_func_start sub_02033C28 +sub_02033C28: ; 0x02033C28 + mov r1, #8 + ldrsh r1, [r0, r1] + strh r1, [r0, #6] + bx lr + thumb_func_end sub_02033C28 + + thumb_func_start sub_02033C30 +sub_02033C30: ; 0x02033C30 + ldr r3, [r0, #0x1c] + mov r2, #0 + ldr r1, [r0, #0x18] + cmp r3, #0 + ble _02033C4C +_02033C3A: + ldrb r0, [r1, #0xe] + cmp r0, #0 + bne _02033C44 + add r0, r1, #0 + bx lr +_02033C44: + add r2, r2, #1 + add r1, #0x10 + cmp r2, r3 + blt _02033C3A +_02033C4C: + mov r0, #0 + bx lr + thumb_func_end sub_02033C30 + + thumb_func_start sub_02033C50 +sub_02033C50: ; 0x02033C50 + ldr r3, [r0, #0x1c] + mov r2, #0 + ldr r1, [r0, #0x18] + cmp r3, #0 + ble _02033C6C +_02033C5A: + ldrb r0, [r1, #0xe] + cmp r0, #0 + beq _02033C64 + mov r0, #0 + bx lr +_02033C64: + add r2, r2, #1 + add r1, #0x10 + cmp r2, r3 + blt _02033C5A +_02033C6C: + mov r0, #1 + bx lr + thumb_func_end sub_02033C50 + + thumb_func_start sub_02033C70 +sub_02033C70: ; 0x02033C70 + ldr r1, [r0] + cmp r1, #0 + beq _02033C8E + ldr r1, [r1, #8] + cmp r1, #0 + beq _02033C84 + str r1, [r0] + mov r0, #0 + str r0, [r1, #4] + b _02033C8A +_02033C84: + mov r1, #0 + str r1, [r0] + str r1, [r0, #4] +_02033C8A: + mov r0, #1 + bx lr +_02033C8E: + mov r0, #0 + bx lr + .balign 4, 0 + thumb_func_end sub_02033C70 + + thumb_func_start sub_02033C94 +sub_02033C94: ; 0x02033C94 + ldr r2, [r0] + strb r1, [r2] + ldr r1, [r0] + add r1, r1, #1 + str r1, [r0] + ldr r1, [r0, #4] + sub r1, r1, #1 + str r1, [r0, #4] + bne _02033CAA + mov r0, #1 + bx lr +_02033CAA: + mov r0, #0 + bx lr + .balign 4, 0 + thumb_func_end sub_02033C94 + + thumb_func_start sub_02033CB0 +sub_02033CB0: ; 0x02033CB0 + push {r4, r5, r6, lr} + add r5, r0, #0 + ldrb r0, [r5, #0xe] + add r4, r1, #0 + bl sub_020341DC + add r6, r0, #0 + ldr r0, _02033D24 ; =0x0000FFFF + cmp r6, r0 + ldr r0, [r4, #4] + bne _02033CD6 + cmp r0, #3 + bge _02033CE6 + ldrb r1, [r5, #0xf] + mov r0, #1 + bic r1, r0 + strb r1, [r5, #0xf] + mov r0, #1 + pop {r4, r5, r6, pc} +_02033CD6: + cmp r0, #1 + bge _02033CE6 + ldrb r1, [r5, #0xf] + mov r0, #1 + bic r1, r0 + strb r1, [r5, #0xf] + mov r0, #1 + pop {r4, r5, r6, pc} +_02033CE6: + ldrb r1, [r5, #0xe] + add r0, r4, #0 + bl sub_02033C94 + ldr r0, _02033D24 ; =0x0000FFFF + cmp r6, r0 + bne _02033D10 + ldrh r1, [r5, #0xc] + add r0, r4, #0 + asr r1, r1, #8 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl sub_02033C94 + ldrh r1, [r5, #0xc] + add r0, r4, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl sub_02033C94 + b _02033D12 +_02033D10: + strh r6, [r5, #0xc] +_02033D12: + ldrb r1, [r5, #0xf] + mov r0, #1 + bic r1, r0 + mov r0, #1 + orr r0, r1 + strb r0, [r5, #0xf] + mov r0, #0 + pop {r4, r5, r6, pc} + nop +_02033D24: .word 0x0000FFFF + thumb_func_end sub_02033CB0 + + thumb_func_start sub_02033D28 +sub_02033D28: ; 0x02033D28 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + ldrb r0, [r5, #0xe] + add r4, r1, #0 + add r6, r2, #0 + add r7, r3, #0 + bl sub_020341DC + ldr r1, _02033DEC ; =0x0000FFFF + cmp r0, r1 + bne _02033D42 + mov r2, #3 + b _02033D44 +_02033D42: + mov r2, #1 +_02033D44: + ldrh r0, [r5, #0xc] + ldr r1, [r4, #4] + add r0, r0, r2 + cmp r1, r0 + bge _02033D56 + cmp r7, #0 + bne _02033D56 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02033D56: + ldrb r0, [r5, #0xf] + lsl r0, r0, #0x1f + lsr r0, r0, #0x1f + cmp r0, #1 + beq _02033D70 + add r0, r5, #0 + add r1, r4, #0 + bl sub_02033CB0 + cmp r0, #0 + beq _02033D70 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02033D70: + ldrh r3, [r5, #0xc] + ldr r2, [r4, #4] + cmp r2, r3 + ldrb r0, [r5, #0xf] + bge _02033DBA + lsl r0, r0, #0x1e + lsr r0, r0, #0x1f + beq _02033D8A + ldr r1, [r4] + add r0, r6, #0 + bl sub_02033B4C + b _02033DA0 +_02033D8A: + mov r3, #0 + cmp r2, #0 + ble _02033DA0 +_02033D90: + ldr r0, [r5] + ldrb r1, [r0, r3] + ldr r0, [r4] + strb r1, [r0, r3] + ldr r0, [r4, #4] + add r3, r3, #1 + cmp r3, r0 + blt _02033D90 +_02033DA0: + ldr r1, [r5] + ldr r0, [r4, #4] + add r0, r1, r0 + str r0, [r5] + ldrh r1, [r5, #0xc] + ldr r0, [r4, #4] + sub r0, r1, r0 + strh r0, [r5, #0xc] + mov r0, #0 + mvn r0, r0 + str r0, [r4, #4] + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_02033DBA: + lsl r0, r0, #0x1e + lsr r0, r0, #0x1f + beq _02033DCC + ldr r1, [r4] + add r0, r6, #0 + add r2, r3, #0 + bl sub_02033B4C + b _02033DD6 +_02033DCC: + ldr r0, [r5] + ldr r1, [r4] + add r2, r3, #0 + bl MIi_CpuCopy8 +_02033DD6: + ldrh r0, [r5, #0xc] + ldr r1, [r4] + add r0, r1, r0 + str r0, [r4] + ldrh r0, [r5, #0xc] + ldr r1, [r4, #4] + sub r0, r1, r0 + str r0, [r4, #4] + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} + nop +_02033DEC: .word 0x0000FFFF + thumb_func_end sub_02033D28 + + thumb_func_start sub_02033DF0 +sub_02033DF0: ; 0x02033DF0 + push {r3, r4, r5, r6, r7, lr} + sub sp, #8 + add r5, r0, #0 + str r1, [sp] + str r2, [sp, #4] + add r7, r3, #0 + bl sub_02033C30 + add r4, r0, #0 + bne _02033E0A + add sp, #8 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02033E0A: + ldr r0, _02033E7C ; =0x0000FFFE + cmp r7, r0 + blt _02033E14 + bl GF_AssertFail +_02033E14: + ldr r0, [sp] + bl sub_020341DC + add r6, r0, #0 + ldr r0, _02033E80 ; =0x0000FFFF + cmp r6, r0 + bne _02033E24 + add r6, r7, #0 +_02033E24: + ldr r0, [sp, #0x24] + cmp r0, #0 + beq _02033E56 + ldr r0, [r5, #0x14] + bl sub_02033BE4 + add r1, r6, #3 + cmp r1, r0 + blt _02033E3C + add sp, #8 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02033E3C: + ldr r0, [r5, #0x14] + ldr r1, [sp, #4] + ldr r3, _02033E84 ; =0x00000109 + add r2, r6, #0 + bl sub_02033AF0 + ldr r0, [r5, #0x14] + bl sub_02033C28 + ldrb r1, [r4, #0xf] + mov r0, #2 + orr r0, r1 + strb r0, [r4, #0xf] +_02033E56: + ldr r0, [sp] + strh r6, [r4, #0xc] + strb r0, [r4, #0xe] + ldr r0, [sp, #4] + str r0, [r4] + ldr r0, [r5, #4] + cmp r0, #0 + bne _02033E6C + str r4, [r5, #4] + str r4, [r5] + b _02033E74 +_02033E6C: + str r4, [r0, #8] + ldr r0, [r5, #4] + str r0, [r4, #4] + str r4, [r5, #4] +_02033E74: + mov r0, #1 + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} + nop +_02033E7C: .word 0x0000FFFE +_02033E80: .word 0x0000FFFF +_02033E84: .word 0x00000109 + thumb_func_end sub_02033DF0 + + thumb_func_start sub_02033E88 +sub_02033E88: ; 0x02033E88 + ldr r1, [r0, #0x10] + cmp r1, #0 + beq _02033E92 + add r0, r1, #0 + bx lr +_02033E92: + ldr r1, [r0] + cmp r1, #0 + beq _02033E9C + add r0, r1, #0 + bx lr +_02033E9C: + ldr r0, [r0, #8] + cmp r0, #0 + bne _02033EA4 + mov r0, #0 +_02033EA4: + bx lr + .balign 4, 0 + thumb_func_end sub_02033E88 + + thumb_func_start sub_02033EA8 +sub_02033EA8: ; 0x02033EA8 + push {r4, lr} + add r4, r0, #0 + ldr r1, [r4, #0x10] + cmp r1, #0 + beq _02033EB8 + mov r0, #0 + str r0, [r4, #0x10] + pop {r4, pc} +_02033EB8: + bl sub_02033C70 + cmp r0, #0 + bne _02033EC8 + add r4, #8 + add r0, r4, #0 + bl sub_02033C70 +_02033EC8: + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02033EA8 + + thumb_func_start sub_02033ECC +sub_02033ECC: ; 0x02033ECC + push {r3, r4, r5, r6, r7, lr} + add r4, r1, #0 + add r5, r0, #0 + ldr r0, [r4, #4] + mov r7, #1 + str r2, [sp] + cmp r0, #0 + ble _02033F22 +_02033EDC: + add r0, r5, #0 + bl sub_02033E88 + add r6, r0, #0 + beq _02033F22 + add r0, r5, #0 + bl sub_02033EA8 + ldr r2, [r5, #0x14] + add r0, r6, #0 + add r1, r4, #0 + add r3, r7, #0 + bl sub_02033D28 + cmp r0, #0 + bne _02033F00 + str r6, [r5, #0x10] + b _02033F22 +_02033F00: + mov r0, #0 + ldr r1, [r4, #4] + mvn r0, r0 + cmp r1, r0 + bne _02033F10 + str r6, [r5, #0x10] + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02033F10: + add r0, r6, #0 + mov r1, #0 + mov r2, #0x10 + bl MIi_CpuFill8 + ldr r0, [r4, #4] + ldr r7, [sp] + cmp r0, #0 + bgt _02033EDC +_02033F22: + ldr r0, [r4, #4] + mov r2, #0 + cmp r0, #0 + ble _02033F3E + mov r1, #0xee +_02033F2C: + ldr r0, [r4] + add r2, r2, #1 + strb r1, [r0] + ldr r0, [r4] + add r0, r0, #1 + str r0, [r4] + ldr r0, [r4, #4] + cmp r2, r0 + blt _02033F2C +_02033F3E: + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_02033ECC + + thumb_func_start sub_02033F44 +sub_02033F44: ; 0x02033F44 + push {r3, r4, r5, r6, r7, lr} + add r4, r1, #0 + add r6, r2, #0 + mov r1, #0 + mov r2, #0x20 + add r5, r0, #0 + bl MIi_CpuFill8 + lsl r7, r4, #4 + mov r0, #0xf + add r1, r7, #0 + bl AllocFromHeap + mov r1, #0 + add r2, r7, #0 + str r0, [r5, #0x18] + bl MIi_CpuFill8 + str r4, [r5, #0x1c] + str r6, [r5, #0x14] + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_02033F44 + + thumb_func_start sub_02033F70 +sub_02033F70: ; 0x02033F70 + push {r4, lr} + add r4, r0, #0 + ldr r2, [r4, #0x1c] + ldr r0, [r4, #0x18] + mov r1, #0 + lsl r2, r2, #4 + bl MIi_CpuFill8 + mov r0, #0 + str r0, [r4] + str r0, [r4, #4] + str r0, [r4, #8] + str r0, [r4, #0xc] + str r0, [r4, #0x10] + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02033F70 + + thumb_func_start sub_02033F90 +sub_02033F90: ; 0x02033F90 + ldr r3, _02033F98 ; =FreeToHeap + ldr r0, [r0, #0x18] + bx r3 + nop +_02033F98: .word FreeToHeap + thumb_func_end sub_02033F90 + + thumb_func_start sub_02033F9C +sub_02033F9C: ; 0x02033F9C + push {r3, r4} + ldr r4, [r0, #0x1c] + mov r2, #0 + ldr r3, [r0, #0x18] + cmp r4, #0 + ble _02033FBC +_02033FA8: + ldrb r0, [r3, #0xe] + cmp r0, r1 + bne _02033FB4 + mov r0, #1 + pop {r3, r4} + bx lr +_02033FB4: + add r2, r2, #1 + add r3, #0x10 + cmp r2, r4 + blt _02033FA8 +_02033FBC: + mov r0, #0 + pop {r3, r4} + bx lr + .balign 4, 0 + thumb_func_end sub_02033F9C + + thumb_func_start sub_02033FC4 +sub_02033FC4: ; 0x02033FC4 + push {r3, r4, lr} + sub sp, #0x2c + ldr r3, _02033FEC ; =0x020F692C + add r4, r0, #0 + add r2, sp, #0 + mov r1, #0x29 +_02033FD0: + ldrb r0, [r3] + add r3, r3, #1 + strb r0, [r2] + add r2, r2, #1 + sub r1, r1, #1 + bne _02033FD0 + cmp r4, #0x29 + blo _02033FE4 + bl GF_AssertFail +_02033FE4: + add r0, sp, #0 + ldrb r0, [r0, r4] + add sp, #0x2c + pop {r3, r4, pc} + .balign 4, 0 +_02033FEC: .word 0x020F692C + thumb_func_end sub_02033FC4 + + thumb_func_start sub_02033FF0 +sub_02033FF0: ; 0x02033FF0 + push {r3, r4, lr} + sub sp, #0x2c + ldr r3, _02034018 ; =0x020F6955 + add r4, r0, #0 + add r2, sp, #0 + mov r1, #0x29 +_02033FFC: + ldrb r0, [r3] + add r3, r3, #1 + strb r0, [r2] + add r2, r2, #1 + sub r1, r1, #1 + bne _02033FFC + cmp r4, #0x29 + blo _02034010 + bl GF_AssertFail +_02034010: + add r0, sp, #0 + ldrb r0, [r0, r4] + add sp, #0x2c + pop {r3, r4, pc} + .balign 4, 0 +_02034018: .word 0x020F6955 + thumb_func_end sub_02033FF0 + + thumb_func_start sub_0203401C +sub_0203401C: ; 0x0203401C + cmp r0, #0x12 + bgt _02034036 + bge _0203403A + cmp r0, #0xd + bgt _0203403E + cmp r0, #7 + blt _0203403E + beq _0203403A + cmp r0, #9 + beq _0203403A + cmp r0, #0xd + beq _0203403A + b _0203403E +_02034036: + cmp r0, #0x1a + bne _0203403E +_0203403A: + mov r0, #1 + bx lr +_0203403E: + mov r0, #0 + bx lr + .balign 4, 0 + thumb_func_end sub_0203401C + + thumb_func_start sub_02034044 +sub_02034044: ; 0x02034044 + sub r0, #0x13 + cmp r0, #0x11 + bhi _0203407E + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_02034056: ; jump table + .short _0203407A - _02034056 - 2 ; case 0 + .short _0203407A - _02034056 - 2 ; case 1 + .short _0203407A - _02034056 - 2 ; case 2 + .short _0203407A - _02034056 - 2 ; case 3 + .short _0203407A - _02034056 - 2 ; case 4 + .short _0203407A - _02034056 - 2 ; case 5 + .short _0203407A - _02034056 - 2 ; case 6 + .short _0203407E - _02034056 - 2 ; case 7 + .short _0203407E - _02034056 - 2 ; case 8 + .short _0203407E - _02034056 - 2 ; case 9 + .short _0203407A - _02034056 - 2 ; case 10 + .short _0203407E - _02034056 - 2 ; case 11 + .short _0203407E - _02034056 - 2 ; case 12 + .short _0203407E - _02034056 - 2 ; case 13 + .short _0203407A - _02034056 - 2 ; case 14 + .short _0203407A - _02034056 - 2 ; case 15 + .short _0203407A - _02034056 - 2 ; case 16 + .short _0203407A - _02034056 - 2 ; case 17 +_0203407A: + mov r0, #1 + bx lr +_0203407E: + mov r0, #0 + bx lr + .balign 4, 0 + thumb_func_end sub_02034044 + + thumb_func_start sub_02034084 +sub_02034084: ; 0x02034084 + cmp r0, #0x1d + beq _02034090 + cmp r0, #0x21 + beq _02034090 + cmp r0, #0x23 + bne _02034094 +_02034090: + mov r0, #1 + bx lr +_02034094: + mov r0, #0 + bx lr + thumb_func_end sub_02034084 + + thumb_func_start sub_02034098 +sub_02034098: ; 0x02034098 + cmp r0, #0x17 + bgt _020340B8 + add r1, r0, #0 + sub r1, #0x13 + bmi _020340C0 + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_020340AE: ; jump table + .short _020340BC - _020340AE - 2 ; case 0 + .short _020340BC - _020340AE - 2 ; case 1 + .short _020340BC - _020340AE - 2 ; case 2 + .short _020340BC - _020340AE - 2 ; case 3 + .short _020340BC - _020340AE - 2 ; case 4 +_020340B8: + cmp r0, #0x22 + bne _020340C0 +_020340BC: + mov r0, #1 + bx lr +_020340C0: + mov r0, #0 + bx lr + thumb_func_end sub_02034098 + + thumb_func_start sub_020340C4 +sub_020340C4: ; 0x020340C4 + cmp r0, #0x26 + bgt _020340F6 + bge _02034102 + cmp r0, #8 + bgt _020340F0 + cmp r0, #0 + blt _02034106 + add r1, r0, r0 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_020340DE: ; jump table + .short _02034106 - _020340DE - 2 ; case 0 + .short _02034102 - _020340DE - 2 ; case 1 + .short _02034102 - _020340DE - 2 ; case 2 + .short _02034102 - _020340DE - 2 ; case 3 + .short _02034102 - _020340DE - 2 ; case 4 + .short _02034102 - _020340DE - 2 ; case 5 + .short _02034106 - _020340DE - 2 ; case 6 + .short _02034106 - _020340DE - 2 ; case 7 + .short _02034102 - _020340DE - 2 ; case 8 +_020340F0: + cmp r0, #0x25 + beq _02034102 + b _02034106 +_020340F6: + cmp r0, #0x27 + bgt _020340FE + beq _02034102 + b _02034106 +_020340FE: + cmp r0, #0x28 + bne _02034106 +_02034102: + mov r0, #1 + bx lr +_02034106: + mov r0, #0 + bx lr + .balign 4, 0 + thumb_func_end sub_020340C4 + + thumb_func_start sub_0203410C +sub_0203410C: ; 0x0203410C + push {r4, r5, r6, lr} + add r5, r0, #0 + ldr r0, _02034150 ; =0x021D412C + add r4, r1, #0 + ldr r0, [r0] + add r6, r2, #0 + cmp r0, #0 + bne _02034128 + mov r0, #0xf + mov r1, #0x18 + bl AllocFromHeap + ldr r1, _02034150 ; =0x021D412C + str r0, [r1] +_02034128: + ldr r0, _02034150 ; =0x021D412C + mov r3, #0 + ldr r1, [r0] + add r2, r3, #0 + str r5, [r1] + ldr r1, [r0] + str r4, [r1, #4] + ldr r1, [r0] + str r6, [r1, #8] +_0203413A: + ldr r1, [r0] + add r1, r1, r3 + add r3, r3, #1 + strb r2, [r1, #0xc] + cmp r3, #8 + blt _0203413A + ldr r0, _02034150 ; =0x021D412C + ldr r0, [r0] + strb r2, [r0, #0x14] + pop {r4, r5, r6, pc} + nop +_02034150: .word 0x021D412C + thumb_func_end sub_0203410C + + thumb_func_start sub_02034154 +sub_02034154: ; 0x02034154 + push {r3, lr} + ldr r0, _0203416C ; =0x021D412C + ldr r0, [r0] + cmp r0, #0 + beq _02034168 + bl FreeToHeap + ldr r0, _0203416C ; =0x021D412C + mov r1, #0 + str r1, [r0] +_02034168: + pop {r3, pc} + nop +_0203416C: .word 0x021D412C + thumb_func_end sub_02034154 + + thumb_func_start sub_02034170 +sub_02034170: ; 0x02034170 + push {r3, r4, r5, r6, r7, lr} + add r4, r1, #0 + add r5, r0, #0 + add r6, r2, #0 + add r7, r3, #0 + cmp r4, #0x16 + bge _02034188 + mov r0, #0xc + mul r1, r0 + ldr r0, _020341D4 ; =0x020F6980 + ldr r4, [r0, r1] + b _020341B0 +_02034188: + ldr r0, _020341D8 ; =0x021D412C + ldr r0, [r0] + cmp r0, #0 + bne _02034194 + bl GF_AssertFail +_02034194: + ldr r0, _020341D8 ; =0x021D412C + ldr r1, [r0] + ldr r0, [r1, #4] + add r0, #0x16 + cmp r4, r0 + ble _020341A6 + bl sub_02037974 + pop {r3, r4, r5, r6, r7, pc} +_020341A6: + ldr r1, [r1] + sub r4, #0x16 + mov r0, #0xc + mul r0, r4 + ldr r4, [r1, r0] +_020341B0: + cmp r4, #0 + beq _020341D2 + ldr r0, _020341D8 ; =0x021D412C + ldr r3, [r0] + cmp r3, #0 + beq _020341C8 + ldr r3, [r3, #8] + add r0, r5, #0 + add r1, r6, #0 + add r2, r7, #0 + blx r4 + pop {r3, r4, r5, r6, r7, pc} +_020341C8: + add r0, r5, #0 + add r1, r6, #0 + add r2, r7, #0 + mov r3, #0 + blx r4 +_020341D2: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_020341D4: .word 0x020F6980 +_020341D8: .word 0x021D412C + thumb_func_end sub_02034170 + + thumb_func_start sub_020341DC +sub_020341DC: ; 0x020341DC + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r4, #0 + cmp r5, #0x16 + bge _020341F2 + mov r0, #0xc + add r1, r5, #0 + mul r1, r0 + ldr r0, _0203423C ; =0x020F6984 + ldr r0, [r0, r1] + b _0203422E +_020341F2: + ldr r0, _02034240 ; =0x021D412C + ldr r0, [r0] + cmp r0, #0 + bne _020341FE + bl GF_AssertFail +_020341FE: + ldr r0, _02034240 ; =0x021D412C + ldr r1, [r0] + cmp r1, #0 + bne _0203420E + bl sub_02037974 + mov r0, #0 + pop {r3, r4, r5, pc} +_0203420E: + ldr r0, [r1, #4] + add r0, #0x16 + cmp r5, r0 + ble _02034222 + bl GF_AssertFail + bl sub_02037974 + mov r0, #0 + pop {r3, r4, r5, pc} +_02034222: + ldr r1, [r1] + sub r5, #0x16 + mov r0, #0xc + mul r0, r5 + add r0, r1, r0 + ldr r0, [r0, #4] +_0203422E: + cmp r0, #0 + beq _02034236 + blx r0 + add r4, r0, #0 +_02034236: + add r0, r4, #0 + pop {r3, r4, r5, pc} + nop +_0203423C: .word 0x020F6984 +_02034240: .word 0x021D412C + thumb_func_end sub_020341DC + + thumb_func_start sub_02034244 +sub_02034244: ; 0x02034244 + cmp r0, #0x16 + bge _0203425C + mov r1, #0xc + mul r1, r0 + ldr r0, _02034278 ; =0x020F6988 + ldr r0, [r0, r1] + cmp r0, #0 + beq _02034258 + mov r0, #1 + bx lr +_02034258: + mov r0, #0 + bx lr +_0203425C: + ldr r1, _0203427C ; =0x021D412C + sub r0, #0x16 + ldr r1, [r1] + ldr r2, [r1] + mov r1, #0xc + mul r1, r0 + add r0, r2, r1 + ldr r0, [r0, #8] + cmp r0, #0 + beq _02034274 + mov r0, #1 + bx lr +_02034274: + mov r0, #0 + bx lr + .balign 4, 0 +_02034278: .word 0x020F6988 +_0203427C: .word 0x021D412C + thumb_func_end sub_02034244 + + thumb_func_start sub_02034280 +sub_02034280: ; 0x02034280 + push {r3, r4, r5, lr} + add r3, r0, #0 + cmp r3, #0x16 + bge _02034298 + mov r4, #0xc + mul r4, r3 + ldr r3, _020342B0 ; =0x020F6988 + add r0, r1, #0 + ldr r3, [r3, r4] + mov r1, #0 + blx r3 + pop {r3, r4, r5, pc} +_02034298: + ldr r0, _020342B4 ; =0x021D412C + sub r3, #0x16 + ldr r4, [r0] + add r0, r1, #0 + ldr r1, [r4, #8] + ldr r5, [r4] + mov r4, #0xc + mul r4, r3 + add r3, r5, r4 + ldr r3, [r3, #8] + blx r3 + pop {r3, r4, r5, pc} + .balign 4, 0 +_020342B0: .word 0x020F6988 +_020342B4: .word 0x021D412C + thumb_func_end sub_02034280 + + thumb_func_start sub_020342B8 +sub_020342B8: ; 0x020342B8 + ldr r0, _020342BC ; =0x0000FFFF + bx lr + .balign 4, 0 +_020342BC: .word 0x0000FFFF + thumb_func_end sub_020342B8 + + thumb_func_start sub_020342C0 +sub_020342C0: ; 0x020342C0 + mov r0, #0 + bx lr + thumb_func_end sub_020342C0 + + thumb_func_start sub_020342C4 +sub_020342C4: ; 0x020342C4 + mov r0, #1 + bx lr + thumb_func_end sub_020342C4 + + thumb_func_start sub_020342C8 +sub_020342C8: ; 0x020342C8 + mov r0, #2 + bx lr + thumb_func_end sub_020342C8 + + thumb_func_start sub_020342CC +sub_020342CC: ; 0x020342CC + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_0203769C + cmp r0, #0 + bne _0203430A + ldr r4, _0203430C ; =0x021D412C + mov r1, #1 + ldr r0, [r4] + add r0, r0, r5 + strb r1, [r0, #0xc] + mov r5, #0 +_020342E4: + lsl r0, r5, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _020342FA + ldr r0, [r4] + add r0, r0, r5 + ldrb r0, [r0, #0xc] + cmp r0, #0 + beq _0203430A +_020342FA: + add r5, r5, #1 + cmp r5, #8 + blt _020342E4 + mov r1, #0 + mov r0, #0xe + add r2, r1, #0 + bl sub_02037108 +_0203430A: + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203430C: .word 0x021D412C + thumb_func_end sub_020342CC + + thumb_func_start sub_02034310 +sub_02034310: ; 0x02034310 + ldr r0, _02034330 ; =0x021D412C + mov r3, #0 + ldr r1, [r0] + str r3, [r1] + ldr r1, [r0] + str r3, [r1, #4] + ldr r1, [r0] + str r3, [r1, #8] + ldr r0, [r0] + mov r1, #1 + strb r1, [r0, #0x14] + ldr r3, _02034334 ; =sub_020376E0 + mov r0, #0xf + add r1, r2, #0 + bx r3 + nop +_02034330: .word 0x021D412C +_02034334: .word sub_020376E0 + thumb_func_end sub_02034310 + + thumb_func_start sub_02034338 +sub_02034338: ; 0x02034338 + push {r4, lr} + add r4, r0, #0 + bl sub_0203769C + cmp r0, #0 + bne _0203434E + ldr r0, _02034350 ; =0x021D412C + mov r1, #0 + ldr r0, [r0] + add r0, r0, r4 + strb r1, [r0, #0xc] +_0203434E: + pop {r4, pc} + .balign 4, 0 +_02034350: .word 0x021D412C + thumb_func_end sub_02034338 + + thumb_func_start sub_02034354 +sub_02034354: ; 0x02034354 + push {r4, r5, r6, r7, lr} + sub sp, #0xc + str r0, [sp] + str r1, [sp, #4] + bl Sav2_PlayerData_GetProfileAddr + str r0, [sp, #8] + ldr r0, _020343E0 ; =0x021D4130 + ldr r0, [r0] + cmp r0, #0 + bne _020343DA + mov r1, #0xea + mov r0, #0xf + lsl r1, r1, #2 + bl AllocFromHeap + ldr r1, _020343E0 ; =0x021D4130 + mov r2, #0xea + str r0, [r1] + mov r1, #0 + lsl r2, r2, #2 + bl MIi_CpuFill8 + mov r6, #0 + ldr r7, _020343E0 ; =0x021D4130 + add r4, r6, #0 + add r5, r6, #0 +_0203438A: + ldr r1, [r7] + add r0, r1, #0 + add r0, #0x2c + add r2, r0, r4 + mov r0, #0xd3 + add r1, r1, r5 + lsl r0, r0, #2 + str r2, [r1, r0] + add r0, r6, #0 + bl sub_020346E8 + add r6, r6, #1 + add r4, #0x68 + add r5, r5, #4 + cmp r6, #8 + blt _0203438A + ldr r2, _020343E0 ; =0x021D4130 + mov r1, #0xe9 + ldr r3, [r2] + mov r0, #0 + lsl r1, r1, #2 + strb r0, [r3, r1] + ldr r4, [r2] + add r3, r1, #1 + strb r0, [r4, r3] + add r3, r1, #2 + ldr r4, [r2] + sub r1, #0x58 + strb r0, [r4, r3] + ldr r3, [r2] + ldr r0, [sp] + str r0, [r3, #8] + ldr r3, [r2] + ldr r0, [sp, #4] + str r0, [r3, #4] + ldr r2, [r2] + ldr r0, [sp, #8] + ldr r1, [r2, r1] + bl sub_02028EE4 +_020343DA: + add sp, #0xc + pop {r4, r5, r6, r7, pc} + nop +_020343E0: .word 0x021D4130 + thumb_func_end sub_02034354 + + thumb_func_start sub_020343E4 +sub_020343E4: ; 0x020343E4 + push {r3, r4, r5, lr} + ldr r1, _0203441C ; =0x021D4130 + ldr r0, [r1] + cmp r0, #0 + beq _02034418 + mov r4, #0 + mov r0, #0xd3 + add r5, r4, #0 + add r3, r4, #0 + lsl r0, r0, #2 +_020343F8: + ldr r2, [r1] + add r4, r4, #1 + add r2, r2, r5 + add r5, r5, #4 + str r3, [r2, r0] + cmp r4, #8 + blt _020343F8 + ldr r0, _0203441C ; =0x021D4130 + ldr r0, [r0] + cmp r0, #0 + beq _02034412 + bl FreeToHeap +_02034412: + ldr r0, _0203441C ; =0x021D4130 + mov r1, #0 + str r1, [r0] +_02034418: + pop {r3, r4, r5, pc} + nop +_0203441C: .word 0x021D4130 + thumb_func_end sub_020343E4 + + thumb_func_start sub_02034420 +sub_02034420: ; 0x02034420 + ldr r0, _02034430 ; =0x021D4130 + ldr r0, [r0] + cmp r0, #0 + beq _0203442C + mov r0, #1 + bx lr +_0203442C: + mov r0, #0 + bx lr + .balign 4, 0 +_02034430: .word 0x021D4130 + thumb_func_end sub_02034420 + + thumb_func_start sub_02034434 +sub_02034434: ; 0x02034434 + push {r3, r4, r5, r6, r7, lr} + bl sub_0203769C + add r4, r0, #0 + ldr r0, _0203451C ; =0x021D4130 + ldr r0, [r0] + ldr r0, [r0, #8] + bl sub_0202C854 + str r0, [sp] + ldr r0, _0203451C ; =0x021D4130 + ldr r0, [r0] + ldr r0, [r0, #8] + bl sub_0202C6F4 + add r7, r0, #0 + ldr r0, _0203451C ; =0x021D4130 + ldr r0, [r0] + ldr r0, [r0, #8] + bl sub_0202CA44 + add r6, r0, #0 + ldr r0, _0203451C ; =0x021D4130 + ldr r1, [r0] + ldr r0, [r1] + cmp r0, #0 + bne _02034470 + ldr r0, [r1, #8] + bl Sav2_PlayerData_GetProfileAddr +_02034470: + ldr r1, _0203451C ; =0x021D4130 + ldr r2, [r1] + lsl r1, r4, #2 + add r2, r2, r1 + mov r1, #0xd3 + lsl r1, r1, #2 + ldr r1, [r2, r1] + bl sub_02028EE4 + mov r0, #0x68 + add r5, r4, #0 + mul r5, r0 + ldr r0, _0203451C ; =0x021D4130 + ldr r0, [r0] + add r0, #0x68 + add r0, r0, r5 + bl OS_GetMacAddress + ldr r0, [sp] + mov r1, #1 + mov r2, #0 + bl sub_0202C7E0 + ldr r1, _0203451C ; =0x021D4130 + mov r2, #0x10 + ldr r1, [r1] + add r1, #0x58 + add r1, r1, r5 + bl MIi_CpuCopy8 + add r0, r6, #0 + bl sub_0202CA8C + ldr r1, _0203451C ; =0x021D4130 + ldr r1, [r1] + add r1, r1, r5 + add r1, #0x6f + strb r0, [r1] + add r0, r6, #0 + bl sub_0202CA90 + ldr r2, _0203451C ; =0x021D4130 + ldr r1, [r2] + add r1, r1, r5 + add r1, #0x70 + strb r0, [r1] + ldr r0, [r2] + mov r1, #0 + add r0, r0, r5 + add r0, #0x71 + strb r1, [r0] + add r0, r7, #0 + bl sub_0202C08C + ldr r1, _0203451C ; =0x021D4130 + ldr r1, [r1] + add r1, #0x4c + add r1, r1, r5 + bl sub_020A037C + ldr r0, _0203451C ; =0x021D4130 + mov r1, #0 + ldr r0, [r0] + mov r2, #0x20 + add r0, #0xc + add r0, r0, r5 + bl MIi_CpuFill8 + ldr r0, _0203451C ; =0x021D4130 + ldr r1, [r0] + ldr r0, [r1, #4] + cmp r0, #0 + beq _0203450A + add r1, #0xc + add r1, r1, r5 + bl sub_020290BC +_0203450A: + ldr r1, _0203451C ; =0x021D4130 + mov r0, #3 + ldr r1, [r1] + mov r2, #0x68 + add r1, #0xc + add r1, r1, r5 + bl sub_02037030 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203451C: .word 0x021D4130 + thumb_func_end sub_02034434 + + thumb_func_start sub_02034520 +sub_02034520: ; 0x02034520 + mov r0, #0x68 + bx lr + thumb_func_end sub_02034520 + + thumb_func_start sub_02034524 +sub_02034524: ; 0x02034524 + ldr r0, _02034538 ; =0x021D4130 + ldr r2, [r0] + cmp r2, #0 + beq _02034534 + mov r0, #0xe9 + mov r1, #1 + lsl r0, r0, #2 + strb r1, [r2, r0] +_02034534: + bx lr + nop +_02034538: .word 0x021D4130 + thumb_func_end sub_02034524 + + thumb_func_start sub_0203453C +sub_0203453C: ; 0x0203453C + push {r3, r4, r5, lr} + ldr r1, _020345C8 ; =0x021D4130 + add r4, r2, #0 + ldr r1, [r1] + cmp r1, #0 + beq _020345C4 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _020345C4 + ldr r1, _020345C8 ; =0x021D4130 + mov r2, #0x68 + ldr r5, [r1] + add r1, r4, #0 + add r1, #0x62 + ldrb r1, [r1] + add r5, #0xc + add r0, r4, #0 + add r3, r1, #0 + mul r3, r2 + add r1, r5, r3 + bl MIi_CpuCopy8 + add r4, #0x62 + ldr r1, _020345C8 ; =0x021D4130 + ldrb r3, [r4] + ldr r2, [r1] + ldr r0, _020345CC ; =0x000003A6 + strb r3, [r2, r0] + ldr r2, [r1] + ldrb r1, [r2, r0] + sub r0, #0x5a + lsl r1, r1, #2 + add r1, r2, r1 + ldr r0, [r1, r0] + bl sub_02028F0C + cmp r0, #1 + beq _020345C4 + ldr r2, _020345C8 ; =0x021D4130 + mov r0, #0xe7 + lsl r0, r0, #2 + ldr r3, [r2] + add r1, r0, #0 + add r1, #0xa + add r4, r3, r0 + ldrb r3, [r3, r1] + ldrb r1, [r4, r3] + cmp r1, #2 + bhs _020345C4 + mov r1, #1 + strb r1, [r4, r3] + ldr r1, [r2] + add r0, #0xa + ldrb r4, [r1, r0] + bl sub_0203769C + cmp r4, r0 + bne _020345C4 + ldr r0, _020345C8 ; =0x021D4130 + mov r2, #3 + ldr r0, [r0] + add r1, r0, r4 + mov r0, #0xe7 + lsl r0, r0, #2 + strb r2, [r1, r0] +_020345C4: + pop {r3, r4, r5, pc} + nop +_020345C8: .word 0x021D4130 +_020345CC: .word 0x000003A6 + thumb_func_end sub_0203453C + + thumb_func_start sub_020345D0 +sub_020345D0: ; 0x020345D0 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, _02034630 ; =0x021D4130 + ldr r1, [r0] + cmp r1, #0 + beq _0203462C + mov r3, #0x68 + add r4, r5, #0 + add r0, r2, #0 + mul r4, r3 + add r1, #0xc + add r1, r1, r4 + add r2, r3, #0 + bl MIi_CpuCopy8 + ldr r0, _02034630 ; =0x021D4130 + add r1, r5, #0 + ldr r0, [r0] + add r0, #0x68 + add r0, r0, r4 + bl sub_020357C4 + ldr r0, _02034630 ; =0x021D4130 + mov r2, #1 + ldr r0, [r0] + add r1, r0, r5 + mov r0, #0xe7 + lsl r0, r0, #2 + strb r2, [r1, r0] + bl sub_0203769C + cmp r5, r0 + bne _02034622 + ldr r0, _02034630 ; =0x021D4130 + mov r2, #3 + ldr r0, [r0] + add r1, r0, r5 + mov r0, #0xe7 + lsl r0, r0, #2 + strb r2, [r1, r0] + pop {r3, r4, r5, pc} +_02034622: + ldr r0, _02034630 ; =0x021D4130 + mov r2, #1 + ldr r1, [r0] + ldr r0, _02034634 ; =0x000003A5 + strb r2, [r1, r0] +_0203462C: + pop {r3, r4, r5, pc} + nop +_02034630: .word 0x021D4130 +_02034634: .word 0x000003A5 + thumb_func_end sub_020345D0 + + thumb_func_start sub_02034638 +sub_02034638: ; 0x02034638 + push {r3, r4, r5, r6, r7, lr} + ldr r0, _020346CC ; =0x021D4130 + ldr r1, [r0] + ldr r0, _020346D0 ; =0x000003A5 + ldrb r0, [r1, r0] + cmp r0, #0 + bne _0203464A + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_0203464A: + bl sub_0203769C + cmp r0, #0 + beq _02034656 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02034656: + mov r0, #5 + bl sub_02037824 + cmp r0, #0 + bne _020346C8 + mov r4, #0 + add r5, r4, #0 + add r7, r4, #0 +_02034666: + ldr r0, _020346CC ; =0x021D4130 + ldr r2, [r0] + mov r0, #0xe7 + add r1, r2, r4 + lsl r0, r0, #2 + ldrb r0, [r1, r0] + cmp r0, #0 + beq _020346A6 + add r0, r2, r5 + add r0, #0x6e + strb r4, [r0] + ldr r0, _020346CC ; =0x021D4130 + ldr r6, [r0] + bl sub_02028ECC + add r2, r0, #0 + mov r0, #0xd3 + add r1, r6, r7 + lsl r0, r0, #2 + ldr r0, [r1, r0] + add r6, #0x2c + add r1, r6, r5 + bl MIi_CpuCopy8 + ldr r1, _020346CC ; =0x021D4130 + mov r0, #4 + ldr r1, [r1] + mov r2, #0x68 + add r1, #0xc + add r1, r1, r5 + bl sub_0203753C +_020346A6: + add r4, r4, #1 + add r5, #0x68 + add r7, r7, #4 + cmp r4, #8 + blt _02034666 + mov r1, #0 + mov r0, #5 + add r2, r1, #0 + bl sub_0203753C + ldr r0, _020346CC ; =0x021D4130 + mov r2, #0 + ldr r1, [r0] + ldr r0, _020346D0 ; =0x000003A5 + strb r2, [r1, r0] + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_020346C8: + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_020346CC: .word 0x021D4130 +_020346D0: .word 0x000003A5 + thumb_func_end sub_02034638 + + thumb_func_start sub_020346D4 +sub_020346D4: ; 0x020346D4 + ldr r0, _020346E0 ; =0x021D4130 + ldr r1, [r0] + ldr r0, _020346E4 ; =0x000003A5 + ldrb r0, [r1, r0] + bx lr + nop +_020346E0: .word 0x021D4130 +_020346E4: .word 0x000003A5 + thumb_func_end sub_020346D4 + + thumb_func_start sub_020346E8 +sub_020346E8: ; 0x020346E8 + push {r4, lr} + add r4, r0, #0 + ldr r0, _02034710 ; =0x021D4130 + ldr r1, [r0] + lsl r0, r4, #2 + add r1, r1, r0 + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r0, [r1, r0] + bl sub_02028EF0 + ldr r0, _02034710 ; =0x021D4130 + mov r2, #0 + ldr r0, [r0] + add r1, r0, r4 + mov r0, #0xe7 + lsl r0, r0, #2 + strb r2, [r1, r0] + pop {r4, pc} + nop +_02034710: .word 0x021D4130 + thumb_func_end sub_020346E8 + + thumb_func_start sub_02034714 +sub_02034714: ; 0x02034714 + ldr r1, _0203472C ; =0x021D4130 + ldr r1, [r1] + add r1, r1, r0 + mov r0, #0xe7 + lsl r0, r0, #2 + ldrb r0, [r1, r0] + cmp r0, #1 + bne _02034728 + mov r0, #1 + bx lr +_02034728: + mov r0, #0 + bx lr + .balign 4, 0 +_0203472C: .word 0x021D4130 + thumb_func_end sub_02034714 + + thumb_func_start sub_02034730 +sub_02034730: ; 0x02034730 + ldr r1, _0203474C ; =0x021D4130 + mov r2, #1 + ldr r1, [r1] + add r1, r1, r0 + mov r0, #0xe7 + lsl r0, r0, #2 + ldrb r0, [r1, r0] + cmp r0, #2 + beq _02034748 + cmp r0, #1 + beq _02034748 + mov r2, #0 +_02034748: + add r0, r2, #0 + bx lr + .balign 4, 0 +_0203474C: .word 0x021D4130 + thumb_func_end sub_02034730 + + thumb_func_start sub_02034750 +sub_02034750: ; 0x02034750 + ldr r1, _02034768 ; =0x021D4130 + ldr r1, [r1] + add r1, r1, r0 + mov r0, #0xe7 + lsl r0, r0, #2 + ldrb r0, [r1, r0] + cmp r0, #2 + bne _02034764 + mov r0, #1 + bx lr +_02034764: + mov r0, #0 + bx lr + .balign 4, 0 +_02034768: .word 0x021D4130 + thumb_func_end sub_02034750 + + thumb_func_start sub_0203476C +sub_0203476C: ; 0x0203476C + ldr r1, _0203477C ; =0x021D4130 + mov r2, #2 + ldr r1, [r1] + add r1, r1, r0 + mov r0, #0xe7 + lsl r0, r0, #2 + strb r2, [r1, r0] + bx lr + .balign 4, 0 +_0203477C: .word 0x021D4130 + thumb_func_end sub_0203476C + + thumb_func_start sub_02034780 +sub_02034780: ; 0x02034780 + ldr r1, _0203479C ; =0x021D4130 + mov r0, #0 + ldr r3, [r1] + mov r1, #0xe7 + lsl r1, r1, #2 +_0203478A: + ldrb r2, [r3, r1] + cmp r2, #1 + beq _0203479A + add r0, r0, #1 + add r3, r3, #1 + cmp r0, #8 + blt _0203478A + mov r0, #0xff +_0203479A: + bx lr + .balign 4, 0 +_0203479C: .word 0x021D4130 + thumb_func_end sub_02034780 + + thumb_func_start sub_020347A0 +sub_020347A0: ; 0x020347A0 + push {r3, r4} + ldr r1, _020347C8 ; =0x021D4130 + mov r0, #0 + ldr r4, [r1] + mov r1, #0xe7 + add r3, r0, #0 + lsl r1, r1, #2 +_020347AE: + ldrb r2, [r4, r1] + cmp r2, #2 + beq _020347B8 + cmp r2, #3 + bne _020347BA +_020347B8: + add r0, r0, #1 +_020347BA: + add r3, r3, #1 + add r4, r4, #1 + cmp r3, #8 + blt _020347AE + pop {r3, r4} + bx lr + nop +_020347C8: .word 0x021D4130 + thumb_func_end sub_020347A0 + + thumb_func_start sub_020347CC +sub_020347CC: ; 0x020347CC + push {r3, r4, r5, r6, r7, lr} + ldr r0, _02034814 ; =0x021D4130 + mov r5, #0 + ldr r0, [r0] + cmp r0, #0 + beq _02034810 + bl sub_02037454 + cmp r0, #0 + bne _020347E4 + add r0, r5, #0 + pop {r3, r4, r5, r6, r7, pc} +_020347E4: + mov r7, #0xe7 + ldr r6, _02034814 ; =0x021D4130 + add r4, r5, #0 + lsl r7, r7, #2 +_020347EC: + lsl r0, r4, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + bne _0203480A + ldr r0, [r6] + add r0, r0, r4 + ldrb r0, [r0, r7] + cmp r0, #0 + beq _0203480A + add r0, r4, #0 + bl sub_020346E8 + mov r5, #1 +_0203480A: + add r4, r4, #1 + cmp r4, #8 + blt _020347EC +_02034810: + add r0, r5, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02034814: .word 0x021D4130 + thumb_func_end sub_020347CC + + thumb_func_start sub_02034818 +sub_02034818: ; 0x02034818 + ldr r1, _02034848 ; =0x021D4130 + ldr r3, [r1] + cmp r3, #0 + bne _02034824 + mov r0, #0 + bx lr +_02034824: + mov r1, #0xe7 + add r2, r3, r0 + lsl r1, r1, #2 + ldrb r1, [r2, r1] + cmp r1, #1 + beq _02034838 + cmp r1, #2 + beq _02034838 + cmp r1, #3 + bne _02034844 +_02034838: + lsl r0, r0, #2 + add r1, r3, r0 + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r0, [r1, r0] + bx lr +_02034844: + mov r0, #0 + bx lr + .balign 4, 0 +_02034848: .word 0x021D4130 + thumb_func_end sub_02034818 + + thumb_func_start sub_0203484C +sub_0203484C: ; 0x0203484C + ldr r1, _0203486C ; =0x021D4130 + ldr r3, [r1] + mov r1, #0xe7 + add r2, r3, r0 + lsl r1, r1, #2 + ldrb r1, [r2, r1] + cmp r1, #0 + beq _02034866 + mov r1, #0x68 + add r3, #0x4c + mul r1, r0 + add r0, r3, r1 + bx lr +_02034866: + mov r0, #0 + bx lr + nop +_0203486C: .word 0x021D4130 + thumb_func_end sub_0203484C + + thumb_func_start sub_02034870 +sub_02034870: ; 0x02034870 + add r1, r0, #0 + ldr r0, _0203487C ; =0x021D4130 + ldr r3, _02034880 ; =sub_0203A378 + ldr r0, [r0] + ldr r0, [r0, #8] + bx r3 + .balign 4, 0 +_0203487C: .word 0x021D4130 +_02034880: .word sub_0203A378 + thumb_func_end sub_02034870 + + thumb_func_start sub_02034884 +sub_02034884: ; 0x02034884 + ldr r1, _020348A4 ; =0x021D4130 + ldr r3, [r1] + mov r1, #0xe7 + add r2, r3, r0 + lsl r1, r1, #2 + ldrb r1, [r2, r1] + cmp r1, #0 + beq _0203489E + mov r1, #0x68 + add r3, #0x58 + mul r1, r0 + add r0, r3, r1 + bx lr +_0203489E: + mov r0, #0 + bx lr + nop +_020348A4: .word 0x021D4130 + thumb_func_end sub_02034884 + + thumb_func_start sub_020348A8 +sub_020348A8: ; 0x020348A8 + ldr r1, _020348C8 ; =0x021D4130 + ldr r3, [r1] + mov r1, #0xe7 + add r2, r3, r0 + lsl r1, r1, #2 + ldrb r1, [r2, r1] + cmp r1, #0 + beq _020348C4 + mov r1, #0x68 + mul r1, r0 + add r0, r3, r1 + add r0, #0x6f + ldrb r0, [r0] + bx lr +_020348C4: + mov r0, #0 + bx lr + .balign 4, 0 +_020348C8: .word 0x021D4130 + thumb_func_end sub_020348A8 + + thumb_func_start sub_020348CC +sub_020348CC: ; 0x020348CC + ldr r1, _020348EC ; =0x021D4130 + ldr r3, [r1] + mov r1, #0xe7 + add r2, r3, r0 + lsl r1, r1, #2 + ldrb r1, [r2, r1] + cmp r1, #0 + beq _020348E8 + mov r1, #0x68 + mul r1, r0 + add r0, r3, r1 + add r0, #0x70 + ldrb r0, [r0] + bx lr +_020348E8: + mov r0, #0 + bx lr + .balign 4, 0 +_020348EC: .word 0x021D4130 + thumb_func_end sub_020348CC + + thumb_func_start sub_020348F0 +sub_020348F0: ; 0x020348F0 + push {r4, r5, r6, lr} + mov r4, #0 + add r5, r4, #0 + add r6, r4, #0 +_020348F8: + lsl r0, r4, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _0203494C + ldr r0, _02034958 ; =0x021D4130 + ldr r0, [r0] + add r1, r0, r4 + mov r0, #0xe7 + lsl r0, r0, #2 + ldrb r0, [r1, r0] + cmp r0, #0 + beq _0203494C + add r0, r4, #1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _0203494C + ldr r0, _02034958 ; =0x021D4130 + ldr r1, _0203495C ; =0x0000039D + ldr r0, [r0] + add r2, r0, r4 + ldrb r1, [r2, r1] + cmp r1, #0 + beq _0203494C + add r1, r6, #0 + add r2, r0, r5 +_02034934: + add r3, r2, #0 + add r3, #0x74 + ldrb r0, [r2, #0xc] + ldrb r3, [r3] + cmp r0, r3 + beq _02034944 + mov r0, #0 + pop {r4, r5, r6, pc} +_02034944: + add r1, r1, #1 + add r2, r2, #1 + cmp r1, #0x20 + blt _02034934 +_0203494C: + add r4, r4, #1 + add r5, #0x68 + cmp r4, #7 + blt _020348F8 + mov r0, #1 + pop {r4, r5, r6, pc} + .balign 4, 0 +_02034958: .word 0x021D4130 +_0203495C: .word 0x0000039D + thumb_func_end sub_020348F0 + + thumb_func_start sub_02034960 +sub_02034960: ; 0x02034960 + push {r3, r4, r5, r6, r7, lr} + add r7, r0, #0 + ldr r0, _02034A18 ; =0x021D4130 + add r6, r1, #0 + ldr r0, [r0] + cmp r0, #0 + beq _02034A14 + cmp r7, #2 + beq _02034980 + bl sub_0203769C + bl sub_020378AC + mov r1, #1 + and r0, r1 + str r0, [sp] +_02034980: + mov r4, #0 + bl sub_02037454 + cmp r0, #0 + ble _02034A14 + add r5, r4, #0 +_0203498C: + lsl r0, r4, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _02034A08 + ldr r0, _02034A18 ; =0x021D4130 + mov r1, #0xe7 + ldr r0, [r0] + lsl r1, r1, #2 + add r2, r0, r4 + ldrb r1, [r2, r1] + cmp r1, #0 + beq _02034A08 + cmp r7, #0 + bne _020349D2 + add r0, r4, #0 + bl sub_020378AC + mov r1, #1 + and r1, r0 + ldr r0, [sp] + cmp r0, r1 + beq _02034A08 + ldr r0, _02034A18 ; =0x021D4130 + mov r1, #0xdb + ldr r0, [r0] + lsl r1, r1, #2 + add r0, r0, r5 + ldrh r1, [r0, r1] + add r2, r1, r6 + mov r1, #0xdb + lsl r1, r1, #2 + strh r2, [r0, r1] + b _02034A08 +_020349D2: + cmp r7, #1 + bne _020349F8 + add r0, r4, #0 + bl sub_020378AC + mov r1, #1 + and r1, r0 + ldr r0, [sp] + cmp r0, r1 + beq _02034A08 + ldr r0, _02034A18 ; =0x021D4130 + ldr r1, _02034A1C ; =0x0000036E + ldr r0, [r0] + add r0, r0, r5 + ldrh r1, [r0, r1] + add r2, r1, r6 + ldr r1, _02034A1C ; =0x0000036E + strh r2, [r0, r1] + b _02034A08 +_020349F8: + mov r1, #0x37 + add r0, r0, r5 + lsl r1, r1, #4 + ldrh r1, [r0, r1] + add r2, r1, r6 + mov r1, #0x37 + lsl r1, r1, #4 + strh r2, [r0, r1] +_02034A08: + add r5, r5, #6 + add r4, r4, #1 + bl sub_02037454 + cmp r4, r0 + blt _0203498C +_02034A14: + pop {r3, r4, r5, r6, r7, pc} + nop +_02034A18: .word 0x021D4130 +_02034A1C: .word 0x0000036E + thumb_func_end sub_02034960 + + thumb_func_start sub_02034A20 +sub_02034A20: ; 0x02034A20 + push {r4, r5, r6, r7, lr} + sub sp, #0xc + add r7, r0, #0 + bl sub_0202C6F4 + str r0, [sp, #4] + mov r4, #0 + bl sub_02037454 + cmp r0, #0 + ble _02034A88 + add r5, r4, #0 +_02034A38: + add r0, r4, #0 + bl sub_0203484C + add r1, r0, #0 + beq _02034A7C + add r0, r7, #0 + add r2, sp, #8 + bl sub_0203A084 + cmp r0, #0 + beq _02034A52 + cmp r0, #1 + bne _02034A7C +_02034A52: + ldr r0, [sp, #8] + cmp r0, #0 + bge _02034A5C + bl GF_AssertFail +_02034A5C: + ldr r0, _02034AB8 ; =0x021D4130 + mov r2, #0xdb + ldr r0, [r0] + ldr r3, _02034ABC ; =0x0000036E + add r6, r0, r5 + mov r0, #0x37 + lsl r0, r0, #4 + ldrh r0, [r6, r0] + lsl r2, r2, #2 + str r0, [sp] + ldrh r2, [r6, r2] + ldrh r3, [r6, r3] + ldr r0, [sp, #4] + ldr r1, [sp, #8] + bl sub_0202C4F0 +_02034A7C: + add r5, r5, #6 + add r4, r4, #1 + bl sub_02037454 + cmp r4, r0 + blt _02034A38 +_02034A88: + mov r3, #0xdb + mov r2, #0 + lsl r3, r3, #2 + ldr r6, _02034AB8 ; =0x021D4130 + add r1, r2, #0 + add r0, r2, #0 + add r4, r3, #2 + add r5, r3, #4 +_02034A98: + ldr r7, [r6] + add r2, r2, #1 + add r7, r7, r1 + strh r0, [r7, r3] + ldr r7, [r6] + add r7, r7, r1 + strh r0, [r7, r4] + ldr r7, [r6] + add r7, r7, r1 + add r1, r1, #6 + strh r0, [r7, r5] + cmp r2, #8 + blt _02034A98 + add sp, #0xc + pop {r4, r5, r6, r7, pc} + nop +_02034AB8: .word 0x021D4130 +_02034ABC: .word 0x0000036E + thumb_func_end sub_02034A20 + + thumb_func_start sub_02034AC0 +sub_02034AC0: ; 0x02034AC0 + push {r4, lr} + add r4, r0, #0 + cmp r1, #1 + bne _02034AD2 + mov r0, #0 + mov r1, #1 + bl sub_02034960 + b _02034AE2 +_02034AD2: + mov r0, #0 + mvn r0, r0 + cmp r1, r0 + bne _02034AE2 + mov r0, #1 + add r1, r0, #0 + bl sub_02034960 +_02034AE2: + add r0, r4, #0 + bl sub_02034A20 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02034AC0 + + thumb_func_start sub_02034AEC +sub_02034AEC: ; 0x02034AEC + push {r4, lr} + add r4, r0, #0 + mov r0, #2 + bl sub_02034960 + add r0, r4, #0 + bl sub_02034A20 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02034AEC + + thumb_func_start sub_02034B00 +sub_02034B00: ; 0x02034B00 + ldr r1, _02034B08 ; =0x021D4130 + ldr r1, [r1] + str r0, [r1] + bx lr + .balign 4, 0 +_02034B08: .word 0x021D4130 + thumb_func_end sub_02034B00 + + thumb_func_start sub_02034B0C +sub_02034B0C: ; 0x02034B0C + push {r3, r4, r5, r6, r7, lr} + add r4, r0, #0 + ldr r0, _02034BCC ; =0x021D4134 + add r7, r1, #0 + ldr r0, [r0, #8] + cmp r0, #0 + bne _02034BCA + ldr r1, _02034BD0 ; =0x00000D98 + mov r0, #0xf + bl AllocFromHeap + ldr r1, _02034BCC ; =0x021D4134 + ldr r2, _02034BD0 ; =0x00000D98 + str r0, [r1, #8] + mov r1, #0 + bl MIi_CpuFill8 + bl sub_020335B4 + add r1, r0, #0 + mov r0, #0xf + bl AllocFromHeap + ldr r1, _02034BCC ; =0x021D4134 + ldr r2, [r1, #8] + ldr r1, _02034BD4 ; =0x00000D64 + str r0, [r2, r1] + bl sub_020335B4 + add r2, r0, #0 + ldr r0, _02034BCC ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02034BD4 ; =0x00000D64 + ldr r0, [r1, r0] + mov r1, #0 + bl MIi_CpuFill8 + bl sub_020290B4 + add r1, r0, #0 + mov r0, #0xf + bl AllocFromHeap + ldr r1, _02034BCC ; =0x021D4134 + ldr r2, [r1, #8] + ldr r1, _02034BD8 ; =0x00000D7C + str r0, [r2, r1] + bl sub_020290B4 + add r2, r0, #0 + ldr r0, _02034BCC ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02034BD8 ; =0x00000D7C + ldr r0, [r1, r0] + mov r1, #0 + bl MIi_CpuFill8 + mov r0, #0xf + mov r1, #0x90 + bl AllocFromHeap + ldr r2, _02034BCC ; =0x021D4134 + ldr r1, _02034BDC ; =0x00000D84 + ldr r3, [r2, #8] + str r0, [r3, r1] + ldr r6, [r2, #8] + mov r0, #0x1f + ldr r5, [r6, r1] + add r3, r5, #0 + and r3, r0 + mov r0, #0x20 + sub r0, r0, r3 + add r3, r0, r5 + add r0, r1, #4 + str r3, [r6, r0] + ldr r5, _02034BE0 ; =0x00000333 + ldr r3, [r2, #8] + sub r0, r1, #4 + str r5, [r3, r0] + add r0, r1, #0 + ldr r3, [r2, #8] + sub r0, #0xc + str r4, [r3, r0] + ldr r0, [r2, #8] + sub r1, #0x1c + add r0, r0, r1 + bl MailMsg_init + add r0, r7, #0 + bl sub_02034DF0 + bl sub_020DF250 + ldr r1, _02034BCC ; =0x021D4134 + strh r0, [r1] +_02034BCA: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02034BCC: .word 0x021D4134 +_02034BD0: .word 0x00000D98 +_02034BD4: .word 0x00000D64 +_02034BD8: .word 0x00000D7C +_02034BDC: .word 0x00000D84 +_02034BE0: .word 0x00000333 + thumb_func_end sub_02034B0C + + thumb_func_start sub_02034BE4 +sub_02034BE4: ; 0x02034BE4 + ldr r0, _02034BF4 ; =0x021D4134 + ldr r0, [r0, #8] + cmp r0, #0 + beq _02034BF0 + mov r0, #1 + bx lr +_02034BF0: + mov r0, #0 + bx lr + .balign 4, 0 +_02034BF4: .word 0x021D4134 + thumb_func_end sub_02034BE4 + + thumb_func_start sub_02034BF8 +sub_02034BF8: ; 0x02034BF8 + push {r4, r5} + mov r5, #0 + cmp r2, #0 + ble _02034C18 +_02034C00: + ldrb r4, [r0] + ldrb r3, [r1] + cmp r4, r3 + beq _02034C0E + mov r0, #0 + pop {r4, r5} + bx lr +_02034C0E: + add r5, r5, #1 + add r0, r0, #1 + add r1, r1, #1 + cmp r5, r2 + blt _02034C00 +_02034C18: + mov r0, #1 + pop {r4, r5} + bx lr + .balign 4, 0 + thumb_func_end sub_02034BF8 + + thumb_func_start sub_02034C20 +sub_02034C20: ; 0x02034C20 + push {r3, r4, r5, r6, r7, lr} + add r6, r0, #0 + bl sub_0203993C + add r5, r0, #0 + bl sub_02039954 + add r4, r6, #0 + add r7, r0, #0 + add r4, #0x50 + cmp r5, #0xe + beq _02034C62 + ldrb r0, [r4, #4] + bl sub_0203401C + cmp r0, #0 + beq _02034C4C + add r0, r5, #0 + bl sub_0203401C + cmp r0, #0 + bne _02034C62 +_02034C4C: + add r0, r4, #0 + add r0, #0x54 + ldrb r0, [r0] + cmp r0, #0 + beq _02034C5C + ldrb r0, [r4, #4] + cmp r0, #0xa + beq _02034C88 +_02034C5C: + ldrb r0, [r4, #4] + cmp r0, r5 + bne _02034C88 +_02034C62: + cmp r5, #0xe + beq _02034C6C + ldrb r0, [r4, #5] + cmp r0, r7 + bne _02034C88 +_02034C6C: + ldr r1, _02034C8C ; =0x021D4134 + add r0, r6, #0 + ldr r1, [r1, #8] + mov r2, #0xc0 + add r1, #0x54 + bl MIi_CpuCopy8 + ldr r0, _02034C8C ; =0x021D4134 + ldr r1, _02034C90 ; =0x00000D95 + ldr r3, [r0, #8] + mov r0, #0x40 + ldrb r2, [r3, r1] + orr r0, r2 + strb r0, [r3, r1] +_02034C88: + pop {r3, r4, r5, r6, r7, pc} + nop +_02034C8C: .word 0x021D4134 +_02034C90: .word 0x00000D95 + thumb_func_end sub_02034C20 + + thumb_func_start sub_02034C94 +sub_02034C94: ; 0x02034C94 + push {r3, r4, r5, r6, r7, lr} + ldr r0, _02034D50 ; =0x021D4134 + ldr r1, _02034D54 ; =0x00000D95 + ldr r3, [r0, #8] + ldrb r2, [r3, r1] + add r7, r3, #0 + add r7, #0x54 + lsl r0, r2, #0x19 + lsr r0, r0, #0x1f + beq _02034D4E + mov r0, #0x40 + mov r6, #0 + bic r2, r0 + strb r2, [r3, r1] + add r4, r6, #0 + add r5, r6, #0 +_02034CB4: + ldr r0, _02034D50 ; =0x021D4134 + ldr r1, _02034D58 ; =0x00000D44 + ldr r0, [r0, #8] + add r2, r0, r4 + ldrh r1, [r2, r1] + cmp r1, #0 + beq _02034CFC + mov r1, #0x46 + lsl r1, r1, #2 + add r0, r0, r1 + add r0, r0, r5 + add r1, r7, #4 + mov r2, #6 + bl sub_02034BF8 + cmp r0, #0 + beq _02034CFC + ldr r2, _02034D50 ; =0x021D4134 + mov r1, #0x4b + ldr r3, [r2, #8] + lsl r0, r6, #1 + add r3, r3, r0 + ldr r0, _02034D58 ; =0x00000D44 + lsl r1, r1, #2 + strh r1, [r3, r0] + ldr r2, [r2, #8] + sub r1, #0x18 + add r3, r2, r1 + mov r2, #0xc0 + add r1, r6, #0 + mul r1, r2 + add r0, r7, #0 + add r1, r3, r1 + bl MIi_CpuCopy8 + pop {r3, r4, r5, r6, r7, pc} +_02034CFC: + add r6, r6, #1 + add r4, r4, #2 + add r5, #0xc0 + cmp r6, #0x10 + blt _02034CB4 + ldr r0, _02034D50 ; =0x021D4134 + ldr r1, _02034D58 ; =0x00000D44 + ldr r0, [r0, #8] + mov r3, #0 + add r4, r0, #0 +_02034D10: + ldrh r2, [r4, r1] + cmp r2, #0 + beq _02034D1E + add r3, r3, #1 + add r4, r4, #2 + cmp r3, #0x10 + blt _02034D10 +_02034D1E: + cmp r3, #0x10 + bge _02034D4E + lsl r2, r3, #1 + mov r1, #0x4b + add r2, r0, r2 + ldr r0, _02034D58 ; =0x00000D44 + lsl r1, r1, #2 + strh r1, [r2, r0] + ldr r2, _02034D50 ; =0x021D4134 + sub r1, #0x18 + ldr r2, [r2, #8] + add r0, r7, #0 + add r4, r2, r1 + mov r2, #0xc0 + add r1, r3, #0 + mul r1, r2 + add r1, r4, r1 + bl MIi_CpuCopy8 + ldr r0, _02034D50 ; =0x021D4134 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _02034D5C ; =0x00000D74 + strb r2, [r1, r0] +_02034D4E: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02034D50: .word 0x021D4134 +_02034D54: .word 0x00000D95 +_02034D58: .word 0x00000D44 +_02034D5C: .word 0x00000D74 + thumb_func_end sub_02034C94 + + thumb_func_start sub_02034D60 +sub_02034D60: ; 0x02034D60 + push {r3, lr} + cmp r1, #0 + beq _02034D6A + bl sub_020D3F48 +_02034D6A: + ldr r0, _02034D74 ; =0x021D4134 + mov r1, #2 + str r1, [r0, #4] + pop {r3, pc} + nop +_02034D74: .word 0x021D4134 + thumb_func_end sub_02034D60 + + thumb_func_start sub_02034D78 +sub_02034D78: ; 0x02034D78 + ldr r0, _02034D84 ; =0x021D4134 + mov r1, #0 + str r1, [r0, #4] + ldr r3, _02034D88 ; =sub_0201A4CC + mov r0, #4 + bx r3 + .balign 4, 0 +_02034D84: .word 0x021D4134 +_02034D88: .word sub_0201A4CC + thumb_func_end sub_02034D78 + + thumb_func_start sub_02034D8C +sub_02034D8C: ; 0x02034D8C + push {r3, lr} + mov r0, #4 + bl sub_0201A4BC + ldr r0, _02034DB0 ; =0x021D4134 + mov r1, #1 + str r1, [r0, #4] + ldr r1, _02034DB4 ; =sub_02034D60 + mov r0, #8 + mov r2, #0 + bl sub_0209E00C + cmp r0, #1 + beq _02034DAC + bl sub_020D3F48 +_02034DAC: + pop {r3, pc} + nop +_02034DB0: .word 0x021D4134 +_02034DB4: .word sub_02034D60 + thumb_func_end sub_02034D8C + + thumb_func_start sub_02034DB8 +sub_02034DB8: ; 0x02034DB8 + ldr r0, _02034DC8 ; =0x021D4134 + ldr r0, [r0, #4] + cmp r0, #2 + bne _02034DC4 + mov r0, #1 + bx lr +_02034DC4: + mov r0, #0 + bx lr + .balign 4, 0 +_02034DC8: .word 0x021D4134 + thumb_func_end sub_02034DB8 + + thumb_func_start sub_02034DCC +sub_02034DCC: ; 0x02034DCC + ldr r0, _02034DDC ; =0x021D4134 + ldr r0, [r0, #4] + cmp r0, #0 + beq _02034DD8 + mov r0, #1 + bx lr +_02034DD8: + mov r0, #0 + bx lr + .balign 4, 0 +_02034DDC: .word 0x021D4134 + thumb_func_end sub_02034DCC + + thumb_func_start sub_02034DE0 +sub_02034DE0: ; 0x02034DE0 + ldr r3, _02034DE8 ; =sub_0209E248 + ldr r0, _02034DEC ; =sub_02034D78 + mov r1, #0 + bx r3 + .balign 4, 0 +_02034DE8: .word sub_0209E248 +_02034DEC: .word sub_02034D78 + thumb_func_end sub_02034DE0 + + thumb_func_start sub_02034DF0 +sub_02034DF0: ; 0x02034DF0 + push {r4, lr} + ldr r2, _02034E28 ; =0x021D4134 + add r1, r0, #0 + mov r0, #0xd7 + ldr r3, [r2, #8] + mov r4, #0 + lsl r0, r0, #4 + str r4, [r3, r0] + ldr r2, [r2, #8] + sub r0, #0xc + ldr r3, [r2, r0] + mov r0, #0x1f + add r2, r3, #0 + and r2, r0 + mov r0, #0x20 + sub r0, r0, r2 + add r0, r3, r0 + bl sub_02033528 + ldr r0, _02034E28 ; =0x021D4134 + ldr r1, [r0, #8] + mov r0, #0x36 + lsl r0, r0, #6 + ldr r0, [r1, r0] + bl sub_02033234 + pop {r4, pc} + nop +_02034E28: .word 0x021D4134 + thumb_func_end sub_02034DF0 + + thumb_func_start sub_02034E2C +sub_02034E2C: ; 0x02034E2C + push {r3, r4, r5, lr} + mov r4, #0 + ldr r2, _02034E5C ; =0x021D4134 + ldr r0, _02034E60 ; =0x00000D44 + add r5, r4, #0 + add r1, r4, #0 +_02034E38: + ldr r3, [r2, #8] + add r4, r4, #1 + add r3, r3, r5 + add r5, r5, #2 + strh r1, [r3, r0] + cmp r4, #0x10 + blt _02034E38 + ldr r0, _02034E5C ; =0x021D4134 + ldr r2, [r0, #8] + mov r0, #0x45 + lsl r0, r0, #2 + add r0, r2, r0 + mov r2, #3 + lsl r2, r2, #0xa + bl MIi_CpuFill8 + pop {r3, r4, r5, pc} + nop +_02034E5C: .word 0x021D4134 +_02034E60: .word 0x00000D44 + thumb_func_end sub_02034E2C + + thumb_func_start sub_02034E64 +sub_02034E64: ; 0x02034E64 + push {r3, r4} + ldr r1, _02034E84 ; =0x021D4134 + lsl r0, r0, #0x18 + ldr r2, [r1, #8] + ldr r4, _02034E88 ; =0x00000D95 + lsr r0, r0, #0x18 + ldrb r1, [r2, r4] + mov r3, #8 + lsl r0, r0, #0x1f + bic r1, r3 + lsr r0, r0, #0x1c + orr r0, r1 + strb r0, [r2, r4] + pop {r3, r4} + bx lr + nop +_02034E84: .word 0x021D4134 +_02034E88: .word 0x00000D95 + thumb_func_end sub_02034E64 + + thumb_func_start sub_02034E8C +sub_02034E8C: ; 0x02034E8C + push {r4, r5} + ldr r1, _02034EE8 ; =0x021D4134 + ldr r0, _02034EEC ; =0x00000D74 + ldr r3, [r1, #8] + mov r2, #0 + strb r2, [r3, r0] + add r3, r0, #0 + ldr r5, [r1, #8] + add r3, #0x21 + ldrb r4, [r5, r3] + mov r3, #1 + bic r4, r3 + add r3, r0, #0 + add r3, #0x21 + strb r4, [r5, r3] + add r3, r0, #0 + ldr r5, [r1, #8] + add r3, #0x21 + ldrb r4, [r5, r3] + mov r3, #4 + bic r4, r3 + add r3, r0, #0 + add r3, #0x21 + strb r4, [r5, r3] + add r3, r0, #0 + ldr r4, [r1, #8] + add r3, #0x1e + strb r2, [r4, r3] + add r3, r0, #0 + ldr r5, [r1, #8] + add r3, #0x21 + ldrb r4, [r5, r3] + mov r3, #0x10 + bic r4, r3 + add r3, r0, #0 + add r3, #0x21 + strb r4, [r5, r3] + add r3, r0, #0 + ldr r4, [r1, #8] + add r3, #0x20 + strb r2, [r4, r3] + ldr r1, [r1, #8] + add r0, #0x1f + strb r2, [r1, r0] + pop {r4, r5} + bx lr + .balign 4, 0 +_02034EE8: .word 0x021D4134 +_02034EEC: .word 0x00000D74 + thumb_func_end sub_02034E8C + + thumb_func_start sub_02034EF0 +sub_02034EF0: ; 0x02034EF0 + push {r3, r4, r5, lr} + add r5, r1, #0 + add r4, r2, #0 + bl sub_02034E8C + add r0, r5, #0 + bl sub_02034E64 + bl sub_02033A68 + ldr r0, _02034F54 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02034F58 ; =0x00000D93 + ldrb r0, [r1, r0] + cmp r0, #0 + bne _02034F22 + ldr r0, _02034F5C ; =sub_02036904 + mov r1, #0xe + bl sub_020337D0 + ldr r0, _02034F54 ; =0x021D4134 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _02034F58 ; =0x00000D93 + strb r2, [r1, r0] +_02034F22: + ldr r0, _02034F54 ; =0x021D4134 + ldr r3, _02034F60 ; =0x00000D95 + ldr r1, [r0, #8] + mov r2, #0x20 + ldrb r0, [r1, r3] + bic r0, r2 + lsl r2, r4, #0x18 + lsr r2, r2, #0x18 + lsl r2, r2, #0x1f + lsr r2, r2, #0x1a + orr r0, r2 + strb r0, [r1, r3] + bl sub_02033298 + cmp r0, #1 + bne _02034F4E + bl sub_020332C0 + cmp r0, #0 + beq _02034F4E + mov r0, #1 + pop {r3, r4, r5, pc} +_02034F4E: + mov r0, #0 + pop {r3, r4, r5, pc} + nop +_02034F54: .word 0x021D4134 +_02034F58: .word 0x00000D93 +_02034F5C: .word sub_02036904 +_02034F60: .word 0x00000D95 + thumb_func_end sub_02034EF0 + + thumb_func_start sub_02034F64 +sub_02034F64: ; 0x02034F64 + push {r4, lr} + sub sp, #8 + add r4, r1, #0 + bl sub_02034E8C + cmp r4, #0 + beq _02034F76 + bl sub_02034E2C +_02034F76: + ldr r0, _02034FD4 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02034FD8 ; =0x00000D93 + ldrb r0, [r1, r0] + cmp r0, #0 + bne _02034F94 + ldr r0, _02034FDC ; =sub_020367A8 + mov r1, #0xe + bl sub_020337D0 + ldr r0, _02034FD4 ; =0x021D4134 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _02034FD8 ; =0x00000D93 + strb r2, [r1, r0] +_02034F94: + bl sub_02033298 + cmp r0, #1 + bne _02034FCC + ldr r2, _02034FE0 ; =0x020F6A88 + add r0, sp, #0 + ldrb r3, [r2] + add r1, sp, #0 + strb r3, [r0] + ldrb r3, [r2, #1] + strb r3, [r0, #1] + ldrb r3, [r2, #2] + strb r3, [r0, #2] + ldrb r3, [r2, #3] + strb r3, [r0, #3] + ldrb r3, [r2, #4] + ldrb r2, [r2, #5] + strb r3, [r0, #4] + strb r2, [r0, #5] + ldr r0, _02034FE4 ; =sub_02034C20 + mov r2, #0 + bl sub_02032C1C + cmp r0, #0 + beq _02034FCC + add sp, #8 + mov r0, #1 + pop {r4, pc} +_02034FCC: + mov r0, #0 + add sp, #8 + pop {r4, pc} + nop +_02034FD4: .word 0x021D4134 +_02034FD8: .word 0x00000D93 +_02034FDC: .word sub_020367A8 +_02034FE0: .word 0x020F6A88 +_02034FE4: .word sub_02034C20 + thumb_func_end sub_02034F64 + + thumb_func_start sub_02034FE8 +sub_02034FE8: ; 0x02034FE8 + push {r3, lr} + ldr r0, _02035074 ; =0x021D4134 + ldr r1, [r0, #8] + cmp r1, #0 + bne _02034FF6 + mov r0, #1 + pop {r3, pc} +_02034FF6: + ldr r0, _02035078 ; =0x00000D94 + ldrb r0, [r1, r0] + cmp r0, #0 + beq _02035008 + cmp r0, #1 + beq _02035038 + cmp r0, #2 + beq _02035050 + b _0203506E +_02035008: + bl sub_02033990 + cmp r0, #0 + beq _02035020 + bl sub_02032E24 + ldr r0, _02035074 ; =0x021D4134 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _02035078 ; =0x00000D94 + strb r2, [r1, r0] + b _0203506E +_02035020: + bl sub_0203393C + cmp r0, #0 + bne _0203506E + bl sub_02033858 + ldr r0, _02035074 ; =0x021D4134 + mov r2, #2 + ldr r1, [r0, #8] + ldr r0, _02035078 ; =0x00000D94 + strb r2, [r1, r0] + b _0203506E +_02035038: + bl sub_0203393C + cmp r0, #0 + bne _0203506E + bl sub_02033858 + ldr r0, _02035074 ; =0x021D4134 + mov r2, #2 + ldr r1, [r0, #8] + ldr r0, _02035078 ; =0x00000D94 + strb r2, [r1, r0] + b _0203506E +_02035050: + bl sub_02033920 + cmp r0, #0 + beq _0203505C + mov r0, #1 + pop {r3, pc} +_0203505C: + bl sub_02033958 + cmp r0, #0 + beq _0203506E + ldr r0, _02035074 ; =0x021D4134 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _02035078 ; =0x00000D94 + strb r2, [r1, r0] +_0203506E: + mov r0, #0 + pop {r3, pc} + nop +_02035074: .word 0x021D4134 +_02035078: .word 0x00000D94 + thumb_func_end sub_02034FE8 + + thumb_func_start sub_0203507C +sub_0203507C: ; 0x0203507C + push {r3, lr} + ldr r0, _020350A0 ; =0x021D4134 + ldr r2, [r0, #8] + cmp r2, #0 + beq _0203509A + ldr r0, _020350A4 ; =0x00000D92 + ldrb r1, [r2, r0] + cmp r1, #0 + bne _0203509A + mov r1, #1 + strb r1, [r2, r0] + bl sub_02033858 + mov r0, #1 + pop {r3, pc} +_0203509A: + mov r0, #0 + pop {r3, pc} + nop +_020350A0: .word 0x021D4134 +_020350A4: .word 0x00000D92 + thumb_func_end sub_0203507C + + thumb_func_start sub_020350A8 +sub_020350A8: ; 0x020350A8 + push {r3, lr} + ldr r1, _020350CC ; =0x021D4134 + ldr r2, [r1, #8] + cmp r2, #0 + beq _020350C8 + cmp r0, #0 + ldr r0, _020350D0 ; =0x00000D92 + beq _020350BE + mov r1, #2 + strb r1, [r2, r0] + pop {r3, pc} +_020350BE: + mov r1, #0 + strb r1, [r2, r0] + mov r0, #1 + bl sub_02034DF0 +_020350C8: + pop {r3, pc} + nop +_020350CC: .word 0x021D4134 +_020350D0: .word 0x00000D92 + thumb_func_end sub_020350A8 + + thumb_func_start sub_020350D4 +sub_020350D4: ; 0x020350D4 + push {r3, lr} + ldr r0, _0203510C ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02035110 ; =0x00000D7C + ldr r0, [r1, r0] + bl FreeToHeap + ldr r0, _0203510C ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02035114 ; =0x00000D64 + ldr r0, [r1, r0] + bl FreeToHeap + ldr r0, _0203510C ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02035118 ; =0x00000D84 + ldr r0, [r1, r0] + bl FreeToHeap + ldr r0, _0203510C ; =0x021D4134 + ldr r0, [r0, #8] + bl FreeToHeap + ldr r0, _0203510C ; =0x021D4134 + mov r1, #0 + str r1, [r0, #8] + pop {r3, pc} + nop +_0203510C: .word 0x021D4134 +_02035110: .word 0x00000D7C +_02035114: .word 0x00000D64 +_02035118: .word 0x00000D84 + thumb_func_end sub_020350D4 + + thumb_func_start sub_0203511C +sub_0203511C: ; 0x0203511C + push {r4, lr} + bl sub_02037474 + cmp r0, #0 + bne _0203512A + mov r0, #0 + pop {r4, pc} +_0203512A: + ldr r1, _02035148 ; =0x021D4134 + mov r0, #0 + ldr r4, [r1, #8] + ldr r1, _0203514C ; =0x00000D44 + add r3, r0, #0 +_02035134: + ldrh r2, [r4, r1] + cmp r2, #0 + beq _0203513C + add r0, r0, #1 +_0203513C: + add r3, r3, #1 + add r4, r4, #2 + cmp r3, #0x10 + blt _02035134 + pop {r4, pc} + nop +_02035148: .word 0x021D4134 +_0203514C: .word 0x00000D44 + thumb_func_end sub_0203511C + + thumb_func_start sub_02035150 +sub_02035150: ; 0x02035150 + push {r3, r4, r5, lr} + ldr r1, _0203517C ; =0x021D4134 + mov r4, #0 + ldr r5, [r1, #8] + ldr r1, _02035180 ; =0x00000D44 + add r3, r4, #0 +_0203515C: + ldrh r2, [r5, r1] + cmp r2, #0 + beq _0203516C + cmp r4, r0 + bne _0203516A + add r0, r3, #0 + pop {r3, r4, r5, pc} +_0203516A: + add r4, r4, #1 +_0203516C: + add r3, r3, #1 + add r5, r5, #2 + cmp r3, #0x10 + blt _0203515C + bl GF_AssertFail + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203517C: .word 0x021D4134 +_02035180: .word 0x00000D44 + thumb_func_end sub_02035150 + + thumb_func_start sub_02035184 +sub_02035184: ; 0x02035184 + ldr r0, _02035190 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02035194 ; =0x00000D74 + ldrb r0, [r1, r0] + bx lr + nop +_02035190: .word 0x021D4134 +_02035194: .word 0x00000D74 + thumb_func_end sub_02035184 + + thumb_func_start sub_02035198 +sub_02035198: ; 0x02035198 + ldr r0, _020351A4 ; =0x021D4134 + mov r2, #0 + ldr r1, [r0, #8] + ldr r0, _020351A8 ; =0x00000D74 + strb r2, [r1, r0] + bx lr + .balign 4, 0 +_020351A4: .word 0x021D4134 +_020351A8: .word 0x00000D74 + thumb_func_end sub_02035198 + + thumb_func_start sub_020351AC +sub_020351AC: ; 0x020351AC + ldr r1, _020351D4 ; =0x021D4134 + ldr r3, [r1, #8] + lsl r1, r0, #1 + add r2, r3, r1 + ldr r1, _020351D8 ; =0x00000D44 + ldrh r1, [r2, r1] + cmp r1, #0 + beq _020351D0 + mov r1, #0xc0 + add r2, r0, #0 + mul r2, r1 + add r0, r3, r2 + add r1, #0xaa + ldrb r0, [r0, r1] + cmp r0, #0 + bne _020351D2 + mov r0, #1 + bx lr +_020351D0: + mov r0, #0 +_020351D2: + bx lr + .balign 4, 0 +_020351D4: .word 0x021D4134 +_020351D8: .word 0x00000D44 + thumb_func_end sub_020351AC + + thumb_func_start sub_020351DC +sub_020351DC: ; 0x020351DC + push {r4, r5, r6, lr} + add r4, r1, #0 + ldr r1, _02035210 ; =0x021D4134 + mov r5, #0 + ldr r6, [r1, #8] + ldr r1, _02035214 ; =0x00000D44 + add r3, r5, #0 +_020351EA: + ldrh r2, [r6, r1] + cmp r2, #0 + beq _02035204 + cmp r0, r5 + bne _02035202 + add r0, r3, #0 + bl sub_02035798 + add r1, r4, #0 + bl sub_02028EE4 + pop {r4, r5, r6, pc} +_02035202: + add r5, r5, #1 +_02035204: + add r3, r3, #1 + add r6, r6, #2 + cmp r3, #0x10 + blt _020351EA + pop {r4, r5, r6, pc} + nop +_02035210: .word 0x021D4134 +_02035214: .word 0x00000D44 + thumb_func_end sub_020351DC + + thumb_func_start sub_02035218 +sub_02035218: ; 0x02035218 + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_02033298 + cmp r0, #2 + bne _0203522C + bl sub_02032E24 + mov r0, #0 + pop {r3, r4, r5, pc} +_0203522C: + bl sub_02033298 + cmp r0, #1 + bne _02035282 + bl sub_0203993C + ldr r2, _02035288 ; =0x021D4134 + mov r1, #0xc0 + add r4, r5, #0 + mul r4, r1 + ldr r3, [r2, #8] + add r1, #0x8a + add r2, r3, r4 + ldrh r2, [r2, r1] + mov r1, #0xd9 + lsl r1, r1, #4 + strb r2, [r3, r1] + bl sub_0203401C + cmp r0, #0 + beq _0203526C + ldr r1, _02035288 ; =0x021D4134 + mov r0, #1 + ldr r2, [r1, #8] + mov r1, #0x46 + lsl r1, r1, #2 + add r1, r2, r1 + add r1, r1, r4 + mov r2, #0 + bl sub_02032B84 + b _0203527E +_0203526C: + ldr r1, _02035288 ; =0x021D4134 + mov r0, #1 + ldr r2, [r1, #8] + mov r1, #0x45 + lsl r1, r1, #2 + add r1, r2, r1 + add r1, r1, r4 + bl sub_0203373C +_0203527E: + mov r0, #1 + pop {r3, r4, r5, pc} +_02035282: + mov r0, #0 + pop {r3, r4, r5, pc} + nop +_02035288: .word 0x021D4134 + thumb_func_end sub_02035218 + + thumb_func_start sub_0203528C +sub_0203528C: ; 0x0203528C + push {r3, r4, r5, r6, r7, lr} + bl sub_02034C94 + mov r4, #0 + ldr r1, _020352CC ; =0x021D4134 + ldr r0, _020352D0 ; =0x00000D44 + add r5, r4, #0 + mov r2, #1 +_0203529C: + ldr r3, [r1, #8] + add r3, r3, r5 + ldrh r6, [r3, r0] + cmp r6, #0 + beq _020352C0 + beq _020352C0 + ldr r6, _020352D0 ; =0x00000D44 + ldrh r6, [r3, r6] + sub r7, r6, #1 + ldr r6, _020352D0 ; =0x00000D44 + strh r7, [r3, r6] + ldr r3, [r1, #8] + add r7, r3, r5 + ldrh r6, [r7, r6] + cmp r6, #0 + bne _020352C0 + ldr r6, _020352D4 ; =0x00000D74 + strb r2, [r3, r6] +_020352C0: + add r4, r4, #1 + add r5, r5, #2 + cmp r4, #0x10 + blt _0203529C + pop {r3, r4, r5, r6, r7, pc} + nop +_020352CC: .word 0x021D4134 +_020352D0: .word 0x00000D44 +_020352D4: .word 0x00000D74 + thumb_func_end sub_0203528C + + thumb_func_start sub_020352D8 +sub_020352D8: ; 0x020352D8 + push {r3, r4, r5, lr} + bl sub_0203993C + add r5, r0, #0 + bl sub_02035784 + add r4, r0, #0 + cmp r5, #0xf + beq _02035360 + ldr r0, _020353A8 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _020353AC ; =0x00000D88 + ldr r5, [r1, r0] + bl sub_020290B4 + cmp r0, #0x20 + ble _020352FE + bl GF_AssertFail +_020352FE: + bl sub_02028ECC + cmp r0, #0x20 + beq _0203530A + bl GF_AssertFail +_0203530A: + bl sub_02028ECC + add r1, r5, #0 + add r2, r0, #0 + add r0, r4, #0 + add r1, #0x10 + bl MIi_CpuCopy8 + bl sub_020290B4 + add r2, r0, #0 + ldr r0, _020353A8 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _020353B0 ; =0x00000D7C + ldr r0, [r1, r0] + add r1, r5, #0 + add r1, #0x30 + bl MIi_CpuCopy8 + add r0, r4, #0 + bl PlayerProfile_GetTrainerID + str r0, [r5] + bl sub_0203993C + strb r0, [r5, #4] + bl sub_02039954 + strb r0, [r5, #5] + ldr r0, _020353A8 ; =0x021D4134 + mov r2, #8 + ldr r1, [r0, #8] + ldr r0, _020353B4 ; =0x00000D68 + add r0, r1, r0 + add r1, r5, #0 + add r1, #8 + bl MIi_CpuCopy8 + bl sub_02033AB8 + add r5, #0x54 + strb r0, [r5] + b _02035388 +_02035360: + ldr r1, _020353A8 ; =0x021D4134 + ldr r2, [r1, #8] + ldr r1, _020353AC ; =0x00000D88 + ldr r4, [r2, r1] + bl PlayerProfile_GetTrainerID + str r0, [r4] + bl sub_0203993C + strb r0, [r4, #4] + bl sub_02039954 + strb r0, [r4, #5] + ldr r0, _020353A8 ; =0x021D4134 + add r4, #8 + ldr r0, [r0, #8] + add r1, r4, #0 + mov r2, #0x54 + bl MIi_CpuCopy8 +_02035388: + ldr r0, _020353A8 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _020353AC ; =0x00000D88 + ldr r0, [r1, r0] + mov r1, #0x5c + bl DC_FlushRange + ldr r0, _020353A8 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _020353AC ; =0x00000D88 + ldr r0, [r1, r0] + mov r1, #0x5c + bl sub_02033240 + pop {r3, r4, r5, pc} + nop +_020353A8: .word 0x021D4134 +_020353AC: .word 0x00000D88 +_020353B0: .word 0x00000D7C +_020353B4: .word 0x00000D68 + thumb_func_end sub_020352D8 + + thumb_func_start sub_020353B8 +sub_020353B8: ; 0x020353B8 + push {r4, lr} + ldr r0, _02035404 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02035408 ; =0x00000D88 + ldr r4, [r1, r0] + bl sub_02035610 + ldrb r1, [r4, #6] + cmp r1, r0 + beq _02035402 + bl sub_02035610 + strb r0, [r4, #6] + ldr r0, _02035404 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02035408 ; =0x00000D88 + ldr r0, [r1, r0] + mov r1, #0x5c + bl DC_FlushRange + ldr r0, _02035404 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02035408 ; =0x00000D88 + ldr r0, [r1, r0] + mov r1, #0x5c + bl sub_02033240 + ldr r3, _02035404 ; =0x021D4134 + ldr r2, _02035408 ; =0x00000D88 + ldr r4, [r3, #8] + ldrh r3, [r3] + ldr r0, [r4, r2] + sub r2, #8 + ldr r2, [r4, r2] + mov r1, #0x5c + bl sub_020339B4 +_02035402: + pop {r4, pc} + .balign 4, 0 +_02035404: .word 0x021D4134 +_02035408: .word 0x00000D88 + thumb_func_end sub_020353B8 + + thumb_func_start sub_0203540C +sub_0203540C: ; 0x0203540C + push {r4, r5, r6, lr} + sub sp, #8 + add r4, r0, #0 + bl sub_02033298 + add r5, r0, #0 + bl sub_020347CC + add r6, r0, #0 + bl sub_020353B8 + bl sub_020338F4 + cmp r0, #0 + bne _0203544A + bl sub_0203567C + cmp r0, #0 + bne _0203544A + ldr r0, _020355AC ; =0x021D4134 + ldr r3, _020355B0 ; =0x00000D95 + ldr r1, [r0, #8] + ldrb r0, [r1, r3] + lsl r2, r0, #0x1d + lsr r2, r2, #0x1f + beq _0203544A + mov r2, #1 + bic r0, r2 + mov r2, #1 + orr r0, r2 + strb r0, [r1, r3] +_0203544A: + ldr r0, _020355AC ; =0x021D4134 + ldr r3, _020355B4 ; =0x00000D8E + ldr r2, [r0, #8] + ldr r0, _020355B8 ; =0x0000FFFF + ldrh r1, [r2, r3] + cmp r1, r0 + bne _0203545A + strh r4, [r2, r3] +_0203545A: + ldr r0, _020355AC ; =0x021D4134 + ldr r3, _020355B0 ; =0x00000D95 + ldr r1, [r0, #8] + ldrb r0, [r1, r3] + lsl r2, r0, #0x1e + lsr r2, r2, #0x1f + beq _02035490 + sub r2, r3, #7 + ldrh r2, [r1, r2] + cmp r2, r4 + bls _0203547A + mov r2, #1 + bic r0, r2 + mov r2, #1 + orr r0, r2 + strb r0, [r1, r3] +_0203547A: + cmp r6, #0 + beq _02035490 + ldr r0, _020355AC ; =0x021D4134 + ldr r2, _020355B0 ; =0x00000D95 + ldr r0, [r0, #8] + mov r1, #1 + ldrb r3, [r0, r2] + bic r3, r1 + mov r1, #1 + orr r1, r3 + strb r1, [r0, r2] +_02035490: + bl sub_020332AC + cmp r0, #0x19 + bne _0203549E + mov r0, #0 + bl sub_020399DC +_0203549E: + cmp r5, #9 + bls _020354A4 + b _020355A6 +_020354A4: + add r0, r5, r5 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_020354B0: ; jump table + .short _020354C4 - _020354B0 - 2 ; case 0 + .short _020354E4 - _020354B0 - 2 ; case 1 + .short _020355A6 - _020354B0 - 2 ; case 2 + .short _020355A6 - _020354B0 - 2 ; case 3 + .short _020355A6 - _020354B0 - 2 ; case 4 + .short _020355A6 - _020354B0 - 2 ; case 5 + .short _020355A6 - _020354B0 - 2 ; case 6 + .short _02035528 - _020354B0 - 2 ; case 7 + .short _0203550E - _020354B0 - 2 ; case 8 + .short _0203550E - _020354B0 - 2 ; case 9 +_020354C4: + ldr r0, _020355AC ; =0x021D4134 + ldr r2, [r0, #8] + ldr r0, _020355BC ; =0x00000D92 + ldrb r1, [r2, r0] + cmp r1, #1 + bne _020354D8 + bl sub_020350D4 + add sp, #8 + pop {r4, r5, r6, pc} +_020354D8: + cmp r1, #2 + bne _020355A6 + mov r1, #3 + strb r1, [r2, r0] + add sp, #8 + pop {r4, r5, r6, pc} +_020354E4: + ldr r0, _020355AC ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _020355BC ; =0x00000D92 + ldrb r0, [r1, r0] + cmp r0, #1 + bne _020354F8 + bl sub_020338D0 + cmp r0, #0 + bne _020355A6 +_020354F8: + ldr r0, _020355AC ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _020355BC ; =0x00000D92 + ldrb r0, [r1, r0] + cmp r0, #2 + bne _020355A6 + bl sub_020338D0 + add sp, #8 + cmp r0, #0 + pop {r4, r5, r6, pc} +_0203550E: + ldr r0, _020355AC ; =0x021D4134 + ldr r3, [r0, #8] + cmp r3, #0 + beq _020355A6 + ldr r1, _020355B0 ; =0x00000D95 + mov r0, #1 + ldrb r2, [r3, r1] + add sp, #8 + bic r2, r0 + mov r0, #1 + orr r0, r2 + strb r0, [r3, r1] + pop {r4, r5, r6, pc} +_02035528: + bl sub_02033468 + ldr r3, _020355AC ; =0x021D4134 + ldr r2, _020355C0 ; =0x00000D91 + ldr r4, [r3, #8] + ldrb r1, [r4, r2] + cmp r1, #0 + bne _02035544 + sub r1, r2, #5 + strh r0, [r4, r1] + ldr r0, [r3, #8] + mov r1, #5 + strb r1, [r0, r2] + b _02035548 +_02035544: + sub r0, r1, #1 + strb r0, [r4, r2] +_02035548: + ldr r0, _020355AC ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _020355C4 ; =0x00000D8C + ldrh r5, [r1, r0] + add r0, #9 + ldrb r0, [r1, r0] + lsl r0, r0, #0x1c + lsr r0, r0, #0x1f + beq _02035562 + bl sub_020DF250 + ldr r1, _020355AC ; =0x021D4134 + strh r0, [r1] +_02035562: + bl sub_020352D8 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r4, r0, #0 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02035724 + str r0, [sp] + ldr r1, _020355AC ; =0x021D4134 + ldr r0, _020355B0 ; =0x00000D95 + ldr r2, [r1, #8] + add r3, r4, #0 + ldrb r0, [r2, r0] + add r2, r5, #0 + lsl r0, r0, #0x1a + lsr r0, r0, #0x1f + str r0, [sp, #4] + ldrh r1, [r1] + mov r0, #0 + bl sub_02033668 + ldr r0, _020355AC ; =0x021D4134 + ldr r1, [r0, #8] + mov r0, #0xd9 + lsl r0, r0, #4 + strb r5, [r1, r0] +_020355A6: + add sp, #8 + pop {r4, r5, r6, pc} + nop +_020355AC: .word 0x021D4134 +_020355B0: .word 0x00000D95 +_020355B4: .word 0x00000D8E +_020355B8: .word 0x0000FFFF +_020355BC: .word 0x00000D92 +_020355C0: .word 0x00000D91 +_020355C4: .word 0x00000D8C + thumb_func_end sub_0203540C + + thumb_func_start sub_020355C8 +sub_020355C8: ; 0x020355C8 + push {r3, lr} + ldr r1, _020355D8 ; =0x021D4134 + ldr r1, [r1, #8] + cmp r1, #0 + beq _020355D6 + bl sub_0203540C +_020355D6: + pop {r3, pc} + .balign 4, 0 +_020355D8: .word 0x021D4134 + thumb_func_end sub_020355C8 + + thumb_func_start sub_020355DC +sub_020355DC: ; 0x020355DC + push {r4, lr} + add r4, r0, #0 + ldr r0, _0203560C ; =0x021D4134 + ldr r0, [r0, #8] + cmp r0, #0 + bne _020355EC + mov r0, #0 + pop {r4, pc} +_020355EC: + bl sub_02033298 + cmp r0, #4 + beq _020355F8 + mov r0, #0 + pop {r4, pc} +_020355F8: + bl sub_02033250 + mov r2, #1 + add r1, r2, #0 + lsl r1, r4 + tst r0, r1 + bne _02035608 + mov r2, #0 +_02035608: + add r0, r2, #0 + pop {r4, pc} + .balign 4, 0 +_0203560C: .word 0x021D4134 + thumb_func_end sub_020355DC + + thumb_func_start sub_02035610 +sub_02035610: ; 0x02035610 + push {r3, r4, r5, lr} + mov r4, #0 + add r5, r4, #0 +_02035616: + lsl r0, r5, #0x10 + lsr r0, r0, #0x10 + bl sub_020355DC + cmp r0, #0 + beq _02035624 + add r4, r4, #1 +_02035624: + add r5, r5, #1 + cmp r5, #8 + blt _02035616 + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_02035610 + + thumb_func_start sub_02035630 +sub_02035630: ; 0x02035630 + ldr r0, _02035648 ; =0x021D4134 + ldr r1, [r0, #8] + cmp r1, #0 + beq _02035644 + ldr r0, _0203564C ; =0x00000D92 + ldrb r0, [r1, r0] + cmp r0, #3 + bne _02035644 + mov r0, #1 + bx lr +_02035644: + mov r0, #0 + bx lr + .balign 4, 0 +_02035648: .word 0x021D4134 +_0203564C: .word 0x00000D92 + thumb_func_end sub_02035630 + + thumb_func_start sub_02035650 +sub_02035650: ; 0x02035650 + ldr r0, _02035660 ; =0x021D4134 + ldr r0, [r0, #8] + cmp r0, #0 + beq _0203565C + mov r0, #1 + bx lr +_0203565C: + mov r0, #0 + bx lr + .balign 4, 0 +_02035660: .word 0x021D4134 + thumb_func_end sub_02035650 + + thumb_func_start sub_02035664 +sub_02035664: ; 0x02035664 + push {r3, lr} + ldr r0, _02035678 ; =0x021D4134 + ldr r0, [r0, #8] + cmp r0, #0 + beq _02035674 + bl sub_02033920 + pop {r3, pc} +_02035674: + mov r0, #1 + pop {r3, pc} + .balign 4, 0 +_02035678: .word 0x021D4134 + thumb_func_end sub_02035664 + + thumb_func_start sub_0203567C +sub_0203567C: ; 0x0203567C + push {r3, lr} + ldr r0, _02035694 ; =0x021D4134 + ldr r0, [r0, #8] + cmp r0, #0 + beq _02035690 + bl sub_02033250 + ldr r1, _02035698 ; =0x0000FFFE + and r0, r1 + pop {r3, pc} +_02035690: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 +_02035694: .word 0x021D4134 +_02035698: .word 0x0000FFFE + thumb_func_end sub_0203567C + + thumb_func_start sub_0203569C +sub_0203569C: ; 0x0203569C + ldr r0, _020356B8 ; =0x021D4134 + ldr r1, [r0, #8] + cmp r1, #0 + beq _020356B2 + ldr r0, _020356BC ; =0x00000D95 + ldrb r0, [r1, r0] + lsl r0, r0, #0x1f + lsr r0, r0, #0x1f + beq _020356B2 + mov r0, #1 + bx lr +_020356B2: + mov r0, #0 + bx lr + nop +_020356B8: .word 0x021D4134 +_020356BC: .word 0x00000D95 + thumb_func_end sub_0203569C + + thumb_func_start sub_020356C0 +sub_020356C0: ; 0x020356C0 + push {r3, r4} + ldr r1, _020356E4 ; =0x021D4134 + ldr r2, [r1, #8] + cmp r2, #0 + beq _020356DE + ldr r4, _020356E8 ; =0x00000D95 + lsl r0, r0, #0x18 + ldrb r1, [r2, r4] + lsr r0, r0, #0x18 + mov r3, #4 + lsl r0, r0, #0x1f + bic r1, r3 + lsr r0, r0, #0x1d + orr r0, r1 + strb r0, [r2, r4] +_020356DE: + pop {r3, r4} + bx lr + nop +_020356E4: .word 0x021D4134 +_020356E8: .word 0x00000D95 + thumb_func_end sub_020356C0 + + thumb_func_start sub_020356EC +sub_020356EC: ; 0x020356EC + push {r4, r5} + ldr r5, _02035718 ; =0x021D4134 + ldr r2, [r5, #8] + cmp r2, #0 + beq _02035712 + ldr r4, _0203571C ; =0x00000D95 + lsl r0, r0, #0x18 + ldrb r1, [r2, r4] + lsr r0, r0, #0x18 + mov r3, #2 + lsl r0, r0, #0x1f + bic r1, r3 + lsr r0, r0, #0x1e + orr r0, r1 + strb r0, [r2, r4] + ldr r2, _02035720 ; =0x0000FFFF + ldr r1, [r5, #8] + sub r0, r4, #7 + strh r2, [r1, r0] +_02035712: + pop {r4, r5} + bx lr + nop +_02035718: .word 0x021D4134 +_0203571C: .word 0x00000D95 +_02035720: .word 0x0000FFFF + thumb_func_end sub_020356EC + + thumb_func_start sub_02035724 +sub_02035724: ; 0x02035724 + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_020DEFD4 + add r4, r0, #0 + cmp r5, #0x29 + blo _02035736 + bl GF_AssertFail +_02035736: + cmp r5, #0xa + bne _02035740 + lsl r0, r4, #0xe + lsr r0, r0, #0x10 + pop {r3, r4, r5, pc} +_02035740: + cmp r5, #9 + beq _02035748 + cmp r5, #0xd + bne _0203574E +_02035748: + lsl r0, r4, #0xe + lsr r0, r0, #0x10 + pop {r3, r4, r5, pc} +_0203574E: + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_02035724 + + thumb_func_start sub_02035754 +sub_02035754: ; 0x02035754 + ldr r1, _0203577C ; =0x021D4134 + ldr r3, [r1, #8] + cmp r3, #0 + beq _02035776 + lsl r1, r0, #1 + add r2, r3, r1 + ldr r1, _02035780 ; =0x00000D44 + ldrh r1, [r2, r1] + cmp r1, #0 + beq _02035776 + mov r1, #0x45 + lsl r1, r1, #2 + add r2, r3, r1 + mov r1, #0xc0 + mul r1, r0 + add r0, r2, r1 + bx lr +_02035776: + mov r0, #0 + bx lr + nop +_0203577C: .word 0x021D4134 +_02035780: .word 0x00000D44 + thumb_func_end sub_02035754 + + thumb_func_start sub_02035784 +sub_02035784: ; 0x02035784 + ldr r0, _02035790 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02035794 ; =0x00000D78 + ldr r0, [r1, r0] + bx lr + nop +_02035790: .word 0x021D4134 +_02035794: .word 0x00000D78 + thumb_func_end sub_02035784 + + thumb_func_start sub_02035798 +sub_02035798: ; 0x02035798 + ldr r1, _020357BC ; =0x021D4134 + ldr r3, [r1, #8] + lsl r1, r0, #1 + add r2, r3, r1 + ldr r1, _020357C0 ; =0x00000D44 + ldrh r1, [r2, r1] + cmp r1, #0 + bne _020357AC + mov r0, #0 + bx lr +_020357AC: + mov r1, #0x59 + lsl r1, r1, #2 + add r2, r3, r1 + mov r1, #0xc0 + mul r1, r0 + add r0, r2, r1 + add r0, #0x10 + bx lr + .balign 4, 0 +_020357BC: .word 0x021D4134 +_020357C0: .word 0x00000D44 + thumb_func_end sub_02035798 + + thumb_func_start sub_020357C4 +sub_020357C4: ; 0x020357C4 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, _020357F4 ; =0x021D4134 + add r4, r1, #0 + ldr r0, [r0, #8] + cmp r0, #0 + beq _020357F0 + cmp r4, #8 + blt _020357DA + bl GF_AssertFail +_020357DA: + ldr r1, _020357F4 ; =0x021D4134 + add r0, r5, #0 + ldr r2, [r1, #8] + ldr r1, _020357F8 ; =0x00000D14 + add r3, r2, r1 + mov r2, #6 + add r1, r4, #0 + mul r1, r2 + add r1, r3, r1 + bl MIi_CpuCopy8 +_020357F0: + pop {r3, r4, r5, pc} + nop +_020357F4: .word 0x021D4134 +_020357F8: .word 0x00000D14 + thumb_func_end sub_020357C4 + + thumb_func_start sub_020357FC +sub_020357FC: ; 0x020357FC + ldr r0, _02035814 ; =0x021D4134 + ldr r1, [r0, #8] + cmp r1, #0 + beq _0203580E + ldr r0, _02035818 ; =0x00000D95 + ldrb r0, [r1, r0] + lsl r0, r0, #0x1b + lsr r0, r0, #0x1f + bx lr +_0203580E: + mov r0, #0 + bx lr + nop +_02035814: .word 0x021D4134 +_02035818: .word 0x00000D95 + thumb_func_end sub_020357FC + + thumb_func_start sub_0203581C +sub_0203581C: ; 0x0203581C + ldr r0, _02035830 ; =0x021D4134 + ldr r3, [r0, #8] + cmp r3, #0 + beq _0203582E + ldr r1, _02035834 ; =0x00000D95 + mov r0, #0x10 + ldrb r2, [r3, r1] + orr r0, r2 + strb r0, [r3, r1] +_0203582E: + bx lr + .balign 4, 0 +_02035830: .word 0x021D4134 +_02035834: .word 0x00000D95 + thumb_func_end sub_0203581C + + thumb_func_start sub_02035838 +sub_02035838: ; 0x02035838 + ldr r1, _02035848 ; =0x021D4134 + ldr r3, _0203584C ; =MIi_CpuCopy8 + ldr r2, [r1, #8] + ldr r1, _02035850 ; =0x00000D68 + add r1, r2, r1 + mov r2, #8 + bx r3 + nop +_02035848: .word 0x021D4134 +_0203584C: .word MIi_CpuCopy8 +_02035850: .word 0x00000D68 + thumb_func_end sub_02035838 + + thumb_func_start sub_02035854 +sub_02035854: ; 0x02035854 + push {r4, lr} + add r4, r0, #0 + bl sub_020290B4 + ldr r1, _02035870 ; =0x021D4134 + add r2, r0, #0 + ldr r3, [r1, #8] + ldr r1, _02035874 ; =0x00000D7C + add r0, r4, #0 + ldr r1, [r3, r1] + bl MIi_CpuCopy8 + pop {r4, pc} + nop +_02035870: .word 0x021D4134 +_02035874: .word 0x00000D7C + thumb_func_end sub_02035854 + + thumb_func_start sub_02035878 +sub_02035878: ; 0x02035878 + ldr r0, _02035884 ; =0x021D4134 + ldr r1, [r0, #8] + ldr r0, _02035888 ; =0x00000D7C + ldr r0, [r1, r0] + bx lr + nop +_02035884: .word 0x021D4134 +_02035888: .word 0x00000D7C + thumb_func_end sub_02035878 + + thumb_func_start sub_0203588C +sub_0203588C: ; 0x0203588C + push {r4, lr} + bl sub_020352D8 + ldr r3, _020358A8 ; =0x021D4134 + ldr r2, _020358AC ; =0x00000D88 + ldr r4, [r3, #8] + ldrh r3, [r3] + ldr r0, [r4, r2] + sub r2, #8 + ldr r2, [r4, r2] + mov r1, #0x5c + bl sub_020339B4 + pop {r4, pc} + .balign 4, 0 +_020358A8: .word 0x021D4134 +_020358AC: .word 0x00000D88 + thumb_func_end sub_0203588C + + thumb_func_start sub_020358B0 +sub_020358B0: ; 0x020358B0 + ldr r3, _020358B4 ; =sub_02033A44 + bx r3 + .balign 4, 0 +_020358B4: .word sub_02033A44 + thumb_func_end sub_020358B0 + + thumb_func_start sub_020358B8 +sub_020358B8: ; 0x020358B8 + push {r3, lr} + ldr r1, _020358CC ; =0x021D4134 + mov r2, #0x54 + ldr r1, [r1, #8] + bl MIi_CpuCopy8 + bl sub_0203588C + pop {r3, pc} + nop +_020358CC: .word 0x021D4134 + thumb_func_end sub_020358B8 + + thumb_func_start sub_020358D0 +sub_020358D0: ; 0x020358D0 + ldr r1, _020358F8 ; =0x021D4134 + ldr r3, [r1, #8] + cmp r3, #0 + beq _020358F4 + lsl r1, r0, #1 + add r2, r3, r1 + ldr r1, _020358FC ; =0x00000D44 + ldrh r1, [r2, r1] + cmp r1, #0 + beq _020358F4 + mov r1, #0x59 + lsl r1, r1, #2 + add r2, r3, r1 + mov r1, #0xc0 + mul r1, r0 + add r0, r2, r1 + add r0, #8 + bx lr +_020358F4: + mov r0, #0 + bx lr + .balign 4, 0 +_020358F8: .word 0x021D4134 +_020358FC: .word 0x00000D44 + thumb_func_end sub_020358D0 + + thumb_func_start sub_02035900 +sub_02035900: ; 0x02035900 + push {r4, r5, r6, lr} + add r5, r1, #0 + mov r4, #0 + ldr r1, _02035AB8 ; =0x021D4140 + cmp r0, #0 + strb r4, [r1, #1] + bne _02035910 + b _02035A58 +_02035910: + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r6, r0, #1 + ldr r0, _02035AB8 ; =0x021D4140 + ldr r0, [r0, #8] + cmp r0, #0 + beq _0203592A + mov r0, #1 + pop {r4, r5, r6, pc} +_0203592A: + mov r0, #0xf + bl sub_020379A0 + mov r1, #0x6e + mov r0, #0xf + lsl r1, r1, #4 + bl AllocFromHeap + ldr r2, _02035AB8 ; =0x021D4140 + mov r1, #0x1f + add r3, r0, #0 + and r3, r1 + mov r1, #0x20 + sub r1, r1, r3 + str r0, [r2, #4] + add r0, r1, r0 + str r0, [r2, #8] + mov r2, #0x1b + add r1, r4, #0 + lsl r2, r2, #6 + bl MIi_CpuFill8 + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _02035972 + ldr r0, _02035AB8 ; =0x021D4140 + lsl r2, r5, #1 + ldr r1, [r0, #8] + mov r0, #0x69 + add r2, #0x40 + lsl r0, r0, #4 + str r2, [r1, r0] + b _0203597E +_02035972: + ldr r0, _02035AB8 ; =0x021D4140 + add r5, #0x40 + ldr r1, [r0, #8] + mov r0, #0x69 + lsl r0, r0, #4 + str r5, [r1, r0] +_0203597E: + ldr r2, _02035AB8 ; =0x021D4140 + mov r1, #0x69 + ldr r0, [r2, #8] + lsl r1, r1, #4 + ldr r3, [r0, r1] + add r5, r3, #0 + mul r5, r6 + sub r3, r1, #4 + str r5, [r0, r3] + add r0, r1, #0 + ldr r3, [r2, #8] + mov r5, #0 + add r0, #0x1d + strb r5, [r3, r0] + add r0, r1, #0 + ldr r3, [r2, #8] + mov r5, #0x2a + add r0, #0x1e + strb r5, [r3, r0] + ldr r2, [r2, #8] + mov r0, #0xf + ldr r1, [r2, r1] + lsl r1, r1, #1 + bl AllocFromHeap + ldr r2, _02035AB8 ; =0x021D4140 + mov r1, #0x49 + ldr r3, [r2, #8] + lsl r1, r1, #4 + str r0, [r3, r1] + mov r1, #0x69 + ldr r2, [r2, #8] + lsl r1, r1, #4 + ldr r1, [r2, r1] + mov r0, #0xf + bl AllocFromHeap + ldr r2, _02035AB8 ; =0x021D4140 + ldr r1, _02035ABC ; =0x00000494 + ldr r3, [r2, #8] + str r0, [r3, r1] + ldr r2, [r2, #8] + ldr r1, _02035AC0 ; =0x0000068C + mov r0, #0xf + ldr r1, [r2, r1] + bl AllocFromHeap + ldr r2, _02035AB8 ; =0x021D4140 + ldr r1, _02035AC4 ; =0x0000048C + ldr r3, [r2, #8] + str r0, [r3, r1] + ldr r2, [r2, #8] + ldr r1, _02035AC0 ; =0x0000068C + mov r0, #0xf + ldr r1, [r2, r1] + bl AllocFromHeap + ldr r1, _02035AB8 ; =0x021D4140 + ldr r2, [r1, #8] + ldr r1, _02035AC8 ; =0x00000488 + str r0, [r2, r1] + bl sub_0203993C + cmp r0, #0xa + bne _02035A2C + ldr r0, _02035AB8 ; =0x021D4140 + mov r2, #0x16 + ldr r3, [r0, #8] + lsl r2, r2, #6 + add r0, r3, r2 + sub r2, #0xe8 + mov r1, #0x64 + add r2, r3, r2 + bl sub_02033F44 + ldr r0, _02035AB8 ; =0x021D4140 + mov r2, #0x5a + mov r1, #0x32 + ldr r3, [r0, #8] + lsl r2, r2, #4 + add r0, r3, r2 + sub r2, #0x90 + lsl r1, r1, #4 + add r2, r3, r2 + bl sub_02033F44 + b _02035A64 +_02035A2C: + ldr r0, _02035AB8 ; =0x021D4140 + mov r2, #0x16 + ldr r3, [r0, #8] + lsl r2, r2, #6 + add r0, r3, r2 + sub r2, #0xe8 + mov r1, #0x14 + add r2, r3, r2 + bl sub_02033F44 + ldr r0, _02035AB8 ; =0x021D4140 + mov r2, #0x5a + add r1, r5, #0 + ldr r3, [r0, #8] + lsl r2, r2, #4 + add r0, r3, r2 + sub r2, #0x90 + add r1, #0xee + add r2, r3, r2 + bl sub_02033F44 + b _02035A64 +_02035A58: + ldr r0, [r1, #8] + mov r4, #1 + cmp r0, #0 + bne _02035A64 + bl GF_AssertFail +_02035A64: + ldr r2, _02035AB8 ; =0x021D4140 + ldr r1, _02035ACC ; =0x00000694 + ldr r3, [r2, #8] + mov r0, #0 + strh r0, [r3, r1] + mov r5, #0xff + add r1, #0x12 +_02035A72: + ldr r3, [r2, #8] + add r3, r3, r0 + add r0, r0, #1 + strb r5, [r3, r1] + cmp r0, #4 + blt _02035A72 + cmp r4, #0 + bne _02035A86 + bl sub_02035DA4 +_02035A86: + ldr r0, _02035AB8 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02035AD0 ; =0x0000062C + add r0, r1, r0 + bl sub_0203778C + cmp r4, #0 + bne _02035AA8 + mov r1, #0 + ldr r0, _02035AD4 ; =sub_020360EC + add r2, r1, #0 + bl sub_0200E33C + ldr r1, _02035AB8 ; =0x021D4140 + ldr r2, [r1, #8] + ldr r1, _02035AD8 ; =0x0000057C + str r0, [r2, r1] +_02035AA8: + ldr r0, _02035AB8 ; =0x021D4140 + mov r2, #0 + ldr r1, [r0, #8] + ldr r0, _02035ADC ; =0x000006B6 + strb r2, [r1, r0] + mov r0, #1 + pop {r4, r5, r6, pc} + nop +_02035AB8: .word 0x021D4140 +_02035ABC: .word 0x00000494 +_02035AC0: .word 0x0000068C +_02035AC4: .word 0x0000048C +_02035AC8: .word 0x00000488 +_02035ACC: .word 0x00000694 +_02035AD0: .word 0x0000062C +_02035AD4: .word sub_020360EC +_02035AD8: .word 0x0000057C +_02035ADC: .word 0x000006B6 + thumb_func_end sub_02035900 + + thumb_func_start sub_02035AE0 +sub_02035AE0: ; 0x02035AE0 + push {r3, r4, r5, r6, r7, lr} + sub sp, #8 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + mov r2, #0x66 + ldr r3, _02035D5C ; =0x021D4140 + add r7, r0, #1 + ldr r0, [r3, #8] + mov r1, #0 + lsl r2, r2, #4 + strb r1, [r0, r2] + add r0, r2, #1 + ldr r4, [r3, #8] + add r2, #0x2c + strb r1, [r4, r0] + ldr r3, [r3, #8] + ldr r0, _02035D60 ; =0x0000048C + ldr r2, [r3, r2] + ldr r0, [r3, r0] + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + mov r2, #0x60 + ldr r1, [r0, #8] + ldr r0, _02035D64 ; =0x0000051C + add r0, r1, r0 + mov r1, #0 + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02035D68 ; =0x0000068C + ldr r0, [r1, r0] + add r1, r7, #0 + bl _s32_div_f + add r4, r0, #0 + mov r0, #0 + str r0, [sp, #4] + cmp r7, #0 + ble _02035B62 + add r6, r0, #0 + add r5, r0, #0 +_02035B3E: + ldr r0, _02035D5C ; =0x021D4140 + ldr r2, _02035D60 ; =0x0000048C + ldr r1, [r0, #8] + ldr r0, _02035D64 ; =0x0000051C + add r0, r1, r0 + ldr r1, [r1, r2] + add r0, r0, r5 + add r1, r1, r6 + add r2, r4, #0 + bl sub_02033AE0 + ldr r0, [sp, #4] + add r6, r6, r4 + add r0, r0, #1 + add r5, #0xc + str r0, [sp, #4] + cmp r0, r7 + blt _02035B3E +_02035B62: + ldr r0, _02035D5C ; =0x021D4140 + ldr r2, _02035D68 ; =0x0000068C + ldr r3, [r0, #8] + ldr r0, _02035D6C ; =0x00000488 + ldr r2, [r3, r2] + ldr r0, [r3, r0] + mov r1, #0 + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + mov r2, #0x60 + ldr r1, [r0, #8] + mov r0, #0x4b + lsl r0, r0, #4 + add r0, r1, r0 + mov r1, #0 + bl MIi_CpuFill8 + mov r0, #0 + str r0, [sp] + cmp r7, #0 + ble _02035BB8 + add r6, r0, #0 + add r5, r0, #0 +_02035B92: + ldr r0, _02035D5C ; =0x021D4140 + ldr r2, _02035D6C ; =0x00000488 + ldr r1, [r0, #8] + mov r0, #0x4b + lsl r0, r0, #4 + add r0, r1, r0 + ldr r1, [r1, r2] + add r0, r0, r5 + add r1, r1, r6 + add r2, r4, #0 + bl sub_02033AE0 + ldr r0, [sp] + add r6, r6, r4 + add r0, r0, #1 + add r5, #0xc + str r0, [sp] + cmp r0, r7 + blt _02035B92 +_02035BB8: + ldr r0, _02035D5C ; =0x021D4140 + mov r2, #6 + ldr r1, [r0, #8] + mov r0, #0xc2 + lsl r0, r0, #2 + add r0, r1, r0 + mov r1, #0 + lsl r2, r2, #6 + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + mov r1, #0xc2 + ldr r2, [r0, #8] + mov r0, #0x51 + lsl r0, r0, #4 + lsl r1, r1, #2 + add r0, r2, r0 + add r1, r2, r1 + mov r2, #6 + lsl r2, r2, #6 + bl sub_02033AE0 + ldr r0, _02035D5C ; =0x021D4140 + mov r1, #0xee + ldr r0, [r0, #8] + add r2, r1, #0 + add r0, #0x80 + add r2, #0x92 + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + ldr r1, [r0, #8] + mov r0, #5 + lsl r0, r0, #6 + add r0, r1, r0 + mov r1, #0xee + add r2, r1, #0 + add r2, #0x92 + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + mov r2, #2 + ldr r0, [r0, #8] + lsl r2, r2, #8 + add r0, r0, r2 + mov r1, #0 + sub r2, #0xf8 + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + mov r2, #2 + ldr r1, [r0, #8] + ldr r0, _02035D70 ; =0x00000498 + lsl r2, r2, #8 + add r0, r1, r0 + add r1, r1, r2 + sub r2, #0xf8 + bl sub_02033AE0 + ldr r0, _02035D5C ; =0x021D4140 + mov r1, #0xee + ldr r0, [r0, #8] + mov r2, #0x26 + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + mov r1, #0xee + ldr r0, [r0, #8] + mov r2, #0x26 + add r0, #0x40 + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + mov r2, #0xff + ldr r1, [r0, #8] + strb r2, [r1] + ldr r1, [r0, #8] + add r1, #0x40 + strb r2, [r1] + ldr r3, [r0, #8] + mov r2, #0x69 + mov r0, #0x49 + lsl r2, r2, #4 + lsl r0, r0, #4 + ldr r2, [r3, r2] + ldr r0, [r3, r0] + mov r1, #0 + lsl r2, r2, #1 + bl MIi_CpuFill8 + ldr r0, _02035D5C ; =0x021D4140 + mov r2, #0x69 + ldr r3, [r0, #8] + ldr r1, _02035D74 ; =0x000004A4 + lsl r2, r2, #4 + add r0, r3, r1 + sub r1, #0x14 + ldr r2, [r3, r2] + ldr r1, [r3, r1] + lsl r2, r2, #1 + bl sub_02033AE0 + ldr r0, _02035D5C ; =0x021D4140 + mov r2, #0 + ldr r3, [r0, #8] + ldr r1, _02035D78 ; =0x000006B4 + mov ip, r2 + strb r2, [r3, r1] + ldr r3, [r0, #8] + add r1, r1, #1 + strb r2, [r3, r1] + add r1, r2, #0 + add r7, r2, #0 + add r6, r2, #0 +_02035C9C: + ldr r3, [r0, #8] + add r4, r3, r2 + ldr r3, _02035D7C ; =0x00000696 + strb r6, [r4, r3] + ldr r3, [r0, #8] + ldr r4, _02035D80 ; =0x0000069E + add r5, r3, r2 + mov r3, #1 + strb r3, [r5, r4] + ldr r4, [r0, #8] + mov r3, ip + add r4, r4, r3 + ldr r3, _02035D84 ; =0x00000644 + add r2, r2, #1 + strh r6, [r4, r3] + ldr r3, [r0, #8] + mov r4, #0xee + add r5, r3, r1 + ldr r3, _02035D88 ; =0x000005CA + strb r4, [r5, r3] + ldr r3, [r0, #8] + ldr r4, _02035D8C ; =0x0000FFFF + add r5, r3, r1 + ldr r3, _02035D90 ; =0x000005C8 + strh r4, [r5, r3] + ldr r3, [r0, #8] + add r4, r3, r1 + ldr r3, _02035D94 ; =0x000005C4 + str r6, [r4, r3] + ldr r3, [r0, #8] + add r4, r3, r1 + mov r3, #0x17 + lsl r3, r3, #6 + str r6, [r4, r3] + ldr r3, [r0, #8] + add r1, #0xc + add r4, r3, r7 + ldr r3, _02035D98 ; =0x0000066C + add r7, r7, #4 + str r6, [r4, r3] + mov r3, ip + add r3, r3, #2 + mov ip, r3 + cmp r2, #8 + blt _02035C9C + ldr r1, _02035D5C ; =0x021D4140 + ldr r0, _02035D9C ; =0x00000668 + ldr r2, [r1, #8] + add r3, r0, #0 + str r6, [r2, r0] + ldr r4, [r1, #8] + sub r3, #0x3e + mov r2, #0xee + strb r2, [r4, r3] + add r3, r0, #0 + ldr r4, [r1, #8] + ldr r2, _02035D8C ; =0x0000FFFF + sub r3, #0x40 + strh r2, [r4, r3] + add r2, r0, #0 + ldr r3, [r1, #8] + sub r2, #0x44 + str r6, [r3, r2] + add r2, r0, #0 + ldr r3, [r1, #8] + sub r2, #0x48 + str r6, [r3, r2] + add r3, r0, #0 + ldr r4, [r1, #8] + add r3, #0x4a + mov r2, #1 + strb r2, [r4, r3] + add r3, r0, #0 + ldr r4, [r1, #8] + add r3, #0x4b + strb r2, [r4, r3] + strb r6, [r1] + ldr r1, [r1, #8] + sub r0, #0xe8 + add r0, r1, r0 + bl sub_02033F70 + ldr r0, _02035D5C ; =0x021D4140 + ldr r1, [r0, #8] + mov r0, #0x5a + lsl r0, r0, #4 + add r0, r1, r0 + bl sub_02033F70 + ldr r0, _02035D5C ; =0x021D4140 + mov r2, #0 + ldr r1, [r0, #8] + ldr r0, _02035DA0 ; =0x000006B7 + strb r2, [r1, r0] + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02035D5C: .word 0x021D4140 +_02035D60: .word 0x0000048C +_02035D64: .word 0x0000051C +_02035D68: .word 0x0000068C +_02035D6C: .word 0x00000488 +_02035D70: .word 0x00000498 +_02035D74: .word 0x000004A4 +_02035D78: .word 0x000006B4 +_02035D7C: .word 0x00000696 +_02035D80: .word 0x0000069E +_02035D84: .word 0x00000644 +_02035D88: .word 0x000005CA +_02035D8C: .word 0x0000FFFF +_02035D90: .word 0x000005C8 +_02035D94: .word 0x000005C4 +_02035D98: .word 0x0000066C +_02035D9C: .word 0x00000668 +_02035DA0: .word 0x000006B7 + thumb_func_end sub_02035AE0 + + thumb_func_start sub_02035DA4 +sub_02035DA4: ; 0x02035DA4 + push {r4, lr} + ldr r2, _02035DCC ; =0x021D4140 + ldr r1, _02035DD0 ; =0x000006AF + ldr r0, [r2, #8] + mov r4, #0 + strb r4, [r0, r1] + ldr r3, [r2, #8] + add r0, r1, #1 + strb r4, [r3, r0] + ldr r0, [r2, #8] + mov r3, #1 + sub r1, #0x4b + str r3, [r0, r1] + bl sub_02035AE0 + ldr r0, _02035DD4 ; =0x0210F900 + mov r1, #4 + strb r1, [r0] + strb r1, [r0, #1] + pop {r4, pc} + .balign 4, 0 +_02035DCC: .word 0x021D4140 +_02035DD0: .word 0x000006AF +_02035DD4: .word 0x0210F900 + thumb_func_end sub_02035DA4 + + thumb_func_start sub_02035DD8 +sub_02035DD8: ; 0x02035DD8 + ldr r3, _02035DDC ; =sub_02035AE0 + bx r3 + .balign 4, 0 +_02035DDC: .word sub_02035AE0 + thumb_func_end sub_02035DD8 + + thumb_func_start sub_02035DE0 +sub_02035DE0: ; 0x02035DE0 + push {r3, r4, r5, r6, r7, lr} + ldr r4, _02035E84 ; =0x021D4140 + add r5, r0, #0 + ldr r0, [r4, #8] + ldr r3, _02035E88 ; =0x00000696 + mov r1, #0 + add r0, r0, r5 + strb r1, [r0, r3] + ldr r2, [r4, #8] + mov r0, #1 + add r6, r2, r5 + add r2, r3, #0 + add r2, #8 + strb r0, [r6, r2] + ldr r2, [r4, #8] + lsl r0, r5, #2 + add r0, r2, r0 + sub r3, #0x2a + str r1, [r0, r3] + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r1, r0, #0 + add r0, r4, #0 + ldr r6, [r0, #8] + ldr r0, _02035E8C ; =0x0000068C + add r1, r1, #1 + ldr r0, [r6, r0] + bl _s32_div_f + add r7, r5, #0 + mov r1, #0x4b + str r0, [sp] + mul r7, r0 + mov r0, #0xc + add r4, r5, #0 + lsl r1, r1, #4 + mul r4, r0 + add r0, r6, r1 + sub r1, #0x28 + ldr r1, [r6, r1] + ldr r2, [sp] + add r0, r0, r4 + add r1, r1, r7 + bl sub_02033AE0 + ldr r0, _02035E84 ; =0x021D4140 + ldr r1, _02035E90 ; =0x0000051C + ldr r2, [r0, #8] + add r0, r2, r1 + sub r1, #0x90 + ldr r1, [r2, r1] + ldr r2, [sp] + add r0, r0, r4 + add r1, r1, r7 + bl sub_02033AE0 + ldr r3, _02035E84 ; =0x021D4140 + ldr r2, _02035E94 ; =0x000005CA + ldr r0, [r3, #8] + mov r1, #0xee + add r0, r0, r4 + strb r1, [r0, r2] + ldr r0, [r3, #8] + ldr r5, _02035E98 ; =0x0000FFFF + add r1, r0, r4 + sub r0, r2, #2 + strh r5, [r1, r0] + ldr r1, [r3, #8] + mov r0, #0 + add r5, r1, r4 + sub r1, r2, #6 + str r0, [r5, r1] + ldr r1, [r3, #8] + sub r2, #0xa + add r1, r1, r4 + str r0, [r1, r2] + pop {r3, r4, r5, r6, r7, pc} + nop +_02035E84: .word 0x021D4140 +_02035E88: .word 0x00000696 +_02035E8C: .word 0x0000068C +_02035E90: .word 0x0000051C +_02035E94: .word 0x000005CA +_02035E98: .word 0x0000FFFF + thumb_func_end sub_02035DE0 + + thumb_func_start sub_02035E9C +sub_02035E9C: ; 0x02035E9C + push {r4, r5, r6, lr} + ldr r4, _02035EC8 ; =0x021D4140 + ldr r6, _02035ECC ; =0x0000069E + mov r5, #1 +_02035EA4: + lsl r0, r5, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + bne _02035EC0 + ldr r0, [r4, #8] + add r0, r0, r5 + ldrb r0, [r0, r6] + cmp r0, #0 + bne _02035EC0 + add r0, r5, #0 + bl sub_02035DE0 +_02035EC0: + add r5, r5, #1 + cmp r5, #8 + blt _02035EA4 + pop {r4, r5, r6, pc} + .balign 4, 0 +_02035EC8: .word 0x021D4140 +_02035ECC: .word 0x0000069E + thumb_func_end sub_02035E9C + + thumb_func_start sub_02035ED0 +sub_02035ED0: ; 0x02035ED0 + ldr r3, _02035ED4 ; =sub_02035DE0 + bx r3 + .balign 4, 0 +_02035ED4: .word sub_02035DE0 + thumb_func_end sub_02035ED0 + + thumb_func_start sub_02035ED8 +sub_02035ED8: ; 0x02035ED8 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + add r7, r2, #0 + str r3, [sp] + mov r4, #1 + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + bne _02035F02 + ldr r2, [sp] + add r0, r5, #0 + add r1, r6, #0 + bl sub_02034EF0 + add r4, r0, #0 + ldr r0, _02035F10 ; =sub_02035ED0 + bl sub_02033A90 +_02035F02: + add r0, r5, #0 + add r1, r7, #0 + bl sub_02035900 + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_02035F10: .word sub_02035ED0 + thumb_func_end sub_02035ED8 + + thumb_func_start sub_02035F14 +sub_02035F14: ; 0x02035F14 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + add r7, r2, #0 + mov r4, #1 + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + bne _02035F34 + add r0, r5, #0 + add r1, r6, #0 + bl sub_02034F64 + add r4, r0, #0 +_02035F34: + add r0, r5, #0 + add r1, r7, #0 + bl sub_02035900 + ldr r0, _02035F48 ; =0x0210F900 + mov r1, #4 + strb r1, [r0, #1] + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_02035F48: .word 0x0210F900 + thumb_func_end sub_02035F14 + + thumb_func_start sub_02035F4C +sub_02035F4C: ; 0x02035F4C + push {r4, lr} + mov r4, #0 + bl sub_0203769C + cmp r0, #0 + bne _02035F62 + ldr r0, _02035F9C ; =0x0210F900 + ldrb r0, [r0] + cmp r0, #4 + beq _02035F6A + pop {r4, pc} +_02035F62: + ldr r0, _02035F9C ; =0x0210F900 + ldrb r0, [r0, #1] + cmp r0, #4 + bne _02035F98 +_02035F6A: + ldr r0, _02035FA0 ; =0x021D4140 + ldr r2, [r0, #8] + ldr r0, _02035FA4 ; =0x000006AD + ldrb r1, [r2, r0] + cmp r1, #2 + bne _02035F7C + mov r1, #0 + strb r1, [r2, r0] + mov r4, #1 +_02035F7C: + ldr r0, _02035FA0 ; =0x021D4140 + ldr r2, [r0, #8] + ldr r0, _02035FA4 ; =0x000006AD + ldrb r1, [r2, r0] + cmp r1, #3 + bne _02035F8C + mov r4, #1 + strb r4, [r2, r0] +_02035F8C: + cmp r4, #0 + beq _02035F94 + bl sub_02035DD8 +_02035F94: + bl sub_02037594 +_02035F98: + pop {r4, pc} + nop +_02035F9C: .word 0x0210F900 +_02035FA0: .word 0x021D4140 +_02035FA4: .word 0x000006AD + thumb_func_end sub_02035F4C + + thumb_func_start sub_02035FA8 +sub_02035FA8: ; 0x02035FA8 + ldr r1, _02035FD0 ; =0x021D4140 + ldr r3, [r1, #8] + ldr r1, _02035FD4 ; =0x000006AD + ldrb r2, [r3, r1] + cmp r2, #0 + bne _02035FBE + cmp r0, #1 + bne _02035FBE + mov r0, #3 + strb r0, [r3, r1] + bx lr +_02035FBE: + cmp r2, #1 + bne _02035FCC + cmp r0, #0 + bne _02035FCC + ldr r0, _02035FD4 ; =0x000006AD + mov r1, #2 + strb r1, [r3, r0] +_02035FCC: + bx lr + nop +_02035FD0: .word 0x021D4140 +_02035FD4: .word 0x000006AD + thumb_func_end sub_02035FA8 + + thumb_func_start sub_02035FD8 +sub_02035FD8: ; 0x02035FD8 + ldr r3, _02035FE0 ; =sub_02035FA8 + mov r0, #1 + bx r3 + nop +_02035FE0: .word sub_02035FA8 + thumb_func_end sub_02035FD8 + + thumb_func_start sub_02035FE4 +sub_02035FE4: ; 0x02035FE4 + ldr r3, _02035FEC ; =sub_02035FA8 + mov r0, #0 + bx r3 + nop +_02035FEC: .word sub_02035FA8 + thumb_func_end sub_02035FE4 + + thumb_func_start sub_02035FF0 +sub_02035FF0: ; 0x02035FF0 + ldr r0, _02036008 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _0203600C ; =0x000006AD + ldrb r0, [r1, r0] + cmp r0, #2 + bne _02036000 + mov r0, #1 + bx lr +_02036000: + cmp r0, #3 + bne _02036006 + mov r0, #0 +_02036006: + bx lr + .balign 4, 0 +_02036008: .word 0x021D4140 +_0203600C: .word 0x000006AD + thumb_func_end sub_02035FF0 + + thumb_func_start sub_02036010 +sub_02036010: ; 0x02036010 + push {r3, lr} + bl sub_02035FF0 + cmp r0, #1 + bne _0203601E + mov r0, #1 + pop {r3, pc} +_0203601E: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02036010 + + thumb_func_start sub_02036024 +sub_02036024: ; 0x02036024 + push {r4, lr} + ldr r0, _020360D0 ; =0x021D4140 + mov r4, #0 + ldr r0, [r0, #8] + cmp r0, #0 + beq _0203604E + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _02036044 + bl ov00_021E6CB8 + mov r4, #1 + b _0203604E +_02036044: + bl sub_0203507C + cmp r0, #0 + beq _0203604E + mov r4, #1 +_0203604E: + cmp r4, #0 + beq _020360CE + bl sub_020379F8 + bl sub_020343E4 + ldr r0, _020360D0 ; =0x021D4140 + mov r1, #0 + strb r1, [r0, #1] + ldr r1, [r0, #8] + ldr r0, _020360D4 ; =0x0000057C + ldr r0, [r1, r0] + bl sub_0200E390 + ldr r1, _020360D0 ; =0x021D4140 + ldr r0, _020360D4 ; =0x0000057C + ldr r2, [r1, #8] + mov r3, #0 + str r3, [r2, r0] + ldr r1, [r1, #8] + sub r0, #0xec + ldr r0, [r1, r0] + bl FreeToHeap + ldr r0, _020360D0 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _020360D8 ; =0x00000494 + ldr r0, [r1, r0] + bl FreeToHeap + ldr r0, _020360D0 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _020360DC ; =0x0000048C + ldr r0, [r1, r0] + bl FreeToHeap + ldr r0, _020360D0 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _020360E0 ; =0x00000488 + ldr r0, [r1, r0] + bl FreeToHeap + ldr r0, _020360D0 ; =0x021D4140 + ldr r1, [r0, #8] + mov r0, #0x5a + lsl r0, r0, #4 + add r0, r1, r0 + bl sub_02033F90 + ldr r0, _020360D0 ; =0x021D4140 + ldr r1, [r0, #8] + mov r0, #0x16 + lsl r0, r0, #6 + add r0, r1, r0 + bl sub_02033F90 + ldr r0, _020360D0 ; =0x021D4140 + ldr r0, [r0, #4] + bl FreeToHeap + ldr r0, _020360D0 ; =0x021D4140 + mov r1, #0 + str r1, [r0, #8] + str r1, [r0, #4] +_020360CE: + pop {r4, pc} + .balign 4, 0 +_020360D0: .word 0x021D4140 +_020360D4: .word 0x0000057C +_020360D8: .word 0x00000494 +_020360DC: .word 0x0000048C +_020360E0: .word 0x00000488 + thumb_func_end sub_02036024 + + thumb_func_start sub_020360E4 +sub_020360E4: ; 0x020360E4 + ldr r3, _020360E8 ; =sub_02035218 + bx r3 + .balign 4, 0 +_020360E8: .word sub_02035218 + thumb_func_end sub_020360E4 + + thumb_func_start sub_020360EC +sub_020360EC: ; 0x020360EC + push {r3, lr} + ldr r0, _02036118 ; =0x021D4140 + ldrb r0, [r0, #1] + cmp r0, #0 + beq _02036116 + bl sub_02036AD8 + bl sub_0203769C + cmp r0, #0 + bne _02036110 + mov r0, #0 + bl sub_020373B4 + cmp r0, #0 + beq _02036110 + bl sub_02036508 +_02036110: + ldr r0, _02036118 ; =0x021D4140 + mov r1, #0 + strb r1, [r0, #1] +_02036116: + pop {r3, pc} + .balign 4, 0 +_02036118: .word 0x021D4140 + thumb_func_end sub_020360EC + + thumb_func_start sub_0203611C +sub_0203611C: ; 0x0203611C + push {r3, lr} + bl sub_020357FC + cmp r0, #0 + beq _02036140 + bl sub_0203769C + cmp r0, #0 + bne _0203613C + bl sub_0203567C + cmp r0, #0 + bne _02036140 + bl sub_02036024 + pop {r3, pc} +_0203613C: + bl sub_02036024 +_02036140: + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203611C + + thumb_func_start sub_02036144 +sub_02036144: ; 0x02036144 + push {r4, lr} + bl sub_0203817C + ldr r3, _02036214 ; =0x021D4140 + ldr r0, [r3, #8] + cmp r0, #0 + beq _020361FE + ldr r2, _02036218 ; =0x000006B9 + ldrb r1, [r0, r2] + cmp r1, #0 + bne _020361E0 + add r1, r2, #3 + ldrb r1, [r0, r1] + add r4, r1, #1 + add r1, r2, #3 + strb r4, [r0, r1] + mov r0, #0 + strb r0, [r3, #1] + bl sub_02035F4C + ldr r0, _02036214 ; =0x021D4140 + ldr r1, _0203621C ; =gMain + ldr r0, [r0, #8] + ldr r2, _02036220 ; =0x0000065C + ldr r3, [r1, #0x44] + ldr r1, _02036224 ; =0x00007FFF + ldrh r4, [r0, r2] + and r1, r3 + orr r1, r4 + strh r1, [r0, r2] + bl sub_02036BE4 + bl sub_02036298 + ldr r0, _02036214 ; =0x021D4140 + ldr r1, _02036220 ; =0x0000065C + ldr r3, [r0, #8] + mov r0, #2 + ldrh r2, [r3, r1] + lsl r0, r0, #0xe + and r0, r2 + strh r0, [r3, r1] + bl sub_02035FF0 + cmp r0, #0 + bne _020361A4 + bl sub_020372E4 +_020361A4: + bl sub_0203769C + cmp r0, #0 + bne _020361C6 + mov r0, #0 + bl sub_020373B4 + cmp r0, #0 + beq _020361C6 + bl sub_0203993C + bl sub_02034084 + cmp r0, #0 + bne _020361C6 + bl sub_0203667C +_020361C6: + bl sub_0203769C + cmp r0, #0 + beq _020361D6 + bl sub_02035FF0 + cmp r0, #1 + bne _020361DA +_020361D6: + bl sub_02037334 +_020361DA: + ldr r0, _02036214 ; =0x021D4140 + mov r1, #1 + strb r1, [r0, #1] +_020361E0: + ldr r0, _02036214 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02036228 ; =0x00000694 + ldrh r0, [r1, r0] + bl sub_020355C8 + bl sub_0203769C + cmp r0, #0 + bne _020361F8 + bl sub_02035E9C +_020361F8: + bl sub_0203611C + b _02036204 +_020361FE: + mov r0, #0 + bl sub_020355C8 +_02036204: + mov r0, #0 + bl sub_02039A00 + bl sub_02037ADC + mov r0, #1 + pop {r4, pc} + nop +_02036214: .word 0x021D4140 +_02036218: .word 0x000006B9 +_0203621C: .word gMain +_02036220: .word 0x0000065C +_02036224: .word 0x00007FFF +_02036228: .word 0x00000694 + thumb_func_end sub_02036144 + + thumb_func_start sub_0203622C +sub_0203622C: ; 0x0203622C + push {r4, lr} + ldr r0, _02036248 ; =0x021D4140 + mov r1, #0 + ldrb r4, [r0, #1] + strb r1, [r0, #1] + ldr r0, [r0, #8] + cmp r0, #0 + beq _02036240 + bl sub_02035DA4 +_02036240: + ldr r0, _02036248 ; =0x021D4140 + strb r4, [r0, #1] + pop {r4, pc} + nop +_02036248: .word 0x021D4140 + thumb_func_end sub_0203622C + + thumb_func_start sub_0203624C +sub_0203624C: ; 0x0203624C + push {r4, lr} + ldr r0, _0203626C ; =0x021D4140 + mov r1, #0 + ldrb r4, [r0, #1] + strb r1, [r0, #1] + ldr r2, [r0, #8] + cmp r2, #0 + beq _02036266 + ldr r0, _02036270 ; =0x000006AD + mov r1, #1 + strb r1, [r2, r0] + bl sub_02035DA4 +_02036266: + ldr r0, _0203626C ; =0x021D4140 + strb r4, [r0, #1] + pop {r4, pc} + .balign 4, 0 +_0203626C: .word 0x021D4140 +_02036270: .word 0x000006AD + thumb_func_end sub_0203624C + + thumb_func_start sub_02036274 +sub_02036274: ; 0x02036274 + push {r4, lr} + ldr r0, _02036294 ; =0x021D4140 + mov r1, #0 + ldrb r4, [r0, #1] + strb r1, [r0, #1] + ldr r0, [r0, #8] + cmp r0, #0 + beq _0203628C + bl sub_02035DA4 + bl sub_02034E2C +_0203628C: + ldr r0, _02036294 ; =0x021D4140 + strb r4, [r0, #1] + pop {r4, pc} + nop +_02036294: .word 0x021D4140 + thumb_func_end sub_02036274 + + thumb_func_start sub_02036298 +sub_02036298: ; 0x02036298 + push {r3, r4, r5, r6, r7, lr} + bl sub_0203993C + bl sub_02034084 + cmp r0, #0 + beq _0203634C + ldr r0, _02036420 ; =0x021D4140 + ldr r1, _02036424 ; =0x000006B6 + ldr r0, [r0, #8] + ldrb r2, [r0, r1] + cmp r2, #0 + beq _02036308 + sub r1, #0x52 + ldr r1, [r0, r1] + cmp r1, #0 + beq _020362DA + bl sub_02036630 + cmp r0, #0 + beq _020362F8 + ldr r0, _02036428 ; =0x0210F900 + ldrb r0, [r0, #1] + cmp r0, #4 + bne _020362F0 + ldr r0, _02036420 ; =0x021D4140 + ldr r0, [r0, #8] + bl sub_02036E60 + ldr r0, _02036428 ; =0x0210F900 + mov r1, #2 + strb r1, [r0, #1] + b _020362F0 +_020362DA: + ldr r1, _02036428 ; =0x0210F900 + ldrb r1, [r1, #1] + cmp r1, #4 + bne _020362F0 + bl sub_02036E60 + cmp r0, #0 + beq _020362F8 + ldr r0, _02036428 ; =0x0210F900 + mov r1, #2 + strb r1, [r0, #1] +_020362F0: + bl sub_02036FA8 + cmp r0, #0 + beq _020362FA +_020362F8: + b _0203641C +_020362FA: + ldr r0, _02036420 ; =0x021D4140 + mov r1, #0x26 + ldr r0, [r0, #8] + bl ov00_021E60E8 + cmp r0, #0 + bne _0203630A +_02036308: + b _0203641C +_0203630A: + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r6, r0, #1 + mov r4, #0 + cmp r6, #0 + ble _02036344 + ldr r7, _02036420 ; =0x021D4140 + add r5, r4, #0 +_02036322: + lsl r0, r4, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _0203633C + ldr r0, [r7, #8] + ldr r1, _0203642C ; =0x0000066C + add r0, r0, r5 + ldr r1, [r0, r1] + add r2, r1, #1 + ldr r1, _0203642C ; =0x0000066C + str r2, [r0, r1] +_0203633C: + add r4, r4, #1 + add r5, r5, #4 + cmp r4, r6 + blt _02036322 +_02036344: + ldr r0, _02036428 ; =0x0210F900 + mov r1, #4 + strb r1, [r0, #1] + pop {r3, r4, r5, r6, r7, pc} +_0203634C: + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _020363CA + ldr r0, _02036420 ; =0x021D4140 + ldr r2, _02036424 ; =0x000006B6 + ldr r0, [r0, #8] + ldrb r1, [r0, r2] + cmp r1, #0 + beq _0203641C + add r1, r2, #0 + sub r1, #0x52 + ldr r1, [r0, r1] + cmp r1, #0 + beq _0203638A + sub r2, #0x4e + ldr r1, [r0, r2] + cmp r1, #3 + bgt _0203641C + ldr r1, _02036428 ; =0x0210F900 + ldrb r1, [r1, #1] + cmp r1, #4 + bne _020363A0 + bl sub_02036E60 + ldr r0, _02036428 ; =0x0210F900 + mov r1, #2 + strb r1, [r0, #1] + b _020363A0 +_0203638A: + ldr r1, _02036428 ; =0x0210F900 + ldrb r1, [r1, #1] + cmp r1, #4 + bne _020363A0 + bl sub_02036E60 + cmp r0, #0 + beq _0203641C + ldr r0, _02036428 ; =0x0210F900 + mov r1, #2 + strb r1, [r0, #1] +_020363A0: + bl sub_02036FA8 + cmp r0, #0 + bne _0203641C + ldr r0, _02036420 ; =0x021D4140 + mov r1, #0x26 + ldr r0, [r0, #8] + bl ov00_021E5F84 + cmp r0, #0 + beq _0203641C + ldr r0, _02036428 ; =0x0210F900 + mov r1, #4 + strb r1, [r0, #1] + ldr r0, _02036420 ; =0x021D4140 + ldr r2, [r0, #8] + ldr r0, _02036430 ; =0x00000668 + ldr r1, [r2, r0] + add r1, r1, #1 + str r1, [r2, r0] + pop {r3, r4, r5, r6, r7, pc} +_020363CA: + bl sub_02033298 + cmp r0, #4 + bne _0203641C + bl sub_0203769C + bl sub_020373B4 + cmp r0, #0 + beq _0203641C + ldr r0, _02036428 ; =0x0210F900 + ldrb r0, [r0, #1] + cmp r0, #4 + bne _02036418 + ldr r0, _02036420 ; =0x021D4140 + ldr r2, [r0, #8] + ldr r0, _02036430 ; =0x00000668 + ldr r1, [r2, r0] + cmp r1, #3 + bgt _02036418 + add r0, #0x47 + ldrb r0, [r2, r0] + lsl r0, r0, #6 + add r0, r2, r0 + bl sub_02036E60 + ldr r0, _02036420 ; =0x021D4140 + ldr r2, [r0, #8] + ldr r0, _02036434 ; =0x000006AF + ldrb r1, [r2, r0] + mov r0, #1 + sub r0, r0, r1 + lsl r0, r0, #6 + add r0, r2, r0 + bl sub_02036E60 + ldr r0, _02036428 ; =0x0210F900 + mov r1, #0 + strb r1, [r0, #1] +_02036418: + bl sub_02036AD8 +_0203641C: + pop {r3, r4, r5, r6, r7, pc} + nop +_02036420: .word 0x021D4140 +_02036424: .word 0x000006B6 +_02036428: .word 0x0210F900 +_0203642C: .word 0x0000066C +_02036430: .word 0x00000668 +_02036434: .word 0x000006AF + thumb_func_end sub_02036298 + + thumb_func_start sub_02036438 +sub_02036438: ; 0x02036438 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + str r0, [sp] + mov r7, #0 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_0203772C + str r0, [sp, #0xc] + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r0, r0, #1 + str r0, [sp, #8] + add r0, r7, #0 + str r0, [sp, #4] + ldr r0, [sp, #8] + cmp r0, #0 + ble _020364F0 + ldr r0, [sp] + ldr r6, [sp, #4] + mov r1, #0xc0 + add r5, r0, #0 + add r4, r6, #0 + mul r5, r1 +_02036474: + ldr r0, _02036504 ; =0x021D4140 + ldr r1, [r0, #8] + mov r0, #0x4b + lsl r0, r0, #4 + add r0, r1, r0 + add r0, r0, r6 + bl sub_02033C28 + ldr r0, [sp, #4] + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _020364A2 + ldr r0, _02036504 ; =0x021D4140 + ldr r0, [r0, #8] + add r0, r5, r0 + add r1, r4, r0 + add r1, #0x80 + mov r0, #0xe + strb r0, [r1] + b _020364B4 +_020364A2: + ldr r0, _02036504 ; =0x021D4140 + add r7, r7, #1 + ldr r0, [r0, #8] + add r0, r5, r0 + add r1, r4, r0 + add r1, #0x80 + mov r0, #0xff + strb r0, [r1] + b _020364DE +_020364B4: + ldr r0, _02036504 ; =0x021D4140 + ldr r2, [sp, #0xc] + ldr r1, [r0, #8] + mov r0, #0x4b + lsl r0, r0, #4 + add r0, r1, r0 + add r1, #0x80 + add r1, r1, r5 + add r0, r0, r6 + add r1, r1, r4 + bl sub_02033B4C + ldr r0, _02036504 ; =0x021D4140 + ldr r0, [r0, #8] + add r0, r5, r0 + add r0, r4, r0 + add r0, #0x80 + ldrb r0, [r0] + cmp r0, #0xe + bne _020364DE + add r7, r7, #1 +_020364DE: + ldr r0, [sp, #0xc] + add r6, #0xc + add r4, r4, r0 + ldr r0, [sp, #4] + add r1, r0, #1 + ldr r0, [sp, #8] + str r1, [sp, #4] + cmp r1, r0 + blt _02036474 +_020364F0: + ldr r0, [sp, #8] + cmp r7, r0 + bne _020364FC + add sp, #0x10 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_020364FC: + mov r0, #1 + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + nop +_02036504: .word 0x021D4140 + thumb_func_end sub_02036438 + + thumb_func_start sub_02036508 +sub_02036508: ; 0x02036508 + push {r3, r4, r5, r6, r7, lr} + ldr r0, _02036620 ; =0x021D4140 + ldr r0, [r0, #8] + cmp r0, #0 + bne _02036514 + b _0203661C +_02036514: + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + bne _0203661C + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_0203772C + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r6, r0, #1 + ldr r0, _02036624 ; =0x0210F900 + ldrb r1, [r0] + cmp r1, #2 + beq _02036548 + ldrb r0, [r0] + cmp r0, #0 + bne _0203661C +_02036548: + ldr r0, _02036624 ; =0x0210F900 + ldrb r1, [r0] + add r1, r1, #1 + strb r1, [r0] + bl sub_02035FF0 + cmp r0, #1 + bne _02036572 + ldr r0, _02036620 ; =0x021D4140 + ldrb r1, [r0] + cmp r1, #0 + bne _02036572 + ldr r1, [r0, #8] + mov r0, #0x6b + lsl r0, r0, #4 + ldrb r0, [r1, r0] + bl sub_02036438 + ldr r0, _02036620 ; =0x021D4140 + mov r1, #1 + strb r1, [r0] +_02036572: + bl sub_02033298 + cmp r0, #4 + bne _020365A4 + ldr r0, _02036620 ; =0x021D4140 + ldr r1, [r0, #8] + mov r0, #0x6b + lsl r0, r0, #4 + ldrb r0, [r1, r0] + add r3, r1, #0 + mov r1, #0xc0 + add r2, r0, #0 + add r3, #0x80 + mul r2, r1 + add r0, r3, r2 + ldr r3, _02036628 ; =sub_02036ABC + mov r2, #0xe + bl sub_02033800 + cmp r0, #0 + bne _020365A4 + ldr r0, _02036624 ; =0x0210F900 + ldrb r1, [r0] + sub r1, r1, #1 + strb r1, [r0] +_020365A4: + ldr r0, _02036624 ; =0x0210F900 + ldrb r1, [r0] + cmp r1, #1 + beq _020365B2 + ldrb r0, [r0] + cmp r0, #3 + bne _0203660C +_020365B2: + ldr r7, _02036620 ; =0x021D4140 + mov r4, #0 + strb r4, [r7] + cmp r6, #0 + ble _020365E0 + add r5, r4, #0 +_020365BE: + lsl r0, r4, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _020365D8 + ldr r0, [r7, #8] + ldr r1, _0203662C ; =0x0000066C + add r0, r0, r5 + ldr r1, [r0, r1] + add r2, r1, #1 + ldr r1, _0203662C ; =0x0000066C + str r2, [r0, r1] +_020365D8: + add r4, r4, #1 + add r5, r5, #4 + cmp r4, r6 + blt _020365BE +_020365E0: + ldr r0, _02036620 ; =0x021D4140 + mov r1, #0x6b + ldr r2, [r0, #8] + lsl r1, r1, #4 + ldrb r1, [r2, r1] + add r4, r2, #0 + mov r2, #0xc0 + add r3, r1, #0 + add r4, #0x80 + mul r3, r2 + mov r0, #0 + add r1, r4, r3 + bl sub_020367B0 + ldr r0, _02036620 ; =0x021D4140 + mov r1, #0x6b + ldr r3, [r0, #8] + lsl r1, r1, #4 + ldrb r2, [r3, r1] + mov r0, #1 + sub r0, r0, r2 + strb r0, [r3, r1] +_0203660C: + bl sub_02033298 + cmp r0, #4 + beq _0203661C + ldr r0, _02036624 ; =0x0210F900 + ldrb r1, [r0] + add r1, r1, #1 + strb r1, [r0] +_0203661C: + pop {r3, r4, r5, r6, r7, pc} + nop +_02036620: .word 0x021D4140 +_02036624: .word 0x0210F900 +_02036628: .word sub_02036ABC +_0203662C: .word 0x0000066C + thumb_func_end sub_02036508 + + thumb_func_start sub_02036630 +sub_02036630: ; 0x02036630 + push {r3, r4, r5, r6, r7, lr} + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r6, r0, #1 + mov r4, #1 + cmp r6, #1 + ble _0203666E + ldr r7, _02036674 ; =0x021D4140 + mov r5, #4 +_0203664A: + lsl r0, r4, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _02036666 + ldr r0, [r7, #8] + add r1, r0, r5 + ldr r0, _02036678 ; =0x0000066C + ldr r0, [r1, r0] + cmp r0, #3 + ble _02036666 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02036666: + add r4, r4, #1 + add r5, r5, #4 + cmp r4, r6 + blt _0203664A +_0203666E: + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} + nop +_02036674: .word 0x021D4140 +_02036678: .word 0x0000066C + thumb_func_end sub_02036630 + + thumb_func_start sub_0203667C +sub_0203667C: ; 0x0203667C + push {r3, r4, r5, r6, r7, lr} + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r6, r0, #1 + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _02036738 + mov r0, #0 + bl sub_020373B4 + cmp r0, #0 + beq _02036796 + ldr r0, _02036798 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _0203679C ; =0x00000664 + ldr r0, [r1, r0] + cmp r0, #0 + beq _020366D4 + bl sub_02036630 + cmp r0, #0 + beq _02036796 + ldr r0, _020367A0 ; =0x0210F900 + ldrb r0, [r0] + cmp r0, #4 + bne _020366F4 + bl sub_02035FF0 + cmp r0, #1 + bne _020366CC + mov r0, #0 + bl sub_02036438 +_020366CC: + ldr r0, _020367A0 ; =0x0210F900 + mov r1, #2 + strb r1, [r0] + b _020366F4 +_020366D4: + ldr r0, _020367A0 ; =0x0210F900 + ldrb r0, [r0] + cmp r0, #4 + bne _020366EE + bl sub_02035FF0 + cmp r0, #1 + bne _020366EE + mov r0, #0 + bl sub_02036438 + cmp r0, #0 + beq _02036796 +_020366EE: + ldr r0, _020367A0 ; =0x0210F900 + mov r1, #2 + strb r1, [r0] +_020366F4: + ldr r0, _02036798 ; =0x021D4140 + mov r1, #0xc0 + ldr r0, [r0, #8] + add r0, #0x80 + bl ov00_021E602C + cmp r0, #0 + beq _02036796 + ldr r0, _020367A0 ; =0x0210F900 + mov r1, #4 + mov r4, #0 + strb r1, [r0] + cmp r6, #0 + ble _02036796 + ldr r7, _02036798 ; =0x021D4140 + add r5, r4, #0 +_02036714: + lsl r0, r4, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _0203672E + ldr r0, [r7, #8] + ldr r1, _020367A4 ; =0x0000066C + add r0, r0, r5 + ldr r1, [r0, r1] + add r2, r1, #1 + ldr r1, _020367A4 ; =0x0000066C + str r2, [r0, r1] +_0203672E: + add r4, r4, #1 + add r5, r5, #4 + cmp r4, r6 + blt _02036714 + pop {r3, r4, r5, r6, r7, pc} +_02036738: + bl sub_02033298 + cmp r0, #4 + bne _02036796 + ldr r0, _020367A0 ; =0x0210F900 + ldrb r0, [r0] + cmp r0, #4 + bne _02036796 + bl sub_02036630 + cmp r0, #0 + beq _02036796 + bl sub_02035FF0 + cmp r0, #0 + bne _0203678C + ldr r0, _02036798 ; =0x021D4140 + ldr r1, [r0, #8] + mov r0, #0x6b + add r2, r1, #0 + lsl r0, r0, #4 + ldrb r1, [r1, r0] + mov r0, #0xc0 + add r2, #0x80 + mul r0, r1 + add r0, r2, r0 + bl sub_02036F30 + ldr r0, _02036798 ; =0x021D4140 + ldr r1, [r0, #8] + mov r0, #0x6b + add r2, r1, #0 + lsl r0, r0, #4 + ldrb r1, [r1, r0] + mov r0, #1 + add r2, #0x80 + sub r1, r0, r1 + mov r0, #0xc0 + mul r0, r1 + add r0, r2, r0 + bl sub_02036F30 +_0203678C: + ldr r0, _020367A0 ; =0x0210F900 + mov r1, #0 + strb r1, [r0] + bl sub_02036508 +_02036796: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02036798: .word 0x021D4140 +_0203679C: .word 0x00000664 +_020367A0: .word 0x0210F900 +_020367A4: .word 0x0000066C + thumb_func_end sub_0203667C + + thumb_func_start sub_020367A8 +sub_020367A8: ; 0x020367A8 + ldr r3, _020367AC ; =sub_020367B0 + bx r3 + .balign 4, 0 +_020367AC: .word sub_020367B0 + thumb_func_end sub_020367A8 + + thumb_func_start sub_020367B0 +sub_020367B0: ; 0x020367B0 + push {r3, r4, r5, r6, r7, lr} + sub sp, #8 + ldr r0, _020368E4 ; =0x021D4140 + add r5, r1, #0 + ldr r2, [r0, #8] + ldr r0, _020368E8 ; =0x00000668 + ldr r1, [r2, r0] + sub r1, r1, #1 + str r1, [r2, r0] + cmp r5, #0 + beq _020367D4 + ldrb r0, [r5] + cmp r0, #0xb + bne _020367DA + bl sub_02035FF0 + cmp r0, #1 + bne _020367D6 +_020367D4: + b _020368E0 +_020367D6: + add r5, r5, #1 + b _020367E2 +_020367DA: + bl sub_02035FF0 + cmp r0, #0 + beq _020368E0 +_020367E2: + ldr r0, _020368E4 ; =0x021D4140 + ldr r1, _020368EC ; =0x000006B2 + ldr r0, [r0, #8] + ldrb r1, [r0, r1] + cmp r1, #0 + beq _020367F6 + ldrb r2, [r5] + mov r1, #1 + tst r1, r2 + bne _020368E0 +_020367F6: + ldr r1, _020368EC ; =0x000006B2 + mov r2, #0 + strb r2, [r0, r1] + bl sub_02035FF0 + cmp r0, #1 + bne _020368B4 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_0203772C + add r6, r0, #0 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r0, r0, #1 + mov r4, #0 + str r0, [sp, #4] + cmp r0, #0 + ble _020368E0 + sub r0, r6, #1 + add r7, r4, #0 + str r0, [sp] +_0203682E: + ldrb r0, [r5] + cmp r0, #0xff + bne _02036846 + ldr r0, _020368E4 ; =0x021D4140 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _020368F0 ; =0x00000694 + lsl r2, r4 + ldrh r0, [r1, r0] + mvn r2, r2 + and r2, r0 + b _02036854 +_02036846: + ldr r0, _020368E4 ; =0x021D4140 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _020368F0 ; =0x00000694 + lsl r2, r4 + ldrh r0, [r1, r0] + orr r2, r0 +_02036854: + ldr r0, _020368F0 ; =0x00000694 + strh r2, [r1, r0] + ldrb r2, [r5] + cmp r2, #0xff + bne _02036862 + add r5, r5, r6 + b _020368A6 +_02036862: + cmp r2, #0xe + bne _0203686A + add r5, r5, r6 + b _020368A6 +_0203686A: + ldr r0, _020368E4 ; =0x021D4140 + ldr r3, [r0, #8] + ldr r0, _020368F4 ; =0x0000069E + add r1, r3, r4 + ldrb r0, [r1, r0] + cmp r0, #0 + beq _02036882 + mov r0, #1 + tst r0, r2 + beq _02036882 + add r5, r5, r6 + b _020368A6 +_02036882: + ldr r0, _020368F8 ; =0x0000051C + add r5, r5, #1 + add r0, r3, r0 + ldr r3, _020368FC ; =0x0000054C + ldr r2, [sp] + add r0, r0, r7 + add r1, r5, #0 + add r3, r4, r3 + bl sub_02033AF0 + ldr r0, [sp] + mov r1, #0 + add r5, r5, r0 + ldr r0, _020368E4 ; =0x021D4140 + ldr r0, [r0, #8] + add r2, r0, r4 + ldr r0, _020368F4 ; =0x0000069E + strb r1, [r2, r0] +_020368A6: + ldr r0, [sp, #4] + add r4, r4, #1 + add r7, #0xc + cmp r4, r0 + blt _0203682E + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} +_020368B4: + ldr r1, _020368E4 ; =0x021D4140 + ldrb r3, [r5, #1] + ldr r2, [r1, #8] + ldr r0, _020368F0 ; =0x00000694 + strh r3, [r2, r0] + ldr r3, [r1, #8] + ldrh r2, [r3, r0] + lsl r2, r2, #8 + strh r2, [r3, r0] + ldr r4, [r1, #8] + ldrb r2, [r5, #2] + ldrh r3, [r4, r0] + add r2, r3, r2 + strh r2, [r4, r0] + ldr r0, [r1, #8] + ldr r3, _02036900 ; =0x000004A4 + ldrb r2, [r5, #3] + add r0, r0, r3 + add r1, r5, #4 + add r3, #0xbc + bl sub_02033AF0 +_020368E0: + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_020368E4: .word 0x021D4140 +_020368E8: .word 0x00000668 +_020368EC: .word 0x000006B2 +_020368F0: .word 0x00000694 +_020368F4: .word 0x0000069E +_020368F8: .word 0x0000051C +_020368FC: .word 0x0000054C +_02036900: .word 0x000004A4 + thumb_func_end sub_020367B0 + + thumb_func_start sub_02036904 +sub_02036904: ; 0x02036904 + ldr r3, _02036908 ; =sub_0203690C + bx r3 + .balign 4, 0 +_02036908: .word sub_0203690C + thumb_func_end sub_02036904 + + thumb_func_start sub_0203690C +sub_0203690C: ; 0x0203690C + push {r4, r5, r6, lr} + ldr r3, _020369BC ; =0x021D4140 + add r5, r0, #0 + ldr r0, [r3, #8] + ldr r2, _020369C0 ; =0x0000066C + add r4, r1, #0 + add r1, r0, r2 + lsl r0, r5, #2 + ldr r6, [r1, r0] + sub r6, r6, #1 + str r6, [r1, r0] + cmp r4, #0 + beq _020369BA + ldr r0, [r3, #8] + add r2, #0x32 + add r0, r0, r2 + ldrb r1, [r0, r5] + cmp r1, #0 + beq _0203693A + ldrb r2, [r4] + mov r1, #1 + tst r1, r2 + bne _020369BA +_0203693A: + mov r1, #0 + strb r1, [r0, r5] + bl sub_02035FF0 + cmp r0, #1 + bne _02036992 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_0203772C + add r6, r0, #0 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + ldrb r1, [r4] + mov r0, #2 + tst r0, r1 + bne _02036982 + ldr r0, _020369BC ; =0x021D4140 + mov r3, #0x4b + ldr r0, [r0, #8] + lsl r3, r3, #4 + add r1, r0, r3 + mov r0, #0xc + mul r0, r5 + add r0, r1, r0 + add r1, r4, #0 + add r2, r6, #0 + add r3, #0xf5 + bl sub_02033AF0 +_02036982: + ldr r0, _020369BC ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _020369C4 ; =0x00000696 + add r1, r1, r0 + ldrb r0, [r1, r5] + add r0, r0, #1 + strb r0, [r1, r5] + pop {r4, r5, r6, pc} +_02036992: + add r0, r4, #0 + add r1, r5, #0 + bl sub_02036D14 + ldrb r1, [r4] + mov r0, #2 + tst r0, r1 + bne _020369BA + ldr r0, _020369BC ; =0x021D4140 + ldr r3, _020369C8 ; =0x0000051C + ldr r0, [r0, #8] + mov r2, #0xb + add r1, r0, r3 + mov r0, #0xc + mul r0, r5 + add r0, r1, r0 + add r1, r4, #1 + add r3, #0x92 + bl sub_02033AF0 +_020369BA: + pop {r4, r5, r6, pc} + .balign 4, 0 +_020369BC: .word 0x021D4140 +_020369C0: .word 0x0000066C +_020369C4: .word 0x00000696 +_020369C8: .word 0x0000051C + thumb_func_end sub_0203690C + + thumb_func_start sub_020369CC +sub_020369CC: ; 0x020369CC + push {r4, r5, r6, lr} + ldr r3, _02036A8C ; =0x021D4140 + add r5, r0, #0 + ldr r0, [r3, #8] + ldr r2, _02036A90 ; =0x0000066C + add r4, r1, #0 + add r1, r0, r2 + lsl r0, r5, #2 + ldr r6, [r1, r0] + sub r6, r6, #1 + str r6, [r1, r0] + cmp r4, #0 + beq _02036A88 + ldr r0, [r3, #8] + add r2, #0x32 + add r0, r0, r2 + ldrb r1, [r0, r5] + cmp r1, #0 + beq _020369FA + ldrb r2, [r4] + mov r1, #1 + tst r1, r2 + bne _02036A88 +_020369FA: + mov r1, #0 + strb r1, [r0, r5] + bl sub_02035FF0 + cmp r0, #1 + bne _02036A88 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_0203772C + add r6, r0, #0 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + ldrb r0, [r4] + ldr r2, _02036A94 ; =0x00000694 + cmp r0, #0xff + bne _02036A38 + ldr r0, _02036A8C ; =0x021D4140 + mov r3, #1 + ldr r1, [r0, #8] + lsl r3, r5 + ldrh r0, [r1, r2] + mvn r3, r3 + and r0, r3 + b _02036A44 +_02036A38: + ldr r0, _02036A8C ; =0x021D4140 + mov r3, #1 + ldr r1, [r0, #8] + lsl r3, r5 + ldrh r0, [r1, r2] + orr r0, r3 +_02036A44: + strh r0, [r1, r2] + ldrb r0, [r4] + cmp r0, #0xff + beq _02036A88 + cmp r0, #2 + beq _02036A88 + cmp r0, #0xe + beq _02036A88 + ldr r1, _02036A8C ; =0x021D4140 + ldr r2, _02036A98 ; =0x0000069E + ldr r1, [r1, #8] + add r3, r1, r5 + ldrb r2, [r3, r2] + cmp r2, #0 + beq _02036A68 + mov r2, #1 + tst r0, r2 + bne _02036A88 +_02036A68: + ldr r3, _02036A9C ; =0x0000051C + mov r0, #0xc + add r1, r1, r3 + mul r0, r5 + add r0, r1, r0 + add r1, r4, #1 + sub r2, r6, #1 + add r3, #0xcb + bl sub_02033AF0 + ldr r0, _02036A8C ; =0x021D4140 + mov r2, #0 + ldr r0, [r0, #8] + add r1, r0, r5 + ldr r0, _02036A98 ; =0x0000069E + strb r2, [r1, r0] +_02036A88: + pop {r4, r5, r6, pc} + nop +_02036A8C: .word 0x021D4140 +_02036A90: .word 0x0000066C +_02036A94: .word 0x00000694 +_02036A98: .word 0x0000069E +_02036A9C: .word 0x0000051C + thumb_func_end sub_020369CC + + thumb_func_start sub_02036AA0 +sub_02036AA0: ; 0x02036AA0 + push {r3, lr} + cmp r0, #0 + beq _02036AB0 + ldr r0, _02036AB8 ; =0x0210F900 + ldrb r1, [r0, #1] + add r1, r1, #1 + strb r1, [r0, #1] + pop {r3, pc} +_02036AB0: + bl GF_AssertFail + pop {r3, pc} + nop +_02036AB8: .word 0x0210F900 + thumb_func_end sub_02036AA0 + + thumb_func_start sub_02036ABC +sub_02036ABC: ; 0x02036ABC + push {r3, lr} + cmp r0, #0 + beq _02036ACC + ldr r0, _02036AD4 ; =0x0210F900 + ldrb r1, [r0] + add r1, r1, #1 + strb r1, [r0] + pop {r3, pc} +_02036ACC: + bl GF_AssertFail + pop {r3, pc} + nop +_02036AD4: .word 0x0210F900 + thumb_func_end sub_02036ABC + + thumb_func_start sub_02036AD8 +sub_02036AD8: ; 0x02036AD8 + push {r4, lr} + ldr r0, _02036BD0 ; =0x021D4140 + ldr r0, [r0, #8] + cmp r0, #0 + beq _02036BCE + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + bne _02036BCE + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_0203772C + add r4, r0, #0 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + bl sub_02033298 + cmp r0, #4 + bne _02036BCE + bl sub_0203769C + bl sub_020373B4 + cmp r0, #0 + bne _02036B22 + bl sub_0203769C + pop {r4, pc} +_02036B22: + ldr r0, _02036BD4 ; =0x0210F900 + ldrb r1, [r0, #1] + cmp r1, #2 + beq _02036B30 + ldrb r0, [r0, #1] + cmp r0, #0 + bne _02036BCE +_02036B30: + bl sub_0203769C + cmp r0, #0 + beq _02036B84 + ldr r0, _02036BD4 ; =0x0210F900 + ldr r3, _02036BD8 ; =sub_02036AA0 + ldrb r1, [r0, #1] + mov r2, #0xe + add r1, r1, #1 + strb r1, [r0, #1] + ldr r0, _02036BD0 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02036BDC ; =0x000006AF + ldrb r0, [r1, r0] + lsl r0, r0, #6 + add r0, r1, r0 + lsl r1, r4, #0x10 + lsr r1, r1, #0x10 + bl sub_02033800 + cmp r0, #0 + bne _02036B66 + ldr r0, _02036BD4 ; =0x0210F900 + ldrb r1, [r0, #1] + sub r1, r1, #1 + strb r1, [r0, #1] + pop {r4, pc} +_02036B66: + ldr r2, _02036BD0 ; =0x021D4140 + ldr r1, _02036BDC ; =0x000006AF + ldr r4, [r2, #8] + mov r0, #1 + ldrb r3, [r4, r1] + sub r0, r0, r3 + strb r0, [r4, r1] + add r0, r1, #0 + ldr r2, [r2, #8] + sub r0, #0x47 + ldr r0, [r2, r0] + sub r1, #0x47 + add r0, r0, #1 + str r0, [r2, r1] + pop {r4, pc} +_02036B84: + bl sub_02033250 + ldr r1, _02036BE0 ; =0x0000FFFE + tst r0, r1 + beq _02036BCE + ldr r0, _02036BD4 ; =0x0210F900 + ldrb r1, [r0, #1] + add r1, r1, #1 + strb r1, [r0, #1] + mov r0, #1 + bl sub_02036AA0 + ldr r0, _02036BD0 ; =0x021D4140 + ldr r1, _02036BDC ; =0x000006AF + ldr r2, [r0, #8] + mov r0, #0 + ldrb r1, [r2, r1] + lsl r1, r1, #6 + add r1, r2, r1 + lsl r2, r4, #0x10 + lsr r2, r2, #0x10 + bl sub_0203690C + ldr r2, _02036BD0 ; =0x021D4140 + ldr r1, _02036BDC ; =0x000006AF + ldr r4, [r2, #8] + mov r0, #1 + ldrb r3, [r4, r1] + sub r0, r0, r3 + strb r0, [r4, r1] + add r0, r1, #0 + ldr r2, [r2, #8] + sub r0, #0x47 + ldr r0, [r2, r0] + sub r1, #0x47 + add r0, r0, #1 + str r0, [r2, r1] +_02036BCE: + pop {r4, pc} + .balign 4, 0 +_02036BD0: .word 0x021D4140 +_02036BD4: .word 0x0210F900 +_02036BD8: .word sub_02036AA0 +_02036BDC: .word 0x000006AF +_02036BE0: .word 0x0000FFFE + thumb_func_end sub_02036AD8 + + thumb_func_start sub_02036BE4 +sub_02036BE4: ; 0x02036BE4 + push {r3, r4, r5, r6, r7, lr} + ldr r7, _02036D08 ; =0x021D4140 + mov r2, #0x66 + ldr r5, [r7, #8] + lsl r2, r2, #4 + ldrb r0, [r5, r2] + mov r6, #0 + add r4, r6, #0 + cmp r0, #0 + beq _02036C02 + sub r1, r2, #4 + ldrh r1, [r5, r1] + mov r3, #0xf0 + tst r3, r1 + bne _02036C04 +_02036C02: + b _02036D06 +_02036C04: + cmp r0, #2 + bne _02036C42 + mov r0, #0x20 + tst r0, r1 + beq _02036C16 + mov r0, #0x10 + orr r0, r6 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 +_02036C16: + mov r0, #0x10 + tst r0, r1 + beq _02036C24 + mov r0, #0x20 + orr r0, r4 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 +_02036C24: + mov r0, #0x40 + tst r0, r1 + beq _02036C32 + mov r0, #0x80 + orr r0, r4 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 +_02036C32: + mov r0, #0x80 + tst r0, r1 + beq _02036CF0 + mov r0, #0x40 + orr r0, r4 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + b _02036CF0 +_02036C42: + add r0, r2, #2 + ldrh r0, [r5, r0] + cmp r0, #0 + beq _02036C64 + add r4, r0, #0 + add r0, r2, #1 + ldrsb r0, [r5, r0] + sub r1, r0, #1 + add r0, r2, #1 + strb r1, [r5, r0] + ldr r1, [r7, #8] + ldrsb r0, [r1, r0] + cmp r0, #0 + bge _02036CF0 + add r0, r2, #2 + strh r6, [r1, r0] + b _02036CF0 +_02036C64: + add r0, r2, #0 + sub r0, #0x34 + add r6, r5, r0 + sub r2, #0x34 + ldr r0, [r6, #8] + ldr r1, [r6, #0xc] + ldr r2, [r5, r2] + ldr r3, [r6, #4] + bl _ll_mul + add r3, r0, #0 + add r2, r1, #0 + ldr r0, [r6, #0x10] + ldr r1, [r6, #0x14] + add r0, r0, r3 + adc r1, r2 + ldr r2, _02036D0C ; =0x0000062C + str r0, [r5, r2] + mov r2, #0 + str r1, [r6, #4] + lsr r0, r1, #0x1e + lsl r1, r2, #2 + orr r1, r0 + cmp r1, #3 + bhi _02036CB8 + add r0, r1, r1 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_02036CA2: ; jump table + .short _02036CAA - _02036CA2 - 2 ; case 0 + .short _02036CAE - _02036CA2 - 2 ; case 1 + .short _02036CB2 - _02036CA2 - 2 ; case 2 + .short _02036CB6 - _02036CA2 - 2 ; case 3 +_02036CAA: + mov r4, #0x20 + b _02036CB8 +_02036CAE: + mov r4, #0x10 + b _02036CB8 +_02036CB2: + mov r4, #0x40 + b _02036CB8 +_02036CB6: + mov r4, #0x80 +_02036CB8: + ldr r0, _02036D08 ; =0x021D4140 + ldr r5, [r0, #8] + ldr r0, _02036D0C ; =0x0000062C + add r6, r5, r0 + ldr r0, [r6, #8] + ldr r1, [r6, #0xc] + ldr r2, [r6] + ldr r3, [r6, #4] + bl _ll_mul + ldr r3, [r6, #0x10] + ldr r2, [r6, #0x14] + add r0, r3, r0 + adc r2, r1 + ldr r1, _02036D0C ; =0x0000062C + mov r3, #0 + str r0, [r5, r1] + str r2, [r6, #4] + lsr r0, r2, #0x1c + lsl r2, r3, #4 + orr r2, r0 + add r0, r1, #0 + add r0, #0x35 + strb r2, [r5, r0] + ldr r0, _02036D08 ; =0x021D4140 + add r1, #0x36 + ldr r0, [r0, #8] + strh r4, [r0, r1] +_02036CF0: + ldr r2, _02036D08 ; =0x021D4140 + ldr r1, _02036D10 ; =0x0000065C + ldr r5, [r2, #8] + mov r0, #0xf0 + ldrh r3, [r5, r1] + bic r3, r0 + strh r3, [r5, r1] + ldr r2, [r2, #8] + ldrh r0, [r2, r1] + add r0, r0, r4 + strh r0, [r2, r1] +_02036D06: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02036D08: .word 0x021D4140 +_02036D0C: .word 0x0000062C +_02036D10: .word 0x0000065C + thumb_func_end sub_02036BE4 + + thumb_func_start sub_02036D14 +sub_02036D14: ; 0x02036D14 + push {r4, r5, r6, r7} + ldr r4, _02036D94 ; =0x021D4140 + lsl r6, r1, #1 + ldr r2, [r4, #8] + mov r5, #0 + add r3, r2, r6 + ldr r2, _02036D98 ; =0x00000644 + strh r5, [r3, r2] + ldrb r5, [r0] + mov r3, #0x10 + add r7, r5, #0 + and r7, r3 + cmp r7, #0x10 + bne _02036D8C + mov r7, #0xc + and r5, r7 + lsl r5, r5, #0x18 + lsr r5, r5, #0x18 + bne _02036D48 + ldr r3, [r4, #8] + add r4, r3, r2 + ldrh r3, [r4, r6] + mov r2, #0x40 + orr r2, r3 + strh r2, [r4, r6] + b _02036D7A +_02036D48: + cmp r5, #4 + bne _02036D5A + ldr r3, [r4, #8] + add r4, r3, r2 + ldrh r3, [r4, r6] + mov r2, #0x80 + orr r2, r3 + strh r2, [r4, r6] + b _02036D7A +_02036D5A: + cmp r5, #8 + bne _02036D6C + ldr r3, [r4, #8] + add r4, r3, r2 + ldrh r3, [r4, r6] + mov r2, #0x20 + orr r2, r3 + strh r2, [r4, r6] + b _02036D7A +_02036D6C: + cmp r5, #0xc + bne _02036D7A + ldr r4, [r4, #8] + add r4, r4, r2 + ldrh r2, [r4, r6] + orr r2, r3 + strh r2, [r4, r6] +_02036D7A: + ldrb r0, [r0] + asr r2, r0, #5 + mov r0, #7 + and r2, r0 + ldr r0, _02036D94 ; =0x021D4140 + ldr r0, [r0, #8] + add r1, r0, r1 + ldr r0, _02036D9C ; =0x00000654 + strb r2, [r1, r0] +_02036D8C: + mov r0, #1 + pop {r4, r5, r6, r7} + bx lr + nop +_02036D94: .word 0x021D4140 +_02036D98: .word 0x00000644 +_02036D9C: .word 0x00000654 + thumb_func_end sub_02036D14 + + thumb_func_start sub_02036DA0 +sub_02036DA0: ; 0x02036DA0 + push {r4, lr} + add r4, r0, #0 + ldr r0, _02036E4C ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02036E50 ; =0x0000065E + ldrb r0, [r1, r0] + cmp r0, #0 + beq _02036DB4 + mov r0, #0 + pop {r4, pc} +_02036DB4: + bl sub_0203751C + cmp r0, #0 + bne _02036DC0 + mov r0, #0 + pop {r4, pc} +_02036DC0: + ldr r0, _02036E4C ; =0x021D4140 + ldr r2, [r0, #8] + ldr r0, _02036E54 ; =0x000006B1 + ldrb r1, [r2, r0] + cmp r1, #0 + beq _02036DD0 + sub r1, r1, #1 + strb r1, [r2, r0] +_02036DD0: + ldr r1, _02036E4C ; =0x021D4140 + ldr r0, _02036E58 ; =0x0000065C + ldr r2, [r1, #8] + mov r3, #0x40 + ldrh r2, [r2, r0] + tst r3, r2 + beq _02036DF0 + ldrb r3, [r4] + mov r2, #0x10 + add r0, #0x55 + orr r2, r3 + strb r2, [r4] + ldr r1, [r1, #8] + mov r2, #8 + strb r2, [r1, r0] + b _02036E36 +_02036DF0: + mov r3, #0x80 + tst r3, r2 + beq _02036E08 + ldrb r3, [r4] + mov r2, #0x14 + add r0, #0x55 + orr r2, r3 + strb r2, [r4] + ldr r1, [r1, #8] + mov r2, #8 + strb r2, [r1, r0] + b _02036E36 +_02036E08: + mov r3, #0x20 + tst r3, r2 + beq _02036E20 + ldrb r3, [r4] + mov r2, #0x18 + add r0, #0x55 + orr r2, r3 + strb r2, [r4] + ldr r1, [r1, #8] + mov r2, #8 + strb r2, [r1, r0] + b _02036E36 +_02036E20: + mov r3, #0x10 + tst r2, r3 + beq _02036E36 + ldrb r3, [r4] + mov r2, #0x1c + add r0, #0x55 + orr r2, r3 + strb r2, [r4] + ldr r1, [r1, #8] + mov r2, #8 + strb r2, [r1, r0] +_02036E36: + ldr r0, _02036E4C ; =0x021D4140 + ldrb r2, [r4] + ldr r1, [r0, #8] + ldr r0, _02036E5C ; =0x0000065F + ldrb r0, [r1, r0] + lsl r0, r0, #5 + orr r0, r2 + strb r0, [r4] + mov r0, #0 + pop {r4, pc} + nop +_02036E4C: .word 0x021D4140 +_02036E50: .word 0x0000065E +_02036E54: .word 0x000006B1 +_02036E58: .word 0x0000065C +_02036E5C: .word 0x0000065F + thumb_func_end sub_02036DA0 + + thumb_func_start sub_02036E60 +sub_02036E60: ; 0x02036E60 + push {r3, r4, r5, lr} + sub sp, #8 + add r4, r0, #0 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_0203772C + add r5, r0, #0 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + ldr r0, _02036F24 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02036F28 ; =0x000006B4 + ldrb r0, [r1, r0] + cmp r0, #0 + bne _02036E90 + mov r0, #0 + b _02036E92 +_02036E90: + mov r0, #1 +_02036E92: + strb r0, [r4] + bl sub_02035FF0 + cmp r0, #0 + bne _02036EA2 + add r0, r4, #0 + bl sub_02036DA0 +_02036EA2: + ldr r1, _02036F24 ; =0x021D4140 + ldr r0, _02036F28 ; =0x000006B4 + ldr r2, [r1, #8] + mov r3, #0 + strb r3, [r2, r0] + mov r0, #0x16 + ldr r1, [r1, #8] + lsl r0, r0, #6 + add r0, r1, r0 + bl sub_02033C50 + cmp r0, #0 + beq _02036ED0 + ldrb r1, [r4] + mov r0, #2 + orr r0, r1 + strb r0, [r4] + ldrb r0, [r4] + cmp r0, #2 + bne _02036F1C + add sp, #8 + mov r0, #0 + pop {r3, r4, r5, pc} +_02036ED0: + sub r0, r5, #1 + str r0, [sp, #4] + add r0, r4, #1 + str r0, [sp] + ldr r0, _02036F24 ; =0x021D4140 + mov r2, #1 + ldr r1, [r0, #8] + mov r0, #0x16 + lsl r0, r0, #6 + add r0, r1, r0 + add r1, sp, #0 + bl sub_02033ECC + cmp r0, #0 + bne _02036EF8 + ldr r0, _02036F24 ; =0x021D4140 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _02036F28 ; =0x000006B4 + strb r2, [r1, r0] +_02036EF8: + bl sub_02035FF0 + cmp r0, #1 + bne _02036F1C + ldr r2, _02036F24 ; =0x021D4140 + ldr r1, _02036F2C ; =0x000006AA + ldr r3, [r2, #8] + ldrb r0, [r3, r1] + add r0, r0, #1 + strb r0, [r3, r1] + ldr r2, [r2, #8] + ldrb r0, [r4] + ldrb r1, [r2, r1] + lsl r2, r1, #4 + mov r1, #0xf0 + and r1, r2 + orr r0, r1 + strb r0, [r4] +_02036F1C: + mov r0, #1 + add sp, #8 + pop {r3, r4, r5, pc} + nop +_02036F24: .word 0x021D4140 +_02036F28: .word 0x000006B4 +_02036F2C: .word 0x000006AA + thumb_func_end sub_02036E60 + + thumb_func_start sub_02036F30 +sub_02036F30: ; 0x02036F30 + push {r4, lr} + sub sp, #8 + add r4, r0, #0 + mov r0, #0xb + strb r0, [r4] + ldr r0, _02036FA0 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02036FA4 ; =0x000006B5 + ldrb r0, [r1, r0] + cmp r0, #0 + bne _02036F4A + mov r0, #0 + b _02036F4C +_02036F4A: + mov r0, #1 +_02036F4C: + strb r0, [r4, #1] + bl sub_02033250 + asr r1, r0, #8 + strb r1, [r4, #2] + strb r0, [r4, #3] + mov r0, #0xbb + str r0, [sp, #4] + add r0, r4, #5 + str r0, [sp] + ldr r0, _02036FA0 ; =0x021D4140 + mov r2, #0 + ldr r1, [r0, #8] + mov r0, #0x5a + lsl r0, r0, #4 + add r0, r1, r0 + add r1, sp, #0 + bl sub_02033ECC + cmp r0, #0 + beq _02036F8C + ldr r0, _02036FA0 ; =0x021D4140 + mov r2, #0 + ldr r1, [r0, #8] + ldr r0, _02036FA4 ; =0x000006B5 + strb r2, [r1, r0] + ldr r1, [sp, #4] + mov r0, #0xbb + sub r0, r0, r1 + add sp, #8 + strb r0, [r4, #4] + pop {r4, pc} +_02036F8C: + ldr r0, _02036FA0 ; =0x021D4140 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _02036FA4 ; =0x000006B5 + strb r2, [r1, r0] + mov r0, #0xbb + strb r0, [r4, #4] + add sp, #8 + pop {r4, pc} + nop +_02036FA0: .word 0x021D4140 +_02036FA4: .word 0x000006B5 + thumb_func_end sub_02036F30 + + thumb_func_start sub_02036FA8 +sub_02036FA8: ; 0x02036FA8 + push {r3, lr} + ldr r0, _02036FD0 ; =0x021D4140 + ldr r2, [r0, #8] + ldr r0, _02036FD4 ; =0x000006BB + ldrb r1, [r2, r0] + cmp r1, #0 + bne _02036FBA + mov r0, #0 + pop {r3, pc} +_02036FBA: + add r0, r0, #1 + ldrb r0, [r2, r0] + bl _s32_div_f + cmp r1, #0 + bne _02036FCA + mov r0, #1 + pop {r3, pc} +_02036FCA: + mov r0, #0 + pop {r3, pc} + nop +_02036FD0: .word 0x021D4140 +_02036FD4: .word 0x000006BB + thumb_func_end sub_02036FA8 + + thumb_func_start sub_02036FD8 +sub_02036FD8: ; 0x02036FD8 + push {r4, r5, r6, lr} + sub sp, #8 + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + bl sub_0203769C + bl sub_020373B4 + cmp r0, #0 + bne _02036FF4 + add sp, #8 + mov r0, #0 + pop {r4, r5, r6, pc} +_02036FF4: + mov r0, #1 + str r0, [sp] + mov r0, #0 + str r0, [sp, #4] + ldr r0, _0203702C ; =0x021D4140 + add r2, r4, #0 + ldr r1, [r0, #8] + mov r0, #0x16 + lsl r0, r0, #6 + add r0, r1, r0 + add r1, r5, #0 + add r3, r6, #0 + bl sub_02033DF0 + cmp r0, #0 + beq _0203701A + add sp, #8 + mov r0, #1 + pop {r4, r5, r6, pc} +_0203701A: + bl sub_0203993C + cmp r0, #0xa + bne _02037026 + bl sub_02037974 +_02037026: + mov r0, #0 + add sp, #8 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203702C: .word 0x021D4140 + thumb_func_end sub_02036FD8 + + thumb_func_start sub_02037030 +sub_02037030: ; 0x02037030 + push {r4, r5, r6, lr} + sub sp, #8 + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + bl sub_0203769C + bl sub_020373B4 + cmp r0, #0 + bne _0203704C + add sp, #8 + mov r0, #0 + pop {r4, r5, r6, pc} +_0203704C: + mov r0, #1 + str r0, [sp] + str r0, [sp, #4] + ldr r0, _02037084 ; =0x021D4140 + add r2, r4, #0 + ldr r1, [r0, #8] + mov r0, #0x16 + lsl r0, r0, #6 + add r0, r1, r0 + add r1, r5, #0 + add r3, r6, #0 + bl sub_02033DF0 + cmp r0, #0 + beq _02037070 + add sp, #8 + mov r0, #1 + pop {r4, r5, r6, pc} +_02037070: + bl sub_0203993C + cmp r0, #0xa + bne _0203707C + bl sub_02037974 +_0203707C: + mov r0, #0 + add sp, #8 + pop {r4, r5, r6, pc} + nop +_02037084: .word 0x021D4140 + thumb_func_end sub_02037030 + + thumb_func_start sub_02037088 +sub_02037088: ; 0x02037088 + push {r4, r5, r6, lr} + sub sp, #8 + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + bl sub_0203769C + cmp r0, #0 + beq _020370A4 + bl GF_AssertFail + add sp, #8 + mov r0, #0 + pop {r4, r5, r6, pc} +_020370A4: + mov r0, #0 + bl sub_020373B4 + cmp r0, #0 + bne _020370B4 + add sp, #8 + mov r0, #0 + pop {r4, r5, r6, pc} +_020370B4: + bl sub_02035FF0 + cmp r0, #1 + bne _020370CA + add r0, r5, #0 + add r1, r4, #0 + add r2, r6, #0 + bl sub_02036FD8 + add sp, #8 + pop {r4, r5, r6, pc} +_020370CA: + mov r0, #1 + str r0, [sp] + mov r0, #0 + str r0, [sp, #4] + ldr r0, _02037104 ; =0x021D4140 + add r2, r4, #0 + ldr r1, [r0, #8] + mov r0, #0x5a + lsl r0, r0, #4 + add r0, r1, r0 + add r1, r5, #0 + add r3, r6, #0 + bl sub_02033DF0 + cmp r0, #0 + beq _020370F0 + add sp, #8 + mov r0, #1 + pop {r4, r5, r6, pc} +_020370F0: + bl sub_0203993C + cmp r0, #0xa + bne _020370FC + bl sub_02037974 +_020370FC: + mov r0, #0 + add sp, #8 + pop {r4, r5, r6, pc} + nop +_02037104: .word 0x021D4140 + thumb_func_end sub_02037088 + + thumb_func_start sub_02037108 +sub_02037108: ; 0x02037108 + push {r4, r5, r6, lr} + sub sp, #8 + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + bl sub_0203769C + cmp r0, #0 + beq _02037124 + bl sub_02037974 + add sp, #8 + mov r0, #0 + pop {r4, r5, r6, pc} +_02037124: + mov r0, #0 + bl sub_020373B4 + cmp r0, #0 + bne _02037134 + add sp, #8 + mov r0, #0 + pop {r4, r5, r6, pc} +_02037134: + bl sub_02035FF0 + cmp r0, #1 + bne _0203714A + add r0, r5, #0 + add r1, r4, #0 + add r2, r6, #0 + bl sub_02037030 + add sp, #8 + pop {r4, r5, r6, pc} +_0203714A: + mov r0, #1 + str r0, [sp] + str r0, [sp, #4] + ldr r0, _02037180 ; =0x021D4140 + add r2, r4, #0 + ldr r1, [r0, #8] + mov r0, #0x5a + lsl r0, r0, #4 + add r0, r1, r0 + add r1, r5, #0 + add r3, r6, #0 + bl sub_02033DF0 + cmp r0, #0 + beq _0203716E + add sp, #8 + mov r0, #1 + pop {r4, r5, r6, pc} +_0203716E: + bl sub_0203993C + cmp r0, #0xa + bne _0203717A + bl sub_02037974 +_0203717A: + mov r0, #0 + add sp, #8 + pop {r4, r5, r6, pc} + .balign 4, 0 +_02037180: .word 0x021D4140 + thumb_func_end sub_02037108 + + thumb_func_start sub_02037184 +sub_02037184: ; 0x02037184 + ldr r3, _0203718C ; =sub_02037108 + mov r2, #0 + bx r3 + nop +_0203718C: .word sub_02037108 + thumb_func_end sub_02037184 + + thumb_func_start sub_02037190 +sub_02037190: ; 0x02037190 + ldr r0, _0203719C ; =0x021D4140 + ldr r3, _020371A0 ; =sub_02033BE4 + ldr r1, [r0, #8] + ldr r0, _020371A4 ; =0x00000498 + add r0, r1, r0 + bx r3 + .balign 4, 0 +_0203719C: .word 0x021D4140 +_020371A0: .word sub_02033BE4 +_020371A4: .word 0x00000498 + thumb_func_end sub_02037190 + + thumb_func_start sub_020371A8 +sub_020371A8: ; 0x020371A8 + push {r4, lr} + ldr r4, [sp, #8] + bl sub_02034170 + mov r0, #0xee + strb r0, [r4, #0xa] + ldr r0, _020371C0 ; =0x0000FFFF + strh r0, [r4, #8] + mov r0, #0 + str r0, [r4, #4] + str r0, [r4] + pop {r4, pc} + .balign 4, 0 +_020371C0: .word 0x0000FFFF + thumb_func_end sub_020371A8 + + thumb_func_start sub_020371C4 +sub_020371C4: ; 0x020371C4 + push {r4, r5, r6, r7, lr} + sub sp, #0x14 + add r5, r0, #0 + str r1, [sp, #4] + str r2, [sp, #8] + add r4, r3, #0 + bl sub_02033BC4 + cmp r0, #0 + beq _020372D4 +_020371D8: + ldrb r7, [r4, #0xa] + cmp r7, #0xee + bne _020371EA + add r0, r5, #0 + bl sub_02033B68 + add r7, r0, #0 + cmp r7, #0xee + beq _020372CA +_020371EA: + mov r0, #4 + ldrsh r0, [r5, r0] + strb r7, [r4, #0xa] + ldrh r6, [r4, #8] + str r0, [sp, #0x10] + ldr r0, _020372D8 ; =0x0000FFFF + cmp r6, r0 + bne _0203723E + add r0, r7, #0 + bl sub_020341DC + add r6, r0, #0 + ldr r0, _020372DC ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _020372E0 ; =0x000006B8 + ldrb r0, [r1, r0] + cmp r0, #0 + bne _020372D4 + ldr r0, _020372D8 ; =0x0000FFFF + cmp r6, r0 + bne _0203723C + add r0, r5, #0 + bl sub_02033BC4 + cmp r0, #1 + bge _02037226 + ldr r0, [sp, #0x10] + add sp, #0x14 + strh r0, [r5, #4] + pop {r4, r5, r6, r7, pc} +_02037226: + add r0, r5, #0 + bl sub_02033B68 + lsl r6, r0, #8 + add r0, r5, #0 + bl sub_02033B68 + add r6, r6, r0 + mov r0, #4 + ldrsh r0, [r5, r0] + str r0, [sp, #0x10] +_0203723C: + strh r6, [r4, #8] +_0203723E: + add r0, r7, #0 + bl sub_02034244 + cmp r0, #0 + beq _0203729A + ldr r0, [r4, #4] + cmp r0, #0 + bne _0203725A + ldrh r2, [r4, #8] + ldr r1, [sp, #4] + add r0, r7, #0 + bl sub_02034280 + str r0, [r4, #4] +_0203725A: + ldr r2, [r4] + ldr r1, [sp, #8] + add r0, r5, #0 + sub r2, r6, r2 + bl sub_02033B4C + ldr r2, [r4, #4] + str r0, [sp, #0xc] + cmp r2, #0 + beq _0203727A + ldr r1, [r4] + ldr r0, [sp, #8] + add r1, r2, r1 + ldr r2, [sp, #0xc] + bl MIi_CpuCopy8 +_0203727A: + ldr r1, [r4] + ldr r0, [sp, #0xc] + add r0, r1, r0 + str r0, [r4] + cmp r0, r6 + blt _020372CA + str r4, [sp] + ldr r0, [sp, #4] + ldr r3, [r4, #4] + add r1, r7, #0 + add r2, r6, #0 + bl sub_020371A8 + cmp r7, #0x11 + beq _020372D4 + b _020372CA +_0203729A: + add r0, r5, #0 + bl sub_02033BC4 + cmp r0, r6 + blt _020372C2 + ldr r1, [sp, #8] + add r0, r5, #0 + add r2, r6, #0 + bl sub_02033B4C + ldr r0, [sp, #4] + ldr r3, [sp, #8] + add r1, r7, #0 + add r2, r6, #0 + str r4, [sp] + bl sub_020371A8 + cmp r7, #0x11 + beq _020372D4 + b _020372CA +_020372C2: + ldr r0, [sp, #0x10] + add sp, #0x14 + strh r0, [r5, #4] + pop {r4, r5, r6, r7, pc} +_020372CA: + add r0, r5, #0 + bl sub_02033BC4 + cmp r0, #0 + bne _020371D8 +_020372D4: + add sp, #0x14 + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_020372D8: .word 0x0000FFFF +_020372DC: .word 0x021D4140 +_020372E0: .word 0x000006B8 + thumb_func_end sub_020371C4 + + thumb_func_start sub_020372E4 +sub_020372E4: ; 0x020372E4 + push {r4, lr} + ldr r0, _02037328 ; =0x021D4140 + ldr r1, [r0, #8] + cmp r1, #0 + beq _02037326 + ldr r0, _0203732C ; =0x000006BA + ldrb r0, [r1, r0] + cmp r0, #0 + bne _02037326 + ldr r0, _02037330 ; =0x000004A4 + add r0, r1, r0 + bl sub_02033C28 + ldr r0, _02037328 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02037330 ; =0x000004A4 + add r0, r1, r0 + bl sub_02033BC4 + cmp r0, #0 + ble _02037326 + ldr r0, _02037328 ; =0x021D4140 + mov r3, #0x62 + ldr r4, [r0, #8] + ldr r2, _02037330 ; =0x000004A4 + lsl r3, r3, #4 + add r0, r4, r2 + sub r2, #0x10 + ldr r2, [r4, r2] + mov r1, #0 + add r3, r4, r3 + bl sub_020371C4 +_02037326: + pop {r4, pc} + .balign 4, 0 +_02037328: .word 0x021D4140 +_0203732C: .word 0x000006BA +_02037330: .word 0x000004A4 + thumb_func_end sub_020372E4 + + thumb_func_start sub_02037334 +sub_02037334: ; 0x02037334 + push {r3, r4, r5, r6, r7, lr} + ldr r0, _020373A4 ; =0x021D4140 + ldr r1, [r0, #8] + cmp r1, #0 + beq _020373A0 + ldr r0, _020373A8 ; =0x000006BA + ldrb r0, [r1, r0] + cmp r0, #0 + bne _020373A0 + bl sub_0203993C + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r0, r0, #1 + mov r4, #0 + str r0, [sp] + cmp r0, #0 + ble _020373A0 + ldr r7, _020373A4 ; =0x021D4140 + add r5, r4, #0 +_02037360: + ldr r1, [r7, #8] + ldr r0, _020373AC ; =0x0000051C + add r0, r1, r0 + add r0, r0, r5 + bl sub_02033C28 + ldr r1, [r7, #8] + ldr r0, _020373AC ; =0x0000051C + add r0, r1, r0 + add r0, r0, r5 + bl sub_02033BC4 + cmp r0, #0 + ble _02037396 + mov r3, #0x17 + ldr r6, [r7, #8] + ldr r0, _020373AC ; =0x0000051C + ldr r2, _020373B0 ; =0x00000494 + lsl r3, r3, #6 + add r0, r6, r0 + add r3, r6, r3 + ldr r2, [r6, r2] + add r0, r0, r5 + add r1, r4, #0 + add r3, r3, r5 + bl sub_020371C4 +_02037396: + ldr r0, [sp] + add r4, r4, #1 + add r5, #0xc + cmp r4, r0 + blt _02037360 +_020373A0: + pop {r3, r4, r5, r6, r7, pc} + nop +_020373A4: .word 0x021D4140 +_020373A8: .word 0x000006BA +_020373AC: .word 0x0000051C +_020373B0: .word 0x00000494 + thumb_func_end sub_02037334 + + thumb_func_start sub_020373B4 +sub_020373B4: ; 0x020373B4 + push {r4, lr} + add r4, r0, #0 + ldr r0, _02037448 ; =0x021D4140 + ldr r0, [r0, #8] + cmp r0, #0 + bne _020373C4 + mov r0, #0 + pop {r4, pc} +_020373C4: + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _020373F2 + ldr r0, _02037448 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _0203744C ; =0x000006B6 + ldrb r0, [r1, r0] + cmp r0, #0 + beq _020373EE + bl ov00_021EE4FC + lsl r0, r0, #0x10 + lsr r2, r0, #0x10 + mov r0, #1 + add r1, r0, #0 + lsl r1, r4 + tst r1, r2 + bne _02037444 +_020373EE: + mov r0, #0 + pop {r4, pc} +_020373F2: + bl sub_02037474 + cmp r0, #0 + bne _020373FE + mov r0, #0 + pop {r4, pc} +_020373FE: + bl sub_02033298 + cmp r0, #4 + beq _0203740A + mov r0, #0 + pop {r4, pc} +_0203740A: + bl sub_0203769C + cmp r4, r0 + bne _02037416 + mov r0, #1 + pop {r4, pc} +_02037416: + bl sub_0203769C + cmp r0, #0 + bne _02037430 + bl sub_02033250 + mov r1, #1 + add r2, r1, #0 + lsl r2, r4 + tst r0, r2 + beq _02037442 + add r0, r1, #0 + pop {r4, pc} +_02037430: + ldr r0, _02037448 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02037450 ; =0x00000694 + ldrh r2, [r1, r0] + mov r0, #1 + add r1, r0, #0 + lsl r1, r4 + tst r1, r2 + bne _02037444 +_02037442: + mov r0, #0 +_02037444: + pop {r4, pc} + nop +_02037448: .word 0x021D4140 +_0203744C: .word 0x000006B6 +_02037450: .word 0x00000694 + thumb_func_end sub_020373B4 + + thumb_func_start sub_02037454 +sub_02037454: ; 0x02037454 + push {r3, r4, r5, lr} + mov r4, #0 + add r5, r4, #0 +_0203745A: + lsl r0, r5, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _02037468 + add r4, r4, #1 +_02037468: + add r5, r5, #1 + cmp r5, #8 + blt _0203745A + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_02037454 + + thumb_func_start sub_02037474 +sub_02037474: ; 0x02037474 + push {r3, lr} + ldr r0, _02037494 ; =0x021D4140 + ldr r0, [r0, #8] + cmp r0, #0 + beq _0203748E + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _0203748E + mov r0, #1 + pop {r3, pc} +_0203748E: + bl sub_02035650 + pop {r3, pc} + .balign 4, 0 +_02037494: .word 0x021D4140 + thumb_func_end sub_02037474 + + thumb_func_start sub_02037498 +sub_02037498: ; 0x02037498 + ldr r1, _020374A4 ; =0x021D4140 + ldr r2, [r1, #8] + ldr r1, _020374A8 ; =0x0000065F + strb r0, [r2, r1] + bx lr + nop +_020374A4: .word 0x021D4140 +_020374A8: .word 0x0000065F + thumb_func_end sub_02037498 + + thumb_func_start sub_020374AC +sub_020374AC: ; 0x020374AC + ldr r1, _020374B8 ; =0x021D4140 + ldr r1, [r1, #8] + add r1, r1, r0 + ldr r0, _020374BC ; =0x00000654 + ldrb r0, [r1, r0] + bx lr + .balign 4, 0 +_020374B8: .word 0x021D4140 +_020374BC: .word 0x00000654 + thumb_func_end sub_020374AC + + thumb_func_start sub_020374C0 +sub_020374C0: ; 0x020374C0 + ldr r1, _020374DC ; =0x021D4140 + ldr r2, [r1, #8] + cmp r2, #0 + bne _020374CC + mov r0, #0 + bx lr +_020374CC: + ldr r1, _020374E0 ; =0x00000644 + add r3, r2, r1 + lsl r2, r0, #1 + ldrh r0, [r3, r2] + mov r1, #0 + strh r1, [r3, r2] + bx lr + nop +_020374DC: .word 0x021D4140 +_020374E0: .word 0x00000644 + thumb_func_end sub_020374C0 + + thumb_func_start sub_020374E4 +sub_020374E4: ; 0x020374E4 + ldr r0, _020374FC ; =0x021D4140 + ldr r3, [r0, #8] + cmp r3, #0 + beq _020374F8 + ldr r1, _02037500 ; =0x0000065C + mov r0, #2 + ldrh r2, [r3, r1] + lsl r0, r0, #0xe + orr r0, r2 + strh r0, [r3, r1] +_020374F8: + bx lr + nop +_020374FC: .word 0x021D4140 +_02037500: .word 0x0000065C + thumb_func_end sub_020374E4 + + thumb_func_start sub_02037504 +sub_02037504: ; 0x02037504 + ldr r0, _02037514 ; =0x021D4140 + ldr r2, [r0, #8] + cmp r2, #0 + beq _02037512 + ldr r0, _02037518 ; =0x0000065C + mov r1, #0 + strh r1, [r2, r0] +_02037512: + bx lr + .balign 4, 0 +_02037514: .word 0x021D4140 +_02037518: .word 0x0000065C + thumb_func_end sub_02037504 + + thumb_func_start sub_0203751C +sub_0203751C: ; 0x0203751C + ldr r0, _02037534 ; =0x021D4140 + ldr r1, [r0, #8] + cmp r1, #0 + beq _02037530 + ldr r0, _02037538 ; =0x0000065C + ldrh r1, [r1, r0] + mov r0, #2 + lsl r0, r0, #0xe + and r0, r1 + bx lr +_02037530: + mov r0, #1 + bx lr + .balign 4, 0 +_02037534: .word 0x021D4140 +_02037538: .word 0x0000065C + thumb_func_end sub_0203751C + + thumb_func_start sub_0203753C +sub_0203753C: ; 0x0203753C + push {r4, r5, r6, lr} + sub sp, #8 + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + bl sub_02035FF0 + cmp r0, #1 + bne _0203756E + mov r0, #1 + str r0, [sp] + mov r0, #0 + str r0, [sp, #4] + ldr r0, _02037590 ; =0x021D4140 + add r2, r4, #0 + ldr r1, [r0, #8] + mov r0, #0x16 + lsl r0, r0, #6 + add r0, r1, r0 + add r1, r5, #0 + add r3, r6, #0 + bl sub_02033DF0 + add sp, #8 + pop {r4, r5, r6, pc} +_0203756E: + mov r0, #1 + str r0, [sp] + mov r0, #0 + str r0, [sp, #4] + ldr r0, _02037590 ; =0x021D4140 + add r2, r4, #0 + ldr r1, [r0, #8] + mov r0, #0x5a + lsl r0, r0, #4 + add r0, r1, r0 + add r1, r5, #0 + add r3, r6, #0 + bl sub_02033DF0 + add sp, #8 + pop {r4, r5, r6, pc} + nop +_02037590: .word 0x021D4140 + thumb_func_end sub_0203753C + + thumb_func_start sub_02037594 +sub_02037594: ; 0x02037594 + push {r3, lr} + ldr r0, _0203760C ; =0x021D4140 + ldr r2, [r0, #8] + cmp r2, #0 + beq _02037608 + ldr r1, _02037610 ; =0x000006AB + ldrb r0, [r2, r1] + cmp r0, #1 + beq _020375AC + cmp r0, #3 + beq _020375E4 + pop {r3, pc} +_020375AC: + bl sub_02035FF0 + cmp r0, #1 + bne _020375C4 + ldr r1, _0203760C ; =0x021D4140 + mov r0, #0xb + ldr r2, [r1, #8] + ldr r1, _02037614 ; =0x000006AC + add r1, r2, r1 + bl sub_020376E0 + b _020375D4 +_020375C4: + ldr r1, _0203760C ; =0x021D4140 + mov r0, #0xb + ldr r2, [r1, #8] + ldr r1, _02037614 ; =0x000006AC + add r1, r2, r1 + mov r2, #1 + bl sub_02037108 +_020375D4: + cmp r0, #0 + beq _02037608 + ldr r0, _0203760C ; =0x021D4140 + mov r2, #2 + ldr r1, [r0, #8] + ldr r0, _02037610 ; =0x000006AB + strb r2, [r1, r0] + pop {r3, pc} +_020375E4: + add r1, r1, #1 + mov r0, #0xc + add r1, r2, r1 + bl sub_020376E0 + cmp r0, #0 + beq _02037608 + ldr r0, _0203760C ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02037614 ; =0x000006AC + ldrb r0, [r1, r0] + bl sub_02035FA8 + ldr r0, _0203760C ; =0x021D4140 + mov r2, #0 + ldr r1, [r0, #8] + ldr r0, _02037610 ; =0x000006AB + strb r2, [r1, r0] +_02037608: + pop {r3, pc} + nop +_0203760C: .word 0x021D4140 +_02037610: .word 0x000006AB +_02037614: .word 0x000006AC + thumb_func_end sub_02037594 + + thumb_func_start sub_02037618 +sub_02037618: ; 0x02037618 + push {r4, lr} + add r4, r2, #0 + bl sub_0203769C + cmp r0, #0 + bne _02037636 + ldr r1, _02037638 ; =0x021D4140 + ldr r0, _0203763C ; =0x000006AB + ldr r2, [r1, #8] + mov r3, #1 + strb r3, [r2, r0] + ldrb r2, [r4] + ldr r1, [r1, #8] + add r0, r0, #1 + strb r2, [r1, r0] +_02037636: + pop {r4, pc} + .balign 4, 0 +_02037638: .word 0x021D4140 +_0203763C: .word 0x000006AB + thumb_func_end sub_02037618 + + thumb_func_start sub_02037640 +sub_02037640: ; 0x02037640 + push {r4, lr} + add r4, r2, #0 + bl sub_0203769C + cmp r0, #0 + beq _0203765E + ldr r1, _02037660 ; =0x021D4140 + ldrb r3, [r4] + ldr r2, [r1, #8] + ldr r0, _02037664 ; =0x000006AC + strb r3, [r2, r0] + ldr r1, [r1, #8] + mov r2, #3 + sub r0, r0, #1 + strb r2, [r1, r0] +_0203765E: + pop {r4, pc} + .balign 4, 0 +_02037660: .word 0x021D4140 +_02037664: .word 0x000006AC + thumb_func_end sub_02037640 + + thumb_func_start sub_02037668 +sub_02037668: ; 0x02037668 + push {r4, lr} + add r4, r2, #0 + bl sub_0203769C + cmp r0, #0 + bne _02037690 + ldr r0, _02037694 ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02037698 ; =0x000006AB + ldrb r0, [r1, r0] + cmp r0, #2 + bne _02037690 + ldrb r0, [r4] + bl sub_02035FA8 + ldr r0, _02037694 ; =0x021D4140 + mov r2, #0 + ldr r1, [r0, #8] + ldr r0, _02037698 ; =0x000006AB + strb r2, [r1, r0] +_02037690: + pop {r4, pc} + nop +_02037694: .word 0x021D4140 +_02037698: .word 0x000006AB + thumb_func_end sub_02037668 + + thumb_func_start sub_0203769C +sub_0203769C: ; 0x0203769C + push {r3, lr} + ldr r0, _020376D0 ; =0x021D4140 + ldr r0, [r0, #8] + cmp r0, #0 + beq _020376CA + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _020376C4 + bl ov00_021E6964 + mov r1, #0 + mvn r1, r1 + cmp r0, r1 + beq _020376CA + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + pop {r3, pc} +_020376C4: + bl sub_020338F4 + pop {r3, pc} +_020376CA: + mov r0, #0 + pop {r3, pc} + nop +_020376D0: .word 0x021D4140 + thumb_func_end sub_0203769C + + thumb_func_start sub_020376D4 +sub_020376D4: ; 0x020376D4 + ldr r3, _020376DC ; =sub_02036FD8 + mov r2, #0 + bx r3 + nop +_020376DC: .word sub_02036FD8 + thumb_func_end sub_020376D4 + + thumb_func_start sub_020376E0 +sub_020376E0: ; 0x020376E0 + ldr r3, _020376E8 ; =sub_02037030 + mov r2, #0 + bx r3 + nop +_020376E8: .word sub_02037030 + thumb_func_end sub_020376E0 + + thumb_func_start sub_020376EC +sub_020376EC: ; 0x020376EC + ldr r3, _020376F4 ; =sub_02037030 + mov r1, #0 + add r2, r1, #0 + bx r3 + .balign 4, 0 +_020376F4: .word sub_02037030 + thumb_func_end sub_020376EC + + thumb_func_start sub_020376F8 +sub_020376F8: ; 0x020376F8 + ldr r3, _020376FC ; =sub_0203567C + bx r3 + .balign 4, 0 +_020376FC: .word sub_0203567C + thumb_func_end sub_020376F8 + + thumb_func_start sub_02037700 +sub_02037700: ; 0x02037700 + push {r3, lr} + ldr r0, _02037724 ; =0x021D4140 + ldr r1, [r0, #8] + cmp r1, #0 + beq _0203771E + ldr r0, _02037728 ; =0x000006B8 + ldrb r0, [r1, r0] + cmp r0, #0 + beq _0203771E + mov r0, #1 + add r1, r0, #0 + bl sub_020398D4 + mov r0, #1 + pop {r3, pc} +_0203771E: + bl sub_0203569C + pop {r3, pc} + .balign 4, 0 +_02037724: .word 0x021D4140 +_02037728: .word 0x000006B8 + thumb_func_end sub_02037700 + + thumb_func_start sub_0203772C +sub_0203772C: ; 0x0203772C + push {r3, lr} + bl sub_02033FC4 + cmp r0, #5 + blo _0203773A + mov r0, #0xc + pop {r3, pc} +_0203773A: + bl sub_02035FF0 + cmp r0, #0 + bne _02037746 + mov r0, #0xc + pop {r3, pc} +_02037746: + mov r0, #0x26 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203772C + + thumb_func_start sub_0203774C +sub_0203774C: ; 0x0203774C + push {r3, lr} + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FC4 + add r0, r0, #1 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203774C + + thumb_func_start sub_0203775C +sub_0203775C: ; 0x0203775C + push {r3, lr} + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_02033FF0 + add r0, r0, #1 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203775C + + thumb_func_start sub_0203776C +sub_0203776C: ; 0x0203776C + push {r3, lr} + bl sub_020357FC + cmp r0, #0 + bne _02037786 + bl sub_0203769C + cmp r0, #0 + bne _02037786 + mov r0, #2 + add r1, sp, #0 + bl sub_02037184 +_02037786: + bl sub_0203581C + pop {r3, pc} + thumb_func_end sub_0203776C + + thumb_func_start sub_0203778C +sub_0203778C: ; 0x0203778C + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x20 + add r4, r0, #0 + add r0, sp, #0x10 + add r1, sp, #4 + bl GF_RTC_CopyDateTime + ldr r0, _02037810 ; =gMain + ldr r6, [sp, #0x10] + mov r5, #0 + lsr r7, r6, #0x1c + lsl r5, r5, #4 + ldr r1, [sp, #0xc] + ldr r0, [r0, #0x2c] + lsl r6, r6, #4 + add r3, r1, r0 + ldr r0, [sp, #0x18] + orr r5, r7 + str r0, [sp] + ldr r0, [sp, #0x14] + ldr r1, [sp, #4] + add r6, r0, r6 + ldr r0, _02037814 ; =0x00000000 + ldr r2, [sp, #8] + adc r0, r5 + lsr r5, r6, #0x1b + lsl r0, r0, #5 + orr r0, r5 + ldr r5, [sp] + lsl r6, r6, #5 + add r6, r5, r6 + ldr r5, _02037814 ; =0x00000000 + adc r5, r0 + lsr r0, r6, #0x1b + lsl r5, r5, #5 + orr r5, r0 + lsl r0, r6, #5 + add r6, r1, r0 + ldr r1, _02037814 ; =0x00000000 + adc r1, r5 + lsr r0, r6, #0x1a + lsl r1, r1, #6 + orr r1, r0 + lsl r0, r6, #6 + add r5, r2, r0 + ldr r2, _02037814 ; =0x00000000 + adc r2, r1 + lsr r0, r5, #0x1a + lsl r1, r2, #6 + orr r1, r0 + lsl r0, r5, #6 + add r2, r3, r0 + ldr r0, _02037814 ; =0x00000000 + str r2, [r4] + adc r0, r1 + str r0, [r4, #4] + ldr r1, _02037818 ; =0x6C078965 + ldr r0, _0203781C ; =0x5D588B65 + str r1, [r4, #8] + str r0, [r4, #0xc] + ldr r0, _02037820 ; =0x00269EC3 + str r0, [r4, #0x10] + mov r0, #0 + str r0, [r4, #0x14] + add sp, #0x20 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02037810: .word gMain +_02037814: .word 0x00000000 +_02037818: .word 0x6C078965 +_0203781C: .word 0x5D588B65 +_02037820: .word 0x00269EC3 + thumb_func_end sub_0203778C + + thumb_func_start sub_02037824 +sub_02037824: ; 0x02037824 + add r1, r0, #0 + ldr r0, _02037834 ; =0x021D4140 + ldr r3, _02037838 ; =sub_02033F9C + ldr r2, [r0, #8] + mov r0, #0x5a + lsl r0, r0, #4 + add r0, r2, r0 + bx r3 + .balign 4, 0 +_02037834: .word 0x021D4140 +_02037838: .word sub_02033F9C + thumb_func_end sub_02037824 + + thumb_func_start sub_0203783C +sub_0203783C: ; 0x0203783C + ldr r0, _0203784C ; =0x021D4140 + ldr r3, _02037850 ; =sub_02033C50 + ldr r1, [r0, #8] + mov r0, #0x5a + lsl r0, r0, #4 + add r0, r1, r0 + bx r3 + nop +_0203784C: .word 0x021D4140 +_02037850: .word sub_02033C50 + thumb_func_end sub_0203783C + + thumb_func_start sub_02037854 +sub_02037854: ; 0x02037854 + ldr r0, _02037864 ; =0x021D4140 + ldr r3, _02037868 ; =sub_02033C50 + ldr r1, [r0, #8] + mov r0, #0x16 + lsl r0, r0, #6 + add r0, r1, r0 + bx r3 + nop +_02037864: .word 0x021D4140 +_02037868: .word sub_02033C50 + thumb_func_end sub_02037854 + + thumb_func_start sub_0203786C +sub_0203786C: ; 0x0203786C + ldr r1, _02037878 ; =0x021D4140 + ldr r2, [r1, #8] + ldr r1, _0203787C ; =0x000006B6 + strb r0, [r2, r1] + bx lr + nop +_02037878: .word 0x021D4140 +_0203787C: .word 0x000006B6 + thumb_func_end sub_0203786C + + thumb_func_start sub_02037880 +sub_02037880: ; 0x02037880 + ldr r0, _0203788C ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02037890 ; =0x000006B6 + ldrb r0, [r1, r0] + bx lr + nop +_0203788C: .word 0x021D4140 +_02037890: .word 0x000006B6 + thumb_func_end sub_02037880 + + thumb_func_start sub_02037894 +sub_02037894: ; 0x02037894 + ldr r2, _020378A4 ; =0x021D4140 + ldr r2, [r2, #8] + cmp r2, #0 + beq _020378A2 + add r2, r2, r1 + ldr r1, _020378A8 ; =0x000006A6 + strb r0, [r2, r1] +_020378A2: + bx lr + .balign 4, 0 +_020378A4: .word 0x021D4140 +_020378A8: .word 0x000006A6 + thumb_func_end sub_02037894 + + thumb_func_start sub_020378AC +sub_020378AC: ; 0x020378AC + ldr r1, _020378C4 ; =0x021D4140 + ldr r1, [r1, #8] + cmp r1, #0 + beq _020378C0 + add r2, r1, r0 + ldr r1, _020378C8 ; =0x000006A6 + ldrb r1, [r2, r1] + cmp r1, #0xff + beq _020378C0 + add r0, r1, #0 +_020378C0: + bx lr + nop +_020378C4: .word 0x021D4140 +_020378C8: .word 0x000006A6 + thumb_func_end sub_020378AC + + thumb_func_start sub_020378CC +sub_020378CC: ; 0x020378CC + push {r3, lr} + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _020378E0 + bl ov00_021E7080 + pop {r3, pc} +_020378E0: + mov r0, #0 + pop {r3, pc} + thumb_func_end sub_020378CC + + thumb_func_start sub_020378E4 +sub_020378E4: ; 0x020378E4 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _02037922 + ldr r2, _02037924 ; =0x021D4140 + ldr r1, _02037928 ; =0x00000664 + ldr r3, [r2, #8] + ldr r0, [r3, r1] + cmp r0, r4 + beq _02037922 + str r4, [r3, r1] + cmp r4, #0 + beq _02037922 + ldr r3, [r2, #8] + mov r0, #0 + add r1, r1, #4 + str r0, [r3, r1] + ldr r1, _0203792C ; =0x0000066C + add r5, r0, #0 + add r4, r0, #0 +_02037914: + ldr r3, [r2, #8] + add r0, r0, #1 + add r3, r3, r5 + add r5, r5, #4 + str r4, [r3, r1] + cmp r0, #8 + blt _02037914 +_02037922: + pop {r3, r4, r5, pc} + .balign 4, 0 +_02037924: .word 0x021D4140 +_02037928: .word 0x00000664 +_0203792C: .word 0x0000066C + thumb_func_end sub_020378E4 + + thumb_func_start sub_02037930 +sub_02037930: ; 0x02037930 + push {r4, lr} + add r4, r0, #0 + bl sub_020378E4 + bl sub_0203993C + bl sub_02034044 + cmp r0, #0 + beq _02037956 + cmp r4, #0 + beq _02037950 + mov r0, #0 + bl ov00_021E70CC + pop {r4, pc} +_02037950: + mov r0, #1 + bl ov00_021E70CC +_02037956: + pop {r4, pc} + thumb_func_end sub_02037930 + + thumb_func_start sub_02037958 +sub_02037958: ; 0x02037958 + ldr r0, _0203796C ; =0x021D4140 + ldr r1, [r0, #8] + ldr r0, _02037970 ; =0x000006B1 + ldrb r0, [r1, r0] + cmp r0, #0 + beq _02037968 + mov r0, #1 + bx lr +_02037968: + mov r0, #0 + bx lr + .balign 4, 0 +_0203796C: .word 0x021D4140 +_02037970: .word 0x000006B1 + thumb_func_end sub_02037958 + + thumb_func_start sub_02037974 +sub_02037974: ; 0x02037974 + ldr r0, _02037980 ; =0x021D4140 + mov r2, #1 + ldr r1, [r0, #8] + ldr r0, _02037984 ; =0x000006B8 + strb r2, [r1, r0] + bx lr + .balign 4, 0 +_02037980: .word 0x021D4140 +_02037984: .word 0x000006B8 + thumb_func_end sub_02037974 + + thumb_func_start sub_02037988 +sub_02037988: ; 0x02037988 + ldr r0, _02037998 ; =0x021D4140 + ldr r2, [r0, #8] + cmp r2, #0 + beq _02037996 + ldr r0, _0203799C ; =0x000006B9 + mov r1, #1 + strb r1, [r2, r0] +_02037996: + bx lr + .balign 4, 0 +_02037998: .word 0x021D4140 +_0203799C: .word 0x000006B9 + thumb_func_end sub_02037988 + + thumb_func_start sub_020379A0 +sub_020379A0: ; 0x020379A0 + push {r4, lr} + ldr r1, _020379F0 ; =0x021D414C + ldr r1, [r1] + cmp r1, #0 + bne _020379C0 + mov r1, #0x99 + lsl r1, r1, #2 + bl AllocFromHeap + ldr r1, _020379F0 ; =0x021D414C + mov r2, #0x99 + str r0, [r1] + mov r1, #0 + lsl r2, r2, #2 + bl MIi_CpuFill8 +_020379C0: + ldr r1, _020379F0 ; =0x021D414C + mov r3, #0 + mov r0, #0xff +_020379C6: + ldr r2, [r1] + add r2, r2, r3 + add r3, r3, #1 + strb r0, [r2, #0x10] + cmp r3, #8 + blt _020379C6 + ldr r3, _020379F0 ; =0x021D414C + ldr r1, _020379F4 ; =0x00000261 + ldr r2, [r3] + strb r0, [r2, r1] + ldr r4, [r3] + add r2, r1, #1 + strb r0, [r4, r2] + ldr r2, [r3] + mov r4, #0 + add r0, r1, #2 + strb r4, [r2, r0] + ldr r2, [r3] + sub r0, r1, #1 + strb r4, [r2, r0] + pop {r4, pc} + .balign 4, 0 +_020379F0: .word 0x021D414C +_020379F4: .word 0x00000261 + thumb_func_end sub_020379A0 + + thumb_func_start sub_020379F8 +sub_020379F8: ; 0x020379F8 + push {r3, lr} + ldr r0, _02037A0C ; =0x021D414C + ldr r0, [r0] + bl FreeToHeap + ldr r0, _02037A0C ; =0x021D414C + mov r1, #0 + str r1, [r0] + pop {r3, pc} + nop +_02037A0C: .word 0x021D414C + thumb_func_end sub_020379F8 + + thumb_func_start sub_02037A10 +sub_02037A10: ; 0x02037A10 + ldr r0, _02037A20 ; =0x021D414C + ldr r0, [r0] + cmp r0, #0 + beq _02037A1C + mov r0, #1 + bx lr +_02037A1C: + mov r0, #0 + bx lr + .balign 4, 0 +_02037A20: .word 0x021D414C + thumb_func_end sub_02037A10 + + thumb_func_start sub_02037A24 +sub_02037A24: ; 0x02037A24 + push {r3, r4, r5, r6, lr} + sub sp, #4 + ldrb r1, [r2] + add r5, r0, #0 + add r0, sp, #0 + strb r1, [r0] + bl sub_0203769C + cmp r0, #0 + bne _02037A8E + add r0, sp, #0 + strb r5, [r0, #1] + ldrb r1, [r0] + strb r1, [r0, #2] + add r1, sp, #0 + mov r0, #0x12 + add r1, #1 + bl sub_02037184 + ldr r6, _02037A94 ; =0x021D414C + add r4, sp, #0 + ldr r0, [r6] + ldrb r1, [r4] + add r0, r0, r5 + mov r5, #0 + strb r1, [r0, #0x10] +_02037A58: + lsl r0, r5, #0x10 + lsr r0, r0, #0x10 + bl sub_020373B4 + cmp r0, #0 + beq _02037A70 + ldr r0, [r6] + ldrb r1, [r4] + add r0, r0, r5 + ldrb r0, [r0, #0x10] + cmp r1, r0 + bne _02037A8E +_02037A70: + add r5, r5, #1 + cmp r5, #8 + blt _02037A58 + mov r0, #0x11 + add r1, sp, #0 + bl sub_02037184 + cmp r0, #0 + bne _02037A8E + ldr r0, _02037A94 ; =0x021D414C + mov r2, #1 + ldr r1, [r0] + mov r0, #0x26 + lsl r0, r0, #4 + strb r2, [r1, r0] +_02037A8E: + add sp, #4 + pop {r3, r4, r5, r6, pc} + nop +_02037A94: .word 0x021D414C + thumb_func_end sub_02037A24 + + thumb_func_start sub_02037A98 +sub_02037A98: ; 0x02037A98 + ldr r0, _02037AA8 ; =0x021D414C + ldrb r3, [r2, #1] + ldr r1, [r0] + ldrb r0, [r2] + add r0, r1, r0 + strb r3, [r0, #0x10] + bx lr + nop +_02037AA8: .word 0x021D414C + thumb_func_end sub_02037A98 + + thumb_func_start sub_02037AAC +sub_02037AAC: ; 0x02037AAC + ldr r0, _02037AB8 ; =0x021D414C + ldrb r2, [r2] + ldr r1, [r0] + ldr r0, _02037ABC ; =0x00000261 + strb r2, [r1, r0] + bx lr + .balign 4, 0 +_02037AB8: .word 0x021D414C +_02037ABC: .word 0x00000261 + thumb_func_end sub_02037AAC + + thumb_func_start sub_02037AC0 +sub_02037AC0: ; 0x02037AC0 + ldr r2, _02037AD4 ; =0x021D414C + ldr r1, _02037AD8 ; =0x00000262 + ldr r3, [r2] + strb r0, [r3, r1] + ldr r2, [r2] + mov r3, #1 + add r0, r1, #1 + strb r3, [r2, r0] + bx lr + nop +_02037AD4: .word 0x021D414C +_02037AD8: .word 0x00000262 + thumb_func_end sub_02037AC0 + + thumb_func_start sub_02037ADC +sub_02037ADC: ; 0x02037ADC + push {r3, lr} + ldr r0, _02037B30 ; =0x021D414C + ldr r2, [r0] + cmp r2, #0 + beq _02037B2C + ldr r1, _02037B34 ; =0x00000263 + ldrb r0, [r2, r1] + cmp r0, #0 + beq _02037B06 + sub r1, r1, #1 + mov r0, #0x10 + add r1, r2, r1 + bl sub_020376E0 + cmp r0, #0 + beq _02037B06 + ldr r0, _02037B30 ; =0x021D414C + mov r2, #0 + ldr r1, [r0] + ldr r0, _02037B34 ; =0x00000263 + strb r2, [r1, r0] +_02037B06: + ldr r0, _02037B30 ; =0x021D414C + ldr r1, [r0] + mov r0, #0x26 + lsl r0, r0, #4 + ldrb r0, [r1, r0] + cmp r0, #0 + beq _02037B2C + mov r0, #0x11 + add r1, #0x10 + bl sub_02037184 + cmp r0, #0 + beq _02037B2C + ldr r0, _02037B30 ; =0x021D414C + mov r2, #0 + ldr r1, [r0] + mov r0, #0x26 + lsl r0, r0, #4 + strb r2, [r1, r0] +_02037B2C: + pop {r3, pc} + nop +_02037B30: .word 0x021D414C +_02037B34: .word 0x00000263 + thumb_func_end sub_02037ADC + + thumb_func_start sub_02037B38 +sub_02037B38: ; 0x02037B38 + ldr r1, _02037B54 ; =0x021D414C + ldr r2, [r1] + cmp r2, #0 + bne _02037B44 + mov r0, #1 + bx lr +_02037B44: + ldr r1, _02037B58 ; =0x00000261 + ldrb r1, [r2, r1] + cmp r1, r0 + bne _02037B50 + mov r0, #1 + bx lr +_02037B50: + mov r0, #0 + bx lr + .balign 4, 0 +_02037B54: .word 0x021D414C +_02037B58: .word 0x00000261 + thumb_func_end sub_02037B38 + + thumb_func_start sub_02037B5C +sub_02037B5C: ; 0x02037B5C + ldr r1, _02037B68 ; =0x021D414C + ldr r1, [r1] + add r0, r1, r0 + ldrb r0, [r0, #0x10] + bx lr + nop +_02037B68: .word 0x021D414C + thumb_func_end sub_02037B5C + + thumb_func_start sub_02037B6C +sub_02037B6C: ; 0x02037B6C + push {r3, r4} + lsl r4, r0, #1 + ldr r0, _02037B84 ; =0x021D414C + ldrb r3, [r2] + ldr r1, [r0] + strb r3, [r1, r4] + ldr r0, [r0] + ldrb r1, [r2, #1] + add r0, r0, r4 + strb r1, [r0, #1] + pop {r3, r4} + bx lr + .balign 4, 0 +_02037B84: .word 0x021D414C + thumb_func_end sub_02037B6C + + thumb_func_start sub_02037B88 +sub_02037B88: ; 0x02037B88 + mov r0, #2 + bx lr + thumb_func_end sub_02037B88 + + thumb_func_start sub_02037B8C +sub_02037B8C: ; 0x02037B8C + push {r3, lr} + add r2, sp, #0 + strb r0, [r2] + strb r1, [r2, #1] + mov r0, #0x13 + add r1, sp, #0 + bl sub_020376E0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02037B8C + + thumb_func_start sub_02037BA0 +sub_02037BA0: ; 0x02037BA0 + ldr r2, _02037BC4 ; =0x021D414C + ldr r3, [r2] + cmp r3, #0 + bne _02037BAE + mov r0, #0 + mvn r0, r0 + bx lr +_02037BAE: + lsl r2, r0, #1 + ldrb r0, [r3, r2] + cmp r1, r0 + bne _02037BBC + add r0, r3, r2 + ldrb r0, [r0, #1] + bx lr +_02037BBC: + mov r0, #0 + mvn r0, r0 + bx lr + nop +_02037BC4: .word 0x021D414C + thumb_func_end sub_02037BA0 + + thumb_func_start sub_02037BC8 +sub_02037BC8: ; 0x02037BC8 + push {r3, r4, r5, r6, r7, lr} + mov r4, #0 + ldr r6, _02037BE8 ; =0x021D414C + add r5, r4, #0 + add r7, r4, #0 +_02037BD2: + ldr r0, [r6] + add r1, r7, #0 + add r0, r0, r5 + mov r2, #2 + bl MIi_CpuFill8 + add r4, r4, #1 + add r5, r5, #2 + cmp r4, #8 + blt _02037BD2 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02037BE8: .word 0x021D414C + thumb_func_end sub_02037BC8 + + thumb_func_start sub_02037BEC +sub_02037BEC: ; 0x02037BEC + push {r3, r4} + mov r4, #0 + mov r0, #0x96 + ldr r1, _02037C08 ; =0x021D414C + add r3, r4, #0 + lsl r0, r0, #2 +_02037BF8: + ldr r2, [r1] + add r2, r2, r4 + add r4, r4, #1 + strb r3, [r2, r0] + cmp r4, #8 + blt _02037BF8 + pop {r3, r4} + bx lr + .balign 4, 0 +_02037C08: .word 0x021D414C + thumb_func_end sub_02037BEC + + thumb_func_start sub_02037C0C +sub_02037C0C: ; 0x02037C0C + push {r4, lr} + ldr r2, _02037C40 ; =0x021D414C + ldr r3, [r2] + cmp r3, #0 + beq _02037C3A + add r4, r0, #0 + mov r2, #0x48 + mul r4, r2 + add r3, #0x18 + add r0, r1, #0 + add r1, r3, r4 + mov r2, #0x46 + bl MIi_CpuCopy8 + ldr r1, _02037C40 ; =0x021D414C + mov r0, #0x14 + ldr r1, [r1] + add r1, #0x18 + add r1, r1, r4 + bl sub_020376E0 + mov r0, #1 + pop {r4, pc} +_02037C3A: + mov r0, #0 + pop {r4, pc} + nop +_02037C40: .word 0x021D414C + thumb_func_end sub_02037C0C + + thumb_func_start sub_02037C44 +sub_02037C44: ; 0x02037C44 + ldr r1, _02037C64 ; =0x021D414C + ldr r3, [r1] + mov r1, #0x96 + add r2, r3, r0 + lsl r1, r1, #2 + ldrb r1, [r2, r1] + cmp r1, #0 + beq _02037C5E + mov r1, #0x48 + add r3, #0x18 + mul r1, r0 + add r0, r3, r1 + bx lr +_02037C5E: + mov r0, #0 + bx lr + nop +_02037C64: .word 0x021D414C + thumb_func_end sub_02037C44 + + thumb_func_start sub_02037C68 +sub_02037C68: ; 0x02037C68 + push {r3, r4, r5, lr} + ldr r3, _02037C90 ; =0x021D414C + add r1, r0, #0 + ldr r0, [r3] + mov r5, #1 + add r4, r0, r1 + mov r0, #0x96 + lsl r0, r0, #2 + strb r5, [r4, r0] + ldr r3, [r3] + add r0, r2, #0 + mov r2, #0x48 + add r3, #0x18 + mul r2, r1 + add r1, r3, r2 + mov r2, #0x46 + bl MIi_CpuCopy8 + pop {r3, r4, r5, pc} + nop +_02037C90: .word 0x021D414C + thumb_func_end sub_02037C68 + + thumb_func_start sub_02037C94 +sub_02037C94: ; 0x02037C94 + mov r0, #0x46 + bx lr + thumb_func_end sub_02037C94 + + thumb_func_start sub_02037C98 +sub_02037C98: ; 0x02037C98 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, _02037D28 ; =0x021D4150 + add r4, r1, #0 + ldr r0, [r0] + cmp r0, #0 + bne _02037D24 + cmp r5, #0 + bne _02037CAE + bl GF_AssertFail +_02037CAE: + bl sub_02034D8C + mov r0, #0xf + mov r1, #0x68 + bl AllocFromHeap + ldr r1, _02037D28 ; =0x021D4150 + mov r2, #0x68 + str r0, [r1] + mov r1, #0 + bl MIi_CpuFill8 + ldr r0, _02037D28 ; =0x021D4150 + mov r2, #0x32 + ldr r1, [r0] + str r2, [r1, #0x44] + ldr r1, [r0] + mov r2, #1 + add r1, #0x52 + strb r2, [r1] + ldr r0, [r0] + str r5, [r0, #0x28] + add r0, r5, #0 + bl Sav2_PlayerData_GetProfileAddr + ldr r1, _02037D28 ; =0x021D4150 + ldr r2, [r1] + str r0, [r2, #0x2c] + ldr r0, [r1] + mov r2, #2 + add r0, #0x4a + strb r2, [r0] + ldr r0, [r1] + mov r2, #0 + add r0, #0x4c + strb r2, [r0] + ldr r0, [r1] + add r0, #0x57 + strb r2, [r0] + ldr r0, [r1] + add r0, #0x4e + strb r4, [r0] + ldr r0, [r1] + add r0, #0xc + bl sub_0203778C + mov r0, #0 + add r1, r0, #0 + add r2, r0, #0 + bl sub_0203410C + cmp r4, #9 + beq _02037D24 + cmp r4, #0x11 + beq _02037D24 + cmp r4, #0xf + beq _02037D24 + bl sub_0203A880 +_02037D24: + pop {r3, r4, r5, pc} + nop +_02037D28: .word 0x021D4150 + thumb_func_end sub_02037C98 + + thumb_func_start sub_02037D2C +sub_02037D2C: ; 0x02037D2C + push {r3, lr} + ldr r0, _02037D74 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _02037D72 + bl sub_02034154 + ldr r0, _02037D74 ; =0x021D4150 + ldr r0, [r0] + ldr r0, [r0] + cmp r0, #0 + beq _02037D48 + bl FreeToHeap +_02037D48: + bl sub_02039998 + cmp r0, #0 + beq _02037D56 + mov r0, #0x30 + bl sub_0201A9C4 +_02037D56: + bl sub_0203A914 + bl sub_02034DE0 + ldr r0, _02037D74 ; =0x021D4150 + ldr r0, [r0] + bl FreeToHeap + mov r0, #0xf + bl sub_0201A9C4 + ldr r0, _02037D74 ; =0x021D4150 + mov r1, #0 + str r1, [r0] +_02037D72: + pop {r3, pc} + .balign 4, 0 +_02037D74: .word 0x021D4150 + thumb_func_end sub_02037D2C + + thumb_func_start sub_02037D78 +sub_02037D78: ; 0x02037D78 + ldr r0, _02037D88 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _02037D84 + mov r0, #1 + bx lr +_02037D84: + mov r0, #0 + bx lr + .balign 4, 0 +_02037D88: .word 0x021D4150 + thumb_func_end sub_02037D78 + + thumb_func_start sub_02037D8C +sub_02037D8C: ; 0x02037D8C + push {r3, r4, r5, r6, r7, lr} + add r6, r0, #0 + add r7, r1, #0 + add r5, r2, #0 + add r4, r3, #0 + bl sub_02037474 + cmp r0, #0 + bne _02037DC4 + ldr r2, _02037DC8 ; =0x00007080 + mov r0, #3 + mov r1, #0xf + bl sub_0201A91C + add r0, r6, #0 + add r1, r7, #0 + bl sub_02037C98 + ldr r0, _02037DCC ; =0x021D4150 + ldr r1, [r0] + add r1, #0x4f + strb r5, [r1] + ldr r0, [r0] + mov r1, #0 + str r4, [r0, #0x30] + ldr r0, _02037DD0 ; =sub_02038218 + bl sub_020381C0 +_02037DC4: + pop {r3, r4, r5, r6, r7, pc} + nop +_02037DC8: .word 0x00007080 +_02037DCC: .word 0x021D4150 +_02037DD0: .word sub_02038218 + thumb_func_end sub_02037D8C + + thumb_func_start sub_02037DD4 +sub_02037DD4: ; 0x02037DD4 + push {r3, r4, r5, r6, r7, lr} + add r6, r0, #0 + add r7, r1, #0 + add r5, r2, #0 + add r4, r3, #0 + bl sub_02037474 + cmp r0, #0 + bne _02037E0C + ldr r2, _02037E10 ; =0x00007080 + mov r0, #3 + mov r1, #0xf + bl sub_0201A91C + add r0, r6, #0 + add r1, r7, #0 + bl sub_02037C98 + ldr r0, _02037E14 ; =0x021D4150 + ldr r1, [r0] + add r1, #0x4f + strb r5, [r1] + ldr r0, [r0] + mov r1, #0 + str r4, [r0, #0x30] + ldr r0, _02037E18 ; =sub_02038294 + bl sub_020381C0 +_02037E0C: + pop {r3, r4, r5, r6, r7, pc} + nop +_02037E10: .word 0x00007080 +_02037E14: .word 0x021D4150 +_02037E18: .word sub_02038294 + thumb_func_end sub_02037DD4 + + thumb_func_start sub_02037E1C +sub_02037E1C: ; 0x02037E1C + ldr r1, _02037E2C ; =0x021D4150 + ldr r3, _02037E30 ; =sub_020381C0 + ldr r1, [r1] + add r1, #0x4d + strb r0, [r1] + ldr r0, _02037E34 ; =sub_020382E4 + mov r1, #0 + bx r3 + .balign 4, 0 +_02037E2C: .word 0x021D4150 +_02037E30: .word sub_020381C0 +_02037E34: .word sub_020382E4 + thumb_func_end sub_02037E1C + + thumb_func_start sub_02037E38 +sub_02037E38: ; 0x02037E38 + push {r3, lr} + bl sub_02036274 + ldr r0, _02037E48 ; =sub_020383B0 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_02037E48: .word sub_020383B0 + thumb_func_end sub_02037E38 + + thumb_func_start sub_02037E4C +sub_02037E4C: ; 0x02037E4C + push {r3, lr} + ldr r0, _02037E94 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x40] + cmp r0, #0 + ble _02037E5E + sub r0, r0, #1 + str r0, [r1, #0x40] + b _02037E64 +_02037E5E: + bne _02037E64 + bl sub_020399EC +_02037E64: + ldr r0, _02037E94 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _02037E72 + sub r0, r0, #1 + str r0, [r1, #0x44] +_02037E72: + bl sub_02034FE8 + cmp r0, #0 + beq _02037E90 + ldr r0, _02037E94 ; =0x021D4150 + ldr r0, [r0] + ldr r0, [r0, #0x44] + cmp r0, #0 + bne _02037E90 + bl sub_02036024 + ldr r0, _02037E98 ; =sub_02038408 + mov r1, #0 + bl sub_020381C0 +_02037E90: + pop {r3, pc} + nop +_02037E94: .word 0x021D4150 +_02037E98: .word sub_02038408 + thumb_func_end sub_02037E4C + + thumb_func_start sub_02037E9C +sub_02037E9C: ; 0x02037E9C + push {r3, lr} + ldr r0, _02037EB4 ; =0x021D4150 + ldr r1, [r0] + cmp r1, #0 + beq _02037EB2 + ldr r0, _02037EB8 ; =0x00000708 + str r0, [r1, #0x40] + ldr r0, _02037EBC ; =sub_02037E4C + mov r1, #5 + bl sub_020381C0 +_02037EB2: + pop {r3, pc} + .balign 4, 0 +_02037EB4: .word 0x021D4150 +_02037EB8: .word 0x00000708 +_02037EBC: .word sub_02037E4C + thumb_func_end sub_02037E9C + + thumb_func_start sub_02037EC0 +sub_02037EC0: ; 0x02037EC0 + ldr r3, _02037EC4 ; =sub_02033A0C + bx r3 + .balign 4, 0 +_02037EC4: .word sub_02033A0C + thumb_func_end sub_02037EC0 + + thumb_func_start sub_02037EC8 +sub_02037EC8: ; 0x02037EC8 + push {r4} + sub sp, #0xc + ldr r4, _02037F10 ; =0x020F6A90 + add r3, sp, #0 + ldmia r4!, {r0, r1} + add r2, r3, #0 + stmia r3!, {r0, r1} + ldr r0, [r4] + str r0, [r3] + ldr r0, _02037F14 ; =0x021D4150 + ldr r0, [r0] + ldr r1, [r0, #0x24] + cmp r0, #0 + bne _02037EEC + add sp, #0xc + mov r0, #0 + pop {r4} + bx lr +_02037EEC: + ldr r0, [sp] + cmp r0, #0 + beq _02037F08 +_02037EF2: + ldr r0, [r2] + cmp r1, r0 + bne _02037F00 + add sp, #0xc + mov r0, #1 + pop {r4} + bx lr +_02037F00: + add r2, r2, #4 + ldr r0, [r2] + cmp r0, #0 + bne _02037EF2 +_02037F08: + mov r0, #0 + add sp, #0xc + pop {r4} + bx lr + .balign 4, 0 +_02037F10: .word 0x020F6A90 +_02037F14: .word 0x021D4150 + thumb_func_end sub_02037EC8 + + thumb_func_start sub_02037F18 +sub_02037F18: ; 0x02037F18 + push {r4, lr} + add r4, r0, #0 + ldr r0, _02037F58 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _02037F56 + ldr r2, _02037F5C ; =0x00007080 + mov r0, #3 + mov r1, #0xf + bl sub_0201A91C + cmp r0, #0 + bne _02037F36 + bl sub_020399EC +_02037F36: + add r0, r4, #0 + mov r1, #9 + bl sub_02037C98 + ldr r0, _02037F58 ; =0x021D4150 + mov r2, #9 + ldr r1, [r0] + add r1, #0x4e + strb r2, [r1] + ldr r0, [r0] + mov r1, #0 + add r0, #0x4f + strb r1, [r0] + ldr r0, _02037F60 ; =sub_020384B4 + bl sub_020381C0 +_02037F56: + pop {r4, pc} + .balign 4, 0 +_02037F58: .word 0x021D4150 +_02037F5C: .word 0x00007080 +_02037F60: .word sub_020384B4 + thumb_func_end sub_02037F18 + + thumb_func_start sub_02037F64 +sub_02037F64: ; 0x02037F64 + push {r3, lr} + ldr r1, _02037F8C ; =0x021D4150 + ldr r2, [r1] + add r2, #0x4d + strb r0, [r2] + ldr r0, [r1] + mov r2, #3 + add r0, #0x48 + strh r2, [r0] + mov r0, #1 + bl sub_02033AA4 + bl sub_0203A880 + ldr r0, _02037F90 ; =sub_02038668 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + nop +_02037F8C: .word 0x021D4150 +_02037F90: .word sub_02038668 + thumb_func_end sub_02037F64 + + thumb_func_start sub_02037F94 +sub_02037F94: ; 0x02037F94 + ldr r0, _02037FC0 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _02037FA2 + mov r0, #0 + mvn r0, r0 + bx lr +_02037FA2: + ldr r1, [r0, #0x24] + ldr r0, _02037FC4 ; =sub_020387E8 + cmp r1, r0 + bne _02037FAE + mov r0, #1 + bx lr +_02037FAE: + ldr r0, _02037FC8 ; =sub_02038800 + cmp r1, r0 + bne _02037FB8 + mov r0, #1 + b _02037FBA +_02037FB8: + mov r0, #0 +_02037FBA: + neg r0, r0 + bx lr + nop +_02037FC0: .word 0x021D4150 +_02037FC4: .word sub_020387E8 +_02037FC8: .word sub_02038800 + thumb_func_end sub_02037F94 + + thumb_func_start sub_02037FCC +sub_02037FCC: ; 0x02037FCC + ldr r0, _02037FE8 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _02037FD8 + mov r0, #0 + bx lr +_02037FD8: + ldr r1, [r0, #0x24] + ldr r0, _02037FEC ; =sub_02038854 + cmp r1, r0 + bne _02037FE4 + mov r0, #1 + bx lr +_02037FE4: + mov r0, #0 + bx lr + .balign 4, 0 +_02037FE8: .word 0x021D4150 +_02037FEC: .word sub_02038854 + thumb_func_end sub_02037FCC + + thumb_func_start sub_02037FF0 +sub_02037FF0: ; 0x02037FF0 + push {r3, lr} + mov r0, #0 + bl sub_02033AA4 + ldr r0, _02038064 ; =0x021D4150 + ldr r1, [r0] + add r0, r1, #0 + add r0, #0x53 + ldrb r0, [r0] + cmp r0, #1 + bne _02038018 + add r0, r1, #0 + add r0, #0x54 + ldrb r0, [r0] + cmp r0, #1 + bne _02038018 + add r1, #0x4e + ldrb r0, [r1] + cmp r0, #9 + bne _02038020 +_02038018: + mov r0, #0 + add r1, r0, #0 + bl sub_020398D4 +_02038020: + bl sub_0203A914 + ldr r0, _02038064 ; =0x021D4150 + mov r2, #9 + ldr r1, [r0] + add r1, #0x4e + strb r2, [r1] + ldr r1, [r0] + mov r2, #0 + add r1, #0x57 + strb r2, [r1] + ldr r0, [r0] + add r0, #0x4a + ldrb r0, [r0] + bl sub_02033908 + bl sub_0203769C + cmp r0, #0 + bne _02038058 + mov r0, #1 + bl sub_02033ACC + ldr r0, _02038068 ; =sub_02038418 + mov r1, #0xf + bl sub_020381C0 + pop {r3, pc} +_02038058: + ldr r0, _0203806C ; =sub_02038460 + mov r1, #5 + bl sub_020381C0 + pop {r3, pc} + nop +_02038064: .word 0x021D4150 +_02038068: .word sub_02038418 +_0203806C: .word sub_02038460 + thumb_func_end sub_02037FF0 + + thumb_func_start sub_02038070 +sub_02038070: ; 0x02038070 + ldr r0, _0203808C ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _0203807C + mov r0, #1 + bx lr +_0203807C: + ldr r1, [r0, #0x24] + ldr r0, _02038090 ; =sub_02038538 + cmp r1, r0 + beq _02038088 + mov r0, #1 + bx lr +_02038088: + mov r0, #0 + bx lr + .balign 4, 0 +_0203808C: .word 0x021D4150 +_02038090: .word sub_02038538 + thumb_func_end sub_02038070 + + thumb_func_start sub_02038094 +sub_02038094: ; 0x02038094 + push {r3, lr} + ldr r0, _020380A8 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _020380A6 + ldr r0, _020380AC ; =sub_0203847C + mov r1, #5 + bl sub_020381C0 +_020380A6: + pop {r3, pc} + .balign 4, 0 +_020380A8: .word 0x021D4150 +_020380AC: .word sub_0203847C + thumb_func_end sub_02038094 + + thumb_func_start sub_020380B0 +sub_020380B0: ; 0x020380B0 + push {r3, lr} + ldr r0, _020380C8 ; =0x021D4150 + ldr r1, [r0] + cmp r1, #0 + beq _020380C4 + mov r0, #1 + add r1, #0x57 + strb r0, [r1] + bl sub_02033AA4 +_020380C4: + pop {r3, pc} + nop +_020380C8: .word 0x021D4150 + thumb_func_end sub_020380B0 + + thumb_func_start sub_020380CC +sub_020380CC: ; 0x020380CC + push {r3, lr} + ldr r0, _020380EC ; =0x021D4150 + ldr r1, [r0] + cmp r1, #0 + beq _020380E8 + mov r0, #1 + add r1, #0x57 + strb r0, [r1] + bl sub_02033AA4 + ldr r0, _020380F0 ; =sub_020388A8 + mov r1, #0 + bl sub_020381C0 +_020380E8: + pop {r3, pc} + nop +_020380EC: .word 0x021D4150 +_020380F0: .word sub_020388A8 + thumb_func_end sub_020380CC + + thumb_func_start sub_020380F4 +sub_020380F4: ; 0x020380F4 + ldr r0, _02038100 ; =0x021D4150 + mov r1, #0x12 + ldr r0, [r0] + add r0, #0x4e + strb r1, [r0] + bx lr + .balign 4, 0 +_02038100: .word 0x021D4150 + thumb_func_end sub_020380F4 + + thumb_func_start sub_02038104 +sub_02038104: ; 0x02038104 + ldr r0, _02038110 ; =0x021D4150 + mov r1, #9 + ldr r0, [r0] + add r0, #0x4e + strb r1, [r0] + bx lr + .balign 4, 0 +_02038110: .word 0x021D4150 + thumb_func_end sub_02038104 + + thumb_func_start sub_02038114 +sub_02038114: ; 0x02038114 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + bl sub_02037474 + cmp r0, #0 + bne _0203813C + ldr r2, _02038140 ; =0x00007080 + mov r0, #3 + mov r1, #0xf + bl sub_0201A91C + add r0, r5, #0 + add r1, r4, #0 + bl sub_02037C98 + ldr r0, _02038144 ; =sub_02038E00 + mov r1, #0 + bl sub_020381C0 +_0203813C: + pop {r3, r4, r5, pc} + nop +_02038140: .word 0x00007080 +_02038144: .word sub_02038E00 + thumb_func_end sub_02038114 + + thumb_func_start sub_02038148 +sub_02038148: ; 0x02038148 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + bl sub_02037474 + cmp r0, #0 + bne _02038170 + ldr r2, _02038174 ; =0x00007080 + mov r0, #3 + mov r1, #0xf + bl sub_0201A91C + add r0, r5, #0 + add r1, r4, #0 + bl sub_02037C98 + ldr r0, _02038178 ; =sub_02038E48 + mov r1, #0 + bl sub_020381C0 +_02038170: + pop {r3, r4, r5, pc} + nop +_02038174: .word 0x00007080 +_02038178: .word sub_02038E48 + thumb_func_end sub_02038148 + + thumb_func_start sub_0203817C +sub_0203817C: ; 0x0203817C + push {r3, lr} + ldr r0, _020381BC ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _0203818E + ldr r0, [r0, #0x24] + cmp r0, #0 + beq _0203818E + blx r0 +_0203818E: + bl sub_02039998 + cmp r0, #0 + beq _020381A4 + bl ov00_021EC9D4 + mov r1, #3 + sub r0, r1, r0 + bl sub_0203A930 + pop {r3, pc} +_020381A4: + bl sub_02035650 + cmp r0, #0 + beq _020381B8 + bl sub_020DEF44 + mov r1, #3 + sub r0, r1, r0 + bl sub_0203A930 +_020381B8: + pop {r3, pc} + nop +_020381BC: .word 0x021D4150 + thumb_func_end sub_0203817C + + thumb_func_start sub_020381C0 +sub_020381C0: ; 0x020381C0 + ldr r2, _020381CC ; =0x021D4150 + ldr r3, [r2] + str r0, [r3, #0x24] + ldr r0, [r2] + str r1, [r0, #0x44] + bx lr + .balign 4, 0 +_020381CC: .word 0x021D4150 + thumb_func_end sub_020381C0 + + thumb_func_start sub_020381D0 +sub_020381D0: ; 0x020381D0 + push {r3, lr} + bl sub_02039998 + cmp r0, #0 + bne _020381EC + bl sub_02035664 + cmp r0, #0 + beq _020381F4 + bl sub_020374E4 + mov r0, #1 + bl sub_020350A8 +_020381EC: + ldr r0, _020381F8 ; =sub_02038404 + mov r1, #0 + bl sub_020381C0 +_020381F4: + pop {r3, pc} + nop +_020381F8: .word sub_02038404 + thumb_func_end sub_020381D0 + + thumb_func_start sub_020381FC +sub_020381FC: ; 0x020381FC + push {r3, lr} + bl sub_02034FE8 + cmp r0, #0 + beq _02038212 + bl sub_0203622C + ldr r0, _02038214 ; =sub_020381D0 + mov r1, #0 + bl sub_020381C0 +_02038212: + pop {r3, pc} + .balign 4, 0 +_02038214: .word sub_020381D0 + thumb_func_end sub_020381FC + + thumb_func_start sub_02038218 +sub_02038218: ; 0x02038218 + push {r3, lr} + bl sub_02034DB8 + cmp r0, #0 + beq _02038256 + ldr r0, _02038258 ; =0x021D4150 + mov r1, #1 + ldr r0, [r0] + ldr r0, [r0, #0x2c] + bl sub_02034B0C + ldr r0, _02038258 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x28] + ldr r1, [r1, #0x30] + bl sub_02034354 + mov r0, #1 + add r1, r0, #0 + lsl r2, r0, #9 + add r3, r0, #0 + bl sub_02035ED8 + cmp r0, #0 + beq _02038256 + bl sub_02035FD8 + ldr r0, _0203825C ; =sub_02038260 + mov r1, #0 + bl sub_020381C0 +_02038256: + pop {r3, pc} + .balign 4, 0 +_02038258: .word 0x021D4150 +_0203825C: .word sub_02038260 + thumb_func_end sub_02038218 + + thumb_func_start sub_02038260 +sub_02038260: ; 0x02038260 + push {r3, lr} + bl sub_0203769C + bl sub_020373B4 + cmp r0, #0 + beq _02038276 + ldr r0, _02038278 ; =sub_0203827C + mov r1, #0 + bl sub_020381C0 +_02038276: + pop {r3, pc} + .balign 4, 0 +_02038278: .word sub_0203827C + thumb_func_end sub_02038260 + + thumb_func_start sub_0203827C +sub_0203827C: ; 0x0203827C + push {r3, lr} + bl sub_02037474 + cmp r0, #0 + bne _0203828E + ldr r0, _02038290 ; =sub_02038408 + mov r1, #0 + bl sub_020381C0 +_0203828E: + pop {r3, pc} + .balign 4, 0 +_02038290: .word sub_02038408 + thumb_func_end sub_0203827C + + thumb_func_start sub_02038294 +sub_02038294: ; 0x02038294 + push {r3, lr} + bl sub_02034DB8 + cmp r0, #0 + beq _020382D0 + ldr r0, _020382D4 ; =0x021D4150 + mov r1, #1 + ldr r0, [r0] + ldr r0, [r0, #0x2c] + bl sub_02034B0C + ldr r0, _020382D4 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x28] + ldr r1, [r1, #0x30] + bl sub_02034354 + mov r0, #1 + add r1, r0, #0 + lsl r2, r0, #9 + bl sub_02035F14 + cmp r0, #0 + beq _020382D0 + bl sub_02035FD8 + ldr r0, _020382D8 ; =sub_020382DC + mov r1, #0 + bl sub_020381C0 +_020382D0: + pop {r3, pc} + nop +_020382D4: .word 0x021D4150 +_020382D8: .word sub_020382DC + thumb_func_end sub_02038294 + + thumb_func_start sub_020382DC +sub_020382DC: ; 0x020382DC + ldr r3, _020382E0 ; =sub_0203528C + bx r3 + .balign 4, 0 +_020382E0: .word sub_0203528C + thumb_func_end sub_020382DC + + thumb_func_start sub_020382E4 +sub_020382E4: ; 0x020382E4 + push {r3, lr} + bl sub_0203528C + ldr r0, _02038304 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4d + ldrb r0, [r0] + bl sub_020360E4 + cmp r0, #0 + beq _02038302 + ldr r0, _02038308 ; =sub_0203830C + mov r1, #0xa + bl sub_020381C0 +_02038302: + pop {r3, pc} + .balign 4, 0 +_02038304: .word 0x021D4150 +_02038308: .word sub_0203830C + thumb_func_end sub_020382E4 + + thumb_func_start sub_0203830C +sub_0203830C: ; 0x0203830C + push {r3, lr} + bl sub_02037700 + cmp r0, #0 + beq _0203831E + ldr r0, _0203833C ; =sub_02038344 + mov r1, #0 + bl sub_020381C0 +_0203831E: + bl sub_0203769C + bl sub_020373B4 + cmp r0, #0 + beq _0203833A + bl sub_0203769C + cmp r0, #0 + beq _0203833A + ldr r0, _02038340 ; =sub_02038398 + mov r1, #0 + bl sub_020381C0 +_0203833A: + pop {r3, pc} + .balign 4, 0 +_0203833C: .word sub_02038344 +_02038340: .word sub_02038398 + thumb_func_end sub_0203830C + + thumb_func_start sub_02038344 +sub_02038344: ; 0x02038344 + push {r3, lr} + bl sub_02034FE8 + ldr r0, _02038354 ; =sub_02038358 + mov r1, #2 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_02038354: .word sub_02038358 + thumb_func_end sub_02038344 + + thumb_func_start sub_02038358 +sub_02038358: ; 0x02038358 + push {r3, lr} + ldr r0, _02038390 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _0203836A + sub r0, r0, #1 + str r0, [r1, #0x44] + pop {r3, pc} +_0203836A: + bl sub_02035664 + cmp r0, #0 + beq _0203838C + mov r1, #1 + mov r0, #0 + lsl r2, r1, #9 + bl sub_02035F14 + cmp r0, #0 + beq _0203838C + bl sub_02035FD8 + ldr r0, _02038394 ; =sub_020382E4 + mov r1, #0xa + bl sub_020381C0 +_0203838C: + pop {r3, pc} + nop +_02038390: .word 0x021D4150 +_02038394: .word sub_020382E4 + thumb_func_end sub_02038358 + + thumb_func_start sub_02038398 +sub_02038398: ; 0x02038398 + push {r3, lr} + bl sub_02037474 + cmp r0, #0 + bne _020383AA + ldr r0, _020383AC ; =sub_02038408 + mov r1, #0 + bl sub_020381C0 +_020383AA: + pop {r3, pc} + .balign 4, 0 +_020383AC: .word sub_02038408 + thumb_func_end sub_02038398 + + thumb_func_start sub_020383B0 +sub_020383B0: ; 0x020383B0 + push {r3, lr} + bl sub_02034FE8 + ldr r0, _020383C0 ; =sub_020383C4 + mov r1, #2 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_020383C0: .word sub_020383C4 + thumb_func_end sub_020383B0 + + thumb_func_start sub_020383C4 +sub_020383C4: ; 0x020383C4 + push {r3, lr} + ldr r0, _020383FC ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _020383D6 + sub r0, r0, #1 + str r0, [r1, #0x44] + pop {r3, pc} +_020383D6: + bl sub_02035664 + cmp r0, #0 + beq _020383F8 + mov r1, #1 + mov r0, #0 + lsl r2, r1, #9 + bl sub_02035F14 + cmp r0, #0 + beq _020383F8 + bl sub_02035FD8 + ldr r0, _02038400 ; =sub_020382DC + mov r1, #0xa + bl sub_020381C0 +_020383F8: + pop {r3, pc} + nop +_020383FC: .word 0x021D4150 +_02038400: .word sub_020382DC + thumb_func_end sub_020383C4 + + thumb_func_start sub_02038404 +sub_02038404: ; 0x02038404 + bx lr + .balign 4, 0 + thumb_func_end sub_02038404 + + thumb_func_start sub_02038408 +sub_02038408: ; 0x02038408 + push {r3, lr} + bl sub_02037474 + cmp r0, #0 + bne _02038416 + bl sub_02037D2C +_02038416: + pop {r3, pc} + thumb_func_end sub_02038408 + + thumb_func_start sub_02038418 +sub_02038418: ; 0x02038418 + push {r3, lr} + bl sub_02037454 + cmp r0, #1 + bgt _02038434 + mov r0, #0 + bl sub_02033ACC + bl sub_0203624C + ldr r0, _02038458 ; =sub_02038538 + mov r1, #0 + bl sub_020381C0 +_02038434: + ldr r0, _0203845C ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _02038444 + sub r0, r0, #1 + str r0, [r1, #0x44] + pop {r3, pc} +_02038444: + mov r0, #0 + bl sub_02033ACC + bl sub_0203624C + ldr r0, _02038458 ; =sub_02038538 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_02038458: .word sub_02038538 +_0203845C: .word 0x021D4150 + thumb_func_end sub_02038418 + + thumb_func_start sub_02038460 +sub_02038460: ; 0x02038460 + push {r3, lr} + bl sub_02034FE8 + cmp r0, #0 + beq _02038476 + bl sub_0203622C + ldr r0, _02038478 ; =sub_02038538 + mov r1, #0 + bl sub_020381C0 +_02038476: + pop {r3, pc} + .balign 4, 0 +_02038478: .word sub_02038538 + thumb_func_end sub_02038460 + + thumb_func_start sub_0203847C +sub_0203847C: ; 0x0203847C + push {r3, lr} + ldr r0, _020384AC ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _0203848C + sub r0, r0, #1 + str r0, [r1, #0x44] +_0203848C: + bl sub_02034FE8 + cmp r0, #0 + beq _020384AA + ldr r0, _020384AC ; =0x021D4150 + ldr r0, [r0] + ldr r0, [r0, #0x44] + cmp r0, #0 + bne _020384AA + bl sub_02036024 + ldr r0, _020384B0 ; =sub_02038408 + mov r1, #0 + bl sub_020381C0 +_020384AA: + pop {r3, pc} + .balign 4, 0 +_020384AC: .word 0x021D4150 +_020384B0: .word sub_02038408 + thumb_func_end sub_0203847C + + thumb_func_start sub_020384B4 +sub_020384B4: ; 0x020384B4 + push {r3, lr} + bl sub_02034DB8 + cmp r0, #0 + beq _020384FC + ldr r0, _02038500 ; =0x021D4150 + mov r1, #1 + ldr r0, [r0] + ldr r0, [r0, #0x2c] + bl sub_02034B0C + ldr r0, _02038500 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4a + ldrb r0, [r0] + bl sub_02033908 + ldr r0, _02038500 ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + ldr r0, [r0, #0x28] + bl sub_02034354 + mov r0, #1 + add r1, r0, #0 + lsl r2, r0, #9 + bl sub_02035F14 + cmp r0, #0 + beq _020384FC + bl sub_02035FD8 + ldr r0, _02038504 ; =sub_02038508 + mov r1, #0x40 + bl sub_020381C0 +_020384FC: + pop {r3, pc} + nop +_02038500: .word 0x021D4150 +_02038504: .word sub_02038508 + thumb_func_end sub_020384B4 + + thumb_func_start sub_02038508 +sub_02038508: ; 0x02038508 + push {r3, lr} + bl sub_0203528C + ldr r0, _02038530 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _0203851E + sub r0, r0, #1 + str r0, [r1, #0x44] + pop {r3, pc} +_0203851E: + bl sub_02034FE8 + cmp r0, #0 + beq _0203852E + ldr r0, _02038534 ; =sub_02038550 + mov r1, #0 + bl sub_020381C0 +_0203852E: + pop {r3, pc} + .balign 4, 0 +_02038530: .word 0x021D4150 +_02038534: .word sub_02038550 + thumb_func_end sub_02038508 + + thumb_func_start sub_02038538 +sub_02038538: ; 0x02038538 + push {r3, lr} + bl sub_02034FE8 + cmp r0, #0 + beq _0203854A + ldr r0, _0203854C ; =sub_02038550 + mov r1, #0 + bl sub_020381C0 +_0203854A: + pop {r3, pc} + .balign 4, 0 +_0203854C: .word sub_02038550 + thumb_func_end sub_02038538 + + thumb_func_start sub_02038550 +sub_02038550: ; 0x02038550 + push {r3, r4, r5, lr} + bl sub_02035664 + cmp r0, #0 + beq _020385A8 + ldr r1, _020385AC ; =0x021D4150 + mov r2, #2 + ldr r1, [r1] + mov r0, #0 + add r1, #0x52 + ldrb r1, [r1] + lsl r2, r2, #8 + mov r3, #1 + bl sub_02035ED8 + cmp r0, #0 + beq _020385A8 + ldr r0, _020385AC ; =0x021D4150 + ldr r4, [r0] + add r5, r4, #0 + add r5, #0xc + ldr r0, [r5, #8] + ldr r1, [r5, #0xc] + ldr r2, [r4, #0xc] + ldr r3, [r5, #4] + bl _ll_mul + ldr r2, [r5, #0x10] + ldr r3, [r5, #0x14] + add r0, r2, r0 + adc r3, r1 + str r0, [r4, #0xc] + str r3, [r5, #4] + bl sub_02035FD8 + ldr r0, _020385AC ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + add r0, #0x52 + strb r1, [r0] + ldr r0, _020385B0 ; =sub_020385B8 + ldr r1, _020385B4 ; =0x00002710 + bl sub_020381C0 +_020385A8: + pop {r3, r4, r5, pc} + nop +_020385AC: .word 0x021D4150 +_020385B0: .word sub_020385B8 +_020385B4: .word 0x00002710 + thumb_func_end sub_02038550 + + thumb_func_start sub_020385B8 +sub_020385B8: ; 0x020385B8 + push {r3, lr} + bl sub_020358B0 + cmp r0, #0 + bne _020385F2 + bl sub_020376F8 + cmp r0, #0 + beq _020385E2 + ldr r0, _02038604 ; =0x021D4150 + mov r1, #1 + ldr r0, [r0] + add r0, #0x52 + strb r1, [r0] + bl sub_0203A880 + ldr r0, _02038608 ; =sub_02038854 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_020385E2: + ldr r0, _02038604 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _020385F2 + sub r0, r0, #1 + str r0, [r1, #0x44] + pop {r3, pc} +_020385F2: + bl sub_02034FE8 + cmp r0, #0 + beq _02038602 + ldr r0, _0203860C ; =sub_02038610 + mov r1, #0 + bl sub_020381C0 +_02038602: + pop {r3, pc} + .balign 4, 0 +_02038604: .word 0x021D4150 +_02038608: .word sub_02038854 +_0203860C: .word sub_02038610 + thumb_func_end sub_020385B8 + + thumb_func_start sub_02038610 +sub_02038610: ; 0x02038610 + push {r3, r4, r5, lr} + bl sub_02035664 + cmp r0, #0 + beq _0203865C + mov r0, #0 + mov r2, #2 + add r1, r0, #0 + lsl r2, r2, #8 + bl sub_02035F14 + cmp r0, #0 + beq _0203865C + bl sub_02035FD8 + ldr r0, _02038660 ; =0x021D4150 + ldr r4, [r0] + add r5, r4, #0 + add r5, #0xc + ldr r0, [r5, #8] + ldr r1, [r5, #0xc] + ldr r2, [r4, #0xc] + ldr r3, [r5, #4] + bl _ll_mul + ldr r2, [r5, #0x10] + ldr r3, [r5, #0x14] + add r0, r2, r0 + adc r3, r1 + str r0, [r4, #0xc] + mov r1, #0 + ldr r0, _02038664 ; =sub_02038508 + lsr r2, r3, #0x1b + lsl r1, r1, #5 + orr r1, r2 + str r3, [r5, #4] + bl sub_020381C0 +_0203865C: + pop {r3, r4, r5, pc} + nop +_02038660: .word 0x021D4150 +_02038664: .word sub_02038508 + thumb_func_end sub_02038610 + + thumb_func_start sub_02038668 +sub_02038668: ; 0x02038668 + push {r3, lr} + bl sub_02034FE8 + cmp r0, #0 + beq _0203867A + ldr r0, _0203867C ; =sub_02038680 + mov r1, #0 + bl sub_020381C0 +_0203867A: + pop {r3, pc} + .balign 4, 0 +_0203867C: .word sub_02038680 + thumb_func_end sub_02038668 + + thumb_func_start sub_02038680 +sub_02038680: ; 0x02038680 + push {r3, lr} + bl sub_02035664 + cmp r0, #0 + beq _020386A6 + mov r0, #0 + mov r2, #2 + add r1, r0, #0 + lsl r2, r2, #8 + bl sub_02035F14 + cmp r0, #0 + beq _020386A6 + bl sub_02035FD8 + ldr r0, _020386A8 ; =sub_020386AC + mov r1, #0x64 + bl sub_020381C0 +_020386A6: + pop {r3, pc} + .balign 4, 0 +_020386A8: .word sub_020386AC + thumb_func_end sub_02038680 + + thumb_func_start sub_020386AC +sub_020386AC: ; 0x020386AC + push {r3, lr} + ldr r0, _02038704 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4d + ldrb r0, [r0] + bl sub_020351AC + cmp r0, #0 + beq _020386D8 + ldr r0, _02038704 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4d + ldrb r0, [r0] + bl sub_020360E4 + cmp r0, #0 + beq _020386D8 + ldr r0, _02038708 ; =sub_02038710 + mov r1, #0x64 + bl sub_020381C0 + pop {r3, pc} +_020386D8: + bl sub_02037700 + cmp r0, #0 + beq _020386EA + ldr r0, _0203870C ; =sub_02038804 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_020386EA: + ldr r0, _02038704 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _020386FA + sub r0, r0, #1 + str r0, [r1, #0x44] + pop {r3, pc} +_020386FA: + ldr r0, _0203870C ; =sub_02038804 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_02038704: .word 0x021D4150 +_02038708: .word sub_02038710 +_0203870C: .word sub_02038804 + thumb_func_end sub_020386AC + + thumb_func_start sub_02038710 +sub_02038710: ; 0x02038710 + push {r3, lr} + bl sub_02037700 + cmp r0, #0 + beq _02038724 + ldr r0, _02038760 ; =sub_02038804 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038724: + bl sub_0203769C + bl sub_020373B4 + cmp r0, #0 + beq _02038744 + ldr r0, _02038764 ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + add r0, #0x4c + strb r1, [r0] + ldr r0, _02038768 ; =sub_0203876C + mov r1, #0x78 + bl sub_020381C0 + pop {r3, pc} +_02038744: + ldr r0, _02038764 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _02038754 + sub r0, r0, #1 + str r0, [r1, #0x44] + pop {r3, pc} +_02038754: + ldr r0, _02038760 ; =sub_02038804 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + nop +_02038760: .word sub_02038804 +_02038764: .word 0x021D4150 +_02038768: .word sub_0203876C + thumb_func_end sub_02038710 + + thumb_func_start sub_0203876C +sub_0203876C: ; 0x0203876C + push {r3, lr} + bl sub_02037700 + cmp r0, #0 + beq _02038780 + ldr r0, _020387D4 ; =sub_02038804 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038780: + ldr r0, _020387D8 ; =0x021D4150 + ldr r1, [r0] + add r0, r1, #0 + add r0, #0x4c + ldrb r0, [r0] + cmp r0, #2 + bne _02038798 + ldr r0, _020387DC ; =sub_02038800 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038798: + cmp r0, #1 + bne _020387AA + bl sub_02034434 + ldr r0, _020387E0 ; =sub_020387E8 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_020387AA: + ldr r0, [r1, #0x44] + cmp r0, #0x6e + ble _020387B8 + ldr r1, _020387E4 ; =0x0210F90C + mov r0, #6 + bl sub_020376E0 +_020387B8: + ldr r0, _020387D8 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + beq _020387C8 + sub r0, r0, #1 + str r0, [r1, #0x44] + pop {r3, pc} +_020387C8: + ldr r0, _020387D4 ; =sub_02038804 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + nop +_020387D4: .word sub_02038804 +_020387D8: .word 0x021D4150 +_020387DC: .word sub_02038800 +_020387E0: .word sub_020387E8 +_020387E4: .word 0x0210F90C + thumb_func_end sub_0203876C + + thumb_func_start sub_020387E8 +sub_020387E8: ; 0x020387E8 + push {r3, lr} + bl sub_02037700 + cmp r0, #0 + beq _020387FA + ldr r0, _020387FC ; =sub_02038804 + mov r1, #0 + bl sub_020381C0 +_020387FA: + pop {r3, pc} + .balign 4, 0 +_020387FC: .word sub_02038804 + thumb_func_end sub_020387E8 + + thumb_func_start sub_02038800 +sub_02038800: ; 0x02038800 + bx lr + .balign 4, 0 + thumb_func_end sub_02038800 + + thumb_func_start sub_02038804 +sub_02038804: ; 0x02038804 + push {r3, lr} + ldr r0, _02038848 ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + add r0, #0x4c + strb r1, [r0] + bl sub_02034FE8 + cmp r0, #0 + beq _02038844 + ldr r0, _02038848 ; =0x021D4150 + ldr r1, [r0] + add r0, r1, #0 + add r0, #0x48 + ldrh r0, [r0] + cmp r0, #0 + beq _0203883C + add r0, r1, #0 + add r0, #0x48 + ldrh r0, [r0] + add r1, #0x48 + sub r0, r0, #1 + strh r0, [r1] + ldr r0, _0203884C ; =sub_02038680 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_0203883C: + ldr r0, _02038850 ; =sub_02038800 + mov r1, #0 + bl sub_020381C0 +_02038844: + pop {r3, pc} + nop +_02038848: .word 0x021D4150 +_0203884C: .word sub_02038680 +_02038850: .word sub_02038800 + thumb_func_end sub_02038804 + + thumb_func_start sub_02038854 +sub_02038854: ; 0x02038854 + push {r3, lr} + bl sub_020376F8 + cmp r0, #0 + bne _02038878 + bl sub_02039918 + cmp r0, #0 + bne _02038884 + bl sub_02034FE8 + cmp r0, #0 + beq _02038884 + ldr r0, _020388A0 ; =sub_02038610 + mov r1, #0 + bl sub_020381C0 + b _02038884 +_02038878: + bl sub_0203769C + cmp r0, #0 + bne _02038884 + bl sub_02034638 +_02038884: + bl sub_02037700 + cmp r0, #0 + beq _0203889C + bl sub_02039918 + cmp r0, #0 + bne _0203889C + ldr r0, _020388A4 ; =sub_02038804 + mov r1, #0 + bl sub_020381C0 +_0203889C: + pop {r3, pc} + nop +_020388A0: .word sub_02038610 +_020388A4: .word sub_02038804 + thumb_func_end sub_02038854 + + thumb_func_start sub_020388A8 +sub_020388A8: ; 0x020388A8 + push {r3, lr} + bl sub_02035664 + cmp r0, #0 + beq _020388D6 + ldr r1, _020388D8 ; =0x021D4150 + mov r0, #0 + ldr r1, [r1] + mov r2, #2 + add r1, #0x52 + ldrb r1, [r1] + lsl r2, r2, #8 + add r3, r0, #0 + bl sub_02035ED8 + cmp r0, #0 + beq _020388D6 + bl sub_02035FD8 + ldr r0, _020388DC ; =sub_02038404 + mov r1, #0 + bl sub_020381C0 +_020388D6: + pop {r3, pc} + .balign 4, 0 +_020388D8: .word 0x021D4150 +_020388DC: .word sub_02038404 + thumb_func_end sub_020388A8 + + thumb_func_start sub_020388E0 +sub_020388E0: ; 0x020388E0 + push {r3, lr} + ldr r0, _02038914 ; =0x021D4150 + mov r1, #0xd + ldr r0, [r0] + add r0, #0x4e + strb r1, [r0] + bl sub_0203769C + cmp r0, #0 + add r0, sp, #0 + bne _02038906 + mov r1, #0 + strb r1, [r0, #1] + add r1, sp, #0 + mov r0, #0xa + add r1, #1 + bl sub_020376E0 + pop {r3, pc} +_02038906: + mov r1, #0 + strb r1, [r0] + mov r0, #0xa + add r1, sp, #0 + bl sub_020376E0 + pop {r3, pc} + .balign 4, 0 +_02038914: .word 0x021D4150 + thumb_func_end sub_020388E0 + + thumb_func_start sub_02038918 +sub_02038918: ; 0x02038918 + ldr r1, _02038930 ; =0x021D4150 + ldr r3, _02038934 ; =sub_020381C0 + ldr r2, [r1] + add r2, #0x4d + strb r0, [r2] + ldr r0, [r1] + mov r2, #3 + add r0, #0x48 + strh r2, [r0] + ldr r0, _02038938 ; =sub_020389BC + mov r1, #0 + bx r3 + .balign 4, 0 +_02038930: .word 0x021D4150 +_02038934: .word sub_020381C0 +_02038938: .word sub_020389BC + thumb_func_end sub_02038918 + + thumb_func_start sub_0203893C +sub_0203893C: ; 0x0203893C + ldr r0, _02038948 ; =0x021D4150 + mov r1, #7 + ldr r0, [r0] + add r0, #0x4e + strb r1, [r0] + bx lr + .balign 4, 0 +_02038948: .word 0x021D4150 + thumb_func_end sub_0203893C + + thumb_func_start sub_0203894C +sub_0203894C: ; 0x0203894C + push {r3, lr} + ldr r1, _02038974 ; =0x021D4150 + ldr r2, [r1] + add r2, #0x4d + strb r0, [r2] + ldr r0, [r1] + mov r2, #7 + add r0, #0x4e + strb r2, [r0] + ldr r0, [r1] + mov r2, #3 + add r0, #0x48 + strh r2, [r0] + bl sub_0203A880 + ldr r0, _02038978 ; =sub_02038668 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_02038974: .word 0x021D4150 +_02038978: .word sub_02038668 + thumb_func_end sub_0203894C + + thumb_func_start sub_0203897C +sub_0203897C: ; 0x0203897C + ldr r0, _02038988 ; =0x021D4150 + mov r1, #0x1a + ldr r0, [r0] + add r0, #0x4e + strb r1, [r0] + bx lr + .balign 4, 0 +_02038988: .word 0x021D4150 + thumb_func_end sub_0203897C + + thumb_func_start sub_0203898C +sub_0203898C: ; 0x0203898C + push {r3, lr} + ldr r1, _020389B4 ; =0x021D4150 + ldr r2, [r1] + add r2, #0x4d + strb r0, [r2] + ldr r0, [r1] + mov r2, #0x1a + add r0, #0x4e + strb r2, [r0] + ldr r0, [r1] + mov r2, #3 + add r0, #0x48 + strh r2, [r0] + bl sub_0203A880 + ldr r0, _020389B8 ; =sub_02038668 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_020389B4: .word 0x021D4150 +_020389B8: .word sub_02038668 + thumb_func_end sub_0203898C + + thumb_func_start sub_020389BC +sub_020389BC: ; 0x020389BC + push {r3, lr} + bl sub_02034FE8 + cmp r0, #0 + beq _020389CE + ldr r0, _020389D0 ; =sub_020389D4 + mov r1, #0 + bl sub_020381C0 +_020389CE: + pop {r3, pc} + .balign 4, 0 +_020389D0: .word sub_020389D4 + thumb_func_end sub_020389BC + + thumb_func_start sub_020389D4 +sub_020389D4: ; 0x020389D4 + push {r3, lr} + bl sub_02035664 + cmp r0, #0 + beq _02038A04 + ldr r0, _02038A08 ; =0x021D4150 + mov r2, #2 + ldr r0, [r0] + mov r1, #0xd + add r0, #0x4e + strb r1, [r0] + mov r0, #0 + add r1, r0, #0 + lsl r2, r2, #8 + bl sub_02035F14 + cmp r0, #0 + beq _02038A04 + bl sub_02035FE4 + ldr r0, _02038A0C ; =sub_02038A10 + mov r1, #0x64 + bl sub_020381C0 +_02038A04: + pop {r3, pc} + nop +_02038A08: .word 0x021D4150 +_02038A0C: .word sub_02038A10 + thumb_func_end sub_020389D4 + + thumb_func_start sub_02038A10 +sub_02038A10: ; 0x02038A10 + push {r3, lr} + ldr r0, _02038A84 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4d + ldrb r0, [r0] + bl sub_020351AC + cmp r0, #0 + beq _02038A3C + ldr r0, _02038A84 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4d + ldrb r0, [r0] + bl sub_020360E4 + cmp r0, #0 + beq _02038A3C + ldr r0, _02038A88 ; =sub_02038A94 + mov r1, #0x64 + bl sub_020381C0 + pop {r3, pc} +_02038A3C: + bl sub_02037700 + cmp r0, #0 + bne _02038A4E + ldr r0, _02038A84 ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0 + bne _02038A7C +_02038A4E: + ldr r1, _02038A84 ; =0x021D4150 + ldr r2, [r1] + add r0, r2, #0 + add r0, #0x48 + ldrh r0, [r0] + add r2, #0x48 + sub r0, r0, #1 + strh r0, [r2] + ldr r0, [r1] + add r0, #0x48 + ldrh r0, [r0] + cmp r0, #0 + bne _02038A72 + ldr r0, _02038A8C ; =sub_02038800 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038A72: + ldr r0, _02038A90 ; =sub_020389BC + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038A7C: + beq _02038A82 + sub r0, r0, #1 + str r0, [r1, #0x44] +_02038A82: + pop {r3, pc} + .balign 4, 0 +_02038A84: .word 0x021D4150 +_02038A88: .word sub_02038A94 +_02038A8C: .word sub_02038800 +_02038A90: .word sub_020389BC + thumb_func_end sub_02038A10 + + thumb_func_start sub_02038A94 +sub_02038A94: ; 0x02038A94 + push {r3, lr} + ldr r0, _02038B2C ; =0x021D4150 + ldr r1, [r0] + ldr r0, [r1, #0x44] + cmp r0, #0x5a + ble _02038AA6 + sub r0, r0, #1 + str r0, [r1, #0x44] + pop {r3, pc} +_02038AA6: + bl sub_02037700 + cmp r0, #0 + beq _02038ADC + ldr r1, _02038B2C ; =0x021D4150 + ldr r2, [r1] + add r0, r2, #0 + add r0, #0x48 + ldrh r0, [r0] + add r2, #0x48 + sub r0, r0, #1 + strh r0, [r2] + ldr r0, [r1] + add r0, #0x48 + ldrh r0, [r0] + cmp r0, #0 + bne _02038AD2 + ldr r0, _02038B30 ; =sub_02038800 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038AD2: + ldr r0, _02038B34 ; =sub_020389BC + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038ADC: + bl sub_0203769C + bl sub_020373B4 + cmp r0, #0 + beq _02038AF2 + ldr r0, _02038B38 ; =sub_020387E8 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038AF2: + ldr r1, _02038B2C ; =0x021D4150 + ldr r2, [r1] + ldr r0, [r2, #0x44] + cmp r0, #0 + beq _02038B02 + sub r0, r0, #1 + str r0, [r2, #0x44] + pop {r3, pc} +_02038B02: + add r0, r2, #0 + add r0, #0x48 + ldrh r0, [r0] + add r2, #0x48 + sub r0, r0, #1 + strh r0, [r2] + ldr r0, [r1] + add r0, #0x48 + ldrh r0, [r0] + cmp r0, #0 + bne _02038B22 + ldr r0, _02038B30 ; =sub_02038800 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038B22: + ldr r0, _02038B34 ; =sub_020389BC + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_02038B2C: .word 0x021D4150 +_02038B30: .word sub_02038800 +_02038B34: .word sub_020389BC +_02038B38: .word sub_020387E8 + thumb_func_end sub_02038A94 + + thumb_func_start sub_02038B3C +sub_02038B3C: ; 0x02038B3C + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r2, #0 + bl sub_0203769C + cmp r0, #0 + bne _02038B8A + ldr r6, _02038B8C ; =0x0210F90C + mov r3, #1 + mov r2, #0 +_02038B50: + ldrb r1, [r6] + ldrb r0, [r4, r2] + cmp r1, r0 + beq _02038B5C + mov r3, #0 + b _02038B64 +_02038B5C: + add r2, r2, #1 + add r6, r6, #1 + cmp r2, #6 + blo _02038B50 +_02038B64: + cmp r3, #0 + beq _02038B80 + ldr r0, _02038B90 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x57 + ldrb r0, [r0] + cmp r0, #0 + bne _02038B80 + ldr r1, _02038B94 ; =0x0210F904 + mov r0, #7 + strb r5, [r1] + bl sub_02037184 + pop {r4, r5, r6, pc} +_02038B80: + ldr r1, _02038B98 ; =0x0210F914 + mov r0, #7 + strb r5, [r1] + bl sub_02037184 +_02038B8A: + pop {r4, r5, r6, pc} + .balign 4, 0 +_02038B8C: .word 0x0210F90C +_02038B90: .word 0x021D4150 +_02038B94: .word 0x0210F904 +_02038B98: .word 0x0210F914 + thumb_func_end sub_02038B3C + + thumb_func_start sub_02038B9C +sub_02038B9C: ; 0x02038B9C + push {r3, r4, r5, lr} + mov r4, #1 + ldr r5, _02038C0C ; =0x0210F905 + add r3, r4, #0 +_02038BA4: + ldrb r1, [r5] + ldrb r0, [r2, r3] + cmp r1, r0 + beq _02038BB0 + mov r4, #0 + b _02038BB8 +_02038BB0: + add r3, r3, #1 + add r5, r5, #1 + cmp r3, #6 + blo _02038BA4 +_02038BB8: + cmp r4, #0 + beq _02038BD2 + ldrb r4, [r2] + bl sub_0203769C + cmp r4, r0 + bne _02038C08 + ldr r0, _02038C10 ; =0x021D4150 + mov r1, #1 + ldr r0, [r0] + add r0, #0x4c + strb r1, [r0] + pop {r3, r4, r5, pc} +_02038BD2: + mov r4, #1 + ldr r3, _02038C14 ; =0x0210F915 + add r5, r4, #0 +_02038BD8: + ldrb r1, [r3] + ldrb r0, [r2, r5] + cmp r1, r0 + beq _02038BE4 + mov r4, #0 + b _02038BEC +_02038BE4: + add r5, r5, #1 + add r3, r3, #1 + cmp r5, #6 + blo _02038BD8 +_02038BEC: + cmp r4, #0 + beq _02038C08 + ldrb r4, [r2] + bl sub_0203769C + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r4, r0 + bne _02038C08 + ldr r0, _02038C10 ; =0x021D4150 + mov r1, #2 + ldr r0, [r0] + add r0, #0x4c + strb r1, [r0] +_02038C08: + pop {r3, r4, r5, pc} + nop +_02038C0C: .word 0x0210F905 +_02038C10: .word 0x021D4150 +_02038C14: .word 0x0210F915 + thumb_func_end sub_02038B9C + + thumb_func_start sub_02038C18 +sub_02038C18: ; 0x02038C18 + mov r0, #6 + bx lr + thumb_func_end sub_02038C18 + + thumb_func_start sub_02038C1C +sub_02038C1C: ; 0x02038C1C + push {r3, lr} + ldr r1, _02038C30 ; =0x021D4150 + ldr r1, [r1] + cmp r1, #0 + beq _02038C2E + add r1, #0x4a + strb r0, [r1] + bl sub_02033908 +_02038C2E: + pop {r3, pc} + .balign 4, 0 +_02038C30: .word 0x021D4150 + thumb_func_end sub_02038C1C + + thumb_func_start sub_02038C34 +sub_02038C34: ; 0x02038C34 + ldr r3, _02038C38 ; =sub_0203528C + bx r3 + .balign 4, 0 +_02038C38: .word sub_0203528C + thumb_func_end sub_02038C34 + + thumb_func_start sub_02038C3C +sub_02038C3C: ; 0x02038C3C + ldr r2, _02038CB4 ; =0x00400131 + cmp r0, r2 + bhi _02038C4C + bhs _02038C8A + ldr r2, _02038CB8 ; =0x00000333 + cmp r0, r2 + beq _02038C5E + bx lr +_02038C4C: + ldr r1, _02038CBC ; =0x00400286 + cmp r0, r1 + bhi _02038C56 + beq _02038C9E + bx lr +_02038C56: + add r1, #0x92 + cmp r0, r1 + beq _02038C76 + bx lr +_02038C5E: + cmp r1, #0xf + bne _02038CB0 + ldr r0, _02038CC0 ; =0x021D4150 + ldr r2, [r0] + add r0, r2, #0 + add r0, #0x58 + ldrb r1, [r0] + mov r0, #1 + add r2, #0x58 + orr r0, r1 + strb r0, [r2] + bx lr +_02038C76: + ldr r0, _02038CC0 ; =0x021D4150 + ldr r2, [r0] + add r0, r2, #0 + add r0, #0x58 + ldrb r1, [r0] + mov r0, #1 + add r2, #0x58 + orr r0, r1 + strb r0, [r2] + bx lr +_02038C8A: + ldr r0, _02038CC0 ; =0x021D4150 + ldr r2, [r0] + add r0, r2, #0 + add r0, #0x58 + ldrb r1, [r0] + mov r0, #2 + add r2, #0x58 + orr r0, r1 + strb r0, [r2] + bx lr +_02038C9E: + ldr r0, _02038CC0 ; =0x021D4150 + ldr r2, [r0] + add r0, r2, #0 + add r0, #0x58 + ldrb r1, [r0] + mov r0, #4 + add r2, #0x58 + orr r0, r1 + strb r0, [r2] +_02038CB0: + bx lr + nop +_02038CB4: .word 0x00400131 +_02038CB8: .word 0x00000333 +_02038CBC: .word 0x00400286 +_02038CC0: .word 0x021D4150 + thumb_func_end sub_02038C3C + + thumb_func_start sub_02038CC4 +sub_02038CC4: ; 0x02038CC4 + push {r3, lr} + mov r0, #1 + add r1, r0, #0 + mov r2, #0x20 + bl sub_02035F14 + cmp r0, #0 + beq _02038CE0 + bl sub_02035FD8 + ldr r0, _02038CE4 ; =sub_02038C34 + mov r1, #0 + bl sub_020381C0 +_02038CE0: + pop {r3, pc} + nop +_02038CE4: .word sub_02038C34 + thumb_func_end sub_02038CC4 + + thumb_func_start sub_02038CE8 +sub_02038CE8: ; 0x02038CE8 + push {r3, lr} + bl sub_02034DB8 + cmp r0, #0 + beq _02038D18 + ldr r0, _02038D1C ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + ldr r0, [r0, #0x2c] + bl sub_02034B0C + ldr r0, _02038D1C ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + ldr r0, [r0, #0x28] + bl sub_02034354 + ldr r0, _02038D20 ; =sub_02038C3C + bl sub_02033A7C + ldr r0, _02038D24 ; =sub_02038CC4 + mov r1, #0 + bl sub_020381C0 +_02038D18: + pop {r3, pc} + nop +_02038D1C: .word 0x021D4150 +_02038D20: .word sub_02038C3C +_02038D24: .word sub_02038CC4 + thumb_func_end sub_02038CE8 + + thumb_func_start sub_02038D28 +sub_02038D28: ; 0x02038D28 + push {r4, lr} + add r4, r0, #0 + bl sub_02037474 + cmp r0, #0 + bne _02038D58 + mov r2, #7 + mov r0, #3 + mov r1, #0xf + lsl r2, r2, #0xc + bl sub_0201A91C + add r0, r4, #0 + mov r1, #0x11 + bl sub_02037C98 + ldr r0, _02038D5C ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + add r0, #0x4f + strb r1, [r0] + ldr r0, _02038D60 ; =sub_02038CE8 + bl sub_020381C0 +_02038D58: + pop {r4, pc} + nop +_02038D5C: .word 0x021D4150 +_02038D60: .word sub_02038CE8 + thumb_func_end sub_02038D28 + + thumb_func_start sub_02038D64 +sub_02038D64: ; 0x02038D64 + push {r3, lr} + ldr r0, _02038D78 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _02038D76 + ldr r0, _02038D7C ; =sub_0203847C + mov r1, #5 + bl sub_020381C0 +_02038D76: + pop {r3, pc} + .balign 4, 0 +_02038D78: .word 0x021D4150 +_02038D7C: .word sub_0203847C + thumb_func_end sub_02038D64 + + thumb_func_start sub_02038D80 +sub_02038D80: ; 0x02038D80 + ldr r0, _02038D8C ; =0x021D4150 + ldr r0, [r0] + add r0, #0x58 + ldrb r0, [r0] + bx lr + nop +_02038D8C: .word 0x021D4150 + thumb_func_end sub_02038D80 + + thumb_func_start sub_02038D90 +sub_02038D90: ; 0x02038D90 + push {r3, lr} + bl sub_02037988 + ldr r0, _02038DF0 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _02038DA2 + mov r0, #1 + pop {r3, pc} +_02038DA2: + add r0, #0x4e + ldrb r0, [r0] + cmp r0, #0x18 + beq _02038DB2 + cmp r0, #0x19 + beq _02038DB2 + cmp r0, #0x24 + bne _02038DBA +_02038DB2: + bl ov00_021E6CB8 + mov r0, #1 + pop {r3, pc} +_02038DBA: + bl sub_02039998 + cmp r0, #0 + beq _02038DE2 + ldr r0, _02038DF0 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4e + ldrb r0, [r0] + cmp r0, #0x21 + bne _02038DD8 + ldr r0, _02038DF4 ; =sub_02039D78 + mov r1, #0 + bl sub_020381C0 + b _02038DEA +_02038DD8: + ldr r0, _02038DF8 ; =sub_020392F4 + mov r1, #0 + bl sub_020381C0 + b _02038DEA +_02038DE2: + ldr r0, _02038DFC ; =sub_020381FC + mov r1, #0 + bl sub_020381C0 +_02038DEA: + mov r0, #0 + pop {r3, pc} + nop +_02038DF0: .word 0x021D4150 +_02038DF4: .word sub_02039D78 +_02038DF8: .word sub_020392F4 +_02038DFC: .word sub_020381FC + thumb_func_end sub_02038D90 + + thumb_func_start sub_02038E00 +sub_02038E00: ; 0x02038E00 + push {r3, lr} + bl sub_02034DB8 + cmp r0, #0 + beq _02038E3E + ldr r0, _02038E40 ; =0x021D4150 + mov r1, #1 + ldr r0, [r0] + ldr r0, [r0, #0x2c] + bl sub_02034B0C + ldr r0, _02038E40 ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + ldr r0, [r0, #0x28] + bl sub_02034354 + mov r0, #1 + add r1, r0, #0 + lsl r2, r0, #9 + add r3, r0, #0 + bl sub_02035ED8 + cmp r0, #0 + beq _02038E3E + bl sub_02035FD8 + ldr r0, _02038E44 ; =sub_02038260 + mov r1, #0 + bl sub_020381C0 +_02038E3E: + pop {r3, pc} + .balign 4, 0 +_02038E40: .word 0x021D4150 +_02038E44: .word sub_02038260 + thumb_func_end sub_02038E00 + + thumb_func_start sub_02038E48 +sub_02038E48: ; 0x02038E48 + push {r3, lr} + bl sub_02034DB8 + cmp r0, #0 + beq _02038E84 + ldr r0, _02038E88 ; =0x021D4150 + mov r1, #1 + ldr r0, [r0] + ldr r0, [r0, #0x2c] + bl sub_02034B0C + ldr r0, _02038E88 ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + ldr r0, [r0, #0x28] + bl sub_02034354 + mov r0, #1 + add r1, r0, #0 + lsl r2, r0, #9 + bl sub_02035F14 + cmp r0, #0 + beq _02038E84 + bl sub_02035FD8 + ldr r0, _02038E8C ; =sub_020382DC + mov r1, #0 + bl sub_020381C0 +_02038E84: + pop {r3, pc} + nop +_02038E88: .word 0x021D4150 +_02038E8C: .word sub_020382DC + thumb_func_end sub_02038E48 + + thumb_func_start sub_02038E90 +sub_02038E90: ; 0x02038E90 + bx lr + .balign 4, 0 + thumb_func_end sub_02038E90 + + thumb_func_start sub_02038E94 +sub_02038E94: ; 0x02038E94 + push {r3, lr} + mov r0, #0 + bl ov00_021E5E54 + cmp r0, #0 + bge _02038EA8 + ldr r0, _02038EAC ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 +_02038EA8: + pop {r3, pc} + nop +_02038EAC: .word sub_02038E90 + thumb_func_end sub_02038E94 + + thumb_func_start sub_02038EB0 +sub_02038EB0: ; 0x02038EB0 + bx lr + .balign 4, 0 + thumb_func_end sub_02038EB0 + + thumb_func_start sub_02038EB4 +sub_02038EB4: ; 0x02038EB4 + bx lr + .balign 4, 0 + thumb_func_end sub_02038EB4 + + thumb_func_start sub_02038EB8 +sub_02038EB8: ; 0x02038EB8 + push {r3, lr} + mov r0, #1 + bl sub_0203786C + mov r0, #0 + bl ov00_021E5E54 + cmp r0, #0xa + blt _02038ED8 + cmp r0, #0x14 + bge _02038ED8 + ldr r0, _02038F60 ; =sub_02038EB4 + mov r1, #0 + bl sub_020381C0 + b _02038F3A +_02038ED8: + cmp r0, #0 + bge _02038EE6 + ldr r0, _02038F64 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + b _02038F3A +_02038EE6: + cmp r0, #0x17 + bne _02038EF4 + ldr r0, _02038F68 ; =sub_02038E94 + mov r1, #0 + bl sub_020381C0 + b _02038F3A +_02038EF4: + cmp r0, #0x18 + bne _02038F18 + ldr r0, _02038F6C ; =0x021D4150 + ldr r0, [r0] + add r0, #0x53 + ldrb r0, [r0] + cmp r0, #0 + beq _02038F0E + ldr r0, _02038F64 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + b _02038F3A +_02038F0E: + ldr r0, _02038F70 ; =sub_02038EB0 + mov r1, #0 + bl sub_020381C0 + b _02038F3A +_02038F18: + cmp r0, #0x15 + bne _02038F3A + ldr r0, _02038F6C ; =0x021D4150 + ldr r0, [r0] + add r0, #0x53 + ldrb r0, [r0] + cmp r0, #0 + beq _02038F32 + ldr r0, _02038F64 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + b _02038F3A +_02038F32: + ldr r0, _02038F70 ; =sub_02038EB0 + mov r1, #0 + bl sub_020381C0 +_02038F3A: + ldr r0, _02038F6C ; =0x021D4150 + ldr r0, [r0] + add r0, #0x53 + ldrb r0, [r0] + cmp r0, #0 + beq _02038F5E + bl sub_02037454 + ldr r1, _02038F6C ; =0x021D4150 + ldr r1, [r1] + add r1, #0x4b + ldrb r1, [r1] + cmp r1, r0 + beq _02038F5E + ldr r0, _02038F64 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 +_02038F5E: + pop {r3, pc} + .balign 4, 0 +_02038F60: .word sub_02038EB4 +_02038F64: .word sub_02038E90 +_02038F68: .word sub_02038E94 +_02038F6C: .word 0x021D4150 +_02038F70: .word sub_02038EB0 + thumb_func_end sub_02038EB8 + + thumb_func_start sub_02038F74 +sub_02038F74: ; 0x02038F74 + push {r3, r4} + ldr r3, _02038F98 ; =0x021D4150 + ldr r4, [r3] + cmp r4, #0 + beq _02038F94 + add r3, r0, #0 + sub r3, #0x19 + cmp r3, #1 + bls _02038F88 + neg r0, r0 +_02038F88: + str r0, [r4, #0x34] + ldr r0, _02038F98 ; =0x021D4150 + ldr r3, [r0] + str r1, [r3, #0x38] + ldr r0, [r0] + str r2, [r0, #0x3c] +_02038F94: + pop {r3, r4} + bx lr + .balign 4, 0 +_02038F98: .word 0x021D4150 + thumb_func_end sub_02038F74 + + thumb_func_start sub_02038F9C +sub_02038F9C: ; 0x02038F9C + push {r3, lr} + mov r0, #0 + bl ov00_021E5E54 + cmp r0, #0xa + blt _02038FB6 + cmp r0, #0x14 + bge _02038FB6 + ldr r0, _02038FFC ; =sub_02038EB4 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038FB6: + cmp r0, #0 + bge _02038FC4 + ldr r0, _02039000 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038FC4: + cmp r0, #0x14 + bne _02038FD2 + ldr r0, _02039004 ; =sub_02038EB8 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038FD2: + cmp r0, #0x15 + bne _02038FE0 + ldr r0, _02039008 ; =sub_02038EB0 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038FE0: + cmp r0, #0x16 + bne _02038FEE + ldr r0, _02038FFC ; =sub_02038EB4 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02038FEE: + cmp r0, #0x18 + bne _02038FFA + ldr r0, _02039008 ; =sub_02038EB0 + mov r1, #0 + bl sub_020381C0 +_02038FFA: + pop {r3, pc} + .balign 4, 0 +_02038FFC: .word sub_02038EB4 +_02039000: .word sub_02038E90 +_02039004: .word sub_02038EB8 +_02039008: .word sub_02038EB0 + thumb_func_end sub_02038F9C + + thumb_func_start sub_0203900C +sub_0203900C: ; 0x0203900C + push {r3, lr} + mov r0, #1 + bl ov00_021E5E54 + cmp r0, #0 + bge _02039022 + ldr r0, _02039074 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02039022: + ldr r0, _02039078 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4e + ldrb r0, [r0] + bl sub_02033FC4 + add r2, r0, #0 + ldr r0, _02039078 ; =0x021D4150 + ldr r1, [r0] + mov r0, #0x51 + ldrsb r0, [r1, r0] + add r1, r2, #1 + mov r2, #0 + bl ov00_021E6D7C + add r0, r0, #3 + cmp r0, #3 + bhi _02039070 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_02039052: ; jump table + .short _02039068 - _02039052 - 2 ; case 0 + .short _02039070 - _02039052 - 2 ; case 1 + .short _02039070 - _02039052 - 2 ; case 2 + .short _0203905A - _02039052 - 2 ; case 3 +_0203905A: + bl sub_0203622C + ldr r0, _0203907C ; =sub_02038F9C + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02039068: + ldr r0, _02039074 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 +_02039070: + pop {r3, pc} + nop +_02039074: .word sub_02038E90 +_02039078: .word 0x021D4150 +_0203907C: .word sub_02038F9C + thumb_func_end sub_0203900C + + thumb_func_start sub_02039080 +sub_02039080: ; 0x02039080 + push {r4, lr} + add r4, r0, #0 + ldr r0, _020390B0 ; =0x021D4150 + ldr r0, [r0] + ldr r1, [r0, #0x24] + ldr r0, _020390B4 ; =sub_02038F9C + cmp r1, r0 + beq _02039094 + mov r0, #0 + pop {r4, pc} +_02039094: + ldr r0, _020390B8 ; =sub_02036904 + ldr r1, _020390BC ; =sub_020367A8 + bl ov00_021E5C84 + ldr r0, _020390B0 ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + add r0, #0x51 + strb r4, [r0] + ldr r0, _020390C0 ; =sub_0203900C + bl sub_020381C0 + mov r0, #1 + pop {r4, pc} + .balign 4, 0 +_020390B0: .word 0x021D4150 +_020390B4: .word sub_02038F9C +_020390B8: .word sub_02036904 +_020390BC: .word sub_020367A8 +_020390C0: .word sub_0203900C + thumb_func_end sub_02039080 + + thumb_func_start sub_020390C4 +sub_020390C4: ; 0x020390C4 + ldr r0, _02039120 ; =0x021D4150 + ldr r1, _02039124 ; =sub_02038F9C + ldr r0, [r0] + ldr r0, [r0, #0x24] + cmp r0, r1 + bne _020390D4 + mov r0, #0 + bx lr +_020390D4: + ldr r1, _02039128 ; =sub_02038EB8 + cmp r0, r1 + bne _020390DE + mov r0, #1 + bx lr +_020390DE: + ldr r1, _0203912C ; =sub_02038E94 + cmp r0, r1 + bne _020390E8 + mov r0, #3 + bx lr +_020390E8: + ldr r1, _02039130 ; =sub_02038EB0 + cmp r0, r1 + bne _020390F2 + mov r0, #4 + bx lr +_020390F2: + ldr r1, _02039134 ; =sub_02038EB4 + cmp r0, r1 + bne _020390FC + mov r0, #5 + bx lr +_020390FC: + ldr r1, _02039138 ; =sub_02039DE4 + cmp r0, r1 + bne _02039106 + mov r0, #0 + bx lr +_02039106: + ldr r1, _0203913C ; =sub_02039DC4 + cmp r0, r1 + bne _02039110 + mov r0, #1 + bx lr +_02039110: + ldr r1, _02039140 ; =sub_02039E7C + cmp r0, r1 + bne _0203911A + mov r0, #3 + bx lr +_0203911A: + mov r0, #2 + bx lr + nop +_02039120: .word 0x021D4150 +_02039124: .word sub_02038F9C +_02039128: .word sub_02038EB8 +_0203912C: .word sub_02038E94 +_02039130: .word sub_02038EB0 +_02039134: .word sub_02038EB4 +_02039138: .word sub_02039DE4 +_0203913C: .word sub_02039DC4 +_02039140: .word sub_02039E7C + thumb_func_end sub_020390C4 + + thumb_func_start sub_02039144 +sub_02039144: ; 0x02039144 + push {r3, lr} + ldr r0, _020391BC ; =sub_02036904 + ldr r1, _020391C0 ; =sub_020367A8 + bl ov00_021E5C84 + mov r0, #0 + mvn r0, r0 + mov r1, #4 + mov r2, #1 + bl ov00_021E6D7C + add r0, r0, #4 + cmp r0, #4 + bhi _0203919A + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203916C: ; jump table + .short _02039198 - _0203916C - 2 ; case 0 + .short _0203918E - _0203916C - 2 ; case 1 + .short _0203919A - _0203916C - 2 ; case 2 + .short _0203919A - _0203916C - 2 ; case 3 + .short _02039176 - _0203916C - 2 ; case 4 +_02039176: + ldr r0, _020391C4 ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + add r0, #0x5c + strb r1, [r0] + bl sub_0203622C + ldr r0, _020391C8 ; =sub_02038F9C + mov r1, #0 + bl sub_020381C0 + b _0203919A +_0203918E: + ldr r0, _020391CC ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + b _0203919A +_02039198: + pop {r3, pc} +_0203919A: + bl ov00_021E6690 + cmp r0, #0 + bge _020391AC + ldr r0, _020391CC ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_020391AC: + cmp r0, #0x1a + bne _020391B8 + ldr r0, _020391CC ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 +_020391B8: + pop {r3, pc} + nop +_020391BC: .word sub_02036904 +_020391C0: .word sub_020367A8 +_020391C4: .word 0x021D4150 +_020391C8: .word sub_02038F9C +_020391CC: .word sub_02038E90 + thumb_func_end sub_02039144 + + thumb_func_start sub_020391D0 +sub_020391D0: ; 0x020391D0 + push {r3, lr} + mov r0, #0 + bl sub_0203786C + ldr r0, _02039214 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x50 + ldrb r0, [r0] + bl ov00_021E6BE4 + cmp r0, #0 + beq _020391FE + bl ov00_021E6C68 + cmp r0, #0 + beq _020391FE + bl sub_020343E4 + ldr r0, _02039218 ; =sub_02039144 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_020391FE: + mov r0, #0 + bl ov00_021E5E54 + cmp r0, #0 + bge _02039210 + ldr r0, _0203921C ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 +_02039210: + pop {r3, pc} + nop +_02039214: .word 0x021D4150 +_02039218: .word sub_02039144 +_0203921C: .word sub_02038E90 + thumb_func_end sub_020391D0 + + thumb_func_start sub_02039220 +sub_02039220: ; 0x02039220 + push {r3, lr} + bl sub_0203769C + cmp r0, #0 + bne _0203923C + ldr r0, _0203925C ; =0x021D4150 + mov r1, #0 + ldr r0, [r0] + add r0, #0x50 + strb r1, [r0] + ldr r0, _02039260 ; =sub_020391D0 + bl sub_020381C0 + b _0203924E +_0203923C: + ldr r0, _0203925C ; =0x021D4150 + mov r1, #1 + ldr r0, [r0] + add r0, #0x50 + strb r1, [r0] + ldr r0, _02039260 ; =sub_020391D0 + mov r1, #0 + bl sub_020381C0 +_0203924E: + ldr r0, _0203925C ; =0x021D4150 + mov r1, #1 + ldr r0, [r0] + add r0, #0x5c + strb r1, [r0] + pop {r3, pc} + nop +_0203925C: .word 0x021D4150 +_02039260: .word sub_020391D0 + thumb_func_end sub_02039220 + + thumb_func_start sub_02039264 +sub_02039264: ; 0x02039264 + ldr r0, _02039270 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x5c + ldrb r0, [r0] + bx lr + nop +_02039270: .word 0x021D4150 + thumb_func_end sub_02039264 + + thumb_func_start sub_02039274 +sub_02039274: ; 0x02039274 + ldr r0, _02039294 ; =0x021D4150 + ldr r0, [r0] + ldr r1, [r0, #0x24] + ldr r0, _02039298 ; =sub_02039144 + cmp r1, r0 + bne _02039284 + mov r0, #1 + bx lr +_02039284: + ldr r0, _0203929C ; =sub_02039C60 + cmp r1, r0 + bne _0203928E + mov r0, #1 + bx lr +_0203928E: + mov r0, #0 + bx lr + nop +_02039294: .word 0x021D4150 +_02039298: .word sub_02039144 +_0203929C: .word sub_02039C60 + thumb_func_end sub_02039274 + + thumb_func_start sub_020392A0 +sub_020392A0: ; 0x020392A0 + ldr r0, _020392C8 ; =0x021D4150 + ldr r0, [r0] + ldr r1, [r0, #0x24] + ldr r0, _020392CC ; =sub_02038F9C + cmp r1, r0 + bne _020392B0 + mov r0, #1 + bx lr +_020392B0: + ldr r0, _020392D0 ; =sub_02039144 + cmp r1, r0 + bne _020392BA + mov r0, #1 + bx lr +_020392BA: + ldr r0, _020392D4 ; =sub_02039C60 + cmp r1, r0 + bne _020392C4 + mov r0, #1 + bx lr +_020392C4: + mov r0, #0 + bx lr + .balign 4, 0 +_020392C8: .word 0x021D4150 +_020392CC: .word sub_02038F9C +_020392D0: .word sub_02039144 +_020392D4: .word sub_02039C60 + thumb_func_end sub_020392A0 + + thumb_func_start sub_020392D8 +sub_020392D8: ; 0x020392D8 + push {r3, lr} + ldr r0, _020392F0 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _020392E6 + bl GF_AssertFail +_020392E6: + ldr r0, _020392F0 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x34 + pop {r3, pc} + nop +_020392F0: .word 0x021D4150 + thumb_func_end sub_020392D8 + + thumb_func_start sub_020392F4 +sub_020392F4: ; 0x020392F4 + push {r3, lr} + mov r0, #0 + bl sub_0203786C + mov r0, #0 + bl ov00_021E6BE4 + cmp r0, #0 + beq _02039312 + bl ov00_021E6C68 + ldr r0, _02039328 ; =sub_0203847C + mov r1, #0 + bl sub_020381C0 +_02039312: + mov r0, #0 + bl ov00_021E5E54 + cmp r0, #0 + bge _02039324 + ldr r0, _0203932C ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 +_02039324: + pop {r3, pc} + nop +_02039328: .word sub_0203847C +_0203932C: .word sub_02038E90 + thumb_func_end sub_020392F4 + + thumb_func_start sub_02039330 +sub_02039330: ; 0x02039330 + push {r3, lr} + ldr r0, _02039350 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _0203934C + mov r0, #1 + bl sub_0201A738 + bl sub_020343E4 + ldr r0, _02039354 ; =sub_0203847C + mov r1, #5 + bl sub_020381C0 +_0203934C: + pop {r3, pc} + nop +_02039350: .word 0x021D4150 +_02039354: .word sub_0203847C + thumb_func_end sub_02039330 + + thumb_func_start sub_02039358 +sub_02039358: ; 0x02039358 + push {r3, lr} + ldr r0, _02039370 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _0203936E + mov r1, #0 + add r0, #0x50 + strb r1, [r0] + ldr r0, _02039374 ; =sub_020391D0 + bl sub_020381C0 +_0203936E: + pop {r3, pc} + .balign 4, 0 +_02039370: .word 0x021D4150 +_02039374: .word sub_020391D0 + thumb_func_end sub_02039358 + + thumb_func_start sub_02039378 +sub_02039378: ; 0x02039378 + push {r3, lr} + ldr r0, _020393AC ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _020393AA + mov r0, #0 + mov r1, #1 + bl sub_020398D4 + bl sub_0203769C + cmp r0, #0 + bne _02039398 + mov r1, #0 + ldr r0, _020393AC ; =0x021D4150 + b _0203939C +_02039398: + ldr r0, _020393AC ; =0x021D4150 + mov r1, #1 +_0203939C: + ldr r0, [r0] + add r0, #0x50 + strb r1, [r0] + ldr r0, _020393B0 ; =sub_020391D0 + mov r1, #0 + bl sub_020381C0 +_020393AA: + pop {r3, pc} + .balign 4, 0 +_020393AC: .word 0x021D4150 +_020393B0: .word sub_020391D0 + thumb_func_end sub_02039378 + + thumb_func_start sub_020393B4 +sub_020393B4: ; 0x020393B4 + push {r3, lr} + bl sub_0203769C + add r1, sp, #0 + strb r0, [r1] + mov r0, #0x15 + add r1, sp, #0 + bl sub_020376E0 + pop {r3, pc} + thumb_func_end sub_020393B4 + + thumb_func_start sub_020393C8 +sub_020393C8: ; 0x020393C8 + ldr r0, _02039408 ; =0x021D4150 + ldr r2, [r0] + cmp r2, #0 + beq _02039402 + ldr r1, [r2, #0x24] + ldr r0, _0203940C ; =sub_02038E90 + cmp r1, r0 + bne _020393DC + mov r0, #1 + bx lr +_020393DC: + ldr r0, _02039410 ; =sub_02038E94 + cmp r1, r0 + bne _020393F0 + add r0, r2, #0 + add r0, #0x53 + ldrb r0, [r0] + cmp r0, #0 + beq _020393F0 + mov r0, #1 + bx lr +_020393F0: + ldr r0, _02039414 ; =sub_02039E7C + cmp r1, r0 + bne _02039402 + add r2, #0x53 + ldrb r0, [r2] + cmp r0, #0 + beq _02039402 + mov r0, #1 + bx lr +_02039402: + mov r0, #0 + bx lr + nop +_02039408: .word 0x021D4150 +_0203940C: .word sub_02038E90 +_02039410: .word sub_02038E94 +_02039414: .word sub_02039E7C + thumb_func_end sub_020393C8 + + thumb_func_start sub_02039418 +sub_02039418: ; 0x02039418 + push {r4, lr} + add r4, r0, #0 + ldr r0, _02039468 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _02039466 + mov r1, #0xf + add r2, r1, #0 + mov r0, #3 + add r2, #0xf1 + bl sub_0201A91C + mov r0, #0xf + mov r1, #0x68 + bl AllocFromHeap + ldr r1, _02039468 ; =0x021D4150 + mov r2, #0x68 + str r0, [r1] + mov r1, #0 + bl MIi_CpuFill8 + ldr r0, _02039468 ; =0x021D4150 + mov r2, #0x18 + ldr r1, [r0] + add r1, #0x4e + strb r2, [r1] + ldr r2, [r0] + mov r1, #1 + add r2, #0x55 + strb r1, [r2] + ldr r0, [r0] + str r4, [r0, #0x28] + mov r0, #0 + bl sub_020398D4 + mov r0, #1 + bl sub_0201A728 +_02039466: + pop {r4, pc} + .balign 4, 0 +_02039468: .word 0x021D4150 + thumb_func_end sub_02039418 + + thumb_func_start sub_0203946C +sub_0203946C: ; 0x0203946C + push {r3, lr} + ldr r0, _0203949C ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _02039498 + mov r0, #1 + bl sub_0201A738 + mov r0, #0 + add r1, r0, #0 + bl sub_020398D4 + ldr r0, _0203949C ; =0x021D4150 + ldr r0, [r0] + bl FreeToHeap + ldr r0, _0203949C ; =0x021D4150 + mov r1, #0 + str r1, [r0] + mov r0, #0xf + bl sub_0201A9C4 +_02039498: + pop {r3, pc} + nop +_0203949C: .word 0x021D4150 + thumb_func_end sub_0203946C + + thumb_func_start sub_020394A0 +sub_020394A0: ; 0x020394A0 + push {r4, lr} + add r4, r0, #0 + ldr r0, _020394F0 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _020394EE + mov r1, #0xf + add r2, r1, #0 + mov r0, #3 + add r2, #0xf1 + bl sub_0201A91C + mov r0, #0xf + mov r1, #0x68 + bl AllocFromHeap + ldr r1, _020394F0 ; =0x021D4150 + mov r2, #0x68 + str r0, [r1] + mov r1, #0 + bl MIi_CpuFill8 + ldr r0, _020394F0 ; =0x021D4150 + mov r2, #0x19 + ldr r1, [r0] + add r1, #0x4e + strb r2, [r1] + ldr r2, [r0] + mov r1, #1 + add r2, #0x55 + strb r1, [r2] + ldr r0, [r0] + str r4, [r0, #0x28] + mov r0, #0 + bl sub_020398D4 + mov r0, #1 + bl sub_0201A728 +_020394EE: + pop {r4, pc} + .balign 4, 0 +_020394F0: .word 0x021D4150 + thumb_func_end sub_020394A0 + + thumb_func_start sub_020394F4 +sub_020394F4: ; 0x020394F4 + push {r3, lr} + ldr r0, _02039524 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _02039520 + mov r0, #1 + bl sub_0201A738 + mov r0, #0 + add r1, r0, #0 + bl sub_020398D4 + ldr r0, _02039524 ; =0x021D4150 + ldr r0, [r0] + bl FreeToHeap + ldr r0, _02039524 ; =0x021D4150 + mov r1, #0 + str r1, [r0] + mov r0, #0xf + bl sub_0201A9C4 +_02039520: + pop {r3, pc} + nop +_02039524: .word 0x021D4150 + thumb_func_end sub_020394F4 + + thumb_func_start sub_02039528 +sub_02039528: ; 0x02039528 + push {r4, lr} + add r4, r0, #0 + ldr r0, _02039578 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _02039576 + mov r1, #0xf + add r2, r1, #0 + mov r0, #3 + add r2, #0xf1 + bl sub_0201A91C + mov r0, #0xf + mov r1, #0x68 + bl AllocFromHeap + ldr r1, _02039578 ; =0x021D4150 + mov r2, #0x68 + str r0, [r1] + mov r1, #0 + bl MIi_CpuFill8 + ldr r0, _02039578 ; =0x021D4150 + mov r2, #0x24 + ldr r1, [r0] + add r1, #0x4e + strb r2, [r1] + ldr r2, [r0] + mov r1, #1 + add r2, #0x55 + strb r1, [r2] + ldr r0, [r0] + str r4, [r0, #0x28] + mov r0, #0 + bl sub_020398D4 + mov r0, #1 + bl sub_0201A728 +_02039576: + pop {r4, pc} + .balign 4, 0 +_02039578: .word 0x021D4150 + thumb_func_end sub_02039528 + + thumb_func_start sub_0203957C +sub_0203957C: ; 0x0203957C + push {r3, lr} + ldr r0, _020395AC ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _020395A8 + mov r0, #1 + bl sub_0201A738 + mov r0, #0 + add r1, r0, #0 + bl sub_020398D4 + ldr r0, _020395AC ; =0x021D4150 + ldr r0, [r0] + bl FreeToHeap + ldr r0, _020395AC ; =0x021D4150 + mov r1, #0 + str r1, [r0] + mov r0, #0xf + bl sub_0201A9C4 +_020395A8: + pop {r3, pc} + nop +_020395AC: .word 0x021D4150 + thumb_func_end sub_0203957C + + thumb_func_start sub_020395B0 +sub_020395B0: ; 0x020395B0 + push {r3, lr} + sub sp, #8 + ldr r0, _02039608 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _020395C2 + add sp, #8 + mov r0, #0 + pop {r3, pc} +_020395C2: + add r0, #0x4e + ldrb r0, [r0] + cmp r0, #0x18 + beq _020395CE + cmp r0, #0x24 + bne _020395E4 +_020395CE: + add r0, sp, #4 + add r1, sp, #0 + bl ov00_021EC11C + cmp r0, #0 + beq _02039600 + bl ov00_021EC210 + add sp, #8 + mov r0, #1 + pop {r3, pc} +_020395E4: + cmp r0, #0x19 + bne _02039600 + add r0, sp, #4 + add r1, sp, #0 + bl ov00_021EC11C + cmp r0, #0 + beq _02039600 + ldr r0, [sp] + cmp r0, #7 + bne _02039600 + add sp, #8 + mov r0, #1 + pop {r3, pc} +_02039600: + mov r0, #0 + add sp, #8 + pop {r3, pc} + nop +_02039608: .word 0x021D4150 + thumb_func_end sub_020395B0 + + thumb_func_start sub_0203960C +sub_0203960C: ; 0x0203960C + push {r3, lr} + bl ov00_021E5B6C + ldr r1, _02039680 ; =0x021D4150 + ldr r3, [r1] + ldr r2, [r3, #0x44] + sub r2, r2, #1 + str r2, [r3, #0x44] + cmp r0, #0x1b + bne _02039660 + ldr r1, [r1] + add r0, r1, #0 + add r0, #0x4e + ldrb r0, [r0] + cmp r0, #0x21 + bne _02039656 + ldr r0, [r1, #0x60] + bl ov45_0222E804 + cmp r0, #1 + bne _0203964C + ldr r1, _02039680 ; =0x021D4150 + mov r2, #1 + ldr r0, [r1] + add r0, #0x64 + strb r2, [r0] + ldr r1, [r1] + ldr r0, _02039684 ; =sub_02039C14 + ldr r1, [r1, #0x44] + bl sub_020381C0 + pop {r3, pc} +_0203964C: + ldr r0, _02039688 ; =sub_02039DC0 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02039656: + ldr r0, _0203968C ; =sub_02039144 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02039660: + cmp r0, #0 + beq _0203966C + ldr r0, _02039690 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 +_0203966C: + ldr r0, _02039680 ; =0x021D4150 + ldr r0, [r0] + ldr r0, [r0, #0x44] + cmp r0, #0 + bgt _0203967E + ldr r0, _02039690 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 +_0203967E: + pop {r3, pc} + .balign 4, 0 +_02039680: .word 0x021D4150 +_02039684: .word sub_02039C14 +_02039688: .word sub_02039DC0 +_0203968C: .word sub_02039144 +_02039690: .word sub_02038E90 + thumb_func_end sub_0203960C + + thumb_func_start sub_02039694 +sub_02039694: ; 0x02039694 + push {r3, lr} + bl sub_02034DB8 + cmp r0, #0 + beq _020396EE + mov r2, #0xd5 + mov r0, #3 + mov r1, #0x30 + lsl r2, r2, #0xa + bl sub_0201A91C + mov r0, #1 + add r1, r0, #0 + lsl r2, r0, #9 + add r3, r0, #0 + bl sub_02035ED8 + cmp r0, #0 + beq _020396EE + ldr r0, _020396F0 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4e + ldrb r0, [r0] + bl sub_02033FC4 + add r3, r0, #0 + ldr r0, _020396F0 ; =0x021D4150 + mov r2, #0xb1 + ldr r0, [r0] + mov r1, #0x30 + ldr r0, [r0, #0x28] + lsl r2, r2, #0xa + add r3, r3, #1 + bl ov00_021E5900 + ldr r0, _020396F4 ; =sub_020399DC + bl ov00_021E6CA4 + bl sub_02035FD8 + mov r1, #0xe1 + ldr r0, _020396F8 ; =sub_0203960C + lsl r1, r1, #4 + bl sub_020381C0 +_020396EE: + pop {r3, pc} + .balign 4, 0 +_020396F0: .word 0x021D4150 +_020396F4: .word sub_020399DC +_020396F8: .word sub_0203960C + thumb_func_end sub_02039694 + + thumb_func_start sub_020396FC +sub_020396FC: ; 0x020396FC + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + bl Sav2_PlayerData_GetProfileAddr + bl sub_02037474 + cmp r0, #0 + beq _02039712 + mov r0, #0 + pop {r3, r4, r5, pc} +_02039712: + mov r0, #1 + bl sub_0201A728 + ldr r2, _02039760 ; =0x00007080 + mov r0, #3 + mov r1, #0xf + bl sub_0201A91C + add r0, r5, #0 + mov r1, #0x17 + bl sub_02037C98 + mov r0, #0xf + add r1, r4, #0 + bl AllocFromHeap + ldr r1, _02039764 ; =0x021D4150 + ldr r2, [r1] + str r0, [r2] + ldr r0, [r1] + mov r1, #0 + ldr r0, [r0] + add r2, r4, #0 + bl MIi_CpuFill8 + ldr r0, _02039764 ; =0x021D4150 + mov r1, #0 + ldr r2, [r0] + add r2, #0x4f + strb r1, [r2] + ldr r0, [r0] + str r5, [r0, #0x28] + ldr r0, _02039768 ; =sub_02039694 + bl sub_020381C0 + ldr r0, _02039764 ; =0x021D4150 + ldr r0, [r0] + ldr r0, [r0] + pop {r3, r4, r5, pc} + .balign 4, 0 +_02039760: .word 0x00007080 +_02039764: .word 0x021D4150 +_02039768: .word sub_02039694 + thumb_func_end sub_020396FC + + thumb_func_start sub_0203976C +sub_0203976C: ; 0x0203976C + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + bl Sav2_PlayerData_GetProfileAddr + bl sub_02037474 + cmp r0, #0 + bne _020397B8 + mov r0, #1 + bl sub_0201A728 + ldr r2, _020397BC ; =0x00007080 + mov r0, #3 + mov r1, #0xf + bl sub_0201A91C + add r0, r5, #0 + mov r1, #0x21 + bl sub_02037C98 + ldr r0, _020397C0 ; =0x021D4150 + mov r1, #0 + ldr r2, [r0] + str r1, [r2] + ldr r2, [r0] + str r4, [r2, #0x60] + ldr r2, [r0] + add r2, #0x64 + strb r1, [r2] + ldr r2, [r0] + add r2, #0x4f + strb r1, [r2] + ldr r0, [r0] + str r5, [r0, #0x28] + ldr r0, _020397C4 ; =sub_02039BA0 + bl sub_020381C0 +_020397B8: + pop {r3, r4, r5, pc} + nop +_020397BC: .word 0x00007080 +_020397C0: .word 0x021D4150 +_020397C4: .word sub_02039BA0 + thumb_func_end sub_0203976C + + thumb_func_start sub_020397C8 +sub_020397C8: ; 0x020397C8 + push {r3, lr} + ldr r0, _020397DC ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _020397DA + ldr r0, _020397E0 ; =sub_02039D78 + mov r1, #0 + bl sub_020381C0 +_020397DA: + pop {r3, pc} + .balign 4, 0 +_020397DC: .word 0x021D4150 +_020397E0: .word sub_02039D78 + thumb_func_end sub_020397C8 + + thumb_func_start sub_020397E4 +sub_020397E4: ; 0x020397E4 + ldr r0, _020397F8 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _020397F0 + mov r0, #0 + bx lr +_020397F0: + add r0, #0x64 + ldrb r0, [r0] + bx lr + nop +_020397F8: .word 0x021D4150 + thumb_func_end sub_020397E4 + + thumb_func_start sub_020397FC +sub_020397FC: ; 0x020397FC + ldr r0, _02039814 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _02039810 + ldr r1, [r0, #0x24] + ldr r0, _02039818 ; =sub_02039DC0 + cmp r1, r0 + bne _02039810 + mov r0, #1 + bx lr +_02039810: + mov r0, #0 + bx lr + .balign 4, 0 +_02039814: .word 0x021D4150 +_02039818: .word sub_02039DC0 + thumb_func_end sub_020397FC + + thumb_func_start sub_0203981C +sub_0203981C: ; 0x0203981C + push {r4, lr} + add r4, r0, #0 + ldr r0, _02039864 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + bne _0203982C + bl GF_AssertFail +_0203982C: + bl sub_020392A0 + cmp r0, #1 + beq _02039838 + bl GF_AssertFail +_02039838: + add r0, r4, #0 + bl ov45_0222F274 + cmp r0, #0 + bne _02039854 + add r0, r4, #0 + mov r1, #4 + bl ov45_0222F028 + ldr r0, _02039868 ; =sub_02039DE4 + mov r1, #0 + bl sub_020381C0 + pop {r4, pc} +_02039854: + add r0, r4, #0 + bl ov45_0222F350 + ldr r0, _02039868 ; =sub_02039DE4 + mov r1, #0 + bl sub_020381C0 + pop {r4, pc} + .balign 4, 0 +_02039864: .word 0x021D4150 +_02039868: .word sub_02039DE4 + thumb_func_end sub_0203981C + + thumb_func_start sub_0203986C +sub_0203986C: ; 0x0203986C + push {r3, lr} + bl ov45_0222F464 + cmp r0, #1 + bne _0203987A + bl ov45_0222F154 +_0203987A: + bl ov45_0222F70C + ldr r0, _02039888 ; =sub_02039E30 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_02039888: .word sub_02039E30 + thumb_func_end sub_0203986C + + thumb_func_start sub_0203988C +sub_0203988C: ; 0x0203988C + ldr r0, _020398B8 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _020398B4 + ldr r1, [r0, #0x24] + ldr r0, _020398BC ; =sub_02039DC4 + cmp r1, r0 + bne _020398A0 + mov r0, #2 + bx lr +_020398A0: + ldr r0, _020398C0 ; =sub_02039DE4 + cmp r1, r0 + bne _020398AA + mov r0, #1 + bx lr +_020398AA: + ldr r0, _020398C4 ; =sub_02039E30 + cmp r1, r0 + bne _020398B4 + mov r0, #3 + bx lr +_020398B4: + mov r0, #0 + bx lr + .balign 4, 0 +_020398B8: .word 0x021D4150 +_020398BC: .word sub_02039DC4 +_020398C0: .word sub_02039DE4 +_020398C4: .word sub_02039E30 + thumb_func_end sub_0203988C + + thumb_func_start sub_020398C8 +sub_020398C8: ; 0x020398C8 + ldr r0, _020398D0 ; =0x021D4150 + ldr r0, [r0] + ldr r0, [r0] + bx lr + .balign 4, 0 +_020398D0: .word 0x021D4150 + thumb_func_end sub_020398C8 + + thumb_func_start sub_020398D4 +sub_020398D4: ; 0x020398D4 + push {r4, lr} + add r4, r0, #0 + ldr r0, _02039914 ; =0x021D4150 + ldr r2, [r0] + cmp r2, #0 + beq _02039904 + add r2, #0x53 + strb r4, [r2] + ldr r2, [r0] + add r2, #0x54 + strb r1, [r2] + cmp r4, #0 + beq _020398FC + bl sub_02037454 + ldr r1, _02039914 ; =0x021D4150 + ldr r1, [r1] + add r1, #0x4b + strb r0, [r1] + b _02039904 +_020398FC: + ldr r0, [r0] + mov r1, #0 + add r0, #0x4b + strb r1, [r0] +_02039904: + add r0, r4, #0 + bl sub_020356C0 + add r0, r4, #0 + bl sub_020356EC + pop {r4, pc} + nop +_02039914: .word 0x021D4150 + thumb_func_end sub_020398D4 + + thumb_func_start sub_02039918 +sub_02039918: ; 0x02039918 + ldr r0, _02039938 ; =0x021D4150 + ldr r1, [r0] + cmp r1, #0 + beq _02039934 + add r0, r1, #0 + add r0, #0x5d + ldrb r0, [r0] + cmp r0, #0 + beq _0203992E + mov r0, #1 + bx lr +_0203992E: + add r1, #0x54 + ldrb r0, [r1] + bx lr +_02039934: + mov r0, #0 + bx lr + .balign 4, 0 +_02039938: .word 0x021D4150 + thumb_func_end sub_02039918 + + thumb_func_start sub_0203993C +sub_0203993C: ; 0x0203993C + ldr r0, _02039950 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _0203994A + add r0, #0x4e + ldrb r0, [r0] + bx lr +_0203994A: + mov r0, #1 + bx lr + nop +_02039950: .word 0x021D4150 + thumb_func_end sub_0203993C + + thumb_func_start sub_02039954 +sub_02039954: ; 0x02039954 + ldr r0, _02039968 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _02039962 + add r0, #0x4f + ldrb r0, [r0] + bx lr +_02039962: + mov r0, #0 + bx lr + nop +_02039968: .word 0x021D4150 + thumb_func_end sub_02039954 + + thumb_func_start sub_0203996C +sub_0203996C: ; 0x0203996C + ldr r1, _02039978 ; =0x021D4150 + ldr r3, _0203997C ; =MIi_CpuCopy8 + ldr r1, [r1] + mov r2, #6 + add r1, r1, #4 + bx r3 + .balign 4, 0 +_02039978: .word 0x021D4150 +_0203997C: .word MIi_CpuCopy8 + thumb_func_end sub_0203996C + + thumb_func_start sub_02039980 +sub_02039980: ; 0x02039980 + add r1, r0, #0 + ldr r0, _02039990 ; =0x021D4150 + ldr r3, _02039994 ; =MIi_CpuCopy8 + ldr r0, [r0] + mov r2, #6 + add r0, r0, #4 + bx r3 + nop +_02039990: .word 0x021D4150 +_02039994: .word MIi_CpuCopy8 + thumb_func_end sub_02039980 + + thumb_func_start sub_02039998 +sub_02039998: ; 0x02039998 + push {r3, lr} + bl sub_0203993C + bl sub_02034044 + pop {r3, pc} + thumb_func_end sub_02039998 + + thumb_func_start sub_020399A4 +sub_020399A4: ; 0x020399A4 + ldr r1, _020399B4 ; =0x021D4150 + ldr r1, [r1] + cmp r1, #0 + beq _020399B0 + add r1, #0x56 + strb r0, [r1] +_020399B0: + bx lr + nop +_020399B4: .word 0x021D4150 + thumb_func_end sub_020399A4 + + thumb_func_start sub_020399B8 +sub_020399B8: ; 0x020399B8 + push {r3, lr} + bl sub_0201A79C + cmp r0, #0 + beq _020399C6 + mov r0, #0 + pop {r3, pc} +_020399C6: + ldr r0, _020399D8 ; =0x021D4150 + ldr r0, [r0] + cmp r0, #0 + beq _020399D4 + add r0, #0x56 + ldrb r0, [r0] + pop {r3, pc} +_020399D4: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 +_020399D8: .word 0x021D4150 + thumb_func_end sub_020399B8 + + thumb_func_start sub_020399DC +sub_020399DC: ; 0x020399DC + push {r3, lr} + add r2, r0, #0 + mov r0, #0 + mov r1, #1 + bl sub_0203AA44 +_020399E8: + b _020399E8 + .balign 4, 0 + thumb_func_end sub_020399DC + + thumb_func_start sub_020399EC +sub_020399EC: ; 0x020399EC + push {r3, lr} + mov r0, #0 + mov r1, #4 + add r2, r0, #0 + bl sub_0203AA44 +_020399F8: + b _020399F8 + .balign 4, 0 + thumb_func_end sub_020399EC + + thumb_func_start sub_020399FC +sub_020399FC: ; 0x020399FC + bx lr + .balign 4, 0 + thumb_func_end sub_020399FC + + thumb_func_start sub_02039A00 +sub_02039A00: ; 0x02039A00 + push {r3, lr} + bl sub_02039918 + cmp r0, #0 + beq _02039A98 + bl sub_02037700 + cmp r0, #0 + bne _02039A36 + bl sub_020393C8 + cmp r0, #0 + bne _02039A36 + bl sub_020395B0 + cmp r0, #0 + bne _02039A36 + ldr r0, _02039A9C ; =0x021D4150 + ldr r0, [r0] + add r0, #0x5d + ldrb r0, [r0] + cmp r0, #0 + bne _02039A36 + bl sub_020397FC + cmp r0, #0 + beq _02039A98 +_02039A36: + bl sub_0201A79C + cmp r0, #0 + bne _02039A98 + bl sub_020399B8 + cmp r0, #0 + bne _02039A98 + bl sub_02005FA0 + ldr r0, _02039A9C ; =0x021D4150 + ldr r0, [r0] + ldr r0, [r0, #0x28] + bl sub_020275A4 + ldr r1, _02039AA0 ; =gMain + 0x60 + mov r0, #1 + strb r0, [r1, #8] + ldr r1, _02039A9C ; =0x021D4150 + ldr r2, [r1] + add r1, r2, #0 + add r1, #0x5d + ldrb r1, [r1] + cmp r1, #3 + bne _02039A70 + mov r0, #3 + bl sub_020399A4 + pop {r3, pc} +_02039A70: + cmp r1, #5 + bne _02039A7C + mov r0, #5 + bl sub_020399A4 + pop {r3, pc} +_02039A7C: + add r2, #0x4e + ldrb r1, [r2] + cmp r1, #0x19 + beq _02039A8C + cmp r1, #0xf + beq _02039A8C + cmp r1, #0x24 + bne _02039A94 +_02039A8C: + mov r0, #2 + bl sub_020399A4 + pop {r3, pc} +_02039A94: + bl sub_020399A4 +_02039A98: + pop {r3, pc} + nop +_02039A9C: .word 0x021D4150 +_02039AA0: .word gMain + 0x60 + thumb_func_end sub_02039A00 + + thumb_func_start sub_02039AA4 +sub_02039AA4: ; 0x02039AA4 + push {r3, lr} + bl sub_02035630 + cmp r0, #0 + bne _02039AB6 + bl sub_02037D78 + cmp r0, #0 + bne _02039ABA +_02039AB6: + mov r0, #1 + pop {r3, pc} +_02039ABA: + bl sub_02034BE4 + cmp r0, #0 + bne _02039AC6 + mov r0, #1 + pop {r3, pc} +_02039AC6: + bl sub_02033974 + cmp r0, #0 + beq _02039AD2 + mov r0, #1 + pop {r3, pc} +_02039AD2: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02039AA4 + + thumb_func_start sub_02039AD8 +sub_02039AD8: ; 0x02039AD8 + push {r3, lr} + ldr r1, _02039AF4 ; =0x021D4150 + ldr r1, [r1] + cmp r1, #0 + beq _02039AEE + add r1, #0x5d + strb r0, [r1] + bl sub_02037988 + mov r0, #1 + pop {r3, pc} +_02039AEE: + mov r0, #0 + pop {r3, pc} + nop +_02039AF4: .word 0x021D4150 + thumb_func_end sub_02039AD8 + + thumb_func_start sub_02039AF8 +sub_02039AF8: ; 0x02039AF8 + ldr r0, _02039B0C ; =0x021D4150 + mov r1, #0x1d + ldr r0, [r0] + ldr r3, _02039B10 ; =ov00_021E5C84 + add r0, #0x4e + strb r1, [r0] + ldr r0, _02039B14 ; =sub_020369CC + add r1, r0, #0 + bx r3 + nop +_02039B0C: .word 0x021D4150 +_02039B10: .word ov00_021E5C84 +_02039B14: .word sub_020369CC + thumb_func_end sub_02039AF8 + + thumb_func_start sub_02039B18 +sub_02039B18: ; 0x02039B18 + ldr r0, _02039B2C ; =0x021D4150 + mov r1, #0x23 + ldr r0, [r0] + ldr r3, _02039B30 ; =ov00_021E5C84 + add r0, #0x4e + strb r1, [r0] + ldr r0, _02039B34 ; =sub_020369CC + add r1, r0, #0 + bx r3 + nop +_02039B2C: .word 0x021D4150 +_02039B30: .word ov00_021E5C84 +_02039B34: .word sub_020369CC + thumb_func_end sub_02039B18 + + thumb_func_start sub_02039B38 +sub_02039B38: ; 0x02039B38 + ldr r0, _02039B4C ; =0x021D4150 + mov r1, #0x21 + ldr r0, [r0] + ldr r3, _02039B50 ; =ov00_021E5C84 + add r0, #0x4e + strb r1, [r0] + ldr r0, _02039B54 ; =sub_020369CC + add r1, r0, #0 + bx r3 + nop +_02039B4C: .word 0x021D4150 +_02039B50: .word ov00_021E5C84 +_02039B54: .word sub_020369CC + thumb_func_end sub_02039B38 + + thumb_func_start sub_02039B58 +sub_02039B58: ; 0x02039B58 + ldr r0, _02039B6C ; =0x021D4150 + ldr r3, _02039B70 ; =ov00_021E5C84 + ldr r0, [r0] + mov r1, #0x17 + add r0, #0x4e + strb r1, [r0] + ldr r0, _02039B74 ; =sub_02036904 + ldr r1, _02039B78 ; =sub_020367A8 + bx r3 + nop +_02039B6C: .word 0x021D4150 +_02039B70: .word ov00_021E5C84 +_02039B74: .word sub_02036904 +_02039B78: .word sub_020367A8 + thumb_func_end sub_02039B58 + + thumb_func_start sub_02039B7C +sub_02039B7C: ; 0x02039B7C + ldr r0, _02039B90 ; =0x021D4150 + ldr r3, _02039B94 ; =ov00_021E5C84 + ldr r0, [r0] + mov r1, #0x13 + add r0, #0x4e + strb r1, [r0] + ldr r0, _02039B98 ; =sub_02036904 + ldr r1, _02039B9C ; =sub_020367A8 + bx r3 + nop +_02039B90: .word 0x021D4150 +_02039B94: .word ov00_021E5C84 +_02039B98: .word sub_02036904 +_02039B9C: .word sub_020367A8 + thumb_func_end sub_02039B7C + + thumb_func_start sub_02039BA0 +sub_02039BA0: ; 0x02039BA0 + push {r3, lr} + bl sub_02034DB8 + cmp r0, #0 + beq _02039C04 + mov r1, #0x30 + mov r0, #3 + lsl r2, r1, #0xd + bl sub_0201A91C + mov r0, #1 + add r1, r0, #0 + lsl r2, r0, #9 + add r3, r0, #0 + bl sub_02035ED8 + cmp r0, #0 + beq _02039C04 + ldr r0, _02039C08 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x4e + ldrb r0, [r0] + bl sub_02033FC4 + add r3, r0, #0 + ldr r0, _02039C08 ; =0x021D4150 + mov r2, #0x16 + ldr r0, [r0] + mov r1, #0x30 + ldr r0, [r0, #0x28] + lsl r2, r2, #0xe + add r3, r3, #1 + bl ov00_021E5900 + ldr r0, _02039C0C ; =sub_020399DC + bl ov00_021E6CA4 + bl sub_02035FD8 + mov r0, #0 + bl ov00_021E70B8 + mov r0, #0 + bl sub_020378E4 + mov r1, #0xe1 + ldr r0, _02039C10 ; =sub_0203960C + lsl r1, r1, #4 + bl sub_020381C0 +_02039C04: + pop {r3, pc} + nop +_02039C08: .word 0x021D4150 +_02039C0C: .word sub_020399DC +_02039C10: .word sub_0203960C + thumb_func_end sub_02039BA0 + + thumb_func_start sub_02039C14 +sub_02039C14: ; 0x02039C14 + push {r3, lr} + ldr r0, _02039C54 ; =0x021D4150 + ldr r2, [r0] + ldr r1, [r2, #0x44] + sub r1, r1, #1 + str r1, [r2, #0x44] + ldr r0, [r0] + ldr r0, [r0, #0x44] + cmp r0, #0 + bgt _02039C32 + ldr r0, _02039C58 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02039C32: + mov r0, #1 + bl sub_0203786C + bl sub_02039D3C + cmp r0, #0 + beq _02039C50 + bl ov45_0222E8F4 + cmp r0, #0 + beq _02039C50 + ldr r0, _02039C5C ; =sub_02039C60 + mov r1, #0 + bl sub_020381C0 +_02039C50: + pop {r3, pc} + nop +_02039C54: .word 0x021D4150 +_02039C58: .word sub_02038E90 +_02039C5C: .word sub_02039C60 + thumb_func_end sub_02039C14 + + thumb_func_start sub_02039C60 +sub_02039C60: ; 0x02039C60 + push {r3, lr} + bl sub_02039D3C + cmp r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02039C60 + + thumb_func_start sub_02039C6C +sub_02039C6C: ; 0x02039C6C + push {r4, lr} + mov r4, #1 + cmp r0, #0xa + blt _02039C84 + cmp r0, #0x14 + bge _02039C84 + ldr r0, _02039CF4 ; =sub_02038EB4 + mov r1, #0 + bl sub_020381C0 + mov r4, #0 + b _02039CC8 +_02039C84: + cmp r0, #0 + bge _02039C94 + ldr r0, _02039CF8 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + mov r4, #0 + b _02039CC8 +_02039C94: + cmp r0, #0x17 + bne _02039CA4 + ldr r0, _02039CFC ; =sub_02039E7C + mov r1, #0 + bl sub_020381C0 + mov r4, #0 + b _02039CC8 +_02039CA4: + cmp r0, #0x18 + bne _02039CC8 + ldr r0, _02039D00 ; =0x021D4150 + mov r4, #0 + ldr r0, [r0] + add r0, #0x53 + ldrb r0, [r0] + cmp r0, #0 + beq _02039CC0 + ldr r0, _02039CF8 ; =sub_02038E90 + add r1, r4, #0 + bl sub_020381C0 + b _02039CC8 +_02039CC0: + ldr r0, _02039D04 ; =sub_02038EB0 + add r1, r4, #0 + bl sub_020381C0 +_02039CC8: + ldr r0, _02039D00 ; =0x021D4150 + ldr r0, [r0] + add r0, #0x53 + ldrb r0, [r0] + cmp r0, #0 + beq _02039CEE + bl sub_02037454 + ldr r1, _02039D00 ; =0x021D4150 + ldr r1, [r1] + add r1, #0x4b + ldrb r1, [r1] + cmp r1, r0 + beq _02039CEE + ldr r0, _02039CF8 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + mov r4, #0 +_02039CEE: + add r0, r4, #0 + pop {r4, pc} + nop +_02039CF4: .word sub_02038EB4 +_02039CF8: .word sub_02038E90 +_02039CFC: .word sub_02039E7C +_02039D00: .word 0x021D4150 +_02039D04: .word sub_02038EB0 + thumb_func_end sub_02039C6C + + thumb_func_start sub_02039D08 +sub_02039D08: ; 0x02039D08 + push {r4, lr} + mov r4, #1 + bl ov45_0222E6C8 + cmp r0, #4 + bhi _02039D34 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_02039D20: ; jump table + .short _02039D34 - _02039D20 - 2 ; case 0 + .short _02039D34 - _02039D20 - 2 ; case 1 + .short _02039D34 - _02039D20 - 2 ; case 2 + .short _02039D34 - _02039D20 - 2 ; case 3 + .short _02039D2A - _02039D20 - 2 ; case 4 +_02039D2A: + ldr r0, _02039D38 ; =sub_02039DC0 + mov r1, #0 + bl sub_020381C0 + mov r4, #0 +_02039D34: + add r0, r4, #0 + pop {r4, pc} + .balign 4, 0 +_02039D38: .word sub_02039DC0 + thumb_func_end sub_02039D08 + + thumb_func_start sub_02039D3C +sub_02039D3C: ; 0x02039D3C + push {r3, lr} + mov r0, #0 + bl ov00_021E5E54 + bl sub_02039C6C + cmp r0, #0 + beq _02039D50 + bl sub_02039D08 +_02039D50: + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02039D3C + + thumb_func_start sub_02039D54 +sub_02039D54: ; 0x02039D54 + push {r4, lr} + add r4, r0, #0 + mov r0, #0 + bl ov00_021E5E54 + cmp r0, #0x14 + blt _02039D66 + str r0, [r4] + b _02039D72 +_02039D66: + mov r1, #0 + str r1, [r4] + bl sub_02039C6C + cmp r0, #0 + beq _02039D76 +_02039D72: + bl sub_02039D08 +_02039D76: + pop {r4, pc} + thumb_func_end sub_02039D54 + + thumb_func_start sub_02039D78 +sub_02039D78: ; 0x02039D78 + push {r3, lr} + bl ov45_0222E91C + ldr r0, _02039D88 ; =sub_02039D8C + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} + .balign 4, 0 +_02039D88: .word sub_02039D8C + thumb_func_end sub_02039D78 + + thumb_func_start sub_02039D8C +sub_02039D8C: ; 0x02039D8C + push {r3, lr} + mov r0, #0 + bl ov00_021E5E54 + bl sub_02039D08 + bl ov45_0222E944 + cmp r0, #0 + beq _02039DB8 + mov r0, #1 + bl sub_0201A738 + bl sub_020343E4 + ldr r0, _02039DBC ; =sub_0203847C + mov r1, #5 + bl sub_020381C0 + mov r0, #0 + bl sub_0203786C +_02039DB8: + pop {r3, pc} + nop +_02039DBC: .word sub_0203847C + thumb_func_end sub_02039D8C + + thumb_func_start sub_02039DC0 +sub_02039DC0: ; 0x02039DC0 + bx lr + .balign 4, 0 + thumb_func_end sub_02039DC0 + + thumb_func_start sub_02039DC4 +sub_02039DC4: ; 0x02039DC4 + push {r3, lr} + bl sub_02039D3C + bl ov45_0222F254 + cmp r0, #1 + bne _02039DDE + bl ov45_0222F70C + ldr r0, _02039DE0 ; =sub_02039E30 + mov r1, #0 + bl sub_020381C0 +_02039DDE: + pop {r3, pc} + .balign 4, 0 +_02039DE0: .word sub_02039E30 + thumb_func_end sub_02039DC4 + + thumb_func_start sub_02039DE4 +sub_02039DE4: ; 0x02039DE4 + push {r3, lr} + bl ov45_0222F254 + cmp r0, #1 + bne _02039DFC + bl ov45_0222F70C + ldr r0, _02039E24 ; =sub_02039E30 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02039DFC: + add r0, sp, #0 + bl sub_02039D54 + ldr r0, [sp] + cmp r0, #0 + beq _02039E22 + cmp r0, #0x14 + bne _02039E16 + ldr r0, _02039E28 ; =sub_02039DC4 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02039E16: + bl ov45_0222F70C + ldr r0, _02039E2C ; =sub_02039C60 + mov r1, #0 + bl sub_020381C0 +_02039E22: + pop {r3, pc} + .balign 4, 0 +_02039E24: .word sub_02039E30 +_02039E28: .word sub_02039DC4 +_02039E2C: .word sub_02039C60 + thumb_func_end sub_02039DE4 + + thumb_func_start sub_02039E30 +sub_02039E30: ; 0x02039E30 + push {r3, lr} + mov r0, #1 + bl ov00_021E5E54 + cmp r0, #0 + bge _02039E46 + ldr r0, _02039E74 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 + pop {r3, pc} +_02039E46: + bl sub_02039D08 + cmp r0, #0 + beq _02039E72 + mov r0, #0 + bl ov00_021E6BE4 + cmp r0, #0 + beq _02039E72 + bl ov00_021E6C68 + cmp r0, #0 + beq _02039E72 + bl sub_0203622C + mov r0, #0 + bl sub_020378E4 + ldr r0, _02039E78 ; =sub_02039C60 + mov r1, #0 + bl sub_020381C0 +_02039E72: + pop {r3, pc} + .balign 4, 0 +_02039E74: .word sub_02038E90 +_02039E78: .word sub_02039C60 + thumb_func_end sub_02039E30 + + thumb_func_start sub_02039E7C +sub_02039E7C: ; 0x02039E7C + push {r3, lr} + mov r0, #0 + bl ov00_021E5E54 + cmp r0, #0 + bge _02039E90 + ldr r0, _02039E98 ; =sub_02038E90 + mov r1, #0 + bl sub_020381C0 +_02039E90: + bl sub_02039D08 + pop {r3, pc} + nop +_02039E98: .word sub_02038E90 + thumb_func_end sub_02039E7C + + thumb_func_start sub_02039E9C +sub_02039E9C: ; 0x02039E9C + ldr r0, _02039EA8 ; =0x021D4150 + mov r1, #0x22 + ldr r0, [r0] + add r0, #0x4e + strb r1, [r0] + bx lr + .balign 4, 0 +_02039EA8: .word 0x021D4150 + thumb_func_end sub_02039E9C + + thumb_func_start sub_02039EAC +sub_02039EAC: ; 0x02039EAC + mov r1, #0 + str r1, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_02039EAC + + thumb_func_start sub_02039EB4 +sub_02039EB4: ; 0x02039EB4 + push {r4, r5, r6, lr} + add r4, r2, #0 + add r6, r1, #0 + ldr r1, [r4] + add r5, r0, #0 + cmp r1, #6 + bhi _02039F64 + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_02039ECE: ; jump table + .short _02039EDC - _02039ECE - 2 ; case 0 + .short _02039EE8 - _02039ECE - 2 ; case 1 + .short _02039F00 - _02039ECE - 2 ; case 2 + .short _02039F28 - _02039ECE - 2 ; case 3 + .short _02039F38 - _02039ECE - 2 ; case 4 + .short _02039F5A - _02039ECE - 2 ; case 5 + .short _02039F60 - _02039ECE - 2 ; case 6 +_02039EDC: + mov r0, #0x6f + bl sub_02037AC0 + mov r0, #1 + str r0, [r4] + b _02039F64 +_02039EE8: + mov r0, #0x6f + bl sub_02037B38 + cmp r0, #0 + beq _02039F64 + add r0, r5, #0 + add r1, r6, #0 + bl sub_02027550 + mov r0, #2 + str r0, [r4] + b _02039F64 +_02039F00: + bl sub_02027564 + add r5, r0, #0 + cmp r5, #2 + bne _02039F0E + bl GF_AssertFail +_02039F0E: + cmp r5, #1 + bne _02039F1E + mov r0, #3 + str r0, [r4] + mov r0, #0x70 + bl sub_02037AC0 + b _02039F64 +_02039F1E: + cmp r5, #3 + bne _02039F64 + mov r0, #7 + str r0, [r4] + b _02039F64 +_02039F28: + mov r0, #0x70 + bl sub_02037B38 + cmp r0, #0 + beq _02039F64 + mov r0, #4 + str r0, [r4] + b _02039F64 +_02039F38: + bl sub_02027564 + add r5, r0, #0 + cmp r5, #1 + bne _02039F46 + bl GF_AssertFail +_02039F46: + cmp r5, #2 + bne _02039F50 + mov r0, #5 + str r0, [r4] + b _02039F64 +_02039F50: + cmp r5, #3 + bne _02039F64 + mov r0, #7 + str r0, [r4] + b _02039F64 +_02039F5A: + mov r0, #6 + str r0, [r4] + b _02039F64 +_02039F60: + mov r0, #1 + pop {r4, r5, r6, pc} +_02039F64: + mov r0, #0 + pop {r4, r5, r6, pc} + thumb_func_end sub_02039EB4 + + thumb_func_start sub_02039F68 +sub_02039F68: ; 0x02039F68 + push {r3, r4, r5, r6, r7, lr} + str r0, [sp] + bl sub_02037454 + add r7, r0, #0 + mov r0, #0 + bl sub_02034818 + cmp r0, #0 + beq _02039FB6 + mov r5, #0 + cmp r7, #0 + ble _02039FB6 +_02039F82: + bl sub_0203769C + cmp r5, r0 + beq _02039FB0 + add r0, r5, #0 + bl sub_020348A8 + add r4, r0, #0 + add r0, r5, #0 + bl sub_020348CC + add r6, r0, #0 + add r0, r5, #0 + bl sub_02034818 + bl sub_02029088 + add r3, r0, #0 + ldr r0, [sp] + add r1, r4, #0 + add r2, r6, #0 + bl sub_02039FB8 +_02039FB0: + add r5, r5, #1 + cmp r5, r7 + blt _02039F82 +_02039FB6: + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_02039F68 + + thumb_func_start sub_02039FB8 +sub_02039FB8: ; 0x02039FB8 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + bl sub_0202CA94 + cmp r0, #0 + bne _02039FD4 + add r0, r5, #0 + add r1, r4, #0 + add r2, r6, #0 + mov r3, #1 + bl sub_0202CAE4 +_02039FD4: + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_02039FB8 + + thumb_func_start sub_02039FD8 +sub_02039FD8: ; 0x02039FD8 + push {r3, r4, r5, lr} + mov r1, #0x72 + lsl r1, r1, #4 + bl AllocFromHeap + add r4, r0, #0 + add r0, #0x1f + mov r1, #0x1f + bic r0, r1 + bl sub_0209FAE4 + add r5, r0, #0 + add r0, r4, #0 + bl FreeToHeap + add r0, r5, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_02039FD8 + + thumb_func_start sub_02039FFC +sub_02039FFC: ; 0x02039FFC + push {r4, lr} + add r4, r0, #0 + bl LoadDwcOverlay + bl LoadOVY38 + add r0, r4, #0 + bl sub_02039FD8 + add r4, r0, #0 + bl UnloadDwcOverlay + bl UnloadOVY38 + add r0, r4, #0 + pop {r4, pc} + thumb_func_end sub_02039FFC + + thumb_func_start sub_0203A01C +sub_0203A01C: ; 0x0203A01C + push {r4, lr} + bl sub_0202C08C + add r4, r0, #0 + bl sub_020A00BC + cmp r0, #0 + bne _0203A03A + ldr r1, _0203A03C ; =0x4144414A + add r0, r4, #0 + bl sub_020A00B0 + add r0, r4, #0 + bl sub_020A0214 +_0203A03A: + pop {r4, pc} + .balign 4, 0 +_0203A03C: .word 0x4144414A + thumb_func_end sub_0203A01C + + thumb_func_start sub_0203A040 +sub_0203A040: ; 0x0203A040 + push {r3, r4, lr} + sub sp, #0xc + bl sub_0202C08C + add r4, r0, #0 + add r1, sp, #0 + bl sub_020A037C + add r0, r4, #0 + add r1, sp, #0 + bl sub_020A028C + add sp, #0xc + pop {r3, r4, pc} + thumb_func_end sub_0203A040 + + thumb_func_start sub_0203A05C +sub_0203A05C: ; 0x0203A05C + push {r4, lr} + bl sub_0202C6F4 + bl sub_0202C08C + add r4, r0, #0 + bl sub_020A0100 + cmp r0, #0 + beq _0203A07E + add r0, r4, #0 + bl sub_020A0130 + cmp r0, #0 + beq _0203A07E + mov r0, #1 + pop {r4, pc} +_0203A07E: + mov r0, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203A05C + + thumb_func_start sub_0203A084 +sub_0203A084: ; 0x0203A084 + push {r3, r4, r5, r6, r7, lr} + sub sp, #8 + add r4, r0, #0 + add r5, r1, #0 + str r2, [sp] + bl sub_0202C6F4 + bl sub_0202C08C + add r6, r0, #0 + add r0, r4, #0 + bl sub_0202C6F4 + mov r1, #0 + bl sub_0202C23C + add r4, r0, #0 + mov r1, #0 + ldr r0, [sp] + mvn r1, r1 + str r1, [r0] + add r0, r5, #0 + bl sub_020A008C + cmp r0, #0 + bne _0203A0BE + add sp, #8 + mov r0, #3 + pop {r3, r4, r5, r6, r7, pc} +_0203A0BE: + mov r7, #0 +_0203A0C0: + add r0, r5, #0 + add r1, r4, #0 + bl sub_020A041C + cmp r0, #0 + beq _0203A0D6 + ldr r0, [sp] + add sp, #8 + str r7, [r0] + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_0203A0D6: + add r0, r6, #0 + add r1, r5, #0 + bl sub_020A028C + cmp r0, #0 + ble _0203A104 + add r0, r6, #0 + add r1, r5, #0 + bl sub_020A028C + str r0, [sp, #4] + add r0, r6, #0 + add r1, r4, #0 + bl sub_020A028C + ldr r1, [sp, #4] + cmp r1, r0 + bne _0203A104 + ldr r0, [sp] + add sp, #8 + str r7, [r0] + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0203A104: + ldr r0, [sp] + ldr r0, [r0] + cmp r0, #0 + bge _0203A11A + add r0, r4, #0 + bl sub_020A008C + cmp r0, #0 + bne _0203A11A + ldr r0, [sp] + str r7, [r0] +_0203A11A: + add r7, r7, #1 + add r4, #0xc + cmp r7, #0x20 + blt _0203A0C0 + mov r0, #2 + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0203A084 + + thumb_func_start sub_0203A128 +sub_0203A128: ; 0x0203A128 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x18 + add r4, r0, #0 + str r1, [sp] + str r2, [sp, #4] + add r6, r3, #0 + bl sub_0202C6F4 + bl sub_0202C08C + add r7, r0, #0 + add r0, r4, #0 + bl sub_0202C6F4 + mov r1, #0 + bl sub_0202C23C + add r5, r0, #0 + ldr r1, [sp] + ldr r2, [sp, #4] + add r0, r7, #0 + bl sub_0209FD0C + cmp r0, #0 + bne _0203A160 + add sp, #0x18 + mov r0, #3 + pop {r3, r4, r5, r6, r7, pc} +_0203A160: + ldr r1, [sp] + ldr r2, [sp, #4] + add r0, sp, #0xc + bl sub_020A0340 + add r0, r7, #0 + add r1, sp, #0xc + bl sub_020A028C + cmp r0, #0 + bgt _0203A17C + add sp, #0x18 + mov r0, #3 + pop {r3, r4, r5, r6, r7, pc} +_0203A17C: + mov r0, #0 + mvn r0, r0 + str r0, [r6] + mov r4, #0 +_0203A184: + add r0, r7, #0 + add r1, sp, #0xc + bl sub_020A028C + str r0, [sp, #8] + add r0, r7, #0 + add r1, r5, #0 + bl sub_020A028C + ldr r1, [sp, #8] + cmp r1, r0 + bne _0203A1A4 + add sp, #0x18 + str r4, [r6] + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_0203A1A4: + ldr r0, [r6] + cmp r0, #0 + bge _0203A1B6 + add r0, r5, #0 + bl sub_020A008C + cmp r0, #0 + bne _0203A1B6 + str r4, [r6] +_0203A1B6: + add r4, r4, #1 + add r5, #0xc + cmp r4, #0x20 + blt _0203A184 + mov r0, #2 + add sp, #0x18 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0203A128 + + thumb_func_start sub_0203A1C4 +sub_0203A1C4: ; 0x0203A1C4 + push {r4, r5, r6, r7, lr} + sub sp, #0x14 + add r6, r1, #0 + mov r1, #0 + add r5, r0, #0 + str r2, [sp, #4] + str r1, [sp, #0xc] + bl sub_0202C6F4 + mov r1, #0 + bl sub_0202C23C + str r0, [sp, #8] + mov r4, #0 + bl sub_02037454 + cmp r0, #0 + ble _0203A278 +_0203A1E8: + bl sub_0203769C + cmp r4, r0 + beq _0203A26C + add r0, r4, #0 + bl sub_0203484C + add r7, r0, #0 + beq _0203A26C + add r0, r5, #0 + add r1, r7, #0 + add r2, sp, #0x10 + bl sub_0203A084 + str r0, [r6] + cmp r0, #3 + bne _0203A20E + bl GF_AssertFail +_0203A20E: + ldr r0, [r6] + cmp r0, #0 + bne _0203A22C + mov r0, #2 + str r0, [sp] + ldr r2, [sp, #0x10] + ldr r3, [sp, #4] + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203A280 + add r0, r5, #0 + bl sub_02034A20 + b _0203A26C +_0203A22C: + cmp r0, #1 + bne _0203A264 + bl sub_02039998 + cmp r0, #0 + bne _0203A26C + mov r0, #1 + str r0, [sp] + ldr r2, [sp, #0x10] + ldr r3, [sp, #4] + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203A280 + ldr r2, [sp, #0x10] + mov r1, #0xc + add r3, r2, #0 + mul r3, r1 + ldr r1, [sp, #8] + add r0, r7, #0 + add r1, r1, r3 + mov r2, #0xc + bl MIi_CpuCopy8 + add r0, r5, #0 + bl sub_02034A20 + b _0203A26C +_0203A264: + cmp r0, #2 + bne _0203A26C + mov r0, #1 + str r0, [sp, #0xc] +_0203A26C: + add r6, r6, #4 + add r4, r4, #1 + bl sub_02037454 + cmp r4, r0 + blt _0203A1E8 +_0203A278: + ldr r0, [sp, #0xc] + add sp, #0x14 + pop {r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203A1C4 + + thumb_func_start sub_0203A280 +sub_0203A280: ; 0x0203A280 + push {r4, r5, r6, r7, lr} + sub sp, #0x14 + add r5, r2, #0 + str r0, [sp] + add r7, r1, #0 + str r3, [sp, #4] + bl sub_0202C6F4 + add r1, r5, #0 + add r4, r0, #0 + bl sub_0202C23C + str r0, [sp, #8] + add r0, r7, #0 + bl sub_02034818 + add r6, r0, #0 + ldr r0, [sp, #0x28] + cmp r0, #2 + beq _0203A2B6 + add r0, r7, #0 + bl sub_0203484C + ldr r1, [sp, #8] + mov r2, #0xc + bl MIi_CpuCopy8 +_0203A2B6: + ldr r0, [sp, #0x28] + cmp r0, #0 + bne _0203A2FC + ldr r1, [sp, #4] + add r0, r6, #0 + bl sub_02028F68 + str r0, [sp, #0xc] + ldr r2, [sp, #0xc] + add r0, r4, #0 + add r1, r5, #0 + bl sub_0202C270 + ldr r0, [sp, #0xc] + bl String_dtor + add r0, r6, #0 + bl PlayerProfile_GetTrainerGender + add r3, r0, #0 + add r0, r4, #0 + add r1, r5, #0 + mov r2, #8 + bl sub_0202C190 + add r0, r6, #0 + bl PlayerProfile_GetTrainerID + add r3, r0, #0 + add r0, r4, #0 + add r1, r5, #0 + mov r2, #0 + bl sub_0202C190 + b _0203A334 +_0203A2FC: + sub r0, r0, #1 + cmp r0, #1 + bhi _0203A334 + add r0, r4, #0 + add r1, r5, #0 + mov r2, #8 + bl sub_0202C090 + cmp r0, #2 + bne _0203A334 + add r0, r6, #0 + bl PlayerProfile_GetTrainerGender + add r3, r0, #0 + add r0, r4, #0 + add r1, r5, #0 + mov r2, #8 + bl sub_0202C190 + add r0, r6, #0 + bl PlayerProfile_GetTrainerID + add r3, r0, #0 + add r0, r4, #0 + add r1, r5, #0 + mov r2, #0 + bl sub_0202C190 +_0203A334: + ldr r1, [sp, #4] + mov r0, #0x78 + bl String_ctor + str r0, [sp, #0x10] + add r0, r7, #0 + bl sub_02034884 + add r1, r0, #0 + ldr r0, [sp, #0x10] + bl CopyU16ArrayToString + ldr r2, [sp, #0x10] + add r0, r4, #0 + add r1, r5, #0 + bl sub_0202C2B4 + ldr r0, [sp, #0x10] + bl String_dtor + add r0, r6, #0 + bl sub_0202903C + add r3, r0, #0 + add r0, r4, #0 + add r1, r5, #0 + mov r2, #7 + bl sub_0202C190 + ldr r0, [sp] + bl sub_02034A20 + add sp, #0x14 + pop {r4, r5, r6, r7, pc} + thumb_func_end sub_0203A280 + + thumb_func_start sub_0203A378 +sub_0203A378: ; 0x0203A378 + push {r4, r5, r6, lr} + add r4, r0, #0 + add r0, r1, #0 + bl sub_0203484C + add r6, r0, #0 + add r0, r4, #0 + bl sub_0202C6F4 + add r5, r0, #0 + mov r4, #0 +_0203A38E: + add r0, r5, #0 + add r1, r4, #0 + bl sub_0202C23C + add r1, r0, #0 + add r0, r6, #0 + bl sub_020A041C + cmp r0, #0 + beq _0203A3A6 + add r0, r4, #0 + pop {r4, r5, r6, pc} +_0203A3A6: + add r4, r4, #1 + cmp r4, #0x20 + blt _0203A38E + mov r0, #0x20 + pop {r4, r5, r6, pc} + thumb_func_end sub_0203A378 + + thumb_func_start sub_0203A3B0 +sub_0203A3B0: ; 0x0203A3B0 + push {r4, r5, r6, lr} + add r4, r1, #0 + add r5, r2, #0 + add r6, r3, #0 + ldr r0, [sp, #0x18] + ldr r1, [sp, #0x10] + ldr r2, [sp, #0x1c] + add r3, r4, #0 + bl sub_0203A4D4 + ldr r0, [sp, #0x18] + ldr r1, [sp, #0x10] + add r2, r4, #0 + bl sub_0203A59C + add r0, r4, #0 + mov r1, #0x24 + bl AllocFromHeapAtEnd + add r4, r0, #0 + ldr r0, _0203A428 ; =sub_0203A42C + add r1, r4, #0 + mov r2, #5 + bl sub_0200E374 + str r0, [r4, #0x18] + ldr r2, [sp, #0x1c] + strh r5, [r4, #0xc] + asr r1, r2, #4 + lsr r1, r1, #0x1b + add r1, r2, r1 + asr r2, r1, #5 + add r1, r4, #0 + strh r6, [r4, #0xe] + mov r0, #0 + str r0, [r4] + add r1, #0x20 + strb r2, [r1] + add r1, r4, #0 + ldr r2, [sp, #0x18] + add r1, #0x21 + strb r2, [r1] + add r1, r4, #0 + add r1, #0x22 + strb r0, [r1] + mov r1, #3 + str r1, [r4, #4] + ldr r1, [sp, #0x14] + str r1, [r4, #0x14] + ldr r1, [sp, #0x10] + str r0, [r4, #8] + strb r1, [r4, #0x10] + strb r0, [r4, #0x12] + strb r0, [r4, #0x11] + mov r0, #7 + lsl r0, r0, #0x18 + str r0, [r4, #0x1c] + add r0, r4, #0 + pop {r4, r5, r6, pc} + nop +_0203A428: .word sub_0203A42C + thumb_func_end sub_0203A3B0 + + thumb_func_start sub_0203A42C +sub_0203A42C: ; 0x0203A42C + ldr r3, _0203A434 ; =sub_0203A700 + add r0, r1, #0 + bx r3 + nop +_0203A434: .word sub_0203A700 + thumb_func_end sub_0203A42C + + thumb_func_start sub_0203A438 +sub_0203A438: ; 0x0203A438 + cmp r1, #4 + bge _0203A442 + str r1, [r0, #4] + mov r1, #0 + str r1, [r0, #8] +_0203A442: + bx lr + thumb_func_end sub_0203A438 + + thumb_func_start sub_0203A444 +sub_0203A444: ; 0x0203A444 + push {r4, lr} + add r4, r0, #0 + ldr r0, [r4, #0x18] + bl sub_0200E390 + mov r0, #7 + ldr r2, _0203A470 ; =0x40000200 + lsl r0, r0, #0x18 + str r2, [r0] + mov r1, #0 + strh r1, [r0, #4] + ldrb r0, [r4, #0x12] + cmp r0, #0 + beq _0203A466 + ldr r0, _0203A474 ; =0x07000400 + str r2, [r0] + strh r1, [r0, #4] +_0203A466: + add r0, r4, #0 + bl FreeToHeap + pop {r4, pc} + nop +_0203A470: .word 0x40000200 +_0203A474: .word 0x07000400 + thumb_func_end sub_0203A444 + + thumb_func_start sub_0203A478 +sub_0203A478: ; 0x0203A478 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + mov r2, #7 + ldrb r1, [r5, #0x10] + mov r0, #2 + lsl r2, r2, #6 + add r3, r6, #0 + bl sub_0203A4D4 + ldrb r1, [r5, #0x10] + mov r0, #2 + add r2, r6, #0 + bl sub_0203A59C + cmp r4, #0 + beq _0203A4A0 + mov r0, #1 + b _0203A4A2 +_0203A4A0: + mov r0, #2 +_0203A4A2: + strb r0, [r5, #0x11] + mov r0, #1 + strb r0, [r5, #0x12] + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203A478 + + thumb_func_start sub_0203A4AC +sub_0203A4AC: ; 0x0203A4AC + push {r3, lr} + mov r1, #0x96 + lsl r1, r1, #2 + bl AllocFromHeapAtEnd + str r0, [sp] + ldr r0, _0203A4D0 ; =0x0210F930 + add r1, sp, #0 + bl sub_0201A3F8 + mov r1, #0x96 + ldr r0, [sp] + lsl r1, r1, #2 + bl DC_FlushRange + ldr r0, [sp] + pop {r3, pc} + nop +_0203A4D0: .word 0x0210F930 + thumb_func_end sub_0203A4AC + + thumb_func_start sub_0203A4D4 +sub_0203A4D4: ; 0x0203A4D4 + push {r3, r4, r5, lr} + sub sp, #8 + mov r1, #0x96 + add r5, r0, #0 + add r0, r3, #0 + lsl r1, r1, #2 + add r4, r2, #0 + bl AllocFromHeapAtEnd + str r0, [sp, #4] + cmp r0, #0 + beq _0203A52A + ldr r0, _0203A530 ; =0x0210F930 + add r1, sp, #4 + bl sub_0201A3F8 + mov r1, #0x96 + ldr r0, [sp, #4] + lsl r1, r1, #2 + bl DC_FlushRange + ldr r0, [sp, #4] + add r1, sp, #0 + bl NNS_G2dGetUnpackedPaletteData + cmp r5, #1 + bne _0203A518 + ldr r0, [sp] + add r1, r4, #0 + ldr r0, [r0, #0xc] + mov r2, #0x20 + bl GX_LoadOBJPltt + b _0203A524 +_0203A518: + ldr r0, [sp] + add r1, r4, #0 + ldr r0, [r0, #0xc] + mov r2, #0x20 + bl GXS_LoadOBJPltt +_0203A524: + ldr r0, [sp, #4] + bl FreeToHeap +_0203A52A: + add sp, #8 + pop {r3, r4, r5, pc} + nop +_0203A530: .word 0x0210F930 + thumb_func_end sub_0203A4D4 + + thumb_func_start sub_0203A534 +sub_0203A534: ; 0x0203A534 + push {r0, r1, r2, r3} + push {r3, lr} + cmp r0, #0 + ldr r0, _0203A58C ; =0x00300010 + beq _0203A550 + cmp r1, r0 + bne _0203A546 + bl GF_AssertFail +_0203A546: + ldr r0, _0203A590 ; =0x0210F940 + add r1, sp, #0x14 + bl sub_0201A3F8 + b _0203A578 +_0203A550: + cmp r1, r0 + add r1, sp, #0x14 + beq _0203A568 + ldr r0, _0203A594 ; =0x0210F954 + bl sub_0201A3F8 + mov r1, #0x96 + ldr r0, [sp, #0x14] + lsl r1, r1, #2 + bl DC_FlushRange + b _0203A578 +_0203A568: + ldr r0, _0203A598 ; =0x0210F964 + bl sub_0201A3F8 + mov r1, #0x13 + ldr r0, [sp, #0x14] + lsl r1, r1, #6 + bl DC_FlushRange +_0203A578: + ldr r0, [sp, #0x14] + add r1, sp, #0 + bl NNS_G2dGetUnpackedBGCharacterData + ldr r0, [sp] + pop {r3} + pop {r3} + add sp, #0x10 + bx r3 + nop +_0203A58C: .word 0x00300010 +_0203A590: .word 0x0210F940 +_0203A594: .word 0x0210F954 +_0203A598: .word 0x0210F964 + thumb_func_end sub_0203A534 + + thumb_func_start sub_0203A59C +sub_0203A59C: ; 0x0203A59C + push {r3, r4, r5, r6, r7, lr} + sub sp, #8 + add r7, r0, #0 + add r5, r2, #0 + str r1, [sp] + cmp r7, #1 + bne _0203A5BC + mov r0, #1 + lsl r0, r0, #0x1a + ldr r1, [r0] + ldr r0, _0203A6E8 ; =0x00300010 + add r4, r1, #0 + and r4, r0 + bl sub_020CEBEC + b _0203A5CA +_0203A5BC: + ldr r0, _0203A6EC ; =0x04001000 + ldr r1, [r0] + ldr r0, _0203A6E8 ; =0x00300010 + add r4, r1, #0 + and r4, r0 + bl sub_020CEC1C +_0203A5CA: + add r6, r0, #0 + ldr r0, _0203A6E8 ; =0x00300010 + cmp r4, r0 + bne _0203A5E0 + mov r1, #0x13 + add r0, r5, #0 + lsl r1, r1, #6 + bl AllocFromHeapAtEnd + str r0, [sp, #4] + b _0203A5EC +_0203A5E0: + mov r1, #0x96 + add r0, r5, #0 + lsl r1, r1, #2 + bl AllocFromHeapAtEnd + str r0, [sp, #4] +_0203A5EC: + ldr r0, [sp, #4] + cmp r0, #0 + beq _0203A6E2 + ldr r0, [sp] + ldr r3, [sp, #4] + add r1, r4, #0 + add r2, r5, #0 + bl sub_0203A534 + add r5, r0, #0 + ldr r0, _0203A6F0 ; =0x00100010 + cmp r4, r0 + bgt _0203A60E + bge _0203A634 + cmp r4, #0x10 + beq _0203A620 + b _0203A66E +_0203A60E: + ldr r0, _0203A6F4 ; =0x00200010 + cmp r4, r0 + bgt _0203A618 + beq _0203A64E + b _0203A66E +_0203A618: + ldr r0, _0203A6E8 ; =0x00300010 + cmp r4, r0 + beq _0203A668 + b _0203A66E +_0203A620: + cmp r6, #0x40 + beq _0203A628 + cmp r6, #0x20 + bne _0203A62E +_0203A628: + mov r6, #0x3e + lsl r6, r6, #8 + b _0203A672 +_0203A62E: + mov r6, #0x7e + lsl r6, r6, #8 + b _0203A672 +_0203A634: + cmp r6, #0x40 + beq _0203A642 + cmp r6, #0x20 + beq _0203A642 + lsr r0, r0, #0xc + cmp r6, r0 + bne _0203A648 +_0203A642: + mov r6, #0x3e + lsl r6, r6, #8 + b _0203A672 +_0203A648: + mov r6, #0xfe + lsl r6, r6, #8 + b _0203A672 +_0203A64E: + cmp r6, #0x30 + beq _0203A656 + cmp r6, #0x50 + bne _0203A65A +_0203A656: + ldr r6, _0203A6F8 ; =0x00013E00 + b _0203A672 +_0203A65A: + cmp r6, #0x10 + bne _0203A664 + mov r6, #0xfe + lsl r6, r6, #8 + b _0203A672 +_0203A664: + ldr r6, _0203A6FC ; =0x0001FE00 + b _0203A672 +_0203A668: + mov r6, #0xff + lsl r6, r6, #0xa + b _0203A672 +_0203A66E: + mov r6, #0xfe + lsl r6, r6, #8 +_0203A672: + cmp r7, #1 + ldr r0, _0203A6E8 ; =0x00300010 + bne _0203A6AA + cmp r4, r0 + ldr r0, [r5, #0x14] + beq _0203A694 + mov r1, #2 + lsl r1, r1, #8 + bl DC_FlushRange + mov r2, #2 + ldr r0, [r5, #0x14] + add r1, r6, #0 + lsl r2, r2, #8 + bl sub_020CFE74 + b _0203A6DC +_0203A694: + mov r1, #1 + lsl r1, r1, #0xa + bl DC_FlushRange + mov r2, #1 + ldr r0, [r5, #0x14] + add r1, r6, #0 + lsl r2, r2, #0xa + bl sub_020CFE74 + b _0203A6DC +_0203A6AA: + cmp r4, r0 + ldr r0, [r5, #0x14] + beq _0203A6C6 + mov r1, #2 + lsl r1, r1, #8 + bl DC_FlushRange + mov r2, #2 + ldr r0, [r5, #0x14] + add r1, r6, #0 + lsl r2, r2, #8 + bl sub_020CFECC + b _0203A6DC +_0203A6C6: + mov r1, #1 + lsl r1, r1, #0xa + bl DC_FlushRange + mov r1, #0xf + mov r2, #1 + ldr r0, [r5, #0x14] + lsl r1, r1, #0xa + lsl r2, r2, #0xa + bl sub_020CFECC +_0203A6DC: + ldr r0, [sp, #4] + bl FreeToHeap +_0203A6E2: + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203A6E8: .word 0x00300010 +_0203A6EC: .word 0x04001000 +_0203A6F0: .word 0x00100010 +_0203A6F4: .word 0x00200010 +_0203A6F8: .word 0x00013E00 +_0203A6FC: .word 0x0001FE00 + thumb_func_end sub_0203A59C + + thumb_func_start sub_0203A700 +sub_0203A700: ; 0x0203A700 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + ldrb r0, [r5, #0x11] + cmp r0, #1 + beq _0203A710 + cmp r0, #2 + beq _0203A726 + b _0203A73C +_0203A710: + ldr r0, _0203A850 ; =0x04000304 + ldrh r1, [r0] + lsr r0, r0, #0xb + and r0, r1 + asr r0, r0, #0xf + cmp r0, #1 + bne _0203A722 + mov r7, #1 + b _0203A742 +_0203A722: + mov r7, #2 + b _0203A742 +_0203A726: + ldr r0, _0203A850 ; =0x04000304 + ldrh r1, [r0] + lsr r0, r0, #0xb + and r0, r1 + asr r0, r0, #0xf + cmp r0, #1 + bne _0203A738 + mov r7, #2 + b _0203A742 +_0203A738: + mov r7, #1 + b _0203A742 +_0203A73C: + add r0, r5, #0 + add r0, #0x21 + ldrb r7, [r0] +_0203A742: + ldr r4, [r5, #4] + cmp r7, #1 + bne _0203A75A + mov r0, #1 + lsl r0, r0, #0x1a + ldr r1, [r0] + ldr r0, _0203A854 ; =0x00300010 + add r6, r1, #0 + and r6, r0 + bl sub_020CEBEC + b _0203A768 +_0203A75A: + ldr r0, _0203A858 ; =0x04001000 + ldr r1, [r0] + ldr r0, _0203A854 ; =0x00300010 + add r6, r1, #0 + and r6, r0 + bl sub_020CEC1C +_0203A768: + ldr r1, _0203A85C ; =0x00100010 + cmp r6, r1 + bgt _0203A776 + bge _0203A7A4 + cmp r6, #0x10 + beq _0203A788 + b _0203A7F4 +_0203A776: + ldr r1, _0203A860 ; =0x00200010 + cmp r6, r1 + bgt _0203A780 + beq _0203A7BC + b _0203A7F4 +_0203A780: + ldr r1, _0203A854 ; =0x00300010 + cmp r6, r1 + beq _0203A7E0 + b _0203A7F4 +_0203A788: + cmp r0, #0x40 + beq _0203A790 + cmp r0, #0x20 + bne _0203A79A +_0203A790: + mov r0, #0x1f + lsl r1, r4, #2 + lsl r0, r0, #4 + add r3, r1, r0 + b _0203A7FC +_0203A79A: + mov r0, #0x3f + lsl r1, r4, #2 + lsl r0, r0, #4 + add r3, r1, r0 + b _0203A7FC +_0203A7A4: + cmp r0, #0x40 + beq _0203A7B2 + cmp r0, #0x20 + beq _0203A7B2 + lsr r1, r1, #0xc + cmp r0, r1 + bne _0203A7F4 +_0203A7B2: + mov r0, #0x7e + lsl r1, r4, #1 + lsl r0, r0, #2 + add r3, r1, r0 + b _0203A7FC +_0203A7BC: + cmp r0, #0x30 + beq _0203A7C4 + cmp r0, #0x50 + bne _0203A7CC +_0203A7C4: + mov r0, #0x9f + lsl r0, r0, #2 + add r3, r4, r0 + b _0203A7FC +_0203A7CC: + cmp r0, #0x10 + bne _0203A7D8 + mov r0, #0x7f + lsl r0, r0, #2 + add r3, r4, r0 + b _0203A7FC +_0203A7D8: + mov r0, #0xff + lsl r0, r0, #2 + add r3, r4, r0 + b _0203A7FC +_0203A7E0: + cmp r0, #3 + bne _0203A7EC + mov r0, #0xff + lsl r0, r0, #2 + add r3, r4, r0 + b _0203A7FC +_0203A7EC: + mov r0, #0x7f + lsl r0, r0, #2 + add r3, r4, r0 + b _0203A7FC +_0203A7F4: + mov r0, #0xfe + lsl r1, r4, #1 + lsl r0, r0, #2 + add r3, r1, r0 +_0203A7FC: + cmp r7, #1 + bne _0203A806 + mov r4, #7 + lsl r4, r4, #0x18 + b _0203A808 +_0203A806: + ldr r4, _0203A864 ; =0x07000400 +_0203A808: + add r0, r5, #0 + add r0, #0x20 + ldrb r2, [r0] + add r0, r5, #0 + add r0, #0x22 + ldrb r1, [r0] + ldrh r6, [r5, #0xe] + ldrh r0, [r5, #0xc] + lsl r1, r1, #0xa + lsl r6, r6, #0x18 + lsr r6, r6, #0x18 + orr r6, r1 + mov r1, #1 + lsl r0, r0, #0x17 + lsl r1, r1, #0x1e + lsr r0, r0, #7 + orr r1, r6 + orr r0, r1 + str r0, [r4] + lsl r0, r2, #0xc + orr r0, r3 + strh r0, [r4, #4] + ldr r0, [r5, #0x1c] + cmp r4, r0 + beq _0203A84E + add r1, r5, #0 + add r1, #0x22 + ldrb r1, [r1] + lsl r2, r1, #0xa + ldr r1, _0203A868 ; =0x40000200 + orr r1, r2 + str r1, [r0] + mov r1, #0 + strh r1, [r0, #4] + str r4, [r5, #0x1c] +_0203A84E: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203A850: .word 0x04000304 +_0203A854: .word 0x00300010 +_0203A858: .word 0x04001000 +_0203A85C: .word 0x00100010 +_0203A860: .word 0x00200010 +_0203A864: .word 0x07000400 +_0203A868: .word 0x40000200 + thumb_func_end sub_0203A700 + + thumb_func_start sub_0203A86C +sub_0203A86C: ; 0x0203A86C + push {r3, lr} + ldr r0, _0203A87C ; =0x021D4154 + ldr r0, [r0] + cmp r0, #0 + beq _0203A87A + bl sub_0203A700 +_0203A87A: + pop {r3, pc} + .balign 4, 0 +_0203A87C: .word 0x021D4154 + thumb_func_end sub_0203A86C + + thumb_func_start sub_0203A880 +sub_0203A880: ; 0x0203A880 + push {r3, r4, lr} + sub sp, #4 + mov r4, #0 + bl sub_02039998 + cmp r0, #0 + beq _0203A890 + mov r4, #1 +_0203A890: + mov r0, #7 + lsl r0, r0, #6 + str r0, [sp] + mov r0, #0xf0 + mov r1, #0 + add r2, r4, #0 + mov r3, #1 + bl sub_0203A8CC + add sp, #4 + pop {r3, r4, pc} + .balign 4, 0 + thumb_func_end sub_0203A880 + + thumb_func_start sub_0203A8A8 +sub_0203A8A8: ; 0x0203A8A8 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r4, #0 + bl sub_02039998 + cmp r0, #0 + beq _0203A8B8 + mov r4, #1 +_0203A8B8: + mov r0, #0x1e + lsl r0, r0, #4 + str r0, [sp] + mov r0, #0xf0 + mov r1, #0 + add r2, r4, #0 + add r3, r5, #0 + bl sub_0203A8CC + pop {r3, r4, r5, pc} + thumb_func_end sub_0203A8A8 + + thumb_func_start sub_0203A8CC +sub_0203A8CC: ; 0x0203A8CC + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + add r6, r0, #0 + add r7, r1, #0 + add r5, r2, #0 + add r4, r3, #0 + bl sub_02034DCC + cmp r0, #0 + beq _0203A908 + ldr r0, _0203A90C ; =0x021D4154 + ldr r0, [r0] + cmp r0, #0 + beq _0203A8EC + bl sub_0203A914 +_0203A8EC: + ldr r0, _0203A910 ; =0x0210F91C + str r5, [sp] + str r0, [sp, #4] + ldr r0, [sp, #0x28] + str r4, [sp, #8] + str r0, [sp, #0xc] + mov r0, #0 + mov r1, #0x59 + add r2, r6, #0 + add r3, r7, #0 + bl sub_0203A3B0 + ldr r1, _0203A90C ; =0x021D4154 + str r0, [r1] +_0203A908: + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203A90C: .word 0x021D4154 +_0203A910: .word 0x0210F91C + thumb_func_end sub_0203A8CC + + thumb_func_start sub_0203A914 +sub_0203A914: ; 0x0203A914 + push {r3, lr} + ldr r0, _0203A92C ; =0x021D4154 + ldr r0, [r0] + cmp r0, #0 + beq _0203A928 + bl sub_0203A444 + ldr r0, _0203A92C ; =0x021D4154 + mov r1, #0 + str r1, [r0] +_0203A928: + pop {r3, pc} + nop +_0203A92C: .word 0x021D4154 + thumb_func_end sub_0203A914 + + thumb_func_start sub_0203A930 +sub_0203A930: ; 0x0203A930 + push {r3, lr} + add r1, r0, #0 + ldr r0, _0203A944 ; =0x021D4154 + ldr r0, [r0] + cmp r0, #0 + beq _0203A940 + bl sub_0203A438 +_0203A940: + pop {r3, pc} + nop +_0203A944: .word 0x021D4154 + thumb_func_end sub_0203A930 + + thumb_func_start sub_0203A948 +sub_0203A948: ; 0x0203A948 + push {r3, lr} + add r3, r0, #0 + ldr r0, _0203A960 ; =0x021D4154 + add r2, r1, #0 + ldr r0, [r0] + cmp r0, #0 + beq _0203A95C + add r1, r3, #0 + bl sub_0203A478 +_0203A95C: + pop {r3, pc} + nop +_0203A960: .word 0x021D4154 + thumb_func_end sub_0203A948 + + thumb_func_start sub_0203A964 +sub_0203A964: ; 0x0203A964 + push {r3, lr} + bl sub_02037474 + cmp r0, #0 + beq _0203A984 + bl sub_02037454 + cmp r0, #1 + bgt _0203A97E + bl sub_02039998 + cmp r0, #0 + beq _0203A990 +_0203A97E: + bl sub_0203A880 + pop {r3, pc} +_0203A984: + bl sub_02039998 + cmp r0, #0 + beq _0203A990 + bl sub_0203A880 +_0203A990: + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203A964 + + thumb_func_start sub_0203A994 +sub_0203A994: ; 0x0203A994 + push {r4, lr} + add r4, r0, #0 + bl sub_02037474 + cmp r0, #0 + beq _0203A9B8 + bl sub_02037454 + cmp r0, #1 + bgt _0203A9B0 + bl sub_02039998 + cmp r0, #0 + beq _0203A9C6 +_0203A9B0: + add r0, r4, #0 + bl sub_0203A8A8 + pop {r4, pc} +_0203A9B8: + bl sub_02039998 + cmp r0, #0 + beq _0203A9C6 + add r0, r4, #0 + bl sub_0203A8A8 +_0203A9C6: + pop {r4, pc} + thumb_func_end sub_0203A994 + + thumb_func_start sub_0203A9C8 +sub_0203A9C8: ; 0x0203A9C8 + ldr r0, _0203A9D8 ; =0x021D4154 + ldr r1, [r0] + cmp r1, #0 + beq _0203A9D6 + mov r0, #1 + add r1, #0x22 + strb r0, [r1] +_0203A9D6: + bx lr + .balign 4, 0 +_0203A9D8: .word 0x021D4154 + thumb_func_end sub_0203A9C8 + + thumb_func_start sub_0203A9DC +sub_0203A9DC: ; 0x0203A9DC + ldr r3, _0203A9F0 ; =OSi_IntrTable + ldr r1, _0203A9F4 ; =0x00003FF8 + mov r0, #1 + ldr r2, [r3, r1] + orr r0, r2 + str r0, [r3, r1] + ldr r3, _0203A9F8 ; =sub_020D422C + mov r0, #3 + bx r3 + nop +_0203A9F0: .word OSi_IntrTable +_0203A9F4: .word 0x00003FF8 +_0203A9F8: .word sub_020D422C + thumb_func_end sub_0203A9DC + + thumb_func_start sub_0203A9FC +sub_0203A9FC: ; 0x0203A9FC + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_020393C8 + cmp r0, #0 + beq _0203AA10 + bl sub_02037D78 + cmp r0, #0 + bne _0203AA14 +_0203AA10: + mov r0, #0 + pop {r3, r4, r5, pc} +_0203AA14: + bl sub_020392D8 + add r4, r0, #0 + ldr r0, [r4] + ldr r1, [r4, #4] + bl ov00_021E6A70 + ldr r1, [r4] + cmp r0, #0xb + str r1, [r5] + beq _0203AA36 + cmp r0, #0xe + bge _0203AA36 + ldr r0, [r4] + sub r0, #0x19 + cmp r0, #1 + bhi _0203AA40 +_0203AA36: + ldr r0, [r4, #4] + cmp r0, #2 + beq _0203AA40 + mov r0, #0 + pop {r3, r4, r5, pc} +_0203AA40: + mov r0, #1 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203A9FC + + thumb_func_start sub_0203AA44 +sub_0203AA44: ; 0x0203AA44 + push {r0, r1, r2, r3} + push {r4, r5, r6, r7, lr} + sub sp, #0x24 + add r4, r0, #0 + cmp r1, #6 + bhi _0203AA6A + add r0, r1, r1 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203AA5C: ; jump table + .short _0203AA6A - _0203AA5C - 2 ; case 0 + .short _0203AA6E - _0203AA5C - 2 ; case 1 + .short _0203AA72 - _0203AA5C - 2 ; case 2 + .short _0203AA76 - _0203AA5C - 2 ; case 3 + .short _0203AA7A - _0203AA5C - 2 ; case 4 + .short _0203AA7E - _0203AA5C - 2 ; case 5 + .short _0203AA90 - _0203AA5C - 2 ; case 6 +_0203AA6A: + mov r5, #1 + b _0203AAA0 +_0203AA6E: + mov r5, #2 + b _0203AAA0 +_0203AA72: + mov r5, #3 + b _0203AAA0 +_0203AA76: + mov r5, #4 + b _0203AAA0 +_0203AA7A: + mov r5, #5 + b _0203AAA0 +_0203AA7E: + add r0, sp, #0x40 + bl sub_0203A9FC + cmp r0, #0 + bne _0203AA8C + mov r5, #6 + b _0203AAA0 +_0203AA8C: + mov r5, #8 + b _0203AAA0 +_0203AA90: + add r0, sp, #0x40 + bl sub_0203A9FC + cmp r0, #0 + bne _0203AA9E + mov r5, #7 + b _0203AAA0 +_0203AA9E: + mov r5, #9 +_0203AAA0: + mov r0, #0 + add r1, r0, #0 + bl sub_0200FBF4 + mov r0, #1 + mov r1, #0 + bl sub_0200FBF4 + mov r0, #1 + bl sub_020D1204 + ldr r1, _0203AC54 ; =sub_0203A9DC + mov r0, #1 + bl sub_020D1004 + mov r0, #1 + bl sub_020D11D4 + mov r0, #0 + add r1, r0, #0 + bl sub_0201A0FC + mov r0, #0 + add r1, r0, #0 + bl sub_0201A120 + bl sub_02022C54 + bl sub_02022CBC + mov r2, #1 + lsl r2, r2, #0x1a + ldr r1, [r2] + ldr r0, _0203AC58 ; =0xFFFFE0FF + and r1, r0 + str r1, [r2] + ldr r2, _0203AC5C ; =0x04001000 + ldr r1, [r2] + and r0, r1 + str r0, [r2] + mov r0, #4 + mov r1, #8 + bl sub_0201A71C + ldr r0, _0203AC60 ; =gMain + 0x60 + mov r1, #0 + strb r1, [r0, #9] + bl sub_02022D3C + ldr r3, _0203AC64 ; =0x04000050 + mov r1, #0 + strh r1, [r3] + ldr r0, _0203AC68 ; =0x04001050 + sub r3, #0x50 + strh r1, [r0] + ldr r2, [r3] + ldr r1, _0203AC6C ; =0xFFFF1FFF + sub r0, #0x50 + and r2, r1 + str r2, [r3] + ldr r2, [r0] + and r1, r2 + str r1, [r0] + ldr r0, _0203AC70 ; =0x020F6B04 + bl GX_SetBanks + add r0, r4, #0 + bl sub_0201AC88 + add r6, r0, #0 + ldr r0, _0203AC74 ; =0x020F6AD8 + bl sub_0201ACB0 + mov r1, #0 + ldr r2, _0203AC78 ; =0x020F6AE8 + add r0, r6, #0 + add r3, r1, #0 + bl sub_0201B1E4 + add r0, r6, #0 + mov r1, #0 + bl sub_0201CAE0 + mov r1, #0 + str r1, [sp] + ldr r2, _0203AC7C ; =0x000001F7 + add r0, r6, #0 + mov r3, #2 + str r4, [sp, #4] + bl sub_0200E3DC + mov r0, #0 + mov r1, #0x20 + add r2, r4, #0 + bl sub_02003030 + mov r0, #0 + mov r1, #0x20 + add r2, r0, #0 + add r3, r4, #0 + bl sub_0201C1C4 + ldr r1, _0203AC80 ; =0x00006C21 + mov r0, #0 + bl sub_0201C2D8 + ldr r1, _0203AC80 ; =0x00006C21 + mov r0, #4 + bl sub_0201C2D8 + mov r0, #1 + mov r1, #0x1b + mov r2, #0x29 + add r3, r4, #0 + bl NewMsgDataFromNarc + str r0, [sp, #0xc] + mov r0, #6 + lsl r0, r0, #6 + add r1, r4, #0 + bl String_ctor + add r7, r0, #0 + mov r0, #6 + lsl r0, r0, #6 + add r1, r4, #0 + bl String_ctor + str r0, [sp, #0x10] + bl sub_02020080 + add r0, r4, #0 + bl ScrStrBufs_new + add r4, r0, #0 + ldr r2, _0203AC84 ; =0x020F6AD0 + add r0, r6, #0 + add r1, sp, #0x14 + bl AddWindow + mov r0, #0xd0 + str r0, [sp] + mov r0, #0x90 + mov r2, #0 + str r0, [sp, #4] + add r0, sp, #0x14 + mov r1, #0xf + add r3, r2, #0 + bl FillWindowPixelRect + ldr r2, _0203AC7C ; =0x000001F7 + add r0, sp, #0x14 + mov r1, #0 + mov r3, #2 + bl sub_0200E580 + mov r0, #2 + str r0, [sp] + mov r0, #1 + str r0, [sp, #4] + ldr r2, [sp, #0x40] + add r0, r4, #0 + mov r1, #0 + mov r3, #5 + bl BufferIntegerAsString + ldr r0, [sp, #0xc] + ldr r2, [sp, #0x10] + add r1, r5, #0 + bl ReadMsgDataIntoString + ldr r2, [sp, #0x10] + add r0, r4, #0 + add r1, r7, #0 + bl StringExpandPlaceholders + mov r1, #0 + str r1, [sp] + str r1, [sp, #4] + add r0, sp, #0x14 + add r2, r7, #0 + add r3, r1, #0 + str r1, [sp, #8] + bl AddTextPrinterParameterized + add r0, r7, #0 + bl String_dtor + bl sub_02022D24 + mov r0, #0 + bl sub_0200FBE8 + mov r0, #1 + bl sub_0200FBE8 + mov r0, #0 + mov r1, #0x3f + mov r2, #3 + bl sub_0200B4F0 + add r0, sp, #0x14 + bl RemoveWindow + ldr r0, [sp, #0xc] + bl DestroyMsgData + add r0, r4, #0 + bl ScrStrBufs_delete + add r0, r6, #0 + bl FreeToHeap + add sp, #0x24 + pop {r4, r5, r6, r7} + pop {r3} + add sp, #0x10 + bx r3 + .balign 4, 0 +_0203AC54: .word sub_0203A9DC +_0203AC58: .word 0xFFFFE0FF +_0203AC5C: .word 0x04001000 +_0203AC60: .word gMain + 0x60 +_0203AC64: .word 0x04000050 +_0203AC68: .word 0x04001050 +_0203AC6C: .word 0xFFFF1FFF +_0203AC70: .word 0x020F6B04 +_0203AC74: .word 0x020F6AD8 +_0203AC78: .word 0x020F6AE8 +_0203AC7C: .word 0x000001F7 +_0203AC80: .word 0x00006C21 +_0203AC84: .word 0x020F6AD0 + thumb_func_end sub_0203AA44 + + thumb_func_start sub_0203AC88 +sub_0203AC88: ; 0x0203AC88 + ldr r0, _0203AC8C ; =0x020F6B2C + bx lr + .balign 4, 0 +_0203AC8C: .word 0x020F6B2C + thumb_func_end sub_0203AC88 + + thumb_func_start sub_0203AC90 +sub_0203AC90: ; 0x0203AC90 + mov r0, #3 + bx lr + thumb_func_end sub_0203AC90 + + thumb_func_start ShowWFCUserInfoWarning +ShowWFCUserInfoWarning: ; 0x0203AC94 + push {r4, r5, r6, r7, lr} + sub sp, #0x24 + add r4, r0, #0 + mov r0, #0 + add r1, r0, #0 + bl sub_0200FBF4 + mov r0, #1 + mov r1, #0 + bl sub_0200FBF4 + mov r0, #0 + add r1, r0, #0 + bl sub_0201A0FC + mov r0, #0 + add r1, r0, #0 + bl sub_0201A120 + bl sub_02022C54 + bl sub_02022CBC + mov r2, #1 + lsl r2, r2, #0x1a + ldr r1, [r2] + ldr r0, _0203AE70 ; =0xFFFFE0FF + and r1, r0 + str r1, [r2] + ldr r2, _0203AE74 ; =0x04001000 + ldr r1, [r2] + and r0, r1 + str r0, [r2] + mov r0, #4 + mov r1, #8 + bl sub_0201A71C + ldr r0, _0203AE78 ; =gMain + 0x60 + mov r1, #0 + strb r1, [r0, #9] + bl sub_02022D3C + ldr r3, _0203AE7C ; =0x04000050 + mov r0, #0 + strh r0, [r3] + ldr r2, _0203AE80 ; =0x04001050 + sub r3, #0x50 + strh r0, [r2] + ldr r1, [r3] + ldr r0, _0203AE84 ; =0xFFFF1FFF + sub r2, #0x50 + and r1, r0 + str r1, [r3] + ldr r1, [r2] + and r0, r1 + str r0, [r2] + ldr r0, _0203AE88 ; =0x020F6B84 + bl GX_SetBanks + add r0, r4, #0 + bl sub_0201AC88 + str r0, [sp, #0x10] + ldr r0, _0203AE8C ; =0x020F6B58 + bl sub_0201ACB0 + mov r1, #0 + ldr r0, [sp, #0x10] + ldr r2, _0203AE90 ; =0x020F6B68 + add r3, r1, #0 + bl sub_0201B1E4 + ldr r0, [sp, #0x10] + mov r1, #0 + bl sub_0201CAE0 + mov r1, #0 + str r1, [sp] + ldr r0, [sp, #0x10] + ldr r2, _0203AE94 ; =0x000001F7 + mov r3, #2 + str r4, [sp, #4] + bl sub_0200E3DC + mov r0, #0 + mov r1, #0x20 + add r2, r4, #0 + bl sub_02003030 + mov r0, #0 + mov r1, #0x20 + add r2, r0, #0 + add r3, r4, #0 + bl sub_0201C1C4 + ldr r1, _0203AE98 ; =0x00006C21 + mov r0, #0 + bl sub_0201C2D8 + ldr r1, _0203AE98 ; =0x00006C21 + mov r0, #4 + bl sub_0201C2D8 + mov r2, #0x32 + mov r0, #1 + mov r1, #0x1b + lsl r2, r2, #4 + add r3, r4, #0 + bl NewMsgDataFromNarc + str r0, [sp, #0xc] + mov r0, #6 + lsl r0, r0, #6 + add r1, r4, #0 + bl String_ctor + add r4, r0, #0 + bl sub_02020080 + ldr r0, [sp, #0x10] + ldr r2, _0203AE9C ; =0x020F6B50 + add r1, sp, #0x14 + bl AddWindow + mov r0, #0xd0 + str r0, [sp] + mov r0, #0x90 + mov r2, #0 + str r0, [sp, #4] + add r0, sp, #0x14 + mov r1, #0xf + add r3, r2, #0 + bl FillWindowPixelRect + ldr r2, _0203AE94 ; =0x000001F7 + add r0, sp, #0x14 + mov r1, #0 + mov r3, #2 + bl sub_0200E580 + ldr r0, [sp, #0xc] + mov r1, #0x10 + add r2, r4, #0 + bl ReadMsgDataIntoString + mov r1, #0 + str r1, [sp] + str r1, [sp, #4] + add r0, sp, #0x14 + add r2, r4, #0 + add r3, r1, #0 + str r1, [sp, #8] + bl AddTextPrinterParameterized + add r0, r4, #0 + bl String_dtor + bl sub_02022D24 + mov r0, #0 + bl sub_0200FBE8 + mov r0, #1 + bl sub_0200FBE8 + mov r0, #0 + mov r1, #0x3f + mov r2, #3 + bl sub_0200B4F0 + ldr r4, _0203AEA0 ; =0x04000130 + ldr r6, _0203AEA4 ; =0x027FFFA8 + mov r7, #1 +_0203ADEE: + ldrh r1, [r4] + ldrh r0, [r6] + orr r1, r0 + ldr r0, _0203AEA8 ; =0x00002FFF + eor r1, r0 + and r0, r1 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + bl HandleDSLidAction + add r0, r5, #0 + tst r0, r7 + bne _0203AE12 + mov r0, #1 + add r1, r0, #0 + bl OS_WaitIrq + b _0203ADEE +_0203AE12: + add r0, sp, #0x14 + bl RemoveWindow + ldr r0, [sp, #0xc] + bl DestroyMsgData + mov r0, #0 + add r1, r0, #0 + bl sub_0201BC28 + mov r0, #1 + mov r1, #0 + bl sub_0201BC28 + mov r0, #2 + mov r1, #0 + bl sub_0201BC28 + mov r0, #3 + mov r1, #0 + bl sub_0201BC28 + mov r0, #4 + mov r1, #0 + bl sub_0201BC28 + mov r0, #5 + mov r1, #0 + bl sub_0201BC28 + mov r0, #6 + mov r1, #0 + bl sub_0201BC28 + mov r0, #7 + mov r1, #0 + bl sub_0201BC28 + ldr r0, [sp, #0x10] + mov r1, #0 + bl sub_0201BB4C + ldr r0, [sp, #0x10] + bl FreeToHeap + add sp, #0x24 + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_0203AE70: .word 0xFFFFE0FF +_0203AE74: .word 0x04001000 +_0203AE78: .word gMain + 0x60 +_0203AE7C: .word 0x04000050 +_0203AE80: .word 0x04001050 +_0203AE84: .word 0xFFFF1FFF +_0203AE88: .word 0x020F6B84 +_0203AE8C: .word 0x020F6B58 +_0203AE90: .word 0x020F6B68 +_0203AE94: .word 0x000001F7 +_0203AE98: .word 0x00006C21 +_0203AE9C: .word 0x020F6B50 +_0203AEA0: .word 0x04000130 +_0203AEA4: .word 0x027FFFA8 +_0203AEA8: .word 0x00002FFF + thumb_func_end ShowWFCUserInfoWarning + + thumb_func_start sub_0203AEAC +sub_0203AEAC: ; 0x0203AEAC + push {r4, r5, r6, r7, lr} + sub sp, #0xc + add r4, r0, #0 + str r2, [sp] + mov r2, #0 + strb r2, [r4, #1] + mov r7, #0x19 + mov r6, #0x96 + ldr r0, _0203AF94 ; =0x0000031F + mov ip, r1 + strb r2, [r4] + add r3, r4, #0 + add r5, r2, #0 + lsl r7, r7, #6 + lsl r6, r6, #4 +_0203AECA: + add r1, r4, r2 + strh r5, [r3, #2] + strb r5, [r1, r7] + strh r5, [r3, r6] + add r2, r2, #1 + add r3, r3, #2 + cmp r2, r0 + blt _0203AECA + ldr r0, _0203AF98 ; =0x00000F9E + mov r2, #0 +_0203AEDE: + add r1, r4, r5 + add r5, r5, #1 + strb r2, [r1, r0] + cmp r5, #0x10 + blt _0203AEDE + mov r0, #0x29 + mov r1, ip + mov r2, #0xb + bl AllocAtEndAndReadWholeNarcMemberByIdPair + add r6, r0, #0 + ldrb r0, [r6] + add r5, r6, #5 + strb r0, [r4, #1] + ldrb r0, [r6, #1] + strb r0, [r4] + ldrb r0, [r6, #2] + str r0, [sp, #8] + ldrb r0, [r6, #3] + str r0, [sp, #4] + ldrb r7, [r6, #4] + cmp r7, #0x10 + bls _0203AF10 + bl GF_AssertFail +_0203AF10: + ldr r1, _0203AF98 ; =0x00000F9E + add r0, r5, #0 + add r1, r4, r1 + add r2, r7, #0 + bl MIi_CpuCopy8 + ldr r0, [sp, #8] + add r5, r5, r7 + cmp r0, #0 + beq _0203AF40 + ldrb r3, [r4, #1] + ldrb r2, [r4] + add r0, r5, #0 + add r1, r4, #2 + mul r2, r3 + lsl r2, r2, #1 + bl MIi_CpuCopy8 + ldrb r1, [r4, #1] + ldrb r0, [r4] + mul r0, r1 + lsl r0, r0, #1 + add r5, r5, r0 + b _0203AF54 +_0203AF40: + ldrb r3, [r4, #1] + ldrb r2, [r4] + ldr r0, [sp] + add r1, r4, #2 + lsl r0, r0, #0x10 + mul r2, r3 + lsr r0, r0, #0x10 + lsl r2, r2, #1 + bl sub_020D4790 +_0203AF54: + ldr r0, [sp, #4] + cmp r0, #0 + beq _0203AF74 + ldrb r3, [r4, #1] + ldrb r2, [r4] + mov r1, #0x19 + lsl r1, r1, #6 + add r0, r5, #0 + add r1, r4, r1 + mul r2, r3 + bl MIi_CpuCopy8 + ldrb r1, [r4, #1] + ldrb r0, [r4] + mul r0, r1 + add r5, r5, r0 +_0203AF74: + ldrb r3, [r4, #1] + ldrb r2, [r4] + mov r1, #0x96 + lsl r1, r1, #4 + mul r2, r3 + add r0, r5, #0 + add r1, r4, r1 + lsl r2, r2, #1 + bl MIi_CpuCopy8 + add r0, r6, #0 + bl FreeToHeap + add sp, #0xc + pop {r4, r5, r6, r7, pc} + nop +_0203AF94: .word 0x0000031F +_0203AF98: .word 0x00000F9E + thumb_func_end sub_0203AEAC + + thumb_func_start sub_0203AF9C +sub_0203AF9C: ; 0x0203AF9C + push {r3, lr} + ldr r1, _0203AFB0 ; =0x00000FB2 + mov r0, #0xb + bl AllocFromHeap + mov r1, #0 + strb r1, [r0] + strb r1, [r0, #1] + strb r1, [r0, #2] + pop {r3, pc} + .balign 4, 0 +_0203AFB0: .word 0x00000FB2 + thumb_func_end sub_0203AF9C + + thumb_func_start sub_0203AFB4 +sub_0203AFB4: ; 0x0203AFB4 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + bl sub_0203B2AC + add r6, r0, #0 + add r0, r4, #4 + add r1, r6, #0 + add r2, r5, #0 + bl sub_0203AEAC + strb r6, [r4, #2] + ldrb r0, [r4, #4] + strb r0, [r4, #1] + ldrb r0, [r4, #5] + strb r0, [r4] + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203AFB4 + + thumb_func_start sub_0203AFD8 +sub_0203AFD8: ; 0x0203AFD8 + ldr r3, _0203AFDC ; =FreeToHeap + bx r3 + .balign 4, 0 +_0203AFDC: .word FreeToHeap + thumb_func_end sub_0203AFD8 + + thumb_func_start sub_0203AFE0 +sub_0203AFE0: ; 0x0203AFE0 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + ldrb r1, [r4] + ldrb r0, [r4, #1] + mul r0, r1 + cmp r5, r0 + blt _0203AFF4 + bl GF_AssertFail +_0203AFF4: + lsl r0, r5, #1 + add r1, r4, r0 + ldr r0, _0203B000 ; =0x00000964 + ldrh r0, [r1, r0] + pop {r3, r4, r5, pc} + nop +_0203B000: .word 0x00000964 + thumb_func_end sub_0203AFE0 + + thumb_func_start sub_0203B004 +sub_0203B004: ; 0x0203B004 + push {r4, lr} + add r4, r0, #0 + bne _0203B00E + bl GF_AssertFail +_0203B00E: + ldrb r0, [r4] + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203B004 + + thumb_func_start sub_0203B014 +sub_0203B014: ; 0x0203B014 + push {r4, lr} + add r4, r0, #0 + bne _0203B01E + bl GF_AssertFail +_0203B01E: + ldrb r0, [r4, #1] + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203B014 + + thumb_func_start sub_0203B024 +sub_0203B024: ; 0x0203B024 + push {r3, r4, r5, r6, r7, lr} + add r7, r0, #0 + ldrb r0, [r7, #1] + add r5, r1, #0 + add r4, r2, #0 + ldrb r6, [r7] + str r0, [sp] + cmp r5, #0 + blt _0203B03A + cmp r5, r6 + blt _0203B03E +_0203B03A: + bl GF_AssertFail +_0203B03E: + cmp r4, #0 + blt _0203B048 + ldr r0, [sp] + cmp r4, r0 + blt _0203B04C +_0203B048: + bl GF_AssertFail +_0203B04C: + add r0, r4, #0 + mul r0, r6 + add r0, r5, r0 + lsl r0, r0, #1 + add r0, r7, r0 + ldrh r0, [r0, #6] + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203B024 + + thumb_func_start sub_0203B05C +sub_0203B05C: ; 0x0203B05C + ldrb r0, [r0, #2] + bx lr + thumb_func_end sub_0203B05C + + thumb_func_start sub_0203B060 +sub_0203B060: ; 0x0203B060 + push {r4, r5, r6, lr} + add r5, r0, #0 + ldr r0, [sp, #0x10] + add r4, r2, #0 + add r6, r3, #0 + cmp r4, r0 + blt _0203B072 + bl GF_AssertFail +_0203B072: + ldr r0, [sp, #0x10] + mul r0, r6 + add r4, r4, r0 + ldr r0, _0203B08C ; =0x0000031F + cmp r4, r0 + blt _0203B082 + bl GF_AssertFail +_0203B082: + ldr r0, _0203B090 ; =0x00000644 + add r1, r5, r4 + ldrb r0, [r1, r0] + pop {r4, r5, r6, pc} + nop +_0203B08C: .word 0x0000031F +_0203B090: .word 0x00000644 + thumb_func_end sub_0203B060 + + thumb_func_start sub_0203B094 +sub_0203B094: ; 0x0203B094 + push {r3, r4, r5, lr} + ldr r1, _0203B0C4 ; =0x0000063E + add r4, r0, #0 + bl AllocFromHeap + add r5, r0, #0 + mov r0, #0x29 + mov r1, #0 + add r2, r4, #0 + bl AllocAtEndAndReadWholeNarcMemberByIdPair + add r4, r0, #0 + ldrb r1, [r4, #4] + add r0, r4, #5 + ldr r2, _0203B0C4 ; =0x0000063E + add r0, r0, r1 + add r1, r5, #0 + bl MIi_CpuCopy8 + add r0, r4, #0 + bl FreeToHeap + add r0, r5, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203B0C4: .word 0x0000063E + thumb_func_end sub_0203B094 + + thumb_func_start sub_0203B0C8 +sub_0203B0C8: ; 0x0203B0C8 + push {r4, lr} + add r4, r0, #0 + bne _0203B0D2 + bl GF_AssertFail +_0203B0D2: + add r0, r4, #0 + bl FreeToHeap + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203B0C8 + + thumb_func_start sub_0203B0DC +sub_0203B0DC: ; 0x0203B0DC + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + bne _0203B0E8 + bl GF_AssertFail +_0203B0E8: + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203AFE0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203B0DC + + thumb_func_start sub_0203B0F4 +sub_0203B0F4: ; 0x0203B0F4 + ldr r1, _0203B110 ; =0x00000964 + ldrb r2, [r0] + add r3, r0, r1 + ldrb r0, [r0, #2] + cmp r0, #0 + bne _0203B10C + lsl r0, r2, #2 + add r0, r2, r0 + add r0, #0x10 + mov r1, #0x56 + lsl r0, r0, #1 + strh r1, [r3, r0] +_0203B10C: + bx lr + nop +_0203B110: .word 0x00000964 + thumb_func_end sub_0203B0F4 + + thumb_func_start sub_0203B114 +sub_0203B114: ; 0x0203B114 + push {r3, r4, r5, lr} + sub sp, #0x10 + add r5, r1, #0 + bl sub_020503D0 + add r4, r0, #0 + add r0, sp, #0 + bl GF_RTC_CopyDate + add r0, r4, #0 + mov r1, #0xca + bl sub_020503DC + cmp r0, #0 + bne _0203B140 + add r0, r4, #0 + mov r1, #1 + bl sub_02066C4C + add sp, #0x10 + mov r0, #0 + pop {r3, r4, r5, pc} +_0203B140: + cmp r5, #0x58 + beq _0203B148 + cmp r5, #0x2d + bne _0203B14E +_0203B148: + ldr r0, [sp, #0xc] + cmp r0, #3 + beq _0203B15C +_0203B14E: + add r0, r4, #0 + mov r1, #1 + bl sub_02066C4C + add sp, #0x10 + mov r0, #0 + pop {r3, r4, r5, pc} +_0203B15C: + add r0, r4, #0 + mov r1, #1 + bl sub_02066C1C + mov r0, #1 + add sp, #0x10 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203B114 + + thumb_func_start sub_0203B16C +sub_0203B16C: ; 0x0203B16C + ldr r2, _0203B1F8 ; =0x00000964 + add r3, r0, r2 + ldrb r2, [r0] + ldrb r0, [r0, #2] + cmp r0, #0 + bne _0203B1F6 + cmp r1, #0 + beq _0203B1BA + add r0, r2, #0 + add r0, #0xf + mov r1, #0x5f + lsl r0, r0, #1 + strh r1, [r3, r0] + add r0, r2, #0 + add r0, #0x10 + mov r1, #0x60 + lsl r0, r0, #1 + strh r1, [r3, r0] + add r0, r2, #0 + add r0, #0x11 + mov r1, #0x61 + lsl r0, r0, #1 + strh r1, [r3, r0] + lsl r0, r2, #1 + add r1, r0, #0 + add r1, #0xf + mov r2, #0x62 + lsl r1, r1, #1 + strh r2, [r3, r1] + add r1, r0, #0 + add r1, #0x10 + add r0, #0x11 + mov r2, #0x63 + lsl r1, r1, #1 + strh r2, [r3, r1] + mov r1, #0x64 + lsl r0, r0, #1 + strh r1, [r3, r0] + bx lr +_0203B1BA: + add r0, r2, #0 + add r0, #0xf + mov r1, #0x59 + lsl r0, r0, #1 + strh r1, [r3, r0] + add r0, r2, #0 + add r0, #0x10 + mov r1, #0x5a + lsl r0, r0, #1 + strh r1, [r3, r0] + add r0, r2, #0 + add r0, #0x11 + mov r1, #0x5b + lsl r0, r0, #1 + strh r1, [r3, r0] + lsl r0, r2, #1 + add r1, r0, #0 + add r1, #0xf + mov r2, #0x5c + lsl r1, r1, #1 + strh r2, [r3, r1] + add r1, r0, #0 + add r1, #0x10 + add r0, #0x11 + mov r2, #0x5d + lsl r1, r1, #1 + strh r2, [r3, r1] + mov r1, #0x5e + lsl r0, r0, #1 + strh r1, [r3, r0] +_0203B1F6: + bx lr + .balign 4, 0 +_0203B1F8: .word 0x00000964 + thumb_func_end sub_0203B16C + + thumb_func_start sub_0203B1FC +sub_0203B1FC: ; 0x0203B1FC + push {r4, r5, r6, r7, lr} + sub sp, #0xc + ldr r2, _0203B264 ; =0x00000964 + add r2, r0, r2 + str r2, [sp, #8] + ldrb r2, [r0] + ldrb r0, [r0, #2] + str r2, [sp, #4] + cmp r0, #0xd4 + bne _0203B260 + add r0, r1, #0 + bl sub_0202F57C + mov r1, #3 + bl sub_0202F630 + mov r7, #0 + str r0, [sp] + ldr r0, [sp, #4] + add r6, r7, #0 + lsl r0, r0, #1 + mov ip, r0 + mov r0, #0xa3 + add r2, r7, #0 + lsl r0, r0, #2 +_0203B22E: + mov r3, #0x7a + add r4, r6, #0 + mul r4, r3 + ldr r3, [sp] + lsl r5, r2, #1 + add r3, r3, r4 + ldr r4, [sp, #8] + mov r1, #0 + add r5, r4, r5 + mov r4, ip + add r4, r5, r4 +_0203B244: + ldrb r5, [r3] + add r1, r1, #1 + add r3, #0x7a + add r5, r5, r0 + strh r5, [r4, #2] + add r4, r4, #2 + cmp r1, #3 + blt _0203B244 + ldr r1, [sp, #4] + add r7, r7, #1 + add r6, r6, #3 + add r2, r2, r1 + cmp r7, #2 + blt _0203B22E +_0203B260: + add sp, #0xc + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_0203B264: .word 0x00000964 + thumb_func_end sub_0203B1FC + + thumb_func_start sub_0203B268 +sub_0203B268: ; 0x0203B268 + push {r3, lr} + mov r1, #0x87 + lsl r1, r1, #2 + cmp r0, r1 + blo _0203B278 + bl GF_AssertFail + mov r0, #1 +_0203B278: + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203B268 + + thumb_func_start sub_0203B27C +sub_0203B27C: ; 0x0203B27C + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B28C ; =0x020F6BE1 + ldrb r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203B28C: .word 0x020F6BE1 + thumb_func_end sub_0203B27C + + thumb_func_start sub_0203B290 +sub_0203B290: ; 0x0203B290 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B2A8 ; =0x020F6BE0 + add r0, r0, r1 + ldrh r0, [r0, #2] + lsl r0, r0, #0x1c + lsr r0, r0, #0x1c + pop {r3, pc} + nop +_0203B2A8: .word 0x020F6BE0 + thumb_func_end sub_0203B290 + + thumb_func_start sub_0203B2AC +sub_0203B2AC: ; 0x0203B2AC + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B2BC ; =0x020F6BE4 + ldrh r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203B2BC: .word 0x020F6BE4 + thumb_func_end sub_0203B2AC + + thumb_func_start sub_0203B2C0 +sub_0203B2C0: ; 0x0203B2C0 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B2D0 ; =0x020F6BEA + ldrh r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203B2D0: .word 0x020F6BEA + thumb_func_end sub_0203B2C0 + + thumb_func_start sub_0203B2D4 +sub_0203B2D4: ; 0x0203B2D4 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B2E4 ; =0x020F6BE6 + ldrh r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203B2E4: .word 0x020F6BE6 + thumb_func_end sub_0203B2D4 + + thumb_func_start sub_0203B2E8 +sub_0203B2E8: ; 0x0203B2E8 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B2F8 ; =0x020F6BE8 + ldrh r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203B2F8: .word 0x020F6BE8 + thumb_func_end sub_0203B2E8 + + thumb_func_start sub_0203B2FC +sub_0203B2FC: ; 0x0203B2FC + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B30C ; =0x020F6BEC + ldrh r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203B30C: .word 0x020F6BEC + thumb_func_end sub_0203B2FC + + thumb_func_start sub_0203B310 +sub_0203B310: ; 0x0203B310 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B320 ; =0x020F6BEE + ldrh r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203B320: .word 0x020F6BEE + thumb_func_end sub_0203B310 + + thumb_func_start sub_0203B324 +sub_0203B324: ; 0x0203B324 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B340 ; =0x020F6BE0 + ldrb r0, [r0, r1] + cmp r0, #0xff + beq _0203B33A + mov r0, #1 + pop {r3, pc} +_0203B33A: + mov r0, #0 + pop {r3, pc} + nop +_0203B340: .word 0x020F6BE0 + thumb_func_end sub_0203B324 + + thumb_func_start sub_0203B344 +sub_0203B344: ; 0x0203B344 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B354 ; =0x020F6BE0 + ldrb r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203B354: .word 0x020F6BE0 + thumb_func_end sub_0203B344 + + thumb_func_start sub_0203B358 +sub_0203B358: ; 0x0203B358 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B368 ; =0x020F6BF0 + ldrh r0, [r0, r1] + pop {r3, pc} + .balign 4, 0 +_0203B368: .word 0x020F6BF0 + thumb_func_end sub_0203B358 + + thumb_func_start sub_0203B36C +sub_0203B36C: ; 0x0203B36C + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B384 ; =0x020F6BE0 + add r0, r0, r1 + ldrh r0, [r0, #0x12] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + pop {r3, pc} + nop +_0203B384: .word 0x020F6BE0 + thumb_func_end sub_0203B36C + + thumb_func_start sub_0203B388 +sub_0203B388: ; 0x0203B388 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B3A4 ; =0x020F6BE0 + add r0, r0, r1 + ldrh r0, [r0, #0x12] + lsl r0, r0, #0x14 + lsr r0, r0, #0x1c + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + pop {r3, pc} + nop +_0203B3A4: .word 0x020F6BE0 + thumb_func_end sub_0203B388 + + thumb_func_start sub_0203B3A8 +sub_0203B3A8: ; 0x0203B3A8 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B3C4 ; =0x020F6BE0 + add r0, r0, r1 + ldrh r0, [r0, #0x12] + lsl r0, r0, #0x10 + lsr r0, r0, #0x1c + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + pop {r3, pc} + nop +_0203B3C4: .word 0x020F6BE0 + thumb_func_end sub_0203B3A8 + + thumb_func_start sub_0203B3C8 +sub_0203B3C8: ; 0x0203B3C8 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B3E0 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #0x1f + lsr r0, r0, #0x1f + pop {r3, pc} + nop +_0203B3E0: .word 0x020F6BE0 + thumb_func_end sub_0203B3C8 + + thumb_func_start sub_0203B3E4 +sub_0203B3E4: ; 0x0203B3E4 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B3FC ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #0x18 + lsr r0, r0, #0x19 + pop {r3, pc} + nop +_0203B3FC: .word 0x020F6BE0 + thumb_func_end sub_0203B3E4 + + thumb_func_start sub_0203B400 +sub_0203B400: ; 0x0203B400 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B418 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #0xe + lsr r0, r0, #0x1a + pop {r3, pc} + nop +_0203B418: .word 0x020F6BE0 + thumb_func_end sub_0203B400 + + thumb_func_start sub_0203B41C +sub_0203B41C: ; 0x0203B41C + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B434 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #7 + lsr r0, r0, #0x1b + pop {r3, pc} + nop +_0203B434: .word 0x020F6BE0 + thumb_func_end sub_0203B41C + + thumb_func_start sub_0203B438 +sub_0203B438: ; 0x0203B438 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B450 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #4 + lsr r0, r0, #0x1f + pop {r3, pc} + nop +_0203B450: .word 0x020F6BE0 + thumb_func_end sub_0203B438 + + thumb_func_start sub_0203B454 +sub_0203B454: ; 0x0203B454 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B46C ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #3 + lsr r0, r0, #0x1f + pop {r3, pc} + nop +_0203B46C: .word 0x020F6BE0 + thumb_func_end sub_0203B454 + + thumb_func_start sub_0203B470 +sub_0203B470: ; 0x0203B470 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B488 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #6 + lsr r0, r0, #0x1f + pop {r3, pc} + nop +_0203B488: .word 0x020F6BE0 + thumb_func_end sub_0203B470 + + thumb_func_start sub_0203B48C +sub_0203B48C: ; 0x0203B48C + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B4A4 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #2 + lsr r0, r0, #0x1f + pop {r3, pc} + nop +_0203B4A4: .word 0x020F6BE0 + thumb_func_end sub_0203B48C + + thumb_func_start sub_0203B4A8 +sub_0203B4A8: ; 0x0203B4A8 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B4C0 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #1 + lsr r0, r0, #0x1f + pop {r3, pc} + nop +_0203B4C0: .word 0x020F6BE0 + thumb_func_end sub_0203B4A8 + + thumb_func_start sub_0203B4C4 +sub_0203B4C4: ; 0x0203B4C4 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B4D8 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsr r0, r0, #0x1f + pop {r3, pc} + .balign 4, 0 +_0203B4D8: .word 0x020F6BE0 + thumb_func_end sub_0203B4C4 + + thumb_func_start sub_0203B4DC +sub_0203B4DC: ; 0x0203B4DC + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B4F4 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #0x14 + lsr r0, r0, #0x1c + pop {r3, pc} + nop +_0203B4F4: .word 0x020F6BE0 + thumb_func_end sub_0203B4DC + + thumb_func_start sub_0203B4F8 +sub_0203B4F8: ; 0x0203B4F8 + push {r3, lr} + bl sub_0203B268 + mov r1, #0x18 + mul r1, r0 + ldr r0, _0203B514 ; =0x020F6BE0 + add r0, r0, r1 + ldr r0, [r0, #0x14] + lsl r0, r0, #0xc + lsr r0, r0, #0x1e + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + pop {r3, pc} + nop +_0203B514: .word 0x020F6BE0 + thumb_func_end sub_0203B4F8 + + thumb_func_start sub_0203B518 +sub_0203B518: ; 0x0203B518 + push {r3, r4, r5, lr} + add r5, r1, #0 + add r4, r2, #0 + bl sub_0203B268 + mov r1, #0x18 + ldr r2, _0203B53C ; =0x020F6BE0 + mul r1, r0 + add r1, r2, r1 + ldrh r0, [r1, #2] + lsl r0, r0, #0x16 + lsr r0, r0, #0x1a + strh r0, [r5] + ldrh r0, [r1, #2] + lsl r0, r0, #0x10 + lsr r0, r0, #0x1a + strh r0, [r4] + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203B53C: .word 0x020F6BE0 + thumb_func_end sub_0203B518 + + thumb_func_start sub_0203B540 +sub_0203B540: ; 0x0203B540 + push {r4, lr} + add r4, r0, #0 + bl sub_0203B454 + cmp r0, #0 + bne _0203B550 + mov r0, #0 + pop {r4, pc} +_0203B550: + add r0, r4, #0 + bl sub_0203B4DC + cmp r0, #1 + beq _0203B55E + mov r0, #1 + pop {r4, pc} +_0203B55E: + mov r0, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203B540 + + thumb_func_start sub_0203B564 +sub_0203B564: ; 0x0203B564 + push {r3, lr} + bl sub_0203B2AC + cmp r0, #0 + bne _0203B572 + mov r0, #1 + pop {r3, pc} +_0203B572: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203B564 + + thumb_func_start sub_0203B578 +sub_0203B578: ; 0x0203B578 + push {r3, lr} + bl sub_0203B4DC + cmp r0, #3 + bne _0203B586 + mov r0, #1 + pop {r3, pc} +_0203B586: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203B578 + + thumb_func_start sub_0203B58C +sub_0203B58C: ; 0x0203B58C + push {r4, lr} + add r4, r0, #0 + bl sub_0203B4DC + cmp r0, #4 + beq _0203B5A2 + add r0, r4, #0 + bl sub_0203B4DC + cmp r0, #5 + bne _0203B5A6 +_0203B5A2: + mov r0, #1 + pop {r4, pc} +_0203B5A6: + mov r0, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203B58C + + thumb_func_start sub_0203B5AC +sub_0203B5AC: ; 0x0203B5AC + push {r4, lr} + add r4, r0, #0 + bl sub_0203B4DC + cmp r0, #1 + beq _0203B5C2 + add r0, r4, #0 + bl sub_0203B4DC + cmp r0, #2 + bne _0203B5C6 +_0203B5C2: + mov r0, #1 + pop {r4, pc} +_0203B5C6: + mov r0, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203B5AC + + thumb_func_start sub_0203B5CC +sub_0203B5CC: ; 0x0203B5CC + cmp r0, #2 + bne _0203B5D4 + mov r0, #1 + bx lr +_0203B5D4: + mov r0, #0 + bx lr + thumb_func_end sub_0203B5CC + + thumb_func_start sub_0203B5D8 +sub_0203B5D8: ; 0x0203B5D8 + mov r0, #0 + bx lr + thumb_func_end sub_0203B5D8 + + thumb_func_start sub_0203B5DC +sub_0203B5DC: ; 0x0203B5DC + ldr r3, _0203B5F8 ; =0x020F6BAC + mov r2, #0 +_0203B5E0: + ldrh r1, [r3] + cmp r0, r1 + bne _0203B5EA + mov r0, #1 + bx lr +_0203B5EA: + add r2, r2, #1 + add r3, r3, #2 + cmp r2, #0x19 + blt _0203B5E0 + mov r0, #0 + bx lr + nop +_0203B5F8: .word 0x020F6BAC + thumb_func_end sub_0203B5DC + + thumb_func_start sub_0203B5FC +sub_0203B5FC: ; 0x0203B5FC + mov r1, #0x4b + lsl r1, r1, #2 + cmp r0, r1 + bne _0203B608 + mov r0, #1 + bx lr +_0203B608: + mov r0, #0 + bx lr + thumb_func_end sub_0203B5FC + + thumb_func_start sub_0203B60C +sub_0203B60C: ; 0x0203B60C + mov r0, #0 + bx lr + thumb_func_end sub_0203B60C + + thumb_func_start sub_0203B610 +sub_0203B610: ; 0x0203B610 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, [r5, #0x14] + add r4, r1, #0 + cmp r0, #0 + beq _0203B620 + bl GF_AssertFail +_0203B620: + ldr r1, _0203B62C ; =0x000009E4 + add r0, r4, #0 + bl AllocFromHeap + str r0, [r5, #0x14] + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203B62C: .word 0x000009E4 + thumb_func_end sub_0203B610 + + thumb_func_start sub_0203B630 +sub_0203B630: ; 0x0203B630 + push {r4, lr} + add r4, r0, #0 + ldr r0, [r4, #0x14] + cmp r0, #0 + bne _0203B63E + bl GF_AssertFail +_0203B63E: + ldr r0, [r4, #0x14] + bl FreeToHeap + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203B630 + + thumb_func_start sub_0203B648 +sub_0203B648: ; 0x0203B648 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, [r5, #0x14] + add r4, r1, #0 + cmp r0, #0 + bne _0203B658 + bl GF_AssertFail +_0203B658: + ldr r0, [r5, #0x14] + add r1, r4, #0 + bl sub_0203B680 + ldr r0, [r5, #0x14] + bl sub_0203B828 + mov r0, #0x92 + ldr r1, [r5, #0x14] + lsl r0, r0, #4 + add r0, r1, r0 + add r1, r4, #0 + bl sub_0203B88C + ldr r0, [r5, #0x14] + add r1, r4, #0 + bl sub_0203B8C4 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203B648 + + thumb_func_start sub_0203B680 +sub_0203B680: ; 0x0203B680 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r0, r1, #0 + bl sub_0203B358 + add r4, r0, #0 + mov r0, #0x20 + add r1, r4, #0 + bl GetNarcMemberSizeByIdPair + mov r1, #2 + lsl r1, r1, #0xa + cmp r0, r1 + blo _0203B6A0 + bl GF_AssertFail +_0203B6A0: + add r5, #0x20 + add r0, r5, #0 + mov r1, #0x20 + add r2, r4, #0 + bl ReadWholeNarcMemberByIdPair + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203B680 + + thumb_func_start sub_0203B6B0 +sub_0203B6B0: ; 0x0203B6B0 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, [r5, #0x14] + ldr r4, [r0, #4] + cmp r0, #0 + bne _0203B6C0 + bl GF_AssertFail +_0203B6C0: + cmp r4, #0 + beq _0203B6D4 + ldr r1, [r5, #0x20] + ldr r3, [r5, #0x14] + ldr r0, [r5, #0x3c] + ldr r1, [r1] + ldr r3, [r3, #0x14] + add r2, r4, #0 + bl sub_0205E9AC +_0203B6D4: + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203B6B0 + + thumb_func_start sub_0203B6D8 +sub_0203B6D8: ; 0x0203B6D8 + ldr r0, [r0, #0x14] + ldr r0, [r0, #0x10] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B6D8 + + thumb_func_start sub_0203B6E0 +sub_0203B6E0: ; 0x0203B6E0 + ldr r0, [r0, #0x14] + ldr r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B6E0 + + thumb_func_start sub_0203B6E8 +sub_0203B6E8: ; 0x0203B6E8 + ldr r2, [r0, #0x14] + ldr r0, [r2, #8] + cmp r1, r0 + blo _0203B6F4 + mov r0, #0 + bx lr +_0203B6F4: + mov r0, #0xc + ldr r2, [r2, #0x18] + mul r0, r1 + add r0, r2, r0 + bx lr + .balign 4, 0 + thumb_func_end sub_0203B6E8 + + thumb_func_start sub_0203B700 +sub_0203B700: ; 0x0203B700 + push {r4, r5, r6, r7} + ldr r5, [r0, #0x14] + mov r3, #0 + ldr r0, [r5, #8] + cmp r0, #0 + bls _0203B732 + ldr r6, [r5, #0x18] + add r4, r3, #0 + add r0, r6, #0 +_0203B712: + ldrh r7, [r0] + cmp r1, r7 + bne _0203B726 + add r7, r6, r4 + ldrh r7, [r7, #2] + cmp r2, r7 + bne _0203B726 + add r0, r3, #0 + pop {r4, r5, r6, r7} + bx lr +_0203B726: + ldr r7, [r5, #8] + add r3, r3, #1 + add r0, #0xc + add r4, #0xc + cmp r3, r7 + blo _0203B712 +_0203B732: + mov r0, #0 + mvn r0, r0 + pop {r4, r5, r6, r7} + bx lr + .balign 4, 0 + thumb_func_end sub_0203B700 + + thumb_func_start sub_0203B73C +sub_0203B73C: ; 0x0203B73C + ldr r0, [r0, #0x14] + ldr r0, [r0, #0xc] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B73C + + thumb_func_start sub_0203B744 +sub_0203B744: ; 0x0203B744 + ldr r0, [r0, #0x14] + ldr r0, [r0, #0x1c] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B744 + + thumb_func_start sub_0203B74C +sub_0203B74C: ; 0x0203B74C + ldr r0, [r0, #0x14] + ldr r0, [r0, #4] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B74C + + thumb_func_start sub_0203B754 +sub_0203B754: ; 0x0203B754 + ldr r0, [r0, #0x14] + ldr r0, [r0, #0x14] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B754 + + thumb_func_start sub_0203B75C +sub_0203B75C: ; 0x0203B75C + push {r3, r4, r5, r6, r7, lr} + ldr r0, [r0, #0x14] + add r4, r1, #0 + ldr r5, [r0, #4] + add r7, r2, #0 + add r1, r3, #0 + mov r2, #0 + ldr r3, [r0, #0x14] + cmp r5, #0 + bls _0203B78C + add r6, r3, #0 +_0203B772: + ldrh r0, [r6] + cmp r4, r0 + bne _0203B784 + lsl r0, r2, #5 + add r0, r3, r0 + strh r7, [r0, #0x18] + strh r1, [r0, #0x1a] + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0203B784: + add r2, r2, #1 + add r6, #0x20 + cmp r2, r5 + blo _0203B772 +_0203B78C: + bl GF_AssertFail + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0203B75C + + thumb_func_start sub_0203B794 +sub_0203B794: ; 0x0203B794 + push {r4, r5, r6, lr} + ldr r0, [r0, #0x14] + mov r3, #0 + ldr r5, [r0, #4] + ldr r4, [r0, #0x14] + cmp r5, #0 + bls _0203B7BC + add r6, r4, #0 +_0203B7A4: + ldrh r0, [r6] + cmp r1, r0 + bne _0203B7B4 + lsl r0, r3, #5 + add r0, r4, r0 + strh r2, [r0, #0xc] + mov r0, #1 + pop {r4, r5, r6, pc} +_0203B7B4: + add r3, r3, #1 + add r6, #0x20 + cmp r3, r5 + blo _0203B7A4 +_0203B7BC: + bl GF_AssertFail + mov r0, #0 + pop {r4, r5, r6, pc} + thumb_func_end sub_0203B794 + + thumb_func_start sub_0203B7C4 +sub_0203B7C4: ; 0x0203B7C4 + push {r4, r5, r6, lr} + ldr r0, [r0, #0x14] + mov r3, #0 + ldr r5, [r0, #4] + ldr r4, [r0, #0x14] + cmp r5, #0 + bls _0203B7EC + add r6, r4, #0 +_0203B7D4: + ldrh r0, [r6] + cmp r1, r0 + bne _0203B7E4 + lsl r0, r3, #5 + add r0, r4, r0 + strh r2, [r0, #4] + mov r0, #1 + pop {r4, r5, r6, pc} +_0203B7E4: + add r3, r3, #1 + add r6, #0x20 + cmp r3, r5 + blo _0203B7D4 +_0203B7EC: + bl GF_AssertFail + mov r0, #0 + pop {r4, r5, r6, pc} + thumb_func_end sub_0203B7C4 + + thumb_func_start sub_0203B7F4 +sub_0203B7F4: ; 0x0203B7F4 + push {r3, r4} + ldr r0, [r0, #0x14] + ldr r4, [r0, #0x18] + mov r0, #0xc + mul r0, r1 + strh r2, [r4, r0] + add r0, r4, r0 + strh r3, [r0, #2] + mov r0, #1 + pop {r3, r4} + bx lr + .balign 4, 0 + thumb_func_end sub_0203B7F4 + + thumb_func_start sub_0203B80C +sub_0203B80C: ; 0x0203B80C + push {r4, r5, r6, lr} + add r5, r1, #0 + add r4, r2, #0 + add r6, r3, #0 + bl sub_0203B6D8 + mov r1, #0x14 + mul r1, r5 + add r0, r0, r1 + str r4, [r0, #4] + str r6, [r0, #8] + mov r0, #1 + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203B80C + + thumb_func_start sub_0203B828 +sub_0203B828: ; 0x0203B828 + add r1, r0, #0 + ldr r2, [r0, #0x20] + add r1, #0x20 + add r1, r1, #4 + str r2, [r0] + cmp r2, #0 + beq _0203B83A + str r1, [r0, #0x10] + b _0203B83E +_0203B83A: + mov r2, #0 + str r2, [r0, #0x10] +_0203B83E: + ldr r3, [r0] + mov r2, #0x14 + mul r2, r3 + add r3, r1, r2 + ldr r2, [r1, r2] + add r1, r3, #4 + str r2, [r0, #4] + cmp r2, #0 + beq _0203B854 + str r1, [r0, #0x14] + b _0203B858 +_0203B854: + mov r2, #0 + str r2, [r0, #0x14] +_0203B858: + ldr r2, [r0, #4] + lsl r2, r2, #5 + add r3, r1, r2 + ldr r2, [r1, r2] + add r1, r3, #4 + str r2, [r0, #8] + cmp r2, #0 + beq _0203B86C + str r1, [r0, #0x18] + b _0203B870 +_0203B86C: + mov r2, #0 + str r2, [r0, #0x18] +_0203B870: + ldr r3, [r0, #8] + mov r2, #0xc + mul r2, r3 + add r3, r1, r2 + ldr r1, [r1, r2] + str r1, [r0, #0xc] + cmp r1, #0 + beq _0203B886 + add r1, r3, #4 + str r1, [r0, #0x1c] + bx lr +_0203B886: + mov r1, #0 + str r1, [r0, #0x1c] + bx lr + thumb_func_end sub_0203B828 + + thumb_func_start sub_0203B88C +sub_0203B88C: ; 0x0203B88C + push {r3, r4, r5, lr} + add r4, r1, #0 + mov r1, #0 + mov r2, #0xc4 + add r5, r0, #0 + bl memset + add r0, r4, #0 + bl sub_0203B324 + cmp r0, #0 + beq _0203B8B4 + add r0, r4, #0 + bl sub_0203B344 + add r2, r0, #0 + add r0, r5, #0 +#ifdef HEARTGOLD + mov r1, #0x25 +#else + mov r1, #0x88 +#endif + bl ReadWholeNarcMemberByIdPair +_0203B8B4: + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203B88C + + thumb_func_start sub_0203B8B8 +sub_0203B8B8: ; 0x0203B8B8 + ldr r1, [r0, #0x14] + mov r0, #0x92 + lsl r0, r0, #4 + add r0, r1, r0 + bx lr + .balign 4, 0 + thumb_func_end sub_0203B8B8 + + thumb_func_start sub_0203B8C4 +sub_0203B8C4: ; 0x0203B8C4 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r0, r1, #0 + bl sub_0203B2E8 + mov r1, #0x82 + lsl r1, r1, #4 + mov r2, #1 + add r4, r0, #0 + mov r0, #0 + add r1, r5, r1 + lsl r2, r2, #8 + bl MIi_CpuClearFast + mov r0, #0xc + add r1, r4, #0 + bl GetNarcMemberSizeByIdPair + mov r1, #1 + lsl r1, r1, #8 + cmp r0, r1 + blo _0203B8F4 + bl GF_AssertFail +_0203B8F4: + mov r0, #0x82 + lsl r0, r0, #4 + add r0, r5, r0 + mov r1, #0xc + add r2, r4, #0 + bl ReadWholeNarcMemberByIdPair + pop {r3, r4, r5, pc} + thumb_func_end sub_0203B8C4 + + thumb_func_start sub_0203B904 +sub_0203B904: ; 0x0203B904 + push {r4, lr} + add r4, r0, #0 + ldr r0, [r4, #0x14] + cmp r0, #0 + bne _0203B912 + bl GF_AssertFail +_0203B912: + mov r0, #0x82 + ldr r1, [r4, #0x14] + lsl r0, r0, #4 + add r0, r1, r0 + pop {r4, pc} + thumb_func_end sub_0203B904 + + thumb_func_start sub_0203B91C +sub_0203B91C: ; 0x0203B91C + mov r0, #0x80 + bx lr + thumb_func_end sub_0203B91C + + thumb_func_start sub_0203B920 +sub_0203B920: ; 0x0203B920 + mov r0, #5 + lsl r0, r0, #0xa + bx lr + .balign 4, 0 + thumb_func_end sub_0203B920 + + thumb_func_start sub_0203B928 +sub_0203B928: ; 0x0203B928 + ldr r3, _0203B934 ; =sub_020D47EC + mov r2, #5 + add r1, r0, #0 + mov r0, #0 + lsl r2, r2, #0xa + bx r3 + .balign 4, 0 +_0203B934: .word sub_020D47EC + thumb_func_end sub_0203B928 + + thumb_func_start sub_0203B938 +sub_0203B938: ; 0x0203B938 + push {r4, lr} + add r4, r0, #0 + mov r1, #0 + mov r2, #0x80 + bl memset + add r0, r4, #0 + add r0, #0x6c + bl sub_0205C7BC + bl sub_0203BA70 + add r4, #0x68 + strh r0, [r4] + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203B938 + + thumb_func_start sub_0203B958 +sub_0203B958: ; 0x0203B958 + bx lr + .balign 4, 0 + thumb_func_end sub_0203B958 + + thumb_func_start sub_0203B95C +sub_0203B95C: ; 0x0203B95C + add r0, #0x14 + bx lr + thumb_func_end sub_0203B95C + + thumb_func_start sub_0203B960 +sub_0203B960: ; 0x0203B960 + add r0, #0x28 + bx lr + thumb_func_end sub_0203B960 + + thumb_func_start sub_0203B964 +sub_0203B964: ; 0x0203B964 + add r0, #0x50 + bx lr + thumb_func_end sub_0203B964 + + thumb_func_start sub_0203B968 +sub_0203B968: ; 0x0203B968 + add r0, #0x3c + bx lr + thumb_func_end sub_0203B968 + + thumb_func_start sub_0203B96C +sub_0203B96C: ; 0x0203B96C + add r3, r1, #0 + add r2, r0, #0 + ldmia r3!, {r0, r1} + add r2, #0x3c + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldr r0, [r3] + str r0, [r2] + bx lr + thumb_func_end sub_0203B96C + + thumb_func_start sub_0203B980 +sub_0203B980: ; 0x0203B980 + add r0, #0x64 + bx lr + thumb_func_end sub_0203B980 + + thumb_func_start sub_0203B984 +sub_0203B984: ; 0x0203B984 + add r0, #0x66 + ldrh r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B984 + + thumb_func_start sub_0203B98C +sub_0203B98C: ; 0x0203B98C + add r0, #0x66 + strh r1, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B98C + + thumb_func_start sub_0203B994 +sub_0203B994: ; 0x0203B994 + add r0, #0x68 + ldrh r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B994 + + thumb_func_start sub_0203B99C +sub_0203B99C: ; 0x0203B99C + add r0, #0x68 + strh r1, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B99C + + thumb_func_start sub_0203B9A4 +sub_0203B9A4: ; 0x0203B9A4 + add r0, #0x6a + ldrb r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B9A4 + + thumb_func_start sub_0203B9AC +sub_0203B9AC: ; 0x0203B9AC + add r0, #0x6a + strb r1, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0203B9AC + + thumb_func_start sub_0203B9B4 +sub_0203B9B4: ; 0x0203B9B4 + add r0, #0x6c + bx lr + thumb_func_end sub_0203B9B4 + + thumb_func_start sub_0203B9B8 +sub_0203B9B8: ; 0x0203B9B8 + add r0, #0x78 + bx lr + thumb_func_end sub_0203B9B8 + + thumb_func_start sub_0203B9BC +sub_0203B9BC: ; 0x0203B9BC + add r0, #0x76 + bx lr + thumb_func_end sub_0203B9BC + + thumb_func_start sub_0203B9C0 +sub_0203B9C0: ; 0x0203B9C0 + add r0, #0x74 + bx lr + thumb_func_end sub_0203B9C0 + + thumb_func_start sub_0203B9C4 +sub_0203B9C4: ; 0x0203B9C4 + ldr r3, _0203B9CC ; =SavArray_get + mov r1, #5 + bx r3 + nop +_0203B9CC: .word SavArray_get + thumb_func_end sub_0203B9C4 + + thumb_func_start sub_0203B9D0 +sub_0203B9D0: ; 0x0203B9D0 + ldr r3, _0203B9D8 ; =SavArray_get + mov r1, #0xa + bx r3 + nop +_0203B9D8: .word SavArray_get + thumb_func_end sub_0203B9D0 + + thumb_func_start sub_0203B9DC +sub_0203B9DC: ; 0x0203B9DC + push {r4, lr} + add r4, r0, #0 + ldr r0, [r4, #0xc] + bl sub_0203B9D0 + add r2, r0, #0 + ldr r1, [r4, #0x3c] + add r0, r4, #0 + mov r3, #0x40 + bl sub_0205E5EC + pop {r4, pc} + thumb_func_end sub_0203B9DC + + thumb_func_start sub_0203B9F4 +sub_0203B9F4: ; 0x0203B9F4 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + ldr r0, [r5, #0xc] + bl sub_0203B9D0 + ldr r2, _0203BA54 ; =0x000003CF + mov r1, #0x40 + add r7, r0, #0 + bl sub_0205FD00 + add r4, r0, #0 + beq _0203BA48 + ldrb r0, [r4, #8] + cmp r0, #0xfd + bne _0203BA48 + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + bl sub_02054388 + str r0, [sp] + mov r1, #5 + mov r2, #0 + bl GetMonData + add r6, r0, #0 + ldr r0, [sp] + mov r1, #0x70 + mov r2, #0 + bl GetMonData + mov r1, #0x7b + lsl r1, r1, #2 + cmp r6, r1 + beq _0203BA40 + bl GF_AssertFail + b _0203BA48 +_0203BA40: + cmp r0, #0 + bne _0203BA48 + ldr r0, _0203BA58 ; =0x000003CE + strh r0, [r4, #0x12] +_0203BA48: + ldr r0, [r5, #0x3c] + add r1, r7, #0 + mov r2, #0x40 + bl sub_0205E648 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203BA54: .word 0x000003CF +_0203BA58: .word 0x000003CE + thumb_func_end sub_0203B9F4 + + thumb_func_start sub_0203BA5C +sub_0203BA5C: ; 0x0203BA5C + push {r3, lr} + cmp r0, #0 + ble _0203BA66 + cmp r0, #0x1e + bls _0203BA6C +_0203BA66: + bl GF_AssertFail + mov r0, #1 +_0203BA6C: + sub r0, r0, #1 + pop {r3, pc} + thumb_func_end sub_0203BA5C + + thumb_func_start sub_0203BA70 +sub_0203BA70: ; 0x0203BA70 + mov r0, #1 + bx lr + thumb_func_end sub_0203BA70 + + thumb_func_start sub_0203BA74 +sub_0203BA74: ; 0x0203BA74 + push {r4, lr} + add r4, r1, #0 + bl sub_0203BA5C + add r1, r0, #0 + mov r2, #0x12 + mul r1, r2 + ldr r0, _0203BAA0 ; =0x020F9E86 + sub r2, #0x13 + ldrh r0, [r0, r1] + str r0, [r4] + ldr r0, _0203BAA4 ; =0x020F9E88 + str r2, [r4, #4] + ldrh r0, [r0, r1] + str r0, [r4, #8] + ldr r0, _0203BAA8 ; =0x020F9E8A + ldrh r0, [r0, r1] + str r0, [r4, #0xc] + mov r0, #1 + str r0, [r4, #0x10] + pop {r4, pc} + nop +_0203BAA0: .word 0x020F9E86 +_0203BAA4: .word 0x020F9E88 +_0203BAA8: .word 0x020F9E8A + thumb_func_end sub_0203BA74 + + thumb_func_start sub_0203BAAC +sub_0203BAAC: ; 0x0203BAAC + push {r4, lr} + add r4, r1, #0 + bl sub_0203BA5C + add r2, r0, #0 + mov r1, #0x12 + mul r2, r1 + ldr r0, _0203BAE0 ; =0x020F9E82 + sub r1, #0x13 + ldrh r0, [r0, r2] + str r0, [r4] + ldr r0, _0203BAE4 ; =0x020F9E80 + str r1, [r4, #4] + add r1, r0, r2 + ldrh r0, [r1, #4] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + str r0, [r4, #8] + ldrh r0, [r1, #4] + lsl r0, r0, #0x10 + lsr r0, r0, #0x18 + str r0, [r4, #0xc] + mov r0, #0 + str r0, [r4, #0x10] + pop {r4, pc} + nop +_0203BAE0: .word 0x020F9E82 +_0203BAE4: .word 0x020F9E80 + thumb_func_end sub_0203BAAC + + thumb_func_start sub_0203BAE8 +sub_0203BAE8: ; 0x0203BAE8 + push {r4, lr} + add r4, r1, #0 + bl sub_0203BA5C + add r1, r0, #0 + mov r2, #0x12 + mul r1, r2 + ldr r0, _0203BB14 ; =0x020F9E8C + sub r2, #0x13 + ldrh r0, [r0, r1] + str r0, [r4] + ldr r0, _0203BB18 ; =0x020F9E8E + str r2, [r4, #4] + ldrh r0, [r0, r1] + str r0, [r4, #8] + ldr r0, _0203BB1C ; =0x020F9E90 + ldrh r0, [r0, r1] + str r0, [r4, #0xc] + mov r0, #1 + str r0, [r4, #0x10] + pop {r4, pc} + nop +_0203BB14: .word 0x020F9E8C +_0203BB18: .word 0x020F9E8E +_0203BB1C: .word 0x020F9E90 + thumb_func_end sub_0203BAE8 + + thumb_func_start sub_0203BB20 +sub_0203BB20: ; 0x0203BB20 + push {r3, r4} + ldr r3, _0203BB4C ; =0x020F9E80 + mov r2, #0 + add r4, r3, #0 +_0203BB28: + ldrh r1, [r3, #2] + cmp r0, r1 + bne _0203BB3C + ldrh r1, [r4] + lsl r1, r1, #0x17 + lsr r1, r1, #0x1f + beq _0203BB3C + add r0, r2, #1 + pop {r3, r4} + bx lr +_0203BB3C: + add r2, r2, #1 + add r3, #0x12 + add r4, #0x12 + cmp r2, #0x1e + blo _0203BB28 + mov r0, #0 + pop {r3, r4} + bx lr + .balign 4, 0 +_0203BB4C: .word 0x020F9E80 + thumb_func_end sub_0203BB20 + + thumb_func_start sub_0203BB50 +sub_0203BB50: ; 0x0203BB50 + ldr r3, _0203BB6C ; =0x020F9E80 + mov r2, #0 +_0203BB54: + ldrh r1, [r3, #6] + cmp r0, r1 + bne _0203BB5E + add r0, r2, #1 + bx lr +_0203BB5E: + add r2, r2, #1 + add r3, #0x12 + cmp r2, #0x1e + blo _0203BB54 + mov r0, #0 + bx lr + nop +_0203BB6C: .word 0x020F9E80 + thumb_func_end sub_0203BB50 + + thumb_func_start sub_0203BB70 +sub_0203BB70: ; 0x0203BB70 + push {r3, r4, r5, lr} + ldr r2, _0203BBB0 ; =0x020F9E80 + mov r4, #0 + add r3, r2, #0 +_0203BB78: + ldrh r5, [r2, #6] + cmp r1, r5 + bne _0203BBA2 + ldrh r5, [r3] + lsl r5, r5, #0x16 + lsr r5, r5, #0x1f + beq _0203BBA2 + ldr r0, [r0, #0xc] + bl sub_020503D0 + mov r2, #0x12 + add r3, r4, #0 + mul r3, r2 + ldr r2, _0203BBB0 ; =0x020F9E80 + mov r1, #1 + ldrh r2, [r2, r3] + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + bl sub_02066930 + pop {r3, r4, r5, pc} +_0203BBA2: + add r4, r4, #1 + add r2, #0x12 + add r3, #0x12 + cmp r4, #0x1e + blo _0203BB78 + pop {r3, r4, r5, pc} + nop +_0203BBB0: .word 0x020F9E80 + thumb_func_end sub_0203BB70 + + thumb_func_start sub_0203BBB4 +sub_0203BBB4: ; 0x0203BBB4 + push {r3, r4, r5, r6, r7, lr} + add r5, r1, #0 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203B3E4 + ldr r1, _0203BC08 ; =0x000001D1 + add r7, r0, #0 + cmp r5, r1 + bne _0203BC04 + ldr r0, [r4, #0xc] + bl Sav2_SysInfo_RTC_get + add r3, r0, #0 + ldr r5, [r3, #8] + ldr r1, _0203BC0C ; =0x020FA09C + mov r2, #0 +_0203BBD6: + lsl r6, r2, #1 + add r0, r1, r6 + ldrb r6, [r1, r6] + ldrb r0, [r0, #1] + cmp r5, r6 + bne _0203BBF8 + ldr r6, [r3, #0xc] + cmp r6, r0 + bne _0203BBF8 + add r0, r4, #0 + bl sub_02055670 + cmp r0, #0 + bne _0203BBF4 + mov r7, #8 +_0203BBF4: + add r0, r7, #0 + pop {r3, r4, r5, r6, r7, pc} +_0203BBF8: + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #8 + blo _0203BBD6 + add r0, r7, #0 +_0203BC04: + pop {r3, r4, r5, r6, r7, pc} + nop +_0203BC08: .word 0x000001D1 +_0203BC0C: .word 0x020FA09C + thumb_func_end sub_0203BBB4 + + thumb_func_start sub_0203BC10 +sub_0203BC10: ; 0x0203BC10 + push {r3, lr} + ldr r0, [r0, #0x20] + ldr r0, [r0] + bl sub_0203B36C + cmp r0, #0 + beq _0203BC22 + mov r0, #1 + pop {r3, pc} +_0203BC22: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203BC10 + + thumb_func_start sub_0203BC28 +sub_0203BC28: ; 0x0203BC28 + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_0203BE34 + add r4, r0, #0 + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_02066860 + cmp r0, #1 + bne _0203BC4E + add r0, r5, #0 + bl sub_0203BECC + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + b _0203BCAA +_0203BC4E: + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_02066870 + cmp r0, #1 + bne _0203BC6A + add r0, r5, #0 + bl sub_0203BED0 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + b _0203BCAA +_0203BC6A: + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_020668A0 + cmp r0, #1 + bne _0203BC86 + add r0, r5, #0 + bl sub_0203BED4 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + b _0203BCAA +_0203BC86: + add r0, r5, #0 + bl sub_02067584 + cmp r0, #1 + bne _0203BC9E + add r0, r5, #0 + bl sub_0203BED8 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + b _0203BCAA +_0203BC9E: + add r0, r5, #0 + bl sub_0203BE60 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] +_0203BCAA: + mov r0, #0x35 + mov r1, #0 + lsl r0, r0, #4 + str r1, [r4, r0] + ldr r0, [r5, #0x40] + bl sub_0205CF60 + cmp r0, #1 + bne _0203BCCA + ldr r0, [r5, #0x40] + bl sub_0205C654 + add r1, r0, #0 + ldr r0, [r5, #0x40] + bl sub_0205CFBC +_0203BCCA: + ldr r1, _0203BCD8 ; =sub_0203BEF0 + add r0, r5, #0 + add r2, r4, #0 + bl sub_020504F0 + pop {r3, r4, r5, pc} + nop +_0203BCD8: .word sub_0203BEF0 + thumb_func_end sub_0203BC28 + + thumb_func_start sub_0203BCDC +sub_0203BCDC: ; 0x0203BCDC + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_0203BE34 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203BEE0 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + mov r2, #1 + add r0, r1, #4 + str r2, [r4, r0] + ldr r0, [r5, #0x40] + bl sub_0205CF60 + cmp r0, #1 + bne _0203BD10 + ldr r0, [r5, #0x40] + bl sub_0205C654 + add r1, r0, #0 + ldr r0, [r5, #0x40] + bl sub_0205CFBC +_0203BD10: + ldr r1, _0203BD1C ; =sub_0203BEF0 + add r0, r5, #0 + add r2, r4, #0 + bl sub_020504F0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203BD1C: .word sub_0203BEF0 + thumb_func_end sub_0203BCDC + + thumb_func_start sub_0203BD20 +sub_0203BD20: ; 0x0203BD20 + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_0203BE34 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203BEE8 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + mov r2, #0 + add r0, r1, #4 + str r2, [r4, r0] + ldr r0, [r5, #0x40] + bl sub_0205CF60 + cmp r0, #1 + bne _0203BD54 + ldr r0, [r5, #0x40] + bl sub_0205C654 + add r1, r0, #0 + ldr r0, [r5, #0x40] + bl sub_0205CFBC +_0203BD54: + ldr r1, _0203BD60 ; =sub_0203BEF0 + add r0, r5, #0 + add r2, r4, #0 + bl sub_020504F0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203BD60: .word sub_0203BEF0 + thumb_func_end sub_0203BD20 + + thumb_func_start sub_0203BD64 +sub_0203BD64: ; 0x0203BD64 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, _0203BE2C ; =0x000005FC + bl PlaySE + bl sub_0203BE34 + add r4, r0, #0 + mov r0, #0x35 + mov r1, #0 + lsl r0, r0, #4 + str r1, [r4, r0] + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_02066860 + cmp r0, #1 + bne _0203BD98 + add r0, r5, #0 + bl sub_0203BECC + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + b _0203BE20 +_0203BD98: + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_02066870 + cmp r0, #1 + bne _0203BDB4 + add r0, r5, #0 + bl sub_0203BED0 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + b _0203BE20 +_0203BDB4: + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_020668A0 + cmp r0, #1 + bne _0203BDD0 + add r0, r5, #0 + bl sub_0203BED4 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + b _0203BE20 +_0203BDD0: + add r0, r5, #0 + bl sub_02067584 + cmp r0, #1 + bne _0203BDE8 + add r0, r5, #0 + bl sub_0203BED8 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + b _0203BE20 +_0203BDE8: + ldr r0, [r5, #0x70] + cmp r0, #3 + bne _0203BDFC + add r0, r5, #0 + bl sub_0203BEE8 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + b _0203BE20 +_0203BDFC: + cmp r0, #2 + bne _0203BE14 + add r0, r5, #0 + bl sub_0203BEE0 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] + mov r2, #1 + add r0, r1, #4 + str r2, [r4, r0] + b _0203BE20 +_0203BE14: + add r0, r5, #0 + bl sub_0203BE60 + mov r1, #0xd3 + lsl r1, r1, #2 + str r0, [r4, r1] +_0203BE20: + ldr r0, [r5, #0x10] + ldr r1, _0203BE30 ; =sub_0203BEF0 + add r2, r4, #0 + bl sub_02050510 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203BE2C: .word 0x000005FC +_0203BE30: .word sub_0203BEF0 + thumb_func_end sub_0203BD64 + + thumb_func_start sub_0203BE34 +sub_0203BE34: ; 0x0203BE34 + push {r4, lr} + mov r1, #0xe3 + mov r0, #0xb + lsl r1, r1, #2 + bl AllocFromHeap + add r4, r0, #0 + mov r2, #0xe3 + mov r0, #0 + add r1, r4, #0 + lsl r2, r2, #2 + bl MIi_CpuClearFast + mov r1, #0 + strh r1, [r4, #0x26] + mov r0, #0xe + strh r1, [r4, #0x24] + lsl r0, r0, #6 + str r1, [r4, r0] + add r0, r4, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203BE34 + + thumb_func_start sub_0203BE60 +sub_0203BE60: ; 0x0203BE60 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, [r5, #0xc] + mov r4, #0 + bl sub_020503D0 + bl sub_02066974 + cmp r0, #0 + bne _0203BE78 + mov r0, #1 + orr r4, r0 +_0203BE78: + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_0206695C + cmp r0, #0 + bne _0203BE8A + mov r0, #2 + orr r4, r0 +_0203BE8A: + ldr r0, [r5, #0xc] + bl sub_020503D0 + mov r1, #0 + bl sub_02066980 + cmp r0, #0 + bne _0203BE9E + mov r0, #4 + orr r4, r0 +_0203BE9E: + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_02066968 + cmp r0, #0 + bne _0203BEB2 + mov r0, #2 + lsl r0, r0, #8 + orr r4, r0 +_0203BEB2: + ldr r0, [r5, #0x20] + ldr r0, [r0] + bl sub_0203B5D8 + cmp r0, #1 + bne _0203BEC2 + mov r0, #6 + orr r4, r0 +_0203BEC2: + mov r0, #6 + lsl r0, r0, #6 + orr r0, r4 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203BE60 + + thumb_func_start sub_0203BECC +sub_0203BECC: ; 0x0203BECC + mov r0, #0x90 + bx lr + thumb_func_end sub_0203BECC + + thumb_func_start sub_0203BED0 +sub_0203BED0: ; 0x0203BED0 + mov r0, #0x94 + bx lr + thumb_func_end sub_0203BED0 + + thumb_func_start sub_0203BED4 +sub_0203BED4: ; 0x0203BED4 + mov r0, #0x94 + bx lr + thumb_func_end sub_0203BED4 + + thumb_func_start sub_0203BED8 +sub_0203BED8: ; 0x0203BED8 + ldr r0, _0203BEDC ; =0x00000395 + bx lr + .balign 4, 0 +_0203BEDC: .word 0x00000395 + thumb_func_end sub_0203BED8 + + thumb_func_start sub_0203BEE0 +sub_0203BEE0: ; 0x0203BEE0 + mov r0, #0x11 + lsl r0, r0, #4 + bx lr + .balign 4, 0 + thumb_func_end sub_0203BEE0 + + thumb_func_start sub_0203BEE8 +sub_0203BEE8: ; 0x0203BEE8 + ldr r0, _0203BEEC ; =0x00000391 + bx lr + .balign 4, 0 +_0203BEEC: .word 0x00000391 + thumb_func_end sub_0203BEE8 + + thumb_func_start sub_0203BEF0 +sub_0203BEF0: ; 0x0203BEF0 + push {r4, r5, r6, lr} + add r6, r0, #0 + bl sub_0205064C + add r4, r0, #0 + add r0, r6, #0 + bl sub_02050650 + add r5, r0, #0 + ldrh r1, [r5, #0x26] + cmp r1, #0x14 + bls _0203BF0A + b _0203C136 +_0203BF0A: + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0203BF16: ; jump table + .short _0203BF40 - _0203BF16 - 2 ; case 0 + .short _0203BF60 - _0203BF16 - 2 ; case 1 + .short _0203BF96 - _0203BF16 - 2 ; case 2 + .short _0203BFE2 - _0203BF16 - 2 ; case 3 + .short _0203BFF0 - _0203BF16 - 2 ; case 4 + .short _0203BFF8 - _0203BF16 - 2 ; case 5 + .short _0203C000 - _0203BF16 - 2 ; case 6 + .short _0203C008 - _0203BF16 - 2 ; case 7 + .short _0203C010 - _0203BF16 - 2 ; case 8 + .short _0203C018 - _0203BF16 - 2 ; case 9 + .short _0203C054 - _0203BF16 - 2 ; case 10 + .short _0203C06A - _0203BF16 - 2 ; case 11 + .short _0203C08A - _0203BF16 - 2 ; case 12 + .short _0203C0A6 - _0203BF16 - 2 ; case 13 + .short _0203C0C6 - _0203BF16 - 2 ; case 14 + .short _0203C020 - _0203BF16 - 2 ; case 15 + .short _0203C0E0 - _0203BF16 - 2 ; case 16 + .short _0203C11A - _0203BF16 - 2 ; case 17 + .short _0203C0D2 - _0203BF16 - 2 ; case 18 + .short _0203C128 - _0203BF16 - 2 ; case 19 + .short _0203C130 - _0203BF16 - 2 ; case 20 +_0203BF40: + ldr r0, [r4, #0x3c] + bl sub_0205F574 + add r0, r4, #0 + bl ov01_021F6B00 + cmp r0, #0 + beq _0203BF60 + mov r1, #0 + add r0, r4, #0 + add r2, r1, #0 + bl ov01_021F6A9C + mov r0, #2 + strh r0, [r5, #0x26] + b _0203C136 +_0203BF60: + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r4, #0 + add r1, r5, r1 + bl sub_020649B8 + mov r1, #0x37 + lsl r1, r1, #4 + add r0, r4, #0 + add r1, r5, r1 + bl sub_02067E10 + add r0, r6, #0 + bl sub_0203C14C + add r0, r4, #0 + add r0, #0xd2 + ldrb r1, [r0] + mov r0, #0x3f + add r4, #0xd2 + bic r1, r0 + mov r0, #1 + orr r0, r1 + strb r0, [r4] + mov r0, #3 + strh r0, [r5, #0x26] + b _0203C136 +_0203BF96: + add r0, r4, #0 + bl ov01_021F6B10 + cmp r0, #6 + bne _0203BFBA + add r0, r6, #0 + bl sub_0203C14C + add r0, r4, #0 + add r0, #0xd2 + ldrb r1, [r0] + mov r0, #0x3f + add r4, #0xd2 + bic r1, r0 + mov r0, #1 + orr r0, r1 + strb r0, [r4] + b _0203C136 +_0203BFBA: + add r0, r4, #0 + bl ov01_021F6B10 + cmp r0, #1 + bne _0203C02A + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r4, #0 + add r1, r5, r1 + bl sub_020649B8 + mov r1, #0x37 + lsl r1, r1, #4 + add r0, r4, #0 + add r1, r5, r1 + bl sub_02067E10 + mov r0, #3 + strh r0, [r5, #0x26] + b _0203C136 +_0203BFE2: + add r0, r6, #0 + bl sub_0203C47C + cmp r0, #0 + bne _0203C02A + mov r0, #0 + pop {r4, r5, r6, pc} +_0203BFF0: + add r0, r6, #0 + bl sub_0203C870 + b _0203C136 +_0203BFF8: + add r0, r6, #0 + bl sub_0203C8B0 + b _0203C136 +_0203C000: + add r0, r6, #0 + bl sub_0203D264 + b _0203C136 +_0203C008: + add r0, r6, #0 + bl sub_0203D288 + b _0203C136 +_0203C010: + add r0, r6, #0 + bl sub_0203D9E8 + b _0203C136 +_0203C018: + add r0, r6, #0 + bl sub_0203DAE4 + b _0203C136 +_0203C020: + add r0, r4, #0 + bl sub_020505C8 + cmp r0, #0 + bne _0203C02C +_0203C02A: + b _0203C136 +_0203C02C: + ldr r0, [r4, #0x3c] + bl sub_0205F574 + add r0, r6, #0 + bl sub_0203C14C + add r0, r4, #0 + add r0, #0xd2 + ldrb r1, [r0] + mov r0, #0x3f + add r4, #0xd2 + bic r1, r0 + mov r0, #1 + orr r1, r0 + strb r1, [r4] + bl ov01_021E636C + mov r0, #0x11 + strh r0, [r5, #0x26] + b _0203C136 +_0203C054: + add r0, r4, #0 + bl sub_020505C8 + cmp r0, #0 + beq _0203C136 + mov r0, #1 + bl ov01_021E636C + mov r0, #0xb + strh r0, [r5, #0x26] + b _0203C136 +_0203C06A: + bl sub_0200FB5C + cmp r0, #0 + beq _0203C136 + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203C69C + add r0, r5, #0 + bl FreeToHeap + ldr r0, [r4, #0x3c] + bl sub_0205F5A4 + mov r0, #1 + pop {r4, r5, r6, pc} +_0203C08A: + add r0, r4, #0 + bl sub_020505C8 + cmp r0, #0 + beq _0203C136 + ldr r0, [r4, #0x3c] + bl sub_0205F574 + mov r0, #1 + bl ov01_021E636C + mov r0, #0xd + strh r0, [r5, #0x26] + b _0203C136 +_0203C0A6: + bl sub_0200FB5C + cmp r0, #0 + beq _0203C136 + mov r2, #0xd5 + lsl r2, r2, #2 + ldr r1, [r5, r2] + add r2, #0x2c + ldr r2, [r5, r2] + add r0, r6, #0 + bl sub_02050510 + add r0, r5, #0 + bl FreeToHeap + b _0203C136 +_0203C0C6: + mov r1, #0xd5 + lsl r1, r1, #2 + ldr r1, [r5, r1] + add r0, r6, #0 + blx r1 + b _0203C136 +_0203C0D2: + bl FreeToHeap + ldr r0, [r4, #0x3c] + bl sub_0205F5A4 + mov r0, #1 + pop {r4, r5, r6, pc} +_0203C0E0: + add r1, r4, #0 + bl sub_0203C69C + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203C38C + add r0, r4, #0 + add r0, #0xd2 + ldrb r1, [r0] + mov r0, #0x3f + bic r1, r0 + mov r0, #2 + orr r1, r0 + add r0, r4, #0 + add r0, #0xd2 + strb r1, [r0] + ldr r0, [r4, #8] + mov r1, #3 + bl ScheduleBgTilemapBufferTransfer + add r0, r5, #0 + bl FreeToHeap + ldr r0, [r4, #0x3c] + bl sub_0205F5A4 + mov r0, #1 + pop {r4, r5, r6, pc} +_0203C11A: + bl sub_0200FB5C + cmp r0, #0 + beq _0203C136 + mov r0, #3 + strh r0, [r5, #0x26] + b _0203C136 +_0203C128: + add r0, r6, #0 + bl sub_0203D2EC + b _0203C136 +_0203C130: + add r0, r6, #0 + bl sub_0203D304 +_0203C136: + ldr r0, [r5, #0x20] + cmp r0, #0 + beq _0203C146 + mov r0, #0x75 + lsl r0, r0, #2 + ldr r0, [r5, r0] + bl sub_0202457C +_0203C146: + mov r0, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203BEF0 + + thumb_func_start sub_0203C14C +sub_0203C14C: ; 0x0203C14C + push {r4, r5, r6, lr} + sub sp, #0x10 + add r5, r0, #0 + bl sub_0205064C + add r4, r0, #0 + add r0, r5, #0 + bl sub_02050650 + add r5, r0, #0 + add r1, r5, #0 + add r2, r5, #0 + add r1, #0x30 + add r2, #0x3a + bl sub_0203C220 + add r6, r0, #0 + ldr r0, _0203C1F8 ; =0x00000000 + str r6, [r5, #0x2c] + strh r0, [r5, #0x24] + beq _0203C18E +_0203C176: + add r1, r4, #0 + add r1, #0x90 + ldr r2, [r1] + add r1, r5, r0 + add r1, #0x30 + ldrb r1, [r1] + cmp r2, r1 + bne _0203C188 + strh r0, [r5, #0x24] +_0203C188: + add r0, r0, #1 + cmp r0, r6 + blo _0203C176 +_0203C18E: + mov r1, #1 + str r1, [r5, #0x20] + mov r0, #0 + str r0, [sp] + str r0, [sp, #4] + str r1, [sp, #8] + mov r0, #0xb + str r0, [sp, #0xc] + ldr r2, [r4, #8] + mov r0, #0xe + mov r1, #0xc + mov r3, #3 + bl GfGfxLoader_LoadCharData + mov r0, #0x20 + str r0, [sp] + mov r0, #0xb + str r0, [sp, #4] + mov r0, #0xe + mov r1, #0xf + mov r2, #0 + lsl r3, r0, #5 + bl GfGfxLoader_GXLoadPal + mov r0, #0 + str r0, [sp] + str r0, [sp, #4] + mov r0, #1 + str r0, [sp, #8] + mov r0, #0xb + str r0, [sp, #0xc] + ldr r2, [r4, #8] + mov r0, #0xe + mov r1, #0xd + mov r3, #3 + bl GfGfxLoader_LoadScrnData + ldr r0, [r4, #0xc] + bl Sav2_PlayerData_GetProfileAddr + bl PlayerProfile_GetTrainerGender + add r3, r0, #0 + add r0, r5, #0 + add r5, #0x30 + lsl r3, r3, #0x18 + add r1, r5, #0 + add r2, r6, #0 + lsr r3, r3, #0x18 + bl sub_0203C6C8 + add sp, #0x10 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203C1F8: .word 0x00000000 + thumb_func_end sub_0203C14C + + thumb_func_start sub_0203C1FC +sub_0203C1FC: ; 0x0203C1FC + push {r3, r4} + ldr r4, [r2] + strb r3, [r0, r4] + mov r0, #0 + ldr r4, [sp, #8] + mvn r0, r0 + cmp r4, r0 + bne _0203C210 + ldr r0, [r2] + str r0, [sp, #8] +_0203C210: + ldr r0, [sp, #8] + strb r3, [r1, r0] + ldr r0, [r2] + add r0, r0, #1 + str r0, [r2] + pop {r3, r4} + bx lr + .balign 4, 0 + thumb_func_end sub_0203C1FC + + thumb_func_start sub_0203C220 +sub_0203C220: ; 0x0203C220 + push {r4, r5, r6, lr} + sub sp, #8 + add r5, r0, #0 + add r4, r1, #0 + mov r0, #0 + mov r1, #0xd3 + str r0, [sp, #4] + lsl r1, r1, #2 + add r6, r2, #0 + ldr r2, [r5, r1] + mov r1, #1 + lsl r1, r1, #8 + tst r1, r2 + bne _0203C24C + sub r0, r0, #1 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #8 + bl sub_0203C1FC +_0203C24C: + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r1, [r5, r0] + mov r0, #0x80 + tst r1, r0 + bne _0203C268 + sub r0, #0x81 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #7 + bl sub_0203C1FC +_0203C268: + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r1, [r5, r0] + mov r0, #1 + tst r1, r0 + bne _0203C284 + sub r0, r0, #2 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #0 + bl sub_0203C1FC +_0203C284: + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r1, [r5, r0] + mov r0, #2 + tst r1, r0 + bne _0203C2A0 + sub r0, r0, #3 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #1 + bl sub_0203C1FC +_0203C2A0: + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r1, [r5, r0] + mov r0, #4 + tst r1, r0 + bne _0203C2BC + sub r0, r0, #5 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #2 + bl sub_0203C1FC +_0203C2BC: + mov r0, #0xd3 + lsl r0, r0, #2 + mov r1, #2 + ldr r2, [r5, r0] + lsl r1, r1, #8 + tst r1, r2 + bne _0203C2F6 + add r0, r0, #4 + ldr r0, [r5, r0] + add r2, sp, #4 + cmp r0, #0 + beq _0203C2E6 + mov r0, #0 + mvn r0, r0 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + mov r3, #0xc + bl sub_0203C1FC + b _0203C2F6 +_0203C2E6: + mov r0, #0 + mvn r0, r0 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + mov r3, #0xb + bl sub_0203C1FC +_0203C2F6: + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r1, [r5, r0] + mov r0, #8 + tst r1, r0 + bne _0203C312 + sub r0, #9 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #3 + bl sub_0203C1FC +_0203C312: + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r1, [r5, r0] + mov r0, #0x10 + tst r1, r0 + bne _0203C32E + sub r0, #0x11 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #4 + bl sub_0203C1FC +_0203C32E: + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r1, [r5, r0] + mov r0, #0x20 + tst r1, r0 + bne _0203C34A + sub r0, #0x21 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #5 + bl sub_0203C1FC +_0203C34A: + mov r0, #0xd3 + lsl r0, r0, #2 + ldr r1, [r5, r0] + mov r0, #0x40 + tst r1, r0 + bne _0203C366 + sub r0, #0x41 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #6 + bl sub_0203C1FC +_0203C366: + mov r0, #7 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #9 + bl sub_0203C1FC + mov r0, #8 + str r0, [sp] + add r0, r4, #0 + add r1, r6, #0 + add r2, sp, #4 + mov r3, #0xa + bl sub_0203C1FC + ldr r0, [sp, #4] + add sp, #8 + pop {r4, r5, r6, pc} + thumb_func_end sub_0203C220 + + thumb_func_start sub_0203C38C +sub_0203C38C: ; 0x0203C38C + push {r3, r4, r5, lr} + sub sp, #0x10 + add r5, r0, #0 + add r4, r1, #0 + bl sub_0203C830 + mov r2, #0 + str r2, [sp] + mov r0, #0x20 + str r0, [sp, #4] + mov r0, #0x18 + str r0, [sp, #8] + str r2, [sp, #0xc] + ldr r0, [r4, #8] + mov r1, #3 + add r3, r2, #0 + bl FillBgTilemapRect + mov r0, #0 + str r0, [r5, #0x20] + add sp, #0x10 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203C38C + + thumb_func_start sub_0203C3B8 +sub_0203C3B8: ; 0x0203C3B8 + lsl r2, r1, #2 + ldr r1, _0203C3C4 ; =0x020FA0C4 + ldr r3, _0203C3C8 ; =sub_0203C3CC + ldr r1, [r1, r2] + bx r3 + nop +_0203C3C4: .word 0x020FA0C4 +_0203C3C8: .word sub_0203C3CC + thumb_func_end sub_0203C3B8 + + thumb_func_start sub_0203C3CC +sub_0203C3CC: ; 0x0203C3CC + push {r3, lr} + cmp r1, #7 + bhi _0203C45A + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0203C3DE: ; jump table + .short _0203C3EE - _0203C3DE - 2 ; case 0 + .short _0203C3FA - _0203C3DE - 2 ; case 1 + .short _0203C406 - _0203C3DE - 2 ; case 2 + .short _0203C414 - _0203C3DE - 2 ; case 3 + .short _0203C420 - _0203C3DE - 2 ; case 4 + .short _0203C42E - _0203C3DE - 2 ; case 5 + .short _0203C43C - _0203C3DE - 2 ; case 6 + .short _0203C44A - _0203C3DE - 2 ; case 7 +_0203C3EE: + ldr r0, [r0, #0xc] + bl sub_020503D0 + bl sub_02066974 + pop {r3, pc} +_0203C3FA: + ldr r0, [r0, #0xc] + bl sub_020503D0 + bl sub_0206695C + pop {r3, pc} +_0203C406: + ldr r0, [r0, #0xc] + bl sub_020503D0 + mov r1, #0 + bl sub_02066980 + pop {r3, pc} +_0203C414: + ldr r0, [r0, #0xc] + bl sub_020503D0 + bl sub_02066968 + pop {r3, pc} +_0203C420: + ldr r0, [r0, #0xc] + bl sub_020503D0 + mov r1, #1 + bl sub_02066980 + pop {r3, pc} +_0203C42E: + ldr r0, [r0, #0xc] + bl sub_020503D0 + mov r1, #2 + bl sub_02066980 + pop {r3, pc} +_0203C43C: + ldr r0, [r0, #0xc] + bl sub_020503D0 + mov r1, #3 + bl sub_02066980 + pop {r3, pc} +_0203C44A: + ldr r0, [r0, #0xc] + bl sub_0203B9C4 + bl sub_0203B9B4 + bl sub_0205C7C8 + pop {r3, pc} +_0203C45A: + mov r0, #1 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203C3CC + + thumb_func_start sub_0203C460 +sub_0203C460: ; 0x0203C460 + push {r3, lr} + add r1, r0, #0 + add r1, #0xe0 + ldr r1, [r1] + cmp r1, #4 + beq _0203C47A + cmp r1, #0xb + beq _0203C47A + mov r1, #0x45 + lsl r1, r1, #2 + ldr r0, [r0, r1] + bl sub_02092FA8 +_0203C47A: + pop {r3, pc} + thumb_func_end sub_0203C460 + + thumb_func_start sub_0203C47C +sub_0203C47C: ; 0x0203C47C + push {r4, r5, r6, lr} + add r6, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r6, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl ov01_021F6B00 + cmp r0, #0 + bne _0203C4FC + add r0, r5, #0 + bl ov01_021F6B10 + cmp r0, #1 + bne _0203C4FC + ldr r0, _0203C500 ; =gMain + mov r1, #1 + ldr r0, [r0, #0x48] + tst r1, r0 + beq _0203C4C6 + add r0, r6, #0 + add r1, r5, #0 + add r2, r4, #0 + bl sub_0203C508 + cmp r0, #0 + bne _0203C4BE + mov r0, #0 + pop {r4, r5, r6, pc} +_0203C4BE: + add r0, r5, #0 + bl sub_0203C460 + b _0203C4FC +_0203C4C6: + add r1, r5, #0 + add r1, #0xd0 + ldrh r1, [r1] + cmp r1, #0 + bne _0203C4E4 + ldr r1, _0203C504 ; =0x00000402 + tst r0, r1 + beq _0203C4FC + mov r0, #0x25 + lsl r0, r0, #6 + bl PlaySE + mov r0, #0x10 + strh r0, [r4, #0x26] + b _0203C4FC +_0203C4E4: + add r0, r6, #0 + add r1, r5, #0 + add r2, r4, #0 + bl sub_0203C5A4 + cmp r0, #0 + bne _0203C4F6 + mov r0, #0 + pop {r4, r5, r6, pc} +_0203C4F6: + add r0, r5, #0 + bl sub_0203C460 +_0203C4FC: + mov r0, #1 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203C500: .word gMain +_0203C504: .word 0x00000402 + thumb_func_end sub_0203C47C + + thumb_func_start sub_0203C508 +sub_0203C508: ; 0x0203C508 + push {r3, r4, r5, r6, r7, lr} + add r5, r1, #0 + add r7, r0, #0 + add r0, r5, #0 + add r0, #0xd3 + add r4, r2, #0 + ldrb r1, [r0] + ldr r0, [r4, #0x2c] + cmp r1, r0 + bhs _0203C596 + ldr r0, _0203C59C ; =0x000005DC + bl PlaySE + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + mov r1, #0 + bl sub_02018410 + add r0, r5, #0 + add r0, #0xd3 + ldrb r0, [r0] + str r0, [r4, #0x28] + add r0, r4, r0 + add r0, #0x3a + ldrb r1, [r0] + ldr r0, _0203C5A0 ; =0x020FA0F8 + lsl r2, r1, #3 + ldr r2, [r0, r2] + mov r0, #1 + mvn r0, r0 + cmp r2, r0 + bne _0203C550 + mov r0, #0x10 + strh r0, [r4, #0x26] + b _0203C596 +_0203C550: + add r0, r0, #1 + cmp r2, r0 + beq _0203C596 + add r0, r5, #0 + bl sub_0203C3B8 + cmp r0, #0 + beq _0203C596 + ldr r0, [r4, #0x28] + add r0, r4, r0 + add r0, #0x3a + ldrb r0, [r0] + lsl r1, r0, #3 + ldr r0, _0203C5A0 ; =0x020FA0F8 + ldr r6, [r0, r1] + add r0, r5, #0 + mov r1, #0 + bl sub_0203DF64 + add r0, r5, #0 + bl ov01_021F6B50 + add r0, r5, #0 + mov r1, #0 + add r0, #0xd0 + strh r1, [r0] + ldr r0, [r4, #0x28] + add r5, #0xe0 + add r0, r4, r0 + add r0, #0x3a + ldrb r0, [r0] + str r0, [r5] + add r0, r7, #0 + blx r6 + pop {r3, r4, r5, r6, r7, pc} +_0203C596: + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203C59C: .word 0x000005DC +_0203C5A0: .word 0x020FA0F8 + thumb_func_end sub_0203C508 + + thumb_func_start sub_0203C5A4 +sub_0203C5A4: ; 0x0203C5A4 + push {r3, r4, r5, r6, r7, lr} + add r4, r1, #0 + add r7, r0, #0 + add r0, r4, #0 + add r0, #0xd0 + ldrh r0, [r0] + add r5, r2, #0 + cmp r0, #0 + beq _0203C5C2 + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r4, r0 + mov r1, #1 + bl sub_02018410 +_0203C5C2: + add r0, r4, #0 + add r0, #0xd0 + ldrh r0, [r0] + cmp r0, #0xa + bhi _0203C690 + add r1, r0, r0 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0203C5D8: ; jump table + .short _0203C690 - _0203C5D8 - 2 ; case 0 + .short _0203C5EE - _0203C5D8 - 2 ; case 1 + .short _0203C602 - _0203C5D8 - 2 ; case 2 + .short _0203C602 - _0203C5D8 - 2 ; case 3 + .short _0203C602 - _0203C5D8 - 2 ; case 4 + .short _0203C602 - _0203C5D8 - 2 ; case 5 + .short _0203C602 - _0203C5D8 - 2 ; case 6 + .short _0203C602 - _0203C5D8 - 2 ; case 7 + .short _0203C602 - _0203C5D8 - 2 ; case 8 + .short _0203C602 - _0203C5D8 - 2 ; case 9 + .short _0203C602 - _0203C5D8 - 2 ; case 10 +_0203C5EE: + mov r0, #0x25 + lsl r0, r0, #6 + bl PlaySE + mov r0, #0x10 + strh r0, [r5, #0x26] + mov r0, #0 + add r4, #0xd0 + strh r0, [r4] + b _0203C690 +_0203C602: + sub r1, r0, #2 + add r0, r4, #0 + add r0, #0xd3 + strb r1, [r0] + add r0, r4, #0 + add r0, #0xd3 + ldrb r1, [r0] + ldr r0, [r5, #0x2c] + cmp r1, r0 + bhs _0203C690 + ldr r0, _0203C694 ; =0x000005DC + bl PlaySE + add r0, r4, #0 + add r0, #0xd3 + ldrb r0, [r0] + str r0, [r5, #0x28] + add r0, r5, r0 + add r0, #0x3a + ldrb r1, [r0] + ldr r0, _0203C698 ; =0x020FA0F8 + lsl r2, r1, #3 + ldr r2, [r0, r2] + mov r0, #1 + mvn r0, r0 + cmp r2, r0 + bne _0203C644 + mov r0, #0x10 + strh r0, [r5, #0x26] + mov r0, #0 + add r4, #0xd0 + strh r0, [r4] + b _0203C690 +_0203C644: + add r0, r0, #1 + cmp r2, r0 + beq _0203C690 + add r0, r4, #0 + bl sub_0203C3B8 + cmp r0, #0 + beq _0203C68A + ldr r0, [r5, #0x28] + add r0, r5, r0 + add r0, #0x3a + ldrb r0, [r0] + lsl r1, r0, #3 + ldr r0, _0203C698 ; =0x020FA0F8 + ldr r6, [r0, r1] + add r0, r4, #0 + mov r1, #0 + add r0, #0xd0 + strh r1, [r0] + add r0, r4, #0 + mov r1, #1 + bl sub_0203DF64 + add r0, r4, #0 + bl ov01_021F6B50 + ldr r0, [r5, #0x28] + add r4, #0xe0 + add r0, r5, r0 + add r0, #0x3a + ldrb r0, [r0] + str r0, [r4] + add r0, r7, #0 + blx r6 + pop {r3, r4, r5, r6, r7, pc} +_0203C68A: + mov r0, #0 + add r4, #0xd0 + strh r0, [r4] +_0203C690: + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203C694: .word 0x000005DC +_0203C698: .word 0x020FA0F8 + thumb_func_end sub_0203C5A4 + + thumb_func_start sub_0203C69C +sub_0203C69C: ; 0x0203C69C + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + bl sub_02035650 + cmp r0, #0 + beq _0203C6C6 + mov r0, #0x35 + lsl r0, r0, #4 + ldr r0, [r5, r0] + cmp r0, #0 + beq _0203C6C6 + add r4, #0x84 + ldr r0, [r4] + bl sub_0205AD0C + bl sub_02037FF0 + mov r0, #0 + bl sub_0205A904 +_0203C6C6: + pop {r3, r4, r5, pc} + thumb_func_end sub_0203C69C + + thumb_func_start sub_0203C6C8 +sub_0203C6C8: ; 0x0203C6C8 + push {r4, r5, r6, r7, lr} + sub sp, #0x5c + mov r1, #0x76 + add r5, r0, #0 + lsl r1, r1, #2 + mov r0, #1 + add r1, r5, r1 + mov r2, #0xb + bl sub_02009F40 + mov r1, #0x75 + lsl r1, r1, #2 + mov r7, #3 + str r0, [r5, r1] + mov r6, #0 + add r4, r5, #0 + lsl r7, r7, #8 +_0203C6EA: + mov r0, #1 + add r1, r6, #0 + mov r2, #0xb + bl sub_0200A090 + str r0, [r4, r7] + add r6, r6, #1 + add r4, r4, #4 + cmp r6, #4 + blt _0203C6EA + mov r0, #0 + str r0, [sp] + mov r3, #1 + str r3, [sp, #4] + mov r0, #0xb + str r0, [sp, #8] + mov r0, #3 + lsl r0, r0, #8 + ldr r0, [r5, r0] + mov r1, #0xe + mov r2, #0x40 + bl sub_0200A1D8 + mov r1, #0x31 + lsl r1, r1, #4 + str r0, [r5, r1] + mov r3, #0 + str r3, [sp] + mov r0, #1 + str r0, [sp, #4] + str r0, [sp, #8] + mov r0, #0xb + sub r1, #0xc + str r0, [sp, #0xc] + ldr r0, [r5, r1] + mov r1, #0xe + mov r2, #0x3d + bl sub_0200A234 + mov r1, #0xc5 + lsl r1, r1, #2 + str r0, [r5, r1] + mov r0, #0 + str r0, [sp] + mov r0, #2 + str r0, [sp, #4] + mov r0, #0xb + sub r1, #0xc + str r0, [sp, #8] + ldr r0, [r5, r1] + mov r1, #0xe + mov r2, #0x3e + mov r3, #1 + bl sub_0200A294 + mov r1, #0xc6 + lsl r1, r1, #2 + str r0, [r5, r1] + mov r0, #0 + str r0, [sp] + mov r0, #3 + str r0, [sp, #4] + mov r0, #0xb + sub r1, #0xc + str r0, [sp, #8] + ldr r0, [r5, r1] + mov r1, #0xe + mov r2, #0x3f + mov r3, #1 + bl sub_0200A294 + mov r1, #0xc7 + lsl r1, r1, #2 + str r0, [r5, r1] + sub r1, #0xc + ldr r0, [r5, r1] + bl sub_0200ADA4 + mov r0, #0xc5 + lsl r0, r0, #2 + ldr r0, [r5, r0] + bl sub_0200B00C + mov r0, #0xc5 + lsl r0, r0, #2 + ldr r0, [r5, r0] + bl sub_0200A740 + mov r1, #0 + mov r2, #3 + str r1, [sp] + sub r0, r1, #1 + str r0, [sp, #4] + str r0, [sp, #8] + str r1, [sp, #0xc] + str r1, [sp, #0x10] + lsl r2, r2, #8 + ldr r0, [r5, r2] + add r3, r1, #0 + str r0, [sp, #0x14] + add r0, r2, #4 + ldr r0, [r5, r0] + str r0, [sp, #0x18] + add r0, r2, #0 + add r0, #8 + ldr r0, [r5, r0] + str r0, [sp, #0x1c] + add r0, r2, #0 + add r0, #0xc + ldr r0, [r5, r0] + add r2, #0x20 + str r0, [sp, #0x20] + str r1, [sp, #0x24] + add r0, r5, r2 + add r2, r1, #0 + str r1, [sp, #0x28] + bl sub_02009D48 + mov r0, #0x75 + lsl r0, r0, #2 + ldr r0, [r5, r0] + mov r1, #0x32 + mov r2, #1 + lsl r2, r2, #0xc + mov r3, #0 + lsl r1, r1, #4 + str r0, [sp, #0x2c] + add r0, r5, r1 + str r0, [sp, #0x30] + str r3, [sp, #0x3c] + str r2, [sp, #0x40] + str r2, [sp, #0x44] + str r2, [sp, #0x48] + add r2, sp, #0x2c + strh r3, [r2, #0x20] + str r0, [sp, #0x30] + lsl r0, r1, #9 + str r0, [sp, #0x34] + mov r0, #9 + mov r2, #1 + lsl r0, r0, #0x10 + str r2, [sp, #0x54] + mov r2, #0xb + str r0, [sp, #0x38] + add r0, sp, #0x2c + str r3, [sp, #0x50] + str r2, [sp, #0x58] + bl sub_02024624 + mov r1, #0xd1 + lsl r1, r1, #2 + str r0, [r5, r1] + ldr r0, [r5, r1] + mov r1, #1 + bl sub_0202484C + mov r0, #0x10 + mov r1, #1 + bl GX_EngineAToggleLayers + add sp, #0x5c + pop {r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203C6C8 + + thumb_func_start sub_0203C830 +sub_0203C830: ; 0x0203C830 + push {r4, r5, r6, lr} + add r5, r0, #0 + mov r0, #0x31 + lsl r0, r0, #4 + ldr r0, [r5, r0] + bl sub_0200AEB0 + mov r0, #0xc5 + lsl r0, r0, #2 + ldr r0, [r5, r0] + bl sub_0200B0A8 + mov r6, #3 + mov r4, #0 + lsl r6, r6, #8 +_0203C84E: + lsl r0, r4, #2 + add r0, r5, r0 + ldr r0, [r0, r6] + bl sub_0200A0D0 + add r0, r4, #1 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + cmp r4, #4 + blo _0203C84E + mov r0, #0x75 + lsl r0, r0, #2 + ldr r0, [r5, r0] + bl sub_02024504 + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203C830 + + thumb_func_start sub_0203C870 +sub_0203C870: ; 0x0203C870 + push {r4, r5, r6, lr} + add r5, r0, #0 + bl sub_0200FB5C + cmp r0, #0 + beq _0203C8AE + add r0, r5, #0 + bl sub_0205064C + add r6, r0, #0 + add r0, r5, #0 + bl sub_02050650 + add r1, r6, #0 + add r4, r0, #0 + bl sub_0203C38C + add r0, r6, #0 + add r0, #0xd2 + ldrb r1, [r0] + mov r0, #0x3f + add r6, #0xd2 + bic r1, r0 + strb r1, [r6] + mov r1, #0xd5 + lsl r1, r1, #2 + ldr r1, [r4, r1] + add r0, r5, #0 + blx r1 + mov r0, #5 + strh r0, [r4, #0x26] +_0203C8AE: + pop {r4, r5, r6, pc} + thumb_func_end sub_0203C870 + + thumb_func_start sub_0203C8B0 +sub_0203C8B0: ; 0x0203C8B0 + push {r4, r5, r6, lr} + add r6, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r6, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_020505A0 + cmp r0, #0 + bne _0203C8EE + mov r1, #0xd5 + lsl r1, r1, #2 + ldr r1, [r4, r1] + add r0, r6, #0 + blx r1 + ldrh r0, [r4, #0x26] + cmp r0, #0xf + bne _0203C8EE + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + bl sub_020183F0 + cmp r0, #1 + bne _0203C8EE + mov r0, #0xa + strh r0, [r4, #0x26] +_0203C8EE: + pop {r4, r5, r6, pc} + thumb_func_end sub_0203C8B0 + + thumb_func_start sub_0203C8F0 +sub_0203C8F0: ; 0x0203C8F0 + mov r2, #0xd5 + lsl r2, r2, #2 + str r1, [r0, r2] + mov r1, #5 + strh r1, [r0, #0x26] + bx lr + thumb_func_end sub_0203C8F0 + + thumb_func_start sub_0203C8FC +sub_0203C8FC: ; 0x0203C8FC + push {r4, lr} + bl sub_02050650 + add r4, r0, #0 + mov r0, #0 + bl ov01_021E636C + mov r0, #0xd5 + ldr r1, _0203C91C ; =sub_0203C920 + lsl r0, r0, #2 + str r1, [r4, r0] + mov r0, #4 + strh r0, [r4, #0x26] + mov r0, #1 + pop {r4, pc} + nop +_0203C91C: .word sub_0203C920 + thumb_func_end sub_0203C8FC + + thumb_func_start sub_0203C920 +sub_0203C920: ; 0x0203C920 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + add r5, r0, #0 + bl sub_0205064C + add r4, r0, #0 + add r0, r5, #0 + bl sub_02050650 + str r0, [sp] + ldr r0, [r4, #0xc] + bl sub_0203B9C4 + add r5, r0, #0 + bl sub_0203B958 + str r0, [sp, #4] + add r0, r5, #0 + bl sub_0203B964 + str r0, [sp, #8] + mov r0, #0xb + mov r1, #0x1c + bl AllocFromHeap + mov r1, #0 + mov r2, #0x1c + add r5, r0, #0 + bl MIi_CpuFill8 + ldr r0, [r4, #0xc] + bl sub_0202A634 + str r0, [r5] + ldr r0, [r4, #0xc] + bl Sav2_PlayerData_GetProfileAddr + str r0, [r5, #4] + add r0, r4, #0 + add r0, #0xa8 + ldr r0, [r0] + str r0, [r5, #8] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r4, r0 + str r0, [r5, #0xc] + ldr r0, [r4, #0x40] + bl sub_0205C67C + add r6, r0, #0 + ldr r0, [r4, #0x40] + bl sub_0205C688 + add r7, r0, #0 + asr r1, r6, #4 + asr r2, r7, #4 + lsr r1, r1, #0x1b + lsr r2, r2, #0x1b + add r1, r6, r1 + add r2, r7, r2 + ldr r0, [r4, #0x30] + asr r1, r1, #5 + asr r2, r2, #5 + bl sub_0203B024 + strh r0, [r5, #0x1a] + ldr r0, [sp, #4] + ldr r0, [r0] + strh r0, [r5, #0x18] + ldrh r0, [r5, #0x1a] + bl sub_0203B564 + cmp r0, #0 + beq _0203C9BA + str r6, [r5, #0x10] + str r7, [r5, #0x14] + b _0203C9F4 +_0203C9BA: + ldrh r0, [r5, #0x1a] + add r1, sp, #0xc + add r1, #2 + add r2, sp, #0xc + bl sub_0203B518 + add r1, sp, #0xc + mov r0, #2 + ldrsh r2, [r1, r0] + cmp r2, #0 + bne _0203C9E6 + mov r0, #0 + ldrsh r0, [r1, r0] + cmp r0, #0 + bne _0203C9E6 + ldr r0, [sp, #8] + ldr r0, [r0, #8] + str r0, [r5, #0x10] + ldr r0, [sp, #8] + ldr r0, [r0, #0xc] + str r0, [r5, #0x14] + b _0203C9F4 +_0203C9E6: + lsl r0, r2, #5 + str r0, [r5, #0x10] + add r1, sp, #0xc + mov r0, #0 + ldrsh r0, [r1, r0] + lsl r0, r0, #5 + str r0, [r5, #0x14] +_0203C9F4: + add r0, r4, #0 + add r1, r5, #0 + bl sub_0203F7F4 + mov r1, #0xe + ldr r0, [sp] + lsl r1, r1, #6 + str r5, [r0, r1] + ldr r2, _0203CA10 ; =sub_0203CA14 + sub r1, #0x2c + str r2, [r0, r1] + mov r0, #0 + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203CA10: .word sub_0203CA14 + thumb_func_end sub_0203C920 + + thumb_func_start sub_0203CA14 +sub_0203CA14: ; 0x0203CA14 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_020505C0 + mov r0, #0xe + lsl r0, r0, #6 + ldr r1, [r4, r0] + cmp r1, #0 + beq _0203CA3C + mov r0, #0xb + bl FreeToHeapExplicit +_0203CA3C: + mov r0, #0xf + strh r0, [r4, #0x26] + mov r0, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203CA14 + + thumb_func_start sub_0203CA44 +sub_0203CA44: ; 0x0203CA44 + push {r4, lr} + bl sub_02050650 + add r4, r0, #0 + mov r0, #0 + bl ov01_021E636C + mov r0, #0xd5 + ldr r1, _0203CA64 ; =sub_0203CA68 + lsl r0, r0, #2 + str r1, [r4, r0] + mov r0, #4 + strh r0, [r4, #0x26] + mov r0, #1 + pop {r4, pc} + nop +_0203CA64: .word sub_0203CA68 + thumb_func_end sub_0203CA44 + + thumb_func_start sub_0203CA68 +sub_0203CA68: ; 0x0203CA68 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + mov r1, #0x37 + add r4, r0, #0 + lsl r1, r1, #4 + add r0, r5, #0 + add r1, r4, r1 + mov r2, #0 + bl sub_0203E550 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r0, _0203CA98 ; =sub_0203CA9C + sub r1, #0x2c + str r0, [r4, r1] + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203CA98: .word sub_0203CA9C + thumb_func_end sub_0203CA68 + + thumb_func_start sub_0203CA9C +sub_0203CA9C: ; 0x0203CA9C + push {r4, r5, r6, r7, lr} + sub sp, #0xc + add r7, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r7, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xb + mov r1, #0x44 + bl AllocFromHeap + mov r1, #0xe + lsl r1, r1, #6 + ldr r1, [r4, r1] + mov r2, #0x44 + add r6, r0, #0 + bl memcpy + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + bl FreeToHeap + add r0, r6, #0 + add r0, #0x27 + ldrb r0, [r0] + cmp r0, #0x18 + bls _0203CADC + b _0203CE6C +_0203CADC: + add r1, r0, r0 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0203CAE8: ; jump table + .short _0203CE6C - _0203CAE8 - 2 ; case 0 + .short _0203CB1A - _0203CAE8 - 2 ; case 1 + .short _0203CE6C - _0203CAE8 - 2 ; case 2 + .short _0203CD68 - _0203CAE8 - 2 ; case 3 + .short _0203CBA8 - _0203CAE8 - 2 ; case 4 + .short _0203CC3E - _0203CAE8 - 2 ; case 5 + .short _0203CCD4 - _0203CAE8 - 2 ; case 6 + .short _0203CD2A - _0203CAE8 - 2 ; case 7 + .short _0203CDCA - _0203CAE8 - 2 ; case 8 + .short _0203CDF6 - _0203CAE8 - 2 ; case 9 + .short _0203CE50 - _0203CAE8 - 2 ; case 10 + .short _0203CE2A - _0203CAE8 - 2 ; case 11 + .short _0203CE2A - _0203CAE8 - 2 ; case 12 + .short _0203CE2A - _0203CAE8 - 2 ; case 13 + .short _0203CE2A - _0203CAE8 - 2 ; case 14 + .short _0203CE2A - _0203CAE8 - 2 ; case 15 + .short _0203CE2A - _0203CAE8 - 2 ; case 16 + .short _0203CE2A - _0203CAE8 - 2 ; case 17 + .short _0203CE2A - _0203CAE8 - 2 ; case 18 + .short _0203CE2A - _0203CAE8 - 2 ; case 19 + .short _0203CE2A - _0203CAE8 - 2 ; case 20 + .short _0203CE2A - _0203CAE8 - 2 ; case 21 + .short _0203CE2A - _0203CAE8 - 2 ; case 22 + .short _0203CE2A - _0203CAE8 - 2 ; case 23 + .short _0203CE2A - _0203CAE8 - 2 ; case 24 +_0203CB1A: + mov r0, #0xb + mov r1, #0x3c + bl AllocFromHeap + add r7, r0, #0 + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + str r0, [r7] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r7, #4] + mov r0, #1 + strb r0, [r7, #0x11] + add r0, r6, #0 + add r0, #0x26 + ldrb r0, [r0] + strb r0, [r7, #0x14] + ldr r0, [r7] + bl GetPartyCount + strb r0, [r7, #0x13] + mov r0, #0 + strh r0, [r7, #0x18] + strb r0, [r7, #0x12] + ldr r0, [r5, #0xc] + bl sub_0202D95C + str r0, [r7, #0x20] + ldr r0, [r5, #0xc] + bl sub_02074910 + str r0, [r7, #0x1c] + ldr r0, [r5, #0xc] + bl sub_02088288 + str r0, [r7, #0x2c] + mov r0, #0 + str r0, [r7, #0x28] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r7, #0x30] + ldr r0, [r5, #0xc] + bl sub_0208828C + str r0, [r7, #0x34] + ldr r1, _0203CEDC ; =0x020FA0B0 + add r0, r7, #0 + bl sub_02089D40 + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetProfileAddr + add r1, r0, #0 + add r0, r7, #0 + bl sub_0208AD34 + add r0, r5, #0 + add r1, r7, #0 + bl sub_0203E4EC + mov r0, #0xe + lsl r0, r0, #6 + str r7, [r4, r0] + ldr r1, _0203CEE0 ; =sub_0203D580 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203CEFE +_0203CBA8: + mov r0, #0xb + mov r1, #0x3c + bl AllocFromHeap + add r7, r0, #0 + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + str r0, [r7] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r7, #4] + mov r1, #1 + add r0, r6, #0 + strb r1, [r7, #0x11] + add r0, #0x26 + ldrb r0, [r0] + strb r0, [r7, #0x14] + strb r1, [r7, #0x13] + ldrh r0, [r6, #0x2a] + strh r0, [r7, #0x18] + mov r0, #2 + strb r0, [r7, #0x12] + ldr r0, [r5, #0xc] + bl sub_02074910 + str r0, [r7, #0x1c] + ldr r0, [r5, #0xc] + bl sub_02088288 + str r0, [r7, #0x2c] + mov r0, #0 + str r0, [r7, #0x28] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r7, #0x30] + ldr r0, [r5, #0xc] + bl sub_0208828C + str r0, [r7, #0x34] + ldr r1, _0203CEE4 ; =0x020FA0AC + add r0, r7, #0 + bl sub_02089D40 + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetProfileAddr + add r1, r0, #0 + add r0, r7, #0 + bl sub_0208AD34 + add r0, r5, #0 + add r1, r7, #0 + bl sub_0203E4EC + mov r0, #0xb + mov r1, #4 + bl AllocFromHeap + ldrh r1, [r6, #0x28] + strh r1, [r0] + mov r1, #0 + strh r1, [r0, #2] + mov r1, #0xe1 + lsl r1, r1, #2 + str r0, [r4, r1] + sub r0, r1, #4 + str r7, [r4, r0] + ldr r1, _0203CEE0 ; =sub_0203D580 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203CEFE +_0203CC3E: + mov r0, #0xb + mov r1, #0x3c + bl AllocFromHeap + add r7, r0, #0 + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + str r0, [r7] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r7, #4] + mov r1, #1 + add r0, r6, #0 + strb r1, [r7, #0x11] + add r0, #0x26 + ldrb r0, [r0] + strb r0, [r7, #0x14] + strb r1, [r7, #0x13] + ldrh r0, [r6, #0x2a] + strh r0, [r7, #0x18] + mov r0, #2 + strb r0, [r7, #0x12] + ldr r0, [r5, #0xc] + bl sub_02074910 + str r0, [r7, #0x1c] + ldr r0, [r5, #0xc] + bl sub_02088288 + str r0, [r7, #0x2c] + mov r0, #0 + str r0, [r7, #0x28] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r7, #0x30] + ldr r0, [r5, #0xc] + bl sub_0208828C + str r0, [r7, #0x34] + ldr r1, _0203CEE4 ; =0x020FA0AC + add r0, r7, #0 + bl sub_02089D40 + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetProfileAddr + add r1, r0, #0 + add r0, r7, #0 + bl sub_0208AD34 + add r0, r5, #0 + add r1, r7, #0 + bl sub_0203E4EC + mov r0, #0xb + mov r1, #4 + bl AllocFromHeap + mov r1, #0 + strh r1, [r0] + ldr r1, [r6, #0x38] + strh r1, [r0, #2] + mov r1, #0xe1 + lsl r1, r1, #2 + str r0, [r4, r1] + sub r0, r1, #4 + str r7, [r4, r0] + ldr r1, _0203CEE0 ; =sub_0203D580 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203CEFE +_0203CCD4: + ldrh r0, [r6, #0x28] + bl sub_02078078 + add r3, r0, #0 + mov r0, #0xb + add r2, r6, #0 + str r0, [sp] + add r2, #0x26 + ldrb r2, [r2] + add r0, r5, #0 + mov r1, #2 + bl sub_0203EFEC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + add r0, r6, #0 + add r0, #0x24 + ldrb r0, [r0] + cmp r0, #0xa + ldrh r0, [r6, #0x28] + bne _0203CD0E + add r2, r6, #0 + add r2, #0x26 + ldrb r2, [r2] + mov r1, #0 + bl sub_0203D818 + b _0203CD1A +_0203CD0E: + add r2, r6, #0 + add r2, #0x26 + ldrb r2, [r2] + mov r1, #1 + bl sub_0203D818 +_0203CD1A: + mov r1, #0xe1 + lsl r1, r1, #2 + str r0, [r4, r1] + ldr r1, _0203CEE8 ; =sub_0203D830 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203CEFE +_0203CD2A: + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + add r1, r6, #0 + add r1, #0x26 + ldrb r1, [r1] + bl GetPartyMonByIndex + add r1, r0, #0 + add r0, r5, #0 + mov r2, #0xb + bl sub_0203F050 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + add r2, r6, #0 + add r2, #0x26 + ldrh r0, [r6, #0x28] + ldrb r2, [r2] + mov r1, #2 + bl sub_0203D818 + mov r1, #0xe1 + lsl r1, r1, #2 + str r0, [r4, r1] + ldr r1, _0203CEE8 ; =sub_0203D830 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203CEFE +_0203CD68: + mov r0, #0xb + mov r1, #4 + bl AllocFromHeap + add r1, r6, #0 + add r1, #0x26 + ldrb r1, [r1] + str r1, [r0] + mov r1, #0xe1 + lsl r1, r1, #2 + str r0, [r4, r1] + ldr r0, [r5, #0xc] + bl sub_0207879C + add r7, r0, #0 + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetProfileAddr + ldr r1, _0203CEEC ; =0x020FA0B8 + add r0, r7, #0 + mov r2, #0xb + bl sub_02078644 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + add r3, r5, #0 + str r0, [sp] + add r3, #0x94 + ldr r0, [r4, r1] + ldr r1, [r5, #0xc] + ldr r3, [r3] + mov r2, #1 + bl sub_0207789C + mov r1, #0xe + lsl r1, r1, #6 + ldr r1, [r4, r1] + add r0, r5, #0 + bl sub_0203E3D4 + ldr r1, _0203CEF0 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203CEFE +_0203CDCA: + mov r0, #0xb + mov r1, #0xc + bl AllocFromHeap + ldrh r1, [r6, #0x28] + strh r1, [r0, #2] + mov r1, #3 + strb r1, [r0, #1] + add r1, r6, #0 + add r1, #0x26 + ldrb r1, [r1] + strb r1, [r0] + ldrh r1, [r6, #0x3c] + strh r1, [r0, #4] + ldr r1, [r6, #0x40] + str r1, [r0, #8] + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + mov r0, #8 + strh r0, [r4, #0x26] + b _0203CEFE +_0203CDF6: + mov r0, #0xb + mov r1, #0xc + bl AllocFromHeap + add r7, r0, #0 + ldr r0, [r5, #0x20] + ldr r0, [r0] + bl sub_0203B60C + strh r0, [r7, #2] + mov r0, #0 + strb r0, [r7, #1] + add r0, r6, #0 + add r0, #0x26 + ldrb r0, [r0] + strb r0, [r7] + ldrh r0, [r6, #0x3c] + strh r0, [r7, #4] + ldr r0, [r6, #0x40] + str r0, [r7, #8] + mov r0, #0xe + lsl r0, r0, #6 + str r7, [r4, r0] + mov r0, #8 + strh r0, [r4, #0x26] + b _0203CEFE +_0203CE2A: + sub r0, #0xb + add r1, sp, #4 + strh r0, [r1, #6] + add r0, r6, #0 + add r0, #0x26 + ldrb r0, [r0] + strh r0, [r1, #4] + str r7, [sp, #4] + ldrh r1, [r1, #6] + mov r0, #0 + bl sub_02067DF4 + mov r1, #0x37 + lsl r1, r1, #4 + add r2, r0, #0 + add r0, sp, #4 + add r1, r4, r1 + blx r2 + b _0203CEFE +_0203CE50: + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203CEF0 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203CEFE +_0203CE6C: + add r0, r6, #0 + add r0, #0x24 + ldrb r0, [r0] + cmp r0, #5 + beq _0203CE86 + cmp r0, #6 + beq _0203CE86 + cmp r0, #7 + beq _0203CE86 + cmp r0, #0x10 + beq _0203CE86 + cmp r0, #8 + bne _0203CEBA +_0203CE86: + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r2, #0xe + lsl r2, r2, #6 + str r0, [r4, r2] + add r0, r6, #0 + add r0, #0x26 + ldrb r1, [r0] + ldr r0, [r4, r2] + cmp r1, #6 + blo _0203CEAC + mov r1, #0 + bl sub_020778E0 + b _0203CEB0 +_0203CEAC: + bl sub_020778E0 +_0203CEB0: + ldr r1, _0203CEF0 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203CEFE +_0203CEBA: + cmp r0, #9 + bne _0203CEF4 + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203CEF0 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203CEFE + nop +_0203CEDC: .word 0x020FA0B0 +_0203CEE0: .word sub_0203D580 +_0203CEE4: .word 0x020FA0AC +_0203CEE8: .word sub_0203D830 +_0203CEEC: .word 0x020FA0B8 +_0203CEF0: .word sub_0203CFC0 +_0203CEF4: + add r0, r5, #0 + bl sub_020505C0 + mov r0, #0xf + strh r0, [r4, #0x26] +_0203CEFE: + add r0, r6, #0 + bl FreeToHeap + mov r0, #0 + add sp, #0xc + pop {r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203CA9C + + thumb_func_start sub_0203CF0C +sub_0203CF0C: ; 0x0203CF0C + push {r4, lr} + bl sub_02050650 + add r4, r0, #0 + mov r0, #0 + bl ov01_021E636C + mov r0, #0xd5 + ldr r1, _0203CF2C ; =sub_0203CF30 + lsl r0, r0, #2 + str r1, [r4, r0] + mov r0, #4 + strh r0, [r4, #0x26] + mov r0, #1 + pop {r4, pc} + nop +_0203CF2C: .word sub_0203CF30 + thumb_func_end sub_0203CF0C + + thumb_func_start sub_0203CF30 +sub_0203CF30: ; 0x0203CF30 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + mov r1, #0xd6 + add r4, r0, #0 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r0, [r4, r1] + mov r1, #0 + bl sub_020778E0 + mov r0, #0xd5 + ldr r1, _0203CF70 ; =sub_0203CFC0 + lsl r0, r0, #2 + str r1, [r4, r0] + add r0, r5, #0 + bl ov01_021F4440 + mov r0, #0 + pop {r3, r4, r5, pc} + nop +_0203CF70: .word sub_0203CFC0 + thumb_func_end sub_0203CF30 + + thumb_func_start sub_0203CF74 +sub_0203CF74: ; 0x0203CF74 + push {r4, r5, r6, lr} + add r4, r1, #0 + add r6, r2, #0 + mov r1, #0 + mov r2, #0x44 + add r5, r0, #0 + bl memset + ldr r0, [r4, #0xc] + bl SavArray_PlayerParty_get + str r0, [r5] + ldr r0, [r4, #0xc] + bl sub_0207879C + str r0, [r5, #4] + ldr r0, [r4, #0xc] + bl Sav2_Mailbox_get + str r0, [r5, #8] + ldr r0, [r4, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r5, #0xc] + mov r0, #0x37 + lsl r0, r0, #4 + add r0, r6, r0 + str r0, [r5, #0x18] + add r0, r5, #0 + mov r1, #0 + add r0, #0x25 + strb r1, [r0] + mov r0, #0x43 + lsl r0, r0, #2 + str r4, [r5, #0x1c] + add r0, r4, r0 + str r0, [r5, #0x20] + pop {r4, r5, r6, pc} + thumb_func_end sub_0203CF74 + + thumb_func_start sub_0203CFC0 +sub_0203CFC0: ; 0x0203CFC0 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x18 + add r5, r0, #0 + bl sub_0205064C + str r0, [sp, #8] + add r0, r5, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xb + bl sub_02077878 + add r7, r0, #0 + bl sub_02077890 + mov r1, #0xe + lsl r1, r1, #6 + add r2, r0, #0 + ldr r1, [r4, r1] + add r0, r7, #0 + bl memcpy + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + bl FreeToHeap + add r0, r7, #0 + bl sub_0207790C + cmp r0, #5 + bls _0203D004 + b _0203D186 +_0203D004: + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203D010: ; jump table + .short _0203D01C - _0203D010 - 2 ; case 0 + .short _0203D056 - _0203D010 - 2 ; case 1 + .short _0203D066 - _0203D010 - 2 ; case 2 + .short _0203D186 - _0203D010 - 2 ; case 3 + .short _0203D0AC - _0203D010 - 2 ; case 4 + .short _0203D186 - _0203D010 - 2 ; case 5 +_0203D01C: + add r0, r7, #0 + bl sub_02077904 + add r1, sp, #0x10 + strh r0, [r1, #4] + add r0, r7, #0 + bl sub_02077914 + add r1, sp, #0x10 + strb r0, [r1, #6] + str r5, [sp, #0x10] + ldrh r0, [r1, #4] + mov r1, #6 + mov r2, #0xb + bl sub_02077D88 + add r1, r0, #0 + lsl r1, r1, #0x10 + mov r0, #0 + lsr r1, r1, #0x10 + bl sub_02064980 + mov r1, #0xd6 + lsl r1, r1, #2 + add r2, r0, #0 + add r0, sp, #0x10 + add r1, r4, r1 + blx r2 + b _0203D190 +_0203D056: + add r0, r7, #0 + bl sub_02077904 + add r1, r0, #0 + add r0, r5, #0 + bl sub_0203D664 + b _0203D190 +_0203D066: + mov r0, #0xb + mov r1, #0x44 + bl AllocFromHeap + mov r1, #0 + mov r2, #0x44 + add r5, r0, #0 + bl memset + ldr r1, [sp, #8] + add r0, r5, #0 + add r2, r4, #0 + bl sub_0203CF74 + add r0, r5, #0 + mov r1, #9 + add r0, #0x24 + strb r1, [r0] + add r0, r7, #0 + bl sub_02077904 + strh r0, [r5, #0x28] + ldr r0, [sp, #8] + ldr r1, _0203D19C ; =0x0210159C + add r2, r5, #0 + bl SwitchToPokegearApp + mov r0, #0xe + lsl r0, r0, #6 + str r5, [r4, r0] + ldr r1, _0203D1A0 ; =sub_0203CA9C + add r0, r4, #0 + bl sub_0203C8F0 + b _0203D190 +_0203D0AC: + ldr r0, [sp, #8] + ldr r0, [r0, #0xc] + bl SavArray_PlayerParty_get + str r0, [sp, #4] + mov r0, #0xe1 + lsl r0, r0, #2 + ldr r0, [r4, r0] + ldr r6, [r0] + add r0, r7, #0 + bl sub_02077904 + add r5, r0, #0 + ldr r0, [sp, #4] + add r1, r6, #0 + bl GetPartyMonByIndex + str r0, [sp, #0xc] + mov r0, #0xe1 + lsl r0, r0, #2 + ldr r0, [r4, r0] + bl FreeToHeap + add r0, r5, #0 + bl sub_02078068 + cmp r0, #1 + bne _0203D12C + ldr r0, [sp, #0xc] + mov r1, #6 + mov r2, #0 + bl GetMonData + cmp r0, #0 + bne _0203D12C + add r0, r5, #0 + bl sub_02078078 + add r3, r0, #0 + mov r0, #0xb + str r0, [sp] + lsl r2, r6, #0x18 + ldr r0, [sp, #8] + mov r1, #2 + lsr r2, r2, #0x18 + bl sub_0203EFEC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + lsl r2, r6, #0x18 + add r0, r5, #0 + mov r1, #0 + lsr r2, r2, #0x18 + bl sub_0203D818 + mov r1, #0xe1 + lsl r1, r1, #2 + str r0, [r4, r1] + ldr r1, _0203D1A4 ; =sub_0203D830 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203D190 +_0203D12C: + mov r0, #0xb + mov r1, #0x44 + bl AllocFromHeap + mov r1, #0 + mov r2, #0x44 + add r5, r0, #0 + bl memset + ldr r1, [sp, #8] + add r0, r5, #0 + add r2, r4, #0 + bl sub_0203CF74 + ldr r0, [sp, #4] + str r0, [r5] + add r0, r7, #0 + bl sub_02077904 + strh r0, [r5, #0x28] + add r0, r5, #0 + add r0, #0x26 + strb r6, [r0] + ldrh r0, [r5, #0x28] + cmp r0, #0 + bne _0203D164 + mov r1, #0 + b _0203D166 +_0203D164: + mov r1, #0xa +_0203D166: + add r0, r5, #0 + add r0, #0x24 + strb r1, [r0] + ldr r0, [sp, #8] + ldr r1, _0203D19C ; =0x0210159C + add r2, r5, #0 + bl SwitchToPokegearApp + mov r0, #0xe + lsl r0, r0, #6 + str r5, [r4, r0] + ldr r1, _0203D1A0 ; =sub_0203CA9C + add r0, r4, #0 + bl sub_0203C8F0 + b _0203D190 +_0203D186: + ldr r0, [sp, #8] + bl sub_020505C0 + mov r0, #0xf + strh r0, [r4, #0x26] +_0203D190: + add r0, r7, #0 + bl FreeToHeap + mov r0, #0 + add sp, #0x18 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203D19C: .word 0x0210159C +_0203D1A0: .word sub_0203CA9C +_0203D1A4: .word sub_0203D830 + thumb_func_end sub_0203CFC0 + + thumb_func_start sub_0203D1A8 +sub_0203D1A8: ; 0x0203D1A8 + push {r4, lr} + bl sub_02050650 + add r4, r0, #0 + mov r0, #0 + bl ov01_021E636C + mov r0, #0xd5 + ldr r1, _0203D1C8 ; =sub_0203D1CC + lsl r0, r0, #2 + str r1, [r4, r0] + mov r0, #4 + strh r0, [r4, #0x26] + mov r0, #1 + pop {r4, pc} + nop +_0203D1C8: .word sub_0203D1CC + thumb_func_end sub_0203D1A8 + + thumb_func_start sub_0203D1CC +sub_0203D1CC: ; 0x0203D1CC + push {r4, r5, r6, lr} + sub sp, #8 + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xb + bl sub_020691C4 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r6, [r4, r1] + mov r0, #1 + str r5, [sp] + add r1, r0, #0 + mov r2, #0 + mov r3, #0xff + str r6, [sp, #4] + bl sub_02068FC8 + add r0, r5, #0 + add r1, r6, #0 + bl sub_0203F7B0 + mov r0, #0xd5 + ldr r1, _0203D214 ; =sub_0203D218 + lsl r0, r0, #2 + str r1, [r4, r0] + mov r0, #0 + add sp, #8 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203D214: .word sub_0203D218 + thumb_func_end sub_0203D1CC + + thumb_func_start sub_0203D218 +sub_0203D218: ; 0x0203D218 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + bl sub_020691E0 + add r0, r5, #0 + bl sub_020505C0 + mov r0, #0xf + strh r0, [r4, #0x26] + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203D218 + + thumb_func_start sub_0203D244 +sub_0203D244: ; 0x0203D244 + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0205064C + mov r1, #1 + mov r2, #0 + bl ov01_021F6A9C + mov r0, #6 + strh r0, [r4, #0x26] + mov r0, #1 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203D244 + + thumb_func_start sub_0203D264 +sub_0203D264: ; 0x0203D264 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl ov01_021F6B00 + cmp r0, #1 + bne _0203D284 + mov r0, #7 + strh r0, [r4, #0x26] +_0203D284: + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203D264 + + thumb_func_start sub_0203D288 +sub_0203D288: ; 0x0203D288 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl ov01_021F6B00 + cmp r0, #0 + bne _0203D2C8 + add r0, r5, #0 + bl ov01_021F6B10 + cmp r0, #1 + bne _0203D2C8 + add r0, r5, #0 + add r0, #0xd0 + ldrh r0, [r0] + cmp r0, #1 + bne _0203D2C4 + mov r0, #0 + add r5, #0xd0 + strh r0, [r5] + mov r0, #0x10 + strh r0, [r4, #0x26] + pop {r3, r4, r5, pc} +_0203D2C4: + mov r0, #3 + strh r0, [r4, #0x26] +_0203D2C8: + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203D288 + + thumb_func_start sub_0203D2CC +sub_0203D2CC: ; 0x0203D2CC + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0205064C + mov r1, #8 + mov r2, #0 + bl ov01_021F6A9C + mov r0, #0x13 + strh r0, [r4, #0x26] + mov r0, #1 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203D2CC + + thumb_func_start sub_0203D2EC +sub_0203D2EC: ; 0x0203D2EC + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0205064C + mov r0, #0x14 + strh r0, [r4, #0x26] + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203D2EC + + thumb_func_start sub_0203D304 +sub_0203D304: ; 0x0203D304 + push {r4, lr} + add r4, r0, #0 + bl sub_0205064C + add r0, r4, #0 + bl sub_02050650 + mov r1, #0x10 + strh r1, [r0, #0x26] + pop {r4, pc} + thumb_func_end sub_0203D304 + + thumb_func_start sub_0203D318 +sub_0203D318: ; 0x0203D318 + push {r4, lr} + bl sub_02050650 + add r4, r0, #0 + mov r0, #0 + bl ov01_021E636C + mov r0, #0xd5 + ldr r1, _0203D338 ; =sub_0203D33C + lsl r0, r0, #2 + str r1, [r4, r0] + mov r0, #4 + strh r0, [r4, #0x26] + mov r0, #1 + pop {r4, pc} + nop +_0203D338: .word sub_0203D33C + thumb_func_end sub_0203D318 + + thumb_func_start sub_0203D33C +sub_0203D33C: ; 0x0203D33C + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203EE24 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r0, _0203D364 ; =sub_0203D368 + sub r1, #0x2c + str r0, [r4, r1] + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203D364: .word sub_0203D368 + thumb_func_end sub_0203D33C + + thumb_func_start sub_0203D368 +sub_0203D368: ; 0x0203D368 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + bl FreeToHeap + add r0, r5, #0 + bl sub_020505C0 + mov r0, #0xf + strh r0, [r4, #0x26] + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203D368 + + thumb_func_start sub_0203D394 +sub_0203D394: ; 0x0203D394 + push {r4, lr} + bl sub_02050650 + add r4, r0, #0 + mov r0, #0 + bl ov01_021E636C + mov r0, #0xd5 + ldr r1, _0203D3B4 ; =sub_0203D3B8 + lsl r0, r0, #2 + str r1, [r4, r0] + mov r0, #4 + strh r0, [r4, #0x26] + mov r0, #1 + pop {r4, pc} + nop +_0203D3B4: .word sub_0203D3B8 + thumb_func_end sub_0203D394 + + thumb_func_start sub_0203D3B8 +sub_0203D3B8: ; 0x0203D3B8 + push {r4, r5, lr} + sub sp, #0xc + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xb + str r0, [sp] + mov r3, #0x43 + lsl r3, r3, #2 + ldr r2, [r5, #0xc] + mov r0, #2 + mov r1, #0 + add r3, r5, r3 + bl sub_02090C94 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + add r0, sp, #4 + mov r1, #4 + bl MailMsg_init_withBank + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + add r1, sp, #4 + bl sub_02090D20 + mov r1, #0xe + lsl r1, r1, #6 + ldr r1, [r4, r1] + add r0, r5, #0 + bl sub_0203EA24 + mov r0, #0xd5 + ldr r1, _0203D414 ; =sub_0203D418 + lsl r0, r0, #2 + str r1, [r4, r0] + mov r0, #0 + add sp, #0xc + pop {r4, r5, pc} + .balign 4, 0 +_0203D414: .word sub_0203D418 + thumb_func_end sub_0203D3B8 + + thumb_func_start sub_0203D418 +sub_0203D418: ; 0x0203D418 + push {r3, r4, r5, lr} + sub sp, #8 + add r5, r0, #0 + bl sub_0205064C + add r4, r0, #0 + add r0, r5, #0 + bl sub_02050650 + add r5, r0, #0 + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r5, r0] + bl sub_02090D48 + cmp r0, #0 + bne _0203D466 + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r5, r0] + add r1, sp, #0 + bl sub_02090D60 + bl sub_02035650 + cmp r0, #0 + beq _0203D460 + add r0, sp, #0 + bl sub_0205AB88 + add r0, r4, #0 + add r0, #0x80 + ldr r0, [r0] + add r1, sp, #0 + bl sub_0205AA6C +_0203D460: + mov r0, #0xa + strh r0, [r5, #0x26] + b _0203D46A +_0203D466: + mov r0, #0xf + strh r0, [r5, #0x26] +_0203D46A: + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r5, r0] + bl sub_02090D0C + add r0, r4, #0 + bl sub_020505C0 + add r4, #0x84 + ldr r0, [r4] + bl sub_0205AD0C + mov r0, #0 + add sp, #8 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203D418 + + thumb_func_start sub_0203D488 +sub_0203D488: ; 0x0203D488 + push {r4, r5, r6, lr} + add r5, r0, #0 + bl sub_0205064C + add r4, r0, #0 + add r0, r5, #0 + bl sub_02050650 + add r1, r4, #0 + add r6, r0, #0 + bl sub_0203C38C + add r0, r4, #0 + add r0, #0xd2 + ldrb r1, [r0] + mov r0, #0x3f + bic r1, r0 + add r0, r4, #0 + add r0, #0xd2 + strb r1, [r0] + ldr r0, [r4, #0xc] + bl sub_020503D0 + bl sub_02066860 + cmp r0, #1 + bne _0203D4CA + ldr r1, _0203D4F8 ; =0x00002266 + add r0, r5, #0 + mov r2, #0 + bl sub_0203FF0C + b _0203D4EE +_0203D4CA: + ldr r0, [r4, #0xc] + bl sub_020503D0 + bl sub_02066870 + cmp r0, #1 + bne _0203D4E4 + ldr r1, _0203D4FC ; =0x000028A4 + add r0, r5, #0 + mov r2, #0 + bl sub_0203FF0C + b _0203D4EE +_0203D4E4: + add r0, r5, #0 + mov r1, #4 + mov r2, #0 + bl sub_0203FF0C +_0203D4EE: + add r0, r6, #0 + bl FreeToHeap + mov r0, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203D4F8: .word 0x00002266 +_0203D4FC: .word 0x000028A4 + thumb_func_end sub_0203D488 + + thumb_func_start sub_0203D500 +sub_0203D500: ; 0x0203D500 + push {r4, lr} + bl sub_02050650 + add r4, r0, #0 + mov r0, #0 + bl ov01_021E636C + mov r0, #0xd5 + ldr r1, _0203D520 ; =sub_0203D524 + lsl r0, r0, #2 + str r1, [r4, r0] + mov r0, #4 + strh r0, [r4, #0x26] + mov r0, #1 + pop {r4, pc} + nop +_0203D520: .word sub_0203D524 + thumb_func_end sub_0203D500 + + thumb_func_start sub_0203D524 +sub_0203D524: ; 0x0203D524 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203EA84 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r0, _0203D54C ; =sub_0203D550 + sub r1, #0x2c + str r0, [r4, r1] + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203D54C: .word sub_0203D550 + thumb_func_end sub_0203D524 + + thumb_func_start sub_0203D550 +sub_0203D550: ; 0x0203D550 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_020505C0 + mov r0, #0xe + lsl r0, r0, #6 + ldr r1, [r4, r0] + cmp r1, #0 + beq _0203D578 + mov r0, #0xb + bl FreeToHeapExplicit +_0203D578: + mov r0, #0xf + strh r0, [r4, #0x26] + mov r0, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203D550 + + thumb_func_start sub_0203D580 +sub_0203D580: ; 0x0203D580 + push {r3, r4, r5, r6, r7, lr} + add r4, r0, #0 + bl sub_0205064C + str r0, [sp] + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xb + mov r1, #0x3c + bl AllocFromHeap + mov r1, #0xe + lsl r1, r1, #6 + ldr r1, [r4, r1] + mov r2, #0x3c + add r6, r0, #0 + bl memcpy + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + bl FreeToHeap + ldrb r0, [r6, #0x12] + cmp r0, #2 + bne _0203D634 + mov r0, #0xb + mov r1, #0x44 + bl AllocFromHeap + mov r1, #0xe1 + lsl r1, r1, #2 + ldr r7, [r4, r1] + ldr r1, [sp] + add r2, r4, #0 + add r5, r0, #0 + bl sub_0203CF74 + ldrh r0, [r7] + strh r0, [r5, #0x28] + add r0, r5, #0 + ldrb r1, [r6, #0x14] + add r0, #0x26 + strb r1, [r0] + ldrh r0, [r6, #0x18] + strh r0, [r5, #0x2a] + add r0, r5, #0 + ldrb r1, [r6, #0x16] + add r0, #0x2c + strb r1, [r0] + ldrh r0, [r7] + cmp r0, #0 + beq _0203D5FA + add r0, r5, #0 + mov r1, #7 + add r0, #0x24 + strb r1, [r0] + mov r0, #0 + b _0203D604 +_0203D5FA: + add r0, r5, #0 + mov r1, #8 + add r0, #0x24 + strb r1, [r0] + ldrh r0, [r7, #2] +_0203D604: + str r0, [r5, #0x38] + mov r1, #0x43 + ldr r0, [sp] + lsl r1, r1, #2 + add r0, r0, r1 + str r0, [r5, #0x20] + ldr r0, [sp] + ldr r1, _0203D65C ; =0x0210159C + add r2, r5, #0 + bl SwitchToPokegearApp + mov r0, #0xe1 + lsl r0, r0, #2 + ldr r0, [r4, r0] + bl FreeToHeap + mov r0, #0xe + lsl r0, r0, #6 + str r5, [r4, r0] + ldr r1, _0203D660 ; =sub_0203CA9C + add r0, r4, #0 + bl sub_0203C8F0 + b _0203D650 +_0203D634: + mov r1, #0x37 + lsl r1, r1, #4 + ldrb r2, [r6, #0x14] + ldr r0, [sp] + add r1, r4, r1 + bl sub_0203E550 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203D660 ; =sub_0203CA9C + add r0, r4, #0 + bl sub_0203C8F0 +_0203D650: + add r0, r6, #0 + bl FreeToHeap + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203D65C: .word 0x0210159C +_0203D660: .word sub_0203CA9C + thumb_func_end sub_0203D580 + + thumb_func_start sub_0203D664 +sub_0203D664: ; 0x0203D664 + push {r4, r5, r6, r7, lr} + sub sp, #0xc + add r4, r0, #0 + bl sub_0205064C + str r0, [sp, #4] + add r0, r4, #0 + bl sub_02050650 + str r0, [sp] + ldr r0, [sp, #4] + ldr r0, [r0, #0xc] + bl sub_0207879C + add r4, r0, #0 + mov r5, #0 + mov r6, #1 + mov r7, #0xb +_0203D688: + add r0, r5, #0 + bl sub_020780F4 + add r1, r0, #0 + add r0, r4, #0 + add r2, r6, #0 + add r3, r7, #0 + bl sub_020784B0 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x40 + blo _0203D688 + ldr r0, [sp, #4] + add r3, sp, #8 + add r0, #0x94 + str r0, [sp, #4] + ldr r0, [r0] + mov r1, #4 + add r2, sp, #8 + add r3, #1 + bl sub_020787C0 + ldr r0, [sp] + ldr r1, _0203D6C4 ; =sub_0203D6C8 + bl sub_0203C8F0 + add sp, #0xc + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_0203D6C4: .word sub_0203D6C8 + thumb_func_end sub_0203D664 + + thumb_func_start sub_0203D6C8 +sub_0203D6C8: ; 0x0203D6C8 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + add r0, #0x94 + mov r2, #0 + ldr r0, [r0] + mov r1, #4 + add r3, r2, #0 + bl sub_020787D4 + mov r1, #0xe + lsl r1, r1, #6 + ldr r1, [r4, r1] + mov r0, #0xb + bl FreeToHeapExplicit + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203D714 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203D714: .word sub_0203CFC0 + thumb_func_end sub_0203D6C8 + + thumb_func_start sub_0203D718 +sub_0203D718: ; 0x0203D718 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + mov r1, #0xe + add r4, r0, #0 + lsl r1, r1, #6 + ldr r1, [r4, r1] + mov r0, #0xb + bl FreeToHeapExplicit + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203D754 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203D754: .word sub_0203CFC0 + thumb_func_end sub_0203D718 + + thumb_func_start sub_0203D758 +sub_0203D758: ; 0x0203D758 + push {r4, r5, r6, r7, lr} + sub sp, #0xc + add r4, r0, #0 + bl sub_0205064C + add r7, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xe1 + lsl r0, r0, #2 + ldr r1, [r4, r0] + mov r0, #0xb + ldr r6, [r1] + bl FreeToHeapExplicit + mov r0, #0xe + lsl r0, r0, #6 + ldr r5, [r4, r0] + ldr r0, [r5, #0x14] + cmp r0, #0 + bne _0203D7AE + mov r0, #0xb + add r1, r5, #0 + bl FreeToHeapExplicit + mov r1, #0x37 + lsl r1, r1, #4 + lsl r2, r6, #0x18 + add r0, r7, #0 + add r1, r4, r1 + lsr r2, r2, #0x18 + bl sub_0203E550 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203D810 ; =sub_0203CA9C + add r0, r4, #0 + bl sub_0203C8F0 + b _0203D808 +_0203D7AE: + ldr r0, [r7, #0xc] + bl SavArray_PlayerParty_get + add r1, r6, #0 + bl GetPartyMonByIndex + add r2, r0, #0 + ldrh r0, [r5, #0x20] + lsl r3, r6, #0x10 + add r1, r7, #0 + str r0, [sp] + ldr r0, [r5, #0x18] + lsr r3, r3, #0x10 + lsl r0, r0, #5 + add r0, #0x10 + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + str r0, [sp, #4] + ldr r0, [r5, #0x1c] + lsl r0, r0, #5 + add r0, #0x10 + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + str r0, [sp, #8] + mov r0, #0xb + bl sub_02067BF8 + mov r1, #0xe + lsl r1, r1, #6 + add r5, r0, #0 + ldr r1, [r4, r1] + mov r0, #0xb + bl FreeToHeapExplicit + add r0, r7, #0 + bl sub_020505C0 + mov r0, #0xd5 + ldr r1, _0203D814 ; =sub_02067C30 + lsl r0, r0, #2 + str r1, [r4, r0] + add r0, #0x2c + str r5, [r4, r0] + mov r0, #0xc + strh r0, [r4, #0x26] +_0203D808: + mov r0, #0 + add sp, #0xc + pop {r4, r5, r6, r7, pc} + nop +_0203D810: .word sub_0203CA9C +_0203D814: .word sub_02067C30 + thumb_func_end sub_0203D758 + + thumb_func_start sub_0203D818 +sub_0203D818: ; 0x0203D818 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + mov r0, #0xb + mov r1, #4 + add r6, r2, #0 + bl AllocFromHeap + strh r5, [r0] + strb r6, [r0, #2] + strb r4, [r0, #3] + pop {r4, r5, r6, pc} + thumb_func_end sub_0203D818 + + thumb_func_start sub_0203D830 +sub_0203D830: ; 0x0203D830 + push {r4, r5, r6, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xe1 + lsl r0, r0, #2 + ldr r6, [r4, r0] + ldrb r1, [r6, #3] + cmp r1, #3 + bhi _0203D928 + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0203D85A: ; jump table + .short _0203D8AC - _0203D85A - 2 ; case 0 + .short _0203D8EC - _0203D85A - 2 ; case 1 + .short _0203D886 - _0203D85A - 2 ; case 2 + .short _0203D862 - _0203D85A - 2 ; case 3 +_0203D862: + sub r0, r0, #4 + ldr r0, [r4, r0] + bl sub_02090F90 + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203D938 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 + b _0203D928 +_0203D886: + sub r0, r0, #4 + ldr r0, [r4, r0] + bl sub_02090F90 + mov r1, #0x37 + lsl r1, r1, #4 + ldrb r2, [r6, #2] + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E550 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203D93C ; =sub_0203CA9C + add r0, r4, #0 + bl sub_0203C8F0 + b _0203D928 +_0203D8AC: + sub r0, r0, #4 + ldr r0, [r4, r0] + bl sub_02090F6C + cmp r0, #1 + bne _0203D8C4 + add r0, r5, #0 + add r1, r4, #0 + mov r2, #0xc + bl sub_0203D940 + b _0203D928 +_0203D8C4: + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + bl sub_02090F90 + mov r1, #0x37 + lsl r1, r1, #4 + ldrb r2, [r6, #2] + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E550 + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203D93C ; =sub_0203CA9C + add r0, r4, #0 + bl sub_0203C8F0 + b _0203D928 +_0203D8EC: + sub r0, r0, #4 + ldr r0, [r4, r0] + bl sub_02090F6C + cmp r0, #1 + bne _0203D904 + add r0, r5, #0 + add r1, r4, #0 + mov r2, #0xb + bl sub_0203D940 + b _0203D928 +_0203D904: + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + bl sub_02090F90 + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203D938 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 +_0203D928: + mov r0, #0xe1 + lsl r0, r0, #2 + ldr r0, [r4, r0] + bl FreeToHeap + mov r0, #0 + pop {r4, r5, r6, pc} + nop +_0203D938: .word sub_0203CFC0 +_0203D93C: .word sub_0203CA9C + thumb_func_end sub_0203D830 + + thumb_func_start sub_0203D940 +sub_0203D940: ; 0x0203D940 + push {r3, r4, r5, r6, r7, lr} + add r7, r0, #0 + mov r0, #0xe1 + add r5, r1, #0 + str r2, [sp] + lsl r0, r0, #2 + ldr r6, [r5, r0] + mov r0, #0xb + mov r1, #0x44 + bl AllocFromHeap + add r1, r7, #0 + add r2, r5, #0 + add r4, r0, #0 + bl sub_0203CF74 + ldrh r0, [r6] + strh r0, [r4, #0x28] + add r0, r4, #0 + ldrb r1, [r6, #2] + add r0, #0x26 + strb r1, [r0] + add r1, r4, #0 + ldr r0, [sp] + add r1, #0x24 + strb r0, [r1] + ldrb r1, [r6, #2] + ldr r0, [r4] + bl GetPartyMonByIndex + add r1, r0, #0 + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r5, r0] + bl sub_02090F70 + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r5, r0] + bl sub_02090F90 + ldr r1, _0203D9AC ; =0x0210159C + add r0, r7, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + mov r0, #0xe + lsl r0, r0, #6 + str r4, [r5, r0] + ldr r1, _0203D9B0 ; =sub_0203CA9C + add r0, r5, #0 + bl sub_0203C8F0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203D9AC: .word 0x0210159C +_0203D9B0: .word sub_0203CA9C + thumb_func_end sub_0203D940 + + thumb_func_start sub_0203D9B4 +sub_0203D9B4: ; 0x0203D9B4 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + mov r1, #0xd6 + add r4, r0, #0 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r1, _0203D9E4 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203D9E4: .word sub_0203CFC0 + thumb_func_end sub_0203D9B4 + + thumb_func_start sub_0203D9E8 +sub_0203D9E8: ; 0x0203D9E8 + push {r4, r5, r6, r7, lr} + sub sp, #0x3c + add r5, r0, #0 + bl sub_0205064C + add r4, r0, #0 + add r0, r5, #0 + bl sub_02050650 + add r6, r0, #0 + mov r0, #0xe + lsl r0, r0, #6 + ldr r5, [r6, r0] + bl sub_02005FA0 + mov r0, #3 + mov r1, #0x47 + lsl r2, r0, #0x10 + bl sub_0201A910 + ldr r0, [r4, #0xc] + bl SavArray_PlayerParty_get + ldrb r1, [r5] + str r0, [sp, #0x1c] + bl GetPartyMonByIndex + str r0, [sp, #0x20] + ldrb r0, [r5, #1] + cmp r0, #0 + ldr r0, [r4, #0xc] + bne _0203DA72 + bl Sav2_PlayerData_GetOptionsAddr + str r0, [sp, #0x24] + ldr r0, [r4, #0xc] + bl sub_02088288 + add r7, r0, #0 + ldr r0, [r4, #0xc] + bl sub_0202A634 + str r0, [sp, #0x28] + ldr r0, [r4, #0xc] + bl sub_0207879C + str r0, [sp, #0x2c] + ldr r0, [r4, #0xc] + bl sub_0202CF54 + ldr r1, [sp, #0x28] + str r7, [sp] + str r1, [sp, #4] + ldr r1, [sp, #0x2c] + ldr r3, [sp, #0x24] + str r1, [sp, #8] + str r0, [sp, #0xc] + ldr r0, [r5, #8] + ldr r1, [sp, #0x20] + str r0, [sp, #0x10] + mov r0, #1 + str r0, [sp, #0x14] + mov r0, #0x47 + str r0, [sp, #0x18] + ldrh r2, [r5, #4] + ldr r0, [sp, #0x1c] + bl sub_02075A7C + b _0203DABA +_0203DA72: + bl Sav2_PlayerData_GetOptionsAddr + str r0, [sp, #0x30] + ldr r0, [r4, #0xc] + bl sub_02088288 + add r7, r0, #0 + ldr r0, [r4, #0xc] + bl sub_0202A634 + str r0, [sp, #0x34] + ldr r0, [r4, #0xc] + bl sub_0207879C + str r0, [sp, #0x38] + ldr r0, [r4, #0xc] + bl sub_0202CF54 + ldr r1, [sp, #0x34] + str r7, [sp] + str r1, [sp, #4] + ldr r1, [sp, #0x38] + ldr r3, [sp, #0x30] + str r1, [sp, #8] + str r0, [sp, #0xc] + ldr r0, [r5, #8] + ldr r1, [sp, #0x20] + str r0, [sp, #0x10] + mov r0, #0 + str r0, [sp, #0x14] + mov r0, #0x47 + str r0, [sp, #0x18] + ldrh r2, [r5, #4] + ldr r0, [sp, #0x1c] + bl sub_02075A7C +_0203DABA: + add r4, r0, #0 + mov r0, #0xb + mov r1, #4 + bl AllocFromHeap + ldrb r1, [r5] + str r1, [r0] + mov r1, #0xe1 + lsl r1, r1, #2 + str r0, [r6, r1] + sub r0, r1, #4 + ldr r0, [r6, r0] + bl FreeToHeap + mov r0, #0xe + lsl r0, r0, #6 + str r4, [r6, r0] + mov r0, #9 + strh r0, [r6, #0x26] + add sp, #0x3c + pop {r4, r5, r6, r7, pc} + thumb_func_end sub_0203D9E8 + + thumb_func_start sub_0203DAE4 +sub_0203DAE4: ; 0x0203DAE4 + push {r3, r4, r5, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + bl sub_02075D3C + cmp r0, #1 + bne _0203DB60 + mov r0, #0xe + lsl r0, r0, #6 + ldr r0, [r4, r0] + bl sub_02075D4C + mov r0, #0x47 + bl sub_0201A9C4 + ldr r0, _0203DB64 ; =0x000003F3 + mov r1, #0 + bl sub_02005EB4 + mov r0, #0 + bl sub_02004AD8 + ldr r1, [r5, #0x20] + add r0, r5, #0 + ldr r1, [r1] + bl sub_02055164 + mov r1, #0xd6 + lsl r1, r1, #2 + add r0, r5, #0 + add r1, r4, r1 + bl sub_0203E3FC + mov r1, #0xe + lsl r1, r1, #6 + str r0, [r4, r1] + ldr r0, [r4, r1] + add r1, r1, #4 + ldr r1, [r4, r1] + ldr r1, [r1] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl sub_020778E0 + mov r0, #0xe1 + lsl r0, r0, #2 + ldr r0, [r4, r0] + bl FreeToHeap + ldr r1, _0203DB68 ; =sub_0203CFC0 + add r0, r4, #0 + bl sub_0203C8F0 +_0203DB60: + pop {r3, r4, r5, pc} + nop +_0203DB64: .word 0x000003F3 +_0203DB68: .word sub_0203CFC0 + thumb_func_end sub_0203DAE4 + + thumb_func_start sub_0203DB6C +sub_0203DB6C: ; 0x0203DB6C + bx lr + .balign 4, 0 + thumb_func_end sub_0203DB6C + + thumb_func_start sub_0203DB70 +sub_0203DB70: ; 0x0203DB70 + bx lr + .balign 4, 0 + thumb_func_end sub_0203DB70 + + thumb_func_start sub_0203DB74 +sub_0203DB74: ; 0x0203DB74 + mov r0, #1 + bx lr + thumb_func_end sub_0203DB74 + + thumb_func_start sub_0203DB78 +sub_0203DB78: ; 0x0203DB78 + push {r3, r4, r5, r6, r7, lr} + add r6, r0, #0 + ldr r0, [r6, #0x40] + add r4, r1, #0 + add r5, r2, #0 + bl sub_0205C654 + add r7, r0, #0 + ldr r0, [r6, #0x40] + bl sub_0205C67C + str r0, [r4] + ldr r0, [r6, #0x40] + bl sub_0205C688 + str r0, [r5] + cmp r7, #3 + bhi _0203DBCE + add r0, r7, r7 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203DBA8: ; jump table + .short _0203DBB0 - _0203DBA8 - 2 ; case 0 + .short _0203DBB8 - _0203DBA8 - 2 ; case 1 + .short _0203DBC0 - _0203DBA8 - 2 ; case 2 + .short _0203DBC8 - _0203DBA8 - 2 ; case 3 +_0203DBB0: + ldr r0, [r5] + sub r0, r0, #1 + str r0, [r5] + b _0203DBCE +_0203DBB8: + ldr r0, [r5] + add r0, r0, #1 + str r0, [r5] + b _0203DBCE +_0203DBC0: + ldr r0, [r4] + sub r0, r0, #1 + str r0, [r4] + b _0203DBCE +_0203DBC8: + ldr r0, [r4] + add r0, r0, #1 + str r0, [r4] +_0203DBCE: + add r0, r7, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203DB78 + + thumb_func_start sub_0203DBD4 +sub_0203DBD4: ; 0x0203DBD4 + push {r3, r4, r5, lr} + add r5, r1, #0 + bl sub_0205C6DC + bl sub_0205F9D0 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0205F9D0 + cmp r4, r0 + bne _0203DBF0 + mov r0, #1 + b _0203DBF2 +_0203DBF0: + mov r0, #0 +_0203DBF2: + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203DBD4 + + thumb_func_start sub_0203DBF8 +sub_0203DBF8: ; 0x0203DBF8 + push {r4, r5, r6, lr} + sub sp, #8 + add r6, r1, #0 + add r1, sp, #4 + add r2, sp, #0 + add r5, r0, #0 + bl sub_0203DB78 + add r4, r0, #0 + ldr r1, [sp, #4] + ldr r2, [sp] + add r0, r5, #0 + bl sub_02054918 + bl sub_0205B700 + cmp r0, #1 + bne _0203DC52 + cmp r4, #3 + bhi _0203DC52 + add r0, r4, r4 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203DC2C: ; jump table + .short _0203DC34 - _0203DC2C - 2 ; case 0 + .short _0203DC3C - _0203DC2C - 2 ; case 1 + .short _0203DC44 - _0203DC2C - 2 ; case 2 + .short _0203DC4C - _0203DC2C - 2 ; case 3 +_0203DC34: + ldr r0, [sp] + sub r0, r0, #1 + str r0, [sp] + b _0203DC52 +_0203DC3C: + ldr r0, [sp] + add r0, r0, #1 + str r0, [sp] + b _0203DC52 +_0203DC44: + ldr r0, [sp, #4] + sub r0, r0, #1 + str r0, [sp, #4] + b _0203DC52 +_0203DC4C: + ldr r0, [sp, #4] + add r0, r0, #1 + str r0, [sp, #4] +_0203DC52: + ldr r0, [r5, #0x3c] + ldr r1, [sp, #4] + ldr r2, [sp] + mov r3, #0 + bl sub_0205FB58 + str r0, [r6] + add sp, #8 + pop {r4, r5, r6, pc} + thumb_func_end sub_0203DBF8 + + thumb_func_start sub_0203DC64 +sub_0203DC64: ; 0x0203DC64 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + bl sub_0203DBF8 + ldr r0, [r4] + cmp r0, #0 + beq _0203DC8C + bl sub_0205F6C8 + cmp r0, #1 + bne _0203DC8C + ldr r0, [r5, #0x40] + ldr r1, [r4] + bl sub_0203DBD4 + cmp r0, #1 + bne _0203DC8C + mov r0, #1 + pop {r3, r4, r5, pc} +_0203DC8C: + mov r0, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203DC64 + + thumb_func_start sub_0203DC90 +sub_0203DC90: ; 0x0203DC90 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + str r1, [sp] + str r2, [sp, #4] + add r1, sp, #0xc + add r2, sp, #8 + add r6, r0, #0 + bl sub_0203DB78 + ldr r0, [sp, #4] + mov r7, #0 + cmp r0, #0 + ble _0203DD04 + ldr r4, [sp] + add r5, r4, #0 +_0203DCAE: + ldr r1, [sp, #0xc] + ldr r0, [r4, #4] + cmp r1, r0 + bne _0203DCF8 + ldr r1, [sp, #8] + ldr r0, [r4, #8] + cmp r1, r0 + bne _0203DCF8 + ldrh r0, [r4, #2] + cmp r0, #2 + bne _0203DCDE + add r0, r6, #0 + add r1, r5, #0 + bl sub_0203DD10 + cmp r0, #1 + bne _0203DCF8 + mov r0, #0x14 + add r1, r7, #0 + mul r1, r0 + ldr r0, [sp] + add sp, #0x10 + ldrh r0, [r0, r1] + pop {r3, r4, r5, r6, r7, pc} +_0203DCDE: + add r0, r6, #0 + add r1, r5, #0 + bl sub_0203DD3C + cmp r0, #1 + bne _0203DCF8 + mov r0, #0x14 + add r1, r7, #0 + mul r1, r0 + ldr r0, [sp] + add sp, #0x10 + ldrh r0, [r0, r1] + pop {r3, r4, r5, r6, r7, pc} +_0203DCF8: + ldr r0, [sp, #4] + add r7, r7, #1 + add r4, #0x14 + add r5, #0x14 + cmp r7, r0 + blt _0203DCAE +_0203DD04: + ldr r0, _0203DD0C ; =0x0000FFFF + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203DD0C: .word 0x0000FFFF + thumb_func_end sub_0203DC90 + + thumb_func_start sub_0203DD10 +sub_0203DD10: ; 0x0203DD10 + push {r4, lr} + add r4, r0, #0 + ldrh r0, [r1, #2] + cmp r0, #2 + beq _0203DD1E + mov r0, #0 + pop {r4, pc} +_0203DD1E: + ldrh r0, [r1] + bl sub_0204055C + add r1, r0, #0 + add r0, r4, #0 + bl sub_020403FC + cmp r0, #1 + beq _0203DD34 + mov r0, #1 + b _0203DD36 +_0203DD34: + mov r0, #0 +_0203DD36: + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + pop {r4, pc} + thumb_func_end sub_0203DD10 + + thumb_func_start sub_0203DD3C +sub_0203DD3C: ; 0x0203DD3C + push {r4, lr} + add r4, r1, #0 + ldrh r1, [r4, #0x10] + cmp r1, #4 + bne _0203DD4A + mov r0, #1 + pop {r4, pc} +_0203DD4A: + ldr r0, [r0, #0x40] + bl sub_0205C654 + cmp r0, #3 + bhi _0203DDA0 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203DD60: ; jump table + .short _0203DD68 - _0203DD60 - 2 ; case 0 + .short _0203DD76 - _0203DD60 - 2 ; case 1 + .short _0203DD84 - _0203DD60 - 2 ; case 2 + .short _0203DD92 - _0203DD60 - 2 ; case 3 +_0203DD68: + ldrh r0, [r4, #0x10] + cmp r0, #0 + beq _0203DD72 + cmp r0, #6 + bne _0203DDA0 +_0203DD72: + mov r0, #1 + pop {r4, pc} +_0203DD76: + ldrh r0, [r4, #0x10] + cmp r0, #3 + beq _0203DD80 + cmp r0, #6 + bne _0203DDA0 +_0203DD80: + mov r0, #1 + pop {r4, pc} +_0203DD84: + ldrh r0, [r4, #0x10] + cmp r0, #2 + beq _0203DD8E + cmp r0, #5 + bne _0203DDA0 +_0203DD8E: + mov r0, #1 + pop {r4, pc} +_0203DD92: + ldrh r0, [r4, #0x10] + cmp r0, #1 + beq _0203DD9C + cmp r0, #5 + bne _0203DDA0 +_0203DD9C: + mov r0, #1 + pop {r4, pc} +_0203DDA0: + mov r0, #0 + pop {r4, pc} + thumb_func_end sub_0203DD3C + + thumb_func_start sub_0203DDA4 +sub_0203DDA4: ; 0x0203DDA4 + push {r4, r5, r6, lr} + sub sp, #8 + add r5, r0, #0 + ldr r0, [r5, #0x40] + add r6, r1, #0 + add r4, r2, #0 + bl sub_0205C654 + cmp r0, #0 + beq _0203DDBE + add sp, #8 + ldr r0, _0203DE00 ; =0x0000FFFF + pop {r4, r5, r6, pc} +_0203DDBE: + add r0, r5, #0 + add r1, sp, #4 + add r2, sp, #0 + bl sub_0203DB78 + mov r0, #0 + cmp r4, #0 + ble _0203DDF8 + ldr r2, [sp, #4] + ldr r3, [sp] + add r1, r6, #0 +_0203DDD4: + ldr r5, [r1, #4] + cmp r2, r5 + bne _0203DDF0 + ldr r5, [r1, #8] + cmp r3, r5 + bne _0203DDF0 + ldrh r5, [r1, #2] + cmp r5, #1 + bne _0203DDF0 + mov r1, #0x14 + mul r1, r0 + add sp, #8 + ldrh r0, [r6, r1] + pop {r4, r5, r6, pc} +_0203DDF0: + add r0, r0, #1 + add r1, #0x14 + cmp r0, r4 + blt _0203DDD4 +_0203DDF8: + ldr r0, _0203DE00 ; =0x0000FFFF + add sp, #8 + pop {r4, r5, r6, pc} + nop +_0203DE00: .word 0x0000FFFF + thumb_func_end sub_0203DDA4 + + thumb_func_start sub_0203DE04 +sub_0203DE04: ; 0x0203DE04 + push {r4, r5, r6, r7, lr} + sub sp, #0xc + str r0, [sp] + ldr r0, [r0, #0x40] + str r1, [sp, #4] + str r2, [sp, #8] + bl sub_0205C67C + add r6, r0, #0 + ldr r0, [sp] + ldr r0, [r0, #0x40] + bl sub_0205C688 + add r4, r0, #0 + ldr r0, [sp, #8] + mov r7, #0 + cmp r0, #0 + ble _0203DE68 + ldr r5, [sp, #4] +_0203DE2A: + ldrh r1, [r5, #2] + cmp r6, r1 + blt _0203DE5E + ldrh r0, [r5, #6] + add r0, r1, r0 + cmp r6, r0 + bge _0203DE5E + ldrh r1, [r5, #4] + cmp r4, r1 + blt _0203DE5E + ldrh r0, [r5, #8] + add r0, r1, r0 + cmp r4, r0 + bge _0203DE5E + ldrh r1, [r5, #0xe] + ldr r0, [sp] + bl sub_020403AC + ldrh r1, [r5, #0xc] + cmp r1, r0 + bne _0203DE5E + ldr r0, [sp, #4] + lsl r1, r7, #4 + add sp, #0xc + ldrh r0, [r0, r1] + pop {r4, r5, r6, r7, pc} +_0203DE5E: + ldr r0, [sp, #8] + add r7, r7, #1 + add r5, #0x10 + cmp r7, r0 + blt _0203DE2A +_0203DE68: + ldr r0, _0203DE70 ; =0x0000FFFF + add sp, #0xc + pop {r4, r5, r6, r7, pc} + nop +_0203DE70: .word 0x0000FFFF + thumb_func_end sub_0203DE04 + + thumb_func_start sub_0203DE74 +sub_0203DE74: ; 0x0203DE74 + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_020072A4 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203DFE0 + ldr r1, _0203DEA0 ; =0x021D4158 + str r0, [r1] + ldr r1, [r4, #4] + cmp r1, #0 + beq _0203DE94 + bl sub_02053620 + b _0203DE98 +_0203DE94: + bl sub_0205353C +_0203DE98: + mov r0, #0 + str r0, [r4, #4] + mov r0, #1 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203DEA0: .word 0x021D4158 + thumb_func_end sub_0203DE74 + + thumb_func_start sub_0203DEA4 +sub_0203DEA4: ; 0x0203DEA4 + push {r3, lr} + bl sub_0203DFE0 + ldr r1, _0203DEB8 ; =0x021D4158 + str r0, [r1] + bl sub_02053470 + mov r0, #1 + pop {r3, pc} + nop +_0203DEB8: .word 0x021D4158 + thumb_func_end sub_0203DEA4 + + thumb_func_start sub_0203DEBC +sub_0203DEBC: ; 0x0203DEBC + push {r3, lr} + bl sub_02007290 + bl sub_0203E0CC + cmp r0, #0 + beq _0203DECE + mov r0, #1 + pop {r3, pc} +_0203DECE: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203DEBC + + .public ov60_021EAFE0 + + thumb_func_start sub_0203DED4 +sub_0203DED4: ; 0x0203DED4 + push {r3, lr} + bl sub_0203E058 + ldr r0, _0203DEE8 ; =SDK_OVERLAY_OVY_60_ID + ldr r1, _0203DEEC ; =ov60_021EAFE0 + bl RegisterMainOverlay + mov r0, #1 + pop {r3, pc} + nop +_0203DEE8: .word SDK_OVERLAY_OVY_60_ID +_0203DEEC: .word ov60_021EAFE0 + thumb_func_end sub_0203DED4 + + thumb_func_start sub_0203DEF0 +sub_0203DEF0: ; 0x0203DEF0 + push {r4, lr} + add r4, r0, #0 + ldr r0, [r4] + ldr r0, [r0, #4] + cmp r0, #0 + beq _0203DF00 + bl GF_AssertFail +_0203DF00: + ldr r0, [r4] + ldr r0, [r0] + cmp r0, #0 + beq _0203DF0C + bl GF_AssertFail +_0203DF0C: + ldr r0, _0203DF2C ; =SDK_OVERLAY_OVY_1_ID + mov r1, #2 + bl HandleLoadOverlay + mov r1, #0 + str r1, [r4, #0x6c] + ldr r0, [r4] + mov r2, #0xb + str r1, [r0, #8] + ldr r0, _0203DF30 ; =0x02206378 + add r1, r4, #0 + bl OverlayManager_new + ldr r1, [r4] + str r0, [r1] + pop {r4, pc} + .balign 4, 0 +_0203DF2C: .word SDK_OVERLAY_OVY_1_ID +_0203DF30: .word 0x02206378 + thumb_func_end sub_0203DEF0 + + thumb_func_start sub_0203DF34 +sub_0203DF34: ; 0x0203DF34 + mov r1, #0 + str r1, [r0, #0x6c] + bx lr + .balign 4, 0 + thumb_func_end sub_0203DF34 + + thumb_func_start sub_0203DF3C +sub_0203DF3C: ; 0x0203DF3C + push {r4, lr} + add r4, r0, #0 + mov r0, #0x11 + lsl r0, r0, #4 + ldrb r0, [r4, r0] + mov r1, #1 + cmp r0, #0 + beq _0203DF52 + cmp r0, #1 + beq _0203DF52 + mov r1, #0 +_0203DF52: + cmp r1, #0 + bne _0203DF5A + bl GF_AssertFail +_0203DF5A: + mov r0, #0x11 + lsl r0, r0, #4 + ldrb r0, [r4, r0] + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203DF3C + + thumb_func_start sub_0203DF64 +sub_0203DF64: ; 0x0203DF64 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + beq _0203DF74 + cmp r4, #1 + beq _0203DF74 + bl GF_AssertFail +_0203DF74: + mov r0, #0x11 + lsl r0, r0, #4 + strb r4, [r5, r0] + pop {r3, r4, r5, pc} + thumb_func_end sub_0203DF64 + + thumb_func_start sub_0203DF7C +sub_0203DF7C: ; 0x0203DF7C + ldr r0, [r0] + ldr r0, [r0] + cmp r0, #0 + beq _0203DF88 + mov r0, #1 + bx lr +_0203DF88: + mov r0, #0 + bx lr + thumb_func_end sub_0203DF7C + + thumb_func_start sub_0203DF8C +sub_0203DF8C: ; 0x0203DF8C + ldr r1, [r0] + ldr r1, [r1] + cmp r1, #0 + beq _0203DF9E + ldr r0, [r0, #0x6c] + cmp r0, #0 + beq _0203DF9E + mov r0, #1 + bx lr +_0203DF9E: + mov r0, #0 + bx lr + .balign 4, 0 + thumb_func_end sub_0203DF8C + + thumb_func_start sub_0203DFA4 +sub_0203DFA4: ; 0x0203DFA4 + ldr r0, [r0] + ldr r0, [r0, #4] + cmp r0, #0 + beq _0203DFB0 + mov r0, #1 + bx lr +_0203DFB0: + mov r0, #0 + bx lr + thumb_func_end sub_0203DFA4 + + thumb_func_start SwitchToPokegearApp +SwitchToPokegearApp: ; 0x0203DFB4 + push {r4, r5, r6, lr} + add r5, r0, #0 + ldr r0, [r5] + add r4, r1, #0 + ldr r0, [r0, #4] + add r6, r2, #0 + cmp r0, #0 + beq _0203DFC8 + bl GF_AssertFail +_0203DFC8: + add r0, r5, #0 + bl sub_0203DF34 + add r0, r4, #0 + add r1, r6, #0 + mov r2, #0xb + bl OverlayManager_new + ldr r1, [r5] + str r0, [r1, #4] + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end SwitchToPokegearApp + + thumb_func_start sub_0203DFE0 +sub_0203DFE0: ; 0x0203DFE0 + push {r4, r5, r6, lr} + mov r2, #7 + add r5, r0, #0 + mov r0, #3 + mov r1, #0xb + lsl r2, r2, #0xe + bl sub_0201A910 + mov r1, #0x20 + mov r0, #3 + lsl r2, r1, #9 + bl sub_0201A910 + mov r2, #0x57 + mov r0, #0 + mov r1, #0x59 + lsl r2, r2, #4 + bl sub_0201A910 + mov r1, #0x4a + add r0, r5, #0 + lsl r1, r1, #2 + mov r2, #0xb + bl sub_02007280 + mov r2, #0x4a + mov r1, #0 + lsl r2, r2, #2 + add r4, r0, #0 + bl MIi_CpuFill8 + mov r0, #0xb + mov r1, #0x10 + bl AllocFromHeap + str r0, [r4] + mov r1, #0 + str r1, [r0] + ldr r0, [r4] + ldr r6, _0203E054 ; =SDK_OVERLAY_OVY_124_ID + str r1, [r0, #4] + ldr r0, [r4] + str r1, [r0, #8] + ldr r0, [r4] + str r1, [r0, #0xc] + add r0, r6, #0 + mov r1, #2 + bl HandleLoadOverlay + add r0, r5, #0 + add r1, r4, #0 + bl ov124_02260C20 + add r0, r6, #0 + bl UnloadOverlayByID + add r0, r4, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203E054: .word SDK_OVERLAY_OVY_124_ID + thumb_func_end sub_0203DFE0 + + thumb_func_start sub_0203E058 +sub_0203E058: ; 0x0203E058 + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_02007290 + add r4, r0, #0 + ldr r0, [r4, #0x30] + bl sub_0203AFD8 + add r0, r4, #0 + bl sub_0203B630 + add r0, r4, #0 + add r0, #0x94 + ldr r0, [r0] + bl FreeToHeap + add r0, r4, #0 + add r0, #0xa8 + ldr r0, [r0] + bl sub_02092BD0 + mov r0, #0x45 + lsl r0, r0, #2 + ldr r0, [r4, r0] + bl sub_02092DD8 + ldr r0, [r4] + bl FreeToHeap + add r0, r5, #0 + bl sub_02007294 + mov r0, #0x59 + bl sub_0201A9C4 + mov r0, #0xb + bl sub_0201A9C4 + mov r0, #0x20 + bl sub_0201A9C4 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203E058 + + thumb_func_start sub_0203E0AC +sub_0203E0AC: ; 0x0203E0AC + push {r4, lr} + add r4, r0, #0 + ldr r0, [r4] + cmp r0, #0 + beq _0203E0C8 + bl OverlayManager_run + cmp r0, #0 + beq _0203E0C8 + ldr r0, [r4] + bl OverlayManager_delete + mov r0, #0 + str r0, [r4] +_0203E0C8: + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203E0AC + + thumb_func_start sub_0203E0CC +sub_0203E0CC: ; 0x0203E0CC + push {r4, lr} + add r4, r0, #0 + bl sub_0203E15C + add r0, r4, #0 + bl sub_02050544 + cmp r0, #1 + bne _0203E0EE + ldr r0, [r4, #4] + cmp r0, #0 + beq _0203E0EE + mov r1, #0 + add r0, r4, #0 + add r2, r1, #0 + bl ov01_021F6830 +_0203E0EE: + ldr r0, [r4] + ldr r1, [r0] + cmp r1, #0 + beq _0203E10A + bl sub_0203E0AC + ldr r0, [r4] + ldr r0, [r0] + cmp r0, #0 + bne _0203E116 + ldr r0, _0203E138 ; =SDK_OVERLAY_OVY_1_ID + bl UnloadOverlayByID + b _0203E116 +_0203E10A: + ldr r1, [r0, #4] + cmp r1, #0 + beq _0203E116 + add r0, r0, #4 + bl sub_0203E0AC +_0203E116: + ldr r1, [r4] + ldr r0, [r1, #0xc] + cmp r0, #0 + beq _0203E134 + ldr r0, [r4, #0x10] + cmp r0, #0 + bne _0203E134 + ldr r0, [r1] + cmp r0, #0 + bne _0203E134 + ldr r0, [r1, #4] + cmp r0, #0 + bne _0203E134 + mov r0, #1 + pop {r4, pc} +_0203E134: + mov r0, #0 + pop {r4, pc} + .balign 4, 0 +_0203E138: .word SDK_OVERLAY_OVY_1_ID + thumb_func_end sub_0203E0CC + + thumb_func_start sub_0203E13C +sub_0203E13C: ; 0x0203E13C + push {r3, lr} + ldr r1, [r0] + ldr r1, [r1, #8] + cmp r1, #0 + bne _0203E158 + ldr r1, [r0, #0x6c] + cmp r1, #0 + beq _0203E158 + bl sub_02050590 + cmp r0, #0 + bne _0203E158 + mov r0, #1 + pop {r3, pc} +_0203E158: + mov r0, #0 + pop {r3, pc} + thumb_func_end sub_0203E13C + + thumb_func_start sub_0203E15C +sub_0203E15C: ; 0x0203E15C + push {r4, r5, lr} + sub sp, #0x14 + add r4, r0, #0 + bl sub_0203E13C + add r5, r0, #0 + beq _0203E186 + ldr r0, [r4, #0x40] + bl sub_0205CE68 + ldr r3, _0203E2EC ; =gMain + add r0, sp, #8 + ldr r2, [r3, #0x48] + ldr r3, [r3, #0x44] + lsl r2, r2, #0x10 + lsl r3, r3, #0x10 + add r1, r4, #0 + lsr r2, r2, #0x10 + lsr r3, r3, #0x10 + bl ov01_021E6928 +_0203E186: + ldr r0, [r4, #0x20] + ldr r2, [r4, #0x70] + ldr r1, [r0] + ldr r0, _0203E2F0 ; =0x00000109 + cmp r1, r0 + bne _0203E194 + mov r2, #0 +_0203E194: + cmp r2, #2 + beq _0203E1CC + cmp r2, #3 + beq _0203E1A2 + cmp r2, #4 + beq _0203E1F8 + b _0203E268 +_0203E1A2: + cmp r5, #0 + beq _0203E1C0 + bl sub_02057A0C + cmp r0, #0 + beq _0203E1BE + add r0, sp, #8 + add r1, r4, #0 + bl ov01_021E6E00 + cmp r0, #1 + bne _0203E1C0 + mov r5, #0 + b _0203E1C0 +_0203E1BE: + mov r5, #0 +_0203E1C0: + add r0, r4, #0 + add r1, r5, #0 + bl sub_020573F0 + add sp, #0x14 + pop {r4, r5, pc} +_0203E1CC: + cmp r5, #0 + beq _0203E1DC + add r0, sp, #8 + add r1, r4, #0 + bl ov01_021E6EFC + cmp r0, #1 + bne _0203E1DE +_0203E1DC: + b _0203E2E8 +_0203E1DE: + add r3, sp, #8 + ldrh r0, [r3, #8] + mov r2, #0 + str r0, [sp] + str r2, [sp, #4] + ldrh r3, [r3, #6] + ldr r0, [r4, #0x40] + ldr r1, [r4, #0x2c] + sub r2, r2, #1 + bl sub_0205CB48 + add sp, #0x14 + pop {r4, r5, pc} +_0203E1F8: + cmp r5, #0 + beq _0203E2E8 + add r0, sp, #8 + add r1, r4, #0 + bl ov01_021E6FD4 + cmp r0, #1 + bne _0203E22C + ldr r0, [r4, #4] + ldr r0, [r0, #8] + bl ov01_021EFACC + add r0, r4, #0 + mov r1, #4 + bl ov01_021F3DFC + ldr r0, [r4, #0x40] + bl ov01_021F2F24 + add r0, r4, #0 + mov r1, #0 + mov r2, #1 + bl ov01_021F6830 + add sp, #0x14 + pop {r4, r5, pc} +_0203E22C: + ldr r0, _0203E2EC ; =gMain + ldr r1, [r0, #0x48] + mov r0, #1 + tst r0, r1 + beq _0203E23E + ldr r0, [r4, #4] + ldr r0, [r0, #8] + bl ov01_021EFACC +_0203E23E: + mov r5, #0 + bl sub_0203E324 + cmp r0, #0 + beq _0203E24E + bl ov35_02259DB8 + add r5, r0, #0 +_0203E24E: + add r3, sp, #8 + ldrh r0, [r3, #8] + mov r2, #0 + mvn r2, r2 + str r0, [sp] + str r5, [sp, #4] + ldrh r3, [r3, #6] + ldr r0, [r4, #0x40] + ldr r1, [r4, #0x2c] + bl sub_0205CB48 + add sp, #0x14 + pop {r4, r5, pc} +_0203E268: + cmp r5, #0 + beq _0203E2E8 + add r0, sp, #8 + add r1, r4, #0 + bl ov01_021E6AF4 + add r5, r0, #0 + beq _0203E2B0 + ldr r0, [r4, #4] + ldr r0, [r0, #8] + bl ov01_021EFACC + add r0, r4, #0 + mov r1, #4 + bl ov01_021F3DFC + ldr r0, [r4, #0x40] + bl sub_0205CF44 + ldr r0, [r4, #0x40] + bl ov01_021F2F24 + add r0, r4, #0 + mov r1, #0 + mov r2, #1 + bl ov01_021F6830 + cmp r5, #2 + beq _0203E2E8 + mov r0, #0x45 + lsl r0, r0, #2 + ldr r0, [r4, r0] + bl sub_02092FA8 + add sp, #0x14 + pop {r4, r5, pc} +_0203E2B0: + ldr r0, _0203E2EC ; =gMain + ldr r1, [r0, #0x48] + mov r0, #1 + tst r0, r1 + beq _0203E2C2 + ldr r0, [r4, #4] + ldr r0, [r0, #8] + bl ov01_021EFACC +_0203E2C2: + mov r5, #0 + bl sub_0203E324 + cmp r0, #0 + beq _0203E2D2 + bl ov35_02259DB8 + add r5, r0, #0 +_0203E2D2: + add r3, sp, #8 + ldrh r0, [r3, #8] + mov r2, #0 + mvn r2, r2 + str r0, [sp] + str r5, [sp, #4] + ldrh r3, [r3, #6] + ldr r0, [r4, #0x40] + ldr r1, [r4, #0x2c] + bl sub_0205CB48 +_0203E2E8: + add sp, #0x14 + pop {r4, r5, pc} + .balign 4, 0 +_0203E2EC: .word gMain +_0203E2F0: .word 0x00000109 + thumb_func_end sub_0203E15C + + thumb_func_start sub_0203E2F4 +sub_0203E2F4: ; 0x0203E2F4 + ldr r0, _0203E304 ; =0x021D4158 + ldr r3, _0203E308 ; =sub_02037504 + ldr r0, [r0] + mov r1, #1 + ldr r0, [r0] + str r1, [r0, #8] + bx r3 + nop +_0203E304: .word 0x021D4158 +_0203E308: .word sub_02037504 + thumb_func_end sub_0203E2F4 + + thumb_func_start sub_0203E30C +sub_0203E30C: ; 0x0203E30C + ldr r0, _0203E31C ; =0x021D4158 + ldr r3, _0203E320 ; =sub_020374E4 + ldr r0, [r0] + mov r1, #0 + ldr r0, [r0] + str r1, [r0, #8] + bx r3 + nop +_0203E31C: .word 0x021D4158 +_0203E320: .word sub_020374E4 + thumb_func_end sub_0203E30C + + thumb_func_start sub_0203E324 +sub_0203E324: ; 0x0203E324 + ldr r0, _0203E338 ; =0x021D4158 + ldr r0, [r0] + ldr r0, [r0, #4] + cmp r0, #0 + bne _0203E332 + mov r0, #0 + bx lr +_0203E332: + ldr r0, [r0, #0x14] + bx lr + nop +_0203E338: .word 0x021D4158 + thumb_func_end sub_0203E324 + + thumb_func_start sub_0203E33C +sub_0203E33C: ; 0x0203E33C + str r1, [r0, #0x1c] + bx lr + thumb_func_end sub_0203E33C + + thumb_func_start sub_0203E340 +sub_0203E340: ; 0x0203E340 + ldr r0, [r0, #8] + bx lr + thumb_func_end sub_0203E340 + + thumb_func_start sub_0203E344 +sub_0203E344: ; 0x0203E344 + ldr r0, [r0, #0xc] + bx lr + thumb_func_end sub_0203E344 + + thumb_func_start sub_0203E348 +sub_0203E348: ; 0x0203E348 + push {r3, lr} + bl LCRandom + bl LCRandom + pop {r3, pc} + thumb_func_end sub_0203E348 + + thumb_func_start sub_0203E354 +sub_0203E354: ; 0x0203E354 + ldr r0, _0203E364 ; =0x021D4158 + mov r1, #1 + ldr r0, [r0] + mvn r1, r1 + add r0, #0xc4 + str r1, [r0] + bx lr + nop +_0203E364: .word 0x021D4158 + thumb_func_end sub_0203E354 + + thumb_func_start sub_0203E368 +sub_0203E368: ; 0x0203E368 + ldr r2, _0203E37C ; =0x020FA17C + add r3, r0, #0 + ldmia r2!, {r0, r1} + stmia r3!, {r0, r1} + ldmia r2!, {r0, r1} + stmia r3!, {r0, r1} + ldr r0, [r2] + str r0, [r3] + bx lr + nop +_0203E37C: .word 0x020FA17C + thumb_func_end sub_0203E368 + + thumb_func_start sub_0203E380 +sub_0203E380: ; 0x0203E380 + ldr r2, _0203E394 ; =0x020FA190 + add r3, r0, #0 + ldmia r2!, {r0, r1} + stmia r3!, {r0, r1} + ldmia r2!, {r0, r1} + stmia r3!, {r0, r1} + ldr r0, [r2] + str r0, [r3] + bx lr + nop +_0203E394: .word 0x020FA190 + thumb_func_end sub_0203E380 + + thumb_func_start sub_0203E398 +sub_0203E398: ; 0x0203E398 + push {r3, lr} + bl sub_0203B9C4 + bl sub_0203B958 + bl sub_0203E368 + pop {r3, pc} + thumb_func_end sub_0203E398 + + thumb_func_start sub_0203E3A8 +sub_0203E3A8: ; 0x0203E3A8 + mov r0, #1 + bx lr + thumb_func_end sub_0203E3A8 + + thumb_func_start sub_0203E3AC +sub_0203E3AC: ; 0x0203E3AC + push {r3, lr} + bl ov12_022378C0 + cmp r0, #0 + beq _0203E3BA + mov r0, #1 + pop {r3, pc} +_0203E3BA: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0203E3AC + + thumb_func_start sub_0203E3C0 +sub_0203E3C0: ; 0x0203E3C0 + mov r0, #1 + bx lr + thumb_func_end sub_0203E3C0 + + thumb_func_start sub_0203E3C4 +sub_0203E3C4: ; 0x0203E3C4 + ldr r3, _0203E3CC ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203E3D0 ; =0x020FA484 + bx r3 + .balign 4, 0 +_0203E3CC: .word SwitchToPokegearApp +_0203E3D0: .word 0x020FA484 + thumb_func_end sub_0203E3C4 + + thumb_func_start sub_0203E3D4 +sub_0203E3D4: ; 0x0203E3D4 + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203E3F8 ; =0x020FA464 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203E3F8: .word 0x020FA464 + thumb_func_end sub_0203E3D4 + + thumb_func_start sub_0203E3FC +sub_0203E3FC: ; 0x0203E3FC + push {r3, r4, r5, r6, lr} + sub sp, #4 + add r5, r0, #0 + ldr r0, [r5, #0xc] + add r6, r1, #0 + bl sub_0207879C + ldr r1, _0203E45C ; =0x020FA1B8 + mov r2, #0xb + bl sub_02078644 + mov r1, #0x43 + lsl r1, r1, #2 + add r1, r5, r1 + add r3, r5, #0 + str r1, [sp] + add r3, #0x94 + ldr r1, [r5, #0xc] + ldr r3, [r3] + mov r2, #0 + add r4, r0, #0 + bl sub_0207789C + ldr r1, [r5, #0x70] + add r0, r4, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + bl sub_020778E8 + ldr r0, [r5, #0x40] + bl sub_0205C700 + cmp r0, #1 + bne _0203E446 + add r0, r4, #0 + bl sub_020778C8 +_0203E446: + add r0, r4, #0 + add r1, r6, #0 + bl sub_020778DC + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203E3D4 + add r0, r4, #0 + add sp, #4 + pop {r3, r4, r5, r6, pc} + .balign 4, 0 +_0203E45C: .word 0x020FA1B8 + thumb_func_end sub_0203E3FC + + thumb_func_start sub_0203E460 +sub_0203E460: ; 0x0203E460 + push {r3, r4, r5, r6, lr} + sub sp, #4 + add r5, r0, #0 + ldr r0, [r5, #0xc] + add r4, r1, #0 + bl sub_0207879C + add r6, r0, #0 + cmp r4, #0 + beq _0203E47A + cmp r4, #1 + beq _0203E482 + b _0203E48A +_0203E47A: + ldr r1, _0203E4C0 ; =0x020FA1A4 + ldr r0, _0203E4C4 ; =0x0210F978 + str r1, [r0] + b _0203E48E +_0203E482: + ldr r1, _0203E4C8 ; =0x020FA1AC + ldr r0, _0203E4C4 ; =0x0210F978 + str r1, [r0] + b _0203E48E +_0203E48A: + bl GF_AssertFail +_0203E48E: + ldr r1, _0203E4C4 ; =0x0210F978 + add r0, r6, #0 + ldr r1, [r1] + mov r2, #0x20 + bl sub_02078644 + mov r1, #0x43 + lsl r1, r1, #2 + add r1, r5, r1 + add r3, r5, #0 + str r1, [sp] + add r3, #0x94 + ldr r1, [r5, #0xc] + ldr r3, [r3] + add r4, r0, #0 + mov r2, #3 + bl sub_0207789C + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203E3D4 + add r0, r4, #0 + add sp, #4 + pop {r3, r4, r5, r6, pc} + .balign 4, 0 +_0203E4C0: .word 0x020FA1A4 +_0203E4C4: .word 0x0210F978 +_0203E4C8: .word 0x020FA1AC + thumb_func_end sub_0203E460 + + thumb_func_start sub_0203E4CC +sub_0203E4CC: ; 0x0203E4CC + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_02077904 + add r4, r0, #0 + beq _0203E4E6 + add r0, r5, #0 + bl sub_0207790C + cmp r0, #5 + bne _0203E4E6 + bl GF_AssertFail +_0203E4E6: + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203E4CC + + thumb_func_start sub_0203E4EC +sub_0203E4EC: ; 0x0203E4EC + ldr r3, _0203E4F4 ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203E4F8 ; =0x02103A1C + bx r3 + .balign 4, 0 +_0203E4F4: .word SwitchToPokegearApp +_0203E4F8: .word 0x02103A1C + thumb_func_end sub_0203E4EC + + thumb_func_start sub_0203E4FC +sub_0203E4FC: ; 0x0203E4FC + push {r3, r4, r5, r6, r7, lr} + add r5, r1, #0 + mov r1, #0x44 + add r6, r2, #0 + add r7, r3, #0 + bl AllocFromHeap + add r4, r0, #0 + mov r0, #0 + add r1, r4, #0 + mov r2, #0x44 + bl MIi_CpuClearFast + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + str r0, [r4] + ldr r0, [r5, #0xc] + bl sub_0207879C + str r0, [r4, #4] + ldr r0, [r5, #0xc] + bl Sav2_Mailbox_get + str r0, [r4, #8] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #0xc] + add r0, r4, #0 + add r0, #0x25 + strb r6, [r0] + add r0, r4, #0 + add r0, #0x24 + strb r7, [r0] + mov r0, #0x43 + lsl r0, r0, #2 + str r5, [r4, #0x1c] + add r0, r5, r0 + str r0, [r4, #0x20] + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0203E4FC + + thumb_func_start sub_0203E550 +sub_0203E550: ; 0x0203E550 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r7, r2, #0 + mov r2, #0 + add r6, r1, #0 + mov r0, #0xb + add r1, r5, #0 + add r3, r2, #0 + bl sub_0203E4FC + add r4, r0, #0 + str r6, [r4, #0x18] + add r0, #0x26 + strb r7, [r0] + ldr r1, _0203E57C ; =0x0210159C + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203E57C: .word 0x0210159C + thumb_func_end sub_0203E550 + + thumb_func_start sub_0203E580 +sub_0203E580: ; 0x0203E580 + push {r3, r4, r5, lr} + mov r0, #0xb + mov r2, #0 + mov r3, #3 + add r5, r1, #0 + bl sub_0203E4FC + add r4, r0, #0 + ldr r1, _0203E5A0 ; =0x0210159C + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r3, r4, r5, pc} + nop +_0203E5A0: .word 0x0210159C + thumb_func_end sub_0203E580 + + thumb_func_start sub_0203E5A4 +sub_0203E5A4: ; 0x0203E5A4 + push {r3, r4, r5, lr} + mov r0, #0xb + mov r2, #0 + mov r3, #0x13 + add r5, r1, #0 + bl sub_0203E4FC + add r4, r0, #0 + ldr r1, _0203E5C4 ; =0x0210159C + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r3, r4, r5, pc} + nop +_0203E5C4: .word 0x0210159C + thumb_func_end sub_0203E5A4 + + thumb_func_start sub_0203E5C8 +sub_0203E5C8: ; 0x0203E5C8 + add r0, #0x26 + ldrb r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0203E5C8 + + thumb_func_start sub_0203E5D0 +sub_0203E5D0: ; 0x0203E5D0 + push {r4, r5, r6, lr} + add r4, r2, #0 + mov r0, #0xb + mov r2, #0 + mov r3, #0x12 + add r5, r1, #0 + bl sub_0203E4FC + add r6, r0, #0 + add r0, #0x26 + strb r4, [r0] + ldr r1, _0203E5F4 ; =0x0210159C + add r0, r5, #0 + add r2, r6, #0 + bl SwitchToPokegearApp + add r0, r6, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203E5F4: .word 0x0210159C + thumb_func_end sub_0203E5D0 + + thumb_func_start sub_0203E5F8 +sub_0203E5F8: ; 0x0203E5F8 + add r0, #0x27 + ldrb r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0203E5F8 + + thumb_func_start sub_0203E600 +sub_0203E600: ; 0x0203E600 + ldrb r0, [r0, #0x14] + bx lr + thumb_func_end sub_0203E600 + + thumb_func_start sub_0203E604 +sub_0203E604: ; 0x0203E604 + push {r4, r5, r6, lr} + add r5, r0, #0 + bl sub_0205064C + add r6, r0, #0 + add r0, r5, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_02050654 + add r5, r0, #0 + ldr r0, [r5] + cmp r0, #4 + bhi _0203E6CC + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203E630: ; jump table + .short _0203E63A - _0203E630 - 2 ; case 0 + .short _0203E64A - _0203E630 - 2 ; case 1 + .short _0203E680 - _0203E630 - 2 ; case 2 + .short _0203E6A2 - _0203E630 - 2 ; case 3 + .short _0203E6C2 - _0203E630 - 2 ; case 4 +_0203E63A: + ldr r1, _0203E6D0 ; =0x0210159C + ldr r2, [r4, #4] + add r0, r6, #0 + bl SwitchToPokegearApp + mov r0, #1 + str r0, [r5] + b _0203E6CC +_0203E64A: + add r0, r6, #0 + bl sub_020505A0 + cmp r0, #0 + bne _0203E6CC + ldr r0, [r4, #4] + add r0, #0x26 + ldrb r0, [r0] + cmp r0, #6 + beq _0203E66E + cmp r0, #7 + bne _0203E67A + mov r0, #2 + bl sub_0205A508 + mov r0, #4 + str r0, [r5] + b _0203E6CC +_0203E66E: + mov r0, #1 + bl sub_0205A508 + mov r0, #4 + str r0, [r5] + b _0203E6CC +_0203E67A: + mov r0, #2 + str r0, [r5] + b _0203E6CC +_0203E680: + ldr r1, [r4] + add r0, r6, #0 + mov r2, #0 + bl sub_0203E76C + str r0, [r4, #8] + ldr r1, [r4, #4] + add r1, #0x26 + ldrb r1, [r1] + strb r1, [r0, #0x14] + ldr r1, [r4, #8] + add r0, r6, #0 + bl sub_0203E4EC + mov r0, #3 + str r0, [r5] + b _0203E6CC +_0203E6A2: + add r0, r6, #0 + bl sub_020505A0 + cmp r0, #0 + bne _0203E6CC + ldr r0, [r4, #8] + ldrb r1, [r0, #0x14] + ldr r0, [r4, #4] + add r0, #0x26 + strb r1, [r0] + ldr r0, [r4, #8] + bl FreeToHeap + mov r0, #0 + str r0, [r5] + b _0203E6CC +_0203E6C2: + add r0, r4, #0 + bl FreeToHeap + mov r0, #1 + pop {r4, r5, r6, pc} +_0203E6CC: + mov r0, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203E6D0: .word 0x0210159C + thumb_func_end sub_0203E604 + + thumb_func_start sub_0203E6D4 +sub_0203E6D4: ; 0x0203E6D4 + push {r3, r4, r5, r6, r7, lr} + add r5, r1, #0 + add r7, r0, #0 + bl sub_0205064C + add r6, r0, #0 + add r0, r5, #0 + mov r1, #0xc + bl AllocFromHeap + add r4, r0, #0 + add r0, r5, #0 + add r1, r6, #0 + mov r2, #0 + mov r3, #2 + str r5, [r4] + bl sub_0203E4FC + add r5, r0, #0 + add r0, #0x36 + ldrb r1, [r0] + mov r0, #0xf + add r2, r4, #0 + bic r1, r0 + mov r0, #2 + orr r1, r0 + add r0, r5, #0 + add r0, #0x36 + strb r1, [r0] + add r0, r5, #0 + add r0, #0x36 + ldrb r1, [r0] + mov r0, #0xf0 + bic r1, r0 + mov r0, #0x20 + orr r1, r0 + add r0, r5, #0 + add r0, #0x36 + strb r1, [r0] + add r0, r5, #0 + mov r1, #0x1e + add r0, #0x37 + strb r1, [r0] + mov r0, #0 + str r0, [r5, #0x14] + ldr r1, _0203E73C ; =sub_0203E604 + add r0, r7, #0 + str r5, [r4, #4] + bl sub_02050530 + add r0, r5, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203E73C: .word sub_0203E604 + thumb_func_end sub_0203E6D4 + + thumb_func_start sub_0203E740 +sub_0203E740: ; 0x0203E740 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + mov r0, #0xb + add r1, r5, #0 + mov r2, #0 + mov r3, #0x15 + bl sub_0203E4FC + add r6, r0, #0 + add r0, #0x26 + strb r4, [r0] + ldr r1, _0203E768 ; =0x0210159C + add r0, r5, #0 + add r2, r6, #0 + bl SwitchToPokegearApp + add r0, r6, #0 + pop {r4, r5, r6, pc} + nop +_0203E768: .word 0x0210159C + thumb_func_end sub_0203E740 + + thumb_func_start sub_0203E76C +sub_0203E76C: ; 0x0203E76C + push {r3, r4, r5, r6, r7, lr} + add r6, r0, #0 + add r0, r1, #0 + ldr r5, [r6, #0xc] + mov r1, #0x3c + add r7, r2, #0 + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #0x3c + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #4] + add r0, r5, #0 + bl SavArray_PlayerParty_get + str r0, [r4] + mov r0, #1 + strb r0, [r4, #0x11] + mov r0, #0 + strb r0, [r4, #0x14] + ldr r0, [r4] + bl GetPartyCount + strb r0, [r4, #0x13] + mov r0, #0 + strh r0, [r4, #0x18] + strb r7, [r4, #0x12] + add r0, r5, #0 + bl sub_02074910 + str r0, [r4, #0x1c] + add r0, r5, #0 + bl sub_02088288 + str r0, [r4, #0x2c] + add r0, r5, #0 + bl sub_0202D95C + str r0, [r4, #0x20] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r6, r0 + str r0, [r4, #0x30] + ldr r0, [r6, #0xc] + bl sub_0208828C + str r0, [r4, #0x34] + ldr r1, _0203E7F0 ; =0x020FA1B0 + add r0, r4, #0 + bl sub_02089D40 + add r0, r5, #0 + bl Sav2_PlayerData_GetProfileAddr + add r1, r0, #0 + add r0, r4, #0 + bl sub_0208AD34 + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203E7F0: .word 0x020FA1B0 + thumb_func_end sub_0203E76C + + thumb_func_start sub_0203E7F4 +sub_0203E7F4: ; 0x0203E7F4 + push {r3, r4, r5, r6, r7, lr} + add r5, r1, #0 + mov r1, #0x3c + add r6, r2, #0 + add r7, r3, #0 + bl AllocFromHeap + mov r1, #0 + mov r2, #0x3c + add r4, r0, #0 + bl MIi_CpuFill8 + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + str r0, [r4] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #4] + mov r0, #1 + strb r0, [r4, #0x11] + strb r6, [r4, #0x14] + strb r0, [r4, #0x13] + strh r7, [r4, #0x18] + mov r0, #2 + strb r0, [r4, #0x12] + ldr r0, [r5, #0xc] + bl sub_02074910 + str r0, [r4, #0x1c] + mov r0, #0 + str r0, [r4, #0x2c] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #0x30] + ldr r1, _0203E860 ; =0x020FA1A8 + add r0, r4, #0 + bl sub_02089D40 + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetProfileAddr + add r1, r0, #0 + add r0, r4, #0 + bl sub_0208AD34 + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203E4EC + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203E860: .word 0x020FA1A8 + thumb_func_end sub_0203E7F4 + + thumb_func_start sub_0203E864 +sub_0203E864: ; 0x0203E864 + ldrb r0, [r0, #0x16] + bx lr + thumb_func_end sub_0203E864 + + thumb_func_start sub_0203E868 +sub_0203E868: ; 0x0203E868 + ldr r3, _0203E870 ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203E874 ; =0x020FA414 + bx r3 + .balign 4, 0 +_0203E870: .word SwitchToPokegearApp +_0203E874: .word 0x020FA414 + thumb_func_end sub_0203E868 + + thumb_func_start sub_0203E878 +sub_0203E878: ; 0x0203E878 + push {r3, r4, r5, r6, lr} + sub sp, #0xc + add r6, r0, #0 + bl sub_02050654 + add r5, r0, #0 + add r0, r6, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r6, #0 + bl sub_0205064C + ldr r1, [r5] + add r6, r0, #0 + cmp r1, #0 + beq _0203E8A4 + cmp r1, #1 + beq _0203E8B2 + cmp r1, #2 + beq _0203E8C2 + b _0203E958 +_0203E8A4: + ldr r1, [r4, #0xc] + bl sub_0203EA24 + ldr r0, [r5] + add r0, r0, #1 + str r0, [r5] + b _0203E958 +_0203E8B2: + bl sub_020505A0 + cmp r0, #0 + bne _0203E958 + ldr r0, [r5] + add r0, r0, #1 + str r0, [r5] + b _0203E958 +_0203E8C2: + ldr r0, [r4, #0xc] + bl sub_02090D48 + cmp r0, #0 + bne _0203E8D6 + ldr r0, [r4, #0xc] + bl sub_02090D4C + cmp r0, #0 + bne _0203E8DE +_0203E8D6: + ldr r0, [r4] + mov r1, #0 + strh r1, [r0] + b _0203E946 +_0203E8DE: + ldr r0, [r4] + mov r1, #1 + strh r1, [r0] + ldr r0, [r4, #0x10] + cmp r0, #5 + bhi _0203E902 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203E8F6: ; jump table + .short _0203E902 - _0203E8F6 - 2 ; case 0 + .short _0203E90E - _0203E8F6 - 2 ; case 1 + .short _0203E926 - _0203E8F6 - 2 ; case 2 + .short _0203E926 - _0203E8F6 - 2 ; case 3 + .short _0203E926 - _0203E8F6 - 2 ; case 4 + .short _0203E926 - _0203E8F6 - 2 ; case 5 +_0203E902: + ldr r0, [r4, #0xc] + bl sub_02090D50 + ldr r1, [r4, #4] + strh r0, [r1] + b _0203E946 +_0203E90E: + ldr r0, [r4, #0xc] + add r1, sp, #8 + bl sub_02090D54 + add r0, sp, #0 + ldrh r2, [r0, #8] + ldr r1, [r4, #4] + strh r2, [r1] + ldrh r1, [r0, #0xa] + ldr r0, [r4, #8] + strh r1, [r0] + b _0203E946 +_0203E926: + ldr r0, [r4, #0xc] + add r1, sp, #0 + bl sub_02090D60 + ldr r1, [r4, #0x10] + ldr r0, [r6, #0xc] + sub r1, r1, #2 + add r2, sp, #0 + bl sub_0202D640 + add r0, sp, #0 + mov r1, #0 + bl MailMsg_GetFieldI + ldr r1, [r4, #4] + strh r0, [r1] +_0203E946: + ldr r0, [r4, #0xc] + bl sub_02090D0C + add r0, r4, #0 + bl FreeToHeap + add sp, #0xc + mov r0, #1 + pop {r3, r4, r5, r6, pc} +_0203E958: + mov r0, #0 + add sp, #0xc + pop {r3, r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203E878 + + thumb_func_start sub_0203E960 +sub_0203E960: ; 0x0203E960 + push {r4, r5, r6, r7, lr} + sub sp, #0xc + str r0, [sp, #4] + add r6, r1, #0 + str r2, [sp, #8] + add r7, r3, #0 + bl sub_0205064C + add r5, r0, #0 + mov r0, #0x20 + mov r1, #0x14 + bl AllocFromHeap + add r4, r0, #0 + ldr r0, [sp, #8] + cmp r6, #5 + str r0, [r4] + ldr r0, [sp, #0x20] + str r7, [r4, #4] + str r0, [r4, #8] + str r6, [r4, #0x10] + bhi _0203E9A4 + add r0, r6, r6 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203E998: ; jump table + .short _0203E9A4 - _0203E998 - 2 ; case 0 + .short _0203E9C0 - _0203E998 - 2 ; case 1 + .short _0203E9E0 - _0203E998 - 2 ; case 2 + .short _0203E9E0 - _0203E998 - 2 ; case 3 + .short _0203E9E0 - _0203E998 - 2 ; case 4 + .short _0203E9E0 - _0203E998 - 2 ; case 5 +_0203E9A4: + mov r3, #0x20 + str r3, [sp] + mov r0, #0 + add r3, #0xec + ldr r2, [r5, #0xc] + add r1, r0, #0 + add r3, r5, r3 + bl sub_02090C94 + str r0, [r4, #0xc] + ldrh r1, [r7] + bl sub_02090D14 + b _0203EA12 +_0203E9C0: + mov r3, #0x20 + str r3, [sp] + add r3, #0xec + ldr r2, [r5, #0xc] + mov r0, #1 + mov r1, #0 + add r3, r5, r3 + bl sub_02090C94 + str r0, [r4, #0xc] + ldr r2, [sp, #0x20] + ldrh r1, [r7] + ldrh r2, [r2] + bl sub_02090D18 + b _0203EA12 +_0203E9E0: + mov r3, #0x20 + str r3, [sp] + add r3, #0xec + ldr r2, [r5, #0xc] + mov r0, #2 + mov r1, #0 + add r3, r5, r3 + bl sub_02090C94 + str r0, [r4, #0xc] + bl sub_02090D40 + sub r1, r6, #2 + lsl r1, r1, #0x18 + ldr r0, [r5, #0xc] + lsr r1, r1, #0x18 + bl sub_0202D660 + add r1, r0, #0 + ldr r0, [r4, #0xc] + bl sub_02090D20 + ldr r0, [r4, #0xc] + bl sub_02090D34 +_0203EA12: + ldr r0, [sp, #4] + ldr r1, _0203EA20 ; =sub_0203E878 + add r2, r4, #0 + bl sub_02050530 + add sp, #0xc + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_0203EA20: .word sub_0203E878 + thumb_func_end sub_0203E960 + + thumb_func_start sub_0203EA24 +sub_0203EA24: ; 0x0203EA24 + ldr r3, _0203EA2C ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203EA30 ; =0x020FA404 + bx r3 + .balign 4, 0 +_0203EA2C: .word SwitchToPokegearApp +_0203EA30: .word 0x020FA404 + thumb_func_end sub_0203EA24 + + thumb_func_start sub_0203EA34 +sub_0203EA34: ; 0x0203EA34 + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203EA58 ; =0x020FA3F4 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203EA58: .word 0x020FA3F4 + thumb_func_end sub_0203EA34 + + thumb_func_start SwitchToPokegearApp_Radio +SwitchToPokegearApp_Radio: ; 0x0203EA5C + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203EA80 ; =0x020FA3E4 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203EA80: .word 0x020FA3E4 + thumb_func_end SwitchToPokegearApp_Radio + + thumb_func_start sub_0203EA84 +sub_0203EA84: ; 0x0203EA84 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #0x2c + bl AllocFromHeapAtEnd + add r4, r0, #0 + mov r1, #0 + mov r2, #0x2c + bl MIi_CpuFill8 + add r0, r5, #0 + add r1, r4, #0 + bl sub_02092D80 + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EA34 + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203EA84 + + thumb_func_start Radio_new +Radio_new: ; 0x0203EAB0 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r6, r1, #0 + mov r0, #0xb + mov r1, #0x2c + bl AllocFromHeapAtEnd + add r4, r0, #0 + mov r1, #0 + mov r2, #0x2c + bl MIi_CpuFill8 + add r0, r5, #0 + add r1, r4, #0 + bl sub_02092D8C + add r0, r5, #0 + add r1, r4, #0 + strb r6, [r4] + bl SwitchToPokegearApp_Radio + add r0, r4, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end Radio_new + + thumb_func_start sub_0203EAE0 +sub_0203EAE0: ; 0x0203EAE0 + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203EB04 ; =0x020FA3D4 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203EB04: .word 0x020FA3D4 + thumb_func_end sub_0203EAE0 + + thumb_func_start sub_0203EB08 +sub_0203EB08: ; 0x0203EB08 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #0x24 + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #0x24 + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl sub_0203E344 + str r0, [r4] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #4] + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EAE0 + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203EB08 + + thumb_func_start sub_0203EB3C +sub_0203EB3C: ; 0x0203EB3C + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203EB60 ; =0x020FA3C4 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203EB60: .word 0x020FA3C4 + thumb_func_end sub_0203EB3C + + thumb_func_start sub_0203EB64 +sub_0203EB64: ; 0x0203EB64 + push {r3, r4, r5, lr} + mov r1, #0xb + add r5, r0, #0 + bl ov02_0224E4EC + add r4, r0, #0 + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EB3C + add r0, r4, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203EB64 + + thumb_func_start sub_0203EB7C +sub_0203EB7C: ; 0x0203EB7C + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203EBA0 ; =0x020FA3B4 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203EBA0: .word 0x020FA3B4 + thumb_func_end sub_0203EB7C + + thumb_func_start sub_0203EBA4 +sub_0203EBA4: ; 0x0203EBA4 + push {r4, r5, r6, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #0x10 + add r6, r2, #0 + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #0x10 + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl sub_0203E344 + str r0, [r4, #0xc] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #8] + add r0, r5, #0 + add r1, r4, #0 + strb r6, [r4, #2] + bl sub_0203EB7C + add r0, r4, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203EBA4 + + thumb_func_start sub_0203EBDC +sub_0203EBDC: ; 0x0203EBDC + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203EC00 ; =0x020FA3A4 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203EC00: .word 0x020FA3A4 + thumb_func_end sub_0203EBDC + + thumb_func_start sub_0203EC04 +sub_0203EC04: ; 0x0203EC04 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r6, r1, #0 + mov r0, #0xb + mov r1, #0x10 + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #0x10 + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl sub_0203E344 + str r0, [r4, #0xc] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #8] + add r0, r5, #0 + add r1, r4, #0 + strb r6, [r4, #5] + bl sub_0203EBDC + add r0, r4, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203EC04 + + thumb_func_start sub_0203EC3C +sub_0203EC3C: ; 0x0203EC3C + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203EC60 ; =0x020FA394 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203EC60: .word 0x020FA394 + thumb_func_end sub_0203EC3C + + thumb_func_start sub_0203EC64 +sub_0203EC64: ; 0x0203EC64 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #8 + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #8 + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl sub_0203E344 + str r0, [r4, #4] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4] + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EC3C + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203EC64 + + thumb_func_start sub_0203EC98 +sub_0203EC98: ; 0x0203EC98 + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203ECBC ; =0x020FA384 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203ECBC: .word 0x020FA384 + thumb_func_end sub_0203EC98 + + thumb_func_start sub_0203ECC0 +sub_0203ECC0: ; 0x0203ECC0 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #0x10 + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #0x10 + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl sub_0203E344 + str r0, [r4, #0xc] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #4] + add r0, r5, #0 + add r0, #0x94 + ldr r0, [r0] + add r1, r4, #0 + str r0, [r4, #8] + add r0, r5, #0 + bl sub_0203EC98 + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203ECC0 + + thumb_func_start sub_0203ECFC +sub_0203ECFC: ; 0x0203ECFC + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203ED20 ; =0x020FA374 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203ED20: .word 0x020FA374 + thumb_func_end sub_0203ECFC + + thumb_func_start sub_0203ED24 +sub_0203ED24: ; 0x0203ED24 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r6, r1, #0 + mov r0, #0xb + mov r1, #0x1c + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #0x1c + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl sub_0203E344 + str r0, [r4, #0x18] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #0x14] + ldr r0, [r4, #0x18] + bl sub_0202CF54 + mov r1, #0 + bl sub_0202D18C + str r0, [r4, #0x10] + cmp r6, #1 + bne _0203ED72 + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_02066A0C + cmp r0, #0 + bne _0203ED72 + mov r0, #0 + strb r0, [r4] + b _0203ED74 +_0203ED72: + strb r6, [r4] +_0203ED74: + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203ECFC + add r0, r4, #0 + pop {r4, r5, r6, pc} + thumb_func_end sub_0203ED24 + + thumb_func_start sub_0203ED80 +sub_0203ED80: ; 0x0203ED80 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + mov r0, #0xb + mov r1, #0x1c + add r7, r2, #0 + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #0x1c + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl sub_0203E344 + str r0, [r4, #0x18] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #0x14] + ldr r0, [r4, #0x18] + bl sub_0202CF54 + mov r1, #0 + bl sub_0202D18C + str r0, [r4, #0x10] + mov r0, #3 + strb r0, [r4] + str r6, [r4, #0xc] + add r0, r5, #0 + add r1, r4, #0 + str r7, [r4, #8] + bl sub_0203ECFC + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0203ED80 + + thumb_func_start sub_0203EDCC +sub_0203EDCC: ; 0x0203EDCC + ldr r3, _0203EDD4 ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203EDD8 ; =0x020FA364 + bx r3 + .balign 4, 0 +_0203EDD4: .word SwitchToPokegearApp +_0203EDD8: .word 0x020FA364 + thumb_func_end sub_0203EDCC + + thumb_func_start sub_0203EDDC +sub_0203EDDC: ; 0x0203EDDC + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + mov r0, #0xb + mov r1, #0x14 + add r7, r2, #0 + str r3, [sp] + bl AllocFromHeap + add r4, r0, #0 + mov r1, #0 + mov r2, #0x14 + bl MIi_CpuFill8 + str r6, [r4] + ldr r0, [sp] + str r7, [r4, #4] + str r0, [r4, #8] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #0xc] + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EDCC + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0203EDDC + + thumb_func_start sub_0203EE14 +sub_0203EE14: ; 0x0203EE14 + ldr r3, _0203EE1C ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203EE20 ; =0x020FA354 + bx r3 + .balign 4, 0 +_0203EE1C: .word SwitchToPokegearApp +_0203EE20: .word 0x020FA354 + thumb_func_end sub_0203EE14 + + thumb_func_start sub_0203EE24 +sub_0203EE24: ; 0x0203EE24 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #0xc + bl AllocFromHeapAtEnd + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203E344 + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #4] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #8] + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EE14 + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203EE24 + + thumb_func_start sub_0203EE54 +sub_0203EE54: ; 0x0203EE54 + push {r4, lr} + add r4, r0, #0 + bl sub_020503D0 + mov r1, #0xef + bl sub_020503DC + cmp r0, #0 + beq _0203EE8A + add r0, r4, #0 + bl sub_020503D0 + mov r1, #0xf0 + bl sub_020503DC + cmp r0, #0 + beq _0203EE8A + add r0, r4, #0 + bl sub_020503D0 + mov r1, #0xf1 + bl sub_020503DC + cmp r0, #0 + beq _0203EE8A + mov r0, #1 + pop {r4, pc} +_0203EE8A: + mov r0, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0203EE54 + + thumb_func_start sub_0203EE90 +sub_0203EE90: ; 0x0203EE90 + ldr r3, _0203EE98 ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203EE9C ; =0x020FA344 + bx r3 + .balign 4, 0 +_0203EE98: .word SwitchToPokegearApp +_0203EE9C: .word 0x020FA344 + thumb_func_end sub_0203EE90 + + thumb_func_start sub_0203EEA0 +sub_0203EEA0: ; 0x0203EEA0 + push {r4, r5, r6, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #8 + bl AllocFromHeapAtEnd + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203E344 + add r6, r0, #0 + bl sub_02031968 + bl sub_02031974 + str r0, [r4] + add r0, r6, #0 + bl sub_0203EE54 + str r0, [r4, #4] + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EE90 + add r0, r4, #0 + pop {r4, r5, r6, pc} + thumb_func_end sub_0203EEA0 + + thumb_func_start sub_0203EED4 +sub_0203EED4: ; 0x0203EED4 + ldr r3, _0203EEDC ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203EEE0 ; =0x020FA314 + bx r3 + .balign 4, 0 +_0203EEDC: .word SwitchToPokegearApp +_0203EEE0: .word 0x020FA314 + thumb_func_end sub_0203EED4 + + thumb_func_start sub_0203EEE4 +sub_0203EEE4: ; 0x0203EEE4 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #0x10 + bl AllocFromHeapAtEnd + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203E344 + add r6, r0, #0 + bl sub_02031968 + add r7, r0, #0 + add r0, r6, #0 + bl sub_0202A634 + str r0, [sp] + str r0, [r4] + add r0, r7, #0 + bl sub_02031978 + str r0, [r4, #4] + ldr r0, [sp] + bl sub_0202A55C + str r0, [r4, #8] + add r0, r6, #0 + bl sub_0203EE54 + str r0, [r4, #0xc] + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EED4 + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203EEE4 + + thumb_func_start sub_0203EF30 +sub_0203EF30: ; 0x0203EF30 + ldr r3, _0203EF38 ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203EF3C ; =0x020FA324 + bx r3 + .balign 4, 0 +_0203EF38: .word SwitchToPokegearApp +_0203EF3C: .word 0x020FA324 + thumb_func_end sub_0203EF30 + + thumb_func_start sub_0203EF40 +sub_0203EF40: ; 0x0203EF40 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #0x14 + bl AllocFromHeapAtEnd + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203E344 + add r6, r0, #0 + bl sub_02031968 + add r7, r0, #0 + bl sub_0203197C + str r0, [r4] + add r0, r7, #0 + bl sub_02031984 + str r0, [r4, #4] + add r0, r6, #0 + bl Sav2_PlayerData_GetProfileAddr + str r0, [r4, #0xc] + add r0, r6, #0 + bl sub_0203EE54 + str r0, [r4, #0x10] + add r0, r7, #0 + bl sub_02031990 + str r0, [r4, #8] + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EF30 + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203EF40 + + thumb_func_start sub_0203EF90 +sub_0203EF90: ; 0x0203EF90 + ldr r3, _0203EF98 ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203EF9C ; =0x020FA424 + bx r3 + .balign 4, 0 +_0203EF98: .word SwitchToPokegearApp +_0203EF9C: .word 0x020FA424 + thumb_func_end sub_0203EF90 + + thumb_func_start sub_0203EFA0 +sub_0203EFA0: ; 0x0203EFA0 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + mov r0, #3 + mov r1, #8 + bl AllocFromHeapAtEnd + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203E344 + add r7, r0, #0 + bl Sav2_PlayerData_GetProfileAddr + add r6, r0, #0 + add r0, r7, #0 + bl sub_02031968 + str r0, [r4] + add r0, r5, #0 + add r1, r4, #0 + str r6, [r4, #4] + bl sub_0203EF90 + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203EFA0 + + thumb_func_start sub_0203EFD4 +sub_0203EFD4: ; 0x0203EFD4 + add r2, r1, #0 + mov r1, #0x43 + lsl r1, r1, #2 + add r1, r0, r1 + str r1, [r2, #0x1c] + ldr r3, _0203EFE4 ; =SwitchToPokegearApp + ldr r1, _0203EFE8 ; =0x020FA434 + bx r3 + .balign 4, 0 +_0203EFE4: .word SwitchToPokegearApp +_0203EFE8: .word 0x020FA434 + thumb_func_end sub_0203EFD4 + + thumb_func_start sub_0203EFEC +sub_0203EFEC: ; 0x0203EFEC + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r4, r1, #0 + add r6, r2, #0 + add r7, r3, #0 + bl sub_0203E344 + mov r1, #0xb + str r1, [sp] + add r1, r4, #0 + add r2, r6, #0 + add r3, r7, #0 + bl sub_02090E68 + add r4, r0, #0 + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EFD4 + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203EFEC + + thumb_func_start sub_0203F018 +sub_0203F018: ; 0x0203F018 + push {r3, r4, r5, r6, r7, lr} + add r5, r1, #0 + add r7, r0, #0 + add r4, r2, #0 + add r6, r3, #0 + cmp r5, #3 + bne _0203F034 + bl sub_0203E344 + add r1, r4, #0 + add r2, r6, #0 + bl sub_02090F38 + b _0203F042 +_0203F034: + bl sub_0203E344 + add r1, r5, #0 + add r2, r4, #0 + add r3, r6, #0 + bl sub_02090EC0 +_0203F042: + add r4, r0, #0 + add r0, r7, #0 + add r1, r4, #0 + bl sub_0203EFD4 + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0203F018 + + thumb_func_start sub_0203F050 +sub_0203F050: ; 0x0203F050 + push {r4, r5, r6, lr} + add r4, r1, #0 + add r6, r2, #0 + add r5, r0, #0 + bl sub_0203E344 + add r1, r4, #0 + add r2, r6, #0 + bl sub_02090F00 + add r4, r0, #0 + add r0, r5, #0 + add r1, r4, #0 + bl sub_0203EFD4 + add r0, r4, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203F050 + + thumb_func_start sub_0203F074 +sub_0203F074: ; 0x0203F074 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r0, r1, #0 + mov r1, #0xc + bl AllocFromHeap + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203E344 + str r0, [r4] + mov r0, #0x43 + lsl r0, r0, #2 + str r5, [r4, #4] + add r0, r5, r0 + str r0, [r4, #8] + ldr r1, _0203F0A4 ; =0x020FA2F4 + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r3, r4, r5, pc} + nop +_0203F0A4: .word 0x020FA2F4 + thumb_func_end sub_0203F074 + + thumb_func_start sub_0203F0A8 +sub_0203F0A8: ; 0x0203F0A8 + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203F0CC ; =0x020FA2E4 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203F0CC: .word 0x020FA2E4 + thumb_func_end sub_0203F0A8 + + thumb_func_start sub_0203F0D0 +sub_0203F0D0: ; 0x0203F0D0 + push {r3, r4, r5, r6, r7, lr} + add r6, r1, #0 + mov r1, #0x24 + add r4, r2, #0 + add r7, r3, #0 + bl AllocFromHeap + mov r1, #0 + mov r2, #0x24 + add r5, r0, #0 + bl memset + add r0, r6, #0 + bl SavArray_PlayerParty_get + add r1, r4, #0 + bl GetPartyMonByIndex + str r0, [r5] + add r0, r6, #0 + bl sub_0202C028 + str r0, [sp] + mov r1, #0 + bl sub_0202B9B8 + add r4, r0, #0 + ldr r0, [sp] + bl sub_0202B9E0 + str r4, [r5, #4] + str r0, [r5, #8] + add r0, r6, #0 + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r5, #0xc] + add r0, r6, #0 + bl sub_0202CF54 + str r0, [r5, #0x10] + add r0, r6, #0 + bl Sav2_PlayerData_GetProfileAddr + str r0, [r5, #0x14] + ldr r0, [sp, #0x18] + str r7, [r5, #0x18] + str r0, [r5, #0x1c] + add r0, r5, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0203F0D0 + + thumb_func_start sub_0203F134 +sub_0203F134: ; 0x0203F134 + push {r3, r4, r5, lr} + add r5, r0, #0 + bl sub_0205064C + add r4, r0, #0 + add r0, r5, #0 + bl sub_02050650 + add r5, r0, #0 + ldr r0, [r5] + cmp r0, #0 + beq _0203F152 + cmp r0, #1 + beq _0203F162 + b _0203F192 +_0203F152: + ldr r1, [r5, #0xc] + add r0, r4, #0 + bl sub_0203F1E8 + ldr r0, [r5] + add r0, r0, #1 + str r0, [r5] + b _0203F192 +_0203F162: + add r0, r4, #0 + bl sub_020505A0 + cmp r0, #0 + bne _0203F192 + ldr r1, [r5, #4] + cmp r1, #0 + beq _0203F182 + ldr r0, [r5, #8] + cmp r0, #1 + bne _0203F17E + mov r0, #1 + strh r0, [r1] + b _0203F182 +_0203F17E: + mov r0, #0 + strh r0, [r1] +_0203F182: + ldr r0, [r5, #0xc] + bl FreeToHeap + add r0, r5, #0 + bl FreeToHeap + mov r0, #1 + pop {r3, r4, r5, pc} +_0203F192: + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203F134 + + thumb_func_start sub_0203F198 +sub_0203F198: ; 0x0203F198 + push {r3, r4, r5, r6, r7, lr} + sub sp, #8 + add r6, r0, #0 + add r5, r1, #0 + mov r0, #0x20 + mov r1, #0x10 + add r7, r2, #0 + str r3, [sp, #4] + bl AllocFromHeap + add r4, r0, #0 + add r2, r4, #0 + mov r1, #0x10 + mov r0, #0 +_0203F1B4: + strb r0, [r2] + add r2, r2, #1 + sub r1, r1, #1 + bne _0203F1B4 + add r0, sp, #0x10 + ldrh r0, [r0, #0x10] + add r3, r4, #0 + add r1, r7, #0 + str r0, [sp] + ldr r2, [sp, #4] + mov r0, #0x20 + add r3, #8 + bl sub_0203F0D0 + str r0, [r4, #0xc] + ldr r1, _0203F1E4 ; =sub_0203F134 + add r0, r6, #0 + add r2, r4, #0 + str r5, [r4, #4] + bl sub_02050530 + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203F1E4: .word sub_0203F134 + thumb_func_end sub_0203F198 + + thumb_func_start sub_0203F1E8 +sub_0203F1E8: ; 0x0203F1E8 + push {r3, lr} + add r2, r1, #0 + mov r1, #0x43 + lsl r1, r1, #2 + add r1, r0, r1 + str r1, [r2, #0x20] + ldr r1, _0203F200 ; =0x0210F9AC + bl SwitchToPokegearApp + mov r0, #1 + pop {r3, pc} + nop +_0203F200: .word 0x0210F9AC + thumb_func_end sub_0203F1E8 + + thumb_func_start sub_0203F204 +sub_0203F204: ; 0x0203F204 + push {r3, lr} + add r2, r1, #0 + ldr r1, _0203F214 ; =0x0210F99C + bl SwitchToPokegearApp + mov r0, #1 + pop {r3, pc} + nop +_0203F214: .word 0x0210F99C + thumb_func_end sub_0203F204 + + thumb_func_start sub_0203F218 +sub_0203F218: ; 0x0203F218 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + ldr r0, [r4, #0xc] + bl Sav2_PlayerData_GetProfileAddr + str r0, [r5, #4] + ldr r0, [r4, #0xc] + bl SavArray_PlayerParty_get + str r0, [r5, #8] + ldr r0, [r4, #0xc] + mov r1, #8 + bl SavArray_get + str r0, [r5, #0xc] + ldr r0, [r4, #0xc] + bl sub_0202CA44 + str r0, [r5, #0x14] + ldr r0, [r4, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r5, #0x18] + ldr r0, [r4, #0xc] + bl sub_0202A634 + str r0, [r5, #0x20] + ldr r0, [r4, #0xc] + bl sub_02074910 + str r0, [r5, #0x2c] + ldr r0, [r4, #0xc] + str r0, [r5, #0x10] + ldr r0, [r4, #0xc] + bl sub_0202CF54 + str r0, [r5, #0x1c] + bl sub_02028ECC + add r1, r0, #0 + mov r0, #0x20 + bl AllocFromHeap + str r0, [r5, #0x34] + bl sub_02070D90 + add r1, r0, #0 + mov r0, #0x20 + bl AllocFromHeap + str r0, [r5, #0x38] + bl sub_02070D90 + add r1, r0, #0 + mov r0, #0x20 + bl AllocFromHeap + str r0, [r5, #0x3c] + str r4, [r5] + mov r0, #0 + str r0, [r5, #0x30] + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0203F218 + + thumb_func_start sub_0203F298 +sub_0203F298: ; 0x0203F298 + push {r4, lr} + add r4, r0, #0 + ldr r0, [r4, #0x34] + cmp r0, #0 + beq _0203F2AA + bl FreeToHeap + mov r0, #0 + str r0, [r4, #0x34] +_0203F2AA: + ldr r0, [r4, #0x38] + cmp r0, #0 + beq _0203F2B8 + bl FreeToHeap + mov r0, #0 + str r0, [r4, #0x38] +_0203F2B8: + ldr r0, [r4, #0x3c] + cmp r0, #0 + beq _0203F2C6 + bl FreeToHeap + mov r0, #0 + str r0, [r4, #0x3c] +_0203F2C6: + pop {r4, pc} + thumb_func_end sub_0203F298 + + thumb_func_start sub_0203F2C8 +sub_0203F2C8: ; 0x0203F2C8 + push {r4, r5, r6, r7, lr} + sub sp, #0x2c + add r6, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r6, #0 + bl sub_02050650 + add r4, r0, #0 + ldr r0, [r4] + cmp r0, #7 + bls _0203F2E4 + b _0203F49A +_0203F2E4: + add r1, r0, r0 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0203F2F0: ; jump table + .short _0203F300 - _0203F2F0 - 2 ; case 0 + .short _0203F316 - _0203F2F0 - 2 ; case 1 + .short _0203F324 - _0203F2F0 - 2 ; case 2 + .short _0203F336 - _0203F2F0 - 2 ; case 3 + .short _0203F354 - _0203F2F0 - 2 ; case 4 + .short _0203F3C2 - _0203F2F0 - 2 ; case 5 + .short _0203F446 - _0203F2F0 - 2 ; case 6 + .short _0203F472 - _0203F2F0 - 2 ; case 7 +_0203F300: + bl sub_02039998 + cmp r0, #0 + bne _0203F30E + add r0, r6, #0 + bl sub_0205525C +_0203F30E: + ldr r0, [r4] + add r0, r0, #1 + str r0, [r4] + b _0203F49A +_0203F316: + add r0, r4, #4 + add r1, r5, #0 + bl sub_0203F218 + ldr r0, [r4] + add r0, r0, #1 + str r0, [r4] +_0203F324: + ldr r1, _0203F4A0 ; =0x0210F98C + add r0, r6, #0 + add r2, r4, #4 + bl sub_02050624 + ldr r0, [r4] + add r0, r0, #1 + str r0, [r4] + b _0203F49A +_0203F336: + ldr r1, [r4, #0x28] + cmp r1, #0 + bne _0203F34E + add r0, r4, #4 + bl sub_0203F298 + add r0, r4, #0 + bl FreeToHeap + add sp, #0x2c + mov r0, #1 + pop {r4, r5, r6, r7, pc} +_0203F34E: + add r0, r0, #1 + str r0, [r4] + b _0203F49A +_0203F354: + ldr r0, [r4, #0x38] + str r0, [r4, #0x4c] + ldr r0, [r4, #0x3c] + bl sub_02070DB0 + str r0, [r4, #0x44] + ldr r0, [r4, #0x40] + bl sub_02070DB0 + str r0, [r4, #0x48] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #0x58] + mov r0, #1 + str r0, [r4, #0x54] + add r0, r5, #0 + bl sub_020555E0 + cmp r0, #4 + bhi _0203F394 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203F38A: ; jump table + .short _0203F394 - _0203F38A - 2 ; case 0 + .short _0203F394 - _0203F38A - 2 ; case 1 + .short _0203F39A - _0203F38A - 2 ; case 2 + .short _0203F3A0 - _0203F38A - 2 ; case 3 + .short _0203F3A0 - _0203F38A - 2 ; case 4 +_0203F394: + mov r0, #0 + str r0, [r4, #0x50] + b _0203F3A4 +_0203F39A: + mov r0, #1 + str r0, [r4, #0x50] + b _0203F3A4 +_0203F3A0: + mov r0, #2 + str r0, [r4, #0x50] +_0203F3A4: + bl sub_02039998 + cmp r0, #0 + beq _0203F3B0 + mov r0, #3 + str r0, [r4, #0x50] +_0203F3B0: + add r2, r4, #0 + ldr r1, _0203F4A4 ; =0x020FA2D4 + add r0, r6, #0 + add r2, #0x44 + bl sub_02050624 + mov r0, #5 + str r0, [r4] + b _0203F49A +_0203F3C2: + ldr r0, [r4, #0x40] + mov r1, #6 + mov r2, #0 + bl GetMonData + add r3, r0, #0 + add r0, sp, #0x28 + str r0, [sp] + lsl r3, r3, #0x10 + ldr r1, [r4, #0x40] + mov r0, #0 + mov r2, #1 + lsr r3, r3, #0x10 + bl sub_02070E34 + str r0, [sp, #0x1c] + cmp r0, #0 + beq _0203F440 + mov r0, #3 + mov r1, #0x1a + lsl r2, r0, #0x10 + bl sub_0201A910 + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [sp, #0x20] + ldr r0, [r5, #0xc] + bl sub_02088288 + add r6, r0, #0 + ldr r0, [r5, #0xc] + bl sub_0202A634 + add r7, r0, #0 + ldr r0, [r5, #0xc] + bl sub_0207879C + str r0, [sp, #0x24] + ldr r0, [r5, #0xc] + bl sub_0202CF54 + str r6, [sp] + ldr r1, [sp, #0x24] + str r7, [sp, #4] + str r1, [sp, #8] + str r0, [sp, #0xc] + ldr r0, [sp, #0x28] + ldr r2, [sp, #0x1c] + str r0, [sp, #0x10] + mov r0, #4 + str r0, [sp, #0x14] + mov r0, #0x1a + str r0, [sp, #0x18] + ldr r1, [r4, #0x40] + ldr r3, [sp, #0x20] + mov r0, #0 + bl sub_02075A7C + str r0, [r4, #0x5c] + mov r0, #6 + str r0, [r4] + b _0203F49A +_0203F440: + mov r0, #7 + str r0, [r4] + b _0203F49A +_0203F446: + ldr r0, [r4, #0x5c] + bl sub_02075D3C + cmp r0, #0 + beq _0203F49A + ldr r0, [r4, #0xc] + ldr r1, [r4, #0x2c] + bl GetPartyMonByIndex + add r1, r0, #0 + ldr r0, [r4, #0x40] + bl sub_0207188C + ldr r0, [r4, #0x5c] + bl sub_02075D4C + mov r0, #0x1a + bl sub_0201A9C4 + mov r0, #7 + str r0, [r4] + b _0203F49A +_0203F472: + ldr r0, [r4, #0x34] + add r0, r0, #1 + str r0, [r4, #0x34] + mov r0, #2 + str r0, [r4] + ldr r0, [r5, #0xc] + bl sub_0202CF54 + mov r1, #0x10 + add r4, r0, #0 + bl sub_0202D1C0 + bl sub_02039998 + cmp r0, #0 + beq _0203F49A + add r0, r4, #0 + mov r1, #0x72 + bl sub_0202D0FC +_0203F49A: + mov r0, #0 + add sp, #0x2c + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_0203F4A0: .word 0x0210F98C +_0203F4A4: .word 0x020FA2D4 + thumb_func_end sub_0203F2C8 + + thumb_func_start sub_0203F4A8 +sub_0203F4A8: ; 0x0203F4A8 + push {r4, lr} + add r4, r0, #0 + mov r0, #0x20 + mov r1, #0x64 + bl AllocFromHeap + add r2, r0, #0 + mov r0, #0 + str r0, [r2] + ldr r1, _0203F4C4 ; =sub_0203F2C8 + add r0, r4, #0 + bl sub_02050530 + pop {r4, pc} + .balign 4, 0 +_0203F4C4: .word sub_0203F2C8 + thumb_func_end sub_0203F4A8 + + thumb_func_start sub_0203F4C8 +sub_0203F4C8: ; 0x0203F4C8 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #0x20 + mov r1, #8 + bl AllocFromHeap + add r4, r0, #0 + add r0, r5, #0 + add r0, #0x84 + ldr r0, [r0] + str r0, [r4] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #4] + ldr r1, _0203F4F4 ; =0x020FA2C4 + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + pop {r3, r4, r5, pc} + nop +_0203F4F4: .word 0x020FA2C4 + thumb_func_end sub_0203F4C8 + + thumb_func_start sub_0203F4F8 +sub_0203F4F8: ; 0x0203F4F8 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #0x14 + bl AllocFromHeap + add r4, r0, #0 + ldr r0, [r5, #0xc] + str r0, [r4] + add r0, r5, #0 + add r0, #0x84 + ldr r0, [r0] + str r0, [r4, #4] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #8] + ldr r0, [r5, #0xc] + bl sub_0202CF54 + str r0, [r4, #0xc] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #0x10] + ldr r1, _0203F538 ; =0x020FA2B4 + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203F538: .word 0x020FA2B4 + thumb_func_end sub_0203F4F8 + + thumb_func_start sub_0203F53C +sub_0203F53C: ; 0x0203F53C + push {r4, r5, r6, lr} + add r5, r0, #0 + add r6, r1, #0 + add r0, r2, #0 + mov r1, #8 + bl AllocFromHeap + mov r1, #0 + mov r2, #8 + add r4, r0, #0 + bl MIi_CpuFill8 + mov r0, #0x43 + lsl r0, r0, #2 + str r6, [r4] + add r0, r5, r0 + str r0, [r4, #4] + ldr r1, _0203F56C ; =0x020FA2A4 + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203F56C: .word 0x020FA2A4 + thumb_func_end sub_0203F53C + + thumb_func_start sub_0203F570 +sub_0203F570: ; 0x0203F570 + ldr r3, _0203F578 ; =SwitchToPokegearApp + ldr r1, _0203F57C ; =0x02102830 + add r2, r0, #0 + bx r3 + .balign 4, 0 +_0203F578: .word SwitchToPokegearApp +_0203F57C: .word 0x02102830 + thumb_func_end sub_0203F570 + + thumb_func_start sub_0203F580 +sub_0203F580: ; 0x0203F580 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + bl sub_0205064C + add r6, r0, #0 + add r0, r5, #0 + bl sub_02050650 + add r4, r0, #0 + ldr r0, [r4] + cmp r0, #3 + bhi _0203F648 + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203F5A4: ; jump table + .short _0203F5AC - _0203F5A4 - 2 ; case 0 + .short _0203F5BA - _0203F5A4 - 2 ; case 1 + .short _0203F5CC - _0203F5A4 - 2 ; case 2 + .short _0203F5DA - _0203F5A4 - 2 ; case 3 +_0203F5AC: + add r0, r5, #0 + bl sub_0205525C + ldr r0, [r4] + add r0, r0, #1 + str r0, [r4] + b _0203F648 +_0203F5BA: + ldr r1, _0203F64C ; =0x02102610 + ldr r2, [r4, #0xc] + add r0, r5, #0 + bl sub_02050624 + ldr r0, [r4] + add r0, r0, #1 + str r0, [r4] + b _0203F648 +_0203F5CC: + add r0, r5, #0 + bl sub_020552A4 + ldr r0, [r4] + add r0, r0, #1 + str r0, [r4] + b _0203F648 +_0203F5DA: + ldr r1, [r4, #0xc] + ldr r0, [r1] + cmp r0, #1 + bne _0203F5F6 + ldr r0, [r1, #0x18] + ldr r1, [r4, #0x10] + bl StringCompare + cmp r0, #0 + bne _0203F618 + ldr r0, [r4, #0xc] + mov r1, #1 + str r1, [r0, #0x14] + b _0203F618 +_0203F5F6: + cmp r0, #5 + bne _0203F618 + ldr r0, [r1, #0x18] + bl String_c_str + add r7, r0, #0 + ldr r0, [r6, #0xc] + bl sub_0202C854 + add r1, r7, #0 + bl sub_0202C88C + cmp r0, #0 + beq _0203F618 + ldr r0, [r4, #0xc] + mov r1, #2 + str r1, [r0, #0x14] +_0203F618: + ldr r0, [r4, #0xc] + ldr r0, [r0, #0x14] + cmp r0, #0 + bne _0203F626 + add r0, r5, #0 + bl sub_0203F650 +_0203F626: + ldr r1, [r4, #8] + cmp r1, #0 + beq _0203F632 + ldr r0, [r4, #0xc] + ldr r0, [r0, #0x14] + strh r0, [r1] +_0203F632: + ldr r0, [r4, #0xc] + bl sub_0208311C + ldr r0, [r4, #0x10] + bl String_dtor + add r0, r4, #0 + bl FreeToHeap + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0203F648: + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203F64C: .word 0x02102610 + thumb_func_end sub_0203F580 + + thumb_func_start sub_0203F650 +sub_0203F650: ; 0x0203F650 + push {r4, r5, r6, lr} + add r4, r0, #0 + bl sub_0205064C + add r5, r0, #0 + add r0, r4, #0 + bl sub_02050650 + add r4, r0, #0 + ldr r0, [r4, #0xc] + ldr r0, [r0] + cmp r0, #5 + bhi _0203F6DC + add r0, r0, r0 + add r0, pc + ldrh r0, [r0, #6] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + add pc, r0 +_0203F676: ; jump table + .short _0203F682 - _0203F676 - 2 ; case 0 + .short _0203F6A2 - _0203F676 - 2 ; case 1 + .short _0203F6DC - _0203F676 - 2 ; case 2 + .short _0203F692 - _0203F676 - 2 ; case 3 + .short _0203F6DC - _0203F676 - 2 ; case 4 + .short _0203F6CA - _0203F676 - 2 ; case 5 +_0203F682: + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetProfileAddr + ldr r1, [r4, #0xc] + add r1, #0x1c + bl sub_02028F24 + pop {r4, r5, r6, pc} +_0203F692: + ldr r0, [r5, #0xc] + bl sub_0202A954 + ldr r1, [r4, #0xc] + ldr r1, [r1, #0x18] + bl sub_0202A9B0 + pop {r4, r5, r6, pc} +_0203F6A2: + ldr r6, [r4, #4] + cmp r6, #0xff + bne _0203F6B2 + add r0, r5, #0 + bl sub_0206DB28 + ldr r0, [r0, #0x10] + b _0203F6BE +_0203F6B2: + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + add r1, r6, #0 + bl GetPartyMonByIndex +_0203F6BE: + ldr r2, [r4, #0xc] + mov r1, #0x76 + add r2, #0x1c + bl sub_0206EC40 + pop {r4, r5, r6, pc} +_0203F6CA: + ldr r0, [r5, #0xc] + bl sub_0202C854 + ldr r3, [r4, #0xc] + mov r1, #0 + ldr r3, [r3, #0x18] + add r2, r1, #0 + bl sub_0202C7F8 +_0203F6DC: + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203F650 + + thumb_func_start sub_0203F6E0 +sub_0203F6E0: ; 0x0203F6E0 + push {r4, r5, r6, r7, lr} + sub sp, #0x14 + str r0, [sp, #8] + add r7, r1, #0 + str r2, [sp, #0xc] + str r3, [sp, #0x10] + ldr r5, [sp, #0x2c] + bl sub_0205064C + add r6, r0, #0 + mov r0, #0xb + mov r1, #0x14 + bl AllocFromHeapAtEnd + add r4, r0, #0 + mov r0, #0 + str r0, [r4] + ldr r0, [sp, #0x28] + str r0, [r4, #4] + ldr r0, [sp, #0x30] + str r0, [r4, #8] + ldr r0, [r6, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [sp] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r6, r0 + str r0, [sp, #4] + ldr r2, [sp, #0xc] + ldr r3, [sp, #0x10] + mov r0, #0xb + add r1, r7, #0 + bl sub_020830D8 + str r0, [r4, #0xc] + mov r0, #0xc + mov r1, #0xb + bl String_ctor + str r0, [r4, #0x10] + cmp r7, #1 + beq _0203F73C + cmp r7, #5 + beq _0203F784 + b _0203F78E +_0203F73C: + ldr r0, [sp, #0x28] + cmp r0, #0xff + bne _0203F74C + add r0, r6, #0 + bl sub_0206DB28 + ldr r6, [r0, #0x10] + b _0203F75A +_0203F74C: + ldr r0, [r6, #0xc] + bl SavArray_PlayerParty_get + ldr r1, [r4, #4] + bl GetPartyMonByIndex + add r6, r0, #0 +_0203F75A: + add r0, r6, #0 + mov r1, #0x6f + mov r2, #0 + bl GetMonData + ldr r1, [r4, #0xc] + mov r2, #0 + str r0, [r1, #0x10] + add r0, r6, #0 + mov r1, #0x70 + bl GetMonData + ldr r1, [r4, #0xc] + cmp r5, #0 + str r0, [r1, #8] + beq _0203F79C + ldr r0, [r4, #0x10] + add r1, r5, #0 + bl CopyU16ArrayToString + b _0203F79C +_0203F784: + ldr r0, [r4, #0x10] + add r1, r5, #0 + bl CopyU16ArrayToString + b _0203F79C +_0203F78E: + cmp r5, #0 + beq _0203F79C + ldr r0, [r4, #0xc] + add r1, r5, #0 + ldr r0, [r0, #0x18] + bl CopyU16ArrayToString +_0203F79C: + ldr r0, [sp, #8] + ldr r1, _0203F7AC ; =sub_0203F580 + add r2, r4, #0 + bl sub_02050530 + add sp, #0x14 + pop {r4, r5, r6, r7, pc} + nop +_0203F7AC: .word sub_0203F580 + thumb_func_end sub_0203F6E0 + + thumb_func_start sub_0203F7B0 +sub_0203F7B0: ; 0x0203F7B0 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #0x43 + lsl r0, r0, #2 + add r4, r1, #0 + add r1, r5, r0 + ldr r0, _0203F7E8 ; =0x0000066C + str r1, [r4, r0] + ldr r1, [r5, #0xc] + add r0, r0, #4 + str r1, [r4, r0] + ldr r0, [r5, #0xc] + bl sub_020503D0 + bl sub_02066614 + ldr r1, _0203F7EC ; =0x00000678 + mov r2, #0 + str r0, [r4, r1] + sub r0, r1, #4 + str r2, [r4, r0] + ldr r1, _0203F7F0 ; =0x020FA294 + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + pop {r3, r4, r5, pc} + nop +_0203F7E8: .word 0x0000066C +_0203F7EC: .word 0x00000678 +_0203F7F0: .word 0x020FA294 + thumb_func_end sub_0203F7B0 + + thumb_func_start sub_0203F7F4 +sub_0203F7F4: ; 0x0203F7F4 + push {r3, lr} + add r2, r1, #0 + ldr r1, _0203F804 ; =0x020FA284 + bl SwitchToPokegearApp + mov r0, #1 + pop {r3, pc} + nop +_0203F804: .word 0x020FA284 + thumb_func_end sub_0203F7F4 + + thumb_func_start sub_0203F808 +sub_0203F808: ; 0x0203F808 + ldr r3, _0203F810 ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203F814 ; =0x020FA274 + bx r3 + .balign 4, 0 +_0203F810: .word SwitchToPokegearApp +_0203F814: .word 0x020FA274 + thumb_func_end sub_0203F808 + + thumb_func_start sub_0203F818 +sub_0203F818: ; 0x0203F818 + push {r3, r4, r5, lr} + sub sp, #0x10 + add r4, r0, #0 + ldr r0, [r4, #0xc] + bl sub_0202C9D8 + ldr r5, _0203F840 ; =0x020FA254 + add r3, sp, #0 + add r2, r3, #0 + ldmia r5!, {r0, r1} + stmia r3!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r3!, {r0, r1} + add r1, r2, #0 + ldr r2, [r4, #0xc] + add r0, r4, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203F840: .word 0x020FA254 + thumb_func_end sub_0203F818 + + thumb_func_start sub_0203F844 +sub_0203F844: ; 0x0203F844 + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r3, _0203F8E8 ; =0x020FA264 + add r2, sp, #0 + add r5, r0, #0 + add r6, r1, #0 + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + mov r0, #0xb + mov r1, #0x40 + bl AllocFromHeapAtEnd + add r4, r0, #0 + ldr r0, [r5, #0xc] + bl sub_0202DB34 + str r0, [r4] + ldr r0, [r5, #0xc] + bl Sav2_SysInfo_get + str r0, [r4, #4] + ldr r0, [r5, #0xc] + mov r1, #2 + bl SavArray_get + str r0, [r4, #8] + ldr r0, [r5, #0xc] + bl sub_020270D8 + str r0, [r4, #0xc] + ldr r0, [r5, #0xc] + bl sub_0202A634 + str r0, [r4, #0x10] + ldr r0, [r5, #0xc] + bl sub_0202C6F4 + str r0, [r4, #0x14] + ldr r0, [r5, #0xc] + bl sub_0202CA44 + str r0, [r4, #0x18] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetProfileAddr + str r0, [r4, #0x1c] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #0x24] + ldr r0, [r5, #0xc] + bl sub_0202CF54 + str r0, [r4, #0x28] + ldr r0, [r5, #0xc] + bl sub_02088288 + str r0, [r4, #0x38] + ldr r0, [r5, #0xc] + str r0, [r4, #0x20] + ldr r0, [r5, #0xc] + bl sub_02074910 + str r0, [r4, #0x30] + ldr r0, [r4, #0x14] + bl sub_0203A040 + str r0, [r4, #0x34] + ldr r0, [r5, #0xc] + bl sub_0207879C + str r0, [r4, #0x2c] + add r0, r5, #0 + add r1, sp, #0 + add r2, r4, #0 + str r6, [r4, #0x3c] + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203F8E8: .word 0x020FA264 + thumb_func_end sub_0203F844 + + thumb_func_start sub_0203F8EC +sub_0203F8EC: ; 0x0203F8EC + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + ldr r3, _0203F960 ; =0x020FA334 + add r7, r2, #0 + add r2, sp, #0 + add r5, r0, #0 + add r6, r1, #0 + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + mov r0, #0xb + mov r1, #0x28 + bl AllocFromHeapAtEnd + add r4, r0, #0 + ldr r0, [r5, #0xc] + bl sub_0202D918 + str r0, [r4] + ldr r0, [r5, #0xc] + bl sub_0202D928 + str r0, [r4, #4] + ldr r0, [r5, #0xc] + bl Sav2_SysInfo_get + str r0, [r4, #8] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #0x10] + ldr r0, [r5, #0xc] + bl sub_0202C6F4 + bl sub_0202C08C + str r0, [r4, #0x14] + ldr r0, [r5, #0xc] + str r0, [r4, #0xc] + ldr r0, [r5, #0xc] + bl sub_0202C6F4 + bl sub_0203A040 + str r0, [r4, #0x1c] + str r6, [r4, #0x18] + str r7, [r4, #0x24] + mov r0, #1 + str r0, [r4, #0x20] + add r0, r5, #0 + add r1, sp, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203F960: .word 0x020FA334 + thumb_func_end sub_0203F8EC + + thumb_func_start sub_0203F964 +sub_0203F964: ; 0x0203F964 + ldr r3, _0203F96C ; =SwitchToPokegearApp + ldr r1, _0203F970 ; =0x020FA224 + ldr r2, [r0, #0xc] + bx r3 + .balign 4, 0 +_0203F96C: .word SwitchToPokegearApp +_0203F970: .word 0x020FA224 + thumb_func_end sub_0203F964 + + thumb_func_start sub_0203F974 +sub_0203F974: ; 0x0203F974 + ldr r3, _0203F97C ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203F980 ; =0x020FA214 + bx r3 + .balign 4, 0 +_0203F97C: .word SwitchToPokegearApp +_0203F980: .word 0x020FA214 + thumb_func_end sub_0203F974 + + thumb_func_start sub_0203F984 +sub_0203F984: ; 0x0203F984 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, [r5, #0xc] + mov r1, #0xb + add r2, sp, #0 + bl LoadHallOfFame + ldr r1, [sp] + add r4, r0, #0 + cmp r1, #2 + bne _0203F9A2 + bl FreeToHeap + mov r0, #0 + pop {r3, r4, r5, pc} +_0203F9A2: + ldr r1, _0203F9B0 ; =0x020FA204 + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0203F9B0: .word 0x020FA204 + thumb_func_end sub_0203F984 + + thumb_func_start sub_0203F9B4 +sub_0203F9B4: ; 0x0203F9B4 + ldr r3, _0203F9BC ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203F9C0 ; =0x020FA1F4 + bx r3 + .balign 4, 0 +_0203F9BC: .word SwitchToPokegearApp +_0203F9C0: .word 0x020FA1F4 + thumb_func_end sub_0203F9B4 + + thumb_func_start sub_0203F9C4 +sub_0203F9C4: ; 0x0203F9C4 + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r6, _0203F9F0 ; =0x020FA1E4 + add r5, sp, #0 + add r3, r0, #0 + add r2, r1, #0 + add r4, r5, #0 + ldmia r6!, {r0, r1} + stmia r5!, {r0, r1} + ldmia r6!, {r0, r1} + stmia r5!, {r0, r1} + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r3, r0 + str r0, [r2, #0xc] + add r0, r3, #0 + add r1, r4, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203F9F0: .word 0x020FA1E4 + thumb_func_end sub_0203F9C4 + + thumb_func_start sub_0203F9F4 +sub_0203F9F4: ; 0x0203F9F4 + push {r3, r4, r5, lr} + sub sp, #0x10 + add r4, r0, #0 + ldr r0, [r4, #0xc] + bl SavArray_PlayerParty_get + bl sub_0206CE44 + add r5, r0, #0 + bne _0203FA0C + bl GF_AssertFail +_0203FA0C: + str r5, [sp] + ldr r0, [r4, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [sp, #4] + ldr r0, [r4, #0xc] + bl Sav2_PlayerData_GetProfileAddr + str r0, [sp, #8] + ldr r1, [r4, #0x20] + add r0, r4, #0 + ldr r1, [r1] + bl sub_02054F60 + add r1, sp, #0 + strh r0, [r1, #0xc] + ldr r0, [r4, #0x10] + add r1, sp, #0 + bl sub_02091240 + add sp, #0x10 + pop {r3, r4, r5, pc} + thumb_func_end sub_0203F9F4 + + thumb_func_start sub_0203FA38 +sub_0203FA38: ; 0x0203FA38 + push {r4, r5, r6, lr} + add r5, r0, #0 + mov r0, #0xb + mov r1, #0x14 + bl AllocFromHeapAtEnd + mov r1, #0 + mov r2, #0x14 + add r4, r0, #0 + bl MIi_CpuFill8 + add r0, r5, #0 + bl sub_0203E344 + add r6, r0, #0 + bl sub_02028EB4 + str r0, [r4, #4] + add r0, r6, #0 + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4] + mov r0, #0x43 + lsl r0, r0, #2 + add r0, r5, r0 + str r0, [r4, #8] + add r0, r6, #0 + bl Sav2_PlayerData_GetProfileAddr + str r0, [r4, #0xc] + ldr r0, [r5, #0xc] + ldr r1, _0203FA88 ; =0x020FA234 + str r0, [r4, #0x10] + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r4, r5, r6, pc} + nop +_0203FA88: .word 0x020FA234 + thumb_func_end sub_0203FA38 + + thumb_func_start sub_0203FA8C +sub_0203FA8C: ; 0x0203FA8C + push {r4, r5, r6, lr} + add r5, r0, #0 + add r0, r1, #0 + mov r1, #8 + add r6, r2, #0 + bl AllocFromHeap + add r4, r0, #0 + str r6, [r4, #4] + ldr r0, [r5, #0xc] + ldr r1, _0203FAB0 ; =0x020FA304 + str r0, [r4] + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r4, r5, r6, pc} + .balign 4, 0 +_0203FAB0: .word 0x020FA304 + thumb_func_end sub_0203FA8C + + thumb_func_start sub_0203FAB4 +sub_0203FAB4: ; 0x0203FAB4 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + ldr r0, [sp, #0x18] + mov r1, #8 + add r7, r2, #0 + str r3, [sp] + bl AllocFromHeap + add r4, r0, #0 + strb r6, [r4, #4] + strb r7, [r4, #5] + ldr r0, [sp] + ldr r1, _0203FAE4 ; =0x0210F9BC + strh r0, [r4, #6] + ldr r0, [r5, #0xc] + add r2, r4, #0 + str r0, [r4] + add r0, r5, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203FAE4: .word 0x0210F9BC + thumb_func_end sub_0203FAB4 + + thumb_func_start sub_0203FAE8 +sub_0203FAE8: ; 0x0203FAE8 + push {r4, r5, r6, lr} + add r5, r0, #0 + add r0, r1, #0 + mov r1, #0x44 + add r6, r2, #0 + bl AllocFromHeap + mov r1, #0 + mov r2, #0x44 + add r4, r0, #0 + bl memset + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + str r0, [r4] + ldr r0, [r5, #0xc] + bl sub_0207879C + str r0, [r4, #4] + ldr r0, [r5, #0xc] + bl Sav2_Mailbox_get + str r0, [r4, #8] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #0xc] + ldr r0, [r5, #0xc] + bl sub_020270C4 + str r0, [r4, #0x10] + mov r0, #0 + add r1, r4, #0 + str r0, [r4, #0x18] + add r1, #0x25 + strb r0, [r1] + add r1, r4, #0 + mov r2, #5 + add r1, #0x24 + strb r2, [r1] + add r1, r4, #0 + strh r6, [r4, #0x28] + add r1, #0x26 + strb r0, [r1] + mov r0, #0x43 + lsl r0, r0, #2 + str r5, [r4, #0x1c] + add r0, r5, r0 + str r0, [r4, #0x20] + ldr r1, _0203FB5C ; =0x0210159C + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r4, r5, r6, pc} + nop +_0203FB5C: .word 0x0210159C + thumb_func_end sub_0203FAE8 + + thumb_func_start sub_0203FB60 +sub_0203FB60: ; 0x0203FB60 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r0, r1, #0 + mov r1, #0x18 + bl AllocFromHeap + add r4, r0, #0 + add r2, r4, #0 + mov r1, #0x18 + mov r0, #0 +_0203FB74: + strb r0, [r2] + add r2, r2, #1 + sub r1, r1, #1 + bne _0203FB74 + ldr r0, [r5, #0xc] + ldr r1, _0203FB90 ; =0x0210F97C + str r0, [r4] + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r3, r4, r5, pc} + nop +_0203FB90: .word 0x0210F97C + thumb_func_end sub_0203FB60 + + thumb_func_start sub_0203FB94 +sub_0203FB94: ; 0x0203FB94 + push {r4, r5, r6, lr} + add r5, r1, #0 + mov r0, #0xb + mov r1, #0x3c + add r6, r2, #0 + bl AllocFromHeap + add r4, r0, #0 + ldr r0, [r5, #0xc] + bl SavArray_PlayerParty_get + str r0, [r4] + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetOptionsAddr + str r0, [r4, #4] + mov r0, #1 + strb r0, [r4, #0x11] + strb r6, [r4, #0x14] + ldr r0, [r4] + bl GetPartyCount + strb r0, [r4, #0x13] + mov r0, #0 + strh r0, [r4, #0x18] + strb r0, [r4, #0x12] + ldr r0, [r5, #0xc] + bl sub_0202D95C + str r0, [r4, #0x20] + ldr r0, [r5, #0xc] + bl sub_02074910 + str r0, [r4, #0x1c] + mov r0, #0 + str r0, [r4, #0x2c] + str r0, [r4, #0x28] + ldr r0, [r5, #0xc] + bl sub_0208828C + str r0, [r4, #0x34] + ldr r1, _0203FC0C ; =0x020FA0B0 + add r0, r4, #0 + bl sub_02089D40 + ldr r0, [r5, #0xc] + bl Sav2_PlayerData_GetProfileAddr + add r1, r0, #0 + add r0, r4, #0 + bl sub_0208AD34 + ldr r1, _0203FC10 ; =0x02103A1C + add r0, r5, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r4, r5, r6, pc} + nop +_0203FC0C: .word 0x020FA0B0 +_0203FC10: .word 0x02103A1C + thumb_func_end sub_0203FB94 + + thumb_func_start sub_0203FC14 +sub_0203FC14: ; 0x0203FC14 + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + ldr r3, _0203FC54 ; =0x020FA1C4 + add r7, r2, #0 + add r2, sp, #0 + add r5, r0, #0 + add r6, r1, #0 + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + ldmia r3!, {r0, r1} + stmia r2!, {r0, r1} + mov r0, #0xb + mov r1, #0x10 + bl AllocFromHeapAtEnd + add r4, r0, #0 + mov r1, #0 + mov r2, #0x10 + bl MIi_CpuFill8 + str r5, [r4] + ldr r0, [r5, #0xc] + add r1, sp, #0 + str r0, [r4, #4] + str r6, [r4, #8] + add r0, r5, #0 + add r2, r4, #0 + strb r7, [r4, #0xc] + bl SwitchToPokegearApp + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203FC54: .word 0x020FA1C4 + thumb_func_end sub_0203FC14 + + thumb_func_start sub_0203FC58 +sub_0203FC58: ; 0x0203FC58 + ldr r3, _0203FC60 ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203FC64 ; =0x020FA244 + bx r3 + .balign 4, 0 +_0203FC60: .word SwitchToPokegearApp +_0203FC64: .word 0x020FA244 + thumb_func_end sub_0203FC58 + + thumb_func_start sub_0203FC68 +sub_0203FC68: ; 0x0203FC68 + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203FC8C ; =0x020FA454 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203FC8C: .word 0x020FA454 + thumb_func_end sub_0203FC68 + + thumb_func_start sub_0203FC90 +sub_0203FC90: ; 0x0203FC90 + push {r4, r5, r6, lr} + sub sp, #0x10 + ldr r5, _0203FCB4 ; =0x020FA1D4 + add r4, sp, #0 + add r6, r0, #0 + add r2, r1, #0 + add r3, r4, #0 + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + ldmia r5!, {r0, r1} + stmia r4!, {r0, r1} + add r0, r6, #0 + add r1, r3, #0 + bl SwitchToPokegearApp + add sp, #0x10 + pop {r4, r5, r6, pc} + nop +_0203FCB4: .word 0x020FA1D4 + thumb_func_end sub_0203FC90 + + thumb_func_start sub_0203FCB8 +sub_0203FCB8: ; 0x0203FCB8 + push {r3, r4, r5, r6, r7, lr} + add r6, r0, #0 + add r5, r1, #0 + ldr r0, [sp, #0x18] + mov r1, #0x50 + add r7, r2, #0 + str r3, [sp] + bl AllocFromHeap + mov r1, #0 + mov r2, #0x50 + add r4, r0, #0 + bl memset + add r0, r6, #0 + bl sub_0203E344 + str r0, [r4] + add r3, r4, #4 + mov r2, #9 +_0203FCE0: + ldmia r5!, {r0, r1} + stmia r3!, {r0, r1} + sub r2, r2, #1 + bne _0203FCE0 + add r0, r4, #0 + add r0, #0x4c + strh r7, [r0] + add r1, r4, #0 + ldr r0, [sp] + add r1, #0x4e + strh r0, [r1] + ldr r1, _0203FD04 ; =0x020FA474 + add r0, r6, #0 + add r2, r4, #0 + bl SwitchToPokegearApp + add r0, r4, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203FD04: .word 0x020FA474 + thumb_func_end sub_0203FCB8 + + thumb_func_start sub_0203FD08 +sub_0203FD08: ; 0x0203FD08 + ldr r3, _0203FD10 ; =SwitchToPokegearApp + add r2, r1, #0 + ldr r1, _0203FD14 ; =0x020FA494 + bx r3 + .balign 4, 0 +_0203FD10: .word SwitchToPokegearApp +_0203FD14: .word 0x020FA494 + thumb_func_end sub_0203FD08 + + thumb_func_start sub_0203FD18 +sub_0203FD18: ; 0x0203FD18 + push {r3, r4} + mov r3, #0 + strb r3, [r0, #1] + str r3, [r0, #8] + strb r3, [r0] + strb r3, [r0, #3] + str r3, [r0, #4] + str r1, [r0, #0x5c] + str r2, [r0, #0x60] + add r1, r0, #0 + add r4, r3, #0 +_0203FD2E: + add r3, r3, #1 + str r4, [r1, #0x64] + add r1, r1, #4 + cmp r3, #4 + blo _0203FD2E + add r2, r0, #0 + mov r1, #0 +_0203FD3C: + add r4, r4, #1 + str r1, [r2, #0xc] + add r2, r2, #4 + cmp r4, #0x14 + blo _0203FD3C + str r1, [r0, #0x74] + pop {r3, r4} + bx lr + thumb_func_end sub_0203FD18 + + thumb_func_start sub_0203FD4C +sub_0203FD4C: ; 0x0203FD4C + str r1, [r0, #8] + mov r1, #1 + strb r1, [r0, #1] + add r0, r1, #0 + bx lr + .balign 4, 0 + thumb_func_end sub_0203FD4C + + thumb_func_start sub_0203FD58 +sub_0203FD58: ; 0x0203FD58 + mov r2, #2 + strb r2, [r0, #1] + str r1, [r0, #4] + bx lr + thumb_func_end sub_0203FD58 + + thumb_func_start sub_0203FD60 +sub_0203FD60: ; 0x0203FD60 + mov r1, #0 + strb r1, [r0, #1] + str r1, [r0, #8] + bx lr + thumb_func_end sub_0203FD60 + + thumb_func_start sub_0203FD68 +sub_0203FD68: ; 0x0203FD68 + str r1, [r0, #0x74] + bx lr + thumb_func_end sub_0203FD68 + + thumb_func_start sub_0203FD6C +sub_0203FD6C: ; 0x0203FD6C + push {r4, lr} + add r4, r0, #0 + ldrb r1, [r4, #1] + cmp r1, #0 + bne _0203FD7A + mov r0, #0 + pop {r4, pc} +_0203FD7A: + beq _0203FD86 + cmp r1, #1 + beq _0203FDA2 + cmp r1, #2 + beq _0203FD8A + b _0203FDD4 +_0203FD86: + mov r0, #0 + pop {r4, pc} +_0203FD8A: + ldr r1, [r4, #4] + cmp r1, #0 + beq _0203FD9E + blx r1 + cmp r0, #1 + bne _0203FD9A + mov r0, #1 + strb r0, [r4, #1] +_0203FD9A: + mov r0, #1 + pop {r4, pc} +_0203FD9E: + mov r0, #1 + strb r0, [r4, #1] +_0203FDA2: + ldr r0, [r4, #8] + cmp r0, #0 + bne _0203FDAE + mov r0, #0 + strb r0, [r4, #1] + pop {r4, pc} +_0203FDAE: + add r0, r4, #0 + bl sub_0203FE2C + add r1, r0, #0 + ldr r0, [r4, #0x60] + cmp r1, r0 + blo _0203FDC6 + bl GF_AssertFail + mov r0, #0 + strb r0, [r4, #1] + pop {r4, pc} +_0203FDC6: + ldr r2, [r4, #0x5c] + lsl r1, r1, #2 + ldr r1, [r2, r1] + add r0, r4, #0 + blx r1 + cmp r0, #1 + bne _0203FDA2 +_0203FDD4: + mov r0, #1 + pop {r4, pc} + thumb_func_end sub_0203FD6C + + thumb_func_start sub_0203FDD8 +sub_0203FDD8: ; 0x0203FDD8 + ldrb r3, [r0] + add r2, r3, #1 + cmp r2, #0x14 + blt _0203FDE4 + mov r0, #1 + bx lr +_0203FDE4: + lsl r2, r3, #2 + add r2, r0, r2 + str r1, [r2, #0xc] + ldrb r1, [r0] + add r1, r1, #1 + strb r1, [r0] + mov r0, #0 + bx lr + thumb_func_end sub_0203FDD8 + + thumb_func_start sub_0203FDF4 +sub_0203FDF4: ; 0x0203FDF4 + ldrb r1, [r0] + cmp r1, #0 + bne _0203FDFE + mov r0, #0 + bx lr +_0203FDFE: + sub r1, r1, #1 + strb r1, [r0] + ldrb r1, [r0] + lsl r1, r1, #2 + add r0, r0, r1 + ldr r0, [r0, #0xc] + bx lr + thumb_func_end sub_0203FDF4 + + thumb_func_start sub_0203FE0C +sub_0203FE0C: ; 0x0203FE0C + str r1, [r0, #8] + bx lr + thumb_func_end sub_0203FE0C + + thumb_func_start sub_0203FE10 +sub_0203FE10: ; 0x0203FE10 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + ldr r1, [r5, #8] + bl sub_0203FDD8 + str r4, [r5, #8] + pop {r3, r4, r5, pc} + thumb_func_end sub_0203FE10 + + thumb_func_start sub_0203FE20 +sub_0203FE20: ; 0x0203FE20 + push {r4, lr} + add r4, r0, #0 + bl sub_0203FDF4 + str r0, [r4, #8] + pop {r4, pc} + thumb_func_end sub_0203FE20 + + thumb_func_start sub_0203FE2C +sub_0203FE2C: ; 0x0203FE2C + ldr r1, [r0, #8] + add r3, r1, #1 + str r3, [r0, #8] + ldrb r2, [r1] + add r1, r3, #1 + str r1, [r0, #8] + ldrb r0, [r3] + lsl r0, r0, #8 + add r0, r2, r0 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bx lr + thumb_func_end sub_0203FE2C + + thumb_func_start sub_0203FE44 +sub_0203FE44: ; 0x0203FE44 + push {r4, r5} + ldr r1, [r0, #8] + add r2, r1, #1 + str r2, [r0, #8] + ldrb r3, [r1] + add r1, r2, #1 + add r5, r1, #1 + str r1, [r0, #8] + ldrb r2, [r2] + add r4, r5, #1 + str r5, [r0, #8] + ldrb r1, [r1] + str r4, [r0, #8] + ldrb r0, [r5] + mov r4, #0 + add r0, r4, r0 + lsl r0, r0, #8 + add r0, r0, r1 + lsl r0, r0, #8 + add r0, r0, r2 + lsl r0, r0, #8 + add r0, r0, r3 + pop {r4, r5} + bx lr + thumb_func_end sub_0203FE44 + + thumb_func_start sub_0203FE74 +sub_0203FE74: ; 0x0203FE74 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r6, r1, #0 + add r7, r2, #0 + bl sub_0204001C + add r4, r0, #0 + mov r0, #0 + str r0, [sp] + add r0, r5, #0 + add r1, r4, #0 + add r2, r6, #0 + add r3, r7, #0 + bl sub_0204005C + ldr r1, _0203FEA0 ; =sub_0203FF44 + add r0, r5, #0 + add r2, r4, #0 + bl sub_020504F0 + pop {r3, r4, r5, r6, r7, pc} + nop +_0203FEA0: .word sub_0203FF44 + thumb_func_end sub_0203FE74 + + thumb_func_start sub_0203FEA4 +sub_0203FEA4: ; 0x0203FEA4 + push {r4, r5, r6, lr} + ldr r0, [r0, #0x10] + add r5, r1, #0 + add r4, r2, #0 + add r6, r3, #0 + bl sub_02050650 + ldr r2, [sp, #0x1c] + mov r1, #0x1c + add r3, r2, #0 + add r0, #0x54 + mul r3, r1 + add r1, r0, r3 + str r4, [r0, r3] + ldr r0, [sp, #0x10] + str r6, [r1, #4] + str r0, [r1, #8] + ldr r0, [sp, #0x14] + str r0, [r1, #0xc] + ldr r0, [sp, #0x18] + str r0, [r1, #0x10] + str r5, [r1, #0x14] + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0203FEA4 + + thumb_func_start sub_0203FED4 +sub_0203FED4: ; 0x0203FED4 + push {r4, r5, r6, r7, lr} + sub sp, #0xc + add r6, r0, #0 + add r7, r1, #0 + str r2, [sp, #4] + add r5, r3, #0 + bl sub_0205064C + str r0, [sp, #8] + bl sub_0204001C + add r4, r0, #0 + ldr r0, [sp, #8] + ldr r3, [sp, #4] + add r1, r4, #0 + add r2, r7, #0 + str r5, [sp] + bl sub_0204005C + ldr r1, _0203FF08 ; =sub_0203FF44 + add r0, r6, #0 + add r2, r4, #0 + bl sub_02050530 + add sp, #0xc + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_0203FF08: .word sub_0203FF44 + thumb_func_end sub_0203FED4 + + thumb_func_start sub_0203FF0C +sub_0203FF0C: ; 0x0203FF0C + push {r3, r4, r5, r6, r7, lr} + sub sp, #8 + add r5, r0, #0 + add r6, r1, #0 + add r7, r2, #0 + bl sub_0205064C + str r0, [sp, #4] + bl sub_0204001C + add r4, r0, #0 + mov r0, #0 + str r0, [sp] + ldr r0, [sp, #4] + add r1, r4, #0 + add r2, r6, #0 + add r3, r7, #0 + bl sub_0204005C + ldr r1, _0203FF40 ; =sub_0203FF44 + add r0, r5, #0 + add r2, r4, #0 + bl sub_02050510 + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0203FF40: .word sub_0203FF44 + thumb_func_end sub_0203FF0C + + thumb_func_start sub_0203FF44 +sub_0203FF44: ; 0x0203FF44 + push {r3, r4, r5, r6, r7, lr} + sub sp, #8 + add r5, r0, #0 + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0205064C + ldrb r1, [r4, #4] + str r0, [sp] + cmp r1, #0 + beq _0203FF64 + cmp r1, #1 + beq _0203FF9A + b _02040016 +_0203FF64: + ldrh r1, [r4, #0xa] + bl sub_020400AC + str r0, [r4, #0x38] + mov r0, #1 + strb r0, [r4, #9] + mov r0, #8 + mov r1, #0x40 + mov r2, #0xb + bl ScrStrBufs_new_custom + str r0, [r4, #0x44] + mov r0, #1 + lsl r0, r0, #0xa + mov r1, #0xb + bl String_ctor + str r0, [r4, #0x48] + mov r0, #1 + lsl r0, r0, #0xa + mov r1, #0xb + bl String_ctor + str r0, [r4, #0x4c] + ldrb r0, [r4, #4] + add r0, r0, #1 + strb r0, [r4, #4] +_0203FF9A: + mov r0, #0 + add r7, r4, #0 + str r0, [sp, #4] + add r5, r4, #0 + add r7, #9 +_0203FFA4: + ldr r6, [r5, #0x38] + cmp r6, #0 + beq _0203FFCE + add r0, r6, #0 + bl sub_0203FD6C + cmp r0, #0 + bne _0203FFCE + add r0, r6, #0 + bl sub_02040044 + ldrb r0, [r4, #9] + cmp r0, #0 + bne _0203FFC4 + bl GF_AssertFail +_0203FFC4: + mov r0, #0 + str r0, [r5, #0x38] + ldrb r0, [r7] + sub r0, r0, #1 + strb r0, [r7] +_0203FFCE: + ldr r0, [sp, #4] + add r5, r5, #4 + add r0, r0, #1 + str r0, [sp, #4] + cmp r0, #3 + blt _0203FFA4 + ldrb r0, [r4, #9] + cmp r0, #0 + bne _02040016 + add r0, r4, #0 + add r0, #0xa8 + ldr r5, [r0] + ldr r0, [r4, #0x44] + bl ScrStrBufs_delete + ldr r0, [r4, #0x48] + bl String_dtor + ldr r0, [r4, #0x4c] + bl String_dtor + mov r0, #0 + str r0, [r4] + add r0, r4, #0 + bl FreeToHeap + cmp r5, #0 + beq _02040010 + ldr r0, [sp] + blx r5 + add sp, #8 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_02040010: + add sp, #8 + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_02040016: + mov r0, #0 + add sp, #8 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0203FF44 + + thumb_func_start sub_0204001C +sub_0204001C: ; 0x0204001C + push {r4, lr} + mov r0, #0xb + mov r1, #0xe0 + bl AllocFromHeap + add r4, r0, #0 + bne _0204002E + bl GF_AssertFail +_0204002E: + add r0, r4, #0 + mov r1, #0 + mov r2, #0xe0 + bl memset + ldr r0, _02040040 ; =0x0003643F + str r0, [r4] + add r0, r4, #0 + pop {r4, pc} + .balign 4, 0 +_02040040: .word 0x0003643F + thumb_func_end sub_0204001C + + thumb_func_start sub_02040044 +sub_02040044: ; 0x02040044 + push {r4, lr} + add r4, r0, #0 + ldr r0, [r4, #0x78] + bl DestroyMsgData + ldr r0, [r4, #0x7c] + bl FreeToHeap + add r0, r4, #0 + bl FreeToHeap + pop {r4, pc} + thumb_func_end sub_02040044 + + thumb_func_start sub_0204005C +sub_0204005C: ; 0x0204005C + push {r3, r4, r5, r6, r7, lr} + add r5, r1, #0 + add r7, r0, #0 + add r0, r5, #0 + mov r1, #0x37 + add r4, r2, #0 + add r6, r3, #0 + bl sub_020401B4 + str r0, [sp] + ldr r0, [r7, #0x40] + bl sub_0205C654 + str r0, [r5, #0x28] + str r6, [r5, #0x2c] + ldr r0, [sp, #0x18] + strh r4, [r5, #0xa] + str r0, [r5, #0x34] + cmp r6, #0 + beq _0204008E + add r0, r6, #0 + bl sub_0205F24C + ldr r1, [sp] + strh r0, [r1] +_0204008E: + mov r0, #0x7d + lsl r0, r0, #6 + cmp r4, r0 + blo _020400A4 + ldr r0, _020400A8 ; =0x0000225F + cmp r4, r0 + bhi _020400A4 + add r0, r5, #0 + add r1, r4, #0 + bl sub_020405AC +_020400A4: + pop {r3, r4, r5, r6, r7, pc} + nop +_020400A8: .word 0x0000225F + thumb_func_end sub_0204005C + + thumb_func_start sub_020400AC +sub_020400AC: ; 0x020400AC + push {r4, r5, r6, lr} + add r5, r0, #0 + add r6, r1, #0 + mov r0, #0xb + mov r1, #0x84 + bl AllocFromHeap + add r4, r0, #0 + bne _020400C2 + bl GF_AssertFail +_020400C2: + ldr r2, _020400E0 ; =0x020FAC90 + ldr r1, _020400E4 ; =0x020FAD00 + ldr r2, [r2] + add r0, r4, #0 + bl sub_0203FD18 + add r0, r5, #0 + add r1, r4, #0 + add r2, r6, #0 + mov r3, #0 + bl sub_020400E8 + add r0, r4, #0 + pop {r4, r5, r6, pc} + nop +_020400E0: .word 0x020FAC90 +_020400E4: .word 0x020FAD00 + thumb_func_end sub_020400AC + + thumb_func_start sub_020400E8 +sub_020400E8: ; 0x020400E8 + push {r4, r5, r6, lr} + add r4, r1, #0 + add r3, r4, #0 + add r5, r0, #0 + add r3, #0x80 + str r5, [r3] + bl sub_02040114 + add r6, r0, #0 + ldr r1, [r4, #0x7c] + add r0, r4, #0 + bl sub_0203FD4C + add r0, r4, #0 + add r1, r6, #0 + bl sub_02040340 + ldr r1, [r5, #0x10] + add r0, r4, #0 + bl sub_0203FD68 + pop {r4, r5, r6, pc} + thumb_func_end sub_020400E8 + + thumb_func_start sub_02040114 +sub_02040114: ; 0x02040114 + push {r4, r5, r6, lr} + ldr r6, _02040164 ; =0x020FA4A4 + add r5, r2, #0 + mov r2, #0 + add r4, r6, #0 +_0204011E: + ldrh r3, [r4] + cmp r5, r3 + blo _0204013E + mov r3, #6 + add r4, r2, #0 + mul r4, r3 + add r3, r6, r4 + ldrh r2, [r3, #2] + ldrh r3, [r3, #4] + bl sub_02040168 + ldrh r0, [r6, r4] + sub r0, r5, r0 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + pop {r4, r5, r6, pc} +_0204013E: + add r2, r2, #1 + add r4, r4, #6 + cmp r2, #0x1e + blo _0204011E + cmp r5, #1 + blo _02040156 + bl sub_0204018C + sub r0, r5, #1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + pop {r4, r5, r6, pc} +_02040156: + mov r2, #0x8c + mov r3, #0xb8 + bl sub_02040168 + mov r0, #0 + pop {r4, r5, r6, pc} + nop +_02040164: .word 0x020FA4A4 + thumb_func_end sub_02040114 + + thumb_func_start sub_02040168 +sub_02040168: ; 0x02040168 + push {r3, r4, r5, lr} + add r5, r1, #0 + add r1, r2, #0 + add r4, r3, #0 + mov r0, #0xc + mov r2, #0xb + bl AllocAndReadWholeNarcMemberByIdPair + str r0, [r5, #0x7c] + mov r0, #1 + mov r1, #0x1b + add r2, r4, #0 + mov r3, #0xb + bl NewMsgDataFromNarc + str r0, [r5, #0x78] + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_02040168 + + thumb_func_start sub_0204018C +sub_0204018C: ; 0x0204018C + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, [r5, #0x20] + add r4, r1, #0 + ldr r0, [r0] + bl sub_02040358 + str r0, [r4, #0x7c] + ldr r0, [r5, #0x20] + ldr r0, [r0] + bl sub_0204036C + add r2, r0, #0 + mov r0, #1 + mov r1, #0x1b + mov r3, #0xb + bl NewMsgDataFromNarc + str r0, [r4, #0x78] + pop {r3, r4, r5, pc} + thumb_func_end sub_0204018C + + thumb_func_start sub_020401B4 +sub_020401B4: ; 0x020401B4 + push {r3, lr} + cmp r1, #0x37 + bls _020401BC + b _020402E8 +_020401BC: + add r2, r1, r1 + add r2, pc + ldrh r2, [r2, #6] + lsl r2, r2, #0x10 + asr r2, r2, #0x10 + add pc, r2 +_020401C8: ; jump table + .short _02040238 - _020401C8 - 2 ; case 0 + .short _0204023C - _020401C8 - 2 ; case 1 + .short _02040240 - _020401C8 - 2 ; case 2 + .short _02040244 - _020401C8 - 2 ; case 3 + .short _02040248 - _020401C8 - 2 ; case 4 + .short _0204024C - _020401C8 - 2 ; case 5 + .short _02040250 - _020401C8 - 2 ; case 6 + .short _02040254 - _020401C8 - 2 ; case 7 + .short _02040258 - _020401C8 - 2 ; case 8 + .short _0204025C - _020401C8 - 2 ; case 9 + .short _02040260 - _020401C8 - 2 ; case 10 + .short _02040264 - _020401C8 - 2 ; case 11 + .short _02040268 - _020401C8 - 2 ; case 12 + .short _0204026C - _020401C8 - 2 ; case 13 + .short _0204026C - _020401C8 - 2 ; case 14 + .short _0204026C - _020401C8 - 2 ; case 15 + .short _02040276 - _020401C8 - 2 ; case 16 + .short _0204027A - _020401C8 - 2 ; case 17 + .short _0204027E - _020401C8 - 2 ; case 18 + .short _02040282 - _020401C8 - 2 ; case 19 + .short _02040286 - _020401C8 - 2 ; case 20 + .short _0204028A - _020401C8 - 2 ; case 21 + .short _0204028E - _020401C8 - 2 ; case 22 + .short _02040292 - _020401C8 - 2 ; case 23 + .short _02040296 - _020401C8 - 2 ; case 24 + .short _0204029A - _020401C8 - 2 ; case 25 + .short _0204029E - _020401C8 - 2 ; case 26 + .short _020402A2 - _020401C8 - 2 ; case 27 + .short _020402A6 - _020401C8 - 2 ; case 28 + .short _020402AA - _020401C8 - 2 ; case 29 + .short _020402AE - _020401C8 - 2 ; case 30 + .short _020402B2 - _020401C8 - 2 ; case 31 + .short _020402B6 - _020401C8 - 2 ; case 32 + .short _020402BA - _020401C8 - 2 ; case 33 + .short _020402BE - _020401C8 - 2 ; case 34 + .short _020402C2 - _020401C8 - 2 ; case 35 + .short _020402C6 - _020401C8 - 2 ; case 36 + .short _020402CA - _020401C8 - 2 ; case 37 + .short _020402CE - _020401C8 - 2 ; case 38 + .short _020402D2 - _020401C8 - 2 ; case 39 + .short _020402D6 - _020401C8 - 2 ; case 40 + .short _020402DA - _020401C8 - 2 ; case 41 + .short _020402DE - _020401C8 - 2 ; case 42 + .short _020402DE - _020401C8 - 2 ; case 43 + .short _020402DE - _020401C8 - 2 ; case 44 + .short _020402DE - _020401C8 - 2 ; case 45 + .short _020402DE - _020401C8 - 2 ; case 46 + .short _020402DE - _020401C8 - 2 ; case 47 + .short _020402DE - _020401C8 - 2 ; case 48 + .short _020402DE - _020401C8 - 2 ; case 49 + .short _020402DE - _020401C8 - 2 ; case 50 + .short _020402DE - _020401C8 - 2 ; case 51 + .short _020402DE - _020401C8 - 2 ; case 52 + .short _020402DE - _020401C8 - 2 ; case 53 + .short _020402DE - _020401C8 - 2 ; case 54 + .short _020402DE - _020401C8 - 2 ; case 55 +_02040238: + add r0, #0x10 + pop {r3, pc} +_0204023C: + add r0, #0x14 + pop {r3, pc} +_02040240: + add r0, #0x24 + pop {r3, pc} +_02040244: + add r0, r0, #5 + pop {r3, pc} +_02040248: + add r0, r0, #6 + pop {r3, pc} +_0204024C: + add r0, r0, #7 + pop {r3, pc} +_02040250: + add r0, #8 + pop {r3, pc} +_02040254: + add r0, #9 + pop {r3, pc} +_02040258: + add r0, #0xa + pop {r3, pc} +_0204025C: + add r0, #0x28 + pop {r3, pc} +_02040260: + add r0, #0x2c + pop {r3, pc} +_02040264: + add r0, #0x30 + pop {r3, pc} +_02040268: + add r0, #0x34 + pop {r3, pc} +_0204026C: + sub r1, #0xd + add r0, #0x38 + lsl r1, r1, #2 + add r0, r0, r1 + pop {r3, pc} +_02040276: + add r0, #0x44 + pop {r3, pc} +_0204027A: + add r0, #0x48 + pop {r3, pc} +_0204027E: + add r0, #0x4c + pop {r3, pc} +_02040282: + add r0, #0x50 + pop {r3, pc} +_02040286: + add r0, #0xac + pop {r3, pc} +_0204028A: + add r0, #0xb0 + pop {r3, pc} +_0204028E: + add r0, #0xb4 + pop {r3, pc} +_02040292: + add r0, #0xb8 + pop {r3, pc} +_02040296: + add r0, #0xc + pop {r3, pc} +_0204029A: + add r0, #0x54 + pop {r3, pc} +_0204029E: + add r0, #0x58 + pop {r3, pc} +_020402A2: + add r0, #0x5c + pop {r3, pc} +_020402A6: + add r0, #0x60 + pop {r3, pc} +_020402AA: + add r0, #0x64 + pop {r3, pc} +_020402AE: + add r0, #0x68 + pop {r3, pc} +_020402B2: + add r0, #0x6c + pop {r3, pc} +_020402B6: + add r0, #0x70 + pop {r3, pc} +_020402BA: + add r0, #0x74 + pop {r3, pc} +_020402BE: + add r0, #0x78 + pop {r3, pc} +_020402C2: + add r0, #0x7c + pop {r3, pc} +_020402C6: + add r0, #0x80 + pop {r3, pc} +_020402CA: + add r0, #0x84 + pop {r3, pc} +_020402CE: + add r0, #0x88 + pop {r3, pc} +_020402D2: + add r0, #0xbc + pop {r3, pc} +_020402D6: + add r0, #0xcc + pop {r3, pc} +_020402DA: + add r0, #0xdc + pop {r3, pc} +_020402DE: + sub r1, #0x2a + add r0, #0x8c + lsl r1, r1, #1 + add r0, r0, r1 + pop {r3, pc} +_020402E8: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} + thumb_func_end sub_020401B4 + + thumb_func_start sub_020402F0 +sub_020402F0: ; 0x020402F0 + push {r3, r4, r5, lr} + ldr r0, [r0, #0x10] + add r5, r1, #0 + bl sub_02050650 + add r4, r0, #0 + bne _02040302 + bl GF_AssertFail +_02040302: + ldr r1, [r4] + ldr r0, _02040318 ; =0x0003643F + cmp r1, r0 + beq _0204030E + bl GF_AssertFail +_0204030E: + add r0, r4, #0 + add r1, r5, #0 + bl sub_020401B4 + pop {r3, r4, r5, pc} + .balign 4, 0 +_02040318: .word 0x0003643F + thumb_func_end sub_020402F0 + + thumb_func_start sub_0204031C +sub_0204031C: ; 0x0204031C + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, [r5, #0x10] + bl sub_02050650 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0203BC10 + cmp r0, #1 + bne _02040338 + ldr r0, _0204033C ; =sub_0203BD64 + add r4, #0xa8 + str r0, [r4] +_02040338: + pop {r3, r4, r5, pc} + nop +_0204033C: .word sub_0203BD64 + thumb_func_end sub_0204031C + + thumb_func_start sub_02040340 +sub_02040340: ; 0x02040340 + push {r4, lr} + add r4, r0, #0 + ldr r2, [r4, #8] + lsl r1, r1, #2 + add r1, r2, r1 + str r1, [r4, #8] + bl sub_0203FE44 + ldr r1, [r4, #8] + add r0, r1, r0 + str r0, [r4, #8] + pop {r4, pc} + thumb_func_end sub_02040340 + + thumb_func_start sub_02040358 +sub_02040358: ; 0x02040358 + push {r3, lr} + bl sub_0203B2D4 + add r1, r0, #0 + mov r0, #0xc + mov r2, #0xb + bl AllocAndReadWholeNarcMemberByIdPair + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02040358 + + thumb_func_start sub_0204036C +sub_0204036C: ; 0x0204036C + ldr r3, _02040370 ; =sub_0203B2C0 + bx r3 + .balign 4, 0 +_02040370: .word sub_0203B2C0 + thumb_func_end sub_0204036C + + thumb_func_start sub_02040374 +sub_02040374: ; 0x02040374 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, [r5, #0xc] + add r4, r1, #0 + bl sub_020503D0 + mov r1, #1 + lsl r1, r1, #0xe + cmp r4, r1 + bhs _0204038C + mov r0, #0 + pop {r3, r4, r5, pc} +_0204038C: + lsl r1, r1, #1 + cmp r4, r1 + bhs _0204039A + add r1, r4, #0 + bl sub_020504A4 + pop {r3, r4, r5, pc} +_0204039A: + ldr r1, _020403A8 ; =0x00007FD6 + add r0, r5, #0 + sub r1, r4, r1 + bl sub_020402F0 + pop {r3, r4, r5, pc} + nop +_020403A8: .word 0x00007FD6 + thumb_func_end sub_02040374 + + thumb_func_start sub_020403AC +sub_020403AC: ; 0x020403AC + push {r4, lr} + add r4, r1, #0 + bl sub_02040374 + cmp r0, #0 + beq _020403BA + ldrh r4, [r0] +_020403BA: + add r0, r4, #0 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_020403AC + + thumb_func_start sub_020403C0 +sub_020403C0: ; 0x020403C0 + push {r4, lr} + add r4, r2, #0 + bl sub_02040374 + cmp r0, #0 + bne _020403D0 + mov r0, #0 + pop {r4, pc} +_020403D0: + strh r4, [r0] + mov r0, #1 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_020403C0 + + thumb_func_start sub_020403D8 +sub_020403D8: ; 0x020403D8 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #0x10 + blo _020403E6 + bl GF_AssertFail +_020403E6: + ldr r1, _020403F8 ; =0x00004020 + add r0, r5, #0 + add r1, r4, r1 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + bl sub_020403AC + pop {r3, r4, r5, pc} + nop +_020403F8: .word 0x00004020 + thumb_func_end sub_020403D8 + + thumb_func_start sub_020403FC +sub_020403FC: ; 0x020403FC + push {r4, lr} + ldr r0, [r0, #0xc] + add r4, r1, #0 + bl sub_020503D0 + add r1, r4, #0 + bl sub_020503DC + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_020403FC + + thumb_func_start sub_02040410 +sub_02040410: ; 0x02040410 + push {r4, lr} + ldr r0, [r0, #0xc] + add r4, r1, #0 + bl sub_020503D0 + add r1, r4, #0 + bl sub_02050408 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02040410 + + thumb_func_start sub_02040424 +sub_02040424: ; 0x02040424 + push {r4, lr} + ldr r0, [r0, #0xc] + add r4, r1, #0 + bl sub_020503D0 + add r1, r4, #0 + bl sub_02050430 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02040424 + + thumb_func_start sub_02040438 +sub_02040438: ; 0x02040438 + push {r4, lr} + ldr r0, [r0, #0xc] + bl sub_020503D0 + mov r1, #1 + add r4, r0, #0 + bl sub_0205045C + mov r1, #0 + strb r1, [r0] + strb r1, [r0, #1] + strb r1, [r0, #2] + strb r1, [r0, #3] + strb r1, [r0, #4] + strb r1, [r0, #5] + strb r1, [r0, #6] + strb r1, [r0, #7] + mov r1, #1 + add r0, r4, #0 + lsl r1, r1, #0xe + bl sub_020504A4 + mov r1, #0 + mov r2, #0x40 + bl memset + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02040438 + + thumb_func_start sub_02040470 +sub_02040470: ; 0x02040470 + push {r3, lr} + ldr r0, [r0, #0xc] + bl sub_020503D0 + mov r1, #0xaa + lsl r1, r1, #4 + bl sub_0205045C + mov r2, #0x18 + mov r1, #0 +_02040484: + strb r1, [r0] + add r0, r0, #1 + sub r2, r2, #1 + bne _02040484 + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_02040470 + + thumb_func_start sub_02040490 +sub_02040490: ; 0x02040490 + push {r3, r4, r5, r6, r7, lr} + add r4, r1, #0 + add r5, r0, #0 + mov r1, #0x2a + add r6, r2, #0 + add r7, r3, #0 + bl sub_020402F0 + strh r4, [r0] + add r0, r5, #0 + mov r1, #0x2b + bl sub_020402F0 + strh r6, [r0] + add r0, r5, #0 + mov r1, #0x2c + bl sub_020402F0 + strh r7, [r0] + add r0, r5, #0 + mov r1, #0x2d + bl sub_020402F0 + add r1, sp, #8 + ldrh r1, [r1, #0x10] + strh r1, [r0] + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_02040490 + + thumb_func_start sub_020404C8 +sub_020404C8: ; 0x020404C8 + ldr r1, _020404E4 ; =0x00001388 + cmp r0, r1 + bhs _020404D8 + ldr r1, _020404E8 ; =0x00000BB7 + sub r0, r0, r1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bx lr +_020404D8: + sub r1, r1, #1 + sub r0, r0, r1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bx lr + nop +_020404E4: .word 0x00001388 +_020404E8: .word 0x00000BB7 + thumb_func_end sub_020404C8 + + thumb_func_start sub_020404EC +sub_020404EC: ; 0x020404EC + ldr r1, _020404FC ; =0x00001388 + cmp r0, r1 + blo _020404F6 + mov r0, #1 + bx lr +_020404F6: + mov r0, #0 + bx lr + nop +_020404FC: .word 0x00001388 + thumb_func_end sub_020404EC + + thumb_func_start sub_02040500 +sub_02040500: ; 0x02040500 + push {r3, lr} + mov r1, #9 + bl sub_02073470 + cmp r0, #0 + beq _02040510 + mov r0, #1 + pop {r3, pc} +_02040510: + mov r0, #0 + pop {r3, pc} + thumb_func_end sub_02040500 + + thumb_func_start sub_02040514 +sub_02040514: ; 0x02040514 + push {r4, lr} + add r4, r1, #0 + bl sub_020503D0 + mov r1, #0x55 + lsl r1, r1, #4 + add r1, r4, r1 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + bl sub_020503DC + pop {r4, pc} + thumb_func_end sub_02040514 + + thumb_func_start sub_0204052C +sub_0204052C: ; 0x0204052C + push {r4, lr} + add r4, r1, #0 + bl sub_020503D0 + mov r1, #0x55 + lsl r1, r1, #4 + add r1, r4, r1 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + bl sub_02050408 + pop {r4, pc} + thumb_func_end sub_0204052C + + thumb_func_start sub_02040544 +sub_02040544: ; 0x02040544 + push {r4, lr} + add r4, r1, #0 + bl sub_020503D0 + mov r1, #0x55 + lsl r1, r1, #4 + add r1, r4, r1 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + bl sub_02050430 + pop {r4, pc} + thumb_func_end sub_02040544 + + thumb_func_start sub_0204055C +sub_0204055C: ; 0x0204055C + ldr r1, _02040568 ; =0x00001C20 + sub r0, r0, r1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bx lr + nop +_02040568: .word 0x00001C20 + thumb_func_end sub_0204055C + + thumb_func_start sub_0204056C +sub_0204056C: ; 0x0204056C + mov r1, #0x7d + lsl r1, r1, #6 + sub r0, r0, r1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bx lr + thumb_func_end sub_0204056C + + thumb_func_start sub_02040578 +sub_02040578: ; 0x02040578 + push {r4, lr} + ldr r4, _020405A8 ; =0x020FA558 + bl sub_0204056C + mov r2, #0 + add r3, r4, #0 +_02040584: + ldrh r1, [r3, #6] + cmp r0, r1 + beq _02040592 + add r2, r2, #1 + add r3, #8 + cmp r2, #0xe7 + blo _02040584 +_02040592: + cmp r2, #0xe7 + blo _0204059E + bl GF_AssertFail + mov r0, #0 + pop {r4, pc} +_0204059E: + lsl r0, r2, #3 + add r0, r4, r0 + ldrb r0, [r0, #3] + pop {r4, pc} + nop +_020405A8: .word 0x020FA558 + thumb_func_end sub_02040578 + + thumb_func_start sub_020405AC +sub_020405AC: ; 0x020405AC + push {r3, r4, r5, r6, r7, lr} + add r5, r1, #0 + add r4, r0, #0 + mov r1, #0x2a + bl sub_020401B4 + add r7, r0, #0 + add r0, r4, #0 + mov r1, #0x2b + bl sub_020401B4 + add r6, r0, #0 + add r0, r4, #0 + mov r1, #0x2c + bl sub_020401B4 + add r4, r0, #0 + add r0, r5, #0 + bl sub_0204056C + ldr r3, _02040610 ; =0x020FA558 + add r2, r0, #0 + mov r1, #0 +_020405DA: + ldrh r0, [r3, #6] + cmp r2, r0 + beq _020405E8 + add r1, r1, #1 + add r3, #8 + cmp r1, #0xe7 + blo _020405DA +_020405E8: + cmp r1, #0xe7 + blo _020405F4 + bl GF_AssertFail + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_020405F4: + lsl r0, r1, #3 + ldr r1, _02040610 ; =0x020FA558 + ldrh r1, [r1, r0] + strh r1, [r7] + ldr r1, _02040610 ; =0x020FA558 + add r0, r1, r0 + ldrb r0, [r0, #2] + strh r0, [r6] + add r0, r5, #0 + bl sub_0204055C + strh r0, [r4] + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_02040610: .word 0x020FA558 + thumb_func_end sub_020405AC + + thumb_func_start sub_02040614 +sub_02040614: ; 0x02040614 + push {r4, r5, r6, r7, lr} + sub sp, #0x24 + str r0, [sp] + add r4, r1, #0 + mov r6, #0 + bl sub_0203B6E0 + add r5, r0, #0 + add r2, r5, #1 + mov r1, #6 + add r0, r4, #0 + mul r1, r2 + bl AllocFromHeap + str r0, [sp, #0x1c] + cmp r5, #0 + bne _02040646 + mov r2, #0xff + add r1, r0, #0 + strb r2, [r1, #4] + sub r2, r6, #1 + strh r2, [r1] + strh r2, [r1, #2] + add sp, #0x24 + pop {r4, r5, r6, r7, pc} +_02040646: + ldr r0, [sp] + bl sub_0203B6D8 + add r4, r0, #0 + bne _02040660 + ldr r0, [sp, #0x1c] + mov r1, #0xff + strb r1, [r0, #4] + sub r1, r6, #1 + strh r1, [r0] + strh r1, [r0, #2] + add sp, #0x24 + pop {r4, r5, r6, r7, pc} +_02040660: + ldr r0, [sp] + ldr r0, [r0, #0x40] + bl sub_0205C67C + str r0, [sp, #0x18] + ldr r0, [sp] + ldr r0, [r0, #0x40] + bl sub_0205C688 + str r0, [sp, #0x14] + ldr r0, [sp, #0x18] + str r0, [sp, #0x10] + sub r0, #0x11 + str r0, [sp, #0x10] + ldr r0, [sp, #0x18] + str r0, [sp, #0xc] + add r0, #0x11 + str r0, [sp, #0xc] + ldr r0, [sp, #0x14] + str r0, [sp, #8] + sub r0, #0x11 + str r0, [sp, #8] + ldr r0, [sp, #0x14] + str r0, [sp, #4] + add r0, #0x11 + str r0, [sp, #4] + ldr r0, [sp, #0x10] + cmp r0, #0 + bge _0204069E + add r0, r6, #0 + str r0, [sp, #0x10] +_0204069E: + ldr r0, [sp, #8] + cmp r0, #0 + bge _020406A8 + mov r0, #0 + str r0, [sp, #8] +_020406A8: + add r0, r5, #1 + mov r7, #0 + str r0, [sp, #0x20] + cmp r0, #0 + ble _0204070E + ldr r5, [sp, #0x1c] +_020406B4: + ldrh r0, [r4, #2] + cmp r0, #2 + bne _02040704 + ldrh r0, [r4] + bl sub_0204055C + add r1, r0, #0 + ldr r0, [sp] + bl sub_020403FC + cmp r0, #0 + bne _02040704 + ldr r1, [r4, #4] + ldr r0, [sp, #0x10] + cmp r1, r0 + blt _02040704 + ldr r0, [sp, #0xc] + cmp r1, r0 + bgt _02040704 + ldr r1, [r4, #8] + ldr r0, [sp, #8] + cmp r1, r0 + blt _02040704 + ldr r0, [sp, #4] + cmp r1, r0 + bgt _02040704 + ldrh r0, [r4] + bl sub_02040578 + strb r0, [r5, #4] + ldr r1, [r4, #4] + ldr r0, [sp, #0x18] + add r6, r6, #1 + sub r0, r1, r0 + strh r0, [r5] + ldr r1, [r4, #8] + ldr r0, [sp, #0x14] + sub r0, r1, r0 + strh r0, [r5, #2] + add r5, r5, #6 +_02040704: + ldr r0, [sp, #0x20] + add r7, r7, #1 + add r4, #0x14 + cmp r7, r0 + blt _020406B4 +_0204070E: + mov r2, #6 + add r0, r6, #0 + mul r0, r2 + ldr r1, [sp, #0x1c] + mov r4, #0xff + add r3, r1, r0 + strb r4, [r3, #4] + sub r2, r2, #7 + strh r2, [r1, r0] + strh r2, [r3, #2] + add r0, r1, #0 + add sp, #0x24 + pop {r4, r5, r6, r7, pc} + thumb_func_end sub_02040614 + + thumb_func_start sub_02040728 +sub_02040728: ; 0x02040728 + ldr r3, _02040730 ; =sub_02040734 + mov r1, #0x96 + lsl r1, r1, #6 + bx r3 + .balign 4, 0 +_02040730: .word sub_02040734 + thumb_func_end sub_02040728 + + thumb_func_start sub_02040734 +sub_02040734: ; 0x02040734 + push {r4, lr} + bl sub_020400AC + add r4, r0, #0 +_0204073C: + add r0, r4, #0 + bl sub_0203FD6C + cmp r0, #1 + beq _0204073C + add r0, r4, #0 + bl sub_02040044 + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_02040734 + + thumb_func_start sub_02040750 +sub_02040750: ; 0x02040750 + push {r3, r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + add r1, r5, #0 + add r1, #0xac + ldr r1, [r1] + cmp r1, #0 + beq _02040764 + mov r0, #0 + pop {r3, r4, r5, pc} +_02040764: + bl sub_0203B904 + add r1, r0, #0 + bne _02040770 + mov r0, #0 + pop {r3, r4, r5, pc} +_02040770: + cmp r4, #1 + bne _0204077E + add r0, r5, #0 + add r2, r4, #0 + bl sub_0204080C + b _02040784 +_0204077E: + add r1, r4, #0 + bl _020407E4 +_02040784: + add r1, r0, #0 + ldr r0, _020407A8 ; =0x0000FFFF + cmp r1, r0 + bne _02040790 + mov r0, #0 + pop {r3, r4, r5, pc} +_02040790: + cmp r4, #1 + bne _0204079E + add r0, r5, #0 + mov r2, #0 + bl sub_0203FE74 + b _020407A4 +_0204079E: + add r0, r5, #0 + bl sub_02040734 +_020407A4: + mov r0, #1 + pop {r3, r4, r5, pc} + .balign 4, 0 +_020407A8: .word 0x0000FFFF + thumb_func_end sub_02040750 + + thumb_func_start sub_020407AC +sub_020407AC: ; 0x020407AC + push {r4, lr} + add r4, r0, #0 + add r1, r4, #0 + add r1, #0xac + ldr r1, [r1] + cmp r1, #0 + beq _020407BE + mov r0, #0 + pop {r4, pc} +_020407BE: + bl sub_0203B904 + add r1, r0, #0 + bne _020407CA + mov r0, #0 + pop {r4, pc} +_020407CA: + add r0, r4, #0 + mov r2, #1 + bl sub_0204080C + ldr r1, _020407E0 ; =0x0000FFFF + cmp r0, r1 + beq _020407DC + mov r0, #1 + pop {r4, pc} +_020407DC: + mov r0, #0 + pop {r4, pc} + .balign 4, 0 +_020407E0: .word 0x0000FFFF +_020407E4: + ldrb r2, [r0] + cmp r2, #0 + bne _020407EE + ldr r0, _02040808 ; =0x0000FFFF + bx lr +_020407EE: + cmp r2, r1 + bne _02040800 + ldrb r1, [r0, #1] + ldrb r0, [r0, #2] + lsl r0, r0, #8 + add r0, r1, r0 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bx lr +_02040800: + add r0, r0, #5 + b _020407E4 + thumb_func_end sub_020407AC + + thumb_func_start sub_02040804 +sub_02040804: ; 0x02040804 + bx lr + nop +_02040808: .word 0x0000FFFF + thumb_func_end sub_02040804 + + thumb_func_start sub_0204080C +sub_0204080C: ; 0x0204080C + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + add r4, r1, #0 +_02040812: + ldrb r0, [r4] + cmp r0, #0 + bne _0204081C + ldr r0, _0204088C ; =0x0000FFFF + pop {r3, r4, r5, r6, r7, pc} +_0204081C: + cmp r0, r2 + bne _02040838 + ldrb r0, [r4, #4] + ldrb r2, [r4, #2] + ldrb r3, [r4, #1] + lsl r1, r0, #0x18 + ldrb r0, [r4, #3] + lsl r2, r2, #8 + add r2, r3, r2 + lsl r0, r0, #0x10 + add r0, r0, r2 + add r1, r1, r0 + add r0, r4, #5 + b _0204083C +_02040838: + add r4, r4, #5 + b _02040812 +_0204083C: + cmp r1, #0 + bne _02040844 + ldr r0, _0204088C ; =0x0000FFFF + pop {r3, r4, r5, r6, r7, pc} +_02040844: + add r4, r0, r1 +_02040846: + ldrb r0, [r4, #1] + ldrb r1, [r4] + lsl r0, r0, #8 + add r0, r1, r0 + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + bne _02040858 + ldr r0, _0204088C ; =0x0000FFFF + pop {r3, r4, r5, r6, r7, pc} +_02040858: + ldrb r0, [r4, #3] + ldrb r2, [r4, #2] + lsl r0, r0, #8 + add r0, r2, r0 + lsl r0, r0, #0x10 + lsr r6, r0, #0x10 + add r0, r5, #0 + bl sub_020403AC + add r7, r0, #0 + add r0, r5, #0 + add r1, r6, #0 + bl sub_020403AC + cmp r7, r0 + bne _02040886 + ldrb r0, [r4, #5] + ldrb r1, [r4, #4] + lsl r0, r0, #8 + add r0, r1, r0 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + pop {r3, r4, r5, r6, r7, pc} +_02040886: + add r4, r4, #6 + b _02040846 +_0204088A: + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0204088C: .word 0x0000FFFF + thumb_func_end sub_0204080C + + .rodata + +_020F684C: + .byte 0x06 +_020F684D: + .byte 0x00, 0x04, 0x06 + .byte 0x03, 0x0A, 0x00, 0x00 +_020F6854: + .byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00 + .byte 0x06, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00 + .byte 0x0A, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x00, 0x00 + .byte 0x5B, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00 +_020F6888: + .byte 0x00, 0x07, 0x01, 0x05, 0x03, 0x06, 0x01, 0x08 + .byte 0x05, 0x06, 0x03, 0x07, 0x05, 0x09, 0x06, 0x07, 0x03, 0x08, 0x06, 0x0A, 0x07, 0x08, 0x03, 0x09 + .byte 0x07, 0x02, 0x08, 0x09, 0x03, 0x0A, 0x08, 0x00, 0x09, 0x0A, 0x03, 0x02, 0x09, 0x01, 0x0A, 0x02 + .byte 0x03, 0x00, 0x0A, 0x05, 0x02, 0x00, 0x03, 0x01, 0x02, 0x06, 0x00, 0x01, 0x03, 0x05, 0x00, 0x02 + .byte 0x05, 0x07, 0x03, 0x09 +_020F68C4: + .byte 0x00, 0x02, 0x01, 0x03 +_020F68C8: + .byte 0x00, 0x02, 0x03, 0x01, 0x03, 0x01, 0x00, 0x02 +_020F68D0: + .byte 0xED, 0x01, 0xF2, 0x01, 0xEE, 0x01, 0xF1, 0x01, 0xF0, 0x01, 0xEC, 0x01, 0xEF, 0x01 +_020F68DE: + .byte 0x04, 0xFE + .byte 0x00, 0x00, 0x00, 0x00, 0x04, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x04, 0xFE, 0x00, 0x00, 0x00, 0x00 + .byte 0x04, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x04, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x02, 0x02, 0x02, 0x02 + .byte 0x02, 0x00 +_020F6902: + .byte 0x00, 0x00 +_020F6904: + .byte 0x74, 0x16, 0x0A, 0x00, 0x00, 0x00, 0x96, 0x00, 0x78, 0x00, 0x14, 0x0E + .byte 0x00, 0x00, 0x1C, 0x02, 0x7D, 0x00, 0x00, 0x1C, 0x14, 0x00, 0xC8, 0x00, 0x88, 0x00, 0x00, 0x00 + .byte 0x18, 0x0E, 0x96, 0x00, 0x68, 0x0C, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00 +_020F692C: + .byte 0x01, 0x01, 0x01, 0x01 + .byte 0x03, 0x03, 0x03, 0x04, 0x03, 0x04, 0x07, 0x03, 0x07, 0x04, 0x01, 0x04, 0x01, 0x01, 0x04, 0x01 + .byte 0x01, 0x01, 0x01, 0x03, 0x00, 0x00, 0x04, 0x01, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03, 0x01, 0x03 + .byte 0x00, 0x01, 0x01, 0x01, 0x03 +_020F6955: + .byte 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01 + .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01 + .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00 +_020F6980: + .byte 0x00, 0x00, 0x00, 0x00 +_020F6984: + .byte 0xC1, 0x42, 0x03, 0x02 +_020F6988: + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x6D, 0x77, 0x03, 0x02, 0xC1, 0x42, 0x03, 0x02 + .byte 0x00, 0x00, 0x00, 0x00, 0xD1, 0x45, 0x03, 0x02, 0x21, 0x45, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 + .byte 0x3D, 0x45, 0x03, 0x02, 0x21, 0x45, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x25, 0x45, 0x03, 0x02 + .byte 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x3D, 0x8B, 0x03, 0x02, 0x19, 0x8C, 0x03, 0x02 + .byte 0x00, 0x00, 0x00, 0x00, 0x9D, 0x8B, 0x03, 0x02, 0x19, 0x8C, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x76, 0x03, 0x02, 0xC5, 0x42, 0x03, 0x02 + .byte 0x00, 0x00, 0x00, 0x00, 0x41, 0x76, 0x03, 0x02, 0xC5, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 + .byte 0x69, 0x76, 0x03, 0x02, 0xC5, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0xCD, 0x42, 0x03, 0x02 + .byte 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x11, 0x43, 0x03, 0x02, 0xC1, 0x42, 0x03, 0x02 + .byte 0x00, 0x00, 0x00, 0x00, 0x39, 0x43, 0x03, 0x02, 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 + .byte 0x25, 0x7A, 0x03, 0x02, 0xC5, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0xAD, 0x7A, 0x03, 0x02 + .byte 0xC5, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x99, 0x7A, 0x03, 0x02, 0xC9, 0x42, 0x03, 0x02 + .byte 0x00, 0x00, 0x00, 0x00, 0x6D, 0x7B, 0x03, 0x02, 0x89, 0x7B, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 + .byte 0x69, 0x7C, 0x03, 0x02, 0x95, 0x7C, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x21, 0x92, 0x03, 0x02 + .byte 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 +_020F6A88: + .byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00 +_020F6A90: + .byte 0x7D, 0x82, 0x03, 0x02, 0x99, 0x83, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x14, 0x00 + .byte 0xFF, 0xFF, 0x00, 0x00, 0xF8, 0x01, 0x14, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xF4, 0x01, 0x14, 0x00 + .byte 0xFF, 0xFF, 0x00, 0x00, 0xF0, 0x01, 0x14, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xF0, 0x01, 0x14, 0x00 + .byte 0xF4, 0x01, 0x14, 0x00, 0xF8, 0x01, 0x14, 0x00, 0xFC, 0x01, 0x14, 0x00, 0xFF, 0xFF, 0x00, 0x00 +_020F6AD0: + .byte 0x00, 0x03, 0x03, 0x1A, 0x12, 0x01, 0x23, 0x00 +_020F6AD8: + .byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +_020F6AE8: + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00 +_020F6B04: + .byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +_020F6B2C: + .byte 0x39, 0x72, 0x09, 0x02 + .byte 0x31, 0x72, 0x09, 0x02, 0x00, 0x00, 0x00, 0x00, 0x49, 0x72, 0x09, 0x02, 0x2D, 0x72, 0x09, 0x02 + .byte 0x00, 0x00, 0x00, 0x00, 0x59, 0x72, 0x09, 0x02, 0x35, 0x72, 0x09, 0x02, 0x00, 0x00, 0x00, 0x00 +_020F6B50: + .byte 0x00, 0x03, 0x03, 0x1A, 0x12, 0x01, 0x23, 0x00 +_020F6B58: + .byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +_020F6B68: + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00 +_020F6B84: + .byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +_020F6BAC: + .byte 0xF5, 0x01, 0xDB, 0x01 + .byte 0xAC, 0x01, 0xB2, 0x01, 0x66, 0x01, 0x89, 0x01, 0xE2, 0x01, 0xFC, 0x01, 0x97, 0x01, 0x45, 0x00 + .byte 0x9E, 0x00, 0xA6, 0x00, 0xEC, 0x00, 0xB9, 0x00, 0xE2, 0x00, 0x51, 0x00, 0xF6, 0x00, 0x25, 0x01 + .byte 0x02, 0x02, 0xFF, 0x01, 0xD2, 0x01, 0xA9, 0x00, 0x10, 0x02, 0x16, 0x02, 0x00, 0x00, 0x00, 0x00 +_020F6BE0: + .byte 0xFF +_020F6BE1: + .byte 0x00, 0x0F, 0x00 +_020F6BE4: + .byte 0x00, 0x00 +_020F6BE6: + .byte 0x8B, 0x00 +_020F6BE8: + .byte 0x8F, 0x01 +_020F6BEA: + .byte 0x03, 0x00 +_020F6BEC: + .byte 0xE8, 0x03 +_020F6BEE: + .byte 0xE8, 0x03 +_020F6BF0: + .byte 0x00, 0x00, 0x00, 0xA6, 0x00, 0x02, 0x30, 0x0E, 0xFF, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0xE8, 0x03, 0xE8, 0x03, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x00, 0x30, 0x00 + .byte 0xFF, 0x1A, 0x0F, 0x00, 0x4A, 0x00, 0xBD, 0x03, 0xD6, 0x02, 0xE2, 0x02, 0x27, 0x04, 0x27, 0x04 + .byte 0x01, 0x00, 0x00, 0xA6, 0x00, 0x44, 0x60, 0x00, 0xFF, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x06, 0x30, 0x00 + .byte 0xFF, 0x1A, 0x0F, 0x00, 0x4B, 0x00, 0x89, 0x00, 0x8D, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0x02, 0x00, 0x00, 0xA6, 0x00, 0x44, 0x60, 0x00, 0xFF, 0x1A, 0x0F, 0x00, 0x4C, 0x00, 0x8A, 0x00 + .byte 0x8E, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x03, 0x00, 0x00, 0xA6, 0x00, 0x44, 0x60, 0x00 + .byte 0xFF, 0x58, 0xCF, 0x10, 0x43, 0x00, 0x16, 0x00, 0x1B, 0x01, 0x3B, 0x00, 0xE9, 0x03, 0xE9, 0x03 + .byte 0x04, 0x00, 0xE6, 0x91, 0x00, 0x01, 0x08, 0xF6, 0x1C, 0x4E, 0xBF, 0x10, 0x19, 0x00, 0x17, 0x00 + .byte 0x1C, 0x01, 0x3C, 0x00, 0x34, 0x04, 0x34, 0x04, 0x05, 0x00, 0xCE, 0xA4, 0x00, 0x03, 0x88, 0xEC + .byte 0xFF, 0x03, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x32, 0x04, 0x32, 0x04 + .byte 0x00, 0x00, 0xD1, 0x93, 0x00, 0x02, 0x08, 0xF6, 0x6F, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xA8, 0x00 + .byte 0x9D, 0x01, 0x3F, 0x01, 0x1A, 0x04, 0x1A, 0x04, 0x06, 0x00, 0x95, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x70, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xA9, 0x00, 0x9E, 0x01, 0x40, 0x01, 0x1B, 0x04, 0x1B, 0x04 + .byte 0x07, 0x00, 0x96, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x71, 0x11, 0x0F, 0x00, 0x00, 0x00, 0xAF, 0x00 + .byte 0xA4, 0x01, 0x46, 0x01, 0x21, 0x04, 0x21, 0x04, 0x08, 0x00, 0x97, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x72, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xB2, 0x00, 0xA7, 0x01, 0x48, 0x01, 0x1D, 0x04, 0x1D, 0x04 + .byte 0x09, 0x00, 0x98, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x73, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xB3, 0x00 + .byte 0xA8, 0x01, 0x49, 0x01, 0x1D, 0x04, 0x1D, 0x04, 0x0A, 0x00, 0x99, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x74, 0x0B, 0x0F, 0x00, 0x00, 0x00, 0xB8, 0x00, 0xAD, 0x01, 0x4E, 0x01, 0x1C, 0x04, 0x1C, 0x04 + .byte 0x0B, 0x00, 0x9A, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x75, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0xBA, 0x00 + .byte 0xAF, 0x01, 0x50, 0x01, 0x1F, 0x04, 0x1F, 0x04, 0x0C, 0x00, 0x9B, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x76, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xBC, 0x00, 0xB1, 0x01, 0x52, 0x01, 0x1E, 0x04, 0x1E, 0x04 + .byte 0x0D, 0x00, 0x9C, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x77, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xBE, 0x00 + .byte 0xB3, 0x01, 0x54, 0x01, 0x1D, 0x04, 0x1D, 0x04, 0x0E, 0x00, 0x9D, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x78, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xBF, 0x00, 0xB4, 0x01, 0x55, 0x01, 0x1D, 0x04, 0x1D, 0x04 + .byte 0x0F, 0x00, 0x9E, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x79, 0x0B, 0x0F, 0x00, 0x00, 0x00, 0xC5, 0x00 + .byte 0xBA, 0x01, 0x5A, 0x01, 0x23, 0x04, 0x23, 0x04, 0x10, 0x00, 0x9F, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x5C, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xC7, 0x00, 0xBC, 0x01, 0x5C, 0x01, 0x24, 0x04, 0x24, 0x04 + .byte 0x11, 0x00, 0xA0, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x7A, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xC9, 0x00 + .byte 0xBE, 0x01, 0x5E, 0x01, 0x24, 0x04, 0x24, 0x04, 0x12, 0x00, 0xA1, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x7B, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xCA, 0x00, 0xBF, 0x01, 0x5F, 0x01, 0x24, 0x04, 0x24, 0x04 + .byte 0x13, 0x00, 0xA2, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x7C, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xCB, 0x00 + .byte 0xC0, 0x01, 0x60, 0x01, 0x24, 0x04, 0x24, 0x04, 0x14, 0x00, 0xA3, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0xFF, 0x10, 0x0F, 0x00, 0x00, 0x00, 0xCD, 0x00, 0xC2, 0x01, 0x62, 0x01, 0x20, 0x04, 0x20, 0x04 + .byte 0x15, 0x00, 0xA4, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x7E, 0x10, 0x0F, 0x00, 0x00, 0x00, 0xD1, 0x00 + .byte 0xC6, 0x01, 0x65, 0x01, 0xC0, 0x04, 0xC0, 0x04, 0x16, 0x00, 0xA5, 0xC3, 0x01, 0x02, 0x28, 0xF6 + .byte 0x7F, 0x10, 0x0F, 0x00, 0x00, 0x00, 0xD2, 0x00, 0xC7, 0x01, 0x66, 0x01, 0x20, 0x04, 0x20, 0x04 + .byte 0x17, 0x00, 0xA6, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x81, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xD4, 0x00 + .byte 0xC9, 0x01, 0x68, 0x01, 0x1B, 0x04, 0x1B, 0x04, 0x18, 0x00, 0xAA, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x82, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xD7, 0x00, 0xCC, 0x01, 0x6A, 0x01, 0x25, 0x04, 0x25, 0x04 + .byte 0x19, 0x00, 0xAC, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x83, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xD8, 0x00 + .byte 0xCD, 0x01, 0x6B, 0x01, 0x25, 0x04, 0x25, 0x04, 0x1A, 0x00, 0xAD, 0xC3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x67, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xDA, 0x00, 0xCF, 0x01, 0x6D, 0x01, 0x26, 0x04, 0x26, 0x04 + .byte 0x1B, 0x00, 0xAE, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x68, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xDD, 0x00 + .byte 0xD2, 0x01, 0x71, 0x01, 0x26, 0x04, 0x26, 0x04, 0x1C, 0x00, 0xAF, 0xA3, 0x01, 0x02, 0x08, 0xF6 + .byte 0x69, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xDF, 0x00, 0xD4, 0x01, 0x73, 0x01, 0x3D, 0x04, 0x3D, 0x04 + .byte 0x1D, 0x00, 0xB0, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x01, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xE1, 0x00 + .byte 0xD6, 0x01, 0x75, 0x01, 0x04, 0x04, 0x04, 0x04, 0x1E, 0x00, 0xB1, 0xB3, 0x00, 0x02, 0x08, 0xF6 + .byte 0x03, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xE3, 0x00, 0xD8, 0x01, 0x77, 0x01, 0x05, 0x04, 0x05, 0x04 + .byte 0x1F, 0x00, 0xB2, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x04, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xE6, 0x00 + .byte 0xDB, 0x01, 0x7A, 0x01, 0x05, 0x04, 0x05, 0x04, 0x20, 0x00, 0xB3, 0xB3, 0x00, 0x02, 0x08, 0xF6 + .byte 0x08, 0x03, 0x0F, 0x00, 0x00, 0x00, 0xE8, 0x00, 0xDD, 0x01, 0x7C, 0x01, 0x06, 0x04, 0x06, 0x04 + .byte 0x21, 0x00, 0xB4, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x11, 0x04, 0x0F, 0x00, 0x00, 0x00, 0xEC, 0x00 + .byte 0xE1, 0x01, 0x7F, 0x01, 0x07, 0x04, 0x07, 0x04, 0x22, 0x00, 0xB5, 0xB3, 0x02, 0x02, 0x08, 0xF6 + .byte 0x15, 0x05, 0x0F, 0x00, 0x00, 0x00, 0xED, 0x00, 0xE2, 0x01, 0x80, 0x01, 0x08, 0x04, 0x08, 0x04 + .byte 0x23, 0x00, 0xB6, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x16, 0x06, 0x0F, 0x00, 0x00, 0x00, 0xF0, 0x00 + .byte 0xE5, 0x01, 0x83, 0x01, 0x09, 0x04, 0x09, 0x04, 0x24, 0x00, 0xB7, 0xB3, 0x00, 0x02, 0x08, 0xF6 + .byte 0x19, 0x06, 0x0F, 0x00, 0x00, 0x00, 0xF3, 0x00, 0xE8, 0x01, 0x86, 0x01, 0x09, 0x04, 0x09, 0x04 + .byte 0x25, 0x00, 0xB8, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x1A, 0x06, 0x0F, 0x00, 0x00, 0x00, 0xF6, 0x00 + .byte 0xEB, 0x01, 0x89, 0x01, 0x09, 0x04, 0x09, 0x04, 0x26, 0x00, 0xB9, 0xB3, 0x00, 0x02, 0x08, 0xF6 + .byte 0x26, 0x07, 0x0F, 0x00, 0x00, 0x00, 0xF7, 0x00, 0xEC, 0x01, 0x8A, 0x01, 0x0C, 0x04, 0x0C, 0x04 + .byte 0x27, 0x00, 0xBA, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x27, 0x07, 0x0F, 0x00, 0x00, 0x00, 0xF9, 0x00 + .byte 0xEE, 0x01, 0x8C, 0x01, 0x0C, 0x04, 0x0C, 0x04, 0x28, 0x00, 0xBB, 0xB3, 0x00, 0x02, 0x08, 0xF6 + .byte 0x34, 0x08, 0x0F, 0x00, 0x00, 0x00, 0xFC, 0x00, 0xF1, 0x01, 0x8F, 0x01, 0x0D, 0x04, 0x0D, 0x04 + .byte 0x29, 0x00, 0xBE, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x39, 0x08, 0x0F, 0x00, 0x00, 0x00, 0xFE, 0x00 + .byte 0xF3, 0x01, 0x91, 0x01, 0x0D, 0x04, 0x0D, 0x04, 0x2A, 0x00, 0xBF, 0xB3, 0x00, 0x02, 0x08, 0xF6 + .byte 0x3B, 0x08, 0x0F, 0x00, 0x00, 0x00, 0x01, 0x01, 0xF6, 0x01, 0x94, 0x01, 0x0D, 0x04, 0x0D, 0x04 + .byte 0x2B, 0x00, 0xC0, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x43, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x02, 0x01 + .byte 0xF7, 0x01, 0x95, 0x01, 0x0B, 0x04, 0x0B, 0x04, 0x2C, 0x00, 0xC1, 0xB3, 0x00, 0x02, 0x08, 0xF6 + .byte 0x44, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x03, 0x01, 0xF8, 0x01, 0x96, 0x01, 0x0B, 0x04, 0x0B, 0x04 + .byte 0x2D, 0x00, 0xC2, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x5F, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xDF, 0x02 + .byte 0xFC, 0x01, 0xBE, 0x01, 0x16, 0x04, 0x16, 0x04, 0x2E, 0x00, 0x8A, 0xC2, 0x01, 0x01, 0x08, 0xF6 + .byte 0x60, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xE5, 0x02, 0x02, 0x02, 0xC4, 0x01, 0x15, 0x04, 0x15, 0x04 + .byte 0x2F, 0x00, 0x8B, 0xC1, 0x01, 0x01, 0x28, 0xF6, 0xFF, 0x11, 0x0F, 0x00, 0x00, 0x00, 0xEE, 0x02 + .byte 0x0B, 0x02, 0xCC, 0x01, 0x14, 0x04, 0x14, 0x04, 0x30, 0x00, 0x8C, 0xC1, 0x01, 0x01, 0x28, 0xF6 + .byte 0x61, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xF6, 0x02, 0x13, 0x02, 0xD3, 0x01, 0x10, 0x04, 0x10, 0x04 + .byte 0x31, 0x00, 0x8D, 0xC1, 0x01, 0x01, 0x28, 0xF6, 0xFF, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xFF, 0x02 + .byte 0x1C, 0x02, 0xDB, 0x01, 0x11, 0x04, 0x11, 0x04, 0x32, 0x00, 0x8E, 0xC2, 0x01, 0x01, 0x28, 0xF6 + .byte 0x62, 0x0B, 0x0F, 0x00, 0x00, 0x00, 0x08, 0x03, 0x25, 0x02, 0xE3, 0x01, 0x0E, 0x04, 0x0E, 0x04 + .byte 0x33, 0x00, 0x8F, 0xC1, 0x01, 0x01, 0x28, 0xF6, 0x63, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x11, 0x03 + .byte 0x2E, 0x02, 0xEB, 0x01, 0x12, 0x04, 0x12, 0x04, 0x34, 0x00, 0x90, 0xC1, 0x01, 0x01, 0x28, 0xF6 + .byte 0x64, 0x10, 0x0F, 0x00, 0x00, 0x00, 0x27, 0x03, 0x44, 0x02, 0x00, 0x02, 0x13, 0x04, 0x13, 0x04 + .byte 0x35, 0x00, 0x91, 0xC1, 0x01, 0x01, 0x28, 0xF6, 0x65, 0x12, 0x0F, 0x00, 0x00, 0x00, 0x2F, 0x03 + .byte 0x4C, 0x02, 0x07, 0x02, 0x17, 0x04, 0x17, 0x04, 0x36, 0x00, 0x92, 0xC2, 0x01, 0x01, 0x28, 0xF6 + .byte 0xFF, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0x32, 0x03, 0x4F, 0x02, 0x09, 0x02, 0x3D, 0x04, 0x3D, 0x04 + .byte 0x37, 0x00, 0x93, 0xC3, 0x01, 0x02, 0x28, 0xF6, 0xFF, 0x0C, 0x0F, 0x00, 0x00, 0x00, 0x3B, 0x03 + .byte 0x58, 0x02, 0x11, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x38, 0x00, 0x94, 0xC1, 0x01, 0x01, 0x28, 0xF6 + .byte 0x00, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x4A, 0x03, 0x67, 0x02, 0x1E, 0x02, 0xFA, 0x03, 0xFA, 0x03 + .byte 0x39, 0x00, 0x7E, 0x02, 0x00, 0x01, 0x08, 0xF6, 0xFF, 0x19, 0x5F, 0x31, 0x64, 0x00, 0x4B, 0x03 + .byte 0x68, 0x02, 0x1F, 0x02, 0x2A, 0x04, 0x2A, 0x04, 0x3A, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x5F, 0x31, 0x65, 0x00, 0x4C, 0x03, 0x69, 0x02, 0x20, 0x02, 0xFA, 0x03, 0xFA, 0x03 + .byte 0x3B, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x5F, 0x31, 0x47, 0x00, 0x4D, 0x03 + .byte 0x6A, 0x02, 0x21, 0x02, 0xFA, 0x03, 0xFA, 0x03, 0x3C, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x5F, 0x31, 0x48, 0x00, 0x4E, 0x03, 0x6B, 0x02, 0x22, 0x02, 0xFA, 0x03, 0xFA, 0x03 + .byte 0x3D, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x5F, 0x31, 0x42, 0x00, 0x4F, 0x03 + .byte 0x6C, 0x02, 0x23, 0x02, 0xFA, 0x03, 0xFA, 0x03, 0x3E, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x5F, 0x31, 0x47, 0x00, 0x50, 0x03, 0x6D, 0x02, 0x24, 0x02, 0xFA, 0x03, 0xFA, 0x03 + .byte 0x3F, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4, 0x02, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x52, 0x03 + .byte 0x6F, 0x02, 0x26, 0x02, 0xFB, 0x03, 0xFB, 0x03, 0x40, 0x00, 0x7F, 0x11, 0x00, 0x01, 0x08, 0xF6 + .byte 0xFF, 0x1B, 0x1F, 0x31, 0x68, 0x00, 0x53, 0x03, 0x70, 0x02, 0x27, 0x02, 0x28, 0x04, 0x28, 0x04 + .byte 0x41, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x1F, 0x31, 0x49, 0x00, 0x54, 0x03 + .byte 0x71, 0x02, 0x28, 0x02, 0x27, 0x04, 0x27, 0x04, 0x42, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x0F, 0x31, 0x61, 0x00, 0x56, 0x03, 0x73, 0x02, 0x29, 0x02, 0xFB, 0x03, 0xFB, 0x03 + .byte 0x43, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x1F, 0x31, 0x60, 0x00, 0x57, 0x03 + .byte 0x74, 0x02, 0x2A, 0x02, 0xFB, 0x03, 0xFB, 0x03, 0x44, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x1F, 0x31, 0x61, 0x00, 0x58, 0x03, 0x75, 0x02, 0x2B, 0x02, 0xFB, 0x03, 0xFB, 0x03 + .byte 0x45, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4, 0x05, 0x03, 0x0F, 0x00, 0x00, 0x00, 0x59, 0x03 + .byte 0x76, 0x02, 0x2C, 0x02, 0xFC, 0x03, 0xFC, 0x03, 0x46, 0x00, 0x80, 0x21, 0x00, 0x01, 0x28, 0xF6 + .byte 0xFF, 0x04, 0x0F, 0x00, 0x00, 0x00, 0x62, 0x03, 0x7F, 0x02, 0x34, 0x02, 0xFD, 0x03, 0xFD, 0x03 + .byte 0x47, 0x00, 0x81, 0x32, 0x00, 0x01, 0x08, 0xF6, 0x33, 0x07, 0x0F, 0x00, 0x00, 0x00, 0x6B, 0x03 + .byte 0x88, 0x02, 0x3C, 0x02, 0x01, 0x04, 0x01, 0x04, 0x48, 0x00, 0x82, 0x41, 0x00, 0x01, 0x28, 0xF6 + .byte 0xFF, 0x05, 0x0F, 0x00, 0x00, 0x00, 0x75, 0x03, 0x92, 0x02, 0x45, 0x02, 0xFE, 0x03, 0xFE, 0x03 + .byte 0x49, 0x00, 0x83, 0x51, 0x00, 0x01, 0x28, 0xF6, 0x28, 0x07, 0x0F, 0x00, 0x00, 0x00, 0x8F, 0x03 + .byte 0xAC, 0x02, 0x5C, 0x02, 0x00, 0x04, 0x00, 0x04, 0x4A, 0x00, 0x84, 0x61, 0x00, 0x01, 0x28, 0xF6 + .byte 0x1B, 0x06, 0x0F, 0x00, 0x00, 0x00, 0x98, 0x03, 0xB5, 0x02, 0x64, 0x02, 0xFF, 0x03, 0xFF, 0x03 + .byte 0x4B, 0x00, 0x85, 0x71, 0x00, 0x01, 0x28, 0xF6, 0xFF, 0x1B, 0xCF, 0x14, 0x68, 0x00, 0x99, 0x03 + .byte 0xB6, 0x02, 0x65, 0x02, 0x28, 0x04, 0x28, 0x04, 0x4C, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1F, 0xBF, 0x14, 0x5A, 0x00, 0x9A, 0x03, 0xB7, 0x02, 0x66, 0x02, 0x29, 0x04, 0x29, 0x04 + .byte 0x4D, 0x00, 0x85, 0x79, 0x00, 0x04, 0x64, 0xA4, 0xFF, 0x1A, 0xCF, 0x14, 0x49, 0x00, 0x9B, 0x03 + .byte 0xB8, 0x02, 0x67, 0x02, 0x27, 0x04, 0x27, 0x04, 0x4E, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFF, 0x03, 0xFF, 0x03 + .byte 0x4F, 0x00, 0x06, 0x79, 0x00, 0x44, 0x64, 0xE0, 0xFF, 0x3D, 0xCF, 0x10, 0x44, 0x00, 0x9E, 0x03 + .byte 0xBB, 0x02, 0x68, 0x02, 0xFF, 0x03, 0xFF, 0x03, 0x50, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0xBF, 0x14, 0x42, 0x00, 0xA1, 0x03, 0xBE, 0x02, 0x6B, 0x02, 0xFF, 0x03, 0xFF, 0x03 + .byte 0x51, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0xBF, 0x14, 0x42, 0x00, 0x9F, 0x03 + .byte 0xBC, 0x02, 0x69, 0x02, 0xFF, 0x03, 0xFF, 0x03, 0x52, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3D, 0xCF, 0x14, 0x7E, 0x00, 0xA0, 0x03, 0xBD, 0x02, 0x6A, 0x02, 0x2C, 0x04, 0x2C, 0x04 + .byte 0x53, 0x00, 0x85, 0x79, 0x00, 0xF4, 0x64, 0xE4, 0xFF, 0x08, 0x0F, 0x00, 0x00, 0x00, 0xA2, 0x03 + .byte 0xBF, 0x02, 0x6C, 0x02, 0x02, 0x04, 0x02, 0x04, 0x54, 0x00, 0x86, 0xA2, 0x00, 0x01, 0x08, 0xF6 + .byte 0x3A, 0x08, 0x0F, 0x00, 0x00, 0x00, 0xAA, 0x03, 0xC7, 0x02, 0x72, 0x02, 0x0D, 0x04, 0x0D, 0x04 + .byte 0x55, 0x00, 0x87, 0x98, 0x02, 0x02, 0x08, 0xF6, 0x41, 0x09, 0x0F, 0x00, 0x00, 0x00, 0xAD, 0x03 + .byte 0xCA, 0x02, 0x75, 0x02, 0x03, 0x04, 0x03, 0x04, 0x56, 0x00, 0x88, 0xA1, 0x00, 0x01, 0x08, 0xF6 + .byte 0x55, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xB5, 0x03, 0xD2, 0x02, 0x7C, 0x02, 0x3D, 0x04, 0x3D, 0x04 + .byte 0x57, 0x00, 0x89, 0x93, 0x00, 0x01, 0x08, 0xF6, 0x5D, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xBE, 0x03 + .byte 0xD7, 0x02, 0xE4, 0x02, 0x20, 0x04, 0x20, 0x04, 0x58, 0x00, 0xA7, 0xC6, 0x01, 0x02, 0x08, 0xF6 + .byte 0x5E, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xC0, 0x03, 0xD9, 0x02, 0xE6, 0x02, 0x20, 0x04, 0x20, 0x04 + .byte 0x59, 0x00, 0xA8, 0xC6, 0x01, 0x02, 0x18, 0xF6, 0x80, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xC1, 0x03 + .byte 0xDA, 0x02, 0xE7, 0x02, 0x22, 0x04, 0x22, 0x04, 0x5A, 0x00, 0xA9, 0xC6, 0x01, 0x02, 0x18, 0xF6 + .byte 0x29, 0x07, 0x0F, 0x00, 0x00, 0x00, 0xC2, 0x03, 0xDB, 0x02, 0xE8, 0x02, 0x0A, 0x04, 0x0A, 0x04 + .byte 0x5B, 0x00, 0xBC, 0xB6, 0x00, 0x02, 0x18, 0xF6, 0x2A, 0x07, 0x0F, 0x00, 0x00, 0x00, 0xC4, 0x03 + .byte 0xDD, 0x02, 0xEA, 0x02, 0x0A, 0x04, 0x0A, 0x04, 0x5C, 0x00, 0xBD, 0xB6, 0x00, 0x02, 0x18, 0xF6 + .byte 0x17, 0x47, 0xBF, 0x1C, 0x1B, 0x00, 0x19, 0x00, 0x1E, 0x01, 0x3E, 0x00, 0x33, 0x04, 0x33, 0x04 + .byte 0x5D, 0x00, 0xCF, 0x97, 0x00, 0x01, 0x08, 0xF6, 0xFF, 0x3F, 0x0F, 0x21, 0x46, 0x00, 0xE7, 0x00 + .byte 0xDC, 0x01, 0x7B, 0x01, 0x05, 0x04, 0x05, 0x04, 0x5E, 0x00, 0xB3, 0xA9, 0x00, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x3F, 0xEF, 0x24, 0x46, 0x00, 0xEB, 0x00, 0xE0, 0x01, 0x7E, 0x01, 0x06, 0x04, 0x06, 0x04 + .byte 0x5F, 0x00, 0xB4, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0x0E, 0x57, 0xEF, 0x34, 0x2A, 0x00, 0x38, 0x00 + .byte 0x3D, 0x01, 0x57, 0x00, 0x31, 0x04, 0x31, 0x04, 0x60, 0x00, 0xD2, 0x84, 0x00, 0x03, 0x98, 0xEE + .byte 0xFF, 0x3F, 0xBF, 0x38, 0x46, 0x00, 0x68, 0x03, 0x85, 0x02, 0x39, 0x02, 0x09, 0x04, 0x09, 0x04 + .byte 0x61, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0xBF, 0x24, 0x45, 0x00, 0xF1, 0x00 + .byte 0xE6, 0x01, 0x84, 0x01, 0x09, 0x04, 0x09, 0x04, 0x62, 0x00, 0xB7, 0xA9, 0x00, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x3F, 0xBF, 0x20, 0xC4, 0x00, 0xF2, 0x00, 0xE7, 0x01, 0x85, 0x01, 0x09, 0x04, 0x09, 0x04 + .byte 0x63, 0x00, 0xB7, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0xDF, 0x1C, 0x45, 0x00, 0xF4, 0x00 + .byte 0xE9, 0x01, 0x87, 0x01, 0x09, 0x04, 0x09, 0x04, 0x64, 0x00, 0xB8, 0xA9, 0x00, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x3F, 0xCF, 0x1C, 0x46, 0x00, 0xF5, 0x00, 0xEA, 0x01, 0x88, 0x01, 0x09, 0x04, 0x09, 0x04 + .byte 0x65, 0x00, 0xB8, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0x0F, 0x00, 0x46, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x09, 0x04, 0x09, 0x04, 0x66, 0x00, 0x06, 0x79, 0x00, 0x44, 0x64, 0xE0 + .byte 0x85, 0x52, 0x0F, 0x12, 0x02, 0x00, 0x05, 0x00, 0x0A, 0x01, 0x2F, 0x00, 0x3A, 0x04, 0x3A, 0x04 + .byte 0x67, 0x00, 0xC5, 0xC4, 0x01, 0x03, 0xA8, 0xEE, 0x6A, 0x46, 0x4F, 0x0E, 0x03, 0x00, 0x07, 0x00 + .byte 0x0C, 0x01, 0x31, 0x00, 0x31, 0x04, 0x31, 0x04, 0x68, 0x00, 0xC6, 0xC4, 0x01, 0x03, 0x78, 0xEE + .byte 0x6C, 0x53, 0xCF, 0x12, 0x06, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04 + .byte 0x69, 0x00, 0xC8, 0xC4, 0x17, 0x03, 0x98, 0xEE, 0xFF, 0x4B, 0x5F, 0x32, 0x08, 0x00, 0x0C, 0x00 + .byte 0x11, 0x01, 0x34, 0x00, 0x87, 0x04, 0x87, 0x04, 0x6A, 0x00, 0x37, 0x87, 0x01, 0x02, 0x08, 0xA6 + .byte 0xFF, 0x4D, 0xFF, 0x1C, 0x0C, 0x00, 0x10, 0x00, 0x15, 0x01, 0x36, 0x00, 0x30, 0x04, 0x30, 0x04 + .byte 0x6B, 0x00, 0xCC, 0x94, 0x00, 0x03, 0x88, 0xEC, 0xFF, 0x4D, 0xCF, 0x10, 0x0F, 0x00, 0x13, 0x00 + .byte 0x18, 0x01, 0x39, 0x00, 0x35, 0x04, 0x35, 0x04, 0x6C, 0x00, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC + .byte 0xFF, 0x24, 0xAF, 0x28, 0x1C, 0x00, 0x1D, 0x00, 0x22, 0x01, 0x41, 0x00, 0xFE, 0x03, 0xFE, 0x03 + .byte 0x6D, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4, 0x09, 0x14, 0x0F, 0x00, 0x00, 0x00, 0x25, 0x00 + .byte 0x2A, 0x01, 0x48, 0x00, 0x31, 0x04, 0x31, 0x04, 0x6E, 0x00, 0xD1, 0x94, 0x00, 0x02, 0x48, 0xF6 + .byte 0xFF, 0x54, 0xDF, 0x38, 0x2D, 0x00, 0x3B, 0x00, 0x40, 0x01, 0x5A, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x6F, 0x00, 0xD3, 0xB4, 0x00, 0x03, 0x98, 0xEE, 0xFF, 0x2F, 0x9F, 0x20, 0x2F, 0x00, 0x3E, 0x00 + .byte 0x43, 0x01, 0x5D, 0x00, 0x36, 0x04, 0x36, 0x04, 0x70, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x64, 0xEC + .byte 0xFF, 0x1B, 0x0F, 0x15, 0x8A, 0x00, 0x58, 0x00, 0x5D, 0x01, 0x6F, 0x00, 0x02, 0x04, 0x02, 0x04 + .byte 0x71, 0x00, 0x86, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0x14, 0x4A, 0xBF, 0x38, 0x38, 0x00, 0x5C, 0x00 + .byte 0x61, 0x01, 0x73, 0x00, 0x31, 0x04, 0x31, 0x04, 0x72, 0x00, 0xD6, 0xB5, 0x00, 0x03, 0x38, 0xEE + .byte 0xFF, 0x3E, 0xAF, 0x2C, 0x39, 0x00, 0x5D, 0x00, 0x62, 0x01, 0x74, 0x00, 0xFE, 0x03, 0xFE, 0x03 + .byte 0x73, 0x00, 0xD7, 0x59, 0x00, 0x44, 0x64, 0xE4, 0x35, 0x4F, 0xEF, 0x14, 0x3E, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x74, 0x00, 0xD8, 0x84, 0x00, 0x03, 0x98, 0xEE + .byte 0x3C, 0x4C, 0x5F, 0x11, 0x84, 0x00, 0x63, 0x00, 0x68, 0x01, 0x7A, 0x00, 0x38, 0x04, 0x38, 0x04 + .byte 0x75, 0x00, 0xD9, 0x84, 0x00, 0x03, 0x98, 0xEE, 0x2B, 0x55, 0x7F, 0x2C, 0x8D, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x76, 0x00, 0xDA, 0xB4, 0x16, 0x03, 0x98, 0xEE + .byte 0x56, 0x50, 0x9F, 0x21, 0x09, 0x01, 0x69, 0x00, 0x6E, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 + .byte 0x77, 0x00, 0xDB, 0xA4, 0x00, 0x03, 0x98, 0xEE, 0x46, 0x57, 0x4F, 0x19, 0x62, 0x00, 0x6C, 0x00 + .byte 0x71, 0x01, 0x7F, 0x00, 0x38, 0x04, 0x38, 0x04, 0x78, 0x00, 0xDC, 0x84, 0x16, 0x03, 0x98, 0xEE + .byte 0x6E, 0x46, 0xCF, 0x1D, 0xA1, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3C, 0x04, 0x3C, 0x04 + .byte 0x79, 0x00, 0xDD, 0xB4, 0x01, 0x03, 0xB8, 0xEE, 0xFF, 0x56, 0x4F, 0x11, 0x91, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x39, 0x04, 0x39, 0x04, 0x7A, 0x00, 0xDE, 0xB4, 0x00, 0x03, 0x98, 0xEE + .byte 0x84, 0x46, 0x7F, 0x31, 0x97, 0x00, 0x71, 0x00, 0x76, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x7B, 0x00, 0xDF, 0xB4, 0x01, 0x03, 0x98, 0xEE, 0xFF, 0x19, 0x1F, 0x2D, 0x42, 0x00, 0xE4, 0x00 + .byte 0xD9, 0x01, 0x78, 0x01, 0x05, 0x04, 0x05, 0x04, 0x7C, 0x00, 0xB2, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0xCF, 0x14, 0x4A, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0x7D, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xCF, 0x14, 0x4B, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x7E, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0xCF, 0x14, 0x4C, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0x00, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xCF, 0x14, 0x4D, 0x00, 0x9C, 0x03 + .byte 0xB9, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x7F, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3F, 0xDF, 0x14, 0x46, 0x00, 0xFD, 0x00, 0xF2, 0x01, 0x90, 0x01, 0x0D, 0x04, 0x0D, 0x04 + .byte 0x80, 0x00, 0xBE, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x19, 0x0F, 0x15, 0x5F, 0x00, 0xA9, 0x03 + .byte 0xC6, 0x02, 0x71, 0x02, 0x02, 0x04, 0x02, 0x04, 0x81, 0x00, 0x86, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3F, 0x3F, 0x31, 0x45, 0x00, 0xE2, 0x00, 0xD7, 0x01, 0x76, 0x01, 0x04, 0x04, 0x04, 0x04 + .byte 0x82, 0x00, 0xB1, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x1C, 0xEF, 0x20, 0x57, 0x00, 0x5B, 0x03 + .byte 0x78, 0x02, 0x2E, 0x02, 0x29, 0x04, 0x29, 0x04, 0x83, 0x00, 0x80, 0x29, 0x00, 0x14, 0x64, 0xA4 + .byte 0xFF, 0x1D, 0xCF, 0x38, 0x58, 0x00, 0x64, 0x03, 0x81, 0x02, 0x36, 0x02, 0x29, 0x04, 0x29, 0x04 + .byte 0x84, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xA4, 0xFF, 0x1E, 0xBF, 0x28, 0x59, 0x00, 0x76, 0x03 + .byte 0x93, 0x02, 0x46, 0x02, 0x29, 0x04, 0x29, 0x04, 0x85, 0x00, 0x83, 0x59, 0x00, 0x24, 0x64, 0xA4 + .byte 0xFF, 0x20, 0x8F, 0x1C, 0x5B, 0x00, 0x91, 0x03, 0xAE, 0x02, 0x5E, 0x02, 0x29, 0x04, 0x29, 0x04 + .byte 0x86, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xA4, 0xFF, 0x21, 0x5F, 0x2C, 0x5C, 0x00, 0x6D, 0x03 + .byte 0x8A, 0x02, 0x3E, 0x02, 0x29, 0x04, 0x29, 0x04, 0x87, 0x00, 0x82, 0x49, 0x00, 0x04, 0x74, 0xA4 + .byte 0xFF, 0x22, 0x0F, 0x15, 0xE5, 0x00, 0xA4, 0x03, 0xC1, 0x02, 0x6E, 0x02, 0x29, 0x04, 0x29, 0x04 + .byte 0x88, 0x00, 0x86, 0xA9, 0x00, 0x04, 0x74, 0xA4, 0xFF, 0x23, 0x4F, 0x11, 0x5E, 0x00, 0xAF, 0x03 + .byte 0xCC, 0x02, 0x77, 0x02, 0x29, 0x04, 0x29, 0x04, 0x89, 0x00, 0x88, 0xA9, 0x00, 0x04, 0x64, 0xA4 + .byte 0xFF, 0x3F, 0x0F, 0x11, 0x45, 0x00, 0xFF, 0x00, 0xF4, 0x01, 0x92, 0x01, 0x0D, 0x04, 0x0D, 0x04 + .byte 0x8A, 0x00, 0xBF, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x3D, 0x1F, 0x25, 0x67, 0x00, 0xE5, 0x00 + .byte 0xDA, 0x01, 0x79, 0x01, 0x05, 0x04, 0x05, 0x04, 0x8B, 0x00, 0xB2, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x1F, 0x31, 0x4D, 0x00, 0x55, 0x03, 0x72, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0x8C, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4, 0x8B, 0x49, 0x8F, 0x0E, 0x4E, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04, 0x8D, 0x00, 0xC7, 0xA4, 0x17, 0x03, 0x98, 0xEE + .byte 0x4A, 0x46, 0x3F, 0x3E, 0x51, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 + .byte 0x8E, 0x00, 0xCB, 0xA4, 0x01, 0x03, 0x98, 0xEE, 0x89, 0x67, 0x0F, 0x16, 0x56, 0x00, 0x73, 0x00 + .byte 0x78, 0x01, 0x84, 0x00, 0x3B, 0x04, 0x3B, 0x04, 0x8F, 0x00, 0xE0, 0xA5, 0x01, 0x03, 0x38, 0xEE + .byte 0xFF, 0x19, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x14, 0x04, 0x14, 0x04 + .byte 0x00, 0x00, 0xC9, 0xC9, 0x01, 0x44, 0x64, 0xE0, 0xFF, 0x3F, 0xDF, 0x1C, 0x46, 0x00, 0x61, 0x03 + .byte 0x7E, 0x02, 0x33, 0x02, 0x09, 0x04, 0x09, 0x04, 0x90, 0x00, 0xB8, 0x29, 0x00, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x3F, 0xBF, 0x1C, 0x45, 0x00, 0x1C, 0x00, 0x21, 0x01, 0x40, 0x00, 0x6E, 0x04, 0x6E, 0x04 + .byte 0x91, 0x00, 0xE1, 0x99, 0x00, 0x44, 0x64, 0xE4, 0x47, 0x13, 0x0F, 0x00, 0x00, 0x00, 0x04, 0x01 + .byte 0xF9, 0x01, 0x97, 0x01, 0x85, 0x04, 0x85, 0x04, 0x92, 0x00, 0xC3, 0xA3, 0x00, 0x02, 0x48, 0xF6 + .byte 0x66, 0x13, 0x0F, 0x00, 0x00, 0x00, 0x05, 0x01, 0xFA, 0x01, 0x98, 0x01, 0x85, 0x04, 0x85, 0x04 + .byte 0x93, 0x00, 0xC4, 0xA3, 0x00, 0x02, 0x48, 0xF6, 0x0F, 0x57, 0xEF, 0x34, 0x2B, 0x00, 0x39, 0x00 + .byte 0x3E, 0x01, 0x58, 0x00, 0x31, 0x04, 0x31, 0x04, 0x94, 0x00, 0xD2, 0x84, 0x00, 0x03, 0xA8, 0xEE + .byte 0x10, 0x57, 0xEF, 0x34, 0x2C, 0x00, 0x3A, 0x00, 0x3F, 0x01, 0x59, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x95, 0x00, 0xD2, 0x84, 0x00, 0x03, 0xB8, 0xEE, 0x06, 0x4D, 0xFF, 0x1C, 0x0D, 0x00, 0x11, 0x00 + .byte 0x16, 0x01, 0x37, 0x00, 0x30, 0x04, 0x30, 0x04, 0x96, 0x00, 0xCC, 0x94, 0x00, 0x03, 0x88, 0xEC + .byte 0x07, 0x4D, 0xFF, 0x1C, 0x0E, 0x00, 0x12, 0x00, 0x17, 0x01, 0x38, 0x00, 0x30, 0x04, 0x30, 0x04 + .byte 0x97, 0x00, 0xCC, 0x94, 0x00, 0x03, 0x88, 0xEC, 0xFF, 0x1B, 0xEF, 0x20, 0x68, 0x00, 0x5A, 0x03 + .byte 0x77, 0x02, 0x2D, 0x02, 0x28, 0x04, 0x28, 0x04, 0x98, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0xFF, 0x20, 0x49, 0x00, 0x5C, 0x03, 0x79, 0x02, 0x2F, 0x02, 0x27, 0x04, 0x27, 0x04 + .byte 0x99, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3D, 0xFF, 0x20, 0x66, 0x00, 0x5E, 0x03 + .byte 0x7B, 0x02, 0x30, 0x02, 0xFC, 0x03, 0xFC, 0x03, 0x9A, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0xEF, 0x20, 0x5F, 0x00, 0x5F, 0x03, 0x7C, 0x02, 0x31, 0x02, 0xFC, 0x03, 0xFC, 0x03 + .byte 0x9B, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0xFB, 0x03, 0xFB, 0x03, 0x00, 0x00, 0x06, 0x30, 0x00, 0x44, 0x64, 0xE0 + .byte 0xFF, 0x19, 0xFF, 0x20, 0x5F, 0x00, 0x60, 0x03, 0x7D, 0x02, 0x32, 0x02, 0xFC, 0x03, 0xFC, 0x03 + .byte 0x9C, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3D, 0xDF, 0x38, 0x7D, 0x00, 0x69, 0x03 + .byte 0x86, 0x02, 0x3A, 0x02, 0xFD, 0x03, 0xFD, 0x03, 0x9D, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3D, 0xCF, 0x38, 0x7F, 0x00, 0x6A, 0x03, 0x87, 0x02, 0x3B, 0x02, 0xFD, 0x03, 0xFD, 0x03 + .byte 0x9E, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0xDF, 0x38, 0x68, 0x00, 0x63, 0x03 + .byte 0x80, 0x02, 0x35, 0x02, 0x28, 0x04, 0x28, 0x04, 0x9F, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0xCF, 0x38, 0x49, 0x00, 0x66, 0x03, 0x83, 0x02, 0x38, 0x02, 0x27, 0x04, 0x27, 0x04 + .byte 0xA0, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xFF, 0x20, 0x4D, 0x00, 0x5D, 0x03 + .byte 0x7A, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xA1, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0xCF, 0x38, 0x4D, 0x00, 0x67, 0x03, 0x84, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xA2, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xEF, 0x34, 0x49, 0x00, 0xE9, 0x00 + .byte 0xDE, 0x01, 0x7D, 0x01, 0x27, 0x04, 0x27, 0x04, 0xA3, 0x00, 0xB4, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0xEF, 0x34, 0x4D, 0x00, 0xEA, 0x00, 0xDF, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xA4, 0x00, 0xB4, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3F, 0xBF, 0x38, 0x45, 0x00, 0xEF, 0x00 + .byte 0xE4, 0x01, 0x82, 0x01, 0x08, 0x04, 0x08, 0x04, 0xA5, 0x00, 0xB6, 0xA9, 0x00, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x3F, 0xAF, 0x14, 0x46, 0x00, 0xF8, 0x00, 0xED, 0x01, 0x8B, 0x01, 0x0C, 0x04, 0x0C, 0x04 + .byte 0xA6, 0x00, 0xBA, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x27, 0x2F, 0x20, 0xE3, 0x00, 0x77, 0x00 + .byte 0x7C, 0x01, 0x87, 0x00, 0x86, 0x04, 0x86, 0x04, 0xA7, 0x00, 0xE3, 0x87, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x13, 0x0F, 0x00, 0x00, 0x00, 0x74, 0x00, 0x79, 0x01, 0x85, 0x00, 0x86, 0x04, 0x86, 0x04 + .byte 0xA8, 0x00, 0xE3, 0x83, 0x00, 0x02, 0x08, 0xF6, 0xFF, 0x19, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0xFF, 0x03, 0xFF, 0x03, 0x00, 0x00, 0x06, 0x79, 0x00, 0x44, 0x64, 0xE0 + .byte 0x45, 0x57, 0x1F, 0x21, 0x63, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 + .byte 0xA9, 0x00, 0xDC, 0x84, 0x16, 0x03, 0x98, 0xEE, 0x12, 0x54, 0xDF, 0x38, 0x2E, 0x00, 0x3C, 0x00 + .byte 0x41, 0x01, 0x5B, 0x00, 0x31, 0x04, 0x31, 0x04, 0xAA, 0x00, 0xD3, 0xB4, 0x00, 0x03, 0xA8, 0xEE + .byte 0x86, 0x46, 0xCF, 0x1D, 0xA2, 0x00, 0x6D, 0x00, 0x72, 0x01, 0x03, 0x00, 0x3C, 0x04, 0x3C, 0x04 + .byte 0xAB, 0x00, 0xDD, 0xB4, 0x01, 0x03, 0xA8, 0xEE, 0x87, 0x46, 0xCF, 0x1D, 0xA3, 0x00, 0x6E, 0x00 + .byte 0x73, 0x01, 0x80, 0x00, 0x3C, 0x04, 0x3C, 0x04, 0xAC, 0x00, 0xDD, 0xB4, 0x01, 0x03, 0xB8, 0xEE + .byte 0xFF, 0x1D, 0xCF, 0x38, 0x69, 0x00, 0x65, 0x03, 0x82, 0x02, 0x37, 0x02, 0x29, 0x04, 0x29, 0x04 + .byte 0xAD, 0x00, 0x81, 0x39, 0x00, 0x54, 0x84, 0xA4, 0x13, 0x54, 0xDF, 0x38, 0x6A, 0x00, 0x3D, 0x00 + .byte 0x42, 0x01, 0x5C, 0x00, 0x31, 0x04, 0x31, 0x04, 0xAE, 0x00, 0xD3, 0xB4, 0x00, 0x03, 0xB8, 0xEE + .byte 0xFF, 0x1B, 0xBF, 0x2C, 0x6B, 0x00, 0x7A, 0x03, 0x97, 0x02, 0x48, 0x02, 0xFE, 0x03, 0xFE, 0x03 + .byte 0xAF, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0xAF, 0x2C, 0x6D, 0x00, 0x8A, 0x03 + .byte 0xA7, 0x02, 0x57, 0x02, 0x2D, 0x04, 0x2D, 0x04, 0xB0, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1B, 0xBF, 0x28, 0x6C, 0x00, 0x80, 0x03, 0x9D, 0x02, 0x4D, 0x02, 0xFE, 0x03, 0xFE, 0x03 + .byte 0xB1, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xBF, 0x2C, 0x49, 0x00, 0x77, 0x03 + .byte 0x94, 0x02, 0x47, 0x02, 0x27, 0x04, 0x27, 0x04, 0xB2, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x24, 0xAF, 0x28, 0x1D, 0x00, 0x1E, 0x00, 0x23, 0x01, 0x42, 0x00, 0xFE, 0x03, 0xFE, 0x03 + .byte 0xB3, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x24, 0xAF, 0x28, 0x1E, 0x00, 0x1F, 0x00 + .byte 0x24, 0x01, 0x43, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0xB4, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x24, 0xAF, 0x28, 0x1F, 0x00, 0x20, 0x00, 0x25, 0x01, 0x44, 0x00, 0xFE, 0x03, 0xFE, 0x03 + .byte 0xB5, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x24, 0xAF, 0x28, 0x20, 0x00, 0x21, 0x00 + .byte 0x26, 0x01, 0x45, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0xB6, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x24, 0xAF, 0x28, 0x6E, 0x00, 0x22, 0x00, 0x27, 0x01, 0x46, 0x00, 0xFE, 0x03, 0xFE, 0x03 + .byte 0xB7, 0x00, 0xD0, 0x99, 0x00, 0x04, 0x64, 0xE4, 0xFF, 0x3E, 0xBF, 0x2C, 0x71, 0x00, 0x83, 0x03 + .byte 0xA0, 0x02, 0x50, 0x02, 0x28, 0x04, 0x28, 0x04, 0xB8, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x72, 0x00, 0x84, 0x03, 0xA1, 0x02, 0x51, 0x02, 0x28, 0x04, 0x28, 0x04 + .byte 0xB9, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3E, 0xBF, 0x2C, 0x73, 0x00, 0x85, 0x03 + .byte 0xA2, 0x02, 0x52, 0x02, 0x28, 0x04, 0x28, 0x04, 0xBA, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x74, 0x00, 0x86, 0x03, 0xA3, 0x02, 0x53, 0x02, 0x28, 0x04, 0x28, 0x04 + .byte 0xBB, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3E, 0xBF, 0x2C, 0x75, 0x00, 0x87, 0x03 + .byte 0xA4, 0x02, 0x54, 0x02, 0x28, 0x04, 0x28, 0x04, 0xBC, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x76, 0x00, 0x88, 0x03, 0xA5, 0x02, 0x55, 0x02, 0x28, 0x04, 0x28, 0x04 + .byte 0xBD, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x30, 0xAF, 0x28, 0x6F, 0x00, 0x7D, 0x03 + .byte 0x9A, 0x02, 0x4B, 0x02, 0xFE, 0x03, 0xFE, 0x03, 0xBE, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x30, 0xAF, 0x28, 0x70, 0x00, 0x7E, 0x03, 0x9B, 0x02, 0x4C, 0x02, 0xFE, 0x03, 0xFE, 0x03 + .byte 0xBF, 0x00, 0x83, 0x59, 0x00, 0x44, 0x60, 0xE4, 0xFF, 0x3E, 0xAF, 0x2C, 0x3A, 0x00, 0x5E, 0x00 + .byte 0x63, 0x01, 0x75, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0xC0, 0x00, 0xD7, 0x59, 0x00, 0x04, 0x64, 0xE4 + .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x3B, 0x00, 0x5F, 0x00, 0x64, 0x01, 0x76, 0x00, 0xFE, 0x03, 0xFE, 0x03 + .byte 0xC1, 0x00, 0x83, 0x59, 0x00, 0x44, 0x84, 0xE4, 0xFF, 0x3E, 0xBF, 0x2C, 0x3C, 0x00, 0x60, 0x00 + .byte 0x65, 0x01, 0x77, 0x00, 0x31, 0x04, 0x31, 0x04, 0xC2, 0x00, 0x83, 0x59, 0x00, 0x44, 0x84, 0xE4 + .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x3D, 0x00, 0x61, 0x00, 0x66, 0x01, 0x78, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0xC3, 0x00, 0x83, 0x59, 0x00, 0x44, 0x84, 0xE4, 0xFF, 0x19, 0xAF, 0x2C, 0x61, 0x00, 0x7C, 0x03 + .byte 0x99, 0x02, 0x4A, 0x02, 0xFE, 0x03, 0xFE, 0x03, 0xC4, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0xBF, 0x2C, 0x60, 0x00, 0x7B, 0x03, 0x98, 0x02, 0x49, 0x02, 0xFE, 0x03, 0xFE, 0x03 + .byte 0xC5, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0xBF, 0x28, 0x60, 0x00, 0x81, 0x03 + .byte 0x9E, 0x02, 0x4E, 0x02, 0xFE, 0x03, 0xFE, 0x03, 0xC6, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2A, 0xBF, 0x28, 0x8C, 0x00, 0x82, 0x03, 0x9F, 0x02, 0x4F, 0x02, 0xFE, 0x03, 0xFE, 0x03 + .byte 0xC7, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2D, 0x9F, 0x28, 0xED, 0x00, 0x8B, 0x03 + .byte 0xA8, 0x02, 0x58, 0x02, 0x82, 0x04, 0x82, 0x04, 0xC8, 0x00, 0x76, 0x59, 0x00, 0x44, 0x60, 0xE4 + .byte 0xFF, 0x3F, 0x0F, 0x00, 0x77, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03 + .byte 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3F, 0x0F, 0x00, 0x78, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3F, 0x0F, 0x00, 0x79, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03 + .byte 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3F, 0x0F, 0x00, 0x7A, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3F, 0x0F, 0x00, 0x7B, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03 + .byte 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3F, 0x0F, 0x00, 0x7C, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2A, 0x8F, 0x14, 0x80, 0x00, 0xFA, 0x00, 0xEF, 0x01, 0x8D, 0x01, 0x0C, 0x04, 0x0C, 0x04 + .byte 0xC9, 0x00, 0xBB, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x8F, 0x14, 0x81, 0x00, 0xFB, 0x00 + .byte 0xF0, 0x01, 0x8E, 0x01, 0x0C, 0x04, 0x0C, 0x04, 0xCA, 0x00, 0xBB, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3D, 0xCF, 0x10, 0x82, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFF, 0x03, 0xFF, 0x03 + .byte 0xCB, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4, 0x1D, 0x4E, 0xBF, 0x10, 0x1A, 0x00, 0x18, 0x00 + .byte 0x1D, 0x01, 0x3D, 0x00, 0x34, 0x04, 0x34, 0x04, 0xCC, 0x00, 0xCE, 0xA4, 0x00, 0x03, 0x88, 0xEC + .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x32, 0x04, 0x32, 0x04 + .byte 0x00, 0x00, 0xD1, 0x94, 0x00, 0x02, 0x08, 0xE0, 0xFF, 0x1A, 0xBF, 0x2C, 0x4D, 0x00, 0x78, 0x03 + .byte 0x95, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xCD, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2F, 0x9F, 0x20, 0x30, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 + .byte 0xCE, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4, 0xFF, 0x4A, 0x9F, 0x20, 0x31, 0x00, 0x3F, 0x00 + .byte 0x44, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0xCF, 0x00, 0xD4, 0x99, 0x00, 0x33, 0x24, 0xF4 + .byte 0xFF, 0x2F, 0x9F, 0x20, 0x32, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 + .byte 0xD0, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4, 0xFF, 0x2F, 0x9F, 0x20, 0x33, 0x00, 0x40, 0x00 + .byte 0x45, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0xD1, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4 + .byte 0xFF, 0x2F, 0x9F, 0x20, 0x34, 0x00, 0x41, 0x00, 0x46, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 + .byte 0xD2, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4, 0xFF, 0x59, 0x9F, 0x20, 0x83, 0x00, 0x42, 0x00 + .byte 0x47, 0x01, 0x5E, 0x00, 0x36, 0x04, 0x36, 0x04, 0xD3, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4 + .byte 0xFF, 0x1A, 0x8F, 0x20, 0x49, 0x00, 0x92, 0x03, 0xAF, 0x02, 0x5F, 0x02, 0x27, 0x04, 0x27, 0x04 + .byte 0xD4, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0x8F, 0x20, 0x68, 0x00, 0x90, 0x03 + .byte 0xAD, 0x02, 0x5D, 0x02, 0x28, 0x04, 0x28, 0x04, 0xD5, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x8F, 0x1C, 0x61, 0x00, 0x94, 0x03, 0xB1, 0x02, 0x60, 0x02, 0x00, 0x04, 0x00, 0x04 + .byte 0xD6, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x9F, 0x1C, 0x61, 0x00, 0x95, 0x03 + .byte 0xB2, 0x02, 0x61, 0x02, 0x00, 0x04, 0x00, 0x04, 0xD7, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x8F, 0x1C, 0x61, 0x00, 0x96, 0x03, 0xB3, 0x02, 0x62, 0x02, 0x00, 0x04, 0x00, 0x04 + .byte 0xD8, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x8F, 0x20, 0x88, 0x00, 0x97, 0x03 + .byte 0xB4, 0x02, 0x63, 0x02, 0x00, 0x04, 0x00, 0x04, 0xD9, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x5F, 0x2C, 0x5F, 0x00, 0x70, 0x03, 0x8D, 0x02, 0x40, 0x02, 0x01, 0x04, 0x01, 0x04 + .byte 0xDA, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0x5F, 0x2C, 0x8B, 0x00, 0x71, 0x03 + .byte 0x8E, 0x02, 0x41, 0x02, 0x01, 0x04, 0x01, 0x04, 0xDB, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x5F, 0x2C, 0x61, 0x00, 0x72, 0x03, 0x8F, 0x02, 0x42, 0x02, 0x01, 0x04, 0x01, 0x04 + .byte 0xDC, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x5F, 0x2C, 0x5F, 0x00, 0x73, 0x03 + .byte 0x90, 0x02, 0x43, 0x02, 0x01, 0x04, 0x01, 0x04, 0xDD, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x5F, 0x2C, 0x49, 0x00, 0x6E, 0x03, 0x8B, 0x02, 0x3F, 0x02, 0x27, 0x04, 0x27, 0x04 + .byte 0xDE, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4, 0x3D, 0x4C, 0x5F, 0x11, 0x85, 0x00, 0x64, 0x00 + .byte 0x69, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04, 0xDF, 0x00, 0xD9, 0x84, 0x00, 0x03, 0xA8, 0xEE + .byte 0x3E, 0x4C, 0x5F, 0x11, 0x86, 0x00, 0x65, 0x00, 0x6A, 0x01, 0x7B, 0x00, 0x38, 0x04, 0x38, 0x04 + .byte 0xE0, 0x00, 0xD9, 0x84, 0x00, 0x03, 0xB8, 0xEE, 0x3F, 0x4C, 0x5F, 0x11, 0x87, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04, 0xE1, 0x00, 0xD9, 0x84, 0x00, 0x03, 0xB8, 0xEE + .byte 0xFF, 0x3F, 0x8F, 0x20, 0x89, 0x00, 0x98, 0x00, 0x92, 0x01, 0xFF, 0x00, 0x00, 0x04, 0x00, 0x04 + .byte 0xE2, 0x00, 0x84, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x5F, 0x2C, 0x4D, 0x00, 0x6F, 0x03 + .byte 0x8C, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xE3, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4 + .byte 0x2C, 0x55, 0x7F, 0x2C, 0x8E, 0x00, 0x66, 0x00, 0x6B, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0xE4, 0x00, 0xDA, 0xB4, 0x16, 0x03, 0xA8, 0xEE, 0x2E, 0x55, 0x7F, 0x2C, 0x8F, 0x00, 0x67, 0x00 + .byte 0x6C, 0x01, 0x7C, 0x00, 0x31, 0x04, 0x31, 0x04, 0xE5, 0x00, 0xDA, 0xB4, 0x00, 0x03, 0xB8, 0xAE + .byte 0xFF, 0x62, 0x7F, 0x2C, 0x90, 0x00, 0x68, 0x00, 0x6D, 0x01, 0x7D, 0x00, 0xE9, 0x03, 0xE9, 0x03 + .byte 0xE6, 0x00, 0xDA, 0xB4, 0x00, 0xC3, 0xB0, 0x0C, 0xFF, 0x3F, 0x0F, 0x11, 0x45, 0x00, 0x00, 0x01 + .byte 0xF5, 0x01, 0x93, 0x01, 0x0D, 0x04, 0x0D, 0x04, 0xE7, 0x00, 0xBF, 0xA9, 0x00, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x1A, 0x0F, 0x15, 0x49, 0x00, 0xA7, 0x03, 0xC4, 0x02, 0x70, 0x02, 0x27, 0x04, 0x27, 0x04 + .byte 0xE8, 0x00, 0x86, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x40, 0x0F, 0x15, 0x35, 0x00, 0x59, 0x00 + .byte 0x5E, 0x01, 0x70, 0x00, 0x37, 0x04, 0x37, 0x04, 0xE9, 0x00, 0xD5, 0xA9, 0x00, 0x43, 0x64, 0xA4 + .byte 0xFF, 0x40, 0x0F, 0x15, 0x36, 0x00, 0x5A, 0x00, 0x5F, 0x01, 0x71, 0x00, 0x37, 0x04, 0x37, 0x04 + .byte 0xEA, 0x00, 0xD5, 0xA9, 0x00, 0x43, 0x64, 0xA4, 0xFF, 0x40, 0x0F, 0x15, 0x37, 0x00, 0x5B, 0x00 + .byte 0x60, 0x01, 0x72, 0x00, 0x37, 0x04, 0x37, 0x04, 0xEB, 0x00, 0xD5, 0xA9, 0x00, 0x43, 0x64, 0xA4 + .byte 0x36, 0x4F, 0xEF, 0x14, 0x3F, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0xEC, 0x00, 0xD8, 0x84, 0x00, 0x03, 0xA8, 0xEE, 0x37, 0x4F, 0xEF, 0x14, 0x40, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0xED, 0x00, 0xD8, 0x84, 0x00, 0x03, 0xA8, 0xEE + .byte 0x38, 0x4F, 0xEF, 0x14, 0x41, 0x00, 0x62, 0x00, 0x67, 0x01, 0x79, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0xEE, 0x00, 0xD8, 0x84, 0x00, 0x03, 0xA8, 0xEE, 0x42, 0x56, 0x4F, 0x11, 0x92, 0x00, 0x6F, 0x00 + .byte 0x74, 0x01, 0x81, 0x00, 0x39, 0x04, 0x39, 0x04, 0xEF, 0x00, 0xDE, 0xB4, 0x00, 0x03, 0xA8, 0xEE + .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 + .byte 0x00, 0x00, 0x51, 0xA2, 0x00, 0x01, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4 + .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x28, 0x04, 0x28, 0x04, 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4 + .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 + .byte 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4 + .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 + .byte 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4 + .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x6F, 0xA2, 0x00, 0x44, 0x00, 0xE4 + .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 + .byte 0x00, 0x00, 0x6F, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x38, 0x7F, 0x1C, 0xE8, 0x00, 0x45, 0x00 + .byte 0x4A, 0x01, 0x60, 0x00, 0x2F, 0x04, 0x2F, 0x04, 0xF0, 0x00, 0x50, 0xA9, 0x00, 0x04, 0x61, 0xE4 + .byte 0xFF, 0x2C, 0x7F, 0x1C, 0x06, 0x01, 0x46, 0x00, 0x4B, 0x01, 0x03, 0x00, 0x2F, 0x04, 0x2F, 0x04 + .byte 0xF1, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x04, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x00 + .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 + .byte 0x00, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x00, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x00 + .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 + .byte 0x00, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x00, 0xFF, 0x26, 0x7F, 0x1C, 0x07, 0x01, 0x4B, 0x00 + .byte 0x50, 0x01, 0x63, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0xF2, 0x00, 0x50, 0xA9, 0x00, 0x04, 0x60, 0xE4 + .byte 0xFF, 0x5C, 0x7F, 0x1C, 0xE6, 0x00, 0x4C, 0x00, 0x51, 0x01, 0x64, 0x00, 0x2E, 0x04, 0x2E, 0x04 + .byte 0xF3, 0x00, 0x70, 0x91, 0x00, 0x81, 0x60, 0xF6, 0xFF, 0x2E, 0x7F, 0x1C, 0xE7, 0x00, 0x50, 0x00 + .byte 0x55, 0x01, 0x67, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0xF4, 0x00, 0x70, 0x99, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x38, 0x0F, 0x00, 0xE8, 0x00, 0x53, 0x00, 0x58, 0x01, 0x03, 0x00, 0x2F, 0x04, 0x2F, 0x04 + .byte 0xF5, 0x00, 0x50, 0xA9, 0x00, 0x04, 0x60, 0xE0, 0xFF, 0x39, 0x7F, 0x1C, 0xE9, 0x00, 0x54, 0x00 + .byte 0x59, 0x01, 0x6B, 0x00, 0x77, 0x04, 0x77, 0x04, 0xF6, 0x00, 0x71, 0xA9, 0x00, 0x04, 0x61, 0x64 + .byte 0xFF, 0x3A, 0x7F, 0x1C, 0xEA, 0x00, 0x55, 0x00, 0x5A, 0x01, 0x6C, 0x00, 0x78, 0x04, 0x78, 0x04 + .byte 0xF7, 0x00, 0x74, 0xA9, 0x00, 0x04, 0x61, 0x64, 0xFF, 0x3B, 0x7F, 0x1C, 0xEB, 0x00, 0x56, 0x00 + .byte 0x5B, 0x01, 0x6D, 0x00, 0x7A, 0x04, 0x7A, 0x04, 0xF8, 0x00, 0x72, 0xA9, 0x00, 0x04, 0x61, 0x64 + .byte 0xFF, 0x3C, 0x7F, 0x1C, 0xEC, 0x00, 0x57, 0x00, 0x5C, 0x01, 0x6E, 0x00, 0x79, 0x04, 0x79, 0x04 + .byte 0xF9, 0x00, 0x73, 0xA9, 0x1A, 0x04, 0x61, 0x64, 0x52, 0x46, 0x5F, 0x28, 0x98, 0x00, 0x79, 0x00 + .byte 0x7E, 0x01, 0x88, 0x00, 0x09, 0x04, 0x09, 0x04, 0xFA, 0x00, 0xEA, 0xA4, 0x00, 0x03, 0x98, 0xE6 + .byte 0xFF, 0x5A, 0xAF, 0x18, 0x99, 0x00, 0x7A, 0x00, 0x7F, 0x01, 0x89, 0x00, 0x09, 0x04, 0x09, 0x04 + .byte 0xFB, 0x00, 0xE1, 0xD1, 0x00, 0x01, 0x28, 0xF6, 0xFF, 0x25, 0xAF, 0x18, 0x9A, 0x00, 0x7B, 0x00 + .byte 0x80, 0x01, 0x8A, 0x00, 0x6E, 0x04, 0x6E, 0x04, 0xFC, 0x00, 0xE1, 0xD9, 0x00, 0x44, 0x74, 0xE4 + .byte 0xFF, 0x25, 0xAF, 0x18, 0x9B, 0x00, 0x7C, 0x00, 0x81, 0x01, 0x8B, 0x00, 0x6E, 0x04, 0x6E, 0x04 + .byte 0xFD, 0x00, 0xE1, 0xD9, 0x00, 0x74, 0x64, 0xE4, 0xFF, 0x25, 0xAF, 0x18, 0x9C, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x6E, 0x04, 0x6E, 0x04, 0xFE, 0x00, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x25, 0xAF, 0x18, 0x9D, 0x00, 0x7D, 0x00, 0x82, 0x01, 0x8C, 0x00, 0x6E, 0x04, 0x6E, 0x04 + .byte 0xFF, 0x00, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x25, 0xAF, 0x18, 0x9E, 0x00, 0x7E, 0x00 + .byte 0x83, 0x01, 0x8D, 0x00, 0x6E, 0x04, 0x6E, 0x04, 0x00, 0x01, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x25, 0xAF, 0x18, 0x9F, 0x00, 0x7F, 0x00, 0x84, 0x01, 0x8E, 0x00, 0x6E, 0x04, 0x6E, 0x04 + .byte 0x01, 0x01, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x25, 0xAF, 0x18, 0xA0, 0x00, 0x80, 0x00 + .byte 0x85, 0x01, 0x8F, 0x00, 0x75, 0x04, 0x75, 0x04, 0x02, 0x01, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2A, 0x4F, 0x11, 0x95, 0x00, 0x70, 0x00, 0x75, 0x01, 0x82, 0x00, 0x39, 0x04, 0x39, 0x04 + .byte 0x03, 0x01, 0xDE, 0xB9, 0x00, 0x44, 0x84, 0xE4, 0xFF, 0x19, 0x4F, 0x15, 0x5F, 0x00, 0xB2, 0x03 + .byte 0xCF, 0x02, 0x79, 0x02, 0x03, 0x04, 0x03, 0x04, 0x04, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x5F, 0x15, 0x5F, 0x00, 0xB3, 0x03, 0xD0, 0x02, 0x7A, 0x02, 0x03, 0x04, 0x03, 0x04 + .byte 0x05, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x4F, 0x15, 0x5F, 0x00, 0xB4, 0x03 + .byte 0xD1, 0x02, 0x7B, 0x02, 0x03, 0x04, 0x03, 0x04, 0x06, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1B, 0x4F, 0x15, 0x68, 0x00, 0xAE, 0x03, 0xCB, 0x02, 0x76, 0x02, 0x28, 0x04, 0x28, 0x04 + .byte 0x07, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x5F, 0x15, 0x49, 0x00, 0xB0, 0x03 + .byte 0xCD, 0x02, 0x78, 0x02, 0x27, 0x04, 0x27, 0x04, 0x08, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0xFF, 0x04, 0x42, 0x00, 0xAB, 0x03, 0xC8, 0x02, 0x73, 0x02, 0x0D, 0x04, 0x0D, 0x04 + .byte 0x09, 0x01, 0x87, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x0F, 0x09, 0x5F, 0x00, 0xAC, 0x03 + .byte 0xC9, 0x02, 0x74, 0x02, 0x0D, 0x04, 0x0D, 0x04, 0x0A, 0x01, 0x87, 0x99, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0xCF, 0x29, 0x42, 0x00, 0xDB, 0x00, 0xD0, 0x01, 0x6E, 0x01, 0x26, 0x04, 0x26, 0x04 + .byte 0x0B, 0x01, 0xAE, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0xCF, 0x2D, 0x93, 0x00, 0xDC, 0x00 + .byte 0xD1, 0x01, 0x6F, 0x01, 0x26, 0x04, 0x26, 0x04, 0x0C, 0x01, 0xAE, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x46, 0x7F, 0x31, 0xA4, 0x00, 0x72, 0x00, 0x77, 0x01, 0x83, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x0D, 0x01, 0xDF, 0xB4, 0x01, 0x03, 0xA8, 0xAE, 0xFF, 0x3F, 0xCF, 0x21, 0x96, 0x00, 0xD5, 0x00 + .byte 0xCA, 0x01, 0x69, 0x01, 0x26, 0x04, 0x26, 0x04, 0x0E, 0x01, 0xAE, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x1A, 0xCF, 0x19, 0x94, 0x00, 0x33, 0x03, 0x50, 0x02, 0x0A, 0x02, 0x3D, 0x04, 0x3D, 0x04 + .byte 0x0F, 0x01, 0x0F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x29, 0xCF, 0x19, 0xA5, 0x00, 0x34, 0x03 + .byte 0x51, 0x02, 0x0B, 0x02, 0x3D, 0x04, 0x3D, 0x04, 0x10, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0xC4, 0x84 + .byte 0xFF, 0x29, 0xCF, 0x19, 0xA6, 0x00, 0x35, 0x03, 0x52, 0x02, 0x0C, 0x02, 0x3D, 0x04, 0x3D, 0x04 + .byte 0x11, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0xD4, 0x84, 0xFF, 0x29, 0xCF, 0x19, 0xA7, 0x00, 0x36, 0x03 + .byte 0x53, 0x02, 0x0D, 0x02, 0x3D, 0x04, 0x3D, 0x04, 0x12, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0xE4, 0x84 + .byte 0xFF, 0x29, 0xCF, 0x19, 0xA8, 0x00, 0x37, 0x03, 0x54, 0x02, 0x0E, 0x02, 0x3D, 0x04, 0x3D, 0x04 + .byte 0x13, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0xF4, 0x84, 0xFF, 0x41, 0xCF, 0x19, 0xA9, 0x00, 0x38, 0x03 + .byte 0x55, 0x02, 0x0F, 0x02, 0x3D, 0x04, 0x3D, 0x04, 0x14, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0x04, 0x85 + .byte 0xFF, 0x41, 0xCF, 0x19, 0xAA, 0x00, 0x39, 0x03, 0x56, 0x02, 0x10, 0x02, 0x3D, 0x04, 0x3D, 0x04 + .byte 0x15, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0x60, 0x84, 0xFF, 0x2A, 0x9F, 0x39, 0xAB, 0x00, 0x9C, 0x00 + .byte 0x96, 0x01, 0x03, 0x01, 0x48, 0x04, 0x48, 0x04, 0x16, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2A, 0x9F, 0x39, 0xAC, 0x00, 0x9D, 0x00, 0x97, 0x01, 0x04, 0x01, 0x48, 0x04, 0x48, 0x04 + .byte 0x17, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x9F, 0x39, 0xAD, 0x00, 0x9E, 0x00 + .byte 0x98, 0x01, 0x05, 0x01, 0x48, 0x04, 0x48, 0x04, 0x18, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2A, 0x9F, 0x39, 0xAE, 0x00, 0x9F, 0x00, 0x99, 0x01, 0x03, 0x00, 0x48, 0x04, 0x48, 0x04 + .byte 0x19, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x9F, 0x39, 0xAF, 0x00, 0xA0, 0x00 + .byte 0x9A, 0x01, 0x03, 0x00, 0x48, 0x04, 0x48, 0x04, 0x1A, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x48, 0xDF, 0x20, 0x22, 0x00, 0x27, 0x00, 0x2C, 0x01, 0x4A, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x1B, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x20, 0x23, 0x00, 0x28, 0x00 + .byte 0x2D, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x1C, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 + .byte 0xFF, 0x48, 0xDF, 0x24, 0x22, 0x00, 0x29, 0x00, 0x2E, 0x01, 0x4B, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x1D, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0x0A, 0x69, 0xDF, 0x20, 0x25, 0x00, 0x2A, 0x00 + .byte 0x2F, 0x01, 0x4C, 0x00, 0x32, 0x04, 0x32, 0x04, 0x1E, 0x01, 0xD1, 0x94, 0x00, 0x03, 0x88, 0xEC + .byte 0xFF, 0x48, 0xDF, 0x24, 0x22, 0x00, 0x2B, 0x00, 0x30, 0x01, 0x4D, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x1F, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x24, 0x27, 0x00, 0x2C, 0x00 + .byte 0x31, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x20, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 + .byte 0xFF, 0x48, 0xDF, 0x24, 0x22, 0x00, 0x2D, 0x00, 0x32, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x21, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x24, 0x29, 0x00, 0x2E, 0x00 + .byte 0x33, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x22, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 + .byte 0xFF, 0x48, 0xDF, 0x24, 0xB4, 0x00, 0x2F, 0x00, 0x34, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x23, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x3D, 0xDF, 0x20, 0x11, 0x01, 0x26, 0x00 + .byte 0x2B, 0x01, 0x49, 0x00, 0x31, 0x04, 0x31, 0x04, 0x24, 0x01, 0xD1, 0x99, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x7F, 0x31, 0x42, 0x00, 0xDE, 0x00, 0xD3, 0x01, 0x72, 0x01, 0x26, 0x04, 0x26, 0x04 + .byte 0x25, 0x01, 0xAF, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x69, 0xDF, 0x20, 0xB5, 0x00, 0x30, 0x00 + .byte 0x35, 0x01, 0x4F, 0x00, 0x31, 0x04, 0x31, 0x04, 0x26, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 + .byte 0xFF, 0x48, 0xDF, 0x20, 0xB6, 0x00, 0x31, 0x00, 0x36, 0x01, 0x50, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x27, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x24, 0xB6, 0x00, 0x32, 0x00 + .byte 0x37, 0x01, 0x51, 0x00, 0x31, 0x04, 0x31, 0x04, 0x28, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 + .byte 0xFF, 0x48, 0xDF, 0x24, 0xB6, 0x00, 0x33, 0x00, 0x38, 0x01, 0x52, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x29, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x24, 0xB6, 0x00, 0x34, 0x00 + .byte 0x39, 0x01, 0x53, 0x00, 0x31, 0x04, 0x31, 0x04, 0x2A, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 + .byte 0xFF, 0x2A, 0x9F, 0x39, 0xB0, 0x00, 0xA1, 0x00, 0x9B, 0x01, 0x06, 0x01, 0x48, 0x04, 0x48, 0x04 + .byte 0x2B, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x9F, 0x39, 0xB1, 0x00, 0xA2, 0x00 + .byte 0x9C, 0x01, 0x07, 0x01, 0x48, 0x04, 0x48, 0x04, 0x2C, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x84, 0xE4 + .byte 0xFF, 0x5E, 0x8F, 0x20, 0xB2, 0x00, 0x99, 0x00, 0x93, 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x04 + .byte 0x2D, 0x01, 0x84, 0xA1, 0x00, 0x01, 0x28, 0xF4, 0xFF, 0x1B, 0xBF, 0x30, 0xB3, 0x00, 0xEE, 0x00 + .byte 0xE3, 0x01, 0x81, 0x01, 0x08, 0x04, 0x08, 0x04, 0x2E, 0x01, 0xB6, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0x1E, 0x4D, 0xCF, 0x10, 0x10, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04 + .byte 0x2F, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x1F, 0x4D, 0xCF, 0x10, 0x11, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x30, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC + .byte 0x20, 0x4D, 0xCF, 0x10, 0x12, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04 + .byte 0x31, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x21, 0x4D, 0xCF, 0x10, 0x13, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x32, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC + .byte 0x22, 0x4D, 0xCF, 0x10, 0x14, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04 + .byte 0x33, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x23, 0x4D, 0xCF, 0x10, 0x15, 0x00, 0x14, 0x00 + .byte 0x19, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x34, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC + .byte 0x24, 0x4D, 0xCF, 0x10, 0x16, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04 + .byte 0x35, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x25, 0x4D, 0xCF, 0x10, 0x17, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x36, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC + .byte 0xFF, 0x5B, 0xCF, 0x10, 0x18, 0x00, 0x15, 0x00, 0x1A, 0x01, 0x3A, 0x00, 0xE9, 0x03, 0xE9, 0x03 + .byte 0x37, 0x01, 0xCD, 0x94, 0x00, 0xD3, 0x20, 0x34, 0x54, 0x4D, 0xCF, 0x10, 0xB7, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x38, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xAC + .byte 0x53, 0x46, 0x4F, 0x30, 0xB8, 0x00, 0x81, 0x00, 0x86, 0x01, 0x90, 0x00, 0x85, 0x04, 0x85, 0x04 + .byte 0x39, 0x01, 0xE4, 0xB4, 0x00, 0x03, 0x98, 0xEE, 0xFF, 0x4B, 0x0F, 0x00, 0xC5, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 + .byte 0xFF, 0x4B, 0x0F, 0x00, 0xC6, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 + .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xC7, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 + .byte 0xFF, 0x4B, 0x0F, 0x00, 0xC8, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 + .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xC9, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 + .byte 0xFF, 0x4B, 0x0F, 0x00, 0xCA, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 + .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xCB, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 + .byte 0xFF, 0x4B, 0x0F, 0x00, 0xCC, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 + .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xCD, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 + .byte 0xFF, 0x4B, 0x0F, 0x00, 0xCE, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 + .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xCF, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 + .byte 0xFF, 0x4B, 0x0F, 0x00, 0xD0, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 + .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xD1, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 + .byte 0xFF, 0x4B, 0x0F, 0x00, 0xD2, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 + .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0x5B, 0x4B, 0x0F, 0x00, 0xD4, 0x00, 0x78, 0x00 + .byte 0x7D, 0x01, 0x03, 0x00, 0x87, 0x04, 0x87, 0x04, 0x3A, 0x01, 0xCA, 0x89, 0x00, 0x02, 0x08, 0xA6 + .byte 0xFF, 0x1A, 0x8F, 0x26, 0x49, 0x00, 0x0B, 0x03, 0x28, 0x02, 0xE6, 0x01, 0x27, 0x04, 0x27, 0x04 + .byte 0x3B, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x8F, 0x26, 0x4D, 0x00, 0x0C, 0x03 + .byte 0x29, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x3C, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1B, 0x8F, 0x26, 0x68, 0x00, 0x09, 0x03, 0x26, 0x02, 0xE4, 0x01, 0x28, 0x04, 0x28, 0x04 + .byte 0x3D, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x8F, 0x26, 0x5F, 0x00, 0x0D, 0x03 + .byte 0x2A, 0x02, 0xE7, 0x01, 0x0E, 0x04, 0x0E, 0x04, 0x3E, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x28, 0x8F, 0x26, 0xB9, 0x00, 0x0E, 0x03, 0x2B, 0x02, 0xE8, 0x01, 0x0E, 0x04, 0x0E, 0x04 + .byte 0x3F, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x8F, 0x26, 0x5F, 0x00, 0x0F, 0x03 + .byte 0x2C, 0x02, 0xE9, 0x01, 0x0E, 0x04, 0x0E, 0x04, 0x40, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x8F, 0x26, 0x5F, 0x00, 0x10, 0x03, 0x2D, 0x02, 0xEA, 0x01, 0x0E, 0x04, 0x0E, 0x04 + .byte 0x41, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x31, 0x8F, 0x26, 0xFF, 0x00, 0x0A, 0x03 + .byte 0x27, 0x02, 0xE5, 0x01, 0x29, 0x04, 0x29, 0x04, 0x42, 0x01, 0x8F, 0xC9, 0x01, 0x94, 0x64, 0xA4 + .byte 0xFF, 0x3F, 0x7F, 0x20, 0x45, 0x00, 0xC3, 0x03, 0xDC, 0x02, 0xE9, 0x02, 0x0A, 0x04, 0x0A, 0x04 + .byte 0x43, 0x01, 0xBC, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x1A, 0x8F, 0x20, 0x4D, 0x00, 0x93, 0x03 + .byte 0xB0, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x44, 0x01, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x0F, 0x15, 0x4D, 0x00, 0xA8, 0x03, 0xC5, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0x45, 0x01, 0x86, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x5F, 0x15, 0x4D, 0x00, 0xB1, 0x03 + .byte 0xCE, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x46, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x27, 0x5F, 0x1E, 0xD7, 0x00, 0x15, 0x03, 0x32, 0x02, 0xEE, 0x01, 0x28, 0x04, 0x28, 0x04 + .byte 0x47, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x5F, 0x1E, 0xD8, 0x00, 0x16, 0x03 + .byte 0x33, 0x02, 0xEF, 0x01, 0x28, 0x04, 0x28, 0x04, 0x48, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x27, 0x5F, 0x1E, 0xD9, 0x00, 0x17, 0x03, 0x34, 0x02, 0xF0, 0x01, 0x28, 0x04, 0x28, 0x04 + .byte 0x49, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x5F, 0x1E, 0xDA, 0x00, 0x18, 0x03 + .byte 0x35, 0x02, 0xF1, 0x01, 0x28, 0x04, 0x28, 0x04, 0x4A, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x27, 0x5F, 0x1E, 0xDB, 0x00, 0x19, 0x03, 0x36, 0x02, 0xF2, 0x01, 0x28, 0x04, 0x28, 0x04 + .byte 0x4B, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x5F, 0x1E, 0xDC, 0x00, 0x1A, 0x03 + .byte 0x37, 0x02, 0xF3, 0x01, 0x28, 0x04, 0x28, 0x04, 0x4C, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x27, 0x6F, 0x1E, 0xDD, 0x00, 0x1C, 0x03, 0x39, 0x02, 0xF5, 0x01, 0x12, 0x04, 0x12, 0x04 + .byte 0x4D, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x6F, 0x1E, 0xDE, 0x00, 0x1D, 0x03 + .byte 0x3A, 0x02, 0xF6, 0x01, 0x12, 0x04, 0x12, 0x04, 0x4E, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x27, 0x6F, 0x1E, 0xDF, 0x00, 0x1E, 0x03, 0x3B, 0x02, 0xF7, 0x01, 0x12, 0x04, 0x12, 0x04 + .byte 0x4F, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x5F, 0x6F, 0x1E, 0xE0, 0x00, 0x1F, 0x03 + .byte 0x3C, 0x02, 0xF8, 0x01, 0x12, 0x04, 0x12, 0x04, 0x50, 0x01, 0x90, 0xC9, 0x01, 0x31, 0x64, 0xF4 + .byte 0xFF, 0x28, 0x6F, 0x1E, 0xE1, 0x00, 0x20, 0x03, 0x3D, 0x02, 0xF9, 0x01, 0x12, 0x04, 0x12, 0x04 + .byte 0x51, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x28, 0x6F, 0x1E, 0xD5, 0x00, 0x23, 0x03 + .byte 0x40, 0x02, 0xFC, 0x01, 0x2D, 0x04, 0x2D, 0x04, 0x52, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x28, 0x6F, 0x1E, 0xD6, 0x00, 0x24, 0x03, 0x41, 0x02, 0xFD, 0x01, 0x2D, 0x04, 0x2D, 0x04 + .byte 0x53, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x28, 0x6F, 0x22, 0xE2, 0x00, 0x25, 0x03 + .byte 0x42, 0x02, 0xFE, 0x01, 0x12, 0x04, 0x12, 0x04, 0x54, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x5F, 0x31, 0x48, 0x00, 0x51, 0x03, 0x6E, 0x02, 0x25, 0x02, 0xFA, 0x03, 0xFA, 0x03 + .byte 0x55, 0x01, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x5F, 0x28, 0x5F, 0x00, 0x74, 0x03 + .byte 0x91, 0x02, 0x44, 0x02, 0x01, 0x04, 0x01, 0x04, 0x56, 0x01, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x27, 0x8F, 0x2A, 0xBA, 0x00, 0x9A, 0x00, 0x94, 0x01, 0x01, 0x01, 0x0E, 0x04, 0x0E, 0x04 + .byte 0x57, 0x01, 0x8F, 0xA9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x5E, 0x8F, 0x2A, 0xD3, 0x00, 0x9B, 0x00 + .byte 0x95, 0x01, 0x02, 0x01, 0x0E, 0x04, 0x0E, 0x04, 0x58, 0x01, 0x8F, 0xA1, 0x01, 0x01, 0x28, 0xF4 + .byte 0xFF, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xC2, 0x00, 0xB7, 0x01, 0x57, 0x01, 0x1E, 0x04, 0x1E, 0x04 + .byte 0x59, 0x01, 0x9E, 0xC3, 0x01, 0x02, 0x48, 0xF6, 0xFF, 0x3F, 0x8F, 0x22, 0x45, 0x00, 0xB9, 0x00 + .byte 0xAE, 0x01, 0x4F, 0x01, 0x1C, 0x04, 0x1C, 0x04, 0x5A, 0x01, 0x9A, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x3F, 0xAF, 0x1E, 0x46, 0x00, 0xBD, 0x00, 0xB2, 0x01, 0x53, 0x01, 0x1E, 0x04, 0x1E, 0x04 + .byte 0x5B, 0x01, 0x9C, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0x8F, 0x16, 0x45, 0x00, 0xB6, 0x00 + .byte 0xAB, 0x01, 0x4C, 0x01, 0x1D, 0x04, 0x1D, 0x04, 0x5C, 0x01, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x3F, 0x7F, 0x36, 0x46, 0x00, 0xCC, 0x00, 0xC1, 0x01, 0x61, 0x01, 0x24, 0x04, 0x24, 0x04 + .byte 0x5D, 0x01, 0xA3, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x1A, 0x6F, 0x1E, 0x49, 0x00, 0x13, 0x03 + .byte 0x30, 0x02, 0xED, 0x01, 0x27, 0x04, 0x27, 0x04, 0x5E, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x6F, 0x1E, 0x4D, 0x00, 0x14, 0x03, 0x31, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0x5F, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x34, 0x6F, 0x1E, 0x02, 0x01, 0x12, 0x03 + .byte 0x2F, 0x02, 0xEC, 0x01, 0x29, 0x04, 0x29, 0x04, 0x60, 0x01, 0x90, 0xC9, 0x01, 0x04, 0x64, 0xA4 + .byte 0xFF, 0x22, 0x0F, 0x15, 0xE4, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x29, 0x04, 0x29, 0x04 + .byte 0x61, 0x01, 0x86, 0xA9, 0x00, 0x04, 0x74, 0xA4, 0xFF, 0x22, 0x0F, 0x15, 0x5D, 0x00, 0xA6, 0x03 + .byte 0xC3, 0x02, 0x6F, 0x02, 0x29, 0x04, 0x29, 0x04, 0x62, 0x01, 0x86, 0xA9, 0x00, 0x04, 0x74, 0xA4 + .byte 0xFF, 0x28, 0x9F, 0x1A, 0xC0, 0x00, 0x40, 0x03, 0x5D, 0x02, 0x15, 0x02, 0x0F, 0x04, 0x0F, 0x04 + .byte 0x63, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x9F, 0x1E, 0x61, 0x00, 0x41, 0x03 + .byte 0x5E, 0x02, 0x16, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x64, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x30, 0x8F, 0x1A, 0xBB, 0x00, 0x42, 0x03, 0x5F, 0x02, 0x17, 0x02, 0x0F, 0x04, 0x0F, 0x04 + .byte 0x65, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x30, 0x8F, 0x1A, 0xBC, 0x00, 0x43, 0x03 + .byte 0x60, 0x02, 0x18, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x66, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x60, 0xE4 + .byte 0xFF, 0x27, 0x8F, 0x1E, 0xBD, 0x00, 0x45, 0x03, 0x62, 0x02, 0x19, 0x02, 0x0F, 0x04, 0x0F, 0x04 + .byte 0x67, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x8F, 0x1E, 0xF1, 0x00, 0x46, 0x03 + .byte 0x63, 0x02, 0x1A, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x68, 0x01, 0x79, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x27, 0x8F, 0x1A, 0xBE, 0x00, 0x48, 0x03, 0x65, 0x02, 0x1C, 0x02, 0x0F, 0x04, 0x0F, 0x04 + .byte 0x69, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x8F, 0x1A, 0xBF, 0x00, 0x49, 0x03 + .byte 0x66, 0x02, 0x1D, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x6A, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x28, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0F, 0x04, 0x0F, 0x04 + .byte 0x00, 0x00, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x8F, 0x1E, 0x49, 0x00, 0x3E, 0x03 + .byte 0x5B, 0x02, 0x14, 0x02, 0x27, 0x04, 0x27, 0x04, 0x6B, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x8F, 0x1E, 0x4D, 0x00, 0x3F, 0x03, 0x5C, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0x6C, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0x9F, 0x1A, 0x68, 0x00, 0x3C, 0x03 + .byte 0x59, 0x02, 0x12, 0x02, 0x28, 0x04, 0x28, 0x04, 0x6D, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x32, 0x9F, 0x1A, 0x00, 0x01, 0x3D, 0x03, 0x5A, 0x02, 0x13, 0x02, 0x29, 0x04, 0x29, 0x04 + .byte 0x6E, 0x01, 0x94, 0xC9, 0x01, 0x04, 0x64, 0xA4, 0xFF, 0x5D, 0x7F, 0x1C, 0xF0, 0x00, 0x51, 0x00 + .byte 0x56, 0x01, 0x68, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x6F, 0x01, 0xE5, 0x91, 0x00, 0x81, 0x28, 0xF2 + .byte 0xFF, 0x2D, 0x9F, 0x28, 0xEE, 0x00, 0x8C, 0x03, 0xA9, 0x02, 0x59, 0x02, 0x82, 0x04, 0x82, 0x04 + .byte 0x70, 0x01, 0x76, 0x59, 0x00, 0x44, 0x60, 0xE4, 0xFF, 0x2D, 0x9F, 0x28, 0xEF, 0x00, 0x8D, 0x03 + .byte 0xAA, 0x02, 0x5A, 0x02, 0x82, 0x04, 0x82, 0x04, 0x71, 0x01, 0x76, 0x59, 0x00, 0x44, 0x60, 0xE4 + .byte 0x88, 0x11, 0x0F, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x9F, 0x01, 0x41, 0x01, 0x21, 0x04, 0x21, 0x04 + .byte 0x72, 0x01, 0x96, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0xFF, 0x19, 0x4F, 0x22, 0x42, 0x00, 0xCE, 0x00 + .byte 0xC3, 0x01, 0x63, 0x01, 0x1F, 0x04, 0x1F, 0x04, 0x73, 0x01, 0xA4, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x10, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x22, 0x04, 0x22, 0x04 + .byte 0x00, 0x00, 0xA8, 0xC6, 0x01, 0x02, 0x68, 0xF6, 0xFF, 0x19, 0x0F, 0x12, 0x42, 0x00, 0xAB, 0x00 + .byte 0xA0, 0x01, 0x42, 0x01, 0x21, 0x04, 0x21, 0x04, 0x74, 0x01, 0x96, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x3F, 0x0F, 0x1A, 0x45, 0x00, 0xAC, 0x00, 0xA1, 0x01, 0x43, 0x01, 0x21, 0x04, 0x21, 0x04 + .byte 0x75, 0x01, 0x96, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0x0F, 0x1A, 0x45, 0x00, 0xAD, 0x00 + .byte 0xA2, 0x01, 0x44, 0x01, 0x21, 0x04, 0x21, 0x04, 0x76, 0x01, 0x96, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x3F, 0x0F, 0x12, 0x45, 0x00, 0xAE, 0x00, 0xA3, 0x01, 0x45, 0x01, 0x21, 0x04, 0x21, 0x04 + .byte 0x77, 0x01, 0x96, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0x4F, 0x22, 0x46, 0x00, 0xCF, 0x00 + .byte 0xC4, 0x01, 0x64, 0x01, 0x1F, 0x04, 0x1F, 0x04, 0x78, 0x01, 0xA4, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0x7D, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0xD0, 0x00, 0xC5, 0x01, 0x03, 0x00, 0x1F, 0x04, 0x1F, 0x04 + .byte 0x79, 0x01, 0xA4, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0xFF, 0x3F, 0x4F, 0x36, 0x46, 0x00, 0xD3, 0x00 + .byte 0xC8, 0x01, 0x67, 0x01, 0x20, 0x04, 0x20, 0x04, 0x7A, 0x01, 0xA6, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x3F, 0x5F, 0x3A, 0x45, 0x00, 0xBF, 0x03, 0xD8, 0x02, 0xE5, 0x02, 0x20, 0x04, 0x20, 0x04 + .byte 0x7B, 0x01, 0xA7, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0xBF, 0x26, 0x46, 0x00, 0xC6, 0x00 + .byte 0xBB, 0x01, 0x5B, 0x01, 0x23, 0x04, 0x23, 0x04, 0x7C, 0x01, 0x9F, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x1B, 0x8F, 0x12, 0x68, 0x00, 0xF7, 0x02, 0x14, 0x02, 0xD4, 0x01, 0x28, 0x04, 0x28, 0x04 + .byte 0x7D, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x33, 0x9F, 0x12, 0x01, 0x01, 0xF8, 0x02 + .byte 0x15, 0x02, 0xD5, 0x01, 0x29, 0x04, 0x29, 0x04, 0x7E, 0x01, 0x8D, 0xC9, 0x01, 0x04, 0x64, 0xA4 + .byte 0xFF, 0x1A, 0x8F, 0x12, 0x49, 0x00, 0xF9, 0x02, 0x16, 0x02, 0xD6, 0x01, 0x27, 0x04, 0x27, 0x04 + .byte 0x7F, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x8F, 0x0E, 0x60, 0x00, 0xFB, 0x02 + .byte 0x18, 0x02, 0xD7, 0x01, 0x10, 0x04, 0x10, 0x04, 0x80, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x9F, 0x0E, 0x61, 0x00, 0xFC, 0x02, 0x19, 0x02, 0xD8, 0x01, 0x10, 0x04, 0x10, 0x04 + .byte 0x81, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x8F, 0x12, 0x60, 0x00, 0xFD, 0x02 + .byte 0x1A, 0x02, 0xD9, 0x01, 0x10, 0x04, 0x10, 0x04, 0x82, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1B, 0x8F, 0x12, 0x12, 0x01, 0xFE, 0x02, 0x1B, 0x02, 0xDA, 0x01, 0x10, 0x04, 0x10, 0x04 + .byte 0x83, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0xCF, 0x1E, 0x68, 0x00, 0x00, 0x03 + .byte 0x1D, 0x02, 0xDC, 0x01, 0x28, 0x04, 0x28, 0x04, 0x84, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0xCF, 0x1E, 0x49, 0x00, 0x01, 0x03, 0x1E, 0x02, 0xDD, 0x01, 0x27, 0x04, 0x27, 0x04 + .byte 0x85, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x28, 0xCF, 0x1E, 0xC1, 0x00, 0x03, 0x03 + .byte 0x20, 0x02, 0xDE, 0x01, 0x11, 0x04, 0x11, 0x04, 0x86, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0xCF, 0x1E, 0x60, 0x00, 0x04, 0x03, 0x21, 0x02, 0xDF, 0x01, 0x11, 0x04, 0x11, 0x04 + .byte 0x87, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0xCF, 0x1E, 0x8C, 0x00, 0x05, 0x03 + .byte 0x22, 0x02, 0xE0, 0x01, 0x11, 0x04, 0x11, 0x04, 0x88, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x28, 0xCF, 0x1E, 0xC2, 0x00, 0x06, 0x03, 0x23, 0x02, 0xE1, 0x01, 0x11, 0x04, 0x11, 0x04 + .byte 0x89, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0xCF, 0x1E, 0xC3, 0x00, 0x07, 0x03 + .byte 0x24, 0x02, 0xE2, 0x01, 0x11, 0x04, 0x11, 0x04, 0x8A, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2B, 0xBF, 0x06, 0xFE, 0x00, 0xD9, 0x00, 0xCE, 0x01, 0x6C, 0x01, 0x25, 0x04, 0x25, 0x04 + .byte 0x8B, 0x01, 0xAD, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0xBF, 0x2C, 0x06, 0x01, 0x89, 0x03 + .byte 0xA6, 0x02, 0x56, 0x02, 0x28, 0x04, 0x28, 0x04, 0x8C, 0x01, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2C, 0x5F, 0x1E, 0x06, 0x01, 0x1B, 0x03, 0x38, 0x02, 0xF4, 0x01, 0x28, 0x04, 0x28, 0x04 + .byte 0x8D, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0x6F, 0x1E, 0x06, 0x01, 0x21, 0x03 + .byte 0x3E, 0x02, 0xFA, 0x01, 0x12, 0x04, 0x12, 0x04, 0x8E, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2C, 0x6F, 0x1E, 0x06, 0x01, 0x22, 0x03, 0x3F, 0x02, 0xFB, 0x01, 0x12, 0x04, 0x12, 0x04 + .byte 0x8F, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0x8F, 0x1E, 0x06, 0x01, 0x47, 0x03 + .byte 0x64, 0x02, 0x1B, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x90, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2C, 0x9F, 0x20, 0x06, 0x01, 0x43, 0x00, 0x48, 0x01, 0x5F, 0x00, 0x36, 0x04, 0x36, 0x04 + .byte 0x91, 0x01, 0xD4, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0xAF, 0x28, 0x06, 0x01, 0x23, 0x00 + .byte 0x28, 0x01, 0x47, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0x92, 0x01, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4 + .byte 0x6B, 0x46, 0x4F, 0x0E, 0x04, 0x00, 0x08, 0x00, 0x0D, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0x93, 0x01, 0xC6, 0xC4, 0x01, 0x03, 0x98, 0xEE, 0x48, 0x61, 0x4F, 0x0E, 0x05, 0x00, 0x09, 0x00 + .byte 0x0E, 0x01, 0x32, 0x00, 0x31, 0x04, 0x31, 0x04, 0x94, 0x01, 0xC6, 0xC4, 0x01, 0x02, 0x08, 0xF6 + .byte 0x8C, 0x49, 0x8F, 0x0E, 0x4F, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04 + .byte 0x95, 0x01, 0xC7, 0xA4, 0x17, 0x03, 0x98, 0xEE, 0x8D, 0x49, 0x8F, 0x0E, 0x50, 0x00, 0x0B, 0x00 + .byte 0x10, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04, 0x96, 0x01, 0xC7, 0xA4, 0x17, 0x03, 0xA8, 0xEE + .byte 0x6D, 0x53, 0xCF, 0x12, 0x07, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04 + .byte 0x97, 0x01, 0xC8, 0xC4, 0x17, 0x03, 0xA8, 0xEE, 0x4B, 0x68, 0x3F, 0x3E, 0x52, 0x00, 0x0D, 0x00 + .byte 0x12, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04, 0x98, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xA8, 0xEE + .byte 0x4C, 0x68, 0x3F, 0x3E, 0x53, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 + .byte 0x99, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xB8, 0xEE, 0x4D, 0x68, 0x3F, 0x3E, 0x54, 0x00, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04, 0x9A, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xB8, 0xEE + .byte 0x4E, 0x68, 0x3F, 0x3E, 0x55, 0x00, 0x0E, 0x00, 0x13, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 + .byte 0x9B, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xB8, 0xEE, 0xFF, 0x51, 0x3F, 0x3E, 0x08, 0x01, 0x0F, 0x00 + .byte 0x14, 0x01, 0x35, 0x00, 0x29, 0x04, 0x29, 0x04, 0x9C, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xB8, 0xAC + .byte 0xFF, 0x46, 0x0F, 0x00, 0x08, 0x01, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 + .byte 0x00, 0x00, 0xCB, 0xA4, 0x01, 0x03, 0x98, 0xE8, 0x59, 0x60, 0x9F, 0x21, 0x0A, 0x01, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0x9D, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0x58, 0xF4 + .byte 0x57, 0x66, 0x9F, 0x21, 0x0B, 0x01, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 + .byte 0x9E, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0x48, 0xF6, 0x58, 0x50, 0x9F, 0x21, 0x0C, 0x01, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0x9F, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0xA8, 0xEE + .byte 0x4F, 0x50, 0x9F, 0x21, 0x0D, 0x01, 0x6A, 0x00, 0x6F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 + .byte 0xA0, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0xA8, 0xEE, 0x50, 0x50, 0x9F, 0x21, 0x0E, 0x01, 0x8B, 0x00 + .byte 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0xA1, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0x98, 0xEE + .byte 0x51, 0x50, 0x9F, 0x21, 0x0F, 0x01, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 + .byte 0xA2, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0x98, 0xEE, 0xFF, 0x60, 0x9F, 0x21, 0x10, 0x01, 0x6B, 0x00 + .byte 0x70, 0x01, 0x7E, 0x00, 0xE9, 0x03, 0xE9, 0x03, 0xA3, 0x01, 0xDB, 0xA4, 0x0A, 0x03, 0x58, 0xF4 + .byte 0xFF, 0x1A, 0xCF, 0x12, 0x49, 0x00, 0xC0, 0x00, 0xB5, 0x01, 0x56, 0x01, 0x27, 0x04, 0x27, 0x04 + .byte 0xA4, 0x01, 0x9E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0xCF, 0x16, 0xFB, 0x00, 0xC3, 0x00 + .byte 0xB8, 0x01, 0x58, 0x01, 0x14, 0x04, 0x14, 0x04, 0xA5, 0x01, 0xC9, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2C, 0x0F, 0x00, 0xFC, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x1D, 0x04, 0x1D, 0x04 + .byte 0x00, 0x00, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE0, 0xFF, 0x2C, 0x8F, 0x16, 0xFD, 0x00, 0xB4, 0x00 + .byte 0xA9, 0x01, 0x4A, 0x01, 0x3A, 0x04, 0x3A, 0x04, 0xA6, 0x01, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x2C, 0x8F, 0x22, 0xFD, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04 + .byte 0xA7, 0x01, 0x9A, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x2C, 0x0F, 0x0A, 0xF2, 0x00, 0xF3, 0x02 + .byte 0x10, 0x02, 0xD0, 0x01, 0x14, 0x04, 0x14, 0x04, 0xA8, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0x0F, 0x0E, 0x42, 0x00, 0xF4, 0x02, 0x11, 0x02, 0xD1, 0x01, 0x14, 0x04, 0x14, 0x04 + .byte 0xA9, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x36, 0x0F, 0x0A, 0x04, 0x01, 0xF0, 0x02 + .byte 0x0D, 0x02, 0xCE, 0x01, 0x29, 0x04, 0x29, 0x04, 0xAA, 0x01, 0x8C, 0xC9, 0x01, 0x04, 0x64, 0xA4 + .byte 0xFF, 0x1B, 0x1F, 0x0E, 0x68, 0x00, 0xEF, 0x02, 0x0C, 0x02, 0xCD, 0x01, 0x28, 0x04, 0x28, 0x04 + .byte 0xAB, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x0F, 0x0E, 0x49, 0x00, 0xF1, 0x02 + .byte 0x0E, 0x02, 0xCF, 0x01, 0x27, 0x04, 0x27, 0x04, 0xAC, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x0F, 0x0E, 0x4D, 0x00, 0xF2, 0x02, 0x0F, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xAD, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x1F, 0x0A, 0x42, 0x00, 0xF5, 0x02 + .byte 0x12, 0x02, 0xD2, 0x01, 0x14, 0x04, 0x14, 0x04, 0xAE, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1B, 0x5F, 0x36, 0x68, 0x00, 0x28, 0x03, 0x45, 0x02, 0x01, 0x02, 0x28, 0x04, 0x28, 0x04 + .byte 0xAF, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0x5F, 0x32, 0xF3, 0x00, 0x2C, 0x03 + .byte 0x49, 0x02, 0x04, 0x02, 0x13, 0x04, 0x13, 0x04, 0xB0, 0x01, 0x37, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x35, 0x5F, 0x36, 0x03, 0x01, 0x29, 0x03, 0x46, 0x02, 0x02, 0x02, 0x29, 0x04, 0x29, 0x04 + .byte 0xB1, 0x01, 0x91, 0xC9, 0x01, 0xE4, 0x64, 0xA4, 0xFF, 0x19, 0x5F, 0x36, 0x60, 0x00, 0x2D, 0x03 + .byte 0x4A, 0x02, 0x05, 0x02, 0x13, 0x04, 0x13, 0x04, 0xB2, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x5F, 0x36, 0x49, 0x00, 0x2A, 0x03, 0x47, 0x02, 0x03, 0x02, 0x27, 0x04, 0x27, 0x04 + .byte 0xB3, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x6F, 0x36, 0x61, 0x00, 0x2E, 0x03 + .byte 0x4B, 0x02, 0x06, 0x02, 0x13, 0x04, 0x13, 0x04, 0xB4, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0xCF, 0x12, 0x4D, 0x00, 0xC1, 0x00, 0xB6, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xB5, 0x01, 0x9E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x5F, 0x36, 0x4D, 0x00, 0x2B, 0x03 + .byte 0x48, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xB6, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0x30, 0x62, 0x7F, 0x2C, 0x13, 0x01, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0xB7, 0x01, 0xDA, 0xB4, 0x00, 0xA3, 0xB8, 0x8E, 0x18, 0x47, 0xBF, 0x1C, 0x1B, 0x00, 0x1A, 0x00 + .byte 0x1F, 0x01, 0x3F, 0x00, 0x44, 0x04, 0x44, 0x04, 0xB8, 0x01, 0xCF, 0x97, 0x00, 0x01, 0x08, 0xA4 + .byte 0xFF, 0x47, 0xBF, 0x1C, 0x1B, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x33, 0x04, 0x33, 0x04 + .byte 0x00, 0x00, 0xCF, 0x97, 0x00, 0x01, 0x08, 0xA6, 0xFF, 0x2C, 0xCF, 0x16, 0x14, 0x01, 0xC4, 0x00 + .byte 0xB9, 0x01, 0x59, 0x01, 0x14, 0x04, 0x14, 0x04, 0xB9, 0x01, 0xC9, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0x0B, 0x69, 0xDF, 0x20, 0x25, 0x00, 0x35, 0x00, 0x3A, 0x01, 0x54, 0x00, 0x32, 0x04, 0x32, 0x04 + .byte 0xBA, 0x01, 0xD1, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x0D, 0x69, 0xDF, 0x20, 0xB5, 0x00, 0x36, 0x00 + .byte 0x3B, 0x01, 0x55, 0x00, 0x32, 0x04, 0x32, 0x04, 0xBB, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 + .byte 0x0C, 0x69, 0xDF, 0x20, 0x25, 0x00, 0x37, 0x00, 0x3C, 0x01, 0x56, 0x00, 0x32, 0x04, 0x32, 0x04 + .byte 0xBC, 0x01, 0xD1, 0x94, 0x00, 0x03, 0x88, 0xEC, 0xFF, 0x3F, 0x7F, 0x1E, 0x46, 0x00, 0xBB, 0x00 + .byte 0xB0, 0x01, 0x51, 0x01, 0x1F, 0x04, 0x1F, 0x04, 0xBD, 0x01, 0x9B, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x1A, 0xCF, 0x1E, 0x4D, 0x00, 0x02, 0x03, 0x1F, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xBE, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x8F, 0x12, 0x4D, 0x00, 0xFA, 0x02 + .byte 0x17, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xBF, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x37, 0x0F, 0x1E, 0x05, 0x01, 0xE7, 0x02, 0x04, 0x02, 0xC6, 0x01, 0x29, 0x04, 0x29, 0x04 + .byte 0xC0, 0x01, 0x8B, 0xC9, 0x01, 0x04, 0x64, 0xA4, 0xFF, 0x19, 0x0F, 0x1E, 0x60, 0x00, 0xEA, 0x02 + .byte 0x07, 0x02, 0xC8, 0x01, 0x15, 0x04, 0x15, 0x04, 0xC1, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2B, 0x0F, 0x1E, 0xF4, 0x00, 0xEB, 0x02, 0x08, 0x02, 0xC9, 0x01, 0x15, 0x04, 0x15, 0x04 + .byte 0xC2, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2B, 0x0F, 0x1E, 0xF5, 0x00, 0xEC, 0x02 + .byte 0x09, 0x02, 0xCA, 0x01, 0x15, 0x04, 0x15, 0x04, 0xC3, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x60, 0xE4 + .byte 0xFF, 0x1B, 0x0F, 0x1E, 0x68, 0x00, 0xE6, 0x02, 0x03, 0x02, 0xC5, 0x01, 0x28, 0x04, 0x28, 0x04 + .byte 0xC4, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x0F, 0x22, 0x49, 0x00, 0xE8, 0x02 + .byte 0x05, 0x02, 0xC7, 0x01, 0x27, 0x04, 0x27, 0x04, 0xC5, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x0F, 0x22, 0x4D, 0x00, 0xE9, 0x02, 0x06, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xC6, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2B, 0x0F, 0x2E, 0xF6, 0x00, 0xE0, 0x02 + .byte 0xFD, 0x01, 0xBF, 0x01, 0x16, 0x04, 0x16, 0x04, 0xC7, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2B, 0x0F, 0x2E, 0xF8, 0x00, 0xE2, 0x02, 0xFF, 0x01, 0xC1, 0x01, 0x16, 0x04, 0x16, 0x04 + .byte 0xC8, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2B, 0x0F, 0x2E, 0xFA, 0x00, 0xE4, 0x02 + .byte 0x01, 0x02, 0xC3, 0x01, 0x16, 0x04, 0x16, 0x04, 0xC9, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2B, 0x0F, 0x2E, 0xF7, 0x00, 0xE1, 0x02, 0xFE, 0x01, 0xC0, 0x01, 0x16, 0x04, 0x16, 0x04 + .byte 0xCA, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2B, 0x0F, 0x2E, 0xF9, 0x00, 0xE3, 0x02 + .byte 0x00, 0x02, 0xC2, 0x01, 0x16, 0x04, 0x16, 0x04, 0xCB, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x0F, 0x3E, 0x49, 0x00, 0x30, 0x03, 0x4D, 0x02, 0x08, 0x02, 0x27, 0x04, 0x27, 0x04 + .byte 0xCC, 0x01, 0x92, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x0F, 0x3E, 0x4D, 0x00, 0x31, 0x03 + .byte 0x4E, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xCD, 0x01, 0x92, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x19, 0xAF, 0x21, 0x42, 0x00, 0xE0, 0x00, 0xD5, 0x01, 0x74, 0x01, 0x3D, 0x04, 0x3D, 0x04 + .byte 0xCE, 0x01, 0xB0, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x4F, 0x0E, 0x49, 0x00, 0xB0, 0x00 + .byte 0xA5, 0x01, 0x47, 0x01, 0x27, 0x04, 0x27, 0x04, 0xCF, 0x01, 0x97, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x4F, 0x0E, 0x4D, 0x00, 0xB1, 0x00, 0xA6, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xD0, 0x01, 0x97, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0x49, 0x61, 0x4F, 0x0E, 0x19, 0x01, 0x0A, 0x00 + .byte 0x0F, 0x01, 0x33, 0x00, 0x49, 0x04, 0x49, 0x04, 0xD1, 0x01, 0xC6, 0xC4, 0x01, 0x02, 0x08, 0xF6 + .byte 0xFF, 0x1A, 0x9F, 0x21, 0x49, 0x00, 0xB6, 0x03, 0xD3, 0x02, 0x7D, 0x02, 0x27, 0x04, 0x27, 0x04 + .byte 0xD2, 0x01, 0x89, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x9F, 0x21, 0x4D, 0x00, 0xB7, 0x03 + .byte 0xD4, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xD3, 0x01, 0x89, 0x99, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2D, 0x0F, 0x00, 0x18, 0x01, 0x93, 0x00, 0x90, 0x01, 0xD4, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xD4, 0x01, 0x00, 0xA9, 0x00, 0x44, 0x64, 0x04, 0xFF, 0x19, 0x8F, 0x16, 0x42, 0x00, 0xB7, 0x00 + .byte 0xAC, 0x01, 0x4D, 0x01, 0x1D, 0x04, 0x1D, 0x04, 0xD5, 0x01, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1B, 0x4F, 0x0E, 0x8B, 0x00, 0x06, 0x00, 0x0B, 0x01, 0x30, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0xD6, 0x01, 0xC6, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x30, 0xAF, 0x28, 0x1A, 0x01, 0x7F, 0x03 + .byte 0x9C, 0x02, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0xD7, 0x01, 0x83, 0x59, 0x00, 0x44, 0x60, 0xE4 + .byte 0xFF, 0x30, 0x8F, 0x1A, 0x1B, 0x01, 0x44, 0x03, 0x61, 0x02, 0x03, 0x00, 0x0F, 0x04, 0x0F, 0x04 + .byte 0xD8, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x60, 0xE4, 0xFF, 0x64, 0x4F, 0x05, 0x15, 0x01, 0x82, 0x00 + .byte 0x87, 0x01, 0x91, 0x00, 0x90, 0x04, 0x90, 0x04, 0xD9, 0x01, 0xE7, 0xA3, 0x0A, 0x02, 0x08, 0xA4 + .byte 0xFF, 0x65, 0x4F, 0x05, 0x16, 0x01, 0x83, 0x00, 0x88, 0x01, 0x92, 0x00, 0x90, 0x04, 0x90, 0x04 + .byte 0xDA, 0x01, 0xE7, 0xA4, 0x00, 0x03, 0x98, 0x24, 0xFF, 0x2A, 0x4F, 0x05, 0x1F, 0x01, 0x84, 0x00 + .byte 0x89, 0x01, 0x93, 0x00, 0x90, 0x04, 0x90, 0x04, 0xDB, 0x01, 0xE7, 0xA9, 0x00, 0x44, 0x64, 0xA4 + .byte 0xFF, 0x63, 0x2F, 0x30, 0x17, 0x01, 0x85, 0x00, 0x8A, 0x01, 0x94, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0xDC, 0x01, 0xE8, 0xA4, 0x00, 0x03, 0x94, 0xAC, 0xFF, 0x63, 0x2F, 0x30, 0x1C, 0x01, 0x86, 0x00 + .byte 0x8B, 0x01, 0x95, 0x00, 0x31, 0x04, 0x31, 0x04, 0xDD, 0x01, 0xE8, 0xA4, 0x00, 0x03, 0x94, 0xAC + .byte 0xFF, 0x63, 0x2F, 0x30, 0x1D, 0x01, 0x87, 0x00, 0x8C, 0x01, 0x96, 0x00, 0x31, 0x04, 0x31, 0x04 + .byte 0xDE, 0x01, 0xE8, 0xA4, 0x00, 0x03, 0x94, 0xAC, 0xFF, 0x3F, 0x0F, 0x26, 0x45, 0x00, 0xED, 0x02 + .byte 0x0A, 0x02, 0xCB, 0x01, 0x15, 0x04, 0x15, 0x04, 0xDF, 0x01, 0x95, 0xC9, 0x01, 0x44, 0x64, 0xE6 + .byte 0xFF, 0x1A, 0x7F, 0x1C, 0x49, 0x00, 0x4E, 0x00, 0x53, 0x01, 0x66, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xE0, 0x01, 0xE5, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x7F, 0x1C, 0x4D, 0x00, 0x4F, 0x00 + .byte 0x54, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xE1, 0x01, 0xE5, 0x99, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1B, 0x7F, 0x1C, 0x68, 0x00, 0x4D, 0x00, 0x52, 0x01, 0x65, 0x00, 0x28, 0x04, 0x28, 0x04 + .byte 0xE2, 0x01, 0xE5, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x7F, 0x1C, 0x61, 0x00, 0x52, 0x00 + .byte 0x57, 0x01, 0x69, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0xE3, 0x01, 0xE5, 0x99, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x2C, 0x8F, 0x16, 0xFC, 0x00, 0xB5, 0x00, 0xAA, 0x01, 0x4B, 0x01, 0x3A, 0x04, 0x3A, 0x04 + .byte 0xE4, 0x01, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x19, 0xCF, 0x26, 0x42, 0x00, 0xC8, 0x00 + .byte 0xBD, 0x01, 0x5D, 0x01, 0x24, 0x04, 0x24, 0x04, 0xE5, 0x01, 0xA0, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x1A, 0x2F, 0x24, 0x49, 0x00, 0x75, 0x00, 0x7A, 0x01, 0x86, 0x00, 0x27, 0x04, 0x27, 0x04 + .byte 0xE6, 0x01, 0xE3, 0x89, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x2F, 0x24, 0x4D, 0x00, 0x76, 0x00 + .byte 0x7B, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xE7, 0x01, 0xE3, 0x89, 0x00, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x42, 0xAF, 0x2C, 0x1E, 0x01, 0x8E, 0x03, 0xAB, 0x02, 0x5B, 0x02, 0x2D, 0x04, 0x2D, 0x04 + .byte 0xE8, 0x01, 0x83, 0x59, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x42, 0x6F, 0x1E, 0x1E, 0x01, 0x26, 0x03 + .byte 0x43, 0x02, 0xFF, 0x01, 0x2D, 0x04, 0x2D, 0x04, 0xE9, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 + .byte 0xFF, 0x04, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2D, 0x04, 0x2D, 0x04 + .byte 0x00, 0x00, 0x00, 0xA6, 0x00, 0x02, 0x60, 0x00, 0xFF, 0x1A, 0x0F, 0x00, 0x4D, 0x00, 0x3A, 0x03 + .byte 0x57, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xEA, 0x01, 0x0F, 0xC9, 0x00, 0x44, 0x64, 0xE4 +_020F9E80: + .byte 0x0B, 0x03 +_020F9E82: + .byte 0x3F, 0x00, 0x06, 0x08 +_020F9E86: + .byte 0x3C, 0x00 +_020F9E88: + .byte 0xB7, 0x02 +_020F9E8A: + .byte 0x8D, 0x01 +_020F9E8C: + .byte 0x3C, 0x00 +_020F9E8E: + .byte 0xB7, 0x02 +_020F9E90: + .byte 0x8D, 0x01, 0x0C, 0x03, 0x45, 0x00, 0x08, 0x0D, 0x43, 0x00, 0x34, 0x02, 0x88, 0x01, 0x43, 0x00 + .byte 0x34, 0x02, 0x88, 0x01, 0x0D, 0x03, 0x9E, 0x00, 0x08, 0x0D, 0x49, 0x00, 0xF1, 0x01, 0x10, 0x01 + .byte 0x49, 0x00, 0xF1, 0x01, 0x10, 0x01, 0x0E, 0x03, 0xA6, 0x00, 0x08, 0x0D, 0x4A, 0x00, 0x9A, 0x01 + .byte 0xCD, 0x01, 0x4A, 0x00, 0x9A, 0x01, 0xCD, 0x01, 0x0F, 0x03, 0xEC, 0x00, 0x08, 0x0D, 0x4B, 0x00 + .byte 0xBB, 0x00, 0x72, 0x01, 0x4B, 0x00, 0xBB, 0x00, 0x72, 0x01, 0x10, 0x03, 0xB9, 0x00, 0x08, 0x0D + .byte 0x4C, 0x00, 0x60, 0x01, 0x71, 0x01, 0x4C, 0x00, 0x60, 0x01, 0x71, 0x01, 0x11, 0x03, 0xE2, 0x00 + .byte 0x08, 0x0D, 0x4D, 0x00, 0x10, 0x01, 0x02, 0x01, 0x4D, 0x00, 0x10, 0x01, 0x02, 0x01, 0x12, 0x03 + .byte 0x51, 0x00, 0x08, 0x0D, 0x4E, 0x00, 0x8D, 0x01, 0xB8, 0x00, 0x4E, 0x00, 0x8D, 0x01, 0xB8, 0x00 + .byte 0x13, 0x03, 0xF6, 0x00, 0x08, 0x0D, 0x57, 0x00, 0x16, 0x02, 0xB8, 0x00, 0x57, 0x00, 0x16, 0x02 + .byte 0xB8, 0x00, 0x14, 0x02, 0x58, 0x00, 0x08, 0x0D, 0x58, 0x00, 0x18, 0x02, 0x5A, 0x00, 0x58, 0x00 + .byte 0x18, 0x02, 0x5A, 0x00, 0x15, 0x03, 0x25, 0x01, 0x08, 0x0D, 0x59, 0x00, 0xA2, 0x02, 0xB1, 0x00 + .byte 0x59, 0x00, 0xA2, 0x02, 0xB1, 0x00, 0x16, 0x03, 0x02, 0x02, 0x08, 0x0D, 0x5A, 0x00, 0x34, 0x03 + .byte 0x0A, 0x01, 0x5A, 0x00, 0x34, 0x03, 0x0A, 0x01, 0x00, 0x02, 0x31, 0x00, 0x08, 0x0D, 0x31, 0x00 + .byte 0x09, 0x04, 0x6C, 0x01, 0x31, 0x00, 0x09, 0x04, 0x6C, 0x01, 0x01, 0x03, 0xF5, 0x01, 0x08, 0x0D + .byte 0x32, 0x00, 0x08, 0x04, 0x07, 0x01, 0x32, 0x00, 0x08, 0x04, 0x07, 0x01, 0x02, 0x03, 0xDB, 0x01 + .byte 0x08, 0x0D, 0x33, 0x00, 0x18, 0x04, 0x6B, 0x00, 0x33, 0x00, 0x18, 0x04, 0x6B, 0x00, 0x03, 0x03 + .byte 0xAC, 0x01, 0x08, 0x0D, 0x34, 0x00, 0x1D, 0x05, 0x84, 0x00, 0x34, 0x00, 0x1D, 0x05, 0x84, 0x00 + .byte 0x04, 0x03, 0xB2, 0x01, 0x08, 0x0D, 0x35, 0x00, 0x8A, 0x05, 0xEB, 0x00, 0x35, 0x00, 0x8A, 0x05 + .byte 0xEB, 0x00, 0x05, 0x03, 0x66, 0x01, 0x08, 0x0D, 0x36, 0x00, 0x11, 0x05, 0x27, 0x01, 0x36, 0x00 + .byte 0x11, 0x05, 0x27, 0x01, 0x06, 0x03, 0x89, 0x01, 0x08, 0x0D, 0x37, 0x00, 0xCF, 0x04, 0xEE, 0x00 + .byte 0x37, 0x00, 0xCF, 0x04, 0xEE, 0x00, 0x07, 0x03, 0xE2, 0x01, 0x08, 0x0D, 0x38, 0x00, 0xB9, 0x04 + .byte 0xB8, 0x01, 0x38, 0x00, 0xB9, 0x04, 0xB8, 0x01, 0x08, 0x02, 0xFC, 0x01, 0x08, 0x0D, 0x39, 0x00 + .byte 0x0F, 0x04, 0xF7, 0x01, 0x39, 0x00, 0x0F, 0x04, 0xF7, 0x01, 0x09, 0x03, 0x2C, 0x01, 0x06, 0x15 + .byte 0x3A, 0x00, 0x90, 0x03, 0xC9, 0x00, 0x3A, 0x00, 0x90, 0x03, 0xC9, 0x00, 0x0A, 0x03, 0x97, 0x01 + .byte 0x08, 0x0D, 0x3B, 0x00, 0x0E, 0x05, 0xF3, 0x00, 0x3B, 0x00, 0x0E, 0x05, 0xF3, 0x00, 0x1E, 0x03 + .byte 0x16, 0x02, 0x08, 0x0D, 0xAE, 0x00, 0x52, 0x00, 0x2F, 0x01, 0xAE, 0x00, 0x52, 0x00, 0x2F, 0x01 + .byte 0x1F, 0x03, 0x10, 0x02, 0x08, 0x0D, 0x9B, 0x01, 0x08, 0x00, 0x0F, 0x00, 0x5E, 0x00, 0xED, 0x00 + .byte 0x0B, 0x01, 0x23, 0x00, 0x18, 0x01, 0x08, 0x0D, 0x18, 0x01, 0x2A, 0x00, 0x17, 0x00, 0x27, 0x00 + .byte 0x6A, 0x01, 0x0B, 0x01, 0x21, 0x00, 0x2B, 0x01, 0x08, 0x0D, 0x1E, 0x00, 0x8D, 0x03, 0x29, 0x01 + .byte 0x1E, 0x00, 0x8D, 0x03, 0x29, 0x01, 0x1B, 0x01, 0xA9, 0x00, 0x08, 0x0D, 0x24, 0x00, 0xD4, 0x01 + .byte 0xA3, 0x01, 0x24, 0x00, 0xD4, 0x01, 0xA3, 0x01, 0x24, 0x01, 0xFF, 0x01, 0x08, 0x0D, 0x0B, 0x00 + .byte 0x8F, 0x04, 0x6B, 0x00, 0x0B, 0x00, 0x8F, 0x04, 0x6B, 0x00, 0x25, 0x01, 0xD2, 0x01, 0x08, 0x0D + .byte 0x12, 0x00, 0x92, 0x05, 0xA4, 0x00, 0x12, 0x00, 0x92, 0x05, 0xA4, 0x00 +_020FA09C: + .byte 0x01, 0x01, 0x01, 0x1F + .byte 0x02, 0x01, 0x02, 0x1D, 0x03, 0x0F, 0x0A, 0x0A, 0x0C, 0x03, 0x0C, 0x1F +_020FA0AC: + .byte 0x01, 0x04, 0x00, 0x00 +_020FA0B0: + .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x00, 0x00, 0x00 +_020FA0B8: + .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 + .byte 0xFF, 0x00, 0x00, 0x00 +_020FA0C4: + .byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00 + .byte 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00 + .byte 0x64, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00 + .byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +_020FA0F8: + .byte 0xFD, 0xC8, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00 + .byte 0x45, 0xCA, 0x03, 0x02, 0x02, 0x00, 0x00, 0x00, 0x0D, 0xCF, 0x03, 0x02, 0x03, 0x00, 0x00, 0x00 + .byte 0xA9, 0xD1, 0x03, 0x02, 0x04, 0x00, 0x00, 0x00, 0x45, 0xD2, 0x03, 0x02, 0x05, 0x00, 0x00, 0x00 + .byte 0x19, 0xD3, 0x03, 0x02, 0x06, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00 + .byte 0x95, 0xD3, 0x03, 0x02, 0x08, 0x00, 0x00, 0x00, 0x89, 0xD4, 0x03, 0x02, 0x0E, 0x00, 0x00, 0x00 + .byte 0x01, 0xD5, 0x03, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x01, 0xD5, 0x03, 0x02, 0x0E, 0x00, 0x00, 0x00 + .byte 0x01, 0xD5, 0x03, 0x02, 0x0E, 0x00, 0x00, 0x00, 0xCD, 0xD2, 0x03, 0x02 + .public _020FA15C +_020FA15C: + .word sub_0203DEA4, sub_0203DEBC, sub_0203DED4, 0xFFFFFFFF + .public _020FA16C +_020FA16C: + .word sub_0203DE74, sub_0203DEBC, sub_0203DED4, 0xFFFFFFFF +_020FA17C: + .byte 0x40, 0x00, 0x00, 0x00 + .byte 0xFF, 0xFF, 0xFF, 0xFF, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00 +_020FA190: + .byte 0x3C, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xB7, 0x02, 0x00, 0x00, 0x8D, 0x01, 0x00, 0x00 + .byte 0x01, 0x00, 0x00, 0x00 +_020FA1A4: + .byte 0x00, 0xFF, 0x00, 0x00 +_020FA1A8: + .byte 0x01, 0x04, 0x00, 0x00 +_020FA1AC: + .byte 0x04, 0xFF, 0x00, 0x00 +_020FA1B0: + .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x00, 0x00, 0x00 +_020FA1B8: + .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 + .byte 0xFF, 0x00, 0x00, 0x00 +_020FA1C4: + .word sub_020192D0, sub_0201935C, sub_02019490, SDK_OVERLAY_OVY_39_ID +_020FA1D4: + .word ov105_021E5900, ov105_021E59DC, ov105_021E5B14, SDK_OVERLAY_OVY_105_ID +_020FA1E4: + .word ov68_021E5900, ov68_021E5968, ov68_021E5A3C, SDK_OVERLAY_OVY_68_ID +_020FA1F4: + .word ov76_021E5900, ov76_021E5B60, ov76_021E5AA0, SDK_OVERLAY_OVY_76_ID +_020FA204: + .word ov64_021E5900, ov64_021E5A18, ov64_021E59C8, SDK_OVERLAY_OVY_64_ID +_020FA214: + .word ov63_0221BE20, ov63_0221BF88, ov63_0221BF28, SDK_OVERLAY_OVY_63_ID +_020FA224: + .word ov69_021E5900, ov69_021E5A34, ov69_021E6080, SDK_OVERLAY_OVY_69_ID +_020FA234: + .word ov122_021E82A8, ov122_021E8360, ov122_021E8308, SDK_OVERLAY_OVY_122_ID +_020FA244: + .word ov96_021E5900, ov96_021E5A40, ov96_021E5B88, SDK_OVERLAY_OVY_96_ID +_020FA254: + .word ov52_021E80C0, ov52_021E8248, ov52_021E82AC, SDK_OVERLAY_OVY_52_ID +_020FA264: + .word ov70_02238430, ov70_022385C0, ov70_022386F4, SDK_OVERLAY_OVY_70_ID +_020FA274: + .word ov61_021E5900, ov61_021E5A38, ov61_021E5F74, SDK_OVERLAY_OVY_61_ID +_020FA284: + .word ov18_021E5AA0, ov18_021E5B64, ov18_021E5B80, SDK_OVERLAY_OVY_18_ID +_020FA294: + .word ov50_021E5924, ov50_021E595C, ov50_021E59A8, SDK_OVERLAY_OVY_50_ID +_020FA2A4: + .word ov43_02229EE0, ov43_02229FB4, ov43_0222A0AC, SDK_OVERLAY_OVY_43_ID +_020FA2B4: + .word ov73_021E5900, ov73_021E5AB8, ov73_021E5BAC, SDK_OVERLAY_OVY_73_ID +_020FA2C4: + .word ov37_021E5900, ov37_021E5A84, ov37_021E5B94, SDK_OVERLAY_OVY_37_ID +_020FA2D4: + .word ov71_02246960, ov71_02246BB8, ov71_02246B58, SDK_OVERLAY_OVY_71_ID +_020FA2E4: + .word ov67_021E5900, ov67_021E5984, ov67_021E5968, SDK_OVERLAY_OVY_67_ID +_020FA2F4: + .word ov103_021EC940, ov103_021EC988, ov103_021EC9A4, SDK_OVERLAY_OVY_103_ID +_020FA304: + .word ov78_021E5900, ov78_021E59EC, ov78_021E5B24, SDK_OVERLAY_OVY_78_ID +_020FA314: + .word ov99_021E7818, ov99_021E794C, ov99_021E78F0, SDK_OVERLAY_OVY_99_ID +_020FA324: + .word ov99_021E8304, ov99_021E83F4, ov99_021E83AC, SDK_OVERLAY_OVY_99_ID +_020FA334: + .word ov72_02237E20, ov72_02237F9C, ov72_02238070, SDK_OVERLAY_OVY_72_ID +_020FA344: + .word ov99_021E5900, ov99_021E5A38, ov99_021E5A04, SDK_OVERLAY_OVY_99_ID +_020FA354: + .word ov54_021E5900, ov54_021E5B3C, ov54_021E5A10, SDK_OVERLAY_OVY_54_ID +_020FA364: + .word ov111_021E5900, ov111_021E59B8, ov111_021E5960, SDK_OVERLAY_OVY_111_ID +_020FA374: + .word ov58_022378E4, ov58_02237924, ov58_0223799C, SDK_OVERLAY_OVY_58_ID +_020FA384: + .word ov16_0220196C, ov16_022019B8, ov16_02201A04, SDK_OVERLAY_OVY_16_ID +_020FA394: + .word ov113_021E5900, ov113_021E5968, ov113_021E59C8, SDK_OVERLAY_OVY_113_ID +_020FA3A4: + .word ov110_021E5900, ov110_021E5974, ov110_021E59F4, SDK_OVERLAY_OVY_110_ID +_020FA3B4: + .word ov109_021E5900, ov109_021E5968, ov109_021E59F0, SDK_OVERLAY_OVY_109_ID +_020FA3C4: + .word ov108_021E8850, ov108_021E8904, ov108_021E88C4, SDK_OVERLAY_OVY_108_ID +_020FA3D4: + .word ov108_021E5900, ov108_021E5978, ov108_021E5948, SDK_OVERLAY_OVY_108_ID +_020FA3E4: + .word ov101_Radio_OvyInit, ov101_Radio_OvyExec, ov101_Radio_OvyExit, SDK_OVERLAY_OVY_101_ID +_020FA3F4: + .word ov100_021E642C, ov100_021E6520, ov100_021E65BC, SDK_OVERLAY_OVY_100_ID +_020FA404: + .word ov102_021E7740, ov102_021E77B8, ov102_021E7868, SDK_OVERLAY_OVY_102_ID +_020FA414: + .word ov14_021E5900, ov14_021E596C, ov14_021E5988, SDK_OVERLAY_OVY_14_ID +_020FA424: + .word ov99_021E677C, ov99_021E6888, ov99_021E6840, SDK_OVERLAY_OVY_99_ID +_020FA434: + .word ov55_021E5924, ov55_021E598C, ov55_021E5AE8, SDK_OVERLAY_OVY_55_ID +_020FA444: + .word ov73_021E7E4C, ov73_021E7FB8, ov73_021E808C, SDK_OVERLAY_OVY_72_ID +_020FA454: + .word ov104_021E5900, ov104_021E59E4, ov104_021E5B14, SDK_OVERLAY_OVY_104_ID +_020FA464: + .word ov15_021F9380, ov15_021F9608, ov15_021F982C, SDK_OVERLAY_OVY_15_ID +_020FA474: + .word sub_02097B78, sub_02097BAC, sub_02097BD0, SDK_OVERLAY_OVY_106_ID +_020FA484: + .word sub_0203E3A8, sub_0203E3AC, sub_0203E3C0, SDK_OVERLAY_OVY_12_ID +_020FA494: + .word ov121_021E5900, ov121_021E590C, ov121_021E59BC, SDK_OVERLAY_OVY_121_ID +_020FA4A4: + .byte 0xFA, 0x28, 0x07, 0x01, 0xB1, 0x01, 0xD2, 0x28, 0x08, 0x01, 0x13, 0x00 + .byte 0xC8, 0x28, 0x02, 0x00, 0xEC, 0x02, 0xA0, 0x28, 0x97, 0x00, 0xF6, 0x00, 0x6E, 0x28, 0xB8, 0x03 + .byte 0xD6, 0x02, 0x3C, 0x28, 0xDE, 0x02, 0xBC, 0x01, 0xD8, 0x27, 0x90, 0x00, 0xD1, 0x00, 0xA6, 0x27 + .byte 0xBB, 0x03, 0xDC, 0x02, 0x74, 0x27, 0xBA, 0x03, 0xDD, 0x02, 0x10, 0x27, 0x92, 0x00, 0xD3, 0x00 + .byte 0xDE, 0x26, 0x94, 0x00, 0x9A, 0x02, 0xAC, 0x26, 0x88, 0x00, 0x28, 0x00, 0x7A, 0x26, 0xA7, 0x00 + .byte 0x38, 0x01, 0x48, 0x26, 0xA6, 0x00, 0x2B, 0x00, 0xE4, 0x25, 0xA3, 0x00, 0x0A, 0x01, 0x80, 0x25 + .byte 0x95, 0x00, 0x28, 0x00, 0x1C, 0x25, 0x09, 0x01, 0xB7, 0x01, 0x54, 0x24, 0x8F, 0x00, 0xCC, 0x00 + .byte 0xF0, 0x23, 0xA4, 0x00, 0x0B, 0x01, 0x8C, 0x23, 0x00, 0x00, 0x0E, 0x00, 0x28, 0x23, 0x04, 0x00 + .byte 0x2E, 0x00, 0xC4, 0x22, 0xA5, 0x00, 0x0C, 0x01, 0x60, 0x22, 0x06, 0x01, 0xAB, 0x01, 0x40, 0x1F + .byte 0x91, 0x00, 0xD2, 0x00, 0x58, 0x1B, 0x8D, 0x00, 0xC7, 0x00, 0x88, 0x13, 0xB9, 0x03, 0x28, 0x00 + .byte 0xB8, 0x0B, 0xB9, 0x03, 0x28, 0x00, 0xF0, 0x0A, 0x96, 0x00, 0x17, 0x00, 0xC4, 0x09, 0x01, 0x00 + .byte 0x14, 0x00, 0xD0, 0x07, 0x03, 0x00, 0x28, 0x00 +_020FA558: + .byte 0x11, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE1, 0x00 + .byte 0x11, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0E, 0x00 + .byte 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x10, 0x00 + .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x11, 0x00, 0x28, 0x00, 0x01, 0x00, 0x00, 0x00, 0x12, 0x00 + .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6C, 0x00 + .byte 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x92, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0x93, 0x00 + .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x94, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x95, 0x00 + .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x96, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x97, 0x00 + .byte 0x16, 0x00, 0x01, 0x00, 0x00, 0x00, 0x98, 0x00, 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9A, 0x00 + .byte 0x3B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x99, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9B, 0x00 + .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x31, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9D, 0x00 + .byte 0x5D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00 + .byte 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x61, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x06, 0x00 + .byte 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1C, 0x00 + .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x12, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1E, 0x00 + .byte 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x20, 0x00 + .byte 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x21, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD3, 0x00 + .byte 0x4F, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD4, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD5, 0x00 + .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD6, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD7, 0x00 + .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00 + .byte 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x09, 0x00, 0x16, 0x00, 0x01, 0x00, 0x00, 0x00, 0x34, 0x00 + .byte 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x35, 0x00, 0x12, 0x00, 0x01, 0x00, 0x00, 0x00, 0x43, 0x00 + .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x44, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x45, 0x00 + .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x15, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0B, 0x00 + .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x22, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x23, 0x00 + .byte 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9F, 0x00, 0x2E, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA0, 0x00 + .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0D, 0x00 + .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x84, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x85, 0x00 + .byte 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x14, 0x00 + .byte 0x12, 0x00, 0x01, 0x00, 0x00, 0x00, 0x41, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x15, 0x00 + .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7D, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7E, 0x00 + .byte 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x80, 0x00 + .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x81, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3E, 0x00 + .byte 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x30, 0x00, 0x01, 0x00, 0x00, 0x00, 0x40, 0x00 + .byte 0x2D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x16, 0x00, 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x62, 0x00 + .byte 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x87, 0x00, 0x39, 0x00, 0x01, 0x00, 0x00, 0x00, 0x88, 0x00 + .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x17, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x89, 0x00 + .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x42, 0x00, 0x2E, 0x00, 0x01, 0x00, 0x00, 0x00, 0x56, 0x00 + .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA1, 0x00 + .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x18, 0x00, 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0x63, 0x00 + .byte 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAB, 0x00 + .byte 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAC, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAD, 0x00 + .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x49, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4A, 0x00 + .byte 0x4C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBF, 0x00, 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC0, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC1, 0x00, 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4B, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x19, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1A, 0x00 + .byte 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD1, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x27, 0x00 + .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE2, 0x00 + .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x29, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x82, 0x00 + .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x83, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2A, 0x00 + .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2C, 0x00 + .byte 0x4D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2E, 0x00 + .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8D, 0x00 + .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2F, 0x00 + .byte 0x2D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x30, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8F, 0x00 + .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x90, 0x00, 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x31, 0x00 + .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x32, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x33, 0x00 + .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x36, 0x00, 0x3E, 0x00, 0x01, 0x00, 0x00, 0x00, 0x37, 0x00 + .byte 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x24, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00 + .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x66, 0x00, 0x28, 0x00, 0x01, 0x00, 0x00, 0x00, 0x64, 0x00 + .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x46, 0x00, 0x14, 0x00, 0x01, 0x00, 0x00, 0x00, 0x48, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE4, 0x00, 0x30, 0x00, 0x01, 0x00, 0x00, 0x00, 0x47, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x52, 0x00 + .byte 0x29, 0x00, 0x01, 0x00, 0x00, 0x00, 0x53, 0x00, 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x65, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB5, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB6, 0x00 + .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB7, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB8, 0x00 + .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4F, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x50, 0x00 + .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB9, 0x00, 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBA, 0x00 + .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBD, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBB, 0x00 + .byte 0x34, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBC, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBE, 0x00 + .byte 0x2F, 0x00, 0x01, 0x00, 0x00, 0x00, 0x54, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x67, 0x00 + .byte 0x5D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA2, 0x00 + .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA3, 0x00, 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA4, 0x00 + .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x38, 0x00, 0x31, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE0, 0x00 + .byte 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x39, 0x00, 0x3D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3A, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x68, 0x00, 0x3C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3B, 0x00 + .byte 0x3A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3D, 0x00 + .byte 0x2D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA9, 0x00, 0x30, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC5, 0x00 + .byte 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x69, 0x00, 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6A, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7A, 0x00 + .byte 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x29, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6E, 0x00 + .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x86, 0x00, 0x31, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6F, 0x00 + .byte 0x28, 0x00, 0x01, 0x00, 0x00, 0x00, 0x70, 0x00, 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0x55, 0x00 + .byte 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x57, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD8, 0x00 + .byte 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD9, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDA, 0x00 + .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDB, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDC, 0x00 + .byte 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC6, 0x00, 0x37, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC7, 0x00 + .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE3, 0x00, 0x5B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x91, 0x00 + .byte 0x5B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8A, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8B, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC3, 0x00, 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC4, 0x00 + .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x71, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC2, 0x00 + .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC8, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAE, 0x00 + .byte 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAF, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB0, 0x00 + .byte 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB1, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x72, 0x00 + .byte 0x2F, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x5B, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA7, 0x00 + .byte 0x4E, 0x00, 0x01, 0x00, 0x00, 0x00, 0x58, 0x00, 0x14, 0x00, 0x01, 0x00, 0x00, 0x00, 0x59, 0x00 + .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5B, 0x00 + .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD2, 0x00 + .byte 0x34, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB4, 0x00 + .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB2, 0x00, 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB3, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCF, 0x00, 0x29, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD0, 0x00 + .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x73, 0x00, 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x74, 0x00 + .byte 0x38, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4D, 0x00 + .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC9, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA5, 0x00 + .byte 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCD, 0x00 + .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCA, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCB, 0x00 + .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x2F, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDE, 0x00 + .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCE, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5D, 0x00 + .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5F, 0x00 + .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x60, 0x00, 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x75, 0x00 + .byte 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0x76, 0x00, 0x34, 0x00, 0x01, 0x00, 0x00, 0x00, 0x77, 0x00 + .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x78, 0x00, 0x2E, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDD, 0x00 + .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x79, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7B, 0x00 + .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7C, 0x00, 0xE2, 0x00, 0x01, 0x00, 0x00, 0x00, 0x26, 0x00 + .byte 0xE3, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE5, 0x00, 0x35, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE6, 0x00 +_020FAC90: + .byte 0x55, 0x03, 0x00, 0x00 +_020FAC94: + .byte 0x03, 0x19, 0x0D, 0x06, 0x04, 0x0D, 0x1F, 0x02 +_020FAC9C: + .byte 0x01, 0x00, 0x00, 0x00 + .byte 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00 +_020FACB0: + .byte 0x14, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00 + .byte 0x19, 0x00, 0x00, 0x00 +_020FACC4: + .byte 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0x07 + .byte 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0x07 +_020FACDC: + .byte 0x00, 0x30, 0x08, 0x00 + .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00, 0x00, 0xD0, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00 + .byte 0x00, 0x10, 0x04, 0x00, 0x00, 0x80, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x04, 0x00 +gScriptCommandTable: ; 0x020FAD00 + .word sub_02040890 + .word sub_02040894 + .word sub_02040898 + .word sub_020408A4 + .word sub_02040918 + .word sub_02040930 + .word sub_0204094C + .word sub_02040968 + .word sub_02040980 + .word sub_0204099C + .word sub_020409BC + .word sub_020409E8 + .word sub_02040A18 + .word sub_02040A40 + .word sub_02040A68 + .word sub_02040A90 + .word sub_02040AAC + .word sub_02040ACC + .word sub_02040AF8 + .word sub_02040B30 + .word sub_02040B68 + .word sub_02040BFC + .word sub_02040C2C + .word sub_02040C44 + .word sub_02040C7C + .word sub_02040CAC + .word sub_02040CE0 + .word sub_02040CF8 + .word sub_02040D04 + .word sub_02040D38 + .word sub_02040D6C + .word sub_02040D84 + .word sub_02040D9C + .word sub_02040DF4 + .word sub_02040E1C + .word sub_02040DB8 + .word sub_02040E44 + .word sub_02040E68 + .word sub_02040E8C + .word sub_02040EB4 + .word sub_02040EE4 + .word sub_02040F14 + .word sub_02040F38 + .word sub_02040F68 + .word ov01_021EF050 + .word ov01_021EF31C + .word ov01_021EF35C + .word ov01_021EF3E0 + .word sub_02040F94 + .word sub_02040FF0 + .word sub_02041064 + .word sub_020410E0 + .word sub_02041110 + .word sub_02041168 + .word sub_020411A4 + .word sub_02041328 + .word sub_020413D4 + .word sub_02041410 + .word sub_0204142C + .word sub_0204146C + .word sub_020415C4 + .word sub_02041674 + .word sub_020411D8 + .word sub_02041684 + .word sub_020417EC + .word sub_02041808 + .word sub_02041824 + .word sub_02041890 + .word sub_02041950 + .word sub_0204196C + .word sub_02041988 + .word sub_020419E8 + .word sub_02041A98 + .word sub_02049228 + .word sub_02049244 + .word sub_02049260 + .word sub_020492A0 + .word sub_020492E0 + .word sub_02049304 + .word sub_02049320 + .word sub_02049134 + .word sub_02049144 + .word sub_02049158 + .word sub_02049170 + .word sub_02049188 + .word sub_020491C4 + .word sub_020491E8 + .word sub_02049204 + .word sub_02049214 + .word sub_02049344 + .word sub_0204937C + .word sub_020493B4 + .word sub_020493C0 + .word sub_020493D4 + .word sub_02041B04 + .word sub_02041C98 + .word sub_02041D40 + .word sub_02041F50 + .word sub_02041F60 + .word sub_02041F8C + .word sub_02041FB8 + .word sub_02042000 + .word sub_02042034 + .word sub_020420CC + .word sub_0204219C + .word sub_020422B4 + .word sub_020422F8 + .word sub_02042394 + .word sub_02042478 + .word sub_020424AC + .word sub_0204CA50 + .word sub_0204CA74 + .word sub_0204CAC8 + .word ov01_02203138 + .word ov01_02203188 + .word ov01_022031A0 + .word ov20_022598C0 + .word ov22_0225991C + .word ov22_02259934 + .word ov22_02259960 + .word ov22_0225998C + .word ov22_022599B8 + .word ov22_02259ADC + .word ov22_02259B08 + .word ov22_02259B34 + .word sub_0204E9D8 + .word sub_0204EA30 + .word sub_0204EA88 + .word sub_0204EAE0 + .word sub_0204EB7C + .word sub_0204EBB0 + .word sub_02043964 + .word ov01_021EF41C + .word ov01_02202674 + .word ov01_022026B4 + .word ov01_0220271C + .word sub_02042530 + .word sub_0204D088 + .word sub_0204D248 + .word sub_0204D2D0 + .word sub_0204D328 + .word sub_0204D3CC + .word sub_020428D8 + .word sub_020431E4 + .word sub_02046F34 + .word sub_02046F6C + .word sub_02046FC8 + .word sub_02046FFC + .word sub_020472C4 + .word sub_020472E8 + .word sub_02042A10 + .word sub_02042AB0 + .word sub_02042AC0 + .word sub_02042ACC + .word sub_02042D00 + .word sub_02042D58 + .word sub_02042E48 + .word sub_02042E5C + .word sub_02042F04 + .word sub_02042F5C + .word sub_02042F78 + .word sub_02042F88 + .word sub_02042F98 + .word sub_02042FC4 + .word sub_02042FDC + .word sub_02043044 + .word sub_020430A4 + .word sub_020430C4 + .word sub_02049460 + .word sub_0204952C + .word sub_0204959C + .word sub_020495C4 + .word sub_020431B4 + .word sub_02043214 + .word sub_02043400 + .word sub_02043448 + .word sub_0204346C + .word sub_020435E8 + .word sub_02043618 + .word sub_02043648 + .word sub_02043678 + .word sub_020436C4 + .word sub_020436F4 + .word sub_02043724 + .word sub_020437B4 + .word sub_020437E4 + .word sub_02043884 + .word sub_0204389C + .word sub_020438C4 + .word sub_020438DC + .word sub_02048414 + .word sub_02048448 + .word sub_0204846C + .word sub_02048490 + .word sub_02048510 + .word sub_02048548 + .word sub_02048580 + .word sub_020485BC + .word sub_020485F4 + .word sub_020486F0 + .word sub_02048794 + .word sub_020487CC + .word sub_02048818 + .word sub_020488A4 + .word sub_020488F4 + .word sub_02048944 + .word sub_02043938 + .word sub_02048994 + .word sub_020489CC + .word sub_020489F4 + .word sub_02048A1C + .word sub_020438EC + .word sub_02049618 + .word sub_02049648 + .word sub_02043990 + .word sub_02049750 + .word sub_020497D8 + .word sub_02049860 + .word sub_02049894 + .word sub_020498C8 + .word sub_020498D4 + .word sub_02049904 + .word sub_02049980 + .word sub_020499AC + .word sub_020499D8 + .word sub_02049A00 + .word sub_02043A28 + .word sub_02043AC0 + .word sub_02043B58 + .word sub_02043B64 + .word sub_02043B70 + .word sub_02043BA0 + .word sub_0206BB2C + .word sub_0206BB5C + .word sub_0206BBAC + .word sub_0206BC2C + .word sub_0206BC64 + .word sub_0206BC8C + .word sub_0204DB3C + .word sub_0204DBA0 + .word sub_02043BA4 + .word sub_02043C24 + .word sub_02043C54 + .word sub_02043CB4 + .word sub_02043CE4 + .word sub_02043D14 + .word sub_02043D44 + .word sub_02043D74 + .word sub_02043D78 + .word sub_02043E08 + .word sub_02043F0C + .word sub_02043F48 + .word sub_02043F54 + .word sub_02043F70 + .word sub_02043FC4 + .word sub_02042DC0 + .word sub_02042DFC + .word sub_02044024 + .word sub_02044070 + .word sub_0204407C + .word sub_020440AC + .word sub_020440E4 + .word sub_0204435C + .word sub_0204436C + .word sub_02044124 + .word sub_02044190 + .word sub_020441A0 + .word sub_020441D8 + .word sub_02044270 + .word sub_020442FC + .word sub_02044348 + .word sub_02044380 + .word sub_020443BC + .word sub_02044418 + .word sub_020442AC + .word sub_02048060 + .word sub_02048158 + .word sub_02048194 + .word sub_020481DC + .word sub_020445C0 + .word sub_020445CC + .word sub_020445F8 + .word sub_02044628 + .word sub_02044640 + .word sub_0204468C + .word sub_0204469C + .word sub_02044480 + .word sub_02044490 + .word sub_020444CC + .word sub_0204458C + .word sub_0204E610 + .word sub_0204E640 + .word sub_0204E654 + .word sub_0204E684 + .word sub_0204E6A0 + .word sub_0204E6E8 + .word sub_0204E748 + .word sub_0204E71C + .word sub_0204E774 + .word sub_0204E788 + .word sub_0204E7B4 + .word sub_0204E7C8 + .word sub_0204E838 + .word sub_0204E864 + .word sub_0204E878 + .word sub_0204E88C + .word sub_0204E8B8 + .word sub_02044954 + .word sub_020449AC + .word sub_020449C4 + .word sub_020449DC + .word sub_020449F4 + .word sub_0204CB5C + .word sub_0204CB7C + .word sub_02044A0C + .word sub_02044A1C + .word sub_02044A44 + .word sub_02044A6C + .word sub_02044AA8 + .word sub_02044AB8 + .word sub_02044AE0 + .word sub_02044AF0 + .word sub_02044B10 + .word sub_02044B40 + .word sub_02044B50 + .word sub_02044B60 + .word sub_02044B70 + .word sub_02044B80 + .word sub_02044B9C + .word sub_02044BB8 + .word sub_02044BC8 + .word sub_02044BD8 + .word sub_0204D95C + .word sub_020430D4 + .word sub_02043124 + .word sub_020446AC + .word sub_02048A7C + .word sub_02048AF4 + .word sub_020446EC + .word sub_0204473C + .word sub_020447CC + .word sub_02044804 + .word sub_0204483C + .word sub_0204488C + .word sub_020448DC + .word sub_02041728 + .word sub_02041758 + .word sub_02044928 + .word sub_02041018 + .word sub_02042574 + .word sub_020425D4 + .word sub_020425F8 + .word sub_02042860 + .word sub_0204280C + .word sub_0204D180 + .word sub_0204D1DC + .word sub_0204D988 + .word sub_0204D9E0 + .word sub_0204DA68 + .word sub_0204DAE4 + .word sub_0204CA98 + .word sub_0204CBF8 + .word sub_02045394 + .word sub_020453D0 + .word sub_0204D154 + .word sub_0204CBAC + .word sub_0204CBC4 + .word sub_0204CC58 + .word sub_0204CB0C + .word sub_02044C54 + .word sub_02043164 + .word sub_0204CCAC + .word sub_0204CCFC + .word sub_0204CD34 + .word sub_02044C64 + .word sub_02044C98 + .word sub_02044CCC + .word sub_02044CFC + .word sub_02044D28 + .word sub_02044D68 + .word sub_02044D8C + .word sub_02044DC4 + .word sub_0204D6C0 + .word sub_0204D708 + .word sub_0204D7D8 + .word sub_0204CD74 + .word sub_0204236C + .word sub_0204CE00 + .word sub_0204CE30 + .word sub_0204DF54 + .word ov20_02259A88 + .word ov20_02259B40 + .word ov20_02259BF4 + .word ov20_02259B88 + .word sub_0204EBE8 + .word sub_0204EC30 + .word sub_0204DBE8 + .word sub_0204DC90 + .word sub_0204DCD4 + .word sub_02048B64 + .word sub_0204E8CC + .word sub_0204E928 + .word sub_0204E980 + .word sub_02044DFC + .word sub_02044E40 + .word sub_02044E9C + .word sub_02044F00 + .word sub_02044F30 + .word sub_02042E8C + .word sub_02049CD8 + .word sub_02049CA8 + .word sub_02049CE8 + .word sub_02049D04 + .word sub_02049FC8 + .word sub_0204A048 + .word sub_0204A070 + .word sub_0204A098 + .word sub_0204A184 + .word sub_0204A230 + .word sub_0204A27C + .word sub_02045040 + .word sub_02045060 + .word sub_020450B8 + .word sub_02044F74 + .word sub_02044FAC + .word sub_02044FE4 + .word sub_0204DD34 + .word sub_02045028 + .word sub_0204DEE4 + .word ov20_022598C0 + .word sub_02047060 + .word sub_020470F4 + .word ov21_0225990C + .word ov21_02259960 + .word sub_0204D4D0 + .word sub_0204D48C + .word sub_02042A20 + .word sub_02040900 + .word ov01_021EF064 + .word ov01_021EF0A4 + .word ov01_021EF0F0 + .word ov01_021EF154 + .word ov01_021EF194 + .word ov01_021EF1E0 + .word ov01_021EF268 + .word sub_02043548 + .word sub_02043574 + .word sub_02045188 + .word sub_020434DC + .word sub_02043538 + .word sub_02042E2C + .word sub_02042AFC + .word sub_02042B1C + .word sub_02042C2C + .word sub_02042CA8 + .word ov01_021EF488 + .word sub_0204523C + .word sub_0204D5C0 + .word sub_0204D634 + .word sub_02045230 + .word sub_02047120 + .word sub_02047168 + .word sub_0204720C + .word sub_02045254 + .word sub_02045264 + .word sub_02049A6C + .word sub_0204EC7C + .word sub_0204ED3C + .word sub_0204ED7C + .word sub_0204EDDC + .word sub_0204527C + .word sub_020452B0 + .word sub_020452E0 + .word sub_02045340 + .word sub_02045374 + .word sub_02045428 + .word sub_0204542C + .word sub_02045440 + .word sub_0204E150 + .word sub_0204E1C4 + .word sub_0204E26C + .word sub_0204E2D8 + .word sub_02048BCC + .word sub_020454A4 + .word sub_02045540 + .word sub_02045568 + .word sub_02040894 + .word sub_02045588 + .word sub_020455B0 + .word sub_0204BDA4 + .word sub_0204EE20 + .word sub_0204EE38 + .word sub_020432FC + .word sub_0204335C + .word sub_020433BC + .word sub_020455F0 + .word sub_0204D8A0 + .word sub_0204D8F0 + .word sub_0204560C + .word sub_020456D8 + .word sub_02045780 + .word sub_0204579C + .word sub_020457B8 + .word sub_02048EE0 + .word sub_02048F10 + .word sub_0204908C + .word sub_02048738 + .word sub_0204583C + .word sub_0204C874 + .word sub_0204C8D4 + .word sub_0204C91C + .word sub_0204C9C0 + .word sub_02045868 + .word sub_0204588C + .word sub_020458A4 + .word sub_020458CC + .word sub_02048B2C + .word sub_020458EC + .word sub_0204592C + .word sub_020459AC + .word sub_02045A60 + .word sub_02045A74 + .word sub_02045A88 + .word sub_02045AAC + .word sub_02045B40 + .word sub_02045BA4 + .word sub_02045BCC + .word ov01_021EF2E0 + .word sub_02045C64 + .word sub_0204D8C8 + .word sub_02045C84 + .word sub_02045CC4 + .word ov22_02259A10 + .word ov22_02259A9C + .word sub_02045CFC + .word sub_0204D564 + .word sub_02045D28 + .word sub_02045D6C + .word sub_02045D7C + .word sub_02045E1C + .word sub_02045DE8 + .word sub_0204863C + .word sub_0204D840 + .word sub_02045E54 + .word sub_020493E4 + .word sub_02045EA8 + .word sub_02045ED8 + .word sub_02042BAC + .word sub_02042C44 + .word sub_02042C5C + .word sub_02045F18 + .word sub_02045F80 + .word sub_02045FC4 + .word sub_02046038 + .word sub_0204A2EC + .word sub_0204A31C + .word sub_0204A360 + .word sub_0204A3A4 + .word sub_02044534 + .word sub_0204184C + .word sub_02046078 + .word ov01_02201A50 + .word sub_020496DC + .word sub_02041B74 + .word sub_02046108 + .word sub_02046130 + .word sub_020425A4 + .word sub_0204E5BC + .word sub_0204615C + .word ov22_022599E4 + .word ov22_02259A50 + .word sub_020461A0 + .word ov01_02202648 + .word sub_02046290 + .word sub_020424E8 + .word sub_0204910C + .word sub_020462A8 + .word sub_020462D8 + .word sub_020462E4 + .word sub_020462F0 + .word sub_02048C10 + .word sub_02041E84 + .word sub_02046300 + .word sub_02046360 + .word sub_0204E338 + .word sub_020418DC + .word sub_02044230 + .word sub_02044674 + .word sub_02049950 + .word sub_02043E5C + .word sub_0204639C + .word sub_02043870 + .word ov01_021EF398 + .word sub_020463C4 + .word sub_020463F4 + .word sub_02046420 + .word sub_02046B1C + .word sub_02046B48 + .word sub_02046B64 + .word sub_02046BB4 + .word sub_02046BC4 + .word sub_02046BDC + .word sub_02046CB4 + .word sub_02046CF0 + .word sub_02046D10 + .word sub_02046D5C + .word sub_02046DA8 + .word sub_02046DF8 + .word sub_02046E38 + .word sub_02046E5C + .word sub_02046E80 + .word sub_02046E9C + .word sub_02045310 + .word sub_0204723C + .word sub_0204727C + .word sub_02047304 + .word sub_0204731C + .word sub_02047348 + .word ov01_02202308 + .word sub_0204E7DC + .word sub_0204E808 + .word sub_02047358 + .word sub_020473D8 + .word sub_0204BC98 + .word sub_0204BCCC + .word sub_0204BD04 + .word sub_02048C80 + .word sub_02046438 + .word sub_0204EE50 + .word sub_020432A0 + .word sub_020432CC + .word sub_020464E0 + .word sub_0204DFE4 + .word sub_0204EF40 + .word sub_0204F1AC + .word sub_02042644 + .word sub_0204F174 + .word sub_0204F8DC + .word sub_0204FAD4 + .word sub_020426C4 + .word sub_0204F9DC + .word sub_02043FEC + .word sub_02043FFC + .word sub_0204FE78 + .word sub_02050014 + .word sub_02042768 + .word sub_0204FF78 + .word sub_0204E0BC + .word ov01_02200AF0 + .word sub_02046554 + .word sub_02046584 + .word sub_020465A0 + .word ov01_02202B00 + .word ov01_02202E68 + .word ov01_02202B78 + .word ov01_02202BD0 + .word ov01_02202C28 + .word ov01_022011D4 + .word sub_020483D8 + .word ov01_02201424 + .word sub_02048C48 + .word sub_0204869C + .word sub_020465FC + .word sub_02046674 + .word sub_02049418 + .word sub_0204941C + .word sub_02049440 + .word sub_020466A8 + .word sub_020484D8 + .word sub_0204EB38 + .word ov01_02201594 + .word ov01_0220178C + .word ov01_022017DC + .word sub_020466E0 + .word ov01_02201470 + .word ov01_02201518 + .word ov01_02201844 + .word sub_02041A48 + .word sub_02042110 + .word sub_02042184 + .word sub_020468F4 + .word sub_02042CE0 + .word sub_02046914 + .word sub_02049A44 + .word sub_02042948 + .word sub_02044BE8 + .word sub_02043EB8 + .word sub_02045818 + .word sub_0204E3CC + .word ov01_02201304 + .word sub_0204CFB8 + .word sub_02046970 + .word sub_0204F500 + .word sub_0204F6D0 + .word sub_0204F778 + .word sub_02041A0C + .word sub_020469B4 + .word sub_0204F7FC + .word sub_02046A1C + .word ov01_0220188C + .word ov01_0220192C + .word sub_0204E470 + .word ov01_0220197C + .word ov01_02201990 + .word sub_0204512C + .word sub_02045160 + .word sub_02043008 + .word ov01_022019B0 + .word ov01_022019F0 + .word ov01_02201A40 + .word ov03_02256B88 + .word sub_02047414 + .word sub_02047424 + .word sub_0204749C + .word ov01_02201B14 + .word sub_0204CE60 + .word ov03_0225894C + .word ov03_02258978 + .word ov03_02258998 + .word ov03_022589D4 + .word ov03_02258A18 + .word ov03_02258BDC + .word sub_020474D8 + .word sub_02047518 + .word ov01_02201B40 + .word ov01_02201C08 + .word ov01_02201C60 + .word sub_02047570 + .word sub_0204759C + .word sub_020475C0 + .word sub_020475F0 + .word sub_02047634 + .word sub_02047644 + .word sub_02047664 + .word sub_0204769C + .word ov01_02201C70 + .word ov01_02201C9C + .word ov01_02201CB4 + .word ov01_02201CE0 + .word ov01_02201D1C + .word ov01_02201D4C + .word ov01_02201DA4 + .word ov01_02203094 + .word ov01_02201F10 + .word ov01_02201F30 + .word ov01_02202480 + .word sub_020476B4 + .word sub_0204771C + .word sub_02047790 + .word sub_020477F8 + .word sub_02047814 + .word sub_02047830 + .word sub_02047888 + .word sub_02047AE8 + .word sub_02047B38 + .word sub_02047B5C + .word sub_02047B6C + .word sub_02047B7C + .word sub_02047B8C + .word sub_02047BA4 + .word sub_02047BB4 + .word sub_02047BC4 + .word sub_02047BDC + .word sub_02047BF4 + .word sub_02047C04 + .word sub_02047C14 + .word sub_02047C24 + .word sub_02047C34 + .word sub_02047C44 + .word sub_02047C54 + .word ov01_0220205C + .word sub_02048218 + .word sub_02048298 + .word sub_02047558 + .word ov01_02201A18 + .word ov01_02201AB8 + .word ov01_022020CC + .word ov01_022021AC + .word ov01_022021F8 + .word ov01_0220233C + .word ov01_02202430 + .word sub_0204DDE4 + .word sub_0204812C + .word sub_02047C64 + .word sub_02047C80 + .word ov01_02202930 + .word ov01_02202980 + .word ov01_022029B0 + .word ov01_02202A28 + .word ov01_02202A70 + .word ov01_02202ABC + .word ov03_02258C00 + .word ov03_02258CDC + .word sub_02047964 + .word sub_02047CBC + .word ov01_02205164 + .word ov01_022051B4 + .word ov01_022051CC + .word sub_02047CFC + .word sub_02047D24 + .word sub_02047D58 + .word sub_02047D7C + .word sub_02047DB0 + .word sub_02047DC8 + .word sub_02046FAC + .word sub_02047E14 + .word sub_02047E20 + .word sub_0206DC50 + .word ov01_022053EC + .word ov25_02259A30 + .word sub_02047E30 + .word ov01_022024B8 + .word ov01_022024FC + .word sub_0204C83C + .word sub_02047E40 + .word sub_02047778 + .word sub_02047E54 + .word sub_02047E64 + .word sub_02047E7C + .word sub_02047E8C + .word sub_02047E9C + .word ov01_02202510 + .word sub_02047EB4 + .word sub_02047EC4 + .word sub_02047F14 + .word ov01_022025A8 + .word ov01_022025EC + .word sub_0204E4E0 + .word sub_0204E528 + .word sub_02047F54 + .word sub_02047F84 + .word sub_02047FB4 + .word sub_02047FD4 + .word sub_02048004 + .word sub_020482F4 + .word sub_0204839C + .word ov01_02202834 + .word sub_0204802C + .word sub_02047A7C + .word ov01_02202908 + .word sub_02043598 + .word sub_02041AC4 + .word sub_02041AE4 + .word sub_02048CBC + .word sub_02048CF4 + .word sub_02048D2C + .word sub_02048D74 + .word sub_02048DBC + .word sub_02048DF0 + .word sub_02048E28 + .word sub_02048E60 + .word sub_02048E98 + .word sub_02048EB8 diff --git a/asm/unk_0202D938.s b/asm/unk_0202D938.s index 06c516928..608a76a51 100644 --- a/asm/unk_0202D938.s +++ b/asm/unk_0202D938.s @@ -37,44123 +37,3 @@ sub_0202D95C: ; 0x0202D95C nop _0202D964: .word SavArray_get thumb_func_end sub_0202D95C - - thumb_func_start sub_0202D968 -sub_0202D968: ; 0x0202D968 - mov r0, #0x68 - bx lr - thumb_func_end sub_0202D968 - - thumb_func_start sub_0202D96C -sub_0202D96C: ; 0x0202D96C - push {r4, lr} - add r4, r0, #0 - mov r1, #0 - mov r2, #0x68 - bl memset - bl MTRandom - str r0, [r4] - bl MTRandom - str r0, [r4, #4] - add r0, r4, #0 - mov r1, #0 - add r0, #0x64 - strb r1, [r0] - add r0, r4, #0 - add r0, #0x65 - strb r1, [r0] - add r0, r4, #0 - add r0, #0x66 - strb r1, [r0] - add r4, #0x67 - strb r1, [r4] - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0202D96C - - thumb_func_start sub_0202D9A0 -sub_0202D9A0: ; 0x0202D9A0 - str r1, [r0] - str r1, [r0, #4] - bx lr - .balign 4, 0 - thumb_func_end sub_0202D9A0 - - thumb_func_start sub_0202D9A8 -sub_0202D9A8: ; 0x0202D9A8 - push {r3, lr} - cmp r1, #1 - beq _0202D9B4 - cmp r1, #2 - beq _0202D9B8 - b _0202D9BC -_0202D9B4: - ldr r0, [r0] - pop {r3, pc} -_0202D9B8: - ldr r0, [r0, #4] - pop {r3, pc} -_0202D9BC: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} - thumb_func_end sub_0202D9A8 - - thumb_func_start sub_0202D9C4 -sub_0202D9C4: ; 0x0202D9C4 - ldr r3, _0202D9CC ; =SavArray_get - mov r1, #0x15 - bx r3 - nop -_0202D9CC: .word SavArray_get - thumb_func_end sub_0202D9C4 - - thumb_func_start sub_0202D9D0 -sub_0202D9D0: ; 0x0202D9D0 - push {r3, lr} - bl sub_0202D9C4 - mov r1, #1 - add r0, #0x64 - strb r1, [r0] - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0202D9D0 - - thumb_func_start sub_0202D9E0 -sub_0202D9E0: ; 0x0202D9E0 - add r0, #0x64 - ldrb r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202D9E0 - - thumb_func_start sub_0202D9E8 -sub_0202D9E8: ; 0x0202D9E8 - ldr r2, [r0, #8] - cmp r2, r1 - beq _0202D9F2 - str r2, [r0, #0xc] - str r1, [r0, #8] -_0202D9F2: - bx lr - thumb_func_end sub_0202D9E8 - - thumb_func_start sub_0202D9F4 -sub_0202D9F4: ; 0x0202D9F4 - ldr r0, [r0, #0xc] - bx lr - thumb_func_end sub_0202D9F4 - - thumb_func_start sub_0202D9F8 -sub_0202D9F8: ; 0x0202D9F8 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #4 - blo _0202DA06 - bl GF_AssertFail -_0202DA06: - add r0, r5, r4 - add r0, #0x60 - ldrb r0, [r0] - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0202D9F8 - - thumb_func_start sub_0202DA10 -sub_0202DA10: ; 0x0202DA10 - push {r4, r5, r6, lr} - add r4, r1, #0 - add r5, r0, #0 - add r6, r2, #0 - cmp r4, #4 - blo _0202DA20 - bl GF_AssertFail -_0202DA20: - add r0, r5, r4 - add r0, #0x60 - strb r6, [r0] - pop {r4, r5, r6, pc} - thumb_func_end sub_0202DA10 - - thumb_func_start sub_0202DA28 -sub_0202DA28: ; 0x0202DA28 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #4 - blo _0202DA36 - bl GF_AssertFail -_0202DA36: - mov r0, #0x14 - mul r0, r4 - add r0, r5, r0 - add r0, #0x22 - ldrb r0, [r0] - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0202DA28 - - thumb_func_start sub_0202DA44 -sub_0202DA44: ; 0x0202DA44 - ldr r2, [r0] - mov r1, #0x14 - mov r0, #0 -_0202DA4A: - strb r0, [r2] - add r2, r2, #1 - sub r1, r1, #1 - bne _0202DA4A - bx lr - thumb_func_end sub_0202DA44 - - thumb_func_start sub_0202DA54 -sub_0202DA54: ; 0x0202DA54 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #4 - blo _0202DA62 - bl GF_AssertFail -_0202DA62: - mov r0, #0x14 - add r5, #0x10 - mul r0, r4 - add r0, r5, r0 - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DA54 - - thumb_func_start sub_0202DA6C -sub_0202DA6C: ; 0x0202DA6C - push {r3, lr} - cmp r1, #8 - bhi _0202DAB0 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0202DA7E: ; jump table - .short _0202DAB0 - _0202DA7E - 2 ; case 0 - .short _0202DA90 - _0202DA7E - 2 ; case 1 - .short _0202DA94 - _0202DA7E - 2 ; case 2 - .short _0202DA98 - _0202DA7E - 2 ; case 3 - .short _0202DA9C - _0202DA7E - 2 ; case 4 - .short _0202DAA0 - _0202DA7E - 2 ; case 5 - .short _0202DAA4 - _0202DA7E - 2 ; case 6 - .short _0202DAA8 - _0202DA7E - 2 ; case 7 - .short _0202DAAC - _0202DA7E - 2 ; case 8 -_0202DA90: - ldr r0, [r0] - pop {r3, pc} -_0202DA94: - ldr r0, [r0, #4] - pop {r3, pc} -_0202DA98: - ldr r0, [r0, #8] - pop {r3, pc} -_0202DA9C: - ldrh r0, [r0, #0xc] - pop {r3, pc} -_0202DAA0: - ldrh r0, [r0, #0xe] - pop {r3, pc} -_0202DAA4: - ldrb r0, [r0, #0x10] - pop {r3, pc} -_0202DAA8: - ldrb r0, [r0, #0x11] - pop {r3, pc} -_0202DAAC: - ldrb r0, [r0, #0x12] - pop {r3, pc} -_0202DAB0: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} - thumb_func_end sub_0202DA6C - - thumb_func_start sub_0202DAB8 -sub_0202DAB8: ; 0x0202DAB8 - push {r3, lr} - cmp r1, #8 - bhi _0202DAFC - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0202DACA: ; jump table - .short _0202DAFC - _0202DACA - 2 ; case 0 - .short _0202DADC - _0202DACA - 2 ; case 1 - .short _0202DAE0 - _0202DACA - 2 ; case 2 - .short _0202DAE4 - _0202DACA - 2 ; case 3 - .short _0202DAE8 - _0202DACA - 2 ; case 4 - .short _0202DAEC - _0202DACA - 2 ; case 5 - .short _0202DAF0 - _0202DACA - 2 ; case 6 - .short _0202DAF4 - _0202DACA - 2 ; case 7 - .short _0202DAF8 - _0202DACA - 2 ; case 8 -_0202DADC: - str r2, [r0] - pop {r3, pc} -_0202DAE0: - str r2, [r0, #4] - pop {r3, pc} -_0202DAE4: - str r2, [r0, #8] - pop {r3, pc} -_0202DAE8: - strh r2, [r0, #0xc] - pop {r3, pc} -_0202DAEC: - strh r2, [r0, #0xe] - pop {r3, pc} -_0202DAF0: - strb r2, [r0, #0x10] - pop {r3, pc} -_0202DAF4: - strb r2, [r0, #0x11] - pop {r3, pc} -_0202DAF8: - strb r2, [r0, #0x12] - pop {r3, pc} -_0202DAFC: - bl GF_AssertFail - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0202DAB8 - - thumb_func_start sub_0202DB04 -sub_0202DB04: ; 0x0202DB04 - add r0, #0x65 - bx lr - thumb_func_end sub_0202DB04 - - thumb_func_start sub_0202DB08 -sub_0202DB08: ; 0x0202DB08 - add r0, #0x65 - ldrb r0, [r0] - cmp r0, #0 - bne _0202DB14 - mov r0, #1 - bx lr -_0202DB14: - mov r0, #0 - bx lr - thumb_func_end sub_0202DB08 - - thumb_func_start sub_0202DB18 -sub_0202DB18: ; 0x0202DB18 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #2 - bls _0202DB26 - bl GF_AssertFail -_0202DB26: - add r5, #0x67 - strb r4, [r5] - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DB18 - - thumb_func_start sub_0202DB2C -sub_0202DB2C: ; 0x0202DB2C - add r0, #0x67 - ldrb r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202DB2C - - thumb_func_start sub_0202DB34 -sub_0202DB34: ; 0x0202DB34 - ldr r3, _0202DB3C ; =SavArray_get - mov r1, #0x16 - bx r3 - nop -_0202DB3C: .word SavArray_get - thumb_func_end sub_0202DB34 - - thumb_func_start sub_0202DB40 -sub_0202DB40: ; 0x0202DB40 - mov r0, #0xf8 - bx lr - thumb_func_end sub_0202DB40 - - thumb_func_start sub_0202DB44 -sub_0202DB44: ; 0x0202DB44 - ldr r3, _0202DB50 ; =MIi_CpuClearFast - add r1, r0, #0 - mov r0, #0 - mov r2, #0xf8 - bx r3 - nop -_0202DB50: .word MIi_CpuClearFast - thumb_func_end sub_0202DB44 - - thumb_func_start sub_0202DB54 -sub_0202DB54: ; 0x0202DB54 - add r0, #0xec - ldrh r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202DB54 - - thumb_func_start sub_0202DB5C -sub_0202DB5C: ; 0x0202DB5C - add r0, #0xec - strh r1, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202DB5C - - thumb_func_start sub_0202DB64 -sub_0202DB64: ; 0x0202DB64 - ldr r3, _0202DB6C ; =sub_020D48B4 - mov r2, #0xec - bx r3 - nop -_0202DB6C: .word sub_020D48B4 - thumb_func_end sub_0202DB64 - - thumb_func_start sub_0202DB70 -sub_0202DB70: ; 0x0202DB70 - ldr r3, _0202DB7C ; =sub_020D48B4 - add r2, r0, #0 - add r0, r1, #0 - add r1, r2, #0 - mov r2, #0xec - bx r3 - .balign 4, 0 -_0202DB7C: .word sub_020D48B4 - thumb_func_end sub_0202DB70 - - thumb_func_start sub_0202DB80 -sub_0202DB80: ; 0x0202DB80 - add r0, #0xf0 - ldr r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202DB80 - - thumb_func_start sub_0202DB88 -sub_0202DB88: ; 0x0202DB88 - add r0, #0xf0 - str r1, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202DB88 - - thumb_func_start sub_0202DB90 -sub_0202DB90: ; 0x0202DB90 - add r0, #0xf4 - ldr r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202DB90 - - thumb_func_start sub_0202DB98 -sub_0202DB98: ; 0x0202DB98 - add r0, #0xf4 - str r1, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202DB98 - - thumb_func_start sub_0202DBA0 -sub_0202DBA0: ; 0x0202DBA0 - add r0, #0xee - ldrh r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202DBA0 - - thumb_func_start sub_0202DBA8 -sub_0202DBA8: ; 0x0202DBA8 - mov r0, #0x5a - lsl r0, r0, #6 - bx lr - .balign 4, 0 - thumb_func_end sub_0202DBA8 - - thumb_func_start sub_0202DBB0 -sub_0202DBB0: ; 0x0202DBB0 - ldr r3, _0202DBB8 ; =sub_0202893C - mov r0, #0x1b - bx r3 - nop -_0202DBB8: .word sub_0202893C - thumb_func_end sub_0202DBB0 - - thumb_func_start sub_0202DBBC -sub_0202DBBC: ; 0x0202DBBC - cmp r0, #0 - beq _0202DBC8 - cmp r0, #0x10 - bhs _0202DBC8 - mov r0, #1 - bx lr -_0202DBC8: - mov r0, #0 - bx lr - thumb_func_end sub_0202DBBC - - thumb_func_start sub_0202DBCC -sub_0202DBCC: ; 0x0202DBCC - push {r3, r4, r5, lr} - cmp r1, #0 - blt _0202DBF0 - cmp r1, #8 - bge _0202DBF0 - mov r2, #1 - lsl r2, r2, #8 - add r4, r0, r2 - lsl r0, r1, #6 - add r0, r1, r0 - lsl r5, r0, #2 - ldrh r0, [r4, r5] - bl sub_0202DBBC - cmp r0, #0 - beq _0202DBF0 - add r0, r4, r5 - pop {r3, r4, r5, pc} -_0202DBF0: - mov r0, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DBCC - - thumb_func_start sub_0202DBF4 -sub_0202DBF4: ; 0x0202DBF4 - push {r3, r4, r5, lr} - cmp r1, #0 - blt _0202DC1A - cmp r1, #3 - bge _0202DC1A - mov r2, #0x92 - lsl r2, r2, #4 - add r4, r0, r2 - mov r0, #0xd6 - lsl r0, r0, #2 - add r5, r1, #0 - mul r5, r0 - ldrh r0, [r4, r5] - bl sub_0202DBBC - cmp r0, #0 - beq _0202DC24 - add r0, r4, r5 - pop {r3, r4, r5, pc} -_0202DC1A: - cmp r1, #4 - bne _0202DC24 - ldr r1, _0202DC28 ; =0x00001328 - add r0, r0, r1 - pop {r3, r4, r5, pc} -_0202DC24: - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0202DC28: .word 0x00001328 - thumb_func_end sub_0202DBF4 - - thumb_func_start sub_0202DC2C -sub_0202DC2C: ; 0x0202DC2C - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - str r1, [sp, #4] - mov r1, #0 - str r0, [sp] - str r2, [sp, #8] - str r1, [sp, #0xc] - bl sub_0202DE14 - cmp r0, #0 - bne _0202DC48 - add sp, #0x10 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_0202DC48: - mov r7, #0x41 - lsl r7, r7, #2 - ldr r5, [sp] - mov r4, #0 - sub r6, r7, #4 -_0202DC52: - ldrh r0, [r5, r6] - bl sub_0202DBBC - cmp r0, #0 - bne _0202DC94 - lsl r0, r4, #6 - mov r2, #1 - add r0, r4, r0 - lsl r4, r0, #2 - ldr r1, [sp] - lsl r2, r2, #8 - add r1, r1, r2 - ldr r0, [sp, #4] - add r1, r1, r4 - add r2, r2, #4 - bl MIi_CpuCopy8 - ldr r1, _0202DCA8 ; =0x00000102 - ldr r0, [sp] - mov r2, #3 - add r1, r0, r1 - ldrh r0, [r1, r4] - bic r0, r2 - ldr r2, [sp, #8] - lsl r2, r2, #0x10 - lsr r3, r2, #0x10 - mov r2, #3 - and r2, r3 - orr r0, r2 - strh r0, [r1, r4] - mov r0, #1 - str r0, [sp, #0xc] - b _0202DC9C -_0202DC94: - add r4, r4, #1 - add r5, r5, r7 - cmp r4, #8 - blt _0202DC52 -_0202DC9C: - mov r0, #0x1b - bl sub_0202893C - ldr r0, [sp, #0xc] - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0202DCA8: .word 0x00000102 - thumb_func_end sub_0202DC2C - - thumb_func_start sub_0202DCAC -sub_0202DCAC: ; 0x0202DCAC - push {r4, r5, r6, r7, lr} - sub sp, #0xc - str r1, [sp, #4] - mov r1, #0 - str r0, [sp] - str r1, [sp, #8] - bl sub_0202DE3C - cmp r0, #0 - bne _0202DCC6 - add sp, #0xc - mov r0, #0 - pop {r4, r5, r6, r7, pc} -_0202DCC6: - ldr r1, _0202DD44 ; =0x00000152 - ldr r0, [sp, #4] - ldrb r0, [r0, r1] - lsl r0, r0, #0x1c - lsr r0, r0, #0x1f - cmp r0, #1 - bne _0202DCE4 - ldr r0, [sp] - bl sub_0202DE14 - cmp r0, #0 - bne _0202DCE4 - add sp, #0xc - mov r0, #0 - pop {r4, r5, r6, r7, pc} -_0202DCE4: - mov r7, #0xd6 - mov r6, #0x92 - ldr r5, [sp] - mov r4, #0 - lsl r7, r7, #2 - lsl r6, r6, #4 -_0202DCF0: - ldrh r0, [r5, r6] - bl sub_0202DBBC - cmp r0, #0 - bne _0202DD30 - mov r2, #0x92 - ldr r1, [sp] - lsl r2, r2, #4 - add r3, r1, r2 - mov r2, #0xd6 - lsl r2, r2, #2 - add r1, r4, #0 - mul r1, r2 - ldr r0, [sp, #4] - add r1, r3, r1 - bl MIi_CpuCopy8 - ldr r1, _0202DD44 ; =0x00000152 - ldr r0, [sp, #4] - ldrb r0, [r0, r1] - lsl r0, r0, #0x1c - lsr r0, r0, #0x1f - cmp r0, #1 - bne _0202DD2A - ldr r0, [sp] - ldr r1, [sp, #4] - add r2, r4, #0 - bl sub_0202DC2C -_0202DD2A: - mov r0, #1 - str r0, [sp, #8] - b _0202DD38 -_0202DD30: - add r4, r4, #1 - add r5, r5, r7 - cmp r4, #3 - blt _0202DCF0 -_0202DD38: - mov r0, #0x1b - bl sub_0202893C - ldr r0, [sp, #8] - add sp, #0xc - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_0202DD44: .word 0x00000152 - thumb_func_end sub_0202DCAC - - thumb_func_start sub_0202DD48 -sub_0202DD48: ; 0x0202DD48 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, _0202DD78 ; =0x00001328 - add r4, r1, #0 - ldrh r0, [r5, r0] - bl sub_0202DBBC - cmp r0, #1 - bne _0202DD5E - mov r0, #0 - pop {r3, r4, r5, pc} -_0202DD5E: - ldr r1, _0202DD78 ; =0x00001328 - mov r2, #0xd6 - add r0, r4, #0 - add r1, r5, r1 - lsl r2, r2, #2 - bl MIi_CpuCopy8 - mov r0, #0x1b - bl sub_0202893C - mov r0, #0 - pop {r3, r4, r5, pc} - nop -_0202DD78: .word 0x00001328 - thumb_func_end sub_0202DD48 - - thumb_func_start sub_0202DD7C -sub_0202DD7C: ; 0x0202DD7C - push {r3, r4, r5, lr} - add r5, r1, #0 - add r4, r0, #0 - cmp r5, #8 - blt _0202DD8A - bl GF_AssertFail -_0202DD8A: - lsl r0, r5, #6 - add r0, r5, r0 - lsl r0, r0, #2 - mov r1, #1 - mov r3, #0 - add r2, r4, r0 - lsl r1, r1, #8 - strh r3, [r2, r1] - add r1, r1, #2 - add r3, r4, r1 - ldrh r2, [r3, r0] - mov r1, #3 - bic r2, r1 - strh r2, [r3, r0] - mov r0, #0x1b - bl sub_0202893C - mov r0, #1 - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DD7C - - thumb_func_start sub_0202DDB0 -sub_0202DDB0: ; 0x0202DDB0 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #3 - blt _0202DDBE - bl GF_AssertFail -_0202DDBE: - mov r0, #0xd6 - lsl r0, r0, #2 - mul r0, r4 - add r2, r5, r0 - mov r0, #0x92 - mov r1, #0 - lsl r0, r0, #4 - strh r1, [r2, r0] - mov r1, #0xa7 - lsl r1, r1, #4 - ldrh r1, [r2, r1] - add r0, r5, #0 - bl sub_0202DFDC - add r0, r5, #0 - add r1, r4, #0 - bl sub_0202DF38 - mov r0, #0x1b - bl sub_0202893C - mov r0, #1 - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DDB0 - - thumb_func_start sub_0202DDEC -sub_0202DDEC: ; 0x0202DDEC - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #3 - blt _0202DDFA - bl GF_AssertFail -_0202DDFA: - mov r0, #0xd6 - lsl r0, r0, #2 - mul r0, r4 - add r1, r5, r0 - mov r0, #0x92 - mov r2, #0 - lsl r0, r0, #4 - strh r2, [r1, r0] - mov r0, #0x1b - bl sub_0202893C - mov r0, #1 - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DDEC - - thumb_func_start sub_0202DE14 -sub_0202DE14: ; 0x0202DE14 - push {r3, r4, r5, r6, r7, lr} - mov r7, #0x41 - lsl r7, r7, #2 - add r5, r0, #0 - mov r4, #0 - sub r6, r7, #4 -_0202DE20: - ldrh r0, [r5, r6] - bl sub_0202DBBC - cmp r0, #0 - bne _0202DE2E - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0202DE2E: - add r4, r4, #1 - add r5, r5, r7 - cmp r4, #8 - blt _0202DE20 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0202DE14 - - thumb_func_start sub_0202DE3C -sub_0202DE3C: ; 0x0202DE3C - push {r3, r4, r5, r6, r7, lr} - mov r7, #0xd6 - mov r6, #0x92 - add r5, r0, #0 - mov r4, #0 - lsl r7, r7, #2 - lsl r6, r6, #4 -_0202DE4A: - ldrh r0, [r5, r6] - bl sub_0202DBBC - cmp r0, #0 - bne _0202DE58 - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0202DE58: - add r4, r4, #1 - add r5, r5, r7 - cmp r4, #3 - blt _0202DE4A - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0202DE3C - - thumb_func_start sub_0202DE64 -sub_0202DE64: ; 0x0202DE64 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #8 - blt _0202DE72 - bl GF_AssertFail -_0202DE72: - lsl r0, r4, #6 - add r0, r4, r0 - lsl r0, r0, #2 - add r1, r5, r0 - mov r0, #1 - lsl r0, r0, #8 - ldrh r0, [r1, r0] - bl sub_0202DBBC - cmp r0, #0 - beq _0202DE8C - mov r0, #1 - pop {r3, r4, r5, pc} -_0202DE8C: - mov r0, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DE64 - - thumb_func_start sub_0202DE90 -sub_0202DE90: ; 0x0202DE90 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #3 - blt _0202DE9E - bl GF_AssertFail -_0202DE9E: - mov r0, #0xd6 - lsl r0, r0, #2 - mul r0, r4 - add r1, r5, r0 - mov r0, #0x92 - lsl r0, r0, #4 - ldrh r0, [r1, r0] - bl sub_0202DBBC - cmp r0, #0 - beq _0202DEB8 - mov r0, #1 - pop {r3, r4, r5, pc} -_0202DEB8: - mov r0, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DE90 - - thumb_func_start sub_0202DEBC -sub_0202DEBC: ; 0x0202DEBC - push {r3, lr} - ldr r1, _0202DED4 ; =0x00001328 - ldrh r0, [r0, r1] - bl sub_0202DBBC - cmp r0, #0 - beq _0202DECE - mov r0, #1 - pop {r3, pc} -_0202DECE: - mov r0, #0 - pop {r3, pc} - nop -_0202DED4: .word 0x00001328 - thumb_func_end sub_0202DEBC - - thumb_func_start sub_0202DED8 -sub_0202DED8: ; 0x0202DED8 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r4, #0 -_0202DEDE: - add r0, r5, #0 - add r1, r4, #0 - bl sub_0202DE90 - cmp r0, #1 - bne _0202DEEE - mov r0, #1 - pop {r3, r4, r5, pc} -_0202DEEE: - add r4, r4, #1 - cmp r4, #3 - blt _0202DEDE - mov r0, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DED8 - - thumb_func_start sub_0202DEF8 -sub_0202DEF8: ; 0x0202DEF8 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - ldr r0, _0202DF34 ; =0x00000102 - add r7, r1, #0 - mov r6, #0 - add r4, r5, r0 -_0202DF04: - mov r0, #1 - lsl r0, r0, #8 - ldrh r0, [r5, r0] - bl sub_0202DBBC - cmp r0, #0 - beq _0202DF20 - ldrh r0, [r4] - lsl r0, r0, #0x1e - lsr r0, r0, #0x1e - cmp r7, r0 - bne _0202DF20 - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0202DF20: - mov r0, #0x41 - lsl r0, r0, #2 - add r6, r6, #1 - add r5, r5, r0 - add r4, r4, r0 - cmp r6, #8 - blt _0202DF04 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_0202DF34: .word 0x00000102 - thumb_func_end sub_0202DEF8 - - thumb_func_start sub_0202DF38 -sub_0202DF38: ; 0x0202DF38 - push {r3, r4, r5, r6, r7, lr} - add r7, r1, #0 - ldr r1, _0202DF78 ; =0x00000102 - str r0, [sp] - mov r6, #0 - add r4, r0, #0 - add r5, r0, r1 -_0202DF46: - mov r0, #1 - lsl r0, r0, #8 - ldrh r0, [r4, r0] - bl sub_0202DBBC - cmp r0, #0 - beq _0202DF68 - ldrh r0, [r5] - lsl r0, r0, #0x1e - lsr r0, r0, #0x1e - cmp r7, r0 - bne _0202DF68 - ldr r0, [sp] - add r1, r6, #0 - bl sub_0202DD7C - pop {r3, r4, r5, r6, r7, pc} -_0202DF68: - mov r0, #0x41 - lsl r0, r0, #2 - add r6, r6, #1 - add r4, r4, r0 - add r5, r5, r0 - cmp r6, #8 - blt _0202DF46 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0202DF78: .word 0x00000102 - thumb_func_end sub_0202DF38 - - thumb_func_start sub_0202DF7C -sub_0202DF7C: ; 0x0202DF7C - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #2 - add r4, r1, #0 - lsl r0, r0, #0xa - cmp r4, r0 - blt _0202DF8E - bl GF_AssertFail -_0202DF8E: - mov r0, #1 - mov r1, #7 - add r2, r4, #0 - and r2, r1 - add r1, r0, #0 - lsl r1, r2 - asr r2, r4, #2 - lsr r2, r2, #0x1d - add r2, r4, r2 - asr r2, r2, #3 - ldrb r2, [r5, r2] - tst r1, r2 - bne _0202DFAA - mov r0, #0 -_0202DFAA: - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DF7C - - thumb_func_start sub_0202DFAC -sub_0202DFAC: ; 0x0202DFAC - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #2 - add r4, r1, #0 - lsl r0, r0, #0xa - cmp r4, r0 - blt _0202DFBE - bl GF_AssertFail -_0202DFBE: - asr r0, r4, #2 - lsr r0, r0, #0x1d - add r0, r4, r0 - asr r1, r0, #3 - mov r2, #7 - ldrb r0, [r5, r1] - mov r3, #1 - and r2, r4 - lsl r3, r2 - orr r0, r3 - strb r0, [r5, r1] - mov r0, #0x1b - bl sub_0202893C - pop {r3, r4, r5, pc} - thumb_func_end sub_0202DFAC - - thumb_func_start sub_0202DFDC -sub_0202DFDC: ; 0x0202DFDC - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - mov r1, #1 - mov r0, #7 - and r0, r4 - add r2, r1, #0 - lsl r2, r0 - mvn r0, r2 - lsl r0, r0, #0x18 - lsr r6, r0, #0x18 - lsl r0, r1, #0xb - cmp r4, r0 - blt _0202DFFC - bl GF_AssertFail -_0202DFFC: - asr r0, r4, #2 - lsr r0, r0, #0x1d - add r0, r4, r0 - asr r1, r0, #3 - ldrb r0, [r5, r1] - and r0, r6 - strb r0, [r5, r1] - mov r0, #0x1b - bl sub_0202893C - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0202DFDC - - thumb_func_start sub_0202E014 -sub_0202E014: ; 0x0202E014 - ldr r3, _0202E01C ; =sub_0202DF7C - ldr r1, _0202E020 ; =0x000007FF - bx r3 - nop -_0202E01C: .word sub_0202DF7C -_0202E020: .word 0x000007FF - thumb_func_end sub_0202E014 - - thumb_func_start sub_0202E024 -sub_0202E024: ; 0x0202E024 - ldr r3, _0202E02C ; =sub_0202DFAC - ldr r1, _0202E030 ; =0x000007FF - bx r3 - nop -_0202E02C: .word sub_0202DFAC -_0202E030: .word 0x000007FF - thumb_func_end sub_0202E024 - - thumb_func_start sub_0202E034 -sub_0202E034: ; 0x0202E034 - push {r3, lr} - ldr r1, _0202E050 ; =0x021D2AF4 - ldr r1, [r1] - cmp r1, #0 - bne _0202E046 - bl sub_020270E4 - ldr r1, _0202E050 ; =0x021D2AF4 - str r0, [r1] -_0202E046: - mov r0, #0x1b - bl sub_0202893C - pop {r3, pc} - nop -_0202E050: .word 0x021D2AF4 - thumb_func_end sub_0202E034 - - thumb_func_start sub_0202E054 -sub_0202E054: ; 0x0202E054 - ldr r0, _0202E064 ; =0x021D2AF4 - ldr r1, [r0] - cmp r1, #0 - beq _0202E060 - mov r1, #0 - str r1, [r0] -_0202E060: - bx lr - nop -_0202E064: .word 0x021D2AF4 - thumb_func_end sub_0202E054 - - thumb_func_start sub_0202E068 -sub_0202E068: ; 0x0202E068 - push {r3, r4, r5, lr} - ldr r4, _0202E08C ; =0x021D2AF4 - mov r5, #0 -_0202E06E: - ldr r0, [r4] - add r1, r5, #0 - bl sub_0202DE64 - cmp r0, #1 - bne _0202E07E - add r0, r5, #0 - pop {r3, r4, r5, pc} -_0202E07E: - add r5, r5, #1 - cmp r5, #8 - blt _0202E06E - mov r0, #0 - mvn r0, r0 - pop {r3, r4, r5, pc} - nop -_0202E08C: .word 0x021D2AF4 - thumb_func_end sub_0202E068 - - thumb_func_start sub_0202E090 -sub_0202E090: ; 0x0202E090 - push {r3, lr} - add r1, r0, #0 - ldr r0, _0202E0A8 ; =0x021D2AF4 - ldr r0, [r0] - bl sub_0202DBCC - cmp r0, #0 - beq _0202E0A4 - ldrh r0, [r0] - pop {r3, pc} -_0202E0A4: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 -_0202E0A8: .word 0x021D2AF4 - thumb_func_end sub_0202E090 - - thumb_func_start sub_0202E0AC -sub_0202E0AC: ; 0x0202E0AC - push {r3, lr} - add r1, r0, #0 - ldr r0, _0202E0C4 ; =0x021D2AF4 - ldr r0, [r0] - bl sub_0202DBCC - cmp r0, #0 - beq _0202E0C0 - add r0, r0, #4 - pop {r3, pc} -_0202E0C0: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 -_0202E0C4: .word 0x021D2AF4 - thumb_func_end sub_0202E0AC - - thumb_func_start sub_0202E0C8 -sub_0202E0C8: ; 0x0202E0C8 - add r1, r0, #0 - ldr r0, _0202E0D4 ; =0x021D2AF4 - ldr r3, _0202E0D8 ; =sub_0202DD7C - ldr r0, [r0] - bx r3 - nop -_0202E0D4: .word 0x021D2AF4 -_0202E0D8: .word sub_0202DD7C - thumb_func_end sub_0202E0C8 - - thumb_func_start sub_0202E0DC -sub_0202E0DC: ; 0x0202E0DC - ldr r0, _0202E0E0 ; =0x00002AB0 - bx lr - .balign 4, 0 -_0202E0E0: .word 0x00002AB0 - thumb_func_end sub_0202E0DC - - thumb_func_start sub_0202E0E4 -sub_0202E0E4: ; 0x0202E0E4 - ldr r3, _0202E0F0 ; =sub_020D47EC - add r1, r0, #0 - mov r0, #0 - ldr r2, _0202E0F4 ; =0x00002AB0 - bx r3 - nop -_0202E0F0: .word sub_020D47EC -_0202E0F4: .word 0x00002AB0 - thumb_func_end sub_0202E0E4 - - thumb_func_start sub_0202E0F8 -sub_0202E0F8: ; 0x0202E0F8 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x18 - str r0, [sp] - str r1, [sp, #4] - str r2, [sp, #8] - cmp r0, #0 - bne _0202E10A - bl GF_AssertFail -_0202E10A: - ldr r1, _0202E288 ; =0x00002AA8 - ldr r0, [sp] - ldr r0, [r0, r1] - cmp r0, #0x1e - blo _0202E118 - bl GF_AssertFail -_0202E118: - ldr r1, _0202E28C ; =0x00002AAC - ldr r0, [sp] - ldr r2, [r0, r1] - ldr r0, _0202E290 ; =0x0000270F - cmp r2, r0 - blo _0202E126 - b _0202E284 -_0202E126: - ldr r0, [sp] - sub r1, r1, #4 - ldr r1, [r0, r1] - mov r0, #0x5b - lsl r0, r0, #2 - add r2, r1, #0 - mul r2, r0 - ldr r0, [sp] - add r0, r0, r2 - str r0, [sp, #0x14] - ldr r0, [sp, #4] - bl GetPartyCount - str r0, [sp, #0x10] - mov r0, #0xb - mov r1, #0 - bl String_ctor - mov r2, #0x5a - add r6, r0, #0 - ldr r1, [sp, #0x14] - mov r0, #0 - lsl r2, r2, #2 - bl sub_020D4790 - ldr r0, [sp, #0x10] - mov r7, #0 - cmp r0, #0 - ble _0202E236 - ldr r5, [sp, #0x14] -_0202E162: - ldr r0, [sp, #4] - add r1, r7, #0 - bl GetPartyMonByIndex - add r4, r0, #0 - bl sub_0206DD40 - str r0, [sp, #0xc] - add r0, r4, #0 - mov r1, #0x4c - mov r2, #0 - bl GetMonData - cmp r0, #0 - bne _0202E226 - add r0, r4, #0 - mov r1, #5 - mov r2, #0 - bl GetMonData - strh r0, [r5] - add r0, r4, #0 - mov r1, #0xa1 - mov r2, #0 - bl GetMonData - strb r0, [r5, #2] - add r0, r4, #0 - mov r1, #0x70 - mov r2, #0 - bl GetMonData - mov r1, #0 - strb r0, [r5, #3] - add r0, r4, #0 - add r2, r1, #0 - bl GetMonData - str r0, [r5, #4] - add r0, r4, #0 - mov r1, #7 - mov r2, #0 - bl GetMonData - str r0, [r5, #8] - add r0, r4, #0 - mov r1, #0x36 - mov r2, #0 - bl GetMonData - strh r0, [r5, #0x32] - add r0, r4, #0 - mov r1, #0x37 - mov r2, #0 - bl GetMonData - strh r0, [r5, #0x34] - add r0, r4, #0 - mov r1, #0x38 - mov r2, #0 - bl GetMonData - strh r0, [r5, #0x36] - add r0, r4, #0 - mov r1, #0x39 - mov r2, #0 - bl GetMonData - strh r0, [r5, #0x38] - cmp r6, #0 - beq _0202E21E - add r0, r4, #0 - mov r1, #0x77 - add r2, r6, #0 - bl GetMonData - add r1, r5, #0 - add r0, r6, #0 - add r1, #0xc - mov r2, #0xb - bl CopyStringToU16Array - add r0, r4, #0 - mov r1, #0x91 - add r2, r6, #0 - bl GetMonData - add r1, r5, #0 - add r0, r6, #0 - add r1, #0x22 - mov r2, #8 - bl CopyStringToU16Array - b _0202E224 -_0202E21E: - ldr r0, _0202E294 ; =0x0000FFFF - strh r0, [r5, #0xc] - strh r0, [r5, #0x22] -_0202E224: - add r5, #0x3c -_0202E226: - ldr r1, [sp, #0xc] - add r0, r4, #0 - bl sub_0206DD8C - ldr r0, [sp, #0x10] - add r7, r7, #1 - cmp r7, r0 - blt _0202E162 -_0202E236: - ldr r0, [sp, #8] - mov r1, #0x5a - ldr r2, [r0] - ldr r0, [sp, #0x14] - lsl r1, r1, #2 - strh r2, [r0, r1] - ldr r0, [sp, #8] - add r2, r1, #2 - ldr r3, [r0, #4] - ldr r0, [sp, #0x14] - add r1, r1, #3 - strb r3, [r0, r2] - ldr r0, [sp, #8] - ldr r2, [r0, #8] - ldr r0, [sp, #0x14] - strb r2, [r0, r1] - ldr r1, _0202E288 ; =0x00002AA8 - ldr r0, [sp] - ldr r0, [r0, r1] - add r2, r0, #1 - ldr r0, [sp] - str r2, [r0, r1] - ldr r0, [r0, r1] - cmp r0, #0x1e - blo _0202E26E - ldr r0, [sp] - mov r2, #0 - str r2, [r0, r1] -_0202E26E: - ldr r1, _0202E28C ; =0x00002AAC - ldr r0, [sp] - ldr r0, [r0, r1] - add r2, r0, #1 - ldr r0, [sp] - cmp r6, #0 - str r2, [r0, r1] - beq _0202E284 - add r0, r6, #0 - bl String_dtor -_0202E284: - add sp, #0x18 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0202E288: .word 0x00002AA8 -_0202E28C: .word 0x00002AAC -_0202E290: .word 0x0000270F -_0202E294: .word 0x0000FFFF - thumb_func_end sub_0202E0F8 - - thumb_func_start sub_0202E298 -sub_0202E298: ; 0x0202E298 - push {r4, lr} - add r4, r0, #0 - bne _0202E2A2 - bl GF_AssertFail -_0202E2A2: - ldr r0, _0202E2BC ; =0x00002AA8 - ldr r0, [r4, r0] - cmp r0, #0x1e - blo _0202E2AE - bl GF_AssertFail -_0202E2AE: - ldr r0, _0202E2C0 ; =0x00002AAC - ldr r0, [r4, r0] - cmp r0, #0x1e - blo _0202E2B8 - mov r0, #0x1e -_0202E2B8: - pop {r4, pc} - nop -_0202E2BC: .word 0x00002AA8 -_0202E2C0: .word 0x00002AAC - thumb_func_end sub_0202E298 - - thumb_func_start sub_0202E2C4 -sub_0202E2C4: ; 0x0202E2C4 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - cmp r5, #0 - bne _0202E2D2 - bl GF_AssertFail -_0202E2D2: - ldr r0, _0202E2F0 ; =0x00002AA8 - ldr r0, [r5, r0] - cmp r0, #0x1e - blo _0202E2DE - bl GF_AssertFail -_0202E2DE: - cmp r4, #0x1e - blt _0202E2E6 - bl GF_AssertFail -_0202E2E6: - ldr r0, _0202E2F4 ; =0x00002AAC - ldr r0, [r5, r0] - sub r0, r0, r4 - pop {r3, r4, r5, pc} - nop -_0202E2F0: .word 0x00002AA8 -_0202E2F4: .word 0x00002AAC - thumb_func_end sub_0202E2C4 - - thumb_func_start sub_0202E2F8 -sub_0202E2F8: ; 0x0202E2F8 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - cmp r5, #0 - bne _0202E306 - bl GF_AssertFail -_0202E306: - ldr r0, _0202E340 ; =0x00002AA8 - ldr r0, [r5, r0] - cmp r0, #0x1e - blo _0202E312 - bl GF_AssertFail -_0202E312: - cmp r4, #0x1e - blt _0202E31A - bl GF_AssertFail -_0202E31A: - ldr r0, _0202E340 ; =0x00002AA8 - ldr r0, [r5, r0] - sub r0, r0, #1 - sub r2, r0, r4 - bpl _0202E326 - add r2, #0x1e -_0202E326: - mov r1, #0x5b - lsl r1, r1, #2 - mul r1, r2 - mov r0, #0 - add r2, r5, r1 -_0202E330: - ldrh r1, [r2] - cmp r1, #0 - beq _0202E33E - add r0, r0, #1 - add r2, #0x3c - cmp r0, #6 - blo _0202E330 -_0202E33E: - pop {r3, r4, r5, pc} - .balign 4, 0 -_0202E340: .word 0x00002AA8 - thumb_func_end sub_0202E2F8 - - thumb_func_start sub_0202E344 -sub_0202E344: ; 0x0202E344 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - add r7, r2, #0 - add r4, r3, #0 - cmp r5, #0 - bne _0202E356 - bl GF_AssertFail -_0202E356: - ldr r0, _0202E3C0 ; =0x00002AA8 - ldr r0, [r5, r0] - cmp r0, #0x1e - blo _0202E362 - bl GF_AssertFail -_0202E362: - cmp r6, #0x1e - blt _0202E36A - bl GF_AssertFail -_0202E36A: - ldr r0, _0202E3C0 ; =0x00002AA8 - ldr r0, [r5, r0] - sub r0, r0, #1 - sub r1, r0, r6 - bpl _0202E376 - add r1, #0x1e -_0202E376: - mov r0, #0x5b - lsl r0, r0, #2 - mul r0, r1 - add r1, r5, r0 - mov r0, #0x3c - mul r0, r7 - add r5, r1, r0 - ldrh r0, [r1, r0] - add r1, r5, #0 - add r1, #0xc - strh r0, [r4, #0x10] - ldrb r0, [r5, #2] - strb r0, [r4, #0x12] - ldr r0, [r5, #4] - str r0, [r4, #8] - ldr r0, [r5, #8] - str r0, [r4, #0xc] - ldrb r0, [r5, #3] - strb r0, [r4, #0x13] - ldr r0, [r4] - bl CopyU16ArrayToString - add r1, r5, #0 - ldr r0, [r4, #4] - add r1, #0x22 - bl CopyU16ArrayToString - mov r1, #0 -_0202E3AE: - ldrh r0, [r5, #0x32] - add r1, r1, #1 - add r5, r5, #2 - strh r0, [r4, #0x14] - add r4, r4, #2 - cmp r1, #4 - blt _0202E3AE - pop {r3, r4, r5, r6, r7, pc} - nop -_0202E3C0: .word 0x00002AA8 - thumb_func_end sub_0202E344 - - thumb_func_start sub_0202E3C4 -sub_0202E3C4: ; 0x0202E3C4 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r6, r1, #0 - add r4, r2, #0 - cmp r5, #0 - bne _0202E3D4 - bl GF_AssertFail -_0202E3D4: - ldr r0, _0202E418 ; =0x00002AA8 - ldr r0, [r5, r0] - cmp r0, #0x1e - blo _0202E3E0 - bl GF_AssertFail -_0202E3E0: - cmp r6, #0x1e - blt _0202E3E8 - bl GF_AssertFail -_0202E3E8: - ldr r0, _0202E418 ; =0x00002AA8 - ldr r0, [r5, r0] - sub r0, r0, #1 - sub r2, r0, r6 - bpl _0202E3F4 - add r2, #0x1e -_0202E3F4: - mov r0, #0x5b - lsl r0, r0, #2 - add r1, r2, #0 - mul r1, r0 - add r2, r5, r1 - sub r1, r0, #4 - ldrh r1, [r2, r1] - str r1, [r4] - sub r1, r0, #2 - ldrb r1, [r2, r1] - sub r0, r0, #1 - str r1, [r4, #4] - ldrb r0, [r2, r0] - str r0, [r4, #8] - mov r0, #0 - str r0, [r4, #0xc] - pop {r4, r5, r6, pc} - nop -_0202E418: .word 0x00002AA8 - thumb_func_end sub_0202E3C4 - - thumb_func_start sub_0202E41C -sub_0202E41C: ; 0x0202E41C - ldr r0, _0202E420 ; =0x00000BC8 - bx lr - .balign 4, 0 -_0202E420: .word 0x00000BC8 - thumb_func_end sub_0202E41C - - thumb_func_start sub_0202E424 -sub_0202E424: ; 0x0202E424 - push {r3, lr} - ldr r2, _0202E438 ; =0x00000BC8 - add r1, r0, #0 - mov r0, #0 - bl MIi_CpuClearFast - mov r0, #0x17 - bl sub_0202893C - pop {r3, pc} - .balign 4, 0 -_0202E438: .word 0x00000BC8 - thumb_func_end sub_0202E424 - - thumb_func_start sub_0202E43C -sub_0202E43C: ; 0x0202E43C - push {r4, lr} - add r4, r0, #0 - add r1, r4, #0 - mov r0, #0 - add r1, #0xc - mov r2, #0xc0 - bl MIi_CpuClearFast - add r1, r4, #0 - mov r0, #0 - add r1, #0xcc - mov r2, #0xc0 - bl MIi_CpuClearFast - mov r1, #0x63 - lsl r1, r1, #2 - mov r0, #0 - add r1, r4, r1 - mov r2, #0xc0 - bl MIi_CpuClearFast - add r0, r4, #0 - bl sub_0202E474 - mov r0, #0x17 - bl sub_0202893C - pop {r4, pc} - thumb_func_end sub_0202E43C - - thumb_func_start sub_0202E474 -sub_0202E474: ; 0x0202E474 - push {r4, lr} - add r4, r0, #0 - mov r1, #0 - bl sub_0202E48C - add r0, r4, #0 - bl sub_0202E498 - mov r0, #0x17 - bl sub_0202893C - pop {r4, pc} - thumb_func_end sub_0202E474 - - thumb_func_start sub_0202E48C -sub_0202E48C: ; 0x0202E48C - ldr r3, _0202E494 ; =sub_0202893C - strb r1, [r0, #8] - mov r0, #0x17 - bx r3 - .balign 4, 0 -_0202E494: .word sub_0202893C - thumb_func_end sub_0202E48C - - thumb_func_start sub_0202E498 -sub_0202E498: ; 0x0202E498 - mov r2, #0 - add r1, r2, #0 -_0202E49C: - strb r1, [r0, r2] - add r2, r2, #1 - cmp r2, #4 - blt _0202E49C - ldr r3, _0202E4AC ; =sub_0202893C - mov r0, #0x17 - bx r3 - nop -_0202E4AC: .word sub_0202893C - thumb_func_end sub_0202E498 - - thumb_func_start sub_0202E4B0 -sub_0202E4B0: ; 0x0202E4B0 - lsl r1, r0, #1 - ldr r0, _0202E4B8 ; =0x020F684C - ldrb r0, [r0, r1] - bx lr - .balign 4, 0 -_0202E4B8: .word 0x020F684C - thumb_func_end sub_0202E4B0 - - thumb_func_start sub_0202E4BC -sub_0202E4BC: ; 0x0202E4BC - lsl r1, r0, #1 - ldr r0, _0202E4C4 ; =0x020F684D - ldrb r0, [r0, r1] - bx lr - .balign 4, 0 -_0202E4C4: .word 0x020F684D - thumb_func_end sub_0202E4BC - - thumb_func_start sub_0202E4C8 -sub_0202E4C8: ; 0x0202E4C8 - push {r3, lr} - mov r1, #0 - str r1, [r0] - str r1, [r0, #4] - add r0, #8 - mov r1, #8 - bl StringFillEOS - mov r0, #0x18 - bl sub_0202893C - pop {r3, pc} - thumb_func_end sub_0202E4C8 - - thumb_func_start sub_0202E4E0 -sub_0202E4E0: ; 0x0202E4E0 - push {r3, lr} - add r0, #8 - bl StringLength - cmp r0, #0 - beq _0202E4F0 - mov r0, #1 - pop {r3, pc} -_0202E4F0: - mov r0, #0 - pop {r3, pc} - thumb_func_end sub_0202E4E0 - - thumb_func_start sub_0202E4F4 -sub_0202E4F4: ; 0x0202E4F4 - mov r0, #0xea - lsl r0, r0, #4 - bx lr - .balign 4, 0 - thumb_func_end sub_0202E4F4 - - thumb_func_start sub_0202E4FC -sub_0202E4FC: ; 0x0202E4FC - push {r3, r4, r5, r6, r7, lr} - mov r2, #0xea - mov r1, #0 - lsl r2, r2, #4 - add r6, r0, #0 - bl MIi_CpuFill8 - mov r7, #0 -_0202E50C: - mov r4, #0 - add r5, r6, #0 -_0202E510: - add r0, r5, #0 - bl sub_0202E4C8 - add r4, r4, #1 - add r5, #0x18 - cmp r4, #6 - blt _0202E510 - add r7, r7, #1 - add r6, #0x90 - cmp r7, #0x1a - blt _0202E50C - mov r0, #0x18 - bl sub_0202893C - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0202E4FC - - thumb_func_start sub_0202E530 -sub_0202E530: ; 0x0202E530 - push {r4, lr} - add r4, r0, #0 - mov r0, #0x18 - bl sub_02028900 - add r0, r4, #0 - mov r1, #0x18 - bl SavArray_get - pop {r4, pc} - thumb_func_end sub_0202E530 - - thumb_func_start sub_0202E544 -sub_0202E544: ; 0x0202E544 - push {r4, r5, r6, lr} - cmp r2, #6 - blo _0202E552 - blo _0202E58A - bl GF_AssertFail - pop {r4, r5, r6, pc} -_0202E552: - mov r3, #0x90 - mul r3, r1 - add r3, r0, r3 - cmp r2, #5 - bge _0202E57C - mov r0, #0x18 - mul r0, r2 - add r6, r3, r0 -_0202E562: - add r5, r6, #0 - add r5, #0x18 - add r4, r6, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - add r2, r2, #1 - add r6, #0x18 - stmia r4!, {r0, r1} - cmp r2, #5 - blt _0202E562 -_0202E57C: - add r3, #0x78 - add r0, r3, #0 - bl sub_0202E4C8 - mov r0, #0x18 - bl sub_0202893C -_0202E58A: - pop {r4, r5, r6, pc} - thumb_func_end sub_0202E544 - - thumb_func_start sub_0202E58C -sub_0202E58C: ; 0x0202E58C - mov r0, #0x4e - lsl r0, r0, #2 - bx lr - .balign 4, 0 - thumb_func_end sub_0202E58C - - thumb_func_start sub_0202E594 -sub_0202E594: ; 0x0202E594 - push {r4, r5, r6, r7, lr} - sub sp, #0x14 - add r5, r0, #0 - add r6, r1, #0 - bl sub_0202CF54 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203107C - str r0, [sp, #4] - add r0, r6, #0 - mov r1, #0x34 - bl AllocFromHeapAtEnd - ldr r7, _0202E668 ; =0x020F6854 - str r0, [sp] - mov r6, #0 - add r5, r0, #0 -_0202E5BA: - cmp r6, #5 - beq _0202E5C8 - cmp r6, #0xa - beq _0202E5EC - cmp r6, #0xb - beq _0202E606 - b _0202E630 -_0202E5C8: - add r0, r4, #0 - mov r1, #0x10 - bl sub_0202D18C - str r0, [sp, #8] - cmp r0, #0 - beq _0202E5E6 - add r0, r4, #0 - mov r1, #0x1e - bl sub_0202D18C - ldr r1, [sp, #8] - bl _u32_div_f - str r0, [sp, #8] -_0202E5E6: - ldr r0, [sp, #8] - str r0, [r5] - b _0202E650 -_0202E5EC: - add r0, r4, #0 - mov r1, #0x5d - bl sub_0202D18C - str r0, [sp, #0xc] - add r0, r4, #0 - mov r1, #0x5e - bl sub_0202D18C - ldr r1, [sp, #0xc] - add r0, r1, r0 - str r0, [r5] - b _0202E650 -_0202E606: - add r0, r4, #0 - mov r1, #0x5b - bl sub_0202D18C - str r0, [sp, #0x10] - add r0, r4, #0 - mov r1, #0x5c - bl sub_0202D18C - ldr r1, [sp, #0x10] - add r1, r1, r0 - beq _0202E62C - ldr r0, [sp] - ldr r2, [r0, #0x28] - mov r0, #0x64 - mul r0, r2 - bl _u32_div_f - add r1, r0, #0 -_0202E62C: - str r1, [r5] - b _0202E650 -_0202E630: - cmp r6, #0 - blt _0202E646 - cmp r6, #4 - bgt _0202E646 - ldr r0, [sp, #4] - ldr r1, [r7] - mov r2, #0xff - bl sub_020310BC - str r0, [r5] - b _0202E650 -_0202E646: - ldr r1, [r7] - add r0, r4, #0 - bl sub_0202D18C - str r0, [r5] -_0202E650: - add r6, r6, #1 - add r5, r5, #4 - add r7, r7, #4 - cmp r6, #0xd - blt _0202E5BA - mov r0, #0x18 - bl sub_0202893C - ldr r0, [sp] - add sp, #0x14 - pop {r4, r5, r6, r7, pc} - nop -_0202E668: .word 0x020F6854 - thumb_func_end sub_0202E594 - - thumb_func_start sub_0202E66C -sub_0202E66C: ; 0x0202E66C - push {r4, r5, r6, r7, lr} - sub sp, #0xc - add r5, r0, #0 - add r4, r1, #0 - bl Sav2_PlayerData_GetProfileAddr - mov r1, #0x4e - add r6, r0, #0 - add r0, r4, #0 - lsl r1, r1, #2 - bl AllocFromHeapAtEnd - mov r2, #0x4e - mov r1, #0 - lsl r2, r2, #2 - str r0, [sp, #4] - bl MIi_CpuFill8 - add r0, r5, #0 - bl sub_0202C854 - mov r1, #1 - bl sub_0202C7B4 - str r0, [sp, #8] - add r0, r6, #0 - add r1, r4, #0 - bl sub_02028F68 - add r7, r0, #0 - add r0, r5, #0 - add r1, r4, #0 - bl sub_0202E594 - ldr r4, [sp, #4] - str r0, [sp] - mov r6, #0 - add r5, r0, #0 -_0202E6B8: - ldr r0, [sp, #8] - add r1, r4, #0 - str r0, [r4] - add r0, r7, #0 - add r1, #8 - mov r2, #8 - bl CopyStringToU16Array - ldr r0, [r5] - add r6, r6, #1 - str r0, [r4, #4] - add r4, #0x18 - add r5, r5, #4 - cmp r6, #0xd - blt _0202E6B8 - ldr r0, [sp] - bl FreeToHeap - add r0, r7, #0 - bl String_dtor - mov r0, #0x18 - bl sub_0202893C - ldr r0, [sp, #4] - add sp, #0xc - pop {r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0202E66C - - thumb_func_start sub_0202E6F0 -sub_0202E6F0: ; 0x0202E6F0 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r4, #0 -_0202E6F6: - add r0, r5, #0 - bl sub_0202E4C8 - add r4, r4, #1 - add r5, #0x18 - cmp r4, #6 - blt _0202E6F6 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0202E6F0 - - thumb_func_start sub_0202E708 -sub_0202E708: ; 0x0202E708 - push {r3, lr} - ldr r3, [r0] - ldr r2, [r1] - cmp r3, r2 - beq _0202E716 - mov r0, #0 - pop {r3, pc} -_0202E716: - add r0, #8 - add r1, #8 - bl StringNotEqual - cmp r0, #0 - bne _0202E726 - mov r0, #1 - pop {r3, pc} -_0202E726: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0202E708 - - thumb_func_start sub_0202E72C -sub_0202E72C: ; 0x0202E72C - push {r3, r4, r5, r6, r7, lr} - add r6, r0, #0 - ldr r0, [r6, #4] - add r7, r1, #0 - mov r4, #0 - cmp r0, #0 - ble _0202E756 - add r5, r6, #0 -_0202E73C: - ldr r0, [r5, #0xc] - add r1, r7, #0 - bl sub_0202E708 - cmp r0, #0 - beq _0202E74C - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0202E74C: - ldr r0, [r6, #4] - add r4, r4, #1 - add r5, r5, #4 - cmp r4, r0 - blt _0202E73C -_0202E756: - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0202E72C - - thumb_func_start sub_0202E75C -sub_0202E75C: ; 0x0202E75C - push {r4, r5, r6, r7, lr} - sub sp, #0xc - add r6, r1, #0 - add r5, r0, #0 - str r2, [sp] - add r0, r6, #0 - mov r1, #0 - mov r2, #0xe0 - add r4, r3, #0 - bl MIi_CpuFill8 - add r0, sp, #0x10 - ldrb r0, [r0, #0x10] - cmp r0, #0 - bne _0202E7EC - mov r2, #0x90 - add r0, r4, #0 - mul r0, r2 - add r1, r6, #0 - add r0, r5, r0 - add r1, #0x50 - str r0, [sp, #8] - bl MIi_CpuCopy8 - add r1, sp, #0x10 - ldrb r3, [r1, #0x18] - mov r0, #0 - cmp r3, #0 - ble _0202E7B6 - mov r2, #0x18 - ldr r1, [sp, #0x24] - mul r2, r4 -_0202E79C: - ldr r5, [r6, #4] - add r0, r0, #1 - add r4, r5, #0 - add r4, r4, #1 - str r4, [r6, #4] - ldr r4, [r1] - lsl r5, r5, #2 - add r4, r4, r2 - add r5, r6, r5 - str r4, [r5, #0xc] - add r1, r1, #4 - cmp r0, r3 - blt _0202E79C -_0202E7B6: - add r4, r6, #0 - add r4, #0x50 - mov r7, #0 - add r5, r4, #0 -_0202E7BE: - add r0, r4, #0 - bl sub_0202E4E0 - cmp r0, #0 - beq _0202E7E0 - add r0, r6, #0 - add r1, r5, #0 - bl sub_0202E72C - cmp r0, #0 - bne _0202E7E0 - ldr r1, [r6] - add r0, r1, #1 - str r0, [r6] - lsl r0, r1, #2 - add r0, r6, r0 - str r4, [r0, #0x38] -_0202E7E0: - add r7, r7, #1 - add r4, #0x18 - add r5, #0x18 - cmp r7, #6 - blt _0202E7BE - b _0202E880 -_0202E7EC: - add r0, r4, #0 - add r0, #0xd - mov r2, #0x90 - add r1, r0, #0 - mul r1, r2 - add r0, r5, r1 - add r1, r6, #0 - add r1, #0x50 - str r0, [sp, #8] - bl MIi_CpuCopy8 - add r0, sp, #0x10 - ldrb r2, [r0, #0x18] - mov r3, #0 - cmp r2, #0 - ble _0202E83A - mov r1, #0x18 - ldr r0, [sp, #0x24] - mul r1, r4 -_0202E812: - ldr r4, [r0] - ldr r5, [r1, r4] - cmp r5, #0 - beq _0202E832 - ldr r4, [sp] - cmp r4, r5 - bne _0202E832 - ldr r5, [r6, #4] - add r4, r5, #0 - add r4, r4, #1 - str r4, [r6, #4] - ldr r4, [r0] - lsl r5, r5, #2 - add r4, r4, r1 - add r5, r6, r5 - str r4, [r5, #0xc] -_0202E832: - add r3, r3, #1 - add r0, r0, #4 - cmp r3, r2 - blt _0202E812 -_0202E83A: - add r4, r6, #0 - mov r0, #0 - add r4, #0x50 - str r0, [sp, #4] - add r5, r6, #0 - add r7, r4, #0 -_0202E846: - add r0, r4, #0 - bl sub_0202E4E0 - cmp r0, #0 - beq _0202E870 - ldr r1, [r5, #0x50] - ldr r0, [sp] - cmp r0, r1 - bne _0202E870 - add r0, r6, #0 - add r1, r7, #0 - bl sub_0202E72C - cmp r0, #0 - bne _0202E870 - ldr r1, [r6] - add r0, r1, #1 - str r0, [r6] - lsl r0, r1, #2 - add r0, r6, r0 - str r4, [r0, #0x38] -_0202E870: - ldr r0, [sp, #4] - add r4, #0x18 - add r0, r0, #1 - add r5, #0x18 - add r7, #0x18 - str r0, [sp, #4] - cmp r0, #6 - blt _0202E846 -_0202E880: - ldr r1, [r6, #4] - ldr r0, [r6] - mov r2, #0 - add r0, r1, r0 - str r0, [r6, #8] - ldr r0, [r6] - cmp r0, #0 - ble _0202E8A8 - add r1, r6, #0 -_0202E892: - ldr r3, [r6, #4] - ldr r0, [r1, #0x38] - add r3, r2, r3 - lsl r3, r3, #2 - add r3, r6, r3 - str r0, [r3, #0xc] - ldr r0, [r6] - add r2, r2, #1 - add r1, r1, #4 - cmp r2, r0 - blt _0202E892 -_0202E8A8: - mov r0, #0 - mov ip, r0 - ldr r0, [r6, #8] - sub r5, r0, #1 - cmp r5, #0 - ble _0202E8EC - add r3, r6, #0 -_0202E8B6: - mov r0, ip - cmp r5, r0 - ble _0202E8DA - lsl r0, r5, #2 - add r4, r6, r0 -_0202E8C0: - ldr r2, [r4, #0xc] - ldr r7, [r3, #0xc] - ldr r0, [r2, #4] - ldr r1, [r7, #4] - cmp r1, r0 - bhs _0202E8D0 - str r2, [r3, #0xc] - str r7, [r4, #0xc] -_0202E8D0: - sub r5, r5, #1 - mov r0, ip - sub r4, r4, #4 - cmp r5, r0 - bgt _0202E8C0 -_0202E8DA: - mov r0, ip - add r0, r0, #1 - mov ip, r0 - ldr r0, [r6, #8] - add r3, r3, #4 - sub r5, r0, #1 - mov r0, ip - cmp r0, r5 - blt _0202E8B6 -_0202E8EC: - ldr r0, [sp, #8] - bl sub_0202E6F0 - mov r3, #0 - add r2, r6, #0 - b _0202E912 -_0202E8F8: - ldr r5, [r2, #0xc] - ldr r4, [sp, #8] - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldr r0, [sp, #8] - add r2, r2, #4 - add r0, #0x18 - str r0, [sp, #8] - add r3, r3, #1 -_0202E912: - cmp r3, #6 - bge _0202E91C - ldr r0, [r6, #8] - cmp r3, r0 - blt _0202E8F8 -_0202E91C: - add sp, #0xc - pop {r4, r5, r6, r7, pc} - thumb_func_end sub_0202E75C - - thumb_func_start sub_0202E920 -sub_0202E920: ; 0x0202E920 - push {r4, r5, r6, r7, lr} - sub sp, #0x14 - add r7, r0, #0 - add r5, r1, #0 - ldr r0, [sp, #0x2c] - mov r1, #0xe0 - str r2, [sp, #0x10] - add r4, r3, #0 - bl AllocFromHeapAtEnd - add r6, r0, #0 - mov r0, #0 - str r0, [sp] - str r4, [sp, #4] - add r0, sp, #0x18 - ldrb r0, [r0, #0x10] - add r1, r6, #0 - add r2, r5, #0 - str r0, [sp, #8] - ldr r0, [sp, #0x2c] - str r0, [sp, #0xc] - ldr r3, [sp, #0x10] - add r0, r7, #0 - bl sub_0202E75C - cmp r5, #0 - beq _0202E972 - mov r0, #1 - str r0, [sp] - str r4, [sp, #4] - add r0, sp, #0x18 - ldrb r0, [r0, #0x10] - add r1, r6, #0 - add r2, r5, #0 - str r0, [sp, #8] - ldr r0, [sp, #0x2c] - str r0, [sp, #0xc] - ldr r3, [sp, #0x10] - add r0, r7, #0 - bl sub_0202E75C -_0202E972: - add r0, r6, #0 - bl FreeToHeap - add sp, #0x14 - pop {r4, r5, r6, r7, pc} - thumb_func_end sub_0202E920 - - thumb_func_start sub_0202E97C -sub_0202E97C: ; 0x0202E97C - push {r4, r5, r6, r7, lr} - sub sp, #0x24 - add r6, r1, #0 - ldr r1, [sp, #0x38] - add r4, r0, #0 - add r5, r2, #0 - add r7, r3, #0 - str r1, [sp, #0x38] - bl sub_0202E530 - str r0, [sp, #8] - add r0, r4, #0 - bl sub_0202C854 - mov r1, #1 - bl sub_0202C7B4 - mov r4, #0 - add r3, r4, #0 - str r0, [sp, #0xc] - cmp r5, #0 - bls _0202E9CC -_0202E9A8: - cmp r3, r6 - beq _0202E9C2 - lsl r0, r3, #2 - ldr r2, [r7, r0] - cmp r2, #0 - beq _0202E9C2 - add r1, r4, #1 - add r0, r4, #0 - lsl r1, r1, #0x18 - lsr r4, r1, #0x18 - lsl r1, r0, #2 - add r0, sp, #0x10 - str r2, [r0, r1] -_0202E9C2: - add r0, r3, #1 - lsl r0, r0, #0x18 - lsr r3, r0, #0x18 - cmp r3, r5 - blo _0202E9A8 -_0202E9CC: - cmp r4, #0 - beq _0202E9F6 - mov r5, #0 - add r6, sp, #0x10 -_0202E9D4: - ldr r0, [sp, #0x38] - str r4, [sp] - str r0, [sp, #4] - ldr r0, [sp, #8] - ldr r1, [sp, #0xc] - add r2, r5, #0 - add r3, r6, #0 - bl sub_0202E920 - add r0, r5, #1 - lsl r0, r0, #0x18 - lsr r5, r0, #0x18 - cmp r5, #0xd - blo _0202E9D4 - mov r0, #0x18 - bl sub_0202893C -_0202E9F6: - add sp, #0x24 - pop {r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0202E97C - - thumb_func_start sub_0202E9FC -sub_0202E9FC: ; 0x0202E9FC - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - str r2, [sp] - add r4, r0, #0 - add r5, r1, #0 - bl Sav2_PlayerData_GetProfileAddr - str r0, [sp, #4] - ldr r0, [sp] - mov r1, #0x4c - bl AllocFromHeap - mov r1, #0 - mov r2, #0x4c - add r7, r0, #0 - bl MIi_CpuFill8 - add r0, r4, #0 - bl sub_0202C854 - mov r1, #1 - bl sub_0202C7B4 - str r0, [sp, #0xc] - ldr r1, [sp] - add r0, r4, #0 - bl sub_0202E594 - str r0, [sp, #8] - add r0, r5, #0 - bl sub_0202E4B0 - str r0, [r7] - add r0, r5, #0 - bl sub_0202E4BC - ldr r1, [r7] - mov r6, #0 - cmp r1, #0 - ble _0202EA72 - lsl r1, r0, #2 - ldr r0, [sp, #8] - add r4, r7, #0 - add r5, r0, r1 -_0202EA54: - ldr r0, [sp, #0xc] - ldr r1, [sp] - str r0, [r4, #4] - ldr r0, [r5] - str r0, [r4, #8] - ldr r0, [sp, #4] - bl sub_02028F68 - str r0, [r4, #0xc] - ldr r0, [r7] - add r6, r6, #1 - add r4, #0xc - add r5, r5, #4 - cmp r6, r0 - blt _0202EA54 -_0202EA72: - ldr r0, [sp, #8] - bl FreeToHeap - add r0, r7, #0 - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0202E9FC - - thumb_func_start sub_0202EA80 -sub_0202EA80: ; 0x0202EA80 - push {r3, r4, r5, r6, r7, lr} - add r7, r2, #0 - add r5, r0, #0 - str r1, [sp] - add r0, r7, #0 - mov r1, #0x4c - bl AllocFromHeap - mov r1, #0 - mov r2, #0x4c - add r4, r0, #0 - bl MIi_CpuFill8 - ldr r0, [sp] - mov r1, #0x90 - mul r1, r0 - mov r6, #0 - add r5, r5, r1 -_0202EAA4: - add r0, r5, #0 - bl sub_0202E4E0 - cmp r0, #0 - beq _0202EAF0 - ldr r2, [r4] - mov r1, #0xc - mul r1, r2 - ldr r0, [r5] - add r1, r4, r1 - str r0, [r1, #4] - ldr r2, [r4] - mov r1, #0xc - mul r1, r2 - ldr r0, [r5, #4] - add r1, r4, r1 - str r0, [r1, #8] - mov r0, #8 - add r1, r7, #0 - bl String_ctor - ldr r2, [r4] - mov r1, #0xc - mul r1, r2 - add r1, r4, r1 - str r0, [r1, #0xc] - ldr r1, [r4] - mov r0, #0xc - mul r0, r1 - add r0, r4, r0 - add r1, r5, #0 - ldr r0, [r0, #0xc] - add r1, #8 - bl CopyU16ArrayToString - ldr r0, [r4] - add r0, r0, #1 - str r0, [r4] -_0202EAF0: - add r6, r6, #1 - add r5, #0x18 - cmp r6, #6 - blt _0202EAA4 - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0202EA80 - - thumb_func_start sub_0202EAFC -sub_0202EAFC: ; 0x0202EAFC - push {r4, r5, r6, lr} - add r6, r0, #0 - mov r4, #0 - add r5, r6, #0 -_0202EB04: - ldr r0, [r5, #0xc] - cmp r0, #0 - beq _0202EB0E - bl String_dtor -_0202EB0E: - add r4, r4, #1 - add r5, #0xc - cmp r4, #6 - blt _0202EB04 - add r0, r6, #0 - mov r1, #0 - mov r2, #0x4c - bl MIi_CpuFill8 - add r0, r6, #0 - bl FreeToHeap - mov r0, #0x18 - bl sub_0202893C - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0202EAFC - - thumb_func_start sub_0202EB30 -sub_0202EB30: ; 0x0202EB30 - ldr r0, _0202EB34 ; =0x00000688 - bx lr - .balign 4, 0 -_0202EB34: .word 0x00000688 - thumb_func_end sub_0202EB30 - - thumb_func_start sub_0202EB38 -sub_0202EB38: ; 0x0202EB38 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - ldr r2, _0202EB70 ; =0x00000688 - mov r0, #0 - add r1, r5, #0 - bl MIi_CpuClearFast - mov r4, #0 - mov r6, #0xac - add r7, r4, #0 -_0202EB4C: - add r0, r5, #0 - bl ZeroMonData - add r0, r5, #0 - add r1, r6, #0 - add r2, r7, #0 - bl GetMonData - cmp r0, #0 - beq _0202EB64 - bl GF_AssertFail -_0202EB64: - add r4, r4, #1 - add r5, #0xec - cmp r4, #6 - blt _0202EB4C - pop {r3, r4, r5, r6, r7, pc} - nop -_0202EB70: .word 0x00000688 - thumb_func_end sub_0202EB38 - - thumb_func_start sub_0202EB74 -sub_0202EB74: ; 0x0202EB74 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - ldr r2, _0202EBAC ; =0x00000588 - mov r0, #0 - add r1, r5, #0 - bl MIi_CpuClearFast - mov r4, #0 - mov r6, #0xac - add r7, r4, #0 -_0202EB88: - add r0, r5, #0 - bl ZeroMonData - add r0, r5, #0 - add r1, r6, #0 - add r2, r7, #0 - bl GetMonData - cmp r0, #0 - beq _0202EBA0 - bl GF_AssertFail -_0202EBA0: - add r4, r4, #1 - add r5, #0xec - cmp r4, #6 - blt _0202EB88 - pop {r3, r4, r5, r6, r7, pc} - nop -_0202EBAC: .word 0x00000588 - thumb_func_end sub_0202EB74 - - thumb_func_start sub_0202EBB0 -sub_0202EBB0: ; 0x0202EBB0 - push {r4, r5, r6, r7} - add r2, r0, #0 - ldr r3, _0202EC08 ; =0x00000588 - mov r0, #0 - add r5, r2, #0 -_0202EBBA: - ldr r4, [r5, r3] - cmp r1, r4 - beq _0202EC04 - add r0, r0, #1 - add r5, r5, #4 - cmp r0, #0x14 - blt _0202EBBA - ldr r1, _0202EC08 ; =0x00000588 - mov r0, #0 - add r4, r2, #0 -_0202EBCE: - ldr r3, [r4, r1] - cmp r3, #0 - beq _0202EC04 - add r0, r0, #1 - add r4, r4, #4 - cmp r0, #0x14 - blt _0202EBCE - mov r3, #0 - ldr r4, _0202EC0C ; =0x7FFFFFFF - add r5, r3, #0 -_0202EBE2: - ldr r0, _0202EC10 ; =0x000005D8 - ldr r1, [r2, r0] - add r0, r0, #4 - ldr r0, [r2, r0] - sub r6, r1, r4 - mov ip, r0 - mov r6, ip - sbc r6, r3 - bge _0202EBFA - add r4, r1, #0 - add r3, r0, #0 - add r7, r5, #0 -_0202EBFA: - add r5, r5, #1 - add r2, #8 - cmp r5, #0x14 - blt _0202EBE2 - add r0, r7, #0 -_0202EC04: - pop {r4, r5, r6, r7} - bx lr - .balign 4, 0 -_0202EC08: .word 0x00000588 -_0202EC0C: .word 0x7FFFFFFF -_0202EC10: .word 0x000005D8 - thumb_func_end sub_0202EBB0 - - thumb_func_start sub_0202EC14 -sub_0202EC14: ; 0x0202EC14 - add r3, r0, #0 - add r0, r1, #0 - mov r1, #0xec - mul r1, r2 - add r1, r3, r1 - ldr r3, _0202EC24 ; =sub_02071780 - bx r3 - nop -_0202EC24: .word sub_02071780 - thumb_func_end sub_0202EC14 - - thumb_func_start sub_0202EC28 -sub_0202EC28: ; 0x0202EC28 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - bl sub_0202EBB0 - add r6, r0, #0 - lsl r0, r6, #2 - add r1, r5, r0 - ldr r0, _0202EC64 ; =0x00000588 - str r4, [r1, r0] - bl GF_RTC_DateTimeToSec - lsl r2, r6, #3 - add r3, r5, r2 - ldr r2, _0202EC68 ; =0x000005D8 - str r0, [r3, r2] - add r0, r2, #4 - str r1, [r3, r0] - bl OS_GetOwnerRtcOffset - ldr r2, _0202EC6C ; =0x00000678 - str r0, [r5, r2] - add r0, r2, #4 - add r2, #8 - str r1, [r5, r0] - add r0, r5, r2 - bl OS_GetMacAddress - pop {r4, r5, r6, pc} - nop -_0202EC64: .word 0x00000588 -_0202EC68: .word 0x000005D8 -_0202EC6C: .word 0x00000678 - thumb_func_end sub_0202EC28 - - thumb_func_start sub_0202EC70 -sub_0202EC70: ; 0x0202EC70 - push {r4, r5, r6, lr} - add r5, r1, #0 - add r6, r0, #0 - add r4, r2, #0 - cmp r5, #6 - blt _0202EC80 - bl GF_AssertFail -_0202EC80: - mov r0, #0xec - mul r0, r5 - add r3, r6, r0 - mov r2, #0x1d -_0202EC88: - ldmia r3!, {r0, r1} - stmia r4!, {r0, r1} - sub r2, r2, #1 - bne _0202EC88 - ldr r0, [r3] - str r0, [r4] - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0202EC70 - - thumb_func_start sub_0202EC98 -sub_0202EC98: ; 0x0202EC98 - push {r3, r4, r5, r6, r7, lr} - mov r4, #0 - add r5, r0, #0 - add r6, r4, #0 - mov r7, #0xac -_0202ECA2: - add r0, r5, #0 - add r1, r7, #0 - mov r2, #0 - bl GetMonData - cmp r0, #0 - beq _0202ECB2 - add r4, r4, #1 -_0202ECB2: - add r6, r6, #1 - add r5, #0xec - cmp r6, #6 - blt _0202ECA2 - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0202EC98 - - thumb_func_start sub_0202ECC0 -sub_0202ECC0: ; 0x0202ECC0 - push {r3, r4, r5, r6, r7, lr} - add r6, r1, #0 - add r5, r0, #0 - add r0, r6, #0 - mov r1, #0x4c - mov r2, #0 - bl GetMonData - cmp r0, #0 - bne _0202ED12 - add r0, r6, #0 - mov r1, #5 - mov r2, #0 - bl GetMonData - lsl r0, r0, #0x10 - lsr r4, r0, #0x10 - add r0, r5, #0 - bl sub_0202A634 - add r7, r0, #0 - add r0, r5, #0 - bl sub_0202CF54 - add r1, r7, #0 - add r2, r4, #0 - bl sub_0202D214 - add r0, r7, #0 - add r1, r6, #0 - bl sub_0202A434 - ldr r0, _0202ED14 ; =0x00000181 - cmp r4, r0 - bne _0202ED12 - add r0, r5, #0 - bl sub_020325EC - mov r1, #0x15 - bl sub_02032744 -_0202ED12: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0202ED14: .word 0x00000181 - thumb_func_end sub_0202ECC0 - - thumb_func_start sub_0202ED18 -sub_0202ED18: ; 0x0202ED18 - mov r0, #8 - bx lr - thumb_func_end sub_0202ED18 - - thumb_func_start sub_0202ED1C -sub_0202ED1C: ; 0x0202ED1C - mov r1, #0 - strb r1, [r0] - strb r1, [r0, #1] - strb r1, [r0, #2] - strb r1, [r0, #3] - strb r1, [r0, #4] - strb r1, [r0, #5] - strb r1, [r0, #6] - strb r1, [r0, #7] - str r1, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0202ED1C - - thumb_func_start sub_0202ED34 -sub_0202ED34: ; 0x0202ED34 - ldr r3, _0202ED3C ; =SavArray_get - mov r1, #0x21 - bx r3 - nop -_0202ED3C: .word SavArray_get - thumb_func_end sub_0202ED34 - - thumb_func_start sub_0202ED40 -sub_0202ED40: ; 0x0202ED40 - str r0, [r1] - bx lr - thumb_func_end sub_0202ED40 - - thumb_func_start sub_0202ED44 -sub_0202ED44: ; 0x0202ED44 - ldr r0, [r0] - bx lr - thumb_func_end sub_0202ED44 - - thumb_func_start sub_0202ED48 -sub_0202ED48: ; 0x0202ED48 - ldr r3, [r1, #4] - mov r2, #3 - bic r3, r2 - mov r2, #3 - and r0, r2 - orr r0, r3 - str r0, [r1, #4] - bx lr - thumb_func_end sub_0202ED48 - - thumb_func_start sub_0202ED58 -sub_0202ED58: ; 0x0202ED58 - ldr r3, [r0, #4] - mov r2, #4 - lsl r1, r1, #0x1f - bic r3, r2 - lsr r1, r1, #0x1d - orr r1, r3 - str r1, [r0, #4] - bx lr - thumb_func_end sub_0202ED58 - - thumb_func_start sub_0202ED68 -sub_0202ED68: ; 0x0202ED68 - ldr r0, [r0, #4] - lsl r0, r0, #0x1d - asr r0, r0, #0x1f - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - bx lr - thumb_func_end sub_0202ED68 - - thumb_func_start sub_0202ED74 -sub_0202ED74: ; 0x0202ED74 - ldr r0, _0202ED78 ; =0x00000658 - bx lr - .balign 4, 0 -_0202ED78: .word 0x00000658 - thumb_func_end sub_0202ED74 - - thumb_func_start sub_0202ED7C -sub_0202ED7C: ; 0x0202ED7C - ldr r3, _0202ED84 ; =SavArray_get - mov r1, #0x22 - bx r3 - nop -_0202ED84: .word SavArray_get - thumb_func_end sub_0202ED7C - - thumb_func_start sub_0202ED88 -sub_0202ED88: ; 0x0202ED88 - push {r3, lr} - mov r1, #0x22 - bl SavArray_get - bl sub_0202EFB8 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0202ED88 - - thumb_func_start sub_0202ED98 -sub_0202ED98: ; 0x0202ED98 - push {r4, lr} - ldr r2, _0202EDD8 ; =0x00000658 - mov r1, #0 - add r4, r0, #0 - bl MIi_CpuFill8 - mov r0, #3 - strb r0, [r4] - ldr r1, [r4, #4] - ldr r0, _0202EDDC ; =0xFE03FFFF - and r0, r1 - str r0, [r4, #4] - mov r0, #0 - strb r0, [r4, #1] - mov r0, #0x80 - strb r0, [r4, #3] - ldrb r0, [r4, #3] - strb r0, [r4, #2] - ldr r1, [r4, #4] - ldr r0, _0202EDE0 ; =0xF9FFFFFF - and r1, r0 - ldr r0, _0202EDE4 ; =0xE7FFFFFF - and r0, r1 - str r0, [r4, #4] - add r0, r4, #0 - bl sub_0202EF9C - ldr r0, _0202EDE8 ; =0x000004B8 - add r0, r4, r0 - bl sub_0202EFE8 - pop {r4, pc} - .balign 4, 0 -_0202EDD8: .word 0x00000658 -_0202EDDC: .word 0xFE03FFFF -_0202EDE0: .word 0xF9FFFFFF -_0202EDE4: .word 0xE7FFFFFF -_0202EDE8: .word 0x000004B8 - thumb_func_end sub_0202ED98 - - thumb_func_start sub_0202EDEC -sub_0202EDEC: ; 0x0202EDEC - ldr r3, _0202EDF0 ; =sub_0202ED98 - bx r3 - .balign 4, 0 -_0202EDF0: .word sub_0202ED98 - thumb_func_end sub_0202EDEC - - thumb_func_start sub_0202EDF4 -sub_0202EDF4: ; 0x0202EDF4 - add r0, #8 - bx lr - thumb_func_end sub_0202EDF4 - - thumb_func_start sub_0202EDF8 -sub_0202EDF8: ; 0x0202EDF8 - ldrb r0, [r0] - bx lr - thumb_func_end sub_0202EDF8 - - thumb_func_start sub_0202EDFC -sub_0202EDFC: ; 0x0202EDFC - strb r1, [r0] - bx lr - thumb_func_end sub_0202EDFC - - thumb_func_start sub_0202EE00 -sub_0202EE00: ; 0x0202EE00 - cmp r1, #0 - beq _0202EE0E - cmp r1, #1 - beq _0202EE18 - cmp r1, #2 - beq _0202EE30 - bx lr -_0202EE0E: - ldr r2, [r0, #4] - ldr r1, _0202EE48 ; =0xF9FFFFFF - and r1, r2 - str r1, [r0, #4] - bx lr -_0202EE18: - ldr r2, [r0, #4] - ldr r1, _0202EE48 ; =0xF9FFFFFF - and r1, r2 - lsl r2, r2, #5 - lsr r3, r2, #0x1e - mov r2, #1 - orr r2, r3 - lsl r2, r2, #0x1e - lsr r2, r2, #5 - orr r1, r2 - str r1, [r0, #4] - bx lr -_0202EE30: - ldr r2, [r0, #4] - ldr r1, _0202EE48 ; =0xF9FFFFFF - and r1, r2 - lsl r2, r2, #5 - lsr r3, r2, #0x1e - mov r2, #2 - orr r2, r3 - lsl r2, r2, #0x1e - lsr r2, r2, #5 - orr r1, r2 - str r1, [r0, #4] - bx lr - .balign 4, 0 -_0202EE48: .word 0xF9FFFFFF - thumb_func_end sub_0202EE00 - - thumb_func_start sub_0202EE4C -sub_0202EE4C: ; 0x0202EE4C - ldr r0, [r0, #4] - lsl r0, r0, #5 - lsr r0, r0, #0x1e - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - bx lr - thumb_func_end sub_0202EE4C - - thumb_func_start sub_0202EE58 -sub_0202EE58: ; 0x0202EE58 - cmp r1, #3 - bhs _0202EE6A - ldr r3, [r0, #4] - ldr r2, _0202EE6C ; =0xE7FFFFFF - lsl r1, r1, #0x1e - and r2, r3 - lsr r1, r1, #3 - orr r1, r2 - str r1, [r0, #4] -_0202EE6A: - bx lr - .balign 4, 0 -_0202EE6C: .word 0xE7FFFFFF - thumb_func_end sub_0202EE58 - - thumb_func_start sub_0202EE70 -sub_0202EE70: ; 0x0202EE70 - ldr r0, [r0, #4] - lsl r0, r0, #3 - lsr r0, r0, #0x1e - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - bx lr - thumb_func_end sub_0202EE70 - - thumb_func_start sub_0202EE7C -sub_0202EE7C: ; 0x0202EE7C - ldr r0, [r0, #4] - lsl r0, r0, #7 - lsr r0, r0, #0x19 - bx lr - thumb_func_end sub_0202EE7C - - thumb_func_start sub_0202EE84 -sub_0202EE84: ; 0x0202EE84 - ldr r3, [r0, #4] - ldr r2, _0202EE94 ; =0xFE03FFFF - lsl r1, r1, #0x19 - and r2, r3 - lsr r1, r1, #7 - orr r1, r2 - str r1, [r0, #4] - bx lr - .balign 4, 0 -_0202EE94: .word 0xFE03FFFF - thumb_func_end sub_0202EE84 - - thumb_func_start sub_0202EE98 -sub_0202EE98: ; 0x0202EE98 - ldr r0, [r0, #4] - lsl r0, r0, #0x17 - lsr r0, r0, #0x17 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bx lr - thumb_func_end sub_0202EE98 - - thumb_func_start sub_0202EEA4 -sub_0202EEA4: ; 0x0202EEA4 - ldrb r0, [r0, #1] - bx lr - thumb_func_end sub_0202EEA4 - - thumb_func_start sub_0202EEA8 -sub_0202EEA8: ; 0x0202EEA8 - strb r1, [r0, #1] - bx lr - thumb_func_end sub_0202EEA8 - - thumb_func_start sub_0202EEAC -sub_0202EEAC: ; 0x0202EEAC - strb r1, [r0, #2] - strb r2, [r0, #3] - bx lr - .balign 4, 0 - thumb_func_end sub_0202EEAC - - thumb_func_start sub_0202EEB4 -sub_0202EEB4: ; 0x0202EEB4 - ldrb r3, [r0, #2] - strh r3, [r1] - ldrb r0, [r0, #3] - strh r0, [r2] - bx lr - .balign 4, 0 - thumb_func_end sub_0202EEB4 - - thumb_func_start sub_0202EEC0 -sub_0202EEC0: ; 0x0202EEC0 - ldr r2, _0202EEE0 ; =0x0000060C - mov r3, #0 -_0202EEC4: - add r1, r0, r3 - ldrb r1, [r1, r2] - cmp r1, #0xff - bne _0202EED0 - add r0, r3, #0 - bx lr -_0202EED0: - add r1, r3, #1 - lsl r1, r1, #0x18 - lsr r3, r1, #0x18 - cmp r3, #0x4b - blo _0202EEC4 - mov r0, #0x4b - bx lr - nop -_0202EEE0: .word 0x0000060C - thumb_func_end sub_0202EEC0 - - thumb_func_start sub_0202EEE4 -sub_0202EEE4: ; 0x0202EEE4 - push {r3, r4} - ldr r3, _0202EF14 ; =0x0000060C - mov r4, #0 -_0202EEEA: - add r2, r0, r4 - ldrb r2, [r2, r3] - cmp r1, r2 - bne _0202EEF8 - add r0, r4, #0 - pop {r3, r4} - bx lr -_0202EEF8: - cmp r2, #0xff - bne _0202EF02 - mov r0, #0xff - pop {r3, r4} - bx lr -_0202EF02: - add r2, r4, #1 - lsl r2, r2, #0x18 - lsr r4, r2, #0x18 - cmp r4, #0x4b - blo _0202EEEA - mov r0, #0xff - pop {r3, r4} - bx lr - nop -_0202EF14: .word 0x0000060C - thumb_func_end sub_0202EEE4 - - thumb_func_start sub_0202EF18 -sub_0202EF18: ; 0x0202EF18 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #0x4b - blo _0202EF28 - bl GF_AssertFail - pop {r3, r4, r5, pc} -_0202EF28: - bl sub_0202EEE4 - cmp r0, #0xff - bne _0202EF3C - add r0, r5, #0 - bl sub_0202EEC0 - add r1, r5, r0 - ldr r0, _0202EF40 ; =0x0000060C - strb r4, [r1, r0] -_0202EF3C: - pop {r3, r4, r5, pc} - nop -_0202EF40: .word 0x0000060C - thumb_func_end sub_0202EF18 - - thumb_func_start sub_0202EF44 -sub_0202EF44: ; 0x0202EF44 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r6, r1, #0 - bl sub_0202EEC0 - add r4, r0, #0 - add r0, r6, #0 - add r1, r4, #0 - bl AllocFromHeap - add r6, r0, #0 - ldr r0, _0202EF6C ; =0x0000060C - add r1, r6, #0 - add r0, r5, r0 - add r2, r4, #0 - bl MIi_CpuCopy8 - add r0, r6, #0 - pop {r4, r5, r6, pc} - nop -_0202EF6C: .word 0x0000060C - thumb_func_end sub_0202EF44 - - thumb_func_start sub_0202EF70 -sub_0202EF70: ; 0x0202EF70 - push {r4, r5, r6, lr} - add r5, r0, #0 - ldr r0, _0202EF98 ; =0x0000060C - add r6, r1, #0 - add r4, r2, #0 - add r0, r5, r0 - mov r1, #0xff - mov r2, #0x4b - bl MIi_CpuFill8 - cmp r4, #0x4b - blo _0202EF8A - mov r4, #0x4b -_0202EF8A: - ldr r1, _0202EF98 ; =0x0000060C - add r0, r6, #0 - add r1, r5, r1 - add r2, r4, #0 - bl MIi_CpuCopy8 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0202EF98: .word 0x0000060C - thumb_func_end sub_0202EF70 - - thumb_func_start sub_0202EF9C -sub_0202EF9C: ; 0x0202EF9C - push {r4, lr} - add r4, r0, #0 - ldr r0, _0202EFB4 ; =0x0000060C - mov r1, #0xff - add r0, r4, r0 - mov r2, #0x4b - bl MIi_CpuFill8 - ldr r0, _0202EFB4 ; =0x0000060C - mov r1, #0 - strb r1, [r4, r0] - pop {r4, pc} - .balign 4, 0 -_0202EFB4: .word 0x0000060C - thumb_func_end sub_0202EF9C - - thumb_func_start sub_0202EFB8 -sub_0202EFB8: ; 0x0202EFB8 - ldr r1, _0202EFC0 ; =0x000004B8 - add r0, r0, r1 - bx lr - nop -_0202EFC0: .word 0x000004B8 - thumb_func_end sub_0202EFB8 - - thumb_func_start sub_0202EFC4 -sub_0202EFC4: ; 0x0202EFC4 - ldrh r2, [r0] - mov r1, #1 - bic r2, r1 - strh r2, [r0] - ldrh r2, [r0] - mov r1, #2 - bic r2, r1 - strh r2, [r0] - ldrh r2, [r0] - mov r1, #0xfc - bic r2, r1 - mov r1, #4 - orr r1, r2 - strh r1, [r0] - mov r1, #0 - strh r1, [r0, #2] - bx lr - .balign 4, 0 - thumb_func_end sub_0202EFC4 - - thumb_func_start sub_0202EFE8 -sub_0202EFE8: ; 0x0202EFE8 - push {r4, r5, r6, lr} - mov r2, #0x55 - mov r1, #0 - lsl r2, r2, #2 - add r6, r0, #0 - bl MIi_CpuFill8 - mov r4, #0 - add r5, r6, #0 -_0202EFFA: - add r0, r5, #0 - bl sub_0202EFC4 - add r4, r4, #1 - add r5, r5, #4 - cmp r4, #0x4b - blt _0202EFFA - ldr r1, _0202F018 ; =0x00000146 - mov r0, #0x7f - ldrb r2, [r6, r1] - bic r2, r0 - mov r0, #7 - orr r0, r2 - strb r0, [r6, r1] - pop {r4, r5, r6, pc} - .balign 4, 0 -_0202F018: .word 0x00000146 - thumb_func_end sub_0202EFE8 - - thumb_func_start sub_0202F01C -sub_0202F01C: ; 0x0202F01C - push {r4, r5, r6, lr} - cmp r1, #0xd - blo _0202F028 - bl GF_AssertFail - pop {r4, r5, r6, pc} -_0202F028: - ldr r2, _0202F04C ; =0x0000014E - lsr r6, r1, #0x1f - lsl r5, r1, #0x1d - add r4, r0, r2 - lsl r0, r1, #0x15 - lsr r3, r0, #0x18 - sub r5, r5, r6 - mov r1, #0x1d - ror r5, r1 - add r1, r6, r5 - lsl r1, r1, #0x18 - ldrb r2, [r4, r3] - mov r0, #1 - lsr r1, r1, #0x18 - lsl r0, r1 - orr r0, r2 - strb r0, [r4, r3] - pop {r4, r5, r6, pc} - .balign 4, 0 -_0202F04C: .word 0x0000014E - thumb_func_end sub_0202F01C - - thumb_func_start sub_0202F050 -sub_0202F050: ; 0x0202F050 - push {r3, r4, r5, lr} - cmp r1, #0xd - blo _0202F05C - bl GF_AssertFail - pop {r3, r4, r5, pc} -_0202F05C: - lsr r4, r1, #0x1f - lsl r3, r1, #0x1d - sub r3, r3, r4 - mov r2, #0x1d - ror r3, r2 - mov r5, #1 - add r2, r4, r3 - add r3, r5, #0 - lsl r3, r2 - lsl r2, r3, #0x18 - ldr r3, _0202F088 ; =0x0000014E - lsr r2, r2, #0x18 - add r4, r0, r3 - lsl r0, r1, #0x15 - lsr r3, r0, #0x18 - ldrb r0, [r4, r3] - add r1, r2, #0 - tst r1, r0 - beq _0202F086 - eor r0, r2 - strb r0, [r4, r3] -_0202F086: - pop {r3, r4, r5, pc} - .balign 4, 0 -_0202F088: .word 0x0000014E - thumb_func_end sub_0202F050 - - thumb_func_start sub_0202F08C -sub_0202F08C: ; 0x0202F08C - push {r3, lr} - cmp r1, #0xd - blo _0202F09A - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} -_0202F09A: - lsl r2, r1, #0x15 - lsr r2, r2, #0x18 - add r2, r0, r2 - ldr r0, _0202F0C0 ; =0x0000014E - ldrb r3, [r2, r0] - lsr r2, r1, #0x1f - lsl r1, r1, #0x1d - sub r1, r1, r2 - mov r0, #0x1d - ror r1, r0 - add r0, r2, r1 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - add r1, r3, #0 - asr r1, r0 - mov r0, #1 - and r0, r1 - pop {r3, pc} - nop -_0202F0C0: .word 0x0000014E - thumb_func_end sub_0202F08C - - thumb_func_start sub_0202F0C4 -sub_0202F0C4: ; 0x0202F0C4 - push {r4, lr} - cmp r1, #0x4b - blo _0202F0D0 - bl GF_AssertFail - pop {r4, pc} -_0202F0D0: - lsl r3, r1, #2 - ldrh r1, [r0, r3] - mov r4, #1 - lsl r2, r2, #0x10 - bic r1, r4 - lsr r4, r2, #0x10 - mov r2, #1 - and r2, r4 - orr r1, r2 - strh r1, [r0, r3] - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0202F0C4 - - thumb_func_start sub_0202F0E8 -sub_0202F0E8: ; 0x0202F0E8 - push {r3, lr} - cmp r1, #0x4b - blo _0202F0F6 - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} -_0202F0F6: - lsl r1, r1, #2 - ldrh r0, [r0, r1] - lsl r0, r0, #0x1f - lsr r0, r0, #0x1f - pop {r3, pc} - thumb_func_end sub_0202F0E8 - - thumb_func_start sub_0202F100 -sub_0202F100: ; 0x0202F100 - push {r3, lr} - cmp r1, #0x4b - blo _0202F10C - bl GF_AssertFail - pop {r3, pc} -_0202F10C: - lsl r1, r1, #2 - add r3, r0, r1 - strh r2, [r3, #2] - cmp r2, #0 - ldrh r1, [r3] - bne _0202F120 - mov r0, #2 - bic r1, r0 - strh r1, [r3] - pop {r3, pc} -_0202F120: - mov r0, #2 - orr r0, r1 - strh r0, [r3] - pop {r3, pc} - thumb_func_end sub_0202F100 - - thumb_func_start sub_0202F128 -sub_0202F128: ; 0x0202F128 - push {r3, lr} - cmp r1, #0x4b - blo _0202F136 - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} -_0202F136: - lsl r2, r1, #2 - ldrh r1, [r0, r2] - lsl r1, r1, #0x1e - lsr r1, r1, #0x1f - beq _0202F146 - add r0, r0, r2 - ldrh r0, [r0, #2] - pop {r3, pc} -_0202F146: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0202F128 - - thumb_func_start sub_0202F14C -sub_0202F14C: ; 0x0202F14C - cmp r1, #1 - beq _0202F15A - cmp r1, #2 - beq _0202F162 - cmp r1, #3 - beq _0202F178 - b _0202F18C -_0202F15A: - mov r1, #5 - lsl r1, r1, #6 - str r2, [r0, r1] - b _0202F18C -_0202F162: - mov r1, #5 - lsl r1, r1, #6 - ldr r3, [r0, r1] - add r2, r3, r2 - str r2, [r0, r1] - ldr r3, [r0, r1] - ldr r2, _0202F194 ; =0x000F423F - cmp r3, r2 - bls _0202F18C - str r2, [r0, r1] - b _0202F18C -_0202F178: - mov r1, #5 - lsl r1, r1, #6 - ldr r3, [r0, r1] - cmp r3, r2 - bhs _0202F188 - mov r2, #0 - str r2, [r0, r1] - b _0202F18C -_0202F188: - sub r2, r3, r2 - str r2, [r0, r1] -_0202F18C: - mov r1, #5 - lsl r1, r1, #6 - ldr r0, [r0, r1] - bx lr - .balign 4, 0 -_0202F194: .word 0x000F423F - thumb_func_end sub_0202F14C - - thumb_func_start sub_0202F198 -sub_0202F198: ; 0x0202F198 - push {r3, r4} - cmp r1, #9 - bhs _0202F1AE - mov r2, #0x51 - lsl r2, r2, #2 - ldrh r4, [r0, r2] - mov r3, #1 - lsl r3, r1 - add r1, r4, #0 - orr r1, r3 - strh r1, [r0, r2] -_0202F1AE: - pop {r3, r4} - bx lr - .balign 4, 0 - thumb_func_end sub_0202F198 - - thumb_func_start sub_0202F1B4 -sub_0202F1B4: ; 0x0202F1B4 - mov r2, #0x51 - lsl r2, r2, #2 - ldrh r0, [r0, r2] - add r2, r0, #0 - asr r2, r1 - mov r0, #1 - and r0, r2 - bx lr - thumb_func_end sub_0202F1B4 - - thumb_func_start sub_0202F1C4 -sub_0202F1C4: ; 0x0202F1C4 - push {r3, r4, r5, r6} - ldr r3, _0202F1F0 ; =0x0000012E - mov r5, #0 - add r6, r0, #0 -_0202F1CC: - ldrh r4, [r6, r3] - cmp r4, #0 - bne _0202F1E4 - lsl r3, r5, #2 - add r3, r0, r3 - mov r0, #0x4b - lsl r0, r0, #2 - strh r1, [r3, r0] - add r0, r0, #2 - strh r2, [r3, r0] - pop {r3, r4, r5, r6} - bx lr -_0202F1E4: - add r5, r5, #1 - add r6, r6, #4 - cmp r5, #5 - blt _0202F1CC - pop {r3, r4, r5, r6} - bx lr - .balign 4, 0 -_0202F1F0: .word 0x0000012E - thumb_func_end sub_0202F1C4 - - thumb_func_start sub_0202F1F4 -sub_0202F1F4: ; 0x0202F1F4 - push {r4, r5, r6, r7} - mov r3, #0x13 - lsl r3, r3, #4 - mov r1, #0 - add r2, r0, #0 - sub r4, r3, #4 - add r5, r3, #2 - sub r6, r3, #2 -_0202F204: - ldrh r7, [r2, r3] - add r1, r1, #1 - strh r7, [r2, r4] - ldrh r7, [r2, r5] - strh r7, [r2, r6] - add r2, r2, #4 - cmp r1, #4 - blt _0202F204 - mov r1, #0x4f - mov r2, #0 - lsl r1, r1, #2 - strh r2, [r0, r1] - add r1, r1, #2 - strh r2, [r0, r1] - pop {r4, r5, r6, r7} - bx lr - thumb_func_end sub_0202F1F4 - - thumb_func_start sub_0202F224 -sub_0202F224: ; 0x0202F224 - cmp r1, #5 - blo _0202F22E - mov r0, #0 - strh r0, [r2] - bx lr -_0202F22E: - lsl r1, r1, #2 - add r3, r0, r1 - mov r0, #0x4b - lsl r0, r0, #2 - ldrh r1, [r3, r0] - add r0, r0, #2 - strh r1, [r2] - ldrh r0, [r3, r0] - bx lr - thumb_func_end sub_0202F224 - - thumb_func_start sub_0202F240 -sub_0202F240: ; 0x0202F240 - ldr r1, _0202F250 ; =0x0000013E - ldrh r0, [r0, r1] - cmp r0, #0 - beq _0202F24C - mov r0, #1 - bx lr -_0202F24C: - mov r0, #0 - bx lr - .balign 4, 0 -_0202F250: .word 0x0000013E - thumb_func_end sub_0202F240 - - thumb_func_start sub_0202F254 -sub_0202F254: ; 0x0202F254 - push {r3, r4} - ldr r4, _0202F270 ; =0x00000146 - lsl r1, r1, #0x18 - ldrb r2, [r0, r4] - lsr r1, r1, #0x18 - mov r3, #0x80 - lsl r1, r1, #0x1f - bic r2, r3 - lsr r1, r1, #0x18 - orr r1, r2 - strb r1, [r0, r4] - pop {r3, r4} - bx lr - nop -_0202F270: .word 0x00000146 - thumb_func_end sub_0202F254 - - thumb_func_start sub_0202F274 -sub_0202F274: ; 0x0202F274 - ldr r1, _0202F280 ; =0x00000146 - ldrb r0, [r0, r1] - lsl r0, r0, #0x18 - lsr r0, r0, #0x1f - bx lr - nop -_0202F280: .word 0x00000146 - thumb_func_end sub_0202F274 - - thumb_func_start sub_0202F284 -sub_0202F284: ; 0x0202F284 - ldr r1, _0202F290 ; =0x00000146 - ldrb r0, [r0, r1] - lsl r0, r0, #0x19 - lsr r0, r0, #0x19 - bx lr - nop -_0202F290: .word 0x00000146 - thumb_func_end sub_0202F284 - - thumb_func_start sub_0202F294 -sub_0202F294: ; 0x0202F294 - push {r3, r4, r5, lr} - ldr r2, _0202F2FC ; =0x00000146 - add r5, r0, #0 - ldrb r3, [r5, r2] - add r4, r1, #0 - mov r1, #0x80 - bic r3, r1 - strb r3, [r5, r2] - mov r1, #0x10 - mov r2, #0 - bl sub_0202F100 - add r0, r5, #0 - mov r1, #0x10 - mov r2, #0 - bl sub_0202F0C4 - cmp r4, #0 - ble _0202F2DA - ldr r2, _0202F2FC ; =0x00000146 - ldrb r0, [r5, r2] - lsl r1, r0, #0x19 - lsr r3, r1, #0x19 - cmp r3, r4 - blt _0202F2DA - mov r1, #0x7f - bic r0, r1 - sub r1, r3, r4 - lsl r1, r1, #0x18 - lsr r3, r1, #0x18 - mov r1, #0x7f - and r1, r3 - orr r0, r1 - strb r0, [r5, r2] - pop {r3, r4, r5, pc} -_0202F2DA: - bl LCRandom - mov r1, #6 - bl _s32_div_f - ldr r3, _0202F2FC ; =0x00000146 - add r1, r1, #1 - ldrb r0, [r5, r3] - mov r2, #0x7f - lsl r1, r1, #0x18 - bic r0, r2 - lsr r2, r1, #0x18 - mov r1, #0x7f - and r1, r2 - orr r0, r1 - strb r0, [r5, r3] - pop {r3, r4, r5, pc} - .balign 4, 0 -_0202F2FC: .word 0x00000146 - thumb_func_end sub_0202F294 - - thumb_func_start sub_0202F300 -sub_0202F300: ; 0x0202F300 - push {r4, r5, r6, lr} - add r5, r0, #0 - mov r0, #0x52 - lsl r0, r0, #2 - add r6, r1, #0 - add r4, r2, #0 - add r0, r5, r0 - mov r1, #0 - mov r2, #6 - bl MIi_CpuFill8 - cmp r6, #0 - bne _0202F322 - ldr r0, _0202F33C ; =0x00000147 - mov r1, #0 - strb r1, [r5, r0] - pop {r4, r5, r6, pc} -_0202F322: - cmp r4, #6 - blo _0202F328 - mov r4, #6 -_0202F328: - mov r1, #0x52 - lsl r1, r1, #2 - add r0, r6, #0 - add r1, r5, r1 - add r2, r4, #0 - bl MIi_CpuCopy8 - ldr r0, _0202F33C ; =0x00000147 - strb r4, [r5, r0] - pop {r4, r5, r6, pc} - .balign 4, 0 -_0202F33C: .word 0x00000147 - thumb_func_end sub_0202F300 - - thumb_func_start sub_0202F340 -sub_0202F340: ; 0x0202F340 - push {r4, r5, r6, lr} - add r4, r1, #0 - add r5, r0, #0 - ldr r1, _0202F36C ; =0x00000147 - add r0, r2, #0 - ldrb r1, [r5, r1] - bl AllocFromHeap - mov r2, #0x52 - add r6, r0, #0 - lsl r2, r2, #2 - add r0, r5, r2 - sub r2, r2, #1 - ldrb r2, [r5, r2] - add r1, r6, #0 - bl MIi_CpuCopy8 - ldr r0, _0202F36C ; =0x00000147 - ldrb r0, [r5, r0] - strb r0, [r4] - add r0, r6, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0202F36C: .word 0x00000147 - thumb_func_end sub_0202F340 - - thumb_func_start sub_0202F370 -sub_0202F370: ; 0x0202F370 - ldrh r1, [r0] - cmp r1, #0 - beq _0202F37E - mov r0, #0x87 - lsl r0, r0, #2 - cmp r1, r0 - blo _0202F382 -_0202F37E: - mov r0, #0 - bx lr -_0202F382: - mov r0, #1 - bx lr - .balign 4, 0 - thumb_func_end sub_0202F370 - - thumb_func_start sub_0202F388 -sub_0202F388: ; 0x0202F388 - push {r3, r4} - mov r1, #0 - strh r1, [r0] - ldrh r3, [r0, #2] - mov r2, #0xf - bic r3, r2 - mov r2, #0xf - orr r2, r3 - strh r2, [r0, #2] - ldrh r3, [r0, #2] - mov r2, #0xf0 - bic r3, r2 - mov r2, #0xf0 - orr r3, r2 - strh r3, [r0, #2] - ldrh r4, [r0, #2] - ldr r3, _0202F3D0 ; =0xFFFFF0FF - and r4, r3 - lsl r3, r2, #4 - orr r3, r4 - strh r3, [r0, #2] - ldrh r4, [r0, #2] - ldr r3, _0202F3D4 ; =0xFFFF0FFF - lsl r2, r2, #8 - and r3, r4 - orr r2, r3 - strh r2, [r0, #2] - ldr r2, _0202F3D8 ; =0x0000FFFF -_0202F3C0: - add r1, r1, #1 - strh r2, [r0, #4] - add r0, r0, #2 - cmp r1, #4 - blt _0202F3C0 - pop {r3, r4} - bx lr - nop -_0202F3D0: .word 0xFFFFF0FF -_0202F3D4: .word 0xFFFF0FFF -_0202F3D8: .word 0x0000FFFF - thumb_func_end sub_0202F388 - - thumb_func_start sub_0202F3DC -sub_0202F3DC: ; 0x0202F3DC - push {r4, r5} - mov r4, #0 - ldr r1, _0202F3FC ; =0x0000FFFF - str r4, [r0] - add r5, r0, #0 - mov r3, #0xf -_0202F3E8: - add r2, r0, r4 - strb r3, [r2, #4] - strh r1, [r5, #8] - add r4, r4, #1 - add r5, r5, #2 - cmp r4, #4 - blt _0202F3E8 - pop {r4, r5} - bx lr - nop -_0202F3FC: .word 0x0000FFFF - thumb_func_end sub_0202F3DC - - thumb_func_start sub_0202F400 -sub_0202F400: ; 0x0202F400 - push {r3, r4} - ldr r1, _0202F430 ; =0x0000FFFF - mov r3, #0 - add r4, r0, #0 -_0202F408: - add r2, r0, r3 - ldrb r2, [r2, #4] - cmp r2, #0xf - bne _0202F416 - ldrh r2, [r4, #8] - cmp r2, r1 - beq _0202F41C -_0202F416: - mov r0, #1 - pop {r3, r4} - bx lr -_0202F41C: - add r3, r3, #1 - add r4, r4, #2 - cmp r3, #4 - blt _0202F408 - mov r1, #0 - str r1, [r0] - add r0, r1, #0 - pop {r3, r4} - bx lr - nop -_0202F430: .word 0x0000FFFF - thumb_func_end sub_0202F400 - - thumb_func_start sub_0202F434 -sub_0202F434: ; 0x0202F434 - push {r3, r4} - ldr r2, [r0] - strh r2, [r1] - ldrh r3, [r1, #2] - ldrb r4, [r0, #4] - mov r2, #0xf - bic r3, r2 - mov r2, #0xf - and r4, r2 - lsl r4, r4, #0x10 - lsr r4, r4, #0x10 - and r4, r2 - orr r3, r4 - strh r3, [r1, #2] - ldrh r3, [r1, #2] - mov r4, #0xf0 - bic r3, r4 - ldrb r4, [r0, #5] - and r4, r2 - lsl r4, r4, #0x10 - lsr r4, r4, #0x10 - lsl r4, r4, #0x1c - lsr r4, r4, #0x18 - orr r3, r4 - strh r3, [r1, #2] - ldrh r4, [r1, #2] - ldr r3, _0202F4A8 ; =0xFFFFF0FF - and r3, r4 - ldrb r4, [r0, #6] - and r4, r2 - lsl r4, r4, #0x10 - lsr r4, r4, #0x10 - lsl r4, r4, #0x1c - lsr r4, r4, #0x14 - orr r3, r4 - strh r3, [r1, #2] - ldrh r4, [r1, #2] - ldr r3, _0202F4AC ; =0xFFFF0FFF - and r3, r4 - ldrb r4, [r0, #7] - and r2, r4 - lsl r2, r2, #0x10 - lsr r2, r2, #0x10 - lsl r2, r2, #0x1c - lsr r2, r2, #0x10 - orr r2, r3 - strh r2, [r1, #2] - mov r3, #0 -_0202F494: - ldrh r2, [r0, #8] - add r3, r3, #1 - add r0, r0, #2 - strh r2, [r1, #4] - add r1, r1, #2 - cmp r3, #4 - blt _0202F494 - pop {r3, r4} - bx lr - nop -_0202F4A8: .word 0xFFFFF0FF -_0202F4AC: .word 0xFFFF0FFF - thumb_func_end sub_0202F434 - - thumb_func_start sub_0202F4B0 -sub_0202F4B0: ; 0x0202F4B0 - ldrh r2, [r0] - mov r3, #0 - str r2, [r1] - ldrh r2, [r0, #2] - lsl r2, r2, #0x1c - lsr r2, r2, #0x1c - strb r2, [r1, #4] - ldrh r2, [r0, #2] - lsl r2, r2, #0x18 - lsr r2, r2, #0x1c - strb r2, [r1, #5] - ldrh r2, [r0, #2] - lsl r2, r2, #0x14 - lsr r2, r2, #0x1c - strb r2, [r1, #6] - ldrh r2, [r0, #2] - lsl r2, r2, #0x10 - lsr r2, r2, #0x1c - strb r2, [r1, #7] -_0202F4D6: - ldrh r2, [r0, #4] - add r3, r3, #1 - add r0, r0, #2 - strh r2, [r1, #8] - add r1, r1, #2 - cmp r3, #4 - blt _0202F4D6 - bx lr - .balign 4, 0 - thumb_func_end sub_0202F4B0 - - thumb_func_start sub_0202F4E8 -sub_0202F4E8: ; 0x0202F4E8 - push {r3, lr} - cmp r1, #0x64 - blo _0202F4F2 - mov r0, #0 - pop {r3, pc} -_0202F4F2: - mov r2, #0xc - mul r2, r1 - add r0, r0, r2 - bl sub_0202F370 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0202F4E8 - - thumb_func_start sub_0202F500 -sub_0202F500: ; 0x0202F500 - push {r3, lr} - cmp r1, #0x64 - bhs _0202F510 - mov r2, #0xc - mul r2, r1 - add r0, r0, r2 - bl sub_0202F388 -_0202F510: - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0202F500 - - thumb_func_start sub_0202F514 -sub_0202F514: ; 0x0202F514 - push {r3, r4, r5, lr} - add r4, r0, #0 - cmp r2, #0x64 - blo _0202F526 - add r0, r1, #0 - bl sub_0202F3DC - mov r0, #0 - pop {r3, r4, r5, pc} -_0202F526: - mov r0, #0xc - add r5, r2, #0 - mul r5, r0 - add r0, r4, r5 - bl sub_0202F4B0 - add r0, r4, r5 - bl sub_0202F370 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0202F514 - - thumb_func_start sub_0202F53C -sub_0202F53C: ; 0x0202F53C - push {r4, r5, r6, lr} - add r4, r2, #0 - add r5, r0, #0 - add r6, r1, #0 - cmp r4, #0x64 - blo _0202F54C - mov r0, #0 - pop {r4, r5, r6, pc} -_0202F54C: - cmp r3, #0 - bne _0202F562 - mov r0, #0xc - mul r0, r4 - add r0, r5, r0 - bl sub_0202F370 - cmp r0, #1 - bne _0202F562 - mov r0, #0 - pop {r4, r5, r6, pc} -_0202F562: - mov r1, #0xc - mul r1, r4 - add r0, r6, #0 - add r1, r5, r1 - bl sub_0202F434 - mov r0, #1 - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0202F53C - - thumb_func_start sub_0202F574 -sub_0202F574: ; 0x0202F574 - ldr r0, _0202F578 ; =0x000005FC - bx lr - .balign 4, 0 -_0202F578: .word 0x000005FC - thumb_func_end sub_0202F574 - - thumb_func_start sub_0202F57C -sub_0202F57C: ; 0x0202F57C - ldr r3, _0202F584 ; =SavArray_get - mov r1, #0x23 - bx r3 - nop -_0202F584: .word SavArray_get - thumb_func_end sub_0202F57C - - thumb_func_start sub_0202F588 -sub_0202F588: ; 0x0202F588 - push {r3, r4, r5, r6, r7, lr} - mov r4, #0 - mov r6, #0xba - str r0, [sp] - add r5, r0, #0 - add r7, r4, #0 - lsl r6, r6, #2 -_0202F596: - mov r2, #0xba - add r0, r5, #0 - add r1, r7, #0 - lsl r2, r2, #2 - bl MIi_CpuFill8 - add r4, r4, #1 - add r5, r5, r6 - cmp r4, #2 - blt _0202F596 - mov r1, #0x5d - ldr r0, [sp] - lsl r1, r1, #4 - add r0, r0, r1 - bl sub_0202FA08 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0202F588 - - thumb_func_start sub_0202F5B8 -sub_0202F5B8: ; 0x0202F5B8 - push {r3, r4, r5, r6, r7, lr} - add r7, r0, #0 - add r0, r1, #0 - mov r1, #0xa - mov r6, #0 - bl _u32_div_f - mov r0, #6 - ldr r2, _0202F5F4 ; =0x020F6888 - mul r0, r1 - add r4, r2, r0 - add r5, r7, #0 -_0202F5D0: - ldrb r1, [r4] - add r0, r5, #0 - bl sub_0202F9E8 - add r6, r6, #1 - add r4, r4, #1 - add r5, #0x7a - cmp r6, #6 - blt _0202F5D0 - mov r0, #0xb7 - lsl r0, r0, #2 - add r0, r7, r0 - mov r1, #0 - mov r2, #0xc - bl MIi_CpuFill8 - pop {r3, r4, r5, r6, r7, pc} - nop -_0202F5F4: .word 0x020F6888 - thumb_func_end sub_0202F5B8 - - thumb_func_start sub_0202F5F8 -sub_0202F5F8: ; 0x0202F5F8 - push {r4, lr} - add r4, r0, #0 - cmp r1, #2 - blt _0202F606 - bl GF_AssertFail - mov r1, #0 -_0202F606: - ldr r3, _0202F61C ; =0x000005F9 - lsl r1, r1, #0x18 - ldrb r0, [r4, r3] - lsr r1, r1, #0x18 - mov r2, #0xc0 - lsl r1, r1, #0x1e - bic r0, r2 - lsr r1, r1, #0x18 - orr r0, r1 - strb r0, [r4, r3] - pop {r4, pc} - .balign 4, 0 -_0202F61C: .word 0x000005F9 - thumb_func_end sub_0202F5F8 - - thumb_func_start sub_0202F620 -sub_0202F620: ; 0x0202F620 - ldr r1, _0202F62C ; =0x000005F9 - ldrb r0, [r0, r1] - lsl r0, r0, #0x18 - lsr r0, r0, #0x1e - bx lr - nop -_0202F62C: .word 0x000005F9 - thumb_func_end sub_0202F620 - - thumb_func_start sub_0202F630 -sub_0202F630: ; 0x0202F630 - push {r4, lr} - add r4, r0, #0 - cmp r1, #3 - bne _0202F640 - ldr r0, _0202F654 ; =0x000005F9 - ldrb r0, [r4, r0] - lsl r0, r0, #0x18 - lsr r1, r0, #0x1e -_0202F640: - cmp r1, #2 - blt _0202F64A - bl GF_AssertFail - mov r1, #0 -_0202F64A: - mov r0, #0xba - lsl r0, r0, #2 - mul r0, r1 - add r0, r4, r0 - pop {r4, pc} - .balign 4, 0 -_0202F654: .word 0x000005F9 - thumb_func_end sub_0202F630 - - thumb_func_start sub_0202F658 -sub_0202F658: ; 0x0202F658 - push {r4, lr} - add r4, r2, #0 - cmp r1, #2 - blt _0202F66C - bl GF_AssertFail - add r0, r4, #0 - bl sub_0202F9CC - pop {r4, pc} -_0202F66C: - mov r2, #0xba - add r3, r1, #0 - lsl r2, r2, #2 - mul r3, r2 - add r0, r0, r3 - add r1, r4, #0 - bl MIi_CpuCopy8 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0202F658 - - thumb_func_start sub_0202F680 -sub_0202F680: ; 0x0202F680 - push {r4, lr} - add r4, r0, #0 - cmp r1, #2 - blt _0202F68E - bl GF_AssertFail - pop {r4, pc} -_0202F68E: - add r0, r2, #0 - mov r2, #0xba - lsl r2, r2, #2 - add r3, r1, #0 - mul r3, r2 - add r1, r4, r3 - bl MIi_CpuCopy8 - pop {r4, pc} - thumb_func_end sub_0202F680 - - thumb_func_start sub_0202F6A0 -sub_0202F6A0: ; 0x0202F6A0 - ldr r2, _0202F6A8 ; =0x000005F8 - strb r1, [r0, r2] - bx lr - nop -_0202F6A8: .word 0x000005F8 - thumb_func_end sub_0202F6A0 - - thumb_func_start sub_0202F6AC -sub_0202F6AC: ; 0x0202F6AC - ldr r1, _0202F6B4 ; =0x000005F8 - ldrb r0, [r0, r1] - bx lr - nop -_0202F6B4: .word 0x000005F8 - thumb_func_end sub_0202F6AC - - thumb_func_start sub_0202F6B8 -sub_0202F6B8: ; 0x0202F6B8 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - add r7, r1, #0 - str r0, [sp] - cmp r7, #0 - ble _0202F71C - mov r4, #0 - add r0, sp, #8 - add r1, r4, #0 - mov r2, #6 - bl MIi_CpuFill8 - add r0, r4, #0 - ldr r5, [sp] - str r0, [sp, #4] -_0202F6D6: - ldrb r6, [r5] - lsl r2, r4, #0x18 - add r1, sp, #8 - add r0, r6, #0 - lsr r2, r2, #0x18 - bl sub_0202FA3C - cmp r0, #0 - bne _0202F710 - ldr r0, [sp] - mov r1, #0xb7 - add r0, r0, r6 - lsl r1, r1, #2 - ldrb r1, [r0, r1] - add r1, r7, r1 - cmp r1, #0xff - bge _0202F702 - mov r1, #0xb7 - lsl r1, r1, #2 - ldrb r1, [r0, r1] - add r2, r1, r7 - b _0202F704 -_0202F702: - mov r2, #0xff -_0202F704: - mov r1, #0xb7 - lsl r1, r1, #2 - strb r2, [r0, r1] - add r0, sp, #8 - strb r6, [r0, r4] - add r4, r4, #1 -_0202F710: - ldr r0, [sp, #4] - add r5, #0x7a - add r0, r0, #1 - str r0, [sp, #4] - cmp r0, #6 - blt _0202F6D6 -_0202F71C: - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0202F6B8 - - thumb_func_start sub_0202F720 -sub_0202F720: ; 0x0202F720 - ldr r1, _0202F72C ; =0x000005F9 - ldrb r0, [r0, r1] - lsl r0, r0, #0x1a - lsr r0, r0, #0x1a - bx lr - nop -_0202F72C: .word 0x000005F9 - thumb_func_end sub_0202F720 - - thumb_func_start sub_0202F730 -sub_0202F730: ; 0x0202F730 - push {r4, lr} - ldr r2, _0202F750 ; =0x000005F9 - add r4, r0, #0 - ldrb r2, [r4, r2] - lsl r2, r2, #0x1a - lsr r2, r2, #0x1a - add r1, r2, r1 - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - bl sub_0202F754 - ldr r0, _0202F750 ; =0x000005F9 - ldrb r0, [r4, r0] - lsl r0, r0, #0x1a - lsr r0, r0, #0x1a - pop {r4, pc} - .balign 4, 0 -_0202F750: .word 0x000005F9 - thumb_func_end sub_0202F730 - - thumb_func_start sub_0202F754 -sub_0202F754: ; 0x0202F754 - push {r3, r4} - cmp r1, #4 - bls _0202F76C - ldr r2, _0202F780 ; =0x000005F9 - mov r1, #0x3f - ldrb r3, [r0, r2] - bic r3, r1 - mov r1, #4 - orr r1, r3 - strb r1, [r0, r2] - pop {r3, r4} - bx lr -_0202F76C: - ldr r3, _0202F780 ; =0x000005F9 - mov r2, #0x3f - ldrb r4, [r0, r3] - bic r4, r2 - mov r2, #0x3f - and r1, r2 - orr r1, r4 - strb r1, [r0, r3] - pop {r3, r4} - bx lr - .balign 4, 0 -_0202F780: .word 0x000005F9 - thumb_func_end sub_0202F754 - - thumb_func_start sub_0202F784 -sub_0202F784: ; 0x0202F784 - ldrh r2, [r1] - ldrb r3, [r1, #2] - mov r1, #0x3c - mul r1, r2 - add r2, r3, r1 - ldr r1, _0202F794 ; =0x000005FA - strh r2, [r0, r1] - bx lr - .balign 4, 0 -_0202F794: .word 0x000005FA - thumb_func_end sub_0202F784 - - thumb_func_start sub_0202F798 -sub_0202F798: ; 0x0202F798 - push {r4, r5} - ldrb r5, [r1, #2] - ldrh r1, [r1] - mov r4, #0x3c - add r3, r1, #0 - mul r3, r4 - add r1, r5, r3 - ldr r3, _0202F7D0 ; =0x000005FA - lsl r1, r1, #0x10 - ldrh r0, [r0, r3] - lsr r1, r1, #0x10 - sub r3, r1, r0 - add r0, r2, #0 - mul r0, r4 - cmp r3, r0 - blt _0202F7BE - mov r0, #1 - pop {r4, r5} - bx lr -_0202F7BE: - ldr r0, _0202F7D4 ; =0x0000EA5F - cmp r1, r0 - blo _0202F7CA - mov r0, #2 - pop {r4, r5} - bx lr -_0202F7CA: - mov r0, #0 - pop {r4, r5} - bx lr - .balign 4, 0 -_0202F7D0: .word 0x000005FA -_0202F7D4: .word 0x0000EA5F - thumb_func_end sub_0202F798 - - thumb_func_start sub_0202F7D8 -sub_0202F7D8: ; 0x0202F7D8 - push {r3, r4, r5, r6, r7, lr} - add r6, r0, #0 - mov r0, #0x5d - lsl r0, r0, #4 - add r5, r1, #0 - add r4, r6, r0 - add r0, r5, #0 - add r7, r2, #0 - bl PlayerProfile_GetTrainerID - str r0, [r4, #0x14] - add r0, r5, #0 - bl PlayerProfile_GetTrainerGender - strb r0, [r4, #0x11] - add r0, r5, #0 - bl sub_02029088 - strb r0, [r4, #0x12] - add r0, r5, #0 - bl sub_0202907C - strb r0, [r4, #0x13] - mov r0, #0x10 - add r1, r7, #0 - bl String_ctor - add r7, r0, #0 - add r0, r5, #0 - add r1, r7, #0 - bl sub_02028F58 - add r1, r4, #0 - add r0, r7, #0 - add r1, #0x18 - mov r2, #0x10 - bl CopyStringToU16Array - add r0, r7, #0 - bl String_dtor - mov r0, #1 - strb r0, [r4, #0x10] - bl GF_RTC_DateTimeToSec - mov r2, #0x5d - lsl r2, r2, #4 - str r0, [r6, r2] - str r1, [r4, #4] - bl OS_GetOwnerRtcOffset - str r0, [r4, #8] - str r1, [r4, #0xc] - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0202F7D8 - - thumb_func_start sub_0202F844 -sub_0202F844: ; 0x0202F844 - push {r3, r4, r5, lr} - add r4, r1, #0 - mov r1, #0x5d - lsl r1, r1, #4 - add r5, r0, r1 - ldr r1, [r5, #0x14] - add r0, r4, #0 - bl sub_02028F80 - ldrb r1, [r5, #0x11] - add r0, r4, #0 - bl sub_02028F90 - ldrb r1, [r5, #0x12] - add r0, r4, #0 - bl sub_0202908C - ldrb r1, [r5, #0x13] - add r0, r4, #0 - bl sub_02029080 - add r5, #0x18 - add r0, r4, #0 - add r1, r5, #0 - bl sub_02028F24 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0202F844 - - thumb_func_start sub_0202F87C -sub_0202F87C: ; 0x0202F87C - ldr r1, _0202F884 ; =0x000005E1 - ldrb r0, [r0, r1] - bx lr - nop -_0202F884: .word 0x000005E1 - thumb_func_end sub_0202F87C - - thumb_func_start sub_0202F888 -sub_0202F888: ; 0x0202F888 - mov r1, #0x5e - lsl r1, r1, #4 - ldrb r0, [r0, r1] - bx lr - thumb_func_end sub_0202F888 - - thumb_func_start sub_0202F890 -sub_0202F890: ; 0x0202F890 - push {r4, lr} - mov r1, #0x5d - lsl r1, r1, #4 - add r4, r0, r1 - ldrb r0, [r4, #0x10] - cmp r0, #0 - beq _0202F8CE - bl GF_RTC_DateTimeToSec - ldr r3, [r4] - ldr r2, [r4, #4] - sub r3, r0, r3 - sbc r1, r2 - mov r2, #0 - ldr r0, _0202F8D0 ; =0x00015180 - sub r0, r0, r3 - sbc r2, r1 - bge _0202F8BA - mov r0, #0 - strb r0, [r4, #0x10] - pop {r4, pc} -_0202F8BA: - bl OS_GetOwnerRtcOffset - ldr r3, [r4, #8] - ldr r2, [r4, #0xc] - eor r0, r3 - eor r1, r2 - orr r0, r1 - beq _0202F8CE - mov r0, #0 - strb r0, [r4, #0x10] -_0202F8CE: - pop {r4, pc} - .balign 4, 0 -_0202F8D0: .word 0x00015180 - thumb_func_end sub_0202F890 - - thumb_func_start sub_0202F8D4 -sub_0202F8D4: ; 0x0202F8D4 - push {r4, r5, r6} - sub sp, #0x7c - mov r4, #0x7a - add r3, r1, #0 - mul r3, r4 - add r1, r0, r3 - add r6, r1, #0 - add r5, sp, #0 -_0202F8E4: - ldrb r3, [r6] - add r6, r6, #1 - strb r3, [r5] - add r5, r5, #1 - sub r4, r4, #1 - bne _0202F8E4 - mov r3, #0x7a - add r4, r2, #0 - mul r4, r3 - add r4, r0, r4 - add r2, r4, #0 -_0202F8FA: - ldrb r0, [r2] - add r2, r2, #1 - strb r0, [r1] - add r1, r1, #1 - sub r3, r3, #1 - bne _0202F8FA - add r2, sp, #0 - mov r1, #0x7a -_0202F90A: - ldrb r0, [r2] - add r2, r2, #1 - strb r0, [r4] - add r4, r4, #1 - sub r1, r1, #1 - bne _0202F90A - add sp, #0x7c - pop {r4, r5, r6} - bx lr - thumb_func_end sub_0202F8D4 - - thumb_func_start sub_0202F91C -sub_0202F91C: ; 0x0202F91C - mov r3, #0x7a - mul r3, r1 - add r0, r0, r3 - lsl r1, r2, #0x18 - ldr r3, _0202F92C ; =sub_0202F9E8 - lsr r1, r1, #0x18 - bx r3 - nop -_0202F92C: .word sub_0202F9E8 - thumb_func_end sub_0202F91C - - thumb_func_start sub_0202F930 -sub_0202F930: ; 0x0202F930 - push {r3, lr} - cmp r1, #6 - blt _0202F93C - bl GF_AssertFail - pop {r3, pc} -_0202F93C: - mov r3, #0x7a - mul r3, r1 - add r3, r0, r3 - ldrb r1, [r3, #1] - cmp r1, #0x1e - blo _0202F94E - bl GF_AssertFail - pop {r3, pc} -_0202F94E: - add r0, r1, #1 - strb r0, [r3, #1] - lsl r0, r1, #2 - add r1, r3, r0 - ldrb r0, [r2] - strb r0, [r1, #2] - ldrb r0, [r2, #1] - strb r0, [r1, #3] - ldrb r0, [r2, #2] - strb r0, [r1, #4] - ldrb r0, [r2, #3] - strb r0, [r1, #5] - pop {r3, pc} - thumb_func_end sub_0202F930 - - thumb_func_start sub_0202F968 -sub_0202F968: ; 0x0202F968 - push {r4, lr} - cmp r1, #6 - blt _0202F974 - bl GF_AssertFail - pop {r4, pc} -_0202F974: - mov r3, #0x7a - mul r3, r1 - add r0, r0, r3 - ldrb r1, [r0, #1] - cmp r2, r1 - blo _0202F986 - bl GF_AssertFail - pop {r4, pc} -_0202F986: - sub r1, r1, #1 - strb r1, [r0, #1] - ldrb r4, [r0, #1] - cmp r2, r4 - bne _0202F99C - add r1, r0, #2 - lsl r0, r2, #2 - add r0, r1, r0 - bl sub_0202F9FC - pop {r4, pc} -_0202F99C: - cmp r2, r4 - bge _0202F9BE - lsl r1, r2, #2 - add r3, r0, r1 -_0202F9A4: - ldrb r1, [r3, #6] - add r2, r2, #1 - strb r1, [r3, #2] - ldrb r1, [r3, #7] - strb r1, [r3, #3] - ldrb r1, [r3, #8] - strb r1, [r3, #4] - ldrb r1, [r3, #9] - strb r1, [r3, #5] - ldrb r4, [r0, #1] - add r3, r3, #4 - cmp r2, r4 - blt _0202F9A4 -_0202F9BE: - add r1, r0, #2 - lsl r0, r4, #2 - add r0, r1, r0 - bl sub_0202F9FC - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0202F968 - - thumb_func_start sub_0202F9CC -sub_0202F9CC: ; 0x0202F9CC - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r4, #0 -_0202F9D2: - lsl r1, r4, #0x18 - add r0, r5, #0 - lsr r1, r1, #0x18 - bl sub_0202F9E8 - add r4, r4, #1 - add r5, #0x7a - cmp r4, #6 - blt _0202F9D2 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0202F9CC - - thumb_func_start sub_0202F9E8 -sub_0202F9E8: ; 0x0202F9E8 - push {r3, r4, r5, lr} - add r4, r1, #0 - mov r1, #0 - mov r2, #0x7a - add r5, r0, #0 - bl MIi_CpuFill8 - strb r4, [r5] - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0202F9E8 - - thumb_func_start sub_0202F9FC -sub_0202F9FC: ; 0x0202F9FC - ldr r3, _0202FA04 ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #4 - bx r3 - .balign 4, 0 -_0202FA04: .word MIi_CpuFill8 - thumb_func_end sub_0202F9FC - - thumb_func_start sub_0202FA08 -sub_0202FA08: ; 0x0202FA08 - push {r4, lr} - mov r1, #0 - mov r2, #0x28 - add r4, r0, #0 - bl MIi_CpuFill8 - mov r0, #0 - str r0, [r4, #0x14] - strb r0, [r4, #0x11] - ldr r0, _0202FA34 ; =gGameLanguage - mov r1, #8 - ldrb r0, [r0] - strb r0, [r4, #0x12] - ldr r0, _0202FA38 ; =gGameVersion - ldrb r0, [r0] - strb r0, [r4, #0x13] - add r4, #0x18 - add r0, r4, #0 - bl StringFillEOS - pop {r4, pc} - nop -_0202FA34: .word gGameLanguage -_0202FA38: .word gGameVersion - thumb_func_end sub_0202FA08 - - thumb_func_start sub_0202FA3C -sub_0202FA3C: ; 0x0202FA3C - push {r3, r4} - mov r4, #0 - cmp r2, #0 - ble _0202FA56 -_0202FA44: - ldrb r3, [r1, r4] - cmp r0, r3 - bne _0202FA50 - mov r0, #1 - pop {r3, r4} - bx lr -_0202FA50: - add r4, r4, #1 - cmp r4, r2 - blt _0202FA44 -_0202FA56: - mov r0, #0 - pop {r3, r4} - bx lr - thumb_func_end sub_0202FA3C - - thumb_func_start sub_0202FA5C -sub_0202FA5C: ; 0x0202FA5C - ldr r0, _0202FA60 ; =0x00001294 - bx lr - .balign 4, 0 -_0202FA60: .word 0x00001294 - thumb_func_end sub_0202FA5C - - thumb_func_start sub_0202FA64 -sub_0202FA64: ; 0x0202FA64 - ldr r3, _0202FA6C ; =SavArray_get - mov r1, #0x24 - bx r3 - nop -_0202FA6C: .word SavArray_get - thumb_func_end sub_0202FA64 - - thumb_func_start sub_0202FA70 -sub_0202FA70: ; 0x0202FA70 - push {r3, r4, r5, lr} - mov r4, #0 - str r4, [r0] - add r5, r0, #4 -_0202FA78: - add r0, r5, #0 - bl sub_0202FB98 - add r4, r4, #1 - add r5, #0x84 - cmp r4, #0x24 - blt _0202FA78 - pop {r3, r4, r5, pc} - thumb_func_end sub_0202FA70 - - thumb_func_start sub_0202FA88 -sub_0202FA88: ; 0x0202FA88 - push {r4, r5, r6, lr} - mov r5, #0 - add r4, r0, #4 - mov r6, #0x84 -_0202FA90: - add r0, r5, #0 - mul r0, r6 - add r0, r4, r0 - bl sub_0202FBBC - cmp r0, #0 - bne _0202FAA2 - add r0, r5, #0 - pop {r4, r5, r6, pc} -_0202FAA2: - add r0, r5, #1 - lsl r0, r0, #0x18 - lsr r5, r0, #0x18 - cmp r5, #0x24 - blo _0202FA90 - mov r0, #0xff - pop {r4, r5, r6, pc} - thumb_func_end sub_0202FA88 - - thumb_func_start sub_0202FAB0 -sub_0202FAB0: ; 0x0202FAB0 - push {r3, r4, r5, r6, r7, lr} - mov r4, #0 - add r5, r4, #0 - add r6, r0, #4 - mov r7, #0x84 -_0202FABA: - add r0, r4, #0 - mul r0, r7 - add r0, r6, r0 - bl sub_0202FBBC - cmp r0, #0 - beq _0202FACE - add r0, r5, #1 - lsl r0, r0, #0x18 - lsr r5, r0, #0x18 -_0202FACE: - add r0, r4, #1 - lsl r0, r0, #0x18 - lsr r4, r0, #0x18 - cmp r4, #0x24 - blo _0202FABA - add r0, r5, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0202FAB0 - - thumb_func_start sub_0202FADC -sub_0202FADC: ; 0x0202FADC - push {r3, lr} - cmp r1, #0x24 - bhs _0202FAEE - add r2, r0, #4 - mov r0, #0x84 - mul r0, r1 - add r0, r2, r0 - bl sub_0202FB98 -_0202FAEE: - pop {r3, pc} - thumb_func_end sub_0202FADC - - thumb_func_start sub_0202FAF0 -sub_0202FAF0: ; 0x0202FAF0 - push {r4, lr} - add r3, r0, #0 - cmp r2, #0x24 - blo _0202FAFC - mov r0, #0 - pop {r4, pc} -_0202FAFC: - add r0, r1, #0 - add r4, r3, #4 - mov r3, #0x84 - add r1, r2, #0 - mul r1, r3 - add r1, r4, r1 - add r2, r3, #0 - bl MIi_CpuCopy8 - mov r0, #1 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0202FAF0 - - thumb_func_start sub_0202FB14 -sub_0202FB14: ; 0x0202FB14 - push {r4, lr} - cmp r2, #0x24 - blo _0202FB24 - add r0, r1, #0 - bl sub_0202FB98 - mov r0, #0 - pop {r4, pc} -_0202FB24: - add r4, r0, #4 - mov r3, #0x84 - add r0, r2, #0 - mul r0, r3 - add r0, r4, r0 - add r2, r3, #0 - bl MIi_CpuCopy8 - mov r0, #1 - pop {r4, pc} - thumb_func_end sub_0202FB14 - - thumb_func_start sub_0202FB38 -sub_0202FB38: ; 0x0202FB38 - push {r3, r4, r5, r6, r7, lr} - add r4, r0, #0 - add r6, r1, #0 - bl sub_0202FAB0 - add r5, r0, #0 - mov r1, #0x84 - mul r5, r1 - add r0, r6, #0 - add r1, r5, #0 - bl AllocFromHeap - mov r1, #0 - add r2, r5, #0 - str r0, [sp] - bl MIi_CpuFill8 - mov r7, #0 - add r5, r7, #0 - add r4, r4, #4 -_0202FB60: - mov r0, #0x84 - add r6, r5, #0 - mul r6, r0 - add r0, r4, r6 - bl sub_0202FBBC - cmp r0, #0 - beq _0202FB88 - add r1, r7, #0 - mov r2, #0x84 - add r0, r7, #1 - mul r2, r1 - ldr r1, [sp] - lsl r0, r0, #0x18 - lsr r7, r0, #0x18 - add r1, r1, r2 - add r0, r4, r6 - mov r2, #0x84 - bl MIi_CpuCopy8 -_0202FB88: - add r0, r5, #1 - lsl r0, r0, #0x18 - lsr r5, r0, #0x18 - cmp r5, #0x24 - blo _0202FB60 - ldr r0, [sp] - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0202FB38 - - thumb_func_start sub_0202FB98 -sub_0202FB98: ; 0x0202FB98 - push {r4, lr} - add r4, r0, #0 - mov r1, #0 - mov r2, #0x84 - bl MIi_CpuFill8 - add r0, r4, #0 - add r0, #8 - mov r1, #8 - bl StringFillEOS - add r4, #0x18 - add r0, r4, #0 - mov r1, #0xc - bl StringFillEOS - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0202FB98 - - thumb_func_start sub_0202FBBC -sub_0202FBBC: ; 0x0202FBBC - ldrb r0, [r0, #7] - cmp r0, #0 - beq _0202FBC6 - mov r0, #1 - bx lr -_0202FBC6: - mov r0, #0 - bx lr - .balign 4, 0 - thumb_func_end sub_0202FBBC - - thumb_func_start sub_0202FBCC -sub_0202FBCC: ; 0x0202FBCC - ldr r0, _0202FBD0 ; =0x00001D50 - bx lr - .balign 4, 0 -_0202FBD0: .word 0x00001D50 - thumb_func_end sub_0202FBCC - - thumb_func_start sub_0202FBD4 -sub_0202FBD4: ; 0x0202FBD4 - push {r4, lr} - add r4, r0, #0 - ldr r2, _0202FBEC ; =0x00001D50 - mov r0, #0 - add r1, r4, #0 - bl sub_020D47EC - mov r0, #0 - mvn r0, r0 - str r0, [r4] - pop {r4, pc} - nop -_0202FBEC: .word 0x00001D50 - thumb_func_end sub_0202FBD4 - - thumb_func_start sub_0202FBF0 -sub_0202FBF0: ; 0x0202FBF0 - push {r4, r5, r6, lr} - add r5, r0, #0 - ldr r0, _0202FC20 ; =0x021D2AF8 - add r4, r1, #0 - ldr r0, [r0] - add r6, r2, #0 - cmp r0, #0 - beq _0202FC0A - bl FreeToHeap - ldr r0, _0202FC20 ; =0x021D2AF8 - mov r1, #0 - str r1, [r0] -_0202FC0A: - add r0, r5, #0 - add r1, r4, #0 - add r2, r6, #0 - mov r3, #0 - bl sub_0202711C - ldr r1, _0202FC20 ; =0x021D2AF8 - str r0, [r1] - bl sub_0202FBD4 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0202FC20: .word 0x021D2AF8 - thumb_func_end sub_0202FBF0 - - thumb_func_start sub_0202FC24 -sub_0202FC24: ; 0x0202FC24 - push {r3, lr} - ldr r0, _0202FC44 ; =0x021D2AF8 - ldr r0, [r0] - cmp r0, #0 - bne _0202FC32 - bl GF_AssertFail -_0202FC32: - ldr r0, _0202FC44 ; =0x021D2AF8 - ldr r0, [r0] - bl FreeToHeap - ldr r0, _0202FC44 ; =0x021D2AF8 - mov r1, #0 - str r1, [r0] - pop {r3, pc} - nop -_0202FC44: .word 0x021D2AF8 - thumb_func_end sub_0202FC24 - - thumb_func_start sub_0202FC48 -sub_0202FC48: ; 0x0202FC48 - ldr r0, _0202FC58 ; =0x021D2AF8 - ldr r0, [r0] - cmp r0, #0 - beq _0202FC54 - mov r0, #1 - bx lr -_0202FC54: - mov r0, #0 - bx lr - .balign 4, 0 -_0202FC58: .word 0x021D2AF8 - thumb_func_end sub_0202FC48 - - thumb_func_start sub_0202FC5C -sub_0202FC5C: ; 0x0202FC5C - push {r3, lr} - ldr r0, _0202FC70 ; =0x021D2AF8 - ldr r0, [r0] - cmp r0, #0 - bne _0202FC6A - bl GF_AssertFail -_0202FC6A: - ldr r0, _0202FC70 ; =0x021D2AF8 - ldr r0, [r0] - pop {r3, pc} - .balign 4, 0 -_0202FC70: .word 0x021D2AF8 - thumb_func_end sub_0202FC5C - - thumb_func_start sub_0202FC74 -sub_0202FC74: ; 0x0202FC74 - push {r3, lr} - ldr r0, _0202FC8C ; =0x021D2AF8 - ldr r0, [r0] - cmp r0, #0 - bne _0202FC82 - bl GF_AssertFail -_0202FC82: - ldr r0, _0202FC8C ; =0x021D2AF8 - ldr r0, [r0] - add r0, r0, #4 - pop {r3, pc} - nop -_0202FC8C: .word 0x021D2AF8 - thumb_func_end sub_0202FC74 - - thumb_func_start sub_0202FC90 -sub_0202FC90: ; 0x0202FC90 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - ldr r0, _0202FD1C ; =0x021D2AF8 - add r7, r1, #0 - ldr r0, [r0] - add r4, r2, #0 - add r6, r3, #0 - cmp r0, #0 - beq _0202FCAC - bl FreeToHeap - ldr r0, _0202FD1C ; =0x021D2AF8 - mov r1, #0 - str r1, [r0] -_0202FCAC: - ldr r3, [sp, #0x18] - add r0, r5, #0 - add r1, r7, #0 - add r2, r4, #0 - bl sub_0202711C - ldr r1, _0202FD1C ; =0x021D2AF8 - str r0, [r1] - ldr r1, [r4] - cmp r1, #1 - beq _0202FCCA - mov r0, #3 - str r0, [r4] - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0202FCCA: - ldr r1, _0202FD20 ; =0x00001C64 - add r0, #0xe8 - ldrh r2, [r0, r1] - ldr r3, _0202FD24 ; =0x0000FFFF - eor r3, r2 - lsl r3, r3, #0x10 - add r2, r2, r3 - bl sub_02030258 - ldr r1, _0202FD1C ; =0x021D2AF8 - add r0, r5, #0 - ldr r1, [r1] - bl sub_02030154 - cmp r0, #1 - bne _0202FCF2 - mov r0, #0 - str r0, [r4] - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0202FCF2: - ldr r1, _0202FD1C ; =0x021D2AF8 - add r0, r5, #0 - ldr r1, [r1] - bl sub_0203018C - cmp r0, #0 - bne _0202FD08 - mov r0, #2 - str r0, [r4] - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0202FD08: - cmp r6, #0 - beq _0202FD14 - add r0, r6, #0 - add r1, r5, #0 - bl sub_020304F0 -_0202FD14: - mov r0, #1 - str r0, [r4] - pop {r3, r4, r5, r6, r7, pc} - nop -_0202FD1C: .word 0x021D2AF8 -_0202FD20: .word 0x00001C64 -_0202FD24: .word 0x0000FFFF - thumb_func_end sub_0202FC90 - - thumb_func_start sub_0202FD28 -sub_0202FD28: ; 0x0202FD28 - push {r4, r5, r6, lr} - add r5, r2, #0 - add r6, r0, #0 - bl sub_0202711C - ldr r1, [r5] - add r4, r0, #0 - cmp r1, #1 - beq _0202FD46 - mov r1, #3 - str r1, [r5] - bl FreeToHeap - mov r0, #0 - pop {r4, r5, r6, pc} -_0202FD46: - ldr r1, _0202FD9C ; =0x00001C64 - add r0, #0xe8 - ldrh r2, [r0, r1] - ldr r3, _0202FDA0 ; =0x0000FFFF - eor r3, r2 - lsl r3, r3, #0x10 - add r2, r2, r3 - bl sub_02030258 - add r0, r6, #0 - add r1, r4, #0 - bl sub_02030154 - cmp r0, #1 - bne _0202FD72 - mov r0, #0 - str r0, [r5] - add r0, r4, #0 - bl FreeToHeap - mov r0, #0 - pop {r4, r5, r6, pc} -_0202FD72: - add r0, r6, #0 - add r1, r4, #0 - bl sub_0203018C - cmp r0, #0 - bne _0202FD8C - mov r0, #2 - str r0, [r5] - add r0, r4, #0 - bl FreeToHeap - mov r0, #0 - pop {r4, r5, r6, pc} -_0202FD8C: - mov r0, #1 - str r0, [r5] - add r0, r4, #0 - bl FreeToHeap - mov r0, #1 - pop {r4, r5, r6, pc} - nop -_0202FD9C: .word 0x00001C64 -_0202FDA0: .word 0x0000FFFF - thumb_func_end sub_0202FD28 - - thumb_func_start sub_0202FDA4 -sub_0202FDA4: ; 0x0202FDA4 - push {r3, r4, r5, r6, r7, lr} - add r4, r3, #0 - add r6, r1, #0 - ldrh r1, [r4] - add r5, r0, #0 - add r7, r2, #0 - cmp r1, #0 - beq _0202FDBA - cmp r1, #1 - beq _0202FDF2 - b _0202FE10 -_0202FDBA: - mov r0, #8 - bl sub_0201A728 - mov r0, #0xb - bl sub_0201A748 - add r0, r5, #0 - add r1, r6, #0 - add r2, r7, #0 - bl sub_02027134 - add r6, r0, #0 - cmp r6, #2 - bne _0202FDE8 - add r0, r5, #0 - mov r1, #2 - bl sub_02027550 - ldrh r0, [r4] - add r0, r0, #1 - strh r0, [r4] - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_0202FDE8: - mov r0, #8 - bl sub_0201A738 - add r0, r6, #0 - pop {r3, r4, r5, r6, r7, pc} -_0202FDF2: - bl sub_02027564 - add r5, r0, #0 - sub r0, r5, #2 - cmp r0, #1 - bhi _0202FE0C - mov r0, #0 - strh r0, [r4] - bl sub_0201A774 - mov r0, #8 - bl sub_0201A738 -_0202FE0C: - add r0, r5, #0 - pop {r3, r4, r5, r6, r7, pc} -_0202FE10: - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0202FDA4 - - thumb_func_start sub_0202FE14 -sub_0202FE14: ; 0x0202FE14 - push {r3, r4, r5, r6, r7, lr} - ldr r6, [sp, #0x18] - mov ip, r1 - add r1, r2, #0 - ldrh r2, [r6] - add r7, r0, #0 - cmp r2, #0 - beq _0202FE2A - cmp r2, #1 - beq _0202FE90 - b _0202FE9E -_0202FE2A: - ldr r2, _0202FEA4 ; =0x021D2AF8 - ldr r4, [r2] - cmp r4, #0 - bne _0202FE36 - mov r0, #3 - pop {r3, r4, r5, r6, r7, pc} -_0202FE36: - add r5, r4, #0 - add r4, #0xe8 - add r5, #0x84 - str r1, [sp] - add r1, r5, #0 - add r2, r4, #0 - mov r3, ip - bl sub_0202FF08 - add r0, r5, #0 - ldr r1, _0202FEA8 ; =0x0000E281 - add r0, #0x48 - strh r1, [r0] - add r0, r7, #0 - add r1, r5, #0 - mov r2, #0x58 - bl sub_020275C4 - add r5, #0x60 - strh r0, [r5] - ldr r0, _0202FEA8 ; =0x0000E281 - ldr r2, _0202FEAC ; =0x00001C62 - add r1, r4, #0 - strh r0, [r4, r2] - add r0, r7, #0 - add r2, r2, #2 - bl sub_020275C4 - ldr r1, _0202FEB0 ; =0x00001C64 - ldr r3, _0202FEB4 ; =0x0000FFFF - strh r0, [r4, r1] - ldrh r2, [r4, r1] - add r0, r4, #0 - eor r3, r2 - lsl r3, r3, #0x10 - add r2, r2, r3 - bl sub_02030250 - ldr r0, [sp, #0x1c] - mov r1, #0 - strh r1, [r0] - ldrh r0, [r6] - add r0, r0, #1 - strh r0, [r6] - b _0202FE9E -_0202FE90: - ldr r1, _0202FEA4 ; =0x021D2AF8 - add r2, r3, #0 - ldr r1, [r1] - ldr r3, [sp, #0x1c] - bl sub_0202FDA4 - pop {r3, r4, r5, r6, r7, pc} -_0202FE9E: - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_0202FEA4: .word 0x021D2AF8 -_0202FEA8: .word 0x0000E281 -_0202FEAC: .word 0x00001C62 -_0202FEB0: .word 0x00001C64 -_0202FEB4: .word 0x0000FFFF - thumb_func_end sub_0202FE14 - - thumb_func_start sub_0202FEB8 -sub_0202FEB8: ; 0x0202FEB8 - cmp r0, #0x1a - bgt _0202FEE6 - bge _0202FEF2 - add r3, r0, #0 - sub r3, #0xe - cmp r3, #9 - bhi _0202FEFC - add r3, r3, r3 - add r3, pc - ldrh r3, [r3, #6] - lsl r3, r3, #0x10 - asr r3, r3, #0x10 - add pc, r3 -_0202FED2: ; jump table - .short _0202FEF2 - _0202FED2 - 2 ; case 0 - .short _0202FEFC - _0202FED2 - 2 ; case 1 - .short _0202FEFC - _0202FED2 - 2 ; case 2 - .short _0202FEF2 - _0202FED2 - 2 ; case 3 - .short _0202FEFC - _0202FED2 - 2 ; case 4 - .short _0202FEFC - _0202FED2 - 2 ; case 5 - .short _0202FEF2 - _0202FED2 - 2 ; case 6 - .short _0202FEFC - _0202FED2 - 2 ; case 7 - .short _0202FEFC - _0202FED2 - 2 ; case 8 - .short _0202FEF2 - _0202FED2 - 2 ; case 9 -_0202FEE6: - cmp r0, #0x1d - bgt _0202FEEE - beq _0202FEF2 - b _0202FEFC -_0202FEEE: - cmp r0, #0x20 - bne _0202FEFC -_0202FEF2: - mov r0, #4 - str r0, [r1] - mov r0, #3 - str r0, [r2] - bx lr -_0202FEFC: - mov r0, #2 - str r0, [r1] - mov r0, #6 - str r0, [r2] - bx lr - .balign 4, 0 - thumb_func_end sub_0202FEB8 - - thumb_func_start sub_0202FF08 -sub_0202FF08: ; 0x0202FF08 - push {r4, r5, r6, r7, lr} - sub sp, #0x2c - str r3, [sp, #8] - add r7, r1, #0 - str r2, [sp, #4] - ldr r3, _02030148 ; =0x020F68C8 - str r0, [sp] - add r2, sp, #0x1c - mov r1, #8 -_0202FF1A: - ldrb r0, [r3] - add r3, r3, #1 - strb r0, [r2] - add r2, r2, #1 - sub r1, r1, #1 - bne _0202FF1A - ldr r1, _0203014C ; =0x020F68C4 - add r0, sp, #0x18 - ldrb r2, [r1] - strb r2, [r0] - ldrb r2, [r1, #1] - strb r2, [r0, #1] - ldrb r2, [r1, #2] - ldrb r1, [r1, #3] - strb r2, [r0, #2] - strb r1, [r0, #3] - add r0, r7, #0 - mov r1, #0 - mov r2, #0x64 - bl MIi_CpuFill8 - ldr r0, [sp, #8] - add r1, sp, #0x28 - add r2, sp, #0x24 - bl sub_0202FEB8 - ldr r0, [sp, #4] - mov r2, #0 - ldr r3, [r0] - mov r0, #4 - tst r0, r3 - beq _0202FF74 - mov r1, #0x80 - add r0, r3, #0 - tst r0, r1 - beq _0202FF6C - ldr r0, [sp, #4] - add r1, #0xc4 - ldrh r0, [r0, r1] - lsl r4, r0, #1 - b _0202FF76 -_0202FF6C: - ldr r0, [sp, #4] - add r1, #0xc4 - ldrh r4, [r0, r1] - b _0202FF76 -_0202FF74: - add r4, r2, #0 -_0202FF76: - ldr r5, [sp, #0x28] - mov r0, #0 - mov ip, r0 - cmp r5, #0 - ble _0203004E - add r0, sp, #0x18 - str r0, [sp, #0x14] - ldr r0, [sp, #4] - lsl r1, r4, #2 - add r0, r0, r1 - str r0, [sp, #0x10] - mov r0, #1 - and r0, r4 - add r3, r7, #0 - str r0, [sp, #0xc] -_0202FF94: - ldr r0, [sp, #4] - mov r1, #8 - ldr r0, [r0] - add r6, r0, #0 - and r6, r1 - beq _0202FFD6 - mov r4, #0x80 - add r1, r0, #0 - tst r1, r4 - bne _0202FFD6 - mov r6, #0 - cmp r5, #0 - ble _0202FFF6 - ldr r1, [sp, #0x10] - add r4, #0xb4 - ldr r1, [r1, r4] - ldr r0, [sp, #4] - lsl r1, r1, #0x1f - lsr r4, r1, #0x1d - add r1, sp, #0x1c - add r4, r1, r4 - mov r1, ip - ldrb r1, [r1, r4] -_0202FFC2: - mov r4, #0x4d - lsl r4, r4, #2 - ldr r4, [r0, r4] - cmp r4, r1 - beq _0202FFF6 - add r6, r6, #1 - add r0, r0, #4 - cmp r6, r5 - blt _0202FFC2 - b _0202FFF6 -_0202FFD6: - cmp r6, #0 - beq _0202FFE6 - mov r1, #0x80 - tst r0, r1 - beq _0202FFE6 - ldr r0, [sp, #0x14] - ldrb r6, [r0] - b _0202FFF6 -_0202FFE6: - ldr r0, [sp, #0xc] - mov r6, ip - cmp r0, #0 - beq _0202FFF6 - mov r0, ip - mov r1, #1 - add r6, r0, #0 - eor r6, r1 -_0202FFF6: - ldr r0, [sp, #0x24] - mov r5, #0 - cmp r0, #0 - ble _0203003C - ldr r1, _02030150 ; =0x00001154 - ldr r0, [sp, #4] - add r1, r0, r1 - mov r0, #0xa9 - lsl r0, r0, #2 - mul r0, r6 - add r4, r1, r0 -_0203000C: - ldr r0, [r4, #0x2c] - lsl r0, r0, #1 - lsr r0, r0, #0x1f - bne _0203002E - ldrh r0, [r4, #4] - lsl r0, r0, #0x1d - lsr r0, r0, #0x1f - bne _0203002E - ldrh r0, [r4, #6] - strh r0, [r3] - add r0, r4, #0 - add r0, #0x30 - ldrb r0, [r0] - lsl r0, r0, #0x18 - lsr r1, r0, #0x1b - add r0, r7, r2 - strb r1, [r0, #0x18] -_0203002E: - ldr r0, [sp, #0x24] - add r5, r5, #1 - add r3, r3, #2 - add r2, r2, #1 - add r4, #0x70 - cmp r5, r0 - blt _0203000C -_0203003C: - ldr r0, [sp, #0x14] - ldr r5, [sp, #0x28] - add r0, r0, #1 - str r0, [sp, #0x14] - mov r0, ip - add r0, r0, #1 - mov ip, r0 - cmp r0, r5 - blt _0202FF94 -_0203004E: - ldr r0, [sp, #8] - cmp r0, #0xd - bhi _02030124 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_02030060: ; jump table - .short _02030124 - _02030060 - 2 ; case 0 - .short _0203007C - _02030060 - 2 ; case 1 - .short _02030098 - _02030060 - 2 ; case 2 - .short _020300B4 - _02030060 - 2 ; case 3 - .short _020300D0 - _02030060 - 2 ; case 4 - .short _020300EC - _02030060 - 2 ; case 5 - .short _02030108 - _02030060 - 2 ; case 6 - .short _02030124 - _02030060 - 2 ; case 7 - .short _0203007C - _02030060 - 2 ; case 8 - .short _02030098 - _02030060 - 2 ; case 9 - .short _020300B4 - _02030060 - 2 ; case 10 - .short _020300D0 - _02030060 - 2 ; case 11 - .short _020300EC - _02030060 - 2 ; case 12 - .short _02030108 - _02030060 - 2 ; case 13 -_0203007C: - ldr r0, [sp] - mov r1, #0 - bl sub_020291E8 - add r3, r7, #0 - add r3, #0x28 - mov r2, #0x10 -_0203008A: - ldrh r1, [r0] - add r0, r0, #2 - strh r1, [r3] - add r3, r3, #2 - sub r2, r2, #1 - bne _0203008A - b _0203013A -_02030098: - ldr r0, [sp] - mov r1, #1 - bl sub_020291E8 - add r3, r7, #0 - add r3, #0x28 - mov r2, #0x10 -_020300A6: - ldrh r1, [r0] - add r0, r0, #2 - strh r1, [r3] - add r3, r3, #2 - sub r2, r2, #1 - bne _020300A6 - b _0203013A -_020300B4: - ldr r0, [sp] - mov r1, #2 - bl sub_020291E8 - add r3, r7, #0 - add r3, #0x28 - mov r2, #0x10 -_020300C2: - ldrh r1, [r0] - add r0, r0, #2 - strh r1, [r3] - add r3, r3, #2 - sub r2, r2, #1 - bne _020300C2 - b _0203013A -_020300D0: - ldr r0, [sp] - mov r1, #3 - bl sub_020291E8 - add r3, r7, #0 - add r3, #0x28 - mov r2, #0x10 -_020300DE: - ldrh r1, [r0] - add r0, r0, #2 - strh r1, [r3] - add r3, r3, #2 - sub r2, r2, #1 - bne _020300DE - b _0203013A -_020300EC: - ldr r0, [sp] - mov r1, #4 - bl sub_020291E8 - add r3, r7, #0 - add r3, #0x28 - mov r2, #0x10 -_020300FA: - ldrh r1, [r0] - add r0, r0, #2 - strh r1, [r3] - add r3, r3, #2 - sub r2, r2, #1 - bne _020300FA - b _0203013A -_02030108: - ldr r0, [sp] - mov r1, #5 - bl sub_020291E8 - add r3, r7, #0 - add r3, #0x28 - mov r2, #0x10 -_02030116: - ldrh r1, [r0] - add r0, r0, #2 - strh r1, [r3] - add r3, r3, #2 - sub r2, r2, #1 - bne _02030116 - b _0203013A -_02030124: - bl sub_0202925C - add r3, r7, #0 - add r3, #0x28 - mov r2, #0x10 -_0203012E: - ldrh r1, [r0] - add r0, r0, #2 - strh r1, [r3] - add r3, r3, #2 - sub r2, r2, #1 - bne _0203012E -_0203013A: - ldr r0, [sp, #0x40] - strh r0, [r7, #0x24] - ldr r0, [sp, #8] - add r7, #0x26 - strb r0, [r7] - add sp, #0x2c - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_02030148: .word 0x020F68C8 -_0203014C: .word 0x020F68C4 -_02030150: .word 0x00001154 - thumb_func_end sub_0202FF08 - - thumb_func_start sub_02030154 -sub_02030154: ; 0x02030154 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r1, #0 - add r4, #0xe8 - add r5, #0x84 - bl sub_020274E8 - cmp r0, #0 - bne _0203016A - mov r0, #1 - pop {r3, r4, r5, pc} -_0203016A: - ldr r0, _02030184 ; =0x00001C62 - ldrh r1, [r4, r0] - ldr r0, _02030188 ; =0x0000E281 - cmp r1, r0 - bne _0203017C - add r5, #0x48 - ldrh r1, [r5] - cmp r1, r0 - beq _02030180 -_0203017C: - mov r0, #1 - pop {r3, r4, r5, pc} -_02030180: - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_02030184: .word 0x00001C62 -_02030188: .word 0x0000E281 - thumb_func_end sub_02030154 - - thumb_func_start sub_0203018C -sub_0203018C: ; 0x0203018C - push {r3, r4, r5, r6, r7, lr} - add r4, r1, #0 - add r5, r1, #0 - ldr r1, _0203023C ; =0x00001C62 - add r4, #0xe8 - ldrh r1, [r4, r1] - ldr r2, _02030240 ; =0x0000E281 - add r6, r0, #0 - add r5, #0x84 - cmp r1, r2 - bne _020301AC - add r1, r5, #0 - add r1, #0x48 - ldrh r1, [r1] - cmp r1, r2 - beq _020301B0 -_020301AC: - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_020301B0: - add r1, r5, #0 - mov r2, #0x58 - bl sub_020275C4 - add r5, #0x60 - ldrh r1, [r5] - cmp r0, r1 - beq _020301C4 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_020301C4: - ldr r2, _02030244 ; =0x00001C64 - add r0, r6, #0 - add r1, r4, #0 - bl sub_020275C4 - ldr r1, _02030244 ; =0x00001C64 - ldrh r1, [r4, r1] - cmp r0, r1 - beq _020301DA - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_020301DA: - mov r0, #0 - mov ip, r0 - ldr r0, _02030248 ; =0x00001154 - add r0, r4, r0 - str r0, [sp] - ldr r0, _0203024C ; =0x000001D3 - add r7, r0, #0 - add r6, r0, #0 - add r7, #0x45 - add r6, #0x1c -_020301EE: - ldr r4, [sp] - mov r2, #0 -_020301F2: - ldrh r1, [r4, #6] - cmp r1, r6 - bls _020301FC - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_020301FC: - ldrh r1, [r4, #8] - cmp r1, r7 - bls _02030206 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02030206: - mov r3, #0 - add r5, r4, #0 -_0203020A: - ldrh r1, [r5, #0x1c] - cmp r1, r0 - bls _02030214 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02030214: - add r3, r3, #1 - add r5, r5, #2 - cmp r3, #4 - blt _0203020A - add r2, r2, #1 - add r4, #0x70 - cmp r2, #6 - blt _020301F2 - mov r1, #0xa9 - ldr r2, [sp] - lsl r1, r1, #2 - add r1, r2, r1 - str r1, [sp] - mov r1, ip - add r1, r1, #1 - mov ip, r1 - cmp r1, #4 - blt _020301EE - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203023C: .word 0x00001C62 -_02030240: .word 0x0000E281 -_02030244: .word 0x00001C64 -_02030248: .word 0x00001154 -_0203024C: .word 0x000001D3 - thumb_func_end sub_0203018C - - thumb_func_start sub_02030250 -sub_02030250: ; 0x02030250 - ldr r3, _02030254 ; =sub_0201FF44 - bx r3 - .balign 4, 0 -_02030254: .word sub_0201FF44 - thumb_func_end sub_02030250 - - thumb_func_start sub_02030258 -sub_02030258: ; 0x02030258 - ldr r3, _0203025C ; =sub_0201FF70 - bx r3 - .balign 4, 0 -_0203025C: .word sub_0201FF70 - thumb_func_end sub_02030258 - - thumb_func_start sub_02030260 -sub_02030260: ; 0x02030260 - ldr r3, _02030278 ; =0x021D2AF8 - ldr r3, [r3] - cmp r3, #0 - beq _02030274 - lsl r0, r0, #0xa - add r0, r3, r0 - add r1, r0, r1 - mov r0, #0x8e - lsl r0, r0, #2 - strb r2, [r1, r0] -_02030274: - bx lr - nop -_02030278: .word 0x021D2AF8 - thumb_func_end sub_02030260 - - thumb_func_start sub_0203027C -sub_0203027C: ; 0x0203027C - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, _020302A0 ; =0x021D2AF8 - add r4, r1, #0 - ldr r0, [r0] - cmp r0, #0 - bne _0203028E - bl GF_AssertFail -_0203028E: - ldr r0, _020302A0 ; =0x021D2AF8 - ldr r1, [r0] - lsl r0, r5, #0xa - add r0, r1, r0 - add r1, r0, r4 - mov r0, #0x8e - lsl r0, r0, #2 - ldrb r0, [r1, r0] - pop {r3, r4, r5, pc} - .balign 4, 0 -_020302A0: .word 0x021D2AF8 - thumb_func_end sub_0203027C - - thumb_func_start sub_020302A4 -sub_020302A4: ; 0x020302A4 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - str r0, [sp] - ldr r0, _0203048C ; =0x021D2AF8 - ldr r1, [r0] - cmp r1, #0 - bne _020302B4 - b _02030488 -_020302B4: - ldr r0, [sp] - add r7, r1, #0 - ldr r0, [r0] - add r1, #0xe8 - str r0, [r1] - ldr r0, [sp] - add r7, #0xe8 - ldr r0, [r0, #0x14] - ldr r1, [sp] - str r0, [r7, #4] - mov r0, #0x53 - lsl r0, r0, #2 - ldr r2, [r1, r0] - add r1, r7, #0 - add r1, #0xe8 - str r2, [r1] - ldr r1, [sp] - add r2, r0, #4 - ldr r2, [r1, r2] - add r1, r7, #0 - add r1, #0xec - str r2, [r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #8 - ldr r2, [r1, r2] - add r1, r7, #0 - add r1, #0xf0 - str r2, [r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0xc - ldr r2, [r1, r2] - add r1, r7, #0 - add r1, #0xf4 - str r2, [r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x10 - ldr r2, [r1, r2] - add r1, r7, #0 - add r1, #0xf8 - str r2, [r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x14 - ldr r2, [r1, r2] - add r1, r7, #0 - add r1, #0xfc - str r2, [r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x18 - ldr r2, [r1, r2] - add r1, r0, #0 - sub r1, #0x4c - str r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x1c - ldr r2, [r1, r2] - add r1, r0, #0 - sub r1, #0x48 - str r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x24 - ldr r2, [r1, r2] - add r1, r0, #0 - sub r1, #0x44 - str r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x28 - ldr r2, [r1, r2] - add r1, r0, #0 - sub r1, #0x40 - str r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x2c - ldr r2, [r1, r2] - add r1, r0, #0 - sub r1, #0x3c - str r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x40 - ldr r2, [r1, r2] - add r1, r0, #0 - sub r1, #0x28 - str r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x44 - ldr r2, [r1, r2] - add r1, r0, #0 - sub r1, #0x24 - str r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x48 - ldr r2, [r1, r2] - add r1, r0, #0 - sub r1, #0x20 - str r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x50 - ldr r2, [r1, r2] - add r1, r0, #0 - sub r1, #0x1c - str r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x64 - ldrh r2, [r1, r2] - add r1, r0, #0 - sub r1, #8 - strh r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x67 - ldrb r2, [r1, r2] - sub r1, r0, #6 - ldr r4, [sp] - strh r2, [r7, r1] - add r2, r0, #0 - ldr r1, [sp] - add r2, #0x68 - ldr r1, [r1, r2] - sub r0, r0, #4 - str r1, [r7, r0] - add r0, r4, #0 - mov r3, #0 - add r5, r7, #0 - str r0, [sp, #8] - str r7, [sp, #4] -_020303C8: - ldr r0, [r4, #0x18] - ldr r2, [sp, #8] - ldr r6, [sp, #4] - str r0, [r5, #8] - mov r0, #6 - add r2, #0x28 - add r6, #0x18 - mov ip, r0 -_020303D8: - ldmia r2!, {r0, r1} - stmia r6!, {r0, r1} - mov r0, ip - sub r0, r0, #1 - mov ip, r0 - bne _020303D8 - ldr r0, [r2] - mov r1, #0x5f - lsl r1, r1, #2 - str r0, [r6] - ldr r0, [r4, r1] - cmp r0, #0 - bne _020303FA - mov r0, #5 - sub r1, #0x68 - lsl r0, r0, #6 - b _020303FC -_020303FA: - sub r1, #0x68 -_020303FC: - str r0, [r5, r1] - mov r0, #0x1a - lsl r0, r0, #4 - ldr r2, [r4, r0] - add r1, r0, #0 - sub r1, #0x6c - str r2, [r5, r1] - ldr r1, [sp] - add r4, r4, #4 - add r2, r1, r3 - add r1, r0, #0 - add r1, #0x1c - ldrb r2, [r2, r1] - add r1, r7, r3 - sub r0, #0x54 - strb r2, [r1, r0] - ldr r0, [sp, #8] - add r3, r3, #1 - add r0, #0x34 - str r0, [sp, #8] - ldr r0, [sp, #4] - add r5, r5, #4 - add r0, #0x34 - str r0, [sp, #4] - cmp r3, #4 - blt _020303C8 - ldr r0, _02030490 ; =0x00001150 - ldr r4, [sp] - add r0, r7, r0 - str r0, [sp, #0xc] - ldr r0, _02030494 ; =0x00001BE0 - mov r5, #0 - add r6, r7, r0 -_0203043E: - ldr r0, [r4, #4] - ldr r1, [sp, #0xc] - bl sub_020306DC - add r0, r4, #0 - add r0, #0xf8 - ldr r0, [r0] - add r1, r6, #0 - bl sub_02028EE4 - mov r0, #0x46 - lsl r0, r0, #2 - ldr r0, [r4, r0] - bl sub_02006EFC - mov r1, #0x53 - add r2, r7, r5 - lsl r1, r1, #2 - strb r0, [r2, r1] - mov r0, #0xa9 - ldr r1, [sp, #0xc] - lsl r0, r0, #2 - add r0, r1, r0 - add r5, r5, #1 - str r0, [sp, #0xc] - add r4, r4, #4 - add r6, #0x20 - cmp r5, #4 - blt _0203043E - mov r1, #0x13 - ldr r0, [sp] - lsl r1, r1, #4 - ldr r0, [r0, r1] - ldr r1, _02030498 ; =0x00001C60 - add r1, r7, r1 - bl sub_0202AC9C -_02030488: - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203048C: .word 0x021D2AF8 -_02030490: .word 0x00001150 -_02030494: .word 0x00001BE0 -_02030498: .word 0x00001C60 - thumb_func_end sub_020302A4 - - thumb_func_start sub_0203049C -sub_0203049C: ; 0x0203049C - ldr r2, _020304B0 ; =0x021D2AF8 - ldr r2, [r2] - cmp r2, #0 - beq _020304AE - lsl r0, r0, #2 - add r2, r2, r0 - mov r0, #0x7f - lsl r0, r0, #2 - str r1, [r2, r0] -_020304AE: - bx lr - .balign 4, 0 -_020304B0: .word 0x021D2AF8 - thumb_func_end sub_0203049C - - thumb_func_start sub_020304B4 -sub_020304B4: ; 0x020304B4 - push {r3, r4} - ldr r0, _020304EC ; =0x021D2AF8 - ldr r4, [r0] - cmp r4, #0 - bne _020304C4 - mov r0, #1 - pop {r3, r4} - bx lr -_020304C4: - mov r0, #0x45 - lsl r0, r0, #2 - add r1, r0, #0 - mov r3, #0 - add r4, #0xe8 - add r1, #0x2c -_020304D0: - ldr r2, [r4, r0] - cmp r2, r1 - bls _020304DC - mov r0, #0 - pop {r3, r4} - bx lr -_020304DC: - add r3, r3, #1 - add r4, r4, #4 - cmp r3, #4 - blt _020304D0 - mov r0, #1 - pop {r3, r4} - bx lr - nop -_020304EC: .word 0x021D2AF8 - thumb_func_end sub_020304B4 - - thumb_func_start sub_020304F0 -sub_020304F0: ; 0x020304F0 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x18 - add r6, r0, #0 - ldr r0, _020306C8 ; =0x021D2AF8 - str r1, [sp] - ldr r1, [r0] - add r0, r1, #0 - str r0, [sp, #0x14] - add r0, #0xe8 - add r1, #0xe8 - str r0, [sp, #0x14] - ldr r0, [r1] - str r0, [r6] - ldr r0, [sp, #0x14] - add r0, #0xe8 - ldr r1, [r0] - mov r0, #0x53 - lsl r0, r0, #2 - str r1, [r6, r0] - ldr r1, [sp, #0x14] - add r1, #0xec - ldr r2, [r1] - add r1, r0, #4 - str r2, [r6, r1] - ldr r1, [sp, #0x14] - add r1, #0xf0 - ldr r2, [r1] - add r1, r0, #0 - add r1, #8 - str r2, [r6, r1] - ldr r1, [sp, #0x14] - add r1, #0xf4 - ldr r2, [r1] - add r1, r0, #0 - add r1, #0xc - str r2, [r6, r1] - ldr r1, [sp, #0x14] - add r1, #0xf8 - ldr r2, [r1] - add r1, r0, #0 - add r1, #0x10 - str r2, [r6, r1] - ldr r1, [sp, #0x14] - add r1, #0xfc - ldr r2, [r1] - add r1, r0, #0 - add r1, #0x14 - str r2, [r6, r1] - add r2, r0, #0 - ldr r1, [sp, #0x14] - sub r2, #0x4c - ldr r2, [r1, r2] - add r1, r0, #0 - add r1, #0x18 - str r2, [r6, r1] - add r2, r0, #0 - ldr r1, [sp, #0x14] - sub r2, #0x48 - ldr r2, [r1, r2] - add r1, r0, #0 - add r1, #0x1c - str r2, [r6, r1] - add r2, r0, #0 - ldr r1, [sp, #0x14] - sub r2, #0x44 - ldr r2, [r1, r2] - add r1, r0, #0 - add r1, #0x24 - str r2, [r6, r1] - add r2, r0, #0 - ldr r1, [sp, #0x14] - sub r2, #0x40 - ldr r2, [r1, r2] - add r1, r0, #0 - add r1, #0x28 - str r2, [r6, r1] - add r2, r0, #0 - ldr r1, [sp, #0x14] - sub r2, #0x28 - ldr r2, [r1, r2] - mov r1, #0x10 - orr r2, r1 - add r1, r0, #0 - add r1, #0x40 - str r2, [r6, r1] - add r2, r0, #0 - ldr r1, [sp, #0x14] - sub r2, #0x24 - ldr r2, [r1, r2] - add r1, r0, #0 - add r1, #0x44 - str r2, [r6, r1] - add r2, r0, #0 - ldr r1, [sp, #0x14] - sub r2, #0x20 - ldr r2, [r1, r2] - add r1, r0, #0 - add r1, #0x48 - str r2, [r6, r1] - add r2, r0, #0 - ldr r1, [sp, #0x14] - sub r2, #0x1c - ldr r2, [r1, r2] - add r1, r0, #0 - add r1, #0x50 - str r2, [r6, r1] - add r2, r0, #0 - ldr r1, [sp, #0x14] - sub r2, #8 - ldrh r2, [r1, r2] - add r1, r0, #0 - add r1, #0x64 - strh r2, [r6, r1] - mov r1, #0 - str r1, [r6, #0x14] - add r0, #0x2c - str r1, [r6, r0] - ldr r0, [sp] - bl sub_0202A634 - mov r1, #0x11 - lsl r1, r1, #4 - ldr r1, [r6, r1] - bl sub_020293FC - ldr r5, [sp, #0x14] - ldr r1, _020306CC ; =0x00001150 - add r0, r5, #0 - str r0, [sp, #0x10] - add r0, r0, r1 - str r0, [sp, #8] - ldr r1, _020306D0 ; =0x00001BE0 - add r0, r5, #0 - add r0, r0, r1 - mov r7, #0 - add r4, r6, #0 - str r6, [sp, #0xc] - str r0, [sp, #4] -_02030604: - ldr r0, [r5, #8] - ldr r3, [sp, #0x10] - ldr r2, [sp, #0xc] - str r0, [r4, #0x18] - mov r0, #6 - add r3, #0x18 - add r2, #0x28 - mov ip, r0 -_02030614: - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - mov r0, ip - sub r0, r0, #1 - mov ip, r0 - bne _02030614 - ldr r0, [r3] - mov r1, #0x45 - lsl r1, r1, #2 - str r0, [r2] - add r0, r1, #0 - ldr r2, [r5, r1] - add r0, #0x68 - str r2, [r4, r0] - add r0, r1, #0 - add r0, #0x20 - ldr r0, [r5, r0] - add r1, #0x8c - str r0, [r4, r1] - ldr r0, [sp, #8] - ldr r1, [r4, #4] - bl sub_02030724 - add r1, r4, #0 - add r1, #0xf8 - ldr r0, [sp, #4] - ldr r1, [r1] - bl sub_02028EE4 - ldr r0, [sp, #0x14] - add r5, r5, #4 - add r1, r0, r7 - mov r0, #0x53 - lsl r0, r0, #2 - ldrb r2, [r1, r0] - add r1, r6, r7 - add r0, #0x70 - strb r2, [r1, r0] - ldr r0, [sp, #0x10] - mov r1, #0xa9 - add r0, #0x34 - str r0, [sp, #0x10] - ldr r0, [sp, #0xc] - lsl r1, r1, #2 - add r0, #0x34 - str r0, [sp, #0xc] - ldr r0, [sp, #8] - add r7, r7, #1 - add r0, r0, r1 - str r0, [sp, #8] - ldr r0, [sp, #4] - add r4, r4, #4 - add r0, #0x20 - str r0, [sp, #4] - cmp r7, #4 - blt _02030604 - ldr r0, [sp] - bl Sav2_PlayerData_GetOptionsAddr - mov r1, #0x13 - lsl r1, r1, #4 - ldr r1, [r6, r1] - bl sub_0202AC9C - mov r5, #0x13 - lsl r5, r5, #4 - ldr r1, [r6, r5] - ldr r4, _020306D4 ; =0x00001C60 - ldr r2, [sp, #0x14] - ldrh r0, [r1] - ldrh r2, [r2, r4] - ldr r3, _020306D8 ; =0xFFFF83FF - lsl r2, r2, #0x11 - lsr r2, r2, #0x1b - lsl r2, r2, #0x1b - and r0, r3 - lsr r2, r2, #0x11 - orr r0, r2 - strh r0, [r1] - ldr r2, [r6, r5] - ldrh r0, [r2] - lsl r1, r0, #0x11 - lsr r1, r1, #0x1b - cmp r1, #0x14 - blo _020306C2 - and r0, r3 - strh r0, [r2] -_020306C2: - add sp, #0x18 - pop {r3, r4, r5, r6, r7, pc} - nop -_020306C8: .word 0x021D2AF8 -_020306CC: .word 0x00001150 -_020306D0: .word 0x00001BE0 -_020306D4: .word 0x00001C60 -_020306D8: .word 0xFFFF83FF - thumb_func_end sub_020304F0 - - thumb_func_start sub_020306DC -sub_020306DC: ; 0x020306DC - push {r3, r4, r5, r6, r7, lr} - add r6, r1, #0 - mov r2, #0xa9 - add r7, r0, #0 - add r0, r6, #0 - mov r1, #0 - lsl r2, r2, #2 - bl MIi_CpuFill8 - add r0, r7, #0 - bl sub_0207463C - strh r0, [r6] - add r0, r7, #0 - bl GetPartyCount - strh r0, [r6, #2] - ldrh r0, [r6, #2] - mov r4, #0 - cmp r0, #0 - ble _02030720 - add r5, r6, #4 -_02030708: - add r0, r7, #0 - add r1, r4, #0 - bl GetPartyMonByIndex - add r1, r5, #0 - bl sub_02072A98 - ldrh r0, [r6, #2] - add r4, r4, #1 - add r5, #0x70 - cmp r4, r0 - blt _02030708 -_02030720: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_020306DC - - thumb_func_start sub_02030724 -sub_02030724: ; 0x02030724 - push {r3, r4, r5, r6, r7, lr} - sub sp, #8 - add r7, r0, #0 - str r1, [sp] - mov r1, #0 - add r0, sp, #4 - strb r1, [r0] - mov r0, #0xb - bl AllocMonZeroed - add r4, r0, #0 - ldrh r1, [r7] - ldr r0, [sp] - bl sub_020744DC - ldrh r0, [r7, #2] - mov r6, #0 - cmp r0, #0 - ble _02030770 - add r5, r7, #4 -_0203074C: - add r0, r5, #0 - add r1, r4, #0 - bl sub_02072D64 - add r0, r4, #0 - mov r1, #0xa2 - add r2, sp, #4 - bl sub_0206EC40 - ldr r0, [sp] - add r1, r4, #0 - bl sub_02074524 - ldrh r0, [r7, #2] - add r6, r6, #1 - add r5, #0x70 - cmp r6, r0 - blt _0203074C -_02030770: - add r0, r4, #0 - bl FreeToHeap - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_02030724 - - thumb_func_start sub_0203077C -sub_0203077C: ; 0x0203077C - push {r4, lr} - add r4, r0, #0 - ldr r0, _020307A8 ; =0x021D2AF8 - ldr r0, [r0] - cmp r0, #0 - bne _0203078C - bl GF_AssertFail -_0203078C: - add r0, r4, #0 - mov r1, #0x64 - bl AllocFromHeap - add r4, r0, #0 - ldr r0, _020307A8 ; =0x021D2AF8 - add r1, r4, #0 - ldr r0, [r0] - mov r2, #0x64 - add r0, #0x84 - bl MIi_CpuCopy32 - add r0, r4, #0 - pop {r4, pc} - .balign 4, 0 -_020307A8: .word 0x021D2AF8 - thumb_func_end sub_0203077C - - thumb_func_start sub_020307AC -sub_020307AC: ; 0x020307AC - push {r4, lr} - add r4, r0, #0 - ldr r0, _020307D8 ; =0x021D2AF8 - ldr r0, [r0] - cmp r0, #0 - bne _020307BC - bl GF_AssertFail -_020307BC: - add r0, r4, #0 - mov r1, #0x80 - bl AllocFromHeap - add r4, r0, #0 - ldr r0, _020307D8 ; =0x021D2AF8 - add r1, r4, #0 - ldr r0, [r0] - mov r2, #0x80 - add r0, r0, #4 - bl MIi_CpuCopy32 - add r0, r4, #0 - pop {r4, pc} - .balign 4, 0 -_020307D8: .word 0x021D2AF8 - thumb_func_end sub_020307AC - - thumb_func_start sub_020307DC -sub_020307DC: ; 0x020307DC - push {r3, lr} - ldr r0, _020307F4 ; =0x021D2AF8 - ldr r0, [r0] - cmp r0, #0 - bne _020307EA - bl GF_AssertFail -_020307EA: - ldr r0, _020307F4 ; =0x021D2AF8 - ldr r0, [r0] - add r0, r0, #4 - pop {r3, pc} - nop -_020307F4: .word 0x021D2AF8 - thumb_func_end sub_020307DC - - thumb_func_start sub_020307F8 -sub_020307F8: ; 0x020307F8 - push {r3, lr} - ldr r0, _02030810 ; =0x021D2AF8 - ldr r0, [r0] - cmp r0, #0 - bne _02030806 - bl GF_AssertFail -_02030806: - ldr r0, _02030810 ; =0x021D2AF8 - ldr r0, [r0] - add r0, #0x84 - pop {r3, pc} - nop -_02030810: .word 0x021D2AF8 - thumb_func_end sub_020307F8 - - thumb_func_start sub_02030814 -sub_02030814: ; 0x02030814 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - ldr r0, _0203087C ; =0x021D2AF8 - add r6, r1, #0 - ldr r0, [r0] - add r7, r2, #0 - add r4, r3, #0 - cmp r0, #0 - bne _0203082A - bl GF_AssertFail -_0203082A: - ldr r1, _0203087C ; =0x021D2AF8 - add r0, r6, #0 - ldr r1, [r1] - mov r2, #0x64 - add r1, #0x84 - bl MIi_CpuCopy8 - ldr r1, _0203087C ; =0x021D2AF8 - ldr r2, _02030880 ; =0x00001C68 - ldr r1, [r1] - add r0, r7, #0 - add r1, #0xe8 - bl MIi_CpuCopy8 - ldr r1, _0203087C ; =0x021D2AF8 - add r0, r5, #0 - ldr r1, [r1] - mov r2, #0x80 - add r1, r1, #4 - bl MIi_CpuCopy8 - ldr r0, _0203087C ; =0x021D2AF8 - ldr r1, _02030884 ; =0x00001D4C - ldr r0, [r0] - ldr r2, _02030888 ; =0x0000FFFF - ldrh r3, [r0, r1] - add r0, #0xe8 - sub r1, #0xe8 - eor r2, r3 - lsl r2, r2, #0x10 - add r2, r3, r2 - bl sub_02030258 - cmp r4, #0 - beq _02030878 - ldr r1, [sp, #0x18] - add r0, r4, #0 - bl sub_020304F0 -_02030878: - pop {r3, r4, r5, r6, r7, pc} - nop -_0203087C: .word 0x021D2AF8 -_02030880: .word 0x00001C68 -_02030884: .word 0x00001D4C -_02030888: .word 0x0000FFFF - thumb_func_end sub_02030814 - - thumb_func_start sub_0203088C -sub_0203088C: ; 0x0203088C - push {r3, r4, r5, lr} - add r4, r0, #0 - add r5, r2, #0 - cmp r1, #5 - bhi _0203090C - add r0, r1, r1 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_020308A2: ; jump table - .short _020308AE - _020308A2 - 2 ; case 0 - .short _020308CA - _020308A2 - 2 ; case 1 - .short _020308DA - _020308A2 - 2 ; case 2 - .short _020308EC - _020308A2 - 2 ; case 3 - .short _020308FE - _020308A2 - 2 ; case 4 - .short _02030904 - _020308A2 - 2 ; case 5 -_020308AE: - cmp r5, #0xc - blt _020308B6 - bl GF_AssertFail -_020308B6: - lsl r0, r5, #1 - ldrh r0, [r4, r0] - ldr r1, _02030918 ; =0x000001ED - cmp r0, r1 - bls _020308C6 - mov r0, #0 - add r1, r0, #0 - pop {r3, r4, r5, pc} -_020308C6: - mov r1, #0 - pop {r3, r4, r5, pc} -_020308CA: - cmp r5, #0xc - blt _020308D2 - bl GF_AssertFail -_020308D2: - add r0, r4, r5 - ldrb r0, [r0, #0x18] - mov r1, #0 - pop {r3, r4, r5, pc} -_020308DA: - ldrh r1, [r4, #0x24] - ldr r0, _0203091C ; =0x0000270F - cmp r1, r0 - bls _020308E6 - mov r1, #0 - pop {r3, r4, r5, pc} -_020308E6: - add r0, r1, #0 - mov r1, #0 - pop {r3, r4, r5, pc} -_020308EC: - add r4, #0x26 - ldrb r0, [r4] - cmp r0, #0x21 - blo _020308FA - mov r0, #0 - add r1, r0, #0 - pop {r3, r4, r5, pc} -_020308FA: - mov r1, #0 - pop {r3, r4, r5, pc} -_020308FE: - ldr r0, [r4, #0x58] - ldr r1, [r4, #0x5c] - pop {r3, r4, r5, pc} -_02030904: - add r4, #0x27 - ldrb r0, [r4] - mov r1, #0 - pop {r3, r4, r5, pc} -_0203090C: - bl GF_AssertFail - mov r0, #0 - add r1, r0, #0 - pop {r3, r4, r5, pc} - nop -_02030918: .word 0x000001ED -_0203091C: .word 0x0000270F - thumb_func_end sub_0203088C - - thumb_func_start sub_02030920 -sub_02030920: ; 0x02030920 - push {r4, lr} - mov r1, #0x64 - bl AllocFromHeap - mov r1, #0 - mov r2, #0x64 - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r4, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02030920 - - thumb_func_start sub_02030938 -sub_02030938: ; 0x02030938 - ldr r3, _0203093C ; =FreeToHeap - bx r3 - .balign 4, 0 -_0203093C: .word FreeToHeap - thumb_func_end sub_02030938 - - thumb_func_start sub_02030940 -sub_02030940: ; 0x02030940 - ldr r3, _02030948 ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #0x58 - bx r3 - .balign 4, 0 -_02030948: .word MIi_CpuFill8 - thumb_func_end sub_02030940 - - thumb_func_start sub_0203094C -sub_0203094C: ; 0x0203094C - push {r3, lr} - bl sub_0203107C - mov r1, #0x8e - lsl r1, r1, #4 - add r0, r0, r1 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203094C - - thumb_func_start sub_0203095C -sub_0203095C: ; 0x0203095C - ldrb r0, [r0] - lsl r0, r0, #0x1b - lsr r0, r0, #0x1f - bx lr - thumb_func_end sub_0203095C - - thumb_func_start sub_02030964 -sub_02030964: ; 0x02030964 - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - lsl r1, r1, #0x1f - ldrb r3, [r0] - mov r2, #0x10 - lsr r1, r1, #0x1b - bic r3, r2 - orr r1, r3 - strb r1, [r0] - bx lr - thumb_func_end sub_02030964 - - thumb_func_start sub_02030978 -sub_02030978: ; 0x02030978 - push {r3, r4} - cmp r1, #9 - bhi _02030A1E - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0203098A: ; jump table - .short _0203099E - _0203098A - 2 ; case 0 - .short _020309B2 - _0203098A - 2 ; case 1 - .short _020309C6 - _0203098A - 2 ; case 2 - .short _020309CE - _0203098A - 2 ; case 3 - .short _020309DA - _0203098A - 2 ; case 4 - .short _020309E6 - _0203098A - 2 ; case 5 - .short _020309F2 - _0203098A - 2 ; case 6 - .short _020309FE - _0203098A - 2 ; case 7 - .short _02030A0A - _0203098A - 2 ; case 8 - .short _02030A16 - _0203098A - 2 ; case 9 -_0203099E: - ldrb r4, [r0] - ldrb r2, [r3] - mov r1, #1 - bic r4, r1 - mov r1, #1 - and r1, r2 - orr r1, r4 - strb r1, [r0] - pop {r3, r4} - bx lr -_020309B2: - ldrb r2, [r0] - mov r1, #0xe - bic r2, r1 - ldrb r1, [r3] - lsl r1, r1, #0x1d - lsr r1, r1, #0x1c - orr r1, r2 - strb r1, [r0] - pop {r3, r4} - bx lr -_020309C6: - ldrb r1, [r3] - strb r1, [r0, #1] - pop {r3, r4} - bx lr -_020309CE: - ldrh r3, [r3] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #4] - pop {r3, r4} - bx lr -_020309DA: - ldrh r3, [r3] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #0x20] - pop {r3, r4} - bx lr -_020309E6: - ldrb r1, [r3] - add r0, r0, r2 - add r0, #0x28 - strb r1, [r0] - pop {r3, r4} - bx lr -_020309F2: - lsl r1, r2, #2 - ldr r3, [r3] - add r0, r0, r1 - str r3, [r0, #0x2c] - pop {r3, r4} - bx lr -_020309FE: - ldrh r3, [r3] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #0x3c] - pop {r3, r4} - bx lr -_02030A0A: - ldrb r1, [r3] - add r0, r0, r2 - add r0, #0x44 - strb r1, [r0] - pop {r3, r4} - bx lr -_02030A16: - lsl r1, r2, #2 - ldr r3, [r3] - add r0, r0, r1 - str r3, [r0, #0x48] -_02030A1E: - pop {r3, r4} - bx lr - .balign 4, 0 - thumb_func_end sub_02030978 - - thumb_func_start sub_02030A24 -sub_02030A24: ; 0x02030A24 - cmp r1, #9 - bhi _02030A94 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_02030A34: ; jump table - .short _02030A50 - _02030A34 - 2 ; case 0 - .short _02030A48 - _02030A34 - 2 ; case 1 - .short _02030A58 - _02030A34 - 2 ; case 2 - .short _02030A5C - _02030A34 - 2 ; case 3 - .short _02030A64 - _02030A34 - 2 ; case 4 - .short _02030A6C - _02030A34 - 2 ; case 5 - .short _02030A74 - _02030A34 - 2 ; case 6 - .short _02030A7C - _02030A34 - 2 ; case 7 - .short _02030A84 - _02030A34 - 2 ; case 8 - .short _02030A8C - _02030A34 - 2 ; case 9 -_02030A48: - ldrb r0, [r0] - lsl r0, r0, #0x1c - lsr r0, r0, #0x1d - bx lr -_02030A50: - ldrb r0, [r0] - lsl r0, r0, #0x1f - lsr r0, r0, #0x1f - bx lr -_02030A58: - ldrb r0, [r0, #1] - bx lr -_02030A5C: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #4] - bx lr -_02030A64: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #0x20] - bx lr -_02030A6C: - add r0, r0, r2 - add r0, #0x28 - ldrb r0, [r0] - bx lr -_02030A74: - lsl r1, r2, #2 - add r0, r0, r1 - ldr r0, [r0, #0x2c] - bx lr -_02030A7C: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #0x3c] - bx lr -_02030A84: - add r0, r0, r2 - add r0, #0x44 - ldrb r0, [r0] - bx lr -_02030A8C: - lsl r1, r2, #2 - add r0, r0, r1 - ldr r0, [r0, #0x48] - bx lr -_02030A94: - mov r0, #0 - bx lr - thumb_func_end sub_02030A24 - - thumb_func_start sub_02030A98 -sub_02030A98: ; 0x02030A98 - ldr r3, _02030AA0 ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #4 - bx r3 - .balign 4, 0 -_02030AA0: .word MIi_CpuFill8 - thumb_func_end sub_02030A98 - - thumb_func_start sub_02030AA4 -sub_02030AA4: ; 0x02030AA4 - push {r3, r4} - cmp r1, #0xa - bne _02030ACE - ldrb r1, [r3] - cmp r1, #1 - blo _02030ABE - mov r1, #1 - ldrb r3, [r0] - lsl r1, r2 - orr r1, r3 - strb r1, [r0] - pop {r3, r4} - bx lr -_02030ABE: - mov r1, #1 - add r3, r1, #0 - ldrb r4, [r0] - lsl r3, r2 - mov r1, #0xff - eor r1, r3 - and r1, r4 - strb r1, [r0] -_02030ACE: - pop {r3, r4} - bx lr - .balign 4, 0 - thumb_func_end sub_02030AA4 - - thumb_func_start sub_02030AD4 -sub_02030AD4: ; 0x02030AD4 - cmp r1, #0xa - bne _02030AE4 - ldrb r0, [r0] - add r1, r0, #0 - asr r1, r2 - mov r0, #1 - and r0, r1 - bx lr -_02030AE4: - mov r0, #0 - bx lr - thumb_func_end sub_02030AD4 - - thumb_func_start sub_02030AE8 -sub_02030AE8: ; 0x02030AE8 - push {r3, lr} - bl sub_0203107C - ldr r1, _02030AF4 ; =0x00001618 - add r0, r0, r1 - pop {r3, pc} - .balign 4, 0 -_02030AF4: .word 0x00001618 - thumb_func_end sub_02030AE8 - - thumb_func_start sub_02030AF8 -sub_02030AF8: ; 0x02030AF8 - ldr r3, _02030B00 ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #0x54 - bx r3 - .balign 4, 0 -_02030B00: .word MIi_CpuFill8 - thumb_func_end sub_02030AF8 - - thumb_func_start sub_02030B04 -sub_02030B04: ; 0x02030B04 - push {r3, lr} - bl sub_0203107C - mov r1, #0x8e - lsl r1, r1, #4 - add r0, r0, r1 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02030B04 - - thumb_func_start sub_02030B14 -sub_02030B14: ; 0x02030B14 - ldrb r0, [r0] - lsl r0, r0, #0x1c - lsr r0, r0, #0x1f - bx lr - thumb_func_end sub_02030B14 - - thumb_func_start sub_02030B1C -sub_02030B1C: ; 0x02030B1C - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - lsl r1, r1, #0x1f - ldrb r3, [r0] - mov r2, #8 - lsr r1, r1, #0x1c - bic r3, r2 - orr r1, r3 - strb r1, [r0] - bx lr - thumb_func_end sub_02030B1C - - thumb_func_start sub_02030B30 -sub_02030B30: ; 0x02030B30 - push {r4, lr} - ldr r3, [sp, #8] - cmp r1, #4 - bhi _02030B82 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_02030B44: ; jump table - .short _02030B4E - _02030B44 - 2 ; case 0 - .short _02030B60 - _02030B44 - 2 ; case 1 - .short _02030B66 - _02030B44 - 2 ; case 2 - .short _02030B70 - _02030B44 - 2 ; case 3 - .short _02030B78 - _02030B44 - 2 ; case 4 -_02030B4E: - ldrb r4, [r0] - ldrb r2, [r3] - mov r1, #7 - bic r4, r1 - mov r1, #7 - and r1, r2 - orr r1, r4 - strb r1, [r0] - pop {r4, pc} -_02030B60: - ldrb r1, [r3] - strb r1, [r0, #1] - pop {r4, pc} -_02030B66: - ldrh r3, [r3] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #4] - pop {r4, pc} -_02030B70: - ldrb r1, [r3] - add r0, r0, r2 - strb r1, [r0, #2] - pop {r4, pc} -_02030B78: - ldrh r3, [r3] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #0x2c] - pop {r4, pc} -_02030B82: - bl GF_AssertFail - pop {r4, pc} - thumb_func_end sub_02030B30 - - thumb_func_start sub_02030B88 -sub_02030B88: ; 0x02030B88 - push {r3, lr} - cmp r1, #4 - bhi _02030BC6 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_02030B9A: ; jump table - .short _02030BA4 - _02030B9A - 2 ; case 0 - .short _02030BAC - _02030B9A - 2 ; case 1 - .short _02030BB0 - _02030B9A - 2 ; case 2 - .short _02030BB8 - _02030B9A - 2 ; case 3 - .short _02030BBE - _02030B9A - 2 ; case 4 -_02030BA4: - ldrb r0, [r0] - lsl r0, r0, #0x1d - lsr r0, r0, #0x1d - pop {r3, pc} -_02030BAC: - ldrb r0, [r0, #1] - pop {r3, pc} -_02030BB0: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #4] - pop {r3, pc} -_02030BB8: - add r0, r0, r2 - ldrb r0, [r0, #2] - pop {r3, pc} -_02030BBE: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #0x2c] - pop {r3, pc} -_02030BC6: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02030B88 - - thumb_func_start sub_02030BD0 -sub_02030BD0: ; 0x02030BD0 - lsl r2, r0, #0x17 - lsr r2, r2, #0x18 - ldrb r3, [r1, r2] - lsr r2, r0, #0x1f - lsl r1, r0, #0x1f - sub r1, r1, r2 - mov r0, #0x1f - ror r1, r0 - add r0, r2, r1 - lsl r0, r0, #0x18 - lsr r0, r0, #0x16 - add r1, r3, #0 - asr r1, r0 - mov r0, #0xf - and r0, r1 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - bx lr - thumb_func_end sub_02030BD0 - - thumb_func_start sub_02030BF4 -sub_02030BF4: ; 0x02030BF4 - push {r3, r4, r5, r6} - lsr r5, r0, #0x1f - lsl r4, r0, #0x1f - lsl r3, r0, #0x17 - sub r4, r4, r5 - mov r0, #0x1f - ror r4, r0 - add r0, r5, r4 - lsl r0, r0, #0x18 - lsr r3, r3, #0x18 - lsr r0, r0, #0x18 - bne _02030C14 - add r4, r1, r3 - ldrb r6, [r1, r3] - mov r5, #0xf0 - b _02030C1A -_02030C14: - ldrb r6, [r1, r3] - add r4, r1, r3 - mov r5, #0xf -_02030C1A: - and r5, r6 - strb r5, [r1, r3] - lsl r0, r0, #2 - add r1, r2, #0 - lsl r1, r0 - lsl r0, r1, #0x18 - ldrb r3, [r4] - lsr r0, r0, #0x18 - orr r0, r3 - strb r0, [r4] - pop {r3, r4, r5, r6} - bx lr - .balign 4, 0 - thumb_func_end sub_02030BF4 - - thumb_func_start sub_02030C34 -sub_02030C34: ; 0x02030C34 - push {r4, r5, r6, lr} - mov r4, #0 - add r5, r0, #0 - add r6, r4, #0 -_02030C3C: - lsl r0, r4, #0x18 - lsr r0, r0, #0x18 - add r1, r5, #0 - add r2, r6, #0 - bl sub_02030BF4 - add r4, r4, #1 - cmp r4, #0x12 - blt _02030C3C - pop {r4, r5, r6, pc} - thumb_func_end sub_02030C34 - - thumb_func_start sub_02030C50 -sub_02030C50: ; 0x02030C50 - ldr r3, _02030C58 ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #4 - bx r3 - .balign 4, 0 -_02030C58: .word MIi_CpuFill8 - thumb_func_end sub_02030C50 - - thumb_func_start sub_02030C5C -sub_02030C5C: ; 0x02030C5C - push {r3, lr} - bl sub_0203107C - ldr r1, _02030C68 ; =0x0000161C - add r0, r0, r1 - pop {r3, pc} - .balign 4, 0 -_02030C68: .word 0x0000161C - thumb_func_end sub_02030C5C - - thumb_func_start sub_02030C6C -sub_02030C6C: ; 0x02030C6C - push {r4, lr} - ldr r3, [sp, #8] - cmp r1, #5 - bne _02030C98 - ldrb r1, [r3] - cmp r1, #1 - blo _02030C86 - mov r1, #1 - ldrb r3, [r0] - lsl r1, r2 - orr r1, r3 - strb r1, [r0] - pop {r4, pc} -_02030C86: - mov r1, #1 - add r3, r1, #0 - ldrb r4, [r0] - lsl r3, r2 - mov r1, #0xff - eor r1, r3 - and r1, r4 - strb r1, [r0] - pop {r4, pc} -_02030C98: - bl GF_AssertFail - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02030C6C - - thumb_func_start sub_02030CA0 -sub_02030CA0: ; 0x02030CA0 - push {r3, lr} - cmp r1, #5 - bne _02030CB2 - ldrb r0, [r0] - add r1, r0, #0 - asr r1, r2 - mov r0, #1 - and r0, r1 - pop {r3, pc} -_02030CB2: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02030CA0 - - thumb_func_start sub_02030CBC -sub_02030CBC: ; 0x02030CBC - ldr r3, _02030CC4 ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #0x74 - bx r3 - .balign 4, 0 -_02030CC4: .word MIi_CpuFill8 - thumb_func_end sub_02030CBC - - thumb_func_start sub_02030CC8 -sub_02030CC8: ; 0x02030CC8 - push {r3, lr} - bl sub_0203107C - mov r1, #0x8e - lsl r1, r1, #4 - add r0, r0, r1 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02030CC8 - - thumb_func_start sub_02030CD8 -sub_02030CD8: ; 0x02030CD8 - ldrb r0, [r0] - lsl r0, r0, #0x1c - lsr r0, r0, #0x1f - bx lr - thumb_func_end sub_02030CD8 - - thumb_func_start sub_02030CE0 -sub_02030CE0: ; 0x02030CE0 - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - lsl r1, r1, #0x1f - ldrb r3, [r0] - mov r2, #8 - lsr r1, r1, #0x1c - bic r3, r2 - orr r1, r3 - strb r1, [r0] - bx lr - thumb_func_end sub_02030CE0 - - thumb_func_start sub_02030CF4 -sub_02030CF4: ; 0x02030CF4 - push {r4, lr} - ldr r4, [sp, #8] - cmp r1, #8 - bhi _02030D7E - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_02030D08: ; jump table - .short _02030D1A - _02030D08 - 2 ; case 0 - .short _02030D2C - _02030D08 - 2 ; case 1 - .short _02030D32 - _02030D08 - 2 ; case 2 - .short _02030D3C - _02030D08 - 2 ; case 3 - .short _02030D4A - _02030D08 - 2 ; case 4 - .short _02030D54 - _02030D08 - 2 ; case 5 - .short _02030D60 - _02030D08 - 2 ; case 6 - .short _02030D6A - _02030D08 - 2 ; case 7 - .short _02030D72 - _02030D08 - 2 ; case 8 -_02030D1A: - ldrb r3, [r0] - ldrb r2, [r4] - mov r1, #7 - bic r3, r1 - mov r1, #7 - and r1, r2 - orr r1, r3 - strb r1, [r0] - pop {r4, pc} -_02030D2C: - ldrb r1, [r4] - strb r1, [r0, #1] - pop {r4, pc} -_02030D32: - ldrh r3, [r4] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #0x22] - pop {r4, pc} -_02030D3C: - lsl r1, r2, #2 - add r0, r0, r1 - add r0, r0, r3 - ldrb r4, [r4] - add r0, #0x2a - strb r4, [r0] - pop {r4, pc} -_02030D4A: - lsl r1, r2, #2 - ldr r3, [r4] - add r0, r0, r1 - str r3, [r0, #0x3c] - pop {r4, pc} -_02030D54: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r3, [r4] - add r0, #0x4c - strh r3, [r0] - pop {r4, pc} -_02030D60: - ldrh r3, [r4] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #6] - pop {r4, pc} -_02030D6A: - ldrb r1, [r4] - add r0, r0, r2 - strb r1, [r0, #3] - pop {r4, pc} -_02030D72: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r3, [r4] - add r0, #0x54 - strh r3, [r0] - pop {r4, pc} -_02030D7E: - bl GF_AssertFail - pop {r4, pc} - thumb_func_end sub_02030CF4 - - thumb_func_start sub_02030D84 -sub_02030D84: ; 0x02030D84 - push {r3, lr} - cmp r1, #8 - bhi _02030DF2 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_02030D96: ; jump table - .short _02030DA8 - _02030D96 - 2 ; case 0 - .short _02030DB0 - _02030D96 - 2 ; case 1 - .short _02030DB4 - _02030D96 - 2 ; case 2 - .short _02030DBC - _02030D96 - 2 ; case 3 - .short _02030DC8 - _02030D96 - 2 ; case 4 - .short _02030DD0 - _02030D96 - 2 ; case 5 - .short _02030DDA - _02030D96 - 2 ; case 6 - .short _02030DE2 - _02030D96 - 2 ; case 7 - .short _02030DE8 - _02030D96 - 2 ; case 8 -_02030DA8: - ldrb r0, [r0] - lsl r0, r0, #0x1d - lsr r0, r0, #0x1d - pop {r3, pc} -_02030DB0: - ldrb r0, [r0, #1] - pop {r3, pc} -_02030DB4: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #0x22] - pop {r3, pc} -_02030DBC: - lsl r1, r2, #2 - add r0, r0, r1 - add r0, r0, r3 - add r0, #0x2a - ldrb r0, [r0] - pop {r3, pc} -_02030DC8: - lsl r1, r2, #2 - add r0, r0, r1 - ldr r0, [r0, #0x3c] - pop {r3, pc} -_02030DD0: - lsl r1, r2, #1 - add r0, r0, r1 - add r0, #0x4c - ldrh r0, [r0] - pop {r3, pc} -_02030DDA: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #6] - pop {r3, pc} -_02030DE2: - add r0, r0, r2 - ldrb r0, [r0, #3] - pop {r3, pc} -_02030DE8: - lsl r1, r2, #1 - add r0, r0, r1 - add r0, #0x54 - ldrh r0, [r0] - pop {r3, pc} -_02030DF2: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02030D84 - - thumb_func_start sub_02030DFC -sub_02030DFC: ; 0x02030DFC - ldr r3, _02030E04 ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #4 - bx r3 - .balign 4, 0 -_02030E04: .word MIi_CpuFill8 - thumb_func_end sub_02030DFC - - thumb_func_start sub_02030E08 -sub_02030E08: ; 0x02030E08 - push {r3, lr} - bl sub_0203107C - ldr r1, _02030E14 ; =0x00001620 - add r0, r0, r1 - pop {r3, pc} - .balign 4, 0 -_02030E14: .word 0x00001620 - thumb_func_end sub_02030E08 - - thumb_func_start sub_02030E18 -sub_02030E18: ; 0x02030E18 - push {r4, lr} - ldr r3, [sp, #8] - cmp r1, #9 - beq _02030E26 - cmp r1, #0xa - beq _02030E4A - b _02030E50 -_02030E26: - ldrb r1, [r3] - cmp r1, #1 - blo _02030E38 - mov r1, #1 - ldrb r3, [r0] - lsl r1, r2 - orr r1, r3 - strb r1, [r0] - pop {r4, pc} -_02030E38: - mov r1, #1 - add r3, r1, #0 - ldrb r4, [r0] - lsl r3, r2 - mov r1, #0xff - eor r1, r3 - and r1, r4 - strb r1, [r0] - pop {r4, pc} -_02030E4A: - mov r1, #1 - strb r1, [r0, #1] - pop {r4, pc} -_02030E50: - bl GF_AssertFail - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02030E18 - - thumb_func_start sub_02030E58 -sub_02030E58: ; 0x02030E58 - push {r3, lr} - cmp r1, #9 - beq _02030E64 - cmp r1, #0xa - beq _02030E70 - b _02030E74 -_02030E64: - ldrb r0, [r0] - add r1, r0, #0 - asr r1, r2 - mov r0, #1 - and r0, r1 - pop {r3, pc} -_02030E70: - ldrb r0, [r0, #1] - pop {r3, pc} -_02030E74: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} - thumb_func_end sub_02030E58 - - thumb_func_start sub_02030E7C -sub_02030E7C: ; 0x02030E7C - ldr r3, _02030E84 ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #0x48 - bx r3 - .balign 4, 0 -_02030E84: .word MIi_CpuFill8 - thumb_func_end sub_02030E7C - - thumb_func_start sub_02030E88 -sub_02030E88: ; 0x02030E88 - push {r3, lr} - bl sub_0203107C - mov r1, #0x8e - lsl r1, r1, #4 - add r0, r0, r1 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02030E88 - - thumb_func_start sub_02030E98 -sub_02030E98: ; 0x02030E98 - ldrb r0, [r0] - lsl r0, r0, #0x1c - lsr r0, r0, #0x1f - bx lr - thumb_func_end sub_02030E98 - - thumb_func_start sub_02030EA0 -sub_02030EA0: ; 0x02030EA0 - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - lsl r1, r1, #0x1f - ldrb r3, [r0] - mov r2, #8 - lsr r1, r1, #0x1c - bic r3, r2 - orr r1, r3 - strb r1, [r0] - bx lr - thumb_func_end sub_02030EA0 - - thumb_func_start sub_02030EB4 -sub_02030EB4: ; 0x02030EB4 - push {r4, lr} - ldr r3, [sp, #8] - cmp r1, #7 - bhi _02030F2E - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_02030EC8: ; jump table - .short _02030ED8 - _02030EC8 - 2 ; case 0 - .short _02030EEA - _02030EC8 - 2 ; case 1 - .short _02030EFC - _02030EC8 - 2 ; case 2 - .short _02030F02 - _02030EC8 - 2 ; case 3 - .short _02030F08 - _02030EC8 - 2 ; case 4 - .short _02030F12 - _02030EC8 - 2 ; case 5 - .short _02030F1C - _02030EC8 - 2 ; case 6 - .short _02030F24 - _02030EC8 - 2 ; case 7 -_02030ED8: - ldrb r4, [r0] - ldrb r2, [r3] - mov r1, #7 - bic r4, r1 - mov r1, #7 - and r1, r2 - orr r1, r4 - strb r1, [r0] - pop {r4, pc} -_02030EEA: - ldrb r2, [r0] - mov r1, #0x10 - bic r2, r1 - ldrb r1, [r3] - lsl r1, r1, #0x1f - lsr r1, r1, #0x1b - orr r1, r2 - strb r1, [r0] - pop {r4, pc} -_02030EFC: - ldrb r1, [r3] - strb r1, [r0, #1] - pop {r4, pc} -_02030F02: - ldrb r1, [r3] - strb r1, [r0, #2] - pop {r4, pc} -_02030F08: - ldrh r3, [r3] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #6] - pop {r4, pc} -_02030F12: - ldrh r3, [r3] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #0xe] - pop {r4, pc} -_02030F1C: - ldrb r1, [r3] - add r0, r0, r2 - strb r1, [r0, #3] - pop {r4, pc} -_02030F24: - ldrh r3, [r3] - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #0x2a] - pop {r4, pc} -_02030F2E: - bl GF_AssertFail - pop {r4, pc} - thumb_func_end sub_02030EB4 - - thumb_func_start sub_02030F34 -sub_02030F34: ; 0x02030F34 - push {r3, lr} - cmp r1, #7 - bhi _02030F8C - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_02030F46: ; jump table - .short _02030F56 - _02030F46 - 2 ; case 0 - .short _02030F5E - _02030F46 - 2 ; case 1 - .short _02030F66 - _02030F46 - 2 ; case 2 - .short _02030F6A - _02030F46 - 2 ; case 3 - .short _02030F6E - _02030F46 - 2 ; case 4 - .short _02030F76 - _02030F46 - 2 ; case 5 - .short _02030F7E - _02030F46 - 2 ; case 6 - .short _02030F84 - _02030F46 - 2 ; case 7 -_02030F56: - ldrb r0, [r0] - lsl r0, r0, #0x1d - lsr r0, r0, #0x1d - pop {r3, pc} -_02030F5E: - ldrb r0, [r0] - lsl r0, r0, #0x1b - lsr r0, r0, #0x1f - pop {r3, pc} -_02030F66: - ldrb r0, [r0, #1] - pop {r3, pc} -_02030F6A: - ldrb r0, [r0, #2] - pop {r3, pc} -_02030F6E: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #6] - pop {r3, pc} -_02030F76: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #0xe] - pop {r3, pc} -_02030F7E: - add r0, r0, r2 - ldrb r0, [r0, #3] - pop {r3, pc} -_02030F84: - lsl r1, r2, #1 - add r0, r0, r1 - ldrh r0, [r0, #0x2a] - pop {r3, pc} -_02030F8C: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} - thumb_func_end sub_02030F34 - - thumb_func_start sub_02030F94 -sub_02030F94: ; 0x02030F94 - ldr r3, _02030F9C ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #4 - bx r3 - .balign 4, 0 -_02030F9C: .word MIi_CpuFill8 - thumb_func_end sub_02030F94 - - thumb_func_start sub_02030FA0 -sub_02030FA0: ; 0x02030FA0 - push {r3, lr} - bl sub_0203107C - ldr r1, _02030FAC ; =0x00001624 - add r0, r0, r1 - pop {r3, pc} - .balign 4, 0 -_02030FAC: .word 0x00001624 - thumb_func_end sub_02030FA0 - - thumb_func_start sub_02030FB0 -sub_02030FB0: ; 0x02030FB0 - push {r4, lr} - ldr r3, [sp, #8] - cmp r1, #8 - bne _02030FDC - ldrb r1, [r3] - cmp r1, #1 - blo _02030FCA - mov r1, #1 - ldrb r3, [r0] - lsl r1, r2 - orr r1, r3 - strb r1, [r0] - pop {r4, pc} -_02030FCA: - mov r1, #1 - add r3, r1, #0 - ldrb r4, [r0] - lsl r3, r2 - mov r1, #0xff - eor r1, r3 - and r1, r4 - strb r1, [r0] - pop {r4, pc} -_02030FDC: - bl GF_AssertFail - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02030FB0 - - thumb_func_start sub_02030FE4 -sub_02030FE4: ; 0x02030FE4 - push {r3, lr} - cmp r1, #8 - bne _02030FF6 - ldrb r0, [r0] - add r1, r0, #0 - asr r1, r2 - mov r0, #1 - and r0, r1 - pop {r3, pc} -_02030FF6: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02030FE4 - - thumb_func_start sub_02031000 -sub_02031000: ; 0x02031000 - ldr r0, _02031004 ; =0x00001628 - bx lr - .balign 4, 0 -_02031004: .word 0x00001628 - thumb_func_end sub_02031000 - - thumb_func_start sub_02031008 -sub_02031008: ; 0x02031008 - push {r4, lr} - ldr r2, _02031058 ; =0x00001628 - mov r1, #0 - add r4, r0, #0 - bl MIi_CpuFill8 - ldr r0, _0203105C ; =0x00000954 - add r0, r4, r0 - bl sub_0202D240 - ldr r0, _02031060 ; =0x00000ABC - add r0, r4, r0 - bl sub_0202D254 - ldr r0, _02031064 ; =0x00000ADC - add r0, r4, r0 - bl sub_0202D274 - ldr r0, _02031068 ; =0x00001618 - add r0, r4, r0 - bl sub_02030A98 - ldr r0, _0203106C ; =0x0000161C - add r0, r4, r0 - bl sub_02030C50 - ldr r0, _02031070 ; =0x00001620 - add r0, r4, r0 - bl sub_02030DFC - ldr r0, _02031074 ; =0x00001624 - add r0, r4, r0 - bl sub_02030F94 - ldr r1, _02031078 ; =0x021D2AFC - ldr r2, _02031058 ; =0x00001628 - add r0, r4, #0 - bl MIi_CpuCopy8 - pop {r4, pc} - .balign 4, 0 -_02031058: .word 0x00001628 -_0203105C: .word 0x00000954 -_02031060: .word 0x00000ABC -_02031064: .word 0x00000ADC -_02031068: .word 0x00001618 -_0203106C: .word 0x0000161C -_02031070: .word 0x00001620 -_02031074: .word 0x00001624 -_02031078: .word 0x021D2AFC - thumb_func_end sub_02031008 - - thumb_func_start sub_0203107C -sub_0203107C: ; 0x0203107C - ldr r0, _02031080 ; =0x021D2AFC - bx lr - .balign 4, 0 -_02031080: .word 0x021D2AFC - thumb_func_end sub_0203107C - - thumb_func_start sub_02031084 -sub_02031084: ; 0x02031084 - push {r3, lr} - mov r1, #0x13 - bl SavArray_get - add r1, r0, #0 - ldr r0, _02031098 ; =0x021D2AFC - ldr r2, _0203109C ; =0x00001628 - bl MIi_CpuCopy8 - pop {r3, pc} - .balign 4, 0 -_02031098: .word 0x021D2AFC -_0203109C: .word 0x00001628 - thumb_func_end sub_02031084 - - thumb_func_start sub_020310A0 -sub_020310A0: ; 0x020310A0 - push {r3, lr} - mov r1, #0x13 - bl SavArray_get - ldr r1, _020310B4 ; =0x021D2AFC - ldr r2, _020310B8 ; =0x00001628 - bl MIi_CpuCopy8 - pop {r3, pc} - nop -_020310B4: .word 0x021D2AFC -_020310B8: .word 0x00001628 - thumb_func_end sub_020310A0 - - thumb_func_start sub_020310BC -sub_020310BC: ; 0x020310BC - push {r3, lr} - cmp r1, #0x70 - bge _020310E6 - cmp r1, #0x64 - blt _020310E0 - cmp r2, #0x10 - blt _020310CE - add r1, r1, #1 - sub r2, #0x10 -_020310CE: - lsl r1, r1, #1 - ldrh r0, [r0, r1] - add r1, r0, #0 - asr r1, r2 - mov r0, #1 - and r0, r1 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - pop {r3, pc} -_020310E0: - lsl r1, r1, #1 - ldrh r0, [r0, r1] - pop {r3, pc} -_020310E6: - mov r3, #0 - mvn r3, r3 - cmp r2, r3 - bne _020310F6 - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} -_020310F6: - lsl r2, r2, #6 - sub r1, #0x70 - add r2, r0, r2 - lsl r0, r1, #1 - add r0, r2, r0 - add r0, #0xe0 - ldrh r0, [r0] - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_020310BC - - thumb_func_start sub_02031108 -sub_02031108: ; 0x02031108 - push {r3, r4, r5, r6, r7, lr} - add r6, r0, #0 - ldr r0, _02031180 ; =0x0000270F - add r7, r3, #0 - add r5, r1, #0 - add r4, r2, #0 - cmp r7, r0 - bls _0203111A - add r7, r0, #0 -_0203111A: - cmp r5, #0x70 - bge _02031166 - cmp r5, #0x64 - blt _02031158 - cmp r4, #0xff - bne _0203112A - bl GF_AssertFail -_0203112A: - cmp r4, #0x10 - blt _02031132 - add r5, r5, #1 - sub r4, #0x10 -_02031132: - cmp r7, #0 - bne _0203114A - mov r2, #1 - add r3, r2, #0 - lsl r1, r5, #1 - ldrh r0, [r6, r1] - lsl r3, r4 - ldr r2, _02031184 ; =0x0000FFFF - eor r2, r3 - and r0, r2 - strh r0, [r6, r1] - b _0203117C -_0203114A: - lsl r2, r5, #1 - mov r0, #1 - ldrh r1, [r6, r2] - lsl r0, r4 - orr r0, r1 - strh r0, [r6, r2] - b _0203117C -_02031158: - cmp r4, #0xff - beq _02031160 - bl GF_AssertFail -_02031160: - lsl r0, r5, #1 - strh r7, [r6, r0] - b _0203117C -_02031166: - cmp r4, #0xff - bne _0203116E - bl GF_AssertFail -_0203116E: - lsl r0, r4, #6 - sub r5, #0x70 - add r1, r6, r0 - lsl r0, r5, #1 - add r0, r1, r0 - add r0, #0xe0 - strh r7, [r0] -_0203117C: - add r0, r7, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02031180: .word 0x0000270F -_02031184: .word 0x0000FFFF - thumb_func_end sub_02031108 - - thumb_func_start sub_02031188 -sub_02031188: ; 0x02031188 - push {r4, lr} - mov r2, #2 - add r4, r0, #0 - add r0, #0xe0 - mov r1, #0 - lsl r2, r2, #0xa - bl MIi_CpuFill8 - mov r1, #0x64 - add r4, #0xc8 - mov r0, #0 -_0203119E: - add r1, r1, #1 - strh r0, [r4] - add r4, r4, #2 - cmp r1, #0x6f - ble _0203119E - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02031188 - - thumb_func_start sub_020311AC -sub_020311AC: ; 0x020311AC - push {r3, r4, r5, r6, r7, lr} - add r5, r1, #0 - add r6, r0, #0 - cmp r5, #0xff - bne _020311BA - bl GF_AssertFail -_020311BA: - cmp r5, #0x1f - bge _02031200 - add r0, r6, #0 - str r0, [sp] - add r0, #0xe0 - lsl r1, r5, #6 - str r0, [sp] - add r7, r0, r1 -_020311CA: - add r0, r5, #1 - lsl r1, r0, #6 - ldr r0, [sp] - mov r2, #0x40 - add r0, r0, r1 - add r1, r7, #0 - bl MIi_CpuCopy8 - mov r4, #0x64 -_020311DC: - add r0, r6, #0 - add r1, r4, #0 - add r2, r5, #1 - bl sub_020310BC - add r3, r0, #0 - add r0, r6, #0 - add r1, r4, #0 - add r2, r5, #0 - bl sub_02031108 - add r4, r4, #2 - cmp r4, #0x6f - blt _020311DC - add r5, r5, #1 - add r7, #0x40 - cmp r5, #0x1f - blt _020311CA -_02031200: - mov r0, #0x1f - add r6, #0xe0 - lsl r0, r0, #6 - add r0, r6, r0 - mov r1, #0 - mov r2, #0x40 - bl MIi_CpuFill8 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_020311AC - - thumb_func_start sub_02031214 -sub_02031214: ; 0x02031214 - ldr r3, _02031224 ; =MIi_CpuFill8 - add r0, #0xe0 - lsl r1, r1, #6 - add r0, r0, r1 - mov r1, #0 - mov r2, #0x40 - bx r3 - nop -_02031224: .word MIi_CpuFill8 - thumb_func_end sub_02031214 - - thumb_func_start sub_02031228 -sub_02031228: ; 0x02031228 - push {r3, r4, r5, r6, r7, lr} - add r4, r3, #0 - add r5, r0, #0 - add r6, r1, #0 - add r7, r2, #0 - bl sub_020310BC - add r0, r0, r4 - lsl r0, r0, #0x10 - lsr r3, r0, #0x10 - add r0, r5, #0 - add r1, r6, #0 - add r2, r7, #0 - bl sub_02031108 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_02031228 - - thumb_func_start sub_02031248 -sub_02031248: ; 0x02031248 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - add r7, r2, #0 - add r4, r3, #0 - bl sub_020310BC - sub r3, r0, r4 - bpl _0203125C - mov r3, #0 -_0203125C: - lsl r3, r3, #0x10 - add r0, r5, #0 - add r1, r6, #0 - add r2, r7, #0 - lsr r3, r3, #0x10 - bl sub_02031108 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_02031248 - - thumb_func_start sub_0203126C -sub_0203126C: ; 0x0203126C - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - add r7, r2, #0 - add r4, r3, #0 - bl sub_020310BC - cmp r0, r4 - bhs _0203128C - add r0, r5, #0 - add r1, r6, #0 - add r2, r7, #0 - add r3, r4, #0 - bl sub_02031108 - pop {r3, r4, r5, r6, r7, pc} -_0203128C: - ldr r3, _020312A0 ; =0x0000270F - cmp r0, r3 - bls _0203129C - add r0, r5, #0 - add r1, r6, #0 - add r2, r7, #0 - bl sub_02031108 -_0203129C: - pop {r3, r4, r5, r6, r7, pc} - nop -_020312A0: .word 0x0000270F - thumb_func_end sub_0203126C - - thumb_func_start sub_020312A4 -sub_020312A4: ; 0x020312A4 - mov r0, #0xba - lsl r0, r0, #4 - bx lr - .balign 4, 0 - thumb_func_end sub_020312A4 - - thumb_func_start sub_020312AC -sub_020312AC: ; 0x020312AC - push {r4, lr} - mov r2, #0xba - mov r1, #0 - lsl r2, r2, #4 - add r4, r0, #0 - bl MIi_CpuFill8 - mov r0, #0 - mvn r0, r0 - str r0, [r4] - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_020312AC - - thumb_func_start sub_020312C4 -sub_020312C4: ; 0x020312C4 - ldr r3, _020312C8 ; =sub_02027144 - bx r3 - .balign 4, 0 -_020312C8: .word sub_02027144 - thumb_func_end sub_020312C4 - - thumb_func_start sub_020312CC -sub_020312CC: ; 0x020312CC - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_02027158 - add r4, r0, #0 - add r0, r5, #0 - bl sub_020273F0 - orr r0, r4 - pop {r3, r4, r5, pc} - thumb_func_end sub_020312CC - - thumb_func_start sub_020312E0 -sub_020312E0: ; 0x020312E0 - push {r4, r5, r6, lr} - add r5, r1, #0 - add r4, r2, #0 - add r6, r3, #0 - bl sub_020274E8 - cmp r0, #0 - bne _020312F4 - mov r0, #0 - pop {r4, r5, r6, pc} -_020312F4: - cmp r4, #0 - beq _02031302 - cmp r4, #1 - beq _0203130A - cmp r4, #2 - beq _02031314 - b _02031320 -_02031302: - lsl r0, r6, #1 - add r0, r5, r0 - ldrh r0, [r0, #4] - pop {r4, r5, r6, pc} -_0203130A: - lsl r0, r6, #1 - add r1, r5, r0 - ldr r0, _02031328 ; =0x000003E2 - ldrh r0, [r1, r0] - pop {r4, r5, r6, pc} -_02031314: - lsl r0, r6, #1 - add r1, r5, r0 - mov r0, #0x1f - lsl r0, r0, #6 - ldrh r0, [r1, r0] - pop {r4, r5, r6, pc} -_02031320: - bl GF_AssertFail - mov r0, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 -_02031328: .word 0x000003E2 - thumb_func_end sub_020312E0 - - thumb_func_start sub_0203132C -sub_0203132C: ; 0x0203132C - push {r4, lr} - ldr r4, _02031370 ; =0x0000270F - cmp r3, r4 - bls _02031336 - add r3, r4, #0 -_02031336: - cmp r1, #0 - beq _02031344 - cmp r1, #1 - beq _0203134C - cmp r1, #2 - beq _02031356 - b _02031362 -_02031344: - lsl r1, r2, #1 - add r0, r0, r1 - strh r3, [r0, #4] - b _0203136A -_0203134C: - lsl r1, r2, #1 - add r1, r0, r1 - ldr r0, _02031374 ; =0x000003E2 - strh r3, [r1, r0] - b _0203136A -_02031356: - lsl r1, r2, #1 - add r1, r0, r1 - mov r0, #0x1f - lsl r0, r0, #6 - strh r3, [r1, r0] - b _0203136A -_02031362: - bl GF_AssertFail - mov r0, #0 - pop {r4, pc} -_0203136A: - add r0, r3, #0 - pop {r4, pc} - nop -_02031370: .word 0x0000270F -_02031374: .word 0x000003E2 - thumb_func_end sub_0203132C - - thumb_func_start sub_02031378 -sub_02031378: ; 0x02031378 - push {r3, r4, r5, r6, r7, lr} - add r7, r0, #0 - add r5, r1, #0 - add r4, r2, #0 - add r6, r3, #0 - bl sub_020274E8 - cmp r0, #0 - bne _0203138E - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_0203138E: - add r0, r7, #0 - add r1, r5, #0 - add r2, r4, #0 - add r3, r6, #0 - bl sub_020312E0 - add r1, sp, #8 - ldrh r3, [r1, #0x10] - cmp r0, r3 - bhs _020313AE - add r0, r5, #0 - add r1, r4, #0 - add r2, r6, #0 - bl sub_0203132C - pop {r3, r4, r5, r6, r7, pc} -_020313AE: - ldr r3, _020313C0 ; =0x0000270F - cmp r0, r3 - bls _020313BE - add r0, r5, #0 - add r1, r4, #0 - add r2, r6, #0 - bl sub_0203132C -_020313BE: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_020313C0: .word 0x0000270F - thumb_func_end sub_02031378 - - thumb_func_start sub_020313C4 -sub_020313C4: ; 0x020313C4 - push {r4, r5, r6, r7, lr} - sub sp, #0x1c - add r5, r0, #0 - mov r0, #0 - add r6, r1, #0 - str r2, [sp, #4] - str r3, [sp, #8] - ldr r4, [sp, #0x38] - ldr r7, [sp, #0x3c] - str r0, [sp, #0xc] - cmp r6, #0x22 - blt _020313E0 - cmp r6, #0x3c - ble _020313E4 -_020313E0: - bl GF_AssertFail -_020313E4: - ldr r1, [sp, #4] - mov r0, #0 - sub r1, #0x24 - cmp r1, #0x18 - bhi _020313FC - mov r3, #1 - add r2, r3, #0 - lsl r2, r1 - ldr r1, _020314A0 ; =0x01001001 - tst r1, r2 - beq _020313FC - add r0, r3, #0 -_020313FC: - cmp r0, #0 - bne _02031404 - bl GF_AssertFail -_02031404: - mov r0, #1 - str r0, [r4] - mov r0, #2 - str r0, [r7] - ldr r0, [sp, #8] - cmp r0, #0xff - beq _02031418 - add sp, #0x1c - mov r0, #0 - pop {r4, r5, r6, r7, pc} -_02031418: - add r0, r5, #0 - bl sub_020274E8 - cmp r0, #0 - bne _02031428 - add sp, #0x1c - mov r0, #0 - pop {r4, r5, r6, r7, pc} -_02031428: - add r0, r5, #0 - bl sub_0203107C - ldr r2, [sp, #8] - str r0, [sp, #0x18] - add r1, r6, #0 - bl sub_020310BC - str r0, [sp, #0x14] - ldr r0, [sp, #0x18] - ldr r1, [sp, #4] - ldr r2, [sp, #8] - bl sub_020310BC - str r0, [sp, #0x10] - ldr r1, [sp, #0x34] - add r0, r5, #0 - add r2, r4, #0 - bl sub_020312C4 - add r6, r0, #0 - ldr r0, [r4] - cmp r0, #1 - beq _0203145C - mov r4, #0 - b _0203146A -_0203145C: - ldr r2, [sp, #0x30] - ldr r3, [sp, #0x10] - add r0, r5, #0 - add r1, r6, #0 - bl sub_020312E0 - add r4, r0, #0 -_0203146A: - ldr r0, [sp, #0x14] - ldr r2, [sp, #0x30] - str r0, [sp] - ldr r3, [sp, #0x10] - add r0, r5, #0 - add r1, r6, #0 - bl sub_02031378 - ldr r0, [sp, #0x14] - cmp r0, r4 - beq _0203148E - add r0, r5, #0 - add r1, r6, #0 - bl sub_020312CC - str r0, [r7] - mov r0, #1 - str r0, [sp, #0xc] -_0203148E: - cmp r6, #0 - beq _02031498 - add r0, r6, #0 - bl FreeToHeap -_02031498: - ldr r0, [sp, #0xc] - add sp, #0x1c - pop {r4, r5, r6, r7, pc} - nop -_020314A0: .word 0x01001001 - thumb_func_end sub_020313C4 - - thumb_func_start sub_020314A4 -sub_020314A4: ; 0x020314A4 - push {r4, lr} - mov r1, #0x80 - bl AllocFromHeap - mov r1, #0 - mov r2, #0x80 - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r4, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_020314A4 - - thumb_func_start sub_020314BC -sub_020314BC: ; 0x020314BC - ldr r3, _020314C0 ; =FreeToHeap - bx r3 - .balign 4, 0 -_020314C0: .word FreeToHeap - thumb_func_end sub_020314BC - - thumb_func_start sub_020314C4 -sub_020314C4: ; 0x020314C4 - push {r4, r5, r6, r7, lr} - sub sp, #0x64 - add r6, r1, #0 - add r5, r0, #0 - add r0, r6, #0 - bl Sav2_PlayerData_GetProfileAddr - add r4, r0, #0 - add r0, r6, #0 - bl sub_0202CA44 - str r0, [sp] - add r0, r6, #0 - bl Sav2_SysInfo_get - add r0, r6, #0 - bl sub_0202A960 - add r7, r0, #0 - add r0, sp, #0x10 - bl OS_GetOwnerInfo - add r0, r7, #0 - add r1, sp, #0xc - add r2, sp, #8 - add r3, sp, #4 - bl sub_0202AA20 - add r0, r5, #0 - mov r1, #0 - mov r2, #0x80 - bl MIi_CpuFill8 - add r0, r4, #0 - bl PlayerProfile_GetNamePtr - add r1, r0, #0 - add r0, r5, #0 - bl CopyU16StringArray - add r0, r4, #0 - bl PlayerProfile_GetTrainerID - str r0, [r5, #0x10] - add r0, r4, #0 - bl PlayerProfile_GetTrainerGender - strb r0, [r5, #0x14] - ldr r0, [sp, #0xc] - mov r1, #0xfe - strh r0, [r5, #0x1c] - ldrb r0, [r5, #0x1b] - bic r0, r1 - ldr r1, [sp, #8] - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - lsl r1, r1, #0x19 - lsr r1, r1, #0x18 - orr r0, r1 - strb r0, [r5, #0x1b] - ldrb r0, [r5, #0x1b] - mov r1, #1 - bic r0, r1 - ldr r1, [sp, #4] - lsl r1, r1, #0x18 - lsr r2, r1, #0x18 - mov r1, #1 - and r1, r2 - orr r0, r1 - strb r0, [r5, #0x1b] - ldr r0, [sp] - bl sub_0202CA8C - strb r0, [r5, #0x17] - ldr r0, [sp] - bl sub_0202CA90 - strb r0, [r5, #0x18] - ldr r0, _020315B4 ; =0x0000FFFF - mov r1, #0 - add r2, r5, #0 -_02031566: - add r1, r1, #1 - strh r0, [r2, #0x20] - add r2, r2, #2 - cmp r1, #0x28 - blt _02031566 - add r1, r5, #0 - add r0, r7, #0 - add r1, #0x20 - bl sub_0202ABD0 - add r0, sp, #4 - ldrb r0, [r0, #0xe] - strb r0, [r5, #0x15] - add r0, r4, #0 - bl PlayerProfile_GetTrainerGender - add r7, r0, #0 - add r0, r4, #0 - bl sub_0202903C - add r1, r0, #0 - add r0, r7, #0 - mov r2, #0 - bl sub_0205B46C - strb r0, [r5, #0x16] - mov r0, #GAME_VERSION - strb r0, [r5, #0x19] - mov r0, #2 - strb r0, [r5, #0x1a] - add r0, r6, #0 - add r1, r5, #0 - mov r2, #0x7c - bl sub_020275C4 - add r5, #0x7c - strh r0, [r5] - add sp, #0x64 - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_020315B4: .word 0x0000FFFF - thumb_func_end sub_020314C4 - - thumb_func_start sub_020315B8 -sub_020315B8: ; 0x020315B8 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #0xf - bl String_ctor - add r1, r5, #0 - mov r2, #0xf - add r4, r0, #0 - bl CopyU16ArrayToStringN - add r0, r4, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_020315B8 - - thumb_func_start sub_020315D0 -sub_020315D0: ; 0x020315D0 - ldrb r0, [r0, #0x14] - cmp r0, #0 - beq _020315DC - cmp r0, #1 - beq _020315DC - mov r0, #0 -_020315DC: - bx lr - .balign 4, 0 - thumb_func_end sub_020315D0 - - thumb_func_start sub_020315E0 -sub_020315E0: ; 0x020315E0 - ldrh r0, [r0, #0x1c] - ldr r1, _020315EC ; =0x000001EF - cmp r0, r1 - blo _020315EA - mov r0, #0 -_020315EA: - bx lr - .balign 4, 0 -_020315EC: .word 0x000001EF - thumb_func_end sub_020315E0 - - thumb_func_start sub_020315F0 -sub_020315F0: ; 0x020315F0 - push {r3, lr} - add r2, r0, #0 - ldrh r0, [r2, #0x1c] - ldr r1, _0203160C ; =0x000001EF - cmp r0, r1 - blo _02031600 - mov r0, #0 - pop {r3, pc} -_02031600: - ldrb r1, [r2, #0x1b] - lsl r1, r1, #0x18 - lsr r1, r1, #0x19 - bl sub_02070438 - pop {r3, pc} - .balign 4, 0 -_0203160C: .word 0x000001EF - thumb_func_end sub_020315F0 - - thumb_func_start sub_02031610 -sub_02031610: ; 0x02031610 - ldrb r0, [r0, #0x1b] - lsl r0, r0, #0x1f - lsr r0, r0, #0x1f - cmp r0, #1 - bls _0203161C - mov r0, #1 -_0203161C: - bx lr - .balign 4, 0 - thumb_func_end sub_02031610 - - thumb_func_start sub_02031620 -sub_02031620: ; 0x02031620 - ldrb r0, [r0, #0x17] - cmp r0, #0xea - blo _02031628 - mov r0, #0 -_02031628: - bx lr - .balign 4, 0 - thumb_func_end sub_02031620 - - thumb_func_start sub_0203162C -sub_0203162C: ; 0x0203162C - push {r4, lr} - ldrb r1, [r0, #0x17] - cmp r1, #0xea - blo _02031638 - mov r0, #0 - pop {r4, pc} -_02031638: - ldrb r4, [r0, #0x18] - add r0, r1, #0 - bl sub_02091688 - cmp r0, r4 - bhs _02031646 - mov r4, #0 -_02031646: - add r0, r4, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203162C - - thumb_func_start sub_0203164C -sub_0203164C: ; 0x0203164C - push {r4, r5, r6, lr} - sub sp, #8 - add r5, r0, #0 - ldrb r0, [r5, #0x1e] - add r4, r1, #0 - mov r6, #0 - cmp r0, #0 - bne _020316CE - ldrh r0, [r5, #0x20] - strh r0, [r4] - ldrh r0, [r5, #0x22] - strh r0, [r4, #2] - ldrh r0, [r5, #0x24] - strh r0, [r4, #4] - ldrh r0, [r5, #0x26] - strh r0, [r4, #6] - ldrh r0, [r4] - cmp r0, #5 - blo _02031676 - add r6, r6, #1 - b _020316AA -_02031676: - ldrh r0, [r4, #2] - cmp r0, #0x13 - bls _02031680 - add r6, r6, #1 - b _020316AA -_02031680: - ldrh r0, [r4, #4] - ldr r1, _020316E8 ; =0x0000FFFF - cmp r0, r1 - beq _02031694 - add r1, sp, #4 - add r2, sp, #0 - bl GetCategoryAndMsgNoByECWordIdx - cmp r0, #0 - beq _020316A8 -_02031694: - ldrh r0, [r4, #6] - ldr r1, _020316E8 ; =0x0000FFFF - cmp r0, r1 - beq _020316AA - add r1, sp, #4 - add r2, sp, #0 - bl GetCategoryAndMsgNoByECWordIdx - cmp r0, #0 - bne _020316AA -_020316A8: - add r6, r6, #1 -_020316AA: - cmp r6, #0 - ble _020316C8 - add r0, r4, #0 - mov r1, #4 - bl MailMsg_init_withBank - mov r0, #0 - strh r0, [r4, #2] - ldr r0, _020316EC ; =0x0000011F - mov r1, #0x63 - bl GetECWordIndexByPair - strh r0, [r4, #4] - ldr r0, _020316E8 ; =0x0000FFFF - strh r0, [r4, #6] -_020316C8: - add sp, #8 - mov r0, #0 - pop {r4, r5, r6, pc} -_020316CE: - mov r0, #0x28 - add r1, r2, #0 - bl String_ctor - add r5, #0x20 - add r1, r5, #0 - mov r2, #0x28 - add r4, r0, #0 - bl CopyU16ArrayToStringN - add r0, r4, #0 - add sp, #8 - pop {r4, r5, r6, pc} - .balign 4, 0 -_020316E8: .word 0x0000FFFF -_020316EC: .word 0x0000011F - thumb_func_end sub_0203164C - - thumb_func_start sub_020316F0 -sub_020316F0: ; 0x020316F0 - ldrb r0, [r0, #0x15] - cmp r0, #1 - blo _020316FA - cmp r0, #0xc - bls _020316FC -_020316FA: - mov r0, #1 -_020316FC: - bx lr - .balign 4, 0 - thumb_func_end sub_020316F0 - - thumb_func_start sub_02031700 -sub_02031700: ; 0x02031700 - ldrb r0, [r0, #0x16] - cmp r0, #0xf - bls _02031708 - mov r0, #0 -_02031708: - bx lr - .balign 4, 0 - thumb_func_end sub_02031700 - - thumb_func_start sub_0203170C -sub_0203170C: ; 0x0203170C - mov r0, #0x40 - bx lr - thumb_func_end sub_0203170C - - thumb_func_start sub_02031710 -sub_02031710: ; 0x02031710 - push {r4, lr} - add r4, r0, #0 - mov r1, #0 - mov r2, #0x40 - bl MIi_CpuFill8 - add r0, r4, #0 - mov r1, #0 - mov r2, #0x33 - bl memset - mov r0, #1 - str r0, [r4, #0x34] - mov r0, #0x1f - bl sub_0202893C - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02031710 - - thumb_func_start sub_02031734 -sub_02031734: ; 0x02031734 - push {r3, lr} - mov r1, #0x1f - bl SavArray_get - bl sub_02031710 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02031734 - - thumb_func_start sub_02031744 -sub_02031744: ; 0x02031744 - push {r3, lr} - mov r1, #0x1f - bl SavArray_get - mov r1, #0 - ldrsb r0, [r0, r1] - cmp r0, #0 - beq _02031756 - mov r1, #1 -_02031756: - add r0, r1, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02031744 - - thumb_func_start sub_0203175C -sub_0203175C: ; 0x0203175C - push {r4, lr} - add r4, r1, #0 - mov r1, #0x1f - bl SavArray_get - add r1, r4, #0 - bl strcpy - mov r0, #0x1f - bl sub_0202893C - pop {r4, pc} - thumb_func_end sub_0203175C - - thumb_func_start sub_02031774 -sub_02031774: ; 0x02031774 - ldr r3, _0203177C ; =SavArray_get - mov r1, #0x1f - bx r3 - nop -_0203177C: .word SavArray_get - thumb_func_end sub_02031774 - - thumb_func_start sub_02031780 -sub_02031780: ; 0x02031780 - push {r3, r4, r5, lr} - add r5, r1, #0 - mov r1, #0x1f - add r4, r2, #0 - bl SavArray_get - cmp r5, #3 - bhi _020317B2 - add r1, r5, r5 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0203179C: ; jump table - .short _020317A4 - _0203179C - 2 ; case 0 - .short _020317A8 - _0203179C - 2 ; case 1 - .short _020317AC - _0203179C - 2 ; case 2 - .short _020317B0 - _0203179C - 2 ; case 3 -_020317A4: - str r4, [r0, #0x34] - b _020317B2 -_020317A8: - strh r4, [r0, #0x38] - b _020317B2 -_020317AC: - strh r4, [r0, #0x3a] - b _020317B2 -_020317B0: - str r4, [r0, #0x3c] -_020317B2: - mov r0, #0x1f - bl sub_0202893C - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_02031780 - - thumb_func_start sub_020317BC -sub_020317BC: ; 0x020317BC - push {r4, lr} - add r4, r1, #0 - mov r1, #0x1f - bl SavArray_get - cmp r4, #3 - bhi _020317EE - add r1, r4, r4 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_020317D6: ; jump table - .short _020317DE - _020317D6 - 2 ; case 0 - .short _020317E2 - _020317D6 - 2 ; case 1 - .short _020317E6 - _020317D6 - 2 ; case 2 - .short _020317EA - _020317D6 - 2 ; case 3 -_020317DE: - ldr r0, [r0, #0x34] - pop {r4, pc} -_020317E2: - ldrh r0, [r0, #0x38] - pop {r4, pc} -_020317E6: - ldrh r0, [r0, #0x3a] - pop {r4, pc} -_020317EA: - ldr r0, [r0, #0x3c] - pop {r4, pc} -_020317EE: - mov r0, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_020317BC - - thumb_func_start sub_020317F4 -sub_020317F4: ; 0x020317F4 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r4, r1, #0 - bl sub_0202CA44 - add r6, r0, #0 - add r0, r5, #0 - bl Sav2_PlayerData_GetProfileAddr - add r7, r0, #0 - add r0, r5, #0 - bl sub_02031774 - str r0, [sp] - add r0, r4, #0 - mov r1, #0 - mov r2, #0x64 - bl MIi_CpuFill8 - mov r0, #GAME_VERSION - strb r0, [r4] - mov r0, #2 - strb r0, [r4, #1] - add r0, r6, #0 - bl sub_0202CA8C - strb r0, [r4, #2] - add r0, r6, #0 - bl sub_0202CA90 - strb r0, [r4, #3] - add r0, r7, #0 - bl PlayerProfile_GetTrainerID - str r0, [r4, #4] - add r0, r7, #0 - bl PlayerProfile_GetNamePtr - add r1, r0, #0 - add r0, r4, #0 - add r0, #8 - bl CopyU16StringArray - mov r0, #0 - str r0, [r4, #0x18] - add r0, r4, #0 - ldr r1, [sp] - add r0, #0x24 - bl strcpy - add r0, r5, #0 - mov r1, #0 - bl sub_020317BC - str r0, [r4, #0x5c] - mov r0, #0x1f - bl sub_0202893C - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_020317F4 - - thumb_func_start sub_0203186C -sub_0203186C: ; 0x0203186C - push {r3, r4, r5, lr} - add r5, r1, #0 - bl sub_020317F4 - bl LCRandom - mov r1, #0xfa - lsl r1, r1, #2 - bl _s32_div_f - add r0, r5, #0 - add r4, r1, #0 - add r0, #0x60 - strh r4, [r0] - ldr r0, _02031898 ; =0x0000FFFF - add r5, #0x62 - strh r0, [r5] - mov r0, #0x1f - bl sub_0202893C - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_02031898: .word 0x0000FFFF - thumb_func_end sub_0203186C - - thumb_func_start sub_0203189C -sub_0203189C: ; 0x0203189C - push {r4, r5, r6, lr} - add r5, r1, #0 - add r6, r0, #0 - mov r1, #0x1f - bl SavArray_get - add r4, r0, #0 - add r0, r6, #0 - add r1, r5, #0 - bl sub_020317F4 - add r0, r5, #0 - ldrh r1, [r4, #0x38] - add r0, #0x60 - add r5, #0x62 - strh r1, [r0] - ldrh r0, [r4, #0x3a] - strh r0, [r5] - mov r0, #0x1f - bl sub_0202893C - pop {r4, r5, r6, pc} - thumb_func_end sub_0203189C - - thumb_func_start sub_020318C8 -sub_020318C8: ; 0x020318C8 - mov r0, #8 - bx lr - thumb_func_end sub_020318C8 - - thumb_func_start sub_020318CC -sub_020318CC: ; 0x020318CC - push {r4, lr} - add r4, r0, #0 - bl sub_020318C8 - add r2, r0, #0 - mov r0, #0 - add r1, r4, #0 - bl sub_020D47EC - mov r0, #0 - mvn r0, r0 - str r0, [r4] - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_020318CC - - thumb_func_start sub_020318E8 -sub_020318E8: ; 0x020318E8 - ldr r3, _020318F0 ; =SavArray_get - mov r1, #0x20 - bx r3 - nop -_020318F0: .word SavArray_get - thumb_func_end sub_020318E8 - - thumb_func_start sub_020318F4 -sub_020318F4: ; 0x020318F4 - ldr r0, [r0] - bx lr - thumb_func_end sub_020318F4 - - thumb_func_start sub_020318F8 -sub_020318F8: ; 0x020318F8 - ldr r0, [r0, #4] - bx lr - thumb_func_end sub_020318F8 - - thumb_func_start sub_020318FC -sub_020318FC: ; 0x020318FC - str r1, [r0] - bx lr - thumb_func_end sub_020318FC - - thumb_func_start sub_02031900 -sub_02031900: ; 0x02031900 - str r1, [r0, #4] - bx lr - thumb_func_end sub_02031900 - - thumb_func_start sub_02031904 -sub_02031904: ; 0x02031904 - mov r0, #0x2e - lsl r0, r0, #6 - bx lr - .balign 4, 0 - thumb_func_end sub_02031904 - - thumb_func_start sub_0203190C -sub_0203190C: ; 0x0203190C - push {r3, r4, r5, r6, r7, lr} - mov r2, #0x2e - mov r1, #0 - lsl r2, r2, #6 - str r0, [sp] - bl MIi_CpuFill8 - mov r0, #0 - mov r7, #0xb3 - ldr r1, _02031960 ; =0x0000FFFF - ldr r6, _02031964 ; =0x00000484 - mov ip, r0 - lsl r7, r7, #2 -_02031926: - mov r0, ip - mov r2, #0x2c - mul r2, r0 - ldr r0, [sp] - mov r3, #0 - add r4, r0, r2 - mov r0, ip - mov r2, #0xa4 - mul r2, r0 - ldr r0, [sp] - add r5, r0, r2 -_0203193C: - lsl r2, r3, #3 - add r0, r4, r2 - strh r1, [r0, r7] - add r0, r5, r2 - strh r1, [r0, r6] - add r0, r3, #1 - lsl r0, r0, #0x18 - lsr r3, r0, #0x18 - cmp r3, #5 - blo _0203193C - mov r0, ip - add r0, r0, #1 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - mov ip, r0 - cmp r0, #0xa - blo _02031926 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02031960: .word 0x0000FFFF -_02031964: .word 0x00000484 - thumb_func_end sub_0203190C - - thumb_func_start sub_02031968 -sub_02031968: ; 0x02031968 - ldr r3, _02031970 ; =SavArray_get - mov r1, #0x25 - bx r3 - nop -_02031970: .word SavArray_get - thumb_func_end sub_02031968 - - thumb_func_start sub_02031974 -sub_02031974: ; 0x02031974 - bx lr - .balign 4, 0 - thumb_func_end sub_02031974 - - thumb_func_start sub_02031978 -sub_02031978: ; 0x02031978 - add r0, #0xdc - bx lr - thumb_func_end sub_02031978 - - thumb_func_start sub_0203197C -sub_0203197C: ; 0x0203197C - mov r1, #0xb3 - lsl r1, r1, #2 - add r0, r0, r1 - bx lr - thumb_func_end sub_0203197C - - thumb_func_start sub_02031984 -sub_02031984: ; 0x02031984 - ldr r1, _0203198C ; =0x00000484 - add r0, r0, r1 - bx lr - nop -_0203198C: .word 0x00000484 - thumb_func_end sub_02031984 - - thumb_func_start sub_02031990 -sub_02031990: ; 0x02031990 - ldr r1, _02031998 ; =0x00000AEC - add r0, r0, r1 - bx lr - nop -_02031998: .word 0x00000AEC - thumb_func_end sub_02031990 - - thumb_func_start sub_0203199C -sub_0203199C: ; 0x0203199C - mov r1, #0xb - lsl r1, r1, #8 - add r0, r0, r1 - bx lr - thumb_func_end sub_0203199C - - thumb_func_start sub_020319A4 -sub_020319A4: ; 0x020319A4 - bx lr - .balign 4, 0 - thumb_func_end sub_020319A4 - - thumb_func_start sub_020319A8 -sub_020319A8: ; 0x020319A8 - push {r3, lr} - cmp r1, #0 - blt _020319B2 - cmp r1, #4 - ble _020319BA -_020319B2: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} -_020319BA: - sub r2, r2, #1 - bpl _020319C6 - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} -_020319C6: - add r0, r0, r2 - add r0, #0xdc - ldrb r0, [r0] - add r2, r0, #0 - asr r2, r1 - mov r0, #1 - add r1, r2, #0 - tst r1, r0 - bne _020319DA - mov r0, #0 -_020319DA: - pop {r3, pc} - thumb_func_end sub_020319A8 - - thumb_func_start sub_020319DC -sub_020319DC: ; 0x020319DC - mov r1, #0xb3 - lsl r1, r1, #2 - add r0, r0, r1 - bx lr - thumb_func_end sub_020319DC - - thumb_func_start sub_020319E4 -sub_020319E4: ; 0x020319E4 - ldr r1, _020319EC ; =0x00000484 - add r0, r0, r1 - bx lr - nop -_020319EC: .word 0x00000484 - thumb_func_end sub_020319E4 - - thumb_func_start sub_020319F0 -sub_020319F0: ; 0x020319F0 - mov r1, #0xb - lsl r1, r1, #8 - add r0, r0, r1 - bx lr - thumb_func_end sub_020319F0 - - thumb_func_start sub_020319F8 -sub_020319F8: ; 0x020319F8 - push {r4, r5, r6, lr} - add r4, r1, #0 - sub r1, r2, #1 - bpl _02031A06 - bl GF_AssertFail - pop {r4, r5, r6, pc} -_02031A06: - add r2, r0, r1 - mov r0, #1 - mov r3, #0 - add r2, #0xdc - add r6, r0, #0 -_02031A10: - add r1, r4, #0 - asr r1, r3 - and r1, r6 - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - beq _02031A2A - add r5, r0, #0 - lsl r5, r3 - lsl r5, r5, #0x18 - ldrb r1, [r2] - lsr r5, r5, #0x18 - orr r1, r5 - strb r1, [r2] -_02031A2A: - add r1, r3, #1 - lsl r1, r1, #0x18 - lsr r3, r1, #0x18 - cmp r3, #5 - blo _02031A10 - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_020319F8 - - thumb_func_start sub_02031A38 -sub_02031A38: ; 0x02031A38 - ldr r2, _02031A4C ; =0x00000B74 - ldr r3, [r0, r2] - add r1, r3, r1 - str r1, [r0, r2] - ldr r3, [r0, r2] - ldr r1, _02031A50 ; =0x0001869F - cmp r3, r1 - ble _02031A4A - str r1, [r0, r2] -_02031A4A: - bx lr - .balign 4, 0 -_02031A4C: .word 0x00000B74 -_02031A50: .word 0x0001869F - thumb_func_end sub_02031A38 - - thumb_func_start sub_02031A54 -sub_02031A54: ; 0x02031A54 - ldr r2, _02031A68 ; =0x00000B74 - ldr r3, [r0, r2] - sub r1, r3, r1 - str r1, [r0, r2] - ldr r1, [r0, r2] - cmp r1, #0 - bge _02031A66 - mov r1, #0 - str r1, [r0, r2] -_02031A66: - bx lr - .balign 4, 0 -_02031A68: .word 0x00000B74 - thumb_func_end sub_02031A54 - - thumb_func_start sub_02031A6C -sub_02031A6C: ; 0x02031A6C - ldr r1, _02031A74 ; =0x00000B74 - ldr r0, [r0, r1] - bx lr - nop -_02031A74: .word 0x00000B74 - thumb_func_end sub_02031A6C - - thumb_func_start sub_02031A78 -sub_02031A78: ; 0x02031A78 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #0x1b - blt _02031A86 - bl GF_AssertFail -_02031A86: - ldr r0, _02031A94 ; =0x00000B78 - ldr r0, [r5, r0] - add r1, r0, #0 - lsr r1, r4 - mov r0, #1 - and r0, r1 - pop {r3, r4, r5, pc} - .balign 4, 0 -_02031A94: .word 0x00000B78 - thumb_func_end sub_02031A78 - - thumb_func_start sub_02031A98 -sub_02031A98: ; 0x02031A98 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #0x1b - blt _02031AA6 - bl GF_AssertFail -_02031AA6: - ldr r0, _02031AB4 ; =0x00000B78 - mov r1, #1 - ldr r2, [r5, r0] - lsl r1, r4 - orr r1, r2 - str r1, [r5, r0] - pop {r3, r4, r5, pc} - .balign 4, 0 -_02031AB4: .word 0x00000B78 - thumb_func_end sub_02031A98 - - thumb_func_start sub_02031AB8 -sub_02031AB8: ; 0x02031AB8 - ldr r2, _02031AC8 ; =0x00000B7C - ldrh r0, [r0, r2] - add r2, r0, #0 - asr r2, r1 - mov r0, #1 - and r0, r2 - bx lr - nop -_02031AC8: .word 0x00000B7C - thumb_func_end sub_02031AB8 - - thumb_func_start sub_02031ACC -sub_02031ACC: ; 0x02031ACC - push {r3, r4} - ldr r2, _02031AE0 ; =0x00000B7C - mov r3, #1 - ldrh r4, [r0, r2] - lsl r3, r1 - add r1, r4, #0 - orr r1, r3 - strh r1, [r0, r2] - pop {r3, r4} - bx lr - .balign 4, 0 -_02031AE0: .word 0x00000B7C - thumb_func_end sub_02031ACC - - thumb_func_start sub_02031AE4 -sub_02031AE4: ; 0x02031AE4 - ldr r1, _02031AEC ; =0x00000B7C - mov r2, #0 - strh r2, [r0, r1] - bx lr - .balign 4, 0 -_02031AEC: .word 0x00000B7C - thumb_func_end sub_02031AE4 - - thumb_func_start sub_02031AF0 -sub_02031AF0: ; 0x02031AF0 - mov r0, #0x28 - bx lr - thumb_func_end sub_02031AF0 - - thumb_func_start sub_02031AF4 -sub_02031AF4: ; 0x02031AF4 - ldr r3, _02031AFC ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #0x28 - bx r3 - .balign 4, 0 -_02031AFC: .word MIi_CpuFill8 - thumb_func_end sub_02031AF4 - - thumb_func_start sub_02031B00 -sub_02031B00: ; 0x02031B00 - ldr r3, _02031B08 ; =SavArray_get - mov r1, #0x1d - bx r3 - nop -_02031B08: .word SavArray_get - thumb_func_end sub_02031B00 - - thumb_func_start sub_02031B0C -sub_02031B0C: ; 0x02031B0C - mov r0, #0x80 - bx lr - thumb_func_end sub_02031B0C - - thumb_func_start sub_02031B10 -sub_02031B10: ; 0x02031B10 - mov r0, #0x20 - bx lr - thumb_func_end sub_02031B10 - - thumb_func_start sub_02031B14 -sub_02031B14: ; 0x02031B14 - ldr r3, _02031B1C ; =SavArray_get - mov r1, #0x26 - bx r3 - nop -_02031B1C: .word SavArray_get - thumb_func_end sub_02031B14 - - thumb_func_start sub_02031B20 -sub_02031B20: ; 0x02031B20 - push {r4, lr} - add r4, r0, #0 - mov r1, #0 - mov r2, #0x80 - bl MIi_CpuFill8 - add r0, r4, #0 - add r0, #0xc - bl sub_02031B5C - add r0, r4, #0 - bl sub_02031B3C - pop {r4, pc} - thumb_func_end sub_02031B20 - - thumb_func_start sub_02031B3C -sub_02031B3C: ; 0x02031B3C - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r4, #0 - add r5, #0x20 -_02031B44: - add r0, r5, #0 - bl sub_020325CC - add r4, r4, #1 - add r5, #0x20 - cmp r4, #3 - blt _02031B44 - pop {r3, r4, r5, pc} - thumb_func_end sub_02031B3C - - thumb_func_start sub_02031B54 -sub_02031B54: ; 0x02031B54 - ldr r3, _02031B58 ; =sub_02031B20 - bx r3 - .balign 4, 0 -_02031B58: .word sub_02031B20 - thumb_func_end sub_02031B54 - - thumb_func_start sub_02031B5C -sub_02031B5C: ; 0x02031B5C - ldr r3, _02031B64 ; =MIi_CpuFill8 - mov r1, #0 - mov r2, #8 - bx r3 - .balign 4, 0 -_02031B64: .word MIi_CpuFill8 - thumb_func_end sub_02031B5C - - thumb_func_start sub_02031B68 -sub_02031B68: ; 0x02031B68 - push {r3, lr} - cmp r1, #7 - blt _02031B76 - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} -_02031B76: - ldrb r3, [r0, r1] - add r2, r2, r3 - cmp r2, #0x63 - ble _02031B82 - mov r2, #0x63 - b _02031B82 -_02031B82: - strb r2, [r0, r1] - ldrb r0, [r0, r1] - pop {r3, pc} - thumb_func_end sub_02031B68 - - thumb_func_start sub_02031B88 -sub_02031B88: ; 0x02031B88 - push {r3, lr} - cmp r1, #7 - blt _02031B96 - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} -_02031B96: - ldrb r3, [r0, r1] - cmp r3, r2 - blo _02031BA0 - sub r2, r3, r2 - strb r2, [r0, r1] -_02031BA0: - ldrb r0, [r0, r1] - pop {r3, pc} - thumb_func_end sub_02031B88 - - thumb_func_start sub_02031BA4 -sub_02031BA4: ; 0x02031BA4 - push {r3, lr} - cmp r1, #7 - blt _02031BB2 - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} -_02031BB2: - ldrb r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02031BA4 - - thumb_func_start sub_02031BB8 -sub_02031BB8: ; 0x02031BB8 - push {r3, lr} - ldrb r3, [r0, r1] - cmp r3, r2 - bhs _02031BC6 - bl GF_AssertFail - pop {r3, pc} -_02031BC6: - strb r1, [r0, #8] - strb r2, [r0, #7] - bl sub_02031B88 - pop {r3, pc} - thumb_func_end sub_02031BB8 - - thumb_func_start sub_02031BD0 -sub_02031BD0: ; 0x02031BD0 - ldrb r0, [r0, #7] - bx lr - thumb_func_end sub_02031BD0 - - thumb_func_start sub_02031BD4 -sub_02031BD4: ; 0x02031BD4 - ldrb r0, [r0, #8] - cmp r0, #7 - blo _02031BDE - mov r0, #4 - bx lr -_02031BDE: - lsl r1, r0, #1 - ldr r0, _02031BE8 ; =0x020F68D0 - ldrh r0, [r0, r1] - bx lr - nop -_02031BE8: .word 0x020F68D0 - thumb_func_end sub_02031BD4 - - thumb_func_start sub_02031BEC -sub_02031BEC: ; 0x02031BEC - ldr r3, [r0, #0x1c] - ldr r2, _02031BFC ; =0x3FFFFFFF - lsl r1, r1, #0x1e - and r2, r3 - orr r1, r2 - str r1, [r0, #0x1c] - bx lr - nop -_02031BFC: .word 0x3FFFFFFF - thumb_func_end sub_02031BEC - - thumb_func_start sub_02031C00 -sub_02031C00: ; 0x02031C00 - ldr r0, [r0, #0x1c] - lsr r0, r0, #0x1e - bx lr - .balign 4, 0 - thumb_func_end sub_02031C00 - - thumb_func_start sub_02031C08 -sub_02031C08: ; 0x02031C08 - push {r3, r4} - ldrh r4, [r0, #0xa] - mov r3, #0 - add r2, r3, #0 - mov r1, #7 -_02031C12: - add r0, r4, #0 - tst r0, r1 - beq _02031C1E - add r0, r3, #1 - lsl r0, r0, #0x18 - lsr r3, r0, #0x18 -_02031C1E: - lsl r0, r4, #0xd - add r2, r2, #1 - lsr r4, r0, #0x10 - cmp r2, #5 - blt _02031C12 - add r0, r3, #0 - pop {r3, r4} - bx lr - .balign 4, 0 - thumb_func_end sub_02031C08 - - thumb_func_start sub_02031C30 -sub_02031C30: ; 0x02031C30 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - ldrh r6, [r5, #0xa] - cmp r4, #7 - blt _02031C44 - bl GF_AssertFail - mov r0, #0 - pop {r4, r5, r6, pc} -_02031C44: - mov r3, #0 - mov r1, #7 -_02031C48: - add r0, r6, #0 - tst r0, r1 - beq _02031C54 - lsl r0, r6, #0xd - lsr r6, r0, #0x10 - b _02031C96 -_02031C54: - add r6, r4, #1 - mov r0, #7 - and r0, r6 - lsl r6, r3, #1 - add r3, r3, r6 - lsl r0, r3 - lsl r0, r0, #0x10 - ldrh r1, [r5, #0xa] - lsr r0, r0, #0x10 - orr r0, r1 - strh r0, [r5, #0xa] - mov r0, #2 - ldrh r1, [r5, #0xa] - lsl r0, r0, #0xe - orr r0, r1 - strh r0, [r5, #0xa] - str r2, [r5, #0x14] - ldrb r0, [r5, #9] - cmp r0, #0 - bne _02031C7E - str r2, [r5, #0x18] -_02031C7E: - mov r0, #3 - ldr r1, [r5, #0x1c] - lsl r0, r0, #0x1e - and r0, r1 - str r0, [r5, #0x1c] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #1 - bl sub_02031B88 - mov r0, #1 - pop {r4, r5, r6, pc} -_02031C96: - add r3, r3, #1 - cmp r3, #5 - blt _02031C48 - mov r0, #0 - pop {r4, r5, r6, pc} - thumb_func_end sub_02031C30 - - thumb_func_start sub_02031CA0 -sub_02031CA0: ; 0x02031CA0 - push {r4, lr} - add r4, r0, #0 - bl sub_02031C08 - cmp r0, #0 - bne _02031CB0 - mov r0, #0 - pop {r4, pc} -_02031CB0: - ldr r0, [r4, #0x1c] - lsl r0, r0, #2 - lsr r0, r0, #2 - cmp r0, #0x32 - bhs _02031CBE - mov r0, #1 - pop {r4, pc} -_02031CBE: - cmp r0, #0x50 - bhs _02031CC6 - mov r0, #2 - pop {r4, pc} -_02031CC6: - mov r0, #3 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02031CA0 - - thumb_func_start sub_02031CCC -sub_02031CCC: ; 0x02031CCC - mov r2, #0xa - mul r2, r1 - ldrb r1, [r0, #9] - cmp r1, #0 - beq _02031CE6 - ldrb r1, [r0, #0xe] - add r1, r1, r2 - cmp r1, #0xff - ble _02031CE4 - mov r1, #0xff - strb r1, [r0, #0xe] - bx lr -_02031CE4: - strb r1, [r0, #0xe] -_02031CE6: - bx lr - thumb_func_end sub_02031CCC - - thumb_func_start sub_02031CE8 -sub_02031CE8: ; 0x02031CE8 - ldrb r0, [r0, #9] - bx lr - thumb_func_end sub_02031CE8 - - thumb_func_start sub_02031CEC -sub_02031CEC: ; 0x02031CEC - push {r3, r4, r5, lr} - add r5, r2, #0 - cmp r1, #9 - blt _02031CF6 - mov r1, #0 -_02031CF6: - cmp r1, #4 - bgt _02031D12 - ldr r0, _02031D68 ; =0x020F6902 - lsl r2, r1, #3 - add r1, r0, r2 - ldrh r0, [r0, r2] - strh r0, [r5] - ldrh r0, [r1, #2] - strh r0, [r5, #2] - ldrh r0, [r1, #4] - strh r0, [r5, #4] - ldrh r0, [r1, #6] - strh r0, [r5, #6] - b _02031D64 -_02031D12: - cmp r1, #7 - bgt _02031D44 - sub r1, r1, #5 - add r0, #0x38 - lsl r1, r1, #5 - add r4, r0, r1 - add r0, r4, #0 - bl sub_02031D80 - cmp r0, #0 - bne _02031D32 - add r0, r5, #0 - bl sub_02031B5C - mov r0, #0 - pop {r3, r4, r5, pc} -_02031D32: - ldrh r0, [r4] - strh r0, [r5] - ldrh r0, [r4, #2] - strh r0, [r5, #2] - ldrh r0, [r4, #4] - strh r0, [r5, #4] - ldrh r0, [r4, #6] - strh r0, [r5, #6] - b _02031D64 -_02031D44: - ldrb r1, [r0, #9] - cmp r1, #0 - bne _02031D54 - add r0, r5, #0 - bl sub_02031B5C - mov r0, #0 - pop {r3, r4, r5, pc} -_02031D54: - ldrh r1, [r0, #0xc] - strh r1, [r5] - ldrh r1, [r0, #0xe] - strh r1, [r5, #2] - ldrh r1, [r0, #0x10] - strh r1, [r5, #4] - ldrh r0, [r0, #0x12] - strh r0, [r5, #6] -_02031D64: - mov r0, #1 - pop {r3, r4, r5, pc} - .balign 4, 0 -_02031D68: .word 0x020F6902 - thumb_func_end sub_02031CEC - - thumb_func_start sub_02031D6C -sub_02031D6C: ; 0x02031D6C - push {r3, lr} - bl sub_02031D80 - cmp r0, #0 - beq _02031D7A - mov r0, #1 - pop {r3, pc} -_02031D7A: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02031D6C - - thumb_func_start sub_02031D80 -sub_02031D80: ; 0x02031D80 - mov r3, #0 - add r2, r3, #0 -_02031D84: - add r1, r0, r2 - ldrb r1, [r1, #3] - add r2, r2, #1 - add r1, r3, r1 - lsl r1, r1, #0x10 - lsr r3, r1, #0x10 - cmp r2, #5 - blt _02031D84 - cmp r3, #0x64 - bls _02031D9A - mov r3, #0x64 -_02031D9A: - lsl r0, r3, #0x18 - lsr r0, r0, #0x18 - bx lr - thumb_func_end sub_02031D80 - - thumb_func_start sub_02031DA0 -sub_02031DA0: ; 0x02031DA0 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - add r6, r1, #0 - add r4, r0, #0 - add r0, r6, #0 - mov r1, #0 - mov r2, #0xe - bl MIi_CpuFill8 - add r0, sp, #4 - add r0, #2 - mov r1, #0 - mov r2, #0xa - bl MIi_CpuFill8 - mov r0, #0 - add r1, sp, #4 - str r0, [sp] - add r1, #2 -_02031DC6: - add r2, r4, r0 - ldrb r2, [r2, #3] - strb r0, [r1] - strb r2, [r1, #1] - cmp r2, #0 - beq _02031DDC - ldr r2, [sp] - add r2, r2, #1 - lsl r2, r2, #0x18 - lsr r2, r2, #0x18 - str r2, [sp] -_02031DDC: - add r0, r0, #1 - add r1, r1, #2 - cmp r0, #5 - blt _02031DC6 - ldr r0, [sp] - cmp r0, #0 - beq _02031E3C - add r0, sp, #4 - add r0, #2 - mov r7, #0 - mov ip, r0 -_02031DF2: - add r5, r7, #1 - cmp r5, #5 - bge _02031E34 - lsl r2, r5, #1 - mov r1, ip - add r1, r1, r2 - add r2, sp, #4 -_02031E00: - ldrb r4, [r1, #1] - ldrb r3, [r0, #1] - cmp r3, r4 - bhi _02031E2C - cmp r3, r4 - bne _02031E14 - ldrb r4, [r0] - ldrb r3, [r1] - cmp r4, r3 - blo _02031E2C -_02031E14: - ldrb r3, [r0] - strb r3, [r2] - ldrb r3, [r0, #1] - strb r3, [r2, #1] - ldrb r3, [r1] - strb r3, [r0] - ldrb r3, [r1, #1] - strb r3, [r0, #1] - ldrb r3, [r2] - strb r3, [r1] - ldrb r3, [r2, #1] - strb r3, [r1, #1] -_02031E2C: - add r5, r5, #1 - add r1, r1, #2 - cmp r5, #5 - blt _02031E00 -_02031E34: - add r7, r7, #1 - add r0, r0, #2 - cmp r7, #5 - blt _02031DF2 -_02031E3C: - add r0, sp, #4 - ldrb r5, [r0, #0xb] - add r3, sp, #4 - add r0, r6, #0 - mov r4, #0 - add r3, #2 - add r0, #0xb -_02031E4A: - ldrb r2, [r3] - add r1, r6, r4 - strb r2, [r1, #6] - ldrb r1, [r3, #1] - cmp r5, r1 - bne _02031E5C - ldrb r1, [r0] - add r1, r1, #1 - strb r1, [r0] -_02031E5C: - add r4, r4, #1 - add r3, r3, #2 - cmp r4, #5 - blt _02031E4A - ldr r0, [sp] - strb r0, [r6, #0xc] - ldr r0, [sp] - cmp r0, #5 - bls _02031E70 - b _02031FDC -_02031E70: - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_02031E7C: ; jump table - .short _02031E88 - _02031E7C - 2 ; case 0 - .short _02031E98 - _02031E7C - 2 ; case 1 - .short _02031EB2 - _02031E7C - 2 ; case 2 - .short _02031ED6 - _02031E7C - 2 ; case 3 - .short _02031EFA - _02031E7C - 2 ; case 4 - .short _02031EFA - _02031E7C - 2 ; case 5 -_02031E88: - ldrh r1, [r6] - mov r0, #0xf - add sp, #0x10 - bic r1, r0 - mov r0, #6 - orr r0, r1 - strh r0, [r6] - pop {r3, r4, r5, r6, r7, pc} -_02031E98: - add r1, sp, #4 - add r0, r6, #0 - add r1, #2 - mov r2, #0 - bl sub_02032588 - ldrh r1, [r6, #2] - mov r0, #0xf - bic r1, r0 - mov r0, #6 - orr r0, r1 - strh r0, [r6, #2] - b _02031FDC -_02031EB2: - add r1, sp, #4 - add r0, r6, #0 - add r1, #2 - mov r2, #0 - bl sub_02032588 - add r0, r6, #2 - add r1, sp, #8 - mov r2, #1 - bl sub_02032588 - ldrh r1, [r6, #4] - mov r0, #0xf - bic r1, r0 - mov r0, #6 - orr r0, r1 - strh r0, [r6, #4] - b _02031FDC -_02031ED6: - add r1, sp, #4 - add r0, r6, #0 - add r1, #2 - mov r2, #0 - bl sub_02032588 - add r0, r6, #2 - add r1, sp, #8 - mov r2, #1 - bl sub_02032588 - add r1, sp, #8 - add r0, r6, #4 - add r1, #2 - mov r2, #2 - bl sub_02032588 - b _02031FDC -_02031EFA: - add r0, sp, #4 - ldrb r2, [r0, #3] - ldrb r1, [r0, #9] - sub r1, r2, r1 - cmp r1, #0xc - bgt _02031F88 - ldrh r3, [r6] - mov r2, #0xf - mov r1, #5 - bic r3, r2 - orr r1, r3 - strh r1, [r6] - ldrb r3, [r0, #3] - ldrh r1, [r6] - ldr r4, _02031FE4 ; =0xFFFF00FF - lsl r3, r3, #0x18 - and r1, r4 - lsr r3, r3, #0x10 - orr r1, r3 - strh r1, [r6] - ldrh r1, [r6, #2] - mov r3, #6 - bic r1, r2 - orr r1, r3 - strh r1, [r6, #2] - ldrb r5, [r0, #5] - ldrh r1, [r6, #2] - lsl r5, r5, #0x18 - and r1, r4 - lsr r5, r5, #0x10 - orr r1, r5 - strh r1, [r6, #2] - ldrh r1, [r6, #4] - bic r1, r2 - orr r1, r3 - strh r1, [r6, #4] - ldrh r1, [r6, #4] - add r2, r1, #0 - ldrb r1, [r0, #7] - and r2, r4 - lsl r1, r1, #0x18 - lsr r1, r1, #0x10 - orr r1, r2 - strh r1, [r6, #4] - mov r1, #1 - strb r1, [r6, #0xc] - ldrb r0, [r0, #3] - cmp r0, #0x14 - bls _02031F6A - ldrh r1, [r6] - mov r0, #0xf0 - bic r1, r0 - mov r0, #0x30 - orr r0, r1 - strh r0, [r6] - b _02031FDC -_02031F6A: - cmp r0, #7 - ldrh r1, [r6] - bls _02031F7C - mov r0, #0xf0 - bic r1, r0 - mov r0, #0x20 - orr r0, r1 - strh r0, [r6] - b _02031FDC -_02031F7C: - mov r0, #0xf0 - bic r1, r0 - mov r0, #0x10 - orr r0, r1 - strh r0, [r6] - b _02031FDC -_02031F88: - add r1, sp, #4 - add r0, r6, #0 - add r1, #2 - mov r2, #0 - bl sub_02032588 - add r0, r6, #2 - add r1, sp, #8 - mov r2, #1 - bl sub_02032588 - ldr r0, [sp] - cmp r0, #4 - bne _02031FB2 - add r1, sp, #0xc - add r0, r6, #4 - add r1, #2 - mov r2, #2 - bl sub_02032588 - b _02031FDC -_02031FB2: - ldrh r1, [r6, #4] - mov r0, #0xf - bic r1, r0 - mov r0, #5 - orr r0, r1 - strh r0, [r6, #4] - ldrh r1, [r6, #4] - mov r0, #0xf0 - bic r1, r0 - mov r0, #0x10 - orr r0, r1 - strh r0, [r6, #4] - ldrh r1, [r6, #4] - ldr r0, _02031FE4 ; =0xFFFF00FF - and r1, r0 - add r0, sp, #4 - ldrb r0, [r0, #7] - lsl r0, r0, #0x18 - lsr r0, r0, #0x10 - orr r0, r1 - strh r0, [r6, #4] -_02031FDC: - ldr r0, [sp] - strb r0, [r6, #0xc] - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02031FE4: .word 0xFFFF00FF - thumb_func_end sub_02031DA0 - - thumb_func_start sub_02031FE8 -sub_02031FE8: ; 0x02031FE8 - push {r3, lr} - sub sp, #0x10 - add r1, sp, #0 - bl sub_02031DA0 - add r0, sp, #0 - ldrh r0, [r0] - lsl r0, r0, #0x1c - lsr r0, r0, #0x1c - cmp r0, #5 - blo _02032000 - mov r0, #5 -_02032000: - add sp, #0x10 - pop {r3, pc} - thumb_func_end sub_02031FE8 - - thumb_func_start sub_02032004 -sub_02032004: ; 0x02032004 - push {r3, lr} - sub sp, #0x10 - add r1, sp, #0 - bl sub_02031DA0 - add r0, sp, #0 - ldrb r1, [r0, #0xc] - cmp r1, #0 - bne _0203201C - add sp, #0x10 - mov r0, #0 - pop {r3, pc} -_0203201C: - ldrb r0, [r0, #6] - add r0, r0, #1 - add sp, #0x10 - pop {r3, pc} - thumb_func_end sub_02032004 - - thumb_func_start sub_02032024 -sub_02032024: ; 0x02032024 - push {r4, lr} - add r4, r0, #0 - ldrb r0, [r4, #9] - cmp r0, #0 - bne _02032032 - mov r0, #0 - pop {r4, pc} -_02032032: - sub r0, r0, #1 - strb r0, [r4, #9] - ldrb r0, [r4, #9] - cmp r0, #0 - bne _02032054 - add r0, r4, #0 - add r0, #0xc - bl sub_02031B5C - mov r0, #0 - str r0, [r4, #0x18] - str r0, [r4, #0x14] - mov r0, #3 - ldr r1, [r4, #0x1c] - lsl r0, r0, #0x1e - and r0, r1 - str r0, [r4, #0x1c] -_02032054: - ldrb r0, [r4, #9] - pop {r4, pc} - thumb_func_end sub_02032024 - - thumb_func_start sub_02032058 -sub_02032058: ; 0x02032058 - push {r4, r5, r6, lr} - add r5, r0, #0 - ldrh r0, [r5, #0xa] - add r4, r1, #0 - lsl r0, r0, #0x10 - lsr r0, r0, #0x1f - bne _0203206C - ldrb r0, [r5, #9] - cmp r0, #0 - beq _020320D8 -_0203206C: - ldr r0, [r5, #0x18] - sub r6, r4, r0 - cmp r6, #0x64 - blo _02032094 - add r0, r6, #0 - mov r1, #0x64 - bl _u32_div_f - add r1, r0, #0 - lsl r1, r1, #0x18 - add r0, r5, #0 - lsr r1, r1, #0x18 - bl sub_02032340 - add r0, r6, #0 - mov r1, #0x64 - bl _u32_div_f - sub r0, r4, r1 - str r0, [r5, #0x18] -_02032094: - ldrh r0, [r5, #0xa] - lsl r0, r0, #0x10 - lsr r0, r0, #0x1f - beq _020320D8 - ldr r1, [r5, #0x1c] - mov r0, #3 - lsl r0, r0, #0x1e - add r2, r1, #0 - and r2, r0 - ldr r0, [r5, #0x14] - sub r1, r4, r0 - ldr r0, _020320DC ; =0x3FFFFFFF - and r0, r1 - orr r0, r2 - str r0, [r5, #0x1c] - lsl r0, r0, #2 - lsr r0, r0, #2 - cmp r0, #0x64 - blo _020320D8 - ldrb r0, [r5, #9] - cmp r0, #0 - beq _020320CA - add r0, r5, #0 - mov r1, #3 - bl sub_02031BEC - b _020320D2 -_020320CA: - add r0, r5, #0 - mov r1, #2 - bl sub_02031BEC -_020320D2: - add r0, r5, #0 - bl sub_02032354 -_020320D8: - pop {r4, r5, r6, pc} - nop -_020320DC: .word 0x3FFFFFFF - thumb_func_end sub_02032058 - - thumb_func_start sub_020320E0 -sub_020320E0: ; 0x020320E0 - push {r3, r4, r5, r6, r7, lr} - add r7, r0, #0 - add r5, r1, #0 - add r0, r3, #0 - mov r1, #0x20 - add r6, r2, #0 - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #0x20 - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl PlayerProfile_GetTrainerID - str r0, [r4] - add r0, r5, #0 - bl PlayerProfile_GetTrainerGender - strb r0, [r4, #4] - add r0, r5, #0 - bl sub_02029088 - strb r0, [r4, #5] - add r0, r5, #0 - bl sub_0202907C - strb r0, [r4, #6] - add r0, r4, #0 - add r0, #8 - mov r1, #8 - bl StringFillEOS - add r0, r5, #0 - bl PlayerProfile_GetNamePtr - add r1, r0, #0 - add r0, r4, #0 - add r0, #8 - mov r2, #7 - bl CopyU16StringArrayN - add r2, r4, #0 - add r0, r7, #0 - mov r1, #8 - add r2, #0x18 - bl sub_02031CEC - ldr r0, _02032154 ; =0x0000FFFF - cmp r6, r0 - bls _0203214C - strh r0, [r4, #0x18] - b _0203214E -_0203214C: - strh r6, [r4, #0x18] -_0203214E: - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_02032154: .word 0x0000FFFF - thumb_func_end sub_020320E0 - - thumb_func_start sub_02032158 -sub_02032158: ; 0x02032158 - push {r3, lr} - ldr r3, [r0] - ldr r2, [r1] - cmp r3, r2 - beq _02032166 - mov r0, #0 - pop {r3, pc} -_02032166: - ldrb r3, [r0, #4] - ldrb r2, [r1, #4] - cmp r3, r2 - beq _02032172 - mov r0, #0 - pop {r3, pc} -_02032172: - ldrb r3, [r0, #6] - ldrb r2, [r1, #6] - cmp r3, r2 - beq _0203217E - mov r0, #0 - pop {r3, pc} -_0203217E: - ldrb r3, [r0, #5] - ldrb r2, [r1, #5] - cmp r3, r2 - beq _0203218A - mov r0, #0 - pop {r3, pc} -_0203218A: - add r0, #8 - add r1, #8 - bl StringNotEqual - cmp r0, #0 - bne _0203219A - mov r0, #1 - pop {r3, pc} -_0203219A: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02032158 - - thumb_func_start sub_020321A0 -sub_020321A0: ; 0x020321A0 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x18 - mov r4, #0 - add r5, r0, #0 - str r0, [sp] - add r7, r1, #0 - str r2, [sp, #4] - str r3, [sp, #8] - str r4, [sp, #0x10] - add r5, #0x38 -_020321B4: - add r0, r5, #0 - bl sub_02031D6C - cmp r0, #0 - beq _020321CC - ldr r0, [sp, #0x10] - add r4, r4, #1 - add r0, r0, #1 - add r5, #0x20 - str r0, [sp, #0x10] - cmp r4, #3 - blt _020321B4 -_020321CC: - mov r0, #0 - str r0, [sp, #0xc] - ldr r0, [sp, #4] - cmp r0, #0 - ble _020322A6 -_020321D6: - ldr r1, [sp, #0xc] - ldr r0, [sp, #8] - cmp r1, r0 - beq _02032298 - add r0, r7, #0 - add r0, #0x18 - bl sub_02031D6C - cmp r0, #0 - beq _02032298 - mov r4, #0 - str r4, [sp, #0x14] - ldr r5, [sp] - ldr r6, [sp, #0x14] - add r5, #0x20 -_020321F4: - add r0, r7, #0 - add r1, r5, #0 - bl sub_02032158 - cmp r0, #0 - beq _0203220A - lsl r0, r6, #0x18 - lsr r4, r0, #0x18 - mov r0, #1 - str r0, [sp, #0x14] - b _02032212 -_0203220A: - add r6, r6, #1 - add r5, #0x20 - cmp r6, #3 - blt _020321F4 -_02032212: - ldr r0, [sp, #0x10] - cmp r0, #3 - blt _02032222 - mov r0, #2 - mov ip, r0 - mov r0, #1 - str r0, [sp, #0x14] - b _02032242 -_02032222: - ldr r0, [sp, #0x14] - cmp r0, #0 - beq _02032234 - ldr r0, [sp, #0x10] - sub r0, r0, #1 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - mov ip, r0 - b _02032242 -_02032234: - ldr r0, [sp, #0x10] - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - mov ip, r0 - ldr r0, [sp, #0x10] - add r0, r0, #1 - str r0, [sp, #0x10] -_02032242: - ldr r0, [sp, #0x14] - cmp r0, #0 - beq _0203227C - mov r0, ip - cmp r4, r0 - bhs _0203227C - ldr r0, [sp, #0x10] - sub r6, r0, #1 - cmp r4, r6 - bge _0203227C - ldr r0, [sp] - lsl r1, r4, #5 - add r5, r0, r1 -_0203225C: - add r3, r5, #0 - add r2, r5, #0 - add r3, #0x40 - add r2, #0x20 - add r5, r2, #0 - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - add r4, r4, #1 - stmia r2!, {r0, r1} - cmp r4, r6 - blt _0203225C -_0203227C: - mov r0, ip - lsl r1, r0, #5 - ldr r0, [sp] - add r3, r7, #0 - add r2, r0, r1 - add r2, #0x20 - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} -_02032298: - ldr r0, [sp, #0xc] - add r7, #0x20 - add r1, r0, #1 - ldr r0, [sp, #4] - str r1, [sp, #0xc] - cmp r1, r0 - blt _020321D6 -_020322A6: - add sp, #0x18 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_020321A0 - - thumb_func_start sub_020322AC -sub_020322AC: ; 0x020322AC - push {r3, r4, r5, r6, r7, lr} - add r7, r2, #0 - add r4, r0, #0 - add r5, r1, #0 - mov r0, #9 - add r1, r7, #0 - bl String_ctor - add r6, r0, #0 - cmp r5, #5 - bge _020322E2 - mov r0, #1 - mov r1, #0x1b - mov r2, #0x15 - add r3, r7, #0 - bl NewMsgDataFromNarc - add r5, #0xe - add r4, r0, #0 - add r1, r5, #0 - add r2, r6, #0 - bl ReadMsgDataIntoString - add r0, r4, #0 - bl DestroyMsgData - b _02032304 -_020322E2: - cmp r5, #8 - bge _02032304 - sub r0, r5, #5 - lsl r0, r0, #0x18 - lsr r5, r0, #0x13 - add r0, r4, #0 - add r0, #0x38 - add r0, r0, r5 - bl sub_02031D6C - cmp r0, #0 - beq _02032304 - add r4, #0x28 - add r0, r6, #0 - add r1, r4, r5 - bl CopyU16ArrayToString -_02032304: - add r0, r6, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_020322AC - - thumb_func_start sub_02032308 -sub_02032308: ; 0x02032308 - push {r3, r4, r5, lr} - sub sp, #8 - add r4, r2, #0 - add r2, sp, #0 - bl sub_02031CEC - mov r0, #1 - mov r1, #0x1b - mov r2, #0x15 - add r3, r4, #0 - bl NewMsgDataFromNarc - add r5, r0, #0 - add r0, sp, #0 - bl sub_02032004 - add r1, r0, #0 - add r0, r5, #0 - add r1, #0x13 - bl NewString_ReadMsgData - add r4, r0, #0 - add r0, r5, #0 - bl DestroyMsgData - add r0, r4, #0 - add sp, #8 - pop {r3, r4, r5, pc} - thumb_func_end sub_02032308 - - thumb_func_start sub_02032340 -sub_02032340: ; 0x02032340 - ldrb r2, [r0, #0xe] - add r1, r2, r1 - cmp r1, #0xff - ble _0203234E - mov r1, #0xff - strb r1, [r0, #0xe] - bx lr -_0203234E: - strb r1, [r0, #0xe] - bx lr - .balign 4, 0 - thumb_func_end sub_02032340 - - thumb_func_start sub_02032354 -sub_02032354: ; 0x02032354 - push {r4, r5, r6, r7, lr} - sub sp, #0x3c - str r0, [sp] - ldrh r0, [r0, #0xa] - add r1, sp, #0x34 - add r1, #1 - str r0, [sp, #0x14] - ldr r0, [sp] - add r0, #0xc - bl sub_020324F4 - mov r0, #0 - str r0, [sp, #0x28] -_0203236E: - mov r0, #0 - str r0, [sp, #0x10] - ldr r0, [sp, #0x14] - mov r1, #7 - and r0, r1 - lsl r0, r0, #0x18 - lsr r1, r0, #0x18 - bne _02032380 - b _020324CA -_02032380: - ldr r0, [sp, #0x10] - str r0, [sp, #0x24] - ldr r0, [sp, #0x10] - str r0, [sp, #0x18] - ldr r0, [sp, #0x10] - str r0, [sp, #0x1c] - sub r0, r1, #1 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - str r0, [sp, #0x20] - ldr r0, [sp, #0x10] - add r1, sp, #0x30 -_02032398: - strb r0, [r1] - add r0, r0, #1 - add r1, r1, #1 - cmp r0, #5 - blt _02032398 - mov r0, #0 - add r2, sp, #0x30 - add r7, sp, #0x34 - str r0, [sp, #4] - add r7, #1 - mov ip, r2 -_020323AE: - ldr r0, [sp, #4] - add r1, r0, #1 - cmp r1, #5 - bge _020323DE - mov r0, ip - add r3, r0, r1 -_020323BA: - mov r0, #0 - mov r5, #0 - ldrsb r4, [r3, r0] - ldrsb r5, [r2, r5] - ldrsb r0, [r7, r4] - ldrsb r6, [r7, r5] - cmp r6, r0 - bgt _020323D6 - cmp r6, r0 - bne _020323D2 - cmp r5, r4 - blt _020323D6 -_020323D2: - strb r4, [r2] - strb r5, [r3] -_020323D6: - add r1, r1, #1 - add r3, r3, #1 - cmp r1, #5 - blt _020323BA -_020323DE: - ldr r0, [sp, #4] - add r2, r2, #1 - add r0, r0, #1 - str r0, [sp, #4] - cmp r0, #2 - blt _020323AE - ldr r0, [sp, #0x20] - ldr r2, _020324F0 ; =0x020F68DE - lsl r1, r0, #2 - add r0, r0, r1 - add r1, r2, r0 - add r2, sp, #0x34 - mov r4, #0 - add r3, sp, #0x30 - ldrsb r0, [r3, r4] - add r2, #1 - str r0, [sp, #8] - add r0, r2, r0 - str r0, [sp, #0xc] - mov r0, #1 - ldrsb r7, [r3, r0] - add r0, r2, r7 - str r0, [sp, #0x2c] -_0203240C: - mov r0, #0 - ldrsb r5, [r1, r0] - ldrsb r3, [r2, r0] - add r0, r3, r5 - lsl r0, r0, #0x18 - asr r0, r0, #0x18 - cmp r5, #0 - ble _0203243E - ldr r6, [sp, #0xc] - mov r5, #0 - ldrsb r5, [r6, r5] - cmp r5, #0 - beq _0203243E - ldr r5, [sp, #8] - cmp r5, r4 - beq _0203243E - ldr r5, [sp, #0x2c] - mov r6, #0 - ldrsb r5, [r5, r6] - cmp r5, #0 - beq _0203243E - cmp r7, r4 - beq _0203243E - mov r5, #1 - str r5, [sp, #0x10] -_0203243E: - cmp r0, #0x3f - blt _02032446 - mov r0, #0x3f - b _0203244C -_02032446: - cmp r0, #0 - bge _0203244C - mov r0, #0 -_0203244C: - ldr r5, [sp, #0x20] - cmp r5, #6 - beq _02032456 - cmp r0, r3 - bgt _02032468 -_02032456: - ldr r3, [sp, #0x1c] - cmp r0, r3 - ble _02032468 - lsl r3, r0, #0x18 - lsr r3, r3, #0x18 - str r3, [sp, #0x1c] - lsl r3, r4, #0x18 - lsr r3, r3, #0x18 - str r3, [sp, #0x18] -_02032468: - strb r0, [r2] - ldr r3, [sp, #0x24] - add r4, r4, #1 - add r0, r3, r0 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - str r0, [sp, #0x24] - add r1, r1, #1 - add r2, r2, #1 - cmp r4, #5 - blt _0203240C - ldr r0, [sp, #0x14] - lsl r0, r0, #0xd - lsr r0, r0, #0x10 - str r0, [sp, #0x14] - ldr r0, [sp, #0x10] - cmp r0, #0 - beq _0203249E - ldr r0, [sp] - ldrb r1, [r0, #0xe] - cmp r1, #0xa - bhs _0203249A - mov r1, #0 - strb r1, [r0, #0xe] - b _0203249E -_0203249A: - sub r1, #0xa - strb r1, [r0, #0xe] -_0203249E: - ldr r0, [sp, #0x20] - cmp r0, #5 - beq _020324BE - ldr r0, [sp, #0x24] - cmp r0, #0x64 - bls _020324BE - add r2, sp, #0x34 - ldr r0, [sp, #0x18] - add r2, #1 - ldrsb r1, [r2, r0] - ldr r0, [sp, #0x24] - sub r0, #0x64 - str r0, [sp, #0x24] - sub r1, r1, r0 - ldr r0, [sp, #0x18] - strb r1, [r2, r0] -_020324BE: - ldr r0, [sp, #0x28] - add r0, r0, #1 - str r0, [sp, #0x28] - cmp r0, #5 - bge _020324CA - b _0203236E -_020324CA: - mov r4, #0 - add r3, sp, #0x34 - add r3, #1 - add r1, r4, #0 -_020324D2: - ldrsb r2, [r3, r1] - ldr r0, [sp] - add r3, r3, #1 - add r0, r0, r4 - add r4, r4, #1 - strb r2, [r0, #0xf] - cmp r4, #5 - blt _020324D2 - ldr r0, [sp] - mov r1, #3 - strb r1, [r0, #9] - mov r1, #0 - strh r1, [r0, #0xa] - add sp, #0x3c - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_020324F0: .word 0x020F68DE - thumb_func_end sub_02032354 - - thumb_func_start sub_020324F4 -sub_020324F4: ; 0x020324F4 - mov r3, #0 -_020324F6: - add r2, r0, r3 - ldrb r2, [r2, #3] - strb r2, [r1, r3] - add r3, r3, #1 - cmp r3, #5 - blt _020324F6 - bx lr - thumb_func_end sub_020324F4 - - thumb_func_start sub_02032504 -sub_02032504: ; 0x02032504 - cmp r1, #0 - bne _0203250C - mov r0, #0 - bx lr -_0203250C: - cmp r0, #0 - beq _0203251A - cmp r0, #1 - beq _0203254A - cmp r0, #2 - beq _0203256A - b _02032582 -_0203251A: - cmp r1, #0x3e - bls _02032522 - mov r0, #6 - bx lr -_02032522: - cmp r1, #0x32 - bls _0203252A - mov r0, #5 - bx lr -_0203252A: - cmp r1, #0x28 - bls _02032532 - mov r0, #4 - bx lr -_02032532: - cmp r1, #0x1e - bls _0203253A - mov r0, #3 - bx lr -_0203253A: - cmp r1, #0x14 - bls _02032542 - mov r0, #2 - bx lr -_02032542: - cmp r1, #0 - beq _02032582 - mov r0, #1 - bx lr -_0203254A: - cmp r1, #0x28 - bls _02032552 - mov r0, #4 - bx lr -_02032552: - cmp r1, #0x1e - bls _0203255A - mov r0, #3 - bx lr -_0203255A: - cmp r1, #0x14 - bls _02032562 - mov r0, #2 - bx lr -_02032562: - cmp r1, #0 - beq _02032582 - mov r0, #1 - bx lr -_0203256A: - cmp r1, #0x14 - bls _02032572 - mov r0, #3 - bx lr -_02032572: - cmp r1, #0xa - bls _0203257A - mov r0, #2 - bx lr -_0203257A: - cmp r1, #0 - beq _02032582 - mov r0, #1 - bx lr -_02032582: - mov r0, #0 - bx lr - .balign 4, 0 - thumb_func_end sub_02032504 - - thumb_func_start sub_02032588 -sub_02032588: ; 0x02032588 - push {r3, r4, r5, lr} - add r4, r0, #0 - ldrh r0, [r4] - ldrb r5, [r1] - mov r3, #0xf - bic r0, r3 - mov r3, #0xf - and r3, r5 - orr r0, r3 - strh r0, [r4] - ldrh r3, [r4] - ldr r0, _020325C8 ; =0xFFFF00FF - and r3, r0 - ldrb r0, [r1, #1] - lsl r0, r0, #0x18 - lsr r0, r0, #0x10 - orr r0, r3 - strh r0, [r4] - lsl r0, r2, #0x18 - ldrb r1, [r1, #1] - lsr r0, r0, #0x18 - bl sub_02032504 - lsl r0, r0, #0x1c - ldrh r2, [r4] - mov r1, #0xf0 - lsr r0, r0, #0x18 - bic r2, r1 - orr r0, r2 - strh r0, [r4] - pop {r3, r4, r5, pc} - nop -_020325C8: .word 0xFFFF00FF - thumb_func_end sub_02032588 - - thumb_func_start sub_020325CC -sub_020325CC: ; 0x020325CC - push {r4, lr} - add r4, r0, #0 - mov r1, #0 - mov r2, #0x20 - bl MIi_CpuFill8 - add r0, r4, #0 - add r0, #0x18 - bl sub_02031B5C - add r4, #8 - add r0, r4, #0 - mov r1, #8 - bl StringFillEOS - pop {r4, pc} - thumb_func_end sub_020325CC - - thumb_func_start sub_020325EC -sub_020325EC: ; 0x020325EC - ldr r3, _020325F4 ; =SavArray_get - mov r1, #0x27 - bx r3 - nop -_020325F4: .word SavArray_get - thumb_func_end sub_020325EC - - thumb_func_start sub_020325F8 -sub_020325F8: ; 0x020325F8 - mov r0, #0x4d - lsl r0, r0, #2 - bx lr - .balign 4, 0 - thumb_func_end sub_020325F8 - - thumb_func_start sub_02032600 -sub_02032600: ; 0x02032600 - push {r4, lr} - add r4, r0, #0 - mov r2, #0x4d - mov r0, #0 - add r1, r4, #0 - lsl r2, r2, #2 - bl MIi_CpuClearFast - add r0, r4, #0 - mov r1, #0 - bl sub_02032744 - add r0, r4, #0 - mov r1, #1 - bl sub_02032744 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02032600 - - thumb_func_start sub_02032624 -sub_02032624: ; 0x02032624 - push {r3, r4, r5, lr} - mov r1, #0x13 - add r5, r0, #0 - lsl r1, r1, #4 - ldr r4, [r5, r1] - bl sub_02032600 - mov r0, #0x13 - lsl r0, r0, #4 - str r4, [r5, r0] - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_02032624 - - thumb_func_start sub_0203263C -sub_0203263C: ; 0x0203263C - mov r1, #0x49 - lsl r1, r1, #2 - ldrh r0, [r0, r1] - bx lr - thumb_func_end sub_0203263C - - thumb_func_start sub_02032644 -sub_02032644: ; 0x02032644 - mov r1, #0x49 - lsl r1, r1, #2 - ldrh r2, [r0, r1] - add r2, r2, #1 - strh r2, [r0, r1] - bx lr - thumb_func_end sub_02032644 - - thumb_func_start sub_02032650 -sub_02032650: ; 0x02032650 - mov r3, #0x4a - lsl r3, r3, #2 - str r1, [r0, r3] - add r1, r3, #4 - ldr r1, [r0, r1] - add r2, r1, r2 - add r1, r3, #4 - str r2, [r0, r1] - ldr r1, [r0, r1] - ldr r2, _02032670 ; =0x0098967F - cmp r1, r2 - blo _0203266C - add r1, r3, #4 - str r2, [r0, r1] -_0203266C: - bx lr - nop -_02032670: .word 0x0098967F - thumb_func_end sub_02032650 - - thumb_func_start sub_02032674 -sub_02032674: ; 0x02032674 - push {r3, r4} - mov r3, #0x4a - lsl r3, r3, #2 - ldr r4, [r0, r3] - str r4, [r1] - add r1, r3, #4 - ldr r0, [r0, r1] - str r0, [r2] - pop {r3, r4} - bx lr - thumb_func_end sub_02032674 - - thumb_func_start sub_02032688 -sub_02032688: ; 0x02032688 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - cmp r5, #0 - bne _02032698 - bl GF_AssertFail -_02032698: - ldrh r0, [r5] - strh r0, [r4] - ldrh r0, [r5, #2] - strh r0, [r6] - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_02032688 - - thumb_func_start sub_020326A4 -sub_020326A4: ; 0x020326A4 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - cmp r5, #0 - bne _020326B4 - bl GF_AssertFail -_020326B4: - strh r4, [r5] - strh r6, [r5, #2] - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_020326A4 - - thumb_func_start sub_020326BC -sub_020326BC: ; 0x020326BC - ldr r3, _020326C8 ; =sub_020D48B4 - add r2, r0, #0 - add r0, r1, #0 - add r1, r2, #4 - mov r2, #0x88 - bx r3 - .balign 4, 0 -_020326C8: .word sub_020D48B4 - thumb_func_end sub_020326BC - - thumb_func_start sub_020326CC -sub_020326CC: ; 0x020326CC - ldr r3, _020326D8 ; =MIi_CpuClearFast - add r1, r0, #0 - mov r0, #0 - add r1, r1, #4 - mov r2, #0x88 - bx r3 - .balign 4, 0 -_020326D8: .word MIi_CpuClearFast - thumb_func_end sub_020326CC - - thumb_func_start sub_020326DC -sub_020326DC: ; 0x020326DC - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - bl sub_020326FC - cmp r0, #0 - beq _020326F8 - add r0, r5, #4 - add r1, r4, #0 - mov r2, #0x88 - bl sub_020D48B4 - mov r0, #1 - pop {r3, r4, r5, pc} -_020326F8: - mov r0, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_020326DC - - thumb_func_start sub_020326FC -sub_020326FC: ; 0x020326FC - mov r2, #0 -_020326FE: - add r1, r0, r2 - ldrb r1, [r1, #4] - cmp r1, #0 - bne _0203270C - add r2, r2, #1 - cmp r2, #0x88 - blt _020326FE -_0203270C: - cmp r2, #0x88 - bne _02032714 - mov r0, #0 - bx lr -_02032714: - mov r0, #1 - bx lr - thumb_func_end sub_020326FC - - thumb_func_start sub_02032718 -sub_02032718: ; 0x02032718 - add r0, #0xf8 - ldrh r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_02032718 - - thumb_func_start sub_02032720 -sub_02032720: ; 0x02032720 - add r0, #0xf8 - strh r1, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_02032720 - - thumb_func_start sub_02032728 -sub_02032728: ; 0x02032728 - add r0, #0xfc - bx lr - thumb_func_end sub_02032728 - - thumb_func_start sub_0203272C -sub_0203272C: ; 0x0203272C - cmp r1, #0x20 - blt _02032734 - mov r0, #0 - bx lr -_02032734: - mov r2, #0x13 - lsl r2, r2, #4 - ldr r0, [r0, r2] - add r2, r0, #0 - lsr r2, r1 - mov r0, #1 - and r0, r2 - bx lr - thumb_func_end sub_0203272C - - thumb_func_start sub_02032744 -sub_02032744: ; 0x02032744 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #0x20 - blt _02032752 - bl GF_AssertFail -_02032752: - mov r0, #0x13 - lsl r0, r0, #4 - mov r1, #1 - ldr r2, [r5, r0] - lsl r1, r4 - orr r1, r2 - str r1, [r5, r0] - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_02032744 - - thumb_func_start sub_02032764 -sub_02032764: ; 0x02032764 - add r0, #0xfa - ldrh r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_02032764 - - thumb_func_start sub_0203276C -sub_0203276C: ; 0x0203276C - mov r1, #1 - add r0, #0xfa - strh r1, [r0] - bx lr - thumb_func_end sub_0203276C - - thumb_func_start sub_02032774 -sub_02032774: ; 0x02032774 - mov r0, #0xf - lsl r0, r0, #8 - bx lr - .balign 4, 0 - thumb_func_end sub_02032774 - - thumb_func_start sub_0203277C -sub_0203277C: ; 0x0203277C - ldr r3, _02032784 ; =SavArray_get - mov r1, #0x28 - bx r3 - nop -_02032784: .word SavArray_get - thumb_func_end sub_0203277C - - thumb_func_start sub_02032788 -sub_02032788: ; 0x02032788 - push {r4, r5, r6, lr} - mov r2, #0xf - mov r1, #0 - lsl r2, r2, #8 - add r5, r0, #0 - bl MIi_CpuFill8 - mov r6, #6 - mov r4, #0 - lsl r6, r6, #6 -_0203279C: - add r0, r5, #0 - bl sub_020327DC - add r4, r4, #1 - add r5, r5, r6 - cmp r4, #0xa - blt _0203279C - pop {r4, r5, r6, pc} - thumb_func_end sub_02032788 - - thumb_func_start sub_020327AC -sub_020327AC: ; 0x020327AC - push {r4, lr} - add r4, r0, #0 - mov r1, #0 - mov r2, #0x38 - bl MIi_CpuFill8 - add r4, #0x24 - add r0, r4, #0 - mov r1, #0xa - bl StringFillEOS - pop {r4, pc} - thumb_func_end sub_020327AC - - thumb_func_start sub_020327C4 -sub_020327C4: ; 0x020327C4 - push {r4, lr} - add r4, r0, #0 - mov r1, #0 - mov r2, #0x30 - bl MIi_CpuFill8 - add r4, #8 - add r0, r4, #0 - mov r1, #8 - bl StringFillEOS - pop {r4, pc} - thumb_func_end sub_020327C4 - - thumb_func_start sub_020327DC -sub_020327DC: ; 0x020327DC - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_020327C4 - mov r4, #0 - add r5, #0x30 -_020327E8: - add r0, r5, #0 - bl sub_020327AC - add r4, r4, #1 - add r5, #0x38 - cmp r4, #6 - blt _020327E8 - pop {r3, r4, r5, pc} - thumb_func_end sub_020327DC - - thumb_func_start sub_020327F8 -sub_020327F8: ; 0x020327F8 - ldrh r0, [r0, #0x30] - lsl r0, r0, #0x15 - lsr r0, r0, #0x15 - beq _02032804 - mov r0, #1 - bx lr -_02032804: - mov r0, #0 - bx lr - thumb_func_end sub_020327F8 - - thumb_func_start sub_02032808 -sub_02032808: ; 0x02032808 - push {r3, lr} - ldr r3, [r0] - ldr r2, [r1] - cmp r3, r2 - bne _0203282A - ldrb r3, [r0, #6] - ldrb r2, [r1, #6] - cmp r3, r2 - bne _0203282A - ldrb r3, [r0, #5] - ldrb r2, [r1, #5] - cmp r3, r2 - bne _0203282A - ldrb r3, [r0, #7] - ldrb r2, [r1, #7] - cmp r3, r2 - beq _0203282E -_0203282A: - mov r0, #0 - pop {r3, pc} -_0203282E: - add r0, #8 - add r1, #8 - bl StringNotEqual - cmp r0, #0 - bne _0203283E - mov r0, #1 - pop {r3, pc} -_0203283E: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02032808 - - thumb_func_start sub_02032844 -sub_02032844: ; 0x02032844 - ldr r1, _02032850 ; =0x021D4124 - ldr r2, [r1, #4] - ldr r1, _02032854 ; =0x00001310 - str r0, [r2, r1] - bx lr - nop -_02032850: .word 0x021D4124 -_02032854: .word 0x00001310 - thumb_func_end sub_02032844 - - thumb_func_start sub_02032858 -sub_02032858: ; 0x02032858 - ldr r1, _0203286C ; =0x021D4124 - ldr r3, [r1, #4] - ldr r1, _02032870 ; =0x00001310 - ldr r2, [r3, r1] - sub r2, #9 - cmp r2, #1 - bls _0203286A - add r1, #0x20 - str r0, [r3, r1] -_0203286A: - bx lr - .balign 4, 0 -_0203286C: .word 0x021D4124 -_02032870: .word 0x00001310 - thumb_func_end sub_02032858 - - thumb_func_start sub_02032874 -sub_02032874: ; 0x02032874 - push {r3, lr} - mov r0, #3 - bl sub_02032844 - ldr r1, _0203289C ; =0x021D4124 - ldr r0, _020328A0 ; =sub_020328A4 - ldr r1, [r1, #4] - bl sub_020DF4F8 - cmp r0, #2 - beq _02032898 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - mov r0, #0 - pop {r3, pc} -_02032898: - mov r0, #1 - pop {r3, pc} - .balign 4, 0 -_0203289C: .word 0x021D4124 -_020328A0: .word sub_020328A4 - thumb_func_end sub_02032874 - - thumb_func_start sub_020328A4 -sub_020328A4: ; 0x020328A4 - push {r3, lr} - ldrh r0, [r0, #2] - cmp r0, #0 - beq _020328B8 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - pop {r3, pc} -_020328B8: - bl sub_020328C8 - cmp r0, #0 - bne _020328C6 - mov r0, #9 - bl sub_02032844 -_020328C6: - pop {r3, pc} - thumb_func_end sub_020328A4 - - thumb_func_start sub_020328C8 -sub_020328C8: ; 0x020328C8 - push {r4, lr} - ldr r0, _02032924 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02032928 ; =0x00001310 - ldr r0, [r1, r0] - sub r0, r0, #4 - cmp r0, #2 - bhi _020328DC - mov r0, #1 - pop {r4, pc} -_020328DC: - bl sub_020DEB24 - add r4, r0, #0 - mov r0, #0x66 - lsl r0, r0, #2 - add r0, r4, r0 - mov r1, #4 - bl sub_020D285C - mov r0, #0x66 - mov r1, #0 - lsl r0, r0, #2 - str r1, [r4, r0] - add r0, r4, r0 - mov r1, #4 - bl DC_FlushRange - ldr r0, _0203292C ; =sub_02032934 - bl sub_020DF680 - cmp r0, #2 - beq _02032910 - bl sub_02032858 - mov r0, #0 - pop {r4, pc} -_02032910: - ldr r2, _02032924 ; =0x021D4124 - ldr r1, _02032930 ; =0x0000132C - ldr r0, [r2, #4] - mov r3, #0 - strh r3, [r0, r1] - ldr r2, [r2, #4] - mov r0, #1 - add r1, r1, #2 - strh r0, [r2, r1] - pop {r4, pc} - .balign 4, 0 -_02032924: .word 0x021D4124 -_02032928: .word 0x00001310 -_0203292C: .word sub_02032934 -_02032930: .word 0x0000132C - thumb_func_end sub_020328C8 - - thumb_func_start sub_02032934 -sub_02032934: ; 0x02032934 - push {r4, r5, r6, lr} - add r5, r0, #0 - ldrh r0, [r5, #0x10] - mov r1, #1 - lsl r1, r0 - lsl r0, r1, #0x10 - lsr r4, r0, #0x10 - ldrh r0, [r5, #2] - cmp r0, #0 - beq _02032954 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - pop {r4, r5, r6, pc} -_02032954: - ldrh r0, [r5, #8] - cmp r0, #7 - bgt _0203296C - bge _02032986 - cmp r0, #2 - bgt _02032A24 - cmp r0, #0 - blt _02032A24 - beq _02032A16 - cmp r0, #2 - beq _02032978 - pop {r4, r5, r6, pc} -_0203296C: - cmp r0, #9 - bgt _02032974 - beq _020329F8 - pop {r4, r5, r6, pc} -_02032974: - cmp r0, #0x1a - pop {r4, r5, r6, pc} -_02032978: - ldr r0, _02032A28 ; =0x021D4124 - ldr r2, [r0, #4] - ldr r0, _02032A2C ; =0x00001345 - ldrb r1, [r2, r0] - add r1, r1, #1 - strb r1, [r2, r0] - pop {r4, r5, r6, pc} -_02032986: - ldr r0, _02032A28 ; =0x021D4124 - ldr r2, [r0, #4] - ldr r0, _02032A30 ; =0x00001343 - ldrb r1, [r2, r0] - cmp r1, #1 - beq _020329C4 - sub r0, r0, #1 - ldrb r0, [r2, r0] - cmp r0, #1 - beq _020329C4 - bl sub_02033264 - ldr r1, _02032A28 ; =0x021D4124 - ldr r2, [r1, #4] - ldr r1, _02032A34 ; =0x00001334 - ldrb r1, [r2, r1] - cmp r0, r1 - bge _020329C4 - bl sub_0203993C - ldrb r1, [r5, #0x14] - cmp r1, r0 - bne _020329C4 - add r1, r5, #0 - ldr r0, _02032A38 ; =0x0210F8FC - add r1, #0x15 - mov r2, #3 - bl memcmp - cmp r0, #0 - beq _020329DC -_020329C4: - ldrh r1, [r5, #0x10] - mov r0, #0 - bl sub_020DFA18 - cmp r0, #2 - beq _02032A24 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - pop {r4, r5, r6, pc} -_020329DC: - ldr r1, _02032A28 ; =0x021D4124 - ldr r0, _02032A3C ; =0x0000132E - ldr r3, [r1, #4] - ldrh r2, [r3, r0] - orr r2, r4 - strh r2, [r3, r0] - ldr r1, [r1, #4] - sub r0, r0, #6 - ldr r1, [r1, r0] - cmp r1, #0 - beq _02032A24 - ldrh r0, [r5, #0x10] - blx r1 - pop {r4, r5, r6, pc} -_020329F8: - ldr r2, _02032A28 ; =0x021D4124 - ldr r1, _02032A3C ; =0x0000132E - ldr r0, [r2, #4] - mvn r3, r4 - ldrh r6, [r0, r1] - and r3, r6 - strh r3, [r0, r1] - ldr r0, [r2, #4] - sub r1, #0xa - ldr r1, [r0, r1] - cmp r1, #0 - beq _02032A24 - ldrh r0, [r5, #0x10] - blx r1 - pop {r4, r5, r6, pc} -_02032A16: - bl sub_02032A40 - cmp r0, #0 - bne _02032A24 - mov r0, #9 - bl sub_02032844 -_02032A24: - pop {r4, r5, r6, pc} - nop -_02032A28: .word 0x021D4124 -_02032A2C: .word 0x00001345 -_02032A30: .word 0x00001343 -_02032A34: .word 0x00001334 -_02032A38: .word 0x0210F8FC -_02032A3C: .word 0x0000132E - thumb_func_end sub_02032934 - - thumb_func_start sub_02032A40 -sub_02032A40: ; 0x02032A40 - push {r4, lr} - sub sp, #8 - ldr r0, _02032A9C ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02032AA0 ; =0x00001310 - ldr r0, [r1, r0] - sub r0, r0, #4 - cmp r0, #2 - bhi _02032A58 - add sp, #8 - mov r0, #1 - pop {r4, pc} -_02032A58: - mov r0, #4 - bl sub_02032844 - ldr r0, _02032A9C ; =0x021D4124 - ldr r2, _02032AA4 ; =0x00001304 - ldr r4, [r0, #4] - ldr r3, _02032AA8 ; =0x00001020 - ldr r0, [r4, r2] - add r2, r2, #4 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - str r0, [sp] - mov r0, #1 - str r0, [sp, #4] - ldr r2, [r4, r2] - add r1, r4, r3 - lsl r2, r2, #0x10 - sub r3, #0xe0 - ldr r0, _02032AAC ; =sub_02032AB0 - lsr r2, r2, #0x10 - add r3, r4, r3 - bl sub_020DFD14 - cmp r0, #2 - beq _02032A94 - bl sub_02032858 - add sp, #8 - mov r0, #0 - pop {r4, pc} -_02032A94: - mov r0, #1 - add sp, #8 - pop {r4, pc} - nop -_02032A9C: .word 0x021D4124 -_02032AA0: .word 0x00001310 -_02032AA4: .word 0x00001304 -_02032AA8: .word 0x00001020 -_02032AAC: .word sub_02032AB0 - thumb_func_end sub_02032A40 - - thumb_func_start sub_02032AB0 -sub_02032AB0: ; 0x02032AB0 - push {r3, lr} - ldrh r1, [r0, #2] - cmp r1, #0 - beq _02032AC6 - add r0, r1, #0 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - pop {r3, pc} -_02032AC6: - ldrh r0, [r0, #4] - sub r0, #0xa - cmp r0, #3 - bhi _02032B00 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_02032ADA: ; jump table - .short _02032AE2 - _02032ADA - 2 ; case 0 - .short _02032B00 - _02032ADA - 2 ; case 1 - .short _02032B00 - _02032ADA - 2 ; case 2 - .short _02032B00 - _02032ADA - 2 ; case 3 -_02032AE2: - ldr r0, _02032B04 ; =0x021D4124 - ldr r2, [r0, #4] - ldr r0, _02032B08 ; =0x00001314 - ldr r1, [r2, r0] - cmp r1, #2 - bne _02032AFA - sub r0, r0, #4 - ldr r0, [r2, r0] - cmp r0, #4 - beq _02032AFA - cmp r0, #6 - beq _02032B00 -_02032AFA: - mov r0, #4 - bl sub_02032844 -_02032B00: - pop {r3, pc} - nop -_02032B04: .word 0x021D4124 -_02032B08: .word 0x00001314 - thumb_func_end sub_02032AB0 - - thumb_func_start sub_02032B0C -sub_02032B0C: ; 0x02032B0C - push {r3, lr} - mov r0, #3 - bl sub_02032844 - ldr r0, _02032B2C ; =sub_02032B30 - bl sub_020DFEAC - cmp r0, #2 - beq _02032B26 - bl sub_02032858 - mov r0, #0 - pop {r3, pc} -_02032B26: - mov r0, #1 - pop {r3, pc} - nop -_02032B2C: .word sub_02032B30 - thumb_func_end sub_02032B0C - - thumb_func_start sub_02032B30 -sub_02032B30: ; 0x02032B30 - push {r3, lr} - ldrh r0, [r0, #2] - cmp r0, #0 - beq _02032B42 - bl sub_02032858 - bl sub_02033830 - pop {r3, pc} -_02032B42: - bl sub_02032B50 - cmp r0, #0 - bne _02032B4E - bl sub_02033830 -_02032B4E: - pop {r3, pc} - thumb_func_end sub_02032B30 - - thumb_func_start sub_02032B50 -sub_02032B50: ; 0x02032B50 - push {r3, lr} - ldr r0, _02032B68 ; =sub_02032B6C - bl sub_020DF690 - cmp r0, #2 - beq _02032B64 - bl sub_02032858 - mov r0, #0 - pop {r3, pc} -_02032B64: - mov r0, #1 - pop {r3, pc} - .balign 4, 0 -_02032B68: .word sub_02032B6C - thumb_func_end sub_02032B50 - - thumb_func_start sub_02032B6C -sub_02032B6C: ; 0x02032B6C - push {r3, lr} - ldrh r0, [r0, #2] - cmp r0, #0 - beq _02032B7A - bl sub_02032858 - pop {r3, pc} -_02032B7A: - mov r0, #1 - bl sub_02032844 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02032B6C - - thumb_func_start sub_02032B84 -sub_02032B84: ; 0x02032B84 - push {r3, r4, r5, r6, r7, lr} - add r7, r2, #0 - ldr r2, _02032C10 ; =0x021D4124 - add r5, r0, #0 - add r4, r1, #0 - mov r3, #2 - ldr r0, [r2, #4] - ldr r1, _02032C14 ; =0x00001308 - lsl r3, r3, #8 - str r3, [r0, r1] - ldr r2, [r2, #4] - mov r0, #0x40 - sub r1, r1, #4 - str r0, [r2, r1] - mov r0, #2 - bl sub_02032844 - ldr r2, _02032C10 ; =0x021D4124 - ldr r1, _02032C18 ; =0x00001256 - ldr r3, [r2, #4] - mov r0, #1 - strh r0, [r3, r1] - add r0, r1, #0 - ldrh r6, [r4, #4] - ldr r3, [r2, #4] - add r0, #0x96 - strh r6, [r3, r0] - add r0, r1, #0 - ldrh r6, [r4, #2] - ldr r3, [r2, #4] - add r0, #0x94 - strh r6, [r3, r0] - add r0, r1, #0 - ldrh r4, [r4] - ldr r3, [r2, #4] - add r0, #0x92 - strh r4, [r3, r0] - add r0, r1, #0 - ldr r3, [r2, #4] - add r0, #0xbe - str r5, [r3, r0] - add r3, r1, #0 - ldr r4, [r2, #4] - mov r0, #0 - add r3, #0xaa - str r0, [r4, r3] - add r3, r1, #0 - ldr r4, [r2, #4] - add r3, #0xb6 - strh r7, [r4, r3] - add r3, r1, #0 - ldr r4, [r2, #4] - add r3, #0x8e - strh r0, [r4, r3] - ldr r2, [r2, #4] - add r1, #0xb8 - mov r0, #1 - strh r0, [r2, r1] - bl sub_02032C84 - cmp r0, #0 - bne _02032C0A - mov r0, #9 - bl sub_02032844 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02032C0A: - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} - nop -_02032C10: .word 0x021D4124 -_02032C14: .word 0x00001308 -_02032C18: .word 0x00001256 - thumb_func_end sub_02032B84 - - thumb_func_start sub_02032C1C -sub_02032C1C: ; 0x02032C1C - push {r4, r5, r6, lr} - add r5, r0, #0 - mov r0, #2 - add r4, r1, #0 - add r6, r2, #0 - bl sub_02032844 - ldr r1, _02032C80 ; =0x021D4124 - mov r0, #0x13 - ldr r2, [r1, #4] - lsl r0, r0, #8 - str r5, [r2, r0] - add r2, r0, #0 - ldr r3, [r1, #4] - add r2, #0xc - strh r6, [r3, r2] - add r3, r0, #0 - ldr r5, [r1, #4] - mov r2, #0 - sub r3, #0x1c - strh r2, [r5, r3] - add r3, r0, #0 - ldr r5, [r1, #4] - add r3, #0xe - strh r2, [r5, r3] - add r2, r0, #0 - ldrh r5, [r4, #4] - ldr r3, [r1, #4] - sub r2, #0x14 - strh r5, [r3, r2] - add r2, r0, #0 - ldrh r5, [r4, #2] - ldr r3, [r1, #4] - sub r2, #0x16 - strh r5, [r3, r2] - ldrh r2, [r4] - ldr r1, [r1, #4] - sub r0, #0x18 - strh r2, [r1, r0] - bl sub_02032C84 - cmp r0, #0 - bne _02032C7C - mov r0, #9 - bl sub_02032844 - mov r0, #0 - pop {r4, r5, r6, pc} -_02032C7C: - mov r0, #1 - pop {r4, r5, r6, pc} - .balign 4, 0 -_02032C80: .word 0x021D4124 - thumb_func_end sub_02032C1C - - thumb_func_start sub_02032C84 -sub_02032C84: ; 0x02032C84 - push {r3, r4, r5, r6, r7, lr} - bl sub_020DEF24 - add r5, r0, #0 - mov r0, #2 - lsl r0, r0, #0xe - cmp r5, r0 - bne _02032CA4 - mov r0, #3 - bl sub_02032858 - mov r0, #1 - bl sub_02039AD8 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02032CA4: - cmp r5, #0 - bne _02032CB8 - mov r0, #0x16 - bl sub_02032858 - mov r0, #1 - bl sub_02039AD8 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02032CB8: - ldr r1, _02032D38 ; =0x021D4124 - ldr r0, _02032D3C ; =0x0000130C - ldr r3, [r1, #4] - ldrh r2, [r3, r0] - cmp r2, #0 - bne _02032CF8 - add r7, r0, #0 - mov r3, #1 - add r2, r3, #0 - sub r7, #0x28 - sub r0, #0x28 -_02032CCE: - ldr r4, [r1, #4] - ldr r6, _02032D40 ; =0x000012E4 - ldrh r6, [r4, r6] - add r6, r6, #1 - strh r6, [r4, r7] - ldr r4, [r1, #4] - ldrh r6, [r4, r0] - cmp r6, #0x10 - bls _02032CE4 - ldr r6, _02032D40 ; =0x000012E4 - strh r3, [r4, r6] -_02032CE4: - ldr r6, [r1, #4] - ldr r4, _02032D40 ; =0x000012E4 - ldrh r4, [r6, r4] - add r6, r2, #0 - sub r4, r4, #1 - lsl r6, r4 - add r4, r5, #0 - tst r4, r6 - bne _02032CFC - b _02032CCE -_02032CF8: - sub r0, #0x28 - strh r2, [r3, r0] -_02032CFC: - bl sub_020DF064 - mov r1, #3 - bl _s32_div_f - ldr r2, _02032D38 ; =0x021D4124 - ldr r1, _02032D44 ; =0x000012E6 - ldr r3, [r2, #4] - strh r0, [r3, r1] - add r0, r1, #0 - ldr r3, [r2, #4] - sub r0, #0xc6 - add r4, r3, r0 - sub r0, r1, #6 - str r4, [r3, r0] - ldr r2, [r2, #4] - sub r1, r1, #6 - ldr r0, _02032D48 ; =sub_02032D4C - add r1, r2, r1 - bl sub_020DF6D0 - cmp r0, #2 - beq _02032D32 - bl sub_02032858 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02032D32: - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} - nop -_02032D38: .word 0x021D4124 -_02032D3C: .word 0x0000130C -_02032D40: .word 0x000012E4 -_02032D44: .word 0x000012E6 -_02032D48: .word sub_02032D4C - thumb_func_end sub_02032C84 - - thumb_func_start sub_02032D4C -sub_02032D4C: ; 0x02032D4C - push {r4, lr} - add r4, r0, #0 - ldrh r0, [r4, #2] - cmp r0, #0 - beq _02032D62 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - pop {r4, pc} -_02032D62: - ldr r0, _02032E14 ; =0x021D4124 - ldr r2, [r0, #4] - ldr r0, _02032E18 ; =0x00001310 - ldr r1, [r2, r0] - cmp r1, #2 - beq _02032D84 - mov r1, #0 - sub r0, r0, #2 - strh r1, [r2, r0] - bl sub_02032E48 - cmp r0, #0 - bne _02032E10 - mov r0, #9 - bl sub_02032844 - pop {r4, pc} -_02032D84: - ldrh r1, [r4, #8] - cmp r1, #3 - beq _02032E10 - cmp r1, #4 - beq _02032E02 - cmp r1, #5 - bne _02032E02 - sub r0, #0xf0 - add r0, r2, r0 - mov r1, #0xc0 - bl sub_020D285C - ldr r0, _02032E14 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02032E1C ; =0x00001320 - ldr r2, [r1, r0] - cmp r2, #0 - beq _02032DB8 - ldrh r0, [r4, #0x36] - cmp r0, #8 - blo _02032DB8 - add r1, r4, #0 - add r1, #0x48 - ldrb r1, [r1, #4] - ldr r0, [r4, #0x3c] - blx r2 -_02032DB8: - ldrh r0, [r4, #0x36] - cmp r0, #8 - blo _02032E02 - ldr r0, _02032E14 ; =0x021D4124 - ldr r2, [r4, #0x3c] - ldr r0, [r0, #4] - ldr r1, [r0, #8] - cmp r2, r1 - bne _02032E02 - add r4, #0x43 - ldrb r2, [r4] - mov r1, #3 - and r1, r2 - cmp r1, #1 - bne _02032E02 - mov r1, #0x13 - lsl r1, r1, #8 - ldr r2, [r0, r1] - cmp r2, #0 - beq _02032DE6 - sub r1, #0xe0 - add r0, r0, r1 - blx r2 -_02032DE6: - ldr r0, _02032E14 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02032E20 ; =0x0000130E - ldrh r0, [r1, r0] - cmp r0, #0 - beq _02032E02 - bl sub_02032E48 - cmp r0, #0 - bne _02032E10 - mov r0, #9 - bl sub_02032844 - pop {r4, pc} -_02032E02: - bl sub_02032C84 - cmp r0, #0 - bne _02032E10 - mov r0, #9 - bl sub_02032844 -_02032E10: - pop {r4, pc} - nop -_02032E14: .word 0x021D4124 -_02032E18: .word 0x00001310 -_02032E1C: .word 0x00001320 -_02032E20: .word 0x0000130E - thumb_func_end sub_02032D4C - - thumb_func_start sub_02032E24 -sub_02032E24: ; 0x02032E24 - push {r3, lr} - ldr r0, _02032E40 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02032E44 ; =0x00001310 - ldr r0, [r1, r0] - cmp r0, #2 - beq _02032E36 - mov r0, #0 - pop {r3, pc} -_02032E36: - mov r0, #3 - bl sub_02032844 - mov r0, #1 - pop {r3, pc} - .balign 4, 0 -_02032E40: .word 0x021D4124 -_02032E44: .word 0x00001310 - thumb_func_end sub_02032E24 - - thumb_func_start sub_02032E48 -sub_02032E48: ; 0x02032E48 - push {r3, lr} - ldr r0, _02032E60 ; =sub_02032E64 - bl sub_020DF90C - cmp r0, #2 - beq _02032E5C - bl sub_02032858 - mov r0, #0 - pop {r3, pc} -_02032E5C: - mov r0, #1 - pop {r3, pc} - .balign 4, 0 -_02032E60: .word sub_02032E64 - thumb_func_end sub_02032E48 - - thumb_func_start sub_02032E64 -sub_02032E64: ; 0x02032E64 - push {r3, lr} - ldrh r0, [r0, #2] - cmp r0, #0 - beq _02032E72 - bl sub_02032858 - pop {r3, pc} -_02032E72: - mov r0, #1 - bl sub_02032844 - ldr r0, _02032E94 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02032E98 ; =0x0000130E - ldrh r0, [r1, r0] - cmp r0, #0 - beq _02032E92 - bl sub_02032E9C - cmp r0, #0 - bne _02032E92 - mov r0, #9 - bl sub_02032844 -_02032E92: - pop {r3, pc} - .balign 4, 0 -_02032E94: .word 0x021D4124 -_02032E98: .word 0x0000130E - thumb_func_end sub_02032E64 - - thumb_func_start sub_02032E9C -sub_02032E9C: ; 0x02032E9C - push {lr} - sub sp, #0x24 - ldr r0, _02032EF8 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02032EFC ; =0x00001310 - ldr r0, [r1, r0] - sub r0, r0, #4 - cmp r0, #2 - bhi _02032EB4 - add sp, #0x24 - mov r0, #1 - pop {pc} -_02032EB4: - mov r0, #3 - bl sub_02032844 - add r1, sp, #4 - ldr r0, _02032F00 ; =0x0210F8FC - add r1, #1 - mov r2, #3 - bl MIi_CpuCopy8 - bl sub_0203993C - add r1, sp, #4 - strb r0, [r1] - mov r0, #0 - str r0, [sp] - ldr r1, _02032EF8 ; =0x021D4124 - ldr r0, _02032F04 ; =sub_02032F0C - ldr r2, [r1, #4] - ldr r1, _02032F08 ; =0x00001220 - mov r3, #1 - add r1, r2, r1 - add r2, sp, #4 - bl sub_020DF94C - cmp r0, #2 - beq _02032EF2 - bl sub_02032858 - add sp, #0x24 - mov r0, #0 - pop {pc} -_02032EF2: - mov r0, #1 - add sp, #0x24 - pop {pc} - .balign 4, 0 -_02032EF8: .word 0x021D4124 -_02032EFC: .word 0x00001310 -_02032F00: .word 0x0210F8FC -_02032F04: .word sub_02032F0C -_02032F08: .word 0x00001220 - thumb_func_end sub_02032E9C - - thumb_func_start sub_02032F0C -sub_02032F0C: ; 0x02032F0C - push {r4, lr} - add r4, r0, #0 - ldrh r0, [r4, #2] - cmp r0, #0 - beq _02032F58 - bl sub_02032858 - ldrh r0, [r4, #2] - cmp r0, #0xc - bne _02032F28 - mov r0, #9 - bl sub_02032844 - pop {r4, pc} -_02032F28: - cmp r0, #0xb - bne _02032F34 - mov r0, #9 - bl sub_02032844 - pop {r4, pc} -_02032F34: - cmp r0, #1 - bne _02032F50 - bl sub_02039918 - cmp r0, #0 - beq _02032F48 - mov r0, #9 - bl sub_02032844 - pop {r4, pc} -_02032F48: - mov r0, #8 - bl sub_02032844 - pop {r4, pc} -_02032F50: - mov r0, #9 - bl sub_02032844 - pop {r4, pc} -_02032F58: - ldrh r0, [r4, #8] - cmp r0, #8 - beq _02032FBE - cmp r0, #7 - bne _02032F9E - ldr r0, _02032FC0 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02032FC4 ; =0x00001335 - ldrb r0, [r1, r0] - cmp r0, #0 - beq _02032F7C - mov r0, #0x14 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - pop {r4, pc} -_02032F7C: - mov r0, #4 - bl sub_02032844 - bl sub_02032FCC - cmp r0, #0 - bne _02032F92 - mov r0, #3 - bl sub_02032844 - pop {r4, pc} -_02032F92: - ldr r0, _02032FC0 ; =0x021D4124 - ldrh r2, [r4, #0xa] - ldr r1, [r0, #4] - ldr r0, _02032FC8 ; =0x0000132C - strh r2, [r1, r0] - pop {r4, pc} -_02032F9E: - cmp r0, #6 - beq _02032FBE - cmp r0, #9 - bne _02032FB4 - mov r0, #0x14 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - pop {r4, pc} -_02032FB4: - cmp r0, #0x1a - beq _02032FBE - mov r0, #9 - bl sub_02032844 -_02032FBE: - pop {r4, pc} - .balign 4, 0 -_02032FC0: .word 0x021D4124 -_02032FC4: .word 0x00001335 -_02032FC8: .word 0x0000132C - thumb_func_end sub_02032F0C - - thumb_func_start sub_02032FCC -sub_02032FCC: ; 0x02032FCC - push {r4, lr} - sub sp, #8 - ldr r0, _0203300C ; =0x021D4124 - ldr r2, _02033010 ; =0x00001304 - ldr r4, [r0, #4] - ldr r3, _02033014 ; =0x00001020 - ldr r0, [r4, r2] - add r1, r4, r3 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - str r0, [sp] - mov r0, #1 - str r0, [sp, #4] - add r2, r2, #4 - ldr r2, [r4, r2] - sub r3, #0xe0 - lsl r2, r2, #0x10 - ldr r0, _02033018 ; =sub_0203301C - lsr r2, r2, #0x10 - add r3, r4, r3 - bl sub_020DFD14 - cmp r0, #2 - beq _02033006 - bl sub_02032858 - add sp, #8 - mov r0, #0 - pop {r4, pc} -_02033006: - mov r0, #1 - add sp, #8 - pop {r4, pc} - .balign 4, 0 -_0203300C: .word 0x021D4124 -_02033010: .word 0x00001304 -_02033014: .word 0x00001020 -_02033018: .word sub_0203301C - thumb_func_end sub_02032FCC - - thumb_func_start sub_0203301C -sub_0203301C: ; 0x0203301C - push {r3, lr} - ldrh r1, [r0, #2] - cmp r1, #0 - beq _0203303E - cmp r1, #0xf - beq _02033074 - cmp r1, #9 - beq _02033074 - cmp r1, #0xd - beq _02033074 - add r0, r1, #0 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - pop {r3, pc} -_0203303E: - ldrh r0, [r0, #4] - sub r0, #0xa - cmp r0, #3 - bhi _02033074 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_02033052: ; jump table - .short _0203305A - _02033052 - 2 ; case 0 - .short _02033074 - _02033052 - 2 ; case 1 - .short _02033074 - _02033052 - 2 ; case 2 - .short _02033074 - _02033052 - 2 ; case 3 -_0203305A: - ldr r0, _02033078 ; =0x021D4124 - ldr r2, [r0, #4] - ldr r0, _0203307C ; =0x00001314 - ldr r1, [r2, r0] - cmp r1, #3 - bne _0203306E - sub r0, r0, #4 - ldr r0, [r2, r0] - cmp r0, #6 - beq _02033074 -_0203306E: - mov r0, #4 - bl sub_02032844 -_02033074: - pop {r3, pc} - nop -_02033078: .word 0x021D4124 -_0203307C: .word 0x00001314 - thumb_func_end sub_0203301C - - thumb_func_start sub_02033080 -sub_02033080: ; 0x02033080 - push {r3, lr} - mov r0, #3 - bl sub_02032844 - ldr r0, _020330A0 ; =sub_020330A4 - bl sub_020DFEAC - cmp r0, #2 - beq _0203309A - bl sub_02032858 - mov r0, #0 - pop {r3, pc} -_0203309A: - mov r0, #1 - pop {r3, pc} - nop -_020330A0: .word sub_020330A4 - thumb_func_end sub_02033080 - - thumb_func_start sub_020330A4 -sub_020330A4: ; 0x020330A4 - push {r3, lr} - ldrh r0, [r0, #2] - cmp r0, #0 - beq _020330B6 - bl sub_02032858 - bl sub_02033858 - pop {r3, pc} -_020330B6: - bl sub_020330C8 - cmp r0, #0 - bne _020330C4 - mov r0, #9 - bl sub_02032844 -_020330C4: - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_020330A4 - - thumb_func_start sub_020330C8 -sub_020330C8: ; 0x020330C8 - push {r3, lr} - mov r0, #3 - bl sub_02032844 - ldr r0, _020330EC ; =sub_020330F0 - mov r1, #0 - bl sub_020DFA18 - cmp r0, #2 - beq _020330E8 - bl sub_02032858 - bl sub_02033830 - mov r0, #0 - pop {r3, pc} -_020330E8: - mov r0, #1 - pop {r3, pc} - .balign 4, 0 -_020330EC: .word sub_020330F0 - thumb_func_end sub_020330C8 - - thumb_func_start sub_020330F0 -sub_020330F0: ; 0x020330F0 - push {r3, lr} - ldrh r0, [r0, #2] - cmp r0, #0 - beq _020330FE - bl sub_02032858 - pop {r3, pc} -_020330FE: - mov r0, #1 - bl sub_02032844 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_020330F0 - - thumb_func_start sub_02033108 -sub_02033108: ; 0x02033108 - push {r3, lr} - mov r0, #3 - bl sub_02032844 - ldr r0, _02033128 ; =sub_0203312C - bl sub_020DF480 - cmp r0, #2 - beq _02033122 - bl sub_02032858 - mov r0, #0 - pop {r3, pc} -_02033122: - mov r0, #1 - pop {r3, pc} - nop -_02033128: .word sub_0203312C - thumb_func_end sub_02033108 - - thumb_func_start sub_0203312C -sub_0203312C: ; 0x0203312C - push {r4, lr} - add r4, r0, #0 - ldrh r0, [r4, #2] - cmp r0, #0 - beq _02033144 - mov r0, #9 - bl sub_02032844 - ldrh r0, [r4, #2] - bl sub_02032858 - pop {r4, pc} -_02033144: - mov r0, #1 - bl sub_02032844 - pop {r4, pc} - thumb_func_end sub_0203312C - - thumb_func_start sub_0203314C -sub_0203314C: ; 0x0203314C - push {r4, r5, r6, r7, lr} - sub sp, #0xc - add r5, r0, #0 - ldr r0, _02033194 ; =0x021D4124 - add r6, r1, #0 - add r4, r2, #0 - ldr r1, [r0, #4] - mov r0, #0x3d - lsl r0, r0, #6 - ldr r2, _02033198 ; =0x00001304 - add r0, r1, r0 - ldr r1, [r1, r2] - add r7, r3, #0 - bl DC_FlushRange - ldr r0, _0203319C ; =0x0000FFFF - add r1, r7, #0 - str r0, [sp] - lsl r0, r4, #0x10 - lsr r0, r0, #0x10 - str r0, [sp, #4] - mov r0, #2 - str r0, [sp, #8] - ldr r0, _020331A0 ; =sub_020331A4 - add r2, r5, #0 - add r3, r6, #0 - bl sub_020DFD7C - cmp r0, #2 - bne _0203318E - add sp, #0xc - mov r0, #1 - pop {r4, r5, r6, r7, pc} -_0203318E: - mov r0, #0 - add sp, #0xc - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_02033194: .word 0x021D4124 -_02033198: .word 0x00001304 -_0203319C: .word 0x0000FFFF -_020331A0: .word sub_020331A4 - thumb_func_end sub_0203314C - - thumb_func_start sub_020331A4 -sub_020331A4: ; 0x020331A4 - push {r3, lr} - ldrh r1, [r0, #2] - cmp r1, #0 - beq _020331B8 - cmp r1, #0xf - beq _020331B8 - add r0, r1, #0 - bl sub_02032858 - pop {r3, pc} -_020331B8: - ldr r2, [r0, #0x20] - cmp r2, #0 - beq _020331CA - cmp r1, #0 - bne _020331C6 - mov r0, #1 - b _020331C8 -_020331C6: - mov r0, #0 -_020331C8: - blx r2 -_020331CA: - pop {r3, pc} - thumb_func_end sub_020331A4 - - thumb_func_start sub_020331CC -sub_020331CC: ; 0x020331CC - push {r3, lr} - add r2, r0, #0 - ldrh r0, [r2, #2] - cmp r0, #0 - beq _020331DC - bl sub_02032858 - pop {r3, pc} -_020331DC: - ldr r0, _0203320C ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02033210 ; =0x00001318 - ldr r3, [r1, r0] - cmp r3, #0 - beq _02033208 - ldrh r0, [r2, #4] - cmp r0, #0x19 - beq _02033208 - cmp r0, #0x15 - bne _020331FC - ldrh r0, [r2, #0x12] - ldr r1, [r2, #0xc] - ldrh r2, [r2, #0x10] - blx r3 - pop {r3, pc} -_020331FC: - cmp r0, #9 - bne _02033208 - ldrh r0, [r2, #0x12] - mov r1, #0 - add r2, r1, #0 - blx r3 -_02033208: - pop {r3, pc} - nop -_0203320C: .word 0x021D4124 -_02033210: .word 0x00001318 - thumb_func_end sub_020331CC - - thumb_func_start sub_02033214 -sub_02033214: ; 0x02033214 - push {r3, lr} - ldrh r0, [r0, #2] - cmp r0, #0 - beq _02033224 - mov r0, #0xa - bl sub_02032844 - pop {r3, pc} -_02033224: - mov r0, #0 - add r1, r0, #0 - bl sub_0209E248 - mov r0, #0 - bl sub_02032844 - pop {r3, pc} - thumb_func_end sub_02033214 - - thumb_func_start sub_02033234 -sub_02033234: ; 0x02033234 - ldr r1, _0203323C ; =0x021D4124 - ldr r1, [r1, #4] - str r0, [r1, #8] - bx lr - .balign 4, 0 -_0203323C: .word 0x021D4124 - thumb_func_end sub_02033234 - - thumb_func_start sub_02033240 -sub_02033240: ; 0x02033240 - ldr r2, _0203324C ; =0x021D4124 - ldr r3, [r2, #4] - str r0, [r3] - ldr r0, [r2, #4] - strh r1, [r0, #4] - bx lr - .balign 4, 0 -_0203324C: .word 0x021D4124 - thumb_func_end sub_02033240 - - thumb_func_start sub_02033250 -sub_02033250: ; 0x02033250 - ldr r0, _0203325C ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02033260 ; =0x0000132E - ldrh r0, [r1, r0] - bx lr - nop -_0203325C: .word 0x021D4124 -_02033260: .word 0x0000132E - thumb_func_end sub_02033250 - - thumb_func_start sub_02033264 -sub_02033264: ; 0x02033264 - push {r3, r4} - ldr r0, _02033290 ; =0x021D4124 - mov r2, #0 - ldr r1, [r0, #4] - ldr r0, _02033294 ; =0x0000132E - add r3, r2, #0 - ldrh r4, [r1, r0] - mov r1, #1 -_02033274: - add r0, r4, #0 - tst r0, r1 - beq _0203327C - add r2, r2, #1 -_0203327C: - lsl r0, r4, #0xf - add r3, r3, #1 - lsr r4, r0, #0x10 - cmp r3, #0x10 - blt _02033274 - lsl r0, r2, #0x10 - lsr r0, r0, #0x10 - pop {r3, r4} - bx lr - nop -_02033290: .word 0x021D4124 -_02033294: .word 0x0000132E - thumb_func_end sub_02033264 - - thumb_func_start sub_02033298 -sub_02033298: ; 0x02033298 - ldr r0, _020332A4 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _020332A8 ; =0x00001310 - ldr r0, [r1, r0] - bx lr - nop -_020332A4: .word 0x021D4124 -_020332A8: .word 0x00001310 - thumb_func_end sub_02033298 - - thumb_func_start sub_020332AC -sub_020332AC: ; 0x020332AC - ldr r0, _020332B8 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _020332BC ; =0x00001330 - ldr r0, [r1, r0] - bx lr - nop -_020332B8: .word 0x021D4124 -_020332BC: .word 0x00001330 - thumb_func_end sub_020332AC - - thumb_func_start sub_020332C0 -sub_020332C0: ; 0x020332C0 - push {r3, r4, r5, lr} - sub sp, #8 - add r0, sp, #0 - bl OS_GetMacAddress - ldr r0, _02033348 ; =0x027FFC3C - ldr r3, [r0] - add r0, sp, #0 - ldrh r2, [r0, #4] - ldrh r1, [r0, #2] - ldrh r0, [r0] - add r0, r0, r3 - add r0, r1, r0 - add r1, r2, r0 - ldr r3, _0203334C ; =0x021D4124 - ldr r2, _02033350 ; =0x00001338 - ldr r0, [r3, #4] - str r1, [r0, r2] - ldr r0, [r3, #4] - ldr r1, _02033354 ; =0x00010DCD - ldr r4, [r0, r2] - add r5, r4, #0 - mul r5, r1 - ldr r1, _02033358 ; =0x00003039 - mov r4, #0 - add r1, r5, r1 - str r1, [r0, r2] - ldr r1, [r3, #4] - add r0, r2, #4 - strh r4, [r1, r0] - ldr r1, [r3, #4] - mov r4, #0x65 - add r0, r2, #6 - strh r4, [r1, r0] - mov r0, #3 - bl sub_02032844 - mov r0, #1 - bl sub_0203335C - cmp r0, #0x18 - bne _0203332C - mov r0, #0x18 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - mov r0, #1 - bl sub_02039AD8 - add sp, #8 - mov r0, #0 - pop {r3, r4, r5, pc} -_0203332C: - cmp r0, #2 - beq _02033340 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - add sp, #8 - mov r0, #0 - pop {r3, r4, r5, pc} -_02033340: - mov r0, #1 - add sp, #8 - pop {r3, r4, r5, pc} - nop -_02033348: .word 0x027FFC3C -_0203334C: .word 0x021D4124 -_02033350: .word 0x00001338 -_02033354: .word 0x00010DCD -_02033358: .word 0x00003039 - thumb_func_end sub_020332C0 - - thumb_func_start sub_0203335C -sub_0203335C: ; 0x0203335C - push {r4, lr} - add r4, r0, #0 - bl sub_020DEF24 - mov r1, #2 - lsl r1, r1, #0xe - cmp r0, r1 - bne _02033382 - mov r0, #3 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - mov r0, #1 - bl sub_02039AD8 - mov r0, #3 - pop {r4, pc} -_02033382: - cmp r0, #0 - bne _0203339C - mov r0, #0x16 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - mov r0, #1 - bl sub_02039AD8 - mov r0, #0x18 - pop {r4, pc} -_0203339C: - mov r2, #1 - sub r1, r4, #1 - lsl r2, r1 - add r1, r2, #0 - tst r1, r0 - bne _020333C4 - mov r2, #1 -_020333AA: - add r1, r4, #1 - lsl r1, r1, #0x10 - lsr r4, r1, #0x10 - cmp r4, #0x10 - bls _020333B8 - mov r0, #0x18 - pop {r4, pc} -_020333B8: - sub r1, r4, #1 - add r3, r2, #0 - lsl r3, r1 - add r1, r3, #0 - tst r1, r0 - beq _020333AA -_020333C4: - ldr r0, _020333D4 ; =sub_020333D8 - add r1, r4, #0 - bl sub_02033454 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - pop {r4, pc} - nop -_020333D4: .word sub_020333D8 - thumb_func_end sub_0203335C - - thumb_func_start sub_020333D8 -sub_020333D8: ; 0x020333D8 - push {r3, r4, r5, lr} - ldrh r1, [r0, #2] - cmp r1, #0 - beq _020333F4 - add r0, r1, #0 - bl sub_02032858 - mov r0, #9 - bl sub_02032844 - mov r0, #1 - bl sub_02039AD8 - pop {r3, r4, r5, pc} -_020333F4: - ldr r2, _0203344C ; =0x021D4124 - ldrh r1, [r0, #8] - ldrh r5, [r0, #0xa] - ldr r0, [r2, #4] - ldr r3, _02033450 ; =0x0000133E - ldrh r4, [r0, r3] - cmp r4, r5 - bls _02033414 - strh r5, [r0, r3] - mov r4, #1 - sub r0, r1, #1 - lsl r4, r0 - ldr r2, [r2, #4] - add r0, r3, #2 - strh r4, [r2, r0] - b _02033428 -_02033414: - cmp r4, r5 - bne _02033428 - add r2, r3, #2 - ldrh r5, [r0, r2] - mov r4, #1 - sub r2, r1, #1 - lsl r4, r2 - orr r4, r5 - add r2, r3, #2 - strh r4, [r0, r2] -_02033428: - add r0, r1, #1 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_0203335C - cmp r0, #0x18 - bne _0203343E - mov r0, #7 - bl sub_02032844 - pop {r3, r4, r5, pc} -_0203343E: - cmp r0, #2 - beq _02033448 - mov r0, #9 - bl sub_02032844 -_02033448: - pop {r3, r4, r5, pc} - nop -_0203344C: .word 0x021D4124 -_02033450: .word 0x0000133E - thumb_func_end sub_020333D8 - - thumb_func_start sub_02033454 -sub_02033454: ; 0x02033454 - push {r3, lr} - add r3, r1, #0 - mov r1, #0x1e - str r1, [sp] - mov r1, #3 - mov r2, #0x11 - bl sub_020E0EF4 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02033454 - - thumb_func_start sub_02033468 -sub_02033468: ; 0x02033468 - push {r3, lr} - mov r0, #1 - bl sub_02032844 - ldr r0, _0203348C ; =0x021D4124 - ldr r1, [r0, #4] - mov r0, #0x4d - lsl r0, r0, #6 - ldrh r0, [r1, r0] - bl sub_02033494 - ldr r2, _0203348C ; =0x021D4124 - ldr r1, _02033490 ; =0x0000133C - ldr r3, [r2, #4] - strh r0, [r3, r1] - ldr r0, [r2, #4] - ldrh r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203348C: .word 0x021D4124 -_02033490: .word 0x0000133C - thumb_func_end sub_02033468 - - thumb_func_start sub_02033494 -sub_02033494: ; 0x02033494 - push {r4, r5, r6, r7} - add r4, r0, #0 - mov r0, #0 - add r3, r0, #0 - add r2, r0, #0 - mov r1, #1 -_020334A0: - add r5, r1, #0 - lsl r5, r2 - tst r5, r4 - beq _020334B4 - add r0, r2, #1 - add r3, r3, #1 - lsl r0, r0, #0x10 - lsl r3, r3, #0x10 - asr r0, r0, #0x10 - lsr r3, r3, #0x10 -_020334B4: - add r2, r2, #1 - lsl r2, r2, #0x10 - asr r2, r2, #0x10 - cmp r2, #0x10 - blt _020334A0 - cmp r3, #1 - bls _02033512 - ldr r5, _02033518 ; =0x021D4124 - ldr r2, _0203351C ; =0x00001338 - ldr r0, [r5, #4] - ldr r1, _02033520 ; =0x00010DCD - ldr r6, [r0, r2] - add r7, r6, #0 - mul r7, r1 - ldr r1, _02033524 ; =0x00003039 - add r1, r7, r1 - str r1, [r0, r2] - ldr r0, [r5, #4] - mov r1, #1 - ldr r0, [r0, r2] - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - mul r0, r3 - lsl r0, r0, #8 - lsr r2, r0, #0x10 - mov r3, #0 -_020334E8: - add r0, r4, #0 - tst r0, r1 - beq _02033502 - cmp r2, #0 - bne _020334FC - add r0, r3, #1 - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - pop {r4, r5, r6, r7} - bx lr -_020334FC: - sub r0, r2, #1 - lsl r0, r0, #0x10 - lsr r2, r0, #0x10 -_02033502: - lsl r0, r4, #0xf - lsr r4, r0, #0x10 - add r0, r3, #1 - lsl r0, r0, #0x10 - asr r3, r0, #0x10 - cmp r3, #0x10 - blt _020334E8 - mov r0, #0 -_02033512: - pop {r4, r5, r6, r7} - bx lr - nop -_02033518: .word 0x021D4124 -_0203351C: .word 0x00001338 -_02033520: .word 0x00010DCD -_02033524: .word 0x00003039 - thumb_func_end sub_02033494 - - thumb_func_start sub_02033528 -sub_02033528: ; 0x02033528 - push {r4, r5, r6, lr} - lsl r2, r0, #0x1b - lsr r3, r2, #0x1b - beq _02033536 - mov r2, #0x20 - sub r2, r2, r3 - add r0, r0, r2 -_02033536: - ldr r3, _020335AC ; =0x021D4124 - ldr r2, _020335B0 ; =0x00001308 - str r0, [r3, #4] - mov r4, #0 - str r4, [r0, r2] - ldr r5, [r3, #4] - sub r0, r2, #4 - str r4, [r5, r0] - add r0, r2, #0 - ldr r5, [r3, #4] - add r0, #0x10 - str r4, [r5, r0] - add r0, r2, #0 - ldr r5, [r3, #4] - add r0, #0x24 - strh r4, [r5, r0] - add r0, r2, #0 - ldr r5, [r3, #4] - mov r6, #1 - add r0, #0x26 - strh r6, [r5, r0] - add r0, r2, #0 - ldr r5, [r3, #4] - add r0, #0x28 - str r4, [r5, r0] - add r0, r2, #0 - ldr r5, [r3, #4] - add r0, #8 - str r4, [r5, r0] - ldr r0, [r3, #4] - mov r6, #8 - str r4, [r0] - ldr r0, [r3, #4] - strh r4, [r0, #4] - add r0, r2, #0 - ldr r5, [r3, #4] - add r0, #0x14 - str r4, [r5, r0] - add r0, r2, #0 - ldr r5, [r3, #4] - add r0, #0x2c - strb r6, [r5, r0] - add r0, r2, #0 - ldr r5, [r3, #4] - add r0, #0x2d - strb r4, [r5, r0] - ldr r0, [r3, #4] - add r2, #0x3a - strb r4, [r0, r2] - add r0, r1, #0 - bl sub_020335D4 - cmp r0, #0 - bne _020335A6 - add r0, r4, #0 - pop {r4, r5, r6, pc} -_020335A6: - mov r0, #1 - pop {r4, r5, r6, pc} - nop -_020335AC: .word 0x021D4124 -_020335B0: .word 0x00001308 - thumb_func_end sub_02033528 - - thumb_func_start sub_020335B4 -sub_020335B4: ; 0x020335B4 - mov r0, #0x4e - lsl r0, r0, #6 - bx lr - .balign 4, 0 - thumb_func_end sub_020335B4 - - thumb_func_start sub_020335BC -sub_020335BC: ; 0x020335BC - push {r3, lr} - ldrh r0, [r0, #2] - cmp r0, #8 - bne _020335D0 - mov r0, #9 - bl sub_02032844 - mov r0, #0x19 - bl sub_02032858 -_020335D0: - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_020335BC - - thumb_func_start sub_020335D4 -sub_020335D4: ; 0x020335D4 - push {r4, lr} - add r4, r0, #0 - mov r0, #3 - bl sub_02032844 - cmp r4, #1 - bne _020335F2 - ldr r0, _02033618 ; =0x021D4124 - ldr r1, _0203361C ; =sub_02033620 - ldr r0, [r0, #4] - mov r2, #2 - add r0, #0x40 - bl sub_020DF3F8 - b _02033602 -_020335F2: - ldr r0, _02033618 ; =0x021D4124 - ldr r1, _0203361C ; =sub_02033620 - ldr r0, [r0, #4] - mov r2, #2 - add r0, #0x40 - mov r3, #0 - bl sub_020DF408 -_02033602: - cmp r0, #2 - beq _02033614 - bl sub_02032858 - mov r0, #0xa - bl sub_02032844 - mov r0, #0 - pop {r4, pc} -_02033614: - mov r0, #1 - pop {r4, pc} - .balign 4, 0 -_02033618: .word 0x021D4124 -_0203361C: .word sub_02033620 - thumb_func_end sub_020335D4 - - thumb_func_start sub_02033620 -sub_02033620: ; 0x02033620 - push {r3, lr} - ldrh r0, [r0, #2] - cmp r0, #0 - beq _0203363A - bl sub_02032858 - mov r0, #0xa - bl sub_02032844 - mov r0, #5 - bl sub_02039AD8 - pop {r3, pc} -_0203363A: - ldr r0, _02033660 ; =sub_020335BC - bl sub_020DEBA8 - cmp r0, #0 - beq _02033656 - bl sub_02032858 - mov r0, #0xa - bl sub_02032844 - mov r0, #5 - bl sub_02039AD8 - pop {r3, pc} -_02033656: - mov r0, #1 - bl sub_02032844 - pop {r3, pc} - nop -_02033660: .word sub_020335BC - thumb_func_end sub_02033620 - - thumb_func_start sub_02033664 -sub_02033664: ; 0x02033664 - bx lr - .balign 4, 0 - thumb_func_end sub_02033664 - - thumb_func_start sub_02033668 -sub_02033668: ; 0x02033668 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - add r7, r2, #0 - add r4, r3, #0 - bl sub_0203993C - bl sub_020340C4 - cmp r0, #0 - beq _0203368C - ldr r0, _0203372C ; =sub_02033664 - mov r2, #0x64 - ldr r1, _02033730 ; =0x0000FFFF - mov r3, #5 - str r2, [sp] - bl sub_020E0E94 -_0203368C: - ldr r1, _02033734 ; =0x021D4124 - mov r0, #7 - ldr r2, [r1, #4] - ldr r1, _02033738 ; =0x00001308 - lsl r0, r0, #6 - str r0, [r2, r1] - ldr r0, _02033734 ; =0x021D4124 - mov r3, #0xe0 - ldr r2, [r0, #4] - sub r0, r1, #4 - str r3, [r2, r0] - ldr r0, _02033734 ; =0x021D4124 - add r1, #0xc - ldr r0, [r0, #4] - str r5, [r0, r1] - mov r0, #3 - bl sub_02032844 - ldr r1, _02033734 ; =0x021D4124 - cmp r5, #0 - ldr r0, [r1, #4] - strh r6, [r0, #0xc] - ldr r0, [r1, #4] - strh r7, [r0, #0x32] - add r0, sp, #8 - ldrh r2, [r0, #0x10] - ldr r0, [r1, #4] - strh r2, [r0, #0x18] - beq _020336CC - cmp r5, #4 - beq _020336E6 - b _020336F2 -_020336CC: - ldr r0, [r1, #4] - mov r2, #0xc0 - strh r2, [r0, #0x34] - cmp r4, #5 - blo _020336DE - ldr r0, [r1, #4] - mov r2, #0xc - strh r2, [r0, #0x36] - b _020336F2 -_020336DE: - ldr r0, [r1, #4] - mov r2, #0x26 - strh r2, [r0, #0x36] - b _020336F2 -_020336E6: - ldr r0, [r1, #4] - mov r2, #0x64 - strh r2, [r0, #0x34] - ldr r0, [r1, #4] - mov r2, #0xc - strh r2, [r0, #0x36] -_020336F2: - ldr r1, _02033734 ; =0x021D4124 - ldr r0, [r1, #4] - strh r4, [r0, #0x10] - ldr r2, [r1, #4] - mov r0, #0 - strh r0, [r2, #0x16] - ldr r2, [r1, #4] - cmp r5, #2 - strh r0, [r2, #0x12] - ldr r2, [sp, #0x1c] - ldr r1, [r1, #4] - strh r2, [r1, #0xe] - bne _0203370E - mov r0, #1 -_0203370E: - ldr r1, _02033734 ; =0x021D4124 - cmp r5, #0 - ldr r1, [r1, #4] - strh r0, [r1, #0x14] - beq _02033720 - cmp r5, #2 - beq _02033720 - cmp r5, #4 - bne _02033726 -_02033720: - bl sub_02032874 - pop {r3, r4, r5, r6, r7, pc} -_02033726: - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203372C: .word sub_02033664 -_02033730: .word 0x0000FFFF -_02033734: .word 0x021D4124 -_02033738: .word 0x00001308 - thumb_func_end sub_02033668 - - thumb_func_start sub_0203373C -sub_0203373C: ; 0x0203373C - push {r3, r4, r5, r6, lr} - sub sp, #4 - add r5, r0, #0 - add r4, r1, #0 - bl sub_0203993C - bl sub_020340C4 - cmp r0, #0 - beq _0203375E - ldr r0, _020337BC ; =sub_02033664 - mov r2, #0x64 - ldr r1, _020337C0 ; =0x0000FFFF - mov r3, #5 - str r2, [sp] - bl sub_020E0E94 -_0203375E: - ldr r2, _020337C4 ; =0x021D4124 - mov r3, #2 - ldr r0, [r2, #4] - ldr r1, _020337C8 ; =0x00001308 - lsl r3, r3, #8 - str r3, [r0, r1] - sub r0, r1, #4 - ldr r3, [r2, #4] - mov r6, #0x40 - str r6, [r3, r0] - ldr r0, [r2, #4] - add r1, #0xc - str r5, [r0, r1] - mov r0, #3 - bl sub_02032844 - cmp r5, #1 - beq _0203378A - cmp r5, #3 - beq _0203378A - cmp r5, #5 - bne _020337B4 -_0203378A: - ldr r1, _020337C4 ; =0x021D4124 - add r0, r4, #0 - ldr r2, [r1, #4] - ldr r1, _020337CC ; =0x00001220 - add r1, r2, r1 - mov r2, #0xc0 - bl MIi_CpuCopy8 - ldr r0, _020337C4 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _020337CC ; =0x00001220 - add r0, r1, r0 - mov r1, #0xc0 - bl DC_FlushRange - bl sub_020D28B8 - bl sub_02032E9C - add sp, #4 - pop {r3, r4, r5, r6, pc} -_020337B4: - mov r0, #0 - add sp, #4 - pop {r3, r4, r5, r6, pc} - nop -_020337BC: .word sub_02033664 -_020337C0: .word 0x0000FFFF -_020337C4: .word 0x021D4124 -_020337C8: .word 0x00001308 -_020337CC: .word 0x00001220 - thumb_func_end sub_0203373C - - thumb_func_start sub_020337D0 -sub_020337D0: ; 0x020337D0 - push {r3, lr} - ldr r2, _020337F4 ; =0x021D4124 - ldr r3, [r2, #4] - ldr r2, _020337F8 ; =0x00001318 - str r0, [r3, r2] - lsl r0, r1, #0x10 - ldr r1, _020337FC ; =sub_020331CC - lsr r0, r0, #0x10 - mov r2, #0 - bl sub_020DEBEC - cmp r0, #0 - beq _020337F2 - mov r0, #9 - bl sub_02032844 -_020337F0: - b _020337F0 -_020337F2: - pop {r3, pc} - .balign 4, 0 -_020337F4: .word 0x021D4124 -_020337F8: .word 0x00001318 -_020337FC: .word sub_020331CC - thumb_func_end sub_020337D0 - - thumb_func_start sub_02033800 -sub_02033800: ; 0x02033800 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - add r7, r3, #0 - bl sub_020338F4 - cmp r0, #0 - bne _02033820 - bl sub_02033250 - mov r1, #0xfe - tst r0, r1 - bne _02033820 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02033820: - add r0, r5, #0 - add r1, r4, #0 - add r2, r6, #0 - add r3, r7, #0 - bl sub_0203314C - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_02033800 - - thumb_func_start sub_02033830 -sub_02033830: ; 0x02033830 - push {r3, lr} - ldr r0, _02033850 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02033854 ; =0x00001310 - ldr r0, [r1, r0] - cmp r0, #2 - bne _02033840 -_0203383E: - b _0203383E -_02033840: - bl sub_02033108 - cmp r0, #0 - bne _0203384E - mov r0, #0xa - bl sub_02032844 -_0203384E: - pop {r3, pc} - .balign 4, 0 -_02033850: .word 0x021D4124 -_02033854: .word 0x00001310 - thumb_func_end sub_02033830 - - thumb_func_start sub_02033858 -sub_02033858: ; 0x02033858 - push {r3, lr} - ldr r0, _020338C4 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _020338C8 ; =0x00001310 - ldr r0, [r1, r0] - cmp r0, #1 - beq _020338C2 - cmp r0, #6 - beq _0203387E - cmp r0, #5 - beq _0203387E - cmp r0, #4 - beq _0203387E - mov r0, #3 - bl sub_02032844 - bl sub_02033830 - pop {r3, pc} -_0203387E: - mov r0, #3 - bl sub_02032844 - ldr r0, _020338C4 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _020338CC ; =0x00001314 - ldr r0, [r1, r0] - cmp r0, #5 - bhi _020338C2 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203389C: ; jump table - .short _020338B6 - _0203389C - 2 ; case 0 - .short _020338A8 - _0203389C - 2 ; case 1 - .short _020338C2 - _0203389C - 2 ; case 2 - .short _020338C2 - _0203389C - 2 ; case 3 - .short _020338B6 - _0203389C - 2 ; case 4 - .short _020338A8 - _0203389C - 2 ; case 5 -_020338A8: - bl sub_02033080 - cmp r0, #0 - bne _020338C2 - bl sub_02033830 - pop {r3, pc} -_020338B6: - bl sub_02032B0C - cmp r0, #0 - bne _020338C2 - bl sub_02033830 -_020338C2: - pop {r3, pc} - .balign 4, 0 -_020338C4: .word 0x021D4124 -_020338C8: .word 0x00001310 -_020338CC: .word 0x00001314 - thumb_func_end sub_02033858 - - thumb_func_start sub_020338D0 -sub_020338D0: ; 0x020338D0 - push {r3, lr} - mov r0, #3 - bl sub_02032844 - ldr r0, _020338F0 ; =sub_02033214 - bl sub_020DF4B8 - cmp r0, #2 - beq _020338EC - mov r0, #9 - bl sub_02032844 - mov r0, #0 - pop {r3, pc} -_020338EC: - mov r0, #1 - pop {r3, pc} - .balign 4, 0 -_020338F0: .word sub_02033214 - thumb_func_end sub_020338D0 - - thumb_func_start sub_020338F4 -sub_020338F4: ; 0x020338F4 - ldr r0, _02033900 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02033904 ; =0x0000132C - ldrh r0, [r1, r0] - bx lr - nop -_02033900: .word 0x021D4124 -_02033904: .word 0x0000132C - thumb_func_end sub_020338F4 - - thumb_func_start sub_02033908 -sub_02033908: ; 0x02033908 - ldr r1, _02033918 ; =0x021D4124 - ldr r2, [r1, #4] - cmp r2, #0 - beq _02033914 - ldr r1, _0203391C ; =0x00001334 - strb r0, [r2, r1] -_02033914: - bx lr - nop -_02033918: .word 0x021D4124 -_0203391C: .word 0x00001334 - thumb_func_end sub_02033908 - - thumb_func_start sub_02033920 -sub_02033920: ; 0x02033920 - ldr r0, _02033934 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02033938 ; =0x00001310 - ldr r0, [r1, r0] - cmp r0, #1 - bne _02033930 - mov r0, #1 - bx lr -_02033930: - mov r0, #0 - bx lr - .balign 4, 0 -_02033934: .word 0x021D4124 -_02033938: .word 0x00001310 - thumb_func_end sub_02033920 - - thumb_func_start sub_0203393C -sub_0203393C: ; 0x0203393C - ldr r0, _02033950 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02033954 ; =0x00001310 - ldr r0, [r1, r0] - cmp r0, #3 - bne _0203394C - mov r0, #1 - bx lr -_0203394C: - mov r0, #0 - bx lr - .balign 4, 0 -_02033950: .word 0x021D4124 -_02033954: .word 0x00001310 - thumb_func_end sub_0203393C - - thumb_func_start sub_02033958 -sub_02033958: ; 0x02033958 - ldr r0, _0203396C ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02033970 ; =0x00001310 - ldr r0, [r1, r0] - cmp r0, #9 - bne _02033968 - mov r0, #1 - bx lr -_02033968: - mov r0, #0 - bx lr - .balign 4, 0 -_0203396C: .word 0x021D4124 -_02033970: .word 0x00001310 - thumb_func_end sub_02033958 - - thumb_func_start sub_02033974 -sub_02033974: ; 0x02033974 - ldr r0, _02033988 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _0203398C ; =0x00001310 - ldr r0, [r1, r0] - cmp r0, #0xa - bne _02033984 - mov r0, #1 - bx lr -_02033984: - mov r0, #0 - bx lr - .balign 4, 0 -_02033988: .word 0x021D4124 -_0203398C: .word 0x00001310 - thumb_func_end sub_02033974 - - thumb_func_start sub_02033990 -sub_02033990: ; 0x02033990 - ldr r0, _020339AC ; =0x021D4124 - ldr r1, [r0, #4] - cmp r1, #0 - beq _020339A8 - ldr r0, _020339B0 ; =0x00001310 - ldr r0, [r1, r0] - cmp r0, #2 - bne _020339A4 - mov r0, #1 - bx lr -_020339A4: - mov r0, #0 - bx lr -_020339A8: - mov r0, #0 - bx lr - .balign 4, 0 -_020339AC: .word 0x021D4124 -_020339B0: .word 0x00001310 - thumb_func_end sub_02033990 - - thumb_func_start sub_020339B4 -sub_020339B4: ; 0x020339B4 - push {r4, r5, r6, lr} - sub sp, #8 - add r6, r0, #0 - ldr r0, _020339E8 ; =0x021D4124 - add r5, r1, #0 - ldr r1, [r0, #4] - ldr r0, _020339EC ; =0x00001310 - add r4, r2, #0 - ldr r0, [r1, r0] - cmp r0, #4 - bne _020339E2 - lsl r0, r3, #0x10 - lsr r0, r0, #0x10 - str r0, [sp] - mov r0, #1 - lsl r2, r5, #0x10 - str r0, [sp, #4] - mov r0, #0 - add r1, r6, #0 - lsr r2, r2, #0x10 - add r3, r4, #0 - bl sub_020E0D8C -_020339E2: - add sp, #8 - pop {r4, r5, r6, pc} - nop -_020339E8: .word 0x021D4124 -_020339EC: .word 0x00001310 - thumb_func_end sub_020339B4 - - thumb_func_start sub_020339F0 -sub_020339F0: ; 0x020339F0 - ldrh r0, [r0, #2] - cmp r0, #0 - bne _02033A00 - ldr r0, _02033A04 ; =0x021D4124 - mov r2, #1 - ldr r1, [r0, #4] - ldr r0, _02033A08 ; =0x00001344 - strb r2, [r1, r0] -_02033A00: - bx lr - nop -_02033A04: .word 0x021D4124 -_02033A08: .word 0x00001344 - thumb_func_end sub_020339F0 - - thumb_func_start sub_02033A0C -sub_02033A0C: ; 0x02033A0C - push {r4, lr} - ldr r2, _02033A38 ; =0x021D4124 - add r1, r0, #0 - ldr r3, [r2, #4] - ldr r0, _02033A3C ; =0x00001344 - mov r4, #0 - strb r4, [r3, r0] - ldr r2, [r2, #4] - sub r0, #0x34 - ldr r0, [r2, r0] - cmp r0, #4 - bne _02033A32 - ldr r0, _02033A40 ; =sub_020339F0 - bl sub_020E0F6C - cmp r0, #2 - bne _02033A32 - mov r0, #1 - pop {r4, pc} -_02033A32: - mov r0, #0 - pop {r4, pc} - nop -_02033A38: .word 0x021D4124 -_02033A3C: .word 0x00001344 -_02033A40: .word sub_020339F0 - thumb_func_end sub_02033A0C - - thumb_func_start sub_02033A44 -sub_02033A44: ; 0x02033A44 - ldr r0, _02033A60 ; =0x021D4124 - ldr r1, [r0, #4] - cmp r1, #0 - beq _02033A5C - ldr r0, _02033A64 ; =0x00001345 - ldrb r0, [r1, r0] - cmp r0, #6 - blo _02033A58 - mov r0, #1 - bx lr -_02033A58: - mov r0, #0 - bx lr -_02033A5C: - mov r0, #0 - bx lr - .balign 4, 0 -_02033A60: .word 0x021D4124 -_02033A64: .word 0x00001345 - thumb_func_end sub_02033A44 - - thumb_func_start sub_02033A68 -sub_02033A68: ; 0x02033A68 - ldr r0, _02033A74 ; =0x021D4124 - mov r2, #0 - ldr r1, [r0, #4] - ldr r0, _02033A78 ; =0x00001345 - strb r2, [r1, r0] - bx lr - .balign 4, 0 -_02033A74: .word 0x021D4124 -_02033A78: .word 0x00001345 - thumb_func_end sub_02033A68 - - thumb_func_start sub_02033A7C -sub_02033A7C: ; 0x02033A7C - ldr r1, _02033A88 ; =0x021D4124 - ldr r2, [r1, #4] - ldr r1, _02033A8C ; =0x00001320 - str r0, [r2, r1] - bx lr - nop -_02033A88: .word 0x021D4124 -_02033A8C: .word 0x00001320 - thumb_func_end sub_02033A7C - - thumb_func_start sub_02033A90 -sub_02033A90: ; 0x02033A90 - ldr r1, _02033A9C ; =0x021D4124 - ldr r2, [r1, #4] - ldr r1, _02033AA0 ; =0x00001328 - str r0, [r2, r1] - bx lr - nop -_02033A9C: .word 0x021D4124 -_02033AA0: .word 0x00001328 - thumb_func_end sub_02033A90 - - thumb_func_start sub_02033AA4 -sub_02033AA4: ; 0x02033AA4 - ldr r1, _02033AB0 ; =0x021D4124 - ldr r2, [r1, #4] - ldr r1, _02033AB4 ; =0x00001342 - strb r0, [r2, r1] - bx lr - nop -_02033AB0: .word 0x021D4124 -_02033AB4: .word 0x00001342 - thumb_func_end sub_02033AA4 - - thumb_func_start sub_02033AB8 -sub_02033AB8: ; 0x02033AB8 - ldr r0, _02033AC4 ; =0x021D4124 - ldr r1, [r0, #4] - ldr r0, _02033AC8 ; =0x00001342 - ldrb r0, [r1, r0] - bx lr - nop -_02033AC4: .word 0x021D4124 -_02033AC8: .word 0x00001342 - thumb_func_end sub_02033AB8 - - thumb_func_start sub_02033ACC -sub_02033ACC: ; 0x02033ACC - ldr r1, _02033AD8 ; =0x021D4124 - ldr r2, [r1, #4] - ldr r1, _02033ADC ; =0x00001343 - strb r0, [r2, r1] - bx lr - nop -_02033AD8: .word 0x021D4124 -_02033ADC: .word 0x00001343 - thumb_func_end sub_02033ACC - - thumb_func_start sub_02033AE0 -sub_02033AE0: ; 0x02033AE0 - str r1, [r0] - strh r2, [r0, #0xa] - mov r1, #0 - strh r1, [r0, #4] - strh r1, [r0, #6] - strh r1, [r0, #8] - bx lr - .balign 4, 0 - thumb_func_end sub_02033AE0 - - thumb_func_start sub_02033AF0 -sub_02033AF0: ; 0x02033AF0 - push {r3, r4, r5, r6, r7, lr} - str r2, [sp] - add r5, r0, #0 - add r7, r1, #0 - bl sub_02033BF4 - ldr r1, [sp] - cmp r0, r1 - bgt _02033B08 - bl sub_02037974 - pop {r3, r4, r5, r6, r7, pc} -_02033B08: - mov r0, #8 - ldrsh r4, [r5, r0] - ldrsh r1, [r5, r0] - ldr r0, [sp] - mov r6, #0 - add r0, r1, r0 - cmp r4, r0 - bge _02033B3E -_02033B18: - cmp r7, #0 - bne _02033B20 - bl GF_AssertFail -_02033B20: - add r0, r5, #0 - add r1, r4, #0 - bl sub_02033C14 - ldrb r2, [r7, r6] - ldr r1, [r5] - add r4, r4, #1 - strb r2, [r1, r0] - mov r0, #8 - ldrsh r1, [r5, r0] - ldr r0, [sp] - add r6, r6, #1 - add r0, r1, r0 - cmp r4, r0 - blt _02033B18 -_02033B3E: - add r0, r5, #0 - add r1, r4, #0 - bl sub_02033C14 - strh r0, [r5, #8] - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_02033AF0 - - thumb_func_start sub_02033B4C -sub_02033B4C: ; 0x02033B4C - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_02033B78 - mov r1, #4 - add r4, r0, #0 - ldrsh r1, [r5, r1] - add r0, r5, #0 - add r1, r1, r4 - bl sub_02033C14 - strh r0, [r5, #4] - add r0, r4, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_02033B4C - - thumb_func_start sub_02033B68 -sub_02033B68: ; 0x02033B68 - push {r3, lr} - add r1, sp, #0 - mov r2, #1 - bl sub_02033B4C - add r0, sp, #0 - ldrb r0, [r0] - pop {r3, pc} - thumb_func_end sub_02033B68 - - thumb_func_start sub_02033B78 -sub_02033B78: ; 0x02033B78 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - mov r0, #4 - ldrsh r4, [r5, r0] - add r7, r2, #0 - str r1, [sp] - add r0, r4, r7 - mov r6, #0 - cmp r4, r0 - bge _02033BBE -_02033B8C: - add r0, r5, #0 - add r1, r4, #0 - bl sub_02033C14 - mov r1, #6 - ldrsh r1, [r5, r1] - cmp r1, r0 - bne _02033BA0 - add r0, r6, #0 - pop {r3, r4, r5, r6, r7, pc} -_02033BA0: - add r0, r5, #0 - add r1, r4, #0 - bl sub_02033C14 - ldr r1, [r5] - add r4, r4, #1 - ldrb r1, [r1, r0] - ldr r0, [sp] - strb r1, [r0, r6] - mov r0, #4 - ldrsh r0, [r5, r0] - add r6, r6, #1 - add r0, r0, r7 - cmp r4, r0 - blt _02033B8C -_02033BBE: - add r0, r6, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_02033B78 - - thumb_func_start sub_02033BC4 -sub_02033BC4: ; 0x02033BC4 - mov r1, #4 - mov r3, #6 - ldrsh r1, [r0, r1] - ldrsh r2, [r0, r3] - cmp r1, r2 - ble _02033BDC - mov r2, #0xa - ldrsh r2, [r0, r2] - ldrsh r0, [r0, r3] - add r0, r2, r0 - sub r0, r0, r1 - bx lr -_02033BDC: - ldrsh r0, [r0, r3] - sub r0, r0, r1 - bx lr - .balign 4, 0 - thumb_func_end sub_02033BC4 - - thumb_func_start sub_02033BE4 -sub_02033BE4: ; 0x02033BE4 - push {r4, lr} - add r4, r0, #0 - bl sub_02033BC4 - mov r1, #0xa - ldrsh r1, [r4, r1] - sub r0, r1, r0 - pop {r4, pc} - thumb_func_end sub_02033BE4 - - thumb_func_start sub_02033BF4 -sub_02033BF4: ; 0x02033BF4 - mov r1, #4 - mov r2, #8 - ldrsh r3, [r0, r1] - ldrsh r1, [r0, r2] - cmp r3, r1 - ble _02033C06 - ldrsh r0, [r0, r2] - sub r0, r3, r0 - bx lr -_02033C06: - mov r1, #0xa - ldrsh r1, [r0, r1] - ldrsh r0, [r0, r2] - sub r0, r0, r3 - sub r0, r1, r0 - bx lr - .balign 4, 0 - thumb_func_end sub_02033BF4 - - thumb_func_start sub_02033C14 -sub_02033C14: ; 0x02033C14 - push {r3, lr} - add r2, r0, #0 - add r0, r1, #0 - mov r1, #0xa - ldrsh r1, [r2, r1] - bl _s32_div_f - add r0, r1, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02033C14 - - thumb_func_start sub_02033C28 -sub_02033C28: ; 0x02033C28 - mov r1, #8 - ldrsh r1, [r0, r1] - strh r1, [r0, #6] - bx lr - thumb_func_end sub_02033C28 - - thumb_func_start sub_02033C30 -sub_02033C30: ; 0x02033C30 - ldr r3, [r0, #0x1c] - mov r2, #0 - ldr r1, [r0, #0x18] - cmp r3, #0 - ble _02033C4C -_02033C3A: - ldrb r0, [r1, #0xe] - cmp r0, #0 - bne _02033C44 - add r0, r1, #0 - bx lr -_02033C44: - add r2, r2, #1 - add r1, #0x10 - cmp r2, r3 - blt _02033C3A -_02033C4C: - mov r0, #0 - bx lr - thumb_func_end sub_02033C30 - - thumb_func_start sub_02033C50 -sub_02033C50: ; 0x02033C50 - ldr r3, [r0, #0x1c] - mov r2, #0 - ldr r1, [r0, #0x18] - cmp r3, #0 - ble _02033C6C -_02033C5A: - ldrb r0, [r1, #0xe] - cmp r0, #0 - beq _02033C64 - mov r0, #0 - bx lr -_02033C64: - add r2, r2, #1 - add r1, #0x10 - cmp r2, r3 - blt _02033C5A -_02033C6C: - mov r0, #1 - bx lr - thumb_func_end sub_02033C50 - - thumb_func_start sub_02033C70 -sub_02033C70: ; 0x02033C70 - ldr r1, [r0] - cmp r1, #0 - beq _02033C8E - ldr r1, [r1, #8] - cmp r1, #0 - beq _02033C84 - str r1, [r0] - mov r0, #0 - str r0, [r1, #4] - b _02033C8A -_02033C84: - mov r1, #0 - str r1, [r0] - str r1, [r0, #4] -_02033C8A: - mov r0, #1 - bx lr -_02033C8E: - mov r0, #0 - bx lr - .balign 4, 0 - thumb_func_end sub_02033C70 - - thumb_func_start sub_02033C94 -sub_02033C94: ; 0x02033C94 - ldr r2, [r0] - strb r1, [r2] - ldr r1, [r0] - add r1, r1, #1 - str r1, [r0] - ldr r1, [r0, #4] - sub r1, r1, #1 - str r1, [r0, #4] - bne _02033CAA - mov r0, #1 - bx lr -_02033CAA: - mov r0, #0 - bx lr - .balign 4, 0 - thumb_func_end sub_02033C94 - - thumb_func_start sub_02033CB0 -sub_02033CB0: ; 0x02033CB0 - push {r4, r5, r6, lr} - add r5, r0, #0 - ldrb r0, [r5, #0xe] - add r4, r1, #0 - bl sub_020341DC - add r6, r0, #0 - ldr r0, _02033D24 ; =0x0000FFFF - cmp r6, r0 - ldr r0, [r4, #4] - bne _02033CD6 - cmp r0, #3 - bge _02033CE6 - ldrb r1, [r5, #0xf] - mov r0, #1 - bic r1, r0 - strb r1, [r5, #0xf] - mov r0, #1 - pop {r4, r5, r6, pc} -_02033CD6: - cmp r0, #1 - bge _02033CE6 - ldrb r1, [r5, #0xf] - mov r0, #1 - bic r1, r0 - strb r1, [r5, #0xf] - mov r0, #1 - pop {r4, r5, r6, pc} -_02033CE6: - ldrb r1, [r5, #0xe] - add r0, r4, #0 - bl sub_02033C94 - ldr r0, _02033D24 ; =0x0000FFFF - cmp r6, r0 - bne _02033D10 - ldrh r1, [r5, #0xc] - add r0, r4, #0 - asr r1, r1, #8 - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - bl sub_02033C94 - ldrh r1, [r5, #0xc] - add r0, r4, #0 - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - bl sub_02033C94 - b _02033D12 -_02033D10: - strh r6, [r5, #0xc] -_02033D12: - ldrb r1, [r5, #0xf] - mov r0, #1 - bic r1, r0 - mov r0, #1 - orr r0, r1 - strb r0, [r5, #0xf] - mov r0, #0 - pop {r4, r5, r6, pc} - nop -_02033D24: .word 0x0000FFFF - thumb_func_end sub_02033CB0 - - thumb_func_start sub_02033D28 -sub_02033D28: ; 0x02033D28 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - ldrb r0, [r5, #0xe] - add r4, r1, #0 - add r6, r2, #0 - add r7, r3, #0 - bl sub_020341DC - ldr r1, _02033DEC ; =0x0000FFFF - cmp r0, r1 - bne _02033D42 - mov r2, #3 - b _02033D44 -_02033D42: - mov r2, #1 -_02033D44: - ldrh r0, [r5, #0xc] - ldr r1, [r4, #4] - add r0, r0, r2 - cmp r1, r0 - bge _02033D56 - cmp r7, #0 - bne _02033D56 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02033D56: - ldrb r0, [r5, #0xf] - lsl r0, r0, #0x1f - lsr r0, r0, #0x1f - cmp r0, #1 - beq _02033D70 - add r0, r5, #0 - add r1, r4, #0 - bl sub_02033CB0 - cmp r0, #0 - beq _02033D70 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02033D70: - ldrh r3, [r5, #0xc] - ldr r2, [r4, #4] - cmp r2, r3 - ldrb r0, [r5, #0xf] - bge _02033DBA - lsl r0, r0, #0x1e - lsr r0, r0, #0x1f - beq _02033D8A - ldr r1, [r4] - add r0, r6, #0 - bl sub_02033B4C - b _02033DA0 -_02033D8A: - mov r3, #0 - cmp r2, #0 - ble _02033DA0 -_02033D90: - ldr r0, [r5] - ldrb r1, [r0, r3] - ldr r0, [r4] - strb r1, [r0, r3] - ldr r0, [r4, #4] - add r3, r3, #1 - cmp r3, r0 - blt _02033D90 -_02033DA0: - ldr r1, [r5] - ldr r0, [r4, #4] - add r0, r1, r0 - str r0, [r5] - ldrh r1, [r5, #0xc] - ldr r0, [r4, #4] - sub r0, r1, r0 - strh r0, [r5, #0xc] - mov r0, #0 - mvn r0, r0 - str r0, [r4, #4] - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_02033DBA: - lsl r0, r0, #0x1e - lsr r0, r0, #0x1f - beq _02033DCC - ldr r1, [r4] - add r0, r6, #0 - add r2, r3, #0 - bl sub_02033B4C - b _02033DD6 -_02033DCC: - ldr r0, [r5] - ldr r1, [r4] - add r2, r3, #0 - bl MIi_CpuCopy8 -_02033DD6: - ldrh r0, [r5, #0xc] - ldr r1, [r4] - add r0, r1, r0 - str r0, [r4] - ldrh r0, [r5, #0xc] - ldr r1, [r4, #4] - sub r0, r1, r0 - str r0, [r4, #4] - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} - nop -_02033DEC: .word 0x0000FFFF - thumb_func_end sub_02033D28 - - thumb_func_start sub_02033DF0 -sub_02033DF0: ; 0x02033DF0 - push {r3, r4, r5, r6, r7, lr} - sub sp, #8 - add r5, r0, #0 - str r1, [sp] - str r2, [sp, #4] - add r7, r3, #0 - bl sub_02033C30 - add r4, r0, #0 - bne _02033E0A - add sp, #8 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02033E0A: - ldr r0, _02033E7C ; =0x0000FFFE - cmp r7, r0 - blt _02033E14 - bl GF_AssertFail -_02033E14: - ldr r0, [sp] - bl sub_020341DC - add r6, r0, #0 - ldr r0, _02033E80 ; =0x0000FFFF - cmp r6, r0 - bne _02033E24 - add r6, r7, #0 -_02033E24: - ldr r0, [sp, #0x24] - cmp r0, #0 - beq _02033E56 - ldr r0, [r5, #0x14] - bl sub_02033BE4 - add r1, r6, #3 - cmp r1, r0 - blt _02033E3C - add sp, #8 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02033E3C: - ldr r0, [r5, #0x14] - ldr r1, [sp, #4] - ldr r3, _02033E84 ; =0x00000109 - add r2, r6, #0 - bl sub_02033AF0 - ldr r0, [r5, #0x14] - bl sub_02033C28 - ldrb r1, [r4, #0xf] - mov r0, #2 - orr r0, r1 - strb r0, [r4, #0xf] -_02033E56: - ldr r0, [sp] - strh r6, [r4, #0xc] - strb r0, [r4, #0xe] - ldr r0, [sp, #4] - str r0, [r4] - ldr r0, [r5, #4] - cmp r0, #0 - bne _02033E6C - str r4, [r5, #4] - str r4, [r5] - b _02033E74 -_02033E6C: - str r4, [r0, #8] - ldr r0, [r5, #4] - str r0, [r4, #4] - str r4, [r5, #4] -_02033E74: - mov r0, #1 - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} - nop -_02033E7C: .word 0x0000FFFE -_02033E80: .word 0x0000FFFF -_02033E84: .word 0x00000109 - thumb_func_end sub_02033DF0 - - thumb_func_start sub_02033E88 -sub_02033E88: ; 0x02033E88 - ldr r1, [r0, #0x10] - cmp r1, #0 - beq _02033E92 - add r0, r1, #0 - bx lr -_02033E92: - ldr r1, [r0] - cmp r1, #0 - beq _02033E9C - add r0, r1, #0 - bx lr -_02033E9C: - ldr r0, [r0, #8] - cmp r0, #0 - bne _02033EA4 - mov r0, #0 -_02033EA4: - bx lr - .balign 4, 0 - thumb_func_end sub_02033E88 - - thumb_func_start sub_02033EA8 -sub_02033EA8: ; 0x02033EA8 - push {r4, lr} - add r4, r0, #0 - ldr r1, [r4, #0x10] - cmp r1, #0 - beq _02033EB8 - mov r0, #0 - str r0, [r4, #0x10] - pop {r4, pc} -_02033EB8: - bl sub_02033C70 - cmp r0, #0 - bne _02033EC8 - add r4, #8 - add r0, r4, #0 - bl sub_02033C70 -_02033EC8: - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02033EA8 - - thumb_func_start sub_02033ECC -sub_02033ECC: ; 0x02033ECC - push {r3, r4, r5, r6, r7, lr} - add r4, r1, #0 - add r5, r0, #0 - ldr r0, [r4, #4] - mov r7, #1 - str r2, [sp] - cmp r0, #0 - ble _02033F22 -_02033EDC: - add r0, r5, #0 - bl sub_02033E88 - add r6, r0, #0 - beq _02033F22 - add r0, r5, #0 - bl sub_02033EA8 - ldr r2, [r5, #0x14] - add r0, r6, #0 - add r1, r4, #0 - add r3, r7, #0 - bl sub_02033D28 - cmp r0, #0 - bne _02033F00 - str r6, [r5, #0x10] - b _02033F22 -_02033F00: - mov r0, #0 - ldr r1, [r4, #4] - mvn r0, r0 - cmp r1, r0 - bne _02033F10 - str r6, [r5, #0x10] - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02033F10: - add r0, r6, #0 - mov r1, #0 - mov r2, #0x10 - bl MIi_CpuFill8 - ldr r0, [r4, #4] - ldr r7, [sp] - cmp r0, #0 - bgt _02033EDC -_02033F22: - ldr r0, [r4, #4] - mov r2, #0 - cmp r0, #0 - ble _02033F3E - mov r1, #0xee -_02033F2C: - ldr r0, [r4] - add r2, r2, #1 - strb r1, [r0] - ldr r0, [r4] - add r0, r0, #1 - str r0, [r4] - ldr r0, [r4, #4] - cmp r2, r0 - blt _02033F2C -_02033F3E: - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_02033ECC - - thumb_func_start sub_02033F44 -sub_02033F44: ; 0x02033F44 - push {r3, r4, r5, r6, r7, lr} - add r4, r1, #0 - add r6, r2, #0 - mov r1, #0 - mov r2, #0x20 - add r5, r0, #0 - bl MIi_CpuFill8 - lsl r7, r4, #4 - mov r0, #0xf - add r1, r7, #0 - bl AllocFromHeap - mov r1, #0 - add r2, r7, #0 - str r0, [r5, #0x18] - bl MIi_CpuFill8 - str r4, [r5, #0x1c] - str r6, [r5, #0x14] - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_02033F44 - - thumb_func_start sub_02033F70 -sub_02033F70: ; 0x02033F70 - push {r4, lr} - add r4, r0, #0 - ldr r2, [r4, #0x1c] - ldr r0, [r4, #0x18] - mov r1, #0 - lsl r2, r2, #4 - bl MIi_CpuFill8 - mov r0, #0 - str r0, [r4] - str r0, [r4, #4] - str r0, [r4, #8] - str r0, [r4, #0xc] - str r0, [r4, #0x10] - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02033F70 - - thumb_func_start sub_02033F90 -sub_02033F90: ; 0x02033F90 - ldr r3, _02033F98 ; =FreeToHeap - ldr r0, [r0, #0x18] - bx r3 - nop -_02033F98: .word FreeToHeap - thumb_func_end sub_02033F90 - - thumb_func_start sub_02033F9C -sub_02033F9C: ; 0x02033F9C - push {r3, r4} - ldr r4, [r0, #0x1c] - mov r2, #0 - ldr r3, [r0, #0x18] - cmp r4, #0 - ble _02033FBC -_02033FA8: - ldrb r0, [r3, #0xe] - cmp r0, r1 - bne _02033FB4 - mov r0, #1 - pop {r3, r4} - bx lr -_02033FB4: - add r2, r2, #1 - add r3, #0x10 - cmp r2, r4 - blt _02033FA8 -_02033FBC: - mov r0, #0 - pop {r3, r4} - bx lr - .balign 4, 0 - thumb_func_end sub_02033F9C - - thumb_func_start sub_02033FC4 -sub_02033FC4: ; 0x02033FC4 - push {r3, r4, lr} - sub sp, #0x2c - ldr r3, _02033FEC ; =0x020F692C - add r4, r0, #0 - add r2, sp, #0 - mov r1, #0x29 -_02033FD0: - ldrb r0, [r3] - add r3, r3, #1 - strb r0, [r2] - add r2, r2, #1 - sub r1, r1, #1 - bne _02033FD0 - cmp r4, #0x29 - blo _02033FE4 - bl GF_AssertFail -_02033FE4: - add r0, sp, #0 - ldrb r0, [r0, r4] - add sp, #0x2c - pop {r3, r4, pc} - .balign 4, 0 -_02033FEC: .word 0x020F692C - thumb_func_end sub_02033FC4 - - thumb_func_start sub_02033FF0 -sub_02033FF0: ; 0x02033FF0 - push {r3, r4, lr} - sub sp, #0x2c - ldr r3, _02034018 ; =0x020F6955 - add r4, r0, #0 - add r2, sp, #0 - mov r1, #0x29 -_02033FFC: - ldrb r0, [r3] - add r3, r3, #1 - strb r0, [r2] - add r2, r2, #1 - sub r1, r1, #1 - bne _02033FFC - cmp r4, #0x29 - blo _02034010 - bl GF_AssertFail -_02034010: - add r0, sp, #0 - ldrb r0, [r0, r4] - add sp, #0x2c - pop {r3, r4, pc} - .balign 4, 0 -_02034018: .word 0x020F6955 - thumb_func_end sub_02033FF0 - - thumb_func_start sub_0203401C -sub_0203401C: ; 0x0203401C - cmp r0, #0x12 - bgt _02034036 - bge _0203403A - cmp r0, #0xd - bgt _0203403E - cmp r0, #7 - blt _0203403E - beq _0203403A - cmp r0, #9 - beq _0203403A - cmp r0, #0xd - beq _0203403A - b _0203403E -_02034036: - cmp r0, #0x1a - bne _0203403E -_0203403A: - mov r0, #1 - bx lr -_0203403E: - mov r0, #0 - bx lr - .balign 4, 0 - thumb_func_end sub_0203401C - - thumb_func_start sub_02034044 -sub_02034044: ; 0x02034044 - sub r0, #0x13 - cmp r0, #0x11 - bhi _0203407E - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_02034056: ; jump table - .short _0203407A - _02034056 - 2 ; case 0 - .short _0203407A - _02034056 - 2 ; case 1 - .short _0203407A - _02034056 - 2 ; case 2 - .short _0203407A - _02034056 - 2 ; case 3 - .short _0203407A - _02034056 - 2 ; case 4 - .short _0203407A - _02034056 - 2 ; case 5 - .short _0203407A - _02034056 - 2 ; case 6 - .short _0203407E - _02034056 - 2 ; case 7 - .short _0203407E - _02034056 - 2 ; case 8 - .short _0203407E - _02034056 - 2 ; case 9 - .short _0203407A - _02034056 - 2 ; case 10 - .short _0203407E - _02034056 - 2 ; case 11 - .short _0203407E - _02034056 - 2 ; case 12 - .short _0203407E - _02034056 - 2 ; case 13 - .short _0203407A - _02034056 - 2 ; case 14 - .short _0203407A - _02034056 - 2 ; case 15 - .short _0203407A - _02034056 - 2 ; case 16 - .short _0203407A - _02034056 - 2 ; case 17 -_0203407A: - mov r0, #1 - bx lr -_0203407E: - mov r0, #0 - bx lr - .balign 4, 0 - thumb_func_end sub_02034044 - - thumb_func_start sub_02034084 -sub_02034084: ; 0x02034084 - cmp r0, #0x1d - beq _02034090 - cmp r0, #0x21 - beq _02034090 - cmp r0, #0x23 - bne _02034094 -_02034090: - mov r0, #1 - bx lr -_02034094: - mov r0, #0 - bx lr - thumb_func_end sub_02034084 - - thumb_func_start sub_02034098 -sub_02034098: ; 0x02034098 - cmp r0, #0x17 - bgt _020340B8 - add r1, r0, #0 - sub r1, #0x13 - bmi _020340C0 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_020340AE: ; jump table - .short _020340BC - _020340AE - 2 ; case 0 - .short _020340BC - _020340AE - 2 ; case 1 - .short _020340BC - _020340AE - 2 ; case 2 - .short _020340BC - _020340AE - 2 ; case 3 - .short _020340BC - _020340AE - 2 ; case 4 -_020340B8: - cmp r0, #0x22 - bne _020340C0 -_020340BC: - mov r0, #1 - bx lr -_020340C0: - mov r0, #0 - bx lr - thumb_func_end sub_02034098 - - thumb_func_start sub_020340C4 -sub_020340C4: ; 0x020340C4 - cmp r0, #0x26 - bgt _020340F6 - bge _02034102 - cmp r0, #8 - bgt _020340F0 - cmp r0, #0 - blt _02034106 - add r1, r0, r0 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_020340DE: ; jump table - .short _02034106 - _020340DE - 2 ; case 0 - .short _02034102 - _020340DE - 2 ; case 1 - .short _02034102 - _020340DE - 2 ; case 2 - .short _02034102 - _020340DE - 2 ; case 3 - .short _02034102 - _020340DE - 2 ; case 4 - .short _02034102 - _020340DE - 2 ; case 5 - .short _02034106 - _020340DE - 2 ; case 6 - .short _02034106 - _020340DE - 2 ; case 7 - .short _02034102 - _020340DE - 2 ; case 8 -_020340F0: - cmp r0, #0x25 - beq _02034102 - b _02034106 -_020340F6: - cmp r0, #0x27 - bgt _020340FE - beq _02034102 - b _02034106 -_020340FE: - cmp r0, #0x28 - bne _02034106 -_02034102: - mov r0, #1 - bx lr -_02034106: - mov r0, #0 - bx lr - .balign 4, 0 - thumb_func_end sub_020340C4 - - thumb_func_start sub_0203410C -sub_0203410C: ; 0x0203410C - push {r4, r5, r6, lr} - add r5, r0, #0 - ldr r0, _02034150 ; =0x021D412C - add r4, r1, #0 - ldr r0, [r0] - add r6, r2, #0 - cmp r0, #0 - bne _02034128 - mov r0, #0xf - mov r1, #0x18 - bl AllocFromHeap - ldr r1, _02034150 ; =0x021D412C - str r0, [r1] -_02034128: - ldr r0, _02034150 ; =0x021D412C - mov r3, #0 - ldr r1, [r0] - add r2, r3, #0 - str r5, [r1] - ldr r1, [r0] - str r4, [r1, #4] - ldr r1, [r0] - str r6, [r1, #8] -_0203413A: - ldr r1, [r0] - add r1, r1, r3 - add r3, r3, #1 - strb r2, [r1, #0xc] - cmp r3, #8 - blt _0203413A - ldr r0, _02034150 ; =0x021D412C - ldr r0, [r0] - strb r2, [r0, #0x14] - pop {r4, r5, r6, pc} - nop -_02034150: .word 0x021D412C - thumb_func_end sub_0203410C - - thumb_func_start sub_02034154 -sub_02034154: ; 0x02034154 - push {r3, lr} - ldr r0, _0203416C ; =0x021D412C - ldr r0, [r0] - cmp r0, #0 - beq _02034168 - bl FreeToHeap - ldr r0, _0203416C ; =0x021D412C - mov r1, #0 - str r1, [r0] -_02034168: - pop {r3, pc} - nop -_0203416C: .word 0x021D412C - thumb_func_end sub_02034154 - - thumb_func_start sub_02034170 -sub_02034170: ; 0x02034170 - push {r3, r4, r5, r6, r7, lr} - add r4, r1, #0 - add r5, r0, #0 - add r6, r2, #0 - add r7, r3, #0 - cmp r4, #0x16 - bge _02034188 - mov r0, #0xc - mul r1, r0 - ldr r0, _020341D4 ; =0x020F6980 - ldr r4, [r0, r1] - b _020341B0 -_02034188: - ldr r0, _020341D8 ; =0x021D412C - ldr r0, [r0] - cmp r0, #0 - bne _02034194 - bl GF_AssertFail -_02034194: - ldr r0, _020341D8 ; =0x021D412C - ldr r1, [r0] - ldr r0, [r1, #4] - add r0, #0x16 - cmp r4, r0 - ble _020341A6 - bl sub_02037974 - pop {r3, r4, r5, r6, r7, pc} -_020341A6: - ldr r1, [r1] - sub r4, #0x16 - mov r0, #0xc - mul r0, r4 - ldr r4, [r1, r0] -_020341B0: - cmp r4, #0 - beq _020341D2 - ldr r0, _020341D8 ; =0x021D412C - ldr r3, [r0] - cmp r3, #0 - beq _020341C8 - ldr r3, [r3, #8] - add r0, r5, #0 - add r1, r6, #0 - add r2, r7, #0 - blx r4 - pop {r3, r4, r5, r6, r7, pc} -_020341C8: - add r0, r5, #0 - add r1, r6, #0 - add r2, r7, #0 - mov r3, #0 - blx r4 -_020341D2: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_020341D4: .word 0x020F6980 -_020341D8: .word 0x021D412C - thumb_func_end sub_02034170 - - thumb_func_start sub_020341DC -sub_020341DC: ; 0x020341DC - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r4, #0 - cmp r5, #0x16 - bge _020341F2 - mov r0, #0xc - add r1, r5, #0 - mul r1, r0 - ldr r0, _0203423C ; =0x020F6984 - ldr r0, [r0, r1] - b _0203422E -_020341F2: - ldr r0, _02034240 ; =0x021D412C - ldr r0, [r0] - cmp r0, #0 - bne _020341FE - bl GF_AssertFail -_020341FE: - ldr r0, _02034240 ; =0x021D412C - ldr r1, [r0] - cmp r1, #0 - bne _0203420E - bl sub_02037974 - mov r0, #0 - pop {r3, r4, r5, pc} -_0203420E: - ldr r0, [r1, #4] - add r0, #0x16 - cmp r5, r0 - ble _02034222 - bl GF_AssertFail - bl sub_02037974 - mov r0, #0 - pop {r3, r4, r5, pc} -_02034222: - ldr r1, [r1] - sub r5, #0x16 - mov r0, #0xc - mul r0, r5 - add r0, r1, r0 - ldr r0, [r0, #4] -_0203422E: - cmp r0, #0 - beq _02034236 - blx r0 - add r4, r0, #0 -_02034236: - add r0, r4, #0 - pop {r3, r4, r5, pc} - nop -_0203423C: .word 0x020F6984 -_02034240: .word 0x021D412C - thumb_func_end sub_020341DC - - thumb_func_start sub_02034244 -sub_02034244: ; 0x02034244 - cmp r0, #0x16 - bge _0203425C - mov r1, #0xc - mul r1, r0 - ldr r0, _02034278 ; =0x020F6988 - ldr r0, [r0, r1] - cmp r0, #0 - beq _02034258 - mov r0, #1 - bx lr -_02034258: - mov r0, #0 - bx lr -_0203425C: - ldr r1, _0203427C ; =0x021D412C - sub r0, #0x16 - ldr r1, [r1] - ldr r2, [r1] - mov r1, #0xc - mul r1, r0 - add r0, r2, r1 - ldr r0, [r0, #8] - cmp r0, #0 - beq _02034274 - mov r0, #1 - bx lr -_02034274: - mov r0, #0 - bx lr - .balign 4, 0 -_02034278: .word 0x020F6988 -_0203427C: .word 0x021D412C - thumb_func_end sub_02034244 - - thumb_func_start sub_02034280 -sub_02034280: ; 0x02034280 - push {r3, r4, r5, lr} - add r3, r0, #0 - cmp r3, #0x16 - bge _02034298 - mov r4, #0xc - mul r4, r3 - ldr r3, _020342B0 ; =0x020F6988 - add r0, r1, #0 - ldr r3, [r3, r4] - mov r1, #0 - blx r3 - pop {r3, r4, r5, pc} -_02034298: - ldr r0, _020342B4 ; =0x021D412C - sub r3, #0x16 - ldr r4, [r0] - add r0, r1, #0 - ldr r1, [r4, #8] - ldr r5, [r4] - mov r4, #0xc - mul r4, r3 - add r3, r5, r4 - ldr r3, [r3, #8] - blx r3 - pop {r3, r4, r5, pc} - .balign 4, 0 -_020342B0: .word 0x020F6988 -_020342B4: .word 0x021D412C - thumb_func_end sub_02034280 - - thumb_func_start sub_020342B8 -sub_020342B8: ; 0x020342B8 - ldr r0, _020342BC ; =0x0000FFFF - bx lr - .balign 4, 0 -_020342BC: .word 0x0000FFFF - thumb_func_end sub_020342B8 - - thumb_func_start sub_020342C0 -sub_020342C0: ; 0x020342C0 - mov r0, #0 - bx lr - thumb_func_end sub_020342C0 - - thumb_func_start sub_020342C4 -sub_020342C4: ; 0x020342C4 - mov r0, #1 - bx lr - thumb_func_end sub_020342C4 - - thumb_func_start sub_020342C8 -sub_020342C8: ; 0x020342C8 - mov r0, #2 - bx lr - thumb_func_end sub_020342C8 - - thumb_func_start sub_020342CC -sub_020342CC: ; 0x020342CC - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_0203769C - cmp r0, #0 - bne _0203430A - ldr r4, _0203430C ; =0x021D412C - mov r1, #1 - ldr r0, [r4] - add r0, r0, r5 - strb r1, [r0, #0xc] - mov r5, #0 -_020342E4: - lsl r0, r5, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _020342FA - ldr r0, [r4] - add r0, r0, r5 - ldrb r0, [r0, #0xc] - cmp r0, #0 - beq _0203430A -_020342FA: - add r5, r5, #1 - cmp r5, #8 - blt _020342E4 - mov r1, #0 - mov r0, #0xe - add r2, r1, #0 - bl sub_02037108 -_0203430A: - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203430C: .word 0x021D412C - thumb_func_end sub_020342CC - - thumb_func_start sub_02034310 -sub_02034310: ; 0x02034310 - ldr r0, _02034330 ; =0x021D412C - mov r3, #0 - ldr r1, [r0] - str r3, [r1] - ldr r1, [r0] - str r3, [r1, #4] - ldr r1, [r0] - str r3, [r1, #8] - ldr r0, [r0] - mov r1, #1 - strb r1, [r0, #0x14] - ldr r3, _02034334 ; =sub_020376E0 - mov r0, #0xf - add r1, r2, #0 - bx r3 - nop -_02034330: .word 0x021D412C -_02034334: .word sub_020376E0 - thumb_func_end sub_02034310 - - thumb_func_start sub_02034338 -sub_02034338: ; 0x02034338 - push {r4, lr} - add r4, r0, #0 - bl sub_0203769C - cmp r0, #0 - bne _0203434E - ldr r0, _02034350 ; =0x021D412C - mov r1, #0 - ldr r0, [r0] - add r0, r0, r4 - strb r1, [r0, #0xc] -_0203434E: - pop {r4, pc} - .balign 4, 0 -_02034350: .word 0x021D412C - thumb_func_end sub_02034338 - - thumb_func_start sub_02034354 -sub_02034354: ; 0x02034354 - push {r4, r5, r6, r7, lr} - sub sp, #0xc - str r0, [sp] - str r1, [sp, #4] - bl Sav2_PlayerData_GetProfileAddr - str r0, [sp, #8] - ldr r0, _020343E0 ; =0x021D4130 - ldr r0, [r0] - cmp r0, #0 - bne _020343DA - mov r1, #0xea - mov r0, #0xf - lsl r1, r1, #2 - bl AllocFromHeap - ldr r1, _020343E0 ; =0x021D4130 - mov r2, #0xea - str r0, [r1] - mov r1, #0 - lsl r2, r2, #2 - bl MIi_CpuFill8 - mov r6, #0 - ldr r7, _020343E0 ; =0x021D4130 - add r4, r6, #0 - add r5, r6, #0 -_0203438A: - ldr r1, [r7] - add r0, r1, #0 - add r0, #0x2c - add r2, r0, r4 - mov r0, #0xd3 - add r1, r1, r5 - lsl r0, r0, #2 - str r2, [r1, r0] - add r0, r6, #0 - bl sub_020346E8 - add r6, r6, #1 - add r4, #0x68 - add r5, r5, #4 - cmp r6, #8 - blt _0203438A - ldr r2, _020343E0 ; =0x021D4130 - mov r1, #0xe9 - ldr r3, [r2] - mov r0, #0 - lsl r1, r1, #2 - strb r0, [r3, r1] - ldr r4, [r2] - add r3, r1, #1 - strb r0, [r4, r3] - add r3, r1, #2 - ldr r4, [r2] - sub r1, #0x58 - strb r0, [r4, r3] - ldr r3, [r2] - ldr r0, [sp] - str r0, [r3, #8] - ldr r3, [r2] - ldr r0, [sp, #4] - str r0, [r3, #4] - ldr r2, [r2] - ldr r0, [sp, #8] - ldr r1, [r2, r1] - bl sub_02028EE4 -_020343DA: - add sp, #0xc - pop {r4, r5, r6, r7, pc} - nop -_020343E0: .word 0x021D4130 - thumb_func_end sub_02034354 - - thumb_func_start sub_020343E4 -sub_020343E4: ; 0x020343E4 - push {r3, r4, r5, lr} - ldr r1, _0203441C ; =0x021D4130 - ldr r0, [r1] - cmp r0, #0 - beq _02034418 - mov r4, #0 - mov r0, #0xd3 - add r5, r4, #0 - add r3, r4, #0 - lsl r0, r0, #2 -_020343F8: - ldr r2, [r1] - add r4, r4, #1 - add r2, r2, r5 - add r5, r5, #4 - str r3, [r2, r0] - cmp r4, #8 - blt _020343F8 - ldr r0, _0203441C ; =0x021D4130 - ldr r0, [r0] - cmp r0, #0 - beq _02034412 - bl FreeToHeap -_02034412: - ldr r0, _0203441C ; =0x021D4130 - mov r1, #0 - str r1, [r0] -_02034418: - pop {r3, r4, r5, pc} - nop -_0203441C: .word 0x021D4130 - thumb_func_end sub_020343E4 - - thumb_func_start sub_02034420 -sub_02034420: ; 0x02034420 - ldr r0, _02034430 ; =0x021D4130 - ldr r0, [r0] - cmp r0, #0 - beq _0203442C - mov r0, #1 - bx lr -_0203442C: - mov r0, #0 - bx lr - .balign 4, 0 -_02034430: .word 0x021D4130 - thumb_func_end sub_02034420 - - thumb_func_start sub_02034434 -sub_02034434: ; 0x02034434 - push {r3, r4, r5, r6, r7, lr} - bl sub_0203769C - add r4, r0, #0 - ldr r0, _0203451C ; =0x021D4130 - ldr r0, [r0] - ldr r0, [r0, #8] - bl sub_0202C854 - str r0, [sp] - ldr r0, _0203451C ; =0x021D4130 - ldr r0, [r0] - ldr r0, [r0, #8] - bl sub_0202C6F4 - add r7, r0, #0 - ldr r0, _0203451C ; =0x021D4130 - ldr r0, [r0] - ldr r0, [r0, #8] - bl sub_0202CA44 - add r6, r0, #0 - ldr r0, _0203451C ; =0x021D4130 - ldr r1, [r0] - ldr r0, [r1] - cmp r0, #0 - bne _02034470 - ldr r0, [r1, #8] - bl Sav2_PlayerData_GetProfileAddr -_02034470: - ldr r1, _0203451C ; =0x021D4130 - ldr r2, [r1] - lsl r1, r4, #2 - add r2, r2, r1 - mov r1, #0xd3 - lsl r1, r1, #2 - ldr r1, [r2, r1] - bl sub_02028EE4 - mov r0, #0x68 - add r5, r4, #0 - mul r5, r0 - ldr r0, _0203451C ; =0x021D4130 - ldr r0, [r0] - add r0, #0x68 - add r0, r0, r5 - bl OS_GetMacAddress - ldr r0, [sp] - mov r1, #1 - mov r2, #0 - bl sub_0202C7E0 - ldr r1, _0203451C ; =0x021D4130 - mov r2, #0x10 - ldr r1, [r1] - add r1, #0x58 - add r1, r1, r5 - bl MIi_CpuCopy8 - add r0, r6, #0 - bl sub_0202CA8C - ldr r1, _0203451C ; =0x021D4130 - ldr r1, [r1] - add r1, r1, r5 - add r1, #0x6f - strb r0, [r1] - add r0, r6, #0 - bl sub_0202CA90 - ldr r2, _0203451C ; =0x021D4130 - ldr r1, [r2] - add r1, r1, r5 - add r1, #0x70 - strb r0, [r1] - ldr r0, [r2] - mov r1, #0 - add r0, r0, r5 - add r0, #0x71 - strb r1, [r0] - add r0, r7, #0 - bl sub_0202C08C - ldr r1, _0203451C ; =0x021D4130 - ldr r1, [r1] - add r1, #0x4c - add r1, r1, r5 - bl sub_020A037C - ldr r0, _0203451C ; =0x021D4130 - mov r1, #0 - ldr r0, [r0] - mov r2, #0x20 - add r0, #0xc - add r0, r0, r5 - bl MIi_CpuFill8 - ldr r0, _0203451C ; =0x021D4130 - ldr r1, [r0] - ldr r0, [r1, #4] - cmp r0, #0 - beq _0203450A - add r1, #0xc - add r1, r1, r5 - bl sub_020290BC -_0203450A: - ldr r1, _0203451C ; =0x021D4130 - mov r0, #3 - ldr r1, [r1] - mov r2, #0x68 - add r1, #0xc - add r1, r1, r5 - bl sub_02037030 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203451C: .word 0x021D4130 - thumb_func_end sub_02034434 - - thumb_func_start sub_02034520 -sub_02034520: ; 0x02034520 - mov r0, #0x68 - bx lr - thumb_func_end sub_02034520 - - thumb_func_start sub_02034524 -sub_02034524: ; 0x02034524 - ldr r0, _02034538 ; =0x021D4130 - ldr r2, [r0] - cmp r2, #0 - beq _02034534 - mov r0, #0xe9 - mov r1, #1 - lsl r0, r0, #2 - strb r1, [r2, r0] -_02034534: - bx lr - nop -_02034538: .word 0x021D4130 - thumb_func_end sub_02034524 - - thumb_func_start sub_0203453C -sub_0203453C: ; 0x0203453C - push {r3, r4, r5, lr} - ldr r1, _020345C8 ; =0x021D4130 - add r4, r2, #0 - ldr r1, [r1] - cmp r1, #0 - beq _020345C4 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _020345C4 - ldr r1, _020345C8 ; =0x021D4130 - mov r2, #0x68 - ldr r5, [r1] - add r1, r4, #0 - add r1, #0x62 - ldrb r1, [r1] - add r5, #0xc - add r0, r4, #0 - add r3, r1, #0 - mul r3, r2 - add r1, r5, r3 - bl MIi_CpuCopy8 - add r4, #0x62 - ldr r1, _020345C8 ; =0x021D4130 - ldrb r3, [r4] - ldr r2, [r1] - ldr r0, _020345CC ; =0x000003A6 - strb r3, [r2, r0] - ldr r2, [r1] - ldrb r1, [r2, r0] - sub r0, #0x5a - lsl r1, r1, #2 - add r1, r2, r1 - ldr r0, [r1, r0] - bl sub_02028F0C - cmp r0, #1 - beq _020345C4 - ldr r2, _020345C8 ; =0x021D4130 - mov r0, #0xe7 - lsl r0, r0, #2 - ldr r3, [r2] - add r1, r0, #0 - add r1, #0xa - add r4, r3, r0 - ldrb r3, [r3, r1] - ldrb r1, [r4, r3] - cmp r1, #2 - bhs _020345C4 - mov r1, #1 - strb r1, [r4, r3] - ldr r1, [r2] - add r0, #0xa - ldrb r4, [r1, r0] - bl sub_0203769C - cmp r4, r0 - bne _020345C4 - ldr r0, _020345C8 ; =0x021D4130 - mov r2, #3 - ldr r0, [r0] - add r1, r0, r4 - mov r0, #0xe7 - lsl r0, r0, #2 - strb r2, [r1, r0] -_020345C4: - pop {r3, r4, r5, pc} - nop -_020345C8: .word 0x021D4130 -_020345CC: .word 0x000003A6 - thumb_func_end sub_0203453C - - thumb_func_start sub_020345D0 -sub_020345D0: ; 0x020345D0 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, _02034630 ; =0x021D4130 - ldr r1, [r0] - cmp r1, #0 - beq _0203462C - mov r3, #0x68 - add r4, r5, #0 - add r0, r2, #0 - mul r4, r3 - add r1, #0xc - add r1, r1, r4 - add r2, r3, #0 - bl MIi_CpuCopy8 - ldr r0, _02034630 ; =0x021D4130 - add r1, r5, #0 - ldr r0, [r0] - add r0, #0x68 - add r0, r0, r4 - bl sub_020357C4 - ldr r0, _02034630 ; =0x021D4130 - mov r2, #1 - ldr r0, [r0] - add r1, r0, r5 - mov r0, #0xe7 - lsl r0, r0, #2 - strb r2, [r1, r0] - bl sub_0203769C - cmp r5, r0 - bne _02034622 - ldr r0, _02034630 ; =0x021D4130 - mov r2, #3 - ldr r0, [r0] - add r1, r0, r5 - mov r0, #0xe7 - lsl r0, r0, #2 - strb r2, [r1, r0] - pop {r3, r4, r5, pc} -_02034622: - ldr r0, _02034630 ; =0x021D4130 - mov r2, #1 - ldr r1, [r0] - ldr r0, _02034634 ; =0x000003A5 - strb r2, [r1, r0] -_0203462C: - pop {r3, r4, r5, pc} - nop -_02034630: .word 0x021D4130 -_02034634: .word 0x000003A5 - thumb_func_end sub_020345D0 - - thumb_func_start sub_02034638 -sub_02034638: ; 0x02034638 - push {r3, r4, r5, r6, r7, lr} - ldr r0, _020346CC ; =0x021D4130 - ldr r1, [r0] - ldr r0, _020346D0 ; =0x000003A5 - ldrb r0, [r1, r0] - cmp r0, #0 - bne _0203464A - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_0203464A: - bl sub_0203769C - cmp r0, #0 - beq _02034656 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02034656: - mov r0, #5 - bl sub_02037824 - cmp r0, #0 - bne _020346C8 - mov r4, #0 - add r5, r4, #0 - add r7, r4, #0 -_02034666: - ldr r0, _020346CC ; =0x021D4130 - ldr r2, [r0] - mov r0, #0xe7 - add r1, r2, r4 - lsl r0, r0, #2 - ldrb r0, [r1, r0] - cmp r0, #0 - beq _020346A6 - add r0, r2, r5 - add r0, #0x6e - strb r4, [r0] - ldr r0, _020346CC ; =0x021D4130 - ldr r6, [r0] - bl sub_02028ECC - add r2, r0, #0 - mov r0, #0xd3 - add r1, r6, r7 - lsl r0, r0, #2 - ldr r0, [r1, r0] - add r6, #0x2c - add r1, r6, r5 - bl MIi_CpuCopy8 - ldr r1, _020346CC ; =0x021D4130 - mov r0, #4 - ldr r1, [r1] - mov r2, #0x68 - add r1, #0xc - add r1, r1, r5 - bl sub_0203753C -_020346A6: - add r4, r4, #1 - add r5, #0x68 - add r7, r7, #4 - cmp r4, #8 - blt _02034666 - mov r1, #0 - mov r0, #5 - add r2, r1, #0 - bl sub_0203753C - ldr r0, _020346CC ; =0x021D4130 - mov r2, #0 - ldr r1, [r0] - ldr r0, _020346D0 ; =0x000003A5 - strb r2, [r1, r0] - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_020346C8: - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_020346CC: .word 0x021D4130 -_020346D0: .word 0x000003A5 - thumb_func_end sub_02034638 - - thumb_func_start sub_020346D4 -sub_020346D4: ; 0x020346D4 - ldr r0, _020346E0 ; =0x021D4130 - ldr r1, [r0] - ldr r0, _020346E4 ; =0x000003A5 - ldrb r0, [r1, r0] - bx lr - nop -_020346E0: .word 0x021D4130 -_020346E4: .word 0x000003A5 - thumb_func_end sub_020346D4 - - thumb_func_start sub_020346E8 -sub_020346E8: ; 0x020346E8 - push {r4, lr} - add r4, r0, #0 - ldr r0, _02034710 ; =0x021D4130 - ldr r1, [r0] - lsl r0, r4, #2 - add r1, r1, r0 - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r0, [r1, r0] - bl sub_02028EF0 - ldr r0, _02034710 ; =0x021D4130 - mov r2, #0 - ldr r0, [r0] - add r1, r0, r4 - mov r0, #0xe7 - lsl r0, r0, #2 - strb r2, [r1, r0] - pop {r4, pc} - nop -_02034710: .word 0x021D4130 - thumb_func_end sub_020346E8 - - thumb_func_start sub_02034714 -sub_02034714: ; 0x02034714 - ldr r1, _0203472C ; =0x021D4130 - ldr r1, [r1] - add r1, r1, r0 - mov r0, #0xe7 - lsl r0, r0, #2 - ldrb r0, [r1, r0] - cmp r0, #1 - bne _02034728 - mov r0, #1 - bx lr -_02034728: - mov r0, #0 - bx lr - .balign 4, 0 -_0203472C: .word 0x021D4130 - thumb_func_end sub_02034714 - - thumb_func_start sub_02034730 -sub_02034730: ; 0x02034730 - ldr r1, _0203474C ; =0x021D4130 - mov r2, #1 - ldr r1, [r1] - add r1, r1, r0 - mov r0, #0xe7 - lsl r0, r0, #2 - ldrb r0, [r1, r0] - cmp r0, #2 - beq _02034748 - cmp r0, #1 - beq _02034748 - mov r2, #0 -_02034748: - add r0, r2, #0 - bx lr - .balign 4, 0 -_0203474C: .word 0x021D4130 - thumb_func_end sub_02034730 - - thumb_func_start sub_02034750 -sub_02034750: ; 0x02034750 - ldr r1, _02034768 ; =0x021D4130 - ldr r1, [r1] - add r1, r1, r0 - mov r0, #0xe7 - lsl r0, r0, #2 - ldrb r0, [r1, r0] - cmp r0, #2 - bne _02034764 - mov r0, #1 - bx lr -_02034764: - mov r0, #0 - bx lr - .balign 4, 0 -_02034768: .word 0x021D4130 - thumb_func_end sub_02034750 - - thumb_func_start sub_0203476C -sub_0203476C: ; 0x0203476C - ldr r1, _0203477C ; =0x021D4130 - mov r2, #2 - ldr r1, [r1] - add r1, r1, r0 - mov r0, #0xe7 - lsl r0, r0, #2 - strb r2, [r1, r0] - bx lr - .balign 4, 0 -_0203477C: .word 0x021D4130 - thumb_func_end sub_0203476C - - thumb_func_start sub_02034780 -sub_02034780: ; 0x02034780 - ldr r1, _0203479C ; =0x021D4130 - mov r0, #0 - ldr r3, [r1] - mov r1, #0xe7 - lsl r1, r1, #2 -_0203478A: - ldrb r2, [r3, r1] - cmp r2, #1 - beq _0203479A - add r0, r0, #1 - add r3, r3, #1 - cmp r0, #8 - blt _0203478A - mov r0, #0xff -_0203479A: - bx lr - .balign 4, 0 -_0203479C: .word 0x021D4130 - thumb_func_end sub_02034780 - - thumb_func_start sub_020347A0 -sub_020347A0: ; 0x020347A0 - push {r3, r4} - ldr r1, _020347C8 ; =0x021D4130 - mov r0, #0 - ldr r4, [r1] - mov r1, #0xe7 - add r3, r0, #0 - lsl r1, r1, #2 -_020347AE: - ldrb r2, [r4, r1] - cmp r2, #2 - beq _020347B8 - cmp r2, #3 - bne _020347BA -_020347B8: - add r0, r0, #1 -_020347BA: - add r3, r3, #1 - add r4, r4, #1 - cmp r3, #8 - blt _020347AE - pop {r3, r4} - bx lr - nop -_020347C8: .word 0x021D4130 - thumb_func_end sub_020347A0 - - thumb_func_start sub_020347CC -sub_020347CC: ; 0x020347CC - push {r3, r4, r5, r6, r7, lr} - ldr r0, _02034814 ; =0x021D4130 - mov r5, #0 - ldr r0, [r0] - cmp r0, #0 - beq _02034810 - bl sub_02037454 - cmp r0, #0 - bne _020347E4 - add r0, r5, #0 - pop {r3, r4, r5, r6, r7, pc} -_020347E4: - mov r7, #0xe7 - ldr r6, _02034814 ; =0x021D4130 - add r4, r5, #0 - lsl r7, r7, #2 -_020347EC: - lsl r0, r4, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - bne _0203480A - ldr r0, [r6] - add r0, r0, r4 - ldrb r0, [r0, r7] - cmp r0, #0 - beq _0203480A - add r0, r4, #0 - bl sub_020346E8 - mov r5, #1 -_0203480A: - add r4, r4, #1 - cmp r4, #8 - blt _020347EC -_02034810: - add r0, r5, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02034814: .word 0x021D4130 - thumb_func_end sub_020347CC - - thumb_func_start sub_02034818 -sub_02034818: ; 0x02034818 - ldr r1, _02034848 ; =0x021D4130 - ldr r3, [r1] - cmp r3, #0 - bne _02034824 - mov r0, #0 - bx lr -_02034824: - mov r1, #0xe7 - add r2, r3, r0 - lsl r1, r1, #2 - ldrb r1, [r2, r1] - cmp r1, #1 - beq _02034838 - cmp r1, #2 - beq _02034838 - cmp r1, #3 - bne _02034844 -_02034838: - lsl r0, r0, #2 - add r1, r3, r0 - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r0, [r1, r0] - bx lr -_02034844: - mov r0, #0 - bx lr - .balign 4, 0 -_02034848: .word 0x021D4130 - thumb_func_end sub_02034818 - - thumb_func_start sub_0203484C -sub_0203484C: ; 0x0203484C - ldr r1, _0203486C ; =0x021D4130 - ldr r3, [r1] - mov r1, #0xe7 - add r2, r3, r0 - lsl r1, r1, #2 - ldrb r1, [r2, r1] - cmp r1, #0 - beq _02034866 - mov r1, #0x68 - add r3, #0x4c - mul r1, r0 - add r0, r3, r1 - bx lr -_02034866: - mov r0, #0 - bx lr - nop -_0203486C: .word 0x021D4130 - thumb_func_end sub_0203484C - - thumb_func_start sub_02034870 -sub_02034870: ; 0x02034870 - add r1, r0, #0 - ldr r0, _0203487C ; =0x021D4130 - ldr r3, _02034880 ; =sub_0203A378 - ldr r0, [r0] - ldr r0, [r0, #8] - bx r3 - .balign 4, 0 -_0203487C: .word 0x021D4130 -_02034880: .word sub_0203A378 - thumb_func_end sub_02034870 - - thumb_func_start sub_02034884 -sub_02034884: ; 0x02034884 - ldr r1, _020348A4 ; =0x021D4130 - ldr r3, [r1] - mov r1, #0xe7 - add r2, r3, r0 - lsl r1, r1, #2 - ldrb r1, [r2, r1] - cmp r1, #0 - beq _0203489E - mov r1, #0x68 - add r3, #0x58 - mul r1, r0 - add r0, r3, r1 - bx lr -_0203489E: - mov r0, #0 - bx lr - nop -_020348A4: .word 0x021D4130 - thumb_func_end sub_02034884 - - thumb_func_start sub_020348A8 -sub_020348A8: ; 0x020348A8 - ldr r1, _020348C8 ; =0x021D4130 - ldr r3, [r1] - mov r1, #0xe7 - add r2, r3, r0 - lsl r1, r1, #2 - ldrb r1, [r2, r1] - cmp r1, #0 - beq _020348C4 - mov r1, #0x68 - mul r1, r0 - add r0, r3, r1 - add r0, #0x6f - ldrb r0, [r0] - bx lr -_020348C4: - mov r0, #0 - bx lr - .balign 4, 0 -_020348C8: .word 0x021D4130 - thumb_func_end sub_020348A8 - - thumb_func_start sub_020348CC -sub_020348CC: ; 0x020348CC - ldr r1, _020348EC ; =0x021D4130 - ldr r3, [r1] - mov r1, #0xe7 - add r2, r3, r0 - lsl r1, r1, #2 - ldrb r1, [r2, r1] - cmp r1, #0 - beq _020348E8 - mov r1, #0x68 - mul r1, r0 - add r0, r3, r1 - add r0, #0x70 - ldrb r0, [r0] - bx lr -_020348E8: - mov r0, #0 - bx lr - .balign 4, 0 -_020348EC: .word 0x021D4130 - thumb_func_end sub_020348CC - - thumb_func_start sub_020348F0 -sub_020348F0: ; 0x020348F0 - push {r4, r5, r6, lr} - mov r4, #0 - add r5, r4, #0 - add r6, r4, #0 -_020348F8: - lsl r0, r4, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _0203494C - ldr r0, _02034958 ; =0x021D4130 - ldr r0, [r0] - add r1, r0, r4 - mov r0, #0xe7 - lsl r0, r0, #2 - ldrb r0, [r1, r0] - cmp r0, #0 - beq _0203494C - add r0, r4, #1 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _0203494C - ldr r0, _02034958 ; =0x021D4130 - ldr r1, _0203495C ; =0x0000039D - ldr r0, [r0] - add r2, r0, r4 - ldrb r1, [r2, r1] - cmp r1, #0 - beq _0203494C - add r1, r6, #0 - add r2, r0, r5 -_02034934: - add r3, r2, #0 - add r3, #0x74 - ldrb r0, [r2, #0xc] - ldrb r3, [r3] - cmp r0, r3 - beq _02034944 - mov r0, #0 - pop {r4, r5, r6, pc} -_02034944: - add r1, r1, #1 - add r2, r2, #1 - cmp r1, #0x20 - blt _02034934 -_0203494C: - add r4, r4, #1 - add r5, #0x68 - cmp r4, #7 - blt _020348F8 - mov r0, #1 - pop {r4, r5, r6, pc} - .balign 4, 0 -_02034958: .word 0x021D4130 -_0203495C: .word 0x0000039D - thumb_func_end sub_020348F0 - - thumb_func_start sub_02034960 -sub_02034960: ; 0x02034960 - push {r3, r4, r5, r6, r7, lr} - add r7, r0, #0 - ldr r0, _02034A18 ; =0x021D4130 - add r6, r1, #0 - ldr r0, [r0] - cmp r0, #0 - beq _02034A14 - cmp r7, #2 - beq _02034980 - bl sub_0203769C - bl sub_020378AC - mov r1, #1 - and r0, r1 - str r0, [sp] -_02034980: - mov r4, #0 - bl sub_02037454 - cmp r0, #0 - ble _02034A14 - add r5, r4, #0 -_0203498C: - lsl r0, r4, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _02034A08 - ldr r0, _02034A18 ; =0x021D4130 - mov r1, #0xe7 - ldr r0, [r0] - lsl r1, r1, #2 - add r2, r0, r4 - ldrb r1, [r2, r1] - cmp r1, #0 - beq _02034A08 - cmp r7, #0 - bne _020349D2 - add r0, r4, #0 - bl sub_020378AC - mov r1, #1 - and r1, r0 - ldr r0, [sp] - cmp r0, r1 - beq _02034A08 - ldr r0, _02034A18 ; =0x021D4130 - mov r1, #0xdb - ldr r0, [r0] - lsl r1, r1, #2 - add r0, r0, r5 - ldrh r1, [r0, r1] - add r2, r1, r6 - mov r1, #0xdb - lsl r1, r1, #2 - strh r2, [r0, r1] - b _02034A08 -_020349D2: - cmp r7, #1 - bne _020349F8 - add r0, r4, #0 - bl sub_020378AC - mov r1, #1 - and r1, r0 - ldr r0, [sp] - cmp r0, r1 - beq _02034A08 - ldr r0, _02034A18 ; =0x021D4130 - ldr r1, _02034A1C ; =0x0000036E - ldr r0, [r0] - add r0, r0, r5 - ldrh r1, [r0, r1] - add r2, r1, r6 - ldr r1, _02034A1C ; =0x0000036E - strh r2, [r0, r1] - b _02034A08 -_020349F8: - mov r1, #0x37 - add r0, r0, r5 - lsl r1, r1, #4 - ldrh r1, [r0, r1] - add r2, r1, r6 - mov r1, #0x37 - lsl r1, r1, #4 - strh r2, [r0, r1] -_02034A08: - add r5, r5, #6 - add r4, r4, #1 - bl sub_02037454 - cmp r4, r0 - blt _0203498C -_02034A14: - pop {r3, r4, r5, r6, r7, pc} - nop -_02034A18: .word 0x021D4130 -_02034A1C: .word 0x0000036E - thumb_func_end sub_02034960 - - thumb_func_start sub_02034A20 -sub_02034A20: ; 0x02034A20 - push {r4, r5, r6, r7, lr} - sub sp, #0xc - add r7, r0, #0 - bl sub_0202C6F4 - str r0, [sp, #4] - mov r4, #0 - bl sub_02037454 - cmp r0, #0 - ble _02034A88 - add r5, r4, #0 -_02034A38: - add r0, r4, #0 - bl sub_0203484C - add r1, r0, #0 - beq _02034A7C - add r0, r7, #0 - add r2, sp, #8 - bl sub_0203A084 - cmp r0, #0 - beq _02034A52 - cmp r0, #1 - bne _02034A7C -_02034A52: - ldr r0, [sp, #8] - cmp r0, #0 - bge _02034A5C - bl GF_AssertFail -_02034A5C: - ldr r0, _02034AB8 ; =0x021D4130 - mov r2, #0xdb - ldr r0, [r0] - ldr r3, _02034ABC ; =0x0000036E - add r6, r0, r5 - mov r0, #0x37 - lsl r0, r0, #4 - ldrh r0, [r6, r0] - lsl r2, r2, #2 - str r0, [sp] - ldrh r2, [r6, r2] - ldrh r3, [r6, r3] - ldr r0, [sp, #4] - ldr r1, [sp, #8] - bl sub_0202C4F0 -_02034A7C: - add r5, r5, #6 - add r4, r4, #1 - bl sub_02037454 - cmp r4, r0 - blt _02034A38 -_02034A88: - mov r3, #0xdb - mov r2, #0 - lsl r3, r3, #2 - ldr r6, _02034AB8 ; =0x021D4130 - add r1, r2, #0 - add r0, r2, #0 - add r4, r3, #2 - add r5, r3, #4 -_02034A98: - ldr r7, [r6] - add r2, r2, #1 - add r7, r7, r1 - strh r0, [r7, r3] - ldr r7, [r6] - add r7, r7, r1 - strh r0, [r7, r4] - ldr r7, [r6] - add r7, r7, r1 - add r1, r1, #6 - strh r0, [r7, r5] - cmp r2, #8 - blt _02034A98 - add sp, #0xc - pop {r4, r5, r6, r7, pc} - nop -_02034AB8: .word 0x021D4130 -_02034ABC: .word 0x0000036E - thumb_func_end sub_02034A20 - - thumb_func_start sub_02034AC0 -sub_02034AC0: ; 0x02034AC0 - push {r4, lr} - add r4, r0, #0 - cmp r1, #1 - bne _02034AD2 - mov r0, #0 - mov r1, #1 - bl sub_02034960 - b _02034AE2 -_02034AD2: - mov r0, #0 - mvn r0, r0 - cmp r1, r0 - bne _02034AE2 - mov r0, #1 - add r1, r0, #0 - bl sub_02034960 -_02034AE2: - add r0, r4, #0 - bl sub_02034A20 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02034AC0 - - thumb_func_start sub_02034AEC -sub_02034AEC: ; 0x02034AEC - push {r4, lr} - add r4, r0, #0 - mov r0, #2 - bl sub_02034960 - add r0, r4, #0 - bl sub_02034A20 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02034AEC - - thumb_func_start sub_02034B00 -sub_02034B00: ; 0x02034B00 - ldr r1, _02034B08 ; =0x021D4130 - ldr r1, [r1] - str r0, [r1] - bx lr - .balign 4, 0 -_02034B08: .word 0x021D4130 - thumb_func_end sub_02034B00 - - thumb_func_start sub_02034B0C -sub_02034B0C: ; 0x02034B0C - push {r3, r4, r5, r6, r7, lr} - add r4, r0, #0 - ldr r0, _02034BCC ; =0x021D4134 - add r7, r1, #0 - ldr r0, [r0, #8] - cmp r0, #0 - bne _02034BCA - ldr r1, _02034BD0 ; =0x00000D98 - mov r0, #0xf - bl AllocFromHeap - ldr r1, _02034BCC ; =0x021D4134 - ldr r2, _02034BD0 ; =0x00000D98 - str r0, [r1, #8] - mov r1, #0 - bl MIi_CpuFill8 - bl sub_020335B4 - add r1, r0, #0 - mov r0, #0xf - bl AllocFromHeap - ldr r1, _02034BCC ; =0x021D4134 - ldr r2, [r1, #8] - ldr r1, _02034BD4 ; =0x00000D64 - str r0, [r2, r1] - bl sub_020335B4 - add r2, r0, #0 - ldr r0, _02034BCC ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02034BD4 ; =0x00000D64 - ldr r0, [r1, r0] - mov r1, #0 - bl MIi_CpuFill8 - bl sub_020290B4 - add r1, r0, #0 - mov r0, #0xf - bl AllocFromHeap - ldr r1, _02034BCC ; =0x021D4134 - ldr r2, [r1, #8] - ldr r1, _02034BD8 ; =0x00000D7C - str r0, [r2, r1] - bl sub_020290B4 - add r2, r0, #0 - ldr r0, _02034BCC ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02034BD8 ; =0x00000D7C - ldr r0, [r1, r0] - mov r1, #0 - bl MIi_CpuFill8 - mov r0, #0xf - mov r1, #0x90 - bl AllocFromHeap - ldr r2, _02034BCC ; =0x021D4134 - ldr r1, _02034BDC ; =0x00000D84 - ldr r3, [r2, #8] - str r0, [r3, r1] - ldr r6, [r2, #8] - mov r0, #0x1f - ldr r5, [r6, r1] - add r3, r5, #0 - and r3, r0 - mov r0, #0x20 - sub r0, r0, r3 - add r3, r0, r5 - add r0, r1, #4 - str r3, [r6, r0] - ldr r5, _02034BE0 ; =0x00000333 - ldr r3, [r2, #8] - sub r0, r1, #4 - str r5, [r3, r0] - add r0, r1, #0 - ldr r3, [r2, #8] - sub r0, #0xc - str r4, [r3, r0] - ldr r0, [r2, #8] - sub r1, #0x1c - add r0, r0, r1 - bl MailMsg_init - add r0, r7, #0 - bl sub_02034DF0 - bl sub_020DF250 - ldr r1, _02034BCC ; =0x021D4134 - strh r0, [r1] -_02034BCA: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02034BCC: .word 0x021D4134 -_02034BD0: .word 0x00000D98 -_02034BD4: .word 0x00000D64 -_02034BD8: .word 0x00000D7C -_02034BDC: .word 0x00000D84 -_02034BE0: .word 0x00000333 - thumb_func_end sub_02034B0C - - thumb_func_start sub_02034BE4 -sub_02034BE4: ; 0x02034BE4 - ldr r0, _02034BF4 ; =0x021D4134 - ldr r0, [r0, #8] - cmp r0, #0 - beq _02034BF0 - mov r0, #1 - bx lr -_02034BF0: - mov r0, #0 - bx lr - .balign 4, 0 -_02034BF4: .word 0x021D4134 - thumb_func_end sub_02034BE4 - - thumb_func_start sub_02034BF8 -sub_02034BF8: ; 0x02034BF8 - push {r4, r5} - mov r5, #0 - cmp r2, #0 - ble _02034C18 -_02034C00: - ldrb r4, [r0] - ldrb r3, [r1] - cmp r4, r3 - beq _02034C0E - mov r0, #0 - pop {r4, r5} - bx lr -_02034C0E: - add r5, r5, #1 - add r0, r0, #1 - add r1, r1, #1 - cmp r5, r2 - blt _02034C00 -_02034C18: - mov r0, #1 - pop {r4, r5} - bx lr - .balign 4, 0 - thumb_func_end sub_02034BF8 - - thumb_func_start sub_02034C20 -sub_02034C20: ; 0x02034C20 - push {r3, r4, r5, r6, r7, lr} - add r6, r0, #0 - bl sub_0203993C - add r5, r0, #0 - bl sub_02039954 - add r4, r6, #0 - add r7, r0, #0 - add r4, #0x50 - cmp r5, #0xe - beq _02034C62 - ldrb r0, [r4, #4] - bl sub_0203401C - cmp r0, #0 - beq _02034C4C - add r0, r5, #0 - bl sub_0203401C - cmp r0, #0 - bne _02034C62 -_02034C4C: - add r0, r4, #0 - add r0, #0x54 - ldrb r0, [r0] - cmp r0, #0 - beq _02034C5C - ldrb r0, [r4, #4] - cmp r0, #0xa - beq _02034C88 -_02034C5C: - ldrb r0, [r4, #4] - cmp r0, r5 - bne _02034C88 -_02034C62: - cmp r5, #0xe - beq _02034C6C - ldrb r0, [r4, #5] - cmp r0, r7 - bne _02034C88 -_02034C6C: - ldr r1, _02034C8C ; =0x021D4134 - add r0, r6, #0 - ldr r1, [r1, #8] - mov r2, #0xc0 - add r1, #0x54 - bl MIi_CpuCopy8 - ldr r0, _02034C8C ; =0x021D4134 - ldr r1, _02034C90 ; =0x00000D95 - ldr r3, [r0, #8] - mov r0, #0x40 - ldrb r2, [r3, r1] - orr r0, r2 - strb r0, [r3, r1] -_02034C88: - pop {r3, r4, r5, r6, r7, pc} - nop -_02034C8C: .word 0x021D4134 -_02034C90: .word 0x00000D95 - thumb_func_end sub_02034C20 - - thumb_func_start sub_02034C94 -sub_02034C94: ; 0x02034C94 - push {r3, r4, r5, r6, r7, lr} - ldr r0, _02034D50 ; =0x021D4134 - ldr r1, _02034D54 ; =0x00000D95 - ldr r3, [r0, #8] - ldrb r2, [r3, r1] - add r7, r3, #0 - add r7, #0x54 - lsl r0, r2, #0x19 - lsr r0, r0, #0x1f - beq _02034D4E - mov r0, #0x40 - mov r6, #0 - bic r2, r0 - strb r2, [r3, r1] - add r4, r6, #0 - add r5, r6, #0 -_02034CB4: - ldr r0, _02034D50 ; =0x021D4134 - ldr r1, _02034D58 ; =0x00000D44 - ldr r0, [r0, #8] - add r2, r0, r4 - ldrh r1, [r2, r1] - cmp r1, #0 - beq _02034CFC - mov r1, #0x46 - lsl r1, r1, #2 - add r0, r0, r1 - add r0, r0, r5 - add r1, r7, #4 - mov r2, #6 - bl sub_02034BF8 - cmp r0, #0 - beq _02034CFC - ldr r2, _02034D50 ; =0x021D4134 - mov r1, #0x4b - ldr r3, [r2, #8] - lsl r0, r6, #1 - add r3, r3, r0 - ldr r0, _02034D58 ; =0x00000D44 - lsl r1, r1, #2 - strh r1, [r3, r0] - ldr r2, [r2, #8] - sub r1, #0x18 - add r3, r2, r1 - mov r2, #0xc0 - add r1, r6, #0 - mul r1, r2 - add r0, r7, #0 - add r1, r3, r1 - bl MIi_CpuCopy8 - pop {r3, r4, r5, r6, r7, pc} -_02034CFC: - add r6, r6, #1 - add r4, r4, #2 - add r5, #0xc0 - cmp r6, #0x10 - blt _02034CB4 - ldr r0, _02034D50 ; =0x021D4134 - ldr r1, _02034D58 ; =0x00000D44 - ldr r0, [r0, #8] - mov r3, #0 - add r4, r0, #0 -_02034D10: - ldrh r2, [r4, r1] - cmp r2, #0 - beq _02034D1E - add r3, r3, #1 - add r4, r4, #2 - cmp r3, #0x10 - blt _02034D10 -_02034D1E: - cmp r3, #0x10 - bge _02034D4E - lsl r2, r3, #1 - mov r1, #0x4b - add r2, r0, r2 - ldr r0, _02034D58 ; =0x00000D44 - lsl r1, r1, #2 - strh r1, [r2, r0] - ldr r2, _02034D50 ; =0x021D4134 - sub r1, #0x18 - ldr r2, [r2, #8] - add r0, r7, #0 - add r4, r2, r1 - mov r2, #0xc0 - add r1, r3, #0 - mul r1, r2 - add r1, r4, r1 - bl MIi_CpuCopy8 - ldr r0, _02034D50 ; =0x021D4134 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _02034D5C ; =0x00000D74 - strb r2, [r1, r0] -_02034D4E: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02034D50: .word 0x021D4134 -_02034D54: .word 0x00000D95 -_02034D58: .word 0x00000D44 -_02034D5C: .word 0x00000D74 - thumb_func_end sub_02034C94 - - thumb_func_start sub_02034D60 -sub_02034D60: ; 0x02034D60 - push {r3, lr} - cmp r1, #0 - beq _02034D6A - bl sub_020D3F48 -_02034D6A: - ldr r0, _02034D74 ; =0x021D4134 - mov r1, #2 - str r1, [r0, #4] - pop {r3, pc} - nop -_02034D74: .word 0x021D4134 - thumb_func_end sub_02034D60 - - thumb_func_start sub_02034D78 -sub_02034D78: ; 0x02034D78 - ldr r0, _02034D84 ; =0x021D4134 - mov r1, #0 - str r1, [r0, #4] - ldr r3, _02034D88 ; =sub_0201A4CC - mov r0, #4 - bx r3 - .balign 4, 0 -_02034D84: .word 0x021D4134 -_02034D88: .word sub_0201A4CC - thumb_func_end sub_02034D78 - - thumb_func_start sub_02034D8C -sub_02034D8C: ; 0x02034D8C - push {r3, lr} - mov r0, #4 - bl sub_0201A4BC - ldr r0, _02034DB0 ; =0x021D4134 - mov r1, #1 - str r1, [r0, #4] - ldr r1, _02034DB4 ; =sub_02034D60 - mov r0, #8 - mov r2, #0 - bl sub_0209E00C - cmp r0, #1 - beq _02034DAC - bl sub_020D3F48 -_02034DAC: - pop {r3, pc} - nop -_02034DB0: .word 0x021D4134 -_02034DB4: .word sub_02034D60 - thumb_func_end sub_02034D8C - - thumb_func_start sub_02034DB8 -sub_02034DB8: ; 0x02034DB8 - ldr r0, _02034DC8 ; =0x021D4134 - ldr r0, [r0, #4] - cmp r0, #2 - bne _02034DC4 - mov r0, #1 - bx lr -_02034DC4: - mov r0, #0 - bx lr - .balign 4, 0 -_02034DC8: .word 0x021D4134 - thumb_func_end sub_02034DB8 - - thumb_func_start sub_02034DCC -sub_02034DCC: ; 0x02034DCC - ldr r0, _02034DDC ; =0x021D4134 - ldr r0, [r0, #4] - cmp r0, #0 - beq _02034DD8 - mov r0, #1 - bx lr -_02034DD8: - mov r0, #0 - bx lr - .balign 4, 0 -_02034DDC: .word 0x021D4134 - thumb_func_end sub_02034DCC - - thumb_func_start sub_02034DE0 -sub_02034DE0: ; 0x02034DE0 - ldr r3, _02034DE8 ; =sub_0209E248 - ldr r0, _02034DEC ; =sub_02034D78 - mov r1, #0 - bx r3 - .balign 4, 0 -_02034DE8: .word sub_0209E248 -_02034DEC: .word sub_02034D78 - thumb_func_end sub_02034DE0 - - thumb_func_start sub_02034DF0 -sub_02034DF0: ; 0x02034DF0 - push {r4, lr} - ldr r2, _02034E28 ; =0x021D4134 - add r1, r0, #0 - mov r0, #0xd7 - ldr r3, [r2, #8] - mov r4, #0 - lsl r0, r0, #4 - str r4, [r3, r0] - ldr r2, [r2, #8] - sub r0, #0xc - ldr r3, [r2, r0] - mov r0, #0x1f - add r2, r3, #0 - and r2, r0 - mov r0, #0x20 - sub r0, r0, r2 - add r0, r3, r0 - bl sub_02033528 - ldr r0, _02034E28 ; =0x021D4134 - ldr r1, [r0, #8] - mov r0, #0x36 - lsl r0, r0, #6 - ldr r0, [r1, r0] - bl sub_02033234 - pop {r4, pc} - nop -_02034E28: .word 0x021D4134 - thumb_func_end sub_02034DF0 - - thumb_func_start sub_02034E2C -sub_02034E2C: ; 0x02034E2C - push {r3, r4, r5, lr} - mov r4, #0 - ldr r2, _02034E5C ; =0x021D4134 - ldr r0, _02034E60 ; =0x00000D44 - add r5, r4, #0 - add r1, r4, #0 -_02034E38: - ldr r3, [r2, #8] - add r4, r4, #1 - add r3, r3, r5 - add r5, r5, #2 - strh r1, [r3, r0] - cmp r4, #0x10 - blt _02034E38 - ldr r0, _02034E5C ; =0x021D4134 - ldr r2, [r0, #8] - mov r0, #0x45 - lsl r0, r0, #2 - add r0, r2, r0 - mov r2, #3 - lsl r2, r2, #0xa - bl MIi_CpuFill8 - pop {r3, r4, r5, pc} - nop -_02034E5C: .word 0x021D4134 -_02034E60: .word 0x00000D44 - thumb_func_end sub_02034E2C - - thumb_func_start sub_02034E64 -sub_02034E64: ; 0x02034E64 - push {r3, r4} - ldr r1, _02034E84 ; =0x021D4134 - lsl r0, r0, #0x18 - ldr r2, [r1, #8] - ldr r4, _02034E88 ; =0x00000D95 - lsr r0, r0, #0x18 - ldrb r1, [r2, r4] - mov r3, #8 - lsl r0, r0, #0x1f - bic r1, r3 - lsr r0, r0, #0x1c - orr r0, r1 - strb r0, [r2, r4] - pop {r3, r4} - bx lr - nop -_02034E84: .word 0x021D4134 -_02034E88: .word 0x00000D95 - thumb_func_end sub_02034E64 - - thumb_func_start sub_02034E8C -sub_02034E8C: ; 0x02034E8C - push {r4, r5} - ldr r1, _02034EE8 ; =0x021D4134 - ldr r0, _02034EEC ; =0x00000D74 - ldr r3, [r1, #8] - mov r2, #0 - strb r2, [r3, r0] - add r3, r0, #0 - ldr r5, [r1, #8] - add r3, #0x21 - ldrb r4, [r5, r3] - mov r3, #1 - bic r4, r3 - add r3, r0, #0 - add r3, #0x21 - strb r4, [r5, r3] - add r3, r0, #0 - ldr r5, [r1, #8] - add r3, #0x21 - ldrb r4, [r5, r3] - mov r3, #4 - bic r4, r3 - add r3, r0, #0 - add r3, #0x21 - strb r4, [r5, r3] - add r3, r0, #0 - ldr r4, [r1, #8] - add r3, #0x1e - strb r2, [r4, r3] - add r3, r0, #0 - ldr r5, [r1, #8] - add r3, #0x21 - ldrb r4, [r5, r3] - mov r3, #0x10 - bic r4, r3 - add r3, r0, #0 - add r3, #0x21 - strb r4, [r5, r3] - add r3, r0, #0 - ldr r4, [r1, #8] - add r3, #0x20 - strb r2, [r4, r3] - ldr r1, [r1, #8] - add r0, #0x1f - strb r2, [r1, r0] - pop {r4, r5} - bx lr - .balign 4, 0 -_02034EE8: .word 0x021D4134 -_02034EEC: .word 0x00000D74 - thumb_func_end sub_02034E8C - - thumb_func_start sub_02034EF0 -sub_02034EF0: ; 0x02034EF0 - push {r3, r4, r5, lr} - add r5, r1, #0 - add r4, r2, #0 - bl sub_02034E8C - add r0, r5, #0 - bl sub_02034E64 - bl sub_02033A68 - ldr r0, _02034F54 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02034F58 ; =0x00000D93 - ldrb r0, [r1, r0] - cmp r0, #0 - bne _02034F22 - ldr r0, _02034F5C ; =sub_02036904 - mov r1, #0xe - bl sub_020337D0 - ldr r0, _02034F54 ; =0x021D4134 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _02034F58 ; =0x00000D93 - strb r2, [r1, r0] -_02034F22: - ldr r0, _02034F54 ; =0x021D4134 - ldr r3, _02034F60 ; =0x00000D95 - ldr r1, [r0, #8] - mov r2, #0x20 - ldrb r0, [r1, r3] - bic r0, r2 - lsl r2, r4, #0x18 - lsr r2, r2, #0x18 - lsl r2, r2, #0x1f - lsr r2, r2, #0x1a - orr r0, r2 - strb r0, [r1, r3] - bl sub_02033298 - cmp r0, #1 - bne _02034F4E - bl sub_020332C0 - cmp r0, #0 - beq _02034F4E - mov r0, #1 - pop {r3, r4, r5, pc} -_02034F4E: - mov r0, #0 - pop {r3, r4, r5, pc} - nop -_02034F54: .word 0x021D4134 -_02034F58: .word 0x00000D93 -_02034F5C: .word sub_02036904 -_02034F60: .word 0x00000D95 - thumb_func_end sub_02034EF0 - - thumb_func_start sub_02034F64 -sub_02034F64: ; 0x02034F64 - push {r4, lr} - sub sp, #8 - add r4, r1, #0 - bl sub_02034E8C - cmp r4, #0 - beq _02034F76 - bl sub_02034E2C -_02034F76: - ldr r0, _02034FD4 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02034FD8 ; =0x00000D93 - ldrb r0, [r1, r0] - cmp r0, #0 - bne _02034F94 - ldr r0, _02034FDC ; =sub_020367A8 - mov r1, #0xe - bl sub_020337D0 - ldr r0, _02034FD4 ; =0x021D4134 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _02034FD8 ; =0x00000D93 - strb r2, [r1, r0] -_02034F94: - bl sub_02033298 - cmp r0, #1 - bne _02034FCC - ldr r2, _02034FE0 ; =0x020F6A88 - add r0, sp, #0 - ldrb r3, [r2] - add r1, sp, #0 - strb r3, [r0] - ldrb r3, [r2, #1] - strb r3, [r0, #1] - ldrb r3, [r2, #2] - strb r3, [r0, #2] - ldrb r3, [r2, #3] - strb r3, [r0, #3] - ldrb r3, [r2, #4] - ldrb r2, [r2, #5] - strb r3, [r0, #4] - strb r2, [r0, #5] - ldr r0, _02034FE4 ; =sub_02034C20 - mov r2, #0 - bl sub_02032C1C - cmp r0, #0 - beq _02034FCC - add sp, #8 - mov r0, #1 - pop {r4, pc} -_02034FCC: - mov r0, #0 - add sp, #8 - pop {r4, pc} - nop -_02034FD4: .word 0x021D4134 -_02034FD8: .word 0x00000D93 -_02034FDC: .word sub_020367A8 -_02034FE0: .word 0x020F6A88 -_02034FE4: .word sub_02034C20 - thumb_func_end sub_02034F64 - - thumb_func_start sub_02034FE8 -sub_02034FE8: ; 0x02034FE8 - push {r3, lr} - ldr r0, _02035074 ; =0x021D4134 - ldr r1, [r0, #8] - cmp r1, #0 - bne _02034FF6 - mov r0, #1 - pop {r3, pc} -_02034FF6: - ldr r0, _02035078 ; =0x00000D94 - ldrb r0, [r1, r0] - cmp r0, #0 - beq _02035008 - cmp r0, #1 - beq _02035038 - cmp r0, #2 - beq _02035050 - b _0203506E -_02035008: - bl sub_02033990 - cmp r0, #0 - beq _02035020 - bl sub_02032E24 - ldr r0, _02035074 ; =0x021D4134 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _02035078 ; =0x00000D94 - strb r2, [r1, r0] - b _0203506E -_02035020: - bl sub_0203393C - cmp r0, #0 - bne _0203506E - bl sub_02033858 - ldr r0, _02035074 ; =0x021D4134 - mov r2, #2 - ldr r1, [r0, #8] - ldr r0, _02035078 ; =0x00000D94 - strb r2, [r1, r0] - b _0203506E -_02035038: - bl sub_0203393C - cmp r0, #0 - bne _0203506E - bl sub_02033858 - ldr r0, _02035074 ; =0x021D4134 - mov r2, #2 - ldr r1, [r0, #8] - ldr r0, _02035078 ; =0x00000D94 - strb r2, [r1, r0] - b _0203506E -_02035050: - bl sub_02033920 - cmp r0, #0 - beq _0203505C - mov r0, #1 - pop {r3, pc} -_0203505C: - bl sub_02033958 - cmp r0, #0 - beq _0203506E - ldr r0, _02035074 ; =0x021D4134 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _02035078 ; =0x00000D94 - strb r2, [r1, r0] -_0203506E: - mov r0, #0 - pop {r3, pc} - nop -_02035074: .word 0x021D4134 -_02035078: .word 0x00000D94 - thumb_func_end sub_02034FE8 - - thumb_func_start sub_0203507C -sub_0203507C: ; 0x0203507C - push {r3, lr} - ldr r0, _020350A0 ; =0x021D4134 - ldr r2, [r0, #8] - cmp r2, #0 - beq _0203509A - ldr r0, _020350A4 ; =0x00000D92 - ldrb r1, [r2, r0] - cmp r1, #0 - bne _0203509A - mov r1, #1 - strb r1, [r2, r0] - bl sub_02033858 - mov r0, #1 - pop {r3, pc} -_0203509A: - mov r0, #0 - pop {r3, pc} - nop -_020350A0: .word 0x021D4134 -_020350A4: .word 0x00000D92 - thumb_func_end sub_0203507C - - thumb_func_start sub_020350A8 -sub_020350A8: ; 0x020350A8 - push {r3, lr} - ldr r1, _020350CC ; =0x021D4134 - ldr r2, [r1, #8] - cmp r2, #0 - beq _020350C8 - cmp r0, #0 - ldr r0, _020350D0 ; =0x00000D92 - beq _020350BE - mov r1, #2 - strb r1, [r2, r0] - pop {r3, pc} -_020350BE: - mov r1, #0 - strb r1, [r2, r0] - mov r0, #1 - bl sub_02034DF0 -_020350C8: - pop {r3, pc} - nop -_020350CC: .word 0x021D4134 -_020350D0: .word 0x00000D92 - thumb_func_end sub_020350A8 - - thumb_func_start sub_020350D4 -sub_020350D4: ; 0x020350D4 - push {r3, lr} - ldr r0, _0203510C ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02035110 ; =0x00000D7C - ldr r0, [r1, r0] - bl FreeToHeap - ldr r0, _0203510C ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02035114 ; =0x00000D64 - ldr r0, [r1, r0] - bl FreeToHeap - ldr r0, _0203510C ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02035118 ; =0x00000D84 - ldr r0, [r1, r0] - bl FreeToHeap - ldr r0, _0203510C ; =0x021D4134 - ldr r0, [r0, #8] - bl FreeToHeap - ldr r0, _0203510C ; =0x021D4134 - mov r1, #0 - str r1, [r0, #8] - pop {r3, pc} - nop -_0203510C: .word 0x021D4134 -_02035110: .word 0x00000D7C -_02035114: .word 0x00000D64 -_02035118: .word 0x00000D84 - thumb_func_end sub_020350D4 - - thumb_func_start sub_0203511C -sub_0203511C: ; 0x0203511C - push {r4, lr} - bl sub_02037474 - cmp r0, #0 - bne _0203512A - mov r0, #0 - pop {r4, pc} -_0203512A: - ldr r1, _02035148 ; =0x021D4134 - mov r0, #0 - ldr r4, [r1, #8] - ldr r1, _0203514C ; =0x00000D44 - add r3, r0, #0 -_02035134: - ldrh r2, [r4, r1] - cmp r2, #0 - beq _0203513C - add r0, r0, #1 -_0203513C: - add r3, r3, #1 - add r4, r4, #2 - cmp r3, #0x10 - blt _02035134 - pop {r4, pc} - nop -_02035148: .word 0x021D4134 -_0203514C: .word 0x00000D44 - thumb_func_end sub_0203511C - - thumb_func_start sub_02035150 -sub_02035150: ; 0x02035150 - push {r3, r4, r5, lr} - ldr r1, _0203517C ; =0x021D4134 - mov r4, #0 - ldr r5, [r1, #8] - ldr r1, _02035180 ; =0x00000D44 - add r3, r4, #0 -_0203515C: - ldrh r2, [r5, r1] - cmp r2, #0 - beq _0203516C - cmp r4, r0 - bne _0203516A - add r0, r3, #0 - pop {r3, r4, r5, pc} -_0203516A: - add r4, r4, #1 -_0203516C: - add r3, r3, #1 - add r5, r5, #2 - cmp r3, #0x10 - blt _0203515C - bl GF_AssertFail - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203517C: .word 0x021D4134 -_02035180: .word 0x00000D44 - thumb_func_end sub_02035150 - - thumb_func_start sub_02035184 -sub_02035184: ; 0x02035184 - ldr r0, _02035190 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02035194 ; =0x00000D74 - ldrb r0, [r1, r0] - bx lr - nop -_02035190: .word 0x021D4134 -_02035194: .word 0x00000D74 - thumb_func_end sub_02035184 - - thumb_func_start sub_02035198 -sub_02035198: ; 0x02035198 - ldr r0, _020351A4 ; =0x021D4134 - mov r2, #0 - ldr r1, [r0, #8] - ldr r0, _020351A8 ; =0x00000D74 - strb r2, [r1, r0] - bx lr - .balign 4, 0 -_020351A4: .word 0x021D4134 -_020351A8: .word 0x00000D74 - thumb_func_end sub_02035198 - - thumb_func_start sub_020351AC -sub_020351AC: ; 0x020351AC - ldr r1, _020351D4 ; =0x021D4134 - ldr r3, [r1, #8] - lsl r1, r0, #1 - add r2, r3, r1 - ldr r1, _020351D8 ; =0x00000D44 - ldrh r1, [r2, r1] - cmp r1, #0 - beq _020351D0 - mov r1, #0xc0 - add r2, r0, #0 - mul r2, r1 - add r0, r3, r2 - add r1, #0xaa - ldrb r0, [r0, r1] - cmp r0, #0 - bne _020351D2 - mov r0, #1 - bx lr -_020351D0: - mov r0, #0 -_020351D2: - bx lr - .balign 4, 0 -_020351D4: .word 0x021D4134 -_020351D8: .word 0x00000D44 - thumb_func_end sub_020351AC - - thumb_func_start sub_020351DC -sub_020351DC: ; 0x020351DC - push {r4, r5, r6, lr} - add r4, r1, #0 - ldr r1, _02035210 ; =0x021D4134 - mov r5, #0 - ldr r6, [r1, #8] - ldr r1, _02035214 ; =0x00000D44 - add r3, r5, #0 -_020351EA: - ldrh r2, [r6, r1] - cmp r2, #0 - beq _02035204 - cmp r0, r5 - bne _02035202 - add r0, r3, #0 - bl sub_02035798 - add r1, r4, #0 - bl sub_02028EE4 - pop {r4, r5, r6, pc} -_02035202: - add r5, r5, #1 -_02035204: - add r3, r3, #1 - add r6, r6, #2 - cmp r3, #0x10 - blt _020351EA - pop {r4, r5, r6, pc} - nop -_02035210: .word 0x021D4134 -_02035214: .word 0x00000D44 - thumb_func_end sub_020351DC - - thumb_func_start sub_02035218 -sub_02035218: ; 0x02035218 - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_02033298 - cmp r0, #2 - bne _0203522C - bl sub_02032E24 - mov r0, #0 - pop {r3, r4, r5, pc} -_0203522C: - bl sub_02033298 - cmp r0, #1 - bne _02035282 - bl sub_0203993C - ldr r2, _02035288 ; =0x021D4134 - mov r1, #0xc0 - add r4, r5, #0 - mul r4, r1 - ldr r3, [r2, #8] - add r1, #0x8a - add r2, r3, r4 - ldrh r2, [r2, r1] - mov r1, #0xd9 - lsl r1, r1, #4 - strb r2, [r3, r1] - bl sub_0203401C - cmp r0, #0 - beq _0203526C - ldr r1, _02035288 ; =0x021D4134 - mov r0, #1 - ldr r2, [r1, #8] - mov r1, #0x46 - lsl r1, r1, #2 - add r1, r2, r1 - add r1, r1, r4 - mov r2, #0 - bl sub_02032B84 - b _0203527E -_0203526C: - ldr r1, _02035288 ; =0x021D4134 - mov r0, #1 - ldr r2, [r1, #8] - mov r1, #0x45 - lsl r1, r1, #2 - add r1, r2, r1 - add r1, r1, r4 - bl sub_0203373C -_0203527E: - mov r0, #1 - pop {r3, r4, r5, pc} -_02035282: - mov r0, #0 - pop {r3, r4, r5, pc} - nop -_02035288: .word 0x021D4134 - thumb_func_end sub_02035218 - - thumb_func_start sub_0203528C -sub_0203528C: ; 0x0203528C - push {r3, r4, r5, r6, r7, lr} - bl sub_02034C94 - mov r4, #0 - ldr r1, _020352CC ; =0x021D4134 - ldr r0, _020352D0 ; =0x00000D44 - add r5, r4, #0 - mov r2, #1 -_0203529C: - ldr r3, [r1, #8] - add r3, r3, r5 - ldrh r6, [r3, r0] - cmp r6, #0 - beq _020352C0 - beq _020352C0 - ldr r6, _020352D0 ; =0x00000D44 - ldrh r6, [r3, r6] - sub r7, r6, #1 - ldr r6, _020352D0 ; =0x00000D44 - strh r7, [r3, r6] - ldr r3, [r1, #8] - add r7, r3, r5 - ldrh r6, [r7, r6] - cmp r6, #0 - bne _020352C0 - ldr r6, _020352D4 ; =0x00000D74 - strb r2, [r3, r6] -_020352C0: - add r4, r4, #1 - add r5, r5, #2 - cmp r4, #0x10 - blt _0203529C - pop {r3, r4, r5, r6, r7, pc} - nop -_020352CC: .word 0x021D4134 -_020352D0: .word 0x00000D44 -_020352D4: .word 0x00000D74 - thumb_func_end sub_0203528C - - thumb_func_start sub_020352D8 -sub_020352D8: ; 0x020352D8 - push {r3, r4, r5, lr} - bl sub_0203993C - add r5, r0, #0 - bl sub_02035784 - add r4, r0, #0 - cmp r5, #0xf - beq _02035360 - ldr r0, _020353A8 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _020353AC ; =0x00000D88 - ldr r5, [r1, r0] - bl sub_020290B4 - cmp r0, #0x20 - ble _020352FE - bl GF_AssertFail -_020352FE: - bl sub_02028ECC - cmp r0, #0x20 - beq _0203530A - bl GF_AssertFail -_0203530A: - bl sub_02028ECC - add r1, r5, #0 - add r2, r0, #0 - add r0, r4, #0 - add r1, #0x10 - bl MIi_CpuCopy8 - bl sub_020290B4 - add r2, r0, #0 - ldr r0, _020353A8 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _020353B0 ; =0x00000D7C - ldr r0, [r1, r0] - add r1, r5, #0 - add r1, #0x30 - bl MIi_CpuCopy8 - add r0, r4, #0 - bl PlayerProfile_GetTrainerID - str r0, [r5] - bl sub_0203993C - strb r0, [r5, #4] - bl sub_02039954 - strb r0, [r5, #5] - ldr r0, _020353A8 ; =0x021D4134 - mov r2, #8 - ldr r1, [r0, #8] - ldr r0, _020353B4 ; =0x00000D68 - add r0, r1, r0 - add r1, r5, #0 - add r1, #8 - bl MIi_CpuCopy8 - bl sub_02033AB8 - add r5, #0x54 - strb r0, [r5] - b _02035388 -_02035360: - ldr r1, _020353A8 ; =0x021D4134 - ldr r2, [r1, #8] - ldr r1, _020353AC ; =0x00000D88 - ldr r4, [r2, r1] - bl PlayerProfile_GetTrainerID - str r0, [r4] - bl sub_0203993C - strb r0, [r4, #4] - bl sub_02039954 - strb r0, [r4, #5] - ldr r0, _020353A8 ; =0x021D4134 - add r4, #8 - ldr r0, [r0, #8] - add r1, r4, #0 - mov r2, #0x54 - bl MIi_CpuCopy8 -_02035388: - ldr r0, _020353A8 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _020353AC ; =0x00000D88 - ldr r0, [r1, r0] - mov r1, #0x5c - bl DC_FlushRange - ldr r0, _020353A8 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _020353AC ; =0x00000D88 - ldr r0, [r1, r0] - mov r1, #0x5c - bl sub_02033240 - pop {r3, r4, r5, pc} - nop -_020353A8: .word 0x021D4134 -_020353AC: .word 0x00000D88 -_020353B0: .word 0x00000D7C -_020353B4: .word 0x00000D68 - thumb_func_end sub_020352D8 - - thumb_func_start sub_020353B8 -sub_020353B8: ; 0x020353B8 - push {r4, lr} - ldr r0, _02035404 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02035408 ; =0x00000D88 - ldr r4, [r1, r0] - bl sub_02035610 - ldrb r1, [r4, #6] - cmp r1, r0 - beq _02035402 - bl sub_02035610 - strb r0, [r4, #6] - ldr r0, _02035404 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02035408 ; =0x00000D88 - ldr r0, [r1, r0] - mov r1, #0x5c - bl DC_FlushRange - ldr r0, _02035404 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02035408 ; =0x00000D88 - ldr r0, [r1, r0] - mov r1, #0x5c - bl sub_02033240 - ldr r3, _02035404 ; =0x021D4134 - ldr r2, _02035408 ; =0x00000D88 - ldr r4, [r3, #8] - ldrh r3, [r3] - ldr r0, [r4, r2] - sub r2, #8 - ldr r2, [r4, r2] - mov r1, #0x5c - bl sub_020339B4 -_02035402: - pop {r4, pc} - .balign 4, 0 -_02035404: .word 0x021D4134 -_02035408: .word 0x00000D88 - thumb_func_end sub_020353B8 - - thumb_func_start sub_0203540C -sub_0203540C: ; 0x0203540C - push {r4, r5, r6, lr} - sub sp, #8 - add r4, r0, #0 - bl sub_02033298 - add r5, r0, #0 - bl sub_020347CC - add r6, r0, #0 - bl sub_020353B8 - bl sub_020338F4 - cmp r0, #0 - bne _0203544A - bl sub_0203567C - cmp r0, #0 - bne _0203544A - ldr r0, _020355AC ; =0x021D4134 - ldr r3, _020355B0 ; =0x00000D95 - ldr r1, [r0, #8] - ldrb r0, [r1, r3] - lsl r2, r0, #0x1d - lsr r2, r2, #0x1f - beq _0203544A - mov r2, #1 - bic r0, r2 - mov r2, #1 - orr r0, r2 - strb r0, [r1, r3] -_0203544A: - ldr r0, _020355AC ; =0x021D4134 - ldr r3, _020355B4 ; =0x00000D8E - ldr r2, [r0, #8] - ldr r0, _020355B8 ; =0x0000FFFF - ldrh r1, [r2, r3] - cmp r1, r0 - bne _0203545A - strh r4, [r2, r3] -_0203545A: - ldr r0, _020355AC ; =0x021D4134 - ldr r3, _020355B0 ; =0x00000D95 - ldr r1, [r0, #8] - ldrb r0, [r1, r3] - lsl r2, r0, #0x1e - lsr r2, r2, #0x1f - beq _02035490 - sub r2, r3, #7 - ldrh r2, [r1, r2] - cmp r2, r4 - bls _0203547A - mov r2, #1 - bic r0, r2 - mov r2, #1 - orr r0, r2 - strb r0, [r1, r3] -_0203547A: - cmp r6, #0 - beq _02035490 - ldr r0, _020355AC ; =0x021D4134 - ldr r2, _020355B0 ; =0x00000D95 - ldr r0, [r0, #8] - mov r1, #1 - ldrb r3, [r0, r2] - bic r3, r1 - mov r1, #1 - orr r1, r3 - strb r1, [r0, r2] -_02035490: - bl sub_020332AC - cmp r0, #0x19 - bne _0203549E - mov r0, #0 - bl sub_020399DC -_0203549E: - cmp r5, #9 - bls _020354A4 - b _020355A6 -_020354A4: - add r0, r5, r5 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_020354B0: ; jump table - .short _020354C4 - _020354B0 - 2 ; case 0 - .short _020354E4 - _020354B0 - 2 ; case 1 - .short _020355A6 - _020354B0 - 2 ; case 2 - .short _020355A6 - _020354B0 - 2 ; case 3 - .short _020355A6 - _020354B0 - 2 ; case 4 - .short _020355A6 - _020354B0 - 2 ; case 5 - .short _020355A6 - _020354B0 - 2 ; case 6 - .short _02035528 - _020354B0 - 2 ; case 7 - .short _0203550E - _020354B0 - 2 ; case 8 - .short _0203550E - _020354B0 - 2 ; case 9 -_020354C4: - ldr r0, _020355AC ; =0x021D4134 - ldr r2, [r0, #8] - ldr r0, _020355BC ; =0x00000D92 - ldrb r1, [r2, r0] - cmp r1, #1 - bne _020354D8 - bl sub_020350D4 - add sp, #8 - pop {r4, r5, r6, pc} -_020354D8: - cmp r1, #2 - bne _020355A6 - mov r1, #3 - strb r1, [r2, r0] - add sp, #8 - pop {r4, r5, r6, pc} -_020354E4: - ldr r0, _020355AC ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _020355BC ; =0x00000D92 - ldrb r0, [r1, r0] - cmp r0, #1 - bne _020354F8 - bl sub_020338D0 - cmp r0, #0 - bne _020355A6 -_020354F8: - ldr r0, _020355AC ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _020355BC ; =0x00000D92 - ldrb r0, [r1, r0] - cmp r0, #2 - bne _020355A6 - bl sub_020338D0 - add sp, #8 - cmp r0, #0 - pop {r4, r5, r6, pc} -_0203550E: - ldr r0, _020355AC ; =0x021D4134 - ldr r3, [r0, #8] - cmp r3, #0 - beq _020355A6 - ldr r1, _020355B0 ; =0x00000D95 - mov r0, #1 - ldrb r2, [r3, r1] - add sp, #8 - bic r2, r0 - mov r0, #1 - orr r0, r2 - strb r0, [r3, r1] - pop {r4, r5, r6, pc} -_02035528: - bl sub_02033468 - ldr r3, _020355AC ; =0x021D4134 - ldr r2, _020355C0 ; =0x00000D91 - ldr r4, [r3, #8] - ldrb r1, [r4, r2] - cmp r1, #0 - bne _02035544 - sub r1, r2, #5 - strh r0, [r4, r1] - ldr r0, [r3, #8] - mov r1, #5 - strb r1, [r0, r2] - b _02035548 -_02035544: - sub r0, r1, #1 - strb r0, [r4, r2] -_02035548: - ldr r0, _020355AC ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _020355C4 ; =0x00000D8C - ldrh r5, [r1, r0] - add r0, #9 - ldrb r0, [r1, r0] - lsl r0, r0, #0x1c - lsr r0, r0, #0x1f - beq _02035562 - bl sub_020DF250 - ldr r1, _020355AC ; =0x021D4134 - strh r0, [r1] -_02035562: - bl sub_020352D8 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r4, r0, #0 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02035724 - str r0, [sp] - ldr r1, _020355AC ; =0x021D4134 - ldr r0, _020355B0 ; =0x00000D95 - ldr r2, [r1, #8] - add r3, r4, #0 - ldrb r0, [r2, r0] - add r2, r5, #0 - lsl r0, r0, #0x1a - lsr r0, r0, #0x1f - str r0, [sp, #4] - ldrh r1, [r1] - mov r0, #0 - bl sub_02033668 - ldr r0, _020355AC ; =0x021D4134 - ldr r1, [r0, #8] - mov r0, #0xd9 - lsl r0, r0, #4 - strb r5, [r1, r0] -_020355A6: - add sp, #8 - pop {r4, r5, r6, pc} - nop -_020355AC: .word 0x021D4134 -_020355B0: .word 0x00000D95 -_020355B4: .word 0x00000D8E -_020355B8: .word 0x0000FFFF -_020355BC: .word 0x00000D92 -_020355C0: .word 0x00000D91 -_020355C4: .word 0x00000D8C - thumb_func_end sub_0203540C - - thumb_func_start sub_020355C8 -sub_020355C8: ; 0x020355C8 - push {r3, lr} - ldr r1, _020355D8 ; =0x021D4134 - ldr r1, [r1, #8] - cmp r1, #0 - beq _020355D6 - bl sub_0203540C -_020355D6: - pop {r3, pc} - .balign 4, 0 -_020355D8: .word 0x021D4134 - thumb_func_end sub_020355C8 - - thumb_func_start sub_020355DC -sub_020355DC: ; 0x020355DC - push {r4, lr} - add r4, r0, #0 - ldr r0, _0203560C ; =0x021D4134 - ldr r0, [r0, #8] - cmp r0, #0 - bne _020355EC - mov r0, #0 - pop {r4, pc} -_020355EC: - bl sub_02033298 - cmp r0, #4 - beq _020355F8 - mov r0, #0 - pop {r4, pc} -_020355F8: - bl sub_02033250 - mov r2, #1 - add r1, r2, #0 - lsl r1, r4 - tst r0, r1 - bne _02035608 - mov r2, #0 -_02035608: - add r0, r2, #0 - pop {r4, pc} - .balign 4, 0 -_0203560C: .word 0x021D4134 - thumb_func_end sub_020355DC - - thumb_func_start sub_02035610 -sub_02035610: ; 0x02035610 - push {r3, r4, r5, lr} - mov r4, #0 - add r5, r4, #0 -_02035616: - lsl r0, r5, #0x10 - lsr r0, r0, #0x10 - bl sub_020355DC - cmp r0, #0 - beq _02035624 - add r4, r4, #1 -_02035624: - add r5, r5, #1 - cmp r5, #8 - blt _02035616 - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_02035610 - - thumb_func_start sub_02035630 -sub_02035630: ; 0x02035630 - ldr r0, _02035648 ; =0x021D4134 - ldr r1, [r0, #8] - cmp r1, #0 - beq _02035644 - ldr r0, _0203564C ; =0x00000D92 - ldrb r0, [r1, r0] - cmp r0, #3 - bne _02035644 - mov r0, #1 - bx lr -_02035644: - mov r0, #0 - bx lr - .balign 4, 0 -_02035648: .word 0x021D4134 -_0203564C: .word 0x00000D92 - thumb_func_end sub_02035630 - - thumb_func_start sub_02035650 -sub_02035650: ; 0x02035650 - ldr r0, _02035660 ; =0x021D4134 - ldr r0, [r0, #8] - cmp r0, #0 - beq _0203565C - mov r0, #1 - bx lr -_0203565C: - mov r0, #0 - bx lr - .balign 4, 0 -_02035660: .word 0x021D4134 - thumb_func_end sub_02035650 - - thumb_func_start sub_02035664 -sub_02035664: ; 0x02035664 - push {r3, lr} - ldr r0, _02035678 ; =0x021D4134 - ldr r0, [r0, #8] - cmp r0, #0 - beq _02035674 - bl sub_02033920 - pop {r3, pc} -_02035674: - mov r0, #1 - pop {r3, pc} - .balign 4, 0 -_02035678: .word 0x021D4134 - thumb_func_end sub_02035664 - - thumb_func_start sub_0203567C -sub_0203567C: ; 0x0203567C - push {r3, lr} - ldr r0, _02035694 ; =0x021D4134 - ldr r0, [r0, #8] - cmp r0, #0 - beq _02035690 - bl sub_02033250 - ldr r1, _02035698 ; =0x0000FFFE - and r0, r1 - pop {r3, pc} -_02035690: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 -_02035694: .word 0x021D4134 -_02035698: .word 0x0000FFFE - thumb_func_end sub_0203567C - - thumb_func_start sub_0203569C -sub_0203569C: ; 0x0203569C - ldr r0, _020356B8 ; =0x021D4134 - ldr r1, [r0, #8] - cmp r1, #0 - beq _020356B2 - ldr r0, _020356BC ; =0x00000D95 - ldrb r0, [r1, r0] - lsl r0, r0, #0x1f - lsr r0, r0, #0x1f - beq _020356B2 - mov r0, #1 - bx lr -_020356B2: - mov r0, #0 - bx lr - nop -_020356B8: .word 0x021D4134 -_020356BC: .word 0x00000D95 - thumb_func_end sub_0203569C - - thumb_func_start sub_020356C0 -sub_020356C0: ; 0x020356C0 - push {r3, r4} - ldr r1, _020356E4 ; =0x021D4134 - ldr r2, [r1, #8] - cmp r2, #0 - beq _020356DE - ldr r4, _020356E8 ; =0x00000D95 - lsl r0, r0, #0x18 - ldrb r1, [r2, r4] - lsr r0, r0, #0x18 - mov r3, #4 - lsl r0, r0, #0x1f - bic r1, r3 - lsr r0, r0, #0x1d - orr r0, r1 - strb r0, [r2, r4] -_020356DE: - pop {r3, r4} - bx lr - nop -_020356E4: .word 0x021D4134 -_020356E8: .word 0x00000D95 - thumb_func_end sub_020356C0 - - thumb_func_start sub_020356EC -sub_020356EC: ; 0x020356EC - push {r4, r5} - ldr r5, _02035718 ; =0x021D4134 - ldr r2, [r5, #8] - cmp r2, #0 - beq _02035712 - ldr r4, _0203571C ; =0x00000D95 - lsl r0, r0, #0x18 - ldrb r1, [r2, r4] - lsr r0, r0, #0x18 - mov r3, #2 - lsl r0, r0, #0x1f - bic r1, r3 - lsr r0, r0, #0x1e - orr r0, r1 - strb r0, [r2, r4] - ldr r2, _02035720 ; =0x0000FFFF - ldr r1, [r5, #8] - sub r0, r4, #7 - strh r2, [r1, r0] -_02035712: - pop {r4, r5} - bx lr - nop -_02035718: .word 0x021D4134 -_0203571C: .word 0x00000D95 -_02035720: .word 0x0000FFFF - thumb_func_end sub_020356EC - - thumb_func_start sub_02035724 -sub_02035724: ; 0x02035724 - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_020DEFD4 - add r4, r0, #0 - cmp r5, #0x29 - blo _02035736 - bl GF_AssertFail -_02035736: - cmp r5, #0xa - bne _02035740 - lsl r0, r4, #0xe - lsr r0, r0, #0x10 - pop {r3, r4, r5, pc} -_02035740: - cmp r5, #9 - beq _02035748 - cmp r5, #0xd - bne _0203574E -_02035748: - lsl r0, r4, #0xe - lsr r0, r0, #0x10 - pop {r3, r4, r5, pc} -_0203574E: - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_02035724 - - thumb_func_start sub_02035754 -sub_02035754: ; 0x02035754 - ldr r1, _0203577C ; =0x021D4134 - ldr r3, [r1, #8] - cmp r3, #0 - beq _02035776 - lsl r1, r0, #1 - add r2, r3, r1 - ldr r1, _02035780 ; =0x00000D44 - ldrh r1, [r2, r1] - cmp r1, #0 - beq _02035776 - mov r1, #0x45 - lsl r1, r1, #2 - add r2, r3, r1 - mov r1, #0xc0 - mul r1, r0 - add r0, r2, r1 - bx lr -_02035776: - mov r0, #0 - bx lr - nop -_0203577C: .word 0x021D4134 -_02035780: .word 0x00000D44 - thumb_func_end sub_02035754 - - thumb_func_start sub_02035784 -sub_02035784: ; 0x02035784 - ldr r0, _02035790 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02035794 ; =0x00000D78 - ldr r0, [r1, r0] - bx lr - nop -_02035790: .word 0x021D4134 -_02035794: .word 0x00000D78 - thumb_func_end sub_02035784 - - thumb_func_start sub_02035798 -sub_02035798: ; 0x02035798 - ldr r1, _020357BC ; =0x021D4134 - ldr r3, [r1, #8] - lsl r1, r0, #1 - add r2, r3, r1 - ldr r1, _020357C0 ; =0x00000D44 - ldrh r1, [r2, r1] - cmp r1, #0 - bne _020357AC - mov r0, #0 - bx lr -_020357AC: - mov r1, #0x59 - lsl r1, r1, #2 - add r2, r3, r1 - mov r1, #0xc0 - mul r1, r0 - add r0, r2, r1 - add r0, #0x10 - bx lr - .balign 4, 0 -_020357BC: .word 0x021D4134 -_020357C0: .word 0x00000D44 - thumb_func_end sub_02035798 - - thumb_func_start sub_020357C4 -sub_020357C4: ; 0x020357C4 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, _020357F4 ; =0x021D4134 - add r4, r1, #0 - ldr r0, [r0, #8] - cmp r0, #0 - beq _020357F0 - cmp r4, #8 - blt _020357DA - bl GF_AssertFail -_020357DA: - ldr r1, _020357F4 ; =0x021D4134 - add r0, r5, #0 - ldr r2, [r1, #8] - ldr r1, _020357F8 ; =0x00000D14 - add r3, r2, r1 - mov r2, #6 - add r1, r4, #0 - mul r1, r2 - add r1, r3, r1 - bl MIi_CpuCopy8 -_020357F0: - pop {r3, r4, r5, pc} - nop -_020357F4: .word 0x021D4134 -_020357F8: .word 0x00000D14 - thumb_func_end sub_020357C4 - - thumb_func_start sub_020357FC -sub_020357FC: ; 0x020357FC - ldr r0, _02035814 ; =0x021D4134 - ldr r1, [r0, #8] - cmp r1, #0 - beq _0203580E - ldr r0, _02035818 ; =0x00000D95 - ldrb r0, [r1, r0] - lsl r0, r0, #0x1b - lsr r0, r0, #0x1f - bx lr -_0203580E: - mov r0, #0 - bx lr - nop -_02035814: .word 0x021D4134 -_02035818: .word 0x00000D95 - thumb_func_end sub_020357FC - - thumb_func_start sub_0203581C -sub_0203581C: ; 0x0203581C - ldr r0, _02035830 ; =0x021D4134 - ldr r3, [r0, #8] - cmp r3, #0 - beq _0203582E - ldr r1, _02035834 ; =0x00000D95 - mov r0, #0x10 - ldrb r2, [r3, r1] - orr r0, r2 - strb r0, [r3, r1] -_0203582E: - bx lr - .balign 4, 0 -_02035830: .word 0x021D4134 -_02035834: .word 0x00000D95 - thumb_func_end sub_0203581C - - thumb_func_start sub_02035838 -sub_02035838: ; 0x02035838 - ldr r1, _02035848 ; =0x021D4134 - ldr r3, _0203584C ; =MIi_CpuCopy8 - ldr r2, [r1, #8] - ldr r1, _02035850 ; =0x00000D68 - add r1, r2, r1 - mov r2, #8 - bx r3 - nop -_02035848: .word 0x021D4134 -_0203584C: .word MIi_CpuCopy8 -_02035850: .word 0x00000D68 - thumb_func_end sub_02035838 - - thumb_func_start sub_02035854 -sub_02035854: ; 0x02035854 - push {r4, lr} - add r4, r0, #0 - bl sub_020290B4 - ldr r1, _02035870 ; =0x021D4134 - add r2, r0, #0 - ldr r3, [r1, #8] - ldr r1, _02035874 ; =0x00000D7C - add r0, r4, #0 - ldr r1, [r3, r1] - bl MIi_CpuCopy8 - pop {r4, pc} - nop -_02035870: .word 0x021D4134 -_02035874: .word 0x00000D7C - thumb_func_end sub_02035854 - - thumb_func_start sub_02035878 -sub_02035878: ; 0x02035878 - ldr r0, _02035884 ; =0x021D4134 - ldr r1, [r0, #8] - ldr r0, _02035888 ; =0x00000D7C - ldr r0, [r1, r0] - bx lr - nop -_02035884: .word 0x021D4134 -_02035888: .word 0x00000D7C - thumb_func_end sub_02035878 - - thumb_func_start sub_0203588C -sub_0203588C: ; 0x0203588C - push {r4, lr} - bl sub_020352D8 - ldr r3, _020358A8 ; =0x021D4134 - ldr r2, _020358AC ; =0x00000D88 - ldr r4, [r3, #8] - ldrh r3, [r3] - ldr r0, [r4, r2] - sub r2, #8 - ldr r2, [r4, r2] - mov r1, #0x5c - bl sub_020339B4 - pop {r4, pc} - .balign 4, 0 -_020358A8: .word 0x021D4134 -_020358AC: .word 0x00000D88 - thumb_func_end sub_0203588C - - thumb_func_start sub_020358B0 -sub_020358B0: ; 0x020358B0 - ldr r3, _020358B4 ; =sub_02033A44 - bx r3 - .balign 4, 0 -_020358B4: .word sub_02033A44 - thumb_func_end sub_020358B0 - - thumb_func_start sub_020358B8 -sub_020358B8: ; 0x020358B8 - push {r3, lr} - ldr r1, _020358CC ; =0x021D4134 - mov r2, #0x54 - ldr r1, [r1, #8] - bl MIi_CpuCopy8 - bl sub_0203588C - pop {r3, pc} - nop -_020358CC: .word 0x021D4134 - thumb_func_end sub_020358B8 - - thumb_func_start sub_020358D0 -sub_020358D0: ; 0x020358D0 - ldr r1, _020358F8 ; =0x021D4134 - ldr r3, [r1, #8] - cmp r3, #0 - beq _020358F4 - lsl r1, r0, #1 - add r2, r3, r1 - ldr r1, _020358FC ; =0x00000D44 - ldrh r1, [r2, r1] - cmp r1, #0 - beq _020358F4 - mov r1, #0x59 - lsl r1, r1, #2 - add r2, r3, r1 - mov r1, #0xc0 - mul r1, r0 - add r0, r2, r1 - add r0, #8 - bx lr -_020358F4: - mov r0, #0 - bx lr - .balign 4, 0 -_020358F8: .word 0x021D4134 -_020358FC: .word 0x00000D44 - thumb_func_end sub_020358D0 - - thumb_func_start sub_02035900 -sub_02035900: ; 0x02035900 - push {r4, r5, r6, lr} - add r5, r1, #0 - mov r4, #0 - ldr r1, _02035AB8 ; =0x021D4140 - cmp r0, #0 - strb r4, [r1, #1] - bne _02035910 - b _02035A58 -_02035910: - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r6, r0, #1 - ldr r0, _02035AB8 ; =0x021D4140 - ldr r0, [r0, #8] - cmp r0, #0 - beq _0203592A - mov r0, #1 - pop {r4, r5, r6, pc} -_0203592A: - mov r0, #0xf - bl sub_020379A0 - mov r1, #0x6e - mov r0, #0xf - lsl r1, r1, #4 - bl AllocFromHeap - ldr r2, _02035AB8 ; =0x021D4140 - mov r1, #0x1f - add r3, r0, #0 - and r3, r1 - mov r1, #0x20 - sub r1, r1, r3 - str r0, [r2, #4] - add r0, r1, r0 - str r0, [r2, #8] - mov r2, #0x1b - add r1, r4, #0 - lsl r2, r2, #6 - bl MIi_CpuFill8 - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _02035972 - ldr r0, _02035AB8 ; =0x021D4140 - lsl r2, r5, #1 - ldr r1, [r0, #8] - mov r0, #0x69 - add r2, #0x40 - lsl r0, r0, #4 - str r2, [r1, r0] - b _0203597E -_02035972: - ldr r0, _02035AB8 ; =0x021D4140 - add r5, #0x40 - ldr r1, [r0, #8] - mov r0, #0x69 - lsl r0, r0, #4 - str r5, [r1, r0] -_0203597E: - ldr r2, _02035AB8 ; =0x021D4140 - mov r1, #0x69 - ldr r0, [r2, #8] - lsl r1, r1, #4 - ldr r3, [r0, r1] - add r5, r3, #0 - mul r5, r6 - sub r3, r1, #4 - str r5, [r0, r3] - add r0, r1, #0 - ldr r3, [r2, #8] - mov r5, #0 - add r0, #0x1d - strb r5, [r3, r0] - add r0, r1, #0 - ldr r3, [r2, #8] - mov r5, #0x2a - add r0, #0x1e - strb r5, [r3, r0] - ldr r2, [r2, #8] - mov r0, #0xf - ldr r1, [r2, r1] - lsl r1, r1, #1 - bl AllocFromHeap - ldr r2, _02035AB8 ; =0x021D4140 - mov r1, #0x49 - ldr r3, [r2, #8] - lsl r1, r1, #4 - str r0, [r3, r1] - mov r1, #0x69 - ldr r2, [r2, #8] - lsl r1, r1, #4 - ldr r1, [r2, r1] - mov r0, #0xf - bl AllocFromHeap - ldr r2, _02035AB8 ; =0x021D4140 - ldr r1, _02035ABC ; =0x00000494 - ldr r3, [r2, #8] - str r0, [r3, r1] - ldr r2, [r2, #8] - ldr r1, _02035AC0 ; =0x0000068C - mov r0, #0xf - ldr r1, [r2, r1] - bl AllocFromHeap - ldr r2, _02035AB8 ; =0x021D4140 - ldr r1, _02035AC4 ; =0x0000048C - ldr r3, [r2, #8] - str r0, [r3, r1] - ldr r2, [r2, #8] - ldr r1, _02035AC0 ; =0x0000068C - mov r0, #0xf - ldr r1, [r2, r1] - bl AllocFromHeap - ldr r1, _02035AB8 ; =0x021D4140 - ldr r2, [r1, #8] - ldr r1, _02035AC8 ; =0x00000488 - str r0, [r2, r1] - bl sub_0203993C - cmp r0, #0xa - bne _02035A2C - ldr r0, _02035AB8 ; =0x021D4140 - mov r2, #0x16 - ldr r3, [r0, #8] - lsl r2, r2, #6 - add r0, r3, r2 - sub r2, #0xe8 - mov r1, #0x64 - add r2, r3, r2 - bl sub_02033F44 - ldr r0, _02035AB8 ; =0x021D4140 - mov r2, #0x5a - mov r1, #0x32 - ldr r3, [r0, #8] - lsl r2, r2, #4 - add r0, r3, r2 - sub r2, #0x90 - lsl r1, r1, #4 - add r2, r3, r2 - bl sub_02033F44 - b _02035A64 -_02035A2C: - ldr r0, _02035AB8 ; =0x021D4140 - mov r2, #0x16 - ldr r3, [r0, #8] - lsl r2, r2, #6 - add r0, r3, r2 - sub r2, #0xe8 - mov r1, #0x14 - add r2, r3, r2 - bl sub_02033F44 - ldr r0, _02035AB8 ; =0x021D4140 - mov r2, #0x5a - add r1, r5, #0 - ldr r3, [r0, #8] - lsl r2, r2, #4 - add r0, r3, r2 - sub r2, #0x90 - add r1, #0xee - add r2, r3, r2 - bl sub_02033F44 - b _02035A64 -_02035A58: - ldr r0, [r1, #8] - mov r4, #1 - cmp r0, #0 - bne _02035A64 - bl GF_AssertFail -_02035A64: - ldr r2, _02035AB8 ; =0x021D4140 - ldr r1, _02035ACC ; =0x00000694 - ldr r3, [r2, #8] - mov r0, #0 - strh r0, [r3, r1] - mov r5, #0xff - add r1, #0x12 -_02035A72: - ldr r3, [r2, #8] - add r3, r3, r0 - add r0, r0, #1 - strb r5, [r3, r1] - cmp r0, #4 - blt _02035A72 - cmp r4, #0 - bne _02035A86 - bl sub_02035DA4 -_02035A86: - ldr r0, _02035AB8 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02035AD0 ; =0x0000062C - add r0, r1, r0 - bl sub_0203778C - cmp r4, #0 - bne _02035AA8 - mov r1, #0 - ldr r0, _02035AD4 ; =sub_020360EC - add r2, r1, #0 - bl sub_0200E33C - ldr r1, _02035AB8 ; =0x021D4140 - ldr r2, [r1, #8] - ldr r1, _02035AD8 ; =0x0000057C - str r0, [r2, r1] -_02035AA8: - ldr r0, _02035AB8 ; =0x021D4140 - mov r2, #0 - ldr r1, [r0, #8] - ldr r0, _02035ADC ; =0x000006B6 - strb r2, [r1, r0] - mov r0, #1 - pop {r4, r5, r6, pc} - nop -_02035AB8: .word 0x021D4140 -_02035ABC: .word 0x00000494 -_02035AC0: .word 0x0000068C -_02035AC4: .word 0x0000048C -_02035AC8: .word 0x00000488 -_02035ACC: .word 0x00000694 -_02035AD0: .word 0x0000062C -_02035AD4: .word sub_020360EC -_02035AD8: .word 0x0000057C -_02035ADC: .word 0x000006B6 - thumb_func_end sub_02035900 - - thumb_func_start sub_02035AE0 -sub_02035AE0: ; 0x02035AE0 - push {r3, r4, r5, r6, r7, lr} - sub sp, #8 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - mov r2, #0x66 - ldr r3, _02035D5C ; =0x021D4140 - add r7, r0, #1 - ldr r0, [r3, #8] - mov r1, #0 - lsl r2, r2, #4 - strb r1, [r0, r2] - add r0, r2, #1 - ldr r4, [r3, #8] - add r2, #0x2c - strb r1, [r4, r0] - ldr r3, [r3, #8] - ldr r0, _02035D60 ; =0x0000048C - ldr r2, [r3, r2] - ldr r0, [r3, r0] - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - mov r2, #0x60 - ldr r1, [r0, #8] - ldr r0, _02035D64 ; =0x0000051C - add r0, r1, r0 - mov r1, #0 - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02035D68 ; =0x0000068C - ldr r0, [r1, r0] - add r1, r7, #0 - bl _s32_div_f - add r4, r0, #0 - mov r0, #0 - str r0, [sp, #4] - cmp r7, #0 - ble _02035B62 - add r6, r0, #0 - add r5, r0, #0 -_02035B3E: - ldr r0, _02035D5C ; =0x021D4140 - ldr r2, _02035D60 ; =0x0000048C - ldr r1, [r0, #8] - ldr r0, _02035D64 ; =0x0000051C - add r0, r1, r0 - ldr r1, [r1, r2] - add r0, r0, r5 - add r1, r1, r6 - add r2, r4, #0 - bl sub_02033AE0 - ldr r0, [sp, #4] - add r6, r6, r4 - add r0, r0, #1 - add r5, #0xc - str r0, [sp, #4] - cmp r0, r7 - blt _02035B3E -_02035B62: - ldr r0, _02035D5C ; =0x021D4140 - ldr r2, _02035D68 ; =0x0000068C - ldr r3, [r0, #8] - ldr r0, _02035D6C ; =0x00000488 - ldr r2, [r3, r2] - ldr r0, [r3, r0] - mov r1, #0 - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - mov r2, #0x60 - ldr r1, [r0, #8] - mov r0, #0x4b - lsl r0, r0, #4 - add r0, r1, r0 - mov r1, #0 - bl MIi_CpuFill8 - mov r0, #0 - str r0, [sp] - cmp r7, #0 - ble _02035BB8 - add r6, r0, #0 - add r5, r0, #0 -_02035B92: - ldr r0, _02035D5C ; =0x021D4140 - ldr r2, _02035D6C ; =0x00000488 - ldr r1, [r0, #8] - mov r0, #0x4b - lsl r0, r0, #4 - add r0, r1, r0 - ldr r1, [r1, r2] - add r0, r0, r5 - add r1, r1, r6 - add r2, r4, #0 - bl sub_02033AE0 - ldr r0, [sp] - add r6, r6, r4 - add r0, r0, #1 - add r5, #0xc - str r0, [sp] - cmp r0, r7 - blt _02035B92 -_02035BB8: - ldr r0, _02035D5C ; =0x021D4140 - mov r2, #6 - ldr r1, [r0, #8] - mov r0, #0xc2 - lsl r0, r0, #2 - add r0, r1, r0 - mov r1, #0 - lsl r2, r2, #6 - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - mov r1, #0xc2 - ldr r2, [r0, #8] - mov r0, #0x51 - lsl r0, r0, #4 - lsl r1, r1, #2 - add r0, r2, r0 - add r1, r2, r1 - mov r2, #6 - lsl r2, r2, #6 - bl sub_02033AE0 - ldr r0, _02035D5C ; =0x021D4140 - mov r1, #0xee - ldr r0, [r0, #8] - add r2, r1, #0 - add r0, #0x80 - add r2, #0x92 - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - ldr r1, [r0, #8] - mov r0, #5 - lsl r0, r0, #6 - add r0, r1, r0 - mov r1, #0xee - add r2, r1, #0 - add r2, #0x92 - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - mov r2, #2 - ldr r0, [r0, #8] - lsl r2, r2, #8 - add r0, r0, r2 - mov r1, #0 - sub r2, #0xf8 - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - mov r2, #2 - ldr r1, [r0, #8] - ldr r0, _02035D70 ; =0x00000498 - lsl r2, r2, #8 - add r0, r1, r0 - add r1, r1, r2 - sub r2, #0xf8 - bl sub_02033AE0 - ldr r0, _02035D5C ; =0x021D4140 - mov r1, #0xee - ldr r0, [r0, #8] - mov r2, #0x26 - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - mov r1, #0xee - ldr r0, [r0, #8] - mov r2, #0x26 - add r0, #0x40 - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - mov r2, #0xff - ldr r1, [r0, #8] - strb r2, [r1] - ldr r1, [r0, #8] - add r1, #0x40 - strb r2, [r1] - ldr r3, [r0, #8] - mov r2, #0x69 - mov r0, #0x49 - lsl r2, r2, #4 - lsl r0, r0, #4 - ldr r2, [r3, r2] - ldr r0, [r3, r0] - mov r1, #0 - lsl r2, r2, #1 - bl MIi_CpuFill8 - ldr r0, _02035D5C ; =0x021D4140 - mov r2, #0x69 - ldr r3, [r0, #8] - ldr r1, _02035D74 ; =0x000004A4 - lsl r2, r2, #4 - add r0, r3, r1 - sub r1, #0x14 - ldr r2, [r3, r2] - ldr r1, [r3, r1] - lsl r2, r2, #1 - bl sub_02033AE0 - ldr r0, _02035D5C ; =0x021D4140 - mov r2, #0 - ldr r3, [r0, #8] - ldr r1, _02035D78 ; =0x000006B4 - mov ip, r2 - strb r2, [r3, r1] - ldr r3, [r0, #8] - add r1, r1, #1 - strb r2, [r3, r1] - add r1, r2, #0 - add r7, r2, #0 - add r6, r2, #0 -_02035C9C: - ldr r3, [r0, #8] - add r4, r3, r2 - ldr r3, _02035D7C ; =0x00000696 - strb r6, [r4, r3] - ldr r3, [r0, #8] - ldr r4, _02035D80 ; =0x0000069E - add r5, r3, r2 - mov r3, #1 - strb r3, [r5, r4] - ldr r4, [r0, #8] - mov r3, ip - add r4, r4, r3 - ldr r3, _02035D84 ; =0x00000644 - add r2, r2, #1 - strh r6, [r4, r3] - ldr r3, [r0, #8] - mov r4, #0xee - add r5, r3, r1 - ldr r3, _02035D88 ; =0x000005CA - strb r4, [r5, r3] - ldr r3, [r0, #8] - ldr r4, _02035D8C ; =0x0000FFFF - add r5, r3, r1 - ldr r3, _02035D90 ; =0x000005C8 - strh r4, [r5, r3] - ldr r3, [r0, #8] - add r4, r3, r1 - ldr r3, _02035D94 ; =0x000005C4 - str r6, [r4, r3] - ldr r3, [r0, #8] - add r4, r3, r1 - mov r3, #0x17 - lsl r3, r3, #6 - str r6, [r4, r3] - ldr r3, [r0, #8] - add r1, #0xc - add r4, r3, r7 - ldr r3, _02035D98 ; =0x0000066C - add r7, r7, #4 - str r6, [r4, r3] - mov r3, ip - add r3, r3, #2 - mov ip, r3 - cmp r2, #8 - blt _02035C9C - ldr r1, _02035D5C ; =0x021D4140 - ldr r0, _02035D9C ; =0x00000668 - ldr r2, [r1, #8] - add r3, r0, #0 - str r6, [r2, r0] - ldr r4, [r1, #8] - sub r3, #0x3e - mov r2, #0xee - strb r2, [r4, r3] - add r3, r0, #0 - ldr r4, [r1, #8] - ldr r2, _02035D8C ; =0x0000FFFF - sub r3, #0x40 - strh r2, [r4, r3] - add r2, r0, #0 - ldr r3, [r1, #8] - sub r2, #0x44 - str r6, [r3, r2] - add r2, r0, #0 - ldr r3, [r1, #8] - sub r2, #0x48 - str r6, [r3, r2] - add r3, r0, #0 - ldr r4, [r1, #8] - add r3, #0x4a - mov r2, #1 - strb r2, [r4, r3] - add r3, r0, #0 - ldr r4, [r1, #8] - add r3, #0x4b - strb r2, [r4, r3] - strb r6, [r1] - ldr r1, [r1, #8] - sub r0, #0xe8 - add r0, r1, r0 - bl sub_02033F70 - ldr r0, _02035D5C ; =0x021D4140 - ldr r1, [r0, #8] - mov r0, #0x5a - lsl r0, r0, #4 - add r0, r1, r0 - bl sub_02033F70 - ldr r0, _02035D5C ; =0x021D4140 - mov r2, #0 - ldr r1, [r0, #8] - ldr r0, _02035DA0 ; =0x000006B7 - strb r2, [r1, r0] - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02035D5C: .word 0x021D4140 -_02035D60: .word 0x0000048C -_02035D64: .word 0x0000051C -_02035D68: .word 0x0000068C -_02035D6C: .word 0x00000488 -_02035D70: .word 0x00000498 -_02035D74: .word 0x000004A4 -_02035D78: .word 0x000006B4 -_02035D7C: .word 0x00000696 -_02035D80: .word 0x0000069E -_02035D84: .word 0x00000644 -_02035D88: .word 0x000005CA -_02035D8C: .word 0x0000FFFF -_02035D90: .word 0x000005C8 -_02035D94: .word 0x000005C4 -_02035D98: .word 0x0000066C -_02035D9C: .word 0x00000668 -_02035DA0: .word 0x000006B7 - thumb_func_end sub_02035AE0 - - thumb_func_start sub_02035DA4 -sub_02035DA4: ; 0x02035DA4 - push {r4, lr} - ldr r2, _02035DCC ; =0x021D4140 - ldr r1, _02035DD0 ; =0x000006AF - ldr r0, [r2, #8] - mov r4, #0 - strb r4, [r0, r1] - ldr r3, [r2, #8] - add r0, r1, #1 - strb r4, [r3, r0] - ldr r0, [r2, #8] - mov r3, #1 - sub r1, #0x4b - str r3, [r0, r1] - bl sub_02035AE0 - ldr r0, _02035DD4 ; =0x0210F900 - mov r1, #4 - strb r1, [r0] - strb r1, [r0, #1] - pop {r4, pc} - .balign 4, 0 -_02035DCC: .word 0x021D4140 -_02035DD0: .word 0x000006AF -_02035DD4: .word 0x0210F900 - thumb_func_end sub_02035DA4 - - thumb_func_start sub_02035DD8 -sub_02035DD8: ; 0x02035DD8 - ldr r3, _02035DDC ; =sub_02035AE0 - bx r3 - .balign 4, 0 -_02035DDC: .word sub_02035AE0 - thumb_func_end sub_02035DD8 - - thumb_func_start sub_02035DE0 -sub_02035DE0: ; 0x02035DE0 - push {r3, r4, r5, r6, r7, lr} - ldr r4, _02035E84 ; =0x021D4140 - add r5, r0, #0 - ldr r0, [r4, #8] - ldr r3, _02035E88 ; =0x00000696 - mov r1, #0 - add r0, r0, r5 - strb r1, [r0, r3] - ldr r2, [r4, #8] - mov r0, #1 - add r6, r2, r5 - add r2, r3, #0 - add r2, #8 - strb r0, [r6, r2] - ldr r2, [r4, #8] - lsl r0, r5, #2 - add r0, r2, r0 - sub r3, #0x2a - str r1, [r0, r3] - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r1, r0, #0 - add r0, r4, #0 - ldr r6, [r0, #8] - ldr r0, _02035E8C ; =0x0000068C - add r1, r1, #1 - ldr r0, [r6, r0] - bl _s32_div_f - add r7, r5, #0 - mov r1, #0x4b - str r0, [sp] - mul r7, r0 - mov r0, #0xc - add r4, r5, #0 - lsl r1, r1, #4 - mul r4, r0 - add r0, r6, r1 - sub r1, #0x28 - ldr r1, [r6, r1] - ldr r2, [sp] - add r0, r0, r4 - add r1, r1, r7 - bl sub_02033AE0 - ldr r0, _02035E84 ; =0x021D4140 - ldr r1, _02035E90 ; =0x0000051C - ldr r2, [r0, #8] - add r0, r2, r1 - sub r1, #0x90 - ldr r1, [r2, r1] - ldr r2, [sp] - add r0, r0, r4 - add r1, r1, r7 - bl sub_02033AE0 - ldr r3, _02035E84 ; =0x021D4140 - ldr r2, _02035E94 ; =0x000005CA - ldr r0, [r3, #8] - mov r1, #0xee - add r0, r0, r4 - strb r1, [r0, r2] - ldr r0, [r3, #8] - ldr r5, _02035E98 ; =0x0000FFFF - add r1, r0, r4 - sub r0, r2, #2 - strh r5, [r1, r0] - ldr r1, [r3, #8] - mov r0, #0 - add r5, r1, r4 - sub r1, r2, #6 - str r0, [r5, r1] - ldr r1, [r3, #8] - sub r2, #0xa - add r1, r1, r4 - str r0, [r1, r2] - pop {r3, r4, r5, r6, r7, pc} - nop -_02035E84: .word 0x021D4140 -_02035E88: .word 0x00000696 -_02035E8C: .word 0x0000068C -_02035E90: .word 0x0000051C -_02035E94: .word 0x000005CA -_02035E98: .word 0x0000FFFF - thumb_func_end sub_02035DE0 - - thumb_func_start sub_02035E9C -sub_02035E9C: ; 0x02035E9C - push {r4, r5, r6, lr} - ldr r4, _02035EC8 ; =0x021D4140 - ldr r6, _02035ECC ; =0x0000069E - mov r5, #1 -_02035EA4: - lsl r0, r5, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - bne _02035EC0 - ldr r0, [r4, #8] - add r0, r0, r5 - ldrb r0, [r0, r6] - cmp r0, #0 - bne _02035EC0 - add r0, r5, #0 - bl sub_02035DE0 -_02035EC0: - add r5, r5, #1 - cmp r5, #8 - blt _02035EA4 - pop {r4, r5, r6, pc} - .balign 4, 0 -_02035EC8: .word 0x021D4140 -_02035ECC: .word 0x0000069E - thumb_func_end sub_02035E9C - - thumb_func_start sub_02035ED0 -sub_02035ED0: ; 0x02035ED0 - ldr r3, _02035ED4 ; =sub_02035DE0 - bx r3 - .balign 4, 0 -_02035ED4: .word sub_02035DE0 - thumb_func_end sub_02035ED0 - - thumb_func_start sub_02035ED8 -sub_02035ED8: ; 0x02035ED8 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - add r7, r2, #0 - str r3, [sp] - mov r4, #1 - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - bne _02035F02 - ldr r2, [sp] - add r0, r5, #0 - add r1, r6, #0 - bl sub_02034EF0 - add r4, r0, #0 - ldr r0, _02035F10 ; =sub_02035ED0 - bl sub_02033A90 -_02035F02: - add r0, r5, #0 - add r1, r7, #0 - bl sub_02035900 - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_02035F10: .word sub_02035ED0 - thumb_func_end sub_02035ED8 - - thumb_func_start sub_02035F14 -sub_02035F14: ; 0x02035F14 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - add r7, r2, #0 - mov r4, #1 - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - bne _02035F34 - add r0, r5, #0 - add r1, r6, #0 - bl sub_02034F64 - add r4, r0, #0 -_02035F34: - add r0, r5, #0 - add r1, r7, #0 - bl sub_02035900 - ldr r0, _02035F48 ; =0x0210F900 - mov r1, #4 - strb r1, [r0, #1] - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_02035F48: .word 0x0210F900 - thumb_func_end sub_02035F14 - - thumb_func_start sub_02035F4C -sub_02035F4C: ; 0x02035F4C - push {r4, lr} - mov r4, #0 - bl sub_0203769C - cmp r0, #0 - bne _02035F62 - ldr r0, _02035F9C ; =0x0210F900 - ldrb r0, [r0] - cmp r0, #4 - beq _02035F6A - pop {r4, pc} -_02035F62: - ldr r0, _02035F9C ; =0x0210F900 - ldrb r0, [r0, #1] - cmp r0, #4 - bne _02035F98 -_02035F6A: - ldr r0, _02035FA0 ; =0x021D4140 - ldr r2, [r0, #8] - ldr r0, _02035FA4 ; =0x000006AD - ldrb r1, [r2, r0] - cmp r1, #2 - bne _02035F7C - mov r1, #0 - strb r1, [r2, r0] - mov r4, #1 -_02035F7C: - ldr r0, _02035FA0 ; =0x021D4140 - ldr r2, [r0, #8] - ldr r0, _02035FA4 ; =0x000006AD - ldrb r1, [r2, r0] - cmp r1, #3 - bne _02035F8C - mov r4, #1 - strb r4, [r2, r0] -_02035F8C: - cmp r4, #0 - beq _02035F94 - bl sub_02035DD8 -_02035F94: - bl sub_02037594 -_02035F98: - pop {r4, pc} - nop -_02035F9C: .word 0x0210F900 -_02035FA0: .word 0x021D4140 -_02035FA4: .word 0x000006AD - thumb_func_end sub_02035F4C - - thumb_func_start sub_02035FA8 -sub_02035FA8: ; 0x02035FA8 - ldr r1, _02035FD0 ; =0x021D4140 - ldr r3, [r1, #8] - ldr r1, _02035FD4 ; =0x000006AD - ldrb r2, [r3, r1] - cmp r2, #0 - bne _02035FBE - cmp r0, #1 - bne _02035FBE - mov r0, #3 - strb r0, [r3, r1] - bx lr -_02035FBE: - cmp r2, #1 - bne _02035FCC - cmp r0, #0 - bne _02035FCC - ldr r0, _02035FD4 ; =0x000006AD - mov r1, #2 - strb r1, [r3, r0] -_02035FCC: - bx lr - nop -_02035FD0: .word 0x021D4140 -_02035FD4: .word 0x000006AD - thumb_func_end sub_02035FA8 - - thumb_func_start sub_02035FD8 -sub_02035FD8: ; 0x02035FD8 - ldr r3, _02035FE0 ; =sub_02035FA8 - mov r0, #1 - bx r3 - nop -_02035FE0: .word sub_02035FA8 - thumb_func_end sub_02035FD8 - - thumb_func_start sub_02035FE4 -sub_02035FE4: ; 0x02035FE4 - ldr r3, _02035FEC ; =sub_02035FA8 - mov r0, #0 - bx r3 - nop -_02035FEC: .word sub_02035FA8 - thumb_func_end sub_02035FE4 - - thumb_func_start sub_02035FF0 -sub_02035FF0: ; 0x02035FF0 - ldr r0, _02036008 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _0203600C ; =0x000006AD - ldrb r0, [r1, r0] - cmp r0, #2 - bne _02036000 - mov r0, #1 - bx lr -_02036000: - cmp r0, #3 - bne _02036006 - mov r0, #0 -_02036006: - bx lr - .balign 4, 0 -_02036008: .word 0x021D4140 -_0203600C: .word 0x000006AD - thumb_func_end sub_02035FF0 - - thumb_func_start sub_02036010 -sub_02036010: ; 0x02036010 - push {r3, lr} - bl sub_02035FF0 - cmp r0, #1 - bne _0203601E - mov r0, #1 - pop {r3, pc} -_0203601E: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02036010 - - thumb_func_start sub_02036024 -sub_02036024: ; 0x02036024 - push {r4, lr} - ldr r0, _020360D0 ; =0x021D4140 - mov r4, #0 - ldr r0, [r0, #8] - cmp r0, #0 - beq _0203604E - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _02036044 - bl ov00_021E6CB8 - mov r4, #1 - b _0203604E -_02036044: - bl sub_0203507C - cmp r0, #0 - beq _0203604E - mov r4, #1 -_0203604E: - cmp r4, #0 - beq _020360CE - bl sub_020379F8 - bl sub_020343E4 - ldr r0, _020360D0 ; =0x021D4140 - mov r1, #0 - strb r1, [r0, #1] - ldr r1, [r0, #8] - ldr r0, _020360D4 ; =0x0000057C - ldr r0, [r1, r0] - bl sub_0200E390 - ldr r1, _020360D0 ; =0x021D4140 - ldr r0, _020360D4 ; =0x0000057C - ldr r2, [r1, #8] - mov r3, #0 - str r3, [r2, r0] - ldr r1, [r1, #8] - sub r0, #0xec - ldr r0, [r1, r0] - bl FreeToHeap - ldr r0, _020360D0 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _020360D8 ; =0x00000494 - ldr r0, [r1, r0] - bl FreeToHeap - ldr r0, _020360D0 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _020360DC ; =0x0000048C - ldr r0, [r1, r0] - bl FreeToHeap - ldr r0, _020360D0 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _020360E0 ; =0x00000488 - ldr r0, [r1, r0] - bl FreeToHeap - ldr r0, _020360D0 ; =0x021D4140 - ldr r1, [r0, #8] - mov r0, #0x5a - lsl r0, r0, #4 - add r0, r1, r0 - bl sub_02033F90 - ldr r0, _020360D0 ; =0x021D4140 - ldr r1, [r0, #8] - mov r0, #0x16 - lsl r0, r0, #6 - add r0, r1, r0 - bl sub_02033F90 - ldr r0, _020360D0 ; =0x021D4140 - ldr r0, [r0, #4] - bl FreeToHeap - ldr r0, _020360D0 ; =0x021D4140 - mov r1, #0 - str r1, [r0, #8] - str r1, [r0, #4] -_020360CE: - pop {r4, pc} - .balign 4, 0 -_020360D0: .word 0x021D4140 -_020360D4: .word 0x0000057C -_020360D8: .word 0x00000494 -_020360DC: .word 0x0000048C -_020360E0: .word 0x00000488 - thumb_func_end sub_02036024 - - thumb_func_start sub_020360E4 -sub_020360E4: ; 0x020360E4 - ldr r3, _020360E8 ; =sub_02035218 - bx r3 - .balign 4, 0 -_020360E8: .word sub_02035218 - thumb_func_end sub_020360E4 - - thumb_func_start sub_020360EC -sub_020360EC: ; 0x020360EC - push {r3, lr} - ldr r0, _02036118 ; =0x021D4140 - ldrb r0, [r0, #1] - cmp r0, #0 - beq _02036116 - bl sub_02036AD8 - bl sub_0203769C - cmp r0, #0 - bne _02036110 - mov r0, #0 - bl sub_020373B4 - cmp r0, #0 - beq _02036110 - bl sub_02036508 -_02036110: - ldr r0, _02036118 ; =0x021D4140 - mov r1, #0 - strb r1, [r0, #1] -_02036116: - pop {r3, pc} - .balign 4, 0 -_02036118: .word 0x021D4140 - thumb_func_end sub_020360EC - - thumb_func_start sub_0203611C -sub_0203611C: ; 0x0203611C - push {r3, lr} - bl sub_020357FC - cmp r0, #0 - beq _02036140 - bl sub_0203769C - cmp r0, #0 - bne _0203613C - bl sub_0203567C - cmp r0, #0 - bne _02036140 - bl sub_02036024 - pop {r3, pc} -_0203613C: - bl sub_02036024 -_02036140: - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203611C - - thumb_func_start sub_02036144 -sub_02036144: ; 0x02036144 - push {r4, lr} - bl sub_0203817C - ldr r3, _02036214 ; =0x021D4140 - ldr r0, [r3, #8] - cmp r0, #0 - beq _020361FE - ldr r2, _02036218 ; =0x000006B9 - ldrb r1, [r0, r2] - cmp r1, #0 - bne _020361E0 - add r1, r2, #3 - ldrb r1, [r0, r1] - add r4, r1, #1 - add r1, r2, #3 - strb r4, [r0, r1] - mov r0, #0 - strb r0, [r3, #1] - bl sub_02035F4C - ldr r0, _02036214 ; =0x021D4140 - ldr r1, _0203621C ; =gMain - ldr r0, [r0, #8] - ldr r2, _02036220 ; =0x0000065C - ldr r3, [r1, #0x44] - ldr r1, _02036224 ; =0x00007FFF - ldrh r4, [r0, r2] - and r1, r3 - orr r1, r4 - strh r1, [r0, r2] - bl sub_02036BE4 - bl sub_02036298 - ldr r0, _02036214 ; =0x021D4140 - ldr r1, _02036220 ; =0x0000065C - ldr r3, [r0, #8] - mov r0, #2 - ldrh r2, [r3, r1] - lsl r0, r0, #0xe - and r0, r2 - strh r0, [r3, r1] - bl sub_02035FF0 - cmp r0, #0 - bne _020361A4 - bl sub_020372E4 -_020361A4: - bl sub_0203769C - cmp r0, #0 - bne _020361C6 - mov r0, #0 - bl sub_020373B4 - cmp r0, #0 - beq _020361C6 - bl sub_0203993C - bl sub_02034084 - cmp r0, #0 - bne _020361C6 - bl sub_0203667C -_020361C6: - bl sub_0203769C - cmp r0, #0 - beq _020361D6 - bl sub_02035FF0 - cmp r0, #1 - bne _020361DA -_020361D6: - bl sub_02037334 -_020361DA: - ldr r0, _02036214 ; =0x021D4140 - mov r1, #1 - strb r1, [r0, #1] -_020361E0: - ldr r0, _02036214 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02036228 ; =0x00000694 - ldrh r0, [r1, r0] - bl sub_020355C8 - bl sub_0203769C - cmp r0, #0 - bne _020361F8 - bl sub_02035E9C -_020361F8: - bl sub_0203611C - b _02036204 -_020361FE: - mov r0, #0 - bl sub_020355C8 -_02036204: - mov r0, #0 - bl sub_02039A00 - bl sub_02037ADC - mov r0, #1 - pop {r4, pc} - nop -_02036214: .word 0x021D4140 -_02036218: .word 0x000006B9 -_0203621C: .word gMain -_02036220: .word 0x0000065C -_02036224: .word 0x00007FFF -_02036228: .word 0x00000694 - thumb_func_end sub_02036144 - - thumb_func_start sub_0203622C -sub_0203622C: ; 0x0203622C - push {r4, lr} - ldr r0, _02036248 ; =0x021D4140 - mov r1, #0 - ldrb r4, [r0, #1] - strb r1, [r0, #1] - ldr r0, [r0, #8] - cmp r0, #0 - beq _02036240 - bl sub_02035DA4 -_02036240: - ldr r0, _02036248 ; =0x021D4140 - strb r4, [r0, #1] - pop {r4, pc} - nop -_02036248: .word 0x021D4140 - thumb_func_end sub_0203622C - - thumb_func_start sub_0203624C -sub_0203624C: ; 0x0203624C - push {r4, lr} - ldr r0, _0203626C ; =0x021D4140 - mov r1, #0 - ldrb r4, [r0, #1] - strb r1, [r0, #1] - ldr r2, [r0, #8] - cmp r2, #0 - beq _02036266 - ldr r0, _02036270 ; =0x000006AD - mov r1, #1 - strb r1, [r2, r0] - bl sub_02035DA4 -_02036266: - ldr r0, _0203626C ; =0x021D4140 - strb r4, [r0, #1] - pop {r4, pc} - .balign 4, 0 -_0203626C: .word 0x021D4140 -_02036270: .word 0x000006AD - thumb_func_end sub_0203624C - - thumb_func_start sub_02036274 -sub_02036274: ; 0x02036274 - push {r4, lr} - ldr r0, _02036294 ; =0x021D4140 - mov r1, #0 - ldrb r4, [r0, #1] - strb r1, [r0, #1] - ldr r0, [r0, #8] - cmp r0, #0 - beq _0203628C - bl sub_02035DA4 - bl sub_02034E2C -_0203628C: - ldr r0, _02036294 ; =0x021D4140 - strb r4, [r0, #1] - pop {r4, pc} - nop -_02036294: .word 0x021D4140 - thumb_func_end sub_02036274 - - thumb_func_start sub_02036298 -sub_02036298: ; 0x02036298 - push {r3, r4, r5, r6, r7, lr} - bl sub_0203993C - bl sub_02034084 - cmp r0, #0 - beq _0203634C - ldr r0, _02036420 ; =0x021D4140 - ldr r1, _02036424 ; =0x000006B6 - ldr r0, [r0, #8] - ldrb r2, [r0, r1] - cmp r2, #0 - beq _02036308 - sub r1, #0x52 - ldr r1, [r0, r1] - cmp r1, #0 - beq _020362DA - bl sub_02036630 - cmp r0, #0 - beq _020362F8 - ldr r0, _02036428 ; =0x0210F900 - ldrb r0, [r0, #1] - cmp r0, #4 - bne _020362F0 - ldr r0, _02036420 ; =0x021D4140 - ldr r0, [r0, #8] - bl sub_02036E60 - ldr r0, _02036428 ; =0x0210F900 - mov r1, #2 - strb r1, [r0, #1] - b _020362F0 -_020362DA: - ldr r1, _02036428 ; =0x0210F900 - ldrb r1, [r1, #1] - cmp r1, #4 - bne _020362F0 - bl sub_02036E60 - cmp r0, #0 - beq _020362F8 - ldr r0, _02036428 ; =0x0210F900 - mov r1, #2 - strb r1, [r0, #1] -_020362F0: - bl sub_02036FA8 - cmp r0, #0 - beq _020362FA -_020362F8: - b _0203641C -_020362FA: - ldr r0, _02036420 ; =0x021D4140 - mov r1, #0x26 - ldr r0, [r0, #8] - bl ov00_021E60E8 - cmp r0, #0 - bne _0203630A -_02036308: - b _0203641C -_0203630A: - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r6, r0, #1 - mov r4, #0 - cmp r6, #0 - ble _02036344 - ldr r7, _02036420 ; =0x021D4140 - add r5, r4, #0 -_02036322: - lsl r0, r4, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _0203633C - ldr r0, [r7, #8] - ldr r1, _0203642C ; =0x0000066C - add r0, r0, r5 - ldr r1, [r0, r1] - add r2, r1, #1 - ldr r1, _0203642C ; =0x0000066C - str r2, [r0, r1] -_0203633C: - add r4, r4, #1 - add r5, r5, #4 - cmp r4, r6 - blt _02036322 -_02036344: - ldr r0, _02036428 ; =0x0210F900 - mov r1, #4 - strb r1, [r0, #1] - pop {r3, r4, r5, r6, r7, pc} -_0203634C: - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _020363CA - ldr r0, _02036420 ; =0x021D4140 - ldr r2, _02036424 ; =0x000006B6 - ldr r0, [r0, #8] - ldrb r1, [r0, r2] - cmp r1, #0 - beq _0203641C - add r1, r2, #0 - sub r1, #0x52 - ldr r1, [r0, r1] - cmp r1, #0 - beq _0203638A - sub r2, #0x4e - ldr r1, [r0, r2] - cmp r1, #3 - bgt _0203641C - ldr r1, _02036428 ; =0x0210F900 - ldrb r1, [r1, #1] - cmp r1, #4 - bne _020363A0 - bl sub_02036E60 - ldr r0, _02036428 ; =0x0210F900 - mov r1, #2 - strb r1, [r0, #1] - b _020363A0 -_0203638A: - ldr r1, _02036428 ; =0x0210F900 - ldrb r1, [r1, #1] - cmp r1, #4 - bne _020363A0 - bl sub_02036E60 - cmp r0, #0 - beq _0203641C - ldr r0, _02036428 ; =0x0210F900 - mov r1, #2 - strb r1, [r0, #1] -_020363A0: - bl sub_02036FA8 - cmp r0, #0 - bne _0203641C - ldr r0, _02036420 ; =0x021D4140 - mov r1, #0x26 - ldr r0, [r0, #8] - bl ov00_021E5F84 - cmp r0, #0 - beq _0203641C - ldr r0, _02036428 ; =0x0210F900 - mov r1, #4 - strb r1, [r0, #1] - ldr r0, _02036420 ; =0x021D4140 - ldr r2, [r0, #8] - ldr r0, _02036430 ; =0x00000668 - ldr r1, [r2, r0] - add r1, r1, #1 - str r1, [r2, r0] - pop {r3, r4, r5, r6, r7, pc} -_020363CA: - bl sub_02033298 - cmp r0, #4 - bne _0203641C - bl sub_0203769C - bl sub_020373B4 - cmp r0, #0 - beq _0203641C - ldr r0, _02036428 ; =0x0210F900 - ldrb r0, [r0, #1] - cmp r0, #4 - bne _02036418 - ldr r0, _02036420 ; =0x021D4140 - ldr r2, [r0, #8] - ldr r0, _02036430 ; =0x00000668 - ldr r1, [r2, r0] - cmp r1, #3 - bgt _02036418 - add r0, #0x47 - ldrb r0, [r2, r0] - lsl r0, r0, #6 - add r0, r2, r0 - bl sub_02036E60 - ldr r0, _02036420 ; =0x021D4140 - ldr r2, [r0, #8] - ldr r0, _02036434 ; =0x000006AF - ldrb r1, [r2, r0] - mov r0, #1 - sub r0, r0, r1 - lsl r0, r0, #6 - add r0, r2, r0 - bl sub_02036E60 - ldr r0, _02036428 ; =0x0210F900 - mov r1, #0 - strb r1, [r0, #1] -_02036418: - bl sub_02036AD8 -_0203641C: - pop {r3, r4, r5, r6, r7, pc} - nop -_02036420: .word 0x021D4140 -_02036424: .word 0x000006B6 -_02036428: .word 0x0210F900 -_0203642C: .word 0x0000066C -_02036430: .word 0x00000668 -_02036434: .word 0x000006AF - thumb_func_end sub_02036298 - - thumb_func_start sub_02036438 -sub_02036438: ; 0x02036438 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - str r0, [sp] - mov r7, #0 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_0203772C - str r0, [sp, #0xc] - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r0, r0, #1 - str r0, [sp, #8] - add r0, r7, #0 - str r0, [sp, #4] - ldr r0, [sp, #8] - cmp r0, #0 - ble _020364F0 - ldr r0, [sp] - ldr r6, [sp, #4] - mov r1, #0xc0 - add r5, r0, #0 - add r4, r6, #0 - mul r5, r1 -_02036474: - ldr r0, _02036504 ; =0x021D4140 - ldr r1, [r0, #8] - mov r0, #0x4b - lsl r0, r0, #4 - add r0, r1, r0 - add r0, r0, r6 - bl sub_02033C28 - ldr r0, [sp, #4] - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _020364A2 - ldr r0, _02036504 ; =0x021D4140 - ldr r0, [r0, #8] - add r0, r5, r0 - add r1, r4, r0 - add r1, #0x80 - mov r0, #0xe - strb r0, [r1] - b _020364B4 -_020364A2: - ldr r0, _02036504 ; =0x021D4140 - add r7, r7, #1 - ldr r0, [r0, #8] - add r0, r5, r0 - add r1, r4, r0 - add r1, #0x80 - mov r0, #0xff - strb r0, [r1] - b _020364DE -_020364B4: - ldr r0, _02036504 ; =0x021D4140 - ldr r2, [sp, #0xc] - ldr r1, [r0, #8] - mov r0, #0x4b - lsl r0, r0, #4 - add r0, r1, r0 - add r1, #0x80 - add r1, r1, r5 - add r0, r0, r6 - add r1, r1, r4 - bl sub_02033B4C - ldr r0, _02036504 ; =0x021D4140 - ldr r0, [r0, #8] - add r0, r5, r0 - add r0, r4, r0 - add r0, #0x80 - ldrb r0, [r0] - cmp r0, #0xe - bne _020364DE - add r7, r7, #1 -_020364DE: - ldr r0, [sp, #0xc] - add r6, #0xc - add r4, r4, r0 - ldr r0, [sp, #4] - add r1, r0, #1 - ldr r0, [sp, #8] - str r1, [sp, #4] - cmp r1, r0 - blt _02036474 -_020364F0: - ldr r0, [sp, #8] - cmp r7, r0 - bne _020364FC - add sp, #0x10 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_020364FC: - mov r0, #1 - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - nop -_02036504: .word 0x021D4140 - thumb_func_end sub_02036438 - - thumb_func_start sub_02036508 -sub_02036508: ; 0x02036508 - push {r3, r4, r5, r6, r7, lr} - ldr r0, _02036620 ; =0x021D4140 - ldr r0, [r0, #8] - cmp r0, #0 - bne _02036514 - b _0203661C -_02036514: - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - bne _0203661C - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_0203772C - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r6, r0, #1 - ldr r0, _02036624 ; =0x0210F900 - ldrb r1, [r0] - cmp r1, #2 - beq _02036548 - ldrb r0, [r0] - cmp r0, #0 - bne _0203661C -_02036548: - ldr r0, _02036624 ; =0x0210F900 - ldrb r1, [r0] - add r1, r1, #1 - strb r1, [r0] - bl sub_02035FF0 - cmp r0, #1 - bne _02036572 - ldr r0, _02036620 ; =0x021D4140 - ldrb r1, [r0] - cmp r1, #0 - bne _02036572 - ldr r1, [r0, #8] - mov r0, #0x6b - lsl r0, r0, #4 - ldrb r0, [r1, r0] - bl sub_02036438 - ldr r0, _02036620 ; =0x021D4140 - mov r1, #1 - strb r1, [r0] -_02036572: - bl sub_02033298 - cmp r0, #4 - bne _020365A4 - ldr r0, _02036620 ; =0x021D4140 - ldr r1, [r0, #8] - mov r0, #0x6b - lsl r0, r0, #4 - ldrb r0, [r1, r0] - add r3, r1, #0 - mov r1, #0xc0 - add r2, r0, #0 - add r3, #0x80 - mul r2, r1 - add r0, r3, r2 - ldr r3, _02036628 ; =sub_02036ABC - mov r2, #0xe - bl sub_02033800 - cmp r0, #0 - bne _020365A4 - ldr r0, _02036624 ; =0x0210F900 - ldrb r1, [r0] - sub r1, r1, #1 - strb r1, [r0] -_020365A4: - ldr r0, _02036624 ; =0x0210F900 - ldrb r1, [r0] - cmp r1, #1 - beq _020365B2 - ldrb r0, [r0] - cmp r0, #3 - bne _0203660C -_020365B2: - ldr r7, _02036620 ; =0x021D4140 - mov r4, #0 - strb r4, [r7] - cmp r6, #0 - ble _020365E0 - add r5, r4, #0 -_020365BE: - lsl r0, r4, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _020365D8 - ldr r0, [r7, #8] - ldr r1, _0203662C ; =0x0000066C - add r0, r0, r5 - ldr r1, [r0, r1] - add r2, r1, #1 - ldr r1, _0203662C ; =0x0000066C - str r2, [r0, r1] -_020365D8: - add r4, r4, #1 - add r5, r5, #4 - cmp r4, r6 - blt _020365BE -_020365E0: - ldr r0, _02036620 ; =0x021D4140 - mov r1, #0x6b - ldr r2, [r0, #8] - lsl r1, r1, #4 - ldrb r1, [r2, r1] - add r4, r2, #0 - mov r2, #0xc0 - add r3, r1, #0 - add r4, #0x80 - mul r3, r2 - mov r0, #0 - add r1, r4, r3 - bl sub_020367B0 - ldr r0, _02036620 ; =0x021D4140 - mov r1, #0x6b - ldr r3, [r0, #8] - lsl r1, r1, #4 - ldrb r2, [r3, r1] - mov r0, #1 - sub r0, r0, r2 - strb r0, [r3, r1] -_0203660C: - bl sub_02033298 - cmp r0, #4 - beq _0203661C - ldr r0, _02036624 ; =0x0210F900 - ldrb r1, [r0] - add r1, r1, #1 - strb r1, [r0] -_0203661C: - pop {r3, r4, r5, r6, r7, pc} - nop -_02036620: .word 0x021D4140 -_02036624: .word 0x0210F900 -_02036628: .word sub_02036ABC -_0203662C: .word 0x0000066C - thumb_func_end sub_02036508 - - thumb_func_start sub_02036630 -sub_02036630: ; 0x02036630 - push {r3, r4, r5, r6, r7, lr} - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r6, r0, #1 - mov r4, #1 - cmp r6, #1 - ble _0203666E - ldr r7, _02036674 ; =0x021D4140 - mov r5, #4 -_0203664A: - lsl r0, r4, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _02036666 - ldr r0, [r7, #8] - add r1, r0, r5 - ldr r0, _02036678 ; =0x0000066C - ldr r0, [r1, r0] - cmp r0, #3 - ble _02036666 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02036666: - add r4, r4, #1 - add r5, r5, #4 - cmp r4, r6 - blt _0203664A -_0203666E: - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} - nop -_02036674: .word 0x021D4140 -_02036678: .word 0x0000066C - thumb_func_end sub_02036630 - - thumb_func_start sub_0203667C -sub_0203667C: ; 0x0203667C - push {r3, r4, r5, r6, r7, lr} - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r6, r0, #1 - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _02036738 - mov r0, #0 - bl sub_020373B4 - cmp r0, #0 - beq _02036796 - ldr r0, _02036798 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _0203679C ; =0x00000664 - ldr r0, [r1, r0] - cmp r0, #0 - beq _020366D4 - bl sub_02036630 - cmp r0, #0 - beq _02036796 - ldr r0, _020367A0 ; =0x0210F900 - ldrb r0, [r0] - cmp r0, #4 - bne _020366F4 - bl sub_02035FF0 - cmp r0, #1 - bne _020366CC - mov r0, #0 - bl sub_02036438 -_020366CC: - ldr r0, _020367A0 ; =0x0210F900 - mov r1, #2 - strb r1, [r0] - b _020366F4 -_020366D4: - ldr r0, _020367A0 ; =0x0210F900 - ldrb r0, [r0] - cmp r0, #4 - bne _020366EE - bl sub_02035FF0 - cmp r0, #1 - bne _020366EE - mov r0, #0 - bl sub_02036438 - cmp r0, #0 - beq _02036796 -_020366EE: - ldr r0, _020367A0 ; =0x0210F900 - mov r1, #2 - strb r1, [r0] -_020366F4: - ldr r0, _02036798 ; =0x021D4140 - mov r1, #0xc0 - ldr r0, [r0, #8] - add r0, #0x80 - bl ov00_021E602C - cmp r0, #0 - beq _02036796 - ldr r0, _020367A0 ; =0x0210F900 - mov r1, #4 - mov r4, #0 - strb r1, [r0] - cmp r6, #0 - ble _02036796 - ldr r7, _02036798 ; =0x021D4140 - add r5, r4, #0 -_02036714: - lsl r0, r4, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _0203672E - ldr r0, [r7, #8] - ldr r1, _020367A4 ; =0x0000066C - add r0, r0, r5 - ldr r1, [r0, r1] - add r2, r1, #1 - ldr r1, _020367A4 ; =0x0000066C - str r2, [r0, r1] -_0203672E: - add r4, r4, #1 - add r5, r5, #4 - cmp r4, r6 - blt _02036714 - pop {r3, r4, r5, r6, r7, pc} -_02036738: - bl sub_02033298 - cmp r0, #4 - bne _02036796 - ldr r0, _020367A0 ; =0x0210F900 - ldrb r0, [r0] - cmp r0, #4 - bne _02036796 - bl sub_02036630 - cmp r0, #0 - beq _02036796 - bl sub_02035FF0 - cmp r0, #0 - bne _0203678C - ldr r0, _02036798 ; =0x021D4140 - ldr r1, [r0, #8] - mov r0, #0x6b - add r2, r1, #0 - lsl r0, r0, #4 - ldrb r1, [r1, r0] - mov r0, #0xc0 - add r2, #0x80 - mul r0, r1 - add r0, r2, r0 - bl sub_02036F30 - ldr r0, _02036798 ; =0x021D4140 - ldr r1, [r0, #8] - mov r0, #0x6b - add r2, r1, #0 - lsl r0, r0, #4 - ldrb r1, [r1, r0] - mov r0, #1 - add r2, #0x80 - sub r1, r0, r1 - mov r0, #0xc0 - mul r0, r1 - add r0, r2, r0 - bl sub_02036F30 -_0203678C: - ldr r0, _020367A0 ; =0x0210F900 - mov r1, #0 - strb r1, [r0] - bl sub_02036508 -_02036796: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02036798: .word 0x021D4140 -_0203679C: .word 0x00000664 -_020367A0: .word 0x0210F900 -_020367A4: .word 0x0000066C - thumb_func_end sub_0203667C - - thumb_func_start sub_020367A8 -sub_020367A8: ; 0x020367A8 - ldr r3, _020367AC ; =sub_020367B0 - bx r3 - .balign 4, 0 -_020367AC: .word sub_020367B0 - thumb_func_end sub_020367A8 - - thumb_func_start sub_020367B0 -sub_020367B0: ; 0x020367B0 - push {r3, r4, r5, r6, r7, lr} - sub sp, #8 - ldr r0, _020368E4 ; =0x021D4140 - add r5, r1, #0 - ldr r2, [r0, #8] - ldr r0, _020368E8 ; =0x00000668 - ldr r1, [r2, r0] - sub r1, r1, #1 - str r1, [r2, r0] - cmp r5, #0 - beq _020367D4 - ldrb r0, [r5] - cmp r0, #0xb - bne _020367DA - bl sub_02035FF0 - cmp r0, #1 - bne _020367D6 -_020367D4: - b _020368E0 -_020367D6: - add r5, r5, #1 - b _020367E2 -_020367DA: - bl sub_02035FF0 - cmp r0, #0 - beq _020368E0 -_020367E2: - ldr r0, _020368E4 ; =0x021D4140 - ldr r1, _020368EC ; =0x000006B2 - ldr r0, [r0, #8] - ldrb r1, [r0, r1] - cmp r1, #0 - beq _020367F6 - ldrb r2, [r5] - mov r1, #1 - tst r1, r2 - bne _020368E0 -_020367F6: - ldr r1, _020368EC ; =0x000006B2 - mov r2, #0 - strb r2, [r0, r1] - bl sub_02035FF0 - cmp r0, #1 - bne _020368B4 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_0203772C - add r6, r0, #0 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r0, r0, #1 - mov r4, #0 - str r0, [sp, #4] - cmp r0, #0 - ble _020368E0 - sub r0, r6, #1 - add r7, r4, #0 - str r0, [sp] -_0203682E: - ldrb r0, [r5] - cmp r0, #0xff - bne _02036846 - ldr r0, _020368E4 ; =0x021D4140 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _020368F0 ; =0x00000694 - lsl r2, r4 - ldrh r0, [r1, r0] - mvn r2, r2 - and r2, r0 - b _02036854 -_02036846: - ldr r0, _020368E4 ; =0x021D4140 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _020368F0 ; =0x00000694 - lsl r2, r4 - ldrh r0, [r1, r0] - orr r2, r0 -_02036854: - ldr r0, _020368F0 ; =0x00000694 - strh r2, [r1, r0] - ldrb r2, [r5] - cmp r2, #0xff - bne _02036862 - add r5, r5, r6 - b _020368A6 -_02036862: - cmp r2, #0xe - bne _0203686A - add r5, r5, r6 - b _020368A6 -_0203686A: - ldr r0, _020368E4 ; =0x021D4140 - ldr r3, [r0, #8] - ldr r0, _020368F4 ; =0x0000069E - add r1, r3, r4 - ldrb r0, [r1, r0] - cmp r0, #0 - beq _02036882 - mov r0, #1 - tst r0, r2 - beq _02036882 - add r5, r5, r6 - b _020368A6 -_02036882: - ldr r0, _020368F8 ; =0x0000051C - add r5, r5, #1 - add r0, r3, r0 - ldr r3, _020368FC ; =0x0000054C - ldr r2, [sp] - add r0, r0, r7 - add r1, r5, #0 - add r3, r4, r3 - bl sub_02033AF0 - ldr r0, [sp] - mov r1, #0 - add r5, r5, r0 - ldr r0, _020368E4 ; =0x021D4140 - ldr r0, [r0, #8] - add r2, r0, r4 - ldr r0, _020368F4 ; =0x0000069E - strb r1, [r2, r0] -_020368A6: - ldr r0, [sp, #4] - add r4, r4, #1 - add r7, #0xc - cmp r4, r0 - blt _0203682E - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} -_020368B4: - ldr r1, _020368E4 ; =0x021D4140 - ldrb r3, [r5, #1] - ldr r2, [r1, #8] - ldr r0, _020368F0 ; =0x00000694 - strh r3, [r2, r0] - ldr r3, [r1, #8] - ldrh r2, [r3, r0] - lsl r2, r2, #8 - strh r2, [r3, r0] - ldr r4, [r1, #8] - ldrb r2, [r5, #2] - ldrh r3, [r4, r0] - add r2, r3, r2 - strh r2, [r4, r0] - ldr r0, [r1, #8] - ldr r3, _02036900 ; =0x000004A4 - ldrb r2, [r5, #3] - add r0, r0, r3 - add r1, r5, #4 - add r3, #0xbc - bl sub_02033AF0 -_020368E0: - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_020368E4: .word 0x021D4140 -_020368E8: .word 0x00000668 -_020368EC: .word 0x000006B2 -_020368F0: .word 0x00000694 -_020368F4: .word 0x0000069E -_020368F8: .word 0x0000051C -_020368FC: .word 0x0000054C -_02036900: .word 0x000004A4 - thumb_func_end sub_020367B0 - - thumb_func_start sub_02036904 -sub_02036904: ; 0x02036904 - ldr r3, _02036908 ; =sub_0203690C - bx r3 - .balign 4, 0 -_02036908: .word sub_0203690C - thumb_func_end sub_02036904 - - thumb_func_start sub_0203690C -sub_0203690C: ; 0x0203690C - push {r4, r5, r6, lr} - ldr r3, _020369BC ; =0x021D4140 - add r5, r0, #0 - ldr r0, [r3, #8] - ldr r2, _020369C0 ; =0x0000066C - add r4, r1, #0 - add r1, r0, r2 - lsl r0, r5, #2 - ldr r6, [r1, r0] - sub r6, r6, #1 - str r6, [r1, r0] - cmp r4, #0 - beq _020369BA - ldr r0, [r3, #8] - add r2, #0x32 - add r0, r0, r2 - ldrb r1, [r0, r5] - cmp r1, #0 - beq _0203693A - ldrb r2, [r4] - mov r1, #1 - tst r1, r2 - bne _020369BA -_0203693A: - mov r1, #0 - strb r1, [r0, r5] - bl sub_02035FF0 - cmp r0, #1 - bne _02036992 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_0203772C - add r6, r0, #0 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - ldrb r1, [r4] - mov r0, #2 - tst r0, r1 - bne _02036982 - ldr r0, _020369BC ; =0x021D4140 - mov r3, #0x4b - ldr r0, [r0, #8] - lsl r3, r3, #4 - add r1, r0, r3 - mov r0, #0xc - mul r0, r5 - add r0, r1, r0 - add r1, r4, #0 - add r2, r6, #0 - add r3, #0xf5 - bl sub_02033AF0 -_02036982: - ldr r0, _020369BC ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _020369C4 ; =0x00000696 - add r1, r1, r0 - ldrb r0, [r1, r5] - add r0, r0, #1 - strb r0, [r1, r5] - pop {r4, r5, r6, pc} -_02036992: - add r0, r4, #0 - add r1, r5, #0 - bl sub_02036D14 - ldrb r1, [r4] - mov r0, #2 - tst r0, r1 - bne _020369BA - ldr r0, _020369BC ; =0x021D4140 - ldr r3, _020369C8 ; =0x0000051C - ldr r0, [r0, #8] - mov r2, #0xb - add r1, r0, r3 - mov r0, #0xc - mul r0, r5 - add r0, r1, r0 - add r1, r4, #1 - add r3, #0x92 - bl sub_02033AF0 -_020369BA: - pop {r4, r5, r6, pc} - .balign 4, 0 -_020369BC: .word 0x021D4140 -_020369C0: .word 0x0000066C -_020369C4: .word 0x00000696 -_020369C8: .word 0x0000051C - thumb_func_end sub_0203690C - - thumb_func_start sub_020369CC -sub_020369CC: ; 0x020369CC - push {r4, r5, r6, lr} - ldr r3, _02036A8C ; =0x021D4140 - add r5, r0, #0 - ldr r0, [r3, #8] - ldr r2, _02036A90 ; =0x0000066C - add r4, r1, #0 - add r1, r0, r2 - lsl r0, r5, #2 - ldr r6, [r1, r0] - sub r6, r6, #1 - str r6, [r1, r0] - cmp r4, #0 - beq _02036A88 - ldr r0, [r3, #8] - add r2, #0x32 - add r0, r0, r2 - ldrb r1, [r0, r5] - cmp r1, #0 - beq _020369FA - ldrb r2, [r4] - mov r1, #1 - tst r1, r2 - bne _02036A88 -_020369FA: - mov r1, #0 - strb r1, [r0, r5] - bl sub_02035FF0 - cmp r0, #1 - bne _02036A88 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_0203772C - add r6, r0, #0 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - ldrb r0, [r4] - ldr r2, _02036A94 ; =0x00000694 - cmp r0, #0xff - bne _02036A38 - ldr r0, _02036A8C ; =0x021D4140 - mov r3, #1 - ldr r1, [r0, #8] - lsl r3, r5 - ldrh r0, [r1, r2] - mvn r3, r3 - and r0, r3 - b _02036A44 -_02036A38: - ldr r0, _02036A8C ; =0x021D4140 - mov r3, #1 - ldr r1, [r0, #8] - lsl r3, r5 - ldrh r0, [r1, r2] - orr r0, r3 -_02036A44: - strh r0, [r1, r2] - ldrb r0, [r4] - cmp r0, #0xff - beq _02036A88 - cmp r0, #2 - beq _02036A88 - cmp r0, #0xe - beq _02036A88 - ldr r1, _02036A8C ; =0x021D4140 - ldr r2, _02036A98 ; =0x0000069E - ldr r1, [r1, #8] - add r3, r1, r5 - ldrb r2, [r3, r2] - cmp r2, #0 - beq _02036A68 - mov r2, #1 - tst r0, r2 - bne _02036A88 -_02036A68: - ldr r3, _02036A9C ; =0x0000051C - mov r0, #0xc - add r1, r1, r3 - mul r0, r5 - add r0, r1, r0 - add r1, r4, #1 - sub r2, r6, #1 - add r3, #0xcb - bl sub_02033AF0 - ldr r0, _02036A8C ; =0x021D4140 - mov r2, #0 - ldr r0, [r0, #8] - add r1, r0, r5 - ldr r0, _02036A98 ; =0x0000069E - strb r2, [r1, r0] -_02036A88: - pop {r4, r5, r6, pc} - nop -_02036A8C: .word 0x021D4140 -_02036A90: .word 0x0000066C -_02036A94: .word 0x00000694 -_02036A98: .word 0x0000069E -_02036A9C: .word 0x0000051C - thumb_func_end sub_020369CC - - thumb_func_start sub_02036AA0 -sub_02036AA0: ; 0x02036AA0 - push {r3, lr} - cmp r0, #0 - beq _02036AB0 - ldr r0, _02036AB8 ; =0x0210F900 - ldrb r1, [r0, #1] - add r1, r1, #1 - strb r1, [r0, #1] - pop {r3, pc} -_02036AB0: - bl GF_AssertFail - pop {r3, pc} - nop -_02036AB8: .word 0x0210F900 - thumb_func_end sub_02036AA0 - - thumb_func_start sub_02036ABC -sub_02036ABC: ; 0x02036ABC - push {r3, lr} - cmp r0, #0 - beq _02036ACC - ldr r0, _02036AD4 ; =0x0210F900 - ldrb r1, [r0] - add r1, r1, #1 - strb r1, [r0] - pop {r3, pc} -_02036ACC: - bl GF_AssertFail - pop {r3, pc} - nop -_02036AD4: .word 0x0210F900 - thumb_func_end sub_02036ABC - - thumb_func_start sub_02036AD8 -sub_02036AD8: ; 0x02036AD8 - push {r4, lr} - ldr r0, _02036BD0 ; =0x021D4140 - ldr r0, [r0, #8] - cmp r0, #0 - beq _02036BCE - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - bne _02036BCE - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_0203772C - add r4, r0, #0 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - bl sub_02033298 - cmp r0, #4 - bne _02036BCE - bl sub_0203769C - bl sub_020373B4 - cmp r0, #0 - bne _02036B22 - bl sub_0203769C - pop {r4, pc} -_02036B22: - ldr r0, _02036BD4 ; =0x0210F900 - ldrb r1, [r0, #1] - cmp r1, #2 - beq _02036B30 - ldrb r0, [r0, #1] - cmp r0, #0 - bne _02036BCE -_02036B30: - bl sub_0203769C - cmp r0, #0 - beq _02036B84 - ldr r0, _02036BD4 ; =0x0210F900 - ldr r3, _02036BD8 ; =sub_02036AA0 - ldrb r1, [r0, #1] - mov r2, #0xe - add r1, r1, #1 - strb r1, [r0, #1] - ldr r0, _02036BD0 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02036BDC ; =0x000006AF - ldrb r0, [r1, r0] - lsl r0, r0, #6 - add r0, r1, r0 - lsl r1, r4, #0x10 - lsr r1, r1, #0x10 - bl sub_02033800 - cmp r0, #0 - bne _02036B66 - ldr r0, _02036BD4 ; =0x0210F900 - ldrb r1, [r0, #1] - sub r1, r1, #1 - strb r1, [r0, #1] - pop {r4, pc} -_02036B66: - ldr r2, _02036BD0 ; =0x021D4140 - ldr r1, _02036BDC ; =0x000006AF - ldr r4, [r2, #8] - mov r0, #1 - ldrb r3, [r4, r1] - sub r0, r0, r3 - strb r0, [r4, r1] - add r0, r1, #0 - ldr r2, [r2, #8] - sub r0, #0x47 - ldr r0, [r2, r0] - sub r1, #0x47 - add r0, r0, #1 - str r0, [r2, r1] - pop {r4, pc} -_02036B84: - bl sub_02033250 - ldr r1, _02036BE0 ; =0x0000FFFE - tst r0, r1 - beq _02036BCE - ldr r0, _02036BD4 ; =0x0210F900 - ldrb r1, [r0, #1] - add r1, r1, #1 - strb r1, [r0, #1] - mov r0, #1 - bl sub_02036AA0 - ldr r0, _02036BD0 ; =0x021D4140 - ldr r1, _02036BDC ; =0x000006AF - ldr r2, [r0, #8] - mov r0, #0 - ldrb r1, [r2, r1] - lsl r1, r1, #6 - add r1, r2, r1 - lsl r2, r4, #0x10 - lsr r2, r2, #0x10 - bl sub_0203690C - ldr r2, _02036BD0 ; =0x021D4140 - ldr r1, _02036BDC ; =0x000006AF - ldr r4, [r2, #8] - mov r0, #1 - ldrb r3, [r4, r1] - sub r0, r0, r3 - strb r0, [r4, r1] - add r0, r1, #0 - ldr r2, [r2, #8] - sub r0, #0x47 - ldr r0, [r2, r0] - sub r1, #0x47 - add r0, r0, #1 - str r0, [r2, r1] -_02036BCE: - pop {r4, pc} - .balign 4, 0 -_02036BD0: .word 0x021D4140 -_02036BD4: .word 0x0210F900 -_02036BD8: .word sub_02036AA0 -_02036BDC: .word 0x000006AF -_02036BE0: .word 0x0000FFFE - thumb_func_end sub_02036AD8 - - thumb_func_start sub_02036BE4 -sub_02036BE4: ; 0x02036BE4 - push {r3, r4, r5, r6, r7, lr} - ldr r7, _02036D08 ; =0x021D4140 - mov r2, #0x66 - ldr r5, [r7, #8] - lsl r2, r2, #4 - ldrb r0, [r5, r2] - mov r6, #0 - add r4, r6, #0 - cmp r0, #0 - beq _02036C02 - sub r1, r2, #4 - ldrh r1, [r5, r1] - mov r3, #0xf0 - tst r3, r1 - bne _02036C04 -_02036C02: - b _02036D06 -_02036C04: - cmp r0, #2 - bne _02036C42 - mov r0, #0x20 - tst r0, r1 - beq _02036C16 - mov r0, #0x10 - orr r0, r6 - lsl r0, r0, #0x10 - lsr r4, r0, #0x10 -_02036C16: - mov r0, #0x10 - tst r0, r1 - beq _02036C24 - mov r0, #0x20 - orr r0, r4 - lsl r0, r0, #0x10 - lsr r4, r0, #0x10 -_02036C24: - mov r0, #0x40 - tst r0, r1 - beq _02036C32 - mov r0, #0x80 - orr r0, r4 - lsl r0, r0, #0x10 - lsr r4, r0, #0x10 -_02036C32: - mov r0, #0x80 - tst r0, r1 - beq _02036CF0 - mov r0, #0x40 - orr r0, r4 - lsl r0, r0, #0x10 - lsr r4, r0, #0x10 - b _02036CF0 -_02036C42: - add r0, r2, #2 - ldrh r0, [r5, r0] - cmp r0, #0 - beq _02036C64 - add r4, r0, #0 - add r0, r2, #1 - ldrsb r0, [r5, r0] - sub r1, r0, #1 - add r0, r2, #1 - strb r1, [r5, r0] - ldr r1, [r7, #8] - ldrsb r0, [r1, r0] - cmp r0, #0 - bge _02036CF0 - add r0, r2, #2 - strh r6, [r1, r0] - b _02036CF0 -_02036C64: - add r0, r2, #0 - sub r0, #0x34 - add r6, r5, r0 - sub r2, #0x34 - ldr r0, [r6, #8] - ldr r1, [r6, #0xc] - ldr r2, [r5, r2] - ldr r3, [r6, #4] - bl _ll_mul - add r3, r0, #0 - add r2, r1, #0 - ldr r0, [r6, #0x10] - ldr r1, [r6, #0x14] - add r0, r0, r3 - adc r1, r2 - ldr r2, _02036D0C ; =0x0000062C - str r0, [r5, r2] - mov r2, #0 - str r1, [r6, #4] - lsr r0, r1, #0x1e - lsl r1, r2, #2 - orr r1, r0 - cmp r1, #3 - bhi _02036CB8 - add r0, r1, r1 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_02036CA2: ; jump table - .short _02036CAA - _02036CA2 - 2 ; case 0 - .short _02036CAE - _02036CA2 - 2 ; case 1 - .short _02036CB2 - _02036CA2 - 2 ; case 2 - .short _02036CB6 - _02036CA2 - 2 ; case 3 -_02036CAA: - mov r4, #0x20 - b _02036CB8 -_02036CAE: - mov r4, #0x10 - b _02036CB8 -_02036CB2: - mov r4, #0x40 - b _02036CB8 -_02036CB6: - mov r4, #0x80 -_02036CB8: - ldr r0, _02036D08 ; =0x021D4140 - ldr r5, [r0, #8] - ldr r0, _02036D0C ; =0x0000062C - add r6, r5, r0 - ldr r0, [r6, #8] - ldr r1, [r6, #0xc] - ldr r2, [r6] - ldr r3, [r6, #4] - bl _ll_mul - ldr r3, [r6, #0x10] - ldr r2, [r6, #0x14] - add r0, r3, r0 - adc r2, r1 - ldr r1, _02036D0C ; =0x0000062C - mov r3, #0 - str r0, [r5, r1] - str r2, [r6, #4] - lsr r0, r2, #0x1c - lsl r2, r3, #4 - orr r2, r0 - add r0, r1, #0 - add r0, #0x35 - strb r2, [r5, r0] - ldr r0, _02036D08 ; =0x021D4140 - add r1, #0x36 - ldr r0, [r0, #8] - strh r4, [r0, r1] -_02036CF0: - ldr r2, _02036D08 ; =0x021D4140 - ldr r1, _02036D10 ; =0x0000065C - ldr r5, [r2, #8] - mov r0, #0xf0 - ldrh r3, [r5, r1] - bic r3, r0 - strh r3, [r5, r1] - ldr r2, [r2, #8] - ldrh r0, [r2, r1] - add r0, r0, r4 - strh r0, [r2, r1] -_02036D06: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02036D08: .word 0x021D4140 -_02036D0C: .word 0x0000062C -_02036D10: .word 0x0000065C - thumb_func_end sub_02036BE4 - - thumb_func_start sub_02036D14 -sub_02036D14: ; 0x02036D14 - push {r4, r5, r6, r7} - ldr r4, _02036D94 ; =0x021D4140 - lsl r6, r1, #1 - ldr r2, [r4, #8] - mov r5, #0 - add r3, r2, r6 - ldr r2, _02036D98 ; =0x00000644 - strh r5, [r3, r2] - ldrb r5, [r0] - mov r3, #0x10 - add r7, r5, #0 - and r7, r3 - cmp r7, #0x10 - bne _02036D8C - mov r7, #0xc - and r5, r7 - lsl r5, r5, #0x18 - lsr r5, r5, #0x18 - bne _02036D48 - ldr r3, [r4, #8] - add r4, r3, r2 - ldrh r3, [r4, r6] - mov r2, #0x40 - orr r2, r3 - strh r2, [r4, r6] - b _02036D7A -_02036D48: - cmp r5, #4 - bne _02036D5A - ldr r3, [r4, #8] - add r4, r3, r2 - ldrh r3, [r4, r6] - mov r2, #0x80 - orr r2, r3 - strh r2, [r4, r6] - b _02036D7A -_02036D5A: - cmp r5, #8 - bne _02036D6C - ldr r3, [r4, #8] - add r4, r3, r2 - ldrh r3, [r4, r6] - mov r2, #0x20 - orr r2, r3 - strh r2, [r4, r6] - b _02036D7A -_02036D6C: - cmp r5, #0xc - bne _02036D7A - ldr r4, [r4, #8] - add r4, r4, r2 - ldrh r2, [r4, r6] - orr r2, r3 - strh r2, [r4, r6] -_02036D7A: - ldrb r0, [r0] - asr r2, r0, #5 - mov r0, #7 - and r2, r0 - ldr r0, _02036D94 ; =0x021D4140 - ldr r0, [r0, #8] - add r1, r0, r1 - ldr r0, _02036D9C ; =0x00000654 - strb r2, [r1, r0] -_02036D8C: - mov r0, #1 - pop {r4, r5, r6, r7} - bx lr - nop -_02036D94: .word 0x021D4140 -_02036D98: .word 0x00000644 -_02036D9C: .word 0x00000654 - thumb_func_end sub_02036D14 - - thumb_func_start sub_02036DA0 -sub_02036DA0: ; 0x02036DA0 - push {r4, lr} - add r4, r0, #0 - ldr r0, _02036E4C ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02036E50 ; =0x0000065E - ldrb r0, [r1, r0] - cmp r0, #0 - beq _02036DB4 - mov r0, #0 - pop {r4, pc} -_02036DB4: - bl sub_0203751C - cmp r0, #0 - bne _02036DC0 - mov r0, #0 - pop {r4, pc} -_02036DC0: - ldr r0, _02036E4C ; =0x021D4140 - ldr r2, [r0, #8] - ldr r0, _02036E54 ; =0x000006B1 - ldrb r1, [r2, r0] - cmp r1, #0 - beq _02036DD0 - sub r1, r1, #1 - strb r1, [r2, r0] -_02036DD0: - ldr r1, _02036E4C ; =0x021D4140 - ldr r0, _02036E58 ; =0x0000065C - ldr r2, [r1, #8] - mov r3, #0x40 - ldrh r2, [r2, r0] - tst r3, r2 - beq _02036DF0 - ldrb r3, [r4] - mov r2, #0x10 - add r0, #0x55 - orr r2, r3 - strb r2, [r4] - ldr r1, [r1, #8] - mov r2, #8 - strb r2, [r1, r0] - b _02036E36 -_02036DF0: - mov r3, #0x80 - tst r3, r2 - beq _02036E08 - ldrb r3, [r4] - mov r2, #0x14 - add r0, #0x55 - orr r2, r3 - strb r2, [r4] - ldr r1, [r1, #8] - mov r2, #8 - strb r2, [r1, r0] - b _02036E36 -_02036E08: - mov r3, #0x20 - tst r3, r2 - beq _02036E20 - ldrb r3, [r4] - mov r2, #0x18 - add r0, #0x55 - orr r2, r3 - strb r2, [r4] - ldr r1, [r1, #8] - mov r2, #8 - strb r2, [r1, r0] - b _02036E36 -_02036E20: - mov r3, #0x10 - tst r2, r3 - beq _02036E36 - ldrb r3, [r4] - mov r2, #0x1c - add r0, #0x55 - orr r2, r3 - strb r2, [r4] - ldr r1, [r1, #8] - mov r2, #8 - strb r2, [r1, r0] -_02036E36: - ldr r0, _02036E4C ; =0x021D4140 - ldrb r2, [r4] - ldr r1, [r0, #8] - ldr r0, _02036E5C ; =0x0000065F - ldrb r0, [r1, r0] - lsl r0, r0, #5 - orr r0, r2 - strb r0, [r4] - mov r0, #0 - pop {r4, pc} - nop -_02036E4C: .word 0x021D4140 -_02036E50: .word 0x0000065E -_02036E54: .word 0x000006B1 -_02036E58: .word 0x0000065C -_02036E5C: .word 0x0000065F - thumb_func_end sub_02036DA0 - - thumb_func_start sub_02036E60 -sub_02036E60: ; 0x02036E60 - push {r3, r4, r5, lr} - sub sp, #8 - add r4, r0, #0 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_0203772C - add r5, r0, #0 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - ldr r0, _02036F24 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02036F28 ; =0x000006B4 - ldrb r0, [r1, r0] - cmp r0, #0 - bne _02036E90 - mov r0, #0 - b _02036E92 -_02036E90: - mov r0, #1 -_02036E92: - strb r0, [r4] - bl sub_02035FF0 - cmp r0, #0 - bne _02036EA2 - add r0, r4, #0 - bl sub_02036DA0 -_02036EA2: - ldr r1, _02036F24 ; =0x021D4140 - ldr r0, _02036F28 ; =0x000006B4 - ldr r2, [r1, #8] - mov r3, #0 - strb r3, [r2, r0] - mov r0, #0x16 - ldr r1, [r1, #8] - lsl r0, r0, #6 - add r0, r1, r0 - bl sub_02033C50 - cmp r0, #0 - beq _02036ED0 - ldrb r1, [r4] - mov r0, #2 - orr r0, r1 - strb r0, [r4] - ldrb r0, [r4] - cmp r0, #2 - bne _02036F1C - add sp, #8 - mov r0, #0 - pop {r3, r4, r5, pc} -_02036ED0: - sub r0, r5, #1 - str r0, [sp, #4] - add r0, r4, #1 - str r0, [sp] - ldr r0, _02036F24 ; =0x021D4140 - mov r2, #1 - ldr r1, [r0, #8] - mov r0, #0x16 - lsl r0, r0, #6 - add r0, r1, r0 - add r1, sp, #0 - bl sub_02033ECC - cmp r0, #0 - bne _02036EF8 - ldr r0, _02036F24 ; =0x021D4140 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _02036F28 ; =0x000006B4 - strb r2, [r1, r0] -_02036EF8: - bl sub_02035FF0 - cmp r0, #1 - bne _02036F1C - ldr r2, _02036F24 ; =0x021D4140 - ldr r1, _02036F2C ; =0x000006AA - ldr r3, [r2, #8] - ldrb r0, [r3, r1] - add r0, r0, #1 - strb r0, [r3, r1] - ldr r2, [r2, #8] - ldrb r0, [r4] - ldrb r1, [r2, r1] - lsl r2, r1, #4 - mov r1, #0xf0 - and r1, r2 - orr r0, r1 - strb r0, [r4] -_02036F1C: - mov r0, #1 - add sp, #8 - pop {r3, r4, r5, pc} - nop -_02036F24: .word 0x021D4140 -_02036F28: .word 0x000006B4 -_02036F2C: .word 0x000006AA - thumb_func_end sub_02036E60 - - thumb_func_start sub_02036F30 -sub_02036F30: ; 0x02036F30 - push {r4, lr} - sub sp, #8 - add r4, r0, #0 - mov r0, #0xb - strb r0, [r4] - ldr r0, _02036FA0 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02036FA4 ; =0x000006B5 - ldrb r0, [r1, r0] - cmp r0, #0 - bne _02036F4A - mov r0, #0 - b _02036F4C -_02036F4A: - mov r0, #1 -_02036F4C: - strb r0, [r4, #1] - bl sub_02033250 - asr r1, r0, #8 - strb r1, [r4, #2] - strb r0, [r4, #3] - mov r0, #0xbb - str r0, [sp, #4] - add r0, r4, #5 - str r0, [sp] - ldr r0, _02036FA0 ; =0x021D4140 - mov r2, #0 - ldr r1, [r0, #8] - mov r0, #0x5a - lsl r0, r0, #4 - add r0, r1, r0 - add r1, sp, #0 - bl sub_02033ECC - cmp r0, #0 - beq _02036F8C - ldr r0, _02036FA0 ; =0x021D4140 - mov r2, #0 - ldr r1, [r0, #8] - ldr r0, _02036FA4 ; =0x000006B5 - strb r2, [r1, r0] - ldr r1, [sp, #4] - mov r0, #0xbb - sub r0, r0, r1 - add sp, #8 - strb r0, [r4, #4] - pop {r4, pc} -_02036F8C: - ldr r0, _02036FA0 ; =0x021D4140 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _02036FA4 ; =0x000006B5 - strb r2, [r1, r0] - mov r0, #0xbb - strb r0, [r4, #4] - add sp, #8 - pop {r4, pc} - nop -_02036FA0: .word 0x021D4140 -_02036FA4: .word 0x000006B5 - thumb_func_end sub_02036F30 - - thumb_func_start sub_02036FA8 -sub_02036FA8: ; 0x02036FA8 - push {r3, lr} - ldr r0, _02036FD0 ; =0x021D4140 - ldr r2, [r0, #8] - ldr r0, _02036FD4 ; =0x000006BB - ldrb r1, [r2, r0] - cmp r1, #0 - bne _02036FBA - mov r0, #0 - pop {r3, pc} -_02036FBA: - add r0, r0, #1 - ldrb r0, [r2, r0] - bl _s32_div_f - cmp r1, #0 - bne _02036FCA - mov r0, #1 - pop {r3, pc} -_02036FCA: - mov r0, #0 - pop {r3, pc} - nop -_02036FD0: .word 0x021D4140 -_02036FD4: .word 0x000006BB - thumb_func_end sub_02036FA8 - - thumb_func_start sub_02036FD8 -sub_02036FD8: ; 0x02036FD8 - push {r4, r5, r6, lr} - sub sp, #8 - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - bl sub_0203769C - bl sub_020373B4 - cmp r0, #0 - bne _02036FF4 - add sp, #8 - mov r0, #0 - pop {r4, r5, r6, pc} -_02036FF4: - mov r0, #1 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - ldr r0, _0203702C ; =0x021D4140 - add r2, r4, #0 - ldr r1, [r0, #8] - mov r0, #0x16 - lsl r0, r0, #6 - add r0, r1, r0 - add r1, r5, #0 - add r3, r6, #0 - bl sub_02033DF0 - cmp r0, #0 - beq _0203701A - add sp, #8 - mov r0, #1 - pop {r4, r5, r6, pc} -_0203701A: - bl sub_0203993C - cmp r0, #0xa - bne _02037026 - bl sub_02037974 -_02037026: - mov r0, #0 - add sp, #8 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203702C: .word 0x021D4140 - thumb_func_end sub_02036FD8 - - thumb_func_start sub_02037030 -sub_02037030: ; 0x02037030 - push {r4, r5, r6, lr} - sub sp, #8 - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - bl sub_0203769C - bl sub_020373B4 - cmp r0, #0 - bne _0203704C - add sp, #8 - mov r0, #0 - pop {r4, r5, r6, pc} -_0203704C: - mov r0, #1 - str r0, [sp] - str r0, [sp, #4] - ldr r0, _02037084 ; =0x021D4140 - add r2, r4, #0 - ldr r1, [r0, #8] - mov r0, #0x16 - lsl r0, r0, #6 - add r0, r1, r0 - add r1, r5, #0 - add r3, r6, #0 - bl sub_02033DF0 - cmp r0, #0 - beq _02037070 - add sp, #8 - mov r0, #1 - pop {r4, r5, r6, pc} -_02037070: - bl sub_0203993C - cmp r0, #0xa - bne _0203707C - bl sub_02037974 -_0203707C: - mov r0, #0 - add sp, #8 - pop {r4, r5, r6, pc} - nop -_02037084: .word 0x021D4140 - thumb_func_end sub_02037030 - - thumb_func_start sub_02037088 -sub_02037088: ; 0x02037088 - push {r4, r5, r6, lr} - sub sp, #8 - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - bl sub_0203769C - cmp r0, #0 - beq _020370A4 - bl GF_AssertFail - add sp, #8 - mov r0, #0 - pop {r4, r5, r6, pc} -_020370A4: - mov r0, #0 - bl sub_020373B4 - cmp r0, #0 - bne _020370B4 - add sp, #8 - mov r0, #0 - pop {r4, r5, r6, pc} -_020370B4: - bl sub_02035FF0 - cmp r0, #1 - bne _020370CA - add r0, r5, #0 - add r1, r4, #0 - add r2, r6, #0 - bl sub_02036FD8 - add sp, #8 - pop {r4, r5, r6, pc} -_020370CA: - mov r0, #1 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - ldr r0, _02037104 ; =0x021D4140 - add r2, r4, #0 - ldr r1, [r0, #8] - mov r0, #0x5a - lsl r0, r0, #4 - add r0, r1, r0 - add r1, r5, #0 - add r3, r6, #0 - bl sub_02033DF0 - cmp r0, #0 - beq _020370F0 - add sp, #8 - mov r0, #1 - pop {r4, r5, r6, pc} -_020370F0: - bl sub_0203993C - cmp r0, #0xa - bne _020370FC - bl sub_02037974 -_020370FC: - mov r0, #0 - add sp, #8 - pop {r4, r5, r6, pc} - nop -_02037104: .word 0x021D4140 - thumb_func_end sub_02037088 - - thumb_func_start sub_02037108 -sub_02037108: ; 0x02037108 - push {r4, r5, r6, lr} - sub sp, #8 - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - bl sub_0203769C - cmp r0, #0 - beq _02037124 - bl sub_02037974 - add sp, #8 - mov r0, #0 - pop {r4, r5, r6, pc} -_02037124: - mov r0, #0 - bl sub_020373B4 - cmp r0, #0 - bne _02037134 - add sp, #8 - mov r0, #0 - pop {r4, r5, r6, pc} -_02037134: - bl sub_02035FF0 - cmp r0, #1 - bne _0203714A - add r0, r5, #0 - add r1, r4, #0 - add r2, r6, #0 - bl sub_02037030 - add sp, #8 - pop {r4, r5, r6, pc} -_0203714A: - mov r0, #1 - str r0, [sp] - str r0, [sp, #4] - ldr r0, _02037180 ; =0x021D4140 - add r2, r4, #0 - ldr r1, [r0, #8] - mov r0, #0x5a - lsl r0, r0, #4 - add r0, r1, r0 - add r1, r5, #0 - add r3, r6, #0 - bl sub_02033DF0 - cmp r0, #0 - beq _0203716E - add sp, #8 - mov r0, #1 - pop {r4, r5, r6, pc} -_0203716E: - bl sub_0203993C - cmp r0, #0xa - bne _0203717A - bl sub_02037974 -_0203717A: - mov r0, #0 - add sp, #8 - pop {r4, r5, r6, pc} - .balign 4, 0 -_02037180: .word 0x021D4140 - thumb_func_end sub_02037108 - - thumb_func_start sub_02037184 -sub_02037184: ; 0x02037184 - ldr r3, _0203718C ; =sub_02037108 - mov r2, #0 - bx r3 - nop -_0203718C: .word sub_02037108 - thumb_func_end sub_02037184 - - thumb_func_start sub_02037190 -sub_02037190: ; 0x02037190 - ldr r0, _0203719C ; =0x021D4140 - ldr r3, _020371A0 ; =sub_02033BE4 - ldr r1, [r0, #8] - ldr r0, _020371A4 ; =0x00000498 - add r0, r1, r0 - bx r3 - .balign 4, 0 -_0203719C: .word 0x021D4140 -_020371A0: .word sub_02033BE4 -_020371A4: .word 0x00000498 - thumb_func_end sub_02037190 - - thumb_func_start sub_020371A8 -sub_020371A8: ; 0x020371A8 - push {r4, lr} - ldr r4, [sp, #8] - bl sub_02034170 - mov r0, #0xee - strb r0, [r4, #0xa] - ldr r0, _020371C0 ; =0x0000FFFF - strh r0, [r4, #8] - mov r0, #0 - str r0, [r4, #4] - str r0, [r4] - pop {r4, pc} - .balign 4, 0 -_020371C0: .word 0x0000FFFF - thumb_func_end sub_020371A8 - - thumb_func_start sub_020371C4 -sub_020371C4: ; 0x020371C4 - push {r4, r5, r6, r7, lr} - sub sp, #0x14 - add r5, r0, #0 - str r1, [sp, #4] - str r2, [sp, #8] - add r4, r3, #0 - bl sub_02033BC4 - cmp r0, #0 - beq _020372D4 -_020371D8: - ldrb r7, [r4, #0xa] - cmp r7, #0xee - bne _020371EA - add r0, r5, #0 - bl sub_02033B68 - add r7, r0, #0 - cmp r7, #0xee - beq _020372CA -_020371EA: - mov r0, #4 - ldrsh r0, [r5, r0] - strb r7, [r4, #0xa] - ldrh r6, [r4, #8] - str r0, [sp, #0x10] - ldr r0, _020372D8 ; =0x0000FFFF - cmp r6, r0 - bne _0203723E - add r0, r7, #0 - bl sub_020341DC - add r6, r0, #0 - ldr r0, _020372DC ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _020372E0 ; =0x000006B8 - ldrb r0, [r1, r0] - cmp r0, #0 - bne _020372D4 - ldr r0, _020372D8 ; =0x0000FFFF - cmp r6, r0 - bne _0203723C - add r0, r5, #0 - bl sub_02033BC4 - cmp r0, #1 - bge _02037226 - ldr r0, [sp, #0x10] - add sp, #0x14 - strh r0, [r5, #4] - pop {r4, r5, r6, r7, pc} -_02037226: - add r0, r5, #0 - bl sub_02033B68 - lsl r6, r0, #8 - add r0, r5, #0 - bl sub_02033B68 - add r6, r6, r0 - mov r0, #4 - ldrsh r0, [r5, r0] - str r0, [sp, #0x10] -_0203723C: - strh r6, [r4, #8] -_0203723E: - add r0, r7, #0 - bl sub_02034244 - cmp r0, #0 - beq _0203729A - ldr r0, [r4, #4] - cmp r0, #0 - bne _0203725A - ldrh r2, [r4, #8] - ldr r1, [sp, #4] - add r0, r7, #0 - bl sub_02034280 - str r0, [r4, #4] -_0203725A: - ldr r2, [r4] - ldr r1, [sp, #8] - add r0, r5, #0 - sub r2, r6, r2 - bl sub_02033B4C - ldr r2, [r4, #4] - str r0, [sp, #0xc] - cmp r2, #0 - beq _0203727A - ldr r1, [r4] - ldr r0, [sp, #8] - add r1, r2, r1 - ldr r2, [sp, #0xc] - bl MIi_CpuCopy8 -_0203727A: - ldr r1, [r4] - ldr r0, [sp, #0xc] - add r0, r1, r0 - str r0, [r4] - cmp r0, r6 - blt _020372CA - str r4, [sp] - ldr r0, [sp, #4] - ldr r3, [r4, #4] - add r1, r7, #0 - add r2, r6, #0 - bl sub_020371A8 - cmp r7, #0x11 - beq _020372D4 - b _020372CA -_0203729A: - add r0, r5, #0 - bl sub_02033BC4 - cmp r0, r6 - blt _020372C2 - ldr r1, [sp, #8] - add r0, r5, #0 - add r2, r6, #0 - bl sub_02033B4C - ldr r0, [sp, #4] - ldr r3, [sp, #8] - add r1, r7, #0 - add r2, r6, #0 - str r4, [sp] - bl sub_020371A8 - cmp r7, #0x11 - beq _020372D4 - b _020372CA -_020372C2: - ldr r0, [sp, #0x10] - add sp, #0x14 - strh r0, [r5, #4] - pop {r4, r5, r6, r7, pc} -_020372CA: - add r0, r5, #0 - bl sub_02033BC4 - cmp r0, #0 - bne _020371D8 -_020372D4: - add sp, #0x14 - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_020372D8: .word 0x0000FFFF -_020372DC: .word 0x021D4140 -_020372E0: .word 0x000006B8 - thumb_func_end sub_020371C4 - - thumb_func_start sub_020372E4 -sub_020372E4: ; 0x020372E4 - push {r4, lr} - ldr r0, _02037328 ; =0x021D4140 - ldr r1, [r0, #8] - cmp r1, #0 - beq _02037326 - ldr r0, _0203732C ; =0x000006BA - ldrb r0, [r1, r0] - cmp r0, #0 - bne _02037326 - ldr r0, _02037330 ; =0x000004A4 - add r0, r1, r0 - bl sub_02033C28 - ldr r0, _02037328 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02037330 ; =0x000004A4 - add r0, r1, r0 - bl sub_02033BC4 - cmp r0, #0 - ble _02037326 - ldr r0, _02037328 ; =0x021D4140 - mov r3, #0x62 - ldr r4, [r0, #8] - ldr r2, _02037330 ; =0x000004A4 - lsl r3, r3, #4 - add r0, r4, r2 - sub r2, #0x10 - ldr r2, [r4, r2] - mov r1, #0 - add r3, r4, r3 - bl sub_020371C4 -_02037326: - pop {r4, pc} - .balign 4, 0 -_02037328: .word 0x021D4140 -_0203732C: .word 0x000006BA -_02037330: .word 0x000004A4 - thumb_func_end sub_020372E4 - - thumb_func_start sub_02037334 -sub_02037334: ; 0x02037334 - push {r3, r4, r5, r6, r7, lr} - ldr r0, _020373A4 ; =0x021D4140 - ldr r1, [r0, #8] - cmp r1, #0 - beq _020373A0 - ldr r0, _020373A8 ; =0x000006BA - ldrb r0, [r1, r0] - cmp r0, #0 - bne _020373A0 - bl sub_0203993C - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r0, r0, #1 - mov r4, #0 - str r0, [sp] - cmp r0, #0 - ble _020373A0 - ldr r7, _020373A4 ; =0x021D4140 - add r5, r4, #0 -_02037360: - ldr r1, [r7, #8] - ldr r0, _020373AC ; =0x0000051C - add r0, r1, r0 - add r0, r0, r5 - bl sub_02033C28 - ldr r1, [r7, #8] - ldr r0, _020373AC ; =0x0000051C - add r0, r1, r0 - add r0, r0, r5 - bl sub_02033BC4 - cmp r0, #0 - ble _02037396 - mov r3, #0x17 - ldr r6, [r7, #8] - ldr r0, _020373AC ; =0x0000051C - ldr r2, _020373B0 ; =0x00000494 - lsl r3, r3, #6 - add r0, r6, r0 - add r3, r6, r3 - ldr r2, [r6, r2] - add r0, r0, r5 - add r1, r4, #0 - add r3, r3, r5 - bl sub_020371C4 -_02037396: - ldr r0, [sp] - add r4, r4, #1 - add r5, #0xc - cmp r4, r0 - blt _02037360 -_020373A0: - pop {r3, r4, r5, r6, r7, pc} - nop -_020373A4: .word 0x021D4140 -_020373A8: .word 0x000006BA -_020373AC: .word 0x0000051C -_020373B0: .word 0x00000494 - thumb_func_end sub_02037334 - - thumb_func_start sub_020373B4 -sub_020373B4: ; 0x020373B4 - push {r4, lr} - add r4, r0, #0 - ldr r0, _02037448 ; =0x021D4140 - ldr r0, [r0, #8] - cmp r0, #0 - bne _020373C4 - mov r0, #0 - pop {r4, pc} -_020373C4: - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _020373F2 - ldr r0, _02037448 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _0203744C ; =0x000006B6 - ldrb r0, [r1, r0] - cmp r0, #0 - beq _020373EE - bl ov00_021EE4FC - lsl r0, r0, #0x10 - lsr r2, r0, #0x10 - mov r0, #1 - add r1, r0, #0 - lsl r1, r4 - tst r1, r2 - bne _02037444 -_020373EE: - mov r0, #0 - pop {r4, pc} -_020373F2: - bl sub_02037474 - cmp r0, #0 - bne _020373FE - mov r0, #0 - pop {r4, pc} -_020373FE: - bl sub_02033298 - cmp r0, #4 - beq _0203740A - mov r0, #0 - pop {r4, pc} -_0203740A: - bl sub_0203769C - cmp r4, r0 - bne _02037416 - mov r0, #1 - pop {r4, pc} -_02037416: - bl sub_0203769C - cmp r0, #0 - bne _02037430 - bl sub_02033250 - mov r1, #1 - add r2, r1, #0 - lsl r2, r4 - tst r0, r2 - beq _02037442 - add r0, r1, #0 - pop {r4, pc} -_02037430: - ldr r0, _02037448 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02037450 ; =0x00000694 - ldrh r2, [r1, r0] - mov r0, #1 - add r1, r0, #0 - lsl r1, r4 - tst r1, r2 - bne _02037444 -_02037442: - mov r0, #0 -_02037444: - pop {r4, pc} - nop -_02037448: .word 0x021D4140 -_0203744C: .word 0x000006B6 -_02037450: .word 0x00000694 - thumb_func_end sub_020373B4 - - thumb_func_start sub_02037454 -sub_02037454: ; 0x02037454 - push {r3, r4, r5, lr} - mov r4, #0 - add r5, r4, #0 -_0203745A: - lsl r0, r5, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _02037468 - add r4, r4, #1 -_02037468: - add r5, r5, #1 - cmp r5, #8 - blt _0203745A - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_02037454 - - thumb_func_start sub_02037474 -sub_02037474: ; 0x02037474 - push {r3, lr} - ldr r0, _02037494 ; =0x021D4140 - ldr r0, [r0, #8] - cmp r0, #0 - beq _0203748E - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _0203748E - mov r0, #1 - pop {r3, pc} -_0203748E: - bl sub_02035650 - pop {r3, pc} - .balign 4, 0 -_02037494: .word 0x021D4140 - thumb_func_end sub_02037474 - - thumb_func_start sub_02037498 -sub_02037498: ; 0x02037498 - ldr r1, _020374A4 ; =0x021D4140 - ldr r2, [r1, #8] - ldr r1, _020374A8 ; =0x0000065F - strb r0, [r2, r1] - bx lr - nop -_020374A4: .word 0x021D4140 -_020374A8: .word 0x0000065F - thumb_func_end sub_02037498 - - thumb_func_start sub_020374AC -sub_020374AC: ; 0x020374AC - ldr r1, _020374B8 ; =0x021D4140 - ldr r1, [r1, #8] - add r1, r1, r0 - ldr r0, _020374BC ; =0x00000654 - ldrb r0, [r1, r0] - bx lr - .balign 4, 0 -_020374B8: .word 0x021D4140 -_020374BC: .word 0x00000654 - thumb_func_end sub_020374AC - - thumb_func_start sub_020374C0 -sub_020374C0: ; 0x020374C0 - ldr r1, _020374DC ; =0x021D4140 - ldr r2, [r1, #8] - cmp r2, #0 - bne _020374CC - mov r0, #0 - bx lr -_020374CC: - ldr r1, _020374E0 ; =0x00000644 - add r3, r2, r1 - lsl r2, r0, #1 - ldrh r0, [r3, r2] - mov r1, #0 - strh r1, [r3, r2] - bx lr - nop -_020374DC: .word 0x021D4140 -_020374E0: .word 0x00000644 - thumb_func_end sub_020374C0 - - thumb_func_start sub_020374E4 -sub_020374E4: ; 0x020374E4 - ldr r0, _020374FC ; =0x021D4140 - ldr r3, [r0, #8] - cmp r3, #0 - beq _020374F8 - ldr r1, _02037500 ; =0x0000065C - mov r0, #2 - ldrh r2, [r3, r1] - lsl r0, r0, #0xe - orr r0, r2 - strh r0, [r3, r1] -_020374F8: - bx lr - nop -_020374FC: .word 0x021D4140 -_02037500: .word 0x0000065C - thumb_func_end sub_020374E4 - - thumb_func_start sub_02037504 -sub_02037504: ; 0x02037504 - ldr r0, _02037514 ; =0x021D4140 - ldr r2, [r0, #8] - cmp r2, #0 - beq _02037512 - ldr r0, _02037518 ; =0x0000065C - mov r1, #0 - strh r1, [r2, r0] -_02037512: - bx lr - .balign 4, 0 -_02037514: .word 0x021D4140 -_02037518: .word 0x0000065C - thumb_func_end sub_02037504 - - thumb_func_start sub_0203751C -sub_0203751C: ; 0x0203751C - ldr r0, _02037534 ; =0x021D4140 - ldr r1, [r0, #8] - cmp r1, #0 - beq _02037530 - ldr r0, _02037538 ; =0x0000065C - ldrh r1, [r1, r0] - mov r0, #2 - lsl r0, r0, #0xe - and r0, r1 - bx lr -_02037530: - mov r0, #1 - bx lr - .balign 4, 0 -_02037534: .word 0x021D4140 -_02037538: .word 0x0000065C - thumb_func_end sub_0203751C - - thumb_func_start sub_0203753C -sub_0203753C: ; 0x0203753C - push {r4, r5, r6, lr} - sub sp, #8 - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - bl sub_02035FF0 - cmp r0, #1 - bne _0203756E - mov r0, #1 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - ldr r0, _02037590 ; =0x021D4140 - add r2, r4, #0 - ldr r1, [r0, #8] - mov r0, #0x16 - lsl r0, r0, #6 - add r0, r1, r0 - add r1, r5, #0 - add r3, r6, #0 - bl sub_02033DF0 - add sp, #8 - pop {r4, r5, r6, pc} -_0203756E: - mov r0, #1 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - ldr r0, _02037590 ; =0x021D4140 - add r2, r4, #0 - ldr r1, [r0, #8] - mov r0, #0x5a - lsl r0, r0, #4 - add r0, r1, r0 - add r1, r5, #0 - add r3, r6, #0 - bl sub_02033DF0 - add sp, #8 - pop {r4, r5, r6, pc} - nop -_02037590: .word 0x021D4140 - thumb_func_end sub_0203753C - - thumb_func_start sub_02037594 -sub_02037594: ; 0x02037594 - push {r3, lr} - ldr r0, _0203760C ; =0x021D4140 - ldr r2, [r0, #8] - cmp r2, #0 - beq _02037608 - ldr r1, _02037610 ; =0x000006AB - ldrb r0, [r2, r1] - cmp r0, #1 - beq _020375AC - cmp r0, #3 - beq _020375E4 - pop {r3, pc} -_020375AC: - bl sub_02035FF0 - cmp r0, #1 - bne _020375C4 - ldr r1, _0203760C ; =0x021D4140 - mov r0, #0xb - ldr r2, [r1, #8] - ldr r1, _02037614 ; =0x000006AC - add r1, r2, r1 - bl sub_020376E0 - b _020375D4 -_020375C4: - ldr r1, _0203760C ; =0x021D4140 - mov r0, #0xb - ldr r2, [r1, #8] - ldr r1, _02037614 ; =0x000006AC - add r1, r2, r1 - mov r2, #1 - bl sub_02037108 -_020375D4: - cmp r0, #0 - beq _02037608 - ldr r0, _0203760C ; =0x021D4140 - mov r2, #2 - ldr r1, [r0, #8] - ldr r0, _02037610 ; =0x000006AB - strb r2, [r1, r0] - pop {r3, pc} -_020375E4: - add r1, r1, #1 - mov r0, #0xc - add r1, r2, r1 - bl sub_020376E0 - cmp r0, #0 - beq _02037608 - ldr r0, _0203760C ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02037614 ; =0x000006AC - ldrb r0, [r1, r0] - bl sub_02035FA8 - ldr r0, _0203760C ; =0x021D4140 - mov r2, #0 - ldr r1, [r0, #8] - ldr r0, _02037610 ; =0x000006AB - strb r2, [r1, r0] -_02037608: - pop {r3, pc} - nop -_0203760C: .word 0x021D4140 -_02037610: .word 0x000006AB -_02037614: .word 0x000006AC - thumb_func_end sub_02037594 - - thumb_func_start sub_02037618 -sub_02037618: ; 0x02037618 - push {r4, lr} - add r4, r2, #0 - bl sub_0203769C - cmp r0, #0 - bne _02037636 - ldr r1, _02037638 ; =0x021D4140 - ldr r0, _0203763C ; =0x000006AB - ldr r2, [r1, #8] - mov r3, #1 - strb r3, [r2, r0] - ldrb r2, [r4] - ldr r1, [r1, #8] - add r0, r0, #1 - strb r2, [r1, r0] -_02037636: - pop {r4, pc} - .balign 4, 0 -_02037638: .word 0x021D4140 -_0203763C: .word 0x000006AB - thumb_func_end sub_02037618 - - thumb_func_start sub_02037640 -sub_02037640: ; 0x02037640 - push {r4, lr} - add r4, r2, #0 - bl sub_0203769C - cmp r0, #0 - beq _0203765E - ldr r1, _02037660 ; =0x021D4140 - ldrb r3, [r4] - ldr r2, [r1, #8] - ldr r0, _02037664 ; =0x000006AC - strb r3, [r2, r0] - ldr r1, [r1, #8] - mov r2, #3 - sub r0, r0, #1 - strb r2, [r1, r0] -_0203765E: - pop {r4, pc} - .balign 4, 0 -_02037660: .word 0x021D4140 -_02037664: .word 0x000006AC - thumb_func_end sub_02037640 - - thumb_func_start sub_02037668 -sub_02037668: ; 0x02037668 - push {r4, lr} - add r4, r2, #0 - bl sub_0203769C - cmp r0, #0 - bne _02037690 - ldr r0, _02037694 ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02037698 ; =0x000006AB - ldrb r0, [r1, r0] - cmp r0, #2 - bne _02037690 - ldrb r0, [r4] - bl sub_02035FA8 - ldr r0, _02037694 ; =0x021D4140 - mov r2, #0 - ldr r1, [r0, #8] - ldr r0, _02037698 ; =0x000006AB - strb r2, [r1, r0] -_02037690: - pop {r4, pc} - nop -_02037694: .word 0x021D4140 -_02037698: .word 0x000006AB - thumb_func_end sub_02037668 - - thumb_func_start sub_0203769C -sub_0203769C: ; 0x0203769C - push {r3, lr} - ldr r0, _020376D0 ; =0x021D4140 - ldr r0, [r0, #8] - cmp r0, #0 - beq _020376CA - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _020376C4 - bl ov00_021E6964 - mov r1, #0 - mvn r1, r1 - cmp r0, r1 - beq _020376CA - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - pop {r3, pc} -_020376C4: - bl sub_020338F4 - pop {r3, pc} -_020376CA: - mov r0, #0 - pop {r3, pc} - nop -_020376D0: .word 0x021D4140 - thumb_func_end sub_0203769C - - thumb_func_start sub_020376D4 -sub_020376D4: ; 0x020376D4 - ldr r3, _020376DC ; =sub_02036FD8 - mov r2, #0 - bx r3 - nop -_020376DC: .word sub_02036FD8 - thumb_func_end sub_020376D4 - - thumb_func_start sub_020376E0 -sub_020376E0: ; 0x020376E0 - ldr r3, _020376E8 ; =sub_02037030 - mov r2, #0 - bx r3 - nop -_020376E8: .word sub_02037030 - thumb_func_end sub_020376E0 - - thumb_func_start sub_020376EC -sub_020376EC: ; 0x020376EC - ldr r3, _020376F4 ; =sub_02037030 - mov r1, #0 - add r2, r1, #0 - bx r3 - .balign 4, 0 -_020376F4: .word sub_02037030 - thumb_func_end sub_020376EC - - thumb_func_start sub_020376F8 -sub_020376F8: ; 0x020376F8 - ldr r3, _020376FC ; =sub_0203567C - bx r3 - .balign 4, 0 -_020376FC: .word sub_0203567C - thumb_func_end sub_020376F8 - - thumb_func_start sub_02037700 -sub_02037700: ; 0x02037700 - push {r3, lr} - ldr r0, _02037724 ; =0x021D4140 - ldr r1, [r0, #8] - cmp r1, #0 - beq _0203771E - ldr r0, _02037728 ; =0x000006B8 - ldrb r0, [r1, r0] - cmp r0, #0 - beq _0203771E - mov r0, #1 - add r1, r0, #0 - bl sub_020398D4 - mov r0, #1 - pop {r3, pc} -_0203771E: - bl sub_0203569C - pop {r3, pc} - .balign 4, 0 -_02037724: .word 0x021D4140 -_02037728: .word 0x000006B8 - thumb_func_end sub_02037700 - - thumb_func_start sub_0203772C -sub_0203772C: ; 0x0203772C - push {r3, lr} - bl sub_02033FC4 - cmp r0, #5 - blo _0203773A - mov r0, #0xc - pop {r3, pc} -_0203773A: - bl sub_02035FF0 - cmp r0, #0 - bne _02037746 - mov r0, #0xc - pop {r3, pc} -_02037746: - mov r0, #0x26 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203772C - - thumb_func_start sub_0203774C -sub_0203774C: ; 0x0203774C - push {r3, lr} - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FC4 - add r0, r0, #1 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203774C - - thumb_func_start sub_0203775C -sub_0203775C: ; 0x0203775C - push {r3, lr} - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bl sub_02033FF0 - add r0, r0, #1 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203775C - - thumb_func_start sub_0203776C -sub_0203776C: ; 0x0203776C - push {r3, lr} - bl sub_020357FC - cmp r0, #0 - bne _02037786 - bl sub_0203769C - cmp r0, #0 - bne _02037786 - mov r0, #2 - add r1, sp, #0 - bl sub_02037184 -_02037786: - bl sub_0203581C - pop {r3, pc} - thumb_func_end sub_0203776C - - thumb_func_start sub_0203778C -sub_0203778C: ; 0x0203778C - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x20 - add r4, r0, #0 - add r0, sp, #0x10 - add r1, sp, #4 - bl GF_RTC_CopyDateTime - ldr r0, _02037810 ; =gMain - ldr r6, [sp, #0x10] - mov r5, #0 - lsr r7, r6, #0x1c - lsl r5, r5, #4 - ldr r1, [sp, #0xc] - ldr r0, [r0, #0x2c] - lsl r6, r6, #4 - add r3, r1, r0 - ldr r0, [sp, #0x18] - orr r5, r7 - str r0, [sp] - ldr r0, [sp, #0x14] - ldr r1, [sp, #4] - add r6, r0, r6 - ldr r0, _02037814 ; =0x00000000 - ldr r2, [sp, #8] - adc r0, r5 - lsr r5, r6, #0x1b - lsl r0, r0, #5 - orr r0, r5 - ldr r5, [sp] - lsl r6, r6, #5 - add r6, r5, r6 - ldr r5, _02037814 ; =0x00000000 - adc r5, r0 - lsr r0, r6, #0x1b - lsl r5, r5, #5 - orr r5, r0 - lsl r0, r6, #5 - add r6, r1, r0 - ldr r1, _02037814 ; =0x00000000 - adc r1, r5 - lsr r0, r6, #0x1a - lsl r1, r1, #6 - orr r1, r0 - lsl r0, r6, #6 - add r5, r2, r0 - ldr r2, _02037814 ; =0x00000000 - adc r2, r1 - lsr r0, r5, #0x1a - lsl r1, r2, #6 - orr r1, r0 - lsl r0, r5, #6 - add r2, r3, r0 - ldr r0, _02037814 ; =0x00000000 - str r2, [r4] - adc r0, r1 - str r0, [r4, #4] - ldr r1, _02037818 ; =0x6C078965 - ldr r0, _0203781C ; =0x5D588B65 - str r1, [r4, #8] - str r0, [r4, #0xc] - ldr r0, _02037820 ; =0x00269EC3 - str r0, [r4, #0x10] - mov r0, #0 - str r0, [r4, #0x14] - add sp, #0x20 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02037810: .word gMain -_02037814: .word 0x00000000 -_02037818: .word 0x6C078965 -_0203781C: .word 0x5D588B65 -_02037820: .word 0x00269EC3 - thumb_func_end sub_0203778C - - thumb_func_start sub_02037824 -sub_02037824: ; 0x02037824 - add r1, r0, #0 - ldr r0, _02037834 ; =0x021D4140 - ldr r3, _02037838 ; =sub_02033F9C - ldr r2, [r0, #8] - mov r0, #0x5a - lsl r0, r0, #4 - add r0, r2, r0 - bx r3 - .balign 4, 0 -_02037834: .word 0x021D4140 -_02037838: .word sub_02033F9C - thumb_func_end sub_02037824 - - thumb_func_start sub_0203783C -sub_0203783C: ; 0x0203783C - ldr r0, _0203784C ; =0x021D4140 - ldr r3, _02037850 ; =sub_02033C50 - ldr r1, [r0, #8] - mov r0, #0x5a - lsl r0, r0, #4 - add r0, r1, r0 - bx r3 - nop -_0203784C: .word 0x021D4140 -_02037850: .word sub_02033C50 - thumb_func_end sub_0203783C - - thumb_func_start sub_02037854 -sub_02037854: ; 0x02037854 - ldr r0, _02037864 ; =0x021D4140 - ldr r3, _02037868 ; =sub_02033C50 - ldr r1, [r0, #8] - mov r0, #0x16 - lsl r0, r0, #6 - add r0, r1, r0 - bx r3 - nop -_02037864: .word 0x021D4140 -_02037868: .word sub_02033C50 - thumb_func_end sub_02037854 - - thumb_func_start sub_0203786C -sub_0203786C: ; 0x0203786C - ldr r1, _02037878 ; =0x021D4140 - ldr r2, [r1, #8] - ldr r1, _0203787C ; =0x000006B6 - strb r0, [r2, r1] - bx lr - nop -_02037878: .word 0x021D4140 -_0203787C: .word 0x000006B6 - thumb_func_end sub_0203786C - - thumb_func_start sub_02037880 -sub_02037880: ; 0x02037880 - ldr r0, _0203788C ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02037890 ; =0x000006B6 - ldrb r0, [r1, r0] - bx lr - nop -_0203788C: .word 0x021D4140 -_02037890: .word 0x000006B6 - thumb_func_end sub_02037880 - - thumb_func_start sub_02037894 -sub_02037894: ; 0x02037894 - ldr r2, _020378A4 ; =0x021D4140 - ldr r2, [r2, #8] - cmp r2, #0 - beq _020378A2 - add r2, r2, r1 - ldr r1, _020378A8 ; =0x000006A6 - strb r0, [r2, r1] -_020378A2: - bx lr - .balign 4, 0 -_020378A4: .word 0x021D4140 -_020378A8: .word 0x000006A6 - thumb_func_end sub_02037894 - - thumb_func_start sub_020378AC -sub_020378AC: ; 0x020378AC - ldr r1, _020378C4 ; =0x021D4140 - ldr r1, [r1, #8] - cmp r1, #0 - beq _020378C0 - add r2, r1, r0 - ldr r1, _020378C8 ; =0x000006A6 - ldrb r1, [r2, r1] - cmp r1, #0xff - beq _020378C0 - add r0, r1, #0 -_020378C0: - bx lr - nop -_020378C4: .word 0x021D4140 -_020378C8: .word 0x000006A6 - thumb_func_end sub_020378AC - - thumb_func_start sub_020378CC -sub_020378CC: ; 0x020378CC - push {r3, lr} - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _020378E0 - bl ov00_021E7080 - pop {r3, pc} -_020378E0: - mov r0, #0 - pop {r3, pc} - thumb_func_end sub_020378CC - - thumb_func_start sub_020378E4 -sub_020378E4: ; 0x020378E4 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _02037922 - ldr r2, _02037924 ; =0x021D4140 - ldr r1, _02037928 ; =0x00000664 - ldr r3, [r2, #8] - ldr r0, [r3, r1] - cmp r0, r4 - beq _02037922 - str r4, [r3, r1] - cmp r4, #0 - beq _02037922 - ldr r3, [r2, #8] - mov r0, #0 - add r1, r1, #4 - str r0, [r3, r1] - ldr r1, _0203792C ; =0x0000066C - add r5, r0, #0 - add r4, r0, #0 -_02037914: - ldr r3, [r2, #8] - add r0, r0, #1 - add r3, r3, r5 - add r5, r5, #4 - str r4, [r3, r1] - cmp r0, #8 - blt _02037914 -_02037922: - pop {r3, r4, r5, pc} - .balign 4, 0 -_02037924: .word 0x021D4140 -_02037928: .word 0x00000664 -_0203792C: .word 0x0000066C - thumb_func_end sub_020378E4 - - thumb_func_start sub_02037930 -sub_02037930: ; 0x02037930 - push {r4, lr} - add r4, r0, #0 - bl sub_020378E4 - bl sub_0203993C - bl sub_02034044 - cmp r0, #0 - beq _02037956 - cmp r4, #0 - beq _02037950 - mov r0, #0 - bl ov00_021E70CC - pop {r4, pc} -_02037950: - mov r0, #1 - bl ov00_021E70CC -_02037956: - pop {r4, pc} - thumb_func_end sub_02037930 - - thumb_func_start sub_02037958 -sub_02037958: ; 0x02037958 - ldr r0, _0203796C ; =0x021D4140 - ldr r1, [r0, #8] - ldr r0, _02037970 ; =0x000006B1 - ldrb r0, [r1, r0] - cmp r0, #0 - beq _02037968 - mov r0, #1 - bx lr -_02037968: - mov r0, #0 - bx lr - .balign 4, 0 -_0203796C: .word 0x021D4140 -_02037970: .word 0x000006B1 - thumb_func_end sub_02037958 - - thumb_func_start sub_02037974 -sub_02037974: ; 0x02037974 - ldr r0, _02037980 ; =0x021D4140 - mov r2, #1 - ldr r1, [r0, #8] - ldr r0, _02037984 ; =0x000006B8 - strb r2, [r1, r0] - bx lr - .balign 4, 0 -_02037980: .word 0x021D4140 -_02037984: .word 0x000006B8 - thumb_func_end sub_02037974 - - thumb_func_start sub_02037988 -sub_02037988: ; 0x02037988 - ldr r0, _02037998 ; =0x021D4140 - ldr r2, [r0, #8] - cmp r2, #0 - beq _02037996 - ldr r0, _0203799C ; =0x000006B9 - mov r1, #1 - strb r1, [r2, r0] -_02037996: - bx lr - .balign 4, 0 -_02037998: .word 0x021D4140 -_0203799C: .word 0x000006B9 - thumb_func_end sub_02037988 - - thumb_func_start sub_020379A0 -sub_020379A0: ; 0x020379A0 - push {r4, lr} - ldr r1, _020379F0 ; =0x021D414C - ldr r1, [r1] - cmp r1, #0 - bne _020379C0 - mov r1, #0x99 - lsl r1, r1, #2 - bl AllocFromHeap - ldr r1, _020379F0 ; =0x021D414C - mov r2, #0x99 - str r0, [r1] - mov r1, #0 - lsl r2, r2, #2 - bl MIi_CpuFill8 -_020379C0: - ldr r1, _020379F0 ; =0x021D414C - mov r3, #0 - mov r0, #0xff -_020379C6: - ldr r2, [r1] - add r2, r2, r3 - add r3, r3, #1 - strb r0, [r2, #0x10] - cmp r3, #8 - blt _020379C6 - ldr r3, _020379F0 ; =0x021D414C - ldr r1, _020379F4 ; =0x00000261 - ldr r2, [r3] - strb r0, [r2, r1] - ldr r4, [r3] - add r2, r1, #1 - strb r0, [r4, r2] - ldr r2, [r3] - mov r4, #0 - add r0, r1, #2 - strb r4, [r2, r0] - ldr r2, [r3] - sub r0, r1, #1 - strb r4, [r2, r0] - pop {r4, pc} - .balign 4, 0 -_020379F0: .word 0x021D414C -_020379F4: .word 0x00000261 - thumb_func_end sub_020379A0 - - thumb_func_start sub_020379F8 -sub_020379F8: ; 0x020379F8 - push {r3, lr} - ldr r0, _02037A0C ; =0x021D414C - ldr r0, [r0] - bl FreeToHeap - ldr r0, _02037A0C ; =0x021D414C - mov r1, #0 - str r1, [r0] - pop {r3, pc} - nop -_02037A0C: .word 0x021D414C - thumb_func_end sub_020379F8 - - thumb_func_start sub_02037A10 -sub_02037A10: ; 0x02037A10 - ldr r0, _02037A20 ; =0x021D414C - ldr r0, [r0] - cmp r0, #0 - beq _02037A1C - mov r0, #1 - bx lr -_02037A1C: - mov r0, #0 - bx lr - .balign 4, 0 -_02037A20: .word 0x021D414C - thumb_func_end sub_02037A10 - - thumb_func_start sub_02037A24 -sub_02037A24: ; 0x02037A24 - push {r3, r4, r5, r6, lr} - sub sp, #4 - ldrb r1, [r2] - add r5, r0, #0 - add r0, sp, #0 - strb r1, [r0] - bl sub_0203769C - cmp r0, #0 - bne _02037A8E - add r0, sp, #0 - strb r5, [r0, #1] - ldrb r1, [r0] - strb r1, [r0, #2] - add r1, sp, #0 - mov r0, #0x12 - add r1, #1 - bl sub_02037184 - ldr r6, _02037A94 ; =0x021D414C - add r4, sp, #0 - ldr r0, [r6] - ldrb r1, [r4] - add r0, r0, r5 - mov r5, #0 - strb r1, [r0, #0x10] -_02037A58: - lsl r0, r5, #0x10 - lsr r0, r0, #0x10 - bl sub_020373B4 - cmp r0, #0 - beq _02037A70 - ldr r0, [r6] - ldrb r1, [r4] - add r0, r0, r5 - ldrb r0, [r0, #0x10] - cmp r1, r0 - bne _02037A8E -_02037A70: - add r5, r5, #1 - cmp r5, #8 - blt _02037A58 - mov r0, #0x11 - add r1, sp, #0 - bl sub_02037184 - cmp r0, #0 - bne _02037A8E - ldr r0, _02037A94 ; =0x021D414C - mov r2, #1 - ldr r1, [r0] - mov r0, #0x26 - lsl r0, r0, #4 - strb r2, [r1, r0] -_02037A8E: - add sp, #4 - pop {r3, r4, r5, r6, pc} - nop -_02037A94: .word 0x021D414C - thumb_func_end sub_02037A24 - - thumb_func_start sub_02037A98 -sub_02037A98: ; 0x02037A98 - ldr r0, _02037AA8 ; =0x021D414C - ldrb r3, [r2, #1] - ldr r1, [r0] - ldrb r0, [r2] - add r0, r1, r0 - strb r3, [r0, #0x10] - bx lr - nop -_02037AA8: .word 0x021D414C - thumb_func_end sub_02037A98 - - thumb_func_start sub_02037AAC -sub_02037AAC: ; 0x02037AAC - ldr r0, _02037AB8 ; =0x021D414C - ldrb r2, [r2] - ldr r1, [r0] - ldr r0, _02037ABC ; =0x00000261 - strb r2, [r1, r0] - bx lr - .balign 4, 0 -_02037AB8: .word 0x021D414C -_02037ABC: .word 0x00000261 - thumb_func_end sub_02037AAC - - thumb_func_start sub_02037AC0 -sub_02037AC0: ; 0x02037AC0 - ldr r2, _02037AD4 ; =0x021D414C - ldr r1, _02037AD8 ; =0x00000262 - ldr r3, [r2] - strb r0, [r3, r1] - ldr r2, [r2] - mov r3, #1 - add r0, r1, #1 - strb r3, [r2, r0] - bx lr - nop -_02037AD4: .word 0x021D414C -_02037AD8: .word 0x00000262 - thumb_func_end sub_02037AC0 - - thumb_func_start sub_02037ADC -sub_02037ADC: ; 0x02037ADC - push {r3, lr} - ldr r0, _02037B30 ; =0x021D414C - ldr r2, [r0] - cmp r2, #0 - beq _02037B2C - ldr r1, _02037B34 ; =0x00000263 - ldrb r0, [r2, r1] - cmp r0, #0 - beq _02037B06 - sub r1, r1, #1 - mov r0, #0x10 - add r1, r2, r1 - bl sub_020376E0 - cmp r0, #0 - beq _02037B06 - ldr r0, _02037B30 ; =0x021D414C - mov r2, #0 - ldr r1, [r0] - ldr r0, _02037B34 ; =0x00000263 - strb r2, [r1, r0] -_02037B06: - ldr r0, _02037B30 ; =0x021D414C - ldr r1, [r0] - mov r0, #0x26 - lsl r0, r0, #4 - ldrb r0, [r1, r0] - cmp r0, #0 - beq _02037B2C - mov r0, #0x11 - add r1, #0x10 - bl sub_02037184 - cmp r0, #0 - beq _02037B2C - ldr r0, _02037B30 ; =0x021D414C - mov r2, #0 - ldr r1, [r0] - mov r0, #0x26 - lsl r0, r0, #4 - strb r2, [r1, r0] -_02037B2C: - pop {r3, pc} - nop -_02037B30: .word 0x021D414C -_02037B34: .word 0x00000263 - thumb_func_end sub_02037ADC - - thumb_func_start sub_02037B38 -sub_02037B38: ; 0x02037B38 - ldr r1, _02037B54 ; =0x021D414C - ldr r2, [r1] - cmp r2, #0 - bne _02037B44 - mov r0, #1 - bx lr -_02037B44: - ldr r1, _02037B58 ; =0x00000261 - ldrb r1, [r2, r1] - cmp r1, r0 - bne _02037B50 - mov r0, #1 - bx lr -_02037B50: - mov r0, #0 - bx lr - .balign 4, 0 -_02037B54: .word 0x021D414C -_02037B58: .word 0x00000261 - thumb_func_end sub_02037B38 - - thumb_func_start sub_02037B5C -sub_02037B5C: ; 0x02037B5C - ldr r1, _02037B68 ; =0x021D414C - ldr r1, [r1] - add r0, r1, r0 - ldrb r0, [r0, #0x10] - bx lr - nop -_02037B68: .word 0x021D414C - thumb_func_end sub_02037B5C - - thumb_func_start sub_02037B6C -sub_02037B6C: ; 0x02037B6C - push {r3, r4} - lsl r4, r0, #1 - ldr r0, _02037B84 ; =0x021D414C - ldrb r3, [r2] - ldr r1, [r0] - strb r3, [r1, r4] - ldr r0, [r0] - ldrb r1, [r2, #1] - add r0, r0, r4 - strb r1, [r0, #1] - pop {r3, r4} - bx lr - .balign 4, 0 -_02037B84: .word 0x021D414C - thumb_func_end sub_02037B6C - - thumb_func_start sub_02037B88 -sub_02037B88: ; 0x02037B88 - mov r0, #2 - bx lr - thumb_func_end sub_02037B88 - - thumb_func_start sub_02037B8C -sub_02037B8C: ; 0x02037B8C - push {r3, lr} - add r2, sp, #0 - strb r0, [r2] - strb r1, [r2, #1] - mov r0, #0x13 - add r1, sp, #0 - bl sub_020376E0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02037B8C - - thumb_func_start sub_02037BA0 -sub_02037BA0: ; 0x02037BA0 - ldr r2, _02037BC4 ; =0x021D414C - ldr r3, [r2] - cmp r3, #0 - bne _02037BAE - mov r0, #0 - mvn r0, r0 - bx lr -_02037BAE: - lsl r2, r0, #1 - ldrb r0, [r3, r2] - cmp r1, r0 - bne _02037BBC - add r0, r3, r2 - ldrb r0, [r0, #1] - bx lr -_02037BBC: - mov r0, #0 - mvn r0, r0 - bx lr - nop -_02037BC4: .word 0x021D414C - thumb_func_end sub_02037BA0 - - thumb_func_start sub_02037BC8 -sub_02037BC8: ; 0x02037BC8 - push {r3, r4, r5, r6, r7, lr} - mov r4, #0 - ldr r6, _02037BE8 ; =0x021D414C - add r5, r4, #0 - add r7, r4, #0 -_02037BD2: - ldr r0, [r6] - add r1, r7, #0 - add r0, r0, r5 - mov r2, #2 - bl MIi_CpuFill8 - add r4, r4, #1 - add r5, r5, #2 - cmp r4, #8 - blt _02037BD2 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02037BE8: .word 0x021D414C - thumb_func_end sub_02037BC8 - - thumb_func_start sub_02037BEC -sub_02037BEC: ; 0x02037BEC - push {r3, r4} - mov r4, #0 - mov r0, #0x96 - ldr r1, _02037C08 ; =0x021D414C - add r3, r4, #0 - lsl r0, r0, #2 -_02037BF8: - ldr r2, [r1] - add r2, r2, r4 - add r4, r4, #1 - strb r3, [r2, r0] - cmp r4, #8 - blt _02037BF8 - pop {r3, r4} - bx lr - .balign 4, 0 -_02037C08: .word 0x021D414C - thumb_func_end sub_02037BEC - - thumb_func_start sub_02037C0C -sub_02037C0C: ; 0x02037C0C - push {r4, lr} - ldr r2, _02037C40 ; =0x021D414C - ldr r3, [r2] - cmp r3, #0 - beq _02037C3A - add r4, r0, #0 - mov r2, #0x48 - mul r4, r2 - add r3, #0x18 - add r0, r1, #0 - add r1, r3, r4 - mov r2, #0x46 - bl MIi_CpuCopy8 - ldr r1, _02037C40 ; =0x021D414C - mov r0, #0x14 - ldr r1, [r1] - add r1, #0x18 - add r1, r1, r4 - bl sub_020376E0 - mov r0, #1 - pop {r4, pc} -_02037C3A: - mov r0, #0 - pop {r4, pc} - nop -_02037C40: .word 0x021D414C - thumb_func_end sub_02037C0C - - thumb_func_start sub_02037C44 -sub_02037C44: ; 0x02037C44 - ldr r1, _02037C64 ; =0x021D414C - ldr r3, [r1] - mov r1, #0x96 - add r2, r3, r0 - lsl r1, r1, #2 - ldrb r1, [r2, r1] - cmp r1, #0 - beq _02037C5E - mov r1, #0x48 - add r3, #0x18 - mul r1, r0 - add r0, r3, r1 - bx lr -_02037C5E: - mov r0, #0 - bx lr - nop -_02037C64: .word 0x021D414C - thumb_func_end sub_02037C44 - - thumb_func_start sub_02037C68 -sub_02037C68: ; 0x02037C68 - push {r3, r4, r5, lr} - ldr r3, _02037C90 ; =0x021D414C - add r1, r0, #0 - ldr r0, [r3] - mov r5, #1 - add r4, r0, r1 - mov r0, #0x96 - lsl r0, r0, #2 - strb r5, [r4, r0] - ldr r3, [r3] - add r0, r2, #0 - mov r2, #0x48 - add r3, #0x18 - mul r2, r1 - add r1, r3, r2 - mov r2, #0x46 - bl MIi_CpuCopy8 - pop {r3, r4, r5, pc} - nop -_02037C90: .word 0x021D414C - thumb_func_end sub_02037C68 - - thumb_func_start sub_02037C94 -sub_02037C94: ; 0x02037C94 - mov r0, #0x46 - bx lr - thumb_func_end sub_02037C94 - - thumb_func_start sub_02037C98 -sub_02037C98: ; 0x02037C98 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, _02037D28 ; =0x021D4150 - add r4, r1, #0 - ldr r0, [r0] - cmp r0, #0 - bne _02037D24 - cmp r5, #0 - bne _02037CAE - bl GF_AssertFail -_02037CAE: - bl sub_02034D8C - mov r0, #0xf - mov r1, #0x68 - bl AllocFromHeap - ldr r1, _02037D28 ; =0x021D4150 - mov r2, #0x68 - str r0, [r1] - mov r1, #0 - bl MIi_CpuFill8 - ldr r0, _02037D28 ; =0x021D4150 - mov r2, #0x32 - ldr r1, [r0] - str r2, [r1, #0x44] - ldr r1, [r0] - mov r2, #1 - add r1, #0x52 - strb r2, [r1] - ldr r0, [r0] - str r5, [r0, #0x28] - add r0, r5, #0 - bl Sav2_PlayerData_GetProfileAddr - ldr r1, _02037D28 ; =0x021D4150 - ldr r2, [r1] - str r0, [r2, #0x2c] - ldr r0, [r1] - mov r2, #2 - add r0, #0x4a - strb r2, [r0] - ldr r0, [r1] - mov r2, #0 - add r0, #0x4c - strb r2, [r0] - ldr r0, [r1] - add r0, #0x57 - strb r2, [r0] - ldr r0, [r1] - add r0, #0x4e - strb r4, [r0] - ldr r0, [r1] - add r0, #0xc - bl sub_0203778C - mov r0, #0 - add r1, r0, #0 - add r2, r0, #0 - bl sub_0203410C - cmp r4, #9 - beq _02037D24 - cmp r4, #0x11 - beq _02037D24 - cmp r4, #0xf - beq _02037D24 - bl sub_0203A880 -_02037D24: - pop {r3, r4, r5, pc} - nop -_02037D28: .word 0x021D4150 - thumb_func_end sub_02037C98 - - thumb_func_start sub_02037D2C -sub_02037D2C: ; 0x02037D2C - push {r3, lr} - ldr r0, _02037D74 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _02037D72 - bl sub_02034154 - ldr r0, _02037D74 ; =0x021D4150 - ldr r0, [r0] - ldr r0, [r0] - cmp r0, #0 - beq _02037D48 - bl FreeToHeap -_02037D48: - bl sub_02039998 - cmp r0, #0 - beq _02037D56 - mov r0, #0x30 - bl sub_0201A9C4 -_02037D56: - bl sub_0203A914 - bl sub_02034DE0 - ldr r0, _02037D74 ; =0x021D4150 - ldr r0, [r0] - bl FreeToHeap - mov r0, #0xf - bl sub_0201A9C4 - ldr r0, _02037D74 ; =0x021D4150 - mov r1, #0 - str r1, [r0] -_02037D72: - pop {r3, pc} - .balign 4, 0 -_02037D74: .word 0x021D4150 - thumb_func_end sub_02037D2C - - thumb_func_start sub_02037D78 -sub_02037D78: ; 0x02037D78 - ldr r0, _02037D88 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _02037D84 - mov r0, #1 - bx lr -_02037D84: - mov r0, #0 - bx lr - .balign 4, 0 -_02037D88: .word 0x021D4150 - thumb_func_end sub_02037D78 - - thumb_func_start sub_02037D8C -sub_02037D8C: ; 0x02037D8C - push {r3, r4, r5, r6, r7, lr} - add r6, r0, #0 - add r7, r1, #0 - add r5, r2, #0 - add r4, r3, #0 - bl sub_02037474 - cmp r0, #0 - bne _02037DC4 - ldr r2, _02037DC8 ; =0x00007080 - mov r0, #3 - mov r1, #0xf - bl sub_0201A91C - add r0, r6, #0 - add r1, r7, #0 - bl sub_02037C98 - ldr r0, _02037DCC ; =0x021D4150 - ldr r1, [r0] - add r1, #0x4f - strb r5, [r1] - ldr r0, [r0] - mov r1, #0 - str r4, [r0, #0x30] - ldr r0, _02037DD0 ; =sub_02038218 - bl sub_020381C0 -_02037DC4: - pop {r3, r4, r5, r6, r7, pc} - nop -_02037DC8: .word 0x00007080 -_02037DCC: .word 0x021D4150 -_02037DD0: .word sub_02038218 - thumb_func_end sub_02037D8C - - thumb_func_start sub_02037DD4 -sub_02037DD4: ; 0x02037DD4 - push {r3, r4, r5, r6, r7, lr} - add r6, r0, #0 - add r7, r1, #0 - add r5, r2, #0 - add r4, r3, #0 - bl sub_02037474 - cmp r0, #0 - bne _02037E0C - ldr r2, _02037E10 ; =0x00007080 - mov r0, #3 - mov r1, #0xf - bl sub_0201A91C - add r0, r6, #0 - add r1, r7, #0 - bl sub_02037C98 - ldr r0, _02037E14 ; =0x021D4150 - ldr r1, [r0] - add r1, #0x4f - strb r5, [r1] - ldr r0, [r0] - mov r1, #0 - str r4, [r0, #0x30] - ldr r0, _02037E18 ; =sub_02038294 - bl sub_020381C0 -_02037E0C: - pop {r3, r4, r5, r6, r7, pc} - nop -_02037E10: .word 0x00007080 -_02037E14: .word 0x021D4150 -_02037E18: .word sub_02038294 - thumb_func_end sub_02037DD4 - - thumb_func_start sub_02037E1C -sub_02037E1C: ; 0x02037E1C - ldr r1, _02037E2C ; =0x021D4150 - ldr r3, _02037E30 ; =sub_020381C0 - ldr r1, [r1] - add r1, #0x4d - strb r0, [r1] - ldr r0, _02037E34 ; =sub_020382E4 - mov r1, #0 - bx r3 - .balign 4, 0 -_02037E2C: .word 0x021D4150 -_02037E30: .word sub_020381C0 -_02037E34: .word sub_020382E4 - thumb_func_end sub_02037E1C - - thumb_func_start sub_02037E38 -sub_02037E38: ; 0x02037E38 - push {r3, lr} - bl sub_02036274 - ldr r0, _02037E48 ; =sub_020383B0 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_02037E48: .word sub_020383B0 - thumb_func_end sub_02037E38 - - thumb_func_start sub_02037E4C -sub_02037E4C: ; 0x02037E4C - push {r3, lr} - ldr r0, _02037E94 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x40] - cmp r0, #0 - ble _02037E5E - sub r0, r0, #1 - str r0, [r1, #0x40] - b _02037E64 -_02037E5E: - bne _02037E64 - bl sub_020399EC -_02037E64: - ldr r0, _02037E94 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _02037E72 - sub r0, r0, #1 - str r0, [r1, #0x44] -_02037E72: - bl sub_02034FE8 - cmp r0, #0 - beq _02037E90 - ldr r0, _02037E94 ; =0x021D4150 - ldr r0, [r0] - ldr r0, [r0, #0x44] - cmp r0, #0 - bne _02037E90 - bl sub_02036024 - ldr r0, _02037E98 ; =sub_02038408 - mov r1, #0 - bl sub_020381C0 -_02037E90: - pop {r3, pc} - nop -_02037E94: .word 0x021D4150 -_02037E98: .word sub_02038408 - thumb_func_end sub_02037E4C - - thumb_func_start sub_02037E9C -sub_02037E9C: ; 0x02037E9C - push {r3, lr} - ldr r0, _02037EB4 ; =0x021D4150 - ldr r1, [r0] - cmp r1, #0 - beq _02037EB2 - ldr r0, _02037EB8 ; =0x00000708 - str r0, [r1, #0x40] - ldr r0, _02037EBC ; =sub_02037E4C - mov r1, #5 - bl sub_020381C0 -_02037EB2: - pop {r3, pc} - .balign 4, 0 -_02037EB4: .word 0x021D4150 -_02037EB8: .word 0x00000708 -_02037EBC: .word sub_02037E4C - thumb_func_end sub_02037E9C - - thumb_func_start sub_02037EC0 -sub_02037EC0: ; 0x02037EC0 - ldr r3, _02037EC4 ; =sub_02033A0C - bx r3 - .balign 4, 0 -_02037EC4: .word sub_02033A0C - thumb_func_end sub_02037EC0 - - thumb_func_start sub_02037EC8 -sub_02037EC8: ; 0x02037EC8 - push {r4} - sub sp, #0xc - ldr r4, _02037F10 ; =0x020F6A90 - add r3, sp, #0 - ldmia r4!, {r0, r1} - add r2, r3, #0 - stmia r3!, {r0, r1} - ldr r0, [r4] - str r0, [r3] - ldr r0, _02037F14 ; =0x021D4150 - ldr r0, [r0] - ldr r1, [r0, #0x24] - cmp r0, #0 - bne _02037EEC - add sp, #0xc - mov r0, #0 - pop {r4} - bx lr -_02037EEC: - ldr r0, [sp] - cmp r0, #0 - beq _02037F08 -_02037EF2: - ldr r0, [r2] - cmp r1, r0 - bne _02037F00 - add sp, #0xc - mov r0, #1 - pop {r4} - bx lr -_02037F00: - add r2, r2, #4 - ldr r0, [r2] - cmp r0, #0 - bne _02037EF2 -_02037F08: - mov r0, #0 - add sp, #0xc - pop {r4} - bx lr - .balign 4, 0 -_02037F10: .word 0x020F6A90 -_02037F14: .word 0x021D4150 - thumb_func_end sub_02037EC8 - - thumb_func_start sub_02037F18 -sub_02037F18: ; 0x02037F18 - push {r4, lr} - add r4, r0, #0 - ldr r0, _02037F58 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _02037F56 - ldr r2, _02037F5C ; =0x00007080 - mov r0, #3 - mov r1, #0xf - bl sub_0201A91C - cmp r0, #0 - bne _02037F36 - bl sub_020399EC -_02037F36: - add r0, r4, #0 - mov r1, #9 - bl sub_02037C98 - ldr r0, _02037F58 ; =0x021D4150 - mov r2, #9 - ldr r1, [r0] - add r1, #0x4e - strb r2, [r1] - ldr r0, [r0] - mov r1, #0 - add r0, #0x4f - strb r1, [r0] - ldr r0, _02037F60 ; =sub_020384B4 - bl sub_020381C0 -_02037F56: - pop {r4, pc} - .balign 4, 0 -_02037F58: .word 0x021D4150 -_02037F5C: .word 0x00007080 -_02037F60: .word sub_020384B4 - thumb_func_end sub_02037F18 - - thumb_func_start sub_02037F64 -sub_02037F64: ; 0x02037F64 - push {r3, lr} - ldr r1, _02037F8C ; =0x021D4150 - ldr r2, [r1] - add r2, #0x4d - strb r0, [r2] - ldr r0, [r1] - mov r2, #3 - add r0, #0x48 - strh r2, [r0] - mov r0, #1 - bl sub_02033AA4 - bl sub_0203A880 - ldr r0, _02037F90 ; =sub_02038668 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - nop -_02037F8C: .word 0x021D4150 -_02037F90: .word sub_02038668 - thumb_func_end sub_02037F64 - - thumb_func_start sub_02037F94 -sub_02037F94: ; 0x02037F94 - ldr r0, _02037FC0 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _02037FA2 - mov r0, #0 - mvn r0, r0 - bx lr -_02037FA2: - ldr r1, [r0, #0x24] - ldr r0, _02037FC4 ; =sub_020387E8 - cmp r1, r0 - bne _02037FAE - mov r0, #1 - bx lr -_02037FAE: - ldr r0, _02037FC8 ; =sub_02038800 - cmp r1, r0 - bne _02037FB8 - mov r0, #1 - b _02037FBA -_02037FB8: - mov r0, #0 -_02037FBA: - neg r0, r0 - bx lr - nop -_02037FC0: .word 0x021D4150 -_02037FC4: .word sub_020387E8 -_02037FC8: .word sub_02038800 - thumb_func_end sub_02037F94 - - thumb_func_start sub_02037FCC -sub_02037FCC: ; 0x02037FCC - ldr r0, _02037FE8 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _02037FD8 - mov r0, #0 - bx lr -_02037FD8: - ldr r1, [r0, #0x24] - ldr r0, _02037FEC ; =sub_02038854 - cmp r1, r0 - bne _02037FE4 - mov r0, #1 - bx lr -_02037FE4: - mov r0, #0 - bx lr - .balign 4, 0 -_02037FE8: .word 0x021D4150 -_02037FEC: .word sub_02038854 - thumb_func_end sub_02037FCC - - thumb_func_start sub_02037FF0 -sub_02037FF0: ; 0x02037FF0 - push {r3, lr} - mov r0, #0 - bl sub_02033AA4 - ldr r0, _02038064 ; =0x021D4150 - ldr r1, [r0] - add r0, r1, #0 - add r0, #0x53 - ldrb r0, [r0] - cmp r0, #1 - bne _02038018 - add r0, r1, #0 - add r0, #0x54 - ldrb r0, [r0] - cmp r0, #1 - bne _02038018 - add r1, #0x4e - ldrb r0, [r1] - cmp r0, #9 - bne _02038020 -_02038018: - mov r0, #0 - add r1, r0, #0 - bl sub_020398D4 -_02038020: - bl sub_0203A914 - ldr r0, _02038064 ; =0x021D4150 - mov r2, #9 - ldr r1, [r0] - add r1, #0x4e - strb r2, [r1] - ldr r1, [r0] - mov r2, #0 - add r1, #0x57 - strb r2, [r1] - ldr r0, [r0] - add r0, #0x4a - ldrb r0, [r0] - bl sub_02033908 - bl sub_0203769C - cmp r0, #0 - bne _02038058 - mov r0, #1 - bl sub_02033ACC - ldr r0, _02038068 ; =sub_02038418 - mov r1, #0xf - bl sub_020381C0 - pop {r3, pc} -_02038058: - ldr r0, _0203806C ; =sub_02038460 - mov r1, #5 - bl sub_020381C0 - pop {r3, pc} - nop -_02038064: .word 0x021D4150 -_02038068: .word sub_02038418 -_0203806C: .word sub_02038460 - thumb_func_end sub_02037FF0 - - thumb_func_start sub_02038070 -sub_02038070: ; 0x02038070 - ldr r0, _0203808C ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _0203807C - mov r0, #1 - bx lr -_0203807C: - ldr r1, [r0, #0x24] - ldr r0, _02038090 ; =sub_02038538 - cmp r1, r0 - beq _02038088 - mov r0, #1 - bx lr -_02038088: - mov r0, #0 - bx lr - .balign 4, 0 -_0203808C: .word 0x021D4150 -_02038090: .word sub_02038538 - thumb_func_end sub_02038070 - - thumb_func_start sub_02038094 -sub_02038094: ; 0x02038094 - push {r3, lr} - ldr r0, _020380A8 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _020380A6 - ldr r0, _020380AC ; =sub_0203847C - mov r1, #5 - bl sub_020381C0 -_020380A6: - pop {r3, pc} - .balign 4, 0 -_020380A8: .word 0x021D4150 -_020380AC: .word sub_0203847C - thumb_func_end sub_02038094 - - thumb_func_start sub_020380B0 -sub_020380B0: ; 0x020380B0 - push {r3, lr} - ldr r0, _020380C8 ; =0x021D4150 - ldr r1, [r0] - cmp r1, #0 - beq _020380C4 - mov r0, #1 - add r1, #0x57 - strb r0, [r1] - bl sub_02033AA4 -_020380C4: - pop {r3, pc} - nop -_020380C8: .word 0x021D4150 - thumb_func_end sub_020380B0 - - thumb_func_start sub_020380CC -sub_020380CC: ; 0x020380CC - push {r3, lr} - ldr r0, _020380EC ; =0x021D4150 - ldr r1, [r0] - cmp r1, #0 - beq _020380E8 - mov r0, #1 - add r1, #0x57 - strb r0, [r1] - bl sub_02033AA4 - ldr r0, _020380F0 ; =sub_020388A8 - mov r1, #0 - bl sub_020381C0 -_020380E8: - pop {r3, pc} - nop -_020380EC: .word 0x021D4150 -_020380F0: .word sub_020388A8 - thumb_func_end sub_020380CC - - thumb_func_start sub_020380F4 -sub_020380F4: ; 0x020380F4 - ldr r0, _02038100 ; =0x021D4150 - mov r1, #0x12 - ldr r0, [r0] - add r0, #0x4e - strb r1, [r0] - bx lr - .balign 4, 0 -_02038100: .word 0x021D4150 - thumb_func_end sub_020380F4 - - thumb_func_start sub_02038104 -sub_02038104: ; 0x02038104 - ldr r0, _02038110 ; =0x021D4150 - mov r1, #9 - ldr r0, [r0] - add r0, #0x4e - strb r1, [r0] - bx lr - .balign 4, 0 -_02038110: .word 0x021D4150 - thumb_func_end sub_02038104 - - thumb_func_start sub_02038114 -sub_02038114: ; 0x02038114 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - bl sub_02037474 - cmp r0, #0 - bne _0203813C - ldr r2, _02038140 ; =0x00007080 - mov r0, #3 - mov r1, #0xf - bl sub_0201A91C - add r0, r5, #0 - add r1, r4, #0 - bl sub_02037C98 - ldr r0, _02038144 ; =sub_02038E00 - mov r1, #0 - bl sub_020381C0 -_0203813C: - pop {r3, r4, r5, pc} - nop -_02038140: .word 0x00007080 -_02038144: .word sub_02038E00 - thumb_func_end sub_02038114 - - thumb_func_start sub_02038148 -sub_02038148: ; 0x02038148 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - bl sub_02037474 - cmp r0, #0 - bne _02038170 - ldr r2, _02038174 ; =0x00007080 - mov r0, #3 - mov r1, #0xf - bl sub_0201A91C - add r0, r5, #0 - add r1, r4, #0 - bl sub_02037C98 - ldr r0, _02038178 ; =sub_02038E48 - mov r1, #0 - bl sub_020381C0 -_02038170: - pop {r3, r4, r5, pc} - nop -_02038174: .word 0x00007080 -_02038178: .word sub_02038E48 - thumb_func_end sub_02038148 - - thumb_func_start sub_0203817C -sub_0203817C: ; 0x0203817C - push {r3, lr} - ldr r0, _020381BC ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _0203818E - ldr r0, [r0, #0x24] - cmp r0, #0 - beq _0203818E - blx r0 -_0203818E: - bl sub_02039998 - cmp r0, #0 - beq _020381A4 - bl ov00_021EC9D4 - mov r1, #3 - sub r0, r1, r0 - bl sub_0203A930 - pop {r3, pc} -_020381A4: - bl sub_02035650 - cmp r0, #0 - beq _020381B8 - bl sub_020DEF44 - mov r1, #3 - sub r0, r1, r0 - bl sub_0203A930 -_020381B8: - pop {r3, pc} - nop -_020381BC: .word 0x021D4150 - thumb_func_end sub_0203817C - - thumb_func_start sub_020381C0 -sub_020381C0: ; 0x020381C0 - ldr r2, _020381CC ; =0x021D4150 - ldr r3, [r2] - str r0, [r3, #0x24] - ldr r0, [r2] - str r1, [r0, #0x44] - bx lr - .balign 4, 0 -_020381CC: .word 0x021D4150 - thumb_func_end sub_020381C0 - - thumb_func_start sub_020381D0 -sub_020381D0: ; 0x020381D0 - push {r3, lr} - bl sub_02039998 - cmp r0, #0 - bne _020381EC - bl sub_02035664 - cmp r0, #0 - beq _020381F4 - bl sub_020374E4 - mov r0, #1 - bl sub_020350A8 -_020381EC: - ldr r0, _020381F8 ; =sub_02038404 - mov r1, #0 - bl sub_020381C0 -_020381F4: - pop {r3, pc} - nop -_020381F8: .word sub_02038404 - thumb_func_end sub_020381D0 - - thumb_func_start sub_020381FC -sub_020381FC: ; 0x020381FC - push {r3, lr} - bl sub_02034FE8 - cmp r0, #0 - beq _02038212 - bl sub_0203622C - ldr r0, _02038214 ; =sub_020381D0 - mov r1, #0 - bl sub_020381C0 -_02038212: - pop {r3, pc} - .balign 4, 0 -_02038214: .word sub_020381D0 - thumb_func_end sub_020381FC - - thumb_func_start sub_02038218 -sub_02038218: ; 0x02038218 - push {r3, lr} - bl sub_02034DB8 - cmp r0, #0 - beq _02038256 - ldr r0, _02038258 ; =0x021D4150 - mov r1, #1 - ldr r0, [r0] - ldr r0, [r0, #0x2c] - bl sub_02034B0C - ldr r0, _02038258 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x28] - ldr r1, [r1, #0x30] - bl sub_02034354 - mov r0, #1 - add r1, r0, #0 - lsl r2, r0, #9 - add r3, r0, #0 - bl sub_02035ED8 - cmp r0, #0 - beq _02038256 - bl sub_02035FD8 - ldr r0, _0203825C ; =sub_02038260 - mov r1, #0 - bl sub_020381C0 -_02038256: - pop {r3, pc} - .balign 4, 0 -_02038258: .word 0x021D4150 -_0203825C: .word sub_02038260 - thumb_func_end sub_02038218 - - thumb_func_start sub_02038260 -sub_02038260: ; 0x02038260 - push {r3, lr} - bl sub_0203769C - bl sub_020373B4 - cmp r0, #0 - beq _02038276 - ldr r0, _02038278 ; =sub_0203827C - mov r1, #0 - bl sub_020381C0 -_02038276: - pop {r3, pc} - .balign 4, 0 -_02038278: .word sub_0203827C - thumb_func_end sub_02038260 - - thumb_func_start sub_0203827C -sub_0203827C: ; 0x0203827C - push {r3, lr} - bl sub_02037474 - cmp r0, #0 - bne _0203828E - ldr r0, _02038290 ; =sub_02038408 - mov r1, #0 - bl sub_020381C0 -_0203828E: - pop {r3, pc} - .balign 4, 0 -_02038290: .word sub_02038408 - thumb_func_end sub_0203827C - - thumb_func_start sub_02038294 -sub_02038294: ; 0x02038294 - push {r3, lr} - bl sub_02034DB8 - cmp r0, #0 - beq _020382D0 - ldr r0, _020382D4 ; =0x021D4150 - mov r1, #1 - ldr r0, [r0] - ldr r0, [r0, #0x2c] - bl sub_02034B0C - ldr r0, _020382D4 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x28] - ldr r1, [r1, #0x30] - bl sub_02034354 - mov r0, #1 - add r1, r0, #0 - lsl r2, r0, #9 - bl sub_02035F14 - cmp r0, #0 - beq _020382D0 - bl sub_02035FD8 - ldr r0, _020382D8 ; =sub_020382DC - mov r1, #0 - bl sub_020381C0 -_020382D0: - pop {r3, pc} - nop -_020382D4: .word 0x021D4150 -_020382D8: .word sub_020382DC - thumb_func_end sub_02038294 - - thumb_func_start sub_020382DC -sub_020382DC: ; 0x020382DC - ldr r3, _020382E0 ; =sub_0203528C - bx r3 - .balign 4, 0 -_020382E0: .word sub_0203528C - thumb_func_end sub_020382DC - - thumb_func_start sub_020382E4 -sub_020382E4: ; 0x020382E4 - push {r3, lr} - bl sub_0203528C - ldr r0, _02038304 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4d - ldrb r0, [r0] - bl sub_020360E4 - cmp r0, #0 - beq _02038302 - ldr r0, _02038308 ; =sub_0203830C - mov r1, #0xa - bl sub_020381C0 -_02038302: - pop {r3, pc} - .balign 4, 0 -_02038304: .word 0x021D4150 -_02038308: .word sub_0203830C - thumb_func_end sub_020382E4 - - thumb_func_start sub_0203830C -sub_0203830C: ; 0x0203830C - push {r3, lr} - bl sub_02037700 - cmp r0, #0 - beq _0203831E - ldr r0, _0203833C ; =sub_02038344 - mov r1, #0 - bl sub_020381C0 -_0203831E: - bl sub_0203769C - bl sub_020373B4 - cmp r0, #0 - beq _0203833A - bl sub_0203769C - cmp r0, #0 - beq _0203833A - ldr r0, _02038340 ; =sub_02038398 - mov r1, #0 - bl sub_020381C0 -_0203833A: - pop {r3, pc} - .balign 4, 0 -_0203833C: .word sub_02038344 -_02038340: .word sub_02038398 - thumb_func_end sub_0203830C - - thumb_func_start sub_02038344 -sub_02038344: ; 0x02038344 - push {r3, lr} - bl sub_02034FE8 - ldr r0, _02038354 ; =sub_02038358 - mov r1, #2 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_02038354: .word sub_02038358 - thumb_func_end sub_02038344 - - thumb_func_start sub_02038358 -sub_02038358: ; 0x02038358 - push {r3, lr} - ldr r0, _02038390 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _0203836A - sub r0, r0, #1 - str r0, [r1, #0x44] - pop {r3, pc} -_0203836A: - bl sub_02035664 - cmp r0, #0 - beq _0203838C - mov r1, #1 - mov r0, #0 - lsl r2, r1, #9 - bl sub_02035F14 - cmp r0, #0 - beq _0203838C - bl sub_02035FD8 - ldr r0, _02038394 ; =sub_020382E4 - mov r1, #0xa - bl sub_020381C0 -_0203838C: - pop {r3, pc} - nop -_02038390: .word 0x021D4150 -_02038394: .word sub_020382E4 - thumb_func_end sub_02038358 - - thumb_func_start sub_02038398 -sub_02038398: ; 0x02038398 - push {r3, lr} - bl sub_02037474 - cmp r0, #0 - bne _020383AA - ldr r0, _020383AC ; =sub_02038408 - mov r1, #0 - bl sub_020381C0 -_020383AA: - pop {r3, pc} - .balign 4, 0 -_020383AC: .word sub_02038408 - thumb_func_end sub_02038398 - - thumb_func_start sub_020383B0 -sub_020383B0: ; 0x020383B0 - push {r3, lr} - bl sub_02034FE8 - ldr r0, _020383C0 ; =sub_020383C4 - mov r1, #2 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_020383C0: .word sub_020383C4 - thumb_func_end sub_020383B0 - - thumb_func_start sub_020383C4 -sub_020383C4: ; 0x020383C4 - push {r3, lr} - ldr r0, _020383FC ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _020383D6 - sub r0, r0, #1 - str r0, [r1, #0x44] - pop {r3, pc} -_020383D6: - bl sub_02035664 - cmp r0, #0 - beq _020383F8 - mov r1, #1 - mov r0, #0 - lsl r2, r1, #9 - bl sub_02035F14 - cmp r0, #0 - beq _020383F8 - bl sub_02035FD8 - ldr r0, _02038400 ; =sub_020382DC - mov r1, #0xa - bl sub_020381C0 -_020383F8: - pop {r3, pc} - nop -_020383FC: .word 0x021D4150 -_02038400: .word sub_020382DC - thumb_func_end sub_020383C4 - - thumb_func_start sub_02038404 -sub_02038404: ; 0x02038404 - bx lr - .balign 4, 0 - thumb_func_end sub_02038404 - - thumb_func_start sub_02038408 -sub_02038408: ; 0x02038408 - push {r3, lr} - bl sub_02037474 - cmp r0, #0 - bne _02038416 - bl sub_02037D2C -_02038416: - pop {r3, pc} - thumb_func_end sub_02038408 - - thumb_func_start sub_02038418 -sub_02038418: ; 0x02038418 - push {r3, lr} - bl sub_02037454 - cmp r0, #1 - bgt _02038434 - mov r0, #0 - bl sub_02033ACC - bl sub_0203624C - ldr r0, _02038458 ; =sub_02038538 - mov r1, #0 - bl sub_020381C0 -_02038434: - ldr r0, _0203845C ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _02038444 - sub r0, r0, #1 - str r0, [r1, #0x44] - pop {r3, pc} -_02038444: - mov r0, #0 - bl sub_02033ACC - bl sub_0203624C - ldr r0, _02038458 ; =sub_02038538 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_02038458: .word sub_02038538 -_0203845C: .word 0x021D4150 - thumb_func_end sub_02038418 - - thumb_func_start sub_02038460 -sub_02038460: ; 0x02038460 - push {r3, lr} - bl sub_02034FE8 - cmp r0, #0 - beq _02038476 - bl sub_0203622C - ldr r0, _02038478 ; =sub_02038538 - mov r1, #0 - bl sub_020381C0 -_02038476: - pop {r3, pc} - .balign 4, 0 -_02038478: .word sub_02038538 - thumb_func_end sub_02038460 - - thumb_func_start sub_0203847C -sub_0203847C: ; 0x0203847C - push {r3, lr} - ldr r0, _020384AC ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _0203848C - sub r0, r0, #1 - str r0, [r1, #0x44] -_0203848C: - bl sub_02034FE8 - cmp r0, #0 - beq _020384AA - ldr r0, _020384AC ; =0x021D4150 - ldr r0, [r0] - ldr r0, [r0, #0x44] - cmp r0, #0 - bne _020384AA - bl sub_02036024 - ldr r0, _020384B0 ; =sub_02038408 - mov r1, #0 - bl sub_020381C0 -_020384AA: - pop {r3, pc} - .balign 4, 0 -_020384AC: .word 0x021D4150 -_020384B0: .word sub_02038408 - thumb_func_end sub_0203847C - - thumb_func_start sub_020384B4 -sub_020384B4: ; 0x020384B4 - push {r3, lr} - bl sub_02034DB8 - cmp r0, #0 - beq _020384FC - ldr r0, _02038500 ; =0x021D4150 - mov r1, #1 - ldr r0, [r0] - ldr r0, [r0, #0x2c] - bl sub_02034B0C - ldr r0, _02038500 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4a - ldrb r0, [r0] - bl sub_02033908 - ldr r0, _02038500 ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - ldr r0, [r0, #0x28] - bl sub_02034354 - mov r0, #1 - add r1, r0, #0 - lsl r2, r0, #9 - bl sub_02035F14 - cmp r0, #0 - beq _020384FC - bl sub_02035FD8 - ldr r0, _02038504 ; =sub_02038508 - mov r1, #0x40 - bl sub_020381C0 -_020384FC: - pop {r3, pc} - nop -_02038500: .word 0x021D4150 -_02038504: .word sub_02038508 - thumb_func_end sub_020384B4 - - thumb_func_start sub_02038508 -sub_02038508: ; 0x02038508 - push {r3, lr} - bl sub_0203528C - ldr r0, _02038530 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _0203851E - sub r0, r0, #1 - str r0, [r1, #0x44] - pop {r3, pc} -_0203851E: - bl sub_02034FE8 - cmp r0, #0 - beq _0203852E - ldr r0, _02038534 ; =sub_02038550 - mov r1, #0 - bl sub_020381C0 -_0203852E: - pop {r3, pc} - .balign 4, 0 -_02038530: .word 0x021D4150 -_02038534: .word sub_02038550 - thumb_func_end sub_02038508 - - thumb_func_start sub_02038538 -sub_02038538: ; 0x02038538 - push {r3, lr} - bl sub_02034FE8 - cmp r0, #0 - beq _0203854A - ldr r0, _0203854C ; =sub_02038550 - mov r1, #0 - bl sub_020381C0 -_0203854A: - pop {r3, pc} - .balign 4, 0 -_0203854C: .word sub_02038550 - thumb_func_end sub_02038538 - - thumb_func_start sub_02038550 -sub_02038550: ; 0x02038550 - push {r3, r4, r5, lr} - bl sub_02035664 - cmp r0, #0 - beq _020385A8 - ldr r1, _020385AC ; =0x021D4150 - mov r2, #2 - ldr r1, [r1] - mov r0, #0 - add r1, #0x52 - ldrb r1, [r1] - lsl r2, r2, #8 - mov r3, #1 - bl sub_02035ED8 - cmp r0, #0 - beq _020385A8 - ldr r0, _020385AC ; =0x021D4150 - ldr r4, [r0] - add r5, r4, #0 - add r5, #0xc - ldr r0, [r5, #8] - ldr r1, [r5, #0xc] - ldr r2, [r4, #0xc] - ldr r3, [r5, #4] - bl _ll_mul - ldr r2, [r5, #0x10] - ldr r3, [r5, #0x14] - add r0, r2, r0 - adc r3, r1 - str r0, [r4, #0xc] - str r3, [r5, #4] - bl sub_02035FD8 - ldr r0, _020385AC ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - add r0, #0x52 - strb r1, [r0] - ldr r0, _020385B0 ; =sub_020385B8 - ldr r1, _020385B4 ; =0x00002710 - bl sub_020381C0 -_020385A8: - pop {r3, r4, r5, pc} - nop -_020385AC: .word 0x021D4150 -_020385B0: .word sub_020385B8 -_020385B4: .word 0x00002710 - thumb_func_end sub_02038550 - - thumb_func_start sub_020385B8 -sub_020385B8: ; 0x020385B8 - push {r3, lr} - bl sub_020358B0 - cmp r0, #0 - bne _020385F2 - bl sub_020376F8 - cmp r0, #0 - beq _020385E2 - ldr r0, _02038604 ; =0x021D4150 - mov r1, #1 - ldr r0, [r0] - add r0, #0x52 - strb r1, [r0] - bl sub_0203A880 - ldr r0, _02038608 ; =sub_02038854 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_020385E2: - ldr r0, _02038604 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _020385F2 - sub r0, r0, #1 - str r0, [r1, #0x44] - pop {r3, pc} -_020385F2: - bl sub_02034FE8 - cmp r0, #0 - beq _02038602 - ldr r0, _0203860C ; =sub_02038610 - mov r1, #0 - bl sub_020381C0 -_02038602: - pop {r3, pc} - .balign 4, 0 -_02038604: .word 0x021D4150 -_02038608: .word sub_02038854 -_0203860C: .word sub_02038610 - thumb_func_end sub_020385B8 - - thumb_func_start sub_02038610 -sub_02038610: ; 0x02038610 - push {r3, r4, r5, lr} - bl sub_02035664 - cmp r0, #0 - beq _0203865C - mov r0, #0 - mov r2, #2 - add r1, r0, #0 - lsl r2, r2, #8 - bl sub_02035F14 - cmp r0, #0 - beq _0203865C - bl sub_02035FD8 - ldr r0, _02038660 ; =0x021D4150 - ldr r4, [r0] - add r5, r4, #0 - add r5, #0xc - ldr r0, [r5, #8] - ldr r1, [r5, #0xc] - ldr r2, [r4, #0xc] - ldr r3, [r5, #4] - bl _ll_mul - ldr r2, [r5, #0x10] - ldr r3, [r5, #0x14] - add r0, r2, r0 - adc r3, r1 - str r0, [r4, #0xc] - mov r1, #0 - ldr r0, _02038664 ; =sub_02038508 - lsr r2, r3, #0x1b - lsl r1, r1, #5 - orr r1, r2 - str r3, [r5, #4] - bl sub_020381C0 -_0203865C: - pop {r3, r4, r5, pc} - nop -_02038660: .word 0x021D4150 -_02038664: .word sub_02038508 - thumb_func_end sub_02038610 - - thumb_func_start sub_02038668 -sub_02038668: ; 0x02038668 - push {r3, lr} - bl sub_02034FE8 - cmp r0, #0 - beq _0203867A - ldr r0, _0203867C ; =sub_02038680 - mov r1, #0 - bl sub_020381C0 -_0203867A: - pop {r3, pc} - .balign 4, 0 -_0203867C: .word sub_02038680 - thumb_func_end sub_02038668 - - thumb_func_start sub_02038680 -sub_02038680: ; 0x02038680 - push {r3, lr} - bl sub_02035664 - cmp r0, #0 - beq _020386A6 - mov r0, #0 - mov r2, #2 - add r1, r0, #0 - lsl r2, r2, #8 - bl sub_02035F14 - cmp r0, #0 - beq _020386A6 - bl sub_02035FD8 - ldr r0, _020386A8 ; =sub_020386AC - mov r1, #0x64 - bl sub_020381C0 -_020386A6: - pop {r3, pc} - .balign 4, 0 -_020386A8: .word sub_020386AC - thumb_func_end sub_02038680 - - thumb_func_start sub_020386AC -sub_020386AC: ; 0x020386AC - push {r3, lr} - ldr r0, _02038704 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4d - ldrb r0, [r0] - bl sub_020351AC - cmp r0, #0 - beq _020386D8 - ldr r0, _02038704 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4d - ldrb r0, [r0] - bl sub_020360E4 - cmp r0, #0 - beq _020386D8 - ldr r0, _02038708 ; =sub_02038710 - mov r1, #0x64 - bl sub_020381C0 - pop {r3, pc} -_020386D8: - bl sub_02037700 - cmp r0, #0 - beq _020386EA - ldr r0, _0203870C ; =sub_02038804 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_020386EA: - ldr r0, _02038704 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _020386FA - sub r0, r0, #1 - str r0, [r1, #0x44] - pop {r3, pc} -_020386FA: - ldr r0, _0203870C ; =sub_02038804 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_02038704: .word 0x021D4150 -_02038708: .word sub_02038710 -_0203870C: .word sub_02038804 - thumb_func_end sub_020386AC - - thumb_func_start sub_02038710 -sub_02038710: ; 0x02038710 - push {r3, lr} - bl sub_02037700 - cmp r0, #0 - beq _02038724 - ldr r0, _02038760 ; =sub_02038804 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038724: - bl sub_0203769C - bl sub_020373B4 - cmp r0, #0 - beq _02038744 - ldr r0, _02038764 ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - add r0, #0x4c - strb r1, [r0] - ldr r0, _02038768 ; =sub_0203876C - mov r1, #0x78 - bl sub_020381C0 - pop {r3, pc} -_02038744: - ldr r0, _02038764 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _02038754 - sub r0, r0, #1 - str r0, [r1, #0x44] - pop {r3, pc} -_02038754: - ldr r0, _02038760 ; =sub_02038804 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - nop -_02038760: .word sub_02038804 -_02038764: .word 0x021D4150 -_02038768: .word sub_0203876C - thumb_func_end sub_02038710 - - thumb_func_start sub_0203876C -sub_0203876C: ; 0x0203876C - push {r3, lr} - bl sub_02037700 - cmp r0, #0 - beq _02038780 - ldr r0, _020387D4 ; =sub_02038804 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038780: - ldr r0, _020387D8 ; =0x021D4150 - ldr r1, [r0] - add r0, r1, #0 - add r0, #0x4c - ldrb r0, [r0] - cmp r0, #2 - bne _02038798 - ldr r0, _020387DC ; =sub_02038800 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038798: - cmp r0, #1 - bne _020387AA - bl sub_02034434 - ldr r0, _020387E0 ; =sub_020387E8 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_020387AA: - ldr r0, [r1, #0x44] - cmp r0, #0x6e - ble _020387B8 - ldr r1, _020387E4 ; =0x0210F90C - mov r0, #6 - bl sub_020376E0 -_020387B8: - ldr r0, _020387D8 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - beq _020387C8 - sub r0, r0, #1 - str r0, [r1, #0x44] - pop {r3, pc} -_020387C8: - ldr r0, _020387D4 ; =sub_02038804 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - nop -_020387D4: .word sub_02038804 -_020387D8: .word 0x021D4150 -_020387DC: .word sub_02038800 -_020387E0: .word sub_020387E8 -_020387E4: .word 0x0210F90C - thumb_func_end sub_0203876C - - thumb_func_start sub_020387E8 -sub_020387E8: ; 0x020387E8 - push {r3, lr} - bl sub_02037700 - cmp r0, #0 - beq _020387FA - ldr r0, _020387FC ; =sub_02038804 - mov r1, #0 - bl sub_020381C0 -_020387FA: - pop {r3, pc} - .balign 4, 0 -_020387FC: .word sub_02038804 - thumb_func_end sub_020387E8 - - thumb_func_start sub_02038800 -sub_02038800: ; 0x02038800 - bx lr - .balign 4, 0 - thumb_func_end sub_02038800 - - thumb_func_start sub_02038804 -sub_02038804: ; 0x02038804 - push {r3, lr} - ldr r0, _02038848 ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - add r0, #0x4c - strb r1, [r0] - bl sub_02034FE8 - cmp r0, #0 - beq _02038844 - ldr r0, _02038848 ; =0x021D4150 - ldr r1, [r0] - add r0, r1, #0 - add r0, #0x48 - ldrh r0, [r0] - cmp r0, #0 - beq _0203883C - add r0, r1, #0 - add r0, #0x48 - ldrh r0, [r0] - add r1, #0x48 - sub r0, r0, #1 - strh r0, [r1] - ldr r0, _0203884C ; =sub_02038680 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_0203883C: - ldr r0, _02038850 ; =sub_02038800 - mov r1, #0 - bl sub_020381C0 -_02038844: - pop {r3, pc} - nop -_02038848: .word 0x021D4150 -_0203884C: .word sub_02038680 -_02038850: .word sub_02038800 - thumb_func_end sub_02038804 - - thumb_func_start sub_02038854 -sub_02038854: ; 0x02038854 - push {r3, lr} - bl sub_020376F8 - cmp r0, #0 - bne _02038878 - bl sub_02039918 - cmp r0, #0 - bne _02038884 - bl sub_02034FE8 - cmp r0, #0 - beq _02038884 - ldr r0, _020388A0 ; =sub_02038610 - mov r1, #0 - bl sub_020381C0 - b _02038884 -_02038878: - bl sub_0203769C - cmp r0, #0 - bne _02038884 - bl sub_02034638 -_02038884: - bl sub_02037700 - cmp r0, #0 - beq _0203889C - bl sub_02039918 - cmp r0, #0 - bne _0203889C - ldr r0, _020388A4 ; =sub_02038804 - mov r1, #0 - bl sub_020381C0 -_0203889C: - pop {r3, pc} - nop -_020388A0: .word sub_02038610 -_020388A4: .word sub_02038804 - thumb_func_end sub_02038854 - - thumb_func_start sub_020388A8 -sub_020388A8: ; 0x020388A8 - push {r3, lr} - bl sub_02035664 - cmp r0, #0 - beq _020388D6 - ldr r1, _020388D8 ; =0x021D4150 - mov r0, #0 - ldr r1, [r1] - mov r2, #2 - add r1, #0x52 - ldrb r1, [r1] - lsl r2, r2, #8 - add r3, r0, #0 - bl sub_02035ED8 - cmp r0, #0 - beq _020388D6 - bl sub_02035FD8 - ldr r0, _020388DC ; =sub_02038404 - mov r1, #0 - bl sub_020381C0 -_020388D6: - pop {r3, pc} - .balign 4, 0 -_020388D8: .word 0x021D4150 -_020388DC: .word sub_02038404 - thumb_func_end sub_020388A8 - - thumb_func_start sub_020388E0 -sub_020388E0: ; 0x020388E0 - push {r3, lr} - ldr r0, _02038914 ; =0x021D4150 - mov r1, #0xd - ldr r0, [r0] - add r0, #0x4e - strb r1, [r0] - bl sub_0203769C - cmp r0, #0 - add r0, sp, #0 - bne _02038906 - mov r1, #0 - strb r1, [r0, #1] - add r1, sp, #0 - mov r0, #0xa - add r1, #1 - bl sub_020376E0 - pop {r3, pc} -_02038906: - mov r1, #0 - strb r1, [r0] - mov r0, #0xa - add r1, sp, #0 - bl sub_020376E0 - pop {r3, pc} - .balign 4, 0 -_02038914: .word 0x021D4150 - thumb_func_end sub_020388E0 - - thumb_func_start sub_02038918 -sub_02038918: ; 0x02038918 - ldr r1, _02038930 ; =0x021D4150 - ldr r3, _02038934 ; =sub_020381C0 - ldr r2, [r1] - add r2, #0x4d - strb r0, [r2] - ldr r0, [r1] - mov r2, #3 - add r0, #0x48 - strh r2, [r0] - ldr r0, _02038938 ; =sub_020389BC - mov r1, #0 - bx r3 - .balign 4, 0 -_02038930: .word 0x021D4150 -_02038934: .word sub_020381C0 -_02038938: .word sub_020389BC - thumb_func_end sub_02038918 - - thumb_func_start sub_0203893C -sub_0203893C: ; 0x0203893C - ldr r0, _02038948 ; =0x021D4150 - mov r1, #7 - ldr r0, [r0] - add r0, #0x4e - strb r1, [r0] - bx lr - .balign 4, 0 -_02038948: .word 0x021D4150 - thumb_func_end sub_0203893C - - thumb_func_start sub_0203894C -sub_0203894C: ; 0x0203894C - push {r3, lr} - ldr r1, _02038974 ; =0x021D4150 - ldr r2, [r1] - add r2, #0x4d - strb r0, [r2] - ldr r0, [r1] - mov r2, #7 - add r0, #0x4e - strb r2, [r0] - ldr r0, [r1] - mov r2, #3 - add r0, #0x48 - strh r2, [r0] - bl sub_0203A880 - ldr r0, _02038978 ; =sub_02038668 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_02038974: .word 0x021D4150 -_02038978: .word sub_02038668 - thumb_func_end sub_0203894C - - thumb_func_start sub_0203897C -sub_0203897C: ; 0x0203897C - ldr r0, _02038988 ; =0x021D4150 - mov r1, #0x1a - ldr r0, [r0] - add r0, #0x4e - strb r1, [r0] - bx lr - .balign 4, 0 -_02038988: .word 0x021D4150 - thumb_func_end sub_0203897C - - thumb_func_start sub_0203898C -sub_0203898C: ; 0x0203898C - push {r3, lr} - ldr r1, _020389B4 ; =0x021D4150 - ldr r2, [r1] - add r2, #0x4d - strb r0, [r2] - ldr r0, [r1] - mov r2, #0x1a - add r0, #0x4e - strb r2, [r0] - ldr r0, [r1] - mov r2, #3 - add r0, #0x48 - strh r2, [r0] - bl sub_0203A880 - ldr r0, _020389B8 ; =sub_02038668 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_020389B4: .word 0x021D4150 -_020389B8: .word sub_02038668 - thumb_func_end sub_0203898C - - thumb_func_start sub_020389BC -sub_020389BC: ; 0x020389BC - push {r3, lr} - bl sub_02034FE8 - cmp r0, #0 - beq _020389CE - ldr r0, _020389D0 ; =sub_020389D4 - mov r1, #0 - bl sub_020381C0 -_020389CE: - pop {r3, pc} - .balign 4, 0 -_020389D0: .word sub_020389D4 - thumb_func_end sub_020389BC - - thumb_func_start sub_020389D4 -sub_020389D4: ; 0x020389D4 - push {r3, lr} - bl sub_02035664 - cmp r0, #0 - beq _02038A04 - ldr r0, _02038A08 ; =0x021D4150 - mov r2, #2 - ldr r0, [r0] - mov r1, #0xd - add r0, #0x4e - strb r1, [r0] - mov r0, #0 - add r1, r0, #0 - lsl r2, r2, #8 - bl sub_02035F14 - cmp r0, #0 - beq _02038A04 - bl sub_02035FE4 - ldr r0, _02038A0C ; =sub_02038A10 - mov r1, #0x64 - bl sub_020381C0 -_02038A04: - pop {r3, pc} - nop -_02038A08: .word 0x021D4150 -_02038A0C: .word sub_02038A10 - thumb_func_end sub_020389D4 - - thumb_func_start sub_02038A10 -sub_02038A10: ; 0x02038A10 - push {r3, lr} - ldr r0, _02038A84 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4d - ldrb r0, [r0] - bl sub_020351AC - cmp r0, #0 - beq _02038A3C - ldr r0, _02038A84 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4d - ldrb r0, [r0] - bl sub_020360E4 - cmp r0, #0 - beq _02038A3C - ldr r0, _02038A88 ; =sub_02038A94 - mov r1, #0x64 - bl sub_020381C0 - pop {r3, pc} -_02038A3C: - bl sub_02037700 - cmp r0, #0 - bne _02038A4E - ldr r0, _02038A84 ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0 - bne _02038A7C -_02038A4E: - ldr r1, _02038A84 ; =0x021D4150 - ldr r2, [r1] - add r0, r2, #0 - add r0, #0x48 - ldrh r0, [r0] - add r2, #0x48 - sub r0, r0, #1 - strh r0, [r2] - ldr r0, [r1] - add r0, #0x48 - ldrh r0, [r0] - cmp r0, #0 - bne _02038A72 - ldr r0, _02038A8C ; =sub_02038800 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038A72: - ldr r0, _02038A90 ; =sub_020389BC - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038A7C: - beq _02038A82 - sub r0, r0, #1 - str r0, [r1, #0x44] -_02038A82: - pop {r3, pc} - .balign 4, 0 -_02038A84: .word 0x021D4150 -_02038A88: .word sub_02038A94 -_02038A8C: .word sub_02038800 -_02038A90: .word sub_020389BC - thumb_func_end sub_02038A10 - - thumb_func_start sub_02038A94 -sub_02038A94: ; 0x02038A94 - push {r3, lr} - ldr r0, _02038B2C ; =0x021D4150 - ldr r1, [r0] - ldr r0, [r1, #0x44] - cmp r0, #0x5a - ble _02038AA6 - sub r0, r0, #1 - str r0, [r1, #0x44] - pop {r3, pc} -_02038AA6: - bl sub_02037700 - cmp r0, #0 - beq _02038ADC - ldr r1, _02038B2C ; =0x021D4150 - ldr r2, [r1] - add r0, r2, #0 - add r0, #0x48 - ldrh r0, [r0] - add r2, #0x48 - sub r0, r0, #1 - strh r0, [r2] - ldr r0, [r1] - add r0, #0x48 - ldrh r0, [r0] - cmp r0, #0 - bne _02038AD2 - ldr r0, _02038B30 ; =sub_02038800 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038AD2: - ldr r0, _02038B34 ; =sub_020389BC - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038ADC: - bl sub_0203769C - bl sub_020373B4 - cmp r0, #0 - beq _02038AF2 - ldr r0, _02038B38 ; =sub_020387E8 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038AF2: - ldr r1, _02038B2C ; =0x021D4150 - ldr r2, [r1] - ldr r0, [r2, #0x44] - cmp r0, #0 - beq _02038B02 - sub r0, r0, #1 - str r0, [r2, #0x44] - pop {r3, pc} -_02038B02: - add r0, r2, #0 - add r0, #0x48 - ldrh r0, [r0] - add r2, #0x48 - sub r0, r0, #1 - strh r0, [r2] - ldr r0, [r1] - add r0, #0x48 - ldrh r0, [r0] - cmp r0, #0 - bne _02038B22 - ldr r0, _02038B30 ; =sub_02038800 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038B22: - ldr r0, _02038B34 ; =sub_020389BC - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_02038B2C: .word 0x021D4150 -_02038B30: .word sub_02038800 -_02038B34: .word sub_020389BC -_02038B38: .word sub_020387E8 - thumb_func_end sub_02038A94 - - thumb_func_start sub_02038B3C -sub_02038B3C: ; 0x02038B3C - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r2, #0 - bl sub_0203769C - cmp r0, #0 - bne _02038B8A - ldr r6, _02038B8C ; =0x0210F90C - mov r3, #1 - mov r2, #0 -_02038B50: - ldrb r1, [r6] - ldrb r0, [r4, r2] - cmp r1, r0 - beq _02038B5C - mov r3, #0 - b _02038B64 -_02038B5C: - add r2, r2, #1 - add r6, r6, #1 - cmp r2, #6 - blo _02038B50 -_02038B64: - cmp r3, #0 - beq _02038B80 - ldr r0, _02038B90 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x57 - ldrb r0, [r0] - cmp r0, #0 - bne _02038B80 - ldr r1, _02038B94 ; =0x0210F904 - mov r0, #7 - strb r5, [r1] - bl sub_02037184 - pop {r4, r5, r6, pc} -_02038B80: - ldr r1, _02038B98 ; =0x0210F914 - mov r0, #7 - strb r5, [r1] - bl sub_02037184 -_02038B8A: - pop {r4, r5, r6, pc} - .balign 4, 0 -_02038B8C: .word 0x0210F90C -_02038B90: .word 0x021D4150 -_02038B94: .word 0x0210F904 -_02038B98: .word 0x0210F914 - thumb_func_end sub_02038B3C - - thumb_func_start sub_02038B9C -sub_02038B9C: ; 0x02038B9C - push {r3, r4, r5, lr} - mov r4, #1 - ldr r5, _02038C0C ; =0x0210F905 - add r3, r4, #0 -_02038BA4: - ldrb r1, [r5] - ldrb r0, [r2, r3] - cmp r1, r0 - beq _02038BB0 - mov r4, #0 - b _02038BB8 -_02038BB0: - add r3, r3, #1 - add r5, r5, #1 - cmp r3, #6 - blo _02038BA4 -_02038BB8: - cmp r4, #0 - beq _02038BD2 - ldrb r4, [r2] - bl sub_0203769C - cmp r4, r0 - bne _02038C08 - ldr r0, _02038C10 ; =0x021D4150 - mov r1, #1 - ldr r0, [r0] - add r0, #0x4c - strb r1, [r0] - pop {r3, r4, r5, pc} -_02038BD2: - mov r4, #1 - ldr r3, _02038C14 ; =0x0210F915 - add r5, r4, #0 -_02038BD8: - ldrb r1, [r3] - ldrb r0, [r2, r5] - cmp r1, r0 - beq _02038BE4 - mov r4, #0 - b _02038BEC -_02038BE4: - add r5, r5, #1 - add r3, r3, #1 - cmp r5, #6 - blo _02038BD8 -_02038BEC: - cmp r4, #0 - beq _02038C08 - ldrb r4, [r2] - bl sub_0203769C - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - cmp r4, r0 - bne _02038C08 - ldr r0, _02038C10 ; =0x021D4150 - mov r1, #2 - ldr r0, [r0] - add r0, #0x4c - strb r1, [r0] -_02038C08: - pop {r3, r4, r5, pc} - nop -_02038C0C: .word 0x0210F905 -_02038C10: .word 0x021D4150 -_02038C14: .word 0x0210F915 - thumb_func_end sub_02038B9C - - thumb_func_start sub_02038C18 -sub_02038C18: ; 0x02038C18 - mov r0, #6 - bx lr - thumb_func_end sub_02038C18 - - thumb_func_start sub_02038C1C -sub_02038C1C: ; 0x02038C1C - push {r3, lr} - ldr r1, _02038C30 ; =0x021D4150 - ldr r1, [r1] - cmp r1, #0 - beq _02038C2E - add r1, #0x4a - strb r0, [r1] - bl sub_02033908 -_02038C2E: - pop {r3, pc} - .balign 4, 0 -_02038C30: .word 0x021D4150 - thumb_func_end sub_02038C1C - - thumb_func_start sub_02038C34 -sub_02038C34: ; 0x02038C34 - ldr r3, _02038C38 ; =sub_0203528C - bx r3 - .balign 4, 0 -_02038C38: .word sub_0203528C - thumb_func_end sub_02038C34 - - thumb_func_start sub_02038C3C -sub_02038C3C: ; 0x02038C3C - ldr r2, _02038CB4 ; =0x00400131 - cmp r0, r2 - bhi _02038C4C - bhs _02038C8A - ldr r2, _02038CB8 ; =0x00000333 - cmp r0, r2 - beq _02038C5E - bx lr -_02038C4C: - ldr r1, _02038CBC ; =0x00400286 - cmp r0, r1 - bhi _02038C56 - beq _02038C9E - bx lr -_02038C56: - add r1, #0x92 - cmp r0, r1 - beq _02038C76 - bx lr -_02038C5E: - cmp r1, #0xf - bne _02038CB0 - ldr r0, _02038CC0 ; =0x021D4150 - ldr r2, [r0] - add r0, r2, #0 - add r0, #0x58 - ldrb r1, [r0] - mov r0, #1 - add r2, #0x58 - orr r0, r1 - strb r0, [r2] - bx lr -_02038C76: - ldr r0, _02038CC0 ; =0x021D4150 - ldr r2, [r0] - add r0, r2, #0 - add r0, #0x58 - ldrb r1, [r0] - mov r0, #1 - add r2, #0x58 - orr r0, r1 - strb r0, [r2] - bx lr -_02038C8A: - ldr r0, _02038CC0 ; =0x021D4150 - ldr r2, [r0] - add r0, r2, #0 - add r0, #0x58 - ldrb r1, [r0] - mov r0, #2 - add r2, #0x58 - orr r0, r1 - strb r0, [r2] - bx lr -_02038C9E: - ldr r0, _02038CC0 ; =0x021D4150 - ldr r2, [r0] - add r0, r2, #0 - add r0, #0x58 - ldrb r1, [r0] - mov r0, #4 - add r2, #0x58 - orr r0, r1 - strb r0, [r2] -_02038CB0: - bx lr - nop -_02038CB4: .word 0x00400131 -_02038CB8: .word 0x00000333 -_02038CBC: .word 0x00400286 -_02038CC0: .word 0x021D4150 - thumb_func_end sub_02038C3C - - thumb_func_start sub_02038CC4 -sub_02038CC4: ; 0x02038CC4 - push {r3, lr} - mov r0, #1 - add r1, r0, #0 - mov r2, #0x20 - bl sub_02035F14 - cmp r0, #0 - beq _02038CE0 - bl sub_02035FD8 - ldr r0, _02038CE4 ; =sub_02038C34 - mov r1, #0 - bl sub_020381C0 -_02038CE0: - pop {r3, pc} - nop -_02038CE4: .word sub_02038C34 - thumb_func_end sub_02038CC4 - - thumb_func_start sub_02038CE8 -sub_02038CE8: ; 0x02038CE8 - push {r3, lr} - bl sub_02034DB8 - cmp r0, #0 - beq _02038D18 - ldr r0, _02038D1C ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - ldr r0, [r0, #0x2c] - bl sub_02034B0C - ldr r0, _02038D1C ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - ldr r0, [r0, #0x28] - bl sub_02034354 - ldr r0, _02038D20 ; =sub_02038C3C - bl sub_02033A7C - ldr r0, _02038D24 ; =sub_02038CC4 - mov r1, #0 - bl sub_020381C0 -_02038D18: - pop {r3, pc} - nop -_02038D1C: .word 0x021D4150 -_02038D20: .word sub_02038C3C -_02038D24: .word sub_02038CC4 - thumb_func_end sub_02038CE8 - - thumb_func_start sub_02038D28 -sub_02038D28: ; 0x02038D28 - push {r4, lr} - add r4, r0, #0 - bl sub_02037474 - cmp r0, #0 - bne _02038D58 - mov r2, #7 - mov r0, #3 - mov r1, #0xf - lsl r2, r2, #0xc - bl sub_0201A91C - add r0, r4, #0 - mov r1, #0x11 - bl sub_02037C98 - ldr r0, _02038D5C ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - add r0, #0x4f - strb r1, [r0] - ldr r0, _02038D60 ; =sub_02038CE8 - bl sub_020381C0 -_02038D58: - pop {r4, pc} - nop -_02038D5C: .word 0x021D4150 -_02038D60: .word sub_02038CE8 - thumb_func_end sub_02038D28 - - thumb_func_start sub_02038D64 -sub_02038D64: ; 0x02038D64 - push {r3, lr} - ldr r0, _02038D78 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _02038D76 - ldr r0, _02038D7C ; =sub_0203847C - mov r1, #5 - bl sub_020381C0 -_02038D76: - pop {r3, pc} - .balign 4, 0 -_02038D78: .word 0x021D4150 -_02038D7C: .word sub_0203847C - thumb_func_end sub_02038D64 - - thumb_func_start sub_02038D80 -sub_02038D80: ; 0x02038D80 - ldr r0, _02038D8C ; =0x021D4150 - ldr r0, [r0] - add r0, #0x58 - ldrb r0, [r0] - bx lr - nop -_02038D8C: .word 0x021D4150 - thumb_func_end sub_02038D80 - - thumb_func_start sub_02038D90 -sub_02038D90: ; 0x02038D90 - push {r3, lr} - bl sub_02037988 - ldr r0, _02038DF0 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _02038DA2 - mov r0, #1 - pop {r3, pc} -_02038DA2: - add r0, #0x4e - ldrb r0, [r0] - cmp r0, #0x18 - beq _02038DB2 - cmp r0, #0x19 - beq _02038DB2 - cmp r0, #0x24 - bne _02038DBA -_02038DB2: - bl ov00_021E6CB8 - mov r0, #1 - pop {r3, pc} -_02038DBA: - bl sub_02039998 - cmp r0, #0 - beq _02038DE2 - ldr r0, _02038DF0 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4e - ldrb r0, [r0] - cmp r0, #0x21 - bne _02038DD8 - ldr r0, _02038DF4 ; =sub_02039D78 - mov r1, #0 - bl sub_020381C0 - b _02038DEA -_02038DD8: - ldr r0, _02038DF8 ; =sub_020392F4 - mov r1, #0 - bl sub_020381C0 - b _02038DEA -_02038DE2: - ldr r0, _02038DFC ; =sub_020381FC - mov r1, #0 - bl sub_020381C0 -_02038DEA: - mov r0, #0 - pop {r3, pc} - nop -_02038DF0: .word 0x021D4150 -_02038DF4: .word sub_02039D78 -_02038DF8: .word sub_020392F4 -_02038DFC: .word sub_020381FC - thumb_func_end sub_02038D90 - - thumb_func_start sub_02038E00 -sub_02038E00: ; 0x02038E00 - push {r3, lr} - bl sub_02034DB8 - cmp r0, #0 - beq _02038E3E - ldr r0, _02038E40 ; =0x021D4150 - mov r1, #1 - ldr r0, [r0] - ldr r0, [r0, #0x2c] - bl sub_02034B0C - ldr r0, _02038E40 ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - ldr r0, [r0, #0x28] - bl sub_02034354 - mov r0, #1 - add r1, r0, #0 - lsl r2, r0, #9 - add r3, r0, #0 - bl sub_02035ED8 - cmp r0, #0 - beq _02038E3E - bl sub_02035FD8 - ldr r0, _02038E44 ; =sub_02038260 - mov r1, #0 - bl sub_020381C0 -_02038E3E: - pop {r3, pc} - .balign 4, 0 -_02038E40: .word 0x021D4150 -_02038E44: .word sub_02038260 - thumb_func_end sub_02038E00 - - thumb_func_start sub_02038E48 -sub_02038E48: ; 0x02038E48 - push {r3, lr} - bl sub_02034DB8 - cmp r0, #0 - beq _02038E84 - ldr r0, _02038E88 ; =0x021D4150 - mov r1, #1 - ldr r0, [r0] - ldr r0, [r0, #0x2c] - bl sub_02034B0C - ldr r0, _02038E88 ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - ldr r0, [r0, #0x28] - bl sub_02034354 - mov r0, #1 - add r1, r0, #0 - lsl r2, r0, #9 - bl sub_02035F14 - cmp r0, #0 - beq _02038E84 - bl sub_02035FD8 - ldr r0, _02038E8C ; =sub_020382DC - mov r1, #0 - bl sub_020381C0 -_02038E84: - pop {r3, pc} - nop -_02038E88: .word 0x021D4150 -_02038E8C: .word sub_020382DC - thumb_func_end sub_02038E48 - - thumb_func_start sub_02038E90 -sub_02038E90: ; 0x02038E90 - bx lr - .balign 4, 0 - thumb_func_end sub_02038E90 - - thumb_func_start sub_02038E94 -sub_02038E94: ; 0x02038E94 - push {r3, lr} - mov r0, #0 - bl ov00_021E5E54 - cmp r0, #0 - bge _02038EA8 - ldr r0, _02038EAC ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 -_02038EA8: - pop {r3, pc} - nop -_02038EAC: .word sub_02038E90 - thumb_func_end sub_02038E94 - - thumb_func_start sub_02038EB0 -sub_02038EB0: ; 0x02038EB0 - bx lr - .balign 4, 0 - thumb_func_end sub_02038EB0 - - thumb_func_start sub_02038EB4 -sub_02038EB4: ; 0x02038EB4 - bx lr - .balign 4, 0 - thumb_func_end sub_02038EB4 - - thumb_func_start sub_02038EB8 -sub_02038EB8: ; 0x02038EB8 - push {r3, lr} - mov r0, #1 - bl sub_0203786C - mov r0, #0 - bl ov00_021E5E54 - cmp r0, #0xa - blt _02038ED8 - cmp r0, #0x14 - bge _02038ED8 - ldr r0, _02038F60 ; =sub_02038EB4 - mov r1, #0 - bl sub_020381C0 - b _02038F3A -_02038ED8: - cmp r0, #0 - bge _02038EE6 - ldr r0, _02038F64 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - b _02038F3A -_02038EE6: - cmp r0, #0x17 - bne _02038EF4 - ldr r0, _02038F68 ; =sub_02038E94 - mov r1, #0 - bl sub_020381C0 - b _02038F3A -_02038EF4: - cmp r0, #0x18 - bne _02038F18 - ldr r0, _02038F6C ; =0x021D4150 - ldr r0, [r0] - add r0, #0x53 - ldrb r0, [r0] - cmp r0, #0 - beq _02038F0E - ldr r0, _02038F64 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - b _02038F3A -_02038F0E: - ldr r0, _02038F70 ; =sub_02038EB0 - mov r1, #0 - bl sub_020381C0 - b _02038F3A -_02038F18: - cmp r0, #0x15 - bne _02038F3A - ldr r0, _02038F6C ; =0x021D4150 - ldr r0, [r0] - add r0, #0x53 - ldrb r0, [r0] - cmp r0, #0 - beq _02038F32 - ldr r0, _02038F64 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - b _02038F3A -_02038F32: - ldr r0, _02038F70 ; =sub_02038EB0 - mov r1, #0 - bl sub_020381C0 -_02038F3A: - ldr r0, _02038F6C ; =0x021D4150 - ldr r0, [r0] - add r0, #0x53 - ldrb r0, [r0] - cmp r0, #0 - beq _02038F5E - bl sub_02037454 - ldr r1, _02038F6C ; =0x021D4150 - ldr r1, [r1] - add r1, #0x4b - ldrb r1, [r1] - cmp r1, r0 - beq _02038F5E - ldr r0, _02038F64 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 -_02038F5E: - pop {r3, pc} - .balign 4, 0 -_02038F60: .word sub_02038EB4 -_02038F64: .word sub_02038E90 -_02038F68: .word sub_02038E94 -_02038F6C: .word 0x021D4150 -_02038F70: .word sub_02038EB0 - thumb_func_end sub_02038EB8 - - thumb_func_start sub_02038F74 -sub_02038F74: ; 0x02038F74 - push {r3, r4} - ldr r3, _02038F98 ; =0x021D4150 - ldr r4, [r3] - cmp r4, #0 - beq _02038F94 - add r3, r0, #0 - sub r3, #0x19 - cmp r3, #1 - bls _02038F88 - neg r0, r0 -_02038F88: - str r0, [r4, #0x34] - ldr r0, _02038F98 ; =0x021D4150 - ldr r3, [r0] - str r1, [r3, #0x38] - ldr r0, [r0] - str r2, [r0, #0x3c] -_02038F94: - pop {r3, r4} - bx lr - .balign 4, 0 -_02038F98: .word 0x021D4150 - thumb_func_end sub_02038F74 - - thumb_func_start sub_02038F9C -sub_02038F9C: ; 0x02038F9C - push {r3, lr} - mov r0, #0 - bl ov00_021E5E54 - cmp r0, #0xa - blt _02038FB6 - cmp r0, #0x14 - bge _02038FB6 - ldr r0, _02038FFC ; =sub_02038EB4 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038FB6: - cmp r0, #0 - bge _02038FC4 - ldr r0, _02039000 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038FC4: - cmp r0, #0x14 - bne _02038FD2 - ldr r0, _02039004 ; =sub_02038EB8 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038FD2: - cmp r0, #0x15 - bne _02038FE0 - ldr r0, _02039008 ; =sub_02038EB0 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038FE0: - cmp r0, #0x16 - bne _02038FEE - ldr r0, _02038FFC ; =sub_02038EB4 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02038FEE: - cmp r0, #0x18 - bne _02038FFA - ldr r0, _02039008 ; =sub_02038EB0 - mov r1, #0 - bl sub_020381C0 -_02038FFA: - pop {r3, pc} - .balign 4, 0 -_02038FFC: .word sub_02038EB4 -_02039000: .word sub_02038E90 -_02039004: .word sub_02038EB8 -_02039008: .word sub_02038EB0 - thumb_func_end sub_02038F9C - - thumb_func_start sub_0203900C -sub_0203900C: ; 0x0203900C - push {r3, lr} - mov r0, #1 - bl ov00_021E5E54 - cmp r0, #0 - bge _02039022 - ldr r0, _02039074 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02039022: - ldr r0, _02039078 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4e - ldrb r0, [r0] - bl sub_02033FC4 - add r2, r0, #0 - ldr r0, _02039078 ; =0x021D4150 - ldr r1, [r0] - mov r0, #0x51 - ldrsb r0, [r1, r0] - add r1, r2, #1 - mov r2, #0 - bl ov00_021E6D7C - add r0, r0, #3 - cmp r0, #3 - bhi _02039070 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_02039052: ; jump table - .short _02039068 - _02039052 - 2 ; case 0 - .short _02039070 - _02039052 - 2 ; case 1 - .short _02039070 - _02039052 - 2 ; case 2 - .short _0203905A - _02039052 - 2 ; case 3 -_0203905A: - bl sub_0203622C - ldr r0, _0203907C ; =sub_02038F9C - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02039068: - ldr r0, _02039074 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 -_02039070: - pop {r3, pc} - nop -_02039074: .word sub_02038E90 -_02039078: .word 0x021D4150 -_0203907C: .word sub_02038F9C - thumb_func_end sub_0203900C - - thumb_func_start sub_02039080 -sub_02039080: ; 0x02039080 - push {r4, lr} - add r4, r0, #0 - ldr r0, _020390B0 ; =0x021D4150 - ldr r0, [r0] - ldr r1, [r0, #0x24] - ldr r0, _020390B4 ; =sub_02038F9C - cmp r1, r0 - beq _02039094 - mov r0, #0 - pop {r4, pc} -_02039094: - ldr r0, _020390B8 ; =sub_02036904 - ldr r1, _020390BC ; =sub_020367A8 - bl ov00_021E5C84 - ldr r0, _020390B0 ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - add r0, #0x51 - strb r4, [r0] - ldr r0, _020390C0 ; =sub_0203900C - bl sub_020381C0 - mov r0, #1 - pop {r4, pc} - .balign 4, 0 -_020390B0: .word 0x021D4150 -_020390B4: .word sub_02038F9C -_020390B8: .word sub_02036904 -_020390BC: .word sub_020367A8 -_020390C0: .word sub_0203900C - thumb_func_end sub_02039080 - - thumb_func_start sub_020390C4 -sub_020390C4: ; 0x020390C4 - ldr r0, _02039120 ; =0x021D4150 - ldr r1, _02039124 ; =sub_02038F9C - ldr r0, [r0] - ldr r0, [r0, #0x24] - cmp r0, r1 - bne _020390D4 - mov r0, #0 - bx lr -_020390D4: - ldr r1, _02039128 ; =sub_02038EB8 - cmp r0, r1 - bne _020390DE - mov r0, #1 - bx lr -_020390DE: - ldr r1, _0203912C ; =sub_02038E94 - cmp r0, r1 - bne _020390E8 - mov r0, #3 - bx lr -_020390E8: - ldr r1, _02039130 ; =sub_02038EB0 - cmp r0, r1 - bne _020390F2 - mov r0, #4 - bx lr -_020390F2: - ldr r1, _02039134 ; =sub_02038EB4 - cmp r0, r1 - bne _020390FC - mov r0, #5 - bx lr -_020390FC: - ldr r1, _02039138 ; =sub_02039DE4 - cmp r0, r1 - bne _02039106 - mov r0, #0 - bx lr -_02039106: - ldr r1, _0203913C ; =sub_02039DC4 - cmp r0, r1 - bne _02039110 - mov r0, #1 - bx lr -_02039110: - ldr r1, _02039140 ; =sub_02039E7C - cmp r0, r1 - bne _0203911A - mov r0, #3 - bx lr -_0203911A: - mov r0, #2 - bx lr - nop -_02039120: .word 0x021D4150 -_02039124: .word sub_02038F9C -_02039128: .word sub_02038EB8 -_0203912C: .word sub_02038E94 -_02039130: .word sub_02038EB0 -_02039134: .word sub_02038EB4 -_02039138: .word sub_02039DE4 -_0203913C: .word sub_02039DC4 -_02039140: .word sub_02039E7C - thumb_func_end sub_020390C4 - - thumb_func_start sub_02039144 -sub_02039144: ; 0x02039144 - push {r3, lr} - ldr r0, _020391BC ; =sub_02036904 - ldr r1, _020391C0 ; =sub_020367A8 - bl ov00_021E5C84 - mov r0, #0 - mvn r0, r0 - mov r1, #4 - mov r2, #1 - bl ov00_021E6D7C - add r0, r0, #4 - cmp r0, #4 - bhi _0203919A - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203916C: ; jump table - .short _02039198 - _0203916C - 2 ; case 0 - .short _0203918E - _0203916C - 2 ; case 1 - .short _0203919A - _0203916C - 2 ; case 2 - .short _0203919A - _0203916C - 2 ; case 3 - .short _02039176 - _0203916C - 2 ; case 4 -_02039176: - ldr r0, _020391C4 ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - add r0, #0x5c - strb r1, [r0] - bl sub_0203622C - ldr r0, _020391C8 ; =sub_02038F9C - mov r1, #0 - bl sub_020381C0 - b _0203919A -_0203918E: - ldr r0, _020391CC ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - b _0203919A -_02039198: - pop {r3, pc} -_0203919A: - bl ov00_021E6690 - cmp r0, #0 - bge _020391AC - ldr r0, _020391CC ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_020391AC: - cmp r0, #0x1a - bne _020391B8 - ldr r0, _020391CC ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 -_020391B8: - pop {r3, pc} - nop -_020391BC: .word sub_02036904 -_020391C0: .word sub_020367A8 -_020391C4: .word 0x021D4150 -_020391C8: .word sub_02038F9C -_020391CC: .word sub_02038E90 - thumb_func_end sub_02039144 - - thumb_func_start sub_020391D0 -sub_020391D0: ; 0x020391D0 - push {r3, lr} - mov r0, #0 - bl sub_0203786C - ldr r0, _02039214 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x50 - ldrb r0, [r0] - bl ov00_021E6BE4 - cmp r0, #0 - beq _020391FE - bl ov00_021E6C68 - cmp r0, #0 - beq _020391FE - bl sub_020343E4 - ldr r0, _02039218 ; =sub_02039144 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_020391FE: - mov r0, #0 - bl ov00_021E5E54 - cmp r0, #0 - bge _02039210 - ldr r0, _0203921C ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 -_02039210: - pop {r3, pc} - nop -_02039214: .word 0x021D4150 -_02039218: .word sub_02039144 -_0203921C: .word sub_02038E90 - thumb_func_end sub_020391D0 - - thumb_func_start sub_02039220 -sub_02039220: ; 0x02039220 - push {r3, lr} - bl sub_0203769C - cmp r0, #0 - bne _0203923C - ldr r0, _0203925C ; =0x021D4150 - mov r1, #0 - ldr r0, [r0] - add r0, #0x50 - strb r1, [r0] - ldr r0, _02039260 ; =sub_020391D0 - bl sub_020381C0 - b _0203924E -_0203923C: - ldr r0, _0203925C ; =0x021D4150 - mov r1, #1 - ldr r0, [r0] - add r0, #0x50 - strb r1, [r0] - ldr r0, _02039260 ; =sub_020391D0 - mov r1, #0 - bl sub_020381C0 -_0203924E: - ldr r0, _0203925C ; =0x021D4150 - mov r1, #1 - ldr r0, [r0] - add r0, #0x5c - strb r1, [r0] - pop {r3, pc} - nop -_0203925C: .word 0x021D4150 -_02039260: .word sub_020391D0 - thumb_func_end sub_02039220 - - thumb_func_start sub_02039264 -sub_02039264: ; 0x02039264 - ldr r0, _02039270 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x5c - ldrb r0, [r0] - bx lr - nop -_02039270: .word 0x021D4150 - thumb_func_end sub_02039264 - - thumb_func_start sub_02039274 -sub_02039274: ; 0x02039274 - ldr r0, _02039294 ; =0x021D4150 - ldr r0, [r0] - ldr r1, [r0, #0x24] - ldr r0, _02039298 ; =sub_02039144 - cmp r1, r0 - bne _02039284 - mov r0, #1 - bx lr -_02039284: - ldr r0, _0203929C ; =sub_02039C60 - cmp r1, r0 - bne _0203928E - mov r0, #1 - bx lr -_0203928E: - mov r0, #0 - bx lr - nop -_02039294: .word 0x021D4150 -_02039298: .word sub_02039144 -_0203929C: .word sub_02039C60 - thumb_func_end sub_02039274 - - thumb_func_start sub_020392A0 -sub_020392A0: ; 0x020392A0 - ldr r0, _020392C8 ; =0x021D4150 - ldr r0, [r0] - ldr r1, [r0, #0x24] - ldr r0, _020392CC ; =sub_02038F9C - cmp r1, r0 - bne _020392B0 - mov r0, #1 - bx lr -_020392B0: - ldr r0, _020392D0 ; =sub_02039144 - cmp r1, r0 - bne _020392BA - mov r0, #1 - bx lr -_020392BA: - ldr r0, _020392D4 ; =sub_02039C60 - cmp r1, r0 - bne _020392C4 - mov r0, #1 - bx lr -_020392C4: - mov r0, #0 - bx lr - .balign 4, 0 -_020392C8: .word 0x021D4150 -_020392CC: .word sub_02038F9C -_020392D0: .word sub_02039144 -_020392D4: .word sub_02039C60 - thumb_func_end sub_020392A0 - - thumb_func_start sub_020392D8 -sub_020392D8: ; 0x020392D8 - push {r3, lr} - ldr r0, _020392F0 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _020392E6 - bl GF_AssertFail -_020392E6: - ldr r0, _020392F0 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x34 - pop {r3, pc} - nop -_020392F0: .word 0x021D4150 - thumb_func_end sub_020392D8 - - thumb_func_start sub_020392F4 -sub_020392F4: ; 0x020392F4 - push {r3, lr} - mov r0, #0 - bl sub_0203786C - mov r0, #0 - bl ov00_021E6BE4 - cmp r0, #0 - beq _02039312 - bl ov00_021E6C68 - ldr r0, _02039328 ; =sub_0203847C - mov r1, #0 - bl sub_020381C0 -_02039312: - mov r0, #0 - bl ov00_021E5E54 - cmp r0, #0 - bge _02039324 - ldr r0, _0203932C ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 -_02039324: - pop {r3, pc} - nop -_02039328: .word sub_0203847C -_0203932C: .word sub_02038E90 - thumb_func_end sub_020392F4 - - thumb_func_start sub_02039330 -sub_02039330: ; 0x02039330 - push {r3, lr} - ldr r0, _02039350 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _0203934C - mov r0, #1 - bl sub_0201A738 - bl sub_020343E4 - ldr r0, _02039354 ; =sub_0203847C - mov r1, #5 - bl sub_020381C0 -_0203934C: - pop {r3, pc} - nop -_02039350: .word 0x021D4150 -_02039354: .word sub_0203847C - thumb_func_end sub_02039330 - - thumb_func_start sub_02039358 -sub_02039358: ; 0x02039358 - push {r3, lr} - ldr r0, _02039370 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _0203936E - mov r1, #0 - add r0, #0x50 - strb r1, [r0] - ldr r0, _02039374 ; =sub_020391D0 - bl sub_020381C0 -_0203936E: - pop {r3, pc} - .balign 4, 0 -_02039370: .word 0x021D4150 -_02039374: .word sub_020391D0 - thumb_func_end sub_02039358 - - thumb_func_start sub_02039378 -sub_02039378: ; 0x02039378 - push {r3, lr} - ldr r0, _020393AC ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _020393AA - mov r0, #0 - mov r1, #1 - bl sub_020398D4 - bl sub_0203769C - cmp r0, #0 - bne _02039398 - mov r1, #0 - ldr r0, _020393AC ; =0x021D4150 - b _0203939C -_02039398: - ldr r0, _020393AC ; =0x021D4150 - mov r1, #1 -_0203939C: - ldr r0, [r0] - add r0, #0x50 - strb r1, [r0] - ldr r0, _020393B0 ; =sub_020391D0 - mov r1, #0 - bl sub_020381C0 -_020393AA: - pop {r3, pc} - .balign 4, 0 -_020393AC: .word 0x021D4150 -_020393B0: .word sub_020391D0 - thumb_func_end sub_02039378 - - thumb_func_start sub_020393B4 -sub_020393B4: ; 0x020393B4 - push {r3, lr} - bl sub_0203769C - add r1, sp, #0 - strb r0, [r1] - mov r0, #0x15 - add r1, sp, #0 - bl sub_020376E0 - pop {r3, pc} - thumb_func_end sub_020393B4 - - thumb_func_start sub_020393C8 -sub_020393C8: ; 0x020393C8 - ldr r0, _02039408 ; =0x021D4150 - ldr r2, [r0] - cmp r2, #0 - beq _02039402 - ldr r1, [r2, #0x24] - ldr r0, _0203940C ; =sub_02038E90 - cmp r1, r0 - bne _020393DC - mov r0, #1 - bx lr -_020393DC: - ldr r0, _02039410 ; =sub_02038E94 - cmp r1, r0 - bne _020393F0 - add r0, r2, #0 - add r0, #0x53 - ldrb r0, [r0] - cmp r0, #0 - beq _020393F0 - mov r0, #1 - bx lr -_020393F0: - ldr r0, _02039414 ; =sub_02039E7C - cmp r1, r0 - bne _02039402 - add r2, #0x53 - ldrb r0, [r2] - cmp r0, #0 - beq _02039402 - mov r0, #1 - bx lr -_02039402: - mov r0, #0 - bx lr - nop -_02039408: .word 0x021D4150 -_0203940C: .word sub_02038E90 -_02039410: .word sub_02038E94 -_02039414: .word sub_02039E7C - thumb_func_end sub_020393C8 - - thumb_func_start sub_02039418 -sub_02039418: ; 0x02039418 - push {r4, lr} - add r4, r0, #0 - ldr r0, _02039468 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _02039466 - mov r1, #0xf - add r2, r1, #0 - mov r0, #3 - add r2, #0xf1 - bl sub_0201A91C - mov r0, #0xf - mov r1, #0x68 - bl AllocFromHeap - ldr r1, _02039468 ; =0x021D4150 - mov r2, #0x68 - str r0, [r1] - mov r1, #0 - bl MIi_CpuFill8 - ldr r0, _02039468 ; =0x021D4150 - mov r2, #0x18 - ldr r1, [r0] - add r1, #0x4e - strb r2, [r1] - ldr r2, [r0] - mov r1, #1 - add r2, #0x55 - strb r1, [r2] - ldr r0, [r0] - str r4, [r0, #0x28] - mov r0, #0 - bl sub_020398D4 - mov r0, #1 - bl sub_0201A728 -_02039466: - pop {r4, pc} - .balign 4, 0 -_02039468: .word 0x021D4150 - thumb_func_end sub_02039418 - - thumb_func_start sub_0203946C -sub_0203946C: ; 0x0203946C - push {r3, lr} - ldr r0, _0203949C ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _02039498 - mov r0, #1 - bl sub_0201A738 - mov r0, #0 - add r1, r0, #0 - bl sub_020398D4 - ldr r0, _0203949C ; =0x021D4150 - ldr r0, [r0] - bl FreeToHeap - ldr r0, _0203949C ; =0x021D4150 - mov r1, #0 - str r1, [r0] - mov r0, #0xf - bl sub_0201A9C4 -_02039498: - pop {r3, pc} - nop -_0203949C: .word 0x021D4150 - thumb_func_end sub_0203946C - - thumb_func_start sub_020394A0 -sub_020394A0: ; 0x020394A0 - push {r4, lr} - add r4, r0, #0 - ldr r0, _020394F0 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _020394EE - mov r1, #0xf - add r2, r1, #0 - mov r0, #3 - add r2, #0xf1 - bl sub_0201A91C - mov r0, #0xf - mov r1, #0x68 - bl AllocFromHeap - ldr r1, _020394F0 ; =0x021D4150 - mov r2, #0x68 - str r0, [r1] - mov r1, #0 - bl MIi_CpuFill8 - ldr r0, _020394F0 ; =0x021D4150 - mov r2, #0x19 - ldr r1, [r0] - add r1, #0x4e - strb r2, [r1] - ldr r2, [r0] - mov r1, #1 - add r2, #0x55 - strb r1, [r2] - ldr r0, [r0] - str r4, [r0, #0x28] - mov r0, #0 - bl sub_020398D4 - mov r0, #1 - bl sub_0201A728 -_020394EE: - pop {r4, pc} - .balign 4, 0 -_020394F0: .word 0x021D4150 - thumb_func_end sub_020394A0 - - thumb_func_start sub_020394F4 -sub_020394F4: ; 0x020394F4 - push {r3, lr} - ldr r0, _02039524 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _02039520 - mov r0, #1 - bl sub_0201A738 - mov r0, #0 - add r1, r0, #0 - bl sub_020398D4 - ldr r0, _02039524 ; =0x021D4150 - ldr r0, [r0] - bl FreeToHeap - ldr r0, _02039524 ; =0x021D4150 - mov r1, #0 - str r1, [r0] - mov r0, #0xf - bl sub_0201A9C4 -_02039520: - pop {r3, pc} - nop -_02039524: .word 0x021D4150 - thumb_func_end sub_020394F4 - - thumb_func_start sub_02039528 -sub_02039528: ; 0x02039528 - push {r4, lr} - add r4, r0, #0 - ldr r0, _02039578 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _02039576 - mov r1, #0xf - add r2, r1, #0 - mov r0, #3 - add r2, #0xf1 - bl sub_0201A91C - mov r0, #0xf - mov r1, #0x68 - bl AllocFromHeap - ldr r1, _02039578 ; =0x021D4150 - mov r2, #0x68 - str r0, [r1] - mov r1, #0 - bl MIi_CpuFill8 - ldr r0, _02039578 ; =0x021D4150 - mov r2, #0x24 - ldr r1, [r0] - add r1, #0x4e - strb r2, [r1] - ldr r2, [r0] - mov r1, #1 - add r2, #0x55 - strb r1, [r2] - ldr r0, [r0] - str r4, [r0, #0x28] - mov r0, #0 - bl sub_020398D4 - mov r0, #1 - bl sub_0201A728 -_02039576: - pop {r4, pc} - .balign 4, 0 -_02039578: .word 0x021D4150 - thumb_func_end sub_02039528 - - thumb_func_start sub_0203957C -sub_0203957C: ; 0x0203957C - push {r3, lr} - ldr r0, _020395AC ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _020395A8 - mov r0, #1 - bl sub_0201A738 - mov r0, #0 - add r1, r0, #0 - bl sub_020398D4 - ldr r0, _020395AC ; =0x021D4150 - ldr r0, [r0] - bl FreeToHeap - ldr r0, _020395AC ; =0x021D4150 - mov r1, #0 - str r1, [r0] - mov r0, #0xf - bl sub_0201A9C4 -_020395A8: - pop {r3, pc} - nop -_020395AC: .word 0x021D4150 - thumb_func_end sub_0203957C - - thumb_func_start sub_020395B0 -sub_020395B0: ; 0x020395B0 - push {r3, lr} - sub sp, #8 - ldr r0, _02039608 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _020395C2 - add sp, #8 - mov r0, #0 - pop {r3, pc} -_020395C2: - add r0, #0x4e - ldrb r0, [r0] - cmp r0, #0x18 - beq _020395CE - cmp r0, #0x24 - bne _020395E4 -_020395CE: - add r0, sp, #4 - add r1, sp, #0 - bl ov00_021EC11C - cmp r0, #0 - beq _02039600 - bl ov00_021EC210 - add sp, #8 - mov r0, #1 - pop {r3, pc} -_020395E4: - cmp r0, #0x19 - bne _02039600 - add r0, sp, #4 - add r1, sp, #0 - bl ov00_021EC11C - cmp r0, #0 - beq _02039600 - ldr r0, [sp] - cmp r0, #7 - bne _02039600 - add sp, #8 - mov r0, #1 - pop {r3, pc} -_02039600: - mov r0, #0 - add sp, #8 - pop {r3, pc} - nop -_02039608: .word 0x021D4150 - thumb_func_end sub_020395B0 - - thumb_func_start sub_0203960C -sub_0203960C: ; 0x0203960C - push {r3, lr} - bl ov00_021E5B6C - ldr r1, _02039680 ; =0x021D4150 - ldr r3, [r1] - ldr r2, [r3, #0x44] - sub r2, r2, #1 - str r2, [r3, #0x44] - cmp r0, #0x1b - bne _02039660 - ldr r1, [r1] - add r0, r1, #0 - add r0, #0x4e - ldrb r0, [r0] - cmp r0, #0x21 - bne _02039656 - ldr r0, [r1, #0x60] - bl ov45_0222E804 - cmp r0, #1 - bne _0203964C - ldr r1, _02039680 ; =0x021D4150 - mov r2, #1 - ldr r0, [r1] - add r0, #0x64 - strb r2, [r0] - ldr r1, [r1] - ldr r0, _02039684 ; =sub_02039C14 - ldr r1, [r1, #0x44] - bl sub_020381C0 - pop {r3, pc} -_0203964C: - ldr r0, _02039688 ; =sub_02039DC0 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02039656: - ldr r0, _0203968C ; =sub_02039144 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02039660: - cmp r0, #0 - beq _0203966C - ldr r0, _02039690 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 -_0203966C: - ldr r0, _02039680 ; =0x021D4150 - ldr r0, [r0] - ldr r0, [r0, #0x44] - cmp r0, #0 - bgt _0203967E - ldr r0, _02039690 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 -_0203967E: - pop {r3, pc} - .balign 4, 0 -_02039680: .word 0x021D4150 -_02039684: .word sub_02039C14 -_02039688: .word sub_02039DC0 -_0203968C: .word sub_02039144 -_02039690: .word sub_02038E90 - thumb_func_end sub_0203960C - - thumb_func_start sub_02039694 -sub_02039694: ; 0x02039694 - push {r3, lr} - bl sub_02034DB8 - cmp r0, #0 - beq _020396EE - mov r2, #0xd5 - mov r0, #3 - mov r1, #0x30 - lsl r2, r2, #0xa - bl sub_0201A91C - mov r0, #1 - add r1, r0, #0 - lsl r2, r0, #9 - add r3, r0, #0 - bl sub_02035ED8 - cmp r0, #0 - beq _020396EE - ldr r0, _020396F0 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4e - ldrb r0, [r0] - bl sub_02033FC4 - add r3, r0, #0 - ldr r0, _020396F0 ; =0x021D4150 - mov r2, #0xb1 - ldr r0, [r0] - mov r1, #0x30 - ldr r0, [r0, #0x28] - lsl r2, r2, #0xa - add r3, r3, #1 - bl ov00_021E5900 - ldr r0, _020396F4 ; =sub_020399DC - bl ov00_021E6CA4 - bl sub_02035FD8 - mov r1, #0xe1 - ldr r0, _020396F8 ; =sub_0203960C - lsl r1, r1, #4 - bl sub_020381C0 -_020396EE: - pop {r3, pc} - .balign 4, 0 -_020396F0: .word 0x021D4150 -_020396F4: .word sub_020399DC -_020396F8: .word sub_0203960C - thumb_func_end sub_02039694 - - thumb_func_start sub_020396FC -sub_020396FC: ; 0x020396FC - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - bl Sav2_PlayerData_GetProfileAddr - bl sub_02037474 - cmp r0, #0 - beq _02039712 - mov r0, #0 - pop {r3, r4, r5, pc} -_02039712: - mov r0, #1 - bl sub_0201A728 - ldr r2, _02039760 ; =0x00007080 - mov r0, #3 - mov r1, #0xf - bl sub_0201A91C - add r0, r5, #0 - mov r1, #0x17 - bl sub_02037C98 - mov r0, #0xf - add r1, r4, #0 - bl AllocFromHeap - ldr r1, _02039764 ; =0x021D4150 - ldr r2, [r1] - str r0, [r2] - ldr r0, [r1] - mov r1, #0 - ldr r0, [r0] - add r2, r4, #0 - bl MIi_CpuFill8 - ldr r0, _02039764 ; =0x021D4150 - mov r1, #0 - ldr r2, [r0] - add r2, #0x4f - strb r1, [r2] - ldr r0, [r0] - str r5, [r0, #0x28] - ldr r0, _02039768 ; =sub_02039694 - bl sub_020381C0 - ldr r0, _02039764 ; =0x021D4150 - ldr r0, [r0] - ldr r0, [r0] - pop {r3, r4, r5, pc} - .balign 4, 0 -_02039760: .word 0x00007080 -_02039764: .word 0x021D4150 -_02039768: .word sub_02039694 - thumb_func_end sub_020396FC - - thumb_func_start sub_0203976C -sub_0203976C: ; 0x0203976C - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - bl Sav2_PlayerData_GetProfileAddr - bl sub_02037474 - cmp r0, #0 - bne _020397B8 - mov r0, #1 - bl sub_0201A728 - ldr r2, _020397BC ; =0x00007080 - mov r0, #3 - mov r1, #0xf - bl sub_0201A91C - add r0, r5, #0 - mov r1, #0x21 - bl sub_02037C98 - ldr r0, _020397C0 ; =0x021D4150 - mov r1, #0 - ldr r2, [r0] - str r1, [r2] - ldr r2, [r0] - str r4, [r2, #0x60] - ldr r2, [r0] - add r2, #0x64 - strb r1, [r2] - ldr r2, [r0] - add r2, #0x4f - strb r1, [r2] - ldr r0, [r0] - str r5, [r0, #0x28] - ldr r0, _020397C4 ; =sub_02039BA0 - bl sub_020381C0 -_020397B8: - pop {r3, r4, r5, pc} - nop -_020397BC: .word 0x00007080 -_020397C0: .word 0x021D4150 -_020397C4: .word sub_02039BA0 - thumb_func_end sub_0203976C - - thumb_func_start sub_020397C8 -sub_020397C8: ; 0x020397C8 - push {r3, lr} - ldr r0, _020397DC ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _020397DA - ldr r0, _020397E0 ; =sub_02039D78 - mov r1, #0 - bl sub_020381C0 -_020397DA: - pop {r3, pc} - .balign 4, 0 -_020397DC: .word 0x021D4150 -_020397E0: .word sub_02039D78 - thumb_func_end sub_020397C8 - - thumb_func_start sub_020397E4 -sub_020397E4: ; 0x020397E4 - ldr r0, _020397F8 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _020397F0 - mov r0, #0 - bx lr -_020397F0: - add r0, #0x64 - ldrb r0, [r0] - bx lr - nop -_020397F8: .word 0x021D4150 - thumb_func_end sub_020397E4 - - thumb_func_start sub_020397FC -sub_020397FC: ; 0x020397FC - ldr r0, _02039814 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _02039810 - ldr r1, [r0, #0x24] - ldr r0, _02039818 ; =sub_02039DC0 - cmp r1, r0 - bne _02039810 - mov r0, #1 - bx lr -_02039810: - mov r0, #0 - bx lr - .balign 4, 0 -_02039814: .word 0x021D4150 -_02039818: .word sub_02039DC0 - thumb_func_end sub_020397FC - - thumb_func_start sub_0203981C -sub_0203981C: ; 0x0203981C - push {r4, lr} - add r4, r0, #0 - ldr r0, _02039864 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - bne _0203982C - bl GF_AssertFail -_0203982C: - bl sub_020392A0 - cmp r0, #1 - beq _02039838 - bl GF_AssertFail -_02039838: - add r0, r4, #0 - bl ov45_0222F274 - cmp r0, #0 - bne _02039854 - add r0, r4, #0 - mov r1, #4 - bl ov45_0222F028 - ldr r0, _02039868 ; =sub_02039DE4 - mov r1, #0 - bl sub_020381C0 - pop {r4, pc} -_02039854: - add r0, r4, #0 - bl ov45_0222F350 - ldr r0, _02039868 ; =sub_02039DE4 - mov r1, #0 - bl sub_020381C0 - pop {r4, pc} - .balign 4, 0 -_02039864: .word 0x021D4150 -_02039868: .word sub_02039DE4 - thumb_func_end sub_0203981C - - thumb_func_start sub_0203986C -sub_0203986C: ; 0x0203986C - push {r3, lr} - bl ov45_0222F464 - cmp r0, #1 - bne _0203987A - bl ov45_0222F154 -_0203987A: - bl ov45_0222F70C - ldr r0, _02039888 ; =sub_02039E30 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_02039888: .word sub_02039E30 - thumb_func_end sub_0203986C - - thumb_func_start sub_0203988C -sub_0203988C: ; 0x0203988C - ldr r0, _020398B8 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _020398B4 - ldr r1, [r0, #0x24] - ldr r0, _020398BC ; =sub_02039DC4 - cmp r1, r0 - bne _020398A0 - mov r0, #2 - bx lr -_020398A0: - ldr r0, _020398C0 ; =sub_02039DE4 - cmp r1, r0 - bne _020398AA - mov r0, #1 - bx lr -_020398AA: - ldr r0, _020398C4 ; =sub_02039E30 - cmp r1, r0 - bne _020398B4 - mov r0, #3 - bx lr -_020398B4: - mov r0, #0 - bx lr - .balign 4, 0 -_020398B8: .word 0x021D4150 -_020398BC: .word sub_02039DC4 -_020398C0: .word sub_02039DE4 -_020398C4: .word sub_02039E30 - thumb_func_end sub_0203988C - - thumb_func_start sub_020398C8 -sub_020398C8: ; 0x020398C8 - ldr r0, _020398D0 ; =0x021D4150 - ldr r0, [r0] - ldr r0, [r0] - bx lr - .balign 4, 0 -_020398D0: .word 0x021D4150 - thumb_func_end sub_020398C8 - - thumb_func_start sub_020398D4 -sub_020398D4: ; 0x020398D4 - push {r4, lr} - add r4, r0, #0 - ldr r0, _02039914 ; =0x021D4150 - ldr r2, [r0] - cmp r2, #0 - beq _02039904 - add r2, #0x53 - strb r4, [r2] - ldr r2, [r0] - add r2, #0x54 - strb r1, [r2] - cmp r4, #0 - beq _020398FC - bl sub_02037454 - ldr r1, _02039914 ; =0x021D4150 - ldr r1, [r1] - add r1, #0x4b - strb r0, [r1] - b _02039904 -_020398FC: - ldr r0, [r0] - mov r1, #0 - add r0, #0x4b - strb r1, [r0] -_02039904: - add r0, r4, #0 - bl sub_020356C0 - add r0, r4, #0 - bl sub_020356EC - pop {r4, pc} - nop -_02039914: .word 0x021D4150 - thumb_func_end sub_020398D4 - - thumb_func_start sub_02039918 -sub_02039918: ; 0x02039918 - ldr r0, _02039938 ; =0x021D4150 - ldr r1, [r0] - cmp r1, #0 - beq _02039934 - add r0, r1, #0 - add r0, #0x5d - ldrb r0, [r0] - cmp r0, #0 - beq _0203992E - mov r0, #1 - bx lr -_0203992E: - add r1, #0x54 - ldrb r0, [r1] - bx lr -_02039934: - mov r0, #0 - bx lr - .balign 4, 0 -_02039938: .word 0x021D4150 - thumb_func_end sub_02039918 - - thumb_func_start sub_0203993C -sub_0203993C: ; 0x0203993C - ldr r0, _02039950 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _0203994A - add r0, #0x4e - ldrb r0, [r0] - bx lr -_0203994A: - mov r0, #1 - bx lr - nop -_02039950: .word 0x021D4150 - thumb_func_end sub_0203993C - - thumb_func_start sub_02039954 -sub_02039954: ; 0x02039954 - ldr r0, _02039968 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _02039962 - add r0, #0x4f - ldrb r0, [r0] - bx lr -_02039962: - mov r0, #0 - bx lr - nop -_02039968: .word 0x021D4150 - thumb_func_end sub_02039954 - - thumb_func_start sub_0203996C -sub_0203996C: ; 0x0203996C - ldr r1, _02039978 ; =0x021D4150 - ldr r3, _0203997C ; =MIi_CpuCopy8 - ldr r1, [r1] - mov r2, #6 - add r1, r1, #4 - bx r3 - .balign 4, 0 -_02039978: .word 0x021D4150 -_0203997C: .word MIi_CpuCopy8 - thumb_func_end sub_0203996C - - thumb_func_start sub_02039980 -sub_02039980: ; 0x02039980 - add r1, r0, #0 - ldr r0, _02039990 ; =0x021D4150 - ldr r3, _02039994 ; =MIi_CpuCopy8 - ldr r0, [r0] - mov r2, #6 - add r0, r0, #4 - bx r3 - nop -_02039990: .word 0x021D4150 -_02039994: .word MIi_CpuCopy8 - thumb_func_end sub_02039980 - - thumb_func_start sub_02039998 -sub_02039998: ; 0x02039998 - push {r3, lr} - bl sub_0203993C - bl sub_02034044 - pop {r3, pc} - thumb_func_end sub_02039998 - - thumb_func_start sub_020399A4 -sub_020399A4: ; 0x020399A4 - ldr r1, _020399B4 ; =0x021D4150 - ldr r1, [r1] - cmp r1, #0 - beq _020399B0 - add r1, #0x56 - strb r0, [r1] -_020399B0: - bx lr - nop -_020399B4: .word 0x021D4150 - thumb_func_end sub_020399A4 - - thumb_func_start sub_020399B8 -sub_020399B8: ; 0x020399B8 - push {r3, lr} - bl sub_0201A79C - cmp r0, #0 - beq _020399C6 - mov r0, #0 - pop {r3, pc} -_020399C6: - ldr r0, _020399D8 ; =0x021D4150 - ldr r0, [r0] - cmp r0, #0 - beq _020399D4 - add r0, #0x56 - ldrb r0, [r0] - pop {r3, pc} -_020399D4: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 -_020399D8: .word 0x021D4150 - thumb_func_end sub_020399B8 - - thumb_func_start sub_020399DC -sub_020399DC: ; 0x020399DC - push {r3, lr} - add r2, r0, #0 - mov r0, #0 - mov r1, #1 - bl sub_0203AA44 -_020399E8: - b _020399E8 - .balign 4, 0 - thumb_func_end sub_020399DC - - thumb_func_start sub_020399EC -sub_020399EC: ; 0x020399EC - push {r3, lr} - mov r0, #0 - mov r1, #4 - add r2, r0, #0 - bl sub_0203AA44 -_020399F8: - b _020399F8 - .balign 4, 0 - thumb_func_end sub_020399EC - - thumb_func_start sub_020399FC -sub_020399FC: ; 0x020399FC - bx lr - .balign 4, 0 - thumb_func_end sub_020399FC - - thumb_func_start sub_02039A00 -sub_02039A00: ; 0x02039A00 - push {r3, lr} - bl sub_02039918 - cmp r0, #0 - beq _02039A98 - bl sub_02037700 - cmp r0, #0 - bne _02039A36 - bl sub_020393C8 - cmp r0, #0 - bne _02039A36 - bl sub_020395B0 - cmp r0, #0 - bne _02039A36 - ldr r0, _02039A9C ; =0x021D4150 - ldr r0, [r0] - add r0, #0x5d - ldrb r0, [r0] - cmp r0, #0 - bne _02039A36 - bl sub_020397FC - cmp r0, #0 - beq _02039A98 -_02039A36: - bl sub_0201A79C - cmp r0, #0 - bne _02039A98 - bl sub_020399B8 - cmp r0, #0 - bne _02039A98 - bl sub_02005FA0 - ldr r0, _02039A9C ; =0x021D4150 - ldr r0, [r0] - ldr r0, [r0, #0x28] - bl sub_020275A4 - ldr r1, _02039AA0 ; =gMain + 0x60 - mov r0, #1 - strb r0, [r1, #8] - ldr r1, _02039A9C ; =0x021D4150 - ldr r2, [r1] - add r1, r2, #0 - add r1, #0x5d - ldrb r1, [r1] - cmp r1, #3 - bne _02039A70 - mov r0, #3 - bl sub_020399A4 - pop {r3, pc} -_02039A70: - cmp r1, #5 - bne _02039A7C - mov r0, #5 - bl sub_020399A4 - pop {r3, pc} -_02039A7C: - add r2, #0x4e - ldrb r1, [r2] - cmp r1, #0x19 - beq _02039A8C - cmp r1, #0xf - beq _02039A8C - cmp r1, #0x24 - bne _02039A94 -_02039A8C: - mov r0, #2 - bl sub_020399A4 - pop {r3, pc} -_02039A94: - bl sub_020399A4 -_02039A98: - pop {r3, pc} - nop -_02039A9C: .word 0x021D4150 -_02039AA0: .word gMain + 0x60 - thumb_func_end sub_02039A00 - - thumb_func_start sub_02039AA4 -sub_02039AA4: ; 0x02039AA4 - push {r3, lr} - bl sub_02035630 - cmp r0, #0 - bne _02039AB6 - bl sub_02037D78 - cmp r0, #0 - bne _02039ABA -_02039AB6: - mov r0, #1 - pop {r3, pc} -_02039ABA: - bl sub_02034BE4 - cmp r0, #0 - bne _02039AC6 - mov r0, #1 - pop {r3, pc} -_02039AC6: - bl sub_02033974 - cmp r0, #0 - beq _02039AD2 - mov r0, #1 - pop {r3, pc} -_02039AD2: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02039AA4 - - thumb_func_start sub_02039AD8 -sub_02039AD8: ; 0x02039AD8 - push {r3, lr} - ldr r1, _02039AF4 ; =0x021D4150 - ldr r1, [r1] - cmp r1, #0 - beq _02039AEE - add r1, #0x5d - strb r0, [r1] - bl sub_02037988 - mov r0, #1 - pop {r3, pc} -_02039AEE: - mov r0, #0 - pop {r3, pc} - nop -_02039AF4: .word 0x021D4150 - thumb_func_end sub_02039AD8 - - thumb_func_start sub_02039AF8 -sub_02039AF8: ; 0x02039AF8 - ldr r0, _02039B0C ; =0x021D4150 - mov r1, #0x1d - ldr r0, [r0] - ldr r3, _02039B10 ; =ov00_021E5C84 - add r0, #0x4e - strb r1, [r0] - ldr r0, _02039B14 ; =sub_020369CC - add r1, r0, #0 - bx r3 - nop -_02039B0C: .word 0x021D4150 -_02039B10: .word ov00_021E5C84 -_02039B14: .word sub_020369CC - thumb_func_end sub_02039AF8 - - thumb_func_start sub_02039B18 -sub_02039B18: ; 0x02039B18 - ldr r0, _02039B2C ; =0x021D4150 - mov r1, #0x23 - ldr r0, [r0] - ldr r3, _02039B30 ; =ov00_021E5C84 - add r0, #0x4e - strb r1, [r0] - ldr r0, _02039B34 ; =sub_020369CC - add r1, r0, #0 - bx r3 - nop -_02039B2C: .word 0x021D4150 -_02039B30: .word ov00_021E5C84 -_02039B34: .word sub_020369CC - thumb_func_end sub_02039B18 - - thumb_func_start sub_02039B38 -sub_02039B38: ; 0x02039B38 - ldr r0, _02039B4C ; =0x021D4150 - mov r1, #0x21 - ldr r0, [r0] - ldr r3, _02039B50 ; =ov00_021E5C84 - add r0, #0x4e - strb r1, [r0] - ldr r0, _02039B54 ; =sub_020369CC - add r1, r0, #0 - bx r3 - nop -_02039B4C: .word 0x021D4150 -_02039B50: .word ov00_021E5C84 -_02039B54: .word sub_020369CC - thumb_func_end sub_02039B38 - - thumb_func_start sub_02039B58 -sub_02039B58: ; 0x02039B58 - ldr r0, _02039B6C ; =0x021D4150 - ldr r3, _02039B70 ; =ov00_021E5C84 - ldr r0, [r0] - mov r1, #0x17 - add r0, #0x4e - strb r1, [r0] - ldr r0, _02039B74 ; =sub_02036904 - ldr r1, _02039B78 ; =sub_020367A8 - bx r3 - nop -_02039B6C: .word 0x021D4150 -_02039B70: .word ov00_021E5C84 -_02039B74: .word sub_02036904 -_02039B78: .word sub_020367A8 - thumb_func_end sub_02039B58 - - thumb_func_start sub_02039B7C -sub_02039B7C: ; 0x02039B7C - ldr r0, _02039B90 ; =0x021D4150 - ldr r3, _02039B94 ; =ov00_021E5C84 - ldr r0, [r0] - mov r1, #0x13 - add r0, #0x4e - strb r1, [r0] - ldr r0, _02039B98 ; =sub_02036904 - ldr r1, _02039B9C ; =sub_020367A8 - bx r3 - nop -_02039B90: .word 0x021D4150 -_02039B94: .word ov00_021E5C84 -_02039B98: .word sub_02036904 -_02039B9C: .word sub_020367A8 - thumb_func_end sub_02039B7C - - thumb_func_start sub_02039BA0 -sub_02039BA0: ; 0x02039BA0 - push {r3, lr} - bl sub_02034DB8 - cmp r0, #0 - beq _02039C04 - mov r1, #0x30 - mov r0, #3 - lsl r2, r1, #0xd - bl sub_0201A91C - mov r0, #1 - add r1, r0, #0 - lsl r2, r0, #9 - add r3, r0, #0 - bl sub_02035ED8 - cmp r0, #0 - beq _02039C04 - ldr r0, _02039C08 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x4e - ldrb r0, [r0] - bl sub_02033FC4 - add r3, r0, #0 - ldr r0, _02039C08 ; =0x021D4150 - mov r2, #0x16 - ldr r0, [r0] - mov r1, #0x30 - ldr r0, [r0, #0x28] - lsl r2, r2, #0xe - add r3, r3, #1 - bl ov00_021E5900 - ldr r0, _02039C0C ; =sub_020399DC - bl ov00_021E6CA4 - bl sub_02035FD8 - mov r0, #0 - bl ov00_021E70B8 - mov r0, #0 - bl sub_020378E4 - mov r1, #0xe1 - ldr r0, _02039C10 ; =sub_0203960C - lsl r1, r1, #4 - bl sub_020381C0 -_02039C04: - pop {r3, pc} - nop -_02039C08: .word 0x021D4150 -_02039C0C: .word sub_020399DC -_02039C10: .word sub_0203960C - thumb_func_end sub_02039BA0 - - thumb_func_start sub_02039C14 -sub_02039C14: ; 0x02039C14 - push {r3, lr} - ldr r0, _02039C54 ; =0x021D4150 - ldr r2, [r0] - ldr r1, [r2, #0x44] - sub r1, r1, #1 - str r1, [r2, #0x44] - ldr r0, [r0] - ldr r0, [r0, #0x44] - cmp r0, #0 - bgt _02039C32 - ldr r0, _02039C58 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02039C32: - mov r0, #1 - bl sub_0203786C - bl sub_02039D3C - cmp r0, #0 - beq _02039C50 - bl ov45_0222E8F4 - cmp r0, #0 - beq _02039C50 - ldr r0, _02039C5C ; =sub_02039C60 - mov r1, #0 - bl sub_020381C0 -_02039C50: - pop {r3, pc} - nop -_02039C54: .word 0x021D4150 -_02039C58: .word sub_02038E90 -_02039C5C: .word sub_02039C60 - thumb_func_end sub_02039C14 - - thumb_func_start sub_02039C60 -sub_02039C60: ; 0x02039C60 - push {r3, lr} - bl sub_02039D3C - cmp r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02039C60 - - thumb_func_start sub_02039C6C -sub_02039C6C: ; 0x02039C6C - push {r4, lr} - mov r4, #1 - cmp r0, #0xa - blt _02039C84 - cmp r0, #0x14 - bge _02039C84 - ldr r0, _02039CF4 ; =sub_02038EB4 - mov r1, #0 - bl sub_020381C0 - mov r4, #0 - b _02039CC8 -_02039C84: - cmp r0, #0 - bge _02039C94 - ldr r0, _02039CF8 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - mov r4, #0 - b _02039CC8 -_02039C94: - cmp r0, #0x17 - bne _02039CA4 - ldr r0, _02039CFC ; =sub_02039E7C - mov r1, #0 - bl sub_020381C0 - mov r4, #0 - b _02039CC8 -_02039CA4: - cmp r0, #0x18 - bne _02039CC8 - ldr r0, _02039D00 ; =0x021D4150 - mov r4, #0 - ldr r0, [r0] - add r0, #0x53 - ldrb r0, [r0] - cmp r0, #0 - beq _02039CC0 - ldr r0, _02039CF8 ; =sub_02038E90 - add r1, r4, #0 - bl sub_020381C0 - b _02039CC8 -_02039CC0: - ldr r0, _02039D04 ; =sub_02038EB0 - add r1, r4, #0 - bl sub_020381C0 -_02039CC8: - ldr r0, _02039D00 ; =0x021D4150 - ldr r0, [r0] - add r0, #0x53 - ldrb r0, [r0] - cmp r0, #0 - beq _02039CEE - bl sub_02037454 - ldr r1, _02039D00 ; =0x021D4150 - ldr r1, [r1] - add r1, #0x4b - ldrb r1, [r1] - cmp r1, r0 - beq _02039CEE - ldr r0, _02039CF8 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - mov r4, #0 -_02039CEE: - add r0, r4, #0 - pop {r4, pc} - nop -_02039CF4: .word sub_02038EB4 -_02039CF8: .word sub_02038E90 -_02039CFC: .word sub_02039E7C -_02039D00: .word 0x021D4150 -_02039D04: .word sub_02038EB0 - thumb_func_end sub_02039C6C - - thumb_func_start sub_02039D08 -sub_02039D08: ; 0x02039D08 - push {r4, lr} - mov r4, #1 - bl ov45_0222E6C8 - cmp r0, #4 - bhi _02039D34 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_02039D20: ; jump table - .short _02039D34 - _02039D20 - 2 ; case 0 - .short _02039D34 - _02039D20 - 2 ; case 1 - .short _02039D34 - _02039D20 - 2 ; case 2 - .short _02039D34 - _02039D20 - 2 ; case 3 - .short _02039D2A - _02039D20 - 2 ; case 4 -_02039D2A: - ldr r0, _02039D38 ; =sub_02039DC0 - mov r1, #0 - bl sub_020381C0 - mov r4, #0 -_02039D34: - add r0, r4, #0 - pop {r4, pc} - .balign 4, 0 -_02039D38: .word sub_02039DC0 - thumb_func_end sub_02039D08 - - thumb_func_start sub_02039D3C -sub_02039D3C: ; 0x02039D3C - push {r3, lr} - mov r0, #0 - bl ov00_021E5E54 - bl sub_02039C6C - cmp r0, #0 - beq _02039D50 - bl sub_02039D08 -_02039D50: - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02039D3C - - thumb_func_start sub_02039D54 -sub_02039D54: ; 0x02039D54 - push {r4, lr} - add r4, r0, #0 - mov r0, #0 - bl ov00_021E5E54 - cmp r0, #0x14 - blt _02039D66 - str r0, [r4] - b _02039D72 -_02039D66: - mov r1, #0 - str r1, [r4] - bl sub_02039C6C - cmp r0, #0 - beq _02039D76 -_02039D72: - bl sub_02039D08 -_02039D76: - pop {r4, pc} - thumb_func_end sub_02039D54 - - thumb_func_start sub_02039D78 -sub_02039D78: ; 0x02039D78 - push {r3, lr} - bl ov45_0222E91C - ldr r0, _02039D88 ; =sub_02039D8C - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} - .balign 4, 0 -_02039D88: .word sub_02039D8C - thumb_func_end sub_02039D78 - - thumb_func_start sub_02039D8C -sub_02039D8C: ; 0x02039D8C - push {r3, lr} - mov r0, #0 - bl ov00_021E5E54 - bl sub_02039D08 - bl ov45_0222E944 - cmp r0, #0 - beq _02039DB8 - mov r0, #1 - bl sub_0201A738 - bl sub_020343E4 - ldr r0, _02039DBC ; =sub_0203847C - mov r1, #5 - bl sub_020381C0 - mov r0, #0 - bl sub_0203786C -_02039DB8: - pop {r3, pc} - nop -_02039DBC: .word sub_0203847C - thumb_func_end sub_02039D8C - - thumb_func_start sub_02039DC0 -sub_02039DC0: ; 0x02039DC0 - bx lr - .balign 4, 0 - thumb_func_end sub_02039DC0 - - thumb_func_start sub_02039DC4 -sub_02039DC4: ; 0x02039DC4 - push {r3, lr} - bl sub_02039D3C - bl ov45_0222F254 - cmp r0, #1 - bne _02039DDE - bl ov45_0222F70C - ldr r0, _02039DE0 ; =sub_02039E30 - mov r1, #0 - bl sub_020381C0 -_02039DDE: - pop {r3, pc} - .balign 4, 0 -_02039DE0: .word sub_02039E30 - thumb_func_end sub_02039DC4 - - thumb_func_start sub_02039DE4 -sub_02039DE4: ; 0x02039DE4 - push {r3, lr} - bl ov45_0222F254 - cmp r0, #1 - bne _02039DFC - bl ov45_0222F70C - ldr r0, _02039E24 ; =sub_02039E30 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02039DFC: - add r0, sp, #0 - bl sub_02039D54 - ldr r0, [sp] - cmp r0, #0 - beq _02039E22 - cmp r0, #0x14 - bne _02039E16 - ldr r0, _02039E28 ; =sub_02039DC4 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02039E16: - bl ov45_0222F70C - ldr r0, _02039E2C ; =sub_02039C60 - mov r1, #0 - bl sub_020381C0 -_02039E22: - pop {r3, pc} - .balign 4, 0 -_02039E24: .word sub_02039E30 -_02039E28: .word sub_02039DC4 -_02039E2C: .word sub_02039C60 - thumb_func_end sub_02039DE4 - - thumb_func_start sub_02039E30 -sub_02039E30: ; 0x02039E30 - push {r3, lr} - mov r0, #1 - bl ov00_021E5E54 - cmp r0, #0 - bge _02039E46 - ldr r0, _02039E74 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 - pop {r3, pc} -_02039E46: - bl sub_02039D08 - cmp r0, #0 - beq _02039E72 - mov r0, #0 - bl ov00_021E6BE4 - cmp r0, #0 - beq _02039E72 - bl ov00_021E6C68 - cmp r0, #0 - beq _02039E72 - bl sub_0203622C - mov r0, #0 - bl sub_020378E4 - ldr r0, _02039E78 ; =sub_02039C60 - mov r1, #0 - bl sub_020381C0 -_02039E72: - pop {r3, pc} - .balign 4, 0 -_02039E74: .word sub_02038E90 -_02039E78: .word sub_02039C60 - thumb_func_end sub_02039E30 - - thumb_func_start sub_02039E7C -sub_02039E7C: ; 0x02039E7C - push {r3, lr} - mov r0, #0 - bl ov00_021E5E54 - cmp r0, #0 - bge _02039E90 - ldr r0, _02039E98 ; =sub_02038E90 - mov r1, #0 - bl sub_020381C0 -_02039E90: - bl sub_02039D08 - pop {r3, pc} - nop -_02039E98: .word sub_02038E90 - thumb_func_end sub_02039E7C - - thumb_func_start sub_02039E9C -sub_02039E9C: ; 0x02039E9C - ldr r0, _02039EA8 ; =0x021D4150 - mov r1, #0x22 - ldr r0, [r0] - add r0, #0x4e - strb r1, [r0] - bx lr - .balign 4, 0 -_02039EA8: .word 0x021D4150 - thumb_func_end sub_02039E9C - - thumb_func_start sub_02039EAC -sub_02039EAC: ; 0x02039EAC - mov r1, #0 - str r1, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_02039EAC - - thumb_func_start sub_02039EB4 -sub_02039EB4: ; 0x02039EB4 - push {r4, r5, r6, lr} - add r4, r2, #0 - add r6, r1, #0 - ldr r1, [r4] - add r5, r0, #0 - cmp r1, #6 - bhi _02039F64 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_02039ECE: ; jump table - .short _02039EDC - _02039ECE - 2 ; case 0 - .short _02039EE8 - _02039ECE - 2 ; case 1 - .short _02039F00 - _02039ECE - 2 ; case 2 - .short _02039F28 - _02039ECE - 2 ; case 3 - .short _02039F38 - _02039ECE - 2 ; case 4 - .short _02039F5A - _02039ECE - 2 ; case 5 - .short _02039F60 - _02039ECE - 2 ; case 6 -_02039EDC: - mov r0, #0x6f - bl sub_02037AC0 - mov r0, #1 - str r0, [r4] - b _02039F64 -_02039EE8: - mov r0, #0x6f - bl sub_02037B38 - cmp r0, #0 - beq _02039F64 - add r0, r5, #0 - add r1, r6, #0 - bl sub_02027550 - mov r0, #2 - str r0, [r4] - b _02039F64 -_02039F00: - bl sub_02027564 - add r5, r0, #0 - cmp r5, #2 - bne _02039F0E - bl GF_AssertFail -_02039F0E: - cmp r5, #1 - bne _02039F1E - mov r0, #3 - str r0, [r4] - mov r0, #0x70 - bl sub_02037AC0 - b _02039F64 -_02039F1E: - cmp r5, #3 - bne _02039F64 - mov r0, #7 - str r0, [r4] - b _02039F64 -_02039F28: - mov r0, #0x70 - bl sub_02037B38 - cmp r0, #0 - beq _02039F64 - mov r0, #4 - str r0, [r4] - b _02039F64 -_02039F38: - bl sub_02027564 - add r5, r0, #0 - cmp r5, #1 - bne _02039F46 - bl GF_AssertFail -_02039F46: - cmp r5, #2 - bne _02039F50 - mov r0, #5 - str r0, [r4] - b _02039F64 -_02039F50: - cmp r5, #3 - bne _02039F64 - mov r0, #7 - str r0, [r4] - b _02039F64 -_02039F5A: - mov r0, #6 - str r0, [r4] - b _02039F64 -_02039F60: - mov r0, #1 - pop {r4, r5, r6, pc} -_02039F64: - mov r0, #0 - pop {r4, r5, r6, pc} - thumb_func_end sub_02039EB4 - - thumb_func_start sub_02039F68 -sub_02039F68: ; 0x02039F68 - push {r3, r4, r5, r6, r7, lr} - str r0, [sp] - bl sub_02037454 - add r7, r0, #0 - mov r0, #0 - bl sub_02034818 - cmp r0, #0 - beq _02039FB6 - mov r5, #0 - cmp r7, #0 - ble _02039FB6 -_02039F82: - bl sub_0203769C - cmp r5, r0 - beq _02039FB0 - add r0, r5, #0 - bl sub_020348A8 - add r4, r0, #0 - add r0, r5, #0 - bl sub_020348CC - add r6, r0, #0 - add r0, r5, #0 - bl sub_02034818 - bl sub_02029088 - add r3, r0, #0 - ldr r0, [sp] - add r1, r4, #0 - add r2, r6, #0 - bl sub_02039FB8 -_02039FB0: - add r5, r5, #1 - cmp r5, r7 - blt _02039F82 -_02039FB6: - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_02039F68 - - thumb_func_start sub_02039FB8 -sub_02039FB8: ; 0x02039FB8 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - bl sub_0202CA94 - cmp r0, #0 - bne _02039FD4 - add r0, r5, #0 - add r1, r4, #0 - add r2, r6, #0 - mov r3, #1 - bl sub_0202CAE4 -_02039FD4: - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_02039FB8 - - thumb_func_start sub_02039FD8 -sub_02039FD8: ; 0x02039FD8 - push {r3, r4, r5, lr} - mov r1, #0x72 - lsl r1, r1, #4 - bl AllocFromHeap - add r4, r0, #0 - add r0, #0x1f - mov r1, #0x1f - bic r0, r1 - bl sub_0209FAE4 - add r5, r0, #0 - add r0, r4, #0 - bl FreeToHeap - add r0, r5, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_02039FD8 - - thumb_func_start sub_02039FFC -sub_02039FFC: ; 0x02039FFC - push {r4, lr} - add r4, r0, #0 - bl LoadDwcOverlay - bl LoadOVY38 - add r0, r4, #0 - bl sub_02039FD8 - add r4, r0, #0 - bl UnloadDwcOverlay - bl UnloadOVY38 - add r0, r4, #0 - pop {r4, pc} - thumb_func_end sub_02039FFC - - thumb_func_start sub_0203A01C -sub_0203A01C: ; 0x0203A01C - push {r4, lr} - bl sub_0202C08C - add r4, r0, #0 - bl sub_020A00BC - cmp r0, #0 - bne _0203A03A - ldr r1, _0203A03C ; =0x4144414A - add r0, r4, #0 - bl sub_020A00B0 - add r0, r4, #0 - bl sub_020A0214 -_0203A03A: - pop {r4, pc} - .balign 4, 0 -_0203A03C: .word 0x4144414A - thumb_func_end sub_0203A01C - - thumb_func_start sub_0203A040 -sub_0203A040: ; 0x0203A040 - push {r3, r4, lr} - sub sp, #0xc - bl sub_0202C08C - add r4, r0, #0 - add r1, sp, #0 - bl sub_020A037C - add r0, r4, #0 - add r1, sp, #0 - bl sub_020A028C - add sp, #0xc - pop {r3, r4, pc} - thumb_func_end sub_0203A040 - - thumb_func_start sub_0203A05C -sub_0203A05C: ; 0x0203A05C - push {r4, lr} - bl sub_0202C6F4 - bl sub_0202C08C - add r4, r0, #0 - bl sub_020A0100 - cmp r0, #0 - beq _0203A07E - add r0, r4, #0 - bl sub_020A0130 - cmp r0, #0 - beq _0203A07E - mov r0, #1 - pop {r4, pc} -_0203A07E: - mov r0, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203A05C - - thumb_func_start sub_0203A084 -sub_0203A084: ; 0x0203A084 - push {r3, r4, r5, r6, r7, lr} - sub sp, #8 - add r4, r0, #0 - add r5, r1, #0 - str r2, [sp] - bl sub_0202C6F4 - bl sub_0202C08C - add r6, r0, #0 - add r0, r4, #0 - bl sub_0202C6F4 - mov r1, #0 - bl sub_0202C23C - add r4, r0, #0 - mov r1, #0 - ldr r0, [sp] - mvn r1, r1 - str r1, [r0] - add r0, r5, #0 - bl sub_020A008C - cmp r0, #0 - bne _0203A0BE - add sp, #8 - mov r0, #3 - pop {r3, r4, r5, r6, r7, pc} -_0203A0BE: - mov r7, #0 -_0203A0C0: - add r0, r5, #0 - add r1, r4, #0 - bl sub_020A041C - cmp r0, #0 - beq _0203A0D6 - ldr r0, [sp] - add sp, #8 - str r7, [r0] - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_0203A0D6: - add r0, r6, #0 - add r1, r5, #0 - bl sub_020A028C - cmp r0, #0 - ble _0203A104 - add r0, r6, #0 - add r1, r5, #0 - bl sub_020A028C - str r0, [sp, #4] - add r0, r6, #0 - add r1, r4, #0 - bl sub_020A028C - ldr r1, [sp, #4] - cmp r1, r0 - bne _0203A104 - ldr r0, [sp] - add sp, #8 - str r7, [r0] - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0203A104: - ldr r0, [sp] - ldr r0, [r0] - cmp r0, #0 - bge _0203A11A - add r0, r4, #0 - bl sub_020A008C - cmp r0, #0 - bne _0203A11A - ldr r0, [sp] - str r7, [r0] -_0203A11A: - add r7, r7, #1 - add r4, #0xc - cmp r7, #0x20 - blt _0203A0C0 - mov r0, #2 - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0203A084 - - thumb_func_start sub_0203A128 -sub_0203A128: ; 0x0203A128 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x18 - add r4, r0, #0 - str r1, [sp] - str r2, [sp, #4] - add r6, r3, #0 - bl sub_0202C6F4 - bl sub_0202C08C - add r7, r0, #0 - add r0, r4, #0 - bl sub_0202C6F4 - mov r1, #0 - bl sub_0202C23C - add r5, r0, #0 - ldr r1, [sp] - ldr r2, [sp, #4] - add r0, r7, #0 - bl sub_0209FD0C - cmp r0, #0 - bne _0203A160 - add sp, #0x18 - mov r0, #3 - pop {r3, r4, r5, r6, r7, pc} -_0203A160: - ldr r1, [sp] - ldr r2, [sp, #4] - add r0, sp, #0xc - bl sub_020A0340 - add r0, r7, #0 - add r1, sp, #0xc - bl sub_020A028C - cmp r0, #0 - bgt _0203A17C - add sp, #0x18 - mov r0, #3 - pop {r3, r4, r5, r6, r7, pc} -_0203A17C: - mov r0, #0 - mvn r0, r0 - str r0, [r6] - mov r4, #0 -_0203A184: - add r0, r7, #0 - add r1, sp, #0xc - bl sub_020A028C - str r0, [sp, #8] - add r0, r7, #0 - add r1, r5, #0 - bl sub_020A028C - ldr r1, [sp, #8] - cmp r1, r0 - bne _0203A1A4 - add sp, #0x18 - str r4, [r6] - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_0203A1A4: - ldr r0, [r6] - cmp r0, #0 - bge _0203A1B6 - add r0, r5, #0 - bl sub_020A008C - cmp r0, #0 - bne _0203A1B6 - str r4, [r6] -_0203A1B6: - add r4, r4, #1 - add r5, #0xc - cmp r4, #0x20 - blt _0203A184 - mov r0, #2 - add sp, #0x18 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0203A128 - - thumb_func_start sub_0203A1C4 -sub_0203A1C4: ; 0x0203A1C4 - push {r4, r5, r6, r7, lr} - sub sp, #0x14 - add r6, r1, #0 - mov r1, #0 - add r5, r0, #0 - str r2, [sp, #4] - str r1, [sp, #0xc] - bl sub_0202C6F4 - mov r1, #0 - bl sub_0202C23C - str r0, [sp, #8] - mov r4, #0 - bl sub_02037454 - cmp r0, #0 - ble _0203A278 -_0203A1E8: - bl sub_0203769C - cmp r4, r0 - beq _0203A26C - add r0, r4, #0 - bl sub_0203484C - add r7, r0, #0 - beq _0203A26C - add r0, r5, #0 - add r1, r7, #0 - add r2, sp, #0x10 - bl sub_0203A084 - str r0, [r6] - cmp r0, #3 - bne _0203A20E - bl GF_AssertFail -_0203A20E: - ldr r0, [r6] - cmp r0, #0 - bne _0203A22C - mov r0, #2 - str r0, [sp] - ldr r2, [sp, #0x10] - ldr r3, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203A280 - add r0, r5, #0 - bl sub_02034A20 - b _0203A26C -_0203A22C: - cmp r0, #1 - bne _0203A264 - bl sub_02039998 - cmp r0, #0 - bne _0203A26C - mov r0, #1 - str r0, [sp] - ldr r2, [sp, #0x10] - ldr r3, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203A280 - ldr r2, [sp, #0x10] - mov r1, #0xc - add r3, r2, #0 - mul r3, r1 - ldr r1, [sp, #8] - add r0, r7, #0 - add r1, r1, r3 - mov r2, #0xc - bl MIi_CpuCopy8 - add r0, r5, #0 - bl sub_02034A20 - b _0203A26C -_0203A264: - cmp r0, #2 - bne _0203A26C - mov r0, #1 - str r0, [sp, #0xc] -_0203A26C: - add r6, r6, #4 - add r4, r4, #1 - bl sub_02037454 - cmp r4, r0 - blt _0203A1E8 -_0203A278: - ldr r0, [sp, #0xc] - add sp, #0x14 - pop {r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203A1C4 - - thumb_func_start sub_0203A280 -sub_0203A280: ; 0x0203A280 - push {r4, r5, r6, r7, lr} - sub sp, #0x14 - add r5, r2, #0 - str r0, [sp] - add r7, r1, #0 - str r3, [sp, #4] - bl sub_0202C6F4 - add r1, r5, #0 - add r4, r0, #0 - bl sub_0202C23C - str r0, [sp, #8] - add r0, r7, #0 - bl sub_02034818 - add r6, r0, #0 - ldr r0, [sp, #0x28] - cmp r0, #2 - beq _0203A2B6 - add r0, r7, #0 - bl sub_0203484C - ldr r1, [sp, #8] - mov r2, #0xc - bl MIi_CpuCopy8 -_0203A2B6: - ldr r0, [sp, #0x28] - cmp r0, #0 - bne _0203A2FC - ldr r1, [sp, #4] - add r0, r6, #0 - bl sub_02028F68 - str r0, [sp, #0xc] - ldr r2, [sp, #0xc] - add r0, r4, #0 - add r1, r5, #0 - bl sub_0202C270 - ldr r0, [sp, #0xc] - bl String_dtor - add r0, r6, #0 - bl PlayerProfile_GetTrainerGender - add r3, r0, #0 - add r0, r4, #0 - add r1, r5, #0 - mov r2, #8 - bl sub_0202C190 - add r0, r6, #0 - bl PlayerProfile_GetTrainerID - add r3, r0, #0 - add r0, r4, #0 - add r1, r5, #0 - mov r2, #0 - bl sub_0202C190 - b _0203A334 -_0203A2FC: - sub r0, r0, #1 - cmp r0, #1 - bhi _0203A334 - add r0, r4, #0 - add r1, r5, #0 - mov r2, #8 - bl sub_0202C090 - cmp r0, #2 - bne _0203A334 - add r0, r6, #0 - bl PlayerProfile_GetTrainerGender - add r3, r0, #0 - add r0, r4, #0 - add r1, r5, #0 - mov r2, #8 - bl sub_0202C190 - add r0, r6, #0 - bl PlayerProfile_GetTrainerID - add r3, r0, #0 - add r0, r4, #0 - add r1, r5, #0 - mov r2, #0 - bl sub_0202C190 -_0203A334: - ldr r1, [sp, #4] - mov r0, #0x78 - bl String_ctor - str r0, [sp, #0x10] - add r0, r7, #0 - bl sub_02034884 - add r1, r0, #0 - ldr r0, [sp, #0x10] - bl CopyU16ArrayToString - ldr r2, [sp, #0x10] - add r0, r4, #0 - add r1, r5, #0 - bl sub_0202C2B4 - ldr r0, [sp, #0x10] - bl String_dtor - add r0, r6, #0 - bl sub_0202903C - add r3, r0, #0 - add r0, r4, #0 - add r1, r5, #0 - mov r2, #7 - bl sub_0202C190 - ldr r0, [sp] - bl sub_02034A20 - add sp, #0x14 - pop {r4, r5, r6, r7, pc} - thumb_func_end sub_0203A280 - - thumb_func_start sub_0203A378 -sub_0203A378: ; 0x0203A378 - push {r4, r5, r6, lr} - add r4, r0, #0 - add r0, r1, #0 - bl sub_0203484C - add r6, r0, #0 - add r0, r4, #0 - bl sub_0202C6F4 - add r5, r0, #0 - mov r4, #0 -_0203A38E: - add r0, r5, #0 - add r1, r4, #0 - bl sub_0202C23C - add r1, r0, #0 - add r0, r6, #0 - bl sub_020A041C - cmp r0, #0 - beq _0203A3A6 - add r0, r4, #0 - pop {r4, r5, r6, pc} -_0203A3A6: - add r4, r4, #1 - cmp r4, #0x20 - blt _0203A38E - mov r0, #0x20 - pop {r4, r5, r6, pc} - thumb_func_end sub_0203A378 - - thumb_func_start sub_0203A3B0 -sub_0203A3B0: ; 0x0203A3B0 - push {r4, r5, r6, lr} - add r4, r1, #0 - add r5, r2, #0 - add r6, r3, #0 - ldr r0, [sp, #0x18] - ldr r1, [sp, #0x10] - ldr r2, [sp, #0x1c] - add r3, r4, #0 - bl sub_0203A4D4 - ldr r0, [sp, #0x18] - ldr r1, [sp, #0x10] - add r2, r4, #0 - bl sub_0203A59C - add r0, r4, #0 - mov r1, #0x24 - bl AllocFromHeapAtEnd - add r4, r0, #0 - ldr r0, _0203A428 ; =sub_0203A42C - add r1, r4, #0 - mov r2, #5 - bl sub_0200E374 - str r0, [r4, #0x18] - ldr r2, [sp, #0x1c] - strh r5, [r4, #0xc] - asr r1, r2, #4 - lsr r1, r1, #0x1b - add r1, r2, r1 - asr r2, r1, #5 - add r1, r4, #0 - strh r6, [r4, #0xe] - mov r0, #0 - str r0, [r4] - add r1, #0x20 - strb r2, [r1] - add r1, r4, #0 - ldr r2, [sp, #0x18] - add r1, #0x21 - strb r2, [r1] - add r1, r4, #0 - add r1, #0x22 - strb r0, [r1] - mov r1, #3 - str r1, [r4, #4] - ldr r1, [sp, #0x14] - str r1, [r4, #0x14] - ldr r1, [sp, #0x10] - str r0, [r4, #8] - strb r1, [r4, #0x10] - strb r0, [r4, #0x12] - strb r0, [r4, #0x11] - mov r0, #7 - lsl r0, r0, #0x18 - str r0, [r4, #0x1c] - add r0, r4, #0 - pop {r4, r5, r6, pc} - nop -_0203A428: .word sub_0203A42C - thumb_func_end sub_0203A3B0 - - thumb_func_start sub_0203A42C -sub_0203A42C: ; 0x0203A42C - ldr r3, _0203A434 ; =sub_0203A700 - add r0, r1, #0 - bx r3 - nop -_0203A434: .word sub_0203A700 - thumb_func_end sub_0203A42C - - thumb_func_start sub_0203A438 -sub_0203A438: ; 0x0203A438 - cmp r1, #4 - bge _0203A442 - str r1, [r0, #4] - mov r1, #0 - str r1, [r0, #8] -_0203A442: - bx lr - thumb_func_end sub_0203A438 - - thumb_func_start sub_0203A444 -sub_0203A444: ; 0x0203A444 - push {r4, lr} - add r4, r0, #0 - ldr r0, [r4, #0x18] - bl sub_0200E390 - mov r0, #7 - ldr r2, _0203A470 ; =0x40000200 - lsl r0, r0, #0x18 - str r2, [r0] - mov r1, #0 - strh r1, [r0, #4] - ldrb r0, [r4, #0x12] - cmp r0, #0 - beq _0203A466 - ldr r0, _0203A474 ; =0x07000400 - str r2, [r0] - strh r1, [r0, #4] -_0203A466: - add r0, r4, #0 - bl FreeToHeap - pop {r4, pc} - nop -_0203A470: .word 0x40000200 -_0203A474: .word 0x07000400 - thumb_func_end sub_0203A444 - - thumb_func_start sub_0203A478 -sub_0203A478: ; 0x0203A478 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - mov r2, #7 - ldrb r1, [r5, #0x10] - mov r0, #2 - lsl r2, r2, #6 - add r3, r6, #0 - bl sub_0203A4D4 - ldrb r1, [r5, #0x10] - mov r0, #2 - add r2, r6, #0 - bl sub_0203A59C - cmp r4, #0 - beq _0203A4A0 - mov r0, #1 - b _0203A4A2 -_0203A4A0: - mov r0, #2 -_0203A4A2: - strb r0, [r5, #0x11] - mov r0, #1 - strb r0, [r5, #0x12] - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203A478 - - thumb_func_start sub_0203A4AC -sub_0203A4AC: ; 0x0203A4AC - push {r3, lr} - mov r1, #0x96 - lsl r1, r1, #2 - bl AllocFromHeapAtEnd - str r0, [sp] - ldr r0, _0203A4D0 ; =0x0210F930 - add r1, sp, #0 - bl sub_0201A3F8 - mov r1, #0x96 - ldr r0, [sp] - lsl r1, r1, #2 - bl DC_FlushRange - ldr r0, [sp] - pop {r3, pc} - nop -_0203A4D0: .word 0x0210F930 - thumb_func_end sub_0203A4AC - - thumb_func_start sub_0203A4D4 -sub_0203A4D4: ; 0x0203A4D4 - push {r3, r4, r5, lr} - sub sp, #8 - mov r1, #0x96 - add r5, r0, #0 - add r0, r3, #0 - lsl r1, r1, #2 - add r4, r2, #0 - bl AllocFromHeapAtEnd - str r0, [sp, #4] - cmp r0, #0 - beq _0203A52A - ldr r0, _0203A530 ; =0x0210F930 - add r1, sp, #4 - bl sub_0201A3F8 - mov r1, #0x96 - ldr r0, [sp, #4] - lsl r1, r1, #2 - bl DC_FlushRange - ldr r0, [sp, #4] - add r1, sp, #0 - bl NNS_G2dGetUnpackedPaletteData - cmp r5, #1 - bne _0203A518 - ldr r0, [sp] - add r1, r4, #0 - ldr r0, [r0, #0xc] - mov r2, #0x20 - bl GX_LoadOBJPltt - b _0203A524 -_0203A518: - ldr r0, [sp] - add r1, r4, #0 - ldr r0, [r0, #0xc] - mov r2, #0x20 - bl GXS_LoadOBJPltt -_0203A524: - ldr r0, [sp, #4] - bl FreeToHeap -_0203A52A: - add sp, #8 - pop {r3, r4, r5, pc} - nop -_0203A530: .word 0x0210F930 - thumb_func_end sub_0203A4D4 - - thumb_func_start sub_0203A534 -sub_0203A534: ; 0x0203A534 - push {r0, r1, r2, r3} - push {r3, lr} - cmp r0, #0 - ldr r0, _0203A58C ; =0x00300010 - beq _0203A550 - cmp r1, r0 - bne _0203A546 - bl GF_AssertFail -_0203A546: - ldr r0, _0203A590 ; =0x0210F940 - add r1, sp, #0x14 - bl sub_0201A3F8 - b _0203A578 -_0203A550: - cmp r1, r0 - add r1, sp, #0x14 - beq _0203A568 - ldr r0, _0203A594 ; =0x0210F954 - bl sub_0201A3F8 - mov r1, #0x96 - ldr r0, [sp, #0x14] - lsl r1, r1, #2 - bl DC_FlushRange - b _0203A578 -_0203A568: - ldr r0, _0203A598 ; =0x0210F964 - bl sub_0201A3F8 - mov r1, #0x13 - ldr r0, [sp, #0x14] - lsl r1, r1, #6 - bl DC_FlushRange -_0203A578: - ldr r0, [sp, #0x14] - add r1, sp, #0 - bl NNS_G2dGetUnpackedBGCharacterData - ldr r0, [sp] - pop {r3} - pop {r3} - add sp, #0x10 - bx r3 - nop -_0203A58C: .word 0x00300010 -_0203A590: .word 0x0210F940 -_0203A594: .word 0x0210F954 -_0203A598: .word 0x0210F964 - thumb_func_end sub_0203A534 - - thumb_func_start sub_0203A59C -sub_0203A59C: ; 0x0203A59C - push {r3, r4, r5, r6, r7, lr} - sub sp, #8 - add r7, r0, #0 - add r5, r2, #0 - str r1, [sp] - cmp r7, #1 - bne _0203A5BC - mov r0, #1 - lsl r0, r0, #0x1a - ldr r1, [r0] - ldr r0, _0203A6E8 ; =0x00300010 - add r4, r1, #0 - and r4, r0 - bl sub_020CEBEC - b _0203A5CA -_0203A5BC: - ldr r0, _0203A6EC ; =0x04001000 - ldr r1, [r0] - ldr r0, _0203A6E8 ; =0x00300010 - add r4, r1, #0 - and r4, r0 - bl sub_020CEC1C -_0203A5CA: - add r6, r0, #0 - ldr r0, _0203A6E8 ; =0x00300010 - cmp r4, r0 - bne _0203A5E0 - mov r1, #0x13 - add r0, r5, #0 - lsl r1, r1, #6 - bl AllocFromHeapAtEnd - str r0, [sp, #4] - b _0203A5EC -_0203A5E0: - mov r1, #0x96 - add r0, r5, #0 - lsl r1, r1, #2 - bl AllocFromHeapAtEnd - str r0, [sp, #4] -_0203A5EC: - ldr r0, [sp, #4] - cmp r0, #0 - beq _0203A6E2 - ldr r0, [sp] - ldr r3, [sp, #4] - add r1, r4, #0 - add r2, r5, #0 - bl sub_0203A534 - add r5, r0, #0 - ldr r0, _0203A6F0 ; =0x00100010 - cmp r4, r0 - bgt _0203A60E - bge _0203A634 - cmp r4, #0x10 - beq _0203A620 - b _0203A66E -_0203A60E: - ldr r0, _0203A6F4 ; =0x00200010 - cmp r4, r0 - bgt _0203A618 - beq _0203A64E - b _0203A66E -_0203A618: - ldr r0, _0203A6E8 ; =0x00300010 - cmp r4, r0 - beq _0203A668 - b _0203A66E -_0203A620: - cmp r6, #0x40 - beq _0203A628 - cmp r6, #0x20 - bne _0203A62E -_0203A628: - mov r6, #0x3e - lsl r6, r6, #8 - b _0203A672 -_0203A62E: - mov r6, #0x7e - lsl r6, r6, #8 - b _0203A672 -_0203A634: - cmp r6, #0x40 - beq _0203A642 - cmp r6, #0x20 - beq _0203A642 - lsr r0, r0, #0xc - cmp r6, r0 - bne _0203A648 -_0203A642: - mov r6, #0x3e - lsl r6, r6, #8 - b _0203A672 -_0203A648: - mov r6, #0xfe - lsl r6, r6, #8 - b _0203A672 -_0203A64E: - cmp r6, #0x30 - beq _0203A656 - cmp r6, #0x50 - bne _0203A65A -_0203A656: - ldr r6, _0203A6F8 ; =0x00013E00 - b _0203A672 -_0203A65A: - cmp r6, #0x10 - bne _0203A664 - mov r6, #0xfe - lsl r6, r6, #8 - b _0203A672 -_0203A664: - ldr r6, _0203A6FC ; =0x0001FE00 - b _0203A672 -_0203A668: - mov r6, #0xff - lsl r6, r6, #0xa - b _0203A672 -_0203A66E: - mov r6, #0xfe - lsl r6, r6, #8 -_0203A672: - cmp r7, #1 - ldr r0, _0203A6E8 ; =0x00300010 - bne _0203A6AA - cmp r4, r0 - ldr r0, [r5, #0x14] - beq _0203A694 - mov r1, #2 - lsl r1, r1, #8 - bl DC_FlushRange - mov r2, #2 - ldr r0, [r5, #0x14] - add r1, r6, #0 - lsl r2, r2, #8 - bl sub_020CFE74 - b _0203A6DC -_0203A694: - mov r1, #1 - lsl r1, r1, #0xa - bl DC_FlushRange - mov r2, #1 - ldr r0, [r5, #0x14] - add r1, r6, #0 - lsl r2, r2, #0xa - bl sub_020CFE74 - b _0203A6DC -_0203A6AA: - cmp r4, r0 - ldr r0, [r5, #0x14] - beq _0203A6C6 - mov r1, #2 - lsl r1, r1, #8 - bl DC_FlushRange - mov r2, #2 - ldr r0, [r5, #0x14] - add r1, r6, #0 - lsl r2, r2, #8 - bl sub_020CFECC - b _0203A6DC -_0203A6C6: - mov r1, #1 - lsl r1, r1, #0xa - bl DC_FlushRange - mov r1, #0xf - mov r2, #1 - ldr r0, [r5, #0x14] - lsl r1, r1, #0xa - lsl r2, r2, #0xa - bl sub_020CFECC -_0203A6DC: - ldr r0, [sp, #4] - bl FreeToHeap -_0203A6E2: - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203A6E8: .word 0x00300010 -_0203A6EC: .word 0x04001000 -_0203A6F0: .word 0x00100010 -_0203A6F4: .word 0x00200010 -_0203A6F8: .word 0x00013E00 -_0203A6FC: .word 0x0001FE00 - thumb_func_end sub_0203A59C - - thumb_func_start sub_0203A700 -sub_0203A700: ; 0x0203A700 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - ldrb r0, [r5, #0x11] - cmp r0, #1 - beq _0203A710 - cmp r0, #2 - beq _0203A726 - b _0203A73C -_0203A710: - ldr r0, _0203A850 ; =0x04000304 - ldrh r1, [r0] - lsr r0, r0, #0xb - and r0, r1 - asr r0, r0, #0xf - cmp r0, #1 - bne _0203A722 - mov r7, #1 - b _0203A742 -_0203A722: - mov r7, #2 - b _0203A742 -_0203A726: - ldr r0, _0203A850 ; =0x04000304 - ldrh r1, [r0] - lsr r0, r0, #0xb - and r0, r1 - asr r0, r0, #0xf - cmp r0, #1 - bne _0203A738 - mov r7, #2 - b _0203A742 -_0203A738: - mov r7, #1 - b _0203A742 -_0203A73C: - add r0, r5, #0 - add r0, #0x21 - ldrb r7, [r0] -_0203A742: - ldr r4, [r5, #4] - cmp r7, #1 - bne _0203A75A - mov r0, #1 - lsl r0, r0, #0x1a - ldr r1, [r0] - ldr r0, _0203A854 ; =0x00300010 - add r6, r1, #0 - and r6, r0 - bl sub_020CEBEC - b _0203A768 -_0203A75A: - ldr r0, _0203A858 ; =0x04001000 - ldr r1, [r0] - ldr r0, _0203A854 ; =0x00300010 - add r6, r1, #0 - and r6, r0 - bl sub_020CEC1C -_0203A768: - ldr r1, _0203A85C ; =0x00100010 - cmp r6, r1 - bgt _0203A776 - bge _0203A7A4 - cmp r6, #0x10 - beq _0203A788 - b _0203A7F4 -_0203A776: - ldr r1, _0203A860 ; =0x00200010 - cmp r6, r1 - bgt _0203A780 - beq _0203A7BC - b _0203A7F4 -_0203A780: - ldr r1, _0203A854 ; =0x00300010 - cmp r6, r1 - beq _0203A7E0 - b _0203A7F4 -_0203A788: - cmp r0, #0x40 - beq _0203A790 - cmp r0, #0x20 - bne _0203A79A -_0203A790: - mov r0, #0x1f - lsl r1, r4, #2 - lsl r0, r0, #4 - add r3, r1, r0 - b _0203A7FC -_0203A79A: - mov r0, #0x3f - lsl r1, r4, #2 - lsl r0, r0, #4 - add r3, r1, r0 - b _0203A7FC -_0203A7A4: - cmp r0, #0x40 - beq _0203A7B2 - cmp r0, #0x20 - beq _0203A7B2 - lsr r1, r1, #0xc - cmp r0, r1 - bne _0203A7F4 -_0203A7B2: - mov r0, #0x7e - lsl r1, r4, #1 - lsl r0, r0, #2 - add r3, r1, r0 - b _0203A7FC -_0203A7BC: - cmp r0, #0x30 - beq _0203A7C4 - cmp r0, #0x50 - bne _0203A7CC -_0203A7C4: - mov r0, #0x9f - lsl r0, r0, #2 - add r3, r4, r0 - b _0203A7FC -_0203A7CC: - cmp r0, #0x10 - bne _0203A7D8 - mov r0, #0x7f - lsl r0, r0, #2 - add r3, r4, r0 - b _0203A7FC -_0203A7D8: - mov r0, #0xff - lsl r0, r0, #2 - add r3, r4, r0 - b _0203A7FC -_0203A7E0: - cmp r0, #3 - bne _0203A7EC - mov r0, #0xff - lsl r0, r0, #2 - add r3, r4, r0 - b _0203A7FC -_0203A7EC: - mov r0, #0x7f - lsl r0, r0, #2 - add r3, r4, r0 - b _0203A7FC -_0203A7F4: - mov r0, #0xfe - lsl r1, r4, #1 - lsl r0, r0, #2 - add r3, r1, r0 -_0203A7FC: - cmp r7, #1 - bne _0203A806 - mov r4, #7 - lsl r4, r4, #0x18 - b _0203A808 -_0203A806: - ldr r4, _0203A864 ; =0x07000400 -_0203A808: - add r0, r5, #0 - add r0, #0x20 - ldrb r2, [r0] - add r0, r5, #0 - add r0, #0x22 - ldrb r1, [r0] - ldrh r6, [r5, #0xe] - ldrh r0, [r5, #0xc] - lsl r1, r1, #0xa - lsl r6, r6, #0x18 - lsr r6, r6, #0x18 - orr r6, r1 - mov r1, #1 - lsl r0, r0, #0x17 - lsl r1, r1, #0x1e - lsr r0, r0, #7 - orr r1, r6 - orr r0, r1 - str r0, [r4] - lsl r0, r2, #0xc - orr r0, r3 - strh r0, [r4, #4] - ldr r0, [r5, #0x1c] - cmp r4, r0 - beq _0203A84E - add r1, r5, #0 - add r1, #0x22 - ldrb r1, [r1] - lsl r2, r1, #0xa - ldr r1, _0203A868 ; =0x40000200 - orr r1, r2 - str r1, [r0] - mov r1, #0 - strh r1, [r0, #4] - str r4, [r5, #0x1c] -_0203A84E: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203A850: .word 0x04000304 -_0203A854: .word 0x00300010 -_0203A858: .word 0x04001000 -_0203A85C: .word 0x00100010 -_0203A860: .word 0x00200010 -_0203A864: .word 0x07000400 -_0203A868: .word 0x40000200 - thumb_func_end sub_0203A700 - - thumb_func_start sub_0203A86C -sub_0203A86C: ; 0x0203A86C - push {r3, lr} - ldr r0, _0203A87C ; =0x021D4154 - ldr r0, [r0] - cmp r0, #0 - beq _0203A87A - bl sub_0203A700 -_0203A87A: - pop {r3, pc} - .balign 4, 0 -_0203A87C: .word 0x021D4154 - thumb_func_end sub_0203A86C - - thumb_func_start sub_0203A880 -sub_0203A880: ; 0x0203A880 - push {r3, r4, lr} - sub sp, #4 - mov r4, #0 - bl sub_02039998 - cmp r0, #0 - beq _0203A890 - mov r4, #1 -_0203A890: - mov r0, #7 - lsl r0, r0, #6 - str r0, [sp] - mov r0, #0xf0 - mov r1, #0 - add r2, r4, #0 - mov r3, #1 - bl sub_0203A8CC - add sp, #4 - pop {r3, r4, pc} - .balign 4, 0 - thumb_func_end sub_0203A880 - - thumb_func_start sub_0203A8A8 -sub_0203A8A8: ; 0x0203A8A8 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r4, #0 - bl sub_02039998 - cmp r0, #0 - beq _0203A8B8 - mov r4, #1 -_0203A8B8: - mov r0, #0x1e - lsl r0, r0, #4 - str r0, [sp] - mov r0, #0xf0 - mov r1, #0 - add r2, r4, #0 - add r3, r5, #0 - bl sub_0203A8CC - pop {r3, r4, r5, pc} - thumb_func_end sub_0203A8A8 - - thumb_func_start sub_0203A8CC -sub_0203A8CC: ; 0x0203A8CC - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - add r6, r0, #0 - add r7, r1, #0 - add r5, r2, #0 - add r4, r3, #0 - bl sub_02034DCC - cmp r0, #0 - beq _0203A908 - ldr r0, _0203A90C ; =0x021D4154 - ldr r0, [r0] - cmp r0, #0 - beq _0203A8EC - bl sub_0203A914 -_0203A8EC: - ldr r0, _0203A910 ; =0x0210F91C - str r5, [sp] - str r0, [sp, #4] - ldr r0, [sp, #0x28] - str r4, [sp, #8] - str r0, [sp, #0xc] - mov r0, #0 - mov r1, #0x59 - add r2, r6, #0 - add r3, r7, #0 - bl sub_0203A3B0 - ldr r1, _0203A90C ; =0x021D4154 - str r0, [r1] -_0203A908: - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203A90C: .word 0x021D4154 -_0203A910: .word 0x0210F91C - thumb_func_end sub_0203A8CC - - thumb_func_start sub_0203A914 -sub_0203A914: ; 0x0203A914 - push {r3, lr} - ldr r0, _0203A92C ; =0x021D4154 - ldr r0, [r0] - cmp r0, #0 - beq _0203A928 - bl sub_0203A444 - ldr r0, _0203A92C ; =0x021D4154 - mov r1, #0 - str r1, [r0] -_0203A928: - pop {r3, pc} - nop -_0203A92C: .word 0x021D4154 - thumb_func_end sub_0203A914 - - thumb_func_start sub_0203A930 -sub_0203A930: ; 0x0203A930 - push {r3, lr} - add r1, r0, #0 - ldr r0, _0203A944 ; =0x021D4154 - ldr r0, [r0] - cmp r0, #0 - beq _0203A940 - bl sub_0203A438 -_0203A940: - pop {r3, pc} - nop -_0203A944: .word 0x021D4154 - thumb_func_end sub_0203A930 - - thumb_func_start sub_0203A948 -sub_0203A948: ; 0x0203A948 - push {r3, lr} - add r3, r0, #0 - ldr r0, _0203A960 ; =0x021D4154 - add r2, r1, #0 - ldr r0, [r0] - cmp r0, #0 - beq _0203A95C - add r1, r3, #0 - bl sub_0203A478 -_0203A95C: - pop {r3, pc} - nop -_0203A960: .word 0x021D4154 - thumb_func_end sub_0203A948 - - thumb_func_start sub_0203A964 -sub_0203A964: ; 0x0203A964 - push {r3, lr} - bl sub_02037474 - cmp r0, #0 - beq _0203A984 - bl sub_02037454 - cmp r0, #1 - bgt _0203A97E - bl sub_02039998 - cmp r0, #0 - beq _0203A990 -_0203A97E: - bl sub_0203A880 - pop {r3, pc} -_0203A984: - bl sub_02039998 - cmp r0, #0 - beq _0203A990 - bl sub_0203A880 -_0203A990: - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203A964 - - thumb_func_start sub_0203A994 -sub_0203A994: ; 0x0203A994 - push {r4, lr} - add r4, r0, #0 - bl sub_02037474 - cmp r0, #0 - beq _0203A9B8 - bl sub_02037454 - cmp r0, #1 - bgt _0203A9B0 - bl sub_02039998 - cmp r0, #0 - beq _0203A9C6 -_0203A9B0: - add r0, r4, #0 - bl sub_0203A8A8 - pop {r4, pc} -_0203A9B8: - bl sub_02039998 - cmp r0, #0 - beq _0203A9C6 - add r0, r4, #0 - bl sub_0203A8A8 -_0203A9C6: - pop {r4, pc} - thumb_func_end sub_0203A994 - - thumb_func_start sub_0203A9C8 -sub_0203A9C8: ; 0x0203A9C8 - ldr r0, _0203A9D8 ; =0x021D4154 - ldr r1, [r0] - cmp r1, #0 - beq _0203A9D6 - mov r0, #1 - add r1, #0x22 - strb r0, [r1] -_0203A9D6: - bx lr - .balign 4, 0 -_0203A9D8: .word 0x021D4154 - thumb_func_end sub_0203A9C8 - - thumb_func_start sub_0203A9DC -sub_0203A9DC: ; 0x0203A9DC - ldr r3, _0203A9F0 ; =OSi_IntrTable - ldr r1, _0203A9F4 ; =0x00003FF8 - mov r0, #1 - ldr r2, [r3, r1] - orr r0, r2 - str r0, [r3, r1] - ldr r3, _0203A9F8 ; =sub_020D422C - mov r0, #3 - bx r3 - nop -_0203A9F0: .word OSi_IntrTable -_0203A9F4: .word 0x00003FF8 -_0203A9F8: .word sub_020D422C - thumb_func_end sub_0203A9DC - - thumb_func_start sub_0203A9FC -sub_0203A9FC: ; 0x0203A9FC - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_020393C8 - cmp r0, #0 - beq _0203AA10 - bl sub_02037D78 - cmp r0, #0 - bne _0203AA14 -_0203AA10: - mov r0, #0 - pop {r3, r4, r5, pc} -_0203AA14: - bl sub_020392D8 - add r4, r0, #0 - ldr r0, [r4] - ldr r1, [r4, #4] - bl ov00_021E6A70 - ldr r1, [r4] - cmp r0, #0xb - str r1, [r5] - beq _0203AA36 - cmp r0, #0xe - bge _0203AA36 - ldr r0, [r4] - sub r0, #0x19 - cmp r0, #1 - bhi _0203AA40 -_0203AA36: - ldr r0, [r4, #4] - cmp r0, #2 - beq _0203AA40 - mov r0, #0 - pop {r3, r4, r5, pc} -_0203AA40: - mov r0, #1 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203A9FC - - thumb_func_start sub_0203AA44 -sub_0203AA44: ; 0x0203AA44 - push {r0, r1, r2, r3} - push {r4, r5, r6, r7, lr} - sub sp, #0x24 - add r4, r0, #0 - cmp r1, #6 - bhi _0203AA6A - add r0, r1, r1 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203AA5C: ; jump table - .short _0203AA6A - _0203AA5C - 2 ; case 0 - .short _0203AA6E - _0203AA5C - 2 ; case 1 - .short _0203AA72 - _0203AA5C - 2 ; case 2 - .short _0203AA76 - _0203AA5C - 2 ; case 3 - .short _0203AA7A - _0203AA5C - 2 ; case 4 - .short _0203AA7E - _0203AA5C - 2 ; case 5 - .short _0203AA90 - _0203AA5C - 2 ; case 6 -_0203AA6A: - mov r5, #1 - b _0203AAA0 -_0203AA6E: - mov r5, #2 - b _0203AAA0 -_0203AA72: - mov r5, #3 - b _0203AAA0 -_0203AA76: - mov r5, #4 - b _0203AAA0 -_0203AA7A: - mov r5, #5 - b _0203AAA0 -_0203AA7E: - add r0, sp, #0x40 - bl sub_0203A9FC - cmp r0, #0 - bne _0203AA8C - mov r5, #6 - b _0203AAA0 -_0203AA8C: - mov r5, #8 - b _0203AAA0 -_0203AA90: - add r0, sp, #0x40 - bl sub_0203A9FC - cmp r0, #0 - bne _0203AA9E - mov r5, #7 - b _0203AAA0 -_0203AA9E: - mov r5, #9 -_0203AAA0: - mov r0, #0 - add r1, r0, #0 - bl sub_0200FBF4 - mov r0, #1 - mov r1, #0 - bl sub_0200FBF4 - mov r0, #1 - bl sub_020D1204 - ldr r1, _0203AC54 ; =sub_0203A9DC - mov r0, #1 - bl sub_020D1004 - mov r0, #1 - bl sub_020D11D4 - mov r0, #0 - add r1, r0, #0 - bl sub_0201A0FC - mov r0, #0 - add r1, r0, #0 - bl sub_0201A120 - bl sub_02022C54 - bl sub_02022CBC - mov r2, #1 - lsl r2, r2, #0x1a - ldr r1, [r2] - ldr r0, _0203AC58 ; =0xFFFFE0FF - and r1, r0 - str r1, [r2] - ldr r2, _0203AC5C ; =0x04001000 - ldr r1, [r2] - and r0, r1 - str r0, [r2] - mov r0, #4 - mov r1, #8 - bl sub_0201A71C - ldr r0, _0203AC60 ; =gMain + 0x60 - mov r1, #0 - strb r1, [r0, #9] - bl sub_02022D3C - ldr r3, _0203AC64 ; =0x04000050 - mov r1, #0 - strh r1, [r3] - ldr r0, _0203AC68 ; =0x04001050 - sub r3, #0x50 - strh r1, [r0] - ldr r2, [r3] - ldr r1, _0203AC6C ; =0xFFFF1FFF - sub r0, #0x50 - and r2, r1 - str r2, [r3] - ldr r2, [r0] - and r1, r2 - str r1, [r0] - ldr r0, _0203AC70 ; =0x020F6B04 - bl GX_SetBanks - add r0, r4, #0 - bl sub_0201AC88 - add r6, r0, #0 - ldr r0, _0203AC74 ; =0x020F6AD8 - bl sub_0201ACB0 - mov r1, #0 - ldr r2, _0203AC78 ; =0x020F6AE8 - add r0, r6, #0 - add r3, r1, #0 - bl sub_0201B1E4 - add r0, r6, #0 - mov r1, #0 - bl sub_0201CAE0 - mov r1, #0 - str r1, [sp] - ldr r2, _0203AC7C ; =0x000001F7 - add r0, r6, #0 - mov r3, #2 - str r4, [sp, #4] - bl sub_0200E3DC - mov r0, #0 - mov r1, #0x20 - add r2, r4, #0 - bl sub_02003030 - mov r0, #0 - mov r1, #0x20 - add r2, r0, #0 - add r3, r4, #0 - bl sub_0201C1C4 - ldr r1, _0203AC80 ; =0x00006C21 - mov r0, #0 - bl sub_0201C2D8 - ldr r1, _0203AC80 ; =0x00006C21 - mov r0, #4 - bl sub_0201C2D8 - mov r0, #1 - mov r1, #0x1b - mov r2, #0x29 - add r3, r4, #0 - bl NewMsgDataFromNarc - str r0, [sp, #0xc] - mov r0, #6 - lsl r0, r0, #6 - add r1, r4, #0 - bl String_ctor - add r7, r0, #0 - mov r0, #6 - lsl r0, r0, #6 - add r1, r4, #0 - bl String_ctor - str r0, [sp, #0x10] - bl sub_02020080 - add r0, r4, #0 - bl ScrStrBufs_new - add r4, r0, #0 - ldr r2, _0203AC84 ; =0x020F6AD0 - add r0, r6, #0 - add r1, sp, #0x14 - bl AddWindow - mov r0, #0xd0 - str r0, [sp] - mov r0, #0x90 - mov r2, #0 - str r0, [sp, #4] - add r0, sp, #0x14 - mov r1, #0xf - add r3, r2, #0 - bl FillWindowPixelRect - ldr r2, _0203AC7C ; =0x000001F7 - add r0, sp, #0x14 - mov r1, #0 - mov r3, #2 - bl sub_0200E580 - mov r0, #2 - str r0, [sp] - mov r0, #1 - str r0, [sp, #4] - ldr r2, [sp, #0x40] - add r0, r4, #0 - mov r1, #0 - mov r3, #5 - bl BufferIntegerAsString - ldr r0, [sp, #0xc] - ldr r2, [sp, #0x10] - add r1, r5, #0 - bl ReadMsgDataIntoString - ldr r2, [sp, #0x10] - add r0, r4, #0 - add r1, r7, #0 - bl StringExpandPlaceholders - mov r1, #0 - str r1, [sp] - str r1, [sp, #4] - add r0, sp, #0x14 - add r2, r7, #0 - add r3, r1, #0 - str r1, [sp, #8] - bl AddTextPrinterParameterized - add r0, r7, #0 - bl String_dtor - bl sub_02022D24 - mov r0, #0 - bl sub_0200FBE8 - mov r0, #1 - bl sub_0200FBE8 - mov r0, #0 - mov r1, #0x3f - mov r2, #3 - bl sub_0200B4F0 - add r0, sp, #0x14 - bl RemoveWindow - ldr r0, [sp, #0xc] - bl DestroyMsgData - add r0, r4, #0 - bl ScrStrBufs_delete - add r0, r6, #0 - bl FreeToHeap - add sp, #0x24 - pop {r4, r5, r6, r7} - pop {r3} - add sp, #0x10 - bx r3 - .balign 4, 0 -_0203AC54: .word sub_0203A9DC -_0203AC58: .word 0xFFFFE0FF -_0203AC5C: .word 0x04001000 -_0203AC60: .word gMain + 0x60 -_0203AC64: .word 0x04000050 -_0203AC68: .word 0x04001050 -_0203AC6C: .word 0xFFFF1FFF -_0203AC70: .word 0x020F6B04 -_0203AC74: .word 0x020F6AD8 -_0203AC78: .word 0x020F6AE8 -_0203AC7C: .word 0x000001F7 -_0203AC80: .word 0x00006C21 -_0203AC84: .word 0x020F6AD0 - thumb_func_end sub_0203AA44 - - thumb_func_start sub_0203AC88 -sub_0203AC88: ; 0x0203AC88 - ldr r0, _0203AC8C ; =0x020F6B2C - bx lr - .balign 4, 0 -_0203AC8C: .word 0x020F6B2C - thumb_func_end sub_0203AC88 - - thumb_func_start sub_0203AC90 -sub_0203AC90: ; 0x0203AC90 - mov r0, #3 - bx lr - thumb_func_end sub_0203AC90 - - thumb_func_start ShowWFCUserInfoWarning -ShowWFCUserInfoWarning: ; 0x0203AC94 - push {r4, r5, r6, r7, lr} - sub sp, #0x24 - add r4, r0, #0 - mov r0, #0 - add r1, r0, #0 - bl sub_0200FBF4 - mov r0, #1 - mov r1, #0 - bl sub_0200FBF4 - mov r0, #0 - add r1, r0, #0 - bl sub_0201A0FC - mov r0, #0 - add r1, r0, #0 - bl sub_0201A120 - bl sub_02022C54 - bl sub_02022CBC - mov r2, #1 - lsl r2, r2, #0x1a - ldr r1, [r2] - ldr r0, _0203AE70 ; =0xFFFFE0FF - and r1, r0 - str r1, [r2] - ldr r2, _0203AE74 ; =0x04001000 - ldr r1, [r2] - and r0, r1 - str r0, [r2] - mov r0, #4 - mov r1, #8 - bl sub_0201A71C - ldr r0, _0203AE78 ; =gMain + 0x60 - mov r1, #0 - strb r1, [r0, #9] - bl sub_02022D3C - ldr r3, _0203AE7C ; =0x04000050 - mov r0, #0 - strh r0, [r3] - ldr r2, _0203AE80 ; =0x04001050 - sub r3, #0x50 - strh r0, [r2] - ldr r1, [r3] - ldr r0, _0203AE84 ; =0xFFFF1FFF - sub r2, #0x50 - and r1, r0 - str r1, [r3] - ldr r1, [r2] - and r0, r1 - str r0, [r2] - ldr r0, _0203AE88 ; =0x020F6B84 - bl GX_SetBanks - add r0, r4, #0 - bl sub_0201AC88 - str r0, [sp, #0x10] - ldr r0, _0203AE8C ; =0x020F6B58 - bl sub_0201ACB0 - mov r1, #0 - ldr r0, [sp, #0x10] - ldr r2, _0203AE90 ; =0x020F6B68 - add r3, r1, #0 - bl sub_0201B1E4 - ldr r0, [sp, #0x10] - mov r1, #0 - bl sub_0201CAE0 - mov r1, #0 - str r1, [sp] - ldr r0, [sp, #0x10] - ldr r2, _0203AE94 ; =0x000001F7 - mov r3, #2 - str r4, [sp, #4] - bl sub_0200E3DC - mov r0, #0 - mov r1, #0x20 - add r2, r4, #0 - bl sub_02003030 - mov r0, #0 - mov r1, #0x20 - add r2, r0, #0 - add r3, r4, #0 - bl sub_0201C1C4 - ldr r1, _0203AE98 ; =0x00006C21 - mov r0, #0 - bl sub_0201C2D8 - ldr r1, _0203AE98 ; =0x00006C21 - mov r0, #4 - bl sub_0201C2D8 - mov r2, #0x32 - mov r0, #1 - mov r1, #0x1b - lsl r2, r2, #4 - add r3, r4, #0 - bl NewMsgDataFromNarc - str r0, [sp, #0xc] - mov r0, #6 - lsl r0, r0, #6 - add r1, r4, #0 - bl String_ctor - add r4, r0, #0 - bl sub_02020080 - ldr r0, [sp, #0x10] - ldr r2, _0203AE9C ; =0x020F6B50 - add r1, sp, #0x14 - bl AddWindow - mov r0, #0xd0 - str r0, [sp] - mov r0, #0x90 - mov r2, #0 - str r0, [sp, #4] - add r0, sp, #0x14 - mov r1, #0xf - add r3, r2, #0 - bl FillWindowPixelRect - ldr r2, _0203AE94 ; =0x000001F7 - add r0, sp, #0x14 - mov r1, #0 - mov r3, #2 - bl sub_0200E580 - ldr r0, [sp, #0xc] - mov r1, #0x10 - add r2, r4, #0 - bl ReadMsgDataIntoString - mov r1, #0 - str r1, [sp] - str r1, [sp, #4] - add r0, sp, #0x14 - add r2, r4, #0 - add r3, r1, #0 - str r1, [sp, #8] - bl AddTextPrinterParameterized - add r0, r4, #0 - bl String_dtor - bl sub_02022D24 - mov r0, #0 - bl sub_0200FBE8 - mov r0, #1 - bl sub_0200FBE8 - mov r0, #0 - mov r1, #0x3f - mov r2, #3 - bl sub_0200B4F0 - ldr r4, _0203AEA0 ; =0x04000130 - ldr r6, _0203AEA4 ; =0x027FFFA8 - mov r7, #1 -_0203ADEE: - ldrh r1, [r4] - ldrh r0, [r6] - orr r1, r0 - ldr r0, _0203AEA8 ; =0x00002FFF - eor r1, r0 - and r0, r1 - lsl r0, r0, #0x10 - lsr r5, r0, #0x10 - bl HandleDSLidAction - add r0, r5, #0 - tst r0, r7 - bne _0203AE12 - mov r0, #1 - add r1, r0, #0 - bl OS_WaitIrq - b _0203ADEE -_0203AE12: - add r0, sp, #0x14 - bl RemoveWindow - ldr r0, [sp, #0xc] - bl DestroyMsgData - mov r0, #0 - add r1, r0, #0 - bl sub_0201BC28 - mov r0, #1 - mov r1, #0 - bl sub_0201BC28 - mov r0, #2 - mov r1, #0 - bl sub_0201BC28 - mov r0, #3 - mov r1, #0 - bl sub_0201BC28 - mov r0, #4 - mov r1, #0 - bl sub_0201BC28 - mov r0, #5 - mov r1, #0 - bl sub_0201BC28 - mov r0, #6 - mov r1, #0 - bl sub_0201BC28 - mov r0, #7 - mov r1, #0 - bl sub_0201BC28 - ldr r0, [sp, #0x10] - mov r1, #0 - bl sub_0201BB4C - ldr r0, [sp, #0x10] - bl FreeToHeap - add sp, #0x24 - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_0203AE70: .word 0xFFFFE0FF -_0203AE74: .word 0x04001000 -_0203AE78: .word gMain + 0x60 -_0203AE7C: .word 0x04000050 -_0203AE80: .word 0x04001050 -_0203AE84: .word 0xFFFF1FFF -_0203AE88: .word 0x020F6B84 -_0203AE8C: .word 0x020F6B58 -_0203AE90: .word 0x020F6B68 -_0203AE94: .word 0x000001F7 -_0203AE98: .word 0x00006C21 -_0203AE9C: .word 0x020F6B50 -_0203AEA0: .word 0x04000130 -_0203AEA4: .word 0x027FFFA8 -_0203AEA8: .word 0x00002FFF - thumb_func_end ShowWFCUserInfoWarning - - thumb_func_start sub_0203AEAC -sub_0203AEAC: ; 0x0203AEAC - push {r4, r5, r6, r7, lr} - sub sp, #0xc - add r4, r0, #0 - str r2, [sp] - mov r2, #0 - strb r2, [r4, #1] - mov r7, #0x19 - mov r6, #0x96 - ldr r0, _0203AF94 ; =0x0000031F - mov ip, r1 - strb r2, [r4] - add r3, r4, #0 - add r5, r2, #0 - lsl r7, r7, #6 - lsl r6, r6, #4 -_0203AECA: - add r1, r4, r2 - strh r5, [r3, #2] - strb r5, [r1, r7] - strh r5, [r3, r6] - add r2, r2, #1 - add r3, r3, #2 - cmp r2, r0 - blt _0203AECA - ldr r0, _0203AF98 ; =0x00000F9E - mov r2, #0 -_0203AEDE: - add r1, r4, r5 - add r5, r5, #1 - strb r2, [r1, r0] - cmp r5, #0x10 - blt _0203AEDE - mov r0, #0x29 - mov r1, ip - mov r2, #0xb - bl AllocAtEndAndReadWholeNarcMemberByIdPair - add r6, r0, #0 - ldrb r0, [r6] - add r5, r6, #5 - strb r0, [r4, #1] - ldrb r0, [r6, #1] - strb r0, [r4] - ldrb r0, [r6, #2] - str r0, [sp, #8] - ldrb r0, [r6, #3] - str r0, [sp, #4] - ldrb r7, [r6, #4] - cmp r7, #0x10 - bls _0203AF10 - bl GF_AssertFail -_0203AF10: - ldr r1, _0203AF98 ; =0x00000F9E - add r0, r5, #0 - add r1, r4, r1 - add r2, r7, #0 - bl MIi_CpuCopy8 - ldr r0, [sp, #8] - add r5, r5, r7 - cmp r0, #0 - beq _0203AF40 - ldrb r3, [r4, #1] - ldrb r2, [r4] - add r0, r5, #0 - add r1, r4, #2 - mul r2, r3 - lsl r2, r2, #1 - bl MIi_CpuCopy8 - ldrb r1, [r4, #1] - ldrb r0, [r4] - mul r0, r1 - lsl r0, r0, #1 - add r5, r5, r0 - b _0203AF54 -_0203AF40: - ldrb r3, [r4, #1] - ldrb r2, [r4] - ldr r0, [sp] - add r1, r4, #2 - lsl r0, r0, #0x10 - mul r2, r3 - lsr r0, r0, #0x10 - lsl r2, r2, #1 - bl sub_020D4790 -_0203AF54: - ldr r0, [sp, #4] - cmp r0, #0 - beq _0203AF74 - ldrb r3, [r4, #1] - ldrb r2, [r4] - mov r1, #0x19 - lsl r1, r1, #6 - add r0, r5, #0 - add r1, r4, r1 - mul r2, r3 - bl MIi_CpuCopy8 - ldrb r1, [r4, #1] - ldrb r0, [r4] - mul r0, r1 - add r5, r5, r0 -_0203AF74: - ldrb r3, [r4, #1] - ldrb r2, [r4] - mov r1, #0x96 - lsl r1, r1, #4 - mul r2, r3 - add r0, r5, #0 - add r1, r4, r1 - lsl r2, r2, #1 - bl MIi_CpuCopy8 - add r0, r6, #0 - bl FreeToHeap - add sp, #0xc - pop {r4, r5, r6, r7, pc} - nop -_0203AF94: .word 0x0000031F -_0203AF98: .word 0x00000F9E - thumb_func_end sub_0203AEAC - - thumb_func_start sub_0203AF9C -sub_0203AF9C: ; 0x0203AF9C - push {r3, lr} - ldr r1, _0203AFB0 ; =0x00000FB2 - mov r0, #0xb - bl AllocFromHeap - mov r1, #0 - strb r1, [r0] - strb r1, [r0, #1] - strb r1, [r0, #2] - pop {r3, pc} - .balign 4, 0 -_0203AFB0: .word 0x00000FB2 - thumb_func_end sub_0203AF9C - - thumb_func_start sub_0203AFB4 -sub_0203AFB4: ; 0x0203AFB4 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - bl sub_0203B2AC - add r6, r0, #0 - add r0, r4, #4 - add r1, r6, #0 - add r2, r5, #0 - bl sub_0203AEAC - strb r6, [r4, #2] - ldrb r0, [r4, #4] - strb r0, [r4, #1] - ldrb r0, [r4, #5] - strb r0, [r4] - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203AFB4 - - thumb_func_start sub_0203AFD8 -sub_0203AFD8: ; 0x0203AFD8 - ldr r3, _0203AFDC ; =FreeToHeap - bx r3 - .balign 4, 0 -_0203AFDC: .word FreeToHeap - thumb_func_end sub_0203AFD8 - - thumb_func_start sub_0203AFE0 -sub_0203AFE0: ; 0x0203AFE0 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - ldrb r1, [r4] - ldrb r0, [r4, #1] - mul r0, r1 - cmp r5, r0 - blt _0203AFF4 - bl GF_AssertFail -_0203AFF4: - lsl r0, r5, #1 - add r1, r4, r0 - ldr r0, _0203B000 ; =0x00000964 - ldrh r0, [r1, r0] - pop {r3, r4, r5, pc} - nop -_0203B000: .word 0x00000964 - thumb_func_end sub_0203AFE0 - - thumb_func_start sub_0203B004 -sub_0203B004: ; 0x0203B004 - push {r4, lr} - add r4, r0, #0 - bne _0203B00E - bl GF_AssertFail -_0203B00E: - ldrb r0, [r4] - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203B004 - - thumb_func_start sub_0203B014 -sub_0203B014: ; 0x0203B014 - push {r4, lr} - add r4, r0, #0 - bne _0203B01E - bl GF_AssertFail -_0203B01E: - ldrb r0, [r4, #1] - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203B014 - - thumb_func_start sub_0203B024 -sub_0203B024: ; 0x0203B024 - push {r3, r4, r5, r6, r7, lr} - add r7, r0, #0 - ldrb r0, [r7, #1] - add r5, r1, #0 - add r4, r2, #0 - ldrb r6, [r7] - str r0, [sp] - cmp r5, #0 - blt _0203B03A - cmp r5, r6 - blt _0203B03E -_0203B03A: - bl GF_AssertFail -_0203B03E: - cmp r4, #0 - blt _0203B048 - ldr r0, [sp] - cmp r4, r0 - blt _0203B04C -_0203B048: - bl GF_AssertFail -_0203B04C: - add r0, r4, #0 - mul r0, r6 - add r0, r5, r0 - lsl r0, r0, #1 - add r0, r7, r0 - ldrh r0, [r0, #6] - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203B024 - - thumb_func_start sub_0203B05C -sub_0203B05C: ; 0x0203B05C - ldrb r0, [r0, #2] - bx lr - thumb_func_end sub_0203B05C - - thumb_func_start sub_0203B060 -sub_0203B060: ; 0x0203B060 - push {r4, r5, r6, lr} - add r5, r0, #0 - ldr r0, [sp, #0x10] - add r4, r2, #0 - add r6, r3, #0 - cmp r4, r0 - blt _0203B072 - bl GF_AssertFail -_0203B072: - ldr r0, [sp, #0x10] - mul r0, r6 - add r4, r4, r0 - ldr r0, _0203B08C ; =0x0000031F - cmp r4, r0 - blt _0203B082 - bl GF_AssertFail -_0203B082: - ldr r0, _0203B090 ; =0x00000644 - add r1, r5, r4 - ldrb r0, [r1, r0] - pop {r4, r5, r6, pc} - nop -_0203B08C: .word 0x0000031F -_0203B090: .word 0x00000644 - thumb_func_end sub_0203B060 - - thumb_func_start sub_0203B094 -sub_0203B094: ; 0x0203B094 - push {r3, r4, r5, lr} - ldr r1, _0203B0C4 ; =0x0000063E - add r4, r0, #0 - bl AllocFromHeap - add r5, r0, #0 - mov r0, #0x29 - mov r1, #0 - add r2, r4, #0 - bl AllocAtEndAndReadWholeNarcMemberByIdPair - add r4, r0, #0 - ldrb r1, [r4, #4] - add r0, r4, #5 - ldr r2, _0203B0C4 ; =0x0000063E - add r0, r0, r1 - add r1, r5, #0 - bl MIi_CpuCopy8 - add r0, r4, #0 - bl FreeToHeap - add r0, r5, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203B0C4: .word 0x0000063E - thumb_func_end sub_0203B094 - - thumb_func_start sub_0203B0C8 -sub_0203B0C8: ; 0x0203B0C8 - push {r4, lr} - add r4, r0, #0 - bne _0203B0D2 - bl GF_AssertFail -_0203B0D2: - add r0, r4, #0 - bl FreeToHeap - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203B0C8 - - thumb_func_start sub_0203B0DC -sub_0203B0DC: ; 0x0203B0DC - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - bne _0203B0E8 - bl GF_AssertFail -_0203B0E8: - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203AFE0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203B0DC - - thumb_func_start sub_0203B0F4 -sub_0203B0F4: ; 0x0203B0F4 - ldr r1, _0203B110 ; =0x00000964 - ldrb r2, [r0] - add r3, r0, r1 - ldrb r0, [r0, #2] - cmp r0, #0 - bne _0203B10C - lsl r0, r2, #2 - add r0, r2, r0 - add r0, #0x10 - mov r1, #0x56 - lsl r0, r0, #1 - strh r1, [r3, r0] -_0203B10C: - bx lr - nop -_0203B110: .word 0x00000964 - thumb_func_end sub_0203B0F4 - - thumb_func_start sub_0203B114 -sub_0203B114: ; 0x0203B114 - push {r3, r4, r5, lr} - sub sp, #0x10 - add r5, r1, #0 - bl sub_020503D0 - add r4, r0, #0 - add r0, sp, #0 - bl GF_RTC_CopyDate - add r0, r4, #0 - mov r1, #0xca - bl sub_020503DC - cmp r0, #0 - bne _0203B140 - add r0, r4, #0 - mov r1, #1 - bl sub_02066C4C - add sp, #0x10 - mov r0, #0 - pop {r3, r4, r5, pc} -_0203B140: - cmp r5, #0x58 - beq _0203B148 - cmp r5, #0x2d - bne _0203B14E -_0203B148: - ldr r0, [sp, #0xc] - cmp r0, #3 - beq _0203B15C -_0203B14E: - add r0, r4, #0 - mov r1, #1 - bl sub_02066C4C - add sp, #0x10 - mov r0, #0 - pop {r3, r4, r5, pc} -_0203B15C: - add r0, r4, #0 - mov r1, #1 - bl sub_02066C1C - mov r0, #1 - add sp, #0x10 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203B114 - - thumb_func_start sub_0203B16C -sub_0203B16C: ; 0x0203B16C - ldr r2, _0203B1F8 ; =0x00000964 - add r3, r0, r2 - ldrb r2, [r0] - ldrb r0, [r0, #2] - cmp r0, #0 - bne _0203B1F6 - cmp r1, #0 - beq _0203B1BA - add r0, r2, #0 - add r0, #0xf - mov r1, #0x5f - lsl r0, r0, #1 - strh r1, [r3, r0] - add r0, r2, #0 - add r0, #0x10 - mov r1, #0x60 - lsl r0, r0, #1 - strh r1, [r3, r0] - add r0, r2, #0 - add r0, #0x11 - mov r1, #0x61 - lsl r0, r0, #1 - strh r1, [r3, r0] - lsl r0, r2, #1 - add r1, r0, #0 - add r1, #0xf - mov r2, #0x62 - lsl r1, r1, #1 - strh r2, [r3, r1] - add r1, r0, #0 - add r1, #0x10 - add r0, #0x11 - mov r2, #0x63 - lsl r1, r1, #1 - strh r2, [r3, r1] - mov r1, #0x64 - lsl r0, r0, #1 - strh r1, [r3, r0] - bx lr -_0203B1BA: - add r0, r2, #0 - add r0, #0xf - mov r1, #0x59 - lsl r0, r0, #1 - strh r1, [r3, r0] - add r0, r2, #0 - add r0, #0x10 - mov r1, #0x5a - lsl r0, r0, #1 - strh r1, [r3, r0] - add r0, r2, #0 - add r0, #0x11 - mov r1, #0x5b - lsl r0, r0, #1 - strh r1, [r3, r0] - lsl r0, r2, #1 - add r1, r0, #0 - add r1, #0xf - mov r2, #0x5c - lsl r1, r1, #1 - strh r2, [r3, r1] - add r1, r0, #0 - add r1, #0x10 - add r0, #0x11 - mov r2, #0x5d - lsl r1, r1, #1 - strh r2, [r3, r1] - mov r1, #0x5e - lsl r0, r0, #1 - strh r1, [r3, r0] -_0203B1F6: - bx lr - .balign 4, 0 -_0203B1F8: .word 0x00000964 - thumb_func_end sub_0203B16C - - thumb_func_start sub_0203B1FC -sub_0203B1FC: ; 0x0203B1FC - push {r4, r5, r6, r7, lr} - sub sp, #0xc - ldr r2, _0203B264 ; =0x00000964 - add r2, r0, r2 - str r2, [sp, #8] - ldrb r2, [r0] - ldrb r0, [r0, #2] - str r2, [sp, #4] - cmp r0, #0xd4 - bne _0203B260 - add r0, r1, #0 - bl sub_0202F57C - mov r1, #3 - bl sub_0202F630 - mov r7, #0 - str r0, [sp] - ldr r0, [sp, #4] - add r6, r7, #0 - lsl r0, r0, #1 - mov ip, r0 - mov r0, #0xa3 - add r2, r7, #0 - lsl r0, r0, #2 -_0203B22E: - mov r3, #0x7a - add r4, r6, #0 - mul r4, r3 - ldr r3, [sp] - lsl r5, r2, #1 - add r3, r3, r4 - ldr r4, [sp, #8] - mov r1, #0 - add r5, r4, r5 - mov r4, ip - add r4, r5, r4 -_0203B244: - ldrb r5, [r3] - add r1, r1, #1 - add r3, #0x7a - add r5, r5, r0 - strh r5, [r4, #2] - add r4, r4, #2 - cmp r1, #3 - blt _0203B244 - ldr r1, [sp, #4] - add r7, r7, #1 - add r6, r6, #3 - add r2, r2, r1 - cmp r7, #2 - blt _0203B22E -_0203B260: - add sp, #0xc - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_0203B264: .word 0x00000964 - thumb_func_end sub_0203B1FC - - thumb_func_start sub_0203B268 -sub_0203B268: ; 0x0203B268 - push {r3, lr} - mov r1, #0x87 - lsl r1, r1, #2 - cmp r0, r1 - blo _0203B278 - bl GF_AssertFail - mov r0, #1 -_0203B278: - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203B268 - - thumb_func_start sub_0203B27C -sub_0203B27C: ; 0x0203B27C - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B28C ; =0x020F6BE1 - ldrb r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203B28C: .word 0x020F6BE1 - thumb_func_end sub_0203B27C - - thumb_func_start sub_0203B290 -sub_0203B290: ; 0x0203B290 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B2A8 ; =0x020F6BE0 - add r0, r0, r1 - ldrh r0, [r0, #2] - lsl r0, r0, #0x1c - lsr r0, r0, #0x1c - pop {r3, pc} - nop -_0203B2A8: .word 0x020F6BE0 - thumb_func_end sub_0203B290 - - thumb_func_start sub_0203B2AC -sub_0203B2AC: ; 0x0203B2AC - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B2BC ; =0x020F6BE4 - ldrh r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203B2BC: .word 0x020F6BE4 - thumb_func_end sub_0203B2AC - - thumb_func_start sub_0203B2C0 -sub_0203B2C0: ; 0x0203B2C0 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B2D0 ; =0x020F6BEA - ldrh r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203B2D0: .word 0x020F6BEA - thumb_func_end sub_0203B2C0 - - thumb_func_start sub_0203B2D4 -sub_0203B2D4: ; 0x0203B2D4 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B2E4 ; =0x020F6BE6 - ldrh r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203B2E4: .word 0x020F6BE6 - thumb_func_end sub_0203B2D4 - - thumb_func_start sub_0203B2E8 -sub_0203B2E8: ; 0x0203B2E8 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B2F8 ; =0x020F6BE8 - ldrh r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203B2F8: .word 0x020F6BE8 - thumb_func_end sub_0203B2E8 - - thumb_func_start sub_0203B2FC -sub_0203B2FC: ; 0x0203B2FC - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B30C ; =0x020F6BEC - ldrh r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203B30C: .word 0x020F6BEC - thumb_func_end sub_0203B2FC - - thumb_func_start sub_0203B310 -sub_0203B310: ; 0x0203B310 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B320 ; =0x020F6BEE - ldrh r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203B320: .word 0x020F6BEE - thumb_func_end sub_0203B310 - - thumb_func_start sub_0203B324 -sub_0203B324: ; 0x0203B324 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B340 ; =0x020F6BE0 - ldrb r0, [r0, r1] - cmp r0, #0xff - beq _0203B33A - mov r0, #1 - pop {r3, pc} -_0203B33A: - mov r0, #0 - pop {r3, pc} - nop -_0203B340: .word 0x020F6BE0 - thumb_func_end sub_0203B324 - - thumb_func_start sub_0203B344 -sub_0203B344: ; 0x0203B344 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B354 ; =0x020F6BE0 - ldrb r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203B354: .word 0x020F6BE0 - thumb_func_end sub_0203B344 - - thumb_func_start sub_0203B358 -sub_0203B358: ; 0x0203B358 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B368 ; =0x020F6BF0 - ldrh r0, [r0, r1] - pop {r3, pc} - .balign 4, 0 -_0203B368: .word 0x020F6BF0 - thumb_func_end sub_0203B358 - - thumb_func_start sub_0203B36C -sub_0203B36C: ; 0x0203B36C - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B384 ; =0x020F6BE0 - add r0, r0, r1 - ldrh r0, [r0, #0x12] - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - pop {r3, pc} - nop -_0203B384: .word 0x020F6BE0 - thumb_func_end sub_0203B36C - - thumb_func_start sub_0203B388 -sub_0203B388: ; 0x0203B388 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B3A4 ; =0x020F6BE0 - add r0, r0, r1 - ldrh r0, [r0, #0x12] - lsl r0, r0, #0x14 - lsr r0, r0, #0x1c - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - pop {r3, pc} - nop -_0203B3A4: .word 0x020F6BE0 - thumb_func_end sub_0203B388 - - thumb_func_start sub_0203B3A8 -sub_0203B3A8: ; 0x0203B3A8 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B3C4 ; =0x020F6BE0 - add r0, r0, r1 - ldrh r0, [r0, #0x12] - lsl r0, r0, #0x10 - lsr r0, r0, #0x1c - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - pop {r3, pc} - nop -_0203B3C4: .word 0x020F6BE0 - thumb_func_end sub_0203B3A8 - - thumb_func_start sub_0203B3C8 -sub_0203B3C8: ; 0x0203B3C8 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B3E0 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #0x1f - lsr r0, r0, #0x1f - pop {r3, pc} - nop -_0203B3E0: .word 0x020F6BE0 - thumb_func_end sub_0203B3C8 - - thumb_func_start sub_0203B3E4 -sub_0203B3E4: ; 0x0203B3E4 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B3FC ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #0x18 - lsr r0, r0, #0x19 - pop {r3, pc} - nop -_0203B3FC: .word 0x020F6BE0 - thumb_func_end sub_0203B3E4 - - thumb_func_start sub_0203B400 -sub_0203B400: ; 0x0203B400 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B418 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #0xe - lsr r0, r0, #0x1a - pop {r3, pc} - nop -_0203B418: .word 0x020F6BE0 - thumb_func_end sub_0203B400 - - thumb_func_start sub_0203B41C -sub_0203B41C: ; 0x0203B41C - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B434 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #7 - lsr r0, r0, #0x1b - pop {r3, pc} - nop -_0203B434: .word 0x020F6BE0 - thumb_func_end sub_0203B41C - - thumb_func_start sub_0203B438 -sub_0203B438: ; 0x0203B438 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B450 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #4 - lsr r0, r0, #0x1f - pop {r3, pc} - nop -_0203B450: .word 0x020F6BE0 - thumb_func_end sub_0203B438 - - thumb_func_start sub_0203B454 -sub_0203B454: ; 0x0203B454 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B46C ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #3 - lsr r0, r0, #0x1f - pop {r3, pc} - nop -_0203B46C: .word 0x020F6BE0 - thumb_func_end sub_0203B454 - - thumb_func_start sub_0203B470 -sub_0203B470: ; 0x0203B470 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B488 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #6 - lsr r0, r0, #0x1f - pop {r3, pc} - nop -_0203B488: .word 0x020F6BE0 - thumb_func_end sub_0203B470 - - thumb_func_start sub_0203B48C -sub_0203B48C: ; 0x0203B48C - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B4A4 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #2 - lsr r0, r0, #0x1f - pop {r3, pc} - nop -_0203B4A4: .word 0x020F6BE0 - thumb_func_end sub_0203B48C - - thumb_func_start sub_0203B4A8 -sub_0203B4A8: ; 0x0203B4A8 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B4C0 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #1 - lsr r0, r0, #0x1f - pop {r3, pc} - nop -_0203B4C0: .word 0x020F6BE0 - thumb_func_end sub_0203B4A8 - - thumb_func_start sub_0203B4C4 -sub_0203B4C4: ; 0x0203B4C4 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B4D8 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsr r0, r0, #0x1f - pop {r3, pc} - .balign 4, 0 -_0203B4D8: .word 0x020F6BE0 - thumb_func_end sub_0203B4C4 - - thumb_func_start sub_0203B4DC -sub_0203B4DC: ; 0x0203B4DC - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B4F4 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #0x14 - lsr r0, r0, #0x1c - pop {r3, pc} - nop -_0203B4F4: .word 0x020F6BE0 - thumb_func_end sub_0203B4DC - - thumb_func_start sub_0203B4F8 -sub_0203B4F8: ; 0x0203B4F8 - push {r3, lr} - bl sub_0203B268 - mov r1, #0x18 - mul r1, r0 - ldr r0, _0203B514 ; =0x020F6BE0 - add r0, r0, r1 - ldr r0, [r0, #0x14] - lsl r0, r0, #0xc - lsr r0, r0, #0x1e - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - pop {r3, pc} - nop -_0203B514: .word 0x020F6BE0 - thumb_func_end sub_0203B4F8 - - thumb_func_start sub_0203B518 -sub_0203B518: ; 0x0203B518 - push {r3, r4, r5, lr} - add r5, r1, #0 - add r4, r2, #0 - bl sub_0203B268 - mov r1, #0x18 - ldr r2, _0203B53C ; =0x020F6BE0 - mul r1, r0 - add r1, r2, r1 - ldrh r0, [r1, #2] - lsl r0, r0, #0x16 - lsr r0, r0, #0x1a - strh r0, [r5] - ldrh r0, [r1, #2] - lsl r0, r0, #0x10 - lsr r0, r0, #0x1a - strh r0, [r4] - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203B53C: .word 0x020F6BE0 - thumb_func_end sub_0203B518 - - thumb_func_start sub_0203B540 -sub_0203B540: ; 0x0203B540 - push {r4, lr} - add r4, r0, #0 - bl sub_0203B454 - cmp r0, #0 - bne _0203B550 - mov r0, #0 - pop {r4, pc} -_0203B550: - add r0, r4, #0 - bl sub_0203B4DC - cmp r0, #1 - beq _0203B55E - mov r0, #1 - pop {r4, pc} -_0203B55E: - mov r0, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203B540 - - thumb_func_start sub_0203B564 -sub_0203B564: ; 0x0203B564 - push {r3, lr} - bl sub_0203B2AC - cmp r0, #0 - bne _0203B572 - mov r0, #1 - pop {r3, pc} -_0203B572: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203B564 - - thumb_func_start sub_0203B578 -sub_0203B578: ; 0x0203B578 - push {r3, lr} - bl sub_0203B4DC - cmp r0, #3 - bne _0203B586 - mov r0, #1 - pop {r3, pc} -_0203B586: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203B578 - - thumb_func_start sub_0203B58C -sub_0203B58C: ; 0x0203B58C - push {r4, lr} - add r4, r0, #0 - bl sub_0203B4DC - cmp r0, #4 - beq _0203B5A2 - add r0, r4, #0 - bl sub_0203B4DC - cmp r0, #5 - bne _0203B5A6 -_0203B5A2: - mov r0, #1 - pop {r4, pc} -_0203B5A6: - mov r0, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203B58C - - thumb_func_start sub_0203B5AC -sub_0203B5AC: ; 0x0203B5AC - push {r4, lr} - add r4, r0, #0 - bl sub_0203B4DC - cmp r0, #1 - beq _0203B5C2 - add r0, r4, #0 - bl sub_0203B4DC - cmp r0, #2 - bne _0203B5C6 -_0203B5C2: - mov r0, #1 - pop {r4, pc} -_0203B5C6: - mov r0, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203B5AC - - thumb_func_start sub_0203B5CC -sub_0203B5CC: ; 0x0203B5CC - cmp r0, #2 - bne _0203B5D4 - mov r0, #1 - bx lr -_0203B5D4: - mov r0, #0 - bx lr - thumb_func_end sub_0203B5CC - - thumb_func_start sub_0203B5D8 -sub_0203B5D8: ; 0x0203B5D8 - mov r0, #0 - bx lr - thumb_func_end sub_0203B5D8 - - thumb_func_start sub_0203B5DC -sub_0203B5DC: ; 0x0203B5DC - ldr r3, _0203B5F8 ; =0x020F6BAC - mov r2, #0 -_0203B5E0: - ldrh r1, [r3] - cmp r0, r1 - bne _0203B5EA - mov r0, #1 - bx lr -_0203B5EA: - add r2, r2, #1 - add r3, r3, #2 - cmp r2, #0x19 - blt _0203B5E0 - mov r0, #0 - bx lr - nop -_0203B5F8: .word 0x020F6BAC - thumb_func_end sub_0203B5DC - - thumb_func_start sub_0203B5FC -sub_0203B5FC: ; 0x0203B5FC - mov r1, #0x4b - lsl r1, r1, #2 - cmp r0, r1 - bne _0203B608 - mov r0, #1 - bx lr -_0203B608: - mov r0, #0 - bx lr - thumb_func_end sub_0203B5FC - - thumb_func_start sub_0203B60C -sub_0203B60C: ; 0x0203B60C - mov r0, #0 - bx lr - thumb_func_end sub_0203B60C - - thumb_func_start sub_0203B610 -sub_0203B610: ; 0x0203B610 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, [r5, #0x14] - add r4, r1, #0 - cmp r0, #0 - beq _0203B620 - bl GF_AssertFail -_0203B620: - ldr r1, _0203B62C ; =0x000009E4 - add r0, r4, #0 - bl AllocFromHeap - str r0, [r5, #0x14] - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203B62C: .word 0x000009E4 - thumb_func_end sub_0203B610 - - thumb_func_start sub_0203B630 -sub_0203B630: ; 0x0203B630 - push {r4, lr} - add r4, r0, #0 - ldr r0, [r4, #0x14] - cmp r0, #0 - bne _0203B63E - bl GF_AssertFail -_0203B63E: - ldr r0, [r4, #0x14] - bl FreeToHeap - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203B630 - - thumb_func_start sub_0203B648 -sub_0203B648: ; 0x0203B648 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, [r5, #0x14] - add r4, r1, #0 - cmp r0, #0 - bne _0203B658 - bl GF_AssertFail -_0203B658: - ldr r0, [r5, #0x14] - add r1, r4, #0 - bl sub_0203B680 - ldr r0, [r5, #0x14] - bl sub_0203B828 - mov r0, #0x92 - ldr r1, [r5, #0x14] - lsl r0, r0, #4 - add r0, r1, r0 - add r1, r4, #0 - bl sub_0203B88C - ldr r0, [r5, #0x14] - add r1, r4, #0 - bl sub_0203B8C4 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203B648 - - thumb_func_start sub_0203B680 -sub_0203B680: ; 0x0203B680 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r0, r1, #0 - bl sub_0203B358 - add r4, r0, #0 - mov r0, #0x20 - add r1, r4, #0 - bl GetNarcMemberSizeByIdPair - mov r1, #2 - lsl r1, r1, #0xa - cmp r0, r1 - blo _0203B6A0 - bl GF_AssertFail -_0203B6A0: - add r5, #0x20 - add r0, r5, #0 - mov r1, #0x20 - add r2, r4, #0 - bl ReadWholeNarcMemberByIdPair - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203B680 - - thumb_func_start sub_0203B6B0 -sub_0203B6B0: ; 0x0203B6B0 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, [r5, #0x14] - ldr r4, [r0, #4] - cmp r0, #0 - bne _0203B6C0 - bl GF_AssertFail -_0203B6C0: - cmp r4, #0 - beq _0203B6D4 - ldr r1, [r5, #0x20] - ldr r3, [r5, #0x14] - ldr r0, [r5, #0x3c] - ldr r1, [r1] - ldr r3, [r3, #0x14] - add r2, r4, #0 - bl sub_0205E9AC -_0203B6D4: - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203B6B0 - - thumb_func_start sub_0203B6D8 -sub_0203B6D8: ; 0x0203B6D8 - ldr r0, [r0, #0x14] - ldr r0, [r0, #0x10] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B6D8 - - thumb_func_start sub_0203B6E0 -sub_0203B6E0: ; 0x0203B6E0 - ldr r0, [r0, #0x14] - ldr r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B6E0 - - thumb_func_start sub_0203B6E8 -sub_0203B6E8: ; 0x0203B6E8 - ldr r2, [r0, #0x14] - ldr r0, [r2, #8] - cmp r1, r0 - blo _0203B6F4 - mov r0, #0 - bx lr -_0203B6F4: - mov r0, #0xc - ldr r2, [r2, #0x18] - mul r0, r1 - add r0, r2, r0 - bx lr - .balign 4, 0 - thumb_func_end sub_0203B6E8 - - thumb_func_start sub_0203B700 -sub_0203B700: ; 0x0203B700 - push {r4, r5, r6, r7} - ldr r5, [r0, #0x14] - mov r3, #0 - ldr r0, [r5, #8] - cmp r0, #0 - bls _0203B732 - ldr r6, [r5, #0x18] - add r4, r3, #0 - add r0, r6, #0 -_0203B712: - ldrh r7, [r0] - cmp r1, r7 - bne _0203B726 - add r7, r6, r4 - ldrh r7, [r7, #2] - cmp r2, r7 - bne _0203B726 - add r0, r3, #0 - pop {r4, r5, r6, r7} - bx lr -_0203B726: - ldr r7, [r5, #8] - add r3, r3, #1 - add r0, #0xc - add r4, #0xc - cmp r3, r7 - blo _0203B712 -_0203B732: - mov r0, #0 - mvn r0, r0 - pop {r4, r5, r6, r7} - bx lr - .balign 4, 0 - thumb_func_end sub_0203B700 - - thumb_func_start sub_0203B73C -sub_0203B73C: ; 0x0203B73C - ldr r0, [r0, #0x14] - ldr r0, [r0, #0xc] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B73C - - thumb_func_start sub_0203B744 -sub_0203B744: ; 0x0203B744 - ldr r0, [r0, #0x14] - ldr r0, [r0, #0x1c] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B744 - - thumb_func_start sub_0203B74C -sub_0203B74C: ; 0x0203B74C - ldr r0, [r0, #0x14] - ldr r0, [r0, #4] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B74C - - thumb_func_start sub_0203B754 -sub_0203B754: ; 0x0203B754 - ldr r0, [r0, #0x14] - ldr r0, [r0, #0x14] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B754 - - thumb_func_start sub_0203B75C -sub_0203B75C: ; 0x0203B75C - push {r3, r4, r5, r6, r7, lr} - ldr r0, [r0, #0x14] - add r4, r1, #0 - ldr r5, [r0, #4] - add r7, r2, #0 - add r1, r3, #0 - mov r2, #0 - ldr r3, [r0, #0x14] - cmp r5, #0 - bls _0203B78C - add r6, r3, #0 -_0203B772: - ldrh r0, [r6] - cmp r4, r0 - bne _0203B784 - lsl r0, r2, #5 - add r0, r3, r0 - strh r7, [r0, #0x18] - strh r1, [r0, #0x1a] - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0203B784: - add r2, r2, #1 - add r6, #0x20 - cmp r2, r5 - blo _0203B772 -_0203B78C: - bl GF_AssertFail - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0203B75C - - thumb_func_start sub_0203B794 -sub_0203B794: ; 0x0203B794 - push {r4, r5, r6, lr} - ldr r0, [r0, #0x14] - mov r3, #0 - ldr r5, [r0, #4] - ldr r4, [r0, #0x14] - cmp r5, #0 - bls _0203B7BC - add r6, r4, #0 -_0203B7A4: - ldrh r0, [r6] - cmp r1, r0 - bne _0203B7B4 - lsl r0, r3, #5 - add r0, r4, r0 - strh r2, [r0, #0xc] - mov r0, #1 - pop {r4, r5, r6, pc} -_0203B7B4: - add r3, r3, #1 - add r6, #0x20 - cmp r3, r5 - blo _0203B7A4 -_0203B7BC: - bl GF_AssertFail - mov r0, #0 - pop {r4, r5, r6, pc} - thumb_func_end sub_0203B794 - - thumb_func_start sub_0203B7C4 -sub_0203B7C4: ; 0x0203B7C4 - push {r4, r5, r6, lr} - ldr r0, [r0, #0x14] - mov r3, #0 - ldr r5, [r0, #4] - ldr r4, [r0, #0x14] - cmp r5, #0 - bls _0203B7EC - add r6, r4, #0 -_0203B7D4: - ldrh r0, [r6] - cmp r1, r0 - bne _0203B7E4 - lsl r0, r3, #5 - add r0, r4, r0 - strh r2, [r0, #4] - mov r0, #1 - pop {r4, r5, r6, pc} -_0203B7E4: - add r3, r3, #1 - add r6, #0x20 - cmp r3, r5 - blo _0203B7D4 -_0203B7EC: - bl GF_AssertFail - mov r0, #0 - pop {r4, r5, r6, pc} - thumb_func_end sub_0203B7C4 - - thumb_func_start sub_0203B7F4 -sub_0203B7F4: ; 0x0203B7F4 - push {r3, r4} - ldr r0, [r0, #0x14] - ldr r4, [r0, #0x18] - mov r0, #0xc - mul r0, r1 - strh r2, [r4, r0] - add r0, r4, r0 - strh r3, [r0, #2] - mov r0, #1 - pop {r3, r4} - bx lr - .balign 4, 0 - thumb_func_end sub_0203B7F4 - - thumb_func_start sub_0203B80C -sub_0203B80C: ; 0x0203B80C - push {r4, r5, r6, lr} - add r5, r1, #0 - add r4, r2, #0 - add r6, r3, #0 - bl sub_0203B6D8 - mov r1, #0x14 - mul r1, r5 - add r0, r0, r1 - str r4, [r0, #4] - str r6, [r0, #8] - mov r0, #1 - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203B80C - - thumb_func_start sub_0203B828 -sub_0203B828: ; 0x0203B828 - add r1, r0, #0 - ldr r2, [r0, #0x20] - add r1, #0x20 - add r1, r1, #4 - str r2, [r0] - cmp r2, #0 - beq _0203B83A - str r1, [r0, #0x10] - b _0203B83E -_0203B83A: - mov r2, #0 - str r2, [r0, #0x10] -_0203B83E: - ldr r3, [r0] - mov r2, #0x14 - mul r2, r3 - add r3, r1, r2 - ldr r2, [r1, r2] - add r1, r3, #4 - str r2, [r0, #4] - cmp r2, #0 - beq _0203B854 - str r1, [r0, #0x14] - b _0203B858 -_0203B854: - mov r2, #0 - str r2, [r0, #0x14] -_0203B858: - ldr r2, [r0, #4] - lsl r2, r2, #5 - add r3, r1, r2 - ldr r2, [r1, r2] - add r1, r3, #4 - str r2, [r0, #8] - cmp r2, #0 - beq _0203B86C - str r1, [r0, #0x18] - b _0203B870 -_0203B86C: - mov r2, #0 - str r2, [r0, #0x18] -_0203B870: - ldr r3, [r0, #8] - mov r2, #0xc - mul r2, r3 - add r3, r1, r2 - ldr r1, [r1, r2] - str r1, [r0, #0xc] - cmp r1, #0 - beq _0203B886 - add r1, r3, #4 - str r1, [r0, #0x1c] - bx lr -_0203B886: - mov r1, #0 - str r1, [r0, #0x1c] - bx lr - thumb_func_end sub_0203B828 - - thumb_func_start sub_0203B88C -sub_0203B88C: ; 0x0203B88C - push {r3, r4, r5, lr} - add r4, r1, #0 - mov r1, #0 - mov r2, #0xc4 - add r5, r0, #0 - bl memset - add r0, r4, #0 - bl sub_0203B324 - cmp r0, #0 - beq _0203B8B4 - add r0, r4, #0 - bl sub_0203B344 - add r2, r0, #0 - add r0, r5, #0 -#ifdef HEARTGOLD - mov r1, #0x25 -#else - mov r1, #0x88 -#endif - bl ReadWholeNarcMemberByIdPair -_0203B8B4: - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203B88C - - thumb_func_start sub_0203B8B8 -sub_0203B8B8: ; 0x0203B8B8 - ldr r1, [r0, #0x14] - mov r0, #0x92 - lsl r0, r0, #4 - add r0, r1, r0 - bx lr - .balign 4, 0 - thumb_func_end sub_0203B8B8 - - thumb_func_start sub_0203B8C4 -sub_0203B8C4: ; 0x0203B8C4 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r0, r1, #0 - bl sub_0203B2E8 - mov r1, #0x82 - lsl r1, r1, #4 - mov r2, #1 - add r4, r0, #0 - mov r0, #0 - add r1, r5, r1 - lsl r2, r2, #8 - bl MIi_CpuClearFast - mov r0, #0xc - add r1, r4, #0 - bl GetNarcMemberSizeByIdPair - mov r1, #1 - lsl r1, r1, #8 - cmp r0, r1 - blo _0203B8F4 - bl GF_AssertFail -_0203B8F4: - mov r0, #0x82 - lsl r0, r0, #4 - add r0, r5, r0 - mov r1, #0xc - add r2, r4, #0 - bl ReadWholeNarcMemberByIdPair - pop {r3, r4, r5, pc} - thumb_func_end sub_0203B8C4 - - thumb_func_start sub_0203B904 -sub_0203B904: ; 0x0203B904 - push {r4, lr} - add r4, r0, #0 - ldr r0, [r4, #0x14] - cmp r0, #0 - bne _0203B912 - bl GF_AssertFail -_0203B912: - mov r0, #0x82 - ldr r1, [r4, #0x14] - lsl r0, r0, #4 - add r0, r1, r0 - pop {r4, pc} - thumb_func_end sub_0203B904 - - thumb_func_start sub_0203B91C -sub_0203B91C: ; 0x0203B91C - mov r0, #0x80 - bx lr - thumb_func_end sub_0203B91C - - thumb_func_start sub_0203B920 -sub_0203B920: ; 0x0203B920 - mov r0, #5 - lsl r0, r0, #0xa - bx lr - .balign 4, 0 - thumb_func_end sub_0203B920 - - thumb_func_start sub_0203B928 -sub_0203B928: ; 0x0203B928 - ldr r3, _0203B934 ; =sub_020D47EC - mov r2, #5 - add r1, r0, #0 - mov r0, #0 - lsl r2, r2, #0xa - bx r3 - .balign 4, 0 -_0203B934: .word sub_020D47EC - thumb_func_end sub_0203B928 - - thumb_func_start sub_0203B938 -sub_0203B938: ; 0x0203B938 - push {r4, lr} - add r4, r0, #0 - mov r1, #0 - mov r2, #0x80 - bl memset - add r0, r4, #0 - add r0, #0x6c - bl sub_0205C7BC - bl sub_0203BA70 - add r4, #0x68 - strh r0, [r4] - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203B938 - - thumb_func_start sub_0203B958 -sub_0203B958: ; 0x0203B958 - bx lr - .balign 4, 0 - thumb_func_end sub_0203B958 - - thumb_func_start sub_0203B95C -sub_0203B95C: ; 0x0203B95C - add r0, #0x14 - bx lr - thumb_func_end sub_0203B95C - - thumb_func_start sub_0203B960 -sub_0203B960: ; 0x0203B960 - add r0, #0x28 - bx lr - thumb_func_end sub_0203B960 - - thumb_func_start sub_0203B964 -sub_0203B964: ; 0x0203B964 - add r0, #0x50 - bx lr - thumb_func_end sub_0203B964 - - thumb_func_start sub_0203B968 -sub_0203B968: ; 0x0203B968 - add r0, #0x3c - bx lr - thumb_func_end sub_0203B968 - - thumb_func_start sub_0203B96C -sub_0203B96C: ; 0x0203B96C - add r3, r1, #0 - add r2, r0, #0 - ldmia r3!, {r0, r1} - add r2, #0x3c - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldr r0, [r3] - str r0, [r2] - bx lr - thumb_func_end sub_0203B96C - - thumb_func_start sub_0203B980 -sub_0203B980: ; 0x0203B980 - add r0, #0x64 - bx lr - thumb_func_end sub_0203B980 - - thumb_func_start sub_0203B984 -sub_0203B984: ; 0x0203B984 - add r0, #0x66 - ldrh r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B984 - - thumb_func_start sub_0203B98C -sub_0203B98C: ; 0x0203B98C - add r0, #0x66 - strh r1, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B98C - - thumb_func_start sub_0203B994 -sub_0203B994: ; 0x0203B994 - add r0, #0x68 - ldrh r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B994 - - thumb_func_start sub_0203B99C -sub_0203B99C: ; 0x0203B99C - add r0, #0x68 - strh r1, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B99C - - thumb_func_start sub_0203B9A4 -sub_0203B9A4: ; 0x0203B9A4 - add r0, #0x6a - ldrb r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B9A4 - - thumb_func_start sub_0203B9AC -sub_0203B9AC: ; 0x0203B9AC - add r0, #0x6a - strb r1, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0203B9AC - - thumb_func_start sub_0203B9B4 -sub_0203B9B4: ; 0x0203B9B4 - add r0, #0x6c - bx lr - thumb_func_end sub_0203B9B4 - - thumb_func_start sub_0203B9B8 -sub_0203B9B8: ; 0x0203B9B8 - add r0, #0x78 - bx lr - thumb_func_end sub_0203B9B8 - - thumb_func_start sub_0203B9BC -sub_0203B9BC: ; 0x0203B9BC - add r0, #0x76 - bx lr - thumb_func_end sub_0203B9BC - - thumb_func_start sub_0203B9C0 -sub_0203B9C0: ; 0x0203B9C0 - add r0, #0x74 - bx lr - thumb_func_end sub_0203B9C0 - - thumb_func_start sub_0203B9C4 -sub_0203B9C4: ; 0x0203B9C4 - ldr r3, _0203B9CC ; =SavArray_get - mov r1, #5 - bx r3 - nop -_0203B9CC: .word SavArray_get - thumb_func_end sub_0203B9C4 - - thumb_func_start sub_0203B9D0 -sub_0203B9D0: ; 0x0203B9D0 - ldr r3, _0203B9D8 ; =SavArray_get - mov r1, #0xa - bx r3 - nop -_0203B9D8: .word SavArray_get - thumb_func_end sub_0203B9D0 - - thumb_func_start sub_0203B9DC -sub_0203B9DC: ; 0x0203B9DC - push {r4, lr} - add r4, r0, #0 - ldr r0, [r4, #0xc] - bl sub_0203B9D0 - add r2, r0, #0 - ldr r1, [r4, #0x3c] - add r0, r4, #0 - mov r3, #0x40 - bl sub_0205E5EC - pop {r4, pc} - thumb_func_end sub_0203B9DC - - thumb_func_start sub_0203B9F4 -sub_0203B9F4: ; 0x0203B9F4 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - ldr r0, [r5, #0xc] - bl sub_0203B9D0 - ldr r2, _0203BA54 ; =0x000003CF - mov r1, #0x40 - add r7, r0, #0 - bl sub_0205FD00 - add r4, r0, #0 - beq _0203BA48 - ldrb r0, [r4, #8] - cmp r0, #0xfd - bne _0203BA48 - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - bl sub_02054388 - str r0, [sp] - mov r1, #5 - mov r2, #0 - bl GetMonData - add r6, r0, #0 - ldr r0, [sp] - mov r1, #0x70 - mov r2, #0 - bl GetMonData - mov r1, #0x7b - lsl r1, r1, #2 - cmp r6, r1 - beq _0203BA40 - bl GF_AssertFail - b _0203BA48 -_0203BA40: - cmp r0, #0 - bne _0203BA48 - ldr r0, _0203BA58 ; =0x000003CE - strh r0, [r4, #0x12] -_0203BA48: - ldr r0, [r5, #0x3c] - add r1, r7, #0 - mov r2, #0x40 - bl sub_0205E648 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203BA54: .word 0x000003CF -_0203BA58: .word 0x000003CE - thumb_func_end sub_0203B9F4 - - thumb_func_start sub_0203BA5C -sub_0203BA5C: ; 0x0203BA5C - push {r3, lr} - cmp r0, #0 - ble _0203BA66 - cmp r0, #0x1e - bls _0203BA6C -_0203BA66: - bl GF_AssertFail - mov r0, #1 -_0203BA6C: - sub r0, r0, #1 - pop {r3, pc} - thumb_func_end sub_0203BA5C - - thumb_func_start sub_0203BA70 -sub_0203BA70: ; 0x0203BA70 - mov r0, #1 - bx lr - thumb_func_end sub_0203BA70 - - thumb_func_start sub_0203BA74 -sub_0203BA74: ; 0x0203BA74 - push {r4, lr} - add r4, r1, #0 - bl sub_0203BA5C - add r1, r0, #0 - mov r2, #0x12 - mul r1, r2 - ldr r0, _0203BAA0 ; =0x020F9E86 - sub r2, #0x13 - ldrh r0, [r0, r1] - str r0, [r4] - ldr r0, _0203BAA4 ; =0x020F9E88 - str r2, [r4, #4] - ldrh r0, [r0, r1] - str r0, [r4, #8] - ldr r0, _0203BAA8 ; =0x020F9E8A - ldrh r0, [r0, r1] - str r0, [r4, #0xc] - mov r0, #1 - str r0, [r4, #0x10] - pop {r4, pc} - nop -_0203BAA0: .word 0x020F9E86 -_0203BAA4: .word 0x020F9E88 -_0203BAA8: .word 0x020F9E8A - thumb_func_end sub_0203BA74 - - thumb_func_start sub_0203BAAC -sub_0203BAAC: ; 0x0203BAAC - push {r4, lr} - add r4, r1, #0 - bl sub_0203BA5C - add r2, r0, #0 - mov r1, #0x12 - mul r2, r1 - ldr r0, _0203BAE0 ; =0x020F9E82 - sub r1, #0x13 - ldrh r0, [r0, r2] - str r0, [r4] - ldr r0, _0203BAE4 ; =0x020F9E80 - str r1, [r4, #4] - add r1, r0, r2 - ldrh r0, [r1, #4] - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - str r0, [r4, #8] - ldrh r0, [r1, #4] - lsl r0, r0, #0x10 - lsr r0, r0, #0x18 - str r0, [r4, #0xc] - mov r0, #0 - str r0, [r4, #0x10] - pop {r4, pc} - nop -_0203BAE0: .word 0x020F9E82 -_0203BAE4: .word 0x020F9E80 - thumb_func_end sub_0203BAAC - - thumb_func_start sub_0203BAE8 -sub_0203BAE8: ; 0x0203BAE8 - push {r4, lr} - add r4, r1, #0 - bl sub_0203BA5C - add r1, r0, #0 - mov r2, #0x12 - mul r1, r2 - ldr r0, _0203BB14 ; =0x020F9E8C - sub r2, #0x13 - ldrh r0, [r0, r1] - str r0, [r4] - ldr r0, _0203BB18 ; =0x020F9E8E - str r2, [r4, #4] - ldrh r0, [r0, r1] - str r0, [r4, #8] - ldr r0, _0203BB1C ; =0x020F9E90 - ldrh r0, [r0, r1] - str r0, [r4, #0xc] - mov r0, #1 - str r0, [r4, #0x10] - pop {r4, pc} - nop -_0203BB14: .word 0x020F9E8C -_0203BB18: .word 0x020F9E8E -_0203BB1C: .word 0x020F9E90 - thumb_func_end sub_0203BAE8 - - thumb_func_start sub_0203BB20 -sub_0203BB20: ; 0x0203BB20 - push {r3, r4} - ldr r3, _0203BB4C ; =0x020F9E80 - mov r2, #0 - add r4, r3, #0 -_0203BB28: - ldrh r1, [r3, #2] - cmp r0, r1 - bne _0203BB3C - ldrh r1, [r4] - lsl r1, r1, #0x17 - lsr r1, r1, #0x1f - beq _0203BB3C - add r0, r2, #1 - pop {r3, r4} - bx lr -_0203BB3C: - add r2, r2, #1 - add r3, #0x12 - add r4, #0x12 - cmp r2, #0x1e - blo _0203BB28 - mov r0, #0 - pop {r3, r4} - bx lr - .balign 4, 0 -_0203BB4C: .word 0x020F9E80 - thumb_func_end sub_0203BB20 - - thumb_func_start sub_0203BB50 -sub_0203BB50: ; 0x0203BB50 - ldr r3, _0203BB6C ; =0x020F9E80 - mov r2, #0 -_0203BB54: - ldrh r1, [r3, #6] - cmp r0, r1 - bne _0203BB5E - add r0, r2, #1 - bx lr -_0203BB5E: - add r2, r2, #1 - add r3, #0x12 - cmp r2, #0x1e - blo _0203BB54 - mov r0, #0 - bx lr - nop -_0203BB6C: .word 0x020F9E80 - thumb_func_end sub_0203BB50 - - thumb_func_start sub_0203BB70 -sub_0203BB70: ; 0x0203BB70 - push {r3, r4, r5, lr} - ldr r2, _0203BBB0 ; =0x020F9E80 - mov r4, #0 - add r3, r2, #0 -_0203BB78: - ldrh r5, [r2, #6] - cmp r1, r5 - bne _0203BBA2 - ldrh r5, [r3] - lsl r5, r5, #0x16 - lsr r5, r5, #0x1f - beq _0203BBA2 - ldr r0, [r0, #0xc] - bl sub_020503D0 - mov r2, #0x12 - add r3, r4, #0 - mul r3, r2 - ldr r2, _0203BBB0 ; =0x020F9E80 - mov r1, #1 - ldrh r2, [r2, r3] - lsl r2, r2, #0x18 - lsr r2, r2, #0x18 - bl sub_02066930 - pop {r3, r4, r5, pc} -_0203BBA2: - add r4, r4, #1 - add r2, #0x12 - add r3, #0x12 - cmp r4, #0x1e - blo _0203BB78 - pop {r3, r4, r5, pc} - nop -_0203BBB0: .word 0x020F9E80 - thumb_func_end sub_0203BB70 - - thumb_func_start sub_0203BBB4 -sub_0203BBB4: ; 0x0203BBB4 - push {r3, r4, r5, r6, r7, lr} - add r5, r1, #0 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203B3E4 - ldr r1, _0203BC08 ; =0x000001D1 - add r7, r0, #0 - cmp r5, r1 - bne _0203BC04 - ldr r0, [r4, #0xc] - bl Sav2_SysInfo_RTC_get - add r3, r0, #0 - ldr r5, [r3, #8] - ldr r1, _0203BC0C ; =0x020FA09C - mov r2, #0 -_0203BBD6: - lsl r6, r2, #1 - add r0, r1, r6 - ldrb r6, [r1, r6] - ldrb r0, [r0, #1] - cmp r5, r6 - bne _0203BBF8 - ldr r6, [r3, #0xc] - cmp r6, r0 - bne _0203BBF8 - add r0, r4, #0 - bl sub_02055670 - cmp r0, #0 - bne _0203BBF4 - mov r7, #8 -_0203BBF4: - add r0, r7, #0 - pop {r3, r4, r5, r6, r7, pc} -_0203BBF8: - add r0, r2, #1 - lsl r0, r0, #0x18 - lsr r2, r0, #0x18 - cmp r2, #8 - blo _0203BBD6 - add r0, r7, #0 -_0203BC04: - pop {r3, r4, r5, r6, r7, pc} - nop -_0203BC08: .word 0x000001D1 -_0203BC0C: .word 0x020FA09C - thumb_func_end sub_0203BBB4 - - thumb_func_start sub_0203BC10 -sub_0203BC10: ; 0x0203BC10 - push {r3, lr} - ldr r0, [r0, #0x20] - ldr r0, [r0] - bl sub_0203B36C - cmp r0, #0 - beq _0203BC22 - mov r0, #1 - pop {r3, pc} -_0203BC22: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203BC10 - - thumb_func_start sub_0203BC28 -sub_0203BC28: ; 0x0203BC28 - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_0203BE34 - add r4, r0, #0 - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_02066860 - cmp r0, #1 - bne _0203BC4E - add r0, r5, #0 - bl sub_0203BECC - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - b _0203BCAA -_0203BC4E: - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_02066870 - cmp r0, #1 - bne _0203BC6A - add r0, r5, #0 - bl sub_0203BED0 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - b _0203BCAA -_0203BC6A: - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_020668A0 - cmp r0, #1 - bne _0203BC86 - add r0, r5, #0 - bl sub_0203BED4 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - b _0203BCAA -_0203BC86: - add r0, r5, #0 - bl sub_02067584 - cmp r0, #1 - bne _0203BC9E - add r0, r5, #0 - bl sub_0203BED8 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - b _0203BCAA -_0203BC9E: - add r0, r5, #0 - bl sub_0203BE60 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] -_0203BCAA: - mov r0, #0x35 - mov r1, #0 - lsl r0, r0, #4 - str r1, [r4, r0] - ldr r0, [r5, #0x40] - bl sub_0205CF60 - cmp r0, #1 - bne _0203BCCA - ldr r0, [r5, #0x40] - bl sub_0205C654 - add r1, r0, #0 - ldr r0, [r5, #0x40] - bl sub_0205CFBC -_0203BCCA: - ldr r1, _0203BCD8 ; =sub_0203BEF0 - add r0, r5, #0 - add r2, r4, #0 - bl sub_020504F0 - pop {r3, r4, r5, pc} - nop -_0203BCD8: .word sub_0203BEF0 - thumb_func_end sub_0203BC28 - - thumb_func_start sub_0203BCDC -sub_0203BCDC: ; 0x0203BCDC - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_0203BE34 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203BEE0 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - mov r2, #1 - add r0, r1, #4 - str r2, [r4, r0] - ldr r0, [r5, #0x40] - bl sub_0205CF60 - cmp r0, #1 - bne _0203BD10 - ldr r0, [r5, #0x40] - bl sub_0205C654 - add r1, r0, #0 - ldr r0, [r5, #0x40] - bl sub_0205CFBC -_0203BD10: - ldr r1, _0203BD1C ; =sub_0203BEF0 - add r0, r5, #0 - add r2, r4, #0 - bl sub_020504F0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203BD1C: .word sub_0203BEF0 - thumb_func_end sub_0203BCDC - - thumb_func_start sub_0203BD20 -sub_0203BD20: ; 0x0203BD20 - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_0203BE34 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203BEE8 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - mov r2, #0 - add r0, r1, #4 - str r2, [r4, r0] - ldr r0, [r5, #0x40] - bl sub_0205CF60 - cmp r0, #1 - bne _0203BD54 - ldr r0, [r5, #0x40] - bl sub_0205C654 - add r1, r0, #0 - ldr r0, [r5, #0x40] - bl sub_0205CFBC -_0203BD54: - ldr r1, _0203BD60 ; =sub_0203BEF0 - add r0, r5, #0 - add r2, r4, #0 - bl sub_020504F0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203BD60: .word sub_0203BEF0 - thumb_func_end sub_0203BD20 - - thumb_func_start sub_0203BD64 -sub_0203BD64: ; 0x0203BD64 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, _0203BE2C ; =0x000005FC - bl PlaySE - bl sub_0203BE34 - add r4, r0, #0 - mov r0, #0x35 - mov r1, #0 - lsl r0, r0, #4 - str r1, [r4, r0] - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_02066860 - cmp r0, #1 - bne _0203BD98 - add r0, r5, #0 - bl sub_0203BECC - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - b _0203BE20 -_0203BD98: - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_02066870 - cmp r0, #1 - bne _0203BDB4 - add r0, r5, #0 - bl sub_0203BED0 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - b _0203BE20 -_0203BDB4: - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_020668A0 - cmp r0, #1 - bne _0203BDD0 - add r0, r5, #0 - bl sub_0203BED4 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - b _0203BE20 -_0203BDD0: - add r0, r5, #0 - bl sub_02067584 - cmp r0, #1 - bne _0203BDE8 - add r0, r5, #0 - bl sub_0203BED8 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - b _0203BE20 -_0203BDE8: - ldr r0, [r5, #0x70] - cmp r0, #3 - bne _0203BDFC - add r0, r5, #0 - bl sub_0203BEE8 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - b _0203BE20 -_0203BDFC: - cmp r0, #2 - bne _0203BE14 - add r0, r5, #0 - bl sub_0203BEE0 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] - mov r2, #1 - add r0, r1, #4 - str r2, [r4, r0] - b _0203BE20 -_0203BE14: - add r0, r5, #0 - bl sub_0203BE60 - mov r1, #0xd3 - lsl r1, r1, #2 - str r0, [r4, r1] -_0203BE20: - ldr r0, [r5, #0x10] - ldr r1, _0203BE30 ; =sub_0203BEF0 - add r2, r4, #0 - bl sub_02050510 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203BE2C: .word 0x000005FC -_0203BE30: .word sub_0203BEF0 - thumb_func_end sub_0203BD64 - - thumb_func_start sub_0203BE34 -sub_0203BE34: ; 0x0203BE34 - push {r4, lr} - mov r1, #0xe3 - mov r0, #0xb - lsl r1, r1, #2 - bl AllocFromHeap - add r4, r0, #0 - mov r2, #0xe3 - mov r0, #0 - add r1, r4, #0 - lsl r2, r2, #2 - bl MIi_CpuClearFast - mov r1, #0 - strh r1, [r4, #0x26] - mov r0, #0xe - strh r1, [r4, #0x24] - lsl r0, r0, #6 - str r1, [r4, r0] - add r0, r4, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203BE34 - - thumb_func_start sub_0203BE60 -sub_0203BE60: ; 0x0203BE60 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, [r5, #0xc] - mov r4, #0 - bl sub_020503D0 - bl sub_02066974 - cmp r0, #0 - bne _0203BE78 - mov r0, #1 - orr r4, r0 -_0203BE78: - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_0206695C - cmp r0, #0 - bne _0203BE8A - mov r0, #2 - orr r4, r0 -_0203BE8A: - ldr r0, [r5, #0xc] - bl sub_020503D0 - mov r1, #0 - bl sub_02066980 - cmp r0, #0 - bne _0203BE9E - mov r0, #4 - orr r4, r0 -_0203BE9E: - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_02066968 - cmp r0, #0 - bne _0203BEB2 - mov r0, #2 - lsl r0, r0, #8 - orr r4, r0 -_0203BEB2: - ldr r0, [r5, #0x20] - ldr r0, [r0] - bl sub_0203B5D8 - cmp r0, #1 - bne _0203BEC2 - mov r0, #6 - orr r4, r0 -_0203BEC2: - mov r0, #6 - lsl r0, r0, #6 - orr r0, r4 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203BE60 - - thumb_func_start sub_0203BECC -sub_0203BECC: ; 0x0203BECC - mov r0, #0x90 - bx lr - thumb_func_end sub_0203BECC - - thumb_func_start sub_0203BED0 -sub_0203BED0: ; 0x0203BED0 - mov r0, #0x94 - bx lr - thumb_func_end sub_0203BED0 - - thumb_func_start sub_0203BED4 -sub_0203BED4: ; 0x0203BED4 - mov r0, #0x94 - bx lr - thumb_func_end sub_0203BED4 - - thumb_func_start sub_0203BED8 -sub_0203BED8: ; 0x0203BED8 - ldr r0, _0203BEDC ; =0x00000395 - bx lr - .balign 4, 0 -_0203BEDC: .word 0x00000395 - thumb_func_end sub_0203BED8 - - thumb_func_start sub_0203BEE0 -sub_0203BEE0: ; 0x0203BEE0 - mov r0, #0x11 - lsl r0, r0, #4 - bx lr - .balign 4, 0 - thumb_func_end sub_0203BEE0 - - thumb_func_start sub_0203BEE8 -sub_0203BEE8: ; 0x0203BEE8 - ldr r0, _0203BEEC ; =0x00000391 - bx lr - .balign 4, 0 -_0203BEEC: .word 0x00000391 - thumb_func_end sub_0203BEE8 - - thumb_func_start sub_0203BEF0 -sub_0203BEF0: ; 0x0203BEF0 - push {r4, r5, r6, lr} - add r6, r0, #0 - bl sub_0205064C - add r4, r0, #0 - add r0, r6, #0 - bl sub_02050650 - add r5, r0, #0 - ldrh r1, [r5, #0x26] - cmp r1, #0x14 - bls _0203BF0A - b _0203C136 -_0203BF0A: - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0203BF16: ; jump table - .short _0203BF40 - _0203BF16 - 2 ; case 0 - .short _0203BF60 - _0203BF16 - 2 ; case 1 - .short _0203BF96 - _0203BF16 - 2 ; case 2 - .short _0203BFE2 - _0203BF16 - 2 ; case 3 - .short _0203BFF0 - _0203BF16 - 2 ; case 4 - .short _0203BFF8 - _0203BF16 - 2 ; case 5 - .short _0203C000 - _0203BF16 - 2 ; case 6 - .short _0203C008 - _0203BF16 - 2 ; case 7 - .short _0203C010 - _0203BF16 - 2 ; case 8 - .short _0203C018 - _0203BF16 - 2 ; case 9 - .short _0203C054 - _0203BF16 - 2 ; case 10 - .short _0203C06A - _0203BF16 - 2 ; case 11 - .short _0203C08A - _0203BF16 - 2 ; case 12 - .short _0203C0A6 - _0203BF16 - 2 ; case 13 - .short _0203C0C6 - _0203BF16 - 2 ; case 14 - .short _0203C020 - _0203BF16 - 2 ; case 15 - .short _0203C0E0 - _0203BF16 - 2 ; case 16 - .short _0203C11A - _0203BF16 - 2 ; case 17 - .short _0203C0D2 - _0203BF16 - 2 ; case 18 - .short _0203C128 - _0203BF16 - 2 ; case 19 - .short _0203C130 - _0203BF16 - 2 ; case 20 -_0203BF40: - ldr r0, [r4, #0x3c] - bl sub_0205F574 - add r0, r4, #0 - bl ov01_021F6B00 - cmp r0, #0 - beq _0203BF60 - mov r1, #0 - add r0, r4, #0 - add r2, r1, #0 - bl ov01_021F6A9C - mov r0, #2 - strh r0, [r5, #0x26] - b _0203C136 -_0203BF60: - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r4, #0 - add r1, r5, r1 - bl sub_020649B8 - mov r1, #0x37 - lsl r1, r1, #4 - add r0, r4, #0 - add r1, r5, r1 - bl sub_02067E10 - add r0, r6, #0 - bl sub_0203C14C - add r0, r4, #0 - add r0, #0xd2 - ldrb r1, [r0] - mov r0, #0x3f - add r4, #0xd2 - bic r1, r0 - mov r0, #1 - orr r0, r1 - strb r0, [r4] - mov r0, #3 - strh r0, [r5, #0x26] - b _0203C136 -_0203BF96: - add r0, r4, #0 - bl ov01_021F6B10 - cmp r0, #6 - bne _0203BFBA - add r0, r6, #0 - bl sub_0203C14C - add r0, r4, #0 - add r0, #0xd2 - ldrb r1, [r0] - mov r0, #0x3f - add r4, #0xd2 - bic r1, r0 - mov r0, #1 - orr r0, r1 - strb r0, [r4] - b _0203C136 -_0203BFBA: - add r0, r4, #0 - bl ov01_021F6B10 - cmp r0, #1 - bne _0203C02A - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r4, #0 - add r1, r5, r1 - bl sub_020649B8 - mov r1, #0x37 - lsl r1, r1, #4 - add r0, r4, #0 - add r1, r5, r1 - bl sub_02067E10 - mov r0, #3 - strh r0, [r5, #0x26] - b _0203C136 -_0203BFE2: - add r0, r6, #0 - bl sub_0203C47C - cmp r0, #0 - bne _0203C02A - mov r0, #0 - pop {r4, r5, r6, pc} -_0203BFF0: - add r0, r6, #0 - bl sub_0203C870 - b _0203C136 -_0203BFF8: - add r0, r6, #0 - bl sub_0203C8B0 - b _0203C136 -_0203C000: - add r0, r6, #0 - bl sub_0203D264 - b _0203C136 -_0203C008: - add r0, r6, #0 - bl sub_0203D288 - b _0203C136 -_0203C010: - add r0, r6, #0 - bl sub_0203D9E8 - b _0203C136 -_0203C018: - add r0, r6, #0 - bl sub_0203DAE4 - b _0203C136 -_0203C020: - add r0, r4, #0 - bl sub_020505C8 - cmp r0, #0 - bne _0203C02C -_0203C02A: - b _0203C136 -_0203C02C: - ldr r0, [r4, #0x3c] - bl sub_0205F574 - add r0, r6, #0 - bl sub_0203C14C - add r0, r4, #0 - add r0, #0xd2 - ldrb r1, [r0] - mov r0, #0x3f - add r4, #0xd2 - bic r1, r0 - mov r0, #1 - orr r1, r0 - strb r1, [r4] - bl ov01_021E636C - mov r0, #0x11 - strh r0, [r5, #0x26] - b _0203C136 -_0203C054: - add r0, r4, #0 - bl sub_020505C8 - cmp r0, #0 - beq _0203C136 - mov r0, #1 - bl ov01_021E636C - mov r0, #0xb - strh r0, [r5, #0x26] - b _0203C136 -_0203C06A: - bl sub_0200FB5C - cmp r0, #0 - beq _0203C136 - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203C69C - add r0, r5, #0 - bl FreeToHeap - ldr r0, [r4, #0x3c] - bl sub_0205F5A4 - mov r0, #1 - pop {r4, r5, r6, pc} -_0203C08A: - add r0, r4, #0 - bl sub_020505C8 - cmp r0, #0 - beq _0203C136 - ldr r0, [r4, #0x3c] - bl sub_0205F574 - mov r0, #1 - bl ov01_021E636C - mov r0, #0xd - strh r0, [r5, #0x26] - b _0203C136 -_0203C0A6: - bl sub_0200FB5C - cmp r0, #0 - beq _0203C136 - mov r2, #0xd5 - lsl r2, r2, #2 - ldr r1, [r5, r2] - add r2, #0x2c - ldr r2, [r5, r2] - add r0, r6, #0 - bl sub_02050510 - add r0, r5, #0 - bl FreeToHeap - b _0203C136 -_0203C0C6: - mov r1, #0xd5 - lsl r1, r1, #2 - ldr r1, [r5, r1] - add r0, r6, #0 - blx r1 - b _0203C136 -_0203C0D2: - bl FreeToHeap - ldr r0, [r4, #0x3c] - bl sub_0205F5A4 - mov r0, #1 - pop {r4, r5, r6, pc} -_0203C0E0: - add r1, r4, #0 - bl sub_0203C69C - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203C38C - add r0, r4, #0 - add r0, #0xd2 - ldrb r1, [r0] - mov r0, #0x3f - bic r1, r0 - mov r0, #2 - orr r1, r0 - add r0, r4, #0 - add r0, #0xd2 - strb r1, [r0] - ldr r0, [r4, #8] - mov r1, #3 - bl ScheduleBgTilemapBufferTransfer - add r0, r5, #0 - bl FreeToHeap - ldr r0, [r4, #0x3c] - bl sub_0205F5A4 - mov r0, #1 - pop {r4, r5, r6, pc} -_0203C11A: - bl sub_0200FB5C - cmp r0, #0 - beq _0203C136 - mov r0, #3 - strh r0, [r5, #0x26] - b _0203C136 -_0203C128: - add r0, r6, #0 - bl sub_0203D2EC - b _0203C136 -_0203C130: - add r0, r6, #0 - bl sub_0203D304 -_0203C136: - ldr r0, [r5, #0x20] - cmp r0, #0 - beq _0203C146 - mov r0, #0x75 - lsl r0, r0, #2 - ldr r0, [r5, r0] - bl sub_0202457C -_0203C146: - mov r0, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203BEF0 - - thumb_func_start sub_0203C14C -sub_0203C14C: ; 0x0203C14C - push {r4, r5, r6, lr} - sub sp, #0x10 - add r5, r0, #0 - bl sub_0205064C - add r4, r0, #0 - add r0, r5, #0 - bl sub_02050650 - add r5, r0, #0 - add r1, r5, #0 - add r2, r5, #0 - add r1, #0x30 - add r2, #0x3a - bl sub_0203C220 - add r6, r0, #0 - ldr r0, _0203C1F8 ; =0x00000000 - str r6, [r5, #0x2c] - strh r0, [r5, #0x24] - beq _0203C18E -_0203C176: - add r1, r4, #0 - add r1, #0x90 - ldr r2, [r1] - add r1, r5, r0 - add r1, #0x30 - ldrb r1, [r1] - cmp r2, r1 - bne _0203C188 - strh r0, [r5, #0x24] -_0203C188: - add r0, r0, #1 - cmp r0, r6 - blo _0203C176 -_0203C18E: - mov r1, #1 - str r1, [r5, #0x20] - mov r0, #0 - str r0, [sp] - str r0, [sp, #4] - str r1, [sp, #8] - mov r0, #0xb - str r0, [sp, #0xc] - ldr r2, [r4, #8] - mov r0, #0xe - mov r1, #0xc - mov r3, #3 - bl GfGfxLoader_LoadCharData - mov r0, #0x20 - str r0, [sp] - mov r0, #0xb - str r0, [sp, #4] - mov r0, #0xe - mov r1, #0xf - mov r2, #0 - lsl r3, r0, #5 - bl GfGfxLoader_GXLoadPal - mov r0, #0 - str r0, [sp] - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r0, #0xb - str r0, [sp, #0xc] - ldr r2, [r4, #8] - mov r0, #0xe - mov r1, #0xd - mov r3, #3 - bl GfGfxLoader_LoadScrnData - ldr r0, [r4, #0xc] - bl Sav2_PlayerData_GetProfileAddr - bl PlayerProfile_GetTrainerGender - add r3, r0, #0 - add r0, r5, #0 - add r5, #0x30 - lsl r3, r3, #0x18 - add r1, r5, #0 - add r2, r6, #0 - lsr r3, r3, #0x18 - bl sub_0203C6C8 - add sp, #0x10 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203C1F8: .word 0x00000000 - thumb_func_end sub_0203C14C - - thumb_func_start sub_0203C1FC -sub_0203C1FC: ; 0x0203C1FC - push {r3, r4} - ldr r4, [r2] - strb r3, [r0, r4] - mov r0, #0 - ldr r4, [sp, #8] - mvn r0, r0 - cmp r4, r0 - bne _0203C210 - ldr r0, [r2] - str r0, [sp, #8] -_0203C210: - ldr r0, [sp, #8] - strb r3, [r1, r0] - ldr r0, [r2] - add r0, r0, #1 - str r0, [r2] - pop {r3, r4} - bx lr - .balign 4, 0 - thumb_func_end sub_0203C1FC - - thumb_func_start sub_0203C220 -sub_0203C220: ; 0x0203C220 - push {r4, r5, r6, lr} - sub sp, #8 - add r5, r0, #0 - add r4, r1, #0 - mov r0, #0 - mov r1, #0xd3 - str r0, [sp, #4] - lsl r1, r1, #2 - add r6, r2, #0 - ldr r2, [r5, r1] - mov r1, #1 - lsl r1, r1, #8 - tst r1, r2 - bne _0203C24C - sub r0, r0, #1 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #8 - bl sub_0203C1FC -_0203C24C: - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r1, [r5, r0] - mov r0, #0x80 - tst r1, r0 - bne _0203C268 - sub r0, #0x81 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #7 - bl sub_0203C1FC -_0203C268: - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r1, [r5, r0] - mov r0, #1 - tst r1, r0 - bne _0203C284 - sub r0, r0, #2 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #0 - bl sub_0203C1FC -_0203C284: - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r1, [r5, r0] - mov r0, #2 - tst r1, r0 - bne _0203C2A0 - sub r0, r0, #3 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #1 - bl sub_0203C1FC -_0203C2A0: - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r1, [r5, r0] - mov r0, #4 - tst r1, r0 - bne _0203C2BC - sub r0, r0, #5 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #2 - bl sub_0203C1FC -_0203C2BC: - mov r0, #0xd3 - lsl r0, r0, #2 - mov r1, #2 - ldr r2, [r5, r0] - lsl r1, r1, #8 - tst r1, r2 - bne _0203C2F6 - add r0, r0, #4 - ldr r0, [r5, r0] - add r2, sp, #4 - cmp r0, #0 - beq _0203C2E6 - mov r0, #0 - mvn r0, r0 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - mov r3, #0xc - bl sub_0203C1FC - b _0203C2F6 -_0203C2E6: - mov r0, #0 - mvn r0, r0 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - mov r3, #0xb - bl sub_0203C1FC -_0203C2F6: - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r1, [r5, r0] - mov r0, #8 - tst r1, r0 - bne _0203C312 - sub r0, #9 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #3 - bl sub_0203C1FC -_0203C312: - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r1, [r5, r0] - mov r0, #0x10 - tst r1, r0 - bne _0203C32E - sub r0, #0x11 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #4 - bl sub_0203C1FC -_0203C32E: - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r1, [r5, r0] - mov r0, #0x20 - tst r1, r0 - bne _0203C34A - sub r0, #0x21 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #5 - bl sub_0203C1FC -_0203C34A: - mov r0, #0xd3 - lsl r0, r0, #2 - ldr r1, [r5, r0] - mov r0, #0x40 - tst r1, r0 - bne _0203C366 - sub r0, #0x41 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #6 - bl sub_0203C1FC -_0203C366: - mov r0, #7 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #9 - bl sub_0203C1FC - mov r0, #8 - str r0, [sp] - add r0, r4, #0 - add r1, r6, #0 - add r2, sp, #4 - mov r3, #0xa - bl sub_0203C1FC - ldr r0, [sp, #4] - add sp, #8 - pop {r4, r5, r6, pc} - thumb_func_end sub_0203C220 - - thumb_func_start sub_0203C38C -sub_0203C38C: ; 0x0203C38C - push {r3, r4, r5, lr} - sub sp, #0x10 - add r5, r0, #0 - add r4, r1, #0 - bl sub_0203C830 - mov r2, #0 - str r2, [sp] - mov r0, #0x20 - str r0, [sp, #4] - mov r0, #0x18 - str r0, [sp, #8] - str r2, [sp, #0xc] - ldr r0, [r4, #8] - mov r1, #3 - add r3, r2, #0 - bl FillBgTilemapRect - mov r0, #0 - str r0, [r5, #0x20] - add sp, #0x10 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203C38C - - thumb_func_start sub_0203C3B8 -sub_0203C3B8: ; 0x0203C3B8 - lsl r2, r1, #2 - ldr r1, _0203C3C4 ; =0x020FA0C4 - ldr r3, _0203C3C8 ; =sub_0203C3CC - ldr r1, [r1, r2] - bx r3 - nop -_0203C3C4: .word 0x020FA0C4 -_0203C3C8: .word sub_0203C3CC - thumb_func_end sub_0203C3B8 - - thumb_func_start sub_0203C3CC -sub_0203C3CC: ; 0x0203C3CC - push {r3, lr} - cmp r1, #7 - bhi _0203C45A - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0203C3DE: ; jump table - .short _0203C3EE - _0203C3DE - 2 ; case 0 - .short _0203C3FA - _0203C3DE - 2 ; case 1 - .short _0203C406 - _0203C3DE - 2 ; case 2 - .short _0203C414 - _0203C3DE - 2 ; case 3 - .short _0203C420 - _0203C3DE - 2 ; case 4 - .short _0203C42E - _0203C3DE - 2 ; case 5 - .short _0203C43C - _0203C3DE - 2 ; case 6 - .short _0203C44A - _0203C3DE - 2 ; case 7 -_0203C3EE: - ldr r0, [r0, #0xc] - bl sub_020503D0 - bl sub_02066974 - pop {r3, pc} -_0203C3FA: - ldr r0, [r0, #0xc] - bl sub_020503D0 - bl sub_0206695C - pop {r3, pc} -_0203C406: - ldr r0, [r0, #0xc] - bl sub_020503D0 - mov r1, #0 - bl sub_02066980 - pop {r3, pc} -_0203C414: - ldr r0, [r0, #0xc] - bl sub_020503D0 - bl sub_02066968 - pop {r3, pc} -_0203C420: - ldr r0, [r0, #0xc] - bl sub_020503D0 - mov r1, #1 - bl sub_02066980 - pop {r3, pc} -_0203C42E: - ldr r0, [r0, #0xc] - bl sub_020503D0 - mov r1, #2 - bl sub_02066980 - pop {r3, pc} -_0203C43C: - ldr r0, [r0, #0xc] - bl sub_020503D0 - mov r1, #3 - bl sub_02066980 - pop {r3, pc} -_0203C44A: - ldr r0, [r0, #0xc] - bl sub_0203B9C4 - bl sub_0203B9B4 - bl sub_0205C7C8 - pop {r3, pc} -_0203C45A: - mov r0, #1 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203C3CC - - thumb_func_start sub_0203C460 -sub_0203C460: ; 0x0203C460 - push {r3, lr} - add r1, r0, #0 - add r1, #0xe0 - ldr r1, [r1] - cmp r1, #4 - beq _0203C47A - cmp r1, #0xb - beq _0203C47A - mov r1, #0x45 - lsl r1, r1, #2 - ldr r0, [r0, r1] - bl sub_02092FA8 -_0203C47A: - pop {r3, pc} - thumb_func_end sub_0203C460 - - thumb_func_start sub_0203C47C -sub_0203C47C: ; 0x0203C47C - push {r4, r5, r6, lr} - add r6, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r6, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl ov01_021F6B00 - cmp r0, #0 - bne _0203C4FC - add r0, r5, #0 - bl ov01_021F6B10 - cmp r0, #1 - bne _0203C4FC - ldr r0, _0203C500 ; =gMain - mov r1, #1 - ldr r0, [r0, #0x48] - tst r1, r0 - beq _0203C4C6 - add r0, r6, #0 - add r1, r5, #0 - add r2, r4, #0 - bl sub_0203C508 - cmp r0, #0 - bne _0203C4BE - mov r0, #0 - pop {r4, r5, r6, pc} -_0203C4BE: - add r0, r5, #0 - bl sub_0203C460 - b _0203C4FC -_0203C4C6: - add r1, r5, #0 - add r1, #0xd0 - ldrh r1, [r1] - cmp r1, #0 - bne _0203C4E4 - ldr r1, _0203C504 ; =0x00000402 - tst r0, r1 - beq _0203C4FC - mov r0, #0x25 - lsl r0, r0, #6 - bl PlaySE - mov r0, #0x10 - strh r0, [r4, #0x26] - b _0203C4FC -_0203C4E4: - add r0, r6, #0 - add r1, r5, #0 - add r2, r4, #0 - bl sub_0203C5A4 - cmp r0, #0 - bne _0203C4F6 - mov r0, #0 - pop {r4, r5, r6, pc} -_0203C4F6: - add r0, r5, #0 - bl sub_0203C460 -_0203C4FC: - mov r0, #1 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203C500: .word gMain -_0203C504: .word 0x00000402 - thumb_func_end sub_0203C47C - - thumb_func_start sub_0203C508 -sub_0203C508: ; 0x0203C508 - push {r3, r4, r5, r6, r7, lr} - add r5, r1, #0 - add r7, r0, #0 - add r0, r5, #0 - add r0, #0xd3 - add r4, r2, #0 - ldrb r1, [r0] - ldr r0, [r4, #0x2c] - cmp r1, r0 - bhs _0203C596 - ldr r0, _0203C59C ; =0x000005DC - bl PlaySE - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - mov r1, #0 - bl sub_02018410 - add r0, r5, #0 - add r0, #0xd3 - ldrb r0, [r0] - str r0, [r4, #0x28] - add r0, r4, r0 - add r0, #0x3a - ldrb r1, [r0] - ldr r0, _0203C5A0 ; =0x020FA0F8 - lsl r2, r1, #3 - ldr r2, [r0, r2] - mov r0, #1 - mvn r0, r0 - cmp r2, r0 - bne _0203C550 - mov r0, #0x10 - strh r0, [r4, #0x26] - b _0203C596 -_0203C550: - add r0, r0, #1 - cmp r2, r0 - beq _0203C596 - add r0, r5, #0 - bl sub_0203C3B8 - cmp r0, #0 - beq _0203C596 - ldr r0, [r4, #0x28] - add r0, r4, r0 - add r0, #0x3a - ldrb r0, [r0] - lsl r1, r0, #3 - ldr r0, _0203C5A0 ; =0x020FA0F8 - ldr r6, [r0, r1] - add r0, r5, #0 - mov r1, #0 - bl sub_0203DF64 - add r0, r5, #0 - bl ov01_021F6B50 - add r0, r5, #0 - mov r1, #0 - add r0, #0xd0 - strh r1, [r0] - ldr r0, [r4, #0x28] - add r5, #0xe0 - add r0, r4, r0 - add r0, #0x3a - ldrb r0, [r0] - str r0, [r5] - add r0, r7, #0 - blx r6 - pop {r3, r4, r5, r6, r7, pc} -_0203C596: - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203C59C: .word 0x000005DC -_0203C5A0: .word 0x020FA0F8 - thumb_func_end sub_0203C508 - - thumb_func_start sub_0203C5A4 -sub_0203C5A4: ; 0x0203C5A4 - push {r3, r4, r5, r6, r7, lr} - add r4, r1, #0 - add r7, r0, #0 - add r0, r4, #0 - add r0, #0xd0 - ldrh r0, [r0] - add r5, r2, #0 - cmp r0, #0 - beq _0203C5C2 - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r4, r0 - mov r1, #1 - bl sub_02018410 -_0203C5C2: - add r0, r4, #0 - add r0, #0xd0 - ldrh r0, [r0] - cmp r0, #0xa - bhi _0203C690 - add r1, r0, r0 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0203C5D8: ; jump table - .short _0203C690 - _0203C5D8 - 2 ; case 0 - .short _0203C5EE - _0203C5D8 - 2 ; case 1 - .short _0203C602 - _0203C5D8 - 2 ; case 2 - .short _0203C602 - _0203C5D8 - 2 ; case 3 - .short _0203C602 - _0203C5D8 - 2 ; case 4 - .short _0203C602 - _0203C5D8 - 2 ; case 5 - .short _0203C602 - _0203C5D8 - 2 ; case 6 - .short _0203C602 - _0203C5D8 - 2 ; case 7 - .short _0203C602 - _0203C5D8 - 2 ; case 8 - .short _0203C602 - _0203C5D8 - 2 ; case 9 - .short _0203C602 - _0203C5D8 - 2 ; case 10 -_0203C5EE: - mov r0, #0x25 - lsl r0, r0, #6 - bl PlaySE - mov r0, #0x10 - strh r0, [r5, #0x26] - mov r0, #0 - add r4, #0xd0 - strh r0, [r4] - b _0203C690 -_0203C602: - sub r1, r0, #2 - add r0, r4, #0 - add r0, #0xd3 - strb r1, [r0] - add r0, r4, #0 - add r0, #0xd3 - ldrb r1, [r0] - ldr r0, [r5, #0x2c] - cmp r1, r0 - bhs _0203C690 - ldr r0, _0203C694 ; =0x000005DC - bl PlaySE - add r0, r4, #0 - add r0, #0xd3 - ldrb r0, [r0] - str r0, [r5, #0x28] - add r0, r5, r0 - add r0, #0x3a - ldrb r1, [r0] - ldr r0, _0203C698 ; =0x020FA0F8 - lsl r2, r1, #3 - ldr r2, [r0, r2] - mov r0, #1 - mvn r0, r0 - cmp r2, r0 - bne _0203C644 - mov r0, #0x10 - strh r0, [r5, #0x26] - mov r0, #0 - add r4, #0xd0 - strh r0, [r4] - b _0203C690 -_0203C644: - add r0, r0, #1 - cmp r2, r0 - beq _0203C690 - add r0, r4, #0 - bl sub_0203C3B8 - cmp r0, #0 - beq _0203C68A - ldr r0, [r5, #0x28] - add r0, r5, r0 - add r0, #0x3a - ldrb r0, [r0] - lsl r1, r0, #3 - ldr r0, _0203C698 ; =0x020FA0F8 - ldr r6, [r0, r1] - add r0, r4, #0 - mov r1, #0 - add r0, #0xd0 - strh r1, [r0] - add r0, r4, #0 - mov r1, #1 - bl sub_0203DF64 - add r0, r4, #0 - bl ov01_021F6B50 - ldr r0, [r5, #0x28] - add r4, #0xe0 - add r0, r5, r0 - add r0, #0x3a - ldrb r0, [r0] - str r0, [r4] - add r0, r7, #0 - blx r6 - pop {r3, r4, r5, r6, r7, pc} -_0203C68A: - mov r0, #0 - add r4, #0xd0 - strh r0, [r4] -_0203C690: - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203C694: .word 0x000005DC -_0203C698: .word 0x020FA0F8 - thumb_func_end sub_0203C5A4 - - thumb_func_start sub_0203C69C -sub_0203C69C: ; 0x0203C69C - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - bl sub_02035650 - cmp r0, #0 - beq _0203C6C6 - mov r0, #0x35 - lsl r0, r0, #4 - ldr r0, [r5, r0] - cmp r0, #0 - beq _0203C6C6 - add r4, #0x84 - ldr r0, [r4] - bl sub_0205AD0C - bl sub_02037FF0 - mov r0, #0 - bl sub_0205A904 -_0203C6C6: - pop {r3, r4, r5, pc} - thumb_func_end sub_0203C69C - - thumb_func_start sub_0203C6C8 -sub_0203C6C8: ; 0x0203C6C8 - push {r4, r5, r6, r7, lr} - sub sp, #0x5c - mov r1, #0x76 - add r5, r0, #0 - lsl r1, r1, #2 - mov r0, #1 - add r1, r5, r1 - mov r2, #0xb - bl sub_02009F40 - mov r1, #0x75 - lsl r1, r1, #2 - mov r7, #3 - str r0, [r5, r1] - mov r6, #0 - add r4, r5, #0 - lsl r7, r7, #8 -_0203C6EA: - mov r0, #1 - add r1, r6, #0 - mov r2, #0xb - bl sub_0200A090 - str r0, [r4, r7] - add r6, r6, #1 - add r4, r4, #4 - cmp r6, #4 - blt _0203C6EA - mov r0, #0 - str r0, [sp] - mov r3, #1 - str r3, [sp, #4] - mov r0, #0xb - str r0, [sp, #8] - mov r0, #3 - lsl r0, r0, #8 - ldr r0, [r5, r0] - mov r1, #0xe - mov r2, #0x40 - bl sub_0200A1D8 - mov r1, #0x31 - lsl r1, r1, #4 - str r0, [r5, r1] - mov r3, #0 - str r3, [sp] - mov r0, #1 - str r0, [sp, #4] - str r0, [sp, #8] - mov r0, #0xb - sub r1, #0xc - str r0, [sp, #0xc] - ldr r0, [r5, r1] - mov r1, #0xe - mov r2, #0x3d - bl sub_0200A234 - mov r1, #0xc5 - lsl r1, r1, #2 - str r0, [r5, r1] - mov r0, #0 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - mov r0, #0xb - sub r1, #0xc - str r0, [sp, #8] - ldr r0, [r5, r1] - mov r1, #0xe - mov r2, #0x3e - mov r3, #1 - bl sub_0200A294 - mov r1, #0xc6 - lsl r1, r1, #2 - str r0, [r5, r1] - mov r0, #0 - str r0, [sp] - mov r0, #3 - str r0, [sp, #4] - mov r0, #0xb - sub r1, #0xc - str r0, [sp, #8] - ldr r0, [r5, r1] - mov r1, #0xe - mov r2, #0x3f - mov r3, #1 - bl sub_0200A294 - mov r1, #0xc7 - lsl r1, r1, #2 - str r0, [r5, r1] - sub r1, #0xc - ldr r0, [r5, r1] - bl sub_0200ADA4 - mov r0, #0xc5 - lsl r0, r0, #2 - ldr r0, [r5, r0] - bl sub_0200B00C - mov r0, #0xc5 - lsl r0, r0, #2 - ldr r0, [r5, r0] - bl sub_0200A740 - mov r1, #0 - mov r2, #3 - str r1, [sp] - sub r0, r1, #1 - str r0, [sp, #4] - str r0, [sp, #8] - str r1, [sp, #0xc] - str r1, [sp, #0x10] - lsl r2, r2, #8 - ldr r0, [r5, r2] - add r3, r1, #0 - str r0, [sp, #0x14] - add r0, r2, #4 - ldr r0, [r5, r0] - str r0, [sp, #0x18] - add r0, r2, #0 - add r0, #8 - ldr r0, [r5, r0] - str r0, [sp, #0x1c] - add r0, r2, #0 - add r0, #0xc - ldr r0, [r5, r0] - add r2, #0x20 - str r0, [sp, #0x20] - str r1, [sp, #0x24] - add r0, r5, r2 - add r2, r1, #0 - str r1, [sp, #0x28] - bl sub_02009D48 - mov r0, #0x75 - lsl r0, r0, #2 - ldr r0, [r5, r0] - mov r1, #0x32 - mov r2, #1 - lsl r2, r2, #0xc - mov r3, #0 - lsl r1, r1, #4 - str r0, [sp, #0x2c] - add r0, r5, r1 - str r0, [sp, #0x30] - str r3, [sp, #0x3c] - str r2, [sp, #0x40] - str r2, [sp, #0x44] - str r2, [sp, #0x48] - add r2, sp, #0x2c - strh r3, [r2, #0x20] - str r0, [sp, #0x30] - lsl r0, r1, #9 - str r0, [sp, #0x34] - mov r0, #9 - mov r2, #1 - lsl r0, r0, #0x10 - str r2, [sp, #0x54] - mov r2, #0xb - str r0, [sp, #0x38] - add r0, sp, #0x2c - str r3, [sp, #0x50] - str r2, [sp, #0x58] - bl sub_02024624 - mov r1, #0xd1 - lsl r1, r1, #2 - str r0, [r5, r1] - ldr r0, [r5, r1] - mov r1, #1 - bl sub_0202484C - mov r0, #0x10 - mov r1, #1 - bl GX_EngineAToggleLayers - add sp, #0x5c - pop {r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203C6C8 - - thumb_func_start sub_0203C830 -sub_0203C830: ; 0x0203C830 - push {r4, r5, r6, lr} - add r5, r0, #0 - mov r0, #0x31 - lsl r0, r0, #4 - ldr r0, [r5, r0] - bl sub_0200AEB0 - mov r0, #0xc5 - lsl r0, r0, #2 - ldr r0, [r5, r0] - bl sub_0200B0A8 - mov r6, #3 - mov r4, #0 - lsl r6, r6, #8 -_0203C84E: - lsl r0, r4, #2 - add r0, r5, r0 - ldr r0, [r0, r6] - bl sub_0200A0D0 - add r0, r4, #1 - lsl r0, r0, #0x10 - lsr r4, r0, #0x10 - cmp r4, #4 - blo _0203C84E - mov r0, #0x75 - lsl r0, r0, #2 - ldr r0, [r5, r0] - bl sub_02024504 - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203C830 - - thumb_func_start sub_0203C870 -sub_0203C870: ; 0x0203C870 - push {r4, r5, r6, lr} - add r5, r0, #0 - bl sub_0200FB5C - cmp r0, #0 - beq _0203C8AE - add r0, r5, #0 - bl sub_0205064C - add r6, r0, #0 - add r0, r5, #0 - bl sub_02050650 - add r1, r6, #0 - add r4, r0, #0 - bl sub_0203C38C - add r0, r6, #0 - add r0, #0xd2 - ldrb r1, [r0] - mov r0, #0x3f - add r6, #0xd2 - bic r1, r0 - strb r1, [r6] - mov r1, #0xd5 - lsl r1, r1, #2 - ldr r1, [r4, r1] - add r0, r5, #0 - blx r1 - mov r0, #5 - strh r0, [r4, #0x26] -_0203C8AE: - pop {r4, r5, r6, pc} - thumb_func_end sub_0203C870 - - thumb_func_start sub_0203C8B0 -sub_0203C8B0: ; 0x0203C8B0 - push {r4, r5, r6, lr} - add r6, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r6, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_020505A0 - cmp r0, #0 - bne _0203C8EE - mov r1, #0xd5 - lsl r1, r1, #2 - ldr r1, [r4, r1] - add r0, r6, #0 - blx r1 - ldrh r0, [r4, #0x26] - cmp r0, #0xf - bne _0203C8EE - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - bl sub_020183F0 - cmp r0, #1 - bne _0203C8EE - mov r0, #0xa - strh r0, [r4, #0x26] -_0203C8EE: - pop {r4, r5, r6, pc} - thumb_func_end sub_0203C8B0 - - thumb_func_start sub_0203C8F0 -sub_0203C8F0: ; 0x0203C8F0 - mov r2, #0xd5 - lsl r2, r2, #2 - str r1, [r0, r2] - mov r1, #5 - strh r1, [r0, #0x26] - bx lr - thumb_func_end sub_0203C8F0 - - thumb_func_start sub_0203C8FC -sub_0203C8FC: ; 0x0203C8FC - push {r4, lr} - bl sub_02050650 - add r4, r0, #0 - mov r0, #0 - bl ov01_021E636C - mov r0, #0xd5 - ldr r1, _0203C91C ; =sub_0203C920 - lsl r0, r0, #2 - str r1, [r4, r0] - mov r0, #4 - strh r0, [r4, #0x26] - mov r0, #1 - pop {r4, pc} - nop -_0203C91C: .word sub_0203C920 - thumb_func_end sub_0203C8FC - - thumb_func_start sub_0203C920 -sub_0203C920: ; 0x0203C920 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - add r5, r0, #0 - bl sub_0205064C - add r4, r0, #0 - add r0, r5, #0 - bl sub_02050650 - str r0, [sp] - ldr r0, [r4, #0xc] - bl sub_0203B9C4 - add r5, r0, #0 - bl sub_0203B958 - str r0, [sp, #4] - add r0, r5, #0 - bl sub_0203B964 - str r0, [sp, #8] - mov r0, #0xb - mov r1, #0x1c - bl AllocFromHeap - mov r1, #0 - mov r2, #0x1c - add r5, r0, #0 - bl MIi_CpuFill8 - ldr r0, [r4, #0xc] - bl sub_0202A634 - str r0, [r5] - ldr r0, [r4, #0xc] - bl Sav2_PlayerData_GetProfileAddr - str r0, [r5, #4] - add r0, r4, #0 - add r0, #0xa8 - ldr r0, [r0] - str r0, [r5, #8] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r4, r0 - str r0, [r5, #0xc] - ldr r0, [r4, #0x40] - bl sub_0205C67C - add r6, r0, #0 - ldr r0, [r4, #0x40] - bl sub_0205C688 - add r7, r0, #0 - asr r1, r6, #4 - asr r2, r7, #4 - lsr r1, r1, #0x1b - lsr r2, r2, #0x1b - add r1, r6, r1 - add r2, r7, r2 - ldr r0, [r4, #0x30] - asr r1, r1, #5 - asr r2, r2, #5 - bl sub_0203B024 - strh r0, [r5, #0x1a] - ldr r0, [sp, #4] - ldr r0, [r0] - strh r0, [r5, #0x18] - ldrh r0, [r5, #0x1a] - bl sub_0203B564 - cmp r0, #0 - beq _0203C9BA - str r6, [r5, #0x10] - str r7, [r5, #0x14] - b _0203C9F4 -_0203C9BA: - ldrh r0, [r5, #0x1a] - add r1, sp, #0xc - add r1, #2 - add r2, sp, #0xc - bl sub_0203B518 - add r1, sp, #0xc - mov r0, #2 - ldrsh r2, [r1, r0] - cmp r2, #0 - bne _0203C9E6 - mov r0, #0 - ldrsh r0, [r1, r0] - cmp r0, #0 - bne _0203C9E6 - ldr r0, [sp, #8] - ldr r0, [r0, #8] - str r0, [r5, #0x10] - ldr r0, [sp, #8] - ldr r0, [r0, #0xc] - str r0, [r5, #0x14] - b _0203C9F4 -_0203C9E6: - lsl r0, r2, #5 - str r0, [r5, #0x10] - add r1, sp, #0xc - mov r0, #0 - ldrsh r0, [r1, r0] - lsl r0, r0, #5 - str r0, [r5, #0x14] -_0203C9F4: - add r0, r4, #0 - add r1, r5, #0 - bl sub_0203F7F4 - mov r1, #0xe - ldr r0, [sp] - lsl r1, r1, #6 - str r5, [r0, r1] - ldr r2, _0203CA10 ; =sub_0203CA14 - sub r1, #0x2c - str r2, [r0, r1] - mov r0, #0 - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203CA10: .word sub_0203CA14 - thumb_func_end sub_0203C920 - - thumb_func_start sub_0203CA14 -sub_0203CA14: ; 0x0203CA14 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_020505C0 - mov r0, #0xe - lsl r0, r0, #6 - ldr r1, [r4, r0] - cmp r1, #0 - beq _0203CA3C - mov r0, #0xb - bl FreeToHeapExplicit -_0203CA3C: - mov r0, #0xf - strh r0, [r4, #0x26] - mov r0, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203CA14 - - thumb_func_start sub_0203CA44 -sub_0203CA44: ; 0x0203CA44 - push {r4, lr} - bl sub_02050650 - add r4, r0, #0 - mov r0, #0 - bl ov01_021E636C - mov r0, #0xd5 - ldr r1, _0203CA64 ; =sub_0203CA68 - lsl r0, r0, #2 - str r1, [r4, r0] - mov r0, #4 - strh r0, [r4, #0x26] - mov r0, #1 - pop {r4, pc} - nop -_0203CA64: .word sub_0203CA68 - thumb_func_end sub_0203CA44 - - thumb_func_start sub_0203CA68 -sub_0203CA68: ; 0x0203CA68 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - mov r1, #0x37 - add r4, r0, #0 - lsl r1, r1, #4 - add r0, r5, #0 - add r1, r4, r1 - mov r2, #0 - bl sub_0203E550 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r0, _0203CA98 ; =sub_0203CA9C - sub r1, #0x2c - str r0, [r4, r1] - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203CA98: .word sub_0203CA9C - thumb_func_end sub_0203CA68 - - thumb_func_start sub_0203CA9C -sub_0203CA9C: ; 0x0203CA9C - push {r4, r5, r6, r7, lr} - sub sp, #0xc - add r7, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r7, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xb - mov r1, #0x44 - bl AllocFromHeap - mov r1, #0xe - lsl r1, r1, #6 - ldr r1, [r4, r1] - mov r2, #0x44 - add r6, r0, #0 - bl memcpy - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - bl FreeToHeap - add r0, r6, #0 - add r0, #0x27 - ldrb r0, [r0] - cmp r0, #0x18 - bls _0203CADC - b _0203CE6C -_0203CADC: - add r1, r0, r0 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0203CAE8: ; jump table - .short _0203CE6C - _0203CAE8 - 2 ; case 0 - .short _0203CB1A - _0203CAE8 - 2 ; case 1 - .short _0203CE6C - _0203CAE8 - 2 ; case 2 - .short _0203CD68 - _0203CAE8 - 2 ; case 3 - .short _0203CBA8 - _0203CAE8 - 2 ; case 4 - .short _0203CC3E - _0203CAE8 - 2 ; case 5 - .short _0203CCD4 - _0203CAE8 - 2 ; case 6 - .short _0203CD2A - _0203CAE8 - 2 ; case 7 - .short _0203CDCA - _0203CAE8 - 2 ; case 8 - .short _0203CDF6 - _0203CAE8 - 2 ; case 9 - .short _0203CE50 - _0203CAE8 - 2 ; case 10 - .short _0203CE2A - _0203CAE8 - 2 ; case 11 - .short _0203CE2A - _0203CAE8 - 2 ; case 12 - .short _0203CE2A - _0203CAE8 - 2 ; case 13 - .short _0203CE2A - _0203CAE8 - 2 ; case 14 - .short _0203CE2A - _0203CAE8 - 2 ; case 15 - .short _0203CE2A - _0203CAE8 - 2 ; case 16 - .short _0203CE2A - _0203CAE8 - 2 ; case 17 - .short _0203CE2A - _0203CAE8 - 2 ; case 18 - .short _0203CE2A - _0203CAE8 - 2 ; case 19 - .short _0203CE2A - _0203CAE8 - 2 ; case 20 - .short _0203CE2A - _0203CAE8 - 2 ; case 21 - .short _0203CE2A - _0203CAE8 - 2 ; case 22 - .short _0203CE2A - _0203CAE8 - 2 ; case 23 - .short _0203CE2A - _0203CAE8 - 2 ; case 24 -_0203CB1A: - mov r0, #0xb - mov r1, #0x3c - bl AllocFromHeap - add r7, r0, #0 - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - str r0, [r7] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r7, #4] - mov r0, #1 - strb r0, [r7, #0x11] - add r0, r6, #0 - add r0, #0x26 - ldrb r0, [r0] - strb r0, [r7, #0x14] - ldr r0, [r7] - bl GetPartyCount - strb r0, [r7, #0x13] - mov r0, #0 - strh r0, [r7, #0x18] - strb r0, [r7, #0x12] - ldr r0, [r5, #0xc] - bl sub_0202D95C - str r0, [r7, #0x20] - ldr r0, [r5, #0xc] - bl sub_02074910 - str r0, [r7, #0x1c] - ldr r0, [r5, #0xc] - bl sub_02088288 - str r0, [r7, #0x2c] - mov r0, #0 - str r0, [r7, #0x28] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r7, #0x30] - ldr r0, [r5, #0xc] - bl sub_0208828C - str r0, [r7, #0x34] - ldr r1, _0203CEDC ; =0x020FA0B0 - add r0, r7, #0 - bl sub_02089D40 - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetProfileAddr - add r1, r0, #0 - add r0, r7, #0 - bl sub_0208AD34 - add r0, r5, #0 - add r1, r7, #0 - bl sub_0203E4EC - mov r0, #0xe - lsl r0, r0, #6 - str r7, [r4, r0] - ldr r1, _0203CEE0 ; =sub_0203D580 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203CEFE -_0203CBA8: - mov r0, #0xb - mov r1, #0x3c - bl AllocFromHeap - add r7, r0, #0 - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - str r0, [r7] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r7, #4] - mov r1, #1 - add r0, r6, #0 - strb r1, [r7, #0x11] - add r0, #0x26 - ldrb r0, [r0] - strb r0, [r7, #0x14] - strb r1, [r7, #0x13] - ldrh r0, [r6, #0x2a] - strh r0, [r7, #0x18] - mov r0, #2 - strb r0, [r7, #0x12] - ldr r0, [r5, #0xc] - bl sub_02074910 - str r0, [r7, #0x1c] - ldr r0, [r5, #0xc] - bl sub_02088288 - str r0, [r7, #0x2c] - mov r0, #0 - str r0, [r7, #0x28] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r7, #0x30] - ldr r0, [r5, #0xc] - bl sub_0208828C - str r0, [r7, #0x34] - ldr r1, _0203CEE4 ; =0x020FA0AC - add r0, r7, #0 - bl sub_02089D40 - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetProfileAddr - add r1, r0, #0 - add r0, r7, #0 - bl sub_0208AD34 - add r0, r5, #0 - add r1, r7, #0 - bl sub_0203E4EC - mov r0, #0xb - mov r1, #4 - bl AllocFromHeap - ldrh r1, [r6, #0x28] - strh r1, [r0] - mov r1, #0 - strh r1, [r0, #2] - mov r1, #0xe1 - lsl r1, r1, #2 - str r0, [r4, r1] - sub r0, r1, #4 - str r7, [r4, r0] - ldr r1, _0203CEE0 ; =sub_0203D580 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203CEFE -_0203CC3E: - mov r0, #0xb - mov r1, #0x3c - bl AllocFromHeap - add r7, r0, #0 - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - str r0, [r7] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r7, #4] - mov r1, #1 - add r0, r6, #0 - strb r1, [r7, #0x11] - add r0, #0x26 - ldrb r0, [r0] - strb r0, [r7, #0x14] - strb r1, [r7, #0x13] - ldrh r0, [r6, #0x2a] - strh r0, [r7, #0x18] - mov r0, #2 - strb r0, [r7, #0x12] - ldr r0, [r5, #0xc] - bl sub_02074910 - str r0, [r7, #0x1c] - ldr r0, [r5, #0xc] - bl sub_02088288 - str r0, [r7, #0x2c] - mov r0, #0 - str r0, [r7, #0x28] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r7, #0x30] - ldr r0, [r5, #0xc] - bl sub_0208828C - str r0, [r7, #0x34] - ldr r1, _0203CEE4 ; =0x020FA0AC - add r0, r7, #0 - bl sub_02089D40 - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetProfileAddr - add r1, r0, #0 - add r0, r7, #0 - bl sub_0208AD34 - add r0, r5, #0 - add r1, r7, #0 - bl sub_0203E4EC - mov r0, #0xb - mov r1, #4 - bl AllocFromHeap - mov r1, #0 - strh r1, [r0] - ldr r1, [r6, #0x38] - strh r1, [r0, #2] - mov r1, #0xe1 - lsl r1, r1, #2 - str r0, [r4, r1] - sub r0, r1, #4 - str r7, [r4, r0] - ldr r1, _0203CEE0 ; =sub_0203D580 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203CEFE -_0203CCD4: - ldrh r0, [r6, #0x28] - bl sub_02078078 - add r3, r0, #0 - mov r0, #0xb - add r2, r6, #0 - str r0, [sp] - add r2, #0x26 - ldrb r2, [r2] - add r0, r5, #0 - mov r1, #2 - bl sub_0203EFEC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - add r0, r6, #0 - add r0, #0x24 - ldrb r0, [r0] - cmp r0, #0xa - ldrh r0, [r6, #0x28] - bne _0203CD0E - add r2, r6, #0 - add r2, #0x26 - ldrb r2, [r2] - mov r1, #0 - bl sub_0203D818 - b _0203CD1A -_0203CD0E: - add r2, r6, #0 - add r2, #0x26 - ldrb r2, [r2] - mov r1, #1 - bl sub_0203D818 -_0203CD1A: - mov r1, #0xe1 - lsl r1, r1, #2 - str r0, [r4, r1] - ldr r1, _0203CEE8 ; =sub_0203D830 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203CEFE -_0203CD2A: - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - add r1, r6, #0 - add r1, #0x26 - ldrb r1, [r1] - bl GetPartyMonByIndex - add r1, r0, #0 - add r0, r5, #0 - mov r2, #0xb - bl sub_0203F050 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - add r2, r6, #0 - add r2, #0x26 - ldrh r0, [r6, #0x28] - ldrb r2, [r2] - mov r1, #2 - bl sub_0203D818 - mov r1, #0xe1 - lsl r1, r1, #2 - str r0, [r4, r1] - ldr r1, _0203CEE8 ; =sub_0203D830 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203CEFE -_0203CD68: - mov r0, #0xb - mov r1, #4 - bl AllocFromHeap - add r1, r6, #0 - add r1, #0x26 - ldrb r1, [r1] - str r1, [r0] - mov r1, #0xe1 - lsl r1, r1, #2 - str r0, [r4, r1] - ldr r0, [r5, #0xc] - bl sub_0207879C - add r7, r0, #0 - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetProfileAddr - ldr r1, _0203CEEC ; =0x020FA0B8 - add r0, r7, #0 - mov r2, #0xb - bl sub_02078644 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - add r3, r5, #0 - str r0, [sp] - add r3, #0x94 - ldr r0, [r4, r1] - ldr r1, [r5, #0xc] - ldr r3, [r3] - mov r2, #1 - bl sub_0207789C - mov r1, #0xe - lsl r1, r1, #6 - ldr r1, [r4, r1] - add r0, r5, #0 - bl sub_0203E3D4 - ldr r1, _0203CEF0 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203CEFE -_0203CDCA: - mov r0, #0xb - mov r1, #0xc - bl AllocFromHeap - ldrh r1, [r6, #0x28] - strh r1, [r0, #2] - mov r1, #3 - strb r1, [r0, #1] - add r1, r6, #0 - add r1, #0x26 - ldrb r1, [r1] - strb r1, [r0] - ldrh r1, [r6, #0x3c] - strh r1, [r0, #4] - ldr r1, [r6, #0x40] - str r1, [r0, #8] - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - mov r0, #8 - strh r0, [r4, #0x26] - b _0203CEFE -_0203CDF6: - mov r0, #0xb - mov r1, #0xc - bl AllocFromHeap - add r7, r0, #0 - ldr r0, [r5, #0x20] - ldr r0, [r0] - bl sub_0203B60C - strh r0, [r7, #2] - mov r0, #0 - strb r0, [r7, #1] - add r0, r6, #0 - add r0, #0x26 - ldrb r0, [r0] - strb r0, [r7] - ldrh r0, [r6, #0x3c] - strh r0, [r7, #4] - ldr r0, [r6, #0x40] - str r0, [r7, #8] - mov r0, #0xe - lsl r0, r0, #6 - str r7, [r4, r0] - mov r0, #8 - strh r0, [r4, #0x26] - b _0203CEFE -_0203CE2A: - sub r0, #0xb - add r1, sp, #4 - strh r0, [r1, #6] - add r0, r6, #0 - add r0, #0x26 - ldrb r0, [r0] - strh r0, [r1, #4] - str r7, [sp, #4] - ldrh r1, [r1, #6] - mov r0, #0 - bl sub_02067DF4 - mov r1, #0x37 - lsl r1, r1, #4 - add r2, r0, #0 - add r0, sp, #4 - add r1, r4, r1 - blx r2 - b _0203CEFE -_0203CE50: - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203CEF0 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203CEFE -_0203CE6C: - add r0, r6, #0 - add r0, #0x24 - ldrb r0, [r0] - cmp r0, #5 - beq _0203CE86 - cmp r0, #6 - beq _0203CE86 - cmp r0, #7 - beq _0203CE86 - cmp r0, #0x10 - beq _0203CE86 - cmp r0, #8 - bne _0203CEBA -_0203CE86: - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r2, #0xe - lsl r2, r2, #6 - str r0, [r4, r2] - add r0, r6, #0 - add r0, #0x26 - ldrb r1, [r0] - ldr r0, [r4, r2] - cmp r1, #6 - blo _0203CEAC - mov r1, #0 - bl sub_020778E0 - b _0203CEB0 -_0203CEAC: - bl sub_020778E0 -_0203CEB0: - ldr r1, _0203CEF0 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203CEFE -_0203CEBA: - cmp r0, #9 - bne _0203CEF4 - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203CEF0 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203CEFE - nop -_0203CEDC: .word 0x020FA0B0 -_0203CEE0: .word sub_0203D580 -_0203CEE4: .word 0x020FA0AC -_0203CEE8: .word sub_0203D830 -_0203CEEC: .word 0x020FA0B8 -_0203CEF0: .word sub_0203CFC0 -_0203CEF4: - add r0, r5, #0 - bl sub_020505C0 - mov r0, #0xf - strh r0, [r4, #0x26] -_0203CEFE: - add r0, r6, #0 - bl FreeToHeap - mov r0, #0 - add sp, #0xc - pop {r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203CA9C - - thumb_func_start sub_0203CF0C -sub_0203CF0C: ; 0x0203CF0C - push {r4, lr} - bl sub_02050650 - add r4, r0, #0 - mov r0, #0 - bl ov01_021E636C - mov r0, #0xd5 - ldr r1, _0203CF2C ; =sub_0203CF30 - lsl r0, r0, #2 - str r1, [r4, r0] - mov r0, #4 - strh r0, [r4, #0x26] - mov r0, #1 - pop {r4, pc} - nop -_0203CF2C: .word sub_0203CF30 - thumb_func_end sub_0203CF0C - - thumb_func_start sub_0203CF30 -sub_0203CF30: ; 0x0203CF30 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - mov r1, #0xd6 - add r4, r0, #0 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r0, [r4, r1] - mov r1, #0 - bl sub_020778E0 - mov r0, #0xd5 - ldr r1, _0203CF70 ; =sub_0203CFC0 - lsl r0, r0, #2 - str r1, [r4, r0] - add r0, r5, #0 - bl ov01_021F4440 - mov r0, #0 - pop {r3, r4, r5, pc} - nop -_0203CF70: .word sub_0203CFC0 - thumb_func_end sub_0203CF30 - - thumb_func_start sub_0203CF74 -sub_0203CF74: ; 0x0203CF74 - push {r4, r5, r6, lr} - add r4, r1, #0 - add r6, r2, #0 - mov r1, #0 - mov r2, #0x44 - add r5, r0, #0 - bl memset - ldr r0, [r4, #0xc] - bl SavArray_PlayerParty_get - str r0, [r5] - ldr r0, [r4, #0xc] - bl sub_0207879C - str r0, [r5, #4] - ldr r0, [r4, #0xc] - bl Sav2_Mailbox_get - str r0, [r5, #8] - ldr r0, [r4, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r5, #0xc] - mov r0, #0x37 - lsl r0, r0, #4 - add r0, r6, r0 - str r0, [r5, #0x18] - add r0, r5, #0 - mov r1, #0 - add r0, #0x25 - strb r1, [r0] - mov r0, #0x43 - lsl r0, r0, #2 - str r4, [r5, #0x1c] - add r0, r4, r0 - str r0, [r5, #0x20] - pop {r4, r5, r6, pc} - thumb_func_end sub_0203CF74 - - thumb_func_start sub_0203CFC0 -sub_0203CFC0: ; 0x0203CFC0 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x18 - add r5, r0, #0 - bl sub_0205064C - str r0, [sp, #8] - add r0, r5, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xb - bl sub_02077878 - add r7, r0, #0 - bl sub_02077890 - mov r1, #0xe - lsl r1, r1, #6 - add r2, r0, #0 - ldr r1, [r4, r1] - add r0, r7, #0 - bl memcpy - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - bl FreeToHeap - add r0, r7, #0 - bl sub_0207790C - cmp r0, #5 - bls _0203D004 - b _0203D186 -_0203D004: - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203D010: ; jump table - .short _0203D01C - _0203D010 - 2 ; case 0 - .short _0203D056 - _0203D010 - 2 ; case 1 - .short _0203D066 - _0203D010 - 2 ; case 2 - .short _0203D186 - _0203D010 - 2 ; case 3 - .short _0203D0AC - _0203D010 - 2 ; case 4 - .short _0203D186 - _0203D010 - 2 ; case 5 -_0203D01C: - add r0, r7, #0 - bl sub_02077904 - add r1, sp, #0x10 - strh r0, [r1, #4] - add r0, r7, #0 - bl sub_02077914 - add r1, sp, #0x10 - strb r0, [r1, #6] - str r5, [sp, #0x10] - ldrh r0, [r1, #4] - mov r1, #6 - mov r2, #0xb - bl sub_02077D88 - add r1, r0, #0 - lsl r1, r1, #0x10 - mov r0, #0 - lsr r1, r1, #0x10 - bl sub_02064980 - mov r1, #0xd6 - lsl r1, r1, #2 - add r2, r0, #0 - add r0, sp, #0x10 - add r1, r4, r1 - blx r2 - b _0203D190 -_0203D056: - add r0, r7, #0 - bl sub_02077904 - add r1, r0, #0 - add r0, r5, #0 - bl sub_0203D664 - b _0203D190 -_0203D066: - mov r0, #0xb - mov r1, #0x44 - bl AllocFromHeap - mov r1, #0 - mov r2, #0x44 - add r5, r0, #0 - bl memset - ldr r1, [sp, #8] - add r0, r5, #0 - add r2, r4, #0 - bl sub_0203CF74 - add r0, r5, #0 - mov r1, #9 - add r0, #0x24 - strb r1, [r0] - add r0, r7, #0 - bl sub_02077904 - strh r0, [r5, #0x28] - ldr r0, [sp, #8] - ldr r1, _0203D19C ; =0x0210159C - add r2, r5, #0 - bl SwitchToPokegearApp - mov r0, #0xe - lsl r0, r0, #6 - str r5, [r4, r0] - ldr r1, _0203D1A0 ; =sub_0203CA9C - add r0, r4, #0 - bl sub_0203C8F0 - b _0203D190 -_0203D0AC: - ldr r0, [sp, #8] - ldr r0, [r0, #0xc] - bl SavArray_PlayerParty_get - str r0, [sp, #4] - mov r0, #0xe1 - lsl r0, r0, #2 - ldr r0, [r4, r0] - ldr r6, [r0] - add r0, r7, #0 - bl sub_02077904 - add r5, r0, #0 - ldr r0, [sp, #4] - add r1, r6, #0 - bl GetPartyMonByIndex - str r0, [sp, #0xc] - mov r0, #0xe1 - lsl r0, r0, #2 - ldr r0, [r4, r0] - bl FreeToHeap - add r0, r5, #0 - bl sub_02078068 - cmp r0, #1 - bne _0203D12C - ldr r0, [sp, #0xc] - mov r1, #6 - mov r2, #0 - bl GetMonData - cmp r0, #0 - bne _0203D12C - add r0, r5, #0 - bl sub_02078078 - add r3, r0, #0 - mov r0, #0xb - str r0, [sp] - lsl r2, r6, #0x18 - ldr r0, [sp, #8] - mov r1, #2 - lsr r2, r2, #0x18 - bl sub_0203EFEC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - lsl r2, r6, #0x18 - add r0, r5, #0 - mov r1, #0 - lsr r2, r2, #0x18 - bl sub_0203D818 - mov r1, #0xe1 - lsl r1, r1, #2 - str r0, [r4, r1] - ldr r1, _0203D1A4 ; =sub_0203D830 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203D190 -_0203D12C: - mov r0, #0xb - mov r1, #0x44 - bl AllocFromHeap - mov r1, #0 - mov r2, #0x44 - add r5, r0, #0 - bl memset - ldr r1, [sp, #8] - add r0, r5, #0 - add r2, r4, #0 - bl sub_0203CF74 - ldr r0, [sp, #4] - str r0, [r5] - add r0, r7, #0 - bl sub_02077904 - strh r0, [r5, #0x28] - add r0, r5, #0 - add r0, #0x26 - strb r6, [r0] - ldrh r0, [r5, #0x28] - cmp r0, #0 - bne _0203D164 - mov r1, #0 - b _0203D166 -_0203D164: - mov r1, #0xa -_0203D166: - add r0, r5, #0 - add r0, #0x24 - strb r1, [r0] - ldr r0, [sp, #8] - ldr r1, _0203D19C ; =0x0210159C - add r2, r5, #0 - bl SwitchToPokegearApp - mov r0, #0xe - lsl r0, r0, #6 - str r5, [r4, r0] - ldr r1, _0203D1A0 ; =sub_0203CA9C - add r0, r4, #0 - bl sub_0203C8F0 - b _0203D190 -_0203D186: - ldr r0, [sp, #8] - bl sub_020505C0 - mov r0, #0xf - strh r0, [r4, #0x26] -_0203D190: - add r0, r7, #0 - bl FreeToHeap - mov r0, #0 - add sp, #0x18 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203D19C: .word 0x0210159C -_0203D1A0: .word sub_0203CA9C -_0203D1A4: .word sub_0203D830 - thumb_func_end sub_0203CFC0 - - thumb_func_start sub_0203D1A8 -sub_0203D1A8: ; 0x0203D1A8 - push {r4, lr} - bl sub_02050650 - add r4, r0, #0 - mov r0, #0 - bl ov01_021E636C - mov r0, #0xd5 - ldr r1, _0203D1C8 ; =sub_0203D1CC - lsl r0, r0, #2 - str r1, [r4, r0] - mov r0, #4 - strh r0, [r4, #0x26] - mov r0, #1 - pop {r4, pc} - nop -_0203D1C8: .word sub_0203D1CC - thumb_func_end sub_0203D1A8 - - thumb_func_start sub_0203D1CC -sub_0203D1CC: ; 0x0203D1CC - push {r4, r5, r6, lr} - sub sp, #8 - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xb - bl sub_020691C4 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r6, [r4, r1] - mov r0, #1 - str r5, [sp] - add r1, r0, #0 - mov r2, #0 - mov r3, #0xff - str r6, [sp, #4] - bl sub_02068FC8 - add r0, r5, #0 - add r1, r6, #0 - bl sub_0203F7B0 - mov r0, #0xd5 - ldr r1, _0203D214 ; =sub_0203D218 - lsl r0, r0, #2 - str r1, [r4, r0] - mov r0, #0 - add sp, #8 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203D214: .word sub_0203D218 - thumb_func_end sub_0203D1CC - - thumb_func_start sub_0203D218 -sub_0203D218: ; 0x0203D218 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - bl sub_020691E0 - add r0, r5, #0 - bl sub_020505C0 - mov r0, #0xf - strh r0, [r4, #0x26] - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203D218 - - thumb_func_start sub_0203D244 -sub_0203D244: ; 0x0203D244 - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0205064C - mov r1, #1 - mov r2, #0 - bl ov01_021F6A9C - mov r0, #6 - strh r0, [r4, #0x26] - mov r0, #1 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203D244 - - thumb_func_start sub_0203D264 -sub_0203D264: ; 0x0203D264 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl ov01_021F6B00 - cmp r0, #1 - bne _0203D284 - mov r0, #7 - strh r0, [r4, #0x26] -_0203D284: - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203D264 - - thumb_func_start sub_0203D288 -sub_0203D288: ; 0x0203D288 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl ov01_021F6B00 - cmp r0, #0 - bne _0203D2C8 - add r0, r5, #0 - bl ov01_021F6B10 - cmp r0, #1 - bne _0203D2C8 - add r0, r5, #0 - add r0, #0xd0 - ldrh r0, [r0] - cmp r0, #1 - bne _0203D2C4 - mov r0, #0 - add r5, #0xd0 - strh r0, [r5] - mov r0, #0x10 - strh r0, [r4, #0x26] - pop {r3, r4, r5, pc} -_0203D2C4: - mov r0, #3 - strh r0, [r4, #0x26] -_0203D2C8: - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203D288 - - thumb_func_start sub_0203D2CC -sub_0203D2CC: ; 0x0203D2CC - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0205064C - mov r1, #8 - mov r2, #0 - bl ov01_021F6A9C - mov r0, #0x13 - strh r0, [r4, #0x26] - mov r0, #1 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203D2CC - - thumb_func_start sub_0203D2EC -sub_0203D2EC: ; 0x0203D2EC - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0205064C - mov r0, #0x14 - strh r0, [r4, #0x26] - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203D2EC - - thumb_func_start sub_0203D304 -sub_0203D304: ; 0x0203D304 - push {r4, lr} - add r4, r0, #0 - bl sub_0205064C - add r0, r4, #0 - bl sub_02050650 - mov r1, #0x10 - strh r1, [r0, #0x26] - pop {r4, pc} - thumb_func_end sub_0203D304 - - thumb_func_start sub_0203D318 -sub_0203D318: ; 0x0203D318 - push {r4, lr} - bl sub_02050650 - add r4, r0, #0 - mov r0, #0 - bl ov01_021E636C - mov r0, #0xd5 - ldr r1, _0203D338 ; =sub_0203D33C - lsl r0, r0, #2 - str r1, [r4, r0] - mov r0, #4 - strh r0, [r4, #0x26] - mov r0, #1 - pop {r4, pc} - nop -_0203D338: .word sub_0203D33C - thumb_func_end sub_0203D318 - - thumb_func_start sub_0203D33C -sub_0203D33C: ; 0x0203D33C - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203EE24 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r0, _0203D364 ; =sub_0203D368 - sub r1, #0x2c - str r0, [r4, r1] - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203D364: .word sub_0203D368 - thumb_func_end sub_0203D33C - - thumb_func_start sub_0203D368 -sub_0203D368: ; 0x0203D368 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - bl FreeToHeap - add r0, r5, #0 - bl sub_020505C0 - mov r0, #0xf - strh r0, [r4, #0x26] - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203D368 - - thumb_func_start sub_0203D394 -sub_0203D394: ; 0x0203D394 - push {r4, lr} - bl sub_02050650 - add r4, r0, #0 - mov r0, #0 - bl ov01_021E636C - mov r0, #0xd5 - ldr r1, _0203D3B4 ; =sub_0203D3B8 - lsl r0, r0, #2 - str r1, [r4, r0] - mov r0, #4 - strh r0, [r4, #0x26] - mov r0, #1 - pop {r4, pc} - nop -_0203D3B4: .word sub_0203D3B8 - thumb_func_end sub_0203D394 - - thumb_func_start sub_0203D3B8 -sub_0203D3B8: ; 0x0203D3B8 - push {r4, r5, lr} - sub sp, #0xc - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xb - str r0, [sp] - mov r3, #0x43 - lsl r3, r3, #2 - ldr r2, [r5, #0xc] - mov r0, #2 - mov r1, #0 - add r3, r5, r3 - bl sub_02090C94 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - add r0, sp, #4 - mov r1, #4 - bl MailMsg_init_withBank - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - add r1, sp, #4 - bl sub_02090D20 - mov r1, #0xe - lsl r1, r1, #6 - ldr r1, [r4, r1] - add r0, r5, #0 - bl sub_0203EA24 - mov r0, #0xd5 - ldr r1, _0203D414 ; =sub_0203D418 - lsl r0, r0, #2 - str r1, [r4, r0] - mov r0, #0 - add sp, #0xc - pop {r4, r5, pc} - .balign 4, 0 -_0203D414: .word sub_0203D418 - thumb_func_end sub_0203D3B8 - - thumb_func_start sub_0203D418 -sub_0203D418: ; 0x0203D418 - push {r3, r4, r5, lr} - sub sp, #8 - add r5, r0, #0 - bl sub_0205064C - add r4, r0, #0 - add r0, r5, #0 - bl sub_02050650 - add r5, r0, #0 - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r5, r0] - bl sub_02090D48 - cmp r0, #0 - bne _0203D466 - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r5, r0] - add r1, sp, #0 - bl sub_02090D60 - bl sub_02035650 - cmp r0, #0 - beq _0203D460 - add r0, sp, #0 - bl sub_0205AB88 - add r0, r4, #0 - add r0, #0x80 - ldr r0, [r0] - add r1, sp, #0 - bl sub_0205AA6C -_0203D460: - mov r0, #0xa - strh r0, [r5, #0x26] - b _0203D46A -_0203D466: - mov r0, #0xf - strh r0, [r5, #0x26] -_0203D46A: - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r5, r0] - bl sub_02090D0C - add r0, r4, #0 - bl sub_020505C0 - add r4, #0x84 - ldr r0, [r4] - bl sub_0205AD0C - mov r0, #0 - add sp, #8 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203D418 - - thumb_func_start sub_0203D488 -sub_0203D488: ; 0x0203D488 - push {r4, r5, r6, lr} - add r5, r0, #0 - bl sub_0205064C - add r4, r0, #0 - add r0, r5, #0 - bl sub_02050650 - add r1, r4, #0 - add r6, r0, #0 - bl sub_0203C38C - add r0, r4, #0 - add r0, #0xd2 - ldrb r1, [r0] - mov r0, #0x3f - bic r1, r0 - add r0, r4, #0 - add r0, #0xd2 - strb r1, [r0] - ldr r0, [r4, #0xc] - bl sub_020503D0 - bl sub_02066860 - cmp r0, #1 - bne _0203D4CA - ldr r1, _0203D4F8 ; =0x00002266 - add r0, r5, #0 - mov r2, #0 - bl sub_0203FF0C - b _0203D4EE -_0203D4CA: - ldr r0, [r4, #0xc] - bl sub_020503D0 - bl sub_02066870 - cmp r0, #1 - bne _0203D4E4 - ldr r1, _0203D4FC ; =0x000028A4 - add r0, r5, #0 - mov r2, #0 - bl sub_0203FF0C - b _0203D4EE -_0203D4E4: - add r0, r5, #0 - mov r1, #4 - mov r2, #0 - bl sub_0203FF0C -_0203D4EE: - add r0, r6, #0 - bl FreeToHeap - mov r0, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203D4F8: .word 0x00002266 -_0203D4FC: .word 0x000028A4 - thumb_func_end sub_0203D488 - - thumb_func_start sub_0203D500 -sub_0203D500: ; 0x0203D500 - push {r4, lr} - bl sub_02050650 - add r4, r0, #0 - mov r0, #0 - bl ov01_021E636C - mov r0, #0xd5 - ldr r1, _0203D520 ; =sub_0203D524 - lsl r0, r0, #2 - str r1, [r4, r0] - mov r0, #4 - strh r0, [r4, #0x26] - mov r0, #1 - pop {r4, pc} - nop -_0203D520: .word sub_0203D524 - thumb_func_end sub_0203D500 - - thumb_func_start sub_0203D524 -sub_0203D524: ; 0x0203D524 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203EA84 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r0, _0203D54C ; =sub_0203D550 - sub r1, #0x2c - str r0, [r4, r1] - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203D54C: .word sub_0203D550 - thumb_func_end sub_0203D524 - - thumb_func_start sub_0203D550 -sub_0203D550: ; 0x0203D550 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_020505C0 - mov r0, #0xe - lsl r0, r0, #6 - ldr r1, [r4, r0] - cmp r1, #0 - beq _0203D578 - mov r0, #0xb - bl FreeToHeapExplicit -_0203D578: - mov r0, #0xf - strh r0, [r4, #0x26] - mov r0, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203D550 - - thumb_func_start sub_0203D580 -sub_0203D580: ; 0x0203D580 - push {r3, r4, r5, r6, r7, lr} - add r4, r0, #0 - bl sub_0205064C - str r0, [sp] - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xb - mov r1, #0x3c - bl AllocFromHeap - mov r1, #0xe - lsl r1, r1, #6 - ldr r1, [r4, r1] - mov r2, #0x3c - add r6, r0, #0 - bl memcpy - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - bl FreeToHeap - ldrb r0, [r6, #0x12] - cmp r0, #2 - bne _0203D634 - mov r0, #0xb - mov r1, #0x44 - bl AllocFromHeap - mov r1, #0xe1 - lsl r1, r1, #2 - ldr r7, [r4, r1] - ldr r1, [sp] - add r2, r4, #0 - add r5, r0, #0 - bl sub_0203CF74 - ldrh r0, [r7] - strh r0, [r5, #0x28] - add r0, r5, #0 - ldrb r1, [r6, #0x14] - add r0, #0x26 - strb r1, [r0] - ldrh r0, [r6, #0x18] - strh r0, [r5, #0x2a] - add r0, r5, #0 - ldrb r1, [r6, #0x16] - add r0, #0x2c - strb r1, [r0] - ldrh r0, [r7] - cmp r0, #0 - beq _0203D5FA - add r0, r5, #0 - mov r1, #7 - add r0, #0x24 - strb r1, [r0] - mov r0, #0 - b _0203D604 -_0203D5FA: - add r0, r5, #0 - mov r1, #8 - add r0, #0x24 - strb r1, [r0] - ldrh r0, [r7, #2] -_0203D604: - str r0, [r5, #0x38] - mov r1, #0x43 - ldr r0, [sp] - lsl r1, r1, #2 - add r0, r0, r1 - str r0, [r5, #0x20] - ldr r0, [sp] - ldr r1, _0203D65C ; =0x0210159C - add r2, r5, #0 - bl SwitchToPokegearApp - mov r0, #0xe1 - lsl r0, r0, #2 - ldr r0, [r4, r0] - bl FreeToHeap - mov r0, #0xe - lsl r0, r0, #6 - str r5, [r4, r0] - ldr r1, _0203D660 ; =sub_0203CA9C - add r0, r4, #0 - bl sub_0203C8F0 - b _0203D650 -_0203D634: - mov r1, #0x37 - lsl r1, r1, #4 - ldrb r2, [r6, #0x14] - ldr r0, [sp] - add r1, r4, r1 - bl sub_0203E550 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203D660 ; =sub_0203CA9C - add r0, r4, #0 - bl sub_0203C8F0 -_0203D650: - add r0, r6, #0 - bl FreeToHeap - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203D65C: .word 0x0210159C -_0203D660: .word sub_0203CA9C - thumb_func_end sub_0203D580 - - thumb_func_start sub_0203D664 -sub_0203D664: ; 0x0203D664 - push {r4, r5, r6, r7, lr} - sub sp, #0xc - add r4, r0, #0 - bl sub_0205064C - str r0, [sp, #4] - add r0, r4, #0 - bl sub_02050650 - str r0, [sp] - ldr r0, [sp, #4] - ldr r0, [r0, #0xc] - bl sub_0207879C - add r4, r0, #0 - mov r5, #0 - mov r6, #1 - mov r7, #0xb -_0203D688: - add r0, r5, #0 - bl sub_020780F4 - add r1, r0, #0 - add r0, r4, #0 - add r2, r6, #0 - add r3, r7, #0 - bl sub_020784B0 - add r0, r5, #1 - lsl r0, r0, #0x18 - lsr r5, r0, #0x18 - cmp r5, #0x40 - blo _0203D688 - ldr r0, [sp, #4] - add r3, sp, #8 - add r0, #0x94 - str r0, [sp, #4] - ldr r0, [r0] - mov r1, #4 - add r2, sp, #8 - add r3, #1 - bl sub_020787C0 - ldr r0, [sp] - ldr r1, _0203D6C4 ; =sub_0203D6C8 - bl sub_0203C8F0 - add sp, #0xc - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_0203D6C4: .word sub_0203D6C8 - thumb_func_end sub_0203D664 - - thumb_func_start sub_0203D6C8 -sub_0203D6C8: ; 0x0203D6C8 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - add r0, #0x94 - mov r2, #0 - ldr r0, [r0] - mov r1, #4 - add r3, r2, #0 - bl sub_020787D4 - mov r1, #0xe - lsl r1, r1, #6 - ldr r1, [r4, r1] - mov r0, #0xb - bl FreeToHeapExplicit - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203D714 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203D714: .word sub_0203CFC0 - thumb_func_end sub_0203D6C8 - - thumb_func_start sub_0203D718 -sub_0203D718: ; 0x0203D718 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - mov r1, #0xe - add r4, r0, #0 - lsl r1, r1, #6 - ldr r1, [r4, r1] - mov r0, #0xb - bl FreeToHeapExplicit - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203D754 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203D754: .word sub_0203CFC0 - thumb_func_end sub_0203D718 - - thumb_func_start sub_0203D758 -sub_0203D758: ; 0x0203D758 - push {r4, r5, r6, r7, lr} - sub sp, #0xc - add r4, r0, #0 - bl sub_0205064C - add r7, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xe1 - lsl r0, r0, #2 - ldr r1, [r4, r0] - mov r0, #0xb - ldr r6, [r1] - bl FreeToHeapExplicit - mov r0, #0xe - lsl r0, r0, #6 - ldr r5, [r4, r0] - ldr r0, [r5, #0x14] - cmp r0, #0 - bne _0203D7AE - mov r0, #0xb - add r1, r5, #0 - bl FreeToHeapExplicit - mov r1, #0x37 - lsl r1, r1, #4 - lsl r2, r6, #0x18 - add r0, r7, #0 - add r1, r4, r1 - lsr r2, r2, #0x18 - bl sub_0203E550 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203D810 ; =sub_0203CA9C - add r0, r4, #0 - bl sub_0203C8F0 - b _0203D808 -_0203D7AE: - ldr r0, [r7, #0xc] - bl SavArray_PlayerParty_get - add r1, r6, #0 - bl GetPartyMonByIndex - add r2, r0, #0 - ldrh r0, [r5, #0x20] - lsl r3, r6, #0x10 - add r1, r7, #0 - str r0, [sp] - ldr r0, [r5, #0x18] - lsr r3, r3, #0x10 - lsl r0, r0, #5 - add r0, #0x10 - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - str r0, [sp, #4] - ldr r0, [r5, #0x1c] - lsl r0, r0, #5 - add r0, #0x10 - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - str r0, [sp, #8] - mov r0, #0xb - bl sub_02067BF8 - mov r1, #0xe - lsl r1, r1, #6 - add r5, r0, #0 - ldr r1, [r4, r1] - mov r0, #0xb - bl FreeToHeapExplicit - add r0, r7, #0 - bl sub_020505C0 - mov r0, #0xd5 - ldr r1, _0203D814 ; =sub_02067C30 - lsl r0, r0, #2 - str r1, [r4, r0] - add r0, #0x2c - str r5, [r4, r0] - mov r0, #0xc - strh r0, [r4, #0x26] -_0203D808: - mov r0, #0 - add sp, #0xc - pop {r4, r5, r6, r7, pc} - nop -_0203D810: .word sub_0203CA9C -_0203D814: .word sub_02067C30 - thumb_func_end sub_0203D758 - - thumb_func_start sub_0203D818 -sub_0203D818: ; 0x0203D818 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - mov r0, #0xb - mov r1, #4 - add r6, r2, #0 - bl AllocFromHeap - strh r5, [r0] - strb r6, [r0, #2] - strb r4, [r0, #3] - pop {r4, r5, r6, pc} - thumb_func_end sub_0203D818 - - thumb_func_start sub_0203D830 -sub_0203D830: ; 0x0203D830 - push {r4, r5, r6, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xe1 - lsl r0, r0, #2 - ldr r6, [r4, r0] - ldrb r1, [r6, #3] - cmp r1, #3 - bhi _0203D928 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0203D85A: ; jump table - .short _0203D8AC - _0203D85A - 2 ; case 0 - .short _0203D8EC - _0203D85A - 2 ; case 1 - .short _0203D886 - _0203D85A - 2 ; case 2 - .short _0203D862 - _0203D85A - 2 ; case 3 -_0203D862: - sub r0, r0, #4 - ldr r0, [r4, r0] - bl sub_02090F90 - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203D938 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 - b _0203D928 -_0203D886: - sub r0, r0, #4 - ldr r0, [r4, r0] - bl sub_02090F90 - mov r1, #0x37 - lsl r1, r1, #4 - ldrb r2, [r6, #2] - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E550 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203D93C ; =sub_0203CA9C - add r0, r4, #0 - bl sub_0203C8F0 - b _0203D928 -_0203D8AC: - sub r0, r0, #4 - ldr r0, [r4, r0] - bl sub_02090F6C - cmp r0, #1 - bne _0203D8C4 - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0xc - bl sub_0203D940 - b _0203D928 -_0203D8C4: - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - bl sub_02090F90 - mov r1, #0x37 - lsl r1, r1, #4 - ldrb r2, [r6, #2] - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E550 - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203D93C ; =sub_0203CA9C - add r0, r4, #0 - bl sub_0203C8F0 - b _0203D928 -_0203D8EC: - sub r0, r0, #4 - ldr r0, [r4, r0] - bl sub_02090F6C - cmp r0, #1 - bne _0203D904 - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0xb - bl sub_0203D940 - b _0203D928 -_0203D904: - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - bl sub_02090F90 - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203D938 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 -_0203D928: - mov r0, #0xe1 - lsl r0, r0, #2 - ldr r0, [r4, r0] - bl FreeToHeap - mov r0, #0 - pop {r4, r5, r6, pc} - nop -_0203D938: .word sub_0203CFC0 -_0203D93C: .word sub_0203CA9C - thumb_func_end sub_0203D830 - - thumb_func_start sub_0203D940 -sub_0203D940: ; 0x0203D940 - push {r3, r4, r5, r6, r7, lr} - add r7, r0, #0 - mov r0, #0xe1 - add r5, r1, #0 - str r2, [sp] - lsl r0, r0, #2 - ldr r6, [r5, r0] - mov r0, #0xb - mov r1, #0x44 - bl AllocFromHeap - add r1, r7, #0 - add r2, r5, #0 - add r4, r0, #0 - bl sub_0203CF74 - ldrh r0, [r6] - strh r0, [r4, #0x28] - add r0, r4, #0 - ldrb r1, [r6, #2] - add r0, #0x26 - strb r1, [r0] - add r1, r4, #0 - ldr r0, [sp] - add r1, #0x24 - strb r0, [r1] - ldrb r1, [r6, #2] - ldr r0, [r4] - bl GetPartyMonByIndex - add r1, r0, #0 - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r5, r0] - bl sub_02090F70 - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r5, r0] - bl sub_02090F90 - ldr r1, _0203D9AC ; =0x0210159C - add r0, r7, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - mov r0, #0xe - lsl r0, r0, #6 - str r4, [r5, r0] - ldr r1, _0203D9B0 ; =sub_0203CA9C - add r0, r5, #0 - bl sub_0203C8F0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203D9AC: .word 0x0210159C -_0203D9B0: .word sub_0203CA9C - thumb_func_end sub_0203D940 - - thumb_func_start sub_0203D9B4 -sub_0203D9B4: ; 0x0203D9B4 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - mov r1, #0xd6 - add r4, r0, #0 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r1, _0203D9E4 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203D9E4: .word sub_0203CFC0 - thumb_func_end sub_0203D9B4 - - thumb_func_start sub_0203D9E8 -sub_0203D9E8: ; 0x0203D9E8 - push {r4, r5, r6, r7, lr} - sub sp, #0x3c - add r5, r0, #0 - bl sub_0205064C - add r4, r0, #0 - add r0, r5, #0 - bl sub_02050650 - add r6, r0, #0 - mov r0, #0xe - lsl r0, r0, #6 - ldr r5, [r6, r0] - bl sub_02005FA0 - mov r0, #3 - mov r1, #0x47 - lsl r2, r0, #0x10 - bl sub_0201A910 - ldr r0, [r4, #0xc] - bl SavArray_PlayerParty_get - ldrb r1, [r5] - str r0, [sp, #0x1c] - bl GetPartyMonByIndex - str r0, [sp, #0x20] - ldrb r0, [r5, #1] - cmp r0, #0 - ldr r0, [r4, #0xc] - bne _0203DA72 - bl Sav2_PlayerData_GetOptionsAddr - str r0, [sp, #0x24] - ldr r0, [r4, #0xc] - bl sub_02088288 - add r7, r0, #0 - ldr r0, [r4, #0xc] - bl sub_0202A634 - str r0, [sp, #0x28] - ldr r0, [r4, #0xc] - bl sub_0207879C - str r0, [sp, #0x2c] - ldr r0, [r4, #0xc] - bl sub_0202CF54 - ldr r1, [sp, #0x28] - str r7, [sp] - str r1, [sp, #4] - ldr r1, [sp, #0x2c] - ldr r3, [sp, #0x24] - str r1, [sp, #8] - str r0, [sp, #0xc] - ldr r0, [r5, #8] - ldr r1, [sp, #0x20] - str r0, [sp, #0x10] - mov r0, #1 - str r0, [sp, #0x14] - mov r0, #0x47 - str r0, [sp, #0x18] - ldrh r2, [r5, #4] - ldr r0, [sp, #0x1c] - bl sub_02075A7C - b _0203DABA -_0203DA72: - bl Sav2_PlayerData_GetOptionsAddr - str r0, [sp, #0x30] - ldr r0, [r4, #0xc] - bl sub_02088288 - add r7, r0, #0 - ldr r0, [r4, #0xc] - bl sub_0202A634 - str r0, [sp, #0x34] - ldr r0, [r4, #0xc] - bl sub_0207879C - str r0, [sp, #0x38] - ldr r0, [r4, #0xc] - bl sub_0202CF54 - ldr r1, [sp, #0x34] - str r7, [sp] - str r1, [sp, #4] - ldr r1, [sp, #0x38] - ldr r3, [sp, #0x30] - str r1, [sp, #8] - str r0, [sp, #0xc] - ldr r0, [r5, #8] - ldr r1, [sp, #0x20] - str r0, [sp, #0x10] - mov r0, #0 - str r0, [sp, #0x14] - mov r0, #0x47 - str r0, [sp, #0x18] - ldrh r2, [r5, #4] - ldr r0, [sp, #0x1c] - bl sub_02075A7C -_0203DABA: - add r4, r0, #0 - mov r0, #0xb - mov r1, #4 - bl AllocFromHeap - ldrb r1, [r5] - str r1, [r0] - mov r1, #0xe1 - lsl r1, r1, #2 - str r0, [r6, r1] - sub r0, r1, #4 - ldr r0, [r6, r0] - bl FreeToHeap - mov r0, #0xe - lsl r0, r0, #6 - str r4, [r6, r0] - mov r0, #9 - strh r0, [r6, #0x26] - add sp, #0x3c - pop {r4, r5, r6, r7, pc} - thumb_func_end sub_0203D9E8 - - thumb_func_start sub_0203DAE4 -sub_0203DAE4: ; 0x0203DAE4 - push {r3, r4, r5, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - bl sub_02075D3C - cmp r0, #1 - bne _0203DB60 - mov r0, #0xe - lsl r0, r0, #6 - ldr r0, [r4, r0] - bl sub_02075D4C - mov r0, #0x47 - bl sub_0201A9C4 - ldr r0, _0203DB64 ; =0x000003F3 - mov r1, #0 - bl sub_02005EB4 - mov r0, #0 - bl sub_02004AD8 - ldr r1, [r5, #0x20] - add r0, r5, #0 - ldr r1, [r1] - bl sub_02055164 - mov r1, #0xd6 - lsl r1, r1, #2 - add r0, r5, #0 - add r1, r4, r1 - bl sub_0203E3FC - mov r1, #0xe - lsl r1, r1, #6 - str r0, [r4, r1] - ldr r0, [r4, r1] - add r1, r1, #4 - ldr r1, [r4, r1] - ldr r1, [r1] - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - bl sub_020778E0 - mov r0, #0xe1 - lsl r0, r0, #2 - ldr r0, [r4, r0] - bl FreeToHeap - ldr r1, _0203DB68 ; =sub_0203CFC0 - add r0, r4, #0 - bl sub_0203C8F0 -_0203DB60: - pop {r3, r4, r5, pc} - nop -_0203DB64: .word 0x000003F3 -_0203DB68: .word sub_0203CFC0 - thumb_func_end sub_0203DAE4 - - thumb_func_start sub_0203DB6C -sub_0203DB6C: ; 0x0203DB6C - bx lr - .balign 4, 0 - thumb_func_end sub_0203DB6C - - thumb_func_start sub_0203DB70 -sub_0203DB70: ; 0x0203DB70 - bx lr - .balign 4, 0 - thumb_func_end sub_0203DB70 - - thumb_func_start sub_0203DB74 -sub_0203DB74: ; 0x0203DB74 - mov r0, #1 - bx lr - thumb_func_end sub_0203DB74 - - thumb_func_start sub_0203DB78 -sub_0203DB78: ; 0x0203DB78 - push {r3, r4, r5, r6, r7, lr} - add r6, r0, #0 - ldr r0, [r6, #0x40] - add r4, r1, #0 - add r5, r2, #0 - bl sub_0205C654 - add r7, r0, #0 - ldr r0, [r6, #0x40] - bl sub_0205C67C - str r0, [r4] - ldr r0, [r6, #0x40] - bl sub_0205C688 - str r0, [r5] - cmp r7, #3 - bhi _0203DBCE - add r0, r7, r7 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203DBA8: ; jump table - .short _0203DBB0 - _0203DBA8 - 2 ; case 0 - .short _0203DBB8 - _0203DBA8 - 2 ; case 1 - .short _0203DBC0 - _0203DBA8 - 2 ; case 2 - .short _0203DBC8 - _0203DBA8 - 2 ; case 3 -_0203DBB0: - ldr r0, [r5] - sub r0, r0, #1 - str r0, [r5] - b _0203DBCE -_0203DBB8: - ldr r0, [r5] - add r0, r0, #1 - str r0, [r5] - b _0203DBCE -_0203DBC0: - ldr r0, [r4] - sub r0, r0, #1 - str r0, [r4] - b _0203DBCE -_0203DBC8: - ldr r0, [r4] - add r0, r0, #1 - str r0, [r4] -_0203DBCE: - add r0, r7, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203DB78 - - thumb_func_start sub_0203DBD4 -sub_0203DBD4: ; 0x0203DBD4 - push {r3, r4, r5, lr} - add r5, r1, #0 - bl sub_0205C6DC - bl sub_0205F9D0 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0205F9D0 - cmp r4, r0 - bne _0203DBF0 - mov r0, #1 - b _0203DBF2 -_0203DBF0: - mov r0, #0 -_0203DBF2: - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203DBD4 - - thumb_func_start sub_0203DBF8 -sub_0203DBF8: ; 0x0203DBF8 - push {r4, r5, r6, lr} - sub sp, #8 - add r6, r1, #0 - add r1, sp, #4 - add r2, sp, #0 - add r5, r0, #0 - bl sub_0203DB78 - add r4, r0, #0 - ldr r1, [sp, #4] - ldr r2, [sp] - add r0, r5, #0 - bl sub_02054918 - bl sub_0205B700 - cmp r0, #1 - bne _0203DC52 - cmp r4, #3 - bhi _0203DC52 - add r0, r4, r4 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203DC2C: ; jump table - .short _0203DC34 - _0203DC2C - 2 ; case 0 - .short _0203DC3C - _0203DC2C - 2 ; case 1 - .short _0203DC44 - _0203DC2C - 2 ; case 2 - .short _0203DC4C - _0203DC2C - 2 ; case 3 -_0203DC34: - ldr r0, [sp] - sub r0, r0, #1 - str r0, [sp] - b _0203DC52 -_0203DC3C: - ldr r0, [sp] - add r0, r0, #1 - str r0, [sp] - b _0203DC52 -_0203DC44: - ldr r0, [sp, #4] - sub r0, r0, #1 - str r0, [sp, #4] - b _0203DC52 -_0203DC4C: - ldr r0, [sp, #4] - add r0, r0, #1 - str r0, [sp, #4] -_0203DC52: - ldr r0, [r5, #0x3c] - ldr r1, [sp, #4] - ldr r2, [sp] - mov r3, #0 - bl sub_0205FB58 - str r0, [r6] - add sp, #8 - pop {r4, r5, r6, pc} - thumb_func_end sub_0203DBF8 - - thumb_func_start sub_0203DC64 -sub_0203DC64: ; 0x0203DC64 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - bl sub_0203DBF8 - ldr r0, [r4] - cmp r0, #0 - beq _0203DC8C - bl sub_0205F6C8 - cmp r0, #1 - bne _0203DC8C - ldr r0, [r5, #0x40] - ldr r1, [r4] - bl sub_0203DBD4 - cmp r0, #1 - bne _0203DC8C - mov r0, #1 - pop {r3, r4, r5, pc} -_0203DC8C: - mov r0, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203DC64 - - thumb_func_start sub_0203DC90 -sub_0203DC90: ; 0x0203DC90 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - str r1, [sp] - str r2, [sp, #4] - add r1, sp, #0xc - add r2, sp, #8 - add r6, r0, #0 - bl sub_0203DB78 - ldr r0, [sp, #4] - mov r7, #0 - cmp r0, #0 - ble _0203DD04 - ldr r4, [sp] - add r5, r4, #0 -_0203DCAE: - ldr r1, [sp, #0xc] - ldr r0, [r4, #4] - cmp r1, r0 - bne _0203DCF8 - ldr r1, [sp, #8] - ldr r0, [r4, #8] - cmp r1, r0 - bne _0203DCF8 - ldrh r0, [r4, #2] - cmp r0, #2 - bne _0203DCDE - add r0, r6, #0 - add r1, r5, #0 - bl sub_0203DD10 - cmp r0, #1 - bne _0203DCF8 - mov r0, #0x14 - add r1, r7, #0 - mul r1, r0 - ldr r0, [sp] - add sp, #0x10 - ldrh r0, [r0, r1] - pop {r3, r4, r5, r6, r7, pc} -_0203DCDE: - add r0, r6, #0 - add r1, r5, #0 - bl sub_0203DD3C - cmp r0, #1 - bne _0203DCF8 - mov r0, #0x14 - add r1, r7, #0 - mul r1, r0 - ldr r0, [sp] - add sp, #0x10 - ldrh r0, [r0, r1] - pop {r3, r4, r5, r6, r7, pc} -_0203DCF8: - ldr r0, [sp, #4] - add r7, r7, #1 - add r4, #0x14 - add r5, #0x14 - cmp r7, r0 - blt _0203DCAE -_0203DD04: - ldr r0, _0203DD0C ; =0x0000FFFF - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203DD0C: .word 0x0000FFFF - thumb_func_end sub_0203DC90 - - thumb_func_start sub_0203DD10 -sub_0203DD10: ; 0x0203DD10 - push {r4, lr} - add r4, r0, #0 - ldrh r0, [r1, #2] - cmp r0, #2 - beq _0203DD1E - mov r0, #0 - pop {r4, pc} -_0203DD1E: - ldrh r0, [r1] - bl sub_0204055C - add r1, r0, #0 - add r0, r4, #0 - bl sub_020403FC - cmp r0, #1 - beq _0203DD34 - mov r0, #1 - b _0203DD36 -_0203DD34: - mov r0, #0 -_0203DD36: - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - pop {r4, pc} - thumb_func_end sub_0203DD10 - - thumb_func_start sub_0203DD3C -sub_0203DD3C: ; 0x0203DD3C - push {r4, lr} - add r4, r1, #0 - ldrh r1, [r4, #0x10] - cmp r1, #4 - bne _0203DD4A - mov r0, #1 - pop {r4, pc} -_0203DD4A: - ldr r0, [r0, #0x40] - bl sub_0205C654 - cmp r0, #3 - bhi _0203DDA0 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203DD60: ; jump table - .short _0203DD68 - _0203DD60 - 2 ; case 0 - .short _0203DD76 - _0203DD60 - 2 ; case 1 - .short _0203DD84 - _0203DD60 - 2 ; case 2 - .short _0203DD92 - _0203DD60 - 2 ; case 3 -_0203DD68: - ldrh r0, [r4, #0x10] - cmp r0, #0 - beq _0203DD72 - cmp r0, #6 - bne _0203DDA0 -_0203DD72: - mov r0, #1 - pop {r4, pc} -_0203DD76: - ldrh r0, [r4, #0x10] - cmp r0, #3 - beq _0203DD80 - cmp r0, #6 - bne _0203DDA0 -_0203DD80: - mov r0, #1 - pop {r4, pc} -_0203DD84: - ldrh r0, [r4, #0x10] - cmp r0, #2 - beq _0203DD8E - cmp r0, #5 - bne _0203DDA0 -_0203DD8E: - mov r0, #1 - pop {r4, pc} -_0203DD92: - ldrh r0, [r4, #0x10] - cmp r0, #1 - beq _0203DD9C - cmp r0, #5 - bne _0203DDA0 -_0203DD9C: - mov r0, #1 - pop {r4, pc} -_0203DDA0: - mov r0, #0 - pop {r4, pc} - thumb_func_end sub_0203DD3C - - thumb_func_start sub_0203DDA4 -sub_0203DDA4: ; 0x0203DDA4 - push {r4, r5, r6, lr} - sub sp, #8 - add r5, r0, #0 - ldr r0, [r5, #0x40] - add r6, r1, #0 - add r4, r2, #0 - bl sub_0205C654 - cmp r0, #0 - beq _0203DDBE - add sp, #8 - ldr r0, _0203DE00 ; =0x0000FFFF - pop {r4, r5, r6, pc} -_0203DDBE: - add r0, r5, #0 - add r1, sp, #4 - add r2, sp, #0 - bl sub_0203DB78 - mov r0, #0 - cmp r4, #0 - ble _0203DDF8 - ldr r2, [sp, #4] - ldr r3, [sp] - add r1, r6, #0 -_0203DDD4: - ldr r5, [r1, #4] - cmp r2, r5 - bne _0203DDF0 - ldr r5, [r1, #8] - cmp r3, r5 - bne _0203DDF0 - ldrh r5, [r1, #2] - cmp r5, #1 - bne _0203DDF0 - mov r1, #0x14 - mul r1, r0 - add sp, #8 - ldrh r0, [r6, r1] - pop {r4, r5, r6, pc} -_0203DDF0: - add r0, r0, #1 - add r1, #0x14 - cmp r0, r4 - blt _0203DDD4 -_0203DDF8: - ldr r0, _0203DE00 ; =0x0000FFFF - add sp, #8 - pop {r4, r5, r6, pc} - nop -_0203DE00: .word 0x0000FFFF - thumb_func_end sub_0203DDA4 - - thumb_func_start sub_0203DE04 -sub_0203DE04: ; 0x0203DE04 - push {r4, r5, r6, r7, lr} - sub sp, #0xc - str r0, [sp] - ldr r0, [r0, #0x40] - str r1, [sp, #4] - str r2, [sp, #8] - bl sub_0205C67C - add r6, r0, #0 - ldr r0, [sp] - ldr r0, [r0, #0x40] - bl sub_0205C688 - add r4, r0, #0 - ldr r0, [sp, #8] - mov r7, #0 - cmp r0, #0 - ble _0203DE68 - ldr r5, [sp, #4] -_0203DE2A: - ldrh r1, [r5, #2] - cmp r6, r1 - blt _0203DE5E - ldrh r0, [r5, #6] - add r0, r1, r0 - cmp r6, r0 - bge _0203DE5E - ldrh r1, [r5, #4] - cmp r4, r1 - blt _0203DE5E - ldrh r0, [r5, #8] - add r0, r1, r0 - cmp r4, r0 - bge _0203DE5E - ldrh r1, [r5, #0xe] - ldr r0, [sp] - bl sub_020403AC - ldrh r1, [r5, #0xc] - cmp r1, r0 - bne _0203DE5E - ldr r0, [sp, #4] - lsl r1, r7, #4 - add sp, #0xc - ldrh r0, [r0, r1] - pop {r4, r5, r6, r7, pc} -_0203DE5E: - ldr r0, [sp, #8] - add r7, r7, #1 - add r5, #0x10 - cmp r7, r0 - blt _0203DE2A -_0203DE68: - ldr r0, _0203DE70 ; =0x0000FFFF - add sp, #0xc - pop {r4, r5, r6, r7, pc} - nop -_0203DE70: .word 0x0000FFFF - thumb_func_end sub_0203DE04 - - thumb_func_start sub_0203DE74 -sub_0203DE74: ; 0x0203DE74 - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_020072A4 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203DFE0 - ldr r1, _0203DEA0 ; =0x021D4158 - str r0, [r1] - ldr r1, [r4, #4] - cmp r1, #0 - beq _0203DE94 - bl sub_02053620 - b _0203DE98 -_0203DE94: - bl sub_0205353C -_0203DE98: - mov r0, #0 - str r0, [r4, #4] - mov r0, #1 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203DEA0: .word 0x021D4158 - thumb_func_end sub_0203DE74 - - thumb_func_start sub_0203DEA4 -sub_0203DEA4: ; 0x0203DEA4 - push {r3, lr} - bl sub_0203DFE0 - ldr r1, _0203DEB8 ; =0x021D4158 - str r0, [r1] - bl sub_02053470 - mov r0, #1 - pop {r3, pc} - nop -_0203DEB8: .word 0x021D4158 - thumb_func_end sub_0203DEA4 - - thumb_func_start sub_0203DEBC -sub_0203DEBC: ; 0x0203DEBC - push {r3, lr} - bl sub_02007290 - bl sub_0203E0CC - cmp r0, #0 - beq _0203DECE - mov r0, #1 - pop {r3, pc} -_0203DECE: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203DEBC - - .public ov60_021EAFE0 - - thumb_func_start sub_0203DED4 -sub_0203DED4: ; 0x0203DED4 - push {r3, lr} - bl sub_0203E058 - ldr r0, _0203DEE8 ; =SDK_OVERLAY_OVY_60_ID - ldr r1, _0203DEEC ; =ov60_021EAFE0 - bl RegisterMainOverlay - mov r0, #1 - pop {r3, pc} - nop -_0203DEE8: .word SDK_OVERLAY_OVY_60_ID -_0203DEEC: .word ov60_021EAFE0 - thumb_func_end sub_0203DED4 - - thumb_func_start sub_0203DEF0 -sub_0203DEF0: ; 0x0203DEF0 - push {r4, lr} - add r4, r0, #0 - ldr r0, [r4] - ldr r0, [r0, #4] - cmp r0, #0 - beq _0203DF00 - bl GF_AssertFail -_0203DF00: - ldr r0, [r4] - ldr r0, [r0] - cmp r0, #0 - beq _0203DF0C - bl GF_AssertFail -_0203DF0C: - ldr r0, _0203DF2C ; =SDK_OVERLAY_OVY_1_ID - mov r1, #2 - bl HandleLoadOverlay - mov r1, #0 - str r1, [r4, #0x6c] - ldr r0, [r4] - mov r2, #0xb - str r1, [r0, #8] - ldr r0, _0203DF30 ; =0x02206378 - add r1, r4, #0 - bl OverlayManager_new - ldr r1, [r4] - str r0, [r1] - pop {r4, pc} - .balign 4, 0 -_0203DF2C: .word SDK_OVERLAY_OVY_1_ID -_0203DF30: .word 0x02206378 - thumb_func_end sub_0203DEF0 - - thumb_func_start sub_0203DF34 -sub_0203DF34: ; 0x0203DF34 - mov r1, #0 - str r1, [r0, #0x6c] - bx lr - .balign 4, 0 - thumb_func_end sub_0203DF34 - - thumb_func_start sub_0203DF3C -sub_0203DF3C: ; 0x0203DF3C - push {r4, lr} - add r4, r0, #0 - mov r0, #0x11 - lsl r0, r0, #4 - ldrb r0, [r4, r0] - mov r1, #1 - cmp r0, #0 - beq _0203DF52 - cmp r0, #1 - beq _0203DF52 - mov r1, #0 -_0203DF52: - cmp r1, #0 - bne _0203DF5A - bl GF_AssertFail -_0203DF5A: - mov r0, #0x11 - lsl r0, r0, #4 - ldrb r0, [r4, r0] - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203DF3C - - thumb_func_start sub_0203DF64 -sub_0203DF64: ; 0x0203DF64 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - beq _0203DF74 - cmp r4, #1 - beq _0203DF74 - bl GF_AssertFail -_0203DF74: - mov r0, #0x11 - lsl r0, r0, #4 - strb r4, [r5, r0] - pop {r3, r4, r5, pc} - thumb_func_end sub_0203DF64 - - thumb_func_start sub_0203DF7C -sub_0203DF7C: ; 0x0203DF7C - ldr r0, [r0] - ldr r0, [r0] - cmp r0, #0 - beq _0203DF88 - mov r0, #1 - bx lr -_0203DF88: - mov r0, #0 - bx lr - thumb_func_end sub_0203DF7C - - thumb_func_start sub_0203DF8C -sub_0203DF8C: ; 0x0203DF8C - ldr r1, [r0] - ldr r1, [r1] - cmp r1, #0 - beq _0203DF9E - ldr r0, [r0, #0x6c] - cmp r0, #0 - beq _0203DF9E - mov r0, #1 - bx lr -_0203DF9E: - mov r0, #0 - bx lr - .balign 4, 0 - thumb_func_end sub_0203DF8C - - thumb_func_start sub_0203DFA4 -sub_0203DFA4: ; 0x0203DFA4 - ldr r0, [r0] - ldr r0, [r0, #4] - cmp r0, #0 - beq _0203DFB0 - mov r0, #1 - bx lr -_0203DFB0: - mov r0, #0 - bx lr - thumb_func_end sub_0203DFA4 - - thumb_func_start SwitchToPokegearApp -SwitchToPokegearApp: ; 0x0203DFB4 - push {r4, r5, r6, lr} - add r5, r0, #0 - ldr r0, [r5] - add r4, r1, #0 - ldr r0, [r0, #4] - add r6, r2, #0 - cmp r0, #0 - beq _0203DFC8 - bl GF_AssertFail -_0203DFC8: - add r0, r5, #0 - bl sub_0203DF34 - add r0, r4, #0 - add r1, r6, #0 - mov r2, #0xb - bl OverlayManager_new - ldr r1, [r5] - str r0, [r1, #4] - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end SwitchToPokegearApp - - thumb_func_start sub_0203DFE0 -sub_0203DFE0: ; 0x0203DFE0 - push {r4, r5, r6, lr} - mov r2, #7 - add r5, r0, #0 - mov r0, #3 - mov r1, #0xb - lsl r2, r2, #0xe - bl sub_0201A910 - mov r1, #0x20 - mov r0, #3 - lsl r2, r1, #9 - bl sub_0201A910 - mov r2, #0x57 - mov r0, #0 - mov r1, #0x59 - lsl r2, r2, #4 - bl sub_0201A910 - mov r1, #0x4a - add r0, r5, #0 - lsl r1, r1, #2 - mov r2, #0xb - bl sub_02007280 - mov r2, #0x4a - mov r1, #0 - lsl r2, r2, #2 - add r4, r0, #0 - bl MIi_CpuFill8 - mov r0, #0xb - mov r1, #0x10 - bl AllocFromHeap - str r0, [r4] - mov r1, #0 - str r1, [r0] - ldr r0, [r4] - ldr r6, _0203E054 ; =SDK_OVERLAY_OVY_124_ID - str r1, [r0, #4] - ldr r0, [r4] - str r1, [r0, #8] - ldr r0, [r4] - str r1, [r0, #0xc] - add r0, r6, #0 - mov r1, #2 - bl HandleLoadOverlay - add r0, r5, #0 - add r1, r4, #0 - bl ov124_02260C20 - add r0, r6, #0 - bl UnloadOverlayByID - add r0, r4, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203E054: .word SDK_OVERLAY_OVY_124_ID - thumb_func_end sub_0203DFE0 - - thumb_func_start sub_0203E058 -sub_0203E058: ; 0x0203E058 - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_02007290 - add r4, r0, #0 - ldr r0, [r4, #0x30] - bl sub_0203AFD8 - add r0, r4, #0 - bl sub_0203B630 - add r0, r4, #0 - add r0, #0x94 - ldr r0, [r0] - bl FreeToHeap - add r0, r4, #0 - add r0, #0xa8 - ldr r0, [r0] - bl sub_02092BD0 - mov r0, #0x45 - lsl r0, r0, #2 - ldr r0, [r4, r0] - bl sub_02092DD8 - ldr r0, [r4] - bl FreeToHeap - add r0, r5, #0 - bl sub_02007294 - mov r0, #0x59 - bl sub_0201A9C4 - mov r0, #0xb - bl sub_0201A9C4 - mov r0, #0x20 - bl sub_0201A9C4 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203E058 - - thumb_func_start sub_0203E0AC -sub_0203E0AC: ; 0x0203E0AC - push {r4, lr} - add r4, r0, #0 - ldr r0, [r4] - cmp r0, #0 - beq _0203E0C8 - bl OverlayManager_run - cmp r0, #0 - beq _0203E0C8 - ldr r0, [r4] - bl OverlayManager_delete - mov r0, #0 - str r0, [r4] -_0203E0C8: - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203E0AC - - thumb_func_start sub_0203E0CC -sub_0203E0CC: ; 0x0203E0CC - push {r4, lr} - add r4, r0, #0 - bl sub_0203E15C - add r0, r4, #0 - bl sub_02050544 - cmp r0, #1 - bne _0203E0EE - ldr r0, [r4, #4] - cmp r0, #0 - beq _0203E0EE - mov r1, #0 - add r0, r4, #0 - add r2, r1, #0 - bl ov01_021F6830 -_0203E0EE: - ldr r0, [r4] - ldr r1, [r0] - cmp r1, #0 - beq _0203E10A - bl sub_0203E0AC - ldr r0, [r4] - ldr r0, [r0] - cmp r0, #0 - bne _0203E116 - ldr r0, _0203E138 ; =SDK_OVERLAY_OVY_1_ID - bl UnloadOverlayByID - b _0203E116 -_0203E10A: - ldr r1, [r0, #4] - cmp r1, #0 - beq _0203E116 - add r0, r0, #4 - bl sub_0203E0AC -_0203E116: - ldr r1, [r4] - ldr r0, [r1, #0xc] - cmp r0, #0 - beq _0203E134 - ldr r0, [r4, #0x10] - cmp r0, #0 - bne _0203E134 - ldr r0, [r1] - cmp r0, #0 - bne _0203E134 - ldr r0, [r1, #4] - cmp r0, #0 - bne _0203E134 - mov r0, #1 - pop {r4, pc} -_0203E134: - mov r0, #0 - pop {r4, pc} - .balign 4, 0 -_0203E138: .word SDK_OVERLAY_OVY_1_ID - thumb_func_end sub_0203E0CC - - thumb_func_start sub_0203E13C -sub_0203E13C: ; 0x0203E13C - push {r3, lr} - ldr r1, [r0] - ldr r1, [r1, #8] - cmp r1, #0 - bne _0203E158 - ldr r1, [r0, #0x6c] - cmp r1, #0 - beq _0203E158 - bl sub_02050590 - cmp r0, #0 - bne _0203E158 - mov r0, #1 - pop {r3, pc} -_0203E158: - mov r0, #0 - pop {r3, pc} - thumb_func_end sub_0203E13C - - thumb_func_start sub_0203E15C -sub_0203E15C: ; 0x0203E15C - push {r4, r5, lr} - sub sp, #0x14 - add r4, r0, #0 - bl sub_0203E13C - add r5, r0, #0 - beq _0203E186 - ldr r0, [r4, #0x40] - bl sub_0205CE68 - ldr r3, _0203E2EC ; =gMain - add r0, sp, #8 - ldr r2, [r3, #0x48] - ldr r3, [r3, #0x44] - lsl r2, r2, #0x10 - lsl r3, r3, #0x10 - add r1, r4, #0 - lsr r2, r2, #0x10 - lsr r3, r3, #0x10 - bl ov01_021E6928 -_0203E186: - ldr r0, [r4, #0x20] - ldr r2, [r4, #0x70] - ldr r1, [r0] - ldr r0, _0203E2F0 ; =0x00000109 - cmp r1, r0 - bne _0203E194 - mov r2, #0 -_0203E194: - cmp r2, #2 - beq _0203E1CC - cmp r2, #3 - beq _0203E1A2 - cmp r2, #4 - beq _0203E1F8 - b _0203E268 -_0203E1A2: - cmp r5, #0 - beq _0203E1C0 - bl sub_02057A0C - cmp r0, #0 - beq _0203E1BE - add r0, sp, #8 - add r1, r4, #0 - bl ov01_021E6E00 - cmp r0, #1 - bne _0203E1C0 - mov r5, #0 - b _0203E1C0 -_0203E1BE: - mov r5, #0 -_0203E1C0: - add r0, r4, #0 - add r1, r5, #0 - bl sub_020573F0 - add sp, #0x14 - pop {r4, r5, pc} -_0203E1CC: - cmp r5, #0 - beq _0203E1DC - add r0, sp, #8 - add r1, r4, #0 - bl ov01_021E6EFC - cmp r0, #1 - bne _0203E1DE -_0203E1DC: - b _0203E2E8 -_0203E1DE: - add r3, sp, #8 - ldrh r0, [r3, #8] - mov r2, #0 - str r0, [sp] - str r2, [sp, #4] - ldrh r3, [r3, #6] - ldr r0, [r4, #0x40] - ldr r1, [r4, #0x2c] - sub r2, r2, #1 - bl sub_0205CB48 - add sp, #0x14 - pop {r4, r5, pc} -_0203E1F8: - cmp r5, #0 - beq _0203E2E8 - add r0, sp, #8 - add r1, r4, #0 - bl ov01_021E6FD4 - cmp r0, #1 - bne _0203E22C - ldr r0, [r4, #4] - ldr r0, [r0, #8] - bl ov01_021EFACC - add r0, r4, #0 - mov r1, #4 - bl ov01_021F3DFC - ldr r0, [r4, #0x40] - bl ov01_021F2F24 - add r0, r4, #0 - mov r1, #0 - mov r2, #1 - bl ov01_021F6830 - add sp, #0x14 - pop {r4, r5, pc} -_0203E22C: - ldr r0, _0203E2EC ; =gMain - ldr r1, [r0, #0x48] - mov r0, #1 - tst r0, r1 - beq _0203E23E - ldr r0, [r4, #4] - ldr r0, [r0, #8] - bl ov01_021EFACC -_0203E23E: - mov r5, #0 - bl sub_0203E324 - cmp r0, #0 - beq _0203E24E - bl ov35_02259DB8 - add r5, r0, #0 -_0203E24E: - add r3, sp, #8 - ldrh r0, [r3, #8] - mov r2, #0 - mvn r2, r2 - str r0, [sp] - str r5, [sp, #4] - ldrh r3, [r3, #6] - ldr r0, [r4, #0x40] - ldr r1, [r4, #0x2c] - bl sub_0205CB48 - add sp, #0x14 - pop {r4, r5, pc} -_0203E268: - cmp r5, #0 - beq _0203E2E8 - add r0, sp, #8 - add r1, r4, #0 - bl ov01_021E6AF4 - add r5, r0, #0 - beq _0203E2B0 - ldr r0, [r4, #4] - ldr r0, [r0, #8] - bl ov01_021EFACC - add r0, r4, #0 - mov r1, #4 - bl ov01_021F3DFC - ldr r0, [r4, #0x40] - bl sub_0205CF44 - ldr r0, [r4, #0x40] - bl ov01_021F2F24 - add r0, r4, #0 - mov r1, #0 - mov r2, #1 - bl ov01_021F6830 - cmp r5, #2 - beq _0203E2E8 - mov r0, #0x45 - lsl r0, r0, #2 - ldr r0, [r4, r0] - bl sub_02092FA8 - add sp, #0x14 - pop {r4, r5, pc} -_0203E2B0: - ldr r0, _0203E2EC ; =gMain - ldr r1, [r0, #0x48] - mov r0, #1 - tst r0, r1 - beq _0203E2C2 - ldr r0, [r4, #4] - ldr r0, [r0, #8] - bl ov01_021EFACC -_0203E2C2: - mov r5, #0 - bl sub_0203E324 - cmp r0, #0 - beq _0203E2D2 - bl ov35_02259DB8 - add r5, r0, #0 -_0203E2D2: - add r3, sp, #8 - ldrh r0, [r3, #8] - mov r2, #0 - mvn r2, r2 - str r0, [sp] - str r5, [sp, #4] - ldrh r3, [r3, #6] - ldr r0, [r4, #0x40] - ldr r1, [r4, #0x2c] - bl sub_0205CB48 -_0203E2E8: - add sp, #0x14 - pop {r4, r5, pc} - .balign 4, 0 -_0203E2EC: .word gMain -_0203E2F0: .word 0x00000109 - thumb_func_end sub_0203E15C - - thumb_func_start sub_0203E2F4 -sub_0203E2F4: ; 0x0203E2F4 - ldr r0, _0203E304 ; =0x021D4158 - ldr r3, _0203E308 ; =sub_02037504 - ldr r0, [r0] - mov r1, #1 - ldr r0, [r0] - str r1, [r0, #8] - bx r3 - nop -_0203E304: .word 0x021D4158 -_0203E308: .word sub_02037504 - thumb_func_end sub_0203E2F4 - - thumb_func_start sub_0203E30C -sub_0203E30C: ; 0x0203E30C - ldr r0, _0203E31C ; =0x021D4158 - ldr r3, _0203E320 ; =sub_020374E4 - ldr r0, [r0] - mov r1, #0 - ldr r0, [r0] - str r1, [r0, #8] - bx r3 - nop -_0203E31C: .word 0x021D4158 -_0203E320: .word sub_020374E4 - thumb_func_end sub_0203E30C - - thumb_func_start sub_0203E324 -sub_0203E324: ; 0x0203E324 - ldr r0, _0203E338 ; =0x021D4158 - ldr r0, [r0] - ldr r0, [r0, #4] - cmp r0, #0 - bne _0203E332 - mov r0, #0 - bx lr -_0203E332: - ldr r0, [r0, #0x14] - bx lr - nop -_0203E338: .word 0x021D4158 - thumb_func_end sub_0203E324 - - thumb_func_start sub_0203E33C -sub_0203E33C: ; 0x0203E33C - str r1, [r0, #0x1c] - bx lr - thumb_func_end sub_0203E33C - - thumb_func_start sub_0203E340 -sub_0203E340: ; 0x0203E340 - ldr r0, [r0, #8] - bx lr - thumb_func_end sub_0203E340 - - thumb_func_start sub_0203E344 -sub_0203E344: ; 0x0203E344 - ldr r0, [r0, #0xc] - bx lr - thumb_func_end sub_0203E344 - - thumb_func_start sub_0203E348 -sub_0203E348: ; 0x0203E348 - push {r3, lr} - bl LCRandom - bl LCRandom - pop {r3, pc} - thumb_func_end sub_0203E348 - - thumb_func_start sub_0203E354 -sub_0203E354: ; 0x0203E354 - ldr r0, _0203E364 ; =0x021D4158 - mov r1, #1 - ldr r0, [r0] - mvn r1, r1 - add r0, #0xc4 - str r1, [r0] - bx lr - nop -_0203E364: .word 0x021D4158 - thumb_func_end sub_0203E354 - - thumb_func_start sub_0203E368 -sub_0203E368: ; 0x0203E368 - ldr r2, _0203E37C ; =0x020FA17C - add r3, r0, #0 - ldmia r2!, {r0, r1} - stmia r3!, {r0, r1} - ldmia r2!, {r0, r1} - stmia r3!, {r0, r1} - ldr r0, [r2] - str r0, [r3] - bx lr - nop -_0203E37C: .word 0x020FA17C - thumb_func_end sub_0203E368 - - thumb_func_start sub_0203E380 -sub_0203E380: ; 0x0203E380 - ldr r2, _0203E394 ; =0x020FA190 - add r3, r0, #0 - ldmia r2!, {r0, r1} - stmia r3!, {r0, r1} - ldmia r2!, {r0, r1} - stmia r3!, {r0, r1} - ldr r0, [r2] - str r0, [r3] - bx lr - nop -_0203E394: .word 0x020FA190 - thumb_func_end sub_0203E380 - - thumb_func_start sub_0203E398 -sub_0203E398: ; 0x0203E398 - push {r3, lr} - bl sub_0203B9C4 - bl sub_0203B958 - bl sub_0203E368 - pop {r3, pc} - thumb_func_end sub_0203E398 - - thumb_func_start sub_0203E3A8 -sub_0203E3A8: ; 0x0203E3A8 - mov r0, #1 - bx lr - thumb_func_end sub_0203E3A8 - - thumb_func_start sub_0203E3AC -sub_0203E3AC: ; 0x0203E3AC - push {r3, lr} - bl ov12_022378C0 - cmp r0, #0 - beq _0203E3BA - mov r0, #1 - pop {r3, pc} -_0203E3BA: - mov r0, #0 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_0203E3AC - - thumb_func_start sub_0203E3C0 -sub_0203E3C0: ; 0x0203E3C0 - mov r0, #1 - bx lr - thumb_func_end sub_0203E3C0 - - thumb_func_start sub_0203E3C4 -sub_0203E3C4: ; 0x0203E3C4 - ldr r3, _0203E3CC ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203E3D0 ; =0x020FA484 - bx r3 - .balign 4, 0 -_0203E3CC: .word SwitchToPokegearApp -_0203E3D0: .word 0x020FA484 - thumb_func_end sub_0203E3C4 - - thumb_func_start sub_0203E3D4 -sub_0203E3D4: ; 0x0203E3D4 - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203E3F8 ; =0x020FA464 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203E3F8: .word 0x020FA464 - thumb_func_end sub_0203E3D4 - - thumb_func_start sub_0203E3FC -sub_0203E3FC: ; 0x0203E3FC - push {r3, r4, r5, r6, lr} - sub sp, #4 - add r5, r0, #0 - ldr r0, [r5, #0xc] - add r6, r1, #0 - bl sub_0207879C - ldr r1, _0203E45C ; =0x020FA1B8 - mov r2, #0xb - bl sub_02078644 - mov r1, #0x43 - lsl r1, r1, #2 - add r1, r5, r1 - add r3, r5, #0 - str r1, [sp] - add r3, #0x94 - ldr r1, [r5, #0xc] - ldr r3, [r3] - mov r2, #0 - add r4, r0, #0 - bl sub_0207789C - ldr r1, [r5, #0x70] - add r0, r4, #0 - lsl r1, r1, #0x10 - lsr r1, r1, #0x10 - bl sub_020778E8 - ldr r0, [r5, #0x40] - bl sub_0205C700 - cmp r0, #1 - bne _0203E446 - add r0, r4, #0 - bl sub_020778C8 -_0203E446: - add r0, r4, #0 - add r1, r6, #0 - bl sub_020778DC - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203E3D4 - add r0, r4, #0 - add sp, #4 - pop {r3, r4, r5, r6, pc} - .balign 4, 0 -_0203E45C: .word 0x020FA1B8 - thumb_func_end sub_0203E3FC - - thumb_func_start sub_0203E460 -sub_0203E460: ; 0x0203E460 - push {r3, r4, r5, r6, lr} - sub sp, #4 - add r5, r0, #0 - ldr r0, [r5, #0xc] - add r4, r1, #0 - bl sub_0207879C - add r6, r0, #0 - cmp r4, #0 - beq _0203E47A - cmp r4, #1 - beq _0203E482 - b _0203E48A -_0203E47A: - ldr r1, _0203E4C0 ; =0x020FA1A4 - ldr r0, _0203E4C4 ; =0x0210F978 - str r1, [r0] - b _0203E48E -_0203E482: - ldr r1, _0203E4C8 ; =0x020FA1AC - ldr r0, _0203E4C4 ; =0x0210F978 - str r1, [r0] - b _0203E48E -_0203E48A: - bl GF_AssertFail -_0203E48E: - ldr r1, _0203E4C4 ; =0x0210F978 - add r0, r6, #0 - ldr r1, [r1] - mov r2, #0x20 - bl sub_02078644 - mov r1, #0x43 - lsl r1, r1, #2 - add r1, r5, r1 - add r3, r5, #0 - str r1, [sp] - add r3, #0x94 - ldr r1, [r5, #0xc] - ldr r3, [r3] - add r4, r0, #0 - mov r2, #3 - bl sub_0207789C - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203E3D4 - add r0, r4, #0 - add sp, #4 - pop {r3, r4, r5, r6, pc} - .balign 4, 0 -_0203E4C0: .word 0x020FA1A4 -_0203E4C4: .word 0x0210F978 -_0203E4C8: .word 0x020FA1AC - thumb_func_end sub_0203E460 - - thumb_func_start sub_0203E4CC -sub_0203E4CC: ; 0x0203E4CC - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_02077904 - add r4, r0, #0 - beq _0203E4E6 - add r0, r5, #0 - bl sub_0207790C - cmp r0, #5 - bne _0203E4E6 - bl GF_AssertFail -_0203E4E6: - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203E4CC - - thumb_func_start sub_0203E4EC -sub_0203E4EC: ; 0x0203E4EC - ldr r3, _0203E4F4 ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203E4F8 ; =0x02103A1C - bx r3 - .balign 4, 0 -_0203E4F4: .word SwitchToPokegearApp -_0203E4F8: .word 0x02103A1C - thumb_func_end sub_0203E4EC - - thumb_func_start sub_0203E4FC -sub_0203E4FC: ; 0x0203E4FC - push {r3, r4, r5, r6, r7, lr} - add r5, r1, #0 - mov r1, #0x44 - add r6, r2, #0 - add r7, r3, #0 - bl AllocFromHeap - add r4, r0, #0 - mov r0, #0 - add r1, r4, #0 - mov r2, #0x44 - bl MIi_CpuClearFast - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - str r0, [r4] - ldr r0, [r5, #0xc] - bl sub_0207879C - str r0, [r4, #4] - ldr r0, [r5, #0xc] - bl Sav2_Mailbox_get - str r0, [r4, #8] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #0xc] - add r0, r4, #0 - add r0, #0x25 - strb r6, [r0] - add r0, r4, #0 - add r0, #0x24 - strb r7, [r0] - mov r0, #0x43 - lsl r0, r0, #2 - str r5, [r4, #0x1c] - add r0, r5, r0 - str r0, [r4, #0x20] - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0203E4FC - - thumb_func_start sub_0203E550 -sub_0203E550: ; 0x0203E550 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r7, r2, #0 - mov r2, #0 - add r6, r1, #0 - mov r0, #0xb - add r1, r5, #0 - add r3, r2, #0 - bl sub_0203E4FC - add r4, r0, #0 - str r6, [r4, #0x18] - add r0, #0x26 - strb r7, [r0] - ldr r1, _0203E57C ; =0x0210159C - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203E57C: .word 0x0210159C - thumb_func_end sub_0203E550 - - thumb_func_start sub_0203E580 -sub_0203E580: ; 0x0203E580 - push {r3, r4, r5, lr} - mov r0, #0xb - mov r2, #0 - mov r3, #3 - add r5, r1, #0 - bl sub_0203E4FC - add r4, r0, #0 - ldr r1, _0203E5A0 ; =0x0210159C - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r3, r4, r5, pc} - nop -_0203E5A0: .word 0x0210159C - thumb_func_end sub_0203E580 - - thumb_func_start sub_0203E5A4 -sub_0203E5A4: ; 0x0203E5A4 - push {r3, r4, r5, lr} - mov r0, #0xb - mov r2, #0 - mov r3, #0x13 - add r5, r1, #0 - bl sub_0203E4FC - add r4, r0, #0 - ldr r1, _0203E5C4 ; =0x0210159C - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r3, r4, r5, pc} - nop -_0203E5C4: .word 0x0210159C - thumb_func_end sub_0203E5A4 - - thumb_func_start sub_0203E5C8 -sub_0203E5C8: ; 0x0203E5C8 - add r0, #0x26 - ldrb r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0203E5C8 - - thumb_func_start sub_0203E5D0 -sub_0203E5D0: ; 0x0203E5D0 - push {r4, r5, r6, lr} - add r4, r2, #0 - mov r0, #0xb - mov r2, #0 - mov r3, #0x12 - add r5, r1, #0 - bl sub_0203E4FC - add r6, r0, #0 - add r0, #0x26 - strb r4, [r0] - ldr r1, _0203E5F4 ; =0x0210159C - add r0, r5, #0 - add r2, r6, #0 - bl SwitchToPokegearApp - add r0, r6, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203E5F4: .word 0x0210159C - thumb_func_end sub_0203E5D0 - - thumb_func_start sub_0203E5F8 -sub_0203E5F8: ; 0x0203E5F8 - add r0, #0x27 - ldrb r0, [r0] - bx lr - .balign 4, 0 - thumb_func_end sub_0203E5F8 - - thumb_func_start sub_0203E600 -sub_0203E600: ; 0x0203E600 - ldrb r0, [r0, #0x14] - bx lr - thumb_func_end sub_0203E600 - - thumb_func_start sub_0203E604 -sub_0203E604: ; 0x0203E604 - push {r4, r5, r6, lr} - add r5, r0, #0 - bl sub_0205064C - add r6, r0, #0 - add r0, r5, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_02050654 - add r5, r0, #0 - ldr r0, [r5] - cmp r0, #4 - bhi _0203E6CC - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203E630: ; jump table - .short _0203E63A - _0203E630 - 2 ; case 0 - .short _0203E64A - _0203E630 - 2 ; case 1 - .short _0203E680 - _0203E630 - 2 ; case 2 - .short _0203E6A2 - _0203E630 - 2 ; case 3 - .short _0203E6C2 - _0203E630 - 2 ; case 4 -_0203E63A: - ldr r1, _0203E6D0 ; =0x0210159C - ldr r2, [r4, #4] - add r0, r6, #0 - bl SwitchToPokegearApp - mov r0, #1 - str r0, [r5] - b _0203E6CC -_0203E64A: - add r0, r6, #0 - bl sub_020505A0 - cmp r0, #0 - bne _0203E6CC - ldr r0, [r4, #4] - add r0, #0x26 - ldrb r0, [r0] - cmp r0, #6 - beq _0203E66E - cmp r0, #7 - bne _0203E67A - mov r0, #2 - bl sub_0205A508 - mov r0, #4 - str r0, [r5] - b _0203E6CC -_0203E66E: - mov r0, #1 - bl sub_0205A508 - mov r0, #4 - str r0, [r5] - b _0203E6CC -_0203E67A: - mov r0, #2 - str r0, [r5] - b _0203E6CC -_0203E680: - ldr r1, [r4] - add r0, r6, #0 - mov r2, #0 - bl sub_0203E76C - str r0, [r4, #8] - ldr r1, [r4, #4] - add r1, #0x26 - ldrb r1, [r1] - strb r1, [r0, #0x14] - ldr r1, [r4, #8] - add r0, r6, #0 - bl sub_0203E4EC - mov r0, #3 - str r0, [r5] - b _0203E6CC -_0203E6A2: - add r0, r6, #0 - bl sub_020505A0 - cmp r0, #0 - bne _0203E6CC - ldr r0, [r4, #8] - ldrb r1, [r0, #0x14] - ldr r0, [r4, #4] - add r0, #0x26 - strb r1, [r0] - ldr r0, [r4, #8] - bl FreeToHeap - mov r0, #0 - str r0, [r5] - b _0203E6CC -_0203E6C2: - add r0, r4, #0 - bl FreeToHeap - mov r0, #1 - pop {r4, r5, r6, pc} -_0203E6CC: - mov r0, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203E6D0: .word 0x0210159C - thumb_func_end sub_0203E604 - - thumb_func_start sub_0203E6D4 -sub_0203E6D4: ; 0x0203E6D4 - push {r3, r4, r5, r6, r7, lr} - add r5, r1, #0 - add r7, r0, #0 - bl sub_0205064C - add r6, r0, #0 - add r0, r5, #0 - mov r1, #0xc - bl AllocFromHeap - add r4, r0, #0 - add r0, r5, #0 - add r1, r6, #0 - mov r2, #0 - mov r3, #2 - str r5, [r4] - bl sub_0203E4FC - add r5, r0, #0 - add r0, #0x36 - ldrb r1, [r0] - mov r0, #0xf - add r2, r4, #0 - bic r1, r0 - mov r0, #2 - orr r1, r0 - add r0, r5, #0 - add r0, #0x36 - strb r1, [r0] - add r0, r5, #0 - add r0, #0x36 - ldrb r1, [r0] - mov r0, #0xf0 - bic r1, r0 - mov r0, #0x20 - orr r1, r0 - add r0, r5, #0 - add r0, #0x36 - strb r1, [r0] - add r0, r5, #0 - mov r1, #0x1e - add r0, #0x37 - strb r1, [r0] - mov r0, #0 - str r0, [r5, #0x14] - ldr r1, _0203E73C ; =sub_0203E604 - add r0, r7, #0 - str r5, [r4, #4] - bl sub_02050530 - add r0, r5, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203E73C: .word sub_0203E604 - thumb_func_end sub_0203E6D4 - - thumb_func_start sub_0203E740 -sub_0203E740: ; 0x0203E740 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r4, r1, #0 - mov r0, #0xb - add r1, r5, #0 - mov r2, #0 - mov r3, #0x15 - bl sub_0203E4FC - add r6, r0, #0 - add r0, #0x26 - strb r4, [r0] - ldr r1, _0203E768 ; =0x0210159C - add r0, r5, #0 - add r2, r6, #0 - bl SwitchToPokegearApp - add r0, r6, #0 - pop {r4, r5, r6, pc} - nop -_0203E768: .word 0x0210159C - thumb_func_end sub_0203E740 - - thumb_func_start sub_0203E76C -sub_0203E76C: ; 0x0203E76C - push {r3, r4, r5, r6, r7, lr} - add r6, r0, #0 - add r0, r1, #0 - ldr r5, [r6, #0xc] - mov r1, #0x3c - add r7, r2, #0 - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #0x3c - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #4] - add r0, r5, #0 - bl SavArray_PlayerParty_get - str r0, [r4] - mov r0, #1 - strb r0, [r4, #0x11] - mov r0, #0 - strb r0, [r4, #0x14] - ldr r0, [r4] - bl GetPartyCount - strb r0, [r4, #0x13] - mov r0, #0 - strh r0, [r4, #0x18] - strb r7, [r4, #0x12] - add r0, r5, #0 - bl sub_02074910 - str r0, [r4, #0x1c] - add r0, r5, #0 - bl sub_02088288 - str r0, [r4, #0x2c] - add r0, r5, #0 - bl sub_0202D95C - str r0, [r4, #0x20] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r6, r0 - str r0, [r4, #0x30] - ldr r0, [r6, #0xc] - bl sub_0208828C - str r0, [r4, #0x34] - ldr r1, _0203E7F0 ; =0x020FA1B0 - add r0, r4, #0 - bl sub_02089D40 - add r0, r5, #0 - bl Sav2_PlayerData_GetProfileAddr - add r1, r0, #0 - add r0, r4, #0 - bl sub_0208AD34 - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203E7F0: .word 0x020FA1B0 - thumb_func_end sub_0203E76C - - thumb_func_start sub_0203E7F4 -sub_0203E7F4: ; 0x0203E7F4 - push {r3, r4, r5, r6, r7, lr} - add r5, r1, #0 - mov r1, #0x3c - add r6, r2, #0 - add r7, r3, #0 - bl AllocFromHeap - mov r1, #0 - mov r2, #0x3c - add r4, r0, #0 - bl MIi_CpuFill8 - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - str r0, [r4] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #4] - mov r0, #1 - strb r0, [r4, #0x11] - strb r6, [r4, #0x14] - strb r0, [r4, #0x13] - strh r7, [r4, #0x18] - mov r0, #2 - strb r0, [r4, #0x12] - ldr r0, [r5, #0xc] - bl sub_02074910 - str r0, [r4, #0x1c] - mov r0, #0 - str r0, [r4, #0x2c] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #0x30] - ldr r1, _0203E860 ; =0x020FA1A8 - add r0, r4, #0 - bl sub_02089D40 - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetProfileAddr - add r1, r0, #0 - add r0, r4, #0 - bl sub_0208AD34 - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203E4EC - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203E860: .word 0x020FA1A8 - thumb_func_end sub_0203E7F4 - - thumb_func_start sub_0203E864 -sub_0203E864: ; 0x0203E864 - ldrb r0, [r0, #0x16] - bx lr - thumb_func_end sub_0203E864 - - thumb_func_start sub_0203E868 -sub_0203E868: ; 0x0203E868 - ldr r3, _0203E870 ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203E874 ; =0x020FA414 - bx r3 - .balign 4, 0 -_0203E870: .word SwitchToPokegearApp -_0203E874: .word 0x020FA414 - thumb_func_end sub_0203E868 - - thumb_func_start sub_0203E878 -sub_0203E878: ; 0x0203E878 - push {r3, r4, r5, r6, lr} - sub sp, #0xc - add r6, r0, #0 - bl sub_02050654 - add r5, r0, #0 - add r0, r6, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r6, #0 - bl sub_0205064C - ldr r1, [r5] - add r6, r0, #0 - cmp r1, #0 - beq _0203E8A4 - cmp r1, #1 - beq _0203E8B2 - cmp r1, #2 - beq _0203E8C2 - b _0203E958 -_0203E8A4: - ldr r1, [r4, #0xc] - bl sub_0203EA24 - ldr r0, [r5] - add r0, r0, #1 - str r0, [r5] - b _0203E958 -_0203E8B2: - bl sub_020505A0 - cmp r0, #0 - bne _0203E958 - ldr r0, [r5] - add r0, r0, #1 - str r0, [r5] - b _0203E958 -_0203E8C2: - ldr r0, [r4, #0xc] - bl sub_02090D48 - cmp r0, #0 - bne _0203E8D6 - ldr r0, [r4, #0xc] - bl sub_02090D4C - cmp r0, #0 - bne _0203E8DE -_0203E8D6: - ldr r0, [r4] - mov r1, #0 - strh r1, [r0] - b _0203E946 -_0203E8DE: - ldr r0, [r4] - mov r1, #1 - strh r1, [r0] - ldr r0, [r4, #0x10] - cmp r0, #5 - bhi _0203E902 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203E8F6: ; jump table - .short _0203E902 - _0203E8F6 - 2 ; case 0 - .short _0203E90E - _0203E8F6 - 2 ; case 1 - .short _0203E926 - _0203E8F6 - 2 ; case 2 - .short _0203E926 - _0203E8F6 - 2 ; case 3 - .short _0203E926 - _0203E8F6 - 2 ; case 4 - .short _0203E926 - _0203E8F6 - 2 ; case 5 -_0203E902: - ldr r0, [r4, #0xc] - bl sub_02090D50 - ldr r1, [r4, #4] - strh r0, [r1] - b _0203E946 -_0203E90E: - ldr r0, [r4, #0xc] - add r1, sp, #8 - bl sub_02090D54 - add r0, sp, #0 - ldrh r2, [r0, #8] - ldr r1, [r4, #4] - strh r2, [r1] - ldrh r1, [r0, #0xa] - ldr r0, [r4, #8] - strh r1, [r0] - b _0203E946 -_0203E926: - ldr r0, [r4, #0xc] - add r1, sp, #0 - bl sub_02090D60 - ldr r1, [r4, #0x10] - ldr r0, [r6, #0xc] - sub r1, r1, #2 - add r2, sp, #0 - bl sub_0202D640 - add r0, sp, #0 - mov r1, #0 - bl MailMsg_GetFieldI - ldr r1, [r4, #4] - strh r0, [r1] -_0203E946: - ldr r0, [r4, #0xc] - bl sub_02090D0C - add r0, r4, #0 - bl FreeToHeap - add sp, #0xc - mov r0, #1 - pop {r3, r4, r5, r6, pc} -_0203E958: - mov r0, #0 - add sp, #0xc - pop {r3, r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203E878 - - thumb_func_start sub_0203E960 -sub_0203E960: ; 0x0203E960 - push {r4, r5, r6, r7, lr} - sub sp, #0xc - str r0, [sp, #4] - add r6, r1, #0 - str r2, [sp, #8] - add r7, r3, #0 - bl sub_0205064C - add r5, r0, #0 - mov r0, #0x20 - mov r1, #0x14 - bl AllocFromHeap - add r4, r0, #0 - ldr r0, [sp, #8] - cmp r6, #5 - str r0, [r4] - ldr r0, [sp, #0x20] - str r7, [r4, #4] - str r0, [r4, #8] - str r6, [r4, #0x10] - bhi _0203E9A4 - add r0, r6, r6 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203E998: ; jump table - .short _0203E9A4 - _0203E998 - 2 ; case 0 - .short _0203E9C0 - _0203E998 - 2 ; case 1 - .short _0203E9E0 - _0203E998 - 2 ; case 2 - .short _0203E9E0 - _0203E998 - 2 ; case 3 - .short _0203E9E0 - _0203E998 - 2 ; case 4 - .short _0203E9E0 - _0203E998 - 2 ; case 5 -_0203E9A4: - mov r3, #0x20 - str r3, [sp] - mov r0, #0 - add r3, #0xec - ldr r2, [r5, #0xc] - add r1, r0, #0 - add r3, r5, r3 - bl sub_02090C94 - str r0, [r4, #0xc] - ldrh r1, [r7] - bl sub_02090D14 - b _0203EA12 -_0203E9C0: - mov r3, #0x20 - str r3, [sp] - add r3, #0xec - ldr r2, [r5, #0xc] - mov r0, #1 - mov r1, #0 - add r3, r5, r3 - bl sub_02090C94 - str r0, [r4, #0xc] - ldr r2, [sp, #0x20] - ldrh r1, [r7] - ldrh r2, [r2] - bl sub_02090D18 - b _0203EA12 -_0203E9E0: - mov r3, #0x20 - str r3, [sp] - add r3, #0xec - ldr r2, [r5, #0xc] - mov r0, #2 - mov r1, #0 - add r3, r5, r3 - bl sub_02090C94 - str r0, [r4, #0xc] - bl sub_02090D40 - sub r1, r6, #2 - lsl r1, r1, #0x18 - ldr r0, [r5, #0xc] - lsr r1, r1, #0x18 - bl sub_0202D660 - add r1, r0, #0 - ldr r0, [r4, #0xc] - bl sub_02090D20 - ldr r0, [r4, #0xc] - bl sub_02090D34 -_0203EA12: - ldr r0, [sp, #4] - ldr r1, _0203EA20 ; =sub_0203E878 - add r2, r4, #0 - bl sub_02050530 - add sp, #0xc - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_0203EA20: .word sub_0203E878 - thumb_func_end sub_0203E960 - - thumb_func_start sub_0203EA24 -sub_0203EA24: ; 0x0203EA24 - ldr r3, _0203EA2C ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203EA30 ; =0x020FA404 - bx r3 - .balign 4, 0 -_0203EA2C: .word SwitchToPokegearApp -_0203EA30: .word 0x020FA404 - thumb_func_end sub_0203EA24 - - thumb_func_start sub_0203EA34 -sub_0203EA34: ; 0x0203EA34 - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203EA58 ; =0x020FA3F4 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203EA58: .word 0x020FA3F4 - thumb_func_end sub_0203EA34 - - thumb_func_start SwitchToPokegearApp_Radio -SwitchToPokegearApp_Radio: ; 0x0203EA5C - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203EA80 ; =0x020FA3E4 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203EA80: .word 0x020FA3E4 - thumb_func_end SwitchToPokegearApp_Radio - - thumb_func_start sub_0203EA84 -sub_0203EA84: ; 0x0203EA84 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #0x2c - bl AllocFromHeapAtEnd - add r4, r0, #0 - mov r1, #0 - mov r2, #0x2c - bl MIi_CpuFill8 - add r0, r5, #0 - add r1, r4, #0 - bl sub_02092D80 - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EA34 - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203EA84 - - thumb_func_start Radio_new -Radio_new: ; 0x0203EAB0 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r6, r1, #0 - mov r0, #0xb - mov r1, #0x2c - bl AllocFromHeapAtEnd - add r4, r0, #0 - mov r1, #0 - mov r2, #0x2c - bl MIi_CpuFill8 - add r0, r5, #0 - add r1, r4, #0 - bl sub_02092D8C - add r0, r5, #0 - add r1, r4, #0 - strb r6, [r4] - bl SwitchToPokegearApp_Radio - add r0, r4, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end Radio_new - - thumb_func_start sub_0203EAE0 -sub_0203EAE0: ; 0x0203EAE0 - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203EB04 ; =0x020FA3D4 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203EB04: .word 0x020FA3D4 - thumb_func_end sub_0203EAE0 - - thumb_func_start sub_0203EB08 -sub_0203EB08: ; 0x0203EB08 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #0x24 - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #0x24 - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl sub_0203E344 - str r0, [r4] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #4] - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EAE0 - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203EB08 - - thumb_func_start sub_0203EB3C -sub_0203EB3C: ; 0x0203EB3C - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203EB60 ; =0x020FA3C4 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203EB60: .word 0x020FA3C4 - thumb_func_end sub_0203EB3C - - thumb_func_start sub_0203EB64 -sub_0203EB64: ; 0x0203EB64 - push {r3, r4, r5, lr} - mov r1, #0xb - add r5, r0, #0 - bl ov02_0224E4EC - add r4, r0, #0 - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EB3C - add r0, r4, #0 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203EB64 - - thumb_func_start sub_0203EB7C -sub_0203EB7C: ; 0x0203EB7C - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203EBA0 ; =0x020FA3B4 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203EBA0: .word 0x020FA3B4 - thumb_func_end sub_0203EB7C - - thumb_func_start sub_0203EBA4 -sub_0203EBA4: ; 0x0203EBA4 - push {r4, r5, r6, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #0x10 - add r6, r2, #0 - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #0x10 - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl sub_0203E344 - str r0, [r4, #0xc] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #8] - add r0, r5, #0 - add r1, r4, #0 - strb r6, [r4, #2] - bl sub_0203EB7C - add r0, r4, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203EBA4 - - thumb_func_start sub_0203EBDC -sub_0203EBDC: ; 0x0203EBDC - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203EC00 ; =0x020FA3A4 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203EC00: .word 0x020FA3A4 - thumb_func_end sub_0203EBDC - - thumb_func_start sub_0203EC04 -sub_0203EC04: ; 0x0203EC04 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r6, r1, #0 - mov r0, #0xb - mov r1, #0x10 - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #0x10 - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl sub_0203E344 - str r0, [r4, #0xc] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #8] - add r0, r5, #0 - add r1, r4, #0 - strb r6, [r4, #5] - bl sub_0203EBDC - add r0, r4, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203EC04 - - thumb_func_start sub_0203EC3C -sub_0203EC3C: ; 0x0203EC3C - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203EC60 ; =0x020FA394 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203EC60: .word 0x020FA394 - thumb_func_end sub_0203EC3C - - thumb_func_start sub_0203EC64 -sub_0203EC64: ; 0x0203EC64 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #8 - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #8 - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl sub_0203E344 - str r0, [r4, #4] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4] - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EC3C - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203EC64 - - thumb_func_start sub_0203EC98 -sub_0203EC98: ; 0x0203EC98 - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203ECBC ; =0x020FA384 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203ECBC: .word 0x020FA384 - thumb_func_end sub_0203EC98 - - thumb_func_start sub_0203ECC0 -sub_0203ECC0: ; 0x0203ECC0 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #0x10 - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #0x10 - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl sub_0203E344 - str r0, [r4, #0xc] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #4] - add r0, r5, #0 - add r0, #0x94 - ldr r0, [r0] - add r1, r4, #0 - str r0, [r4, #8] - add r0, r5, #0 - bl sub_0203EC98 - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203ECC0 - - thumb_func_start sub_0203ECFC -sub_0203ECFC: ; 0x0203ECFC - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203ED20 ; =0x020FA374 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203ED20: .word 0x020FA374 - thumb_func_end sub_0203ECFC - - thumb_func_start sub_0203ED24 -sub_0203ED24: ; 0x0203ED24 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r6, r1, #0 - mov r0, #0xb - mov r1, #0x1c - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #0x1c - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl sub_0203E344 - str r0, [r4, #0x18] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #0x14] - ldr r0, [r4, #0x18] - bl sub_0202CF54 - mov r1, #0 - bl sub_0202D18C - str r0, [r4, #0x10] - cmp r6, #1 - bne _0203ED72 - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_02066A0C - cmp r0, #0 - bne _0203ED72 - mov r0, #0 - strb r0, [r4] - b _0203ED74 -_0203ED72: - strb r6, [r4] -_0203ED74: - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203ECFC - add r0, r4, #0 - pop {r4, r5, r6, pc} - thumb_func_end sub_0203ED24 - - thumb_func_start sub_0203ED80 -sub_0203ED80: ; 0x0203ED80 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - mov r0, #0xb - mov r1, #0x1c - add r7, r2, #0 - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #0x1c - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl sub_0203E344 - str r0, [r4, #0x18] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #0x14] - ldr r0, [r4, #0x18] - bl sub_0202CF54 - mov r1, #0 - bl sub_0202D18C - str r0, [r4, #0x10] - mov r0, #3 - strb r0, [r4] - str r6, [r4, #0xc] - add r0, r5, #0 - add r1, r4, #0 - str r7, [r4, #8] - bl sub_0203ECFC - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0203ED80 - - thumb_func_start sub_0203EDCC -sub_0203EDCC: ; 0x0203EDCC - ldr r3, _0203EDD4 ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203EDD8 ; =0x020FA364 - bx r3 - .balign 4, 0 -_0203EDD4: .word SwitchToPokegearApp -_0203EDD8: .word 0x020FA364 - thumb_func_end sub_0203EDCC - - thumb_func_start sub_0203EDDC -sub_0203EDDC: ; 0x0203EDDC - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - mov r0, #0xb - mov r1, #0x14 - add r7, r2, #0 - str r3, [sp] - bl AllocFromHeap - add r4, r0, #0 - mov r1, #0 - mov r2, #0x14 - bl MIi_CpuFill8 - str r6, [r4] - ldr r0, [sp] - str r7, [r4, #4] - str r0, [r4, #8] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #0xc] - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EDCC - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0203EDDC - - thumb_func_start sub_0203EE14 -sub_0203EE14: ; 0x0203EE14 - ldr r3, _0203EE1C ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203EE20 ; =0x020FA354 - bx r3 - .balign 4, 0 -_0203EE1C: .word SwitchToPokegearApp -_0203EE20: .word 0x020FA354 - thumb_func_end sub_0203EE14 - - thumb_func_start sub_0203EE24 -sub_0203EE24: ; 0x0203EE24 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #0xc - bl AllocFromHeapAtEnd - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203E344 - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #4] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #8] - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EE14 - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203EE24 - - thumb_func_start sub_0203EE54 -sub_0203EE54: ; 0x0203EE54 - push {r4, lr} - add r4, r0, #0 - bl sub_020503D0 - mov r1, #0xef - bl sub_020503DC - cmp r0, #0 - beq _0203EE8A - add r0, r4, #0 - bl sub_020503D0 - mov r1, #0xf0 - bl sub_020503DC - cmp r0, #0 - beq _0203EE8A - add r0, r4, #0 - bl sub_020503D0 - mov r1, #0xf1 - bl sub_020503DC - cmp r0, #0 - beq _0203EE8A - mov r0, #1 - pop {r4, pc} -_0203EE8A: - mov r0, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_0203EE54 - - thumb_func_start sub_0203EE90 -sub_0203EE90: ; 0x0203EE90 - ldr r3, _0203EE98 ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203EE9C ; =0x020FA344 - bx r3 - .balign 4, 0 -_0203EE98: .word SwitchToPokegearApp -_0203EE9C: .word 0x020FA344 - thumb_func_end sub_0203EE90 - - thumb_func_start sub_0203EEA0 -sub_0203EEA0: ; 0x0203EEA0 - push {r4, r5, r6, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #8 - bl AllocFromHeapAtEnd - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203E344 - add r6, r0, #0 - bl sub_02031968 - bl sub_02031974 - str r0, [r4] - add r0, r6, #0 - bl sub_0203EE54 - str r0, [r4, #4] - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EE90 - add r0, r4, #0 - pop {r4, r5, r6, pc} - thumb_func_end sub_0203EEA0 - - thumb_func_start sub_0203EED4 -sub_0203EED4: ; 0x0203EED4 - ldr r3, _0203EEDC ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203EEE0 ; =0x020FA314 - bx r3 - .balign 4, 0 -_0203EEDC: .word SwitchToPokegearApp -_0203EEE0: .word 0x020FA314 - thumb_func_end sub_0203EED4 - - thumb_func_start sub_0203EEE4 -sub_0203EEE4: ; 0x0203EEE4 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #0x10 - bl AllocFromHeapAtEnd - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203E344 - add r6, r0, #0 - bl sub_02031968 - add r7, r0, #0 - add r0, r6, #0 - bl sub_0202A634 - str r0, [sp] - str r0, [r4] - add r0, r7, #0 - bl sub_02031978 - str r0, [r4, #4] - ldr r0, [sp] - bl sub_0202A55C - str r0, [r4, #8] - add r0, r6, #0 - bl sub_0203EE54 - str r0, [r4, #0xc] - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EED4 - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203EEE4 - - thumb_func_start sub_0203EF30 -sub_0203EF30: ; 0x0203EF30 - ldr r3, _0203EF38 ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203EF3C ; =0x020FA324 - bx r3 - .balign 4, 0 -_0203EF38: .word SwitchToPokegearApp -_0203EF3C: .word 0x020FA324 - thumb_func_end sub_0203EF30 - - thumb_func_start sub_0203EF40 -sub_0203EF40: ; 0x0203EF40 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #0x14 - bl AllocFromHeapAtEnd - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203E344 - add r6, r0, #0 - bl sub_02031968 - add r7, r0, #0 - bl sub_0203197C - str r0, [r4] - add r0, r7, #0 - bl sub_02031984 - str r0, [r4, #4] - add r0, r6, #0 - bl Sav2_PlayerData_GetProfileAddr - str r0, [r4, #0xc] - add r0, r6, #0 - bl sub_0203EE54 - str r0, [r4, #0x10] - add r0, r7, #0 - bl sub_02031990 - str r0, [r4, #8] - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EF30 - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203EF40 - - thumb_func_start sub_0203EF90 -sub_0203EF90: ; 0x0203EF90 - ldr r3, _0203EF98 ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203EF9C ; =0x020FA424 - bx r3 - .balign 4, 0 -_0203EF98: .word SwitchToPokegearApp -_0203EF9C: .word 0x020FA424 - thumb_func_end sub_0203EF90 - - thumb_func_start sub_0203EFA0 -sub_0203EFA0: ; 0x0203EFA0 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - mov r0, #3 - mov r1, #8 - bl AllocFromHeapAtEnd - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203E344 - add r7, r0, #0 - bl Sav2_PlayerData_GetProfileAddr - add r6, r0, #0 - add r0, r7, #0 - bl sub_02031968 - str r0, [r4] - add r0, r5, #0 - add r1, r4, #0 - str r6, [r4, #4] - bl sub_0203EF90 - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203EFA0 - - thumb_func_start sub_0203EFD4 -sub_0203EFD4: ; 0x0203EFD4 - add r2, r1, #0 - mov r1, #0x43 - lsl r1, r1, #2 - add r1, r0, r1 - str r1, [r2, #0x1c] - ldr r3, _0203EFE4 ; =SwitchToPokegearApp - ldr r1, _0203EFE8 ; =0x020FA434 - bx r3 - .balign 4, 0 -_0203EFE4: .word SwitchToPokegearApp -_0203EFE8: .word 0x020FA434 - thumb_func_end sub_0203EFD4 - - thumb_func_start sub_0203EFEC -sub_0203EFEC: ; 0x0203EFEC - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r4, r1, #0 - add r6, r2, #0 - add r7, r3, #0 - bl sub_0203E344 - mov r1, #0xb - str r1, [sp] - add r1, r4, #0 - add r2, r6, #0 - add r3, r7, #0 - bl sub_02090E68 - add r4, r0, #0 - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EFD4 - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203EFEC - - thumb_func_start sub_0203F018 -sub_0203F018: ; 0x0203F018 - push {r3, r4, r5, r6, r7, lr} - add r5, r1, #0 - add r7, r0, #0 - add r4, r2, #0 - add r6, r3, #0 - cmp r5, #3 - bne _0203F034 - bl sub_0203E344 - add r1, r4, #0 - add r2, r6, #0 - bl sub_02090F38 - b _0203F042 -_0203F034: - bl sub_0203E344 - add r1, r5, #0 - add r2, r4, #0 - add r3, r6, #0 - bl sub_02090EC0 -_0203F042: - add r4, r0, #0 - add r0, r7, #0 - add r1, r4, #0 - bl sub_0203EFD4 - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0203F018 - - thumb_func_start sub_0203F050 -sub_0203F050: ; 0x0203F050 - push {r4, r5, r6, lr} - add r4, r1, #0 - add r6, r2, #0 - add r5, r0, #0 - bl sub_0203E344 - add r1, r4, #0 - add r2, r6, #0 - bl sub_02090F00 - add r4, r0, #0 - add r0, r5, #0 - add r1, r4, #0 - bl sub_0203EFD4 - add r0, r4, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203F050 - - thumb_func_start sub_0203F074 -sub_0203F074: ; 0x0203F074 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r0, r1, #0 - mov r1, #0xc - bl AllocFromHeap - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203E344 - str r0, [r4] - mov r0, #0x43 - lsl r0, r0, #2 - str r5, [r4, #4] - add r0, r5, r0 - str r0, [r4, #8] - ldr r1, _0203F0A4 ; =0x020FA2F4 - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r3, r4, r5, pc} - nop -_0203F0A4: .word 0x020FA2F4 - thumb_func_end sub_0203F074 - - thumb_func_start sub_0203F0A8 -sub_0203F0A8: ; 0x0203F0A8 - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203F0CC ; =0x020FA2E4 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203F0CC: .word 0x020FA2E4 - thumb_func_end sub_0203F0A8 - - thumb_func_start sub_0203F0D0 -sub_0203F0D0: ; 0x0203F0D0 - push {r3, r4, r5, r6, r7, lr} - add r6, r1, #0 - mov r1, #0x24 - add r4, r2, #0 - add r7, r3, #0 - bl AllocFromHeap - mov r1, #0 - mov r2, #0x24 - add r5, r0, #0 - bl memset - add r0, r6, #0 - bl SavArray_PlayerParty_get - add r1, r4, #0 - bl GetPartyMonByIndex - str r0, [r5] - add r0, r6, #0 - bl sub_0202C028 - str r0, [sp] - mov r1, #0 - bl sub_0202B9B8 - add r4, r0, #0 - ldr r0, [sp] - bl sub_0202B9E0 - str r4, [r5, #4] - str r0, [r5, #8] - add r0, r6, #0 - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r5, #0xc] - add r0, r6, #0 - bl sub_0202CF54 - str r0, [r5, #0x10] - add r0, r6, #0 - bl Sav2_PlayerData_GetProfileAddr - str r0, [r5, #0x14] - ldr r0, [sp, #0x18] - str r7, [r5, #0x18] - str r0, [r5, #0x1c] - add r0, r5, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_0203F0D0 - - thumb_func_start sub_0203F134 -sub_0203F134: ; 0x0203F134 - push {r3, r4, r5, lr} - add r5, r0, #0 - bl sub_0205064C - add r4, r0, #0 - add r0, r5, #0 - bl sub_02050650 - add r5, r0, #0 - ldr r0, [r5] - cmp r0, #0 - beq _0203F152 - cmp r0, #1 - beq _0203F162 - b _0203F192 -_0203F152: - ldr r1, [r5, #0xc] - add r0, r4, #0 - bl sub_0203F1E8 - ldr r0, [r5] - add r0, r0, #1 - str r0, [r5] - b _0203F192 -_0203F162: - add r0, r4, #0 - bl sub_020505A0 - cmp r0, #0 - bne _0203F192 - ldr r1, [r5, #4] - cmp r1, #0 - beq _0203F182 - ldr r0, [r5, #8] - cmp r0, #1 - bne _0203F17E - mov r0, #1 - strh r0, [r1] - b _0203F182 -_0203F17E: - mov r0, #0 - strh r0, [r1] -_0203F182: - ldr r0, [r5, #0xc] - bl FreeToHeap - add r0, r5, #0 - bl FreeToHeap - mov r0, #1 - pop {r3, r4, r5, pc} -_0203F192: - mov r0, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203F134 - - thumb_func_start sub_0203F198 -sub_0203F198: ; 0x0203F198 - push {r3, r4, r5, r6, r7, lr} - sub sp, #8 - add r6, r0, #0 - add r5, r1, #0 - mov r0, #0x20 - mov r1, #0x10 - add r7, r2, #0 - str r3, [sp, #4] - bl AllocFromHeap - add r4, r0, #0 - add r2, r4, #0 - mov r1, #0x10 - mov r0, #0 -_0203F1B4: - strb r0, [r2] - add r2, r2, #1 - sub r1, r1, #1 - bne _0203F1B4 - add r0, sp, #0x10 - ldrh r0, [r0, #0x10] - add r3, r4, #0 - add r1, r7, #0 - str r0, [sp] - ldr r2, [sp, #4] - mov r0, #0x20 - add r3, #8 - bl sub_0203F0D0 - str r0, [r4, #0xc] - ldr r1, _0203F1E4 ; =sub_0203F134 - add r0, r6, #0 - add r2, r4, #0 - str r5, [r4, #4] - bl sub_02050530 - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203F1E4: .word sub_0203F134 - thumb_func_end sub_0203F198 - - thumb_func_start sub_0203F1E8 -sub_0203F1E8: ; 0x0203F1E8 - push {r3, lr} - add r2, r1, #0 - mov r1, #0x43 - lsl r1, r1, #2 - add r1, r0, r1 - str r1, [r2, #0x20] - ldr r1, _0203F200 ; =0x0210F9AC - bl SwitchToPokegearApp - mov r0, #1 - pop {r3, pc} - nop -_0203F200: .word 0x0210F9AC - thumb_func_end sub_0203F1E8 - - thumb_func_start sub_0203F204 -sub_0203F204: ; 0x0203F204 - push {r3, lr} - add r2, r1, #0 - ldr r1, _0203F214 ; =0x0210F99C - bl SwitchToPokegearApp - mov r0, #1 - pop {r3, pc} - nop -_0203F214: .word 0x0210F99C - thumb_func_end sub_0203F204 - - thumb_func_start sub_0203F218 -sub_0203F218: ; 0x0203F218 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - ldr r0, [r4, #0xc] - bl Sav2_PlayerData_GetProfileAddr - str r0, [r5, #4] - ldr r0, [r4, #0xc] - bl SavArray_PlayerParty_get - str r0, [r5, #8] - ldr r0, [r4, #0xc] - mov r1, #8 - bl SavArray_get - str r0, [r5, #0xc] - ldr r0, [r4, #0xc] - bl sub_0202CA44 - str r0, [r5, #0x14] - ldr r0, [r4, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r5, #0x18] - ldr r0, [r4, #0xc] - bl sub_0202A634 - str r0, [r5, #0x20] - ldr r0, [r4, #0xc] - bl sub_02074910 - str r0, [r5, #0x2c] - ldr r0, [r4, #0xc] - str r0, [r5, #0x10] - ldr r0, [r4, #0xc] - bl sub_0202CF54 - str r0, [r5, #0x1c] - bl sub_02028ECC - add r1, r0, #0 - mov r0, #0x20 - bl AllocFromHeap - str r0, [r5, #0x34] - bl sub_02070D90 - add r1, r0, #0 - mov r0, #0x20 - bl AllocFromHeap - str r0, [r5, #0x38] - bl sub_02070D90 - add r1, r0, #0 - mov r0, #0x20 - bl AllocFromHeap - str r0, [r5, #0x3c] - str r4, [r5] - mov r0, #0 - str r0, [r5, #0x30] - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_0203F218 - - thumb_func_start sub_0203F298 -sub_0203F298: ; 0x0203F298 - push {r4, lr} - add r4, r0, #0 - ldr r0, [r4, #0x34] - cmp r0, #0 - beq _0203F2AA - bl FreeToHeap - mov r0, #0 - str r0, [r4, #0x34] -_0203F2AA: - ldr r0, [r4, #0x38] - cmp r0, #0 - beq _0203F2B8 - bl FreeToHeap - mov r0, #0 - str r0, [r4, #0x38] -_0203F2B8: - ldr r0, [r4, #0x3c] - cmp r0, #0 - beq _0203F2C6 - bl FreeToHeap - mov r0, #0 - str r0, [r4, #0x3c] -_0203F2C6: - pop {r4, pc} - thumb_func_end sub_0203F298 - - thumb_func_start sub_0203F2C8 -sub_0203F2C8: ; 0x0203F2C8 - push {r4, r5, r6, r7, lr} - sub sp, #0x2c - add r6, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r6, #0 - bl sub_02050650 - add r4, r0, #0 - ldr r0, [r4] - cmp r0, #7 - bls _0203F2E4 - b _0203F49A -_0203F2E4: - add r1, r0, r0 - add r1, pc - ldrh r1, [r1, #6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0203F2F0: ; jump table - .short _0203F300 - _0203F2F0 - 2 ; case 0 - .short _0203F316 - _0203F2F0 - 2 ; case 1 - .short _0203F324 - _0203F2F0 - 2 ; case 2 - .short _0203F336 - _0203F2F0 - 2 ; case 3 - .short _0203F354 - _0203F2F0 - 2 ; case 4 - .short _0203F3C2 - _0203F2F0 - 2 ; case 5 - .short _0203F446 - _0203F2F0 - 2 ; case 6 - .short _0203F472 - _0203F2F0 - 2 ; case 7 -_0203F300: - bl sub_02039998 - cmp r0, #0 - bne _0203F30E - add r0, r6, #0 - bl sub_0205525C -_0203F30E: - ldr r0, [r4] - add r0, r0, #1 - str r0, [r4] - b _0203F49A -_0203F316: - add r0, r4, #4 - add r1, r5, #0 - bl sub_0203F218 - ldr r0, [r4] - add r0, r0, #1 - str r0, [r4] -_0203F324: - ldr r1, _0203F4A0 ; =0x0210F98C - add r0, r6, #0 - add r2, r4, #4 - bl sub_02050624 - ldr r0, [r4] - add r0, r0, #1 - str r0, [r4] - b _0203F49A -_0203F336: - ldr r1, [r4, #0x28] - cmp r1, #0 - bne _0203F34E - add r0, r4, #4 - bl sub_0203F298 - add r0, r4, #0 - bl FreeToHeap - add sp, #0x2c - mov r0, #1 - pop {r4, r5, r6, r7, pc} -_0203F34E: - add r0, r0, #1 - str r0, [r4] - b _0203F49A -_0203F354: - ldr r0, [r4, #0x38] - str r0, [r4, #0x4c] - ldr r0, [r4, #0x3c] - bl sub_02070DB0 - str r0, [r4, #0x44] - ldr r0, [r4, #0x40] - bl sub_02070DB0 - str r0, [r4, #0x48] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #0x58] - mov r0, #1 - str r0, [r4, #0x54] - add r0, r5, #0 - bl sub_020555E0 - cmp r0, #4 - bhi _0203F394 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203F38A: ; jump table - .short _0203F394 - _0203F38A - 2 ; case 0 - .short _0203F394 - _0203F38A - 2 ; case 1 - .short _0203F39A - _0203F38A - 2 ; case 2 - .short _0203F3A0 - _0203F38A - 2 ; case 3 - .short _0203F3A0 - _0203F38A - 2 ; case 4 -_0203F394: - mov r0, #0 - str r0, [r4, #0x50] - b _0203F3A4 -_0203F39A: - mov r0, #1 - str r0, [r4, #0x50] - b _0203F3A4 -_0203F3A0: - mov r0, #2 - str r0, [r4, #0x50] -_0203F3A4: - bl sub_02039998 - cmp r0, #0 - beq _0203F3B0 - mov r0, #3 - str r0, [r4, #0x50] -_0203F3B0: - add r2, r4, #0 - ldr r1, _0203F4A4 ; =0x020FA2D4 - add r0, r6, #0 - add r2, #0x44 - bl sub_02050624 - mov r0, #5 - str r0, [r4] - b _0203F49A -_0203F3C2: - ldr r0, [r4, #0x40] - mov r1, #6 - mov r2, #0 - bl GetMonData - add r3, r0, #0 - add r0, sp, #0x28 - str r0, [sp] - lsl r3, r3, #0x10 - ldr r1, [r4, #0x40] - mov r0, #0 - mov r2, #1 - lsr r3, r3, #0x10 - bl sub_02070E34 - str r0, [sp, #0x1c] - cmp r0, #0 - beq _0203F440 - mov r0, #3 - mov r1, #0x1a - lsl r2, r0, #0x10 - bl sub_0201A910 - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [sp, #0x20] - ldr r0, [r5, #0xc] - bl sub_02088288 - add r6, r0, #0 - ldr r0, [r5, #0xc] - bl sub_0202A634 - add r7, r0, #0 - ldr r0, [r5, #0xc] - bl sub_0207879C - str r0, [sp, #0x24] - ldr r0, [r5, #0xc] - bl sub_0202CF54 - str r6, [sp] - ldr r1, [sp, #0x24] - str r7, [sp, #4] - str r1, [sp, #8] - str r0, [sp, #0xc] - ldr r0, [sp, #0x28] - ldr r2, [sp, #0x1c] - str r0, [sp, #0x10] - mov r0, #4 - str r0, [sp, #0x14] - mov r0, #0x1a - str r0, [sp, #0x18] - ldr r1, [r4, #0x40] - ldr r3, [sp, #0x20] - mov r0, #0 - bl sub_02075A7C - str r0, [r4, #0x5c] - mov r0, #6 - str r0, [r4] - b _0203F49A -_0203F440: - mov r0, #7 - str r0, [r4] - b _0203F49A -_0203F446: - ldr r0, [r4, #0x5c] - bl sub_02075D3C - cmp r0, #0 - beq _0203F49A - ldr r0, [r4, #0xc] - ldr r1, [r4, #0x2c] - bl GetPartyMonByIndex - add r1, r0, #0 - ldr r0, [r4, #0x40] - bl sub_0207188C - ldr r0, [r4, #0x5c] - bl sub_02075D4C - mov r0, #0x1a - bl sub_0201A9C4 - mov r0, #7 - str r0, [r4] - b _0203F49A -_0203F472: - ldr r0, [r4, #0x34] - add r0, r0, #1 - str r0, [r4, #0x34] - mov r0, #2 - str r0, [r4] - ldr r0, [r5, #0xc] - bl sub_0202CF54 - mov r1, #0x10 - add r4, r0, #0 - bl sub_0202D1C0 - bl sub_02039998 - cmp r0, #0 - beq _0203F49A - add r0, r4, #0 - mov r1, #0x72 - bl sub_0202D0FC -_0203F49A: - mov r0, #0 - add sp, #0x2c - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_0203F4A0: .word 0x0210F98C -_0203F4A4: .word 0x020FA2D4 - thumb_func_end sub_0203F2C8 - - thumb_func_start sub_0203F4A8 -sub_0203F4A8: ; 0x0203F4A8 - push {r4, lr} - add r4, r0, #0 - mov r0, #0x20 - mov r1, #0x64 - bl AllocFromHeap - add r2, r0, #0 - mov r0, #0 - str r0, [r2] - ldr r1, _0203F4C4 ; =sub_0203F2C8 - add r0, r4, #0 - bl sub_02050530 - pop {r4, pc} - .balign 4, 0 -_0203F4C4: .word sub_0203F2C8 - thumb_func_end sub_0203F4A8 - - thumb_func_start sub_0203F4C8 -sub_0203F4C8: ; 0x0203F4C8 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #0x20 - mov r1, #8 - bl AllocFromHeap - add r4, r0, #0 - add r0, r5, #0 - add r0, #0x84 - ldr r0, [r0] - str r0, [r4] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #4] - ldr r1, _0203F4F4 ; =0x020FA2C4 - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - pop {r3, r4, r5, pc} - nop -_0203F4F4: .word 0x020FA2C4 - thumb_func_end sub_0203F4C8 - - thumb_func_start sub_0203F4F8 -sub_0203F4F8: ; 0x0203F4F8 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #0x14 - bl AllocFromHeap - add r4, r0, #0 - ldr r0, [r5, #0xc] - str r0, [r4] - add r0, r5, #0 - add r0, #0x84 - ldr r0, [r0] - str r0, [r4, #4] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #8] - ldr r0, [r5, #0xc] - bl sub_0202CF54 - str r0, [r4, #0xc] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #0x10] - ldr r1, _0203F538 ; =0x020FA2B4 - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203F538: .word 0x020FA2B4 - thumb_func_end sub_0203F4F8 - - thumb_func_start sub_0203F53C -sub_0203F53C: ; 0x0203F53C - push {r4, r5, r6, lr} - add r5, r0, #0 - add r6, r1, #0 - add r0, r2, #0 - mov r1, #8 - bl AllocFromHeap - mov r1, #0 - mov r2, #8 - add r4, r0, #0 - bl MIi_CpuFill8 - mov r0, #0x43 - lsl r0, r0, #2 - str r6, [r4] - add r0, r5, r0 - str r0, [r4, #4] - ldr r1, _0203F56C ; =0x020FA2A4 - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203F56C: .word 0x020FA2A4 - thumb_func_end sub_0203F53C - - thumb_func_start sub_0203F570 -sub_0203F570: ; 0x0203F570 - ldr r3, _0203F578 ; =SwitchToPokegearApp - ldr r1, _0203F57C ; =0x02102830 - add r2, r0, #0 - bx r3 - .balign 4, 0 -_0203F578: .word SwitchToPokegearApp -_0203F57C: .word 0x02102830 - thumb_func_end sub_0203F570 - - thumb_func_start sub_0203F580 -sub_0203F580: ; 0x0203F580 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - bl sub_0205064C - add r6, r0, #0 - add r0, r5, #0 - bl sub_02050650 - add r4, r0, #0 - ldr r0, [r4] - cmp r0, #3 - bhi _0203F648 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203F5A4: ; jump table - .short _0203F5AC - _0203F5A4 - 2 ; case 0 - .short _0203F5BA - _0203F5A4 - 2 ; case 1 - .short _0203F5CC - _0203F5A4 - 2 ; case 2 - .short _0203F5DA - _0203F5A4 - 2 ; case 3 -_0203F5AC: - add r0, r5, #0 - bl sub_0205525C - ldr r0, [r4] - add r0, r0, #1 - str r0, [r4] - b _0203F648 -_0203F5BA: - ldr r1, _0203F64C ; =0x02102610 - ldr r2, [r4, #0xc] - add r0, r5, #0 - bl sub_02050624 - ldr r0, [r4] - add r0, r0, #1 - str r0, [r4] - b _0203F648 -_0203F5CC: - add r0, r5, #0 - bl sub_020552A4 - ldr r0, [r4] - add r0, r0, #1 - str r0, [r4] - b _0203F648 -_0203F5DA: - ldr r1, [r4, #0xc] - ldr r0, [r1] - cmp r0, #1 - bne _0203F5F6 - ldr r0, [r1, #0x18] - ldr r1, [r4, #0x10] - bl StringCompare - cmp r0, #0 - bne _0203F618 - ldr r0, [r4, #0xc] - mov r1, #1 - str r1, [r0, #0x14] - b _0203F618 -_0203F5F6: - cmp r0, #5 - bne _0203F618 - ldr r0, [r1, #0x18] - bl String_c_str - add r7, r0, #0 - ldr r0, [r6, #0xc] - bl sub_0202C854 - add r1, r7, #0 - bl sub_0202C88C - cmp r0, #0 - beq _0203F618 - ldr r0, [r4, #0xc] - mov r1, #2 - str r1, [r0, #0x14] -_0203F618: - ldr r0, [r4, #0xc] - ldr r0, [r0, #0x14] - cmp r0, #0 - bne _0203F626 - add r0, r5, #0 - bl sub_0203F650 -_0203F626: - ldr r1, [r4, #8] - cmp r1, #0 - beq _0203F632 - ldr r0, [r4, #0xc] - ldr r0, [r0, #0x14] - strh r0, [r1] -_0203F632: - ldr r0, [r4, #0xc] - bl sub_0208311C - ldr r0, [r4, #0x10] - bl String_dtor - add r0, r4, #0 - bl FreeToHeap - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_0203F648: - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203F64C: .word 0x02102610 - thumb_func_end sub_0203F580 - - thumb_func_start sub_0203F650 -sub_0203F650: ; 0x0203F650 - push {r4, r5, r6, lr} - add r4, r0, #0 - bl sub_0205064C - add r5, r0, #0 - add r0, r4, #0 - bl sub_02050650 - add r4, r0, #0 - ldr r0, [r4, #0xc] - ldr r0, [r0] - cmp r0, #5 - bhi _0203F6DC - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0203F676: ; jump table - .short _0203F682 - _0203F676 - 2 ; case 0 - .short _0203F6A2 - _0203F676 - 2 ; case 1 - .short _0203F6DC - _0203F676 - 2 ; case 2 - .short _0203F692 - _0203F676 - 2 ; case 3 - .short _0203F6DC - _0203F676 - 2 ; case 4 - .short _0203F6CA - _0203F676 - 2 ; case 5 -_0203F682: - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetProfileAddr - ldr r1, [r4, #0xc] - add r1, #0x1c - bl sub_02028F24 - pop {r4, r5, r6, pc} -_0203F692: - ldr r0, [r5, #0xc] - bl sub_0202A954 - ldr r1, [r4, #0xc] - ldr r1, [r1, #0x18] - bl sub_0202A9B0 - pop {r4, r5, r6, pc} -_0203F6A2: - ldr r6, [r4, #4] - cmp r6, #0xff - bne _0203F6B2 - add r0, r5, #0 - bl sub_0206DB28 - ldr r0, [r0, #0x10] - b _0203F6BE -_0203F6B2: - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - add r1, r6, #0 - bl GetPartyMonByIndex -_0203F6BE: - ldr r2, [r4, #0xc] - mov r1, #0x76 - add r2, #0x1c - bl sub_0206EC40 - pop {r4, r5, r6, pc} -_0203F6CA: - ldr r0, [r5, #0xc] - bl sub_0202C854 - ldr r3, [r4, #0xc] - mov r1, #0 - ldr r3, [r3, #0x18] - add r2, r1, #0 - bl sub_0202C7F8 -_0203F6DC: - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203F650 - - thumb_func_start sub_0203F6E0 -sub_0203F6E0: ; 0x0203F6E0 - push {r4, r5, r6, r7, lr} - sub sp, #0x14 - str r0, [sp, #8] - add r7, r1, #0 - str r2, [sp, #0xc] - str r3, [sp, #0x10] - ldr r5, [sp, #0x2c] - bl sub_0205064C - add r6, r0, #0 - mov r0, #0xb - mov r1, #0x14 - bl AllocFromHeapAtEnd - add r4, r0, #0 - mov r0, #0 - str r0, [r4] - ldr r0, [sp, #0x28] - str r0, [r4, #4] - ldr r0, [sp, #0x30] - str r0, [r4, #8] - ldr r0, [r6, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [sp] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r6, r0 - str r0, [sp, #4] - ldr r2, [sp, #0xc] - ldr r3, [sp, #0x10] - mov r0, #0xb - add r1, r7, #0 - bl sub_020830D8 - str r0, [r4, #0xc] - mov r0, #0xc - mov r1, #0xb - bl String_ctor - str r0, [r4, #0x10] - cmp r7, #1 - beq _0203F73C - cmp r7, #5 - beq _0203F784 - b _0203F78E -_0203F73C: - ldr r0, [sp, #0x28] - cmp r0, #0xff - bne _0203F74C - add r0, r6, #0 - bl sub_0206DB28 - ldr r6, [r0, #0x10] - b _0203F75A -_0203F74C: - ldr r0, [r6, #0xc] - bl SavArray_PlayerParty_get - ldr r1, [r4, #4] - bl GetPartyMonByIndex - add r6, r0, #0 -_0203F75A: - add r0, r6, #0 - mov r1, #0x6f - mov r2, #0 - bl GetMonData - ldr r1, [r4, #0xc] - mov r2, #0 - str r0, [r1, #0x10] - add r0, r6, #0 - mov r1, #0x70 - bl GetMonData - ldr r1, [r4, #0xc] - cmp r5, #0 - str r0, [r1, #8] - beq _0203F79C - ldr r0, [r4, #0x10] - add r1, r5, #0 - bl CopyU16ArrayToString - b _0203F79C -_0203F784: - ldr r0, [r4, #0x10] - add r1, r5, #0 - bl CopyU16ArrayToString - b _0203F79C -_0203F78E: - cmp r5, #0 - beq _0203F79C - ldr r0, [r4, #0xc] - add r1, r5, #0 - ldr r0, [r0, #0x18] - bl CopyU16ArrayToString -_0203F79C: - ldr r0, [sp, #8] - ldr r1, _0203F7AC ; =sub_0203F580 - add r2, r4, #0 - bl sub_02050530 - add sp, #0x14 - pop {r4, r5, r6, r7, pc} - nop -_0203F7AC: .word sub_0203F580 - thumb_func_end sub_0203F6E0 - - thumb_func_start sub_0203F7B0 -sub_0203F7B0: ; 0x0203F7B0 - push {r3, r4, r5, lr} - add r5, r0, #0 - mov r0, #0x43 - lsl r0, r0, #2 - add r4, r1, #0 - add r1, r5, r0 - ldr r0, _0203F7E8 ; =0x0000066C - str r1, [r4, r0] - ldr r1, [r5, #0xc] - add r0, r0, #4 - str r1, [r4, r0] - ldr r0, [r5, #0xc] - bl sub_020503D0 - bl sub_02066614 - ldr r1, _0203F7EC ; =0x00000678 - mov r2, #0 - str r0, [r4, r1] - sub r0, r1, #4 - str r2, [r4, r0] - ldr r1, _0203F7F0 ; =0x020FA294 - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - pop {r3, r4, r5, pc} - nop -_0203F7E8: .word 0x0000066C -_0203F7EC: .word 0x00000678 -_0203F7F0: .word 0x020FA294 - thumb_func_end sub_0203F7B0 - - thumb_func_start sub_0203F7F4 -sub_0203F7F4: ; 0x0203F7F4 - push {r3, lr} - add r2, r1, #0 - ldr r1, _0203F804 ; =0x020FA284 - bl SwitchToPokegearApp - mov r0, #1 - pop {r3, pc} - nop -_0203F804: .word 0x020FA284 - thumb_func_end sub_0203F7F4 - - thumb_func_start sub_0203F808 -sub_0203F808: ; 0x0203F808 - ldr r3, _0203F810 ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203F814 ; =0x020FA274 - bx r3 - .balign 4, 0 -_0203F810: .word SwitchToPokegearApp -_0203F814: .word 0x020FA274 - thumb_func_end sub_0203F808 - - thumb_func_start sub_0203F818 -sub_0203F818: ; 0x0203F818 - push {r3, r4, r5, lr} - sub sp, #0x10 - add r4, r0, #0 - ldr r0, [r4, #0xc] - bl sub_0202C9D8 - ldr r5, _0203F840 ; =0x020FA254 - add r3, sp, #0 - add r2, r3, #0 - ldmia r5!, {r0, r1} - stmia r3!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r3!, {r0, r1} - add r1, r2, #0 - ldr r2, [r4, #0xc] - add r0, r4, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203F840: .word 0x020FA254 - thumb_func_end sub_0203F818 - - thumb_func_start sub_0203F844 -sub_0203F844: ; 0x0203F844 - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r3, _0203F8E8 ; =0x020FA264 - add r2, sp, #0 - add r5, r0, #0 - add r6, r1, #0 - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - mov r0, #0xb - mov r1, #0x40 - bl AllocFromHeapAtEnd - add r4, r0, #0 - ldr r0, [r5, #0xc] - bl sub_0202DB34 - str r0, [r4] - ldr r0, [r5, #0xc] - bl Sav2_SysInfo_get - str r0, [r4, #4] - ldr r0, [r5, #0xc] - mov r1, #2 - bl SavArray_get - str r0, [r4, #8] - ldr r0, [r5, #0xc] - bl sub_020270D8 - str r0, [r4, #0xc] - ldr r0, [r5, #0xc] - bl sub_0202A634 - str r0, [r4, #0x10] - ldr r0, [r5, #0xc] - bl sub_0202C6F4 - str r0, [r4, #0x14] - ldr r0, [r5, #0xc] - bl sub_0202CA44 - str r0, [r4, #0x18] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetProfileAddr - str r0, [r4, #0x1c] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #0x24] - ldr r0, [r5, #0xc] - bl sub_0202CF54 - str r0, [r4, #0x28] - ldr r0, [r5, #0xc] - bl sub_02088288 - str r0, [r4, #0x38] - ldr r0, [r5, #0xc] - str r0, [r4, #0x20] - ldr r0, [r5, #0xc] - bl sub_02074910 - str r0, [r4, #0x30] - ldr r0, [r4, #0x14] - bl sub_0203A040 - str r0, [r4, #0x34] - ldr r0, [r5, #0xc] - bl sub_0207879C - str r0, [r4, #0x2c] - add r0, r5, #0 - add r1, sp, #0 - add r2, r4, #0 - str r6, [r4, #0x3c] - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203F8E8: .word 0x020FA264 - thumb_func_end sub_0203F844 - - thumb_func_start sub_0203F8EC -sub_0203F8EC: ; 0x0203F8EC - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - ldr r3, _0203F960 ; =0x020FA334 - add r7, r2, #0 - add r2, sp, #0 - add r5, r0, #0 - add r6, r1, #0 - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - mov r0, #0xb - mov r1, #0x28 - bl AllocFromHeapAtEnd - add r4, r0, #0 - ldr r0, [r5, #0xc] - bl sub_0202D918 - str r0, [r4] - ldr r0, [r5, #0xc] - bl sub_0202D928 - str r0, [r4, #4] - ldr r0, [r5, #0xc] - bl Sav2_SysInfo_get - str r0, [r4, #8] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #0x10] - ldr r0, [r5, #0xc] - bl sub_0202C6F4 - bl sub_0202C08C - str r0, [r4, #0x14] - ldr r0, [r5, #0xc] - str r0, [r4, #0xc] - ldr r0, [r5, #0xc] - bl sub_0202C6F4 - bl sub_0203A040 - str r0, [r4, #0x1c] - str r6, [r4, #0x18] - str r7, [r4, #0x24] - mov r0, #1 - str r0, [r4, #0x20] - add r0, r5, #0 - add r1, sp, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203F960: .word 0x020FA334 - thumb_func_end sub_0203F8EC - - thumb_func_start sub_0203F964 -sub_0203F964: ; 0x0203F964 - ldr r3, _0203F96C ; =SwitchToPokegearApp - ldr r1, _0203F970 ; =0x020FA224 - ldr r2, [r0, #0xc] - bx r3 - .balign 4, 0 -_0203F96C: .word SwitchToPokegearApp -_0203F970: .word 0x020FA224 - thumb_func_end sub_0203F964 - - thumb_func_start sub_0203F974 -sub_0203F974: ; 0x0203F974 - ldr r3, _0203F97C ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203F980 ; =0x020FA214 - bx r3 - .balign 4, 0 -_0203F97C: .word SwitchToPokegearApp -_0203F980: .word 0x020FA214 - thumb_func_end sub_0203F974 - - thumb_func_start sub_0203F984 -sub_0203F984: ; 0x0203F984 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, [r5, #0xc] - mov r1, #0xb - add r2, sp, #0 - bl LoadHallOfFame - ldr r1, [sp] - add r4, r0, #0 - cmp r1, #2 - bne _0203F9A2 - bl FreeToHeap - mov r0, #0 - pop {r3, r4, r5, pc} -_0203F9A2: - ldr r1, _0203F9B0 ; =0x020FA204 - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r3, r4, r5, pc} - .balign 4, 0 -_0203F9B0: .word 0x020FA204 - thumb_func_end sub_0203F984 - - thumb_func_start sub_0203F9B4 -sub_0203F9B4: ; 0x0203F9B4 - ldr r3, _0203F9BC ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203F9C0 ; =0x020FA1F4 - bx r3 - .balign 4, 0 -_0203F9BC: .word SwitchToPokegearApp -_0203F9C0: .word 0x020FA1F4 - thumb_func_end sub_0203F9B4 - - thumb_func_start sub_0203F9C4 -sub_0203F9C4: ; 0x0203F9C4 - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r6, _0203F9F0 ; =0x020FA1E4 - add r5, sp, #0 - add r3, r0, #0 - add r2, r1, #0 - add r4, r5, #0 - ldmia r6!, {r0, r1} - stmia r5!, {r0, r1} - ldmia r6!, {r0, r1} - stmia r5!, {r0, r1} - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r3, r0 - str r0, [r2, #0xc] - add r0, r3, #0 - add r1, r4, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203F9F0: .word 0x020FA1E4 - thumb_func_end sub_0203F9C4 - - thumb_func_start sub_0203F9F4 -sub_0203F9F4: ; 0x0203F9F4 - push {r3, r4, r5, lr} - sub sp, #0x10 - add r4, r0, #0 - ldr r0, [r4, #0xc] - bl SavArray_PlayerParty_get - bl sub_0206CE44 - add r5, r0, #0 - bne _0203FA0C - bl GF_AssertFail -_0203FA0C: - str r5, [sp] - ldr r0, [r4, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [sp, #4] - ldr r0, [r4, #0xc] - bl Sav2_PlayerData_GetProfileAddr - str r0, [sp, #8] - ldr r1, [r4, #0x20] - add r0, r4, #0 - ldr r1, [r1] - bl sub_02054F60 - add r1, sp, #0 - strh r0, [r1, #0xc] - ldr r0, [r4, #0x10] - add r1, sp, #0 - bl sub_02091240 - add sp, #0x10 - pop {r3, r4, r5, pc} - thumb_func_end sub_0203F9F4 - - thumb_func_start sub_0203FA38 -sub_0203FA38: ; 0x0203FA38 - push {r4, r5, r6, lr} - add r5, r0, #0 - mov r0, #0xb - mov r1, #0x14 - bl AllocFromHeapAtEnd - mov r1, #0 - mov r2, #0x14 - add r4, r0, #0 - bl MIi_CpuFill8 - add r0, r5, #0 - bl sub_0203E344 - add r6, r0, #0 - bl sub_02028EB4 - str r0, [r4, #4] - add r0, r6, #0 - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4] - mov r0, #0x43 - lsl r0, r0, #2 - add r0, r5, r0 - str r0, [r4, #8] - add r0, r6, #0 - bl Sav2_PlayerData_GetProfileAddr - str r0, [r4, #0xc] - ldr r0, [r5, #0xc] - ldr r1, _0203FA88 ; =0x020FA234 - str r0, [r4, #0x10] - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r4, r5, r6, pc} - nop -_0203FA88: .word 0x020FA234 - thumb_func_end sub_0203FA38 - - thumb_func_start sub_0203FA8C -sub_0203FA8C: ; 0x0203FA8C - push {r4, r5, r6, lr} - add r5, r0, #0 - add r0, r1, #0 - mov r1, #8 - add r6, r2, #0 - bl AllocFromHeap - add r4, r0, #0 - str r6, [r4, #4] - ldr r0, [r5, #0xc] - ldr r1, _0203FAB0 ; =0x020FA304 - str r0, [r4] - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r4, r5, r6, pc} - .balign 4, 0 -_0203FAB0: .word 0x020FA304 - thumb_func_end sub_0203FA8C - - thumb_func_start sub_0203FAB4 -sub_0203FAB4: ; 0x0203FAB4 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - ldr r0, [sp, #0x18] - mov r1, #8 - add r7, r2, #0 - str r3, [sp] - bl AllocFromHeap - add r4, r0, #0 - strb r6, [r4, #4] - strb r7, [r4, #5] - ldr r0, [sp] - ldr r1, _0203FAE4 ; =0x0210F9BC - strh r0, [r4, #6] - ldr r0, [r5, #0xc] - add r2, r4, #0 - str r0, [r4] - add r0, r5, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203FAE4: .word 0x0210F9BC - thumb_func_end sub_0203FAB4 - - thumb_func_start sub_0203FAE8 -sub_0203FAE8: ; 0x0203FAE8 - push {r4, r5, r6, lr} - add r5, r0, #0 - add r0, r1, #0 - mov r1, #0x44 - add r6, r2, #0 - bl AllocFromHeap - mov r1, #0 - mov r2, #0x44 - add r4, r0, #0 - bl memset - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - str r0, [r4] - ldr r0, [r5, #0xc] - bl sub_0207879C - str r0, [r4, #4] - ldr r0, [r5, #0xc] - bl Sav2_Mailbox_get - str r0, [r4, #8] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #0xc] - ldr r0, [r5, #0xc] - bl sub_020270C4 - str r0, [r4, #0x10] - mov r0, #0 - add r1, r4, #0 - str r0, [r4, #0x18] - add r1, #0x25 - strb r0, [r1] - add r1, r4, #0 - mov r2, #5 - add r1, #0x24 - strb r2, [r1] - add r1, r4, #0 - strh r6, [r4, #0x28] - add r1, #0x26 - strb r0, [r1] - mov r0, #0x43 - lsl r0, r0, #2 - str r5, [r4, #0x1c] - add r0, r5, r0 - str r0, [r4, #0x20] - ldr r1, _0203FB5C ; =0x0210159C - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r4, r5, r6, pc} - nop -_0203FB5C: .word 0x0210159C - thumb_func_end sub_0203FAE8 - - thumb_func_start sub_0203FB60 -sub_0203FB60: ; 0x0203FB60 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r0, r1, #0 - mov r1, #0x18 - bl AllocFromHeap - add r4, r0, #0 - add r2, r4, #0 - mov r1, #0x18 - mov r0, #0 -_0203FB74: - strb r0, [r2] - add r2, r2, #1 - sub r1, r1, #1 - bne _0203FB74 - ldr r0, [r5, #0xc] - ldr r1, _0203FB90 ; =0x0210F97C - str r0, [r4] - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r3, r4, r5, pc} - nop -_0203FB90: .word 0x0210F97C - thumb_func_end sub_0203FB60 - - thumb_func_start sub_0203FB94 -sub_0203FB94: ; 0x0203FB94 - push {r4, r5, r6, lr} - add r5, r1, #0 - mov r0, #0xb - mov r1, #0x3c - add r6, r2, #0 - bl AllocFromHeap - add r4, r0, #0 - ldr r0, [r5, #0xc] - bl SavArray_PlayerParty_get - str r0, [r4] - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetOptionsAddr - str r0, [r4, #4] - mov r0, #1 - strb r0, [r4, #0x11] - strb r6, [r4, #0x14] - ldr r0, [r4] - bl GetPartyCount - strb r0, [r4, #0x13] - mov r0, #0 - strh r0, [r4, #0x18] - strb r0, [r4, #0x12] - ldr r0, [r5, #0xc] - bl sub_0202D95C - str r0, [r4, #0x20] - ldr r0, [r5, #0xc] - bl sub_02074910 - str r0, [r4, #0x1c] - mov r0, #0 - str r0, [r4, #0x2c] - str r0, [r4, #0x28] - ldr r0, [r5, #0xc] - bl sub_0208828C - str r0, [r4, #0x34] - ldr r1, _0203FC0C ; =0x020FA0B0 - add r0, r4, #0 - bl sub_02089D40 - ldr r0, [r5, #0xc] - bl Sav2_PlayerData_GetProfileAddr - add r1, r0, #0 - add r0, r4, #0 - bl sub_0208AD34 - ldr r1, _0203FC10 ; =0x02103A1C - add r0, r5, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r4, r5, r6, pc} - nop -_0203FC0C: .word 0x020FA0B0 -_0203FC10: .word 0x02103A1C - thumb_func_end sub_0203FB94 - - thumb_func_start sub_0203FC14 -sub_0203FC14: ; 0x0203FC14 - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x10 - ldr r3, _0203FC54 ; =0x020FA1C4 - add r7, r2, #0 - add r2, sp, #0 - add r5, r0, #0 - add r6, r1, #0 - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - ldmia r3!, {r0, r1} - stmia r2!, {r0, r1} - mov r0, #0xb - mov r1, #0x10 - bl AllocFromHeapAtEnd - add r4, r0, #0 - mov r1, #0 - mov r2, #0x10 - bl MIi_CpuFill8 - str r5, [r4] - ldr r0, [r5, #0xc] - add r1, sp, #0 - str r0, [r4, #4] - str r6, [r4, #8] - add r0, r5, #0 - add r2, r4, #0 - strb r7, [r4, #0xc] - bl SwitchToPokegearApp - add sp, #0x10 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203FC54: .word 0x020FA1C4 - thumb_func_end sub_0203FC14 - - thumb_func_start sub_0203FC58 -sub_0203FC58: ; 0x0203FC58 - ldr r3, _0203FC60 ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203FC64 ; =0x020FA244 - bx r3 - .balign 4, 0 -_0203FC60: .word SwitchToPokegearApp -_0203FC64: .word 0x020FA244 - thumb_func_end sub_0203FC58 - - thumb_func_start sub_0203FC68 -sub_0203FC68: ; 0x0203FC68 - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203FC8C ; =0x020FA454 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203FC8C: .word 0x020FA454 - thumb_func_end sub_0203FC68 - - thumb_func_start sub_0203FC90 -sub_0203FC90: ; 0x0203FC90 - push {r4, r5, r6, lr} - sub sp, #0x10 - ldr r5, _0203FCB4 ; =0x020FA1D4 - add r4, sp, #0 - add r6, r0, #0 - add r2, r1, #0 - add r3, r4, #0 - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - ldmia r5!, {r0, r1} - stmia r4!, {r0, r1} - add r0, r6, #0 - add r1, r3, #0 - bl SwitchToPokegearApp - add sp, #0x10 - pop {r4, r5, r6, pc} - nop -_0203FCB4: .word 0x020FA1D4 - thumb_func_end sub_0203FC90 - - thumb_func_start sub_0203FCB8 -sub_0203FCB8: ; 0x0203FCB8 - push {r3, r4, r5, r6, r7, lr} - add r6, r0, #0 - add r5, r1, #0 - ldr r0, [sp, #0x18] - mov r1, #0x50 - add r7, r2, #0 - str r3, [sp] - bl AllocFromHeap - mov r1, #0 - mov r2, #0x50 - add r4, r0, #0 - bl memset - add r0, r6, #0 - bl sub_0203E344 - str r0, [r4] - add r3, r4, #4 - mov r2, #9 -_0203FCE0: - ldmia r5!, {r0, r1} - stmia r3!, {r0, r1} - sub r2, r2, #1 - bne _0203FCE0 - add r0, r4, #0 - add r0, #0x4c - strh r7, [r0] - add r1, r4, #0 - ldr r0, [sp] - add r1, #0x4e - strh r0, [r1] - ldr r1, _0203FD04 ; =0x020FA474 - add r0, r6, #0 - add r2, r4, #0 - bl SwitchToPokegearApp - add r0, r4, #0 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203FD04: .word 0x020FA474 - thumb_func_end sub_0203FCB8 - - thumb_func_start sub_0203FD08 -sub_0203FD08: ; 0x0203FD08 - ldr r3, _0203FD10 ; =SwitchToPokegearApp - add r2, r1, #0 - ldr r1, _0203FD14 ; =0x020FA494 - bx r3 - .balign 4, 0 -_0203FD10: .word SwitchToPokegearApp -_0203FD14: .word 0x020FA494 - thumb_func_end sub_0203FD08 - - thumb_func_start sub_0203FD18 -sub_0203FD18: ; 0x0203FD18 - push {r3, r4} - mov r3, #0 - strb r3, [r0, #1] - str r3, [r0, #8] - strb r3, [r0] - strb r3, [r0, #3] - str r3, [r0, #4] - str r1, [r0, #0x5c] - str r2, [r0, #0x60] - add r1, r0, #0 - add r4, r3, #0 -_0203FD2E: - add r3, r3, #1 - str r4, [r1, #0x64] - add r1, r1, #4 - cmp r3, #4 - blo _0203FD2E - add r2, r0, #0 - mov r1, #0 -_0203FD3C: - add r4, r4, #1 - str r1, [r2, #0xc] - add r2, r2, #4 - cmp r4, #0x14 - blo _0203FD3C - str r1, [r0, #0x74] - pop {r3, r4} - bx lr - thumb_func_end sub_0203FD18 - - thumb_func_start sub_0203FD4C -sub_0203FD4C: ; 0x0203FD4C - str r1, [r0, #8] - mov r1, #1 - strb r1, [r0, #1] - add r0, r1, #0 - bx lr - .balign 4, 0 - thumb_func_end sub_0203FD4C - - thumb_func_start sub_0203FD58 -sub_0203FD58: ; 0x0203FD58 - mov r2, #2 - strb r2, [r0, #1] - str r1, [r0, #4] - bx lr - thumb_func_end sub_0203FD58 - - thumb_func_start sub_0203FD60 -sub_0203FD60: ; 0x0203FD60 - mov r1, #0 - strb r1, [r0, #1] - str r1, [r0, #8] - bx lr - thumb_func_end sub_0203FD60 - - thumb_func_start sub_0203FD68 -sub_0203FD68: ; 0x0203FD68 - str r1, [r0, #0x74] - bx lr - thumb_func_end sub_0203FD68 - - thumb_func_start sub_0203FD6C -sub_0203FD6C: ; 0x0203FD6C - push {r4, lr} - add r4, r0, #0 - ldrb r1, [r4, #1] - cmp r1, #0 - bne _0203FD7A - mov r0, #0 - pop {r4, pc} -_0203FD7A: - beq _0203FD86 - cmp r1, #1 - beq _0203FDA2 - cmp r1, #2 - beq _0203FD8A - b _0203FDD4 -_0203FD86: - mov r0, #0 - pop {r4, pc} -_0203FD8A: - ldr r1, [r4, #4] - cmp r1, #0 - beq _0203FD9E - blx r1 - cmp r0, #1 - bne _0203FD9A - mov r0, #1 - strb r0, [r4, #1] -_0203FD9A: - mov r0, #1 - pop {r4, pc} -_0203FD9E: - mov r0, #1 - strb r0, [r4, #1] -_0203FDA2: - ldr r0, [r4, #8] - cmp r0, #0 - bne _0203FDAE - mov r0, #0 - strb r0, [r4, #1] - pop {r4, pc} -_0203FDAE: - add r0, r4, #0 - bl sub_0203FE2C - add r1, r0, #0 - ldr r0, [r4, #0x60] - cmp r1, r0 - blo _0203FDC6 - bl GF_AssertFail - mov r0, #0 - strb r0, [r4, #1] - pop {r4, pc} -_0203FDC6: - ldr r2, [r4, #0x5c] - lsl r1, r1, #2 - ldr r1, [r2, r1] - add r0, r4, #0 - blx r1 - cmp r0, #1 - bne _0203FDA2 -_0203FDD4: - mov r0, #1 - pop {r4, pc} - thumb_func_end sub_0203FD6C - - thumb_func_start sub_0203FDD8 -sub_0203FDD8: ; 0x0203FDD8 - ldrb r3, [r0] - add r2, r3, #1 - cmp r2, #0x14 - blt _0203FDE4 - mov r0, #1 - bx lr -_0203FDE4: - lsl r2, r3, #2 - add r2, r0, r2 - str r1, [r2, #0xc] - ldrb r1, [r0] - add r1, r1, #1 - strb r1, [r0] - mov r0, #0 - bx lr - thumb_func_end sub_0203FDD8 - - thumb_func_start sub_0203FDF4 -sub_0203FDF4: ; 0x0203FDF4 - ldrb r1, [r0] - cmp r1, #0 - bne _0203FDFE - mov r0, #0 - bx lr -_0203FDFE: - sub r1, r1, #1 - strb r1, [r0] - ldrb r1, [r0] - lsl r1, r1, #2 - add r0, r0, r1 - ldr r0, [r0, #0xc] - bx lr - thumb_func_end sub_0203FDF4 - - thumb_func_start sub_0203FE0C -sub_0203FE0C: ; 0x0203FE0C - str r1, [r0, #8] - bx lr - thumb_func_end sub_0203FE0C - - thumb_func_start sub_0203FE10 -sub_0203FE10: ; 0x0203FE10 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - ldr r1, [r5, #8] - bl sub_0203FDD8 - str r4, [r5, #8] - pop {r3, r4, r5, pc} - thumb_func_end sub_0203FE10 - - thumb_func_start sub_0203FE20 -sub_0203FE20: ; 0x0203FE20 - push {r4, lr} - add r4, r0, #0 - bl sub_0203FDF4 - str r0, [r4, #8] - pop {r4, pc} - thumb_func_end sub_0203FE20 - - thumb_func_start sub_0203FE2C -sub_0203FE2C: ; 0x0203FE2C - ldr r1, [r0, #8] - add r3, r1, #1 - str r3, [r0, #8] - ldrb r2, [r1] - add r1, r3, #1 - str r1, [r0, #8] - ldrb r0, [r3] - lsl r0, r0, #8 - add r0, r2, r0 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bx lr - thumb_func_end sub_0203FE2C - - thumb_func_start sub_0203FE44 -sub_0203FE44: ; 0x0203FE44 - push {r4, r5} - ldr r1, [r0, #8] - add r2, r1, #1 - str r2, [r0, #8] - ldrb r3, [r1] - add r1, r2, #1 - add r5, r1, #1 - str r1, [r0, #8] - ldrb r2, [r2] - add r4, r5, #1 - str r5, [r0, #8] - ldrb r1, [r1] - str r4, [r0, #8] - ldrb r0, [r5] - mov r4, #0 - add r0, r4, r0 - lsl r0, r0, #8 - add r0, r0, r1 - lsl r0, r0, #8 - add r0, r0, r2 - lsl r0, r0, #8 - add r0, r0, r3 - pop {r4, r5} - bx lr - thumb_func_end sub_0203FE44 - - thumb_func_start sub_0203FE74 -sub_0203FE74: ; 0x0203FE74 - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r6, r1, #0 - add r7, r2, #0 - bl sub_0204001C - add r4, r0, #0 - mov r0, #0 - str r0, [sp] - add r0, r5, #0 - add r1, r4, #0 - add r2, r6, #0 - add r3, r7, #0 - bl sub_0204005C - ldr r1, _0203FEA0 ; =sub_0203FF44 - add r0, r5, #0 - add r2, r4, #0 - bl sub_020504F0 - pop {r3, r4, r5, r6, r7, pc} - nop -_0203FEA0: .word sub_0203FF44 - thumb_func_end sub_0203FE74 - - thumb_func_start sub_0203FEA4 -sub_0203FEA4: ; 0x0203FEA4 - push {r4, r5, r6, lr} - ldr r0, [r0, #0x10] - add r5, r1, #0 - add r4, r2, #0 - add r6, r3, #0 - bl sub_02050650 - ldr r2, [sp, #0x1c] - mov r1, #0x1c - add r3, r2, #0 - add r0, #0x54 - mul r3, r1 - add r1, r0, r3 - str r4, [r0, r3] - ldr r0, [sp, #0x10] - str r6, [r1, #4] - str r0, [r1, #8] - ldr r0, [sp, #0x14] - str r0, [r1, #0xc] - ldr r0, [sp, #0x18] - str r0, [r1, #0x10] - str r5, [r1, #0x14] - pop {r4, r5, r6, pc} - .balign 4, 0 - thumb_func_end sub_0203FEA4 - - thumb_func_start sub_0203FED4 -sub_0203FED4: ; 0x0203FED4 - push {r4, r5, r6, r7, lr} - sub sp, #0xc - add r6, r0, #0 - add r7, r1, #0 - str r2, [sp, #4] - add r5, r3, #0 - bl sub_0205064C - str r0, [sp, #8] - bl sub_0204001C - add r4, r0, #0 - ldr r0, [sp, #8] - ldr r3, [sp, #4] - add r1, r4, #0 - add r2, r7, #0 - str r5, [sp] - bl sub_0204005C - ldr r1, _0203FF08 ; =sub_0203FF44 - add r0, r6, #0 - add r2, r4, #0 - bl sub_02050530 - add sp, #0xc - pop {r4, r5, r6, r7, pc} - .balign 4, 0 -_0203FF08: .word sub_0203FF44 - thumb_func_end sub_0203FED4 - - thumb_func_start sub_0203FF0C -sub_0203FF0C: ; 0x0203FF0C - push {r3, r4, r5, r6, r7, lr} - sub sp, #8 - add r5, r0, #0 - add r6, r1, #0 - add r7, r2, #0 - bl sub_0205064C - str r0, [sp, #4] - bl sub_0204001C - add r4, r0, #0 - mov r0, #0 - str r0, [sp] - ldr r0, [sp, #4] - add r1, r4, #0 - add r2, r6, #0 - add r3, r7, #0 - bl sub_0204005C - ldr r1, _0203FF40 ; =sub_0203FF44 - add r0, r5, #0 - add r2, r4, #0 - bl sub_02050510 - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0203FF40: .word sub_0203FF44 - thumb_func_end sub_0203FF0C - - thumb_func_start sub_0203FF44 -sub_0203FF44: ; 0x0203FF44 - push {r3, r4, r5, r6, r7, lr} - sub sp, #8 - add r5, r0, #0 - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0205064C - ldrb r1, [r4, #4] - str r0, [sp] - cmp r1, #0 - beq _0203FF64 - cmp r1, #1 - beq _0203FF9A - b _02040016 -_0203FF64: - ldrh r1, [r4, #0xa] - bl sub_020400AC - str r0, [r4, #0x38] - mov r0, #1 - strb r0, [r4, #9] - mov r0, #8 - mov r1, #0x40 - mov r2, #0xb - bl ScrStrBufs_new_custom - str r0, [r4, #0x44] - mov r0, #1 - lsl r0, r0, #0xa - mov r1, #0xb - bl String_ctor - str r0, [r4, #0x48] - mov r0, #1 - lsl r0, r0, #0xa - mov r1, #0xb - bl String_ctor - str r0, [r4, #0x4c] - ldrb r0, [r4, #4] - add r0, r0, #1 - strb r0, [r4, #4] -_0203FF9A: - mov r0, #0 - add r7, r4, #0 - str r0, [sp, #4] - add r5, r4, #0 - add r7, #9 -_0203FFA4: - ldr r6, [r5, #0x38] - cmp r6, #0 - beq _0203FFCE - add r0, r6, #0 - bl sub_0203FD6C - cmp r0, #0 - bne _0203FFCE - add r0, r6, #0 - bl sub_02040044 - ldrb r0, [r4, #9] - cmp r0, #0 - bne _0203FFC4 - bl GF_AssertFail -_0203FFC4: - mov r0, #0 - str r0, [r5, #0x38] - ldrb r0, [r7] - sub r0, r0, #1 - strb r0, [r7] -_0203FFCE: - ldr r0, [sp, #4] - add r5, r5, #4 - add r0, r0, #1 - str r0, [sp, #4] - cmp r0, #3 - blt _0203FFA4 - ldrb r0, [r4, #9] - cmp r0, #0 - bne _02040016 - add r0, r4, #0 - add r0, #0xa8 - ldr r5, [r0] - ldr r0, [r4, #0x44] - bl ScrStrBufs_delete - ldr r0, [r4, #0x48] - bl String_dtor - ldr r0, [r4, #0x4c] - bl String_dtor - mov r0, #0 - str r0, [r4] - add r0, r4, #0 - bl FreeToHeap - cmp r5, #0 - beq _02040010 - ldr r0, [sp] - blx r5 - add sp, #8 - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_02040010: - add sp, #8 - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} -_02040016: - mov r0, #0 - add sp, #8 - pop {r3, r4, r5, r6, r7, pc} - thumb_func_end sub_0203FF44 - - thumb_func_start sub_0204001C -sub_0204001C: ; 0x0204001C - push {r4, lr} - mov r0, #0xb - mov r1, #0xe0 - bl AllocFromHeap - add r4, r0, #0 - bne _0204002E - bl GF_AssertFail -_0204002E: - add r0, r4, #0 - mov r1, #0 - mov r2, #0xe0 - bl memset - ldr r0, _02040040 ; =0x0003643F - str r0, [r4] - add r0, r4, #0 - pop {r4, pc} - .balign 4, 0 -_02040040: .word 0x0003643F - thumb_func_end sub_0204001C - - thumb_func_start sub_02040044 -sub_02040044: ; 0x02040044 - push {r4, lr} - add r4, r0, #0 - ldr r0, [r4, #0x78] - bl DestroyMsgData - ldr r0, [r4, #0x7c] - bl FreeToHeap - add r0, r4, #0 - bl FreeToHeap - pop {r4, pc} - thumb_func_end sub_02040044 - - thumb_func_start sub_0204005C -sub_0204005C: ; 0x0204005C - push {r3, r4, r5, r6, r7, lr} - add r5, r1, #0 - add r7, r0, #0 - add r0, r5, #0 - mov r1, #0x37 - add r4, r2, #0 - add r6, r3, #0 - bl sub_020401B4 - str r0, [sp] - ldr r0, [r7, #0x40] - bl sub_0205C654 - str r0, [r5, #0x28] - str r6, [r5, #0x2c] - ldr r0, [sp, #0x18] - strh r4, [r5, #0xa] - str r0, [r5, #0x34] - cmp r6, #0 - beq _0204008E - add r0, r6, #0 - bl sub_0205F24C - ldr r1, [sp] - strh r0, [r1] -_0204008E: - mov r0, #0x7d - lsl r0, r0, #6 - cmp r4, r0 - blo _020400A4 - ldr r0, _020400A8 ; =0x0000225F - cmp r4, r0 - bhi _020400A4 - add r0, r5, #0 - add r1, r4, #0 - bl sub_020405AC -_020400A4: - pop {r3, r4, r5, r6, r7, pc} - nop -_020400A8: .word 0x0000225F - thumb_func_end sub_0204005C - - thumb_func_start sub_020400AC -sub_020400AC: ; 0x020400AC - push {r4, r5, r6, lr} - add r5, r0, #0 - add r6, r1, #0 - mov r0, #0xb - mov r1, #0x84 - bl AllocFromHeap - add r4, r0, #0 - bne _020400C2 - bl GF_AssertFail -_020400C2: - ldr r2, _020400E0 ; =0x020FAC90 - ldr r1, _020400E4 ; =0x020FAD00 - ldr r2, [r2] - add r0, r4, #0 - bl sub_0203FD18 - add r0, r5, #0 - add r1, r4, #0 - add r2, r6, #0 - mov r3, #0 - bl sub_020400E8 - add r0, r4, #0 - pop {r4, r5, r6, pc} - nop -_020400E0: .word 0x020FAC90 -_020400E4: .word 0x020FAD00 - thumb_func_end sub_020400AC - - thumb_func_start sub_020400E8 -sub_020400E8: ; 0x020400E8 - push {r4, r5, r6, lr} - add r4, r1, #0 - add r3, r4, #0 - add r5, r0, #0 - add r3, #0x80 - str r5, [r3] - bl sub_02040114 - add r6, r0, #0 - ldr r1, [r4, #0x7c] - add r0, r4, #0 - bl sub_0203FD4C - add r0, r4, #0 - add r1, r6, #0 - bl sub_02040340 - ldr r1, [r5, #0x10] - add r0, r4, #0 - bl sub_0203FD68 - pop {r4, r5, r6, pc} - thumb_func_end sub_020400E8 - - thumb_func_start sub_02040114 -sub_02040114: ; 0x02040114 - push {r4, r5, r6, lr} - ldr r6, _02040164 ; =0x020FA4A4 - add r5, r2, #0 - mov r2, #0 - add r4, r6, #0 -_0204011E: - ldrh r3, [r4] - cmp r5, r3 - blo _0204013E - mov r3, #6 - add r4, r2, #0 - mul r4, r3 - add r3, r6, r4 - ldrh r2, [r3, #2] - ldrh r3, [r3, #4] - bl sub_02040168 - ldrh r0, [r6, r4] - sub r0, r5, r0 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - pop {r4, r5, r6, pc} -_0204013E: - add r2, r2, #1 - add r4, r4, #6 - cmp r2, #0x1e - blo _0204011E - cmp r5, #1 - blo _02040156 - bl sub_0204018C - sub r0, r5, #1 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - pop {r4, r5, r6, pc} -_02040156: - mov r2, #0x8c - mov r3, #0xb8 - bl sub_02040168 - mov r0, #0 - pop {r4, r5, r6, pc} - nop -_02040164: .word 0x020FA4A4 - thumb_func_end sub_02040114 - - thumb_func_start sub_02040168 -sub_02040168: ; 0x02040168 - push {r3, r4, r5, lr} - add r5, r1, #0 - add r1, r2, #0 - add r4, r3, #0 - mov r0, #0xc - mov r2, #0xb - bl AllocAndReadWholeNarcMemberByIdPair - str r0, [r5, #0x7c] - mov r0, #1 - mov r1, #0x1b - add r2, r4, #0 - mov r3, #0xb - bl NewMsgDataFromNarc - str r0, [r5, #0x78] - pop {r3, r4, r5, pc} - .balign 4, 0 - thumb_func_end sub_02040168 - - thumb_func_start sub_0204018C -sub_0204018C: ; 0x0204018C - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, [r5, #0x20] - add r4, r1, #0 - ldr r0, [r0] - bl sub_02040358 - str r0, [r4, #0x7c] - ldr r0, [r5, #0x20] - ldr r0, [r0] - bl sub_0204036C - add r2, r0, #0 - mov r0, #1 - mov r1, #0x1b - mov r3, #0xb - bl NewMsgDataFromNarc - str r0, [r4, #0x78] - pop {r3, r4, r5, pc} - thumb_func_end sub_0204018C - - thumb_func_start sub_020401B4 -sub_020401B4: ; 0x020401B4 - push {r3, lr} - cmp r1, #0x37 - bls _020401BC - b _020402E8 -_020401BC: - add r2, r1, r1 - add r2, pc - ldrh r2, [r2, #6] - lsl r2, r2, #0x10 - asr r2, r2, #0x10 - add pc, r2 -_020401C8: ; jump table - .short _02040238 - _020401C8 - 2 ; case 0 - .short _0204023C - _020401C8 - 2 ; case 1 - .short _02040240 - _020401C8 - 2 ; case 2 - .short _02040244 - _020401C8 - 2 ; case 3 - .short _02040248 - _020401C8 - 2 ; case 4 - .short _0204024C - _020401C8 - 2 ; case 5 - .short _02040250 - _020401C8 - 2 ; case 6 - .short _02040254 - _020401C8 - 2 ; case 7 - .short _02040258 - _020401C8 - 2 ; case 8 - .short _0204025C - _020401C8 - 2 ; case 9 - .short _02040260 - _020401C8 - 2 ; case 10 - .short _02040264 - _020401C8 - 2 ; case 11 - .short _02040268 - _020401C8 - 2 ; case 12 - .short _0204026C - _020401C8 - 2 ; case 13 - .short _0204026C - _020401C8 - 2 ; case 14 - .short _0204026C - _020401C8 - 2 ; case 15 - .short _02040276 - _020401C8 - 2 ; case 16 - .short _0204027A - _020401C8 - 2 ; case 17 - .short _0204027E - _020401C8 - 2 ; case 18 - .short _02040282 - _020401C8 - 2 ; case 19 - .short _02040286 - _020401C8 - 2 ; case 20 - .short _0204028A - _020401C8 - 2 ; case 21 - .short _0204028E - _020401C8 - 2 ; case 22 - .short _02040292 - _020401C8 - 2 ; case 23 - .short _02040296 - _020401C8 - 2 ; case 24 - .short _0204029A - _020401C8 - 2 ; case 25 - .short _0204029E - _020401C8 - 2 ; case 26 - .short _020402A2 - _020401C8 - 2 ; case 27 - .short _020402A6 - _020401C8 - 2 ; case 28 - .short _020402AA - _020401C8 - 2 ; case 29 - .short _020402AE - _020401C8 - 2 ; case 30 - .short _020402B2 - _020401C8 - 2 ; case 31 - .short _020402B6 - _020401C8 - 2 ; case 32 - .short _020402BA - _020401C8 - 2 ; case 33 - .short _020402BE - _020401C8 - 2 ; case 34 - .short _020402C2 - _020401C8 - 2 ; case 35 - .short _020402C6 - _020401C8 - 2 ; case 36 - .short _020402CA - _020401C8 - 2 ; case 37 - .short _020402CE - _020401C8 - 2 ; case 38 - .short _020402D2 - _020401C8 - 2 ; case 39 - .short _020402D6 - _020401C8 - 2 ; case 40 - .short _020402DA - _020401C8 - 2 ; case 41 - .short _020402DE - _020401C8 - 2 ; case 42 - .short _020402DE - _020401C8 - 2 ; case 43 - .short _020402DE - _020401C8 - 2 ; case 44 - .short _020402DE - _020401C8 - 2 ; case 45 - .short _020402DE - _020401C8 - 2 ; case 46 - .short _020402DE - _020401C8 - 2 ; case 47 - .short _020402DE - _020401C8 - 2 ; case 48 - .short _020402DE - _020401C8 - 2 ; case 49 - .short _020402DE - _020401C8 - 2 ; case 50 - .short _020402DE - _020401C8 - 2 ; case 51 - .short _020402DE - _020401C8 - 2 ; case 52 - .short _020402DE - _020401C8 - 2 ; case 53 - .short _020402DE - _020401C8 - 2 ; case 54 - .short _020402DE - _020401C8 - 2 ; case 55 -_02040238: - add r0, #0x10 - pop {r3, pc} -_0204023C: - add r0, #0x14 - pop {r3, pc} -_02040240: - add r0, #0x24 - pop {r3, pc} -_02040244: - add r0, r0, #5 - pop {r3, pc} -_02040248: - add r0, r0, #6 - pop {r3, pc} -_0204024C: - add r0, r0, #7 - pop {r3, pc} -_02040250: - add r0, #8 - pop {r3, pc} -_02040254: - add r0, #9 - pop {r3, pc} -_02040258: - add r0, #0xa - pop {r3, pc} -_0204025C: - add r0, #0x28 - pop {r3, pc} -_02040260: - add r0, #0x2c - pop {r3, pc} -_02040264: - add r0, #0x30 - pop {r3, pc} -_02040268: - add r0, #0x34 - pop {r3, pc} -_0204026C: - sub r1, #0xd - add r0, #0x38 - lsl r1, r1, #2 - add r0, r0, r1 - pop {r3, pc} -_02040276: - add r0, #0x44 - pop {r3, pc} -_0204027A: - add r0, #0x48 - pop {r3, pc} -_0204027E: - add r0, #0x4c - pop {r3, pc} -_02040282: - add r0, #0x50 - pop {r3, pc} -_02040286: - add r0, #0xac - pop {r3, pc} -_0204028A: - add r0, #0xb0 - pop {r3, pc} -_0204028E: - add r0, #0xb4 - pop {r3, pc} -_02040292: - add r0, #0xb8 - pop {r3, pc} -_02040296: - add r0, #0xc - pop {r3, pc} -_0204029A: - add r0, #0x54 - pop {r3, pc} -_0204029E: - add r0, #0x58 - pop {r3, pc} -_020402A2: - add r0, #0x5c - pop {r3, pc} -_020402A6: - add r0, #0x60 - pop {r3, pc} -_020402AA: - add r0, #0x64 - pop {r3, pc} -_020402AE: - add r0, #0x68 - pop {r3, pc} -_020402B2: - add r0, #0x6c - pop {r3, pc} -_020402B6: - add r0, #0x70 - pop {r3, pc} -_020402BA: - add r0, #0x74 - pop {r3, pc} -_020402BE: - add r0, #0x78 - pop {r3, pc} -_020402C2: - add r0, #0x7c - pop {r3, pc} -_020402C6: - add r0, #0x80 - pop {r3, pc} -_020402CA: - add r0, #0x84 - pop {r3, pc} -_020402CE: - add r0, #0x88 - pop {r3, pc} -_020402D2: - add r0, #0xbc - pop {r3, pc} -_020402D6: - add r0, #0xcc - pop {r3, pc} -_020402DA: - add r0, #0xdc - pop {r3, pc} -_020402DE: - sub r1, #0x2a - add r0, #0x8c - lsl r1, r1, #1 - add r0, r0, r1 - pop {r3, pc} -_020402E8: - bl GF_AssertFail - mov r0, #0 - pop {r3, pc} - thumb_func_end sub_020401B4 - - thumb_func_start sub_020402F0 -sub_020402F0: ; 0x020402F0 - push {r3, r4, r5, lr} - ldr r0, [r0, #0x10] - add r5, r1, #0 - bl sub_02050650 - add r4, r0, #0 - bne _02040302 - bl GF_AssertFail -_02040302: - ldr r1, [r4] - ldr r0, _02040318 ; =0x0003643F - cmp r1, r0 - beq _0204030E - bl GF_AssertFail -_0204030E: - add r0, r4, #0 - add r1, r5, #0 - bl sub_020401B4 - pop {r3, r4, r5, pc} - .balign 4, 0 -_02040318: .word 0x0003643F - thumb_func_end sub_020402F0 - - thumb_func_start sub_0204031C -sub_0204031C: ; 0x0204031C - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, [r5, #0x10] - bl sub_02050650 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0203BC10 - cmp r0, #1 - bne _02040338 - ldr r0, _0204033C ; =sub_0203BD64 - add r4, #0xa8 - str r0, [r4] -_02040338: - pop {r3, r4, r5, pc} - nop -_0204033C: .word sub_0203BD64 - thumb_func_end sub_0204031C - - thumb_func_start sub_02040340 -sub_02040340: ; 0x02040340 - push {r4, lr} - add r4, r0, #0 - ldr r2, [r4, #8] - lsl r1, r1, #2 - add r1, r2, r1 - str r1, [r4, #8] - bl sub_0203FE44 - ldr r1, [r4, #8] - add r0, r1, r0 - str r0, [r4, #8] - pop {r4, pc} - thumb_func_end sub_02040340 - - thumb_func_start sub_02040358 -sub_02040358: ; 0x02040358 - push {r3, lr} - bl sub_0203B2D4 - add r1, r0, #0 - mov r0, #0xc - mov r2, #0xb - bl AllocAndReadWholeNarcMemberByIdPair - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02040358 - - thumb_func_start sub_0204036C -sub_0204036C: ; 0x0204036C - ldr r3, _02040370 ; =sub_0203B2C0 - bx r3 - .balign 4, 0 -_02040370: .word sub_0203B2C0 - thumb_func_end sub_0204036C - - thumb_func_start sub_02040374 -sub_02040374: ; 0x02040374 - push {r3, r4, r5, lr} - add r5, r0, #0 - ldr r0, [r5, #0xc] - add r4, r1, #0 - bl sub_020503D0 - mov r1, #1 - lsl r1, r1, #0xe - cmp r4, r1 - bhs _0204038C - mov r0, #0 - pop {r3, r4, r5, pc} -_0204038C: - lsl r1, r1, #1 - cmp r4, r1 - bhs _0204039A - add r1, r4, #0 - bl sub_020504A4 - pop {r3, r4, r5, pc} -_0204039A: - ldr r1, _020403A8 ; =0x00007FD6 - add r0, r5, #0 - sub r1, r4, r1 - bl sub_020402F0 - pop {r3, r4, r5, pc} - nop -_020403A8: .word 0x00007FD6 - thumb_func_end sub_02040374 - - thumb_func_start sub_020403AC -sub_020403AC: ; 0x020403AC - push {r4, lr} - add r4, r1, #0 - bl sub_02040374 - cmp r0, #0 - beq _020403BA - ldrh r4, [r0] -_020403BA: - add r0, r4, #0 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_020403AC - - thumb_func_start sub_020403C0 -sub_020403C0: ; 0x020403C0 - push {r4, lr} - add r4, r2, #0 - bl sub_02040374 - cmp r0, #0 - bne _020403D0 - mov r0, #0 - pop {r4, pc} -_020403D0: - strh r4, [r0] - mov r0, #1 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_020403C0 - - thumb_func_start sub_020403D8 -sub_020403D8: ; 0x020403D8 - push {r3, r4, r5, lr} - add r4, r1, #0 - add r5, r0, #0 - cmp r4, #0x10 - blo _020403E6 - bl GF_AssertFail -_020403E6: - ldr r1, _020403F8 ; =0x00004020 - add r0, r5, #0 - add r1, r4, r1 - lsl r1, r1, #0x10 - lsr r1, r1, #0x10 - bl sub_020403AC - pop {r3, r4, r5, pc} - nop -_020403F8: .word 0x00004020 - thumb_func_end sub_020403D8 - - thumb_func_start sub_020403FC -sub_020403FC: ; 0x020403FC - push {r4, lr} - ldr r0, [r0, #0xc] - add r4, r1, #0 - bl sub_020503D0 - add r1, r4, #0 - bl sub_020503DC - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_020403FC - - thumb_func_start sub_02040410 -sub_02040410: ; 0x02040410 - push {r4, lr} - ldr r0, [r0, #0xc] - add r4, r1, #0 - bl sub_020503D0 - add r1, r4, #0 - bl sub_02050408 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02040410 - - thumb_func_start sub_02040424 -sub_02040424: ; 0x02040424 - push {r4, lr} - ldr r0, [r0, #0xc] - add r4, r1, #0 - bl sub_020503D0 - add r1, r4, #0 - bl sub_02050430 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02040424 - - thumb_func_start sub_02040438 -sub_02040438: ; 0x02040438 - push {r4, lr} - ldr r0, [r0, #0xc] - bl sub_020503D0 - mov r1, #1 - add r4, r0, #0 - bl sub_0205045C - mov r1, #0 - strb r1, [r0] - strb r1, [r0, #1] - strb r1, [r0, #2] - strb r1, [r0, #3] - strb r1, [r0, #4] - strb r1, [r0, #5] - strb r1, [r0, #6] - strb r1, [r0, #7] - mov r1, #1 - add r0, r4, #0 - lsl r1, r1, #0xe - bl sub_020504A4 - mov r1, #0 - mov r2, #0x40 - bl memset - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02040438 - - thumb_func_start sub_02040470 -sub_02040470: ; 0x02040470 - push {r3, lr} - ldr r0, [r0, #0xc] - bl sub_020503D0 - mov r1, #0xaa - lsl r1, r1, #4 - bl sub_0205045C - mov r2, #0x18 - mov r1, #0 -_02040484: - strb r1, [r0] - add r0, r0, #1 - sub r2, r2, #1 - bne _02040484 - pop {r3, pc} - .balign 4, 0 - thumb_func_end sub_02040470 - - thumb_func_start sub_02040490 -sub_02040490: ; 0x02040490 - push {r3, r4, r5, r6, r7, lr} - add r4, r1, #0 - add r5, r0, #0 - mov r1, #0x2a - add r6, r2, #0 - add r7, r3, #0 - bl sub_020402F0 - strh r4, [r0] - add r0, r5, #0 - mov r1, #0x2b - bl sub_020402F0 - strh r6, [r0] - add r0, r5, #0 - mov r1, #0x2c - bl sub_020402F0 - strh r7, [r0] - add r0, r5, #0 - mov r1, #0x2d - bl sub_020402F0 - add r1, sp, #8 - ldrh r1, [r1, #0x10] - strh r1, [r0] - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 - thumb_func_end sub_02040490 - - thumb_func_start sub_020404C8 -sub_020404C8: ; 0x020404C8 - ldr r1, _020404E4 ; =0x00001388 - cmp r0, r1 - bhs _020404D8 - ldr r1, _020404E8 ; =0x00000BB7 - sub r0, r0, r1 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bx lr -_020404D8: - sub r1, r1, #1 - sub r0, r0, r1 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bx lr - nop -_020404E4: .word 0x00001388 -_020404E8: .word 0x00000BB7 - thumb_func_end sub_020404C8 - - thumb_func_start sub_020404EC -sub_020404EC: ; 0x020404EC - ldr r1, _020404FC ; =0x00001388 - cmp r0, r1 - blo _020404F6 - mov r0, #1 - bx lr -_020404F6: - mov r0, #0 - bx lr - nop -_020404FC: .word 0x00001388 - thumb_func_end sub_020404EC - - thumb_func_start sub_02040500 -sub_02040500: ; 0x02040500 - push {r3, lr} - mov r1, #9 - bl sub_02073470 - cmp r0, #0 - beq _02040510 - mov r0, #1 - pop {r3, pc} -_02040510: - mov r0, #0 - pop {r3, pc} - thumb_func_end sub_02040500 - - thumb_func_start sub_02040514 -sub_02040514: ; 0x02040514 - push {r4, lr} - add r4, r1, #0 - bl sub_020503D0 - mov r1, #0x55 - lsl r1, r1, #4 - add r1, r4, r1 - lsl r1, r1, #0x10 - lsr r1, r1, #0x10 - bl sub_020503DC - pop {r4, pc} - thumb_func_end sub_02040514 - - thumb_func_start sub_0204052C -sub_0204052C: ; 0x0204052C - push {r4, lr} - add r4, r1, #0 - bl sub_020503D0 - mov r1, #0x55 - lsl r1, r1, #4 - add r1, r4, r1 - lsl r1, r1, #0x10 - lsr r1, r1, #0x10 - bl sub_02050408 - pop {r4, pc} - thumb_func_end sub_0204052C - - thumb_func_start sub_02040544 -sub_02040544: ; 0x02040544 - push {r4, lr} - add r4, r1, #0 - bl sub_020503D0 - mov r1, #0x55 - lsl r1, r1, #4 - add r1, r4, r1 - lsl r1, r1, #0x10 - lsr r1, r1, #0x10 - bl sub_02050430 - pop {r4, pc} - thumb_func_end sub_02040544 - - thumb_func_start sub_0204055C -sub_0204055C: ; 0x0204055C - ldr r1, _02040568 ; =0x00001C20 - sub r0, r0, r1 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bx lr - nop -_02040568: .word 0x00001C20 - thumb_func_end sub_0204055C - - thumb_func_start sub_0204056C -sub_0204056C: ; 0x0204056C - mov r1, #0x7d - lsl r1, r1, #6 - sub r0, r0, r1 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bx lr - thumb_func_end sub_0204056C - - thumb_func_start sub_02040578 -sub_02040578: ; 0x02040578 - push {r4, lr} - ldr r4, _020405A8 ; =0x020FA558 - bl sub_0204056C - mov r2, #0 - add r3, r4, #0 -_02040584: - ldrh r1, [r3, #6] - cmp r0, r1 - beq _02040592 - add r2, r2, #1 - add r3, #8 - cmp r2, #0xe7 - blo _02040584 -_02040592: - cmp r2, #0xe7 - blo _0204059E - bl GF_AssertFail - mov r0, #0 - pop {r4, pc} -_0204059E: - lsl r0, r2, #3 - add r0, r4, r0 - ldrb r0, [r0, #3] - pop {r4, pc} - nop -_020405A8: .word 0x020FA558 - thumb_func_end sub_02040578 - - thumb_func_start sub_020405AC -sub_020405AC: ; 0x020405AC - push {r3, r4, r5, r6, r7, lr} - add r5, r1, #0 - add r4, r0, #0 - mov r1, #0x2a - bl sub_020401B4 - add r7, r0, #0 - add r0, r4, #0 - mov r1, #0x2b - bl sub_020401B4 - add r6, r0, #0 - add r0, r4, #0 - mov r1, #0x2c - bl sub_020401B4 - add r4, r0, #0 - add r0, r5, #0 - bl sub_0204056C - ldr r3, _02040610 ; =0x020FA558 - add r2, r0, #0 - mov r1, #0 -_020405DA: - ldrh r0, [r3, #6] - cmp r2, r0 - beq _020405E8 - add r1, r1, #1 - add r3, #8 - cmp r1, #0xe7 - blo _020405DA -_020405E8: - cmp r1, #0xe7 - blo _020405F4 - bl GF_AssertFail - mov r0, #0 - pop {r3, r4, r5, r6, r7, pc} -_020405F4: - lsl r0, r1, #3 - ldr r1, _02040610 ; =0x020FA558 - ldrh r1, [r1, r0] - strh r1, [r7] - ldr r1, _02040610 ; =0x020FA558 - add r0, r1, r0 - ldrb r0, [r0, #2] - strh r0, [r6] - add r0, r5, #0 - bl sub_0204055C - strh r0, [r4] - mov r0, #1 - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_02040610: .word 0x020FA558 - thumb_func_end sub_020405AC - - thumb_func_start sub_02040614 -sub_02040614: ; 0x02040614 - push {r4, r5, r6, r7, lr} - sub sp, #0x24 - str r0, [sp] - add r4, r1, #0 - mov r6, #0 - bl sub_0203B6E0 - add r5, r0, #0 - add r2, r5, #1 - mov r1, #6 - add r0, r4, #0 - mul r1, r2 - bl AllocFromHeap - str r0, [sp, #0x1c] - cmp r5, #0 - bne _02040646 - mov r2, #0xff - add r1, r0, #0 - strb r2, [r1, #4] - sub r2, r6, #1 - strh r2, [r1] - strh r2, [r1, #2] - add sp, #0x24 - pop {r4, r5, r6, r7, pc} -_02040646: - ldr r0, [sp] - bl sub_0203B6D8 - add r4, r0, #0 - bne _02040660 - ldr r0, [sp, #0x1c] - mov r1, #0xff - strb r1, [r0, #4] - sub r1, r6, #1 - strh r1, [r0] - strh r1, [r0, #2] - add sp, #0x24 - pop {r4, r5, r6, r7, pc} -_02040660: - ldr r0, [sp] - ldr r0, [r0, #0x40] - bl sub_0205C67C - str r0, [sp, #0x18] - ldr r0, [sp] - ldr r0, [r0, #0x40] - bl sub_0205C688 - str r0, [sp, #0x14] - ldr r0, [sp, #0x18] - str r0, [sp, #0x10] - sub r0, #0x11 - str r0, [sp, #0x10] - ldr r0, [sp, #0x18] - str r0, [sp, #0xc] - add r0, #0x11 - str r0, [sp, #0xc] - ldr r0, [sp, #0x14] - str r0, [sp, #8] - sub r0, #0x11 - str r0, [sp, #8] - ldr r0, [sp, #0x14] - str r0, [sp, #4] - add r0, #0x11 - str r0, [sp, #4] - ldr r0, [sp, #0x10] - cmp r0, #0 - bge _0204069E - add r0, r6, #0 - str r0, [sp, #0x10] -_0204069E: - ldr r0, [sp, #8] - cmp r0, #0 - bge _020406A8 - mov r0, #0 - str r0, [sp, #8] -_020406A8: - add r0, r5, #1 - mov r7, #0 - str r0, [sp, #0x20] - cmp r0, #0 - ble _0204070E - ldr r5, [sp, #0x1c] -_020406B4: - ldrh r0, [r4, #2] - cmp r0, #2 - bne _02040704 - ldrh r0, [r4] - bl sub_0204055C - add r1, r0, #0 - ldr r0, [sp] - bl sub_020403FC - cmp r0, #0 - bne _02040704 - ldr r1, [r4, #4] - ldr r0, [sp, #0x10] - cmp r1, r0 - blt _02040704 - ldr r0, [sp, #0xc] - cmp r1, r0 - bgt _02040704 - ldr r1, [r4, #8] - ldr r0, [sp, #8] - cmp r1, r0 - blt _02040704 - ldr r0, [sp, #4] - cmp r1, r0 - bgt _02040704 - ldrh r0, [r4] - bl sub_02040578 - strb r0, [r5, #4] - ldr r1, [r4, #4] - ldr r0, [sp, #0x18] - add r6, r6, #1 - sub r0, r1, r0 - strh r0, [r5] - ldr r1, [r4, #8] - ldr r0, [sp, #0x14] - sub r0, r1, r0 - strh r0, [r5, #2] - add r5, r5, #6 -_02040704: - ldr r0, [sp, #0x20] - add r7, r7, #1 - add r4, #0x14 - cmp r7, r0 - blt _020406B4 -_0204070E: - mov r2, #6 - add r0, r6, #0 - mul r0, r2 - ldr r1, [sp, #0x1c] - mov r4, #0xff - add r3, r1, r0 - strb r4, [r3, #4] - sub r2, r2, #7 - strh r2, [r1, r0] - strh r2, [r3, #2] - add r0, r1, #0 - add sp, #0x24 - pop {r4, r5, r6, r7, pc} - thumb_func_end sub_02040614 - - thumb_func_start sub_02040728 -sub_02040728: ; 0x02040728 - ldr r3, _02040730 ; =sub_02040734 - mov r1, #0x96 - lsl r1, r1, #6 - bx r3 - .balign 4, 0 -_02040730: .word sub_02040734 - thumb_func_end sub_02040728 - - thumb_func_start sub_02040734 -sub_02040734: ; 0x02040734 - push {r4, lr} - bl sub_020400AC - add r4, r0, #0 -_0204073C: - add r0, r4, #0 - bl sub_0203FD6C - cmp r0, #1 - beq _0204073C - add r0, r4, #0 - bl sub_02040044 - pop {r4, pc} - .balign 4, 0 - thumb_func_end sub_02040734 - - thumb_func_start sub_02040750 -sub_02040750: ; 0x02040750 - push {r3, r4, r5, lr} - add r5, r0, #0 - add r4, r1, #0 - add r1, r5, #0 - add r1, #0xac - ldr r1, [r1] - cmp r1, #0 - beq _02040764 - mov r0, #0 - pop {r3, r4, r5, pc} -_02040764: - bl sub_0203B904 - add r1, r0, #0 - bne _02040770 - mov r0, #0 - pop {r3, r4, r5, pc} -_02040770: - cmp r4, #1 - bne _0204077E - add r0, r5, #0 - add r2, r4, #0 - bl sub_0204080C - b _02040784 -_0204077E: - add r1, r4, #0 - bl _020407E4 -_02040784: - add r1, r0, #0 - ldr r0, _020407A8 ; =0x0000FFFF - cmp r1, r0 - bne _02040790 - mov r0, #0 - pop {r3, r4, r5, pc} -_02040790: - cmp r4, #1 - bne _0204079E - add r0, r5, #0 - mov r2, #0 - bl sub_0203FE74 - b _020407A4 -_0204079E: - add r0, r5, #0 - bl sub_02040734 -_020407A4: - mov r0, #1 - pop {r3, r4, r5, pc} - .balign 4, 0 -_020407A8: .word 0x0000FFFF - thumb_func_end sub_02040750 - - thumb_func_start sub_020407AC -sub_020407AC: ; 0x020407AC - push {r4, lr} - add r4, r0, #0 - add r1, r4, #0 - add r1, #0xac - ldr r1, [r1] - cmp r1, #0 - beq _020407BE - mov r0, #0 - pop {r4, pc} -_020407BE: - bl sub_0203B904 - add r1, r0, #0 - bne _020407CA - mov r0, #0 - pop {r4, pc} -_020407CA: - add r0, r4, #0 - mov r2, #1 - bl sub_0204080C - ldr r1, _020407E0 ; =0x0000FFFF - cmp r0, r1 - beq _020407DC - mov r0, #1 - pop {r4, pc} -_020407DC: - mov r0, #0 - pop {r4, pc} - .balign 4, 0 -_020407E0: .word 0x0000FFFF -_020407E4: - ldrb r2, [r0] - cmp r2, #0 - bne _020407EE - ldr r0, _02040808 ; =0x0000FFFF - bx lr -_020407EE: - cmp r2, r1 - bne _02040800 - ldrb r1, [r0, #1] - ldrb r0, [r0, #2] - lsl r0, r0, #8 - add r0, r1, r0 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - bx lr -_02040800: - add r0, r0, #5 - b _020407E4 - thumb_func_end sub_020407AC - - thumb_func_start sub_02040804 -sub_02040804: ; 0x02040804 - bx lr - nop -_02040808: .word 0x0000FFFF - thumb_func_end sub_02040804 - - thumb_func_start sub_0204080C -sub_0204080C: ; 0x0204080C - push {r3, r4, r5, r6, r7, lr} - add r5, r0, #0 - add r4, r1, #0 -_02040812: - ldrb r0, [r4] - cmp r0, #0 - bne _0204081C - ldr r0, _0204088C ; =0x0000FFFF - pop {r3, r4, r5, r6, r7, pc} -_0204081C: - cmp r0, r2 - bne _02040838 - ldrb r0, [r4, #4] - ldrb r2, [r4, #2] - ldrb r3, [r4, #1] - lsl r1, r0, #0x18 - ldrb r0, [r4, #3] - lsl r2, r2, #8 - add r2, r3, r2 - lsl r0, r0, #0x10 - add r0, r0, r2 - add r1, r1, r0 - add r0, r4, #5 - b _0204083C -_02040838: - add r4, r4, #5 - b _02040812 -_0204083C: - cmp r1, #0 - bne _02040844 - ldr r0, _0204088C ; =0x0000FFFF - pop {r3, r4, r5, r6, r7, pc} -_02040844: - add r4, r0, r1 -_02040846: - ldrb r0, [r4, #1] - ldrb r1, [r4] - lsl r0, r0, #8 - add r0, r1, r0 - lsl r0, r0, #0x10 - lsr r1, r0, #0x10 - bne _02040858 - ldr r0, _0204088C ; =0x0000FFFF - pop {r3, r4, r5, r6, r7, pc} -_02040858: - ldrb r0, [r4, #3] - ldrb r2, [r4, #2] - lsl r0, r0, #8 - add r0, r2, r0 - lsl r0, r0, #0x10 - lsr r6, r0, #0x10 - add r0, r5, #0 - bl sub_020403AC - add r7, r0, #0 - add r0, r5, #0 - add r1, r6, #0 - bl sub_020403AC - cmp r7, r0 - bne _02040886 - ldrb r0, [r4, #5] - ldrb r1, [r4, #4] - lsl r0, r0, #8 - add r0, r1, r0 - lsl r0, r0, #0x10 - lsr r0, r0, #0x10 - pop {r3, r4, r5, r6, r7, pc} -_02040886: - add r4, r4, #6 - b _02040846 -_0204088A: - pop {r3, r4, r5, r6, r7, pc} - .balign 4, 0 -_0204088C: .word 0x0000FFFF - thumb_func_end sub_0204080C - - .rodata - -_020F684C: - .byte 0x06 -_020F684D: - .byte 0x00, 0x04, 0x06 - .byte 0x03, 0x0A, 0x00, 0x00 -_020F6854: - .byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00 - .byte 0x06, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00 - .byte 0x0A, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x00, 0x00 - .byte 0x5B, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00 -_020F6888: - .byte 0x00, 0x07, 0x01, 0x05, 0x03, 0x06, 0x01, 0x08 - .byte 0x05, 0x06, 0x03, 0x07, 0x05, 0x09, 0x06, 0x07, 0x03, 0x08, 0x06, 0x0A, 0x07, 0x08, 0x03, 0x09 - .byte 0x07, 0x02, 0x08, 0x09, 0x03, 0x0A, 0x08, 0x00, 0x09, 0x0A, 0x03, 0x02, 0x09, 0x01, 0x0A, 0x02 - .byte 0x03, 0x00, 0x0A, 0x05, 0x02, 0x00, 0x03, 0x01, 0x02, 0x06, 0x00, 0x01, 0x03, 0x05, 0x00, 0x02 - .byte 0x05, 0x07, 0x03, 0x09 -_020F68C4: - .byte 0x00, 0x02, 0x01, 0x03 -_020F68C8: - .byte 0x00, 0x02, 0x03, 0x01, 0x03, 0x01, 0x00, 0x02 -_020F68D0: - .byte 0xED, 0x01, 0xF2, 0x01, 0xEE, 0x01, 0xF1, 0x01, 0xF0, 0x01, 0xEC, 0x01, 0xEF, 0x01 -_020F68DE: - .byte 0x04, 0xFE - .byte 0x00, 0x00, 0x00, 0x00, 0x04, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x04, 0xFE, 0x00, 0x00, 0x00, 0x00 - .byte 0x04, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x04, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x02, 0x02, 0x02, 0x02 - .byte 0x02, 0x00 -_020F6902: - .byte 0x00, 0x00 -_020F6904: - .byte 0x74, 0x16, 0x0A, 0x00, 0x00, 0x00, 0x96, 0x00, 0x78, 0x00, 0x14, 0x0E - .byte 0x00, 0x00, 0x1C, 0x02, 0x7D, 0x00, 0x00, 0x1C, 0x14, 0x00, 0xC8, 0x00, 0x88, 0x00, 0x00, 0x00 - .byte 0x18, 0x0E, 0x96, 0x00, 0x68, 0x0C, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00 -_020F692C: - .byte 0x01, 0x01, 0x01, 0x01 - .byte 0x03, 0x03, 0x03, 0x04, 0x03, 0x04, 0x07, 0x03, 0x07, 0x04, 0x01, 0x04, 0x01, 0x01, 0x04, 0x01 - .byte 0x01, 0x01, 0x01, 0x03, 0x00, 0x00, 0x04, 0x01, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03, 0x01, 0x03 - .byte 0x00, 0x01, 0x01, 0x01, 0x03 -_020F6955: - .byte 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01 - .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01 - .byte 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00 -_020F6980: - .byte 0x00, 0x00, 0x00, 0x00 -_020F6984: - .byte 0xC1, 0x42, 0x03, 0x02 -_020F6988: - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x6D, 0x77, 0x03, 0x02, 0xC1, 0x42, 0x03, 0x02 - .byte 0x00, 0x00, 0x00, 0x00, 0xD1, 0x45, 0x03, 0x02, 0x21, 0x45, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 - .byte 0x3D, 0x45, 0x03, 0x02, 0x21, 0x45, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x25, 0x45, 0x03, 0x02 - .byte 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x3D, 0x8B, 0x03, 0x02, 0x19, 0x8C, 0x03, 0x02 - .byte 0x00, 0x00, 0x00, 0x00, 0x9D, 0x8B, 0x03, 0x02, 0x19, 0x8C, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x76, 0x03, 0x02, 0xC5, 0x42, 0x03, 0x02 - .byte 0x00, 0x00, 0x00, 0x00, 0x41, 0x76, 0x03, 0x02, 0xC5, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 - .byte 0x69, 0x76, 0x03, 0x02, 0xC5, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0xCD, 0x42, 0x03, 0x02 - .byte 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x11, 0x43, 0x03, 0x02, 0xC1, 0x42, 0x03, 0x02 - .byte 0x00, 0x00, 0x00, 0x00, 0x39, 0x43, 0x03, 0x02, 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 - .byte 0x25, 0x7A, 0x03, 0x02, 0xC5, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0xAD, 0x7A, 0x03, 0x02 - .byte 0xC5, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x99, 0x7A, 0x03, 0x02, 0xC9, 0x42, 0x03, 0x02 - .byte 0x00, 0x00, 0x00, 0x00, 0x6D, 0x7B, 0x03, 0x02, 0x89, 0x7B, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 - .byte 0x69, 0x7C, 0x03, 0x02, 0x95, 0x7C, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x21, 0x92, 0x03, 0x02 - .byte 0xC1, 0x42, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00 -_020F6A88: - .byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00 -_020F6A90: - .byte 0x7D, 0x82, 0x03, 0x02, 0x99, 0x83, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x14, 0x00 - .byte 0xFF, 0xFF, 0x00, 0x00, 0xF8, 0x01, 0x14, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xF4, 0x01, 0x14, 0x00 - .byte 0xFF, 0xFF, 0x00, 0x00, 0xF0, 0x01, 0x14, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xF0, 0x01, 0x14, 0x00 - .byte 0xF4, 0x01, 0x14, 0x00, 0xF8, 0x01, 0x14, 0x00, 0xFC, 0x01, 0x14, 0x00, 0xFF, 0xFF, 0x00, 0x00 -_020F6AD0: - .byte 0x00, 0x03, 0x03, 0x1A, 0x12, 0x01, 0x23, 0x00 -_020F6AD8: - .byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -_020F6AE8: - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 -_020F6B04: - .byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -_020F6B2C: - .byte 0x39, 0x72, 0x09, 0x02 - .byte 0x31, 0x72, 0x09, 0x02, 0x00, 0x00, 0x00, 0x00, 0x49, 0x72, 0x09, 0x02, 0x2D, 0x72, 0x09, 0x02 - .byte 0x00, 0x00, 0x00, 0x00, 0x59, 0x72, 0x09, 0x02, 0x35, 0x72, 0x09, 0x02, 0x00, 0x00, 0x00, 0x00 -_020F6B50: - .byte 0x00, 0x03, 0x03, 0x1A, 0x12, 0x01, 0x23, 0x00 -_020F6B58: - .byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -_020F6B68: - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 -_020F6B84: - .byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -_020F6BAC: - .byte 0xF5, 0x01, 0xDB, 0x01 - .byte 0xAC, 0x01, 0xB2, 0x01, 0x66, 0x01, 0x89, 0x01, 0xE2, 0x01, 0xFC, 0x01, 0x97, 0x01, 0x45, 0x00 - .byte 0x9E, 0x00, 0xA6, 0x00, 0xEC, 0x00, 0xB9, 0x00, 0xE2, 0x00, 0x51, 0x00, 0xF6, 0x00, 0x25, 0x01 - .byte 0x02, 0x02, 0xFF, 0x01, 0xD2, 0x01, 0xA9, 0x00, 0x10, 0x02, 0x16, 0x02, 0x00, 0x00, 0x00, 0x00 -_020F6BE0: - .byte 0xFF -_020F6BE1: - .byte 0x00, 0x0F, 0x00 -_020F6BE4: - .byte 0x00, 0x00 -_020F6BE6: - .byte 0x8B, 0x00 -_020F6BE8: - .byte 0x8F, 0x01 -_020F6BEA: - .byte 0x03, 0x00 -_020F6BEC: - .byte 0xE8, 0x03 -_020F6BEE: - .byte 0xE8, 0x03 -_020F6BF0: - .byte 0x00, 0x00, 0x00, 0xA6, 0x00, 0x02, 0x30, 0x0E, 0xFF, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0xE8, 0x03, 0xE8, 0x03, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x00, 0x30, 0x00 - .byte 0xFF, 0x1A, 0x0F, 0x00, 0x4A, 0x00, 0xBD, 0x03, 0xD6, 0x02, 0xE2, 0x02, 0x27, 0x04, 0x27, 0x04 - .byte 0x01, 0x00, 0x00, 0xA6, 0x00, 0x44, 0x60, 0x00, 0xFF, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x06, 0x30, 0x00 - .byte 0xFF, 0x1A, 0x0F, 0x00, 0x4B, 0x00, 0x89, 0x00, 0x8D, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0x02, 0x00, 0x00, 0xA6, 0x00, 0x44, 0x60, 0x00, 0xFF, 0x1A, 0x0F, 0x00, 0x4C, 0x00, 0x8A, 0x00 - .byte 0x8E, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x03, 0x00, 0x00, 0xA6, 0x00, 0x44, 0x60, 0x00 - .byte 0xFF, 0x58, 0xCF, 0x10, 0x43, 0x00, 0x16, 0x00, 0x1B, 0x01, 0x3B, 0x00, 0xE9, 0x03, 0xE9, 0x03 - .byte 0x04, 0x00, 0xE6, 0x91, 0x00, 0x01, 0x08, 0xF6, 0x1C, 0x4E, 0xBF, 0x10, 0x19, 0x00, 0x17, 0x00 - .byte 0x1C, 0x01, 0x3C, 0x00, 0x34, 0x04, 0x34, 0x04, 0x05, 0x00, 0xCE, 0xA4, 0x00, 0x03, 0x88, 0xEC - .byte 0xFF, 0x03, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x32, 0x04, 0x32, 0x04 - .byte 0x00, 0x00, 0xD1, 0x93, 0x00, 0x02, 0x08, 0xF6, 0x6F, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xA8, 0x00 - .byte 0x9D, 0x01, 0x3F, 0x01, 0x1A, 0x04, 0x1A, 0x04, 0x06, 0x00, 0x95, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x70, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xA9, 0x00, 0x9E, 0x01, 0x40, 0x01, 0x1B, 0x04, 0x1B, 0x04 - .byte 0x07, 0x00, 0x96, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x71, 0x11, 0x0F, 0x00, 0x00, 0x00, 0xAF, 0x00 - .byte 0xA4, 0x01, 0x46, 0x01, 0x21, 0x04, 0x21, 0x04, 0x08, 0x00, 0x97, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x72, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xB2, 0x00, 0xA7, 0x01, 0x48, 0x01, 0x1D, 0x04, 0x1D, 0x04 - .byte 0x09, 0x00, 0x98, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x73, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xB3, 0x00 - .byte 0xA8, 0x01, 0x49, 0x01, 0x1D, 0x04, 0x1D, 0x04, 0x0A, 0x00, 0x99, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x74, 0x0B, 0x0F, 0x00, 0x00, 0x00, 0xB8, 0x00, 0xAD, 0x01, 0x4E, 0x01, 0x1C, 0x04, 0x1C, 0x04 - .byte 0x0B, 0x00, 0x9A, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x75, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0xBA, 0x00 - .byte 0xAF, 0x01, 0x50, 0x01, 0x1F, 0x04, 0x1F, 0x04, 0x0C, 0x00, 0x9B, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x76, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xBC, 0x00, 0xB1, 0x01, 0x52, 0x01, 0x1E, 0x04, 0x1E, 0x04 - .byte 0x0D, 0x00, 0x9C, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x77, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xBE, 0x00 - .byte 0xB3, 0x01, 0x54, 0x01, 0x1D, 0x04, 0x1D, 0x04, 0x0E, 0x00, 0x9D, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x78, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xBF, 0x00, 0xB4, 0x01, 0x55, 0x01, 0x1D, 0x04, 0x1D, 0x04 - .byte 0x0F, 0x00, 0x9E, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x79, 0x0B, 0x0F, 0x00, 0x00, 0x00, 0xC5, 0x00 - .byte 0xBA, 0x01, 0x5A, 0x01, 0x23, 0x04, 0x23, 0x04, 0x10, 0x00, 0x9F, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x5C, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xC7, 0x00, 0xBC, 0x01, 0x5C, 0x01, 0x24, 0x04, 0x24, 0x04 - .byte 0x11, 0x00, 0xA0, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x7A, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xC9, 0x00 - .byte 0xBE, 0x01, 0x5E, 0x01, 0x24, 0x04, 0x24, 0x04, 0x12, 0x00, 0xA1, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x7B, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xCA, 0x00, 0xBF, 0x01, 0x5F, 0x01, 0x24, 0x04, 0x24, 0x04 - .byte 0x13, 0x00, 0xA2, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x7C, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xCB, 0x00 - .byte 0xC0, 0x01, 0x60, 0x01, 0x24, 0x04, 0x24, 0x04, 0x14, 0x00, 0xA3, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0xFF, 0x10, 0x0F, 0x00, 0x00, 0x00, 0xCD, 0x00, 0xC2, 0x01, 0x62, 0x01, 0x20, 0x04, 0x20, 0x04 - .byte 0x15, 0x00, 0xA4, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x7E, 0x10, 0x0F, 0x00, 0x00, 0x00, 0xD1, 0x00 - .byte 0xC6, 0x01, 0x65, 0x01, 0xC0, 0x04, 0xC0, 0x04, 0x16, 0x00, 0xA5, 0xC3, 0x01, 0x02, 0x28, 0xF6 - .byte 0x7F, 0x10, 0x0F, 0x00, 0x00, 0x00, 0xD2, 0x00, 0xC7, 0x01, 0x66, 0x01, 0x20, 0x04, 0x20, 0x04 - .byte 0x17, 0x00, 0xA6, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x81, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xD4, 0x00 - .byte 0xC9, 0x01, 0x68, 0x01, 0x1B, 0x04, 0x1B, 0x04, 0x18, 0x00, 0xAA, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x82, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xD7, 0x00, 0xCC, 0x01, 0x6A, 0x01, 0x25, 0x04, 0x25, 0x04 - .byte 0x19, 0x00, 0xAC, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x83, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xD8, 0x00 - .byte 0xCD, 0x01, 0x6B, 0x01, 0x25, 0x04, 0x25, 0x04, 0x1A, 0x00, 0xAD, 0xC3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x67, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xDA, 0x00, 0xCF, 0x01, 0x6D, 0x01, 0x26, 0x04, 0x26, 0x04 - .byte 0x1B, 0x00, 0xAE, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x68, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xDD, 0x00 - .byte 0xD2, 0x01, 0x71, 0x01, 0x26, 0x04, 0x26, 0x04, 0x1C, 0x00, 0xAF, 0xA3, 0x01, 0x02, 0x08, 0xF6 - .byte 0x69, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xDF, 0x00, 0xD4, 0x01, 0x73, 0x01, 0x3D, 0x04, 0x3D, 0x04 - .byte 0x1D, 0x00, 0xB0, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0x01, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xE1, 0x00 - .byte 0xD6, 0x01, 0x75, 0x01, 0x04, 0x04, 0x04, 0x04, 0x1E, 0x00, 0xB1, 0xB3, 0x00, 0x02, 0x08, 0xF6 - .byte 0x03, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xE3, 0x00, 0xD8, 0x01, 0x77, 0x01, 0x05, 0x04, 0x05, 0x04 - .byte 0x1F, 0x00, 0xB2, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x04, 0x02, 0x0F, 0x00, 0x00, 0x00, 0xE6, 0x00 - .byte 0xDB, 0x01, 0x7A, 0x01, 0x05, 0x04, 0x05, 0x04, 0x20, 0x00, 0xB3, 0xB3, 0x00, 0x02, 0x08, 0xF6 - .byte 0x08, 0x03, 0x0F, 0x00, 0x00, 0x00, 0xE8, 0x00, 0xDD, 0x01, 0x7C, 0x01, 0x06, 0x04, 0x06, 0x04 - .byte 0x21, 0x00, 0xB4, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x11, 0x04, 0x0F, 0x00, 0x00, 0x00, 0xEC, 0x00 - .byte 0xE1, 0x01, 0x7F, 0x01, 0x07, 0x04, 0x07, 0x04, 0x22, 0x00, 0xB5, 0xB3, 0x02, 0x02, 0x08, 0xF6 - .byte 0x15, 0x05, 0x0F, 0x00, 0x00, 0x00, 0xED, 0x00, 0xE2, 0x01, 0x80, 0x01, 0x08, 0x04, 0x08, 0x04 - .byte 0x23, 0x00, 0xB6, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x16, 0x06, 0x0F, 0x00, 0x00, 0x00, 0xF0, 0x00 - .byte 0xE5, 0x01, 0x83, 0x01, 0x09, 0x04, 0x09, 0x04, 0x24, 0x00, 0xB7, 0xB3, 0x00, 0x02, 0x08, 0xF6 - .byte 0x19, 0x06, 0x0F, 0x00, 0x00, 0x00, 0xF3, 0x00, 0xE8, 0x01, 0x86, 0x01, 0x09, 0x04, 0x09, 0x04 - .byte 0x25, 0x00, 0xB8, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x1A, 0x06, 0x0F, 0x00, 0x00, 0x00, 0xF6, 0x00 - .byte 0xEB, 0x01, 0x89, 0x01, 0x09, 0x04, 0x09, 0x04, 0x26, 0x00, 0xB9, 0xB3, 0x00, 0x02, 0x08, 0xF6 - .byte 0x26, 0x07, 0x0F, 0x00, 0x00, 0x00, 0xF7, 0x00, 0xEC, 0x01, 0x8A, 0x01, 0x0C, 0x04, 0x0C, 0x04 - .byte 0x27, 0x00, 0xBA, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x27, 0x07, 0x0F, 0x00, 0x00, 0x00, 0xF9, 0x00 - .byte 0xEE, 0x01, 0x8C, 0x01, 0x0C, 0x04, 0x0C, 0x04, 0x28, 0x00, 0xBB, 0xB3, 0x00, 0x02, 0x08, 0xF6 - .byte 0x34, 0x08, 0x0F, 0x00, 0x00, 0x00, 0xFC, 0x00, 0xF1, 0x01, 0x8F, 0x01, 0x0D, 0x04, 0x0D, 0x04 - .byte 0x29, 0x00, 0xBE, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x39, 0x08, 0x0F, 0x00, 0x00, 0x00, 0xFE, 0x00 - .byte 0xF3, 0x01, 0x91, 0x01, 0x0D, 0x04, 0x0D, 0x04, 0x2A, 0x00, 0xBF, 0xB3, 0x00, 0x02, 0x08, 0xF6 - .byte 0x3B, 0x08, 0x0F, 0x00, 0x00, 0x00, 0x01, 0x01, 0xF6, 0x01, 0x94, 0x01, 0x0D, 0x04, 0x0D, 0x04 - .byte 0x2B, 0x00, 0xC0, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x43, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x02, 0x01 - .byte 0xF7, 0x01, 0x95, 0x01, 0x0B, 0x04, 0x0B, 0x04, 0x2C, 0x00, 0xC1, 0xB3, 0x00, 0x02, 0x08, 0xF6 - .byte 0x44, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x03, 0x01, 0xF8, 0x01, 0x96, 0x01, 0x0B, 0x04, 0x0B, 0x04 - .byte 0x2D, 0x00, 0xC2, 0xB3, 0x00, 0x02, 0x08, 0xF6, 0x5F, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xDF, 0x02 - .byte 0xFC, 0x01, 0xBE, 0x01, 0x16, 0x04, 0x16, 0x04, 0x2E, 0x00, 0x8A, 0xC2, 0x01, 0x01, 0x08, 0xF6 - .byte 0x60, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xE5, 0x02, 0x02, 0x02, 0xC4, 0x01, 0x15, 0x04, 0x15, 0x04 - .byte 0x2F, 0x00, 0x8B, 0xC1, 0x01, 0x01, 0x28, 0xF6, 0xFF, 0x11, 0x0F, 0x00, 0x00, 0x00, 0xEE, 0x02 - .byte 0x0B, 0x02, 0xCC, 0x01, 0x14, 0x04, 0x14, 0x04, 0x30, 0x00, 0x8C, 0xC1, 0x01, 0x01, 0x28, 0xF6 - .byte 0x61, 0x0D, 0x0F, 0x00, 0x00, 0x00, 0xF6, 0x02, 0x13, 0x02, 0xD3, 0x01, 0x10, 0x04, 0x10, 0x04 - .byte 0x31, 0x00, 0x8D, 0xC1, 0x01, 0x01, 0x28, 0xF6, 0xFF, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xFF, 0x02 - .byte 0x1C, 0x02, 0xDB, 0x01, 0x11, 0x04, 0x11, 0x04, 0x32, 0x00, 0x8E, 0xC2, 0x01, 0x01, 0x28, 0xF6 - .byte 0x62, 0x0B, 0x0F, 0x00, 0x00, 0x00, 0x08, 0x03, 0x25, 0x02, 0xE3, 0x01, 0x0E, 0x04, 0x0E, 0x04 - .byte 0x33, 0x00, 0x8F, 0xC1, 0x01, 0x01, 0x28, 0xF6, 0x63, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x11, 0x03 - .byte 0x2E, 0x02, 0xEB, 0x01, 0x12, 0x04, 0x12, 0x04, 0x34, 0x00, 0x90, 0xC1, 0x01, 0x01, 0x28, 0xF6 - .byte 0x64, 0x10, 0x0F, 0x00, 0x00, 0x00, 0x27, 0x03, 0x44, 0x02, 0x00, 0x02, 0x13, 0x04, 0x13, 0x04 - .byte 0x35, 0x00, 0x91, 0xC1, 0x01, 0x01, 0x28, 0xF6, 0x65, 0x12, 0x0F, 0x00, 0x00, 0x00, 0x2F, 0x03 - .byte 0x4C, 0x02, 0x07, 0x02, 0x17, 0x04, 0x17, 0x04, 0x36, 0x00, 0x92, 0xC2, 0x01, 0x01, 0x28, 0xF6 - .byte 0xFF, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0x32, 0x03, 0x4F, 0x02, 0x09, 0x02, 0x3D, 0x04, 0x3D, 0x04 - .byte 0x37, 0x00, 0x93, 0xC3, 0x01, 0x02, 0x28, 0xF6, 0xFF, 0x0C, 0x0F, 0x00, 0x00, 0x00, 0x3B, 0x03 - .byte 0x58, 0x02, 0x11, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x38, 0x00, 0x94, 0xC1, 0x01, 0x01, 0x28, 0xF6 - .byte 0x00, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x4A, 0x03, 0x67, 0x02, 0x1E, 0x02, 0xFA, 0x03, 0xFA, 0x03 - .byte 0x39, 0x00, 0x7E, 0x02, 0x00, 0x01, 0x08, 0xF6, 0xFF, 0x19, 0x5F, 0x31, 0x64, 0x00, 0x4B, 0x03 - .byte 0x68, 0x02, 0x1F, 0x02, 0x2A, 0x04, 0x2A, 0x04, 0x3A, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x5F, 0x31, 0x65, 0x00, 0x4C, 0x03, 0x69, 0x02, 0x20, 0x02, 0xFA, 0x03, 0xFA, 0x03 - .byte 0x3B, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x5F, 0x31, 0x47, 0x00, 0x4D, 0x03 - .byte 0x6A, 0x02, 0x21, 0x02, 0xFA, 0x03, 0xFA, 0x03, 0x3C, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x5F, 0x31, 0x48, 0x00, 0x4E, 0x03, 0x6B, 0x02, 0x22, 0x02, 0xFA, 0x03, 0xFA, 0x03 - .byte 0x3D, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x5F, 0x31, 0x42, 0x00, 0x4F, 0x03 - .byte 0x6C, 0x02, 0x23, 0x02, 0xFA, 0x03, 0xFA, 0x03, 0x3E, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x5F, 0x31, 0x47, 0x00, 0x50, 0x03, 0x6D, 0x02, 0x24, 0x02, 0xFA, 0x03, 0xFA, 0x03 - .byte 0x3F, 0x00, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4, 0x02, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x52, 0x03 - .byte 0x6F, 0x02, 0x26, 0x02, 0xFB, 0x03, 0xFB, 0x03, 0x40, 0x00, 0x7F, 0x11, 0x00, 0x01, 0x08, 0xF6 - .byte 0xFF, 0x1B, 0x1F, 0x31, 0x68, 0x00, 0x53, 0x03, 0x70, 0x02, 0x27, 0x02, 0x28, 0x04, 0x28, 0x04 - .byte 0x41, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x1F, 0x31, 0x49, 0x00, 0x54, 0x03 - .byte 0x71, 0x02, 0x28, 0x02, 0x27, 0x04, 0x27, 0x04, 0x42, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x0F, 0x31, 0x61, 0x00, 0x56, 0x03, 0x73, 0x02, 0x29, 0x02, 0xFB, 0x03, 0xFB, 0x03 - .byte 0x43, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x1F, 0x31, 0x60, 0x00, 0x57, 0x03 - .byte 0x74, 0x02, 0x2A, 0x02, 0xFB, 0x03, 0xFB, 0x03, 0x44, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x1F, 0x31, 0x61, 0x00, 0x58, 0x03, 0x75, 0x02, 0x2B, 0x02, 0xFB, 0x03, 0xFB, 0x03 - .byte 0x45, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4, 0x05, 0x03, 0x0F, 0x00, 0x00, 0x00, 0x59, 0x03 - .byte 0x76, 0x02, 0x2C, 0x02, 0xFC, 0x03, 0xFC, 0x03, 0x46, 0x00, 0x80, 0x21, 0x00, 0x01, 0x28, 0xF6 - .byte 0xFF, 0x04, 0x0F, 0x00, 0x00, 0x00, 0x62, 0x03, 0x7F, 0x02, 0x34, 0x02, 0xFD, 0x03, 0xFD, 0x03 - .byte 0x47, 0x00, 0x81, 0x32, 0x00, 0x01, 0x08, 0xF6, 0x33, 0x07, 0x0F, 0x00, 0x00, 0x00, 0x6B, 0x03 - .byte 0x88, 0x02, 0x3C, 0x02, 0x01, 0x04, 0x01, 0x04, 0x48, 0x00, 0x82, 0x41, 0x00, 0x01, 0x28, 0xF6 - .byte 0xFF, 0x05, 0x0F, 0x00, 0x00, 0x00, 0x75, 0x03, 0x92, 0x02, 0x45, 0x02, 0xFE, 0x03, 0xFE, 0x03 - .byte 0x49, 0x00, 0x83, 0x51, 0x00, 0x01, 0x28, 0xF6, 0x28, 0x07, 0x0F, 0x00, 0x00, 0x00, 0x8F, 0x03 - .byte 0xAC, 0x02, 0x5C, 0x02, 0x00, 0x04, 0x00, 0x04, 0x4A, 0x00, 0x84, 0x61, 0x00, 0x01, 0x28, 0xF6 - .byte 0x1B, 0x06, 0x0F, 0x00, 0x00, 0x00, 0x98, 0x03, 0xB5, 0x02, 0x64, 0x02, 0xFF, 0x03, 0xFF, 0x03 - .byte 0x4B, 0x00, 0x85, 0x71, 0x00, 0x01, 0x28, 0xF6, 0xFF, 0x1B, 0xCF, 0x14, 0x68, 0x00, 0x99, 0x03 - .byte 0xB6, 0x02, 0x65, 0x02, 0x28, 0x04, 0x28, 0x04, 0x4C, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1F, 0xBF, 0x14, 0x5A, 0x00, 0x9A, 0x03, 0xB7, 0x02, 0x66, 0x02, 0x29, 0x04, 0x29, 0x04 - .byte 0x4D, 0x00, 0x85, 0x79, 0x00, 0x04, 0x64, 0xA4, 0xFF, 0x1A, 0xCF, 0x14, 0x49, 0x00, 0x9B, 0x03 - .byte 0xB8, 0x02, 0x67, 0x02, 0x27, 0x04, 0x27, 0x04, 0x4E, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFF, 0x03, 0xFF, 0x03 - .byte 0x4F, 0x00, 0x06, 0x79, 0x00, 0x44, 0x64, 0xE0, 0xFF, 0x3D, 0xCF, 0x10, 0x44, 0x00, 0x9E, 0x03 - .byte 0xBB, 0x02, 0x68, 0x02, 0xFF, 0x03, 0xFF, 0x03, 0x50, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0xBF, 0x14, 0x42, 0x00, 0xA1, 0x03, 0xBE, 0x02, 0x6B, 0x02, 0xFF, 0x03, 0xFF, 0x03 - .byte 0x51, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0xBF, 0x14, 0x42, 0x00, 0x9F, 0x03 - .byte 0xBC, 0x02, 0x69, 0x02, 0xFF, 0x03, 0xFF, 0x03, 0x52, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3D, 0xCF, 0x14, 0x7E, 0x00, 0xA0, 0x03, 0xBD, 0x02, 0x6A, 0x02, 0x2C, 0x04, 0x2C, 0x04 - .byte 0x53, 0x00, 0x85, 0x79, 0x00, 0xF4, 0x64, 0xE4, 0xFF, 0x08, 0x0F, 0x00, 0x00, 0x00, 0xA2, 0x03 - .byte 0xBF, 0x02, 0x6C, 0x02, 0x02, 0x04, 0x02, 0x04, 0x54, 0x00, 0x86, 0xA2, 0x00, 0x01, 0x08, 0xF6 - .byte 0x3A, 0x08, 0x0F, 0x00, 0x00, 0x00, 0xAA, 0x03, 0xC7, 0x02, 0x72, 0x02, 0x0D, 0x04, 0x0D, 0x04 - .byte 0x55, 0x00, 0x87, 0x98, 0x02, 0x02, 0x08, 0xF6, 0x41, 0x09, 0x0F, 0x00, 0x00, 0x00, 0xAD, 0x03 - .byte 0xCA, 0x02, 0x75, 0x02, 0x03, 0x04, 0x03, 0x04, 0x56, 0x00, 0x88, 0xA1, 0x00, 0x01, 0x08, 0xF6 - .byte 0x55, 0x0A, 0x0F, 0x00, 0x00, 0x00, 0xB5, 0x03, 0xD2, 0x02, 0x7C, 0x02, 0x3D, 0x04, 0x3D, 0x04 - .byte 0x57, 0x00, 0x89, 0x93, 0x00, 0x01, 0x08, 0xF6, 0x5D, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xBE, 0x03 - .byte 0xD7, 0x02, 0xE4, 0x02, 0x20, 0x04, 0x20, 0x04, 0x58, 0x00, 0xA7, 0xC6, 0x01, 0x02, 0x08, 0xF6 - .byte 0x5E, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xC0, 0x03, 0xD9, 0x02, 0xE6, 0x02, 0x20, 0x04, 0x20, 0x04 - .byte 0x59, 0x00, 0xA8, 0xC6, 0x01, 0x02, 0x18, 0xF6, 0x80, 0x12, 0x0F, 0x00, 0x00, 0x00, 0xC1, 0x03 - .byte 0xDA, 0x02, 0xE7, 0x02, 0x22, 0x04, 0x22, 0x04, 0x5A, 0x00, 0xA9, 0xC6, 0x01, 0x02, 0x18, 0xF6 - .byte 0x29, 0x07, 0x0F, 0x00, 0x00, 0x00, 0xC2, 0x03, 0xDB, 0x02, 0xE8, 0x02, 0x0A, 0x04, 0x0A, 0x04 - .byte 0x5B, 0x00, 0xBC, 0xB6, 0x00, 0x02, 0x18, 0xF6, 0x2A, 0x07, 0x0F, 0x00, 0x00, 0x00, 0xC4, 0x03 - .byte 0xDD, 0x02, 0xEA, 0x02, 0x0A, 0x04, 0x0A, 0x04, 0x5C, 0x00, 0xBD, 0xB6, 0x00, 0x02, 0x18, 0xF6 - .byte 0x17, 0x47, 0xBF, 0x1C, 0x1B, 0x00, 0x19, 0x00, 0x1E, 0x01, 0x3E, 0x00, 0x33, 0x04, 0x33, 0x04 - .byte 0x5D, 0x00, 0xCF, 0x97, 0x00, 0x01, 0x08, 0xF6, 0xFF, 0x3F, 0x0F, 0x21, 0x46, 0x00, 0xE7, 0x00 - .byte 0xDC, 0x01, 0x7B, 0x01, 0x05, 0x04, 0x05, 0x04, 0x5E, 0x00, 0xB3, 0xA9, 0x00, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x3F, 0xEF, 0x24, 0x46, 0x00, 0xEB, 0x00, 0xE0, 0x01, 0x7E, 0x01, 0x06, 0x04, 0x06, 0x04 - .byte 0x5F, 0x00, 0xB4, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0x0E, 0x57, 0xEF, 0x34, 0x2A, 0x00, 0x38, 0x00 - .byte 0x3D, 0x01, 0x57, 0x00, 0x31, 0x04, 0x31, 0x04, 0x60, 0x00, 0xD2, 0x84, 0x00, 0x03, 0x98, 0xEE - .byte 0xFF, 0x3F, 0xBF, 0x38, 0x46, 0x00, 0x68, 0x03, 0x85, 0x02, 0x39, 0x02, 0x09, 0x04, 0x09, 0x04 - .byte 0x61, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0xBF, 0x24, 0x45, 0x00, 0xF1, 0x00 - .byte 0xE6, 0x01, 0x84, 0x01, 0x09, 0x04, 0x09, 0x04, 0x62, 0x00, 0xB7, 0xA9, 0x00, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x3F, 0xBF, 0x20, 0xC4, 0x00, 0xF2, 0x00, 0xE7, 0x01, 0x85, 0x01, 0x09, 0x04, 0x09, 0x04 - .byte 0x63, 0x00, 0xB7, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0xDF, 0x1C, 0x45, 0x00, 0xF4, 0x00 - .byte 0xE9, 0x01, 0x87, 0x01, 0x09, 0x04, 0x09, 0x04, 0x64, 0x00, 0xB8, 0xA9, 0x00, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x3F, 0xCF, 0x1C, 0x46, 0x00, 0xF5, 0x00, 0xEA, 0x01, 0x88, 0x01, 0x09, 0x04, 0x09, 0x04 - .byte 0x65, 0x00, 0xB8, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0x0F, 0x00, 0x46, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x09, 0x04, 0x09, 0x04, 0x66, 0x00, 0x06, 0x79, 0x00, 0x44, 0x64, 0xE0 - .byte 0x85, 0x52, 0x0F, 0x12, 0x02, 0x00, 0x05, 0x00, 0x0A, 0x01, 0x2F, 0x00, 0x3A, 0x04, 0x3A, 0x04 - .byte 0x67, 0x00, 0xC5, 0xC4, 0x01, 0x03, 0xA8, 0xEE, 0x6A, 0x46, 0x4F, 0x0E, 0x03, 0x00, 0x07, 0x00 - .byte 0x0C, 0x01, 0x31, 0x00, 0x31, 0x04, 0x31, 0x04, 0x68, 0x00, 0xC6, 0xC4, 0x01, 0x03, 0x78, 0xEE - .byte 0x6C, 0x53, 0xCF, 0x12, 0x06, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04 - .byte 0x69, 0x00, 0xC8, 0xC4, 0x17, 0x03, 0x98, 0xEE, 0xFF, 0x4B, 0x5F, 0x32, 0x08, 0x00, 0x0C, 0x00 - .byte 0x11, 0x01, 0x34, 0x00, 0x87, 0x04, 0x87, 0x04, 0x6A, 0x00, 0x37, 0x87, 0x01, 0x02, 0x08, 0xA6 - .byte 0xFF, 0x4D, 0xFF, 0x1C, 0x0C, 0x00, 0x10, 0x00, 0x15, 0x01, 0x36, 0x00, 0x30, 0x04, 0x30, 0x04 - .byte 0x6B, 0x00, 0xCC, 0x94, 0x00, 0x03, 0x88, 0xEC, 0xFF, 0x4D, 0xCF, 0x10, 0x0F, 0x00, 0x13, 0x00 - .byte 0x18, 0x01, 0x39, 0x00, 0x35, 0x04, 0x35, 0x04, 0x6C, 0x00, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC - .byte 0xFF, 0x24, 0xAF, 0x28, 0x1C, 0x00, 0x1D, 0x00, 0x22, 0x01, 0x41, 0x00, 0xFE, 0x03, 0xFE, 0x03 - .byte 0x6D, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4, 0x09, 0x14, 0x0F, 0x00, 0x00, 0x00, 0x25, 0x00 - .byte 0x2A, 0x01, 0x48, 0x00, 0x31, 0x04, 0x31, 0x04, 0x6E, 0x00, 0xD1, 0x94, 0x00, 0x02, 0x48, 0xF6 - .byte 0xFF, 0x54, 0xDF, 0x38, 0x2D, 0x00, 0x3B, 0x00, 0x40, 0x01, 0x5A, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x6F, 0x00, 0xD3, 0xB4, 0x00, 0x03, 0x98, 0xEE, 0xFF, 0x2F, 0x9F, 0x20, 0x2F, 0x00, 0x3E, 0x00 - .byte 0x43, 0x01, 0x5D, 0x00, 0x36, 0x04, 0x36, 0x04, 0x70, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x64, 0xEC - .byte 0xFF, 0x1B, 0x0F, 0x15, 0x8A, 0x00, 0x58, 0x00, 0x5D, 0x01, 0x6F, 0x00, 0x02, 0x04, 0x02, 0x04 - .byte 0x71, 0x00, 0x86, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0x14, 0x4A, 0xBF, 0x38, 0x38, 0x00, 0x5C, 0x00 - .byte 0x61, 0x01, 0x73, 0x00, 0x31, 0x04, 0x31, 0x04, 0x72, 0x00, 0xD6, 0xB5, 0x00, 0x03, 0x38, 0xEE - .byte 0xFF, 0x3E, 0xAF, 0x2C, 0x39, 0x00, 0x5D, 0x00, 0x62, 0x01, 0x74, 0x00, 0xFE, 0x03, 0xFE, 0x03 - .byte 0x73, 0x00, 0xD7, 0x59, 0x00, 0x44, 0x64, 0xE4, 0x35, 0x4F, 0xEF, 0x14, 0x3E, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x74, 0x00, 0xD8, 0x84, 0x00, 0x03, 0x98, 0xEE - .byte 0x3C, 0x4C, 0x5F, 0x11, 0x84, 0x00, 0x63, 0x00, 0x68, 0x01, 0x7A, 0x00, 0x38, 0x04, 0x38, 0x04 - .byte 0x75, 0x00, 0xD9, 0x84, 0x00, 0x03, 0x98, 0xEE, 0x2B, 0x55, 0x7F, 0x2C, 0x8D, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x76, 0x00, 0xDA, 0xB4, 0x16, 0x03, 0x98, 0xEE - .byte 0x56, 0x50, 0x9F, 0x21, 0x09, 0x01, 0x69, 0x00, 0x6E, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 - .byte 0x77, 0x00, 0xDB, 0xA4, 0x00, 0x03, 0x98, 0xEE, 0x46, 0x57, 0x4F, 0x19, 0x62, 0x00, 0x6C, 0x00 - .byte 0x71, 0x01, 0x7F, 0x00, 0x38, 0x04, 0x38, 0x04, 0x78, 0x00, 0xDC, 0x84, 0x16, 0x03, 0x98, 0xEE - .byte 0x6E, 0x46, 0xCF, 0x1D, 0xA1, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3C, 0x04, 0x3C, 0x04 - .byte 0x79, 0x00, 0xDD, 0xB4, 0x01, 0x03, 0xB8, 0xEE, 0xFF, 0x56, 0x4F, 0x11, 0x91, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x39, 0x04, 0x39, 0x04, 0x7A, 0x00, 0xDE, 0xB4, 0x00, 0x03, 0x98, 0xEE - .byte 0x84, 0x46, 0x7F, 0x31, 0x97, 0x00, 0x71, 0x00, 0x76, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x7B, 0x00, 0xDF, 0xB4, 0x01, 0x03, 0x98, 0xEE, 0xFF, 0x19, 0x1F, 0x2D, 0x42, 0x00, 0xE4, 0x00 - .byte 0xD9, 0x01, 0x78, 0x01, 0x05, 0x04, 0x05, 0x04, 0x7C, 0x00, 0xB2, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0xCF, 0x14, 0x4A, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0x7D, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xCF, 0x14, 0x4B, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x7E, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0xCF, 0x14, 0x4C, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0x00, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xCF, 0x14, 0x4D, 0x00, 0x9C, 0x03 - .byte 0xB9, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x7F, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3F, 0xDF, 0x14, 0x46, 0x00, 0xFD, 0x00, 0xF2, 0x01, 0x90, 0x01, 0x0D, 0x04, 0x0D, 0x04 - .byte 0x80, 0x00, 0xBE, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x19, 0x0F, 0x15, 0x5F, 0x00, 0xA9, 0x03 - .byte 0xC6, 0x02, 0x71, 0x02, 0x02, 0x04, 0x02, 0x04, 0x81, 0x00, 0x86, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3F, 0x3F, 0x31, 0x45, 0x00, 0xE2, 0x00, 0xD7, 0x01, 0x76, 0x01, 0x04, 0x04, 0x04, 0x04 - .byte 0x82, 0x00, 0xB1, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x1C, 0xEF, 0x20, 0x57, 0x00, 0x5B, 0x03 - .byte 0x78, 0x02, 0x2E, 0x02, 0x29, 0x04, 0x29, 0x04, 0x83, 0x00, 0x80, 0x29, 0x00, 0x14, 0x64, 0xA4 - .byte 0xFF, 0x1D, 0xCF, 0x38, 0x58, 0x00, 0x64, 0x03, 0x81, 0x02, 0x36, 0x02, 0x29, 0x04, 0x29, 0x04 - .byte 0x84, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xA4, 0xFF, 0x1E, 0xBF, 0x28, 0x59, 0x00, 0x76, 0x03 - .byte 0x93, 0x02, 0x46, 0x02, 0x29, 0x04, 0x29, 0x04, 0x85, 0x00, 0x83, 0x59, 0x00, 0x24, 0x64, 0xA4 - .byte 0xFF, 0x20, 0x8F, 0x1C, 0x5B, 0x00, 0x91, 0x03, 0xAE, 0x02, 0x5E, 0x02, 0x29, 0x04, 0x29, 0x04 - .byte 0x86, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xA4, 0xFF, 0x21, 0x5F, 0x2C, 0x5C, 0x00, 0x6D, 0x03 - .byte 0x8A, 0x02, 0x3E, 0x02, 0x29, 0x04, 0x29, 0x04, 0x87, 0x00, 0x82, 0x49, 0x00, 0x04, 0x74, 0xA4 - .byte 0xFF, 0x22, 0x0F, 0x15, 0xE5, 0x00, 0xA4, 0x03, 0xC1, 0x02, 0x6E, 0x02, 0x29, 0x04, 0x29, 0x04 - .byte 0x88, 0x00, 0x86, 0xA9, 0x00, 0x04, 0x74, 0xA4, 0xFF, 0x23, 0x4F, 0x11, 0x5E, 0x00, 0xAF, 0x03 - .byte 0xCC, 0x02, 0x77, 0x02, 0x29, 0x04, 0x29, 0x04, 0x89, 0x00, 0x88, 0xA9, 0x00, 0x04, 0x64, 0xA4 - .byte 0xFF, 0x3F, 0x0F, 0x11, 0x45, 0x00, 0xFF, 0x00, 0xF4, 0x01, 0x92, 0x01, 0x0D, 0x04, 0x0D, 0x04 - .byte 0x8A, 0x00, 0xBF, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x3D, 0x1F, 0x25, 0x67, 0x00, 0xE5, 0x00 - .byte 0xDA, 0x01, 0x79, 0x01, 0x05, 0x04, 0x05, 0x04, 0x8B, 0x00, 0xB2, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x1F, 0x31, 0x4D, 0x00, 0x55, 0x03, 0x72, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0x8C, 0x00, 0x7F, 0x19, 0x00, 0x44, 0x64, 0xE4, 0x8B, 0x49, 0x8F, 0x0E, 0x4E, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04, 0x8D, 0x00, 0xC7, 0xA4, 0x17, 0x03, 0x98, 0xEE - .byte 0x4A, 0x46, 0x3F, 0x3E, 0x51, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 - .byte 0x8E, 0x00, 0xCB, 0xA4, 0x01, 0x03, 0x98, 0xEE, 0x89, 0x67, 0x0F, 0x16, 0x56, 0x00, 0x73, 0x00 - .byte 0x78, 0x01, 0x84, 0x00, 0x3B, 0x04, 0x3B, 0x04, 0x8F, 0x00, 0xE0, 0xA5, 0x01, 0x03, 0x38, 0xEE - .byte 0xFF, 0x19, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x14, 0x04, 0x14, 0x04 - .byte 0x00, 0x00, 0xC9, 0xC9, 0x01, 0x44, 0x64, 0xE0, 0xFF, 0x3F, 0xDF, 0x1C, 0x46, 0x00, 0x61, 0x03 - .byte 0x7E, 0x02, 0x33, 0x02, 0x09, 0x04, 0x09, 0x04, 0x90, 0x00, 0xB8, 0x29, 0x00, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x3F, 0xBF, 0x1C, 0x45, 0x00, 0x1C, 0x00, 0x21, 0x01, 0x40, 0x00, 0x6E, 0x04, 0x6E, 0x04 - .byte 0x91, 0x00, 0xE1, 0x99, 0x00, 0x44, 0x64, 0xE4, 0x47, 0x13, 0x0F, 0x00, 0x00, 0x00, 0x04, 0x01 - .byte 0xF9, 0x01, 0x97, 0x01, 0x85, 0x04, 0x85, 0x04, 0x92, 0x00, 0xC3, 0xA3, 0x00, 0x02, 0x48, 0xF6 - .byte 0x66, 0x13, 0x0F, 0x00, 0x00, 0x00, 0x05, 0x01, 0xFA, 0x01, 0x98, 0x01, 0x85, 0x04, 0x85, 0x04 - .byte 0x93, 0x00, 0xC4, 0xA3, 0x00, 0x02, 0x48, 0xF6, 0x0F, 0x57, 0xEF, 0x34, 0x2B, 0x00, 0x39, 0x00 - .byte 0x3E, 0x01, 0x58, 0x00, 0x31, 0x04, 0x31, 0x04, 0x94, 0x00, 0xD2, 0x84, 0x00, 0x03, 0xA8, 0xEE - .byte 0x10, 0x57, 0xEF, 0x34, 0x2C, 0x00, 0x3A, 0x00, 0x3F, 0x01, 0x59, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x95, 0x00, 0xD2, 0x84, 0x00, 0x03, 0xB8, 0xEE, 0x06, 0x4D, 0xFF, 0x1C, 0x0D, 0x00, 0x11, 0x00 - .byte 0x16, 0x01, 0x37, 0x00, 0x30, 0x04, 0x30, 0x04, 0x96, 0x00, 0xCC, 0x94, 0x00, 0x03, 0x88, 0xEC - .byte 0x07, 0x4D, 0xFF, 0x1C, 0x0E, 0x00, 0x12, 0x00, 0x17, 0x01, 0x38, 0x00, 0x30, 0x04, 0x30, 0x04 - .byte 0x97, 0x00, 0xCC, 0x94, 0x00, 0x03, 0x88, 0xEC, 0xFF, 0x1B, 0xEF, 0x20, 0x68, 0x00, 0x5A, 0x03 - .byte 0x77, 0x02, 0x2D, 0x02, 0x28, 0x04, 0x28, 0x04, 0x98, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0xFF, 0x20, 0x49, 0x00, 0x5C, 0x03, 0x79, 0x02, 0x2F, 0x02, 0x27, 0x04, 0x27, 0x04 - .byte 0x99, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3D, 0xFF, 0x20, 0x66, 0x00, 0x5E, 0x03 - .byte 0x7B, 0x02, 0x30, 0x02, 0xFC, 0x03, 0xFC, 0x03, 0x9A, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0xEF, 0x20, 0x5F, 0x00, 0x5F, 0x03, 0x7C, 0x02, 0x31, 0x02, 0xFC, 0x03, 0xFC, 0x03 - .byte 0x9B, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0xFB, 0x03, 0xFB, 0x03, 0x00, 0x00, 0x06, 0x30, 0x00, 0x44, 0x64, 0xE0 - .byte 0xFF, 0x19, 0xFF, 0x20, 0x5F, 0x00, 0x60, 0x03, 0x7D, 0x02, 0x32, 0x02, 0xFC, 0x03, 0xFC, 0x03 - .byte 0x9C, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3D, 0xDF, 0x38, 0x7D, 0x00, 0x69, 0x03 - .byte 0x86, 0x02, 0x3A, 0x02, 0xFD, 0x03, 0xFD, 0x03, 0x9D, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3D, 0xCF, 0x38, 0x7F, 0x00, 0x6A, 0x03, 0x87, 0x02, 0x3B, 0x02, 0xFD, 0x03, 0xFD, 0x03 - .byte 0x9E, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0xDF, 0x38, 0x68, 0x00, 0x63, 0x03 - .byte 0x80, 0x02, 0x35, 0x02, 0x28, 0x04, 0x28, 0x04, 0x9F, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0xCF, 0x38, 0x49, 0x00, 0x66, 0x03, 0x83, 0x02, 0x38, 0x02, 0x27, 0x04, 0x27, 0x04 - .byte 0xA0, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xFF, 0x20, 0x4D, 0x00, 0x5D, 0x03 - .byte 0x7A, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xA1, 0x00, 0x80, 0x29, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0xCF, 0x38, 0x4D, 0x00, 0x67, 0x03, 0x84, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xA2, 0x00, 0x81, 0x39, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xEF, 0x34, 0x49, 0x00, 0xE9, 0x00 - .byte 0xDE, 0x01, 0x7D, 0x01, 0x27, 0x04, 0x27, 0x04, 0xA3, 0x00, 0xB4, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0xEF, 0x34, 0x4D, 0x00, 0xEA, 0x00, 0xDF, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xA4, 0x00, 0xB4, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3F, 0xBF, 0x38, 0x45, 0x00, 0xEF, 0x00 - .byte 0xE4, 0x01, 0x82, 0x01, 0x08, 0x04, 0x08, 0x04, 0xA5, 0x00, 0xB6, 0xA9, 0x00, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x3F, 0xAF, 0x14, 0x46, 0x00, 0xF8, 0x00, 0xED, 0x01, 0x8B, 0x01, 0x0C, 0x04, 0x0C, 0x04 - .byte 0xA6, 0x00, 0xBA, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x27, 0x2F, 0x20, 0xE3, 0x00, 0x77, 0x00 - .byte 0x7C, 0x01, 0x87, 0x00, 0x86, 0x04, 0x86, 0x04, 0xA7, 0x00, 0xE3, 0x87, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x13, 0x0F, 0x00, 0x00, 0x00, 0x74, 0x00, 0x79, 0x01, 0x85, 0x00, 0x86, 0x04, 0x86, 0x04 - .byte 0xA8, 0x00, 0xE3, 0x83, 0x00, 0x02, 0x08, 0xF6, 0xFF, 0x19, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0xFF, 0x03, 0xFF, 0x03, 0x00, 0x00, 0x06, 0x79, 0x00, 0x44, 0x64, 0xE0 - .byte 0x45, 0x57, 0x1F, 0x21, 0x63, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 - .byte 0xA9, 0x00, 0xDC, 0x84, 0x16, 0x03, 0x98, 0xEE, 0x12, 0x54, 0xDF, 0x38, 0x2E, 0x00, 0x3C, 0x00 - .byte 0x41, 0x01, 0x5B, 0x00, 0x31, 0x04, 0x31, 0x04, 0xAA, 0x00, 0xD3, 0xB4, 0x00, 0x03, 0xA8, 0xEE - .byte 0x86, 0x46, 0xCF, 0x1D, 0xA2, 0x00, 0x6D, 0x00, 0x72, 0x01, 0x03, 0x00, 0x3C, 0x04, 0x3C, 0x04 - .byte 0xAB, 0x00, 0xDD, 0xB4, 0x01, 0x03, 0xA8, 0xEE, 0x87, 0x46, 0xCF, 0x1D, 0xA3, 0x00, 0x6E, 0x00 - .byte 0x73, 0x01, 0x80, 0x00, 0x3C, 0x04, 0x3C, 0x04, 0xAC, 0x00, 0xDD, 0xB4, 0x01, 0x03, 0xB8, 0xEE - .byte 0xFF, 0x1D, 0xCF, 0x38, 0x69, 0x00, 0x65, 0x03, 0x82, 0x02, 0x37, 0x02, 0x29, 0x04, 0x29, 0x04 - .byte 0xAD, 0x00, 0x81, 0x39, 0x00, 0x54, 0x84, 0xA4, 0x13, 0x54, 0xDF, 0x38, 0x6A, 0x00, 0x3D, 0x00 - .byte 0x42, 0x01, 0x5C, 0x00, 0x31, 0x04, 0x31, 0x04, 0xAE, 0x00, 0xD3, 0xB4, 0x00, 0x03, 0xB8, 0xEE - .byte 0xFF, 0x1B, 0xBF, 0x2C, 0x6B, 0x00, 0x7A, 0x03, 0x97, 0x02, 0x48, 0x02, 0xFE, 0x03, 0xFE, 0x03 - .byte 0xAF, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0xAF, 0x2C, 0x6D, 0x00, 0x8A, 0x03 - .byte 0xA7, 0x02, 0x57, 0x02, 0x2D, 0x04, 0x2D, 0x04, 0xB0, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1B, 0xBF, 0x28, 0x6C, 0x00, 0x80, 0x03, 0x9D, 0x02, 0x4D, 0x02, 0xFE, 0x03, 0xFE, 0x03 - .byte 0xB1, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0xBF, 0x2C, 0x49, 0x00, 0x77, 0x03 - .byte 0x94, 0x02, 0x47, 0x02, 0x27, 0x04, 0x27, 0x04, 0xB2, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x24, 0xAF, 0x28, 0x1D, 0x00, 0x1E, 0x00, 0x23, 0x01, 0x42, 0x00, 0xFE, 0x03, 0xFE, 0x03 - .byte 0xB3, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x24, 0xAF, 0x28, 0x1E, 0x00, 0x1F, 0x00 - .byte 0x24, 0x01, 0x43, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0xB4, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x24, 0xAF, 0x28, 0x1F, 0x00, 0x20, 0x00, 0x25, 0x01, 0x44, 0x00, 0xFE, 0x03, 0xFE, 0x03 - .byte 0xB5, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x24, 0xAF, 0x28, 0x20, 0x00, 0x21, 0x00 - .byte 0x26, 0x01, 0x45, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0xB6, 0x00, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x24, 0xAF, 0x28, 0x6E, 0x00, 0x22, 0x00, 0x27, 0x01, 0x46, 0x00, 0xFE, 0x03, 0xFE, 0x03 - .byte 0xB7, 0x00, 0xD0, 0x99, 0x00, 0x04, 0x64, 0xE4, 0xFF, 0x3E, 0xBF, 0x2C, 0x71, 0x00, 0x83, 0x03 - .byte 0xA0, 0x02, 0x50, 0x02, 0x28, 0x04, 0x28, 0x04, 0xB8, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x72, 0x00, 0x84, 0x03, 0xA1, 0x02, 0x51, 0x02, 0x28, 0x04, 0x28, 0x04 - .byte 0xB9, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3E, 0xBF, 0x2C, 0x73, 0x00, 0x85, 0x03 - .byte 0xA2, 0x02, 0x52, 0x02, 0x28, 0x04, 0x28, 0x04, 0xBA, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x74, 0x00, 0x86, 0x03, 0xA3, 0x02, 0x53, 0x02, 0x28, 0x04, 0x28, 0x04 - .byte 0xBB, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3E, 0xBF, 0x2C, 0x75, 0x00, 0x87, 0x03 - .byte 0xA4, 0x02, 0x54, 0x02, 0x28, 0x04, 0x28, 0x04, 0xBC, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x76, 0x00, 0x88, 0x03, 0xA5, 0x02, 0x55, 0x02, 0x28, 0x04, 0x28, 0x04 - .byte 0xBD, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x30, 0xAF, 0x28, 0x6F, 0x00, 0x7D, 0x03 - .byte 0x9A, 0x02, 0x4B, 0x02, 0xFE, 0x03, 0xFE, 0x03, 0xBE, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x30, 0xAF, 0x28, 0x70, 0x00, 0x7E, 0x03, 0x9B, 0x02, 0x4C, 0x02, 0xFE, 0x03, 0xFE, 0x03 - .byte 0xBF, 0x00, 0x83, 0x59, 0x00, 0x44, 0x60, 0xE4, 0xFF, 0x3E, 0xAF, 0x2C, 0x3A, 0x00, 0x5E, 0x00 - .byte 0x63, 0x01, 0x75, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0xC0, 0x00, 0xD7, 0x59, 0x00, 0x04, 0x64, 0xE4 - .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x3B, 0x00, 0x5F, 0x00, 0x64, 0x01, 0x76, 0x00, 0xFE, 0x03, 0xFE, 0x03 - .byte 0xC1, 0x00, 0x83, 0x59, 0x00, 0x44, 0x84, 0xE4, 0xFF, 0x3E, 0xBF, 0x2C, 0x3C, 0x00, 0x60, 0x00 - .byte 0x65, 0x01, 0x77, 0x00, 0x31, 0x04, 0x31, 0x04, 0xC2, 0x00, 0x83, 0x59, 0x00, 0x44, 0x84, 0xE4 - .byte 0xFF, 0x3E, 0xBF, 0x2C, 0x3D, 0x00, 0x61, 0x00, 0x66, 0x01, 0x78, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0xC3, 0x00, 0x83, 0x59, 0x00, 0x44, 0x84, 0xE4, 0xFF, 0x19, 0xAF, 0x2C, 0x61, 0x00, 0x7C, 0x03 - .byte 0x99, 0x02, 0x4A, 0x02, 0xFE, 0x03, 0xFE, 0x03, 0xC4, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0xBF, 0x2C, 0x60, 0x00, 0x7B, 0x03, 0x98, 0x02, 0x49, 0x02, 0xFE, 0x03, 0xFE, 0x03 - .byte 0xC5, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0xBF, 0x28, 0x60, 0x00, 0x81, 0x03 - .byte 0x9E, 0x02, 0x4E, 0x02, 0xFE, 0x03, 0xFE, 0x03, 0xC6, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2A, 0xBF, 0x28, 0x8C, 0x00, 0x82, 0x03, 0x9F, 0x02, 0x4F, 0x02, 0xFE, 0x03, 0xFE, 0x03 - .byte 0xC7, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2D, 0x9F, 0x28, 0xED, 0x00, 0x8B, 0x03 - .byte 0xA8, 0x02, 0x58, 0x02, 0x82, 0x04, 0x82, 0x04, 0xC8, 0x00, 0x76, 0x59, 0x00, 0x44, 0x60, 0xE4 - .byte 0xFF, 0x3F, 0x0F, 0x00, 0x77, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03 - .byte 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3F, 0x0F, 0x00, 0x78, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3F, 0x0F, 0x00, 0x79, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03 - .byte 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3F, 0x0F, 0x00, 0x7A, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3F, 0x0F, 0x00, 0x7B, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03 - .byte 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x3F, 0x0F, 0x00, 0x7C, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0x00, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2A, 0x8F, 0x14, 0x80, 0x00, 0xFA, 0x00, 0xEF, 0x01, 0x8D, 0x01, 0x0C, 0x04, 0x0C, 0x04 - .byte 0xC9, 0x00, 0xBB, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x8F, 0x14, 0x81, 0x00, 0xFB, 0x00 - .byte 0xF0, 0x01, 0x8E, 0x01, 0x0C, 0x04, 0x0C, 0x04, 0xCA, 0x00, 0xBB, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3D, 0xCF, 0x10, 0x82, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0xFF, 0x03, 0xFF, 0x03 - .byte 0xCB, 0x00, 0x85, 0x79, 0x00, 0x44, 0x64, 0xE4, 0x1D, 0x4E, 0xBF, 0x10, 0x1A, 0x00, 0x18, 0x00 - .byte 0x1D, 0x01, 0x3D, 0x00, 0x34, 0x04, 0x34, 0x04, 0xCC, 0x00, 0xCE, 0xA4, 0x00, 0x03, 0x88, 0xEC - .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x32, 0x04, 0x32, 0x04 - .byte 0x00, 0x00, 0xD1, 0x94, 0x00, 0x02, 0x08, 0xE0, 0xFF, 0x1A, 0xBF, 0x2C, 0x4D, 0x00, 0x78, 0x03 - .byte 0x95, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xCD, 0x00, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2F, 0x9F, 0x20, 0x30, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 - .byte 0xCE, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4, 0xFF, 0x4A, 0x9F, 0x20, 0x31, 0x00, 0x3F, 0x00 - .byte 0x44, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0xCF, 0x00, 0xD4, 0x99, 0x00, 0x33, 0x24, 0xF4 - .byte 0xFF, 0x2F, 0x9F, 0x20, 0x32, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 - .byte 0xD0, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4, 0xFF, 0x2F, 0x9F, 0x20, 0x33, 0x00, 0x40, 0x00 - .byte 0x45, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0xD1, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4 - .byte 0xFF, 0x2F, 0x9F, 0x20, 0x34, 0x00, 0x41, 0x00, 0x46, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 - .byte 0xD2, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4, 0xFF, 0x59, 0x9F, 0x20, 0x83, 0x00, 0x42, 0x00 - .byte 0x47, 0x01, 0x5E, 0x00, 0x36, 0x04, 0x36, 0x04, 0xD3, 0x00, 0xD4, 0x99, 0x00, 0x03, 0x84, 0xE4 - .byte 0xFF, 0x1A, 0x8F, 0x20, 0x49, 0x00, 0x92, 0x03, 0xAF, 0x02, 0x5F, 0x02, 0x27, 0x04, 0x27, 0x04 - .byte 0xD4, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0x8F, 0x20, 0x68, 0x00, 0x90, 0x03 - .byte 0xAD, 0x02, 0x5D, 0x02, 0x28, 0x04, 0x28, 0x04, 0xD5, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x8F, 0x1C, 0x61, 0x00, 0x94, 0x03, 0xB1, 0x02, 0x60, 0x02, 0x00, 0x04, 0x00, 0x04 - .byte 0xD6, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x9F, 0x1C, 0x61, 0x00, 0x95, 0x03 - .byte 0xB2, 0x02, 0x61, 0x02, 0x00, 0x04, 0x00, 0x04, 0xD7, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x8F, 0x1C, 0x61, 0x00, 0x96, 0x03, 0xB3, 0x02, 0x62, 0x02, 0x00, 0x04, 0x00, 0x04 - .byte 0xD8, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x8F, 0x20, 0x88, 0x00, 0x97, 0x03 - .byte 0xB4, 0x02, 0x63, 0x02, 0x00, 0x04, 0x00, 0x04, 0xD9, 0x00, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x5F, 0x2C, 0x5F, 0x00, 0x70, 0x03, 0x8D, 0x02, 0x40, 0x02, 0x01, 0x04, 0x01, 0x04 - .byte 0xDA, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0x5F, 0x2C, 0x8B, 0x00, 0x71, 0x03 - .byte 0x8E, 0x02, 0x41, 0x02, 0x01, 0x04, 0x01, 0x04, 0xDB, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x5F, 0x2C, 0x61, 0x00, 0x72, 0x03, 0x8F, 0x02, 0x42, 0x02, 0x01, 0x04, 0x01, 0x04 - .byte 0xDC, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x5F, 0x2C, 0x5F, 0x00, 0x73, 0x03 - .byte 0x90, 0x02, 0x43, 0x02, 0x01, 0x04, 0x01, 0x04, 0xDD, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x5F, 0x2C, 0x49, 0x00, 0x6E, 0x03, 0x8B, 0x02, 0x3F, 0x02, 0x27, 0x04, 0x27, 0x04 - .byte 0xDE, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4, 0x3D, 0x4C, 0x5F, 0x11, 0x85, 0x00, 0x64, 0x00 - .byte 0x69, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04, 0xDF, 0x00, 0xD9, 0x84, 0x00, 0x03, 0xA8, 0xEE - .byte 0x3E, 0x4C, 0x5F, 0x11, 0x86, 0x00, 0x65, 0x00, 0x6A, 0x01, 0x7B, 0x00, 0x38, 0x04, 0x38, 0x04 - .byte 0xE0, 0x00, 0xD9, 0x84, 0x00, 0x03, 0xB8, 0xEE, 0x3F, 0x4C, 0x5F, 0x11, 0x87, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04, 0xE1, 0x00, 0xD9, 0x84, 0x00, 0x03, 0xB8, 0xEE - .byte 0xFF, 0x3F, 0x8F, 0x20, 0x89, 0x00, 0x98, 0x00, 0x92, 0x01, 0xFF, 0x00, 0x00, 0x04, 0x00, 0x04 - .byte 0xE2, 0x00, 0x84, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x5F, 0x2C, 0x4D, 0x00, 0x6F, 0x03 - .byte 0x8C, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xE3, 0x00, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4 - .byte 0x2C, 0x55, 0x7F, 0x2C, 0x8E, 0x00, 0x66, 0x00, 0x6B, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0xE4, 0x00, 0xDA, 0xB4, 0x16, 0x03, 0xA8, 0xEE, 0x2E, 0x55, 0x7F, 0x2C, 0x8F, 0x00, 0x67, 0x00 - .byte 0x6C, 0x01, 0x7C, 0x00, 0x31, 0x04, 0x31, 0x04, 0xE5, 0x00, 0xDA, 0xB4, 0x00, 0x03, 0xB8, 0xAE - .byte 0xFF, 0x62, 0x7F, 0x2C, 0x90, 0x00, 0x68, 0x00, 0x6D, 0x01, 0x7D, 0x00, 0xE9, 0x03, 0xE9, 0x03 - .byte 0xE6, 0x00, 0xDA, 0xB4, 0x00, 0xC3, 0xB0, 0x0C, 0xFF, 0x3F, 0x0F, 0x11, 0x45, 0x00, 0x00, 0x01 - .byte 0xF5, 0x01, 0x93, 0x01, 0x0D, 0x04, 0x0D, 0x04, 0xE7, 0x00, 0xBF, 0xA9, 0x00, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x1A, 0x0F, 0x15, 0x49, 0x00, 0xA7, 0x03, 0xC4, 0x02, 0x70, 0x02, 0x27, 0x04, 0x27, 0x04 - .byte 0xE8, 0x00, 0x86, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x40, 0x0F, 0x15, 0x35, 0x00, 0x59, 0x00 - .byte 0x5E, 0x01, 0x70, 0x00, 0x37, 0x04, 0x37, 0x04, 0xE9, 0x00, 0xD5, 0xA9, 0x00, 0x43, 0x64, 0xA4 - .byte 0xFF, 0x40, 0x0F, 0x15, 0x36, 0x00, 0x5A, 0x00, 0x5F, 0x01, 0x71, 0x00, 0x37, 0x04, 0x37, 0x04 - .byte 0xEA, 0x00, 0xD5, 0xA9, 0x00, 0x43, 0x64, 0xA4, 0xFF, 0x40, 0x0F, 0x15, 0x37, 0x00, 0x5B, 0x00 - .byte 0x60, 0x01, 0x72, 0x00, 0x37, 0x04, 0x37, 0x04, 0xEB, 0x00, 0xD5, 0xA9, 0x00, 0x43, 0x64, 0xA4 - .byte 0x36, 0x4F, 0xEF, 0x14, 0x3F, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0xEC, 0x00, 0xD8, 0x84, 0x00, 0x03, 0xA8, 0xEE, 0x37, 0x4F, 0xEF, 0x14, 0x40, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0xED, 0x00, 0xD8, 0x84, 0x00, 0x03, 0xA8, 0xEE - .byte 0x38, 0x4F, 0xEF, 0x14, 0x41, 0x00, 0x62, 0x00, 0x67, 0x01, 0x79, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0xEE, 0x00, 0xD8, 0x84, 0x00, 0x03, 0xA8, 0xEE, 0x42, 0x56, 0x4F, 0x11, 0x92, 0x00, 0x6F, 0x00 - .byte 0x74, 0x01, 0x81, 0x00, 0x39, 0x04, 0x39, 0x04, 0xEF, 0x00, 0xDE, 0xB4, 0x00, 0x03, 0xA8, 0xEE - .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 - .byte 0x00, 0x00, 0x51, 0xA2, 0x00, 0x01, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4 - .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x28, 0x04, 0x28, 0x04, 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4 - .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 - .byte 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4 - .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 - .byte 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4 - .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0x00, 0x00, 0x51, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x6F, 0xA2, 0x00, 0x44, 0x00, 0xE4 - .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 - .byte 0x00, 0x00, 0x6F, 0xA9, 0x00, 0x44, 0x00, 0xE4, 0xFF, 0x38, 0x7F, 0x1C, 0xE8, 0x00, 0x45, 0x00 - .byte 0x4A, 0x01, 0x60, 0x00, 0x2F, 0x04, 0x2F, 0x04, 0xF0, 0x00, 0x50, 0xA9, 0x00, 0x04, 0x61, 0xE4 - .byte 0xFF, 0x2C, 0x7F, 0x1C, 0x06, 0x01, 0x46, 0x00, 0x4B, 0x01, 0x03, 0x00, 0x2F, 0x04, 0x2F, 0x04 - .byte 0xF1, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x04, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x00 - .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 - .byte 0x00, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x00, 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x00, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x00 - .byte 0xFF, 0x02, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2E, 0x04, 0x2E, 0x04 - .byte 0x00, 0x00, 0x50, 0xA9, 0x00, 0x44, 0x60, 0x00, 0xFF, 0x26, 0x7F, 0x1C, 0x07, 0x01, 0x4B, 0x00 - .byte 0x50, 0x01, 0x63, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0xF2, 0x00, 0x50, 0xA9, 0x00, 0x04, 0x60, 0xE4 - .byte 0xFF, 0x5C, 0x7F, 0x1C, 0xE6, 0x00, 0x4C, 0x00, 0x51, 0x01, 0x64, 0x00, 0x2E, 0x04, 0x2E, 0x04 - .byte 0xF3, 0x00, 0x70, 0x91, 0x00, 0x81, 0x60, 0xF6, 0xFF, 0x2E, 0x7F, 0x1C, 0xE7, 0x00, 0x50, 0x00 - .byte 0x55, 0x01, 0x67, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0xF4, 0x00, 0x70, 0x99, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x38, 0x0F, 0x00, 0xE8, 0x00, 0x53, 0x00, 0x58, 0x01, 0x03, 0x00, 0x2F, 0x04, 0x2F, 0x04 - .byte 0xF5, 0x00, 0x50, 0xA9, 0x00, 0x04, 0x60, 0xE0, 0xFF, 0x39, 0x7F, 0x1C, 0xE9, 0x00, 0x54, 0x00 - .byte 0x59, 0x01, 0x6B, 0x00, 0x77, 0x04, 0x77, 0x04, 0xF6, 0x00, 0x71, 0xA9, 0x00, 0x04, 0x61, 0x64 - .byte 0xFF, 0x3A, 0x7F, 0x1C, 0xEA, 0x00, 0x55, 0x00, 0x5A, 0x01, 0x6C, 0x00, 0x78, 0x04, 0x78, 0x04 - .byte 0xF7, 0x00, 0x74, 0xA9, 0x00, 0x04, 0x61, 0x64, 0xFF, 0x3B, 0x7F, 0x1C, 0xEB, 0x00, 0x56, 0x00 - .byte 0x5B, 0x01, 0x6D, 0x00, 0x7A, 0x04, 0x7A, 0x04, 0xF8, 0x00, 0x72, 0xA9, 0x00, 0x04, 0x61, 0x64 - .byte 0xFF, 0x3C, 0x7F, 0x1C, 0xEC, 0x00, 0x57, 0x00, 0x5C, 0x01, 0x6E, 0x00, 0x79, 0x04, 0x79, 0x04 - .byte 0xF9, 0x00, 0x73, 0xA9, 0x1A, 0x04, 0x61, 0x64, 0x52, 0x46, 0x5F, 0x28, 0x98, 0x00, 0x79, 0x00 - .byte 0x7E, 0x01, 0x88, 0x00, 0x09, 0x04, 0x09, 0x04, 0xFA, 0x00, 0xEA, 0xA4, 0x00, 0x03, 0x98, 0xE6 - .byte 0xFF, 0x5A, 0xAF, 0x18, 0x99, 0x00, 0x7A, 0x00, 0x7F, 0x01, 0x89, 0x00, 0x09, 0x04, 0x09, 0x04 - .byte 0xFB, 0x00, 0xE1, 0xD1, 0x00, 0x01, 0x28, 0xF6, 0xFF, 0x25, 0xAF, 0x18, 0x9A, 0x00, 0x7B, 0x00 - .byte 0x80, 0x01, 0x8A, 0x00, 0x6E, 0x04, 0x6E, 0x04, 0xFC, 0x00, 0xE1, 0xD9, 0x00, 0x44, 0x74, 0xE4 - .byte 0xFF, 0x25, 0xAF, 0x18, 0x9B, 0x00, 0x7C, 0x00, 0x81, 0x01, 0x8B, 0x00, 0x6E, 0x04, 0x6E, 0x04 - .byte 0xFD, 0x00, 0xE1, 0xD9, 0x00, 0x74, 0x64, 0xE4, 0xFF, 0x25, 0xAF, 0x18, 0x9C, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x6E, 0x04, 0x6E, 0x04, 0xFE, 0x00, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x25, 0xAF, 0x18, 0x9D, 0x00, 0x7D, 0x00, 0x82, 0x01, 0x8C, 0x00, 0x6E, 0x04, 0x6E, 0x04 - .byte 0xFF, 0x00, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x25, 0xAF, 0x18, 0x9E, 0x00, 0x7E, 0x00 - .byte 0x83, 0x01, 0x8D, 0x00, 0x6E, 0x04, 0x6E, 0x04, 0x00, 0x01, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x25, 0xAF, 0x18, 0x9F, 0x00, 0x7F, 0x00, 0x84, 0x01, 0x8E, 0x00, 0x6E, 0x04, 0x6E, 0x04 - .byte 0x01, 0x01, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x25, 0xAF, 0x18, 0xA0, 0x00, 0x80, 0x00 - .byte 0x85, 0x01, 0x8F, 0x00, 0x75, 0x04, 0x75, 0x04, 0x02, 0x01, 0xE1, 0xD9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2A, 0x4F, 0x11, 0x95, 0x00, 0x70, 0x00, 0x75, 0x01, 0x82, 0x00, 0x39, 0x04, 0x39, 0x04 - .byte 0x03, 0x01, 0xDE, 0xB9, 0x00, 0x44, 0x84, 0xE4, 0xFF, 0x19, 0x4F, 0x15, 0x5F, 0x00, 0xB2, 0x03 - .byte 0xCF, 0x02, 0x79, 0x02, 0x03, 0x04, 0x03, 0x04, 0x04, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x5F, 0x15, 0x5F, 0x00, 0xB3, 0x03, 0xD0, 0x02, 0x7A, 0x02, 0x03, 0x04, 0x03, 0x04 - .byte 0x05, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x4F, 0x15, 0x5F, 0x00, 0xB4, 0x03 - .byte 0xD1, 0x02, 0x7B, 0x02, 0x03, 0x04, 0x03, 0x04, 0x06, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1B, 0x4F, 0x15, 0x68, 0x00, 0xAE, 0x03, 0xCB, 0x02, 0x76, 0x02, 0x28, 0x04, 0x28, 0x04 - .byte 0x07, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x5F, 0x15, 0x49, 0x00, 0xB0, 0x03 - .byte 0xCD, 0x02, 0x78, 0x02, 0x27, 0x04, 0x27, 0x04, 0x08, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0xFF, 0x04, 0x42, 0x00, 0xAB, 0x03, 0xC8, 0x02, 0x73, 0x02, 0x0D, 0x04, 0x0D, 0x04 - .byte 0x09, 0x01, 0x87, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x0F, 0x09, 0x5F, 0x00, 0xAC, 0x03 - .byte 0xC9, 0x02, 0x74, 0x02, 0x0D, 0x04, 0x0D, 0x04, 0x0A, 0x01, 0x87, 0x99, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0xCF, 0x29, 0x42, 0x00, 0xDB, 0x00, 0xD0, 0x01, 0x6E, 0x01, 0x26, 0x04, 0x26, 0x04 - .byte 0x0B, 0x01, 0xAE, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0xCF, 0x2D, 0x93, 0x00, 0xDC, 0x00 - .byte 0xD1, 0x01, 0x6F, 0x01, 0x26, 0x04, 0x26, 0x04, 0x0C, 0x01, 0xAE, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x46, 0x7F, 0x31, 0xA4, 0x00, 0x72, 0x00, 0x77, 0x01, 0x83, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x0D, 0x01, 0xDF, 0xB4, 0x01, 0x03, 0xA8, 0xAE, 0xFF, 0x3F, 0xCF, 0x21, 0x96, 0x00, 0xD5, 0x00 - .byte 0xCA, 0x01, 0x69, 0x01, 0x26, 0x04, 0x26, 0x04, 0x0E, 0x01, 0xAE, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x1A, 0xCF, 0x19, 0x94, 0x00, 0x33, 0x03, 0x50, 0x02, 0x0A, 0x02, 0x3D, 0x04, 0x3D, 0x04 - .byte 0x0F, 0x01, 0x0F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x29, 0xCF, 0x19, 0xA5, 0x00, 0x34, 0x03 - .byte 0x51, 0x02, 0x0B, 0x02, 0x3D, 0x04, 0x3D, 0x04, 0x10, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0xC4, 0x84 - .byte 0xFF, 0x29, 0xCF, 0x19, 0xA6, 0x00, 0x35, 0x03, 0x52, 0x02, 0x0C, 0x02, 0x3D, 0x04, 0x3D, 0x04 - .byte 0x11, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0xD4, 0x84, 0xFF, 0x29, 0xCF, 0x19, 0xA7, 0x00, 0x36, 0x03 - .byte 0x53, 0x02, 0x0D, 0x02, 0x3D, 0x04, 0x3D, 0x04, 0x12, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0xE4, 0x84 - .byte 0xFF, 0x29, 0xCF, 0x19, 0xA8, 0x00, 0x37, 0x03, 0x54, 0x02, 0x0E, 0x02, 0x3D, 0x04, 0x3D, 0x04 - .byte 0x13, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0xF4, 0x84, 0xFF, 0x41, 0xCF, 0x19, 0xA9, 0x00, 0x38, 0x03 - .byte 0x55, 0x02, 0x0F, 0x02, 0x3D, 0x04, 0x3D, 0x04, 0x14, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0x04, 0x85 - .byte 0xFF, 0x41, 0xCF, 0x19, 0xAA, 0x00, 0x39, 0x03, 0x56, 0x02, 0x10, 0x02, 0x3D, 0x04, 0x3D, 0x04 - .byte 0x15, 0x01, 0x0F, 0xC9, 0x01, 0x04, 0x60, 0x84, 0xFF, 0x2A, 0x9F, 0x39, 0xAB, 0x00, 0x9C, 0x00 - .byte 0x96, 0x01, 0x03, 0x01, 0x48, 0x04, 0x48, 0x04, 0x16, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2A, 0x9F, 0x39, 0xAC, 0x00, 0x9D, 0x00, 0x97, 0x01, 0x04, 0x01, 0x48, 0x04, 0x48, 0x04 - .byte 0x17, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x9F, 0x39, 0xAD, 0x00, 0x9E, 0x00 - .byte 0x98, 0x01, 0x05, 0x01, 0x48, 0x04, 0x48, 0x04, 0x18, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2A, 0x9F, 0x39, 0xAE, 0x00, 0x9F, 0x00, 0x99, 0x01, 0x03, 0x00, 0x48, 0x04, 0x48, 0x04 - .byte 0x19, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x9F, 0x39, 0xAF, 0x00, 0xA0, 0x00 - .byte 0x9A, 0x01, 0x03, 0x00, 0x48, 0x04, 0x48, 0x04, 0x1A, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x48, 0xDF, 0x20, 0x22, 0x00, 0x27, 0x00, 0x2C, 0x01, 0x4A, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x1B, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x20, 0x23, 0x00, 0x28, 0x00 - .byte 0x2D, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x1C, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 - .byte 0xFF, 0x48, 0xDF, 0x24, 0x22, 0x00, 0x29, 0x00, 0x2E, 0x01, 0x4B, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x1D, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0x0A, 0x69, 0xDF, 0x20, 0x25, 0x00, 0x2A, 0x00 - .byte 0x2F, 0x01, 0x4C, 0x00, 0x32, 0x04, 0x32, 0x04, 0x1E, 0x01, 0xD1, 0x94, 0x00, 0x03, 0x88, 0xEC - .byte 0xFF, 0x48, 0xDF, 0x24, 0x22, 0x00, 0x2B, 0x00, 0x30, 0x01, 0x4D, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x1F, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x24, 0x27, 0x00, 0x2C, 0x00 - .byte 0x31, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x20, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 - .byte 0xFF, 0x48, 0xDF, 0x24, 0x22, 0x00, 0x2D, 0x00, 0x32, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x21, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x24, 0x29, 0x00, 0x2E, 0x00 - .byte 0x33, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04, 0x22, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 - .byte 0xFF, 0x48, 0xDF, 0x24, 0xB4, 0x00, 0x2F, 0x00, 0x34, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x23, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x3D, 0xDF, 0x20, 0x11, 0x01, 0x26, 0x00 - .byte 0x2B, 0x01, 0x49, 0x00, 0x31, 0x04, 0x31, 0x04, 0x24, 0x01, 0xD1, 0x99, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x7F, 0x31, 0x42, 0x00, 0xDE, 0x00, 0xD3, 0x01, 0x72, 0x01, 0x26, 0x04, 0x26, 0x04 - .byte 0x25, 0x01, 0xAF, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x69, 0xDF, 0x20, 0xB5, 0x00, 0x30, 0x00 - .byte 0x35, 0x01, 0x4F, 0x00, 0x31, 0x04, 0x31, 0x04, 0x26, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 - .byte 0xFF, 0x48, 0xDF, 0x20, 0xB6, 0x00, 0x31, 0x00, 0x36, 0x01, 0x50, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x27, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x24, 0xB6, 0x00, 0x32, 0x00 - .byte 0x37, 0x01, 0x51, 0x00, 0x31, 0x04, 0x31, 0x04, 0x28, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 - .byte 0xFF, 0x48, 0xDF, 0x24, 0xB6, 0x00, 0x33, 0x00, 0x38, 0x01, 0x52, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x29, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4, 0xFF, 0x48, 0xDF, 0x24, 0xB6, 0x00, 0x34, 0x00 - .byte 0x39, 0x01, 0x53, 0x00, 0x31, 0x04, 0x31, 0x04, 0x2A, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 - .byte 0xFF, 0x2A, 0x9F, 0x39, 0xB0, 0x00, 0xA1, 0x00, 0x9B, 0x01, 0x06, 0x01, 0x48, 0x04, 0x48, 0x04 - .byte 0x2B, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0x9F, 0x39, 0xB1, 0x00, 0xA2, 0x00 - .byte 0x9C, 0x01, 0x07, 0x01, 0x48, 0x04, 0x48, 0x04, 0x2C, 0x01, 0xE2, 0xA9, 0x00, 0x44, 0x84, 0xE4 - .byte 0xFF, 0x5E, 0x8F, 0x20, 0xB2, 0x00, 0x99, 0x00, 0x93, 0x01, 0x00, 0x01, 0x00, 0x04, 0x00, 0x04 - .byte 0x2D, 0x01, 0x84, 0xA1, 0x00, 0x01, 0x28, 0xF4, 0xFF, 0x1B, 0xBF, 0x30, 0xB3, 0x00, 0xEE, 0x00 - .byte 0xE3, 0x01, 0x81, 0x01, 0x08, 0x04, 0x08, 0x04, 0x2E, 0x01, 0xB6, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0x1E, 0x4D, 0xCF, 0x10, 0x10, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04 - .byte 0x2F, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x1F, 0x4D, 0xCF, 0x10, 0x11, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x30, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC - .byte 0x20, 0x4D, 0xCF, 0x10, 0x12, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04 - .byte 0x31, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x21, 0x4D, 0xCF, 0x10, 0x13, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x32, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC - .byte 0x22, 0x4D, 0xCF, 0x10, 0x14, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04 - .byte 0x33, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x23, 0x4D, 0xCF, 0x10, 0x15, 0x00, 0x14, 0x00 - .byte 0x19, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x34, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC - .byte 0x24, 0x4D, 0xCF, 0x10, 0x16, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04 - .byte 0x35, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x25, 0x4D, 0xCF, 0x10, 0x17, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x36, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xEC - .byte 0xFF, 0x5B, 0xCF, 0x10, 0x18, 0x00, 0x15, 0x00, 0x1A, 0x01, 0x3A, 0x00, 0xE9, 0x03, 0xE9, 0x03 - .byte 0x37, 0x01, 0xCD, 0x94, 0x00, 0xD3, 0x20, 0x34, 0x54, 0x4D, 0xCF, 0x10, 0xB7, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x35, 0x04, 0x35, 0x04, 0x38, 0x01, 0xCD, 0x94, 0x00, 0x03, 0x88, 0xAC - .byte 0x53, 0x46, 0x4F, 0x30, 0xB8, 0x00, 0x81, 0x00, 0x86, 0x01, 0x90, 0x00, 0x85, 0x04, 0x85, 0x04 - .byte 0x39, 0x01, 0xE4, 0xB4, 0x00, 0x03, 0x98, 0xEE, 0xFF, 0x4B, 0x0F, 0x00, 0xC5, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 - .byte 0xFF, 0x4B, 0x0F, 0x00, 0xC6, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 - .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xC7, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 - .byte 0xFF, 0x4B, 0x0F, 0x00, 0xC8, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 - .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xC9, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 - .byte 0xFF, 0x4B, 0x0F, 0x00, 0xCA, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 - .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xCB, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 - .byte 0xFF, 0x4B, 0x0F, 0x00, 0xCC, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 - .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xCD, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 - .byte 0xFF, 0x4B, 0x0F, 0x00, 0xCE, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 - .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xCF, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 - .byte 0xFF, 0x4B, 0x0F, 0x00, 0xD0, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 - .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0xFF, 0x4B, 0x0F, 0x00, 0xD1, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04, 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00 - .byte 0xFF, 0x4B, 0x0F, 0x00, 0xD2, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0A, 0x04, 0x0A, 0x04 - .byte 0x00, 0x00, 0xCA, 0x87, 0x00, 0x43, 0x08, 0x00, 0x5B, 0x4B, 0x0F, 0x00, 0xD4, 0x00, 0x78, 0x00 - .byte 0x7D, 0x01, 0x03, 0x00, 0x87, 0x04, 0x87, 0x04, 0x3A, 0x01, 0xCA, 0x89, 0x00, 0x02, 0x08, 0xA6 - .byte 0xFF, 0x1A, 0x8F, 0x26, 0x49, 0x00, 0x0B, 0x03, 0x28, 0x02, 0xE6, 0x01, 0x27, 0x04, 0x27, 0x04 - .byte 0x3B, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x8F, 0x26, 0x4D, 0x00, 0x0C, 0x03 - .byte 0x29, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x3C, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1B, 0x8F, 0x26, 0x68, 0x00, 0x09, 0x03, 0x26, 0x02, 0xE4, 0x01, 0x28, 0x04, 0x28, 0x04 - .byte 0x3D, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x8F, 0x26, 0x5F, 0x00, 0x0D, 0x03 - .byte 0x2A, 0x02, 0xE7, 0x01, 0x0E, 0x04, 0x0E, 0x04, 0x3E, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x28, 0x8F, 0x26, 0xB9, 0x00, 0x0E, 0x03, 0x2B, 0x02, 0xE8, 0x01, 0x0E, 0x04, 0x0E, 0x04 - .byte 0x3F, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x8F, 0x26, 0x5F, 0x00, 0x0F, 0x03 - .byte 0x2C, 0x02, 0xE9, 0x01, 0x0E, 0x04, 0x0E, 0x04, 0x40, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x8F, 0x26, 0x5F, 0x00, 0x10, 0x03, 0x2D, 0x02, 0xEA, 0x01, 0x0E, 0x04, 0x0E, 0x04 - .byte 0x41, 0x01, 0x8F, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x31, 0x8F, 0x26, 0xFF, 0x00, 0x0A, 0x03 - .byte 0x27, 0x02, 0xE5, 0x01, 0x29, 0x04, 0x29, 0x04, 0x42, 0x01, 0x8F, 0xC9, 0x01, 0x94, 0x64, 0xA4 - .byte 0xFF, 0x3F, 0x7F, 0x20, 0x45, 0x00, 0xC3, 0x03, 0xDC, 0x02, 0xE9, 0x02, 0x0A, 0x04, 0x0A, 0x04 - .byte 0x43, 0x01, 0xBC, 0xA9, 0x00, 0x44, 0x64, 0xE6, 0xFF, 0x1A, 0x8F, 0x20, 0x4D, 0x00, 0x93, 0x03 - .byte 0xB0, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x44, 0x01, 0x84, 0x69, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x0F, 0x15, 0x4D, 0x00, 0xA8, 0x03, 0xC5, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0x45, 0x01, 0x86, 0xA9, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x5F, 0x15, 0x4D, 0x00, 0xB1, 0x03 - .byte 0xCE, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0x46, 0x01, 0x88, 0xA9, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x27, 0x5F, 0x1E, 0xD7, 0x00, 0x15, 0x03, 0x32, 0x02, 0xEE, 0x01, 0x28, 0x04, 0x28, 0x04 - .byte 0x47, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x5F, 0x1E, 0xD8, 0x00, 0x16, 0x03 - .byte 0x33, 0x02, 0xEF, 0x01, 0x28, 0x04, 0x28, 0x04, 0x48, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x27, 0x5F, 0x1E, 0xD9, 0x00, 0x17, 0x03, 0x34, 0x02, 0xF0, 0x01, 0x28, 0x04, 0x28, 0x04 - .byte 0x49, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x5F, 0x1E, 0xDA, 0x00, 0x18, 0x03 - .byte 0x35, 0x02, 0xF1, 0x01, 0x28, 0x04, 0x28, 0x04, 0x4A, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x27, 0x5F, 0x1E, 0xDB, 0x00, 0x19, 0x03, 0x36, 0x02, 0xF2, 0x01, 0x28, 0x04, 0x28, 0x04 - .byte 0x4B, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x5F, 0x1E, 0xDC, 0x00, 0x1A, 0x03 - .byte 0x37, 0x02, 0xF3, 0x01, 0x28, 0x04, 0x28, 0x04, 0x4C, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x27, 0x6F, 0x1E, 0xDD, 0x00, 0x1C, 0x03, 0x39, 0x02, 0xF5, 0x01, 0x12, 0x04, 0x12, 0x04 - .byte 0x4D, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x6F, 0x1E, 0xDE, 0x00, 0x1D, 0x03 - .byte 0x3A, 0x02, 0xF6, 0x01, 0x12, 0x04, 0x12, 0x04, 0x4E, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x27, 0x6F, 0x1E, 0xDF, 0x00, 0x1E, 0x03, 0x3B, 0x02, 0xF7, 0x01, 0x12, 0x04, 0x12, 0x04 - .byte 0x4F, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x5F, 0x6F, 0x1E, 0xE0, 0x00, 0x1F, 0x03 - .byte 0x3C, 0x02, 0xF8, 0x01, 0x12, 0x04, 0x12, 0x04, 0x50, 0x01, 0x90, 0xC9, 0x01, 0x31, 0x64, 0xF4 - .byte 0xFF, 0x28, 0x6F, 0x1E, 0xE1, 0x00, 0x20, 0x03, 0x3D, 0x02, 0xF9, 0x01, 0x12, 0x04, 0x12, 0x04 - .byte 0x51, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x28, 0x6F, 0x1E, 0xD5, 0x00, 0x23, 0x03 - .byte 0x40, 0x02, 0xFC, 0x01, 0x2D, 0x04, 0x2D, 0x04, 0x52, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x28, 0x6F, 0x1E, 0xD6, 0x00, 0x24, 0x03, 0x41, 0x02, 0xFD, 0x01, 0x2D, 0x04, 0x2D, 0x04 - .byte 0x53, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x28, 0x6F, 0x22, 0xE2, 0x00, 0x25, 0x03 - .byte 0x42, 0x02, 0xFE, 0x01, 0x12, 0x04, 0x12, 0x04, 0x54, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x5F, 0x31, 0x48, 0x00, 0x51, 0x03, 0x6E, 0x02, 0x25, 0x02, 0xFA, 0x03, 0xFA, 0x03 - .byte 0x55, 0x01, 0x7E, 0x09, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x5F, 0x28, 0x5F, 0x00, 0x74, 0x03 - .byte 0x91, 0x02, 0x44, 0x02, 0x01, 0x04, 0x01, 0x04, 0x56, 0x01, 0x82, 0x49, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x27, 0x8F, 0x2A, 0xBA, 0x00, 0x9A, 0x00, 0x94, 0x01, 0x01, 0x01, 0x0E, 0x04, 0x0E, 0x04 - .byte 0x57, 0x01, 0x8F, 0xA9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x5E, 0x8F, 0x2A, 0xD3, 0x00, 0x9B, 0x00 - .byte 0x95, 0x01, 0x02, 0x01, 0x0E, 0x04, 0x0E, 0x04, 0x58, 0x01, 0x8F, 0xA1, 0x01, 0x01, 0x28, 0xF4 - .byte 0xFF, 0x0E, 0x0F, 0x00, 0x00, 0x00, 0xC2, 0x00, 0xB7, 0x01, 0x57, 0x01, 0x1E, 0x04, 0x1E, 0x04 - .byte 0x59, 0x01, 0x9E, 0xC3, 0x01, 0x02, 0x48, 0xF6, 0xFF, 0x3F, 0x8F, 0x22, 0x45, 0x00, 0xB9, 0x00 - .byte 0xAE, 0x01, 0x4F, 0x01, 0x1C, 0x04, 0x1C, 0x04, 0x5A, 0x01, 0x9A, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x3F, 0xAF, 0x1E, 0x46, 0x00, 0xBD, 0x00, 0xB2, 0x01, 0x53, 0x01, 0x1E, 0x04, 0x1E, 0x04 - .byte 0x5B, 0x01, 0x9C, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0x8F, 0x16, 0x45, 0x00, 0xB6, 0x00 - .byte 0xAB, 0x01, 0x4C, 0x01, 0x1D, 0x04, 0x1D, 0x04, 0x5C, 0x01, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x3F, 0x7F, 0x36, 0x46, 0x00, 0xCC, 0x00, 0xC1, 0x01, 0x61, 0x01, 0x24, 0x04, 0x24, 0x04 - .byte 0x5D, 0x01, 0xA3, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x1A, 0x6F, 0x1E, 0x49, 0x00, 0x13, 0x03 - .byte 0x30, 0x02, 0xED, 0x01, 0x27, 0x04, 0x27, 0x04, 0x5E, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x6F, 0x1E, 0x4D, 0x00, 0x14, 0x03, 0x31, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0x5F, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x34, 0x6F, 0x1E, 0x02, 0x01, 0x12, 0x03 - .byte 0x2F, 0x02, 0xEC, 0x01, 0x29, 0x04, 0x29, 0x04, 0x60, 0x01, 0x90, 0xC9, 0x01, 0x04, 0x64, 0xA4 - .byte 0xFF, 0x22, 0x0F, 0x15, 0xE4, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x29, 0x04, 0x29, 0x04 - .byte 0x61, 0x01, 0x86, 0xA9, 0x00, 0x04, 0x74, 0xA4, 0xFF, 0x22, 0x0F, 0x15, 0x5D, 0x00, 0xA6, 0x03 - .byte 0xC3, 0x02, 0x6F, 0x02, 0x29, 0x04, 0x29, 0x04, 0x62, 0x01, 0x86, 0xA9, 0x00, 0x04, 0x74, 0xA4 - .byte 0xFF, 0x28, 0x9F, 0x1A, 0xC0, 0x00, 0x40, 0x03, 0x5D, 0x02, 0x15, 0x02, 0x0F, 0x04, 0x0F, 0x04 - .byte 0x63, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x9F, 0x1E, 0x61, 0x00, 0x41, 0x03 - .byte 0x5E, 0x02, 0x16, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x64, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x30, 0x8F, 0x1A, 0xBB, 0x00, 0x42, 0x03, 0x5F, 0x02, 0x17, 0x02, 0x0F, 0x04, 0x0F, 0x04 - .byte 0x65, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x30, 0x8F, 0x1A, 0xBC, 0x00, 0x43, 0x03 - .byte 0x60, 0x02, 0x18, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x66, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x60, 0xE4 - .byte 0xFF, 0x27, 0x8F, 0x1E, 0xBD, 0x00, 0x45, 0x03, 0x62, 0x02, 0x19, 0x02, 0x0F, 0x04, 0x0F, 0x04 - .byte 0x67, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x8F, 0x1E, 0xF1, 0x00, 0x46, 0x03 - .byte 0x63, 0x02, 0x1A, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x68, 0x01, 0x79, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x27, 0x8F, 0x1A, 0xBE, 0x00, 0x48, 0x03, 0x65, 0x02, 0x1C, 0x02, 0x0F, 0x04, 0x0F, 0x04 - .byte 0x69, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0x8F, 0x1A, 0xBF, 0x00, 0x49, 0x03 - .byte 0x66, 0x02, 0x1D, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x6A, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x28, 0x0F, 0x00, 0x42, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x0F, 0x04, 0x0F, 0x04 - .byte 0x00, 0x00, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x8F, 0x1E, 0x49, 0x00, 0x3E, 0x03 - .byte 0x5B, 0x02, 0x14, 0x02, 0x27, 0x04, 0x27, 0x04, 0x6B, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x8F, 0x1E, 0x4D, 0x00, 0x3F, 0x03, 0x5C, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0x6C, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0x9F, 0x1A, 0x68, 0x00, 0x3C, 0x03 - .byte 0x59, 0x02, 0x12, 0x02, 0x28, 0x04, 0x28, 0x04, 0x6D, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x32, 0x9F, 0x1A, 0x00, 0x01, 0x3D, 0x03, 0x5A, 0x02, 0x13, 0x02, 0x29, 0x04, 0x29, 0x04 - .byte 0x6E, 0x01, 0x94, 0xC9, 0x01, 0x04, 0x64, 0xA4, 0xFF, 0x5D, 0x7F, 0x1C, 0xF0, 0x00, 0x51, 0x00 - .byte 0x56, 0x01, 0x68, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0x6F, 0x01, 0xE5, 0x91, 0x00, 0x81, 0x28, 0xF2 - .byte 0xFF, 0x2D, 0x9F, 0x28, 0xEE, 0x00, 0x8C, 0x03, 0xA9, 0x02, 0x59, 0x02, 0x82, 0x04, 0x82, 0x04 - .byte 0x70, 0x01, 0x76, 0x59, 0x00, 0x44, 0x60, 0xE4, 0xFF, 0x2D, 0x9F, 0x28, 0xEF, 0x00, 0x8D, 0x03 - .byte 0xAA, 0x02, 0x5A, 0x02, 0x82, 0x04, 0x82, 0x04, 0x71, 0x01, 0x76, 0x59, 0x00, 0x44, 0x60, 0xE4 - .byte 0x88, 0x11, 0x0F, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x9F, 0x01, 0x41, 0x01, 0x21, 0x04, 0x21, 0x04 - .byte 0x72, 0x01, 0x96, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0xFF, 0x19, 0x4F, 0x22, 0x42, 0x00, 0xCE, 0x00 - .byte 0xC3, 0x01, 0x63, 0x01, 0x1F, 0x04, 0x1F, 0x04, 0x73, 0x01, 0xA4, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x10, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x22, 0x04, 0x22, 0x04 - .byte 0x00, 0x00, 0xA8, 0xC6, 0x01, 0x02, 0x68, 0xF6, 0xFF, 0x19, 0x0F, 0x12, 0x42, 0x00, 0xAB, 0x00 - .byte 0xA0, 0x01, 0x42, 0x01, 0x21, 0x04, 0x21, 0x04, 0x74, 0x01, 0x96, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x3F, 0x0F, 0x1A, 0x45, 0x00, 0xAC, 0x00, 0xA1, 0x01, 0x43, 0x01, 0x21, 0x04, 0x21, 0x04 - .byte 0x75, 0x01, 0x96, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0x0F, 0x1A, 0x45, 0x00, 0xAD, 0x00 - .byte 0xA2, 0x01, 0x44, 0x01, 0x21, 0x04, 0x21, 0x04, 0x76, 0x01, 0x96, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x3F, 0x0F, 0x12, 0x45, 0x00, 0xAE, 0x00, 0xA3, 0x01, 0x45, 0x01, 0x21, 0x04, 0x21, 0x04 - .byte 0x77, 0x01, 0x96, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0x4F, 0x22, 0x46, 0x00, 0xCF, 0x00 - .byte 0xC4, 0x01, 0x64, 0x01, 0x1F, 0x04, 0x1F, 0x04, 0x78, 0x01, 0xA4, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0x7D, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0xD0, 0x00, 0xC5, 0x01, 0x03, 0x00, 0x1F, 0x04, 0x1F, 0x04 - .byte 0x79, 0x01, 0xA4, 0xC3, 0x01, 0x02, 0x08, 0xF6, 0xFF, 0x3F, 0x4F, 0x36, 0x46, 0x00, 0xD3, 0x00 - .byte 0xC8, 0x01, 0x67, 0x01, 0x20, 0x04, 0x20, 0x04, 0x7A, 0x01, 0xA6, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x3F, 0x5F, 0x3A, 0x45, 0x00, 0xBF, 0x03, 0xD8, 0x02, 0xE5, 0x02, 0x20, 0x04, 0x20, 0x04 - .byte 0x7B, 0x01, 0xA7, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x3F, 0xBF, 0x26, 0x46, 0x00, 0xC6, 0x00 - .byte 0xBB, 0x01, 0x5B, 0x01, 0x23, 0x04, 0x23, 0x04, 0x7C, 0x01, 0x9F, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x1B, 0x8F, 0x12, 0x68, 0x00, 0xF7, 0x02, 0x14, 0x02, 0xD4, 0x01, 0x28, 0x04, 0x28, 0x04 - .byte 0x7D, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x33, 0x9F, 0x12, 0x01, 0x01, 0xF8, 0x02 - .byte 0x15, 0x02, 0xD5, 0x01, 0x29, 0x04, 0x29, 0x04, 0x7E, 0x01, 0x8D, 0xC9, 0x01, 0x04, 0x64, 0xA4 - .byte 0xFF, 0x1A, 0x8F, 0x12, 0x49, 0x00, 0xF9, 0x02, 0x16, 0x02, 0xD6, 0x01, 0x27, 0x04, 0x27, 0x04 - .byte 0x7F, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x8F, 0x0E, 0x60, 0x00, 0xFB, 0x02 - .byte 0x18, 0x02, 0xD7, 0x01, 0x10, 0x04, 0x10, 0x04, 0x80, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x9F, 0x0E, 0x61, 0x00, 0xFC, 0x02, 0x19, 0x02, 0xD8, 0x01, 0x10, 0x04, 0x10, 0x04 - .byte 0x81, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x8F, 0x12, 0x60, 0x00, 0xFD, 0x02 - .byte 0x1A, 0x02, 0xD9, 0x01, 0x10, 0x04, 0x10, 0x04, 0x82, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1B, 0x8F, 0x12, 0x12, 0x01, 0xFE, 0x02, 0x1B, 0x02, 0xDA, 0x01, 0x10, 0x04, 0x10, 0x04 - .byte 0x83, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1B, 0xCF, 0x1E, 0x68, 0x00, 0x00, 0x03 - .byte 0x1D, 0x02, 0xDC, 0x01, 0x28, 0x04, 0x28, 0x04, 0x84, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0xCF, 0x1E, 0x49, 0x00, 0x01, 0x03, 0x1E, 0x02, 0xDD, 0x01, 0x27, 0x04, 0x27, 0x04 - .byte 0x85, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x28, 0xCF, 0x1E, 0xC1, 0x00, 0x03, 0x03 - .byte 0x20, 0x02, 0xDE, 0x01, 0x11, 0x04, 0x11, 0x04, 0x86, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0xCF, 0x1E, 0x60, 0x00, 0x04, 0x03, 0x21, 0x02, 0xDF, 0x01, 0x11, 0x04, 0x11, 0x04 - .byte 0x87, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2A, 0xCF, 0x1E, 0x8C, 0x00, 0x05, 0x03 - .byte 0x22, 0x02, 0xE0, 0x01, 0x11, 0x04, 0x11, 0x04, 0x88, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x28, 0xCF, 0x1E, 0xC2, 0x00, 0x06, 0x03, 0x23, 0x02, 0xE1, 0x01, 0x11, 0x04, 0x11, 0x04 - .byte 0x89, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x27, 0xCF, 0x1E, 0xC3, 0x00, 0x07, 0x03 - .byte 0x24, 0x02, 0xE2, 0x01, 0x11, 0x04, 0x11, 0x04, 0x8A, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2B, 0xBF, 0x06, 0xFE, 0x00, 0xD9, 0x00, 0xCE, 0x01, 0x6C, 0x01, 0x25, 0x04, 0x25, 0x04 - .byte 0x8B, 0x01, 0xAD, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0xBF, 0x2C, 0x06, 0x01, 0x89, 0x03 - .byte 0xA6, 0x02, 0x56, 0x02, 0x28, 0x04, 0x28, 0x04, 0x8C, 0x01, 0x83, 0x59, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2C, 0x5F, 0x1E, 0x06, 0x01, 0x1B, 0x03, 0x38, 0x02, 0xF4, 0x01, 0x28, 0x04, 0x28, 0x04 - .byte 0x8D, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0x6F, 0x1E, 0x06, 0x01, 0x21, 0x03 - .byte 0x3E, 0x02, 0xFA, 0x01, 0x12, 0x04, 0x12, 0x04, 0x8E, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2C, 0x6F, 0x1E, 0x06, 0x01, 0x22, 0x03, 0x3F, 0x02, 0xFB, 0x01, 0x12, 0x04, 0x12, 0x04 - .byte 0x8F, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0x8F, 0x1E, 0x06, 0x01, 0x47, 0x03 - .byte 0x64, 0x02, 0x1B, 0x02, 0x0F, 0x04, 0x0F, 0x04, 0x90, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2C, 0x9F, 0x20, 0x06, 0x01, 0x43, 0x00, 0x48, 0x01, 0x5F, 0x00, 0x36, 0x04, 0x36, 0x04 - .byte 0x91, 0x01, 0xD4, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0xAF, 0x28, 0x06, 0x01, 0x23, 0x00 - .byte 0x28, 0x01, 0x47, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0x92, 0x01, 0xD0, 0x99, 0x00, 0x44, 0x64, 0xE4 - .byte 0x6B, 0x46, 0x4F, 0x0E, 0x04, 0x00, 0x08, 0x00, 0x0D, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0x93, 0x01, 0xC6, 0xC4, 0x01, 0x03, 0x98, 0xEE, 0x48, 0x61, 0x4F, 0x0E, 0x05, 0x00, 0x09, 0x00 - .byte 0x0E, 0x01, 0x32, 0x00, 0x31, 0x04, 0x31, 0x04, 0x94, 0x01, 0xC6, 0xC4, 0x01, 0x02, 0x08, 0xF6 - .byte 0x8C, 0x49, 0x8F, 0x0E, 0x4F, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04 - .byte 0x95, 0x01, 0xC7, 0xA4, 0x17, 0x03, 0x98, 0xEE, 0x8D, 0x49, 0x8F, 0x0E, 0x50, 0x00, 0x0B, 0x00 - .byte 0x10, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04, 0x96, 0x01, 0xC7, 0xA4, 0x17, 0x03, 0xA8, 0xEE - .byte 0x6D, 0x53, 0xCF, 0x12, 0x07, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04 - .byte 0x97, 0x01, 0xC8, 0xC4, 0x17, 0x03, 0xA8, 0xEE, 0x4B, 0x68, 0x3F, 0x3E, 0x52, 0x00, 0x0D, 0x00 - .byte 0x12, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04, 0x98, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xA8, 0xEE - .byte 0x4C, 0x68, 0x3F, 0x3E, 0x53, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 - .byte 0x99, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xB8, 0xEE, 0x4D, 0x68, 0x3F, 0x3E, 0x54, 0x00, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04, 0x9A, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xB8, 0xEE - .byte 0x4E, 0x68, 0x3F, 0x3E, 0x55, 0x00, 0x0E, 0x00, 0x13, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 - .byte 0x9B, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xB8, 0xEE, 0xFF, 0x51, 0x3F, 0x3E, 0x08, 0x01, 0x0F, 0x00 - .byte 0x14, 0x01, 0x35, 0x00, 0x29, 0x04, 0x29, 0x04, 0x9C, 0x01, 0xCB, 0xA4, 0x01, 0x03, 0xB8, 0xAC - .byte 0xFF, 0x46, 0x0F, 0x00, 0x08, 0x01, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x38, 0x04, 0x38, 0x04 - .byte 0x00, 0x00, 0xCB, 0xA4, 0x01, 0x03, 0x98, 0xE8, 0x59, 0x60, 0x9F, 0x21, 0x0A, 0x01, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0x9D, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0x58, 0xF4 - .byte 0x57, 0x66, 0x9F, 0x21, 0x0B, 0x01, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 - .byte 0x9E, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0x48, 0xF6, 0x58, 0x50, 0x9F, 0x21, 0x0C, 0x01, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0x9F, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0xA8, 0xEE - .byte 0x4F, 0x50, 0x9F, 0x21, 0x0D, 0x01, 0x6A, 0x00, 0x6F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 - .byte 0xA0, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0xA8, 0xEE, 0x50, 0x50, 0x9F, 0x21, 0x0E, 0x01, 0x8B, 0x00 - .byte 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04, 0xA1, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0x98, 0xEE - .byte 0x51, 0x50, 0x9F, 0x21, 0x0F, 0x01, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x36, 0x04, 0x36, 0x04 - .byte 0xA2, 0x01, 0xDB, 0xA4, 0x00, 0x03, 0x98, 0xEE, 0xFF, 0x60, 0x9F, 0x21, 0x10, 0x01, 0x6B, 0x00 - .byte 0x70, 0x01, 0x7E, 0x00, 0xE9, 0x03, 0xE9, 0x03, 0xA3, 0x01, 0xDB, 0xA4, 0x0A, 0x03, 0x58, 0xF4 - .byte 0xFF, 0x1A, 0xCF, 0x12, 0x49, 0x00, 0xC0, 0x00, 0xB5, 0x01, 0x56, 0x01, 0x27, 0x04, 0x27, 0x04 - .byte 0xA4, 0x01, 0x9E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0xCF, 0x16, 0xFB, 0x00, 0xC3, 0x00 - .byte 0xB8, 0x01, 0x58, 0x01, 0x14, 0x04, 0x14, 0x04, 0xA5, 0x01, 0xC9, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2C, 0x0F, 0x00, 0xFC, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x1D, 0x04, 0x1D, 0x04 - .byte 0x00, 0x00, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE0, 0xFF, 0x2C, 0x8F, 0x16, 0xFD, 0x00, 0xB4, 0x00 - .byte 0xA9, 0x01, 0x4A, 0x01, 0x3A, 0x04, 0x3A, 0x04, 0xA6, 0x01, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x2C, 0x8F, 0x22, 0xFD, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x3A, 0x04, 0x3A, 0x04 - .byte 0xA7, 0x01, 0x9A, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x2C, 0x0F, 0x0A, 0xF2, 0x00, 0xF3, 0x02 - .byte 0x10, 0x02, 0xD0, 0x01, 0x14, 0x04, 0x14, 0x04, 0xA8, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0x0F, 0x0E, 0x42, 0x00, 0xF4, 0x02, 0x11, 0x02, 0xD1, 0x01, 0x14, 0x04, 0x14, 0x04 - .byte 0xA9, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x36, 0x0F, 0x0A, 0x04, 0x01, 0xF0, 0x02 - .byte 0x0D, 0x02, 0xCE, 0x01, 0x29, 0x04, 0x29, 0x04, 0xAA, 0x01, 0x8C, 0xC9, 0x01, 0x04, 0x64, 0xA4 - .byte 0xFF, 0x1B, 0x1F, 0x0E, 0x68, 0x00, 0xEF, 0x02, 0x0C, 0x02, 0xCD, 0x01, 0x28, 0x04, 0x28, 0x04 - .byte 0xAB, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x0F, 0x0E, 0x49, 0x00, 0xF1, 0x02 - .byte 0x0E, 0x02, 0xCF, 0x01, 0x27, 0x04, 0x27, 0x04, 0xAC, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x0F, 0x0E, 0x4D, 0x00, 0xF2, 0x02, 0x0F, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xAD, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x1F, 0x0A, 0x42, 0x00, 0xF5, 0x02 - .byte 0x12, 0x02, 0xD2, 0x01, 0x14, 0x04, 0x14, 0x04, 0xAE, 0x01, 0x8C, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1B, 0x5F, 0x36, 0x68, 0x00, 0x28, 0x03, 0x45, 0x02, 0x01, 0x02, 0x28, 0x04, 0x28, 0x04 - .byte 0xAF, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2C, 0x5F, 0x32, 0xF3, 0x00, 0x2C, 0x03 - .byte 0x49, 0x02, 0x04, 0x02, 0x13, 0x04, 0x13, 0x04, 0xB0, 0x01, 0x37, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x35, 0x5F, 0x36, 0x03, 0x01, 0x29, 0x03, 0x46, 0x02, 0x02, 0x02, 0x29, 0x04, 0x29, 0x04 - .byte 0xB1, 0x01, 0x91, 0xC9, 0x01, 0xE4, 0x64, 0xA4, 0xFF, 0x19, 0x5F, 0x36, 0x60, 0x00, 0x2D, 0x03 - .byte 0x4A, 0x02, 0x05, 0x02, 0x13, 0x04, 0x13, 0x04, 0xB2, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x5F, 0x36, 0x49, 0x00, 0x2A, 0x03, 0x47, 0x02, 0x03, 0x02, 0x27, 0x04, 0x27, 0x04 - .byte 0xB3, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x6F, 0x36, 0x61, 0x00, 0x2E, 0x03 - .byte 0x4B, 0x02, 0x06, 0x02, 0x13, 0x04, 0x13, 0x04, 0xB4, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0xCF, 0x12, 0x4D, 0x00, 0xC1, 0x00, 0xB6, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xB5, 0x01, 0x9E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x5F, 0x36, 0x4D, 0x00, 0x2B, 0x03 - .byte 0x48, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xB6, 0x01, 0x91, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0x30, 0x62, 0x7F, 0x2C, 0x13, 0x01, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0xB7, 0x01, 0xDA, 0xB4, 0x00, 0xA3, 0xB8, 0x8E, 0x18, 0x47, 0xBF, 0x1C, 0x1B, 0x00, 0x1A, 0x00 - .byte 0x1F, 0x01, 0x3F, 0x00, 0x44, 0x04, 0x44, 0x04, 0xB8, 0x01, 0xCF, 0x97, 0x00, 0x01, 0x08, 0xA4 - .byte 0xFF, 0x47, 0xBF, 0x1C, 0x1B, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x33, 0x04, 0x33, 0x04 - .byte 0x00, 0x00, 0xCF, 0x97, 0x00, 0x01, 0x08, 0xA6, 0xFF, 0x2C, 0xCF, 0x16, 0x14, 0x01, 0xC4, 0x00 - .byte 0xB9, 0x01, 0x59, 0x01, 0x14, 0x04, 0x14, 0x04, 0xB9, 0x01, 0xC9, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0x0B, 0x69, 0xDF, 0x20, 0x25, 0x00, 0x35, 0x00, 0x3A, 0x01, 0x54, 0x00, 0x32, 0x04, 0x32, 0x04 - .byte 0xBA, 0x01, 0xD1, 0x94, 0x00, 0x03, 0x88, 0xEC, 0x0D, 0x69, 0xDF, 0x20, 0xB5, 0x00, 0x36, 0x00 - .byte 0x3B, 0x01, 0x55, 0x00, 0x32, 0x04, 0x32, 0x04, 0xBB, 0x01, 0xD1, 0x94, 0x00, 0x43, 0x84, 0xE4 - .byte 0x0C, 0x69, 0xDF, 0x20, 0x25, 0x00, 0x37, 0x00, 0x3C, 0x01, 0x56, 0x00, 0x32, 0x04, 0x32, 0x04 - .byte 0xBC, 0x01, 0xD1, 0x94, 0x00, 0x03, 0x88, 0xEC, 0xFF, 0x3F, 0x7F, 0x1E, 0x46, 0x00, 0xBB, 0x00 - .byte 0xB0, 0x01, 0x51, 0x01, 0x1F, 0x04, 0x1F, 0x04, 0xBD, 0x01, 0x9B, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x1A, 0xCF, 0x1E, 0x4D, 0x00, 0x02, 0x03, 0x1F, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xBE, 0x01, 0x8E, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x8F, 0x12, 0x4D, 0x00, 0xFA, 0x02 - .byte 0x17, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xBF, 0x01, 0x8D, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x37, 0x0F, 0x1E, 0x05, 0x01, 0xE7, 0x02, 0x04, 0x02, 0xC6, 0x01, 0x29, 0x04, 0x29, 0x04 - .byte 0xC0, 0x01, 0x8B, 0xC9, 0x01, 0x04, 0x64, 0xA4, 0xFF, 0x19, 0x0F, 0x1E, 0x60, 0x00, 0xEA, 0x02 - .byte 0x07, 0x02, 0xC8, 0x01, 0x15, 0x04, 0x15, 0x04, 0xC1, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2B, 0x0F, 0x1E, 0xF4, 0x00, 0xEB, 0x02, 0x08, 0x02, 0xC9, 0x01, 0x15, 0x04, 0x15, 0x04 - .byte 0xC2, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2B, 0x0F, 0x1E, 0xF5, 0x00, 0xEC, 0x02 - .byte 0x09, 0x02, 0xCA, 0x01, 0x15, 0x04, 0x15, 0x04, 0xC3, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x60, 0xE4 - .byte 0xFF, 0x1B, 0x0F, 0x1E, 0x68, 0x00, 0xE6, 0x02, 0x03, 0x02, 0xC5, 0x01, 0x28, 0x04, 0x28, 0x04 - .byte 0xC4, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x0F, 0x22, 0x49, 0x00, 0xE8, 0x02 - .byte 0x05, 0x02, 0xC7, 0x01, 0x27, 0x04, 0x27, 0x04, 0xC5, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x0F, 0x22, 0x4D, 0x00, 0xE9, 0x02, 0x06, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xC6, 0x01, 0x8B, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2B, 0x0F, 0x2E, 0xF6, 0x00, 0xE0, 0x02 - .byte 0xFD, 0x01, 0xBF, 0x01, 0x16, 0x04, 0x16, 0x04, 0xC7, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2B, 0x0F, 0x2E, 0xF8, 0x00, 0xE2, 0x02, 0xFF, 0x01, 0xC1, 0x01, 0x16, 0x04, 0x16, 0x04 - .byte 0xC8, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2B, 0x0F, 0x2E, 0xFA, 0x00, 0xE4, 0x02 - .byte 0x01, 0x02, 0xC3, 0x01, 0x16, 0x04, 0x16, 0x04, 0xC9, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2B, 0x0F, 0x2E, 0xF7, 0x00, 0xE1, 0x02, 0xFE, 0x01, 0xC0, 0x01, 0x16, 0x04, 0x16, 0x04 - .byte 0xCA, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x2B, 0x0F, 0x2E, 0xF9, 0x00, 0xE3, 0x02 - .byte 0x00, 0x02, 0xC2, 0x01, 0x16, 0x04, 0x16, 0x04, 0xCB, 0x01, 0x8A, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x0F, 0x3E, 0x49, 0x00, 0x30, 0x03, 0x4D, 0x02, 0x08, 0x02, 0x27, 0x04, 0x27, 0x04 - .byte 0xCC, 0x01, 0x92, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x0F, 0x3E, 0x4D, 0x00, 0x31, 0x03 - .byte 0x4E, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xCD, 0x01, 0x92, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x19, 0xAF, 0x21, 0x42, 0x00, 0xE0, 0x00, 0xD5, 0x01, 0x74, 0x01, 0x3D, 0x04, 0x3D, 0x04 - .byte 0xCE, 0x01, 0xB0, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x4F, 0x0E, 0x49, 0x00, 0xB0, 0x00 - .byte 0xA5, 0x01, 0x47, 0x01, 0x27, 0x04, 0x27, 0x04, 0xCF, 0x01, 0x97, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x4F, 0x0E, 0x4D, 0x00, 0xB1, 0x00, 0xA6, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xD0, 0x01, 0x97, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0x49, 0x61, 0x4F, 0x0E, 0x19, 0x01, 0x0A, 0x00 - .byte 0x0F, 0x01, 0x33, 0x00, 0x49, 0x04, 0x49, 0x04, 0xD1, 0x01, 0xC6, 0xC4, 0x01, 0x02, 0x08, 0xF6 - .byte 0xFF, 0x1A, 0x9F, 0x21, 0x49, 0x00, 0xB6, 0x03, 0xD3, 0x02, 0x7D, 0x02, 0x27, 0x04, 0x27, 0x04 - .byte 0xD2, 0x01, 0x89, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x9F, 0x21, 0x4D, 0x00, 0xB7, 0x03 - .byte 0xD4, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xD3, 0x01, 0x89, 0x99, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2D, 0x0F, 0x00, 0x18, 0x01, 0x93, 0x00, 0x90, 0x01, 0xD4, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xD4, 0x01, 0x00, 0xA9, 0x00, 0x44, 0x64, 0x04, 0xFF, 0x19, 0x8F, 0x16, 0x42, 0x00, 0xB7, 0x00 - .byte 0xAC, 0x01, 0x4D, 0x01, 0x1D, 0x04, 0x1D, 0x04, 0xD5, 0x01, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1B, 0x4F, 0x0E, 0x8B, 0x00, 0x06, 0x00, 0x0B, 0x01, 0x30, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0xD6, 0x01, 0xC6, 0xC9, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x30, 0xAF, 0x28, 0x1A, 0x01, 0x7F, 0x03 - .byte 0x9C, 0x02, 0x03, 0x00, 0xFE, 0x03, 0xFE, 0x03, 0xD7, 0x01, 0x83, 0x59, 0x00, 0x44, 0x60, 0xE4 - .byte 0xFF, 0x30, 0x8F, 0x1A, 0x1B, 0x01, 0x44, 0x03, 0x61, 0x02, 0x03, 0x00, 0x0F, 0x04, 0x0F, 0x04 - .byte 0xD8, 0x01, 0x94, 0xC9, 0x01, 0x44, 0x60, 0xE4, 0xFF, 0x64, 0x4F, 0x05, 0x15, 0x01, 0x82, 0x00 - .byte 0x87, 0x01, 0x91, 0x00, 0x90, 0x04, 0x90, 0x04, 0xD9, 0x01, 0xE7, 0xA3, 0x0A, 0x02, 0x08, 0xA4 - .byte 0xFF, 0x65, 0x4F, 0x05, 0x16, 0x01, 0x83, 0x00, 0x88, 0x01, 0x92, 0x00, 0x90, 0x04, 0x90, 0x04 - .byte 0xDA, 0x01, 0xE7, 0xA4, 0x00, 0x03, 0x98, 0x24, 0xFF, 0x2A, 0x4F, 0x05, 0x1F, 0x01, 0x84, 0x00 - .byte 0x89, 0x01, 0x93, 0x00, 0x90, 0x04, 0x90, 0x04, 0xDB, 0x01, 0xE7, 0xA9, 0x00, 0x44, 0x64, 0xA4 - .byte 0xFF, 0x63, 0x2F, 0x30, 0x17, 0x01, 0x85, 0x00, 0x8A, 0x01, 0x94, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0xDC, 0x01, 0xE8, 0xA4, 0x00, 0x03, 0x94, 0xAC, 0xFF, 0x63, 0x2F, 0x30, 0x1C, 0x01, 0x86, 0x00 - .byte 0x8B, 0x01, 0x95, 0x00, 0x31, 0x04, 0x31, 0x04, 0xDD, 0x01, 0xE8, 0xA4, 0x00, 0x03, 0x94, 0xAC - .byte 0xFF, 0x63, 0x2F, 0x30, 0x1D, 0x01, 0x87, 0x00, 0x8C, 0x01, 0x96, 0x00, 0x31, 0x04, 0x31, 0x04 - .byte 0xDE, 0x01, 0xE8, 0xA4, 0x00, 0x03, 0x94, 0xAC, 0xFF, 0x3F, 0x0F, 0x26, 0x45, 0x00, 0xED, 0x02 - .byte 0x0A, 0x02, 0xCB, 0x01, 0x15, 0x04, 0x15, 0x04, 0xDF, 0x01, 0x95, 0xC9, 0x01, 0x44, 0x64, 0xE6 - .byte 0xFF, 0x1A, 0x7F, 0x1C, 0x49, 0x00, 0x4E, 0x00, 0x53, 0x01, 0x66, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xE0, 0x01, 0xE5, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x7F, 0x1C, 0x4D, 0x00, 0x4F, 0x00 - .byte 0x54, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xE1, 0x01, 0xE5, 0x99, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1B, 0x7F, 0x1C, 0x68, 0x00, 0x4D, 0x00, 0x52, 0x01, 0x65, 0x00, 0x28, 0x04, 0x28, 0x04 - .byte 0xE2, 0x01, 0xE5, 0x99, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x19, 0x7F, 0x1C, 0x61, 0x00, 0x52, 0x00 - .byte 0x57, 0x01, 0x69, 0x00, 0x2E, 0x04, 0x2E, 0x04, 0xE3, 0x01, 0xE5, 0x99, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x2C, 0x8F, 0x16, 0xFC, 0x00, 0xB5, 0x00, 0xAA, 0x01, 0x4B, 0x01, 0x3A, 0x04, 0x3A, 0x04 - .byte 0xE4, 0x01, 0x99, 0xC9, 0x01, 0x44, 0x64, 0xE6, 0xFF, 0x19, 0xCF, 0x26, 0x42, 0x00, 0xC8, 0x00 - .byte 0xBD, 0x01, 0x5D, 0x01, 0x24, 0x04, 0x24, 0x04, 0xE5, 0x01, 0xA0, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x1A, 0x2F, 0x24, 0x49, 0x00, 0x75, 0x00, 0x7A, 0x01, 0x86, 0x00, 0x27, 0x04, 0x27, 0x04 - .byte 0xE6, 0x01, 0xE3, 0x89, 0x00, 0x44, 0x64, 0xE4, 0xFF, 0x1A, 0x2F, 0x24, 0x4D, 0x00, 0x76, 0x00 - .byte 0x7B, 0x01, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xE7, 0x01, 0xE3, 0x89, 0x00, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x42, 0xAF, 0x2C, 0x1E, 0x01, 0x8E, 0x03, 0xAB, 0x02, 0x5B, 0x02, 0x2D, 0x04, 0x2D, 0x04 - .byte 0xE8, 0x01, 0x83, 0x59, 0x01, 0x44, 0x64, 0xE4, 0xFF, 0x42, 0x6F, 0x1E, 0x1E, 0x01, 0x26, 0x03 - .byte 0x43, 0x02, 0xFF, 0x01, 0x2D, 0x04, 0x2D, 0x04, 0xE9, 0x01, 0x90, 0xC9, 0x01, 0x44, 0x64, 0xE4 - .byte 0xFF, 0x04, 0x0F, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x8F, 0x01, 0x03, 0x00, 0x2D, 0x04, 0x2D, 0x04 - .byte 0x00, 0x00, 0x00, 0xA6, 0x00, 0x02, 0x60, 0x00, 0xFF, 0x1A, 0x0F, 0x00, 0x4D, 0x00, 0x3A, 0x03 - .byte 0x57, 0x02, 0x03, 0x00, 0x27, 0x04, 0x27, 0x04, 0xEA, 0x01, 0x0F, 0xC9, 0x00, 0x44, 0x64, 0xE4 -_020F9E80: - .byte 0x0B, 0x03 -_020F9E82: - .byte 0x3F, 0x00, 0x06, 0x08 -_020F9E86: - .byte 0x3C, 0x00 -_020F9E88: - .byte 0xB7, 0x02 -_020F9E8A: - .byte 0x8D, 0x01 -_020F9E8C: - .byte 0x3C, 0x00 -_020F9E8E: - .byte 0xB7, 0x02 -_020F9E90: - .byte 0x8D, 0x01, 0x0C, 0x03, 0x45, 0x00, 0x08, 0x0D, 0x43, 0x00, 0x34, 0x02, 0x88, 0x01, 0x43, 0x00 - .byte 0x34, 0x02, 0x88, 0x01, 0x0D, 0x03, 0x9E, 0x00, 0x08, 0x0D, 0x49, 0x00, 0xF1, 0x01, 0x10, 0x01 - .byte 0x49, 0x00, 0xF1, 0x01, 0x10, 0x01, 0x0E, 0x03, 0xA6, 0x00, 0x08, 0x0D, 0x4A, 0x00, 0x9A, 0x01 - .byte 0xCD, 0x01, 0x4A, 0x00, 0x9A, 0x01, 0xCD, 0x01, 0x0F, 0x03, 0xEC, 0x00, 0x08, 0x0D, 0x4B, 0x00 - .byte 0xBB, 0x00, 0x72, 0x01, 0x4B, 0x00, 0xBB, 0x00, 0x72, 0x01, 0x10, 0x03, 0xB9, 0x00, 0x08, 0x0D - .byte 0x4C, 0x00, 0x60, 0x01, 0x71, 0x01, 0x4C, 0x00, 0x60, 0x01, 0x71, 0x01, 0x11, 0x03, 0xE2, 0x00 - .byte 0x08, 0x0D, 0x4D, 0x00, 0x10, 0x01, 0x02, 0x01, 0x4D, 0x00, 0x10, 0x01, 0x02, 0x01, 0x12, 0x03 - .byte 0x51, 0x00, 0x08, 0x0D, 0x4E, 0x00, 0x8D, 0x01, 0xB8, 0x00, 0x4E, 0x00, 0x8D, 0x01, 0xB8, 0x00 - .byte 0x13, 0x03, 0xF6, 0x00, 0x08, 0x0D, 0x57, 0x00, 0x16, 0x02, 0xB8, 0x00, 0x57, 0x00, 0x16, 0x02 - .byte 0xB8, 0x00, 0x14, 0x02, 0x58, 0x00, 0x08, 0x0D, 0x58, 0x00, 0x18, 0x02, 0x5A, 0x00, 0x58, 0x00 - .byte 0x18, 0x02, 0x5A, 0x00, 0x15, 0x03, 0x25, 0x01, 0x08, 0x0D, 0x59, 0x00, 0xA2, 0x02, 0xB1, 0x00 - .byte 0x59, 0x00, 0xA2, 0x02, 0xB1, 0x00, 0x16, 0x03, 0x02, 0x02, 0x08, 0x0D, 0x5A, 0x00, 0x34, 0x03 - .byte 0x0A, 0x01, 0x5A, 0x00, 0x34, 0x03, 0x0A, 0x01, 0x00, 0x02, 0x31, 0x00, 0x08, 0x0D, 0x31, 0x00 - .byte 0x09, 0x04, 0x6C, 0x01, 0x31, 0x00, 0x09, 0x04, 0x6C, 0x01, 0x01, 0x03, 0xF5, 0x01, 0x08, 0x0D - .byte 0x32, 0x00, 0x08, 0x04, 0x07, 0x01, 0x32, 0x00, 0x08, 0x04, 0x07, 0x01, 0x02, 0x03, 0xDB, 0x01 - .byte 0x08, 0x0D, 0x33, 0x00, 0x18, 0x04, 0x6B, 0x00, 0x33, 0x00, 0x18, 0x04, 0x6B, 0x00, 0x03, 0x03 - .byte 0xAC, 0x01, 0x08, 0x0D, 0x34, 0x00, 0x1D, 0x05, 0x84, 0x00, 0x34, 0x00, 0x1D, 0x05, 0x84, 0x00 - .byte 0x04, 0x03, 0xB2, 0x01, 0x08, 0x0D, 0x35, 0x00, 0x8A, 0x05, 0xEB, 0x00, 0x35, 0x00, 0x8A, 0x05 - .byte 0xEB, 0x00, 0x05, 0x03, 0x66, 0x01, 0x08, 0x0D, 0x36, 0x00, 0x11, 0x05, 0x27, 0x01, 0x36, 0x00 - .byte 0x11, 0x05, 0x27, 0x01, 0x06, 0x03, 0x89, 0x01, 0x08, 0x0D, 0x37, 0x00, 0xCF, 0x04, 0xEE, 0x00 - .byte 0x37, 0x00, 0xCF, 0x04, 0xEE, 0x00, 0x07, 0x03, 0xE2, 0x01, 0x08, 0x0D, 0x38, 0x00, 0xB9, 0x04 - .byte 0xB8, 0x01, 0x38, 0x00, 0xB9, 0x04, 0xB8, 0x01, 0x08, 0x02, 0xFC, 0x01, 0x08, 0x0D, 0x39, 0x00 - .byte 0x0F, 0x04, 0xF7, 0x01, 0x39, 0x00, 0x0F, 0x04, 0xF7, 0x01, 0x09, 0x03, 0x2C, 0x01, 0x06, 0x15 - .byte 0x3A, 0x00, 0x90, 0x03, 0xC9, 0x00, 0x3A, 0x00, 0x90, 0x03, 0xC9, 0x00, 0x0A, 0x03, 0x97, 0x01 - .byte 0x08, 0x0D, 0x3B, 0x00, 0x0E, 0x05, 0xF3, 0x00, 0x3B, 0x00, 0x0E, 0x05, 0xF3, 0x00, 0x1E, 0x03 - .byte 0x16, 0x02, 0x08, 0x0D, 0xAE, 0x00, 0x52, 0x00, 0x2F, 0x01, 0xAE, 0x00, 0x52, 0x00, 0x2F, 0x01 - .byte 0x1F, 0x03, 0x10, 0x02, 0x08, 0x0D, 0x9B, 0x01, 0x08, 0x00, 0x0F, 0x00, 0x5E, 0x00, 0xED, 0x00 - .byte 0x0B, 0x01, 0x23, 0x00, 0x18, 0x01, 0x08, 0x0D, 0x18, 0x01, 0x2A, 0x00, 0x17, 0x00, 0x27, 0x00 - .byte 0x6A, 0x01, 0x0B, 0x01, 0x21, 0x00, 0x2B, 0x01, 0x08, 0x0D, 0x1E, 0x00, 0x8D, 0x03, 0x29, 0x01 - .byte 0x1E, 0x00, 0x8D, 0x03, 0x29, 0x01, 0x1B, 0x01, 0xA9, 0x00, 0x08, 0x0D, 0x24, 0x00, 0xD4, 0x01 - .byte 0xA3, 0x01, 0x24, 0x00, 0xD4, 0x01, 0xA3, 0x01, 0x24, 0x01, 0xFF, 0x01, 0x08, 0x0D, 0x0B, 0x00 - .byte 0x8F, 0x04, 0x6B, 0x00, 0x0B, 0x00, 0x8F, 0x04, 0x6B, 0x00, 0x25, 0x01, 0xD2, 0x01, 0x08, 0x0D - .byte 0x12, 0x00, 0x92, 0x05, 0xA4, 0x00, 0x12, 0x00, 0x92, 0x05, 0xA4, 0x00 -_020FA09C: - .byte 0x01, 0x01, 0x01, 0x1F - .byte 0x02, 0x01, 0x02, 0x1D, 0x03, 0x0F, 0x0A, 0x0A, 0x0C, 0x03, 0x0C, 0x1F -_020FA0AC: - .byte 0x01, 0x04, 0x00, 0x00 -_020FA0B0: - .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x00, 0x00, 0x00 -_020FA0B8: - .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 - .byte 0xFF, 0x00, 0x00, 0x00 -_020FA0C4: - .byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00 - .byte 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00 - .byte 0x64, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -_020FA0F8: - .byte 0xFD, 0xC8, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00 - .byte 0x45, 0xCA, 0x03, 0x02, 0x02, 0x00, 0x00, 0x00, 0x0D, 0xCF, 0x03, 0x02, 0x03, 0x00, 0x00, 0x00 - .byte 0xA9, 0xD1, 0x03, 0x02, 0x04, 0x00, 0x00, 0x00, 0x45, 0xD2, 0x03, 0x02, 0x05, 0x00, 0x00, 0x00 - .byte 0x19, 0xD3, 0x03, 0x02, 0x06, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00 - .byte 0x95, 0xD3, 0x03, 0x02, 0x08, 0x00, 0x00, 0x00, 0x89, 0xD4, 0x03, 0x02, 0x0E, 0x00, 0x00, 0x00 - .byte 0x01, 0xD5, 0x03, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x01, 0xD5, 0x03, 0x02, 0x0E, 0x00, 0x00, 0x00 - .byte 0x01, 0xD5, 0x03, 0x02, 0x0E, 0x00, 0x00, 0x00, 0xCD, 0xD2, 0x03, 0x02 - .public _020FA15C -_020FA15C: - .word sub_0203DEA4, sub_0203DEBC, sub_0203DED4, 0xFFFFFFFF - .public _020FA16C -_020FA16C: - .word sub_0203DE74, sub_0203DEBC, sub_0203DED4, 0xFFFFFFFF -_020FA17C: - .byte 0x40, 0x00, 0x00, 0x00 - .byte 0xFF, 0xFF, 0xFF, 0xFF, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00 -_020FA190: - .byte 0x3C, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xB7, 0x02, 0x00, 0x00, 0x8D, 0x01, 0x00, 0x00 - .byte 0x01, 0x00, 0x00, 0x00 -_020FA1A4: - .byte 0x00, 0xFF, 0x00, 0x00 -_020FA1A8: - .byte 0x01, 0x04, 0x00, 0x00 -_020FA1AC: - .byte 0x04, 0xFF, 0x00, 0x00 -_020FA1B0: - .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x00, 0x00, 0x00 -_020FA1B8: - .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 - .byte 0xFF, 0x00, 0x00, 0x00 -_020FA1C4: - .word sub_020192D0, sub_0201935C, sub_02019490, SDK_OVERLAY_OVY_39_ID -_020FA1D4: - .word ov105_021E5900, ov105_021E59DC, ov105_021E5B14, SDK_OVERLAY_OVY_105_ID -_020FA1E4: - .word ov68_021E5900, ov68_021E5968, ov68_021E5A3C, SDK_OVERLAY_OVY_68_ID -_020FA1F4: - .word ov76_021E5900, ov76_021E5B60, ov76_021E5AA0, SDK_OVERLAY_OVY_76_ID -_020FA204: - .word ov64_021E5900, ov64_021E5A18, ov64_021E59C8, SDK_OVERLAY_OVY_64_ID -_020FA214: - .word ov63_0221BE20, ov63_0221BF88, ov63_0221BF28, SDK_OVERLAY_OVY_63_ID -_020FA224: - .word ov69_021E5900, ov69_021E5A34, ov69_021E6080, SDK_OVERLAY_OVY_69_ID -_020FA234: - .word ov122_021E82A8, ov122_021E8360, ov122_021E8308, SDK_OVERLAY_OVY_122_ID -_020FA244: - .word ov96_021E5900, ov96_021E5A40, ov96_021E5B88, SDK_OVERLAY_OVY_96_ID -_020FA254: - .word ov52_021E80C0, ov52_021E8248, ov52_021E82AC, SDK_OVERLAY_OVY_52_ID -_020FA264: - .word ov70_02238430, ov70_022385C0, ov70_022386F4, SDK_OVERLAY_OVY_70_ID -_020FA274: - .word ov61_021E5900, ov61_021E5A38, ov61_021E5F74, SDK_OVERLAY_OVY_61_ID -_020FA284: - .word ov18_021E5AA0, ov18_021E5B64, ov18_021E5B80, SDK_OVERLAY_OVY_18_ID -_020FA294: - .word ov50_021E5924, ov50_021E595C, ov50_021E59A8, SDK_OVERLAY_OVY_50_ID -_020FA2A4: - .word ov43_02229EE0, ov43_02229FB4, ov43_0222A0AC, SDK_OVERLAY_OVY_43_ID -_020FA2B4: - .word ov73_021E5900, ov73_021E5AB8, ov73_021E5BAC, SDK_OVERLAY_OVY_73_ID -_020FA2C4: - .word ov37_021E5900, ov37_021E5A84, ov37_021E5B94, SDK_OVERLAY_OVY_37_ID -_020FA2D4: - .word ov71_02246960, ov71_02246BB8, ov71_02246B58, SDK_OVERLAY_OVY_71_ID -_020FA2E4: - .word ov67_021E5900, ov67_021E5984, ov67_021E5968, SDK_OVERLAY_OVY_67_ID -_020FA2F4: - .word ov103_021EC940, ov103_021EC988, ov103_021EC9A4, SDK_OVERLAY_OVY_103_ID -_020FA304: - .word ov78_021E5900, ov78_021E59EC, ov78_021E5B24, SDK_OVERLAY_OVY_78_ID -_020FA314: - .word ov99_021E7818, ov99_021E794C, ov99_021E78F0, SDK_OVERLAY_OVY_99_ID -_020FA324: - .word ov99_021E8304, ov99_021E83F4, ov99_021E83AC, SDK_OVERLAY_OVY_99_ID -_020FA334: - .word ov72_02237E20, ov72_02237F9C, ov72_02238070, SDK_OVERLAY_OVY_72_ID -_020FA344: - .word ov99_021E5900, ov99_021E5A38, ov99_021E5A04, SDK_OVERLAY_OVY_99_ID -_020FA354: - .word ov54_021E5900, ov54_021E5B3C, ov54_021E5A10, SDK_OVERLAY_OVY_54_ID -_020FA364: - .word ov111_021E5900, ov111_021E59B8, ov111_021E5960, SDK_OVERLAY_OVY_111_ID -_020FA374: - .word ov58_022378E4, ov58_02237924, ov58_0223799C, SDK_OVERLAY_OVY_58_ID -_020FA384: - .word ov16_0220196C, ov16_022019B8, ov16_02201A04, SDK_OVERLAY_OVY_16_ID -_020FA394: - .word ov113_021E5900, ov113_021E5968, ov113_021E59C8, SDK_OVERLAY_OVY_113_ID -_020FA3A4: - .word ov110_021E5900, ov110_021E5974, ov110_021E59F4, SDK_OVERLAY_OVY_110_ID -_020FA3B4: - .word ov109_021E5900, ov109_021E5968, ov109_021E59F0, SDK_OVERLAY_OVY_109_ID -_020FA3C4: - .word ov108_021E8850, ov108_021E8904, ov108_021E88C4, SDK_OVERLAY_OVY_108_ID -_020FA3D4: - .word ov108_021E5900, ov108_021E5978, ov108_021E5948, SDK_OVERLAY_OVY_108_ID -_020FA3E4: - .word ov101_Radio_OvyInit, ov101_Radio_OvyExec, ov101_Radio_OvyExit, SDK_OVERLAY_OVY_101_ID -_020FA3F4: - .word ov100_021E642C, ov100_021E6520, ov100_021E65BC, SDK_OVERLAY_OVY_100_ID -_020FA404: - .word ov102_021E7740, ov102_021E77B8, ov102_021E7868, SDK_OVERLAY_OVY_102_ID -_020FA414: - .word ov14_021E5900, ov14_021E596C, ov14_021E5988, SDK_OVERLAY_OVY_14_ID -_020FA424: - .word ov99_021E677C, ov99_021E6888, ov99_021E6840, SDK_OVERLAY_OVY_99_ID -_020FA434: - .word ov55_021E5924, ov55_021E598C, ov55_021E5AE8, SDK_OVERLAY_OVY_55_ID -_020FA444: - .word ov73_021E7E4C, ov73_021E7FB8, ov73_021E808C, SDK_OVERLAY_OVY_72_ID -_020FA454: - .word ov104_021E5900, ov104_021E59E4, ov104_021E5B14, SDK_OVERLAY_OVY_104_ID -_020FA464: - .word ov15_021F9380, ov15_021F9608, ov15_021F982C, SDK_OVERLAY_OVY_15_ID -_020FA474: - .word sub_02097B78, sub_02097BAC, sub_02097BD0, SDK_OVERLAY_OVY_106_ID -_020FA484: - .word sub_0203E3A8, sub_0203E3AC, sub_0203E3C0, SDK_OVERLAY_OVY_12_ID -_020FA494: - .word ov121_021E5900, ov121_021E590C, ov121_021E59BC, SDK_OVERLAY_OVY_121_ID -_020FA4A4: - .byte 0xFA, 0x28, 0x07, 0x01, 0xB1, 0x01, 0xD2, 0x28, 0x08, 0x01, 0x13, 0x00 - .byte 0xC8, 0x28, 0x02, 0x00, 0xEC, 0x02, 0xA0, 0x28, 0x97, 0x00, 0xF6, 0x00, 0x6E, 0x28, 0xB8, 0x03 - .byte 0xD6, 0x02, 0x3C, 0x28, 0xDE, 0x02, 0xBC, 0x01, 0xD8, 0x27, 0x90, 0x00, 0xD1, 0x00, 0xA6, 0x27 - .byte 0xBB, 0x03, 0xDC, 0x02, 0x74, 0x27, 0xBA, 0x03, 0xDD, 0x02, 0x10, 0x27, 0x92, 0x00, 0xD3, 0x00 - .byte 0xDE, 0x26, 0x94, 0x00, 0x9A, 0x02, 0xAC, 0x26, 0x88, 0x00, 0x28, 0x00, 0x7A, 0x26, 0xA7, 0x00 - .byte 0x38, 0x01, 0x48, 0x26, 0xA6, 0x00, 0x2B, 0x00, 0xE4, 0x25, 0xA3, 0x00, 0x0A, 0x01, 0x80, 0x25 - .byte 0x95, 0x00, 0x28, 0x00, 0x1C, 0x25, 0x09, 0x01, 0xB7, 0x01, 0x54, 0x24, 0x8F, 0x00, 0xCC, 0x00 - .byte 0xF0, 0x23, 0xA4, 0x00, 0x0B, 0x01, 0x8C, 0x23, 0x00, 0x00, 0x0E, 0x00, 0x28, 0x23, 0x04, 0x00 - .byte 0x2E, 0x00, 0xC4, 0x22, 0xA5, 0x00, 0x0C, 0x01, 0x60, 0x22, 0x06, 0x01, 0xAB, 0x01, 0x40, 0x1F - .byte 0x91, 0x00, 0xD2, 0x00, 0x58, 0x1B, 0x8D, 0x00, 0xC7, 0x00, 0x88, 0x13, 0xB9, 0x03, 0x28, 0x00 - .byte 0xB8, 0x0B, 0xB9, 0x03, 0x28, 0x00, 0xF0, 0x0A, 0x96, 0x00, 0x17, 0x00, 0xC4, 0x09, 0x01, 0x00 - .byte 0x14, 0x00, 0xD0, 0x07, 0x03, 0x00, 0x28, 0x00 -_020FA558: - .byte 0x11, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE1, 0x00 - .byte 0x11, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0E, 0x00 - .byte 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x10, 0x00 - .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x11, 0x00, 0x28, 0x00, 0x01, 0x00, 0x00, 0x00, 0x12, 0x00 - .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6C, 0x00 - .byte 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x92, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0x93, 0x00 - .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x94, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x95, 0x00 - .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x96, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x97, 0x00 - .byte 0x16, 0x00, 0x01, 0x00, 0x00, 0x00, 0x98, 0x00, 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9A, 0x00 - .byte 0x3B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x99, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9B, 0x00 - .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x31, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9D, 0x00 - .byte 0x5D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00 - .byte 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x61, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x06, 0x00 - .byte 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1C, 0x00 - .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x12, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1E, 0x00 - .byte 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x20, 0x00 - .byte 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x21, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD3, 0x00 - .byte 0x4F, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD4, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD5, 0x00 - .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD6, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD7, 0x00 - .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00 - .byte 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x09, 0x00, 0x16, 0x00, 0x01, 0x00, 0x00, 0x00, 0x34, 0x00 - .byte 0x1A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x35, 0x00, 0x12, 0x00, 0x01, 0x00, 0x00, 0x00, 0x43, 0x00 - .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x44, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x45, 0x00 - .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x15, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0B, 0x00 - .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x22, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x23, 0x00 - .byte 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9F, 0x00, 0x2E, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA0, 0x00 - .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0D, 0x00 - .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x84, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x85, 0x00 - .byte 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x14, 0x00 - .byte 0x12, 0x00, 0x01, 0x00, 0x00, 0x00, 0x41, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x15, 0x00 - .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7D, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7E, 0x00 - .byte 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x80, 0x00 - .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x81, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3E, 0x00 - .byte 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x30, 0x00, 0x01, 0x00, 0x00, 0x00, 0x40, 0x00 - .byte 0x2D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x16, 0x00, 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x62, 0x00 - .byte 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x87, 0x00, 0x39, 0x00, 0x01, 0x00, 0x00, 0x00, 0x88, 0x00 - .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x17, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x89, 0x00 - .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x42, 0x00, 0x2E, 0x00, 0x01, 0x00, 0x00, 0x00, 0x56, 0x00 - .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA1, 0x00 - .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x18, 0x00, 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0x63, 0x00 - .byte 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAB, 0x00 - .byte 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAC, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAD, 0x00 - .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x49, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4A, 0x00 - .byte 0x4C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBF, 0x00, 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC0, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC1, 0x00, 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4B, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x19, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1A, 0x00 - .byte 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD1, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x27, 0x00 - .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0x28, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE2, 0x00 - .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x29, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x82, 0x00 - .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x83, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2A, 0x00 - .byte 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2C, 0x00 - .byte 0x4D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2D, 0x00, 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2E, 0x00 - .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8D, 0x00 - .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2F, 0x00 - .byte 0x2D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x30, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8F, 0x00 - .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x90, 0x00, 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x31, 0x00 - .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x32, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x33, 0x00 - .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x36, 0x00, 0x3E, 0x00, 0x01, 0x00, 0x00, 0x00, 0x37, 0x00 - .byte 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x24, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x25, 0x00 - .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x66, 0x00, 0x28, 0x00, 0x01, 0x00, 0x00, 0x00, 0x64, 0x00 - .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x46, 0x00, 0x14, 0x00, 0x01, 0x00, 0x00, 0x00, 0x48, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE4, 0x00, 0x30, 0x00, 0x01, 0x00, 0x00, 0x00, 0x47, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x52, 0x00 - .byte 0x29, 0x00, 0x01, 0x00, 0x00, 0x00, 0x53, 0x00, 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x65, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB5, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB6, 0x00 - .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB7, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB8, 0x00 - .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4F, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x50, 0x00 - .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB9, 0x00, 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBA, 0x00 - .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBD, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBB, 0x00 - .byte 0x34, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBC, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0xBE, 0x00 - .byte 0x2F, 0x00, 0x01, 0x00, 0x00, 0x00, 0x54, 0x00, 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x67, 0x00 - .byte 0x5D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA2, 0x00 - .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA3, 0x00, 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA4, 0x00 - .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x38, 0x00, 0x31, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE0, 0x00 - .byte 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x39, 0x00, 0x3D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3A, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x68, 0x00, 0x3C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3B, 0x00 - .byte 0x3A, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3D, 0x00 - .byte 0x2D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA9, 0x00, 0x30, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC5, 0x00 - .byte 0x26, 0x00, 0x01, 0x00, 0x00, 0x00, 0x69, 0x00, 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6A, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7A, 0x00 - .byte 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x29, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6E, 0x00 - .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x86, 0x00, 0x31, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6F, 0x00 - .byte 0x28, 0x00, 0x01, 0x00, 0x00, 0x00, 0x70, 0x00, 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0x55, 0x00 - .byte 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x57, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD8, 0x00 - .byte 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD9, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDA, 0x00 - .byte 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDB, 0x00, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDC, 0x00 - .byte 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC6, 0x00, 0x37, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC7, 0x00 - .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE3, 0x00, 0x5B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x91, 0x00 - .byte 0x5B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8A, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8B, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC3, 0x00, 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC4, 0x00 - .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x71, 0x00, 0x57, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC2, 0x00 - .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC8, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAE, 0x00 - .byte 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xAF, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB0, 0x00 - .byte 0x5A, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB1, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x72, 0x00 - .byte 0x2F, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x5B, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA7, 0x00 - .byte 0x4E, 0x00, 0x01, 0x00, 0x00, 0x00, 0x58, 0x00, 0x14, 0x00, 0x01, 0x00, 0x00, 0x00, 0x59, 0x00 - .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5B, 0x00 - .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD2, 0x00 - .byte 0x34, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDF, 0x00, 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB4, 0x00 - .byte 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB2, 0x00, 0x58, 0x00, 0x01, 0x00, 0x00, 0x00, 0xB3, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCF, 0x00, 0x29, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD0, 0x00 - .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x73, 0x00, 0x17, 0x00, 0x01, 0x00, 0x00, 0x00, 0x74, 0x00 - .byte 0x38, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4D, 0x00 - .byte 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC9, 0x00, 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA5, 0x00 - .byte 0x27, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCD, 0x00 - .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCA, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCB, 0x00 - .byte 0x18, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x2F, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDE, 0x00 - .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0xCE, 0x00, 0x19, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5D, 0x00 - .byte 0x32, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x1C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5F, 0x00 - .byte 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x60, 0x00, 0x33, 0x00, 0x01, 0x00, 0x00, 0x00, 0x75, 0x00 - .byte 0x59, 0x00, 0x01, 0x00, 0x00, 0x00, 0x76, 0x00, 0x34, 0x00, 0x01, 0x00, 0x00, 0x00, 0x77, 0x00 - .byte 0x1B, 0x00, 0x01, 0x00, 0x00, 0x00, 0x78, 0x00, 0x2E, 0x00, 0x01, 0x00, 0x00, 0x00, 0xDD, 0x00 - .byte 0x1D, 0x00, 0x01, 0x00, 0x00, 0x00, 0x79, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7B, 0x00 - .byte 0x5C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7C, 0x00, 0xE2, 0x00, 0x01, 0x00, 0x00, 0x00, 0x26, 0x00 - .byte 0xE3, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE5, 0x00, 0x35, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE6, 0x00 -_020FAC90: - .byte 0x55, 0x03, 0x00, 0x00 -_020FAC94: - .byte 0x03, 0x19, 0x0D, 0x06, 0x04, 0x0D, 0x1F, 0x02 -_020FAC9C: - .byte 0x01, 0x00, 0x00, 0x00 - .byte 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00 -_020FACB0: - .byte 0x14, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00 - .byte 0x19, 0x00, 0x00, 0x00 -_020FACC4: - .byte 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0x07 - .byte 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0x07 -_020FACDC: - .byte 0x00, 0x30, 0x08, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00, 0x00, 0xD0, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x10, 0x04, 0x00, 0x00, 0x80, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x04, 0x00 -gScriptCommandTable: ; 0x020FAD00 - .word sub_02040890 - .word sub_02040894 - .word sub_02040898 - .word sub_020408A4 - .word sub_02040918 - .word sub_02040930 - .word sub_0204094C - .word sub_02040968 - .word sub_02040980 - .word sub_0204099C - .word sub_020409BC - .word sub_020409E8 - .word sub_02040A18 - .word sub_02040A40 - .word sub_02040A68 - .word sub_02040A90 - .word sub_02040AAC - .word sub_02040ACC - .word sub_02040AF8 - .word sub_02040B30 - .word sub_02040B68 - .word sub_02040BFC - .word sub_02040C2C - .word sub_02040C44 - .word sub_02040C7C - .word sub_02040CAC - .word sub_02040CE0 - .word sub_02040CF8 - .word sub_02040D04 - .word sub_02040D38 - .word sub_02040D6C - .word sub_02040D84 - .word sub_02040D9C - .word sub_02040DF4 - .word sub_02040E1C - .word sub_02040DB8 - .word sub_02040E44 - .word sub_02040E68 - .word sub_02040E8C - .word sub_02040EB4 - .word sub_02040EE4 - .word sub_02040F14 - .word sub_02040F38 - .word sub_02040F68 - .word ov01_021EF050 - .word ov01_021EF31C - .word ov01_021EF35C - .word ov01_021EF3E0 - .word sub_02040F94 - .word sub_02040FF0 - .word sub_02041064 - .word sub_020410E0 - .word sub_02041110 - .word sub_02041168 - .word sub_020411A4 - .word sub_02041328 - .word sub_020413D4 - .word sub_02041410 - .word sub_0204142C - .word sub_0204146C - .word sub_020415C4 - .word sub_02041674 - .word sub_020411D8 - .word sub_02041684 - .word sub_020417EC - .word sub_02041808 - .word sub_02041824 - .word sub_02041890 - .word sub_02041950 - .word sub_0204196C - .word sub_02041988 - .word sub_020419E8 - .word sub_02041A98 - .word sub_02049228 - .word sub_02049244 - .word sub_02049260 - .word sub_020492A0 - .word sub_020492E0 - .word sub_02049304 - .word sub_02049320 - .word sub_02049134 - .word sub_02049144 - .word sub_02049158 - .word sub_02049170 - .word sub_02049188 - .word sub_020491C4 - .word sub_020491E8 - .word sub_02049204 - .word sub_02049214 - .word sub_02049344 - .word sub_0204937C - .word sub_020493B4 - .word sub_020493C0 - .word sub_020493D4 - .word sub_02041B04 - .word sub_02041C98 - .word sub_02041D40 - .word sub_02041F50 - .word sub_02041F60 - .word sub_02041F8C - .word sub_02041FB8 - .word sub_02042000 - .word sub_02042034 - .word sub_020420CC - .word sub_0204219C - .word sub_020422B4 - .word sub_020422F8 - .word sub_02042394 - .word sub_02042478 - .word sub_020424AC - .word sub_0204CA50 - .word sub_0204CA74 - .word sub_0204CAC8 - .word ov01_02203138 - .word ov01_02203188 - .word ov01_022031A0 - .word ov20_022598C0 - .word ov22_0225991C - .word ov22_02259934 - .word ov22_02259960 - .word ov22_0225998C - .word ov22_022599B8 - .word ov22_02259ADC - .word ov22_02259B08 - .word ov22_02259B34 - .word sub_0204E9D8 - .word sub_0204EA30 - .word sub_0204EA88 - .word sub_0204EAE0 - .word sub_0204EB7C - .word sub_0204EBB0 - .word sub_02043964 - .word ov01_021EF41C - .word ov01_02202674 - .word ov01_022026B4 - .word ov01_0220271C - .word sub_02042530 - .word sub_0204D088 - .word sub_0204D248 - .word sub_0204D2D0 - .word sub_0204D328 - .word sub_0204D3CC - .word sub_020428D8 - .word sub_020431E4 - .word sub_02046F34 - .word sub_02046F6C - .word sub_02046FC8 - .word sub_02046FFC - .word sub_020472C4 - .word sub_020472E8 - .word sub_02042A10 - .word sub_02042AB0 - .word sub_02042AC0 - .word sub_02042ACC - .word sub_02042D00 - .word sub_02042D58 - .word sub_02042E48 - .word sub_02042E5C - .word sub_02042F04 - .word sub_02042F5C - .word sub_02042F78 - .word sub_02042F88 - .word sub_02042F98 - .word sub_02042FC4 - .word sub_02042FDC - .word sub_02043044 - .word sub_020430A4 - .word sub_020430C4 - .word sub_02049460 - .word sub_0204952C - .word sub_0204959C - .word sub_020495C4 - .word sub_020431B4 - .word sub_02043214 - .word sub_02043400 - .word sub_02043448 - .word sub_0204346C - .word sub_020435E8 - .word sub_02043618 - .word sub_02043648 - .word sub_02043678 - .word sub_020436C4 - .word sub_020436F4 - .word sub_02043724 - .word sub_020437B4 - .word sub_020437E4 - .word sub_02043884 - .word sub_0204389C - .word sub_020438C4 - .word sub_020438DC - .word sub_02048414 - .word sub_02048448 - .word sub_0204846C - .word sub_02048490 - .word sub_02048510 - .word sub_02048548 - .word sub_02048580 - .word sub_020485BC - .word sub_020485F4 - .word sub_020486F0 - .word sub_02048794 - .word sub_020487CC - .word sub_02048818 - .word sub_020488A4 - .word sub_020488F4 - .word sub_02048944 - .word sub_02043938 - .word sub_02048994 - .word sub_020489CC - .word sub_020489F4 - .word sub_02048A1C - .word sub_020438EC - .word sub_02049618 - .word sub_02049648 - .word sub_02043990 - .word sub_02049750 - .word sub_020497D8 - .word sub_02049860 - .word sub_02049894 - .word sub_020498C8 - .word sub_020498D4 - .word sub_02049904 - .word sub_02049980 - .word sub_020499AC - .word sub_020499D8 - .word sub_02049A00 - .word sub_02043A28 - .word sub_02043AC0 - .word sub_02043B58 - .word sub_02043B64 - .word sub_02043B70 - .word sub_02043BA0 - .word sub_0206BB2C - .word sub_0206BB5C - .word sub_0206BBAC - .word sub_0206BC2C - .word sub_0206BC64 - .word sub_0206BC8C - .word sub_0204DB3C - .word sub_0204DBA0 - .word sub_02043BA4 - .word sub_02043C24 - .word sub_02043C54 - .word sub_02043CB4 - .word sub_02043CE4 - .word sub_02043D14 - .word sub_02043D44 - .word sub_02043D74 - .word sub_02043D78 - .word sub_02043E08 - .word sub_02043F0C - .word sub_02043F48 - .word sub_02043F54 - .word sub_02043F70 - .word sub_02043FC4 - .word sub_02042DC0 - .word sub_02042DFC - .word sub_02044024 - .word sub_02044070 - .word sub_0204407C - .word sub_020440AC - .word sub_020440E4 - .word sub_0204435C - .word sub_0204436C - .word sub_02044124 - .word sub_02044190 - .word sub_020441A0 - .word sub_020441D8 - .word sub_02044270 - .word sub_020442FC - .word sub_02044348 - .word sub_02044380 - .word sub_020443BC - .word sub_02044418 - .word sub_020442AC - .word sub_02048060 - .word sub_02048158 - .word sub_02048194 - .word sub_020481DC - .word sub_020445C0 - .word sub_020445CC - .word sub_020445F8 - .word sub_02044628 - .word sub_02044640 - .word sub_0204468C - .word sub_0204469C - .word sub_02044480 - .word sub_02044490 - .word sub_020444CC - .word sub_0204458C - .word sub_0204E610 - .word sub_0204E640 - .word sub_0204E654 - .word sub_0204E684 - .word sub_0204E6A0 - .word sub_0204E6E8 - .word sub_0204E748 - .word sub_0204E71C - .word sub_0204E774 - .word sub_0204E788 - .word sub_0204E7B4 - .word sub_0204E7C8 - .word sub_0204E838 - .word sub_0204E864 - .word sub_0204E878 - .word sub_0204E88C - .word sub_0204E8B8 - .word sub_02044954 - .word sub_020449AC - .word sub_020449C4 - .word sub_020449DC - .word sub_020449F4 - .word sub_0204CB5C - .word sub_0204CB7C - .word sub_02044A0C - .word sub_02044A1C - .word sub_02044A44 - .word sub_02044A6C - .word sub_02044AA8 - .word sub_02044AB8 - .word sub_02044AE0 - .word sub_02044AF0 - .word sub_02044B10 - .word sub_02044B40 - .word sub_02044B50 - .word sub_02044B60 - .word sub_02044B70 - .word sub_02044B80 - .word sub_02044B9C - .word sub_02044BB8 - .word sub_02044BC8 - .word sub_02044BD8 - .word sub_0204D95C - .word sub_020430D4 - .word sub_02043124 - .word sub_020446AC - .word sub_02048A7C - .word sub_02048AF4 - .word sub_020446EC - .word sub_0204473C - .word sub_020447CC - .word sub_02044804 - .word sub_0204483C - .word sub_0204488C - .word sub_020448DC - .word sub_02041728 - .word sub_02041758 - .word sub_02044928 - .word sub_02041018 - .word sub_02042574 - .word sub_020425D4 - .word sub_020425F8 - .word sub_02042860 - .word sub_0204280C - .word sub_0204D180 - .word sub_0204D1DC - .word sub_0204D988 - .word sub_0204D9E0 - .word sub_0204DA68 - .word sub_0204DAE4 - .word sub_0204CA98 - .word sub_0204CBF8 - .word sub_02045394 - .word sub_020453D0 - .word sub_0204D154 - .word sub_0204CBAC - .word sub_0204CBC4 - .word sub_0204CC58 - .word sub_0204CB0C - .word sub_02044C54 - .word sub_02043164 - .word sub_0204CCAC - .word sub_0204CCFC - .word sub_0204CD34 - .word sub_02044C64 - .word sub_02044C98 - .word sub_02044CCC - .word sub_02044CFC - .word sub_02044D28 - .word sub_02044D68 - .word sub_02044D8C - .word sub_02044DC4 - .word sub_0204D6C0 - .word sub_0204D708 - .word sub_0204D7D8 - .word sub_0204CD74 - .word sub_0204236C - .word sub_0204CE00 - .word sub_0204CE30 - .word sub_0204DF54 - .word ov20_02259A88 - .word ov20_02259B40 - .word ov20_02259BF4 - .word ov20_02259B88 - .word sub_0204EBE8 - .word sub_0204EC30 - .word sub_0204DBE8 - .word sub_0204DC90 - .word sub_0204DCD4 - .word sub_02048B64 - .word sub_0204E8CC - .word sub_0204E928 - .word sub_0204E980 - .word sub_02044DFC - .word sub_02044E40 - .word sub_02044E9C - .word sub_02044F00 - .word sub_02044F30 - .word sub_02042E8C - .word sub_02049CD8 - .word sub_02049CA8 - .word sub_02049CE8 - .word sub_02049D04 - .word sub_02049FC8 - .word sub_0204A048 - .word sub_0204A070 - .word sub_0204A098 - .word sub_0204A184 - .word sub_0204A230 - .word sub_0204A27C - .word sub_02045040 - .word sub_02045060 - .word sub_020450B8 - .word sub_02044F74 - .word sub_02044FAC - .word sub_02044FE4 - .word sub_0204DD34 - .word sub_02045028 - .word sub_0204DEE4 - .word ov20_022598C0 - .word sub_02047060 - .word sub_020470F4 - .word ov21_0225990C - .word ov21_02259960 - .word sub_0204D4D0 - .word sub_0204D48C - .word sub_02042A20 - .word sub_02040900 - .word ov01_021EF064 - .word ov01_021EF0A4 - .word ov01_021EF0F0 - .word ov01_021EF154 - .word ov01_021EF194 - .word ov01_021EF1E0 - .word ov01_021EF268 - .word sub_02043548 - .word sub_02043574 - .word sub_02045188 - .word sub_020434DC - .word sub_02043538 - .word sub_02042E2C - .word sub_02042AFC - .word sub_02042B1C - .word sub_02042C2C - .word sub_02042CA8 - .word ov01_021EF488 - .word sub_0204523C - .word sub_0204D5C0 - .word sub_0204D634 - .word sub_02045230 - .word sub_02047120 - .word sub_02047168 - .word sub_0204720C - .word sub_02045254 - .word sub_02045264 - .word sub_02049A6C - .word sub_0204EC7C - .word sub_0204ED3C - .word sub_0204ED7C - .word sub_0204EDDC - .word sub_0204527C - .word sub_020452B0 - .word sub_020452E0 - .word sub_02045340 - .word sub_02045374 - .word sub_02045428 - .word sub_0204542C - .word sub_02045440 - .word sub_0204E150 - .word sub_0204E1C4 - .word sub_0204E26C - .word sub_0204E2D8 - .word sub_02048BCC - .word sub_020454A4 - .word sub_02045540 - .word sub_02045568 - .word sub_02040894 - .word sub_02045588 - .word sub_020455B0 - .word sub_0204BDA4 - .word sub_0204EE20 - .word sub_0204EE38 - .word sub_020432FC - .word sub_0204335C - .word sub_020433BC - .word sub_020455F0 - .word sub_0204D8A0 - .word sub_0204D8F0 - .word sub_0204560C - .word sub_020456D8 - .word sub_02045780 - .word sub_0204579C - .word sub_020457B8 - .word sub_02048EE0 - .word sub_02048F10 - .word sub_0204908C - .word sub_02048738 - .word sub_0204583C - .word sub_0204C874 - .word sub_0204C8D4 - .word sub_0204C91C - .word sub_0204C9C0 - .word sub_02045868 - .word sub_0204588C - .word sub_020458A4 - .word sub_020458CC - .word sub_02048B2C - .word sub_020458EC - .word sub_0204592C - .word sub_020459AC - .word sub_02045A60 - .word sub_02045A74 - .word sub_02045A88 - .word sub_02045AAC - .word sub_02045B40 - .word sub_02045BA4 - .word sub_02045BCC - .word ov01_021EF2E0 - .word sub_02045C64 - .word sub_0204D8C8 - .word sub_02045C84 - .word sub_02045CC4 - .word ov22_02259A10 - .word ov22_02259A9C - .word sub_02045CFC - .word sub_0204D564 - .word sub_02045D28 - .word sub_02045D6C - .word sub_02045D7C - .word sub_02045E1C - .word sub_02045DE8 - .word sub_0204863C - .word sub_0204D840 - .word sub_02045E54 - .word sub_020493E4 - .word sub_02045EA8 - .word sub_02045ED8 - .word sub_02042BAC - .word sub_02042C44 - .word sub_02042C5C - .word sub_02045F18 - .word sub_02045F80 - .word sub_02045FC4 - .word sub_02046038 - .word sub_0204A2EC - .word sub_0204A31C - .word sub_0204A360 - .word sub_0204A3A4 - .word sub_02044534 - .word sub_0204184C - .word sub_02046078 - .word ov01_02201A50 - .word sub_020496DC - .word sub_02041B74 - .word sub_02046108 - .word sub_02046130 - .word sub_020425A4 - .word sub_0204E5BC - .word sub_0204615C - .word ov22_022599E4 - .word ov22_02259A50 - .word sub_020461A0 - .word ov01_02202648 - .word sub_02046290 - .word sub_020424E8 - .word sub_0204910C - .word sub_020462A8 - .word sub_020462D8 - .word sub_020462E4 - .word sub_020462F0 - .word sub_02048C10 - .word sub_02041E84 - .word sub_02046300 - .word sub_02046360 - .word sub_0204E338 - .word sub_020418DC - .word sub_02044230 - .word sub_02044674 - .word sub_02049950 - .word sub_02043E5C - .word sub_0204639C - .word sub_02043870 - .word ov01_021EF398 - .word sub_020463C4 - .word sub_020463F4 - .word sub_02046420 - .word sub_02046B1C - .word sub_02046B48 - .word sub_02046B64 - .word sub_02046BB4 - .word sub_02046BC4 - .word sub_02046BDC - .word sub_02046CB4 - .word sub_02046CF0 - .word sub_02046D10 - .word sub_02046D5C - .word sub_02046DA8 - .word sub_02046DF8 - .word sub_02046E38 - .word sub_02046E5C - .word sub_02046E80 - .word sub_02046E9C - .word sub_02045310 - .word sub_0204723C - .word sub_0204727C - .word sub_02047304 - .word sub_0204731C - .word sub_02047348 - .word ov01_02202308 - .word sub_0204E7DC - .word sub_0204E808 - .word sub_02047358 - .word sub_020473D8 - .word sub_0204BC98 - .word sub_0204BCCC - .word sub_0204BD04 - .word sub_02048C80 - .word sub_02046438 - .word sub_0204EE50 - .word sub_020432A0 - .word sub_020432CC - .word sub_020464E0 - .word sub_0204DFE4 - .word sub_0204EF40 - .word sub_0204F1AC - .word sub_02042644 - .word sub_0204F174 - .word sub_0204F8DC - .word sub_0204FAD4 - .word sub_020426C4 - .word sub_0204F9DC - .word sub_02043FEC - .word sub_02043FFC - .word sub_0204FE78 - .word sub_02050014 - .word sub_02042768 - .word sub_0204FF78 - .word sub_0204E0BC - .word ov01_02200AF0 - .word sub_02046554 - .word sub_02046584 - .word sub_020465A0 - .word ov01_02202B00 - .word ov01_02202E68 - .word ov01_02202B78 - .word ov01_02202BD0 - .word ov01_02202C28 - .word ov01_022011D4 - .word sub_020483D8 - .word ov01_02201424 - .word sub_02048C48 - .word sub_0204869C - .word sub_020465FC - .word sub_02046674 - .word sub_02049418 - .word sub_0204941C - .word sub_02049440 - .word sub_020466A8 - .word sub_020484D8 - .word sub_0204EB38 - .word ov01_02201594 - .word ov01_0220178C - .word ov01_022017DC - .word sub_020466E0 - .word ov01_02201470 - .word ov01_02201518 - .word ov01_02201844 - .word sub_02041A48 - .word sub_02042110 - .word sub_02042184 - .word sub_020468F4 - .word sub_02042CE0 - .word sub_02046914 - .word sub_02049A44 - .word sub_02042948 - .word sub_02044BE8 - .word sub_02043EB8 - .word sub_02045818 - .word sub_0204E3CC - .word ov01_02201304 - .word sub_0204CFB8 - .word sub_02046970 - .word sub_0204F500 - .word sub_0204F6D0 - .word sub_0204F778 - .word sub_02041A0C - .word sub_020469B4 - .word sub_0204F7FC - .word sub_02046A1C - .word ov01_0220188C - .word ov01_0220192C - .word sub_0204E470 - .word ov01_0220197C - .word ov01_02201990 - .word sub_0204512C - .word sub_02045160 - .word sub_02043008 - .word ov01_022019B0 - .word ov01_022019F0 - .word ov01_02201A40 - .word ov03_02256B88 - .word sub_02047414 - .word sub_02047424 - .word sub_0204749C - .word ov01_02201B14 - .word sub_0204CE60 - .word ov03_0225894C - .word ov03_02258978 - .word ov03_02258998 - .word ov03_022589D4 - .word ov03_02258A18 - .word ov03_02258BDC - .word sub_020474D8 - .word sub_02047518 - .word ov01_02201B40 - .word ov01_02201C08 - .word ov01_02201C60 - .word sub_02047570 - .word sub_0204759C - .word sub_020475C0 - .word sub_020475F0 - .word sub_02047634 - .word sub_02047644 - .word sub_02047664 - .word sub_0204769C - .word ov01_02201C70 - .word ov01_02201C9C - .word ov01_02201CB4 - .word ov01_02201CE0 - .word ov01_02201D1C - .word ov01_02201D4C - .word ov01_02201DA4 - .word ov01_02203094 - .word ov01_02201F10 - .word ov01_02201F30 - .word ov01_02202480 - .word sub_020476B4 - .word sub_0204771C - .word sub_02047790 - .word sub_020477F8 - .word sub_02047814 - .word sub_02047830 - .word sub_02047888 - .word sub_02047AE8 - .word sub_02047B38 - .word sub_02047B5C - .word sub_02047B6C - .word sub_02047B7C - .word sub_02047B8C - .word sub_02047BA4 - .word sub_02047BB4 - .word sub_02047BC4 - .word sub_02047BDC - .word sub_02047BF4 - .word sub_02047C04 - .word sub_02047C14 - .word sub_02047C24 - .word sub_02047C34 - .word sub_02047C44 - .word sub_02047C54 - .word ov01_0220205C - .word sub_02048218 - .word sub_02048298 - .word sub_02047558 - .word ov01_02201A18 - .word ov01_02201AB8 - .word ov01_022020CC - .word ov01_022021AC - .word ov01_022021F8 - .word ov01_0220233C - .word ov01_02202430 - .word sub_0204DDE4 - .word sub_0204812C - .word sub_02047C64 - .word sub_02047C80 - .word ov01_02202930 - .word ov01_02202980 - .word ov01_022029B0 - .word ov01_02202A28 - .word ov01_02202A70 - .word ov01_02202ABC - .word ov03_02258C00 - .word ov03_02258CDC - .word sub_02047964 - .word sub_02047CBC - .word ov01_02205164 - .word ov01_022051B4 - .word ov01_022051CC - .word sub_02047CFC - .word sub_02047D24 - .word sub_02047D58 - .word sub_02047D7C - .word sub_02047DB0 - .word sub_02047DC8 - .word sub_02046FAC - .word sub_02047E14 - .word sub_02047E20 - .word sub_0206DC50 - .word ov01_022053EC - .word ov25_02259A30 - .word sub_02047E30 - .word ov01_022024B8 - .word ov01_022024FC - .word sub_0204C83C - .word sub_02047E40 - .word sub_02047778 - .word sub_02047E54 - .word sub_02047E64 - .word sub_02047E7C - .word sub_02047E8C - .word sub_02047E9C - .word ov01_02202510 - .word sub_02047EB4 - .word sub_02047EC4 - .word sub_02047F14 - .word ov01_022025A8 - .word ov01_022025EC - .word sub_0204E4E0 - .word sub_0204E528 - .word sub_02047F54 - .word sub_02047F84 - .word sub_02047FB4 - .word sub_02047FD4 - .word sub_02048004 - .word sub_020482F4 - .word sub_0204839C - .word ov01_02202834 - .word sub_0204802C - .word sub_02047A7C - .word ov01_02202908 - .word sub_02043598 - .word sub_02041AC4 - .word sub_02041AE4 - .word sub_02048CBC - .word sub_02048CF4 - .word sub_02048D2C - .word sub_02048D74 - .word sub_02048DBC - .word sub_02048DF0 - .word sub_02048E28 - .word sub_02048E60 - .word sub_02048E98 - .word sub_02048EB8 diff --git a/asm/unk_0202D968.s b/asm/unk_0202D968.s new file mode 100644 index 000000000..00b21dd31 --- /dev/null +++ b/asm/unk_0202D968.s @@ -0,0 +1,332 @@ + .include "asm/macros.inc" + .include "global.inc" + + .text + + thumb_func_start sub_0202D968 +sub_0202D968: ; 0x0202D968 + mov r0, #0x68 + bx lr + thumb_func_end sub_0202D968 + + thumb_func_start sub_0202D96C +sub_0202D96C: ; 0x0202D96C + push {r4, lr} + add r4, r0, #0 + mov r1, #0 + mov r2, #0x68 + bl memset + bl MTRandom + str r0, [r4] + bl MTRandom + str r0, [r4, #4] + add r0, r4, #0 + mov r1, #0 + add r0, #0x64 + strb r1, [r0] + add r0, r4, #0 + add r0, #0x65 + strb r1, [r0] + add r0, r4, #0 + add r0, #0x66 + strb r1, [r0] + add r4, #0x67 + strb r1, [r4] + pop {r4, pc} + .balign 4, 0 + thumb_func_end sub_0202D96C + + thumb_func_start sub_0202D9A0 +sub_0202D9A0: ; 0x0202D9A0 + str r1, [r0] + str r1, [r0, #4] + bx lr + .balign 4, 0 + thumb_func_end sub_0202D9A0 + + thumb_func_start sub_0202D9A8 +sub_0202D9A8: ; 0x0202D9A8 + push {r3, lr} + cmp r1, #1 + beq _0202D9B4 + cmp r1, #2 + beq _0202D9B8 + b _0202D9BC +_0202D9B4: + ldr r0, [r0] + pop {r3, pc} +_0202D9B8: + ldr r0, [r0, #4] + pop {r3, pc} +_0202D9BC: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} + thumb_func_end sub_0202D9A8 + + thumb_func_start sub_0202D9C4 +sub_0202D9C4: ; 0x0202D9C4 + ldr r3, _0202D9CC ; =SavArray_get + mov r1, #0x15 + bx r3 + nop +_0202D9CC: .word SavArray_get + thumb_func_end sub_0202D9C4 + + thumb_func_start sub_0202D9D0 +sub_0202D9D0: ; 0x0202D9D0 + push {r3, lr} + bl sub_0202D9C4 + mov r1, #1 + add r0, #0x64 + strb r1, [r0] + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0202D9D0 + + thumb_func_start sub_0202D9E0 +sub_0202D9E0: ; 0x0202D9E0 + add r0, #0x64 + ldrb r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202D9E0 + + thumb_func_start sub_0202D9E8 +sub_0202D9E8: ; 0x0202D9E8 + ldr r2, [r0, #8] + cmp r2, r1 + beq _0202D9F2 + str r2, [r0, #0xc] + str r1, [r0, #8] +_0202D9F2: + bx lr + thumb_func_end sub_0202D9E8 + + thumb_func_start sub_0202D9F4 +sub_0202D9F4: ; 0x0202D9F4 + ldr r0, [r0, #0xc] + bx lr + thumb_func_end sub_0202D9F4 + + thumb_func_start sub_0202D9F8 +sub_0202D9F8: ; 0x0202D9F8 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #4 + blo _0202DA06 + bl GF_AssertFail +_0202DA06: + add r0, r5, r4 + add r0, #0x60 + ldrb r0, [r0] + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0202D9F8 + + thumb_func_start sub_0202DA10 +sub_0202DA10: ; 0x0202DA10 + push {r4, r5, r6, lr} + add r4, r1, #0 + add r5, r0, #0 + add r6, r2, #0 + cmp r4, #4 + blo _0202DA20 + bl GF_AssertFail +_0202DA20: + add r0, r5, r4 + add r0, #0x60 + strb r6, [r0] + pop {r4, r5, r6, pc} + thumb_func_end sub_0202DA10 + + thumb_func_start sub_0202DA28 +sub_0202DA28: ; 0x0202DA28 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #4 + blo _0202DA36 + bl GF_AssertFail +_0202DA36: + mov r0, #0x14 + mul r0, r4 + add r0, r5, r0 + add r0, #0x22 + ldrb r0, [r0] + pop {r3, r4, r5, pc} + .balign 4, 0 + thumb_func_end sub_0202DA28 + + thumb_func_start sub_0202DA44 +sub_0202DA44: ; 0x0202DA44 + ldr r2, [r0] + mov r1, #0x14 + mov r0, #0 +_0202DA4A: + strb r0, [r2] + add r2, r2, #1 + sub r1, r1, #1 + bne _0202DA4A + bx lr + thumb_func_end sub_0202DA44 + + thumb_func_start sub_0202DA54 +sub_0202DA54: ; 0x0202DA54 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #4 + blo _0202DA62 + bl GF_AssertFail +_0202DA62: + mov r0, #0x14 + add r5, #0x10 + mul r0, r4 + add r0, r5, r0 + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DA54 + + thumb_func_start sub_0202DA6C +sub_0202DA6C: ; 0x0202DA6C + push {r3, lr} + cmp r1, #8 + bhi _0202DAB0 + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0202DA7E: ; jump table + .short _0202DAB0 - _0202DA7E - 2 ; case 0 + .short _0202DA90 - _0202DA7E - 2 ; case 1 + .short _0202DA94 - _0202DA7E - 2 ; case 2 + .short _0202DA98 - _0202DA7E - 2 ; case 3 + .short _0202DA9C - _0202DA7E - 2 ; case 4 + .short _0202DAA0 - _0202DA7E - 2 ; case 5 + .short _0202DAA4 - _0202DA7E - 2 ; case 6 + .short _0202DAA8 - _0202DA7E - 2 ; case 7 + .short _0202DAAC - _0202DA7E - 2 ; case 8 +_0202DA90: + ldr r0, [r0] + pop {r3, pc} +_0202DA94: + ldr r0, [r0, #4] + pop {r3, pc} +_0202DA98: + ldr r0, [r0, #8] + pop {r3, pc} +_0202DA9C: + ldrh r0, [r0, #0xc] + pop {r3, pc} +_0202DAA0: + ldrh r0, [r0, #0xe] + pop {r3, pc} +_0202DAA4: + ldrb r0, [r0, #0x10] + pop {r3, pc} +_0202DAA8: + ldrb r0, [r0, #0x11] + pop {r3, pc} +_0202DAAC: + ldrb r0, [r0, #0x12] + pop {r3, pc} +_0202DAB0: + bl GF_AssertFail + mov r0, #0 + pop {r3, pc} + thumb_func_end sub_0202DA6C + + thumb_func_start sub_0202DAB8 +sub_0202DAB8: ; 0x0202DAB8 + push {r3, lr} + cmp r1, #8 + bhi _0202DAFC + add r1, r1, r1 + add r1, pc + ldrh r1, [r1, #6] + lsl r1, r1, #0x10 + asr r1, r1, #0x10 + add pc, r1 +_0202DACA: ; jump table + .short _0202DAFC - _0202DACA - 2 ; case 0 + .short _0202DADC - _0202DACA - 2 ; case 1 + .short _0202DAE0 - _0202DACA - 2 ; case 2 + .short _0202DAE4 - _0202DACA - 2 ; case 3 + .short _0202DAE8 - _0202DACA - 2 ; case 4 + .short _0202DAEC - _0202DACA - 2 ; case 5 + .short _0202DAF0 - _0202DACA - 2 ; case 6 + .short _0202DAF4 - _0202DACA - 2 ; case 7 + .short _0202DAF8 - _0202DACA - 2 ; case 8 +_0202DADC: + str r2, [r0] + pop {r3, pc} +_0202DAE0: + str r2, [r0, #4] + pop {r3, pc} +_0202DAE4: + str r2, [r0, #8] + pop {r3, pc} +_0202DAE8: + strh r2, [r0, #0xc] + pop {r3, pc} +_0202DAEC: + strh r2, [r0, #0xe] + pop {r3, pc} +_0202DAF0: + strb r2, [r0, #0x10] + pop {r3, pc} +_0202DAF4: + strb r2, [r0, #0x11] + pop {r3, pc} +_0202DAF8: + strb r2, [r0, #0x12] + pop {r3, pc} +_0202DAFC: + bl GF_AssertFail + pop {r3, pc} + .balign 4, 0 + thumb_func_end sub_0202DAB8 + + thumb_func_start sub_0202DB04 +sub_0202DB04: ; 0x0202DB04 + add r0, #0x65 + bx lr + thumb_func_end sub_0202DB04 + + thumb_func_start sub_0202DB08 +sub_0202DB08: ; 0x0202DB08 + add r0, #0x65 + ldrb r0, [r0] + cmp r0, #0 + bne _0202DB14 + mov r0, #1 + bx lr +_0202DB14: + mov r0, #0 + bx lr + thumb_func_end sub_0202DB08 + + thumb_func_start sub_0202DB18 +sub_0202DB18: ; 0x0202DB18 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #2 + bls _0202DB26 + bl GF_AssertFail +_0202DB26: + add r5, #0x67 + strb r4, [r5] + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DB18 + + thumb_func_start sub_0202DB2C +sub_0202DB2C: ; 0x0202DB2C + add r0, #0x67 + ldrb r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202DB2C diff --git a/asm/unk_0202DB34.s b/asm/unk_0202DB34.s new file mode 100644 index 000000000..f5bce5797 --- /dev/null +++ b/asm/unk_0202DB34.s @@ -0,0 +1,107 @@ + .include "asm/macros.inc" + .include "global.inc" + + .text + + thumb_func_start sub_0202DB34 +sub_0202DB34: ; 0x0202DB34 + ldr r3, _0202DB3C ; =SavArray_get + mov r1, #0x16 + bx r3 + nop +_0202DB3C: .word SavArray_get + thumb_func_end sub_0202DB34 + + thumb_func_start sub_0202DB40 +sub_0202DB40: ; 0x0202DB40 + mov r0, #0xf8 + bx lr + thumb_func_end sub_0202DB40 + + thumb_func_start sub_0202DB44 +sub_0202DB44: ; 0x0202DB44 + ldr r3, _0202DB50 ; =MIi_CpuClearFast + add r1, r0, #0 + mov r0, #0 + mov r2, #0xf8 + bx r3 + nop +_0202DB50: .word MIi_CpuClearFast + thumb_func_end sub_0202DB44 + + thumb_func_start sub_0202DB54 +sub_0202DB54: ; 0x0202DB54 + add r0, #0xec + ldrh r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202DB54 + + thumb_func_start sub_0202DB5C +sub_0202DB5C: ; 0x0202DB5C + add r0, #0xec + strh r1, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202DB5C + + thumb_func_start sub_0202DB64 +sub_0202DB64: ; 0x0202DB64 + ldr r3, _0202DB6C ; =sub_020D48B4 + mov r2, #0xec + bx r3 + nop +_0202DB6C: .word sub_020D48B4 + thumb_func_end sub_0202DB64 + + thumb_func_start sub_0202DB70 +sub_0202DB70: ; 0x0202DB70 + ldr r3, _0202DB7C ; =sub_020D48B4 + add r2, r0, #0 + add r0, r1, #0 + add r1, r2, #0 + mov r2, #0xec + bx r3 + .balign 4, 0 +_0202DB7C: .word sub_020D48B4 + thumb_func_end sub_0202DB70 + + thumb_func_start sub_0202DB80 +sub_0202DB80: ; 0x0202DB80 + add r0, #0xf0 + ldr r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202DB80 + + thumb_func_start sub_0202DB88 +sub_0202DB88: ; 0x0202DB88 + add r0, #0xf0 + str r1, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202DB88 + + thumb_func_start sub_0202DB90 +sub_0202DB90: ; 0x0202DB90 + add r0, #0xf4 + ldr r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202DB90 + + thumb_func_start sub_0202DB98 +sub_0202DB98: ; 0x0202DB98 + add r0, #0xf4 + str r1, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202DB98 + + thumb_func_start sub_0202DBA0 +sub_0202DBA0: ; 0x0202DBA0 + add r0, #0xee + ldrh r0, [r0] + bx lr + .balign 4, 0 + thumb_func_end sub_0202DBA0 diff --git a/asm/unk_0202DBA8.s b/asm/unk_0202DBA8.s new file mode 100644 index 000000000..3771f6648 --- /dev/null +++ b/asm/unk_0202DBA8.s @@ -0,0 +1,781 @@ + .include "asm/macros.inc" + .include "global.inc" + + .bss + +_021D2AF4: + .space 0x4 + + .text + + thumb_func_start sub_0202DBA8 +sub_0202DBA8: ; 0x0202DBA8 + mov r0, #0x5a + lsl r0, r0, #6 + bx lr + .balign 4, 0 + thumb_func_end sub_0202DBA8 + + thumb_func_start sub_0202DBB0 +sub_0202DBB0: ; 0x0202DBB0 + ldr r3, _0202DBB8 ; =sub_0202893C + mov r0, #0x1b + bx r3 + nop +_0202DBB8: .word sub_0202893C + thumb_func_end sub_0202DBB0 + + thumb_func_start sub_0202DBBC +sub_0202DBBC: ; 0x0202DBBC + cmp r0, #0 + beq _0202DBC8 + cmp r0, #0x10 + bhs _0202DBC8 + mov r0, #1 + bx lr +_0202DBC8: + mov r0, #0 + bx lr + thumb_func_end sub_0202DBBC + + thumb_func_start sub_0202DBCC +sub_0202DBCC: ; 0x0202DBCC + push {r3, r4, r5, lr} + cmp r1, #0 + blt _0202DBF0 + cmp r1, #8 + bge _0202DBF0 + mov r2, #1 + lsl r2, r2, #8 + add r4, r0, r2 + lsl r0, r1, #6 + add r0, r1, r0 + lsl r5, r0, #2 + ldrh r0, [r4, r5] + bl sub_0202DBBC + cmp r0, #0 + beq _0202DBF0 + add r0, r4, r5 + pop {r3, r4, r5, pc} +_0202DBF0: + mov r0, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DBCC + + thumb_func_start sub_0202DBF4 +sub_0202DBF4: ; 0x0202DBF4 + push {r3, r4, r5, lr} + cmp r1, #0 + blt _0202DC1A + cmp r1, #3 + bge _0202DC1A + mov r2, #0x92 + lsl r2, r2, #4 + add r4, r0, r2 + mov r0, #0xd6 + lsl r0, r0, #2 + add r5, r1, #0 + mul r5, r0 + ldrh r0, [r4, r5] + bl sub_0202DBBC + cmp r0, #0 + beq _0202DC24 + add r0, r4, r5 + pop {r3, r4, r5, pc} +_0202DC1A: + cmp r1, #4 + bne _0202DC24 + ldr r1, _0202DC28 ; =0x00001328 + add r0, r0, r1 + pop {r3, r4, r5, pc} +_0202DC24: + mov r0, #0 + pop {r3, r4, r5, pc} + .balign 4, 0 +_0202DC28: .word 0x00001328 + thumb_func_end sub_0202DBF4 + + thumb_func_start sub_0202DC2C +sub_0202DC2C: ; 0x0202DC2C + push {r3, r4, r5, r6, r7, lr} + sub sp, #0x10 + str r1, [sp, #4] + mov r1, #0 + str r0, [sp] + str r2, [sp, #8] + str r1, [sp, #0xc] + bl sub_0202DE14 + cmp r0, #0 + bne _0202DC48 + add sp, #0x10 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} +_0202DC48: + mov r7, #0x41 + lsl r7, r7, #2 + ldr r5, [sp] + mov r4, #0 + sub r6, r7, #4 +_0202DC52: + ldrh r0, [r5, r6] + bl sub_0202DBBC + cmp r0, #0 + bne _0202DC94 + lsl r0, r4, #6 + mov r2, #1 + add r0, r4, r0 + lsl r4, r0, #2 + ldr r1, [sp] + lsl r2, r2, #8 + add r1, r1, r2 + ldr r0, [sp, #4] + add r1, r1, r4 + add r2, r2, #4 + bl MIi_CpuCopy8 + ldr r1, _0202DCA8 ; =0x00000102 + ldr r0, [sp] + mov r2, #3 + add r1, r0, r1 + ldrh r0, [r1, r4] + bic r0, r2 + ldr r2, [sp, #8] + lsl r2, r2, #0x10 + lsr r3, r2, #0x10 + mov r2, #3 + and r2, r3 + orr r0, r2 + strh r0, [r1, r4] + mov r0, #1 + str r0, [sp, #0xc] + b _0202DC9C +_0202DC94: + add r4, r4, #1 + add r5, r5, r7 + cmp r4, #8 + blt _0202DC52 +_0202DC9C: + mov r0, #0x1b + bl sub_0202893C + ldr r0, [sp, #0xc] + add sp, #0x10 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0202DCA8: .word 0x00000102 + thumb_func_end sub_0202DC2C + + thumb_func_start sub_0202DCAC +sub_0202DCAC: ; 0x0202DCAC + push {r4, r5, r6, r7, lr} + sub sp, #0xc + str r1, [sp, #4] + mov r1, #0 + str r0, [sp] + str r1, [sp, #8] + bl sub_0202DE3C + cmp r0, #0 + bne _0202DCC6 + add sp, #0xc + mov r0, #0 + pop {r4, r5, r6, r7, pc} +_0202DCC6: + ldr r1, _0202DD44 ; =0x00000152 + ldr r0, [sp, #4] + ldrb r0, [r0, r1] + lsl r0, r0, #0x1c + lsr r0, r0, #0x1f + cmp r0, #1 + bne _0202DCE4 + ldr r0, [sp] + bl sub_0202DE14 + cmp r0, #0 + bne _0202DCE4 + add sp, #0xc + mov r0, #0 + pop {r4, r5, r6, r7, pc} +_0202DCE4: + mov r7, #0xd6 + mov r6, #0x92 + ldr r5, [sp] + mov r4, #0 + lsl r7, r7, #2 + lsl r6, r6, #4 +_0202DCF0: + ldrh r0, [r5, r6] + bl sub_0202DBBC + cmp r0, #0 + bne _0202DD30 + mov r2, #0x92 + ldr r1, [sp] + lsl r2, r2, #4 + add r3, r1, r2 + mov r2, #0xd6 + lsl r2, r2, #2 + add r1, r4, #0 + mul r1, r2 + ldr r0, [sp, #4] + add r1, r3, r1 + bl MIi_CpuCopy8 + ldr r1, _0202DD44 ; =0x00000152 + ldr r0, [sp, #4] + ldrb r0, [r0, r1] + lsl r0, r0, #0x1c + lsr r0, r0, #0x1f + cmp r0, #1 + bne _0202DD2A + ldr r0, [sp] + ldr r1, [sp, #4] + add r2, r4, #0 + bl sub_0202DC2C +_0202DD2A: + mov r0, #1 + str r0, [sp, #8] + b _0202DD38 +_0202DD30: + add r4, r4, #1 + add r5, r5, r7 + cmp r4, #3 + blt _0202DCF0 +_0202DD38: + mov r0, #0x1b + bl sub_0202893C + ldr r0, [sp, #8] + add sp, #0xc + pop {r4, r5, r6, r7, pc} + .balign 4, 0 +_0202DD44: .word 0x00000152 + thumb_func_end sub_0202DCAC + + thumb_func_start sub_0202DD48 +sub_0202DD48: ; 0x0202DD48 + push {r3, r4, r5, lr} + add r5, r0, #0 + ldr r0, _0202DD78 ; =0x00001328 + add r4, r1, #0 + ldrh r0, [r5, r0] + bl sub_0202DBBC + cmp r0, #1 + bne _0202DD5E + mov r0, #0 + pop {r3, r4, r5, pc} +_0202DD5E: + ldr r1, _0202DD78 ; =0x00001328 + mov r2, #0xd6 + add r0, r4, #0 + add r1, r5, r1 + lsl r2, r2, #2 + bl MIi_CpuCopy8 + mov r0, #0x1b + bl sub_0202893C + mov r0, #0 + pop {r3, r4, r5, pc} + nop +_0202DD78: .word 0x00001328 + thumb_func_end sub_0202DD48 + + thumb_func_start sub_0202DD7C +sub_0202DD7C: ; 0x0202DD7C + push {r3, r4, r5, lr} + add r5, r1, #0 + add r4, r0, #0 + cmp r5, #8 + blt _0202DD8A + bl GF_AssertFail +_0202DD8A: + lsl r0, r5, #6 + add r0, r5, r0 + lsl r0, r0, #2 + mov r1, #1 + mov r3, #0 + add r2, r4, r0 + lsl r1, r1, #8 + strh r3, [r2, r1] + add r1, r1, #2 + add r3, r4, r1 + ldrh r2, [r3, r0] + mov r1, #3 + bic r2, r1 + strh r2, [r3, r0] + mov r0, #0x1b + bl sub_0202893C + mov r0, #1 + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DD7C + + thumb_func_start sub_0202DDB0 +sub_0202DDB0: ; 0x0202DDB0 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #3 + blt _0202DDBE + bl GF_AssertFail +_0202DDBE: + mov r0, #0xd6 + lsl r0, r0, #2 + mul r0, r4 + add r2, r5, r0 + mov r0, #0x92 + mov r1, #0 + lsl r0, r0, #4 + strh r1, [r2, r0] + mov r1, #0xa7 + lsl r1, r1, #4 + ldrh r1, [r2, r1] + add r0, r5, #0 + bl sub_0202DFDC + add r0, r5, #0 + add r1, r4, #0 + bl sub_0202DF38 + mov r0, #0x1b + bl sub_0202893C + mov r0, #1 + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DDB0 + + thumb_func_start sub_0202DDEC +sub_0202DDEC: ; 0x0202DDEC + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #3 + blt _0202DDFA + bl GF_AssertFail +_0202DDFA: + mov r0, #0xd6 + lsl r0, r0, #2 + mul r0, r4 + add r1, r5, r0 + mov r0, #0x92 + mov r2, #0 + lsl r0, r0, #4 + strh r2, [r1, r0] + mov r0, #0x1b + bl sub_0202893C + mov r0, #1 + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DDEC + + thumb_func_start sub_0202DE14 +sub_0202DE14: ; 0x0202DE14 + push {r3, r4, r5, r6, r7, lr} + mov r7, #0x41 + lsl r7, r7, #2 + add r5, r0, #0 + mov r4, #0 + sub r6, r7, #4 +_0202DE20: + ldrh r0, [r5, r6] + bl sub_0202DBBC + cmp r0, #0 + bne _0202DE2E + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0202DE2E: + add r4, r4, #1 + add r5, r5, r7 + cmp r4, #8 + blt _0202DE20 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 + thumb_func_end sub_0202DE14 + + thumb_func_start sub_0202DE3C +sub_0202DE3C: ; 0x0202DE3C + push {r3, r4, r5, r6, r7, lr} + mov r7, #0xd6 + mov r6, #0x92 + add r5, r0, #0 + mov r4, #0 + lsl r7, r7, #2 + lsl r6, r6, #4 +_0202DE4A: + ldrh r0, [r5, r6] + bl sub_0202DBBC + cmp r0, #0 + bne _0202DE58 + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0202DE58: + add r4, r4, #1 + add r5, r5, r7 + cmp r4, #3 + blt _0202DE4A + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + thumb_func_end sub_0202DE3C + + thumb_func_start sub_0202DE64 +sub_0202DE64: ; 0x0202DE64 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #8 + blt _0202DE72 + bl GF_AssertFail +_0202DE72: + lsl r0, r4, #6 + add r0, r4, r0 + lsl r0, r0, #2 + add r1, r5, r0 + mov r0, #1 + lsl r0, r0, #8 + ldrh r0, [r1, r0] + bl sub_0202DBBC + cmp r0, #0 + beq _0202DE8C + mov r0, #1 + pop {r3, r4, r5, pc} +_0202DE8C: + mov r0, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DE64 + + thumb_func_start sub_0202DE90 +sub_0202DE90: ; 0x0202DE90 + push {r3, r4, r5, lr} + add r4, r1, #0 + add r5, r0, #0 + cmp r4, #3 + blt _0202DE9E + bl GF_AssertFail +_0202DE9E: + mov r0, #0xd6 + lsl r0, r0, #2 + mul r0, r4 + add r1, r5, r0 + mov r0, #0x92 + lsl r0, r0, #4 + ldrh r0, [r1, r0] + bl sub_0202DBBC + cmp r0, #0 + beq _0202DEB8 + mov r0, #1 + pop {r3, r4, r5, pc} +_0202DEB8: + mov r0, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DE90 + + thumb_func_start sub_0202DEBC +sub_0202DEBC: ; 0x0202DEBC + push {r3, lr} + ldr r1, _0202DED4 ; =0x00001328 + ldrh r0, [r0, r1] + bl sub_0202DBBC + cmp r0, #0 + beq _0202DECE + mov r0, #1 + pop {r3, pc} +_0202DECE: + mov r0, #0 + pop {r3, pc} + nop +_0202DED4: .word 0x00001328 + thumb_func_end sub_0202DEBC + + thumb_func_start sub_0202DED8 +sub_0202DED8: ; 0x0202DED8 + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r4, #0 +_0202DEDE: + add r0, r5, #0 + add r1, r4, #0 + bl sub_0202DE90 + cmp r0, #1 + bne _0202DEEE + mov r0, #1 + pop {r3, r4, r5, pc} +_0202DEEE: + add r4, r4, #1 + cmp r4, #3 + blt _0202DEDE + mov r0, #0 + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DED8 + + thumb_func_start sub_0202DEF8 +sub_0202DEF8: ; 0x0202DEF8 + push {r3, r4, r5, r6, r7, lr} + add r5, r0, #0 + ldr r0, _0202DF34 ; =0x00000102 + add r7, r1, #0 + mov r6, #0 + add r4, r5, r0 +_0202DF04: + mov r0, #1 + lsl r0, r0, #8 + ldrh r0, [r5, r0] + bl sub_0202DBBC + cmp r0, #0 + beq _0202DF20 + ldrh r0, [r4] + lsl r0, r0, #0x1e + lsr r0, r0, #0x1e + cmp r7, r0 + bne _0202DF20 + mov r0, #1 + pop {r3, r4, r5, r6, r7, pc} +_0202DF20: + mov r0, #0x41 + lsl r0, r0, #2 + add r6, r6, #1 + add r5, r5, r0 + add r4, r4, r0 + cmp r6, #8 + blt _0202DF04 + mov r0, #0 + pop {r3, r4, r5, r6, r7, pc} + nop +_0202DF34: .word 0x00000102 + thumb_func_end sub_0202DEF8 + + thumb_func_start sub_0202DF38 +sub_0202DF38: ; 0x0202DF38 + push {r3, r4, r5, r6, r7, lr} + add r7, r1, #0 + ldr r1, _0202DF78 ; =0x00000102 + str r0, [sp] + mov r6, #0 + add r4, r0, #0 + add r5, r0, r1 +_0202DF46: + mov r0, #1 + lsl r0, r0, #8 + ldrh r0, [r4, r0] + bl sub_0202DBBC + cmp r0, #0 + beq _0202DF68 + ldrh r0, [r5] + lsl r0, r0, #0x1e + lsr r0, r0, #0x1e + cmp r7, r0 + bne _0202DF68 + ldr r0, [sp] + add r1, r6, #0 + bl sub_0202DD7C + pop {r3, r4, r5, r6, r7, pc} +_0202DF68: + mov r0, #0x41 + lsl r0, r0, #2 + add r6, r6, #1 + add r4, r4, r0 + add r5, r5, r0 + cmp r6, #8 + blt _0202DF46 + pop {r3, r4, r5, r6, r7, pc} + .balign 4, 0 +_0202DF78: .word 0x00000102 + thumb_func_end sub_0202DF38 + + thumb_func_start sub_0202DF7C +sub_0202DF7C: ; 0x0202DF7C + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #2 + add r4, r1, #0 + lsl r0, r0, #0xa + cmp r4, r0 + blt _0202DF8E + bl GF_AssertFail +_0202DF8E: + mov r0, #1 + mov r1, #7 + add r2, r4, #0 + and r2, r1 + add r1, r0, #0 + lsl r1, r2 + asr r2, r4, #2 + lsr r2, r2, #0x1d + add r2, r4, r2 + asr r2, r2, #3 + ldrb r2, [r5, r2] + tst r1, r2 + bne _0202DFAA + mov r0, #0 +_0202DFAA: + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DF7C + + thumb_func_start sub_0202DFAC +sub_0202DFAC: ; 0x0202DFAC + push {r3, r4, r5, lr} + add r5, r0, #0 + mov r0, #2 + add r4, r1, #0 + lsl r0, r0, #0xa + cmp r4, r0 + blt _0202DFBE + bl GF_AssertFail +_0202DFBE: + asr r0, r4, #2 + lsr r0, r0, #0x1d + add r0, r4, r0 + asr r1, r0, #3 + mov r2, #7 + ldrb r0, [r5, r1] + mov r3, #1 + and r2, r4 + lsl r3, r2 + orr r0, r3 + strb r0, [r5, r1] + mov r0, #0x1b + bl sub_0202893C + pop {r3, r4, r5, pc} + thumb_func_end sub_0202DFAC + + thumb_func_start sub_0202DFDC +sub_0202DFDC: ; 0x0202DFDC + push {r4, r5, r6, lr} + add r5, r0, #0 + add r4, r1, #0 + mov r1, #1 + mov r0, #7 + and r0, r4 + add r2, r1, #0 + lsl r2, r0 + mvn r0, r2 + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + lsl r0, r1, #0xb + cmp r4, r0 + blt _0202DFFC + bl GF_AssertFail +_0202DFFC: + asr r0, r4, #2 + lsr r0, r0, #0x1d + add r0, r4, r0 + asr r1, r0, #3 + ldrb r0, [r5, r1] + and r0, r6 + strb r0, [r5, r1] + mov r0, #0x1b + bl sub_0202893C + pop {r4, r5, r6, pc} + .balign 4, 0 + thumb_func_end sub_0202DFDC + + thumb_func_start sub_0202E014 +sub_0202E014: ; 0x0202E014 + ldr r3, _0202E01C ; =sub_0202DF7C + ldr r1, _0202E020 ; =0x000007FF + bx r3 + nop +_0202E01C: .word sub_0202DF7C +_0202E020: .word 0x000007FF + thumb_func_end sub_0202E014 + + thumb_func_start sub_0202E024 +sub_0202E024: ; 0x0202E024 + ldr r3, _0202E02C ; =sub_0202DFAC + ldr r1, _0202E030 ; =0x000007FF + bx r3 + nop +_0202E02C: .word sub_0202DFAC +_0202E030: .word 0x000007FF + thumb_func_end sub_0202E024 + + thumb_func_start sub_0202E034 +sub_0202E034: ; 0x0202E034 + push {r3, lr} + ldr r1, _0202E050 ; =0x021D2AF4 + ldr r1, [r1] + cmp r1, #0 + bne _0202E046 + bl sub_020270E4 + ldr r1, _0202E050 ; =0x021D2AF4 + str r0, [r1] +_0202E046: + mov r0, #0x1b + bl sub_0202893C + pop {r3, pc} + nop +_0202E050: .word 0x021D2AF4 + thumb_func_end sub_0202E034 + + thumb_func_start sub_0202E054 +sub_0202E054: ; 0x0202E054 + ldr r0, _0202E064 ; =0x021D2AF4 + ldr r1, [r0] + cmp r1, #0 + beq _0202E060 + mov r1, #0 + str r1, [r0] +_0202E060: + bx lr + nop +_0202E064: .word 0x021D2AF4 + thumb_func_end sub_0202E054 + + thumb_func_start sub_0202E068 +sub_0202E068: ; 0x0202E068 + push {r3, r4, r5, lr} + ldr r4, _0202E08C ; =0x021D2AF4 + mov r5, #0 +_0202E06E: + ldr r0, [r4] + add r1, r5, #0 + bl sub_0202DE64 + cmp r0, #1 + bne _0202E07E + add r0, r5, #0 + pop {r3, r4, r5, pc} +_0202E07E: + add r5, r5, #1 + cmp r5, #8 + blt _0202E06E + mov r0, #0 + mvn r0, r0 + pop {r3, r4, r5, pc} + nop +_0202E08C: .word 0x021D2AF4 + thumb_func_end sub_0202E068 + + thumb_func_start sub_0202E090 +sub_0202E090: ; 0x0202E090 + push {r3, lr} + add r1, r0, #0 + ldr r0, _0202E0A8 ; =0x021D2AF4 + ldr r0, [r0] + bl sub_0202DBCC + cmp r0, #0 + beq _0202E0A4 + ldrh r0, [r0] + pop {r3, pc} +_0202E0A4: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 +_0202E0A8: .word 0x021D2AF4 + thumb_func_end sub_0202E090 + + thumb_func_start sub_0202E0AC +sub_0202E0AC: ; 0x0202E0AC + push {r3, lr} + add r1, r0, #0 + ldr r0, _0202E0C4 ; =0x021D2AF4 + ldr r0, [r0] + bl sub_0202DBCC + cmp r0, #0 + beq _0202E0C0 + add r0, r0, #4 + pop {r3, pc} +_0202E0C0: + mov r0, #0 + pop {r3, pc} + .balign 4, 0 +_0202E0C4: .word 0x021D2AF4 + thumb_func_end sub_0202E0AC + + thumb_func_start sub_0202E0C8 +sub_0202E0C8: ; 0x0202E0C8 + add r1, r0, #0 + ldr r0, _0202E0D4 ; =0x021D2AF4 + ldr r3, _0202E0D8 ; =sub_0202DD7C + ldr r0, [r0] + bx r3 + nop +_0202E0D4: .word 0x021D2AF4 +_0202E0D8: .word sub_0202DD7C + thumb_func_end sub_0202E0C8 diff --git a/global.inc b/global.inc index 1e9d16d2c..dad4ac0e6 100644 --- a/global.inc +++ b/global.inc @@ -1,5 +1,5 @@ -#pragma once +#pragma once .public AddTextPrinterParameterized .public AddTextPrinterParameterized3 .public AddWindow @@ -9,17 +9,87 @@ .public AllocAtEndAndReadWholeNarcMemberByIdPair .public AllocFromHeap .public AllocFromHeapAtEnd +.public AllocMonZeroed .public AllocWindows +.public BG_LoadCharTilesData +.public BG_LoadPlttData +.public BG_LoadScreenTilemapData +.public BgCommitTilemapBufferToVram +.public BgConfig_GetHeapId +.public BgCopyOrUncompressTilemapBufferRangeToVram +.public BlitBitmapRect4Bit +.public BlitBitmapRectToWindow +.public BufferAbilityName +.public BufferBoxMonNickname +.public BufferBoxMonOTName +.public BufferBoxMonSpeciesName +.public BufferBoxMonSpeciesNameWithArticle +.public BufferCityName +.public BufferContestBackgroundName +.public BufferCountryName +.public BufferEasyChatWord +.public BufferFashionName +.public BufferFashionNameWithArticle +.public BufferFlavorDislikeText +.public BufferFriendsName +.public BufferFrontierOpponentName +.public BufferIntegerAsString +.public BufferItemName +.public BufferItemNamePlural +.public BufferItemNameWithIndefArticle +.public BufferLandmarkName +.public BufferLocationName +.public BufferMonthNameAbbr +.public BufferMoveName +.public BufferNatureName +.public BufferPlayersName +.public BufferPocketName +.public BufferRibbonNameOrDesc +.public BufferRivalsName +.public BufferSafariZoneAreaName +.public BufferSealName +.public BufferSealNamePlural +.public BufferSpeciesName +.public BufferSpeciesNameWithArticle +.public BufferStatName +.public BufferStatusName +.public BufferString +.public BufferTrainerClassName +.public BufferTrainerClassNameFromDataStruct +.public BufferTrainerClassNameWithArticle +.public BufferTrainerName +.public BufferTrainerNameFromDataStruct +.public BufferTypeName +.public CARD_GetResultCode +.public CARD_IdentifyBackup .public CARD_IsPulledOut +.public CARD_LockBackup .public CARD_TryWaitBackupAsync +.public CARD_UnlockBackup +.public CARD_WaitBackupAsync +.public CARDi_RequestStreamCommand .public CTRDG_IsPulledOut +.public Call_NNS_G3dPlttLoad +.public Call_NNS_G3dTexLoad +.public ClearWindowTilemapAndCopyToVram +.public ConvertUIntToDecimalString +.public CopyStringToU16Array +.public CopyU16ArrayToString +.public CopyU16ArrayToStringN +.public CopyU16StringArray +.public CopyU16StringArrayN .public CopyWindowToVram +.public CreateKenyaMail .public CreateYesNoMenu .public DC_FlushRange +.public DecompressGlyphTile .public DestroyListMenu .public DestroyListMenuCursorObj .public DestroyMsgData .public DoSoundUpdateFrame +.public EasyChatManager_ReadWordIntoString +.public EasyChatManager_delete +.public EasyChatManager_new .public FS_CloseFile .public FS_InitFile .public FS_LoadOverlay @@ -33,13 +103,42 @@ .public FS_StartOverlay .public FS_UnloadOverlay .public FS_WaitAsync +.public FX_Atan2Idx +.public FX_CosFx64c +.public FX_Div +.public FX_DivAsync +.public FX_DivS32 +.public FX_GetDivResult +.public FX_GetDivResultFx64c +.public FX_Init +.public FX_Inv +.public FX_InvAsync +.public FX_InvFx64c +.public FX_ModS32 +.public FX_Modf +.public FX_SinFx64c +.public FX_Sqrt +.public FillBgTilemapRect .public FillWindowPixelBuffer .public FillWindowPixelRect +.public FontData_ModeSwitch +.public FontData_delete +.public FontData_new +.public FontI_GetGlyphWidth .public FreeToHeap .public FreeToHeapExplicit +.public G3X_SetClearColor +.public G3X_SetFog .public GF_AssertFail -.public sub_02026E30 +.public GF_InitRTCWork +.public GF_RTC_CopyDate .public GF_RTC_CopyDateTime +.public GF_RTC_CopyTime +.public GF_RTC_DateTimeToSec +.public GF_RTC_GetTimeOfDay +.public GF_RTC_GetTimeOfDayByHour +.public GF_RTC_TimeDelta +.public GF_RTC_TimeToSec .public GF_RTC_UpdateOnFrame .public GF_SndPlayerCountPlayingSeqByPlayerNo .public GF_SndSetMonoFlag @@ -57,17 +156,72 @@ .public GX_BeginLoadOBJExtPltt .public GX_EndLoadBGExtPltt .public GX_EndLoadOBJExtPltt +.public GX_EngineAToggleLayers .public GX_LoadBGExtPltt .public GX_LoadBGPltt .public GX_LoadOBJExtPltt .public GX_LoadOBJPltt +.public GX_ResetBankForBG +.public GX_ResetBankForBGExtPltt +.public GX_ResetBankForOBJ +.public GX_ResetBankForOBJExtPltt +.public GX_ResetBankForSubBG +.public GX_ResetBankForSubBGExtPltt +.public GX_ResetBankForSubOBJ +.public GX_ResetBankForSubOBJExtPltt +.public GX_ResetBankForTex +.public GX_ResetBankForTexPltt +.public GX_SetBankForBG +.public GX_SetBankForBGExtPltt +.public GX_SetBankForOBJ +.public GX_SetBankForOBJExtPltt +.public GX_SetBankForSubBG +.public GX_SetBankForSubBGExtPltt +.public GX_SetBankForSubOBJ +.public GX_SetBankForSubOBJExtPltt +.public GX_SetBankForTex +.public GX_SetBankForTexPltt +.public GX_SetBanks +.public GetBgTilemapBuffer +.public GetBoxMonData +.public GetCategoryAndMsgNoByECWordIdx +.public GetCityNamesMsgdataIdByCountry +.public GetECWordIndexByPair +.public GetECWordIntoStringByIndex .public GetFontAttribute +.public GetGlyphWidth +.public GetLCRNGSeed +.public GetMonData +.public GetMoveName .public GetNarcMemberSizeByIdPair +.public GetPartyCount +.public GetPartyMonByIndex +.public GetRivalNamePtr .public GetSoundDataPointer .public GetSoundPlayer +.public GetSpeciesName +.public GetSpeciesNameIntoArray +.public GetStringWidth +.public GetStringWidthFirstLine +.public GetStringWidthMultiline +.public GetWindowBgId .public GetWindowHeight .public GetWindowWidth +.public GetWindowX +.public GetWindowY +.public GfGfxLoader_GXLoadPal +.public GfGfxLoader_GXLoadPalWithSrcOffset +.public GfGfxLoader_GetAnimBank +.public GfGfxLoader_GetCellBank +.public GfGfxLoader_GetCharData .public GfGfxLoader_GetPlttData +.public GfGfxLoader_GetScrnData +.public GfGfxLoader_LoadCharData +.public GfGfxLoader_LoadFromNarc +.public GfGfxLoader_LoadFromNarc_GetSizeOut +.public GfGfxLoader_LoadImageMapping +.public GfGfxLoader_LoadScrnData +.public GfGfxLoader_PartiallyLoadPalette .public HandleDSLidAction .public HandleLoadOverlay .public IC_InvalidateRange @@ -77,6 +231,8 @@ .public InitSystemForTheGame .public Init_Timer3 .public InitializeMainRNG +.public IsNighttime +.public LCRandom .public ListMenuCursorNew .public ListMenuCursorSetColor .public ListMenuGetCurrentItemArrayId @@ -84,6 +240,7 @@ .public ListMenuGetTemplateField .public ListMenuGetValueByArrayId .public ListMenuInit +.public ListMenuItems_AddItem .public ListMenuItems_AppendFromMsgData .public ListMenuItems_ctor .public ListMenuItems_dtor @@ -91,11 +248,93 @@ .public ListMenuUpdateCursorObj .public ListMenu_ProcessInput .public LoadDwcOverlay +.public LoadHallOfFame .public LoadOVY38 +.public MATH_CalcCRC16CCITT .public MIC_Init +.public MI_Copy36B +.public MI_UncompressLZ8 +.public MIi_CpuClearFast .public MIi_CpuCopy16 +.public MIi_CpuCopy32 +.public MIi_CpuCopy8 .public MIi_CpuFill8 .public MIi_UncompressBackward +.public MTRandom +.public MTX_Concat33 +.public MTX_Concat43 +.public MTX_Concat44 +.public MTX_Copy43To44_ +.public MTX_Copy44To43_ +.public MTX_Identity22_ +.public MTX_Identity33_ +.public MTX_Identity43_ +.public MTX_Identity44_ +.public MTX_Inverse33 +.public MTX_Inverse43 +.public MTX_LookAt +.public MTX_MultVec33 +.public MTX_MultVec43 +.public MTX_OrthoW +.public MTX_PerspectiveW +.public MTX_Rot22_ +.public MTX_RotX33_ +.public MTX_RotX43_ +.public MTX_RotX44_ +.public MTX_RotY33_ +.public MTX_RotY43_ +.public MTX_RotY44_ +.public MTX_RotZ33_ +.public MTX_RotZ44_ +.public MTX_Scale43_ +.public MTX_ScaleApply22 +.public MTX_ScaleApply43 +.public MTX_TransApply43 +.public MTX_TransApply44 +.public MailMsg_AllFieldsAreInit +.public MailMsg_GetExpandedString +.public MailMsg_GetFieldI +.public MailMsg_GetMsgBank +.public MailMsg_GetMsgNo +.public MailMsg_GetRawString +.public MailMsg_IsInit +.public MailMsg_SetFieldI +.public MailMsg_SetMsgBankAndNum +.public MailMsg_SetTrailingFieldsEmpty +.public MailMsg_compare +.public MailMsg_copy +.public MailMsg_init +.public MailMsg_init_default +.public MailMsg_init_fromTemplate +.public MailMsg_init_withBank +.public Mail_CopyToUnk20Array +.public Mail_GetAuthorGender +.public Mail_GetAuthorNamePtr +.public Mail_GetLanguage +.public Mail_GetOTID +.public Mail_GetType +.public Mail_GetUnk20Array +.public Mail_GetVersion +.public Mail_SetNewMessageDetails +.public Mail_SetType +.public Mail_TypeIsValid +.public Mail_compare +.public Mail_copy +.public Mail_init +.public Mail_new +.public Mailbox_AllocAndFetchMailI +.public Mailbox_CopyMailToSlotI +.public Mailbox_CountMessages +.public Mailbox_DeleteSlotI +.public Mailbox_FetchMailToBuffer +.public Mailbox_GetFirstEmptySlotIdx +.public MessagePrinter_delete +.public MessagePrinter_new +.public MsgArray_ControlCodeGetField +.public MsgArray_ControlCodeIsStrVar +.public MsgArray_GetControlCode +.public MsgArray_SkipControlCode +.public MsgDataGetCount .public NARC_AllocAndReadWholeMember .public NARC_GetFileCount .public NARC_GetMemberImageStartOffset @@ -106,6 +345,31 @@ .public NARC_ReadWholeMember .public NARC_ctor .public NARC_dtor +.public NNS_G2dGetUnpackedAnimBank +.public NNS_G2dGetUnpackedBGCharacterData +.public NNS_G2dGetUnpackedCellBank +.public NNS_G2dGetUnpackedCharacterData +.public NNS_G2dGetUnpackedPaletteCompressInfo +.public NNS_G2dGetUnpackedPaletteData +.public NNS_G2dGetUnpackedScreenData +.public NNS_G2dLoadPalette +.public NNS_G2dLoadPaletteEx +.public NNS_G3dBindMdlSet +.public NNS_G3dDraw +.public NNS_G3dGetMdlSet +.public NNS_G3dGetTex +.public NNS_G3dGlbFlushP +.public NNS_G3dGlbSetBaseScale +.public NNS_G3dGlbSetBaseTrans +.public NNS_G3dPlttGetRequiredSize +.public NNS_G3dPlttLoad +.public NNS_G3dPlttSetPlttKey +.public NNS_G3dRenderObjInit +.public NNS_G3dResDefaultSetup +.public NNS_G3dTex4x4GetRequiredSize +.public NNS_G3dTexGetRequiredSize +.public NNS_G3dTexLoad +.public NNS_G3dTexSetTexKey .public NNS_SndArcGetBankInfo .public NNS_SndArcGetSeqParam .public NNS_SndArcInit @@ -116,13 +380,20 @@ .public NNS_SndInit .public NNS_SndMain .public NNS_SndPlayerGetSeqNo +.public NNS_SndPlayerSetPlayerVolume .public NNS_SndPlayerStopSeqByPlayerNo .public NNS_SndSetMonoFlag .public NewMsgDataFromNarc +.public NewString_ReadMsgData .public NitroMain .public OS_AllocFromHeap .public OS_FreeToHeap +.public OS_GetLockID +.public OS_GetMacAddress +.public OS_GetOwnerInfo +.public OS_GetOwnerRtcOffset .public OS_LockMutex +.public OS_ReleaseLockID .public OS_ResetSystem .public OS_TryLockMutex .public OS_UnlockMutex @@ -132,12 +403,15 @@ .public OverlayManager_delete .public OverlayManager_new .public OverlayManager_run +.public PCStorage_init +.public PCStorage_sizeof .public PM_ForceToPowerOff .public PM_GetBackLight .public PM_GoSleepMode .public PM_SetAmp .public PM_SetAmpGain .public PM_SetBackLight +.public PRandom .public PaletteData_AllocBuffers .public PaletteData_CopyPalette .public PaletteData_FreeBuffers @@ -147,13 +421,27 @@ .public PaletteData_LoadNarc .public PaletteData_LoadPalette .public PlaySE -.public ConvertUIntToDecimalString +.public PlayerProfile_GetNamePtr +.public PlayerProfile_GetTrainerGender +.public PlayerProfile_GetTrainerID +.public Pokedex_CheckMonCaughtFlag +.public RTC_ConvertDateTimeToSecond +.public RTC_GetDateTimeAsync +.public RTC_Init +.public Radio_new .public ReadFromNarcMemberByIdPair .public ReadKeypadAndTouchpad +.public ReadMsgDataIntoString +.public ReadMsgDataIntoU16Array +.public ReadMsgData_ExpandPlaceholders +.public ReadMsgData_NewNarc_ExistingString +.public ReadMsgData_NewNarc_NewString +.public ReadSaveFileFromFlash .public ReadWholeNarcMemberByIdPair .public RedrawListMenu .public RegisterMainOverlay .public RemoveWindow +.public RenderText .public SDK_OVERLAY_DIGEST .public SDK_OVERLAY_DIGEST_END .public SDK_OVERLAY_OVY_0_ID @@ -293,23 +581,86 @@ .public SVC_GetCRC16 .public SVC_WaitByLoop .public Sav2_Chatot_get +.public Sav2_InitDynamicRegion +.public Sav2_Mailbox_get +.public Sav2_Mailbox_init +.public Sav2_Mailbox_sizeof .public Sav2_PlayerData_GetOptionsAddr +.public Sav2_PlayerData_GetProfileAddr +.public Sav2_SysInfo_GetBirthDay +.public Sav2_SysInfo_GetBirthMonth +.public Sav2_SysInfo_InitFromSystem +.public Sav2_SysInfo_MacAddressIsMine +.public Sav2_SysInfo_RTCOffsetIsMine +.public Sav2_SysInfo_RTC_get +.public Sav2_SysInfo_RTC_init +.public Sav2_SysInfo_get +.public Sav2_SysInfo_init +.public Sav2_SysInfo_sizeof +.public SavArray_PlayerParty_get +.public SavArray_get .public SaveBlock2_new +.public SaveHallOfFame +.public ScheduleBgTilemapBufferTransfer +.public ScrStrBufs_ResetBuffers +.public ScrStrBufs_UpperFirstChar +.public ScrStrBufs_delete +.public ScrStrBufs_new +.public ScrStrBufs_new_custom .public ScrollWindow .public SetLCRNGSeed .public SetMTRNGSeed +.public ShowSaveDataReadError +.public ShowSaveDataWriteError .public ShowWFCUserInfoWarning +.public SizeOfStructPokemon .public Std_CreateYesNoMenu +.public StrAddChar +.public StrUpperFirstChar +.public String16_FormatInteger +.public String16_FormatUnsignedLongLong +.public StringAllCharsValid +.public StringCat +.public StringCat_HandleTrainerName +.public StringCompare +.public StringCopy +.public StringCountLines +.public StringDup +.public StringExpandPlaceholders +.public StringFillEOS +.public StringGetLength +.public StringGetLineN +.public StringLength .public StringNotEqual .public StringNotEqualN -.public CopyU16StringArray -.public CopyU16StringArrayN -.public StringFillEOS -.public StringLength +.public StringSetEmpty +.public String_RadioAddStatic +.public String_atoi +.public String_c_str +.public String_ctor +.public String_dtor +.public SwitchToPokegearApp +.public TextFlags_SetCanABSpeedUpPrint .public TintPalette_CustomTone +.public TryLoadGlyph .public UnloadDwcOverlay .public UnloadOVY38 .public UnloadOverlayByID +.public VEC_Add +.public VEC_CrossProduct +.public VEC_Distance +.public VEC_DotProduct +.public VEC_Fx16Add +.public VEC_Fx16CrossProduct +.public VEC_Fx16DotProduct +.public VEC_Fx16Normalize +.public VEC_Mag +.public VEC_MultAdd +.public VEC_Normalize +.public VEC_Subtract +.public WriteSaveFileToFlash +.public ZeroBoxMonData +.public ZeroMonData .public _Z14__ThrowHandlerP12ThrowContext .public _ZNSt15__vector_commonILb1EE18throw_length_errorEv .public _ZdaPv @@ -344,9 +695,9 @@ .public _ftoi .public _ftou .public _itof -.public _ll_sdiv .public _ll_mod .public _ll_mul +.public _ll_sdiv .public _ll_shl .public _ll_udiv .public _lltof @@ -370,6 +721,9 @@ .public fread .public fseek .public ftell +.public gGameLanguage +.public gGameVersion +.public gMain .public memcmp .public memcpy .public memmove @@ -5431,9 +5785,6 @@ .public ov101_021ED79C .public ov101_021ED7B0 .public ov101_021ED7D8 -.public ov101_Radio_OvyInit -.public ov101_Radio_OvyExec -.public ov101_Radio_OvyExit .public ov101_021ED980 .public ov101_021EDAF8 .public ov101_021EDB1C @@ -5798,6 +6149,9 @@ .public ov101_021F7320 .public ov101_021F7324 .public ov101_021F734C +.public ov101_Radio_OvyExec +.public ov101_Radio_OvyExit +.public ov101_Radio_OvyInit .public ov102_021E7740 .public ov102_021E77B8 .public ov102_021E77F8 @@ -23793,9 +24147,7 @@ .public sub_02001C94 .public sub_02001FDC .public sub_02001FFC -.public RenderText .public sub_020027F0 -.public TextFlags_SetCanABSpeedUpPrint .public sub_02002B50 .public sub_02002B8C .public sub_02002BA8 @@ -23823,7 +24175,6 @@ .public sub_0200304C .public sub_02003068 .public sub_020030A0 -.public FontI_GetGlyphWidth .public sub_020030E8 .public sub_02003104 .public sub_02003220 @@ -23865,31 +24216,57 @@ .public sub_02004A38 .public sub_02004A44 .public sub_02004A54 +.public sub_02004A60 .public sub_02004A90 +.public sub_02004A9C +.public sub_02004AB8 .public sub_02004AC8 .public sub_02004AD8 .public sub_02004B10 .public sub_02004B24 .public sub_02004EB4 .public sub_02004EC4 +.public sub_020051A4 .public sub_02005304 +.public sub_02005328 .public sub_020053A8 .public sub_020053F0 .public sub_02005408 .public sub_0200542C .public sub_02005448 +.public sub_02005464 .public sub_02005498 .public sub_020054AC +.public sub_020054D4 +.public sub_020054F0 +.public sub_020054F8 +.public sub_02005504 .public sub_02005518 .public sub_02005520 .public sub_02005550 .public sub_02005568 .public sub_02005584 +.public sub_020055AC +.public sub_02005600 +.public sub_02005680 +.public sub_020056E8 +.public sub_02005728 +.public sub_02005738 +.public sub_02005748 +.public sub_02005760 +.public sub_02005774 +.public sub_020057AC +.public sub_020058B8 +.public sub_02005918 .public sub_0200592C .public sub_02005944 +.public sub_02005958 .public sub_0200596C +.public sub_02005990 .public sub_020059B0 .public sub_020059D0 +.public sub_020059D8 +.public sub_020059E0 .public sub_020059F0 .public sub_02005A4C .public sub_02005AF8 @@ -23899,8 +24276,11 @@ .public sub_02005B78 .public sub_02005BA8 .public sub_02005BEC +.public sub_02005BFC .public sub_02005C18 .public sub_02005C24 +.public sub_02005C6C +.public sub_02005CC0 .public sub_02005CF4 .public sub_02005D00 .public sub_02005D10 @@ -23912,6 +24292,7 @@ .public sub_02005F88 .public sub_02005F94 .public sub_02005FA0 +.public sub_02005FD8 .public sub_0200602C .public sub_0200606C .public sub_02006088 @@ -23953,18 +24334,6 @@ .public sub_02007290 .public sub_02007294 .public sub_020072A4 -.public GfGfxLoader_LoadCharData -.public GfGfxLoader_LoadScrnData -.public GfGfxLoader_GXLoadPal -.public GfGfxLoader_GXLoadPalWithSrcOffset -.public GfGfxLoader_PartiallyLoadPalette -.public GfGfxLoader_LoadImageMapping -.public GfGfxLoader_GetCharData -.public GfGfxLoader_GetScrnData -.public GfGfxLoader_GetCellBank -.public GfGfxLoader_GetAnimBank -.public GfGfxLoader_LoadFromNarc -.public GfGfxLoader_LoadFromNarc_GetSizeOut .public sub_02007B44 .public sub_02007B68 .public sub_02007B8C @@ -23996,6 +24365,7 @@ .public sub_020090E4 .public sub_02009138 .public sub_0200914C +.public sub_0200925C .public sub_02009264 .public sub_02009284 .public sub_02009324 @@ -24009,6 +24379,10 @@ .public sub_020094BC .public sub_020094D8 .public sub_020094E4 +.public sub_020094FC +.public sub_0200994C +.public sub_02009B60 +.public sub_02009CD0 .public sub_02009D28 .public sub_02009D48 .public sub_02009E84 @@ -24030,6 +24404,8 @@ .public sub_0200A480 .public sub_0200A4E0 .public sub_0200A540 +.public sub_0200A590 +.public sub_0200A5FC .public sub_0200A674 .public sub_0200A6F0 .public sub_0200A714 @@ -24040,6 +24416,10 @@ .public sub_0200A7FC .public sub_0200A810 .public sub_0200A828 +.public sub_0200A840 +.public sub_0200A858 +.public sub_0200A870 +.public sub_0200A888 .public sub_0200A8FC .public sub_0200A900 .public sub_0200A908 @@ -24051,15 +24431,20 @@ .public sub_0200AA08 .public sub_0200AA3C .public sub_0200ACF0 +.public sub_0200AD30 .public sub_0200AD64 .public sub_0200ADA4 .public sub_0200ADE4 .public sub_0200AE18 +.public sub_0200AE58 .public sub_0200AE8C .public sub_0200AEB0 .public sub_0200AED4 .public sub_0200AF00 +.public sub_0200AF24 +.public sub_0200AF80 .public sub_0200AF94 +.public sub_0200AFD8 .public sub_0200B00C .public sub_0200B050 .public sub_0200B084 @@ -24080,61 +24465,10 @@ .public sub_0200B594 .public sub_0200B5C0 .public sub_0200B600 -.public ReadMsgData_NewNarc_ExistingString -.public ReadMsgData_NewNarc_NewString -.public ReadMsgDataIntoString -.public NewString_ReadMsgData -.public ReadMsgDataIntoU16Array -.public GetSpeciesNameIntoArray -.public ReadMsgData_ExpandPlaceholders -.public GetMoveName -.public GetSpeciesName -.public ScrStrBufs_new -.public ScrStrBufs_new_custom -.public ScrStrBufs_delete -.public BufferString -.public BufferPlayersName -.public BufferRivalsName -.public BufferFriendsName -.public BufferSpeciesName -.public BufferBoxMonSpeciesName -.public BufferBoxMonSpeciesNameWithArticle -.public BufferSpeciesNameWithArticle -.public BufferBoxMonNickname -.public BufferBoxMonOTName -.public BufferIntegerAsString -.public BufferMoveName -.public BufferRibbonNameOrDesc -.public BufferAbilityName -.public BufferNatureName -.public BufferItemName -.public BufferItemNameWithIndefArticle -.public BufferItemNamePlural -.public BufferPocketName -.public BufferTypeName -.public BufferStatName -.public BufferStatusName -.public BufferFlavorDislikeText -.public BufferLandmarkName -.public BufferTrainerClassName -.public BufferTrainerClassNameWithArticle -.public BufferTrainerClassNameFromDataStruct -.public BufferTrainerName -.public BufferFrontierOpponentName -.public BufferTrainerNameFromDataStruct .public sub_0200C408 .public sub_0200C440 .public sub_0200C490 -.public BufferCountryName -.public BufferCityName .public sub_0200C528 -.public BufferSealName -.public BufferSealNamePlural -.public BufferLocationName -.public BufferFashionName -.public BufferFashionNameWithArticle -.public BufferContestBackgroundName -.public BufferEasyChatWord .public sub_0200C74C .public sub_0200C784 .public sub_0200C7BC @@ -24149,15 +24483,8 @@ .public sub_0200C9C8 .public sub_0200CA0C .public sub_0200CA4C -.public BufferSafariZoneAreaName .public sub_0200CAD8 -.public BufferMonthNameAbbr -.public ScrStrBufs_UpperFirstChar .public sub_0200CB70 -.public StringExpandPlaceholders -.public ScrStrBufs_ResetBuffers -.public MessagePrinter_new -.public MessagePrinter_delete .public sub_0200CDAC .public sub_0200CDF0 .public sub_0200CE7C @@ -24297,7 +24624,74 @@ .public sub_0200FBF4 .public sub_0200FC20 .public sub_0200FC60 +.public sub_0200FCDC .public sub_0200FCFC +.public sub_0200FF88 +.public sub_0200FFB4 +.public sub_0201010C +.public sub_02010128 +.public sub_02010148 +.public sub_02010184 +.public sub_020101BC +.public sub_020101F8 +.public sub_02010230 +.public sub_0201025C +.public sub_02010288 +.public sub_020102C4 +.public sub_020102FC +.public sub_02010338 +.public sub_02010370 +.public sub_0201039C +.public sub_020103C8 +.public sub_020103FC +.public sub_0201042C +.public sub_02010458 +.public sub_02010484 +.public sub_020104B0 +.public sub_020104DC +.public sub_02010508 +.public sub_02010534 +.public sub_02010560 +.public sub_0201058C +.public sub_020105B8 +.public sub_020105E4 +.public sub_02010610 +.public sub_0201063C +.public sub_02010690 +.public sub_020106E0 +.public sub_0201071C +.public sub_02010754 +.public sub_0201079C +.public sub_020107E0 +.public sub_02010828 +.public sub_0201086C +.public sub_02010898 +.public sub_020108C4 +.public sub_020108F0 +.public sub_0201091C +.public sub_02010958 +.public sub_02010990 +.public sub_02010C38 +.public sub_02010E64 +.public sub_02010EC8 +.public sub_02010EE0 +.public sub_02010F00 +.public sub_02010F34 +.public sub_02010F84 +.public sub_02010FEC +.public sub_02011068 +.public sub_02012DD8 +.public sub_02012E10 +.public sub_020131F4 +.public sub_02013220 +.public sub_020132A8 +.public sub_020132E8 +.public sub_0201333C +.public sub_02013364 +.public sub_02013424 +.public sub_02013440 +.public sub_02013468 +.public sub_02013488 .public sub_02013534 .public sub_020135AC .public sub_020135D8 @@ -24331,20 +24725,10 @@ .public sub_02014540 .public sub_0201457C .public sub_020145B4 -.public GF_InitRTCWork -.public GF_RTC_CopyTime -.public GF_RTC_CopyDate -.public GF_RTC_TimeToSec -.public GF_RTC_DateTimeToSec -.public IsNighttime -.public GF_RTC_GetTimeOfDay .public sub_02014830 -.public GF_RTC_GetTimeOfDayByHour .public sub_0201485C -.public GF_RTC_TimeDelta .public sub_020148F4 .public sub_02014904 -.public ListMenuItems_AddItem .public sub_02014A08 .public sub_02014A38 .public sub_02014A4C @@ -24398,28 +24782,8 @@ .public sub_02015720 .public sub_02015754 .public sub_0201576C -.public MailMsg_init -.public MailMsg_init_withBank -.public MailMsg_init_default -.public MailMsg_init_fromTemplate -.public MailMsg_GetExpandedString -.public MailMsg_GetRawString -.public MailMsg_IsInit -.public MailMsg_AllFieldsAreInit -.public MailMsg_GetFieldI -.public MailMsg_GetMsgBank -.public MailMsg_GetMsgNo -.public MailMsg_compare -.public MailMsg_copy -.public MailMsg_SetMsgBankAndNum -.public MailMsg_SetFieldI -.public MailMsg_SetTrailingFieldsEmpty -.public EasyChatManager_new -.public EasyChatManager_delete -.public EasyChatManager_ReadWordIntoString -.public GetECWordIntoStringByIndex -.public GetECWordIndexByPair -.public GetCategoryAndMsgNoByECWordIdx +.public sub_02015BF0 +.public sub_02015BF4 .public sub_02015C28 .public sub_02015C3C .public sub_02015C48 @@ -24432,6 +24796,7 @@ .public sub_02015D68 .public sub_02015D6C .public sub_02015D94 +.public sub_02015DC8 .public sub_02015DDC .public sub_02015E20 .public sub_02015E64 @@ -24463,6 +24828,8 @@ .public sub_02016F40 .public sub_02017068 .public sub_02017088 +.public sub_02017FAC +.public sub_02017FCC .public sub_02017FE4 .public sub_02018000 .public sub_02018030 @@ -24506,6 +24873,9 @@ .public sub_02019030 .public sub_02019040 .public sub_020190E8 +.public sub_020192D0 +.public sub_0201935C +.public sub_02019490 .public sub_0201956C .public sub_020195C0 .public sub_020195F4 @@ -24578,26 +24948,19 @@ .public sub_0201BE00 .public sub_0201BE0C .public sub_0201BE7C -.public BgCommitTilemapBufferToVram -.public BgCopyOrUncompressTilemapBufferRangeToVram -.public BG_LoadScreenTilemapData -.public BG_LoadCharTilesData .public sub_0201C1C4 .public sub_0201C1F4 -.public BG_LoadPlttData .public sub_0201C290 .public sub_0201C2D8 .public sub_0201C4C4 .public sub_0201C4EC .public sub_0201C568 -.public FillBgTilemapRect .public sub_0201CA4C .public sub_0201CAE0 .public sub_0201CB04 .public sub_0201CB28 .public sub_0201CB4C .public sub_0201CBE4 -.public GetBgTilemapBuffer .public sub_0201CC14 .public sub_0201CC20 .public sub_0201CC2C @@ -24610,22 +24973,16 @@ .public sub_0201D618 .public sub_0201D634 .public sub_0201D8A0 -.public ClearWindowTilemapAndCopyToVram .public sub_0201D8E4 .public sub_0201D9B0 -.public BlitBitmapRectToWindow .public sub_0201DA04 .public sub_0201DACC .public sub_0201EE88 -.public GetWindowBgId -.public GetWindowX -.public GetWindowY .public sub_0201EEA0 .public sub_0201EEA8 .public sub_0201EEAC .public sub_0201EEB0 .public sub_0201EEB4 -.public ScheduleBgTilemapBufferTransfer .public sub_0201F238 .public sub_0201F25C .public sub_0201F2CC @@ -24636,20 +24993,16 @@ .public sub_0201F63C .public sub_0201F64C .public sub_0201F668 -.public Call_NNS_G3dTexLoad -.public Call_NNS_G3dPlttLoad .public sub_0201F82C .public sub_0201F834 .public sub_0201F880 .public sub_0201F8C0 +.public sub_0201F954 .public sub_0201F984 .public sub_0201F988 .public sub_0201F98C .public sub_0201F990 .public sub_0201FA34 -.public MsgArray_SkipControlCode -.public MsgArray_GetControlCode -.public MsgArray_ControlCodeGetField .public sub_0201FBB8 .public sub_0201FC30 .public sub_0201FCAC @@ -24658,22 +25011,17 @@ .public sub_0201FD00 .public sub_0201FD14 .public sub_0201FD20 -.public GetLCRNGSeed -.public LCRandom -.public PRandom -.public MTRandom .public sub_0201FECC .public sub_0201FF28 .public sub_0201FF44 .public sub_0201FF70 -.public MATH_CalcCRC16CCITT +.public sub_0201FFB0 .public sub_0201FFE0 .public sub_02020080 .public sub_02020094 .public sub_020200A0 .public sub_020200FC .public sub_0202036C -.public DecompressGlyphTile .public sub_020204FC .public sub_0202055C .public sub_020205AC @@ -24683,6 +25031,11 @@ .public sub_02020654 .public sub_02020674 .public sub_0202067C +.public sub_0202068C +.public sub_020206C8 +.public sub_020206E0 +.public sub_02020738 +.public sub_02020764 .public sub_02020838 .public sub_02020888 .public sub_020208DC @@ -24705,6 +25058,7 @@ .public sub_02020E80 .public sub_02020EB0 .public sub_02020F4C +.public sub_020210A0 .public sub_020210BC .public sub_020210D8 .public sub_02021148 @@ -24716,21 +25070,32 @@ .public sub_020215C0 .public sub_0202168C .public sub_020216C8 +.public sub_020216F4 +.public sub_02021758 +.public sub_020217B0 +.public sub_0202183C .public sub_02021884 +.public sub_02021910 +.public sub_02021934 +.public sub_020219B8 .public sub_02021A50 .public sub_02021AC8 .public sub_02021B5C .public sub_02021BD0 .public sub_02021BEC +.public sub_02022448 .public sub_02022588 +.public sub_020225E4 .public sub_02022608 .public sub_02022638 +.public sub_02022660 +.public sub_020226A4 +.public sub_020226E4 .public sub_02022744 .public sub_020227AC +.public sub_020227D4 .public sub_02022808 -.public GX_SetBanks .public sub_02022C54 -.public GX_EngineAToggleLayers .public sub_02022C9C .public sub_02022CBC .public sub_02022CC8 @@ -24826,8 +25191,10 @@ .public sub_02024890 .public sub_020248AC .public sub_020248B0 +.public sub_020248B4 .public sub_020248B8 .public sub_020248C0 +.public sub_020248C8 .public sub_020248F0 .public sub_02024950 .public sub_02024964 @@ -24836,6 +25203,7 @@ .public sub_020249D4 .public sub_020249F8 .public sub_02024A04 +.public sub_02024A0C .public sub_02024A14 .public sub_02024A48 .public sub_02024A6C @@ -24852,7 +25220,10 @@ .public sub_02024B60 .public sub_02024B68 .public sub_02024B78 +.public sub_02024BAC .public sub_02024BBC +.public sub_02024BF4 +.public sub_02024C9C .public sub_02024CB8 .public sub_02025204 .public sub_02025224 @@ -24866,6 +25237,8 @@ .public sub_02025380 .public sub_0202539C .public sub_020253F0 +.public sub_020254FC +.public sub_02025504 .public sub_02025534 .public sub_02025580 .public sub_020255A0 @@ -24899,41 +25272,12 @@ .public sub_02025C54 .public sub_02025C88 .public sub_02025C98 -.public FontData_new -.public FontData_delete -.public FontData_ModeSwitch -.public TryLoadGlyph -.public GetStringWidth -.public GetStringWidthFirstLine -.public StringAllCharsValid -.public GetStringWidthMultiline -.public GetGlyphWidth -.public String_ctor -.public String_dtor -.public StringSetEmpty -.public StringCopy -.public StringDup -.public String16_FormatInteger -.public String16_FormatUnsignedLongLong -.public String_atoi -.public StringCompare -.public StringGetLength -.public StringCountLines -.public StringGetLineN -.public String_RadioAddStatic -.public CopyU16ArrayToString -.public CopyU16ArrayToStringN -.public CopyStringToU16Array -.public String_c_str -.public StringCat -.public StrAddChar -.public StringCat_HandleTrainerName -.public StrUpperFirstChar .public sub_02026C44 .public sub_02026CAC .public sub_02026CC4 .public sub_02026DE0 .public sub_02026E18 +.public sub_02026E30 .public sub_02026E48 .public sub_02026E50 .public sub_02026E60 @@ -24955,14 +25299,24 @@ .public sub_020270D8 .public sub_020270E4 .public sub_020270F8 +.public sub_0202711C .public sub_02027134 +.public sub_02027144 +.public sub_02027158 +.public sub_02027164 +.public sub_0202716C +.public sub_02027170 +.public sub_02027180 +.public sub_02027190 +.public sub_020271A0 .public sub_020272B0 -.public SavArray_get +.public sub_020272EC +.public sub_020272F4 .public sub_020273B0 .public sub_020273F0 .public sub_0202746C -.public Sav2_InitDynamicRegion .public sub_020274D0 +.public sub_020274D4 .public sub_020274D8 .public sub_020274E0 .public sub_020274E8 @@ -24974,36 +25328,35 @@ .public sub_020275A4 .public sub_020275C4 .public sub_02027FFC +.public sub_02028230 +.public sub_020284A4 .public sub_02028900 .public sub_0202893C -.public Sav2_SysInfo_get -.public Sav2_SysInfo_RTC_get -.public Sav2_SysInfo_InitFromSystem -.public Sav2_SysInfo_MacAddressIsMine -.public Sav2_SysInfo_RTCOffsetIsMine .public sub_02028DC8 +.public sub_02028DD0 .public sub_02028DD8 .public sub_02028DDC -.public Sav2_SysInfo_RTC_init +.public sub_02028E1C +.public sub_02028E2C .public sub_02028E4C -.public Sav2_PlayerData_GetProfileAddr +.public sub_02028E6C +.public sub_02028E70 .public sub_02028EB4 .public sub_02028EC0 .public sub_02028ECC .public sub_02028ED0 .public sub_02028EE4 .public sub_02028EF0 +.public sub_02028F0C .public sub_02028F24 .public sub_02028F44 -.public PlayerProfile_GetNamePtr .public sub_02028F58 .public sub_02028F68 .public sub_02028F80 -.public PlayerProfile_GetTrainerID .public sub_02028F88 .public sub_02028F90 -.public PlayerProfile_GetTrainerGender .public sub_02028F98 +.public sub_02028FC8 .public sub_02028FF0 .public sub_02029024 .public sub_02029028 @@ -25013,20 +25366,46 @@ .public sub_02029068 .public sub_0202907C .public sub_02029080 +.public sub_02029084 .public sub_02029088 .public sub_0202908C .public sub_02029090 .public sub_020290A0 +.public sub_020290A8 +.public sub_020290B4 +.public sub_020290B8 +.public sub_020290BC +.public sub_020290C8 +.public sub_020290E4 .public sub_020290FC .public sub_020291A4 +.public sub_020291D4 .public sub_020291E8 .public sub_0202921C +.public sub_0202925C +.public sub_02029264 +.public sub_020292A8 +.public sub_020292B0 .public sub_020292DC .public sub_020292E4 +.public sub_020292E8 +.public sub_020292EC +.public sub_020292F4 .public sub_020292F8 +.public sub_0202930C +.public sub_02029314 +.public sub_0202931C +.public sub_02029324 +.public sub_02029334 +.public sub_0202933C +.public sub_02029344 +.public sub_0202936C +.public sub_020293B8 .public sub_020293D4 +.public sub_020293E0 .public sub_020293E8 .public sub_020293FC +.public sub_02029D98 .public sub_02029E0C .public sub_02029E48 .public sub_02029E84 @@ -25036,7 +25415,6 @@ .public sub_02029F60 .public sub_02029F74 .public sub_02029FAC -.public Pokedex_CheckMonCaughtFlag .public sub_0202A044 .public sub_0202A088 .public sub_0202A0B4 @@ -25044,31 +25422,45 @@ .public sub_0202A14C .public sub_0202A36C .public sub_0202A434 +.public sub_0202A53C .public sub_0202A55C +.public sub_0202A57C .public sub_0202A59C .public sub_0202A5E8 .public sub_0202A5F4 +.public sub_0202A614 .public sub_0202A634 .public sub_0202A640 .public sub_0202A798 .public sub_0202A8A8 +.public sub_0202A8B4 +.public sub_0202A8BC .public sub_0202A954 .public sub_0202A960 .public sub_0202A96C .public sub_0202A978 .public sub_0202A988 .public sub_0202A998 -.public GetRivalNamePtr .public sub_0202A9B0 +.public sub_0202A9C4 +.public sub_0202A9D8 .public sub_0202A9E8 .public sub_0202AA20 .public sub_0202AA44 .public sub_0202AA9C .public sub_0202AAD4 +.public sub_0202AB18 .public sub_0202ABB0 +.public sub_0202ABBC +.public sub_0202ABD0 +.public sub_0202ABEC +.public sub_0202AC0C .public sub_0202AC1C .public sub_0202AC38 .public sub_0202AC60 +.public sub_0202AC88 +.public sub_0202AC9C +.public sub_0202ACA8 .public sub_0202ACF4 .public sub_0202AD20 .public sub_0202AD28 @@ -25083,44 +25475,50 @@ .public sub_0202ADB4 .public sub_0202ADCC .public sub_0202ADD4 +.public sub_0202ADEC .public sub_0202AE0C +.public sub_0202AE38 +.public sub_0202AE40 +.public sub_0202AE4C +.public sub_0202AE68 +.public sub_0202AE74 +.public sub_0202AE8C +.public sub_0202AE98 .public sub_0202AEA8 .public sub_0202AEBC +.public sub_0202AEC0 +.public sub_0202AEC8 +.public sub_0202AED4 .public sub_0202AEF8 .public sub_0202AF00 +.public sub_0202AF28 .public sub_0202B01C -.public Mail_TypeIsValid -.public CreateKenyaMail -.public Mail_GetOTID -.public Mail_GetAuthorNamePtr -.public Mail_GetAuthorGender -.public Mail_GetType -.public Mail_SetType -.public Mail_GetLanguage -.public Mail_GetVersion .public sub_0202B404 .public sub_0202B4E4 -.public Mail_GetUnk20Array -.public Mail_CopyToUnk20Array -.public Sav2_Mailbox_get -.public Mailbox_DeleteSlotI -.public Mailbox_CopyMailToSlotI -.public Mailbox_AllocAndFetchMailI +.public sub_0202B930 +.public sub_0202B98C .public sub_0202B994 .public sub_0202B998 .public sub_0202B9B8 .public sub_0202B9E0 +.public sub_0202B9EC +.public sub_0202BA08 .public sub_0202BA2C .public sub_0202BA5C .public sub_0202BA70 .public sub_0202BAB0 +.public sub_0202BACC +.public sub_0202BAE8 .public sub_0202BB08 +.public sub_0202BB7C +.public sub_0202BBD8 .public sub_0202BC10 .public sub_0202BC38 .public sub_0202BC60 .public sub_0202BC88 .public sub_0202BCAC .public sub_0202BD60 +.public sub_0202BD7C .public sub_0202BDC8 .public sub_0202BDEC .public sub_0202BE14 @@ -25138,6 +25536,7 @@ .public sub_0202BF08 .public sub_0202BF80 .public sub_0202C028 +.public sub_0202C034 .public sub_0202C03C .public sub_0202C08C .public sub_0202C090 @@ -25146,38 +25545,65 @@ .public sub_0202C254 .public sub_0202C270 .public sub_0202C298 +.public sub_0202C2B4 .public sub_0202C2DC .public sub_0202C2F8 .public sub_0202C318 .public sub_0202C338 .public sub_0202C46C .public sub_0202C4B0 +.public sub_0202C4F0 .public sub_0202C554 .public sub_0202C584 .public sub_0202C5B4 .public sub_0202C5E4 .public sub_0202C6F4 +.public sub_0202C6FC +.public sub_0202C714 +.public sub_0202C730 +.public sub_0202C738 +.public sub_0202C75C +.public sub_0202C78C +.public sub_0202C7B4 .public sub_0202C7C0 .public sub_0202C7DC .public sub_0202C7E0 +.public sub_0202C7F8 +.public sub_0202C824 .public sub_0202C830 .public sub_0202C83C +.public sub_0202C848 .public sub_0202C854 +.public sub_0202C860 +.public sub_0202C878 +.public sub_0202C88C .public sub_0202C8C4 .public sub_0202C8E4 +.public sub_0202C948 .public sub_0202C950 .public sub_0202C954 .public sub_0202C974 .public sub_0202C98C +.public sub_0202C9A0 +.public sub_0202C9A8 .public sub_0202C9D8 .public sub_0202C9E4 .public sub_0202C9E8 +.public sub_0202CA10 +.public sub_0202CA14 +.public sub_0202CA1C +.public sub_0202CA24 +.public sub_0202CA2C .public sub_0202CA44 .public sub_0202CA58 .public sub_0202CA8C .public sub_0202CA90 .public sub_0202CA94 +.public sub_0202CAE4 .public sub_0202CB5C +.public sub_0202CB6C +.public sub_0202CBC0 +.public sub_0202CBC8 .public sub_0202CBDC .public sub_0202CBE8 .public sub_0202CBF4 @@ -25195,42 +25621,82 @@ .public sub_0202CD3C .public sub_0202CD74 .public sub_0202CD94 +.public sub_0202CDB0 .public sub_0202CDBC .public sub_0202CE24 .public sub_0202CE28 .public sub_0202CE2C +.public sub_0202CE30 +.public sub_0202CE38 +.public sub_0202CE50 .public sub_0202CE70 .public sub_0202CE74 .public sub_0202CE7C .public sub_0202CE80 .public sub_0202CEB8 +.public sub_0202CF08 +.public sub_0202CF1C +.public sub_0202CF24 .public sub_0202CF54 +.public sub_0202D064 +.public sub_0202D0A4 .public sub_0202D0FC .public sub_0202D144 .public sub_0202D18C .public sub_0202D1C0 +.public sub_0202D208 +.public sub_0202D214 +.public sub_0202D234 +.public sub_0202D240 +.public sub_0202D254 +.public sub_0202D274 +.public sub_0202D284 +.public sub_0202D308 +.public sub_0202D3B0 +.public sub_0202D3DC +.public sub_0202D3E4 .public sub_0202D3F8 +.public sub_0202D450 .public sub_0202D488 +.public sub_0202D4B8 +.public sub_0202D4DC +.public sub_0202D4FC +.public sub_0202D564 .public sub_0202D568 .public sub_0202D57C +.public sub_0202D5C4 .public sub_0202D5DC +.public sub_0202D638 +.public sub_0202D63C +.public sub_0202D640 .public sub_0202D660 .public sub_0202D678 .public sub_0202D720 .public sub_0202D7B0 +.public sub_0202D7B8 .public sub_0202D7C0 .public sub_0202D7F0 .public sub_0202D804 .public sub_0202D8A4 .public sub_0202D8D0 .public sub_0202D8E4 +.public sub_0202D908 .public sub_0202D918 .public sub_0202D928 +.public sub_0202D938 +.public sub_0202D93C .public sub_0202D95C +.public sub_0202D968 +.public sub_0202D96C +.public sub_0202D9A0 .public sub_0202D9A8 .public sub_0202D9C4 +.public sub_0202D9D0 .public sub_0202D9E0 +.public sub_0202D9E8 +.public sub_0202D9F4 .public sub_0202D9F8 +.public sub_0202DA10 .public sub_0202DA28 .public sub_0202DA44 .public sub_0202DA54 @@ -25240,6 +25706,9 @@ .public sub_0202DB08 .public sub_0202DB18 .public sub_0202DB2C +.public sub_0202DB34 +.public sub_0202DB40 +.public sub_0202DB44 .public sub_0202DB54 .public sub_0202DB5C .public sub_0202DB64 @@ -25249,6 +25718,7 @@ .public sub_0202DB90 .public sub_0202DB98 .public sub_0202DBA0 +.public sub_0202DBA8 .public sub_0202DBB0 .public sub_0202DBF4 .public sub_0202DC2C @@ -25266,15 +25736,28 @@ .public sub_0202DFAC .public sub_0202E014 .public sub_0202E024 +.public sub_0202E034 +.public sub_0202E054 +.public sub_0202E068 +.public sub_0202E090 +.public sub_0202E0AC +.public sub_0202E0C8 +.public sub_0202E0DC +.public sub_0202E0E4 +.public sub_0202E0F8 .public sub_0202E298 .public sub_0202E2C4 .public sub_0202E2F8 .public sub_0202E344 .public sub_0202E3C4 +.public sub_0202E41C +.public sub_0202E424 .public sub_0202E43C .public sub_0202E474 .public sub_0202E4B0 .public sub_0202E4BC +.public sub_0202E4F4 +.public sub_0202E4FC .public sub_0202E530 .public sub_0202E544 .public sub_0202E66C @@ -25282,16 +25765,32 @@ .public sub_0202E9FC .public sub_0202EA80 .public sub_0202EAFC +.public sub_0202EB30 +.public sub_0202EB38 +.public sub_0202EB74 .public sub_0202EC14 .public sub_0202EC28 +.public sub_0202EC70 .public sub_0202EC98 .public sub_0202ECC0 +.public sub_0202ED18 +.public sub_0202ED1C +.public sub_0202ED34 +.public sub_0202ED40 +.public sub_0202ED44 +.public sub_0202ED48 +.public sub_0202ED58 +.public sub_0202ED68 +.public sub_0202ED74 .public sub_0202ED7C .public sub_0202ED88 +.public sub_0202EDEC .public sub_0202EDF4 .public sub_0202EDF8 .public sub_0202EDFC +.public sub_0202EE00 .public sub_0202EE4C +.public sub_0202EE58 .public sub_0202EE70 .public sub_0202EE7C .public sub_0202EE84 @@ -25302,20 +25801,28 @@ .public sub_0202EEB4 .public sub_0202EEC0 .public sub_0202EEE4 +.public sub_0202EF18 .public sub_0202EF44 .public sub_0202EF70 +.public sub_0202F01C +.public sub_0202F050 .public sub_0202F08C .public sub_0202F0C4 .public sub_0202F0E8 .public sub_0202F100 .public sub_0202F128 .public sub_0202F14C +.public sub_0202F198 +.public sub_0202F1B4 +.public sub_0202F1C4 .public sub_0202F1F4 .public sub_0202F224 .public sub_0202F240 .public sub_0202F254 .public sub_0202F274 .public sub_0202F284 +.public sub_0202F294 +.public sub_0202F300 .public sub_0202F340 .public sub_0202F3DC .public sub_0202F400 @@ -25323,30 +25830,47 @@ .public sub_0202F500 .public sub_0202F514 .public sub_0202F53C +.public sub_0202F574 .public sub_0202F57C +.public sub_0202F588 .public sub_0202F5B8 +.public sub_0202F5F8 .public sub_0202F620 .public sub_0202F630 .public sub_0202F658 .public sub_0202F680 +.public sub_0202F6A0 +.public sub_0202F6AC +.public sub_0202F6B8 .public sub_0202F720 .public sub_0202F730 .public sub_0202F784 +.public sub_0202F798 .public sub_0202F7D8 +.public sub_0202F844 .public sub_0202F87C +.public sub_0202F888 +.public sub_0202F890 .public sub_0202F8D4 .public sub_0202F91C .public sub_0202F930 .public sub_0202F968 +.public sub_0202FA5C .public sub_0202FA64 +.public sub_0202FA70 +.public sub_0202FA88 .public sub_0202FAB0 .public sub_0202FADC .public sub_0202FAF0 +.public sub_0202FB14 .public sub_0202FB38 +.public sub_0202FB98 .public sub_0202FBCC +.public sub_0202FBD4 .public sub_0202FBF0 .public sub_0202FC24 .public sub_0202FC48 +.public sub_0202FC5C .public sub_0202FC74 .public sub_0202FC90 .public sub_0202FD28 @@ -25357,7 +25881,9 @@ .public sub_02030260 .public sub_0203027C .public sub_020302A4 +.public sub_0203049C .public sub_020304B4 +.public sub_020304F0 .public sub_0203077C .public sub_020307AC .public sub_020307DC @@ -25405,7 +25931,11 @@ .public sub_02030FA0 .public sub_02030FB0 .public sub_02030FE4 +.public sub_02031000 +.public sub_02031008 .public sub_0203107C +.public sub_02031084 +.public sub_020310A0 .public sub_020310BC .public sub_02031108 .public sub_02031188 @@ -25414,6 +25944,8 @@ .public sub_02031228 .public sub_02031248 .public sub_0203126C +.public sub_020312A4 +.public sub_020312AC .public sub_020312C4 .public sub_020312E0 .public sub_020313C4 @@ -25430,6 +25962,7 @@ .public sub_0203164C .public sub_020316F0 .public sub_02031700 +.public sub_0203170C .public sub_02031710 .public sub_02031734 .public sub_02031744 @@ -25439,11 +25972,15 @@ .public sub_020317BC .public sub_0203186C .public sub_0203189C +.public sub_020318C8 +.public sub_020318CC .public sub_020318E8 .public sub_020318F4 .public sub_020318F8 .public sub_020318FC .public sub_02031900 +.public sub_02031904 +.public sub_0203190C .public sub_02031968 .public sub_02031974 .public sub_02031978 @@ -25463,9 +26000,14 @@ .public sub_02031A98 .public sub_02031AB8 .public sub_02031ACC +.public sub_02031AE4 +.public sub_02031AF0 +.public sub_02031AF4 .public sub_02031B00 +.public sub_02031B0C .public sub_02031B10 .public sub_02031B14 +.public sub_02031B54 .public sub_02031B68 .public sub_02031BA4 .public sub_02031BB8 @@ -25476,6 +26018,7 @@ .public sub_02031C08 .public sub_02031C30 .public sub_02031CA0 +.public sub_02031CCC .public sub_02031CE8 .public sub_02031CEC .public sub_02031D80 @@ -25489,6 +26032,8 @@ .public sub_020322AC .public sub_02032308 .public sub_020325EC +.public sub_020325F8 +.public sub_02032600 .public sub_02032624 .public sub_0203263C .public sub_02032644 @@ -25506,11 +26051,14 @@ .public sub_02032744 .public sub_02032764 .public sub_0203276C +.public sub_02032774 .public sub_0203277C +.public sub_02032788 .public sub_020327DC .public sub_020327F8 .public sub_02032808 .public sub_02033250 +.public sub_0203401C .public sub_02034084 .public sub_02034098 .public sub_0203410C @@ -25533,6 +26081,7 @@ .public sub_020348A8 .public sub_020348CC .public sub_020348F0 +.public sub_02034AC0 .public sub_02034AEC .public sub_02034B00 .public sub_02034D8C @@ -25544,24 +26093,41 @@ .public sub_02035198 .public sub_020351DC .public sub_02035650 +.public sub_02035664 .public sub_020356C0 .public sub_020356EC .public sub_02035754 .public sub_02035784 .public sub_02035798 +.public sub_02035838 +.public sub_02035854 +.public sub_02035878 +.public sub_0203588C .public sub_020358B8 .public sub_020358D0 +.public sub_02035FD8 +.public sub_02035FE4 +.public sub_02036010 .public sub_02036144 .public sub_02036FD8 .public sub_02037030 .public sub_02037088 .public sub_02037108 +.public sub_02037184 +.public sub_02037190 .public sub_020373B4 .public sub_02037454 .public sub_02037474 +.public sub_02037498 +.public sub_020374AC +.public sub_020374C0 +.public sub_020374E4 +.public sub_02037504 .public sub_0203769C .public sub_020376D4 +.public sub_020376E0 .public sub_020376EC +.public sub_020376F8 .public sub_02037700 .public sub_0203774C .public sub_0203775C @@ -25570,6 +26136,7 @@ .public sub_0203783C .public sub_02037854 .public sub_02037880 +.public sub_02037894 .public sub_020378AC .public sub_020378CC .public sub_020378E4 @@ -25587,17 +26154,32 @@ .public sub_02037C0C .public sub_02037C44 .public sub_02037D78 +.public sub_02037D8C +.public sub_02037DD4 .public sub_02037E1C +.public sub_02037E38 .public sub_02037E9C .public sub_02037EC0 .public sub_02037EC8 +.public sub_02037F18 +.public sub_02037F64 +.public sub_02037F94 +.public sub_02037FCC .public sub_02037FF0 +.public sub_02038070 +.public sub_02038094 .public sub_020380B0 .public sub_020380CC +.public sub_020380F4 +.public sub_02038104 .public sub_02038114 .public sub_02038148 +.public sub_020388E0 +.public sub_02038918 .public sub_0203893C +.public sub_0203894C .public sub_0203897C +.public sub_0203898C .public sub_02038C1C .public sub_02038D28 .public sub_02038D64 @@ -25631,7 +26213,10 @@ .public sub_0203988C .public sub_020398C8 .public sub_020398D4 +.public sub_02039918 .public sub_0203993C +.public sub_0203996C +.public sub_02039980 .public sub_02039998 .public sub_020399B8 .public sub_020399EC @@ -25650,6 +26235,7 @@ .public sub_02039FB8 .public sub_02039FD8 .public sub_02039FFC +.public sub_0203A01C .public sub_0203A040 .public sub_0203A05C .public sub_0203A084 @@ -25666,7 +26252,12 @@ .public sub_0203A994 .public sub_0203A9C8 .public sub_0203AA44 +.public sub_0203AC88 +.public sub_0203AC90 .public sub_0203AF9C +.public sub_0203AFB4 +.public sub_0203AFD8 +.public sub_0203AFE0 .public sub_0203B004 .public sub_0203B014 .public sub_0203B024 @@ -25675,18 +26266,38 @@ .public sub_0203B094 .public sub_0203B0C8 .public sub_0203B0DC +.public sub_0203B0F4 +.public sub_0203B114 +.public sub_0203B16C +.public sub_0203B1FC .public sub_0203B27C .public sub_0203B290 +.public sub_0203B2FC +.public sub_0203B310 .public sub_0203B324 .public sub_0203B36C .public sub_0203B388 .public sub_0203B3A8 .public sub_0203B3C8 +.public sub_0203B400 +.public sub_0203B41C +.public sub_0203B438 +.public sub_0203B454 +.public sub_0203B470 .public sub_0203B48C .public sub_0203B4A8 .public sub_0203B4C4 +.public sub_0203B4F8 +.public sub_0203B518 +.public sub_0203B540 .public sub_0203B564 +.public sub_0203B578 .public sub_0203B58C +.public sub_0203B5AC +.public sub_0203B5CC +.public sub_0203B5DC +.public sub_0203B5FC +.public sub_0203B60C .public sub_0203B610 .public sub_0203B648 .public sub_0203B6B0 @@ -25698,2280 +26309,50 @@ .public sub_0203B744 .public sub_0203B74C .public sub_0203B754 -.public sub_0203B88C -.public sub_0203B8B8 -.public sub_0203B958 -.public sub_0203B95C -.public sub_0203B964 -.public sub_0203B968 -.public sub_0203B980 -.public sub_0203B984 -.public sub_0203B994 -.public sub_0203B9A4 -.public sub_0203B9B4 -.public sub_0203B9B8 -.public sub_0203B9C0 -.public sub_0203B9C4 -.public sub_0203B9DC -.public sub_0203BA74 -.public sub_0203BAE8 -.public sub_0203BC10 -.public sub_0203BC28 -.public sub_0203BCDC -.public sub_0203BD20 -.public sub_0203C3CC -.public sub_0203DBF8 -.public sub_0203DC64 -.public sub_0203DC90 -.public sub_0203DDA4 -.public sub_0203DE04 -.public sub_0203DF8C -.public sub_0203E13C -.public sub_0203E30C -.public sub_0203E344 -.public sub_0203E354 -.public sub_0203E398 -.public sub_0203E3D4 -.public sub_0203EB08 -.public sub_0203ED24 -.public sub_0203ED80 -.public sub_0203FA38 -.public sub_0203FD58 -.public sub_0203FE2C -.public sub_0203FE44 -.public sub_0203FE74 -.public sub_0203FED4 -.public sub_0203FF0C -.public sub_020402F0 -.public sub_02040374 -.public sub_020403AC -.public sub_020403FC -.public sub_02040410 -.public sub_02040424 -.public sub_020404C8 -.public sub_02040500 -.public sub_02040514 -.public sub_0204055C -.public sub_02040614 -.public sub_02040750 -.public sub_020407AC -.public sub_0204A68C -.public sub_0204A824 -.public sub_0204AA2C -.public sub_0204ABC8 -.public sub_0204AC78 -.public sub_0204AC7C -.public sub_0204AD04 -.public sub_0204AE20 -.public sub_0204AF2C -.public sub_0204B05C -.public sub_0204B068 -.public sub_0204B4D4 -.public sub_0204B510 -.public sub_0204B538 -.public sub_0204F878 -.public sub_020503D0 -.public sub_020503DC -.public sub_02050408 -.public sub_02050430 -.public sub_020504A4 -.public sub_020504F0 -.public sub_02050510 -.public sub_02050530 -.public sub_02050590 -.public sub_0205064C -.public sub_02050650 -.public sub_02050654 -.public sub_02050AAC -.public sub_02050B08 -.public sub_02050B90 -.public sub_020511F8 -.public sub_020517E8 -.public sub_020517FC -.public sub_020518D8 -.public sub_02051A60 -.public sub_02051A74 -.public sub_02051BF8 -.public sub_02051C9C -.public sub_02051D18 -.public sub_02051F00 -.public sub_02052544 -.public sub_02052554 -.public sub_02052580 -.public sub_02053018 -.public sub_02053038 -.public sub_02053B04 -.public sub_02053E08 -.public sub_02053F14 -.public sub_020542D0 -.public sub_020542E8 -.public sub_02054388 -.public sub_020543BC -.public sub_0205442C -.public sub_02054440 -.public sub_02054774 -.public sub_02054790 -.public sub_02054874 -.public sub_020548C0 -.public sub_02054918 -.public sub_02054A60 -.public sub_02054AE4 -.public sub_02054B74 -.public sub_02054C20 -.public sub_02054C90 -.public sub_02054D10 -.public sub_02054DC8 -.public sub_02054E20 -.public sub_02054E50 -.public sub_02054E5C -.public sub_02054F28 -.public sub_02054F60 -.public sub_02054FA8 -.public sub_02054FDC -.public sub_02055164 -.public sub_02055198 -.public sub_02055418 -.public sub_020555E0 -.public sub_02055680 -.public sub_020556A8 -.public sub_02055708 -.public sub_02055760 -.public sub_020557A0 -.public sub_02055874 -.public sub_0205589C -.public sub_020558BC -.public sub_02055BF0 -.public sub_02055C9C -.public sub_02055CD8 -.public sub_02056EE0 -.public sub_02057A0C -.public sub_02057F18 -.public sub_02057FA4 -.public sub_020580E4 -.public sub_02058124 -.public sub_02058164 -.public sub_02058180 -.public sub_02058258 -.public sub_02058284 -.public sub_02058740 -.public sub_02058AA0 -.public sub_02059D44 -.public sub_0205A904 -.public sub_0205AA84 -.public sub_0205AD24 -.public sub_0205B418 -.public sub_0205B464 -.public sub_0205B46C -.public sub_0205B4A4 -.public sub_0205B4EC -.public sub_0205B514 -.public sub_0205B564 -.public sub_0205B5A8 -.public sub_0205B5B4 -.public sub_0205B5EC -.public sub_0205B624 -.public sub_0205B63C -.public sub_0205B6A0 -.public sub_0205B6E8 -.public sub_0205B6F4 -.public sub_0205B70C -.public sub_0205B718 -.public sub_0205B724 -.public sub_0205B730 -.public sub_0205B73C -.public sub_0205B748 -.public sub_0205B754 -.public sub_0205B760 -.public sub_0205B76C -.public sub_0205B778 -.public sub_0205B78C -.public sub_0205B7E0 -.public sub_0205B7EC -.public sub_0205B7F8 -.public sub_0205B804 -.public sub_0205B810 -.public sub_0205B81C -.public sub_0205B834 -.public sub_0205B840 -.public sub_0205B84C -.public sub_0205B858 -.public sub_0205B864 -.public sub_0205B870 -.public sub_0205B87C -.public sub_0205B888 -.public sub_0205B894 -.public sub_0205B8A0 -.public sub_0205B8DC -.public sub_0205B8E8 -.public sub_0205B984 -.public sub_0205B994 -.public sub_0205B9AC -.public sub_0205B9DC -.public sub_0205B9E8 -.public sub_0205B9F4 -.public sub_0205BA00 -.public sub_0205BA0C -.public sub_0205BA18 -.public sub_0205BA24 -.public sub_0205BA30 -.public sub_0205BA70 -.public sub_0205BAA0 -.public sub_0205BAAC -.public sub_0205BAB8 -.public sub_0205BAC4 -.public sub_0205BAD0 -.public sub_0205BAE4 -.public sub_0205BAEC -.public sub_0205BAF8 -.public sub_0205BB04 -.public sub_0205BBD0 -.public sub_0205BC78 -.public sub_0205BD64 -.public sub_0205BFF0 -.public sub_0205C01C -.public sub_0205C048 -.public sub_0205C074 -.public sub_0205C0A0 -.public sub_0205C0CC -.public sub_0205C0F4 -.public sub_0205C11C -.public sub_0205C144 -.public sub_0205C174 -.public sub_0205C1A0 -.public sub_0205C1C8 -.public sub_0205C1F0 -.public sub_0205C218 -.public sub_0205C240 -.public sub_0205C268 -.public sub_0205C298 -.public sub_0205C2C0 -.public sub_0205C2E8 -.public sub_0205C310 -.public sub_0205C350 -.public sub_0205C46C -.public sub_0205C654 -.public sub_0205C660 -.public sub_0205C67C -.public sub_0205C688 -.public sub_0205C6AC -.public sub_0205C6BC -.public sub_0205C6CC -.public sub_0205C6D4 -.public sub_0205C6DC -.public sub_0205C6E4 -.public sub_0205C700 -.public sub_0205C710 -.public sub_0205C718 -.public sub_0205C71C -.public sub_0205C724 -.public sub_0205C74C -.public sub_0205C78C -.public sub_0205C790 -.public sub_0205C7C8 -.public sub_0205C7EC -.public sub_0205C838 -.public sub_0205C858 -.public sub_0205C874 -.public sub_0205C898 -.public sub_0205C99C -.public sub_0205CA1C -.public sub_0205CA38 -.public sub_0205CA4C -.public sub_0205CB38 -.public sub_0205CB40 -.public sub_0205CBE4 -.public sub_0205CF44 -.public sub_0205CF60 -.public sub_0205CFBC -.public sub_0205DA34 -.public sub_0205DD94 -.public sub_0205DE38 -.public sub_0205DE98 -.public sub_0205DEC0 -.public sub_0205DFC8 -.public sub_0205DFD4 -.public sub_0205DFEC -.public sub_0205E02C -.public sub_0205E104 -.public sub_0205E294 -.public sub_0205E2B4 -.public sub_0205E38C -.public sub_0205E3CC -.public sub_0205E400 -.public sub_0205E420 -.public sub_0205E4C8 -.public sub_0205E520 -.public sub_0205E580 -.public sub_0205EE60 -.public sub_0205EEF4 -.public sub_0205F09C -.public sub_0205F0A8 -.public sub_0205F0F8 -.public sub_0205F168 -.public sub_0205F17C -.public sub_0205F184 -.public sub_0205F190 -.public sub_0205F19C -.public sub_0205F1A0 -.public sub_0205F1AC -.public sub_0205F1BC -.public sub_0205F1C4 -.public sub_0205F1D0 -.public sub_0205F1E4 -.public sub_0205F1EC -.public sub_0205F1F0 -.public sub_0205F20C -.public sub_0205F214 -.public sub_0205F220 -.public sub_0205F228 -.public sub_0205F248 -.public sub_0205F24C -.public sub_0205F254 -.public sub_0205F258 -.public sub_0205F25C -.public sub_0205F264 -.public sub_0205F268 -.public sub_0205F26C -.public sub_0205F270 -.public sub_0205F274 -.public sub_0205F278 -.public sub_0205F27C -.public sub_0205F288 -.public sub_0205F290 -.public sub_0205F2A8 -.public sub_0205F2AC -.public sub_0205F2B8 -.public sub_0205F2D0 -.public sub_0205F2F4 -.public sub_0205F318 -.public sub_0205F320 -.public sub_0205F328 -.public sub_0205F330 -.public sub_0205F35C -.public sub_0205F3E8 -.public sub_0205F40C -.public sub_0205F484 -.public sub_0205F4C0 -.public sub_0205F504 -.public sub_0205F52C -.public sub_0205F538 -.public sub_0205F544 -.public sub_0205F55C -.public sub_0205F568 -.public sub_0205F574 -.public sub_0205F5A4 -.public sub_0205F5D4 -.public sub_0205F5E8 -.public sub_0205F5F8 -.public sub_0205F624 -.public sub_0205F678 -.public sub_0205F684 -.public sub_0205F690 -.public sub_0205F6FC -.public sub_0205F708 -.public sub_0205F714 -.public sub_0205F73C -.public sub_0205F7D4 -.public sub_0205F808 -.public sub_0205F83C -.public sub_0205F870 -.public sub_0205F888 -.public sub_0205F89C -.public sub_0205F8FC -.public sub_0205F900 -.public sub_0205F904 -.public sub_0205F908 -.public sub_0205F90C -.public sub_0205F910 -.public sub_0205F914 -.public sub_0205F918 -.public sub_0205F924 -.public sub_0205F928 -.public sub_0205F934 -.public sub_0205F938 -.public sub_0205F944 -.public sub_0205F954 -.public sub_0205F968 -.public sub_0205F96C -.public sub_0205F97C -.public sub_0205F98C -.public sub_0205F990 -.public sub_0205F9A0 -.public sub_0205F9B0 -.public sub_0205FB58 -.public sub_0205FBC0 -.public sub_0205FC94 -.public sub_0205FCD4 -.public sub_02060BB8 -.public sub_02060F0C -.public sub_02060F18 -.public sub_02060F78 -.public sub_02060FA8 -.public sub_020611C8 -.public sub_0206121C -.public sub_02062108 -.public sub_0206214C -.public sub_02062198 -.public sub_020621C0 -.public sub_020621F0 -.public sub_02062214 -.public sub_02062260 -.public sub_0206226C -.public sub_0206234C -.public sub_02064084 -.public sub_020640C8 -.public sub_020648EC -.public sub_02064910 -.public sub_02064980 -.public sub_02064F24 -.public sub_02065690 -.public sub_0206599C -.public sub_020659A8 -.public sub_020659B8 -.public sub_020659CC -.public sub_02066420 -.public sub_020665EC -.public sub_02066614 -.public sub_02066644 -.public sub_02066654 -.public sub_02066674 -.public sub_020666C4 -.public sub_020666D8 -.public sub_02066724 -.public sub_0206677C -.public sub_02066794 -.public sub_02066860 -.public sub_02066870 -.public sub_020668A0 -.public sub_020668C0 -.public sub_02066930 -.public sub_02066950 -.public sub_020669A4 -.public sub_020669B4 -.public sub_020669D0 -.public sub_020669E0 -.public sub_02066A00 -.public sub_02066A3C -.public sub_02066A4C -.public sub_02066A58 -.public sub_02066A64 -.public sub_02066AD0 -.public sub_02066B50 -.public sub_02066B60 -.public sub_02066B70 -.public sub_02066BE8 -.public sub_02066D80 -.public sub_02066DB8 -.public sub_02066DC8 -.public sub_02066DD8 -.public sub_02066DE8 -.public sub_02066DF8 -.public sub_02066E08 -.public sub_02066E18 -.public sub_02066E28 -.public sub_02066E38 -.public sub_02066E48 -.public sub_02066E58 -.public sub_02066E74 -.public sub_02066E84 -.public sub_02066ECC -.public sub_020674A4 -.public sub_020674BC -.public sub_02067584 -.public sub_02067608 -.public sub_02067698 -.public sub_020677F4 -.public sub_020689C8 -.public sub_020689F8 -.public sub_02068B0C -.public sub_02068B48 -.public sub_02068BAC -.public sub_02068D18 -.public sub_02068D74 -.public sub_02068D90 -.public sub_02068D98 -.public sub_02068DA8 -.public sub_02068DB8 -.public sub_02068F68 -.public sub_02068F84 -.public sub_02068F98 -.public sub_02069528 -.public sub_020696C4 -.public sub_02069714 -.public sub_02069784 -.public sub_020697DC -.public sub_02069818 -.public sub_02069864 -.public sub_02069884 -.public sub_02069894 -.public sub_020698D0 -.public sub_020698E8 -.public sub_02069948 -.public sub_02069978 -.public sub_02069998 -.public sub_020699AC -.public sub_020699BC -.public sub_020699D0 -.public sub_020699F8 -.public sub_02069D68 -.public sub_02069D70 -.public sub_02069DC8 -.public sub_02069E28 -.public sub_02069E84 -.public sub_02069EE8 -.public sub_02069F0C -.public sub_02069F3C -.public sub_02069F64 -.public sub_02069F7C -.public sub_02069F88 -.public sub_02069FB0 -.public sub_02069FF4 -.public sub_0206A040 -.public sub_0206A054 -.public sub_0206A1D4 -.public sub_0206A1F4 -.public sub_0206A240 -.public sub_0206A268 -.public sub_0206A288 -.public sub_0206A2C0 -.public sub_0206A304 -.public sub_0206A310 -.public sub_0206A338 -.public sub_0206A8C0 -.public sub_0206A8DC -.public sub_0206C0E8 -.public sub_0206C8B8 -.public sub_0206CD1C -.public sub_0206D02C -.public sub_0206D894 -.public sub_0206D8D0 -.public sub_0206DB28 -.public sub_0206DB30 -.public ZeroMonData -.public ZeroBoxMonData -.public SizeOfStructPokemon -.public AllocMonZeroed -.public sub_0206DD40 -.public sub_0206DD8C -.public sub_0206DDD8 -.public sub_0206DE00 -.public sub_0206DE38 -.public sub_0206E108 -.public sub_0206E14C -.public sub_0206E21C -.public sub_0206E250 -.public sub_0206E27C -.public GetMonData -.public GetBoxMonData -.public sub_0206EC40 -.public sub_0206ED70 -.public sub_0206F558 -.public sub_0206FA6C -.public sub_0206FA8C -.public sub_0206FAA8 -.public sub_0206FBB0 -.public sub_0206FBC4 -.public sub_0206FBE8 -.public sub_0206FC08 -.public sub_0206FC40 -.public sub_0206FCA8 -.public sub_0206FCDC -.public sub_0206FD00 -.public sub_0206FD70 -.public sub_0206FDA8 -.public sub_0206FDFC -.public sub_0206FE04 -.public sub_0206FE2C -.public sub_0206FE90 -.public sub_0206FF88 -.public sub_0206FF90 -.public sub_0206FFC8 -.public sub_0207003C -.public sub_02070044 -.public sub_02070068 -.public sub_02070094 -.public sub_02070124 -.public sub_02070130 -.public sub_0207013C -.public sub_020701E4 -.public sub_02070438 -.public sub_0207083C -.public sub_02070848 -.public sub_02070854 -.public sub_020708D8 -.public sub_02070C24 -.public sub_02070D84 -.public sub_02070DB0 -.public sub_02070DB4 -.public sub_02070E34 -.public sub_020714E8 -.public sub_02071534 -.public sub_02071780 -.public sub_02071808 -.public sub_0207188C -.public sub_020718E8 -.public sub_02071900 -.public sub_02071950 -.public sub_020719F8 -.public sub_02071ACC -.public sub_02071BD0 -.public sub_02071C28 -.public sub_02071CA0 -.public sub_02071CBC -.public sub_02071D6C -.public sub_02071D7C -.public sub_02071E2C -.public sub_02071EC0 -.public sub_02071FDC -.public sub_0207204C -.public sub_020720D4 -.public sub_020720FC -.public sub_0207217C -.public sub_020721A4 -.public sub_020722D4 -.public sub_02072490 -.public sub_020726C0 -.public sub_020726E0 -.public sub_0207280C -.public sub_02072894 -.public sub_02072914 -.public sub_0207294C -.public sub_020729A4 -.public sub_020729D8 -.public sub_020729FC -.public sub_02072A20 -.public sub_020730B4 -.public sub_02073238 -.public sub_02073248 -.public sub_020732E4 -.public sub_02073300 -.public sub_02073314 -.public sub_0207332C -.public sub_02073354 -.public sub_020733C0 -.public sub_020734D0 -.public sub_02073548 -.public sub_020735D8 -.public sub_020735E8 -.public sub_02073BB8 -.public sub_02073BFC -.public sub_02073C6C -.public sub_02073CC0 -.public sub_02073D10 -.public sub_02073D4C -.public sub_02073D54 -.public sub_02073D9C -.public sub_02073DFC -.public sub_02073E40 -.public sub_02073E84 -.public sub_02073E98 -.public sub_02073EC8 -.public sub_02073F00 -.public sub_02073F34 -.public sub_02073F64 -.public sub_02073FA8 -.public sub_02073FF8 -.public sub_02074014 -.public sub_02074058 -.public sub_020740B4 -.public sub_020740D8 -.public sub_02074170 -.public sub_020741B0 -.public sub_020741BC -.public sub_02074274 -.public sub_02074364 -.public sub_0207440C -.public sub_02074444 -.public sub_02074484 -.public sub_02074490 -.public sub_02074494 -.public sub_02074498 -.public sub_0207449C -.public sub_020744A0 -.public sub_020744A4 -.public sub_020744A8 -.public sub_020744AC -.public sub_020744BC -.public sub_020744D0 -.public sub_020744DC -.public sub_02074524 -.public sub_0207456C -.public GetPartyCount -.public GetPartyMonByIndex -.public sub_02074670 -.public sub_020746BC -.public sub_02074708 -.public sub_02074740 -.public sub_020747BC -.public sub_020748B8 -.public sub_020748CC -.public SavArray_PlayerParty_get -.public sub_02074910 -.public sub_0207491C -.public sub_02074930 -.public sub_02074944 -.public sub_0207495C -.public sub_02074CD0 -.public sub_02074E5C -.public sub_02074EC4 -.public sub_02074F9C -.public sub_02075074 -.public sub_020750E0 -.public sub_02075108 -.public sub_0207514C -.public sub_02075178 -.public sub_020751B8 -.public sub_020751DC -.public sub_02075220 -.public sub_02075248 -.public sub_0207527C -.public sub_020752D8 -.public sub_0207531C -.public sub_02075350 -.public sub_020753A8 -.public sub_020753D4 -.public sub_02075A7C -.public sub_02075D3C -.public sub_02075D4C -.public sub_02077678 -.public sub_02077690 -.public sub_0207769C -.public sub_020776B4 -.public sub_020776B8 -.public sub_020776EC -.public sub_02077720 -.public sub_0207775C -.public sub_020777A4 -.public sub_020777AC -.public sub_020777B4 -.public sub_020777C8 -.public sub_020777F8 -.public sub_02077800 -.public sub_02077818 -.public sub_02077830 -.public sub_02077834 -.public sub_02077868 -.public sub_02077870 -.public sub_0207789C -.public sub_02077904 -.public sub_0207790C -.public sub_02077980 -.public sub_02077AA4 -.public sub_02077B5C -.public sub_02077C18 -.public sub_02077CB0 -.public sub_02077CE0 -.public sub_02077CE4 -.public sub_02077CE8 -.public sub_02077D40 -.public sub_02077D64 -.public sub_02077D88 -.public sub_02077DAC -.public sub_02078000 -.public sub_02078024 -.public sub_02078068 -.public sub_02078078 -.public sub_0207808C -.public sub_0207809C -.public sub_020780BC -.public sub_020780E4 -.public sub_02078108 -.public sub_02078138 -.public sub_02078160 -.public sub_02078168 -.public sub_02078188 -.public sub_020781B4 -.public sub_020781C4 -.public sub_020781D0 -.public sub_020781DC -.public sub_02078208 -.public sub_02078384 -.public sub_02078398 -.public sub_02078434 -.public sub_02078480 -.public sub_020784B0 -.public sub_02078550 -.public sub_02078568 -.public sub_02078644 -.public sub_02078724 -.public sub_0207879C -.public sub_020787A8 -.public sub_020787C0 -.public sub_020787D0 -.public sub_020787D4 -.public sub_020787E0 -.public sub_020787E4 -.public sub_020787F0 -.public sub_020787F4 -.public sub_020787F8 -.public sub_020787FC -.public sub_02078804 -.public sub_02078828 -.public sub_02078830 -.public sub_02078DD8 -.public sub_02078E28 -.public sub_0207991C -.public sub_0207CA9C -.public sub_0207CAA0 -.public sub_0207CAA4 -.public sub_0207CAA8 -.public sub_0207CAAC -.public sub_0207DAEC -.public sub_0207ECE0 -.public sub_020830D8 -.public sub_0208311C -.public sub_02085400 -.public sub_0208541C -.public sub_02085438 -.public sub_02087284 -.public sub_0208763C -.public sub_02087878 -.public sub_020878B0 -.public sub_020878B8 -.public sub_020878EC -.public sub_02087948 -.public sub_020879E0 -.public sub_02087A08 -.public sub_02087A30 -.public sub_02087A54 -.public sub_02087A84 -.public sub_02087E10 -.public sub_02087E1C -.public sub_02088030 -.public sub_0208805C -.public sub_02088068 -.public sub_02088080 -.public sub_020880B0 -.public sub_020880CC -.public sub_020881C0 -.public sub_0208820C -.public sub_02088288 -.public sub_0208828C -.public sub_02089D40 -.public sub_0208AD34 -.public sub_0208AD54 -.public sub_0208AD58 -.public sub_0208AD5C -.public sub_0208AD60 -.public sub_0208AD64 -.public sub_0208B85C -.public sub_0208F260 -.public sub_0208F270 -.public sub_0208F658 -.public sub_0208F7E0 -.public sub_0208F814 -.public sub_0208FB64 -.public sub_020902D0 -.public sub_02090C1C -.public sub_02090C94 -.public sub_02090D0C -.public sub_02090D14 -.public sub_02090D20 -.public sub_02090D48 -.public sub_02090D50 -.public sub_02090D60 -.public sub_02090D70 -.public sub_02090D74 -.public sub_02090D78 -.public sub_02090D88 -.public sub_02090D8C -.public sub_02090DC0 -.public sub_02090E04 -.public sub_02090E44 -.public sub_02090E5C -.public sub_02090E68 -.public sub_02090F6C -.public sub_02090F70 -.public sub_02090F90 -.public sub_02091004 -.public sub_02091054 -.public sub_0209106C -.public sub_02091084 -.public sub_0209109C -.public sub_020910B8 -.public sub_02091278 -.public sub_02091294 -.public sub_020912AC -.public sub_020912D0 -.public sub_02091308 -.public sub_02091320 -.public sub_02091334 -.public sub_020913C4 -.public sub_02091410 -.public sub_02091430 -.public sub_02091510 -.public sub_02091540 -.public sub_0209154C -.public sub_02091558 -.public sub_02091664 -.public sub_02091668 -.public sub_02091688 -.public GetCityNamesMsgdataIdByCountry -.public sub_020916C0 -.public sub_020916DC -.public sub_020916F8 -.public sub_02091714 -.public sub_02091730 -.public sub_02091880 -.public sub_020918C0 -.public sub_02091C38 -.public sub_02091C40 -.public sub_02091C60 -.public sub_02091C74 -.public sub_02091C84 -.public sub_02091CAC -.public ShowSaveDataReadError -.public sub_020927D0 -.public sub_02092BB8 -.public sub_02092BD8 -.public sub_02092BE0 -.public sub_02092BE4 -.public sub_02092D98 -.public sub_02092DEC -.public sub_02092DF4 -.public sub_02092E08 -.public sub_02092E14 -.public sub_02092FA8 -.public sub_02093010 -.public sub_02093070 -.public sub_020932A4 -.public sub_020932E0 -.public sub_02093354 -.public sub_02093440 -.public sub_02093594 -.public sub_020935E0 -.public sub_02093A40 -.public sub_02095EF8 -.public sub_02095F68 -.public sub_02095FEC -.public sub_02095FF8 -.public sub_02096338 -.public sub_02096808 -.public sub_0209680C -.public sub_02096810 -.public sub_02096818 -.public sub_02096820 -.public sub_0209684C -.public sub_02096854 -.public sub_02096864 -.public sub_02096868 -.public sub_0209686C -.public sub_02096878 -.public sub_02096884 -.public sub_02096910 -.public sub_02096998 -.public sub_02096A34 -.public sub_02096AAC -.public sub_02096AF4 -.public sub_02096BF8 -.public sub_02096C40 -.public sub_02096CE0 -.public sub_02096D4C -.public sub_02097018 -.public sub_020971F8 -.public sub_02097214 -.public sub_02097268 -.public sub_020974C4 -.public sub_02097720 -.public sub_02097EF4 -.public sub_02097F0C -.public sub_02097F6C -.public sub_02097F9C -.public sub_02097FF4 -.public sub_02098038 -.public sub_020980CC -.public sub_02098160 -.public sub_020981D4 -.public sub_0209829C -.public sub_020983D4 -.public sub_020983E8 -.public sub_020983FC -.public sub_020984B0 -.public sub_0209857C -.public sub_020988F4 -.public sub_0209DA24 -.public sub_0209DAB8 -.public sub_0209DBD4 -.public sub_0209DCAC -.public sub_0209DD30 -.public sub_0209DDF8 -.public sub_0209E00C -.public sub_0209E248 -.public sub_0209E404 -.public sub_0209E430 -.public sub_0209E628 -.public sub_0209E654 -.public sub_0209E788 -.public sub_0209E7CC -.public sub_0209E824 -.public sub_0209E8A0 -.public sub_0209EF2C -.public sub_0209EFEC -.public sub_0209EFF8 -.public sub_0209F630 -.public sub_0209F80C -.public sub_0209F850 -.public sub_0209F8A0 -.public sub_0209FAE4 -.public sub_0209FBE0 -.public sub_0209FC1C -.public sub_0209FC54 -.public sub_0209FC9C -.public sub_0209FD0C -.public sub_0209FE28 -.public sub_0209FF34 -.public sub_0209FFF8 -.public sub_020A0064 -.public sub_020A007C -.public sub_020A008C -.public sub_020A00A4 -.public sub_020A00B0 -.public sub_020A00BC -.public sub_020A0100 -.public sub_020A0130 -.public sub_020A0198 -.public sub_020A01F0 -.public sub_020A0214 -.public sub_020A0264 -.public sub_020A028C -.public sub_020A0310 -.public sub_020A0340 -.public sub_020A037C -.public sub_020A03D0 -.public sub_020A0404 -.public sub_020A041C -.public sub_020A0500 -.public sub_020A0598 -.public sub_020A0628 -.public sub_020A2A64 -.public sub_020A2AE0 -.public sub_020A2C10 -.public sub_020A2EAC -.public sub_020A2ED8 -.public sub_020A2F04 -.public sub_020A2F60 -.public sub_020A2F84 -.public sub_020A3014 -.public sub_020A3038 -.public sub_020A30BC -.public sub_020A30C8 -.public sub_020A30D4 -.public sub_020A3194 -.public sub_020A3228 -.public sub_020A3260 -.public sub_020A32CC -.public sub_020A32D8 -.public sub_020A3354 -.public sub_020A33FC -.public sub_020A3570 -.public sub_020A357C -.public sub_020A35AC -.public sub_020A3680 -.public sub_020A36A0 -.public sub_020A3754 -.public sub_020A6878 -.public sub_020A688C -.public sub_020A68D0 -.public sub_020A6930 -.public sub_020A6964 -.public sub_020A6AE4 -.public sub_020A6BC4 -.public sub_020A6C00 -.public sub_020A6D58 -.public sub_020A6E4C -.public sub_020A7260 -.public sub_020A72F8 -.public sub_020A7368 -.public sub_020A8460 -.public sub_020A8858 -.public sub_020A8868 -.public sub_020A88E8 -.public sub_020AA9B0 -.public sub_020AB948 -.public sub_020AD850 -.public sub_020AD968 -.public sub_020AD9C0 -.public sub_020ADBC4 -.public sub_020ADCB4 -.public sub_020ADE4C -.public sub_020ADEF0 -.public sub_020AE0F4 -.public sub_020AE210 -.public sub_020AE420 -.public sub_020AF9BC -.public sub_020AFA10 -.public sub_020AFA68 -.public sub_020AFAE4 -.public sub_020AFF20 -.public sub_020AFF64 -.public sub_020B0274 -.public sub_020B03CC -.public sub_020B03D8 -.public sub_020B03E4 -.public sub_020B1694 -.public sub_020B17CC -.public sub_020B1880 -.public sub_020B1BDC -.public sub_020B1CF8 -.public sub_020B1D6C -.public sub_020B1D9C -.public sub_020B304C -.public sub_020B3074 -.public sub_020B31E0 -.public sub_020B32BC -.public sub_020B32E0 -.public sub_020B41A8 -.public sub_020B4874 -.public sub_020B49AC -.public sub_020B49D4 -.public sub_020B4A18 -.public sub_020B4B68 -.public sub_020B4BAC -.public sub_020B4C50 -.public sub_020B4CB4 -.public sub_020B535C -.public sub_020B5394 -.public sub_020B53A0 -.public sub_020B53D0 -.public sub_020B5530 -.public sub_020B556C -.public sub_020B5594 -.public sub_020B55A4 -.public sub_020B55AC -.public sub_020B597C -.public sub_020B59A4 -.public sub_020B5A24 -.public sub_020B5AAC -.public sub_020B5C98 -.public sub_020B5CD8 -.public sub_020B5D18 -.public sub_020B5EA8 -.public sub_020B5EC4 -.public sub_020B5EE0 -.public sub_020B62C8 -.public sub_020B62EC -.public sub_020B634C -.public sub_020B67B4 -.public sub_020B67BC -.public sub_020B68A4 -.public sub_020B6918 -.public sub_020B6B14 -.public sub_020B6B1C -.public sub_020B6C3C -.public sub_020B6C80 -.public NNS_G2dGetUnpackedAnimBank -.public sub_020B6D24 -.public sub_020B6E80 -.public NNS_G2dGetUnpackedCellBank -.public sub_020B6FC8 -.public NNS_G2dGetUnpackedCharacterData -.public NNS_G2dGetUnpackedBGCharacterData -.public NNS_G2dGetUnpackedPaletteData -.public NNS_G2dGetUnpackedPaletteCompressInfo -.public NNS_G2dGetUnpackedScreenData -.public sub_020B7350 -.public sub_020B7418 -.public sub_020B75CC -.public sub_020B77A8 -.public sub_020B781C -.public sub_020B78D4 -.public sub_020B7994 -.public sub_020B7B10 -.public sub_020B7BF4 -.public sub_020B7FE4 -.public sub_020B8008 -.public sub_020B8024 -.public sub_020B802C -.public sub_020B804C -.public sub_020B806C -.public sub_020B8078 -.public sub_020B80A0 -.public sub_020B82CC -.public sub_020B84F8 -.public NNS_G2dLoadPalette -.public NNS_G2dLoadPaletteEx -.public sub_020B8B04 -.public sub_020B8B40 -.public sub_020B8BC4 -.public sub_020B8BDC -.public sub_020B8BFC -.public sub_020B8E98 -.public sub_020B8F50 -.public sub_020B9044 -.public sub_020B9124 -.public sub_020B91D8 -.public sub_020B9F0C -.public sub_020B9FC8 -.public sub_020B9FD8 -.public sub_020BA034 -.public sub_020BA0DC -.public sub_020BA148 -.public sub_020BA484 -.public sub_020BA560 -.public sub_020BA784 -.public sub_020BA7D4 -.public sub_020BA8D0 -.public sub_020BAA24 -.public sub_020BAB4C -.public sub_020BAD38 -.public sub_020BAD9C -.public sub_020BAEE4 -.public sub_020BAF3C -.public sub_020BBEC4 -.public sub_020BBF84 -.public sub_020BC384 -.public sub_020BC3A8 -.public sub_020BC3F0 -.public sub_020BD2AC -.public sub_020BD3D0 -.public sub_020BD3FC -.public sub_020BD484 -.public sub_020BD590 -.public sub_020BD5EC -.public sub_020BDB00 -.public sub_020BDC24 -.public sub_020BE008 -.public sub_020BE0A8 -.public sub_020BE0E4 -.public NNS_G3dRenderObjInit -.public sub_020BE294 -.public sub_020BE388 -.public NNS_G3dTexGetRequiredSize -.public NNS_G3dTex4x4GetRequiredSize -.public NNS_G3dTexSetTexKey -.public NNS_G3dTexLoad -.public sub_020BE4D0 -.public NNS_G3dPlttGetRequiredSize -.public NNS_G3dPlttSetPlttKey -.public NNS_G3dPlttLoad -.public sub_020BE588 -.public sub_020BE890 -.public sub_020BE940 -.public sub_020BEBB4 -.public sub_020BEC7C -.public NNS_G3dBindMdlSet -.public sub_020BEDB0 -.public NNS_G3dGlbFlushP -.public NNS_G3dGlbSetBaseTrans -.public NNS_G3dGlbSetBaseScale -.public sub_020BF034 -.public sub_020BF070 -.public sub_020BF084 -.public sub_020BF0A8 -.public sub_020BF0CC -.public NNS_G3dDraw -.public sub_020C2150 -.public sub_020C23F4 -.public sub_020C2528 -.public sub_020C2698 -.public NNS_G3dResDefaultSetup -.public sub_020C28F8 -.public sub_020C2B7C -.public sub_020C2BA0 -.public sub_020C2BAC -.public sub_020C2C54 -.public sub_020C33C0 -.public sub_020C342C -.public sub_020C3498 -.public sub_020C34D8 -.public sub_020C3518 -.public sub_020C3558 -.public sub_020C3598 -.public sub_020C35D8 -.public sub_020C3618 -.public sub_020C3658 -.public sub_020C3698 -.public sub_020C36D8 -.public sub_020C3718 -.public sub_020C3758 -.public sub_020C3798 -.public sub_020C37D8 -.public sub_020C3818 -.public sub_020C39D8 -.public NNS_G3dGetMdlSet -.public NNS_G3dGetTex -.public sub_020C3B90 -.public sub_020C7988 -.public sub_020C79B4 -.public sub_020C7A94 -.public sub_020C7C90 -.public sub_020C7CD4 -.public sub_020C7CEC -.public sub_020C7E0C -.public sub_020C7E48 -.public sub_020C7E70 -.public sub_020C7EF4 -.public sub_020C7F18 -.public NNS_SndPlayerSetPlayerVolume -.public sub_020C7F8C -.public sub_020C7FAC -.public sub_020C7FC4 -.public sub_020C8058 -.public sub_020C80C4 -.public sub_020C811C -.public sub_020C815C -.public sub_020C816C -.public sub_020C81F0 -.public sub_020C821C -.public sub_020C8230 -.public sub_020C827C -.public sub_020C829C -.public sub_020C82BC -.public sub_020C82DC -.public sub_020C8374 -.public sub_020C83C0 -.public sub_020C8A78 -.public sub_020C8AF0 -.public sub_020C8B50 -.public sub_020C8B78 -.public sub_020C8D18 -.public sub_020C8D6C -.public sub_020C8D88 -.public sub_020C9014 -.public sub_020C906C -.public sub_020C907C -.public sub_020C9558 -.public sub_020C9788 -.public sub_020C98B4 -.public sub_020C98DC -.public sub_020C9BB8 -.public sub_020C9C04 -.public sub_020C9CD8 -.public sub_020C9CE8 -.public sub_020C9DAC -.public sub_020C9DC4 -.public sub_020C9DF0 -.public sub_020C9E1C -.public sub_020C9E48 -.public sub_020CA8E4 -.public MTX_Identity22_ -.public MTX_Rot22_ -.public MTX_ScaleApply22 -.public MTX_Identity33_ -.public MTX_RotX33_ -.public MTX_RotY33_ -.public MTX_RotZ33_ -.public MTX_Inverse33 -.public MTX_Concat33 -.public MTX_MultVec33 -.public MTX_Identity43_ -.public MTX_Copy43To44_ -.public MTX_TransApply43 -.public MTX_Scale43_ -.public MTX_ScaleApply43 -.public MTX_RotX43_ -.public MTX_RotY43_ -.public MTX_Inverse43 -.public MTX_Concat43 -.public MTX_MultVec43 -.public MTX_LookAt -.public MTX_Identity44_ -.public MTX_Copy44To43_ -.public MTX_TransApply44 -.public MTX_RotX44_ -.public MTX_RotY44_ -.public MTX_RotZ44_ -.public MTX_Concat44 -.public MTX_PerspectiveW -.public MTX_OrthoW -.public FX_Div -.public FX_Inv -.public FX_InvFx64c -.public FX_Sqrt -.public FX_GetDivResultFx64c -.public FX_GetDivResult -.public FX_InvAsync -.public FX_DivAsync -.public FX_DivS32 -.public FX_ModS32 -.public VEC_Add -.public VEC_Subtract -.public VEC_Fx16Add -.public VEC_DotProduct -.public VEC_Fx16DotProduct -.public VEC_CrossProduct -.public VEC_Fx16CrossProduct -.public VEC_Mag -.public VEC_Normalize -.public VEC_Fx16Normalize -.public VEC_MultAdd -.public VEC_Distance -.public FX_SinFx64c -.public FX_CosFx64c -.public FX_Atan2Idx -.public FX_Init -.public FX_Modf -.public sub_020CD7C4 -.public sub_020CD910 -.public sub_020CD944 -.public sub_020CD978 -.public sub_020CD9B4 -.public sub_020CD9FC -.public sub_020CDA64 -.public sub_020CDA80 -.public sub_020CDAA8 -.public GX_SetBankForBG -.public GX_SetBankForOBJ -.public GX_SetBankForBGExtPltt -.public GX_SetBankForOBJExtPltt -.public GX_SetBankForTex -.public GX_SetBankForTexPltt -.public sub_020CE450 -.public sub_020CE584 -.public sub_020CE630 -.public GX_SetBankForSubBG -.public GX_SetBankForSubOBJ -.public GX_SetBankForSubBGExtPltt -.public GX_SetBankForSubOBJExtPltt -.public GX_ResetBankForBG -.public GX_ResetBankForOBJ -.public GX_ResetBankForBGExtPltt -.public GX_ResetBankForOBJExtPltt -.public GX_ResetBankForTex -.public GX_ResetBankForTexPltt -.public GX_ResetBankForSubBG -.public GX_ResetBankForSubOBJ -.public GX_ResetBankForSubBGExtPltt -.public GX_ResetBankForSubOBJExtPltt -.public sub_020CEAA0 -.public sub_020CEAB4 -.public sub_020CEAC8 -.public sub_020CEAEC -.public sub_020CEB10 -.public sub_020CEB24 -.public sub_020CEB38 -.public sub_020CEB4C -.public sub_020CEB60 -.public sub_020CEB74 -.public sub_020CEB88 -.public sub_020CEB9C -.public sub_020CEBC4 -.public sub_020CEBEC -.public sub_020CEBFC -.public sub_020CEC0C -.public sub_020CEC1C -.public sub_020CEC2C -.public sub_020CEC3C -.public sub_020CEC70 -.public sub_020CEED4 -.public sub_020CEF08 -.public sub_020CEF28 -.public sub_020CEF5C -.public sub_020CEF7C -.public sub_020CEFCC -.public sub_020CF00C -.public sub_020CF064 -.public sub_020CF0AC -.public sub_020CF15C -.public sub_020CF178 -.public sub_020CF1A0 -.public sub_020CF208 -.public sub_020CF228 -.public sub_020CF254 -.public sub_020CF278 -.public sub_020CF2A4 -.public sub_020CF2F4 -.public sub_020CF348 -.public sub_020CF394 -.public sub_020CF3D8 -.public sub_020CF41C -.public sub_020CF478 -.public sub_020CF4A8 -.public sub_020CF4D4 -.public sub_020CF510 -.public sub_020CF52C -.public sub_020CF548 -.public sub_020CF564 -.public sub_020CF670 -.public sub_020CF704 -.public G3X_SetFog -.public sub_020CF884 -.public sub_020CF8B4 -.public sub_020CF8E4 -.public sub_020CF8FC -.public G3X_SetClearColor -.public sub_020CFA38 -.public sub_020CFA64 -.public sub_020CFB08 -.public sub_020CFB6C -.public sub_020CFBB8 -.public sub_020CFBF4 -.public sub_020CFC30 -.public sub_020CFDC8 -.public sub_020CFE1C -.public sub_020CFE74 -.public sub_020CFECC -.public sub_020CFF24 -.public sub_020CFF84 -.public sub_020CFFE4 -.public sub_020D0044 -.public sub_020D00A4 -.public sub_020D0104 -.public sub_020D0164 -.public sub_020D01C4 -.public sub_020D0224 -.public sub_020D0284 -.public sub_020D02E4 -.public sub_020D0344 -.public sub_020D03A4 -.public sub_020D0404 -.public sub_020D0464 -.public sub_020D04C4 -.public sub_020D08EC -.public sub_020D0948 -.public sub_020D0A88 -.public sub_020D0AD4 -.public sub_020D0B08 -.public sub_020D0B74 -.public sub_020D0BB8 -.public sub_020D0C48 -.public sub_020D0CB0 -.public sub_020D0D1C -.public sub_020D0D60 -.public sub_020D0D80 -.public sub_020D1004 -.public sub_020D108C -.public sub_020D11A8 -.public sub_020D11D4 -.public sub_020D1204 -.public sub_020D1234 -.public OS_GetLockID -.public OS_ReleaseLockID -.public sub_020D164C -.public sub_020D168C -.public sub_020D16B4 -.public sub_020D1AC4 -.public sub_020D1AD4 -.public sub_020D1BD0 -.public sub_020D1CE0 -.public sub_020D1D5C -.public sub_020D1E38 -.public sub_020D1E68 -.public sub_020D1E7C -.public sub_020D1ECC -.public sub_020D1F34 -.public sub_020D1F84 -.public sub_020D1FA0 -.public sub_020D2058 -.public sub_020D2100 -.public sub_020D2108 -.public sub_020D21FC -.public sub_020D2230 -.public sub_020D2388 -.public sub_020D23B0 -.public sub_020D2444 -.public sub_020D2584 -.public sub_020D2600 -.public sub_020D2828 -.public sub_020D285C -.public sub_020D2878 -.public sub_020D28B8 -.public sub_020D290C -.public sub_020D2AEC -.public sub_020D2BD0 -.public sub_020D2C78 -.public sub_020D2C8C -.public sub_020D2CA0 -.public sub_020D2D0C -.public sub_020D2FC4 -.public sub_020D2FF4 -.public sub_020D309C -.public sub_020D30B0 -.public sub_020D33C0 -.public sub_020D3438 -.public sub_020D34B0 -.public sub_020D3550 -.public sub_020D3560 -.public sub_020D365C -.public sub_020D369C -.public sub_020D36AC -.public sub_020D37E8 -.public sub_020D3854 -.public sub_020D3A24 -.public sub_020D3A38 -.public sub_020D3A4C -.public sub_020D3A9C -.public sub_020D3AA8 -.public sub_020D3AB4 -.public OS_GetMacAddress -.public OS_GetOwnerInfo -.public OS_GetOwnerRtcOffset -.public sub_020D3D30 -.public sub_020D3DF0 -.public sub_020D3E78 -.public sub_020D3F48 -.public sub_020D3F58 -.public sub_020D3F74 -.public sub_020D4064 -.public sub_020D422C -.public sub_020D4294 -.public sub_020D43E8 -.public sub_020D4448 -.public sub_020D44A8 -.public sub_020D46AC -.public sub_020D4790 -.public sub_020D47EC -.public MIi_CpuCopy32 -.public sub_020D4830 -.public MIi_CpuClearFast -.public sub_020D48B4 -.public MI_Copy36B -.public sub_020D4968 -.public MIi_CpuCopy8 -.public sub_020D4BD0 -.public MI_UncompressLZ8 -.public sub_020D4D5C -.public sub_020D5044 -.public sub_020D5064 -.public sub_020D508C -.public sub_020D50AC -.public sub_020D50CC -.public sub_020D50E4 -.public sub_020D50FC -.public sub_020D5114 -.public sub_020D5130 -.public sub_020D514C -.public sub_020D5174 -.public sub_020D519C -.public sub_020D5200 -.public sub_020D5240 -.public sub_020D5260 -.public sub_020D5280 -.public sub_020D52A0 -.public sub_020D52C8 -.public sub_020D52E8 -.public sub_020D5334 -.public sub_020D5354 -.public sub_020D5374 -.public sub_020D5394 -.public sub_020D53B4 -.public sub_020D53DC -.public sub_020D53FC -.public sub_020D541C -.public sub_020D54D0 -.public sub_020D5604 -.public sub_020D57D4 -.public sub_020D5990 -.public sub_020D59FC -.public sub_020D5A28 -.public sub_020D5D04 -.public sub_020D5D30 -.public sub_020D5D5C -.public sub_020D5DA4 -.public sub_020D5F34 -.public sub_020D60E4 -.public sub_020D6154 -.public sub_020D6220 -.public sub_020D62B8 -.public sub_020D6300 -.public sub_020D6320 -.public sub_020D64D0 -.public sub_020D64D8 -.public sub_020D650C -.public sub_020D6548 -.public sub_020D6654 -.public sub_020D66A0 -.public sub_020D66C4 -.public sub_020D792C -.public sub_020D7958 -.public sub_020D7998 -.public sub_020D7A4C -.public sub_020D7AD0 -.public sub_020D7B40 -.public sub_020D7C00 -.public sub_020D7D24 -.public sub_020D7EBC -.public sub_020D7F60 -.public sub_020D7F88 -.public sub_020D8180 -.public sub_020D81C0 -.public sub_020D8208 -.public sub_020D8448 -.public sub_020D8728 -.public sub_020D8E00 -.public sub_020D8E40 -.public sub_020D8F08 -.public sub_020D9EF0 -.public sub_020D9F68 -.public sub_020D9FFC -.public sub_020DA124 -.public sub_020DA1B8 -.public sub_020DA208 -.public sub_020DA308 -.public sub_020DA3A0 -.public sub_020DA4E4 -.public sub_020DA6E0 -.public sub_020DA804 -.public sub_020DA81C -.public sub_020DA8A0 -.public sub_020DA9CC -.public sub_020DAA60 -.public sub_020DAA98 -.public sub_020DADE8 -.public sub_020DB774 -.public sub_020DB7F8 -.public sub_020DB868 -.public sub_020DB960 -.public sub_020DB978 -.public sub_020DB990 -.public sub_020DB9A8 -.public RTC_Init -.public sub_020DBA9C -.public sub_020DBB48 -.public RTC_GetDateTimeAsync -.public sub_020DBBFC -.public sub_020DC284 -.public RTC_ConvertDateTimeToSecond -.public sub_020DC394 -.public sub_020DC514 -.public CARD_GetResultCode -.public sub_020DC96C -.public sub_020DC988 -.public CARD_LockBackup -.public CARD_UnlockBackup -.public sub_020DC9DC -.public CARDi_RequestStreamCommand -.public CARD_IdentifyBackup -.public CARD_WaitBackupAsync -.public sub_020DD1B0 -.public sub_020DD754 -.public sub_020DD84C -.public sub_020DDC70 -.public sub_020DDC80 -.public sub_020DDCF4 -.public sub_020DDE94 -.public sub_020DDFE0 -.public sub_020DE0C8 -.public sub_020DE248 -.public sub_020DE458 -.public sub_020DEB24 -.public sub_020DEBA8 -.public sub_020DEBEC -.public sub_020DECC4 -.public sub_020DEE40 -.public sub_020DEF24 -.public sub_020DEF44 -.public sub_020DEFD4 -.public sub_020DF064 -.public sub_020DF0F8 -.public sub_020DF250 -.public sub_020DF2C4 -.public sub_020DF338 -.public sub_020DF378 -.public sub_020DF3B8 -.public sub_020DF3F8 -.public sub_020DF408 -.public sub_020DF480 -.public sub_020DF4B8 -.public sub_020DF4F8 -.public sub_020DF624 -.public sub_020DF680 -.public sub_020DF690 -.public sub_020DF6D0 -.public sub_020DF7BC -.public sub_020DF90C -.public sub_020DF94C -.public sub_020DFA18 -.public sub_020DFC70 -.public sub_020DFD14 -.public sub_020DFD7C -.public sub_020DFEAC -.public sub_020DFF1C -.public sub_020DFFBC -.public sub_020E0088 -.public sub_020E00F4 -.public sub_020E0390 -.public sub_020E0C74 -.public sub_020E0C90 -.public sub_020E0C9C -.public sub_020E0D10 -.public sub_020E0D8C -.public sub_020E0E44 -.public sub_020E0E94 -.public sub_020E0EF4 -.public sub_020E0F6C -.public sub_020E0FF0 -.public sub_020E1058 -.public sub_020E10A0 -.public sub_020E1134 -.public sub_020E138C -.public sub_020E13E4 -.public sub_020E140C -.public sub_020E1570 -.public sub_020E1678 -.public sub_020E16E4 -.public sub_020E1A14 -.public sub_020E1A3C -.public sub_020E219C -.public sub_020E2200 -.public sub_020E3714 -.public sub_020E3758 -.public sub_020E3798 -.public sub_020E37D8 -.public sub_020E3850 -.public sub_020E389C -.public sub_020E3920 -.public sub_020E3960 -.public sub_020E39DC -.public sub_020E3A04 -.public sub_020E3A2C -.public sub_020E3A58 -.public sub_020E3A84 -.public sub_020E3D74 -.public sub_020E3DD4 -.public sub_020E3DFC -.public sub_020E3E28 -.public swprintf -.public vsprintf -.public wcslen -.public sub_020055AC -.public sub_02005600 -.public sub_02005680 -.public sub_020056E8 -.public sub_02005738 -.public sub_02005774 -.public sub_020058B8 -.public sub_020059D8 -.public sub_0200925C -.public sub_020094FC -.public sub_0200994C -.public sub_02009CD0 -.public sub_02009B60 -.public sub_0200A840 -.public sub_0200A858 -.public sub_0200A870 -.public sub_0200A888 -.public sub_0200AF24 -.public sub_020216F4 -.public sub_020225E4 -.public sub_02021758 -.public sub_020217B0 -.public sub_0202183C -.public sub_02021910 -.public sub_02021934 -.public sub_020219B8 -.public sub_02022660 -.public sub_020226A4 -.public sub_020226E4 -.public sub_020227D4 -.public sub_0200A590 -.public sub_0200A5FC -.public sub_0200AD30 -.public sub_0200AE58 -.public sub_0200AF80 -.public sub_0200AFD8 -.public sub_02024BF4 -.public MsgDataGetCount -.public sub_02017FAC -.public sub_02017FCC -.public MsgArray_ControlCodeIsStrVar -.public sub_020248B4 -.public sub_020248C8 -.public sub_02024A0C -.public sub_02024BAC -.public sub_02024C9C -.public sub_0201F954 -.public sub_02005FD8 -.public sub_02004A60 -.public sub_02004A9C -.public sub_02004AB8 -.public sub_020051A4 -.public sub_02005328 -.public sub_02005464 -.public sub_020054D4 -.public sub_020054F0 -.public sub_020054F8 -.public sub_02005504 -.public sub_02005728 -.public sub_02005748 -.public sub_02005760 -.public sub_020057AC -.public sub_02005918 -.public sub_02005958 -.public sub_02005990 -.public sub_020059E0 -.public sub_02005BFC -.public sub_02005C6C -.public sub_02005CC0 -.public BlitBitmapRect4Bit -.public BgConfig_GetHeapId -.public sub_0200FCDC -.public sub_0200FF88 -.public sub_0200FFB4 -.public sub_020131F4 -.public sub_02013424 -.public sub_02013440 -.public sub_02013468 -.public sub_02013488 -.public sub_02010C38 -.public sub_02010E64 -.public sub_02010EC8 -.public sub_02010EE0 -.public sub_02010F00 -.public sub_02010F34 -.public sub_02010F84 -.public sub_02010FEC -.public sub_02011068 -.public sub_02012DD8 -.public sub_02012E10 -.public sub_02013220 -.public sub_020132A8 -.public sub_020132E8 -.public sub_0201333C -.public sub_02013364 -.public sub_02022448 -.public sub_02015DC8 -.public sub_020254FC -.public sub_02025504 -.public sub_0201FFB0 -.public sub_020210A0 -.public gMain -.public sub_0202068C -.public sub_020206C8 -.public sub_020206E0 -.public sub_02020738 -.public sub_02020764 -.public sub_0201010C -.public sub_02010128 -.public sub_02010148 -.public sub_02010184 -.public sub_020101BC -.public sub_020101F8 -.public sub_02010230 -.public sub_0201025C -.public sub_02010288 -.public sub_020102C4 -.public sub_020102FC -.public sub_02010338 -.public sub_02010370 -.public sub_0201039C -.public sub_020103C8 -.public sub_020103FC -.public sub_0201042C -.public sub_02010458 -.public sub_02010484 -.public sub_020104B0 -.public sub_020104DC -.public sub_02010508 -.public sub_02010534 -.public sub_02010560 -.public sub_0201058C -.public sub_020105B8 -.public sub_020105E4 -.public sub_02010610 -.public sub_0201063C -.public sub_02010690 -.public sub_020106E0 -.public sub_0201071C -.public sub_02010754 -.public sub_0201079C -.public sub_020107E0 -.public sub_02010828 -.public sub_0201086C -.public sub_02010898 -.public sub_020108C4 -.public sub_020108F0 -.public sub_0201091C -.public sub_02010958 -.public sub_02010990 -.public sub_0205045C -.public sub_02050544 -.public sub_020505A0 -.public sub_020505C0 -.public sub_020505C8 -.public sub_02050624 -.public sub_02053470 -.public sub_0205353C -.public sub_02053620 -.public sub_0205525C -.public sub_020552A4 -.public sub_02055670 -.public sub_020573F0 -.public sub_0205A508 -.public sub_0205AA6C -.public sub_0205AB88 -.public sub_0205AD0C -.public sub_0205B700 -.public sub_0205C7BC -.public sub_0205CB48 -.public sub_0205CE68 -.public sub_0205E5EC -.public sub_0205E648 -.public sub_0205E9AC -.public sub_0205F6C8 -.public sub_0205F9D0 -.public sub_0205FD00 -.public sub_020649B8 -.public sub_0206695C -.public sub_02066968 -.public sub_02066974 -.public sub_02066980 -.public sub_02066A0C -.public sub_02066C1C -.public sub_02066C4C -.public sub_02067BF8 -.public sub_02067C30 -.public sub_02067DF4 -.public sub_02067E10 -.public sub_02068FC8 -.public sub_020691C4 -.public sub_020691E0 -.public sub_0206CE44 -.public sub_02070D90 -.public sub_02070D98 -.public sub_0207187C -.public sub_02072A98 -.public sub_02072D64 -.public sub_02073470 -.public sub_020740F8 -.public sub_02074108 -.public sub_02074114 -.public sub_02074120 -.public sub_02074128 -.public sub_0207463C -.public sub_02077878 -.public sub_02077890 -.public sub_020778C8 -.public sub_020778DC -.public sub_020778E0 -.public sub_020778E8 -.public sub_02077914 -.public sub_020780F4 -.public sub_02090D18 -.public sub_02090D34 -.public sub_02090D40 -.public sub_02090D4C -.public sub_02090D54 -.public sub_02090EC0 -.public sub_02090F00 -.public sub_02090F38 -.public sub_02091240 -.public ShowSaveDataWriteError -.public sub_02092BD0 -.public sub_02092D80 -.public sub_02092D8C -.public sub_02092DD8 -.public LoadHallOfFame -.public SaveHallOfFame -.public sub_020272F4 -.public sub_020274D4 -.public Sav2_SysInfo_GetBirthMonth -.public Sav2_SysInfo_GetBirthDay -.public sub_02028DD0 -.public sub_02028E1C -.public sub_02028E2C -.public sub_02028FC8 -.public sub_02029084 -.public sub_020290A8 -.public sub_020290E4 -.public sub_020291D4 -.public sub_02029264 -.public sub_020292E8 -.public sub_020292EC -.public sub_020292F4 -.public sub_0202930C -.public sub_02029314 -.public sub_0202931C -.public sub_02029324 -.public sub_02029334 -.public sub_0202933C -.public sub_02029344 -.public sub_0202936C -.public sub_020293B8 -.public sub_0202A53C -.public sub_0202A57C -.public sub_0202A614 -.public sub_0202AB18 -.public sub_0202ABBC -.public sub_0202ABD0 -.public sub_0202ABEC -.public sub_0202AC0C -.public sub_0202AC88 -.public sub_0202AC9C -.public sub_0202AE38 -.public sub_0202AE40 -.public sub_0202AE4C -.public sub_0202AE68 -.public sub_0202AE74 -.public sub_0202AE8C -.public sub_0202AE98 -.public sub_0202AEC8 -.public sub_0202AF28 -.public Mail_init -.public Mail_new -.public Mail_copy -.public Mail_compare -.public Mail_SetNewMessageDetails -.public Mailbox_GetFirstEmptySlotIdx -.public Mailbox_CountMessages -.public Mailbox_FetchMailToBuffer -.public sub_0202B9EC -.public sub_0202BA08 -.public sub_0202BACC -.public sub_0202BAE8 -.public sub_0202BB7C -.public sub_0202BBD8 -.public sub_0202BD7C -.public sub_0202C738 -.public sub_0202C78C -.public sub_0202C7F8 -.public sub_0202C824 -.public sub_0202C848 -.public sub_0202C860 -.public sub_0202C878 -.public sub_0202CA10 -.public sub_0202CA14 -.public sub_0202CA1C -.public sub_0202CB6C -.public sub_0202CE50 -.public sub_0202CF08 -.public sub_0202D064 -.public sub_0202D0A4 -.public sub_0202D208 -.public sub_0202D234 -.public sub_0202D284 -.public sub_0202D308 -.public sub_0202D3B0 -.public sub_0202D3DC -.public sub_0202D3E4 -.public sub_0202D450 -.public sub_0202D4B8 -.public sub_0202D4DC -.public sub_0202D4FC -.public sub_0202D564 -.public sub_0202D5C4 -.public sub_0202D638 -.public sub_0202D63C -.public sub_0202D7B8 -.public sub_0202D908 -.public sub_0202D9A0 -.public sub_0202D9D0 -.public sub_0202D9E8 -.public sub_0202D9F4 -.public sub_0202DA10 -.public sub_0202E034 -.public sub_0202E054 -.public sub_0202E068 -.public sub_0202E090 -.public sub_0202E0AC -.public sub_0202E0C8 -.public sub_0202E0E4 -.public sub_0202E0F8 -.public sub_0202EB74 -.public sub_0202EC70 -.public sub_0202ED34 -.public sub_0202ED40 -.public sub_0202ED44 -.public sub_0202ED48 -.public sub_0202ED58 -.public sub_0202ED68 -.public sub_0202EE00 -.public sub_0202EE58 -.public sub_0202EF18 -.public sub_0202F01C -.public sub_0202F050 -.public sub_0202F198 -.public sub_0202F1B4 -.public sub_0202F1C4 -.public sub_0202F294 -.public sub_0202F300 -.public sub_0202F5F8 -.public sub_0202F6A0 -.public sub_0202F6AC -.public sub_0202F6B8 -.public sub_0202F798 -.public sub_0202F844 -.public sub_0202F888 -.public sub_0202F890 -.public sub_0202FA88 -.public sub_0202FB14 -.public sub_0202FB98 -.public sub_0202FC5C -.public sub_0203049C -.public sub_020304F0 -.public sub_02031AE4 -.public sub_02031CCC -.public sub_0203401C -.public sub_02034AC0 -.public sub_02035664 -.public sub_02035838 -.public sub_02035854 -.public sub_02035878 -.public sub_0203588C -.public sub_02035FD8 -.public sub_02035FE4 -.public sub_02036010 -.public sub_02037184 -.public sub_02037190 -.public sub_02037498 -.public sub_020374AC -.public sub_020374C0 -.public sub_020374E4 -.public sub_02037504 -.public sub_020376E0 -.public sub_020376F8 -.public sub_02037894 -.public sub_02037D8C -.public sub_02037DD4 -.public sub_02037E38 -.public sub_02037F18 -.public sub_02037F64 -.public sub_02037F94 -.public sub_02037FCC -.public sub_02038070 -.public sub_02038094 -.public sub_020380F4 -.public sub_02038104 -.public sub_020388E0 -.public sub_02038918 -.public sub_0203894C -.public sub_0203898C -.public sub_02039918 -.public sub_0203996C -.public sub_02039980 -.public sub_0203AC88 -.public sub_0203AC90 -.public sub_0203AFB4 -.public sub_0203AFD8 -.public sub_0203AFE0 -.public sub_0203B0F4 -.public sub_0203B114 -.public sub_0203B16C -.public sub_0203B1FC -.public sub_0203B2FC -.public sub_0203B310 -.public sub_0203B400 -.public sub_0203B41C -.public sub_0203B438 -.public sub_0203B454 -.public sub_0203B470 -.public sub_0203B4F8 -.public sub_0203B518 -.public sub_0203B540 -.public sub_0203B578 -.public sub_0203B5AC -.public sub_0203B5CC -.public sub_0203B5DC -.public sub_0203B5FC -.public sub_0203B60C .public sub_0203B75C .public sub_0203B794 .public sub_0203B7C4 .public sub_0203B7F4 .public sub_0203B80C +.public sub_0203B88C +.public sub_0203B8B8 +.public sub_0203B91C +.public sub_0203B920 +.public sub_0203B928 +.public sub_0203B938 +.public sub_0203B958 +.public sub_0203B95C .public sub_0203B960 +.public sub_0203B964 +.public sub_0203B968 .public sub_0203B96C +.public sub_0203B980 +.public sub_0203B984 .public sub_0203B98C +.public sub_0203B994 .public sub_0203B99C +.public sub_0203B9A4 .public sub_0203B9AC +.public sub_0203B9B4 +.public sub_0203B9B8 .public sub_0203B9BC +.public sub_0203B9C0 +.public sub_0203B9C4 +.public sub_0203B9DC .public sub_0203B9F4 .public sub_0203BA70 +.public sub_0203BA74 .public sub_0203BAAC +.public sub_0203BAE8 .public sub_0203BB20 .public sub_0203BB50 .public sub_0203BB70 .public sub_0203BBB4 +.public sub_0203BC10 +.public sub_0203BC28 +.public sub_0203BCDC +.public sub_0203BD20 +.public sub_0203C3CC .public sub_0203C8F0 .public sub_0203CA9C .public sub_0203D718 @@ -27979,18 +26360,29 @@ .public sub_0203D818 .public sub_0203D830 .public sub_0203D9B4 +.public sub_0203DBF8 +.public sub_0203DC64 +.public sub_0203DC90 +.public sub_0203DDA4 +.public sub_0203DE04 .public sub_0203DEF0 .public sub_0203DF34 .public sub_0203DF3C .public sub_0203DF7C +.public sub_0203DF8C .public sub_0203DFA4 -.public SwitchToPokegearApp +.public sub_0203E13C .public sub_0203E2F4 +.public sub_0203E30C .public sub_0203E33C .public sub_0203E340 +.public sub_0203E344 +.public sub_0203E354 .public sub_0203E368 .public sub_0203E380 +.public sub_0203E398 .public sub_0203E3C4 +.public sub_0203E3D4 .public sub_0203E460 .public sub_0203E4CC .public sub_0203E4EC @@ -28009,12 +26401,14 @@ .public sub_0203E960 .public sub_0203EA24 .public sub_0203EA84 -.public Radio_new +.public sub_0203EB08 .public sub_0203EB64 .public sub_0203EBA4 .public sub_0203EC04 .public sub_0203EC64 .public sub_0203ECC0 +.public sub_0203ED24 +.public sub_0203ED80 .public sub_0203EDDC .public sub_0203EEA0 .public sub_0203EEE4 @@ -28042,6 +26436,7 @@ .public sub_0203F9B4 .public sub_0203F9C4 .public sub_0203F9F4 +.public sub_0203FA38 .public sub_0203FA8C .public sub_0203FAB4 .public sub_0203FAE8 @@ -28053,28 +26448,42 @@ .public sub_0203FC90 .public sub_0203FCB8 .public sub_0203FD08 +.public sub_0203FD58 .public sub_0203FD60 .public sub_0203FE0C .public sub_0203FE10 .public sub_0203FE20 +.public sub_0203FE2C +.public sub_0203FE44 +.public sub_0203FE74 .public sub_0203FEA4 +.public sub_0203FED4 +.public sub_0203FF0C .public sub_020400AC +.public sub_020402F0 .public sub_0204031C +.public sub_02040374 +.public sub_020403AC .public sub_020403C0 .public sub_020403D8 +.public sub_020403FC +.public sub_02040410 +.public sub_02040424 .public sub_02040438 .public sub_02040470 .public sub_02040490 +.public sub_020404C8 .public sub_020404EC +.public sub_02040500 +.public sub_02040514 .public sub_0204052C .public sub_02040544 +.public sub_0204055C +.public sub_02040614 .public sub_02040728 -.public sub_02097B78 -.public sub_020192D0 -.public sub_0201935C -.public sub_02019490 -.public sub_02097BAC -.public sub_02097BD0 +.public sub_02040750 +.public sub_020407AC +.public sub_02040890 .public sub_02040894 .public sub_02040898 .public sub_020408A4 @@ -28678,6 +27087,20 @@ .public sub_0204A31C .public sub_0204A360 .public sub_0204A3A4 +.public sub_0204A68C +.public sub_0204A824 +.public sub_0204AA2C +.public sub_0204ABC8 +.public sub_0204AC78 +.public sub_0204AC7C +.public sub_0204AD04 +.public sub_0204AE20 +.public sub_0204AF2C +.public sub_0204B05C +.public sub_0204B068 +.public sub_0204B4D4 +.public sub_0204B510 +.public sub_0204B538 .public sub_0204BC98 .public sub_0204BCCC .public sub_0204BD04 @@ -28797,191 +27220,1769 @@ .public sub_0204F6D0 .public sub_0204F778 .public sub_0204F7FC +.public sub_0204F878 .public sub_0204F8DC .public sub_0204F9DC .public sub_0204FAD4 .public sub_0204FE78 .public sub_0204FF78 .public sub_02050014 +.public sub_020503B8 +.public sub_020503C0 +.public sub_020503D0 +.public sub_020503DC +.public sub_02050408 +.public sub_02050430 +.public sub_0205045C +.public sub_020504A4 +.public sub_020504F0 +.public sub_02050510 +.public sub_02050530 +.public sub_02050544 +.public sub_02050590 +.public sub_020505A0 +.public sub_020505C0 +.public sub_020505C8 +.public sub_02050624 +.public sub_0205064C +.public sub_02050650 +.public sub_02050654 +.public sub_02050AAC +.public sub_02050B08 +.public sub_02050B90 +.public sub_020511F8 +.public sub_020514A4 +.public sub_020517E8 +.public sub_020517FC +.public sub_020518D8 +.public sub_02051A60 +.public sub_02051A74 +.public sub_02051BF8 +.public sub_02051C9C +.public sub_02051D18 +.public sub_02051F00 +.public sub_02052544 +.public sub_02052554 +.public sub_02052580 +.public sub_02053018 +.public sub_02053038 +.public sub_02053470 +.public sub_0205353C +.public sub_02053620 +.public sub_020537F0 +.public sub_02053B04 +.public sub_02053E08 +.public sub_02053F14 +.public sub_020542D0 +.public sub_020542E8 +.public sub_02054388 +.public sub_020543BC +.public sub_0205442C +.public sub_02054440 +.public sub_02054774 +.public sub_02054790 +.public sub_02054874 +.public sub_020548C0 +.public sub_02054918 +.public sub_02054A60 +.public sub_02054AE4 +.public sub_02054B74 +.public sub_02054C20 +.public sub_02054C90 +.public sub_02054D10 +.public sub_02054DC8 +.public sub_02054E20 +.public sub_02054E50 +.public sub_02054E5C +.public sub_02054F28 +.public sub_02054F60 +.public sub_02054FA8 +.public sub_02054FDC +.public sub_02055110 +.public sub_02055164 +.public sub_02055198 +.public sub_0205525C +.public sub_020552A4 +.public sub_02055408 +.public sub_02055418 +.public sub_020555E0 +.public sub_02055670 +.public sub_02055680 +.public sub_020556A8 +.public sub_02055708 +.public sub_02055760 +.public sub_020557A0 +.public sub_02055874 +.public sub_0205589C +.public sub_020558BC +.public sub_02055BF0 +.public sub_02055C9C +.public sub_02055CD8 +.public sub_02056EE0 +.public sub_020573F0 +.public sub_02057A0C +.public sub_02057F18 +.public sub_02057FA4 +.public sub_020580E4 +.public sub_02058124 +.public sub_02058164 +.public sub_02058180 +.public sub_02058258 +.public sub_02058284 +.public sub_02058740 +.public sub_02058AA0 +.public sub_02059D44 +.public sub_0205A508 +.public sub_0205A904 +.public sub_0205AA6C +.public sub_0205AA84 +.public sub_0205AB88 +.public sub_0205AD0C +.public sub_0205AD24 +.public sub_0205B418 +.public sub_0205B464 +.public sub_0205B46C +.public sub_0205B4A4 +.public sub_0205B4EC +.public sub_0205B514 +.public sub_0205B564 +.public sub_0205B5A8 +.public sub_0205B5B4 +.public sub_0205B5EC +.public sub_0205B624 +.public sub_0205B63C +.public sub_0205B6A0 +.public sub_0205B6E8 +.public sub_0205B6F4 +.public sub_0205B700 +.public sub_0205B70C +.public sub_0205B718 +.public sub_0205B724 +.public sub_0205B730 +.public sub_0205B73C +.public sub_0205B748 +.public sub_0205B754 +.public sub_0205B760 +.public sub_0205B76C +.public sub_0205B778 +.public sub_0205B78C +.public sub_0205B7E0 +.public sub_0205B7EC +.public sub_0205B7F8 +.public sub_0205B804 +.public sub_0205B810 +.public sub_0205B81C +.public sub_0205B834 +.public sub_0205B840 +.public sub_0205B84C +.public sub_0205B858 +.public sub_0205B864 +.public sub_0205B870 +.public sub_0205B87C +.public sub_0205B888 +.public sub_0205B894 +.public sub_0205B8A0 +.public sub_0205B8DC +.public sub_0205B8E8 +.public sub_0205B984 +.public sub_0205B994 +.public sub_0205B9AC +.public sub_0205B9DC +.public sub_0205B9E8 +.public sub_0205B9F4 +.public sub_0205BA00 +.public sub_0205BA0C +.public sub_0205BA18 +.public sub_0205BA24 +.public sub_0205BA30 +.public sub_0205BA70 +.public sub_0205BAA0 +.public sub_0205BAAC +.public sub_0205BAB8 +.public sub_0205BAC4 +.public sub_0205BAD0 +.public sub_0205BAE4 +.public sub_0205BAEC +.public sub_0205BAF8 +.public sub_0205BB04 +.public sub_0205BBD0 +.public sub_0205BC78 +.public sub_0205BD64 +.public sub_0205BFF0 +.public sub_0205C01C +.public sub_0205C048 +.public sub_0205C074 +.public sub_0205C0A0 +.public sub_0205C0CC +.public sub_0205C0F4 +.public sub_0205C11C +.public sub_0205C144 +.public sub_0205C174 +.public sub_0205C1A0 +.public sub_0205C1C8 +.public sub_0205C1F0 +.public sub_0205C218 +.public sub_0205C240 +.public sub_0205C268 +.public sub_0205C298 +.public sub_0205C2C0 +.public sub_0205C2E8 +.public sub_0205C310 +.public sub_0205C350 +.public sub_0205C46C +.public sub_0205C654 +.public sub_0205C660 +.public sub_0205C67C +.public sub_0205C688 +.public sub_0205C6AC +.public sub_0205C6BC +.public sub_0205C6CC +.public sub_0205C6D4 +.public sub_0205C6DC +.public sub_0205C6E4 +.public sub_0205C700 +.public sub_0205C710 +.public sub_0205C718 +.public sub_0205C71C +.public sub_0205C724 +.public sub_0205C74C +.public sub_0205C78C +.public sub_0205C790 +.public sub_0205C7BC +.public sub_0205C7C8 +.public sub_0205C7EC +.public sub_0205C838 +.public sub_0205C858 +.public sub_0205C874 +.public sub_0205C898 +.public sub_0205C99C +.public sub_0205CA1C +.public sub_0205CA38 +.public sub_0205CA4C +.public sub_0205CB38 +.public sub_0205CB40 +.public sub_0205CB48 +.public sub_0205CBE4 +.public sub_0205CE68 +.public sub_0205CF44 +.public sub_0205CF60 +.public sub_0205CFBC +.public sub_0205DA34 +.public sub_0205DD94 +.public sub_0205DE38 +.public sub_0205DE98 +.public sub_0205DEC0 +.public sub_0205DFC8 +.public sub_0205DFD4 +.public sub_0205DFEC +.public sub_0205E02C +.public sub_0205E104 +.public sub_0205E294 +.public sub_0205E2B4 +.public sub_0205E38C +.public sub_0205E3CC +.public sub_0205E400 +.public sub_0205E420 +.public sub_0205E4C8 +.public sub_0205E520 +.public sub_0205E580 +.public sub_0205E5EC +.public sub_0205E648 +.public sub_0205E9AC +.public sub_0205EE60 +.public sub_0205EEF4 +.public sub_0205F09C +.public sub_0205F0A8 +.public sub_0205F0F8 +.public sub_0205F168 +.public sub_0205F17C +.public sub_0205F184 +.public sub_0205F190 +.public sub_0205F19C +.public sub_0205F1A0 +.public sub_0205F1AC +.public sub_0205F1BC +.public sub_0205F1C4 +.public sub_0205F1D0 +.public sub_0205F1E4 +.public sub_0205F1EC +.public sub_0205F1F0 +.public sub_0205F20C +.public sub_0205F214 +.public sub_0205F220 +.public sub_0205F228 +.public sub_0205F248 +.public sub_0205F24C +.public sub_0205F254 +.public sub_0205F258 +.public sub_0205F25C +.public sub_0205F264 +.public sub_0205F268 +.public sub_0205F26C +.public sub_0205F270 +.public sub_0205F274 +.public sub_0205F278 +.public sub_0205F27C +.public sub_0205F288 +.public sub_0205F290 +.public sub_0205F2A8 +.public sub_0205F2AC +.public sub_0205F2B8 +.public sub_0205F2D0 +.public sub_0205F2F4 +.public sub_0205F318 +.public sub_0205F320 +.public sub_0205F328 +.public sub_0205F330 +.public sub_0205F35C +.public sub_0205F3E8 +.public sub_0205F40C +.public sub_0205F484 +.public sub_0205F4C0 +.public sub_0205F504 +.public sub_0205F52C +.public sub_0205F538 +.public sub_0205F544 +.public sub_0205F55C +.public sub_0205F568 +.public sub_0205F574 +.public sub_0205F5A4 +.public sub_0205F5D4 +.public sub_0205F5E8 +.public sub_0205F5F8 +.public sub_0205F624 +.public sub_0205F678 +.public sub_0205F684 +.public sub_0205F690 +.public sub_0205F6C8 +.public sub_0205F6FC +.public sub_0205F708 +.public sub_0205F714 +.public sub_0205F73C +.public sub_0205F7D4 +.public sub_0205F808 +.public sub_0205F83C +.public sub_0205F870 +.public sub_0205F888 +.public sub_0205F89C +.public sub_0205F8FC +.public sub_0205F900 +.public sub_0205F904 +.public sub_0205F908 +.public sub_0205F90C +.public sub_0205F910 +.public sub_0205F914 +.public sub_0205F918 +.public sub_0205F924 +.public sub_0205F928 +.public sub_0205F934 +.public sub_0205F938 +.public sub_0205F944 +.public sub_0205F954 +.public sub_0205F968 +.public sub_0205F96C +.public sub_0205F97C +.public sub_0205F98C +.public sub_0205F990 +.public sub_0205F9A0 +.public sub_0205F9B0 +.public sub_0205F9D0 +.public sub_0205FB58 +.public sub_0205FBC0 +.public sub_0205FC94 +.public sub_0205FCD4 +.public sub_0205FD00 +.public sub_02060BB8 +.public sub_02060F0C +.public sub_02060F18 +.public sub_02060F78 +.public sub_02060FA8 +.public sub_020611C8 +.public sub_0206121C +.public sub_02062108 +.public sub_0206214C +.public sub_02062198 +.public sub_020621C0 +.public sub_020621F0 +.public sub_02062214 +.public sub_02062260 +.public sub_0206226C +.public sub_0206234C +.public sub_02064084 +.public sub_020640C8 +.public sub_020648EC +.public sub_02064910 +.public sub_02064980 +.public sub_020649B8 +.public sub_02064F24 +.public sub_02065690 +.public sub_0206599C +.public sub_020659A8 +.public sub_020659B8 +.public sub_020659CC +.public sub_02066420 +.public sub_020665EC +.public sub_02066614 +.public sub_02066644 +.public sub_02066654 +.public sub_02066674 +.public sub_020666C4 +.public sub_020666D8 +.public sub_02066724 +.public sub_0206677C +.public sub_02066794 +.public sub_02066860 +.public sub_02066870 +.public sub_020668A0 +.public sub_020668C0 +.public sub_02066930 +.public sub_02066950 +.public sub_0206695C +.public sub_02066968 +.public sub_02066974 +.public sub_02066980 +.public sub_020669A4 +.public sub_020669B4 +.public sub_020669D0 +.public sub_020669E0 +.public sub_020669F0 +.public sub_02066A00 +.public sub_02066A0C +.public sub_02066A3C +.public sub_02066A4C +.public sub_02066A58 +.public sub_02066A64 +.public sub_02066AD0 +.public sub_02066B50 +.public sub_02066B60 +.public sub_02066B70 +.public sub_02066BE8 +.public sub_02066C1C +.public sub_02066C4C +.public sub_02066D80 +.public sub_02066DB8 +.public sub_02066DC8 +.public sub_02066DD8 +.public sub_02066DE8 +.public sub_02066DF8 +.public sub_02066E08 +.public sub_02066E18 +.public sub_02066E28 +.public sub_02066E38 +.public sub_02066E48 +.public sub_02066E58 +.public sub_02066E74 +.public sub_02066E84 +.public sub_02066ECC +.public sub_020674A4 +.public sub_020674BC +.public sub_02067584 +.public sub_02067608 +.public sub_02067698 +.public sub_020677F4 +.public sub_02067BF8 +.public sub_02067C30 +.public sub_02067DF4 +.public sub_02067E10 +.public sub_020689C8 +.public sub_020689F8 +.public sub_02068B0C +.public sub_02068B48 +.public sub_02068BAC +.public sub_02068D18 +.public sub_02068D74 +.public sub_02068D90 +.public sub_02068D98 +.public sub_02068DA8 +.public sub_02068DB8 +.public sub_02068F68 +.public sub_02068F84 +.public sub_02068F98 +.public sub_02068FC8 +.public sub_020691C4 +.public sub_020691E0 +.public sub_02069528 +.public sub_020696C4 +.public sub_02069714 +.public sub_02069784 +.public sub_020697DC +.public sub_02069818 +.public sub_02069864 +.public sub_02069884 +.public sub_02069894 +.public sub_020698D0 +.public sub_020698E8 +.public sub_02069948 +.public sub_02069978 +.public sub_02069998 +.public sub_020699AC +.public sub_020699BC +.public sub_020699D0 +.public sub_020699F8 +.public sub_02069D68 +.public sub_02069D70 +.public sub_02069DC8 +.public sub_02069E28 +.public sub_02069E84 +.public sub_02069EE8 +.public sub_02069F0C +.public sub_02069F3C +.public sub_02069F64 +.public sub_02069F7C +.public sub_02069F88 +.public sub_02069FB0 +.public sub_02069FF4 +.public sub_0206A040 +.public sub_0206A054 +.public sub_0206A1D4 +.public sub_0206A1F4 +.public sub_0206A240 +.public sub_0206A268 +.public sub_0206A288 +.public sub_0206A2C0 +.public sub_0206A304 +.public sub_0206A310 +.public sub_0206A338 +.public sub_0206A8C0 +.public sub_0206A8DC .public sub_0206BB2C .public sub_0206BB5C .public sub_0206BBAC .public sub_0206BC2C .public sub_0206BC64 .public sub_0206BC8C +.public sub_0206C0E8 +.public sub_0206C8B8 +.public sub_0206CD1C +.public sub_0206CE44 +.public sub_0206D02C +.public sub_0206D328 +.public sub_0206D894 +.public sub_0206D8D0 +.public sub_0206DB28 +.public sub_0206DB30 .public sub_0206DC50 -.public sub_02040890 -.public ReadSaveFileFromFlash -.public WriteSaveFileToFlash -.public sub_02028230 -.public sub_020284A4 -.public sub_0202711C -.public sub_02027144 -.public sub_02027158 -.public sub_02027164 -.public sub_0202716C -.public sub_02027170 -.public sub_02027180 -.public sub_02027190 -.public sub_020271A0 -.public sub_02015BF0 -.public Sav2_SysInfo_sizeof -.public sub_02028E6C -.public sub_020290B8 -.public sub_020292A8 -.public sub_020293E0 -.public sub_0202A8B4 -.public sub_0202A9C4 -.public sub_0202A9D8 -.public sub_0202AEC0 -.public Sav2_Mailbox_sizeof -.public sub_0202B98C -.public sub_0202C034 -.public sub_0202C6FC -.public sub_0202C714 -.public sub_0202C730 -.public sub_0202C9A0 -.public sub_0202CA24 -.public sub_0202CBC0 -.public sub_0202CE30 -.public sub_0202CF1C -.public sub_0202D938 -.public sub_0202D968 -.public sub_0202DB40 -.public sub_0202DBA8 -.public sub_0202E0DC -.public sub_0202E41C -.public sub_0202E4F4 -.public sub_0202EB30 -.public sub_0202ED18 -.public sub_0202ED74 -.public sub_0202F574 -.public sub_0202FA5C -.public sub_0202FBD4 -.public sub_02031000 -.public sub_02031084 -.public sub_020310A0 -.public sub_020312A4 -.public sub_0203170C -.public sub_020318C8 -.public sub_02031904 -.public sub_02031AF0 -.public sub_02031B0C -.public sub_020325F8 -.public sub_02032774 -.public sub_0203B91C -.public sub_0203B920 -.public sub_020503B8 -.public PCStorage_sizeof -.public sub_02078180 -.public sub_02015BF4 -.public Sav2_SysInfo_init -.public sub_02028E70 -.public sub_020290C8 -.public sub_020292B0 -.public sub_02029D98 -.public sub_0202A8BC -.public sub_0202AED4 -.public Sav2_Mailbox_init -.public sub_0202B930 -.public sub_0202C75C -.public sub_0202C9A8 -.public sub_0202CA2C -.public sub_0202CBC8 -.public sub_0202CE38 -.public sub_0202CF24 -.public sub_0202D93C -.public sub_0202D96C -.public sub_0202DB44 -.public sub_0202E424 -.public sub_0202E4FC -.public sub_0202EB38 -.public sub_0202ED1C -.public sub_0202EDEC -.public sub_0202F588 -.public sub_0202FA70 -.public sub_02031008 -.public sub_020312AC -.public sub_020318CC -.public sub_0203190C -.public sub_02031AF4 -.public sub_02031B54 -.public sub_02032600 -.public sub_02032788 -.public sub_0203B928 -.public sub_0203B938 -.public sub_020503C0 -.public PCStorage_init -.public sub_020781A0 -.public sub_020272EC -.public sub_0202ACA8 -.public sub_0202C948 -.public sub_0202CDB0 -.public sub_02028F0C -.public sub_020290B4 -.public sub_020290BC -.public sub_0202925C +.public sub_0206DD40 +.public sub_0206DD8C +.public sub_0206DDD8 +.public sub_0206DE00 +.public sub_0206DE38 +.public sub_0206E108 +.public sub_0206E14C +.public sub_0206E21C +.public sub_0206E250 +.public sub_0206E27C +.public sub_0206EC40 +.public sub_0206ED70 +.public sub_0206F558 +.public sub_0206FA6C +.public sub_0206FA8C +.public sub_0206FAA8 +.public sub_0206FBB0 +.public sub_0206FBC4 +.public sub_0206FBE8 +.public sub_0206FC08 +.public sub_0206FC40 +.public sub_0206FCA8 +.public sub_0206FCDC +.public sub_0206FD00 +.public sub_0206FD70 +.public sub_0206FDA8 +.public sub_0206FDFC +.public sub_0206FE04 +.public sub_0206FE2C +.public sub_0206FE90 +.public sub_0206FF88 +.public sub_0206FF90 +.public sub_0206FFC8 .public sub_02070028 +.public sub_0207003C +.public sub_02070044 +.public sub_02070068 +.public sub_02070094 +.public sub_02070124 +.public sub_02070130 +.public sub_0207013C +.public sub_020701E4 +.public sub_02070438 +.public sub_0207083C +.public sub_02070848 +.public sub_02070854 +.public sub_020708D8 +.public sub_02070C24 +.public sub_02070D84 +.public sub_02070D90 +.public sub_02070D98 +.public sub_02070DB0 +.public sub_02070DB4 +.public sub_02070E34 .public sub_0207123C .public sub_0207137C .public sub_020713EC .public sub_020714B0 +.public sub_020714E8 +.public sub_02071534 .public sub_020716C0 +.public sub_02071780 +.public sub_02071808 +.public sub_0207187C +.public sub_0207188C .public sub_020718A4 .public sub_020718B8 +.public sub_020718E8 +.public sub_02071900 +.public sub_02071950 +.public sub_020719F8 .public sub_02071A54 +.public sub_02071ACC +.public sub_02071BD0 +.public sub_02071C28 +.public sub_02071CA0 +.public sub_02071CBC .public sub_02071D3C +.public sub_02071D6C +.public sub_02071D7C +.public sub_02071E2C .public sub_02071E78 +.public sub_02071EC0 +.public sub_02071FDC +.public sub_0207204C +.public sub_020720D4 +.public sub_020720FC +.public sub_0207217C +.public sub_020721A4 .public sub_0207227C +.public sub_020722D4 .public sub_0207235C +.public sub_02072490 +.public sub_020726C0 +.public sub_020726E0 .public sub_020726F8 .public sub_0207272C +.public sub_0207280C +.public sub_02072894 +.public sub_02072914 +.public sub_0207294C +.public sub_020729A4 +.public sub_020729D8 +.public sub_020729FC +.public sub_02072A20 +.public sub_02072A98 +.public sub_02072D64 +.public sub_020730B4 +.public sub_02073238 +.public sub_02073248 +.public sub_020732E4 +.public sub_02073300 +.public sub_02073314 +.public sub_0207332C +.public sub_02073354 +.public sub_020733C0 +.public sub_02073470 +.public sub_020734D0 +.public sub_02073548 +.public sub_020735D8 +.public sub_020735E8 +.public sub_02073BB8 +.public sub_02073BFC +.public sub_02073C6C +.public sub_02073CC0 +.public sub_02073D10 +.public sub_02073D4C +.public sub_02073D54 +.public sub_02073D9C +.public sub_02073DFC +.public sub_02073E40 +.public sub_02073E84 +.public sub_02073E98 +.public sub_02073EC8 +.public sub_02073F00 +.public sub_02073F34 +.public sub_02073F64 +.public sub_02073FA8 +.public sub_02073FF8 +.public sub_02074014 +.public sub_02074058 .public sub_02074094 +.public sub_020740B4 +.public sub_020740D8 +.public sub_020740F8 +.public sub_02074108 +.public sub_02074114 +.public sub_02074120 +.public sub_02074128 +.public sub_02074170 +.public sub_020741B0 +.public sub_020741BC +.public sub_02074274 +.public sub_02074364 +.public sub_0207440C +.public sub_02074444 +.public sub_02074484 +.public sub_02074490 +.public sub_02074494 +.public sub_02074498 +.public sub_0207449C +.public sub_020744A0 +.public sub_020744A4 +.public sub_020744A8 +.public sub_020744AC +.public sub_020744BC +.public sub_020744D0 +.public sub_020744DC +.public sub_02074524 +.public sub_0207456C +.public sub_0207463C +.public sub_02074670 +.public sub_020746BC +.public sub_02074708 +.public sub_02074740 +.public sub_020747BC +.public sub_020748B8 +.public sub_020748CC +.public sub_02074910 +.public sub_0207491C +.public sub_02074930 +.public sub_02074944 +.public sub_0207495C +.public sub_02074CD0 +.public sub_02074E5C +.public sub_02074EC4 +.public sub_02074F9C +.public sub_02075074 +.public sub_020750E0 +.public sub_02075108 +.public sub_0207514C +.public sub_02075178 +.public sub_020751B8 +.public sub_020751DC +.public sub_02075220 +.public sub_02075248 +.public sub_0207527C +.public sub_020752D8 +.public sub_0207531C +.public sub_02075350 +.public sub_020753A8 +.public sub_020753D4 +.public sub_02075A7C +.public sub_02075D3C +.public sub_02075D4C +.public sub_02077678 +.public sub_02077690 +.public sub_0207769C +.public sub_020776B4 +.public sub_020776B8 +.public sub_020776EC +.public sub_02077720 +.public sub_0207775C +.public sub_020777A4 +.public sub_020777AC +.public sub_020777B4 +.public sub_020777C8 +.public sub_020777F8 +.public sub_02077800 +.public sub_02077818 +.public sub_02077830 +.public sub_02077834 +.public sub_02077868 +.public sub_02077870 +.public sub_02077878 +.public sub_02077890 +.public sub_0207789C +.public sub_020778C8 +.public sub_020778DC +.public sub_020778E0 +.public sub_020778E8 +.public sub_02077904 +.public sub_0207790C +.public sub_02077914 +.public sub_02077980 +.public sub_02077AA4 +.public sub_02077B5C +.public sub_02077C18 +.public sub_02077CB0 +.public sub_02077CE0 +.public sub_02077CE4 +.public sub_02077CE8 +.public sub_02077D40 +.public sub_02077D64 +.public sub_02077D88 +.public sub_02077DAC +.public sub_02078000 +.public sub_02078024 +.public sub_02078068 +.public sub_02078078 +.public sub_0207808C +.public sub_0207809C +.public sub_020780BC +.public sub_020780E4 +.public sub_020780F4 +.public sub_02078108 +.public sub_02078138 +.public sub_02078160 +.public sub_02078168 +.public sub_02078180 +.public sub_02078188 +.public sub_020781A0 +.public sub_020781B4 +.public sub_020781C4 +.public sub_020781D0 +.public sub_020781DC +.public sub_02078208 +.public sub_02078384 +.public sub_02078398 +.public sub_02078434 +.public sub_02078480 +.public sub_020784B0 .public sub_020784C4 +.public sub_02078550 +.public sub_02078568 +.public sub_02078644 +.public sub_02078724 +.public sub_0207879C +.public sub_020787A8 +.public sub_020787C0 +.public sub_020787D0 +.public sub_020787D4 +.public sub_020787E0 +.public sub_020787E4 +.public sub_020787F0 +.public sub_020787F4 +.public sub_020787F8 +.public sub_020787FC +.public sub_02078804 +.public sub_02078828 +.public sub_02078830 .public sub_02078B58 .public sub_02078B78 +.public sub_02078DD8 +.public sub_02078E28 +.public sub_0207991C +.public sub_0207CA9C +.public sub_0207CAA0 +.public sub_0207CAA4 +.public sub_0207CAA8 +.public sub_0207CAAC +.public sub_0207DAEC +.public sub_0207ECE0 +.public sub_020830D8 +.public sub_0208311C +.public sub_02085400 +.public sub_0208541C +.public sub_02085438 +.public sub_02087284 +.public sub_0208763C +.public sub_02087878 +.public sub_020878B0 +.public sub_020878B8 +.public sub_020878EC +.public sub_02087948 +.public sub_020879E0 +.public sub_02087A08 +.public sub_02087A30 +.public sub_02087A54 +.public sub_02087A84 +.public sub_02087E10 +.public sub_02087E1C +.public sub_02088030 +.public sub_0208805C +.public sub_02088068 +.public sub_02088080 +.public sub_020880B0 +.public sub_020880CC +.public sub_020881C0 +.public sub_0208820C +.public sub_02088288 +.public sub_0208828C +.public sub_02089D40 +.public sub_0208AD34 +.public sub_0208AD54 +.public sub_0208AD58 +.public sub_0208AD5C +.public sub_0208AD60 +.public sub_0208AD64 +.public sub_0208B85C .public sub_0208E55C .public sub_0208E5E0 .public sub_0208E9E0 +.public sub_0208F260 +.public sub_0208F270 +.public sub_0208F658 +.public sub_0208F7E0 +.public sub_0208F814 +.public sub_0208FB64 +.public sub_020902D0 +.public sub_02090C1C +.public sub_02090C94 +.public sub_02090D0C +.public sub_02090D14 +.public sub_02090D18 +.public sub_02090D20 +.public sub_02090D34 +.public sub_02090D40 +.public sub_02090D48 +.public sub_02090D4C +.public sub_02090D50 +.public sub_02090D54 +.public sub_02090D60 +.public sub_02090D70 +.public sub_02090D74 +.public sub_02090D78 +.public sub_02090D88 +.public sub_02090D8C +.public sub_02090DC0 +.public sub_02090E04 +.public sub_02090E44 +.public sub_02090E5C +.public sub_02090E68 +.public sub_02090EC0 +.public sub_02090F00 +.public sub_02090F38 +.public sub_02090F6C +.public sub_02090F70 +.public sub_02090F90 +.public sub_02091004 +.public sub_02091054 +.public sub_0209106C +.public sub_02091084 +.public sub_0209109C +.public sub_020910B8 +.public sub_02091240 +.public sub_02091278 +.public sub_02091294 +.public sub_020912AC +.public sub_020912D0 +.public sub_02091308 +.public sub_02091320 +.public sub_02091334 +.public sub_020913C4 +.public sub_02091410 +.public sub_02091430 +.public sub_02091510 +.public sub_02091540 +.public sub_0209154C +.public sub_02091558 .public sub_02091574 +.public sub_02091664 +.public sub_02091668 +.public sub_02091688 +.public sub_020916C0 +.public sub_020916DC +.public sub_020916F8 +.public sub_02091714 +.public sub_02091730 .public sub_0209174C .public sub_02091764 .public sub_0209176C .public sub_0209186C +.public sub_02091880 +.public sub_020918C0 +.public sub_02091C38 +.public sub_02091C40 +.public sub_02091C60 +.public sub_02091C74 +.public sub_02091C84 +.public sub_02091CAC +.public sub_020927D0 +.public sub_02092BB8 +.public sub_02092BD0 +.public sub_02092BD8 +.public sub_02092BE0 +.public sub_02092BE4 +.public sub_02092D80 +.public sub_02092D8C +.public sub_02092D98 +.public sub_02092DD8 +.public sub_02092DEC +.public sub_02092DF4 +.public sub_02092E08 .public sub_02092E10 +.public sub_02092E14 .public sub_02092E34 .public sub_02092F30 +.public sub_02092FA8 +.public sub_02093010 +.public sub_02093070 .public sub_020930C4 .public sub_0209316C .public sub_0209322C +.public sub_020932A4 +.public sub_020932E0 +.public sub_02093354 +.public sub_02093440 +.public sub_02093594 +.public sub_020935E0 +.public sub_02093A40 .public sub_02095DF4 +.public sub_02095EF8 +.public sub_02095F68 .public sub_02095F94 +.public sub_02095FEC +.public sub_02095FF8 .public sub_0209600C .public sub_020961D8 +.public sub_02096338 +.public sub_02096808 +.public sub_0209680C +.public sub_02096810 +.public sub_02096818 +.public sub_02096820 +.public sub_0209684C +.public sub_02096854 +.public sub_02096864 +.public sub_02096868 +.public sub_0209686C +.public sub_02096878 +.public sub_02096884 +.public sub_02096910 +.public sub_02096998 +.public sub_02096A34 +.public sub_02096AAC +.public sub_02096AF4 +.public sub_02096BF8 +.public sub_02096C40 +.public sub_02096CE0 +.public sub_02096D4C +.public sub_02097018 .public sub_0209707C .public sub_020970C0 +.public sub_020971F8 +.public sub_02097214 +.public sub_02097268 .public sub_0209730C +.public sub_020974C4 +.public sub_02097720 .public sub_020977CC .public sub_020979A8 +.public sub_02097B78 +.public sub_02097BAC +.public sub_02097BD0 .public sub_02097BE0 .public sub_02097D3C -.public sub_020514A4 -.public sub_020537F0 -.public sub_02055110 -.public sub_02055408 -.public sub_020669F0 -.public sub_0206D328 -.public sub_0202ADEC -.public sub_0203A01C -.public sub_0202C4F0 -.public sub_0202C2B4 -.public sub_0202C7B4 -.public sub_0202C88C -.public sub_0202CAE4 -.public sub_0202D214 -.public sub_0202D240 -.public sub_0202D254 -.public sub_0202D274 -.public sub_0202D640 -.public gGameLanguage -.public gGameVersion +.public sub_02097EF4 +.public sub_02097F0C +.public sub_02097F6C +.public sub_02097F9C +.public sub_02097FF4 +.public sub_02098038 +.public sub_020980CC +.public sub_02098160 +.public sub_020981D4 +.public sub_0209829C +.public sub_020983D4 +.public sub_020983E8 +.public sub_020983FC +.public sub_020984B0 +.public sub_0209857C +.public sub_020988F4 +.public sub_0209DA24 +.public sub_0209DAB8 +.public sub_0209DBD4 +.public sub_0209DCAC +.public sub_0209DD30 +.public sub_0209DDF8 +.public sub_0209E00C +.public sub_0209E248 +.public sub_0209E404 +.public sub_0209E430 +.public sub_0209E628 +.public sub_0209E654 +.public sub_0209E788 +.public sub_0209E7CC +.public sub_0209E824 +.public sub_0209E8A0 +.public sub_0209EF2C +.public sub_0209EFEC +.public sub_0209EFF8 +.public sub_0209F630 +.public sub_0209F80C +.public sub_0209F850 +.public sub_0209F8A0 +.public sub_0209FAE4 +.public sub_0209FBE0 +.public sub_0209FC1C +.public sub_0209FC54 +.public sub_0209FC9C +.public sub_0209FD0C +.public sub_0209FE28 +.public sub_0209FF34 +.public sub_0209FFF8 +.public sub_020A0064 +.public sub_020A007C +.public sub_020A008C +.public sub_020A00A4 +.public sub_020A00B0 +.public sub_020A00BC +.public sub_020A0100 +.public sub_020A0130 +.public sub_020A0198 +.public sub_020A01F0 +.public sub_020A0214 +.public sub_020A0264 +.public sub_020A028C +.public sub_020A0310 +.public sub_020A0340 +.public sub_020A037C +.public sub_020A03D0 +.public sub_020A0404 +.public sub_020A041C +.public sub_020A0500 +.public sub_020A0598 +.public sub_020A0628 +.public sub_020A2A64 +.public sub_020A2AE0 +.public sub_020A2C10 +.public sub_020A2EAC +.public sub_020A2ED8 +.public sub_020A2F04 +.public sub_020A2F60 +.public sub_020A2F84 +.public sub_020A3014 +.public sub_020A3038 +.public sub_020A30BC +.public sub_020A30C8 +.public sub_020A30D4 +.public sub_020A3194 +.public sub_020A3228 +.public sub_020A3260 +.public sub_020A32CC +.public sub_020A32D8 +.public sub_020A3354 +.public sub_020A33FC +.public sub_020A3570 +.public sub_020A357C +.public sub_020A35AC +.public sub_020A3680 +.public sub_020A36A0 +.public sub_020A3754 +.public sub_020A6878 +.public sub_020A688C +.public sub_020A68D0 +.public sub_020A6930 +.public sub_020A6964 +.public sub_020A6AE4 +.public sub_020A6BC4 +.public sub_020A6C00 +.public sub_020A6D58 +.public sub_020A6E4C +.public sub_020A7260 +.public sub_020A72F8 +.public sub_020A7368 +.public sub_020A8460 +.public sub_020A8858 +.public sub_020A8868 +.public sub_020A88E8 +.public sub_020AA9B0 +.public sub_020AB948 +.public sub_020AD850 +.public sub_020AD968 +.public sub_020AD9C0 +.public sub_020ADBC4 +.public sub_020ADCB4 +.public sub_020ADE4C +.public sub_020ADEF0 +.public sub_020AE0F4 +.public sub_020AE210 +.public sub_020AE420 +.public sub_020AF9BC +.public sub_020AFA10 +.public sub_020AFA68 +.public sub_020AFAE4 +.public sub_020AFF20 +.public sub_020AFF64 +.public sub_020B0274 +.public sub_020B03CC +.public sub_020B03D8 +.public sub_020B03E4 +.public sub_020B1694 +.public sub_020B17CC +.public sub_020B1880 +.public sub_020B1BDC +.public sub_020B1CF8 +.public sub_020B1D6C +.public sub_020B1D9C +.public sub_020B304C +.public sub_020B3074 +.public sub_020B31E0 +.public sub_020B32BC +.public sub_020B32E0 +.public sub_020B41A8 +.public sub_020B4874 +.public sub_020B49AC +.public sub_020B49D4 +.public sub_020B4A18 +.public sub_020B4B68 +.public sub_020B4BAC +.public sub_020B4C50 +.public sub_020B4CB4 +.public sub_020B535C +.public sub_020B5394 +.public sub_020B53A0 +.public sub_020B53D0 +.public sub_020B5530 +.public sub_020B556C +.public sub_020B5594 +.public sub_020B55A4 +.public sub_020B55AC +.public sub_020B597C +.public sub_020B59A4 +.public sub_020B5A24 +.public sub_020B5AAC +.public sub_020B5C98 +.public sub_020B5CD8 +.public sub_020B5D18 +.public sub_020B5EA8 +.public sub_020B5EC4 +.public sub_020B5EE0 +.public sub_020B62C8 +.public sub_020B62EC +.public sub_020B634C +.public sub_020B67B4 +.public sub_020B67BC +.public sub_020B68A4 +.public sub_020B6918 +.public sub_020B6B14 +.public sub_020B6B1C +.public sub_020B6C3C +.public sub_020B6C80 +.public sub_020B6D24 +.public sub_020B6E80 +.public sub_020B6FC8 +.public sub_020B7350 +.public sub_020B7418 +.public sub_020B75CC +.public sub_020B77A8 +.public sub_020B781C +.public sub_020B78D4 +.public sub_020B7994 +.public sub_020B7B10 +.public sub_020B7BF4 +.public sub_020B7FE4 +.public sub_020B8008 +.public sub_020B8024 +.public sub_020B802C +.public sub_020B804C +.public sub_020B806C +.public sub_020B8078 +.public sub_020B80A0 +.public sub_020B82CC +.public sub_020B84F8 +.public sub_020B8B04 +.public sub_020B8B40 +.public sub_020B8BC4 +.public sub_020B8BDC +.public sub_020B8BFC +.public sub_020B8E98 +.public sub_020B8F50 +.public sub_020B9044 +.public sub_020B9124 +.public sub_020B91D8 +.public sub_020B9F0C +.public sub_020B9FC8 +.public sub_020B9FD8 +.public sub_020BA034 +.public sub_020BA0DC +.public sub_020BA148 +.public sub_020BA484 +.public sub_020BA560 +.public sub_020BA784 +.public sub_020BA7D4 +.public sub_020BA8D0 +.public sub_020BAA24 +.public sub_020BAB4C +.public sub_020BAD38 +.public sub_020BAD9C +.public sub_020BAEE4 +.public sub_020BAF3C +.public sub_020BBEC4 +.public sub_020BBF84 +.public sub_020BC384 +.public sub_020BC3A8 +.public sub_020BC3F0 +.public sub_020BD2AC +.public sub_020BD3D0 +.public sub_020BD3FC +.public sub_020BD484 +.public sub_020BD590 +.public sub_020BD5EC +.public sub_020BDB00 +.public sub_020BDC24 +.public sub_020BE008 +.public sub_020BE0A8 +.public sub_020BE0E4 +.public sub_020BE294 +.public sub_020BE388 +.public sub_020BE4D0 +.public sub_020BE588 +.public sub_020BE890 +.public sub_020BE940 +.public sub_020BEBB4 +.public sub_020BEC7C +.public sub_020BEDB0 +.public sub_020BF034 +.public sub_020BF070 +.public sub_020BF084 +.public sub_020BF0A8 +.public sub_020BF0CC +.public sub_020C2150 +.public sub_020C23F4 +.public sub_020C2528 +.public sub_020C2698 +.public sub_020C28F8 +.public sub_020C2B7C +.public sub_020C2BA0 +.public sub_020C2BAC +.public sub_020C2C54 +.public sub_020C33C0 +.public sub_020C342C +.public sub_020C3498 +.public sub_020C34D8 +.public sub_020C3518 +.public sub_020C3558 +.public sub_020C3598 +.public sub_020C35D8 +.public sub_020C3618 +.public sub_020C3658 +.public sub_020C3698 +.public sub_020C36D8 +.public sub_020C3718 +.public sub_020C3758 +.public sub_020C3798 +.public sub_020C37D8 +.public sub_020C3818 +.public sub_020C39D8 +.public sub_020C3B90 +.public sub_020C7988 +.public sub_020C79B4 +.public sub_020C7A94 +.public sub_020C7C90 +.public sub_020C7CD4 +.public sub_020C7CEC +.public sub_020C7E0C +.public sub_020C7E48 +.public sub_020C7E70 +.public sub_020C7EF4 +.public sub_020C7F18 +.public sub_020C7F8C +.public sub_020C7FAC +.public sub_020C7FC4 +.public sub_020C8058 +.public sub_020C80C4 +.public sub_020C811C +.public sub_020C815C +.public sub_020C816C +.public sub_020C81F0 +.public sub_020C821C +.public sub_020C8230 +.public sub_020C827C +.public sub_020C829C +.public sub_020C82BC +.public sub_020C82DC +.public sub_020C8374 +.public sub_020C83C0 +.public sub_020C8A78 +.public sub_020C8AF0 +.public sub_020C8B50 +.public sub_020C8B78 +.public sub_020C8D18 +.public sub_020C8D6C +.public sub_020C8D88 +.public sub_020C9014 +.public sub_020C906C +.public sub_020C907C +.public sub_020C9558 +.public sub_020C9788 +.public sub_020C98B4 +.public sub_020C98DC +.public sub_020C9BB8 +.public sub_020C9C04 +.public sub_020C9CD8 +.public sub_020C9CE8 +.public sub_020C9DAC +.public sub_020C9DC4 +.public sub_020C9DF0 +.public sub_020C9E1C +.public sub_020C9E48 +.public sub_020CA8E4 +.public sub_020CD7C4 +.public sub_020CD910 +.public sub_020CD944 +.public sub_020CD978 +.public sub_020CD9B4 +.public sub_020CD9FC +.public sub_020CDA64 +.public sub_020CDA80 +.public sub_020CDAA8 +.public sub_020CE450 +.public sub_020CE584 +.public sub_020CE630 +.public sub_020CEAA0 +.public sub_020CEAB4 +.public sub_020CEAC8 +.public sub_020CEAEC +.public sub_020CEB10 +.public sub_020CEB24 +.public sub_020CEB38 +.public sub_020CEB4C +.public sub_020CEB60 +.public sub_020CEB74 +.public sub_020CEB88 +.public sub_020CEB9C +.public sub_020CEBC4 +.public sub_020CEBEC +.public sub_020CEBFC +.public sub_020CEC0C +.public sub_020CEC1C +.public sub_020CEC2C +.public sub_020CEC3C +.public sub_020CEC70 +.public sub_020CEED4 +.public sub_020CEF08 +.public sub_020CEF28 +.public sub_020CEF5C +.public sub_020CEF7C +.public sub_020CEFCC +.public sub_020CF00C +.public sub_020CF064 +.public sub_020CF0AC +.public sub_020CF15C +.public sub_020CF178 +.public sub_020CF1A0 +.public sub_020CF208 +.public sub_020CF228 +.public sub_020CF254 +.public sub_020CF278 +.public sub_020CF2A4 +.public sub_020CF2F4 +.public sub_020CF348 +.public sub_020CF394 +.public sub_020CF3D8 +.public sub_020CF41C +.public sub_020CF478 +.public sub_020CF4A8 +.public sub_020CF4D4 +.public sub_020CF510 +.public sub_020CF52C +.public sub_020CF548 +.public sub_020CF564 +.public sub_020CF670 +.public sub_020CF704 +.public sub_020CF884 +.public sub_020CF8B4 +.public sub_020CF8E4 +.public sub_020CF8FC +.public sub_020CFA38 +.public sub_020CFA64 +.public sub_020CFB08 +.public sub_020CFB6C +.public sub_020CFBB8 +.public sub_020CFBF4 +.public sub_020CFC30 +.public sub_020CFDC8 +.public sub_020CFE1C +.public sub_020CFE74 +.public sub_020CFECC +.public sub_020CFF24 +.public sub_020CFF84 +.public sub_020CFFE4 +.public sub_020D0044 +.public sub_020D00A4 +.public sub_020D0104 +.public sub_020D0164 +.public sub_020D01C4 +.public sub_020D0224 +.public sub_020D0284 +.public sub_020D02E4 +.public sub_020D0344 +.public sub_020D03A4 +.public sub_020D0404 +.public sub_020D0464 +.public sub_020D04C4 +.public sub_020D08EC +.public sub_020D0948 +.public sub_020D0A88 +.public sub_020D0AD4 +.public sub_020D0B08 +.public sub_020D0B74 +.public sub_020D0BB8 +.public sub_020D0C48 +.public sub_020D0CB0 +.public sub_020D0D1C +.public sub_020D0D60 +.public sub_020D0D80 +.public sub_020D1004 +.public sub_020D108C +.public sub_020D11A8 +.public sub_020D11D4 +.public sub_020D1204 +.public sub_020D1234 +.public sub_020D164C +.public sub_020D168C +.public sub_020D16B4 +.public sub_020D1AC4 +.public sub_020D1AD4 +.public sub_020D1BD0 +.public sub_020D1CE0 +.public sub_020D1D5C +.public sub_020D1E38 +.public sub_020D1E68 +.public sub_020D1E7C +.public sub_020D1ECC +.public sub_020D1F34 +.public sub_020D1F84 +.public sub_020D1FA0 +.public sub_020D2058 +.public sub_020D2100 +.public sub_020D2108 +.public sub_020D21FC +.public sub_020D2230 +.public sub_020D2388 +.public sub_020D23B0 +.public sub_020D2444 +.public sub_020D2584 +.public sub_020D2600 +.public sub_020D2828 +.public sub_020D285C +.public sub_020D2878 +.public sub_020D28B8 +.public sub_020D290C +.public sub_020D2AEC +.public sub_020D2BD0 +.public sub_020D2C78 +.public sub_020D2C8C +.public sub_020D2CA0 +.public sub_020D2D0C +.public sub_020D2FC4 +.public sub_020D2FF4 +.public sub_020D309C +.public sub_020D30B0 +.public sub_020D33C0 +.public sub_020D3438 +.public sub_020D34B0 +.public sub_020D3550 +.public sub_020D3560 +.public sub_020D365C +.public sub_020D369C +.public sub_020D36AC +.public sub_020D37E8 +.public sub_020D3854 +.public sub_020D3A24 +.public sub_020D3A38 +.public sub_020D3A4C +.public sub_020D3A9C +.public sub_020D3AA8 +.public sub_020D3AB4 +.public sub_020D3D30 +.public sub_020D3DF0 +.public sub_020D3E78 +.public sub_020D3F48 +.public sub_020D3F58 +.public sub_020D3F74 +.public sub_020D4064 +.public sub_020D422C +.public sub_020D4294 +.public sub_020D43E8 +.public sub_020D4448 +.public sub_020D44A8 +.public sub_020D46AC +.public sub_020D4790 +.public sub_020D47EC +.public sub_020D4830 +.public sub_020D48B4 +.public sub_020D4968 +.public sub_020D4BD0 +.public sub_020D4D5C +.public sub_020D5044 +.public sub_020D5064 +.public sub_020D508C +.public sub_020D50AC +.public sub_020D50CC +.public sub_020D50E4 +.public sub_020D50FC +.public sub_020D5114 +.public sub_020D5130 +.public sub_020D514C +.public sub_020D5174 +.public sub_020D519C +.public sub_020D5200 +.public sub_020D5240 +.public sub_020D5260 +.public sub_020D5280 +.public sub_020D52A0 +.public sub_020D52C8 +.public sub_020D52E8 +.public sub_020D5334 +.public sub_020D5354 +.public sub_020D5374 +.public sub_020D5394 +.public sub_020D53B4 +.public sub_020D53DC +.public sub_020D53FC +.public sub_020D541C +.public sub_020D54D0 +.public sub_020D5604 +.public sub_020D57D4 +.public sub_020D5990 +.public sub_020D59FC +.public sub_020D5A28 +.public sub_020D5D04 +.public sub_020D5D30 +.public sub_020D5D5C +.public sub_020D5DA4 +.public sub_020D5F34 +.public sub_020D60E4 +.public sub_020D6154 +.public sub_020D6220 +.public sub_020D62B8 +.public sub_020D6300 +.public sub_020D6320 +.public sub_020D64D0 +.public sub_020D64D8 +.public sub_020D650C +.public sub_020D6548 +.public sub_020D6654 +.public sub_020D66A0 +.public sub_020D66C4 +.public sub_020D792C +.public sub_020D7958 +.public sub_020D7998 +.public sub_020D7A4C +.public sub_020D7AD0 +.public sub_020D7B40 +.public sub_020D7C00 +.public sub_020D7D24 +.public sub_020D7EBC +.public sub_020D7F60 +.public sub_020D7F88 +.public sub_020D8180 +.public sub_020D81C0 +.public sub_020D8208 +.public sub_020D8448 +.public sub_020D8728 +.public sub_020D8E00 +.public sub_020D8E40 +.public sub_020D8F08 +.public sub_020D9EF0 +.public sub_020D9F68 +.public sub_020D9FFC +.public sub_020DA124 +.public sub_020DA1B8 +.public sub_020DA208 +.public sub_020DA308 +.public sub_020DA3A0 +.public sub_020DA4E4 +.public sub_020DA6E0 +.public sub_020DA804 +.public sub_020DA81C +.public sub_020DA8A0 +.public sub_020DA9CC +.public sub_020DAA60 +.public sub_020DAA98 +.public sub_020DADE8 +.public sub_020DB774 +.public sub_020DB7F8 +.public sub_020DB868 +.public sub_020DB960 +.public sub_020DB978 +.public sub_020DB990 +.public sub_020DB9A8 +.public sub_020DBA9C +.public sub_020DBB48 +.public sub_020DBBFC +.public sub_020DC284 +.public sub_020DC394 +.public sub_020DC514 +.public sub_020DC96C +.public sub_020DC988 +.public sub_020DC9DC +.public sub_020DD1B0 +.public sub_020DD754 +.public sub_020DD84C +.public sub_020DDC70 +.public sub_020DDC80 +.public sub_020DDCF4 +.public sub_020DDE94 +.public sub_020DDFE0 +.public sub_020DE0C8 +.public sub_020DE248 +.public sub_020DE458 +.public sub_020DEB24 +.public sub_020DEBA8 +.public sub_020DEBEC +.public sub_020DECC4 +.public sub_020DEE40 +.public sub_020DEF24 +.public sub_020DEF44 +.public sub_020DEFD4 +.public sub_020DF064 +.public sub_020DF0F8 +.public sub_020DF250 +.public sub_020DF2C4 +.public sub_020DF338 +.public sub_020DF378 +.public sub_020DF3B8 +.public sub_020DF3F8 +.public sub_020DF408 +.public sub_020DF480 +.public sub_020DF4B8 +.public sub_020DF4F8 +.public sub_020DF624 +.public sub_020DF680 +.public sub_020DF690 +.public sub_020DF6D0 +.public sub_020DF7BC +.public sub_020DF90C +.public sub_020DF94C +.public sub_020DFA18 +.public sub_020DFC70 +.public sub_020DFD14 +.public sub_020DFD7C +.public sub_020DFEAC +.public sub_020DFF1C +.public sub_020DFFBC +.public sub_020E0088 +.public sub_020E00F4 +.public sub_020E0390 +.public sub_020E0C74 +.public sub_020E0C90 +.public sub_020E0C9C +.public sub_020E0D10 +.public sub_020E0D8C +.public sub_020E0E44 +.public sub_020E0E94 +.public sub_020E0EF4 +.public sub_020E0F6C +.public sub_020E0FF0 +.public sub_020E1058 +.public sub_020E10A0 +.public sub_020E1134 +.public sub_020E138C +.public sub_020E13E4 +.public sub_020E140C +.public sub_020E1570 +.public sub_020E1678 +.public sub_020E16E4 +.public sub_020E1A14 +.public sub_020E1A3C +.public sub_020E219C +.public sub_020E2200 +.public sub_020E3714 +.public sub_020E3758 +.public sub_020E3798 +.public sub_020E37D8 +.public sub_020E3850 +.public sub_020E389C +.public sub_020E3920 +.public sub_020E3960 +.public sub_020E39DC +.public sub_020E3A04 +.public sub_020E3A2C +.public sub_020E3A58 +.public sub_020E3A84 +.public sub_020E3D74 +.public sub_020E3DD4 +.public sub_020E3DFC +.public sub_020E3E28 +.public swprintf +.public vsprintf +.public wcslen diff --git a/main.lsf b/main.lsf index 3073a033e..5e4cb96b9 100644 --- a/main.lsf +++ b/main.lsf @@ -110,6 +110,10 @@ Static main Object unk_0202CF1C.o Object unk_0202D230.o Object unk_0202D938.o + Object unk_0202D968.o + Object unk_0202DB34.o + Object unk_0202DBA8.o + Object hall_of_fame.o Object scrcmd.o Object pokemon.o ### Vendor libraries ###