linux 64 signatures and offsets

This commit is contained in:
ambaca 2025-03-01 23:21:18 +02:00 committed by GitHub
parent dbf1fc0c7f
commit 4e3ab8f013
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -24,12 +24,13 @@
"linux64" "10" "linux64" "10"
} }
// Find "BlackMarketTable" select the dword -> follow it the only other subroutine -> CCSGameRules::SetBlackMarketPrices is called before return // Find "BlackMarketTable" select the dword -> follow it the only other subroutine -> CCSGameRules::SetBlackMarketPrices is called before return
// CCSGameRules::SetBlackMarketPrices sets weapon price & default price // CCSGameRules::SetBlackMarketPrices sets weapon price & default price. [New way, look offset from _ZNK13CCSWeaponInfo14GetWeaponPriceEv, under _ZN9CCSPlayer26HandleCommand_Buy_InternalEPKc]
"WeaponPrice" "WeaponPrice"
{ {
"windows" "2308" "windows" "2308"
"windows64" "2308" "windows64" "2356"
"linux" "2308" "linux" "2308"
"linux64" "2352"
} }
//Offset into SetClanTag to find clan tag's offset from player //Offset into SetClanTag to find clan tag's offset from player
"ClanTagOffset" "ClanTagOffset"
@ -37,6 +38,7 @@
"windows" "24" "windows" "24"
"windows64" "29" "windows64" "29"
"linux" "23" "linux" "23"
"linux64" "8"
} }
//Offset into CheckWinLimit to find CT team score offset from gamerules. For windows this is an offset into CCSGameRules::Think //Offset into CheckWinLimit to find CT team score offset from gamerules. For windows this is an offset into CCSGameRules::Think
"CTTeamScoreOffset" "CTTeamScoreOffset"
@ -44,6 +46,7 @@
"windows" "274" "windows" "274"
"windows64" "309" "windows64" "309"
"linux" "27" "linux" "27"
"linux64" "37"
} }
//Offset into CheckWinLimit to find T team score offset from gamerules. For windows this is an offset into CCSGameRules::Think //Offset into CheckWinLimit to find T team score offset from gamerules. For windows this is an offset into CCSGameRules::Think
"TTeamScoreOffset" "TTeamScoreOffset"
@ -51,6 +54,7 @@
"windows" "395" "windows" "395"
"windows64" "454" "windows64" "454"
"linux" "38" "linux" "38"
"linux64" "57"
} }
} }
"Signatures" "Signatures"
@ -63,6 +67,7 @@
"windows" "\x55\x8B\xEC\x51\x89\x4D\xFC\x8B\x45\xFC\x8B\x10" "windows" "\x55\x8B\xEC\x51\x89\x4D\xFC\x8B\x45\xFC\x8B\x10"
"windows64" "\x48\x89\x4C\x24\x08\x48\x83\xEC\x28\x48\x8B\x44\x24\x30\x48\x8B\x00\x48\x8B\x4C\x24\x30" "windows64" "\x48\x89\x4C\x24\x08\x48\x83\xEC\x28\x48\x8B\x44\x24\x30\x48\x8B\x00\x48\x8B\x4C\x24\x30"
"linux" "@_ZN9CCSPlayer12RoundRespawnEv" "linux" "@_ZN9CCSPlayer12RoundRespawnEv"
"linux64" "@_ZN9CCSPlayer12RoundRespawnEv"
} }
// String: "CCSPlayer::SwitchTeam( %d ) - invalid team index." // String: "CCSPlayer::SwitchTeam( %d ) - invalid team index."
"SwitchTeam" "SwitchTeam"
@ -71,6 +76,7 @@
"windows" "\x55\x8B\xEC\x83\xEC\x5C\x89\x4D\xFC" "windows" "\x55\x8B\xEC\x83\xEC\x5C\x89\x4D\xFC"
"windows64" "\x89\x54\x24\x10\x48\x89\x4C\x24\x08\x48\x81\xEC\xB8\x00\x00\x00" "windows64" "\x89\x54\x24\x10\x48\x89\x4C\x24\x08\x48\x81\xEC\xB8\x00\x00\x00"
"linux" "@_ZN9CCSPlayer10SwitchTeamEi" "linux" "@_ZN9CCSPlayer10SwitchTeamEi"
"linux64" "@_ZN9CCSPlayer10SwitchTeamEi"
} }
// String: "#Alias_Not_Avail" // String: "#Alias_Not_Avail"
"HandleCommand_Buy_Internal" "HandleCommand_Buy_Internal"
@ -79,6 +85,7 @@
"windows" "\x55\x8B\xEC\x83\xEC\x28\x89\x4D\xF8\x6A\x00" "windows" "\x55\x8B\xEC\x83\xEC\x28\x89\x4D\xF8\x6A\x00"
"windows64" "\x48\x89\x54\x24\x10\x48\x89\x4C\x24\x08\x48\x81\xEC\x88\x00\x00\x00" "windows64" "\x48\x89\x54\x24\x10\x48\x89\x4C\x24\x08\x48\x81\xEC\x88\x00\x00\x00"
"linux" "@_ZN9CCSPlayer26HandleCommand_Buy_InternalEPKc" "linux" "@_ZN9CCSPlayer26HandleCommand_Buy_InternalEPKc"
"linux64" "@_ZN9CCSPlayer26HandleCommand_Buy_InternalEPKc"
} }
// After having located "HandleCommand_Buy_Internal" // After having located "HandleCommand_Buy_Internal"
// Jump back to the string "#Alias_Not_Avail" there should be two conditional jumps before // Jump back to the string "#Alias_Not_Avail" there should be two conditional jumps before
@ -90,6 +97,7 @@
"windows" "\x8B\x81\x04\x09\x00\x00" "windows" "\x8B\x81\x04\x09\x00\x00"
"windows64" "\x8B\x81\x34\x09\x00\x00" "windows64" "\x8B\x81\x34\x09\x00\x00"
"linux" "@_ZNK13CCSWeaponInfo14GetWeaponPriceEv" "linux" "@_ZNK13CCSWeaponInfo14GetWeaponPriceEv"
"linux64" "@_ZNK13CCSWeaponInfo14GetWeaponPriceEv"
} }
// String: "ValveBiped.Bip01_R_Hand" // String: "ValveBiped.Bip01_R_Hand"
"CSWeaponDrop"//Wildcard first 6 bytes for CS:S DM "CSWeaponDrop"//Wildcard first 6 bytes for CS:S DM
@ -98,6 +106,7 @@
"windows" "\x55\x8B\xEC\x81\xEC\x80\x01\x00\x00\x89\x4D\xFC" "windows" "\x55\x8B\xEC\x81\xEC\x80\x01\x00\x00\x89\x4D\xFC"
"windows64" "\x44\x88\x4C\x24\x20\x44\x88\x44\x24\x18\x48\x89\x54\x24\x10\x48\x89\x4C\x24\x08\x56" "windows64" "\x44\x88\x4C\x24\x20\x44\x88\x44\x24\x18\x48\x89\x54\x24\x10\x48\x89\x4C\x24\x08\x56"
"linux" "@_ZN9CCSPlayer12CSWeaponDropEP17CBaseCombatWeaponbb" "linux" "@_ZN9CCSPlayer12CSWeaponDropEP17CBaseCombatWeaponbb"
"linux64" "@_ZN9CCSPlayer12CSWeaponDropEP17CBaseCombatWeaponbb"
} }
// String: "CTsWin" // String: "CTsWin"
"TerminateRound" "TerminateRound"
@ -106,6 +115,7 @@
"windows" "\x55\x8B\xEC\x83\xEC\x28\x8B\x45\x0C" "windows" "\x55\x8B\xEC\x83\xEC\x28\x8B\x45\x0C"
"windows64" "\x48\x8B\xC4\x55\x53\x48\x8D\x68\xA1" "windows64" "\x48\x8B\xC4\x55\x53\x48\x8D\x68\xA1"
"linux" "@_ZN12CCSGameRules14TerminateRoundEfi" "linux" "@_ZN12CCSGameRules14TerminateRoundEfi"
"linux64" "@_ZN12CCSGameRules14TerminateRoundEfi"
} }
// String: "d3au1" follow the xref to the array // String: "d3au1" follow the xref to the array
// Follow the xref of that array, its only used in GetTranslatedWeaponAlias // Follow the xref of that array, its only used in GetTranslatedWeaponAlias
@ -116,6 +126,7 @@
"windows" "\x55\x8B\xEC\x56\x57\x8B\x7D\x08\x33\xF6\x8D\x9B\x00\x00\x00\x00\x57\xFF\x34\xF5\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x08\x85\xC0\x74\x2A\x46\x83\xFE\x1A" "windows" "\x55\x8B\xEC\x56\x57\x8B\x7D\x08\x33\xF6\x8D\x9B\x00\x00\x00\x00\x57\xFF\x34\xF5\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x08\x85\xC0\x74\x2A\x46\x83\xFE\x1A"
"windows64" "\x48\x89\x5C\x24\x08\x48\x89\x6C\x24\x10\x48\x89\x74\x24\x18\x57\x48\x83\xEC\x20\x48\x8D\x2D\x45\xDC\x21\x00" "windows64" "\x48\x89\x5C\x24\x08\x48\x89\x6C\x24\x10\x48\x89\x74\x24\x18\x57\x48\x83\xEC\x20\x48\x8D\x2D\x45\xDC\x21\x00"
"linux" "@_Z24GetTranslatedWeaponAliasPKc" "linux" "@_Z24GetTranslatedWeaponAliasPKc"
"linux64" "@_Z24GetTranslatedWeaponAliasPKc"
} }
// String: "weapon_assaultsuit" follow the xref to the array, first element should be "weapon_p228" // String: "weapon_assaultsuit" follow the xref to the array, first element should be "weapon_p228"
// Follow the xref o that array, it should be used in GetWeaponInfo // Follow the xref o that array, it should be used in GetWeaponInfo
@ -125,6 +136,7 @@
"windows" "\x55\x8B\xEC\x8B\x4D\x08\x56\x85\xC9\x74\x2A\x83\xF9\x1F" "windows" "\x55\x8B\xEC\x8B\x4D\x08\x56\x85\xC9\x74\x2A\x83\xF9\x1F"
"windows64" "\x40\x53\x48\x83\xEC\x30\x48\x63\xD1" "windows64" "\x40\x53\x48\x83\xEC\x30\x48\x63\xD1"
"linux" "@_Z13GetWeaponInfo10CSWeaponID" "linux" "@_Z13GetWeaponInfo10CSWeaponID"
"linux64" "@_Z13GetWeaponInfo10CSWeaponID"
} }
// String: "ClanTagChanged" follow the xref, there should be conditional jump to a node with 4 subroutines call and one virtual function call // String: "ClanTagChanged" follow the xref, there should be conditional jump to a node with 4 subroutines call and one virtual function call
// SetClangTag is the second subroutine called // SetClangTag is the second subroutine called
@ -134,6 +146,7 @@
"windows" "\x55\x8B\xEC\x51\x89\x4D\xFC\x83\x7D\x08\x00\x74\x2A\x6A\x10" "windows" "\x55\x8B\xEC\x51\x89\x4D\xFC\x83\x7D\x08\x00\x74\x2A\x6A\x10"
"windows64" "\x48\x89\x54\x24\x10\x48\x89\x4C\x24\x08\x48\x83\xEC\x28\x48\x83\x7C\x24\x38\x00\x74\x2A\x48\x8B\x44\x24\x30" "windows64" "\x48\x89\x54\x24\x10\x48\x89\x4C\x24\x08\x48\x83\xEC\x28\x48\x83\x7C\x24\x38\x00\x74\x2A\x48\x8B\x44\x24\x30"
"linux" "@_ZN9CCSPlayer10SetClanTagEPKc" "linux" "@_ZN9CCSPlayer10SetClanTagEPKc"
"linux64" "@_ZN9CCSPlayer10SetClanTagEPKc"
} }
// String: "p228" the xref should you to an array that's being used in two subroutines, where the increment is * 8 // String: "p228" the xref should you to an array that's being used in two subroutines, where the increment is * 8
// This is WeaponIDToAlias & AliasToWeaponID. To tell apart one from the other, the array will be used as return value in AliasToWeaponID // This is WeaponIDToAlias & AliasToWeaponID. To tell apart one from the other, the array will be used as return value in AliasToWeaponID
@ -143,6 +156,7 @@
"windows" "\x55\x8B\xEC\x56\x57\x8B\x7D\x08\x85\xFF\x74\x2A\x33\xF6\x8B\xFF\x57" "windows" "\x55\x8B\xEC\x56\x57\x8B\x7D\x08\x85\xFF\x74\x2A\x33\xF6\x8B\xFF\x57"
"windows64" "\x48\x89\x5C\x24\x08\x48\x89\x74\x24\x10\x57\x48\x83\xEC\x20\x48\x8B\xF1\x48\x85\xC9" "windows64" "\x48\x89\x5C\x24\x08\x48\x89\x74\x24\x10\x57\x48\x83\xEC\x20\x48\x8B\xF1\x48\x85\xC9"
"linux" "@_Z15AliasToWeaponIDPKc" "linux" "@_Z15AliasToWeaponIDPKc"
"linux64" "@_Z15AliasToWeaponIDPKc"
} }
"WeaponIDToAlias" "WeaponIDToAlias"
{ {
@ -150,6 +164,7 @@
"windows" "\x55\x8B\xEC\x8B\x4D\x08\x33\xC0\xEB\x2A\x8D\x9B\x00\x00\x00\x00\x39\x0C\xC5\x2A\x2A\x2A\x2A\x74\x2A\x40\x83\xF8\x26" "windows" "\x55\x8B\xEC\x8B\x4D\x08\x33\xC0\xEB\x2A\x8D\x9B\x00\x00\x00\x00\x39\x0C\xC5\x2A\x2A\x2A\x2A\x74\x2A\x40\x83\xF8\x26"
"windows64" "\x4C\x8D\x05\x09\xFE\x35\x00" "windows64" "\x4C\x8D\x05\x09\xFE\x35\x00"
"linux" "@_Z15WeaponIDToAliasi" "linux" "@_Z15WeaponIDToAliasi"
"linux64" "@_Z15WeaponIDToAliasi"
} }
// String: "Team \"CT\" triggered \"Intermission_Win_Limit\"\n" // String: "Team \"CT\" triggered \"Intermission_Win_Limit\"\n"
// Note: Function got inlined on windows inside CCSGameRules::Think // Note: Function got inlined on windows inside CCSGameRules::Think
@ -159,6 +174,7 @@
"windows" "\x55\x8B\xEC\x83\xEC\x44\x56\x57\x8B\xF9" "windows" "\x55\x8B\xEC\x83\xEC\x44\x56\x57\x8B\xF9"
"windows64" "\x48\x89\x5C\x24\x18\x48\x89\x7C\x24\x20\x41\x56\x48\x81\xEC\x80\x00\x00\x00\x48\x8B\xF9" "windows64" "\x48\x89\x5C\x24\x18\x48\x89\x7C\x24\x20\x41\x56\x48\x81\xEC\x80\x00\x00\x00\x48\x8B\xF9"
"linux" "@_ZN12CCSGameRules13CheckWinLimitEv" "linux" "@_ZN12CCSGameRules13CheckWinLimitEv"
"linux64" "@_ZN12CCSGameRules13CheckWinLimitEv"
} }
// Inlined on windows // <- year 2025 Is it ? // Inlined on windows // <- year 2025 Is it ?
"SetModelFromClass" "SetModelFromClass"
@ -167,6 +183,7 @@
"windows" "\x55\x8B\xEC\x83\xEC\x2C\x89\x4D\xFC\x8B\x4D\xFC" "windows" "\x55\x8B\xEC\x83\xEC\x2C\x89\x4D\xFC\x8B\x4D\xFC"
"windows64" "\x48\x89\x4C\x24\x08\x48\x83\xEC\x78\x48\x8B\x8C\x24\x80\x00\x00\x00\xE8\x2A\x2A\x2A\x2A\x83\xF8\x02" "windows64" "\x48\x89\x4C\x24\x08\x48\x83\xEC\x78\x48\x8B\x8C\x24\x80\x00\x00\x00\xE8\x2A\x2A\x2A\x2A\x83\xF8\x02"
"linux" "@_ZN9CCSPlayer17SetModelFromClassEv" "linux" "@_ZN9CCSPlayer17SetModelFromClassEv"
"linux64" "@_ZN9CCSPlayer17SetModelFromClassEv"
} }
} }
@ -185,6 +202,7 @@
"windows" "69" "windows" "69"
"windows64" "69" "windows64" "69"
"linux" "69" "linux" "69"
"linux64" "69"
} }
} }
} }