Function at 0x18007fb20
Capabilities:
Check if file exists
Delete file
Get file attributes

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x100
mov qword [rsp + 0xa8], 0xfffffffffffffffe
mov rax, qword [0x1800c9088]
xor rax, rsp
mov qword [rsp + 0xf8], rax
mov r13, r9
mov r12d, r8d
mov r15, rdx
mov r14, rcx
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x90], rax
lea rcx, [rsp + 0x40]
call fcn.18005cfa8
nop
call fcn.180001d84
mov rcx, rax
test rax, rax
je 0x18007ff7f
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x28], rax
call fcn.180001d84
mov rcx, rax
test rax, rax
je 0x18007ff8a
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x20], rax
call fcn.180001d84
mov rcx, rax
test rax, rax
je 0x18007ff95
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x30], rbx
lea rdx, [rsp + 0x28]
mov rcx, r15
call fcn.180082888
mov edi, eax
test eax, eax
jns 0x18007fc5b
lea rdx, [rbx - 0x18]
or rsi, 0xffffffffffffffff
mov ecx, esi
lock xadd dword [rdx + 0x10], ecx
add ecx, esi
test ecx, ecx
jg 0x18007fc0a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007fc2a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007fc4a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x40]
call fcn.18005d030
mov eax, edi
jmp 0x18007ff5c
lea rdx, [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
call fcn.18005e0bc
test al, al
jne 0x18007fce1
lea rdx, [rbx - 0x18]
or rsi, 0xffffffffffffffff
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007fc8d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007fcad
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007fccd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x40]
call fcn.18005d030
mov eax, 0x8007000e
jmp 0x18007ff5c
lea rdx, str..tmp
or rsi, 0xffffffffffffffff
mov rax, rsi
xor ebx, ebx
inc rax
cmp word [rdx + rax*2], bx
jne 0x18007fcf1
mov r8d, eax
lea rcx, [rsp + 0x20]
call fcn.1800148f0
lea rdx, [rsp + 0x30]
mov rdi, qword [rsp + 0x20]
mov rcx, rdi
call fcn.18005e0bc
test al, al
jne 0x18007fd91
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007fd3d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007fd5d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007fd7d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x40]
call fcn.18005d030
mov eax, 0x8007000e
jmp 0x18007ff5c
lea rdx, [0x1800cc480]
lea rcx, [rsp + 0xc0]
call fcn.180061038
mov qword [rsp + 0x98], r13
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0xa0], rax
lea r9, [rsp + 0x98]
mov r8d, r12d
mov rdx, rdi
mov rcx, r14
call fcn.18007ce60
mov r14d, eax
lea rax, [0x1800aa428]
mov qword [rsp + 0xc0], rax
lea rcx, [rsp + 0xc0]
call fcn.180060ff4
test r14d, r14d
jns 0x18007fe3a
lea rcx, [0x1800c9a10]
mov r10, qword [0x1800c9a10]
cmp r10, rcx
je 0x18007fe30
test byte [r10 + 0x1c], 1
je 0x18007fe30
cmp byte [r10 + 0x19], 2
jb 0x18007fe30
mov edx, 0x1f
mov r9d, r14d
lea r8, [0x1800a2b50]
mov rcx, qword [r10 + 0x10]
call fcn.180001560
mov rbx, qword [rsp + 0x30]
jmp 0x18007fecb
mov rbx, qword [rsp + 0x30]
mov r9, rbx
mov r8, rbx
lea rdx, str.Dump
mov rcx, r15
call fcn.180082628
mov r14d, eax
test eax, eax
jns 0x18007fe94
lea rcx, [0x1800c9a10]
mov rax, qword [0x1800c9a10]
cmp rax, rcx
je 0x18007fecb
test byte [rax + 0x1c], 1
je 0x18007fecb
cmp byte [rax + 0x19], 2
jb 0x18007fecb
mov edx, 0x20
mov r9d, r14d
lea r8, [0x1800a2b50]
mov rcx, qword [rax + 0x10]
call fcn.180001560
jmp 0x18007fecb
lea rcx, [0x1800c9a10]
mov rax, qword [0x1800c9a10]
cmp rax, rcx
je 0x18007fecb
test byte [rax + 0x1c], 1
je 0x18007fecb
cmp byte [rax + 0x19], 4
jb 0x18007fecb
mov edx, 0x21
mov r9, rbx
lea r8, [0x1800a2b50]
mov rcx, qword [rax + 0x10]
call fcn.180002540
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x18007fee3
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007fefe
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007ff1e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
test eax, eax
jg 0x18007ff3e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x40]
call fcn.18005d030
mov eax, r14d
jmp 0x18007ff5c
mov rcx, qword [rsp + 0xf8]
xor rcx, rsp
call fcn.180045d30
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov ecx, 0x80004005
call fcn.180001b3c
nop
mov ecx, 0x80004005
call fcn.180001b3c
nop
mov ecx, 0x80004005
call fcn.180001b3c
int3