I want to learn how to reverse engineer, what is a good starting point? I only know java atm but I have a book on HLA and a book on C. Would I have to learn both languages first or are there books that tell you what you need to know about the languages as they go along?

Since you know java, I'd find a program that is made in java that you'd like to practice reverse engineering on. Personally, I think it's easiest to practice on programs that you've made because you know what's going on, then when you get better you can move on to other programs. Although, keep in mind this can get illegal. Go download DJ Java Disassembler. You can find it on google. Then you just decomiple programs, and work your way through them. Also keep in mind that they may have used an obfusecator, which would jumble their code. You can also work on just using every feature of a program trying to figure out it's nuances and so on.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.