Created
February 21, 2024 01:15
-
-
Save TotallyNotAHaxxer/2765fb84f9acc070117aa01b196417c5 to your computer and use it in GitHub Desktop.
KeySpammer - Virtual Key Code Utility
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <Windows.h> | |
| #include <iostream> | |
| #include <unordered_map> | |
| #include <string> | |
| std::unordered_map<std::string, std::string> VKEY_Map = { | |
| {"VK_LBUTTON", "0x01"}, | |
| {"VK_TAB", "0x09"}, | |
| {"VK_RBUTTON", "0x02"}, | |
| {"VK_CANCEL", "0x03"}, | |
| {"VK_MBUTTON", "0x04"}, | |
| {"VK_XBUTTON1", "0x05"}, | |
| {"VK_XBUTTON2", "0x06"}, | |
| {"VK_BACK", "0x08"}, | |
| {"VK_CLEAR", "0x0C"}, | |
| {"VK_RETURN", "0x0D"}, | |
| {"VK_SHIFT", "0x10"}, | |
| {"VK_CONTROL", "0x11"}, | |
| {"VK_MENU", "0x12"}, | |
| {"VK_PAUSE", "0x13"}, | |
| {"VK_CAPITAL", "0x14"}, | |
| {"VK_KANA", "0x15"}, | |
| {"VK_HANGUL", "0x15"}, | |
| {"VK_IME_ON", "0x16"}, | |
| {"VK_JUNJA", "0x17"}, | |
| {"VK_FINAL", "0x18"}, | |
| {"VK_HANJA", "0x19"}, | |
| {"VK_KANJI", "0x19"}, | |
| {"VK_IME_OFF", "0x1A"}, | |
| {"VK_ESCAPE", "0x1B"}, | |
| {"VK_CONVERT", "0x1C"}, | |
| {"VK_NONCONVERT", "0x1D"}, | |
| {"VK_ACCEPT", "0x1E"}, | |
| {"VK_MODECHANGE", "0x1F"}, | |
| {"VK_SPACE", "0x20"}, | |
| {"VK_PRIOR", "0x21"}, | |
| {"VK_NEXT", "0x22"}, | |
| {"VK_END", "0x23"}, | |
| {"VK_HOME", "0x24"}, | |
| {"VK_LEFT", "0x25"}, | |
| {"VK_UP", "0x26"}, | |
| {"VK_RIGHT", "0x27"}, | |
| {"VK_DOWN", "0x28"}, | |
| {"VK_SELECT", "0x29"}, | |
| {"VK_PRINT", "0x2A"}, | |
| {"VK_EXECUTE", "0x2B"}, | |
| {"VK_SNAPSHOT", "0x2C"}, | |
| {"VK_INSERT", "0x2D"}, | |
| {"VK_DELETE", "0x2E"}, | |
| {"VK_HELP", "0x2F"}, | |
| {"0 key", "0x30"}, | |
| {"1 key", "0x31"}, | |
| {"2 key", "0x32"}, | |
| {"3 key", "0x33"}, | |
| {"4 key", "0x34"}, | |
| {"5 key", "0x35"}, | |
| {"6 key", "0x36"}, | |
| {"7 key", "0x37"}, | |
| {"8 key", "0x38"}, | |
| {"9 key", "0x39"}, | |
| {"A key", "0x41"}, | |
| {"B key", "0x42"}, | |
| {"C key", "0x43"}, | |
| {"D key", "0x44"}, | |
| {"E key", "0x45"}, | |
| {"F key", "0x46"}, | |
| {"G key", "0x47"}, | |
| {"H key", "0x48"}, | |
| {"I key", "0x49"}, | |
| {"J key", "0x4A"}, | |
| {"K key", "0x4B"}, | |
| {"L key", "0x4C"}, | |
| {"M key", "0x4D"}, | |
| {"N key", "0x4E"}, | |
| {"O key", "0x4F"}, | |
| {"P key", "0x50"}, | |
| {"Q key", "0x51"}, | |
| {"R key", "0x52"}, | |
| {"S key", "0x53"}, | |
| {"T key", "0x54"}, | |
| {"U key", "0x55"}, | |
| {"V key", "0x56"}, | |
| {"W key", "0x57"}, | |
| {"X key", "0x58"}, | |
| {"Y key", "0x59"}, | |
| {"Z key", "0x5A"}, | |
| {"VK_LWIN", "0x5B"}, | |
| {"VK_RWIN", "0x5C"}, | |
| {"VK_APPS", "0x5D"}, | |
| {"VK_SLEEP", "0x5F"}, | |
| {"VK_NUMPAD0", "0x60"}, | |
| {"VK_NUMPAD1", "0x61"}, | |
| {"VK_NUMPAD2", "0x62"}, | |
| {"VK_NUMPAD3", "0x63"}, | |
| {"VK_NUMPAD4", "0x64"}, | |
| {"VK_NUMPAD5", "0x65"}, | |
| {"VK_NUMPAD6", "0x66"}, | |
| {"VK_NUMPAD7", "0x67"}, | |
| {"VK_NUMPAD8", "0x68"}, | |
| {"VK_NUMPAD9", "0x69"}, | |
| {"VK_MULTIPLY", "0x6A"}, | |
| {"VK_ADD", "0x6B"}, | |
| {"VK_SEPARATOR", "0x6C"}, | |
| {"VK_SUBTRACT", "0x6D"}, | |
| {"VK_DECIMAL", "0x6E"}, | |
| {"VK_DIVIDE", "0x6F"}, | |
| {"VK_F1", "0x70"}, | |
| {"VK_F2", "0x71"}, | |
| {"VK_F3", "0x72"}, | |
| {"VK_F4", "0x73"}, | |
| {"VK_F5", "0x74"}, | |
| {"VK_F6", "0x75"}, | |
| {"VK_F7", "0x76"}, | |
| {"VK_F8", "0x77"}, | |
| {"VK_F9", "0x78"}, | |
| {"VK_F10", "0x79"}, | |
| {"VK_F11", "0x7A"}, | |
| {"VK_F12", "0x7B"}, | |
| {"VK_F13", "0x7C"}, | |
| {"VK_F14", "0x7D"}, | |
| {"VK_F15", "0x7E"}, | |
| {"VK_F16", "0x7F"}, | |
| {"VK_F17", "0x80"}, | |
| {"VK_F18", "0x81"}, | |
| {"VK_F19", "0x82"}, | |
| {"VK_F20", "0x83"}, | |
| {"VK_F21", "0x84"}, | |
| {"VK_F22", "0x85"}, | |
| {"VK_F23", "0x86"}, | |
| {"VK_F24", "0x87"}, | |
| {"VK_NUMLOCK", "0x90"}, | |
| {"VK_SCROLL", "0x91"}, | |
| {"VK_LSHIFT", "0xA0"}, | |
| {"VK_RSHIFT", "0xA1"}, | |
| {"VK_LCONTROL", "0xA2"}, | |
| {"VK_RCONTROL", "0xA3"}, | |
| {"VK_LMENU", "0xA4"}, | |
| {"VK_RMENU", "0xA5"}, | |
| {"VK_BROWSER_BACK", "0xA6"}, | |
| {"VK_BROWSER_FORWARD", "0xA7"}, | |
| {"VK_BROWSER_REFRESH", "0xA8"}, | |
| {"VK_BROWSER_STOP", "0xA9"}, | |
| {"VK_BROWSER_SEARCH", "0xAA"}, | |
| {"VK_BROWSER_FAVORITES", "0xAB"}, | |
| {"VK_BROWSER_HOME", "0xAC"}, | |
| {"VK_VOLUME_MUTE", "0xAD"}, | |
| {"VK_VOLUME_DOWN", "0xAE"}, | |
| {"VK_VOLUME_UP", "0xAF"}, | |
| {"VK_MEDIA_NEXT_TRACK", "0xB0"}, | |
| {"VK_MEDIA_PREV_TRACK", "0xB1"}, | |
| {"VK_MEDIA_STOP", "0xB2"}, | |
| {"VK_MEDIA_PLAY_PAUSE", "0xB3"}, | |
| {"VK_LAUNCH_MAIL", "0xB4"}, | |
| {"VK_LAUNCH_MEDIA_SELECT", "0xB5"}, | |
| {"VK_LAUNCH_APP1", "0xB6"}, | |
| {"VK_LAUNCH_APP2", "0xB7"}, | |
| {"VK_OEM_1", "0xBA"}, | |
| {"VK_OEM_PLUS", "0xBB"}, | |
| {"VK_OEM_COMMA", "0xBC"}, | |
| {"VK_OEM_MINUS", "0xBD"}, | |
| {"VK_OEM_PERIOD", "0xBE"}, | |
| {"VK_OEM_2", "0xBF"}, | |
| {"VK_OEM_3", "0xC0"}, | |
| {"VK_OEM_4", "0xDB"}, | |
| {"VK_OEM_5", "0xDC"}, | |
| {"VK_OEM_6", "0xDD"}, | |
| {"VK_OEM_7", "0xDE"}, | |
| {"VK_OEM_8", "0xDF"}, | |
| {"VK_OEM_102", "0xE2"}, | |
| {"VK_PROCESSKEY", "0xE5"}, | |
| {"VK_PACKET", "0xE7"}, | |
| {"VK_ATTN", "0xF6"}, | |
| {"VK_CRSEL", "0xF7"}, | |
| {"VK_EXSEL", "0xF8"}, | |
| {"VK_EREOF", "0xF9"}, | |
| {"VK_PLAY", "0xFA"}, | |
| {"VK_ZOOM", "0xFB"}, | |
| {"VK_NONAME", "0xFC"}, | |
| {"VK_PA1", "0xFD"}, | |
| {"VK_OEM_CLEAR", "0xFE"} | |
| }; | |
| int main() { | |
| for (const auto& pair : VKEY_Map) { | |
| keybd_event(std::stoi(pair.second, nullptr, 16), 0, 0, 0); | |
| if (GetAsyncKeyState(std::stoi(pair.second, nullptr, 16))) { | |
| std::cout << "[State-Key (" << pair.first << ")] ACTIVE\n"; | |
| } | |
| Sleep(5000); | |
| keybd_event(std::stoi(pair.second, nullptr, 16), 0, std::stoi(pair.second, nullptr, 16), 0); | |
| std::cout << "[State-Key (" << pair.first << ")] RELEASED\n"; | |
| std::cout << "----------------------------------------------"; | |
| } | |
| std::cout << "[!] List finished\n\n"; | |
| return 0; | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment