Для обновления самого себя ReplIn.exe создает uplman.cmd файл:
timeout 20
cscript //nologo sleep.js 20000
move /Y Repl\Temp\ReplIn.exe Repl\ReplIn.exe
timeout 20
cscript //nologo sleep.js 20000
ReplIn.exe Agbis /RUN
del sleep.js
del uplman.cmd
После запуска этого файла происходит таймаут 20 секунд, потом таймаут другим способом (бывает один из них на разных системах не срабатывает). Таймаут нужен для ожидания, что ReplIn.exe файл уже точно завершил работу. Потом перенос файла из Temp (именно перенос) и дальше таймаут и запуск с теми же параметрами. В конце чистка сервисных файлов обновления.
Для обновления самого себя ReplOut.exe создает uplman.cmd файл:
timeout 20
cscript //nologo sleep.js 20000
move /Y Repl\Temp\ReplOut.exe Repl\ReplOut.exe
timeout 20
cscript //nologo sleep.js 20000
ReplOut.exe Agbis /RUN
del sleep.js
del uplman.cmd
После запуска этого файла происходит аналогичный процесс, который указан для ReplIn.