Function at 0x1033090
Capabilities:
Query or enumerate registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x120
mov eax, dword [0x1046080]
push ebx
push edi
push 0xcd
mov dword [ebp - 4], eax
mov edi, ecx
call fcn.0103ab60
mov ebx, eax
xor eax, eax
cmp ebx, eax
mov dword [ebp - 0x100], ebx
je 0x10332f1
cmp dword [ebp + 8], eax
push esi
je 0x1033103
cmp dword [edi + 0x320], eax
je 0x10330e1
push 0x400
push 1
push ebx
call dword [sym.imp.USER32.dll_DeleteMenu]
jmp 0x1033116
cmp dword [edi + 0x2e8], eax
jne 0x10330f1
cmp dword [edi + 0x2ec], eax
jne 0x10330f4
push 3
pop eax
push eax
push 0x1a5
push ebx
call dword [sym.imp.USER32.dll_EnableMenuItem]
jmp 0x1033116
push 2
pop esi
push 0x400
push esi
push ebx
call dword [sym.imp.USER32.dll_DeleteMenu]
dec esi
jns 0x1033106
mov eax, dword [edi + 0x500]
neg eax
sbb eax, eax
and eax, 0xfffffff8
add eax, 8
push eax
mov esi, 0x1a8
push esi
push ebx
call dword [sym.imp.USER32.dll_CheckMenuItem]
lea eax, [ebp - 0x120]
push eax
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetClientRect]
call fcn.01017579
test eax, eax
jne 0x103315f
mov eax, dword [ebp - 0x114]
sub eax, dword [ebp - 0x11c]
je 0x103315f
xor eax, eax
jmp 0x1033162
push 3
pop eax
push eax
push esi
push ebx
call dword [sym.imp.USER32.dll_EnableMenuItem]
cmp dword [edi + 0x428], 0
mov esi, dword [sym.imp.USER32.dll_LoadStringW]
mov ebx, dword [sym.imp.USER32.dll_ModifyMenuW]
je 0x10331e5
cmp dword [edi + 0x480], 0
je 0x10331e5
push 0x1e
lea eax, [ebp - 0x40]
push eax
push 0x216
push dword [0x10460dc]
call esi
push 0x1e
lea eax, [ebp - 0x7c]
push eax
mov eax, dword [edi + 0x480]
push dword [eax]
push dword [0x10460dc]
call esi
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0xfc]
push 0x40
push eax
call fcn.0101f915
add esp, 0x10
lea eax, [ebp - 0xfc]
push eax
mov eax, 0x1a0
push eax
push 0
push eax
push dword [ebp - 0x100]
call ebx
jmp 0x10331f8
push 0
push 0x1a0
push dword [ebp - 0x100]
call dword [sym.imp.USER32.dll_DeleteMenu]
cmp dword [0x1046090], 0
je 0x103322f
push 0x40
lea eax, [ebp - 0xfc]
push eax
push 0x352
push dword [0x10460dc]
call esi
lea eax, [ebp - 0xfc]
push eax
mov eax, 0x197
push eax
push 0
push eax
push dword [ebp - 0x100]
call ebx
mov ecx, edi
call fcn.010325cb
test eax, eax
mov esi, dword [sym.imp.USER32.dll_EnableMenuItem]
jne 0x103326d
push 3
push 0x193
push dword [ebp - 0x100]
call esi
push 3
push 0x194
push dword [ebp - 0x100]
call esi
push 3
push 0x195
push dword [ebp - 0x100]
call esi
lea eax, [ebp - 0x108]
push eax
push 0x20019
xor edi, edi
push edi
push 0x1033320
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x10332ea
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x110]
push eax
push edi
push 0x1033300
push dword [ebp - 0x108]
mov dword [ebp - 0x104], edi
mov dword [ebp - 0x10c], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
push dword [ebp - 0x108]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0x104], edi
je 0x10332ea
push 3
push 0x1a4
push dword [ebp - 0x100]
call esi
mov eax, dword [ebp - 0x100]
pop esi
mov ecx, dword [ebp - 4]
pop edi
pop ebx
call fcn.01001aff
leave
ret 4