Function at 0x140045aa0
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
mov rax, qword [0x140178010]
xor rax, rsp
mov qword [rbp - 8], rax
mov r14, r8
mov r12, rdx
mov rbx, rcx
cmp dword [0x1401784a4], 0
jne 0x14004642e
cmp dword [0x1401784a0], 0
jne 0x14004642e
cmp dword [0x1401784a8], 0
jne 0x14004642e
lea rdx, str.SOFTWAREFortemediaHowlingDection
mov rcx, r12
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x140045d1c
lea rdx, str.13AE3061_F6DC_45C1_B90C_F5E992141790_10
mov rcx, r14
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
je 0x140045b34
lea rdx, str.13AE3061_F6DC_45C1_B90C_F5E992141790_12
mov rcx, r14
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14004642e
xor ebx, ebx
mov esi, ebx
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x20], rbx
mov dword [rbp - 0x18], ebx
mov qword [rbp - 0x10], rbx
mov dword [rbp - 0x30], ebx
lea r9d, [rbx + 1]
lea r8, str.SOFTWAREFortemediaHowlingDection
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x20]
call fcn.14002b400
test eax, eax
je 0x140045b99
lea r9, str.SOFTWAREFortemediaHowlingDection
mov r8d, eax
lea rdx, str.CRegClient::GetRegUI4Property
lea rcx, str._s_nRet_d_szRegKey_s
call fcn.14006dd20
nop
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x140045c1c
jmp 0x140045c16
mov dword [rbp - 0x2c], 4
lea rax, [rbp - 0x2c]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x28]
xor r8d, r8d
lea rdx, str.13AE3061_F6DC_45C1_B90C_F5E992141790_10
mov rdi, qword [rbp - 0x20]
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
test eax, eax
jne 0x140045c0e
cmp dword [rbp - 0x28], 4
jne 0x140045c0e
mov r14d, dword [rbp - 0x30]
test rdi, rdi
je 0x140045be9
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test r14d, r14d
je 0x140045c1c
mov r8d, 0xe7f
lea rdx, str.CCustomizeHP::OnRegKeyChanged
lea rcx, str._s__d___Fortemedia___HowlingDection____10_n
call fcn.14006dd20
mov esi, 1
jmp 0x140045c1c
test rdi, rdi
je 0x140045c1c
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x20], rbx
mov dword [rbp - 0x18], ebx
mov qword [rbp - 0x10], rbx
mov dword [rbp - 0x30], ebx
mov r9d, 1
lea r8, str.SOFTWAREFortemediaHowlingDection
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x20]
call fcn.14002b400
test eax, eax
je 0x140045c7b
lea r9, str.SOFTWAREFortemediaHowlingDection
mov r8d, eax
lea rdx, str.CRegClient::GetRegUI4Property
lea rcx, str._s_nRet_d_szRegKey_s
call fcn.14006dd20
nop
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x140045cf7
jmp 0x140045cf1
mov dword [rbp - 0x28], 4
lea rax, [rbp - 0x28]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x2c]
xor r8d, r8d
lea rdx, str.13AE3061_F6DC_45C1_B90C_F5E992141790_12
mov rbx, qword [rbp - 0x20]
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
test eax, eax
jne 0x140045ce9
cmp dword [rbp - 0x2c], 4
jne 0x140045ce9
mov edi, dword [rbp - 0x30]
test rbx, rbx
je 0x140045cca
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test edi, edi
je 0x140045cf7
mov r8d, 0xe89
lea rdx, str.CCustomizeHP::OnRegKeyChanged
lea rcx, str._s__d___Fortemedia___HowlingDection____12_n
call fcn.14006dd20
jmp 0x140045cff
test rbx, rbx
je 0x140045cf7
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test esi, esi
je 0x14004642e
call fcn.14000be90
mov rcx, rax
mov edx, 0x41e
mov r8d, 0x1f4
call fcn.1400d3e30
jmp 0x14004642e
lea rdx, str.SOFTWARERealtekAudioRtkAudUServiceOthers
mov rcx, r12
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x140045dc5
lea rdx, str.CategoryId
mov rcx, r14
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x140045d60
call fcn.14000be90
mov rcx, rax
mov edx, 0x402
mov r8d, 0xc8
call fcn.1400d3e30
lea rdx, str.SlateMode
mov rcx, r14
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
je 0x140045d8c
lea rdx, str.Orientation
mov rcx, r14
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14004642e
mov r9, r14
mov r8d, 0xe9c
lea rdx, str.CCustomizeHP::OnRegKeyChanged
lea rcx, str._s__d_set_timer_to_check_clamshell__s
call fcn.14006dd20
call fcn.14000be90
mov rcx, rax
mov edx, 0x44b
mov r8d, 0x1f4
call fcn.1400d3e30
jmp 0x14004642e
lea rdx, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rcx, r12
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x1400461b0
lea rdx, str.HP_ITDM_RestoreRealtekAudioSettings
mov rcx, r14
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x140045f9c
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
xor ebx, ebx
mov qword [rbp - 0x20], rbx
mov dword [rbp - 0x18], ebx
mov qword [rbp - 0x10], rbx
mov dword [rbp - 0x30], ebx
lea r9d, [rax + 1]
lea r8, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x20]
call fcn.14002b400
test eax, eax
je 0x140045e61
lea r9, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov r8d, eax
lea rdx, str.CRegClient::GetRegUI4Property
lea rcx, str._s_nRet_d_szRegKey_s
call fcn.14006dd20
nop
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x14004642e
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
jmp 0x14004642e
mov dword [rbp - 0x28], 4
lea rax, [rbp - 0x28]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x2c]
xor r8d, r8d
lea rdx, str.HP_ITDM_RestoreRealtekAudioSettings
mov rdi, qword [rbp - 0x20]
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
test eax, eax
jne 0x140045f85
cmp dword [rbp - 0x2c], 4
jne 0x140045f85
mov esi, dword [rbp - 0x30]
test rdi, rdi
je 0x140045eb8
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test esi, esi
je 0x14004642e
xor r9d, r9d
lea r8, str.HP_ITDM_RestoreRealtekAudioSettings
lea rdx, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rcx, 0xffffffff80000002
call fcn.140090400
call fcn.14000b980
mov rcx, rax
xor r9d, r9d
mov r8d, 0x30010001
lea rdx, [0x140103060]
call fcn.1400958d0
call fcn.1400d0b00
cmp dword [0x140180850], 0
jbe 0x140045f7a
lea rsi, [0x140000000]
nop
mov eax, ebx
lea rdi, [rax*8]
xor r8d, r8d
mov rdx, qword [rdi + rsi + 0x180790]
mov rcx, qword [rdi + rsi + 0x1807d0]
call fcn.1400d2160
test eax, eax
je 0x140045f70
call fcn.14000b980
mov rcx, rax
mov rdx, qword [rdi + rsi + 0x1807d0]
call fcn.140095970
test al, al
jne 0x140045f70
xor r8d, r8d
mov edx, 0x30010001
lea rcx, [0x140103060]
call fcn.1400a8c20
mov rdx, qword [rdi + rsi + 0x180810]
call fcn.1400d1090
inc ebx
cmp ebx, dword [0x140180850]
jb 0x140045f10
mov r8d, 0xeaf
jmp 0x140046190
test rdi, rdi
je 0x14004642e
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
jmp 0x14004642e
lea rdx, str.HP_ITDM_LockRealtekAudioControls
mov rcx, r14
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14004642e
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
xor ebx, ebx
mov qword [rbp - 0x20], rbx
mov dword [rbp - 0x18], ebx
mov qword [rbp - 0x10], rbx
mov dword [rbp - 0x30], ebx
lea r9d, [rax + 1]
lea r8, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x20]
call fcn.14002b400
test eax, eax
je 0x14004600d
lea r9, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov r8d, eax
lea rdx, str.CRegClient::GetRegUI4Property
lea rcx, str._s_nRet_d_szRegKey_s
call fcn.14006dd20
nop
jmp 0x140045e49
mov dword [rbp - 0x28], 4
lea rax, [rbp - 0x28]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x2c]
xor r8d, r8d
lea rdx, str.HP_ITDM_LockRealtekAudioControls
mov rdi, qword [rbp - 0x20]
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
test eax, eax
jne 0x1400461ab
cmp dword [rbp - 0x2c], 4
jne 0x1400461ab
mov esi, dword [rbp - 0x30]
test rdi, rdi
je 0x140046064
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test esi, esi
je 0x14004642e
xor r9d, r9d
lea r8, str.HP_ITDM_LockRealtekAudioControls
lea rdx, str.SoftwareRealtekAudioGUI_INFORMATIONWMI
mov rcx, 0xffffffff80000002
call fcn.140090400
mov rax, qword [0x140178490]
mov r9d, 0xffffffff
lea r8, str.UwpLock
lea rdx, str.Others
lea rcx, [0x140178490]
mov rax, qword [rax + 0x20]
call qword [case.0x140050923.0]
cmp eax, 0xffffffff
cmove eax, ebx
mov r9d, ebx
test eax, eax
sete r9b
mov rax, qword [0x140178490]
lea r8, str.UwpLock
lea rdx, str.Others
lea rcx, [0x140178490]
mov rax, qword [rax + 0x28]
call qword [case.0x140050923.0]
call fcn.14000b980
mov rcx, rax
xor r9d, r9d
mov r8d, 0x30010002
lea rdx, [0x140103060]
call fcn.1400958d0
call fcn.1400d0b00
cmp dword [0x140180850], 0
jbe 0x14004618a
lea rsi, [0x140000000]
nop dword [rax]
mov eax, ebx
lea rdi, [rax*8]
xor r8d, r8d
mov rdx, qword [rdi + rsi + 0x180790]
mov rcx, qword [rdi + rsi + 0x1807d0]
call fcn.1400d2160
test eax, eax
je 0x140046180
call fcn.14000b980
mov rcx, rax
mov rdx, qword [rdi + rsi + 0x1807d0]
call fcn.140095970
test al, al
jne 0x140046180
xor r8d, r8d
mov edx, 0x30010002
lea rcx, [0x140103060]
call fcn.1400a8c20
mov rdx, qword [rdi + rsi + 0x180810]
call fcn.1400d1090
inc ebx
cmp ebx, dword [0x140180850]
jb 0x140046120
mov r8d, 0xecb
mov r9, r14
lea rdx, str.CCustomizeHP::OnRegKeyChanged
lea rcx, str._s__d_SendServiceEventToUWP__s
call fcn.14006dd20
jmp 0x14004642e
jmp 0x140045f85
mov rdx, qword [rbx + 0x88]
mov rcx, r12
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14004642e
lea rdx, str.HP_CONTROL_SpkMasterMute
mov rcx, r14
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x14004625b
cmp dword [rbx + 0xbc], eax
jne 0x14004640d
mov dword [rbp - 0x30], 0x3e7
lea r9, [rbp - 0x30]
lea r8, str.HP_CONTROL_SpkMasterMute
mov rdx, qword [rbx + 0x88]
mov rcx, 0xffffffff80000001
call fcn.1400902e0
test eax, eax
je 0x14004640d
mov edi, dword [rbp - 0x30]
cmp edi, 1
ja 0x14004640d
xor ebx, ebx
mov dword [rbp - 0x28], ebx
lea rcx, [rbp - 0x28]
call fcn.140051a70
cmp eax, edi
je 0x14004640d
test edi, edi
je 0x14004624c
mov edx, 1
mov ecx, edx
call fcn.1400472b0
jmp 0x14004640d
xor edx, edx
lea ecx, [rdx + 1]
call fcn.1400472b0
jmp 0x14004640d
lea rdx, str.HP_CONTROL_MicMasterMute
mov rcx, r14
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpW]
test eax, eax
jne 0x1400462e0
cmp dword [rbx + 0xc0], eax
jne 0x14004640d
mov dword [rbp - 0x30], 0x3e7
lea r9, [rbp - 0x30]
lea r8, str.HP_CONTROL_MicMasterMute
mov rdx, qword [rbx + 0x88]
mov rcx, 0xffffffff80000001
call fcn.1400902e0
test eax, eax
je 0x14004640d
mov ebx, dword [rbp - 0x30]
cmp ebx, 1
ja 0x14004640d
call fcn.14006e910
cmp eax, ebx
je 0x14004640d
xor ecx, ecx
test ebx, ebx
je 0x1400462d4
lea edx, [rcx + 1]
call fcn.1400472b0
jmp 0x14004640d
xor edx, edx
call fcn.1400472b0
jmp 0x14004640d
call fcn.1400d0b00
xor ebx, ebx
cmp dword [0x140180850], ebx
jbe 0x14004640d
lea rsi, [0x140000000]
nop word [rax + rax]
mov eax, ebx
lea r15, [rax*8]
xor r8d, r8d
mov rdx, qword [r15 + rsi + 0x180790]
mov rcx, qword [r15 + rsi + 0x1807d0]
call fcn.1400d2160
test eax, eax
je 0x1400463ff
call fcn.14000b980
mov rcx, rax
mov rdx, qword [r15 + rsi + 0x1807d0]
call fcn.140095970
test al, al
jne 0x1400463ff
mov ecx, 0x408
call fcn.1400df6d0
mov rdi, rax
mov qword [rbp - 0x28], rax
xor edx, edx
mov r8d, 0x408
mov rcx, rax
call fcn.1400e5b40
lea rcx, [rdi + 8]
mov r8, r12
mov edx, 0x100
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
lea rcx, [rdi + 0x208]
mov r8, r14
mov edx, 0x100
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
cmp dword [0x1401802bc], 0
jne 0x1400463c8
mov dword [0x1401802bc], 1
mov r8d, 0x308
lea rdx, str.CRpcClientObject::EnterStaticEventQueueCS
lea rcx, [0x140102ba8]
call fcn.14006dd20
lea rcx, [0x140180340]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_InitializeCriticalSection]
lea rcx, [0x140180340]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
lea rdx, [rbp - 0x28]
lea rcx, [0x140178a80]
call fcn.140006d60
lea rcx, [0x140180340]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
mov rdx, qword [r15 + rsi + 0x180810]
call fcn.1400d1090
inc ebx
cmp ebx, dword [0x140180850]
jb 0x140046300
mov qword [rsp + 0x20], r14
mov r9, r12
mov r8d, 0xf0d
lea rdx, str.CCustomizeHP::OnRegKeyChanged
lea rcx, str._s__d_SendRegEventToUWP__s_s
call fcn.14006dd20
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.1400df340
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret