Function at 0x100312f0
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x168
mov eax, dword [0x100a71bc]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x30c
call fcn.1004525e
add esp, 4
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0
jne 0x10031332
xor eax, eax
jmp 0x10031646
mov ecx, dword [ebp - 0x114]
add ecx, 0x104
mov dword [ebp - 0x128], ecx
mov edx, dword [ebp - 0x128]
add edx, 0x104
mov dword [ebp - 0x168], edx
lea eax, [ebp - 0x11c]
push eax
push str.SoftwareCypressEnable_Script_EditorRecent_File_List
push MenuHelp
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0
je 0x100313a0
mov ecx, dword [ebp - 0x114]
mov dword [ebp - 0x12c], ecx
push 1
mov edx, dword [ebp - 0x12c]
push edx
call fcn.10045250
add esp, 8
xor eax, eax
jmp 0x10031646
mov dword [ebp - 0x164], 0
push 0x2c
push 0
lea eax, [ebp - 0x160]
push eax
call fcn.10065850
add esp, 0xc
mov dword [ebp - 0x164], 0x30
mov dword [ebp - 0x160], 0x12
mov dword [ebp - 0x15c], 0
lea ecx, [ebp - 0x108]
mov dword [ebp - 0x140], ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_GetMenu]
mov dword [ebp - 0x118], eax
push 0
mov eax, dword [ebp - 0x118]
push eax
call dword [sym.imp.USER32.dll_GetSubMenu]
push eax
call dword [sym.imp.USER32.dll_GetMenuItemCount]
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x10c], 0x104
mov dword [ebp - 0x154], 0xf
lea ecx, [ebp - 0x10c]
push ecx
lea edx, [ebp - 0x108]
push edx
lea eax, [ebp - 0x120]
push eax
push 0
lea ecx, [ebp - 0x10c]
push ecx
mov edx, dword [ebp - 0x114]
push edx
push 0
mov eax, dword [ebp - 0x11c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0
jne 0x10031482
lea ecx, [ebp - 0x164]
push ecx
push 0
push 0x13
mov edx, dword [ebp - 0x118]
push edx
call dword [sym.imp.USER32.dll_InsertMenuItemA]
mov dword [ebp - 0x10c], 0x104
mov dword [ebp - 0x154], 0x10
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x108]
push ecx
lea edx, [ebp - 0x120]
push edx
push 0
lea eax, [ebp - 0x10c]
push eax
mov ecx, dword [ebp - 0x114]
push ecx
push 1
mov edx, dword [ebp - 0x11c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0
jne 0x100314f1
lea eax, [ebp - 0x164]
push eax
push 0
push 0x13
mov ecx, dword [ebp - 0x118]
push ecx
call dword [sym.imp.USER32.dll_InsertMenuItemA]
mov dword [ebp - 0x10c], 0x104
mov dword [ebp - 0x154], 0x11
lea edx, [ebp - 0x10c]
push edx
lea eax, [ebp - 0x108]
push eax
lea ecx, [ebp - 0x120]
push ecx
push 0
lea edx, [ebp - 0x10c]
push edx
mov eax, dword [ebp - 0x114]
push eax
push 2
mov ecx, dword [ebp - 0x11c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0
jne 0x10031560
lea edx, [ebp - 0x164]
push edx
push 0
push 0x13
mov eax, dword [ebp - 0x118]
push eax
call dword [sym.imp.USER32.dll_InsertMenuItemA]
mov dword [ebp - 0x10c], 0x104
mov dword [ebp - 0x154], 0x12
lea ecx, [ebp - 0x10c]
push ecx
lea edx, [ebp - 0x108]
push edx
lea eax, [ebp - 0x120]
push eax
push 0
lea ecx, [ebp - 0x10c]
push ecx
mov edx, dword [ebp - 0x114]
push edx
push 3
mov eax, dword [ebp - 0x11c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0
jne 0x100315cf
lea ecx, [ebp - 0x164]
push ecx
push 0
push 0x13
mov edx, dword [ebp - 0x118]
push edx
call dword [sym.imp.USER32.dll_InsertMenuItemA]
mov dword [ebp - 0x154], 0x13
mov dword [ebp - 0x15c], 0x800
lea eax, [ebp - 0x164]
push eax
push 0
push 0x13
mov ecx, dword [ebp - 0x118]
push ecx
call dword [sym.imp.USER32.dll_InsertMenuItemA]
push 0
mov edx, dword [ebp - 0x118]
push edx
call dword [sym.imp.USER32.dll_GetSubMenu]
push eax
call dword [sym.imp.USER32.dll_GetMenuItemCount]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x11c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0x114]
mov dword [ebp - 0x134], ecx
push 1
mov edx, dword [ebp - 0x134]
push edx
call fcn.10045250
add esp, 8
mov eax, 1
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100454bc
mov esp, ebp
pop ebp
ret