public override void Parse(GameBitBuffer buffer)
 {
     serRareMonsterNames = new SerializeData();
     serRareMonsterNames.Parse(buffer);
     //still checking variablearrays
     this.RareMonsterNames = new List<RareMonsterNamesEntry>( buffer.ReadInt(0) );
     for(int loop12 = 0; loop12 < _RareMonsterNames.Count; loop12++)
     {
         _RareMonsterNames[loop12] = new RareMonsterNamesEntry();
         _RareMonsterNames[loop12].Parse(buffer);
     }
 }
 public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 0;
     serRareMonsterNames = new SerializeData();
     serRareMonsterNames.FileRead(stream, stream.Position);
     stream.Position = offset + 8;
     //still checking variablearrays
     RareMonsterNames = new List<RareMonsterNamesEntry>();
     for(int i = 0; i < (int)(serRareMonsterNames.Field1 / 392); i++)
     {
     stream.Position = serRareMonsterNames.Field0 + 16 + (392*i) ;
         RareMonsterNamesEntry temp12_RareMonsterNames;
         temp12_RareMonsterNames = new RareMonsterNamesEntry();
         temp12_RareMonsterNames.FileRead(stream, stream.Position);
         _RareMonsterNames.Add(temp12_RareMonsterNames);
     }
 }