Function at 0x42bf15
Capabilities:
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push 0x6e8
mov eax, 0x49ffd0
call fcn.0045201c
mov edi, dword [ebp + 8]
lea eax, [ebp - 0x410]
mov esi, dword [ebp + 0xc]
xor ebx, ebx
push 0x400
push ebx
push eax
mov dword [ebp - 0x494], edi
mov dword [ebp - 0x490], esi
mov dword [ebp - 0x480], ebx
mov dword [ebp - 0x47c], ebx
mov dword [ebp - 0x478], ebx
mov dword [ebp - 0x484], ebx
call fcn.0046a220
add esp, 0xc
xor bh, bh
test edi, edi
je 0x42c01d
test esi, esi
je 0x42c01d
lea eax, [ebp - 0x480]
push eax
push 9
push 0
push str.SYSTEMCurrentControlSetEnumDisplay
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov edi, eax
test edi, edi
je 0x42c027
lea ecx, [ebp - 0x52c]
call fcn.00402a5a
mov esi, eax
and dword [ebp - 4], 0
push str.Open_key:
push esi
call fcn.0040508d
push str.SYSTEMCurrentControlSetEnumDisplay
push esi
call fcn.0040508d
push str._failed_ec
push esi
call fcn.0040508d
add esp, 0x18
mov ecx, esi
push edi
call fcn.00403c13
lea eax, [ebp - 0x428]
mov ecx, esi
push eax
call fcn.00402a43
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x428]
call fcn.00402109
push eax
push 2
call fcn.00401235
pop ecx
pop ecx
mov byte [ebp - 4], bh
lea ecx, [ebp - 0x428]
call fcn.004020b0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x52c]
call fcn.00402479
xor al, al
call fcn.00451fc5
ret 0xc
xor eax, eax
mov dword [ebp - 0x474], 0x200
mov dword [ebp - 0x48c], eax
cmp eax, 0x400
jae 0x42c426
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x474]
push ecx
lea ecx, [ebp - 0x410]
push ecx
push eax
push dword [ebp - 0x480]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
jne 0x42c426
lea eax, [ebp - 0x47c]
push eax
push 9
push 0
lea eax, [ebp - 0x410]
push eax
push dword [ebp - 0x480]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov edi, eax
test edi, edi
je 0x42c112
lea ecx, [ebp - 0x52c]
call fcn.00402a5a
mov esi, eax
mov dword [ebp - 4], 2
push str.updtDispDevEnumClass::GetEDIDData
push esi
call fcn.0040508d
push str._RegEnumKeyEx_failed_with_code
push esi
call fcn.0040508d
add esp, 0x10
mov ecx, esi
push edi
call fcn.00403c13
lea eax, [ebp - 0x428]
mov ecx, esi
push eax
call fcn.00402a43
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x428]
call fcn.00402109
push eax
push 2
call fcn.00401235
pop ecx
pop ecx
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x428]
call fcn.004020b0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x52c]
call fcn.00402479
jmp 0x42c40b
xor edi, edi
jmp 0x42c2d4
cmp edi, 0x400
jae 0x42c3ff
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x474]
mov dword [ebp - 0x474], 0x200
push eax
lea eax, [ebp - 0x410]
push eax
push edi
push dword [ebp - 0x47c]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov dword [ebp - 0x488], eax
test eax, eax
jne 0x42c360
lea eax, [ebp - 0x478]
push eax
push 0x20019
push 0
lea eax, [ebp - 0x410]
push eax
push dword [ebp - 0x47c]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x42c2c7
lea eax, [ebp - 0x474]
mov dword [ebp - 0x474], 0x400
push eax
lea eax, [ebp - 0x410]
push eax
push 0
push 0
push str.Driver
push dword [ebp - 0x478]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [ebp - 0x488], eax
test eax, eax
jne 0x42c2e1
push dword [ebp - 0x494]
lea eax, [ebp - 0x410]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x42c2c7
lea eax, [ebp - 0x484]
push eax
push 0x20019
push 0
push str.Device_Parameters
push dword [ebp - 0x478]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x42c2c5
lea eax, [ebp - 0x474]
mov dword [ebp - 0x474], 0x100
push eax
push esi
push 0
push 0
push str.EDID
push dword [ebp - 0x484]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x42c238
mov bh, 1
jmp 0x42c2b9
lea ecx, [ebp - 0x5c4]
call fcn.00402a5a
mov esi, eax
mov dword [ebp - 4], 8
push str.updtDispDevEnumClass::GetEDIDData
push esi
call fcn.0040508d
push str._RegQueryValueEx_on_EDID_failed_with_code
push esi
call fcn.0040508d
add esp, 0x10
mov ecx, esi
push 0
call fcn.00403c13
lea eax, [ebp - 0x440]
mov ecx, esi
push eax
call fcn.00402a43
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x440]
call fcn.00402109
push eax
push 2
call fcn.00401235
pop ecx
pop ecx
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x440]
call fcn.004020b0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5c4]
call fcn.00402479
mov esi, dword [ebp - 0x490]
push dword [ebp - 0x484]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov bl, 1
push dword [ebp - 0x478]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
inc edi
test bl, bl
je 0x42c119
jmp 0x42c3ff
lea ecx, [ebp - 0x65c]
call fcn.00402a5a
mov esi, eax
mov dword [ebp - 4], 6
push str.updtDispDevEnumClass::GetEDIDData
push esi
call fcn.0040508d
push str._RegQueryValueEx_failed_with_code
push esi
call fcn.0040508d
add esp, 0x10
mov ecx, esi
push dword [ebp - 0x488]
call fcn.00403c13
lea eax, [ebp - 0x458]
mov ecx, esi
push eax
call fcn.00402a43
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x458]
call fcn.00402109
push eax
push 2
call fcn.00401235
pop ecx
pop ecx
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x458]
call fcn.004020b0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x65c]
jmp 0x42c3fa
cmp eax, 0x103
je 0x42c3ff
lea ecx, [ebp - 0x6f4]
call fcn.00402a5a
mov esi, eax
mov dword [ebp - 4], 4
push str.updtDispDevEnumClass::GetEDIDData
push esi
call fcn.0040508d
push str._RegEnumKeyEx_failed__subIndex
push esi
call fcn.0040508d
add esp, 0x10
mov ecx, esi
push edi
call fcn.00403c13
push str.__code
push esi
call fcn.0040508d
pop ecx
pop ecx
push dword [ebp - 0x488]
mov ecx, esi
call fcn.00403c13
lea eax, [ebp - 0x470]
mov ecx, esi
push eax
call fcn.00402a43
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x470]
call fcn.00402109
push eax
push 2
call fcn.00401235
pop ecx
pop ecx
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x470]
call fcn.004020b0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6f4]
call fcn.00402479
push dword [ebp - 0x47c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [ebp - 0x48c]
mov esi, dword [ebp - 0x490]
inc eax
mov dword [ebp - 0x48c], eax
test bl, bl
je 0x42c039
push dword [ebp - 0x480]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov al, bh
jmp 0x42c01f