Function at 0x4d9220
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 0x4d9cb9
sub esp, 0x8c
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov ecx, dword [esp + 0x94]
mov dword [esp + 4], ecx
call fcn.004d9ea0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x94]
cmp eax, ecx
ja 0x4d9cb3
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, [ecx + esi]
test ebp, ebp
je 0x4d9b35
movzx ecx, byte [ecx + esi]
cmp cl, 0x5c
jne 0x4d9b2a
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.0045f717
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 0x4d9b23
test ecx, ecx
je 0x4d9a9a
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jae 0x4d9ca5
mov byte [edi + eax], 0x5c
inc dword [esp + 0x7c]
mov eax, 1
mov ecx, eax
jmp 0x4d9321
mov eax, edi
cmp ebp, eax
jle 0x4d98f2
jbe 0x4d9c9e
movzx edi, byte [ebx + eax]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
jne 0x4d933f
lea edi, [eax + 1]
jmp 0x4d931f
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x4d933a
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4d98eb
mov edx, esi
lea esi, [eax + 1]
cmp ebp, esi
jne 0x4d9360
mov edi, esi
mov esi, edx
jmp 0x4d931f
jbe 0x4d9c95
movzx ebx, byte [eax + ebx + 1]
cmp bl, 0x5c
jne 0x4d9379
mov ebx, dword [esp + 0x90]
jmp 0x4d935a
cmp bl, 0x2f
jne 0x4d9387
mov ebx, dword [esp + 0x90]
jmp 0x4d935a
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4d98dd
lea ebx, [eax + 1]
cmp ebp, ebx
jbe 0x4d9c8c
mov ebx, dword [esp + 0x90]
lea esi, [eax + ebx + 1]
cmp byte [esi], 0x2e
jne 0x4d98d6
lea esi, [eax + 2]
cmp ebp, esi
jne 0x4d9693
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jle 0x4d9429
dec edi
mov dword [esp + 0x7c], edi
jmp 0x4d93d9
lea edi, [eax - 1]
mov dword [esp + 0x7c], edi
mov ebx, dword [esp + 0x90]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jle 0x4d9403
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
test edi, edi
je 0x4d9413
cmp eax, ebx
jae 0x4d9c7c
movzx ebx, byte [edi + eax]
cmp bl, 0x5c
je 0x4d9403
cmp bl, 0x2f
jne 0x4d93cb
mov ebx, dword [esp + 0x90]
mov edi, esi
mov esi, edx
jmp 0x4d931f
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp eax, ebx
jae 0x4d9c75
movzx ebx, byte [edi + eax]
jmp 0x4d93f9
test dl, dl
jne 0x4d9403
mov dword [esp + 0x3c], esi
test edi, edi
jle 0x4d968c
mov eax, ebx
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4d95f1
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jae 0x4d9c65
mov byte [ebx + edi], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4d9553
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jae 0x4d9c4e
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4d94b8
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x4d9c37
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ecx, dword [esp + 0x7c]
jmp 0x4d9403
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ebx, ecx
jge 0x4d94dc
jae 0x4d9c47
add edi, ebx
cmp byte [edi], 0x2e
jne 0x4d94dc
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4d94af
mov dword [esp + 0x38], ecx
lea eax, [0x718d60]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00445e20
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 0x4d9c3e
cmp ecx, ebp
jle 0x4d954f
cmp edx, eax
je 0x4d9536
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045fe20
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4d9493
mov ebp, ecx
jmp 0x4d9522
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ecx, ebx
jle 0x4d957a
jbe 0x4d9c5e
add edi, ebx
cmp byte [edi], 0x2e
jne 0x4d957a
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4d948b
mov dword [esp + 0x38], ecx
lea eax, [0x718d60]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00445e20
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 0x4d9c55
cmp ecx, ebp
jle 0x4d95ed
cmp edx, eax
je 0x4d95d4
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045fe20
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4d946f
mov ebp, ecx
jmp 0x4d95c0
mov ebx, dword [esp + 0x6c]
mov ecx, ebp
mov ebp, dword [esp + 0x68]
cmp edi, ebx
jge 0x4d9615
add ebp, edi
cmp byte [ebp], 0x5c
jne 0x4d9615
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
mov ebp, ecx
jmp 0x4d9463
mov dword [esp + 0x38], ebx
lea eax, [0x718d60]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00445e20
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 0x4d9c6c
cmp ebp, ecx
jge 0x4d9688
cmp eax, edx
je 0x4d966f
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045fe20
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4d9447
mov ebp, ecx
jmp 0x4d965b
mov eax, ebx
jmp 0x4d9463
jbe 0x4d9c83
movzx edi, byte [eax + ebx + 2]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
je 0x4d93bc
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x4d93bc
test dl, dl
mov dword [esp + 0x30], ecx
je 0x4d98bf
cmp dword [esp + 0x7c], 1
je 0x4d98bd
mov esi, dword [esp + 0x70]
test esi, esi
je 0x4d9815
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x7c]
cmp esi, ebx
jbe 0x4d9c1c
mov byte [edi + ebx], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x90]
jmp 0x4d9708
inc eax
mov ebp, dword [esp + 0x40]
mov ebx, dword [esp + 0x90]
cmp ebp, eax
jle 0x4d980c
jbe 0x4d9c15
movzx esi, byte [eax + ebx]
xchg esi, eax
cmp al, 0x5c
xchg esi, eax
je 0x4d980c
xchg esi, eax
cmp al, 0x2f
xchg esi, eax
je 0x4d980c
mov edi, dword [esp + 0x70]
test edi, edi
je 0x4d9757
mov edi, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x7c]
cmp ebp, edi
jae 0x4d9bfa
xchg esi, eax
mov byte [ebx + ebp], al
xchg esi, eax
inc dword [esp + 0x7c]
jmp 0x4d96fc
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 0x4d978c
jae 0x4d9c0c
add ebp, edi
xchg esi, eax
cmp byte [ebp], al
xchg esi, eax
jne 0x4d978c
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x4d96fc
mov dword [esp + 0x38], ebx
lea eax, [0x718d60]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00445e20
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 0x4d9c03
cmp ebp, ecx
jge 0x4d9808
cmp eax, edx
je 0x4d97e6
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045fe20
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 0x4d9738
mov ebp, ecx
jmp 0x4d97d2
mov esi, edx
mov edi, eax
jmp 0x4d931f
mov dword [esp + 0x34], eax
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
cmp edi, esi
jle 0x4d9842
jbe 0x4d9c2e
add ebx, esi
cmp byte [ebx], 0x5c
jne 0x4d9842
lea ebx, [esi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x4d96f3
mov dword [esp + 0x38], edi
lea eax, [0x718d60]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.00445e20
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 0x4d9c25
cmp ecx, ebp
jle 0x4d98b9
cmp edx, eax
je 0x4d989c
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045fe20
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 0x4d96d7
mov ebp, ecx
jmp 0x4d9888
test dl, dl
jne 0x4d96f3
mov esi, dword [esp + 0x7c]
test esi, esi
jne 0x4d96cb
jmp 0x4d96f3
test dl, dl
jmp 0x4d96b6
test dl, dl
mov ebx, dword [esp + 0x90]
jmp 0x4d96b6
mov edx, esi
jmp 0x4d938c
mov ebx, dword [esp + 0x7c]
test ebx, ebx
jne 0x4d9922
mov ebp, dword [esp + 0x70]
test ebp, ebp
je 0x4d9a13
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp ecx, eax
jbe 0x4d9bec
mov byte [ebx + eax], 0x2e
inc dword [esp + 0x7c]
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x78]
test eax, eax
je 0x4d99f1
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
cmp ebx, ecx
jb 0x4d9be0
mov ebx, dword [esp + 0x7c]
cmp edx, ebx
jb 0x4d9bd9
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.004493b0
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.00449230
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
nop
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x76749c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x7674af]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004d8300
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 0x4d999b
jmp 0x4d9be7
mov eax, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
cmp eax, ebx
jle 0x4d9a33
add ebp, ebx
cmp byte [ebp], 0x2e
jne 0x4d9a33
lea eax, [ebx + 1]
mov dword [esp + 0x7c], eax
jmp 0x4d9922
mov dword [esp + 0x40], eax
lea ecx, [0x718d60]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00445e20
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 0x4d9bf1
cmp ecx, ebp
jle 0x4d9a96
cmp edx, eax
je 0x4d9906
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045fe20
jmp 0x4d9906
mov ebp, ecx
jmp 0x4d9a79
mov edi, dword [esp + 0x68]
test ebp, ebp
jle 0x4d9ab4
cmp byte [edi], 0x5c
jne 0x4d9ab4
mov dword [esp + 0x7c], 1
jmp 0x4d9316
lea eax, [0x718d60]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.00445e20
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 0x4d9caa
cmp ecx, ebp
jle 0x4d9b1f
cmp eax, edx
je 0x4d9b0a
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045fe20
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x40]
movzx esi, byte [esp + 0x26]
jmp 0x4d92fa
mov ebp, ecx
jmp 0x4d9af6
xor eax, eax
jmp 0x4d931b
cmp cl, 0x2f
sete cl
jmp 0x4d92a0
cmp eax, 1
jle 0x4d9b40
cmp byte [esi + 1], 0x3a
jne 0x4d9b83
mov dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 8], edx
lea eax, [0x76749b]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
call fcn.00449230
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, [0x76749c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x7674af]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004d8300
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.0045f530
mov edx, ebx
call fcn.0045f510
call fcn.0045f510
call fcn.0045f4f0
mov ecx, ebp
mov edx, ebx
call fcn.0045f510
mov eax, ebp
mov ecx, edi
call fcn.0045f4f0
mov ecx, ebp
mov edx, ebx
call fcn.0045f510
mov eax, edi
mov ecx, ebx
call fcn.0045f4f0
mov ecx, ebp
call fcn.0045f4f0
mov eax, ebx
mov ecx, esi
call fcn.0045f4f0
mov ecx, ebp
mov edx, ebx
call fcn.0045f510
mov eax, esi
mov ecx, edi
call fcn.0045f4f0
mov eax, edi
call fcn.0045f4f0
mov ecx, ebp
mov edx, ebx
call fcn.0045f510
mov eax, ebx
call fcn.0045f4f0
mov eax, edi
call fcn.0045f4f0
mov ecx, ebp
mov edx, ebx
call fcn.0045f510
mov eax, ebx
call fcn.0045f4f0
mov eax, edi
call fcn.0045f4f0
mov ecx, ebp
mov edx, ebx
call fcn.0045f510
mov ecx, ebx
call fcn.0045f4f0
mov ecx, ebx
call fcn.0045f4f0
mov eax, esi
mov ecx, ebp
call fcn.0045f4f0
mov eax, ebx
mov ecx, ebp
call fcn.0045f4f0
mov eax, esi
mov ecx, ebp
call fcn.0045f4f0
mov ecx, ebp
call fcn.0045f4f0
call fcn.0045f4f0
mov ecx, ebp
mov edx, ebx
call fcn.0045f510
call fcn.0045f550
nop
call fcn.0045df10
jmp fcn.004d9220