Function at 0x471b76
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x569fd3
mov eax, dword fs:[0]
push eax
mov eax, 0xc308
call fcn.0055c750
mov eax, dword [0x601328]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 0x3c], 8
mov esi, ecx
mov dword [ebp - 0xc260], esi
jb 0x471bbe
mov ecx, dword [eax + 0x28]
jmp 0x471bc1
lea ecx, [eax + 0x28]
lea edx, [ebp - 0xc24c]
push edx
push 0x20019
xor ebx, ebx
push ebx
push ecx
push dword [eax + 0x20]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
cmp eax, ebx
jne 0x471e4b
xor eax, eax
push 0x206
mov word [ebp - 0x21c], ax
lea eax, [ebp - 0x21a]
push ebx
push eax
call fcn.0054ff70
add esp, 0xc
mov eax, esi
mov dword [ebp - 0xc250], 0x104
mov dword [ebp - 0xc25c], ebx
call fcn.0045ae90
lea eax, [ebp - 0xc27c]
push eax
lea eax, [ebp - 0xc268]
push eax
lea eax, [ebp - 0xc264]
push eax
lea eax, [ebp - 0xc274]
push eax
lea eax, [ebp - 0xc244]
push eax
lea eax, [ebp - 0xc270]
push eax
lea eax, [ebp - 0xc26c]
push eax
lea eax, [ebp - 0xc25c]
push eax
push ebx
lea eax, [ebp - 0xc250]
push eax
lea eax, [ebp - 0x21c]
push eax
push dword [ebp - 0xc24c]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
cmp eax, ebx
jne 0x471e4b
cmp dword [ebp - 0xc244], ebx
je 0x471e4b
mov dword [ebp - 0xc23c], ebx
jbe 0x471e4b
jmp 0x471c8e
xor ebx, ebx
mov eax, 0x3fff
xor ecx, ecx
lea esi, [ebp - 0xc240]
mov dword [ebp - 0xc258], eax
mov word [ebp - 0xc21c], cx
mov dword [ebp - 0xc254], eax
call fcn.00403ee0
lea eax, [ebp - 0xc254]
push eax
lea eax, [ebp - 0x421c]
push eax
lea eax, [ebp - 0xc248]
push eax
push ebx
lea eax, [ebp - 0xc258]
push eax
lea eax, [ebp - 0xc21c]
push eax
push dword [ebp - 0xc23c]
mov dword [ebp - 4], ebx
push dword [ebp - 0xc24c]
call dword [sym.imp.ADVAPI32.dll_RegEnumValueW]
cmp dword [ebp - 0xc248], 4
jne 0x471d0b
push dword [ebp - 0x421c]
mov edi, esi
push 0x5a7a74
call fcn.00405c00
pop ecx
pop ecx
jmp 0x471d57
cmp dword [ebp - 0xc248], 1
jne 0x471d57
lea eax, [ebp - 0x421c]
lea ecx, [ebp - 0xc238]
call fcn.004066c0
mov byte [ebp - 4], 1
cmp dword [ebp - 0xc220], 8
mov edx, dword [ebp - 0xc234]
jae 0x471d3e
lea edx, [ebp - 0xc234]
lea edi, [ebp - 0xc240]
call fcn.004114e0
lea ecx, [ebp - 0xc238]
mov byte [ebp - 4], bl
call fcn.00409c40
lea eax, [ebp - 0xc21c]
lea ecx, [ebp - 0xc238]
call fcn.004066c0
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0xc240]
lea ecx, [ebp - 0xc2dc]
call fcn.004066c0
mov edi, eax
lea eax, [ebp - 0xc238]
push eax
lea esi, [ebp - 0xc2b4]
mov byte [ebp - 4], 3
call fcn.00406fb0
push edi
lea esi, [ebp - 0xc298]
mov byte [ebp - 4], 4
call fcn.00406fb0
lea eax, [ebp - 0xc2b4]
push eax
lea esi, [ebp - 0xc314]
mov byte [ebp - 4], 5
call fcn.00406fb0
lea eax, [ebp - 0xc298]
push eax
lea esi, [ebp - 0xc2f8]
mov byte [ebp - 4], 6
call fcn.00406fb0
lea eax, [ebp - 0xc314]
push eax
push dword [ebp - 0xc260]
lea ebx, [ebp - 0xc2c0]
mov byte [ebp - 4], 7
call fcn.0046d470
lea esi, [ebp - 0xc314]
call fcn.0045bd20
lea ecx, [ebp - 0xc298]
call fcn.00409c40
lea ecx, [ebp - 0xc2b4]
call fcn.00409c40
lea ecx, [ebp - 0xc2dc]
call fcn.00409c40
lea ecx, [ebp - 0xc238]
call fcn.00409c40
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xc240]
call fcn.00409cb0
inc dword [ebp - 0xc23c]
mov eax, dword [ebp - 0xc23c]
cmp eax, dword [ebp - 0xc244]
jb 0x471c8c
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0054677c
leave
ret 4