lifenjoiner/ISx

Unable to extract from InstallShield 24

voltagex opened this issue · 7 comments

[0x0010A800]
Dir: "C:\Users\Adam\Downloads\Omada_SDN_Controller_v5.8.4_Windows\Omada Controller_u\"
0x00000000    1091584 "Omada Controller_sfx.exe" ...   Y
new installer version!
extra data:
0x0010A800  241656971 "Omada Controller_ext.bin" ...   Y

Original file is https://static.tp-link.com/upload/software/2023/202301/20230106/Omada_SDN_Controller_v5.8.4_Windows.zip, the installer is in the zip.

Strings inside the file suggest this is InstallShield 24

It works on my side.
Which version of ISx and OS do you use?

ISx from git master on Windows 10

Please provide more details to help reproduce the issue.
If you compile it yourself, which compiler and version?
Or, try with my binary release?

Apologies - I may have misunderstood.

Two files are created - is the .bin file supposed to get unpacked as well?

image

Compiled with Microsoft (R) C/C++ Optimizing Compiler Version 19.35.32213 for x86

I guess I got the reason. It is due to the API behavior changes of ucrt, that is linked by MSVC v19.
Try the latest commit 6995bf0.
My binary release should also work.

With the latest commit.

c:\git\ISx>cl inflate_tinfl.c ISx.c miniz_tinfl.c
Microsoft (R) C/C++ Optimizing Compiler Version 19.35.32213 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.

inflate_tinfl.c
ISx.c
miniz_tinfl.c
Generating Code...
Microsoft (R) Incremental Linker Version 14.35.32213.0
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:inflate_tinfl.exe
inflate_tinfl.obj
ISx.obj
miniz_tinfl.obj

c:\git\ISx>inflate_tinfl.exe
InstallShield file extractor v0.3.6 @YX Hao
Usage: inflate_tinfl.exe <InstallShield file>

c:\git\ISx>inflate_tinfl.exe "C:\Users\Adam\Downloads\Omada_SDN_Controller_v5.8.4_Windows\Omada Controller.exe"
C:\Users\Adam\Downloads\Omada_SDN_Controller_v5.8.4_Windows\Omada Controller.exe
no extra data found!

c:\git\ISx>inflate_tinfl.exe "C:\Users\Adam\Downloads\Omada_SDN_Controller_v5.8.4_Windows\Omada Controller.exe"
C:\Users\Adam\Downloads\Omada_SDN_Controller_v5.8.4_Windows\Omada Controller.exe
no extra data found!

With your release

c:\git\ISx>ISx.exe "C:\Users\Adam\Downloads\Omada_SDN_Controller_v5.8.4_Windows\Omada Controller.exe"
C:\Users\Adam\Downloads\Omada_SDN_Controller_v5.8.4_Windows\Omada Controller.exe
[0x0010A800]
Dir: "C:\Users\Adam\Downloads\Omada_SDN_Controller_v5.8.4_Windows\Omada Controller_u\"
0x00000000    1091584 "Omada Controller_sfx.exe" ...   Y
0x0010A858      22480 "Disk1\0x0409.ini" ...   Y
0x0011007A     894309 "Disk1\data1.cab" ...   Y
0x001EA62F      66003 "Disk1\data1.hdr" ...   Y
0x001FA85A  237703221 "Disk1\data2.cab" ...   Y
0x0E4AB8F1    1625088 "Disk1\ISSetup.dll" ...   Y
0x0E638541        550 "Disk1\layout.bin" ...   Y
0x0E6387BB    1091584 "Disk1\setup.exe" ...   Y
0x0E743009       2464 "Disk1\setup.ini" ...   Y
0x0E7439FB     250512 "Disk1\setup.inx" ...   Y

I'll stick with your release for now!

Microsoft (R) C/C++ Optimizing Compiler Version 19.35.32213 for x64

New case used x64 compiler. Fixed by 9469777.