Si es un ejecutable que cualquiera como el notepad... normalmente hay una aplicacion que se llama machine debug manager que corre en el segundo plano, ésta aplicacion "agarra" una aplicacion que haya causado un problema o una operacion no valida y la desensambla en la linea de codigo que causó el problema.... con el visual c++.
En todo caso para depurar una aplicacion debe estar compilada con informacion para depurarla "Configuracion Debug" o con la opcion "Agregarle informacion para depurar" (Debug Information)