saramibreak / DiscImageCreator

This is the disc (CD, GD, DVD, HD-DVD, BD, GC/Wii, XBOX, XBOX 360) and disk (Floppy, MO, USB etc) image creation tool
http://forum.redump.org/topic/10483/discimagecreator/
Apache License 2.0
534 stars 45 forks source link

Several CDs where DIC just disappears without a message on file scan #80

Closed Feathered-Serpent closed 2 years ago

Feathered-Serpent commented 3 years ago

Disc 1 (Neverwinter Nights 1 CD 1, ProtectionID: SecuROM Signature v 4.85/5/7 (or higher) (CD)):

AppVersion
        x86, AnsiBuild, 20210630T133938
/c2 val2 was omitted. set [0]
/sf val was omitted. set [60]
CurrentDirectory
        C:\Users\Ezatoka
WorkingPath
         Argument: G:\ISO\Neverwinter Nights\CD1\NWN_INSTALL1.bin
         FullPath: G:\ISO\Neverwinter Nights\CD1\NWN_INSTALL1.bin
            Drive: G:
        Directory: \ISO\Neverwinter Nights\CD1\
         Filename: NWN_INSTALL1
        Extension: .bin
StartTime: 2021-07-29T19:05:55+0200
Set the drive speed: 37835KB/sec
This drive supports [OpCode: 0xd8, SubCode: 0]
This drive supports [OpCode: 0xd8, SubCode: 1]
This drive supports [OpCode: 0xd8, SubCode: 2]
This drive supports [OpCode: 0xd8, SubCode: 8]
Checking reading lead-out -> OK
Checking SubQ adr (Track)  1/ 1
Checking SubRtoW (Track)  1/ 1
Checking Pregap sync, msf, mode (LBA)  -2910
Reading DirectoryRecord    7/   7
Checking EXE    2 AUTORUN.EXE: File Version 1.0.1.3
Checking EXE    3
Detected InterShield Cabinet File: \DATA1.CAB
Please wait until all files are extracted. This is needed to search protection
 nwconfig.exe: File Version 2.0.1.3
 nwmain.exe: File Version 1, 0, 0, 0

Detected SecuROM 4.77.00

Disc 2 (Myst Masterpiece Edition; ProtectionID: Petite v2.2):

AppVersion
        x86, AnsiBuild, 20210630T133938
/c2 val2 was omitted. set [0]
/sf val was omitted. set [60]
G:\ISO\MYST_ME\ doesn't exist, so create.
CurrentDirectory
        C:\Users\Ezatoka
WorkingPath
         Argument: G:\ISO\MYST_ME\MYST_ME.bin
         FullPath: G:\ISO\MYST_ME\MYST_ME.bin
            Drive: G:
        Directory: \ISO\MYST_ME\
         Filename: MYST_ME
        Extension: .bin
StartTime: 2021-07-29T19:08:07+0200
Set the drive speed: 0KB/sec
This drive supports [OpCode: 0xd8, SubCode: 0]
This drive supports [OpCode: 0xd8, SubCode: 1]
This drive supports [OpCode: 0xd8, SubCode: 2]
This drive supports [OpCode: 0xd8, SubCode: 8]
Checking reading lead-out -> OK
Checking SubQ adr (Track)  1/ 1
Checking SubRtoW (Track)  1/ 1
Checking Pregap sync, msf, mode (LBA)  -2899
Reading DirectoryRecord   19/  19
 a2.exe: File Version 2, 0, 0, 1
Checking EXE    4
Detected InterShield Cabinet File: \data1.cab
Please wait until all files are extracted. This is needed to search protection
Checking EXE    5
Detected InterShield Cabinet File: \data1.hdr
Checking EXE   16

Disc 3 (XP Jump'N'Run Games; ProtectionID: nothing found):

AppVersion
        x86, AnsiBuild, 20210630T133938
/c2 val2 was omitted. set [0]
/sf val was omitted. set [60]
CurrentDirectory
        C:\Users\Ezatoka
WorkingPath
         Argument: G:\ISO\XP_JUMPNRUN\XP_JUMPNRUN.bin
         FullPath: G:\ISO\XP_JUMPNRUN\XP_JUMPNRUN.bin
            Drive: G:
        Directory: \ISO\XP_JUMPNRUN\
         Filename: XP_JUMPNRUN
        Extension: .bin
StartTime: 2021-07-29T19:17:33+0200
Set the drive speed: 62272KB/sec
This drive supports [OpCode: 0xd8, SubCode: 0]
This drive supports [OpCode: 0xd8, SubCode: 1]
This drive supports [OpCode: 0xd8, SubCode: 2]
This drive supports [OpCode: 0xd8, SubCode: 8]
Checking reading lead-out -> OK
Checking SubQ adr (Track)  1/ 1
Checking SubRtoW (Track)  1/ 1
Checking Pregap sync, msf, mode (LBA)  -2950
Reading DirectoryRecord   78/  78
Checking EXE    3 FXI.EXE: File Version 1, 0, 0, 1
Checking EXE    8 START.EXE: File Version 1, 0, 0, 1
Checking EXE    9 BROWNLIT.EXE: File Version 2.5.116.0
Checking EXE   13 SMART.EXE: File Version 9.0r383
Checking EXE   21 GVSE3.EXE: File Version 1.06
Checking EXE   24 HTA.EXE: File Version 2.5.105
Checking EXE   28 INSTALL.EXE: File Version 2, 0, 0, 21
Checking EXE   98 N_V12.EXE: File Version 7,0,14,0
Checking EXE  100 SONICTHE.EXE: File Version 2, 0, 0, 16
Checking EXE  101 PEKKA_KA.EXE: File Version 2, 0, 0, 16
Checking EXE  105

What can I do to identify the problem? Maybe I can spot the problem files with Process Monitor and look, which file was the last one which was checked?

saramibreak commented 3 years ago

How many times did you wait? It takes a long time to extract the cab file for some discs.

Feathered-Serpent commented 3 years ago

I "waited" until the process just vanished from the task manager. I did not do anything to stop the process from continueing.

After each of those log entries, the process DiscImageCreator.exe was just gone.

Feathered-Serpent commented 3 years ago

Myst Masterpiece Edition as example.

I monitored the process with ProcMon and these are the last files accessed:

"16:55:03,0151383","DiscImageCreator.exe","2852","Process Create","C:\WINDOWS\SysWOW64\cmd.exe","SUCCESS","PID: 3736, Command line: C:\WINDOWS\system32\cmd.exe /c """"C:\apps\backup\MPF\Programs\Creator\i6comp.exe"" l -o ""E:\data1.cab"""" 2> NUL | findstr /e /i .dll > G:\Temp\User\!exelist.txt"
"16:55:03,0151918","DiscImageCreator.exe","2852","RegOpenKey","HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","SUCCESS","Desired Access: Query Value"
"16:55:03,0152052","DiscImageCreator.exe","2852","RegSetInfoKey","HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","SUCCESS","KeySetInformationClass: KeySetHandleTagsInformation, Length: 0"
"16:55:03,0152120","DiscImageCreator.exe","2852","RegQueryValue","HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Cache","SUCCESS","Type: REG_SZ, Length: 118, Data: C:\Users\Ezatoka\AppData\Local\Microsoft\Windows\INetCache"
"16:55:03,0152228","DiscImageCreator.exe","2852","RegCloseKey","HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","SUCCESS",""
"16:55:03,0152327","DiscImageCreator.exe","2852","RegQueryKey","HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion","SUCCESS","Query: HandleTags, HandleTags: 0x400"
"16:55:03,0152395","DiscImageCreator.exe","2852","RegOpenKey","HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers","SUCCESS","Desired Access: Query Value"
"16:55:03,0152470","DiscImageCreator.exe","2852","RegSetInfoKey","HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers","SUCCESS","KeySetInformationClass: KeySetHandleTagsInformation, Length: 0"
"16:55:03,0152542","DiscImageCreator.exe","2852","RegQueryValue","HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\C:\WINDOWS\system32\cmd.exe","NAME NOT FOUND","Length: 16"
"16:55:03,0152614","DiscImageCreator.exe","2852","RegCloseKey","HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers","SUCCESS",""
"16:55:03,0152787","DiscImageCreator.exe","2852","QuerySecurityFile","C:\Windows\SysWOW64\cmd.exe","SUCCESS","Information: Owner, Group, DACL, SACL, Label, Attribute, Process Trust Label, 0x100"
"16:55:03,0153222","DiscImageCreator.exe","2852","CreateFile","C:\Windows\apppatch\sysmain.sdb","SUCCESS","Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, AllocationSize: n/a, OpenResult: Opened"
"16:55:03,0153513","DiscImageCreator.exe","2852","QueryBasicInformationFile","C:\Windows\apppatch\sysmain.sdb","SUCCESS","CreationTime: 28.03.2021 13:06:22, LastAccessTime: 30.07.2021 16:54:11, LastWriteTime: 28.03.2021 13:06:22, ChangeTime: 28.03.2021 13:10:12, FileAttributes: A"
"16:55:03,0153575","DiscImageCreator.exe","2852","CloseFile","C:\Windows\apppatch\sysmain.sdb","SUCCESS",""
"16:55:03,0153781","DiscImageCreator.exe","2852","QueryBasicInformationFile","C:\Windows\SysWOW64\cmd.exe","SUCCESS","CreationTime: 28.03.2021 13:06:51, LastAccessTime: 30.07.2021 16:55:02, LastWriteTime: 28.03.2021 13:06:51, ChangeTime: 28.03.2021 13:10:24, FileAttributes: A"
"16:55:03,0154069","DiscImageCreator.exe","2852","QueryBasicInformationFile","C:\Windows\SysWOW64\cmd.exe","SUCCESS","CreationTime: 28.03.2021 13:06:51, LastAccessTime: 30.07.2021 16:55:02, LastWriteTime: 28.03.2021 13:06:51, ChangeTime: 28.03.2021 13:10:24, FileAttributes: A"
"16:55:03,0154191","DiscImageCreator.exe","2852","QueryNameInformationFile","C:\Windows\SysWOW64\cmd.exe","SUCCESS","Name: \Windows\SysWOW64\cmd.exe"
"16:55:03,0154691","DiscImageCreator.exe","2852","RegOpenKey","HKLM\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\SideBySide","SUCCESS","Desired Access: Read"
"16:55:03,0154799","DiscImageCreator.exe","2852","RegSetInfoKey","HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\SideBySide","SUCCESS","KeySetInformationClass: KeySetHandleTagsInformation, Length: 0"
"16:55:03,0154858","DiscImageCreator.exe","2852","RegQueryValue","HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\SideBySide\PreferExternalManifest","NAME NOT FOUND","Length: 20"
"16:55:03,0154927","DiscImageCreator.exe","2852","RegCloseKey","HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\SideBySide","SUCCESS",""
"16:55:03,0157593","DiscImageCreator.exe","2852","CloseFile","C:\Windows\SysWOW64\cmd.exe","SUCCESS",""

then ProgDump catches this: Exception: C0000005.ACCESS_VIOLATION

Something must be in that data1.cab, but I can't open that file. Seems to be installshield cabinet file I think. There is also a data1.hdr on the disk.

saramibreak commented 3 years ago

I don't have the disc that ACCESS_VIOLATION occurs.

DiscImageCreator_test.zip

Feathered-Serpent commented 3 years ago

Still not working. I tried to manually executing the i6comp process, and it seems that is where the violation is happening:

C:\apps\backup\MPF\Programs\Creator>i6comp.exe l -o E:\data1.cab

Version 0.2 -] fOSSiL & Morlac - 2000 [-

An exception occured
This might be a new version of InstallShield unsupported at this moment

Which file types are scanned during "Checking EXE"? Maybe I can pinpoint out, which file exactly causes problems on other discs. E.g. on the XP Jump'N'Run Games it seems a game called Pigz causes the scan error, without any cabinet file inside.

saramibreak commented 3 years ago

Which file types are scanned during "Checking EXE"?

.exe, .dll

I tried to manually executing the i6comp process, and it seems that is where the violation is happening:

Can you try this? https://www.sac.sk/download/pack/i6cmp13b.zip

Feathered-Serpent commented 3 years ago
─════════════════════════════════════════════════════════─
■InstallShield 5.x Cabinet Compression & Maintenance Util■
■Version 2.00  -] fOSSiL - 2000 [-                       ■
■InstallShield 6.x Cabinet Compression & Maintenance Util■
■Version 1.03b -] Morlac - 2000 [-                       ■
■General exception bugfix by -] DarkSoul - 2002 [-       ■
─════════════════════════════════════════════════════════─

An exception occured
This might be a new version of InstallShield unsupported at this moment

I dunno why this Myst disc is so stubborn... I can't just not scan the files for protection right? Because even without using /sf DIC will still scan all files.

saramibreak commented 3 years ago

Because even without using /sf DIC will still scan all files.

If /sf or /ns is used, files are scanned.

Feathered-Serpent commented 3 years ago

So if I remove those parameters, I should be at least be able to make a backup. Might not be the "best" backup possible, but it would be a backup!

Feathered-Serpent commented 3 years ago

Ok without the parameters I was able to make a backup just fine on all 3 discs. Should we continue investigate or just leave it if I'm the only one who has reported that problem? Though without /ns and /sf on the Neverwinternights CD there is no SecuROM detected at all. The dump was created nontheless.

saramibreak commented 3 years ago

The dump was created nontheless.

Main channel (.bin .img) is no problem, but sub channel (.sub) doesn't include SecuROM data.

Feathered-Serpent commented 3 years ago

On the Neverwinter Nights disc I don't understand why it just vanished after it already found out about the copy protection. Shouldn't it be over with file scanning then already?

Feathered-Serpent commented 2 years ago

Came back to this after a while now.

And I found out something funny... it is not that the InstallShield Cabinet file is too new... it is too old! If using i5comp.exe (renamed to i6comp.exe) in version 2.01, then I get the following:

i6comp l -o E:\data1.hdr
08-24-1995 00:00        28 A___        32    0 MOHAWK.W32
02-23-1999 19:13    331776 A___    153208    1 mss32.dll
04-16-1999 00:30    212992 A___     58617    2 qtmlClient.dll
05-04-1994 00:00        72 A___        56    3 SYSTEM.DAT
11-01-1999 12:43     40960 A___     11286    4 myst.exe
10-31-1999 16:57      8187 A___      3200    5 liesmich.txt
06-22-1995 00:00        44 A___        46    6 SAVEGAME\SAVEGAME.TXT
11-01-1999 11:43    449024 A___    227749    7 myst9x.exe
02-22-2002 10:53    449024 A___    227749    8 mystmaster2k-d.exe

The very same command yielded exception errors when using with any i6comp version. I downloaded the i5comp from https://hobbes.nmsu.edu/?path=%2Fpub%2Fos2%2Fwin32os2

Though ultimately the process DiscImageCreator.exe crashes afterwards anyway. I dare to say not because of any InterShield Cabinet file this time, but because of another file, as it then says in the log

Checking EXE    4
Detected InterShield Cabinet File: \data1.cab
Please wait until all files are extracted. This is needed to search protection
Checking EXE    5
Detected InterShield Cabinet File: \data1.hdr
Checking EXE   16

Then the program crashes. I cannot tell, which Exe it was accessing at this moment. I would guess Pointsoft.exe as, according to Protection ID, this contains the "Petite v2.2" copy protection.

saramibreak commented 2 years ago

Tell me the link to get the disc. Amazon: eBay: discogs:

Feathered-Serpent commented 2 years ago

If I might make suggestion: Out of personal reasons I'm getting rid of many old discs. The ones in this case and the ones from https://github.com/saramibreak/DiscImageCreator/issues/81 included.

If you'd like I could send them to you and you can do whatever you like with them. Would this be something you could agree with? Could send you the CDs with the cases or the CDs alone (which would end in a similar package size, because the discs would be wrapped in bubble wrap of course). So instead of buying the CDs with problems, I'd just enjoy part of the shipping costs maybe.

saramibreak commented 2 years ago

this contains the "Petite v2.2" copy protection.

I uploaded a test build in #103. If "petite" is included, skip scanning the exe.

Feathered-Serpent commented 2 years ago

All three discs can be dumped at least with the version in #122. All find either SecuRom or a protected file and continue. Though at the Myst CD, the i6comp process crashed several times, though the dump continued nontheless.

Disc 1:

 AUTORUN.EXE: File Version 1.0.1.3
 nwconfig.exe: File Version 2.0.1.3
 nwmain.exe: File Version 1, 0, 0, 0

Detected SecuROM 4.77.00
 nwserver.exe: File Version 1, 0, 0, 0
 nwtoolset.exe: File Version 1.0.0.0
 nwupdate.exe: File Version 1.02
 nwhak.exe: File Version 1.0.1.4
 nwstub.exe: File Version 1.00
 SETUP.EXE: File Version 6, 31, 100, 1190
Detected a protected file [.cms_d]. LBA 0 to 0
Set OpCode: 0xd8, SubCode: 8(Raw)
Detected intentional subchannel in LBA -1 => SecuROM 4th version (a.k.a. NEW)

Disc 2:

 a2.exe: File Version 2, 0, 0, 1
 Setup.exe: File Version 5, 52, 164, 0
 _ISDel.exe: File Version 5, 51, 138, 0
Detected a protected file [.petite]. LBA 0 to 0
Set OpCode: 0xd8, SubCode: 8(Raw)
[INFO] SecuROM sector not found 

Disc 3:

 FXI.EXE: File Version 1, 0, 0, 1
 START.EXE: File Version 1, 0, 0, 1
 BROWNLIT.EXE: File Version 2.5.116.0
 SMART.EXE: File Version 9.0r383
 GVSE3.EXE: File Version 1.06
 HTA.EXE: File Version 2.5.105
 INSTALL.EXE: File Version 2, 0, 0, 21
 N_V12.EXE: File Version 7,0,14,0
 SONICTHE.EXE: File Version 2, 0, 0, 16
 PEKKA_KA.EXE: File Version 2, 0, 0, 16
 FXI.EXE: File Version 1, 0, 0, 1
 SNOOP_IN.EXE: File Version 3, 9, 2, 0
 TIME_ATT.EXE: File Version 2.5.105
 SKARIO.EXE: File Version v1.0
 SUPERTUX.EXE: File Version                     
Detected a protected file [.nbpack]. LBA 0 to 0
Set OpCode: 0xd8, SubCode: 8(Raw)
[INFO] SecuROM sector not found