好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > 解密ASP源代碼

解密ASP源代碼

熱門標簽:無錫電銷外呼系統(tǒng)代理 天津企業(yè)外呼系統(tǒng)代理商 外呼系統(tǒng)號碼顯示 中山外呼系統(tǒng)中間件 車載電話機器人 什么行業(yè)需要電話機器人 南昌crm外呼系統(tǒng)如何 廣州ai外呼系統(tǒng)業(yè)務 地圖標注多家店
從網上興致沖沖地下載了ASP源代碼,準備學習研究的時候.一打開文件,天書般的加密代碼.很讓人郁悶吧 :( 在網上是找到了解密的方法,得一個文件挨一個文件地打開,復制,粘貼,解密,再復制,再粘貼,再保存......如果一個ASP程序有幾百個文件???
解決辦法來了..
復制代碼 代碼如下:

% @Language="JavaScript" %>
%
/*
 *--------------- decode.asp -----------------
 * 功能:遍歷某個目錄下的所有文件,對加密過的.asp文件
 *      進行解密,并寫入源文件中.
 * 實例:單個文件解密
 * Response.Write(DncodeFile(Server.MapPath("conn.asp")));
 * 實例:目錄下所有文件解密.
 * DncodeFolderFiles(Server.MapPath("xml"))
 * author:wanghr100(灰豆寶寶.net)
 * update:2004-5-17 11:31
 *--------------- decode.asp -----------------
 */
function DncodeFile(sFilePath)
{
/*
 *--------------- DncodeFile(sFilePath) -----------------
 * DncodeFile(sFilePath) 
 * 功能:打開文件sFilePath,Encode解密,重寫該文件.
 * 參數(shù):sFilePath,字符串,文件的路徑.
 * 返回:sFilePath,文件的路徑.
 * 實例:Response.Write(DncodeFile(Server.MapPath("conn.asp")));
 * author:wanghr100(灰豆寶寶.net)
 * update:2004-5-17 0:58
 *--------------- DncodeFile(sFilePath) -----------------
 */
    var ForReading = 1, ForWriting =2, ForAppending =8;
    var fso = Server.CreateObject("Scripting.FileSystemObject");
    var f = fso.OpenTextFile(sFilePath,ForReading,true);
    sFileText = f.ReadAll();
    f.Close();
    sDncodeText = strdec(sFileText)
    var f = fso.OpenTextFile(sFilePath,ForWriting,true);
    f.Write(sDncodeText);
    f.Close();
    //return sDncodeText;
    return sFilePath;
}

function GetFilesPath(sFolderPath)
{
/*
 *--------------- GetFilesPath(sFolderPath) -----------------
 * GetFilesPath(sFolderPath) 
 * 功能:遍歷sFolderPath目錄下的所有文件.返回數(shù)組.存儲文件路徑.
 * 參數(shù):sFolderPath,字符串,目錄絕對路徑.
 * 實例:Response.Write(GetFilesPath(Server.MapPath("xml")))
 * update:2004-5-12 8:33
 * author:wanghr100(灰豆寶寶.net)
 *--------------- GetFilesPath(sFolderPath) -----------------
 */
    var sFilePath = new Array();
    var fso = Server.CreateObject("Scripting.FileSystemObject");
    var oFolder = fso.GetFolder(sFolderPath);
    var oSubFolders = oFolder.SubFolders;
    var oFiles = oFolder.Files;
    icount = oFiles.Count;

    var enmFiles = new Enumerator(oFiles);
    for(;!enmFiles.atEnd();enmFiles.moveNext())
    {
        sFilePath[sFilePath.length] = enmFiles.item().Path
    }

    var enmFolders = new Enumerator(oSubFolders);
    for(;!enmFolders.atEnd();enmFolders.moveNext())
    {
        /* Old 數(shù)組成了多維. */
        //sFilePath[sFilePath.length]=GetFilesPath(enmFolders.item().Path);
        /* Add 2004-5-17 11:09 只為一維數(shù)組 */
        sFilePath=sFilePath.concat(GetFilesPath(enmFolders.item().Path));
    }

    return sFilePath;

}

function GetFileType(sFileName)
{
/*
 *--------------- GetFileType(sFileName) -----------------
 * GetFileType(sFileName) 
 * 功能:通過后綴,取得sFileName的文件類型.
 * 參數(shù):sFileName,字符串,文件名.
 * 實例:Response.Write(GetFileType("decode.asp"))
 * update:2004-5-13 8:33
 * author:wanghr100(灰豆寶寶.net)
 *--------------- GetFileType(sFileName) -----------------
 */
    sFileName = String(sFileName);
    return sFileName.split(".")[sFileName.split(".").length-1];
}

/* Start 解密實現(xiàn):李輝煌 Start*/
function screncode(s,l)
{enc=new ActiveXObject("Scripting.Encoder");
return enc.EncodeScriptFile("."+l,s,0,l+"cript");
}


    var STATE_COPY_INPUT        = 100
    var STATE_READLEN       = 101
    var STATE_DECODE        = 102
    var STATE_UNESCAPE      = 103

    var pick_encoding = new Array(
        1, 2, 0, 1, 2, 0, 2, 0, 0, 2, 0, 2, 1, 0, 2, 0,
        1, 0, 2, 0, 1, 1, 2, 0, 0, 2, 1, 0, 2, 0, 0, 2,
        1, 1, 0, 2, 0, 2, 0, 1, 0, 1, 1, 2, 0, 1, 0, 2,
        1, 0, 2, 0, 1, 1, 2, 0, 0, 1, 1, 2, 0, 1, 0, 2
    )

    var rawData = new Array(
        0x64,0x37,0x69, 0x50,0x7E,0x2C, 0x22,0x5A,0x65, 0x4A,0x45,0x72,
        0x61,0x3A,0x5B, 0x5E,0x79,0x66, 0x5D,0x59,0x75, 0x5B,0x27,0x4C,
        0x42,0x76,0x45, 0x60,0x63,0x76, 0x23,0x62,0x2A, 0x65,0x4D,0x43,
        0x5F,0x51,0x33, 0x7E,0x53,0x42, 0x4F,0x52,0x20, 0x52,0x20,0x63,
        0x7A,0x26,0x4A, 0x21,0x54,0x5A, 0x46,0x71,0x38, 0x20,0x2B,0x79,
        0x26,0x66,0x32, 0x63,0x2A,0x57, 0x2A,0x58,0x6C, 0x76,0x7F,0x2B,
        0x47,0x7B,0x46, 0x25,0x30,0x52, 0x2C,0x31,0x4F, 0x29,0x6C,0x3D,
        0x69,0x49,0x70, 0x3F,0x3F,0x3F, 0x27,0x78,0x7B, 0x3F,0x3F,0x3F,
        0x67,0x5F,0x51, 0x3F,0x3F,0x3F, 0x62,0x29,0x7A, 0x41,0x24,0x7E,
        0x5A,0x2F,0x3B, 0x66,0x39,0x47, 0x32,0x33,0x41, 0x73,0x6F,0x77,
        0x4D,0x21,0x56, 0x43,0x75,0x5F, 0x71,0x28,0x26, 0x39,0x42,0x78,
        0x7C,0x46,0x6E, 0x53,0x4A,0x64, 0x48,0x5C,0x74, 0x31,0x48,0x67,
        0x72,0x36,0x7D, 0x6E,0x4B,0x68, 0x70,0x7D,0x35, 0x49,0x5D,0x22,
        0x3F,0x6A,0x55, 0x4B,0x50,0x3A, 0x6A,0x69,0x60, 0x2E,0x23,0x6A,
        0x7F,0x09,0x71, 0x28,0x70,0x6F, 0x35,0x65,0x49, 0x7D,0x74,0x5C,
        0x24,0x2C,0x5D, 0x2D,0x77,0x27, 0x54,0x44,0x59, 0x37,0x3F,0x25,
        0x7B,0x6D,0x7C, 0x3D,0x7C,0x23, 0x6C,0x43,0x6D, 0x34,0x38,0x28,
        0x6D,0x5E,0x31, 0x4E,0x5B,0x39, 0x2B,0x6E,0x7F, 0x30,0x57,0x36,
        0x6F,0x4C,0x54, 0x74,0x34,0x34, 0x6B,0x72,0x62, 0x4C,0x25,0x4E,
        0x33,0x56,0x30, 0x56,0x73,0x5E, 0x3A,0x68,0x73, 0x78,0x55,0x09,
        0x57,0x47,0x4B, 0x77,0x32,0x61, 0x3B,0x35,0x24, 0x44,0x2E,0x4D,
        0x2F,0x64,0x6B, 0x59,0x4F,0x44, 0x45,0x3B,0x21, 0x5C,0x2D,0x37,
        0x68,0x41,0x53, 0x36,0x61,0x58, 0x58,0x7A,0x48, 0x79,0x22,0x2E,
        0x09,0x60,0x50, 0x75,0x6B,0x2D, 0x38,0x4E,0x29, 0x55,0x3D,0x3F
    )

    var transformed = new Array()
    for (var i=0; i3; i++) transformed[i] = new Array()
    for (var i=31; i=126; i++) for (var j=0; j3; j++) transformed[j][rawData[(i-31) * 3 + j]] = (i==31) ? 9 : i

    var digits = new Array()
    for (var i=0; i26; i++)
    {
        digits["A".charCodeAt(0)+i] = i
        digits["a".charCodeAt(0)+i] = i+26
    }
    for (var i=0; i10; i++)    digits["0".charCodeAt(0)+i] = i+52
    digits[0x2b] = 62
    digits[0x2f] = 63

    function unescape(char)
    {
        var escapes = "#!*$"
        var escaped = "\r\n>@"

        if (char.charCodeAt(0) > 126)   return char
        if (escapes.indexOf(char) != -1)    return escaped.substr(escapes.indexOf(char), 1)
        return "?"
    }

    function decodeBase64(string)
    {
        var val = 0
        val +=  (digits[string.substr(0,1).charCodeAt(0)]  2)
        val +=  (digits[string.substr(1,1).charCodeAt(0)] >> 4)
        val +=  (digits[string.substr(1,1).charCodeAt(0)]  0xf)  12
        val += ((digits[string.substr(2,1).charCodeAt(0)] >> 2)  8)
        val += ((digits[string.substr(2,1).charCodeAt(0)]  0x3)  22)
        val +=  (digits[string.substr(3,1).charCodeAt(0)]  16)
        return val
    }

    function strdec(encodingString)
    {

        var marker = "#@~^"
        var stringIndex = 0
        var scriptIndex = -1
        var unEncodingIndex = 0
        var char = null
        var encodingLength = unEncodinglength = 0
        var state = STATE_COPY_INPUT
        var unEncodingString = ""
        var re, arr

        while(state)
        {
            switch (state)
            {
                case (STATE_COPY_INPUT) :
                    scriptIndex = encodingString.indexOf(marker, stringIndex)
                    if (scriptIndex != -1)
                    {
                        unEncodingString += encodingString.substring(stringIndex, scriptIndex)
                        scriptIndex += marker.length
                        state = STATE_READLEN
                    }
                    else
                    {
                        stringIndex = stringIndex==0 ? 0 : stringIndex
                        unEncodingString += encodingString.substr(stringIndex, encodingString.length)
                        state = 0
                    }
                    break

                case (STATE_READLEN)    :
                    encodingLength = encodingString.substr(scriptIndex, 6)
                    unEncodinglength = decodeBase64(encodingLength)
                    scriptIndex += (6 + "==".length)
                    state = STATE_DECODE
                    break

                case (STATE_DECODE) :
                    if (!unEncodinglength)
                    {
                        stringIndex = scriptIndex + "DQgAAA==^#~@".length
                        unEncodingIndex = 0
                        state = STATE_COPY_INPUT
                        break
                    }
                    char = encodingString.substr(scriptIndex, 1)
                    if (char == "@")    state = STATE_UNESCAPE
                    else
                    {
                        if (char.charCodeAt(0)  0xFF)
                        {
                            unEncodingString += String.fromCharCode(transformed[pick_encoding[unEncodingIndex%64]][char.charCodeAt(0)])
                            unEncodingIndex++
                        }
                        else
                        {
                            unEncodingString += char
                        }                       
                        scriptIndex++
                        unEncodinglength--
                        break
                    }

                case STATE_UNESCAPE:
                    unEncodingString += unescape(encodingString.substr(++scriptIndex, 1))
                    scriptIndex++;  unEncodinglength -=2
                    unEncodingIndex++
                    state = STATE_DECODE
                    break
            }
        }

        re  = new RegExp("(JScript|VBscript).encode", "gmi")
        while(arr = re.exec(unEncodingString))  unEncodingString = RegExp.leftContext + RegExp.$1 + RegExp.rightContext
        return unEncodingString
    }
/* End 解密實現(xiàn):李輝煌 End*/
function DncodeFolderFiles(sFolderPath)
{
/*
 *--------------- DncodeFolderFiles(sFolderPath) -----------------
 * DncodeFolderFiles(sFolderPath)
 * 功能:遍歷sFolderPath目錄下的所有文件,對加密過的.asp文件
 *      進行解密,并寫入源文件中.
 * 實例:DncodeFolderFiles(Server.MapPath("xml"));
 * author:wanghr100(灰豆寶寶.net)
 * update:2004-5-17 8:07
 *--------------- DncodeFolderFiles(sFolderPath) -----------------
 */
    var arrFiles = GetFilesPath(sFolderPath)
    for(var i=0;iarrFiles.length;i++)
    {
        if(GetFileType(arrFiles[i])=="asp")
        {
            Response.Write(DncodeFile(arrFiles[i]))
            Response.Write("OK.br>")
        }
    }
}

//取得xml目錄下的所有文件.解密.
DncodeFolderFiles(Server.MapPath("list"))
//取得t.asp.解密.
//Response.Write(DncodeFile(Server.MapPath("t.asp")))
%>
您可能感興趣的文章:
  • FreeTextBox 中文版下載[含源代碼] of asp.net
  • Ajax+Asp源代碼]讀取數(shù)據(jù)庫內容的表格(沒有用框架)
  • asp實現(xiàn)的7xi音樂網的采集源代碼
  • asp.net下中文驗證碼,免費開源代碼
  • AspNetPager分頁控件源代碼(Version 4.2)
  • 國內首款同時支持自定義404/505/rewrite的asp服務器(netbox制作,開放源代碼)
  • asp.net 需要登陸的網站上下載網頁源代碼和文件
  • asp.net 專業(yè)源代碼打包工具
  • ASP常用源代碼的總結(上)
  • ASP常用源代碼的總結(下)

標簽:仙桃 滄州 海西 欽州 泰州 呂梁 佛山 攀枝花

巨人網絡通訊聲明:本文標題《解密ASP源代碼》,本文關鍵詞  解密,ASP,源代碼,解密,ASP,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《解密ASP源代碼》相關的同類信息!
  • 本頁收集關于解密ASP源代碼的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 麻豆精品视频AV在线观看银杏| 成年人一级毛片| 狠狠色先锋资源网| 鞠婧祎第一次好紧好爽小说| 成人做爰A片免费看黄冈| 被夫上司强的大乳电影| tubevideos日本人| 国产精品第8页| 久久久精品国产sm调教网站| 少妇人妻太紧了A毛片无码| 羞羞午夜爽爽爽影视大全| 国产福利91| 成人A级做爰生活片| 春潮快播| 小婬妇好紧H肉承欲欢| 两根硕大一起挤进小h| 91亚洲欧美综合高清在线| 99久久久无码国产精品怎么下载| 乌克兰性xxaaa| 宝贝乖泄出来h| 日韩免费在线观看| 国产精品天干天干在线播放| 日韩久久久久久精品无码品善网| 日本h无羞动漫在线观看网站| 四虎在线最新地址4hu| 国产日韩一区二区三区在线播放| 欧美色播无码毛片1024| 一女三男做爰3p的电影| 国产精品高清久久久久久久| 成人性欧美丨区二区三区| 国产日韩欧美中文另类| ?交H粗暴调教小公主9| 国产一级特黄aa大片免费视频| 日本欧美在线视频| 欧美 另类 ?交| 毛片96视频免费观看| 免费a级人成a大片在线观看| 久久久久久精品国产三级消防员| 午夜精品久久久久久不卡欧美一级 | 成色18k1.220.38官网| 麻豆视频网站在线观看|