mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 17:02:46 +01:00
66 lines
3.3 KiB
ArmAsm
66 lines
3.3 KiB
ArmAsm
.set noat # allow manual use of $at
|
|
.set noreorder # don't insert nops after branches
|
|
|
|
glabel func_80283080
|
|
/* 7E3F00 80283080 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* 7E3F04 80283084 AFB00010 */ sw $s0, 0x10($sp)
|
|
/* 7E3F08 80283088 0080802D */ daddu $s0, $a0, $zero
|
|
/* 7E3F0C 8028308C AFBF0018 */ sw $ra, 0x18($sp)
|
|
/* 7E3F10 80283090 AFB10014 */ sw $s1, 0x14($sp)
|
|
/* 7E3F14 80283094 8E0400B0 */ lw $a0, 0xb0($s0)
|
|
/* 7E3F18 80283098 0C04417A */ jal get_entity_by_index
|
|
/* 7E3F1C 8028309C 8E1100AC */ lw $s1, 0xac($s0)
|
|
/* 7E3F20 802830A0 3C0551EB */ lui $a1, 0x51eb
|
|
/* 7E3F24 802830A4 34A5851F */ ori $a1, $a1, 0x851f
|
|
/* 7E3F28 802830A8 C4400050 */ lwc1 $f0, 0x50($v0)
|
|
/* 7E3F2C 802830AC 8E240010 */ lw $a0, 0x10($s1)
|
|
/* 7E3F30 802830B0 4600008D */ trunc.w.s $f2, $f0
|
|
/* 7E3F34 802830B4 44031000 */ mfc1 $v1, $f2
|
|
/* 7E3F38 802830B8 00000000 */ nop
|
|
/* 7E3F3C 802830BC 00641823 */ subu $v1, $v1, $a0
|
|
/* 7E3F40 802830C0 00650018 */ mult $v1, $a1
|
|
/* 7E3F44 802830C4 C4400048 */ lwc1 $f0, 0x48($v0)
|
|
/* 7E3F48 802830C8 8E220008 */ lw $v0, 8($s1)
|
|
/* 7E3F4C 802830CC 00003810 */ mfhi $a3
|
|
/* 7E3F50 802830D0 4600008D */ trunc.w.s $f2, $f0
|
|
/* 7E3F54 802830D4 44061000 */ mfc1 $a2, $f2
|
|
/* 7E3F58 802830D8 00000000 */ nop
|
|
/* 7E3F5C 802830DC 00C23023 */ subu $a2, $a2, $v0
|
|
/* 7E3F60 802830E0 00C50018 */ mult $a2, $a1
|
|
/* 7E3F64 802830E4 00031FC3 */ sra $v1, $v1, 0x1f
|
|
/* 7E3F68 802830E8 8E0200A4 */ lw $v0, 0xa4($s0)
|
|
/* 7E3F6C 802830EC 000738C3 */ sra $a3, $a3, 3
|
|
/* 7E3F70 802830F0 00E33823 */ subu $a3, $a3, $v1
|
|
/* 7E3F74 802830F4 00002810 */ mfhi $a1
|
|
/* 7E3F78 802830F8 92230004 */ lbu $v1, 4($s1)
|
|
/* 7E3F7C 802830FC 00E21021 */ addu $v0, $a3, $v0
|
|
/* 7E3F80 80283100 00430018 */ mult $v0, $v1
|
|
/* 7E3F84 80283104 8E04009C */ lw $a0, 0x9c($s0)
|
|
/* 7E3F88 80283108 00001012 */ mflo $v0
|
|
/* 7E3F8C 8028310C 000637C3 */ sra $a2, $a2, 0x1f
|
|
/* 7E3F90 80283110 000528C3 */ sra $a1, $a1, 3
|
|
/* 7E3F94 80283114 00E30018 */ mult $a3, $v1
|
|
/* 7E3F98 80283118 00A62823 */ subu $a1, $a1, $a2
|
|
/* 7E3F9C 8028311C 00A42021 */ addu $a0, $a1, $a0
|
|
/* 7E3FA0 80283120 00822021 */ addu $a0, $a0, $v0
|
|
/* 7E3FA4 80283124 8E230000 */ lw $v1, ($s1)
|
|
/* 7E3FA8 80283128 00004812 */ mflo $t1
|
|
/* 7E3FAC 8028312C 00A91021 */ addu $v0, $a1, $t1
|
|
/* 7E3FB0 80283130 00621021 */ addu $v0, $v1, $v0
|
|
/* 7E3FB4 80283134 90420000 */ lbu $v0, ($v0)
|
|
/* 7E3FB8 80283138 00641821 */ addu $v1, $v1, $a0
|
|
/* 7E3FBC 8028313C A0620000 */ sb $v0, ($v1)
|
|
/* 7E3FC0 80283140 92220004 */ lbu $v0, 4($s1)
|
|
/* 7E3FC4 80283144 00E20018 */ mult $a3, $v0
|
|
/* 7E3FC8 80283148 8E230000 */ lw $v1, ($s1)
|
|
/* 7E3FCC 8028314C 00003012 */ mflo $a2
|
|
/* 7E3FD0 80283150 00A62821 */ addu $a1, $a1, $a2
|
|
/* 7E3FD4 80283154 00651821 */ addu $v1, $v1, $a1
|
|
/* 7E3FD8 80283158 A0600000 */ sb $zero, ($v1)
|
|
/* 7E3FDC 8028315C 8FBF0018 */ lw $ra, 0x18($sp)
|
|
/* 7E3FE0 80283160 8FB10014 */ lw $s1, 0x14($sp)
|
|
/* 7E3FE4 80283164 8FB00010 */ lw $s0, 0x10($sp)
|
|
/* 7E3FE8 80283168 24020002 */ addiu $v0, $zero, 2
|
|
/* 7E3FEC 8028316C 03E00008 */ jr $ra
|
|
/* 7E3FF0 80283170 27BD0020 */ addiu $sp, $sp, 0x20
|