Guest User

extract.py

a guest
Apr 16th, 2019
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.55 KB | None | 0 0
  1. import os
  2. import struct
  3.  
  4. fp = r"add01dat.bin"
  5. fs = os.path.getsize(fp)
  6.  
  7. with open(fp, "rb") as bin:
  8.   offsets = [ ]
  9.   while bin.tell() < fs:
  10.     data = bin.read(4)
  11.     offset = struct.unpack(">I", data)[0]
  12.     offsets.append(offset)
  13.     if not offset: break
  14.  
  15.   numfiles = len(offsets)
  16.   for i in range(numfiles):
  17.     offset = offsets[i]
  18.     if i + 1 < numfiles:
  19.       size = offsets[i+1] - offset
  20.     else:
  21.       size = fs - offset
  22.     with open(r"add01dat_%02d.bin" % i, "wb") as fout:
  23.       bin.seek(offset)
  24.       fout.write( bin.read(size) )
Advertisement
Add Comment
Please, Sign In to add comment