Commit Graph

539 Commits

Author SHA1 Message Date
Jindra Petřík
70e421ec06 deobfuscation fix
try..return
2021-02-08 20:15:19 +01:00
Jindra Petřík
dabb1880fb remove kill switch 2021-02-08 20:15:19 +01:00
Jindra Petřík
7037d7ff02 Set slot ins fix 2021-02-08 20:15:19 +01:00
Jindra Petřík
f51644caeb Set super fix - it's settype (works with chained assignments) 2021-02-08 20:15:19 +01:00
Jindra Petřík
5796832107 Finally return 2021-02-08 20:15:19 +01:00
Jindra Petřík
4ac7c72499 for (each) in 2021-02-08 20:15:19 +01:00
Jindra Petřík
4e191a701f setlocal..getlocal..nootheruse 2021-02-08 20:15:19 +01:00
Jindra Petřík
787e22c3e3 chained assignments 2021-02-08 20:15:19 +01:00
Jindra Petřík
06c681b72c call 2021-02-08 20:15:19 +01:00
Jindra Petřík
f7063415ec no print 2021-02-08 20:15:19 +01:00
Jindra Petřík
ddab9c4ac9 Switch 2021-02-08 20:15:19 +01:00
Jindra Petřík
7725258ceb Calculate setLocal usages and use it in setProperty 2021-02-08 20:15:19 +01:00
Jindra Petřík
9e5b90827d Kill switch 2021-02-08 20:15:19 +01:00
Jindra Petřík
3f2e075ee9 Fixed goto/for detection 2021-02-08 20:15:19 +01:00
Jindra Petřík
b4b9a7fe8e goto detection improvements 2021-02-08 20:15:19 +01:00
Jindra Petřík
054b0dc9f7 goto detection... still does not work 2021-02-08 20:15:19 +01:00
Jindra Petřík
15e69bbf75 AS3: Incorrect handling of strict equals operator in if vs switch resulting in §§pop 2021-02-08 20:15:19 +01:00
Jindra Petřík
cade4549fb AS3 test methods separated to classes, Fixed AS3: get/set slot for global scope 2021-02-08 20:15:19 +01:00
Jindra Petřík
dc18fad2b3 Improved for continue / goto detection 2021-02-08 20:15:19 +01:00
Jindra Petřík
819a739397 GraphTargetVisitorInterface for visiting model 2021-01-09 13:00:30 +01:00
Jindra Petřík
4926cb04d0 Show §§findproperty when neccessary (AS3) 2021-01-09 08:43:45 +01:00
Jindra Petřík
637f52091a setglobalslot as §§ 2021-01-09 08:34:54 +01:00
Jindra Petřík
60d91f7782 Use object.§§slot[index] syntax instead of /* UnknownSlot */ comment when slot cannot be determined (AS3) 2021-01-09 08:34:27 +01:00
Jindra Petřík
ea51fdea9a #1379 AS3 - better handling local registers postincrement/decrement 2021-01-06 17:13:00 +01:00
Jindra Petřík
2b64e72014 Correct body index for script initializer in P-code debugging 2021-01-06 08:43:04 +01:00
Jindra Petřík
6637b11d67 Correct line matching in debugger of AS3 after using deobfuscation 2021-01-04 18:35:47 +01:00
Jindra Petřík
da34fcbd04 Putting XML import/export export back in as it seems to run fine. 2021-01-04 17:56:13 +01:00
Jindra Petřík
ac66eb740b Fixed: Correct AS/P-code matching in editor for AS3 after using deobfuscation 2021-01-04 10:10:23 +01:00
Jindra Petřík
ca21337d9f java 9 compliance
- base64, bytearrtohex, installed fonts, xml sax parser
2021-01-01 01:07:43 +01:00
nename0
76724b9375 Fix access to protected members with super (#75)
* fix access to protected members with super

* prevent overridden function to be found before the overriding
2020-04-25 17:11:07 +02:00
nename0
d69d81ea3f the p-code generation of lookupswitch now correctly does -1 from the count of cases (#74) 2020-04-25 17:11:07 +02:00
Jindra Petřík
2c3b9354aa #1457 AS3 switch without lookupswitch ins detection 2020-04-25 17:11:07 +02:00
Jindra Petřík
cdd1acb1f9 More universal GraphExporter
Log exceptions on copy to clipboard graph
2018-05-24 15:31:30 +02:00
Jindra Petřík
eb9959a171 Fix: HAS_OPTIONAL flag in AVM2 code displayed twice 2018-02-10 22:31:04 +01:00
Jindra Petřík
da586b105f - New AS2 class detector
- Reference helper class moved to helper package.
2018-01-22 22:06:40 +01:00
Jindra Petřík
2bf7597cea update license headers 2018-01-16 20:24:33 +01:00
Jindra Petřík
eded349823 removeNullPushes .. optimize call getImportantOffsets - only when instruction removed 2018-01-14 14:18:23 +01:00
Jindra Petřík
91a18f1dea diamond operator 2018-01-14 14:14:58 +01:00
Jindra Petřík
ab836b0d19 Removed check for PushIntegerTypeIns as it is just interface to group pushshort,pushbyte,pushint,etc... 2018-01-14 14:14:32 +01:00
Jindra Petřík
2ce278f575 reformat 2018-01-14 14:12:39 +01:00
Jindra Petřík
dbf38cc63e Merge pull request #48 from MultiplyByZer01/dev
Deobfuscate no-op push instructions
2018-01-14 14:06:44 +01:00
Zoltán Kurucz
7f0ba33355 Prevent impossible pushshort pcode generation edit actionscript 2017-05-06 01:43:25 +02:00
MultiplyByZer0
2c85203985 Prevent crash when calling insertInstruction() on empty MethodBody
If an AVM2Code object is empty, and we attempt to insert an instruction, the method will execute code.get(-1) and throw an exception. This commit handles the situation.
2017-03-11 21:58:27 -05:00
MultiplyByZer0
e8e598dc6c Correct deobfuscation for labels
The deobfuscator will no longer incorrectly remove the following code:

pushtrue
label1:pop
2017-02-28 15:49:21 -05:00
MultiplyByZer0
0b65cb3c6b Deobfuscate no-op push instructions
Some obfuscators will scatter the instructions:

pushtrue
pop

or:

pushfalse
pop

randomly throughout the P-code. As any push instruction immediately followed by a pop instruction must be a no-op, they are removed.
2017-02-11 21:37:31 -05:00
honfika@gmail.com
86f19ff07b #1332 Do not render image tags with internal viewer 2017-01-03 10:19:33 +01:00
honfika@gmail.com
b13bd62e5f #1333 Exporting sprites as swf files 2016-12-31 17:06:45 +01:00
honfika@gmail.com
cf58f71f10 AVM2 execution fixes 2016-12-30 21:19:48 +01:00
honfika@gmail.com
93082c1eb3 AS3 pcode search improvements 2016-12-27 19:52:49 +01:00
honfika@gmail.com
8779d5d78c #1327 P-code editing: error message and syntax highlighting fixed when instruction name contains upper cased letter 2016-12-26 12:53:32 +01:00