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

Disassembly:
mov eax, dword [0x5c6924]
sub esp, 0x6c
push ebx
xor ebx, ebx
push ebp
push esi
cmp eax, ebx
push edi
je 0x50979b
mov eax, dword [0x5bb27c]
lea edx, [esp + 0x18]
push edx
push ebx
mov ecx, dword [eax]
push ebx
push eax
call dword [ecx + 0x40]
mov eax, dword [0x5bb27c]
mov edx, dword [esp + 0x18]
push ebx
push edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x7c]
mov eax, dword [esp + 0x18]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
push 0x5c7a88
call fcn.0045ffa0
push 0x5c7a88
call fcn.004600e0
push 0x3f800000
push 0x5c7a88
call fcn.00460760
add esp, 0x10
call fcn.00460f50
mov edx, dword [0x5c6924]
mov dword [esp + 0x20], 1
mov dword [esp + 0x24], edx
call fcn.00444430
mov esi, eax
cmp esi, ebx
je 0x5097c1
jmp 0x509553
xor ebx, ebx
fld dword [esi + 0x10]
fmul dword [0x569b1c]
call fcn.00533a88
fld dword [esi + 0x14]
fmul dword [0x569b1c]
mov dword [esp + 0x3c], eax
call fcn.00533a88
fld dword [esi + 0x18]
fmul dword [0x569b1c]
mov dword [esp + 0x38], eax
call fcn.00533a88
fld dword [esi]
fld dword [esi + 8]
fadd dword [esi]
fld dword [esi + 0xc]
fadd dword [esi + 4]
mov dword [esp + 0x34], eax
mov eax, dword [esi + 4]
mov dword [esp + 0x14], eax
mov ecx, dword [esi + 0x1c]
mov edi, 0xff
mov ebp, 0x1002
fstp dword [esp + 0x10]
fild dword [0x57fd9c]
fild dword [0x5c692c]
sub edi, ecx
cmp edi, 0xff
fdivr st(1)
fstp dword [esp + 0x1c]
fdivr qword [0x552540]
fld dword [esp + 0x1c]
fmul st(3)
fsub st(1)
fstp dword [esp + 0x30]
fld dword [esp + 0x1c]
fmul st(2)
fsub st(1)
fstp dword [esp + 0x2c]
fstp st(0)
fild dword [0x57fea4]
fild dword [0x5c6930]
fdivr st(1)
fstp dword [esp + 0x1c]
fdivr qword [0x552540]
fld dword [esp + 0x1c]
fmul dword [esp + 0x14]
fadd st(1)
fstp dword [esp + 0x28]
fld dword [esp + 0x1c]
fmul dword [esp + 0x10]
fadd st(1)
fstp dword [esp + 0x1c]
fstp st(0)
fxch st(1)
fadd st(0), st(0)
fsub dword [0x552454]
fstp dword [esp + 0x44]
fadd st(0), st(0)
fsub dword [0x552454]
fstp dword [esp + 0x40]
fld dword [esp + 0x14]
fadd st(0), st(0)
fsubr dword [0x552454]
fstp dword [esp + 0x14]
fld dword [esp + 0x10]
fadd st(0), st(0)
fsubr dword [0x552454]
fstp dword [esp + 0x10]
jl 0x50967e
fld dword [esi + 0x20]
fcomp dword [0x552458]
fnstsw ax
and eax, 0x4100
je 0x50967e
fld dword [esi + 0x2c]
fcomp dword [0x552458]
fnstsw ax
and eax, 0x4100
jne 0x509683
mov ebp, 0x11002
push ebx
push ebx
push ebx
push 0x29
lea ecx, [esp + 0x58]
call fcn.00412200
lea ecx, [esp + 0x20]
mov ebx, eax
push ecx
push ecx
mov ecx, esp
push 0
push 0
push 0
push 0
call fcn.004121e0
mov edx, dword [ebx]
push ebp
lea eax, [esp + 0x30]
push edx
push eax
call fcn.004617b0
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x78], eax
lea edx, [esp + 0x60]
mov dword [esp + 0x84], ecx
lea eax, [esp + 0x6c]
push edx
lea ecx, [esp + 0x7c]
push eax
mov eax, dword [esp + 0x50]
lea edx, [esp + 0x8c]
push ecx
mov ecx, dword [esp + 0x58]
push edx
mov edx, dword [esp + 0x60]
push edi
push eax
mov eax, dword [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x44]
push edx
mov edx, dword [esp + 0x74]
push eax
mov eax, dword [esp + 0x7c]
push ecx
push edx
push eax
push esi
push 0x5097d0
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
call fcn.0045a3a0
add esp, 0x4c
call fcn.00461e70
call fcn.00461c70
call fcn.00444430
mov esi, eax
test esi, esi
jne 0x509551
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret
call fcn.00444430
cmp eax, ebx
je 0x5097c1
mov esi, 0x3f800000
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], esi
mov dword [eax + 0x18], esi
mov dword [eax + 0x1c], ebx
mov dword [eax + 0x20], ebx
call fcn.00444430
cmp eax, ebx
jne 0x5097a9
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret