A curated list of awesome Assembler :)
is a fast assembly language compiler for the x86 architecture processors, which does multiple passes to optimize the size of generated machine code
is an x86 assembler that uses the Intel syntax for MS-DOS and Microsoft Windows
is an assembler and disassembler for the Intel x86 architecture
is an assembler and disassembler for the Intel x86 architecture. Yasm is a full rewrite of Netwide Assembler (NASM).
ILAsm (IL Assembler) generates a portable executable (PE) file from Common Intermediate Language (CIL) code
is an x86-64 assembler embedded in Python which targets high-performance computing audience. PeachPy can generate object files or assembly listings for Windows, Linux, Mac OS X, Native Client, and Go from the same source
Flasm is a free command line assembler/disassembler of Flash ActionScript bytecode. It lets you make changes to any SWF. Flasm fully supports SWFs produced by Macromedia Flash 8 and earlier.
XEDParse is an open source (LGPLv3) library for assembling single x86(-x64) instructions from text to bytes. Useful to integrate in reverse engineering frameworks to quickly assemble instructions.
High Level Assembly (HLA) is an assembly language developed by Randall Hyde. It allows the use of higher-level language constructs to aid both beginners and advanced assembly developers. It fully supports advanced data types and object-oriented assembly language programming. It uses a syntax loosely based on several high-level languages (HLL), such as Pascal, Ada, Modula-2, and C++, to allow creating readable assembly language programs, and to allow HLL programmers to learn HLA as fast as possible.
Disassembler & Debuggers
32/64-bit proprietary software. wiki
The freeware version of IDA v5.0
is an x86 debugger that emphasizes binary code analysis, which is useful when source code is not available. most popular!
An open-source x64/x32 debugger for windows.
Visual DuxDebugger is a 64-bit debugger disassembler for Windows executables, especially useful when source code is unavailable. The user interface is very intuitive so it makes very simple any task in reverse.
Immunity Debugger is a powerful new way to write exploits, analyze malware, and reverse engineer binary files. It builds on a solid user interface with function graphing, the industrys first heap analysis tool.
Hopper is a binary disassembler, decompiler and debugger for 32bits and 64bits executables. Hopper can disassemble Mac (Intel 32/64), iOS (ARM/Intel), PE (PE32/32+/64) and ELF (Intel 32/64 and ARM).
WinDbg is a multipurposed debugger for Microsoft Windows, distributed on the web by Microsoft as part of the Debugging Tools for Windows.
Syser Kernel Debugger is designed for Windows NT Family based on X86 platform. It is a kernel debugger with full-graphical interfaces and supports assembly debugging and source code debugging.
An open-source complete framework for reverse-engineering and analyzing binaries; composed of a set of small utilities that can be used together or independently from the command line.
Plasma is an interactive disassembler for x86/ARM/MIPS. It can generates indented pseudo-code with colored syntax.
Microsoft Visual Studio is an integrated development environment (IDE) from Microsoft.
RadASM — a free Integrated development environment for Microsoft Windows originally designed for writing programs in assembly language. It has a flexible system of configuration files, and can be used to develop software in high-level programming languages and to author documents based on a markup language. It was created by the programmer Ketil Olsen (KetilO).
Easy Code is the visual assembly programming environment made to build 32-bit Windows applications. The Easy Code interface, looking like Visual Basic, allows you to program Windows assembler applications (executable files, dynamic and static libreries, COFF object files, console applications, drivers and services) done in an easy way as was never possible before
WinAsm Studio is a free Integrated Development Environment IDE for developing 32-bit Windows and 16-bit DOS programs using the Assembler.
IDE for MASM written in Delphi. What? It is dev brain.
ASM Builder is a free Integrated Development Environment IDE for developing 32-bit Windows programs using the Assembler. MASM Builder contains many useful features which will assist you in creating Windows API based programs.
SASM (SimpleASM) - simple Open Source crossplatform IDE for NASM, MASM, GAS, FASM assembly languages. SASM has syntax highlighting and debugger. The program works out of the box and is great for beginners to learn assembly language. SASM is translated into Russian and English. Licensed under the GNU GPL v3.0. Based on the Qt.
32-bit, 64-bit, SSE, and AVX by Daniel Kusswurm
Common Intermediate Language (wiki) by Serge Lidin
by Kip Irvine (great book!)
by Randall Hyde
- Unix Assembly Language Programming
- Linux Assembly
- PPR: Learning Assembly Language
- Assembly Language Programming Examples
- Authoring Windows Applications In Assembly Language
- Assembly Optimization Tips by Mark Larson
- Introduction to programming using Linux assembly language
- x86 Assembly Guide
- x86 Assembly Wikibook
- x86 Disassembly Wikibook
- Software written primarily in assembly language
- Novice and Advanced Assembly resources for x86 Platform
- Introductory Intel x86: Architecture, Assembly, Applications & Alliteration
- PC Assembly Language
- Programmming Community Curated Resources for Learning Assembly Language