Function at 0x1000afdd0
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x40
mov r12, r8
mov rbp, rdx
mov r13, rcx
mov rcx, qword [0x1001653b8]
lea rdi, [0x1001653b8]
cmp rcx, rdi
je 0x1000afe1d
test byte [rcx + 0x1c], 2
je 0x1000afe1d
cmp byte [rcx + 0x19], 4
jb 0x1000afe1d
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000036e8]
mov edx, 0x27
call fcn.10001c7b8
test rbp, rbp
jne 0x1000afe3a
lea r8, [0x10000a218]
lea rcx, [0x10000b150]
mov edx, 0x43d
call fcn.100099ad8
and qword [rsp + 0x80], 0
xor esi, esi
lea rdx, [rsp + 0x80]
and dword [r12], esi
mov rcx, rbp
mov qword [rsp + 0x78], rsi
call fcn.10009b37c
mov ebx, eax
test eax, eax
js 0x1000b01a0
mov rcx, qword [rsp + 0x80]
lea r8, [rsp + 0x78]
lea rdx, [0x100002938]
call fcn.10009b5b0
mov ebx, eax
test eax, eax
js 0x1000b019b
and qword [rsp + 0x30], rsi
mov rsi, qword [rsp + 0x78]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
mov rcx, rsi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x1000aff71
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x1000aff17
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x1000b0009
test byte [rcx + 0x1c], 2
je 0x1000b0009
cmp byte [rcx + 0x19], 4
jb 0x1000b0009
mov rcx, qword [rcx + 0x10]
lea edx, [rdi + 0x29]
lea r8, [0x1000036e8]
mov r9, rsi
call fcn.10001da24
jmp 0x1000b0002
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x1000b0009
test byte [rcx + 0x1c], 2
je 0x1000b0009
cmp byte [rcx + 0x19], 2
jb 0x1000b0009
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000036e8]
mov edx, 0x29
mov r9, rsi
mov dword [rsp + 0x20], ebx
call fcn.10001daa4
jmp 0x1000b0002
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
or qword [rsp + 0x78], 0xffffffffffffffff
lea rdi, [0x100002938]
lea r9, [rsp + 0x78]
mov r8, rdi
mov rdx, rbp
mov rcx, r13
call fcn.1000b1dec
mov ebx, eax
test eax, eax
jns 0x1000afffd
cmp eax, 0x80070002
je 0x1000b0094
cmp eax, 0x80070003
je 0x1000b0094
mov rcx, qword [0x1001653b8]
lea rax, [0x1001653b8]
cmp rcx, rax
je 0x1000b0191
test byte [rcx + 0x1c], 2
je 0x1000b0191
cmp byte [rcx + 0x19], 2
jb 0x1000b0191
mov edx, 0x2b
mov dword [rsp + 0x20], ebx
mov r9, rdi
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000036e8]
call fcn.10001daa4
mov rdi, qword [rsp + 0x78]
mov rcx, qword [0x1001653b8]
cmp rdi, 0xffffffffffffffff
je 0x1000b001f
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [0x1001653b8]
lea rdi, [0x1001653b8]
cmp qword [rsp + 0x80], 0
je 0x1000b0046
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, qword [0x1001653b8]
test rsi, rsi
je 0x1000b005b
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, qword [0x1001653b8]
cmp rcx, rdi
je 0x1000b0081
test byte [rcx + 0x1c], 2
je 0x1000b0081
cmp byte [rcx + 0x19], 4
jb 0x1000b0081
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000036e8]
mov edx, 0x2e
call fcn.10001c7b8
mov eax, ebx
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [0x1001653b8]
lea rdi, [0x1001653b8]
cmp rcx, rdi
je 0x1000b00d7
test byte [rcx + 0x1c], 1
je 0x1000b00d7
cmp byte [rcx + 0x19], 3
jb 0x1000b00d7
mov rcx, qword [rcx + 0x10]
lea rax, [0x100002938]
lea r8, [0x1000036e8]
mov edx, 0x2a
mov r9d, ebx
mov qword [rsp + 0x20], rax
call fcn.10001d8f8
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
or qword [rsp + 0x78], 0xffffffffffffffff
lea r9, [rsp + 0x78]
lea r8, [0x100002910]
mov rdx, rbp
mov rcx, r13
call fcn.1000b1dec
mov ebx, eax
test eax, eax
jns 0x1000afffd
cmp eax, 0x80070002
je 0x1000b0144
cmp eax, 0x80070003
je 0x1000b0144
mov rcx, qword [0x1001653b8]
cmp rcx, rdi
je 0x1000b0191
test byte [rcx + 0x1c], 2
je 0x1000b0191
cmp byte [rcx + 0x19], 2
jb 0x1000b0191
mov edx, 0x2d
mov dword [rsp + 0x20], eax
lea r9, [0x100002910]
jmp 0x1000affed
mov rcx, qword [0x1001653b8]
cmp rcx, rdi
je 0x1000b0187
test byte [rcx + 0x1c], 1
je 0x1000b0187
cmp byte [rcx + 0x19], 3
jb 0x1000b0187
mov rcx, qword [rcx + 0x10]
lea rax, [0x100002910]
lea r8, [0x1000036e8]
mov edx, 0x2c
mov r9d, ebx
mov qword [rsp + 0x20], rax
call fcn.10001d8f8
mov rcx, qword [0x1001653b8]
mov dword [r12], 1
xor ebx, ebx
mov rdi, qword [rsp + 0x78]
jmp 0x1000b0009
mov rsi, qword [rsp + 0x78]
mov rcx, qword [0x1001653b8]
jmp 0x1000b0026