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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x414
push edi
mov dword [ebp - 0x414], ecx
mov al, byte [0x510c10]
mov byte [ebp - 0x208], al
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x207]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov cl, byte [0x510c14]
mov byte [ebp - 0x410], cl
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x40f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x104
lea edx, [ebp - 0x208]
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
push 0x40239c
lea eax, [ebp - 0x208]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 8
push 0
lea ecx, [ebp - 0x208]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov edx, dword [ebp - 0x414]
mov dword [edx + 8], eax
mov eax, dword [ebp - 0x414]
cmp dword [eax + 8], 0
je 0x4d2685
push 0x4023ac
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510c08], eax
push 0x4023c4
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510be8], eax
push 0x4023e0
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510bec], eax
push 0x402404
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510bf0], eax
jmp 0x4d26a0
push 0x10
push 0x402424
push 0x402440
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x4d27c3
push 0x104
lea eax, [ebp - 0x410]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
push 0x402448
lea ecx, [ebp - 0x410]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 8
push 0
lea edx, [ebp - 0x410]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov ecx, dword [ebp - 0x414]
mov dword [ecx + 0xc], eax
mov edx, dword [ebp - 0x414]
cmp dword [edx + 0xc], 0
je 0x4d27a6
push 0x402454
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510be4], eax
push 0x402464
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510bf4], eax
push 0x402474
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510c0c], eax
push 0x402484
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510bfc], eax
push 0x40249c
mov edx, dword [ebp - 0x414]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510bf8], eax
push 0x4024b0
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510c04], eax
push 0x4024c8
mov eax, dword [ebp - 0x414]
mov ecx, dword [eax + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x510c00], eax
jmp 0x4d27be
push 0x10
push 0x4024d8
push 0x4024f0
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x4d27c3
mov eax, 1
pop edi
mov esp, ebp
pop ebp
ret