.include "asm/macros.inc" .include "constants/constants.inc" .syntax unified .text thumb_func_start sub_8151534 sub_8151534: @ 8151534 push {lr} lsls r0, 16 asrs r0, 16 lsls r1, 16 asrs r1, 16 muls r0, r1 adds r1, r0, 0 cmp r0, 0 bge _08151548 adds r1, 0xFF _08151548: lsls r0, r1, 8 asrs r0, 16 pop {r1} bx r1 thumb_func_end sub_8151534 thumb_func_start sub_8151550 sub_8151550: @ 8151550 push {lr} adds r3, r1, 0 lsls r0, 24 lsrs r0, 24 lsls r3, 16 asrs r3, 16 lsls r2, 16 asrs r2, 16 muls r3, r2 movs r1, 0x1 lsls r1, r0 adds r0, r3, 0 bl __divsi3 lsls r0, 16 asrs r0, 16 pop {r1} bx r1 thumb_func_end sub_8151550 thumb_func_start sub_8151574 sub_8151574: @ 8151574 push {r4-r7,lr} adds r2, r1, 0 adds r4, r0, 0 asrs r5, r0, 31 asrs r3, r2, 31 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 _0815159A movs r6, 0xFF movs r7, 0 adds r6, r4 adcs r7, r5 _0815159A: lsls r3, r7, 24 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-r7} pop {r1} bx r1 thumb_func_end sub_8151574 thumb_func_start sub_81515B0 sub_81515B0: @ 81515B0 push {lr} lsls r0, 16 lsrs r0, 16 lsls r1, 16 asrs r1, 16 cmp r1, 0 beq _081515CC lsls r0, 16 asrs r0, 8 bl __divsi3 lsls r0, 16 asrs r0, 16 b _081515CE _081515CC: movs r0, 0 _081515CE: pop {r1} bx r1 thumb_func_end sub_81515B0 thumb_func_start sub_81515D4 sub_81515D4: @ 81515D4 push {lr} lsls r0, 24 lsrs r3, r0, 24 lsls r1, 16 lsrs r0, r1, 16 lsls r2, 16 asrs r1, r2, 16 cmp r1, 0 beq _081515F6 lsls r0, 16 asrs r0, 16 lsls r0, r3 bl __divsi3 lsls r0, 16 asrs r0, 16 b _081515F8 _081515F6: movs r0, 0 _081515F8: pop {r1} bx r1 thumb_func_end sub_81515D4 thumb_func_start sub_81515FC sub_81515FC: @ 81515FC push {r4-r6,lr} adds r6, r1, 0 cmp r6, 0 beq _0815161C adds r2, r0, 0 asrs r3, r0, 31 lsrs r5, r2, 24 lsls r4, r3, 8 adds r1, r5, 0 orrs r1, r4 lsls r0, r2, 8 adds r2, r6, 0 asrs r3, r6, 31 bl __divdi3 b _0815161E _0815161C: movs r0, 0 _0815161E: pop {r4-r6} pop {r1} bx r1 thumb_func_end sub_81515FC thumb_func_start sub_8151624 sub_8151624: @ 8151624 push {lr} adds r1, r0, 0 movs r0, 0x80 lsls r0, 9 lsls r1, 16 asrs r1, 16 bl __divsi3 lsls r0, 16 asrs r0, 16 pop {r1} bx r1 thumb_func_end sub_8151624 thumb_func_start sub_815163C sub_815163C: @ 815163C push {lr} lsls r0, 24 lsrs r0, 24 movs r2, 0x80 lsls r2, 1 lsls r2, r0 lsls r1, 16 asrs r1, 16 adds r0, r2, 0 bl __divsi3 lsls r0, 16 asrs r0, 16 pop {r1} bx r1 thumb_func_end sub_815163C thumb_func_start sub_815165C sub_815165C: @ 815165C push {lr} adds r2, r0, 0 ldr r1, _08151674 ldr r0, _08151670 asrs r3, r2, 31 bl __divdi3 pop {r1} bx r1 .align 2, 0 _08151670: .4byte 0x00010000 _08151674: .4byte 0x00000000 thumb_func_end sub_815165C .align 2, 0 @ Don't pad with nop.