-
Notifications
You must be signed in to change notification settings - Fork 116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deobfuscate control flow flattening with dead code injection #44
Comments
Here you can test a workaround but it's not guaranteed to be safe: https://deploy-preview-45--webcrack.netlify.app/ |
I tested that the deobfuscated code runs fine. Regarding the above question, in general, it is possible to assume that the objects generated by the obfuscator are not reassigned. You also can try deobfuscate the if statement first to confirm that the branching code will not run. |
Yes that's what was checked for previously webcrack/packages/webcrack/src/deobfuscate/control-flow-object.ts Lines 115 to 121 in 3aeada5
its the messiest code ever and there are still so many edge cases left:
There's no way to do it "first" because of the order in which these objects are created |
I mean don't do these checks, just inline them.
what is " |
After deobfuscating of this code, some parts are still obfuscated.
obfuscated.txt
Obfuscation 1: An object stores a lot of simple functions and literals.
Obfuscation 2: An object references some literals or functions in another object.
The text was updated successfully, but these errors were encountered: