luac.exe offers a "-o -" option to dump bytecode to stdout.
Unfortunately, Windows considers stdout as an ASCII output, and therefore translates all occurrences of "0x0a" into "0x0d, 0x0a", thus corrupting the produced bytecode.
This can be checked by performing a binary diff between 1.luac and 2.luac, produced by "luac -o 1.luac whatever.lua" and "luac -o - whatever.lua > 2.luac".