> En tous cas, ils semblent souhaiter garder leur code protégé pour le  
> moment !
> A bon décompileur, salut ;) !

ils ont basiquement precede tous leurs nom de classes par "_-"

genre au lieu de "com.yogurt3d::3D"
ils compilent "com.yogurt3d::_-3D"

et ca, ca plante HP swfscan, abcdump.jar etc.

mais ca plante pas abcdump.as du projet tamarin ;)

-------
//   script3

  class com.yogurt3d::_-3D extends flash.display::Sprite
  {

    function com.yogurt3d::_-3D(private::SingletonEnforcer):*   /*
disp_id=-1 method_id=22 */
    {
      // local_count=2 max_scope=1 max_stack=3 code_len=22
      0     getlocal0
      1     pushscope
      2     getlocal0
      3     jump                L1

      7     getlocal1
      8     convert_u
      9     pushscope
      10    bitand
      11    equals
      12    setlocal3

      L1:
      13    constructsuper      (0)
      15    getlex              _-66::_-Uh
      18    getproperty         instance
      20    pop
      21    returnvoid
    }


    function _-Uv
(String,int,int,int,Boolean,flash.display::Sprite):Boolean      /*
disp_id=0 method_id=24 */
    {
      // local_count=7 max_scope=1 max_stack=9 code_len=41
      0     getlocal0
      1     pushscope
      2     pushfalse
      3     jump                L1

      7     subtract_i
      8     pushnull
      9     hasnext
      10    subtract
      11    greaterthan
      12    coerce_a

      L1:
      13    iftrue              L2

      17    findpropstrict      private::_-Us
      20    callpropvoid        private::_-Us (0)

      L2:
      24    getlex              each::_-EX
      26    getproperty         instance
      28    getlocal1
      29    getlocal2
      30    getlocal3
      31    getlocal            4
      33    getlocal            5
      35    getlocal            6
      37    callproperty        _-Uv (6)
      40    returnvalue
    }


    function private::_-Us():void       /* disp_id=0 method_id=23 */
    {
      // local_count=2 max_scope=1 max_stack=5 code_len=74
      0     getlocal0
      1     pushscope
      2     findpropstrict      private::serverVersion
      5     jump                L1

      9     setlocal1
      10    pushtrue
      11    lessthan
      12    rshift
      13    pop
      14    pushtrue

      L1:
      15    constructprop       private::serverVersion (0)
      19    coerce              flash.utils::ByteArray
      21    setlocal1
      22    getlex              VERSION
      25    getlocal1
      26    jump                L2

      30    pushundefined
      31    istypelate
      32    decrement_i
      33    strictequals
      34    increment
      35    bitxor

      L2:
      36    callproperty        toString (0)
      40    ifeq                L3

      44    findpropstrict      Error
      47    pushstring          "Version mismatch. "
      50    pushstring          "Your version is "
      53    add
      54    getlex              VERSION
      57    add
      58    pushstring          " which should have been "
      61    add
      62    getlocal1
      63    callproperty        toString (0)
      67    add
      68    callproperty        Error (1)
      72    throw

      L3:
      73    returnvoid
    }


    function _-U(int,int):void  /* disp_id=0 method_id=26 */
    {
      // local_count=3 max_scope=1 max_stack=5 code_len=28
      0     getlocal0
      1     pushscope
      2     pushtrue
      3     jump                L1

      7     urshift
      8     greaterequals
      9     greaterequals
      10    getglobalscope
      11    pushfalse
      12    pushnull

      L1:
      13    iffalse             L2

      17    getlex              each::_-EX
      19    getproperty         instance
      21    getlocal1
      22    getlocal2
      23    callpropvoid        _-Nx (2)

      L2:
      27    returnvoid
    }


    function _-CW():void        /* disp_id=0 method_id=25 */
    {
      // local_count=1 max_scope=1 max_stack=5 code_len=25
      0     getlocal0
      1     pushscope
      2     getlocal0
      3     jump                L1

      7     pushscope
      8     getlocal2
      9     istypelate
      10    decrement
      11    setlocal1
      12    add_i

      L1:
      13    getlex              flash.events::Event
      15    getproperty         ENTER_FRAME
      18    getlex              private::_-Eu
      21    callpropvoid        addEventListener (2)
      24    returnvoid
    }


    function private::_-Eu(flash.events::Event):void    /* disp_id=0
method_id=28 */
    {
      // local_count=2 max_scope=1 max_stack=3 code_len=10
      0     getlocal0
      1     pushscope
      2     findpropstrict      _-CV
      5     callpropvoid        _-CV (0)
      9     returnvoid
    }


    function _-CV():void        /* disp_id=0 method_id=27 */
    {
      // local_count=1 max_scope=1 max_stack=3 code_len=22
      0     getlocal0
      1     pushscope
      2     getlex              _-66::_-Uh
      5     jump                L1

      9     bitnot
      10    urshift
      11    hasnext
      12    pushscope
      13    pushtrue
      14    pushnull

      L1:
      15    getproperty         instance
      17    callpropvoid        _-3d (0)
      21    returnvoid
    }


    static function get instance():com.yogurt3d::_-3D   /* disp_id=3
method_id=21 */
    {
      // local_count=1 max_scope=1 max_stack=5 code_len=45
      0     getlocal0
      1     pushscope
      2     pushtrue
      3     jump                L1

      7     nextvalue
      8     lessequals
      9     pop
      10    pushfalse
      11    setlocal0
      12    dup

      L1:
      13    iffalse             L2

      17    getlex              private::_-4n
      20    pushnull
      21    ifne                L2

      25    findproperty        private::_-4n
      28    getlocal0
      29    findpropstrict      private::SingletonEnforcer
      32    constructprop       private::SingletonEnforcer (0)
      36    construct           (1)
      38    setproperty         private::_-4n

      L2:
      41    getlex              private::_-4n
      44    returnvalue
    }

    static var private::serverVersion:Class     /* slot_id 2 */
    static const VERSION:String = "0.0.2"       /* slot_id 1 */
    static var private::_-4n:com.yogurt3d::_-3D = null  /* slot_id 3 */

    static function com.yogurt3d::_-3D$cinit():*        /* disp_id=0
method_id=20 */
    {
      // local_count=1 max_scope=1 max_stack=4 code_len=48
      0     getlocal0
      1     pushscope
      2     pushfalse
      3     jump                L1

      7     greaterequals
      8     newactivation
      9     bitor
      10    getlocal0
      11    urshift
      12    add

      L1:
      13    iftrue              L2

      17    findproperty        VERSION
      20    pushstring          "0.0.2"
      23    initproperty        VERSION
      26    pushfalse
      27    iftrue              L3

      31    findproperty        private::serverVersion
      34    getlex              com.yogurt3d::Yogurt3D_serverVersion
      37    setproperty         private::serverVersion

      L3:
      40    findproperty        private::_-4n
      43    pushnull
      44    setproperty         private::_-4n

      L2:
      47    returnvoid
    }

  }


  class private::SingletonEnforcer extends Object
  {

    function private::SingletonEnforcer():*     /* disp_id=-1 method_id=30
*/
    {
      // local_count=1 max_scope=1 max_stack=1 code_len=6
      0     getlocal0
      1     pushscope
      2     getlocal0
      3     constructsuper      (0)
      5     returnvoid
    }


    static function private::SingletonEnforcer$cinit():*        /* disp_id=0
method_id=29 */
    {
      // local_count=1 max_scope=1 max_stack=1 code_len=3
      0     getlocal0
      1     pushscope
      2     returnvoid
    }

  }


  function script3$init():*     /* disp_id=0 method_id=31 */
  {
    // local_count=1 max_scope=7 max_stack=4 code_len=81
    0       getlocal0
    1       pushscope
    2       getscopeobject      0
    4       jump                L1

    8       setlocal1
    9       strictequals
    10      multiply_i
    11      subtract_i
    12      checkfilter
    13      bitxor

    L1:
    14      getlex              Object
    16      pushscope
    17      getlex              flash.events::EventDispatcher
    19      pushscope
    20      getlex              flash.display::DisplayObject
    22      pushscope
    23      getlex              flash.display::InteractiveObject
    26      pushscope
    27      getlex              flash.display::DisplayObjectContainer
    30      jump                L2

    34      pushfalse
    35      getglobalscope
    36      setlocal0
    37      negate_i
    38      greaterthan
    39      add

    L2:
    40      pushscope
    41      getlex              flash.display::Sprite
    43      pushscope
    44      getlex              flash.display::Sprite
    46      newclass            com.yogurt3d::_-3D
    48      popscope
    49      popscope
    50      popscope
    51      popscope
    52      popscope
    53      jump                L3

    57      strictequals
    58      increment_i
    59      pushundefined
    60      swap
    61      not
    62      convert_i

    L3:
    63      popscope
    64      initproperty        com.yogurt3d::_-3D
    67      getscopeobject      0
    69      getlex              Object
    71      pushscope
    72      getlex              Object
    74      newclass            private::SingletonEnforcer
    76      popscope
    77      initproperty        private::SingletonEnforcer
    80      returnvoid
  }
-------
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "FCNG" de 
Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/FCNG?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à