示例#1
0
 public override void VisitImportTable(ImportTable it)
 {
     m_textWriter.BaseStream.Position = m_mdWriter.ImportTablePosition;
     m_textWriter.Write(it.ImportLookupTable.Value);
     m_textWriter.Write(it.DateTimeStamp);
     m_textWriter.Write(it.ForwardChain);
     m_textWriter.Write(it.Name.Value);
     m_textWriter.Write(it.ImportAddressTable.Value);
     m_textWriter.Write(new byte [20]);
 }
示例#2
0
        public override void VisitImportTable(ImportTable it)
        {
            m_binaryReader.BaseStream.Position = m_image.ResolveVirtualAddress(
                m_image.PEOptionalHeader.DataDirectories.ImportTable.VirtualAddress);

            it.ImportLookupTable = new RVA(m_binaryReader.ReadUInt32());
            it.DateTimeStamp     = m_binaryReader.ReadUInt32();
            it.ForwardChain      = m_binaryReader.ReadUInt32();
            it.Name = new RVA(m_binaryReader.ReadUInt32());
            it.ImportAddressTable = new RVA(m_binaryReader.ReadUInt32());
        }
示例#3
0
 internal Image()
 {
     m_dosHeader          = new DOSHeader();
     m_peFileHeader       = new PEFileHeader();
     m_peOptionalHeader   = new PEOptionalHeader();
     m_sections           = new SectionCollection();
     m_importAddressTable = new ImportAddressTable();
     m_importTable        = new ImportTable();
     m_importLookupTable  = new ImportLookupTable();
     m_hintNameTable      = new HintNameTable();
     m_mdRoot             = new MetadataRoot(this);
 }
示例#4
0
文件: Image.cs 项目: NALSS/Telegraph
 internal Image()
 {
     m_dosHeader = new DOSHeader ();
     m_peFileHeader = new PEFileHeader ();
     m_peOptionalHeader = new PEOptionalHeader ();
     m_sections = new SectionCollection ();
     m_importAddressTable = new ImportAddressTable ();
     m_importTable = new ImportTable ();
     m_importLookupTable = new ImportLookupTable ();
     m_hintNameTable = new HintNameTable ();
     m_mdRoot = new MetadataRoot (this);
 }
示例#5
0
        public override void VisitImportTable(ImportTable it)
        {
            if (m_image.PEOptionalHeader.DataDirectories.ImportTable.VirtualAddress == RVA.Zero)
            {
                return;
            }

            SetPositionToAddress(m_image.PEOptionalHeader.DataDirectories.ImportTable.VirtualAddress);

            it.ImportLookupTable = ReadRVA();
            it.DateTimeStamp     = m_binaryReader.ReadUInt32();
            it.ForwardChain      = m_binaryReader.ReadUInt32();
            it.Name = ReadRVA();
            it.ImportAddressTable = ReadRVA();
        }
示例#6
0
        public override void VisitImportTable(ImportTable it)
        {
            if (m_image.PEOptionalHeader.DataDirectories.ImportTable.VirtualAddress == RVA.Zero)
                return;

            SetPositionToAddress (m_image.PEOptionalHeader.DataDirectories.ImportTable.VirtualAddress);

            it.ImportLookupTable = ReadRVA ();
            it.DateTimeStamp = m_binaryReader.ReadUInt32 ();
            it.ForwardChain = m_binaryReader.ReadUInt32 ();
            it.Name = ReadRVA ();
            it.ImportAddressTable = ReadRVA ();
        }
示例#7
0
 public override void VisitImportTable(ImportTable it)
 {
     it.ImportAddressTable = new RVA (0x2000);
 }
示例#8
0
 public override void VisitImportTable(ImportTable it)
 {
     it.ImportAddressTable = new RVA(0x2000);
 }
示例#9
0
        public override void VisitImportTable(ImportTable it)
        {
            m_binaryReader.BaseStream.Position = m_image.ResolveVirtualAddress (
                m_image.PEOptionalHeader.DataDirectories.ImportTable.VirtualAddress);

            it.ImportLookupTable = new RVA (m_binaryReader.ReadUInt32 ());
            it.DateTimeStamp = m_binaryReader.ReadUInt32 ();
            it.ForwardChain = m_binaryReader.ReadUInt32 ();
            it.Name = new RVA (m_binaryReader.ReadUInt32 ());
            it.ImportAddressTable = new RVA (m_binaryReader.ReadUInt32 ());
        }
示例#10
0
 public override void VisitImportTable(ImportTable it)
 {
     m_textWriter.BaseStream.Position = m_mdWriter.ImportTablePosition;
     m_textWriter.Write (it.ImportLookupTable.Value);
     m_textWriter.Write (it.DateTimeStamp);
     m_textWriter.Write (it.ForwardChain);
     m_textWriter.Write (it.Name.Value);
     m_textWriter.Write (it.ImportAddressTable.Value);
     m_textWriter.Write (new byte [20]);
 }