Function at 0x40a59e
Capabilities:
Get common file path
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
and dword [ebp - 0x14], 0
and dword [ebp - 0xc], 0
and dword [ebp - 8], 0
mov dword [ebp - 0x10], 0x104
and dword [ebp - 4], 0
and dword [ebp - 0x18], 0
cmp dword [0x4511cc], 1
je 0x40a5da
mov eax, dword [0x4511cc]
mov dword [ebp - 0x14], eax
jmp 0x40a8eb
push dword [ebp - 0x10]
lea eax, [ebp - 0xc]
push eax
call fcn.0040bd4f
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jge 0x40a608
push 0x405644
push dword [ebp - 0x14]
call fcn.0040b4e0
pop ecx
pop ecx
jmp 0x40a8eb
push dword [ebp - 0x10]
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x40a66e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x14], eax
push dword [ebp - 0x14]
call fcn.00407c6d
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jl 0x40a63e
mov dword [ebp - 0x14], 0x80004005
push dword [ebp - 0x14]
push 0xfe
push 0x405328
call fcn.0040e33f
push 0x40566c
push dword [ebp - 0x14]
call fcn.0040b4e0
pop ecx
pop ecx
jmp 0x40a8eb
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x10]
jbe 0x40a717
mov eax, dword [ebp - 4]
mov dword [ebp - 0x10], eax
push dword [ebp - 0x10]
lea eax, [ebp - 0xc]
push eax
call fcn.0040bd4f
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jge 0x40a6ae
push 0x405644
push dword [ebp - 0x14]
call fcn.0040b4e0
pop ecx
pop ecx
jmp 0x40a8eb
push dword [ebp - 0x10]
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x40a6cb
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x10]
jbe 0x40a717
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x14], eax
push dword [ebp - 0x14]
call fcn.00407c6d
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jl 0x40a6ec
mov dword [ebp - 0x14], 0x80004005
push dword [ebp - 0x14]
push 0x109
push 0x405328
call fcn.0040e33f
push 0x40566c
push dword [ebp - 0x14]
call fcn.0040b4e0
pop ecx
pop ecx
jmp 0x40a8eb
push dword [ebp - 0xc]
push 0x405690
lea eax, [ebp - 8]
push eax
call fcn.0040c486
add esp, 0xc
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jge 0x40a74d
push 0x4056b0
push dword [ebp - 0x14]
call fcn.0040b4e0
pop ecx
pop ecx
jmp 0x40a8eb
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jne 0x40a7ab
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x14], eax
push dword [ebp - 0x14]
call fcn.00407c6d
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jl 0x40a780
mov dword [ebp - 0x14], 0x80004005
push dword [ebp - 0x14]
push 0x113
push 0x405328
call fcn.0040e33f
push 0x4056e0
push dword [ebp - 0x14]
call fcn.0040b4e0
pop ecx
pop ecx
jmp 0x40a8eb
push 0x4056fc
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x45204c], eax
cmp dword [0x45204c], 0
je 0x40a897
push 0x405708
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x452048], eax
cmp dword [0x452048], 0
je 0x40a897
push 0x405718
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x452044], eax
cmp dword [0x452044], 0
je 0x40a897
push 0x405728
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x452040], eax
cmp dword [0x452040], 0
je 0x40a897
push 0x40573c
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x45203c], eax
cmp dword [0x45203c], 0
je 0x40a897
push 0x405748
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x452038], eax
cmp dword [0x452038], 0
je 0x40a897
push 0x40575c
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x452034], eax
cmp dword [0x452034], 0
je 0x40a897
push 0x405774
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x452030], eax
cmp dword [0x452030], 0
jne 0x40a8dd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x14], eax
push dword [ebp - 0x14]
call fcn.00407c6d
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jl 0x40a8b8
mov dword [ebp - 0x14], 0x80004005
push dword [ebp - 0x14]
push 0x11f
push 0x405328
call fcn.0040e33f
push 0x40578c
push dword [ebp - 0x14]
call fcn.0040b4e0
pop ecx
pop ecx
jmp 0x40a8eb
push 0x4057c8
push 1
call fcn.0040b425
pop ecx
pop ecx
mov eax, dword [ebp - 0x14]
mov dword [0x4511cc], eax
cmp dword [ebp - 0xc], 0
je 0x40a901
push dword [ebp - 0xc]
call fcn.0040c820
cmp dword [ebp - 8], 0
je 0x40a90f
push dword [ebp - 8]
call fcn.0040c820
mov eax, dword [ebp - 0x14]
leave
ret