Function at 0x443c08
Capabilities:
Query or enumerate registry key

Disassembly:
push pe_nt_image_headers32
mov eax, 0x4dd95c
call fcn.004bf1fc
mov eax, dword [ebp + 8]
mov edi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0x8c]
push eax
push 0x20019
xor ebx, ebx
push ebx
push str.SOFTWAREMicrosoftWindows_NTCurrentVersionNetworkCards
push reloc.OLEAUT32.dll_SysReAllocString
mov dword [ebp - 0x8c], ebx
call edi
test eax, eax
jne 0x443fd0
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0xa0]
push eax
push ebx
push ebx
push ebx
push dword [ebp - 0x8c]
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x94], ebx
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
test eax, eax
jne 0x443fc4
mov eax, 0x400
cmp dword [ebp - 0x94], eax
ja 0x443fc4
cmp dword [ebp - 0xa0], eax
ja 0x443fc4
cmp dword [ebp - 0xa0], ebx
mov dword [ebp - 0x9c], ebx
jbe 0x443fb4
mov eax, dword [ebp - 0x94]
xor ecx, ecx
push 2
add eax, 2
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004b6460
mov esi, eax
mov eax, dword [ebp - 0x94]
pop ecx
inc eax
push eax
push esi
push dword [ebp - 0x9c]
mov dword [ebp - 0xa8], esi
push dword [ebp - 0x8c]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
test eax, eax
jne 0x443f95
mov eax, dword [ebp - 0x94]
mov word [esi + eax*2 + 2], bx
lea eax, [ebp - 0x98]
push eax
push 0x20019
push ebx
push esi
push dword [ebp - 0x8c]
mov dword [ebp - 0x98], ebx
call edi
test eax, eax
jne 0x443f95
push 7
pop esi
xor ecx, ecx
lea eax, [ebp - 0x88]
mov dword [ebp - 0x70], esi
call fcn.00401870
xor ecx, ecx
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x54], esi
call fcn.00401870
xor ecx, ecx
lea eax, [ebp - 0x50]
mov dword [ebp - 0x38], esi
call fcn.00401870
mov edx, str.ServiceName
lea eax, [ebp - 0xc4]
mov dword [ebp - 4], ebx
call fcn.004074b0
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0xe0]
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x98]
push eax
call fcn.00443b22
push 0xffffffffffffffff
push ebx
push eax
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 2
call fcn.00401690
lea esi, [ebp - 0xe0]
call fcn.00401650
lea esi, [ebp - 0xc4]
mov byte [ebp - 4], bl
call fcn.00401650
mov edx, str.Description
lea eax, [ebp - 0xc4]
call fcn.004074b0
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0xe0]
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x98]
push eax
call fcn.00443b22
push 0xffffffffffffffff
push ebx
push eax
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 4
call fcn.00401690
lea esi, [ebp - 0xe0]
call fcn.00401650
lea esi, [ebp - 0xc4]
mov byte [ebp - 4], bl
call fcn.00401650
cmp dword [ebp - 0x74], ebx
je 0x443f4a
mov edx, str.SYSTEMCurrentControlSetControlNetwork4D36E972_E325_11CE_BFC1_08002BE10318_
lea eax, [ebp - 0x2c]
call fcn.004074b0
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x88]
push eax
lea esi, [ebp - 0x2c]
mov byte [ebp - 4], 5
call fcn.00407ce0
mov eax, esi
push eax
mov edx, str.Connection
call fcn.00407570
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x90], ebx
jae 0x443e57
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x90]
push ecx
push 0x20019
push ebx
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call edi
test eax, eax
jne 0x443ed9
mov edx, str.Name
lea eax, [ebp - 0xfc]
call fcn.004074b0
lea eax, [ebp - 0xfc]
push eax
lea eax, [ebp - 0x118]
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x90]
push eax
call fcn.00443b22
push 0xffffffffffffffff
push ebx
push eax
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 7
call fcn.00401690
lea esi, [ebp - 0x118]
call fcn.00401650
lea esi, [ebp - 0xfc]
mov byte [ebp - 4], 5
call fcn.00401650
push dword [ebp - 0x90]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x90], ebx
cmp dword [ebp - 0x3c], ebx
je 0x443f3f
lea eax, [ebp - 0x2c]
push eax
mov edx, str.SYSTEMCurrentControlSetServicesTcpipParametersInterfaces_
call fcn.004074f0
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x88]
push eax
lea esi, [ebp - 0x2c]
call fcn.00407ce0
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x443f0a
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x90]
push ecx
push 0x20019
push ebx
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call edi
test eax, eax
jne 0x443f37
push dword [ebp - 0x90]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x90], ebx
jmp 0x443f3f
lea eax, [ebp - 0x50]
call fcn.00420680
lea esi, [ebp - 0x2c]
mov byte [ebp - 4], bl
call fcn.00401650
push dword [ebp - 0x98]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0x3c], ebx
je 0x443f70
mov esi, dword [ebp - 0xa4]
lea eax, [ebp - 0x88]
push eax
add esi, 0x20
call fcn.0044423d
or dword [ebp - 4], 0xffffffff
lea esi, [ebp - 0x50]
call fcn.00401650
lea esi, [ebp - 0x6c]
call fcn.00401650
lea esi, [ebp - 0x88]
call fcn.00401650
mov esi, dword [ebp - 0xa8]
push esi
call fcn.004b6e9a
inc dword [ebp - 0x9c]
mov eax, dword [ebp - 0x9c]
cmp eax, dword [ebp - 0xa0]
pop ecx
jb 0x443cb5
push dword [ebp - 0x8c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov al, 1
jmp 0x443fd2
push dword [ebp - 0x8c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor al, al
call fcn.004bf27f
ret 4