Ответ 1
Набор функций Nt*
недокументирован по уважительной причине: он встроен в Windows и изменяется между версиями, а это означает, что программы, нацеленные на него напрямую, подвергаются высокому риску разрыва между версиями Windows.
На самом деле, это не такая уж большая нагрузка на нацеливание на общедоступные, документированные функции, и вы получаете гарантию Microsoft, что ваша программа будет работать с будущими версиями Windows, если вы правильно используете API.
По этой причине я не буду давать вам ответ, который вы хотите. Я настоятельно рекомендую вам использовать API публичной консоли: http://msdn.microsoft.com/en-us/library/windows/desktop/ms682073%28v=vs.85%29.aspx
Обновить
Я предполагаю, что это для экспериментов или для удовольствия, действительно ОП написал:
Однако иногда я хочу использовать низкоуровневые системные вызовы - в основном, чтобы мои исполняемые файлы были как можно меньше.
... Я нахожу эту линию рассуждений проблематичной, и я не хочу выступать в качестве активатора для такого рода методов разработки, тем более что нет практического преимущества использования системных вызовов для консольных задач.
Если кто-то хочет знать, как использовать низкоуровневые системные вызовы в Windows, тогда, пожалуйста, опубликуйте новый вопрос в соответствующей рамке, и я с удовольствием на него отвечу.
Но в качестве отправной точки см. Https://j00ru.vexillium.org/syscalls/nt/64/ для обратной таблицы таблиц системных вызовов x64 NT с разбивкой по версии ядра Windows. (Не используйте в переносимом коде, только для экспериментов, чтобы удовлетворить ваше любопытство о том, как работает Windows и/или ASM.)