Function at 0x4e5050
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 0x4e5aed
sub esp, 0x8c
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov ecx, dword [esp + 0x94]
mov dword [esp + 4], ecx
call fcn.004e5e00
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x94]
cmp eax, ecx
ja 0x4e5ae7
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 0x4e5969
movzx ecx, byte [esi + ecx]
cmp cl, 0x5c
jne 0x4e595e
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.0045c677
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 0x4e5957
test ecx, ecx
je 0x4e58ce
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jae 0x4e5ad9
mov byte [edi + eax], 0x5c
inc dword [esp + 0x7c]
mov eax, 1
mov ecx, eax
jmp 0x4e5151
mov eax, edi
cmp ebp, eax
jle 0x4e5726
jbe 0x4e5ad2
movzx edi, byte [eax + ebx]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
jne 0x4e516f
lea edi, [eax + 1]
jmp 0x4e514f
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x4e516a
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4e571f
mov edx, esi
lea esi, [eax + 1]
cmp ebp, esi
jne 0x4e5190
mov edi, esi
mov esi, edx
jmp 0x4e514f
jbe 0x4e5ac9
movzx ebx, byte [eax + ebx + 1]
cmp bl, 0x5c
jne 0x4e51a9
mov ebx, dword [esp + 0x90]
jmp 0x4e518a
cmp bl, 0x2f
jne 0x4e51b7
mov ebx, dword [esp + 0x90]
jmp 0x4e518a
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4e5711
lea ebx, [eax + 1]
cmp ebp, ebx
jbe 0x4e5ac0
mov ebx, dword [esp + 0x90]
lea esi, [eax + ebx + 1]
cmp byte [esi], 0x2e
jne 0x4e570a
lea esi, [eax + 2]
cmp ebp, esi
jne 0x4e54c3
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jle 0x4e5259
dec edi
mov dword [esp + 0x7c], edi
jmp 0x4e5209
lea edi, [eax - 1]
mov dword [esp + 0x7c], edi
mov ebx, dword [esp + 0x90]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jle 0x4e5233
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
test edi, edi
je 0x4e5243
cmp eax, ebx
jae 0x4e5ab0
movzx ebx, byte [edi + eax]
cmp bl, 0x5c
je 0x4e5233
cmp bl, 0x2f
jne 0x4e51fb
mov ebx, dword [esp + 0x90]
mov edi, esi
mov esi, edx
jmp 0x4e514f
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp eax, ebx
jae 0x4e5aa9
movzx ebx, byte [edi + eax]
jmp 0x4e5229
test dl, dl
jne 0x4e5233
mov dword [esp + 0x3c], esi
test edi, edi
jle 0x4e54bc
mov eax, ebx
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4e5421
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x4e5a99
mov byte [ebx + edi], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4e5383
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jae 0x4e5a82
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4e52e8
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x4e5a6b
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ecx, dword [esp + 0x7c]
jmp 0x4e5233
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ecx, ebx
jle 0x4e530c
jbe 0x4e5a7b
add edi, ebx
cmp byte [edi], 0x2e
jne 0x4e530c
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4e52df
mov dword [esp + 0x38], ecx
lea eax, [0x78aca0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00443100
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 0x4e5a72
cmp ecx, ebp
jle 0x4e537f
cmp eax, edx
je 0x4e5366
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045cd80
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4e52c3
mov ebp, ecx
jmp 0x4e5352
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ebx, ecx
jge 0x4e53aa
jae 0x4e5a92
add edi, ebx
cmp byte [edi], 0x2e
jne 0x4e53aa
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4e52bb
mov dword [esp + 0x38], ecx
lea eax, [0x78aca0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00443100
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 0x4e5a89
cmp ebp, ecx
jge 0x4e541d
cmp eax, edx
je 0x4e5404
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045cd80
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4e529f
mov ebp, ecx
jmp 0x4e53f0
mov ebx, dword [esp + 0x6c]
mov ecx, ebp
mov ebp, dword [esp + 0x68]
cmp edi, ebx
jge 0x4e5445
add ebp, edi
cmp byte [ebp], 0x5c
jne 0x4e5445
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
mov ebp, ecx
jmp 0x4e5293
mov dword [esp + 0x38], ebx
lea eax, [0x78aca0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00443100
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 0x4e5aa0
cmp ecx, ebp
jle 0x4e54b8
cmp eax, edx
je 0x4e549f
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045cd80
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4e5277
mov ebp, ecx
jmp 0x4e548b
mov eax, ebx
jmp 0x4e5293
jbe 0x4e5ab7
movzx edi, byte [eax + ebx + 2]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
je 0x4e51ec
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x4e51ec
test dl, dl
mov dword [esp + 0x30], ecx
je 0x4e56f3
cmp dword [esp + 0x7c], 1
je 0x4e56f1
mov esi, dword [esp + 0x70]
test esi, esi
je 0x4e5649
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x7c]
cmp ebx, esi
jae 0x4e5a50
mov byte [edi + ebx], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x90]
jmp 0x4e553c
inc eax
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x90]
mov ebx, edi
mov ebp, esi
cmp ebp, eax
jle 0x4e5640
jbe 0x4e5a49
movzx esi, byte [eax + ebx]
xchg esi, eax
cmp al, 0x5c
xchg esi, eax
je 0x4e5640
xchg esi, eax
cmp al, 0x2f
xchg esi, eax
je 0x4e5640
mov edi, dword [esp + 0x70]
test edi, edi
je 0x4e558b
mov edi, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x7c]
cmp edi, ebp
jbe 0x4e5a2e
xchg esi, eax
mov byte [ebx + ebp], al
xchg esi, eax
inc dword [esp + 0x7c]
jmp 0x4e552c
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 0x4e55c0
jae 0x4e5a40
add ebp, edi
xchg esi, eax
cmp byte [ebp], al
xchg esi, eax
jne 0x4e55c0
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x4e552c
mov dword [esp + 0x38], ebx
lea eax, [0x78aca0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00443100
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 0x4e5a37
cmp ecx, ebp
jle 0x4e563c
cmp edx, eax
je 0x4e561a
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045cd80
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 0x4e556c
mov ebp, ecx
jmp 0x4e5606
mov esi, edx
mov edi, eax
jmp 0x4e514f
mov dword [esp + 0x34], eax
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
cmp esi, edi
jge 0x4e5676
jae 0x4e5a62
add ebx, esi
cmp byte [ebx], 0x5c
jne 0x4e5676
lea ebx, [esi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x4e5523
mov dword [esp + 0x38], edi
lea eax, [0x78aca0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.00443100
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 0x4e5a59
cmp ebp, ecx
jge 0x4e56ed
cmp eax, edx
je 0x4e56d0
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045cd80
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 0x4e5507
mov ebp, ecx
jmp 0x4e56bc
test dl, dl
jne 0x4e5523
mov esi, dword [esp + 0x7c]
test esi, esi
jne 0x4e54fb
jmp 0x4e5523
test dl, dl
jmp 0x4e54e6
test dl, dl
mov ebx, dword [esp + 0x90]
jmp 0x4e54e6
mov edx, esi
jmp 0x4e51bc
mov ebx, dword [esp + 0x7c]
test ebx, ebx
jne 0x4e5756
mov ebp, dword [esp + 0x70]
test ebp, ebp
je 0x4e5847
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp ecx, eax
jbe 0x4e5a20
mov byte [ebx + eax], 0x2e
inc dword [esp + 0x7c]
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x78]
test eax, eax
je 0x4e5825
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
cmp ebx, ecx
jb 0x4e5a14
mov ebx, dword [esp + 0x7c]
cmp edx, ebx
jb 0x4e5a0d
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.00446790
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.00446610
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
nop
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x7e2b92]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x7e2bad]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004e3330
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 0x4e57cf
jmp 0x4e5a1b
mov eax, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
cmp eax, ebx
jle 0x4e5867
add ebp, ebx
cmp byte [ebp], 0x2e
jne 0x4e5867
lea eax, [ebx + 1]
mov dword [esp + 0x7c], eax
jmp 0x4e5756
mov dword [esp + 0x40], eax
lea ecx, [0x78aca0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00443100
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 0x4e5a25
cmp ecx, ebp
jle 0x4e58ca
cmp edx, eax
je 0x4e573a
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045cd80
jmp 0x4e573a
mov ebp, ecx
jmp 0x4e58ad
mov edi, dword [esp + 0x68]
test ebp, ebp
jle 0x4e58e8
cmp byte [edi], 0x5c
jne 0x4e58e8
mov dword [esp + 0x7c], 1
jmp 0x4e5146
lea eax, [0x78aca0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.00443100
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 0x4e5ade
cmp ecx, ebp
jle 0x4e5953
cmp eax, edx
je 0x4e593e
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045cd80
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x40]
movzx esi, byte [esp + 0x26]
jmp 0x4e512a
mov ebp, ecx
jmp 0x4e592a
xor eax, eax
jmp 0x4e514b
cmp cl, 0x2f
sete cl
jmp 0x4e50d0
cmp eax, 1
jle 0x4e5974
cmp byte [esi + 1], 0x3a
jne 0x4e59b7
mov dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 8], edx
lea eax, [0x7e2b91]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
call fcn.00446610
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, [0x7e2b92]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x7e2bad]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004e3330
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.0045c4a0
mov edx, ebx
call fcn.0045c480
call fcn.0045c480
call fcn.0045c460
mov ecx, ebp
mov edx, ebx
call fcn.0045c480
mov eax, ebp
mov ecx, edi
call fcn.0045c460
mov ecx, ebp
mov edx, ebx
call fcn.0045c480
mov eax, edi
mov ecx, ebx
call fcn.0045c460
mov ecx, ebp
call fcn.0045c460
mov eax, ebx
mov ecx, esi
call fcn.0045c460
mov ecx, ebp
mov edx, ebx
call fcn.0045c480
mov eax, esi
mov ecx, edi
call fcn.0045c460
mov eax, edi
call fcn.0045c460
mov ecx, ebp
mov edx, ebx
call fcn.0045c480
mov eax, ebx
call fcn.0045c460
mov eax, edi
call fcn.0045c460
mov ecx, ebp
mov edx, ebx
call fcn.0045c480
mov eax, ebx
call fcn.0045c460
mov eax, edi
call fcn.0045c460
mov ecx, ebp
mov edx, ebx
call fcn.0045c480
mov ecx, ebx
call fcn.0045c460
mov ecx, ebx
call fcn.0045c460
mov eax, esi
mov ecx, ebp
call fcn.0045c460
mov eax, ebx
mov ecx, ebp
call fcn.0045c460
mov eax, esi
mov ecx, ebp
call fcn.0045c460
mov ecx, ebp
call fcn.0045c460
call fcn.0045c460
mov ecx, ebp
mov edx, ebx
call fcn.0045c480
call fcn.0045c4c0
nop
call fcn.0045ae90
jmp fcn.004e5050