+ update 2020: WARNING - support of the decompiler is now VERY LIMITED. There are no active developers. This means we will NOT develop new features and/or fix most of bugs. We left the tracker running in case somebody from community would like to work on it. 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?
I was trying to change a script via P-code/hex...
Im not sure if I found the good thing, but its just enabled the HEX and P-code browsing
and editing. The assigning the P-codes/HEX positions with code positions is little broken
(when I click to an variable in P-code, in script the cursor went absolutly wrong), but
anyway, I found the good thing and changed (think) pushtrue to pushfalse. After script
recompile its shows a variable = false. So nice, I saved that, but when is thread with the
edited segment is executed, its froze. Hmm, maybe I doing something wrong? The sizes of
SWFs are different, but I tried load the original SWF and Saving as recompiled (but same
script), the size changed too but SWF works good (but without changes). Next I tried to
negate a condition what the boolean is used, I successfully did it, but same behavior, its
> What is the expected output? What do you see instead?
I wanted to pass the authentication, so the condition to change password to random string
will not be executed.
> What version of the product are you using? Is it "nightly build"? Which operating system
do you have?
8.0.1, Windows 10 Pro 64bit.
> Please provide any additional information below. If the problem is related to a SWF
file, attach it here, otherwise we can't help you.
Well, I think the ANY change of P-Code will broke whole script (script what I editing is
HUGE), I think some function names are broken etc. I tried to manually edit the hex (27 =
pushtrue to 26 = pushfalse), but same behavior.
So if i understood correctly you edited the appropriate byte (in the uncompressed SWF)
with a hex editor from 27 to 26 (pushtrue to pushfalse), and the problem still occures,
Then it is not an FFDec problem.
Probably there is some code in your file which executes and fails when you change this
Btw: Is thins problem still exists?
I didn't tested it yet. I probably wrong described my problem. After changing the pushtrue
to pushfalse, the whole flash file being broken. Main interesting thing is that the file
size is changed, when only one byte been changed.
Please attach the swf. If your swf is compressed (starts with CWS or ZWS bytes) then it is
normal that the size changes, because FFDec recompresses it. Uncopressed SWF file shouls
start with FWS bytes.