through sub_80C2FC0

This commit is contained in:
PikalaxALT
2020-01-06 11:39:17 -05:00
parent 29e7c9a807
commit 232c3e5917
2 changed files with 250 additions and 822 deletions
-815
View File
@@ -5,821 +5,6 @@
.text
thumb_func_start sub_80C29A4
sub_80C29A4: @ 80C29A4
push {r4,r5,lr}
bl sub_80C2B48
ldr r0, _080C29C8 @ =gUnknown_20399E0
ldr r2, [r0]
ldr r0, [r2]
movs r4, 0x80
lsls r4, 3
adds r0, r4
ldr r1, [r0]
ldrh r3, [r1, 0x20]
movs r5, 0x20
ldrsh r0, [r1, r5]
cmp r0, 0
bne _080C29CC
movs r0, 0x1
b _080C2B3A
.align 2, 0
_080C29C8: .4byte gUnknown_20399E0
_080C29CC:
ldr r5, _080C2A18 @ =0x00000cce
adds r0, r2, r5
ldrb r0, [r0]
cmp r0, 0x11
bls _080C2A1C
subs r0, r3, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x1
b _080C2B28
.align 2, 0
_080C2A18: .4byte 0x00000cce
_080C2A1C:
cmp r0, 0xE
bls _080C2A60
subs r0, r3, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x2
b _080C2B28
_080C2A60:
cmp r0, 0xA
bls _080C2AA4
subs r0, r3, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x3
b _080C2B28
_080C2AA4:
cmp r0, 0x6
bls _080C2AE8
subs r0, r3, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x5
b _080C2B28
_080C2AE8:
adds r0, r3, 0
subs r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x8
_080C2B28:
strh r0, [r1, 0x20]
ldr r0, _080C2B40 @ =gUnknown_20399E0
ldr r1, [r0]
ldr r0, _080C2B44 @ =0x00000cce
adds r1, r0
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
movs r0, 0
_080C2B3A:
pop {r4,r5}
pop {r1}
bx r1
.align 2, 0
_080C2B40: .4byte gUnknown_20399E0
_080C2B44: .4byte 0x00000cce
thumb_func_end sub_80C29A4
thumb_func_start sub_80C2B48
sub_80C2B48: @ 80C2B48
push {r4,r5,lr}
sub sp, 0x8
ldr r0, _080C2B90 @ =gUnknown_20399E0
ldr r3, [r0]
ldr r0, [r3]
movs r2, 0x80
lsls r2, 3
adds r0, r2
ldr r0, [r0]
ldr r4, _080C2B94 @ =0xffff0000
ldr r5, _080C2B98 @ =0x0000ffff
ldrh r0, [r0, 0x20]
movs r1, 0x80
lsls r1, 13
orrs r0, r1
str r0, [sp]
ldr r0, [r3, 0xC]
adds r0, r2
ldr r0, [r0]
ldrh r1, [r0, 0x20]
ldr r0, [sp, 0x4]
ands r0, r4
orrs r0, r1
ands r0, r5
movs r1, 0xA0
lsls r1, 16
orrs r0, r1
str r0, [sp, 0x4]
movs r0, 0
mov r1, sp
bl sub_80C4CF0
add sp, 0x8
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_080C2B90: .4byte gUnknown_20399E0
_080C2B94: .4byte 0xffff0000
_080C2B98: .4byte 0x0000ffff
thumb_func_end sub_80C2B48
thumb_func_start sub_80C2B9C
sub_80C2B9C: @ 80C2B9C
push {r4,r5,lr}
sub sp, 0x8
ldr r0, _080C2C0C @ =gUnknown_20399E0
ldr r3, [r0]
ldr r0, [r3]
ldr r2, _080C2C10 @ =0x00000404
adds r0, r2
ldrh r0, [r0]
adds r0, 0x10
lsls r0, 16
ldr r4, _080C2C14 @ =0xffff0000
ldr r5, _080C2C18 @ =0x0000ffff
lsrs r0, 16
movs r1, 0x80
lsls r1, 13
orrs r0, r1
str r0, [sp]
ldr r0, [r3, 0xC]
adds r0, r2
ldrh r1, [r0]
subs r1, 0x10
lsls r1, 16
lsrs r1, 16
ldr r0, [sp, 0x4]
ands r0, r4
orrs r0, r1
ands r0, r5
movs r1, 0xA0
lsls r1, 16
orrs r0, r1
str r0, [sp, 0x4]
movs r0, 0
movs r1, 0x2
movs r2, 0
bl sub_80C4C2C
movs r0, 0x12
movs r1, 0
bl sub_80C4C74
movs r0, 0x10
bl sub_80C4C88
movs r0, 0
mov r1, sp
bl sub_80C4CF0
movs r0, 0
movs r1, 0
bl sub_80C4C9C
add sp, 0x8
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_080C2C0C: .4byte gUnknown_20399E0
_080C2C10: .4byte 0x00000404
_080C2C14: .4byte 0xffff0000
_080C2C18: .4byte 0x0000ffff
thumb_func_end sub_80C2B9C
thumb_func_start sub_80C2C1C
sub_80C2C1C: @ 80C2C1C
lsls r0, 24
lsrs r0, 24
ldr r2, _080C2C30 @ =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
ldr r0, _080C2C34 @ =sub_80C2C7C
str r0, [r1]
bx lr
.align 2, 0
_080C2C30: .4byte gTasks
_080C2C34: .4byte sub_80C2C7C
thumb_func_end sub_80C2C1C
thumb_func_start sub_80C2C38
sub_80C2C38: @ 80C2C38
push {lr}
movs r0, 0
movs r1, 0x4
movs r2, 0x4
bl sub_80C210C
movs r0, 0x1
movs r1, 0x5
movs r2, 0x5
bl sub_80C210C
movs r0, 0x2
movs r1, 0x6
movs r2, 0x6
bl sub_80C210C
movs r0, 0x3
movs r1, 0x7
movs r2, 0x7
bl sub_80C210C
movs r0, 0x4
movs r1, 0x8
movs r2, 0x8
bl sub_80C210C
movs r0, 0x5
movs r1, 0x9
movs r2, 0x9
bl sub_80C210C
pop {r0}
bx r0
thumb_func_end sub_80C2C38
thumb_func_start sub_80C2C7C
sub_80C2C7C: @ 80C2C7C
push {r4,lr}
lsls r0, 24
lsrs r2, r0, 24
ldr r1, _080C2CA0 @ =gUnknown_20399E0
ldr r3, [r1]
ldr r4, _080C2CA4 @ =0x00000ccf
adds r0, r3, r4
ldrb r0, [r0]
adds r4, r1, 0
cmp r0, 0x7
bls _080C2C94
b _080C2DFC
_080C2C94:
lsls r0, 2
ldr r1, _080C2CA8 @ =_080C2CAC
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
_080C2CA0: .4byte gUnknown_20399E0
_080C2CA4: .4byte 0x00000ccf
_080C2CA8: .4byte _080C2CAC
.align 2, 0
_080C2CAC:
.4byte _080C2CCC
.4byte _080C2CF4
.4byte _080C2CFA
.4byte _080C2D1C
.4byte _080C2D6C
.4byte _080C2D84
.4byte _080C2DB8
.4byte _080C2DD8
_080C2CCC:
movs r0, 0x1
bl sub_80C4ED0
movs r0, 0x3
movs r1, 0x3
bl CopyWindowToVram
movs r0, 0x4
movs r1, 0x3
bl CopyWindowToVram
ldr r0, _080C2CEC @ =gUnknown_20399E0
ldr r1, [r0]
ldr r0, _080C2CF0 @ =0x00000ccf
adds r1, r0
b _080C2DEC
.align 2, 0
_080C2CEC: .4byte gUnknown_20399E0
_080C2CF0: .4byte 0x00000ccf
_080C2CF4:
bl sub_80C2C38
b _080C2DE4
_080C2CFA:
ldr r0, _080C2D10 @ =gUnknown_83EF2DC
movs r1, 0
movs r2, 0xA0
bl LoadPalette
ldr r0, _080C2D14 @ =gUnknown_20399E0
ldr r1, [r0]
ldr r3, _080C2D18 @ =0x00000ccf
adds r1, r3
b _080C2DEC
.align 2, 0
_080C2D10: .4byte gUnknown_83EF2DC
_080C2D14: .4byte gUnknown_20399E0
_080C2D18: .4byte 0x00000ccf
_080C2D1C:
movs r0, 0x6
movs r1, 0
bl sub_80C22C4
movs r0, 0x1
bl sub_80C4324
movs r0, 0x1
bl sub_80C3154
movs r0, 0xFF
movs r1, 0x19
movs r2, 0x1
bl sub_80C4960
movs r0, 0xFF
movs r1, 0x19
movs r2, 0x1
bl sub_80C48BC
ldr r1, _080C2D64 @ =gUnknown_20399E0
ldr r0, [r1]
ldr r4, _080C2D68 @ =0x00000cce
adds r0, r4
movs r2, 0
strb r2, [r0]
ldr r0, [r1]
movs r3, 0xCD
lsls r3, 4
adds r0, r3
strb r2, [r0]
ldr r1, [r1]
adds r4, 0x1
adds r1, r4
b _080C2DEC
.align 2, 0
_080C2D64: .4byte gUnknown_20399E0
_080C2D68: .4byte 0x00000cce
_080C2D6C:
bl sub_80C253C
ldr r0, _080C2D7C @ =gUnknown_20399E0
ldr r1, [r0]
ldr r0, _080C2D80 @ =0x00000ccf
adds r1, r0
b _080C2DEC
.align 2, 0
_080C2D7C: .4byte gUnknown_20399E0
_080C2D80: .4byte 0x00000ccf
_080C2D84:
ldr r0, [r4]
movs r2, 0xCD
lsls r2, 4
adds r1, r0, r2
ldrb r0, [r1]
cmp r0, 0xF
bne _080C2DA4
ldrb r0, [r1]
bl sub_80C4C48
ldr r1, [r4]
ldr r3, _080C2DA0 @ =0x00000ccf
adds r1, r3
b _080C2DEC
.align 2, 0
_080C2DA0: .4byte 0x00000ccf
_080C2DA4:
adds r0, 0x1
strb r0, [r1]
ldr r0, [r4]
movs r4, 0xCD
lsls r4, 4
adds r0, r4
ldrb r0, [r0]
bl sub_80C4C48
b _080C2E0E
_080C2DB8:
bl sub_80C2B9C
bl sub_80C2B48
movs r0, 0xF3
bl PlaySE
ldr r0, _080C2DD0 @ =gUnknown_20399E0
ldr r1, [r0]
ldr r0, _080C2DD4 @ =0x00000ccf
adds r1, r0
b _080C2DEC
.align 2, 0
_080C2DD0: .4byte gUnknown_20399E0
_080C2DD4: .4byte 0x00000ccf
_080C2DD8:
bl sub_80C2E1C
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _080C2E0E
_080C2DE4:
ldr r0, _080C2DF4 @ =gUnknown_20399E0
ldr r1, [r0]
ldr r2, _080C2DF8 @ =0x00000ccf
adds r1, r2
_080C2DEC:
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
b _080C2E0E
.align 2, 0
_080C2DF4: .4byte gUnknown_20399E0
_080C2DF8: .4byte 0x00000ccf
_080C2DFC:
ldr r1, _080C2E14 @ =gTasks
lsls r0, r2, 2
adds r0, r2
lsls r0, 3
adds r0, r1
ldr r4, _080C2E18 @ =0x00000cc8
adds r1, r3, r4
ldr r1, [r1]
str r1, [r0]
_080C2E0E:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_080C2E14: .4byte gTasks
_080C2E18: .4byte 0x00000cc8
thumb_func_end sub_80C2C7C
thumb_func_start sub_80C2E1C
sub_80C2E1C: @ 80C2E1C
push {r4,r5,lr}
bl sub_80C2B48
ldr r0, _080C2E40 @ =gUnknown_20399E0
ldr r2, [r0]
ldr r0, [r2]
movs r4, 0x80
lsls r4, 3
adds r0, r4
ldr r1, [r0]
ldrh r3, [r1, 0x20]
movs r5, 0x20
ldrsh r0, [r1, r5]
cmp r0, 0x68
bne _080C2E44
movs r0, 0x1
b _080C2FB2
.align 2, 0
_080C2E40: .4byte gUnknown_20399E0
_080C2E44:
ldr r5, _080C2E90 @ =0x00000cce
adds r0, r2, r5
ldrb r0, [r0]
cmp r0, 0x11
bls _080C2E94
adds r0, r3, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x1
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x1
b _080C2FA0
.align 2, 0
_080C2E90: .4byte 0x00000cce
_080C2E94:
cmp r0, 0xE
bls _080C2ED8
adds r0, r3, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x2
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x2
b _080C2FA0
_080C2ED8:
cmp r0, 0xA
bls _080C2F1C
adds r0, r3, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x3
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x3
b _080C2FA0
_080C2F1C:
cmp r0, 0x6
bls _080C2F60
adds r0, r3, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x5
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x5
b _080C2FA0
_080C2F60:
adds r0, r3, 0
adds r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0x4]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0x8]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
adds r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0xC]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0x10]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x8
strh r0, [r1, 0x20]
ldr r0, [r2, 0x14]
adds r0, r4
ldr r1, [r0]
ldrh r0, [r1, 0x20]
subs r0, 0x8
_080C2FA0:
strh r0, [r1, 0x20]
ldr r0, _080C2FB8 @ =gUnknown_20399E0
ldr r1, [r0]
ldr r0, _080C2FBC @ =0x00000cce
adds r1, r0
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
movs r0, 0
_080C2FB2:
pop {r4,r5}
pop {r1}
bx r1
.align 2, 0
_080C2FB8: .4byte gUnknown_20399E0
_080C2FBC: .4byte 0x00000cce
thumb_func_end sub_80C2E1C
thumb_func_start sub_80C2FC0
sub_80C2FC0: @ 80C2FC0
push {lr}
adds r1, r0, 0
ldr r0, _080C2FE8 @ =gUnknown_20399E4
ldr r2, [r0]
ldrh r0, [r2, 0xC]
cmp r0, 0
beq _080C2FEC
ldrh r0, [r2, 0x8]
ldrh r3, [r1, 0x20]
adds r0, r3
strh r0, [r1, 0x20]
ldrh r0, [r2, 0xA]
ldrh r3, [r1, 0x22]
adds r0, r3
strh r0, [r1, 0x22]
ldrh r0, [r2, 0xC]
subs r0, 0x1
strh r0, [r2, 0xC]
b _080C3004
.align 2, 0
_080C2FE8: .4byte gUnknown_20399E4
_080C2FEC:
ldr r1, [r2, 0x1C]
movs r3, 0
ldrsh r0, [r2, r3]
lsls r0, 3
adds r0, 0x24
strh r0, [r1, 0x20]
ldr r1, [r2, 0x1C]
movs r3, 0x2
ldrsh r0, [r2, r3]
lsls r0, 3
adds r0, 0x24
strh r0, [r1, 0x22]
_080C3004:
pop {r0}
bx r0
thumb_func_end sub_80C2FC0
thumb_func_start sub_80C3008
sub_80C3008: @ 80C3008
push {r4-r6,lr}