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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x86c5d0
sub esp, 0x68
lea eax, [0x932c40]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
lea edx, [0x9d921e]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call fcn.0040ff20
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0
call fcn.004778e0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test edx, edx
je 0x86c2d9
mov eax, dword [0xe7a55c]
mov ecx, dword [0xe7a558]
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x80], eax
add esp, 0x68
ret
test ecx, ecx
sete dl
setl bl
test eax, eax
xchg ebp, ebx
setb bl
xchg ebp, ebx
and edx, ebp
or edx, ebx
test dl, dl
jne 0x86c2a6
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 0x86c2a6
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x4c], ebx
lea eax, [0x932c40]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
lea eax, [0x9d3f5a]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xe
call fcn.0040ff20
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, [0x9ca5cf]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0xffffffff
call fcn.00541d00
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
cmp ecx, 1
jne 0x86c38e
mov ebx, dword [edx + 4]
test ebx, ebx
jne 0x86c38e
xor ecx, ecx
mov ebx, ecx
sar ecx, 0x1f
mov ebp, dword [esp + 0x50]
cmp ecx, ebp
setne cl
mov ebp, dword [esp + 0x4c]
cmp ebx, ebp
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ecx, ebp
test cl, cl
jne 0x86c59d
mov dword [esp + 0x30], eax
mov dword [esp + 0x48], ebx
mov dword [esp + 0x5c], edx
lea eax, [0x9710c0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov ecx, dword [esp + 0x58]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], edx
call fcn.00440230
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x5c]
xor ebp, ebp
mov esi, dword [esp + 0x58]
jmp 0x86c44d
shl ecx, 4
mov edi, dword [esp + 0x34]
mov dword [esi + ecx], edi
mov edi, dword [esp + 0x38]
mov dword [esi + ecx + 4], edi
mov dword [esi + ecx + 8], edx
mov dword [esi + ecx + 0xc], eax
mov edi, dword [esp + 0x30]
lea ecx, [edi - 2]
mov edi, ecx
neg ecx
sar ecx, 0x1f
and ecx, 0x10
mov eax, edi
mov edi, dword [esp + 0x60]
add edi, ecx
mov ecx, edi
mov edi, dword [esp + 0x2c]
lea edx, [edi - 2]
mov edi, ecx
mov ecx, eax
mov eax, esi
mov esi, ebp
mov ebp, ebx
mov ebx, edi
cmp edx, 2
jl 0x86c57a
mov dword [esp + 0x24], ebp
mov dword [esp + 0x64], eax
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x28], esi
mov dword [esp + 0x60], ebx
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.004778e0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x38], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x44], 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.004778e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x44]
test ebx, ebx
jne 0x86c547
test ecx, ecx
jne 0x86c547
mov ecx, dword [esp + 0x24]
lea ebx, [ecx + 1]
mov ebp, dword [esp + 0x28]
cmp ebx, ebp
ja 0x86c4fd
mov esi, dword [esp + 0x64]
jmp 0x86c405
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], edx
lea eax, [0x9710c0]
mov dword [esp], eax
mov edx, dword [esp + 0x64]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.004402d0
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x3c]
jmp 0x86c405
mov eax, dword [0xe7a558]
mov ecx, dword [0xe7a55c]
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], ecx
add esp, 0x68
ret
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
add esp, 0x68
ret
mov eax, dword [0xe7a558]
mov ecx, dword [0xe7a55c]
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], ecx
add esp, 0x68
ret
call fcn.00455270
jmp fcn.0086c230