upstream commit 91632c8ac97fa3daffe4ff8f1391735b5d6805e6
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
upstream commit 1931d3cb20a00da732c5210b123656632982fde0
also start prefering NtDll API. so far: * NtQueryInformationFile * NtClose adds a performance workaround for windows unicode conversion. but that should probably be removed before merging