Skip to content

Instantly share code, notes, and snippets.

@valinet
Last active May 25, 2026 15:39
Show Gist options
  • Select an option

  • Save valinet/bd7534af1e03472ef567c6d6f1a210d2 to your computer and use it in GitHub Desktop.

Select an option

Save valinet/bd7534af1e03472ef567c6d6f1a210d2 to your computer and use it in GitHub Desktop.
Task Manager Image File Execution Options Launcher
// cl /nologo uaskmgr.c advapi32.lib kernel32.lib user32.lib /O1 /GS- /Gs9999999 /GF /kernel /link /ENTRY:main /NODEFAULTLIB /SUBSYSTEM:windows /NOCOFFGRPINFO /ALIGN:16 /MERGE:.rdata=.text /MERGE:.pdata=.text /OUT:uaskmgr.exe
#include <Windows.h>
int main() {
char map = 0;
PROCESS_INFORMATION pi;
STARTUPINFOW si;
for (int i = 0; i < sizeof(si); i = i + 2)
((char*)(&si))[i] = 0;
for (int i = 1; i < sizeof(si); i = i + 2)
((char*)(&si))[i] = 0;
si.cb = sizeof(si);
BOOL fIsElevated = FALSE;
HANDLE hToken = NULL;
TOKEN_ELEVATION elevation;
elevation.TokenIsElevated = 0;
DWORD dwSize = 0;
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &hToken))
return FALSE;
if (GetTokenInformation(hToken, TokenElevation, &elevation,
sizeof(elevation), &dwSize))
fIsElevated = elevation.TokenIsElevated;
if (hToken)
CloseHandle(hToken);
wchar_t cmd[MAX_PATH];
if (!fIsElevated) {
DWORD len = GetSystemDirectoryW(cmd, MAX_PATH - 13);
cmd[len + 0] = L'\\'; cmd[len + 1] = L't'; cmd[len + 2] = L'a';
cmd[len + 3] = L's'; cmd[len + 4] = L'k'; cmd[len + 5] = L'm';
cmd[len + 6] = L'g'; cmd[len + 7] = L'r'; cmd[len + 8] = L'.';
cmd[len + 9] = L'e'; cmd[len + 10] = L'x'; cmd[len + 11] = L'e';
cmd[len + 12] = L'\0';
} else {
DWORD len = GetModuleFileNameW(GetModuleHandleW(NULL), cmd, MAX_PATH);
if (len >= 11)
cmd[len - 11] = L't';
}
if (!CreateProcessW(NULL, cmd, NULL, NULL, FALSE,
DEBUG_ONLY_THIS_PROCESS,
NULL, NULL, &si, &pi))
ExitProcess(GetLastError());
DebugActiveProcessStop(pi.dwProcessId);
CloseHandle(pi.hThread);
CloseHandle(pi.hProcess);
ExitProcess(0);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment