mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 08:52:40 +01:00
45 lines
2.2 KiB
ArmAsm
45 lines
2.2 KiB
ArmAsm
.set noat # allow manual use of $at
|
|
.set noreorder # don't insert nops after branches
|
|
|
|
glabel func_80122DFC
|
|
/* B94FC 80122DFC 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* B9500 80122E00 2402F7FF */ addiu $v0, $zero, -0x801
|
|
/* B9504 80122E04 00822024 */ and $a0, $a0, $v0
|
|
/* B9508 80122E08 AFB10014 */ sw $s1, 0x14($sp)
|
|
/* B950C 80122E0C 3C118015 */ lui $s1, %hi(D_80154370)
|
|
/* B9510 80122E10 26314370 */ addiu $s1, $s1, %lo(D_80154370)
|
|
/* B9514 80122E14 AFBF0018 */ sw $ra, 0x18($sp)
|
|
/* B9518 80122E18 AFB00010 */ sw $s0, 0x10($sp)
|
|
/* B951C 80122E1C 8E220000 */ lw $v0, ($s1)
|
|
/* B9520 80122E20 00048080 */ sll $s0, $a0, 2
|
|
/* B9524 80122E24 02021021 */ addu $v0, $s0, $v0
|
|
/* B9528 80122E28 8C430000 */ lw $v1, ($v0)
|
|
/* B952C 80122E2C 10600014 */ beqz $v1, .L80122E80
|
|
/* B9530 80122E30 00000000 */ nop
|
|
/* B9534 80122E34 8C620000 */ lw $v0, ($v1)
|
|
/* B9538 80122E38 10400011 */ beqz $v0, .L80122E80
|
|
/* B953C 80122E3C 30420400 */ andi $v0, $v0, 0x400
|
|
/* B9540 80122E40 10400003 */ beqz $v0, .L80122E50
|
|
/* B9544 80122E44 00000000 */ nop
|
|
/* B9548 80122E48 0C00AB4B */ jal heap_free
|
|
/* B954C 80122E4C 8C640014 */ lw $a0, 0x14($v1)
|
|
.L80122E50:
|
|
/* B9550 80122E50 8E220000 */ lw $v0, ($s1)
|
|
/* B9554 80122E54 02021021 */ addu $v0, $s0, $v0
|
|
/* B9558 80122E58 0C00AB4B */ jal heap_free
|
|
/* B955C 80122E5C 8C440000 */ lw $a0, ($v0)
|
|
/* B9560 80122E60 3C048015 */ lui $a0, %hi(D_80151318)
|
|
/* B9564 80122E64 24841318 */ addiu $a0, $a0, %lo(D_80151318)
|
|
/* B9568 80122E68 8E220000 */ lw $v0, ($s1)
|
|
/* B956C 80122E6C 8C830000 */ lw $v1, ($a0)
|
|
/* B9570 80122E70 02021021 */ addu $v0, $s0, $v0
|
|
/* B9574 80122E74 2463FFFF */ addiu $v1, $v1, -1
|
|
/* B9578 80122E78 AC400000 */ sw $zero, ($v0)
|
|
/* B957C 80122E7C AC830000 */ sw $v1, ($a0)
|
|
.L80122E80:
|
|
/* B9580 80122E80 8FBF0018 */ lw $ra, 0x18($sp)
|
|
/* B9584 80122E84 8FB10014 */ lw $s1, 0x14($sp)
|
|
/* B9588 80122E88 8FB00010 */ lw $s0, 0x10($sp)
|
|
/* B958C 80122E8C 03E00008 */ jr $ra
|
|
/* B9590 80122E90 27BD0020 */ addiu $sp, $sp, 0x20
|