Function at 0x14007ee20
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov rsi, rdx
mov ebx, ecx
mov rax, qword [0x1403a7038]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov dword [rsp + 0x6c], ecx
call fcn.14007f290
cmp ebx, 9
je 0x14007f1d7
mov r13, rax
mov qword [rsp + 0x30], rsi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14007f1ca
mov r9b, byte [r13 + 0x60]
movsxd r8, ebx
movabs r12, 0x5555555555555555
movabs r15, 0x3333333333333333
movabs r11, 0xf0f0f0f0f0f0f0f
movabs r10, 0x101010101010101
test r9b, r9b
jne 0x14007ef57
mov rsi, qword [r13 + 0x10]
test rsi, rsi
je 0x14007ef57
mov rax, rsi
shr rax, 1
and rax, r12
mov rcx, rsi
sub rcx, rax
mov rax, rcx
and rax, r15
shr rcx, 2
and rcx, r15
add rcx, rax
mov rbp, rcx
shr rbp, 4
add rbp, rcx
and rbp, r11
imul rbp, r10
shr rbp, 0x38
cmp rbp, 1
jbe 0x14007f0b2
mov rcx, r8
cmp rsi, r8
ja 0x14007ef0b
mov rax, r8
xor edx, edx
div rsi
mov rcx, rdx
mov rax, qword [r13 + 8]
mov rax, qword [rax + rcx*8]
test rax, rax
je 0x14007ef57
mov rdi, qword [rax]
test rdi, rdi
je 0x14007ef57
lea r14, [rsi - 1]
mov rax, qword [rdi + 8]
cmp rax, r8
jne 0x14007ef38
cmp dword [rdi + 0x10], ebx
je 0x14007f06f
jmp 0x14007ef4f
cmp ebp, 1
jbe 0x14007f0be
cmp rax, rsi
jae 0x14007f0c6
cmp rax, rcx
jne 0x14007ef57
mov rdi, qword [rdi]
test rdi, rdi
jne 0x14007ef24
mov dword [rsp + 0x70], ebx
mov rsi, qword [r13 + 0x38]
test rsi, rsi
jne 0x14007f0d3
mov rsi, qword [r13 + 0x58]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rcx, [rsp + 0x50]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [0x14033b990]
movaps xmmword [rcx], xmm0
call fcn.14017c8b0
test rsi, rsi
je 0x14007efbc
lea rdi, [rsp + 0x50]
mov rax, qword [rsi]
mov ecx, ebx
mov rdx, rdi
call qword [0x1403db008]
test al, al
jne 0x14007efbc
mov rsi, qword [rsi + 8]
test rsi, rsi
jne 0x14007efa1
movzx eax, byte [rsp + 0x67]
test al, al
jns 0x14007efca
mov rax, qword [rsp + 0x58]
test rax, rax
mov rsi, qword [rsp + 0x30]
je 0x14007f245
lea rcx, [rsp + 0x50]
call fcn.14017de90
test al, al
jne 0x14007f202
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.14017ca20
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14007f24c
cmp byte [r13 + 0x60], 0
jne 0x14007f057
mov rcx, r13
add rcx, 8
lea r8, [rsp + 0x6c]
lea rax, [rsp + 0x70]
mov qword [rax], r8
lea rdx, [rsp + 0x78]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea r9, [0x14034546b]
lea rdi, [rsp + 0x38]
mov rdx, rdi
call fcn.14007f5c0
mov rcx, qword [rdi]
add rcx, 0x18
lea rdx, [rsp + 0x50]
call fcn.14017ca20
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov sil, 1
lea rcx, [rsp + 0x50]
call fcn.14017ca10
jmp 0x14007f08c
add rdi, 0x18
mov rcx, qword [rsp + 0x30]
mov rdx, rdi
call fcn.14017ca20
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov sil, 1
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1401d1390
mov eax, esi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsi - 1]
and rcx, r8
jmp 0x14007ef0b
and rax, r14
jmp 0x14007ef4a
xor edx, edx
div rsi
mov rax, rdx
jmp 0x14007ef4a
mov rax, rsi
shr rax, 1
and rax, r12
mov rcx, rsi
sub rcx, rax
mov rax, rcx
and rax, r15
shr rcx, 2
and rcx, r15
add rcx, rax
mov rdi, rcx
shr rdi, 4
add rdi, rcx
and rdi, r11
imul rdi, r10
shr rdi, 0x38
cmp rdi, 1
ja 0x14007f259
lea rcx, [rsi - 1]
and rcx, r8
mov rax, qword [r13 + 0x30]
mov rax, qword [rax + rcx*8]
test rax, rax
je 0x14007ef68
mov r15, qword [rax]
test r15, r15
je 0x14007ef68
lea rbp, [rsi - 1]
mov rax, qword [r15 + 8]
cmp rax, r8
je 0x14007f164
cmp edi, 1
ja 0x14007f275
and rax, rbp
cmp rax, rcx
jne 0x14007ef68
mov r15, qword [r15]
test r15, r15
jne 0x14007f139
jmp 0x14007ef68
cmp dword [r15 + 0x10], ebx
jne 0x14007f157
test r9b, r9b
jne 0x14007f1b9
lea rdi, [r15 + 0x18]
mov rcx, r13
add rcx, 8
lea r8, [rsp + 0x70]
lea rax, [rsp + 0x38]
mov qword [rax], r8
lea rdx, [rsp + 0x78]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea r9, [0x14034546b]
lea rbx, [rsp + 0x50]
mov rdx, rbx
call fcn.14007f5c0
mov rcx, qword [rbx]
add rcx, 0x18
mov rdx, rdi
call fcn.14017ca20
add r15, 0x18
mov rcx, qword [rsp + 0x30]
mov rdx, r15
jmp 0x14007f07b
mov rcx, r13
call fcn.140189380
jmp 0x14007ee75
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1401d1390
mov rcx, rsi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.140087880
lea rdi, [rsp + 0x38]
lea rbx, [rsp + 0x50]
mov rcx, rdi
mov rdx, rbx
call fcn.140086490
mov rcx, rbx
mov rdx, rdi
call fcn.14017ca80
mov rcx, rdi
call fcn.14017ca10
movzx eax, byte [rbx + 0x17]
test al, al
jns 0x14007f237
mov rax, qword [rsp + 0x58]
test rax, rax
mov rsi, qword [rsp + 0x30]
jne 0x14007efea
xor esi, esi
jmp 0x14007f063
mov rcx, r13
call fcn.140189380
jmp 0x14007f008
mov rcx, r8
cmp rsi, r8
ja 0x14007f118
mov rax, r8
xor edx, edx
div rsi
mov rcx, rdx
jmp 0x14007f118
cmp rax, rsi
jb 0x14007f14e
xor edx, edx
div rsi
mov rax, rdx
jmp 0x14007f14e