Function at 0x14002ca70
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov rax, qword [0x1400ff010]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rdi, r8
mov rsi, rdx
mov rbx, rcx
cmp dword [0x140104a34], 0
jne 0x14002d0d7
cmp dword [0x140104a30], 0
jne 0x14002d0d7
cmp dword [0x140104a38], 0
jne 0x14002d0d7
lea rdx, str.SOFTWAREFortemediaHowlingDection
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002ccec
lea rdx, str.13AE3061_F6DC_45C1_B90C_F5E992141790_10
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
je 0x14002cb08
lea rdx, str.13AE3061_F6DC_45C1_B90C_F5E992141790_12
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002d0d7
xor ebx, ebx
mov esi, ebx
xor eax, eax
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x28], rbx
mov dword [rbp - 0x20], ebx
mov qword [rbp - 0x18], rbx
mov dword [rbp - 0x38], ebx
lea r9d, [rbx + 1]
lea r8, str.SOFTWAREFortemediaHowlingDection
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x28]
call fcn.14001da70
test eax, eax
je 0x14002cb6c
lea r9, str.SOFTWAREFortemediaHowlingDection
mov r8d, eax
lea rdx, str.CRegClient::GetRegUI4Property
lea rcx, str._s_nRet_d_szRegKey_s
call fcn.1400430e0
nop
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x14002cbef
jmp 0x14002cbe9
mov dword [rbp - 0x34], 4
lea rax, [rbp - 0x34]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x30]
xor r8d, r8d
lea rdx, str.13AE3061_F6DC_45C1_B90C_F5E992141790_10
mov rdi, qword [rbp - 0x28]
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
test eax, eax
jne 0x14002cbe1
cmp dword [rbp - 0x30], 4
jne 0x14002cbe1
mov r14d, dword [rbp - 0x38]
test rdi, rdi
je 0x14002cbbc
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test r14d, r14d
je 0x14002cbef
mov r8d, 0x9ea
lea rdx, str.CCustomizeHP::OnRegKeyChanged
lea rcx, str._s__d___Fortemedia___HowlingDection____10_n
call fcn.1400430e0
mov esi, 1
jmp 0x14002cbef
test rdi, rdi
je 0x14002cbef
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
xor eax, eax
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x28], rbx
mov dword [rbp - 0x20], ebx
mov qword [rbp - 0x18], rbx
mov dword [rbp - 0x38], ebx
lea r9d, [rax + 1]
lea r8, str.SOFTWAREFortemediaHowlingDection
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x28]
call fcn.14001da70
test eax, eax
je 0x14002cc4b
lea r9, str.SOFTWAREFortemediaHowlingDection
mov r8d, eax
lea rdx, str.CRegClient::GetRegUI4Property
lea rcx, str._s_nRet_d_szRegKey_s
call fcn.1400430e0
nop
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x14002ccc7
jmp 0x14002ccc1
mov dword [rbp - 0x30], 4
lea rax, [rbp - 0x30]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x38]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x34]
xor r8d, r8d
lea rdx, str.13AE3061_F6DC_45C1_B90C_F5E992141790_12
mov rbx, qword [rbp - 0x28]
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
test eax, eax
jne 0x14002ccb9
cmp dword [rbp - 0x34], 4
jne 0x14002ccb9
mov edi, dword [rbp - 0x38]
test rbx, rbx
je 0x14002cc9a
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test edi, edi
je 0x14002ccc7
mov r8d, 0x9f4
lea rdx, str.CCustomizeHP::OnRegKeyChanged
lea rcx, str._s__d___Fortemedia___HowlingDection____12_n
call fcn.1400430e0
jmp 0x14002cccf
test rbx, rbx
je 0x14002ccc7
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test esi, esi
je 0x14002d0d7
call fcn.140009f90
mov rcx, rax
mov edx, 0x41e
mov r8d, 0x1f4
call fcn.140087ab0
jmp 0x14002d0d7
lea rdx, str.SOFTWARERealtekAudioRtkAudUServiceOthers
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002cd35
lea rdx, str.CategoryId
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002d0d7
call fcn.140009f90
mov rcx, rax
mov edx, 0x402
mov r8d, 0xc8
call fcn.140087ab0
jmp 0x14002d0d7
lea rdx, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002ceab
lea rdx, str.HP_ITDM_RestoreRealtekAudioSettings
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002cdc7
xor ebx, ebx
mov dword [rbp - 0x38], ebx
lea r9, [rbp - 0x38]
lea r8, str.HP_ITDM_RestoreRealtekAudioSettings
lea rdx, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rcx, 0xffffffff80000002
call fcn.140060380
test eax, eax
je 0x14002d0d7
cmp dword [rbp - 0x38], ebx
je 0x14002d0d7
xor r9d, r9d
lea r8, str.HP_ITDM_RestoreRealtekAudioSettings
lea rdx, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rcx, 0xffffffff80000002
call fcn.1400604b0
mov edx, 0x30010001
call fcn.140086c30
mov r8d, 0xa14
jmp 0x14002ce90
lea rdx, str.HP_ITDM_LockRealtekAudioControls
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002d0d7
xor ebx, ebx
mov dword [rbp - 0x38], ebx
lea r9, [rbp - 0x38]
lea r8, str.HP_ITDM_LockRealtekAudioControls
lea rdx, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rcx, 0xffffffff80000002
call fcn.140060380
test eax, eax
je 0x14002d0d7
cmp dword [rbp - 0x38], ebx
je 0x14002d0d7
xor r9d, r9d
lea r8, str.HP_ITDM_LockRealtekAudioControls
lea rdx, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rcx, 0xffffffff80000002
call fcn.1400604b0
lea r9d, [rbx - 1]
lea r8, str.UwpLock
lea rdx, str.Others
lea rcx, [0x140104a20]
mov rax, qword [0x140104a20]
call qword [rax + 0x10]
cmp eax, 0xffffffff
cmove eax, ebx
test eax, eax
sete bl
mov r9d, ebx
lea r8, str.UwpLock
lea rdx, str.Others
lea rcx, [0x140104a20]
mov rax, qword [0x140104a20]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov edx, 0x30010002
call fcn.140086c30
mov r8d, 0xa30
mov r9, rdi
lea rdx, str.CCustomizeHP::OnRegKeyChanged
lea rcx, str._s__d_SendServiceEventToUWP__s
call fcn.1400430e0
jmp 0x14002d0d7
mov rdx, qword [rbx + 0x98]
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002d0d7
lea rdx, str.HP_CONTROL_SpkMasterMute
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002cf4d
cmp dword [rbx + 0xdc], eax
jne 0x14002d0b6
mov dword [rbp - 0x38], 0x3e7
lea r9, [rbp - 0x38]
lea r8, str.HP_CONTROL_SpkMasterMute
mov rdx, qword [rbx + 0x98]
mov rcx, 0xffffffff80000001
call fcn.140060380
test eax, eax
je 0x14002d0b6
mov ebx, dword [rbp - 0x38]
cmp ebx, 1
ja 0x14002d0b6
call fcn.140034690
cmp eax, ebx
je 0x14002d0b6
test ebx, ebx
je 0x14002cf3e
mov edx, 1
mov ecx, edx
call fcn.14002dd30
jmp 0x14002d0b6
xor edx, edx
lea ecx, [rdx + 1]
call fcn.14002dd30
jmp 0x14002d0b6
lea rdx, str.HP_CONTROL_MicMasterMute
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14002cfd2
cmp dword [rbx + 0xe0], eax
jne 0x14002d0b6
mov dword [rbp - 0x38], 0x3e7
lea r9, [rbp - 0x38]
lea r8, str.HP_CONTROL_MicMasterMute
mov rdx, qword [rbx + 0x98]
mov rcx, 0xffffffff80000001
call fcn.140060380
test eax, eax
je 0x14002d0b6
mov ebx, dword [rbp - 0x38]
cmp ebx, 1
ja 0x14002d0b6
call fcn.140043af0
cmp eax, ebx
je 0x14002d0b6
xor ecx, ecx
test ebx, ebx
je 0x14002cfc6
lea edx, [rcx + 1]
call fcn.14002dd30
jmp 0x14002d0b6
xor edx, edx
call fcn.14002dd30
jmp 0x14002d0b6
call fcn.140009ad0
mov rcx, qword [rax + 0x68]
test rcx, rcx
je 0x14002d006
mov rax, qword [rcx + 0x10]
mov rcx, qword [rcx]
test rax, rax
je 0x14002d001
mov rax, qword [rax]
test rax, rax
je 0x14002d001
cmp dword [rax + 0x184], 0
je 0x14002d0b6
test rcx, rcx
jne 0x14002cfe0
mov ecx, 0x408
call fcn.14009255c
mov rbx, rax
mov qword [rbp - 0x30], rax
xor edx, edx
mov r8d, 0x408
mov rcx, rax
call fcn.140098800
lea rcx, [rbx + 8]
mov r8, rsi
mov edx, 0x100
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
lea rcx, [rbx + 0x208]
mov r8, rdi
mov edx, 0x100
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
cmp dword [0x140103ee4], 0
jne 0x14002d087
mov dword [0x140103ee4], 1
mov r8d, 0x2e7
lea rdx, str.CRpcClientObject::EnterStaticEventQueueCS
lea rcx, [0x1400b0e88]
call fcn.1400430e0
lea rcx, [0x140103ee8]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_InitializeCriticalSection]
lea rcx, [0x140103ee8]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
lea rdx, [rbp - 0x30]
lea rcx, [0x1400ff450]
call fcn.140005800
lea rcx, [0x140103ee8]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
call fcn.140086510
mov qword [rsp + 0x20], rdi
mov r9, rsi
mov r8d, 0xa72
lea rdx, str.CCustomizeHP::OnRegKeyChanged
lea rcx, str._s__d_SendRegEventToUWP__s_s
call fcn.1400430e0
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140091f30
add rsp, 0x70
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret