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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5caee9
sub esp, 0x64
lea eax, [0x637320]
mov dword [esp], eax
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
lea edx, [0x681296]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call fcn.0040dcb0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0
call fcn.0045da70
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test edx, edx
je 0x5cac06
mov eax, dword [0x86fb68]
mov ecx, dword [0x86fb6c]
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
add esp, 0x64
ret
test ecx, ecx
sete dl
test eax, eax
setb bl
and edx, ebx
test ecx, ecx
setl bl
or edx, ebx
test dl, dl
jne 0x5cabd6
mov edx, ecx
shl ecx, 1
mov ebx, eax
shr eax, 0x1f
or ecx, eax
mov eax, ebx
shl ebx, 1
cmp ebx, eax
jl 0x5cabd6
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], edx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x48], ebx
lea eax, [0x637320]
mov dword [esp], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 4], eax
lea eax, [0x67ee9e]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xe
call fcn.0040dcb0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x67b99d]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
call fcn.004ac510
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
cmp ecx, 1
jne 0x5caca9
mov ebx, dword [eax + 4]
test ebx, ebx
jne 0x5caca9
xor ecx, ecx
mov ebx, ecx
sar ecx, 0x1f
mov ebp, dword [esp + 0x4c]
cmp ecx, ebp
setne cl
mov ebp, dword [esp + 0x48]
cmp ebx, ebp
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ecx, ebp
test cl, cl
jne 0x5caeb9
mov dword [esp + 0x44], ebx
mov dword [esp + 0x58], eax
mov dword [esp + 0x2c], edx
lea eax, [0x654380]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov ecx, dword [esp + 0x54]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x10], ecx
call fcn.00437c30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x2c]
jmp 0x5cad6e
shl ecx, 4
mov edi, dword [esp + 0x30]
mov dword [esi + ecx], edi
mov edi, dword [esp + 0x34]
mov dword [esi + ecx + 4], edi
mov dword [esi + ecx + 8], edx
mov dword [esi + ecx + 0xc], eax
mov edi, dword [esp + 0x2c]
add edi, 0xfffffffe
mov eax, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, 0x10
mov ecx, dword [esp + 0x60]
add edi, ecx
mov ecx, edi
mov edi, dword [esp + 0x28]
add edi, 0xfffffffe
mov edx, ebp
mov ebp, ecx
mov ecx, ebx
mov ebx, edi
mov edi, esi
mov esi, eax
mov eax, edi
cmp ebx, 2
jl 0x5cae99
mov dword [esp + 0x28], ebx
mov dword [esp + 0x60], ebp
mov dword [esp + 0x20], ecx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x5c], eax
mov dword [esp + 0x24], edx
mov eax, dword [ebp]
mov ecx, dword [ebp + 4]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.0045da70
mov eax, dword [esp + 0x10]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x34], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x40], edx
mov ebx, dword [esp + 0x60]
mov ebp, dword [ebx + 8]
mov esi, dword [ebx + 0xc]
mov dword [esp], ebp
mov dword [esp + 4], esi
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.0045da70
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x40]
test ebx, ebx
jne 0x5cae69
test ecx, ecx
jne 0x5cae69
mov ecx, dword [esp + 0x20]
lea ebx, [ecx + 1]
mov ebp, dword [esp + 0x24]
cmp ebx, ebp
jg 0x5cae1f
mov esi, dword [esp + 0x5c]
jmp 0x5cad22
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], edx
lea eax, [0x654380]
mov dword [esp], eax
mov edx, dword [esp + 0x5c]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00437ce0
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x38]
jmp 0x5cad22
mov eax, dword [0x86fb68]
mov ecx, dword [0x86fb6c]
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
add esp, 0x64
ret
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
add esp, 0x64
ret
mov eax, dword [0x86fb68]
mov ecx, dword [0x86fb6c]
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
add esp, 0x64
ret
call fcn.00449d70
jmp fcn.005cab60