Function at 0x4f9eb9
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5d0
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
and dword [ebp - 0x5c4], 0
push ebx
push esi
push edi
lea edx, [ebp - 0x5c4]
push edx
push 0x667884
mov dword [ebp - 0x5cc], eax
mov eax, dword [eax + 0x48]
mov ecx, dword [eax]
push 0x6700f8
push eax
call dword [ecx + 0xf4]
test eax, eax
js 0x4fa192
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x424], ax
lea eax, [ebp - 0x422]
push eax
call fcn.00402394
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
add esp, 0xc
mov esi, 0x104
push esi
lea edx, [ebp - 0x424]
push edx
push eax
call dword [ecx + 0x14]
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0x5d0]
call fcn.004243de
push 0x63e360
lea eax, [ebp - 0x5c0]
call fcn.004243de
mov ebx, dword [ebp - 0x5d0]
xor eax, eax
mov word [ebp - 0x10], ax
lea edi, [ebp - 0xe]
stosd dword es:[edi], eax
push 3
push ebx
stosw word es:[edi], ax
lea eax, [ebp - 0x10]
push 4
push eax
call fcn.004190f0
add esp, 0x10
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsRootW]
test eax, eax
jne 0x4f9f9a
push 0x11
push 0x670374
jmp 0x4fa031
push ebx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4f9fd1
push ebx
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
jne 0x4f9fb9
push 0x14
push 0x670398
jmp 0x4fa031
mov ecx, ebx
call fcn.004f7da8
test eax, eax
jne 0x4fa09c
push 0x1e
push 0x6703c4
jmp 0x4fa031
mov eax, dword [ebx - 0xc]
test eax, eax
jle 0x4fa002
lea ecx, [eax - 1]
test ecx, ecx
js 0x4fa015
cmp ecx, eax
jg 0x4fa015
cmp word [ebx + ecx*2], 0x5c
je 0x4fa002
push 1
push 0x6403a4
lea eax, [ebp - 0x5d0]
call fcn.00449618
mov ebx, dword [ebp - 0x5d0]
push ebx
call fcn.004fa375
test eax, eax
jne 0x4fa01f
push 0x1d
push 0x670404
jmp 0x4fa031
push 0x80070057
call fcn.004a4f75
mov ecx, ebx
call fcn.004f7da8
test eax, eax
jne 0x4fa09c
push 0x31
push 0x670440
lea eax, [ebp - 0x5c0]
call fcn.0040aa40
lea edi, [ebp - 0x5bc]
call fcn.005048c4
push 0x20
push 0x63814c
push dword [ebp - 0x5c0]
mov esi, edi
call fcn.005049f8
mov eax, dword [ebp - 0x5cc]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_BringWindowToTop]
call fcn.0050498b
mov eax, dword [ebp - 0x5c0]
add eax, 0xfffffff0
call fcn.0040ace0
lea eax, [ebx - 0x10]
call fcn.0040ace0
mov eax, dword [ebp - 0x5c4]
test eax, eax
je 0x4fa095
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
xor eax, eax
jmp 0x4fa1a5
mov eax, dword [ebp - 0x5cc]
mov eax, dword [eax + 0x48]
and dword [ebp - 0x5c8], 0
mov ecx, dword [eax]
lea edx, [ebp - 0x5c8]
push edx
push 0x667884
push 0x670104
push eax
call dword [ecx + 0xf4]
test eax, eax
js 0x4fa16c
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x21c], ax
lea eax, [ebp - 0x21a]
push eax
call fcn.00402394
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
add esp, 0xc
push esi
lea edx, [ebp - 0x21c]
push edx
push eax
call dword [ecx + 0x14]
lea eax, [ebp - 0x21c]
lea ecx, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x4fa109
sub eax, ecx
mov ecx, dword [ebx - 0xc]
sar eax, 1
add ecx, eax
cmp ecx, 0x103
jb 0x4fa16c
lea edi, [ebp - 0x5bc]
call fcn.005048c4
push 0x20
push 0x63814c
push 0x6704a4
mov esi, edi
call fcn.005049f8
mov eax, dword [ebp - 0x5cc]
call fcn.004fa4e6
call fcn.0050498b
mov eax, dword [ebp - 0x5c8]
test eax, eax
je 0x4fa06f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x4fa06f
mov eax, dword [ebp - 0x5c8]
test eax, eax
je 0x4fa17c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
add eax, 0xfffffff0
call fcn.0040ace0
lea eax, [ebx - 0x10]
call fcn.0040ace0
mov eax, dword [ebp - 0x5c4]
test eax, eax
je 0x4fa1a2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
xor eax, eax
inc eax
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00403fc1
leave
ret 4