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

Disassembly:
mov ecx, dword [0x95eda0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x5e79ae
sub esp, 0x88
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x98]
cmp ecx, eax
jle 0x5e723f
jbe 0x5e79a8
lea ebx, [eax + 1]
mov ebp, dword [esp + 0x8c]
movzx esi, byte [ebp + eax]
cmp ecx, ebx
jle 0x5e71e2
mov edi, esi
and esi, 0x1f
xchg esi, eax
cmp al, 0x1f
xchg esi, eax
je 0x5e798e
jmp 0x5e729c
lea eax, [0x6b6b60]
mov dword [esp], eax
call fcn.0040c000
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x3c
lea ecx, [0x70d5fc]
mov dword [eax], ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x762e24]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x88
ret
lea eax, [0x6b6b60]
mov dword [esp], eax
call fcn.0040c000
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x28
lea ecx, [0x7091f5]
mov dword [eax], ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x762e24]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x88
ret
cmp ecx, ebx
jbe 0x5e7986
mov dword [esp + 0x28], ebx
movzx esi, byte [ebp + ebx]
lea edx, [ebx + 1]
xchg esi, eax
cmp al, 0x80
xchg esi, eax
jbe 0x5e7434
and esi, 0x7f
cmp esi, 4
jg 0x5e73d7
jne 0x5e7341
cmp ecx, edx
jbe 0x5e797f
movzx eax, byte [ebp + ebx + 1]
cmp eax, 0x7f
jg 0x5e72e4
mov eax, dword [esp + 0x98]
jmp 0x5e7341
lea eax, [0x6b6b60]
mov dword [esp], eax
call fcn.0040c000
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x23
lea ecx, [0x707347]
mov dword [eax], ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x762e24]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x88
ret
cmp ecx, edx
jbe 0x5e7978
movzx eax, byte [ebp + ebx + 1]
test eax, eax
je 0x5e737a
lea eax, [ebx + esi + 1]
mov ebx, dword [esp + 0x94]
cmp ebx, eax
jb 0x5e796f
cmp eax, edx
jb 0x5e7966
xchg edi, eax
mov byte [esp + 0x27], al
xchg edi, eax
xor eax, eax
jmp 0x5e7948
lea eax, [0x6b6b60]
mov dword [esp], eax
call fcn.0040c000
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x28
lea ecx, [0x70921d]
mov dword [eax], ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x762e24]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x88
ret
lea eax, [0x6b6b60]
mov dword [esp], eax
call fcn.0040c000
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x20
lea ecx, [0x705eac]
mov dword [eax], ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x762e24]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x88
ret
jne 0x5e743d
mov esi, 0
jmp 0x5e7442
xchg esi, eax
movzx eax, al
xchg esi, eax
sete al
test esi, esi
jl 0x5e7602
mov dword [esp + 0x38], esi
add esi, edx
cmp ecx, esi
jl 0x5e75a5
mov ebx, dword [esp + 0x94]
cmp ebx, esi
jb 0x5e792e
cmp edx, esi
ja 0x5e7925
mov dword [esp + 0x3c], esi
mov byte [esp + 0x26], al
sub ebx, edx
mov dword [esp + 0x48], ebx
neg ebx
sar ebx, 0x1f
and ebx, edx
add ebx, ebp
test al, al
je 0x5e74f5
xchg edi, eax
test al, 0x20
xchg edi, eax
jne 0x5e7589
lea eax, [0x6b6b60]
mov dword [esp], eax
call fcn.0040c000
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x3b
lea ecx, [0x70d3a5]
mov dword [eax], ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x762e24]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x88
ret
xchg edi, eax
test al, 0x20
xchg edi, eax
jne 0x5e7589
mov edi, dword [esp + 0x98]
mov ecx, dword [esp + 0x28]
cmp edi, ecx
ja 0x5e791e
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0x94]
sub eax, edi
sub ecx, edi
mov edx, eax
neg eax
sar eax, 0x1f
and edi, eax
lea eax, [ebp + edi]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], edx
mov eax, dword [esp + 0x38]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x84], eax
lea eax, [0x6cf080]
mov dword [esp], eax
lea eax, [esp + 0x6c]
mov dword [esp + 4], eax
call fcn.0040a1e0
mov eax, dword [esp + 8]
movzx ecx, byte [esp + 0x26]
test cl, cl
mov ecx, dword [esp + 0x44]
lea edx, [0x763180]
jmp 0x5e78d8
mov ebx, dword [esp + 0x94]
xor edi, edi
xor edi, edi
mov dword [esp + 0x4c], edi
xor edi, edi
mov dword [esp + 0x2c], edi
xor edi, edi
jmp 0x5e768a
lea eax, [0x6b6b60]
mov dword [esp], eax
call fcn.0040c000
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x33
lea ecx, [0x70c116]
mov dword [eax], ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x762e24]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x88
ret
lea eax, [0x6b6b60]
mov dword [esp], eax
call fcn.0040c000
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x37
lea ecx, [0x70ccbf]
mov dword [eax], ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea ecx, [0x762e24]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x88
ret
mov ebx, dword [esp + 0x90]
mov edi, dword [esp + 0x3c]
mov eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x94]
mov edx, dword [esp + 0x48]
mov edi, esi
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0x8c]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x30], edi
cmp edx, esi
jl 0x5e769a
test al, al
je 0x5e7865
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
call fcn.005e7180
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
test eax, eax
jne 0x5e782b
mov dword [esp + 0x48], ecx
mov ebp, dword [esp + 0x2c]
inc ebp
mov esi, dword [esp + 0x30]
cmp esi, ebp
jb 0x5e76dd
mov eax, dword [esp + 0x4c]
jmp 0x5e7725
mov dword [esp + 0x50], ebx
mov dword [esp + 0x34], edx
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x6b48e0]
mov dword [esp + 0x10], eax
call fcn.0046c6b0
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x50]
mov esi, edi
mov dword [esp + 0x4c], eax
lea edi, [eax + ebp*8 - 8]
mov dword [edi], edx
mov edx, dword [0x95f020]
lea edi, [eax + ebp*8 - 4]
test edx, edx
jne 0x5e7746
movzx edx, byte [esp + 0x26]
test dl, dl
jmp 0x5e7768
mov edx, edi
call fcn.004717d0
mov dword [edi], ebx
mov eax, dword [edx]
mov dword [edi + 4], eax
movzx edi, byte [esp + 0x26]
xchg edi, eax
test al, al
xchg edi, eax
mov eax, dword [esp + 0x4c]
mov edi, edx
movzx edx, byte [esp + 0x26]
mov dword [edi], ebx
je 0x5e765f
mov dword [esp + 0x44], ebp
mov dword [esp + 0x40], esi
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov edx, dword [esp + 0x90]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x94]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call fcn.005e79c0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x5e77f1
movzx edx, byte [esp + 0x10]
test dl, dl
jne 0x5e77cc
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
jmp 0x5e765f
movzx eax, byte [esp + 0x26]
mov ebx, dword [esp + 0x94]
mov ebp, dword [esp + 0x8c]
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
jmp 0x5e7869
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ecx
add esp, 0x88
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ecx
add esp, 0x88
ret
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x48], edx
mov esi, dword [esp + 0x98]
mov edx, dword [esp + 0x28]
cmp esi, edx
ja 0x5e7915
sub ebx, esi
sub edx, esi
mov eax, ebx
neg ebx
sar ebx, 0x1f
and esi, ebx
lea ebx, [ebp + esi]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], edi
lea eax, [0x6cae80]
mov dword [esp], eax
lea eax, [esp + 0x54]
mov dword [esp + 4], eax
call fcn.0040a1e0
mov eax, dword [esp + 8]
movzx ecx, byte [esp + 0x26]
test cl, cl
mov ecx, dword [esp + 0x48]
lea edx, [0x763190]
je 0x5e78df
lea esi, [ecx + 2]
jmp 0x5e78e3
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], esi
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
add esp, 0x88
ret
mov eax, esi
mov ecx, edx
call fcn.004718a0
mov eax, edi
call fcn.004718a0
mov eax, edx
mov ecx, esi
call fcn.004718a0
mov ecx, esi
mov edx, ebx
call fcn.00471880
shl eax, 8
movzx edi, byte [ebp + edx]
dec esi
add eax, edi
inc edx
movzx edi, byte [esp + 0x27]
test esi, esi
jle 0x5e7952
cmp ecx, edx
ja 0x5e7937
jmp 0x5e795f
mov ebx, dword [esp + 0x28]
mov esi, eax
xor eax, eax
jmp 0x5e7445
mov eax, edx
call fcn.00471840
mov ecx, eax
mov eax, edx
call fcn.004718a0
mov ecx, eax
mov edx, ebx
call fcn.00471880
mov eax, edx
call fcn.00471840
mov eax, edx
call fcn.00471840
mov eax, ebx
call fcn.00471840
inc ebx
cmp ecx, ebx
jbe 0x5e79a1
lea esi, [ebp + ebx]
cmp byte [esi], 0x80
jae 0x5e798d
inc ebx
jmp 0x5e729c
mov eax, ebx
call fcn.00471840
call fcn.00471840
nop
call fcn.004703c0
jmp fcn.005e7180