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

Disassembly:
push ebx
sub esp, 0x60
mov dword [esp + 0x40], 0
fld dword [esp + 0x78]
fld dword [esp + 0x74]
fld dword [esp + 0x6c]
fld dword [esp + 0x68]
fldz
fld st(1)
fsub st(4)
fst st(1)
fstp dword [esp + 0x20]
fst dword [esp + 0x24]
fld st(1)
fadd st(4)
fstp st(2)
xor edx, edx
mov dword [esp + 0x50], 0
fld st(1)
fstp dword [esp + 0x28]
fld st(1)
fstp dword [esp + 0x2c]
fld st(2)
fsub st(5)
fstp st(2)
mov dword [esp + 0x5c], 0
mov dword [esp + 0x44], 0
fld st(1)
fstp dword [esp + 0x30]
fld st(2)
fadd st(5)
fstp st(3)
mov dword [esp + 0x4c], 0x3f800000
mov dword [esp + 0x54], 0x3f800000
fld st(2)
fstp dword [esp + 0x34]
fld st(2)
fstp dword [esp + 0x38]
fld st(1)
fstp dword [esp + 0x3c]
mov dword [esp + 0x58], 0x3f800000
mov dword [esp + 0x48], 0x3f800000
lea eax, [eax]
fld dword [esp + edx*4 + 0x20]
fstp st(3)
fld st(2)
fcomp dword [0x5ff288]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x51ca2e
fld st(2)
fdiv st(4)
fmul dword [0x5ff28c]
fstp dword [esp + edx*4 + 0x40]
mov dword [esp + edx*4 + 0x20], 0
mov ecx, dword [0x8f436c]
fld dword [esp + edx*4 + 0x20]
mov dword [esp + 0x18], ecx
fstp st(3)
fild dword [esp + 0x18]
fcomp st(3)
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x51ca76
mov dword [esp + 0x18], ecx
fild dword [esp + 0x18]
fsubr st(3)
fmul dword [0x5ff290]
fdiv st(4)
fsubr dword [0x5ff27c]
fstp dword [esp + edx*4 + 0x40]
mov dword [esp + 0x18], ecx
fild dword [esp + 0x18]
fstp dword [esp + edx*4 + 0x20]
fld dword [esp + edx*4 + 0x30]
fstp st(3)
fld st(2)
fcomp dword [0x5ff288]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x51caa4
fld st(2)
fdiv st(5)
fmul dword [0x5ff28c]
fstp dword [esp + edx*4 + 0x50]
mov dword [esp + edx*4 + 0x30], 0
mov ecx, dword [0x8f4370]
fld dword [esp + edx*4 + 0x30]
mov dword [esp + 0x18], ecx
fstp st(3)
fild dword [esp + 0x18]
fcomp st(3)
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x51caec
mov dword [esp + 0x18], ecx
fild dword [esp + 0x18]
fsubr st(3)
fmul dword [0x5ff290]
fdiv st(5)
fsubr dword [0x5ff27c]
fstp dword [esp + edx*4 + 0x50]
mov dword [esp + 0x18], ecx
fild dword [esp + 0x18]
fstp dword [esp + edx*4 + 0x30]
inc edx
cmp edx, 4
jl 0x51ca00
fld dword [esp + 0x20]
fstp dword [0x64c484]
fld dword [esp + 0x24]
fstp dword [0x64c4a0]
fld dword [esp + 0x28]
fstp dword [0x64c4bc]
fld dword [esp + 0x2c]
fstp dword [0x64c4d8]
fld dword [esp + 0x30]
fstp dword [0x64c488]
fld dword [esp + 0x34]
fstp dword [0x64c4a4]
fld dword [esp + 0x38]
fstp dword [0x64c4c0]
fld dword [esp + 0x3c]
fstp dword [0x64c4dc]
fld dword [0x9434f0]
fsub dword [0x8e2dc4]
fmul dword [esp + 0x70]
fstp dword [esp + 8]
fcompp
fcompp
fstp st(0)
call fcn.005a43a0
fstp dword [esp + 4]
call fcn.005a43b0
fsub dword [esp + 4]
fstp dword [esp + 0xc]
fld dword [esp + 0x70]
fsub dword [0x8e2dc4]
fmul dword [esp + 0xc]
fmul dword [0x9434f0]
fdiv dword [esp + 8]
fstp dword [esp + 0x10]
call fcn.005a43a0
movsx ebx, word [esp + 0x88]
movzx eax, byte [esp + 0x7c]
movzx edx, byte [esp + 0x80]
movzx ecx, byte [esp + 0x90]
imul eax, ebx
imul edx, ebx
shl ecx, 0x18
fadd dword [esp + 0x10]
push 4
push 0x64c484
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fstp dword [0x64c48c]
sar eax, 8
movzx eax, al
sar edx, 8
fld dword [esp + 0x94]
shl eax, 0x10
or eax, ecx
movzx ecx, dl
movzx edx, byte [esp + 0x8c]
fstp dword [0x64c490]
fld dword [esp + 0x1c]
imul edx, ebx
fstp dword [0x64c4a8]
fld dword [esp + 0x94]
shl ecx, 8
fstp dword [0x64c4ac]
fld dword [esp + 0x1c]
or eax, ecx
fstp dword [0x64c4c4]
fld dword [esp + 0x94]
sar edx, 8
movzx ecx, dl
fstp dword [0x64c4c8]
fld dword [esp + 0x1c]
fstp dword [0x64c4e0]
fld dword [esp + 0x94]
or eax, ecx
fstp dword [0x64c4e4]
fld dword [esp + 0x48]
mov dword [0x64c494], eax
mov dword [0x64c4b0], eax
mov dword [0x64c4cc], eax
mov dword [0x64c4e8], eax
fstp dword [0x64c498]
fld dword [esp + 0x58]
fstp dword [0x64c49c]
fld dword [esp + 0x4c]
fstp dword [0x64c4b4]
fld dword [esp + 0x5c]
fstp dword [0x64c4b8]
fld dword [esp + 0x50]
fstp dword [0x64c4d0]
fld dword [esp + 0x60]
fstp dword [0x64c4d4]
fld dword [esp + 0x54]
fstp dword [0x64c4ec]
fld dword [esp + 0x64]
fstp dword [0x64c4f0]
push 5
call fcn.005a4430
add esp, 0xc
add esp, 0x60
pop ebx
ret