Function at 0x426621
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2c18
call fcn.005fec20
mov eax, dword [0x708c34]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 0xc]
mov edx, 0x400
mov eax, dword [ebp + 8]
push ebx
push edi
push ecx
push eax
push 0x66c218
mov dword [ebp - 0x2c14], eax
lea eax, [ebp - 0x2bf0]
push edx
push eax
mov dword [ebp - 0x2c10], ecx
mov dword [ebp - 0x2c08], edx
mov dword [ebp - 0x2c04], edx
call fcn.00445d6d
lea eax, [ebp - 0x2bf0]
mov edi, str.RecoverDream11PasswordFromRegKey
push eax
push edi
push str._s_:_Opening_URL__s
call fcn.00449974
add esp, 0x20
lea eax, [ebp - 0x2bf8]
xor ebx, ebx
push eax
push 0x20019
push ebx
lea eax, [ebp - 0x2bf0]
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x4266cb
push eax
lea eax, [ebp - 0x2bf0]
push eax
push edi
push str._s_:_Failed_to_open_the_host_key___s___Error0x_.8x
call fcn.00449974
add esp, 0x10
jmp 0x4269d3
push esi
lea eax, [ebp - 0x2c0c]
mov dword [ebp - 0x2bf4], ebx
push eax
lea eax, [ebp - 0x2bf4]
mov dword [ebp - 0x2c0c], 4
push eax
lea eax, [ebp - 0x2bfc]
push eax
push ebx
mov ebx, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push str.SiteServers
push dword [ebp - 0x2bf8]
call ebx
mov esi, eax
test esi, esi
je 0x42672b
push dword [ebp - 0x2bf8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push esi
push edi
push str._s_:_RegQueryValueEx_failed_to_read_the_hostname__Error0x_.8x
call fcn.00449974
add esp, 0xc
jmp 0x4269d2
push dword [ebp - 0x2bf4]
push edi
push str._s_:__Found__d_server_entries
call fcn.00449974
mov edi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor esi, esi
add esp, 0xc
cmp dword [ebp - 0x2bf4], esi
jbe 0x4269ca
push esi
push str.SiteServer__d
lea eax, [ebp - 0x68]
push 0x64
push eax
call fcn.00445d6d
lea eax, [ebp - 0x68]
push eax
push esi
push str.RecoverDream11PasswordFromRegKey
push str._s_:__Now_reading_entries_for_host__d____s
call fcn.00449974
lea eax, [ebp - 0x68]
mov byte [ebp - 0x1068], 0
push eax
mov ecx, 0x400
lea eax, [ebp - 0x468]
push str._sHost
push ecx
push eax
mov dword [ebp - 0x2c04], ecx
call fcn.00445d6d
add esp, 0x30
lea eax, [ebp - 0x2c04]
push eax
lea eax, [ebp - 0x1068]
push eax
lea eax, [ebp - 0x2bfc]
push eax
push 0
lea eax, [ebp - 0x468]
push eax
push dword [ebp - 0x2bf8]
call ebx
test eax, eax
je 0x4267ec
push eax
lea eax, [ebp - 0x468]
push eax
push str.RecoverDream11PasswordFromRegKey
push str._s_:_RegQueryValueEx_failed_to_read_the_hostname__s__Error0x_.8x
call fcn.00449974
add esp, 0x10
jmp 0x4269a1
lea eax, [ebp - 0x1068]
push eax
push str.RecoverDream11PasswordFromRegKey
push str._s_:_Found_Host__s__now_reading_username_passwords
call fcn.00449974
push dword [ebp - 0x2c10]
lea eax, [ebp - 0x2bf0]
push dword [ebp - 0x2c14]
push str._s_sKeychain
push 0x400
push eax
call fcn.00445d6d
lea eax, [ebp - 0x2bf0]
push eax
push str.RecoverDream11PasswordFromRegKey
push str._s_:_Opening_host_keychain__s
call fcn.00449974
add esp, 0x2c
lea eax, [ebp - 0x2c00]
push eax
push 0x20019
push 0
lea eax, [ebp - 0x2bf0]
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x4269b0
mov byte [ebp - 0xc68], al
mov ecx, 0x400
mov byte [ebp - 0x868], al
mov byte [ebp - 0x1468], al
mov byte [ebp - 0x1868], al
lea eax, [ebp - 0x68]
push eax
push str._s_User
push ecx
lea eax, [ebp - 0x468]
mov dword [ebp - 0x2c18], ecx
push eax
call fcn.00445d6d
add esp, 0x10
lea eax, [ebp - 0x2c18]
push eax
lea eax, [ebp - 0x868]
push eax
lea eax, [ebp - 0x2bfc]
push eax
push 0
lea eax, [ebp - 0x468]
push eax
push dword [ebp - 0x2c00]
call ebx
lea eax, [ebp - 0x68]
mov ecx, 0x400
push eax
push str._s_User_PW
push ecx
lea eax, [ebp - 0x468]
mov dword [ebp - 0x2c08], ecx
push eax
call fcn.00445d6d
add esp, 0x10
lea eax, [ebp - 0x2c08]
push eax
lea eax, [ebp - 0xc68]
push eax
lea eax, [ebp - 0x2bfc]
push eax
push 0
lea eax, [ebp - 0x468]
push eax
push dword [ebp - 0x2c00]
call ebx
push dword [ebp - 0x2c00]
call edi
lea eax, [ebp - 0x868]
push eax
call fcn.00631510
pop ecx
test eax, eax
je 0x426990
lea eax, [ebp - 0xc68]
push eax
call fcn.00631510
pop ecx
test eax, eax
je 0x426990
lea eax, [ebp - 0x1868]
push eax
lea eax, [ebp - 0x868]
push eax
call fcn.004096dc
lea eax, [ebp - 0x1468]
push eax
lea eax, [ebp - 0xc68]
push eax
call fcn.004096dc
push 0xffffffffffffffff
mov ecx, 0x66ae5d
lea eax, [ebp - 0x1468]
push ecx
push eax
lea eax, [ebp - 0x1868]
push eax
lea eax, [ebp - 0x1068]
push eax
push ecx
push 0x131
push 4
call fcn.00412c85
add esp, 0x30
jmp 0x4269a1
push str.RecoverDream11PasswordFromRegKey
push str._s_:_Could_not_find_both_username_password
call fcn.00449974
pop ecx
pop ecx
inc esi
cmp esi, dword [ebp - 0x2bf4]
jb 0x426753
jmp 0x4269ca
push eax
lea eax, [ebp - 0x2bf0]
push eax
push str.RecoverDream11PasswordFromRegKey
push str._s_:_Failed_to_open_the_keychain___s___Error0x_.8x
call fcn.00449974
add esp, 0x10
push dword [ebp - 0x2bf8]
call edi
pop esi
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop ebx
call fcn.005fe955
leave
ret