Function at 0x6e1a54fc
Capabilities:
Delete registry key

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
mov edi, eax
mov ecx, 2
mov edx, eax
lea eax, [ebp - 0x1c]
call fcn.6e1a4c18
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
sub edx, ecx
test edx, edx
jle 0x6e1a55ba
xor esi, esi
jmp 0x6e1a5540
inc esi
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp esi, edx
jge 0x6e1a55ba
lea edx, [ecx + esi + 4]
mov eax, dword [eax + edx*4 + 4]
mov dword [ebp - 0x20], eax
lock inc dword [eax]
setne dl
lea ecx, [ebp - 0x20]
mov edx, 0x2001f
mov eax, edi
call fcn.6e1a47f8
mov ebx, eax
test eax, eax
je 0x6e1a5592
call fcn.6e1a54fc
mov dword [esp], ebx
call sub.ADVAPI32.DLL_RegCloseKey
push ebx
lea eax, [ebp - 0x20]
mov dword [esp], eax
call method.QString.utf16___const
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.ADVAPI32.DLL_RegDeleteKeyW
sub esp, 8
test eax, eax
jne 0x6e1a55ec
mov eax, dword [ebp - 0x20]
lock dec dword [eax]
setne dl
test dl, dl
jne 0x6e1a5530
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call method.QString.free_QString::Data_
inc esi
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp esi, edx
jl 0x6e1a5540
mov eax, dword [ebp - 0x1c]
lock dec dword [eax]
setne dl
test dl, dl
je 0x6e1a55cf
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
leave
ret
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], eax
lea edx, [ebp - 0x1c]
mov dword [esp], edx
call fcn.6e244e74
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
leave
ret
lea edi, [ebp - 0x28]
mov edx, eax
mov eax, edi
call fcn.6e1a4850
lea esi, [ebp - 0x2c]
mov dword [esp + 4], edi
mov dword [esp], esi
call method.QString.toLatin1___const
push ecx
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
dec edx
je 0x6e1a5720
mov eax, dword [eax + 8]
mov dword [esp + 4], eax
mov dword [esp], esi
call method.QByteArray.realloc_int_
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x3c], eax
lea ebx, [ebp - 0x24]
lea eax, [ebp - 0x20]
mov dword [esp + 4], eax
mov dword [esp], ebx
call method.QString.toLatin1___const
push edx
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
dec edx
je 0x6e1a570d
mov eax, dword [eax + 8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call method.QByteArray.realloc_int_
mov eax, dword [ebp - 0x24]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 0x3c]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov dword [esp], str.QSettings:_RegDeleteKey_failed_on_subkey___s_:__s
call sym.QtCore4.dll_qWarning_char_const__::_
mov eax, dword [ebp - 0x24]
lock dec dword [eax]
setne dl
test dl, dl
je 0x6e1a56fd
mov eax, dword [ebp - 0x2c]
lock dec dword [eax]
setne dl
test dl, dl
je 0x6e1a56f0
mov eax, dword [ebp - 0x28]
lock dec dword [eax]
setne dl
test dl, dl
je 0x6e1a56e3
mov eax, dword [ebp - 0x20]
lock dec dword [eax]
setne dl
test dl, dl
je 0x6e1a56d6
mov eax, dword [ebp - 0x1c]
lock dec dword [eax]
setne dl
test dl, dl
jne 0x6e1a55c7
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], eax
lea eax, [ebp - 0x1c]
mov dword [esp], eax
call fcn.6e244e74
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
leave
ret
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call method.QString.free_QString::Data_
jmp 0x6e1a56ab
mov eax, dword [ebp - 0x28]
mov dword [esp], eax
call method.QString.free_QString::Data_
jmp 0x6e1a569e
mov eax, dword [ebp - 0x2c]
mov dword [esp], eax
call sym.QtCore4.dll_qFree_void_
jmp 0x6e1a5691
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call sym.QtCore4.dll_qFree_void_
jmp 0x6e1a5684
mov edx, dword [eax + 0xc]
lea ecx, [eax + 0x10]
cmp edx, ecx
jne 0x6e1a564b
jmp 0x6e1a5660
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x3c], edx
lea edx, [eax + 0x10]
cmp dword [ebp - 0x3c], edx
jne 0x6e1a5614
jmp 0x6e1a562c