Function at 0x4246a3
Capabilities:
Query or enumerate registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
mov ebx, ecx
xor ecx, ecx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 4], ecx
mov dword [ebp - 8], ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], ecx
push esi
push edi
mov edi, edx
cmp ebx, 1
je 0x4246d8
cmp ebx, 8
je 0x4246d8
mov esi, 0x80070057
push esi
jmp 0x4249c3
mov eax, dword [0x48dcb8]
test eax, eax
je 0x4246e6
cmp eax, 0xffffffff
jne 0x4246e8
mov eax, ecx
push 0x407838
push dword [0x490330]
push eax
call fcn.0041ad72
pop ecx
pop ecx
lea eax, [ebp - 4]
mov edx, 0x406234
push eax
push 0x4078c4
call fcn.00433933
mov esi, eax
test esi, esi
js 0x4246d2
mov eax, dword [0x48dcb8]
test eax, eax
je 0x424722
cmp eax, 0xffffffff
jne 0x424724
xor eax, eax
push dword [ebp - 4]
push 0x4078e8
push dword [0x490330]
push eax
call fcn.0041ad72
add esp, 0x10
cmp dword [ebp - 4], ebx
jne 0x4249bb
dec edi
sub edi, 1
je 0x4248a5
sub edi, 1
je 0x42475d
mov esi, 0x80070078
jmp 0x4246d2
mov eax, dword [0x48dcb8]
test eax, eax
je 0x42476b
cmp eax, 0xffffffff
jne 0x42476d
xor eax, eax
push 0x407940
push dword [0x490330]
push eax
call fcn.0041ad72
mov eax, dword [0x48dcb8]
add esp, 0xc
test eax, eax
je 0x42478f
cmp eax, 0xffffffff
jne 0x424791
xor eax, eax
push 0x4079c0
push dword [0x490330]
push eax
call fcn.0041ad72
pop ecx
pop ecx
lea eax, [ebp - 8]
mov ebx, 0x406234
push eax
push 0x407a38
mov edx, ebx
call fcn.00433933
mov esi, eax
test esi, esi
js 0x4246d2
mov esi, dword [ebp - 8]
mov edi, 0x407800
mov ecx, edi
test esi, esi
jne 0x4247d6
mov ecx, 0x407808
mov eax, dword [0x48dcb8]
test eax, eax
je 0x4247e4
cmp eax, 0xffffffff
jne 0x4247e6
xor eax, eax
push ecx
push 0x407a50
push dword [0x490330]
push eax
call fcn.0041ad72
add esp, 0x10
test esi, esi
je 0x4249bb
mov eax, dword [0x48dcb8]
test eax, eax
je 0x424811
cmp eax, 0xffffffff
jne 0x424813
xor eax, eax
push 0x407a98
push dword [0x490330]
push eax
call fcn.0041ad72
pop ecx
pop ecx
lea eax, [ebp - 0xc]
mov edx, ebx
push eax
push 0x407b18
call fcn.00433933
mov esi, eax
test esi, esi
js 0x4246d2
mov eax, dword [0x48dcb8]
test eax, eax
je 0x42484e
cmp eax, 0xffffffff
jne 0x424850
xor eax, eax
mov ebx, dword [ebp - 0xc]
push ebx
push 0x407b38
push dword [0x490330]
push eax
call fcn.0041ad72
add esp, 0x10
mov ecx, edi
test ebx, ebx
jns 0x424873
mov ecx, 0x407808
mov eax, dword [0x48dcb8]
test eax, eax
je 0x424881
cmp eax, 0xffffffff
jne 0x424883
xor eax, eax
push ecx
push 0x407b8c
push dword [0x490330]
push eax
call fcn.0041ad72
add esp, 0x10
test ebx, ebx
jns 0x424997
jmp 0x4249bb
mov eax, dword [0x48dcb8]
cmp ebx, 1
jne 0x42499c
test eax, eax
je 0x4248bc
cmp eax, 0xffffffff
jne 0x4248be
xor eax, eax
push 0x407bc8
push dword [0x490330]
push eax
call fcn.0041ad72
and dword [ebp - 0xc], 0
lea eax, [ebp - 0xc]
add esp, 0xc
mov edx, 0x406234
mov ecx, reloc.OLEAUT32.dll_SysReAllocString
push eax
push 1
call fcn.004357f8
mov ebx, dword [ebp - 0xc]
mov esi, eax
mov dword [ebp - 4], esi
test esi, esi
jns 0x4248ff
push esi
call fcn.004314fa
jmp 0x424942
lea eax, [ebp - 8]
push eax
push 0
lea eax, [ebp - 0x18]
push eax
push 0
push 0x407c44
push ebx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
xor edi, edi
mov ecx, eax
sub ecx, edi
je 0x42493c
dec ecx
sub ecx, 1
je 0x424938
lea ecx, [ebp - 4]
push ecx
push eax
call fcn.004317c7
mov esi, dword [ebp - 4]
test eax, eax
jne 0x42493f
jmp 0x4248f7
xor edi, edi
jmp 0x42493f
xor edi, edi
inc edi
mov dword [ebp - 0x10], edi
push esi
call fcn.00431467
test ebx, ebx
je 0x424953
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test esi, esi
js 0x4246d2
mov ebx, dword [ebp - 0x10]
mov edi, 0x407800
mov ecx, edi
test ebx, ebx
jne 0x42496e
mov ecx, 0x407808
mov eax, dword [0x48dcb8]
test eax, eax
je 0x42497c
cmp eax, 0xffffffff
jne 0x42497e
xor eax, eax
push ecx
push 0x407c68
push dword [0x490330]
push eax
call fcn.0041ad72
add esp, 0x10
test ebx, ebx
je 0x4249bb
xor ebx, ebx
inc ebx
jmp 0x4249d0
test eax, eax
je 0x4249a5
cmp eax, 0xffffffff
jne 0x4249a7
xor eax, eax
push 0x407ca0
push dword [0x490330]
push eax
call fcn.0041ad72
add esp, 0xc
mov eax, 0x80070032
mov esi, eax
push eax
call fcn.004314fa
mov ebx, dword [ebp - 0x14]
mov edi, 0x407808
mov eax, dword [0x48dcb8]
test eax, eax
je 0x4249de
cmp eax, 0xffffffff
jne 0x4249e0
xor eax, eax
push edi
push 0x407d2c
push dword [0x490330]
push eax
call fcn.0041ad72
add esp, 0x10
push esi
call fcn.00431467
pop edi
pop esi
mov eax, ebx
pop ebx
leave
ret