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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5c91c0
sub esp, 0x7c
lea edi, [esp + 0x68]
lea esi, [esp + 0x8c]
call fcn.0045b46e
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
test ecx, 0x80000000
je 0x5c91b3
shl ecx, 1
mov edx, eax
shr eax, 0x1f
or ecx, eax
mov eax, edx
shl edx, 1
mov ebx, ecx
shl ecx, 1
shr edx, 0x1f
or edx, ecx
mov ecx, edx
add edx, 0xd7b17f80
shr ebx, 0x1f
add ecx, 0xd7b17f80
adc ebx, 0xd
test ebx, ebx
sete cl
test edx, edx
sete dl
and ecx, edx
test cl, cl
je 0x5c8d02
test eax, 0x3fffffff
je 0x5c9195
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x80]
mov dword [esp + 8], edx
call fcn.005c8b40
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x80]
mov edx, dword [ecx + 0x78]
mov ebx, dword [ecx + 0x7c]
test edx, edx
je 0x5c917d
mov ebp, edx
mov esi, ebx
mov edi, ebx
lea ebx, [esp + 8]
mov dword [esp + 0x5c], ebx
mov ecx, dword [ecx + 0x70]
test ecx, ecx
je 0x5c905d
test ebp, ebp
mov dword [esp + 0x58], ecx
je 0x5c904b
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x38], esi
mov edi, esp
mov eax, esi
lea esi, [esp + 0x8c]
call fcn.0045b46e
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], eax
call fcn.005c8ac0
movzx eax, byte [esp + 0x1c]
test al, al
jne 0x5c8ff3
xor eax, eax
mov dword [esp + 0x3c], eax
lea ecx, [0x62c340]
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.00404780
mov eax, dword [esp + 8]
mov dword [esp + 0x40], eax
mov ecx, dword [0x8326a0]
test ecx, ecx
jne 0x5c8fdf
mov ecx, dword [esp + 0x80]
mov dword [ecx + 0x70], eax
lea eax, [0x649c80]
mov dword [esp], eax
call fcn.0040b4f0
mov eax, dword [esp + 4]
lea ecx, [0x5f6e60]
mov dword [eax], ecx
mov ecx, dword [0x8326a0]
test ecx, ecx
jne 0x5c8fca
mov ecx, dword [esp + 0x40]
mov dword [eax + 4], ecx
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 0x84]
mov dword [eax + 8], ecx
mov ecx, dword [0x8326a0]
test ecx, ecx
jne 0x5c8fa5
mov ecx, dword [esp + 0x88]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x80]
mov dword [eax + 0x10], ecx
lea eax, [0x62c340]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00404780
mov eax, dword [esp + 8]
mov dword [esp + 0x34], eax
lea ecx, [0x646be0]
mov dword [esp], ecx
call fcn.0040b4f0
mov eax, dword [esp + 4]
mov dword [esp + 0x64], eax
lea ecx, [0x649da0]
mov dword [esp], ecx
call fcn.0040b4f0
mov eax, dword [esp + 4]
mov dword [esp + 0x50], eax
lea ecx, [0x5f6f30]
mov dword [eax], ecx
mov ecx, dword [0x8326a0]
test ecx, ecx
jne 0x5c8f7a
mov ecx, dword [esp + 0x64]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
mov edx, dword [esp + 0x3c]
mov dword [eax + 0xc], edx
mov edi, esp
lea esi, [esp + 0x8c]
call fcn.0045b46e
call fcn.0049d0d0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0049b5e0
mov eax, dword [esp + 8]
mov dword [esp + 0x30], eax
lea ecx, [0x633580]
mov dword [esp], ecx
call fcn.0040b4f0
mov eax, dword [esp + 4]
mov dword [esp + 0x60], eax
mov dword [esp], 0x14
lea ecx, [0x689694]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x18], ecx
call fcn.0043a390
lea eax, [0x63c3e0]
mov dword [esp], eax
call fcn.0040b4f0
mov eax, dword [esp + 4]
lea ecx, [0x5ffd90]
mov dword [eax], ecx
mov ecx, dword [0x8326a0]
test ecx, ecx
jne 0x5c8f68
mov ecx, dword [esp + 0x60]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
add esp, 0x7c
ret
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x60]
call fcn.0045ace0
mov eax, ecx
jmp 0x5c8f52
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x64]
call fcn.0045ace0
lea edi, [ecx + 8]
mov eax, dword [esp + 0x34]
call fcn.0045ace0
lea edi, [ecx + 0xc]
mov eax, dword [esp + 0x3c]
call fcn.0045ace0
jmp 0x5c8ea8
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0x88]
call fcn.0045ace0
lea edi, [ecx + 0x10]
mov eax, dword [esp + 0x80]
call fcn.0045ace0
jmp 0x5c8e33
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x40]
call fcn.0045ace0
mov eax, ecx
jmp 0x5c8e03
mov ecx, dword [esp + 0x80]
lea edi, [ecx + 0x70]
call fcn.0045ace0
jmp 0x5c8dd4
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
mov edi, dword [esp + 0x5c]
lea esi, [esp + 0x8c]
call fcn.0045b46e
call fcn.004b4e80
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x80]
mov dword [ebx + 0x78], ecx
mov ecx, dword [0x8326a0]
test ecx, ecx
jne 0x5c9041
mov dword [ebx + 0x7c], eax
mov eax, edx
jmp 0x5c8d9a
lea edi, [ebx + 0x7c]
call fcn.0045ace0
jmp 0x5c903a
nop
mov esi, dword [0x81a7fc]
lea ebp, [0x6cab60]
jmp 0x5c8d66
test al, al
jne 0x5c9068
test ebp, ebp
jmp 0x5c8d5c
mov dword [esp + 0x4c], edi
mov dword [esp + 0x28], edx
mov eax, edi
mov edi, esp
lea esi, [esp + 0x8c]
call fcn.0045b46e
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], eax
call fcn.005c8ac0
movzx eax, byte [esp + 0x1c]
test al, al
je 0x5c915f
mov eax, dword [esp + 0x28]
mov dword [esp], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov edi, dword [esp + 0x5c]
lea esi, [esp + 0x8c]
call fcn.0045b46e
call fcn.004b4e80
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x48], edx
mov ebx, dword [esp + 0x80]
mov dword [ebx + 0x78], ecx
mov ecx, dword [0x8326a0]
test ecx, ecx
jne 0x5c9155
mov dword [ebx + 0x7c], eax
lea eax, [0x63d8e0]
mov dword [esp], eax
call fcn.0040b4f0
mov eax, dword [esp + 4]
lea ecx, [0x5f6df0]
mov dword [eax], ecx
mov ecx, dword [0x8326a0]
lea edi, [eax + 4]
test ecx, ecx
jne 0x5c912e
lea esi, [esp + 0x8c]
call fcn.0045b46e
mov ecx, dword [esp + 0x48]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
add esp, 0x7c
ret
mov dword [esp + 0x44], eax
lea eax, [0x66c3e0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x8c]
mov dword [esp + 8], eax
call fcn.00410a20
mov eax, dword [esp + 0x44]
jmp 0x5c9118
lea edi, [ebx + 0x7c]
call fcn.0045ace0
jmp 0x5c90e5
lea eax, [0x689690]
mov dword [esp + 0xa0], eax
lea eax, [0x689634]
mov dword [esp + 0xa4], eax
add esp, 0x7c
ret
nop
mov ebp, dword [0x81a7fc]
mov esi, ebx
mov ebx, ebp
mov ebp, edx
lea edx, [0x6cab60]
jmp 0x5c8d45
lea eax, [0x689690]
mov dword [esp + 0xa0], eax
lea eax, [0x689634]
mov dword [esp + 0xa4], eax
add esp, 0x7c
ret
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
jmp 0x5c8ce7
call fcn.00459790
jmp fcn.005c8c80