Use o script em lote ou o script vb para armazenar a saída de wmic os get osarchitecture e você obtém um valor de cadeia dizendo 32 bits ou 64 bits. Então você pode usar o típico condicional if-then-else para iniciar o binário apropriado. Problema resolvido.
Método alternativo:
A variável de ambiente %PROCESSOR_ARCHITECTURE% armazena essas informações, para entender os possíveis valores retornados, consulte este post de blog
link
P.S. não dependa de acessar a unidade do SO (lembre-se, nem sempre é C: ) procurando Program Files (x86) ou outros hacks como esse, você pode ter problemas de permissão e não é a maneira padrão de fazer isso.