Function at 0x140019d70
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r12
sub rsp, 0x20
mov rbx, rcx
lea r12, [0x14010f570]
lea r8, str.CFileUninstaller::Delete__
mov rcx, r12
mov edx, 2
call fcn.140001000
xor ecx, ecx
call fcn.140058448
mov r11, qword [rbx]
mov rcx, rbx
call qword [r11 + 0x28]
lea rcx, [rbx + 0x19c]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
test eax, eax
je 0x14001a019
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rbx + 0x98]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
je 0x14001a04b
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rdx, [rbx + 0x3a4]
mov ecx, 0x104
call fcn.14005c0b0
test eax, eax
je 0x14001a06b
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rbx + 0x3a4]
call fcn.1400980d0
lea rdx, [rbx + 0x2a0]
mov ecx, 0x104
mov byte [rax + rbx + 0x3a3], 0
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
test eax, eax
je 0x14001a08b
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, rbx
call fcn.14000d008
lea rcx, [rbx + 0x2a0]
call fcn.1400980d0
mov esi, 1
mov byte [rax + rbx + 0x29f], 0
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019e83
mov r8d, esi
xor edx, edx
call fcn.14002d4bc
mov rcx, rbx
call fcn.140019748
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019ea1
mov r8d, esi
mov edx, 5
call fcn.14002d4bc
mov rcx, rbx
call fcn.14000fc88
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019ebf
mov r8d, esi
mov edx, 0xa
call fcn.14002d4bc
mov rcx, rbx
call fcn.14000f8f0
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019edd
mov r8d, esi
mov edx, reloc.OLEAUT32.dll_SafeArrayDestroy
call fcn.14002d4bc
mov rcx, rbx
call fcn.140010e50
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019efb
mov r8d, esi
mov edx, reloc.OLEAUT32.dll_SafeArrayLock
call fcn.14002d4bc
mov rcx, rbx
call fcn.140016974
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019f19
mov r8d, esi
mov edx, 0x1e
call fcn.14002d4bc
mov rcx, rbx
call fcn.140011404
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019f37
mov r8d, esi
mov edx, 0x28
call fcn.14002d4bc
mov rcx, rbx
call fcn.1400117cc
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019f55
mov r8d, esi
mov edx, 0x32
call fcn.14002d4bc
mov rcx, rbx
call fcn.1400161e0
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019f73
mov r8d, esi
mov edx, 0x3c
call fcn.14002d4bc
mov rcx, rbx
call fcn.1400105f8
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019f91
mov r8d, esi
mov edx, 0x46
call fcn.14002d4bc
mov rcx, rbx
call fcn.140018888
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019faf
mov r8d, esi
mov edx, 0x50
call fcn.14002d4bc
mov rcx, rbx
call fcn.140015dd8
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140019fcd
mov r8d, esi
mov edx, 0x5f
call fcn.14002d4bc
mov rcx, rbx
call fcn.14000f2dc
mov rcx, qword [rbx + 8]
mov edi, eax
test rcx, rcx
je 0x140019fed
mov r8d, esi
mov edx, 0x64
call fcn.14002d4bc
lea r8, str.CFileUninstaller::Delete__
mov edx, 4
mov rcx, r12
call fcn.140001000
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov eax, edi
mov rdi, qword [rsp + 0x40]
add rsp, 0x20
pop r12
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
test eax, eax
je 0x140019dd6
mov ecx, eax
call fcn.14004d8f0
lea r8, str.GetWindowsDirectory
lea rdx, str._s_failed_with__s_n
mov r9, rax
mov rcx, r12
call fcn.14004b7ec
jmp 0x14001a001
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
test eax, eax
je 0x140019df8
mov ecx, eax
call fcn.14004d8f0
lea r8, str.GetSystemDirectory
jmp 0x14001a037
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
test eax, eax
je 0x140019e19
mov ecx, eax
call fcn.14004d8f0
lea r8, str.GetICETempPath
jmp 0x14001a037
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
test eax, eax
je 0x140019e4f
mov ecx, eax
call fcn.14004d8f0
lea r8, str.GetTempPath
jmp 0x14001a037