A quick overview of what makes IDA cool for those unfamiliar with it:<p>* It has one of the best decompilers available<p>* It supports a ridiculous number of platforms<p>* I trust its disassembler (especially for mainstream languages) more than almost any other disassembler<p>* Demangling of Swift names is a nice quality of life improvement, Swift moves fast and is hard to keep up with<p>* Still the best disassembler and machine code reversing tool out there<p>If you can't afford IDA, it is very expensive, there are a lot of great alternatives:<p>* Hopper (mac only). Its disassembler, is not so great, it gets confused and fails to find code in Swift apps pretty often. It is still generally good and with some encouragement you can get it to do a competent job.<p>* radare2. Works on a lot of more esoteric processors. Great for when working on small firmwares from less common processors. Not so great at big files. Slow. Very powerful regardless. Open source.<p>* ImmunityDbg still works for Win<p>* Other tools, just search.<p>The more time you spend looking at disassembled machine code the more valuable IDA gets. But you really have to do a lot of RCE. Most people first getting into RCE really think they need IDA when they haven't even cracked the docs for their target environment yet or lack fundamental knowledge about how CPUs work, which holds them back far more than a second class disassembler ever has.