Function at 0x14012463c
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 [0x14017d3a8]
lea rax, [0x14017d3a8]
cmp rcx, rax
je 0x14012468e
test byte [rcx + 0x1c], 1
je 0x14012468e
cmp byte [rcx + 0x19], 4
jb 0x14012468e
mov rcx, qword [rcx + 0x10]
lea r8, [0x140012a28]
mov edx, reloc.ADVAPI32.dll_GetTraceEnableFlags
call fcn.14001dd24
mov rdx, qword [rsi]
and qword [rbp - 0x28], 0
lea rcx, [0x14000ab48]
mov byte [rbp - 0x30], 0
cmp rdx, qword [rcx]
jne 0x1401246b4
mov rdx, qword [rsi + 8]
cmp rdx, qword [rcx + 8]
jne 0x1401246b4
xor eax, eax
jmp 0x1401246b9
sbb eax, eax
sbb eax, reloc.ADVAPI32.dll_TraceEvent
test eax, eax
jne 0x1401246d5
lea r8, [0x140005ea8]
lea rcx, [0x140012980]
mov edx, 0x2bc
call fcn.1400a8be8
lea rcx, [rbp - 0x30]
call fcn.1400b2d34
mov edi, eax
test eax, eax
jns 0x14012472c
mov rcx, qword [0x14017d3a8]
lea r14, [0x14017d3a8]
cmp rcx, r14
je 0x1401249c2
test byte [rcx + 0x1c], 1
je 0x14012499c
cmp byte [rcx + 0x19], 2
jb 0x14012499c
mov rcx, qword [rcx + 0x10]
lea r8, [0x140012a28]
mov edx, reloc.ADVAPI32.dll_RegisterTraceGuidsW
mov r9d, eax
call fcn.14001de24
jmp 0x140124995
cmp byte [rbp - 0x30], 0
je 0x14012498e
test bl, bl
je 0x140124886
movups xmm0, xmmword [0x14017f680]
movups xmm1, xmmword [rsi]
lea rax, [rbp - 0x28]
mov qword [rsp + 0x28], rax
and dword [rsp + 0x20], 0
lea r9, [rbp - 0x20]
lea rcx, [rbp - 0x10]
mov r8, r15
mov rdx, r14
movdqu xmmword [rbp - 0x20], xmm0
movdqu xmmword [rbp - 0x10], xmm1
call fcn.14009747c
mov edi, eax
test eax, eax
jns 0x1401247c5
mov rcx, qword [0x14017d3a8]
lea r14, [0x14017d3a8]
cmp rcx, r14
je 0x1401248ec
test byte [rcx + 0x1c], 1
je 0x1401248ec
cmp byte [rcx + 0x19], 2
jb 0x1401248ec
mov edx, CoRevokeClassObject
mov rcx, qword [rcx + 0x10]
lea r8, [0x140012a28]
mov r9d, eax
call fcn.14001de24
mov rbx, qword [rbp - 0x28]
jmp 0x140124977
mov rcx, qword [0x14017d3a8]
mov rbx, qword [rbp - 0x28]
lea r14, [0x14017d3a8]
cmp rcx, r14
je 0x140124800
test byte [rcx + 0x1c], 1
je 0x140124800
cmp byte [rcx + 0x19], 4
jb 0x140124800
mov rcx, qword [rcx + 0x10]
lea r8, [0x140012a28]
mov edx, reloc.ole32.dll_CoRevokeClassObject
mov r9, rbx
call fcn.14001ec40
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x140124871
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x140124871
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov rcx, qword [0x14017d3a8]
cmp rcx, r14
je 0x14012497e
test byte [rcx + 0x1c], 1
je 0x14012497e
cmp byte [rcx + 0x19], 4
jb 0x14012497e
mov edx, CoDisconnectObject
mov rcx, qword [rcx + 0x10]
lea r8, [0x140012a28]
mov r9, rbx
mov dword [rsp + 0x20], edi
call fcn.14001ecbc
jmp 0x140124977
test rbx, rbx
je 0x14012488d
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
and qword [rbp - 0x28], 0
jmp 0x14012488d
lea r14, [0x14017d3a8]
movups xmm0, xmmword [0x14017f680]
movups xmm1, xmmword [rsi]
lea rax, [rbp - 0x28]
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0x10]
lea rcx, [rbp - 0x20]
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 1
movdqu xmmword [rbp - 0x10], xmm0
movdqu xmmword [rbp - 0x20], xmm1
call fcn.14009747c
mov edi, eax
test eax, eax
jns 0x1401248f5
mov rcx, qword [0x14017d3a8]
cmp rcx, r14
je 0x1401248ec
test byte [rcx + 0x1c], 1
je 0x1401248ec
cmp byte [rcx + 0x19], 2
jb 0x1401248ec
mov edx, reloc.ole32.dll_CoDisconnectObject
jmp 0x1401247a9
mov rbx, qword [rbp - 0x28]
jmp 0x14012497e
mov rbx, qword [rbp - 0x28]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x140124947
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x140124977
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov rcx, qword [0x14017d3a8]
cmp rcx, r14
je 0x14012497e
test byte [rcx + 0x1c], 1
je 0x14012497e
cmp byte [rcx + 0x19], 4
jb 0x14012497e
mov edx, 0x14
jmp 0x140124855
mov rcx, qword [0x14017d3a8]
cmp rcx, r14
je 0x14012497e
test byte [rcx + 0x1c], 1
je 0x14012497e
cmp byte [rcx + 0x19], 4
jb 0x14012497e
mov rcx, qword [rcx + 0x10]
lea r8, [0x140012a28]
mov edx, 0x15
mov r9, rbx
call fcn.14001ec40
mov rcx, qword [0x14017d3a8]
test rbx, rbx
je 0x14012499c
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140124995
lea r14, [0x14017d3a8]
mov rcx, qword [0x14017d3a8]
cmp rcx, r14
je 0x1401249c2
test byte [rcx + 0x1c], 1
je 0x1401249c2
cmp byte [rcx + 0x19], 4
jb 0x1401249c2
mov rcx, qword [rcx + 0x10]
lea r8, [0x140012a28]
mov edx, 0x16
call fcn.14001dd24
mov eax, edi
mov rbx, qword [rsp + 0x90]
add rsp, 0x60
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret