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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x58b092
sub esp, 0x68
lea edi, [esp + 0x50]
xor eax, eax
call fcn.0045e1fa
lea ecx, [0x5c3fe0]
mov dword [esp + 0x50], ecx
lea ecx, [0x5c3f80]
mov dword [esp + 0x58], ecx
lea ecx, [0x5c3a20]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x6c]
test ecx, ecx
je 0x58b087
nop
movzx edx, byte [0x753128]
test dl, dl
je 0x58b07e
mov edx, dword [esp + 0x6c]
mov dword [0x75312c], edx
mov edx, dword [0x770e60]
test edx, edx
jne 0x58b06a
mov eax, dword [esp + 0x70]
mov dword [0x753130], eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x58b05f
nop
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x58aec9
or edx, 0x80
mov dword [esp + 0x20], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x2c], ecx
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00488490
mov eax, dword [esp + 0xc]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x3c], ecx
xor edx, edx
jmp 0x58af08
mov ebx, dword [esp + 0x24]
lea edx, [ebx + 1]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x3c]
cmp edx, 3
jge 0x58b04b
mov dword [esp + 0x24], edx
lea ebx, [esp + edx*8 + 0x50]
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
test ebp, ebp
je 0x58b040
nop
movzx esi, byte [0x753128]
xchg esi, eax
test al, al
xchg esi, eax
je 0x58af4e
mov dword [0x75312c], ebp
mov esi, dword [0x770e60]
test esi, esi
jne 0x58b02a
mov dword [0x753130], ebx
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], ebx
mov ebp, dword [esp + 0x40]
test ebp, ebp
je 0x58b01f
nop
movzx esi, byte [ebp + 0xf]
mov edi, esi
and esi, 0x1f
xchg edi, eax
test al, 0x20
xchg edi, eax
jne 0x58af79
or esi, 0x80
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
call fcn.00488490
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0x24]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x38], edx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x34], ebx
mov ebp, dword [esp + 0x3c]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call ecx
movzx eax, byte [esp + 0xc]
test al, al
je 0x58aef9
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x10], eax
call fcn.00489450
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call fcn.004862f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], ecx
add esp, 0x68
ret
xor esi, esi
xor ebp, ebp
xor ebx, ebx
jmp 0x58af79
lea edi, [0x753130]
mov esi, eax
mov eax, ebx
call fcn.0045df70
mov eax, esi
jmp 0x58af4e
xor esi, esi
xor ebp, ebp
xor ebx, ebx
jmp 0x58af79
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
add esp, 0x68
ret
xor edx, edx
xor ecx, ecx
xor eax, eax
jmp 0x58aec9
lea edi, [0x753130]
mov eax, dword [esp + 0x70]
call fcn.0045df70
jmp 0x58aea0
mov eax, dword [esp + 0x70]
jmp 0x58aea0
xor edx, edx
xor ecx, ecx
xor eax, eax
jmp 0x58aec9
call fcn.0045ca10
jmp fcn.0058ae20