Function at 0x18000a118
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rax - 0x1a8]
sub rsp, 0x280
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 0x20], rbx
mov rax, qword [0x180076018]
xor rax, rsp
mov qword [rbp + 0x170], rax
mov r15, r8
mov r14, rdx
mov rbx, rcx
mov rcx, r8
call fcn.180002cf8
mov rcx, r14
call fcn.18000a194
mov esi, eax
xor edi, edi
test eax, eax
je 0x180009f77
lea rdx, [r14 + rsi*2]
mov r8d, edi
movzx ecx, word [rdx]
test cx, cx
je 0x180009f70
cmp cx, 0x2e
jne 0x180009f21
test r8d, r8d
je 0x180009ee5
lea eax, [r8 - 1]
mov ecx, eax
cmp word [rdx + rax*2], 0x5c
je 0x180009ee5
cmp word [rdx + rax*2], 0x2f
jne 0x180009f21
lea r9d, [r8 + 2]
lea eax, [r9 - 1]
mov ecx, eax
movzx eax, word [rdx + rax*2]
test ax, ax
je 0x180009f2e
cmp ax, 0x5c
je 0x180009f2e
cmp ax, 0x2f
je 0x180009f2e
cmp ax, 0x2e
jne 0x180009f21
cmp word [rdx + r9*2], di
je 0x180009f2e
cmp word [rdx + r9*2], 0x5c
je 0x180009f2e
cmp word [rdx + r9*2], 0x2f
je 0x180009f2e
inc r8d
mov eax, r8d
movzx ecx, word [rdx + r8*2]
jmp 0x180009ebd
lea rcx, [rsp + 0x40]
call fcn.180002860
nop
lea rcx, [rsp + 0x40]
call fcn.18000a6f4
test al, al
je 0x180009f66
cmp esi, dword [r15 + 8]
jae 0x180009f58
mov dword [r15 + 8], esi
mov rdx, qword [r15]
mov word [rdx + rsi*2], di
lea rdx, [rsp + 0x40]
mov rcx, r15
call fcn.18000305c
nop
mov rcx, qword [rsp + 0x40]
call fcn.1800129dc
mov al, 1
jmp 0x18000a0f1
lea rcx, [rsp + 0x20]
call fcn.1800028b8
nop
test rbx, rbx
je 0x180009f96
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.180002cf8
jmp 0x180009fd6
mov dword [rsp + 0x28], edi
mov rax, qword [rsp + 0x20]
mov word [rax], di
mov word [rsp + 0x60], di
lea rdx, [rsp + 0x60]
mov ecx, 0x105
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov ebx, eax
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x20]
call fcn.180002cf8
lea eax, [rbx - 1]
cmp eax, 0x103
ja 0x18000a0e1
lea rcx, [rsp + 0x20]
call fcn.18000a690
mov rsi, qword [rsp + 0x20]
mov rcx, rsi
call fcn.18000a5e0
mov rcx, rsi
test al, al
je 0x18000a004
call fcn.18000a27c
mov ebx, eax
test eax, eax
jne 0x18000a04c
jmp 0x18000a0e6
call fcn.18000a46c
test al, al
je 0x18000a014
mov ebx, 3
jmp 0x18000a04c
cmp word [rsi], 0x5c
je 0x18000a024
cmp word [rsi], 0x2f
jne 0x18000a0e6
cmp word [rsi + 2], 0x5c
je 0x18000a036
cmp word [rsi + 2], 0x2f
jne 0x18000a0e6
lea rcx, [rsi + 4]
call fcn.18000a23c
mov ebx, eax
test eax, eax
je 0x18000a0e6
add ebx, 2
lea rcx, [rsp + 0x30]
call fcn.1800028b8
nop
cmp word [r14], 0x5c
je 0x18000a089
cmp word [r14], 0x2f
je 0x18000a089
mov esi, ebx
mov rax, qword [rsp + 0x20]
lea rdx, [rax + rsi*2]
lea rcx, [rsp + 0x30]
call fcn.180003124
mov rdx, r14
lea rcx, [rsp + 0x30]
call fcn.180003124
jmp 0x18000a099
lea rdx, [r14 + 2]
lea rcx, [rsp + 0x30]
call fcn.180002cf8
mov esi, ebx
lea rcx, [rsp + 0x30]
call fcn.18000a6f4
test al, al
je 0x18000a0d7
cmp ebx, dword [rsp + 0x28]
jae 0x18000a0ba
mov dword [rsp + 0x28], ebx
mov rax, qword [rsp + 0x20]
mov word [rax + rsi*2], di
lea rdx, [rsp + 0x20]
mov rcx, r15
call fcn.180002bb0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.18000305c
mov dil, 1
mov rcx, qword [rsp + 0x30]
call fcn.1800129dc
mov rsi, qword [rsp + 0x20]
mov rcx, rsi
call fcn.1800129dc
mov al, dil
mov rcx, qword [rbp + 0x170]
xor rcx, rsp
call fcn.1800129b0
mov rbx, qword [rsp + 0x2c8]
add rsp, 0x280
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
mov r8, rdx
mov rdx, rcx
xor ecx, ecx
jmp 0x180009e58