sub_81131FC
This commit is contained in:
@@ -5,83 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_81131FC
|
||||
sub_81131FC: @ 81131FC
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
adds r7, r0, 0
|
||||
movs r0, 0
|
||||
mov r8, r0
|
||||
adds r0, r7, 0
|
||||
bl sub_81132A0
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
cmp r0, 0x1
|
||||
bne _08113228
|
||||
movs r0, 0
|
||||
b _08113276
|
||||
_0811321C:
|
||||
lsls r4, r6
|
||||
ldrb r0, [r7, 0x1]
|
||||
eors r4, r0
|
||||
strb r4, [r7, 0x1]
|
||||
adds r0, r6, 0
|
||||
b _08113276
|
||||
_08113228:
|
||||
movs r5, 0
|
||||
movs r4, 0x1
|
||||
_0811322C:
|
||||
ldrb r1, [r7, 0x1]
|
||||
ldr r2, _08113284 @ =gUnknown_8456940
|
||||
adds r0, r5, r2
|
||||
ldrb r6, [r0]
|
||||
asrs r1, r6
|
||||
ands r1, r4
|
||||
cmp r1, 0
|
||||
beq _0811324E
|
||||
mov r8, r5
|
||||
str r2, [sp]
|
||||
bl Random
|
||||
adds r1, r4, 0
|
||||
ands r1, r0
|
||||
ldr r2, [sp]
|
||||
cmp r1, 0
|
||||
bne _0811321C
|
||||
_0811324E:
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
cmp r5, 0x7
|
||||
bls _0811322C
|
||||
ldrb r1, [r7, 0x1]
|
||||
mov r3, r8
|
||||
adds r0, r3, r2
|
||||
ldrb r2, [r0]
|
||||
adds r0, r1, 0
|
||||
asrs r0, r2
|
||||
movs r3, 0x1
|
||||
ands r0, r3
|
||||
cmp r0, 0
|
||||
beq _08113274
|
||||
adds r0, r3, 0
|
||||
lsls r0, r2
|
||||
eors r1, r0
|
||||
strb r1, [r7, 0x1]
|
||||
_08113274:
|
||||
adds r0, r2, 0
|
||||
_08113276:
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08113284: .4byte gUnknown_8456940
|
||||
thumb_func_end sub_81131FC
|
||||
|
||||
thumb_func_start sub_8113288
|
||||
sub_8113288: @ 8113288
|
||||
push {lr}
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
.section .rodata
|
||||
|
||||
.align 2
|
||||
gUnknown_8456940:: @ 8456940
|
||||
.incbin "baserom.gba", 0x456940, 0x8
|
||||
|
||||
gUnknown_8456948:: @ 8456948
|
||||
.incbin "baserom.gba", 0x456948, 0xAC
|
||||
|
||||
|
||||
@@ -2331,3 +2331,32 @@ u8 sub_8113194(struct Var4038Struct * a0)
|
||||
a0->unk_1 |= 1 << gUnknown_8456938[retval];
|
||||
return gUnknown_8456938[retval];
|
||||
}
|
||||
|
||||
const u8 gUnknown_8456940[] = {
|
||||
5, 6, 3, 7, 4, 1, 0, 2
|
||||
};
|
||||
|
||||
u8 sub_81131FC(struct Var4038Struct * a0)
|
||||
{
|
||||
u8 i;
|
||||
u8 retval = 0;
|
||||
|
||||
if (sub_81132A0(a0) == 1)
|
||||
return 0;
|
||||
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
if ((a0->unk_1 >> gUnknown_8456940[i]) & 1)
|
||||
{
|
||||
retval = i;
|
||||
if (Random() % 2)
|
||||
{
|
||||
a0->unk_1 ^= 1 << gUnknown_8456940[i];
|
||||
return gUnknown_8456940[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
if ((a0->unk_1 >> gUnknown_8456940[retval]) & 1)
|
||||
a0->unk_1 ^= 1 << gUnknown_8456940[retval];
|
||||
return gUnknown_8456940[retval];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user