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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5f8999
sub esp, 0x68
mov ecx, dword [esp + 0x6c]
mov dword [ecx + 0x1b4], 0
mov ebx, dword [0x8e4520]
test ebx, ebx
jne 0x5f86dd
mov dword [ecx + 0x1b0], 0
jmp 0x5f86ea
lea edi, [ecx + 0x1b0]
xor eax, eax
call fcn.00462a70
mov ebx, dword [esp + 0x74]
mov dword [ecx + 0x1bc], ebx
mov ebp, dword [esp + 0x78]
mov dword [ecx + 0x1c0], ebp
mov eax, ebp
mov ebp, dword [0x8e4520]
test ebp, ebp
jne 0x5f8716
mov ebp, dword [esp + 0x70]
mov dword [ecx + 0x1b8], ebp
jmp 0x5f872d
lea edi, [ecx + 0x1b8]
mov edx, eax
mov eax, dword [esp + 0x70]
call fcn.00462a70
mov eax, edx
mov ebp, dword [esp + 0x70]
lea esi, [ecx + 0x1b0]
mov dword [esp + 0x48], esi
xor edx, edx
jmp 0x5f875f
lea ebx, [eax + esi*8]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov dword [ebx], ebp
mov dword [ebx + 4], esi
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x48]
cmp ebx, edx
jle 0x5f8907
mov dword [esp + 0x20], edx
lea edi, [esp + 0x54]
call fcn.004631de
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 0x190]
mov dword [esp + 0x50], ecx
mov ebx, dword [ecx]
lea edi, [esp]
lea esi, [esp + 0x54]
call fcn.004631de
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x50]
call ebx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], ecx
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ecx
movzx eax, byte [esp + 0x32]
test al, al
jne 0x5f87e0
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x44]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebp
movzx ebx, byte [esp + 0x2d]
test bl, 8
sete bl
jmp 0x5f87e2
xor ebx, ebx
test bl, bl
je 0x5f880f
mov ebx, dword [esp + 0x6c]
mov ebp, dword [ebx + 0x184]
test ebp, ebp
jle 0x5f8813
mov dword [esp], ebx
call fcn.005f81f0
movzx eax, byte [esp + 4]
test al, al
je 0x5f88fb
mov ebx, dword [esp + 0x6c]
jmp 0x5f8813
mov ebx, dword [esp + 0x6c]
movzx eax, byte [ebx + 0x180]
cmp eax, 0x80
ja 0x5f898e
lea ebp, [eax - 0x80]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov ecx, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
lea ebp, [ebx + eax + 0x100]
mov eax, ebx
movzx ebx, byte [esp + 0x41]
mov edx, ebp
mov ebp, dword [esp + 0x20]
mov esi, ebx
add ebx, ebp
mov edi, ebp
mov ebp, dword [esp + 0x78]
cmp ebp, ebx
jb 0x5f8985
cmp edi, ebx
ja 0x5f897c
sub ebp, edi
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, edi
mov ebx, dword [esp + 0x70]
add ebp, ebx
cmp esi, ecx
jl 0x5f8882
mov esi, ecx
cmp edx, ebp
je 0x5f88aa
mov dword [esp + 0x24], esi
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004633f0
mov eax, dword [esp + 0x6c]
mov ebx, dword [esp + 0x70]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov ebp, dword [esp + 0x40]
mov ecx, ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], ebx
lea ebx, [esi + edi]
mov ebp, dword [eax + 0x184]
mov edx, ebx
movzx ebx, byte [esp + 0x3a]
test bl, bl
ja 0x5f8939
inc dword [eax + 0x184]
movzx ebx, byte [eax + 0x180]
mov esi, ebp
lea ebp, [ebx + 4]
xchg ebp, ebx
mov byte [eax + 0x180], bl
xchg ebp, ebx
mov byte [esp + 0x38], bl
cmp esi, 0x20
jb 0x5f873b
jmp 0x5f8913
mov dword [esp + 0x7c], 0xffffffff
add esp, 0x68
ret
mov dword [esp + 0x7c], 0
add esp, 0x68
ret
mov eax, esi
mov ecx, 0x20
call fcn.00462af0
lea ebx, [eax + ebp*8]
mov ebp, dword [esp + 0x4c]
mov ecx, dword [ebp]
mov ebp, dword [ebp + 4]
mov dword [ebx], ecx
mov dword [ebx + 4], ebp
mov ecx, dword [esp + 0x70]
mov ebx, esi
mov ebp, edi
test ebp, ebp
jle 0x5f88d0
mov esi, ebx
lea ebx, [ebp - 1]
cmp ebx, 0x20
jae 0x5f8970
mov edi, ebx
lea ebx, [eax + ebp*8 - 8]
mov dword [esp + 0x4c], ebx
lea ebx, [eax + ebp*8 - 6]
xchg esi, eax
cmp byte [ebx], al
xchg esi, eax
jbe 0x5f88d0
cmp ebp, 0x20
jb 0x5f891f
mov eax, 0x20
mov ecx, eax
call fcn.00462af0
mov eax, ebx
mov ecx, 0x20
call fcn.00462af0
mov eax, edi
mov ecx, ebx
call fcn.00462b50
mov ecx, ebx
mov edx, ebp
call fcn.00462b30
mov ecx, pe_nt_image_headers32
call fcn.00462b50
nop
call fcn.00461660
jmp fcn.005f86a0