Bueno pues lo de el virus que infecta ejecutables al ser creados no puede ser porque cree un Hola mundo en C++ y no salto el avira, el que mi fasm este infectado no puede ser porque lo baje de nuevo de la pagina oficial y me aparecio lo mismo, ya escanie mi PC como 3 veces y nada pero creo que ya lo solucione:
en el este code incluyo a win32ax.inc
(con la x) y me salta avira con que es un trojan
include 'include\win32ax.inc'
.data
Titulo db 'Hola Este es el titulo', 0
Texto db 'Hola este es el texto', 0
.code
start:
push 0
push Titulo
push Texto
push 0
call [MessageBoxA]
.end start
y en este otro incluyo a win32a.inc
(sin la x) y avira no salta
format pe gui 4.0
include 'win32a.inc'
push MB_OK
push titulo
push mensaje
push 0
call [MessageBox]
cmp eax,IDOK ;Comparamos si apretaron ok
JE apretook ; Si lo apretamos salatamos a apretook
jmp hubounfallo ;De lo contrario saltamos a hubounfallo
salir:
push 0
call [ExitProcess] ;Terminamos la aplicacion
apretook:
push MB_OK
push titulo
push correcto
push 0
call [MessageBox]
jmp salir
hubounfallo:
push MB_OK or MB_ICONWARNING ;Los tipos de mensaje
push titulo ;El titulo
push fallo ;Mensaje
push 0 ;Handle de la aplicacion en este caso lo ponemos nulo
call [MessageBox] ;LLamamos a MessageBox
jmp salir ;Saltamos a salir
;Posiciones que contienen los bytes a mostrar en pantalla
mensaje:db 'Esto es una MessageBox!!!',0
titulo:db 'Este es el titulo',0
correcto :db 'Apretaste ok',0
fallo:db 'La operacion fallo',0
data import ;Declaramos las api's
library user32,'user32.dll',\
kernel32,'kernel32.dll'
import user32,\
MessageBox,'MessageBoxA'
import kernel32,\
ExitProcess,'ExitProcess'
end data
EDITO:
Despues de estar modificando codes a lo loco pues encontre que no es eso si no que en unos codes puse ".code" y me salto avira y en los que no puse ".code" no me salto, claro, esta probado con win32ax.inc. Si se fijan el segundo code no tiene ".code". Extraño, no?
Gracias por las respuestas.
Salu2, SLUGER.