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 eax,btstore
- mov ebx,btactcell
- mov al,byte[eax+ebx]
- inc al
- mov edx,btstore
- mov byte[edx+ebx],al
- ret
- dec_btstore_btactcell:
- mov eax,btstore
- mov ebx,btactcell
- mov al,byte[eax+ebx]
- dec al
- mov edx,btstore
- mov byte[edx+ebx],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 ebx,btactcell
- mov edx,btstore
- mov dl,byte[ebx+edx]
- int 21
- call inc_btactcode
- inc cl
- jmp reader
- char6:
- mov ah,1h
- int 21
- mov ebx,btstore
- mov edx,btactcell
- mov byte[ebx+edx],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 eax
- mov byte[btcyclestartpos],al
- jmp cycle
- cycle:
- pop eax
- cmp al,0
- jz reader2
- mov eax,btcyclestartpos
- mov dl,byte[eax+ecx]
- mov byte[btactcode],dl
- jmp reader
- reader2:
- mov eax,btstore
- mov ebx,btactcell
- push [eax+ebx]
- 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