Аналіз коду системних утиліт. Декомпіляція коду (Звіт з лабораторної роботи № 5), страница 3

0CF1:021E CD20          INT   20    ; Прерывание 20H: Завершить программу                            

0CF1:0220 3C0A          CMP   AL,0A                             

0CF1:0222 7506          JNZ   022A                              

0CF1:0224 FE067B0B      INC   BYTE PTR [0B7B]                   

0CF1:0228 EB42          JMP   026C                              

0CF1:022A 3C08          CMP   AL,08                             

0CF1:022C 750D          JNZ   023B                              

0CF1:022E 803E7C0B01    CMP   BYTE PTR [0B7C],01                

0CF1:0233 7437          JZ    026C                              

0CF1:0235 FE0E7C0B      DEC   BYTE PTR [0B7C]                   

0CF1:0239 EB31          JMP   026C                              

CF1:023B 3C09          CMP    AL,09                              

0CF1:023D 7512          JNZ   0251                              

0CF1:023F 8A267C0B      MOV   AH,[0B7C]                         

0CF1:0243 80C407        ADD   AH,07                             

0CF1:0246 80E4F8        AND   AH,F8                              

0CF1:0249 FEC4          INC   AH                                

0CF1:024B 88267C0B      MOV   [0B7C],AH                         

0CF1:024F EB08          JMP   0259                              

0CF1:0251 3C07          CMP   AL,07                              

0CF1:0253 7417          JZ    026C                              

0CF1:0255 FE067C0B      INC   BYTE PTR [0B7C]                   

0CF1:0259 8A267C0B      MOV   AH,[0B7C]                         

0CF1:025D 3A267A0B      CMP   AH,[0B7A]                          

0CF1:0261 7609          JBE   026C                              

0CF1:0263 FE067B0B      INC   BYTE PTR [0B7B]                   

0CF1:0267 C6067C0B01    MOV   BYTE PTR [0B7C],01                

0CF1:026C 8AD0          MOV   DL,AL  ; DL символ, выводимый на стандартный вывод

0CF1:026E B402          MOV   AH,02    ;Функция 02H: Вывод на дисплей                         

0CF1:0270 CD21          INT   21       ;Прерывание DOS                         

0CF1:0272 8A267B0B      MOV   AH,[0B7B]                          

0CF1:0276 3A26790B      CMP   AH,[0B79]                         

0CF1:027A 724A          JB    02C6                              

0CF1:027C A0780B        MOV   AL,[0B78]                         

0CF1:027F 3C01          CMP   AL,01                              

0CF1:0281 7443          JZ    02C6                              

0CF1:0283 55            PUSH  BP                                

0CF1:0284 56            PUSH  SI                                

0CF1:0285 51            PUSH  CX                                 

0CF1:0286 B80200        MOV   AX,0002                           

0CF1:0289 BB0200        MOV   BX,0002                           

0CF1:028C 33C9          XOR   CX,CX                             

0CF1:028E B200          MOV   DL,00                              

0CF1:0290 B603          MOV   DH,03                             

0CF1:0292 E8EC10        CALL  1381                              

0CF1:0295 B40C          MOV   AH,0C ;Функция 0cH: Ввод с очисткой                            

0CF1:0297 B008          MOV   AL,08 ; номер функции ввода DOS (01H, 06H, 07H, 08H или 0aH)                            

0CF1:0299 CD21          INT   21    ;Прерывание DOS                            

0CF1:029B 3C71          CMP   AL,71                             

0CF1:029D 7430          JZ    02CF                              

0CF1:029F 3C51          CMP   AL,51                             

0CF1:02A1 742C          JZ    02CF                              

0CF1:02A3 3C00          CMP   AL,00                             

0CF1:02A5 7504          JNZ   02AB                              

0CF1:02A7 B408          MOV   AH,08   ;Функция 08H: Консольный ввод без эха