If you are looking for the decompiler itself, visit https://github.com/jindrapetrik/jpexs-decompiler
NEW : We have got a new blog where we post some interesting SWF internals info.

#973 Pointless §§dup
Author:
BeniBela

Date created:
Type: bug
Visibility: Everybody
Assigned to:
Labels: AS3Decompilation
State: closed 

It calls some non existing function §§dup:
private static function changePause(param1:Boolean, param2:Boolean = true,
param3:Boolean = false) : void
{
var _loc5_:* = false;
var _loc4_:Array = getAllTweens();
var _loc6_:int = _loc4_.length;
while(_loc6_--)
{
_loc5_ = §§dup(TweenLite(_loc4_[_loc6_]).target ==
TweenLite(_loc4_[_loc6_]).vars.onComplete);
if(TweenLite(_loc4_[_loc6_]).target ==
TweenLite(_loc4_[_loc6_]).vars.onComplete == param3 || _loc5_ != param2)
{
TweenCore(_loc4_[_loc6_]).paused = param1;
}
}
}
trait method Qname(PrivateNamespace("*","146"),"changePause") dispid 17
method
name null
flag HAS_OPTIONAL
flag HAS_OPTIONAL
param Qname(PackageNamespace(""),"Boolean")
param Qname(PackageNamespace(""),"Boolean")
param Qname(PackageNamespace(""),"Boolean")
optional true
optional false
returns Qname(PackageNamespace(""),"void")
body
maxstack 5
localcount 7
initscopedepth 5
maxscopedepth 6
code
getlocal_0
pushscope
pushfalse
newfunction 12238
pop
jump ofs0014
lessthan
inclocal 2
inclocal_i 2
pop
pushnull
setlocal 5
ofs0014:setlocal 5
findpropstrict Qname(PackageNamespace(""),"getAllTweens")
callproperty Qname(PackageNamespace(""),"getAllTweens") 0
coerce Qname(PackageNamespace(""),"Array")
dup
setlocal 4
getproperty Qname(PackageNamespace(""),"length")
convert_i
setlocal 6
jump ofs008f
ofs002b:label
findpropstrict Qname(PackageNamespace("com.greensock"),"TweenLite")
getlocal 4
getlocal 6
getproperty
MultinameL([PrivateNamespace("*","146"),PackageNamespace(""),PackageNamespace("com.greenso
ck"),PackageNamespace("com.greensock.plugins"),PrivateNamespace("*","158"),PackageInternal
Ns("com.greensock"),Namespace("http://adobe.com/AS3/2006/builtin"),PackageNamespace("com.gr
eensock.core"),PackageNamespace("flash.display"),PackageNamespace("flash.events"),PackageN
amespace("flash.utils"),ProtectedNamespace("com.greensock:TweenMax"),StaticProtectedNs("co
m.greensock:TweenMax"),StaticProtectedNs("com.greensock:TweenLite"),StaticProtectedNs("com
.greensock.core:TweenCore"),StaticProtectedNs("Object")])
callproperty Qname(PackageNamespace("com.greensock"),"TweenLite") 1
jump ofs0046
getlocal_2
getlocal 5
setlocal_3
kill 5
pushfalse
istypelate
ofs0046:getproperty Qname(PackageNamespace(""),"target")
findpropstrict Qname(PackageNamespace("com.greensock"),"TweenLite")
getlocal 4
getlocal 6
getproperty
MultinameL([PrivateNamespace("*","146"),PackageNamespace(""),PackageNamespace("com.greenso
ck"),PackageNamespace("com.greensock.plugins"),PrivateNamespace("*","158"),PackageInternal
Ns("com.greensock"),Namespace("http://adobe.com/AS3/2006/builtin"),PackageNamespace("com.gr
eensock.core"),PackageNamespace("flash.display"),PackageNamespace("flash.events"),PackageN
amespace("flash.utils"),ProtectedNamespace("com.greensock:TweenMax"),StaticProtectedNs("co
m.greensock:TweenMax"),StaticProtectedNs("com.greensock:TweenLite"),StaticProtectedNs("com
.greensock.core:TweenCore"),StaticProtectedNs("Object")])
callproperty Qname(PackageNamespace("com.greensock"),"TweenLite") 1
getproperty Qname(PackageNamespace(""),"vars")
getproperty
Multiname("onComplete",[PrivateNamespace("*","146"),PackageNamespace(""),PackageNamespace(
"com.greensock"),PackageNamespace("com.greensock.plugins"),PrivateNamespace("*","158"),Pac
kageInternalNs("com.greensock"),Namespace("http://adobe.com/AS3/2006/builtin"),PackageNames
pace("com.greensock.core"),PackageNamespace("flash.display"),PackageNamespace("flash.event
s"),PackageNamespace("flash.utils"),ProtectedNamespace("com.greensock:TweenMax"),StaticPro
tectedNs("com.greensock:TweenMax"),StaticProtectedNs("com.greensock:TweenLite"),StaticProt
ectedNs("com.greensock.core:TweenCore"),StaticProtectedNs("Object")])
equals
dup
jump ofs006a
getlocal_2
pop
inclocal_i 4
add_i
declocal 5
setlocal_3
ofs006a:setlocal 5
getlocal_3
equals
dup
iftrue ofs0079
pop
getlocal 5
getlocal_2
equals
not
ofs0079:iffalse ofs008f
findpropstrict Qname(PackageNamespace("com.greensock.core"),"TweenCore")
getlocal 4
getlocal 6
getproperty
MultinameL([PrivateNamespace("*","146"),PackageNamespace(""),PackageNamespace("com.greenso
ck"),PackageNamespace("com.greensock.plugins"),PrivateNamespace("*","158"),PackageInternal
Ns("com.greensock"),Namespace("http://adobe.com/AS3/2006/builtin"),PackageNamespace("com.gr
eensock.core"),PackageNamespace("flash.display"),PackageNamespace("flash.events"),PackageN
amespace("flash.utils"),ProtectedNamespace("com.greensock:TweenMax"),StaticProtectedNs("co
m.greensock:TweenMax"),StaticProtectedNs("com.greensock:TweenLite"),StaticProtectedNs("com
.greensock.core:TweenCore"),StaticProtectedNs("Object")])
callproperty Qname(PackageNamespace("com.greensock.core"),"TweenCore") 1
getlocal_1
setproperty Qname(PackageNamespace(""),"paused")
ofs008f:getlocal 6
dup
decrement_i
setlocal 6
iftrue ofs002b
returnvoid
And if it has side effects, it fails, because it duplicates the expression:
_loc4_ = 0;
while(_loc4_ < _loc5_)
{
_loc8_ = §§dup(new _loc2_());
new _loc2_().name = _loc4_ + "";
if(_loc4_ < _shipArr.length)
{
_loc7_ = _shipArr[_loc4_];
_loc8_.amountTxt.text = _loc7_.finish_num + "";
_loc8_.heroIdTxt.text = "";
}
setproperty
Multiname("name",[PrivateNamespace("*","36"),PackageNamespace(""),PackageNamespace("com.pl
aymage.controlSystem.view.components"),PrivateNamespace("*","163"),PackageInternalNs("com.
playmage.controlSystem.view.components"),Namespace("http://adobe.com/AS3/2006/builtin"),Pro
tectedNamespace("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticPro
tectedNs("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticProtectedN
s("flash.display:Sprite"),StaticProtectedNs("flash.display:DisplayObjectContainer"),Static
ProtectedNs("flash.display:InteractiveObject"),StaticProtectedNs("flash.display:DisplayObj
ect"),StaticProtectedNs("flash.events:EventDispatcher"),StaticProtectedNs("Object")])
getlocal 4
getlex Qname(PrivateNamespace("*","36"),"_shipArr")
getproperty Qname(PackageNamespace(""),"length")
ifnlt ofs01dd
getlex Qname(PrivateNamespace("*","36"),"_shipArr")
getlocal 4
getproperty
MultinameL([PrivateNamespace("*","36"),PackageNamespace(""),PackageNamespace("com.playmage
.controlSystem.view.components"),PrivateNamespace("*","163"),PackageInternalNs("com.playma
ge.controlSystem.view.components"),Namespace("http://adobe.com/AS3/2006/builtin"),Protected
Namespace("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticProtected
Ns("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticProtectedNs("fla
sh.display:Sprite"),StaticProtectedNs("flash.display:DisplayObjectContainer"),StaticProtec
tedNs("flash.display:InteractiveObject"),StaticProtectedNs("flash.display:DisplayObject"),
StaticProtectedNs("flash.events:EventDispatcher"),StaticProtectedNs("Object")])
coerce Qname(PackageNamespace("com.playmage.planetsystem.model.vo"),"Ship")
setlocal 7
getlocal 8
getproperty
Multiname("amountTxt",[PrivateNamespace("*","36"),PackageNamespace(""),PackageNamespace("c
om.playmage.controlSystem.view.components"),PrivateNamespace("*","163"),PackageInternalNs(
"com.playmage.controlSystem.view.components"),Namespace("http://adobe.com/AS3/2006/builtin"
),ProtectedNamespace("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),Stat
icProtectedNs("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticProte
ctedNs("flash.display:Sprite"),StaticProtectedNs("flash.display:DisplayObjectContainer"),S
taticProtectedNs("flash.display:InteractiveObject"),StaticProtectedNs("flash.display:Displ
ayObject"),StaticProtectedNs("flash.events:EventDispatcher"),StaticProtectedNs("Object")])
getlocal 7
getproperty Qname(PackageNamespace(""),"finish_num")
pushstring ""
add
setproperty
Multiname("text",[PrivateNamespace("*","36"),PackageNamespace(""),PackageNamespace("com.pl
aymage.controlSystem.view.components"),PrivateNamespace("*","163"),PackageInternalNs("com.
playmage.controlSystem.view.components"),Namespace("http://adobe.com/AS3/2006/builtin"),Pro
tectedNamespace("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticPro
tectedNs("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticProtectedN
s("flash.display:Sprite"),StaticProtectedNs("flash.display:DisplayObjectContainer"),Static
ProtectedNs("flash.display:InteractiveObject"),StaticProtectedNs("flash.display:DisplayObj
ect"),StaticProtectedNs("flash.events:EventDispatcher"),StaticProtectedNs("Object")])
getlocal 8
getproperty
Multiname("heroIdTxt",[PrivateNamespace("*","36"),PackageNamespace(""),PackageNamespace("c
om.playmage.controlSystem.view.components"),PrivateNamespace("*","163"),PackageInternalNs(
"com.playmage.controlSystem.view.components"),Namespace("http://adobe.com/AS3/2006/builtin"
),ProtectedNamespace("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),Stat
icProtectedNs("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticProte
ctedNs("flash.display:Sprite"),StaticProtectedNs("flash.display:DisplayObjectContainer"),S
taticProtectedNs("flash.display:InteractiveObject"),StaticProtectedNs("flash.display:Displ
ayObject"),StaticProtectedNs("flash.events:EventDispatcher"),StaticProtectedNs("Object")])
pushstring ""
setproperty
Multiname("text",[PrivateNamespace("*","36"),PackageNamespace(""),PackageNamespace("com.pl
aymage.controlSystem.view.components"),PrivateNamespace("*","163"),PackageInternalNs("com.
playmage.controlSystem.view.components"),Namespace("http://adobe.com/AS3/2006/builtin"),Pro
tectedNamespace("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticPro
tectedNs("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticProtectedN
s("flash.display:Sprite"),StaticProtectedNs("flash.display:DisplayObjectContainer"),Static
ProtectedNs("flash.display:InteractiveObject"),StaticProtectedNs("flash.display:DisplayObj
ect"),StaticProtectedNs("flash.events:EventDispatcher"),StaticProtectedNs("Object")])
jump ofs0218
ofs01dd:getlex Qname(PrivateNamespace("*","36"),"_heroShipArr")
getlocal 4
getlex Qname(PrivateNamespace("*","36"),"_shipArr")
getproperty Qname(PackageNamespace(""),"length")
subtract
getproperty
MultinameL([PrivateNamespace("*","36"),PackageNamespace(""),PackageNamespace("com.playmage
.controlSystem.view.components"),PrivateNamespace("*","163"),PackageInternalNs("com.playma
ge.controlSystem.view.components"),Namespace("http://adobe.com/AS3/2006/builtin"),Protected
Namespace("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticProtected
Ns("com.playmage.controlSystem.view.components:AssignShipToHeroUI"),StaticProtectedNs("fla
sh.display:Sprite"),StaticProtectedNs("flash.display:DisplayObjectContainer"),StaticProtec
tedNs("flash.display:InteractiveObject"),StaticProtectedNs("flash.display:DisplayObject"),
StaticProtectedNs("flash.events:EventDispatcher"),StaticProtectedNs("Object")])
coerce Qname(PackageNamespace("com.playmage.planetsystem.model.vo"),"Hero")
dup
setlocal 12
Ok, there area lot or $$ instuctions in the decompiled texts. Please attach your swf file,
therwise we can't help you. The long pcode list is not needed.
I think we fixed this in nightly build 1775.
State: new→upgraded
State: upgraded→closed