Hakman Posted November 30, 2015 Posted November 30, 2015 (edited) Hello. As far as I understand, there are various assemblers like MASM, FASM, NASM, etc, which may differ in syntax. I'm about to begin learning and choose one to start with. I would like to choose assembler which syntax is as close as possible to what IDA pro produces. Which one should I pick? Edited November 30, 2015 by Hakman
simple Posted November 30, 2015 Posted November 30, 2015 I code MASM & NASM, and have looked at FASM sample codes and they're all more or less the same thing - variants of intel syntax. NASM or FASM is better to start with since they're cross platform, unlike MASM. The only other syntax I know of is gas/att, pretty different than intel but still pretty common so IMHO good idea to learn to at minimum read it because in everyday coding u will see it a lot.
Hakman Posted December 1, 2015 Author Posted December 1, 2015 (edited) Thanks for replies. 17 hours ago, simple said: I code MASM & NASM, and have looked at FASM sample codes and they're all more or less the same thing - variants of intel syntax. NASM or FASM is better to start with since they're cross platform, unlike MASM. The only other syntax I know of is gas/att, pretty different than intel but still pretty common so IMHO good idea to learn to at minimum read it because in everyday coding u will see it a lot. This is where my problem is. On one hand I want something simple, universal, cross-platform and not bloated with various specific macros. On the other hand my priority at the moment is to reverse engineer Windows applications, meaning I should stick to syntax that OllyDbg and IDA use. So, in such case, MASM it is I suppose? Edited December 1, 2015 by Hakman
kao Posted December 1, 2015 Posted December 1, 2015 There are 2 basic assembler syntaxes - Intel and AT&T. Windows reversing world mostly use Intel, Linux - AT&T. Directives, macroses and all the other sugarcoating - that's a minor detail, and you shouldn't worry much about it. IDA and Olly don't use them anyway. So, pick any assembler you like and learn it. Should you need it, you'll be able to switch to another one in a matter of hours.
simple Posted December 1, 2015 Posted December 1, 2015 I have used IDA maybe 5 or 6 times in my life, for me it does nothing that objdump or dumpbin don't already do, and objdump for example, even on windows, uses gas / att syntax. Gas is different, but it's still ASM so for me writing it is a pain in the @ss, but reading it's ok, & imho a well rounded ASM coder should be able to deal with it because it's fairly common. So stop talking about nasm, masm, fasm, download them all, try them all & do what works best 4 u ; )
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now