%define LF 10
segment .data
pedido1 db "Digite seu nome: ", 0
pedido2 db "Digite a quantidade de vezes"
db " que você quer que a mensagem apareça: ", 0
mensagem db "Bom dia, %s!", LF, 0
form_str db "%s", 0
form_int db "%d", 0
segment .bss
nome resb 50
quantidade resd 1
segment .text
global main
main:
enter 0, 0
pusha
pushf
push dword pedido1
call printf
pop ecx
push dword nome
push dword form_str
call scanf
pop ecx
pop ecx
push dword pedido2
call printf
pop ecx
push dword quantidade
push dword form_int
call scanf
pop ecx
pop ecx
push dword quantidade
push dword form_int
call printf
pop ecx
pop ecx
mov ecx, quantidade
LP1:
push ecx
push dword nome
push dword mensagem
call printf
pop ecx
pop ecx
pop ecx
loop LP1
popf
popa
leave
ret