Livaanderiamarum,
Обфускатор - кодировщик, который кодирует текст кода в свою кодировку, да такую, чтобы интерпретатор ее понял, так что, 
теоретически, любой обфусцировванный код можно раскодировать, например (грубый пример) заменяет конструкции вида 
variable = 5
 на 
eval ("variable = (function () { return 100 - 500 + 405; }())")
 результат тот же, интерпретатору поф как это записано, а с точки зрения пользователя кода, записано не очень понятно. Цель - сделать непонятно, а не укрыть информацию. Зашифровать js (AES256 например) не получится, потому что иначе его не распарсит интерпретатор