麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 編程 > 易語(yǔ)言 > 正文

易語(yǔ)言源碼被騰訊TP破壞后修復(fù)的代碼

2024-07-21 23:02:39
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

DLL命令表

.版本 2.DLL命令 CopyTo_系統(tǒng)信息段, , , "RtlMoveMemory"  .參數(shù) Dest, 系統(tǒng)信息段  .參數(shù) Src, 字節(jié)集  .參數(shù) Length.DLL命令 CopyTo_SectionInfo, , , "RtlMoveMemory"  .參數(shù) Dest, _SectionInfo  .參數(shù) Src, 字節(jié)集  .參數(shù) Length.DLL命令 CopyFrom_SectionInfo, , , "RtlMoveMemory"  .參數(shù) Dest, 字節(jié)集  .參數(shù) Src, _SectionInfo  .參數(shù) Length.DLL命令 CopyFrom_SectionHeader, , , "RtlMoveMemory"  .參數(shù) Dest, 字節(jié)集  .參數(shù) Src, _SectionHeader  .參數(shù) Length.DLL命令 Sizeof_, 整數(shù)型, , "GlobalSize"  .參數(shù) p, 系統(tǒng)信息段.DLL命令 strcpy_bytes, , , "lstrcpyA"  .參數(shù) dest, 字節(jié)型, 數(shù)組  .參數(shù) src, 文本型.DLL命令 LoadLibraryA, 整數(shù)型, "kernel32.dll", "LoadLibraryA"  .參數(shù) FilePath, 文本型.DLL命令 GetProcAddress, 整數(shù)型, "kernel32.dll", "GetProcAddress"  .參數(shù) hLib  .參數(shù) Name, 文本型.DLL命令 GetModuleHandleA, 整數(shù)型, "kernel32.dll", "LoadLibraryA"  .參數(shù) FilePath, 文本型.DLL命令 DragAcceptFiles_, , "shell32.dll", "DragAcceptFiles", , 登記窗口是否接受托動(dòng)文件的內(nèi)容  .參數(shù) hwnd, 整數(shù)型  .參數(shù) fAccept, 整數(shù)型.DLL命令 SetWindowLong_, 整數(shù)型, "user32", "SetWindowLongA", , 在窗口結(jié)構(gòu)中為指定的窗口設(shè)置信息 指定數(shù)據(jù)的前一個(gè)值  .參數(shù) hwnd, 整數(shù)型, , 欲為其取得信息的窗口的句柄  .參數(shù) nIndex, 整數(shù)型, , 請(qǐng)參考GetWindowLong函數(shù)的nIndex參數(shù)的說(shuō)明  .參數(shù) dwNewLong, 整數(shù)型, , 由nIndex指定的窗口信息的新值;.DLL命令 SetProp_, 整數(shù)型, "user32", "SetPropA", , 增加或修改屬性列項(xiàng)  .參數(shù) hwnd, 整數(shù)型  .參數(shù) lpString, 文本型  .參數(shù) hData, 整數(shù)型.DLL命令 GetProp_, 整數(shù)型, "user32", "GetPropA", , 從窗口屬性表列中返回?cái)?shù)據(jù)句柄  .參數(shù) hwnd, 整數(shù)型  .參數(shù) lpString, 文本型.DLL命令 CallWindowProc_, 整數(shù)型, "user32", "CallWindowProcA", , 將消息傳答窗口函數(shù)  .參數(shù) lpPrevWndFunc, 整數(shù)型  .參數(shù) hwnd, 整數(shù)型  .參數(shù) msg, 整數(shù)型  .參數(shù) wParam, 整數(shù)型  .參數(shù) lParam, 整數(shù)型.DLL命令 DragQueryFile_, 整數(shù)型, "shell32.dll", "DragQueryFileA", , 返回托動(dòng)的文件名  .參數(shù) HDROP, 整數(shù)型  .參數(shù) UINT, 整數(shù)型  .參數(shù) lpStr, 文本型, 傳址  .參數(shù) ch, 整數(shù)型.DLL命令 DragFinish_, , "shell32.dll", "DragFinish", , 釋放分配用于托動(dòng)文件的內(nèi)容  .參數(shù) hDrop, 整數(shù)型.DLL命令 RemoveProp_, 整數(shù)型, "user32", "RemovePropA", , 刪除屬性列入口  .參數(shù) hwnd, 整數(shù)型  .參數(shù) lpString, 文本型

常量數(shù)據(jù)表

.版本 2.常量 GWL_WNDPROC, "-4".常量 WM_DROPFILES, "563".常量 __輸出塊數(shù)據(jù), "假".常量 __輸出屬性值, "假".常量 __輸出Section列表, "假".常量 __檢查效驗(yàn)值, "假".常量 文件類型_源代碼, "1", 公開.常量 文件類型_模塊, "3", 公開.常量 編譯類型_Windows窗口程序, "0", 公開.常量 編譯類型_Windows控制臺(tái)程序, "1", 公開.常量 編譯類型_Windows動(dòng)態(tài)鏈接庫(kù), "2", 公開.常量 編譯類型_Windows易語(yǔ)言模塊, "1000", 公開.常量 編譯類型_Linux控制臺(tái)程序, "10000", 公開.常量 編譯類型_Linux易語(yǔ)言模塊, "11000", 公開.常量 系統(tǒng)信息段, "“系統(tǒng)信息段”".常量 用戶信息段, "“用戶信息段”".常量 程序資源段, "“程序資源段”".常量 程序段, "“程序段”".常量 初始模塊段, "“初始模塊段”".常量 可丟失程序段, "“可丟失程序段”".常量 編輯信息段1_Maby, "“編輯信息段1”".常量 編輯信息段2, "“編輯信息段2”".常量 輔助信息段1, "“輔助信息段1”".常量 輔助信息段2, "“輔助信息段2”".常量 易模塊記錄段, "“易模塊記錄段”".常量 sizeof_系統(tǒng)信息段, "60".常量 sizeof_SectionHeader, "8".常量 sizeof_SectionInfo, "92".常量 sizeof_DWORD, "4".常量 Magic_加密源碼, "1162630231", , "WTLE".常量 Magic_文件標(biāo)志1, "1415007811", , "CNWT".常量 Magic_文件標(biāo)志2, "1196576837", , "EPRG".常量 Magic_Section, "353465113", , 19 73 11 15.常量 no_key_ec_node, "117469977", , 07 00 73 19.常量 xF0000000, "4026531840", , 0xF0000000.常量 x00FFFFFF, "16777215", , 0x00FFFFFF.常量 程序段_變量_屬性_靜態(tài), "1", 公開.常量 程序段_變量_屬性_參考, "2", 公開.常量 程序段_變量_屬性_傳址, "2", 公開.常量 程序段_變量_屬性_可空, "4", 公開.常量 程序段_變量_屬性_數(shù)組, "8", 公開.常量 程序段_變量_屬性_公開, "256", 公開.常量 程序段_函數(shù)_屬性_公開, "8", 公開.常量 程序段_數(shù)據(jù)類型_屬性_公開, "1", 公開.常量 程序段_DLL_屬性_公開, "2", 公開.常量 資源段_常量_頁(yè)面_常量, "1".常量 資源段_常量_頁(yè)面_圖片, "2".常量 資源段_常量_頁(yè)面_聲音, "3".常量 資源段_常量_類型_空白, "22".常量 資源段_常量_類型_數(shù)值, "23".常量 資源段_常量_類型_邏輯, "24".常量 資源段_常量_類型_日期, "25".常量 資源段_常量_類型_文本, "26".常量 資源段_常量_屬性_未檢查, "1", 公開.常量 資源段_常量_屬性_公開, "2", 公開.常量 資源段_常量_屬性_長(zhǎng)文本常量, "16", 公開.常量 數(shù)據(jù)類型_空白型, "0", 公開, 0x00000000.常量 數(shù)據(jù)類型_字節(jié)型, "-2147483391", 公開, 0x80000101.常量 數(shù)據(jù)類型_短整數(shù), "-2147483135", 公開, 0x80000201.常量 數(shù)據(jù)類型_整數(shù)型, "-2147482879", 公開, 0x80000301.常量 數(shù)據(jù)類型_長(zhǎng)整數(shù)型, "-2147482623", 公開, 0x80000401.常量 數(shù)據(jù)類型_小數(shù)型, "-2147482367", 公開, 0x80000501.常量 數(shù)據(jù)類型_雙精度小數(shù), "-2147482111", 公開, 0x80000601.常量 數(shù)據(jù)類型_邏輯型, "-2147483646", 公開, 0x80000002.常量 數(shù)據(jù)類型_日期時(shí)間型, "-2147483645", 公開, 0x80000003.常量 數(shù)據(jù)類型_文本型, "-2147483644", 公開, 0x80000004.常量 數(shù)據(jù)類型_字節(jié)集, "-2147483643", 公開, 0x80000005.常量 數(shù)據(jù)類型_子程序指針, "-2147483642", 公開, 0x80000006.常量 op4_1, "1".常量 op4_23, "23".常量 op4_24, "24".常量 op4_25, "25".常量 op4_26, "26".常量 op4_27, "27".常量 op4_28, "28".常量 op4_29, "29".常量 op4_30, "30".常量 op4_31, "31".常量 op4_32, "32".常量 op4_33, "33".常量 op4_34, "34".常量 op4_35, "35".常量 op1_33, "33".常量 op1_54, "54".常量 op1_55, "55".常量 op1_56, "56".常量 op1_57, "57".常量 op1_58, "58".常量 op1_59, "59"

自定義數(shù)據(jù)類型表

.版本 2.數(shù)據(jù)類型 ProSet  .成員 讀取代碼, 邏輯型  .成員 讀取資源, 邏輯型.數(shù)據(jù)類型 系統(tǒng)信息段, 公開  .成員 編譯版本1, 短整數(shù)型  .成員 編譯版本2, 短整數(shù)型  .成員 Unknow_1  .成員 Unknow_2  .成員 未知類型  .成員 文件類型  .成員 Unknow_3  .成員 編譯類型  .成員 Unknow_9, , , "8".數(shù)據(jù)類型 用戶信息段, 公開  .成員 程序名稱, 文本型  .成員 程序備注, 文本型  .成員 作者, 文本型  .成員 郵政編碼, 文本型  .成員 聯(lián)系地址, 文本型  .成員 電話, 文本型  .成員 傳真, 文本型  .成員 電子信箱, 文本型  .成員 主頁(yè), 文本型  .成員 其他, 文本型  .成員 版本號(hào)1  .成員 版本號(hào)2.數(shù)據(jù)類型 資源段, 公開  .成員 窗體, 資源段_窗體, , "1"  .成員 常量, 資源段_常量, , "1"  .成員 reserve.數(shù)據(jù)類型 資源段_窗體, 公開  .成員 段頭, 塊段頭  .成員 未知1  .成員 未知2  .成員 左邊, 整數(shù)型  .成員 名稱, 文本型  .成員 備注, 文本型  .成員 元素, 資源段_窗體_元素, , "1".數(shù)據(jù)類型 資源段_窗體_元素, 公開  .成員 保留.數(shù)據(jù)類型 資源段_常量, 公開  .成員 標(biāo)志符  .成員 Offset  .成員 dwLength  .成員 屬性, 短整數(shù)型  .成員 名稱, 文本型  .成員 備注, 文本型  .成員 數(shù)據(jù), 變體型  .成員 是否為長(zhǎng)文本, 邏輯型  .成員 結(jié)果, 文本型.數(shù)據(jù)類型 程序段, 公開  .成員 頭信息, 程序段_頭信息  .成員 代碼頁(yè), 程序段_代碼頁(yè), , "1"  .成員 函數(shù)組, 程序段_函數(shù), , "1"  .成員 全局變量, 程序段_變量, , "1"  .成員 數(shù)據(jù)類型, 程序段_數(shù)據(jù)類型, , "1"  .成員 Dll, 程序段_Dll, , "1".數(shù)據(jù)類型 程序段_數(shù)據(jù)類型, 公開  .成員 段頭, 塊段頭  .成員 屬性  .成員 名稱, 文本型  .成員 備注, 文本型  .成員 成員組, 程序段_變量, , "1".數(shù)據(jù)類型 程序段_Dll, 公開  .成員 段頭, 塊段頭  .成員 屬性  .成員 返回類型, 整數(shù)型  .成員 名稱, 文本型  .成員 備注, 文本型  .成員 文件名, 文本型  .成員 命令名, 文本型  .成員 參數(shù)組, 程序段_變量, , "1".數(shù)據(jù)類型 程序段_頭信息, 公開  .成員 VerFlag1  .成員 Unk1  .成員 Unk2_1, 字節(jié)集  .成員 Unk2_2, 字節(jié)集  .成員 Unk2_3, 字節(jié)集  .成員 支持庫(kù)信息, 文本型, , "1"  .成員 Flag1  .成員 Flag2  .成員 Unk3_Op, 字節(jié)集  .成員 調(diào)試命令行, 文本型  .成員 ICO圖標(biāo), 字節(jié)集.數(shù)據(jù)類型 塊段頭, 公開  .成員 dwID  .成員 dwUnk.數(shù)據(jù)類型 程序段_代碼頁(yè), 公開  .成員 段頭, 塊段頭  .成員 Unk1  .成員 基類  .成員 名稱, 文本型  .成員 備注, 文本型  .成員 函數(shù)組標(biāo)志, 整數(shù)型, , "1"  .成員 頁(yè)面變量, 程序段_變量, , "1".數(shù)據(jù)類型 程序段_函數(shù), 公開  .成員 段頭, 塊段頭  .成員 類型  .成員 屬性  .成員 返回類型  .成員 名稱, 文本型  .成員 備注, 文本型  .成員 變量, 程序段_變量, , "1"  .成員 參數(shù), 程序段_變量, , "1"  .成員 數(shù)據(jù)1, 字節(jié)集  .成員 數(shù)據(jù)2, 字節(jié)集  .成員 數(shù)據(jù)3, 字節(jié)集  .成員 數(shù)據(jù)4, 字節(jié)集  .成員 數(shù)據(jù)5, 字節(jié)集  .成員 代碼, 字節(jié)集.數(shù)據(jù)類型 程序段_代碼行  .成員 dwFuncId  .成員 類型, , , , -4=??;-3=DLL指令;-2=用戶子程序;-1=空;>=0時(shí),則為支持庫(kù)索引列表  .成員 未驗(yàn)證代碼, 文本型  .成員 備注, 文本型.數(shù)據(jù)類型 程序段_變量, 公開  .成員 標(biāo)志符, 整數(shù)型  .成員 Offset  .成員 dwLength  .成員 數(shù)據(jù)類型  .成員 屬性, 短整數(shù)型  .成員 數(shù)組維數(shù), 字節(jié)型  .成員 數(shù)組下標(biāo)值, , , "1"  .成員 名稱, 文本型  .成員 備注, 文本型.數(shù)據(jù)類型 初始模塊段, 公開  .成員 保留.數(shù)據(jù)類型 可丟失程序段, 公開  .成員 保留.數(shù)據(jù)類型 編輯信息段1, 公開  .成員 保留.數(shù)據(jù)類型 編輯信息段2, 公開  .成員 保留.數(shù)據(jù)類型 輔助信息段1, 公開  .成員 保留.數(shù)據(jù)類型 輔助信息段2, 公開  .成員 保留.數(shù)據(jù)類型 易模塊記錄段, 公開  .成員 保留.數(shù)據(jù)類型 _FileHeader  .成員 Magic1, 整數(shù)型  .成員 Magic2, 整數(shù)型.數(shù)據(jù)類型 _SectionHeader  .成員 Magic, 整數(shù)型  .成員 Info_CheckSum, 整數(shù)型.數(shù)據(jù)類型 _SectionInfo  .成員 Key, 字節(jié)型, , "4"  .成員 Name, 字節(jié)型, , "30"  .成員 reserve_fill_1, 短整數(shù)型  .成員 Index, 整數(shù)型  .成員 Flag1, 整數(shù)型, , , 1=ec info  .成員 Data_CheckSum, 整數(shù)型  .成員 DataLength, 整數(shù)型  .成員 reserve_item, 整數(shù)型, , "10".數(shù)據(jù)類型 分析選項(xiàng), 公開  .成員 禁讀_主要頁(yè)面, 邏輯型  .成員 禁讀_程序代碼, 邏輯型  .成員 禁讀_資源數(shù)據(jù), 邏輯型

修復(fù)分析的代碼

.版本 2.程序集 修復(fù)分析.程序集變量 g_LastError, 文本型.子程序 分析_取最后錯(cuò)誤文本, 文本型返回 (g_LastError).子程序 分析_設(shè)置錯(cuò)誤文本.參數(shù) text, 文本型g_LastError = text.子程序 Error.參數(shù) text, 文本型輸出調(diào)試文本 (“[Error]” + text)分析_設(shè)置錯(cuò)誤文本 (text).如果 (是否為調(diào)試版 ())  輸出調(diào)試文本 (“[Error]” + text).否則  信息框 (text, #錯(cuò)誤圖標(biāo), “LD提示:”, ).如果結(jié)束.子程序 RepairLog.參數(shù) text, 文本型輸出調(diào)試文本 (text).子程序 分析_易文件, 邏輯型.參數(shù) 文件路徑, 文本型.參數(shù) 文件密碼, 文本型, 可空.參數(shù) __修復(fù)文件, 邏輯型, 可空.參數(shù) 分析選項(xiàng), 分析選項(xiàng), 可空.參數(shù) 系統(tǒng)信息段, 系統(tǒng)信息段, 可空.參數(shù) 用戶信息段, 用戶信息段, 可空.參數(shù) 程序資源段, 資源段, 可空.參數(shù) 程序段, 程序段, 可空.參數(shù) 初始模塊段, 初始模塊段, 可空.參數(shù) 可丟失程序段, 可丟失程序段, 可空.參數(shù) 編輯信息段1, 編輯信息段1, 可空.參數(shù) 編輯信息段2, 編輯信息段2, 可空.參數(shù) 輔助信息段1, 輔助信息段1, 可空.參數(shù) 輔助信息段2, 輔助信息段2, 可空.參數(shù) 易模塊記錄段, 易模塊記錄段, 可空.局部變量 file, 讀取.局部變量 Block_Data, 字節(jié)集.局部變量 Block_Name, 文本型.局部變量 FileHead, _FileHeader.局部變量 是否有密碼, 邏輯型是否有密碼 = file.is_have_password (文件路徑).如果真 (file.Open (文件路徑, __修復(fù)文件, 文件密碼) = 假)  Error (“打開文件失敗”)  返回 (假).如果真結(jié)束FileHead = file.Read_FileHeader ().如果真 (FileHead.Magic1 ≠ #Magic_文件標(biāo)志1)  .如果 (是否有密碼 = 假)    Error (“頭標(biāo)志1錯(cuò)誤”)  .否則    Error (“密碼錯(cuò)誤或頭標(biāo)志1錯(cuò)誤”)  .如果結(jié)束  file.Close ()  返回 (假).如果真結(jié)束.如果真 (FileHead.Magic2 ≠ #Magic_文件標(biāo)志2)  .如果 (是否有密碼 = 假)    Error (“頭標(biāo)志2錯(cuò)誤”)  .否則    Error (“密碼錯(cuò)誤或頭標(biāo)志2錯(cuò)誤”)  .如果結(jié)束  file.Close ()  返回 (假).如果真結(jié)束Block_Data = { }.判斷循環(huán)首 (真)  .如果真 (__修復(fù)文件)    Repair_NodeInfo (file, 取字節(jié)集長(zhǎng)度 (Block_Data))  .如果真結(jié)束  .如果真 (file.Read_Section (Block_Name, Block_Data) = 假)    跳出循環(huán) ()  .如果真結(jié)束  .如果真 (#__輸出Section列表)    輸出調(diào)試文本 (Block_Name)  .如果真結(jié)束  .判斷開始 (Block_Name = “”)    跳出循環(huán) ()  .判斷 (Block_Name = #系統(tǒng)信息段)    .如果真 (是否為空 (系統(tǒng)信息段) = 假)      系統(tǒng)信息段 = 分析_系統(tǒng)信息段 (Block_Data)    .如果真結(jié)束  .判斷 (Block_Name = #用戶信息段)    .如果真 (是否為空 (用戶信息段) = 假)      用戶信息段 = 分析_用戶信息段 (Block_Data)    .如果真結(jié)束  .判斷 (Block_Name = #程序資源段)    .如果真 (是否為空 (程序資源段) = 假)      程序資源段 = 分析_資源段 (Block_Data, 分析選項(xiàng))    .如果真結(jié)束  .判斷 (Block_Name = #程序段)    .如果真 (是否為空 (程序段) = 假)      程序段 = 分析_程序段 (Block_Data, 分析選項(xiàng))    .如果真結(jié)束  .判斷 (Block_Name = #初始模塊段)    .如果真 (是否為空 (系統(tǒng)信息段) = 假)      初始模塊段 = 分析_初始模塊段 (Block_Data)    .如果真結(jié)束  .判斷 (Block_Name = #可丟失程序段)    .如果真 (是否為空 (可丟失程序段) = 假)      可丟失程序段 = 分析_可丟失程序段 (Block_Data)    .如果真結(jié)束  .判斷 (Block_Name = #編輯信息段1_Maby)    .如果真 (是否為空 (編輯信息段1) = 假)      編輯信息段1 = 分析_編輯信息段1 (Block_Data)    .如果真結(jié)束  .判斷 (Block_Name = #編輯信息段2)    .如果真 (是否為空 (編輯信息段2) = 假)      編輯信息段2 = 分析_編輯信息段2 (Block_Data)    .如果真結(jié)束  .判斷 (Block_Name = #輔助信息段1)    .如果真 (是否為空 (輔助信息段1) = 假)      輔助信息段1 = 分析_輔助信息段1 (Block_Data)    .如果真結(jié)束  .判斷 (Block_Name = #輔助信息段2)    .如果真 (是否為空 (輔助信息段2) = 假)      輔助信息段2 = 分析_輔助信息段2 (Block_Data)    .如果真結(jié)束  .判斷 (Block_Name = #易模塊記錄段)    .如果真 (是否為空 (易模塊記錄段) = 假)      易模塊記錄段 = 分析_易模塊記錄段 (Block_Data)    .如果真結(jié)束  .默認(rèn)    Error (“未知段[” + Block_Name + “]”)  .判斷結(jié)束  .如果真 (#__輸出塊數(shù)據(jù))    創(chuàng)建目錄 (取運(yùn)行目錄 () + “/” + Block_Name)    .如果真 (Block_Data ≠ { })      寫到文件 (取運(yùn)行目錄 () + “/” + Block_Name + “/” + 輔_取文件名稱 (文件路徑) + “.txt”, Block_Data)    .如果真結(jié)束  .如果真結(jié)束.判斷循環(huán)尾 ()file.Close ()返回 (真).子程序 分析_易模塊記錄段, 易模塊記錄段.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 Info, 易模塊記錄段返回 (Info).子程序 分析_輔助信息段1, 輔助信息段1.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 Info, 輔助信息段1返回 (Info).子程序 分析_輔助信息段2, 輔助信息段2.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 Info, 輔助信息段2返回 (Info).子程序 分析_編輯信息段1, 編輯信息段1.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 Info, 編輯信息段1返回 (Info).子程序 分析_編輯信息段2, 編輯信息段2.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 Info, 編輯信息段2返回 (Info).子程序 分析_可丟失程序段, 可丟失程序段.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 Info, 可丟失程序段返回 (Info).子程序 分析_初始模塊段, 初始模塊段.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 Info, 初始模塊段返回 (Info).子程序 分析_系統(tǒng)信息段, 系統(tǒng)信息段.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 Info, 系統(tǒng)信息段CopyTo_系統(tǒng)信息段 (Info, 數(shù)據(jù), #sizeof_系統(tǒng)信息段).如果真 (是否為調(diào)試版 ())  .如果真 (Info.Unknow_1 ≠ 1 或 Info.Unknow_2 ≠ 1 或 Info.Unknow_3 ≠ 0 或 到字節(jié)集 (Info.Unknow_9) ≠ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 })  .如果真結(jié)束.如果真結(jié)束返回 (Info).子程序 分析_用戶信息段, 用戶信息段.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 Info, 用戶信息段.局部變量 offsetoffset = 1Info.程序名稱 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.程序備注 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.作者 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.郵政編碼 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.聯(lián)系地址 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.電話 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.傳真 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.電子信箱 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.主頁(yè) = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.其他 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.版本號(hào)1 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.版本號(hào)2 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)返回 (Info).子程序 Repair_NodeInfo, 邏輯型.參數(shù) file, 讀取.參數(shù) LastSize.局部變量 Header, _SectionHeader.局部變量 Info, _SectionInfo.局部變量 extern, 字節(jié)集.局部變量 bak.局部變量 length.局部變量 checksum.局部變量 Repair, 邏輯型.如果真 (file.IsEof ())  返回 (假).如果真結(jié)束bak = file.GetPos ()Header = file.Read_SectionHeader ().如果真 (Header.Magic ≠ #Magic_Section)  length = 0 - #sizeof_SectionHeader - #sizeof_SectionInfo  .判斷循環(huán)首 (file.IsEof () = 假)    file.MoveTo (#文件首, bak + length)    Header.Magic = file.ReadInt ()    .如果真 (Header.Magic = #Magic_Section)      跳出循環(huán) ()    .如果真結(jié)束    length = length + 1  .判斷循環(huán)尾 ()  .如果真 (Header.Magic ≠ #Magic_Section)    file.MoveTo (#文件首, bak)    返回 (假)  .如果真結(jié)束  .如果 (length ≥ 0)    file.MoveTo (#文件首, bak)    extern = file.ReadData (length)    Info.DataLength = length    Info.Data_CheckSum = GetCheckValue (extern)    Info.Key [1] = 204    Info.Key [2] = 204    Info.Key [3] = 204    Info.Key [4] = 204    strcpy_bytes (Info.Name, “待修復(fù)”)    Decode_Str (Info.Name, Info.Key)    Header.Info_CheckSum = GetSectionInfoCheckSum (Info)    file.MoveTo (#文件首, bak)    file.InsertSection (Header, Info)    file.MoveTo (#文件首, bak)    Header = file.Read_SectionHeader ()  .否則  .如果結(jié)束.如果真結(jié)束Info = file.Read_SectionInfo ()extern = file.ReadData (Info.DataLength)checksum = GetCheckValue (extern).如果真 (Info.Data_CheckSum ≠ checksum)  Info.Data_CheckSum = checksum  Repair = 真.如果真結(jié)束checksum = GetSectionInfoCheckSum (Info).如果真 (Header.Info_CheckSum ≠ checksum)  Header.Info_CheckSum = checksum  Repair = 真.如果真結(jié)束.如果真 (Repair = 真)  file.MoveTo (#文件首, bak)  file.Write_SectionHeader (Header)  file.Write_SectionInfo (Info)  Decode_Str (Info.Name, Info.Key)  RepairLog (“[” + 到文本 (Info.Name) + “]損壞”).如果真結(jié)束file.MoveTo (#文件首, bak)返回 (真).子程序 Repair_Write.參數(shù) hFile.參數(shù) CheckAddr_Head.參數(shù) CheckAddr_Data.參數(shù) HeadAddr.參數(shù) HeadSize.參數(shù) DataAddr.參數(shù) DataSize.局部變量 bak.局部變量 bin, 字節(jié)集bak = 取讀寫位置 (hFile)移動(dòng)讀寫位置 (hFile, , DataAddr)bin = 讀入字節(jié)集 (hFile, DataSize)移動(dòng)讀寫位置 (hFile, , CheckAddr_Data).如果真 (寫出數(shù)據(jù) (hFile, GetCheckValue (bin)) = 假)  Error (“修正失敗[數(shù)據(jù)]”).如果真結(jié)束移動(dòng)讀寫位置 (hFile, , HeadAddr)bin = 讀入字節(jié)集 (hFile, HeadSize)移動(dòng)讀寫位置 (hFile, , CheckAddr_Head).如果真 (寫出數(shù)據(jù) (hFile, GetCheckValue (bin)) = 假)  Error (“修正失敗[頭]”).如果真結(jié)束移動(dòng)讀寫位置 (hFile, , bak).子程序 GetCheckValue, 整數(shù)型.參數(shù) data, 字節(jié)集.局部變量 data_len.局部變量 key, 字節(jié)集.局部變量 key_len.局部變量 i.局部變量 ret_keykey_len = 4key = 取空白字節(jié)集 (key_len)data_len = 取字節(jié)集長(zhǎng)度 (data)i = 0.判斷循環(huán)首 (i < data_len)  key [i % key_len + 1] = 位異或 (key [i % key_len + 1], data [i + 1])  i = i + 1.判斷循環(huán)尾 ()ret_key = 取字節(jié)集數(shù)據(jù) (key, #整數(shù)型, )返回 (ret_key).子程序 Decode_Str.參數(shù) data, 字節(jié)型, 數(shù)組.參數(shù) key, 字節(jié)型, 數(shù)組.局部變量 key_i.局部變量 key_len.局部變量 i, 整數(shù)型key_len = 取數(shù)組成員數(shù) (key)key_i = 1.計(jì)次循環(huán)首 (取數(shù)組成員數(shù) (data), i)  data [i] = 位異或 (data [i], key [key_i % key_len + 1])  key_i = key_i + 1.計(jì)次循環(huán)尾 ()

數(shù)據(jù)

.版本 2.程序集 數(shù)據(jù).子程序 GET_HIGHT_TYPE, 整數(shù)型.參數(shù) DWORD返回 (右移 (位與 (DWORD, #xF0000000), 8 + 8 + 8 + 4)).子程序 GET_LINK_TYPE, 整數(shù)型.參數(shù) DWORD, 整數(shù)型返回 (位與 (DWORD, #x00FFFFFF)).子程序 取數(shù)據(jù)_字節(jié), 短整數(shù)型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考返回 (取字節(jié)集數(shù)據(jù) (數(shù)據(jù), #字節(jié)型, offset)).子程序 取數(shù)據(jù)_短整數(shù), 短整數(shù)型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考返回 (取字節(jié)集數(shù)據(jù) (數(shù)據(jù), #短整數(shù)型, offset)).子程序 取數(shù)據(jù)_整數(shù), 整數(shù)型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考返回 (取字節(jié)集數(shù)據(jù) (數(shù)據(jù), #整數(shù)型, offset)).子程序 取數(shù)據(jù)_邏輯, 邏輯型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考返回 (取字節(jié)集數(shù)據(jù) (數(shù)據(jù), #邏輯型, offset)).子程序 取數(shù)據(jù)_雙精度小數(shù), 雙精度小數(shù)型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考返回 (取字節(jié)集數(shù)據(jù) (數(shù)據(jù), #雙精度小數(shù)型, offset)).子程序 取數(shù)據(jù)_日期時(shí)間, 日期時(shí)間型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考返回 (取字節(jié)集數(shù)據(jù) (數(shù)據(jù), #日期時(shí)間型, offset)).子程序 取數(shù)據(jù)_文本數(shù)組.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.參數(shù) ret_arg, 文本型, 數(shù)組.局部變量 wCount, 短整數(shù)型.局部變量 iwCount = 取數(shù)據(jù)_短整數(shù) (數(shù)據(jù), offset)重定義數(shù)組 (ret_arg, 假, wCount).計(jì)次循環(huán)首 (wCount, i)  ret_arg [i] = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset).計(jì)次循環(huán)尾 ().子程序 取數(shù)據(jù)_數(shù)據(jù)文本, 文本型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考返回 (到文本 (取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset))).子程序 取數(shù)據(jù)_標(biāo)準(zhǔn)文本, 文本型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考返回 (取字節(jié)集數(shù)據(jù) (數(shù)據(jù), #文本型, offset)).子程序 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù), 字節(jié)集.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.局部變量 lenlen = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)返回 (取數(shù)據(jù)_指定數(shù)據(jù) (數(shù)據(jù), offset, len)).子程序 取數(shù)據(jù)_指定數(shù)據(jù), 字節(jié)集.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.參數(shù) length.局部變量 data, 字節(jié)集.如果真 (length < 0)  Error (“Read Data Error”)  返回 ({ }).如果真結(jié)束.如果真 (length = 0)  返回 ({ }).如果真結(jié)束data = 取字節(jié)集中間 (數(shù)據(jù), offset, length)offset = offset + length返回 (data).子程序 取數(shù)據(jù)_跳過動(dòng)態(tài)數(shù)據(jù), 字節(jié)集.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.局部變量 lenlen = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)offset = offset + len返回 ({ }).子程序 數(shù)據(jù)轉(zhuǎn)換, 文本型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.局部變量 i, 整數(shù)型i = 取字節(jié)集數(shù)據(jù) (數(shù)據(jù), #整數(shù)型, offset)返回 (到文本 (readBytes (i, 數(shù)據(jù), offset))).子程序 readBytes, 字節(jié)集.參數(shù) length, 整數(shù)型.參數(shù) data, 字節(jié)集.參數(shù) offset, , 參考.局部變量 d, 字節(jié)集d = 取字節(jié)集中間 (data, offset, length)offset = offset + length返回 (d)

分析程序段

.版本 2.程序集 分析程序段.子程序 分析_程序段, 程序段.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) 分析選項(xiàng), 分析選項(xiàng).局部變量 offset.局部變量 Info, 程序段.局部變量 Count.局部變量 i, 整數(shù)型.局部變量 段組, 塊段頭, , "0"offset = 1分析_程序段_基本信息 (數(shù)據(jù), offset, Info.頭信息).如果真 (分析選項(xiàng).禁讀_主要頁(yè)面 = 假)  Count = 分析_塊_段頭 (數(shù)據(jù), offset, 段組)  重定義數(shù)組 (Info.代碼頁(yè), 假, Count)  .計(jì)次循環(huán)首 (Count, i)    Info.代碼頁(yè) [i].段頭 = 段組 [i]    分析_程序段_程序集 (數(shù)據(jù), offset, Info.代碼頁(yè) [i])  .計(jì)次循環(huán)尾 ()  Count = 分析_塊_段頭 (數(shù)據(jù), offset, 段組)  重定義數(shù)組 (Info.函數(shù)組, 假, Count)  .計(jì)次循環(huán)首 (Count, i)    Info.函數(shù)組 [i].段頭 = 段組 [i]    分析_程序段_函數(shù) (數(shù)據(jù), offset, Info.函數(shù)組 [i], Info, 分析選項(xiàng))  .計(jì)次循環(huán)尾 ()  分析_程序段_變量_數(shù)據(jù) (Info.全局變量, 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset), 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset))  Count = 分析_塊_段頭 (數(shù)據(jù), offset, 段組)  重定義數(shù)組 (Info.數(shù)據(jù)類型, 假, Count)  .計(jì)次循環(huán)首 (Count, i)    Info.數(shù)據(jù)類型 [i].段頭 = 段組 [i]    分析_程序段_數(shù)據(jù)類型 (數(shù)據(jù), offset, Info.數(shù)據(jù)類型 [i])  .計(jì)次循環(huán)尾 ()  Count = 分析_塊_段頭 (數(shù)據(jù), offset, 段組)  重定義數(shù)組 (Info.Dll, 假, Count)  .計(jì)次循環(huán)首 (Count, i)    Info.Dll [i].段頭 = 段組 [i]    分析_程序段_Dll (數(shù)據(jù), offset, Info.Dll [i])  .計(jì)次循環(huán)尾 ().如果真結(jié)束返回 (Info).子程序 分析_程序段_數(shù)據(jù)類型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.參數(shù) Info, 程序段_數(shù)據(jù)類型.局部變量 CountInfo.屬性 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.名稱 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.備注 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)分析_程序段_變量_數(shù)據(jù) (Info.成員組, 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset), 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)).子程序 分析_程序段_Dll.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.參數(shù) Info, 程序段_Dll.局部變量 CountInfo.屬性 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.返回類型 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.名稱 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.備注 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.文件名 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.命令名 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)分析_程序段_變量_數(shù)據(jù) (Info.參數(shù)組, 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset), 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)).子程序 分析_塊_段頭, 整數(shù)型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.參數(shù) List, 塊段頭, 數(shù)組.局部變量 Length.局部變量 Count.局部變量 i, 整數(shù)型Length = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Count = Length ÷ 8重定義數(shù)組 (List, 假, Count)i = offset.計(jì)次循環(huán)首 (Count, i)  List [i].dwID = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).計(jì)次循環(huán)尾 ().計(jì)次循環(huán)首 (Count, i)  List [i].dwUnk = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).計(jì)次循環(huán)尾 ()返回 (Count).子程序 分析_程序段_函數(shù).參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.參數(shù) Info, 程序段_函數(shù).參數(shù) global, 程序段.參數(shù) 分析選項(xiàng), 分析選項(xiàng).局部變量 count, 整數(shù)型Info.類型 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.屬性 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.返回類型 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.名稱 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.備注 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)分析_程序段_變量_數(shù)據(jù) (Info.變量, 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset), 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset))分析_程序段_變量_數(shù)據(jù) (Info.參數(shù), 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset), 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)).如果 (分析選項(xiàng).禁讀_程序代碼)  Info.數(shù)據(jù)1 = 取數(shù)據(jù)_跳過動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.數(shù)據(jù)2 = 取數(shù)據(jù)_跳過動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.數(shù)據(jù)3 = 取數(shù)據(jù)_跳過動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.數(shù)據(jù)4 = 取數(shù)據(jù)_跳過動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.數(shù)據(jù)5 = 取數(shù)據(jù)_跳過動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.代碼 = 取數(shù)據(jù)_跳過動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset).否則  Info.數(shù)據(jù)1 = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.數(shù)據(jù)2 = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.數(shù)據(jù)3 = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.數(shù)據(jù)4 = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.數(shù)據(jù)5 = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  Info.代碼 = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)  輸出調(diào)試文本 (選擇 (Info.名稱 = “”, “sub_” + 取十六進(jìn)制文本 (Info.段頭.dwID), Info.名稱))  分析_程序段_代碼 (Info.代碼, global).如果結(jié)束.子程序 分析_程序段_代碼.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) Info, 程序段.局部變量 offsetoffset = 1.判斷循環(huán)首 (offset ≤ 取字節(jié)集長(zhǎng)度 (數(shù)據(jù)) 且 offset ≠ -1)  .如果真 (IsUnkType (取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset)) = 假)    到循環(huán)尾 ()  .如果真結(jié)束  .如果真 (位與 (取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset + 6), 40) = 32)    到循環(huán)尾 ()  .如果真結(jié)束  分析_程序段_行 (數(shù)據(jù), offset, Info)  offset = offset + GetFEndLen3 (數(shù)據(jù), offset).判斷循環(huán)尾 ().子程序 分析_程序段_行.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset.參數(shù) Info, 程序段.局部變量 line, 程序段_代碼行.局部變量 tmpline.dwFuncId = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)line.類型 = 取數(shù)據(jù)_短整數(shù) (數(shù)據(jù), offset)tmp = 取數(shù)據(jù)_短整數(shù) (數(shù)據(jù), offset)line.未驗(yàn)證代碼 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)line.備注 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset).判斷開始 (line.類型 ≥ 0)  輸出調(diào)試文本 (取支持庫(kù)信指令 (Info.頭信息, line.類型, line.dwFuncId), line.未驗(yàn)證代碼, line.類型, tmp).判斷 (line.類型 = -2)  輸出調(diào)試文本 (取用戶定義指令 (Info.函數(shù)組, line.dwFuncId), line.未驗(yàn)證代碼, line.類型, tmp).默認(rèn)  輸出調(diào)試文本 (取十六進(jìn)制文本 (line.dwFuncId), line.未驗(yàn)證代碼, line.類型, tmp).判斷結(jié)束tmp = 取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset).子程序 GetFHdrType1, 整數(shù)型.參數(shù) type, 字節(jié)型.判斷開始 (type ≥ 106 且 type ≤ 117)  返回 (4).判斷 (type ≥ 80 且 type ≤ 85)  返回 (5).判斷 (type ≥ 54 且 type ≤ 59)  返回 (2).判斷 (type ≥ 22 且 type ≤ 35)  返回 (1).判斷 (type = 1)  返回 (3).默認(rèn)  返回 (0).判斷結(jié)束.子程序 GetFEndLen1, 整數(shù)型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset.局部變量 tmp.局部變量 bak_offsetbak_offset = offsettmp = 取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset).如果真 (tmp = #op1_54)  返回 (1).如果真結(jié)束tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).判斷循環(huán)首 (真)  tmp = 取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset)  .判斷開始 (tmp = #op1_56)    offset = offset - 1 + GetFEndLen1 (數(shù)據(jù), offset)  .判斷 (tmp = #op1_57)    tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)    tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)  .判斷 (tmp = #op1_58)    ' 到循環(huán)尾 ()  .判斷 (tmp = #op1_59)    tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)  .判斷 (tmp = #op1_33)    offset = offset + GetFEndLen3 (數(shù)據(jù), offset)  .判斷 (tmp = #op1_55)    跳出循環(huán) ()  .默認(rèn)    輸出調(diào)試文本 (“unknow type cmd1:” + 到文本 (tmp))    跳出循環(huán) ()  .判斷結(jié)束.判斷循環(huán)尾 ().如果真 (offset = -1)  暫停 ()  返回 (0).如果真結(jié)束返回 (offset - bak_offset).子程序 GetFEndLen4, 整數(shù)型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset.局部變量 tmp.局部變量 bak_offset.局部變量 tmp_str, 文本型bak_offset = offsettmp = 取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset).判斷開始 (tmp = 0).判斷 (tmp = #op4_1)  ' //.判斷 (tmp = #op4_24)  tmp = 取數(shù)據(jù)_短整數(shù) (數(shù)據(jù), offset).判斷 (tmp = #op4_26)  tmp_str = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset).判斷 (tmp = #op4_28)  tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).判斷 (tmp = #op4_27 或 tmp = #op4_30)  tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).判斷 (tmp = #op4_35)  tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)  tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).判斷 (tmp = #op4_23 或 tmp = #op4_25)  tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)  tmp = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).判斷 (tmp = #op4_29)  offset = offset + GetFEndLen1 (數(shù)據(jù), offset).判斷 (tmp = #op4_33 或 tmp = #op4_34)  offset = offset + GetFEndLen3 (數(shù)據(jù), offset).判斷 (tmp = #op4_31)  .判斷循環(huán)首 (取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset) ≠ #op4_32 且 offset ≠ -1)    offset = offset + GetFEndLen4 (數(shù)據(jù), offset)  .判斷循環(huán)尾 ().判斷 (tmp = 22).默認(rèn)  輸出調(diào)試文本 (“unknow type cmd4:” + 到文本 (tmp)).判斷結(jié)束.如果真 (offset = -1)  返回 (1).如果真結(jié)束返回 (offset - bak_offset).子程序 GetFEndLen3, 整數(shù)型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset.局部變量 bak_offset.局部變量 tmp_str, 文本型bak_offset = offsetoffset = offset + 8tmp_str = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)檢查 (offset ≠ -1)tmp_str = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)檢查 (offset ≠ -1)offset = offset + GetFEndLen1 (數(shù)據(jù), offset)檢查 (offset ≠ -1)offset = offset + GetFEndLen4_loop (數(shù)據(jù), offset)返回 (offset - bak_offset).子程序 GetFEndLen4_loop, 整數(shù)型.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset.局部變量 bak_offsetbak_offset = offset.判斷循環(huán)首 (取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset + 1 - 1) ≠ #op4_1)  offset = offset + GetFEndLen4 (數(shù)據(jù), offset).判斷循環(huán)尾 ()offset = offset + 1返回 (offset - bak_offset).子程序 IsUnkType, 邏輯型.參數(shù) type, 字節(jié)型.判斷開始 (type = 33)  返回 (真).判斷 (GetFHdrType1 (type) = 4 且 type ≠ 114 且 type ≠ 115 且 type ≠ 116 且 type ≠ 109 且 type ≠ 111 且 type ≠ 117)  返回 (真).默認(rèn)  返回 (假).判斷結(jié)束.子程序 分析_程序段_程序集.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.參數(shù) Info, 程序段_代碼頁(yè).局部變量 Bin, 字節(jié)集.局部變量 i, 整數(shù)型.局部變量 length.局部變量 countInfo.Unk1 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.基類 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.名稱 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)Info.備注 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)length = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)count = length ÷ 4重定義數(shù)組 (Info.函數(shù)組標(biāo)志, 假, count).計(jì)次循環(huán)首 (count, i)  Info.函數(shù)組標(biāo)志 [i] = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).計(jì)次循環(huán)尾 ()分析_程序段_變量_數(shù)據(jù) (Info.頁(yè)面變量, 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset), 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)).子程序 分析_程序段_變量_數(shù)據(jù).參數(shù) list, 程序段_變量, 數(shù)組.參數(shù) count.參數(shù) 數(shù)據(jù), 字節(jié)集.局部變量 offset.局部變量 i.局部變量 i2.局部變量 text, 文本型重定義數(shù)組 (list, 假, count).如果真 (count = 0)  返回 ().如果真結(jié)束offset = 1.計(jì)次循環(huán)首 (count, i)  list [i].標(biāo)志符 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).計(jì)次循環(huán)尾 ().計(jì)次循環(huán)首 (count, i)  list [i].Offset = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).計(jì)次循環(huán)尾 ().計(jì)次循環(huán)首 (count, i)  list [i].Offset = list [i].Offset + offset.計(jì)次循環(huán)尾 ().計(jì)次循環(huán)首 (取數(shù)組成員數(shù) (list), i)  offset = list [i].Offset  list [i].dwLength = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)  list [i].數(shù)據(jù)類型 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)  list [i].屬性 = 取數(shù)據(jù)_短整數(shù) (數(shù)據(jù), offset)  list [i].數(shù)組維數(shù) = 取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset)  重定義數(shù)組 (list [i].數(shù)組下標(biāo)值, 假, list [i].數(shù)組維數(shù))  .計(jì)次循環(huán)首 (list [i].數(shù)組維數(shù), i2)    list [i].數(shù)組下標(biāo)值 [i2] = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)  .計(jì)次循環(huán)尾 ()  list [i].名稱 = 取數(shù)據(jù)_標(biāo)準(zhǔn)文本 (數(shù)據(jù), offset)  list [i].備注 = 取數(shù)據(jù)_標(biāo)準(zhǔn)文本 (數(shù)據(jù), offset).計(jì)次循環(huán)尾 ().子程序 分析_程序段_基本信息.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, , 參考.參數(shù) Info, 程序段_頭信息Info.VerFlag1 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.Unk1 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.Unk2_1 = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)Info.Unk2_2 = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)Info.Unk2_3 = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)取數(shù)據(jù)_文本數(shù)組 (數(shù)據(jù), offset, Info.支持庫(kù)信息)Info.Flag1 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)Info.Flag2 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).如果真 (位與 (Info.Flag1, 1) ≠ 0)  Info.Unk3_Op = 取數(shù)據(jù)_指定數(shù)據(jù) (數(shù)據(jù), offset, 16).如果真結(jié)束Info.ICO圖標(biāo) = 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)Info.調(diào)試命令行 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)

分析資源段

.版本 2.程序集 分析資源段.子程序 分析_資源段, 資源段.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) 分析選項(xiàng), 分析選項(xiàng).局部變量 Info, 資源段.局部變量 offset.局部變量 i.局部變量 Count.局部變量 段組, 塊段頭, , "0"offset = 1Count = 分析_塊_段頭 (數(shù)據(jù), offset, 段組)重定義數(shù)組 (Info.窗體, 假, Count).計(jì)次循環(huán)首 (Count, i)  Info.窗體 [i].段頭 = 段組 [i]  分析_資源段_窗體 (數(shù)據(jù), offset, Info.窗體 [i]).計(jì)次循環(huán)尾 ()分析_資源段_常量 (Info.常量, 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset), 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset), 分析選項(xiàng))Info.reserve = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)返回 (Info).子程序 分析_資源段_窗體.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) offset, 整數(shù)型, 參考.參數(shù) info, 資源段_窗體.局部變量 countinfo.未知1 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)info.未知2 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)info.名稱 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)info.備注 = 取數(shù)據(jù)_數(shù)據(jù)文本 (數(shù)據(jù), offset)分析_資源段_窗體_元素 (info.元素, 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset), 取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset)).子程序 分析_資源段_窗體_元素.參數(shù) list, 資源段_窗體_元素, 數(shù)組.參數(shù) count.參數(shù) 數(shù)據(jù), 字節(jié)集重定義數(shù)組 (list, 假, count).如果真 (count = 0)  返回 ().如果真結(jié)束.子程序 分析_資源段_常量.參數(shù) list, 資源段_常量, 數(shù)組.參數(shù) count.參數(shù) 數(shù)據(jù), 字節(jié)集.參數(shù) 分析選項(xiàng), 分析選項(xiàng).局部變量 offset.局部變量 i.局部變量 類型重定義數(shù)組 (list, 假, count).如果真 (count = 0)  返回 ().如果真結(jié)束offset = 1.計(jì)次循環(huán)首 (count, i)  list [i].標(biāo)志符 = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).計(jì)次循環(huán)尾 ().計(jì)次循環(huán)首 (count, i)  list [i].Offset = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset).計(jì)次循環(huán)尾 ().計(jì)次循環(huán)首 (count, i)  list [i].Offset = list [i].Offset + offset.計(jì)次循環(huán)尾 ().計(jì)次循環(huán)首 (取數(shù)組成員數(shù) (list), i)  offset = list [i].Offset  list [i].dwLength = 取數(shù)據(jù)_整數(shù) (數(shù)據(jù), offset)  list [i].屬性 = 取數(shù)據(jù)_短整數(shù) (數(shù)據(jù), offset)  list [i].名稱 = 取數(shù)據(jù)_標(biāo)準(zhǔn)文本 (數(shù)據(jù), offset)  list [i].備注 = 取數(shù)據(jù)_標(biāo)準(zhǔn)文本 (數(shù)據(jù), offset)  類型 = GET_HIGHT_TYPE (list [i].標(biāo)志符)  .判斷開始 (類型 = #資源段_常量_頁(yè)面_常量)    類型 = 取數(shù)據(jù)_字節(jié) (數(shù)據(jù), offset)    .判斷開始 (類型 = #資源段_常量_類型_空白)    .判斷 (類型 = #資源段_常量_類型_數(shù)值)      list [i].數(shù)據(jù).賦值 (取數(shù)據(jù)_雙精度小數(shù) (數(shù)據(jù), offset), )    .判斷 (類型 = #資源段_常量_類型_邏輯)      list [i].數(shù)據(jù).賦值 (取數(shù)據(jù)_邏輯 (數(shù)據(jù), offset), )    .判斷 (類型 = #資源段_常量_類型_日期)      list [i].數(shù)據(jù).賦值 (取數(shù)據(jù)_日期時(shí)間 (數(shù)據(jù), offset), )    .判斷 (類型 = #資源段_常量_類型_文本)      list [i].數(shù)據(jù).賦值 (數(shù)據(jù)轉(zhuǎn)換 (數(shù)據(jù), offset), )      list [i].是否為長(zhǎng)文本 = 位與 (取數(shù)據(jù)_短整數(shù) (數(shù)據(jù), offset), #資源段_常量_屬性_長(zhǎng)文本常量) ≠ 0    .默認(rèn)      Error (“未知常量類型[” + 到文本 (類型) + “]”)    .判斷結(jié)束    list [i].結(jié)果 = “文本”  .判斷 (類型 = #資源段_常量_頁(yè)面_圖片)    .如果 (分析選項(xiàng).禁讀_資源數(shù)據(jù))      list [i].數(shù)據(jù).賦值 (取數(shù)據(jù)_跳過動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset), )    .否則      list [i].數(shù)據(jù).賦值 (取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset), )    .如果結(jié)束    list [i].結(jié)果 = “圖片”  .判斷 (類型 = #資源段_常量_頁(yè)面_聲音)    .如果 (分析選項(xiàng).禁讀_資源數(shù)據(jù))      list [i].數(shù)據(jù).賦值 (取數(shù)據(jù)_跳過動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset), )    .否則      list [i].數(shù)據(jù).賦值 (取數(shù)據(jù)_動(dòng)態(tài)數(shù)據(jù) (數(shù)據(jù), offset), )    .如果結(jié)束    list [i].結(jié)果 = “聲音”  .默認(rèn)    Error (“未知常量頁(yè)面[” + 到文本 (類型) + “]”)  .判斷結(jié)束  .如果真 (#__輸出屬性值)    .如果真 (list [i].屬性 ≠ 0)      輸出調(diào)試文本 (list [i].名稱 + “.屬性=” + 到文本 (list [i].屬性))    .如果真結(jié)束  .如果真結(jié)束.計(jì)次循環(huán)尾 ()

讀取

.版本 2.程序集 讀取.程序集變量 m_hFile.子程序 is_have_password, 邏輯型, 公開.參數(shù) path, 文本型.局部變量 result, 邏輯型.局部變量 FileHead, _FileHeader.局部變量 hFilehFile = 打開文件 (path, #讀入, ).如果真 (hFile ≤ 0)  返回 (假).如果真結(jié)束FileHead = raw_Read_FileHeader (hFile)result = FileHead.Magic1 = #Magic_加密源碼關(guān)閉文件 (hFile)返回 (result).子程序 raw_Open, 整數(shù)型.參數(shù) path, 文本型.參數(shù) Write, 邏輯型, 可空.參數(shù) password, 文本型.局部變量 type.局部變量 hFile.局部變量 是否有密碼, 邏輯型.如果 (Write)  type = #改讀.否則  type = #讀入.如果結(jié)束.如果 (is_have_password (path))  hFile = 打開加密文件 (path, type, , password, 8)  移動(dòng)讀寫位置 (hFile, #現(xiàn)行位置, 8 + 32).否則  hFile = 打開文件 (path, type, ).如果結(jié)束返回 (hFile).子程序 Open, 邏輯型, 公開.參數(shù) path, 文本型.參數(shù) Write, 邏輯型, 可空.參數(shù) password, 文本型m_hFile = raw_Open (path, Write, password)返回 (m_hFile > 0).子程序 Close, , 公開關(guān)閉文件 (m_hFile)m_hFile = 0.子程序 IsEof, 邏輯型, 公開返回 (是否在文件尾 (m_hFile, )).子程序 GetPos, 整數(shù)型, 公開返回 (取讀寫位置 (m_hFile)).子程序 MoveTo, , 公開.參數(shù) Type.參數(shù) Pos移動(dòng)讀寫位置 (m_hFile, Type, Pos).子程序 ReadInt, 整數(shù)型, 公開.局部變量 v讀入數(shù)據(jù) (m_hFile, v)返回 (v).子程序 ReadData, 字節(jié)集, 公開.參數(shù) length返回 (讀入字節(jié)集 (m_hFile, length)).子程序 Read_FileHeader, _FileHeader, 公開返回 (raw_Read_FileHeader (m_hFile)).子程序 Read_SectionHeader, _SectionHeader, 公開返回 (raw_Read_SectionHeader (m_hFile)).子程序 Read_SectionInfo, _SectionInfo, 公開返回 (raw_Read_SectionInfo (m_hFile)).子程序 Read_Section, 邏輯型, 公開.參數(shù) Block_Name, 文本型, 參考.參數(shù) Block_Data, 字節(jié)集, 參考.局部變量 Bin, 字節(jié)集.局部變量 header, _SectionHeader.局部變量 Info, _SectionInfo.如果真 (IsEof ())  返回 (假).如果真結(jié)束header = Read_SectionHeader ().如果真 (header.Magic ≠ #Magic_Section)  Error (“SectionHeader標(biāo)志錯(cuò)誤”)  返回 (假).如果真結(jié)束Info = Read_SectionInfo ().如果真 (header.Info_CheckSum ≠ GetSectionInfoCheckSum (Info))  .如果真 (#__檢查效驗(yàn)值)    Error (“SectionInfo效驗(yàn)值錯(cuò)誤”)    返回 (假)  .如果真結(jié)束.如果真結(jié)束.如果 (到字節(jié)集 (Info.Key) ≠ { 25, 115, 0, 7 })  Decode_Str (Info.Name, Info.Key).否則.如果結(jié)束Block_Name = 到文本 (Info.Name)Block_Data = ReadData (Info.DataLength).如果真 (Info.Data_CheckSum ≠ GetCheckValue (Block_Data))  .如果真 (#__檢查效驗(yàn)值)    Error (“SectionInfo效驗(yàn)值錯(cuò)誤”)    返回 (假)  .如果真結(jié)束.如果真結(jié)束返回 (真).子程序 Write_SectionHeader, , 公開.參數(shù) Header, _SectionHeaderraw_Write_SectionHeader (m_hFile, Header).子程序 Write_SectionInfo, , 公開.參數(shù) info, _SectionInforaw_Write_SectionInfo (m_hFile, info).子程序 InsertSection, , 公開.參數(shù) header, _SectionHeader.參數(shù) info, _SectionInfo.局部變量 bin, 字節(jié)集bin = 取空白字節(jié)集 (#sizeof_SectionHeader)CopyFrom_SectionHeader (bin, header, #sizeof_SectionHeader)插入字節(jié)集 (m_hFile, bin)bin = 取空白字節(jié)集 (#sizeof_SectionInfo)CopyFrom_SectionInfo (bin, info, #sizeof_SectionInfo)插入字節(jié)集 (m_hFile, bin)

RAW

.版本 2.程序集 raw.子程序 raw_Read_FileHeader, _FileHeader.參數(shù) hFile.局部變量 FileHead, _FileHeader讀入數(shù)據(jù) (hFile, FileHead.Magic1)讀入數(shù)據(jù) (hFile, FileHead.Magic2)返回 (FileHead).子程序 raw_Read_SectionHeader, _SectionHeader.參數(shù) hFile.局部變量 header, _SectionHeader讀入數(shù)據(jù) (hFile, header.Magic)讀入數(shù)據(jù) (hFile, header.Info_CheckSum)返回 (header).子程序 raw_Write_SectionHeader.參數(shù) hFile.參數(shù) NodeCheck, _SectionHeader寫出數(shù)據(jù) (hFile, NodeCheck.Magic)寫出數(shù)據(jù) (hFile, NodeCheck.Info_CheckSum).子程序 raw_Read_SectionInfo, _SectionInfo.參數(shù) hFile.局部變量 Info, _SectionInfo.局部變量 Bin, 字節(jié)集.局部變量 bak, 整數(shù)型Bin = 讀入字節(jié)集 (hFile, #sizeof_SectionInfo)CopyTo_SectionInfo (Info, Bin, #sizeof_SectionInfo)返回 (Info).子程序 raw_Write_SectionInfo.參數(shù) hFile.參數(shù) SectionInfo, _SectionInfo.局部變量 bin, 字節(jié)集bin = 取空白字節(jié)集 (#sizeof_SectionInfo)CopyFrom_SectionInfo (bin, SectionInfo, #sizeof_SectionInfo)寫出字節(jié)集 (hFile, bin).子程序 GetSectionInfoCheckSum, 整數(shù)型.參數(shù) Info, _SectionInfo.局部變量 bin, 字節(jié)集bin = 取空白字節(jié)集 (#sizeof_SectionInfo)CopyFrom_SectionInfo (bin, Info, #sizeof_SectionInfo)返回 (GetCheckValue (bin))

輔助

.版本 2.程序集 輔助.子程序 輔_取文件名稱, 文本型.參數(shù) txt, 文本型.局部變量 addr.局部變量 nextaddr = 倒找文本 (txt, “/”, , 假)next = 尋找文本 (txt, “/”, , 假).如果真 (next ≠ -1)  addr = next.如果真結(jié)束.如果真 (addr ≠ -1)  返回 (文本替換 (txt, 1, addr, )).如果真結(jié)束返回 (txt).子程序 CALL, 整數(shù)型.參數(shù) dest.參數(shù) arg1, , 可空.參數(shù) arg2, , 可空.參數(shù) arg3, , 可空.參數(shù) arg4, , 可空.參數(shù) arg5, , 可空返回 (_RawCall (dest, arg1, arg2, arg3, arg4, arg5)).子程序 _RawCall, 整數(shù)型.參數(shù) dest.參數(shù) arg1.參數(shù) arg2.參數(shù) arg3.參數(shù) arg4.參數(shù) arg5置入代碼 ({ 201, 88, 135, 4, 36, 255, 224 })返回 (0).子程序 read_offset_memory, 整數(shù)型.參數(shù) ptr.參數(shù) offset置入代碼 ({ 139, 69, 8, 139, 77, 12, 139, 4, 8, 201, 194, 8, 0 })返回 (0).子程序 輔_取支持庫(kù)信指令, 文本型.參數(shù) hLib.參數(shù) fid.局部變量 addr.局部變量 count, 整數(shù)型.局部變量 ptr.局部變量 last_paddr, , 靜態(tài).局部變量 last_lib, , 靜態(tài).如果 (last_lib ≠ hLib)  addr = GetProcAddress (hLib, “GetNewInf”)  .如果真 (addr = 0)    返回 (“”)  .如果真結(jié)束  addr = CALL (addr)  .如果真 (addr = 0)    返回 (“”)  .如果真結(jié)束  last_lib = hLib  last_paddr = addr.否則  addr = last_paddr.如果結(jié)束count = read_offset_memory (addr, 100).如果真 (fid > count)  返回 (“”).如果真結(jié)束ptr = read_offset_memory (addr, 104)ptr = read_offset_memory (ptr, 36 × fid + 0)返回 (指針到文本 (ptr)).子程序 取支持庫(kù)信指令, 文本型.參數(shù) basic, 程序段_頭信息.參數(shù) index.參數(shù) fid.局部變量 hLib.局部變量 str_list, 文本型, , "0"index = index + 1.如果真 (index ≤ 0 或 index > 取數(shù)組成員數(shù) (basic.支持庫(kù)信息))  返回 (“”).如果真結(jié)束str_list = 分割文本 (basic.支持庫(kù)信息 [index], 字符 (#回車鍵), )hLib = GetModuleHandleA (str_list [1]).如果真 (hLib = 0)  hLib = GetModuleHandleA (str_list [1] + “.fne”)  .如果真 (hLib = 0)    hLib = LoadLibraryA (str_list [1] + “.fne”)    .如果真 (hLib = 0)      hLib = LoadLibraryA (取文本注冊(cè)項(xiàng) (#現(xiàn)行用戶, “Software/FlySky/E/Install/Path”, ) + str_list [1] + “.fne”)    .如果真結(jié)束  .如果真結(jié)束.如果真結(jié)束.如果真 (hLib = 0)  返回 (“”).如果真結(jié)束返回 (輔_取支持庫(kù)信指令 (hLib, fid)).子程序 取用戶定義指令, 文本型.參數(shù) list, 程序段_函數(shù), 數(shù)組.參數(shù) id.局部變量 i, 整數(shù)型.計(jì)次循環(huán)首 (取數(shù)組成員數(shù) (list), i)  .如果真 (list [i].段頭.dwID = id)    .如果 (list [i].名稱 ≠ “”)      返回 (list [i].名稱)    .否則      返回 (“sub_” + 取十六進(jìn)制文本 (id))    .如果結(jié)束  .如果真結(jié)束.計(jì)次循環(huán)尾 ()返回 (“unk_” + 取十六進(jìn)制文本 (id))

其它

.版本 2.支持庫(kù) spec.程序集 其他.子程序 拖放文件.參數(shù) hwnd, 整數(shù)型.參數(shù) 接收參數(shù)指針, 整數(shù)型DragAcceptFiles_ (hwnd, 1)SetProp_ (hwnd, “OriginalWndProc”, SetWindowLong_ (hwnd, #GWL_WNDPROC, 到整數(shù) (&WndProc)))SetProp_ (hwnd, “lpFunction”, 接收參數(shù)指針).子程序 接收參數(shù).參數(shù) 數(shù)量, 整數(shù)型.參數(shù) 文件名組, 文本型, , 以"|"分割.局部變量 i, 整數(shù)型.局部變量 tmp, 文本型, , "0"tmp = 分割文本 (文件名組, “|”, )_啟動(dòng)窗口.地址編輯框.內(nèi)容 = tmp [1].子程序 WndProc, 整數(shù)型.參數(shù) hwnd, 整數(shù)型.參數(shù) msg, 整數(shù)型.參數(shù) wParam, 整數(shù)型.參數(shù) lParam, 整數(shù)型.判斷開始 (msg = #WM_DROPFILES)  Query (wParam, GetProp_ (hwnd, “lpFunction”))  返回 (0).默認(rèn).判斷結(jié)束返回 (CallWindowProc_ (GetProp_ (hwnd, “OriginalWndProc”), hwnd, msg, wParam, lParam)).子程序 Query.參數(shù) hDrop, 整數(shù)型.參數(shù) 接收參數(shù)的子程序指針, 整數(shù)型.局部變量 n, 整數(shù)型.局部變量 i, 整數(shù)型.局部變量 length, 整數(shù)型.局部變量 tmp, 文本型.局部變量 fileNames, 文本型n = DragQueryFile_ (hDrop, 4294967295, 字符 (0), 0).計(jì)次循環(huán)首 (n, i)  length = DragQueryFile_ (hDrop, i - 1, 字符 (0), 0)  tmp = 取空白文本 (length)  DragQueryFile_ (hDrop, i - 1, tmp, length + 1)  .判斷開始 (i ≠ 1)    fileNames = fileNames + “|” + tmp  .默認(rèn)    fileNames = tmp  .判斷結(jié)束.計(jì)次循環(huán)尾 ()調(diào)用子程序_ (接收參數(shù)的子程序指針, 真, , n, 取變量數(shù)據(jù)地址_文本型 (fileNames))DragFinish_ (hDrop).子程序 調(diào)用子程序_, 邏輯型.參數(shù) 子程序指針或子程序地址.參數(shù) 是否為C調(diào)用, 邏輯型, 可空.參數(shù) 返回值, , 參考 可空.參數(shù) 參數(shù)1, , 可空.參數(shù) 參數(shù)2, , 可空.參數(shù) 參數(shù)3, , 可空.參數(shù) 參數(shù)4, , 可空.參數(shù) 參數(shù)5, , 可空.參數(shù) 參數(shù)6, , 可空.參數(shù) 參數(shù)7, , 可空.參數(shù) 參數(shù)8, , 可空.參數(shù) 參數(shù)9, , 可空.參數(shù) 參數(shù)10, , 可空.參數(shù) 參數(shù)11, , 可空.參數(shù) 參數(shù)12, , 可空.參數(shù) 參數(shù)13, , 可空.參數(shù) 參數(shù)14, , 可空.參數(shù) 參數(shù)15, , 可空置入代碼 ({ 86, 81, 51, 201, 81, 177, 15, 139, 245, 129, 198, 152, 0, 0, 0, 131, 238, 8, 139, 198, 139, 0, 133, 192, 116, 8, 139, 70, 252, 80, 131, 69, 244, 4, 226, 235, 255, 85, 8, 139, 77, 20, 137, 1, 51, 192, 57, 69, 12, 116, 3, 3, 101, 244, 89, 89, 94 })返回 (真).子程序 取變量數(shù)據(jù)地址_文本型, 整數(shù)型.參數(shù) 變量, 文本型, 參考置入代碼 ({ 139, 69, 8, 139, 0, 201, 194, 4, 0 })返回 (0)

修復(fù)被破壞文件啟動(dòng)窗口的代碼

.版本 2.程序集 窗口程序集_啟動(dòng)窗口.子程序 __啟動(dòng)窗口_創(chuàng)建完畢拖放文件 (地址編輯框.取窗口句柄 (), 到整數(shù) (&接收參數(shù))).子程序 _選擇文件按鈕_被單擊通用對(duì)話框1.打開 ()地址編輯框.內(nèi)容 = 通用對(duì)話框1.文件名.子程序 _修復(fù)按鈕_被單擊.如果真 (分析_易文件 (地址編輯框.內(nèi)容, 密碼編輯框.內(nèi)容, 真))  信息框 (“已修復(fù)完成!”, 0, “提示:”, ).如果真結(jié)束

運(yùn)行結(jié)果:

易語(yǔ)言源碼,騰訊,修復(fù),代碼

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)VeVb武林網(wǎng)的支持。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到易語(yǔ)言教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 羞羞的视频免费在线观看 | 视频一区二区三区在线播放 | 黄色1级视频 | 蜜桃视频观看麻豆 | 视频一区二区三区免费观看 | 欧美亚州 | 久久精品视频16 | 黄色久 | 日本在线视| 国产宾馆3p国语对白 | 国产精品久久久久久久娇妻 | 亚洲成人福利在线 | 国产免费一区二区三区视频 | 日本爽快片100色毛片视频 | 婷婷中文字幕一区二区三区 | 欧美人禽 | 久久久久99一区二区三区 | 久久网综合 | 国产一区二区三区四区五区精品 | 国产成人精品二区 | 国产精品一区99 | 午夜在线观看视频网站 | 国产女厕一区二区三区在线视 | 日日天日日夜日日摸 | 久久久久免费精品国产小说色大师 | 国产精品久久久久久久久久久久午夜 | 草莓视频在线导航 | av大全在线播放 | 国产午夜精品一区二区三区嫩草 | 成人福利软件 | 一边吃奶一边摸下娇喘 | 一级大片在线观看 | 国产亚洲欧美在线视频 | 羞羞答答影院 | 免费在线观看成人av | 女18一级大黄毛片免费女人 | 亚洲综合视频网 | 玖草| 国产乱淫a∨片免费观看 | 91亚洲免费视频 | 黄色一级片免费观看 |