Function at 0x401000
Capabilities:
Query or enumerate registry value

Disassembly:
push 0xc94
mov eax, 0x474d9d
call fcn.0044aa66
mov ebx, ecx
mov dword [ebp - 0xc94], ebx
xor esi, esi
mov dword [ebp - 4], esi
push 0x4a5e18
mov dword [ebp - 0xca0], ebx
mov dword [ebp - 0xc9c], esi
call fcn.0040a27f
push 0x72
pop ecx
push 0x69
pop eax
push 0x75
mov dword [ebp - 4], esi
mov word [ebp - 0x68], ax
mov word [ebp - 0x7c], ax
pop eax
push 0x41
mov word [ebp - 0x52], ax
pop eax
push 0x5c
mov word [ebp - 0x86], ax
pop eax
push 0x53
mov word [ebp - 0x80], ax
pop eax
push 0x73
pop edi
push 0x66
mov word [ebp - 0x90], ax
pop eax
push 0x63
mov word [ebp - 0x70], ax
pop eax
push 0x54
mov word [ebp - 0x7a], ax
mov word [ebp - 0x50], cx
mov word [ebp - 0x42], cx
pop ecx
push 0x20
pop eax
push 0x57
pop edx
push 0x6e
mov word [ebp - 0x5c], ax
pop eax
push 0x69
mov word [ebp - 0x4a], ax
pop eax
push 0x65
mov word [ebp - 0x3e], ax
pop eax
push 0x4e
mov word [ebp - 0x4c], ax
pop eax
push 0x45
mov word [ebp - 0x5a], ax
pop eax
push 0x5c
mov word [ebp - 0x82], ax
pop eax
push 0x56
mov word [ebp - 0x6c], ax
pop eax
push 0x4f
mov word [ebp - 0x46], ax
pop eax
push 0x6f
mov word [ebp - 0x8a], cx
mov word [ebp - 0x58], cx
pop ecx
push 0x43
mov word [ebp - 0x8e], ax
pop eax
mov dword [ebp - 0xc9c], 1
mov word [ebp - 0x74], di
mov word [ebp - 0x6a], dx
mov word [ebp - 0x76], cx
mov word [ebp - 0x3c], cx
mov word [ebp - 0x5e], di
mov word [ebp - 0x40], di
mov word [ebp - 0x54], ax
push 0x64
pop edi
push 0x46
pop eax
push 0x72
mov word [ebp - 0x8c], ax
pop eax
push 0x6e
mov word [ebp - 0x4e], ax
mov word [ebp - 0x88], dx
pop edx
push 0x77
pop eax
push 0x72
mov word [ebp - 0x60], ax
pop eax
push 0x74
mov word [ebp - 0x78], ax
xor eax, eax
mov word [ebp - 0x38], ax
mov word [ebp - 0x72], cx
pop ecx
push 0x52
pop eax
push 0x4d
mov word [ebp - 0x84], ax
pop eax
push 0x6f
mov word [ebp - 0x7e], ax
pop eax
push 0x65
mov word [ebp - 0x62], ax
mov word [ebp - 0x22], ax
mov word [ebp - 0x66], dx
mov word [ebp - 0x3a], dx
pop edx
push 0x5c
mov word [ebp - 0x44], dx
pop edx
push 0x63
pop eax
push 0x50
mov word [ebp - 0x1c], ax
pop eax
push 0x61
mov word [ebp - 0x26], ax
pop eax
push 0x75
mov word [ebp - 0x2a], ax
pop eax
push 0x49
mov word [ebp - 0x1e], ax
pop eax
push 0x67
mov word [ebp - 0x18], ax
pop eax
mov word [ebp - 0x30], ax
xor eax, eax
push 0x69
mov word [ebp - 0x14], ax
pop eax
push 0x44
mov word [ebp - 0x2e], ax
mov word [ebp - 0x32], ax
pop eax
push 0x6c
mov word [ebp - 0x34], ax
pop eax
push 0x72
mov word [ebp - 0x28], ax
pop eax
mov word [ebp - 0x64], di
mov word [ebp - 0x20], di
mov word [ebp - 0x16], di
mov edi, 0x800
mov word [ebp - 0x48], cx
mov word [ebp - 0x6e], cx
mov word [ebp - 0x56], dx
mov word [ebp - 0x1a], cx
mov word [ebp - 0x2c], cx
mov word [ebp - 0x24], ax
push edi
lea eax, [ebp - 0xc90]
push esi
push eax
call fcn.0044c550
add esp, 0xc
mov dword [ebp - 0xc98], edi
lea eax, [ebp - 0xc94]
push eax
push 0x101
push esi
lea eax, [ebp - 0x90]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x4012bc
lea eax, [ebp - 0xc98]
push eax
lea eax, [ebp - 0xc90]
push eax
push esi
push esi
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0xc94]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x4012b0
push 0x400
lea eax, [ebp - 0x490]
push esi
push eax
call fcn.0044c550
push dword [ebp - 0xc98]
lea edx, [ebp - 0x490]
lea ecx, [ebp - 0xc90]
call fcn.00474285
lea ecx, [ebp - 0x490]
add esp, 0x10
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x401273
sub ecx, edx
lea edi, [ecx + 1]
cmp edi, 0x3fffffff
jg 0x4012a1
lea eax, [edi + edi]
call fcn.0044ab10
mov ecx, esp
lea edx, [ebp - 0x490]
push 3
push edi
call fcn.0040a799
mov esi, eax
push esi
push 0x4a6ee0
push ebx
call fcn.0040a6b1
add esp, 0xc
push dword [ebp - 0xc94]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, ebx
lea esp, [ebp - 0xcb0]
call fcn.0044aa10
ret