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

Disassembly:
sub esp, 0xd4
mov eax, dword [esp + 0x100]
push ebp
push esi
mov esi, ecx
mov dword [esi + 4], 0
fild dword [eax]
fld qword [0x54c780]
mov ecx, dword [esp + 0xfc]
mov ebp, dword [esp + 0x104]
fmul st(1), st(0)
push ebp
fld dword [esp + 0xf8]
fdivp st(2)
fld1
fsub st(2), st(0)
fld dword [ecx]
fdivp st(3)
fxch st(2)
fstp dword [esp + 0x30]
fimul dword [eax + 4]
mov eax, dword [esp + 0x104]
fdiv dword [esp + 0xfc]
fsubrp st(1)
fdiv dword [ecx + 0x14]
lea ecx, [esp + 0x10]
fchs
fstp dword [esp + 0x34]
fld dword [eax + 0x10]
fld dword [esp + 0x34]
fld st(0)
fmulp st(2)
fld dword [eax]
fld dword [esp + 0x30]
fld st(0)
fmulp st(2)
fxch st(3)
faddp st(1)
fadd dword [eax + 0x20]
fstp dword [esp + 0xa0]
fld dword [eax + 0x14]
fmul st(1)
fld dword [eax + 4]
fmul st(3)
faddp st(1)
fadd dword [eax + 0x24]
fstp dword [esp + 0xa4]
fmul dword [eax + 0x18]
fld dword [eax + 8]
fmulp st(2)
faddp st(1)
fadd dword [eax + 0x28]
fstp dword [esp + 0xa8]
fld dword [eax + 0x30]
fstp dword [esp + 0x94]
fld dword [eax + 0x34]
fstp dword [esp + 0x98]
fld dword [eax + 0x38]
lea eax, [esp + 0x30]
fstp dword [esp + 0x9c]
push eax
fldz
push ecx
fst dword [esp + 0x38]
fst dword [esp + 0x3c]
fstp dword [esp + 0x40]
call fcn.0040942b
fldz
fst dword [esp + 0x48]
push ebp
lea edx, [esp + 0x4c]
fstp dword [esp + 0x50]
fld dword [esp + 0xe4]
push edx
lea eax, [esp + 0x24]
fstp dword [esp + 0x58]
push eax
call fcn.0040942b
fld dword [esp + 0x1c]
fsub dword [esp + 0xc]
fstp dword [esp + 0x1c]
fld dword [esp + 0x20]
fsub dword [esp + 0x10]
fstp dword [esp + 0x20]
fld dword [esp + 0x24]
fsub dword [esp + 0x14]
fstp dword [esp + 0x24]
fld dword [esp + 0x28]
fsub dword [esp + 0x18]
fstp dword [esp + 0x28]
fld dword [esp + 0x20]
fld dword [esp + 0x1c]
fld dword [esp + 0x24]
fld dword [esp + 0x28]
fld st(3)
fmulp st(4)
fld st(2)
fmulp st(3)
fxch st(3)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fld st(1)
fmulp st(2)
faddp st(1)
fstp dword [esp + 8]
fld dword [esp + 8]
call fcn.004eded0
fstp dword [esp + 8]
fld dword [esp + 8]
fstp dword [esp + 8]
fld dword [esp + 8]
fmul st(0), st(0)
fstp dword [esp + 0xa8]
fld dword [esp + 0xc]
fsub dword [esp + 0x90]
fstp dword [esp + 0x38]
fld dword [esp + 0x10]
fsub dword [esp + 0x94]
fstp dword [esp + 0x3c]
fld dword [esp + 0x14]
fsub dword [esp + 0x98]
fstp dword [esp + 0x40]
fld dword [esp + 0x3c]
fld st(0)
fmul dword [esp + 0xa0]
fld dword [esp + 0x38]
fld st(0)
fmul dword [esp + 0x9c]
faddp st(2)
fld dword [esp + 0x40]
fld st(0)
fmul dword [esp + 0xa4]
faddp st(3)
fxch st(2)
fstp dword [esp + 8]
fld dword [esp + 8]
fld st(0)
fmul st(0), st(0)
fstp dword [esp + 0x44]
fld st(1)
fmulp st(2)
fld st(3)
fmulp st(4)
fxch st(1)
faddp st(3)
fld st(1)
fmulp st(2)
fxch st(2)
faddp st(1)
fstp dword [esp + 8]
fldz
fcompp
fnstsw ax
fld dword [esp + 0xa8]
fld dword [esp + 8]
test ah, 0x41
jne 0x441eaf
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x441eaf
fstp st(1)
fstp st(0)
pop esi
xor al, al
pop ebp
add esp, 0xd4
ret 0x30
fsub dword [esp + 0x44]
fstp dword [esp + 0x44]
fld dword [esp + 0x44]
fcompp
fnstsw ax
test ah, 0x41
je 0x441ea2
mov ecx, dword [esp + 0xf0]
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x442209
push ebx
push edi
mov edi, dword [esp + 0xf4]
add edi, 4
mov dword [esp + 0x10], eax
nop
movzx eax, word [edi - 4]
mov ebx, dword [esp + 0xf0]
mov ecx, dword [esp + 0xec]
imul eax, ebx
mov edx, dword [eax + ecx]
add eax, ecx
mov dword [esp + 0x5c], edx
mov edx, dword [eax + 4]
mov dword [esp + 0x60], edx
mov eax, dword [eax + 8]
mov dword [esp + 0x64], eax
movzx eax, word [edi - 2]
imul eax, ebx
mov edx, dword [eax + ecx]
add eax, ecx
mov dword [esp + 0x80], edx
mov edx, dword [eax + 4]
mov dword [esp + 0x84], edx
mov eax, dword [eax + 8]
mov dword [esp + 0x88], eax
movzx eax, word [edi]
imul eax, ebx
add eax, ecx
mov ecx, dword [eax]
mov dword [esp + 0x40], ecx
mov edx, dword [eax + 4]
push ebp
mov dword [esp + 0x48], edx
mov eax, dword [eax + 8]
lea ecx, [esp + 0x60]
push ecx
lea edx, [esp + 0xbc]
push edx
mov dword [esp + 0x54], eax
call fcn.0040942b
push ebp
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0xcc]
push ecx
call fcn.0040942b
push ebp
lea edx, [esp + 0x44]
push edx
lea eax, [esp + 0xdc]
push eax
call fcn.0040942b
fld dword [esp + 0xb4]
mov ecx, dword [esp + 0x114]
fstp dword [esp + 0x68]
fld dword [esp + 0xc4]
push ecx
fstp dword [esp + 0x78]
lea eax, [esi + 0x10]
fld dword [esp + 0xd8]
push eax
fstp dword [esp + 0x94]
lea eax, [esi + 0xc]
fld dword [esp + 0xc0]
push eax
fstp dword [esp + 0x78]
lea eax, [esi + 8]
fld dword [esp + 0xd4]
push eax
fstp dword [esp + 0x88]
lea edx, [esp + 0x9c]
fld dword [esp + 0xe8]
push edx
fstp dword [esp + 0xa4]
lea eax, [esp + 0x88]
fld dword [esp + 0xd0]
push eax
fstp dword [esp + 0x88]
lea ecx, [esp + 0x80]
fld dword [esp + 0xe4]
push ecx
fstp dword [esp + 0x98]
lea edx, [esp + 0xc0]
fld dword [esp + 0xf8]
push edx
fstp dword [esp + 0xb4]
lea eax, [esp + 0xb8]
push eax
mov ecx, esi
call fcn.00441a00
test al, al
je 0x4421f9
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x70]
mov dword [esi + 0x14], ecx
mov ecx, dword [esp + 0x74]
mov dword [esi + 0x18], edx
mov edx, dword [esp + 0x78]
mov dword [esi + 0x1c], eax
mov eax, dword [esp + 0x7c]
mov dword [esi + 0x20], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 0x24], edx
mov edx, dword [esp + 0x90]
mov dword [esi + 0x28], eax
mov eax, dword [esp + 0x94]
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x30], edx
mov edx, dword [esp + 0xec]
mov dword [esi + 0x34], eax
movzx ecx, word [edi - 4]
imul ecx, ebx
fld dword [ecx + edx + 0xc]
fadd dword [esp + 0x5c]
fstp dword [esp + 0x24]
fld dword [ecx + edx + 0x10]
fadd dword [esp + 0x60]
lea eax, [ecx + edx + 0xc]
lea ebx, [esi + 0x38]
fstp dword [esp + 0x28]
mov ecx, dword [esp + 0x28]
fld dword [eax + 8]
mov eax, dword [esp + 0x24]
fadd dword [esp + 0x64]
mov dword [ebx], eax
push ebp
push ebx
lea eax, [esp + 0x1c]
fstp dword [esp + 0x34]
mov edx, dword [esp + 0x34]
mov dword [ebx + 4], ecx
push eax
mov dword [ebx + 8], edx
call fcn.0040942b
mov edx, dword [esp + 0xec]
fld dword [esp + 0x14]
push ebp
fstp dword [ebx]
lea ebx, [esi + 0x44]
fld dword [esp + 0x1c]
push ebx
fstp dword [esi + 0x3c]
fld dword [esp + 0x24]
fstp dword [esi + 0x40]
movzx ecx, word [edi - 2]
imul ecx, dword [esp + 0xf8]
fld dword [ecx + edx + 0xc]
fadd dword [esp + 0x88]
fstp dword [esp + 0x58]
fld dword [ecx + edx + 0x10]
fadd dword [esp + 0x8c]
lea eax, [ecx + edx + 0xc]
fstp dword [esp + 0x5c]
mov ecx, dword [esp + 0x5c]
fld dword [eax + 8]
mov eax, dword [esp + 0x58]
fadd dword [esp + 0x90]
mov dword [ebx], eax
lea eax, [esp + 0x1c]
mov dword [ebx + 4], ecx
fstp dword [esp + 0x60]
mov edx, dword [esp + 0x60]
push eax
mov dword [ebx + 8], edx
call fcn.0040942b
fld dword [esp + 0x14]
fstp dword [ebx]
fld dword [esp + 0x18]
fstp dword [esi + 0x48]
fld dword [esp + 0x1c]
fstp dword [esi + 0x4c]
movzx ecx, word [edi]
imul ecx, dword [esp + 0xf0]
mov edx, dword [esp + 0xec]
lea eax, [ecx + edx + 0xc]
lea ebx, [esi + 0x50]
push ebp
fld dword [eax]
push ebx
fadd dword [esp + 0x48]
fstp dword [esp + 0x3c]
fld dword [eax + 4]
fadd dword [esp + 0x4c]
fstp dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
fld dword [eax + 8]
mov eax, dword [esp + 0x3c]
fadd dword [esp + 0x50]
mov dword [ebx], eax
lea eax, [esp + 0x1c]
mov dword [ebx + 4], ecx
fstp dword [esp + 0x44]
mov edx, dword [esp + 0x44]
push eax
mov dword [ebx + 8], edx
call fcn.0040942b
fld dword [esp + 0x14]
inc dword [esi + 4]
fstp dword [ebx]
fld dword [esp + 0x18]
fstp dword [esi + 0x54]
fld dword [esp + 0x1c]
fstp dword [esi + 0x58]
add edi, 6
sub dword [esp + 0x10], 1
jne 0x441ef0
pop edi
pop ebx
cmp dword [esi + 4], 0
pop esi
seta al
pop ebp
add esp, 0xd4
ret 0x30