Some free quality resources, ready to use:
- Intel CPU programming guide https://www.intel.com/content/dam/www/public/us/en/documents...
- Calling conventions https://en.wikipedia.org/wiki/X86_calling_conventions https://en.wikibooks.org/wiki/X86_Disassembly/Calling_Conven...
- Web compiler output viewer https://godbolt.org/
- Operation code (opcode) reference http://ref.x86asm.net/
- Disassembler/debugger https://github.com/eteran/edb-debugger, https://x64dbg.com
- Disassembler/Reverse engineering tools http://hte.sourceforge.net/ https://github.com/radareorg/cutter
And this: https://github.com/codilime/veles (binary analysis tool)