Function at 0x140005350
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x14007d0a0]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rdi, rcx
mov qword [rbp - 0x39], rcx
xor r12d, r12d
mov dword [rbp - 0x41], r12d
lea r9, [rbp - 0x41]
xor r8d, r8d
xor edx, edx
lea rcx, [0x140045540]
call qword [sym.imp.SHELL32.dll_SHGetKnownFolderPath]
test eax, eax
je 0x1400053cd
lea rax, [rbp - 0x11]
mov qword [rbp - 0x49], rax
call fcn.14001bfec
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x11], xmm0
mov qword [rbp - 1], r12
mov ebx, 7
mov qword [rbp + 7], rbx
mov word [rbp - 0x11], r12w
jmp 0x140005422
mov rdx, qword [rbp - 0x41]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400053e0
xorps xmm0, xmm0
movups xmmword [rbp - 0x31], xmm0
mov qword [rbp - 0x21], r12
mov qword [rbp - 0x19], r12
lea rcx, [rbp - 0x31]
call fcn.1400051c0
mov rcx, qword [rbp - 0x41]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
movups xmm0, xmmword [rbp - 0x31]
movups xmmword [rbp - 0x11], xmm0
movups xmm1, xmmword [rbp - 0x21]
movups xmmword [rbp - 1], xmm1
mov ebx, 0x31
lea rdx, [rbp - 0x11]
lea rcx, [rbp + 0xf]
call fcn.140007e70
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x31], xmm0
mov qword [rbp - 0x21], r12
mov qword [rbp - 0x19], r12
mov r8d, 0x11
lea rdx, str.window_styles.txt
lea rcx, [rbp - 0x31]
call fcn.1400051c0
or ebx, 0xc0
lea rdx, [rbp - 0x31]
lea rcx, [rbp + 0xf]
call fcn.140004840
nop
mov rdx, qword [rbp - 0x19]
cmp rdx, 8
jb 0x1400054a9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400054a4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400056c0
call fcn.14001d8a8
lea r14, [rbp + 0xf]
cmp qword [rbp + 0x27], 8
cmovae r14, qword [rbp + 0xf]
mov rsi, qword [rbp + 0x1f]
call fcn.14001bfec
mov r15d, eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x31], xmm0
movdqa xmm1, xmmword [0x140074f80]
movdqu xmmword [rbp - 0x21], xmm1
mov byte [rbp - 0x31], 0
bts ebx, 0xb
mov dword [rbp - 0x41], ebx
test rsi, rsi
je 0x140005553
cmp rsi, 0x7fffffff
ja 0x1400056c6
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov r8d, esi
mov rdx, r14
mov ecx, eax
call fcn.14001c014
mov rbx, rax
shr rax, 0x20
test eax, eax
jne 0x1400056cc
movsxd rdx, ebx
xor r8d, r8d
lea rcx, [rbp - 0x31]
call fcn.14000c470
lea r9, [rbp - 0x31]
cmp qword [rbp - 0x19], 0x10
cmovae r9, qword [rbp - 0x31]
mov dword [rsp + 0x20], ebx
mov r8d, esi
mov rdx, r14
mov ecx, r15d
call fcn.14001c014
shr rax, 0x20
test eax, eax
jne 0x1400056d4
lea rdx, [rbp - 0x31]
cmp qword [rbp - 0x19], 0x10
cmovae rdx, qword [rbp - 0x31]
call fcn.140008360
nop
mov rdx, qword [rbp - 0x19]
cmp rdx, 0x10
jb 0x1400055a3
inc rdx
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000559d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400056dc
call fcn.14001d8a8
nop
mov rdx, qword [rbp + 0x27]
cmp rdx, 8
jb 0x1400055e3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xf]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400055de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400056e2
call fcn.14001d8a8
movdqa xmm0, xmmword [0x140074f70]
movdqu xmmword [rbp + 0x1f], xmm0
mov word [rbp + 0xf], r12w
mov rdx, qword [rbp + 7]
cmp rdx, 8
jb 0x140005635
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x11]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005630
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400056b4
call fcn.14001d8a8
movdqa xmm0, xmmword [0x140074f70]
movdqu xmmword [rbp - 1], xmm0
mov word [rbp - 0x11], r12w
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14000567d
inc rdx
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x140005678
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400056ba
mov rcx, r8
call fcn.14001d8a8
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.14001d110
lea r11, [rsp + 0xb0]
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.14002a054
nop
call fcn.14002a054
nop
call fcn.14002a054
nop
call fcn.140001bb0
int3
mov ecx, eax
call fcn.140004710
int3
mov ecx, eax
call fcn.140004710
nop
call fcn.14002a054
nop
call fcn.14002a054
int3