Function at 0x14000f640
Capabilities:
Print debug messages

Disassembly:
push rbp
push rsi
sub rsp, 0x28
mov rbp, rdx
test rdx, rdx
lea rdx, str.CAudioDeviceMuteStateHandler::OnAddDevice
mov rsi, rcx
jne 0x14000f671
mov r8d, 0xfa
lea rcx, str._s__d_RETURN_ON_FALSE
add rsp, 0x28
pop rsi
pop rbp
jmp fcn.140033040
mov qword [rsp + 0x40], rbx
lea rcx, [0x140094818]
mov qword [rsp + 0x58], rdi
mov r8d, 0xfc
mov qword [rsp + 0x20], r14
call fcn.140033040
or edi, 0xffffffff
cmp dword [rsi + 0x30], 0
je 0x14000f793
mov rdx, qword [rbp + 0x148]
lea rcx, [rsp + 0x48]
call fcn.1400052a0
mov r14, rax
mov rcx, qword [rax]
cmp dword [rcx - 0x10], 0
jge 0x14000f6c0
mov ebx, edi
jmp 0x14000f6de
lea rdx, str.0.0.0.00000000
call fcn.140081b98
mov rbx, rax
test rax, rax
jne 0x14000f6d8
mov ebx, edi
jmp 0x14000f6de
sub rbx, qword [r14]
sar rbx, 1
mov rdx, qword [rsp + 0x48]
mov eax, edi
shr ebx, 0x1f
xor bl, 1
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14000f702
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test bl, bl
je 0x14000f77b
lea rcx, [rbp + 0xd0]
call fcn.14000d820
mov rbx, rax
test rax, rax
je 0x14000f762
call fcn.1400097d0
test dword [rax + 0xac], 0x100
jne 0x14000f750
call fcn.14001bb00
test eax, eax
je 0x14000f742
call fcn.1400097d0
cmp dword [rax + 0x22c], 0x33
je 0x14000f750
mov rax, qword [rbx]
mov rcx, rbx
mov edx, dword [rsi + 0x38]
call qword [rax + 0x10]
jmp 0x14000f77b
mov edx, dword [rsi + 0x38]
test edx, edx
je 0x14000f77b
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x10]
jmp 0x14000f77b
mov r8d, reloc.OLEAUT32.dll_BSTR_UserUnmarshal
lea rdx, str.CAudioDeviceMuteStateHandler::OnAddDevice
lea rcx, [0x140094818]
call fcn.140033040
call fcn.140009b20
mov rcx, rax
mov edx, 0x3fd
mov r8d, 0xc8
call fcn.140071fe0
cmp dword [rsi + 0x2c], 0
je 0x14000f88f
mov rdx, qword [rbp + 0x148]
lea rcx, [rsp + 0x50]
call fcn.1400052a0
mov r14, rax
mov rcx, qword [rax]
cmp dword [rcx - 0x10], 0
jge 0x14000f7be
mov ebx, edi
jmp 0x14000f7dc
lea rdx, str.0.0.1.00000000
call fcn.140081b98
mov rbx, rax
test rax, rax
jne 0x14000f7d6
mov ebx, edi
jmp 0x14000f7dc
sub rbx, qword [r14]
sar rbx, 1
mov rdx, qword [rsp + 0x50]
shr ebx, 0x1f
xor bl, 1
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x14000f7fe
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test bl, bl
je 0x14000f877
lea rcx, [rbp + 0xd0]
call fcn.14000d820
mov rbx, rax
test rax, rax
je 0x14000f85e
call fcn.1400097d0
test dword [rax + 0xac], 0x100
jne 0x14000f84c
call fcn.14001bb00
test eax, eax
je 0x14000f83e
call fcn.1400097d0
cmp dword [rax + 0x22c], 0x33
je 0x14000f84c
mov rax, qword [rbx]
mov rcx, rbx
mov edx, dword [rsi + 0x34]
call qword [rax + 0x10]
jmp 0x14000f877
mov edx, dword [rsi + 0x34]
test edx, edx
je 0x14000f877
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x10]
jmp 0x14000f877
mov r8d, 0x141
lea rdx, str.CAudioDeviceMuteStateHandler::OnAddDevice
lea rcx, [0x140094818]
call fcn.140033040
call fcn.140009b20
mov rcx, rax
mov edx, 0x3fe
mov r8d, 0xc8
call fcn.140071fe0
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x20]
add rsp, 0x28
pop rsi
pop rbp
ret