Function at 0x140019ff0
Capabilities:
Delete registry key
Delete registry value
Set registry value

Disassembly:
mov rax, rsp
push rsi
push rdi
push r12
sub rsp, 0x160
mov qword [rsp + 0x90], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov r12, r9
mov rbp, r8
mov rbx, rdx
lea rcx, [rsp + 0x58]
call qword [0x14005d7f8]
nop
lea rcx, [rsp + 0x50]
call qword [0x14005d7f8]
nop
xor esi, esi
test rbp, rbp
jne 0x14001a186
lea rcx, [rsp + 0x68]
call fcn.14004f0ae
nop
lea rdx, [0x14005eb30]
lea rcx, [rsp + 0xf8]
call sub.acdb18.dll_public:_void___cdecl_AdXREFString::constructor_wchar_t_const____ptr64____ptr64
nop
mov rdx, rbx
lea rcx, [rsp + 0x98]
call sub.acdb18.dll_public:_void___cdecl_AdXREFString::constructor_wchar_t_const____ptr64____ptr64
nop
lea r9d, [rsi + 0xb]
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x98]
call fcn.1400192b0
nop
lea rcx, [rsp + 0x98]
call sub.acdb18.dll_public_virtual:_void___cdecl_AdXREFString::destructor_void____ptr64
nop
lea rcx, [rsp + 0xf8]
call sub.acdb18.dll_public_virtual:_void___cdecl_AdXREFString::destructor_void____ptr64
mov r11, qword [rsp + 0x78]
cmp r11, 2
jge 0x14001a0dd
lea rcx, [rsp + 0x68]
call sub.mfc90u.dll_CRecentFileList::CRecentFileList
nop
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc90u.dll_CView::CView]
nop
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CView::CView]
xor eax, eax
jmp 0x14001a27f
lea rcx, [r11 - 1]
test rcx, rcx
js 0x14001a180
cmp rcx, r11
jge 0x14001a180
mov rax, qword [rsp + 0x70]
lea rdx, [rax + rcx*8]
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CToolBarCtrl::CToolBarCtrl]
mov edi, esi
mov rcx, qword [rsp + 0x78]
lea rax, [rcx - 1]
test rax, rax
jle 0x14001a174
mov rbx, rsi
nop word [rax + rax]
test edi, edi
jle 0x14001a13b
lea rdx, [0x14005eb30]
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc90u.dll_COleCurrency::operator_]
mov rcx, qword [rsp + 0x78]
test rbx, rbx
js 0x14001a16e
cmp rbx, rcx
jge 0x14001a16e
mov rax, qword [rsp + 0x70]
lea rdx, [rax + rbx*8]
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc90u.dll_]
inc edi
movsxd rbx, edi
mov rcx, qword [rsp + 0x78]
lea rax, [rcx - 1]
cmp rbx, rax
jl 0x14001a120
jmp 0x14001a174
call sub.mfc90u.dll_AfxOleUnregisterServerClass
nop
lea rcx, [rsp + 0x68]
call sub.mfc90u.dll_CRecentFileList::CRecentFileList
jmp 0x14001a194
call sub.mfc90u.dll_AfxOleUnregisterServerClass
nop
mov rdx, rbx
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc90u.dll_CTreeCtrl::CTreeCtrl]
lea rax, [rsp + 0x190]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], 0x20006
mov dword [rsp + 0x20], esi
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x50]
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
je 0x14001a1f6
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc90u.dll_CView::CView]
nop
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CView::CView]
xor eax, eax
jmp 0x14001a27f
test rbp, rbp
jne 0x14001a20f
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
mov ebx, eax
jmp 0x14001a255
test r12, r12
jne 0x14001a226
mov rdx, rbp
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov ebx, eax
jmp 0x14001a255
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [rax + rax + 2]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r12
mov r9d, 1
xor r8d, r8d
mov rdx, rbp
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov ebx, eax
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
sete sil
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc90u.dll_CView::CView]
nop
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_CView::CView]
mov eax, esi
lea r11, [rsp + 0x160]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsp, r11
pop r12
pop rdi
pop rsi
ret