Function at 0x140027ee0
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 rbx, r9
mov rdi, r8
mov rsi, rdx
mov r15, rcx
mov rax, qword [0x140192040]
xor rax, rsp
mov qword [rsp + 0x2b8], rax
movaps xmm6, xmmword [0x1401667f0]
lea rcx, [rsp + 0xb0]
movaps xmmword [rcx], xmm6
xor edx, edx
call fcn.140036bb0
call qword [sym.imp.ole32.dll_CoImpersonateClient]
test eax, eax
js 0x140027fbe
mov edx, dword [rsp + 0x360]
lea r14, [rsp + 0xc0]
mov rcx, r14
mov r8d, 0x40
call fcn.140103070
lea r12, [rsp + 0xb0]
mov rcx, r12
mov rdx, r14
call fcn.140036c60
mov rcx, r14
call fcn.140036c30
mov rcx, r12
call fcn.14007c990
test al, al
jne 0x140028005
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x140027fb0
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
call qword [sym.imp.ole32.dll_CoRevertToSelf]
test r14d, r14d
jns 0x14002800b
jmp 0x140027fc1
call qword [sym.imp.ole32.dll_CoRevertToSelf]
mov r14d, 0x80004005
jmp 0x140027fc1
mov r14d, eax
lea rcx, [rsp + 0xb0]
call fcn.140036c30
mov rcx, qword [rsp + 0x2b8]
xor rcx, rsp
call fcn.1400b4140
mov eax, r14d
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
call qword [sym.imp.ole32.dll_CoRevertToSelf]
mov r14, qword [rsp + 0x350]
movabs rbp, 0xaaaaaaaaaaaaaaaa
lea rcx, [rsp + 0x90]
mov qword [rcx + 0x10], rbp
movaps xmmword [rcx], xmm6
call fcn.140103ad0
lea r12, [rsp + 0x250]
mov qword [r12 + 0x10], rbp
movaps xmmword [r12], xmm6
mov rcx, r12
call fcn.140103ad0
mov rcx, r12
mov rdx, r14
call fcn.140103c00
test al, al
je 0x14002851b
lea r14, [rsp + 0x230]
mov qword [r14 + 0x10], rbp
movaps xmmword [r14], xmm6
lea rcx, [rsp + 0x250]
call fcn.1400e6c10
lea rcx, str.ChromeRecoveryCRX.crx
lea r8, [rsp + 0x220]
mov qword [r8], rcx
mov qword [r8 + 8], 0x15
mov rcx, rax
mov rdx, r14
call fcn.140082150
lea rcx, [rsp + 0x208]
mov rdx, r15
call fcn.1400810b0
lea rcx, [rsp + 0xc0]
movaps xmmword [rcx + 0x20], xmm6
movaps xmmword [rcx + 0x10], xmm6
movaps xmmword [rcx], xmm6
call fcn.14003f390
call qword [sym.imp.ole32.dll_CoImpersonateClient]
test eax, eax
js 0x1400282cd
lea r14, [rsp + 0xc0]
lea rdx, [rsp + 0x208]
mov rcx, r14
mov r8d, 0x80021
call fcn.14003f420
mov rcx, r14
call fcn.14007d470
test al, al
je 0x140028149
lea rcx, [rsp + 0xc0]
call fcn.140037c40
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileType]
mov r14d, 0x80070057
cmp eax, 1
jne 0x14002824f
lea rcx, [rsp + 0xc0]
call fcn.140037d80
dec rax
cmp rax, 0x98967e
ja 0x14002824f
call qword [sym.imp.ole32.dll_CoRevertToSelf]
jmp 0x140028177
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x140028249
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
call qword [sym.imp.ole32.dll_CoRevertToSelf]
test r14d, r14d
js 0x1400282d0
lea r14, [rsp + 0x270]
movaps xmmword [r14 + 0x20], xmm6
movaps xmmword [r14 + 0x10], xmm6
movaps xmmword [r14], xmm6
mov rcx, r14
call fcn.14003f390
lea rdx, [rsp + 0x230]
mov rcx, r14
mov r8d, 0x80048
call fcn.14003f420
mov rcx, r14
call fcn.14007d470
test al, al
je 0x1400282a0
mov ecx, 0x10000
call fcn.1400b2e18
mov r15, rax
mov r13, 0xffffffffffffffff
lea rax, [r15 + r13]
cmp rax, 0xffffffffffffffff
je 0x1400288d5
mov byte [r15 + r13 + 1], 0
inc r13
cmp r13, 0xffff
jne 0x1400281cf
xor r12d, r12d
lea r14, [rsp + 0xc0]
mov rcx, r14
mov rdx, r15
mov r8d, 0x10000
call fcn.14007d5c0
test eax, eax
js 0x14002825f
je 0x140028244
mov ebp, eax
mov eax, eax
add r12, rax
cmp r12, 0x989680
ja 0x140028257
lea rcx, [rsp + 0x270]
mov rdx, r15
mov r8d, ebp
call fcn.140037c50
test eax, eax
js 0x14002825f
cmp eax, ebp
je 0x1400281fa
mov r14d, 0x8000ffff
jmp 0x14002827d
xor r14d, r14d
jmp 0x14002827d
mov r14d, 0x80004005
call qword [sym.imp.ole32.dll_CoRevertToSelf]
jmp 0x1400282d0
mov r14d, 0x80070057
jmp 0x14002827d
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov r14d, 0x80004005
cmovne r14d, ecx
test r15, r15
movabs rbp, 0xaaaaaaaaaaaaaaaa
je 0x1400282be
mov rax, r15
add rax, r13
cmp r13, rax
jae 0x140028463
jmp 0x140028919
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov r14d, 0x80004005
cmovne r14d, ecx
lea rcx, [rsp + 0x270]
call fcn.140082d10
jmp 0x1400282d0
mov r14d, eax
lea rcx, [rsp + 0xc0]
call fcn.140082d10
lea rcx, [rsp + 0x208]
call fcn.140081240
test r14d, r14d
js 0x14002850c
xorps xmm0, xmm0
movaps xmmword [rsp + 0x270], xmm0
xor r14d, r14d
mov qword [rsp + 0x280], r14
mov qword [rsp + 0xd0], r14
movaps xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0x2b0], r14
movaps xmmword [rsp + 0x2a0], xmm0
mov r15, qword [rbx]
mov r12, qword [rbx + 8]
mov ebx, 0
sub r12, r15
je 0x140028375
js 0x140028926
mov rcx, r12
call fcn.1400b2e18
mov r14, rax
mov qword [rsp + 0x2a0], rax
lea rbx, [rax + r12]
mov qword [rsp + 0x2b0], rbx
mov rcx, rax
mov rdx, r15
mov r8, r12
call fcn.1400e61a0
mov qword [rsp + reloc.SHELL32.dll_IsUserAnAdmin], rbx
mov ecx, 0x18
call fcn.1400b2e18
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rax
lea r12, [rax + 0x18]
mov qword [rsp + 0x200], r12
test rax, rax
je 0x1400288d5
mov r15, rax
xorps xmm7, xmm7
movups xmmword [rax], xmm7
mov qword [rax + 0x10], 0
sub rbx, r14
je 0x1400283e9
js 0x140028933
mov rcx, rbx
call fcn.1400b2e18
mov qword [r15], rax
mov qword [r15 + 8], rax
lea r13, [rax + rbx]
mov qword [r15 + 0x10], r13
mov rcx, rax
mov rdx, r14
mov r8, rbx
call fcn.1400e61a0
mov qword [r15 + 8], r13
lea rbx, [rsp + 0x1f0]
mov qword [rbx + 8], r12
movups xmmword [rsp + 0x28], xmm7
lea rax, [rsp + 0x270]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x230]
lea r9, [rsp + 0xc0]
mov rdx, rdi
mov r8, rbx
call fcn.140105f30
mov edi, eax
mov rbx, qword [rbx]
test rbx, rbx
je 0x140028497
mov r14, qword [rsp + 0x1f8]
mov rcx, rbx
cmp r14, rbx
je 0x14002848a
add r14, 0xffffffffffffffe8
test r14, r14
je 0x140028463
mov rcx, qword [r14]
test rcx, rcx
je 0x140028476
mov rax, qword [r14 + 8]
mov rdx, rax
sub rdx, rcx
dec rax
cmp rdx, rax
jbe 0x1400288f9
lea rcx, [0x1401668da]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:66:_assertion___loc___nullptr_failed:_null_pointer_given_to_destroy_at_n
call fcn.1400e9b50
lea rax, [r14 - 0x18]
cmp r14, rbx
mov r14, rax
jne 0x140028440
mov rcx, qword [rsp + 0x1f0]
mov qword [rsp + 0x1f8], rbx
call fcn.1400b2e54
mov rcx, qword [rsp + 0x2a0]
test rcx, rcx
je 0x1400284bf
mov rax, qword [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
mov rdx, rax
sub rdx, rcx
dec rax
cmp rdx, rax
ja 0x140028463
jmp 0x1400288ef
mov rcx, qword [rsp + 0xc0]
test rcx, rcx
je 0x1400284e7
mov rax, qword [rsp + 0xc8]
mov rdx, rax
sub rdx, rcx
dec rax
cmp rdx, rax
ja 0x140028463
jmp 0x140028907
mov r14d, 0x80092009
test edi, edi
je 0x1400287c4
cmp byte [rsp + 0x287], 0
jns 0x14002850c
mov rcx, qword [rsp + 0x270]
call fcn.1400b2e54
lea rcx, [rsp + 0x230]
call fcn.140081240
jmp 0x140028538
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r14d, ax
or r14d, 0x80070000
test eax, eax
cmovle r14d, eax
je 0x14002869d
lea rcx, [rsp + 0x250]
call fcn.140103bc0
test r14d, r14d
js 0x140028792
mov rdi, qword [rsp + 0x358]
lea rbx, [rsp + 0x270]
mov qword [rbx + 0x10], rbp
movaps xmmword [rbx], xmm6
lea rcx, [rsp + 0x90]
call fcn.1400e6c10
mov rcx, rax
mov rdx, rbx
mov r8, rdi
call fcn.14003eeb0
lea rdi, [rsp + 0x40]
movaps xmmword [rdi + 0x40], xmm6
movaps xmmword [rdi + 0x30], xmm6
movaps xmmword [rdi + 0x20], xmm6
movaps xmmword [rdi + 0x10], xmm6
movaps xmmword [rdi], xmm6
mov rcx, rdi
mov rdx, rbx
call fcn.14003f560
xor ebp, ebp
mov rcx, rdi
mov rdx, rsi
xor r8d, r8d
call fcn.140105940
lea rsi, [rsp + 0xc0]
mov r8d, 0x98
mov rcx, rsi
mov dl, 0xaa
call fcn.1400e6840
mov rcx, rsi
call fcn.14003aac0
mov byte [rsi + 0x22], 1
lea rcx, [rsp + 0xc8]
call fcn.140038a20
lea rbx, [rsp + 0x250]
movaps xmmword [rbx], xmm6
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
call fcn.140037290
mov rcx, rbx
call fcn.14007c990
test al, al
je 0x1400286b5
lea rsi, [rsp + 0x230]
mov qword [rsi], 0
lea rcx, [rsp + 0xb0]
call fcn.14007c9b0
mov rdi, rax
lea rcx, [rsp + 0x250]
call fcn.14007c9b0
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 0x1400286b5
mov rsi, qword [rsp + 0x230]
test rsi, rsi
je 0x1400287ba
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor r14d, r14d
cmp rsi, 0xffffffffffffffff
je 0x1400288e8
call fcn.140081080
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x1400286d5
lea rcx, [rsp + 0x250]
call fcn.140103bc0
mov r14d, 0x80004005
jmp 0x140028792
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov r14d, 0x80004005
cmovne r14d, ecx
xor esi, esi
lea rcx, [rsp + 0x250]
call fcn.140036c30
lea rcx, [rsp + 0xc0]
call fcn.14003ab30
test r14d, r14d
js 0x140028764
mov rbx, qword [rsp + 0x368]
lea rcx, [rsp + 0x90]
lea rdi, [rsp + 0xc0]
mov rdx, rdi
call fcn.140103ae0
mov rcx, rdi
call fcn.140028940
mov rcx, rdi
call fcn.140081240
lea r15, [rsi + 1]
cmp r15, 2
jb 0x140028733
call fcn.140081080
cmp qword [rbx], rsi
je 0x140028762
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov rax, qword [rbx]
inc rax
cmp rax, 2
jae 0x1400287a4
cmp r15, 2
jb 0x14002875a
mov qword [rbx], rsi
call fcn.140081080
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor esi, esi
lea rax, [rsi + 1]
cmp rax, 2
jb 0x14002877b
call fcn.140081080
mov rcx, rsi
call fcn.14007c410
lea rcx, [rsp + 0x40]
call fcn.14003f9b0
lea rcx, [rsp + 0x270]
call fcn.140081240
lea rcx, [rsp + 0x90]
call fcn.140103bc0
jmp 0x140027fc1
call fcn.140081080
mov rcx, qword [rbx]
call fcn.14007c410
mov qword [rbx], 0
jmp 0x14002874c
xor esi, esi
xor r14d, r14d
jmp 0x1400286d5
xorps xmm0, xmm0
lea rdi, [rsp + 0x40]
movaps xmmword [rdi + 0x30], xmm0
movaps xmmword [rdi + 0x20], xmm0
movaps xmmword [rdi + 0x10], xmm0
movaps xmmword [rdi], xmm0
mov byte [rdi + 0x40], 0
lea rcx, [rsp + 0x250]
call fcn.1400e6c10
lea rcx, [rsp + 0x230]
mov rdx, rax
mov r8, rdi
call fcn.140107920
mov r14d, 0x8000ffff
test al, al
je 0x1400284f5
mov ecx, 1
call fcn.14007fd90
test al, al
je 0x140028857
lea rcx, [rsp + 0x230]
call fcn.140038460
test al, al
jne 0x140028857
lea rdx, str.....chromeelevation_serviceelevated_recovery_impl.cc
lea rdi, [rsp + 0xc0]
mov rcx, rdi
mov r8d, 0xbc
mov r9d, 1
call fcn.14003c860
mov rcx, rdi
call fcn.14003ce70
mov ecx, 1
call fcn.14007fd90
xor r14d, r14d
test al, al
je 0x1400284f5
lea rcx, [rsp + 0x250]
lea rdi, [rsp + 0x1f0]
mov rdx, rdi
call fcn.140103ae0
lea rcx, [rsp + 0x90]
mov rdx, rdi
call fcn.140103c90
test al, al
jne 0x1400288c3
lea rdx, str.....chromeelevation_serviceelevated_recovery_impl.cc
lea rdi, [rsp + 0xc0]
mov rcx, rdi
mov r8d, 0xbe
mov r9d, 1
call fcn.14003c860
mov rcx, rdi
call fcn.14003ce70
lea rcx, [rsp + 0x1f0]
call fcn.140081240
jmp 0x1400284f5
lea rcx, [0x1401668da]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:40:_assertion___location___nullptr_failed:_null_pointer_given_to_construct_at_n
call fcn.1400e9b50
xor esi, esi
jmp 0x140028693
call fcn.1400b2e54
jmp 0x1400284bf
mov qword [r14 + 8], rcx
call fcn.1400b2e54
jmp 0x140028476
mov qword [rsp + 0xc8], rcx
call fcn.1400b2e54
jmp 0x1400284e7
mov rcx, r15
call fcn.1400b2e54
jmp 0x1400282be
lea rcx, [rsp + 0x2a0]
call fcn.1400e7590
mov rcx, r15
call fcn.1400e7590
int3