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

37 lines
1.7 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_8004D23C
/* 2863C 8004D23C 00A0382D */ daddu $a3, $a1, $zero
/* 28640 8004D240 8CE20000 */ lw $v0, ($a3)
/* 28644 8004D244 8C860008 */ lw $a2, 8($a0)
/* 28648 8004D248 90430001 */ lbu $v1, 1($v0)
/* 2864C 8004D24C 90450002 */ lbu $a1, 2($v0)
/* 28650 8004D250 90440000 */ lbu $a0, ($v0)
/* 28654 8004D254 24420003 */ addiu $v0, $v0, 3
/* 28658 8004D258 ACE20000 */ sw $v0, ($a3)
/* 2865C 8004D25C 24020002 */ addiu $v0, $zero, 2
/* 28660 8004D260 00031A00 */ sll $v1, $v1, 8
/* 28664 8004D264 00651821 */ addu $v1, $v1, $a1
/* 28668 8004D268 A0E40084 */ sb $a0, 0x84($a3)
/* 2866C 8004D26C 308400FF */ andi $a0, $a0, 0xff
/* 28670 8004D270 1082000B */ beq $a0, $v0, .L8004D2A0
/* 28674 8004D274 00661821 */ addu $v1, $v1, $a2
/* 28678 8004D278 28820003 */ slti $v0, $a0, 3
/* 2867C 8004D27C 10400005 */ beqz $v0, .L8004D294
/* 28680 8004D280 24020001 */ addiu $v0, $zero, 1
/* 28684 8004D284 10820006 */ beq $a0, $v0, .L8004D2A0
/* 28688 8004D288 00000000 */ nop
/* 2868C 8004D28C 03E00008 */ jr $ra
/* 28690 8004D290 ACE00080 */ sw $zero, 0x80($a3)
.L8004D294:
/* 28694 8004D294 24020003 */ addiu $v0, $zero, 3
/* 28698 8004D298 54820003 */ bnel $a0, $v0, .L8004D2A8
/* 2869C 8004D29C ACE00080 */ sw $zero, 0x80($a3)
.L8004D2A0:
/* 286A0 8004D2A0 03E00008 */ jr $ra
/* 286A4 8004D2A4 ACE30080 */ sw $v1, 0x80($a3)
.L8004D2A8:
/* 286A8 8004D2A8 03E00008 */ jr $ra
/* 286AC 8004D2AC 00000000 */ nop