Function at 0x482550
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
xor r14d, r14d
xor r15d, r15d
lea rbp, [rcx + 0x10]
mov word [rcx + 0x10], r14w
lea r14, [rcx + 0x20]
mov r12, rcx
mov qword [rcx], rbp
lea rdi, [rsp + 0x30]
mov rsi, rdx
lea r13, [rsp + 0x20]
mov qword [rcx + 8], 0
mov rcx, r14
call method.std::filesystem::__cxx11::path::_List._List__
mov qword [rsp + 0x20], rdi
mov edx, 0x400
mov rbx, qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov qword [rsp + 0x28], 0
mov word [rsp + 0x30], r15w
nop word cs:[rax + rax]
xor r8d, r8d
mov rcx, r13
call method.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___.resize_unsigned_long_long__wchar_t_
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rsp + 0x28]
call rbx
mov edx, eax
cmp rdx, qword [rsp + 0x28]
ja 0x4825c0
test eax, eax
jne 0x482620
call method.std::_V2.system_category__
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov qword [rsi + 8], rbx
mov rcx, qword [rsp + 0x20]
cmp rcx, rdi
je 0x482606
call sym.operator_delete_void_
mov rax, r12
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor r8d, r8d
mov rcx, r13
call method.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___.resize_unsigned_long_long__wchar_t_
mov rax, qword [rsp + 0x20]
lea rbx, [rsp + 0x50]
mov qword [rsp + 0x40], rbx
cmp rax, rdi
je 0x482798
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x28]
lea r15, [rsp + 0x60]
xor r13d, r13d
mov qword [rsp + 0x20], rdi
mov rcx, r15
mov word [rsp + 0x30], r13w
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x28], 0
call method.std::filesystem::__cxx11::path::_List._List__
lea r13, [rsp + 0x40]
mov rcx, r13
call method.std::filesystem::__cxx11::path._M_split_cmpts__
mov rdx, qword [rsp + 0x40]
mov rcx, qword [r12]
mov rax, qword [rsp + 0x48]
cmp rdx, rbx
je 0x4827d0
mov r8, qword [rsp + 0x50]
cmp rbp, rcx
je 0x482810
mov r9, qword [r12 + 0x10]
mov qword [r12], rdx
mov qword [r12 + 8], rax
mov qword [r12 + 0x10], r8
test rcx, rcx
je 0x48281e
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x50], r9
mov rax, qword [rsp + 0x60]
mov rdx, qword [r12 + 0x20]
xor r10d, r10d
mov qword [rsp + 0x48], 0
mov word [rcx], r10w
mov qword [rsp + 0x60], 0
mov qword [r12 + 0x20], rax
test rdx, rdx
je 0x482712
mov rcx, r14
call method.std::filesystem::__cxx11::path::_List::_Impl_deleter.operator___std::filesystem::__cxx11::path::_List::_Impl__const
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x48], 0
xor r9d, r9d
mov word [rcx], r9w
mov rcx, r13
call method.std::filesystem::__cxx11::path._M_split_cmpts__
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x48273c
mov rcx, r15
call method.std::filesystem::__cxx11::path::_List::_Impl_deleter.operator___std::filesystem::__cxx11::path::_List::_Impl__const
mov rcx, qword [rsp + 0x40]
cmp rcx, rbx
je 0x48274b
call sym.operator_delete_void_
mov rdx, rsi
mov rcx, r12
call method.std::filesystem.status_std::filesystem::__cxx11::path_const__std::error_code_
mov r8d, dword [rsi]
test r8d, r8d
jne 0x4827b0
cmp al, 2
je 0x4825f7
mov rax, qword [r12]
xor edx, edx
mov rcx, r12
mov qword [r12 + 8], 0
mov word [rax], dx
call method.std::filesystem::__cxx11::path._M_split_cmpts__
call method.std::_V2.generic_category__
mov dword [rsi], 0x14
mov qword [rsi + 8], rax
jmp 0x4825f7
movdqa xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x482652
mov qword [r12 + 8], 0
mov rax, qword [r12]
xor ecx, ecx
mov word [rax], cx
mov rcx, r12
call method.std::filesystem::__cxx11::path._M_split_cmpts__
jmp 0x4825f7
lea r8, [rax + rax]
mov rdx, rbx
test rax, rax
je 0x4827f9
cmp rax, 1
je 0x482830
call sym.memcpy
mov rax, qword [rsp + 0x48]
mov rcx, qword [r12]
mov rdx, qword [rsp + 0x40]
lea r8, [rax + rax]
xor r11d, r11d
mov qword [r12 + 8], rax
mov word [rcx + r8], r11w
mov rcx, rdx
jmp 0x4826d8
mov qword [r12], rdx
mov qword [r12 + 8], rax
mov qword [r12 + 0x10], r8
mov qword [rsp + 0x40], rbx
lea rbx, [rsp + 0x50]
mov rcx, rbx
jmp 0x4826d8
movzx edx, word [rsp + 0x50]
mov r8d, 2
mov word [rcx], dx
mov rdx, rbx
jmp 0x4827f9