Function at 0x14001aa50
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5b8]
sub rsp, 0x690
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rbp + 0x580], rax
mov rbx, rcx
xor r13d, r13d
mov qword [rsp + 0x48], r13
lea rdx, [0x14011f188]
lea rcx, [rsp + 0x48]
call fcn.140001c04
nop
lea rcx, [0x14011f1a8]
call fcn.140002da0
test al, al
jne 0x14001acbd
lea rcx, [0x14011f1a8]
call fcn.140001ca0
cmp rbx, rax
je 0x14001acac
lea rcx, [0x14011f1a8]
call fcn.140001ca0
mov r12, rax
cmp qword [rax + 0x18], 8
jb 0x14001aaef
mov r12, qword [rax]
mov rsi, qword [rax + 0x10]
mov rcx, rbx
call fcn.140001ca0
mov rdi, rax
mov r15, qword [rax + 0x18]
cmp rsi, r15
ja 0x14001ab3e
mov rbx, rax
cmp r15, 8
jb 0x14001ab13
mov rbx, qword [rax]
mov rdx, r12
mov qword [rax + 0x10], rsi
mov r8, rsi
mov rcx, rbx
call fcn.140001ddc
mov word [rsp + 0x20], r13w
lea rcx, [rbx + rsi*2]
lea rdx, [rsp + 0x20]
call fcn.140001dd4
jmp 0x14001acac
mov rcx, rbx
call fcn.140001f74
cmp rsi, rax
ja 0x14001b08d
mov rcx, rbx
call fcn.140001f74
mov r14, rax
mov rcx, rbx
call fcn.140001ca0
mov rcx, rsi
or rcx, 7
mov qword [rsp + 0x38], rcx
cmp rcx, r14
ja 0x14001aba3
mov rdx, qword [rax + 0x18]
mov rcx, rdx
shr rcx, 1
mov rax, r14
sub rax, rcx
cmp rdx, rax
ja 0x14001aba3
lea rax, [rcx + rdx]
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.140001d84
mov r14, qword [rax]
lea rax, [r14 + 1]
lea r8, [rax + rax]
movabs rcx, 0x7fffffffffffffff
mov rdx, 0xffffffffffffffff
cmp rax, rcx
jbe 0x14001abc6
mov r8, rdx
jmp 0x14001abcf
cmp r8, 0x1000
jb 0x14001abf9
lea rcx, [r8 + 0x27]
cmp rcx, r8
cmovbe rcx, rdx
call fcn.1400a08c4
mov rcx, rax
test rax, rax
je 0x14001b093
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14001ac0b
test r8, r8
je 0x14001ac08
mov rcx, r8
call fcn.1400a08c4
jmp 0x14001ac0b
mov rax, r13
mov qword [rsp + 0x28], rax
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], r14
mov rbx, qword [rsp + 0x28]
mov r8, rsi
mov rdx, r12
mov rcx, rbx
call fcn.140001ddc
mov word [rsp + 0x20], r13w
lea rcx, [rbx + rsi*2]
lea rdx, [rsp + 0x20]
call fcn.140001dd4
cmp r15, 8
jb 0x14001ac84
mov rcx, qword [rdi]
lea rdx, [r15*2 + 2]
cmp rdx, 0x1000
jb 0x14001ac75
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001b099
mov rcx, r8
call fcn.1400a0900
mov rax, qword [rsp + 0x28]
mov qword [rdi], rax
jmp 0x14001acac
mov rcx, rdi
call fcn.140001ca0
mov rdx, rax
mov ecx, 8
call fcn.140001bf0
mov rbx, rax
lea rcx, [rsp + 0x28]
call fcn.140001ca0
mov rcx, qword [rax]
mov qword [rbx], rcx
lea rcx, [rsp + 0x48]
call fcn.140001c2c
mov al, 1
jmp 0x14001b04b
xor edx, edx
mov r8d, 0x20c
lea rcx, [rsp + 0x50]
call fcn.1400a2390
lea rdx, [rsp + 0x50]
mov ecx, 0x105
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
dec eax
cmp eax, 0x103
ja 0x14001b03f
mov word [rbp + 0x15a], r13w
xor edx, edx
mov r8d, 0x412
lea rcx, [rbp + 0x160]
call fcn.1400a2390
mov r8d, 0x208
lea rdx, [rbp + 0x160]
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
lea ecx, [rax - 1]
cmp ecx, 0x207
ja 0x14001aec9
mov eax, eax
add rax, rax
cmp rax, 0x412
jae 0x14001b0ab
mov word [rbp + rax + 0x160], r13w
lea rcx, [rbp + 0x160]
call fcn.140001de4
mov rsi, rax
mov rcx, rbx
call fcn.140001ca0
mov rdi, rax
mov r15, qword [rax + 0x18]
cmp rsi, r15
ja 0x14001ad84
mov rbx, rax
cmp r15, 8
jb 0x14001ad78
mov rbx, qword [rax]
lea rdx, [rbp + 0x160]
jmp 0x14001ab16
mov rcx, rbx
call fcn.140001f74
cmp rsi, rax
ja 0x14001b09f
mov rcx, rbx
call fcn.140001f74
mov r14, rax
mov rcx, rbx
call fcn.140001ca0
mov rcx, rsi
or rcx, 7
mov qword [rsp + 0x30], rcx
cmp rcx, r14
ja 0x14001ade9
mov rdx, qword [rax + 0x18]
mov rcx, rdx
shr rcx, 1
mov rax, r14
sub rax, rcx
cmp rdx, rax
ja 0x14001ade9
lea rax, [rcx + rdx]
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x30]
call fcn.140001d84
mov r14, qword [rax]
lea rax, [r14 + 1]
lea r8, [rax + rax]
movabs rcx, 0x7fffffffffffffff
mov rdx, 0xffffffffffffffff
cmp rax, rcx
jbe 0x14001ae0c
mov r8, rdx
jmp 0x14001ae15
cmp r8, 0x1000
jb 0x14001ae3f
lea rcx, [r8 + 0x27]
cmp rcx, r8
cmovbe rcx, rdx
call fcn.1400a08c4
mov rcx, rax
test rax, rax
je 0x14001b0a5
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14001ae51
test r8, r8
je 0x14001ae4e
mov rcx, r8
call fcn.1400a08c4
jmp 0x14001ae51
mov rax, r13
mov qword [rsp + 0x28], rax
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], r14
mov rbx, qword [rsp + 0x28]
mov r8, rsi
lea rdx, [rbp + 0x160]
mov rcx, rbx
call fcn.140001ddc
mov word [rsp + 0x20], r13w
lea rcx, [rbx + rsi*2]
lea rdx, [rsp + 0x20]
call fcn.140001dd4
cmp r15, 8
jb 0x14001ac84
mov rcx, qword [rdi]
lea rdx, [r15*2 + 2]
cmp rdx, 0x1000
jb 0x14001ac75
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001b081
jmp 0x14001ac72
lea rcx, [rsp + 0x50]
call fcn.140001de4
mov rsi, rax
mov rcx, rbx
call fcn.140001ca0
mov rdi, rax
mov r15, qword [rax + 0x18]
cmp rsi, r15
ja 0x14001af00
mov rbx, rax
cmp r15, 8
jb 0x14001aef6
mov rbx, qword [rax]
lea rdx, [rsp + 0x50]
jmp 0x14001ab16
mov rcx, rbx
call fcn.140001f74
cmp rsi, rax
ja 0x14001b0b1
mov rcx, rbx
call fcn.140001f74
mov r14, rax
mov rcx, rbx
call fcn.140001ca0
mov rcx, rsi
or rcx, 7
mov qword [rsp + 0x30], rcx
cmp rcx, r14
ja 0x14001af65
mov rdx, qword [rax + 0x18]
mov rcx, rdx
shr rcx, 1
mov rax, r14
sub rax, rcx
cmp rdx, rax
ja 0x14001af65
lea rax, [rcx + rdx]
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x30]
call fcn.140001d84
mov r14, qword [rax]
lea rax, [r14 + 1]
lea r8, [rax + rax]
movabs rcx, 0x7fffffffffffffff
mov rdx, 0xffffffffffffffff
cmp rax, rcx
jbe 0x14001af88
mov r8, rdx
jmp 0x14001af91
cmp r8, 0x1000
jb 0x14001afbb
lea rcx, [r8 + 0x27]
cmp rcx, r8
cmovbe rcx, rdx
call fcn.1400a08c4
mov rcx, rax
test rax, rax
je 0x14001b07b
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14001afcd
test r8, r8
je 0x14001afca
mov rcx, r8
call fcn.1400a08c4
jmp 0x14001afcd
mov rax, r13
mov qword [rsp + 0x28], rax
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], r14
mov rbx, qword [rsp + 0x28]
mov r8, rsi
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.140001ddc
mov word [rsp + 0x20], r13w
lea rcx, [rbx + rsi*2]
lea rdx, [rsp + 0x20]
call fcn.140001dd4
cmp r15, 8
jb 0x14001ac84
mov rcx, qword [rdi]
lea rdx, [r15*2 + 2]
cmp rdx, 0x1000
jb 0x14001ac75
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001b087
jmp 0x14001ac72
lea rcx, [rsp + 0x48]
call fcn.140001c2c
xor al, al
mov rcx, qword [rbp + 0x580]
xor rcx, rsp
call fcn.1400a08a0
lea r11, [rsp + 0x690]
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.1400a4d80
nop
call fcn.1400a4d80
int3
call fcn.1400a4d80
int3
call fcn.140001f60
int3
call fcn.1400a4d80
int3
call fcn.1400a4d80
int3
call fcn.140001f60
int3
call fcn.1400a4d80
int3
call fcn.1400a0a10
int3
call fcn.140001f60
int3