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

Disassembly:
sub esp, 0xc0
push ebx
mov ebx, ecx
mov ecx, dword [esp + 0xcc]
push ebp
mov ebp, dword [esp + 0xcc]
mov eax, ecx
push esi
sub eax, ebp
push edi
mov edi, ebp
mov esi, eax
cmp ebp, ecx
mov dword [esp + 0x20], edi
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
jge 0x68e528
mov esi, ebp
mov edi, eax
shl esi, 6
shl ebp, 4
mov al, byte [ebx + 0x3c]
mov dword [esp + 0x18], 0x3f000000
test al, al
je 0x68e423
mov eax, dword [ebx + 0x74]
lea ecx, [esp + 0x40]
add eax, ebp
push eax
push ecx
mov ecx, ebx
call fcn.00691010
jmp 0x68e443
mov edx, dword [ebx + 0x4c]
add edx, esi
mov eax, dword [edx]
mov dword [esp + 0x40], eax
mov ecx, dword [edx + 4]
mov dword [esp + 0x44], ecx
mov eax, dword [edx + 8]
mov dword [esp + 0x48], eax
mov ecx, dword [edx + 0xc]
mov dword [esp + 0x4c], ecx
mov al, byte [ebx + 0x3c]
test al, al
je 0x68e460
mov edx, dword [ebx + 0x74]
lea ecx, [esp + 0x50]
lea eax, [edx + ebp + 6]
push eax
push ecx
mov ecx, ebx
call fcn.00691010
jmp 0x68e484
mov edx, dword [ebx + 0x4c]
lea eax, [edx + esi + 0x10]
mov ecx, dword [edx + esi + 0x10]
mov dword [esp + 0x50], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x54], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x58], ecx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x5c], edx
fld dword [esp + 0x58]
fadd dword [esp + 0x48]
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
lea edx, [esp + 0x14]
push ecx
push edx
fstp dword [esp + 0x28]
fld dword [esp + 0x60]
fadd dword [esp + 0x50]
lea ecx, [esp + 0x8c]
fstp dword [esp + 0x20]
fld dword [esp + 0x5c]
fadd dword [esp + 0x4c]
fstp dword [esp + 0x1c]
call fcn.0053e5d0
lea eax, [esp + 0x18]
lea ecx, [esp + 0x80]
push eax
lea edx, [esp + 0x6c]
push ecx
push edx
call fcn.005f4cc0
fld dword [esp + 0x74]
fadd dword [esp + 0x30]
add esp, 0xc
add ebp, 0x10
add esi, 0x40
dec edi
fstp dword [esp + 0x24]
fld dword [esp + 0x28]
fadd dword [esp + 0x6c]
fstp dword [esp + 0x28]
fld dword [esp + 0x2c]
fadd dword [esp + 0x70]
fstp dword [esp + 0x2c]
jne 0x68e400
mov ecx, dword [esp + 0xd8]
mov ebp, dword [esp + 0xd4]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x3c]
fild dword [esp + 0x3c]
mov edx, dword [esp + 0xdc]
cmp ebp, ecx
fdivr dword [0x6a7764]
fld dword [esp + 0x24]
fmul st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x28]
fmul st(1)
fstp dword [esp + 0x28]
fld dword [esp + 0x2c]
fmul st(1)
fstp dword [esp + 0x2c]
fstp st(0)
fld dword [esp + edx*4 + 0x24]
fstp dword [esp + 0x64]
jge 0x68e76e
mov esi, ebp
lea ecx, [esp + edx*4 + 0x24]
shl esi, 6
shl ebp, 4
mov edi, ebp
mov dword [esp + 0x78], ecx
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], edi
mov dword [esp + 0x1c], eax
mov al, byte [ebx + 0x3c]
mov dword [esp + 0x7c], 0x3f000000
test al, al
je 0x68e5ae
mov edx, dword [ebx + 0x74]
lea eax, [esp + 0x40]
add edx, edi
mov ecx, ebx
push edx
push eax
call fcn.00691010
jmp 0x68e5ce
mov ecx, dword [ebx + 0x4c]
add ecx, esi
mov edx, dword [ecx]
mov dword [esp + 0x40], edx
mov eax, dword [ecx + 4]
mov dword [esp + 0x44], eax
mov edx, dword [ecx + 8]
mov dword [esp + 0x48], edx
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x4c], eax
mov al, byte [ebx + 0x3c]
test al, al
je 0x68e5eb
mov ecx, dword [ebx + 0x74]
lea eax, [esp + 0x50]
lea edx, [ecx + edi + 6]
mov ecx, ebx
push edx
push eax
call fcn.00691010
jmp 0x68e60f
mov ecx, dword [ebx + 0x4c]
lea edx, [ecx + esi + 0x10]
mov eax, dword [ecx + esi + 0x10]
mov dword [esp + 0x50], eax
mov ecx, dword [edx + 4]
mov dword [esp + 0x54], ecx
mov eax, dword [edx + 8]
mov dword [esp + 0x58], eax
mov ecx, dword [edx + 0xc]
mov dword [esp + 0x5c], ecx
fld dword [esp + 0x58]
fadd dword [esp + 0x48]
lea edx, [esp + 0x38]
lea eax, [esp + 0x60]
push edx
lea ecx, [esp + 0x38]
push eax
push ecx
fstp dword [esp + 0x44]
fld dword [esp + 0x60]
fadd dword [esp + 0x50]
lea ecx, [esp + 0x8c]
fstp dword [esp + 0x6c]
fld dword [esp + 0x4c]
fadd dword [esp + 0x5c]
fstp dword [esp + 0x40]
call fcn.0053e5d0
lea edx, [esp + 0x7c]
lea eax, [esp + 0x80]
push edx
lea ecx, [esp + 0x28]
push eax
push ecx
call fcn.005f4cc0
mov edx, dword [esp + 0x84]
add esp, 0xc
fld dword [edx]
fcomp dword [esp + 0x64]
fnstsw ax
test ah, 0x41
jne 0x68e73b
mov al, byte [ebx + 0x3c]
test al, al
je 0x68e6de
mov ecx, dword [ebx + 0x74]
lea eax, [edi + ecx]
add ecx, ebp
mov edi, eax
mov edx, dword [edi]
mov esi, dword [edi + 4]
mov dword [esp + 0x6c], esi
mov esi, dword [edi + 8]
mov edi, dword [edi + 0xc]
mov dword [esp + 0x74], edi
mov edi, dword [ecx]
mov dword [eax], edi
mov edi, dword [ecx + 4]
mov dword [eax + 4], edi
mov edi, dword [ecx + 8]
mov dword [eax + 8], edi
mov edi, dword [esp + 0x10]
mov ecx, dword [ecx + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, dword [ebx + 0x74]
mov eax, ebp
add eax, ecx
mov ecx, dword [esp + 0x6c]
mov dword [eax], edx
mov edx, dword [esp + 0x74]
mov dword [eax + 4], ecx
mov dword [eax + 8], esi
mov esi, dword [esp + 0x14]
mov dword [eax + 0xc], edx
jmp 0x68e724
mov edx, dword [ebx + 0x4c]
mov eax, dword [esp + 0x18]
add esi, edx
mov ecx, 0x10
lea edi, [esp + 0x90]
mov dword [esp + 0x34], esi
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x34]
lea esi, [eax + edx]
mov ecx, 0x10
rep movsd dword es:[edi], dword [esi]
mov edi, eax
mov eax, dword [ebx + 0x4c]
add edi, eax
mov ecx, 0x10
lea esi, [esp + 0x90]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
inc edx
add ebp, 0x10
add eax, 0x40
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x1c]
add edi, 0x10
add esi, 0x40
dec eax
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], esi
mov dword [esp + 0x1c], eax
jne 0x68e58b
mov ecx, dword [esp + 0xd8]
mov ebp, dword [esp + 0xd4]
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x3c]
mov eax, 0x55555556
imul esi
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [edx + ebp]
cmp edi, eax
jle 0x68e78a
sub ecx, edx
dec ecx
cmp edi, ecx
jl 0x68e79d
sar esi, 1
add esi, ebp
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0xc0
ret 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc0
ret 0xc