Обра́тная разрабо́тка (обратное проектирование, обратный инжиниринг, реверс-инжиниринг; англ. reverse
engineering) — исследование некоторого готового устройства или программы, а также документации на
него с целью понять принцип его работы; например, чтобы обнаружить недокументированные возможности
(в том числе программные закладки), сделать изменение или воспроизвести устройство, программу или
иной объект с аналогичными функциями, но без прямого копирования. Вообщем вскрыть ее и понять как
она работает, для этого нужны знания ассемблера.
Подробнее
ru.wikipedia.org/wiki/Обратная_разработка