Function at 0x40bfc0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50ff6c
mov eax, dword fs:[0]
push eax
mov eax, 0x15524
call fcn.0050c2d0
mov eax, dword [0x551aa8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x7fe
xor esi, esi
lea ecx, [ebp - 0xd1e]
xor eax, eax
push esi
push ecx
mov word [ebp - 0xd20], ax
call sub.MSVCR100.dll_memset
push 0x206
lea eax, [ebp - 0x51e]
xor edx, edx
push esi
push eax
mov word [ebp - 0x520], dx
call sub.MSVCR100.dll_memset
add esp, 0x18
lea ecx, [ebp - 0x520]
push ecx
push 0x104
mov byte [ebp - 0x15521], 0
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
push 0x206
lea eax, [ebp - 0x316]
xor edx, edx
push esi
push eax
mov word [ebp - 0x318], dx
call sub.MSVCR100.dll_memset
mov ecx, dword [0x55c30c]
push ecx
lea edx, [ebp - 0x520]
push edx
push 0x543b90
lea edx, [ebp - 0x318]
call fcn.0040a7b0
push 0xff
lea eax, [ebp - 0x10f]
push esi
push eax
mov dword [ebp - 0x1552c], esi
mov byte [ebp - 0x110], 0
call sub.MSVCR100.dll_memset
push 0x543b9c
lea ecx, [ebp - 0x318]
push ecx
lea edx, [ebp - 0x1552c]
push edx
call dword [sym.imp.MSVCR100.dll__wfopen_s]
add esp, 0x30
test eax, eax
jne 0x40c11f
mov eax, dword [ebp - 0x1552c]
push esi
push esi
push eax
call dword [sym.imp.MSVCR100.dll_fseek]
mov edx, dword [ebp - 0x1552c]
push 0x100
lea ecx, [ebp - 0x110]
push ecx
push 0x5438cc
push edx
call dword [sym.imp.MSVCR100.dll_fscanf_s]
mov eax, dword [ebp - 0x1552c]
push eax
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 0x20
push 0x400
lea ecx, [ebp - 0xd20]
push ecx
push 0xffffffffffffffff
lea edx, [ebp - 0x110]
push edx
push esi
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov byte [ebp - 0x15521], 1
push 0x7fe
lea ecx, [ebp - 0x151e]
xor eax, eax
push esi
push ecx
mov word [ebp - 0x1520], ax
call sub.MSVCR100.dll_memset
mov edx, dword [0x55c308]
push edx
lea eax, [ebp - 0x1520]
push 0x400
push eax
call dword [sym.imp.MSVCR100.dll_wcscpy_s]
push 0x543ba0
call fcn.004172c0
mov edi, dword [sym.imp.WININET.dll_DeleteUrlCacheEntryW]
add esp, 0x1c
mov dword [ebp - 0x15528], esi
cmp byte [ebp - 0x15521], 0
lea esi, [ebp - 0x5520]
je 0x40c1c7
lea ecx, [ebp - 0xd20]
push ecx
push 0x543bd4
call fcn.0040ea80
add esp, 8
push eax
call edi
mov edx, dword [0x55c300]
push edx
push 0x543bdc
lea esi, [ebp - 0x9520]
call fcn.0040ea80
mov ebx, eax
lea eax, [ebp - 0xd20]
push eax
push 0x543bd4
lea esi, [ebp - 0xd520]
call fcn.0040ea80
add esp, 0x10
jmp 0x40c21e
mov ecx, dword [0x55c300]
push ecx
lea edx, [ebp - 0x1520]
push edx
push 0x543be8
call fcn.0040ea80
add esp, 0xc
push eax
call edi
mov eax, dword [0x55c300]
push eax
push 0x543bdc
lea esi, [ebp - 0x15520]
call fcn.0040ea80
mov ecx, dword [0x55c300]
push ecx
lea edx, [ebp - 0x1520]
push edx
push 0x543be8
lea esi, [ebp - 0x11520]
mov ebx, eax
call fcn.0040ea80
add esp, 0x14
mov edx, ebx
mov ecx, eax
call fcn.00415f70
mov ebx, eax
test ebx, ebx
je 0x40c243
mov eax, dword [ebp - 0x15528]
inc eax
mov dword [ebp - 0x15528], eax
cmp eax, 3
jl 0x40c16c
cmp ebx, 1
jne 0x40c24f
mov ebx, 0x80004005
jmp 0x40c253
test ebx, ebx
jns 0x40c2ca
test byte [0x56c888], 1
jne 0x40c275
or dword [0x56c888], 1
call fcn.0040bb80
push 0x5107b0
call fcn.0050c11f
add esp, 4
mov edi, dword [0x56c860]
lea eax, [ebp - 0x15528]
add edi, 0x3ec
push eax
call fcn.00414580
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x15528]
push ecx
xor esi, esi
call fcn.00417260
mov edx, dword [ebp - 0x15528]
add esp, 8
push esi
push esi
push edx
call dword [sym.imp.mfc100u.dll_AfxMessageBox]
lea ecx, [ebp - 0x15528]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
mov dword [0x55c31c], 5
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0050bf32
mov esp, ebp
pop ebp
ret