Function at 0x14016c700
Capabilities:
Query or enumerate registry value
Read .ini file

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
mov r14, r8
mov r12d, edx
mov r15, rcx
mov dword [rbp + 0x58], 0
cmp byte [0x1403c5340], 0
je 0x14016c7da
cmp byte [0x1403c5341], 0
jne 0x14016c7da
lea rdx, [0x1402ac728]
lea rcx, [rbp + 0x58]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__15]
nop
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::HitTest]
test al, al
jne 0x14016c771
mov rdx, r14
lea rcx, [rbp + 0x58]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
lea rcx, [0x1403c5600]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___3]
mov rdi, rax
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___3]
mov rbx, rax
lea rcx, [rbp + 0x58]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___3]
mov r9, rdi
mov r8d, r12d
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ebx, eax
lea rcx, [rbp + 0x58]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov eax, ebx
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rdx, str.SoftwareDitto
lea rcx, [rbp - 0x18]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__15]
nop
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::HitTest]
test al, al
jne 0x14016c895
lea rdx, [0x1402d9ce4]
lea rcx, [rbp - 0x20]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__14]
nop
lea rcx, [rbp - 0x20]
call qword [sym.imp.mfc140u.dll_CMFCRibbonUndoButton::GetIconSize]
mov rdx, rax
lea rcx, [rbp - 0x10]
call qword [sym.imp.mfc140u.dll_Ordinal_285]
mov dword [rbp + 0x58], 1
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov esi, eax
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___3]
mov rdi, rax
lea rcx, [rbp - 0x20]
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov ebx, eax
lea rcx, [rbp - 0x20]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___3]
mov dword [rsp + 0x20], esi
mov r9, rdi
mov r8d, ebx
mov rdx, rax
lea rcx, [rbp - 0x10]
call qword [sym.imp.mfc140u.dll_CMFCTasksPane::CollapseAllGroups_1]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x18]
call qword [sym.imp.mfc140u.dll_Ordinal_1667]
nop
lea rcx, [rbp - 0x10]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x20]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
lea rcx, [rbp - 0x18]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___3]
mov rdx, rax
lea rax, [rbp - 8]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14016c917
mov dword [rbp - 0x30], 4
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___3]
lea rcx, [rbp - 0x30]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp - 0x2c]
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x28]
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbp - 8]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov ebx, eax
mov rcx, qword [rbp - 8]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
jne 0x14016c917
mov ebx, dword [rbp - 0x2c]
lea rcx, [rbp - 0x18]
jmp 0x14016c7af
lea rcx, [rbp - 0x18]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov eax, r12d
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret