๐Ÿ“ฆ tolik518 / JackTheEnumRipper

๐Ÿ“„ README.md ยท 99 lines
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99<p align="center">    
	<img src="https://github.com/tolik518/JackTheEnumRipper/assets/3026792/2bd482c4-ef87-40fd-aa16-57c87af617de">    
</p>
<h1 align="center">Jack the Enum Ripper</h1>

<p align="center">    
	Jack the Enum Ripper is a CLI tool designed to extract enums from .NET assemblies and output them in various formats. This tool supports both .NET Framework 4.8 and .NET 8.0.
</p>

## Table of Contents

- [Features](#features)
- [Getting Started](#getting-started)
  - [Usage](#usage)
  - [Example](#example)
- [Building](#building)
  - [Prerequisites](#prerequisites)
  - [Steps](#steps)
- [Contributing](#contributing)
- [License](#license)

## Features

- **Dump Enums**: Load a .NET assembly (.exe or .dll) to dump all enumeration types.
- **Output Formats**: Supports exporting enums into multiple formats, including C#, JSON, INI, PHP, and Rust, adhering to each language's conventions.

## Getting Started

### Usage

Run `JackTheEnumRipper.exe` from the command line with the following syntax:

```
JackTheEnumRipper.exe <path_to_assembly> [format]
```
_if you have compatibility issues, you can alternatively run JackTheEnumRipper_net481.exe_

#### Formats

- `--json`: Output enums in JSON format
- `--ini`: Output enums in INI format
- `--php`: Output enums in PHP format
- `--rust`: Output enums in Rust format
- `--cs`: Output enums in C# format

If no options are specified, the tool defaults to exporting enums in C# format.

### Example

To extract enums from `MyExecutable.exe` in Rust format:

```
JackTheEnumRipper.exe path\to\MyExecutable.exe --rust
```

This will create a directory named `Enums.MyExecutable` in the same location as `MyExecutable.exe`, containing the extracted enums in Rust format.

You can alternatively just drag and drop the assembly to the `JackTheEnumRipper.exe`

## Building

### Prerequisites

- .NET Framework 4.8 SDK or .NET 8.0 SDK, depending on your target environment.
- Recommended: Visual Studio 2019 or newer

### Steps

1. Clone the repository or download the source code
2. Open the solution in Visual Studio
3. Build the project for .NET Framework 4.8 or .NET 8.0 as required
4. The `JackTheEnumRipper.exe` executable is generated in `bin/Release` or `bin/Debug`


## Contributing

Contributions are welcome! If you have suggestions for improvements, please fork the repository and submit a pull request, or open an issue to discuss your ideas.

## License

Jack the Enum Ripper is open-source software licensed under the MIT License. See the `LICENSE` file for more details.

```                                                                                
   โ–„โ–ˆโ–ˆโ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–ˆโ–ˆโ–„  
   โ–ˆโ–€                                                                       โ–€โ–ˆ  
   โ–ˆ      โ–€โ–ˆโ–ˆโ–ˆ   โ–„       โ–„โ–„   โ–ˆโ–ˆ   โ–„    T   โ–„โ–ˆโ–ˆโ–€โ–€โ–€โ–€ โ–ˆโ–„   โ–ˆโ–ˆ โ–ˆโ–ˆ โ–ˆโ–ˆ โ–ˆโ–ˆโ–„   โ–„โ–ˆโ–ˆ  โ–ˆ  
   โ–ˆ       โ–ˆโ–ˆ  โ–„โ–ˆโ–€โ–ˆโ–„  โ–„โ–ˆโ–ˆโ–ˆโ–€โ–ˆโ–„ โ–ˆโ–ˆโ–„โ–ˆโ–ˆโ–€    H   โ–ˆโ–ˆโ–ˆโ–„โ–„โ–„  โ–ˆโ–ˆโ–ˆโ–„ โ–ˆโ–ˆ โ–ˆโ–ˆ โ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆโ–ˆโ–„โ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆ  
   โ–ˆ   โ–„โ–„  โ–ˆโ–ˆ โ–„โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–„ โ–ˆโ–ˆโ–ˆโ–„    โ–ˆโ–ˆโ–€โ–ˆโ–„     E   โ–ˆโ–ˆโ–ˆโ–€โ–€   โ–ˆโ–ˆ โ–€โ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆโ–„โ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆ โ–ˆโ–ˆ  โ–ˆ  
   โ–ˆ  โ–ˆโ–ˆโ–ˆโ–„โ–ˆโ–ˆโ–ˆ โ–ˆโ–€  โ–€โ–ˆโ–€  โ–€โ–ˆโ–ˆโ–ˆโ–ˆโ–€ โ–€โ–ˆ โ–€โ–ˆโ–ˆ        โ–€โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ โ–€โ–ˆ   โ–€โ–ˆ โ–€โ–ˆโ–ˆโ–ˆโ–€ โ–ˆโ–ˆโ–€    โ–ˆโ–ˆ  โ–ˆ  
   โ–ˆ   โ–€โ–€โ–€โ–€โ–€       โ–„โ–„โ–„โ–„โ–„โ–„      โ–„โ–„โ–„โ–„โ–„โ–„   โ–„โ–„โ–„โ–„โ–„โ–„   โ–„โ–„โ–„โ–„โ–„โ–„โ–„  โ–„โ–„โ–„โ–„โ–„โ–„             โ–ˆ  
   โ–ˆ              โ–ˆโ–ˆโ–ˆโ–€โ–€โ–ˆโ–ˆโ–ˆ โ–„โ–„ โ–ˆโ–ˆโ–ˆโ–€โ–€โ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆโ–€โ–€โ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆโ–ˆโ–€โ–€โ–€  โ–ˆโ–ˆโ–ˆโ–€โ–€โ–ˆโ–ˆโ–ˆ            โ–ˆ  
   โ–ˆ              โ–ˆโ–ˆโ–ˆ โ–„โ–ˆโ–€     โ–ˆโ–ˆโ–ˆโ–„โ–„โ–ˆโ–ˆโ–€ โ–ˆโ–ˆโ–ˆโ–„โ–„โ–ˆโ–ˆโ–€ โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–€  โ–ˆโ–ˆโ–ˆ โ–„โ–ˆโ–€             โ–ˆ  
   โ–ˆ              โ–ˆโ–ˆโ–ˆโ–€โ–€โ–ˆโ–ˆโ–„ โ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆโ–€โ–€    โ–ˆโ–ˆโ–ˆโ–€โ–€    โ–ˆโ–ˆโ–ˆ      โ–ˆโ–ˆโ–ˆโ–€โ–€โ–ˆโ–ˆโ–„            โ–ˆ  
   โ–ˆ        โ–„โ–„     โ–€โ–ˆ  โ–ˆโ–€โ–€โ–„โ–ˆโ–€โ–„โ–ˆโ–ˆโ–ˆโ–„    โ–„โ–ˆโ–ˆโ–ˆโ–„    โ–„โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–„โ–€โ–ˆโ–ˆ   โ–ˆโ–€   โ–„โ–„       โ–ˆ  
   โ–ˆ       โ–ˆโ–ˆโ–ˆโ–ˆโ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–„โ–ˆโ–ˆโ–ˆโ–ˆ      โ–ˆ  
   โ–ˆโ–ˆโ–„      โ–€โ–€                                                      โ–€โ–€     โ–„โ–ˆโ–ˆ  
    โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€โ–€   
 ```