.set noat # allow manual use of $at .set noreorder # don't insert nops after branches .section .rodata glabel D_80098480 .double 0.7142857142857143 glabel D_80098488 .double 0.7142857142857143 glabel D_80098490 .double 0.7142857142857143 glabel D_80098498 .double 0.7142857142857143 glabel D_800984A0 .double 0.7142857142857143 glabel D_800984A8 .double 0.7142857142857143 .section .text glabel appendGfx_npc /* 153D0 80039FD0 27BDFF48 */ addiu $sp, $sp, -0xb8 /* 153D4 80039FD4 AFB1009C */ sw $s1, 0x9c($sp) /* 153D8 80039FD8 AFBF00A0 */ sw $ra, 0xa0($sp) /* 153DC 80039FDC AFB00098 */ sw $s0, 0x98($sp) /* 153E0 80039FE0 F7B600B0 */ sdc1 $f22, 0xb0($sp) /* 153E4 80039FE4 F7B400A8 */ sdc1 $f20, 0xa8($sp) /* 153E8 80039FE8 0C00E769 */ jal npc_get_render_yaw /* 153EC 80039FEC 0080882D */ daddu $s1, $a0, $zero /* 153F0 80039FF0 27A40018 */ addiu $a0, $sp, 0x18 /* 153F4 80039FF4 822200AB */ lb $v0, 0xab($s1) /* 153F8 80039FF8 C624003C */ lwc1 $f4, 0x3c($s1) /* 153FC 80039FFC 44821000 */ mtc1 $v0, $f2 /* 15400 8003A000 00000000 */ nop /* 15404 8003A004 468010A0 */ cvt.s.w $f2, $f2 /* 15408 8003A008 46022100 */ add.s $f4, $f4, $f2 /* 1540C 8003A00C 8E250038 */ lw $a1, 0x38($s1) /* 15410 8003A010 8E270040 */ lw $a3, 0x40($s1) /* 15414 8003A014 44062000 */ mfc1 $a2, $f4 /* 15418 8003A018 0C019E40 */ jal guTranslateF /* 1541C 8003A01C 46000586 */ mov.s $f22, $f0 /* 15420 8003A020 8E220000 */ lw $v0, ($s1) /* 15424 8003A024 30420080 */ andi $v0, $v0, 0x80 /* 15428 8003A028 10400007 */ beqz $v0, .L8003A048 /* 1542C 8003A02C 27B00058 */ addiu $s0, $sp, 0x58 /* 15430 8003A030 0C00E11E */ jal mtx_ident_mirror_y /* 15434 8003A034 0200202D */ daddu $a0, $s0, $zero /* 15438 8003A038 0200202D */ daddu $a0, $s0, $zero /* 1543C 8003A03C 27A50018 */ addiu $a1, $sp, 0x18 /* 15440 8003A040 0C019D80 */ jal guMtxCatF /* 15444 8003A044 00A0302D */ daddu $a2, $a1, $zero .L8003A048: /* 15448 8003A048 C6200050 */ lwc1 $f0, 0x50($s1) /* 1544C 8003A04C 4480A000 */ mtc1 $zero, $f20 /* 15450 8003A050 00000000 */ nop /* 15454 8003A054 46140032 */ c.eq.s $f0, $f20 /* 15458 8003A058 00000000 */ nop /* 1545C 8003A05C 4501000A */ bc1t .L8003A088 /* 15460 8003A060 27B00058 */ addiu $s0, $sp, 0x58 /* 15464 8003A064 4405A000 */ mfc1 $a1, $f20 /* 15468 8003A068 44060000 */ mfc1 $a2, $f0 /* 1546C 8003A06C 4407A000 */ mfc1 $a3, $f20 /* 15470 8003A070 0C019E40 */ jal guTranslateF /* 15474 8003A074 0200202D */ daddu $a0, $s0, $zero /* 15478 8003A078 0200202D */ daddu $a0, $s0, $zero /* 1547C 8003A07C 27A50018 */ addiu $a1, $sp, 0x18 /* 15480 8003A080 0C019D80 */ jal guMtxCatF /* 15484 8003A084 00A0302D */ daddu $a2, $a1, $zero .L8003A088: /* 15488 8003A088 C6200048 */ lwc1 $f0, 0x48($s1) /* 1548C 8003A08C 46140032 */ c.eq.s $f0, $f20 /* 15490 8003A090 00000000 */ nop /* 15494 8003A094 4501000B */ bc1t .L8003A0C4 /* 15498 8003A098 27B00058 */ addiu $s0, $sp, 0x58 /* 1549C 8003A09C E7B40010 */ swc1 $f20, 0x10($sp) /* 154A0 8003A0A0 8E250048 */ lw $a1, 0x48($s1) /* 154A4 8003A0A4 4406A000 */ mfc1 $a2, $f20 /* 154A8 8003A0A8 3C073F80 */ lui $a3, 0x3f80 /* 154AC 8003A0AC 0C019EC8 */ jal guRotateF /* 154B0 8003A0B0 0200202D */ daddu $a0, $s0, $zero /* 154B4 8003A0B4 0200202D */ daddu $a0, $s0, $zero /* 154B8 8003A0B8 27A50018 */ addiu $a1, $sp, 0x18 /* 154BC 8003A0BC 0C019D80 */ jal guMtxCatF /* 154C0 8003A0C0 00A0302D */ daddu $a2, $a1, $zero .L8003A0C4: /* 154C4 8003A0C4 C6200044 */ lwc1 $f0, 0x44($s1) /* 154C8 8003A0C8 46140032 */ c.eq.s $f0, $f20 /* 154CC 8003A0CC 00000000 */ nop /* 154D0 8003A0D0 4501000B */ bc1t .L8003A100 /* 154D4 8003A0D4 27B00058 */ addiu $s0, $sp, 0x58 /* 154D8 8003A0D8 E7B40010 */ swc1 $f20, 0x10($sp) /* 154DC 8003A0DC 8E250044 */ lw $a1, 0x44($s1) /* 154E0 8003A0E0 3C063F80 */ lui $a2, 0x3f80 /* 154E4 8003A0E4 4407A000 */ mfc1 $a3, $f20 /* 154E8 8003A0E8 0C019EC8 */ jal guRotateF /* 154EC 8003A0EC 0200202D */ daddu $a0, $s0, $zero /* 154F0 8003A0F0 0200202D */ daddu $a0, $s0, $zero /* 154F4 8003A0F4 27A50018 */ addiu $a1, $sp, 0x18 /* 154F8 8003A0F8 0C019D80 */ jal guMtxCatF /* 154FC 8003A0FC 00A0302D */ daddu $a2, $a1, $zero .L8003A100: /* 15500 8003A100 C620004C */ lwc1 $f0, 0x4c($s1) /* 15504 8003A104 46140032 */ c.eq.s $f0, $f20 /* 15508 8003A108 00000000 */ nop /* 1550C 8003A10C 4501000E */ bc1t .L8003A148 /* 15510 8003A110 27B00058 */ addiu $s0, $sp, 0x58 /* 15514 8003A114 4406A000 */ mfc1 $a2, $f20 /* 15518 8003A118 4407A000 */ mfc1 $a3, $f20 /* 1551C 8003A11C 3C013F80 */ lui $at, 0x3f80 /* 15520 8003A120 44810000 */ mtc1 $at, $f0 /* 15524 8003A124 00000000 */ nop /* 15528 8003A128 E7A00010 */ swc1 $f0, 0x10($sp) /* 1552C 8003A12C 8E25004C */ lw $a1, 0x4c($s1) /* 15530 8003A130 0C019EC8 */ jal guRotateF /* 15534 8003A134 0200202D */ daddu $a0, $s0, $zero /* 15538 8003A138 0200202D */ daddu $a0, $s0, $zero /* 1553C 8003A13C 27A50018 */ addiu $a1, $sp, 0x18 /* 15540 8003A140 0C019D80 */ jal guMtxCatF /* 15544 8003A144 00A0302D */ daddu $a2, $a1, $zero .L8003A148: /* 15548 8003A148 C6200050 */ lwc1 $f0, 0x50($s1) /* 1554C 8003A14C 46140032 */ c.eq.s $f0, $f20 /* 15550 8003A150 00000000 */ nop /* 15554 8003A154 4501000B */ bc1t .L8003A184 /* 15558 8003A158 27B00058 */ addiu $s0, $sp, 0x58 /* 1555C 8003A15C 46000007 */ neg.s $f0, $f0 /* 15560 8003A160 4405A000 */ mfc1 $a1, $f20 /* 15564 8003A164 4407A000 */ mfc1 $a3, $f20 /* 15568 8003A168 44060000 */ mfc1 $a2, $f0 /* 1556C 8003A16C 0C019E40 */ jal guTranslateF /* 15570 8003A170 0200202D */ daddu $a0, $s0, $zero /* 15574 8003A174 0200202D */ daddu $a0, $s0, $zero /* 15578 8003A178 27A50018 */ addiu $a1, $sp, 0x18 /* 1557C 8003A17C 0C019D80 */ jal guMtxCatF /* 15580 8003A180 00A0302D */ daddu $a2, $a1, $zero .L8003A184: /* 15584 8003A184 C6220318 */ lwc1 $f2, 0x318($s1) /* 15588 8003A188 46141032 */ c.eq.s $f2, $f20 /* 1558C 8003A18C 00000000 */ nop /* 15590 8003A190 45000006 */ bc1f .L8003A1AC /* 15594 8003A194 00000000 */ nop /* 15598 8003A198 C620031C */ lwc1 $f0, 0x31c($s1) /* 1559C 8003A19C 46140032 */ c.eq.s $f0, $f20 /* 155A0 8003A1A0 00000000 */ nop /* 155A4 8003A1A4 4501000A */ bc1t .L8003A1D0 /* 155A8 8003A1A8 00000000 */ nop .L8003A1AC: /* 155AC 8003A1AC 44051000 */ mfc1 $a1, $f2 /* 155B0 8003A1B0 8E26031C */ lw $a2, 0x31c($s1) /* 155B4 8003A1B4 4407A000 */ mfc1 $a3, $f20 /* 155B8 8003A1B8 0C019E40 */ jal guTranslateF /* 155BC 8003A1BC 27A40018 */ addiu $a0, $sp, 0x18 /* 155C0 8003A1C0 27A40058 */ addiu $a0, $sp, 0x58 /* 155C4 8003A1C4 27A50018 */ addiu $a1, $sp, 0x18 /* 155C8 8003A1C8 0C019D80 */ jal guMtxCatF /* 155CC 8003A1CC 00A0302D */ daddu $a2, $a1, $zero .L8003A1D0: /* 155D0 8003A1D0 C6200054 */ lwc1 $f0, 0x54($s1) /* 155D4 8003A1D4 3C01800A */ lui $at, %hi(D_80098480) /* 155D8 8003A1D8 D4268480 */ ldc1 $f6, %lo(D_80098480)($at) /* 155DC 8003A1DC 46000021 */ cvt.d.s $f0, $f0 /* 155E0 8003A1E0 46260002 */ mul.d $f0, $f0, $f6 /* 155E4 8003A1E4 00000000 */ nop /* 155E8 8003A1E8 3C013FF0 */ lui $at, 0x3ff0 /* 155EC 8003A1EC 44812800 */ mtc1 $at, $f5 /* 155F0 8003A1F0 44802000 */ mtc1 $zero, $f4 /* 155F4 8003A1F4 00000000 */ nop /* 155F8 8003A1F8 46240032 */ c.eq.d $f0, $f4 /* 155FC 8003A1FC 00000000 */ nop /* 15600 8003A200 45000014 */ bc1f .L8003A254 /* 15604 8003A204 00000000 */ nop /* 15608 8003A208 C6200058 */ lwc1 $f0, 0x58($s1) /* 1560C 8003A20C C6220320 */ lwc1 $f2, 0x320($s1) /* 15610 8003A210 46020002 */ mul.s $f0, $f0, $f2 /* 15614 8003A214 00000000 */ nop /* 15618 8003A218 46000021 */ cvt.d.s $f0, $f0 /* 1561C 8003A21C 46260002 */ mul.d $f0, $f0, $f6 /* 15620 8003A220 00000000 */ nop /* 15624 8003A224 46240032 */ c.eq.d $f0, $f4 /* 15628 8003A228 00000000 */ nop /* 1562C 8003A22C 45000009 */ bc1f .L8003A254 /* 15630 8003A230 00000000 */ nop /* 15634 8003A234 C620005C */ lwc1 $f0, 0x5c($s1) /* 15638 8003A238 46000021 */ cvt.d.s $f0, $f0 /* 1563C 8003A23C 46260002 */ mul.d $f0, $f0, $f6 /* 15640 8003A240 00000000 */ nop /* 15644 8003A244 46240032 */ c.eq.d $f0, $f4 /* 15648 8003A248 00000000 */ nop /* 1564C 8003A24C 4501001F */ bc1t .L8003A2CC /* 15650 8003A250 00000000 */ nop .L8003A254: /* 15654 8003A254 C6260054 */ lwc1 $f6, 0x54($s1) /* 15658 8003A258 3C01800A */ lui $at, %hi(D_80098488) /* 1565C 8003A25C D4288488 */ ldc1 $f8, %lo(D_80098488)($at) /* 15660 8003A260 460031A1 */ cvt.d.s $f6, $f6 /* 15664 8003A264 46283182 */ mul.d $f6, $f6, $f8 /* 15668 8003A268 00000000 */ nop /* 1566C 8003A26C C622005C */ lwc1 $f2, 0x5c($s1) /* 15670 8003A270 460010A1 */ cvt.d.s $f2, $f2 /* 15674 8003A274 46281082 */ mul.d $f2, $f2, $f8 /* 15678 8003A278 00000000 */ nop /* 1567C 8003A27C C6200058 */ lwc1 $f0, 0x58($s1) /* 15680 8003A280 C6240320 */ lwc1 $f4, 0x320($s1) /* 15684 8003A284 46040002 */ mul.s $f0, $f0, $f4 /* 15688 8003A288 00000000 */ nop /* 1568C 8003A28C 46000021 */ cvt.d.s $f0, $f0 /* 15690 8003A290 46280002 */ mul.d $f0, $f0, $f8 /* 15694 8003A294 00000000 */ nop /* 15698 8003A298 27B00058 */ addiu $s0, $sp, 0x58 /* 1569C 8003A29C 462031A0 */ cvt.s.d $f6, $f6 /* 156A0 8003A2A0 462010A0 */ cvt.s.d $f2, $f2 /* 156A4 8003A2A4 44053000 */ mfc1 $a1, $f6 /* 156A8 8003A2A8 44071000 */ mfc1 $a3, $f2 /* 156AC 8003A2AC 46200020 */ cvt.s.d $f0, $f0 /* 156B0 8003A2B0 44060000 */ mfc1 $a2, $f0 /* 156B4 8003A2B4 0C019DF0 */ jal guScaleF /* 156B8 8003A2B8 0200202D */ daddu $a0, $s0, $zero /* 156BC 8003A2BC 0200202D */ daddu $a0, $s0, $zero /* 156C0 8003A2C0 27A50018 */ addiu $a1, $sp, 0x18 /* 156C4 8003A2C4 0C019D80 */ jal guMtxCatF /* 156C8 8003A2C8 00A0302D */ daddu $a2, $a1, $zero .L8003A2CC: /* 156CC 8003A2CC 8E230000 */ lw $v1, ($s1) /* 156D0 8003A2D0 3C024000 */ lui $v0, 0x4000 /* 156D4 8003A2D4 00621024 */ and $v0, $v1, $v0 /* 156D8 8003A2D8 14400014 */ bnez $v0, .L8003A32C /* 156DC 8003A2DC 0220202D */ daddu $a0, $s1, $zero /* 156E0 8003A2E0 3C020100 */ lui $v0, 0x100 /* 156E4 8003A2E4 00621024 */ and $v0, $v1, $v0 /* 156E8 8003A2E8 14400017 */ bnez $v0, .L8003A348 /* 156EC 8003A2EC 00000000 */ nop /* 156F0 8003A2F0 8E220028 */ lw $v0, 0x28($s1) /* 156F4 8003A2F4 10400014 */ beqz $v0, .L8003A348 /* 156F8 8003A2F8 00000000 */ nop /* 156FC 8003A2FC 8E220024 */ lw $v0, 0x24($s1) /* 15700 8003A300 04400011 */ bltz $v0, .L8003A348 /* 15704 8003A304 00000000 */ nop /* 15708 8003A308 4600B28D */ trunc.w.s $f10, $f22 /* 1570C 8003A30C 44055000 */ mfc1 $a1, $f10 /* 15710 8003A310 0C00ED1F */ jal npc_draw_with_palswap /* 15714 8003A314 27A60018 */ addiu $a2, $sp, 0x18 /* 15718 8003A318 8E240024 */ lw $a0, 0x24($s1) /* 1571C 8003A31C 0C0B7972 */ jal func_802DE5C8 /* 15720 8003A320 00000000 */ nop /* 15724 8003A324 0800E8D2 */ j .L8003A348 /* 15728 8003A328 AE22002C */ sw $v0, 0x2c($s1) .L8003A32C: /* 1572C 8003A32C 4600B28D */ trunc.w.s $f10, $f22 /* 15730 8003A330 44055000 */ mfc1 $a1, $f10 /* 15734 8003A334 0C00ED1F */ jal npc_draw_with_palswap /* 15738 8003A338 27A60018 */ addiu $a2, $sp, 0x18 /* 1573C 8003A33C 0C0B77B1 */ jal func_802DDEC4 /* 15740 8003A340 24040001 */ addiu $a0, $zero, 1 /* 15744 8003A344 AE22002C */ sw $v0, 0x2c($s1) .L8003A348: /* 15748 8003A348 8E220000 */ lw $v0, ($s1) /* 1574C 8003A34C 3C030002 */ lui $v1, 2 /* 15750 8003A350 00431024 */ and $v0, $v0, $v1 /* 15754 8003A354 1040008E */ beqz $v0, .L8003A590 /* 15758 8003A358 00000000 */ nop /* 1575C 8003A35C 822200AB */ lb $v0, 0xab($s1) /* 15760 8003A360 C622003C */ lwc1 $f2, 0x3c($s1) /* 15764 8003A364 44820000 */ mtc1 $v0, $f0 /* 15768 8003A368 00000000 */ nop /* 1576C 8003A36C 46800020 */ cvt.s.w $f0, $f0 /* 15770 8003A370 46001080 */ add.s $f2, $f2, $f0 /* 15774 8003A374 C6200040 */ lwc1 $f0, 0x40($s1) /* 15778 8003A378 8E250038 */ lw $a1, 0x38($s1) /* 1577C 8003A37C 46000007 */ neg.s $f0, $f0 /* 15780 8003A380 44070000 */ mfc1 $a3, $f0 /* 15784 8003A384 44061000 */ mfc1 $a2, $f2 /* 15788 8003A388 0C019E40 */ jal guTranslateF /* 1578C 8003A38C 27A40018 */ addiu $a0, $sp, 0x18 /* 15790 8003A390 8E220000 */ lw $v0, ($s1) /* 15794 8003A394 30420080 */ andi $v0, $v0, 0x80 /* 15798 8003A398 10400007 */ beqz $v0, .L8003A3B8 /* 1579C 8003A39C 27B00058 */ addiu $s0, $sp, 0x58 /* 157A0 8003A3A0 0C00E11E */ jal mtx_ident_mirror_y /* 157A4 8003A3A4 0200202D */ daddu $a0, $s0, $zero /* 157A8 8003A3A8 0200202D */ daddu $a0, $s0, $zero /* 157AC 8003A3AC 27A50018 */ addiu $a1, $sp, 0x18 /* 157B0 8003A3B0 0C019D80 */ jal guMtxCatF /* 157B4 8003A3B4 00A0302D */ daddu $a2, $a1, $zero .L8003A3B8: /* 157B8 8003A3B8 C6200048 */ lwc1 $f0, 0x48($s1) /* 157BC 8003A3BC 44801000 */ mtc1 $zero, $f2 /* 157C0 8003A3C0 00000000 */ nop /* 157C4 8003A3C4 46020032 */ c.eq.s $f0, $f2 /* 157C8 8003A3C8 00000000 */ nop /* 157CC 8003A3CC 4500000B */ bc1f .L8003A3FC /* 157D0 8003A3D0 27B00058 */ addiu $s0, $sp, 0x58 /* 157D4 8003A3D4 C6200044 */ lwc1 $f0, 0x44($s1) /* 157D8 8003A3D8 46020032 */ c.eq.s $f0, $f2 /* 157DC 8003A3DC 00000000 */ nop /* 157E0 8003A3E0 45000006 */ bc1f .L8003A3FC /* 157E4 8003A3E4 00000000 */ nop /* 157E8 8003A3E8 C620004C */ lwc1 $f0, 0x4c($s1) /* 157EC 8003A3EC 46020032 */ c.eq.s $f0, $f2 /* 157F0 8003A3F0 00000000 */ nop /* 157F4 8003A3F4 4501000A */ bc1t .L8003A420 /* 157F8 8003A3F8 00000000 */ nop .L8003A3FC: /* 157FC 8003A3FC 8E250044 */ lw $a1, 0x44($s1) /* 15800 8003A400 8E260048 */ lw $a2, 0x48($s1) /* 15804 8003A404 8E27004C */ lw $a3, 0x4c($s1) /* 15808 8003A408 0C0190B4 */ jal guRotateRPYF /* 1580C 8003A40C 0200202D */ daddu $a0, $s0, $zero /* 15810 8003A410 0200202D */ daddu $a0, $s0, $zero /* 15814 8003A414 27A50018 */ addiu $a1, $sp, 0x18 /* 15818 8003A418 0C019D80 */ jal guMtxCatF /* 1581C 8003A41C 00A0302D */ daddu $a2, $a1, $zero .L8003A420: /* 15820 8003A420 C6200054 */ lwc1 $f0, 0x54($s1) /* 15824 8003A424 3C01800A */ lui $at, %hi(D_80098490) /* 15828 8003A428 D4268490 */ ldc1 $f6, %lo(D_80098490)($at) /* 1582C 8003A42C 46000021 */ cvt.d.s $f0, $f0 /* 15830 8003A430 46260002 */ mul.d $f0, $f0, $f6 /* 15834 8003A434 00000000 */ nop /* 15838 8003A438 3C013FF0 */ lui $at, 0x3ff0 /* 1583C 8003A43C 44812800 */ mtc1 $at, $f5 /* 15840 8003A440 44802000 */ mtc1 $zero, $f4 /* 15844 8003A444 00000000 */ nop /* 15848 8003A448 46240032 */ c.eq.d $f0, $f4 /* 1584C 8003A44C 00000000 */ nop /* 15850 8003A450 45000014 */ bc1f .L8003A4A4 /* 15854 8003A454 00000000 */ nop /* 15858 8003A458 C6200058 */ lwc1 $f0, 0x58($s1) /* 1585C 8003A45C C6220320 */ lwc1 $f2, 0x320($s1) /* 15860 8003A460 46020002 */ mul.s $f0, $f0, $f2 /* 15864 8003A464 00000000 */ nop /* 15868 8003A468 46000021 */ cvt.d.s $f0, $f0 /* 1586C 8003A46C 46260002 */ mul.d $f0, $f0, $f6 /* 15870 8003A470 00000000 */ nop /* 15874 8003A474 46240032 */ c.eq.d $f0, $f4 /* 15878 8003A478 00000000 */ nop /* 1587C 8003A47C 45000009 */ bc1f .L8003A4A4 /* 15880 8003A480 00000000 */ nop /* 15884 8003A484 C620005C */ lwc1 $f0, 0x5c($s1) /* 15888 8003A488 46000021 */ cvt.d.s $f0, $f0 /* 1588C 8003A48C 46260002 */ mul.d $f0, $f0, $f6 /* 15890 8003A490 00000000 */ nop /* 15894 8003A494 46240032 */ c.eq.d $f0, $f4 /* 15898 8003A498 00000000 */ nop /* 1589C 8003A49C 4501001F */ bc1t .L8003A51C /* 158A0 8003A4A0 00000000 */ nop .L8003A4A4: /* 158A4 8003A4A4 C6260054 */ lwc1 $f6, 0x54($s1) /* 158A8 8003A4A8 3C01800A */ lui $at, %hi(D_80098498) /* 158AC 8003A4AC D4288498 */ ldc1 $f8, %lo(D_80098498)($at) /* 158B0 8003A4B0 460031A1 */ cvt.d.s $f6, $f6 /* 158B4 8003A4B4 46283182 */ mul.d $f6, $f6, $f8 /* 158B8 8003A4B8 00000000 */ nop /* 158BC 8003A4BC C624005C */ lwc1 $f4, 0x5c($s1) /* 158C0 8003A4C0 46002121 */ cvt.d.s $f4, $f4 /* 158C4 8003A4C4 46282102 */ mul.d $f4, $f4, $f8 /* 158C8 8003A4C8 00000000 */ nop /* 158CC 8003A4CC C6200058 */ lwc1 $f0, 0x58($s1) /* 158D0 8003A4D0 C6220320 */ lwc1 $f2, 0x320($s1) /* 158D4 8003A4D4 46020002 */ mul.s $f0, $f0, $f2 /* 158D8 8003A4D8 00000000 */ nop /* 158DC 8003A4DC 46000021 */ cvt.d.s $f0, $f0 /* 158E0 8003A4E0 46280002 */ mul.d $f0, $f0, $f8 /* 158E4 8003A4E4 00000000 */ nop /* 158E8 8003A4E8 27B00058 */ addiu $s0, $sp, 0x58 /* 158EC 8003A4EC 462031A0 */ cvt.s.d $f6, $f6 /* 158F0 8003A4F0 46202120 */ cvt.s.d $f4, $f4 /* 158F4 8003A4F4 44053000 */ mfc1 $a1, $f6 /* 158F8 8003A4F8 44072000 */ mfc1 $a3, $f4 /* 158FC 8003A4FC 46200020 */ cvt.s.d $f0, $f0 /* 15900 8003A500 44060000 */ mfc1 $a2, $f0 /* 15904 8003A504 0C019DF0 */ jal guScaleF /* 15908 8003A508 0200202D */ daddu $a0, $s0, $zero /* 1590C 8003A50C 0200202D */ daddu $a0, $s0, $zero /* 15910 8003A510 27A50018 */ addiu $a1, $sp, 0x18 /* 15914 8003A514 0C019D80 */ jal guMtxCatF /* 15918 8003A518 00A0302D */ daddu $a2, $a1, $zero .L8003A51C: /* 1591C 8003A51C 8E230000 */ lw $v1, ($s1) /* 15920 8003A520 3C024000 */ lui $v0, 0x4000 /* 15924 8003A524 00621024 */ and $v0, $v1, $v0 /* 15928 8003A528 14400011 */ bnez $v0, .L8003A570 /* 1592C 8003A52C 27A20018 */ addiu $v0, $sp, 0x18 /* 15930 8003A530 3C020100 */ lui $v0, 0x100 /* 15934 8003A534 00621024 */ and $v0, $v1, $v0 /* 15938 8003A538 14400015 */ bnez $v0, .L8003A590 /* 1593C 8003A53C 00000000 */ nop /* 15940 8003A540 8E220028 */ lw $v0, 0x28($s1) /* 15944 8003A544 10400012 */ beqz $v0, .L8003A590 /* 15948 8003A548 0000302D */ daddu $a2, $zero, $zero /* 1594C 8003A54C 4600B28D */ trunc.w.s $f10, $f22 /* 15950 8003A550 44055000 */ mfc1 $a1, $f10 /* 15954 8003A554 27A20018 */ addiu $v0, $sp, 0x18 /* 15958 8003A558 AFA20010 */ sw $v0, 0x10($sp) /* 1595C 8003A55C 8E240024 */ lw $a0, 0x24($s1) /* 15960 8003A560 0C0B78F6 */ jal spr_draw_npc_sprite /* 15964 8003A564 00C0382D */ daddu $a3, $a2, $zero /* 15968 8003A568 0800E964 */ j .L8003A590 /* 1596C 8003A56C 00000000 */ nop .L8003A570: /* 15970 8003A570 AFA20010 */ sw $v0, 0x10($sp) /* 15974 8003A574 3C044000 */ lui $a0, 0x4000 /* 15978 8003A578 34840001 */ ori $a0, $a0, 1 /* 1597C 8003A57C 4600B28D */ trunc.w.s $f10, $f22 /* 15980 8003A580 44055000 */ mfc1 $a1, $f10 /* 15984 8003A584 0000302D */ daddu $a2, $zero, $zero /* 15988 8003A588 0C0B7710 */ jal spr_draw_player_sprite /* 1598C 8003A58C 00C0382D */ daddu $a3, $a2, $zero .L8003A590: /* 15990 8003A590 8E220000 */ lw $v0, ($s1) /* 15994 8003A594 3C030008 */ lui $v1, 8 /* 15998 8003A598 00431024 */ and $v0, $v0, $v1 /* 1599C 8003A59C 1040008A */ beqz $v0, .L8003A7C8 /* 159A0 8003A5A0 00000000 */ nop /* 159A4 8003A5A4 822200AB */ lb $v0, 0xab($s1) /* 159A8 8003A5A8 C622003C */ lwc1 $f2, 0x3c($s1) /* 159AC 8003A5AC 44820000 */ mtc1 $v0, $f0 /* 159B0 8003A5B0 00000000 */ nop /* 159B4 8003A5B4 46800020 */ cvt.s.w $f0, $f0 /* 159B8 8003A5B8 46001080 */ add.s $f2, $f2, $f0 /* 159BC 8003A5BC 8E250038 */ lw $a1, 0x38($s1) /* 159C0 8003A5C0 8E270040 */ lw $a3, 0x40($s1) /* 159C4 8003A5C4 46001087 */ neg.s $f2, $f2 /* 159C8 8003A5C8 44061000 */ mfc1 $a2, $f2 /* 159CC 8003A5CC 0C019E40 */ jal guTranslateF /* 159D0 8003A5D0 27A40018 */ addiu $a0, $sp, 0x18 /* 159D4 8003A5D4 27B00058 */ addiu $s0, $sp, 0x58 /* 159D8 8003A5D8 0C00E11E */ jal mtx_ident_mirror_y /* 159DC 8003A5DC 0200202D */ daddu $a0, $s0, $zero /* 159E0 8003A5E0 0200202D */ daddu $a0, $s0, $zero /* 159E4 8003A5E4 27A50018 */ addiu $a1, $sp, 0x18 /* 159E8 8003A5E8 0C019D80 */ jal guMtxCatF /* 159EC 8003A5EC 00A0302D */ daddu $a2, $a1, $zero /* 159F0 8003A5F0 C6200048 */ lwc1 $f0, 0x48($s1) /* 159F4 8003A5F4 44801000 */ mtc1 $zero, $f2 /* 159F8 8003A5F8 00000000 */ nop /* 159FC 8003A5FC 46020032 */ c.eq.s $f0, $f2 /* 15A00 8003A600 00000000 */ nop /* 15A04 8003A604 4500000B */ bc1f .L8003A634 /* 15A08 8003A608 27B00058 */ addiu $s0, $sp, 0x58 /* 15A0C 8003A60C C6200044 */ lwc1 $f0, 0x44($s1) /* 15A10 8003A610 46020032 */ c.eq.s $f0, $f2 /* 15A14 8003A614 00000000 */ nop /* 15A18 8003A618 45000006 */ bc1f .L8003A634 /* 15A1C 8003A61C 00000000 */ nop /* 15A20 8003A620 C620004C */ lwc1 $f0, 0x4c($s1) /* 15A24 8003A624 46020032 */ c.eq.s $f0, $f2 /* 15A28 8003A628 00000000 */ nop /* 15A2C 8003A62C 4501000A */ bc1t .L8003A658 /* 15A30 8003A630 00000000 */ nop .L8003A634: /* 15A34 8003A634 8E250044 */ lw $a1, 0x44($s1) /* 15A38 8003A638 8E260048 */ lw $a2, 0x48($s1) /* 15A3C 8003A63C 8E27004C */ lw $a3, 0x4c($s1) /* 15A40 8003A640 0C0190B4 */ jal guRotateRPYF /* 15A44 8003A644 0200202D */ daddu $a0, $s0, $zero /* 15A48 8003A648 0200202D */ daddu $a0, $s0, $zero /* 15A4C 8003A64C 27A50018 */ addiu $a1, $sp, 0x18 /* 15A50 8003A650 0C019D80 */ jal guMtxCatF /* 15A54 8003A654 00A0302D */ daddu $a2, $a1, $zero .L8003A658: /* 15A58 8003A658 C6200054 */ lwc1 $f0, 0x54($s1) /* 15A5C 8003A65C 3C01800A */ lui $at, %hi(D_800984A0) /* 15A60 8003A660 D42684A0 */ ldc1 $f6, %lo(D_800984A0)($at) /* 15A64 8003A664 46000021 */ cvt.d.s $f0, $f0 /* 15A68 8003A668 46260002 */ mul.d $f0, $f0, $f6 /* 15A6C 8003A66C 00000000 */ nop /* 15A70 8003A670 3C013FF0 */ lui $at, 0x3ff0 /* 15A74 8003A674 44812800 */ mtc1 $at, $f5 /* 15A78 8003A678 44802000 */ mtc1 $zero, $f4 /* 15A7C 8003A67C 00000000 */ nop /* 15A80 8003A680 46240032 */ c.eq.d $f0, $f4 /* 15A84 8003A684 00000000 */ nop /* 15A88 8003A688 45000014 */ bc1f .L8003A6DC /* 15A8C 8003A68C 00000000 */ nop /* 15A90 8003A690 C6200058 */ lwc1 $f0, 0x58($s1) /* 15A94 8003A694 C6220320 */ lwc1 $f2, 0x320($s1) /* 15A98 8003A698 46020002 */ mul.s $f0, $f0, $f2 /* 15A9C 8003A69C 00000000 */ nop /* 15AA0 8003A6A0 46000021 */ cvt.d.s $f0, $f0 /* 15AA4 8003A6A4 46260002 */ mul.d $f0, $f0, $f6 /* 15AA8 8003A6A8 00000000 */ nop /* 15AAC 8003A6AC 46240032 */ c.eq.d $f0, $f4 /* 15AB0 8003A6B0 00000000 */ nop /* 15AB4 8003A6B4 45000009 */ bc1f .L8003A6DC /* 15AB8 8003A6B8 00000000 */ nop /* 15ABC 8003A6BC C620005C */ lwc1 $f0, 0x5c($s1) /* 15AC0 8003A6C0 46000021 */ cvt.d.s $f0, $f0 /* 15AC4 8003A6C4 46260002 */ mul.d $f0, $f0, $f6 /* 15AC8 8003A6C8 00000000 */ nop /* 15ACC 8003A6CC 46240032 */ c.eq.d $f0, $f4 /* 15AD0 8003A6D0 00000000 */ nop /* 15AD4 8003A6D4 4501001F */ bc1t .L8003A754 /* 15AD8 8003A6D8 00000000 */ nop .L8003A6DC: /* 15ADC 8003A6DC C6260054 */ lwc1 $f6, 0x54($s1) /* 15AE0 8003A6E0 3C01800A */ lui $at, %hi(D_800984A8) /* 15AE4 8003A6E4 D42884A8 */ ldc1 $f8, %lo(D_800984A8)($at) /* 15AE8 8003A6E8 460031A1 */ cvt.d.s $f6, $f6 /* 15AEC 8003A6EC 46283182 */ mul.d $f6, $f6, $f8 /* 15AF0 8003A6F0 00000000 */ nop /* 15AF4 8003A6F4 C624005C */ lwc1 $f4, 0x5c($s1) /* 15AF8 8003A6F8 46002121 */ cvt.d.s $f4, $f4 /* 15AFC 8003A6FC 46282102 */ mul.d $f4, $f4, $f8 /* 15B00 8003A700 00000000 */ nop /* 15B04 8003A704 C6200058 */ lwc1 $f0, 0x58($s1) /* 15B08 8003A708 C6220320 */ lwc1 $f2, 0x320($s1) /* 15B0C 8003A70C 46020002 */ mul.s $f0, $f0, $f2 /* 15B10 8003A710 00000000 */ nop /* 15B14 8003A714 46000021 */ cvt.d.s $f0, $f0 /* 15B18 8003A718 46280002 */ mul.d $f0, $f0, $f8 /* 15B1C 8003A71C 00000000 */ nop /* 15B20 8003A720 27B00058 */ addiu $s0, $sp, 0x58 /* 15B24 8003A724 462031A0 */ cvt.s.d $f6, $f6 /* 15B28 8003A728 46202120 */ cvt.s.d $f4, $f4 /* 15B2C 8003A72C 44053000 */ mfc1 $a1, $f6 /* 15B30 8003A730 44072000 */ mfc1 $a3, $f4 /* 15B34 8003A734 46200020 */ cvt.s.d $f0, $f0 /* 15B38 8003A738 44060000 */ mfc1 $a2, $f0 /* 15B3C 8003A73C 0C019DF0 */ jal guScaleF /* 15B40 8003A740 0200202D */ daddu $a0, $s0, $zero /* 15B44 8003A744 0200202D */ daddu $a0, $s0, $zero /* 15B48 8003A748 27A50018 */ addiu $a1, $sp, 0x18 /* 15B4C 8003A74C 0C019D80 */ jal guMtxCatF /* 15B50 8003A750 00A0302D */ daddu $a2, $a1, $zero .L8003A754: /* 15B54 8003A754 8E230000 */ lw $v1, ($s1) /* 15B58 8003A758 3C024000 */ lui $v0, 0x4000 /* 15B5C 8003A75C 00621024 */ and $v0, $v1, $v0 /* 15B60 8003A760 14400011 */ bnez $v0, .L8003A7A8 /* 15B64 8003A764 27A20018 */ addiu $v0, $sp, 0x18 /* 15B68 8003A768 3C020100 */ lui $v0, 0x100 /* 15B6C 8003A76C 00621024 */ and $v0, $v1, $v0 /* 15B70 8003A770 14400015 */ bnez $v0, .L8003A7C8 /* 15B74 8003A774 00000000 */ nop /* 15B78 8003A778 8E220028 */ lw $v0, 0x28($s1) /* 15B7C 8003A77C 10400012 */ beqz $v0, .L8003A7C8 /* 15B80 8003A780 0000302D */ daddu $a2, $zero, $zero /* 15B84 8003A784 4600B28D */ trunc.w.s $f10, $f22 /* 15B88 8003A788 44055000 */ mfc1 $a1, $f10 /* 15B8C 8003A78C 27A20018 */ addiu $v0, $sp, 0x18 /* 15B90 8003A790 AFA20010 */ sw $v0, 0x10($sp) /* 15B94 8003A794 8E240024 */ lw $a0, 0x24($s1) /* 15B98 8003A798 0C0B78F6 */ jal spr_draw_npc_sprite /* 15B9C 8003A79C 00C0382D */ daddu $a3, $a2, $zero /* 15BA0 8003A7A0 0800E9F2 */ j .L8003A7C8 /* 15BA4 8003A7A4 00000000 */ nop .L8003A7A8: /* 15BA8 8003A7A8 AFA20010 */ sw $v0, 0x10($sp) /* 15BAC 8003A7AC 3C044000 */ lui $a0, 0x4000 /* 15BB0 8003A7B0 34840001 */ ori $a0, $a0, 1 /* 15BB4 8003A7B4 4600B28D */ trunc.w.s $f10, $f22 /* 15BB8 8003A7B8 44055000 */ mfc1 $a1, $f10 /* 15BBC 8003A7BC 0000302D */ daddu $a2, $zero, $zero /* 15BC0 8003A7C0 0C0B7710 */ jal spr_draw_player_sprite /* 15BC4 8003A7C4 00C0382D */ daddu $a3, $a2, $zero .L8003A7C8: /* 15BC8 8003A7C8 8E220008 */ lw $v0, 8($s1) /* 15BCC 8003A7CC 0040F809 */ jalr $v0 /* 15BD0 8003A7D0 0220202D */ daddu $a0, $s1, $zero /* 15BD4 8003A7D4 8FBF00A0 */ lw $ra, 0xa0($sp) /* 15BD8 8003A7D8 8FB1009C */ lw $s1, 0x9c($sp) /* 15BDC 8003A7DC 8FB00098 */ lw $s0, 0x98($sp) /* 15BE0 8003A7E0 D7B600B0 */ ldc1 $f22, 0xb0($sp) /* 15BE4 8003A7E4 D7B400A8 */ ldc1 $f20, 0xa8($sp) /* 15BE8 8003A7E8 03E00008 */ jr $ra /* 15BEC 8003A7EC 27BD00B8 */ addiu $sp, $sp, 0xb8