You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Looks for `byte[]` fields initialised with a `FilledNewArrayNode` of all literal bytes. If the bytes decode as valid UTF-8 with sufficient printable characters, adds a `bytes: "..."` comment on the field.
52
+
Looks for `byte[]`and `int[]`fields initialised with a `FilledNewArrayNode` of all literal values. For `int[]`, any element outside `[0, 255]` (e.g. a `-1` sentinel in a decode table) causes the whole array to be skipped. The elements are then treated as bytes, decoded as UTF-8, and if the result is sufficiently printable a `bytes: "..."` comment is added on the field. `visit(ClassNode)` returns `true` so `DepthTraversal` recurses into inner classes.
Copy file name to clipboardExpand all lines: README.md
+4-1Lines changed: 4 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ A JADX plugin that detects likely encoded string constants during decompilation
6
6
7
7
**Base64 string detection** — scans string constants in method bodies, and field initializers. When a string looks to be Base64 encoded, a `// b64: <decoded>` comment is added next to it.
8
8
9
-
**Byte array string detection** — scans `byte[]` fields initialised with literal byte arrays. When the bytes decode as valid UTF-8 with sufficient printable characters, a `// bytes: "<string>"` comment is added.
9
+
**Byte array string detection** — scans `byte[]`and `int[]`fields initialised with literal arrays. The values are treated as bytes and decoded as UTF-8; if the result has enough printable characters, a `// bytes: "<string>"` comment is added.
0 commit comments