PopSetupSleepNotifies
INT64 __fastcall PopSetupSleepNotifies(INT64 a1){
int i;
_LIST_ENTRY *v3;
__int64 v4;
__int64 v5;
_LIST_ENTRY *v6;
int v7;
_LIST_ENTRY *Flink;
_LIST_ENTRY *v9;
int Blink;
_LIST_ENTRY *v11;
_LIST_ENTRY *v12;
INT64 result;
for( i = 4; i >= 0; i = v7 - 1 )
{
v3 = (_LIST_ENTRY *)(a1 + 72 + 72i64 * i);
PopMoveList(v3, (_LIST_ENTRY *)(a1 + 88 + 72i64 * i));
PopMoveList(v3, (_LIST_ENTRY *)(a1 + 120 + 8 * v4));
PopMoveList(v3, (_LIST_ENTRY *)(a1 + 104 + 8 * v5));
Flink = v6[-1].Flink;
while( Flink != v3 )
{
v9 = Flink;
Flink = Flink->Flink;
HIDWORD(v9[6].Flink) = v9[6].Flink;
Blink = (int)v9[5].Blink;
HIDWORD(v9[5].Blink) = Blink;
if( !Blink )
{
if( Flink->Blink != v9
|| (v11 = v9->Blink, v11->Flink != v9)
|| (v11->Flink = Flink, Flink->Blink = v11, v12 = v6->Blink, v12->Flink != v6) )
{
__fastfail(3u);
}
v9->Flink = v6;
v9->Blink = v12;
v12->Flink = v9;
v6->Blink = v9;
}
}
result = LODWORD(v6[-2].Blink);
HIDWORD(v6[-2].Blink) = result;
}
return result;
}Referenced by:
PoBroadcastSystemState