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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xc]
cmp eax, dword [ecx + 8]
jbe 0x4e611d
sub esp, 0x8c
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov ecx, dword [esp + 0x94]
mov dword [esp + 4], ecx
call fcn.004e6430
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x94]
cmp eax, ecx
ja 0x4e6117
mov ebx, ecx
sub ecx, eax
mov ebp, ecx
neg ecx
sar ecx, 0x1f
and ecx, eax
mov esi, dword [esp + 0x90]
mov edx, ebx
lea ebx, [esi + ecx]
test ebp, ebp
je 0x4e5f99
movzx ecx, byte [esi + ecx]
cmp cl, 0x5c
jne 0x4e5f8e
mov ecx, 1
mov dword [esp + 0x28], eax
mov dword [esp + 0x40], ebp
mov dword [esp + 0x90], ebx
mov byte [esp + 0x26], cl
lea edi, [esp + 0x68]
xor eax, eax
call fcn.0045c5c7
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edx
mov esi, dword [esp + 0x28]
mov dword [esp + 0x88], esi
movzx esi, byte [esp + 0x26]
xchg esi, eax
test al, al
xchg esi, eax
je 0x4e5f87
test ecx, ecx
je 0x4e5efe
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jae 0x4e6109
mov byte [edi + eax], 0x5c
inc dword [esp + 0x7c]
mov eax, 1
mov ecx, eax
jmp 0x4e5781
mov eax, edi
cmp ebp, eax
jle 0x4e5d56
jbe 0x4e6102
movzx edi, byte [eax + ebx]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
jne 0x4e579f
lea edi, [eax + 1]
jmp 0x4e577f
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x4e579a
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4e5d4f
mov edx, esi
lea esi, [eax + 1]
cmp ebp, esi
jne 0x4e57c0
mov edi, esi
mov esi, edx
jmp 0x4e577f
jbe 0x4e60f9
movzx ebx, byte [eax + ebx + 1]
cmp bl, 0x5c
jne 0x4e57d9
mov ebx, dword [esp + 0x90]
jmp 0x4e57ba
cmp bl, 0x2f
jne 0x4e57e7
mov ebx, dword [esp + 0x90]
jmp 0x4e57ba
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4e5d41
lea ebx, [eax + 1]
cmp ebp, ebx
jbe 0x4e60f0
mov ebx, dword [esp + 0x90]
lea esi, [eax + ebx + 1]
cmp byte [esi], 0x2e
jne 0x4e5d3a
lea esi, [eax + 2]
cmp ebp, esi
jne 0x4e5af3
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jle 0x4e5889
dec edi
mov dword [esp + 0x7c], edi
jmp 0x4e5839
lea edi, [eax - 1]
mov dword [esp + 0x7c], edi
mov ebx, dword [esp + 0x90]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jle 0x4e5863
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
test edi, edi
je 0x4e5873
cmp eax, ebx
jae 0x4e60e0
movzx ebx, byte [edi + eax]
cmp bl, 0x5c
je 0x4e5863
cmp bl, 0x2f
jne 0x4e582b
mov ebx, dword [esp + 0x90]
mov edi, esi
mov esi, edx
jmp 0x4e577f
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp eax, ebx
jae 0x4e60d9
movzx ebx, byte [edi + eax]
jmp 0x4e5859
test dl, dl
jne 0x4e5863
mov dword [esp + 0x3c], esi
test edi, edi
jle 0x4e5aec
mov eax, ebx
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4e5a51
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x4e60c9
mov byte [ebx + edi], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4e59b3
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jae 0x4e60b2
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4e5918
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x4e609b
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ecx, dword [esp + 0x7c]
jmp 0x4e5863
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ecx, ebx
jle 0x4e593c
jbe 0x4e60ab
add edi, ebx
cmp byte [edi], 0x2e
jne 0x4e593c
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4e590f
mov dword [esp + 0x38], ecx
lea eax, [0x787b20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.004430a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4e60a2
cmp ecx, ebp
jle 0x4e59af
cmp eax, edx
je 0x4e5996
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045ccd0
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4e58f3
mov ebp, ecx
jmp 0x4e5982
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ebx, ecx
jge 0x4e59da
jae 0x4e60c2
add edi, ebx
cmp byte [edi], 0x2e
jne 0x4e59da
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4e58eb
mov dword [esp + 0x38], ecx
lea eax, [0x787b20]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.004430a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4e60b9
cmp ebp, ecx
jge 0x4e5a4d
cmp eax, edx
je 0x4e5a34
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045ccd0
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4e58cf
mov ebp, ecx
jmp 0x4e5a20
mov ebx, dword [esp + 0x6c]
mov ecx, ebp
mov ebp, dword [esp + 0x68]
cmp edi, ebx
jge 0x4e5a75
add ebp, edi
cmp byte [ebp], 0x5c
jne 0x4e5a75
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
mov ebp, ecx
jmp 0x4e58c3
mov dword [esp + 0x38], ebx
lea eax, [0x787b20]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004430a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4e60d0
cmp ecx, ebp
jle 0x4e5ae8
cmp eax, edx
je 0x4e5acf
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045ccd0
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4e58a7
mov ebp, ecx
jmp 0x4e5abb
mov eax, ebx
jmp 0x4e58c3
jbe 0x4e60e7
movzx edi, byte [eax + ebx + 2]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
je 0x4e581c
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x4e581c
test dl, dl
mov dword [esp + 0x30], ecx
je 0x4e5d23
cmp dword [esp + 0x7c], 1
je 0x4e5d21
mov esi, dword [esp + 0x70]
test esi, esi
je 0x4e5c79
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x7c]
cmp ebx, esi
jae 0x4e6080
mov byte [edi + ebx], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x90]
jmp 0x4e5b6c
inc eax
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x90]
mov ebx, edi
mov ebp, esi
cmp ebp, eax
jle 0x4e5c70
jbe 0x4e6079
movzx esi, byte [eax + ebx]
xchg esi, eax
cmp al, 0x5c
xchg esi, eax
je 0x4e5c70
xchg esi, eax
cmp al, 0x2f
xchg esi, eax
je 0x4e5c70
mov edi, dword [esp + 0x70]
test edi, edi
je 0x4e5bbb
mov edi, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x7c]
cmp edi, ebp
jbe 0x4e605e
xchg esi, eax
mov byte [ebx + ebp], al
xchg esi, eax
inc dword [esp + 0x7c]
jmp 0x4e5b5c
mov dword [esp + 0x2c], eax
xchg esi, eax
mov byte [esp + 0x27], al
xchg esi, eax
mov edi, dword [esp + 0x7c]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
cmp edi, ebx
jge 0x4e5bf0
jae 0x4e6070
add ebp, edi
xchg esi, eax
cmp byte [ebp], al
xchg esi, eax
jne 0x4e5bf0
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x4e5b5c
mov dword [esp + 0x38], ebx
lea eax, [0x787b20]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004430a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebx, ebp
jb 0x4e6067
cmp ecx, ebp
jle 0x4e5c6c
cmp edx, eax
je 0x4e5c4a
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045ccd0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
movzx edx, byte [esp + 0x26]
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x40]
movzx esi, byte [esp + 0x27]
jmp 0x4e5b9c
mov ebp, ecx
jmp 0x4e5c36
mov esi, edx
mov edi, eax
jmp 0x4e577f
mov dword [esp + 0x34], eax
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
cmp esi, edi
jge 0x4e5ca6
jae 0x4e6092
add ebx, esi
cmp byte [ebx], 0x5c
jne 0x4e5ca6
lea ebx, [esi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x4e5b53
mov dword [esp + 0x38], edi
lea eax, [0x787b20]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.004430a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4e6089
cmp ebp, ecx
jge 0x4e5d1d
cmp eax, edx
je 0x4e5d00
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045ccd0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
movzx edx, byte [esp + 0x26]
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x40]
jmp 0x4e5b37
mov ebp, ecx
jmp 0x4e5cec
test dl, dl
jne 0x4e5b53
mov esi, dword [esp + 0x7c]
test esi, esi
jne 0x4e5b2b
jmp 0x4e5b53
test dl, dl
jmp 0x4e5b16
test dl, dl
mov ebx, dword [esp + 0x90]
jmp 0x4e5b16
mov edx, esi
jmp 0x4e57ec
mov ebx, dword [esp + 0x7c]
test ebx, ebx
jne 0x4e5d86
mov ebp, dword [esp + 0x70]
test ebp, ebp
je 0x4e5e77
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp ecx, eax
jbe 0x4e6050
mov byte [ebx + eax], 0x2e
inc dword [esp + 0x7c]
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x78]
test eax, eax
je 0x4e5e55
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
cmp ebx, ecx
jb 0x4e6044
mov ebx, dword [esp + 0x7c]
cmp edx, ebx
jb 0x4e603d
mov dword [esp + 0x64], ebp
mov dword [esp + 0x40], ecx
lea ecx, [esp + 0x44]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.00446730
mov dword [esp], 0
mov eax, dword [esp + 0x64]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 8], eax
call fcn.004465b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
nop
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x7e03d2]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x7e03ed]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004e3960
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
add esp, 0x8c
ret
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
add ecx, dword [esp + 0x7c]
cmp edx, ecx
jae 0x4e5dff
jmp 0x4e604b
mov eax, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
cmp eax, ebx
jle 0x4e5e97
add ebp, ebx
cmp byte [ebp], 0x2e
jne 0x4e5e97
lea eax, [ebx + 1]
mov dword [esp + 0x7c], eax
jmp 0x4e5d86
mov dword [esp + 0x40], eax
lea ecx, [0x787b20]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.004430a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebx, ebp
jb 0x4e6055
cmp ecx, ebp
jle 0x4e5efa
cmp edx, eax
je 0x4e5d6a
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045ccd0
jmp 0x4e5d6a
mov ebp, ecx
jmp 0x4e5edd
mov edi, dword [esp + 0x68]
test ebp, ebp
jle 0x4e5f18
cmp byte [edi], 0x5c
jne 0x4e5f18
mov dword [esp + 0x7c], 1
jmp 0x4e5776
lea eax, [0x787b20]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.004430a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4e610e
cmp ecx, ebp
jle 0x4e5f83
cmp eax, edx
je 0x4e5f6e
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045ccd0
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x40]
movzx esi, byte [esp + 0x26]
jmp 0x4e575a
mov ebp, ecx
jmp 0x4e5f5a
xor eax, eax
jmp 0x4e577b
cmp cl, 0x2f
sete cl
jmp 0x4e5700
cmp eax, 1
jle 0x4e5fa4
cmp byte [esi + 1], 0x3a
jne 0x4e5fe7
mov dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 8], edx
lea eax, [0x7e03d1]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
call fcn.004465b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
add esp, 0x8c
ret
nop
mov dword [esp], esi
mov dword [esp + 4], edx
lea eax, [0x7e03d2]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x7e03ed]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004e3960
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
add esp, 0x8c
ret
mov ecx, ebx
call fcn.0045c3f0
mov edx, ebx
call fcn.0045c3d0
call fcn.0045c3d0
call fcn.0045c3b0
mov ecx, ebp
mov edx, ebx
call fcn.0045c3d0
mov eax, ebp
mov ecx, edi
call fcn.0045c3b0
mov ecx, ebp
mov edx, ebx
call fcn.0045c3d0
mov eax, edi
mov ecx, ebx
call fcn.0045c3b0
mov ecx, ebp
call fcn.0045c3b0
mov eax, ebx
mov ecx, esi
call fcn.0045c3b0
mov ecx, ebp
mov edx, ebx
call fcn.0045c3d0
mov eax, esi
mov ecx, edi
call fcn.0045c3b0
mov eax, edi
call fcn.0045c3b0
mov ecx, ebp
mov edx, ebx
call fcn.0045c3d0
mov eax, ebx
call fcn.0045c3b0
mov eax, edi
call fcn.0045c3b0
mov ecx, ebp
mov edx, ebx
call fcn.0045c3d0
mov eax, ebx
call fcn.0045c3b0
mov eax, edi
call fcn.0045c3b0
mov ecx, ebp
mov edx, ebx
call fcn.0045c3d0
mov ecx, ebx
call fcn.0045c3b0
mov ecx, ebx
call fcn.0045c3b0
mov eax, esi
mov ecx, ebp
call fcn.0045c3b0
mov eax, ebx
mov ecx, ebp
call fcn.0045c3b0
mov eax, esi
mov ecx, ebp
call fcn.0045c3b0
mov ecx, ebp
call fcn.0045c3b0
call fcn.0045c3b0
mov ecx, ebp
mov edx, ebx
call fcn.0045c3d0
call fcn.0045c410
nop
call fcn.0045ade0
jmp fcn.004e5680