# Washi1337/AsmResolver

A library for creating, reading and editing PE files and .NET modules.

Repository: https://github.com/Washi1337/AsmResolver
Canonical: https://ross.abutalabs.com/products/asmresolver
Homepage: https://docs.washi.dev/asmresolver/
Language: C#
License: MIT
License Family: permissive
Topics: disassembler, dotnet, reader, writer, cil, il, msil, portable-executable, pe, reverse-engineering, assembler, malware-analysis, parser
Last push: 2026-08-29T16:49:18+00:00

## Health v2 (maintenance only)
Score: 94/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 100, release rhythm 83, longevity 100
- inputs: {"age_days": 4942, "days_push": 4, "days_rel": 39, "gap_med": 69, "n_releases_24m": 2}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1117, forks 154 (observed 2026-09-01T02:13:58.164869+00:00)

## What it is
AsmResolver is a .NET library for reading, modifying, and writing Portable Executable (PE) files, including those with .NET metadata. It provides high-level object models for PE structures, .NET modules, method bodies, and PDB symbols while remaining robust against malformed or obfuscated binaries.

## Use cases
- parse and inspect PE file headers and sections
- edit or patch .NET assemblies programmatically
- reconstruct import address tables in binaries
- analyze obfuscated or malformed .NET modules
- read PDB and Portable PDB symbol files
- build tools for malware analysis of Windows executables
- clone or import .NET metadata between assemblies

## When to choose
- you need a fully managed, cross-platform API for PE and .NET binary manipulation
- you are building reverse-engineering, deobfuscation, or malware-analysis tooling in .NET
- you need fine-grained control over PE file layout and low-level structures
- you want to read PDB symbols without native dependencies like DIA

## When to avoid
- you only need to run or decompile .NET assemblies rather than edit them
- you need disassembly of arbitrary native machine code beyond PE structure handling
- you work outside the .NET ecosystem and cannot use .NET libraries

## Facets
- artifact type: library
- maturity: active
- function: parser, serialization, reverse-engineering, developer-tools
- domain: reverse-engineering, security, developer-tools, files
- platform: cross-platform, windows, dotnet
- tags: pe-files, dotnet-metadata, cil, malware-analysis, binary-patching, pdb-symbols, linux, macos

## Member repositories
- Washi1337/AsmResolver (main) score 94

## Provenance
- Observed fields: from GitHub, fetched 2026-09-01T02:13:58.164869+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:41:56.819933+00:00, confidence not recorded.
  - readme: https://github.com/Washi1337/AsmResolver (fetched 2026-09-01T02:13:58.164869+00:00, sha 4ef5f7ccdbc9)
  - homepage: https://docs.washi.dev/asmresolver/ (fetched 2026-08-29T12:45:38.273583+00:00, sha 2cf3eae5934d)
- Data as of 2026-08-30T08:39:29.467469+00:00.
