Function at 0x14001a510
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov r14, rdx
mov ebx, ecx
mov rax, qword [0x14008a048]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x2c], ecx
call fcn.140010cb0
cmp ebx, 1
jne 0x1400109ff
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140049530
mov rcx, r14
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
jmp 0x14001a510
mov r15, rax
movabs rsi, 0xcbf29ce484222325
movabs rdi, 0x100000001b3
mov rcx, rax
call fcn.14001a6e0
mov r8b, byte [r15 + 0x90]
test r8b, r8b
mov ebp, ebx
je 0x140010a60
movzx eax, bl
xor rax, rsi
imul rax, rdi
movzx ecx, bh
xor rcx, rax
imul rcx, rdi
mov eax, ebx
shr eax, 0x10
movzx eax, al
xor rax, rcx
imul rax, rdi
mov ecx, ebx
shr ecx, 0x18
xor rcx, rax
imul rcx, rdi
jmp 0x140010aef
mov eax, ebx
shr eax, 0x10
mov ecx, ebx
shr ecx, 0x18
movzx edx, bl
xor rdx, rsi
imul rdx, rdi
movzx esi, bh
xor rsi, rdx
imul rsi, rdi
movzx eax, al
xor rax, rsi
imul rax, rdi
xor rcx, rax
imul rcx, rdi
mov rax, qword [r15 + 0x38]
and rax, rcx
mov rsi, qword [r15 + 0x10]
mov r10, qword [r15 + 0x20]
lea r9, [rax + rax]
add r9, 1
shl rax, 4
mov rax, qword [r10 + rax]
mov rdx, rax
jmp 0x140010ac3
mov rdx, qword [rdx]
mov rdi, rsi
cmp rax, rsi
je 0x140010ad4
mov rbx, qword [r10 + r9*8]
mov rdi, qword [rbx]
mov ebx, ebp
cmp rdi, rdx
je 0x140010aef
cmp dword [rdx + 0x10], ebx
jne 0x140010ac0
cmp rsi, rdx
je 0x140010aef
add rdx, 0x18
mov rcx, r14
jmp 0x140010b7d
mov dword [rsp + 0x30], ebx
and rcx, qword [r15 + 0x78]
mov rbx, qword [r15 + 0x50]
mov rsi, qword [r15 + 0x60]
mov rax, rcx
shl rax, 4
mov rax, qword [rsi + rax]
add rcx, rcx
add rcx, 1
mov rdi, rax
jmp 0x140010b23
mov rdi, qword [rdi]
mov rdx, rbx
cmp rax, rbx
je 0x140010b32
mov rdx, qword [rsi + rcx*8]
mov rdx, qword [rdx]
cmp rdx, rdi
je 0x140010b93
mov edx, ebp
cmp dword [rdi + 0x10], ebp
jne 0x140010b20
cmp rbx, rdi
je 0x140010b93
test r8b, r8b
jne 0x140010b73
lea rbx, [rdi + 0x18]
mov rcx, r15
add rcx, 8
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x30]
call fcn.140011810
mov rcx, qword [rsp + 0x50]
add rcx, 0x18
mov rdx, rbx
call fcn.1400080c0
add rdi, 0x18
mov rcx, r14
mov rdx, rdi
call fcn.1400080c0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov sil, 1
jmp 0x140010c92
mov rsi, qword [r15 + 0x88]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
lea rcx, [rsp + 0x50]
call fcn.140007f40
test rsi, rsi
je 0x140010be6
lea rdx, [rsp + 0x50]
mov ecx, ebp
call qword [rsi]
test al, al
jne 0x140010be6
lea rdi, [rsp + 0x50]
nop word cs:[rax + rax]
nop
mov rsi, qword [rsi + 8]
test rsi, rsi
je 0x140010be6
mov ecx, dword [rsp + 0x2c]
mov rdx, rdi
call qword [rsi]
test al, al
je 0x140010bd0
cmp qword [rsp + 0x60], 0
je 0x140010c86
lea rcx, [rsp + 0x50]
call fcn.140009d90
test al, al
je 0x140010c30
lea rdi, [rsp + 0x30]
lea rbx, [rsp + 0x50]
mov rcx, rdi
mov rdx, rbx
call fcn.14001a220
mov rcx, rbx
mov rdx, rdi
call fcn.140008130
mov rcx, rdi
call fcn.140008050
cmp qword [rsp + 0x60], 0
je 0x140010c86
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.1400080c0
mov rcx, r15
call fcn.14001a6e0
cmp byte [r15 + 0x90], 0
jne 0x140010c78
mov rcx, r15
add rcx, 8
lea rdx, [rsp + 0x30]
lea r8, [rsp + 0x2c]
call fcn.140011810
mov rcx, qword [rsp + 0x30]
add rcx, 0x18
lea rdx, [rsp + 0x50]
call fcn.1400080c0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov sil, 1
jmp 0x140010c88
xor esi, esi
lea rcx, [rsp + 0x50]
call fcn.140008050
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140049530
mov eax, esi
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
push rsi
push rdi
push rbx
sub rsp, 0x2c0
mov rsi, rcx
mov rax, qword [0x14008a048]
xor rax, rsp
mov qword [rsp + 0x2b8], rax
lea rcx, [rsp + 0x38]
xor edi, edi
xor edx, edx
call fcn.140026c30
mov word [rsp + 0xb0], 0
lea rdx, [rsp + 0xb0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
add eax, 0xffffffff
cmp eax, 0x103
ja 0x14001a6a0
mov eax, 7
movq xmm0, rax
pslldq xmm0, 8
movdqu xmmword [rsp + 0xa0], xmm0
mov word [rsp + 0x90], 0
lea rcx, [rsp + 0xb0]
call fcn.14005a5c0
mov rdi, rax
cmp rax, 7
jbe 0x14001a5ba
lea rcx, [rsp + 0x90]
lea r9, [rsp + 0xb0]
mov rdx, rdi
call fcn.140006b00
jmp 0x14001a5e7
mov qword [rsp + 0xa0], rdi
mov r8, rdi
add r8, rdi
lea rcx, [rsp + 0x90]
lea rdx, [rsp + 0xb0]
call fcn.14004d900
mov word [rsp + rdi*2 + 0x90], 0
mov rax, qword [rsp + 0xa0]
cmp qword [rsp + 0xa8], 7
jbe 0x14001a604
mov rcx, qword [rsp + 0x90]
jmp 0x14001a60c
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rax
lea rdi, [rsp + 0x50]
lea rdx, [rsp + 0x28]
mov rcx, rdi
call fcn.140007fa0
lea rbx, [rsp + 0x70]
mov rcx, rdi
mov rdx, rbx
call fcn.140009cb0
mov rcx, rsi
mov rdx, rbx
call fcn.140008130
mov rcx, rbx
call fcn.140008050
mov rcx, rdi
call fcn.140008050
mov rax, qword [rsp + 0xa8]
cmp rax, 8
jb 0x14001a69d
mov rcx, qword [rsp + 0x90]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x14001a698
mov rdx, rcx
add rdx, 0xfffffffffffffff8
mov rcx, qword [rcx - 8]
sub rdx, rcx
cmp rdx, 0x20
jae 0x14001a6c7
add rax, rax
add rax, 0x29
mov rdx, rax
call fcn.140049510
mov dil, 1
lea rcx, [rsp + 0x38]
call fcn.140026d30
mov rcx, qword [rsp + 0x2b8]
xor rcx, rsp
call fcn.140049530
mov eax, edi
add rsp, 0x2c0
pop rbx
pop rdi
pop rsi
ret
call fcn.140053350
ud2