Function at 0x18000628c
Capabilities:
Create directory
Get common file path
Link many functions at runtime
Print debug messages

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x330
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, 0x308
lea rcx, [rsp + 0x20]
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
lea rcx, [rsp + 0x20]
dec rcx
inc rcx
cmp byte [rcx], 0
jne 0x1800062ba
movups xmm0, xmmword [str._symbolsdbghelpx64dbghelp.dll]
mov al, byte [0x18000bc60]
movups xmm1, xmmword [0x18000bc50]
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
mov byte [rcx + 0x20], al
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rbx, rax
test rax, rax
je 0x180006574
lea rdx, str.SymInitialize
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180014920], rax
test rax, rax
je 0x180006574
lea rdx, str.SymSetOptions
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180014930], rax
test rax, rax
je 0x180006574
lea rdx, str.SymGetOptions
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800148f8], rax
test rax, rax
je 0x180006574
lea rdx, str.SymSetSearchPath
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180014918], rax
test rax, rax
je 0x180006574
lea rdx, str.SymLoadModule64
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180014900], rax
test rax, rax
je 0x180006574
lea rdx, str.SymFromName
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180014910], rax
test rax, rax
je 0x180006574
lea rdx, str.SymFindFileInPath
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180014928], rax
test rax, rax
je 0x180006574
lea rdx, str.SymSrvGetFileIndexInfo
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800148f0], rax
test rax, rax
je 0x180006574
lea rdx, str.SymUnloadModule64
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180014908], rax
test rax, rax
je 0x180006574
xor ecx, ecx
lea rax, str.SRV
mov al, byte [rcx + rax]
mov byte [rsp + rcx + 0x20], al
inc rcx
test al, al
jne 0x180006419
mov edx, 0x104
lea rcx, [rsp + 0x24]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
mov eax, eax
lea rbx, [rsp + 0x24]
add rbx, rax
lea rdx, str.Symbols
mov r8, rbx
sub r8, rdx
mov al, byte [rdx]
mov byte [r8 + rdx], al
inc rdx
test al, al
jne 0x180006455
xor edx, edx
lea rcx, [rsp + 0x24]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov byte [rbx + 8], 0x2a
mov ecx, 0x104
add rbx, 9
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
mov eax, eax
lea rcx, [0x18000bd68]
add rbx, rax
mov rdx, rbx
sub rdx, rcx
mov al, byte [rcx]
mov byte [rdx + rcx], al
inc rcx
test al, al
jne 0x180006497
lea rcx, str.http:__msdl.microsoft.com_download_symbols
sub rbx, rcx
mov al, byte [rcx]
mov byte [rbx + rcx + 0xc], al
inc rcx
test al, al
jne 0x1800064ad
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call qword [0x180014920]
test eax, eax
jne 0x18000650a
cmp qword [0x180014958], 0
je 0x180006500
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, str.SymInitialize_failed:__08X_n
lea rcx, [0x1800140f0]
call qword [0x180014958]
lea rcx, [0x1800140f0]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, 0xfffffffe
jmp 0x1800065a0
cmp qword [0x180014958], 0
je 0x18000653e
call qword [0x1800148f8]
mov r8d, eax
lea rdx, str.Symsrv_options:__08X_n
lea rcx, [0x1800140f0]
call qword [0x180014958]
lea rcx, [0x1800140f0]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
call qword [0x1800148f8]
or eax, 0x80000800
mov ecx, eax
call qword [0x180014930]
call qword [0x1800148f8]
and eax, 0xfffffffb
mov ecx, eax
call qword [0x180014930]
lea rdx, [rsp + 0x20]
mov rcx, rdi
call qword [0x180014918]
xor eax, eax
jmp 0x1800065a0
mov rax, qword [0x180014958]
test rax, rax
je 0x18000659d
lea rdx, str.InitSymEng_failed._n
lea rcx, [0x1800140f0]
call rax
lea rcx, [0x1800140f0]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
or eax, 0xffffffff
mov rbx, qword [rsp + 0x340]
add rsp, 0x330
pop rdi
ret