Function at 0x1400d0ad0
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov r14, rdx
mov rbx, rcx
test rcx, rcx
je 0x1400d0ddb
test rdx, rdx
je 0x1400d0ddb
and qword [rdx], 0
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400d0b13
mov eax, 0x80070002
jmp 0x1400d0de0
or qword [rbp + 0x30], 0xffffffffffffffff
lea rcx, [rbp + 0x30]
mov r15d, 1
mov dword [rsp + 0x28], 0x80
mov r9d, r15d
mov dword [rsp + 0x20], 3
mov r8d, 0x120089
mov rdx, rbx
call fcn.1400f1520
mov ebx, eax
test eax, eax
jns 0x1400d0b90
mov rcx, qword [0x140162280]
lea rdx, [0x140162280]
cmp rcx, rdx
je 0x1400d0b79
test byte [rcx + 0x1c], r15b
je 0x1400d0b79
mov rcx, qword [rcx + 0x10]
lea edx, [r15 + 0x1c]
mov r9d, eax
lea r8, [0x14013b998]
call fcn.140044450
mov rcx, qword [rbp + 0x30]
cmp rcx, 0xffffffffffffffff
je 0x1400d0b89
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
jmp 0x1400d0de0
mov rbx, qword [rbp + 0x30]
lea rcx, [rbp + 0x40]
and qword [rbp + 0x40], 0
mov rdx, rbx
call fcn.1400f1870
mov edi, eax
test eax, eax
jns 0x1400d0bf2
mov rcx, qword [0x140162280]
lea rdx, [0x140162280]
cmp rcx, rdx
je 0x1400d0bdc
test byte [rcx + 0x1c], r15b
je 0x1400d0bdc
mov rcx, qword [rcx + 0x10]
lea r8, [0x14013b998]
mov edx, 0x1e
mov r9d, eax
call fcn.140044450
cmp rbx, 0xffffffffffffffff
je 0x1400d0beb
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, edi
jmp 0x1400d0de0
mov rsi, qword [rbp + 0x40]
cmp rsi, 0xffffe
jb 0x1400d0c49
mov rcx, qword [0x140162280]
lea rdx, [0x140162280]
cmp rcx, rdx
je 0x1400d0c30
test byte [rcx + 0x1c], r15b
je 0x1400d0c30
mov rcx, qword [rcx + 0x10]
lea r8, [0x14013b998]
mov edx, 0x1f
mov r9, rsi
call fcn.1400446d4
cmp rbx, 0xffffffffffffffff
je 0x1400d0c3f
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 0x80004005
jmp 0x1400d0de0
and qword [rbp + 0x30], 0
lea edx, [rsi + 1]
lea rcx, [rbp + 0x30]
call fcn.1400f0f70
mov edi, eax
test eax, eax
jns 0x1400d0ca8
mov rcx, qword [0x140162280]
lea rdx, [0x140162280]
cmp rcx, rdx
je 0x1400d0c91
test byte [rcx + 0x1c], r15b
je 0x1400d0c91
mov rcx, qword [rcx + 0x10]
lea r8, [0x14013b998]
mov edx, 0x20
mov r9d, eax
call fcn.140044450
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x1400d0bdc
call fcn.140031084
jmp 0x1400d0bdc
mov rdi, qword [rbp + 0x30]
lea rdx, [rbp + 0x40]
mov r8, rdi
mov qword [rbp + 0x40], rsi
mov rcx, rbx
call fcn.1400f1d64
mov r15d, eax
test eax, eax
jns 0x1400d0d1b
mov rcx, qword [0x140162280]
lea rdx, [0x140162280]
cmp rcx, rdx
je 0x1400d0cf7
test byte [rcx + 0x1c], 1
je 0x1400d0cf7
mov rcx, qword [rcx + 0x10]
lea r8, [0x14013b998]
mov edx, 0x21
mov r9d, eax
call fcn.140044450
test rdi, rdi
je 0x1400d0d04
mov rcx, rdi
call fcn.140031084
cmp rbx, 0xffffffffffffffff
je 0x1400d0d13
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, r15d
jmp 0x1400d0de0
cmp qword [rbp + 0x40], rsi
je 0x1400d0d75
mov rcx, qword [0x140162280]
lea rdx, [0x140162280]
cmp rcx, rdx
je 0x1400d0d52
test byte [rcx + 0x1c], 1
je 0x1400d0d52
mov rcx, qword [rcx + 0x10]
lea r8, [0x14013b998]
mov edx, 0x22
mov r9, rsi
call fcn.1400446d4
test rdi, rdi
je 0x1400d0d5f
mov rcx, rdi
call fcn.140031084
cmp rbx, 0xffffffffffffffff
je 0x1400d0d6e
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 0x80070018
jmp 0x1400d0de0
mov r8, rdi
mov byte [rdi + rsi], 0
mov rcx, r14
call fcn.1400f2474
mov esi, eax
test eax, eax
jns 0x1400d0dbb
mov rcx, qword [0x140162280]
lea rdx, [0x140162280]
cmp rcx, rdx
je 0x1400d0dbb
test byte [rcx + 0x1c], 1
je 0x1400d0dbb
mov rcx, qword [rcx + 0x10]
lea r8, [0x14013b998]
mov edx, 0x23
mov r9d, eax
call fcn.140044450
test rdi, rdi
je 0x1400d0dc8
mov rcx, rdi
call fcn.140031084
cmp rbx, 0xffffffffffffffff
je 0x1400d0dd7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, esi
jmp 0x1400d0de0
mov eax, 0x80070057
mov rbx, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret