Function at 0x402120
Capabilities:
Delete directory

Disassembly:
mov r11, rsp
sub rsp, 0x288
mov rax, qword [0x0040f008]
mov qword [rsp + 0x230], rax
mov qword [r11 - 8], rbx
mov qword [r11 - 0x18], rsi
mov qword [r11 - 0x20], rdi
mov qword [r11 - 0x40], r15
lea rcx, str.KmInst
xor edi, edi
xor edx, edx
mov rsi, r8
mov r15d, edi
call fcn.004011e0
lea rcx, str.KmCopy64_____s__n
mov rdx, rsi
call fcn.004012c0
mov ecx, 0x6188
call fcn.00403090
test rax, rax
je 0x40218a
mov rcx, rax
call fcn.004011b0
mov rbx, rax
jmp 0x40218d
mov rbx, rdi
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x278], rbp
mov qword [rsp + 0x260], r12
call fcn.00401010
lea rcx, str.Arguments____d_n
mov edx, eax
mov r12d, eax
call fcn.004012c0
test r12d, r12d
mov ebp, edi
jle 0x4023dc
mov qword [rsp + 0x258], r13
lea rsi, [rbx + 0x2080]
mov qword [rsp + 0x250], r14
mov r14, rsi
mov r13, rbx
cmp byte [rbx + 0x6184], dil
je 0x4021f9
cmp ebp, dword [rbx + 0x6180]
mov r8, r14
cmovge r8, rdi
jmp 0x402206
cmp ebp, dword [rbx + 0x6180]
mov r8, r13
cmovge r8, rdi
lea rcx, str.___d____s__n
mov edx, ebp
call fcn.004012c0
inc ebp
add r14, 0x208
add r13, 0x104
cmp ebp, r12d
jl 0x4021e1
test r12d, r12d
mov r14, qword [rsp + 0x250]
mov r13, qword [rsp + 0x258]
jle 0x4023dc
mov ecx, 0x628
call fcn.00403090
test rax, rax
je 0x40225e
mov rcx, rax
call fcn.00402010
mov rbp, rax
jmp 0x402261
mov rbp, rdi
cmp byte [rbx + 0x6184], dil
je 0x402276
cmp dword [rbx + 0x6180], edi
cmovle rsi, rdi
jmp 0x402283
cmp dword [rbx + 0x6180], edi
mov rsi, rbx
cmovle rsi, rdi
lea rcx, [rsp + 0x20]
nop
nop
movzx eax, byte [rsi]
inc rcx
inc rsi
test al, al
mov byte [rcx - 1], al
jne 0x402290
lea rdx, str.CopyFile
lea rcx, [rsp + 0x20]
call fcn.00402740
test eax, eax
jne 0x402326
movzx ecx, byte [rbx + 0x6184]
test cl, cl
je 0x4022d9
mov eax, dword [rbx + 0x6180]
cmp eax, 2
jg 0x4022d0
mov r8, rdi
jmp 0x4022f0
lea r8, [rbx + 0x2490]
jmp 0x4022f0
mov eax, dword [rbx + 0x6180]
cmp eax, 2
jg 0x4022e9
mov r8, rdi
jmp 0x4022f0
lea r8, [rbx + 0x208]
test cl, cl
je 0x402307
cmp eax, 1
jg 0x4022fe
mov rdx, rdi
jmp 0x402318
lea rdx, [rbx + 0x2288]
jmp 0x402318
cmp eax, 1
jg 0x402311
mov rdx, rdi
jmp 0x402318
lea rdx, [rbx + 0x104]
xor r9d, r9d
mov rcx, rbp
call fcn.00401db0
mov r15d, eax
lea rdx, str.DeleteFile
lea rcx, [rsp + 0x20]
call fcn.00402740
test eax, eax
jne 0x40237b
cmp byte [rbx + 0x6184], dil
je 0x40235b
cmp dword [rbx + 0x6180], 1
jg 0x402352
mov rdx, rdi
jmp 0x402370
lea rdx, [rbx + 0x2288]
jmp 0x402370
cmp dword [rbx + 0x6180], 1
jg 0x402369
mov rdx, rdi
jmp 0x402370
lea rdx, [rbx + 0x104]
mov rcx, rbp
call fcn.00401880
mov r15d, eax
lea rdx, str.RemoveDirectory
lea rcx, [rsp + 0x20]
call fcn.00402740
test eax, eax
jne 0x4023c7
cmp byte [rbx + 0x6184], dil
je 0x4023ab
cmp dword [rbx + 0x6180], 1
jle 0x4023bb
lea rdi, [rbx + 0x2288]
jmp 0x4023bb
cmp dword [rbx + 0x6180], 1
jle 0x4023bb
lea rdi, [rbx + 0x104]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
mov r15d, eax
test rbp, rbp
je 0x4023dc
mov rcx, rbp
call entry0
mov rcx, rbp
call fcn.00403080
test rbx, rbx
mov r12, qword [rsp + 0x260]
mov rdi, qword [rsp + 0x268]
mov rsi, qword [rsp + 0x270]
mov rbp, qword [rsp + 0x278]
je 0x402411
mov rcx, rbx
call entry0
mov rcx, rbx
call fcn.00403080
lea rcx, str.KmCopy64_Ended._C_ya__n
call fcn.004012c0
mov rbx, qword [rsp + 0x280]
mov eax, r15d
mov r15, qword [rsp + 0x248]
mov rcx, qword [rsp + 0x230]
call fcn.0040a3f0
add rsp, 0x288
ret