Function at 0x1006a40
Capabilities:
Query or enumerate registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
xor ebx, ebx
cmp dword [ebp + 8], ebx
push esi
push edi
mov dword [ebp - 0x24], ebx
mov dword [ebp - 8], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x14], ebx
je 0x1006d5b
cmp dword [ebp + 0xc], ebx
je 0x1006d5b
cmp dword [ebp + 0x10], ebx
je 0x1006d5b
cmp dword [ebp + 0x14], ebx
je 0x1006d5b
mov eax, dword [ebp + 0x1c]
cmp eax, ebx
je 0x1006d5b
cmp dword [ebp + 0x18], ebx
je 0x1006a9f
cmp dword [ebp + 0x18], 1
jne 0x1006aa8
cmp dword [eax], 1
je 0x1006d57
push ebx
push ebx
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
push ebx
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 8]
push eax
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp + 8]
call esi
mov edi, eax
cmp edi, ebx
jne 0x1006d44
push ebx
push ebx
push ebx
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp + 0x10]
call esi
mov esi, eax
cmp esi, ebx
je 0x1006af7
push esi
call fcn.01002093
mov eax, esi
jmp 0x1006d65
cmp dword [ebp + 0x18], ebx
je 0x1006b02
cmp dword [ebp + 0x18], 1
jne 0x1006b1a
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x18]
jne 0x1006d4e
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0xc], eax
jne 0x1006d4e
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
inc dword [ebp - 0xc]
cmp eax, dword [ebp - 0xc]
jbe 0x1006b2d
mov dword [ebp - 0xc], eax
jmp 0x1006b33
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x10], eax
call fcn.0100b5ae
cmp eax, ebx
mov dword [ebp - 0x1c], eax
je 0x1006b6f
call fcn.0100b5ae
cmp eax, ebx
mov dword [ebp - 0x20], eax
je 0x1006b66
mov eax, dword [ebp - 0xc]
add eax, eax
push eax
call fcn.010099e1
cmp eax, ebx
mov dword [ebp - 0x14], eax
jne 0x1006b7d
lea eax, [ebp - 0x20]
push eax
call fcn.0100b623
lea eax, [ebp - 0x1c]
push eax
call fcn.0100b623
push 0xe
call fcn.01002093
push 0xe
jmp 0x1006d64
mov esi, dword [sym.imp.ADVAPI32.dll_RegEnumValueW]
xor edi, edi
cmp dword [ebp - 8], ebx
mov dword [ebp - 4], ebx
jbe 0x1006bde
cmp edi, ebx
jne 0x1006bde
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
add eax, eax
cmp eax, ebx
je 0x1006ba6
mov byte [ecx], bl
inc ecx
dec eax
jne 0x1006ba0
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x24]
push eax
push dword [ebp - 0x14]
push dword [ebp - 4]
push dword [ebp + 8]
call esi
mov edi, eax
cmp edi, ebx
jne 0x1006bd3
push ebx
push dword [ebp - 0x14]
push dword [ebp - 0x1c]
call fcn.0100ba41
cmp eax, 0xffffffff
jne 0x1006bd3
push 0xe
pop edi
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 8]
jb 0x1006b8d
cmp dword [ebp - 0x18], ebx
mov dword [ebp - 4], ebx
jbe 0x1006c37
cmp edi, ebx
jne 0x1006c37
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
add eax, eax
cmp eax, ebx
je 0x1006bff
mov byte [ecx], bl
inc ecx
dec eax
jne 0x1006bf9
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x24]
push eax
push dword [ebp - 0x14]
push dword [ebp - 4]
push dword [ebp + 0x10]
call esi
mov edi, eax
cmp edi, ebx
jne 0x1006c2c
push ebx
push dword [ebp - 0x14]
push dword [ebp - 0x20]
call fcn.0100ba41
cmp eax, 0xffffffff
jne 0x1006c2c
push 0xe
pop edi
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x18]
jb 0x1006be6
lea eax, [ebp - 0x14]
push eax
call fcn.01009f4b
cmp dword [ebp - 8], ebx
mov dword [ebp - 4], ebx
jbe 0x1006cb4
cmp edi, ebx
jne 0x1006cb4
push dword [ebp - 4]
push dword [ebp - 0x1c]
call fcn.0100bc80
push ebx
push 1
mov esi, eax
push esi
push dword [ebp - 0x20]
call fcn.0100bf7b
cmp eax, 0xffffffff
mov dword [ebp - 0x28], eax
je 0x1006ca9
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push esi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.01006781
mov edi, eax
cmp edi, ebx
jne 0x1006cac
push dword [ebp - 4]
push dword [ebp - 0x1c]
call fcn.0100bb76
push dword [ebp - 0x28]
push dword [ebp - 0x20]
call fcn.0100bb76
dec dword [ebp - 8]
dec dword [ebp - 0x18]
jmp 0x1006cac
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 8]
jb 0x1006c48
xor esi, esi
cmp dword [ebp - 8], ebx
jbe 0x1006cf3
cmp edi, ebx
jne 0x1006cf3
push esi
push dword [ebp - 0x1c]
call fcn.0100bc80
cmp dword [ebp + 0x18], 3
je 0x1006cd4
cmp dword [ebp + 0x18], 4
jne 0x1006ce4
push 1
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.010069ab
mov edi, eax
mov eax, dword [ebp + 0x1c]
inc esi
cmp esi, dword [ebp - 8]
mov dword [eax], 1
jb 0x1006cbb
xor esi, esi
cmp dword [ebp - 0x18], ebx
jbe 0x1006d32
cmp edi, ebx
jne 0x1006d32
push esi
push dword [ebp - 0x20]
call fcn.0100bc80
cmp dword [ebp + 0x18], 3
je 0x1006d13
cmp dword [ebp + 0x18], 4
jne 0x1006d23
push 2
push eax
push dword [ebp + 0x14]
push dword [ebp + 0x10]
call fcn.010069ab
mov edi, eax
mov eax, dword [ebp + 0x1c]
inc esi
cmp esi, dword [ebp - 0x18]
mov dword [eax], 1
jb 0x1006cfa
lea eax, [ebp - 0x1c]
push eax
call fcn.0100b623
lea eax, [ebp - 0x20]
push eax
call fcn.0100b623
push edi
call fcn.01002093
mov eax, edi
jmp 0x1006d65
mov eax, dword [ebp + 0x1c]
mov dword [eax], 1
xor eax, eax
jmp 0x1006d65
push 0x57
call fcn.01002093
push 0x57
pop eax
pop edi
pop esi
pop ebx
leave
ret 0x18