Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/isaacmarovitz/pe-parser

PE Parsing, but blazing fast
https://github.com/isaacmarovitz/pe-parser

binary-analysis cross-platform parser pe pe-format pe-parser rust

Last synced: 17 days ago
JSON representation

PE Parsing, but blazing fast

Awesome Lists containing this project

README

        

# [PE Parser](https://docs.rs/crate/pe-parser/latest)

[![Build & Test](https://github.com/IsaacMarovitz/pe-parser/actions/workflows/rust.yml/badge.svg)](https://github.com/IsaacMarovitz/pe-parser/actions/workflows/rust.yml)
[![Fuzzing](https://github.com/IsaacMarovitz/pe-parser/actions/workflows/cflite_batch.yml/badge.svg)](https://github.com/IsaacMarovitz/pe-parser/actions/workflows/cflite_batch.yml)

A blazing fast 🔥 PE Parser written in Rust

## Motivation
The main goals of `pe-parser` is to write something suitable for a PE Loader.

## Is editing supported?
Currently no, but it wouldn't be too difficult to add from the current backbone.

## How does it handle unsual or malformed PEs?
As long as the PE conforms to the standard outlined in Microsoft's documentation, it should read fine. Malformed PEs would likely run into issues of either returning an error or misreading data.

## What is parsed right now?
- COFF Header
- Optional Header
- Data Directories
- Section Tables/Headers

## What is not parsed yet?
- COFF Relocations
- COFF Line Numbers
- COFF Symbol Table
- COFF String Table
- Certificate Table
- Delay-Load Import Table
- .debug Section
- .drectve Section
- .edata Section
- .idata Section
- .pdata Section
- .reloc Section
- .tls Section
- Load Config Structure
- .rsrc Section
- .cormeta Section
- .sxdata Section