mirror of
https://github.com/pret/pmd-sky.git
synced 2026-04-25 07:24:42 -05:00
1295 lines
37 KiB
ArmAsm
1295 lines
37 KiB
ArmAsm
.include "asm/macros.inc"
|
|
.include "overlay_17.inc"
|
|
.include "global.inc"
|
|
|
|
.text
|
|
|
|
arm_func_start ov17_0238A140
|
|
ov17_0238A140: @ 0x0238A140
|
|
push {r3, r4, r5, lr}
|
|
bl FUN_0203C760
|
|
mov r0, #0x26c
|
|
mov r1, #8
|
|
bl FUN_02001170
|
|
ldr r1, _0238A270 @ =0x0238BE00
|
|
mov r2, #1
|
|
str r0, [r1]
|
|
strb r2, [r0, #9]
|
|
ldr r0, [r1]
|
|
add r0, r0, #0xc
|
|
bl FUN_02023690
|
|
ldr lr, _0238A270 @ =0x0238BE00
|
|
mov r2, #0
|
|
ldr r0, [lr]
|
|
mov r4, #2
|
|
str r2, [r0, #0x6c]
|
|
ldr r0, [lr]
|
|
sub r1, r2, #1
|
|
str r2, [r0, #0x70]
|
|
ldr r5, [lr]
|
|
ldr ip, _0238A274 @ =0x0238A08C
|
|
ldr r3, [r5, #0x70]
|
|
sub r0, r4, #4
|
|
str r3, [r5, #0x78]
|
|
ldr r3, [lr]
|
|
str r2, [r3, #0x74]
|
|
ldr r3, [lr]
|
|
strh r2, [r3, #0x7c]
|
|
ldr r3, [lr]
|
|
strh r2, [r3, #0x7e]
|
|
ldr r3, [lr]
|
|
add r3, r3, #0x200
|
|
strh r1, [r3, #0x58]
|
|
ldr r3, [lr]
|
|
str r2, [r3, #0x80]
|
|
ldr r3, [lr]
|
|
add r3, r3, #0x200
|
|
strh r4, [r3, #0x5a]
|
|
ldr r3, [lr]
|
|
add r3, r3, #0x200
|
|
strh r4, [r3, #0x5c]
|
|
ldr r3, [lr]
|
|
str r2, [r3, #0x264]
|
|
ldr r2, [lr]
|
|
add r2, r2, #0x200
|
|
strh r1, [r2, #0x68]
|
|
ldr r2, [ip]
|
|
ldr r1, [lr]
|
|
str r2, [r1, #0x260]
|
|
ldr r1, [lr]
|
|
strb r0, [r1]
|
|
ldr r1, [lr]
|
|
strb r0, [r1, #1]
|
|
ldr r1, [lr]
|
|
strb r0, [r1, #2]
|
|
ldr r1, [lr]
|
|
strb r0, [r1, #3]
|
|
ldr r1, [lr]
|
|
strb r0, [r1, #4]
|
|
ldr r1, [lr]
|
|
strb r0, [r1, #5]
|
|
ldr r1, [lr]
|
|
strb r0, [r1, #6]
|
|
ldr r1, [lr]
|
|
strb r0, [r1, #7]
|
|
ldr r1, [lr]
|
|
strb r0, [r1, #8]
|
|
ldr r0, [lr]
|
|
add r0, r0, #0x84
|
|
bl FUN_02034A38
|
|
ldr r1, _0238A270 @ =0x0238BE00
|
|
ldr r1, [r1]
|
|
str r0, [r1, #0x80]
|
|
mov r0, #1
|
|
pop {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
_0238A270: .4byte 0x0238BE00
|
|
_0238A274: .4byte 0x0238A08C
|
|
arm_func_end ov17_0238A140
|
|
|
|
arm_func_start ov17_0238A278
|
|
ov17_0238A278: @ 0x0238A278
|
|
push {r3, lr}
|
|
ldr r0, _0238A360 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #1
|
|
bne _0238A2A4
|
|
ldrsb r0, [r1]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
beq _0238A2A4
|
|
bl FUN_0202F334
|
|
_0238A2A4:
|
|
ldr r0, _0238A360 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #2
|
|
bne _0238A2CC
|
|
ldrsb r0, [r1, #1]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
beq _0238A2CC
|
|
bl FUN_0202F6DC
|
|
_0238A2CC:
|
|
ldr r0, _0238A360 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrh r0, [r0, #0x7e]
|
|
tst r0, #0x20
|
|
bne _0238A2E4
|
|
bl FUN_0203A618
|
|
_0238A2E4:
|
|
ldr r0, _0238A360 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #0x40
|
|
bne _0238A30C
|
|
ldrsb r0, [r1, #5]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
beq _0238A30C
|
|
bl FUN_0203088C
|
|
_0238A30C:
|
|
ldr r0, _0238A360 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #0x80
|
|
bne _0238A334
|
|
ldrsb r0, [r1, #6]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
beq _0238A334
|
|
bl FUN_0203088C
|
|
_0238A334:
|
|
ldr r0, _0238A360 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #0x100
|
|
popne {r3, pc}
|
|
ldrsb r0, [r1, #7]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
popeq {r3, pc}
|
|
bl FUN_0202E6B0
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238A360: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238A278
|
|
|
|
arm_func_start ov17_0238A364
|
|
ov17_0238A364: @ 0x0238A364
|
|
push {r3, lr}
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #1
|
|
bne _0238A3D0
|
|
ldrsb r0, [r1]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
moveq r2, #1
|
|
beq _0238A3C4
|
|
bl FUN_0202F180
|
|
cmp r0, #0
|
|
movne r2, #0
|
|
bne _0238A3C4
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0]
|
|
bl FUN_0202F148
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
strb r1, [r0]
|
|
_0238A3C4:
|
|
cmp r2, #0
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A3D0:
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #2
|
|
bne _0238A438
|
|
ldrsb r0, [r1, #1]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
moveq r2, #1
|
|
beq _0238A42C
|
|
bl FUN_0202F66C
|
|
cmp r0, #0
|
|
movne r2, #0
|
|
bne _0238A42C
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #1]
|
|
bl FUN_0202F650
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
strb r1, [r0, #1]
|
|
_0238A42C:
|
|
cmp r2, #0
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A438:
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #4
|
|
bne _0238A4A0
|
|
ldrsb r0, [r1, #2]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
moveq r2, #1
|
|
beq _0238A494
|
|
bl FUN_0202B4F0
|
|
cmp r0, #0
|
|
arm_func_end ov17_0238A364
|
|
|
|
arm_func_start ov17_0238A468
|
|
ov17_0238A468: @ 0x0238A468
|
|
movne r2, #0
|
|
bne _0238A494
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #2]
|
|
bl FUN_0202B4C4
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
strb r1, [r0, #2]
|
|
_0238A494:
|
|
cmp r2, #0
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A4A0:
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #0x10
|
|
bne _0238A508
|
|
ldrsb r0, [r1, #3]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
moveq r2, #1
|
|
beq _0238A4FC
|
|
bl FUN_0202B4F0
|
|
cmp r0, #0
|
|
movne r2, #0
|
|
bne _0238A4FC
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #3]
|
|
bl FUN_0202B4C4
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
strb r1, [r0, #3]
|
|
_0238A4FC:
|
|
cmp r2, #0
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A508:
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrh r0, [r0, #0x7e]
|
|
tst r0, #0x20
|
|
bne _0238A540
|
|
bl FUN_0203A9B8
|
|
cmp r0, #0
|
|
movne r0, #0
|
|
bne _0238A534
|
|
bl FUN_0203A51C
|
|
mov r0, #1
|
|
_0238A534:
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A540:
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #8
|
|
bne _0238A5A8
|
|
ldrsb r0, [r1, #4]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
moveq r2, #1
|
|
beq _0238A59C
|
|
bl FUN_0202B4F0
|
|
cmp r0, #0
|
|
movne r2, #0
|
|
bne _0238A59C
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #4]
|
|
bl FUN_0202B4C4
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
strb r1, [r0, #4]
|
|
_0238A59C:
|
|
cmp r2, #0
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A5A8:
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r3, [r0]
|
|
ldrh r2, [r3, #0x7e]
|
|
tst r2, #0x40
|
|
bne _0238A5DC
|
|
ldrsb r1, [r3, #5]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
tst r0, #0xff
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A5DC:
|
|
tst r2, #0x80
|
|
bne _0238A63C
|
|
ldrsb r0, [r3, #6]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
moveq r2, #1
|
|
beq _0238A630
|
|
bl FUN_020308C4
|
|
cmp r0, #0
|
|
movne r2, #0
|
|
bne _0238A630
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #6]
|
|
bl FUN_020308A0
|
|
bl FUN_020407C0
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
strb r1, [r0, #6]
|
|
_0238A630:
|
|
cmp r2, #0
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A63C:
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #0x100
|
|
bne _0238A6A8
|
|
ldrsb r0, [r1, #7]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
moveq r2, #1
|
|
beq _0238A69C
|
|
bl FUN_0202E6E4
|
|
cmp r0, #0
|
|
movne r2, #0
|
|
bne _0238A69C
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #7]
|
|
bl FUN_0202E6C8
|
|
bl FUN_02041A00
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
strb r1, [r0, #7]
|
|
_0238A69C:
|
|
cmp r2, #0
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A6A8:
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #0x200
|
|
bne _0238A710
|
|
ldrsb r0, [r1, #8]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
moveq r2, #1
|
|
beq _0238A704
|
|
bl FUN_0202B4F0
|
|
cmp r0, #0
|
|
movne r2, #0
|
|
bne _0238A704
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #8]
|
|
bl FUN_0202B4C4
|
|
ldr r0, _0238A718 @ =0x0238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
strb r1, [r0, #8]
|
|
_0238A704:
|
|
cmp r2, #0
|
|
moveq r0, #0
|
|
popeq {r3, pc}
|
|
_0238A710:
|
|
mov r0, #1
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238A718: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238A468
|
|
|
|
arm_func_start ov17_0238A71C
|
|
ov17_0238A71C: @ 0x0238A71C
|
|
push {r3, lr}
|
|
ldr r0, _0238A750 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
cmp r0, #0
|
|
popeq {r3, pc}
|
|
bl FUN_0203C760
|
|
ldr r0, _0238A750 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
bl FUN_02001188
|
|
ldr r0, _0238A750 @ =0x0238BE00
|
|
mov r1, #0
|
|
str r1, [r0]
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238A750: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238A71C
|
|
_0238A754:
|
|
.byte 0xF0, 0x43, 0x2D, 0xE9, 0x49, 0xDF, 0x4D, 0xE2, 0xA0, 0xC8, 0xF2, 0xEB
|
|
.byte 0x34, 0x08, 0x9F, 0xE5, 0x00, 0x40, 0x90, 0xE5, 0x6C, 0x10, 0x94, 0xE5, 0x03, 0x00, 0x51, 0xE3
|
|
.byte 0x01, 0xF1, 0x8F, 0x90, 0x05, 0x02, 0x00, 0xEA, 0x02, 0x00, 0x00, 0xEA, 0xE5, 0x01, 0x00, 0xEA
|
|
.byte 0xF1, 0x01, 0x00, 0xEA, 0x01, 0x02, 0x00, 0xEA, 0x10, 0x78, 0x9F, 0xE5, 0x04, 0x60, 0x8D, 0xE2
|
|
.byte 0x0A, 0x50, 0xA0, 0xE3, 0x0F, 0x00, 0xB7, 0xE8, 0x0F, 0x00, 0xA6, 0xE8, 0x01, 0x50, 0x55, 0xE2
|
|
.byte 0xFB, 0xFF, 0xFF, 0x1A, 0x03, 0x00, 0x97, 0xE8, 0x03, 0x00, 0x86, 0xE8, 0x74, 0x00, 0x94, 0xE5
|
|
.byte 0x03, 0x00, 0x50, 0xE3, 0x00, 0xF1, 0x8F, 0x90, 0xD4, 0x01, 0x00, 0xEA, 0x02, 0x00, 0x00, 0xEA
|
|
.byte 0x1E, 0x00, 0x00, 0xEA, 0xBF, 0x01, 0x00, 0xEA, 0xFF, 0xFF, 0xFF, 0xEA, 0xC8, 0x07, 0x9F, 0xE5
|
|
.byte 0x00, 0x10, 0xA0, 0xE3, 0x74, 0x10, 0x84, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0x04, 0x00, 0x8D, 0xE2
|
|
.byte 0x70, 0x10, 0x91, 0xE5, 0x01, 0x01, 0x90, 0xE7, 0x30, 0xFF, 0x2F, 0xE1, 0xA8, 0x07, 0x9F, 0xE5
|
|
.byte 0x00, 0x30, 0x90, 0xE5, 0x70, 0x10, 0x93, 0xE5, 0x78, 0x20, 0x93, 0xE5, 0x02, 0x00, 0x51, 0xE1
|
|
.byte 0xC2, 0x01, 0x00, 0x0A, 0x74, 0x10, 0x93, 0xE5, 0x03, 0x00, 0x51, 0xE3, 0x05, 0x00, 0x00, 0x1A
|
|
.byte 0x70, 0x20, 0x83, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0x04, 0x00, 0x8D, 0xE2, 0x70, 0x10, 0x91, 0xE5
|
|
.byte 0x01, 0x01, 0x90, 0xE7, 0x30, 0xFF, 0x2F, 0xE1, 0x92, 0xFE, 0xFF, 0xEB, 0x68, 0x07, 0x9F, 0xE5
|
|
.byte 0x01, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x74, 0x10, 0x80, 0xE5, 0xB3, 0x01, 0x00, 0xEA
|
|
.byte 0xC7, 0xFE, 0xFF, 0xEB, 0x00, 0x00, 0x50, 0xE3, 0xB0, 0x01, 0x00, 0x0A, 0x48, 0x07, 0x9F, 0xE5
|
|
.byte 0x00, 0x20, 0x90, 0xE5, 0xBE, 0x07, 0xD2, 0xE1, 0x01, 0x00, 0x10, 0xE3, 0x73, 0x00, 0x00, 0x0A
|
|
.byte 0xD0, 0x10, 0xD2, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0xBC, 0x57, 0xD2, 0xE1, 0x00, 0x00, 0x51, 0xE1
|
|
.byte 0x2C, 0x47, 0x9F, 0xE5, 0x07, 0x00, 0x00, 0x1A, 0x28, 0x07, 0x9F, 0xE5, 0x0B, 0x92, 0xF2, 0xEB
|
|
.byte 0x14, 0x17, 0x9F, 0xE5, 0x00, 0x20, 0xA0, 0xE3, 0x00, 0x30, 0x91, 0xE5, 0x00, 0x00, 0xC3, 0xE5
|
|
.byte 0x00, 0x00, 0x91, 0xE5, 0xBC, 0x27, 0xC0, 0xE1, 0xFC, 0x06, 0x9F, 0xE5, 0x00, 0x00, 0x90, 0xE5
|
|
.byte 0xD0, 0x00, 0xD0, 0xE1, 0xBE, 0x92, 0xF2, 0xEB, 0xEC, 0x06, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5
|
|
.byte 0x70, 0x00, 0x91, 0xE5, 0x29, 0x00, 0x50, 0xE3, 0x00, 0xF1, 0x8F, 0x90, 0x4D, 0x00, 0x00, 0xEA
|
|
.byte 0x28, 0x00, 0x00, 0xEA, 0x4B, 0x00, 0x00, 0xEA, 0x4A, 0x00, 0x00, 0xEA, 0x49, 0x00, 0x00, 0xEA
|
|
.byte 0x35, 0x00, 0x00, 0xEA, 0x34, 0x00, 0x00, 0xEA, 0x27, 0x00, 0x00, 0xEA, 0x26, 0x00, 0x00, 0xEA
|
|
.byte 0x28, 0x00, 0x00, 0xEA, 0x2A, 0x00, 0x00, 0xEA, 0x29, 0x00, 0x00, 0xEA, 0x2B, 0x00, 0x00, 0xEA
|
|
.byte 0x40, 0x00, 0x00, 0xEA, 0x3F, 0x00, 0x00, 0xEA, 0x3E, 0x00, 0x00, 0xEA, 0x3D, 0x00, 0x00, 0xEA
|
|
.byte 0x2C, 0x00, 0x00, 0xEA, 0x2B, 0x00, 0x00, 0xEA, 0x2A, 0x00, 0x00, 0xEA, 0x2C, 0x00, 0x00, 0xEA
|
|
.byte 0x2B, 0x00, 0x00, 0xEA, 0x2D, 0x00, 0x00, 0xEA, 0x2C, 0x00, 0x00, 0xEA, 0x2B, 0x00, 0x00, 0xEA
|
|
.byte 0x2D, 0x00, 0x00, 0xEA, 0x2C, 0x00, 0x00, 0xEA, 0x2B, 0x00, 0x00, 0xEA, 0x2C, 0x00, 0x00, 0xEA
|
|
.byte 0x2B, 0x00, 0x00, 0xEA, 0x2A, 0x00, 0x00, 0xEA, 0x2E, 0x00, 0x00, 0xEA, 0x2D, 0x00, 0x00, 0xEA
|
|
.byte 0x2C, 0x00, 0x00, 0xEA, 0x2B, 0x00, 0x00, 0xEA, 0x2A, 0x00, 0x00, 0xEA, 0x29, 0x00, 0x00, 0xEA
|
|
.byte 0x28, 0x00, 0x00, 0xEA, 0x27, 0x00, 0x00, 0xEA, 0x26, 0x00, 0x00, 0xEA, 0x25, 0x00, 0x00, 0xEA
|
|
.byte 0x22, 0x00, 0x00, 0xEA, 0x21, 0x00, 0x00, 0xEA, 0x09, 0x00, 0xD1, 0xE5, 0x00, 0x00, 0x50, 0xE3
|
|
.byte 0x34, 0x56, 0x9F, 0x15, 0x34, 0x56, 0x9F, 0x05, 0x1E, 0x00, 0x00, 0xEA, 0x30, 0x56, 0x9F, 0xE5
|
|
.byte 0x30, 0x46, 0x9F, 0xE5, 0x1B, 0x00, 0x00, 0xEA, 0x2C, 0x56, 0x9F, 0xE5, 0x24, 0x46, 0x9F, 0xE5
|
|
.byte 0x18, 0x00, 0x00, 0xEA, 0x24, 0x56, 0x9F, 0xE5, 0x18, 0x46, 0x9F, 0xE5, 0x15, 0x00, 0x00, 0xEA
|
|
.byte 0x1C, 0x56, 0x9F, 0xE5, 0xD1, 0x4D, 0x65, 0xE2, 0x12, 0x00, 0x00, 0xEA, 0x14, 0x56, 0x9F, 0xE5
|
|
.byte 0x00, 0x46, 0x9F, 0xE5, 0x0F, 0x00, 0x00, 0xEA, 0x42, 0x5E, 0xA0, 0xE3, 0xF4, 0x45, 0x9F, 0xE5
|
|
.byte 0x0C, 0x00, 0x00, 0xEA, 0x00, 0x56, 0x9F, 0xE5, 0xE8, 0x45, 0x9F, 0xE5, 0x09, 0x00, 0x00, 0xEA
|
|
.byte 0xF8, 0x55, 0x9F, 0xE5, 0xDC, 0x45, 0x9F, 0xE5, 0x06, 0x00, 0x00, 0xEA, 0xF0, 0x55, 0x9F, 0xE5
|
|
.byte 0x04, 0x00, 0x00, 0xEA, 0xEC, 0x55, 0x9F, 0xE5, 0xC8, 0x45, 0x9F, 0xE5, 0x01, 0x00, 0x00, 0xEA
|
|
.byte 0xE4, 0x55, 0x9F, 0xE5, 0xBC, 0x45, 0x9F, 0xE5, 0xBC, 0x07, 0xD1, 0xE1, 0x05, 0x00, 0x50, 0xE1
|
|
.byte 0x0A, 0x00, 0x00, 0x0A, 0x90, 0x05, 0x9F, 0xE5, 0xBC, 0x57, 0xC1, 0xE1, 0x00, 0x20, 0x90, 0xE5
|
|
.byte 0xC8, 0x35, 0x9F, 0xE5, 0x04, 0x10, 0xA0, 0xE1, 0x58, 0x30, 0x82, 0xE5, 0x00, 0x30, 0x90, 0xE5
|
|
.byte 0xD0, 0x00, 0xD3, 0xE1, 0xBC, 0x27, 0xD3, 0xE1, 0x0C, 0x30, 0x83, 0xE2, 0xE0, 0x91, 0xF2, 0xEB
|
|
.byte 0x64, 0x05, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0xBE, 0x07, 0xD1, 0xE1, 0x02, 0x00, 0x10, 0xE3
|
|
.byte 0x1D, 0x00, 0x00, 0x0A, 0xD1, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1
|
|
.byte 0x19, 0x00, 0x00, 0x1A, 0x00, 0x00, 0xA0, 0xE3, 0x03, 0x10, 0xA0, 0xE3, 0x01, 0x20, 0xA0, 0xE3
|
|
.byte 0xD1, 0x92, 0xF2, 0xEB, 0x30, 0x25, 0x9F, 0xE5, 0x70, 0x15, 0x9F, 0xE5, 0x00, 0x30, 0x92, 0xE5
|
|
.byte 0x01, 0x00, 0xC3, 0xE5, 0x00, 0x00, 0x92, 0xE5, 0x5C, 0x00, 0x80, 0xE2, 0x54, 0x0B, 0xF3, 0xEB
|
|
.byte 0x14, 0x05, 0x9F, 0xE5, 0x00, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x5C, 0x00, 0x80, 0xE2
|
|
.byte 0x5B, 0x0B, 0xF3, 0xEB, 0x00, 0x05, 0x9F, 0xE5, 0x00, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5
|
|
.byte 0x5C, 0x00, 0x80, 0xE2, 0x52, 0x0B, 0xF3, 0xEB, 0xEC, 0x04, 0x9F, 0xE5, 0x00, 0x10, 0x90, 0xE5
|
|
.byte 0xD1, 0x00, 0xD1, 0xE1, 0x5C, 0x10, 0x81, 0xE2, 0xF4, 0x92, 0xF2, 0xEB, 0xD8, 0x04, 0x9F, 0xE5
|
|
.byte 0x00, 0x10, 0x90, 0xE5, 0xBE, 0x07, 0xD1, 0xE1, 0x04, 0x00, 0x10, 0xE3, 0x0C, 0x00, 0x00, 0x0A
|
|
.byte 0xD2, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1, 0x08, 0x00, 0x00, 0x1A
|
|
.byte 0xFC, 0x04, 0x9F, 0xE5, 0x00, 0x20, 0xA0, 0xE3, 0xF8, 0x14, 0x9F, 0xE5, 0xF8, 0x34, 0x9F, 0xE5
|
|
.byte 0x00, 0x20, 0x8D, 0xE5, 0x7C, 0x81, 0xF2, 0xEB, 0x9C, 0x14, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5
|
|
.byte 0x02, 0x00, 0xC1, 0xE5, 0x90, 0x14, 0x9F, 0xE5, 0x00, 0x30, 0x91, 0xE5, 0xBE, 0x07, 0xD3, 0xE1
|
|
.byte 0x10, 0x00, 0x10, 0xE3, 0x10, 0x00, 0x00, 0x0A, 0xD3, 0x20, 0xD3, 0xE1, 0x01, 0x00, 0xE0, 0xE3
|
|
.byte 0x00, 0x00, 0x52, 0xE1, 0x0C, 0x00, 0x00, 0x1A, 0x01, 0x00, 0xA0, 0xE3, 0xB4, 0x01, 0x83, 0xE5
|
|
.byte 0x00, 0x00, 0xA0, 0xE3, 0x00, 0x00, 0x8D, 0xE5, 0x00, 0x20, 0x91, 0xE5, 0xAC, 0x04, 0x9F, 0xE5
|
|
.byte 0xAC, 0x14, 0x9F, 0xE5, 0xAC, 0x34, 0x9F, 0xE5, 0x6D, 0x2F, 0x82, 0xE2, 0x66, 0x81, 0xF2, 0xEB
|
|
.byte 0x44, 0x14, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x03, 0x00, 0xC1, 0xE5, 0x38, 0x04, 0x9F, 0xE5
|
|
.byte 0x00, 0x00, 0x90, 0xE5, 0xBE, 0x07, 0xD0, 0xE1, 0x20, 0x00, 0x10, 0xE3, 0x08, 0x00, 0x00, 0x0A
|
|
.byte 0x88, 0xBF, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3, 0x05, 0x00, 0x00, 0x1A, 0x18, 0x14, 0x9F, 0xE5
|
|
.byte 0x01, 0x00, 0xA0, 0xE3, 0x00, 0x10, 0x91, 0xE5, 0x5A, 0x10, 0x81, 0xE2, 0x02, 0x1C, 0x81, 0xE2
|
|
.byte 0x29, 0xBC, 0xF2, 0xEB, 0x00, 0x04, 0x9F, 0xE5, 0x00, 0x20, 0x90, 0xE5, 0xBE, 0x07, 0xD2, 0xE1
|
|
.byte 0x08, 0x00, 0x10, 0xE3, 0x79, 0x00, 0x00, 0x0A, 0xD4, 0x10, 0xD2, 0xE1, 0x01, 0x00, 0xE0, 0xE3
|
|
.byte 0x00, 0x00, 0x51, 0xE1, 0x75, 0x00, 0x00, 0x1A, 0x02, 0x0C, 0x82, 0xE2, 0xF8, 0x65, 0xD0, 0xE1
|
|
.byte 0x06, 0x00, 0xA0, 0xE1, 0x77, 0x2A, 0xF3, 0xEB, 0x00, 0x40, 0xA0, 0xE1, 0x06, 0x00, 0xA0, 0xE1
|
|
.byte 0x36, 0x2E, 0xF3, 0xEB, 0x00, 0x00, 0x50, 0xE3, 0x1C, 0x74, 0x9F, 0x15, 0x42, 0x00, 0x00, 0x1A
|
|
.byte 0x06, 0x00, 0xA0, 0xE1, 0x4F, 0x2A, 0xF3, 0xEB, 0x00, 0x80, 0xA0, 0xE1, 0x06, 0x00, 0xA0, 0xE1
|
|
.byte 0x06, 0x2E, 0xF3, 0xEB, 0x00, 0x70, 0xA0, 0xE1, 0x00, 0x50, 0xA0, 0xE3, 0xEF, 0x00, 0xF3, 0xEB
|
|
.byte 0x04, 0x00, 0x50, 0xE3, 0x02, 0x00, 0x00, 0x0A, 0xEC, 0x00, 0xF3, 0xEB, 0x05, 0x00, 0x50, 0xE3
|
|
.byte 0x01, 0x00, 0x00, 0x1A, 0x01, 0x50, 0xA0, 0xE3, 0x02, 0x00, 0x00, 0xEA, 0xF4, 0x00, 0xD4, 0xE1
|
|
.byte 0x85, 0x0F, 0x50, 0xE3, 0x01, 0x50, 0xA0, 0x03, 0x14, 0x00, 0xA0, 0xE3, 0x98, 0x07, 0xF3, 0xEB
|
|
.byte 0x00, 0x00, 0x50, 0xE3, 0x12, 0x00, 0x00, 0x0A, 0xE0, 0x00, 0xF3, 0xEB, 0x03, 0x00, 0x50, 0xE3
|
|
.byte 0x0F, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x58, 0xE3, 0x03, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x57, 0xE3
|
|
.byte 0xA8, 0x73, 0x9F, 0x15, 0xA8, 0x73, 0x9F, 0x05, 0x23, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x55, 0xE3
|
|
.byte 0x03, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x57, 0xE3, 0x90, 0x73, 0x9F, 0x15, 0x90, 0x73, 0x9F, 0x05
|
|
.byte 0x1D, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x57, 0xE3, 0x88, 0x73, 0x9F, 0x15, 0x88, 0x73, 0x9F, 0x05
|
|
.byte 0x19, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x58, 0xE3, 0x0E, 0x00, 0x00, 0x0A, 0xCB, 0x00, 0xF3, 0xEB
|
|
.byte 0x04, 0x00, 0x50, 0xE3, 0x02, 0x00, 0x00, 0x0A, 0xC8, 0x00, 0xF3, 0xEB, 0x05, 0x00, 0x50, 0xE3
|
|
.byte 0x06, 0x00, 0x00, 0x1A, 0x74, 0x2A, 0xF3, 0xEB, 0x00, 0x00, 0x56, 0xE1, 0x03, 0x00, 0x00, 0x1A
|
|
.byte 0x00, 0x00, 0x57, 0xE3, 0x54, 0x73, 0x9F, 0x15, 0x44, 0x73, 0x9F, 0x05, 0x0A, 0x00, 0x00, 0xEA
|
|
.byte 0x34, 0x73, 0x9F, 0xE5, 0x08, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x55, 0xE3, 0x03, 0x00, 0x00, 0x0A
|
|
.byte 0x00, 0x00, 0x57, 0xE3, 0x34, 0x73, 0x9F, 0x15, 0x24, 0x73, 0x9F, 0x05, 0x02, 0x00, 0x00, 0xEA
|
|
.byte 0x00, 0x00, 0x57, 0xE3, 0x28, 0x73, 0x9F, 0x15, 0x1C, 0x73, 0x9F, 0x05, 0x00, 0x80, 0xA0, 0xE3
|
|
.byte 0x08, 0x40, 0xA0, 0xE1, 0x03, 0x50, 0xA0, 0xE3, 0x9C, 0x92, 0x9F, 0xE5, 0x12, 0x00, 0x00, 0xEA
|
|
.byte 0x88, 0x11, 0xA0, 0xE1, 0xB1, 0x00, 0x97, 0xE1, 0x00, 0x00, 0x50, 0xE3, 0x10, 0x00, 0x00, 0x0A
|
|
.byte 0x01, 0x00, 0x87, 0xE0, 0x04, 0x00, 0x90, 0xE5, 0x06, 0x00, 0x50, 0xE3, 0x06, 0x00, 0x00, 0x1A
|
|
.byte 0x06, 0x00, 0xA0, 0xE1, 0x8D, 0x30, 0xF3, 0xEB, 0x00, 0x00, 0x50, 0xE3, 0x00, 0x00, 0x99, 0x05
|
|
.byte 0x08, 0x00, 0x80, 0x00, 0x4C, 0x52, 0xC0, 0x05, 0x02, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x99, 0xE5
|
|
.byte 0x08, 0x00, 0x80, 0xE0, 0x4C, 0x42, 0xC0, 0xE5, 0x01, 0x80, 0x88, 0xE2, 0x0C, 0x00, 0x58, 0xE3
|
|
.byte 0xEA, 0xFF, 0xFF, 0xBA, 0x40, 0x12, 0x9F, 0xE5, 0x00, 0x20, 0xA0, 0xE3, 0x00, 0x40, 0x91, 0xE5
|
|
.byte 0xB0, 0x02, 0x9F, 0xE5, 0x93, 0x3F, 0x84, 0xE2, 0x7C, 0x31, 0x84, 0xE5, 0x00, 0x20, 0x8D, 0xE5
|
|
.byte 0x00, 0x20, 0x91, 0xE5, 0xA0, 0x12, 0x9F, 0xE5, 0x07, 0x30, 0xA0, 0xE1, 0x47, 0x2F, 0x82, 0xE2
|
|
.byte 0xD9, 0x80, 0xF2, 0xEB, 0x10, 0x12, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x04, 0x00, 0xC1, 0xE5
|
|
.byte 0x04, 0x02, 0x9F, 0xE5, 0x00, 0x20, 0x90, 0xE5, 0xBE, 0x07, 0xD2, 0xE1, 0x40, 0x00, 0x10, 0xE3
|
|
.byte 0x0D, 0x00, 0x00, 0x0A, 0xD5, 0x10, 0xD2, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1
|
|
.byte 0x09, 0x00, 0x00, 0x1A, 0x02, 0x0C, 0x82, 0xE2, 0xF8, 0x15, 0xD0, 0xE1, 0xAC, 0x00, 0x8D, 0xE2
|
|
.byte 0x98, 0x40, 0xF3, 0xEB, 0xAC, 0x00, 0x8D, 0xE2, 0x03, 0x10, 0xA0, 0xE3, 0xDF, 0xD0, 0xF2, 0xEB
|
|
.byte 0xC4, 0x11, 0x9F, 0xE5, 0x00, 0x10, 0x91, 0xE5, 0x05, 0x00, 0xC1, 0xE5, 0xB8, 0x01, 0x9F, 0xE5
|
|
.byte 0x00, 0x10, 0x90, 0xE5, 0xBE, 0x07, 0xD1, 0xE1, 0x80, 0x00, 0x10, 0xE3, 0x0C, 0x00, 0x00, 0x0A
|
|
.byte 0xD6, 0x10, 0xD1, 0xE1, 0x01, 0x00, 0xE0, 0xE3, 0x00, 0x00, 0x51, 0xE1
|
|
|
|
arm_func_start ov17_0238ADFC
|
|
ov17_0238ADFC: @ 0x0238ADFC
|
|
bne _0238AE20
|
|
mov r1, #0
|
|
mov r2, r1
|
|
mov r0, #8
|
|
bl FUN_0204018C
|
|
ldr r1, _0238AF9C @ =0x0238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #6]
|
|
b _0238AE24
|
|
_0238AE20:
|
|
bl FUN_02041178
|
|
_0238AE24:
|
|
ldr r0, _0238AF9C @ =0x0238BE00
|
|
ldr r3, [r0]
|
|
ldrh r0, [r3, #0x7e]
|
|
tst r0, #0x100
|
|
beq _0238AE6C
|
|
ldrsb r1, [r3, #5]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
bne _0238AE6C
|
|
add r0, r3, #0x200
|
|
ldrsh r2, [r0, #0x68]
|
|
ldr r0, [r3, #0x264]
|
|
mov r1, #4
|
|
mov r3, #1
|
|
bl FUN_020417A8
|
|
ldr r1, _0238AF9C @ =0x0238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #7]
|
|
_0238AE6C:
|
|
ldr r0, _0238AF9C @ =0x0238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #0x200
|
|
beq _0238AEB4
|
|
ldrsb r1, [r1, #8]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
bne _0238AEB4
|
|
ldr r0, _0238B020 @ =0x0238BB74
|
|
mov r2, #0
|
|
ldr r3, _0238B024 @ =0x0238BB9C
|
|
mov r1, #0x13
|
|
str r2, [sp]
|
|
bl FUN_0202B0EC
|
|
ldr r1, _0238AF9C @ =0x0238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #8]
|
|
_0238AEB4:
|
|
ldr r0, _0238AF9C @ =0x0238BE00
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x74]
|
|
b _0238AF10
|
|
_0238AEC8:
|
|
.byte 0xBE, 0x07, 0xD4, 0xE1, 0x01, 0x00, 0x10, 0xE3
|
|
.byte 0x04, 0x00, 0x00, 0x0A, 0xD0, 0x00, 0xD4, 0xE1, 0xA8, 0x90, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3
|
|
.byte 0x00, 0x00, 0xA0, 0x13, 0x00, 0x00, 0x00, 0x1A, 0x01, 0x00, 0xA0, 0xE3, 0x00, 0x00, 0x50, 0xE3
|
|
.byte 0x06, 0x00, 0x00, 0x0A, 0xA0, 0x00, 0x9F, 0xE5, 0x00, 0x20, 0xA0, 0xE3, 0x00, 0x10, 0x90, 0xE5
|
|
.byte 0x74, 0x20, 0x81, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0x78, 0x00, 0x91, 0xE5, 0x70, 0x00, 0x81, 0xE5
|
|
_0238AF10:
|
|
mov r0, #1
|
|
b _0238AF94
|
|
_0238AF18:
|
|
.byte 0x55, 0xC6, 0xF2, 0xEB, 0x10, 0xFD, 0xFF, 0xEB
|
|
.byte 0x00, 0x00, 0x50, 0xE3, 0x19, 0x00, 0x00, 0x0A, 0x6C, 0xC6, 0xF2, 0xEB, 0x00, 0x00, 0x50, 0xE3
|
|
.byte 0x16, 0x00, 0x00, 0x1A, 0x81, 0xC6, 0xF2, 0xEB, 0x5C, 0x00, 0x9F, 0xE5, 0x02, 0x10, 0xA0, 0xE3
|
|
.byte 0x00, 0x00, 0x90, 0xE5, 0x6C, 0x10, 0x80, 0xE5, 0x10, 0x00, 0x00, 0xEA, 0x03, 0x10, 0xA0, 0xE3
|
|
.byte 0x6C, 0x10, 0x84, 0xE5, 0x00, 0x10, 0x90, 0xE5, 0x60, 0x02, 0x91, 0xE5, 0x02, 0x00, 0x50, 0xE3
|
|
.byte 0x07, 0x00, 0x00, 0x1A, 0x80, 0x00, 0x91, 0xE5, 0x01, 0x0C, 0x10, 0xE3, 0x05, 0x00, 0x00, 0x0A
|
|
.byte 0x0C, 0x01, 0x91, 0xE5, 0x08, 0x21, 0x91, 0xE5, 0x00, 0x10, 0xA0, 0xE3, 0x32, 0xFF, 0x2F, 0xE1
|
|
.byte 0x00, 0x00, 0x00, 0xEA, 0xB7, 0x6F, 0xFD, 0xEB, 0x04, 0x00, 0xA0, 0xE3, 0x00, 0x00, 0x00, 0xEA
|
|
.byte 0x01, 0x00, 0xA0, 0xE3
|
|
_0238AF94:
|
|
add sp, sp, #0x124
|
|
pop {r4, r5, r6, r7, r8, sb, pc}
|
|
.align 2, 0
|
|
_0238AF9C: .4byte 0x0238BE00
|
|
_0238AFA0:
|
|
.byte 0x44, 0xBD, 0x38, 0x02, 0x08, 0x30, 0x00, 0x00, 0x64, 0xBB, 0x38, 0x02, 0x1E, 0x04, 0x00, 0x00
|
|
.byte 0x1F, 0x04, 0x00, 0x00, 0x25, 0x04, 0x00, 0x00, 0x18, 0x30, 0x00, 0x00, 0x26, 0x04, 0x00, 0x00
|
|
.byte 0x27, 0x04, 0x00, 0x00, 0x28, 0x04, 0x00, 0x00, 0x29, 0x04, 0x00, 0x00, 0x22, 0x04, 0x00, 0x00
|
|
.byte 0x21, 0x04, 0x00, 0x00, 0x23, 0x04, 0x00, 0x00, 0x24, 0x04, 0x00, 0x00, 0x2A, 0x04, 0x00, 0x00
|
|
.byte 0x86, 0x01, 0x00, 0x00, 0x34, 0xBB, 0x38, 0x02, 0x13, 0x00, 0x30, 0x00, 0xB4, 0xBB, 0x38, 0x02
|
|
.byte 0x54, 0xBB, 0x38, 0x02, 0x33, 0x00, 0x30, 0x00, 0x84, 0xBB, 0x38, 0x02, 0xD4, 0xBB, 0x38, 0x02
|
|
.byte 0xCC, 0xBC, 0x38, 0x02, 0x2C, 0xBC, 0x38, 0x02, 0x04, 0xBD, 0x38, 0x02, 0x94, 0xBC, 0x38, 0x02
|
|
.byte 0xFC, 0xBB, 0x38, 0x02, 0x5C, 0xBC, 0x38, 0x02, 0x44, 0xBB, 0x38, 0x02, 0x13, 0x02, 0x00, 0x00
|
|
_0238B020: .4byte 0x0238BB74
|
|
_0238B024: .4byte 0x0238BB9C
|
|
arm_func_end ov17_0238ADFC
|
|
|
|
arm_func_start ov17_0238B028
|
|
ov17_0238B028: @ 0x0238B028
|
|
ldr r1, _0238B044 @ =0x0238BE00
|
|
mov r3, #3
|
|
ldr r2, [r1]
|
|
str r3, [r2, #0x74]
|
|
ldr r1, [r1]
|
|
str r0, [r1, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B044: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B028
|
|
_0238B048:
|
|
.byte 0x24, 0x00, 0x9F, 0xE5, 0x03, 0x20, 0xA0, 0xE3
|
|
.byte 0x00, 0x10, 0x90, 0xE5, 0x1C, 0x30, 0x9F, 0xE5, 0xBE, 0x27, 0xC1, 0xE1, 0x00, 0x20, 0x90, 0xE5
|
|
.byte 0x01, 0x10, 0xA0, 0xE3, 0x0C, 0x30, 0x82, 0xE5, 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5
|
|
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02, 0x86, 0x01, 0x00, 0x00
|
|
|
|
arm_func_start ov17_0238B07C
|
|
ov17_0238B07C: @ 0x0238B07C
|
|
push {r3, lr}
|
|
ldr r0, _0238B0B0 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, #9]
|
|
cmp r0, #0
|
|
beq _0238B09C
|
|
bl FUN_020556A8
|
|
bl FUN_0203C7E4
|
|
_0238B09C:
|
|
ldr r0, _0238B0B0 @ =0x0238BE00
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B0B0: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B07C
|
|
|
|
arm_func_start ov17_0238B0B4
|
|
ov17_0238B0B4: @ 0x0238B0B4
|
|
push {r3, lr}
|
|
ldr r0, _0238B108 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, #9]
|
|
cmp r0, #0
|
|
beq _0238B0E8
|
|
bl FUN_0203C910
|
|
cmp r0, #0
|
|
popeq {r3, pc}
|
|
ldr r0, _0238B108 @ =0x0238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
strb r1, [r0, #9]
|
|
_0238B0E8:
|
|
ldr r0, _0238B108 @ =0x0238BE00
|
|
mov r3, #7
|
|
ldr r2, [r0]
|
|
mov r1, #3
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B108: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B0B4
|
|
|
|
arm_func_start ov17_0238B10C
|
|
ov17_0238B10C: @ 0x0238B10C
|
|
push {r3, lr}
|
|
ldr r0, _0238B190 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #2]
|
|
bl FUN_0202B4F0
|
|
cmp r0, #0
|
|
popne {r3, pc}
|
|
ldr r0, _0238B190 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #2]
|
|
bl FUN_0202B57C
|
|
cmp r0, #2
|
|
beq _0238B150
|
|
cmp r0, #3
|
|
beq _0238B15C
|
|
cmp r0, #4
|
|
b _0238B184
|
|
_0238B150:
|
|
mov r0, #0xc
|
|
bl ov17_0238B028
|
|
pop {r3, pc}
|
|
_0238B15C:
|
|
bl FUN_0204AFC0
|
|
cmp r0, #4
|
|
cmpne r0, #5
|
|
bne _0238B178
|
|
mov r0, #9
|
|
bl ov17_0238B028
|
|
pop {r3, pc}
|
|
_0238B178:
|
|
mov r0, #6
|
|
bl ov17_0238B028
|
|
pop {r3, pc}
|
|
_0238B184:
|
|
mov r0, #4
|
|
bl ov17_0238B028
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B190: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B10C
|
|
_0238B194:
|
|
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5
|
|
.byte 0x05, 0x10, 0xA0, 0xE3, 0xBE, 0x37, 0xC2, 0xE1, 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5
|
|
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B1B8
|
|
ov17_0238B1B8: @ 0x0238B1B8
|
|
push {r3, lr}
|
|
ldr r0, _0238B1E4 @ =0x0238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
strh r1, [r0, #0x7e]
|
|
bl ov17_0238A278
|
|
ldr r0, _0238B1E4 @ =0x0238BE00
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x6c]
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B1E4: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B1B8
|
|
_0238B1E8:
|
|
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3
|
|
.byte 0x00, 0x20, 0x90, 0xE5, 0x07, 0x10, 0xA0, 0xE3, 0xBE, 0x37, 0xC2, 0xE1, 0x00, 0x00, 0x90, 0xE5
|
|
.byte 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02, 0x0C, 0x00, 0x9F, 0xE5
|
|
.byte 0x08, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
|
|
.byte 0x00, 0xBE, 0x38, 0x02, 0x0C, 0x00, 0x9F, 0xE5, 0x00, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5
|
|
.byte 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5
|
|
.byte 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x0A, 0x10, 0xA0, 0xE3, 0xBE, 0x37, 0xC2, 0xE1
|
|
.byte 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
.byte 0x0C, 0x00, 0x9F, 0xE5, 0x0B, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5
|
|
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02, 0x0C, 0x00, 0x9F, 0xE5, 0x00, 0x10, 0xA0, 0xE3
|
|
.byte 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
.byte 0x18, 0x00, 0x9F, 0xE5, 0x20, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x0D, 0x10, 0xA0, 0xE3
|
|
.byte 0xBE, 0x37, 0xC2, 0xE1, 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
|
|
.byte 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B2B4
|
|
ov17_0238B2B4: @ 0x0238B2B4
|
|
push {r3, lr}
|
|
bl FUN_0203A5A8
|
|
cmp r0, #0
|
|
beq _0238B31C
|
|
bl FUN_0203A9EC
|
|
cmp r0, #0
|
|
popeq {r3, pc}
|
|
add r1, sp, #0
|
|
mov r0, #0
|
|
bl FUN_0200625C
|
|
ldrh r0, [sp]
|
|
tst r0, #8
|
|
popeq {r3, pc}
|
|
mov r0, #0
|
|
bl FUN_02017CCC
|
|
bl FUN_0203AAB0
|
|
ldr r1, _0238B368 @ =0x0238BE00
|
|
ldr r1, [r1]
|
|
add r1, r1, #0x200
|
|
strh r0, [r1, #0x58]
|
|
bl FUN_0203A5F0
|
|
ldr r0, _0238B368 @ =0x0238BE00
|
|
mov r1, #0x1e
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
pop {r3, pc}
|
|
_0238B31C:
|
|
bl FUN_0203AA20
|
|
mvn r1, #0
|
|
cmp r0, r1
|
|
bne _0238B33C
|
|
bl FUN_0203A51C
|
|
mov r0, #0
|
|
bl ov17_0238B028
|
|
pop {r3, pc}
|
|
_0238B33C:
|
|
ldr r2, _0238B368 @ =0x0238BE00
|
|
ldr r1, [r2]
|
|
add r1, r1, #0x200
|
|
strh r0, [r1, #0x58]
|
|
ldr r0, [r2]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl FUN_0203FA64
|
|
mov r0, #0xe
|
|
bl ov17_0238B028
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B368: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B2B4
|
|
_0238B36C:
|
|
.byte 0x18, 0x00, 0x9F, 0xE5
|
|
.byte 0x28, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x0F, 0x10, 0xA0, 0xE3, 0xBE, 0x37, 0xC2, 0xE1
|
|
.byte 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B390
|
|
ov17_0238B390: @ 0x0238B390
|
|
push {r4, r5, r6, r7, r8, sb, sl, lr}
|
|
ldr r0, _0238B4CC @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #4]
|
|
bl FUN_0202B4F0
|
|
cmp r0, #0
|
|
popne {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
ldr r0, _0238B4CC @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #4]
|
|
bl FUN_0202B57C
|
|
sub r0, r0, #5
|
|
cmp r0, #7
|
|
addls pc, pc, r0, lsl #2
|
|
b _0238B4BC
|
|
_0238B3CC: @ jump table
|
|
b _0238B3EC @ case 0
|
|
b _0238B3F8 @ case 1
|
|
b _0238B46C @ case 2
|
|
b _0238B478 @ case 3
|
|
b _0238B484 @ case 4
|
|
b _0238B490 @ case 5
|
|
b _0238B49C @ case 6
|
|
b _0238B4BC @ case 7
|
|
_0238B3EC:
|
|
mov r0, #0x10
|
|
bl ov17_0238B028
|
|
pop {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B3F8:
|
|
mov sl, #0
|
|
ldr r6, _0238B4CC @ =0x0238BE00
|
|
ldr r4, _0238B4D0 @ =0x0000022B
|
|
ldr r7, _0238B4D4 @ =0x020B0A48
|
|
mov r8, sl
|
|
mov sb, #1
|
|
mov r5, #0x44
|
|
_0238B414:
|
|
smulbb r0, sl, r5
|
|
ldr r1, [r7]
|
|
ldrb r0, [r1, r0]
|
|
tst r0, #1
|
|
movne r0, sb
|
|
moveq r0, r8
|
|
tst r0, #0xff
|
|
ldrne r0, [r6]
|
|
addne r0, r0, #0x200
|
|
ldrshne r0, [r0, #0x58]
|
|
cmpne r0, sl
|
|
beq _0238B44C
|
|
mov r0, sl
|
|
bl FUN_02056410
|
|
_0238B44C:
|
|
add r0, sl, #1
|
|
lsl r0, r0, #0x10
|
|
cmp r4, r0, asr #16
|
|
asr sl, r0, #0x10
|
|
bgt _0238B414
|
|
mov r0, #0x13
|
|
bl ov17_0238B028
|
|
pop {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B46C:
|
|
mov r0, #0x15
|
|
bl ov17_0238B028
|
|
pop {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B478:
|
|
mov r0, #0x18
|
|
bl ov17_0238B028
|
|
pop {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B484:
|
|
mov r0, #0x1e
|
|
bl ov17_0238B028
|
|
pop {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B490:
|
|
mov r0, #0x20
|
|
bl ov17_0238B028
|
|
pop {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B49C:
|
|
ldr r0, _0238B4CC @ =0x0238BE00
|
|
mov r3, #0
|
|
ldr r2, [r0]
|
|
mov r1, #0x22
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
pop {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B4BC:
|
|
bl FUN_0203A638
|
|
mov r0, #0xc
|
|
bl ov17_0238B028
|
|
pop {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
.align 2, 0
|
|
_0238B4CC: .4byte 0x0238BE00
|
|
_0238B4D0: .4byte 0x0000022B
|
|
_0238B4D4: .4byte 0x020B0A48
|
|
arm_func_end ov17_0238B390
|
|
_0238B4D8:
|
|
.byte 0x2C, 0x10, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3
|
|
.byte 0x00, 0x00, 0x91, 0xE5, 0x11, 0x20, 0xA0, 0xE3, 0xBE, 0x37, 0xC0, 0xE1, 0x00, 0x30, 0x91, 0xE5
|
|
.byte 0x02, 0x0C, 0x83, 0xE2, 0xF8, 0x05, 0xD0, 0xE1, 0x02, 0x08, 0x80, 0xE3, 0x0C, 0x00, 0x83, 0xE5
|
|
.byte 0x00, 0x00, 0x91, 0xE5, 0x78, 0x20, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
.byte 0x08, 0x40, 0x2D, 0xE9, 0x05, 0x00, 0xA0, 0xE3, 0xCC, 0x31, 0xF2, 0xEB, 0x0C, 0x00, 0x9F, 0xE5
|
|
.byte 0x12, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5, 0x08, 0x80, 0xBD, 0xE8
|
|
.byte 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B534
|
|
ov17_0238B534: @ 0x0238B534
|
|
push {r3, lr}
|
|
mov r0, #5
|
|
bl FUN_02017C10
|
|
cmp r0, #0
|
|
popne {r3, pc}
|
|
ldr r0, _0238B578 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl FUN_02056754
|
|
bl FUN_02057444
|
|
bl FUN_022DC504
|
|
ldr r0, _0238B578 @ =0x0238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B578: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B534
|
|
|
|
arm_func_start ov17_0238B57C
|
|
ov17_0238B57C: @ 0x0238B57C
|
|
push {r3, lr}
|
|
ldr r1, _0238B5D8 @ =0x0238BE00
|
|
mov r3, #3
|
|
ldr r0, [r1]
|
|
add r2, r3, #0x1400
|
|
strh r3, [r0, #0x7e]
|
|
ldr r3, [r1]
|
|
add r0, r3, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
orr r0, r0, #0x20000
|
|
str r0, [r3, #0xc]
|
|
ldr r0, [r1]
|
|
str r2, [r0, #0x30]
|
|
ldr r0, [r1]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl FUN_02056554
|
|
bl FUN_02057444
|
|
ldr r0, _0238B5D8 @ =0x0238BE00
|
|
mov r1, #0x14
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B5D8: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B57C
|
|
_0238B5DC:
|
|
.byte 0x08, 0x40, 0x2D, 0xE9
|
|
.byte 0xC7, 0x43, 0xFD, 0xEB, 0x0C, 0x00, 0x9F, 0xE5, 0x00, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5
|
|
.byte 0x78, 0x10, 0x80, 0xE5, 0x08, 0x80, 0xBD, 0xE8, 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B5FC
|
|
ov17_0238B5FC: @ 0x0238B5FC
|
|
push {r3, lr}
|
|
ldr r1, _0238B684 @ =0x0238BE00
|
|
mov r3, #3
|
|
ldr r2, [r1]
|
|
mov r0, #7
|
|
strh r3, [r2, #0x7e]
|
|
ldr r2, [r1]
|
|
add r1, r2, #0x200
|
|
ldrsh r1, [r1, #0x58]
|
|
orr r1, r1, #0x20000
|
|
str r1, [r2, #0xc]
|
|
bl FUN_02017C10
|
|
cmp r0, #0
|
|
popne {r3, pc}
|
|
ldr r0, _0238B684 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl FUN_020563BC
|
|
mvn r1, #0
|
|
cmp r0, r1
|
|
beq _0238B670
|
|
bl FUN_02058138
|
|
ldr r0, _0238B684 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl FUN_020566C4
|
|
bl FUN_02057444
|
|
_0238B670:
|
|
ldr r0, _0238B684 @ =0x0238BE00
|
|
mov r1, #0x16
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B684: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B5FC
|
|
_0238B688:
|
|
.byte 0x08, 0x40, 0x2D, 0xE9, 0x07, 0x00, 0xA0, 0xE3
|
|
.byte 0x6E, 0x31, 0xF2, 0xEB, 0x0C, 0x00, 0x9F, 0xE5, 0x17, 0x10, 0xA0, 0xE3, 0x00, 0x00, 0x90, 0xE5
|
|
.byte 0x78, 0x10, 0x80, 0xE5, 0x08, 0x80, 0xBD, 0xE8, 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B6AC
|
|
ov17_0238B6AC: @ 0x0238B6AC
|
|
push {r3, lr}
|
|
mov r0, #7
|
|
bl FUN_02017C10
|
|
cmp r0, #0
|
|
popne {r3, pc}
|
|
ldr r0, _0238B6D8 @ =0x0238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bl FUN_022DC504
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B6D8: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B6AC
|
|
_0238B6DC:
|
|
.byte 0x2C, 0x10, 0x9F, 0xE5
|
|
.byte 0x03, 0x30, 0xA0, 0xE3, 0x00, 0x00, 0x91, 0xE5, 0x19, 0x20, 0xA0, 0xE3, 0xBE, 0x37, 0xC0, 0xE1
|
|
.byte 0x00, 0x30, 0x91, 0xE5, 0x02, 0x0C, 0x83, 0xE2, 0xF8, 0x05, 0xD0, 0xE1, 0x02, 0x08, 0x80, 0xE3
|
|
.byte 0x0C, 0x00, 0x83, 0xE5, 0x00, 0x00, 0x91, 0xE5, 0x78, 0x20, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1
|
|
.byte 0x00, 0xBE, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5, 0x13, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5
|
|
.byte 0x1A, 0x10, 0xA0, 0xE3, 0xBE, 0x37, 0xC2, 0xE1, 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5
|
|
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B738
|
|
ov17_0238B738: @ 0x0238B738
|
|
push {r3, lr}
|
|
ldr r0, _0238B7A4 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #3]
|
|
bl FUN_0202B4F0
|
|
cmp r0, #0
|
|
popne {r3, pc}
|
|
ldr r0, _0238B7A4 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #3]
|
|
bl FUN_0202B57C
|
|
cmp r0, #0
|
|
beq _0238B780
|
|
cmp r0, #1
|
|
popne {r3, pc}
|
|
mov r0, #0
|
|
bl ov17_0238B028
|
|
pop {r3, pc}
|
|
_0238B780:
|
|
ldr r1, _0238B7A4 @ =0x0238BE00
|
|
mov r0, #0x1b
|
|
ldr r2, [r1]
|
|
add r1, r2, #0x200
|
|
ldrsh r1, [r1, #0x58]
|
|
orr r1, r1, #0x20000
|
|
str r1, [r2, #0xc]
|
|
bl ov17_0238B028
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B7A4: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B738
|
|
_0238B7A8:
|
|
.byte 0x18, 0x00, 0x9F, 0xE5, 0x03, 0x30, 0xA0, 0xE3
|
|
.byte 0x00, 0x20, 0x90, 0xE5, 0x1C, 0x10, 0xA0, 0xE3, 0xBE, 0x37, 0xC2, 0xE1, 0x00, 0x00, 0x90, 0xE5
|
|
.byte 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B7CC
|
|
ov17_0238B7CC: @ 0x0238B7CC
|
|
push {r3, lr}
|
|
ldr r1, _0238B850 @ =0x0238BE00
|
|
mov r0, #3
|
|
ldr r1, [r1]
|
|
strh r0, [r1, #0x7e]
|
|
bl FUN_02017C50
|
|
ldr r0, _0238B850 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl FUN_020563BC
|
|
mvn r1, #0
|
|
cmp r0, r1
|
|
beq _0238B81C
|
|
bl FUN_02058138
|
|
ldr r0, _0238B850 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl FUN_020566C4
|
|
_0238B81C:
|
|
ldr r0, _0238B850 @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl FUN_02055B20
|
|
bl FUN_0203C9C4
|
|
bl FUN_0203AF0C
|
|
bl FUN_02057180
|
|
ldr r0, _0238B850 @ =0x0238BE00
|
|
mov r1, #0x1d
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B850: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B7CC
|
|
_0238B854:
|
|
.byte 0x08, 0x40, 0x2D, 0xE9, 0x03, 0x00, 0xA0, 0xE3, 0xEB, 0x30, 0xF2, 0xEB
|
|
.byte 0x00, 0x00, 0x50, 0xE3, 0x0C, 0x00, 0x9F, 0x05, 0x00, 0x10, 0xA0, 0x03, 0x00, 0x00, 0x90, 0x05
|
|
.byte 0x78, 0x10, 0x80, 0x05, 0x08, 0x80, 0xBD, 0xE8, 0x00, 0xBE, 0x38, 0x02, 0x18, 0x00, 0x9F, 0xE5
|
|
.byte 0x40, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5, 0x1F, 0x10, 0xA0, 0xE3, 0xBE, 0x37, 0xC2, 0xE1
|
|
.byte 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B8A0
|
|
ov17_0238B8A0: @ 0x0238B8A0
|
|
push {r3, lr}
|
|
bl FUN_0203F398
|
|
cmp r0, #1
|
|
popne {r3, pc}
|
|
bl FUN_0203F990
|
|
ldr r0, _0238B8D0 @ =0x0238BE00
|
|
mvn r2, #1
|
|
ldr r1, [r0]
|
|
mov r0, #0xc
|
|
strb r2, [r1, #5]
|
|
bl ov17_0238B028
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B8D0: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B8A0
|
|
_0238B8D4:
|
|
.byte 0x18, 0x00, 0x9F, 0xE5, 0x80, 0x30, 0xA0, 0xE3, 0x00, 0x20, 0x90, 0xE5
|
|
.byte 0x21, 0x10, 0xA0, 0xE3, 0xBE, 0x37, 0xC2, 0xE1, 0x00, 0x00, 0x90, 0xE5, 0x78, 0x10, 0x80, 0xE5
|
|
.byte 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B8F8
|
|
ov17_0238B8F8: @ 0x0238B8F8
|
|
push {r4, lr}
|
|
bl FUN_020407EC
|
|
movs r4, r0
|
|
beq _0238B91C
|
|
ldr r0, _0238B95C @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl FUN_0203FD80
|
|
_0238B91C:
|
|
cmp r4, #1
|
|
beq _0238B944
|
|
cmp r4, #2
|
|
beq _0238B938
|
|
cmp r4, #7
|
|
beq _0238B950
|
|
pop {r4, pc}
|
|
_0238B938:
|
|
mov r0, #0x24
|
|
bl ov17_0238B028
|
|
pop {r4, pc}
|
|
_0238B944:
|
|
mov r0, #0xc
|
|
bl ov17_0238B028
|
|
pop {r4, pc}
|
|
_0238B950:
|
|
mov r0, #0x26
|
|
bl ov17_0238B028
|
|
pop {r4, pc}
|
|
.align 2, 0
|
|
_0238B95C: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B8F8
|
|
|
|
arm_func_start ov17_0238B960
|
|
ov17_0238B960: @ 0x0238B960
|
|
push {r3, lr}
|
|
ldr r1, _0238B9AC @ =0x0238BE00
|
|
ldr r0, _0238B9B0 @ =0x020B0A48
|
|
ldr r2, [r1]
|
|
ldr r1, [r0]
|
|
add r0, r2, #0x200
|
|
ldrsh r2, [r0, #0x58]
|
|
mov r0, #0x44
|
|
mov r3, #0
|
|
smlabb r1, r2, r0, r1
|
|
ldrsh r0, [r1, #4]
|
|
ldrsh r2, [r1, #8]
|
|
add r1, r1, #0x14
|
|
bl FUN_02041A40
|
|
ldr r0, _0238B9AC @ =0x0238BE00
|
|
mov r1, #0x23
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
pop {r3, pc}
|
|
.align 2, 0
|
|
_0238B9AC: .4byte 0x0238BE00
|
|
_0238B9B0: .4byte 0x020B0A48
|
|
arm_func_end ov17_0238B960
|
|
_0238B9B4:
|
|
.byte 0x08, 0x40, 0x2D, 0xE9, 0x6F, 0xD8, 0xF2, 0xEB, 0x01, 0x00, 0x50, 0xE3
|
|
.byte 0x08, 0x80, 0xBD, 0x18, 0xCA, 0xD9, 0xF2, 0xEB, 0x47, 0x2E, 0xF3, 0xEB, 0x0C, 0x00, 0xA0, 0xE3
|
|
.byte 0x94, 0xFD, 0xFF, 0xEB, 0x08, 0x80, 0xBD, 0xE8, 0x18, 0x00, 0x9F, 0xE5, 0x0A, 0x3D, 0xA0, 0xE3
|
|
.byte 0x00, 0x20, 0x90, 0xE5, 0x25, 0x10, 0xA0, 0xE3, 0xBE, 0x37, 0xC2, 0xE1, 0x00, 0x00, 0x90, 0xE5
|
|
.byte 0x78, 0x10, 0x80, 0xE5, 0x1E, 0xFF, 0x2F, 0xE1, 0x00, 0xBE, 0x38, 0x02
|
|
|
|
arm_func_start ov17_0238B9FC
|
|
ov17_0238B9FC: @ 0x0238B9FC
|
|
push {r4, lr}
|
|
ldr r0, _0238BA7C @ =0x0238BE00
|
|
mov r4, #0
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #8]
|
|
bl FUN_0202B4F0
|
|
cmp r0, #0
|
|
popne {r4, pc}
|
|
ldr r0, _0238BA7C @ =0x0238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #8]
|
|
bl FUN_0202B57C
|
|
cmp r0, #3
|
|
beq _0238BA3C
|
|
cmp r0, #4
|
|
b _0238BA48
|
|
_0238BA3C:
|
|
mov r0, #0x26
|
|
bl ov17_0238B028
|
|
b _0238BA4C
|
|
_0238BA48:
|
|
mov r4, #1
|
|
_0238BA4C:
|
|
cmp r4, #0
|
|
popeq {r4, pc}
|
|
ldr r0, _0238BA7C @ =0x0238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #6]
|
|
cmp r0, r1
|
|
beq _0238BA70
|
|
bl FUN_020307EC
|
|
_0238BA70:
|
|
mov r0, #0x20
|
|
bl ov17_0238B028
|
|
pop {r4, pc}
|
|
.align 2, 0
|
|
_0238BA7C: .4byte 0x0238BE00
|
|
arm_func_end ov17_0238B9FC
|
|
@ 0x0238BA80
|