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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x593f65
sub esp, 0x10
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x68]
test ecx, ecx
jne 0x593f56
mov ecx, dword [eax + 4]
movzx ecx, word [ecx + 0xc]
cmp cx, 0x303
jbe 0x593f16
mov ecx, 4
lea edx, [0xa39390]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
lea eax, [0x76f0c0]
mov dword [esp], eax
call fcn.00409d00
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 0x2c]
mov ebx, dword [ecx + 0x28]
mov ecx, dword [ecx + 0x30]
mov edi, dword [esp + 4]
mov dword [edi + 4], edx
mov dword [edi + 8], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x593f06
mov dword [edi], ebx
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 0x44]
mov ecx, dword [ecx + 0x48]
mov dword [edi + 0x10], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x593eed
mov dword [edi + 0xc], edx
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 0x58]
mov ebx, dword [ecx + 0x54]
mov ecx, dword [ecx + 0x50]
mov dword [edi + 0x18], ebx
mov dword [edi + 0x1c], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x593ed4
mov dword [edi + 0x14], ecx
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 0x64]
mov ebx, dword [ecx + 0x60]
mov ecx, dword [ecx + 0x5c]
mov dword [edi + 0x24], ebx
mov dword [edi + 0x28], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x593ebb
mov dword [edi + 0x20], ecx
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 0x80]
mov ebx, dword [ecx + 0x78]
mov ecx, dword [ecx + 0x7c]
mov dword [edi + 0x30], ecx
mov dword [edi + 0x34], edx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x593ea2
mov dword [edi + 0x2c], ebx
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 0x9c]
mov ebx, dword [ecx + 0x98]
mov ecx, dword [ecx + 0x94]
mov dword [edi + 0x3c], ebx
mov dword [edi + 0x40], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x593e89
mov dword [edi + 0x38], ecx
mov ecx, dword [esp + 8]
mov dword [edi + 0x48], ecx
mov dword [edi + 0x4c], ecx
mov ecx, dword [0xa8f2d0]
test ecx, ecx
jne 0x593e71
mov ecx, dword [esp + 0xc]
mov dword [edi + 0x44], ecx
mov ecx, dword [eax]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [edi + 0x50], edx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x593e53
mov dword [edi + 0x54], ecx
mov dword [eax + 0x68], edi
mov dword [esp + 0x18], edi
add esp, 0x10
ret
lea edx, [edi + 0x54]
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, ecx
call fcn.0044c9e0
lea edi, [ebp + 0x68]
mov eax, ebx
call fcn.0044c9e0
mov edi, ebx
jmp 0x593e4b
lea ecx, [edi + 0x44]
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, dword [esp + 0xc]
call fcn.0044c9e0
mov eax, ebx
mov edi, edx
jmp 0x593e31
lea edx, [edi + 0x38]
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, ecx
call fcn.0044c9e0
mov eax, ebp
mov edi, ebx
jmp 0x593e16
lea ecx, [edi + 0x2c]
mov edx, edi
mov edi, ecx
mov ebp, eax
mov eax, ebx
call fcn.0044c9e0
mov eax, ebp
mov edi, edx
jmp 0x593dee
lea edx, [edi + 0x20]
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, ecx
call fcn.0044c9e0
mov eax, ebp
mov edi, ebx
jmp 0x593dc8
lea edx, [edi + 0x14]
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, ecx
call fcn.0044c9e0
mov eax, ebp
mov edi, ebx
jmp 0x593da5
lea ecx, [edi + 0xc]
mov ebx, edi
mov edi, ecx
mov ebp, eax
mov eax, edx
call fcn.0044c9e0
mov eax, ebp
mov edi, ebx
jmp 0x593d82
mov ecx, eax
mov eax, ebx
call fcn.0044c9e0
mov eax, ecx
jmp 0x593d65
cmp cx, 0x300
jb 0x593f50
add ecx, 0xfffffcfd
neg ecx
movzx ecx, cx
cmp ecx, 4
ja 0x593f5e
mov edx, ecx
shl ecx, 1
add edx, 0xfffffffc
neg edx
mov ebx, edx
neg edx
sar edx, 0x1f
and ecx, edx
lea edx, [0xa39390]
add ecx, edx
mov edx, ecx
mov ecx, ebx
jmp 0x593d25
xor ebx, ebx
xor ecx, ecx
jmp 0x593f47
mov dword [esp + 0x18], ecx
add esp, 0x10
ret
call fcn.004267e0
ud2
call fcn.0044b280
jmp fcn.00593ce0