Files
2019-09-27 01:42:56 -04:00

242 lines
4.0 KiB
ArmAsm

.include "asm/macros.inc"
.include "constants/constants.inc"
.text
.syntax unified
thumb_func_start sub_081514A4
sub_081514A4: @ 0x081514A4
push {lr}
lsls r0, r0, #0x18
lsrs r0, r0, #0x18
cmp r0, #0
beq _081514B2
cmp r0, #1
beq _081514DC
_081514B2:
ldr r1, _081514D8
ldr r2, [r1]
movs r3, #0
movs r0, #2
strb r0, [r2, #0x1b]
ldr r0, [r1]
strb r3, [r0, #0x19]
ldr r2, [r1]
movs r0, #0x14
strb r0, [r2, #0x1a]
ldr r1, [r1]
movs r0, #0xc
strb r0, [r1, #0x18]
bl sub_08151064
bl sub_081511F0
b _081514FE
.align 2, 0
_081514D8: .4byte 0x0203A878
_081514DC:
ldr r1, _0815150C
ldr r2, [r1]
movs r0, #2
strb r0, [r2, #0x1b]
ldr r2, [r1]
movs r0, #0x1c
strb r0, [r2, #0x19]
ldr r2, [r1]
movs r0, #0x14
strb r0, [r2, #0x1a]
ldr r1, [r1]
movs r0, #4
strb r0, [r1, #0x18]
bl sub_08151064
bl sub_08151364
_081514FE:
ldr r0, _0815150C
ldr r1, [r0]
movs r0, #0
strb r0, [r1, #0x1c]
pop {r0}
bx r0
.align 2, 0
_0815150C: .4byte 0x0203A878
thumb_func_end sub_081514A4
thumb_func_start sub_08151510
sub_08151510: @ 0x08151510
push {lr}
lsls r0, r0, #0x10
asrs r0, r0, #0x10
lsls r1, r1, #0x10
asrs r1, r1, #0x10
muls r0, r1, r0
adds r1, r0, #0
cmp r0, #0
bge _08151524
adds r1, #0xff
_08151524:
lsls r0, r1, #8
asrs r0, r0, #0x10
pop {r1}
bx r1
thumb_func_end sub_08151510
thumb_func_start sub_0815152C
sub_0815152C: @ 0x0815152C
push {lr}
adds r3, r1, #0
lsls r0, r0, #0x18
lsrs r0, r0, #0x18
lsls r3, r3, #0x10
asrs r3, r3, #0x10
lsls r2, r2, #0x10
asrs r2, r2, #0x10
muls r3, r2, r3
movs r1, #1
lsls r1, r0
adds r0, r3, #0
bl __divsi3
lsls r0, r0, #0x10
asrs r0, r0, #0x10
pop {r1}
bx r1
thumb_func_end sub_0815152C
thumb_func_start sub_08151550
sub_08151550: @ 0x08151550
push {r4, r5, r6, r7, lr}
adds r2, r1, #0
adds r4, r0, #0
asrs r5, r0, #0x1f
asrs r3, r2, #0x1f
adds r1, r5, #0
adds r0, r4, #0
bl __muldi3
adds r5, r1, #0
adds r4, r0, #0
adds r7, r5, #0
adds r6, r4, #0
cmp r5, #0
bge _08151576
movs r6, #0xff
movs r7, #0
adds r6, r6, r4
adcs r7, r5
_08151576:
lsls r3, r7, #0x18
lsrs r2, r6, #8
adds r0, r3, #0
orrs r0, r2
asrs r1, r7, #8
adds r5, r1, #0
adds r4, r0, #0
adds r0, r4, #0
pop {r4, r5, r6, r7}
pop {r1}
bx r1
thumb_func_end sub_08151550
thumb_func_start sub_0815158C
sub_0815158C: @ 0x0815158C
push {lr}
lsls r0, r0, #0x10
lsrs r0, r0, #0x10
lsls r1, r1, #0x10
asrs r1, r1, #0x10
cmp r1, #0
beq _081515A8
lsls r0, r0, #0x10
asrs r0, r0, #8
bl __divsi3
lsls r0, r0, #0x10
asrs r0, r0, #0x10
b _081515AA
_081515A8:
movs r0, #0
_081515AA:
pop {r1}
bx r1
.align 2, 0
thumb_func_end sub_0815158C
thumb_func_start sub_081515B0
sub_081515B0: @ 0x081515B0
push {lr}
lsls r0, r0, #0x18
lsrs r3, r0, #0x18
lsls r1, r1, #0x10
lsrs r0, r1, #0x10
lsls r2, r2, #0x10
asrs r1, r2, #0x10
cmp r1, #0
beq _081515D2
lsls r0, r0, #0x10
asrs r0, r0, #0x10
lsls r0, r3
bl __divsi3
lsls r0, r0, #0x10
asrs r0, r0, #0x10
b _081515D4
_081515D2:
movs r0, #0
_081515D4:
pop {r1}
bx r1
thumb_func_end sub_081515B0
thumb_func_start sub_081515D8
sub_081515D8: @ 0x081515D8
push {r4, r5, r6, lr}
adds r6, r1, #0
cmp r6, #0
beq _081515F8
adds r2, r0, #0
asrs r3, r0, #0x1f
lsrs r5, r2, #0x18
lsls r4, r3, #8
adds r1, r5, #0
orrs r1, r4
lsls r0, r2, #8
adds r2, r6, #0
asrs r3, r6, #0x1f
bl __divdi3
b _081515FA
_081515F8:
movs r0, #0
_081515FA:
pop {r4, r5, r6}
pop {r1}
bx r1
thumb_func_end sub_081515D8
thumb_func_start sub_08151600
sub_08151600: @ 0x08151600
push {lr}
adds r1, r0, #0
movs r0, #0x80
lsls r0, r0, #9
lsls r1, r1, #0x10
asrs r1, r1, #0x10
bl __divsi3
lsls r0, r0, #0x10
asrs r0, r0, #0x10
pop {r1}
bx r1
thumb_func_end sub_08151600
thumb_func_start sub_08151618
sub_08151618: @ 0x08151618
push {lr}
lsls r0, r0, #0x18
lsrs r0, r0, #0x18
movs r2, #0x80
lsls r2, r2, #1
lsls r2, r0
lsls r1, r1, #0x10
asrs r1, r1, #0x10
adds r0, r2, #0
bl __divsi3
lsls r0, r0, #0x10
asrs r0, r0, #0x10
pop {r1}
bx r1
.align 2, 0
thumb_func_end sub_08151618