pmd-sky/asm/overlay_18.s
AnonymousRandomPerson e87dda2cfb Matched overlay 13
2023-07-15 20:38:38 -04:00

2582 lines
78 KiB
ArmAsm

.include "asm/macros.inc"
.include "overlay_18.inc"
.include "global.inc"
.text
arm_func_start ov18_0238A140
ov18_0238A140: ; 0x0238A140
stmdb sp!, {r3, lr}
mov r0, #0x3c4
mov r1, #8
bl MemAlloc
ldr r1, _0238A298 ; =0x0238D620
mov r2, #1
str r0, [r1]
strb r2, [r0, #0x10]
ldr r0, [r1]
add r0, r0, #0x14
bl InitPreprocessorArgs
ldr r3, _0238A298 ; =0x0238D620
mov r1, #0
ldr r2, [r3]
sub r0, r1, #1
str r1, [r2, #0x74]
ldr r2, [r3]
mov ip, #2
str r1, [r2, #0x78]
ldr lr, [r3]
ldr r2, [lr, #0x78]
str r2, [lr, #0x80]
ldr r2, [r3]
str r1, [r2, #0x7c]
ldr r2, [r3]
str r0, [r2, #0x84]
ldr r2, [r3]
str r1, [r2, #0x88]
ldr r2, [r3]
add r2, r2, #0x300
strh r0, [r2, #0x8c]
ldr r2, [r3]
add r2, r2, #0x300
strh ip, [r2, #0x88]
ldr r2, [r3]
add r2, r2, #0x300
strh ip, [r2, #0x8a]
ldr r2, [r3]
str r1, [r2, #0x3a0]
ldr r2, [r3]
add r2, r2, #0x300
strh r0, [r2, #0xa4]
ldr r0, [r3]
strh r1, [r0, #0x8c]
bl sub_020573A0
bl sub_02041400
ldr r1, _0238A29C ; =0x0238A090
ldr r0, _0238A298 ; =0x0238D620
ldr r3, [r1]
ldr r2, [r0]
mvn r1, #1
str r3, [r2, #0x390]
ldr r2, [r0]
strb r1, [r2]
ldr r2, [r0]
strb r1, [r2, #1]
ldr r2, [r0]
strb r1, [r2, #2]
ldr r2, [r0]
strb r1, [r2, #3]
ldr r2, [r0]
strb r1, [r2, #4]
ldr r2, [r0]
strb r1, [r2, #5]
ldr r2, [r0]
strb r1, [r2, #6]
ldr r2, [r0]
strb r1, [r2, #7]
ldr r2, [r0]
strb r1, [r2, #8]
ldr r2, [r0]
strb r1, [r2, #9]
ldr r2, [r0]
strb r1, [r2, #0xa]
ldr r2, [r0]
strb r1, [r2, #0xb]
ldr r2, [r0]
strb r1, [r2, #0xc]
ldr r2, [r0]
strb r1, [r2, #0xd]
ldr r2, [r0]
strb r1, [r2, #0xe]
ldr r2, [r0]
mov r0, #1
strb r1, [r2, #0xf]
ldmia sp!, {r3, pc}
.align 2, 0
_0238A298: .word 0x0238D620
_0238A29C: .word 0x0238A090
arm_func_end ov18_0238A140
arm_func_start ov18_0238A2A0
ov18_0238A2A0: ; 0x0238A2A0
stmdb sp!, {r3, lr}
ldr r0, _0238A428 ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #1
bne _0238A2CC
ldrsb r0, [r1]
mvn r1, #1
cmp r0, r1
beq _0238A2CC
bl sub_0202F334
_0238A2CC:
ldr r0, _0238A428 ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #2
bne _0238A2F4
ldrsb r0, [r1, #1]
mvn r1, #1
cmp r0, r1
beq _0238A2F4
bl HidePortraitBox
_0238A2F4:
ldr r0, _0238A428 ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #4
bne _0238A31C
ldrsb r0, [r1, #2]
mvn r1, #1
cmp r0, r1
beq _0238A31C
bl sub_0202F954
_0238A31C:
ldr r0, _0238A428 ; =0x0238D620
ldr r0, [r0]
ldr r0, [r0, #0x88]
tst r0, #0x80
bne _0238A334
bl sub_0203A618
_0238A334:
ldr r0, _0238A428 ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x100
bne _0238A35C
ldrsb r0, [r1, #7]
mvn r1, #1
cmp r0, r1
beq _0238A35C
bl sub_0203088C
_0238A35C:
ldr r0, _0238A428 ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x200
bne _0238A384
ldrsb r0, [r1, #8]
mvn r1, #1
cmp r0, r1
beq _0238A384
bl sub_0203088C
_0238A384:
ldr r0, _0238A428 ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x400
bne _0238A3AC
ldrsb r0, [r1, #9]
mvn r1, #1
cmp r0, r1
beq _0238A3AC
bl sub_0202E6B0
_0238A3AC:
ldr r0, _0238A428 ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x1000
bne _0238A3D4
ldrsb r0, [r1, #0xb]
mvn r1, #1
cmp r0, r1
beq _0238A3D4
bl sub_0202BC60
_0238A3D4:
ldr r0, _0238A428 ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x4000
bne _0238A3FC
ldrsb r0, [r1, #0xd]
mvn r1, #1
cmp r0, r1
beq _0238A3FC
bl sub_0203088C
_0238A3FC:
ldr r0, _0238A428 ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x10000
ldmneia sp!, {r3, pc}
ldrsb r0, [r1, #0xf]
mvn r1, #1
cmp r0, r1
ldmeqia sp!, {r3, pc}
bl sub_0202F334
ldmia sp!, {r3, pc}
.align 2, 0
_0238A428: .word 0x0238D620
arm_func_end ov18_0238A2A0
arm_func_start ov18_0238A42C
ov18_0238A42C: ; 0x0238A42C
stmdb sp!, {r3, lr}
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #1
bne _0238A498
ldrsb r0, [r1]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A48C
bl IsDBoxActive
cmp r0, #0
movne r2, #0
bne _0238A48C
arm_func_end ov18_0238A42C
arm_func_start ov18_0238A468
ov18_0238A468: ; 0x0238A468
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0]
bl FreeDBox
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0]
_0238A48C:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A498:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #2
bne _0238A500
ldrsb r0, [r1, #1]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A4F4
bl sub_0202F66C
cmp r0, #0
movne r2, #0
bne _0238A4F4
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #1]
bl FreePortraitBox
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #1]
_0238A4F4:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A500:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #4
bne _0238A568
ldrsb r0, [r1, #2]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A55C
bl sub_0202FB9C
cmp r0, #0
movne r2, #0
bne _0238A55C
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #2]
bl sub_0202F8FC
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #2]
_0238A55C:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A568:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #8
bne _0238A5D0
ldrsb r0, [r1, #3]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A5C4
bl IsNormalMenuActive
cmp r0, #0
movne r2, #0
bne _0238A5C4
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #3]
bl FreeNormalMenu
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #3]
_0238A5C4:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A5D0:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x20
bne _0238A638
ldrsb r0, [r1, #4]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A62C
bl IsNormalMenuActive
cmp r0, #0
movne r2, #0
bne _0238A62C
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #4]
bl FreeNormalMenu
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #4]
_0238A62C:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A638:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x10
bne _0238A6A0
ldrsb r0, [r1, #5]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A694
bl IsNormalMenuActive
cmp r0, #0
movne r2, #0
bne _0238A694
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #5]
bl FreeNormalMenu
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #5]
_0238A694:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A6A0:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x40
bne _0238A708
ldrsb r0, [r1, #6]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A6FC
bl IsNormalMenuActive
cmp r0, #0
movne r2, #0
bne _0238A6FC
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #6]
bl FreeNormalMenu
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #6]
_0238A6FC:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A708:
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldr r0, [r0, #0x88]
tst r0, #0x80
bne _0238A740
bl sub_0203A9B8
cmp r0, #0
movne r0, #0
bne _0238A734
bl sub_0203A51C
mov r0, #1
_0238A734:
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A740:
ldr r0, _0238AABC ; =0x0238D620
ldr r3, [r0]
ldr r2, [r3, #0x88]
tst r2, #0x100
bne _0238A774
ldrsb r1, [r3, #7]
mvn r0, #1
cmp r1, r0
moveq r0, #1
movne r0, #0
tst r0, #0xff
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A774:
tst r2, #0x200
bne _0238A7D4
ldrsb r0, [r3, #8]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A7C8
bl sub_020308C4
cmp r0, #0
movne r2, #0
bne _0238A7C8
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #8]
bl sub_020308A0
bl sub_020407C0
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #8]
_0238A7C8:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A7D4:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x400
bne _0238A840
ldrsb r0, [r1, #9]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A834
bl sub_0202E6E4
cmp r0, #0
movne r2, #0
bne _0238A834
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #9]
bl sub_0202E6C8
bl sub_02041A00
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #9]
_0238A834:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A840:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x800
bne _0238A8A8
ldrsb r0, [r1, #0xa]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A89C
bl IsNormalMenuActive
cmp r0, #0
movne r2, #0
bne _0238A89C
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xa]
bl FreeNormalMenu
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #0xa]
_0238A89C:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A8A8:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x1000
bne _0238A910
ldrsb r0, [r1, #0xb]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A904
bl sub_0202BCBC
cmp r0, #0
movne r2, #0
bne _0238A904
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xb]
bl FreeAdvancedMenu
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #0xb]
_0238A904:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A910:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x2000
bne _0238A978
ldrsb r0, [r1, #0xc]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A96C
bl IsNormalMenuActive
cmp r0, #0
movne r2, #0
bne _0238A96C
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xc]
bl FreeNormalMenu
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #0xc]
_0238A96C:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A978:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x4000
bne _0238A9E4
ldrsb r0, [r1, #0xd]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238A9D8
bl sub_020308C4
cmp r0, #0
movne r2, #0
bne _0238A9D8
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xd]
bl sub_020308A0
bl sub_020407C0
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #0xd]
_0238A9D8:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238A9E4:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x8000
bne _0238AA4C
ldrsb r0, [r1, #0xe]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238AA40
bl IsNormalMenuActive
cmp r0, #0
movne r2, #0
bne _0238AA40
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xe]
bl FreeNormalMenu
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #0xe]
_0238AA40:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238AA4C:
ldr r0, _0238AABC ; =0x0238D620
ldr r1, [r0]
ldr r0, [r1, #0x88]
tst r0, #0x10000
bne _0238AAB4
ldrsb r0, [r1, #0xf]
mvn r1, #1
cmp r0, r1
moveq r2, #1
beq _0238AAA8
bl IsDBoxActive
cmp r0, #0
movne r2, #0
bne _0238AAA8
ldr r0, _0238AABC ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xf]
bl FreeDBox
ldr r0, _0238AABC ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
mov r2, #1
strb r1, [r0, #0xf]
_0238AAA8:
cmp r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_0238AAB4:
mov r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
_0238AABC: .word 0x0238D620
arm_func_end ov18_0238A468
arm_func_start ov18_0238AAC0
ov18_0238AAC0: ; 0x0238AAC0
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, lr}
add r2, sp, #0xc
bic r2, r2, #3
ldr r1, [sp, #0xc]
add r2, r2, #4
bl Vsprintf
ldmia sp!, {r3, lr}
add sp, sp, #0x10
bx lr
arm_func_end ov18_0238AAC0
arm_func_start ov18_0238AAE8
ov18_0238AAE8: ; 0x0238AAE8
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
mov sl, r0
mov r0, r2
mov sb, r1
mov r8, r3
ldr r7, [sp, #0x28]
mov r6, #0
bl GetMovesetLevelUpPtr
mov r5, r0
mov r4, #1
ldr fp, _0238ABAC ; =0x0000021F
b _0238AB98
_0238AB18:
mov r0, r5
add r1, sp, #0
bl sub_0205384C
ldrb r1, [r0]
add r5, r0, #1
cmp r1, r8
bgt _0238ABA4
ldrsh r0, [sb]
cmp r0, fp
bge _0238AB98
ldrh r0, [sp]
mov r1, r7
bl sub_02053880
cmp r0, #0
beq _0238AB98
ldrh r1, [sp]
mov r2, r1, lsr #0x1f
mov r0, r1, lsr #5
rsb r1, r2, r1, lsl #27
ldr r3, [sl, r0, lsl #2]
add ip, r2, r1, ror #27
tst r3, r4, lsl ip
bne _0238AB98
mov r2, r3
orr r2, r2, r4, lsl ip
str r2, [sl, r0, lsl #2]
add r1, r6, #1
mov r0, r1, lsl #0x10
ldrsh r2, [sb]
mov r6, r0, asr #0x10
add r0, r2, #1
strh r0, [sb]
_0238AB98:
ldrb r0, [r5]
cmp r0, #0
bne _0238AB18
_0238ABA4:
mov r0, r6
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_0238ABAC: .word 0x0000021F
arm_func_end ov18_0238AAE8
arm_func_start ov18_0238ABB0
ov18_0238ABB0: ; 0x0238ABB0
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
sub sp, sp, #0x58
ldr r2, _0238ACDC ; =0x020B0A48
mov r1, #0x44
ldr r2, [r2]
mov r3, #0
smlabb r6, r0, r1, r2
mov r0, r3
add r2, sp, #0x14
_0238ABD4:
add r1, r3, #1
mov r1, r1, lsl #0x10
str r0, [r2, r3, lsl #2]
mov r3, r1, asr #0x10
cmp r3, #0x11
blt _0238ABD4
add r8, sp, #0x14
mov r4, #1
mov r3, #6
_0238ABF8:
mla r2, r0, r3, r6
ldrb r1, [r2, #0x22]
tst r1, #1
beq _0238AC28
ldrh r1, [r2, #0x24]
mov r7, r1, lsr #5
mov r2, r1, lsr #0x1f
rsb r1, r2, r1, lsl #27
ldr r5, [r8, r7, lsl #2]
add r1, r2, r1, ror #27
orr r1, r5, r4, lsl r1
str r1, [r8, r7, lsl #2]
_0238AC28:
add r0, r0, #1
mov r0, r0, lsl #0x10
mov r0, r0, asr #0x10
cmp r0, #4
blt _0238ABF8
mov r0, #0
strh r0, [sp, #4]
ldrsh r1, [r6, #4]
cmp r1, #0
beq _0238ACD4
add r1, sp, #6
mov r0, r6
bl GetEvoFamily
mov r8, r0
mov r7, #0
add r5, sp, #0x14
add r4, sp, #4
add sb, sp, #6
b _0238AC9C
_0238AC74:
ldrsh r2, [r6, #8]
mov r1, r7, lsl #2
add r0, sb, r7, lsl #2
str r2, [sp]
ldrsh r2, [sb, r1]
ldrb r3, [r0, #2]
mov r0, r5
mov r1, r4
bl ov18_0238AAE8
add r7, r7, #1
_0238AC9C:
cmp r7, r8
blt _0238AC74
ldrsh r0, [r6, #4]
ldr r2, _0238ACE0 ; =0x00000216
cmp r0, r2
bne _0238ACD0
ldrsh r3, [r6, #8]
add r0, sp, #0x14
add r1, sp, #4
str r3, [sp]
ldrb r3, [r6, #1]
add r2, r2, #1
bl ov18_0238AAE8
_0238ACD0:
ldrsh r0, [sp, #4]
_0238ACD4:
add sp, sp, #0x58
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
.align 2, 0
_0238ACDC: .word 0x020B0A48
_0238ACE0: .word 0x00000216
arm_func_end ov18_0238ABB0
arm_func_start ov18_0238ACE4
ov18_0238ACE4: ; 0x0238ACE4
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
mov sl, r0
mov r0, r2
mov sb, r1
mov r8, r3
ldr r7, [sp, #0x28]
ldr r6, [sp, #0x2c]
bl GetMovesetLevelUpPtr
mov r5, r0
mov r4, #1
ldr fp, _0238ADA4 ; =0x0000021F
b _0238AD90
_0238AD14:
mov r0, r5
add r1, sp, #0
bl sub_0205384C
ldrb r1, [r0]
add r5, r0, #1
cmp r1, r8
bgt _0238AD9C
ldrsh r0, [sb]
cmp r0, fp
bge _0238AD90
ldrh r0, [sp]
mov r1, r7
bl sub_02053880
cmp r0, #0
beq _0238AD90
ldrh r0, [sp]
mov r3, r0, lsr #0x1f
mov r1, r0, lsr #5
rsb r2, r3, r0, lsl #27
ldr ip, [sl, r1, lsl #2]
add r3, r3, r2, ror #27
tst ip, r4, lsl r3
bne _0238AD90
mov r2, ip
orr r2, r2, r4, lsl r3
str r2, [sl, r1, lsl #2]
ldrsh r1, [sb]
cmp r6, r1
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
add r0, r1, #1
strh r0, [sb]
_0238AD90:
ldrb r0, [r5]
cmp r0, #0
bne _0238AD14
_0238AD9C:
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_0238ADA4: .word 0x0000021F
arm_func_end ov18_0238ACE4
arm_func_start ov18_0238ADA8
ov18_0238ADA8: ; 0x0238ADA8
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, lr}
sub sp, sp, #0x5c
ldr r3, _0238AEE8 ; =0x020B0A48
mov r2, #0x44
ldr r3, [r3]
mov r4, r1
smlabb r8, r0, r2, r3
mov r3, #0
mov r1, r3
add r2, sp, #0x18
_0238ADD0:
add r0, r3, #1
mov r0, r0, lsl #0x10
str r1, [r2, r3, lsl #2]
mov r3, r0, asr #0x10
cmp r3, #0x11
blt _0238ADD0
add r0, sp, #0x18
mov r6, #1
mov r5, #6
_0238ADF4:
mla r3, r1, r5, r8
ldrb r2, [r3, #0x22]
arm_func_end ov18_0238ADA8
arm_func_start ov18_0238ADFC
ov18_0238ADFC: ; 0x0238ADFC
tst r2, #1
beq _0238AE24
ldrh r2, [r3, #0x24]
mov sb, r2, lsr #5
mov r3, r2, lsr #0x1f
rsb r2, r3, r2, lsl #27
ldr r7, [r0, sb, lsl #2]
add r2, r3, r2, ror #27
orr r2, r7, r6, lsl r2
str r2, [r0, sb, lsl #2]
_0238AE24:
add r1, r1, #1
mov r1, r1, lsl #0x10
mov r1, r1, asr #0x10
cmp r1, #4
blt _0238ADF4
mov r0, #0
strh r0, [sp, #8]
ldrsh r1, [r8, #4]
cmp r1, #0
beq _0238AEE0
add r1, sp, #0xa
mov r0, r8
bl GetEvoFamily
mov sl, r0
mov sb, #0
add r7, sp, #0x18
add r6, sp, #8
add r5, sp, #0xa
b _0238AEA0
_0238AE70:
ldrsh r2, [r8, #8]
mov r1, sb, lsl #2
add r0, r5, sb, lsl #2
stmia sp, {r2, r4}
ldrsh r2, [r5, r1]
ldrb r3, [r0, #2]
mov r0, r7
mov r1, r6
bl ov18_0238ACE4
cmp r0, #0
bne _0238AEE0
add sb, sb, #1
_0238AEA0:
cmp sb, sl
blt _0238AE70
ldrsh r0, [r8, #4]
ldr r2, _0238AEEC ; =0x00000216
cmp r0, r2
bne _0238AEDC
ldrsh r3, [r8, #8]
add r0, sp, #0x18
add r1, sp, #8
stmia sp, {r3, r4}
ldrb r3, [r8, #1]
add r2, r2, #1
bl ov18_0238ACE4
cmp r0, #0
bne _0238AEE0
_0238AEDC:
mov r0, #0
_0238AEE0:
add sp, sp, #0x5c
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc}
.align 2, 0
_0238AEE8: .word 0x020B0A48
_0238AEEC: .word 0x00000216
arm_func_end ov18_0238ADFC
arm_func_start ov18_0238AEF0
ov18_0238AEF0: ; 0x0238AEF0
stmdb sp!, {r4, lr}
ldr r2, _0238AF34 ; =0x0238D620
mov r1, r1, lsl #0x10
ldr r2, [r2]
mov r4, r0
add r0, r2, #0x300
ldrsh r0, [r0, #0x8c]
mov r1, r1, asr #0x10
bl ov18_0238ADA8
bl GetMoveName
mov r3, r0
ldr r1, _0238AF38 ; =0x0238D5F8
mov r0, r4
mov r2, #0x4d
bl ov18_0238AAC0
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
_0238AF34: .word 0x0238D620
_0238AF38: .word 0x0238D5F8
arm_func_end ov18_0238AEF0
arm_func_start ov18_0238AF3C
ov18_0238AF3C: ; 0x0238AF3C
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x54
sub sp, sp, #0x400
mov r4, r0
bl sub_02027B1C
bl GetGold
str r0, [sp, #0x428]
bl sub_02041414
cmp r0, #0
ldrne r0, [sp, #0x428]
add ip, sp, #0x400
subne r0, r0, #0x1f4
strne r0, [sp, #0x428]
add ip, ip, #4
ldr r2, _0238AFC8 ; =0x0238D608
ldr r3, _0238AFCC ; =0x0000C402
add r0, sp, #4
mov r1, #0x100
str ip, [sp]
bl PreprocessString
ldr r3, _0238AFD0 ; =0x00000225
mov r0, r4
mov r1, #4
mov r2, #2
bl sub_02026268
add r3, sp, #4
mov r0, r4
mov r1, #0x16
mov r2, #0x10
bl sub_02026214
mov r0, r4
bl sub_02027AF0
add sp, sp, #0x54
add sp, sp, #0x400
ldmia sp!, {r3, r4, pc}
.align 2, 0
_0238AFC8: .word 0x0238D608
_0238AFCC: .word 0x0000C402
_0238AFD0: .word 0x00000225
arm_func_end ov18_0238AF3C
arm_func_start ov18_0238AFD4
ov18_0238AFD4: ; 0x0238AFD4
stmdb sp!, {r3, lr}
ldr r0, _0238B018 ; =0x0238D620
ldr r0, [r0]
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl MemFree
ldr r0, _0238B018 ; =0x0238D620
mov r1, #0
str r1, [r0]
bl sub_02041414
cmp r0, #0
beq _0238B010
mov r0, #0x1f4
rsb r0, r0, #0
bl AddMoneyCarried
_0238B010:
bl sub_020572EC
ldmia sp!, {r3, pc}
.align 2, 0
_0238B018: .word 0x0238D620
arm_func_end ov18_0238AFD4
_0238B01C:
.byte 0x78, 0x40, 0x2D, 0xE9
.byte 0x85, 0xDF, 0x4D, 0xE2, 0x14, 0x0D, 0x9F, 0xE5, 0x00, 0x40, 0x90, 0xE5, 0x74, 0x00, 0x94, 0xE5
.byte 0x03, 0x00, 0x50, 0xE3, 0x00, 0xF1, 0x8F, 0x90, 0x3D, 0x03, 0x00, 0xEA, 0x02, 0x00, 0x00, 0xEA
.byte 0x2E, 0x03, 0x00, 0xEA, 0x34, 0x03, 0x00, 0xEA, 0x39, 0x03, 0x00, 0xEA, 0xF0, 0xCC, 0x9F, 0xE5
.byte 0x1C, 0x60, 0x8D, 0xE2, 0x13, 0x50, 0xA0, 0xE3, 0x0F, 0x00, 0xBC, 0xE8, 0x0F, 0x00, 0xA6, 0xE8
.byte 0x01, 0x50, 0x55, 0xE2, 0xFB, 0xFF, 0xFF, 0x1A, 0x7C, 0x00, 0x94, 0xE5, 0x03, 0x00, 0x50, 0xE3
.byte 0x00, 0xF1, 0x8F, 0x90, 0x1F, 0x03, 0x00, 0xEA, 0x02, 0x00, 0x00, 0xEA, 0x1E, 0x00, 0x00, 0xEA
.byte 0x00, 0x03, 0x00, 0xEA, 0xFF, 0xFF, 0xFF, 0xEA, 0xB0, 0x0C, 0x9F, 0xE5, 0x00, 0x10, 0xA0, 0xE3
.byte 0x7C, 0x10, 0x84, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0x1C, 0x00, 0x8D, 0xE2, 0x78, 0x10, 0x91, 0xE5
.byte 0x01, 0x01, 0x90, 0xE7, 0x30, 0xFF, 0x2F, 0xE1, 0x90, 0x0C, 0x9F, 0xE5, 0x00, 0x30, 0x90, 0xE5
.byte 0x78, 0x10, 0x93, 0xE5, 0x80, 0x20, 0x93, 0xE5, 0x02, 0x00, 0x51, 0xE1, 0x0D, 0x03, 0x00, 0x0A
.byte 0x7C, 0x10, 0x93, 0xE5, 0x03, 0x00, 0x51, 0xE3, 0x05, 0x00, 0x00, 0x1A, 0x78, 0x20, 0x83, 0xE5
.byte 0x00, 0x10, 0x90, 0xE5, 0x1C, 0x00, 0x8D, 0xE2, 0x78, 0x10, 0x91, 0xE5, 0x01, 0x01, 0x90, 0xE7
.byte 0x30, 0xFF, 0x2F, 0xE1, 0x6D, 0xFC, 0xFF, 0xEB, 0x50, 0x0C, 0x9F, 0xE5, 0x01, 0x10, 0xA0, 0xE3
.byte 0x00, 0x00, 0x90, 0xE5, 0x7C, 0x10, 0x80, 0xE5, 0xFE, 0x02, 0x00, 0xEA, 0xCA, 0xFC, 0xFF, 0xEB
.byte 0x00, 0x00, 0x50, 0xE3, 0xFB, 0x02, 0x00, 0x0A, 0x30, 0x0C, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5
.byte 0x88, 0x00, 0x91, 0xE5, 0x01, 0x00, 0x10, 0xE3, 0xE1, 0x00, 0x00, 0x0A, 0xD0, 0x10, 0xD1, 0xE1
.byte 0x01, 0x00, 0xE0, 0xE3, 0x1C, 0x4C, 0x9F, 0xE5, 0x00, 0x00, 0x51, 0xE1, 0x07, 0x00, 0x00, 0x1A
.byte 0x14, 0x0C, 0x9F, 0xE5, 0xDD, 0x8F, 0xF2, 0xEB, 0x00, 0x1C, 0x9F, 0xE5, 0x00, 0x20, 0xE0, 0xE3
.byte 0x00, 0x30, 0x91, 0xE5, 0x00, 0x00, 0xC3, 0xE5, 0x00, 0x00, 0x91, 0xE5, 0x84, 0x20, 0x80, 0xE5
.byte 0xE8, 0x0B, 0x9F, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0xD0, 0x00, 0xD0, 0xE1, 0x90, 0x90, 0xF2, 0xEB
.byte 0xD8, 0x0B, 0x9F, 0xE5, 0x7F, 0x1F, 0xA0, 0xE3, 0x00, 0x30, 0x90, 0xE5, 0x84, 0x20, 0x93, 0xE5
.byte 0x60, 0x10, 0x83, 0xE5, 0x00, 0x30, 0x90, 0xE5, 0x02, 0x08, 0xA0, 0xE1, 0x78, 0x10, 0x93, 0xE5
.byte 0x20, 0x08, 0xA0, 0xE1, 0x48, 0x00, 0x51, 0xE3, 0x07, 0x00, 0x00, 0xCA, 0x0D, 0x00, 0x00, 0xAA
.byte 0x2D, 0x00, 0x51, 0xE3, 0x12, 0x00, 0x00, 0xCA, 0x2C, 0x00, 0x51, 0xE3, 0x10, 0x00, 0x00, 0xBA
.byte 0x2D, 0x00, 0x51, 0x13, 0x07, 0x00, 0x00, 0x0A, 0x0D, 0x00, 0x00, 0xEA, 0x4B, 0x00, 0x51, 0xE3
.byte 0x0B, 0x00, 0x00, 0xCA, 0x49, 0x00, 0x51, 0xE3, 0x09, 0x00, 0x00, 0xBA, 0x4A, 0x00, 0x51, 0x13
.byte 0x4B, 0x00, 0x51, 0x13, 0x06, 0x00, 0x00, 0x1A, 0x70, 0x1B, 0x9F, 0xE5, 0x00, 0x20, 0x91, 0xE5
.byte 0x03, 0x1C, 0x82, 0xE2, 0xFC, 0x18, 0xD1, 0xE1, 0x02, 0x18, 0x81, 0xE3, 0x14, 0x10, 0x82, 0xE5
.byte 0x01, 0x00, 0x00, 0xEA, 0x7F, 0x1F, 0xA0, 0xE3, 0x14, 0x10, 0x83, 0xE5, 0x4C, 0x1B, 0x9F, 0xE5
.byte 0x00, 0x30, 0x91, 0xE5, 0x78, 0x20, 0x93, 0xE5, 0x4B, 0x00, 0x52, 0xE3, 0x02, 0xF1, 0x8F, 0x90
.byte 0x98, 0x00, 0x00, 0xEA, 0x4A, 0x00, 0x00, 0xEA, 0x96, 0x00, 0x00, 0xEA, 0x95, 0x00, 0x00, 0xEA
.byte 0x52, 0x00, 0x00, 0xEA, 0x51, 0x00, 0x00, 0xEA, 0x53, 0x00, 0x00, 0xEA, 0x91, 0x00, 0x00, 0xEA
.byte 0x90, 0x00, 0x00, 0xEA, 0x52, 0x00, 0x00, 0xEA, 0x51, 0x00, 0x00, 0xEA, 0x53, 0x00, 0x00, 0xEA
.byte 0x52, 0x00, 0x00, 0xEA, 0x54, 0x00, 0x00, 0xEA, 0x53, 0x00, 0x00, 0xEA, 0x55, 0x00, 0x00, 0xEA
.byte 0x54, 0x00, 0x00, 0xEA, 0x87, 0x00, 0x00, 0xEA, 0x86, 0x00, 0x00, 0xEA, 0x85, 0x00, 0x00, 0xEA
.byte 0x59, 0x00, 0x00, 0xEA, 0x58, 0x00, 0x00, 0xEA, 0x82, 0x00, 0x00, 0xEA, 0x81, 0x00, 0x00, 0xEA
.byte 0x80, 0x00, 0x00, 0xEA, 0x7F, 0x00, 0x00, 0xEA, 0x4D, 0x00, 0x00, 0xEA, 0x4C, 0x00, 0x00, 0xEA
.byte 0x7C, 0x00, 0x00, 0xEA, 0x7B, 0x00, 0x00, 0xEA, 0x7A, 0x00, 0x00, 0xEA, 0x79, 0x00, 0x00, 0xEA
.byte 0x78, 0x00, 0x00, 0xEA, 0x77, 0x00, 0x00, 0xEA, 0x76, 0x00, 0x00, 0xEA, 0x4D, 0x00, 0x00, 0xEA
.byte 0x4C, 0x00, 0x00, 0xEA, 0x4E, 0x00, 0x00, 0xEA, 0x72, 0x00, 0x00, 0xEA, 0x71, 0x00, 0x00, 0xEA
.byte 0x4D, 0x00, 0x00, 0xEA, 0x6F, 0x00, 0x00, 0xEA, 0x6E, 0x00, 0x00, 0xEA, 0x4C, 0x00, 0x00, 0xEA
.byte 0x4B, 0x00, 0x00, 0xEA, 0x4D, 0x00, 0x00, 0xEA, 0x4C, 0x00, 0x00, 0xEA, 0x69, 0x00, 0x00, 0xEA
.byte 0x4D, 0x00, 0x00, 0xEA, 0x4C, 0x00, 0x00, 0xEA, 0x4E, 0x00, 0x00, 0xEA, 0x4D, 0x00, 0x00, 0xEA
.byte 0x4F, 0x00, 0x00, 0xEA, 0x63, 0x00, 0x00, 0xEA, 0x62, 0x00, 0x00, 0xEA, 0x61, 0x00, 0x00, 0xEA
.byte 0x60, 0x00, 0x00, 0xEA, 0x5F, 0x00, 0x00, 0xEA, 0x5E, 0x00, 0x00, 0xEA, 0x4B, 0x00, 0x00, 0xEA
.byte 0x4A, 0x00, 0x00, 0xEA, 0x5B, 0x00, 0x00, 0xEA, 0x5A, 0x00, 0x00, 0xEA, 0x59, 0x00, 0x00, 0xEA
.byte 0x58, 0x00, 0x00, 0xEA, 0x57, 0x00, 0x00, 0xEA, 0x56, 0x00, 0x00, 0xEA, 0x48, 0x00, 0x00, 0xEA
.byte 0x54, 0x00, 0x00, 0xEA, 0x53, 0x00, 0x00, 0xEA, 0x47, 0x00, 0x00, 0xEA, 0x51, 0x00, 0x00, 0xEA
.byte 0x50, 0x00, 0x00, 0xEA, 0x46, 0x00, 0x00, 0xEA, 0x45, 0x00, 0x00, 0xEA, 0x49, 0x00, 0x00, 0xEA
.byte 0x48, 0x00, 0x00, 0xEA, 0x10, 0x00, 0xD3, 0xE5, 0x00, 0x00, 0x50, 0xE3, 0x0C, 0x0A, 0x9F, 0x05
.byte 0x48, 0x00, 0x00, 0x0A, 0x7D, 0x0F, 0xA0, 0xE3, 0x38, 0x00, 0x83, 0xE5, 0x00, 0x00, 0x91, 0xE5
.byte 0x00, 0x10, 0xA0, 0xE3, 0x10, 0x10, 0xC0, 0xE5, 0xF4, 0x09, 0x9F, 0xE5, 0x41, 0x00, 0x00, 0xEA
.byte 0x41, 0x0E, 0xA0, 0xE3, 0xEC, 0x49, 0x9F, 0xE5, 0x3E, 0x00, 0x00, 0xEA, 0xE8, 0x09, 0x9F, 0xE5
.byte 0x3C, 0x00, 0x00, 0xEA, 0xE4, 0x09, 0x9F, 0xE5, 0xD8, 0x49, 0x9F, 0xE5, 0x39, 0x00, 0x00, 0xEA
.byte 0xDC, 0x09, 0x9F, 0xE5, 0xCC, 0x49, 0x9F, 0xE5, 0x36, 0x00, 0x00, 0xEA, 0xD4, 0x09, 0x9F, 0xE5
.byte 0xC0, 0x49, 0x9F, 0xE5, 0x33, 0x00, 0x00, 0xEA, 0xCC, 0x09, 0x9F, 0xE5, 0xB4, 0x49, 0x9F, 0xE5
.byte 0x30, 0x00, 0x00, 0xEA, 0x54, 0x0E, 0xF2, 0xEB, 0x7D, 0x0F, 0x50, 0xE3, 0xBC, 0x09, 0x9F, 0xB5
.byte 0xBC, 0x49, 0x9F, 0xE5, 0xBC, 0x09, 0x9F, 0xA5, 0x2A, 0x00, 0x00, 0xEA, 0xB8, 0x09, 0x9F, 0xE5
.byte 0x90, 0x49, 0x9F, 0xE5, 0x27, 0x00, 0x00, 0xEA, 0xB0, 0x09, 0x9F, 0xE5, 0x84, 0x49, 0x9F, 0xE5
.byte 0x24, 0x00, 0x00, 0xEA, 0xA8, 0x09, 0x9F, 0xE5, 0x22, 0x00, 0x00, 0xEA, 0xA4, 0x09, 0x9F, 0xE5
.byte 0x20, 0x00, 0x00, 0xEA, 0x88, 0x09, 0x9F, 0xE5, 0x68, 0x49, 0x9F, 0xE5, 0x1D, 0x00, 0x00, 0xEA
.byte 0x94, 0x09, 0x9F, 0xE5, 0x5C, 0x49, 0x9F, 0xE5, 0x1A, 0x00, 0x00, 0xEA, 0xFF, 0x0F, 0xA0, 0xE3
.byte 0x50, 0x49, 0x9F, 0xE5, 0x17, 0x00, 0x00, 0xEA, 0x80, 0x09, 0x9F, 0xE5, 0x44, 0x49, 0x9F, 0xE5
.byte 0x14, 0x00, 0x00, 0xEA, 0x78, 0x09, 0x9F, 0xE5, 0x38, 0x49, 0x9F, 0xE5, 0x11, 0x00, 0x00, 0xEA
.byte 0x70, 0x19, 0x9F, 0xE5, 0x70, 0x09, 0x9F, 0xE5, 0x38, 0x10, 0x83, 0xE5, 0x24, 0x49, 0x9F, 0xE5
.byte 0x0C, 0x00, 0x00, 0xEA, 0x64, 0x09, 0x9F, 0xE5, 0x0A, 0x00, 0x00, 0xEA, 0x60, 0x09, 0x9F, 0xE5
.byte 0x08, 0x00, 0x00, 0xEA, 0x4C, 0x19, 0x9F, 0xE5, 0x58, 0x09, 0x9F, 0xE5, 0x38, 0x10, 0x83, 0xE5
.byte 0x00, 0x49, 0x9F, 0xE5, 0x03, 0x00, 0x00, 0xEA, 0x38, 0x19, 0x9F, 0xE5, 0x48, 0x09, 0x9F, 0xE5
.byte 0xF0, 0x48, 0x9F, 0xE5, 0x38, 0x10, 0x83, 0xE5, 0xD0, 0x18, 0x9F, 0xE5, 0x00, 0x08, 0xA0, 0xE1
.byte 0x00, 0x30, 0x91, 0xE5, 0x20, 0x58, 0xA0, 0xE1, 0x84, 0x20, 0x93, 0xE5, 0x20, 0x08, 0x52, 0xE1
.byte 0x07, 0x00, 0x00, 0x0A, 0x84, 0x50, 0x83, 0xE5, 0x00, 0x30, 0x91, 0xE5, 0x04, 0x10, 0xA0, 0xE1
.byte 0x84, 0x20, 0x93, 0xE5, 0xD4, 0x01, 0xD3, 0xE0, 0x02, 0x28, 0xA0, 0xE1, 0x22, 0x28, 0xA0, 0xE1
.byte 0x43, 0x8F, 0xF2, 0xEB, 0x94, 0x08, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0x88, 0x00, 0x91, 0xE5
.byte 0x02, 0x00, 0x10, 0xE3, 0x1D, 0x00, 0x00, 0x0A, 0xD1, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3
.byte 0x00, 0x00, 0x51, 0xE1, 0x19, 0x00, 0x00, 0x1A, 0x00, 0x00, 0xA0, 0xE3, 0x03, 0x10, 0xA0, 0xE3
.byte 0x01, 0x20, 0xA0, 0xE3, 0x34, 0x90, 0xF2, 0xEB, 0x60, 0x28, 0x9F, 0xE5, 0x7F, 0x1F, 0xA0, 0xE3
.byte 0x00, 0x30, 0x92, 0xE5, 0x01, 0x00, 0xC3, 0xE5, 0x00, 0x00, 0x92, 0xE5, 0x64, 0x00, 0x80, 0xE2
.byte 0xB7, 0x08, 0xF3, 0xEB, 0x44, 0x08, 0x9F, 0xE5, 0x00, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5
.byte 0x64, 0x00, 0x80, 0xE2, 0xBE, 0x08, 0xF3, 0xEB, 0x30, 0x08, 0x9F, 0xE5, 0x00, 0x10, 0xA0, 0xE3
.byte 0x00, 0x00, 0x90, 0xE5, 0x64, 0x00, 0x80, 0xE2, 0xB5, 0x08, 0xF3, 0xEB, 0x1C, 0x08, 0x9F, 0xE5
.byte 0x00, 0x10, 0x90, 0xE5, 0xD1, 0x00, 0xD1, 0xE1, 0x64, 0x10, 0x81, 0xE2, 0x57, 0x90, 0xF2, 0xEB
.byte 0x08, 0x08, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0x88, 0x00, 0x91, 0xE5, 0x04, 0x00, 0x10, 0xE3
.byte 0x09, 0x00, 0x00, 0x0A, 0xD2, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1
.byte 0x05, 0x00, 0x00, 0x1A, 0x54, 0x08, 0x9F, 0xE5, 0x54, 0x18, 0x9F, 0xE5, 0xD8, 0x90, 0xF2, 0xEB
.byte 0xD8, 0x17, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x02, 0x00, 0xC1, 0xE5, 0xCC, 0x07, 0x9F, 0xE5
.byte 0x00, 0x10, 0x90, 0xE5, 0x88, 0x00, 0x91, 0xE5, 0x08, 0x00, 0x10, 0xE3, 0x0D, 0x00, 0x00, 0x0A
.byte 0xD3, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1, 0x09, 0x00, 0x00, 0x1A
.byte 0x20, 0x08, 0x9F, 0xE5, 0x03, 0x40, 0xA0, 0xE3, 0x1C, 0x18, 0x9F, 0xE5, 0x1C, 0x38, 0x9F, 0xE5
.byte 0x00, 0x20, 0xA0, 0xE3, 0x00, 0x40, 0x8D, 0xE5, 0xCF, 0x7E, 0xF2, 0xEB, 0x8C, 0x17, 0x9F, 0xE5
.byte 0x00, 0x10, 0x91, 0xE5, 0x03, 0x00, 0xC1, 0xE5, 0x80, 0x07, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5
.byte 0x88, 0x00, 0x91, 0xE5, 0x20, 0x00, 0x10, 0xE3, 0x0D, 0x00, 0x00, 0x0A, 0xD4, 0x10, 0xD1, 0xE1
.byte 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1, 0x09, 0x00, 0x00, 0x1A, 0xE0, 0x07, 0x9F, 0xE5
.byte 0x04, 0x40, 0xA0, 0xE3, 0xD0, 0x17, 0x9F, 0xE5, 0xD8, 0x37, 0x9F, 0xE5, 0x00, 0x20, 0xA0, 0xE3
.byte 0x00, 0x40, 0x8D, 0xE5, 0xBC, 0x7E, 0xF2, 0xEB, 0x40, 0x17, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5
.byte 0x04, 0x00, 0xC1, 0xE5, 0x34, 0x17, 0x9F, 0xE5, 0x00, 0x30, 0x91, 0xE5, 0x88, 0x00, 0x93, 0xE5
.byte 0x40, 0x00, 0x10, 0xE3, 0x10, 0x00, 0x00, 0x0A, 0xD6, 0x20, 0xD3, 0xE1, 0x01, 0x00, 0xE0, 0xE3
.byte 0x00, 0x00, 0x52, 0xE1, 0x0C, 0x00, 0x00, 0x1A, 0x01, 0x00, 0xA0, 0xE3, 0x90, 0x00, 0x83, 0xE5
.byte 0x02, 0x00, 0xA0, 0xE3, 0x00, 0x00, 0x8D, 0xE5, 0x00, 0x20, 0x91, 0xE5, 0x88, 0x07, 0x9F, 0xE5
.byte 0x88, 0x17, 0x9F, 0xE5, 0x88, 0x37, 0x9F, 0xE5, 0x90, 0x20, 0x82, 0xE2, 0xA6, 0x7E, 0xF2, 0xEB
.byte 0xE8, 0x16, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x06, 0x00, 0xC1, 0xE5, 0xDC, 0x06, 0x9F, 0xE5
.byte 0x00, 0x10, 0x90, 0xE5, 0x88, 0x00, 0x91, 0xE5, 0x10, 0x00, 0x10, 0xE3, 0x0D, 0x00, 0x00, 0x0A
.byte 0xD5, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1, 0x09, 0x00, 0x00, 0x1A
.byte 0x50, 0x07, 0x9F, 0xE5, 0x05, 0x40, 0xA0, 0xE3, 0x4C, 0x37, 0x9F, 0xE5, 0x13, 0x10, 0xA0, 0xE3
.byte 0x00, 0x20, 0xA0, 0xE3, 0x00, 0x40, 0x8D, 0xE5, 0x93, 0x7E, 0xF2, 0xEB, 0x9C, 0x16, 0x9F, 0xE5
.byte 0x00, 0x10, 0x91, 0xE5, 0x05, 0x00, 0xC1, 0xE5, 0x90, 0x06, 0x9F, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x88, 0x00, 0x90, 0xE5, 0x80, 0x00, 0x10, 0xE3, 0x0E, 0x00, 0x00, 0x0A, 0xB5, 0xBC, 0xF2, 0xEB
.byte 0x00, 0x00, 0x50, 0xE3, 0x0B, 0x00, 0x00, 0x1A, 0x70, 0x26, 0x9F, 0xE5, 0x02, 0x30, 0xA0, 0xE3
.byte 0x00, 0x10, 0x92, 0xE5, 0x06, 0x00, 0xA0, 0xE3, 0x03, 0x1C, 0x81, 0xE2, 0xB8, 0x38, 0xC1, 0xE1
.byte 0x00, 0x10, 0x92, 0xE5, 0x03, 0x1C, 0x81, 0xE2, 0xBA, 0x38, 0xC1, 0xE1, 0x00, 0x10, 0x92, 0xE5
.byte 0xE2, 0x1F, 0x81, 0xE2, 0x4C, 0xB9, 0xF2, 0xEB, 0x40, 0x06, 0x9F, 0xE5, 0x00, 0x20, 0x90, 0xE5
.byte 0x88, 0x00, 0x92, 0xE5, 0x01, 0x0C, 0x10, 0xE3, 0x0D, 0x00, 0x00, 0x0A, 0xD7, 0x10, 0xD2, 0xE1
.byte 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1, 0x09, 0x00, 0x00, 0x1A, 0x03, 0x0C, 0x82, 0xE2
.byte 0xFC, 0x18, 0xD0, 0xE1, 0x67, 0x0F, 0x8D, 0xE2, 0x3E, 0x3E, 0xF3, 0xEB, 0x67, 0x0F, 0x8D, 0xE2
.byte 0x03, 0x10, 0xA0, 0xE3, 0x85, 0xCE, 0xF2, 0xEB, 0x00, 0x16, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5
.byte 0x07, 0x00, 0xC1, 0xE5, 0xF4, 0x05, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0x88, 0x00, 0x91, 0xE5
.byte 0x02, 0x0C, 0x10, 0xE3, 0x15, 0x00, 0x00, 0x0A, 0xD8, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3
.byte 0x00, 0x00, 0x51, 0xE1, 0x10, 0x00, 0x00, 0x1A, 0x63, 0x0D, 0xF2, 0xEB, 0x00, 0x10, 0xA0, 0xE3
.byte 0x7D, 0x0F, 0x50, 0xE3, 0x01, 0x20, 0xA0, 0xE1, 0x05, 0x00, 0x00, 0xAA, 0x04, 0x00, 0xA0, 0xE3
.byte 0x81, 0xD2, 0xF2, 0xEB, 0xB4, 0x15, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x08, 0x00, 0xC1, 0xE5
.byte 0x06, 0x00, 0x00, 0xEA, 0x05, 0x00, 0xA0, 0xE3, 0x7B, 0xD2, 0xF2, 0xEB, 0x9C, 0x15, 0x9F, 0xE5
.byte 0x00, 0x10, 0x91, 0xE5, 0x08, 0x00, 0xC1, 0xE5, 0x00, 0x00, 0x00, 0xEA, 0x71, 0xD6, 0xF2, 0xEB
.byte 0x88, 0x05, 0x9F, 0xE5, 0x00, 0x20, 0x90, 0xE5, 0x88, 0x00, 0x92, 0xE5, 0x01, 0x0B, 0x10, 0xE3
.byte 0x16, 0x00, 0x00, 0x0A, 0xD7, 0x10, 0xD2, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1
.byte 0x12, 0x00, 0x00, 0x1A, 0xA0, 0x03, 0x92, 0xE5, 0x00, 0x00, 0x50, 0xE3, 0x07, 0x00, 0x00, 0x1A
.byte 0xA6, 0x00, 0x82, 0xE2, 0x03, 0x0C, 0x80, 0xE2, 0x01, 0x10, 0xA0, 0xE3, 0x1B, 0xD8, 0xF2, 0xEB
.byte 0x48, 0x15, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x09, 0x00, 0xC1, 0xE5, 0x07, 0x00, 0x00, 0xEA
.byte 0x03, 0x1C, 0x82, 0xE2, 0xF4, 0x2A, 0xD1, 0xE1, 0x04, 0x10, 0xA0, 0xE3, 0x01, 0x30, 0xA0, 0xE3
.byte 0xE4, 0xD7, 0xF2, 0xEB, 0x24, 0x15, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x09, 0x00, 0xC1, 0xE5
.byte 0x18, 0x05, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0x88, 0x00, 0x91, 0xE5, 0x02, 0x0B, 0x10, 0xE3
.byte 0x53, 0x00, 0x00, 0x0A, 0xDA, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1
.byte 0x4F, 0x00, 0x00, 0x1A, 0x12, 0xD6, 0xF2, 0xEB, 0xF0, 0x14, 0x9F, 0xE5, 0x00, 0x60, 0xA0, 0xE1
.byte 0x00, 0x00, 0x91, 0xE5, 0x03, 0x0C, 0x80, 0xE2, 0xFC, 0x08, 0xD0, 0xE1, 0x13, 0x2B, 0xF3, 0xEB
.byte 0x00, 0x00, 0x50, 0xE3, 0x04, 0x00, 0x00, 0x0A, 0xCE, 0xD5, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3
.byte 0x68, 0x45, 0x9F, 0x15, 0x68, 0x45, 0x9F, 0x05, 0x00, 0x00, 0x00, 0xEA, 0x64, 0x45, 0x9F, 0xE5
.byte 0xB8, 0x04, 0x9F, 0xE5, 0x00, 0x20, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x02, 0x10, 0xA0, 0xE1
.byte 0xE5, 0x5F, 0x80, 0xE2, 0x01, 0x00, 0x82, 0xE2, 0x00, 0x08, 0xA0, 0xE1, 0x02, 0x10, 0xC5, 0xE7
.byte 0x40, 0x28, 0xA0, 0xE1, 0x08, 0x00, 0x52, 0xE3, 0xF9, 0xFF, 0xFF, 0xBA, 0x06, 0x00, 0xA0, 0xE1
.byte 0x37, 0xD6, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3, 0x03, 0x00, 0xA0, 0x03, 0x01, 0x00, 0xC5, 0x05
.byte 0x06, 0x00, 0xA0, 0xE1, 0xA6, 0xD6, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3, 0x03, 0x00, 0xA0, 0x03
.byte 0x02, 0x00, 0xC5, 0x05, 0x00, 0x00, 0x56, 0xE3, 0x03, 0x00, 0xA0, 0xD3, 0x03, 0x00, 0xC5, 0xD5
.byte 0x14, 0xD1, 0xF2, 0xEB, 0x01, 0x10, 0x86, 0xE2, 0x01, 0x18, 0xA0, 0xE1, 0x00, 0x60, 0xA0, 0xE3
.byte 0x41, 0xC8, 0xA0, 0xE1, 0x06, 0x20, 0xA0, 0xE1, 0x01, 0x30, 0xA0, 0xE3, 0x0C, 0x00, 0x00, 0xEA
.byte 0x8C, 0x11, 0xD0, 0xE7, 0x01, 0x00, 0x11, 0xE3, 0x03, 0x10, 0xA0, 0x11, 0x02, 0x10, 0xA0, 0x01
.byte 0xFF, 0x00, 0x11, 0xE3, 0x03, 0x00, 0x00, 0x0A, 0x8C, 0x11, 0xD0, 0xE7, 0x02, 0x00, 0x11, 0xE3
.byte 0x01, 0x60, 0xA0, 0x03, 0x04, 0x00, 0x00, 0x0A, 0x01, 0x10, 0x8C, 0xE2, 0x01, 0x18, 0xA0, 0xE1
.byte 0x41, 0xC8, 0xA0, 0xE1, 0x04, 0x00, 0x5C, 0xE3, 0xF0, 0xFF, 0xFF, 0xBA, 0xFC, 0x13, 0x9F, 0xE5
.byte 0x00, 0x00, 0x56, 0xE3, 0x03, 0x00, 0xA0, 0x03, 0x04, 0x00, 0xC5, 0x05, 0x00, 0x50, 0x91, 0xE5
.byte 0x08, 0x20, 0xA0, 0xE3, 0xE5, 0x3F, 0x85, 0xE2, 0x88, 0x31, 0x85, 0xE5, 0x00, 0x20, 0x8D, 0xE5
.byte 0x00, 0x20, 0x91, 0xE5, 0x80, 0x04, 0x9F, 0xE5, 0x80, 0x14, 0x9F, 0xE5, 0x04, 0x30, 0xA0, 0xE1
.byte 0x4A, 0x2F, 0x82, 0xE2, 0xDC, 0x7D, 0xF2, 0xEB, 0xC0, 0x13, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5
.byte 0x0A, 0x00, 0xC1, 0xE5, 0xB4, 0x03, 0x9F, 0xE5, 0x00, 0x20, 0x90, 0xE5, 0x88, 0x00, 0x92, 0xE5
.byte 0x01, 0x0A, 0x10, 0xE3, 0x35, 0x00, 0x00, 0x0A, 0xDB, 0x10, 0xD2, 0xE1, 0x01, 0x00, 0xE0, 0xE3
.byte 0x00, 0x00, 0x51, 0xE1, 0x31, 0x00, 0x00, 0x1A, 0x03, 0x0C, 0x82, 0xE2, 0x40, 0x14, 0x9F, 0xE5
.byte 0xFC, 0x28, 0xD0, 0xE1, 0x00, 0x10, 0x91, 0xE5, 0x44, 0x00, 0xA0, 0xE3, 0x82, 0x10, 0x01, 0xE1
.byte 0x08, 0x00, 0x8D, 0xE2, 0x3A, 0x10, 0x81, 0xE2, 0x0A, 0x20, 0xA0, 0xE3, 0x08, 0x66, 0xF2, 0xEB
.byte 0x68, 0x03, 0x9F, 0xE5, 0x1C, 0x14, 0x9F, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x08, 0x30, 0x8D, 0xE2
.byte 0xAE, 0x00, 0x80, 0xE2, 0x03, 0x0C, 0x80, 0xE2, 0x46, 0x20, 0xA0, 0xE3, 0x33, 0xFC, 0xFF, 0xEB
.byte 0x48, 0x13, 0x9F, 0xE5, 0x00, 0x34, 0x9F, 0xE5, 0x00, 0x40, 0x91, 0xE5, 0x10, 0x20, 0xA0, 0xE3
.byte 0xFC, 0x08, 0xD4, 0xE1, 0xC0, 0x01, 0x84, 0xE5, 0x00, 0x00, 0x91, 0xE5, 0x01, 0x0C, 0x80, 0xE2
.byte 0xB8, 0x3C, 0xC0, 0xE1, 0x00, 0x00, 0x91, 0xE5, 0xCC, 0x21, 0x80, 0xE5, 0x00, 0x20, 0x91, 0xE5
.byte 0xAE, 0x00, 0x82, 0xE2, 0x03, 0x0C, 0x80, 0xE2, 0x08, 0x02, 0x82, 0xE5, 0x00, 0x00, 0x91, 0xE5
.byte 0x03, 0x0C, 0x80, 0xE2, 0xFC, 0x08, 0xD0, 0xE1, 0x5C, 0xFC, 0xFF, 0xEB, 0x00, 0x00, 0x8D, 0xE5
.byte 0x08, 0x10, 0xA0, 0xE3, 0xF4, 0x02, 0x9F, 0xE5, 0x04, 0x10, 0x8D, 0xE5, 0x00, 0x10, 0x90, 0xE5
.byte 0xA8, 0x03, 0x9F, 0xE5, 0x07, 0x2D, 0x81, 0xE2, 0xA4, 0x13, 0x9F, 0xE5, 0xA4, 0x33, 0x9F, 0xE5
.byte 0xEE, 0x7F, 0xF2, 0xEB, 0xD4, 0x12, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x0B, 0x00, 0xC1, 0xE5
.byte 0xC8, 0x12, 0x9F, 0xE5, 0x00, 0x30, 0x91, 0xE5, 0x88, 0x00, 0x93, 0xE5, 0x02, 0x0A, 0x10, 0xE3
.byte 0x10, 0x00, 0x00, 0x0A, 0xDC, 0x20, 0xD3, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x52, 0xE1
.byte 0x0C, 0x00, 0x00, 0x1A, 0x01, 0x00, 0xA0, 0xE3, 0x58, 0x02, 0x83, 0xE5, 0x03, 0x00, 0xA0, 0xE3
.byte 0x00, 0x00, 0x8D, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x5C, 0x03, 0x9F, 0xE5, 0x5C, 0x33, 0x9F, 0xE5
.byte 0x96, 0x2F, 0x81, 0xE2, 0x33, 0x10, 0xA0, 0xE3, 0x8B, 0x7D, 0xF2, 0xEB, 0x7C, 0x12, 0x9F, 0xE5
.byte 0x00, 0x10, 0x91, 0xE5, 0x0C, 0x00, 0xC1, 0xE5, 0x70, 0x02, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5
.byte 0x88, 0x00, 0x91, 0xE5, 0x01, 0x09, 0x10, 0xE3, 0x0C, 0x00, 0x00, 0x0A, 0xDD, 0x10, 0xD1, 0xE1
.byte 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1, 0x07, 0x00, 0x00, 0x1A, 0x00, 0x10, 0xA0, 0xE3
.byte 0x01, 0x20, 0xA0, 0xE1, 0x06, 0x00, 0xA0, 0xE3, 0xA3, 0xD1, 0xF2, 0xEB, 0x3C, 0x12, 0x9F, 0xE5
.byte 0x00, 0x10, 0x91, 0xE5, 0x0D, 0x00, 0xC1, 0xE5, 0x00, 0x00, 0x00, 0xEA, 0x99, 0xD5, 0xF2, 0xEB
.byte 0x28, 0x12, 0x9F, 0xE5, 0x00, 0x30, 0x91, 0xE5, 0x88, 0x00, 0x93, 0xE5, 0x02, 0x09, 0x10, 0xE3
.byte 0x21, 0x00, 0x00, 0x0A, 0xDE, 0x20, 0xD3, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x52, 0xE1
.byte 0x1D, 0x00, 0x00, 0x1A, 0x00, 0x20, 0xA0, 0xE3, 0x9C, 0x23, 0xC3, 0xE5, 0x00, 0x00, 0x91, 0xE5
.byte 0x9D, 0x23, 0xC0, 0xE5, 0x00, 0x00, 0x91, 0xE5, 0x9E, 0x23, 0xC0, 0xE5, 0x50, 0xD5, 0xF2, 0xEB
.byte 0x04, 0x00, 0x50, 0xE3, 0xE4, 0x01, 0x9F, 0xA5, 0x03, 0x10, 0xA0, 0xA3, 0x00, 0x00, 0x90, 0xA5
.byte 0x01, 0x30, 0xA0, 0xE3, 0x9C, 0x13, 0xC0, 0xA5, 0xD0, 0x11, 0x9F, 0xE5, 0x03, 0x40, 0xA0, 0xE3
.byte 0x00, 0x20, 0x91, 0xE5, 0xE7, 0x0F, 0x82, 0xE2, 0x50, 0x03, 0x82, 0xE5, 0x00, 0x20, 0x91, 0xE5
.byte 0x8C, 0x02, 0x9F, 0xE5, 0xF0, 0x32, 0x82, 0xE5, 0x00, 0x40, 0x8D, 0xE5, 0x00, 0x20, 0x91, 0xE5
.byte 0x80, 0x32, 0x9F, 0xE5, 0x23, 0x1E, 0x84, 0xE2, 0x2F, 0x2E, 0x82, 0xE2, 0x52, 0x7D, 0xF2, 0xEB
.byte 0x98, 0x11, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x0E, 0x00, 0xC1, 0xE5, 0x8C, 0x01, 0x9F, 0xE5
.byte 0x00, 0x10, 0x90, 0xE5, 0x88, 0x00, 0x91, 0xE5, 0x01, 0x08, 0x10, 0xE3, 0x2C, 0x00, 0x00, 0x0A
.byte 0xDF, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1, 0x07, 0x00, 0x00, 0x1A
.byte 0x44, 0x02, 0x9F, 0xE5, 0x35, 0x8D, 0xF2, 0xEB, 0x60, 0x11, 0x9F, 0xE5, 0x00, 0x20, 0xE0, 0xE3
.byte 0x00, 0x30, 0x91, 0xE5, 0x0F, 0x00, 0xC3, 0xE5, 0x00, 0x00, 0x91, 0xE5, 0x84, 0x20, 0x80, 0xE5
.byte 0x48, 0x01, 0x9F, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0xDF, 0x00, 0xD0, 0xE1, 0xE8, 0x8D, 0xF2, 0xEB
.byte 0x38, 0x01, 0x9F, 0xE5, 0x00, 0x30, 0x90, 0xE5, 0x78, 0x00, 0x93, 0xE5, 0x12, 0x00, 0x50, 0xE3
.byte 0x05, 0x00, 0x00, 0xCA, 0x10, 0x00, 0x50, 0xE3, 0x0A, 0x00, 0x00, 0xBA, 0x11, 0x00, 0x50, 0x13
.byte 0x12, 0x00, 0x50, 0x13, 0x02, 0x00, 0x00, 0x0A, 0x06, 0x00, 0x00, 0xEA, 0x3C, 0x00, 0x50, 0xE3
.byte 0x04, 0x00, 0x00, 0xEA, 0x7F, 0x0F, 0xA0, 0xE3, 0x98, 0x01, 0x8D, 0xE5, 0xDC, 0x21, 0x9F, 0xE5
.byte 0xDC, 0x11, 0x9F, 0xE5, 0x01, 0x00, 0x00, 0xEA, 0x01, 0x2B, 0xA0, 0xE3, 0x08, 0x10, 0x82, 0xE2
.byte 0x84, 0x00, 0x93, 0xE5, 0x02, 0x00, 0x50, 0xE1, 0x05, 0x00, 0x00, 0x0A, 0xDC, 0x00, 0x9F, 0xE5
.byte 0x84, 0x20, 0x83, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x53, 0x3F, 0x8D, 0xE2, 0xDF, 0x00, 0xD0, 0xE1
.byte 0x4F, 0x8D, 0xF2, 0xEB, 0xC4, 0x00, 0x9F, 0xE5, 0x02, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5
.byte 0x7C, 0x10, 0x80, 0xE5, 0x1B, 0x00, 0x00, 0xEA, 0x88, 0x00, 0x94, 0xE5, 0x01, 0x00, 0x10, 0xE3
.byte 0x04, 0x00, 0x00, 0x0A, 0xD0, 0x00, 0xD4, 0xE1, 0x38, 0x8D, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3
.byte 0x00, 0x00, 0xA0, 0x13, 0x0A, 0x00, 0x00, 0x1A, 0x90, 0x00, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5
.byte 0x88, 0x00, 0x91, 0xE5, 0x01, 0x08, 0x10, 0xE3, 0x04, 0x00, 0x00, 0x0A, 0xDF, 0x00, 0xD1, 0xE1
.byte 0x2E, 0x8D, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3, 0x00, 0x00, 0xA0, 0x13, 0x00, 0x00, 0x00, 0x1A
.byte 0x01, 0x00, 0xA0, 0xE3, 0x00, 0x00, 0x50, 0xE3, 0x06, 0x00, 0x00, 0x0A, 0x5C, 0x00, 0x9F, 0xE5
.byte 0x00, 0x20, 0xA0, 0xE3, 0x00, 0x10, 0x90, 0xE5, 0x7C, 0x20, 0x81, 0xE5, 0x00, 0x10, 0x90, 0xE5
.byte 0x80, 0x00, 0x91, 0xE5, 0x78, 0x00, 0x81, 0xE5, 0x01, 0x00, 0xA0, 0xE3, 0x0D, 0x00, 0x00, 0xEA
.byte 0xC9, 0xF9, 0xFF, 0xEB, 0x00, 0x00, 0x50, 0xE3, 0x30, 0x00, 0x9F, 0x15, 0x02, 0x10, 0xA0, 0x13
.byte 0x00, 0x00, 0x90, 0x15, 0x74, 0x10, 0x80, 0x15, 0x05, 0x00, 0x00, 0xEA, 0x03, 0x00, 0xA0, 0xE3
.byte 0x74, 0x00, 0x84, 0xE5, 0x4F, 0x6C, 0xFD, 0xEB, 0xA9, 0xFC, 0xFF, 0xEB, 0x04, 0x00, 0xA0, 0xE3
.byte 0x00, 0x00, 0x00, 0xEA, 0x01, 0x00, 0xA0, 0xE3, 0x85, 0xDF, 0x8D, 0xE2, 0x78, 0x80, 0xBD, 0xE8
.byte 0x20, 0xD6, 0x38, 0x02, 0xC8, 0xD4, 0x38, 0x02, 0x08, 0x30, 0x00, 0x00, 0x10, 0xD3, 0x38, 0x02
.byte 0xFB, 0x03, 0x00, 0x00, 0xF9, 0x03, 0x00, 0x00, 0x18, 0x30, 0x00, 0x00, 0x0B, 0x04, 0x00, 0x00
.byte 0x0C, 0x04, 0x00, 0x00, 0x0D, 0x04, 0x00, 0x00, 0x0E, 0x04, 0x00, 0x00, 0x0F, 0x04, 0x00, 0x00
.byte 0xCC, 0x3F, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0xCD, 0x3F, 0x00, 0x00, 0x05, 0x04, 0x00, 0x00
.byte 0x06, 0x04, 0x00, 0x00, 0x07, 0x04, 0x00, 0x00, 0x09, 0x04, 0x00, 0x00, 0x0A, 0x04, 0x00, 0x00
.byte 0xFD, 0x03, 0x00, 0x00, 0xFE, 0x03, 0x00, 0x00, 0x1B, 0x13, 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00
.byte 0x01, 0x04, 0x00, 0x00, 0x03, 0x04, 0x00, 0x00, 0x02, 0x04, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00
.byte 0x70, 0xD2, 0x38, 0x02, 0x3C, 0xAF, 0x38, 0x02, 0xF0, 0xD2, 0x38, 0x02, 0x13, 0x00, 0x30, 0x00
.byte 0x78, 0xD3, 0x38, 0x02, 0xD0, 0xD2, 0x38, 0x02, 0x98, 0xD3, 0x38, 0x02, 0x80, 0xD2, 0x38, 0x02
.byte 0x33, 0x00, 0x30, 0x00, 0x20, 0xD3, 0x38, 0x02, 0xE0, 0xD2, 0x38, 0x02, 0xC0, 0xD3, 0x38, 0x02
.byte 0x38, 0xD4, 0x38, 0x02, 0xF0, 0xD3, 0x38, 0x02, 0x80, 0xD4, 0x38, 0x02, 0xB0, 0xD2, 0x38, 0x02
.byte 0x13, 0x02, 0x00, 0x80, 0x48, 0x0A, 0x0B, 0x02, 0xF8, 0xD5, 0x38, 0x02, 0x3E, 0x0A, 0x00, 0x00
.byte 0xC0, 0xD2, 0x38, 0x02, 0x33, 0x18, 0x40, 0x00, 0xF0, 0xAE, 0x38, 0x02, 0xA0, 0xD2, 0x38, 0x02
.byte 0x38, 0xD3, 0x38, 0x02, 0x90, 0xD2, 0x38, 0x02, 0x58, 0xD3, 0x38, 0x02, 0x00, 0xD3, 0x38, 0x02
.byte 0xFA, 0x03, 0x00, 0x00, 0x08, 0x34, 0x00, 0x00
arm_func_start ov18_0238BE28
ov18_0238BE28: ; 0x0238BE28
ldr r1, _0238BE44 ; =0x0238D620
mov r3, #3
ldr r2, [r1]
str r3, [r2, #0x7c]
ldr r1, [r1]
str r0, [r1, #0x80]
bx lr
.align 2, 0
_0238BE44: .word 0x0238D620
arm_func_end ov18_0238BE28
_0238BE48:
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3
.byte 0x00, 0x20, 0x90, 0xE5, 0x01, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5
.byte 0x0F, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x02, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238BE90
ov18_0238BE90: ; 0x0238BE90
stmdb sp!, {r3, lr}
ldr r0, _0238BF08 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #3]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _0238BF08 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #3]
bl GetNormalMenuResult
cmp r0, #6
addls pc, pc, r0, lsl #2
b _0238BEFC
_0238BEC8: ; jump table
b _0238BEFC ; case 0
b _0238BEFC ; case 1
b _0238BEFC ; case 2
b _0238BEE4 ; case 3
b _0238BEF0 ; case 4
b _0238BEFC ; case 5
b _0238BEFC ; case 6
_0238BEE4:
mov r0, #0x11
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238BEF0:
mov r0, #5
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238BEFC:
mov r0, #3
bl ov18_0238BE28
ldmia sp!, {r3, pc}
.align 2, 0
_0238BF08: .word 0x0238D620
arm_func_end ov18_0238BE90
_0238BF0C:
.byte 0x18, 0x00, 0x9F, 0xE5
.byte 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x04, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238BF30
ov18_0238BF30: ; 0x0238BF30
stmdb sp!, {r3, lr}
ldr r0, _0238BF5C ; =0x0238D620
mov r1, #0
ldr r0, [r0]
str r1, [r0, #0x88]
bl ov18_0238A2A0
ldr r0, _0238BF5C ; =0x0238D620
mov r1, #1
ldr r0, [r0]
str r1, [r0, #0x74]
ldmia sp!, {r3, pc}
.align 2, 0
_0238BF5C: .word 0x0238D620
arm_func_end ov18_0238BF30
_0238BF60:
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x06, 0x10, 0xA0, 0xE3
.byte 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
.byte 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x23, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5
.byte 0x07, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238BFA8
ov18_0238BFA8: ; 0x0238BFA8
stmdb sp!, {r3, lr}
ldr r0, _0238C038 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #4]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _0238C038 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #4]
bl GetNormalMenuResult
cmp r0, #8
bgt _0238BFFC
cmp r0, #2
blt _0238C02C
beq _0238C02C
cmp r0, #7
beq _0238C008
cmp r0, #8
beq _0238C014
b _0238C02C
_0238BFFC:
cmp r0, #0xd
beq _0238C020
b _0238C02C
_0238C008:
mov r0, #8
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238C014:
mov r0, #0xa
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238C020:
mov r0, #0xe
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238C02C:
mov r0, #0
bl ov18_0238BE28
ldmia sp!, {r3, pc}
.align 2, 0
_0238C038: .word 0x0238D620
arm_func_end ov18_0238BFA8
_0238C03C:
.byte 0x18, 0x00, 0x9F, 0xE5
.byte 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x09, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
.byte 0x0C, 0x00, 0x9F, 0xE5, 0x05, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3
.byte 0x00, 0x20, 0x90, 0xE5, 0x0C, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5
.byte 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x0D, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
.byte 0x0C, 0x00, 0x9F, 0xE5, 0x05, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3
.byte 0x00, 0x20, 0x90, 0xE5, 0x0F, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x0C, 0x00, 0x9F, 0xE5
.byte 0x05, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
.byte 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x18, 0x30, 0x9F, 0xE5, 0x00, 0x20, 0x90, 0xE5
.byte 0x11, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x02, 0x00, 0x01, 0x00, 0x18, 0x00, 0x9F, 0xE5
.byte 0x18, 0x30, 0x9F, 0xE5, 0x00, 0x20, 0x90, 0xE5, 0x12, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
.byte 0x80, 0x00, 0x01, 0x00
arm_func_start ov18_0238C164
ov18_0238C164: ; 0x0238C164
stmdb sp!, {r3, lr}
bl sub_0203A5A8
cmp r0, #0
beq _0238C1CC
bl sub_0203A9EC
cmp r0, #0
ldmeqia sp!, {r3, pc}
add r1, sp, #0
mov r0, #0
bl GetPressedButtons
ldrh r0, [sp]
tst r0, #8
ldmeqia sp!, {r3, pc}
mov r0, #0
bl sub_02017CCC
bl sub_0203AAB0
ldr r1, _0238C218 ; =0x0238D620
ldr r1, [r1]
add r1, r1, #0x300
strh r0, [r1, #0x8c]
bl sub_0203A5F0
ldr r0, _0238C218 ; =0x0238D620
mov r1, #0x17
ldr r0, [r0]
str r1, [r0, #0x80]
ldmia sp!, {r3, pc}
_0238C1CC:
bl sub_0203AA20
mvn r1, #0
cmp r0, r1
bne _0238C1EC
bl sub_0203A51C
mov r0, #0
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238C1EC:
ldr r2, _0238C218 ; =0x0238D620
ldr r1, [r2]
add r1, r1, #0x300
strh r0, [r1, #0x8c]
ldr r0, [r2]
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl sub_0203FA64
mov r0, #0x15
bl ov18_0238BE28
ldmia sp!, {r3, pc}
.align 2, 0
_0238C218: .word 0x0238D620
arm_func_end ov18_0238C164
_0238C21C:
.byte 0x18, 0x00, 0x9F, 0xE5
.byte 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x14, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
.byte 0x0C, 0x00, 0x9F, 0xE5, 0x11, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x90, 0x30, 0xA0, 0xE3
.byte 0x00, 0x20, 0x90, 0xE5, 0x16, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238C27C
ov18_0238C27C: ; 0x0238C27C
stmdb sp!, {r3, lr}
ldr r0, _0238C33C ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #5]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _0238C33C ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #5]
bl GetNormalMenuResult
sub r0, r0, #5
cmp r0, #0xb
addls pc, pc, r0, lsl #2
b _0238C2F4
_0238C2B8: ; jump table
b _0238C32C ; case 0
b _0238C32C ; case 1
b _0238C2F4 ; case 2
b _0238C2F4 ; case 3
b _0238C2F4 ; case 4
b _0238C2F4 ; case 5
b _0238C2F4 ; case 6
b _0238C2F4 ; case 7
b _0238C320 ; case 8
b _0238C2F4 ; case 9
b _0238C2E8 ; case 10
b _0238C300 ; case 11
_0238C2E8:
mov r0, #0x17
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238C2F4:
mov r0, #0x19
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238C300:
ldr r0, _0238C33C ; =0x0238D620
mov r3, #0
ldr r2, [r0]
mov r1, #0x1b
str r3, [r2, #0x88]
ldr r0, [r0]
str r1, [r0, #0x80]
ldmia sp!, {r3, pc}
_0238C320:
mov r0, #0x2e
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238C32C:
bl sub_0203A638
mov r0, #0x11
bl ov18_0238BE28
ldmia sp!, {r3, pc}
.align 2, 0
_0238C33C: .word 0x0238D620
arm_func_end ov18_0238C27C
_0238C340:
.byte 0x18, 0x00, 0x9F, 0xE5, 0x01, 0x3C, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x18, 0x10, 0xA0, 0xE3
.byte 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
.byte 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238C364
ov18_0238C364: ; 0x0238C364
stmdb sp!, {r3, lr}
bl sub_0203F398
cmp r0, #1
ldmneia sp!, {r3, pc}
bl sub_0203F990
ldr r0, _0238C394 ; =0x0238D620
mvn r2, #1
ldr r1, [r0]
mov r0, #0x11
strb r2, [r1, #7]
bl ov18_0238BE28
ldmia sp!, {r3, pc}
.align 2, 0
_0238C394: .word 0x0238D620
arm_func_end ov18_0238C364
_0238C398:
.byte 0x18, 0x00, 0x9F, 0xE5, 0x18, 0x30, 0x9F, 0xE5
.byte 0x00, 0x20, 0x90, 0xE5, 0x1A, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x01, 0x02, 0x00, 0x00
arm_func_start ov18_0238C3C0
ov18_0238C3C0: ; 0x0238C3C0
stmdb sp!, {r4, lr}
bl sub_020407EC
movs r4, r0
beq _0238C3E4
ldr r0, _0238C424 ; =0x0238D620
ldr r0, [r0]
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl sub_0203FD80
_0238C3E4:
cmp r4, #1
beq _0238C40C
cmp r4, #2
beq _0238C400
cmp r4, #7
beq _0238C418
ldmia sp!, {r4, pc}
_0238C400:
mov r0, #0x1f
bl ov18_0238BE28
ldmia sp!, {r4, pc}
_0238C40C:
mov r0, #0x11
bl ov18_0238BE28
ldmia sp!, {r4, pc}
_0238C418:
mov r0, #0x1d
bl ov18_0238BE28
ldmia sp!, {r4, pc}
.align 2, 0
_0238C424: .word 0x0238D620
arm_func_end ov18_0238C3C0
arm_func_start ov18_0238C428
ov18_0238C428: ; 0x0238C428
stmdb sp!, {r3, lr}
ldr r1, _0238C474 ; =0x0238D620
ldr r0, _0238C478 ; =0x020B0A48
ldr r2, [r1]
ldr r1, [r0]
add r0, r2, #0x300
ldrsh r2, [r0, #0x8c]
mov r0, #0x44
mov r3, #0
smlabb r1, r2, r0, r1
ldrsh r0, [r1, #4]
ldrsh r2, [r1, #8]
add r1, r1, #0x14
bl PrintIqSkillsMenu
ldr r0, _0238C474 ; =0x0238D620
mov r1, #0x1c
ldr r0, [r0]
str r1, [r0, #0x80]
ldmia sp!, {r3, pc}
.align 2, 0
_0238C474: .word 0x0238D620
_0238C478: .word 0x020B0A48
arm_func_end ov18_0238C428
_0238C47C:
.byte 0x08, 0x40, 0x2D, 0xE9
.byte 0xBD, 0xD5, 0xF2, 0xEB, 0x01, 0x00, 0x50, 0xE3, 0x08, 0x80, 0xBD, 0x18, 0x18, 0xD7, 0xF2, 0xEB
.byte 0x95, 0x2B, 0xF3, 0xEB, 0x11, 0x00, 0xA0, 0xE3, 0x62, 0xFE, 0xFF, 0xEB, 0x08, 0x80, 0xBD, 0xE8
arm_func_start ov18_0238C4A0
ov18_0238C4A0: ; 0x0238C4A0
stmdb sp!, {r3, lr}
bl sub_0203FD38
ldr r1, _0238C4E4 ; =0x0238D620
ldr r1, [r1]
str r0, [r1, #0x3a0]
bl sub_02041094
ldr r2, _0238C4E4 ; =0x0238D620
mov ip, #0x400
ldr r1, [r2]
mov r3, #0x1e
add r1, r1, #0x300
strh r0, [r1, #0xa4]
ldr r0, [r2]
str ip, [r0, #0x88]
ldr r0, [r2]
str r3, [r0, #0x80]
ldmia sp!, {r3, pc}
.align 2, 0
_0238C4E4: .word 0x0238D620
arm_func_end ov18_0238C4A0
_0238C4E8:
.byte 0x08, 0x40, 0x2D, 0xE9, 0x49, 0xD5, 0xF2, 0xEB
.byte 0x00, 0x00, 0x50, 0xE3, 0x08, 0x80, 0xBD, 0x08, 0x19, 0x00, 0xA0, 0xE3, 0x49, 0xFE, 0xFF, 0xEB
.byte 0x08, 0x80, 0xBD, 0xE8, 0x18, 0x00, 0x9F, 0xE5, 0x0A, 0x3C, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5
.byte 0x20, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238C528
ov18_0238C528: ; 0x0238C528
stmdb sp!, {r3, r4, r5, lr}
ldr r0, _0238C714 ; =0x0238D620
mov r4, #0
ldr r0, [r0]
ldrsb r0, [r0, #0xa]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
bl sub_02041094
ldr r1, _0238C714 ; =0x0238D620
mov r5, r0
ldr r0, [r1]
ldrsb r0, [r0, #0xa]
bl GetNormalMenuResult
sub r1, r0, #4
cmp r1, #0xe
addls pc, pc, r1, lsl #2
b _0238C6D0
_0238C570: ; jump table
b _0238C6BC ; case 0
b _0238C6D0 ; case 1
b _0238C6D0 ; case 2
b _0238C5AC ; case 3
b _0238C5C8 ; case 4
b _0238C638 ; case 5
b _0238C6A8 ; case 6
b _0238C5AC ; case 7
b _0238C5AC ; case 8
b _0238C6D0 ; case 9
b _0238C6D0 ; case 10
b _0238C6D0 ; case 11
b _0238C6D0 ; case 12
b _0238C670 ; case 13
b _0238C68C ; case 14
_0238C5AC:
ldr r0, _0238C718 ; =0x00003F07
mov r1, #0x100
bl sub_02017C74
mov r0, r5
mov r4, #1
bl sub_02041000
b _0238C6E4
_0238C5C8:
mov r4, #1
bl GetGold
cmp r0, #0x1f4
bge _0238C5EC
mov r0, #0
bl sub_02017CCC
mov r0, #0x13
bl ov18_0238BE28
ldmia sp!, {r3, r4, r5, pc}
_0238C5EC:
mov r0, r5
bl sub_02041194
cmp r0, #0
beq _0238C62C
bl sub_02041414
cmp r0, #0
bne _0238C614
ldr r0, _0238C71C ; =0x00001308
bl sub_02017C80
b _0238C620
_0238C614:
ldr r0, _0238C718 ; =0x00003F07
mov r1, #0x100
bl sub_02017C74
_0238C620:
mov r0, r5
bl sub_020412B0
b _0238C6E4
_0238C62C:
mov r0, #2
bl sub_02017CCC
b _0238C6E4
_0238C638:
mov r0, r5
mov r4, #1
bl sub_02041364
cmp r0, #0
beq _0238C664
ldr r0, _0238C718 ; =0x00003F07
mov r1, #0x100
bl sub_02017C74
mov r0, r5
bl sub_02041394
b _0238C6E4
_0238C664:
mov r0, #2
bl sub_02017CCC
b _0238C6E4
_0238C670:
mov r0, r4
bl sub_02017CCC
mov r0, r5
bl sub_020416BC
bl sub_020410A4
mov r4, #1
b _0238C6E4
_0238C68C:
mov r0, r4
bl sub_02017CCC
mov r0, r5
bl sub_020416DC
bl sub_020410A4
mov r4, #1
b _0238C6E4
_0238C6A8:
ldr r0, _0238C718 ; =0x00003F07
bl sub_02017C80
mov r0, #0x21
bl ov18_0238BE28
b _0238C6E4
_0238C6BC:
mov r0, r4
bl sub_02017CCC
mov r0, #0x1d
bl ov18_0238BE28
b _0238C6E4
_0238C6D0:
cmp r0, #6
beq _0238C6E0
mov r0, #1
bl sub_02017CCC
_0238C6E0:
mov r4, #1
_0238C6E4:
cmp r4, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, _0238C714 ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
ldrsb r0, [r0, #8]
cmp r0, r1
beq _0238C708
bl sub_020307EC
_0238C708:
mov r0, #0x19
bl ov18_0238BE28
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
_0238C714: .word 0x0238D620
_0238C718: .word 0x00003F07
_0238C71C: .word 0x00001308
arm_func_end ov18_0238C528
arm_func_start ov18_0238C720
ov18_0238C720: ; 0x0238C720
stmdb sp!, {r4, lr}
bl sub_02041094
mov r4, r0
bl sub_02041154
ldr r1, _0238C788 ; =0x0238D620
cmp r4, #0
ldr r1, [r1]
str r0, [r1, #0x24]
bne _0238C760
mov r0, r4
bl sub_02041424
cmp r0, #0
bne _0238C760
mov r0, #0x22
bl ov18_0238BE28
ldmia sp!, {r4, pc}
_0238C760:
mov r0, r4
bl sub_02041364
cmp r0, #0
beq _0238C77C
mov r0, #0x24
bl ov18_0238BE28
ldmia sp!, {r4, pc}
_0238C77C:
mov r0, #0x27
bl ov18_0238BE28
ldmia sp!, {r4, pc}
.align 2, 0
_0238C788: .word 0x0238D620
arm_func_end ov18_0238C720
_0238C78C:
.byte 0x18, 0x00, 0x9F, 0xE5
.byte 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x23, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
.byte 0x04, 0xC0, 0x9F, 0xE5, 0x19, 0x00, 0xA0, 0xE3, 0x1C, 0xFF, 0x2F, 0xE1, 0x28, 0xBE, 0x38, 0x02
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x25, 0x10, 0xA0, 0xE3
.byte 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
.byte 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x43, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5
.byte 0x26, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238C808
ov18_0238C808: ; 0x0238C808
stmdb sp!, {r4, lr}
ldr r0, _0238C884 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #6]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r4, pc}
bl sub_02041094
ldr r1, _0238C884 ; =0x0238D620
mov r4, r0
ldr r0, [r1]
ldrsb r0, [r0, #6]
bl GetNormalMenuResult
cmp r0, #0
beq _0238C850
cmp r0, #1
beq _0238C878
ldmia sp!, {r4, pc}
_0238C850:
mov r0, r4
bl sub_02041484
ldr r0, _0238C884 ; =0x0238D620
ldr r0, [r0]
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl sub_0203FD80
mov r0, #0x2a
bl ov18_0238BE28
ldmia sp!, {r4, pc}
_0238C878:
mov r0, #0x19
bl ov18_0238BE28
ldmia sp!, {r4, pc}
.align 2, 0
_0238C884: .word 0x0238D620
arm_func_end ov18_0238C808
_0238C888:
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3
.byte 0x00, 0x20, 0x90, 0xE5, 0x28, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5
.byte 0x43, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x29, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238C8D0
ov18_0238C8D0: ; 0x0238C8D0
stmdb sp!, {r4, lr}
ldr r0, _0238C94C ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #6]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r4, pc}
bl sub_02041094
ldr r1, _0238C94C ; =0x0238D620
mov r4, r0
ldr r0, [r1]
ldrsb r0, [r0, #6]
bl GetNormalMenuResult
cmp r0, #0
beq _0238C918
cmp r0, #1
beq _0238C940
ldmia sp!, {r4, pc}
_0238C918:
mov r0, r4
bl sub_02041484
ldr r0, _0238C94C ; =0x0238D620
ldr r0, [r0]
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl sub_0203FD80
mov r0, #0x2c
bl ov18_0238BE28
ldmia sp!, {r4, pc}
_0238C940:
mov r0, #0x19
bl ov18_0238BE28
ldmia sp!, {r4, pc}
.align 2, 0
_0238C94C: .word 0x0238D620
arm_func_end ov18_0238C8D0
_0238C950:
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x2B, 0x10, 0xA0, 0xE3
.byte 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
.byte 0x20, 0xD6, 0x38, 0x02, 0x04, 0xC0, 0x9F, 0xE5, 0x19, 0x00, 0xA0, 0xE3, 0x1C, 0xFF, 0x2F, 0xE1
.byte 0x28, 0xBE, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5
.byte 0x2D, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x04, 0xC0, 0x9F, 0xE5, 0x19, 0x00, 0xA0, 0xE3
.byte 0x1C, 0xFF, 0x2F, 0xE1, 0x28, 0xBE, 0x38, 0x02
arm_func_start ov18_0238C9B8
ov18_0238C9B8: ; 0x0238C9B8
stmdb sp!, {r3, lr}
bl sub_0204159C
cmp r0, #0
ldreq r0, _0238CA14 ; =0x0238D620
moveq r1, #0x2f
ldreq r0, [r0]
streq r1, [r0, #0x80]
ldmeqia sp!, {r3, pc}
ldr r0, _0238CA14 ; =0x0238D620
ldr r0, [r0]
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl ov18_0238ABB0
cmp r0, #0
ldrle r0, _0238CA14 ; =0x0238D620
movle r1, #0x31
ldrle r0, [r0]
strle r1, [r0, #0x80]
ldrgt r0, _0238CA14 ; =0x0238D620
movgt r1, #0x33
ldrgt r0, [r0]
strgt r1, [r0, #0x80]
ldmia sp!, {r3, pc}
.align 2, 0
_0238CA14: .word 0x0238D620
arm_func_end ov18_0238C9B8
_0238CA18:
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3
.byte 0x00, 0x20, 0x90, 0xE5, 0x30, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x04, 0xC0, 0x9F, 0xE5
.byte 0x11, 0x00, 0xA0, 0xE3, 0x1C, 0xFF, 0x2F, 0xE1, 0x28, 0xBE, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5
.byte 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x32, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
.byte 0x04, 0xC0, 0x9F, 0xE5, 0x11, 0x00, 0xA0, 0xE3, 0x1C, 0xFF, 0x2F, 0xE1, 0x28, 0xBE, 0x38, 0x02
.byte 0x24, 0x00, 0x9F, 0xE5, 0x03, 0x20, 0xA0, 0xE3, 0x00, 0x10, 0x90, 0xE5, 0x00, 0x30, 0xA0, 0xE3
.byte 0x88, 0x20, 0x81, 0xE5, 0x00, 0x20, 0x90, 0xE5, 0x34, 0x10, 0xA0, 0xE3, 0xBC, 0x38, 0xC2, 0xE1
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
.byte 0x18, 0x00, 0x9F, 0xE5, 0x01, 0x3A, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x35, 0x10, 0xA0, 0xE3
.byte 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
.byte 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238CAD4
ov18_0238CAD4: ; 0x0238CAD4
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
add r1, sp, #0
mov r0, #0
bl GetPressedButtons
ldr r0, _0238CBD8 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xb]
bl GetAdvancedMenuCurrentOption
ldr r1, _0238CBD8 ; =0x0238D620
ldr r2, [r1]
strh r0, [r2, #0x8c]
ldrh r0, [sp]
tst r0, #8
beq _0238CB8C
ldr r1, [r1]
ldrsb r0, [r1, #0xb]
ldrsh r4, [r1, #0x8c]
bl sub_0202C1E4
ldr r0, _0238CBD8 ; =0x0238D620
mov r1, r4
ldr r0, [r0]
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl ov18_0238ADA8
ldr r2, _0238CBD8 ; =0x0238D620
mov lr, #0
ldr r1, [r2]
mov ip, #1
str lr, [r1, #0x3a0]
ldr r1, [r2]
mov r3, #0x38
add r1, r1, #0x300
strh r0, [r1, #0xaa]
ldr r0, [r2]
strb ip, [r0, #0x3a6]
ldr r0, [r2]
add r0, r0, #0x300
strh lr, [r0, #0xa8]
ldr r0, [r2]
strb ip, [r0, #0x3ac]
ldr r0, [r2]
strb lr, [r0, #0x3ad]
ldr r0, [r2]
str r3, [r0, #0x80]
b _0238CBD0
_0238CB8C:
ldr r0, [r1]
ldrsb r0, [r0, #0xb]
bl sub_0202BCBC
cmp r0, #0
bne _0238CBD0
ldr r0, _0238CBD8 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xb]
bl GetAdvancedMenuResult
mvn r1, #0
cmp r0, r1
bne _0238CBC8
mov r0, #0x11
bl ov18_0238BE28
b _0238CBD0
_0238CBC8:
mov r0, #0x36
bl ov18_0238BE28
_0238CBD0:
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
.align 2, 0
_0238CBD8: .word 0x0238D620
arm_func_end ov18_0238CAD4
_0238CBDC:
.byte 0x18, 0x00, 0x9F, 0xE5
.byte 0x03, 0x3A, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x37, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238CC00
ov18_0238CC00: ; 0x0238CC00
stmdb sp!, {r4, lr}
ldr r0, _0238CD84 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xb]
bl GetAdvancedMenuResult
ldr r1, _0238CD84 ; =0x0238D620
mov r4, r0
ldr r0, [r1]
ldrsb r0, [r0, #0xc]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r0, _0238CD84 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xc]
bl GetNormalMenuResult
sub r0, r0, #4
cmp r0, #9
addls pc, pc, r0, lsl #2
b _0238CD5C
_0238CC50: ; jump table
b ov18_0238CCF0 ; case 0
b _0238CD5C ; case 1
b _0238CD5C ; case 2
b _0238CD5C ; case 3
b _0238CD5C ; case 4
b _0238CD5C ; case 5
b _0238CD5C ; case 6
b _0238CD5C ; case 7
b _0238CD5C ; case 8
b _0238CC78 ; case 9
_0238CC78:
ldr r1, _0238CD84 ; =0x0238D620
mov r0, r4, lsl #0x10
ldr r2, [r1]
mov r1, r0, asr #0x10
add r0, r2, #0x300
ldrsh r0, [r0, #0x8c]
bl ov18_0238ADA8
arm_func_end ov18_0238CC00
arm_func_start ov18_0238CC94
ov18_0238CC94: ; 0x0238CC94
ldr r1, _0238CD84 ; =0x0238D620
mov r4, r0
ldr r0, [r1]
str r4, [r0, #0x24]
bl sub_020415BC
arm_func_end ov18_0238CC94
arm_func_start ov18_0238CCA8
ov18_0238CCA8: ; 0x0238CCA8
cmp r0, #0
mov r0, r4
beq _0238CCCC
bl sub_0203FD14
ldr r0, _0238CD84 ; =0x0238D620
arm_func_end ov18_0238CCA8
arm_func_start ov18_0238CCBC
ov18_0238CCBC: ; 0x0238CCBC
mov r1, #0x3c
ldr r0, [r0]
str r1, [r0, #0x80]
ldmia sp!, {r4, pc}
_0238CCCC:
bl sub_02041614
ldr r0, _0238CD84 ; =0x0238D620
ldr r0, [r0]
arm_func_end ov18_0238CCBC
arm_func_start ov18_0238CCD8
ov18_0238CCD8: ; 0x0238CCD8
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl sub_0203FD80
mov r0, #0x3a
bl ov18_0238BE28
ldmia sp!, {r4, pc}
arm_func_end ov18_0238CCD8
ov18_0238CCF0:
ldr r1, _0238CD84 ; =0x0238D620
mov r0, r4, lsl #0x10
ldr r2, [r1]
mov r1, r0, asr #0x10
add r0, r2, #0x300
ldrsh r0, [r0, #0x8c]
bl ov18_0238ADA8
ldr r2, _0238CD84 ; =0x0238D620
mov r4, #0
ldr r1, [r2]
mov r3, #1
str r4, [r1, #0x3a0]
ldr r1, [r2]
add r1, r1, #0x300
strh r0, [r1, #0xaa]
ldr r1, [r2]
mov r0, #0x38
strb r3, [r1, #0x3a6]
ldr r1, [r2]
add r1, r1, #0x300
strh r4, [r1, #0xa8]
ldr r1, [r2]
strb r3, [r1, #0x3ac]
ldr r1, [r2]
strb r4, [r1, #0x3ad]
bl ov18_0238BE28
ldmia sp!, {r4, pc}
_0238CD5C:
ldr r0, _0238CD84 ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
ldrsb r0, [r0, #0xb]
cmp r0, r1
beq _0238CD78
bl sub_0202BBF0
_0238CD78:
mov r0, #0x34
bl ov18_0238BE28
ldmia sp!, {r4, pc}
.align 2, 0
_0238CD84: .word 0x0238D620
_0238CD88:
.byte 0x18, 0x00, 0x9F, 0xE5, 0x01, 0x3B, 0xA0, 0xE3
.byte 0x00, 0x20, 0x90, 0xE5, 0x39, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x08, 0x40, 0x2D, 0xE9
.byte 0x18, 0xD3, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3, 0x08, 0x80, 0xBD, 0x08, 0x34, 0x00, 0xA0, 0xE3
.byte 0x18, 0xFC, 0xFF, 0xEB, 0x08, 0x80, 0xBD, 0xE8, 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3
.byte 0x00, 0x20, 0x90, 0xE5, 0x3B, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5
.byte 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x04, 0xC0, 0x9F, 0xE5
.byte 0x11, 0x00, 0xA0, 0xE3, 0x1C, 0xFF, 0x2F, 0xE1, 0x28, 0xBE, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5
.byte 0x05, 0x39, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x3D, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238CE20
ov18_0238CE20: ; 0x0238CE20
stmdb sp!, {r4, lr}
bl sub_020407EC
movs r4, r0
beq _0238CE44
ldr r0, _0238CE84 ; =0x0238D620
ldr r0, [r0]
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl sub_0203FD80
_0238CE44:
cmp r4, #1
beq _0238CE6C
cmp r4, #2
beq _0238CE60
cmp r4, #7
beq _0238CE78
ldmia sp!, {r4, pc}
_0238CE60:
mov r0, #0x3e
bl ov18_0238BE28
ldmia sp!, {r4, pc}
_0238CE6C:
mov r0, #0x11
bl ov18_0238BE28
ldmia sp!, {r4, pc}
_0238CE78:
mov r0, #0x40
bl ov18_0238BE28
ldmia sp!, {r4, pc}
.align 2, 0
_0238CE84: .word 0x0238D620
arm_func_end ov18_0238CE20
arm_func_start ov18_0238CE88
ov18_0238CE88: ; 0x0238CE88
stmdb sp!, {r3, lr}
ldr r0, _0238CED4 ; =0x0238D620
mov r1, #0xc000
ldr r0, [r0]
str r1, [r0, #0x88]
bl sub_02041094
bl sub_02041154
ldr r1, _0238CED4 ; =0x0238D620
ldr r1, [r1]
str r0, [r1, #0x24]
mov r0, #4
bl sub_02041154
ldr r1, _0238CED4 ; =0x0238D620
mov r2, #0x3f
ldr r3, [r1]
str r0, [r3, #0x28]
ldr r0, [r1]
str r2, [r0, #0x80]
ldmia sp!, {r3, pc}
.align 2, 0
_0238CED4: .word 0x0238D620
arm_func_end ov18_0238CE88
arm_func_start ov18_0238CED8
ov18_0238CED8: ; 0x0238CED8
stmdb sp!, {r3, lr}
bl sub_02041094
ldr r0, _0238CF94 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xe]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r3, pc}
bl sub_0203FD38
ldr r0, _0238CF94 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #0xe]
bl GetNormalMenuResult
sub r0, r0, #4
cmp r0, #6
addls pc, pc, r0, lsl #2
b _0238CF6C
_0238CF1C: ; jump table
b _0238CF60 ; case 0
b _0238CF6C ; case 1
b _0238CF6C ; case 2
b _0238CF6C ; case 3
b _0238CF6C ; case 4
b _0238CF6C ; case 5
b _0238CF38 ; case 6
_0238CF38:
bl sub_02041094
bl sub_02041364
cmp r0, #0
beq _0238CF54
mov r0, #0x42
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238CF54:
mov r0, #0x45
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238CF60:
mov r0, #0x40
bl ov18_0238BE28
ldmia sp!, {r3, pc}
_0238CF6C:
ldr r0, _0238CF94 ; =0x0238D620
mvn r1, #1
ldr r0, [r0]
ldrsb r0, [r0, #0xb]
cmp r0, r1
beq _0238CF88
bl sub_0202BBF0
_0238CF88:
mov r0, #0x3c
bl ov18_0238BE28
ldmia sp!, {r3, pc}
.align 2, 0
_0238CF94: .word 0x0238D620
arm_func_end ov18_0238CED8
arm_func_start ov18_0238CF98
ov18_0238CF98: ; 0x0238CF98
stmdb sp!, {r4, lr}
bl sub_0203FD38
mov r4, r0
bl sub_02041094
cmp r0, #4
blt _0238CFF0
bl sub_0203FD2C
ldr r2, _0238D030 ; =0x0238D620
mov r1, r0
ldr r0, [r2]
mov r2, #8
add r0, r0, #0xa6
add r0, r0, #0x300
bl Memcpy
ldr r0, _0238D030 ; =0x0238D620
mov r2, #0
ldr r1, [r0]
str r2, [r1, #0x3a0]
ldr r0, [r0]
add r0, r0, #0x300
strh r2, [r0, #0xa4]
b _0238D010
_0238CFF0:
ldr r0, _0238D030 ; =0x0238D620
ldr r0, [r0]
str r4, [r0, #0x3a0]
bl sub_02041094
ldr r1, _0238D030 ; =0x0238D620
ldr r1, [r1]
add r1, r1, #0x300
strh r0, [r1, #0xa4]
_0238D010:
ldr r0, _0238D030 ; =0x0238D620
mov r3, #0x400
ldr r2, [r0]
mov r1, #0x41
str r3, [r2, #0x88]
ldr r0, [r0]
str r1, [r0, #0x80]
ldmia sp!, {r4, pc}
.align 2, 0
_0238D030: .word 0x0238D620
arm_func_end ov18_0238CF98
_0238D034:
.byte 0x08, 0x40, 0x2D, 0xE9, 0x76, 0xD2, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3
.byte 0x08, 0x80, 0xBD, 0x08, 0x3C, 0x00, 0xA0, 0xE3, 0x76, 0xFB, 0xFF, 0xEB, 0x08, 0x80, 0xBD, 0xE8
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x43, 0x10, 0xA0, 0xE3
.byte 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
.byte 0x20, 0xD6, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x43, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5
.byte 0x44, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238D098
ov18_0238D098: ; 0x0238D098
stmdb sp!, {r4, lr}
ldr r0, _0238D128 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #6]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r4, pc}
bl sub_02041094
ldr r1, _0238D128 ; =0x0238D620
mov r4, r0
ldr r0, [r1]
ldrsb r0, [r0, #6]
bl GetNormalMenuResult
cmp r0, #0
beq _0238D0E0
cmp r0, #1
beq _0238D11C
ldmia sp!, {r4, pc}
_0238D0E0:
mov r0, r4
bl sub_02041484
bl sub_0203FD2C
ldrh r0, [r0, #4]
bl sub_02041614
ldr r0, _0238D128 ; =0x0238D620
ldr r0, [r0]
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl sub_0203FD80
ldr r0, _0238D128 ; =0x0238D620
mov r1, #0x48
ldr r0, [r0]
str r1, [r0, #0x80]
ldmia sp!, {r4, pc}
_0238D11C:
mov r0, #0x3c
bl ov18_0238BE28
ldmia sp!, {r4, pc}
.align 2, 0
_0238D128: .word 0x0238D620
arm_func_end ov18_0238D098
_0238D12C:
.byte 0x18, 0x00, 0x9F, 0xE5
.byte 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x46, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5
.byte 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02
.byte 0x18, 0x00, 0x9F, 0xE5, 0x43, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x47, 0x10, 0xA0, 0xE3
.byte 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
.byte 0x20, 0xD6, 0x38, 0x02
arm_func_start ov18_0238D174
ov18_0238D174: ; 0x0238D174
stmdb sp!, {r4, lr}
ldr r0, _0238D204 ; =0x0238D620
ldr r0, [r0]
ldrsb r0, [r0, #6]
bl IsNormalMenuActive
cmp r0, #0
ldmneia sp!, {r4, pc}
bl sub_02041094
ldr r1, _0238D204 ; =0x0238D620
mov r4, r0
ldr r0, [r1]
ldrsb r0, [r0, #6]
bl GetNormalMenuResult
cmp r0, #0
beq _0238D1BC
cmp r0, #1
beq _0238D1F8
ldmia sp!, {r4, pc}
_0238D1BC:
mov r0, r4
bl sub_02041484
bl sub_0203FD2C
ldrh r0, [r0, #4]
bl sub_02041614
ldr r0, _0238D204 ; =0x0238D620
ldr r0, [r0]
add r0, r0, #0x300
ldrsh r0, [r0, #0x8c]
bl sub_0203FD80
ldr r0, _0238D204 ; =0x0238D620
mov r1, #0x4a
ldr r0, [r0]
str r1, [r0, #0x80]
ldmia sp!, {r4, pc}
_0238D1F8:
mov r0, #0x3c
bl ov18_0238BE28
ldmia sp!, {r4, pc}
.align 2, 0
_0238D204: .word 0x0238D620
arm_func_end ov18_0238D174
; 0x0238D208
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x49, 0x10, 0xA0, 0xE3
.byte 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
.byte 0x20, 0xD6, 0x38, 0x02, 0x04, 0xC0, 0x9F, 0xE5, 0x11, 0x00, 0xA0, 0xE3, 0x1C, 0xFF, 0x2F, 0xE1
.byte 0x28, 0xBE, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5
.byte 0x4B, 0x10, 0xA0, 0xE3, 0x88, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x80, 0x10, 0x80, 0xE5
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x20, 0xD6, 0x38, 0x02, 0x04, 0xC0, 0x9F, 0xE5, 0x11, 0x00, 0xA0, 0xE3
.byte 0x1C, 0xFF, 0x2F, 0xE1, 0x28, 0xBE, 0x38, 0x02, 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x04
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x08, 0x00
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x00
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x00
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x00
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x12, 0x00
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x0B, 0x00
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x02, 0x0B, 0x00
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x00, 0x00
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x12, 0x1C, 0x04
.byte 0x00, 0xFD, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x11, 0x1C, 0x05
.byte 0x00, 0xFD, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE7, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE8, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
.byte 0xF3, 0x03, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0xEB, 0x03, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
.byte 0xEC, 0x03, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00
.byte 0xF0, 0x03, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0xEB, 0x03, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
.byte 0xEC, 0x03, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00
.byte 0xEA, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xEB, 0x03, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
.byte 0xEC, 0x03, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00
.byte 0xED, 0x03, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0xEE, 0x03, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00
.byte 0xF3, 0x03, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0xE9, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xF4, 0x03, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00
.byte 0xF5, 0x03, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xF6, 0x03, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00
.byte 0xF3, 0x03, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0xEC, 0x03, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0xED, 0x03, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00
.byte 0xEE, 0x03, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0xEF, 0x03, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00
.byte 0x3F, 0x0A, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x40, 0x0A, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00
.byte 0xF0, 0x03, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0xEB, 0x03, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
.byte 0xEC, 0x03, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00
.byte 0xF1, 0x03, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0xEE, 0x03, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00
.byte 0xEF, 0x03, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x3F, 0x0A, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00
.byte 0x40, 0x0A, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0xF0, 0x03, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00
.byte 0xEB, 0x03, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xEC, 0x03, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0xF2, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00
.byte 0xEE, 0x03, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0xEF, 0x03, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00
.byte 0x3F, 0x0A, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x40, 0x0A, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00
.byte 0xF0, 0x03, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0xEB, 0x03, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
.byte 0xEC, 0x03, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00
.byte 0x48, 0xBE, 0x38, 0x02, 0x6C, 0xBE, 0x38, 0x02, 0x90, 0xBE, 0x38, 0x02, 0x0C, 0xBF, 0x38, 0x02
.byte 0x30, 0xBF, 0x38, 0x02, 0x60, 0xBF, 0x38, 0x02, 0x84, 0xBF, 0x38, 0x02, 0xA8, 0xBF, 0x38, 0x02
.byte 0x3C, 0xC0, 0x38, 0x02, 0x60, 0xC0, 0x38, 0x02, 0x78, 0xC0, 0x38, 0x02, 0x60, 0xC0, 0x38, 0x02
.byte 0x9C, 0xC0, 0x38, 0x02, 0xC0, 0xC0, 0x38, 0x02, 0xD8, 0xC0, 0x38, 0x02, 0xFC, 0xC0, 0x38, 0x02
.byte 0x14, 0xC1, 0x38, 0x02, 0x3C, 0xC1, 0x38, 0x02, 0x64, 0xC1, 0x38, 0x02, 0x1C, 0xC2, 0x38, 0x02
.byte 0x40, 0xC2, 0x38, 0x02, 0x58, 0xC2, 0x38, 0x02, 0x7C, 0xC2, 0x38, 0x02, 0x40, 0xC3, 0x38, 0x02
.byte 0x64, 0xC3, 0x38, 0x02, 0x98, 0xC3, 0x38, 0x02, 0xC0, 0xC3, 0x38, 0x02, 0x28, 0xC4, 0x38, 0x02
.byte 0x7C, 0xC4, 0x38, 0x02, 0xA0, 0xC4, 0x38, 0x02, 0xE8, 0xC4, 0x38, 0x02, 0x04, 0xC5, 0x38, 0x02
.byte 0x28, 0xC5, 0x38, 0x02, 0x20, 0xC7, 0x38, 0x02, 0x8C, 0xC7, 0x38, 0x02, 0xB0, 0xC7, 0x38, 0x02
.byte 0xC0, 0xC7, 0x38, 0x02, 0xE4, 0xC7, 0x38, 0x02, 0x08, 0xC8, 0x38, 0x02, 0x88, 0xC8, 0x38, 0x02
.byte 0xAC, 0xC8, 0x38, 0x02, 0xD0, 0xC8, 0x38, 0x02, 0x50, 0xC9, 0x38, 0x02, 0x74, 0xC9, 0x38, 0x02
.byte 0x84, 0xC9, 0x38, 0x02, 0xA8, 0xC9, 0x38, 0x02, 0xB8, 0xC9, 0x38, 0x02, 0x18, 0xCA, 0x38, 0x02
.byte 0x3C, 0xCA, 0x38, 0x02, 0x4C, 0xCA, 0x38, 0x02, 0x70, 0xCA, 0x38, 0x02, 0x80, 0xCA, 0x38, 0x02
.byte 0xB0, 0xCA, 0x38, 0x02, 0xD4, 0xCA, 0x38, 0x02, 0xDC, 0xCB, 0x38, 0x02, 0x00, 0xCC, 0x38, 0x02
.byte 0x88, 0xCD, 0x38, 0x02, 0xAC, 0xCD, 0x38, 0x02, 0xC8, 0xCD, 0x38, 0x02, 0xEC, 0xCD, 0x38, 0x02
.byte 0xFC, 0xCD, 0x38, 0x02, 0x20, 0xCE, 0x38, 0x02, 0x88, 0xCE, 0x38, 0x02, 0xD8, 0xCE, 0x38, 0x02
.byte 0x98, 0xCF, 0x38, 0x02, 0x34, 0xD0, 0x38, 0x02, 0x50, 0xD0, 0x38, 0x02, 0x74, 0xD0, 0x38, 0x02
.byte 0x98, 0xD0, 0x38, 0x02, 0x2C, 0xD1, 0x38, 0x02, 0x50, 0xD1, 0x38, 0x02, 0x74, 0xD1, 0x38, 0x02
.byte 0x08, 0xD2, 0x38, 0x02, 0x2C, 0xD2, 0x38, 0x02, 0x3C, 0xD2, 0x38, 0x02, 0x60, 0xD2, 0x38, 0x02
.byte 0x5B, 0x43, 0x53, 0x3A, 0x25, 0x63, 0x5D, 0x25, 0x73, 0x5B, 0x43, 0x52, 0x5D, 0x00, 0x00, 0x00
.byte 0x5B, 0x43, 0x53, 0x3A, 0x56, 0x5D, 0x5B, 0x67, 0x6F, 0x6C, 0x64, 0x3A, 0x30, 0x5D, 0x5B, 0x43
.byte 0x52, 0x5D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00