.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_80039348 /* 14748 80039348 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 1474C 8003934C AFB00030 */ sw $s0, 0x30($sp) /* 14750 80039350 0080802D */ daddu $s0, $a0, $zero /* 14754 80039354 AFBF0034 */ sw $ra, 0x34($sp) /* 14758 80039358 F7B40038 */ sdc1 $f20, 0x38($sp) /* 1475C 8003935C 8E030000 */ lw $v1, ($s0) /* 14760 80039360 30620200 */ andi $v0, $v1, 0x200 /* 14764 80039364 1040004B */ beqz $v0, .L80039494 /* 14768 80039368 30620800 */ andi $v0, $v1, 0x800 /* 1476C 8003936C 14400047 */ bnez $v0, .L8003948C /* 14770 80039370 2402EFFF */ addiu $v0, $zero, -0x1001 /* 14774 80039374 3C013F80 */ lui $at, 0x3f80 /* 14778 80039378 44810000 */ mtc1 $at, $f0 /* 1477C 8003937C C602001C */ lwc1 $f2, 0x1c($s0) /* 14780 80039380 C6040038 */ lwc1 $f4, 0x38($s0) /* 14784 80039384 46001081 */ sub.s $f2, $f2, $f0 /* 14788 80039388 E6000014 */ swc1 $f0, 0x14($s0) /* 1478C 8003938C C600003C */ lwc1 $f0, 0x3c($s0) /* 14790 80039390 E7A40020 */ swc1 $f4, 0x20($sp) /* 14794 80039394 3C014150 */ lui $at, 0x4150 /* 14798 80039398 44812000 */ mtc1 $at, $f4 /* 1479C 8003939C 46020000 */ add.s $f0, $f0, $f2 /* 147A0 800393A0 3C030400 */ lui $v1, 0x400 /* 147A4 800393A4 E602001C */ swc1 $f2, 0x1c($s0) /* 147A8 800393A8 E600003C */ swc1 $f0, 0x3c($s0) /* 147AC 800393AC 3C014180 */ lui $at, 0x4180 /* 147B0 800393B0 44810000 */ mtc1 $at, $f0 /* 147B4 800393B4 46001085 */ abs.s $f2, $f2 /* 147B8 800393B8 46001080 */ add.s $f2, $f2, $f0 /* 147BC 800393BC C600003C */ lwc1 $f0, 0x3c($s0) /* 147C0 800393C0 C6060040 */ lwc1 $f6, 0x40($s0) /* 147C4 800393C4 46040000 */ add.s $f0, $f0, $f4 /* 147C8 800393C8 E7A60028 */ swc1 $f6, 0x28($sp) /* 147CC 800393CC E7A2002C */ swc1 $f2, 0x2c($sp) /* 147D0 800393D0 E7A00024 */ swc1 $f0, 0x24($sp) /* 147D4 800393D4 8E020000 */ lw $v0, ($s0) /* 147D8 800393D8 00431024 */ and $v0, $v0, $v1 /* 147DC 800393DC 1440000A */ bnez $v0, .L80039408 /* 147E0 800393E0 46001506 */ mov.s $f20, $f2 /* 147E4 800393E4 27A50020 */ addiu $a1, $sp, 0x20 /* 147E8 800393E8 27A60024 */ addiu $a2, $sp, 0x24 /* 147EC 800393EC 27A2002C */ addiu $v0, $sp, 0x2c /* 147F0 800393F0 AFA20010 */ sw $v0, 0x10($sp) /* 147F4 800393F4 8E040080 */ lw $a0, 0x80($s0) /* 147F8 800393F8 0C0372D7 */ jal func_800DCB5C /* 147FC 800393FC 27A70028 */ addiu $a3, $sp, 0x28 /* 14800 80039400 0800E510 */ j .L80039440 /* 14804 80039404 00000000 */ nop .L80039408: /* 14808 80039408 27A2002C */ addiu $v0, $sp, 0x2c /* 1480C 8003940C AFA20010 */ sw $v0, 0x10($sp) /* 14810 80039410 C600000C */ lwc1 $f0, 0xc($s0) /* 14814 80039414 27A50020 */ addiu $a1, $sp, 0x20 /* 14818 80039418 E7A00014 */ swc1 $f0, 0x14($sp) /* 1481C 8003941C 860200A6 */ lh $v0, 0xa6($s0) /* 14820 80039420 27A60024 */ addiu $a2, $sp, 0x24 /* 14824 80039424 44820000 */ mtc1 $v0, $f0 /* 14828 80039428 00000000 */ nop /* 1482C 8003942C 46800020 */ cvt.s.w $f0, $f0 /* 14830 80039430 E7A00018 */ swc1 $f0, 0x18($sp) /* 14834 80039434 8E040080 */ lw $a0, 0x80($s0) /* 14838 80039438 0C0371D6 */ jal func_800DC758 /* 1483C 8003943C 27A70028 */ addiu $a3, $sp, 0x28 .L80039440: /* 14840 80039440 10400010 */ beqz $v0, .L80039484 /* 14844 80039444 00000000 */ nop /* 14848 80039448 C7A0002C */ lwc1 $f0, 0x2c($sp) /* 1484C 8003944C 4614003E */ c.le.s $f0, $f20 /* 14850 80039450 00000000 */ nop /* 14854 80039454 4500000B */ bc1f .L80039484 /* 14858 80039458 00000000 */ nop /* 1485C 8003945C 8E020000 */ lw $v0, ($s0) /* 14860 80039460 AE00001C */ sw $zero, 0x1c($s0) /* 14864 80039464 C7A00024 */ lwc1 $f0, 0x24($sp) /* 14868 80039468 3C038011 */ lui $v1, %hi(D_8010CB3A) /* 1486C 8003946C 9463CB3A */ lhu $v1, %lo(D_8010CB3A)($v1) /* 14870 80039470 34421000 */ ori $v0, $v0, 0x1000 /* 14874 80039474 AE020000 */ sw $v0, ($s0) /* 14878 80039478 E600003C */ swc1 $f0, 0x3c($s0) /* 1487C 8003947C 0800E525 */ j .L80039494 /* 14880 80039480 A6030084 */ sh $v1, 0x84($s0) .L80039484: /* 14884 80039484 8E020000 */ lw $v0, ($s0) /* 14888 80039488 2403EFFF */ addiu $v1, $zero, -0x1001 .L8003948C: /* 1488C 8003948C 00431024 */ and $v0, $v0, $v1 /* 14890 80039490 AE020000 */ sw $v0, ($s0) .L80039494: /* 14894 80039494 8FBF0034 */ lw $ra, 0x34($sp) /* 14898 80039498 8FB00030 */ lw $s0, 0x30($sp) /* 1489C 8003949C D7B40038 */ ldc1 $f20, 0x38($sp) /* 148A0 800394A0 03E00008 */ jr $ra /* 148A4 800394A4 27BD0040 */ addiu $sp, $sp, 0x40