View Single Post
  #7  
Old 08-16-2004, 02:44
JMI JMI is offline
Leader
 
Join Date: Jan 2002
Posts: 1,627
Rept. Given: 5
Rept. Rcvd 199 Times in 99 Posts
Thanks Given: 0
Thanks Rcvd at 98 Times in 96 Posts
JMI Reputation: 100-199 JMI Reputation: 100-199
Actually, repairing a car you do not know how to drive is not a very good analogy. One can repair a machine if one knows how the machine "works." Which is not necessarily the same as how to "steer" it down the road.

However with reverse engineering, one does NOT need to know how to actually write programs in ASM to learn how to reverse programs written in higher level languages. It certainly doesn't hurt to have such knowledge, but it is certainly NOT required. What is required is that you understand the process and procedure structure and especially the opcodes in ASM. In other words, you need to know what the heck the code is actually doing in order to be able to understand what is happening when you step through the code.

Consider it in this manner. Most debuggers only show you a view of the program displayed in ASM. If you do not understand the movement of data into and our of registers, or the use of pointers, or the use of addresses+offsets, you are NOT going to understand what you are looking at in the windows of the debugger. So one needs to be able to recognize the code process to figure out where a change in the code might be required. This is different than knowing how to actually write an entire program in ASM.

Regards,
__________________
JMI
Reply With Quote