Function at 0x180079490
Capabilities:
Delete directory

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov rax, qword [0x18009da48]
xor rax, rsp
mov qword [rbp + 0x108], rax
mov r14, r9
mov rdi, r8
mov r15, rdx
mov qword [rsp + 0x60], rdx
mov r13d, ecx
mov dword [rsp + 0x54], ecx
xor r8d, r8d
mov qword [rsp + 0x78], r8
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r8w
mov r12d, r8d
mov qword [rbp - 0x48], r8
mov edx, 7
mov qword [rbp - 0x40], rdx
mov word [rbp - 0x58], r8w
mov ebx, ecx
lea esi, [rcx*4]
add esi, ecx
shl esi, 7
cmp ecx, esi
ja 0x1800796a2
mov ecx, 0x7265
lea edx, [r8 + 0x79]
mov r8d, 0x5165
lea r9d, [r12 + 0x75]
lea r10d, [r12 + 0x53]
lea r11d, [r12 + 0x68]
mov eax, 0x7061
cmp ebx, 0x2657
ja 0x18007963a
je 0x18007978f
mov eax, ebx
sub eax, 1
je 0x180079600
sub eax, 0x40
je 0x18007978f
sub eax, 0x56
je 0x1800795d6
sub eax, 0x19
je 0x18007959b
cmp eax, 0x37
jne 0x18007968b
mov eax, 0x50
mov word [rbp + 0xf0], ax
mov eax, 0x78
mov word [rbp + 0xf1], ax
mov eax, 0x64
mov word [rbp + 0xf2], ax
jmp 0x18007968b
mov r9, r15
mov r8, rdi
xor edx, edx
mov ecx, 0xa4
call fcn.180050520
movzx eax, byte [rdi + 4]
mov byte [r15 + 4], al
mov ecx, 0x7265
mov edx, 0x79
mov r8d, 0x5165
lea r9d, [rdx - 4]
lea r10d, [rdx - 0x26]
lea r11d, [rdx - 0x11]
jmp 0x18007968b
mov eax, dword [rdi]
mov dword [rsp + 0x30], eax
lea r8, [rsp + 0x30]
mov edx, 0x29
mov rcx, r15
call fcn.1800107d0
test rax, rax
je 0x180079787
mov eax, dword [rax + 8]
mov dword [rsp + 0x58], eax
jmp 0x1800795b5
mov dword [rsp + 0x30], 1
mov rax, qword [rdi]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov r9d, 0x11d
mov r8, r14
mov rdx, r15
lea rcx, [rsp + 0x30]
call fcn.1800784c0
mov qword [rsp + 0x58], rax
jmp 0x1800795b5
cmp ebx, 0x3aa7
je 0x18007967b
cmp ebx, 0x7467
je 0x180079672
cmp ebx, 0xae27
je 0x180079666
cmp ebx, 0xe7e7
jne 0x18007968b
mov dword [rbp + 0xfa], 0x797265
jmp 0x18007968b
mov dword [rbp + 0xf7], 0x755165
jmp 0x18007968b
mov word [rbp + 0xf5], ax
jmp 0x18007968b
mov word [rbp + 0xf3], r10w
mov word [rbp + 0xf4], r11w
mov eax, r13d
shl eax, 6
add ebx, eax
cmp ebx, esi
jbe 0x180079534
mov rdx, qword [rbp - 0x40]
xor r8d, r8d
mov ebx, r13d
mov dword [rsp + 0x30], ebx
imul eax, r13d, 0x64
mov dword [rsp + 0x40], eax
cmp r13d, eax
ja 0x18007978f
lea r14, [0x180093bac]
mov ecx, 0x65
lea r10d, [rcx - 0x24]
lea r11d, [rcx - 2]
mov r9, qword [rbp - 0x58]
mov qword [rsp + 0x38], r9
mov rdi, qword [rsp + 0x48]
mov r13d, dword [rsp + 0x40]
mov eax, 0x3f
mov esi, 0x100
cmp ebx, 0x2e05
ja 0x1800799a7
je 0x18007998f
cmp ebx, 0xe7
je 0x18007997a
cmp ebx, 0x9ed
je 0x18007995f
cmp ebx, 0x12f3
je 0x18007994c
cmp ebx, 0x1bf9
je 0x180079941
cmp ebx, 0x24ff
jne 0x180079d3f
nop dword [rax]
mov ebx, 0x120
nop word [rax + rax]
cmp ebx, 0x120
je 0x180079803
cmp ebx, 0x7980
je 0x1800797d9
cmp ebx, 0xf1e0
jne 0x18007983b
cmp dword [rsp + 0x50], 0x7a
jne 0x180079858
add r13d, 0x104
jmp 0x18007983b
mov dword [rsp + 0x58], 0
mov r9, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x180079d7a
lea rdx, [rdx*2 + 2]
mov rax, r9
cmp rdx, 0x1000
jb 0x180079d71
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180079d71
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
lea rdx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rdx, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x78]
mov rcx, qword [r15]
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x50], eax
jmp 0x18007983b
mov edx, r13d
cmp rdx, qword [rsp + 0x78]
ja 0x180079829
mov qword [rsp + 0x78], rdx
lea rax, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rax, qword [rsp + 0x68]
mov word [rax + rdx*2], r8w
jmp 0x18007983b
xor r8d, r8d
sub rdx, qword [rsp + 0x78]
lea rcx, [rsp + 0x68]
call fcn.180021640
add ebx, 0x7860
cmp ebx, 0x16920
mov r8d, 0
jbe 0x180079750
jmp 0x180079740
mov dword [rsp + 0x30], 0x24ff
lea rbx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rbx, qword [rsp + 0x68]
cmp qword [rsp + 0x78], 0
je 0x180079935
mov r8, rsi
xor edx, edx
lea rcx, [rbp - 0x10]
call sub.VCRUNTIME140.dll_memset
lea rcx, [0x180093ba8]
movzx eax, word [rcx]
cmp ax, si
jae 0x1800798de
movzx eax, al
mov byte [rbp + rax - 0x10], 1
add rcx, 2
cmp rcx, r14
jne 0x180079891
mov rcx, qword [rsp + 0x78]
dec rcx
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea rdi, [rbx + rax*2]
movzx eax, word [rdi]
cmp ax, si
jae 0x1800798d3
cmp byte [rbp + rax - 0x10], 0
jne 0x18007992a
cmp rdi, rbx
je 0x180079935
sub rdi, 2
jmp 0x1800798c4
mov rcx, qword [rsp + 0x78]
dec rcx
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea rdi, [rbx + rax*2]
nop dword [rax + rax]
mov ecx, 2
lea rax, [0x180093ba8]
movzx edx, word [rdi]
nop
cmp word [rax], dx
je 0x18007992a
add rax, 2
sub rcx, 1
jne 0x180079910
cmp rdi, rbx
je 0x180079935
sub rdi, 2
jmp 0x180079900
sub rdi, rbx
sar rdi, 1
jmp 0x180079d27
mov rdi, 0xffffffffffffffff
jmp 0x180079d27
mov r13d, 0x104
jmp 0x180079d3f
mov word [rbp + 0x103], ax
mov word [rbp + 0x104], cx
jmp 0x180079d3f
mov dword [rbp + 0xff], 0x766974
mov eax, 0x61
mov word [rbp + 0x102], ax
jmp 0x180079d3f
mov word [rbp + 0xfd], r10w
mov word [rbp + 0xfe], r11w
jmp 0x180079d3f
cmp rdi, 0xffffffffffffffff
je 0x180079793
mov qword [rsp + 0x48], 0xffffffffffffffff
jmp 0x180079d3f
cmp ebx, 0x370b
je 0x180079c2d
cmp ebx, 0x4011
je 0x180079ab7
cmp ebx, 0x4917
je 0x180079a13
cmp ebx, 0x521d
jne 0x180079d3f
mov rcx, r8
test r12, r12
je 0x180079d3a
nop
lea rax, [rbp - 0x58]
cmp rdx, 8
cmovae rax, r9
lea rdx, [r15 + 0x28]
cmp qword [r15 + 0x40], 0x10
jb 0x1800799fb
mov rdx, qword [r15 + 0x28]
movzx eax, byte [rax + rcx*2]
mov byte [rdx + rcx], al
inc rcx
cmp rcx, r12
mov rdx, qword [rbp - 0x40]
jb 0x1800799e0
jmp 0x180079d3a
lea rcx, [r15 + 0x28]
mov rdx, qword [rcx + 0x10]
cmp r12, rdx
ja 0x180079a45
mov qword [rcx + 0x10], r12
cmp qword [rcx + 0x18], 0x10
jb 0x180079a2e
mov rcx, qword [rcx]
mov byte [r12 + rcx], 0
lea rcx, [rbp + 0xf0]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
jmp 0x180079d2b
mov rsi, r12
sub rsi, rdx
mov r8, qword [rcx + 0x18]
mov rax, r8
sub rax, rdx
cmp rsi, rax
ja 0x180079a92
mov qword [rcx + 0x10], r12
cmp r8, 0x10
jb 0x180079a67
mov rcx, qword [rcx]
lea rbx, [rcx + rdx]
mov r8, rsi
xor edx, edx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
mov byte [rbx + rsi], 0
mov ebx, dword [rsp + 0x30]
lea rcx, [rbp + 0xf0]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
jmp 0x180079d2b
mov byte [rsp + 0x20], 0
mov r9, rsi
xor r8d, r8d
mov rdx, rsi
call fcn.180002c40
lea rcx, [rbp + 0xf0]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
jmp 0x180079d2b
lea rcx, [rdi + 1]
mov qword [rbp - 0x68], r8
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r8w
mov rax, qword [rsp + 0x78]
cmp rax, rcx
jb 0x180079ded
sub rax, rcx
mov r8, qword [rsp + 0x48]
cmp rax, r8
cmovb r8, rax
lea rax, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rax, qword [rsp + 0x68]
lea rdx, [rax + rcx*2]
lea rcx, [rbp - 0x78]
call fcn.180021b90
nop
lea r15, [rbp - 0x78]
mov rsi, qword [rbp - 0x78]
mov r12, qword [rbp - 0x60]
cmp r12, 8
cmovae r15, rsi
mov r14, qword [rbp - 0x68]
cmp r14, 8
jae 0x180079b33
movups xmm0, xmmword [r15]
mov qword [rbp - 0x20], 7
jmp 0x180079b7b
mov rbx, r14
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x38]
call fcn.1800213c0
mov qword [rbp - 0x38], rax
lea r8, [r14*2 + 2]
mov rdx, r15
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x20], rbx
movups xmm0, xmmword [rbp - 0x38]
mov ebx, dword [rsp + 0x30]
movups xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x28], r14
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x180079bc4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180079bbf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180079d63
call fcn.180083768
movups xmm0, xmmword [rbp - 0x78]
movups xmmword [rbp - 0x58], xmm0
movups xmm0, xmmword [rbp - 0x28]
movups xmmword [rbp - 0x48], xmm0
cmp r12, 8
jb 0x180079c0f
lea rdx, [r12*2 + 2]
mov rax, rsi
cmp rdx, 0x1000
jb 0x180079c07
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180079d6a
mov rcx, rsi
call fcn.180083768
mov r12, qword [rbp - 0x48]
mov r9, qword [rbp - 0x58]
mov qword [rsp + 0x38], r9
mov r15, qword [rsp + 0x60]
lea r14, [0x180093bac]
jmp 0x180079d30
lea rdx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x180079c8c
lea rcx, [rax - 1]
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea rcx, [rdx + rax*2]
cmp word [rcx], 0x2e
je 0x180079c72
cmp rcx, rdx
je 0x180079c8c
sub rcx, 2
cmp word [rcx], 0x2e
jne 0x180079c63
sub rcx, rdx
sar rcx, 1
cmp rcx, 0xffffffffffffffff
je 0x180079c8c
mov rsi, rcx
sub rsi, rdi
dec rsi
mov qword [rsp + 0x48], rsi
mov qword [rbp - 0x68], r8
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r8w
lea r8, [rdi + 1]
cmp qword [rsp + 0x78], r8
cmovb r8, qword [rsp + 0x78]
lea rdx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rdx, qword [rsp + 0x68]
lea rcx, [rbp - 0x78]
call fcn.180021b90
lea rbx, [r15 + 8]
lea rax, [rbp - 0x78]
cmp rbx, rax
je 0x180079ceb
mov rcx, rbx
call fcn.18001f9b0
movups xmm0, xmmword [rbp - 0x78]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rbp - 0x68]
movups xmmword [rbx + 0x10], xmm1
jmp 0x180079d27
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x180079d27
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180079d22
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180079d6a
call fcn.180083768
mov ebx, dword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r11d, 0x63
lea r10d, [r11 - 0x22]
mov ecx, 0x65
mov eax, dword [rsp + 0x54]
lea eax, [rax + rax*4]
lea ebx, [rbx + rax*2]
mov dword [rsp + 0x30], ebx
cmp ebx, dword [rsp + 0x40]
ja 0x180079793
mov rdx, qword [rbp - 0x40]
xor r8d, r8d
jmp 0x1800796e1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rcx, r9
call fcn.180083768
nop
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x180079dbe
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180079db9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180079db9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180083768
mov rax, qword [rsp + 0x58]
mov rcx, qword [rbp + 0x108]
xor rcx, rsp
call fcn.180083f10
mov rbx, qword [rsp + 0x250]
add rsp, 0x210
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.18001fa60
nop
int3