mirror of
https://github.com/WerWolv/ImHex-Patterns.git
synced 2026-04-01 21:17:43 -05:00
patterns: Added MIME types and magic numbers to all patterns that have them
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
#pragma author AdventureT
|
||||
#pragma description Crash Bandicoot - Back in Time (fan game) User created level
|
||||
#pragma magic [ 43 52 41 53 48 4C 56 4C ] @ 0x00
|
||||
#pragma history
|
||||
#pragma 0.3 2024-05-15 Added support for version 0.95
|
||||
#pragma 0.2 2023-10-29 Added support for version 0.94c
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#pragma author zhoubo
|
||||
#pragma description AAC ADTSn (Audio Data Transport Stream) Audio
|
||||
#pragma magic [ FF F? ] @ 0x00
|
||||
#pragma MIME audio/x-hx-aac-adts
|
||||
#pragma pattern_limit 0xFFFFFF
|
||||
|
||||
// History
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description Nintendo Switch Atmosphère CFW Fatal Error log
|
||||
|
||||
#pramga magic [ 41 46 45 30 ] @ 0x00
|
||||
#pramga magic [ 41 46 45 31 ] @ 0x00
|
||||
#pramga magic [ 41 46 45 32 ] @ 0x00
|
||||
|
||||
#pragma endian little
|
||||
|
||||
import std.io;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author Shadlock0133 (aka Aurora) / WerWolv
|
||||
#pragma description Prusa Binary G-Code
|
||||
#pragma magic [ 47 43 44 45 ] @ 0x00
|
||||
|
||||
import type.magic;
|
||||
import std.mem;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Apple binary property list
|
||||
#pragma MIME application/x-bplist
|
||||
|
||||
import std.math;
|
||||
import std.core;
|
||||
|
||||
@@ -1,29 +1,29 @@
|
||||
#pragma description Compact Disc Audio track
|
||||
#pragma magic [ 52 49 46 46 ] @ 0x00
|
||||
|
||||
struct Header {
|
||||
u32 RIFF;
|
||||
s32 size;
|
||||
u32 CDDA;
|
||||
u32 fmt;
|
||||
u32 lenghtofthechunck;
|
||||
u16 versionofcdformat;
|
||||
u16 numberofrange;
|
||||
u32 identifier;
|
||||
u32 RIFF;
|
||||
s32 size;
|
||||
u32 CDDA;
|
||||
u32 fmt;
|
||||
u32 lenghtofthechunck;
|
||||
u16 versionofcdformat;
|
||||
u16 numberofrange;
|
||||
u32 identifier;
|
||||
};
|
||||
|
||||
|
||||
struct DataInfo {
|
||||
|
||||
u32 range;
|
||||
u32 duration;
|
||||
u8 rangepositionframes;
|
||||
u8 rangepositionseconds;
|
||||
u8 rangepositionminutes;
|
||||
u8 nullbyte;
|
||||
u8 durationtrackframes;
|
||||
u8 durationtrackseconds;
|
||||
u8 durationtrackminutes;
|
||||
u8 nullbytee;
|
||||
u32 range;
|
||||
u32 duration;
|
||||
u8 rangepositionframes;
|
||||
u8 rangepositionseconds;
|
||||
u8 rangepositionminutes;
|
||||
u8 nullbyte;
|
||||
u8 durationtrackframes;
|
||||
u8 durationtrackseconds;
|
||||
u8 durationtrackminutes;
|
||||
u8 nullbytee;
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description Windows HtmlHelp Data (ITSF / CHM)
|
||||
#pragma MIME application/vnd.ms-htmlhelp
|
||||
|
||||
import type.magic;
|
||||
import type.size;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Dalvik EXecutable
|
||||
#pragma magic [ 64 65 78 0A ?? ?? ?? 00 ]
|
||||
|
||||
import type.leb128;
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Apple Disk Image Trailer (DMG)
|
||||
#pragma magic [ 6B 6F 6C 79 ] @ -512
|
||||
|
||||
#pragma endian big
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#pragma magic [50 41 47 45] // PAGE
|
||||
#pragma magic [ 50 41 47 45 ] @ 0x00 // PAGE
|
||||
#pragma author "5h4rrK"
|
||||
#pragma description "KERNEL DUMP"
|
||||
|
||||
@@ -99,4 +99,4 @@ struct DUMP_HEADER64 {
|
||||
|
||||
};
|
||||
|
||||
DUMP_HEADER64 dmp @0x00 [[name("DumpHeader")]];
|
||||
DUMP_HEADER64 dmp @ 0x00 [[name("DumpHeader")]];
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description macOS .DS_Store
|
||||
#pragma magic [ 42 75 64 31 ] @ 0x04
|
||||
|
||||
// Apple macOS .DS_Store format
|
||||
#pragma endian big
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#pragma description Digital Terrain Elevation Data
|
||||
#pragma endian big
|
||||
|
||||
#pragma magic [ 4C 48 55 ] @ 0x00
|
||||
|
||||
import std.core;
|
||||
import std.io;
|
||||
import std.mem;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#pragma description MS Windows Vista Event Log
|
||||
|
||||
#pragma MIME application/x-ms-evtx
|
||||
#pragma endian little
|
||||
|
||||
struct Header {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description Flat Linux Device Tree blob
|
||||
#pragma magic [ D0 0D FE ED ] @ 0x00
|
||||
|
||||
#pragma endian big
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description Free Lossless Audio Codec, FLAC Audio Format
|
||||
#pragma MIME audio/flac
|
||||
|
||||
import std.sys;
|
||||
import std.core;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description Drive File System
|
||||
#pragma MIME application/x-ima
|
||||
|
||||
import std.io;
|
||||
import std.core;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author Surasia
|
||||
#pragma description Halo Infinite HavokScript 5.1 "luas"
|
||||
#pragma magic [ 75 63 73 68 ] @ 0x00
|
||||
|
||||
import std.io;
|
||||
import std.mem;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
#pragma author Surasia
|
||||
#pragma description Halo Infinite Module
|
||||
#pragma array_limit 4294967295
|
||||
#pragma pattern_limit 4294967295
|
||||
#pragma array_limit 0
|
||||
#pragma pattern_limit 0
|
||||
#pragma magic [ 6D 6F 68 64 ] @ 0x00
|
||||
|
||||
import std.string;
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author Surasia
|
||||
#pragma description Halo Infinite Tag
|
||||
#pragma magic [ 75 63 73 68 ] @ 0x00
|
||||
|
||||
import std.string;
|
||||
import type.guid;
|
||||
|
||||
@@ -2,9 +2,11 @@
|
||||
#pragma author xtex
|
||||
|
||||
#pragma description HiSilicon HSDT device-tree table
|
||||
#pragma endian little
|
||||
#pragma magic [ 48 53 44 54 ] @ 0x00
|
||||
|
||||
import std.sys;
|
||||
import std.mem;
|
||||
#pragma endian little
|
||||
|
||||
u32 dt_hdr_offset;
|
||||
if (std::mem::read_unsigned(4096, 4, std::mem::Endian::Little) == 0x54445348) {
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
* values
|
||||
*/
|
||||
#pragma endian big
|
||||
#pragma MIME text/x-hex
|
||||
|
||||
import std.mem;
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author gmestanley
|
||||
#pragma description IPS (International Patching System)
|
||||
#pragma magic [ 50 41 54 43 48 ] @ 0x00
|
||||
|
||||
#pragma endian big
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description ISO 9660 file system
|
||||
#pragma MIME application/x-iso9660-image
|
||||
|
||||
#pragma endian little
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
#pragma description Minecraft LCE LOC file
|
||||
|
||||
#pragma endian big
|
||||
#pragma array_limit 739845729834
|
||||
#pragma pattern_limit 34893726894
|
||||
#pragma array_limit 0
|
||||
#pragma pattern_limit 0
|
||||
|
||||
import std.string;
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Lua 5.1 bytecode
|
||||
#pragma magic [ 1B 4C 75 61 51 ] @ 0x00
|
||||
|
||||
import std.io;
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Lua 5.2 bytecode
|
||||
#pragma magic [ 1B 4C 75 61 52 ] @ 0x00
|
||||
|
||||
import std.io;
|
||||
import std.mem;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Lua 5.3 bytecode
|
||||
#pragma magic [ 1B 4C 75 61 53 ] @ 0x00
|
||||
|
||||
import std.io;
|
||||
import type.base;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Lua 5.4 bytecode
|
||||
#pragma magic [ 1B 4C 75 61 54 ] @ 0x00
|
||||
|
||||
import std.io;
|
||||
import std.mem;
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
import std.sys;
|
||||
import std.mem;
|
||||
|
||||
#pragma array_limit 12544
|
||||
#pragma pattern_limit 2000000
|
||||
#pragma array_limit 0
|
||||
#pragma pattern_limit 0
|
||||
#pragma eval_depth 32
|
||||
|
||||
enum FileType : u8
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
#pragma description MSSCMP (Miles Sound System Compressed Archive)
|
||||
#pragma magic [ 42 41 4E 4B ] @ 0x00
|
||||
#pragma magic [ 4B 4E 41 42 ] @ 0x00
|
||||
#pragma array_limit 4294967295
|
||||
#pragma pattern_limit 4294967295
|
||||
#pragma array_limit 0
|
||||
#pragma pattern_limit 0
|
||||
|
||||
import type.magic;
|
||||
import std.core;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Microsoft DOS NE executable
|
||||
#pragma MIME application/x-ms-ne-executable
|
||||
|
||||
import std.mem;
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author gmestanley
|
||||
#pragma description Nintendo Entertainment System ROM (.nes)
|
||||
#pragma MIME application/x-nes-rom
|
||||
|
||||
import std.mem;
|
||||
import std.string;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author sethhall
|
||||
#pragma description Windows Notepad Cache Files
|
||||
#pragma magic [ 4E 50 00 ] @ 0x00
|
||||
|
||||
// This was written based on the following blog post:
|
||||
// https://u0041.co/posts/articals/exploring-windows-artifacts-notepad-files/
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author ogmini https://github.com/ogmini
|
||||
#pragma description Windows 11 Notepad Window State file
|
||||
#pragma magic [ 4E 50 ] @ 0x00
|
||||
// File found at %localappdata%/Packages/Microsoft.WindowsNotepad_8wekyb3d8bbwe/LocalState/WindowState
|
||||
|
||||
#include <std/string.pat>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description Nintendo Switch NRO
|
||||
#pragma magic [ 4E 52 4F 30 ] @ 0x10
|
||||
|
||||
import std.io;
|
||||
import std.sys;
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
#pragma author Nicolás Alvarez
|
||||
#pragma description Apple pbz
|
||||
#pragma magic [ 70 62 7A ] @ 0x00
|
||||
|
||||
import std.mem;
|
||||
import type.magic;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description Nintendo Switch PFS0 archive (.nsp)
|
||||
#pragma magic [ 50 46 53 30 ] @ 0x00
|
||||
|
||||
import type.magic;
|
||||
import type.size;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#pragma author applecuckoo
|
||||
#pragma description PKM (PacKMan) files containing ETC (Ericsson Texture Compression)
|
||||
#pragma endian big
|
||||
#pragma magic [ 50 4B 4D 20 ] @ 0x00
|
||||
|
||||
enum PKMFormat : u16 {
|
||||
ETC1_RGB_NO_MIPMAPS,
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description Nintendo Switch PRODINFO
|
||||
#pragma magic [ 43 41 4C 30 ] @ 0x00
|
||||
|
||||
enum Model : u16 {
|
||||
NX = 1
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#pragma endian little
|
||||
#pragma description Password Safe V3
|
||||
#pragma magic [ 50 57 53 33 ] @ 0x00
|
||||
|
||||
import std.mem;
|
||||
import std.sys;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Python bytecode
|
||||
#pragma MIME application/x-bytecode.python
|
||||
|
||||
import type.time;
|
||||
import std.mem;
|
||||
|
||||
@@ -2,9 +2,11 @@
|
||||
#pragma author Ange Albertini
|
||||
|
||||
import std.sys;
|
||||
#pragma pattern_limit 13107200
|
||||
#pragma array_limit 13107200
|
||||
#pragma pattern_limit 0
|
||||
#pragma array_limit 0
|
||||
#pragma endian little
|
||||
#pragma magic [ 8C FF 7C F9 ] @ 0x00
|
||||
#pragma magic [ 8D FF 7C F9 ] @ 0x00
|
||||
|
||||
u32 version;
|
||||
u32 symbols_count;
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
// Extension: PP
|
||||
// https://github.com/SELinuxProject/selinux/blob/master/libsepol/src/module.c
|
||||
|
||||
#pragma magic [ 8F FF 7C F9 ] @ 0x00
|
||||
#pragma endian little
|
||||
import std.sys;
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author Calcoph
|
||||
#pragma description ESRI shapefile
|
||||
#pragma magic [ 00 00 27 0A ] @ 0x00
|
||||
|
||||
// Spec:
|
||||
// https://www.esri.com/content/dam/esrisites/sitecore-archive/Files/Pdfs/library/whitepapers/pdfs/shapefile.pdf
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author Calcoph
|
||||
#pragma description ESRI shapefile indices
|
||||
#pragma magic [ 00 00 27 0A ] @ 0x00
|
||||
|
||||
// Spec:
|
||||
// https://www.esri.com/content/dam/esrisites/sitecore-archive/Files/Pdfs/library/whitepapers/pdfs/shapefile.pdf
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#pragma description SUP Bluray Subtitle
|
||||
|
||||
#pragma magic [50 47] @ 0x00
|
||||
#pragma magic [ 50 47 ] @ 0x00
|
||||
#pragma endian big
|
||||
|
||||
import std.mem;
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
#pragma author saturnaliam
|
||||
#pragma description Shockwave Flash Movie (SWF)
|
||||
#pragma endian little
|
||||
import type.magic;
|
||||
#pragma MIME application/x-shockwave-flash
|
||||
|
||||
import type.magic;
|
||||
|
||||
// RECTs are more complicated, but for the header,
|
||||
// this works fine.
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#pragma description Ubiquiti Firmware (update) image
|
||||
|
||||
#pragma endian big
|
||||
#pragma magic [ 55 42 4E 54 ] @ 0x00
|
||||
|
||||
import std.mem;
|
||||
import std.sys;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma description Android VBMeta image
|
||||
#pragma magic [ 41 56 42 30 ] @ 0x00
|
||||
|
||||
#pragma endian big
|
||||
import std.core;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author bake
|
||||
#pragma description veadotube mini avatar file
|
||||
#pragma description Veadotube Mini Avatar File
|
||||
#pragma magic [ 56 45 41 44 4F 54 55 42 45 ] @ 0x00
|
||||
|
||||
import std.mem;
|
||||
import std.io;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description DOOM WAD Archive
|
||||
#pragma magic [ 50 57 41 44 ] @ 0x00
|
||||
|
||||
import type.magic;
|
||||
import type.size;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma author WerWolv
|
||||
#pragma description Nintendo Switch XCI cartridge ROM
|
||||
#pragma magic [ 48 46 53 30 ] @ 0x00
|
||||
|
||||
import std.core;
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma endian little
|
||||
#pragma description Xilinx Zynq UltraScale+ Boot Image
|
||||
#pragma MIME application/x-xilinx-boot-zynqmp
|
||||
#pragma magic [ 58 4E 4C 58 ] @ 0x24
|
||||
|
||||
// Spec: Xilinx UG1283 https://docs.xilinx.com/r/en-US/ug1283-bootgen-user-guide/Zynq-UltraScale-MPSoC-Boot-and-Configuration
|
||||
|
||||
Reference in New Issue
Block a user