KiWriteCpuSetMasks

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

Referenced by:

KeSetCpuSetsProcess
KeSetSelectedCpuSetsThread