I would say, one important step is learning Java and JVM. Sounds absurdic, but yes. It will teach you such important concepts as registers, low-level data types, stack, pseudocode (AKA intermediate language).
Also, Java is such an easy programming language. JVM code is usually very clean and easy to learn. (My book has some examples of JVM code.)
Or learn C# and .NET --- for those who are into Windows and Microsoft products. C# is a very close language to Java, and so is .NET to JVM.
Even if you will never use these languages in future, this first step would be very important.
JVM/.NET can be regared as a toy pseudocode in comparison with x86/x86-64/ARM/MIPS.
After that, you can proceed to ARM64 code and pure C. After that, x86 and x86-64.
This is the order that I recommend. Slow and boring, but it will pay off, you'll see.
Reverse engineering is such a hard area just because x86/x86-64 arch is so complicated and confusing. JVM/.NET and ARM64 can be used as stepping stones, I'm sure.
Some time ago (before 24-Mar-2025) there was Disqus JS script for comments. I dropped it --- it was so motley, distracting, animated, with too much ads. I never liked it. Also, comments didn't appeared correctly (Disqus was buggy). Also, my blog is too chamberlike --- not many people write comments here. So I decided to switch to the model I once had at least in 2020 --- send me your comments by email to blog at yurichev dot com (don't forget to include URL to this blog post) and I'll copy&paste it here manually.
Let's party like it's ~1993-1996, in this ultimate, radical and uncompromisingly primitive pre-web1.0-style blog and website.