papermario/asm/nonmatchings/code_20ec0_len_5040/func_800493EC.s
Ethan Roseman 51c076bd8e symbols!
2020-09-27 21:13:56 -04:00

61 lines
3.0 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_800493EC
/* 247EC 800493EC 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 247F0 800493F0 F7B60030 */ sdc1 $f22, 0x30($sp)
/* 247F4 800493F4 4486B000 */ mtc1 $a2, $f22
/* 247F8 800493F8 AFB00018 */ sw $s0, 0x18($sp)
/* 247FC 800493FC AFBF0024 */ sw $ra, 0x24($sp)
/* 24800 80049400 AFB20020 */ sw $s2, 0x20($sp)
/* 24804 80049404 AFB1001C */ sw $s1, 0x1c($sp)
/* 24808 80049408 F7B40028 */ sdc1 $f20, 0x28($sp)
/* 2480C 8004940C 84840008 */ lh $a0, 8($a0)
/* 24810 80049410 4487A000 */ mtc1 $a3, $f20
/* 24814 80049414 0C00EABB */ jal get_npc_unsafe
/* 24818 80049418 00A0802D */ daddu $s0, $a1, $zero
/* 2481C 8004941C 3C128011 */ lui $s2, %hi(gPlayerStatus)
/* 24820 80049420 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus)
/* 24824 80049424 0600001D */ bltz $s0, .L8004949C
/* 24828 80049428 0040882D */ daddu $s1, $v0, $zero
/* 2482C 8004942C 12000003 */ beqz $s0, .L8004943C
/* 24830 80049430 0000102D */ daddu $v0, $zero, $zero
/* 24834 80049434 0C00A67F */ jal rand_int
/* 24838 80049438 26040001 */ addiu $a0, $s0, 1
.L8004943C:
/* 2483C 8004943C 14400018 */ bnez $v0, .L800494A0
/* 24840 80049440 0000102D */ daddu $v0, $zero, $zero
/* 24844 80049444 27A40010 */ addiu $a0, $sp, 0x10
/* 24848 80049448 C6220034 */ lwc1 $f2, 0x34($s1)
/* 2484C 8004944C 3C014387 */ lui $at, 0x4387
/* 24850 80049450 44810000 */ mtc1 $at, $f0
/* 24854 80049454 4406A000 */ mfc1 $a2, $f20
/* 24858 80049458 46020001 */ sub.s $f0, $f0, $f2
/* 2485C 8004945C C6260038 */ lwc1 $f6, 0x38($s1)
/* 24860 80049460 C6240040 */ lwc1 $f4, 0x40($s1)
/* 24864 80049464 44070000 */ mfc1 $a3, $f0
/* 24868 80049468 27A50014 */ addiu $a1, $sp, 0x14
/* 2486C 8004946C E7A60010 */ swc1 $f6, 0x10($sp)
/* 24870 80049470 0C00A7E7 */ jal add_vec2D_polar
/* 24874 80049474 E7A40014 */ swc1 $f4, 0x14($sp)
/* 24878 80049478 8E460028 */ lw $a2, 0x28($s2)
/* 2487C 8004947C 8E470030 */ lw $a3, 0x30($s2)
/* 24880 80049480 C7AC0010 */ lwc1 $f12, 0x10($sp)
/* 24884 80049484 0C00A7B5 */ jal dist2D
/* 24888 80049488 C7AE0014 */ lwc1 $f14, 0x14($sp)
/* 2488C 8004948C 4616003E */ c.le.s $f0, $f22
/* 24890 80049490 00000000 */ nop
/* 24894 80049494 45010002 */ bc1t .L800494A0
/* 24898 80049498 24020001 */ addiu $v0, $zero, 1
.L8004949C:
/* 2489C 8004949C 0000102D */ daddu $v0, $zero, $zero
.L800494A0:
/* 248A0 800494A0 8FBF0024 */ lw $ra, 0x24($sp)
/* 248A4 800494A4 8FB20020 */ lw $s2, 0x20($sp)
/* 248A8 800494A8 8FB1001C */ lw $s1, 0x1c($sp)
/* 248AC 800494AC 8FB00018 */ lw $s0, 0x18($sp)
/* 248B0 800494B0 D7B60030 */ ldc1 $f22, 0x30($sp)
/* 248B4 800494B4 D7B40028 */ ldc1 $f20, 0x28($sp)
/* 248B8 800494B8 03E00008 */ jr $ra
/* 248BC 800494BC 27BD0038 */ addiu $sp, $sp, 0x38