Exetools

Exetools (https://forum.exetools.com/index.php)
-   Community Tools (https://forum.exetools.com/forumdisplay.php?f=47)
-   -   URET Android Reverser Toolkit v1.1 (https://forum.exetools.com/showthread.php?t=17398)

Jasi2169 02-24-2016 05:57

URET Android Reverser Toolkit v1.4 [UPDATED]
 
Uret Android Reverser Toolkit v1.5
Requirements: Windows OS XP And Above, JRE 1.7 Or Above, Dot Net Framework v4.0 And Above
Overview: Uret Android Reverser Toolkit Has Been Built With The Idea Of Providing The Easy Work With Android Reversing To End User, It Is Fast, Stable, Smooth And NOOB FRIENDLY..!!

http://oi63.tinypic.com/2ic8bwn.jpg

http://oi65.tinypic.com/23r4d8x.jpg

Overview :-
URET Android Reverser Toolkit Has Been Built With The Idea Of Providing The Easy Work With Android Reversing To End User, It Is Fast, Stable, Smooth And NOOB FRIENDLY..!!
This is a GUI program Which Helps You To Do Tasks With Just Clicking Options,No Need To Write Codes Or Commands, It Handles Everything With Itself.It Is Intended To Make Your Work Easy,

Features :-
- Decompile/Compile APK Or JAR File.
- Sign The Apk/Create Your Own Keystore.
- Ziplign The Apk.
- Dex2Jar.
- Jar2Dex.
- Oat2Dex.
- Odex2Dex.
- Uncompress Xz Odex Of Samsung Roms.
- ADB One Click Commands.
- Include JDGui In It.
- Beautiful Theme
- Noob Friendly
- Much Faster And Clean,No Need To Put Commands Does Everything Automatically And Fixes Parameters Automatically When Required.

Download :-
v1.5
Quote:

http://distro.uret.ml/index.php?dir=Team-Tools/&file=URET%20Android%20Reverser%20Toolkit%20v1.5.zip
Mirror :-
Quote:

https://drive.google.com/open?id=0BzpeJB3N_dYQc25vQVRCeFhDaTg
Another Mirror :-
Quote:

https://dropapk.com/0ci9gob3ih62
Changelog :-
v1.5 (Released On 13/Jun/2017)
-> UPDATE :- Updated Compatibility With Java 8.
-> UPDATE :- Updated Apktool, Smali, Baksmali Binaries To Latest Version.
-> UPDATE :- Updated Donate Link.
-> FIX :- Fixed Signing Of APKs With Keystore, You Can Use Both OpenSSL Certificates With PEM And PK8 Files (Need To Replace Old Files Present In Binaries Folder) Or Can Use Custom Keystore Created With Keytool.
-> FIX :- Fixed Freezing While Compiling On Some APKs Which Were Having Large Size.
-> FIX :- Fixed Some Typos.

v1.4 (Released On 13/Sep/2016)
// HOT FIX :- v1.3 Had Expired Library Which Will Cause Problems In Future,All Users Should Update To v1.4 Version. //

-> NEW :- Add Custom Keystore Option,Now You Can Sign APKs/JARs With Your Own Digital Signature.
-> NEW :- Add Option To Create Keystore On The Go With Your Own Custom Details.
-> NEW :- Custom Keystore Can Be Set To Default As Well As Can Be Reset.
-> UPDATE :- Settings Saved Now Stored In App Local Directory Of Current User For Better Handling.
-> UPDATE :- Updated Help Files.
-> FIX :- Fixed Signing Of APKs Which Were Already Signed Before,Leading To Multiple Signature Causing "Parse Error" On Device.
-> FIX :- Fixed Error "Can't find the file classes.dex" When Decompile Same JAR/DEX Again Which You Already Decompiled As Toolkit Deletes JAR/DEX Directory Before Decompiling Again So When You Decompile Again The Same JAR/DEX Then The Directory Is Deleted And If You Are Inside That Directory In Explorer Then It Will Show Cant Find File As Directory Is Deleted But In Explorer You Are Inside So It Returns As Busy So Directory Cant Be Created Again And Error Thrown Up Has Been Fixed Only Used To Come Up In JAR/DEX File.
-> Required Library Is Now Merged In Main Assembly.

v1.3 (Released On 11/Sep/2016)
// This Version Is Built From Scratch. //
// Detailed Instructions Are Provided For Every Single Task,Read "HELP" Of Every Operations. //
// I Have Tested It With Every Single Input,If Still There Are Issues (Send Me Error) Or Any Suggestions Then Check Toolkit About > Reach Me. //

- Change Icons.
- New Professional Metro UI Hell Yeah!,Removed iTunes UI.
- UI Is Divided Into 2 Tabs Now As Simple And Advanced (Suggested By whoknows@BlackStorm) Hopefully This Wont Make UI Messed Up In Single Place Like Before.
- Added Option To Select Theme Cool Right?.
- Updated Apktool,Smali And Baksmali (You Can Also Update Yourself With Latest When Update Comes And Replace It In Binaries/Here Folder).
- Implemented Dex Manager Feature (Dex Manager Is Not Supported Anymore) ie. Now Directly Classes.dex Can Be Decompiled And Compiled Useful When Apktool Fails To Decompile APK Even Will We Only Want Classes To Decompile Its Due To Trick By Some Packers You Know Which One ;) (In That Case Drag Classes Out And Drop).
- Fixed Issue When Both The Resources And Classes Checkboxes Were Unchecked But Still Resources Was Getting Decompiled My Bad.
- Many Major Bugs Fixed Which Were Leading To Crashes Sometimes.
- Code Is Optimized A LOT So Hopefully Better Speed Up.
- Removed Unused Junks.
- Updated Help Instructions.
- Check For Updates Added.
- All Fancy Stuff From Previous Version Removed.
- Error Box And Logs Box Are Merged Now,Everything Shown In One Box As Output Or Error Cool Isn't It ?.
- Debugger Checks Fixed,Also AV False Positive Fixed.
- Minor Bugs Fixed (Which Could have Created Errors In Some OS).

v1.2 (Released On 26/Feb/2016)
// It Is Recommended To Extract Toolkit On Desktop For Your Work,So It Works Reliable,As Putting It In Logical Drives Like D,E Etc Will Cause Permission Denied Problems,Or Run As Admin. //
// In Case Of Java Error,Make Sure You Add JAVA_HOME Environment In Your PC. //

- Added ADB Commands Like Push,Pull,Install,Uninstall,Backup,Restore,Reboot Device,Reboot Bootloader,Reboot Recovery,Clear Logcat Buffer,Take Logcat,Run Shell Etc With One Click.
- Added Oat2Dex,Odex2Dex.
- Added Uncompress XZ Of Odex In Samsung Firmwares.
- Added Logs Box For The Output Of Right Side Panel.
- Detailed HELP Button For Every Single Task.
- Fixed Symbols "'!^&" In Apk And Jar Name Causing Problems Being Recognized.
- Fix Some Delete Actions.
- On Start It Shows If Java Is Installed Or Not In Logs Box.
- Refactor Bit Of Code.

v1.1 (Released On 23/Feb/2016)
- Fix Dragging/Loading Files From Root Directory Of Toolkit Leading To Errors,Now You Can Load File From Anywhere From PC.
- Fix The Issue With The File Having Spaces In Name Leading To Errors,Now You Can Load Any Files With Any Name Upto Windows Characters Limit.
- Fix Issues In Android JAR Processes Leading To "ACCESS Denied" When Direcotory Was Open.
- Removed Extra ApkTool.
- Cross Checked All The Validations And Fixed When Error Found.
- Fix Loading Speed,Only Takes Small Time On Very First Start To Extract Skin.
- Minor Other Bugs Fixed And Optimizations.
- Toolkit Is Fully Stable Now.

v1.0 (Released On 22/Feb/2016)
- Initial Release.

Requirements :-
-JRE
-Microsoft .Net Framework v4.0 And Above

VIDEO :-
So here is YouTube video to show how to use it
Quote:
https://youtu.be/csjNUFIplVc

Jasi2169 02-24-2016 22:53

i Cant Edit My Posts

So here is YouTube video to show how to use it

VIDEO :-

Quote:

https://youtu.be/csjNUFIplVc

Z-Rantom 02-25-2016 00:40

Nice tool :)
Have a look at this tool:
Code:

http://forum.exetools.com/showthread.php?t=16538
You may find some ideas to implement.

Jasi2169 02-26-2016 02:56

i will see later at the moment i just finished integrating adb stuff thanks for this though :)

Jasi2169 02-26-2016 22:20

Updated to v1.2



Changelog :-
v1.2 (Released On 26/Feb/2016)
// It Is Recommended To Extract Toolkit On Desktop For Your Work,So It Works Reliable,As Putting It In Logical Drives Like D,E Etc Will Cause Permission Denied Problems,Or Run As Admin. //
// In Case Of Java Error,Make Sure You Add JAVA_HOME Environment In Your PC. //

- Added ADB Commands Like Push,Pull,Install,Uninstall,Backup,Restore,Reboot Device,Reboot Bootloader,Reboot Recovery,Clear Logcat Buffer,Take Logcat,Run Shell Etc With One Click.
- Added Oat2Dex,Odex2Dex.
- Added Uncompress XZ Of Odex In Samsung Firmwares.
- Added Logs Box For The Output Of Right Side Panel.
- Detailed HELP Button For Every Single Task.
- Fixed Symbols "'!^&" In Apk And Jar Name Causing Problems Being Recognized.
- Fix Some Delete Actions.
- On Start It Shows If Java Is Installed Or Not In Logs Box.
- Refactor Bit Of Code.

SEE OP

_Servil_ 09-11-2016 22:04

Quote:

Changelog :-
v1.3 (Released On 10/Sep/2016)
// This Version Is Built From Scratch. //
// Detailed Instructions Are Provided For Every Single Task,Read "HELP" Of Every Operations. //
// I Have Tested It With Every Single Input,If Still There Are Issues (Send Me Error) Or Any Suggestions Then Check Toolkit About > Reach Me. //
- Change Icons.
- New Professional Metro UI Hell Yeah!,Removed iTunes UI.
- UI Is Divided Into 2 Tabs Now As Simple And Advanced (Suggested By whoknows@BlackStorm) Hopefully This Wont Make UI Messed Up In Single Place Like Before.
- Added Option To Select Theme Cool Right?.
- Updated Apktool,Smali And Baksmali (You Can Also Update Yourself With Latest When Update Comes And Replace It In Binaries/Here Folder).
- Implemented Dex Manager Feature (Dex Manager Is Not Supported Anymore) ie. Now Directly Classes.dex Can Be Decompiled And Compiled Useful When Apktool Fails To Decompile APK Even Will We Only Want Classes To Decompile Its Due To Trick By Some Packers You Know Which One ;) (In That Case Drag Classes Out And Drop).
- Fixed Issue When Both The Resources And Classes Checkboxes Were Unchecked But Still Resources Was Getting Decompiled My Bad.
- Many Major Bugs Fixed Which Were Leading To Crashes Sometimes.
- Code Is Optimized A LOT So Hopefully Better Speed Up.
- Removed Unused Junks.
- Updated Help Instructions.
- Check For Updates Added.
- All Fancy Stuff From Previous Version Removed.
- Error Box And Logs Box Are Merged Now,Everything Shown In One Box As Output Or Error Cool Isn't It ?.
- Debugger Checks Fixed,Also AV False Positive Fixed.
- Minor Bugs Fixed (Which Could have Created Errors In Some OS).
Code:

http://distro.uret.ml/index.php?dir=Team-Tools/&file=URET%20Android%20Reverser%20Toolkit%20v1.3.zip

Jasi2169 09-13-2016 23:19

v1.4 is up

Quote:

v1.4 (Released On 13/Sep/2016)
// HOT FIX :- v1.3 Had Expired Library Which Will Cause Problems In Future,All Users Should Update To v1.4 Version. //

-> NEW :- Add Custom Keystore Option,Now You Can Sign APKs/JARs With Your Own Digital Signature.
-> NEW :- Add Option To Create Keystore On The Go With Your Own Custom Details.
-> NEW :- Custom Keystore Can Be Set To Default As Well As Can Be Reset.
-> UPDATE :- Settings Saved Now Stored In App Local Directory Of Current User For Better Handling.
-> UPDATE :- Updated Help Files.
-> FIX :- Fixed Signing Of APKs Which Were Already Signed Before,Leading To Multiple Signature Causing "Parse Error" On Device.
-> FIX :- Fixed Error "Can't find the file classes.dex" When Decompile Same JAR/DEX Again Which You Already Decompiled As Toolkit Deletes JAR/DEX Directory Before Decompiling Again So When You Decompile Again The Same JAR/DEX Then The Directory Is Deleted And If You Are Inside That Directory In Explorer Then It Will Show Cant Find File As Directory Is Deleted But In Explorer You Are Inside So It Returns As Busy So Directory Cant Be Created Again And Error Thrown Up Has Been Fixed Only Used To Come Up In JAR/DEX File.
-> Required Library Is Now Merged In Main Assembly.

Jasi2169 06-13-2017 18:54

v1.5 (Released On 13/Jun/2017)
Quote:

-> UPDATE :- Updated Compatibility With Java 8.
-> UPDATE :- Updated Apktool, Smali, Baksmali Binaries To Latest Version.
-> UPDATE :- Updated Donate Link.
-> FIX :- Fixed Signing Of APKs With Keystore, You Can Use Both OpenSSL Certificates With PEM And PK8 Files (Need To Replace Old Files Present In Binaries Folder) Or Can Use Custom Keystore Created With Keytool.
-> FIX :- Fixed Freezing While Compiling On Some APKs Which Were Having Large Size.
-> FIX :- Fixed Some Typos.
download link in OP

Jasi2169 06-23-2017 20:46

Changelog :-

v1.6 (Released On 20/Jun/2017)
– Downgraded Baksmali/Smali Binaries Which Are Stable With Toolkit.
– Added Settings Tab.
– Added Options In Settings To Disable Fade In/Fade Out Effect On Launch/Exit And Disable Welcome Toast At Right Bottom On Launch (Should Speed Up Launch).
– Added Shadow Effects On Items.
– Bugs Fixed.

Download :–

v1.6
https://drive.google.com/open?id=0BzpeJB3N_dYQMEhHN2pFSkJRNEU

Mirror :-
https://dropapk.com/t0w8cjdt7g6o

http://www113.zippyshare.com/v/Ho9P69k5/file.html

Jasi2169 11-01-2017 03:02

latest version do not uses dex manager anymore

niculaita 01-14-2018 09:02

trying to decompile http://www79.zippyshare.com/v/MwEq2Bu3/file.html I got this messages:

14.01.2018 02:55:54
S: WARNING: Could not write to (C:\Users\Niculaita\AppData\Local\apktool\framework), using C:\Users\Niculaita\AppData\Local\Temp\ instead...
S: Please be aware this is a volatile directory and frameworks could go missing, please utilize --frame-path if the default storage directory is unavailable

Done...

sendersu 05-10-2018 02:25

@Jasi2169

does your tool support obfuscated classes inside .dex?
under obfuscation I mean here to have dirs like aaa, aAA, aAa on the same level
dex2jar fails to write .jar in this case...

Kameo 05-10-2018 17:41

All links are down, too bad.

uranus64 05-10-2018 18:13

Quote:

Originally Posted by Kameo (Post 113263)
All links are down, too bad.

Are you sure ?

Why I was able to download RIGHT NOW from post #9 using google drive link specified there ?

Just asking !

Jasi2169 05-12-2018 06:17

Quote:

Originally Posted by sendersu (Post 113257)
@Jasi2169

does your tool support obfuscated classes inside .dex?
under obfuscation I mean here to have dirs like aaa, aAA, aAa on the same level
dex2jar fails to write .jar in this case...

it will decompile the classes to smali which is java bytecode even the classes.dex is encrypted you can always decompile and compile classes.dex :)

all case sensitive can be decompiled properly but copy paste wont work because windows states the same file already exist i know a == A,but decompile and compile work fine

i use this tool for my patching stuff so i made it as per my requirements and i never had any problems all dexguard,zelix,jiagu,dprotecor,apkprotect can be decompiled the main thing behind is smali basmali by jesusfreke

i would suggest you to dont use dex2jar this is crap,just use jeb decompiler ;)

Jasi2169 05-12-2018 06:18

Quote:

Originally Posted by niculaita (Post 111873)
trying to decompile http://www79.zippyshare.com/v/MwEq2Bu3/file.html I got this messages:

14.01.2018 02:55:54
S: WARNING: Could not write to (C:\Users\Niculaita\AppData\Local\apktool\framework), using C:\Users\Niculaita\AppData\Local\Temp\ instead...
S: Please be aware this is a volatile directory and frameworks could go missing, please utilize --frame-path if the default storage directory is unavailable

Done...

try to delete apktool folder ,you can also update apktool to latest just replace it in /Binaries folder

but dont replace smali/baksmali latest version are not supported i will support it in next update just need time

sendersu 05-14-2018 16:20

Thank you for your answers,
I"ll narrow down my goal:
input: windows OS, obfuscated dex (with tricky namespace +classes names like A, a, etc)
output: .jar file with java *.class files
I know that jar is zip in nature and it supports A, a in the same folder
but will it be possible to compose such a zip under WIndows OS?

thanks

Jasi2169 05-15-2018 06:59

Quote:

Originally Posted by sendersu (Post 113308)
Thank you for your answers,
I"ll narrow down my goal:
input: windows OS, obfuscated dex (with tricky namespace +classes names like A, a, etc)
output: .jar file with java *.class files
I know that jar is zip in nature and it supports A, a in the same folder
but will it be possible to compose such a zip under WIndows OS?

thanks

use Ultra compare by IDM

https://www.ultraedit.com/products/ultracompare/

or zipdiff

http://zipdiff.sourceforge.net/

windows will not support unpacking because same name even case sesntive windows takes it as same file but within zip it may work

sendersu 05-16-2018 16:02

Well, thanks
but the question was - are there any tools that could write under Windows a and A into same dir inside zip archive

if yes, then one could explore such a zip later on using say 7zip or winrar, etc
so the main q is how to produce such a zip under Window OS

Mkz 05-16-2018 18:11

I think the answer to your question depends on this: what is the source of the files?

Since Windows does not allow dealing with duplicate case-sensitive files, you can't have the source files directly on the filesystem. There are some registry settings and hacks to partially enable that support, but for the NTFS part only and not for Explorer or other windows portions. You'll need to use Cygwin or other Linux compatibility layers (see some info here: hxxps://superuser.com/a/430645 and other answers on the same question).

Now, assuming you'll need to forget about having the expanded files on the disk, what is your scenario?
Do you have a jar with A.class, a.class and need to produce a zip with A.java, a.java? Or a .dex and the need to produce a zip with A.class, a.class? etc.

Note that I'm not saying I'll be able to provide an answer, I'm just stating that you should clarify your actual need :D

sendersu 05-18-2018 18:33

Hi Mkz!
thank you for your interest,
its always cool and motivates to move forward in case o flive discussion/arguing

so, in two words, I"m looking for this scenario:
dex (having A, a in one dir) ==> .jar (having A, a in one dir)

of course under Win OS it won't be possible to keep A, a in the same dir, but this is not a must!
unfortunately majority (99%) of the tools are not taking into account this simple fact and are producing crap (again, only under Windows super duper OS)

I see the soluion smth like
tool is reading content of input archive and does NOT write it (or temp or final files) into FS, but keeps it in memory (eg in std::map, dictionary/whatever)
and when the main job is done (deobfuscation or converting dex to jar) then it'll directly write each itme into jar (=zip)

so I"m very wondering whether it is possible under Win OS to write into archive (jar) A, a into same dir...

if some tool will master it -the really huge amount of obfuscators will sux :)
as keeping a/A in same dir is the main stopper for the moment.

Mkz 05-21-2018 17:58

Dex2Jar (hxxps://github.com/pxb1988/dex2jar/releases) will do what you want, it writes the converted classes from the source .dex directly into the .jar, bypassing the case insensitivity limitation of the Windows FS.
I just tried it on an apk/dex I had here and the resulting .jar did contain a.class and A.class in the same folder. jd-gui was able to decompile each of them separately.

Note that you can also use Dex2Jar to convert a .jar to .dex, so that you can analyze it under JEB.
One of the best features I like about JEB is the fact that it lets you rename each class/type and variable names to something meaningful as you interpret the logic, and it will replace every reference to it (excepty reflection or string literals, of course). I don't remember any other tool that allows that.
The problem with JEB is that it's rather unstable and some classes or methods make it crash, not all methods can be decompiled, etc. But I guess most Java decompilers have that problem too.

sendersu 05-22-2018 18:04

Thanks for details
I get success only doing things on Linux OS
Windows each time break or mis-behave on my A/a dex

what are your steps to reach the success under win OS?

Mkz 05-23-2018 01:12

1 Attachment(s)
Try this:

1. Grab Dex2Jar from here hxxps://github.com/pxb1988/dex2jar/releases/tag/2.1-nightly-28 and unpack it to a folder
2. Take the sample I attached, some old APK I had lying around with these duplicates
3. Extract the .dex file from within: "unzip *.apk classes.dex"
4. C:\...\...\d2j-dex2jar.bat classes.dex
5. Look at the output jar, it has the duplicates: "jar tf classes-dex2jar.jar | findstr com/a/a/ac/[aA]\.class" - 2 separate files exist for that package, for instance (more exist)

Jasi2169 05-23-2018 02:13

Quote:

Originally Posted by sendersu (Post 113416)
Thanks for details
I get success only doing things on Linux OS
Windows each time break or mis-behave on my A/a dex

what are your steps to reach the success under win OS?


UART has Dex2jar and Jar2Dex feature in it :) you can drag and drop the dex and use the function and you will get output in the working directory:)

sendersu 05-23-2018 16:57

@Mkz

thank you for the detailed steps, but there is one generic issue (bug?)
the output jar shows two a.class files in one dir
how it is possible at all?

after some pondering I've found out the reason!
windows os has even worse limitataion
if you have dirs like
a
A

then it shows just one dir, say A
in which it shows files with absolutely same name - a.class and a.class (which must be in diff dirs - A and a)

sendersu 05-23-2018 16:59

I'm still wondering if thats a Windoze limitation or a d2j bug
Under LInux stuff is ideal - http://prntscr.com/jli383

Mkz 05-23-2018 22:11

1 Attachment(s)
Ah, I see your point now. The duplication a/A was not on the filenames, but on the folders / package names.

After a lot of confusion, because I was having the same problem you mentioned, I think I figured out the reason. It was 7-zip's problem, not the generated JAR :mad:

Here's some standalone java code to create a JAR with duplicate directories (and files as well):
Code:

import java.io.File;
import java.io.IOException;
import java.nio.file.FileSystem;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.spi.FileSystemProvider;
import java.util.HashMap;
import java.util.Map;


/**
 * Test code for Zip creation from within java
 *
 * Extracted from Dex2Jar code, more specifically:
 *  https://github.com/pxb1988/dex2jar/blob/eca2c98278ec30e31c3953e0a030505987a6f8ca/dex-translator/src/main/java/com/googlecode/d2j/dex/Dex2jar.java#L270
 *
 */
public class ZipFSTest {

    public static void to(Path file) throws IOException {
        if (Files.exists(file) && Files.isDirectory(file)) {
            doTranslate(file);
        } else {
            try (FileSystem fs = createZip(file)) {
                doTranslate(fs.getPath("/"));
            }
        }
    }

    private static void doTranslate(Path file) throws IOException {
        byte[] contents = new byte[] { 0x40, 0x41, 0x42 };
       
        System.out.println("Translating path: " + file);
       
        System.out.println("Creating: " + file.resolve("/a/b/c/").toAbsolutePath());
        Files.createDirectories(file.resolve("/a/b/c/"));
        Files.write(file.resolve("/a/b/c/a.txt"), contents);
        Files.write(file.resolve("/a/b/c/A.txt"), contents);
       
        System.out.println("Creating: " + file.resolve("/A/b/c/").toAbsolutePath());
        Files.createDirectories(file.resolve("/A/b/c/"));
        Files.write(file.resolve("/A/b/c/a.txt"), contents);
        Files.write(file.resolve("/A/b/c/A.txt"), contents);
       
        System.out.println("Creating: " + file.resolve("/a/b/C/").toAbsolutePath());
        Files.createDirectories(file.resolve("/a/b/C/"));
        Files.write(file.resolve("/a/b/C/a.txt"), contents);
        Files.write(file.resolve("/a/b/C/A.txt"), contents);
    }

    private static FileSystem createZip(Path output) throws IOException {
        Map<String, Object> env = new HashMap<>();
        env.put("create", "true");
        Files.deleteIfExists(output);
        Path parent = output.getParent();
        if (parent != null && !Files.exists(parent)) {
            Files.createDirectories(parent);
        }
        for (FileSystemProvider p : FileSystemProvider.installedProviders()) {
            System.out.println("Checking provider: " + p.getClass().getName());
            String s = p.getScheme();
            if ("jar".equals(s) || "zip".equalsIgnoreCase(s)) {
                return p.newFileSystem(output, env);
            }
        }
        throw new IOException("cant find zipfs support");
    }
   
    public static void main(String[] args) throws IOException {
       
        to(new File("abc.zip").toPath());
        System.out.println("Done");
    }

}


If you run it on windows, you'll end up with "abc.zip" like the one I attached here.
Open it on 7-zip and you'll see a single root dir "a", followed by "b" and finally by "c". Inside there are 3 "a.txt"'s and 3 "A.txt"'s - the problem you mention.

However, list the file contents from the command line and all is well:
"jar tf abc.zip" or "unzip -l abc.zip":
Code:

a/
a/b/
a/b/c/
a/b/c/a.txt
a/b/c/A.txt
A/
A/b/
A/b/c/
A/b/c/a.txt
A/b/c/A.txt
a/b/C/
a/b/C/a.txt
a/b/C/A.txt

Open it in jd-gui and each package is separated, with A.txt and a.txt inside :)

Just wish I had not wasted so much time blindly trusting 7-zip's output and digging through the JRE's com.sun.nio.zipfs.ZipFileSystemProvider until remembering to use a command line listing of the archive contents. :o

formingus 02-05-2025 18:15

All links are dead

sendersu 02-05-2025 20:48

there are many links in this thread, which one you are looking for?

blue_devil 02-08-2025 19:54

Uret Android Reverser Toolkit v1.6
 
Uret Android Reverser Toolkit v1.6

URET Android Reverser Toolkit Is Proper All In One Toolkit
For Android Reversing, It Is Meant To Make Work Easy.

IMPORTANT NOTICE:

This tool is deprecated. And URET Team is not maintaining
this tool anymore. Use JEB Decompiler instead. Have phun
while reversing y'all ;)

Code:

https://pixeldrain.com/u/bEuPUNNB


All times are GMT +8. The time now is 00:42.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2026, vBulletin Solutions, Inc.
Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX