Function at 0x10000f388
Capabilities:
Delete directory

Disassembly:
mov rax, rsp
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0xb0
mov qword [rsp + 0x88], 0xfffffffffffffffe
and dword [rax + 8], 0
call fcn.10000ec20
mov dword [rsp + 0xf0], eax
lea rcx, [0x100007f20]
call fcn.1000262f0
test al, al
je 0x10000f4a3
mov ecx, dword [rsp + 0xf0]
test ecx, ecx
jns 0x10000f3ef
lea rdx, [0x100007d98]
call fcn.1000128bc
mov eax, dword [rsp + 0xf0]
jmp 0x10000f9e5
and qword [rsp + 0x100], 0
lea rcx, [rsp + 0x100]
call fcn.10000e878
mov dword [rsp + 0xf0], eax
mov rbx, qword [rsp + 0x100]
test eax, eax
js 0x10000f467
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x10000f42c
call fcn.100027b98
jmp 0x10000f42e
xor eax, eax
mov dword [rsp + 0xf0], eax
test eax, eax
js 0x10000f456
lea rcx, [0x100007f30]
call fcn.10001288c
mov rdx, rbx
lea rcx, [0x100007f88]
call fcn.10001288c
jmp 0x10000f467
mov r8, rbx
lea rdx, [0x100007f98]
mov ecx, eax
call fcn.1000128bc
call fcn.10000e998
mov edi, eax
mov dword [rsp + 0xf0], eax
test eax, eax
jns 0x10000f48e
test rbx, rbx
je 0x10000f487
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_free]
mov eax, edi
jmp 0x10000f9e5
test rbx, rbx
je 0x10000f49c
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_free]
xor eax, eax
jmp 0x10000f9e5
and qword [rsp + 0x38], 0
lea rcx, [rsp + 0x38]
call fcn.10000e878
and qword [rsp + 0x90], 0
xor ebx, ebx
mov qword [rsp + 0x28], rbx
mov rsi, qword [rsp + 0x38]
test rsi, rsi
je 0x10000f4df
mov rdx, rsi
lea rcx, [rsp + 0x28]
call fcn.1000253cc
mov rbx, qword [rsp + 0x28]
and qword [rsp + 0x100], 0
lea rcx, [rsp + 0x100]
call fcn.100019eec
mov dword [rsp + 0xf0], eax
test eax, eax
jns 0x10000f565
lea rdx, [0x100007fd0]
mov ecx, eax
call fcn.1000128bc
mov edi, dword [rsp + 0xf0]
mov rcx, qword [rsp + 0x100]
test rcx, rcx
je 0x10000f529
mov rax, qword [rcx]
call qword [rax + 8]
nop
test rbx, rbx
je 0x10000f541
xor r8d, r8d
lea rdx, [fcn.10000f280]
mov rcx, rbx
call fcn.10000edd0
nop
test rbx, rbx
je 0x10000f550
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_free]
nop
test rsi, rsi
je 0x10000f55e
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_free]
mov eax, edi
jmp 0x10000f9e5
lea rax, [0x100008930]
mov qword [rsp + 0x40], rax
mov rdi, qword [rsp + 0x100]
test rdi, rdi
je 0x10000f586
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov qword [rsp + 0x48], rdi
mov byte [rsp + 0x50], 1
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x58], rax
and qword [rsp + 0x108], 0
lea rcx, [rsp + 0x108]
call fcn.100019100
mov dword [rsp + 0xf0], eax
test eax, eax
jns 0x10000f63d
lea rdx, [0x100008008]
mov ecx, eax
call fcn.1000128bc
mov ebp, dword [rsp + 0xf0]
mov rcx, qword [rsp + 0x108]
test rcx, rcx
je 0x10000f5e7
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rsp + 0x40]
call fcn.100014c74
nop
test rdi, rdi
je 0x10000f601
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
nop
test rbx, rbx
je 0x10000f619
xor r8d, r8d
lea rdx, [fcn.10000f280]
mov rcx, rbx
call fcn.10000edd0
nop
test rbx, rbx
je 0x10000f628
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_free]
nop
test rsi, rsi
je 0x10000f636
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_free]
mov eax, ebp
jmp 0x10000f9e5
mov r12, qword [rsp + 0x108]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x18]
and qword [rsp + 0xa0], 0
xor ebp, ebp
mov qword [rsp + 0x30], rbp
test rax, rax
je 0x10000f676
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1000253cc
mov rbp, qword [rsp + 0x30]
and qword [rsp + 0x20], 0
mov r8, r12
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.10001a234
mov dword [rsp + 0xf0], eax
test eax, eax
jns 0x10000f74b
lea rdx, [0x100008040]
mov ecx, eax
call fcn.1000128bc
mov r13d, dword [rsp + 0xf0]
mov rcx, qword [rsp + 0x20]
test rcx, rcx
je 0x10000f6c2
mov rax, qword [rcx]
call qword [rax + 8]
nop
test rbp, rbp
je 0x10000f6da
xor r8d, r8d
lea rdx, [fcn.10000f280]
mov rcx, rbp
call fcn.10000edd0
nop
test rbp, rbp
je 0x10000f6e9
mov rcx, rbp
call qword [sym.imp.msvcrt.dll_free]
nop
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 8]
nop
lea rcx, [rsp + 0x40]
call fcn.100014c74
nop
test rdi, rdi
je 0x10000f70e
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
nop
test rbx, rbx
je 0x10000f726
xor r8d, r8d
lea rdx, [fcn.10000f280]
mov rcx, rbx
call fcn.10000edd0
nop
test rbx, rbx
je 0x10000f735
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_free]
nop
test rsi, rsi
je 0x10000f743
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_free]
mov eax, r13d
jmp 0x10000f9e5
mov byte [rsp + 0x50], 0
and dword [rsp + 0xf8], 0
mov r13, qword [rsp + 0x20]
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 0x30]
mov r14, rax
test rax, rax
je 0x10000f777
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx]
mov qword [rsp + 0x98], r14
test r14, r14
je 0x10000f896
mov byte [rsp + 0x60], 0
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x80], r14
mov rax, qword [r12]
mov rdx, r14
mov rcx, r12
call qword [rax + 0x28]
mov dword [rsp + 0xf0], eax
test eax, eax
jns 0x10000f800
mov r10, qword [r12]
mov r9, r14
mov r8d, eax
xor edx, edx
mov rcx, r12
call qword [r10 + 0x38]
mov ecx, dword [rsp + 0xf8]
test eax, eax
cmovs ecx, eax
mov dword [rsp + 0xf8], ecx
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 8]
jmp 0x10000f75d
mov byte [rsp + 0x60], 1
mov rax, qword [r14]
mov rdx, r12
mov rcx, r14
call qword [rax + 0x48]
mov r8d, eax
mov dword [rsp + 0xf0], eax
test eax, eax
jns 0x10000f866
lea rdx, [0x100008078]
mov ecx, eax
call fcn.1000128bc
nop
mov rax, qword [r12]
mov r9, r14
mov r8d, dword [rsp + 0xf0]
mov dl, 1
mov rcx, r12
call qword [rax + 0x38]
mov ecx, dword [rsp + 0xf8]
test eax, eax
cmovs ecx, eax
mov dword [rsp + 0xf8], ecx
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 8]
jmp 0x10000f75d
mov rax, qword [r12]
mov r9, r14
mov dl, 1
mov rcx, r12
call qword [rax + 0x38]
mov ecx, dword [rsp + 0xf8]
test eax, eax
cmovs ecx, eax
mov dword [rsp + 0xf8], ecx
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 8]
jmp 0x10000f75d
mov ecx, dword [rsp + 0xf8]
test ecx, ecx
jns 0x10000f952
lea rdx, [0x1000080b0]
call fcn.1000128bc
mov r14d, dword [rsp + 0xf8]
test r13, r13
je 0x10000f8c9
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 8]
nop
test rbp, rbp
je 0x10000f8e1
xor r8d, r8d
lea rdx, [fcn.10000f280]
mov rcx, rbp
call fcn.10000edd0
nop
test rbp, rbp
je 0x10000f8f0
mov rcx, rbp
call qword [sym.imp.msvcrt.dll_free]
nop
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 8]
nop
lea rcx, [rsp + 0x40]
call fcn.100014c74
nop
test rdi, rdi
je 0x10000f915
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
nop
test rbx, rbx
je 0x10000f92d
xor r8d, r8d
lea rdx, [fcn.10000f280]
mov rcx, rbx
call fcn.10000edd0
nop
test rbx, rbx
je 0x10000f93c
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_free]
nop
test rsi, rsi
je 0x10000f94a
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_free]
mov eax, r14d
jmp 0x10000f9e5
test r13, r13
je 0x10000f962
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 8]
nop
test rbp, rbp
je 0x10000f97a
xor r8d, r8d
lea rdx, [fcn.10000f280]
mov rcx, rbp
call fcn.10000edd0
nop
test rbp, rbp
je 0x10000f989
mov rcx, rbp
call qword [sym.imp.msvcrt.dll_free]
nop
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 8]
nop
lea rcx, [rsp + 0x40]
call fcn.100014c74
nop
test rdi, rdi
je 0x10000f9ae
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
nop
test rbx, rbx
je 0x10000f9c6
xor r8d, r8d
lea rdx, [fcn.10000f280]
mov rcx, rbx
call fcn.10000edd0
nop
test rbx, rbx
je 0x10000f9d5
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_free]
nop
test rsi, rsi
je 0x10000f9e3
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_free]
xor eax, eax
add rsp, 0xb0
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret