Function at 0x180014760
Capabilities:
Set registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov r12, rdx
mov r14, rcx
xor ebx, ebx
mov dword [rbp + 0x40], ebx
xor edx, edx
mov rcx, qword [rcx + 0x118]
call qword [sym.imp.USER32.dll_GetSubMenu]
mov rcx, rax
call qword [sym.imp.mfc140u.dll_CList_CMFCPropertyGridProperty]
mov r15, rax
mov rdx, qword [r14 + 0x108]
mov r8d, dword [rdx]
and r8d, 1
shl r8d, 3
mov edx, 0x9c4a
mov rcx, qword [rax + 8]
call qword [sym.imp.USER32.dll_CheckMenuItem]
mov rcx, qword [r15 + 8]
call qword [sym.imp.USER32.dll_GetMenuItemCount]
cmp eax, 2
jg 0x18001485d
mov rax, qword [0x18002bd60]
lea rdi, [rax + 0x22e8]
mov esi, ebx
cmp dword [rax + 0x2608], ebx
jle 0x18001485d
mov rcx, rdi
call qword [sym.imp.mfc140u.dll_CMFCRibbonUndoButton::GetIconSize]
mov rdx, rax
lea rcx, [rbp + 0x50]
call qword [sym.imp.mfc140u.dll_Ordinal_285]
or ebx, 1
mov dword [rbp + 0x40], ebx
mov r9, qword [rdi]
mov eax, dword [r9 - 0x10]
mov dword [rsp + 0x20], eax
mov r8d, 1
lea rdx, [0x18001a844]
lea rcx, [rbp + 0x50]
call qword [sym.imp.mfc140u.dll_CMFCTasksPane::CollapseAllGroups]
lea eax, [rsi + 0xcb2]
movsxd r8, eax
mov r9, qword [rbp + 0x50]
xor edx, edx
mov rcx, qword [r15 + 8]
call qword [sym.imp.USER32.dll_AppendMenuW]
and ebx, 0xfffffffe
lea rcx, [rbp + 0x50]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
inc esi
add rdi, 0x10
mov rax, qword [0x18002bd60]
cmp esi, dword [rax + 0x2608]
jl 0x1800147e4
mov rax, qword [r14]
lea rdx, [r14 + 0x110]
mov r8, qword [r12]
mov rcx, r14
call qword [rax + 0x90]
mov esi, eax
call qword [sym.imp.mfc140u.dll_AfxFieldText]
mov rbx, qword [rax + 0x18]
mov qword [rbp - 0x10], rbx
mov rdi, qword [0x18002bd90]
call qword [sym.imp.mfc140u.dll_AfxFieldText]
mov qword [rax + 0x18], rdi
lea edx, [rsi - 0xcb2]
cmp edx, 0x31
ja 0x180014935
mov rcx, qword [0x18002bd60]
mov eax, edx
shl rax, 4
lea rdx, [rcx + 0x22f0]
add rdx, rax
lea rcx, [rbp + 0x40]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__4]
nop
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x50]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__4]
mov rdx, rax
mov rcx, qword [0x18002bd60]
call fcn.180001740
test eax, eax
jne 0x18001490b
lea rcx, [rbp + 0x40]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
call qword [sym.imp.mfc140u.dll_AfxFieldText]
mov qword [rax + 0x18], rbx
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1800021f0
nop
lea rcx, [rbp + 0x40]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
call qword [sym.imp.mfc140u.dll_AfxFieldText]
mov qword [rax + 0x18], rbx
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
sub esi, 0x9c4a
je 0x18001499f
sub esi, 2
je 0x180014993
cmp esi, 0x14
jne 0x180014a37
lea rdx, str.sun_about
lea rcx, [rbp + 0x40]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__3]
mov rdx, rax
mov rcx, qword [0x18002bd60]
call fcn.180001740
test eax, eax
jne 0x180014988
call qword [sym.imp.mfc140u.dll_AfxFieldText]
mov qword [rax + 0x18], rbx
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1800021f0
nop
jmp 0x180014a37
mov rax, qword [r14 + 0x108]
xor dword [rax], 4
jmp 0x1800149b5
mov rax, qword [r14 + 0x108]
xor dword [rax], 1
mov rcx, qword [0x18002bd60]
call fcn.180001660
mov rdi, qword [0x18002bd60]
lea rdx, str.SOFTWARE_sunkingmenu
lea rcx, [rbp + 0x50]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__3]
lea r8, [rbp + 0x58]
mov rdx, qword [rbp + 0x50]
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyW]
test eax, eax
jne 0x180014a1a
mov eax, dword [rdi + 0x10]
and eax, 1
mov dword [rbp + 0x40], eax
mov dword [rsp + 0x28], 4
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
lea rdx, str.SideMenu
mov rcx, qword [rbp + 0x58]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
lea rcx, [rbp + 0x50]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov rcx, qword [rbp + 0x58]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, r14
call fcn.1800146d0
nop
call qword [sym.imp.mfc140u.dll_AfxFieldText]
mov qword [rax + 0x18], rbx
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret