.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_E0034110 /* 344B20 E0034110 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 344B24 E0034114 AFBF0018 */ sw $ra, 0x18($sp) /* 344B28 E0034118 AFB10014 */ sw $s1, 0x14($sp) /* 344B2C E003411C AFB00010 */ sw $s0, 0x10($sp) /* 344B30 E0034120 8C90000C */ lw $s0, 0xc($a0) /* 344B34 E0034124 8E02002C */ lw $v0, 0x2c($s0) /* 344B38 E0034128 2442FFFF */ addiu $v0, $v0, -1 /* 344B3C E003412C AE02002C */ sw $v0, 0x2c($s0) /* 344B40 E0034130 8E020030 */ lw $v0, 0x30($s0) /* 344B44 E0034134 8E03002C */ lw $v1, 0x2c($s0) /* 344B48 E0034138 24420001 */ addiu $v0, $v0, 1 /* 344B4C E003413C 04610005 */ bgez $v1, .LE0034154 /* 344B50 E0034140 AE020030 */ sw $v0, 0x30($s0) /* 344B54 E0034144 0C080128 */ jal func_E02004A0 /* 344B58 E0034148 00000000 */ nop /* 344B5C E003414C 0800D0AD */ j .LE00342B4 /* 344B60 E0034150 00000000 */ nop .LE0034154: /* 344B64 E0034154 28420007 */ slti $v0, $v0, 7 /* 344B68 E0034158 10400011 */ beqz $v0, .LE00341A0 /* 344B6C E003415C 0060882D */ daddu $s1, $v1, $zero /* 344B70 E0034160 240200DA */ addiu $v0, $zero, 0xda /* 344B74 E0034164 8E030024 */ lw $v1, 0x24($s0) /* 344B78 E0034168 3C013FE0 */ lui $at, 0x3fe0 /* 344B7C E003416C 44810800 */ mtc1 $at, $f1 /* 344B80 E0034170 44800000 */ mtc1 $zero, $f0 /* 344B84 E0034174 00431023 */ subu $v0, $v0, $v1 /* 344B88 E0034178 44821000 */ mtc1 $v0, $f2 /* 344B8C E003417C 00000000 */ nop /* 344B90 E0034180 468010A1 */ cvt.d.w $f2, $f2 /* 344B94 E0034184 46201082 */ mul.d $f2, $f2, $f0 /* 344B98 E0034188 00000000 */ nop /* 344B9C E003418C 44830000 */ mtc1 $v1, $f0 /* 344BA0 E0034190 00000000 */ nop /* 344BA4 E0034194 46800021 */ cvt.d.w $f0, $f0 /* 344BA8 E0034198 0800D06E */ j .LE00341B8 /* 344BAC E003419C 46220000 */ add.d $f0, $f0, $f2 .LE00341A0: /* 344BB0 E00341A0 3C01E003 */ lui $at, 0xe003 /* 344BB4 E00341A4 D42247B0 */ ldc1 $f2, 0x47b0($at) /* 344BB8 E00341A8 C6000024 */ lwc1 $f0, 0x24($s0) /* 344BBC E00341AC 46800021 */ cvt.d.w $f0, $f0 /* 344BC0 E00341B0 46220002 */ mul.d $f0, $f0, $f2 /* 344BC4 E00341B4 00000000 */ nop .LE00341B8: /* 344BC8 E00341B8 4620028D */ trunc.w.d $f10, $f0 /* 344BCC E00341BC E60A0024 */ swc1 $f10, 0x24($s0) /* 344BD0 E00341C0 00111040 */ sll $v0, $s1, 1 /* 344BD4 E00341C4 00511021 */ addu $v0, $v0, $s1 /* 344BD8 E00341C8 C6040014 */ lwc1 $f4, 0x14($s0) /* 344BDC E00341CC 3C01E003 */ lui $at, 0xe003 /* 344BE0 E00341D0 D42247B8 */ ldc1 $f2, 0x47b8($at) /* 344BE4 E00341D4 46002121 */ cvt.d.s $f4, $f4 /* 344BE8 E00341D8 46222102 */ mul.d $f4, $f4, $f2 /* 344BEC E00341DC 00000000 */ nop /* 344BF0 E00341E0 000210C0 */ sll $v0, $v0, 3 /* 344BF4 E00341E4 00511021 */ addu $v0, $v0, $s1 /* 344BF8 E00341E8 00021040 */ sll $v0, $v0, 1 /* 344BFC E00341EC C600001C */ lwc1 $f0, 0x1c($s0) /* 344C00 E00341F0 C6060018 */ lwc1 $f6, 0x18($s0) /* 344C04 E00341F4 C602001C */ lwc1 $f2, 0x1c($s0) /* 344C08 E00341F8 C6080014 */ lwc1 $f8, 0x14($s0) /* 344C0C E00341FC 46023180 */ add.s $f6, $f6, $f2 /* 344C10 E0034200 3C01E003 */ lui $at, 0xe003 /* 344C14 E0034204 D42247C0 */ ldc1 $f2, 0x47c0($at) /* 344C18 E0034208 46000021 */ cvt.d.s $f0, $f0 /* 344C1C E003420C 46220000 */ add.d $f0, $f0, $f2 /* 344C20 E0034210 C6020010 */ lwc1 $f2, 0x10($s0) /* 344C24 E0034214 44826000 */ mtc1 $v0, $f12 /* 344C28 E0034218 00000000 */ nop /* 344C2C E003421C 46806320 */ cvt.s.w $f12, $f12 /* 344C30 E0034220 46081080 */ add.s $f2, $f2, $f8 /* 344C34 E0034224 E6060018 */ swc1 $f6, 0x18($s0) /* 344C38 E0034228 46200020 */ cvt.s.d $f0, $f0 /* 344C3C E003422C E600001C */ swc1 $f0, 0x1c($s0) /* 344C40 E0034230 E6020010 */ swc1 $f2, 0x10($s0) /* 344C44 E0034234 46202120 */ cvt.s.d $f4, $f4 /* 344C48 E0034238 0C080140 */ jal func_E0200500 /* 344C4C E003423C E6040014 */ swc1 $f4, 0x14($s0) /* 344C50 E0034240 3C013FE0 */ lui $at, 0x3fe0 /* 344C54 E0034244 44811800 */ mtc1 $at, $f3 /* 344C58 E0034248 44801000 */ mtc1 $zero, $f2 /* 344C5C E003424C 46000021 */ cvt.d.s $f0, $f0 /* 344C60 E0034250 46220002 */ mul.d $f0, $f0, $f2 /* 344C64 E0034254 00000000 */ nop /* 344C68 E0034258 00111080 */ sll $v0, $s1, 2 /* 344C6C E003425C 3C01E003 */ lui $at, 0xe003 /* 344C70 E0034260 D42247C8 */ ldc1 $f2, 0x47c8($at) /* 344C74 E0034264 00511021 */ addu $v0, $v0, $s1 /* 344C78 E0034268 46220000 */ add.d $f0, $f0, $f2 /* 344C7C E003426C 000210C0 */ sll $v0, $v0, 3 /* 344C80 E0034270 44826000 */ mtc1 $v0, $f12 /* 344C84 E0034274 00000000 */ nop /* 344C88 E0034278 46806320 */ cvt.s.w $f12, $f12 /* 344C8C E003427C 46200020 */ cvt.s.d $f0, $f0 /* 344C90 E0034280 0C080140 */ jal func_E0200500 /* 344C94 E0034284 E6000020 */ swc1 $f0, 0x20($s0) /* 344C98 E0034288 3C014280 */ lui $at, 0x4280 /* 344C9C E003428C 44811000 */ mtc1 $at, $f2 /* 344CA0 E0034290 00000000 */ nop /* 344CA4 E0034294 46020002 */ mul.s $f0, $f0, $f2 /* 344CA8 E0034298 00000000 */ nop /* 344CAC E003429C 3C014310 */ lui $at, 0x4310 /* 344CB0 E00342A0 44811000 */ mtc1 $at, $f2 /* 344CB4 E00342A4 00000000 */ nop /* 344CB8 E00342A8 46020000 */ add.s $f0, $f0, $f2 /* 344CBC E00342AC 4600028D */ trunc.w.s $f10, $f0 /* 344CC0 E00342B0 E60A0028 */ swc1 $f10, 0x28($s0) .LE00342B4: /* 344CC4 E00342B4 8FBF0018 */ lw $ra, 0x18($sp) /* 344CC8 E00342B8 8FB10014 */ lw $s1, 0x14($sp) /* 344CCC E00342BC 8FB00010 */ lw $s0, 0x10($sp) /* 344CD0 E00342C0 03E00008 */ jr $ra /* 344CD4 E00342C4 27BD0020 */ addiu $sp, $sp, 0x20