When you add a .asm file to a VS project then it asks you if you want to use the default rule to run ML. This has the advantage of giving you a properties page for controlling ml.exe.However it has the disadvantage of creating rules that don't support 64-bit compilation. The 32-bit version of ML.exe is invoked in all configurations, generating 32-bit code. There is no option in the properties page to invoke the 64-bit compiler.Worse yet, once you've used this rule once in a project it is automatically invoked in the future. If you remove the .asm file and then add it back in it is automatically added with the masm.rules property page. At that point the only option you have for adding the .asm file and getting it work in a 64-bit build is to hand-edit the .vcproj file.
Version