CmGetDevicePanelRegKeyPath
VOID __stdcall CmGetDevicePanelRegKeyPath(
INT64 a1,
const WCHAR *a2,
INT64 a3,
INT64 a4,
INT64 a5,
WCHAR *pszDest,
size_t cchDest,
INT64 a8){
__int64 v9;
unsigned __int64 v10;
UINT64 dwFlags;
if( (_DWORD)a3 )
{
if( (a3 & 0xFFFFFE9F) == 0 && CmValidateDevicePanelName(a1, a2) >= 0 )
{
v9 = -1i64;
do
++v9;
while( a2[v9] );
v10 = v9 + 47;
if( v10 <= 0xFFFFFFFF )
{
if( a8 )
*(_DWORD *)a8 = v10;
if( (unsigned int)v10 <= cchDest )
{
LODWORD(dwFlags) = 2048;
RtlStringCchPrintfExW(
pszDest,
cchDest,
0i64,
0i64,
dwFlags,
(WCHAR *)L"System\\CurrentControlSet\\Control\\DevicePanels\\%s");
}
}
}
}
}Referenced by:
CmDeleteDevicePanelRegKeyWorker
CmOpenDevicePanelRegKeyWorker
PiDqGetRelativeObjectRegPath