The 'real' file (last time I looked at it) is just what's already there but you may have overwritten.
A simple batch file can REN the original .dll to .orig.dll, then make the (as I'd rename it) .hack.dll into the plain .dll file, and another reverse it.
If you want to do that, and be 'safe' (save you the trouble of redownloading/extracting files if/when things go wrong) I'd have a permanent .orig.dll and .hack.dll, personally, and for each switch:
IF NOT EXIST sdl.dll THEN GOTO ERROR1
IF NOT EXIST sdl.OLD.dll THEN GOTO ERROR2
IF NOT EXIST sdl.NEW.dll THEN GOTO ERROR3
DEL sdl.dll
IF EXIST sdl.dll THEN GOTO ERROR4
COPY sdl.NEW.dll sdl.dll
IF NOT EXIST sdl.dll THEN GOTO ERROR5
GOTO :END
:ERRORx ...
Here I've used OLD and NEW for original/hack versions, whichever way the batch is supposed to convert to. If you're on 'NEW' already, effectively, it neither knows nor cares what you currently use[1] becsuse it's only (effectively) overwriting accordingly.
What you do with the errors is up to you, here they're prepared to tell you (seperately) what is wrong, i.e.
1) You don't seem to have a working SDL, which is recoverable if you have everything else where it should be, but nice to know,
2) You don't have a copy of the (presumed) working SDL, and you don't want to switch without the ability to switch back, do you?
3) Though if you don't have something to switch to, it's a bigger problem,
4) If we tried to delete (or, in other versions, rename) and it's still here then maybe you've not got permissions and/or the file is locked in use...
5) The copying of the new working copy failed, and you need to know why.
...but you could just have any/all hard-fail to the END without remark or to an "OOPS" output without any clue if you wanted. For use outside the command-line (clicking on batch in explorer/etc) do put a PAUSE after at least the error messages (even if success just flashes up and off in a blink of perfect execution). And accidental double-double-click8ng is probably where some of those error-checks come into their own.
That's overkill, without some finesse it could have, and is a wrapper over and above the standard DFHack 'installation' instructions that worked perfectly well last time I followed them, but I like the extra level of flexibility and safeguarding so the method is still stuck in my head...
[1] But if you rewrite as a "whichever it is, toggle to other" single .BAT rather than a pair of DO/UNDO batch files then you can make it rename vanilla to OUT, rename an OFF version to the vanilla then ren the OUT to OFF to be ready for the detoggle to be called.