Function at 0x4299d3
Capabilities:
Query or enumerate registry value

Disassembly:
push ebx
mov edx, 0x12
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x4299d9
call fcn.004ac4d0
push dword [esp + 0x5c]
call fcn.0043d6e0
mov edx, dword [esp + 0x50]
lea ecx, [esp]
call fcn.0043d000
mov edx, dword [esp + 0x54]
lea ecx, [esp + 4]
call fcn.0043d000
mov edx, dword [esp + 0x58]
lea ecx, [esp + 8]
call fcn.0043d000
push dword [esp]
call fcn.0042b072
push dword [esp + 8]
mov edx, 0x560004
pop ecx
call fcn.0043d670
je 0x429a86
cmp dword [0xc06680], 0
je 0x429a6a
lea eax, [esp + 0x10]
push eax
mov ebx, dword [0xc06698]
or ebx, 0xf003f
push ebx
push 0
push dword [0xc06660]
push dword [0xc0667c]
call sub.ADVAPI32.dll_RegOpenKeyExW
mov dword [esp + 0xc], eax
jmp 0x429a84
lea eax, [esp + 0x10]
push eax
push dword [0xc06660]
push dword [0xc0667c]
call sub.ADVAPI32.dll_RegOpenKeyW
mov dword [esp + 0xc], eax
jmp 0x429aeb
lea eax, [esp + 0x18]
push eax
push dword [0xc0667c]
push dword [esp + 0x10]
call sub.ADVAPI32.dll_RegConnectRegistryW
mov dword [esp + 0x14], eax
cmp dword [0xc06680], 0
je 0x429ad3
lea eax, [esp + 0x10]
push eax
mov ebx, dword [0xc06698]
or ebx, 0xf003f
push ebx
push 0
push dword [0xc06660]
push dword [esp + 0x28]
call sub.ADVAPI32.dll_RegOpenKeyExW
mov dword [esp + 0xc], eax
jmp 0x429aeb
lea eax, [esp + 0x10]
push eax
push dword [0xc06660]
push dword [esp + 0x20]
call sub.ADVAPI32.dll_RegOpenKeyW
mov dword [esp + 0xc], eax
mov ebx, dword [esp + 0xc]
and ebx, ebx
jne 0x429dc5
mov dword [esp + 0x1c], 0x400
push edx
call fcn.004ac330
pop edx
push eax
push edx
call fcn.004ac330
pop edx
push eax
push dword [esp + 0x24]
call fcn.004a9b30
lea eax, [esp + 0x24]
push eax
call fcn.004ac3d0
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x24]
push eax
lea eax, [esp + 0x2c]
push eax
push 0
push dword [esp + 0x14]
push dword [esp + 0x24]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0xc], eax
mov ebx, dword [esp + 0xc]
and ebx, ebx
jne 0x429dc5
push dword [esp + 0x24]
mov ebx, 1
cmp ebx, dword [esp]
jne 0x429bcc
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x28]
push eax
lea eax, [esp + 0x30]
push eax
push 0
push dword [esp + 0x18]
push dword [esp + 0x28]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x10]
and ebx, ebx
jne 0x429bb9
push edx
call fcn.004ac330
pop edx
push eax
push edx
call fcn.004ac330
pop edx
push eax
mov ebx, dword [esp + 0x28]
dec ebx
push ebx
push dword [esp + 0x30]
call fcn.004aa400
lea eax, [esp + 0x30]
push eax
call fcn.004ac3d0
jmp 0x429bc7
mov edx, 0x55f0cc
lea ecx, [esp + 0x2c]
call fcn.0043d008
jmp 0x429dc4
mov ebx, 2
cmp ebx, dword [esp]
jne 0x429c41
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x28]
push eax
lea eax, [esp + 0x30]
push eax
push 0
push dword [esp + 0x18]
push dword [esp + 0x28]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x10]
and ebx, ebx
jne 0x429c2e
push edx
call fcn.004ac330
pop edx
push eax
push edx
call fcn.004ac330
pop edx
push eax
mov ebx, dword [esp + 0x28]
dec ebx
push ebx
push dword [esp + 0x30]
call fcn.004aa400
lea eax, [esp + 0x30]
push eax
call fcn.004ac3d0
jmp 0x429c3c
mov edx, 0x55f0cc
lea ecx, [esp + 0x2c]
call fcn.0043d008
jmp 0x429dc4
mov ebx, 4
cmp ebx, dword [esp]
jne 0x429cb3
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x38]
push eax
push 0
push dword [esp + 0x18]
push dword [esp + 0x28]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x10]
and ebx, ebx
jne 0x429ca0
push edx
call fcn.004ac330
pop edx
push eax
push edx
call fcn.004ac330
pop edx
push eax
mov eax, dword [esp + 0x3c]
cdq
push edx
push eax
call fcn.004a99d0
lea eax, [esp + 0x30]
push eax
call fcn.004ac3d0
jmp 0x429cae
mov edx, 0x5600aa
lea ecx, [esp + 0x2c]
call fcn.0043d008
jmp 0x429dc4
mov ebx, 3
cmp ebx, dword [esp]
jne 0x429dc4
mov dword [esp + 0x38], 0x400
push dword [esp + 0x38]
call fcn.004ab170
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x38]
push eax
push dword [esp + 0x40]
lea eax, [esp + 0x48]
push eax
push 0
push dword [esp + 0x18]
push dword [esp + 0x28]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x10]
and ebx, ebx
jne 0x429dc4
mov edx, 0x55f0cc
lea ecx, [esp + 0x2c]
call fcn.0043d008
mov dword [esp + 0x44], 0
jmp 0x429d1e
mov ebx, dword [esp + 0x38]
dec ebx
cmp ebx, dword [esp + 0x44]
jl 0x429dbb
mov ebx, dword [esp + 0x3c]
add ebx, dword [esp + 0x44]
push ebx
pop eax
call fcn.0043d620
mov ebx, eax
and ebx, 0xff
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x48]
cmp ebx, 0x10
jge 0x429d78
mov edx, dword [esp + 0x2c]
push edx
call fcn.004ac330
pop edx
push eax
push edx
call fcn.004ac370
mov edx, 0x5600aa
push edx
call fcn.004ac370
lea eax, [esp + 0x30]
push eax
call fcn.004ac3d0
mov edx, dword [esp + 0x2c]
push edx
call fcn.004ac330
pop edx
push eax
push edx
call fcn.004ac370
push edx
call fcn.004ac330
pop edx
push eax
push edx
call fcn.004ac330
pop edx
push eax
mov eax, dword [esp + 0x54]
cdq
push edx
push eax
call fcn.004aaa10
pop eax
lea eax, [esp + 0x30]
push eax
call fcn.004ac3d0
inc dword [esp + 0x44]
jno 0x429d1e
push dword [esp + 0x3c]
call fcn.004ab110
pop eax
push dword [esp + 0x10]
call sub.ADVAPI32.dll_RegCloseKey
mov edx, dword [esp + 0x28]
push edx
call fcn.004ac330
pop edx
push eax
push edx
call fcn.004ac370
pop eax
push eax
call fcn.0043d6b0
pop edx
add eax, edx
jmp 0x429df6
push dword [esp + 8]
call fcn.004ac530
push dword [esp + 0x20]
call fcn.004ac530
push dword [esp]
call fcn.004ac530
push dword [esp + 4]
call fcn.004ac530
push dword [esp + 0x28]
call fcn.004ac530
add esp, 0x48
pop ebx
ret 0xc