Function at 0x14004acc0
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x160]
sub rsp, 0x260
mov rax, qword [0x140106010]
xor rax, rsp
mov qword [rbp + 0x158], rax
mov rsi, rdx
mov qword [rbp + 0x110], rdx
mov rbx, qword [rbp + 0x1b0]
lea rdx, [rbp + 0x118]
mov rcx, r8
call fcn.140038260
nop
mov r8, rbx
xor edx, edx
lea rcx, [rbp + 0x118]
call fcn.1400344b0
mov rbx, rax
test rax, rax
je 0x14004ad78
mov rax, qword [rax]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [case.0x14007fe1f.0]
lea rcx, [rbp + 0x118]
cmp rcx, rax
je 0x14004ad5f
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 8
jb 0x14004ad50
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0x118]
call fcn.140009140
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
mov rax, qword [rax]
call qword [case.0x14007fe1f.0]
jmp 0x14004b972
xor ebx, ebx
lea rdi, [rbx - 1]
cmp qword [rbp + 0x128], 2
jbe 0x14004b309
lea rax, [rbp + 0x118]
mov r8, qword [rbp + 0x118]
mov r9, qword [rbp + 0x130]
cmp r9, 8
cmovae rax, r8
cmp word [rax], 0x22
jne 0x14004af04
lea rcx, [rbp + 0x118]
cmp r9, 8
cmovae rcx, r8
add rcx, 2
lea edx, [rbx + 0x22]
call fcn.140096740
mov r8, rax
test rax, rax
je 0x14004b309
lea rax, [rbp + 0x118]
mov rcx, qword [rbp + 0x118]
mov r9, qword [rbp + 0x130]
cmp r9, 8
cmovae rax, rcx
add rax, 2
sub r8, rax
sar r8, 1
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], 7
mov rax, qword [rbp + 0x128]
cmp rax, 1
jb 0x14004b9c8
dec rax
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp + 0x118]
cmp r9, 8
cmovae rdx, rcx
add rdx, 2
lea rcx, [rsp + 0x30]
call fcn.140009140
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rbp + 0x118], xmm1
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rbp + 0x128], xmm0
mov qword [rsp + 0x48], 7
movq rax, xmm0
mov qword [rbp + 0x128], rax
cmp rax, 2
jbe 0x14004b309
lea rax, [rbp + 0x118]
movq rcx, xmm1
mov qword [rbp + 0x118], rcx
psrldq xmm0, 8
movq r8, xmm0
mov qword [rbp + 0x130], r8
cmp r8, 8
cmovae rax, rcx
cmp word [rax], 0x25
jne 0x14004b309
lea rdx, [rbp + 0x118]
cmp r8, 8
cmovae rdx, rcx
lea rcx, [rbp + 0x70]
call fcn.140084050
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm0, xmmword [rbp + 0x70]
movups xmm1, xmmword [rbp + 0x80]
mov qword [rbp + 0x88], 7
jmp 0x14004b2fb
lea rax, [rbp + 0x118]
cmp r9, 8
cmovae rax, r8
cmp word [rax], 0x25
jne 0x14004b18b
lea rdx, [rbp + 0x118]
cmp r9, 8
cmovae rdx, r8
lea rcx, [rbp + 0x138]
call fcn.140084050
nop
mov r10, qword [rbp + 0x148]
mov rcx, r10
mov r8, qword [rbp + 0x150]
mov r9, qword [rbp + 0x138]
test r10, r10
je 0x14004af8d
nop word [rax + rax]
dec rcx
lea rax, [rbp + 0x138]
cmp r8, 8
cmovae rax, r9
movzx edx, word [rax + rcx*2]
cmp dx, 0x2e
je 0x14004afeb
cmp dx, 0x5c
je 0x14004af8d
cmp dx, 0x3a
je 0x14004af8d
test rcx, rcx
jne 0x14004af60
mov rax, r8
sub rax, r10
cmp rax, 4
jb 0x14004afc7
lea rcx, [r10 + 4]
mov qword [rbp + 0x148], rcx
lea rax, [rbp + 0x138]
cmp r8, 8
cmovae rax, r9
movabs rdx, 0x6500780065002e
mov qword [rax + r10*2], rdx
mov word [rax + rcx*2], bx
jmp 0x14004afeb
lfence
mov qword [rsp + 0x20], 4
lea r9, [0x1400e1a38]
mov edx, 4
lea rcx, [rbp + 0x138]
call fcn.140010300
mov dl, 1
lea rcx, [rbp + 0x138]
call fcn.14007c8d0
lea rcx, [rbp + 0x118]
test al, al
je 0x14004b02c
lea rdx, [rbp + 0x138]
cmp qword [rbp + 0x150], 8
cmovae rdx, qword [rbp + 0x138]
mov r8, qword [rbp + 0x148]
call fcn.140009140
jmp 0x14004b13c
cmp qword [rbp + 0x130], 8
cmovae rcx, qword [rbp + 0x118]
mov edx, 0x20
call fcn.140096740
mov r8, rax
test rax, rax
je 0x14004b13c
lea rax, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rax, qword [rbp + 0x118]
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], 7
sub r8, rax
sar r8, 1
cmp qword [rbp + 0x128], r8
cmovb r8, qword [rbp + 0x128]
lea rdx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rdx, qword [rbp + 0x118]
lea rcx, [rsp + 0x50]
call fcn.140009140
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp + 0x118], xmm0
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rbp + 0x128], xmm1
mov qword [rsp + 0x68], 7
lea rdx, [rbp + 0x118]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 8
cmovae rdx, rcx
lea rcx, [rbp + 0x90]
call fcn.140084050
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm0, xmmword [rbp + 0x90]
movups xmmword [rbp + 0x118], xmm0
movups xmm1, xmmword [rbp + 0xa0]
movups xmmword [rbp + 0x128], xmm1
mov qword [rbp + 0xa8], 7
mov rdx, qword [rbp + 0x150]
cmp rdx, 8
jb 0x14004b309
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x138]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b181
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b9c2
call fcn.140091bc0
jmp 0x14004b309
cmp qword [rbp + 0x128], 4
jb 0x14004b240
lfence
lea rcx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rcx, qword [rbp + 0x118]
mov r8d, 4
lea rdx, [0x1400e1a48]
call fcn.1400a1aa4
test eax, eax
jne 0x14004b240
mov qword [rsp + 0x70], rbx
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x78], 7
mov rax, qword [rbp + 0x128]
cmp rax, 4
jb 0x14004b9c8
add rax, 0xfffffffffffffffc
mov r8, rdi
cmp rax, rdi
cmovb r8, rax
lea rdx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rdx, qword [rbp + 0x118]
add rdx, 8
lea rcx, [rsp + 0x70]
call fcn.140009140
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm0, xmmword [rsp + 0x70]
movups xmm1, xmmword [rbp - 0x80]
mov qword [rbp - 0x78], 7
jmp 0x14004b2fb
mov dl, 1
lea rcx, [rbp + 0x118]
call fcn.14007c8d0
test al, al
jne 0x14004b309
lea rcx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rcx, qword [rbp + 0x118]
mov edx, 0x20
call fcn.140096740
mov r8, rax
test rax, rax
je 0x14004b309
lea rax, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rax, qword [rbp + 0x118]
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x58], 7
sub r8, rax
sar r8, 1
cmp qword [rbp + 0x128], r8
cmovb r8, qword [rbp + 0x128]
lea rdx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rdx, qword [rbp + 0x118]
lea rcx, [rbp - 0x70]
call fcn.140009140
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm0, xmmword [rbp - 0x70]
movups xmm1, xmmword [rbp - 0x60]
mov qword [rbp - 0x58], 7
movups xmmword [rbp + 0x118], xmm0
movups xmmword [rbp + 0x128], xmm1
lea r15, [0x140111460]
cmp qword [rbp + 0x128], 0xc
jb 0x14004b536
lfence
lea rcx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rcx, qword [rbp + 0x118]
mov r8d, 0xc
lea rdx, str.SystemRoot_
call fcn.1400a1aa4
test eax, eax
jne 0x14004b536
mov qword [rbp - 0x10], rbx
mov qword [rbp], rbx
mov qword [rbp + 8], 7
mov word [rbp - 0x10], bx
mov rax, qword [rbp + 0x128]
cmp rax, 0xc
jb 0x14004b9ce
add rax, 0xfffffffffffffff4
mov r8, rdi
cmp rax, rdi
cmovb r8, rax
lea rdx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rdx, qword [rbp + 0x118]
add rdx, 0x18
lea rcx, [rbp - 0x10]
call fcn.140009140
nop
cmp word [0x140111460], 0
jne 0x14004b3c2
mov edx, 0x104
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 7
mov word [rbp - 0x30], bx
mov r8, rdi
nop dword [rax]
inc r8
cmp word [r15 + r8*2], 0
jne 0x14004b3e0
mov rdx, r15
lea rcx, [rbp - 0x30]
call fcn.140009140
nop
lea r8, [rbp - 0x10]
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0xb0]
call fcn.1400853e0
mov r14, rax
lea rax, [rbp + 0x118]
cmp rax, r14
je 0x14004b44e
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm0, xmmword [r14]
movups xmmword [rbp + 0x118], xmm0
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rbp + 0x128], xmm1
mov qword [r14 + 0x10], rbx
mov qword [r14 + 0x18], 7
mov word [r14], bx
mov rdx, qword [rbp + 0xc8]
cmp rdx, 8
jb 0x14004b494
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b48f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b9d4
call fcn.140091bc0
mov qword [rbp + 0xc0], rbx
mov qword [rbp + 0xc8], 7
mov word [rbp + 0xb0], bx
mov rdx, qword [rbp - 0x18]
cmp rdx, 8
jb 0x14004b4ee
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b4e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b9da
call fcn.140091bc0
nop
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x14004b820
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b81b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b9b6
jmp 0x14004b81b
cmp qword [rbp + 0x128], 8
jb 0x14004b820
lfence
lea rcx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rcx, qword [rbp + 0x118]
mov r8d, 8
lea rdx, str.System32
call fcn.1400a1aa4
test eax, eax
jne 0x14004b6ac
call fcn.140083f20
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x20], rbx
mov qword [rbp + 0x28], 7
mov word [rbp + 0x10], bx
mov r8, rdi
inc r8
cmp word [rax + r8*2], 0
jne 0x14004b594
mov rdx, rax
lea rcx, [rbp + 0x10]
call fcn.140009140
nop
lea r8, [rbp + 0x118]
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0xd0]
call fcn.1400853e0
mov r14, rax
lea rax, [rbp + 0x118]
cmp rax, r14
je 0x14004b605
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm0, xmmword [r14]
movups xmmword [rbp + 0x118], xmm0
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rbp + 0x128], xmm1
mov qword [r14 + 0x10], rbx
mov qword [r14 + 0x18], 7
mov word [r14], bx
mov rdx, qword [rbp + 0xe8]
cmp rdx, 8
jb 0x14004b64b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b646
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b9e0
call fcn.140091bc0
mov qword [rbp + 0xe0], rbx
mov qword [rbp + 0xe8], 7
mov word [rbp + 0xd0], bx
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x14004b820
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b81b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b9bc
jmp 0x14004b81b
cmp qword [rbp + 0x128], 8
jb 0x14004b820
lfence
lea rcx, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rcx, qword [rbp + 0x118]
mov r8d, 8
lea rdx, str.SysWOW64
call fcn.1400a1aa4
test eax, eax
jne 0x14004b820
call fcn.140083f20
mov qword [rbp + 0x30], rbx
mov qword [rbp + 0x40], rbx
mov qword [rbp + 0x48], 7
mov word [rbp + 0x30], bx
mov r8, rdi
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x14004b710
mov rdx, rax
lea rcx, [rbp + 0x30]
call fcn.140009140
nop
lea r8, [rbp + 0x118]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0xf0]
call fcn.1400853e0
mov r14, rax
lea rax, [rbp + 0x118]
cmp rax, r14
je 0x14004b781
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm0, xmmword [r14]
movups xmmword [rbp + 0x118], xmm0
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rbp + 0x128], xmm1
mov qword [r14 + 0x10], rbx
mov qword [r14 + 0x18], 7
mov word [r14], bx
mov rdx, qword [rbp + 0x108]
cmp rdx, 8
jb 0x14004b7c7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b7c2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b9e6
call fcn.140091bc0
mov qword [rbp + 0x100], rbx
mov qword [rbp + 0x108], 7
mov word [rbp + 0xf0], bx
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x14004b820
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b81b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b9b0
call fcn.140091bc0
cmp qword [rbp + 0x128], 2
jb 0x14004b88e
lea rax, [rbp + 0x118]
mov rcx, qword [rbp + 0x118]
mov r8, qword [rbp + 0x130]
cmp r8, 8
cmovae rax, rcx
cmp word [rax], 0x5c
je 0x14004b972
lea rax, [rbp + 0x118]
cmp r8, 8
cmovae rax, rcx
movzx ecx, word [rax]
call fcn.1400a5d14
test eax, eax
je 0x14004b88e
lea rax, [rbp + 0x118]
cmp qword [rbp + 0x130], 8
cmovae rax, qword [rbp + 0x118]
cmp word [rax + 2], 0x3a
je 0x14004b972
cmp word [0x140111460], 0
jne 0x14004b8a6
mov edx, 0x104
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], bx
nop word [rax + rax]
inc rdi
cmp word [r15 + rdi*2], 0
jne 0x14004b8c0
mov r8, rdi
mov rdx, r15
lea rcx, [rbp - 0x50]
call fcn.140009140
nop
lea r8, [rbp + 0x118]
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x50]
call fcn.1400853e0
mov rdi, rax
lea rax, [rbp + 0x118]
cmp rax, rdi
je 0x14004b92e
lea rcx, [rbp + 0x118]
call fcn.1400090d0
movups xmm0, xmmword [rdi]
movups xmmword [rbp + 0x118], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbp + 0x128], xmm1
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], 7
mov word [rdi], bx
mov r8, qword [rbp + 0x68]
cmp r8, 8
jb 0x14004b948
inc r8
mov rdx, qword [rbp + 0x50]
lea rcx, [rbp + 0x50]
call fcn.140009640
mov qword [rbp + 0x60], rbx
mov qword [rbp + 0x68], 7
mov word [rbp + 0x50], bx
mov r8, qword [rbp - 0x38]
cmp r8, 8
jb 0x14004b972
inc r8
mov rdx, qword [rbp - 0x50]
lea rcx, [rbp - 0x50]
call fcn.140009640
movups xmm0, xmmword [rbp + 0x118]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rbp + 0x128]
movups xmmword [rsi + 0x10], xmm1
mov rax, rsi
mov rcx, qword [rbp + 0x158]
xor rcx, rsp
call fcn.140091ba0
mov rbx, qword [rsp + 0x290]
add rsp, 0x260
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.14009b188
nop
call fcn.14009b188
int3
call fcn.14009b188
int3
call fcn.14009b188
int3
call fcn.14000fc80
int3
call fcn.14000fc80
nop
call fcn.14009b188
nop
call fcn.14009b188
nop
call fcn.14009b188
nop
call fcn.14009b188
int3