Можно ли &quot;пересобрать&quot; исполняемый файл под другую архитектуру?
возможно. эта утилита — виртуальная машина. соответственно, достаточно собрать на другой архитектуре эмулятор данного процессора (например) bochs. правда, никто не обещает высокую производительность.
Теоретически можно, но очень сложно.
У процессоров разные архитектуры (наборы команд, количество регистров).
У операционных систем разные системные вызовы (т.е. что надо сделать чтобы вывести символ на консоль, например).

Теоретически можно попытаться декомпилировать программу в язык (относительно) высокого уровня, а потом скомпилировать опять. Например Яву — декомпилируют. Произвольную программу — очень сложно