Function at 0x4e68c8
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffdc
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x18], edx
mov esi, eax
xor eax, eax
push ebp
push 0x4e6c6d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x4e6c88
add eax, 2
mov dword [ebp - 8], eax
xor edi, edi
mov eax, dword [0x4f1264]
xor edx, edx
mov dword [eax], edx
mov eax, dword [esi]
call fcn.004d40f0
mov dword [ebp - 0x10], eax
mov eax, dword [esi]
call fcn.004d41f4
mov ebx, eax
cmp word [ebx], 0x3a
jne 0x4e6a1f
cmp dword [ebp - 0x10], 2
jle 0x4e6a1f
mov word [ebx], 0
sub ebx, 2
push 0
call sub.kernel32.dll_SetErrorMode
mov dword [ebp - 4], eax
mov eax, dword [esi]
mov edx, 0x8000
call fcn.004e73e0
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffffff
je 0x4e696d
mov eax, dword [ebp - 0x14]
call fcn.004d7d14
test eax, eax
jne 0x4e69f6
mov eax, dword [ebp - 0x14]
call fcn.004d7da8
test eax, eax
jne 0x4e69f6
add ebx, 2
mov word [ebx], 0x3a
mov eax, dword [0x4f1374]
cmp dword [eax], 4
jne 0x4e69be
mov eax, dword [0x4f13bc]
cmp dword [eax], 0
jne 0x4e69b1
push 0
lea edx, [ebp - 0x18]
mov eax, dword [0x4f13a8]
call fcn.0040d7c0
mov eax, dword [ebp - 0x18]
mov edx, dword [esi]
mov dword [ebp - 0x20], edx
mov byte [ebp - 0x1c], 0xa
lea ecx, [ebp - 0x20]
mov edx, 1
call fcn.004e6fc4
mov eax, dword [0x4f11e4]
mov dword [eax], 1
jmp 0x4e69e6
push 0
lea edx, [ebp - 0x24]
mov eax, dword [0x4f13a8]
call fcn.0040d7c0
mov eax, dword [ebp - 0x24]
mov edx, dword [esi]
mov dword [ebp - 0x20], edx
mov byte [ebp - 0x1c], 0xa
lea ecx, [ebp - 0x20]
mov edx, 1
call fcn.004e6fc4
cmp dword [ebp - 0x14], 0xffffffff
je 0x4e6a16
mov eax, dword [ebp - 0x14]
call fcn.004e74ac
jmp 0x4e6a16
mov eax, dword [ebp - 0x14]
call fcn.004d7d14
test eax, eax
jne 0x4e6a0e
mov eax, dword [ebp - 0x14]
call fcn.004d7da8
test eax, eax
je 0x4e6a16
mov eax, dword [ebp - 0x14]
call fcn.004e74ac
mov eax, dword [ebp - 4]
push eax
call sub.kernel32.dll_SetErrorMode
mov eax, 0x250
call fcn.004e6090
mov dword [esi + 0x14], eax
movzx eax, word [ebx]
mov word [ebp - 0xa], ax
cmp word [ebp - 0xa], 0x5c
jne 0x4e6a41
mov edi, 1
jmp 0x4e6a96
mov eax, dword [esi]
mov dx, 0x5c
call fcn.004d40a8
mov ebx, eax
test ebx, ebx
jne 0x4e6a6e
mov ebx, dword [esi]
mov eax, ebx
call fcn.004d40f0
cmp eax, 2
jl 0x4e6a71
cmp word [ebx + 2], 0x3a
jne 0x4e6a71
lea eax, [ebx + 4]
mov ebx, eax
jmp 0x4e6a71
add ebx, 2
mov edx, 0x4e6c94
mov eax, ebx
call fcn.0041ea44
test eax, eax
je 0x4e6a91
mov edx, 0x4e6c98
mov eax, ebx
call fcn.0041ea44
test eax, eax
jne 0x4e6a96
mov edi, 1
test edi, edi
jne 0x4e6b7a
mov eax, dword [0x4f1374]
cmp dword [eax], 4
jne 0x4e6b44
mov eax, dword [0x4f1330]
cmp dword [eax], 1
jne 0x4e6af9
mov eax, dword [esi]
push eax
call sub.kernel32.dll_GetFileAttributesW
mov ebx, eax
cmp ebx, 0xffffffff
je 0x4e6ad0
mov eax, dword [0x4f1264]
xor edx, edx
mov dword [eax], edx
jmp 0x4e6add
call sub.kernel32.dll_GetLastError_2
mov edx, dword [0x4f1264]
mov dword [edx], eax
cmp ebx, 0xffffffff
je 0x4e6b7a
test bl, 0x10
je 0x4e6b7a
mov edi, 1
jmp 0x4e6b7a
mov eax, dword [0x4f1394]
cmp dword [eax], 1
jne 0x4e6b7a
mov eax, dword [0x4f1394]
xor edx, edx
mov dword [eax], edx
mov eax, dword [esi]
push eax
call sub.kernel32.dll_GetFileAttributesW
mov ebx, eax
cmp ebx, 0xffffffff
je 0x4e6b26
mov eax, dword [0x4f1264]
xor edx, edx
mov dword [eax], edx
jmp 0x4e6b33
call sub.kernel32.dll_GetLastError_2
mov edx, dword [0x4f1264]
mov dword [edx], eax
cmp ebx, 0xffffffff
je 0x4e6b7a
test bl, 0x10
je 0x4e6b7a
mov edi, 1
jmp 0x4e6b7a
mov eax, dword [esi]
push eax
call sub.kernel32.dll_GetFileAttributesW
mov ebx, eax
cmp ebx, 0xffffffff
je 0x4e6b5e
mov eax, dword [0x4f1264]
xor edx, edx
mov dword [eax], edx
jmp 0x4e6b6b
call sub.kernel32.dll_GetLastError_2
mov edx, dword [0x4f1264]
mov dword [edx], eax
cmp ebx, 0xffffffff
je 0x4e6b7a
test bl, 0x10
je 0x4e6b7a
mov edi, 1
test edi, edi
je 0x4e6bc6
cmp word [ebp - 0xa], 0x5c
jne 0x4e6b90
mov eax, 0x4e6c88
add eax, 4
mov dword [ebp - 8], eax
mov eax, dword [esi]
call fcn.004e6898
test al, al
jne 0x4e6bbd
mov eax, dword [ebp - 0x10]
add eax, 5
add eax, eax
call fcn.004e6090
mov edx, dword [esi]
call fcn.004d4100
mov ebx, eax
mov dword [esi], ebx
mov eax, ebx
mov edx, dword [ebp - 8]
call fcn.004d4114
mov eax, dword [esi + 0x14]
mov dword [eax], 0x10
mov dword [ebp - 0x10], 1
xor ebx, ebx
mov eax, dword [esi]
jmp 0x4e6bed
cmp word [eax], 0x5c
je 0x4e6be5
cmp word [eax], 0x3a
jne 0x4e6be7
cmp dword [ebp - 0x10], 2
jne 0x4e6be7
mov ebx, eax
add eax, 2
inc dword [ebp - 0x10]
cmp word [eax], 0
jne 0x4e6bd3
mov dword [esi + 8], ebx
test ebx, ebx
je 0x4e6c0d
cmp word [ebx], 0
je 0x4e6c08
lea eax, [ebx + 2]
mov dword [esi + 0xc], eax
jmp 0x4e6c14
mov dword [esi + 0xc], ebx
jmp 0x4e6c14
mov eax, dword [esi]
mov dword [esi + 0xc], eax
mov ebx, eax
mov dx, 0x2a
mov eax, ebx
call fcn.004d4080
test eax, eax
jne 0x4e6c32
mov dx, 0x3f
mov eax, ebx
call fcn.004d4080
test eax, eax
je 0x4e6c41
or dword [esi + 0x18], 8
mov eax, dword [0x4f0f54]
mov dword [eax], 1
mov dx, 0x2e
mov eax, ebx
call fcn.004d4080
mov dword [esi + 0x10], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4e6c74
lea eax, [ebp - 0x24]
call fcn.00409e68
lea eax, [ebp - 0x18]
call fcn.00409e68
ret