Function at 0x4014b0
Capabilities:
Check if file exists
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2028
call fcn.0042d250
mov eax, dword [0x438374]
xor eax, ebp
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x2028], ecx
push 1
push 0x42f6c0
push SysReAllocString
lea ecx, [ebp - 0x10]
call fcn.0041ed70
mov eax, dword [ebp - 0x2028]
add eax, 0x38
push eax
push 0x42f6e0
lea ecx, [ebp - 0x10]
call fcn.0041ee20
mov ecx, dword [ebp - 0x2028]
add ecx, 4
push ecx
push 0x42f6f4
lea ecx, [ebp - 0x10]
call fcn.0041ee20
mov edx, dword [ebp - 0x2028]
add edx, 0x18
push edx
push 0x42f70c
lea ecx, [ebp - 0x10]
call fcn.0041ee20
mov eax, dword [ebp - 0x2028]
add eax, 0x1c
push eax
push 0x42f724
lea ecx, [ebp - 0x10]
call fcn.0041ee20
mov ecx, dword [ebp - 0x2028]
add ecx, 0x20
push ecx
push 0x42f740
lea ecx, [ebp - 0x10]
call fcn.0041ee20
mov edx, dword [ebp - 0x2028]
add edx, 0x28
push edx
push 0x42f75c
lea ecx, [ebp - 0x10]
call fcn.0041ee20
mov eax, dword [ebp - 0x2028]
add eax, 0x24
push eax
push 0x42f778
lea ecx, [ebp - 0x10]
call fcn.0041ee90
mov ecx, dword [ebp - 0x2028]
add ecx, 0x2c
push ecx
push 0x42f78c
lea ecx, [ebp - 0x10]
call fcn.0041ee90
mov edx, dword [ebp - 0x2028]
add edx, 0x30
push edx
push 0x42f7a0
lea ecx, [ebp - 0x10]
call fcn.0041ee90
mov eax, dword [ebp - 0x2028]
add eax, 0x34
push eax
push 0x42f7b0
lea ecx, [ebp - 0x10]
call fcn.0041ee90
mov ecx, dword [ebp - 0x2028]
add ecx, 0x24
call fcn.00401940
cmp eax, 2
jl 0x4015f7
mov ecx, dword [ebp - 0x2028]
add ecx, 0x24
call fcn.0040f230
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4016a0
push 0x1000
push 0
lea ecx, [ebp - 0x1018]
push ecx
call sub.MSVCR90.dll_memset
add esp, 0xc
push 0
push 0x27
lea edx, [ebp - 0x1018]
push edx
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
mov dword [ebp - 0x101c], eax
cmp dword [ebp - 0x101c], 0
je 0x40166a
push 0x42f7c8
lea eax, [ebp - 0x1018]
push eax
call dword [sym.imp.MSVCR90.dll_wcscat]
add esp, 8
lea ecx, [ebp - 0x1018]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_SHCreateDirectory]
lea edx, [ebp - 0x1018]
push edx
mov ecx, dword [ebp - 0x2028]
add ecx, 0x24
call fcn.004019f0
jmp 0x4016a0
push 0x800
lea eax, [ebp - 0x1018]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea ecx, [ebp - 0x1018]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea edx, [ebp - 0x1018]
push edx
mov ecx, dword [ebp - 0x2028]
add ecx, 0x24
call fcn.004019f0
mov ecx, dword [ebp - 0x2028]
add ecx, 0x2c
call fcn.00401940
cmp eax, 2
jl 0x4016d0
mov ecx, dword [ebp - 0x2028]
add ecx, 0x2c
call fcn.0040f230
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x40175b
push 0x1000
push 0
lea eax, [ebp - 0x2020]
push eax
call sub.MSVCR90.dll_memset
add esp, 0xc
push 0
push 0xe
lea ecx, [ebp - 0x2020]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
mov dword [ebp - 0x2024], eax
cmp dword [ebp - 0x2024], 0
je 0x401743
push str.Web_Cam
lea edx, [ebp - 0x2020]
push edx
call dword [sym.imp.MSVCR90.dll_wcscat]
add esp, 8
lea eax, [ebp - 0x2020]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHCreateDirectory]
lea ecx, [ebp - 0x2020]
push ecx
mov ecx, dword [ebp - 0x2028]
add ecx, 0x2c
call fcn.004019f0
jmp 0x40175b
mov edx, dword [ebp - 0x2028]
add edx, 0x24
push edx
mov ecx, dword [ebp - 0x2028]
add ecx, 0x2c
call fcn.00401960
lea ecx, [ebp - 0x10]
call fcn.0041edf0
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0042d238
mov esp, ebp
pop ebp
ret