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

Disassembly:
sub esp, 0x44
push ebx
push ebp
mov ebp, dword [esp + 0x54]
push esi
mov esi, dword [esp + 0x54]
lea eax, [esp + 0x30]
push eax
push ebp
push esi
mov ebx, ecx
call fcn.006beda0
mov ecx, dword [esp + 0x38]
sub ecx, dword [esp + 0x30]
je 0x5c8444
mov edx, dword [esp + 0x3c]
sub edx, dword [esp + 0x34]
je 0x5c8444
movzx eax, word [ebx + 0x28]
lea ecx, [eax + 0xff]
shr ecx, 8
dec ecx
cmp esi, ecx
jne 0x5c804a
and eax, 0xff
jne 0x5c8046
mov eax, 0x100
mov esi, eax
jmp 0x5c804f
mov esi, 0x100
movzx eax, word [ebx + 0x2a]
lea edx, [eax + 0xff]
shr edx, 8
dec edx
cmp ebp, edx
jne 0x5c806a
and eax, 0xff
mov edx, eax
jne 0x5c806f
mov edx, 0x100
mov eax, dword [esp + 0x64]
test eax, eax
je 0x5c8090
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x10], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x14], edx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x18], ecx
jmp 0x5c80a0
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
push edi
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x18]
mov dword [esp + 0x24], edx
call fcn.00425f30
mov edi, dword [esp + 0x6c]
test edi, edi
je 0x5c8252
fild dword [esp + 0x14]
mov esi, dword [esp + 0x78]
fmul dword [edi]
fadd dword [esp + 0x60]
fstp dword [esi]
fild dword [esp + 0x18]
fmul dword [edi + 4]
fadd dword [esp + 0x64]
fstp dword [esi + 4]
fild dword [esp + 0x1c]
fmul dword [edi]
fadd dword [esp + 0x60]
fstp dword [esi + 8]
fild dword [esp + 0x20]
fmul dword [edi + 4]
fadd dword [esp + 0x64]
fstp dword [esi + 0xc]
mov ebp, dword [0x750814]
mov al, byte [ebp + 0x1c6]
test al, al
jne 0x5c814f
fild dword [ebp + 0x30]
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x48]
fstp dword [esp + 0x28]
push edx
fild dword [ebp + 0x34]
mov ecx, esi
fstp dword [esp + 0x30]
fild dword [ebp + 0x38]
fstp dword [esp + 0x34]
fild dword [ebp + 0x3c]
fstp dword [esp + 0x38]
call fcn.005c67a0
mov ecx, eax
call fcn.005c6770
test al, al
je 0x5c814f
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x44
ret 0x24
cmp dword [ebp + 0xf4], 1
mov ecx, dword [esp + 0x34]
jne 0x5c8204
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
sub eax, ecx
mov dword [esp + 0x78], eax
fild dword [esp + 0x78]
mov eax, dword [esp + 0x38]
sub edx, eax
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x1c]
fst dword [esi + 0x10]
fild dword [esp + 0x78]
sub edx, ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x78], edx
fst dword [esp + 0x6c]
sub ecx, eax
fstp dword [esi + 0x14]
fild dword [esp + 0x78]
mov dword [esp + 0x78], ecx
fst dword [esp + 0x68]
fstp dword [esi + 0x18]
fild dword [esp + 0x78]
fst dword [esp + 0x78]
fstp dword [esi + 0x1c]
mov eax, dword [edi]
cmp eax, 0x3f800000
je 0x5c81d5
fadd dword [0x6d3398]
fstp dword [esi + 0x10]
fld dword [esp + 0x68]
fsub dword [0x6d3398]
fstp dword [esi + 0x18]
jmp 0x5c81d7
fstp st(0)
cmp dword [edi + 4], 0x3f800000
mov ebp, dword [esp + 0x5c]
je 0x5c833d
fld dword [esp + 0x6c]
fadd dword [0x6d3398]
fstp dword [esi + 0x14]
fld dword [esp + 0x78]
fsub dword [0x6d3398]
jmp 0x5c833a
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x5c]
sub edx, ecx
mov dword [esp + 0x78], edx
fild dword [esp + 0x78]
mov edx, dword [esp + 0x18]
sub edx, eax
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x1c]
fstp dword [esi + 0x10]
fild dword [esp + 0x78]
sub edx, ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x78], edx
fstp dword [esi + 0x14]
sub ecx, eax
fild dword [esp + 0x78]
mov dword [esp + 0x78], ecx
fstp dword [esi + 0x18]
fild dword [esp + 0x78]
jmp 0x5c833a
fld dword [esp + 0x60]
call fcn.0063199c
fld dword [esp + 0x64]
mov edx, dword [esp + 0x14]
mov esi, eax
lea eax, [esi + edx]
mov dword [esp + 0x24], eax
call fcn.0063199c
mov ecx, dword [esp + 0x18]
lea edx, [eax + ecx]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x20]
add eax, edx
add esi, ecx
mov dword [esp + 0x30], eax
mov eax, dword [0x750814]
mov cl, byte [eax + 0x1c6]
test cl, cl
mov dword [esp + 0x2c], esi
jne 0x5c82b2
mov ecx, dword [0x74e914]
add ecx, 0x30
push ecx
lea ecx, [esp + 0x28]
call fcn.00425f30
mov edx, dword [esp + 0x2c]
cmp dword [esp + 0x24], edx
jge 0x5c8140
mov eax, dword [esp + 0x30]
cmp dword [esp + 0x28], eax
jge 0x5c8140
mov esi, dword [esp + 0x78]
fild dword [esp + 0x24]
fld st(0)
fstp dword [esi]
fild dword [esp + 0x28]
fst dword [esi + 4]
fild dword [esp + 0x2c]
fst dword [esp + 0x6c]
fstp dword [esi + 8]
fild dword [esp + 0x30]
fst dword [esp + 0x10]
fstp dword [esi + 0xc]
fild dword [esp + 0x34]
fstp dword [esp + 0x78]
fxch st(1)
fsub dword [esp + 0x60]
fsub dword [esp + 0x78]
fstp dword [esi + 0x10]
fild dword [esp + 0x38]
fstp dword [esp + 0x68]
fsub dword [esp + 0x64]
fsub dword [esp + 0x68]
fstp dword [esi + 0x14]
fld dword [esp + 0x6c]
fsub dword [esp + 0x60]
fsub dword [esp + 0x78]
fstp dword [esi + 0x18]
fld dword [esp + 0x10]
fsub dword [esp + 0x64]
fsub dword [esp + 0x68]
fstp dword [esi + 0x1c]
mov ecx, ebx
call fcn.005c6b00
movzx ecx, word [ebx + 0x28]
mov edi, dword [esp + 0x58]
mov edx, dword [ebx + 0x30]
add ecx, 0xff
shr ecx, 8
imul ecx, ebp
add ecx, edi
cmp dword [edx + ecx*4], 0
jne 0x5c837c
push ebp
push edi
mov ecx, ebx
call fcn.005c7c10
test al, al
jne 0x5c837c
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x44
ret 0x24
movzx eax, word [ebx + 0x28]
mov ecx, dword [ebx + 0x30]
add eax, 0xff
shr eax, 8
imul eax, ebp
add eax, edi
mov edi, dword [ecx + eax*4]
mov ecx, ebx
call fcn.006beb80
mov ecx, dword [eax + 0x58]
push edi
call fcn.005c4ea0
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x74]
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], edx
mov eax, dword [edi + 0x1c]
mov eax, dword [eax + 4]
mov ecx, dword [edi + 0xc]
fild dword [eax + 8]
fild dword [eax + 0xc]
mov dword [esp + 0x78], ecx
fild dword [esp + 0x78]
mov edx, dword [edi + 0x10]
mov dword [esp + 0x6c], edx
fstp dword [esp + 0x78]
fld dword [0x6d3398]
fdiv st(2)
fstp dword [esp + 0x68]
fld dword [esp + 0x78]
fadd dword [esi + 0x10]
fmul dword [esp + 0x68]
fstp dword [esi + 0x10]
fild dword [esp + 0x6c]
fstp dword [esp + 0x6c]
fld dword [0x6d3398]
fdiv st(1)
fstp st(2)
fstp st(0)
fld dword [esp + 0x6c]
fadd dword [esi + 0x14]
fmul st(1)
fstp dword [esi + 0x14]
fld dword [esp + 0x78]
fadd dword [esi + 0x18]
fmul dword [esp + 0x68]
fstp dword [esi + 0x18]
fld dword [esp + 0x6c]
fadd dword [esi + 0x1c]
fmul st(1)
fstp dword [esi + 0x1c]
mov ecx, dword [edi + 0x1c]
mov edx, dword [ecx + 4]
mov eax, dword [edx + 4]
fstp st(0)
pop edi
mov dword [esi + 0x28], eax
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x44
ret 0x24
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x44
ret 0x24