Function at 0x14000927e
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.1400091dc
and r12d, 4
mov r13d, eax
test dil, 8
je 0x1400092c7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rdx, qword [0x140010c90]
cmp eax, 1
adc dword [rdx + 8], 0
jmp 0x140009509
mov r14d, edi
and r14d, 1
jne 0x1400092e9
mov rdx, rbx
lea rcx, [0x14004cea0]
call fcn.140008c03
mov rcx, rbx
call fcn.1400085eb
jmp 0x140009327
test eax, eax
jne 0x1400092fc
mov rdx, rbx
lea rcx, str.RMDir:_RemoveDirectory_invalid_input___s__
jmp 0x1400094ed
test dil, 2
je 0x140009483
lea rsi, [0x14004cea0]
mov rdx, rbx
mov rcx, rsi
call fcn.140008c03
lea rdx, str..
mov rcx, rsi
call sub.KERNEL32.dll_lstrcatW
cmp word [rbx], 0
jne 0x140009337
cmp word [0x14004cea0], 0x5c
jne 0x140009346
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 0x14000946b
lea rax, [rsp + 0x5c]
mov r15, qword [sym.imp.KERNEL32.dll_FindNextFileW]
mov qword [rsp + 0x28], rax
cmp word [rsp + 0x5c], 0x2e
jne 0x1400093b8
mov ax, word [rsp + 0x5e]
test ax, ax
je 0x14000944f
cmp ax, 0x2e
jne 0x1400093b8
cmp word [rsp + 0x60], 0
je 0x14000944f
mov rdx, qword [rsp + 0x28]
mov rcx, rsi
call fcn.140008c03
test byte [rsp + 0x30], 0x10
je 0x1400093e2
mov eax, edi
and eax, 3
cmp eax, 3
jne 0x14000944f
mov edx, edi
mov rcx, rbx
call fcn.14000927e
jmp 0x14000944f
mov rdx, rbx
lea rcx, str.Delete:_DeleteFile___s__
call fcn.14000913a
mov edx, r12d
mov rcx, rbx
call fcn.140008789
mov rdx, rbx
test eax, eax
jne 0x140009445
test r12d, r12d
je 0x14000942d
lea rcx, str.Delete:_DeleteFile_on_Reboot___s__
call fcn.14000913a
mov rdx, rbx
mov ecx, 0xfffffff1
call fcn.140006d5d
xor edx, edx
mov rcx, rbx
call fcn.140008999
jmp 0x14000944f
lea rcx, str.Delete:_DeleteFile_failed___s__
call fcn.14000913a
mov rax, qword [0x140010c90]
inc dword [rax + 8]
jmp 0x14000944f
mov ecx, 0xfffffff2
call fcn.140006d5d
mov rdx, qword [rsp + 0x20]
mov rcx, rbp
call r15
test eax, eax
jne 0x140009390
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FindClose]
test r14d, r14d
je 0x140009509
mov word [rsi - 2], 0
test r13d, r13d
je 0x1400092ed
mov rcx, rbx
call fcn.1400091ad
test rax, rax
je 0x140009509
mov rcx, rbx
call fcn.140008c1e
mov rdx, rbx
lea rcx, str.RMDir:_RemoveDirectory___s__
call fcn.14000913a
mov edx, r12d
mov rcx, rbx
or edx, 1
call fcn.140008789
mov rdx, rbx
test eax, eax
jne 0x1400094fe
test r12d, r12d
je 0x1400094e6
lea rcx, str.RMDir:_RemoveDirectory_on_Reboot___s__
call fcn.14000913a
mov rdx, rbx
mov ecx, 0xfffffff1
call fcn.140006d5d
xor edx, edx
mov rcx, rbx
call fcn.140008999
jmp 0x140009509
lea rcx, str.RMDir:_RemoveDirectory_failed___s__
call fcn.14000913a
mov rax, qword [0x140010c90]
inc dword [rax + 8]
jmp 0x140009509
mov ecx, 0xffffffe5
call fcn.140006d5d
nop
add rsp, 0x288
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret