public override void Parse(GameBitBuffer buffer)
 {
     Field0 = buffer.ReadInt64(64);
     Field1 = buffer.ReadCharArray(512);
     Field2 = new DataElements();
     Field2.Parse(buffer);
     Field3 = buffer.ReadInt(32);
     serChildSpecs = new SerializeData();
     serChildSpecs.Parse(buffer);
     //still checking variablearrays
     this.ChildSpecs = new List<UIStyleChildSpec>( buffer.ReadInt(0) );
     for(int loop12 = 0; loop12 < _ChildSpecs.Count; loop12++)
     {
         _ChildSpecs[loop12] = new UIStyleChildSpec();
         _ChildSpecs[loop12].Parse(buffer);
     }
 }
 public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 0;
     Field0 = stream.ReadValueS64();
     stream.Position = offset + 8;
     Field1 = stream.ReadString(512);
     stream.Position = offset + 520;
     Field2 = new DataElements();
     Field2.FileRead(stream, stream.Position);
     stream.Position = offset + 568;
     Field3 = stream.ReadValueS32();
     stream.Position = offset + 572;
     serChildSpecs = new SerializeData();
     serChildSpecs.FileRead(stream, stream.Position);
     stream.Position = offset + 580;
     //still checking variablearrays
     ChildSpecs = new List<UIStyleChildSpec>();
     for(int i = 0; i < (int)(serChildSpecs.Field1 / 572); i++)
     {
     stream.Position = serChildSpecs.Field0 + 16 + (572*i) ;
         UIStyleChildSpec temp12_ChildSpecs;
         temp12_ChildSpecs = new UIStyleChildSpec();
         temp12_ChildSpecs.FileRead(stream, stream.Position);
         _ChildSpecs.Add(temp12_ChildSpecs);
     }
 }