


AronaUnflatd is a specialized tool that reconstructs FlatBuffer schema files (.fbs) from decompiled C# code using advanced static analysis techniques.
Features
- ๐ ๏ธ Converts decompiled C# classes to FlatBuffer schemas
- ๐งฉ Preserves table structures, fields, and attributes
- ๐ Reconstructs enum definitions with values
- ๐ Handles nested tables and union types
- ๐ Processes entire directories recursively
- ๐ Maintains field ordering and type information
- โ
Validation of generated schemas
- ๐ Verbose logging for debugging
Installation
From Source
git clone https://github.com/arisu-archive/arona-unflatd
cd arona-unflatd
make build
Go Install
go install github.com/arisu-archive/arona-unflatd@latest
Usage
Basic Conversion
arona-unflatd decompile \
-i ./decompiled_csharp \
-o ./schema_output
Technical Overview
Parsing Pipeline
- Lexical Analysis - Tree-sitter tokenizes C# source
- Concrete Syntax Tree Construction - Builds a tolerant Tree-sitter C# tree
- Pattern Matching - Extracts relevant declarations with S-expression queries
- Schema Recovery - Applies FlatBuffers-specific inference rules
- IDL Generation - Deterministically renders
.fbs files
Key Components
| Component |
Responsibility |
Tech Stack |
| Parser Engine |
Syntax tree construction |
Tree-sitter C# |
| Declaration Extractor |
Query capture and node traversal |
Go + C bindings |
| Recovery Rules |
C# pattern to FBS conversion |
Go rules |
| Schema Generator |
Deterministic IDL formatting |
Go renderer |
Development
Build System
make tidy # Format code and clean deps
make audit # Run security checks (govulncheck)
make test # Run tests with coverage
make build # Build the CLI into ./tmp/bin
Contributing
We welcome contributions! Please see our Contribution Guidelines and:
- Follow Go style guidelines
- Include Ginkgo test coverage
- Update documentation accordingly
License
This project is licensed under the MIT License - see the LICENSE file for details.
Disclaimer: This tool requires properly decompiled C# code. Schema recovery accuracy depends on original binary structure preservation during decompilation.