91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類(lèi)型: .py
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2021-05-11
  • 語(yǔ)言: Python
  • 標(biāo)簽: RGSS3A??Python??

資源簡(jiǎn)介

Python編寫(xiě)的RGSS3A解包工具 因?yàn)槭菍?xiě)著玩的所以代碼略亂 Python3+Ubuntu12.04下測(cè)試可用,但依然不能保證完全正常工作 僅供研究學(xué)習(xí)(還有吐槽)使用,請(qǐng)勿用于不適當(dāng)?shù)挠猛?

資源截圖

代碼片段和文件信息

#!/usr/bin/python3

import?sys
import?struct
import?os

def?usage():
print(‘RGSS3A?decrypter\nUsage:?rgss3adec??‘)

#?主密鑰變形
def?get_mainkey(mainkey):
tmpkey=struct.unpack(‘ tmpkey=tmpkey[0]*9+3
return?tmpkey

#?解密子文件信息
def?get_metadata(edatamainkey):
tmpedata=struct.unpack(‘ tmpdata=[]
for?i?in?range(len(tmpedata)):
tmpdata.append(tmpedata[i]^mainkey)
return?tmpdata

#?解密文件名|文件內(nèi)容
def?get_data(edatakeyisfile):
length=len(edata)
count=length//4
extra=length%4
# if?not?isfile:
# tmpdata=‘‘
# else:
tmpdata=bytearray()

for?i?in?range(0count):
nameblk=0
for?j?in?range(04):
nameblk+=edata[4*i+j]*pow(256j)
nameblk=struct.pack(‘ tmpdata+=nameblk
# if?not?isfile:
# tmpdata+=nameblk.decode()
# else:
# tmpdata+=nameblk
if?isfile:
key=(key*7+3)%4294967296
nameblk=0
if?extra!=0:
for?j?in?range(0extra):
nameblk+=edata[4*(i+1)+j]*pow(256j)
nameblk=struct.pack(‘# if?not?isfile:
# tmpdata+=(nameblk.decode())[0:extra]
# else:
tmpdata+=nameblk[0:extra]
if?not?isfile:
return?tmpdata.decode()
else:
return?tmpdata

#?在輸出文件夾中建立子文件夾
def?mksubdir(pathdirname):
newdir?=?os.path.join(path?dirname)
if?not?os.path.isdir(newdir):
os.mkdir(newdir)

#?建立輸出文件夾
def?mkoutdir(path):
try:
if?not?os.path.isdir(path):
os.mkdir(path)
mksubdir(path‘Data‘)
mksubdir(path‘Graphics‘)
except:
print(‘Unable?to?create?output?directory.‘)
sys.exit(2)

#?測(cè)試文件路徑格式是否為linux格式(不確定win下是否可用)
def?islinux(path):
if?(os.path.abspath(path))[0]==‘/‘:
return?True
else:

評(píng)論

共有 條評(píng)論