Function at 0x180022dac
Capabilities:
Get common file path

Disassembly:
mov r11, rsp
push r12
sub rsp, 0x2a0
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
mov rax, qword [0x1801563c0]
xor rax, rsp
mov qword [rsp + 0x290], rax
mov rbx, qword [0x18015f768]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rbx
lea rax, [r11 - 0x228]
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
lea edx, [r9 + 0x1b]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
je 0x180022e64
lea rcx, [rbx - 0xc]
lea rsi, [0x18015f758]
or edi, 0xffffffff
cmp rcx, rsi
je 0x180022e3e
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180022e3e
call fcn.1800d1434
nop
mov rcx, qword [rsp + 0x30]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x180022e5d
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180022e5d
call fcn.1800d1434
xor eax, eax
jmp 0x1800233ed
lea rcx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r8, [rsp + 0x80]
mov edx, eax
lea rcx, [rsp + 0x30]
call fcn.180003e28
mov r11, qword [rsp + 0x30]
cmp dword [r11 - 8], 0
jle 0x180022e9c
lea rcx, [rsp + 0x30]
call fcn.1800cde54
lea r12, str.GoogleChromeApplication_
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8, r12
mov edx, eax
lea rcx, [rsp + 0x30]
call fcn.180008324
lea r8, str.chrome.exe
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x58]
call fcn.1800084fc
nop
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.180003500
nop
mov rcx, qword [rsp + 0x58]
add rcx, 0xfffffffffffffff4
lea rsi, [0x18015f758]
or edi, 0xffffffff
cmp rcx, rsi
je 0x180022f12
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180022f12
mov rcx, qword [rsp + 0x58]
add rcx, 0xfffffffffffffff4
call fcn.1800d1434
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x40]
call fcn.1800041c0
nop
mov rax, qword [rsp + 0x40]
cmp dword [rax - 8], 0
jle 0x180022f3a
lea rcx, [rsp + 0x40]
call fcn.1800cde54
lea rcx, str.GoogleChromeUser_DataDefault
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r8, str.GoogleChromeUser_DataDefault
mov edx, eax
lea rcx, [rsp + 0x40]
call fcn.180008324
lea rdx, [rsp + 0x38]
lea rbx, [0x18015f720]
mov rcx, rbx
call fcn.1800ce3c8
test eax, eax
jne 0x180023289
lea rdx, str.Chrome_not_found_in_AppData_folder._Checking_Program_files
lea rbp, [0x18015f578]
mov rcx, rbp
call fcn.1800098e8
lea r11, [rsp + 0x80]
mov qword [rsp + 0x20], r11
mov r9d, 1
xor r8d, r8d
lea edx, [r9 + 0x25]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
je 0x180023018
mov rcx, qword [rsp + 0x40]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x180022fd2
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180022fd2
call fcn.1800d1434
nop
mov rcx, qword [rsp + 0x38]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x180022ff2
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180022ff2
call fcn.1800d1434
nop
mov rcx, qword [rsp + 0x30]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x180023011
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180023011
call fcn.1800d1434
xor eax, eax
jmp 0x1800233ed
lea rcx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r8, [rsp + 0x80]
mov edx, eax
lea rcx, [rsp + 0x30]
call fcn.180003e28
mov r11, qword [rsp + 0x30]
cmp dword [r11 - 8], 0
jle 0x180023050
lea rcx, [rsp + 0x30]
call fcn.1800cde54
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8, r12
mov edx, eax
lea rcx, [rsp + 0x30]
call fcn.180008324
lea r8, str.chrome.exe
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x68]
call fcn.1800084fc
nop
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.180003500
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x1800230b5
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x1800230b5
mov rcx, qword [rsp + 0x68]
add rcx, 0xfffffffffffffff4
call fcn.1800d1434
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.1800ce3c8
test eax, eax
jne 0x180023289
lea rdx, str.Chrome_not_found_in_Program_Files_folder._Checking_Program_files__x86_
mov rcx, rbp
call fcn.1800098e8
lea r11, [rsp + 0x80]
mov qword [rsp + 0x20], r11
mov r9d, 1
xor r8d, r8d
lea edx, [r9 + 0x29]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
je 0x180023165
mov rcx, qword [rsp + 0x40]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x18002311f
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x18002311f
call fcn.1800d1434
nop
mov rcx, qword [rsp + 0x38]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x18002313f
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x18002313f
call fcn.1800d1434
nop
mov rcx, qword [rsp + 0x30]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x18002315e
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x18002315e
call fcn.1800d1434
xor eax, eax
jmp 0x1800233ed
lea rcx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r8, [rsp + 0x80]
mov edx, eax
lea rcx, [rsp + 0x30]
call fcn.180003e28
mov r11, qword [rsp + 0x30]
cmp dword [r11 - 8], 0
jle 0x18002319d
lea rcx, [rsp + 0x30]
call fcn.1800cde54
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8, r12
mov edx, eax
lea rcx, [rsp + 0x30]
call fcn.180008324
lea r8, str.chrome.exe
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x60]
call fcn.1800084fc
nop
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.180003500
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xfffffffffffffff4
cmp rdx, rsi
je 0x180023202
mov eax, edi
lock xadd dword [rdx], eax
add eax, edi
test eax, eax
jg 0x180023202
mov rcx, qword [rsp + 0x60]
add rcx, 0xfffffffffffffff4
call fcn.1800d1434
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.1800ce3c8
test eax, eax
jne 0x180023289
lea rdx, str.Chrome_not_found_in_Program_Files__x86__folder._Assuming_chrome_is_not_installed.
mov rcx, rbp
call fcn.1800098e8
nop
mov rcx, qword [rsp + 0x40]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x180023243
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180023243
call fcn.1800d1434
nop
mov rcx, qword [rsp + 0x38]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x180023263
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180023263
call fcn.1800d1434
nop
mov rcx, qword [rsp + 0x30]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x180023282
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180023282
call fcn.1800d1434
xor eax, eax
jmp 0x1800233ed
mov rbx, qword [rsp + 0x40]
lea r12, [rbx - 0xc]
cmp dword [r12], 0
jl 0x1800232a6
mov qword [rsp + 0x48], rbx
lock add dword [r12], 1
jmp 0x1800232ca
mov rax, qword [0x18015f768]
mov qword [rsp + 0x48], rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8, rbx
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.180003e28
lea rax, [rsp + 0x48]
mov qword [rsp + 0x70], rax
lea rdx, [rsp + 0x48]
lea rcx, [0x180162a60]
call fcn.180003500
nop
mov rcx, qword [rsp + 0x48]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x18002330e
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x18002330e
mov rcx, qword [rsp + 0x48]
add rcx, 0xfffffffffffffff4
call fcn.1800d1434
mov rbx, qword [rsp + 0x30]
lea rbp, [rbx - 0xc]
cmp dword [rbp], 0
jl 0x180023329
mov qword [rsp + 0x50], rbx
lock add dword [rbp], 1
jmp 0x18002334d
mov rax, qword [0x18015f768]
mov qword [rsp + 0x50], rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8, rbx
mov edx, eax
lea rcx, [rsp + 0x50]
call fcn.180003e28
lea rax, [rsp + 0x50]
mov qword [rsp + 0x70], rax
lea rdx, [rsp + 0x50]
lea rcx, [0x180162a68]
call fcn.180003500
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x180023392
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x180023392
mov rcx, qword [rsp + 0x50]
add rcx, 0xfffffffffffffff4
call fcn.1800d1434
nop
cmp r12, rsi
je 0x1800233ae
mov eax, edi
lock xadd dword [r12], eax
add eax, edi
test eax, eax
jg 0x1800233ae
mov rcx, r12
call fcn.1800d1434
nop
mov rcx, qword [rsp + 0x38]
add rcx, 0xfffffffffffffff4
cmp rcx, rsi
je 0x1800233ce
mov eax, edi
lock xadd dword [rcx], eax
add eax, edi
test eax, eax
jg 0x1800233ce
call fcn.1800d1434
nop
cmp rbp, rsi
je 0x1800233e8
mov edx, edi
lock xadd dword [rbp], edx
add edx, edi
test edx, edx
jg 0x1800233e8
mov rcx, rbp
call fcn.1800d1434
mov eax, 1
mov rcx, qword [rsp + 0x290]
xor rcx, rsp
call fcn.1800d12b0
lea r11, [rsp + 0x2a0]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r12
ret