예제 #1
0
        public void LoadData()
        {
            if (ntHeader.IsManagedAssembly)
            {
                image.Stream.Seek(ntHeader.OptionalHeader.DataDirectories[(int)DataDirectoryName.Clr].targetOffset.FileOffset, SeekOrigin.Begin);

                netHeaderOffset = (uint)image.Position;
                netHeader       = image.ReadStructure <Structures.IMAGE_COR20_HEADER>();

                Section targetsection = Section.GetSectionByFileOffset(ntHeader.Sections, netHeaderOffset);
                offsetConverter = new OffsetConverter(targetsection);

                LoadDirectories();
            }
        }
예제 #2
0
        public void LoadData()
        {
            if (ntHeader.IsManagedAssembly)
            {

                image.stream.Seek(ntHeader.OptionalHeader.DataDirectories[(int)DataDirectoryName.Clr].targetOffset.FileOffset, SeekOrigin.Begin);

                netHeaderOffset = (uint)image.Position;
                netHeader = image.ReadStructure<Structures.IMAGE_COR20_HEADER>();

                Section targetsection = Section.GetSectionByFileOffset(ntHeader.Sections, netHeaderOffset);
                offsetConverter = new OffsetConverter(targetsection);

                LoadDirectories();

            }
        }