Function at 0x46bfbb
Capabilities:
Query or enumerate registry key

Disassembly:
push 0x294
mov eax, 0x47fc4c
call fcn.00408d9b
mov dword [ebp - 0x2a0], ecx
mov eax, dword [ebp + 8]
push 0x28
lea ecx, [ebp - 0x60]
push ecx
push eax
call dword [sym.imp.ole32.dll_StringFromGUID2]
test eax, eax
jg 0x46bffc
push 0x46c700
push 1
call fcn.004015a0
pop ecx
pop ecx
mov eax, 0x80004005
jmp 0x46c2b2
xor ebx, ebx
mov dword [ebp - 0x290], ebx
mov dword [ebp - 0x28c], ebx
mov dword [ebp - 0x288], ebx
xor ecx, ecx
push 2
mov esi, 0xf3
pop edx
mov eax, esi
mul edx
seto cl
mov dword [ebp - 4], ebx
neg ecx
or ecx, eax
push ecx
call fcn.00402dad
mov dword [ebp - 0x280], eax
xor ecx, ecx
push 2
pop edx
mov eax, esi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00402dad
mov edi, dword [ebp - 0x280]
pop ecx
pop ecx
mov dword [ebp - 0x27c], eax
cmp edi, ebx
je 0x46c273
cmp eax, ebx
je 0x46c273
xor eax, eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x60]
push eax
push 0x410868
push 0x410ee4
push esi
push dword [ebp - 0x280]
call fcn.004109a2
mov edi, eax
add esp, 0x14
cmp edi, ebx
jge 0x46c0c6
push edi
push 0x46c670
push 1
call fcn.004015a0
push dword [ebp - 0x280]
call fcn.00402d9c
push dword [ebp - 0x27c]
call fcn.00402d9c
add esp, 0x14
lea ecx, [ebp - 0x290]
call fcn.004030f0
mov eax, edi
jmp 0x46c2b2
push ebx
push ebx
push 0x3001f
push ebx
push ebx
push dword [ebp - 0x280]
lea ecx, [ebp - 0x290]
push 0x80000002
call fcn.0040538f
mov edi, eax
cmp edi, ebx
jge 0x46c0f3
push edi
push 0x46c5e8
jmp 0x46c094
push 0x104
lea eax, [ebp - 0x268]
push eax
mov dword [ebp - 0x284], ebx
push ebx
jmp 0x46c238
lea eax, [ebp - 0x278]
push eax
lea eax, [ebp - 0x268]
push eax
call dword [sym.imp.ole32.dll_CLSIDFromString]
cmp eax, 0x800401f3
je 0x46c226
push 0x3001f
lea eax, [ebp - 0x268]
push eax
push dword [ebp - 0x290]
lea ecx, [ebp - 0x29c]
mov dword [ebp - 0x29c], ebx
mov dword [ebp - 0x298], ebx
mov dword [ebp - 0x294], ebx
call fcn.0040314f
test eax, eax
jne 0x46c21b
push dword [ebp - 0x29c]
mov ecx, dword [ebp - 0x2a0]
call fcn.00418e0c
mov edi, dword [ebp - 0x27c]
test eax, eax
jne 0x46c1c7
stosd dword es:[edi], eax
lea eax, [ebp - 0x268]
push eax
push 0x46c508
push 4
call fcn.004015a0
lea eax, [ebp - 0x268]
push eax
push dword [ebp - 0x280]
push 0x410ee4
push esi
push dword [ebp - 0x27c]
call fcn.004109a2
add esp, 0x20
cmp eax, ebx
jge 0x46c20b
push eax
push 0x46c460
push 1
call fcn.004015a0
add esp, 0xc
jmp 0x46c21b
inc dword [ebp - 0x284]
xor eax, eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x268]
push eax
push 0x46c360
push 4
call fcn.004015a0
push 0x410e14
lea eax, [ebp - 0x268]
push eax
push dword [ebp - 0x280]
push 0x46c34c
push esi
push dword [ebp - 0x27c]
call fcn.004109a2
add esp, 0x24
jmp 0x46c1b1
push dword [ebp - 0x27c]
push 0x80000002
call fcn.0047c273
lea ecx, [ebp - 0x29c]
call fcn.004030f0
push 0x104
lea eax, [ebp - 0x268]
push eax
push dword [ebp - 0x284]
push dword [ebp - 0x290]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
test eax, eax
je 0x46c10b
push dword [ebp - 0x280]
call fcn.00402d9c
push dword [ebp - 0x27c]
call fcn.00402d9c
pop ecx
pop ecx
lea ecx, [ebp - 0x290]
call fcn.004030f0
xor eax, eax
jmp 0x46c2b2
push esi
push 0x46c2c0
push 1
call fcn.004015a0
add esp, 0xc
cmp edi, ebx
je 0x46c28e
push edi
call fcn.00402d9c
pop ecx
cmp dword [ebp - 0x27c], ebx
je 0x46c2a2
push dword [ebp - 0x27c]
call fcn.00402d9c
pop ecx
lea ecx, [ebp - 0x290]
call fcn.004030f0
mov eax, 0x8007000e
call fcn.00408e35
ret 4