Function at 0x10004b10
Capabilities:
Get common file path
Link many functions at runtime
Set current directory

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x414
mov eax, dword [0x10014010]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
xor ebx, ebx
push esi
push edi
cmp dword [0x10015068], ebx
jne 0x10004ca9
lea eax, [ebp - 0x414]
push eax
mov edi, 0x104
push edi
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
test eax, eax
jne 0x10004b78
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10001470
push 0x10001d3c
push 0x196
push 0x10001280
call fcn.100064d5
add esp, 0x18
xor eax, eax
jmp 0x10004e6c
push edi
lea eax, [ebp - 0x20c]
push eax
push dword [0x10015064]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
jne 0x10004ba9
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10001d28
push 0x10001d3c
push 0x19c
jmp 0x10004b64
lea eax, [ebp - 0x20c]
push 0x5c
push eax
call fcn.10006e8f
pop ecx
pop ecx
cmp eax, ebx
je 0x10004c93
mov esi, dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp - 0x20c]
push eax
call esi
test eax, eax
jne 0x10004bf5
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x1000142c
push 0x10001d3c
push 0x1a9
jmp 0x10004b64
push 0x10001d0c
push edi
lea eax, [ebp - 0x20c]
push eax
call fcn.100049bf
test eax, eax
lea eax, [ebp - 0x20c]
jns 0x10004c3a
push 0x10001cfc
push eax
push 0x100013ec
push ebx
push ebx
push 0x10001d3c
push 0x1af
push 0x10001280
call fcn.100064d5
add esp, 0x20
jmp 0x10004b71
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [0x10015068], eax
lea eax, [ebp - 0x414]
push eax
call esi
test eax, eax
jne 0x10004c6f
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x1000142c
push 0x10001d3c
push 0x1b7
jmp 0x10004b64
cmp dword [0x10015068], ebx
jne 0x10004ca9
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x100013dc
push 0x10001d3c
push 0x1be
jmp 0x10004b64
push 0x10001ce0
push ebx
push ebx
push 0x10001d3c
push 0x1a4
jmp 0x10004b64
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp dword [0x1001508c], ebx
jne 0x10004ced
push 0x10001cd0
push dword [0x10015068]
call esi
mov dword [0x1001508c], eax
cmp eax, ebx
jne 0x10004ced
push 0x10001ca0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10001388
push 0x10001d3c
push 0x1ca
jmp 0x10004b64
cmp dword [0x10015084], ebx
jne 0x10004d2b
push 0x100014e4
push dword [0x10015068]
call esi
mov dword [0x10015084], eax
cmp eax, ebx
jne 0x10004d2b
push 0x10001c68
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10001388
push 0x10001d3c
push 0x1d4
jmp 0x10004b64
cmp dword [0x10015090], ebx
jne 0x10004d71
push 0x10001c50
push dword [0x10015068]
call esi
mov dword [0x10015090], eax
cmp eax, ebx
jne 0x10004d69
push 0x10001c18
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10001388
push 0x10001d3c
push 0x1de
jmp 0x10004b64
push dword [0x10015070]
call eax
cmp dword [0x10015094], ebx
jne 0x10004daf
push 0x10001c04
push dword [0x10015068]
call esi
mov dword [0x10015094], eax
cmp eax, ebx
jne 0x10004daf
push 0x10001bd0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10001388
push 0x10001d3c
push 0x1ea
jmp 0x10004b64
cmp dword [0x10015098], ebx
jne 0x10004ded
push 0x10001bb8
push dword [0x10015068]
call esi
mov dword [0x10015098], eax
cmp eax, ebx
jne 0x10004ded
push 0x10001b80
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10001388
push 0x10001d3c
push 0x1f4
jmp 0x10004b64
cmp dword [0x10015088], ebx
jne 0x10004e2b
push 0x10001b68
push dword [0x10015068]
call esi
mov dword [0x10015088], eax
cmp eax, ebx
jne 0x10004e2b
push 0x10001b30
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10001388
push 0x10001d3c
push 0x1fe
jmp 0x10004b64
cmp dword [0x10015060], ebx
jne 0x10004e69
push 0x10001b18
push dword [0x10015068]
call esi
mov dword [0x10015060], eax
cmp eax, ebx
jne 0x10004e69
push 0x10001ae0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10001388
push 0x10001d3c
push 0x208
jmp 0x10004b64
xor eax, eax
inc eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10006df2
leave
ret