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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x15c
mov edx, dword [ebp + 8]
push ebx
push esi
push edi
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
push ecx
push edx
xor esi, esi
call fcn.10045ab0
add esp, 0xc
test eax, eax
jne 0x100944c5
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x14]
push eax
push esi
push ecx
call fcn.100a7160
add esp, 0xc
test eax, eax
jne 0x100944c5
lea edx, [esp + 0x70]
push edx
lea eax, [esp + 0xc4]
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x110]
push ecx
lea edx, [esp + 0x144]
push edx
push eax
call fcn.100b80e0
add esp, 0x14
test eax, eax
jne 0x100944c5
lea ecx, [esp + 0x90]
push ecx
lea edx, [esp + 0x5c]
push edx
lea eax, [esp + 0xc8]
push eax
call fcn.10094880
add esp, 0xc
test eax, eax
jne 0x100944c5
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x50]
push eax
lea ecx, [esp + 0x64]
push ecx
call fcn.1009c7a0
add esp, 0x10
test eax, eax
jne 0x100944c5
fld qword [esp + 0x48]
mov eax, dword [esp + 0x1c]
fstp qword [esp + 0x50]
mov edi, 1
cmp eax, edi
fld qword [esp + 0x38]
fstp qword [esp + 0x20]
mov ebx, edi
fld qword [esp + 0x28]
mov dword [esp + 0x10], ebx
fstp qword [esp + 0x30]
jle 0x10094435
mov eax, dword [esp + 0x18]
lea edx, [esp + 0x14]
push edx
push edi
push eax
call fcn.100a7160
add esp, 0xc
test eax, eax
jne 0x100944c1
lea ecx, [esp + 0x70]
push ecx
lea edx, [esp + 0xc4]
push edx
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x110]
push eax
lea ecx, [esp + 0x144]
push ecx
push edx
call fcn.100b80e0
add esp, 0x14
test eax, eax
jne 0x100944c1
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x5c]
push ecx
lea edx, [esp + 0xc8]
push edx
call fcn.10094880
add esp, 0xc
test eax, eax
jne 0x100944c1
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x50]
push edx
lea eax, [esp + 0x64]
push eax
call fcn.1009c7a0
add esp, 0x10
test eax, eax
jne 0x100944c1
fld qword [esp + 0x48]
lea ecx, [esp + 0x44]
fadd qword [esp + 0x50]
push ecx
lea edx, [esp + 0x7c]
push edx
fstp qword [esp + 0x58]
lea eax, [esp + 0x98]
fld qword [esp + 0x40]
push eax
fadd qword [esp + 0x2c]
inc ebx
fstp qword [esp + 0x2c]
fld qword [esp + 0x34]
fadd qword [esp + 0x3c]
fstp qword [esp + 0x3c]
call fcn.100cfe80
add esp, 0xc
test eax, eax
jne 0x100944c1
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x10094424
test esi, esi
jne 0x10094424
lea ecx, [esp + 0xa8]
push ecx
lea edx, [esp + 0x7c]
push edx
lea eax, [esp + 0x98]
push eax
call fcn.100cf9f0
add esp, 0xc
test eax, eax
jne 0x100944c1
mov esi, 1
mov eax, dword [esp + 0x1c]
inc edi
cmp edi, eax
jl 0x10094314
mov dword [esp + 0x10], ebx
fild dword [esp + 0x10]
sub esp, 0x18
lea ecx, [esp + 0x70]
fdivr qword [0x100d12a0]
fld qword [esp + 0x48]
fmul st(1)
fstp qword [esp + 0x10]
fld qword [esp + 0x38]
fmul st(1)
fstp qword [esp + 8]
fmul qword [esp + 0x68]
fstp qword [esp]
push ecx
call fcn.1009c800
add esp, 0x1c
test eax, eax
jne 0x100944c5
fld qword [0x100d12a0]
lea edx, [esp + 0xf0]
push edx
lea eax, [esp + 0xac]
push eax
sub esp, 8
lea ecx, [esp + 0x68]
fstp qword [esp]
push ecx
call fcn.1009c890
add esp, 0x14
test eax, eax
jne 0x100944c5
mov ecx, dword [ebp + 0xc]
lea edx, [esp + 0xf0]
push edx
lea eax, [esp + 0x5c]
push eax
push ecx
call fcn.10076f80
add esp, 0xc
neg eax
sbb eax, eax
neg eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esp + 0x10], ebx
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret