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

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rbx, rdx
mov rdi, rcx
call fcn.14015d4c0
xor r15d, r15d
test rax, rax
jne 0x14015c6be
lea edx, [rax + 1]
mov rcx, rdi
call fcn.1401508f8
jmp 0x14015ccad
mov rax, qword [rbx]
lea rcx, [rbp + 0x50]
mov qword [rbp + 0x50], rax
cmp rbx, rcx
jne 0x14015c6eb
mov r8d, 0x38b
lea rdx, str.c:qt64qt_1544645195969workqtbaseincludeqtcore.._.._src_corelib_tools_qstring.h
lea rcx, str.other___this
call fcn.140122564
mov rax, qword [rbp + 0x50]
mov edx, dword [rax]
mov esi, 1
lea ecx, [rdx + 1]
cmp ecx, esi
jbe 0x14015c6fe
lea ecx, [rdx + 1]
mov dword [rax], ecx
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x58]
call fcn.14015b074
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x50]
call fcn.14015b6bc
mov rcx, rdi
mov rbx, rax
call fcn.14015d4c0
mov r9d, dword [rdi + 0x54]
mov r14d, 0x2001f
mov edx, r14d
mov rcx, rax
mov r8, rbx
call fcn.14015b9dc
mov rcx, qword [rbp + 0x50]
mov rbx, rax
mov r12d, 2
mov edx, dword [rcx]
test edx, edx
je 0x14015c75d
cmp edx, 0xffffffff
je 0x14015c76b
sub edx, esi
mov dword [rcx], edx
jne 0x14015c76b
mov rcx, qword [rbp + 0x50]
mov r8d, 8
mov rdx, r12
call fcn.14010b388
test rbx, rbx
je 0x14015c7c1
lea rdx, [rbp + 0x58]
lea rcx, [rbp - 0x48]
call fcn.14015b58c
mov rcx, rax
call fcn.14014385c
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov rcx, qword [rbp - 0x48]
mov eax, dword [rcx]
test eax, eax
je 0x14015c7aa
cmp eax, 0xffffffff
je 0x14015c7b8
sub eax, esi
mov dword [rcx], eax
jne 0x14015c7b8
mov rcx, qword [rbp - 0x48]
mov r8d, 8
mov rdx, r12
call fcn.14010b388
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, rdi
call fcn.14015d4c0
mov r9d, dword [rdi + 0x54]
lea r8, [rbp + 0x58]
mov rcx, rax
mov edx, r14d
call fcn.14015b9dc
mov r13, rax
test rax, rax
je 0x14015cc86
mov edx, dword [rdi + 0x54]
mov rcx, rax
call fcn.14015ab68
mov rcx, qword [rbp + 0x58]
cmp dword [rcx + 4], r15d
jne 0x14015cad3
mov r8d, esi
lea rcx, [rbp - 0x30]
mov rdx, r13
call fcn.140159db8
mov rbx, qword [rbp - 0x30]
mov r14d, r15d
mov dword [rbp + 0x50], r15d
mov ecx, dword [rbx + 0xc]
mov eax, ecx
mov edx, dword [rbx + 8]
sub eax, edx
test eax, eax
jle 0x14015caa9
mov rdi, r15
mov qword [rbp - 0x48], r15
mov r12d, 0x3c
test rdi, rdi
js 0x14015c846
sub ecx, edx
cmp r14d, ecx
jl 0x14015c869
mov r9d, 0x21d
lea r8, str.c:qt64qt_1544645195969workqtbaseincludeqtcore.._.._src_corelib_tools_qlist.h
lea rdx, str.index_out_of_range
lea rcx, str.QList_T_::at
call fcn.1401225ac
mov edx, dword [rbx + 8]
movsxd rax, edx
lea rdx, [rbp - 0x50]
add rax, 2
add rax, rdi
lea rcx, [rbx + rax*8]
mov rax, qword [rcx]
mov qword [rbp - 0x50], rax
cmp rcx, rdx
jne 0x14015c8a4
mov r8d, 0x38b
lea rdx, str.c:qt64qt_1544645195969workqtbaseincludeqtcore.._.._src_corelib_tools_qstring.h
lea rcx, str.other___this
call fcn.140122564
mov rax, qword [rbp - 0x50]
mov edx, dword [rax]
lea ecx, [rdx + 1]
cmp ecx, esi
jbe 0x14015c8b2
lea ecx, [rdx + 1]
mov dword [rax], ecx
lea rcx, [rbp - 0x50]
call fcn.14014385c
mov rdx, rax
mov rcx, r13
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test eax, eax
je 0x14015ca5b
mov edx, eax
lea rcx, [rbp - 0x30]
call fcn.140145228
mov rcx, rax
lea rdx, [rbp - 0x38]
call fcn.140005fec
mov rdi, qword [rax]
cmp dword [rdi + 4], r15d
je 0x14015c912
cmp qword [rdi + 0x10], r15
jl 0x14015c912
cmp qword [rdi + 0x10], 0x18
jae 0x14015c912
mov r8d, r12d
lea rdx, str.c:qt64qt_1544645195969workqtbaseincludeqtcore.._.._src_corelib_tools_qarraydata.h
lea rcx, str.size__0__offset___0__size_t_offset____sizeof_QArrayData_
call fcn.140122564
mov r15, qword [rdi + 0x10]
add r15, rdi
mov rdi, qword [rbp - 0x50]
mov qword [rbp - 0x28], rdi
mov ecx, dword [rdi]
lea eax, [rcx + 1]
cmp eax, esi
jbe 0x14015c92f
lea eax, [rcx + 1]
mov dword [rdi], eax
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x28]
call fcn.140005fec
mov r14, qword [rax]
cmp dword [r14 + 4], 0
je 0x14015c96a
cmp qword [r14 + 0x10], 0
jl 0x14015c96a
cmp qword [r14 + 0x10], 0x18
jae 0x14015c96a
mov r8d, r12d
lea rdx, str.c:qt64qt_1544645195969workqtbaseincludeqtcore.._.._src_corelib_tools_qarraydata.h
lea rcx, str.size__0__offset___0__size_t_offset____sizeof_QArrayData_
call fcn.140122564
mov r8, qword [r14 + 0x10]
lea rax, str.C:qt64qt_1544645195969workqtbase_srccorelibioqsettings_win.cpp
mov qword [rbp - 0x18], rax
lea rdx, str.QSettings:_RegDeleteValue_failed_on_subkey___s_:__s
lea rax, str.void___cdecl_QWinSettingsPrivate::remove_const_class_QString__
mov dword [rbp - 0x20], 2
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
lea rax, str.default
mov dword [rbp - 0x1c], 0x27f
add r8, r14
mov qword [rbp - 8], rax
mov r9, r15
call fcn.140162d0c
mov rcx, qword [rbp - 0x40]
xor r15d, r15d
mov eax, dword [rcx]
test eax, eax
je 0x14015c9cf
cmp eax, 0xffffffff
je 0x14015c9e2
sub eax, esi
mov dword [rcx], eax
jne 0x14015c9e2
mov rcx, qword [rbp - 0x40]
mov r14d, 8
mov rdx, rsi
mov r8d, r14d
call fcn.14010b388
jmp 0x14015c9e8
mov r14d, 8
mov eax, dword [rdi]
test eax, eax
je 0x14015c9f9
cmp eax, 0xffffffff
je 0x14015ca09
sub eax, esi
mov dword [rdi], eax
jne 0x14015ca09
mov r8, r14
mov edx, 2
mov rcx, rdi
call fcn.14010b388
mov rcx, qword [rbp - 0x38]
mov eax, dword [rcx]
test eax, eax
je 0x14015ca22
cmp eax, 0xffffffff
je 0x14015ca2d
sub eax, esi
mov dword [rcx], eax
jne 0x14015ca2d
mov rcx, qword [rbp - 0x38]
mov r8, r14
mov rdx, rsi
call fcn.14010b388
mov rcx, qword [rbp - 0x30]
mov eax, dword [rcx]
test eax, eax
je 0x14015ca46
cmp eax, 0xffffffff
je 0x14015ca53
sub eax, esi
mov dword [rcx], eax
jne 0x14015ca53
mov rcx, qword [rbp - 0x30]
mov r8, r14
mov edx, 2
call fcn.14010b388
mov rdi, qword [rbp - 0x48]
mov r14d, dword [rbp + 0x50]
mov rcx, qword [rbp - 0x50]
mov eax, dword [rcx]
test eax, eax
je 0x14015ca74
cmp eax, 0xffffffff
je 0x14015ca82
sub eax, esi
mov dword [rcx], eax
jne 0x14015ca82
mov rcx, qword [rbp - 0x50]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.14010b388
mov ecx, dword [rbx + 0xc]
add r14d, esi
mov edx, dword [rbx + 8]
add rdi, rsi
mov eax, ecx
mov dword [rbp + 0x50], r14d
sub eax, edx
mov qword [rbp - 0x48], rdi
cmp r14d, eax
jl 0x14015c83a
mov r12d, 2
mov eax, dword [rbx]
test eax, eax
je 0x14015cac2
cmp eax, 0xffffffff
je 0x14015cc7d
sub eax, esi
mov dword [rbx], eax
jne 0x14015cc7d
mov rdx, rbx
lea rcx, [rbp - 0x30]
call fcn.140004680
jmp 0x14015cc7d
lea rcx, [rbp + 0x58]
call fcn.14014385c
mov rcx, rdi
mov rbx, rax
call fcn.14015d4c0
mov rcx, rax
mov rdx, rbx
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
test eax, eax
je 0x14015cc7d
mov edx, eax
lea rcx, [rbp - 0x38]
call fcn.140145228
mov rcx, rax
lea rdx, [rbp - 0x30]
call fcn.140005fec
mov r12d, 0x3c
mov rbx, qword [rax]
cmp dword [rbx + 4], r15d
je 0x14015cb44
cmp qword [rbx + 0x10], r15
jl 0x14015cb44
cmp qword [rbx + 0x10], 0x18
jae 0x14015cb44
mov r8d, r12d
lea rdx, str.c:qt64qt_1544645195969workqtbaseincludeqtcore.._.._src_corelib_tools_qarraydata.h
lea rcx, str.size__0__offset___0__size_t_offset____sizeof_QArrayData_
call fcn.140122564
mov r14, qword [rbx + 0x10]
add r14, rbx
mov rbx, qword [rbp + 0x58]
mov qword [rbp - 0x28], rbx
mov ecx, dword [rbx]
lea eax, [rcx + 1]
cmp eax, esi
jbe 0x14015cb61
lea eax, [rcx + 1]
mov dword [rbx], eax
lea rdx, [rbp + 0x50]
lea rcx, [rbp - 0x28]
call fcn.140005fec
mov rdi, qword [rax]
cmp dword [rdi + 4], r15d
je 0x14015cb9a
cmp qword [rdi + 0x10], r15
jl 0x14015cb9a
cmp qword [rdi + 0x10], 0x18
jae 0x14015cb9a
mov r8d, r12d
lea rdx, str.c:qt64qt_1544645195969workqtbaseincludeqtcore.._.._src_corelib_tools_qarraydata.h
lea rcx, str.size__0__offset___0__size_t_offset____sizeof_QArrayData_
call fcn.140122564
mov r8, qword [rdi + 0x10]
lea rax, str.C:qt64qt_1544645195969workqtbase_srccorelibioqsettings_win.cpp
mov qword [rbp - 0x18], rax
lea rdx, str.QSettings:_RegDeleteKey_failed_on_key___s_:__s
lea rax, str.void___cdecl_QWinSettingsPrivate::remove_const_class_QString__
mov dword [rbp - 0x1c], 0x287
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 0x20]
lea rax, str.default
mov r12d, 2
add r8, rdi
mov qword [rbp - 8], rax
mov r9, r14
mov dword [rbp - 0x20], r12d
call fcn.140162d0c
mov rcx, qword [rbp + 0x50]
mov eax, dword [rcx]
test eax, eax
je 0x14015cbff
cmp eax, 0xffffffff
je 0x14015cc0d
sub eax, esi
mov dword [rcx], eax
jne 0x14015cc0d
mov rcx, qword [rbp + 0x50]
mov r8d, 8
mov rdx, rsi
call fcn.14010b388
mov eax, dword [rbx]
test eax, eax
je 0x14015cc1e
cmp eax, 0xffffffff
je 0x14015cc2f
sub eax, esi
mov dword [rbx], eax
jne 0x14015cc2f
mov r8d, 8
mov rdx, r12
mov rcx, rbx
call fcn.14010b388
mov rcx, qword [rbp - 0x30]
mov eax, dword [rcx]
test eax, eax
je 0x14015cc48
cmp eax, 0xffffffff
je 0x14015cc56
sub eax, esi
mov dword [rcx], eax
jne 0x14015cc56
mov rcx, qword [rbp - 0x30]
mov r8d, 8
mov rdx, rsi
call fcn.14010b388
mov rcx, qword [rbp - 0x38]
mov eax, dword [rcx]
test eax, eax
je 0x14015cc6f
cmp eax, 0xffffffff
je 0x14015cc7d
sub eax, esi
mov dword [rcx], eax
jne 0x14015cc7d
mov rcx, qword [rbp - 0x38]
mov r8d, 8
mov rdx, r12
call fcn.14010b388
mov rcx, r13
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rbp + 0x58]
mov eax, dword [rcx]
test eax, eax
je 0x14015cc9f
cmp eax, 0xffffffff
je 0x14015ccad
sub eax, esi
mov dword [rcx], eax
jne 0x14015ccad
mov rcx, qword [rbp + 0x58]
mov r8d, 8
mov rdx, r12
call fcn.14010b388
mov rbx, qword [rsp + 0xb0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret