Class Arm64UnpackedUnwindInfo
- Namespace
- AsmResolver.PE.Exceptions
- Assembly
- AsmResolver.PE.dll
Represents an unpacked ARM64 .xdata unwind info record associated to a RUNTIME_FUNCTION of an ARM64 executable file.
public class Arm64UnpackedUnwindInfo : SegmentBase, ISegment, IOffsetProvider, IWritable, IArm64UnwindInfo, IUnwindInfo
- Inheritance
-
Arm64UnpackedUnwindInfo
- Implements
- Inherited Members
Properties
EpilogScopes
Gets a collection of epilog scopes defined in this xdata unwind info.
public IList<Arm64EpilogScope> EpilogScopes { get; }
Property Value
ExceptionHandler
When available, gets or sets a reference to the exception handler data.
public ISegmentReference ExceptionHandler { get; set; }
Property Value
ExceptionHandlerData
When available, gets or sets a reference to the exception handler data.
public ISegmentReference ExceptionHandlerData { get; set; }
Property Value
FunctionLength
Gets the number of instructions that this unwind info is protecting.
public uint FunctionLength { get; set; }
Property Value
UnwindCodes
Gets or sets the raw bytes of the unwind codes.
public byte[] UnwindCodes { get; set; }
Property Value
- byte[]
Version
Gets or sets the version of the xdata unwind info format.
public byte Version { get; set; }
Property Value
Remarks
Currently, only version 0 is defined. Values of 1-3 are not permitted.
Methods
FromReader(PEReaderContext, ref BinaryStreamReader)
Reads an .xdata unwind information record from the provided input stream.
public static Arm64UnpackedUnwindInfo FromReader(PEReaderContext context, ref BinaryStreamReader reader)
Parameters
context
PEReaderContextThe reader context.
reader
BinaryStreamReaderThe input stream.
Returns
- Arm64UnpackedUnwindInfo
The read unwind record.
GetPhysicalSize()
Computes the number of bytes that the structure contains.
public override uint GetPhysicalSize()
Returns
- uint
The number of bytes.
UpdateOffsets(in RelocationParameters)
Assigns a new file and virtual offset to the segment and all its sub-components.
public override void UpdateOffsets(in RelocationParameters parameters)
Parameters
parameters
RelocationParametersThe parameters containing the new offset information for the segment.
Write(BinaryStreamWriter)
Serializes the structure to an output stream.
public override void Write(BinaryStreamWriter writer)
Parameters
writer
BinaryStreamWriterThe output stream to write the data to.