Start dodrio magic

This commit is contained in:
DizzyEggg
2019-07-31 00:27:30 +02:00
parent cb4ba65560
commit ba1a70419a
3 changed files with 637 additions and 977 deletions

View File

@@ -5,548 +5,8 @@
.text
thumb_func_start sub_8026988
sub_8026988: @ 8026988
push {r4-r7,lr}
mov r7, r9
mov r6, r8
push {r6,r7}
ldr r0, =gUnknown_02022C98
ldr r0, [r0]
adds r1, r0, 0
adds r1, 0x44
adds r0, 0x48
ldrb r0, [r0]
mov r8, r0
ldrb r6, [r1]
cmp r6, r8
bcs _08026A7A
ldr r0, =gUnknown_082F449C
mov r9, r0
_080269A8:
ldr r0, =gUnknown_02022C98
ldr r3, [r0]
adds r0, r3, 0
adds r0, 0x28
ldrb r1, [r0]
lsls r0, r1, 4
subs r0, r1
lsls r0, 2
ldr r2, =0x000031a0
adds r0, r2
adds r7, r3, r0
movs r0, 0xB
adds r2, r1, 0
muls r2, r0
adds r2, r6, r2
adds r3, 0x24
ldrb r1, [r3]
subs r1, 0x1
lsls r0, r1, 3
subs r0, r1
lsls r0, 3
subs r0, r1
adds r2, r0
add r2, r9
ldrb r4, [r2]
adds r0, r7, 0
adds r0, 0x1F
adds r0, r4
ldrb r0, [r0]
cmp r0, 0
beq _080269FC
adds r0, r6, 0
movs r1, 0
bl sub_8028BF8
b _08026A04
.pool
_080269FC:
adds r0, r6, 0
movs r1, 0x1
bl sub_8028BF8
_08026A04:
adds r0, r7, 0
adds r0, 0x1F
adds r5, r0, r4
ldrb r0, [r5]
cmp r0, 0x9
bls _08026A30
adds r0, r7, 0
adds r0, 0x14
adds r0, r4
ldrb r1, [r0]
adds r1, 0x3
lsls r1, 24
lsrs r1, 24
adds r0, r6, 0
bl sub_8028CA4
ldrb r1, [r5]
lsls r1, 25
movs r0, 0xFF
lsls r0, 24
adds r1, r0
b _08026A52
_08026A30:
adds r0, r7, 0
adds r0, 0x14
adds r3, r0, r4
ldrb r0, [r3]
cmp r0, 0x3
bne _08026A5C
movs r0, 0x7
strb r0, [r5]
adds r0, r6, 0
movs r1, 0x6
bl sub_8028CA4
ldrb r1, [r5]
lsls r1, 25
movs r2, 0xFF
lsls r2, 24
adds r1, r2
_08026A52:
lsrs r1, 24
adds r0, r6, 0
bl sub_8028C7C
b _08026A70
_08026A5C:
ldrb r1, [r3]
adds r0, r6, 0
bl sub_8028CA4
ldrb r1, [r5]
lsls r1, 25
lsrs r1, 24
adds r0, r6, 0
bl sub_8028C7C
_08026A70:
adds r0, r6, 0x1
lsls r0, 24
lsrs r6, r0, 24
cmp r6, r8
bcc _080269A8
_08026A7A:
pop {r3,r4}
mov r8, r3
mov r9, r4
pop {r4-r7}
pop {r0}
bx r0
thumb_func_end sub_8026988
thumb_func_start sub_8026A88
sub_8026A88: @ 8026A88
push {r4-r6,lr}
ldr r1, =gUnknown_02022C98
ldr r0, [r1]
adds r0, 0x24
ldrb r5, [r0]
movs r4, 0
cmp r4, r5
bcs _08026ABA
adds r6, r1, 0
_08026A9A:
lsls r0, r4, 4
subs r0, r4
lsls r0, 2
ldr r1, [r6]
adds r0, r1
ldr r1, =0x000031cc
adds r0, r1
ldrb r1, [r0]
adds r0, r4, 0
bl sub_80286B4
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, r5
bcc _08026A9A
_08026ABA:
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end sub_8026A88
thumb_func_start sub_8026AC8
sub_8026AC8: @ 8026AC8
push {r4,r5,lr}
ldr r0, =gUnknown_02022C98
ldr r0, [r0]
adds r0, 0x24
ldrb r5, [r0]
movs r4, 0
cmp r4, r5
bcs _08026AEA
_08026AD8:
adds r0, r4, 0
movs r1, 0x4
bl sub_80286B4
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, r5
bcc _08026AD8
_08026AEA:
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_8026AC8
thumb_func_start sub_8026AF4
sub_8026AF4: @ 8026AF4
push {lr}
bl sub_8026988
ldr r0, =gUnknown_02022C98
ldr r0, [r0]
adds r0, 0x40
ldrb r0, [r0]
cmp r0, 0x9
bls _08026B10
bl sub_8026AC8
b _08026B14
.pool
_08026B10:
bl sub_8026A88
_08026B14:
ldr r0, =gUnknown_02022C98
ldr r0, [r0]
adds r0, 0x40
ldrb r0, [r0]
bl sub_80288D4
pop {r0}
bx r0
.pool
thumb_func_end sub_8026AF4
thumb_func_start sub_8026B28
sub_8026B28: @ 8026B28
push {lr}
bl sub_8026988
ldr r0, =gUnknown_02022C98
ldr r0, [r0]
adds r0, 0x40
ldrb r0, [r0]
cmp r0, 0x9
bls _08026B44
bl sub_8026AC8
b _08026B48
.pool
_08026B44:
bl sub_8026A88
_08026B48:
ldr r0, =gUnknown_02022C98
ldr r0, [r0]
adds r0, 0x40
ldrb r0, [r0]
bl sub_80288D4
pop {r0}
bx r0
.pool
thumb_func_end sub_8026B28
thumb_func_start sub_8026B5C
sub_8026B5C: @ 8026B5C
push {lr}
adds r3, r1, 0
lsls r0, 24
lsrs r0, 24
subs r0, 0x1
cmp r0, 0x4
bhi _08026BB4
lsls r0, 2
ldr r1, =_08026B78
adds r0, r1
ldr r0, [r0]
mov pc, r0
.pool
.align 2, 0
_08026B78:
.4byte _08026B8C
.4byte _08026B94
.4byte _08026B9C
.4byte _08026BA4
.4byte _08026BAC
_08026B8C:
movs r0, 0x4
strb r0, [r3]
movs r0, 0x7
b _08026BB2
_08026B94:
movs r0, 0x3
strb r0, [r3]
movs r0, 0x8
b _08026BB2
_08026B9C:
movs r0, 0x2
strb r0, [r3]
movs r0, 0x9
b _08026BB2
_08026BA4:
movs r0, 0x1
strb r0, [r3]
movs r0, 0xA
b _08026BB2
_08026BAC:
movs r0, 0
strb r0, [r3]
movs r0, 0xB
_08026BB2:
strb r0, [r2]
_08026BB4:
pop {r0}
bx r0
thumb_func_end sub_8026B5C
thumb_func_start sub_8026BB8
sub_8026BB8: @ 8026BB8
push {r4-r6,lr}
ldr r1, =gUnknown_02022C98
ldr r0, [r1]
adds r0, 0x24
ldrb r5, [r0]
movs r4, 0x1
cmp r4, r5
bcs _08026C1E
adds r6, r1, 0
_08026BCA:
ldr r0, [r6]
movs r1, 0xAC
lsls r1, 1
adds r0, r1
adds r0, r4
ldrb r0, [r0]
cmp r0, 0
bne _08026BEC
adds r0, r4, 0
bl sub_8027DFC
ldr r1, [r6]
movs r2, 0xAC
lsls r2, 1
adds r1, r2
adds r1, r4
strb r0, [r1]
_08026BEC:
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, r5
bcc _08026BCA
cmp r4, r5
bcs _08026C1E
ldr r0, =gUnknown_02022C98
ldr r0, [r0]
movs r2, 0xAC
lsls r2, 1
adds r1, r0, r2
_08026C04:
adds r0, r1, r4
ldrb r0, [r0]
cmp r0, 0
bne _08026C14
movs r0, 0
b _08026C20
.pool
_08026C14:
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, r5
bcc _08026C04
_08026C1E:
movs r0, 0x1
_08026C20:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end sub_8026BB8
thumb_func_start sub_8026C28
sub_8026C28: @ 8026C28
push {r4,lr}
movs r1, 0
ldr r4, =gUnknown_02022C98
movs r3, 0xAC
lsls r3, 1
movs r2, 0
_08026C34:
ldr r0, [r4]
adds r0, r3
adds r0, r1
strb r2, [r0]
adds r0, r1, 0x1
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0x4
bls _08026C34
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_8026C28
thumb_func_start sub_8026C50
sub_8026C50: @ 8026C50
push {r4,lr}
ldr r3, =gUnknown_02022C98
ldr r1, [r3]
adds r2, r1, 0
adds r2, 0x40
ldrb r0, [r2]
cmp r0, 0x9
bls _08026C88
movs r4, 0x90
lsls r4, 1
adds r0, r1, r4
ldr r0, [r0]
cmp r0, 0
bne _08026C88
movs r0, 0xA
strb r0, [r2]
ldr r0, [r3]
movs r1, 0x96
lsls r1, 1
adds r0, r1
ldr r0, [r0]
cmp r0, 0
beq _08026C88
movs r0, 0x1
b _08026C8A
.pool
_08026C88:
movs r0, 0
_08026C8A:
pop {r4}
pop {r1}
bx r1
thumb_func_end sub_8026C50
thumb_func_start sub_8026C90
sub_8026C90: @ 8026C90
push {r4-r6,lr}
ldr r4, =gUnknown_02022C98
ldr r1, [r4]
adds r2, r1, 0
adds r2, 0x40
ldrb r0, [r2]
cmp r0, 0x9
bls _08026D14
adds r0, r1, 0
adds r0, 0x44
ldrb r3, [r0]
adds r0, 0x4
ldrb r5, [r0]
movs r0, 0xA
strb r0, [r2]
ldr r4, [r4]
mov r12, r4
movs r0, 0x96
lsls r0, 1
add r0, r12
ldr r0, [r0]
cmp r0, 0
beq _08026D14
adds r4, r3, 0
cmp r4, r5
bcs _08026D04
mov r0, r12
adds r0, 0x28
ldrb r3, [r0]
lsls r1, r3, 4
subs r1, r3
lsls r1, 2
ldr r6, =gUnknown_082F449C
subs r0, 0x4
ldrb r2, [r0]
subs r2, 0x1
add r1, r12
movs r0, 0xB
muls r3, r0
lsls r0, r2, 3
subs r0, r2
lsls r0, 3
subs r2, r0, r2
ldr r0, =0x000031bf
adds r1, r0
_08026CEA:
adds r0, r4, r3
adds r0, r2
adds r0, r6
ldrb r0, [r0]
adds r0, r1, r0
ldrb r0, [r0]
cmp r0, 0xA
bne _08026D14
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, r5
bcc _08026CEA
_08026D04:
movs r0, 0x1
b _08026D16
.pool
_08026D14:
movs r0, 0
_08026D16:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end sub_8026C90
thumb_func_start sub_8026D1C
sub_8026D1C: @ 8026D1C
push {r4-r7,lr}
mov r7, r9
mov r6, r8
push {r6,r7}
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
ldr r0, =gUnknown_082F7A9C
mov r8, r0
ldr r0, =gUnknown_02022C98
ldr r6, [r0]
adds r0, r6, 0
adds r0, 0x90
adds r0, r5
mov r9, r0
ldrb r7, [r0]
adds r0, r7, 0
movs r1, 0x7
bl __umodsi3
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
add r4, r8
adds r0, r7, 0
movs r1, 0x7
bl __udivsi3
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
muls r0, r1
ldrb r4, [r4]
adds r0, r4
lsls r0, 24
lsls r5, 1
adds r6, 0x86
adds r6, r5
ldrh r1, [r6]
lsrs r0, 24
cmp r1, r0
bcc _08026D76
adds r0, r7, 0x1
mov r1, r9
strb r0, [r1]
_08026D76:
pop {r3,r4}
mov r8, r3
mov r9, r4
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_8026D1C
thumb_func_start sub_8026D8C
sub_8026D8C: @ 8026D8C