Function at 0x140031870
Capabilities:
Connect to wmi namespace via wbemlocator
Print debug messages

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov r13, rcx
xor esi, esi
mov qword [rax + 0x18], rsi
lea r15, [rcx + 0x80]
mov qword [rsp + 0x20], r15
lea r9, [0x1400c4290]
xor edx, edx
lea r8d, [rsi + 1]
lea rcx, [0x1400c42b0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jne 0x1400318d1
lea rcx, str.RtkMute:CoCreateInstance_CLSID_StdGlobalInterfaceTable__ok_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x1400318de
lea rcx, str.RtkMute:CoCreateInstance_CLSID_StdGlobalInterfaceTable__fail_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x20], rax
lea r9, [0x1400bb0a0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1400bb170]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jne 0x140031cb4
lea rcx, str.RtkMute:CoCreateInstance_CLSID_WbemLocator__ok_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea r14, [r13 + 0x88]
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx]
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
lea rdx, str.rootwmi
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
test eax, eax
jne 0x14003199e
lea rcx, str.RtkMute:pIWbemLocator__ConnectServer_ok_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea rcx, str.RtkMute:pIWbemLocator__ConnectServer_WBEM_S_NO_ERROR_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov dword [rsp + 0x38], esi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xa]
mov rcx, qword [r14]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
lea rdi, [r13 + 0xe8]
mov qword [rsp + 0x20], rdi
lea r9, [0x1400bb0f0]
xor edx, edx
lea r8d, [rdx + 4]
lea rcx, [0x1400bb190]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jne 0x1400319d7
lea rcx, str.RtkMute:CoCreateInstance_CLSID_UnsecuredApartment__ok_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x1400319e4
lea rcx, str.RtkMute:CoCreateInstance_CLSID_UnsecuredApartment__fail_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov ecx, 0x40
call fcn.140065c84
mov rbx, rax
test rax, rax
je 0x140031a13
lea rax, [0x1400d01e0]
mov qword [rbx], rax
mov dword [rbx + 8], esi
mov qword [rbx + 0x10], rsi
lea rcx, [rbx + 0x18]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
jmp 0x140031a16
mov rbx, rsi
mov qword [r13 + 0xd0], rbx
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r11, qword [r13 + 0x130]
mov rax, qword [r13 + 0xd0]
mov qword [rax + 0x10], r11
mov rcx, qword [rdi]
mov rax, qword [rcx]
lea r8, [r13 + 0xe0]
mov rdx, qword [r13 + 0xd0]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
test eax, eax
jne 0x140031a62
lea rcx, str.RtkMute:pUnsecApp__CreateObjectStub_m_pSink_ok_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x140031a6f
lea rcx, str.RtkMute:pUnsecApp__CreateObjectStub_m_pSink_fail_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rcx, qword [r13 + 0xe0]
mov rax, qword [rcx]
lea r8, [r13 + 0xd8]
lea rdx, [0x1400bb0b0]
call qword [rax]
test eax, eax
jne 0x140031a9c
lea rcx, str.RtkMute:pStubUnk__QueryInterface_IID_IWbemObjectSink_ok_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x140031aa9
lea rcx, str.RtkMute:pStubUnk__QueryInterface_IID_IWbemObjectSink_fail_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rbp, qword [r14]
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
call fcn.140065c84
mov rbx, rax
mov qword [rsp + 0xb0], rax
test rax, rax
je 0x140031ae2
mov qword [rax + 8], rsi
mov dword [rax + 0x10], 1
lea rcx, str.SELECT__FROM_BIOSEvent
call fcn.1400653a0
mov qword [rbx], rax
jmp 0x140031ae5
mov rbx, rsi
mov qword [rsp + 0x58], rbx
test rbx, rbx
jne 0x140031afa
mov ecx, 0x8007000e
call fcn.1400652d0
nop
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
call fcn.140065c84
mov rdi, rax
mov qword [rsp + 0xb0], rax
test rax, rax
je 0x140031b30
mov qword [rax + 8], rsi
mov dword [rax + 0x10], 1
lea rcx, [0x1400c91d0]
call fcn.1400653a0
mov qword [rdi], rax
jmp 0x140031b33
mov rdi, rsi
mov qword [rsp + 0x60], rdi
test rdi, rdi
jne 0x140031b48
mov ecx, 0x8007000e
call fcn.1400652d0
nop
test rbx, rbx
je 0x140031b52
mov r8, qword [rbx]
jmp 0x140031b55
mov r8, rsi
test rdi, rdi
je 0x140031b5f
mov rdx, qword [rdi]
jmp 0x140031b62
mov rdx, rsi
mov r10, qword [rbp]
mov rax, qword [r13 + 0xd8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
mov r9d, 0x80
mov rcx, rbp
call qword [r10 + reloc.OLEAUT32.dll_VariantTimeToSystemTime]
mov r12d, eax
or ebp, 0xffffffff
test rdi, rdi
je 0x140031bc2
mov ecx, ebp
lock xadd dword [rdi + 0x10], ecx
add ecx, ebp
jne 0x140031bc2
mov rcx, qword [rdi]
test rcx, rcx
je 0x140031bab
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x140031bb9
call fcn.140065cd0
mov rcx, rdi
call fcn.140065cd0
nop
test rbx, rbx
je 0x140031bf7
mov eax, ebp
lock xadd dword [rbx + 0x10], eax
add eax, 0xffffffff
jne 0x140031bf7
mov rcx, qword [rbx]
test rcx, rcx
je 0x140031be1
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140031bef
call fcn.140065cd0
mov rcx, rbx
call fcn.140065cd0
test r12d, r12d
jne 0x140031c0b
lea rcx, str.RtkMute:m_pWMINamespace__ExecNotificationQueryAsync_ok_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x140031c8a
lea rcx, str.RtkMute:m_pWMINamespace__ExecNotificationQueryAsync_fail_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
call fcn.14006628c
mov rcx, rax
test rax, rax
setne sil
test esi, esi
jne 0x140031c36
mov ecx, 0x80004005
call fcn.140001950
int3
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0xc8], rax
mov r8d, r12d
lea rdx, str.RtkMute:ret_x_r_n
lea rcx, [rsp + 0xc8]
call fcn.140001e40
mov rbx, qword [rsp + 0xc8]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x140031c8a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, qword [r15]
mov rax, qword [rcx]
lea r9, [r13 + 0xf8]
lea r8, [0x1400bb090]
mov rdx, qword [r14]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
jmp 0x140031cc1
lea rcx, str.RtkMute:CoCreateInstance_CLSID_WbemLocator__fail_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret