public byte[] ReadBinary()
{
var length = ReadUInt32();
if (length > int.MaxValue)
{
throw new NotSupportedException(string.Format(CultureInfo.CurrentCulture, "Data longer than {0} is not supported.", int.MaxValue));
}
return ReadBytes((int)length);
}