More Advanced Installer notes

This commit is contained in:
Matt Nadareski
2025-09-26 07:56:30 -04:00
parent e535b23953
commit 028fdf14f6
2 changed files with 22 additions and 6 deletions

View File

@@ -10,7 +10,7 @@ namespace SabreTools.Models.AdvancedInstaller
/// </summary>
/// <remarks>
/// Observed values:
/// - 00 00 00 00 (INI)
/// - 00 00 00 00 (INI, MSI)
/// - 01 00 00 00 (MSI, CAB)
/// - 05 00 00 00 (DLL)
/// </remarks>
@@ -26,7 +26,7 @@ namespace SabreTools.Models.AdvancedInstaller
/// - 03 00 00 00 (INI)
/// - 0C 00 00 00 (DLL)
/// </remarks>
public uint Unknown1 { get; set; }
public uint? Unknown1 { get; set; }
/// <summary>
/// Unknown, always 0?
@@ -35,7 +35,7 @@ namespace SabreTools.Models.AdvancedInstaller
/// Observed values:
/// - 00 00 00 00 (DLL, MSI, CAB, INI)
/// </remarks>
public uint Unknown2 { get; set; }
public uint? Unknown2 { get; set; }
/// <summary>
/// Size of the file

View File

@@ -15,6 +15,18 @@ namespace SabreTools.Models.AdvancedInstaller
/// </remarks>
public uint Unknown0 { get; set; }
/// <summary>
/// Size of the original filename?
/// </summary>
/// <remarks>Doesn't exist in some cases?</remarks>
public uint? OriginalFilenameSize { get; set; }
/// <summary>
/// Unicode-encoded original filename?
/// </summary>
/// <remarks>Doesn't exist in some cases?</remarks>
public string? OriginalFilename { get; set; }
/// <summary>
/// Pointer to <see cref="Unknown0"/>?
/// </summary>
@@ -35,9 +47,9 @@ namespace SabreTools.Models.AdvancedInstaller
public uint Unknown1 { get; set; }
/// <summary>
/// Pointer to <see cref="Unknown0"/>?
/// Pointer to <see cref="Unknown0"/> or <see cref="EntryCount"/> ?
/// </summary>
public uint FooterOffset2 { get; set; }
public uint UnknownOffset { get; set; }
/// <summary>
/// Offset of the start of the file table
@@ -58,7 +70,11 @@ namespace SabreTools.Models.AdvancedInstaller
/// <summary>
/// Relative offset pointer to <see cref="FileDataStart"/>
/// </summary>
/// <remarks>Relative to the end of the signature</remarks>
/// <remarks>
/// Relative to the end of the signature
///
/// At least one case where this does not point correctly?
/// </remarks>
public uint FileDataStartPointer { get; set; }
/// <summary>