AsmResolver.HintName.FromReadingContext C# (CSharp) Метод

FromReadingContext() статический приватный Метод

static private FromReadingContext ( ReadingContext context ) : HintName
context ReadingContext
Результат HintName
        internal static HintName FromReadingContext(ReadingContext context)
        {
            var reader = context.Reader;
            var hintName = new HintName
            {
                StartOffset = reader.Position,
                Hint = reader.ReadUInt16(),
                Name = reader.ReadAsciiString(),
            };

            if (reader.Position % 2 != 0)
                reader.Position++;

            return hintName;
        }

Usage Example

Пример #1
0
        internal static ImageSymbolImport FromReadingContext(ReadingContext context)
        {
            var reader      = context.Reader;
            var application = context.Assembly;

            var optionalHeader = application.NtHeaders.OptionalHeader;

            var import = new ImageSymbolImport(optionalHeader.Magic == OptionalHeaderMagic.Pe32Plus
                ? reader.ReadUInt64()
                : reader.ReadUInt32());

            if (import.Lookup == 0)
            {
                return(import);
            }

            import.IsImportByOrdinal = import.Lookup >> (optionalHeader.Magic == OptionalHeaderMagic.Pe32Plus ? 63 : 31) == 1;

            if (!import.IsImportByOrdinal)
            {
                import.HintName =
                    HintName.FromReadingContext(context.CreateSubContext(application.RvaToFileOffset(import.HintNameRva)));
            }

            return(import);
        }