Function at 0x140003822
Capabilities:
Delete directory

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push r15
mov rax, 0x12
sub rsp, 8
mov qword [rsp], 0
dec rax
jne 0x140003831
sub rsp, 0x28
mov rdx, qword [rsp + 0xd0]
lea rcx, [rsp + 0x28]
sub rsp, 0x10
call fcn.140011960
add rsp, 0x10
mov qword [rsp + 0x30], 1
push qword [0x1400178c4]
pop rcx
call fcn.14000dc0c
push qword [0x140017f00]
sub rsp, 8
push qword [0x140017f00]
movabs rax, str.BDFINOPSe_td
push rax
push qword [0x140017f00]
sub rsp, 8
push qword [0x140017f00]
pop rcx
sub rsp, 0x20
call fcn.14000dbac
add rsp, 0x28
mov rdx, qword [0x140017f10]
add qword [rsp], rdx
pop rcx
pop rdx
pop r8
sub rsp, 0x20
call fcn.140005340
add rsp, 0x28
lea rcx, [rsp + 0x40]
pop rdx
call fcn.1400117d0
push qword [0x140017f00]
sub rsp, 8
push qword [0x140017f00]
movabs rax, 0x140016023
push rax
push qword [rsp + 0x50]
push qword [rsp + 0x50]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140005410
add rsp, 0x28
lea rcx, [rsp + 0x48]
pop rdx
call fcn.1400117d0
mov rcx, qword [rsp + 0x40]
xor rdx, rdx
call fcn.140011890
or rax, rax
jne 0x140003d1f
mov r15, qword [rsp + 0x30]
mov rax, r15
mov rcx, 2
cqo
idiv rcx
mov r15, rdx
and r15, r15
jne 0x14000397f
push qword [rsp + 0x40]
pop rcx
call fcn.140005570
mov rax, rax
push rax
mov r15, qword [rsp + 0x50]
mov rbp, qword [0x14001797c]
imul r15, r15, 0xc
add rbp, r15
pop rax
mov dword [rbp + 8], eax
mov r15, qword [rsp + 0x48]
inc r15
mov qword [rsp + 0x48], r15
jmp 0x140003d1d
mov rcx, qword [rsp + 0x40]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov r15, qword [rsp + 0x50]
mov rbp, qword [0x14001797c]
imul r15, r15, 0xc
add rbp, r15
lea rcx, [rbp]
pop rdx
call fcn.1400117d0
movabs rax, str.BDFINOPSe_td
push rax
push qword [rsp + 0x48]
pop rcx
pop rdx
call fcn.140005760
and rax, rax
je 0x140003d1d
movabs rdx, 0x14001601e
lea rcx, [rsp + 0x50]
call fcn.1400116e0
movabs rdx, 0x14001601e
lea rcx, [rsp + 0x58]
call fcn.1400116e0
movabs rax, str.BDFINOPSe_td
push rax
push qword [rsp + 0x48]
pop rcx
pop rdx
call fcn.1400057c0
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 0
mov r15, qword [rsp + 0x60]
dec r15
cmp r15, qword [rsp + 0x68]
jl 0x140003d1d
push qword [rsp + 0x50]
movabs rcx, 0x14001601e
pop rdx
call fcn.140011890
or rax, rax
jne 0x140003a6e
mov rcx, qword [rsp + 0x50]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
lea rcx, [rsp + 0x60]
pop rdx
call fcn.1400117d0
push qword [0x140017f00]
sub rsp, 8
push qword [0x140017f00]
movabs rax, str.BDFINOPSe_td
push rax
mov r15, qword [rsp + 0x88]
inc r15
mov rax, r15
push rax
push qword [rsp + 0x68]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140005410
add rsp, 0x28
lea rcx, [rsp + 0x78]
pop rdx
call fcn.1400117d0
push qword [0x140017f00]
sub rsp, 8
mov rcx, qword [rsp + 0x48]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
movabs rcx, str.BDFINOPSe_td
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x70]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x88]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rdx, qword [0x140017f10]
add qword [rsp], rdx
pop rcx
sub rsp, 0x20
call fcn.14000de94
add rsp, 0x28
pop qword [0x140017f00]
mov rcx, qword [rsp + 0x50]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x78]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
movabs rcx, str.BDFINOPSe_td
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
lea rcx, [rsp + 0x58]
pop rdx
call fcn.1400117d0
mov rcx, qword [rsp + 0x38]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
movabs rcx, str.BDFINOPSe_td
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x60]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x78]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp]
mov qword [0x140017f00], rcx
mov rdx, qword [0x140017f10]
add qword [rsp], rdx
pop rdx
mov rcx, qword [0x1400179ac]
call fcn.14000f204
mov rbp, rax
mov r15, qword [rbp]
cmp r15, 1
jge 0x140003d12
mov rcx, qword [rsp + 0x38]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
movabs rcx, str.BDFINOPSe_td
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x60]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x78]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp]
mov qword [0x140017f00], rcx
mov rdx, qword [0x140017f10]
add qword [rsp], rdx
pop rdx
mov rcx, qword [0x1400179ac]
call fcn.14000f204
mov rbp, rax
mov qword [rbp], 1
push qword [0x14001799c]
pop rcx
call fcn.14000954c
mov rcx, qword [rsp + 0x38]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
movabs rcx, str.BDFINOPSe_td
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x60]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x78]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rbp, qword [0x1400179a4]
lea rcx, [rbp + 0x14]
pop rdx
call fcn.1400117d0
push qword [rsp + 0x78]
pop rax
mov dword [rbp + 0x10], eax
mov r15, qword [rsp + 0x78]
inc r15
mov qword [rsp + 0x78], r15
inc qword [rsp + 0x68]
jno 0x140003a1f
jmp 0x140003d21
jmp 0x140003d57
mov r15, qword [rsp + 0x30]
inc r15
mov qword [rsp + 0x30], r15
mov r15, qword [rsp + 0x30]
add r15, 0x400
mov rax, r15
inc rax
movabs rdx, 0x14001797c
mov rcx, rax
call fcn.140011434
jmp 0x1400038d5
push qword [rsp + 0x48]
pop rax
mov qword [0x14001784c], rax
mov qword [rsp + 0x80], 0
mov rax, qword [rsp + 0x48]
cmp rax, qword [rsp + 0x80]
jl 0x140004120
mov r15, qword [rsp + 0x80]
mov rbp, qword [0x14001797c]
imul r15, r15, 0xc
add rbp, r15
mov rcx, qword [rbp]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
lea rcx, [rsp + 0x90]
pop rdx
call fcn.1400117d0
mov r15, qword [0x140017814]
cmp r15, 1
je 0x140003deb
push qword [rsp + 0x88]
push 1
pop rcx
pop rdx
call fcn.14000e580
and rax, rax
je 0x140003deb
mov rax, 1
jmp 0x140003dee
xor rax, rax
and rax, rax
je 0x140003eea
push 1
pop rcx
call fcn.14000df70
push qword [0x140017f00]
sub rsp, 8
push 0x23
mov rcx, qword [0x14001783c]
push qword [0x140017f00]
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
movabs rcx, 0x140016021
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
mov rcx, qword [rsp + 0xa8]
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
movabs rcx, 0x140016021
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
mov rcx, qword [0x14001785c]
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
inc qword [0x140017f00]
push qword [0x1400178ec]
mov rdx, qword [0x140017f10]
add qword [rsp + 8], rdx
pop rcx
pop rdx
pop r8
sub rsp, 0x20
call fcn.140008774
add rsp, 0x28
pop qword [0x140017f00]
mov qword [rsp + 0x90], rax
mov r15, qword [rsp + 0x90]
cmp r15, 7
jne 0x140003ecf
jmp 0x140004112
mov r15, qword [rsp + 0x90]
cmp r15, 2
jne 0x140003eea
call fcn.140004941
xor rax, rax
jmp 0x1400042ac
push qword [rsp + 0x88]
push 1
pop rcx
pop rdx
call fcn.14000e370
and rax, rax
je 0x140004066
push qword [0x140017f00]
sub rsp, 8
push qword [rsp + 0x98]
push qword [0x140017f00]
movabs rcx, str.v2eincfile
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
push qword [0x140017f00]
sub rsp, 8
push qword [0x140017f00]
mov r15, qword [rsp + 0xd0]
inc r15
mov rax, r15
push rax
pop rcx
pop rdx
sub rsp, 0x20
call fcn.1400052e0
add rsp, 0x28
pop rax
mov rdx, qword [0x140017f10]
add qword [rsp], rdx
pop rcx
pop rdx
sub rsp, 0x20
call fcn.140008f08
add rsp, 0x28
pop qword [0x140017f00]
mov r15, qword [rsp + 0x98]
inc r15
mov qword [rsp + 0x98], r15
push qword [rsp + 0x98]
pop rax
mov qword [0x14001784c], rax
mov r15, qword [rsp + 0x80]
mov rbp, qword [0x14001797c]
imul r15, r15, 0xc
add rbp, r15
movsxd rax, dword [rbp + 8]
push rax
pop rax
mov qword [rsp + 0xa0], rax
push qword [rsp + 0xa0]
mov r15, qword [0x140017974]
add r15, qword [rsp + 0xb0]
mov rax, r15
push rax
push 1
pop rcx
pop rdx
pop r8
call fcn.14000e670
push 1
pop rcx
call fcn.14000df70
mov r15, qword [rsp + 0xa8]
add r15, qword [rsp + 0xa0]
mov qword [rsp + 0xa8], r15
push qword [0x14001798c]
pop rcx
call fcn.14000954c
mov rcx, qword [rsp + 0x88]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rbp, qword [0x140017994]
lea rcx, [rbp + 0x10]
pop rdx
call fcn.1400117d0
push qword [rsp + 0x88]
pop rcx
call fcn.14000fc50
mov rax, rax
push rax
pop rax
mov dword [rbp + 0x18], eax
jmp 0x140004112
push qword [0x140017f00]
sub rsp, 8
push qword [0x140017f00]
push 1
push qword [rsp + 0xa8]
pop rcx
pop rdx
pop r8
sub rsp, 0x20
call fcn.140005840
add rsp, 0x28
inc qword [0x140017f00]
movabs rcx, 0x140016030
pop rdx
mov qword [0x140017f00], rdx
add rdx, qword [0x140017f10]
call fcn.140011890
or rax, rax
jne 0x140004112
mov rcx, qword [rsp + 0xb0]
push qword [0x140017f00]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
mov rcx, qword [rsp + 0x90]
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
movabs rcx, 0x140016192
sub rsp, 0x28
call fcn.1400118f0
add rsp, 0x28
lea rcx, [rsp + 0xb8]
pop rdx
call fcn.1400117d0
inc qword [rsp + 0x80]
jno 0x140003d6f
push qword [0x140017f00]
sub rsp, 8
push qword [0x140017f00]
sub rsp, 8
push qword [0x140017f00]
push qword [0x140017f00]
push qword [0x140017f00]
movabs rax, 0x140016192
push rax
push qword [rsp + 0xf0]
pop rcx
pop rdx
pop r8
sub rsp, 0x20
call fcn.140005b60
add rsp, 0x20
mov rdx, qword [0x140017f10]
add qword [rsp], rdx
pop rcx
pop rdx
sub rsp, 0x20
call fcn.1400051c0
add rsp, 0x28
mov rdx, qword [0x140017f10]
add qword [rsp], rdx
pop rcx
sub rsp, 0x20
call fcn.140005050
add rsp, 0x28
pop qword [0x140017f00]
mov r15, rax
and r15, r15
jle 0x1400042a0
push qword [0x140017f00]
sub rsp, 8
push 0x24
mov rcx, qword [0x14001787c]
push qword [0x140017f00]
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
movabs rcx, str._r_n_r_n
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
mov rcx, qword [rsp + 0xd0]
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
movabs rcx, 0x140016192
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
mov rcx, qword [0x140017834]
sub rsp, 0x20
call fcn.1400118f0
add rsp, 0x20
inc qword [0x140017f00]
push qword [0x14001796c]
mov rdx, qword [0x140017f10]
add qword [rsp + 8], rdx
pop rcx
pop rdx
pop r8
sub rsp, 0x20
call fcn.140008774
add rsp, 0x28
pop qword [0x140017f00]
mov qword [rsp + 0x90], rax
mov r15, qword [rsp + 0x90]
cmp r15, 7
jne 0x1400042a0
call fcn.140004941
push qword [0x1400178d4]
pop rcx
call fcn.14000dcf8
push qword [0x140017964]
pop rcx
call sub.KERNEL32.dll_RemoveDirectoryA
xor rax, rax
mov qword [0x14001780c], rax
jmp 0x1400022ca
mov rax, 1
jmp 0x1400042ac
push rax
mov rcx, qword [rsp + 0x30]
sub rsp, 0x28
call fcn.1400119d0
add rsp, 0x28
mov rcx, qword [rsp + 0x60]
sub rsp, 0x28
call fcn.1400119d0
add rsp, 0x28
mov rcx, qword [rsp + 0x58]
sub rsp, 0x28
call fcn.1400119d0
add rsp, 0x28
mov rcx, qword [rsp + 0xb8]
sub rsp, 0x28
call fcn.1400119d0
add rsp, 0x28
mov rcx, qword [rsp + 0x78]
sub rsp, 0x28
call fcn.1400119d0
add rsp, 0x28
mov rcx, qword [rsp + 0x90]
sub rsp, 0x28
call fcn.1400119d0
add rsp, 0x28
mov rcx, qword [rsp + 0x48]
sub rsp, 0x28
call fcn.1400119d0
add rsp, 0x28
mov rcx, qword [rsp + 0x40]
sub rsp, 0x28
call fcn.1400119d0
add rsp, 0x28
pop rax
add rsp, 0xb8
pop r15
pop rbp
ret