Skip to content

Yeseverk/Nutcracker-squirrel2.2.5

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NutCracker (Squirrel Decompiler & Deobfuscator)

这是一个用于反编译 Squirrel (2.2.5 版本) 二进制脚本(.nut / .f)的实用工具,基于开源的 NutCracker 项目进行了二次开发与扩展。

在实际的脚本分析和 Mod 开发过程中,主要遇到了两个痛点: 一是部分脚本在编译时被刻意加入了嵌套混淆(例如大量使用 this.compilestring(...)() 以及 .tochar() 字符拼接),导致常规工具即使反编译成功,输出的也是无法阅读的乱码;二是纯命令行的操作方式在面对零散脚本的快速预览时,交互稍显繁琐。

为了更方便地处理这些脚本,我在原项目的基础上做了一些补充性开发:

  • 自动化脱壳与反混淆:在反编译引擎后接入了还原逻辑。工具会在反编译完成后,自动正则匹配并解析那些被 tochar 转义和 compilestring 包装的载荷,直接输出净化后、具备可读性的原始代码。
  • 轻量级图形界面 (GUI):使用原生 Win32 API 为工具编写了一个可视化界面。支持直接拖拽 .nut 二进制文件进入窗口进行即时解码,并内置了代码高亮和一键保存源文件的功能,降低了使用门槛。
  • 混合运行模式 (GUI / CLI):重构了底层的入口点(Windows Subsystem),完美消除了双击运行 GUI 时的控制台黑框闪烁。同时,如果通过终端带参数调用(如批处理任务),它依然会自动将标准输出关联到控制台,保留了原版优秀的命令行批处理能力。
  • 本地化与编译优化:修复了原项目在 MSVC 环境下使用中文字符串易产生的编译错误与乱码问题,重构为纯 Unicode 字符集并采用了宽字符转义编码,确保本地构建的稳定性。

希望这个小工具能为需要分析和修改 Squirrel 脚本的开发者或爱好者节省一些时间。

构建说明

本项目使用 Visual Studio / MSBuild 构建:

  • 解决方案文件: nutcracker.sln
  • 平台工具集: MSVC (C++)
  • 字符集: Unicode
  • 目标平台: Windows (x86)

直接打开 .sln 文件并使用 Release 模式编译即可生成最终的 nutcracker.exe

About

Nutcracker-squirrel2.2.5

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors