SdbpCheckMatchingRegistry
__int64 __fastcall SdbpCheckMatchingRegistry(_DWORD *a1, __int64 a2, void *a3, __int64 a4, UINT64 a5, __int64 a6){
UINT64 v6;
unsigned int v7;
UINT64 dwValueDataDb;
UINT64 ulValueTypeDb;
UINT64 pValueDataSize;
UINT8 *pValueDataDb;
UINT64 qwValueDataDb;
PWCHAR pwszValueDataDb;
INT64 a4a;
_QWORD a3a[2];
UINT64 v18;
v6 = (unsigned int)a5;
v7 = 0;
*a1 = 0;
a3a[0] = 0i64;
a4a = 0i64;
ulValueTypeDb = 0i64;
pwszValueDataDb = 0i64;
LODWORD(v18) = 0;
qwValueDataDb = 0i64;
pValueDataDb = 0i64;
pValueDataSize = 0i64;
if( (unsigned int)SdbpGetRegistryMatchingAttributes(
(_RTL_RUN_ONCE *)a3,
v6,
a3a,
&a4a,
(INT64)&ulValueTypeDb,
(INT64)&pwszValueDataDb,
(INT64)&v18,
(INT64)&qwValueDataDb,
(INT64)&pValueDataDb,
(INT64)&pValueDataSize) )
{
LODWORD(dwValueDataDb) = v18;
if( SdbpCheckMatchingRegistryEntry(
(PWCHAR)a3a[0],
(PWCHAR)a4a,
(unsigned int)ulValueTypeDb,
pwszValueDataDb,
dwValueDataDb,
qwValueDataDb,
pValueDataDb,
pValueDataSize,
(INT64 *)((char *)&ulValueTypeDb + 4)) )
{
v7 = 1;
*(_DWORD *)(a6 + 80) = 1;
*a1 = HIDWORD(ulValueTypeDb);
}
else
{
AslLogCallPrintf(1ui64, "SdbpCheckMatchingRegistry", 0x5DCui64, "Failed to check MATCHING_REG entry");
}
}
else
{
AslLogCallPrintf(1ui64, "SdbpCheckMatchingRegistry", 0x5CBui64, "Failed to read MATCHING_REG entry");
}
return v7;
}Referenced by:
No references.