I'm not sure the Decompiler fully answers the question.  SWFDump would be 
better, maybe it is having problems with spaces in path names or with 
JAVA_TOOL_OPTIONS not setting the default file encoding to UTF-8.

The goal is to see which scripts are on which frame, and maybe look at the code 
itself to see why it may not try to verify the Application class.

-Alex

On 7/17/19, 8:31 PM, "Ramazan Ergüder Bekrek" <[email protected]> wrote:

    Here is a 2 frames view of JPEXS Decompiler :
    
    
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpasteboard.co%2FIoumcP0.png&amp;data=02%7C01%7Caharui%40adobe.com%7Cacca8cac00eb4603ec2c08d70b306694%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C1%7C636990174824334757&amp;sdata=fcIx3eORWOGv7Ob5eeDY5%2BlSfpLwTCGKsT4gWcexqrI%3D&amp;reserved=0
    
    18.07.2019, 05:28, "Ramazan Ergüder Bekrek" <[email protected]>:
    > This is what I get:
    >
    > swfdump -abc gravity_shared_flex-flex450.swf
    > Error: Could not find or load main class 4.16.1
    >
    > 18.07.2019, 03:40, "Alex Harui" <[email protected]>:
    >>  RSL Loaders might be two-frame SWFs where the first frame loads the 
RSLs before switching to the second frame.
    >>
    >>  Run swfdump -abc on the one that works and see if it is multi-frame.
    >>
    >>  HTH,
    >>  -Alex
    >>
    >>  On 7/17/19, 5:51 PM, "Ramazan Ergüder Bekrek" <[email protected]> 
wrote:
    >>
    >>      In my case I get a VerifyError when ever I compile a release 
version of my custom RSLs loader which in it has a reference to spark 
application which cannot be used because once all the RSLs are loader including 
framework.swf then the class definition for sparks.components.Application can 
be added added. Somehow the version of gravity_shared_flex.swf from Adobe 
doesn't have that VerifiyError issue.
    >>
    >>      18.07.2019, 00:35, "Alex Harui" <[email protected]>:
    >>      > Classes are only verified before first use. If no code paths ever 
get around to executing code that references a class, that class will never be 
verified.
    >>      >
    >>      > HTH,
    >>      > -Alex
    >>      >
    >>      > On 7/17/19, 10:53 AM, "Ramazan Ergüder Bekrek" 
<[email protected]> wrote:
    >>      >
    >>      > Greetings again!
    >>      >
    >>      > I have special use case that I would like to be able to reproduce 
and as an inspiration I took one specific SWF file which is part of the
    >>      > ADEP Gravity Client Component Framework which is an adaptation of 
the OSGi runtime in Actionscript 3.0.
    >>      >
    >>      > The file in question can be seen in this video 
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fyoutu.be%2Fg_Y4PmR_L1w%3Ft%3D379&amp;data=02%7C01%7Caharui%40adobe.com%7Cacca8cac00eb4603ec2c08d70b306694%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C1%7C636990174824334757&amp;sdata=IgUYjQcN05H7h7VgAQQHmrpDkeQOYcR31mTR3YKDauQ%3D&amp;reserved=0.
    >>      > I'm talking about the gravity_shared_flex-flex450.swf which is a 
special RSLs loader.
    >>      > That file is loaded first by Gravity as a bundle in memory before 
any RSLs are handled. In that SWF there is a GravitySystemManager class that 
extends SystemManager. That custom SystemManager first loads all the RSLs and 
then adds the GravitySparkApplication on the display list.
    >>      >
    >>      > The problem that I'am having while trying to reproduce the same 
mechanism is that inside that SWF there is a GravitySparkApplicationclass that 
extends the Application from Apache Flex. Although that the Application class 
is not compiled in that SWF it has no problem loading in memory and there is no 
VerifyError that says the spark.components.Application was not found.
    >>      >
    >>      > My intuition tells me that there is a special mxmlc compiler 
option when used in an SWF compilation that tells the Flash Player to skip any 
kind of class verification.
    >>      >
    >>      > My question is how did Adobe managed to compile an SWF which is 
referencing spark.components.Application as an external reference when that 
external reference comes into existence after the RSLs are loaded by 
gravity_shared_flex-flex450.swf which itself cannot be loaded before the RSLs?
    >>      >
    >>      > I hope that my question is clear.
    

Reply via email to