本帖最后由 pcl_test 于 2016-10-22 14:41 编辑
- //&cls&cscript -nologo -e:jscript "%~f0" "加密.bat">"$解密.txt"&pause&exit
-
- var fso=new ActiveXObject('Scripting.FileSystemObject'),s='',key='',n=1;
- var ws=new ActiveXObject('Wscript.Shell');
- var f=fso.OpenTextFile(WSH.Arguments(0), 1);
- while(!f.AtEndOfStream){
- var line=f.ReadLine();
- if(n<3){s+=line+'\r\n'}else s+=crack(line, key)+'\r\n';
- n++;
- }
- WSH.echo(s);
-
- function crack(str, k){
- var m=str.match(/%[^%]+?:~-?\d*,1%/g);
- if(m){
- for(var i=0;i<m.length;i++){
- if(!key)var k=ws.ExpandEnvironmentStrings(m[i].replace(/:.+$/, '')+'%');
- var n=m[i].replace(/^%.+?:~(-?\d*).+$/, '$1');
- if(n=='')n=0;
- var str=str.replace(m[i], n=='-1'?k.slice(Number(n)):k.slice(Number(n), Number(n)+1));
- }
- }
- //var kw=str.match(/^@set '=\^">nul&.+?&@set '=([\x20-\x7e]{294})&@.+?&@echo "$/);
- var kw=str.match(/^@set '=\^">nul&.+?&@set '=(.+?)&@set.+?&@echo "$/);
- if(kw)key=kw[1].replace(/\^{3}/g, '^');
- return str
- }
复制代码
|