SectionInfo
Namespace: Dotsider.Core.Analysis.Models
Assembly: Dotsider.Core.dll
Information about a single PE section (e.g., .text, .rsrc, .reloc).
public sealed record SectionInfo : IEquatable<SectionInfo>Inheritance
Section titled “Inheritance”Object → SectionInfo
Implements
Section titled “Implements”Constructors
Section titled “Constructors”SectionInfo(string, int, int, int, int, SectionCharacteristics)
Section titled “SectionInfo(string, int, int, int, int, SectionCharacteristics)”Information about a single PE section (e.g., .text, .rsrc, .reloc).
Parameters:
Name(String): The section name (up to 8 characters).VirtualAddress(Int32): The RVA of the section when loaded into memory.VirtualSize(Int32): The size of the section in memory.RawDataOffset(Int32): The file offset of the section’s raw data.RawDataSize(Int32): The size of the section’s raw data on disk.Characteristics(SectionCharacteristics): Section characteristic flags (readable, writable, executable, etc.).
public SectionInfo(string Name, int VirtualAddress, int VirtualSize, int RawDataOffset, int RawDataSize, SectionCharacteristics Characteristics)Properties
Section titled “Properties”Characteristics
Section titled “Characteristics”Section characteristic flags (readable, writable, executable, etc.).
Returns: SectionCharacteristics
public SectionCharacteristics Characteristics { get; init; }The section name (up to 8 characters).
Returns: String
public string Name { get; init; }RawDataOffset
Section titled “RawDataOffset”The file offset of the section’s raw data.
Returns: Int32
public int RawDataOffset { get; init; }RawDataSize
Section titled “RawDataSize”The size of the section’s raw data on disk.
Returns: Int32
public int RawDataSize { get; init; }VirtualAddress
Section titled “VirtualAddress”The RVA of the section when loaded into memory.
Returns: Int32
public int VirtualAddress { get; init; }VirtualSize
Section titled “VirtualSize”The size of the section in memory.
Returns: Int32
public int VirtualSize { get; init; }Methods
Section titled “Methods”Deconstruct(out string, out int, out int, out int, out int, out SectionCharacteristics)
Section titled “Deconstruct(out string, out int, out int, out int, out int, out SectionCharacteristics)”Parameters:
Name(String)VirtualAddress(Int32)VirtualSize(Int32)RawDataOffset(Int32)RawDataSize(Int32)Characteristics(SectionCharacteristics)
public void Deconstruct(out string Name, out int VirtualAddress, out int VirtualSize, out int RawDataOffset, out int RawDataSize, out SectionCharacteristics Characteristics)Equals(object?)
Section titled “Equals(object?)”Parameters:
obj(Object)
Returns: Boolean
public override bool Equals(object? obj)Equals(SectionInfo?)
Section titled “Equals(SectionInfo?)”Parameters:
other(SectionInfo)
Returns: Boolean
public bool Equals(SectionInfo? other)GetHashCode()
Section titled “GetHashCode()”Returns: Int32
public override int GetHashCode()ToString()
Section titled “ToString()”Returns: String
public override string ToString()Members
Section titled “Members”operator !=(SectionInfo?, SectionInfo?)
Section titled “operator !=(SectionInfo?, SectionInfo?)”Parameters:
left(SectionInfo)right(SectionInfo)
Returns: Boolean
public static bool operator !=(SectionInfo? left, SectionInfo? right)operator ==(SectionInfo?, SectionInfo?)
Section titled “operator ==(SectionInfo?, SectionInfo?)”Parameters:
left(SectionInfo)right(SectionInfo)
Returns: Boolean
public static bool operator ==(SectionInfo? left, SectionInfo? right)