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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffef4
push ebx
xor eax, eax
mov dword [ebp - 0x10c], eax
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x430ddc
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x104
lea eax, [ebp - 0x108]
push eax
call sub.kernel32.dll_GetSystemDirectoryA
cmp byte [ebp + eax - 0x109], 0x5c
je 0x43082e
mov byte [ebp + eax - 0x108], 0x5c
mov byte [ebp + eax - 0x107], 0
lea eax, [ebp - 0x10c]
lea edx, [ebp - 0x108]
mov ecx, 0x104
call fcn.00405638
mov edx, dword [ebp - 0x10c]
lea eax, [ebp - 4]
mov ecx, 0x430df0
call fcn.004056e0
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.00405858
push eax
call sub.kernel32.dll_LoadLibraryExA_1
mov ebx, eax
push 0x430dfc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ac4], eax
push 0x430e04
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ac8], eax
push 0x430e0c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639acc], eax
push 0x430e18
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ad0], eax
push 0x430e20
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ad8], eax
push 0x430e2c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639adc], eax
push 0x430e38
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ae0], eax
push 0x430e44
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ae4], eax
push 0x430e4c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ae8], eax
push 0x430e54
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639aec], eax
push 0x430e60
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639af0], eax
push 0x430e6c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ad4], eax
push 0x430e78
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639af4], eax
push 0x430e80
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639af8], eax
push 0x430e88
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639afc], eax
push 0x430e90
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b00], eax
push 0x430e98
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b04], eax
push 0x430ea4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b08], eax
push 0x430eac
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b0c], eax
push 0x430eb4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b10], eax
push 0x430ebc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b14], eax
push 0x430ec8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b18], eax
push 0x430ed4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b1c], eax
push 0x430edc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b20], eax
push 0x430eec
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b24], eax
push 0x430efc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b38], eax
push 0x430f0c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b34], eax
push 0x430f20
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b30], eax
push 0x430f30
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b2c], eax
push 0x430f40
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b28], eax
push 0x430f4c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b78], eax
push 0x430f5c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639c10], eax
push 0x430f68
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b70], eax
push 0x430f80
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b6c], eax
push 0x430f98
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b68], eax
push 0x430fb4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b64], eax
push 0x430fcc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b60], eax
push 0x430fe4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b5c], eax
push 0x430ffc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b74], eax
push 0x431014
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b54], eax
push 0x431028
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b50], eax
push 0x431040
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b48], eax
push 0x431050
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b44], eax
push 0x431060
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b58], eax
push 0x431078
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b4c], eax
push 0x431088
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b3c], eax
push 0x431094
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b40], eax
push 0x4310a0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639c0c], eax
push 0x4310b0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639c08], eax
push 0x4310d4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639c04], eax
push 0x4310f0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639c00], eax
push 0x431108
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bf8], eax
push 0x431120
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bf0], eax
push 0x431138
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bec], eax
push 0x431150
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639be8], eax
push 0x431164
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639be4], eax
push 0x431178
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bdc], eax
push 0x431184
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b94], eax
push 0x431198
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b8c], eax
push 0x4311ac
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bf4], eax
push 0x4311c0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bfc], eax
push 0x4311d8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639be0], eax
push 0x4311f4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bd8], eax
push 0x431200
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bd4], eax
push 0x43120c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bd0], eax
push 0x431220
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bcc], eax
push 0x431228
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bc8], eax
push 0x431238
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bc4], eax
push 0x431244
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bc0], eax
push 0x431258
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bbc], eax
push 0x431260
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bac], eax
push 0x43126c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bb0], eax
push 0x431278
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bb4], eax
push 0x431284
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639bb8], eax
push 0x431290
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ba8], eax
push 0x43129c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ba4], eax
push 0x4312a8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639ba0], eax
push 0x4312b8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b9c], eax
push 0x4312d0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b98], eax
push 0x4312e0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b90], eax
push 0x4312f8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b88], eax
push 0x431308
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b84], eax
push 0x431314
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b80], eax
push 0x431324
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639b7c], eax
push 0x431330
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x639c14], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x430de3
lea eax, [ebp - 0x10c]
call fcn.004053c8
lea eax, [ebp - 4]
call fcn.004053c8
ret