Function at 0x14000d700
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xd0
mov rax, qword [0x140083030]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rbx, rdx
mov r13, rcx
mov qword [rbp - 0x79], rcx
mov qword [rbp - 0x51], rdx
xor edi, edi
mov qword [rbp - 0x79], rdi
lea r9, [rbp - 0x79]
xor r8d, r8d
xor edx, edx
lea rcx, [0x140068620]
call qword [sym.imp.SHELL32.dll_SHGetKnownFolderPath]
mov qword [rbp - 0x49], rdi
mov qword [rbp - 0x39], rdi
mov qword [rbp - 0x31], 7
mov word [rbp - 0x49], di
test eax, eax
jns 0x14000d779
lea r8d, [rdi + 0x10]
lea rdx, str.C:Program_Files
jmp 0x14000d78e
mov rdx, qword [rbp - 0x79]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], di
jne 0x14000d784
lea rcx, [rbp - 0x49]
call fcn.140001d60
nop
mov rdx, qword [rbp - 0x39]
mov r8, qword [rbp - 0x31]
mov rax, r8
sub rax, rdx
cmp rax, 1
jb 0x14000d7d6
lea rcx, [rdx + 1]
mov qword [rbp - 0x39], rcx
lea rax, [rbp - 0x49]
cmp r8, 8
cmovae rax, qword [rbp - 0x49]
mov r8d, 0x5c
mov word [rax + rdx*2], r8w
mov word [rax + rcx*2], di
lea rax, [rbp - 0x49]
jmp 0x14000d7f4
mov qword [rsp + 0x20], 1
lea r9, [0x14007827c]
mov edx, 1
lea rcx, [rbp - 0x49]
call fcn.1400076a0
mov qword [rbp - 0x29], rdi
mov qword [rbp - 0x19], rdi
mov qword [rbp - 0x11], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x29], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x19], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 7
mov word [rax], di
mov rdx, rbx
lea rcx, [rbp - 0x29]
call fcn.140007160
movups xmm0, xmmword [rax]
movups xmmword [rbp - 9], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 7], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 7
mov word [rax], di
mov rdx, qword [rbp - 0x11]
cmp rdx, 8
jb 0x14000d888
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d883
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000da86
call fcn.14003b67c
mov qword [rbp - 0x19], rdi
mov qword [rbp - 0x11], 7
mov word [rbp - 0x29], di
mov rdx, qword [rbp - 0x31]
cmp rdx, 8
jb 0x14000d8d8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d8d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000da8c
call fcn.14003b67c
mov qword [rbp - 0x39], rdi
mov qword [rbp - 0x31], 7
mov word [rbp - 0x49], di
mov qword [rbp - 0x71], rdi
mov qword [rbp - 0x61], rdi
mov qword [rbp - 0x59], rdi
lea r14, [rbp - 9]
mov rdi, qword [rbp - 9]
mov r12, qword [rbp + 0xf]
cmp r12, 8
cmovae r14, rdi
mov r15, qword [rbp + 7]
cmp r15, 8
jae 0x14000d924
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x71], xmm0
mov esi, 7
jmp 0x14000d9b3
mov rsi, r15
or rsi, 7
movabs rax, 0x7ffffffffffffffe
cmp rsi, rax
cmova rsi, rax
lea rcx, [rsi + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x14000da80
add rcx, rcx
cmp rcx, 0x1000
jb 0x14000d98e
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14000da80
mov rcx, rax
call fcn.14003b570
mov rcx, rax
test rax, rax
je 0x14000da92
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14000d99c
test rcx, rcx
je 0x14000d99a
call fcn.14003b570
jmp 0x14000d99c
xor eax, eax
mov qword [rbp - 0x71], rax
lea r8, [r15*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.14003d6c0
mov qword [rbp - 0x61], r15
mov qword [rbp - 0x59], rsi
lea rdx, [rbp - 0x71]
mov rcx, r13
call fcn.14000daa0
nop
cmp r12, 8
jb 0x14000da04
lea rdx, [r12*2 + 2]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14000d9fb
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000da98
mov rcx, rdi
call fcn.14003b67c
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 8
jb 0x14000da3f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x14000da3a
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14000da7a
mov rcx, r8
call fcn.14003b67c
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 7
mov word [rbx], ax
mov rax, r13
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.14003b550
mov rbx, qword [rsp + 0x120]
add rsp, 0xd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140047598
nop
call fcn.1400013b0
nop
call fcn.140047598
nop
call fcn.140047598
int3
call fcn.140047598
nop
call fcn.140047598
int3