papermario/asm/nonmatchings/code_26840_len_20d0/func_8004D428.s
2020-09-23 23:16:13 -04:00

29 lines
1.3 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_8004D428
/* 28828 8004D428 000419C3 */ sra $v1, $a0, 7
/* 2882C 8004D42C 3063000F */ andi $v1, $v1, 0xf
/* 28830 8004D430 000410C0 */ sll $v0, $a0, 3
/* 28834 8004D434 304200F0 */ andi $v0, $v0, 0xf0
/* 28838 8004D438 00621821 */ addu $v1, $v1, $v0
/* 2883C 8004D43C 00041143 */ sra $v0, $a0, 5
/* 28840 8004D440 00042083 */ sra $a0, $a0, 2
/* 28844 8004D444 00441021 */ addu $v0, $v0, $a0
/* 28848 8004D448 30420001 */ andi $v0, $v0, 1
/* 2884C 8004D44C 14400007 */ bnez $v0, .L8004D46C
/* 28850 8004D450 00031080 */ sll $v0, $v1, 2
/* 28854 8004D454 00431021 */ addu $v0, $v0, $v1
/* 28858 8004D458 00A20018 */ mult $a1, $v0
/* 2885C 8004D45C 00003812 */ mflo $a3
/* 28860 8004D460 00071203 */ sra $v0, $a3, 8
/* 28864 8004D464 03E00008 */ jr $ra
/* 28868 8004D468 00C21023 */ subu $v0, $a2, $v0
.L8004D46C:
/* 2886C 8004D46C 00431021 */ addu $v0, $v0, $v1
/* 28870 8004D470 00A20018 */ mult $a1, $v0
/* 28874 8004D474 00003812 */ mflo $a3
/* 28878 8004D478 00071203 */ sra $v0, $a3, 8
/* 2887C 8004D47C 03E00008 */ jr $ra
/* 28880 8004D480 00C21021 */ addu $v0, $a2, $v0