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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x11c
push ebx
push esi
lea eax, [esp + 0xa0]
push edi
push eax
mov eax, dword [ebp + 0x14]
lea ecx, [esp + 0x14]
lea edx, [esp + 0x1c]
push ecx
push edx
lea ecx, [eax + 0x20]
lea edx, [eax + 0x10]
push ecx
push edx
push eax
call fcn.00408f90
mov esi, dword [ebp + 8]
lea ecx, [esp + 0x80]
lea eax, [esi + 0x30]
mov dword [esp + 0x78], eax
push eax
lea eax, [esp + 0x34]
push eax
push ecx
call fcn.00418960
mov edi, dword [ebp + 0xc]
lea edx, [esp + 0x3c]
lea eax, [edi + 0x30]
mov dword [esp + 0x7c], eax
push eax
lea eax, [esp + 0xb0]
push edx
push eax
call fcn.00418960
mov ebx, dword [ebp + 0x10]
lea ecx, [esp + 0x48]
lea edx, [esp + 0xa8]
lea eax, [ebx + 0x30]
push eax
push ecx
push edx
mov dword [esp + 0x90], eax
call fcn.00418960
lea eax, [esp + 0xa4]
push eax
call fcn.004189c0
fstp qword [esp + 0x80]
add esp, 0x40
lea ecx, [esp + 0x88]
push ecx
call fcn.004189c0
fstp qword [esp + 0x2c]
lea edx, [esp + 0x7c]
push edx
call fcn.004189c0
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x44]
lea ecx, [esp + 0x6c]
push eax
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esi + 0x44]
push edx
mov edx, dword [esi + 0x40]
push eax
mov eax, dword [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x5c]
push edx
fstp qword [esp + 0x68]
push eax
push ecx
call fcn.00416590
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x60]
lea eax, [esp + 0x84]
push edx
mov edx, dword [esp + 0x3c]
push eax
push ecx
push edx
mov eax, dword [edi + 0x44]
mov ecx, dword [edi + 0x40]
mov edx, dword [esp + 0x64]
push eax
mov eax, dword [esp + 0x64]
push ecx
push edx
push eax
call fcn.00416590
mov eax, dword [esp + 0x5c]
add esp, 0x48
lea ecx, [esp + 0x34]
lea edx, [esp + 0x50]
push ecx
mov ecx, dword [esp + 0x14]
push edx
mov edx, dword [ebx + 0x44]
push eax
mov eax, dword [ebx + 0x40]
push ecx
mov ecx, dword [esp + 0x5c]
push edx
mov edx, dword [esp + 0x5c]
push eax
push ecx
push edx
call fcn.00416590
fild dword [esp + 0x5c]
add esp, 0x20
fstp qword [esp + 0x120]
fild dword [esp + 0x38]
fstp qword [esp + 0xf0]
fild dword [esp + 0x34]
fstp qword [esp + 0x108]
fild dword [esp + 0x64]
fmul qword [esi + 0x40]
xor esi, esi
fstp qword [esp + 0x48]
fild dword [esp + 0x5c]
fmul qword [edi + 0x40]
fstp qword [esp + 0xa8]
fild dword [esp + 0x50]
fmul qword [ebx + 0x40]
fstp qword [esp + 0x98]
mov eax, dword [esp + 0x60]
lea ecx, [esp + 0x18]
push eax
lea edx, [esp + 0x6c]
push ecx
push edx
call fcn.00418960
lea eax, [esp + 0x74]
push eax
call fcn.004189c0
mov ecx, dword [esp + 0x68]
lea edx, [esp + 0x28]
fstp qword [esp + 0x50]
push ecx
lea eax, [esp + 0x9c]
push edx
push eax
call fcn.00418960
lea ecx, [esp + 0xa4]
push ecx
call fcn.004189c0
mov edx, dword [esp + 0x74]
lea eax, [esp + 0x38]
fstp qword [esp + 0x48]
push edx
lea ecx, [esp + 0x9c]
push eax
push ecx
call fcn.00418960
lea edx, [esp + 0xa4]
push edx
call fcn.004189c0
fld qword [esp + 0x70]
fld st(0)
fsub qword [esp + 0x78]
fild dword [esp + 0x6c]
lea eax, [esp + 0xe0]
lea ecx, [esp + 0xf8]
push eax
lea edx, [esp + 0x12c]
fmul qword [esp + 0x44]
push ecx
lea eax, [esp + 0x118]
push edx
lea ecx, [esp + 0x14c]
fsubp st(1)
push eax
push ecx
fstp qword [esp + 0x10c]
fld qword [esp + 0x6c]
fsub qword [esp + 0xec]
fild dword [esp + 0x7c]
fmul qword [esp + 0x54]
fsubp st(1)
fstp qword [esp + 0x114]
fld st(1)
fsub qword [esp + 0xdc]
fild dword [esp + 0x78]
fmul qword [esp + 0x54]
fsubp st(1)
fstp qword [esp + 0x11c]
fld qword [esp + 0xac]
fdiv st(1)
fstp qword [esp + 0x154]
fld qword [esp + 0xb4]
fdiv st(1)
fstp qword [esp + 0x15c]
fstp st(0)
fld qword [esp + 0xcc]
fdiv qword [esp + 0x6c]
fstp qword [esp + 0x124]
fld qword [esp + 0xd4]
fdiv qword [esp + 0x6c]
fstp qword [esp + 0x12c]
fld qword [esp + 0xbc]
fdiv st(1)
fstp qword [esp + 0x13c]
fld qword [esp + 0xc4]
fdiv st(1)
fstp qword [esp + 0x144]
fstp st(0)
call fcn.00419150
add esp, 0x44
test eax, eax
jne 0x4169c3
push 0x3fe80000
lea edx, [esp + 0xb4]
push eax
push edx
call fcn.00418fa0
fld qword [esp + 0x24]
fsub qword [esp + 0xbc]
lea eax, [esp + 0xbc]
push eax
fstp qword [esp + 0x28]
fld qword [esp + 0x30]
fsub qword [esp + 0xc8]
fstp qword [esp + 0x30]
fld qword [esp + 0xd0]
fadd qword [esp + 0x20]
fstp qword [esp + 0x20]
call fcn.00418eb0
fld qword [0x584ab0]
fmul qword [0x551440]
add esp, 0x10
fcompp
fnstsw ax
test ah, 0x41
je 0x4169cc
inc esi
cmp esi, 0x1f4
jl 0x4167f6
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
fld qword [esp + 0x10]
fcomp qword [0x584ab0]
fnstsw ax
test ah, 0x41
jne 0x4169c3
fld qword [esp + 0x10]
fcomp qword [0x551438]
fnstsw ax
test ah, 0x41
je 0x4169c3
mov ecx, dword [ebp + 0x1c]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
pop edi
mov dword [ecx], edx
mov edx, dword [esp + 0x1c]
fld qword [esp + 0xc]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x20]
pop esi
pop ebx
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp + 0x18]
mov eax, 1
fstp qword [ecx]
mov esp, ebp
pop ebp
ret