Function at 0x14006d390
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
mov rax, qword [0x14019d018]
xor rax, rsp
mov qword [rsp + 0x250], rax
mov r14b, 1
cmp qword [0x1401abb78], 0
jne 0x14006d653
mov rdi, qword [0x1401abb50]
test rdi, rdi
je 0x14006d3e0
test byte [0x1401abb4c], 1
jne 0x14006d519
jmp 0x14006d653
movabs r15, 0x7fffffffffffffef
mov ecx, 0x18
call fcn.1401364e8
mov rdi, rax
lea rsi, [rsp + 0x40]
mov r8d, 0x208
mov rcx, rsi
mov dl, 0xaa
call fcn.140139be0
xor ecx, ecx
mov rdx, rsi
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
movaps xmm0, xmmword [0x140174f60]
movups xmmword [rdi], xmm0
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rdi + 0x10], rax
mov rcx, rsi
call fcn.140152cb8
cmp rax, r15
ja 0x14006d676
mov rbx, rax
cmp rax, 0xb
jae 0x14006d45c
mov byte [rdi + 0x17], bl
mov rsi, rdi
test rbx, rbx
jne 0x14006d484
jmp 0x14006d497
lea rbp, [rbx + 8]
and rbp, 0xfffffffffffffff8
mov rcx, rbp
add rcx, rbp
call fcn.1401364e8
mov rsi, rax
mov qword [rdi], rax
add r15, 0x11
or r15, rbp
mov qword [rdi + 0x10], r15
mov qword [rdi + 8], rbx
mov r8, rbx
add r8, rbx
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140139530
mov word [rsi + rbx*2], 0
movzx r8d, byte [rdi + 0x17]
test r8b, r8b
jns 0x14006d4ab
mov r8, qword [rdi + 8]
mov rcx, rdi
mov dx, 0x5c
call fcn.140045398
cmp rax, 0xffffffffffffffff
je 0x14006d4f6
lea rcx, [rax + 1]
movzx edx, byte [rdi + 0x17]
test dl, dl
js 0x14006d4de
cmp rax, rdx
jae 0x14006d67e
mov word [rdi + rax*2 + 2], 0
mov byte [rdi + 0x17], cl
jmp 0x14006d4f6
cmp qword [rdi + 8], rax
jbe 0x14006d67e
mov rdx, qword [rdi]
mov word [rdx + rax*2 + 2], 0
mov qword [rdi + 8], rcx
lea rdx, [0x14017ffb8]
mov rcx, rdi
call fcn.14004553a
mov qword [0x1401abb50], rdi
test byte [0x1401abb4c], 1
je 0x14006d653
cmp byte [rdi + 0x17], 0
jns 0x14006d522
mov rdi, qword [rdi]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
mov rcx, rdi
mov edx, 4
mov r8d, 3
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [0x1401abb78], rax
add rax, 1
cmp rax, 1
ja 0x14006d653
lea rsi, [rsp + 0x40]
mov r8d, 0x208
mov rcx, rsi
mov dl, 0xaa
call fcn.140139be0
mov word [rsp + 0x40], 0
mov ecx, 0x104
mov rdx, rsi
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
test eax, eax
je 0x14006d650
cmp eax, 0x104
ja 0x14006d650
mov rcx, qword [0x1401abb50]
lea rdx, [rsp + 0x40]
call fcn.140044cf4
mov rcx, qword [0x1401abb50]
movzx eax, byte [rcx + 0x17]
test al, al
js 0x14006d5c9
mov rdx, rcx
jmp 0x14006d5d0
mov rdx, qword [rcx]
mov rax, qword [rcx + 8]
cmp word [rdx + rax*2 - 2], 0x5c
je 0x14006d5eb
lea rdx, [0x14017ffb4]
call fcn.14004553a
mov rcx, qword [0x1401abb50]
lea rdx, [0x14017ffb8]
call fcn.14004553a
mov rcx, qword [0x1401abb50]
cmp byte [rcx + 0x17], 0
jns 0x14006d607
mov rcx, qword [rcx]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
mov edx, 4
mov r8d, 3
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [0x1401abb78], rax
add rax, 1
cmp rax, 1
ja 0x14006d653
mov qword [0x1401abb78], 0
xor r14d, r14d
mov rcx, qword [rsp + 0x250]
xor rcx, rsp
call fcn.140136dd0
mov eax, r14d
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
mov rcx, rdi
call fcn.140043704
mov rcx, rdi
call fcn.140043716
int3