Function at 0x1c378
Capabilities:
Delete registry key

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], r13
push r14
sub rsp, 0x90
lea rdx, [0x0003c8b0]
lea rcx, [rax - 0x48]
mov ebx, 4
mov dword [rax + 8], ebx
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
lea r13, [0x0004f9c0]
lea r9, [rsp + 0xa0]
lea rdx, [rsp + 0x50]
mov rcx, r13
mov r8d, ebx
mov dword [rsp + 0x20], ebx
call fcn.00012c94
lea rcx, [0x0004ef00]
call fcn.0001e9a0
lea rcx, [0x0004f150]
call fcn.0001e9a0
mov r14d, 0x400
xor ebx, ebx
lea edx, [r14 + 0x10]
mov r8d, 0x72647268
xor ecx, ecx
mov word [rsp + 0x40], bx
mov word [rsp + 0x42], r14w
call qword [sym.imp.ntoskrnl.exe_ExAllocatePoolWithTag]
mov qword [rsp + 0x48], rax
cmp rax, rbx
je 0x1c46a
movzx r8d, word [rsp + 0x42]
xor edx, edx
mov rcx, rax
call fcn.0003bc80
mov rax, qword [rsp + 0x48]
movabs r11, 0x5c003f003f005c
mov qword [rax], r11
lea eax, [rbx + 8]
lea rdx, [0x0004f150]
lea rcx, [rsp + 0x40]
mov word [rsp + 0x40], ax
call qword [sym.imp.ntoskrnl.exe_RtlAppendUnicodeStringToString]
lea rcx, [rsp + 0x40]
call fcn.0001e9a0
mov rcx, qword [rsp + 0x48]
cmp rcx, rbx
je 0x1c46a
mov edx, 0x72647268
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
mov edx, 0x410
mov r8d, 0x72647268
xor ecx, ecx
mov word [rsp + 0x30], bx
mov word [rsp + 0x32], r14w
call qword [sym.imp.ntoskrnl.exe_ExAllocatePoolWithTag]
mov qword [rsp + 0x38], rax
cmp rax, rbx
je 0x1c5f3
movzx r8d, word [rsp + 0x32]
xor edx, edx
mov rcx, rax
call fcn.0003bc80
lea rcx, [rsp + 0x30]
mov rdx, r13
call qword [sym.imp.ntoskrnl.exe_RtlAppendUnicodeStringToString]
cmp eax, ebx
jl 0x1c535
lea rdx, str.Enum
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_RtlAppendUnicodeToString]
cmp eax, ebx
jl 0x1c535
lea rax, [rsp + 0x30]
lea r8, [rsp + 0x60]
lea rcx, [rsp + 0xa8]
mov edx, 0xf003f
mov dword [rsp + 0x60], 0x30
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x78], 0x240
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x88], rbx
call qword [sym.imp.ntoskrnl.exe_ZwOpenKey]
cmp eax, ebx
jl 0x1c535
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.ntoskrnl.exe_ZwDeleteKey]
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.ntoskrnl.exe_ZwClose]
mov rcx, qword [rsp + 0x38]
mov r8, r14
xor edx, edx
mov word [rsp + 0x30], bx
mov word [rsp + 0x32], r14w
call fcn.0003bc80
lea rcx, [rsp + 0x30]
mov rdx, r13
call qword [sym.imp.ntoskrnl.exe_RtlAppendUnicodeStringToString]
cmp eax, ebx
jl 0x1c5de
lea rdx, str.Security
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_RtlAppendUnicodeToString]
cmp eax, ebx
jl 0x1c5de
lea rax, [rsp + 0x30]
lea r8, [rsp + 0x60]
lea rcx, [rsp + 0xa8]
mov edx, 0xf003f
mov dword [rsp + 0x60], 0x30
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x78], 0x240
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x88], rbx
call qword [sym.imp.ntoskrnl.exe_ZwOpenKey]
cmp eax, ebx
jl 0x1c5de
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.ntoskrnl.exe_ZwDeleteKey]
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.ntoskrnl.exe_ZwClose]
mov rcx, qword [rsp + 0x38]
cmp rcx, rbx
je 0x1c5f3
mov edx, 0x72647268
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
lea r8, [rsp + 0x60]
lea rcx, [rsp + 0xa8]
mov edx, 0xf003f
mov dword [rsp + 0x60], 0x30
mov qword [rsp + 0x68], rbx
mov dword [rsp + 0x78], 0x240
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x88], rbx
call qword [sym.imp.ntoskrnl.exe_ZwOpenKey]
cmp eax, ebx
jl 0x1c663
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.ntoskrnl.exe_ZwDeleteKey]
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.ntoskrnl.exe_ZwFlushKey]
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.ntoskrnl.exe_ZwClose]
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x20]
mov r13, qword [r11 + 0x28]
mov rsp, r11
pop r14
ret