Function at 0x140025d50
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov qword [rbp - 8], 0xfffffffffffffffe
mov qword [rsp + 0xc8], rbx
mov r15d, edx
mov rsi, rcx
or edx, 0xffffffff
mov rcx, qword [rcx + 0x100]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea rax, str.ApplyChanges__
mov qword [rsp + 0x30], rax
lea rax, [0x1400848d0]
mov qword [rsp + 0x28], rax
xor r14d, r14d
mov qword [rsp + 0x20], r14
lea r9d, [r14 + 2]
lea r8, [0x1400a4128]
mov edx, 0x28b
lea rcx, str...SharedRealtekJack.cpp
call fcn.140002ed0
mov dword [rsp + 0x20], 1
mov r9, qword [rsi + 0xd0]
xor edx, edx
lea r8d, [r14 + 4]
mov rcx, qword [rsi + 0xc8]
call qword [sym.imp.ADVAPI32.dll_RegNotifyChangeKeyValue]
mov dl, 1
mov rcx, rsi
call fcn.140024ba0
mov r12d, eax
mov rcx, rsi
call fcn.140028520
mov ebx, eax
mov rcx, rsi
call fcn.140024db0
mov edi, eax
xor edx, edx
mov rcx, rsi
call fcn.140025050
mov edx, dword [rsi + 0x58]
mov dword [rsp + 0x30], edx
lea rax, str.IsJackInserted___:_d
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
lea r9d, [r14 + 2]
lea r8, [0x1400a4128]
mov edx, 0x262
lea rcx, str...SharedRealtekJack.cpp
call fcn.140002ed0
cmp dword [rsi + 0x58], r14d
je 0x140025ec0
test r12d, r12d
je 0x140025e67
test r15d, r15d
je 0x140025e67
lea edx, [r14 + 1]
mov rcx, rsi
call fcn.140027360
jmp 0x140025e9d
test ebx, ebx
jne 0x140025e6f
test edi, edi
je 0x140025e9d
xor bl, bl
test edi, edi
je 0x140025e92
test r15d, r15d
jne 0x140025e92
mov bl, 1
mov rcx, rsi
call fcn.140025c60
movzx r8d, bl
mov edx, eax
mov rcx, rsi
call fcn.140028330
movzx edx, bl
mov rcx, rsi
call fcn.140025050
test r15d, r15d
jne case.default.0x1400261aa
cmp dword [rsi + 0x9c], r14d
je case.default.0x1400261aa
mov rcx, rsi
call fcn.140026890
jmp case.default.0x1400261aa
mov dword [rbp + 0x50], 0xffffffff
xor ebx, ebx
mov dword [rbp + 0x40], ebx
mov rcx, rsi
call fcn.140025b30
mov r13d, eax
mov rcx, rsi
call fcn.140027eb0
mov dword [rsi + 0x9c], ebx
xor edx, edx
mov rcx, rsi
call fcn.140028220
test r13d, r13d
je 0x140026017
cmp r13d, 7
je 0x140026024
cmp r13d, 8
je 0x140026017
mov edi, ebx
nop
cmp edi, 0x1d
jge 0x14002600e
call fcn.1400018d0
test rax, rax
je 0x140026003
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rbp - 0x20], rax
mov r9d, edi
lea r8, str.OldRetaskIndex
lea rdx, str._s_d
lea rcx, [rbp - 0x20]
call fcn.140010870
mov dword [rbp + 0x58], ebx
mov qword [rbp - 0x30], rbx
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, str.SOFTWAREWaves_AudioMaxxAudioGeneral
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov rbx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x140025fbf
mov dword [rbp - 0x3c], 4
lea rax, [rbp - 0x3c]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x58]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x10]
xor r8d, r8d
mov rdx, rbx
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [rbp + 0x58]
test ecx, ecx
je 0x140025fd7
lea eax, [rcx - 7]
cmp eax, 1
jbe 0x140025fd7
mov dword [rbp + 0x50], edi
mov dword [rbp + 0x40], ecx
mov r14b, 1
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140025ff1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
inc edi
test r14b, r14b
mov ebx, 0
je 0x140025f10
jmp 0x140026017
mov ecx, 0x80004005
call fcn.1400015b0
int3
test r14b, r14b
je 0x14002612f
lea eax, [r13 - 7]
cmp eax, 4
ja 0x140026154
xor r14b, r14b
mov edi, ebx
nop dword [rax]
cmp edi, 0x1d
jge 0x14002612a
call fcn.1400018d0
test rax, rax
je 0x14002611f
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rbp - 0x18], rax
mov r9d, edi
lea r8, str.OldRetaskIndex
lea rdx, str._s_d
lea rcx, [rbp - 0x18]
call fcn.140010870
mov dword [rbp - 0x40], ebx
mov qword [rbp - 0x28], rbx
lea rax, [rbp - 0x28]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, str.SOFTWAREWaves_AudioMaxxAudioGeneral
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov rbx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x1400260df
mov dword [rbp - 0x38], 4
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0xc]
xor r8d, r8d
mov rdx, rbx
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [rbp - 0x40]
lea eax, [rcx - 7]
cmp eax, 4
ja 0x1400260f3
mov dword [rbp + 0x50], edi
mov dword [rbp + 0x40], ecx
mov r14b, 1
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14002610d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
inc edi
test r14b, r14b
mov ebx, 0
je 0x140026030
jmp 0x140026154
mov ecx, 0x80004005
call fcn.1400015b0
int3
test r14b, r14b
jne 0x140026154
test r12d, r12d
je 0x140026143
test r15d, r15d
je 0x140026143
mov dl, 1
mov rcx, rsi
call fcn.140028b40
mov rcx, rsi
call fcn.140026890
mov byte [rsi + 0x140], 0
jmp 0x140026167
cmp dword [rbp + 0x40], r13d
je 0x140026167
mov ecx, dword [rbp + 0x50]
cmp ecx, 0xffffffff
je 0x140026167
call fcn.140028d40
test r15d, r15d
je case.default.0x1400261aa
xor edx, edx
mov rcx, rsi
call fcn.140027360
cmp dword [rsi + 0x144], 0
jne case.default.0x1400261aa
xor edx, edx
mov rcx, rsi
call fcn.140028b40
mov rcx, qword [rsi + 0x100]
mov rbx, qword [rsp + 0xc8]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
jmp qword [sym.imp.KERNEL32.dll_ReleaseMutex]
push rbx
push rsi
push rdi
sub rsp, 0x50
xor edi, edi
lea rax, str.OnChange__
mov qword [rsp + 0x30], rax
lea rsi, [0x1400848d0]
mov rbx, rcx
mov qword [rsp + 0x28], rsi
lea r8, [0x1400a4128]
mov qword [rsp + 0x20], rdi
lea r9d, [rdi + 2]
mov edx, 0x2e5
lea rcx, str...SharedRealtekJack.cpp
call fcn.140002ed0
lea rax, [rsp + 0x40]
mov dword [rsp + 0x78], edi
mov r9d, 0x20019
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rsp + 0x40], rdi
lea rdx, str.SOFTWAREWaves_AudioMaxxAudioGeneral
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x140026285
lea rax, [rsp + 0x80]
mov dword [rsp + 0x80], 4
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x88]
lea rax, [rsp + 0x78]
xor r8d, r8d
lea rdx, str.DoNotShowJackSenseDialog
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [rsp + 0x78], edi
jne 0x14002629b
test dword [rbx + 0x2b0], 0x40000000
je 0x140026356
xor edx, edx
mov rcx, rbx
call fcn.140024ba0
test eax, eax
je 0x140026356
mov rcx, rbx
call fcn.1400259c0
test eax, eax
je 0x140026356
lea rax, str.Apply_jack_changing_without_GUI
mov r9d, 2
mov qword [rsp + 0x30], rax
lea r8, [0x1400a4128]
mov qword [rsp + 0x28], rsi
lea rcx, str...SharedRealtekJack.cpp
mov edx, 0x2ec
mov qword [rsp + 0x20], rdi
call fcn.140002ed0
mov rcx, rbx
call fcn.140025c60
mov edi, eax
test eax, eax
je 0x14002630d
mov edx, eax
mov rcx, rbx
call fcn.140028890
test al, al
jne 0x140026317
mov rcx, rbx
call fcn.140026370
mov edi, eax
mov rcx, rbx
call fcn.140027eb0
mov edx, edi
mov rcx, rbx
call fcn.140025a20
mov rcx, rbx
call fcn.140029ce0
mov dl, 1
mov rcx, rbx
call 0x140029f30
xor edx, edx
mov rcx, rbx
call 0x140025d50
xor edx, edx
mov rcx, rbx
add rsp, 0x50
pop rdi
pop rsi
pop rbx
jmp 0x140029f30
mov edx, 1
mov rcx, rbx
add rsp, 0x50
pop rdi
pop rsi
pop rbx
jmp 0x140025d50
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x50
movzx ebp, dl
lea rax, str.CMaxxAudioClientEx::SetMuteConnection:__d
xor esi, esi
mov dword [rsp + 0x30], ebp
mov rdi, rcx
mov qword [rsp + 0x28], rax
lea r8, [0x1400a4128]
mov qword [rsp + 0x20], rsi
mov edx, 0x80b
lea rcx, str...SharedRealtekJack.cpp
lea r9d, [rsi + 3]
call fcn.140002ed0
mov rax, qword [rdi + 0x2c0]
mov rbx, qword [rdi + 0x2b8]
mov rdi, rax
sub rdi, rbx
add rdi, 7
shr rdi, 3
cmp rbx, rax
cmova rdi, rsi
test rdi, rdi
je 0x140029fef
mov eax, esi
movaps xmmword [rsp + 0x40], xmm6
test bpl, bpl
setne al
movd xmm6, eax
cvtdq2pd xmm6, xmm6
nop word [rax + rax]
mov rcx, qword [rbx]
mov r9d, 0xfffffffd
movaps xmm2, xmm6
mov dword [rsp + 0x20], 0xfffffffd
lea edx, [r9 + 5]
call qword [sym.imp.MaxxAudioAPOShell64.dll_WavesFX_Preset_SetParameter]
inc rsi
lea rbx, [rbx + 8]
cmp rsi, rdi
jne 0x140029fc0
movaps xmm6, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
ret