У Вас какой-то запутанный код. Попытался упростить. Не очень отладил, нет Ваших утилит.
Код:

@Echo Off
cls
Title Создание RAM-диска
Set "Default=X:\windows\temp"
:Start
IF /I Not "%temp%"=="%Default%" Call :UnmountRamDiskPromt ||Exit /B
:GetInfo
Set /A RD1=2621440
Set /A RD2=2097152
Set RD3=1572864
For /f "skip=1" %%p in ('wmic os get freephysicalmemory') Do Set /A m=%%p &GoTo :RamDiskOpt
:RamDiskOpt
Echo Свободной памяти RAM: "%m%" Килобайт
Echo.
Echo Текущее расположение TEMP: %temp%
Echo Текущее расположение TMP: %tmp%
Echo.
If %m% LSS %RD3% (
:MemoryLow
nircmd infobox "Не рекомендуется создавать RAM-диск при объеме свободной памяти менее 1.5 ГБ. Операция будет прервана." "Ошибка"
Exit /B 1
)
Set /A rdsize=512
If %m% GEQ %RD2% Set /A rdsize=768
If %m% GEQ %RD1% Set /A rdsize=1024
Echo Свободно=%m%Kb RAM-диск=%rdsize%
:getFreeDisk
Set "Disks="
For /f "usebackq skip=1 tokens=1,2 Delims=:" %%A IN (`"wmic logicaldisk get caption,name"`) DO If Not "%%B"=="" Call Set "Disks=%%Disks%%%%A"
For %%A IN (B K L M N O P Q R S T U V W) DO (
Echo %Disks%|Find /I "%%A" >nul 2>&1 ||(Set "disk=%%A:" &GoTo :FreeDisk)
)
:FreeDisk
Echo Буква диска=%disk%
:MountRamDisk
imdisk -a -t vm -s %rdsize%M -m %disk% -p "/fs:ntfs /q /y /v:RAM-Disk">nul
md %disk%\Temp>nul
Setx Temp %disk%\Temp>nul
Setx Tmp %disk%\Temp>nul
If Exist "%disk%\Temp\" nircmd infobox "Папка TEMP успешно перемещена на диск %disk%." "Готово"&&restartshell
If Not Exist "%disk%\Temp\" (
nircmd infobox "Не удалось создать RAM-диск или внести изменения в реестр. Будет выбрана папка по умолчанию (%Default%)"
Setx temp "%Default%"
Setx tmp "%Default%
restartshell >nul
)
Pause
GoTo :Eof
:UnmountRamDiskPromt
Title Отключение RAM-диска
Echo.
Echo Папка TEMP уже перемещена на RAM-диск. Отключить все RAM-диски и установить папку TEMP по умолчанию ?
Echo.
Echo ВВедите:
CHOICE /C YN /M "Y-для продолжения, или N-для выхода"
If %ErrorLevel%==2 Exit /B 0
Set tmpdir=%temp%
Set tmpdisk=%tmpdir:~0,2%
imdisk -d -m %tmpdisk%>nul
Setx temp %Default% >nul
Setx tmp %Default%>nul
restartshell
nircmd infobox "Все RAM-диски были отключены. Установлена папка TEMP по умолчанию." "Готово"
Exit /B 2