MWF: sub_80E9914

This commit is contained in:
PikalaxALT
2017-10-25 19:54:24 -04:00
parent 943e2ec33d
commit 84a9441267
3 changed files with 239 additions and 181 deletions
-177
View File
@@ -5,183 +5,6 @@
.text
thumb_func_start sub_80E9914
sub_80E9914: @ 80E9914
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x24
movs r0, 0
mov r10, r0
ldr r0, =gSaveBlock1Ptr
ldr r1, [r0]
ldr r2, =0x00001ad0
adds r2, r1, r2
str r2, [sp]
ldr r3, =0x00001a9c
adds r0, r1, r3
ldrb r0, [r0]
cmp r0, 0
bne _080E993A
b _080E9A60
_080E993A:
movs r6, 0
ldr r7, =0x00001ae8
adds r7, r1, r7
str r7, [sp, 0x14]
ldr r0, =0x00001b18
adds r0, r1, r0
str r0, [sp, 0xC]
ldr r2, =0x00001b24
adds r2, r1, r2
str r2, [sp, 0x10]
adds r3, 0x94
adds r3, r1, r3
str r3, [sp, 0x18]
ldr r7, =0x00001b36
adds r7, r1, r7
str r7, [sp, 0x1C]
mov r9, r6
_080E995C:
movs r4, 0
lsls r5, r6, 2
lsls r3, r6, 1
ldr r0, =gPlayerParty
mov r8, r0
adds r1, r6, 0x1
str r1, [sp, 0x4]
adds r2, r5, 0
ldr r1, [sp, 0x14]
_080E996E:
adds r0, r2, r4
lsls r0, 1
adds r0, r1, r0
mov r7, r9
strh r7, [r0]
adds r0, r4, 0x1
lsls r0, 16
lsrs r4, r0, 16
cmp r4, 0x3
bls _080E996E
ldr r1, [sp, 0xC]
adds r0, r1, r3
mov r2, r9
strh r2, [r0]
ldr r7, [sp, 0x10]
adds r0, r7, r3
strh r2, [r0]
ldr r1, [sp, 0x18]
adds r0, r1, r6
mov r2, r9
strb r2, [r0]
ldr r3, [sp]
adds r0, r3, r5
mov r7, r9
str r7, [r0]
ldr r1, [sp, 0x1C]
adds r0, r1, r6
strb r7, [r0]
movs r2, 0x64
adds r5, r6, 0
muls r5, r2
mov r3, r8
adds r4, r5, r3
adds r0, r4, 0
movs r1, 0xB
bl GetMonData
cmp r0, 0
beq _080E9A54
adds r0, r4, 0
movs r1, 0x2D
bl GetMonData
cmp r0, 0
bne _080E9A54
movs r4, 0
mov r7, r10
lsls r7, 2
mov r8, r7
mov r0, r10
lsls r7, r0, 1
adds r0, 0x1
str r0, [sp, 0x8]
ldr r2, =gPlayerParty
_080E99DA:
adds r1, r4, 0
adds r1, 0xD
adds r0, r5, r2
str r2, [sp, 0x20]
bl GetMonData
mov r3, r8
adds r1, r3, r4
lsls r1, 1
ldr r3, [sp, 0x14]
adds r1, r3, r1
strh r0, [r1]
adds r0, r4, 0x1
lsls r0, 16
lsrs r4, r0, 16
ldr r2, [sp, 0x20]
cmp r4, 0x3
bls _080E99DA
movs r0, 0x64
adds r4, r6, 0
muls r4, r0
ldr r0, =gPlayerParty
adds r4, r0
adds r0, r4, 0
movs r1, 0xB
bl GetMonData
ldr r2, [sp, 0xC]
adds r1, r2, r7
strh r0, [r1]
adds r0, r4, 0
movs r1, 0xC
bl GetMonData
ldr r3, [sp, 0x10]
adds r1, r3, r7
strh r0, [r1]
adds r0, r4, 0
movs r1, 0x38
bl GetMonData
ldr r1, [sp, 0x18]
add r1, r10
strb r0, [r1]
adds r0, r4, 0
movs r1, 0
bl GetMonData
ldr r1, [sp]
add r1, r8
str r0, [r1]
adds r0, r4, 0
bl sub_80E98AC
ldr r1, [sp, 0x1C]
add r1, r10
strb r0, [r1]
ldr r7, [sp, 0x8]
lsls r0, r7, 16
lsrs r0, 16
mov r10, r0
_080E9A54:
ldr r1, [sp, 0x4]
lsls r0, r1, 16
lsrs r6, r0, 16
cmp r6, 0x5
bhi _080E9A60
b _080E995C
_080E9A60:
add sp, 0x24
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_80E9914
thumb_func_start sub_80E9A90
sub_80E9A90: @ 80E9A90
push {r4-r6,lr}