"Games"
{
	"csgo"
	{
		"Signatures"
		{
			// "%sRecv usercmd %d.  Margin:%5.1fms net +%2d queue =%5.1f"
			"ProcessUsercmds"
			{
				"library"	"server"
				"windows"	"\x48\x8B\xC4\x44\x88\x48\x20\x44\x89\x40\x18\x48\x89\x50\x10\x53"
				"linux"		"\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x41\x54\x53\x48\x89\xFB\x48\x83\xEC\x48\x89\x4D"
			}
			"SetupMove"
			{
				"library"	"server"
				"windows"	"\x40\x53\x56\x48\x83\xEC\x78\x48\x89\x6C\x24\x70"
				"linux"		"\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x49\x89\xF5\x41\x54\x49\x89\xD4\x53\x48\x89\xFB\x48\x83\xEC\x48\xE8\x2A\x2A\x2A\x2A\x48\x8B\x43\x38"
			}
			"ProcessMovement"
			{
				"library"	"server"
				"windows"	"\x40\x57\x41\x57\x48\x81\xEC\xB8\x00\x00\x00"
				"linux"		"\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x49\x89\xF5\x41\x54\x53\x48\x89\xFB\x48\x83\xEC\x2A\x48\x8B\x7F"
			}
			"Duck"
			{
				"library"	"server"
				"windows"	"\x48\x8B\xC4\x55\x53\x56\x57\x41\x56\x41\x57\x48\x8D\xA8\x2A\x2A\x2A\x2A\x48\x81\xEC\x2A\x2A\x2A\x2A\x80\xB9"
				"linux"		"\x55\x48\x89\xE5\x41\x57\x41\x56\x49\x89\xFE\x41\x55\x41\x54\x53\x48\x89\xF3\x48\x81\xEC\x2A\x2A\x2A\x2A\x48\x8D\x05\x2A\x2A\x2A\x2A\xF3\x0F\x10\x05"
			}
			"LadderMove"
			{
				"library"	"server"
				"windows"	"\x40\x55\x53\x56\x57\x41\x57\x48\x8D\xAC\x24\x2A\x2A\x2A\x2A\x48\x81\xEC\x2A\x2A\x2A\x2A\x48\x8B\xF9"
				"linux"		"\x48\xB8\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x55\x66\x0F\xEF\xC0\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x4C\x8D\xAD\x2A\x2A\x2A\x2A\x41\x54\x49\x89\xF4"
			}
			"OnJumpLegacy"
			{
				"library"	"server"
				"windows"	"\x40\x55\x53\x56\x57\x48\x8D\x6C\x24\x2A\x48\x81\xEC\x2A\x2A\x2A\x2A\x48\x8B\x59"
				"linux"		"\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x49\x89\xF5\x41\x54\x53\x48\x89\xFB\x48\x83\xEC\x2A\x4C\x8B\x67\x2A\x49\x8B\x7C\x24"
			}
			"OnJumpModern"
			{
				"library"	"server"
				"windows"	"\x40\x55\x56\x57\x41\x56\x48\x8D\x6C\x24\x2A\x48\x81\xEC\x2A\x2A\x2A\x2A\x4C\x8B\x71"
				"linux"		"\x55\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x49\x89\xF5\x41\x54\x53\x48\x89\xFB\x48\x81\xEC\x2A\x2A\x2A\x2A\x4C\x8B\x77\x2A\x4D\x8B\x66"
			}
			"AirMove"
			{
				"library"	"server"
				"windows"	"\x48\x8B\xC4\x53\x55\x56\x57\x48\x81\xEC\x2A\x2A\x2A\x2A\x0F\x29\x70"
				"linux"		"\x55\x48\x8D\x15\x2A\x2A\x2A\x2A\x48\x89\xE5\x41\x57\x41\x56\x4C\x8D\xB5\x2A\x2A\x2A\x2A\x41\x55\x41\x54"
			}
			"AirAccelerate"
			{
				"library"	"server"
				"windows"	"\xF3\x0F\x11\x5C\x24\x20\x53\x56\x57\x48\x83\xEC\x60"
				"linux"		"\x55\x48\x89\xE5\x41\x55\x49\x89\xD5\x41\x54\x49\x89\xFC\x53\x48\x89\xF3\x48\x83\xEC\x18\x48\x8B\x7F\x38"
			}
			"WalkMove"
			{
				"library"	"server"
				"windows"	"\x48\x8B\xC4\x48\x89\x70\x2A\x48\x89\x78\x2A\x55\x41\x54\x41\x55\x41\x56\x41\x57\x48\x8D\xA8\x2A\x2A\x2A\x2A\x48\x81\xEC\x2A\x2A\x2A\x2A\x0F\x29\x70\x2A\x48\x8B\xF1"
				"linux"		"\x48\xB8\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x55\x66\x0F\xEF\xC0\x48\x89\xE5\x41\x57\x41\x56\x4C\x8D\xB5\x2A\x2A\x2A\x2A\x41\x55\x41\xBD"
			}
			"TryPlayerMove"
			{
				"library"	"server"
				"windows"	"\x48\x8B\xC4\x4C\x89\x48\x2A\x4C\x89\x40\x2A\x48\x89\x50\x2A\x48\x89\x48\x2A\x55\x53\x56\x57\x41\x54\x41\x55\x41\x56\x41\x57\x48\x8D\xA8\x2A\x2A\x2A\x2A\x48\x81\xEC\x2A\x2A\x2A\x2A\x0F\x29\x70"
				"linux"		"\x48\xB8\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x55\x66\x0F\xEF\xC0\x48\x89\xE5\x41\x57\x41\x56\x49\x89\xF6"
			}
			"CategorizePosition"
			{
				"library"	"server"
				"windows"	"\x40\x55\x56\x57\x41\x54\x41\x55\x48\x8D\xAC\x24\x2A\x2A\x2A\x2A\x48\x81\xEC\x2A\x2A\x2A\x2A\x48\x8B\xF9"
				"linux"		"\x48\xB8\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x55\x66\x0F\xEF\xC0\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x41\x89\xD5"
			}
			"PhysicsSimulate"
			{
				"library"	"server"
				"windows"	"\x40\x55\x53\x56\x57\x41\x55\x41\x56\x48\x8D\xAC\x24\x08\xF9\xFF\xFF"
				"linux"		"\x55\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x2A\x48\x89\xE5\x41\x57\x41\x56\x41\x55\x41\x54\x53\x48\x89\xFB\x48\x8D\x3D\x2A\x2A\x2A\x2A\x48\x81\xEC\x2A\x00\x00\x00"
			}
			"GameEventManager"
			{
				"library"	"server"
				"windows"	"\x48\x8D\x0D\x2A\x2A\x2A\x2A\x49\x8B\x04\x38"
				"linux"		"\x4C\x8D\x25\x2A\x2A\x2A\x2A\x31\xDB\x48\x83\xEC\x08"
			}
			// CSource2GameClients::StartHLTVServer: game event %s not found.
			// Function right before the first virtual function call.
			"GetLegacyGameEventListener"
			{
				"library"	"server"
				"windows"	"\x48\x8B\x15\x2A\x2A\x2A\x2A\x48\x85\xD2\x74\x2A\x85\xC9"
				"linux"		"\x48\x8B\x05\x2A\x2A\x2A\x2A\x48\x85\xC0\x74\x2A\x83\xFF\x2A\x77\x2A\x48\x63\xFF\x48\xC1\xE7\x2A\x48\x8D\x44\x38"
			}
		}
		"Offsets"
		{
			"GameEntitySystem"
			{
				"windows"	"88"
				"linux"		"80"
			}
			"Teleport"
			{
				"windows"	"163"
				"linux"		"162"
			}
			"IsEntityPawn"
			{
				"windows"	"169"
				"linux"		"168"
			}
			"IsEntityController"
			{
				"windows"	"170"
				"linux"		"169"
			}
			"ClientOffset"
			{
				"windows"	"584"
				"linux"		"584"
			}
			"ProcessRespondCvarValue"
			{
				"windows"	"38"
				"linux"		"40"
			}
			"ClientSlotOffset"
			{
				"windows"	"72"
				"linux"		"72"
			}
		}
	}
}
