Table of Contents

Class FastCilReassembler

Namespace
AsmResolver.PE.DotNet.Cil
Assembly
AsmResolver.PE.dll

Provides methods for patching references to metadata in raw method bodies efficiently.

public static class FastCilReassembler
Inheritance
FastCilReassembler
Inherited Members

Methods

PatchCode(Span<byte>, Func<MetadataToken, MetadataToken>)

Patches the provided code stream.

public static void PatchCode(Span<byte> codeStream, Func<MetadataToken, MetadataToken> tokenRewriter)

Parameters

codeStream Span<byte>

The code stream to patch.

tokenRewriter Func<MetadataToken, MetadataToken>

The function to use for translating old metadata tokens to new metadata tokens.

PatchExceptionHandlerSection(Span<byte>, Func<MetadataToken, MetadataToken>, bool)

Patches the provided raw extra section containing exception handlers.

public static void PatchExceptionHandlerSection(Span<byte> sectionData, Func<MetadataToken, MetadataToken> tokenRewriter, bool fatFormat)

Parameters

sectionData Span<byte>

The section data to patch.

tokenRewriter Func<MetadataToken, MetadataToken>

The function to use for translating old metadata tokens to new metadata tokens.

fatFormat bool

RewriteCode(ref BinaryStreamReader, BinaryStreamWriter, Func<MetadataToken, MetadataToken>)

Patches the provided code stream.

public static void RewriteCode(ref BinaryStreamReader reader, BinaryStreamWriter writer, Func<MetadataToken, MetadataToken> tokenRewriter)

Parameters

reader BinaryStreamReader

The input code stream to patch.

writer BinaryStreamWriter

The output code stream to write to.

tokenRewriter Func<MetadataToken, MetadataToken>

The function to use for translating old metadata tokens to new metadata tokens.

RewriteExceptionHandlerSection(ref BinaryStreamReader, BinaryStreamWriter, Func<MetadataToken, MetadataToken>, bool)

Patches the provided raw extra section containing exception handlers.

public static void RewriteExceptionHandlerSection(ref BinaryStreamReader reader, BinaryStreamWriter writer, Func<MetadataToken, MetadataToken> tokenRewriter, bool fatFormat)

Parameters

reader BinaryStreamReader

The input extra section data to patch.

writer BinaryStreamWriter

The output code stream to write to.

tokenRewriter Func<MetadataToken, MetadataToken>

The function to use for translating old metadata tokens to new metadata tokens.

fatFormat bool