Function at 0x41fae1
Capabilities:
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push 0x32c
mov eax, 0x504307
call fcn.004df416
push 0x189
push ecx
mov ecx, esp
mov dword [ebp - 0x328], esp
push str.CDetection::DetectIE7Search
call fcn.004014b0
xor ebx, ebx
mov dword [ebp - 4], ebx
or dword [ebp - 4], 0xffffffff
call fcn.0040665a
mov edi, 0x5af400
lea ecx, [esi + 4]
push edi
mov dword [esi], ebx
call fcn.004013dd
lea ecx, [esi + 8]
push edi
call fcn.004013dd
lea ecx, [esi + 0xc]
push edi
mov dword [ebp - 0x328], ecx
call fcn.004013dd
lea eax, [ebp - 0x318]
push eax
push 9
push ebx
push str.SoftwareMicrosoftInternet_ExplorerSearchScopes
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x41fd54
lea eax, [ebp - 0x32c]
push eax
lea eax, [ebp - 0x310]
push eax
push ebx
push ebx
push str.DefaultScope
push dword [ebp - 0x318]
mov dword [ebp - 0x32c], 0x100
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x41fb9e
lea eax, [ebp - 0x310]
push eax
lea ecx, [esi + 4]
call fcn.004013dd
cmp dword [esi], 0x40
mov dword [ebp - 0x31c], ebx
jge 0x41fcfc
lea eax, [esi + 0x110]
mov dword [ebp - 0x314], eax
lea eax, [ebp - 0x338]
push eax
push ebx
push ebx
push ebx
lea eax, [ebp - 0x330]
push eax
lea eax, [ebp - 0x210]
push eax
push dword [ebp - 0x31c]
mov dword [ebp - 0x330], 0x100
push dword [ebp - 0x318]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExA]
test eax, eax
jne 0x41fcfc
mov ecx, dword [ebp - 0x314]
lea eax, [ebp - 0x210]
push eax
add ecx, 0xffffff00
call fcn.004013dd
mov ecx, dword [ebp - 0x314]
push edi
call fcn.004013dd
mov ecx, dword [ebp - 0x314]
add ecx, 0x100
push edi
call fcn.004013dd
lea eax, [ebp - 0x324]
push eax
push 1
push ebx
lea eax, [ebp - 0x210]
push eax
push dword [ebp - 0x318]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x41fce4
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x110]
push eax
push ebx
push ebx
push str.DisplayName
push dword [ebp - 0x324]
mov dword [ebp - 0x320], 0x100
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x41fc91
mov ecx, dword [ebp - 0x314]
lea eax, [ebp - 0x110]
push eax
call fcn.004013dd
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x110]
push eax
push ebx
push ebx
push 0x5b3e0c
push dword [ebp - 0x324]
mov dword [ebp - 0x320], 0x100
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x41fcd8
mov ecx, dword [ebp - 0x314]
lea eax, [ebp - 0x110]
push eax
add ecx, 0x100
call fcn.004013dd
push dword [ebp - 0x324]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
inc dword [esi]
inc dword [ebp - 0x31c]
add dword [ebp - 0x314], 4
cmp dword [esi], 0x40
jl 0x41fbb9
push dword [ebp - 0x318]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [esi + 4]
cmp dword [eax - 0xc], ebx
je 0x41fd54
cmp dword [esi], ebx
jle 0x41fd54
lea edi, [esi + 0x10]
lea eax, [esi + 4]
push edi
push eax
call fcn.00403629
test al, al
pop ecx
pop ecx
jne 0x41fd31
inc ebx
add edi, 4
cmp ebx, dword [esi]
jl 0x41fd17
jmp 0x41fd54
lea eax, [esi + ebx*4 + 0x110]
push eax
lea ecx, [esi + 8]
call fcn.004038a3
mov ecx, dword [ebp - 0x328]
lea eax, [esi + ebx*4 + 0x210]
push eax
call fcn.004038a3
call fcn.004df460
ret