papermario/ver/jp/asm/nonmatchings/D2A0/func_80031EA0.s

58 lines
2.9 KiB
ArmAsm
Raw Normal View History

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80031EA0
/* D2A0 80031EA0 27BDFFA0 */ addiu $sp, $sp, -0x60
/* D2A4 80031EA4 AFB00058 */ sw $s0, 0x58($sp)
/* D2A8 80031EA8 00E0802D */ daddu $s0, $a3, $zero
/* D2AC 80031EAC 3C0146FF */ lui $at, 0x46ff
/* D2B0 80031EB0 3421FE00 */ ori $at, $at, 0xfe00
/* D2B4 80031EB4 44811000 */ mtc1 $at, $f2
/* D2B8 80031EB8 44802000 */ mtc1 $zero, $f4
/* D2BC 80031EBC 3C01BF80 */ lui $at, 0xbf80
/* D2C0 80031EC0 44810000 */ mtc1 $at, $f0
/* D2C4 80031EC4 44072000 */ mfc1 $a3, $f4
/* D2C8 80031EC8 27A20038 */ addiu $v0, $sp, 0x38
/* D2CC 80031ECC AFBF005C */ sw $ra, 0x5c($sp)
/* D2D0 80031ED0 E7A20044 */ swc1 $f2, 0x44($sp)
/* D2D4 80031ED4 AFA20018 */ sw $v0, 0x18($sp)
/* D2D8 80031ED8 27A2003C */ addiu $v0, $sp, 0x3c
/* D2DC 80031EDC AFA2001C */ sw $v0, 0x1c($sp)
/* D2E0 80031EE0 27A20040 */ addiu $v0, $sp, 0x40
/* D2E4 80031EE4 AFA20020 */ sw $v0, 0x20($sp)
/* D2E8 80031EE8 27A20044 */ addiu $v0, $sp, 0x44
/* D2EC 80031EEC AFA20024 */ sw $v0, 0x24($sp)
/* D2F0 80031EF0 27A20048 */ addiu $v0, $sp, 0x48
/* D2F4 80031EF4 AFA20028 */ sw $v0, 0x28($sp)
/* D2F8 80031EF8 27A2004C */ addiu $v0, $sp, 0x4c
/* D2FC 80031EFC AFA2002C */ sw $v0, 0x2c($sp)
/* D300 80031F00 27A20050 */ addiu $v0, $sp, 0x50
/* D304 80031F04 E7A00010 */ swc1 $f0, 0x10($sp)
/* D308 80031F08 E7A40014 */ swc1 $f4, 0x14($sp)
/* D30C 80031F0C 0C017375 */ jal func_8005CDD4
/* D310 80031F10 AFA20030 */ sw $v0, 0x30($sp)
/* D314 80031F14 0040202D */ daddu $a0, $v0, $zero
/* D318 80031F18 04800010 */ bltz $a0, .L80031F5C
/* D31C 80031F1C 0000102D */ daddu $v0, $zero, $zero
/* D320 80031F20 12000007 */ beqz $s0, .L80031F40
/* D324 80031F24 000410C0 */ sll $v0, $a0, 3
/* D328 80031F28 00441023 */ subu $v0, $v0, $a0
/* D32C 80031F2C 3C03800E */ lui $v1, %hi(D_800D91B4)
/* D330 80031F30 8C6391B4 */ lw $v1, %lo(D_800D91B4)($v1)
/* D334 80031F34 00021080 */ sll $v0, $v0, 2
/* D338 80031F38 00621821 */ addu $v1, $v1, $v0
/* D33C 80031F3C AE030000 */ sw $v1, ($s0)
.L80031F40:
/* D340 80031F40 000410C0 */ sll $v0, $a0, 3
/* D344 80031F44 00441023 */ subu $v0, $v0, $a0
/* D348 80031F48 3C03800E */ lui $v1, %hi(D_800D91B4)
/* D34C 80031F4C 8C6391B4 */ lw $v1, %lo(D_800D91B4)($v1)
/* D350 80031F50 00021080 */ sll $v0, $v0, 2
/* D354 80031F54 00431021 */ addu $v0, $v0, $v1
/* D358 80031F58 8C420010 */ lw $v0, 0x10($v0)
.L80031F5C:
/* D35C 80031F5C 8FBF005C */ lw $ra, 0x5c($sp)
/* D360 80031F60 8FB00058 */ lw $s0, 0x58($sp)
/* D364 80031F64 03E00008 */ jr $ra
/* D368 80031F68 27BD0060 */ addiu $sp, $sp, 0x60