Function at 0x100049e0
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
test byte [0x1000a048], 8
mov dword [ebp - 8], esi
mov esi, dword [ebp + 8]
mov dword [ebp - 0xc], ebx
mov dword [ebp - 4], edi
mov dword [ebp - 0x14], 0x64
jne 0x10004b30
mov eax, dword [ebp + 0xc]
cmp esi, 1
mov dword [eax], 0
je 0x10004a40
cmp esi, 2
je 0x10004b20
test esi, esi
mov ebx, 0x80070057
mov edi, str.Start_Page
je 0x10004a45
mov esi, dword [ebp - 8]
mov eax, ebx
mov ebx, dword [ebp - 0xc]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
ret 8
mov edi, str.Search_Page
mov dword [esp], 0x80000001
lea eax, [ebp - 0x10]
mov dword [esp + 8], eax
mov eax, str.SoftwareMicrosoftInternet_ExplorerMain
mov dword [esp + 4], eax
call dword [sym.imp.advapi32.dll_RegOpenKeyW]
sub esp, 0xc
test eax, eax
mov ebx, eax
je 0x10004a90
test byte [0x1000a048], 4
jne 0x10004b70
test ebx, ebx
jle 0x10004a2b
movzx ebx, bx
or ebx, 0x80070000
jmp 0x10004a2b
mov eax, dword [ebp - 0x14]
mov dword [esp], eax
call dword [sym.imp.ole32.dll_CoTaskMemAlloc]
lea edx, [ebp - 0x14]
lea ecx, [ebp - 0x18]
sub esp, 4
mov esi, eax
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x10]
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 4], edi
mov dword [esp], eax
mov eax, dword [sym.imp.advapi32.dll_RegQueryValueExW]
mov dword [ebp - 0x1c], eax
call eax
mov ebx, eax
mov eax, dword [ebp - 0x14]
sub esp, 0x18
mov dword [esp], esi
mov dword [esp + 4], eax
call dword [sym.imp.ole32.dll_CoTaskMemRealloc]
lea ecx, [ebp - 0x18]
lea edx, [ebp - 0x14]
sub esp, 8
cmp ebx, 0xea
mov esi, eax
je 0x10004bc0
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegCloseKey]
sub esp, 4
test ebx, ebx
jne 0x10004ba0
mov eax, dword [ebp + 0xc]
xor ebx, ebx
mov dword [eax], esi
jmp 0x10004a2b
mov ebx, 0x80004001
jmp 0x10004a2b
mov eax, dword [ebp + 0xc]
mov edx, str.__lu__p__n
mov ecx, str.HlinkGetSpecialReference
mov dword [esp + 0x10], esi
mov ebx, 0x1000a048
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 4], ebx
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_2
jmp 0x10004a06
mov dword [esp + 0x10], eax
mov eax, str.Could_not_open_key:__lu_n
mov dword [esp + 0xc], eax
mov eax, str.HlinkGetSpecialReference
mov dword [esp + 8], eax
mov eax, 0x1000a048
mov dword [esp + 4], eax
mov dword [esp], 2
call sym._wine_dbg_log.constprop.0_2
jmp 0x10004a78
test byte [0x1000a048], 4
jne 0x10004bf0
mov dword [esp], esi
call dword [sym.imp.ole32.dll_CoTaskMemFree]
sub esp, 4
jmp 0x10004a78
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x10]
xor ebx, ebx
mov dword [esp + 8], ebx
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], ecx
mov dword [esp], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], edi
call eax
sub esp, 0x18
mov ebx, eax
jmp 0x10004af9
mov eax, edi
call sym._wine_dbgstr_wn.constprop.0_2
mov edx, str.HlinkGetSpecialReference
mov ecx, 0x1000a048
mov dword [esp + 0x14], ebx
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
mov dword [esp], 2
mov dword [esp + 0x10], eax
mov eax, str.Could_not_query_value__s:__lu_n
mov dword [esp + 0xc], eax
call sym._wine_dbg_log.constprop.0_2
jmp 0x10004ba9