pokefirered/asm/unk_815C27C.s
2017-12-16 23:54:22 -08:00

921 lines
17 KiB
ArmAsm

.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_815C27C
sub_815C27C: @ 815C27C
push {r4-r7,lr}
sub sp, 0x4
adds r6, r0, 0
adds r5, r1, 0
bl sub_815C8C8
movs r7, 0x2
ldr r4, _0815C2BC @ =gUnknown_3003F84
_0815C28C:
bl sub_815C898
ldr r0, _0815C2C0 @ =gUnknown_3002062
ldrh r1, [r0]
movs r0, 0x2
ands r0, r1
cmp r0, 0
beq _0815C29E
strb r7, [r4]
_0815C29E:
movs r0, 0x1
adds r1, r6, 0
adds r2, r5, 0
movs r3, 0
bl sub_815C498
adds r1, r0, 0
ldr r0, _0815C2C4 @ =gUnknown_3002064
strh r1, [r0]
movs r0, 0x13
ands r0, r1
cmp r0, 0x10
bne _0815C2C8
movs r4, 0
b _0815C2EA
.align 2, 0
_0815C2BC: .4byte gUnknown_3003F84
_0815C2C0: .4byte gUnknown_3002062
_0815C2C4: .4byte gUnknown_3002064
_0815C2C8:
movs r0, 0x8
ands r0, r1
cmp r0, 0
beq _0815C2D4
movs r4, 0x1
b _0815C2EA
_0815C2D4:
movs r0, 0x4
ands r0, r1
lsls r0, 16
lsrs r0, 16
cmp r0, 0
bne _0815C2E8
strb r0, [r4]
bl VBlankIntrWait
b _0815C28C
_0815C2E8:
movs r4, 0x2
_0815C2EA:
movs r0, 0
str r0, [sp]
ldr r1, _0815C308 @ =gUnknown_3002048
ldr r2, _0815C30C @ =0x05000006
mov r0, sp
bl CpuSet
bl sub_815C91C
adds r0, r4, 0
add sp, 0x4
pop {r4-r7}
pop {r1}
bx r1
.align 2, 0
_0815C308: .4byte gUnknown_3002048
_0815C30C: .4byte 0x05000006
thumb_func_end sub_815C27C
thumb_func_start sub_815C310
sub_815C310: @ 815C310
push {r4-r6,lr}
sub sp, 0x4
adds r5, r0, 0
bl sub_815C8C8
movs r6, 0x2
ldr r4, _0815C350 @ =gUnknown_3003F84
_0815C31E:
bl sub_815C898
ldr r0, _0815C354 @ =gUnknown_3002062
ldrh r1, [r0]
movs r0, 0x2
ands r0, r1
cmp r0, 0
beq _0815C330
strb r6, [r4]
_0815C330:
movs r0, 0
movs r1, 0
movs r2, 0
adds r3, r5, 0
bl sub_815C498
adds r1, r0, 0
ldr r0, _0815C358 @ =gUnknown_3002064
strh r1, [r0]
movs r0, 0x13
ands r0, r1
cmp r0, 0x10
bne _0815C35C
movs r4, 0
b _0815C37E
.align 2, 0
_0815C350: .4byte gUnknown_3003F84
_0815C354: .4byte gUnknown_3002062
_0815C358: .4byte gUnknown_3002064
_0815C35C:
movs r0, 0x8
ands r0, r1
cmp r0, 0
beq _0815C368
movs r4, 0x1
b _0815C37E
_0815C368:
movs r0, 0x4
ands r0, r1
lsls r0, 16
lsrs r0, 16
cmp r0, 0
bne _0815C37C
strb r0, [r4]
bl VBlankIntrWait
b _0815C31E
_0815C37C:
movs r4, 0x2
_0815C37E:
movs r0, 0
str r0, [sp]
ldr r1, _0815C39C @ =gUnknown_3002048
ldr r2, _0815C3A0 @ =0x05000006
mov r0, sp
bl CpuSet
bl sub_815C91C
adds r0, r4, 0
add sp, 0x4
pop {r4-r6}
pop {r1}
bx r1
.align 2, 0
_0815C39C: .4byte gUnknown_3002048
_0815C3A0: .4byte 0x05000006
thumb_func_end sub_815C310
thumb_func_start sub_815C3A4
sub_815C3A4: @ 815C3A4
push {r4,lr}
ldr r4, _0815C3D0 @ =0x04000208
movs r3, 0
strh r3, [r4]
ldr r2, _0815C3D4 @ =0x04000200
ldrh r1, [r2]
ldr r0, _0815C3D8 @ =0x0000ff3f
ands r0, r1
strh r0, [r2]
movs r0, 0x1
strh r0, [r4]
ldr r0, _0815C3DC @ =0x04000128
strh r3, [r0]
subs r0, 0x1A
strh r3, [r0]
ldr r1, _0815C3E0 @ =0x04000202
movs r0, 0xC0
strh r0, [r1]
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0815C3D0: .4byte 0x04000208
_0815C3D4: .4byte 0x04000200
_0815C3D8: .4byte 0x0000ff3f
_0815C3DC: .4byte 0x04000128
_0815C3E0: .4byte 0x04000202
thumb_func_end sub_815C3A4
thumb_func_start sub_815C3E4
sub_815C3E4: @ 815C3E4
push {r4-r7,lr}
sub sp, 0x4
ldr r5, _0815C43C @ =0x04000208
movs r4, 0
strh r4, [r5]
ldr r3, _0815C440 @ =0x04000200
ldrh r1, [r3]
ldr r0, _0815C444 @ =0x0000ff3f
ands r0, r1
strh r0, [r3]
movs r6, 0x1
strh r6, [r5]
ldr r0, _0815C448 @ =0x04000134
strh r4, [r0]
ldr r2, _0815C44C @ =0x04000128
movs r1, 0x80
lsls r1, 6
adds r0, r1, 0
strh r0, [r2]
ldrh r0, [r2]
ldr r7, _0815C450 @ =0x00004003
adds r1, r7, 0
orrs r0, r1
strh r0, [r2]
strh r4, [r5]
ldrh r0, [r3]
movs r1, 0x80
orrs r0, r1
strh r0, [r3]
strh r6, [r5]
ldr r1, _0815C454 @ =gUnknown_3002048
ldrb r0, [r1, 0x1]
cmp r0, 0
bne _0815C432
str r0, [sp]
ldr r2, _0815C458 @ =0x05000006
mov r0, sp
bl CpuSet
_0815C432:
add sp, 0x4
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_0815C43C: .4byte 0x04000208
_0815C440: .4byte 0x04000200
_0815C444: .4byte 0x0000ff3f
_0815C448: .4byte 0x04000134
_0815C44C: .4byte 0x04000128
_0815C450: .4byte 0x00004003
_0815C454: .4byte gUnknown_3002048
_0815C458: .4byte 0x05000006
thumb_func_end sub_815C3E4
thumb_func_start sub_815C45C
sub_815C45C: @ 815C45C
ldr r0, _0815C484 @ =0x04000134
movs r3, 0
strh r3, [r0]
ldr r2, _0815C488 @ =0x04000128
movs r1, 0xA0
lsls r1, 7
adds r0, r1, 0
strh r0, [r2]
ldrh r0, [r2]
movs r1, 0x8
orrs r0, r1
strh r0, [r2]
ldr r0, _0815C48C @ =gUnknown_3003F84
strb r3, [r0]
ldr r0, _0815C490 @ =gUnknown_3002066
strh r3, [r0]
ldr r1, _0815C494 @ =gUnknown_3002068
movs r0, 0
str r0, [r1]
bx lr
.align 2, 0
_0815C484: .4byte 0x04000134
_0815C488: .4byte 0x04000128
_0815C48C: .4byte gUnknown_3003F84
_0815C490: .4byte gUnknown_3002066
_0815C494: .4byte gUnknown_3002068
thumb_func_end sub_815C45C
thumb_func_start sub_815C498
sub_815C498: @ 815C498
push {r4-r6,lr}
adds r4, r1, 0
adds r5, r2, 0
adds r6, r3, 0
lsls r0, 24
lsrs r2, r0, 24
ldr r0, _0815C4B8 @ =gUnknown_3002048
ldrb r0, [r0, 0x1]
cmp r0, 0x6
bls _0815C4AE
b _0815C5F4
_0815C4AE:
lsls r0, 2
ldr r1, _0815C4BC @ =_0815C4C0
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
_0815C4B8: .4byte gUnknown_3002048
_0815C4BC: .4byte _0815C4C0
.align 2, 0
_0815C4C0:
.4byte _0815C4DC
.4byte _0815C4F0
.4byte _0815C510
.4byte _0815C524
.4byte _0815C59C
.4byte _0815C5AC
.4byte _0815C5E4
_0815C4DC:
bl sub_815C3E4
ldr r1, _0815C4EC @ =gUnknown_3002048
movs r0, 0x1
strb r0, [r1, 0x2]
strb r0, [r1, 0x1]
b _0815C5F4
.align 2, 0
_0815C4EC: .4byte gUnknown_3002048
_0815C4F0:
adds r0, r2, 0
bl sub_815C610
lsls r0, 16
cmp r0, 0
beq _0815C500
bl sub_815C864
_0815C500:
ldr r0, _0815C50C @ =gUnknown_3003F84
ldrb r0, [r0]
cmp r0, 0x2
beq _0815C50A
b _0815C5F4
_0815C50A:
b _0815C52C
.align 2, 0
_0815C50C: .4byte gUnknown_3003F84
_0815C510:
bl sub_815C45C
adds r0, r4, 0
adds r1, r5, 0
adds r2, r6, 0
bl sub_815C644
ldr r1, _0815C538 @ =gUnknown_3002048
movs r0, 0x3
strb r0, [r1, 0x1]
_0815C524:
ldr r0, _0815C53C @ =gUnknown_3003F84
ldrb r0, [r0]
cmp r0, 0x2
bne _0815C540
_0815C52C:
ldr r1, _0815C538 @ =gUnknown_3002048
strb r0, [r1, 0x4]
movs r0, 0x6
strb r0, [r1, 0x1]
b _0815C5F4
.align 2, 0
_0815C538: .4byte gUnknown_3002048
_0815C53C: .4byte gUnknown_3003F84
_0815C540:
ldr r2, _0815C580 @ =gUnknown_3002066
ldrh r0, [r2]
adds r0, 0x1
strh r0, [r2]
ldr r1, _0815C584 @ =gUnknown_3002068
ldr r0, [r1]
adds r3, r0, 0x1
str r3, [r1]
ldr r1, _0815C588 @ =gUnknown_3002048
ldrb r0, [r1]
cmp r0, 0
bne _0815C564
cmp r3, 0x3C
bls _0815C564
movs r0, 0x1
strb r0, [r1, 0x4]
movs r0, 0x6
strb r0, [r1, 0x1]
_0815C564:
ldr r4, _0815C588 @ =gUnknown_3002048
ldrb r0, [r4, 0x2]
cmp r0, 0x2
beq _0815C5F4
ldrb r0, [r4]
cmp r0, 0
beq _0815C58C
ldrh r0, [r2]
cmp r0, 0x2
bls _0815C58C
bl sub_815C864
movs r0, 0x2
b _0815C5F2
.align 2, 0
_0815C580: .4byte gUnknown_3002066
_0815C584: .4byte gUnknown_3002068
_0815C588: .4byte gUnknown_3002048
_0815C58C:
bl sub_815C864
ldr r1, _0815C598 @ =gUnknown_3002048
movs r0, 0x2
strb r0, [r1, 0x2]
b _0815C5F4
.align 2, 0
_0815C598: .4byte gUnknown_3002048
_0815C59C:
bl sub_815C3E4
ldr r1, _0815C5A8 @ =gUnknown_3002048
movs r0, 0x5
strb r0, [r1, 0x1]
b _0815C5F4
.align 2, 0
_0815C5A8: .4byte gUnknown_3002048
_0815C5AC:
ldr r0, _0815C5DC @ =gUnknown_3002048
ldrb r0, [r0]
cmp r0, 0x1
bne _0815C5C0
ldr r0, _0815C5E0 @ =gUnknown_3002066
ldrh r0, [r0]
cmp r0, 0x2
bls _0815C5C0
bl sub_815C864
_0815C5C0:
ldr r1, _0815C5E0 @ =gUnknown_3002066
ldrh r0, [r1]
adds r0, 0x1
strh r0, [r1]
lsls r0, 16
lsrs r0, 16
cmp r0, 0x3C
bls _0815C5F4
ldr r0, _0815C5DC @ =gUnknown_3002048
movs r1, 0x1
strb r1, [r0, 0x4]
movs r1, 0x6
strb r1, [r0, 0x1]
b _0815C5F4
.align 2, 0
_0815C5DC: .4byte gUnknown_3002048
_0815C5E0: .4byte gUnknown_3002066
_0815C5E4:
ldr r4, _0815C60C @ =gUnknown_3002048
ldrb r0, [r4, 0x2]
cmp r0, 0
beq _0815C5F4
bl sub_815C3A4
movs r0, 0
_0815C5F2:
strb r0, [r4, 0x2]
_0815C5F4:
ldr r2, _0815C60C @ =gUnknown_3002048
ldrb r0, [r2, 0x2]
ldrb r1, [r2, 0x4]
lsls r1, 2
orrs r0, r1
ldrb r1, [r2, 0x3]
lsls r1, 4
orrs r0, r1
pop {r4-r6}
pop {r1}
bx r1
.align 2, 0
_0815C60C: .4byte gUnknown_3002048
thumb_func_end sub_815C498
thumb_func_start sub_815C610
sub_815C610: @ 815C610
push {lr}
lsls r0, 24
lsrs r2, r0, 24
ldr r0, _0815C62C @ =0x04000128
ldr r0, [r0]
movs r1, 0xC
ands r0, r1
cmp r0, 0x8
bne _0815C634
cmp r2, 0
beq _0815C634
ldr r1, _0815C630 @ =gUnknown_3002048
movs r0, 0x1
b _0815C638
.align 2, 0
_0815C62C: .4byte 0x04000128
_0815C630: .4byte gUnknown_3002048
_0815C634:
ldr r1, _0815C640 @ =gUnknown_3002048
movs r0, 0
_0815C638:
strb r0, [r1]
pop {r1}
bx r1
.align 2, 0
_0815C640: .4byte gUnknown_3002048
thumb_func_end sub_815C610
thumb_func_start sub_815C644
sub_815C644: @ 815C644
push {r4,r5,lr}
adds r4, r0, 0
adds r5, r1, 0
ldr r3, _0815C670 @ =gUnknown_3002048
ldrb r0, [r3]
cmp r0, 0
beq _0815C67C
ldr r2, _0815C674 @ =0x04000128
ldrh r0, [r2]
movs r1, 0x1
orrs r0, r1
strh r0, [r2]
str r5, [r3, 0x8]
ldr r0, _0815C678 @ =0x04000120
str r4, [r0]
lsrs r0, r4, 2
adds r0, 0x1
str r0, [r3, 0x10]
bl sub_815C690
b _0815C684
.align 2, 0
_0815C670: .4byte gUnknown_3002048
_0815C674: .4byte 0x04000128
_0815C678: .4byte 0x04000120
_0815C67C:
ldr r1, _0815C68C @ =0x04000128
ldrh r0, [r1]
strh r0, [r1]
str r2, [r3, 0x8]
_0815C684:
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_0815C68C: .4byte 0x04000128
thumb_func_end sub_815C644
thumb_func_start sub_815C690
sub_815C690: @ 815C690
ldr r1, _0815C6B4 @ =0x0400010c
ldr r2, _0815C6B8 @ =0x0000fda7
adds r0, r2, 0
strh r0, [r1]
ldr r0, _0815C6BC @ =0x0400010e
movs r2, 0x40
strh r2, [r0]
ldr r3, _0815C6C0 @ =0x04000208
movs r0, 0
strh r0, [r3]
adds r1, 0xF4
ldrh r0, [r1]
orrs r0, r2
strh r0, [r1]
movs r0, 0x1
strh r0, [r3]
bx lr
.align 2, 0
_0815C6B4: .4byte 0x0400010c
_0815C6B8: .4byte 0x0000fda7
_0815C6BC: .4byte 0x0400010e
_0815C6C0: .4byte 0x04000208
thumb_func_end sub_815C690
thumb_func_start sub_815C6C4
sub_815C6C4: @ 815C6C4
push {lr}
bl sub_815C874
bl sub_815C864
pop {r0}
bx r0
thumb_func_end sub_815C6C4
thumb_func_start sub_815C6D4
sub_815C6D4: @ 815C6D4
push {r4-r6,lr}
sub sp, 0x8
ldr r2, _0815C6EC @ =gUnknown_3002048
ldrb r0, [r2, 0x1]
adds r3, r2, 0
cmp r0, 0x3
beq _0815C75C
cmp r0, 0x3
bgt _0815C6F0
cmp r0, 0x1
beq _0815C6F8
b _0815C852
.align 2, 0
_0815C6EC: .4byte gUnknown_3002048
_0815C6F0:
cmp r0, 0x5
bne _0815C6F6
b _0815C824
_0815C6F6:
b _0815C852
_0815C6F8:
ldr r1, _0815C728 @ =0x0400012a
ldr r2, _0815C72C @ =0x0000ccd0
adds r0, r2, 0
strh r0, [r1]
ldr r0, _0815C730 @ =0x04000120
ldr r1, [r0, 0x4]
ldr r0, [r0]
str r0, [sp]
str r1, [sp, 0x4]
movs r1, 0
movs r2, 0
movs r4, 0
ldr r6, _0815C72C @ =0x0000ccd0
ldr r5, _0815C734 @ =0x0000ffff
_0815C714:
lsls r0, r1, 1
add r0, sp
ldrh r0, [r0]
cmp r0, r6
bne _0815C738
adds r0, r2, 0x1
lsls r0, 16
lsrs r2, r0, 16
b _0815C742
.align 2, 0
_0815C728: .4byte 0x0400012a
_0815C72C: .4byte 0x0000ccd0
_0815C730: .4byte 0x04000120
_0815C734: .4byte 0x0000ffff
_0815C738:
cmp r0, r5
beq _0815C742
adds r0, r4, 0x1
lsls r0, 16
lsrs r4, r0, 16
_0815C742:
adds r0, r1, 0x1
lsls r0, 16
lsrs r1, r0, 16
cmp r1, 0x3
bls _0815C714
cmp r2, 0x2
beq _0815C752
b _0815C852
_0815C752:
cmp r4, 0
beq _0815C758
b _0815C852
_0815C758:
strb r2, [r3, 0x1]
b _0815C852
_0815C75C:
ldr r0, _0815C798 @ =0x04000120
ldr r4, [r0]
ldr r0, [r2, 0xC]
cmp r0, 0
bne _0815C772
ldrb r0, [r2]
cmp r0, 0
bne _0815C772
lsrs r0, r4, 2
adds r0, 0x1
str r0, [r2, 0x10]
_0815C772:
ldrb r0, [r3]
cmp r0, 0x1
bne _0815C7A8
ldr r1, [r3, 0xC]
ldr r0, [r3, 0x10]
cmp r1, r0
bge _0815C79C
ldr r2, _0815C798 @ =0x04000120
ldr r0, [r3, 0x8]
lsls r1, 2
adds r1, r0
ldr r0, [r1]
str r0, [r2]
ldr r0, [r3, 0x14]
ldr r1, [r1]
adds r0, r1
str r0, [r3, 0x14]
b _0815C7E2
.align 2, 0
_0815C798: .4byte 0x04000120
_0815C79C:
ldr r1, _0815C7A4 @ =0x04000120
ldr r0, [r3, 0x14]
b _0815C7E0
.align 2, 0
_0815C7A4: .4byte 0x04000120
_0815C7A8:
ldr r1, [r3, 0xC]
cmp r1, 0
ble _0815C7C8
ldr r0, [r3, 0x10]
adds r0, 0x1
cmp r1, r0
bge _0815C7C8
ldr r0, [r3, 0x8]
lsls r1, 2
adds r1, r0
subs r1, 0x4
str r4, [r1]
ldr r0, [r3, 0x14]
adds r0, r4
str r0, [r3, 0x14]
b _0815C7DC
_0815C7C8:
ldr r0, [r3, 0xC]
cmp r0, 0
beq _0815C7DC
ldr r0, [r3, 0x14]
cmp r0, r4
bne _0815C7D8
movs r0, 0x1
b _0815C7DA
_0815C7D8:
movs r0, 0x2
_0815C7DA:
strb r0, [r3, 0x3]
_0815C7DC:
ldr r1, _0815C804 @ =gUnknown_3002068
movs r0, 0
_0815C7E0:
str r0, [r1]
_0815C7E2:
ldr r1, [r3, 0xC]
adds r1, 0x1
str r1, [r3, 0xC]
ldr r0, [r3, 0x10]
adds r0, 0x2
cmp r1, r0
bge _0815C812
ldrb r0, [r3]
cmp r0, 0
beq _0815C80C
ldr r0, _0815C808 @ =0x0400010e
ldrh r1, [r0]
movs r2, 0x80
orrs r1, r2
strh r1, [r0]
b _0815C852
.align 2, 0
_0815C804: .4byte gUnknown_3002068
_0815C808: .4byte 0x0400010e
_0815C80C:
bl sub_815C864
b _0815C852
_0815C812:
movs r0, 0
movs r1, 0x4
strb r1, [r3, 0x1]
ldr r1, _0815C820 @ =gUnknown_3002066
strh r0, [r1]
b _0815C852
.align 2, 0
_0815C820: .4byte gUnknown_3002066
_0815C824:
ldrb r3, [r2]
cmp r3, 0
bne _0815C830
ldr r1, _0815C85C @ =0x0400012a
ldrb r0, [r2, 0x3]
strh r0, [r1]
_0815C830:
ldr r0, _0815C860 @ =0x04000120
ldr r1, [r0, 0x4]
ldr r0, [r0]
str r0, [sp]
str r1, [sp, 0x4]
mov r0, sp
ldrh r1, [r0, 0x2]
subs r0, r1, 0x1
lsls r0, 16
lsrs r0, 16
cmp r0, 0x1
bhi _0815C852
cmp r3, 0x1
bne _0815C84E
strb r1, [r2, 0x3]
_0815C84E:
movs r0, 0x6
strb r0, [r2, 0x1]
_0815C852:
add sp, 0x8
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0815C85C: .4byte 0x0400012a
_0815C860: .4byte 0x04000120
thumb_func_end sub_815C6D4
thumb_func_start sub_815C864
sub_815C864: @ 815C864
ldr r0, _0815C870 @ =0x04000128
ldrh r1, [r0]
movs r2, 0x80
orrs r1, r2
strh r1, [r0]
bx lr
.align 2, 0
_0815C870: .4byte 0x04000128
thumb_func_end sub_815C864
thumb_func_start sub_815C874
sub_815C874: @ 815C874
ldr r2, _0815C888 @ =0x0400010e
ldrh r1, [r2]
ldr r0, _0815C88C @ =0x0000ff7f
ands r0, r1
strh r0, [r2]
ldr r1, _0815C890 @ =0x0400010c
ldr r2, _0815C894 @ =0x0000fda7
adds r0, r2, 0
strh r0, [r1]
bx lr
.align 2, 0
_0815C888: .4byte 0x0400010e
_0815C88C: .4byte 0x0000ff7f
_0815C890: .4byte 0x0400010c
_0815C894: .4byte 0x0000fda7
thumb_func_end sub_815C874
thumb_func_start sub_815C898
sub_815C898: @ 815C898
push {r4,lr}
ldr r0, _0815C8B8 @ =0x04000130
ldrh r0, [r0]
ldr r2, _0815C8BC @ =0x000003ff
adds r1, r2, 0
eors r1, r0
ldr r4, _0815C8C0 @ =gUnknown_3002062
ldr r3, _0815C8C4 @ =gUnknown_3002060
ldrh r2, [r3]
adds r0, r1, 0
bics r0, r2
strh r0, [r4]
strh r1, [r3]
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0815C8B8: .4byte 0x04000130
_0815C8BC: .4byte 0x000003ff
_0815C8C0: .4byte gUnknown_3002062
_0815C8C4: .4byte gUnknown_3002060
thumb_func_end sub_815C898
thumb_func_start sub_815C8C8
sub_815C8C8: @ 815C8C8
ldr r1, _0815C8F4 @ =gUnknown_300206C
ldr r0, _0815C8F8 @ =0x04000208
ldrh r0, [r0]
strh r0, [r1]
ldr r1, _0815C8FC @ =gUnknown_300206E
ldr r0, _0815C900 @ =0x04000200
ldrh r0, [r0]
strh r0, [r1]
ldr r1, _0815C904 @ =gUnknown_3002070
ldr r0, _0815C908 @ =0x0400010e
ldrh r0, [r0]
strh r0, [r1]
ldr r1, _0815C90C @ =gUnknown_3002072
ldr r0, _0815C910 @ =0x04000128
ldrh r0, [r0]
strh r0, [r1]
ldr r1, _0815C914 @ =gUnknown_3002074
ldr r0, _0815C918 @ =0x04000134
ldrh r0, [r0]
strh r0, [r1]
bx lr
.align 2, 0
_0815C8F4: .4byte gUnknown_300206C
_0815C8F8: .4byte 0x04000208
_0815C8FC: .4byte gUnknown_300206E
_0815C900: .4byte 0x04000200
_0815C904: .4byte gUnknown_3002070
_0815C908: .4byte 0x0400010e
_0815C90C: .4byte gUnknown_3002072
_0815C910: .4byte 0x04000128
_0815C914: .4byte gUnknown_3002074
_0815C918: .4byte 0x04000134
thumb_func_end sub_815C8C8
thumb_func_start sub_815C91C
sub_815C91C: @ 815C91C
ldr r1, _0815C948 @ =0x04000208
ldr r0, _0815C94C @ =gUnknown_300206C
ldrh r0, [r0]
strh r0, [r1]
subs r1, 0x8
ldr r0, _0815C950 @ =gUnknown_300206E
ldrh r0, [r0]
strh r0, [r1]
subs r1, 0xF2
ldr r0, _0815C954 @ =gUnknown_3002070
ldrh r0, [r0]
strh r0, [r1]
adds r1, 0x1A
ldr r0, _0815C958 @ =gUnknown_3002072
ldrh r0, [r0]
strh r0, [r1]
adds r1, 0xC
ldr r0, _0815C95C @ =gUnknown_3002074
ldrh r0, [r0]
strh r0, [r1]
bx lr
.align 2, 0
_0815C948: .4byte 0x04000208
_0815C94C: .4byte gUnknown_300206C
_0815C950: .4byte gUnknown_300206E
_0815C954: .4byte gUnknown_3002070
_0815C958: .4byte gUnknown_3002072
_0815C95C: .4byte gUnknown_3002074
thumb_func_end sub_815C91C
thumb_func_start sub_815C960
sub_815C960: @ 815C960
push {lr}
sub sp, 0x4
movs r0, 0
str r0, [sp]
ldr r1, _0815C978 @ =gUnknown_3002048
ldr r2, _0815C97C @ =0x05000006
mov r0, sp
bl CpuSet
add sp, 0x4
pop {r0}
bx r0
.align 2, 0
_0815C978: .4byte gUnknown_3002048
_0815C97C: .4byte 0x05000006
thumb_func_end sub_815C960
.align 2, 0 @ Don't pad with nop.