through sub_8113D94

This commit is contained in:
PikalaxALT
2018-11-06 14:29:43 -05:00
parent 226bd50a5c
commit 5a85a2273d
2 changed files with 81 additions and 196 deletions
-196
View File
@@ -5,202 +5,6 @@
.text
thumb_func_start sub_8113C8C
sub_8113C8C: @ 8113C8C
push {r4,r5,lr}
adds r5, r0, 0
adds r4, r1, 0
ldr r0, _08113CBC @ =gUnknown_8456AA0
adds r0, 0x29
ldrb r1, [r0]
adds r0, r5, 0
bl sub_8110988
lsls r0, 24
cmp r0, 0
beq _08113CC0
movs r0, 0xFE
strb r0, [r4, 0x6]
ldrh r1, [r5, 0x2]
movs r0, 0
strh r1, [r4, 0x4]
strb r0, [r4]
strb r0, [r4, 0x1]
strb r0, [r4, 0x2]
strb r0, [r4, 0x3]
adds r0, r5, 0x4
b _08113CC2
.align 2, 0
_08113CBC: .4byte gUnknown_8456AA0
_08113CC0:
movs r0, 0
_08113CC2:
pop {r4,r5}
pop {r1}
bx r1
thumb_func_end sub_8113C8C
thumb_func_start sub_8113CC8
sub_8113CC8: @ 8113CC8
push {r4-r6,lr}
adds r4, r0, 0
adds r5, r1, 0
adds r6, r4, 0x4
ldr r0, _08113CFC @ =gUnknown_8456AA0
ldrb r1, [r0]
adds r0, r4, 0
bl sub_8110988
lsls r0, 24
cmp r0, 0
beq _08113D00
movs r0, 0
strh r0, [r4]
ldrh r0, [r5, 0x4]
strh r0, [r4, 0x2]
ldrb r0, [r5]
strb r0, [r4, 0x4]
ldrb r0, [r5, 0x1]
strb r0, [r6, 0x1]
ldrb r0, [r5, 0x2]
strb r0, [r6, 0x2]
ldrb r0, [r5, 0x3]
strb r0, [r6, 0x3]
adds r0, r6, 0x4
b _08113D02
.align 2, 0
_08113CFC: .4byte gUnknown_8456AA0
_08113D00:
movs r0, 0
_08113D02:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end sub_8113CC8
thumb_func_start sub_8113D08
sub_8113D08: @ 8113D08
push {r4-r6,lr}
adds r5, r0, 0
adds r4, r1, 0
adds r6, r5, 0x4
ldr r0, _08113D3C @ =gUnknown_8456AA0
ldrb r1, [r0]
adds r0, r5, 0
bl sub_8110988
lsls r0, 24
cmp r0, 0
beq _08113D40
movs r0, 0x2
strb r0, [r4, 0x6]
ldrh r0, [r5, 0x2]
strh r0, [r4, 0x4]
ldrb r0, [r5, 0x4]
strb r0, [r4]
ldrb r0, [r6, 0x1]
strb r0, [r4, 0x1]
ldrb r0, [r6, 0x2]
strb r0, [r4, 0x2]
ldrb r0, [r6, 0x3]
strb r0, [r4, 0x3]
adds r0, r6, 0x4
b _08113D42
.align 2, 0
_08113D3C: .4byte gUnknown_8456AA0
_08113D40:
movs r0, 0
_08113D42:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end sub_8113D08
thumb_func_start sub_8113D48
sub_8113D48: @ 8113D48
push {r4-r6,lr}
adds r5, r1, 0
adds r4, r0, 0
adds r6, r4, 0x4
ldr r0, _08113D64 @ =gUnknown_8456AA0
ldrb r1, [r0, 0x2]
adds r0, r4, 0
bl sub_8110988
lsls r0, 24
cmp r0, 0
bne _08113D68
movs r0, 0
b _08113D8C
.align 2, 0
_08113D64: .4byte gUnknown_8456AA0
_08113D68:
ldrb r0, [r5, 0x6]
cmp r0, 0
bne _08113D72
movs r0, 0x2
b _08113D74
_08113D72:
movs r0, 0x1
_08113D74:
strh r0, [r4]
ldrh r0, [r5, 0x4]
strh r0, [r4, 0x2]
ldrb r0, [r5]
strb r0, [r6]
ldrb r0, [r5, 0x1]
strb r0, [r6, 0x1]
ldrb r0, [r5, 0x2]
strb r0, [r6, 0x2]
ldrb r0, [r5, 0x3]
strb r0, [r6, 0x3]
adds r0, r6, 0x4
_08113D8C:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end sub_8113D48
thumb_func_start sub_8113D94
sub_8113D94: @ 8113D94
push {r4-r6,lr}
adds r4, r1, 0
adds r5, r0, 0
adds r6, r5, 0x4
ldr r0, _08113DB0 @ =gUnknown_8456AA0
ldrb r1, [r0, 0x2]
adds r0, r5, 0
bl sub_8110988
lsls r0, 24
cmp r0, 0
bne _08113DB4
movs r0, 0
b _08113DD8
.align 2, 0
_08113DB0: .4byte gUnknown_8456AA0
_08113DB4:
ldrh r0, [r5]
cmp r0, 0x2
bne _08113DBE
movs r0, 0
b _08113DC0
_08113DBE:
movs r0, 0x1
_08113DC0:
strb r0, [r4, 0x6]
ldrh r0, [r5, 0x2]
strh r0, [r4, 0x4]
ldrb r0, [r6]
strb r0, [r4]
ldrb r0, [r6, 0x1]
strb r0, [r4, 0x1]
ldrb r0, [r6, 0x2]
strb r0, [r4, 0x2]
ldrb r0, [r6, 0x3]
strb r0, [r4, 0x3]
adds r0, r6, 0x4
_08113DD8:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end sub_8113D94
thumb_func_start sub_8113DE0
sub_8113DE0: @ 8113DE0
push {r4-r7,lr}
+81
View File
@@ -3383,3 +3383,84 @@ u16 * sub_8113C5C(u16 * a0, u16 a1)
a0[1] = a1;
return a0 + 2;
}
u16 * sub_8113C8C(u16 * a0, struct UnkStruct_203AE98 * a1)
{
if (!sub_8110988(a0, gUnknown_8456AA0[41]))
return NULL;
a1->unk_6 = 0xFE;
a1->unk_4 = a0[1];
a1->unk_0 = 0;
a1->unk_1 = 0;
a1->unk_2 = 0;
a1->unk_3 = 0;
return a0 + 2;
}
u16 * sub_8113CC8(u16 * a0, struct UnkStruct_203AE98 * a1)
{
u8 * r6 = (u8 *)a0 + 4;
if (!sub_8110988(a0, gUnknown_8456AA0[0]))
return NULL;
a0[0] = 0;
a0[1] = a1->unk_4;
r6[0] = a1->unk_0;
r6[1] = a1->unk_1;
r6[2] = a1->unk_2;
r6[3] = a1->unk_3;
return (u16 *)(r6 + 4);
}
u16 * sub_8113D08(u16 * a0, struct UnkStruct_203AE98 * a1)
{
u8 * r6 = (u8 *)a0 + 4;
if (!sub_8110988(a0, gUnknown_8456AA0[0]))
return NULL;
a1->unk_6 = 2;
a1->unk_4 = a0[1];
a1->unk_0 = r6[0];
a1->unk_1 = r6[1];
a1->unk_2 = r6[2];
a1->unk_3 = r6[3];
return (u16 *)(r6 + 4);
}
u16 * sub_8113D48(u16 * a0, struct UnkStruct_203AE98 * a1)
{
u16 * r4 = a0;
u8 * r6 = (u8 *)a0 + 4;
if (!sub_8110988(r4, gUnknown_8456AA0[2]))
return NULL;
if (a1->unk_6 == 0)
r4[0] = 2;
else
r4[0] = 1;
r4[1] = a1->unk_4;
r6[0] = a1->unk_0;
r6[1] = a1->unk_1;
r6[2] = a1->unk_2;
r6[3] = a1->unk_3;
return (u16 *)(r6 + 4);
}
u16 * sub_8113D94(u16 * a0, struct UnkStruct_203AE98 * a1)
{
u16 * r5 = a0;
u8 * r6 = (u8 *)a0 + 4;
if (!sub_8110988(r5, gUnknown_8456AA0[2]))
return NULL;
if (r5[0] == 2)
a1->unk_6 = 0;
else
a1->unk_6 = 1;
a1->unk_4 = r5[1];
a1->unk_0 = r6[0];
a1->unk_1 = r6[1];
a1->unk_2 = r6[2];
a1->unk_3 = r6[3];
return (u16 *)(r6 + 4);
}