joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140046e60
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x60
mov rax, qword [0x140178010]
xor rax, rsp
mov qword [rsp + 0x50], rax
call fcn.14000bb10
test byte [rax + 0x2dc], 0xf
je 0x140046fe0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x40], 4
mov dword [rsp + 0x3c], 4
mov dword [rsp + 0x38], 1
call fcn.140004e00
mov rcx, rax
test rax, rax
je 0x140046ff8
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140050923.0]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea r9, str.HP_CONTROL
lea r8, str.SoftwareRealtekAudioRtkAudUService
lea rdx, [0x140102b58]
lea rcx, [rsp + 0x48]
call fcn.140006d30
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rbx, qword [rsp + 0x48]
mov rdx, rbx
mov rcx, 0xffffffff80000001
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
test eax, eax
jne 0x140046fba
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140046fba
lea rax, [rsp + 0x3c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
xor r8d, r8d
lea rdx, str.HP_CONTROL_DefVolumeLevelEnable
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
mov edi, eax
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test edi, edi
jne 0x140046fba
mov rax, qword [0x140178490]
mov r9d, dword [rsp + 0x38]
lea r8, str.ForceRestoreDefaultVolumeWhenStart
lea rdx, str.Others
lea rcx, [0x140178490]
mov rax, qword [rax + 0x28]
call qword [case.0x140050923.0]
mov ecx, dword [rsp + 0x38]
mov dword [rsp + 0x20], ecx
mov r9d, eax
mov r8d, 0x1014
lea rdx, str.CCustomizeHP::SyncHpControlDefaultVolume
lea rcx, str._s__d_bSuccess__d__dwForceRestore___d
call fcn.14006dd20
nop
lea rdx, [rbx - 0x18]
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140046fe0
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140050923.0]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1400df340
mov rbx, qword [rsp + 0x70]
add rsp, 0x60
pop rdi
ret
mov ecx, 0x80004005
call fcn.140004f30
int3
Function at 0x14004b190
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rbx, rdx
test rdx, rdx
jne 0x14004b1c5
mov r8d, 0x156d
lea rdx, str.CCustomizeHP::OnNamedPipeEvent
lea rcx, str._s__d_RETURN_ON_FALSE
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.14006dd20
cmp dword [rdx], 0x30000003
jne 0x14004b257
lea rax, [rsp + 0x38]
mov qword [rsp + 0x48], rax
call fcn.140004e00
mov rcx, rax
test rax, rax
je 0x14004b262
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140050923.0]
add rax, 0x18
mov qword [rsp + 0x38], rax
lea rdi, [0x140103060]
mov rdx, rdi
lea rcx, [rsp + 0x38]
call fcn.140004560
test al, al
jne 0x14004b23b
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [rdi + rax*2], 0
jne 0x14004b220
mov r8d, eax
mov rdx, rdi
lea rcx, [rsp + 0x38]
call fcn.1400047f0
nop
lea rdx, [rbx + 8]
lea rcx, [rsp + 0x40]
call fcn.140004490
nop
lea rdx, [rsp + 0x38]
mov rcx, rax
call fcn.1400db140
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov ecx, 0x80004005
call fcn.140004f30
int3
Function at 0x14004b8b0
Capabilities:
Persist via run registry key

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x50
mov rax, qword [0x140178010]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], 0
lea rax, [rsp + 0x20]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x28]
mov qword [rsp + 0x38], rax
call fcn.140004e00
mov rcx, rax
test rax, rax
je 0x14004ba65
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140050923.0]
add rax, 0x18
mov qword [rsp + 0x20], rax
lea rbx, str.AutoLogon_Skype
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.140004560
mov rdi, 0xffffffffffffffff
test al, al
jne 0x14004b94b
mov rax, rdi
nop
inc rax
cmp word [rbx + rax*2], 0
jne 0x14004b930
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.1400047f0
nop
call fcn.140004e00
mov rcx, rax
test rax, rax
je 0x14004ba5a
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140050923.0]
add rax, 0x18
mov qword [rsp + 0x28], rax
lea rbx, str.SOFTWAREMicrosoftWindowsCurrentVersionRun_
mov rdx, rbx
lea rcx, [rsp + 0x28]
call fcn.140004560
test al, al
jne 0x14004b9ab
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x14004b990
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x28]
call fcn.1400047f0
nop
lea r9, [rsp + 0x20]
lea r8, [rsp + 0x28]
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0x40]
call fcn.140090f10
nop
mov r9, qword [rsp + 0x40]
mov r8d, 0x15fe
lea rdx, str.CCustomizeHP::CheckAutoLogonSkypeRunKey
lea rcx, str._s__d__s
call fcn.14006dd20
mov rax, qword [rsp + 0x40]
cmp dword [rax - 0x10], 0
jge 0x14004b9f4
mov ebx, edi
jmp 0x14004ba1a
lea rdx, str.AutoLogon_Skype.cmd
mov rcx, rax
call fcn.1400e5534
mov rbx, rax
test rax, rax
mov rax, qword [rsp + 0x40]
jne 0x14004ba14
mov ebx, edi
jmp 0x14004ba1a
sub rbx, rax
sar rbx, 1
not ebx
shr ebx, 0x1f
lea rdx, [rax - 0x18]
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x14004ba40
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140050923.0]
mov eax, ebx
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.1400df340
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
mov ecx, 0x80004005
call fcn.140004f30
nop
mov ecx, 0x80004005
call fcn.140004f30
int3
Function at 0x14004c4b0
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x60
mov rax, qword [0x140178010]
xor rax, rsp
mov qword [rsp + 0x58], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], eax
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x30], eax
lea r9d, [rax + 1]
lea r8, str.SOFTWARERealtekAudioRtkAudUServiceOthers
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0x40]
call fcn.14002b400
test eax, eax
je 0x14004c536
lea r9, str.SOFTWARERealtekAudioRtkAudUServiceOthers
mov r8d, eax
lea rdx, str.CRegClient::GetRegUI4Property
lea rcx, str._s_nRet_d_szRegKey_s
call fcn.14006dd20
nop
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x14004c5be
jmp 0x14004c5b8
mov dword [rsp + 0x34], 4
lea rax, [rsp + 0x34]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x38]
xor r8d, r8d
lea rdx, str.SkipActionForS0
mov rbx, qword [rsp + 0x40]
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
test eax, eax
jne 0x14004c5b0
cmp dword [rsp + 0x38], 4
jne 0x14004c5b0
mov edi, dword [rsp + 0x30]
test rbx, rbx
je 0x14004c58c
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test edi, edi
je 0x14004c5be
mov r8d, 0x6d
lea rdx, str.CCustomizeHuawei::SkipActionForS0
lea rcx, str._s__d_mute_function_is_disable
call fcn.14006dd20
mov eax, 1
jmp 0x14004c5c0
test rbx, rbx
je 0x14004c5be
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
xor eax, eax
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.1400df340
mov rbx, qword [rsp + 0x70]
add rsp, 0x60
pop rdi
ret
Function at 0x14004d570
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x40
movsxd rdi, r8d
mov dword [rsp + 0x30], 0
cmp edi, 0xf
jg 0x14004d67b
call fcn.14002fcd0
mov rbx, rax
test rax, rax
jne 0x14004d5be
mov r8d, 0x162
lea rdx, str.CCustomizeHuawei::OnDriverEvent
lea rcx, str._s__d_RETURN_ON_FALSE
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rdi
jmp fcn.14006dd20
lfence
mov edx, edi
mov rcx, rbx
call fcn.1400703d0
imul rcx, rdi, 0xb0
movzx ebx, word [rcx + rbx + reloc.OLEAUT32.dll_BSTR_UserUnmarshal]
shr ebx, 1
and ebx, 1
mov qword [rsp + 0x38], 0
call fcn.140004e00
mov rcx, rax
test rax, rax
je 0x14004d686
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140050923.0]
add rax, 0x18
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 1
lea r9, str.Others
lea r8, str.SoftwareRealtekAudioRtkAudUService
lea rdx, [0x140102b58]
lea rcx, [rsp + 0x38]
call fcn.140006d30
mov r9d, ebx
lea r8, str.JackStatus
mov rbx, qword [rsp + 0x38]
mov rdx, rbx
mov rcx, qword [0x140178498]
call fcn.140090400
nop
lea rdx, [rbx - 0x18]
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14004d67b
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140050923.0]
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rdi
ret
mov ecx, 0x80004005
call fcn.140004f30
int3

Function at 0x14004e270
Capabilities:
Print debug messages

Disassembly:
sub rsp, 0x38
cmp edx, 0x42d
jne 0x14004e2b4
call fcn.14004c9a0
test eax, eax
je 0x14004e304
call fcn.14000be90
mov rcx, rax
mov edx, 0x42d
call fcn.1400d4070
mov r8d, 0x2ae
lea rdx, str.CCustomizeHuawei::OnTimer
lea rcx, [0x140102ba8]
add rsp, 0x38
jmp fcn.14006dd20
cmp edx, 0x432
jne 0x14004e304
mov r8d, 0x2b4
lea rdx, str.CCustomizeHuawei::OnTimer
lea rcx, str._s__d_SkipActionForS0_set_0
call fcn.14006dd20
call fcn.14000be90
mov rcx, rax
mov edx, 0x432
call fcn.1400d4070
xor r9d, r9d
lea r8, str.SkipActionForS0
lea rdx, str.SOFTWARERealtekAudioRtkAudUServiceOthers
mov rcx, 0xffffffff80000002
call fcn.140090400
add rsp, 0x38
ret
Function at 0x14004f520
Capabilities:
Create thread

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x40
mov ebx, edx
mov rsi, rcx
mov r9d, edx
mov r8d, 0x63
lea rdx, str.CCustomizeMSI::OnTimer
lea rcx, str._s__d_dwTid_d
call fcn.14006dd20
cmp ebx, 0x437
jne 0x14004f797
call fcn.14000be90
mov rcx, rax
mov edx, ebx
call fcn.1400d4070
cmp dword [0x140180024], 0
jne 0x14004f7c4
call fcn.14000bd10
mov edx, 1
call fcn.1400a4210
mov qword [rsi + 0x10], rax
mov r9, rax
mov r8d, 0x6b
lea rdx, str.CCustomizeMSI::OnTimer
lea rcx, str._s__d_m_pAudDev_x
call fcn.14006dd20
cmp dword [0x140178948], 0
jne 0x14004f712
mov dword [rsp + 0x68], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x78], rax
call fcn.140004e00
mov rcx, rax
test rax, rax
je 0x14004f7d7
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140050923.0]
add rax, 0x18
mov qword [rsp + 0x70], rax
lea rdx, [0x14011ba88]
lea rcx, [rsp + 0x70]
call fcn.140004560
test al, al
jne 0x14004f613
mov r8d, 3
lea rdx, [0x14011ba88]
lea rcx, [rsp + 0x70]
call fcn.1400047f0
nop
mov edx, 0xea60
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rsp + 0x70]
call fcn.1400dc780
mov ebx, dword [rsp + 0x68]
mov ecx, ebx
call fcn.1400df70c
mov rdi, rax
mov r8d, ebx
xor edx, edx
mov rcx, rax
call fcn.1400e5b40
lea rax, [rsp + 0x70]
mov qword [rsp + 0x78], rax
call fcn.140004e00
mov rcx, rax
test rax, rax
je 0x14004f7cc
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140050923.0]
add rax, 0x18
mov qword [rsp + 0x70], rax
lea rdx, [0x14011ba88]
lea rcx, [rsp + 0x70]
call fcn.140004560
test al, al
jne 0x14004f6a8
mov r8d, 3
lea rdx, [0x14011ba88]
lea rcx, [rsp + 0x70]
call fcn.1400047f0
nop
mov edx, 0xea60
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9, rdi
lea r8, [rsp + 0x70]
call fcn.1400dc780
test eax, eax
je 0x14004f6e4
mov rdx, qword [rsi + 0x10]
add rdx, 0x10
mov r9d, dword [rsp + 0x68]
mov r8, rdi
lea rcx, vtable.CWasapiPlayback.0
call fcn.1400d8470
mov rcx, rdi
call fcn.1400df368
mov r8d, 0x85
lea rdx, str.CCustomizeMSI::OnTimer
lea rcx, [0x140102ba8]
call fcn.14006dd20
cmp dword [0x140178948], 0
je 0x14004f7c4
mov r8d, 0x8a
lea rdx, str.CCustomizeMSI::OnTimer
lea rcx, [0x140102ba8]
call fcn.14006dd20
mov r8d, 0x56
lea rdx, str.CWasapiPlayback::Play
lea rcx, [0x140102ba8]
call fcn.14006dd20
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
lea r9, vtable.CWasapiPlayback.0
lea r8, [0x1400d8b50]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_CreateThread]
call fcn.14000be90
mov rcx, rax
mov edx, 0x436
mov r8d, 0xea60
call fcn.1400d3e30
mov dword [0x140180024], 1
add rsp, 0x40
pop rdi
pop rsi
pop rbx
ret
cmp ebx, 0x436
jne 0x14004f7c4
mov r8d, 0x95
lea rdx, str.CCustomizeMSI::OnTimer
lea rcx, str._s__d
call fcn.14006dd20
add rsp, 0x40
pop rdi
pop rsi
pop rbx
jmp fcn.14004f3c0
add rsp, 0x40
pop rdi
pop rsi
pop rbx
ret
mov ecx, 0x80004005
call fcn.140004f30
int3
mov ecx, 0x80004005
call fcn.140004f30
int3
Function at 0x140052990
Capabilities:
Query or enumerate registry value

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
cmp edx, 0x40e
jne 0x140052a1d
call fcn.14000be90
mov rcx, rax
mov edx, 0x40e
call fcn.1400d4070
cmp dword [rbx + 0x30], 0
jne 0x140052a55
cmp dword [rbx + 0x38], 0
je 0x1400529f1
call fcn.14000bb10
mov ecx, 0x103c
cmp word [rax + 0x342], cx
jne 0x1400529e7
mov edx, 1
mov ecx, edx
add rsp, 0x20
pop rbx
jmp fcn.1400472b0
add rsp, 0x20
pop rbx
jmp fcn.140051e30
call fcn.14000bb10
mov ecx, 0x103c
cmp word [rax + 0x342], cx
jne 0x140052a13
xor edx, edx
lea ecx, [rdx + 1]
add rsp, 0x20
pop rbx
jmp fcn.1400472b0
add rsp, 0x20
pop rbx
jmp fcn.140052220
cmp edx, 0x435
jne 0x140052a63
call fcn.14000be90
mov rcx, rax
mov edx, 0x435
call fcn.1400d4070
cmp dword [rbx + 0x34], 0
je 0x140052a50
call fcn.140052220
lea rcx, [rbx - 0x10]
add rsp, 0x20
pop rbx
jmp fcn.1400527d0
call fcn.140051e30
lea rcx, [rbx - 0x10]
add rsp, 0x20
pop rbx
jmp fcn.1400527d0
add rsp, 0x20
pop rbx
ret

Function at 0x140058170
Capabilities:
Print debug messages
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x20
mov rax, qword [r8]
mov rdi, rdx
cmp rax, qword [0x1400fd750]
mov rbx, rcx
jne 0x14005824e
mov rax, qword [r8 + 8]
cmp rax, qword [0x1400fd758]
jne 0x14005824e
cmp dword [r8 + 0x10], 0
jne 0x14005824e
call fcn.14000bd10
mov rdx, rdi
call fcn.1400a39e0
mov rdi, rax
test rax, rax
jne 0x1400581e4
mov r8d, 0x14f
lea rdx, str.CJackImpedanceDetect::OnPropertyValueChanged
lea rcx, str._s__d_RETURN_ON_FALSE
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp fcn.14006dd20
mov eax, dword [rax + 0x1ac]
dec eax
test eax, 0xfffffffd
jne 0x14005824e
cmp dword [rbx + 0x64], 0
je 0x14005823f
mov qword [rsp + 0x30], rsi
call fcn.140063590
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x38]
mov rcx, rdx
call qword [case.0x140050923.0]
cmp eax, 2
jne 0x140058221
mov r8d, dword [rbx + 0x70]
jmp 0x140058224
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbx - 0x18]
mov rsi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp fcn.1400575e0
cmp dword [rbx + 0x68], 0
je 0x14005824e
lea rcx, [rbx - 0x18]
call fcn.140057bc0
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x140058e10
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov ebx, edx
mov rdi, rcx
cmp edx, 0x20
jb 0x140058e47
mov r8d, 0x70
lea rdx, str.CJackRetaskCommandLineHelper::OnJackPlugStatusChanged
lea rcx, str._s__d_RETURN_ON_FALSE
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.14006dd20
call fcn.14002fcd0
lea rcx, [rax + 0x10]
call fcn.1400508c0
cmp dword [rdi + 0xa8], ebx
jne 0x140058e7a
call fcn.14002fcd0
imul rdx, rbx, 0xb0
test byte [rax + rdx + reloc.OLEAUT32.dll_BSTR_UserUnmarshal], 2
jne 0x140058e7a
mov ebx, 1
jmp 0x140058e7c
xor ebx, ebx
call fcn.14002fcd0
mov rcx, rax
lock dec dword [rax + 0x28]
mov eax, dword [rax + 0x28]
jne 0x140058e99
mov rcx, qword [rcx + 0x20]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_SetEvent]
jmp 0x140058eba
mov eax, dword [rcx + 0x28]
cmp eax, 0x32
jle 0x140058eba
mov r8d, 0x6a
lea rdx, str.CDataAccessProtector::FinishAccess
lea rcx, str._s__d_calling_FinishAccess_isnt_matched_RequestAccess_or_directly_return_in_EnumAudioDeviceStart_loop
call fcn.14006dd20
test ebx, ebx
je 0x140058ed9
call fcn.14000be90
mov rcx, rax
mov edx, 0x3f2
call fcn.1400d4070
lea rcx, [rdi - 0x10]
call fcn.140059010
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x1400594f0
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x90
mov rax, qword [0x140178010]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov ebp, r8d
mov esi, edx
mov edi, ecx
mov dword [rsp + 0x68], 0x1001
mov dword [rsp + 0x6c], ecx
mov word [rsp + 0x70], si
mov word [rsp + 0x72], bp
lea r9, str.RealtekAudioBackgroundProcessClass
lea r8, str.RealtekAudioBackgroundProcessClass
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_FindWindowExW]
mov r14, rax
mov qword [rsp + 0x58], SafeArrayDestroy
mov qword [rsp + 0x50], 0x2000
lea rax, [rsp + 0x68]
mov qword [rsp + 0x60], rax
lea r9, [rsp + 0x50]
mov r8, qword [0x1401810c8]
mov edx, 0x4a
mov rcx, r14
call qword [sym.imp.USER32.dll_SendMessageW]
mov r15, rax
call fcn.140004e00
mov rcx, rax
test rax, rax
je 0x1400596a2
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140050923.0]
add rax, 0x18
mov qword [rsp + 0x78], rax
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov dword [rsp + 0x48], eax
mov qword [rsp + 0x40], r15
mov dword [rsp + 0x38], ebp
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], r14
mov r9d, 0xfd
lea r8, str.CJackRetaskCommandLineHelper::SendRetaskCommandToActiveRtkAudUService
lea rdx, str._s__d_hWnd_x_Wid_x_DevType_d_Seq_d_hr_x_LastErr_d
lea rcx, [rsp + 0x78]
call fcn.140006d30
mov rbx, qword [rsp + 0x78]
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_debug_l1_1_0.dll_OutputDebugStringW]
cmp dword [0x140180270], 0
je 0x140059650
cmp dword [0x140180274], 0
jne 0x140059618
mov rax, qword [0x140179638]
test byte [rax + 0x1c], 1
je 0x140059650
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x38], r15
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], edi
mov r9, r14
mov r8d, 0x101
lea rdx, str.CJackRetaskCommandLineHelper::SendRetaskCommandToActiveRtkAudUService
lea rcx, str._s__d_hWnd_x_Wid_x_DevType_d_Seq_d_hr_x_LastErr_d
call fcn.14006dd20
nop
lea rdx, [rbx - 0x18]
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140059676
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140050923.0]
mov eax, 1
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1400df340
mov rbx, qword [rsp + 0xd8]
add rsp, 0x90
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.140004f30
int3
Function at 0x14005a830
Capabilities:
Persist via run registry key
Set registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x1788]
mov eax, 0x1888
call fcn.1400e8ab0
sub rsp, rax
mov rax, qword [0x140178010]
xor rax, rsp
mov qword [rbp + 0x1770], rax
mov r14, r8
mov r15, rcx
mov r8, rdx
lea rcx, [rbp + 0x150]
mov edx, 0x208
mov rsi, r9
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
xor ebx, ebx
lea rcx, [rsp + 0x40]
mov edx, 0x104
test rsi, rsi
jne 0x14005a8bb
mov r8, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
lea edx, [rbx + 0x2e]
lea rcx, [rsp + 0x40]
call fcn.1400e5484
test rax, rax
je 0x14005a8c4
lea edx, [rbx + 0x2e]
lea rcx, [rsp + 0x40]
call fcn.1400e5484
mov word [rax], bx
jmp 0x14005a8c4
mov r8, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
mov edi, dword [rbp + 0x17e0]
lea rax, str.SoftwareMicrosoftWindowsCurrentVersionRun
test edi, edi
lea r8, [0x140121b70]
mov edx, 0x800
lea rcx, [rbp + 0x770]
cmove r8, rax
call fcn.14002f3c0
cmp dword [rbp + 0x17e8], ebx
jne 0x14005a9f1
test edi, edi
jne 0x14005a960
lea r8, [0x1401032b4]
mov edx, 0x208
lea rcx, [rbp + 0x150]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscat_s]
mov r8, r15
lea rcx, [rbp + 0x150]
mov edx, 0x208
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscat_s]
test r14, r14
je 0x14005a960
lea r8, [0x140121c8c]
mov edx, 0x208
lea rcx, [rbp + 0x150]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscat_s]
mov r8, r14
lea rcx, [rbp + 0x150]
mov edx, 0x208
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscat_s]
lea rax, [rsp + 0x30]
mov r9d, 0xf003f
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x770]
mov rcx, 0xffffffff80000002
mov edi, ebx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
test eax, eax
jne 0x14005a9dd
lea rcx, [rbp + 0x150]
call fcn.14005a400
lea rcx, [rbp + 0x150]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], bx
jne 0x14005a9a7
mov rcx, qword [rsp + 0x30]
lea rdx, [rsp + 0x40]
add eax, eax
mov r9d, 1
mov dword [rsp + 0x28], eax
xor r8d, r8d
lea rax, [rbp + 0x150]
mov qword [rsp + 0x20], rax
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegSetValueExW]
mov edi, eax
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
test edi, edi
sete bl
mov eax, ebx
jmp 0x14005aa56
call fcn.14000bb10
test dword [rax + 0xc0], 0x20000000
je 0x14005aa11
call fcn.14000bb10
movzx r8d, byte [rax + 0x1f3]
jmp 0x14005aa17
mov r8d, 0x1e
mov r9, r14
mov rcx, rsi
call fcn.14005b020
mov r9, rsi
mov dword [rsp + 0x30], eax
lea r8, str.RunCplByTaskScheduler__s
mov edx, 0x104
lea rcx, [rbp + 0x560]
call fcn.14002f3c0
lea r8, [rsp + 0x30]
lea rdx, [rbp + 0x560]
call fcn.14005aa80
mov eax, dword [rsp + 0x30]
mov rcx, qword [rbp + 0x1770]
xor rcx, rsp
call fcn.1400df340
add rsp, 0x1888
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
Function at 0x14005aa80
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x50
mov rax, qword [0x140178010]
xor rax, rsp
mov qword [rsp + 0x48], rax
xor ebx, ebx
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x38], rbx
mov rdi, r8
mov rsi, rdx
call fcn.1400a0870
mov rdx, qword [rsp + 0x38]
lea rax, [rsp + 0x30]
mov r9d, 0xf003f
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rsp + 0x30], rbx
mov rcx, 0xffffffff80000002
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
test eax, eax
je 0x14005aafa
mov rdx, qword [rsp + 0x38]
lea r8, [rsp + 0x30]
mov rcx, 0xffffffff80000002
call qword [sym.imp.api_ms_win_core_registry_l2_1_0.dll_RegCreateKeyW]
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14005ab49
xor r8d, r8d
mov dword [rsp + 0x28], 4
mov r9d, 4
mov rdx, rsi
test rdi, rdi
je 0x14005ab24
mov qword [rsp + 0x20], rdi
jmp 0x14005ab36
lea rax, [rsp + 0x40]
mov dword [rsp + 0x40], 1
mov qword [rsp + 0x20], rax
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x30]
mov ebx, eax
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
mov rdx, qword [rsp + 0x38]
mov eax, 0xffffffff
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14005ab74
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140050923.0]
mov eax, ebx
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.1400df340
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
ret
Function at 0x14006a870
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov edi, ecx
lea rdx, str.CIndependentVolumeMgr::InitForAllIndepHPVol
lea rcx, [0x140102ba8]
mov r8d, 0x49
call fcn.14006dd20
call fcn.14000bd10
mov rcx, rax
call fcn.1400a1a60
call fcn.14000bd10
cmp dword [rax + 0x140], 0
jne 0x14006a8e8
cmp dword [0x140180270], 0
je 0x14006a8e8
cmp dword [0x140180274], 0
jne 0x14006a8cf
mov rax, qword [0x140179638]
test byte [rax + 0x1c], 1
je 0x14006a8e8
mov r8d, 0x3e
lea rdx, str.CMMPlatform::AudioDevList_GetHeadPosition
lea rcx, str._s__d_please_call_AudioDevList_AddRef_before_AudioDevList_GetHeadPosition
call fcn.14006dd20
call fcn.14000bd10
mov rbx, qword [rax + 0xe0]
test rbx, rbx
je 0x14006a928
call fcn.14000bd10
call fcn.14000bd10
mov rcx, qword [rbx + 0x10]
mov rbx, qword [rbx]
test rcx, rcx
je 0x14006a8f4
cmp dword [rcx + 0x1ac], 1
jne 0x14006a8f4
cmp dword [rcx + 0x178], 0
jne 0x14006a8f4
mov edx, edi
call fcn.14006b050
call fcn.14000bd10
mov rcx, rax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.1400a1ae0