bool DecodeCABlob(StringBuilder sb, ConstructorInfo constructor, byte[] blob, int level)
{
try
{
// CustomAttribute
var br = new ByteReader(blob, 2, blob.Length - 4);
ReadConstructorArguments(sb, br, constructor, level);
br = new ByteReader(blob, blob.Length - (br.Length + 2), br.Length + 2);
int named = br.ReadUInt16();
if (constructor.GetParameters().Length != 0 && named != 0)
{
AppendNewLine(sb, level);
}
ReadNamedArguments(sb, br, named, level, false);
return true;
}
catch (Managed.Reflection.BadImageFormatException) { }
catch (ArgumentOutOfRangeException) { }
return false;
}