https://github.com/nesdoug
It's stable now. And worked on 6 of 7 files that I tested. (Haven't had time to look into why the 1 didn't work. It seems to do great on smaller files). Definitely not 'finished'. Feel free, any of you, to make changes to this file, as you see fit. It works with Python 3, on Windows. May work on other platforms, IDK. Reassembles with asm6.
Other uses of this file.
1.It tells you (in the command line dialog) lots about the file. How many banks. What mapper. Mirroring. Etc. Some emulators do this too. No big deal.
2.It splits the PRG-ROM and CHR-ROM and saves them (minus the header) as 2 binary files. This might be useful to people planning to burn actual hardware ROMs.
Again, feel free, to fix or improve this file. I know nothing about Python. Also, read the usage for lots of ominous warnings about how it can delete / erase files if you are not careful.
EDIT - you will have to edit line 34 of the python script (path to file) to make this work. See usage for more info.
EDIT2 - This is a no brainer disassembler...you (maybe) will have to literally do nothing to the output file to get it to reassemble correctly with asm6.
EDIT3 - Only for whole .NES files. Won't work for anything else. Maybe I'll edit it later to be more general.