Function at 0x140102ae8
Capabilities:
Check if file exists
Delete file

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
mov r15, r9
mov r14, r8
mov rsi, rdx
mov bl, cl
mov rcx, qword [0x1401782b0]
lea rax, [0x1401782b0]
cmp rcx, rax
je 0x140102b3a
test byte [rcx + 0x1c], 1
je 0x140102b3a
cmp byte [rcx + 0x19], 4
jb 0x140102b3a
mov rcx, qword [rcx + 0x10]
lea r8, [0x14015e4f8]
mov edx, 0xe
call fcn.140004c6c
and qword [rbp - 0x28], 0
mov rax, qword [rsi]
cmp rax, qword [0x140161c08]
mov byte [rbp - 0x30], 0
jne 0x140102b74
mov rax, qword [rsi + 8]
cmp rax, qword [0x140161c10]
jne 0x140102b74
lea r8, str.guidBackupSetId___GUID_NULL
mov edx, 0x2bc
lea rcx, str.base_stor_blbengine_blbengutils_blbspputils.cpp
call fcn.14008624c
lea rcx, [rbp - 0x30]
call fcn.140090220
mov edi, eax
test eax, eax
jns 0x140102bcb
mov rcx, qword [0x1401782b0]
lea r14, [0x1401782b0]
cmp rcx, r14
je 0x140102e61
test byte [rcx + 0x1c], 1
je 0x140102e3b
cmp byte [rcx + 0x19], 2
jb 0x140102e3b
mov rcx, qword [rcx + 0x10]
lea r8, [0x14015e4f8]
mov edx, 0xf
mov r9d, eax
call fcn.140004c90
jmp 0x140102e34
cmp byte [rbp - 0x30], 0
je 0x140102e2d
test bl, bl
je 0x140102d25
movups xmm0, xmmword [0x14017a4c0]
lea rax, [rbp - 0x28]
mov r8, r15
movaps xmm1, xmmword [rsi]
lea r9, [rbp - 0x20]
mov qword [rsp + 0x28], rax
lea rcx, [rbp - 0x10]
and dword [rsp + 0x20], 0
mov rdx, r14
movdqu xmmword [rbp - 0x20], xmm0
movdqa xmmword [rbp - 0x10], xmm1
call fcn.1400828d0
mov edi, eax
test eax, eax
jns 0x140102c64
mov rcx, qword [0x1401782b0]
lea r14, [0x1401782b0]
cmp rcx, r14
je 0x140102d8b
test byte [rcx + 0x1c], 1
je 0x140102d8b
cmp byte [rcx + 0x19], 2
jb 0x140102d8b
mov edx, 0x10
mov rcx, qword [rcx + 0x10]
lea r8, [0x14015e4f8]
mov r9d, eax
call fcn.140004c90
mov rbx, qword [rbp - 0x28]
jmp 0x140102e16
mov rcx, qword [0x1401782b0]
lea r14, [0x1401782b0]
mov rbx, qword [rbp - 0x28]
cmp rcx, r14
je 0x140102c9f
test byte [rcx + 0x1c], 1
je 0x140102c9f
cmp byte [rcx + 0x19], 4
jb 0x140102c9f
mov rcx, qword [rcx + 0x10]
lea r8, [0x14015e4f8]
mov edx, 0x11
mov r9, rbx
call fcn.140005c6c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x140102d10
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x140102d10
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov rcx, qword [0x1401782b0]
cmp rcx, r14
je 0x140102e1d
test byte [rcx + 0x1c], 1
je 0x140102e1d
cmp byte [rcx + 0x19], 4
jb 0x140102e1d
mov edx, 0x12
mov rcx, qword [rcx + 0x10]
lea r8, [0x14015e4f8]
mov r9, rbx
mov dword [rsp + 0x20], edi
call fcn.140005ce8
jmp 0x140102e16
test rbx, rbx
je 0x140102d2c
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
and qword [rbp - 0x28], 0
jmp 0x140102d2c
lea r14, [0x1401782b0]
movups xmm0, xmmword [0x14017a4c0]
lea rax, [rbp - 0x28]
xor r8d, r8d
movaps xmm1, xmmword [rsi]
lea r9, [rbp - 0x10]
mov qword [rsp + 0x28], rax
lea rcx, [rbp - 0x20]
xor edx, edx
movdqa xmmword [rbp - 0x20], xmm1
movdqu xmmword [rbp - 0x10], xmm0
mov dword [rsp + 0x20], 1
call fcn.1400828d0
mov edi, eax
test eax, eax
jns 0x140102d94
mov rcx, qword [0x1401782b0]
cmp rcx, r14
je 0x140102d8b
test byte [rcx + 0x1c], 1
je 0x140102d8b
cmp byte [rcx + 0x19], 2
jb 0x140102d8b
mov edx, 0x13
jmp 0x140102c48
mov rbx, qword [rbp - 0x28]
jmp 0x140102e1d
mov rbx, qword [rbp - 0x28]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x140102de6
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x140102e16
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov rcx, qword [0x1401782b0]
cmp rcx, r14
je 0x140102e1d
test byte [rcx + 0x1c], 1
je 0x140102e1d
cmp byte [rcx + 0x19], 4
jb 0x140102e1d
mov edx, 0x14
jmp 0x140102cf4
mov rcx, qword [0x1401782b0]
cmp rcx, r14
je 0x140102e1d
test byte [rcx + 0x1c], 1
je 0x140102e1d
cmp byte [rcx + 0x19], 4
jb 0x140102e1d
mov rcx, qword [rcx + 0x10]
lea r8, [0x14015e4f8]
mov edx, 0x15
mov r9, rbx
call fcn.140005c6c
mov rcx, qword [0x1401782b0]
test rbx, rbx
je 0x140102e3b
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140102e34
lea r14, [0x1401782b0]
mov rcx, qword [0x1401782b0]
cmp rcx, r14
je 0x140102e61
test byte [rcx + 0x1c], 1
je 0x140102e61
cmp byte [rcx + 0x19], 4
jb 0x140102e61
mov rcx, qword [rcx + 0x10]
lea r8, [0x14015e4f8]
mov edx, 0x16
call fcn.140004c6c
mov eax, edi
mov rbx, qword [rsp + 0x90]
add rsp, 0x60
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret