Function at 0x670e6cf0
Capabilities:
Delete registry key
Delete registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x27]
sub rsp, 0x90
mov qword [rbp + 0x1f], 0xfffffffffffffffe
mov rsi, rdx
mov rdi, rcx
mov rbx, qword [rcx + 0xc8]
cmp dword [rbx + 8], 0
je 0x670e7135
lea rcx, [rbx + 0x10]
call fcn.670e3b20
test rax, rax
je 0x670e7135
cmp byte [rbx + 0x28], 0
jne 0x670e7135
lea rcx, [rbx + 0x10]
call fcn.670e3b20
test rax, rax
je 0x670e7135
mov rax, qword [rsi]
mov qword [rbp + 0x17], rax
lock inc dword [rax]
lea rdx, [rbp + 0x17]
lea rcx, [rbp + 0x67]
call fcn.670e3e30
nop
lea rdx, [rbp + 0x67]
lea rcx, [rbp - 0x29]
call fcn.670e3bb0
mov rsi, rax
mov rbx, qword [rdi + 0xc8]
xor r12d, r12d
cmp dword [rbx + 8], r12d
je 0x670e6dae
lea rcx, [rbx + 0x10]
call fcn.670e3b20
test rax, rax
je 0x670e6dae
cmp byte [rbx + 0x28], r12b
jne 0x670e6dae
lea rcx, [rbx + 0x10]
call fcn.670e3b20
mov rbx, rax
jmp 0x670e6db1
mov rbx, r12
mov qword [rbp - 9], r12
mov rcx, rsi
call sym.QtCoreVBox4.dll_public:_unsigned_short_int_const____ptr64___cdecl_QString::utf16_void_const___ptr64
mov rdx, rax
lea rax, [rbp - 9]
mov qword [rsp + 0x20], rax
mov r9d, 0x2001f
xor r8d, r8d
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov rbx, r12
test eax, eax
cmove rbx, qword [rbp - 9]
mov rcx, qword [rbp - 0x29]
lock dec dword [rcx]
jne 0x670e6df7
mov rcx, qword [rbp - 0x29]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
test rbx, rbx
je 0x670e6e3a
lea rdx, [rbp + 0x67]
lea rcx, [rbp + 0xf]
call fcn.670e4390
nop
mov rcx, rax
call sym.QtCoreVBox4.dll_public:_unsigned_short_int_const____ptr64___cdecl_QString::utf16_void_const___ptr64
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
nop
mov rax, qword [rbp + 0xf]
lock dec dword [rax]
jne 0x670e6e31
mov rcx, qword [rbp + 0xf]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rdi + 0xc8]
cmp dword [rbx + 8], 0
je 0x670e6e69
lea rcx, [rbx + 0x10]
call fcn.670e3b20
test rax, rax
je 0x670e6e69
cmp byte [rbx + 0x28], 0
jne 0x670e6e69
lea rcx, [rbx + 0x10]
call fcn.670e3b20
mov rbx, rax
jmp 0x670e6e6c
mov rbx, r12
mov qword [rbp - 0x19], r12
lea rcx, [rbp + 0x67]
call sym.QtCoreVBox4.dll_public:_unsigned_short_int_const____ptr64___cdecl_QString::utf16_void_const___ptr64
mov rdx, rax
lea rax, [rbp - 0x19]
mov qword [rsp + 0x20], rax
mov r9d, 0x2001f
xor r8d, r8d
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x670e7121
mov r14, qword [rbp - 0x19]
test r14, r14
je 0x670e7121
mov rcx, r14
call fcn.670e6a80
mov r11, qword [rbp + 0x67]
cmp dword [r11 + 8], 0
jne 0x670e7066
mov r8d, 1
mov rdx, r14
lea rcx, [rbp + 0x7f]
call fcn.670e6220
nop
mov rax, qword [rbp + 0x7f]
mov r13, r12
mov ecx, dword [rax + 0xc]
sub ecx, dword [rax + 8]
test ecx, ecx
jle 0x670e7017
nop dword [rax + rax]
movsxd rcx, dword [rax + 8]
add rcx, r13
mov rax, qword [rax + rcx*8 + 0x18]
mov qword [rbp + 0x77], rax
lock inc dword [rax]
lea rcx, [rbp + 0x77]
call sym.QtCoreVBox4.dll_public:_unsigned_short_int_const____ptr64___cdecl_QString::utf16_void_const___ptr64
mov rdx, rax
mov rcx, r14
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test eax, eax
je 0x670e6fec
mov edx, eax
lea rcx, [rbp - 0x31]
call fcn.670e3c30
nop
lea rdx, [rbp - 0x39]
mov rcx, rax
call sym.QtCoreVBox4.dll_public:_class_QByteArray___cdecl_QString::toLatin1_void____ptr64
mov rdi, rax
lea rdx, [rbp + 7]
lea rcx, [rbp + 0x77]
call sym.QtCoreVBox4.dll_public:_class_QByteArray___cdecl_QString::toLatin1_void____ptr64
mov rbx, rax
mov rcx, qword [rdi]
mov edx, dword [rcx]
cmp edx, 1
jne 0x670e6f62
mov rdx, qword [rdi]
lea rcx, [rdx + 0x18]
cmp qword [rdx + 0x10], rcx
je 0x670e6f70
mov rcx, qword [rdi]
mov edx, dword [rcx + 8]
mov rcx, rdi
call sym.QtCoreVBox4.dll_private:_void___cdecl_QByteArray::realloc_int____ptr64
mov rax, qword [rdi]
mov rdi, qword [rax + 0x10]
mov rax, qword [rbx]
mov ecx, dword [rax]
cmp ecx, 1
jne 0x670e6f8e
mov rcx, qword [rbx]
lea rax, [rcx + 0x18]
cmp qword [rcx + 0x10], rax
je 0x670e6f9c
mov rax, qword [rbx]
mov edx, dword [rax + 8]
mov rcx, rbx
call sym.QtCoreVBox4.dll_private:_void___cdecl_QByteArray::realloc_int____ptr64
mov rax, qword [rbx]
mov r8, rdi
mov rdx, qword [rax + 0x10]
lea rcx, str.QSettings:_RegDeleteValue_failed_on_subkey___s_:__s
call sym.QtCoreVBox4.dll_void___cdecl_qWarning_char_const____ptr64_
nop
mov rax, qword [rbp + 7]
lock dec dword [rax]
jne 0x670e6fc6
mov rcx, qword [rbp + 7]
call sym.QtCoreVBox4.dll_void___cdecl_qFree_void____ptr64_
nop
mov rax, qword [rbp - 0x39]
lock dec dword [rax]
jne 0x670e6fd9
mov rcx, qword [rbp - 0x39]
call sym.QtCoreVBox4.dll_void___cdecl_qFree_void____ptr64_
nop
mov rax, qword [rbp - 0x31]
lock dec dword [rax]
jne 0x670e6fec
mov rcx, qword [rbp - 0x31]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
nop
mov rax, qword [rbp + 0x77]
lock dec dword [rax]
jne 0x670e6ffe
mov rcx, qword [rbp + 0x77]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
inc r12d
inc r13
mov rax, qword [rbp + 0x7f]
mov ecx, dword [rax + 0xc]
sub ecx, dword [rax + 8]
cmp r12d, ecx
jl 0x670e6ef0
lock dec dword [rax]
jne 0x670e7117
mov r12, qword [rbp + 0x7f]
movsxd rax, dword [r12 + 0xc]
lea rbx, [r12 + rax*8 + 0x18]
movsxd rax, dword [r12 + 8]
lea rdi, [r12 + rax*8 + 0x18]
cmp rdi, rbx
je 0x670e7059
nop dword [rax]
sub rbx, 8
mov rdx, qword [rbx]
lock dec dword [rdx]
jne 0x670e7054
mov rcx, qword [rbx]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
cmp rbx, rdi
jne 0x670e7040
mov rcx, r12
call sym.QtCoreVBox4.dll_void___cdecl_qFree_void____ptr64_
jmp 0x670e7117
lea rcx, [rbp + 0x67]
call sym.QtCoreVBox4.dll_public:_unsigned_short_int_const____ptr64___cdecl_QString::utf16_void_const___ptr64
mov rbx, rax
mov rcx, rdi
call fcn.670e3ce0
mov rcx, rax
mov rdx, rbx
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
test eax, eax
je 0x670e7117
mov edx, eax
lea rcx, [rbp - 1]
call fcn.670e3c30
nop
lea rdx, [rbp - 0x11]
mov rcx, rax
call sym.QtCoreVBox4.dll_public:_class_QByteArray___cdecl_QString::toLatin1_void____ptr64
mov rbx, rax
lea rdx, [rbp - 0x21]
lea rcx, [rbp + 0x67]
call sym.QtCoreVBox4.dll_public:_class_QByteArray___cdecl_QString::toLatin1_void____ptr64
mov rdi, rax
mov rcx, rbx
call sym.QtCoreVBox4.dll_public:_char____ptr64___cdecl_QByteArray::begin_void____ptr64
mov rbx, rax
mov rcx, rdi
call sym.QtCoreVBox4.dll_public:_char____ptr64___cdecl_QByteArray::begin_void____ptr64
mov rdx, rax
mov r8, rbx
lea rcx, str.QSettings:_RegDeleteKey_failed_on_key___s_:__s
call sym.QtCoreVBox4.dll_void___cdecl_qWarning_char_const____ptr64_
nop
mov rax, qword [rbp - 0x21]
lock dec dword [rax]
jne 0x670e70f2
mov rcx, qword [rbp - 0x21]
call sym.QtCoreVBox4.dll_void___cdecl_qFree_void____ptr64_
nop
mov rax, qword [rbp - 0x11]
lock dec dword [rax]
jne 0x670e7105
mov rcx, qword [rbp - 0x11]
call sym.QtCoreVBox4.dll_void___cdecl_qFree_void____ptr64_
nop
mov rax, qword [rbp - 1]
lock dec dword [rax]
jne 0x670e7117
mov rcx, qword [rbp - 1]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
mov rcx, r14
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
mov rax, qword [rbp + 0x67]
lock dec dword [rax]
jne 0x670e7142
mov rcx, qword [rbp + 0x67]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
jmp 0x670e7142
mov edx, 1
mov rcx, rdi
call fcn.670d0a70
add rsp, 0x90
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret