Function at 0x14002c020
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
push rsi
push rdi
push r12
sub rsp, 0x90
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov rbp, rdx
mov rsi, rcx
lea rcx, str.WMI_Query.InstanceName_ACPIPNP0C140_0_
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov rbx, rax
mov qword [rsp + 0x30], rax
test rax, rax
jne 0x14002c06a
mov ecx, 0x8007000e
call fcn.140012060
nop
call fcn.140054628
mov r11, rax
xor r12d, r12d
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x14002c08d
mov ecx, 0x80004005
call fcn.140012060
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rdi, [rax + 0x18]
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0xc0], r12
mov rcx, qword [rsi + 0x20]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r12
lea rdx, [rsp + 0xc0]
mov qword [rsp + 0x20], rdx
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
call qword [rax + 0x30]
test eax, eax
jns 0x14002c136
mov r8d, eax
lea rdx, str.RtkMute:__Failed_to_get_class_object_in_WMIQuery____0x_X_n
lea rcx, [rsp + 0x40]
call fcn.140015b40
mov rbx, qword [rsp + 0x40]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
mov rcx, qword [rsp + 0xc0]
test rcx, rcx
je 0x14002c107
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14002c124
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor eax, eax
jmp 0x14002c3b9
lea rcx, [rsp + 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
mov rsi, qword [rsp + 0xc0]
lea rcx, str.QDATA
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov rbx, rax
mov qword [rsp + 0x80], rax
test rax, rax
jne 0x14002c172
mov ecx, 0x8007000e
call fcn.140012060
nop
mov rax, qword [rsi]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
lea r9, [rsp + 0x60]
xor r8d, r8d
mov rdx, rbx
mov rcx, rsi
call qword [rax + 0x20]
mov esi, eax
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
test esi, esi
jns 0x14002c1fc
lea rcx, str.RtkMute:__Failed_to_get_QDATA_property_in_WMIQuery____n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
lea rcx, [rsp + 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
mov rcx, qword [rsp + 0xc0]
test rcx, rcx
je 0x14002c1cd
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
lea rdx, [rdi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14002c1ea
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor eax, eax
jmp 0x14002c3b9
mov qword [rsp + 0xc8], r12
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14002c223
mov rax, qword [rcx]
lea r8, [rsp + 0xc8]
lea rdx, [0x1400b72f8]
call qword [rax]
nop
lea rcx, [rsp + 0x48]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x48]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
mov rsi, qword [rsp + 0xc8]
lea rcx, str.Bytes
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov rbx, rax
mov qword [rsp + 0x88], rax
test rax, rax
jne 0x14002c26a
mov ecx, 0x8007000e
call fcn.140012060
nop
mov rax, qword [rsi]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
lea r9, [rsp + 0x48]
xor r8d, r8d
mov rdx, rbx
mov rcx, rsi
call qword [rax + 0x20]
mov esi, eax
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
test esi, esi
jns 0x14002c314
lea rcx, str.RtkMute:__Failed_to_get_Bytes_property_in_WMIQuery____n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
lea rcx, [rsp + 0x48]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x14002c2c5
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
lea rcx, [rsp + 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
mov rcx, qword [rsp + 0xc0]
test rcx, rcx
je 0x14002c2e5
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
lea rdx, [rdi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14002c302
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor eax, eax
jmp 0x14002c3b9
mov qword [rsp + 0x38], r12
lea rdx, [rsp + 0x38]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.OLEAUT32.dll_SafeArrayUnaccessData]
mov r11, qword [rsp + 0x38]
mov eax, dword [r11 + 0xc]
mov dword [rbp], eax
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.OLEAUT32.dll_SafeArrayGetElement]
lea rcx, [rsp + 0x48]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rsp + 0x48]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x14002c36c
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
lea rcx, [rsp + 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
mov rcx, qword [rsp + 0xc0]
test rcx, rcx
je 0x14002c38c
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
lea rdx, [rdi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14002c3a9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, 1
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsp, r11
pop r12
pop rdi
pop rsi
ret