Function at 0x406d64
Capabilities:
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe8
push ebx
push esi
push edi
mov ebx, dword [ebp + 0xc]
xor edi, edi
push 0x12c
call fcn.004dd2c0
pop ecx
mov esi, eax
push 0x1388
call fcn.004dd2c0
pop ecx
mov dword [ebp - 4], eax
mov dword [ebp - 8], 0x12c
mov dword [ebp - 0xc], 0x1388
call fcn.00401424
push 1
push 0x5e48f7
push ebx
call fcn.004042d0
add esp, 0xc
mov eax, dword [ebp + 0x10]
push eax
call fcn.004d2f1c
pop ecx
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
call fcn.004042d0
add esp, 0xc
push 2
push 0x5e48f9
push ebx
call fcn.004042d0
add esp, 0xc
mov dword [ebp - 8], 0x12c
mov dword [ebp - 0xc], 0x1388
lea ecx, [ebp - 0xc]
lea edx, [ebp - 0x10]
push ecx
lea ecx, [ebp - 8]
mov eax, dword [ebp - 4]
push eax
push edx
push 0
push ecx
push esi
push edi
mov eax, dword [ebp + 8]
push eax
call sub.ADVAPI32.dll_RegEnumValueA
test eax, eax
jne 0x406dd0
inc edi
mov edx, dword [ebp - 8]
test edx, edx
jne 0x406c9d
push 1
push 0x5e48fc
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406cab
mov ecx, dword [ebp - 8]
push ecx
push esi
push ebx
call fcn.004042d0
add esp, 0xc
push 1
push 0x5e48fe
push ebx
call fcn.004042d0
add esp, 0xc
mov eax, dword [ebp - 0x10]
cmp eax, 8
ja case.default.0x406cc7
jmp dword [eax*4 + 0x406cce]
push 1
push 0x5e4900
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406daa
push 1
push 0x5e4902
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406daa
push 1
push 0x5e4904
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406daa
push 1
push 0x5e4906
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406daa
push 1
push 0x5e4908
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406daa
push 1
push 0x5e490a
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406daa
push 1
push 0x5e490c
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406daa
push 1
push 0x5e490e
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406daa
push 1
push 0x5e4910
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406daa
push 1
push 0x5e4912
push ebx
call fcn.004042d0
add esp, 0xc
mov edx, dword [ebp - 0xc]
push edx
mov ecx, dword [ebp - 4]
push ecx
push ebx
call fcn.004042d0
add esp, 0xc
push 1
push 0x5e4914
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406c50
xor edi, edi
mov dword [ebp - 8], 0x12c
push 0
push 0
push 0
lea eax, [ebp - 8]
push 0
push eax
push esi
push edi
mov edx, dword [ebp + 8]
push edx
call sub.ADVAPI32.dll_RegEnumKeyExA
test eax, eax
jne 0x406ea8
inc edi
mov ecx, dword [ebp + 0x14]
test ecx, ecx
jne 0x406e30
push 7
push 0x5e4916
push ebx
call fcn.004042d0
add esp, 0xc
mov eax, dword [ebp - 8]
push eax
push esi
push ebx
call fcn.004042d0
add esp, 0xc
push 1
push 0x5e491e
push ebx
call fcn.004042d0
add esp, 0xc
jmp 0x406dd2
lea edx, [ebp - 0x14]
push edx
push 0xf013f
push 0
push esi
mov ecx, dword [ebp + 8]
push ecx
call sub.ADVAPI32.dll_RegOpenKeyExA
test eax, eax
jne 0x406dd2
mov eax, dword [ebp + 0x10]
push eax
call fcn.004d2f1c
pop ecx
mov edx, dword [ebp - 8]
add eax, edx
add eax, 2
push eax
call fcn.004dd2c0
pop ecx
mov dword [ebp - 0x18], eax
push esi
mov ecx, dword [ebp + 0x10]
push ecx
push 0x5e4920
mov eax, dword [ebp - 0x18]
push eax
call fcn.004d75f8
add esp, 0x10
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp - 0x18]
push ecx
push ebx
mov eax, dword [ebp - 0x14]
push eax
call fcn.00406bdc
add esp, 0x10
mov edx, dword [ebp - 0x14]
push edx
call sub.ADVAPI32.dll_RegCloseKey
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.004dd258
pop ecx
jmp 0x406dd2
call fcn.00401428
push esi
call fcn.004dd258
pop ecx
mov eax, dword [ebp - 4]
push eax
call fcn.004dd258
pop ecx
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret