Function at 0x14001be60
Capabilities:
Check if file exists

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2e8
movaps xmmword [rsp + 0x2d0], xmm7
movaps xmmword [rsp + 0x2c0], xmm6
mov r13, r9
mov r12, r8
mov r14, rdx
mov rdi, rcx
mov rax, qword [0x140178028]
xor rax, rsp
mov qword [rsp + 0x2b8], rax
movaps xmm6, xmmword [0x140156180]
lea rcx, [rsp + 0x60]
movaps xmmword [rcx], xmm6
xor edx, edx
call fcn.140075330
call qword [sym.imp.ole32.dll_CoImpersonateClient]
test eax, eax
js 0x14001c193
mov ebx, dword [rsp + 0x360]
movabs r15, 0xaaaaaaaaaaaaaaaa
lea rbp, [rsp + 0x1b0]
mov qword [rbp], r15
mov ecx, 0x28
call fcn.1400a7064
mov rsi, rax
lea rdx, [0x14001ca30]
lea r8, [0x14001ca40]
mov rcx, rax
call fcn.140070cb0
lea rdx, [rsp + 0x280]
mov qword [rdx], rsi
mov rcx, rbp
call fcn.140070c20
lea rsi, [rsp + 0x70]
mov rcx, rsi
mov edx, ebx
mov r8d, 0x40
call fcn.1400f4f00
lea rbx, [rsp + 0x60]
mov rcx, rbx
mov rdx, rsi
call fcn.1400753e0
mov rcx, rsi
call fcn.1400753b0
mov rcx, rbx
call fcn.140075490
test al, al
je 0x14001c19a
mov rsi, qword [rsp + 0x350]
lea rcx, [rsp + 0x1b0]
call fcn.140070c50
lea rcx, [rsp + 0x40]
mov qword [rcx + 0x10], r15
movaps xmmword [rcx], xmm6
call fcn.1400f2e10
lea rbx, [rsp + 0x260]
mov qword [rbx + 0x10], r15
movaps xmmword [rbx], xmm6
mov rcx, rbx
call fcn.1400f2e10
mov rcx, rbx
mov rdx, rsi
call fcn.1400f2f30
test al, al
je 0x14001c1c4
lea rsi, [rsp + 0x240]
mov qword [rsi + 0x10], r15
movaps xmmword [rsi], xmm6
lea rcx, [rsp + 0x260]
call fcn.1400d87a0
lea rcx, str.ChromeRecoveryCRX.crx
lea r8, [rsp + 0x230]
mov qword [r8], rcx
mov qword [r8 + 8], 0x15
mov rcx, rax
mov rdx, rsi
call fcn.140072350
lea rcx, [rsp + 0x218]
mov rdx, rdi
call fcn.140071a70
lea rcx, [rsp + 0x70]
movaps xmmword [rcx + 0x20], xmm6
movaps xmmword [rcx + 0x10], xmm6
movaps xmmword [rcx], xmm6
call fcn.14002e940
call qword [sym.imp.ole32.dll_CoImpersonateClient]
test eax, eax
js 0x14001c20c
lea rsi, [rsp + 0x280]
mov qword [rsi], r15
mov ecx, 0x28
call fcn.1400a7064
mov rdi, rax
lea rdx, [0x14001ca30]
lea r8, [0x14001ca40]
mov rcx, rax
call fcn.140070cb0
lea rdx, [rsp + 0x200]
mov qword [rdx], rdi
mov rcx, rsi
call fcn.140070c20
lea rsi, [rsp + 0x70]
lea rdx, [rsp + 0x218]
mov rcx, rsi
mov r8d, 0x80021
call fcn.14002e9d0
mov rcx, rsi
call fcn.140075090
test al, al
je 0x14001c210
lea rcx, [rsp + 0x70]
call fcn.1400325a0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileType]
mov ebx, 0x80070057
cmp eax, 1
jne 0x14001c22f
lea rcx, [rsp + 0x70]
call fcn.1400326e0
dec rax
cmp rax, 0x98967e
ja 0x14001c22f
lea rsi, [rsp + 0x280]
mov rcx, rsi
call fcn.140070c50
movaps xmmword [rsi + 0x20], xmm6
movaps xmmword [rsi + 0x10], xmm6
movaps xmmword [rsi], xmm6
lea rsi, [rsp + 0x280]
mov rcx, rsi
call fcn.14002e940
lea rdx, [rsp + 0x240]
mov rcx, rsi
mov r8d, 0x80048
call fcn.14002e9d0
mov rcx, rsi
call fcn.140075090
test al, al
je 0x14001c741
mov ecx, 0x10000
call fcn.1400a7064
mov rdi, rax
xor esi, esi
mov r8d, 0x10000
mov rcx, rax
xor edx, edx
call fcn.1400aa5c0
lea rbx, [rsp + 0x70]
lea r15, [rsp + 0x280]
mov rcx, rbx
mov rdx, rdi
mov r8d, 0x10000
call fcn.1400751e0
test eax, eax
js 0x14001c7c4
je 0x14001c7fb
mov ebp, eax
mov eax, eax
add rsi, rax
cmp rsi, 0x989680
ja 0x14001c7ff
mov rcx, r15
mov rdx, rdi
mov r8d, ebp
call fcn.1400325b0
test eax, eax
js 0x14001c7c4
cmp eax, ebp
je 0x14001c13c
mov ebx, 0x8000ffff
jmp 0x14001c804
mov ebx, eax
jmp 0x14001c6f8
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x14001c1f5
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
lea rcx, [rsp + 0x1b0]
call fcn.140070c50
jmp 0x14001c6f8
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
jne 0x14001c4bc
lea rcx, [rsp + 0x260]
call fcn.1400f2f00
mov ebx, 0x80004005
jmp 0x14001c6ee
lea rcx, [rsp + 0x1b0]
call fcn.140070c50
mov ebx, 0x80004005
jmp 0x14001c6f8
mov ebx, eax
jmp 0x14001c23c
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x14001c22a
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
jmp 0x14001c22f
mov ebx, 0x80004005
lea rcx, [rsp + 0x280]
call fcn.140070c50
lea rcx, [rsp + 0x70]
call fcn.140071990
lea rcx, [rsp + 0x218]
call fcn.140071ba0
test ebx, ebx
js 0x14001c4af
mov qword [rsp + 0x38], r14
xorps xmm7, xmm7
movaps xmmword [rsp + 0x280], xmm7
xor r14d, r14d
mov qword [rsp + 0x290], r14
mov qword [rsp + 0x80], r14
movaps xmmword [rsp + 0x70], xmm7
mov rsi, qword [r13]
mov rbx, qword [r13 + 8]
mov rcx, rbx
mov edi, 0
sub rcx, rsi
jne 0x14001c762
mov ecx, 0x18
call fcn.1400a7064
mov qword [rsp + 0x200], rax
mov qword [rsp + 0x208], rax
lea rbx, [rax + 0x18]
mov qword [rsp + 0x210], rbx
mov rbp, rdi
movups xmmword [rax], xmm7
mov qword [rax + 0x10], 0
sub rbp, r14
jne 0x14001c787
lea rdi, [rsp + 0x200]
mov qword [rdi + 8], rbx
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
lea rax, [rsp + 0x280]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x240]
lea r9, [rsp + 0x70]
mov rdx, r12
mov r8, rdi
call fcn.140035470
mov esi, eax
mov rdi, qword [rdi]
test rdi, rdi
je 0x14001c35f
mov rax, qword [rsp + 0x208]
mov rcx, rdi
cmp rax, rdi
je 0x14001c352
lea rbx, [rax - 0x18]
mov rcx, qword [rax - 0x18]
test rcx, rcx
je 0x14001c342
mov qword [rax - 0x10], rcx
call fcn.1400a70a0
mov rax, rbx
cmp rbx, rdi
jne 0x14001c32c
mov rcx, qword [rsp + 0x200]
mov qword [rsp + 0x208], rdi
call fcn.1400a70a0
test r14, r14
je 0x14001c36c
mov rcx, r14
call fcn.1400a70a0
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14001c380
mov qword [rsp + 0x78], rcx
call fcn.1400a70a0
mov ebx, 0x80092009
test esi, esi
mov r14, qword [rsp + 0x38]
jne 0x14001c498
xorps xmm0, xmm0
lea rsi, [rsp + 0x1b0]
movaps xmmword [rsi], xmm0
xor eax, eax
mov qword [rsi + 0x10], rax
movups xmmword [rsi + 0x18], xmm0
movups xmmword [rsi + 0x28], xmm0
mov qword [rsi + 0x38], rax
mov byte [rsi + 0x40], 0
lea rcx, [rsp + 0x260]
call fcn.1400d87a0
lea rcx, [rsp + 0x240]
mov rdx, rax
mov r8, rsi
call fcn.140036490
mov ebx, 0x8000ffff
test al, al
je 0x14001c498
mov ecx, 1
call fcn.140072b30
test al, al
je 0x14001c42a
lea rcx, [rsp + 0x240]
call fcn.140031940
test al, al
jne 0x14001c42a
lea rdx, str.....chromeelevation_serviceelevated_recovery_impl.cc
lea rsi, [rsp + 0x70]
mov rcx, rsi
mov r8d, 0xbe
mov r9d, 1
call fcn.14002f770
mov rcx, rsi
call fcn.14002fc60
mov ecx, 1
call fcn.140072b30
xor ebx, ebx
test al, al
je 0x14001c498
lea rcx, [rsp + 0x260]
lea rsi, [rsp + 0x200]
mov rdx, rsi
call fcn.1400f2e20
lea rcx, [rsp + 0x40]
mov rdx, rsi
call fcn.1400f2fc0
test al, al
jne 0x14001c48b
lea rdx, str.....chromeelevation_serviceelevated_recovery_impl.cc
lea rsi, [rsp + 0x70]
mov rcx, rsi
mov r8d, 0xc0
mov r9d, 1
call fcn.14002f770
mov rcx, rsi
call fcn.14002fc60
lea rcx, [rsp + 0x200]
call fcn.140071ba0
cmp byte [rsp + 0x297], 0
jns 0x14001c4af
mov rcx, qword [rsp + 0x280]
call fcn.1400a70a0
lea rcx, [rsp + 0x240]
call fcn.140071ba0
lea rcx, [rsp + 0x260]
call fcn.1400f2f00
test ebx, ebx
js 0x14001c6ee
mov rsi, qword [rsp + 0x358]
lea rdi, [rsp + 0x280]
mov qword [rdi + 0x10], r15
movaps xmmword [rdi], xmm6
lea rcx, [rsp + 0x40]
call fcn.1400d87a0
mov rcx, rax
mov rdx, rdi
mov r8, rsi
call fcn.14002f170
lea rsi, [rsp + 0x1b0]
mov qword [rsi + 0x40], r15
movaps xmmword [rsi + 0x30], xmm6
movaps xmmword [rsi + 0x20], xmm6
movaps xmmword [rsi + 0x10], xmm6
movaps xmmword [rsi], xmm6
mov rcx, rsi
mov rdx, rdi
call fcn.14002c130
xor ebp, ebp
mov rcx, rsi
mov rdx, r14
xor r8d, r8d
call fcn.1400f2880
lea rdi, [rsp + 0x70]
mov r8d, 0x98
mov rcx, rdi
mov dl, 0xaa
call fcn.1400aa5c0
mov rcx, rdi
call fcn.1400313f0
mov byte [rdi + 0x22], 1
lea rcx, [rsp + 0x78]
call fcn.140031da0
lea rbx, [rsp + 0x260]
movaps xmmword [rbx], xmm6
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.140032d10
mov rcx, rbx
call fcn.140075490
test al, al
je 0x14001c616
lea rsi, [rsp + 0x240]
mov qword [rsi], 0
lea rcx, [rsp + 0x60]
call fcn.1400754b0
mov rdi, rax
lea rcx, [rsp + 0x260]
call fcn.1400754b0
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], 0x101000
mov rcx, rax
mov rdx, rbx
mov r8, rdi
mov r9, rsi
call qword [sym.imp.KERNEL32.dll_DuplicateHandle]
test eax, eax
je 0x14001c616
mov rsi, qword [rsp + 0x240]
test rsi, rsi
je 0x14001c738
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor ebx, ebx
cmp rsi, 0xffffffffffffffff
je 0x14001c82d
call fcn.140072b20
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x14001c634
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov ebx, 0x80004005
cmovne ebx, ecx
xor esi, esi
lea rcx, [rsp + 0x260]
call fcn.1400753b0
lea rcx, [rsp + 0x70]
call fcn.140031460
test ebx, ebx
js 0x14001c6bd
mov r14, qword [rsp + 0x368]
lea rcx, [rsp + 0x40]
lea rdi, [rsp + 0x70]
mov rdx, rdi
call fcn.1400f2e20
mov rcx, rdi
call fcn.14001c840
mov rcx, rdi
call fcn.140071ba0
lea rbp, [rsi + 1]
cmp rbp, 2
jb 0x14001c688
call fcn.140072b20
cmp qword [r14], rsi
je 0x14001c6bb
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov rax, qword [r14]
inc rax
cmp rax, 2
jae 0x14001c7e2
cmp rbp, 2
jb 0x14001c6b3
mov qword [r14], rsi
call fcn.140072b20
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor esi, esi
lea rax, [rsi + 1]
cmp rax, 2
jb 0x14001c6d4
call fcn.140072b20
mov rcx, rsi
call fcn.1400759f0
lea rcx, [rsp + 0x1b0]
call fcn.14002c3f0
lea rcx, [rsp + 0x280]
call fcn.140071ba0
lea rcx, [rsp + 0x40]
call fcn.1400f2f00
lea rcx, [rsp + 0x60]
call fcn.1400753b0
mov rcx, qword [rsp + 0x2b8]
xor rcx, rsp
call fcn.1400a8490
mov eax, ebx
movaps xmm6, xmmword [rsp + 0x2c0]
movaps xmm7, xmmword [rsp + 0x2d0]
add rsp, 0x2e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor esi, esi
xor ebx, ebx
jmp 0x14001c634
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov ebx, 0x80004005
cmovne ebx, ecx
jmp 0x14001c81b
js 0x14001c834
call fcn.1400a7064
mov r14, rax
mov rdi, rax
mov al, byte [rsi]
mov byte [rdi], al
inc rsi
inc rdi
cmp rsi, rbx
jne 0x14001c773
jmp 0x14001c29c
js 0x14001c834
mov rsi, rax
mov rcx, rbp
call fcn.1400a7064
mov qword [rsi], rax
mov qword [rsi + 8], rax
mov rcx, rax
add rcx, rbp
mov qword [rsi + 0x10], rcx
mov rcx, r14
mov dl, byte [rcx]
mov byte [rax], dl
inc rcx
inc rax
cmp rcx, rdi
jne 0x14001c7ac
mov qword [rsi + 8], rax
jmp 0x14001c2d9
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov ebx, 0x80004005
cmovne ebx, ecx
jmp 0x14001c804
call fcn.140072b20
mov rcx, qword [r14]
call fcn.1400759f0
mov qword [r14], 0
jmp 0x14001c6a5
xor ebx, ebx
jmp 0x14001c804
mov ebx, 0x80070057
test rdi, rdi
movabs r15, 0xaaaaaaaaaaaaaaaa
je 0x14001c81b
mov rcx, rdi
call fcn.1400a70a0
lea rcx, [rsp + 0x280]
call fcn.140071990
jmp 0x14001c23c
xor esi, esi
jmp 0x14001c60c
call fcn.1400bc5c0
int3