Reverse Engineering Unknown File Formats with ImHex
21–30 of 55 posts
Re: Reverse Engineering Unknown File Formats with ImHex
#22Re: Reverse Engineering Unknown File Formats with ImHex
#23I’ve had a lot of luck with ImHex looking at various binary formats and even using it to aid in writing some file magic. It would be really nice to be able to roundtrip C headers with it. The syntax is close, but often I older formats there is a 1:1 mapping with C structs that doesn’t quite match the imhex syntax.
Re: Reverse Engineering Unknown File Formats with ImHex
#24Re: Reverse Engineering Unknown File Formats with ImHex
#25Re: Reverse Engineering Unknown File Formats with ImHex
#26- it comes from a game called splinter cell conviction made in custom unreal 2.5
- I have neither been able to get UE-Explorer or UEViewer to work with it
- I can send you the file, I just want to know how to change enemy AI spawn types on it
Re: Reverse Engineering Unknown File Formats with ImHex
#27- stupid question: do you have any ideas how to go about doing this on a .unr file - it comes from a game called splinter cell conviction made in custom unreal 2.5 - I have neither been able to get UE-Explorer or UEViewer to work with it - I can send you the file, I just want to know how to change enemy AI spawn types on it
Re: Reverse Engineering Unknown File Formats with ImHex
#28The other thing worth checking early is whether the file is compressed or checksummed. If entropy is flat and high across the whole file it is probably deflate or an encrypted blob, and hex staring will get you nowhere until you unwrap it. And if there is a 4 byte value near the header or footer that changes on every save even when the data is identical, treat it as a CRC or timestamp before assuming it is data. Writing back an edited file that fails the checksum is the classic reason a patched save silently refuses to load.
Re: Reverse Engineering Unknown File Formats with ImHex
#29Re: Reverse Engineering Unknown File Formats with ImHex
#30Story time: I worked the night shift at a motel during college. "Bored to tears" was an understatement. I was poking around the front desk computer system one night, as one does, and found its data file. Lacking anything else to do, I wrote a little hex dumper in BASIC so I could explore the file. The first thing I noted was that customer names were spaced exactly N bytes apart. Oooh, fixed records! Then I spent the…
I did something just like this at my first post-college job in the 90s. I found some weird backup files on the NT LAN, had similar observations as you, but wrote my extractor in C (casting records into structs - my first C program) using a “bcc” floppy disk. Turned out to be the entire insurance company Btrieve database, which I could dump into csv to load into MS Access. This “database” allowed me to automate nearly…