// Token: 0x0600103A RID: 4154 RVA: 0x0004EB34 File Offset: 0x0004CD34
        public static DirectoryAttribute GetRangedPropertyValue(ADPropertyDefinition propertyDefinition, SearchResultAttributeCollection attributeCollection, out IntRange returnedRange)
        {
            DirectoryAttribute result = null;

            returnedRange = null;
            string   text;
            IntRange propertyRangeFromLdapName = RangedPropertyHelper.GetPropertyRangeFromLdapName(propertyDefinition.LdapDisplayName, out text);

            if (attributeCollection.Contains(propertyDefinition.LdapDisplayName))
            {
                returnedRange = propertyRangeFromLdapName;
                result        = attributeCollection[propertyDefinition.LdapDisplayName];
            }
            else
            {
                string attributeNameWithRange = ADSession.GetAttributeNameWithRange(text, propertyRangeFromLdapName.LowerBound.ToString(), "*");
                if (attributeCollection.Contains(attributeNameWithRange))
                {
                    returnedRange = new IntRange(propertyRangeFromLdapName.LowerBound, int.MaxValue);
                    result        = attributeCollection[attributeNameWithRange];
                }
                else
                {
                    string value = string.Format(CultureInfo.InvariantCulture, "{0};{1}{2}-", new object[]
                    {
                        text,
                        "range=",
                        propertyRangeFromLdapName.LowerBound
                    });
                    foreach (object obj in attributeCollection.AttributeNames)
                    {
                        string text2 = (string)obj;
                        if (text2.StartsWith(value, StringComparison.OrdinalIgnoreCase))
                        {
                            result        = attributeCollection[text2];
                            returnedRange = RangedPropertyHelper.GetPropertyRangeFromLdapName(text2, out text);
                        }
                    }
                }
            }
            return(result);
        }