mirror of
https://github.com/pmret/papermario.git
synced 2024-11-10 13:02:41 +01:00
52 lines
2.4 KiB
ArmAsm
52 lines
2.4 KiB
ArmAsm
.set noat # allow manual use of $at
|
|
.set noreorder # don't insert nops after branches
|
|
|
|
|
|
glabel func_80247338
|
|
/* 13A678 80247338 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* 13A67C 8024733C AFB00010 */ sw $s0, 0x10($sp)
|
|
/* 13A680 80247340 0080802D */ daddu $s0, $a0, $zero
|
|
/* 13A684 80247344 AFB10014 */ sw $s1, 0x14($sp)
|
|
/* 13A688 80247348 3C118011 */ lui $s1, 0x8011
|
|
/* 13A68C 8024734C 2631F290 */ addiu $s1, $s1, -0xd70
|
|
/* 13A690 80247350 26250208 */ addiu $a1, $s1, 0x208
|
|
/* 13A694 80247354 00042400 */ sll $a0, $a0, 0x10
|
|
/* 13A698 80247358 00042403 */ sra $a0, $a0, 0x10
|
|
/* 13A69C 8024735C 24027FFE */ addiu $v0, $zero, 0x7ffe
|
|
/* 13A6A0 80247360 14820002 */ bne $a0, $v0, .L8024736C
|
|
/* 13A6A4 80247364 AFBF0018 */ sw $ra, 0x18($sp)
|
|
/* 13A6A8 80247368 0000802D */ daddu $s0, $zero, $zero
|
|
.L8024736C:
|
|
/* 13A6AC 8024736C 00101400 */ sll $v0, $s0, 0x10
|
|
/* 13A6B0 80247370 00021403 */ sra $v0, $v0, 0x10
|
|
/* 13A6B4 80247374 24037FFF */ addiu $v1, $zero, 0x7fff
|
|
/* 13A6B8 80247378 50430001 */ beql $v0, $v1, .L80247380
|
|
/* 13A6BC 8024737C 0000802D */ daddu $s0, $zero, $zero
|
|
.L80247380:
|
|
/* 13A6C0 80247380 00101400 */ sll $v0, $s0, 0x10
|
|
/* 13A6C4 80247384 00021403 */ sra $v0, $v0, 0x10
|
|
/* 13A6C8 80247388 1040001D */ beqz $v0, .L80247400
|
|
/* 13A6CC 8024738C 0000202D */ daddu $a0, $zero, $zero
|
|
/* 13A6D0 80247390 0040182D */ daddu $v1, $v0, $zero
|
|
.L80247394:
|
|
/* 13A6D4 80247394 84A20000 */ lh $v0, ($a1)
|
|
/* 13A6D8 80247398 1043001B */ beq $v0, $v1, .L80247408
|
|
/* 13A6DC 8024739C 24840001 */ addiu $a0, $a0, 1
|
|
/* 13A6E0 802473A0 28820040 */ slti $v0, $a0, 0x40
|
|
/* 13A6E4 802473A4 1440FFFB */ bnez $v0, .L80247394
|
|
/* 13A6E8 802473A8 24A50002 */ addiu $a1, $a1, 2
|
|
/* 13A6EC 802473AC 0C0911FD */ jal func_802447F4
|
|
/* 13A6F0 802473B0 00000000 */ nop
|
|
/* 13A6F4 802473B4 0040202D */ daddu $a0, $v0, $zero
|
|
/* 13A6F8 802473B8 00101400 */ sll $v0, $s0, 0x10
|
|
/* 13A6FC 802473BC 00021403 */ sra $v0, $v0, 0x10
|
|
/* 13A700 802473C0 10400013 */ beqz $v0, .L80247410
|
|
/* 13A704 802473C4 00021140 */ sll $v0, $v0, 5
|
|
/* 13A708 802473C8 3C038008 */ lui $v1, 0x8008
|
|
/* 13A70C 802473CC 00621821 */ addu $v1, $v1, $v0
|
|
/* 13A710 802473D0 906378FA */ lbu $v1, 0x78fa($v1)
|
|
/* 13A714 802473D4 00031080 */ sll $v0, $v1, 2
|
|
/* 13A718 802473D8 00431021 */ addu $v0, $v0, $v1
|
|
/* 13A71C 802473DC 00021080 */ sll $v0, $v0, 2
|
|
/* 13A720 802473E0 3C018009 */ lui $at, 0x8009
|