Function at 0x140014b2c
Capabilities:
Delete registry value
Query or enumerate registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
mov rax, qword [0x1400ce2e8]
xor rax, rsp
mov qword [rbp + 0x47], rax
mov rdi, rdx
mov qword [rbp - 1], rdx
and qword [rbp - 0x21], 0
and qword [rsp + 0x40], 0
lea rax, [rbp - 0x21]
mov qword [rsp + 0x38], rax
and qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionSpectrumCapabilities
mov rcx, 0xffffffff80000002
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCreateKeyExW]
nop dword [rax + rax]
test eax, eax
jne 0x140014d24
xor ebx, ebx
xorps xmm0, xmm0
movups xmmword [rbp + 0x27], xmm0
movups xmmword [rbp + 0x37], xmm0
mov dword [rbp - 0x19], 0x10
xorps xmm1, xmm1
xor eax, eax
movups xmmword [rbp + 7], xmm1
mov qword [rbp + 0x17], rax
mov dword [rbp + 0x1f], eax
mov dword [rbp - 0x25], 0x1c
and dword [rbp - 0x29], eax
xor sil, sil
lea rax, [rbp - 0x25]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 7]
mov qword [rsp + 0x30], rax
and qword [rsp + 0x28], 0
and qword [rsp + 0x20], 0
lea r9, [rbp - 0x19]
lea r8, [rbp + 0x27]
mov edx, ebx
mov rcx, qword [rbp - 0x21]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegEnumValueW]
nop dword [rax + rax]
test eax, eax
je 0x140014c26
cmp eax, 0x103
jne 0x140014cbe
cmp eax, 0x103
je 0x140014d24
lea r8, [rbp - 0x29]
lea rdx, [0x1400ae8e0]
lea rcx, [rbp + 0x27]
call fcn.14009933c
cmp eax, 1
jne 0x140014cae
mov ecx, dword [rbp - 0x29]
call fcn.14001441c
cmp dword [rbp - 0x25], 0x1c
jne 0x140014c94
mov ecx, dword [rbp - 0x29]
call fcn.14001441c
cmp rax, qword [rbp + 7]
jne 0x140014c94
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x140014cae
lea rax, [rbp + 7]
mov qword [rbp - 9], rax
mov eax, dword [rbp - 0x29]
mov dword [rbp - 0x11], eax
mov rax, qword [rcx]
lea r8, [rbp - 9]
lea rdx, [rbp - 0x11]
mov rax, qword [rax + 0x10]
call qword [case.0x14007bf7b.0]
jmp 0x140014cae
lea rdx, [rbp + 0x27]
mov rcx, qword [rbp - 0x21]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegDeleteValueW]
nop dword [rax + rax]
test eax, eax
sete sil
lea eax, [rbx + 1]
test sil, sil
cmovne eax, ebx
mov ebx, eax
jmp 0x140014bb0
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x140014ce9
mov rcx, qword [rbp + 0x5f]
mov r9d, ebx
lea r8, str.analoginput_spectrumcomponentscapabilityhandler.cpp
mov edx, 0xf8
call fcn.140005d70
nop
mov rcx, qword [rbp - 0x21]
test rcx, rcx
je 0x140014cff
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
nop
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x140014d20
mov r8, qword [rcx]
cmp rcx, rdi
setne dl
mov rax, qword [r8 + 0x20]
call qword [case.0x14007bf7b.0]
and qword [rdi + 0x38], 0
mov eax, ebx
jmp 0x140014d5d
mov rcx, qword [rbp - 0x21]
test rcx, rcx
je 0x140014d3a
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
nop
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x140014d5b
mov rax, qword [rcx]
cmp rcx, rdi
setne dl
mov rax, qword [rax + 0x20]
call qword [case.0x14007bf7b.0]
and qword [rdi + 0x38], 0
xor eax, eax
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.140097f60
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret