public HeaderObject(TagLib.Asf.File file, long position) : base(file, position)
 {
     if (!base.Guid.Equals(TagLib.Asf.Guid.AsfHeaderObject))
     {
         throw new CorruptFileException("Object GUID incorrect.");
     }
     if (base.OriginalSize < 0x1aL)
     {
         throw new CorruptFileException("Object size too small.");
     }
     this.children = new List<TagLib.Asf.Object>();
     uint count = file.ReadDWord();
     this.reserved = file.ReadBlock(2);
     this.children.AddRange(file.ReadObjects(count, file.Tell));
 }