Function at 0x422150
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a7650
mov eax, dword fs:[0]
push eax
sub esp, 0x2e8
mov eax, dword [0x4ff4f4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [ebp + 8]
mov dword [edi + 0x10], eax
call fcn.00422950
call dword [sym.imp.KERNEL32.dll_GetTickCount]
call fcn.004380d0
push 1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
mov ecx, eax
call edx
movzx eax, al
sub eax, 1
jne 0x4222f1
push 0x5c
push 0x4cb6d0
lea ecx, [ebp - 0x24c]
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x238], 0xf
mov byte [ebp - 0x24c], al
call fcn.0040a230
push 3
push 0x4cb730
lea ecx, [ebp - 0x234]
mov dword [ebp - 4], 0
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 0xf
mov byte [ebp - 0x234], 0
call fcn.0040a230
push 0x93
lea eax, [ebp - 0x24c]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x2f4]
call fcn.00406000
mov esi, eax
push 0x4cb734
push esi
mov byte [ebp - 4], 2
call fcn.00405110
add esp, 8
call fcn.004380d0
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
lea ecx, [ebp - 0x2f4]
call fcn.00406fe0
mov edx, dword [ebp - 0x220]
mov byte [ebp - 4], 0
cmp edx, 0x10
jb 0x422295
mov ecx, dword [ebp - 0x234]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x42228b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x422695
push edx
push ecx
call fcn.0043ac72
add esp, 8
mov edx, dword [ebp - 0x238]
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 0xf
mov byte [ebp - 0x234], 0
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x4222f1
mov ecx, dword [ebp - 0x24c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4222e7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42269a
push edx
push ecx
call fcn.0043ac72
add esp, 8
call fcn.00416190
mov ecx, eax
call fcn.00407f60
test eax, eax
je 0x42231d
call fcn.00416190
push 3
mov ecx, eax
call fcn.004080d0
mov dword [ebp - 0x254], 1
test eax, eax
je 0x422327
mov dword [ebp - 0x254], 0
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, 0x4ff3d8
cmp dword [esi + 0x14], 8
mov eax, esi
jb 0x42233c
mov eax, dword [esi]
push str.Pop.dll
push eax
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x42246a
push 0x201
push 0x4cbbd4
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 0
call fcn.004084a0
test eax, eax
je 0x4223b2
mov eax, dword [ebp - 0x228]
test eax, eax
je 0x4223a3
push eax
call ebx
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0
jmp 0x42246a
push 0x20a
lea eax, [ebp - 0x21c]
push 0
push eax
call fcn.00466d80
mov ebx, dword [ebp - 0x228]
lea eax, [ebp - 0x250]
add esp, 0xc
mov dword [ebp - 0x250], 0x208
push eax
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x25c]
push eax
push 0
push str.Type
push ebx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x422421
mov eax, dword [ebp - 0x25c]
cmp eax, 1
je 0x42240f
cmp eax, 2
jne 0x422421
cmp dword [ebp - 0x250], 0
jne 0x422421
xor eax, eax
mov word [ebp - 0x21c], ax
lea eax, [ebp - 0x21c]
push eax
call fcn.00476ca1
add esp, 4
mov dword [ebp - 0x258], eax
test ebx, ebx
je 0x422455
push ebx
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call ebx
mov eax, dword [ebp - 0x258]
mov dword [ebp - 0x228], 0
jmp 0x42245b
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x224], 0
cmp eax, 1
je 0x422496
push esi
mov ecx, edi
call fcn.00421e40
test eax, eax
jne 0x422496
push esi
mov ecx, edi
call fcn.00421b30
test eax, eax
jne 0x422496
push esi
mov ecx, edi
call fcn.00421640
test eax, eax
jne 0x422496
push esi
mov ecx, edi
call fcn.004226b0
add esi, 0x30
cmp esi, 0x4ff468
jl 0x422332
cmp dword [ebp - 0x254], 0
je 0x42260d
call fcn.004380d0
push 1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
mov ecx, eax
call edx
movzx eax, al
sub eax, 1
jne 0x422672
push 0x5c
push 0x4cb770
lea ecx, [ebp - 0x24c]
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x238], 0xf
mov byte [ebp - 0x24c], al
call fcn.0040a230
push 3
push 0x4cb7d0
lea ecx, [ebp - 0x234]
mov dword [ebp - 4], 3
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 0xf
mov byte [ebp - 0x234], 0
call fcn.0040a230
push 0xaf
lea eax, [ebp - 0x24c]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x2f4]
call fcn.00406000
mov esi, eax
push 0x4cb7d8
push esi
mov byte [ebp - 4], 5
call fcn.00405110
add esp, 8
call fcn.004380d0
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
lea ecx, [ebp - 0x2f4]
call fcn.00406fe0
mov edx, dword [ebp - 0x220]
cmp edx, 0x10
jb 0x4225b2
mov ecx, dword [ebp - 0x234]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4225a8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42269f
push edx
push ecx
call fcn.0043ac72
add esp, 8
mov edx, dword [ebp - 0x238]
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 0xf
mov byte [ebp - 0x234], 0
cmp edx, 0x10
jb 0x422672
mov ecx, dword [ebp - 0x24c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x422601
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4226a4
push edx
push ecx
call fcn.0043ac72
add esp, 8
jmp 0x422672
mov eax, dword [0x5041c4]
test al, 1
jne 0x422643
or eax, 1
mov dword [0x5041c4], eax
mov ecx, 0x504194
mov dword [ebp - 4], 6
call fcn.0040c1e0
push 0x4ae700
call fcn.0043af13
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0
push 0
sub esp, 0x28
mov ecx, 0x504194
mov eax, esp
push 1
mov dword [eax], vtable.._AV___Func_impl_no_alloc_V___Binder_U_Unforced_std__P8CPluginMgr__AEXXZPAV3__std__XPAX_std__.0
mov dword [eax + 8], fcn.00424ec0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], edi
mov dword [eax + 0x24], eax
call fcn.0040c6b0
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043af28
mov esp, ebp
pop ebp
ret 4
call fcn.0046a2d8
call fcn.0046a2d8
call fcn.0046a2d8
call fcn.0046a2d8
int3