资源简介
Python编写的RGSS3A解包工具
因为是写着玩的所以代码略乱
Python3+Ubuntu12.04下测试可用,但依然不能保证完全正常工作
仅供研究学习(还有吐槽)使用,请勿用于不适当的用途
代码片段和文件信息
#!/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
# 解密文件名|文件内容
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)
# 测试文件路径格式是否为linux格式(不确定win下是否可用)
def islinux(path):
if (os.path.abspath(path))[0]==‘/‘:
return True
else:
相关资源
- python 写的一个json转csv文件的脚本
- python多人聊天服务器 socket
- Python 3网络爬虫开发实战
- 线性规划-单纯形法-窗体实现(pytho
- MACD指标股票量化投资策略源码
- python随机森林实现代码和
- python开发的基于串口通讯的上位机应
- 遗传算法实现入侵检测,AISpython实现
- Python零基础10天进阶班.rar
- python 超级玛丽 增强版本完整代码实现
- python3.8爬取拉勾教育mp4视频解密m3u8到
- isbn查询书籍详细信息2.0
- 计算N50的python脚本.zip
- Python+OpenCv实现AI人脸识别身份认证系
- windows下crf++的python接口安装需要文件
- 智能小车视觉巡线python代码
- 用Python自动办公,做职场高手.txt
- 共轭梯度法求解线性方程组conj_gradi
- 使用pyqt5实现的Python-GUI动态作图
- python简易jpeg编码
- 2018传智python 15期 视频教程 今年刚
- python 获取 去哪儿网 火车票信息
- python聊天室
- Python排序算法
- anaconda+python3.5
- 基于python实现的http接口自动化测试框
- jpype1for python3.6
- traits-4.6.0-cp36-cp36m-win_amd64.whl
- python svm算法源码
- python批量灰度化处理图片
评论
共有 条评论