Function at 0x14005744c
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1b8]
sub rsp, 0x290
mov rax, qword [0x1401e7e78]
xor rax, rsp
mov qword [rbp + 0x180], rax
mov r14, rcx
xor r13d, r13d
mov rax, qword [0x14021c5d8]
cmp byte [rax + 0x4000], r13b
jne 0x140057911
mov rax, qword [0x14021c740]
cmp byte [rax + 0xc81], r13b
jne 0x1400574c1
mov rax, qword [rcx + 0x100]
cmp qword [rcx + 0xf8], rax
je 0x140057911
mov ebx, 0x20a
mov r8d, ebx
xor edx, edx
lea rcx, [rsp + 0x70]
call fcn.14013b230
xor r9d, r9d
lea r8d, [r9 + 0x14]
lea rdx, [rsp + 0x70]
mov rcx, qword [0x14021c5e0]
call qword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
jne 0x140057538
mov word [rsp + 0x70], r13w
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
mov r15d, 0x28
mov ecx, r15d
call fcn.14011ff78
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rsp + 0x20], rax
mov rsi, qword [r14 + 0xf8]
mov r12, qword [r14 + 0x100]
jmp 0x1400576a4
lea rcx, [rsp + 0x70]
or rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], r13w
jne 0x140057541
test eax, eax
jle 0x1400574f8
cdqe
lea rax, [rax*2 - 2]
cmp word [rsp + rax + 0x70], 0x5c
jne 0x1400574f8
cmp rax, rbx
jae 0x140057947
mov word [rsp + rax + 0x70], r13w
jmp 0x1400574f8
xor edx, edx
mov rcx, rsi
call fcn.140121ccc
mov rdi, rax
mov qword [rsp + 0x30], rax
test rax, rax
je 0x1400576a0
cmp word [rax], r13w
je 0x1400576a0
mov r8, qword [rsp + 0x20]
mov rbx, qword [r8 + 8]
mov qword [rsp + 0x40], rbx
mov dword [rsp + 0x48], r13d
mov r15, r8
cmp byte [rbx + 0x19], r13b
jne 0x1400575ed
mov qword [rsp + 0x40], rbx
mov rdx, rdi
mov rcx, qword [rbx + 0x20]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jns 0x1400575d4
mov dword [rsp + 0x48], r13d
mov rbx, qword [rbx + 0x10]
jmp 0x1400575e2
mov dword [rsp + 0x48], 1
mov r15, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], r13b
je 0x1400575b3
mov r8, qword [rsp + 0x20]
cmp byte [r15 + 0x19], r13b
jne 0x14005760d
mov rdx, qword [r15 + 0x20]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jns 0x14005769a
mov r8, qword [rsp + 0x20]
movabs rax, 0x666666666666666
cmp qword [rsp + 0x28], rax
je 0x140057941
lea r9, [rsp + 0x30]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x58]
call fcn.140052364
mov rbx, qword [rax + 8]
mov qword [rax + 8], r13
mov rcx, qword [rsp + 0x60]
mov r15d, 0x28
test rcx, rcx
je 0x140057656
mov edx, r15d
call fcn.140139990
movups xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rsp + 0x30], xmm0
mov r8, rbx
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x20]
call fcn.1400580f4
cmp word [rsp + 0x70], r13w
je 0x14005768d
mov rdx, rdi
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x1400576a0
mov rdx, rdi
mov rcx, r14
call fcn.140057950
jmp 0x1400576a0
mov r15d, 0x28
add rsi, 0x10
cmp rsi, r12
jne 0x140057572
mov rsi, qword [0x14021c5d8]
add rsi, 0xcfa
mov qword [rsp + 0x30], rsi
je 0x1400577bf
cmp word [rsi], r13w
je 0x1400577bf
mov rdi, qword [rsp + 0x20]
mov rbx, qword [rdi + 8]
mov qword [rsp + 0x40], rbx
mov dword [rsp + 0x48], r13d
jmp 0x140057714
mov qword [rsp + 0x40], rbx
mov rdx, rsi
mov rcx, qword [rbx + 0x20]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jns 0x140057706
mov dword [rsp + 0x48], r13d
mov rbx, qword [rbx + 0x10]
jmp 0x140057714
mov dword [rsp + 0x48], 1
mov rdi, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], r13b
je 0x1400576e5
cmp byte [rdi + 0x19], r13b
jne 0x140057735
mov rdx, qword [rdi + 0x20]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jns 0x1400577bf
movabs rax, 0x666666666666666
cmp qword [rsp + 0x28], rax
je 0x140057941
lea r9, [rsp + 0x30]
mov r8, qword [rsp + 0x20]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x58]
call fcn.140052364
mov rbx, qword [rax + 8]
mov qword [rax + 8], r13
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x14005777d
mov rdx, r15
call fcn.140139990
movups xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rsp + 0x30], xmm0
mov r8, rbx
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x20]
call fcn.1400580f4
cmp word [rsp + 0x70], r13w
je 0x1400577b4
mov rdx, rsi
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x1400577bf
mov rdx, rsi
mov rcx, r14
call fcn.140057950
mov rsi, qword [0x14021c5d8]
add rsi, 0xf04
mov qword [rsp + 0x30], rsi
je 0x1400578d2
cmp word [rsi], r13w
je 0x1400578d2
mov rdi, qword [rsp + 0x20]
mov rbx, qword [rdi + 8]
mov qword [rsp + 0x40], rbx
mov dword [rsp + 0x48], r13d
jmp 0x140057826
mov qword [rsp + 0x40], rbx
mov rdx, rsi
mov rcx, qword [rbx + 0x20]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jns 0x140057818
mov dword [rsp + 0x48], r13d
mov rbx, qword [rbx + 0x10]
jmp 0x140057826
mov dword [rsp + 0x48], 1
mov rdi, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], r13b
je 0x1400577f7
cmp byte [rdi + 0x19], r13b
jne 0x140057847
mov rdx, qword [rdi + 0x20]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jns 0x1400578d2
movabs rax, 0x666666666666666
cmp qword [rsp + 0x28], rax
je 0x140057941
lea r9, [rsp + 0x30]
mov r8, qword [rsp + 0x20]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x58]
call fcn.140052364
mov rbx, qword [rax + 8]
mov qword [rax + 8], r13
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x14005788f
mov rdx, r15
call fcn.140139990
movups xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rsp + 0x30], xmm0
mov r8, rbx
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x20]
call fcn.1400580f4
cmp word [rsp + 0x70], r13w
je 0x1400578c6
mov rdx, rsi
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x1400578d2
mov rdx, rsi
mov rcx, r14
call fcn.140057950
nop
mov rax, qword [rsp + 0x20]
mov rbx, qword [rax + 8]
jmp 0x1400578fe
mov r8, qword [rbx + 0x10]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x20]
call fcn.140052938
mov rcx, rbx
mov rbx, qword [rbx]
mov rdx, r15
call fcn.140139990
cmp byte [rbx + 0x19], r13b
je 0x1400578dd
mov rdx, r15
mov rcx, qword [rsp + 0x20]
call fcn.140139990
mov rcx, qword [rbp + 0x180]
xor rcx, rsp
call fcn.140139b10
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14005833c
nop
call fcn.14013a21c
int3