NtCreateProfile

NTSTATUS __stdcall NtCreateProfile(
        VOID **ProfileHandle,
        VOID *Process,
        VOID *RangeBase,
        UINT64 RangeSize,
        UINT64 BucketSize,
        UINT64 *Buffer,
        UINT64 BufferSize,
        _KPROFILE_SOURCE ProfileSource,
        UINT64 Affinity){
  unsigned __int16 Group; 
  unsigned __int64 v14; 
  UINT64 v16; 
  UINT64 v17; 
  _GROUP_AFFINITY AffinityArray; 

  *(_QWORD *)&AffinityArray.Group = 0i64;
  Group = KeGetCurrentPrcb()->Group;
  v14 = Affinity;
  AffinityArray.Group = Group;
  if( Affinity == -1i64 )
    LODWORD(v14) = KeQueryGroupAffinity(Group);
  AffinityArray.Mask = v14;
  LODWORD(v17) = BufferSize;
  LODWORD(v16) = BucketSize;
  return ExpProfileCreate(
           ProfileHandle,
           Process,
           RangeBase,
           RangeSize,
           v16,
           Buffer,
           v17,
           ProfileSource,
           1u,
           &AffinityArray,
           1u);
}

Referenced by:

No references.