Table of Contents

Class UnmanagedPEFileBuilder.BuilderContext

Namespace
AsmResolver.PE.Builder
Assembly
AsmResolver.PE.dll

Provides a workspace for UnmanagedPEFileBuilder.

public class UnmanagedPEFileBuilder.BuilderContext : PEFileBuilderContext
Inheritance
UnmanagedPEFileBuilder.BuilderContext
Inherited Members

Constructors

BuilderContext(PEImage, PEImage?)

Creates a new builder context.

public BuilderContext(PEImage image, PEImage? baseImage)

Parameters

image PEImage

The image to build a PE file for.

baseImage PEImage

The template image to base the file on.

Properties

BaseImage

Gets the template image to base the file on.

public PEImage? BaseImage { get; }

Property Value

PEImage

ClonedSections

Gets a collection of sections that were cloned from the template file.

public List<PESection> ClonedSections { get; }

Property Value

List<PESection>

ImportTrampolines

Gets the trampolines table for all imported symbols.

public TrampolineTableBuffer ImportTrampolines { get; }

Property Value

TrampolineTableBuffer

TlsDirectory

Gets the TLS directory to use in the final PE file. This is not necessarily the same as the image's TLS directory in case the directory needed to be augmented (e.g., when extra TLS initialization is required by import trampolines).

public TlsDirectory? TlsDirectory { get; set; }

Property Value

TlsDirectory

VTableTrampolines

Gets the trampolines table for all fixed up managed method addresses.

public TrampolineTableBuffer VTableTrampolines { get; }

Property Value

TrampolineTableBuffer

Methods

TryGetSectionContainingRva(uint, out PESection?)

Searches for a cloned section containing the provided RVA.

public bool TryGetSectionContainingRva(uint rva, out PESection? section)

Parameters

rva uint

The RVA.

section PESection

The section.

Returns

bool

true if the section was found, false otherwise.