/[cvs]/nfo/perl/scripts/fluscate/bin/fluscate.pl
ViewVC logotype

Diff of /nfo/perl/scripts/fluscate/bin/fluscate.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by joko, Fri Jul 23 12:13:14 2004 UTC revision 1.3 by joko, Fri Jul 23 12:56:07 2004 UTC
# Line 4  Line 4 
4    
5  # $Id$  # $Id$
6  # $Log$  # $Log$
7    # Revision 1.3  2004/07/23 12:56:07  joko
8    # updated pod
9    #
10    # Revision 1.2  2004/07/23 12:24:52  joko
11    # pod
12    #
13  # Revision 1.1  2004/07/23 12:13:14  joko  # Revision 1.1  2004/07/23 12:13:14  joko
14  # initial commit  # initial commit
15  #  #
16    
17  =pod  =pod
 This software is Copyright (C) 2004 Andreas Motl  
 Ideas and future AppleScript integration by Holger Marseille.  
18    
19  This program is free software; you can redistribute it and/or    This software is Copyright (C) 2004 Andreas Motl
20  modify it under the terms of the GNU General Public License    Ideas and future AppleScript integration by Holger Marseille.
21  as published by the Free Software Foundation; either version 2    
22  of the License, or (at your option) any later version.    This program is free software; you can redistribute it and/or
23      modify it under the terms of the GNU General Public License
24  This program is distributed in the hope that it will be useful,    as published by the Free Software Foundation; either version 2
25  but WITHOUT ANY WARRANTY; without even the implied warranty of    of the License, or (at your option) any later version.
26  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the    
27  GNU General Public License for more details.    This program is distributed in the hope that it will be useful,
28      but WITHOUT ANY WARRANTY; without even the implied warranty of
29  You should have received a copy of the GNU General Public License    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
30  along with this program; if not, write to the Free Software    GNU General Public License for more details.
31  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.    
32      You should have received a copy of the GNU General Public License
33      along with this program; if not, write to the Free Software
34      Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
35    
36  =cut  =cut
37    
38    
# Line 32  Foundation, Inc., 59 Temple Place - Suit Line 40  Foundation, Inc., 59 Temple Place - Suit
40    
41  =head1 Features  =head1 Features
42    
43  =head2 Requests  =head2 Functions
44    
45      fluscate handles two different styles of function declarations:
46    
47      1. "Normal" ones
48          function mp3Player ('arg1', 'arg2')
49    
50      2. There may be "stacked" function declarations
51          push 'mp3Player'
52          function  ()
53    
54    
55    =head1 Dependencies
56    
57      "flasm" is required to disassemble swf files, see http://www.nowrap.de/flasm.html
58      ACKs go to Igor Kogan.
59    
60    
61    =head1 Usage
62    
63    =head2 win32
64    
65      #> flasm.exe -d puzzle.swf > puzzle.flm
66      #> cat puzzle.flm | perl fluscate.pl > puzzle_fusc.flm
67      #> flasm.exe -a puzzle_fusc.flm
68    
69    =head2 *nix
70    
71      #> ./flasm -d puzzle.swf > puzzle.flm
72      #> cat puzzle.flm | ./fluscate.pl > puzzle_fusc.flm
73      #> ./flasm -a puzzle_fusc.flm
74    
75    
76    =head1 Development
77    
78    =head2 Todo
79    
80      - provide list of flash event handler names to exclude from symbol replacement
81    
82    =head2 Wishlist
83    
84    - komplexere verschlüsselung als "-1, -2 ..." z-b nicht in der numerischen reihenfolge sondern nach    - komplexere verschlüsselung als "-1, -2 ..." z-b nicht in der numerischen reihenfolge sondern nach
85      zufallsprinip (-21,-3,-89)? (->random)      zufallsprinip (-21,-3,-89)? (->random)
86    - evtl. constants nach abfrage ersetzen ? leider sehr aufwendig, bei vielen constants (->ask)    - evtl. constants nach abfrage ersetzen ? leider sehr aufwendig, bei vielen constants (->ask)
# Line 43  Foundation, Inc., 59 Temple Place - Suit Line 91  Foundation, Inc., 59 Temple Place - Suit
91           trace           trace
92           branchIfTrue ls"           branchIfTrue ls"
93      ... after each "constants" declaration (->pollute)      ... after each "constants" declaration (->pollute)
94      - what about other symbols beside "function"s? (e.g. variables) (->mode)
95    
96  =head2 Functions  =head2 Notes
 fluscate handles two different styles of function declarations:  
   
   1. "Normal" ones  
       function mp3Player ('arg1', 'arg2')  
   
   2. There may be "stacked" function declarations  
       push 'mp3Player'  
       function  ()  
   
97    
   
 =head1 Notes  
98    - no function may be called "Initialize", rename it to (e.g.) "Initialize2", reassembling will not work otherwise    - no function may be called "Initialize", rename it to (e.g.) "Initialize2", reassembling will not work otherwise
99      (doesn't matter when obfuscating since function names will be replaced of course)      (doesn't matter when obfuscating since function names will be replaced of course)
100    - function names seem to be/work case insensitive (shuffle <-> Shuffle)    - function names seem to be/work case insensitive (shuffle <-> Shuffle)
# Line 66  fluscate handles two different styles of Line 104  fluscate handles two different styles of
104    - "getMember" and "getVariable" also do function calls!    - "getMember" and "getVariable" also do function calls!
105    - there are reserved function names which must not be replaced! (-> event handlers, e.g. "onPress")    - there are reserved function names which must not be replaced! (-> event handlers, e.g. "onPress")
106    
 =head1 Todo / Review  
   - what about other symbols beside "function"s?  
   
 =head1 Usage  
   
 =head2 Usage (win32):  
   #> flasm.exe -d puzzle.swf > puzzle.flm  
   #> cat puzzle.flm | perl fluscate.pl > puzzle_fusc.flm  
   #> flasm.exe -a puzzle_fusc.flm  
   
 =head2 Usage (*nix):  
   #> flasm -d puzzle.swf > puzzle.flm  
   #> cat puzzle.flm | fluscate.pl > puzzle_fusc.flm  
   #> flasm -a puzzle_fusc.flm  
   
107  =cut  =cut
108    
109    

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.3

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed