Function at 0x14012d2d0
Capabilities:
Delete registry key

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rax, qword [0x1402e4100]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rbx, rdx
mov qword [rbp - 0x19], rdx
xor r14d, r14d
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
lea rcx, str._registrymachineSYSTEMCurrentControlSetServices_
call fcn.1400cd170
mov rcx, rax
call fcn.1400a90e0
mov rdi, rax
mov rcx, rbx
call fcn.1400cfb60
mov rsi, rax
mov rcx, rbx
call fcn.1400d1400
sub rax, rsi
cmp rax, rdi
jb 0x14012d6c5
mov rcx, rbx
call fcn.1400d1490
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, str._registrymachineSYSTEMCurrentControlSetServices_
mov r8, rbx
lea rcx, [rbp + 7]
call fcn.140112d80
nop
call fcn.1400ef2d0
mov rdi, rax
lea rcx, [rbp + 7]
call fcn.1400d1490
mov r15, rax
mov qword [rbp - 0x49], rax
lea rdx, str.RtlInitUnicodeString
lea rcx, [rbp - 0x41]
call fcn.1400ca810
nop
call fcn.140132d40
lea rsi, [rdi + 0x40]
mov qword [rbp - 0x21], rsi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov qword [rbp - 0x11], r14
lea r13, [rdi + 8]
lea rcx, [rbp - 0x41]
call fcn.14009e7c0
mov rbx, rax
lea rcx, [rbp - 0x41]
call fcn.14009de20
mov r8, rbx
mov rdx, rax
movabs r12, 0xcbf29ce484222325
mov rcx, r12
call fcn.1400721c0
mov rcx, qword [rdi + 0x30]
and rcx, rax
add rcx, rcx
mov rax, qword [rdi + 0x18]
mov rbx, qword [rax + rcx*8 + 8]
cmp rbx, qword [r13]
je 0x14012d475
mov r12, qword [rax + rcx*8]
nop word [rax + rax]
lea rcx, [rbx + 0x10]
mov rdi, qword [rcx + 0x10]
call fcn.14009e9a0
mov r15, rax
mov rsi, qword [rbp - 0x31]
lea rcx, [rbp - 0x41]
call fcn.14009e9a0
cmp rsi, rdi
jne 0x14012d444
mov r8, rsi
mov rdx, r15
mov rcx, rax
call fcn.140267580
test eax, eax
je 0x14012d44f
cmp rbx, r12
je 0x14012d463
mov rbx, qword [rbx + 8]
jmp 0x14012d410
mov rsi, qword [rbp - 0x21]
mov r15, qword [rbp - 0x49]
movabs r12, 0xcbf29ce484222325
jmp 0x14012d478
mov rsi, qword [rbp - 0x21]
mov r15, qword [rbp - 0x49]
movabs r12, 0xcbf29ce484222325
mov rbx, r14
test rbx, rbx
jne 0x14012d481
mov rbx, qword [r13]
mov qword [rbp - 0x11], rbx
mov rdx, r13
lea rcx, [rbp - 0x11]
call fcn.140072680
mov rax, qword [r13]
mov qword [rbp - 0x49], rax
mov rdx, r13
lea rcx, [rbp - 0x49]
call fcn.140072680
mov rax, qword [rbp - 0x11]
mov rcx, rsi
cmp rax, qword [rbp - 0x49]
je 0x14012d4cc
mov rbx, qword [rax + 0x30]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14012d4d3
mov rdx, r15
lea rcx, [rbp - 9]
call rbx
jmp 0x14012d4d3
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
lea rcx, [rbp - 0x41]
call fcn.14009de70
call fcn.1400ef2d0
mov rdi, rax
lea rdx, str.NtUnloadDriver
lea rcx, [rbp - 0x41]
call fcn.1400ca810
nop
call fcn.140132d40
lea rsi, [rdi + 0x40]
mov qword [rbp - 0x49], rsi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov qword [rbp - 0x11], r14
lea r13, [rdi + 8]
lea rcx, [rbp - 0x41]
call fcn.14009e7c0
mov rbx, rax
lea rcx, [rbp - 0x41]
call fcn.14009de20
mov r8, rbx
mov rdx, rax
mov rcx, r12
call fcn.1400721c0
mov rcx, qword [rdi + 0x30]
and rcx, rax
add rcx, rcx
mov rax, qword [rdi + 0x18]
mov rdi, qword [rax + rcx*8 + 8]
cmp rdi, qword [r13]
je 0x14012d599
mov r12, qword [rax + rcx*8]
lea rcx, [rdi + 0x10]
mov rbx, qword [rcx + 0x10]
call fcn.14009e9a0
mov r15, rax
mov rsi, qword [rbp - 0x31]
lea rcx, [rbp - 0x41]
call fcn.14009e9a0
cmp rsi, rbx
jne 0x14012d587
mov r8, rsi
mov rdx, r15
mov rcx, rax
call fcn.140267580
test eax, eax
je 0x14012d592
cmp rdi, r12
je 0x14012d595
mov rdi, qword [rdi + 8]
jmp 0x14012d553
mov r14, rdi
mov rsi, qword [rbp - 0x49]
test r14, r14
jne 0x14012d5a2
mov r14, qword [r13]
mov qword [rbp - 0x11], r14
mov rdx, r13
lea rcx, [rbp - 0x11]
call fcn.140072680
mov rax, qword [r13]
mov qword [rbp - 0x49], rax
mov rdx, r13
lea rcx, [rbp - 0x49]
call fcn.140072680
mov rax, qword [rbp - 0x11]
mov rcx, rsi
cmp rax, qword [rbp - 0x49]
je 0x14012d5ec
mov rbx, qword [rax + 0x30]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14012d5f2
lea rcx, [rbp - 9]
call rbx
mov edi, eax
jmp 0x14012d5f7
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, 0xc0000138
lea rcx, [rbp - 0x41]
call fcn.14009de70
lea rcx, str.SYSTEMCurrentControlSetServices_
call fcn.1400cd170
mov rcx, rax
call fcn.1400a90e0
mov rsi, rax
mov rbx, qword [rbp - 0x19]
mov rcx, rbx
call fcn.1400cfb60
mov r14, rax
mov rcx, rbx
call fcn.1400d1400
sub rax, r14
cmp rax, rsi
jb 0x14012d6bf
mov rcx, rbx
call fcn.1400d1490
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
lea r9, str.SYSTEMCurrentControlSetServices_
mov r8, rbx
lea rcx, [rbp - 0x41]
call fcn.140112d80
lea rcx, [rbp - 0x41]
call fcn.1400d1490
mov rdx, rax
mov rcx, 0xffffffff80000002
call qword [sym.imp.SHLWAPI.dll_SHDeleteKeyW]
lea rcx, [rbp - 0x41]
call fcn.1400d1500
nop
lea rcx, [rbp + 7]
call fcn.1400d1500
mov eax, edi
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1401de720
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140072730
nop
call fcn.140072730
int3