Advertisement
Guest User

Ys VIII container extract

a guest
Aug 7th, 2016
362
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.95 KB | None | 0 0
  1. import struct;
  2. import os;
  3. import sys;
  4.  
  5. file=open("rootast.xai",'rb');
  6.  
  7. next=48;
  8.  
  9. while(next<699744):
  10.     file.seek(next);
  11.     next+=48
  12.     file.seek(4,1);
  13.  
  14.     nameptr=file.read(4);
  15.  
  16.     file.seek(8,1);
  17.  
  18.     size=struct.unpack("=I",file.read(4))[0];
  19.  
  20.     file.seek(12,1);
  21.  
  22.     dataptr=struct.unpack("=I",file.read(4))[0]
  23.  
  24.     pos=file.tell();
  25.  
  26.     namePos=struct.unpack("=I",nameptr)[0]
  27.  
  28.     file.seek(namePos);
  29.  
  30.     charac=(struct.unpack("=b",file.read(1))[0])
  31.  
  32.     b=bytearray();
  33.     while(charac!=0):
  34.         b.append(charac);
  35.         charac = struct.unpack("=b", file.read(1))[0]
  36.  
  37.     fullName=b.decode('utf8');
  38.  
  39.     file.seek(dataptr);
  40.  
  41.     data=file.read(size);
  42.  
  43.     f=fullName.rsplit('/',1);
  44.  
  45.     folder=f[0];
  46.     print (fullName)
  47.     try:
  48.         fileName=f[1]
  49.         try:
  50.             os.makedirs(folder,777);
  51.  
  52.         except: pass
  53.         f2 = open(fullName, "wb");
  54.         f2.write(data);
  55.     except:pass
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement