Function at 0x140016fd0
Capabilities:
Query or enumerate registry value

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov rax, qword [0x1400ff010]
xor rax, rsp
mov qword [rbp - 0x10], rax
call fcn.140009c60
mov esi, 1
test dword [rax + 0xd0], 0x100
je 0x14001704e
mov ecx, esi
call fcn.1400401a0
call fcn.140011a10
mov ebx, dword [0x1401051c8]
mov r9d, ebx
mov r8d, 0x1b3
lea rdx, str.CBackgroundProcMain::InitFirstTime
lea rcx, str._s__d_nUsbPathCount___d
call fcn.1400430e0
test ebx, ebx
jle 0x14001704e
call fcn.140040270
call fcn.140009c60
test dword [rax + 0xd0], 0x8000
je 0x140017101
call fcn.140009e20
mov rcx, rax
call fcn.14006b4e0
call fcn.140009e20
cmp dword [rax + 0x138], 0
jne 0x1400170b6
cmp dword [0x140103eac], 0
je 0x1400170b6
cmp dword [0x140103ea8], 0
jne 0x14001709d
mov rax, qword [0x1400ff930]
test byte [rax + 0x1c], sil
je 0x1400170b6
mov r8d, 0x3b
lea rdx, str.CMMPlatform::AudioDevList_GetHeadPosition
lea rcx, str._s__d_please_call_AudioDevList_AddRef_before_AudioDevList_GetHeadPosition
call fcn.1400430e0
call fcn.140009e20
mov rbx, qword [rax + 0xd8]
test rbx, rbx
je 0x1400170f4
call fcn.140009e20
call fcn.140009e20
mov rcx, qword [rbx + 0x10]
mov rbx, qword [rbx]
test rcx, rcx
je 0x1400170c2
cmp dword [rcx + 0x184], 4
jne 0x1400170c2
cmp dword [rcx + 0x158], 0
jne 0x1400170c2
call fcn.140041ce0
call fcn.140009e20
mov rcx, rax
call fcn.14006b560
call fcn.140009c60
test dword [rax + 0xd0], 0x10000
je 0x1400171ab
call fcn.140009e20
mov rcx, rax
call fcn.14006b4e0
call fcn.140009e20
cmp dword [rax + 0x138], 0
jne 0x140017169
cmp dword [0x140103eac], 0
je 0x140017169
cmp dword [0x140103ea8], 0
jne 0x140017150
mov rax, qword [0x1400ff930]
test byte [rax + 0x1c], sil
je 0x140017169
mov r8d, 0x3b
lea rdx, str.CMMPlatform::AudioDevList_GetHeadPosition
lea rcx, str._s__d_please_call_AudioDevList_AddRef_before_AudioDevList_GetHeadPosition
call fcn.1400430e0
call fcn.140009e20
mov rbx, qword [rax + 0xd8]
test rbx, rbx
je 0x14001719e
call fcn.140009e20
call fcn.140009e20
mov rcx, qword [rbx + 0x10]
mov rbx, qword [rbx]
test rcx, rcx
je 0x140017175
cmp dword [rcx + 0x184], 4
jne 0x140017175
call fcn.14004ea30
call fcn.140009e20
mov rcx, rax
call fcn.14006b560
mov rbx, qword [0x140104a20]
call fcn.140009c60
mov r9d, dword [rax + 0x18]
shr r9d, 6
not r9d
and r9d, esi
lea r8, str.JDPopup
lea rdx, str.General
lea rcx, [0x140104a20]
call qword [rbx + reloc.OLEAUT32.dll_SafeArrayGetElement]
call fcn.140009c60
test dword [rax + 0xc0], 0x400
je 0x1400171f3
call fcn.14003df70
call fcn.140009c60
test dword [rax + 0x20], 0x2000000
je 0x140017206
call fcn.140054340
call fcn.140009c60
test dword [rax + 0xac], 0x200
je 0x14001721c
call fcn.14003e330
xor ebx, ebx
mov r15d, 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
mov r9d, esi
lea r8, str.SOFTWAREFortemediaHowlingDection
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x28]
call fcn.14001da70
test eax, eax
je 0x14001727c
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 0x1400172df
jmp 0x1400172d9
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_11
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 0x1400172d1
cmp dword [rbp - 0x30], 4
jne 0x1400172d1
mov r15d, dword [rbp - 0x38]
test rdi, rdi
je 0x1400172cc
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
mov r14d, esi
jmp 0x1400172e2
test rdi, rdi
je 0x1400172df
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
mov r14d, 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
mov r9d, esi
lea r8, str.SOFTWAREFortemediaHowlingDection
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x28]
call fcn.14001da70
test eax, eax
je 0x14001733d
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 0x14001739c
jmp 0x140017396
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_20
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 0x14001738e
cmp dword [rbp - 0x34], 4
jne 0x14001738e
mov ebx, dword [rbp - 0x38]
test rdi, rdi
je 0x14001739e
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
jmp 0x14001739e
test rdi, rdi
je 0x14001739c
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
mov esi, ebx
test r14d, r14d
je 0x1400173a8
test r15d, r15d
jne 0x1400173be
test esi, esi
je 0x1400173b0
test ebx, ebx
jne 0x1400173be
call fcn.140009c60
test dword [rax + 0x50], 0x4000
je 0x1400173c3
call fcn.140009c60
call fcn.14003c080
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140091f30
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret