Commit Graph

507 Commits

Author SHA1 Message Date
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
honfika@gmail.com
0850723795 AS3 PCode serach 2016-12-25 20:22:24 +01:00
honfika@gmail.com
11088fec36 #1308 Search by all P-code files 2016-12-19 22:21:53 +01:00
honfika@gmail.com
dfc0cb279d Saving files before refreshing line endings 2016-12-01 15:11:21 +01:00
honfika@gmail.com
77842de665 #1312 faster colliding usages finder 2016-12-01 15:09:47 +01:00
Jindra Petřík
ca31ef513d Issue #1283 AS3 Unbounded Vector - Vector<*> decompilation and direct editation fix 2016-10-03 23:45:33 +02:00
Jindra Petřík
8cb6bbaf0a Saving files before refreshing line endings 2016-09-18 23:46:59 +02:00
honfika@gmail.com
1164bed4d2 Show warning when FFDec application version (ffdec.jar) is different from FFDec library version. 2016-09-18 18:59:10 +02:00
Jindra Petřík
090c82f504 AS3 Direct editing fix - saving local register names without breaking slots 2016-09-18 09:59:56 +02:00
Jindra Petřík
6d6d4f0d40 AS3 Direct editing fix - saving local register names 2016-09-18 09:35:44 +02:00
Jindra Petřík
086af5b02c Collision fixer - fix also other similar names
- methods in Multiname to check if it has own name/namespace/namespaceset
2016-09-17 19:42:42 +02:00
Jindra Petřík
94c579623c Collision fixer - fix also other similar names 2016-09-17 19:41:31 +02:00
Jindra Petřík
1253fcbdbf Multiname collision fixer 2016-09-17 16:19:16 +02:00
Jindra Petřík
112819d464 Multiname suffixes refresh method renamed 2016-09-17 15:09:40 +02:00
Jindra Petřík
9bb7c01bc8 Collide traits only on same level 2016-09-17 14:56:09 +02:00
Jindra Petřík
8a0223a02a Namespace suffix handling on all Levels.
Classes with same name handling.
Test data
2016-09-17 14:44:59 +02:00
Jindra Petřík
a5ab81747e Issue #1279 show duplicate trait names with hash suffix
Fixed editing const/slot
Namespace testdata
2016-09-17 00:07:50 +02:00
Jindra Petřík
b37fd0cd5b Refactor multiname usage classes
Get namespace in multiname usage
2016-09-15 00:02:05 +02:00
honfika@gmail.com
6c8233492b Saving files before refreshing line endings 2016-09-06 09:38:28 +02:00
Jindra Petřík
88bb9ae22a Auto closing blocks on 2016-08-31 16:56:27 +02:00
Jindra Petřík
1fcc9c6ba0 AS3 p-code Popup docs for other items than instructions 2016-08-28 23:39:47 +02:00
Jindra Petřík
8f29c8f8db AS3 p-code block ends like in RabcDasm 2016-08-28 19:55:33 +02:00
Jindra Petřík
da859ddb41 AS3 p-code editing - metadata read/write support 2016-08-28 17:01:50 +02:00
Jindra Petřík
d22a166163 Organize import 2016-08-20 20:12:28 +02:00
Jindra Petřík
7af743ff0b Fix metadata compiling in FFDec AS3 compiler 2016-08-20 19:09:32 +02:00
Jindra Petřík
5c4e07ec1b Parsing Flex SDK errors
init swf to flex before editig
2016-08-20 18:23:09 +02:00
Jindra Petřík
c4e1879b79 As3ScriptReplacer as interface
Better handling missing directories
Tip for directories in advanced setting refactored - link to Flex SDK
Use Flex SDK switch in Advanced settings
2016-08-16 23:31:12 +02:00
Jindra Petřík
ebedbd9523 Issue #1189 Sort imports to have same order always 2016-08-16 20:45:43 +02:00
Jindra Petřík
aaa236edde Imports from same package fixed 2016-08-16 20:40:17 +02:00
Jindra Petřík
db294e7a70 Reorder scripts and classes to be in position as original script. 2016-08-16 07:59:59 +02:00
Jindra Petřík
7c5d5eac58 Merge ABCs on compile
TODO: reorder correctly
2016-08-16 06:44:48 +02:00
Jindra Petřík
9262eff627 ABC merging 2016-08-15 21:15:53 +02:00
Jindra Petřík
b750780cd9 Export subclasses stubs to be compiled by Flex too.
WIP: merging ABCs
Test data (flexedit) with simple class hierarchy
2016-08-14 23:25:46 +02:00