Function at 0x4113c0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c8
mov eax, dword [0x4bad80]
xor eax, ebp
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x4c8], ecx
mov ax, word [0x49ba14]
mov word [ebp - 0x498], ax
push 0x44a
push 0
lea ecx, [ebp - 0x496]
push ecx
call fcn.00478f80
add esp, 0xc
lea ecx, [ebp - 0x18]
call fcn.00417660
lea ecx, [ebp - 8]
call fcn.00417660
lea edx, [ebp - 0x498]
push edx
push 0x226
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea eax, [ebp - 0x498]
push eax
lea ecx, [ebp - 0x4a4]
push ecx
call fcn.00411280
add esp, 8
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 8]
push edx
lea ecx, [ebp - 0x18]
call fcn.00417750
movzx eax, al
test eax, eax
je 0x411462
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 4]
mov dword [ebp - 0x14], edx
push 0x226
lea eax, [ebp - 0x498]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea ecx, [ebp - 0x498]
push ecx
lea edx, [ebp - 0x4ac]
push edx
call fcn.00411280
add esp, 8
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 8]
push ecx
lea ecx, [ebp - 0x18]
call fcn.00417750
movzx edx, al
test edx, edx
je 0x4114b8
mov eax, dword [ebp - 8]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x14], ecx
push 0x226
lea edx, [ebp - 0x498]
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea eax, [ebp - 0x498]
push eax
lea ecx, [ebp - 0x4b4]
push ecx
call fcn.00411280
add esp, 8
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 8]
push edx
lea ecx, [ebp - 0x18]
call fcn.00417750
movzx eax, al
test eax, eax
je 0x41150e
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 4]
mov dword [ebp - 0x14], edx
mov ax, word [0x49ba18]
mov word [ebp - 0x44], ax
xor ecx, ecx
mov dword [ebp - 0x42], ecx
mov dword [ebp - 0x3e], ecx
mov dword [ebp - 0x3a], ecx
mov dword [ebp - 0x36], ecx
mov dword [ebp - 0x32], ecx
mov dword [ebp - 0x2e], ecx
mov dword [ebp - 0x2a], ecx
mov word [ebp - 0x26], cx
mov dword [ebp - 0x10], 0
lea edx, [ebp - 0x498]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
jle 0x411595
lea eax, [ebp - 0x498]
push eax
lea ecx, [ebp - 0x49c]
call fcn.00401736
push 0
push 0x5c
lea ecx, [ebp - 0x49c]
call fcn.00418090
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jle 0x41158a
mov ecx, dword [ebp - 0x10]
push ecx
lea edx, [ebp - 0x498]
push edx
lea eax, [ebp - 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
lea ecx, [ebp - 0x49c]
call fcn.0045928a
lea ecx, [ebp - 0x44]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
jle 0x4115e4
lea edx, [ebp - 0x44]
push edx
lea eax, [ebp - 0x4bc]
push eax
call fcn.00411280
add esp, 8
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 8]
push ecx
lea ecx, [ebp - 0x18]
call fcn.00417750
movzx edx, al
test edx, edx
je 0x4115e4
mov eax, dword [ebp - 8]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x14], ecx
lea edx, [ebp - 0x20]
push edx
call fcn.004176e0
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
lea edx, [ebp - 0x4c4]
push edx
lea ecx, [ebp - 0x20]
call fcn.00417720
mov ecx, eax
call fcn.004176c0
push eax
call fcn.0047a0fc
add esp, 4
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0x5265c00
jle 0x41162b
mov eax, dword [ebp + 8]
mov dword [eax], 0x1e
jmp 0x411634
mov ecx, dword [ebp + 8]
mov dword [ecx], 0
mov ecx, dword [ebp - 0x24]
xor ecx, ebp
call fcn.00478af2
mov esp, ebp
pop ebp
ret 4