nso2elf Brings ZBIC and LZ4 NSO Conversion to Nintendo Switch Analysis
Developer Eiffel2018 has released nso2elf, a Python-based alternative to nx2elf that adds ZBIC compression support for Nintendo Switch NSO files.

Dealing with newer Nintendo Switch binaries can be a headache when compression formats change. Developer Eiffel2018 has released nso2elf, a new Python-based alternative to nx2elf designed to tackle newer ARM64 NSO files that use ZBIC compression alongside older LZ4 formats.
The existing LZ4 decoder could not handle a newer NSO that used ZBIC compression. This tool converts ARM64 NSO files into ELF files for static analysis while preserving segment addresses, permissions, BSS, and available NX metadata. It also exposes dynamic symbols, relocation tables, MOD0, and supported unwind metadata, alongside printing segment info and SHA-256 digests.
How to try it
- Ensure you have Python 3.10 or newer installed.
- For ZBIC support, install the optional dependency.
- Run the conversion script to generate your ELF file.
The tool has passed 20 automated tests across Windows and Linux using Python 3.10 and 3.12. Future updates plan to add identification for Unity, Unreal Engine, and Godot.

