Function at 0x140086d40
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xe8
mov qword [rbp - 0x49], 0xfffffffffffffffe
mov rbx, rcx
mov rcx, qword [rcx + 0x1658]
test rcx, rcx
je 0x140086d94
mov edi, dword [rbp + 0x6f]
cmp edi, dword [rbx + 0x14]
jb 0x140086d9b
lea r8, str.JackInfo.cpp
mov edx, 0x277
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140055180
xor eax, eax
jmp 0x14008739f
xor r15d, r15d
lea r12d, [r15 + 1]
mov esi, dword [rbp + 0x73]
test byte [rcx + 0x3c], 0x40
je 0x140086ded
lea eax, [rsi - 1]
test eax, 0xfffffeff
jne 0x140086ded
mov eax, r15d
cmp esi, 0x101
sete al
cmove esi, r12d
mov dword [rbp + 0x73], esi
cmp qword [rcx + 0x1bb0], r15
jne 0x140086eda
lea r8, str.JackInfo.cpp
mov edx, 0x480
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140055180
mov rdx, qword [rbx + 0x1658]
test dword [rdx + 0x1a8], 0x4000
je 0x140086e0e
mov eax, 0x106
cmp esi, 6
cmove esi, eax
mov dword [rbp + 0x73], esi
imul r14, rdi, 0xac
mov eax, dword [r14 + rbx + 0x15c]
cmp eax, 0xffffffff
jne 0x1400872ea
mov r14d, dword [r14 + rbx + 0x164]
test r14d, r14d
je 0x140086f4c
mov rax, qword [rbp + 0x6f]
mov qword [rbp - 0x69], rax
mov eax, edi
sub eax, dword [rbx + 0x1c]
mov dword [rbp - 0x69], eax
mov rcx, qword [0x1403ff5d0]
test rcx, rcx
je 0x140086f6f
mov dword [rbp + 0x7f], r15d
movups xmm0, xmmword [str._alsC]
movaps xmmword [rbp - 0x29], xmm0
lea rax, [rbp + 0x7f]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x69]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x29]
call fcn.14005f7e0
mov r13d, eax
test eax, eax
jne 0x140086fba
mov dword [rbp - 0x79], r15d
mov rcx, qword [0x1403ff5d0]
test rcx, rcx
je 0x140086f6f
movups xmm0, xmmword [str._alsC]
movaps xmmword [rbp - 0x19], xmm0
lea rax, [rbp - 0x79]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 8
lea rax, [rbp - 0x69]
mov qword [rsp + 0x20], rax
mov r9d, r12d
lea r8d, [r13 + 0x12]
lea rdx, [rbp - 0x19]
call fcn.14005f420
jmp 0x140086fb7
mov dword [rbp + 0x77], eax
mov dword [rbp + 0x67], r15d
mov rax, qword [0x1403df148]
test eax, eax
jg 0x140086efd
lea r8, str.DriverPropertyClient.cpp
mov edx, 0x61
jmp 0x140086de1
movups xmm0, xmmword [0x140344488]
movaps xmmword [rbp - 0x39], xmm0
test rax, rax
jle 0x1400873b3
mov rcx, qword [0x1403df140]
lea rax, [rbp + 0x67]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 4
lea rax, [rbp + 0x77]
mov qword [rsp + 0x20], rax
mov r9d, r12d
mov r8d, 0x15
lea rdx, [rbp - 0x39]
mov rcx, qword [rcx]
call fcn.14005f420
jmp 0x140086ded
mov rax, qword [0x1403df148]
test eax, eax
jg 0x140086f74
lea r8, str.DriverPropertyClient.cpp
mov edx, 0x25e
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140055180
mov r13d, r15d
jmp 0x140086fba
mov dword [rbp - 0x75], r15d
movups xmm0, xmmword [str._alsC]
movaps xmmword [rbp - 9], xmm0
test rax, rax
jle 0x1400873d5
lea rax, [rbp - 0x75]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 9]
mov rcx, qword [0x1403df140]
mov rcx, qword [rcx]
call fcn.14005f7e0
mov esi, dword [rbp + 0x73]
mov edi, dword [rbp + 0x6f]
mov r13d, eax
mov eax, edi
imul r12, rax, 0xac
mov r9d, esi
mov r8d, dword [r12 + rbx + 0x14c]
mov edx, r13d
lea rcx, str._d__CJackInfo::SetRtskDevice_:_Widget_0x_X_as__d
call fcn.140055180
test r13d, r13d
jne 0x14008711b
mov rax, qword [rbx + 0x1658]
test dword [rax + 0x548], 0x4000
je 0x140087113
mov qword [rbp - 0x61], r15
mov dword [rbp - 0x59], r15d
mov qword [rbp - 0x51], r15
mov r9d, 0x2001f
lea r8, str.SoftwareRealtekAudioGUI_INFORMATIONJackInfomation
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x61]
call fcn.140015610
test eax, eax
jne 0x140087104
call fcn.1400f9930
mov rcx, rax
test rax, rax
je 0x1400873b9
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
mov r9d, esi
mov r8d, edi
lea rdx, str.PinId0x_02X_DeviceType0x_03X
lea rcx, [rsp + 0x48]
call fcn.14000dfa0
mov rbx, qword [rsp + 0x48]
cmp dword [rbx - 8], 1
jle 0x140087082
mov edx, dword [rbx - 0x10]
lea rcx, [rsp + 0x48]
call fcn.14000dc90
mov rbx, qword [rsp + 0x48]
or rdi, 0xffffffffffffffff
test rbx, rbx
je 0x1400870c5
mov rax, rdi
nop
lea rax, [rax + 1]
cmp word [rbx + rax*2], 0
jne 0x140087090
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
mov r9d, 1
xor r8d, r8d
lea rdx, str.JackRetaskFailed
mov rcx, qword [rbp - 0x61]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
call fcn.1402a58a8
test eax, eax
js 0x1400873c4
cmp eax, dword [rbx - 0xc]
jg 0x1400873c4
mov dword [rbx - 0x10], eax
cdqe
mov word [rbx + rax*2], r15w
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140087104
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rbp - 0x61]
test rcx, rcx
je 0x140087113
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, r13d
jmp 0x14008739f
test r14d, r14d
je 0x140087136
mov eax, dword [rbx + 0x1648]
mov r15d, dword [rbx + 0x164c]
mov r14d, dword [rbx + 0x1650]
jmp 0x14008714a
mov eax, dword [rbx + 0x163c]
mov r15d, dword [rbx + 0x1640]
mov r14d, dword [rbx + 0x1644]
cmp dword [r12 + rbx + 0x14c], eax
jne 0x14008718b
xor edi, edi
cmp dword [rbx + 0x14], edi
jbe 0x14008718b
nop dword [rax + rax]
mov eax, edi
imul rcx, rax, 0xac
mov eax, dword [rcx + rbx + 0x14c]
cmp eax, r15d
je 0x14008717a
cmp eax, r14d
jne 0x140087184
mov edx, edi
mov rcx, rbx
call fcn.140086450
inc edi
cmp edi, dword [rbx + 0x14]
jb 0x140087160
mov rcx, qword [rbx + 0x1658]
test byte [rcx + 0x3c], 0x80
je 0x14008728a
cmp dword [r12 + rbx + 0x14c], 0x18
jne 0x14008728a
mov qword [rsp + 0x40], 0
add rcx, 0x1bc8
call fcn.1400a7d40
test rax, rax
jne 0x1400871e4
lea r8, str.JackInfo.cpp
mov edx, 0x2e1
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140055180
xor eax, eax
jmp 0x14008739f
xor edx, edx
mov rcx, rax
call fcn.1400c0350
mov dword [rsp + 0x20], 0
lea r9, vtable.type_info.0
lea r8, vtable.type_info.0
xor edx, edx
mov rcx, rax
call fcn.1402c2cf4
mov rdi, rax
test rax, rax
jne 0x140087235
lea r8, str.JackInfo.cpp
mov edx, 0x2e6
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140055180
xor eax, eax
jmp 0x14008739f
cmp esi, 5
jne 0x140087262
lea r8, [rsp + 0x40]
lea edx, [rsi + 0xb]
mov rcx, rdi
call fcn.1400d5bf0
test eax, eax
je 0x14008725b
mov rdx, qword [rsp + 0x40]
mov rcx, rdi
call fcn.1400d62e0
mov edx, 0x20
jmp 0x14008726c
cmp esi, 1
ja 0x14008728a
mov edx, 2
lea r8, [rsp + 0x40]
mov rcx, rdi
call fcn.1400d5bf0
test eax, eax
je 0x14008728a
mov rdx, qword [rsp + 0x40]
mov rcx, rdi
call fcn.1400d62e0
mov rbx, qword [rbx + 0x1658]
test dword [rbx + 0x190], 0x20000
je 0x140087113
mov rbx, qword [rbx + 0x1bd8]
test rbx, rbx
je 0x140087113
mov rcx, rbx
test rbx, rbx
je 0x1400873cf
mov rbx, qword [rbx]
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1400872dd
mov eax, dword [rcx + 0x1d8]
dec eax
test eax, 0xfffffffd
jne 0x1400872dd
call fcn.140018d20
test rbx, rbx
jne 0x1400872b1
mov eax, r13d
jmp 0x14008739f
lea rcx, [rdx + 0x278]
mov edx, eax
call fcn.1400e6920
mov r10, rax
test rax, rax
jne 0x14008731f
lea r8, str.JackInfo.cpp
mov edx, 0x315
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140055180
xor eax, eax
jmp 0x14008739f
mov edx, r15d
mov r8d, dword [rbx + 0x14]
test r8d, r8d
je 0x14008736d
mov r9d, dword [r14 + rbx + 0x15c]
mov eax, edx
imul rcx, rax, 0xac
cmp dword [rcx + rbx + 0x15c], r9d
je 0x14008734d
inc edx
cmp edx, r8d
jb 0x140087333
cmp edi, edx
jae 0x14008736d
lea r8, str.JackInfo.cpp
mov edx, 0x31f
lea rcx, str._VCpl__RETURN_FALSE_ON_FALSE:_Line___d__File___s_n
call fcn.140055180
xor eax, eax
jmp 0x14008739f
sub edi, edx
mov dword [rbp + 0x6f], edi
mov dword [rbp - 0x71], r15d
movups xmm0, xmmword [str._alsC]
movaps xmmword [rbp + 7], xmm0
lea rax, [rbp - 0x71]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 7]
mov rcx, qword [r10]
call fcn.14005f7e0
add rsp, 0xe8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1400f91a0
nop
mov ecx, 0x80004005
call fcn.14000de90
nop
mov ecx, 0x80070057
call fcn.14000de90
nop
call fcn.1400f91a0
int3
call fcn.1400f91a0
int3