Function at 0x1801db1f0
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x90], rbx
mov rsi, rcx
call fcn.1801dbaa0
mov rdi, rax
mov qword [rsp + 0x98], rax
test rax, rax
je 0x1801db237
cmp byte [rax + 8], 0
jne 0x1801db237
xor sil, sil
jmp 0x1801db49b
lea rdx, [rsi + 0xd0]
xor r8d, r8d
lea rcx, [rsp + 0x38]
call fcn.1800e3080
nop
mov ecx, 0x48
call fcn.1800a103c
mov qword [rsp + 0xa0], rax
test rax, rax
je 0x1801db27b
mov r8d, 0x8000
lea rdx, [rsp + 0x38]
mov rcx, rax
call fcn.1800e3b70
mov rcx, rax
jmp 0x1801db27d
xor ecx, ecx
mov rax, qword [rcx + 0x20]
cmp byte [rax], 0
je 0x1801db294
xor r14d, r14d
mov rax, qword [rcx]
lea edx, [r14 + 1]
call qword [rax]
jmp 0x1801db297
mov r14, rcx
mov rbx, r14
mov qword [rsp + 0xa0], rbx
mov r15d, 4
test r14, r14
je 0x1801db40f
mov rax, qword [r14]
mov rcx, r14
cmp dword [rsi + 0x100], 1
jne 0x1801db322
mov edx, dword [0x18036e744]
call qword [rax + 0x48]
mov rax, qword [r14]
mov rcx, r14
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea ecx, [r15 + 0x24]
call fcn.1800a103c
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x1801db2fe
xor ebx, ebx
mov qword [rsp + 0xa0], rbx
mov rdx, r14
mov rcx, rax
call fcn.1800c48d0
nop
cmp rbx, rax
je 0x1801db32b
mov rcx, rbx
mov rbx, rax
mov qword [rsp + 0xa0], rax
test rcx, rcx
je 0x1801db32b
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
jmp 0x1801db32b
mov edx, dword [0x18036e2e4]
call qword [rax + 0x48]
mov r12d, dword [rsi + 0x18]
mov rax, qword [rbx]
mov edx, r12d
mov rcx, rbx
call qword [rax + 0x48]
xor ebp, ebp
test r12d, r12d
jle 0x1801db395
xor r14d, r14d
lea r13, [0x180416eb8]
nop dword [rax]
cmp ebp, dword [rsi + 0x18]
jae 0x1801db35e
mov rdx, qword [rsi + 8]
add rdx, r14
jmp 0x1801db361
mov rdx, r13
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x98]
cmp ebp, dword [rsi + 0x30]
jae 0x1801db37b
mov rdx, qword [rsi + 0x20]
add rdx, r14
jmp 0x1801db37e
mov rdx, r13
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x98]
inc ebp
add r14, 8
cmp ebp, r12d
jl 0x1801db350
mov rcx, rbx
xor ebx, ebx
mov qword [rsp + 0xa0], rbx
test rcx, rcx
je 0x1801db3af
mov rax, qword [rcx]
lea edx, [rbx + 1]
call qword [rax]
mov rax, qword [rsp + 0x38]
cmp byte [rax], bl
je 0x1801db40f
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0xa8]
call fcn.180016d90
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1801db40f
mov ebp, r15d
nop dword [rax + rax]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x38]
call fcn.1800e6d50
test al, al
jne 0x1801db404
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
dec ebp
jns 0x1801db3e0
jmp 0x1801db40f
mov byte [rsi + 0x111], bl
mov sil, 1
jmp 0x1801db412
xor sil, sil
test rbx, rbx
je 0x1801db425
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
nop
lea rcx, [rsp + 0x38]
call fcn.1800c3b60
test al, al
jne 0x1801db443
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_Sleep]
dec r15d
jns 0x1801db425
mov rcx, qword [rsp + 0x40]
add rcx, 0xfffffffffffffff0
lea rbp, [0x1802bccb0]
or ebx, 0xffffffff
cmp rcx, rbp
je 0x1801db474
mov eax, ebx
lock xadd dword [rcx], eax
dec eax
cmp eax, ebx
jne 0x1801db46c
call fcn.1800a0c6c
mov rdi, qword [rsp + 0x98]
mov rax, qword [rsp + 0x38]
lea rcx, [rax - 0x10]
cmp rcx, rbp
je 0x1801db49b
lock xadd dword [rcx], ebx
lea eax, [rbx - 1]
cmp eax, 0xffffffff
jne 0x1801db493
call fcn.1800a0c6c
mov rdi, qword [rsp + 0x98]
test rdi, rdi
je 0x1801db4b0
mov rcx, qword [rdi]
call fcn.1800c2260
mov rcx, rdi
call fcn.1800a0ca0
movzx eax, sil
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret