public void Parse(GameBitBuffer buffer)
 {
     Field0 = buffer.ReadInt(32);
     snoActor = buffer.ReadInt(32);
     Field2 = buffer.ReadInt(32);
     Field3 = buffer.ReadInt(4) + (-1);
     Field4 = buffer.ReadInt(4) + (-1);
     Field5 = buffer.ReadInt(4) + (-1);
     Field6 = new Monster();
     Field6.Parse(buffer);
     Field7 = buffer.ReadInt(3);
     Field8 = buffer.ReadInt(32);
     Field9 = buffer.ReadInt(32);
     Field10 = new int[4];
     for(int i = 0;i < _Field10.Length;i++) _Field10[i] = buffer.ReadInt(32);
     ... something to fix here :D GenerateFixedArrayParseBitBuffer(D3TypeDescriptor.DT_FIXEDARRAY)
     Field12 = buffer.ReadFloat32();
     Field13 = buffer.ReadFloat32();
     Field14 = buffer.ReadFloat32();
     Field15 = buffer.ReadFloat32();
     Field16 = buffer.ReadFloat32();
     Field17 = buffer.ReadFloat32();
     Field18 = buffer.ReadInt(32);
     Field19 = new HealthDropInfo();
     Field19.Parse(buffer);
     Field20 = new HealthDropInfo();
     Field20.Parse(buffer);
     Field21 = new HealthDropInfo();
     Field21.Parse(buffer);
     Field22 = new HealthDropInfo();
     Field22.Parse(buffer);
     snoSkillKit = buffer.ReadInt(32);
     Field24 = new SkillDeclaration[8];
     for(int i = 0;i < _Field24.Length;i++)
     {
         _Field24[i] = new SkillDeclaration();
         _Field24[i].Parse(buffer);
     }
     Field25 = new MonsterSkillDeclaration[8];
     for(int i = 0;i < _Field25.Length;i++)
     {
         _Field25[i] = new MonsterSkillDeclaration();
         _Field25[i].Parse(buffer);
     }
     snoTreasureClassFirstKill = buffer.ReadInt(32);
     snoTreasureClass = buffer.ReadInt(32);
     snoTreasureClassRare = buffer.ReadInt(32);
     snoTreasureClassChampion = buffer.ReadInt(32);
     snoTreasureClassChampionLight = buffer.ReadInt(32);
     Field31 = buffer.ReadFloat32();
     Field32 = buffer.ReadFloat32();
     Field33 = buffer.ReadFloat32();
     Field34 = buffer.ReadFloat32();
     Field35 = buffer.ReadInt(32);
     Field36 = buffer.ReadFloat32();
     Field37 = buffer.ReadInt(32);
     Field38 = buffer.ReadInt(32);
     snoInventory = buffer.ReadInt(32);
     snoSecondaryInventory = buffer.ReadInt(32);
     snoLore = buffer.ReadInt(32);
     arAIBehaviors = new int[6];
     for(int i = 0;i < _arAIBehaviors.Length;i++) _arAIBehaviors[i] = buffer.ReadInt(32);
     Field43 = new int[8];
     for(int i = 0;i < _Field43.Length;i++) _Field43[i] = buffer.ReadInt(32);
     snoSummonActor = new int[6];
     for(int i = 0;i < _snoSummonActor.Length;i++) _snoSummonActor[i] = buffer.ReadInt(32);
     Field45 = new int[4];
     for(int i = 0;i < _Field45.Length;i++) _Field45[i] = buffer.ReadInt(32);
     Field46 = new int[6];
     for(int i = 0;i < _Field46.Length;i++) _Field46[i] = buffer.ReadInt(32);
     Field47 = buffer.ReadInt(32);
     Field48 = buffer.ReadInt(32);
     Field49 = buffer.ReadInt(32);
     Field50 = buffer.ReadInt(3);
     serTagMap = new SerializeData();
     serTagMap.Parse(buffer);
     hTagMap = new DT_TAGMAP();
     hTagMap.Parse(buffer);
     Field53 = buffer.ReadInt(32);
     Field54 = new DT_VARIABLEARRAY();
     Field54.Parse(buffer);
     serSpawnGroups = new SerializeData();
     serSpawnGroups.Parse(buffer);
     Field56 = buffer.ReadCharArray(128);
 }