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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4145a1
add esp, 0xffffff80
movzx eax, byte [0x6025d4]
test al, al
jne 0x41458c
mov eax, dword [0x6148e8]
mov ecx, dword [0x615e90]
sub eax, ecx
mov ecx, dword [0x6148ec]
mov edx, dword [0x615e94]
mov dword [esp], eax
sbb ecx, edx
mov dword [esp + 4], ecx
call fcn.00450b80
movsd xmm0, qword [esp + 8]
movsd qword [esp + 0x78], xmm0
mov eax, dword [0x615e94]
mov ecx, dword [0x615e90]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00450b80
movsd xmm0, qword [esp + 0x78]
divsd xmm0, qword [esp + 8]
xorps xmm1, xmm1
ucomisd xmm1, xmm0
jbe 0x41413c
xorps xmm0, xmm0
movsd qword [esp + 0x48], xmm0
mov eax, dword [0x615e84]
mov ecx, dword [0x615e80]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00450b80
movsd xmm0, qword [esp + 8]
movsd qword [esp + 0x78], xmm0
mov eax, dword [0x615e94]
mov ecx, dword [0x615e90]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00450b80
movsd xmm0, qword [esp + 0x78]
divsd xmm0, qword [esp + 8]
movsd qword [esp + 0x78], xmm0
call fcn.00456f10
mov eax, dword [esp + 0x84]
mov ecx, dword [eax + 0x30]
mov edx, dword [esp]
sub edx, ecx
mov ecx, dword [eax + 0x34]
mov ebx, dword [esp + 4]
sbb ebx, ecx
test ebx, ebx
setg cl
xchg ebp, ebx
sete bl
xchg ebp, ebx
test edx, edx
xchg esi, ebx
seta bl
xchg esi, ebx
and ebp, esi
or ecx, ebp
test cl, cl
jne 0x414513
movsd xmm0, qword [0x542de0]
movsd xmm1, qword [esp + 0x78]
movsd xmm2, qword [0x542e10]
subsd xmm1, xmm2
movsd qword [esp + 0x50], xmm1
movsd xmm3, qword [0x615e70]
movsd xmm4, qword [esp + 0x48]
subsd xmm4, xmm3
movsd qword [esp + 0x78], xmm4
movsd xmm6, qword [0x542de8]
movsd xmm7, xmm0
divsd xmm0, xmm6
subsd xmm1, xmm3
movsd qword [esp + 0x70], xmm1
mulsd xmm1, xmm0
subsd xmm4, xmm1
movsd xmm1, qword [0x542df0]
mulsd xmm1, xmm4
addsd xmm1, xmm3
mov ecx, dword [0x613474]
test ecx, ecx
jg 0x41424f
movsd qword [esp + 0x88], xmm1
sub esp, 0xffffff80
ret
movsd qword [esp + 0x68], xmm3
movsd qword [esp + 0x60], xmm7
movsd qword [esp + 0x58], xmm0
movsd qword [esp + 0x40], xmm1
mov eax, dword [0x615e94]
mov dword [esp + 0x24], eax
mov ecx, dword [0x615e90]
mov dword [esp + 0x20], ecx
mov edx, dword [0x615e7c]
mov dword [esp + 0x3c], edx
mov ebx, dword [0x615e78]
mov dword [esp + 0x38], ebx
mov ebp, dword [0x615e84]
mov dword [esp + 0x34], ebp
mov esi, dword [0x615e80]
mov dword [esp + 0x30], esi
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00450b80
movsd xmm0, qword [0x542e10]
movsd xmm1, qword [esp + 0x48]
addsd xmm0, xmm1
mulsd xmm0, qword [esp + 8]
movsd qword [esp], xmm0
call fcn.004509f0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0x84]
mov ebx, dword [edx + 4]
mov dword [esp + 0x1c], ebx
mov edx, dword [edx]
mov dword [esp + 0x18], edx
call fcn.0042f670
lea eax, [0x51dfef]
mov dword [esp], eax
mov dword [esp + 4], 0x10
call fcn.0042ff10
mov eax, dword [esp + 0x20]
mov dword [esp], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 4], eax
call fcn.0042fc20
lea eax, [0x51bc4c]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0042ff10
movsd xmm0, qword [esp + 0x68]
movsd qword [esp], xmm0
call fcn.0042f930
lea eax, [0x51bc24]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0042ff10
mov eax, dword [esp + 0x38]
mov dword [esp], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
call fcn.0042fc20
lea eax, [0x51bc42]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0042ff10
movsd xmm0, qword [esp + 0x50]
movsd qword [esp], xmm0
call fcn.0042f930
lea eax, [0x51bc29]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0042ff10
mov eax, dword [esp + 0x30]
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call fcn.0042fc20
lea eax, [0x51bc47]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0042ff10
movsd xmm0, qword [esp + 0x48]
movsd qword [esp], xmm0
call fcn.0042f930
lea eax, [0x51bc2e]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0042ff10
mov eax, dword [esp + 0x28]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call fcn.0042fd50
lea eax, [0x51bc6a]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0042ff10
movsd xmm0, qword [esp + 0x60]
movsd qword [esp], xmm0
call fcn.0042f930
lea eax, [0x51bc6f]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0042ff10
movsd xmm0, qword [0x542de8]
movsd qword [esp], xmm0
call fcn.0042f930
lea eax, [0x51bc38]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0042ff10
mov eax, dword [esp + 0x18]
mov dword [esp], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 4], eax
call fcn.0042fd50
lea eax, [0x51c232]
mov dword [esp], eax
mov dword [esp + 4], 8
call fcn.0042ff10
movsd xmm0, qword [esp + 0x78]
movsd qword [esp], xmm0
call fcn.0042f930
lea eax, [0x51c7c8]
mov dword [esp], eax
mov dword [esp + 4], 0xa
call fcn.0042ff10
movsd xmm0, qword [esp + 0x70]
movsd qword [esp], xmm0
call fcn.0042f930
lea eax, [0x51c548]
mov dword [esp], eax
mov dword [esp + 4], 9
call fcn.0042ff10
movsd xmm0, qword [esp + 0x58]
movsd qword [esp], xmm0
call fcn.0042f930
call fcn.0042f890
call fcn.0042f6e0
movsd xmm1, qword [esp + 0x40]
jmp 0x414242
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], edx
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x10]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.00450a90
mov eax, dword [0x61323c]
mov ecx, eax
mov eax, dword [esp + 0x10]
mov ebx, eax
mul ecx
movsd xmm0, qword [esp + 8]
movsd qword [esp + 0x70], xmm0
mov dword [esp], eax
mov eax, ecx
sar ecx, 0x1f
imul ecx, ebx
mov ebx, dword [esp + 0x14]
imul eax, ebx
add eax, edx
add eax, ecx
mov dword [esp + 4], eax
call fcn.00450a90
movsd xmm0, qword [esp + 0x70]
divsd xmm0, qword [esp + 8]
movsd xmm1, qword [0x542de0]
addsd xmm0, xmm1
mov eax, dword [esp + 0x84]
jmp 0x4141d6
movsd xmm0, qword [0x615e70]
movsd qword [esp + 0x88], xmm0
sub esp, 0xffffff80
ret
call fcn.004546e0
jmp fcn.004140b0