Существует способ получения сборки смешанного режима из чистого IL.Заключительная часть создания сборки с использованием отражения включает вызов AssemblyBuilder.Save .Если вы просто передадите PortableExecutableKinds.Required32Bit в качестве аргумента portableExecutableKind, то создадите сборку в смешанном режиме.Вы можете избежать проблем, которые это вызывает, также передав PortableExecutableKinds.ILOnly.то есть
assembly_bldr.Save(exe_name, PortableExecutableKinds.Required32Bit | PortableExecutableKinds.ILOnly, ImageFileMachine.I386 );
Излишне говорить, что эта информация была трудно завоевана ...