SECTION .data
     Msg:    DB  'Введите строку: ',10
     MsgLen: EQU $-Msg
     Msg1:   DB  'В обратном порядке: ',10
     Msg1Len: EQU $-Msg1
     leng    DW  (0) 

SECTION .bss
     buf1:   resb    80
     buf2:   resb    80

SECTION .text
GLOBAL  _start

_start:

    mov     eax, 4
    mov     ebx, 1
    mov     ecx, Msg
    mov     edx, MsgLen
    int     80h

    mov     eax, 3
    mov     ebx, 0
    mov     ecx, buf1
    mov     edx, 80
    int     80h
    
    mov     ecx, eax
    mov     [leng], eax

    sub     eax, 2
    mov     ebx, buf1
    mov     esi, buf2
    add     esi, eax
    inc     esi
    

 Frag:   
    mov     al, [ebx]
    mov     [esi], al
    inc     ebx
    dec     esi
    loop    Frag        


    mov     eax, 4
    mov     ebx, 1
    mov     ecx, Msg1
    mov     edx, Msg1Len
    int     80h

    mov     eax, 4
    mov     ebx, 1
    mov     ecx, buf2
    mov     edx, [leng]
    int     80h


    mov     eax, 1
    mov     ebx, 0
    int     80h