Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- format PE CONSOLE 4.0
- include 'win32a.inc'
- start:
- reader:
- mov al,byte[btactcode]
- cmp al,0x00
- jz exit
- cmp al,'>'
- jz char1
- cmp al,'<'
- jz char2
- cmp al,'+'
- jz char3
- cmp al,'-'
- jz char4
- cmp al,'.'
- jz char5
- cmp al,','
- jz char6
- cmp al,'['
- jz char7
- cmp al,']'
- jz char8
- call inc_btactcode
- inc_btactcode:
- mov al,byte[btactcode]
- inc al
- mov byte[btactcode],al
- ret
- inc_btactcell:
- mov al,byte[btactcell]
- inc al
- mov byte[btactcell],al
- ret
- dec_btactcell:
- mov al,btactcell
- dec al
- mov byte[btactcell],al
- ret
- inc_btstore_btactcell:
- mov al,byte[btstore]
- mov bl,byte[btactcell]
- mov al,[al+bl]
- inc al
- mov dl,byte[btstore]
- mov byte[dl+bl],al
- ret
- dec_btstore_btactcell:
- mov al,byte[btstore]
- mov bl,byte[btactcell]
- mov al,[al+bl]
- dec al
- mov dl,byte[btstore]
- mov [dl+bl],al
- ret
- char1:
- call inc_btactcell
- call inc_btactcode
- inc cl
- jmp reader
- char2:
- call dec_btactcell
- call inc_btactcode
- inc cl
- jmp reader
- char3:
- call inc_btstore_btactcell
- call inc_btactcode
- inc cl
- jmp reader
- char4:
- call dec_btstore_btactcell
- call inc_btactcode
- inc cl
- jmp reader
- char5:
- mov ah,09
- mov bl,byte[btactcell]
- mov dl,byte[btstore]
- mov dx,[bl+dl]
- int 21
- call inc_btactcode
- inc cl
- jmp reader
- char6:
- mov ah,1h
- int 21
- mov bl,byte[btstore]
- mov dl,byte[btactcell]
- mov [bl+dl],al
- call inc_btactcode
- inc cl
- jmp reader
- char7:
- mov cl,1
- push btactcode
- push btstore[btactcell]
- call inc_btactcode
- jmp cycle
- char8:
- inc cl
- pop al
- mov byte[btcyclestartpos],al
- jmp cycle
- cycle:
- pop al
- cmp al,0
- jz reader2
- mov al,byte[btcyclestartpos]
- mov dl,[al+cl]
- mov byte[btactcode],dl
- jmp reader
- reader2:
- mov al,byte[btstore]
- mov bl,byte[btactcell]
- push byte[al+bl]
- jmp reader
- exit:
- invoke ExitProcess,0
- btstore db ?
- btcode db 43,43,43,62,43,43,91,62,43,43,43,62,43,43,93,0x00
- btactcell dd btstore
- btactcode dd btcode
- btcyclestartpos db 0
- data import
- library kernel32,'KERNEL32.DLL'
- import kernel32,\
- ExitProcess,'ExitProcess'
- end data
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement