public static ResultDescriptor Find(Result result) { ResultDescriptor resultDescriptor; lock (ResultDescriptor.LockDescriptor) { if (ResultDescriptor.RegisteredDescriptorProvider.Count > 0) { foreach (Type item_0 in ResultDescriptor.RegisteredDescriptorProvider) { ResultDescriptor.AddDescriptorsFromType(item_0); } ResultDescriptor.RegisteredDescriptorProvider.Clear(); } if (!ResultDescriptor.Descriptors.TryGetValue(result, out resultDescriptor)) { resultDescriptor = new ResultDescriptor(result, "Unknown", "Unknown", "Unknown", (string)null); } if (resultDescriptor.Description == null) { string local_2 = ResultDescriptor.GetDescriptionFromResultCode(result.Code); resultDescriptor.Description = local_2 ?? "Unknown"; } } return(resultDescriptor); }