MASM \ C++ x86 to x64 help

closed account (G309216C)
Hi,

Sorry, for a short burst of question recently. I have been doing my project very much and I am having problems which are hard for me so I am asking here.

So basically I am trying to jump code segments to change my Application during run-time into x64 so that injection into x64 processes would be possible. That way once I can do an code segment change I can quickly perform a JMP [function name] and inject the function and point the JMP toward the function which would be PIC on the remote process. The thing is MASM is not allowing x64 & x86 code to be wrote into the exe. Whereas FASM allows this to happen. With default Setting that is.

Does anyone know how I can change the settings of MASM to do this.

Please do not suggest changing my IDE to a GCC as there is 0 percent chance I will do that as no IDE can give me what I want except from VS. I need my comfort features here.

Already my Project is exceeding 100,000 lines so porting that whole project which contains dozens upon dozens source files is going to be very hard and then getting used to the actual IDE will take more time so I really do not want my Project to be hindered due to configuration issues.

I do not need any code whatsoever but just steps to configure MASM into my Configuration.

Thanks,

P.S

Please feel free to PM me regarding this question as I been trying for over a week on getting to fix.

Any help would be appreciated
Last edited on
closed account (G309216C)
Any one know this. Come on guys. I know one of you know this.
I hope you know that Visual Studio does not allow inline assembly for X64 targets, so you famous _asm {nop;} will not work.
http://msdn.microsoft.com/en-us/library/wbk4z78b(v=vs.100).aspx


The thing is MASM is not allowing x64 & x86 code to be wrote into the exe


Why the hell is this ? Are you kidding or what ? An exe is either X86 or X64, not both.
closed account (G309216C)
Just look at FASM it allows both bro. Trust me. I can put money on right now telling you this.
closed account (G309216C)
To tell you more about this project to give you a understanding on why I need these setting because I am developing a RING-3 Anti-Virus which is x86 bit Architecture as it is a AV it injects into all processes on x86 bit processes all processes are compatible and cause no errors and work flawlessly but when the AV is ported to a x64 bit computer the AV cannot inject into all processes thus making the AV scanning and Protection inefficient and in some case insufficient.

Then I found out about Heavens Gate which allows a x86 bit process to run virtually as a x64 bit process so it can allow injection into all processes.

I develop in Visual Studio 2012 Ultimate and use MASM for inline Assembly but as far as I know MASM does not allow both code execution but FASM does but I do not know how I can use FASM for Assembly and Normal Programming as Visual Compiler.

Or How I can tell MASM to do that.

Thanks
Topic archived. No new replies allowed.