Te recomendamos que revises esta respuesta en un ambiente controlado antes de enviarlo a producción, saludos.
Solución:
Hacer una llamada Win32 para crear una ventana no está realmente relacionado con una interrupción. La aplicación cliente ya está vinculada con el .dll que proporciona la llamada que expone la dirección para que la utilice el vinculador. Dado que está preguntando sobre la diferencia en el mecanismo de llamada, estoy limitando la discusión aquí a aquellas llamadas Win32 que están disponibles para cualquier aplicación en lugar de llamadas a nivel de kernel o controladores de dispositivos. A nivel de lenguaje ensamblador, sería lo mismo que cualquier otra llamada de función, ya que la mayoría de las llamadas de Win32 son llamadas a nivel de usuario que internamente realizan las llamadas al núcleo necesarias. El enlazador proporciona la dirección de la función Win32 como destino para algún tipo de instrucción de bifurcación, los detalles dependerán del compilador.
[Edit]
Parece que tienes razón sobre las interrupciones y el int. tabla de vectores CodeGuru tiene un buen artículo con los detalles del sistema operativo sobre cómo funcionan las llamadas al kernel de NT. Enlace:
http://www.codeguru.com/cpp/wp/system/devicedriverdevelopment/article.php/c8035