Reverse Engineering is probably the most difficult area in hacking. Most people don't understand reversing because it can be very complicated and requires many technical skills to accomplish. If you're still using only gdb for disassembling and debugging, you should be aware of better alternatives to make your life easier. Here are the top tool suites for reverse engineering.
Hex Ray's Interactive Disassembler is the world's most popular disassembler. IDA Pro combines an interactive, programmable, multi-processor disassembler coupled to a local and remote debugger and augmented by a complete plugin programming environment. The downside is the price for the full version; $1900 for a single computer license and $2800 to use on an unlimited number of computers. However, there is a more stripped down freeware version you can here.
Personally, I think IDA is great and I might write my own version for a future project, just for fun. I do encourage learning how disassemblers work under the hood, just in case you need to create the next gen of tools for reversing binaries.
Ghidra is an free and open source reverse engineering tool mostly written in Java, developed by the NSA. Oddly enough, Ghidra's existence was leaked via WikiLeaks back in March, 2017. Ghidra doesn't have a debugger but can disassemble every executable format for almost every instruction architecture including the Java Virtual Machine. If you're a fan of IDA but want a free alternative, Ghidra is very similar and may just suit your needs.
Radare2 is a free and open source framework for reverse engineering that contains every tool you'll need for cracking or patching any binary. Radare boasts being the best framework on the planet for reversers because of its incredible feature set and support for absolutely everything—executable formats, architectures, compilers, you name it. Compared to other tools, Radare has a very steep learning curve, which is a tradeoff for being so comprehensive. Many people in the Radare community are very skilled, but sometimes unfair to other tools such as IDA in comparison—though this is just from my observation.
Radare is an incredible tool and is used frequently in modern reverse engineering and binary exploitation tutorials on YouTube. Please learn how to use it, your life will be a lot easier once you overcome the learning curve.
Hopper is proprietary disassembler, decompiler and debugger for Linux and Mac OS X. Hopper costs $100, which is on the cheaper side of reverse engineering tool suites. Hopper can work with binaries written for the x86, ARM and PowerPC architectures and has an interface that is visually similar to XCode—if you're already familiar with and like XCode, your experience will pleasant. If you ever need to analyze an Objective-C or Swift binary, Hopper might just be your best option since most other disassemblers don't support the Apple languages.
Binary Ninja is a proprietary reverse engineering framework. When you buy Binary Ninja, you are essentially paying for a Python library that you can script, automate with Python and call into C/C++ libraries in the form of dylibs, shared objects or DLLs. The graphical application is built on top of their API and you can easily make your own GUI for Binary Ninja if you have access to it—which is given if you buy a commercial license. If you like IDA, you'll quickly find that Binary Ninja has a much nicer graph view and easier executable patching capabilities but does not yet have a decompiler or a debugger.
To be brutally honest, the true merits of Binary Ninja are not shown until you own the commerical version. You might have a better time using Radare and it's scripting engine if you need a highly scriptable interface.
There are other tool suites and standalone tools that you could get familiar with, but these should present you with some very good options to do your job faster and more enjoyably. Hopefully, you have found this short list helpful. I wish you safe travels and happy hacking!