Function at 0x1400c3e60
Capabilities:
Delete directory

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x288]
sub rsp, 0x360
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1402c4148]
xor rax, rsp
mov qword [rbp + 0x250], rax
xor r12d, r12d
mov dword [rsp + 0x30], r12d
mov r15d, r12d
mov rdx, rcx
lea rcx, [rbp - 0x78]
call fcn.140006840
nop
lea edx, [r12 + 0x10]
lea rcx, [rbp - 0x78]
call fcn.1400b38b0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], r12
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 7
mov word [rbp - 0x28], r12w
lea edx, [r12 + 8]
lea rcx, [rbp - 0x58]
call fcn.140078810
lea ecx, [r12 + 8]
call fcn.140187028
mov qword [rsp + 0x38], rax
mov qword [rax], 0xffffffffffffffff
mov qword [rbp - 0x58], rax
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r12w
mov r14d, 1
mov dword [rsp + 0x30], r14d
mov rdx, qword [rbp - 0x68]
add rdx, 3
lea rcx, [rsp + 0x48]
call fcn.140019f80
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
mov rdi, qword [rbp - 0x68]
mov rsi, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
sub rax, rsi
cmp rdi, rax
ja 0x1400c3fb0
lea rax, [rsi + rdi]
mov qword [rsp + 0x58], rax
lea rbx, [rsp + 0x48]
cmp rcx, 8
cmovae rbx, qword [rsp + 0x48]
lea r8, [rdi + rdi]
lea rcx, [rbx + rsi*2]
mov rdx, r9
call fcn.14018d350
lea rax, [rsi + rdi]
mov word [rbx + rax*2], r12w
jmp 0x1400c3fc2
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.140007480
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rax, rdx
sub rax, rcx
cmp rax, 3
jb 0x1400c400d
lea rdi, [rcx + 3]
mov qword [rsp + 0x58], rdi
lea rbx, [rsp + 0x48]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x48]
lea rcx, [rbx + rcx*2]
mov r8d, 6
lea rdx, [0x140249ac0]
call fcn.14018d350
mov word [rbx + rdi*2], r12w
jmp 0x1400c402c
mov qword [rsp + 0x20], 3
lea r9, [0x140249ac0]
mov edx, 3
lea rcx, [rsp + 0x48]
call fcn.140007480
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x58]
call fcn.1400d98b0
movzx ebx, al
and r14d, 0xfffffffe
mov dword [rsp + 0x30], r14d
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400c408c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c4087
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a9d
call fcn.140187064
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r12w
test bl, bl
je 0x1400c4796
movzx ecx, byte [rbp - 0x30]
shr cl, 4
mov r12, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x18]
mov r13, qword [rbp - 0x28]
and cl, 1
je 0x1400c40fe
test rsi, rsi
je 0x1400c40fe
lea rax, [rbp - 0x28]
cmp r12, 8
cmovae rax, r13
cmp word [rax], 0x2e
jne 0x1400c40fe
cmp rsi, 1
je 0x1400c43e8
lea rax, [rbp - 0x28]
cmp r12, 8
cmovae rax, r13
cmp word [rax + 2], 0x2e
jne 0x1400c40fe
cmp rsi, 2
je 0x1400c43e8
test cl, cl
je 0x1400c4271
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], ax
or r14d, 2
mov dword [rsp + 0x30], r14d
mov rdx, qword [rbp - 0x68]
add rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.140019f80
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
mov rdi, qword [rbp - 0x68]
mov r15, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
sub rax, r15
cmp rdi, rax
ja 0x1400c419a
lea rax, [r15 + rdi]
mov qword [rsp + 0x58], rax
lea rbx, [rsp + 0x48]
cmp rcx, 8
cmovae rbx, qword [rsp + 0x48]
lea r8, [rdi + rdi]
lea rcx, [rbx + r15*2]
mov rdx, r9
call fcn.14018d350
lea rax, [r15 + rdi]
xor ecx, ecx
mov word [rbx + rax*2], cx
jmp 0x1400c41ac
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.140007480
lea r9, [rbp - 0x28]
cmp r12, 8
cmovae r9, r13
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x1400c41fd
lea rdi, [rcx + rsi]
mov qword [rsp + 0x58], rdi
lea rbx, [rsp + 0x48]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x48]
lea r8, [rsi + rsi]
lea rcx, [rbx + rcx*2]
mov rdx, r9
call fcn.14018d350
xor esi, esi
mov word [rbx + rdi*2], si
jmp 0x1400c4211
mov qword [rsp + 0x20], rsi
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.140007480
xor esi, esi
lea rcx, [rsp + 0x48]
call fcn.1400c3e60
mov r15, rax
and r14d, 0xfffffffd
mov dword [rsp + 0x30], r14d
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400c43d5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c43d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a91
jmp 0x1400c43d0
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], ax
or r14d, 4
mov dword [rsp + 0x30], r14d
mov rdx, qword [rbp - 0x68]
add rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.140019f80
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
mov rdi, qword [rbp - 0x68]
mov r15, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
sub rax, r15
cmp rdi, rax
ja 0x1400c4305
lea rax, [rdi + r15]
mov qword [rsp + 0x58], rax
lea rbx, [rsp + 0x48]
cmp rcx, 8
cmovae rbx, qword [rsp + 0x48]
lea r8, [rdi + rdi]
lea rcx, [rbx + r15*2]
mov rdx, r9
call fcn.14018d350
lea rax, [r15 + rdi]
xor ecx, ecx
mov word [rbx + rax*2], cx
jmp 0x1400c4317
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.140007480
lea r9, [rbp - 0x28]
cmp r12, 8
cmovae r9, r13
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x1400c4368
lea rdi, [rcx + rsi]
mov qword [rsp + 0x58], rdi
lea rbx, [rsp + 0x48]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x48]
lea r8, [rsi + rsi]
lea rcx, [rbx + rcx*2]
mov rdx, r9
call fcn.14018d350
xor esi, esi
mov word [rbx + rdi*2], si
jmp 0x1400c437c
mov qword [rsp + 0x20], rsi
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.140007480
xor esi, esi
lea rcx, [rsp + 0x48]
call fcn.1400fd7f0
movzx r15d, al
and r14d, 0xfffffffb
mov dword [rsp + 0x30], r14d
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400c43d5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c43d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4aa3
call fcn.140187064
mov word [rsp + 0x48], si
mov qword [rsp + 0x60], 7
mov qword [rsp + 0x58], rsi
xor r12d, r12d
mov rdi, qword [rbp - 0x58]
mov rbx, qword [rdi]
cmp rbx, 0xffffffffffffffff
je 0x1400c479a
xor edx, edx
mov r8d, 0x250
lea rcx, [rbp]
call fcn.14018da90
lea rdx, [rbp]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x1400c4796
lea r8, [rbp - 0x50]
lea rdx, [rbp]
call fcn.1400d95b0
movzx ecx, byte [rbp - 0x30]
shr cl, 4
mov r12, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x18]
mov r13, qword [rbp - 0x28]
and cl, 1
je 0x1400c4481
test rsi, rsi
je 0x1400c4481
lea rax, [rbp - 0x28]
cmp r12, 8
cmovae rax, r13
cmp word [rax], 0x2e
jne 0x1400c4481
cmp rsi, 1
je 0x1400c43e8
lea rax, [rbp - 0x28]
cmp r12, 8
cmovae rax, r13
cmp word [rax + 2], 0x2e
jne 0x1400c4481
cmp rsi, 2
je 0x1400c43e8
test cl, cl
je 0x1400c4611
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], ax
or r14d, 8
mov dword [rsp + 0x30], r14d
mov rdx, qword [rbp - 0x68]
add rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.140019f80
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
mov rdi, qword [rbp - 0x68]
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x38], rcx
mov rdx, qword [rsp + 0x60]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x1400c4526
lea rax, [rdi + rcx]
mov qword [rsp + 0x58], rax
lea rbx, [rsp + 0x48]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x48]
lea r8, [rdi + rdi]
lea rcx, [rbx + rcx*2]
mov rdx, r9
call fcn.14018d350
mov rax, qword [rsp + 0x38]
add rax, rdi
xor ecx, ecx
mov word [rbx + rax*2], cx
jmp 0x1400c4538
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.140007480
lea r9, [rbp - 0x28]
cmp r12, 8
cmovae r9, r13
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x1400c458b
lea rdi, [rcx + rsi]
mov qword [rsp + 0x58], rdi
lea rbx, [rsp + 0x48]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x48]
lea r8, [rsi + rsi]
lea rcx, [rbx + rcx*2]
mov rdx, r9
call fcn.14018d350
xor r12d, r12d
mov word [rbx + rdi*2], r12w
jmp 0x1400c45a0
mov qword [rsp + 0x20], rsi
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.140007480
xor r12d, r12d
lea rcx, [rsp + 0x48]
call fcn.1400c3e60
add r15, rax
and r14d, 0xfffffff7
mov dword [rsp + 0x30], r14d
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400c45f8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c45f3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4aa9
call fcn.140187064
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r12w
jmp 0x1400c43eb
xor eax, eax
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], rax
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], ax
or r14d, 0x10
mov dword [rsp + 0x30], r14d
mov rdx, qword [rbp - 0x68]
add rdx, rsi
lea rcx, [rsp + 0x68]
call fcn.140019f80
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
mov rdi, qword [rbp - 0x68]
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x38], rcx
mov rdx, qword [rbp - 0x80]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x1400c46ab
lea rax, [rdi + rcx]
mov qword [rsp + 0x78], rax
lea rbx, [rsp + 0x68]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x68]
lea r8, [rdi + rdi]
lea rcx, [rbx + rcx*2]
mov rdx, r9
call fcn.14018d350
mov rax, qword [rsp + 0x38]
add rax, rdi
xor ecx, ecx
mov word [rbx + rax*2], cx
jmp 0x1400c46bd
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.140007480
lea r9, [rbp - 0x28]
cmp r12, 8
cmovae r9, r13
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rbp - 0x80]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x1400c470f
lea rdi, [rcx + rsi]
mov qword [rsp + 0x78], rdi
lea rbx, [rsp + 0x68]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x68]
lea r8, [rsi + rsi]
lea rcx, [rbx + rcx*2]
mov rdx, r9
call fcn.14018d350
xor r12d, r12d
mov word [rbx + rdi*2], r12w
jmp 0x1400c4724
mov qword [rsp + 0x20], rsi
mov rdx, rsi
lea rcx, [rsp + 0x68]
call fcn.140007480
xor r12d, r12d
lea rcx, [rsp + 0x68]
call fcn.1400fd7f0
movzx eax, al
add r15, rax
and r14d, 0xffffffef
mov dword [rsp + 0x30], r14d
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x1400c477e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c4779
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4aaf
call fcn.140187064
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r12w
jmp 0x1400c43eb
mov rdi, qword [rbp - 0x58]
mov rcx, qword [rdi]
cmp rcx, 0xffffffffffffffff
je 0x1400c47b4
call qword [sym.imp.KERNEL32.dll_FindClose]
test eax, eax
je 0x1400c47b4
mov qword [rdi], 0xffffffffffffffff
lea rcx, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rcx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x1400c4874
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], r12
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r12w
lea rdx, [rsp + 0x68]
lea rcx, [rbp - 0x78]
call fcn.1400fea50
test al, al
je 0x1400c490f
lea rcx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
je 0x1400c490f
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x1400c4861
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c485c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4ab5
call fcn.140187064
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r12w
inc r15
lea rcx, [rbp - 0x58]
call fcn.1400d97e0
nop
lea rcx, [rbp - 0x28]
call fcn.140006a90
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x1400c48cb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c48c6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4abb
call fcn.140187064
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r12w
mov rax, r15
mov rcx, qword [rbp + 0x250]
xor rcx, rsp
call fcn.140187610
lea r11, [rsp + 0x360]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x1400c4950
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c494b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4ac1
call fcn.140187064
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r12w
lea rcx, [rbp - 0x78]
call fcn.1400fcba0
mov ebx, eax
cmp eax, 0xffffffff
je 0x1400c4877
xor edx, edx
lea rcx, [rbp - 0x78]
call fcn.1400fca80
lea rcx, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rcx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x1400c4874
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], r12
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r12w
lea rdx, [rsp + 0x68]
lea rcx, [rbp - 0x78]
call fcn.1400fea50
test al, al
je 0x1400c4a2b
lea rcx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
je 0x1400c4a2b
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x1400c4861
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c485c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a97
jmp 0x1400c485c
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x1400c4a68
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c4a63
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c4a8b
call fcn.140187064
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r12w
mov edx, ebx
lea rcx, [rbp - 0x78]
call fcn.1400fca80
jmp 0x1400c4877
call fcn.140199e4c
int3
call fcn.140199e4c
int3
call fcn.140199e4c
int3
call fcn.140199e4c
int3
call fcn.140199e4c
int3
call fcn.140199e4c
int3
call fcn.140199e4c
int3
call fcn.140199e4c
nop
call fcn.140199e4c
nop
call fcn.140199e4c
int3