Function at 0x14000928e
Capabilities:
Delete file

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x288
mov r12d, edx
mov rbx, rcx
mov edi, edx
call fcn.1400091ec
and r12d, 4
mov r13d, eax
test dil, 8
je 0x1400092d7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rdx, qword [0x140010c90]
cmp eax, 1
adc dword [rdx + 8], 0
jmp 0x140009519
mov r14d, edi
and r14d, 1
jne 0x1400092f9
mov rdx, rbx
lea rcx, [0x14004cea0]
call fcn.140008c13
mov rcx, rbx
call fcn.1400085fb
jmp 0x140009337
test eax, eax
jne 0x14000930c
mov rdx, rbx
lea rcx, str.RMDir:_RemoveDirectory_invalid_input___s__
jmp 0x1400094fd
test dil, 2
je 0x140009493
lea rsi, [0x14004cea0]
mov rdx, rbx
mov rcx, rsi
call fcn.140008c13
lea rdx, str..
mov rcx, rsi
call sub.KERNEL32.dll_lstrcatW
cmp word [rbx], 0
jne 0x140009347
cmp word [0x14004cea0], 0x5c
jne 0x140009356
lea rdx, [0x14000e3e0]
mov rcx, rbx
call sub.KERNEL32.dll_lstrcatW
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea rcx, [0x14004cea0]
movsxd rsi, eax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
add rsi, rsi
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
add rsi, rbx
mov rbp, rax
cmp rax, 0xffffffffffffffff
je 0x14000947b
lea rax, [rsp + 0x5c]
mov r15, qword [sym.imp.KERNEL32.dll_FindNextFileW]
mov qword [rsp + 0x28], rax
cmp word [rsp + 0x5c], 0x2e
jne 0x1400093c8
mov ax, word [rsp + 0x5e]
test ax, ax
je 0x14000945f
cmp ax, 0x2e
jne 0x1400093c8
cmp word [rsp + 0x60], 0
je 0x14000945f
mov rdx, qword [rsp + 0x28]
mov rcx, rsi
call fcn.140008c13
test byte [rsp + 0x30], 0x10
je 0x1400093f2
mov eax, edi
and eax, 3
cmp eax, 3
jne 0x14000945f
mov edx, edi
mov rcx, rbx
call fcn.14000928e
jmp 0x14000945f
mov rdx, rbx
lea rcx, str.Delete:_DeleteFile___s__
call fcn.14000914a
mov edx, r12d
mov rcx, rbx
call fcn.140008799
mov rdx, rbx
test eax, eax
jne 0x140009455
test r12d, r12d
je 0x14000943d
lea rcx, str.Delete:_DeleteFile_on_Reboot___s__
call fcn.14000914a
mov rdx, rbx
mov ecx, 0xfffffff1
call fcn.140006d6d
xor edx, edx
mov rcx, rbx
call fcn.1400089a9
jmp 0x14000945f
lea rcx, str.Delete:_DeleteFile_failed___s__
call fcn.14000914a
mov rax, qword [0x140010c90]
inc dword [rax + 8]
jmp 0x14000945f
mov ecx, 0xfffffff2
call fcn.140006d6d
mov rdx, qword [rsp + 0x20]
mov rcx, rbp
call r15
test eax, eax
jne 0x1400093a0
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FindClose]
test r14d, r14d
je 0x140009519
mov word [rsi - 2], 0
test r13d, r13d
je 0x1400092fd
mov rcx, rbx
call fcn.1400091bd
test rax, rax
je 0x140009519
mov rcx, rbx
call fcn.140008c2e
mov rdx, rbx
lea rcx, str.RMDir:_RemoveDirectory___s__
call fcn.14000914a
mov edx, r12d
mov rcx, rbx
or edx, 1
call fcn.140008799
mov rdx, rbx
test eax, eax
jne 0x14000950e
test r12d, r12d
je 0x1400094f6
lea rcx, str.RMDir:_RemoveDirectory_on_Reboot___s__
call fcn.14000914a
mov rdx, rbx
mov ecx, 0xfffffff1
call fcn.140006d6d
xor edx, edx
mov rcx, rbx
call fcn.1400089a9
jmp 0x140009519
lea rcx, str.RMDir:_RemoveDirectory_failed___s__
call fcn.14000914a
mov rax, qword [0x140010c90]
inc dword [rax + 8]
jmp 0x140009519
mov ecx, 0xffffffe5
call fcn.140006d6d
nop
add rsp, 0x288
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret