Function at 0x430e24
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 0x431420
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 0x430e72
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.004055fc
mov edx, dword [ebp - 0x10c]
lea eax, [ebp - 4]
mov ecx, 0x431434
call fcn.004056a4
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.0040581c
push eax
call sub.kernel32.dll_LoadLibraryExA_1
mov ebx, eax
push 0x431440
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d2c], eax
push 0x431448
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d30], eax
push 0x431450
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d34], eax
push 0x43145c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d38], eax
push 0x431464
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d40], eax
push 0x431470
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d44], eax
push 0x43147c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d48], eax
push 0x431488
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d4c], eax
push 0x431490
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d50], eax
push 0x431498
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d54], eax
push 0x4314a4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d58], eax
push 0x4314b0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d3c], eax
push 0x4314bc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d5c], eax
push 0x4314c4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d60], eax
push 0x4314cc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d64], eax
push 0x4314d4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d68], eax
push 0x4314dc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d6c], eax
push 0x4314e8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d70], eax
push 0x4314f0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d74], eax
push 0x4314f8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d78], eax
push 0x431500
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d7c], eax
push 0x43150c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d80], eax
push 0x431518
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d84], eax
push 0x431520
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d88], eax
push 0x431530
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d8c], eax
push 0x431540
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4da0], eax
push 0x431550
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d9c], eax
push 0x431564
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d98], eax
push 0x431574
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d94], eax
push 0x431584
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4d90], eax
push 0x431590
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4de0], eax
push 0x4315a0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e78], eax
push 0x4315ac
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dd8], eax
push 0x4315c4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dd4], eax
push 0x4315dc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dd0], eax
push 0x4315f8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dcc], eax
push 0x431610
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dc8], eax
push 0x431628
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dc4], eax
push 0x431640
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4ddc], eax
push 0x431658
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dbc], eax
push 0x43166c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4db8], eax
push 0x431684
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4db0], eax
push 0x431694
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dac], eax
push 0x4316a4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dc0], eax
push 0x4316bc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4db4], eax
push 0x4316cc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4da4], eax
push 0x4316d8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4da8], eax
push 0x4316e4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e74], eax
push 0x4316f4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e70], eax
push 0x431718
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e6c], eax
push 0x431734
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e68], eax
push 0x43174c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e60], eax
push 0x431764
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e58], eax
push 0x43177c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e54], eax
push 0x431794
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e50], eax
push 0x4317a8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e4c], eax
push 0x4317bc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e44], eax
push 0x4317c8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dfc], eax
push 0x4317dc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4df4], eax
push 0x4317f0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e5c], eax
push 0x431804
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e64], eax
push 0x43181c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e48], eax
push 0x431838
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e40], eax
push 0x431844
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e3c], eax
push 0x431850
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e38], eax
push 0x431864
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e34], eax
push 0x43186c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e30], eax
push 0x43187c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e2c], eax
push 0x431888
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e28], eax
push 0x43189c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e24], eax
push 0x4318a4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e14], eax
push 0x4318b0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e18], eax
push 0x4318bc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e1c], eax
push 0x4318c8
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e20], eax
push 0x4318d4
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e10], eax
push 0x4318e0
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e0c], eax
push 0x4318ec
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e08], eax
push 0x4318fc
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e04], eax
push 0x431914
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e00], eax
push 0x431924
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4df8], eax
push 0x43193c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4df0], eax
push 0x43194c
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4dec], eax
push 0x431958
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4de8], eax
push 0x431968
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4de4], eax
push 0x431974
push ebx
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5a4e7c], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x431427
lea eax, [ebp - 0x10c]
call fcn.0040538c
lea eax, [ebp - 4]
call fcn.0040538c
ret