SepMergeObjectTypeListAccesses

VOID __stdcall SepMergeObjectTypeListAccesses(
        _IOBJECT_TYPE_LIST *DestinationObjectTypeList,
        _IOBJECT_TYPE_LIST *SourceObjectTypeList,
        UINT64 ObjectTypeListLength){
  _IOBJECT_TYPE_LIST *v3; 
  signed __int64 v4; 
  __int64 v5; 

  if( (_DWORD)ObjectTypeListLength )
  {
    v3 = DestinationObjectTypeList + 7;
    v4 = (char *)SourceObjectTypeList - (char *)DestinationObjectTypeList;
    v5 = (unsigned int)ObjectTypeListLength;
    do
    {
      *v3 &= *(_IOBJECT_TYPE_LIST *)((char *)v3 + v4);
      v3[1] |= *(_IOBJECT_TYPE_LIST *)((char *)v3 + v4 + 4);
      v3 += 12;
      --v5;
    }
    while( v5 );
  }
}

Referenced by:

SeAccessCheckByTypeWithAdminlessChecks
SepAccessCheckAndAuditAlarmWithAdminlessChecks