Skip to content

Instantly share code, notes, and snippets.

@Dragorn421
Last active June 8, 2026 09:07
Show Gist options
  • Select an option

  • Save Dragorn421/937dce411e81b326854c8c2cf1ae69e6 to your computer and use it in GitHub Desktop.

Select an option

Save Dragorn421/937dce411e81b326854c8c2cf1ae69e6 to your computer and use it in GitHub Desktop.
Dragorn's Licensing Plea

Dragorn's Licensing Plea - text licensed under CC0 - please copypaste

TLDR: Please attach the CC0 license to your decompilation and disassembly projects. If you don't, it unnecessarily restricts what others can do with them.

Plea maintained at https://gist.github.com/Dragorn421/937dce411e81b326854c8c2cf1ae69e6

I am not a lawyer and this is not legal advice, but I do have a deep understanding of what I'm writing about here.

First, a quick ELI5 on licensing

Due to laws and international treaties, anyone automatically has full copyright (all rights reserved) over their works. In order to share properly, one must explicit say the terms under which they want to share something. This is where (open-source) licenses come in: they grant rights to others about using, sharing and modifying your code.

More reading:

The CC0 license

The CC0 license allows one to dedicate their work to the public domain, waiving any rights they have over a work, as much as possible.

It also like basically every other license out there includes a limitations of liability/warranty in the sense that what you can't be held accountable for misuse of the work by others (with respect to applicable law).

If you own the rights to a work, applying the CC0 license makes it public domain: anyone can do literally whatever they want with it, including copying, modifying and sharing without restrictions, without acknowledgement.

If you own only partial rights to a work, you can still apply the license and only your rights will be waived. The remaining rights will still apply and the full work will not be public domain.

More reading: (note the full CC0 license is pretty short and worth reading in full)

Why CC0 is best for decompilations and disassemblies

It is not clear if decompiled code and disassemblies are copyright the original developers or copyright the decompiler/disassembling reverse-engineering people. You may have an opinion on the matter and it may differ from others'. It doesn't matter for the purpose of this plea.

However, any documentation on top of the decompiled code or disassembly, is definitely an original work from the reverse-engineering people. And those reverse-engineering people own the rights on that work.

Hence decomp/disasm projects would benefit from a license at least on that front. Here I suggest CC0 "public domain" because that's the "people can do whatever they want" approach that most people in reverse engineering seem to have.

However the true reason behind using CC0, is that as mentioned above it works by waiving rights "as much as possible". Applying CC0 does not affirm copyright over the work: it merely waives the affirmer's rights. This is best for decomp and disasm projects given that not everyone has the same opinion on the copyright state of the work.

Note that choosing to use CC0 (or choosing to not use CC0) does not make a difference for how legal your project may be: that's still up to courts to decide.

Tools and build systems

For tools and build systems which are definitively fully original works, regular software licenses such as the MIT license should be used.

Dragorn's Wager

Inspired by Pascal's Wager

                   +-------------------------------------------------+
                   |    LEGAL SITUATION OF DECOMP/DISASM PROJECTS    |
                   +------------------------+------------------------+
                   | Reverse engineer holds | Reverse engineer holds |
                   |    rights over the     |   NO rights over the   |
  v YOUR CHOICE v  | decomp/disasm project  | decomp/disasm project  |
+------------------+------------------------+------------------------+
| You apply CC0    |     The project is     | Users have zero rights |
|                  |     public domain      |   to use the project   |
+------------------+------------------------+------------------------+
| You don't (all   | Users have zero rights | Users have zero rights |
| rights reserved) |   to use the project   |   to use the project   |
+------------------+------------------------+------------------------+

Users have nothing to lose from you choosing CC0 for your decomp/disasm project, but they have a lot to gain!

@Dragorn421

Copy link
Copy Markdown
Author

Dragorn's Wager

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment