Function at 0x4bd310
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5fbfd2
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
push ebx
push esi
push edi
mov eax, dword [0x6b000c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov esi, dword [edi + 0xe94]
test esi, esi
je 0x4bd364
mov ecx, esi
call dword [sym.imp.ycomuiu.dll_public:_void___thiscall_DuiLib::CMenuWnd::destructor_void_]
push 0x904
push esi
call fcn.005603ff
add esp, 8
mov dword [edi + 0xe94], 0
push 0x904
call fcn.00560437
add esp, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov ecx, eax
call dword [sym.imp.ycomuiu.dll_public:_void___thiscall_DuiLib::CMenuWnd::constructor_void_]
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0xe94], eax
test eax, eax
je 0x4bd62e
call dword [sym.imp.ycomuiu.dll_public:_static_class_DuiLib::MenuObserverImpl____cdecl_DuiLib::CMenuWnd::GetGlobalContextMenuObserver_void_]
lea ecx, [edi + 0xe98]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x14]
lea ecx, [ebp - 0x28]
call dword [sym.imp.ycomuiu.dll_public:_void___thiscall_DuiLib::CDuiPoint::constructor_void_]
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
push 6
push 0
lea eax, [edi + 0x34]
push eax
push dword [ebp - 0x20]
push dword [ebp - 0x24]
push ecx
mov eax, esp
push 0
mov dword [eax], 0x6556b8
mov ecx, dword [edi + 0xe94]
call dword [sym.imp.ycomuiu.dll_public:_void___thiscall_DuiLib::CMenuWnd::Init_class_DuiLib::CMenuElementUI___class_DuiLib::STRINGorID__struct_tagPOINT__class_DuiLib::CPaintManagerUI___class_DuiLib::CStdStringPtrMap___unsigned_long_int_]
mov esi, dword [sym.imp.ycomuiu.dll_public:_static_struct_DuiLib::MenuItemInfo____cdecl_DuiLib::CMenuWnd::SetMenuItemInfoW_wchar_t_const___bool_]
push 0
push str.menuTR
call esi
push 0
push 0x65f528
call esi
push 0
push str.menuES
call esi
push 0
push str.menuDE
call esi
push 0
push str.menuKO
call esi
push 0
push str.menuFR
call esi
push 0
push str.menuEn
call esi
push 0
push str.menuAR
call esi
add esp, 0x40
push 0
push str.menuRU
call esi
push 0
push str.menuPT
call esi
push 0
push str.menuID
call esi
mov eax, dword [0x6b0c60]
add esp, 0x18
push 1
cmp eax, 0x3b6
jne 0x4bd46b
push str.menuTR
jmp 0x4bd4ee
cmp eax, 0x3a4
jne 0x4bd479
push 0x65f528
jmp 0x4bd4ee
cmp eax, 0x479
jne 0x4bd487
push str.menuES
jmp 0x4bd4ee
cmp eax, 0x475
jne 0x4bd495
push str.menuDE
jmp 0x4bd4ee
cmp eax, 0x35f
jne 0x4bd4a3
push str.menuFR
jmp 0x4bd4ee
cmp eax, 0x360
jne 0x4bd4b1
push str.menuAR
jmp 0x4bd4ee
cmp eax, 0x362
jne 0x4bd4bf
push str.menuRU
jmp 0x4bd4ee
cmp eax, 0x35c
jne 0x4bd4cd
push str.menuPT
jmp 0x4bd4ee
cmp eax, 0x421
jne 0x4bd4db
push str.menuID
jmp 0x4bd4ee
cmp eax, 0x551
jne 0x4bd4e9
push str.menuKO
jmp 0x4bd4ee
push str.menuEn
call esi
mov eax, dword [0x6b9698]
add esp, 8
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x18], 4
mov eax, dword [eax - 0xc]
test eax, eax
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
setne byte [ebp - 0x14]
push eax
push 0
push str.type
push dword [0x6b9660]
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHGetValueW]
mov esi, dword [ebp - 0x14]
test eax, eax
jne 0x4bd562
mov eax, dword [ebp - 0x10]
cmp eax, 2
ja 0x4bd562
test eax, eax
je 0x4bd562
mov ecx, dword [edi + 0xe94]
mov ebx, dword [sym.imp.ycomuiu.dll_public:_void___thiscall_DuiLib::CMenuWnd::SetMenuItemState_wchar_t_const___int__bool_]
push 0
push 1
push str.menuEditProfile
call ebx
push 0
push 1
jmp 0x4bd57b
mov ecx, dword [edi + 0xe94]
mov ebx, dword [sym.imp.ycomuiu.dll_public:_void___thiscall_DuiLib::CMenuWnd::SetMenuItemState_wchar_t_const___int__bool_]
push esi
push 0
push str.menuEditProfile
call ebx
push esi
push 0
mov ecx, dword [edi + 0xe94]
push str.menuResetPass
call ebx
cmp dword [ebp - 0x1c], 0
je 0x4bd5b1
mov esi, dword [edi + 0xe94]
call fcn.004dc390
cmp eax, 2
mov ecx, esi
sete al
movzx eax, al
push eax
push 1
push str.menuUserCenter
call ebx
mov esi, dword [ebp - 0x14]
mov ecx, dword [edi + 0xe94]
push esi
push 0
push str.menuLogout
call ebx
cmp byte [0x6b6c1b], 0
mov ecx, dword [edi + 0xe94]
sete al
movzx eax, al
push eax
push 1
push str.menuLicenseCode
call ebx
mov ecx, dword [edi + 0xe94]
push 0
push 1
push str.menuManualRecover
call ebx
movzx eax, byte [0x6b973a]
mov ecx, dword [edi + 0xe94]
push eax
push 1
push str.menuPrivacy
call ebx
cmp byte [0x6b973a], 0
je 0x4bd61c
cmp byte [0x6b9739], 0
je 0x4bd61c
mov al, 1
jmp 0x4bd61e
xor al, al
mov ecx, dword [edi + 0xe94]
push eax
push 1
push str.menuHelp
call ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4