What is Reverse Engineering?
Reverse engineering is the process of taking something apart to figure out how it functions. It is done mostly to learn how something works and to analyze it, although it is frequently used to reproduce or improve the object.