Function at 0x140036160
Capabilities:
Get common file path

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x2a0
mov rsi, rcx
mov rax, qword [0x14017b750]
xor rax, rsp
mov qword [rsp + 0x298], rax
mov word [rsp + 0x90], 0
lea rdx, [rsp + 0x90]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
add eax, 0xffffffff
cmp eax, 0x103
jbe 0x1400361ad
xor esi, esi
jmp 0x1400362d0
mov eax, 7
movq xmm0, rax
pslldq xmm0, 8
movdqu xmmword [rsp + 0x80], xmm0
mov word [rsp + 0x70], 0
lea rcx, [rsp + 0x90]
call fcn.140133524
mov rdi, rax
cmp rax, 7
jbe 0x1400361f9
lea rcx, [rsp + 0x70]
lea r9, [rsp + 0x90]
mov rdx, rdi
call fcn.140006120
jmp 0x140036220
mov qword [rsp + 0x80], rdi
mov r8, rdi
add r8, rdi
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0x90]
call fcn.14011ea70
mov word [rsp + rdi*2 + 0x70], 0
mov rax, qword [rsp + 0x80]
cmp qword [rsp + 0x88], 7
jbe 0x14003623a
mov rcx, qword [rsp + 0x70]
jmp 0x14003623f
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rax
lea rdi, [rsp + 0x30]
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.14002ed80
lea rbx, [rsp + 0x50]
mov rcx, rdi
mov rdx, rbx
call fcn.140031d30
mov rcx, rsi
mov rdx, rbx
call fcn.14002ef10
mov rcx, rbx
call fcn.14002ee30
mov rcx, rdi
call fcn.14002ee30
mov rax, qword [rsp + 0x88]
cmp rax, 8
jb 0x1400362cd
mov rcx, qword [rsp + 0x70]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x1400362c8
mov rdx, rcx
add rdx, 0xfffffffffffffff8
mov rcx, qword [rcx - 8]
sub rdx, rcx
cmp rdx, 0x20
jae 0x1400362ed
add rax, rax
add rax, 0x29
mov rdx, rax
call fcn.14011a568
mov sil, 1
mov rcx, qword [rsp + 0x298]
xor rcx, rsp
call fcn.14011a890
mov eax, esi
add rsp, 0x2a0
pop rbx
pop rdi
pop rsi
ret
call fcn.140128920
ud2
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov r14, rdx
mov ebx, ecx
mov rax, qword [0x14017b750]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x2c], ecx
call fcn.14003d770
mov r15, rax
cmp ebx, 1
jne 0x14003d4d2
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.14011a890
mov rcx, r14
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
jmp 0x140036160
movabs rsi, 0xcbf29ce484222325
movabs rdi, 0x100000001b3
mov rcx, r15
call fcn.1400481c0
mov r8b, byte [r15 + 0x90]
test r8b, r8b
mov ebp, ebx
je 0x14003d530
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 0x14003d5bf
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 0x14003d593
mov rdx, qword [rdx]
mov rdi, rsi
cmp rax, rsi
je 0x14003d5a4
mov rbx, qword [r10 + r9*8]
mov rdi, qword [rbx]
mov ebx, ebp
cmp rdi, rdx
je 0x14003d5bf
cmp dword [rdx + 0x10], ebx
jne 0x14003d590
cmp rsi, rdx
je 0x14003d5bf
add rdx, 0x18
mov rcx, r14
jmp 0x14003d649
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 0x14003d5f3
mov rdi, qword [rdi]
mov rdx, rbx
cmp rax, rbx
je 0x14003d602
mov rdx, qword [rsi + rcx*8]
mov rdx, qword [rdx]
cmp rdx, rdi
je 0x14003d65f
mov edx, ebp
cmp dword [rdi + 0x10], ebp
jne 0x14003d5f0
cmp rbx, rdi
je 0x14003d65f
add rdi, 0x18
test r8b, r8b
jne 0x14003d643
mov rcx, r15
add rcx, 8
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x30]
call fcn.14003e510
mov rcx, qword [rsp + 0x50]
add rcx, 0x18
mov rdx, rdi
call fcn.14002eea0
mov rcx, r14
mov rdx, rdi
call fcn.14002eea0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov sil, 1
jmp 0x14003d752
mov rsi, qword [r15 + 0x88]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
lea rcx, [rsp + 0x50]
call fcn.14002ec50
test rsi, rsi
je 0x14003d6a6
lea rdx, [rsp + 0x50]
mov ecx, ebp
call qword [rsi]
test al, al
jne 0x14003d6a6
lea rdi, [rsp + 0x50]
mov rsi, qword [rsi + 8]
test rsi, rsi
je 0x14003d6a6
mov ecx, dword [rsp + 0x2c]
mov rdx, rdi
call qword [rsi]
test al, al
je 0x14003d690
cmp qword [rsp + 0x60], 0
je 0x14003d746
lea rcx, [rsp + 0x50]
call fcn.140031e10
test al, al
je 0x14003d6f0
lea rdi, [rsp + 0x30]
lea rbx, [rsp + 0x50]
mov rcx, rdi
mov rdx, rbx
call fcn.1400344d0
mov rcx, rbx
mov rdx, rdi
call fcn.14002ef10
mov rcx, rdi
call fcn.14002ee30
cmp qword [rsp + 0x60], 0
je 0x14003d746
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.14002eea0
mov rcx, r15
call fcn.1400481c0
cmp byte [r15 + 0x90], 0
jne 0x14003d738
mov rcx, r15
add rcx, 8
lea rdx, [rsp + 0x30]
lea r8, [rsp + 0x2c]
call fcn.14003e510
mov rcx, qword [rsp + 0x30]
add rcx, 0x18
lea rdx, [rsp + 0x50]
call fcn.14002eea0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov sil, 1
jmp 0x14003d748
xor esi, esi
lea rcx, [rsp + 0x50]
call fcn.14002ee30
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.14011a890
mov eax, esi
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret