public void RemoveLegionChunks()
        {
            int magic = ReadInt(0);

            if (magic != ChunkedWowFile.InvertedMagicToInt("MD20"))
            {
                int md20            = LocateMD20Chunk();
                int to_remove_start = 0;

                if (magic == ChunkedWowFile.InvertedMagicToInt("MD21"))
                {
                    to_remove_start = ReadInt(4);
                }

                if (md20 > 0)
                {
                    RemoveBytes(0, md20);
                }

                // remove extra chunks at the end
                if (to_remove_start > 0)
                {
                    RemoveBytes(to_remove_start, Data.Length - to_remove_start);
                }
            }
        }