Function at 0x140065480
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
mov rax, qword [0x140293028]
xor rax, rsp
mov qword [rbp + 0xc0], rax
mov rdi, rcx
xor ebx, ebx
mov dword [rsp + 0x60], ebx
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov edx, dword [rcx + 0xa8]
lea rcx, [rbp - 0x60]
call fcn.140116e90
mov rcx, rdi
cmp qword [rdi + 0x18], 8
jb 0x1400654e0
mov rcx, qword [rdi]
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x8000000
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rsi, rax
cmp rax, 0xffffffffffffffff
setne r14b
jne 0x140065541
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x140065541
test r14b, r14b
je 0x14006552e
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rbp - 0x60]
call fcn.1401171d0
mov eax, 2
jmp 0x140065d1b
test r14b, r14b
jne 0x14006570b
xor edx, edx
mov r8d, 0x104
lea rcx, [rbp - 0x44]
call fcn.1401a8d80
call fcn.140138af0
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x48], 2
lea rcx, [rbp - 0x40]
call fcn.14000f010
mov rcx, qword [rbp - 0x50]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400d90b6.0]
cmp dword [rbp - 0x48], eax
setl byte [rbp + 0xb8]
jl 0x1400656ef
mov rax, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 8
jb 0x1400655a3
mov rdi, qword [rdi]
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x68], rax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x40]
call fcn.1401577f0
mov r9d, 0x1e
lea r8, str.Error_opening_manifested_file
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.1400141f0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea r8, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.140065270
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x50]
call fcn.140012210
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14006565e
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140065659
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065d4d
call fcn.1401853a0
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1400656ab
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400656a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065d4d
call fcn.1401853a0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1400656e8
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400656e3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065d4d
call fcn.1401853a0
mov byte [rbp + 0xb8], 1
lea rcx, [rbp - 0x50]
call fcn.14000afe0
lea rcx, [rbp - 0x60]
call fcn.1401171d0
mov eax, 2
jmp 0x140065d1b
mov rdx, rsi
lea rcx, [rbp - 0x60]
call fcn.140117000
mov r15, qword [rbp - 0x58]
cmp qword [rdi + 0x40], r15
je 0x1400657f1
xor edx, edx
mov r8d, 0x104
lea rcx, [rbp - 0x44]
call fcn.1401a8d80
call fcn.140138af0
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x48], 2
lea rcx, [rbp - 0x40]
call fcn.14000f010
mov rcx, qword [rbp - 0x50]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400d90b6.0]
cmp dword [rbp - 0x48], eax
setl byte [rbp + 0xb8]
jl 0x1400657ca
lea rdx, str.Corrupt_manifested_file
lea rcx, [rbp - 0x50]
call fcn.1400219b0
mov rdx, rdi
mov rcx, rax
call fcn.140011f40
lea rdx, str.:_size_is
mov rcx, rax
call fcn.140028980
mov qword [rsp + 0x60], r15
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.14004a780
lea rdx, str.__expected
mov rcx, rax
call fcn.14004a3a0
lea rdx, [rdi + 0x40]
mov rcx, rax
call fcn.14004a780
mov byte [rbp + 0xb8], 1
lea rcx, [rbp - 0x50]
call fcn.14000afe0
nop
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rbp - 0x60]
call fcn.1401171d0
mov eax, 1
jmp 0x140065d1b
mov edx, 8
mov rcx, qword [rbp - 0x60]
call fcn.140117140
test al, al
je 0x140065833
mov ebx, 1
lea r8d, [rbx + 7]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x60]
call fcn.1401177b0
mov rdx, rax
lea rcx, [rdi + 0x88]
call fcn.14003d710
test al, al
jne 0x140065833
movzx r14d, bl
jmp 0x140065836
xor r14b, r14b
test bl, 1
je 0x14006587b
and ebx, 0xfffffffe
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x14006587b
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140065876
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065d53
call fcn.1401853a0
test r14b, r14b
je 0x1400659a4
xor edx, edx
mov r8d, 0x104
lea rcx, [rbp - 0x44]
call fcn.1401a8d80
call fcn.140138af0
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x48], 2
lea rcx, [rbp - 0x40]
call fcn.14000f010
mov rcx, qword [rbp - 0x50]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400d90b6.0]
cmp dword [rbp - 0x48], eax
setl byte [rbp + 0xb8]
jl 0x14006597d
lea rdx, str.Corrupt_manifested_file
lea rcx, [rbp - 0x50]
call fcn.1400219b0
mov rdx, rdi
mov rcx, rax
call fcn.140011f40
lea rdx, str.:_sha384_is
mov rcx, rax
call fcn.14004a870
mov rbx, rax
mov r8d, 8
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x60]
call fcn.1401177b0
mov rdx, rax
mov rcx, rbx
call fcn.140012210
lea rdx, str.__expected
mov rcx, rax
call fcn.14004a3a0
lea rdx, [rdi + 0x88]
mov rcx, rax
call fcn.140012210
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140065976
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140065971
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065d59
call fcn.1401853a0
mov byte [rbp + 0xb8], 1
lea rcx, [rbp - 0x50]
call fcn.14000afe0
nop
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rbp - 0x60]
call fcn.1401171d0
mov eax, 1
jmp 0x140065d1b
mov edx, 4
mov rcx, qword [rbp - 0x60]
call fcn.140117140
test al, al
je 0x1400659e2
or ebx, 2
mov r8d, 4
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x60]
call fcn.1401177b0
mov rdx, rax
lea rcx, [rdi + 0x68]
call fcn.14003d710
test al, al
jne 0x1400659e2
mov r14b, 1
jmp 0x1400659e5
xor r14b, r14b
test bl, 2
je 0x140065a2a
and ebx, 0xfffffffd
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140065a2a
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140065a25
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065d5f
call fcn.1401853a0
test r14b, r14b
je 0x140065b59
xor edx, edx
mov r8d, 0x104
lea rcx, [rbp - 0x44]
call fcn.1401a8d80
call fcn.140138af0
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x48], 2
lea rcx, [rbp - 0x40]
call fcn.14000f010
mov rcx, qword [rbp - 0x50]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400d90b6.0]
cmp dword [rbp - 0x48], eax
setl byte [rbp + 0xb8]
jl 0x140065b29
lea rdx, str.Corrupt_manifested_file
lea rcx, [rbp - 0x50]
call fcn.1400219b0
mov rdx, rdi
mov rcx, rax
call fcn.140011f40
lea rdx, str.:_sha256_is
mov rcx, rax
call fcn.14004a870
mov rbx, rax
mov r8d, 4
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x60]
call fcn.1401177b0
mov rdx, rax
mov rcx, rbx
call fcn.140012210
lea rdx, str.__expected
mov rcx, rax
call fcn.14004a3a0
lea rdx, [rdi + 0x68]
mov rcx, rax
call fcn.140012210
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140065b22
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140065b1d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065d65
call fcn.1401853a0
mov byte [rbp + 0xb8], 1
lea rcx, [rbp - 0x50]
call fcn.14000afe0
cmp rsi, 0xffffffffffffffff
je 0x140065cf0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rbp - 0x60]
call fcn.1401171d0
mov eax, 1
jmp 0x140065d1b
mov edx, 2
mov rcx, qword [rbp - 0x60]
call fcn.140117140
test al, al
je 0x140065b97
or ebx, 4
mov r8d, 2
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x60]
call fcn.1401177b0
mov rdx, rax
lea rcx, [rdi + 0x48]
call fcn.14003d710
test al, al
jne 0x140065b97
mov r14b, 1
jmp 0x140065b9a
xor r14b, r14b
test bl, 4
je 0x140065bdc
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140065bdc
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140065bd7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065d6b
call fcn.1401853a0
test r14b, r14b
je 0x140065d00
xor edx, edx
mov r8d, 0x104
lea rcx, [rbp - 0x44]
call fcn.1401a8d80
call fcn.140138af0
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x48], 2
lea rcx, [rbp - 0x40]
call fcn.14000f010
mov rcx, qword [rbp - 0x50]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400d90b6.0]
cmp dword [rbp - 0x48], eax
setl byte [rbp + 0xb8]
jl 0x140065cd7
lea rdx, str.Corrupt_manifested_file
lea rcx, [rbp - 0x50]
call fcn.1400219b0
mov rdx, rdi
mov rcx, rax
call fcn.140011f40
lea rdx, str.:_sha1_is
mov rcx, rax
call fcn.140028980
mov rbx, rax
mov r8d, 2
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x60]
call fcn.1401177b0
mov rdx, rax
mov rcx, rbx
call fcn.140012210
lea rdx, str.__expected
mov rcx, rax
call fcn.14004a3a0
lea rdx, [rdi + 0x48]
mov rcx, rax
call fcn.140012210
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140065cd0
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140065ccb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065d47
call fcn.1401853a0
mov byte [rbp + 0xb8], 1
lea rcx, [rbp - 0x50]
call fcn.14000afe0
cmp rsi, 0xffffffffffffffff
je 0x140065cf0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rbp - 0x60]
call fcn.1401171d0
mov eax, 1
jmp 0x140065d1b
cmp rsi, 0xffffffffffffffff
je 0x140065d10
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rbp - 0x60]
call fcn.1401171d0
xor eax, eax
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.140185380
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1401b3c00
int3
call fcn.1401b3c00
int3
call fcn.1401b3c00
int3
call fcn.1401b3c00
int3
call fcn.1401b3c00
int3
call fcn.1401b3c00
int3
call fcn.1401b3c00
int3