Function at 0x140013940
Capabilities:
Get common file path
Query environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
lea rbp, [rax - 0x958]
sub rsp, 0xa50
xor esi, esi
cmp dword [0x140047160], esi
mov ebx, esi
je 0x140013972
lea eax, [rsi + 1]
jmp 0x140013c0b
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
xor eax, eax
lea rdi, [rsp + 0x20]
mov ecx, 0x410
lea rdx, [rsp + 0x20]
rep stosb byte [rdi], al
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
dec eax
cmp eax, 0x103
ja 0x140013bc3
lea rdx, [0x14003a61c]
lea rcx, [rsp + 0x20]
call fcn.1400013e8
lea rdi, [rsp + 0x20]
cmp word [rsp + 0x20], si
je 0x1400139cb
add rdi, 2
cmp word [rdi], si
jne 0x1400139c2
lea rdx, str.dbghelp.dll
mov rcx, rdi
call fcn.1400013e8
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x140047168], rax
test rax, rax
jne 0x140013a03
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.____Cannot_load_dbghelp.dll__make_sure_it_is_in_program_directory
jmp 0x140013bd0
lea rcx, str.symsrv.dll
mov eax, 0x73
sub rcx, rdi
mov word [rdi], ax
lea rdi, [rdi + 2]
movzx eax, word [rcx + rdi]
test ax, ax
jne 0x140013a12
lea rcx, [rsp + 0x20]
mov word [rdi], si
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x140047158], rax
test rax, rax
jne 0x140013a4e
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.____Cannot_load_symsrv.dll__make_sure_it_is_in_program_directory
jmp 0x140013bd0
mov rcx, qword [0x140047168]
lea rdx, str.SymSetOptions
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140047168]
lea rdx, str.SymInitializeW
mov qword [0x140047140], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140047168]
lea rdx, str.SymLoadModuleExW
mov qword [0x140047138], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140047168]
lea rdx, str.SymFromName
mov qword [0x140047128], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdx, qword [0x140047140]
mov qword [0x140047130], rax
test rdx, rdx
je 0x140013bb0
cmp qword [0x140047138], rsi
je 0x140013bb0
cmp qword [0x140047128], rsi
je 0x140013bb0
test rax, rax
je 0x140013bb0
mov ecx, 0x10603
call rdx
xor eax, eax
lea rdi, [rbp + 0x540]
mov ecx, 0x410
lea rdx, [rbp + 0x330]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x330]
mov ecx, 0x20a
rep stosb byte [rdi], al
lea rcx, [0x14003ab78]
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
dec eax
cmp eax, 0x102
ja 0x140013ba1
lea r9, [rbp + 0x330]
mov edx, 0x208
lea r8, str.srv_wsSymbolshttps:__msdl.microsoft.com_download_symbols
lea rcx, [rbp + 0x540]
call fcn.1400032a4
xor r8d, r8d
lea rdx, [rbp + 0x540]
or rcx, 0xffffffffffffffff
call qword [0x140047138]
mov ebx, eax
test eax, eax
jne 0x140013b84
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.____SymInitialize_failed
call fcn.1400123a8
jmp 0x140013b95
lea rdx, str.___Symbols_initialized_r_n
mov ecx, 2
call fcn.140011454
mov dword [0x140047160], ebx
test ebx, ebx
jne 0x140013c09
jmp 0x140013bd7
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.____Cannot_query_temp_directory
jmp 0x140013bd0
lea rdx, str.____Not_all_symbol_API_pointers_resolved__abort_r_n
mov ecx, 1
call fcn.140011454
jmp 0x140013bd7
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.____Cannot_query_current_directory
mov edx, eax
call fcn.1400123a8
mov rcx, qword [0x140047168]
test rcx, rcx
je 0x140013bf0
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [0x140047168], rsi
mov rcx, qword [0x140047158]
test rcx, rcx
je 0x140013c09
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [0x140047158], rsi
mov eax, ebx
lea r11, [rsp + 0xa50]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret