so, nothin's safe, se7en?
Well i wouldnt go that far. Alot of people dont even know the basics about encryption/decryption. (And some think they know and in reality dont know a darn thing.) I dont think you will have a problem at all if you go with the VLX format. (I was just trying to say that you need to be aware that "compiling" in AutoCAD isnt really compiling. its more like encryption.)
You are correct in so many words ... however you are incorrect about the FAS and VLX files being encrypted. FAS and VLX files are defacto compiled binaries except DCL and Text files that are included as part of the project are merely appended to the end of the VLX file during compilation.
The problem with FAS and VLX files (as with any compiled executable) is that they ALWAYS follow a specific format ... that format can be easily discovered by doing a comparative study of the sequence of commands in the file.
For example, once you have the knowledge of what "0E 4D A1" does you can presumably follow that example and contine with decompilation. The main problem with this is that compiled code is rarely executed in sequential order, thus it becomes difficult to near impossible to reconstitute the original source code, BUT you can produce something that is really close and editable by following conditional jumps, code segments and the like. A good understanding of assembly language is also a prerequisite, but is not required.
My intent is not to debate symantics of encryption vs. compilation because they are essentially the same except during encryption the key is generally not known, while in compilation the key is ALWAYS known, in fact it is the same for every type of compiled binary file ... otherwise we wouldn't be able to read them.
Bottom line is that FAS is readily decompiled back into "pseudo assembly" code with certain code segments being able to be easily reconstituted. VLX files are a little more difficult to decompile, but only if you use a seperate namespace and optimize the code during compilation. It is also advisable to use multiple lisp files rather than have a single lisp file with all of your code in it. This way when the VLX is compiled the individual lisps are seperated and are more difficult to decompile.
VB also has it's share of problems and can also be readily decompiled into readable code segments. In VB it is advisable to NOT use the native P-Code option, as it makes it more readily decompilable.
C and C++ binaries exhibit the best protection against decompilation, but also can be readily decompiled into assembly, and thus with a working knowledge of assembly it too can be reconstituted, albeit much more difficult.
So, it would be safe to assume that "nothin' is safe" ...