Function at 0x420fe0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x7c
push ebx
mov ebx, ecx
cmp dword [ebx + 0x38b7c], 0
push esi
push edi
je 0x42127b
push 1
mov ecx, 0x610810
call fcn.00409250
push 1
mov ecx, 0x610810
call fcn.00409220
xor esi, esi
cmp dword [ebx + 0x38b84], esi
jle 0x42127b
mov edx, dword [0x6b09f8]
mov ecx, dword [ebx + 0x38b7c]
lea edi, [esi + esi*2]
add edi, edi
add edi, edi
add edx, 0x74
add ecx, edi
call fcn.0043d0e0
fld dword [0x5660e0]
fcompi st(1)
fstp st(0)
jbe 0x42126e
mov ecx, dword [ebx + 0x38b7c]
movss xmm7, dword [edi + ecx]
movss xmm5, dword [0x56552c]
movss xmm4, dword [0x565d54]
movss xmm6, dword [0x565314]
xor eax, eax
test esi, esi
sete al
cvtsi2ss xmm0, eax
addss xmm0, dword [0x5652d0]
lea eax, [edi + ecx]
movaps xmm1, xmm0
movaps xmm2, xmm1
movaps xmm3, xmm1
mulss xmm1, xmm6
mulss xmm2, xmm5
addss xmm7, xmm2
movss xmm2, dword [eax + 4]
mulss xmm3, xmm4
addss xmm2, xmm3
movss dword [esp + 0x14], xmm2
movss xmm2, dword [eax + 8]
addss xmm2, xmm1
movss dword [esp + 0x10], xmm7
movq xmm1, qword [esp + 0x10]
movq qword [esp + 0x58], xmm1
movss dword [esp + 0x18], xmm2
mov edx, dword [esp + 0x18]
mov dword [esp + 0x60], edx
movss xmm7, dword [eax]
movaps xmm1, xmm0
movaps xmm2, xmm1
mulss xmm1, xmm4
mulss xmm2, xmm5
movaps xmm3, xmm2
addss xmm7, xmm3
movss xmm3, dword [eax + 4]
addss xmm3, xmm1
movss xmm1, dword [eax + 8]
addss xmm1, xmm2
movss dword [esp + 0x24], xmm1
mov ecx, dword [esp + 0x24]
movss dword [esp + 0x20], xmm3
movss dword [esp + 0x1c], xmm7
movq xmm1, qword [esp + 0x1c]
movq qword [esp + 0x64], xmm1
movaps xmm1, xmm0
movaps xmm2, xmm1
mulss xmm1, xmm4
mov dword [esp + 0x6c], ecx
movss xmm7, dword [eax]
mulss xmm2, xmm6
movaps xmm3, xmm2
addss xmm7, xmm3
movss xmm3, dword [eax + 4]
addss xmm3, xmm1
movss xmm1, dword [eax + 8]
addss xmm1, xmm2
movss dword [esp + 0x30], xmm1
mov edx, dword [esp + 0x30]
movss dword [esp + 0x28], xmm7
movss dword [esp + 0x2c], xmm3
movq xmm1, qword [esp + 0x28]
movq qword [esp + 0x70], xmm1
movaps xmm1, xmm0
mulss xmm1, xmm6
mov dword [esp + 0x78], edx
addss xmm1, dword [eax]
movss dword [esp + 0x34], xmm1
movss xmm1, dword [eax + 4]
movaps xmm2, xmm0
mulss xmm2, xmm4
addss xmm1, xmm2
movss dword [esp + 0x38], xmm1
movss xmm1, dword [eax + 8]
mulss xmm0, xmm5
addss xmm1, xmm0
movq xmm0, qword [esp + 0x34]
movss dword [esp + 0x3c], xmm1
mov eax, dword [esp + 0x3c]
movq qword [esp + 0x7c], xmm0
mov dword [esp + 0x84], eax
push 0xffffffffffffffff
test esi, esi
jne 0x4211dd
push 0xffff0000
lea ecx, [esp + 0x60]
push ecx
jmp 0x4211e7
push 0xff00ff00
lea edx, [esp + 0x60]
push edx
call fcn.0040cf80
mov eax, dword [ebx + 0x38b84]
dec eax
add esp, 0xc
cmp esi, eax
jge 0x42126e
mov ecx, dword [ebx + 0x38b7c]
movss xmm0, dword [edi + ecx + 4]
movss xmm1, dword [edi + ecx + 8]
movss xmm3, dword [edi + ecx]
movss xmm2, dword [0x565d54]
lea eax, [edi + ecx]
addss xmm0, xmm2
movss dword [esp + 0x50], xmm0
movss dword [esp + 0x4c], xmm3
movss dword [esp + 0x54], xmm1
movss xmm0, dword [eax + 0x10]
movss xmm1, dword [eax + 0x14]
addss xmm0, xmm2
movss xmm2, dword [eax + 0xc]
push 0xffffff00
lea edx, [esp + 0x44]
push edx
lea eax, [esp + 0x54]
push eax
movss dword [esp + 0x4c], xmm2
movss dword [esp + 0x50], xmm0
movss dword [esp + 0x54], xmm1
call fcn.0040ccd0
add esp, 0xc
inc esi
cmp esi, dword [ebx + 0x38b84]
jl 0x421021
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret