Function at 0x419530
Capabilities:
Query or enumerate registry value

Disassembly:
push ebx
mov edx, 0xd
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x419536
call fcn.0043ec50
push dword [esp + 0x48]
call fcn.00426500
mov edx, dword [esp + 0x40]
lea ecx, [esp]
call fcn.00426060
mov edx, dword [esp + 0x44]
lea ecx, [esp + 4]
call fcn.00426060
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov edx, 0x442038
lea ecx, [esp + 0x10]
call fcn.00426068
mov dword [esp + 0x14], 0
lea eax, [esp + 8]
push eax
push 0x20019
push 0
push dword [esp + 0xc]
push dword [esp + 0x4c]
call sub.ADVAPI32.dll_RegOpenKeyExW
mov dword [esp + 0x18], eax
mov ebx, dword [esp + 0x18]
and ebx, ebx
jne 0x419869
lea eax, [esp + 0x14]
push eax
push 0
lea eax, [esp + 0x14]
push eax
push 0
push dword [esp + 0x14]
push dword [esp + 0x1c]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0x18], eax
mov ebx, dword [esp + 0x18]
and ebx, ebx
jne 0x419860
push dword [esp + 0xc]
mov ebx, 4
cmp ebx, dword [esp]
jne 0x419653
mov dword [esp + 0x20], 0
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x18]
push eax
push 0
push dword [esp + 0x18]
push dword [esp + 0x20]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0x1c], eax
push edx
call fcn.0043ea40
pop edx
push eax
push edx
call fcn.0043ea40
pop edx
push eax
mov eax, dword [esp + 0x28]
cdq
push edx
push eax
call fcn.0043c2d0
lea eax, [esp + 0x18]
push eax
call fcn.0043eae0
jmp 0x41985f
mov ebx, 0xb
cmp ebx, dword [esp]
jne 0x4196be
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x18]
push eax
push 0
push dword [esp + 0x18]
push dword [esp + 0x20]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0x1c], eax
push edx
call fcn.0043ea40
pop edx
push eax
push edx
call fcn.0043ea40
pop edx
push eax
push dword [esp + 0x30]
push dword [esp + 0x30]
call fcn.0043c2d0
lea eax, [esp + 0x18]
push eax
call fcn.0043eae0
jmp 0x41985f
mov ebx, 1
cmp ebx, dword [esp]
jne 0x419715
push edx
call fcn.0043ea40
pop edx
push eax
push edx
call fcn.0043ea40
pop edx
push eax
push dword [esp + 0x20]
call fcn.0043ce80
lea eax, [esp + 0x18]
push eax
call fcn.0043eae0
lea eax, [esp + 0x18]
push eax
mov eax, dword [esp + 0x18]
push eax
lea eax, [esp + 0x18]
push eax
push 0
push dword [esp + 0x18]
push dword [esp + 0x20]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0x1c], eax
jmp 0x41985f
mov ebx, 7
cmp ebx, dword [esp]
jne 0x41985f
mov edx, 0x442038
lea ecx, [esp + 0x2c]
call fcn.00426068
mov edx, 0x442038
lea ecx, [esp + 0x30]
call fcn.00426068
push edx
call fcn.0043ea40
pop edx
push eax
push edx
call fcn.0043ea40
pop edx
push eax
push dword [esp + 0x20]
call fcn.0043ce80
lea eax, [esp + 0x18]
push eax
call fcn.0043eae0
lea eax, [esp + 0x18]
push eax
mov eax, dword [esp + 0x18]
push eax
lea eax, [esp + 0x18]
push eax
push 0
push dword [esp + 0x18]
push dword [esp + 0x20]
call sub.ADVAPI32.dll_RegQueryValueExW
mov dword [esp + 0x1c], eax
mov ebx, dword [esp + 0x18]
cmp ebx, dword [esp + 0x34]
jle 0x41983c
push edx
call fcn.0043ea40
pop edx
push eax
push edx
call fcn.0043ea40
pop edx
push eax
mov eax, dword [esp + 0x1c]
mov ebx, eax
add ebx, dword [esp + 0x3c]
push ebx
call fcn.0043dbb0
lea eax, [esp + 0x30]
push eax
call fcn.0043eae0
push edx
call fcn.0043ea40
pop edx
push eax
push edx
call fcn.0043ea40
pop edx
push eax
push dword [esp + 0x34]
call fcn.0043cd10
call fcn.0043ebe0
mov edx, 0x442038
call fcn.00426550
mov ecx, eax
call fcn.00426510
jne 0x419821
mov edx, dword [esp + 0x30]
push edx
call fcn.0043ea40
pop edx
push eax
push edx
call fcn.0043ea80
mov edx, dword [esp + 0x30]
push edx
call fcn.0043ea80
mov edx, 0x44206a
push edx
call fcn.0043ea80
lea eax, [esp + 0x34]
push eax
call fcn.0043eae0
mov ebx, dword [esp + 0x34]
push dword [esp + 0x2c]
call fcn.0043d7c0
add ebx, eax
add ebx, 2
mov dword [esp + 0x34], ebx
jmp 0x419787
push edx
call fcn.0043ea40
pop edx
push eax
push edx
call fcn.0043ea40
pop edx
push eax
push dword [esp + 0x38]
call fcn.0043cf70
lea eax, [esp + 0x18]
push eax
call fcn.0043eae0
pop eax
push dword [esp + 8]
call sub.ADVAPI32.dll_RegCloseKey
push dword [esp + 0x18]
call sub.KERNEL32.dll_SetLastError
mov edx, dword [esp + 0x10]
push edx
call fcn.0043ea40
pop edx
push eax
push edx
call fcn.0043ea80
pop eax
push eax
call fcn.004264d0
pop edx
add eax, edx
jmp 0x41989a
push dword [esp + 0x28]
call fcn.0043ecb0
push dword [esp + 0x10]
call fcn.0043ecb0
push dword [esp]
call fcn.0043ecb0
push dword [esp + 0x2c]
call fcn.0043ecb0
push dword [esp + 4]
call fcn.0043ecb0
add esp, 0x34
pop ebx
ret 0xc