Function at 0x140038da0
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x260
mov rax, qword [0x1400c7008]
xor rax, rsp
mov qword [rsp + 0x250], rax
xor edx, edx
mov r8d, 0x940
mov rbx, rcx
call sub.VCRUNTIME140.dll_memset
mov ecx, 1
mov byte [rbx + 0x10], 1
xor edi, edi
mov dword [rbx + 0x180], ecx
lea rax, str.1194
mov dword [rbx + 0x68], ecx
mov qword [rbx + 0x80], rax
lea rdx, [rsp + 0x40]
mov qword [rbx + 0x70], rax
lea rax, str.AES_256_GCM:AES_128_GCM
mov qword [rbx + 0x618], rax
lea rax, str.SHA1
mov dword [rbx + 0x378], ecx
mov dword [rbx + 0x388], ecx
mov byte [rbx + 0x9b], cl
mov byte [rbx + 0x410], cl
mov dword [rbx + 0x914], ecx
mov word [rbx + 0x928], cx
mov byte [rbx + 0x611], cl
mov byte [rbx + 0x648], cl
mov ecx, 0x104
mov qword [rbx + 0x620], rax
mov qword [rbx + 0x630], rax
mov dword [rbx + 0x9c], 5
mov dword [rbx + 0xa0], 0x12c
mov dword [rbx + 0xa4], 0x78
mov dword [rbx + 0x60], edi
mov dword [rbx + 0x38c], 0x3c
mov dword [rbx + 0xc8], 0x5dc
mov dword [rbx + 0xd8], 0x5dc
mov dword [rbx + 0xe0], 0xffffffff
mov dword [rbx + 0xe8], 0x5aa
mov dword [rbx + 0x3e4], 0x1e
mov dword [rbx + 0x1e8], 0x3b9aca00
mov byte [rbx + 0x1ec], dil
mov dword [rbx + 0x1b8], 0xffffffff
mov dword [rbx + 0x430], 0xfa
mov dword [rbx + 0x434], 0x64
mov dword [rbx + 0x438], 0x64
mov dword [rbx + 0x1fc], 3
mov dword [rbx + 0x210], 0x1e13380
mov dword [rbx + 0x20c], edi
mov dword [rbx + 0x90c], edi
mov byte [rbx + 0x910], dil
mov dword [rbx + 0x924], 2
mov dword [rbx + 0x4fc], 0x100
mov dword [rbx + 0x500], 0x100
mov dword [rbx + 0x52c], 0x100
mov dword [rbx + 0x530], 0x40
mov dword [rbx + 0x598], 0x400
mov qword [rbx + 0x59c], 0x100
mov dword [rbx + 0x4e0], 0x258
mov dword [rbx + 0x5e0], 5
mov dword [rbx + 0x638], 0x10
mov dword [rbx + 0x64c], 0x40
mov dword [rbx + 0x650], 0xf
mov dword [rbx + 0x604], edi
mov dword [rbx + 0x880], 2
mov dword [rbx + 0x884], 0xffffffff
mov dword [rbx + 0x88c], 0xe10
mov dword [rbx + 0x890], 0xffffffff
mov dword [rbx + 0x894], 0x3c
mov dword [rbx + 0x898], 0xe10
mov qword [rbx + 0x6e8], rdi
mov qword [rbx + 0x6f0], rdi
mov dword [rbx + 0x860], 0xffffffff
mov byte [rbx + 0x5b1], dil
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
jne 0x14003901d
lea ecx, [rdi + 0x40]
call fcn.14000e3d0
test al, al
je 0x140039011
lea rdx, str.Could_not_find_a_suitable_temporary_directory.__GetTempPath___failed_.__Consider_using___tmp_dir
mov ecx, 0x40
call fcn.14000e000
mov byte [rbx + 0x938], dil
jmp 0x1400390a8
mov qword [rsp + 0x38], rdi
lea r8, [rsp + 0x40]
mov qword [rsp + 0x30], rdi
mov r9d, 0xffffffff
mov dword [rsp + 0x28], edi
xor edx, edx
mov ecx, 0xfde9
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movsxd rcx, eax
cmp rcx, 0x104
jbe 0x14003906b
mov ecx, 0x40
call fcn.14000e3d0
test al, al
je 0x140039011
lea rdx, str.Could_not_get_temporary_directory._Path_is_too_long.__Consider_using___tmp_dir
jmp 0x140039007
mov qword [rsp + 0x38], rdi
lea r8, [rsp + 0x40]
mov qword [rsp + 0x30], rdi
mov r9d, 0xffffffff
lea rdi, [0x1400cfa10]
mov dword [rsp + 0x28], 0x104
xor edx, edx
mov qword [rsp + 0x20], rdi
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov byte [rbx + 0x938], 0
mov qword [rbx + 0x470], rdi
mov rcx, qword [rsp + 0x250]
xor rcx, rsp
call fcn.140088150
mov rbx, qword [rsp + 0x278]
add rsp, 0x260
pop rdi
ret