Function at 0x140010d20
Capabilities:
Check if file exists

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
mov r15d, r8d
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x14010a040]
xor rax, rsp
mov qword [rsp + 0xb0], rax
movaps xmm0, xmmword [0x1400edb10]
lea r14, [rsp + 0x50]
movaps xmmword [r14 + 0x30], xmm0
movaps xmmword [r14 + 0x20], xmm0
movaps xmmword [r14 + 0x10], xmm0
movaps xmmword [r14], xmm0
lea rdx, str.MapFileRegionToMemory
lea r8, [0x1400f8c50]
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov r9d, 0x42
call fcn.140052d50
mov rcx, r14
xor edx, edx
xor r8d, r8d
call fcn.14004ed20
mov qword [rsp + 0x98], 0xb
mov al, byte [0x14011b3cb]
test al, al
jne 0x140010f94
mov rcx, qword [rsi]
xor r14d, r14d
lea rax, [rcx + 1]
cmp rax, 2
jb 0x140010eab
test r15d, r15d
jne 0x14001103d
mov r8d, 2
mov ebx, 4
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov qword [rsp + 0x28], 0
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov r14, rax
cmp qword [rsi + 0x40], rax
je 0x140010e35
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [rsi + 0x40]
inc rax
cmp rax, 2
jae 0x140010ef2
mov rax, r14
inc rax
cmp rax, 2
jb 0x140010e29
mov qword [rsi + 0x40], r14
call fcn.14003e070
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov r14, qword [rsi + 0x40]
inc r14
cmp r14, 2
jb 0x140011035
mov dword [rsp + 0xa0], 0
mov rcx, qword [rdi]
mov rdx, qword [rdi + 8]
mov rax, rcx
or rax, rdx
jne 0x140010fc6
mov rcx, rsi
call fcn.1400110c0
xor r14d, r14d
test rax, rax
jle 0x140010eab
mov rdi, rax
xor r8d, r8d
xor eax, eax
mov rcx, qword [rsi + 0x40]
mov qword [rsp + 0x20], rax
mov edx, ebx
mov r9d, r14d
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
test rax, rax
je 0x140011035
movsxd rcx, dword [rsp + 0xa0]
add rax, rcx
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], rdi
mov r14b, 1
mov qword [rsp + 0xa8], 0xb
mov al, byte [0x14011b3cb]
test al, al
jne 0x140010f6d
lea rcx, [rsp + 0x50]
call fcn.14004c090
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.14005e230
mov eax, r14d
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
call fcn.14003e070
mov r15, qword [rsi + 0x40]
cmp qword [0x14011b740], 0
je 0x140010f28
mov rcx, qword [0x14011b740]
mov rax, qword [rcx]
mov rax, qword [rax]
mov rdx, r15
call qword [0x1400ff3b8]
mov qword [rsi + 0x40], 0
jmp 0x140010e14
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, [0x1400f812e]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400110ae
lea rcx, [sym.opera.exe_GetHandleVerifier]
cmp rax, rcx
je 0x140010f67
call qword [0x1400ff3b8]
mov rcx, rax
xor edx, edx
call fcn.140017720
jmp 0x140010f05
xor ecx, ecx
mov dl, 1
jmp 0x140010f60
movzx ecx, al
lea r8, [rsp + 0x30]
mov qword [r8], 0
lea rdx, [rsp + 0xa8]
mov r9d, 2
call fcn.140041e60
jmp 0x140010ec5
movzx ecx, al
lea r9, [rsp + 0xa8]
mov qword [r9], rbx
lea rax, str.ScopedBlockingCall
lea r8, [rsp + 0xa0]
mov qword [r8], rax
lea rdx, [rsp + 0x98]
call fcn.1400b5300
jmp 0x140010db1
xor eax, eax
lea r14, [rsp + 0x30]
mov qword [r14], rax
lea r9, [rsp + 0xa8]
mov qword [r9], rax
lea r15, [rsp + 0xa0]
mov qword [rsp + 0x20], r15
mov r8, r14
call fcn.1400b5e50
mov rdi, qword [rdi + 8]
movsxd rax, dword [r15]
mov rdx, rax
sar rdx, 0x3f
add rax, rdi
adc rdx, 0
mov ecx, edx
and ecx, 1
neg rcx
xor rdx, rcx
setne dl
mov r14, qword [r14]
test r14, r14
js 0x140011035
test dl, dl
jne 0x140011035
test rcx, rcx
js 0x140011035
test rax, rax
je 0x140011035
mov r8, r14
shr r8, 0x20
jmp 0x140010e78
xor r14d, r14d
jmp 0x140010eab
mov ebx, 0xaaaaaaaa
dec r15d
cmp r15d, 3
jbe 0x140011053
xor r8d, r8d
jmp 0x140010dd9
lea rax, [0x1400f8ca4]
movsxd rdx, dword [rax + r15*4]
add rdx, rax
jmp rdx
mov r8d, 4
mov ebx, 2
jmp 0x140010dd9
mov r8d, 8
mov ebx, 1
jmp 0x140010dd9
mov rcx, rsi
call fcn.1400b5c60
mov r14d, eax
jmp 0x140010eab
mov r14, qword [rdi + 8]
mov r9, r14
shr r9, 0x20
mov r8d, 4
mov ebx, 2
jmp 0x140010ddc
xor ecx, ecx
jmp 0x140010f5e