SepTokenInitialization
UINT8 __stdcall SepTokenInitialization(){
NTSTATUS v0;
_UNICODE_STRING DestinationString;
_OBJECT_TYPE_INITIALIZER ObjectTypeInitializer;
DestinationString = 0i64;
RtlInitUnicodeString(&DestinationString, L"Token");
memset(&ObjectTypeInitializer, 0i64, sizeof(ObjectTypeInitializer));
ObjectTypeInitializer._bf_0 |= 0xEu;
ObjectTypeInitializer.Length = 120;
ObjectTypeInitializer.ObjectTypeCode = 512;
ObjectTypeInitializer.InvalidAttributes = 256;
ObjectTypeInitializer.PoolType = PagedPool;
ObjectTypeInitializer.ValidAccessMask = 983551;
ObjectTypeInitializer.GenericMapping = (_GENERIC_MAPPING)SepTokenMapping;
ObjectTypeInitializer.DeleteProcedure = (void(__fastcall *)(void *))SepTokenDeleteMethod;
v0 = ObCreateObjectType(&DestinationString, &ObjectTypeInitializer, 0i64, (_OBJECT_TYPE **)&SeTokenObjectType);
if( v0 >= 0 )
v0 = SeRegisterObjectTypeMandatoryPolicy((_OBJECT_TYPE *)SeTokenObjectType, 1ui64);
return v0 >= 0;
}Referenced by:
SepInitializationPhase0