KeInitializeProfile

INT16 __fastcall KeInitializeProfile(
        INT64 a1,
        INT64 a2,
        INT64 a3,
        INT64 a4,
        INT64 a5,
        INT64 a6,
        INT64 a7,
        INT16 a8,
        UINT16 *Affinity1){
  _KAFFINITY_EX *v9; 
  int v10; 
  v9 = (_KAFFINITY_EX *)(a1 + 72);
  *(_DWORD *)a1 = 16252951;
  *(_QWORD *)(a1 + 24) = a2;
  *(_DWORD *)(a1 + 48) = a6 - 2;
  *(_DWORD *)(a1 + 64) = a7;
  *(_WORD *)(a1 + 240) = a8;
  *(_QWORD *)(a1 + 56) = a3;
  *(_QWORD *)(a1 + 32) = a4;
  *(_QWORD *)(a1 + 40) = a4 + a5;
  *(_BYTE *)(a1 + 242) = 0;
  if( Affinity1 )
    v10 = KeAndAffinityEx((_KAFFINITY_EX *)Affinity1, &KeActiveProcessors, v9);
  else
    v10 = 0;
  if( !v10 )
    LOWORD(v10) = KeCopyAffinityEx((__int64)v9, &KeActiveProcessors.Count);
  return v10;
}

Referenced by:

NtStartProfile