.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_8003C804 /* 17C04 8003C804 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 17C08 8003C808 AFB00018 */ sw $s0, 0x18($sp) /* 17C0C 8003C80C 0080802D */ daddu $s0, $a0, $zero /* 17C10 8003C810 AFB1001C */ sw $s1, 0x1c($sp) /* 17C14 8003C814 00A0882D */ daddu $s1, $a1, $zero /* 17C18 8003C818 AFB20020 */ sw $s2, 0x20($sp) /* 17C1C 8003C81C 02119021 */ addu $s2, $s0, $s1 /* 17C20 8003C820 AFBF0024 */ sw $ra, 0x24($sp) /* 17C24 8003C824 82430330 */ lb $v1, 0x330($s2) /* 17C28 8003C828 10600005 */ beqz $v1, .L8003C840 /* 17C2C 8003C82C 24020001 */ addiu $v0, $zero, 1 /* 17C30 8003C830 10620023 */ beq $v1, $v0, .L8003C8C0 /* 17C34 8003C834 00111080 */ sll $v0, $s1, 2 /* 17C38 8003C838 0800F24D */ j .L8003C934 /* 17C3C 8003C83C 00000000 */ nop .L8003C840: /* 17C40 8003C840 860200A8 */ lh $v0, 0xa8($s0) /* 17C44 8003C844 3C013FE0 */ lui $at, 0x3fe0 /* 17C48 8003C848 44810800 */ mtc1 $at, $f1 /* 17C4C 8003C84C 44800000 */ mtc1 $zero, $f0 /* 17C50 8003C850 44821000 */ mtc1 $v0, $f2 /* 17C54 8003C854 00000000 */ nop /* 17C58 8003C858 468010A1 */ cvt.d.w $f2, $f2 /* 17C5C 8003C85C 46201082 */ mul.d $f2, $f2, $f0 /* 17C60 8003C860 00000000 */ nop /* 17C64 8003C864 C6060040 */ lwc1 $f6, 0x40($s0) /* 17C68 8003C868 3C013F80 */ lui $at, 0x3f80 /* 17C6C 8003C86C 44812000 */ mtc1 $at, $f4 /* 17C70 8003C870 C600003C */ lwc1 $f0, 0x3c($s0) /* 17C74 8003C874 AFA00014 */ sw $zero, 0x14($sp) /* 17C78 8003C878 E7A40010 */ swc1 $f4, 0x10($sp) /* 17C7C 8003C87C 46000021 */ cvt.d.s $f0, $f0 /* 17C80 8003C880 46220000 */ add.d $f0, $f0, $f2 /* 17C84 8003C884 3C0140A0 */ lui $at, 0x40a0 /* 17C88 8003C888 44811000 */ mtc1 $at, $f2 /* 17C8C 8003C88C 8E050038 */ lw $a1, 0x38($s0) /* 17C90 8003C890 46023181 */ sub.s $f6, $f6, $f2 /* 17C94 8003C894 46200020 */ cvt.s.d $f0, $f0 /* 17C98 8003C898 44060000 */ mfc1 $a2, $f0 /* 17C9C 8003C89C 44073000 */ mfc1 $a3, $f6 /* 17CA0 8003C8A0 0C01C5CC */ jal func_80071730 /* 17CA4 8003C8A4 24040002 */ addiu $a0, $zero, 2 /* 17CA8 8003C8A8 00111880 */ sll $v1, $s1, 2 /* 17CAC 8003C8AC 02031821 */ addu $v1, $s0, $v1 /* 17CB0 8003C8B0 AC620324 */ sw $v0, 0x324($v1) /* 17CB4 8003C8B4 24020001 */ addiu $v0, $zero, 1 /* 17CB8 8003C8B8 0800F24D */ j .L8003C934 /* 17CBC 8003C8BC A2420330 */ sb $v0, 0x330($s2) .L8003C8C0: /* 17CC0 8003C8C0 02021021 */ addu $v0, $s0, $v0 /* 17CC4 8003C8C4 8C420324 */ lw $v0, 0x324($v0) /* 17CC8 8003C8C8 C6000038 */ lwc1 $f0, 0x38($s0) /* 17CCC 8003C8CC 8C43000C */ lw $v1, 0xc($v0) /* 17CD0 8003C8D0 E4600004 */ swc1 $f0, 4($v1) /* 17CD4 8003C8D4 860200A8 */ lh $v0, 0xa8($s0) /* 17CD8 8003C8D8 3C013FE0 */ lui $at, 0x3fe0 /* 17CDC 8003C8DC 44810800 */ mtc1 $at, $f1 /* 17CE0 8003C8E0 44800000 */ mtc1 $zero, $f0 /* 17CE4 8003C8E4 44821000 */ mtc1 $v0, $f2 /* 17CE8 8003C8E8 00000000 */ nop /* 17CEC 8003C8EC 468010A1 */ cvt.d.w $f2, $f2 /* 17CF0 8003C8F0 46201082 */ mul.d $f2, $f2, $f0 /* 17CF4 8003C8F4 00000000 */ nop /* 17CF8 8003C8F8 C600003C */ lwc1 $f0, 0x3c($s0) /* 17CFC 8003C8FC 46000021 */ cvt.d.s $f0, $f0 /* 17D00 8003C900 46220000 */ add.d $f0, $f0, $f2 /* 17D04 8003C904 46200020 */ cvt.s.d $f0, $f0 /* 17D08 8003C908 E4600008 */ swc1 $f0, 8($v1) /* 17D0C 8003C90C C6020040 */ lwc1 $f2, 0x40($s0) /* 17D10 8003C910 3C0140A0 */ lui $at, 0x40a0 /* 17D14 8003C914 44810000 */ mtc1 $at, $f0 /* 17D18 8003C918 00000000 */ nop /* 17D1C 8003C91C 46001081 */ sub.s $f2, $f2, $f0 /* 17D20 8003C920 3C013F80 */ lui $at, 0x3f80 /* 17D24 8003C924 44810000 */ mtc1 $at, $f0 /* 17D28 8003C928 00000000 */ nop /* 17D2C 8003C92C E4600030 */ swc1 $f0, 0x30($v1) /* 17D30 8003C930 E462000C */ swc1 $f2, 0xc($v1) .L8003C934: /* 17D34 8003C934 8FBF0024 */ lw $ra, 0x24($sp) /* 17D38 8003C938 8FB20020 */ lw $s2, 0x20($sp) /* 17D3C 8003C93C 8FB1001C */ lw $s1, 0x1c($sp) /* 17D40 8003C940 8FB00018 */ lw $s0, 0x18($sp) /* 17D44 8003C944 03E00008 */ jr $ra /* 17D48 8003C948 27BD0028 */ addiu $sp, $sp, 0x28