PopIdleWakeAreIdenticalWakeSources
bool __fastcall PopIdleWakeAreIdenticalWakeSources(int a1, _BYTE *a2, _QWORD *a3){
char v3;
unsigned int v4;
signed __int64 v5;
char v6;
const wchar_t *v7;
const wchar_t *v8;
__int64 v9;
v3 = 0;
if( a1 == 5 )
{
v3 = 1;
v4 = 0;
v5 = a2 - (_BYTE *)a3;
while( *(_QWORD *)((char *)a3 + v5) == *a3 )
{
++v4;
++a3;
if( v4 >= 3 )
return v3;
}
return 0;
}
else if( a1 == 6 )
{
v6 = *a2;
if( *a2 == *(_BYTE *)a3 )
{
v7 = (const wchar_t *)(a2 + 2);
v8 = (const wchar_t *)a3 + 1;
if( v6 == 3 )
{
v9 = -1i64;
do
++v9;
while( v7[v9] );
if( !wcsnicmp(v8, v7, v9) )
return 1;
}
else
{
return *(_BYTE *)v7 == *(_BYTE *)v8;
}
}
}
return v3;
}Referenced by:
PopIdleWakeFindOrAllocateWakeSource