public VTableFixupTable Clone()
        {
            var copy = new VTableFixupTable();

            CopyTo(copy);

            return(copy);
        }
 protected void CopyTo(VTableFixupTable copy)
 {
     foreach (var childNode in _list)
     {
         var copyChildNode = childNode.Clone();
         copy._list.Add(copyChildNode);
         copyChildNode._parent = this;
     }
 }
        public VTableFixupTable GetOrCreateTable()
        {
            if (_table == null)
            {
                _table = new VTableFixupTable();
            }

            return(_table);
        }
        private static VTableFixupTable Load(IBinaryAccessor accessor, PEImage pe, int size)
        {
            var table = new VTableFixupTable();

            long endOffset = accessor.Position + size;

            while (accessor.Position < endOffset)
            {
                var entry = VTableFixupEntry.Load(accessor, pe);
                entry._parent = table;
                table._list.Add(entry);
            }

            return(table);
        }