Function at 0x140052700
Capabilities:
Get common file path
Get startup folder

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x250]
sub rsp, 0x350
mov rax, qword [0x140280d40]
xor rax, rsp
mov qword [rbp + 0x240], rax
mov r14, rcx
xor r12d, r12d
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x30]
call fcn.14019d6e0
xorps xmm0, xmm0
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 7
mov word [rbp - 0x70], r12w
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
movups xmmword [rbp - 0x30], xmm0
movdqa xmm1, xmmword [0x140258810]
movdqu xmmword [rbp - 0x20], xmm1
mov word [rbp - 0x30], r12w
movups xmmword [rbp - 0x50], xmm0
movdqu xmmword [rbp - 0x40], xmm1
mov word [rbp - 0x50], r12w
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r12 + 0x23]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea rbx, [r12 - 1]
movabs rsi, 0x7ffffffffffffffe
lea r15, [0x1402860b0]
test eax, eax
js 0x1400529cb
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp], xmm1
lea rax, [rbp + 0x30]
mov r8, rbx
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1400527f0
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14000ae10
nop
lea r8, [0x140286070]
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x48]
call fcn.14000b820
mov rdi, rax
lea rax, [rbp - 0x70]
cmp rax, rdi
je 0x14005289a
mov rdx, qword [rbp - 0x58]
cmp rdx, 7
jbe 0x14005286a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052865
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f0d
call fcn.1401629f4
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 7
mov word [rbp - 0x70], r12w
movups xmm0, xmmword [rdi]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbp - 0x60], xmm1
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], 7
mov word [rdi], r12w
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x1400528dc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400528d7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f0d
call fcn.1401629f4
mov rax, rsi
mov rcx, qword [rbp - 0x60]
sub rax, rcx
mov rdx, qword [0x1402860c0]
cmp rax, rdx
jb 0x140052f13
lea r9, [rbp - 0x70]
cmp qword [rbp - 0x58], 7
cmova r9, qword [rbp - 0x70]
mov rax, r15
cmp qword [0x1402860c8], 7
cmova rax, qword [0x1402860b0]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r8, [rbp - 0x70]
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.140008e20
mov rdx, qword [rbp - 0x18]
cmp rdx, 7
jbe 0x140052979
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052974
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f19
call fcn.1401629f4
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [rbp - 0x20], xmm1
mov rdx, qword [rbp + 8]
cmp rdx, 7
jbe 0x1400529cb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400529c6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f1f
call fcn.1401629f4
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x23]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x140052bdf
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp], xmm1
lea rax, [rbp + 0x30]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x140052a01
mov r8, rbx
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x10]
call fcn.14000ae10
nop
lea r8, [0x1402860d0]
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x48]
call fcn.14000b820
mov rbx, rax
lea rax, [rsp + 0x70]
cmp rax, rbx
je 0x140052ab1
mov rdx, qword [rbp - 0x78]
cmp rdx, 7
jbe 0x140052a7f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052a7a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f25
call fcn.1401629f4
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 7
mov word [rbx], r12w
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x140052af3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052aee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f25
call fcn.1401629f4
mov rax, qword [rbp - 0x80]
sub rsi, rax
mov rcx, qword [0x1402860c0]
cmp rsi, rcx
jb 0x140052f2b
lea r9, [rsp + 0x70]
cmp qword [rbp - 0x78], 7
cmova r9, qword [rsp + 0x70]
cmp qword [0x1402860c8], 7
cmova r15, qword [0x1402860b0]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x70]
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.140008e20
mov rdx, qword [rbp - 0x38]
cmp rdx, 7
jbe 0x140052b8d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052b88
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f31
call fcn.1401629f4
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [rbp - 0x40], xmm1
mov rdx, qword [rbp + 8]
cmp rdx, 7
jbe 0x140052bdf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052bda
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f37
call fcn.1401629f4
lea rcx, [rbp + 0x10]
call fcn.14000b720
nop
lea r8, [0x140286270]
lea rdx, [rbp + 0x10]
lea rcx, [rsp + 0x48]
call fcn.14000b820
mov rdx, rax
lea rcx, [r14 + 0x1a8]
call fcn.140005890
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x140052c4f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052c4a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f3d
call fcn.1401629f4
mov rcx, qword [r14 + 0x1a0]
mov rax, qword [rcx]
lea rdx, [r14 + 0x1a8]
call qword [rax + 8]
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.14004d840
test al, al
je 0x140052cdb
mov ecx, 0x270
call fcn.1401629b8
mov rdi, rax
mov qword [rsp + 0x68], rax
test rax, rax
je 0x140052cd6
xor edx, edx
mov r8d, 0x270
mov rcx, rax
call fcn.14019d6e0
mov rcx, qword [r14 + 0x1a0]
mov rdx, qword [rcx]
call qword [rdx + 0x18]
mov ebx, eax
mov rcx, qword [r14 + 0x1a0]
mov rdx, qword [rcx]
call qword [rdx + 0x28]
lea rdx, [rbp - 0x50]
cmp qword [rbp - 0x38], 7
cmova rdx, qword [rbp - 0x50]
movzx r9d, bl
mov r8d, eax
mov rcx, rdi
call fcn.14001b5a0
jmp 0x140052cd9
mov rax, r12
jmp 0x140052d50
lea rdx, [rbp - 0x70]
mov rcx, r14
call fcn.14004d840
test al, al
je 0x140052d57
mov ecx, 0x270
call fcn.1401629b8
mov rdi, rax
mov qword [rsp + 0x68], rax
test rax, rax
je 0x140052d4d
xor edx, edx
mov r8d, 0x270
mov rcx, rax
call fcn.14019d6e0
mov rcx, qword [r14 + 0x1a0]
mov rdx, qword [rcx]
call qword [rdx + 0x18]
mov ebx, eax
mov rcx, qword [r14 + 0x1a0]
mov rdx, qword [rcx]
call qword [rdx + 0x28]
lea rdx, [rbp - 0x30]
cmp qword [rbp - 0x18], 7
cmova rdx, qword [rbp - 0x30]
movzx r9d, bl
mov r8d, eax
mov rcx, rdi
call fcn.14001b5a0
jmp 0x140052d50
mov rax, r12
mov qword [0x140285fe0], rax
mov rdx, qword [rbp + 0x28]
cmp rdx, 7
jbe 0x140052d97
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052d92
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f43
call fcn.1401629f4
movdqa xmm0, xmmword [0x140258810]
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], r12w
mov rdx, qword [rbp - 0x38]
cmp rdx, 7
jbe 0x140052de9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052de4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f49
call fcn.1401629f4
movdqa xmm0, xmmword [0x140258810]
movdqu xmmword [rbp - 0x40], xmm0
mov word [rbp - 0x50], r12w
mov rdx, qword [rbp - 0x18]
cmp rdx, 7
jbe 0x140052e3b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052e36
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f4f
call fcn.1401629f4
movdqa xmm0, xmmword [0x140258810]
movdqu xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x30], r12w
mov rdx, qword [rbp - 0x78]
cmp rdx, 7
jbe 0x140052e8e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052e89
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f55
call fcn.1401629f4
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
mov rdx, qword [rbp - 0x58]
cmp rdx, 7
jbe 0x140052edc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052ed7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140052f07
call fcn.1401629f4
mov rcx, qword [rbp + 0x240]
xor rcx, rsp
call fcn.140162ed0
lea r11, [rsp + 0x350]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.14017234c
nop
call fcn.14017234c
nop
call fcn.14000b250
int3
call fcn.14017234c
nop
call fcn.14017234c
nop
call fcn.14017234c
int3
call fcn.14000b250
int3
call fcn.14017234c
nop
call fcn.14017234c
nop
call fcn.14017234c
nop
call fcn.14017234c
nop
call fcn.14017234c
nop
call fcn.14017234c
nop
call fcn.14017234c
int3