Hola Novatin.
Otra opción es verificar sobre que OS esta corriendo la aplicación y de acuerdo a eso ejecutar una u otra función. En este hilo vas a poder encontrar algo al respecto:
Cómo saber qué tipo de SO es.
Sobre el código assembler, sin ser gran entendido en el tema veo que está llamando a la función
INT 21H, que es una función multipropósito del DOS y no vas a poder usarla en aplicaciones de 32 bits.
Saludos.