Decrypt FAS Files?
I know this is a controversial topic, so let me clear the air right up front. This article is NOT a 'how-to' for decrypting or decompiling FAS files.
This topic seems to come up every now and then. Sometimes on the Autodesk newsgroups (where it's promptly deleted) or maybe on an unmoderated forum such as alt.cad.autocad. Either someone has "lost the .lsp file", and needs to decrypt the only thing left, the FAS file -or- someone is just openly looking for a way to get into someone else's protected FAS file. More reason to back up your source code, even print it out and store the hardcopy. Retyping is bad, but much better than the alternative.
Anyway, I have run across what I believe to be the only "FAS decrypter" out there. I base that on the fact that I have never seen one. I won't say how I obtained this program, or even the name of it in order to not feed the fire. But I can assure you I did not just "google it", nor did I even go in search of this tool at all. Let's just say I obtained it along with some other files (non .FAS, even non CAD related) from someone who probably didn't even know it was there. How did I know what this EXE was? The filename kind of gave it away.
Based on this thread in the autodesk.autocad.customization newsgroup, this topic has been around for awhile and by early 1999, FAS was already "cracked". I have no idea if that thread was referring to this tool or not.
Anyway, as an experiment, I tried to run this tool on one of my own FAS files, which is about 19k. Well about 30 minutes later, it was apparent that not much was being accomplished, at least based on the progress bar, so I stopped. No partial output file or anything.
I tried again on a much smaller file of mine, this time the file size is 949 bytes. Almost the same story, about 10 minutes later, I have to end task.
By this point, I'm thinking this program is a fake and not really doing anything. I decide to give it one more try. I write this one line of code (alert "hello") and save it as a LSP file. Then compile it into a FAS file which turns out to be a whopping 161 bytes.
7 minutes later, the program finishes. The output DOES contain the strings "Alert" and "Hello", but surrounded by a bunch of binary garbage. No indication of the original position of each string, or any parenthesis or quotation marks.
In summary, it appears that any decent size program would take hours to "decrypt" (if it would ever finish) - and that all you would have after you are done are the strings contained in the original LSP file. Not much else.
So if there is even a CHANCE you could lose your LSP source code, back it up today. Make a hard copy, whatever it takes. FAS file to source code doesn't look good at all.