--- nfo/perl/scripts/fluscate/doc/fluscate.html 2004/07/23 12:13:14 1.1 +++ nfo/perl/scripts/fluscate/doc/fluscate.html 2004/07/23 12:25:11 1.2 @@ -21,35 +21,45 @@
This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -as published by the Free Software Foundation; either version 2 -of the License, or (at your option) any later version.
-This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details.
-You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -=cut
++ This software is Copyright (C) 2004 Andreas Motl + Ideas and future AppleScript integration by Holger Marseille. + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License + as published by the Free Software Foundation; either version 2 + of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.@@ -57,21 +67,9 @@
-
-
-+ fluscate handles two different styles of function declarations:
1. "Normal" ones function mp3Player ('arg1', 'arg2')@@ -83,38 +81,58 @@ back to top
+ #> flasm.exe -d puzzle.swf > puzzle.flm + #> cat puzzle.flm | perl fluscate.pl > puzzle_fusc.flm + #> flasm.exe -a puzzle_fusc.flm+
+
++ #> flasm -d puzzle.swf > puzzle.flm + #> cat puzzle.flm | fluscate.pl > puzzle_fusc.flm + #> flasm -a puzzle_fusc.flm
-
+ - provide list of flash event handler names to exclude from symbol replacement
-
+ - komplexere verschlüsselung als "-1, -2 ..." z-b nicht in der numerischen reihenfolge sondern nach + zufallsprinip (-21,-3,-89)? (->random) + - evtl. constants nach abfrage ersetzen ? leider sehr aufwendig, bei vielen constants (->ask) + - rausgeben des arrays mit den "neuen" werten um evtl die obfuscation rückgängig zu machen (->undo) + - " push 0 + ls: + dup + trace + branchIfTrue ls" + ... after each "constants" declaration (->pollute) + - what about other symbols beside "function"s? (e.g. variables) (->mode)+
+
++ - no function may be called "Initialize", rename it to (e.g.) "Initialize2", reassembling will not work otherwise + (doesn't matter when obfuscating since function names will be replaced of course) + - function names seem to be/work case insensitive (shuffle <-> Shuffle) + - successfully tested with http://download.macromedia.com/pub/flash/showme/win/puzzle.zip + - make sure -1, -2, -3, .... gets replaced with '-1', '-2', '-3', ... + - there are multiple caller lines: callFunction, callMethod; do we have to take special care to methods? + - "getMember" and "getVariable" also do function calls! + - there are reserved function names which must not be replaced! (-> event handlers, e.g. "onPress")