Function at 0x490270
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 0x490ca5
sub esp, 0x8c
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov ecx, dword [esp + 0x94]
mov dword [esp + 4], ecx
call fcn.00490dc0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x94]
cmp ecx, eax
jb 0x490c9f
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 0x4903f8
movzx ecx, byte [esi + ecx]
cmp cl, 0x5c
jne 0x4902ee
mov ecx, 1
jmp 0x4902f4
cmp cl, 0x2f
sete cl
mov dword [esp + 0x28], eax
mov dword [esp + 0x40], ebp
mov dword [esp + 0x64], ebx
mov byte [esp + 0x26], cl
lea edi, [esp + 0x68]
xor eax, eax
call fcn.0045c177
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 0x4903ef
test ecx, ecx
jne 0x4903cc
mov edi, dword [esp + 0x68]
test ebp, ebp
jle 0x490365
cmp byte [edi], 0x5c
jne 0x490365
mov dword [esp + 0x7c], 1
jmp 0x4903e8
lea eax, [0x4ce8c0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.00445bf0
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 0x490c96
cmp ebp, ecx
jl 0x4903a9
mov ebp, ecx
cmp edx, eax
je 0x4903c1
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045c880
mov ecx, dword [esp + 0x40]
mov ebx, dword [esp + 0x64]
mov ebp, ecx
movzx esi, byte [esp + 0x26]
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp ecx, eax
jbe 0x490c91
mov byte [edi + eax], 0x5c
inc dword [esp + 0x7c]
mov eax, 1
jmp 0x4903f1
xor eax, eax
mov ecx, eax
jmp 0x49049e
cmp eax, 1
jle 0x490459
cmp byte [esi + 1], 0x3a
je 0x490459
nop
mov dword [esp], esi
mov dword [esp + 4], edx
lea eax, [0x4e02cb]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x50602d]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.0048f670
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 dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 8], edx
lea eax, [0x4e02ca]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
call fcn.00448f60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
add esp, 0x8c
ret
mov eax, edi
cmp eax, ebp
jge 0x4908c4
jae 0x490c8a
movzx edi, byte [eax + ebx]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
je 0x4904be
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
jne 0x4904c3
lea edi, [eax + 1]
jmp 0x49049c
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4907c5
mov edx, esi
lea esi, [eax + 1]
cmp ebp, esi
je 0x4904f6
jbe 0x490c81
movzx ebx, byte [eax + ebx + 1]
cmp bl, 0x5c
jne 0x4904ed
mov ebx, dword [esp + 0x64]
jmp 0x4904f6
cmp bl, 0x2f
jne 0x4904fc
mov ebx, dword [esp + 0x64]
mov edi, esi
mov esi, edx
jmp 0x49049c
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4907bd
cmp ebp, esi
jbe 0x490c78
mov ebx, dword [esp + 0x64]
lea esi, [eax + ebx + 1]
cmp byte [esi], 0x2e
jne 0x4907b9
lea esi, [eax + 2]
cmp ebp, esi
je 0x490544
jbe 0x490c6f
movzx edi, byte [eax + ebx + 2]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
je 0x490544
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
jne 0x4907b5
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jge 0x490556
dec edi
mov dword [esp + 0x7c], edi
jmp 0x490c14
test dl, dl
je 0x490565
mov eax, ebx
mov ebx, ecx
mov ecx, ebp
jmp 0x490bb4
mov dword [esp + 0x3c], esi
test edi, edi
jle 0x49062e
mov eax, ebx
mov ebx, dword [esp + 0x70]
test ebx, ebx
jne 0x49060e
mov ebx, dword [esp + 0x6c]
mov ecx, ebp
mov ebp, dword [esp + 0x68]
cmp ebx, edi
jle 0x4905a1
add ebp, edi
cmp byte [ebp], 0x5c
jne 0x4905a1
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x490632
mov dword [esp + 0x38], ebx
lea eax, [0x4ce8c0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00445bf0
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 0x490c00
cmp ebp, ecx
jl 0x4905e9
mov ebp, ecx
cmp edx, eax
je 0x4905fd
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045c880
mov eax, dword [esp + 0x64]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x490bf9
mov byte [ebx + edi], 0x5c
inc dword [esp + 0x7c]
mov ecx, ebp
jmp 0x490632
mov eax, ebx
mov ecx, ebp
mov ebx, dword [esp + 0x70]
test ebx, ebx
jne 0x4906d2
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ebx, ebp
jge 0x490665
jae 0x490bf0
add edi, ebx
cmp byte [edi], 0x2e
jne 0x490665
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4906ef
mov dword [esp + 0x38], ebp
lea eax, [0x4ce8c0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.00445bf0
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 0x490be7
cmp ebp, ecx
jl 0x4906ad
mov ebp, ecx
cmp edx, eax
je 0x4906c1
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045c880
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x40]
movzx edx, byte [esp + 0x26]
mov esi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ebx, edi
jbe 0x490bde
mov byte [ebp + edi], 0x2e
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
jne 0x49078f
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ebp, ebx
jle 0x490722
jbe 0x490bd5
add edi, ebx
cmp byte [edi], 0x2e
jne 0x490722
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4907ac
mov dword [esp + 0x38], ebp
lea eax, [0x4ce8c0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.00445bf0
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 0x490bcc
cmp ebp, ecx
jl 0x49076a
mov ebp, ecx
cmp edx, eax
je 0x49077e
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045c880
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x40]
movzx edx, byte [esp + 0x26]
mov esi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp edi, ebx
jae 0x490bc3
mov byte [ebp + edi], 0x2e
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x7c]
jmp 0x490bb4
test dl, dl
jmp 0x4907cb
test dl, dl
jmp 0x4907cb
test dl, dl
mov ebx, dword [esp + 0x64]
jmp 0x4907cb
xchg esi, eax
test al, al
xchg esi, eax
mov edx, esi
mov dword [esp + 0x30], ecx
je 0x4907e0
cmp dword [esp + 0x7c], 1
jne 0x4907ec
test dl, dl
jne 0x490a81
mov esi, dword [esp + 0x7c]
test esi, esi
je 0x490a81
mov esi, dword [esp + 0x70]
test esi, esi
jne 0x490896
mov dword [esp + 0x2c], eax
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
cmp esi, edi
jge 0x490825
jae 0x490bab
add ebx, esi
cmp byte [ebx], 0x5c
jne 0x490825
lea ebx, [esi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x4908b2
mov dword [esp + 0x38], edi
lea eax, [0x4ce8c0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.00445bf0
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 0x490ba2
cmp ebp, ecx
jl 0x49086d
mov ebp, ecx
cmp edx, eax
je 0x490881
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045c880
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
movzx edx, byte [esp + 0x26]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x7c]
cmp ebx, esi
jae 0x490b99
mov byte [edi + ebx], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x64]
jmp 0x490a81
mov esi, edx
mov edi, eax
jmp 0x49049c
mov ebx, dword [esp + 0x7c]
test ebx, ebx
jne 0x49096d
mov ebp, dword [esp + 0x70]
test ebp, ebp
jne 0x490951
mov eax, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
cmp eax, ebx
jle 0x4908f5
add ebp, ebx
cmp byte [ebp], 0x2e
jne 0x4908f5
lea eax, [ebx + 1]
mov dword [esp + 0x7c], eax
jmp 0x49096d
mov dword [esp + 0x40], eax
lea ecx, [0x4ce8c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00445bf0
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 0x490a6f
cmp ebp, ecx
jl 0x49093d
mov ebp, ecx
cmp edx, eax
je 0x490951
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045c880
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jae 0x490a6a
mov byte [ebx + eax], 0x2e
inc dword [esp + 0x7c]
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x78]
test eax, eax
je 0x4909e4
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
cmp ecx, ebx
ja 0x490a63
mov ebx, dword [esp + 0x7c]
cmp ebx, edx
ja 0x490a5c
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.00449210
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.00448f60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
jmp 0x490a01
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
add ecx, dword [esp + 0x7c]
cmp edx, ecx
jb 0x490a57
nop
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x4e02cb]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x50602d]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.0048f670
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
add esp, 0x8c
ret
call fcn.0045c040
mov ecx, ebx
call fcn.0045c060
mov edx, ebx
call fcn.0045c040
call fcn.0045c020
mov ecx, ebp
mov edx, ebx
call fcn.0045c040
inc eax
mov ebp, dword [esp + 0x40]
mov ebx, dword [esp + 0x64]
cmp eax, ebp
jge 0x4908bb
jae 0x490b92
movzx esi, byte [eax + ebx]
xchg esi, eax
cmp al, 0x5c
xchg esi, eax
je 0x4908bb
xchg esi, eax
cmp al, 0x2f
xchg esi, eax
je 0x4908bb
mov edi, dword [esp + 0x70]
test edi, edi
jne 0x490b59
mov dword [esp + 0x34], 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 ebx, edi
jle 0x490ae7
jbe 0x490b89
add ebp, edi
xchg esi, eax
cmp byte [ebp], al
xchg esi, eax
jne 0x490ae7
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x490a78
mov dword [esp + 0x38], ebx
lea eax, [0x4ce8c0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00445bf0
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 0x490b80
cmp ebp, ecx
jl 0x490b2b
mov ebp, ecx
cmp edx, eax
je 0x490b3f
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045c880
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
movzx edx, byte [esp + 0x26]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x40]
movzx esi, byte [esp + 0x27]
mov edi, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x7c]
cmp edi, ebp
jbe 0x490b77
xchg esi, eax
mov byte [ebx + ebp], al
xchg esi, eax
inc dword [esp + 0x7c]
jmp 0x490a78
mov eax, ebp
mov ecx, edi
call fcn.0045c020
mov ecx, ebp
mov edx, ebx
call fcn.0045c040
mov eax, edi
mov ecx, ebx
call fcn.0045c020
mov ecx, ebp
call fcn.0045c020
mov eax, ebx
mov ecx, esi
call fcn.0045c020
mov ecx, ebp
mov edx, ebx
call fcn.0045c040
mov eax, esi
mov ecx, edi
call fcn.0045c020
mov ebp, ecx
mov edi, esi
mov ecx, ebx
mov ebx, eax
mov esi, edx
jmp 0x49049c
mov eax, edi
mov ecx, ebx
call fcn.0045c020
mov ecx, ebp
mov edx, ebx
call fcn.0045c040
mov eax, ebx
mov ecx, ebp
call fcn.0045c020
mov eax, edi
mov ecx, ebx
call fcn.0045c020
mov ecx, ebp
mov edx, ebx
call fcn.0045c040
mov eax, ebx
mov ecx, ebp
call fcn.0045c020
mov eax, edi
call fcn.0045c020
mov ecx, ebp
mov edx, ebx
call fcn.0045c040
lea edi, [eax - 1]
mov dword [esp + 0x7c], edi
mov ebx, dword [esp + 0x64]
mov eax, dword [esp + 0x7c]
cmp ecx, eax
jge 0x490c56
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
test edi, edi
je 0x490c32
cmp ebx, eax
jbe 0x490c68
movzx ebx, byte [edi + eax]
jmp 0x490c42
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ebx, eax
jbe 0x490c61
movzx ebx, byte [edi + eax]
cmp bl, 0x5c
je 0x490c52
cmp bl, 0x2f
jne 0x490c09
mov ebx, dword [esp + 0x64]
jmp 0x490c56
mov ebx, dword [esp + 0x64]
mov eax, ebx
mov ebx, ecx
mov ecx, ebp
jmp 0x490bb4
mov ecx, ebx
call fcn.0045c020
mov ecx, ebx
call fcn.0045c020
mov eax, esi
mov ecx, ebp
call fcn.0045c020
mov eax, esi
mov ecx, ebp
call fcn.0045c020
mov eax, esi
mov ecx, ebp
call fcn.0045c020
mov ecx, ebp
call fcn.0045c020
call fcn.0045c020
mov ecx, ebp
mov edx, ebx
call fcn.0045c040
call fcn.0045c080
nop
call fcn.0045ab60
jmp fcn.00490270