KiWriteCpuSetMasks

NTSTATUS __stdcall KiWriteCpuSetMasks(INT64 *a1, UINT64 a2, INT64 a3, UINT64 a4){
  INT64 v4; 
  unsigned int v7; 
  INT64 *v8; 
  INT64 v9; 
  __int64 v10; 

  LODWORD(v4) = a2;
  if( (unsigned int)a4 < (unsigned int)a2 )
    LODWORD(v4) = a4;
  v7 = 0;
  if( (_DWORD)v4 )
  {
    v8 = a1;
    v9 = a3 - (_QWORD)a1;
    v10 = (unsigned int)v4;
    v7 = v4;
    do
    {
      v4 = *(INT64 *)((char *)v8 + v9);
      *v8++ = v4;
      --v10;
    }
    while( v10 );
  }
  if( v7 < (unsigned int)a2 )
    LODWORD(v4) = (unsigned int)memset(&a1[v7], 0i64, 8 * ((unsigned int)a2 - v7));
  return v4;
}

Referenced by:

KeSetCpuSetsProcess
KeSetSelectedCpuSetsThread