44 Commits

Author SHA1 Message Date
Jindra Petřík
7d18834c81 feat!: redesigned loop detector (#2542)
Instead of walking code structures to get loops,
the loops are populated by new faster algorithm.
Also, we do not join adjacent GraphParts anymore
in non-obfuscated code.
For proper switch handling, the code is decompiled
in two passes everytime (Previously, the second pass
was used only sometimes).
In first pass we do not process ifs as it may break
switch detection. Second pass is executed after we know
the switches position.

Fixes #2542
2026-04-06 21:06:19 +02:00
Jindra Petřík
e577257532 Update year in license header. 2026-01-16 21:33:23 +01:00
Jindra Petřík
f8eefae60e Fix test. 2025-08-02 13:54:08 +02:00
Jindra Petřík
90a82a538a Print SafeStr list at the bottom (AS3) 2025-07-25 19:30:13 +02:00
Jindra Petřík
3f9f349a69 Update year in license headers to 2025 2025-05-26 07:41:42 +02:00
Josh Soref
2f216b0755 spelling: expected
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2024-10-29 16:55:43 +01:00
Josh Soref
db8453094e spelling: execute
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2024-10-29 16:55:43 +01:00
Jindra Petřík
531cb00e1d Organize imports 2024-10-13 20:43:18 +02:00
Jindra Petřík
38bcab878b Remove "static operation". 2024-08-08 19:27:14 +02:00
Jindra Petřík
19c771bf44 Update license year 2024-08-05 11:17:25 +02:00
Jindra Petřík
5141263960 Fixed #223 AS2 Detecting uninitialized class fields 2023-10-16 09:36:06 +02:00
Jindra Petřík
487d1f8b14 Update license year 2023-03-19 22:43:41 +01:00
Jindra Petřík
1c9f81fceb Added #1701 Setting charset for SWF files with version 5 or lower 2022-11-14 10:04:55 +01:00
Jindra Petřík
1d82af4855 Update license header year 2022-11-06 21:44:39 +01:00
Jindra Petřík
d3477d910c Fixed: #1838 AS3 - Properly handling of long unsigned values, hex values, default uint values etc.
Changed: AS3 integer values are internally (e.g. in the lib) handled as java int type instead of long.
2022-10-22 15:27:44 +02:00
Jindra Petřík
526f484513 Fixed AS1/2 - switch with nontrivial expressions like and/or,ternar (second pass) 2021-11-29 17:15:56 +01:00
Jindra Petřík
c6b1e528df update license header year 2021-02-08 20:15:19 +01:00
Jindra Petřík
7f6181360f AS3 p-code more RAbcDasm like (parenthesis after True/False/Undefined/Null trait kinds)
AS3 method trait p-code indentation
AS3 editation of body traits (slot/const only)
2021-02-08 20:15:19 +01:00
Jindra Petřík
02660f396e AS1/2 deobfuscation of empty stack pops - returning Undefined instead 2018-05-28 18:00:32 +02:00
Jindra Petřík
c0e6e728d9 AS2 class detector - checking classes only in DoInitAction tags 2018-01-27 11:34:51 +01:00
Jindra Petřík
2bf7597cea update license headers 2018-01-16 20:24:33 +01:00
honfika@gmail.com
cf58f71f10 AVM2 execution fixes 2016-12-30 21:19:48 +01:00
Jindra Petřík
6781d86a6c Reformat and organize imports 2016-08-06 07:21:58 +02:00
Jindra Petřík
12e3d208ce Merge origin/master 2016-01-03 14:35:18 +01:00
Jindra Petřík
b3bbdd113e player test fix 2016-01-03 12:36:38 +01:00
honfika@gmail.com
646d696251 fixes again 2016-01-01 14:30:08 +01:00
honfika@gmail.com
1cea429e7b copyright year updated 2016-01-01 14:06:56 +01:00
Jindra Petřík
c4c69abf83 Experimental execution of AS1/2 in FFDec Flash viewer (very basic, needs testing and many improvements) 2015-12-29 08:05:23 +01:00
honfika@gmail.com
0cf0df67ea using existing getOffset method everywhere, made offset is privete 2015-11-30 09:16:51 +01:00
Jindra Petřík
1237762e60 AS1/2 debugger
debugger listening only when really debugging started
fail to listen message
break reason displayed
2015-11-21 19:12:42 +01:00
honfika@gmail.com
dc3cbaf317 do not write everyting to the output while testing instruction executions 2015-11-18 17:35:48 +01:00
honfika@gmail.com
9b03c3d5de further as2/3 execution fixes 2015-11-18 17:18:14 +01:00
zavarkog
0555e6a535 disable test in flashplayertest.java 2015-11-18 10:34:18 +01:00
zavarkog
e9072207c1 as3 execution fixes 2015-11-18 10:33:13 +01:00
honfika@gmail.com
e62b886a09 AS3 instruction execution fixes 2015-11-05 08:53:57 +01:00
honfika@gmail.com
3508a67fc1 some AS3 instruction executions implemented 2015-11-04 07:49:49 +01:00
honfika@gmail.com
45c1cae754 execution tests added 2015-11-03 13:42:34 +01:00
honfika@gmail.com
56bd4cd1f6 AS2 deobfuscation improvement 2015-11-01 12:12:04 +01:00
honfika@gmail.com
75b407d119 execute actions without translating them...., using this new execute method in deobfuscator 2015-10-25 10:08:28 +01:00
honfika@gmail.com
4c942fb3b5 execute actions without translating them.... to be continued... 2015-10-24 18:29:56 +02:00
honfika@gmail.com
4abf8e98c8 test method to find AS execution problems (compares the result from FFDec and from Adobe flash player) improved 2015-10-05 18:35:44 +02:00
honfika@gmail.com
d293986aba disable test, because it needs flash player (+windows) on the build machine 2015-09-22 12:41:20 +02:00
honfika@gmail.com
f14fb16793 Action getResult fixes 2015-09-22 12:40:11 +02:00
honfika@gmail.com
0037ab4048 flash player test 2015-09-09 22:13:59 +02:00