From 2e41a0ef62fcecc78c1423365e6eb22e6e8826b8 Mon Sep 17 00:00:00 2001 From: "honfika@gmail.com" Date: Sun, 29 May 2016 14:25:04 +0200 Subject: [PATCH] #1241 Settings to show original bytes --- .../jpexs/decompiler/flash/action/Action.java | 22 ++++++++++-------- .../flash/configuration/Configuration.java | 5 ++++ .../flash/gui/action/ActionPanel.java | 17 ++++++++++++++ .../flash/gui/graphics/originalbytes16.png | Bin 0 -> 554 bytes .../flash/gui/locales/MainFrame.properties | 4 +++- 5 files changed, 37 insertions(+), 11 deletions(-) create mode 100644 src/com/jpexs/decompiler/flash/gui/graphics/originalbytes16.png diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/action/Action.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/action/Action.java index b80825158..2310be52c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/action/Action.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/action/Action.java @@ -540,17 +540,19 @@ public abstract class Action implements GraphSourceItem { writer.appendNoHilight("; "); byte[] bytes = a.getBytes(version); writer.appendNoHilight(Helper.bytesToHexString(bytes)); - long fileOffset = a.getFileOffset(); - if (fileData != null && fileOffset != -1 && fileData.length > fileOffset + bytes.length - 1) { - writer.appendNoHilight(" ("); - for (int i = 0; i < bytes.length; i++) { - writer.appendNoHilight(Helper.byteToHex(fileData[(int) (fileOffset + i)])); - writer.appendNoHilight(" "); - } + if (Configuration.showOriginalBytesInPcodeHex.get()) { + long fileOffset = a.getFileOffset(); + if (fileData != null && fileOffset != -1 && fileData.length > fileOffset + bytes.length - 1) { + writer.appendNoHilight(" ("); + for (int i = 0; i < bytes.length; i++) { + writer.appendNoHilight(Helper.byteToHex(fileData[(int) (fileOffset + i)])); + writer.appendNoHilight(" "); + } - writer.appendNoHilight("@"); - writer.appendNoHilight(Helper.formatHex(a.getFileOffset(), 8)); - writer.appendNoHilight(")"); + writer.appendNoHilight("@"); + writer.appendNoHilight(Helper.formatHex(fileOffset, 8)); + writer.appendNoHilight(")"); + } } writer.newLine(); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/configuration/Configuration.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/configuration/Configuration.java index fc5f1877a..71afa4a19 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/configuration/Configuration.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/configuration/Configuration.java @@ -175,6 +175,11 @@ public class Configuration { @ConfigurationCategory("script") public static final ConfigurationItem resolveConstants = null; + @ConfigurationDefaultBoolean(false) + @ConfigurationCategory("script") + @ConfigurationInternal + public static final ConfigurationItem showOriginalBytesInPcodeHex = null; + /** * Limit of code subs (for obfuscated code) */ diff --git a/src/com/jpexs/decompiler/flash/gui/action/ActionPanel.java b/src/com/jpexs/decompiler/flash/gui/action/ActionPanel.java index 549216d82..e3a30d09f 100644 --- a/src/com/jpexs/decompiler/flash/gui/action/ActionPanel.java +++ b/src/com/jpexs/decompiler/flash/gui/action/ActionPanel.java @@ -131,6 +131,8 @@ public class ActionPanel extends JPanel implements SearchListener%0@X#qNm?PnI(5kN`Hz+g4i0WYE>s+)T8wBY<@uye zg$~Iqbm&kis3nQeZh}D(9i@X7oJs`+`ye?E>5EVEQth`K&cBcE+;a~AT5I7iwASMH z{dl&-N?Fh=u4Fx!3y9@VMqC|KthJV8GHH~WZDeUA#iz{}c^lV&edThLp5wU!@E3c& zN7}!L#D^xy9maUv+RTI%y7STub#}Jb4VpG_6*Q|~!TKvAZ&%(CYK*b>^N0_bV>S(|!^WFpNuEjH!Hq*^S-R!jrap zjQ51-c-YMGNs5^llk_ioUsozvZ^sF~m^Rx{8#n$D+4+$Y(=P7(s)FmyBA&!jq2;hu s5Xepwx!kz~T&Fiq@X3bD8-f*F0Bfwdz|%wR4FCWD07*qoM6N<$f-$J?xc~qF literal 0 HcmV?d00001 diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties index 664df88d2..0875f7dc7 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties @@ -712,8 +712,10 @@ menu.settings.simplifyExpressions = Simplify expressions #after 8.0.1 menu.recentFiles.empty = Recent file list is empty -message.warning.outOfMemory32BitJre = OutOfMemory error occured. You are running 32bit Java on 64bit system. Please use 64bit Java. +message.warning.outOfMemory32BitJre = OutOfMemory error occurred. You are running 32bit Java on 64bit system. Please use 64bit Java. menu.file.reloadAll = Reload all message.confirm.reloadAll = This action cancels all unsaved changes in all SWF files and reloads whole application again.\nDo you want to continue? export.script.singleFilePallelModeWarning = Single file script export is not supported with enabled parallel speedup + +button.showOriginalBytesInPcodeHex = Show original bytes