oot/asm/non_matchings/code/code_8006C3A0/func_8006C3D0.s

31 lines
1.3 KiB
ArmAsm

glabel func_8006C3D0
/* AE3570 8006C3D0 AFA50004 */ sw $a1, 4($sp)
/* AE3574 8006C3D4 00052C00 */ sll $a1, $a1, 0x10
/* AE3578 8006C3D8 00052C03 */ sra $a1, $a1, 0x10
/* AE357C 8006C3DC 04A10003 */ bgez $a1, .L8006C3EC
/* AE3580 8006C3E0 00057103 */ sra $t6, $a1, 4
/* AE3584 8006C3E4 24A1000F */ addiu $at, $a1, 0xf
/* AE3588 8006C3E8 00017103 */ sra $t6, $at, 4
.L8006C3EC:
/* AE358C 8006C3EC 000E7C00 */ sll $t7, $t6, 0x10
/* AE3590 8006C3F0 000FC403 */ sra $t8, $t7, 0x10
/* AE3594 8006C3F4 0018C840 */ sll $t9, $t8, 1
/* AE3598 8006C3F8 00991021 */ addu $v0, $a0, $t9
/* AE359C 8006C3FC 3C010001 */ lui $at, 1
/* AE35A0 8006C400 00411021 */ addu $v0, $v0, $at
/* AE35A4 8006C404 944820FC */ lhu $t0, 0x20fc($v0)
/* AE35A8 8006C408 04A10004 */ bgez $a1, .L8006C41C
/* AE35AC 8006C40C 30A9000F */ andi $t1, $a1, 0xf
/* AE35B0 8006C410 11200002 */ beqz $t1, .L8006C41C
/* AE35B4 8006C414 00000000 */ nop
/* AE35B8 8006C418 2529FFF0 */ addiu $t1, $t1, -0x10
.L8006C41C:
/* AE35BC 8006C41C 00095400 */ sll $t2, $t1, 0x10
/* AE35C0 8006C420 000A5C03 */ sra $t3, $t2, 0x10
/* AE35C4 8006C424 240C0001 */ li $t4, 1
/* AE35C8 8006C428 016C7804 */ sllv $t7, $t4, $t3
/* AE35CC 8006C42C 010FC025 */ or $t8, $t0, $t7
/* AE35D0 8006C430 03E00008 */ jr $ra
/* AE35D4 8006C434 A45820FC */ sh $t8, 0x20fc($v0)