[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 pcl_test 于 2016-10-22 14:41 编辑
  1. //&cls&cscript -nologo -e:jscript "%~f0" "加密.bat">"$解密.txt"&pause&exit
  2. var fso=new ActiveXObject('Scripting.FileSystemObject'),s='',key='',n=1;
  3. var ws=new ActiveXObject('Wscript.Shell');
  4. var f=fso.OpenTextFile(WSH.Arguments(0), 1);
  5. while(!f.AtEndOfStream){
  6.     var line=f.ReadLine();
  7.     if(n<3){s+=line+'\r\n'}else s+=crack(line, key)+'\r\n';
  8.     n++;
  9. }
  10. WSH.echo(s);
  11. function crack(str, k){
  12.     var m=str.match(/%[^%]+?:~-?\d*,1%/g);
  13.     if(m){
  14.         for(var i=0;i<m.length;i++){
  15.             if(!key)var k=ws.ExpandEnvironmentStrings(m[i].replace(/:.+$/, '')+'%');
  16.             var n=m[i].replace(/^%.+?:~(-?\d*).+$/, '$1');
  17.             if(n=='')n=0;
  18.             var str=str.replace(m[i], n=='-1'?k.slice(Number(n)):k.slice(Number(n), Number(n)+1));
  19.         }
  20.     }
  21.     //var kw=str.match(/^@set '=\^">nul&.+?&@set '=([\x20-\x7e]{294})&@.+?&@echo "$/);
  22.     var kw=str.match(/^@set '=\^">nul&.+?&@set '=(.+?)&@set.+?&@echo "$/);
  23.     if(kw)key=kw[1].replace(/\^{3}/g, '^');
  24.     return str
  25. }
复制代码

TOP

返回列表