659 {
660 if (isDacl)
661 {
662 int num = 0;
664 {
665 GenericAce genericAce =
_acl[
i];
666 int num2;
667 if ((genericAce.AceFlags & AceFlags.Inherited) != 0)
668 {
669 num2 = 2;
670 }
671 else
672 {
673 QualifiedAce qualifiedAce = genericAce as QualifiedAce;
674 if (qualifiedAce == null)
675 {
676 return false;
677 }
678 if (qualifiedAce.AceQualifier ==
AceQualifier.AccessAllowed)
679 {
680 num2 = 1;
681 }
682 else
683 {
684 if (qualifiedAce.AceQualifier !=
AceQualifier.AccessDenied)
685 {
686 return false;
687 }
688 num2 = 0;
689 }
690 }
691 if (num2 > num)
692 {
693 num = num2;
694 }
695 else if (num2 < num)
696 {
697 return false;
698 }
699 }
700 }
701 else
702 {
703 int num3 = 0;
705 {
706 GenericAce genericAce2 =
_acl[j];
707 if (genericAce2 == null)
708 {
709 continue;
710 }
711 int num4;
712 if ((genericAce2.AceFlags & AceFlags.Inherited) != 0)
713 {
714 num4 = 1;
715 }
716 else
717 {
718 QualifiedAce qualifiedAce2 = genericAce2 as QualifiedAce;
719 if (qualifiedAce2 == null)
720 {
721 return false;
722 }
723 if (qualifiedAce2.AceQualifier !=
AceQualifier.SystemAudit && qualifiedAce2.AceQualifier !=
AceQualifier.SystemAlarm)
724 {
725 return false;
726 }
727 num4 = 0;
728 }
729 if (num4 > num3)
730 {
731 num3 = num4;
732 }
733 else if (num4 < num3)
734 {
735 return false;
736 }
737 }
738 }
739 return true;
740 }