There are a handful of exit codes with reserved special meanings:
Exit Code Number Meaning
1 Catchall for general errors
2 Misuse of shell builtins (according to Bash documentation)
126 Command invoked cannot execute
127 "command not found"
128+n Fatal error signal "n"
130 Script terminated by Ctrl-C
255* Exit status out of range
Everything below 125 is fair game for developers, and can really only be divined, as l0b0 notes in his answer, by reading the
man page for the application, or the source code, to determine what the code signifies (if, indeed, it is documented at all).