Pues lo comparas igual que si fuese un número pero con la cadena, piensa que comparas bytes, solo eso, como ya puse lo q hace cmp en realidad es esto:
CMP Valor1, Valor2
CMP compara dos valores. En realidad lo que hace esta instrucción es restar el Valor2 del Valor1 y activar el Flag correspondiente a el resultado. Por ejemplo si son iguales, si uno es mayor que el otro… (un Flag es como un registro pero que solo almacena 1 bit).
Usaremos esta instrucción para los saltos condicionales que se explicarán a continuación.
Seria asi:
mov eax, 'SI'
cmp eax, 'SI'
jne NO
invoke MessageBox, 0, 'Es si', '', 0
NO:
invoke ExitProcess
Claro, que en eax tendrías que obtener el valor pidiendosolo al usuario, ya sea creando un formulario, una aplicación de consola o como tu quieras
Salu3