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.

#1018 Strange §§dup on 6.0.1 that didn't happen on 5.x
Author:
soywiz2

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

-----------
ORIGINAL:
public function restoreMatrixTranslate():void {
si32(PrenderDrawCommands.RESTORE_MATRIX_TRANSLATE, offset + 0);
offset += 4;
}
-----------
DECOMPILED:
public function restoreMatrixTranslate() : void
{
si32(offset + 0,4); // si32 argument order is wrong (I have filed another issue with
this)
offset = §§dup().offset + 4; // §§dup shouldn't appear
}
--------------
BYTECODE:
trait method Qname(PackageNamespace(""),"restoreMatrixTranslate") dispid 0
method
name "restoreMatrixTranslate"
returns Qname(PackageNamespace(""),"void")
body
maxstack 3
localcount 1
initscopedepth 0
maxscopedepth 1
code
getlocal_0
pushscope
debugfile "PrenderContext.as"
debugline 129
pushbyte 4
getlex Qname(PackageNamespace(""),"offset")
pushbyte 0
add
si32
findpropstrict Qname(PackageNamespace(""),"offset")
dup
getproperty Qname(PackageNamespace(""),"offset")
debugline 130
pushbyte 4
add
setproperty Qname(PackageNamespace(""),"offset")
returnvoid
Yes, v 6.x places various §§ instruction over the code.
They should be visible only in some special cases where code could not be decompiled
correctly.
In 5.x or lower, you see "Decompilation error" message and the rest of the method is
discarded in many cases. 6.x solves this by adding §§dup,§§push,§§pop instructions
and proceeding without other commands loss.
Our current goal is to eliminate §§ instructions in the proper code.
I will investigate what is wrong with the sixx instructions, be patient...
I guess it should be correct in current nightly(1206+)
State: new→upgraded
I close this issue due to inactivity. Please create new issue if problem still exists.
State: upgraded→closed