Function at 0x46f360
Capabilities:
Query or enumerate registry key

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x114
mov eax, dword [0x4f600c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push edi
mov edi, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x108], ebx
mov dword [edi], ebx
call fcn.004729a0
cmp eax, 3
je 0x46f39e
pop edi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00467552
mov esp, ebp
pop ebp
ret
push esi
lea eax, [ebp - 0x10c]
push eax
push 0x20019
push 0
push str.SystemCurrentControlSetServicesTcpipParameters
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
jne 0x46f430
push edi
push str.SearchList
push dword [ebp - 0x10c]
call fcn.0046f210
lea eax, [ebp - 0x108]
push eax
push str.Domain
push dword [ebp - 0x10c]
call fcn.0046f210
add esp, 0x18
test eax, eax
je 0x46f428
mov esi, dword [ebp - 0x108]
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46f401
sub ecx, edx
push ecx
push esi
push edi
call fcn.0046e890
push esi
call dword [0x4f609c]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
add esp, 0x10
mov dword [ebp - 0x108], ebx
push dword [ebp - 0x10c]
call esi
lea eax, [ebp - 0x10c]
push eax
push 0x20019
push 0
push str.SoftwarePoliciesMicrosoftWindows_NTDNSClient
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x46f4af
lea eax, [ebp - 0x108]
push eax
push str.SearchList
push dword [ebp - 0x10c]
call fcn.0046f210
add esp, 0xc
test eax, eax
je 0x46f4a7
mov esi, dword [ebp - 0x108]
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46f480
sub ecx, edx
push ecx
push esi
push edi
call fcn.0046e890
push esi
call dword [0x4f609c]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
add esp, 0x10
mov dword [ebp - 0x108], ebx
push dword [ebp - 0x10c]
call esi
lea eax, [ebp - 0x10c]
push eax
push 0x20019
push 0
push str.SoftwarePoliciesMicrosoftSystemDNSClient
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x46f52f
lea eax, [ebp - 0x108]
push eax
push str.PrimaryDNSSuffix
push dword [ebp - 0x10c]
call fcn.0046f210
add esp, 0xc
test eax, eax
je 0x46f527
mov esi, dword [ebp - 0x108]
mov ecx, esi
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46f500
sub ecx, edx
push ecx
push esi
push edi
call fcn.0046e890
push esi
call dword [0x4f609c]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
add esp, 0x10
mov dword [ebp - 0x108], ebx
push dword [ebp - 0x10c]
call esi
lea eax, [ebp - 0x10c]
push eax
push 0x20019
push 0
push str.SystemCurrentControlSetServicesTcpipParametersInterfaces
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x46f6e3
push eax
push eax
push eax
push eax
lea eax, [ebp - 0x114]
mov dword [ebp - 0x114], 0x100
push eax
lea eax, [ebp - 0x104]
push eax
push 0
push dword [ebp - 0x10c]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExA]
test eax, eax
jne 0x46f6db
lea eax, [ebp - 0x110]
inc ebx
push eax
push 1
push 0
lea eax, [ebp - 0x104]
push eax
push dword [ebp - 0x10c]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x46f6a6
lea eax, [ebp - 0x108]
push eax
push str.SearchList
push dword [ebp - 0x110]
call fcn.0046f210
add esp, 0xc
test eax, eax
je 0x46f5fc
mov esi, dword [ebp - 0x108]
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46f5d7
sub ecx, edx
push ecx
push esi
push edi
call fcn.0046e890
push esi
call dword [0x4f609c]
add esp, 0x10
mov dword [ebp - 0x108], 0
lea eax, [ebp - 0x108]
push eax
push str.Domain
push dword [ebp - 0x110]
call fcn.0046f210
add esp, 0xc
test eax, eax
je 0x46f64a
mov esi, dword [ebp - 0x108]
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46f625
sub ecx, edx
push ecx
push esi
push edi
call fcn.0046e890
push esi
call dword [0x4f609c]
add esp, 0x10
mov dword [ebp - 0x108], 0
lea eax, [ebp - 0x108]
push eax
push str.DhcpDomain
push dword [ebp - 0x110]
call fcn.0046f210
add esp, 0xc
test eax, eax
je 0x46f698
mov esi, dword [ebp - 0x108]
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x46f673
sub ecx, edx
push ecx
push esi
push edi
call fcn.0046e890
push esi
call dword [0x4f609c]
add esp, 0x10
mov dword [ebp - 0x108], 0
push dword [ebp - 0x110]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call esi
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x114]
mov dword [ebp - 0x114], 0x100
push eax
lea eax, [ebp - 0x104]
push eax
push ebx
push dword [ebp - 0x10c]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExA]
test eax, eax
je 0x46f587
push dword [ebp - 0x10c]
call esi
mov ecx, dword [ebp - 4]
xor eax, eax
cmp dword [edi], eax
pop esi
setne al
xor ecx, ebp
pop edi
pop ebx
call fcn.00467552
mov esp, ebp
pop ebp
ret