: WARNING - support of the decompiler is now VERY LIMITED. There are no active developers. This means waiting times in the issue tracker are very long and mostly depend on community. Sorry for the inconvenience.
State: new new: Initial state. As long as issue is in this state, the work on the issue has not yet begun. opened: Opened state means developer started working on the issue. Feature/Fix will probably be in the next release. postponed: This means developer is not working on it now, for some reason it cannot be implemented now. Issue may be opened again in the future. upgraded: Issue is in upgraded state when developer made changes to the program and new version was released. closed: This means the user is satisfied with issue results and no more changes are needed. invalid: These issues cannot be solved. ignored: Developer decided to take no action on this issue. returned: Program changes were made but user is not satisfied and returned the issue.
> What steps will reproduce the problem?
With the given file:
Tools -> P-code deobfuscation -> Restore flow control OR remove traps
Edit something so that FFDec recognizes that stuff has been changed. (This is another bug:
If you go straight to saving after deobfuscating, it won't save the changes.)
> What is the expected output? What do you see instead?
The expected result is correctly deobfuscated code. The actual result is a broken SWF.
(The SWF just shows a black screen.)
> What version of the product are you using? Is it "nightly build"? Which operating system
do you have?
I am using version 6.1.1 on Windows 7.
> Please provide any additional information below. If the problem is related to a SWF
file, attach it here, otherwise we can't help you.
I have found one example of code that was incorrectly deobfuscated: scripts -> data ->
class_10 -> getDay()
I would expect the result to look like this:
var _loc1_:* = this.method_79();
var _loc2_:Number = Math.round(_loc1_ / 24 / 60 / 60);
but it actually looks like this:
var _loc2_:Number = Math.round(false / 24 / 60 / 60);