OldSchoolHack

Register / Login English

CSS Name Stealer

icon Thread: [Release] CSS Name Stealer

Join Date: Aug 2007

Posts: 8643

User-Rating:

199 positive
33 negative
TEXT Code:
  1. #ApiDebug = #True
  2. #ApiDebugName = "CSS HACK"
  3.  
  4. ;- NAME STEALER CONSTANTS
  5. #STEALER_START_TOOGLE_VK = #VK_NUMPAD5 ;// This a toogle press 1 = start ,press again = stop
  6.  
  7. #CHANGE_DELAY = 1000 ;miliseconds (1000) = 1sec
  8. #STEAL_BOTS_NAME = #True
  9.  
  10. #NAME_BYPASS = Chr(32) + Chr(31)
  11.  
  12. ;-
  13. #MAX_PLAYER_NAME_LENGTH = 32
  14. #SIGNED_GUID_LEN = 32 ;// Hashed CD Key (32 hex alphabetic chars + 0 terminator )
  15.  
  16. ;// a client can have up To 4 customization files (logo, sounds, models, txt).
  17. #MAX_CUSTOM_FILES = 4 ;// max 4 files
  18. #MAX_CUSTOM_FILE_SIZE = 131072
  19.  
  20. Macro thiscall(object)
  21. MOV ecx, object
  22. EndMacro
  23.  
  24.  
  25. #fnClient = "client.dll"
  26. #fnEngine = "engine.dll"
  27. #fnVPhysics = "vphysics.dll"
  28. #fnVStd = "vstdlib.dll"
  29. #fnFileSystem = "FileSystem_Steam.dll"
  30. #fnMatSystem = "MaterialSystem.dll"
  31. #fnVgui = "vgui2.dll"
  32.  
  33.  
  34. Structure player_info_t
  35. ;// scoreboard information
  36. name.c[#MAX_PLAYER_NAME_LENGTH]
  37. ;// local server user ID, unique while server is running
  38. userID.i
  39. ;// global unique player identifer
  40. guid.c[#SIGNED_GUID_LEN + 1]
  41. ;// friends identification number
  42. friendsID.i
  43. ;// friends name
  44. friendsName.c[#MAX_PLAYER_NAME_LENGTH]
  45. ;// true, if player is a bot controlled by game.dll
  46. fakeplayer.b
  47. ;// true if player is the HLTV proxy
  48. ishltv.b
  49. ;// custom files CRC for this player
  50. customFiles.l[#MAX_CUSTOM_FILES]
  51. ;// this counter increases each time the server downloaded a new file
  52. filesDownloaded.c
  53. EndStructure
  54.  
  55. Interface IVEngineClient ;// VEngineClient013
  56. GetIntersectingSurfaces()
  57. GetLightForPoint()
  58. TraceLineMaterialAndLighting()
  59. ParseFile()
  60. CopyFile()
  61. GetScreenSize()
  62. ServerCmd()
  63. ClientCmd(*szCmdString)
  64. GetPlayerInfo(ent_num, *pinfo)
  65. GetPlayerForUserID()
  66. TextMessageGet()
  67. Con_IsVisible()
  68. GetLocalPlayer()
  69. LoadModel()
  70. Time()
  71. GetLastTimeStamp()
  72. GetSentence()
  73. GetSentenceLength()
  74. IsStreaming()
  75. GetViewAngles()
  76. SetViewAngles()
  77. GetMaxClients()
  78. Key_LookupBinding()
  79. Key_BindingForKey()
  80. StartKeyTrapMode()
  81. CheckDoneKeyTrapping()
  82. IsInGame()
  83. IsConnected()
  84. IsDrawingLoadingImage()
  85. Con_NPrintf()
  86. Con_NXPrintf()
  87. IsBoxVisible()
  88. IsBoxInViewCluster()
  89. CullBox()
  90. Sound_ExtraUpdate()
  91. GetGameDirectory()
  92. WorldToScreenMatrix()
  93. WorldToViewMatrix()
  94. GameLumpVersion()
  95. GameLumpSize()
  96. LoadGameLump()
  97. LevelLeafCount()
  98. GetBSPTreeQuery()
  99. LinearToGamma()
  100. LightStyleValue()
  101. ComputeDynamicLighting()
  102. GetAmbientLightColor()
  103. GetDXSupportLevel()
  104. SupportsHDR()
  105. Mat_Stub()
  106. GetChapterName()
  107. GetLevelName()
  108. GetVoiceTweakAPI()
  109. EngineStats_BeginFrame()
  110. EngineStats_EndFrame()
  111. FireEvents()
  112. GetLeavesArea()
  113. DoesBoxTouchAreaFrustum()
  114. SetAudioState()
  115. SentenceGroupPick()
  116. SentenceGroupPickSequential()
  117. SentenceIndexFromName()
  118. SentenceNameFromIndex()
  119. SentenceGroupIndexFromName()
  120. SentenceGroupNameFromIndex()
  121. SentenceLength()
  122. ComputeLighting()
  123. ActivateOccluder()
  124. IsOccluded()
  125. SaveAllocMemory()
  126. SaveFreeMemory()
  127. GetNetChannelInfo()
  128. DebugDrawPhysCollide()
  129. CheckPoint()
  130. DrawPortals()
  131. IsPlayingDemo()
  132. IsRecordingDemo()
  133. IsPlayingTimeDemo()
  134. GetDemoRecordingTick()
  135. GetDemoPlaybackTick()
  136. GetDemoPlaybackStartTick()
  137. GetDemoPlaybackTimeScale()
  138. GetDemoPlaybackTotalTicks()
  139. IsPaused()
  140. IsTakingScreenshot()
  141. IsHLTV()
  142. IsReplay()
  143. DownloadReplay()
  144. IsReplayEnabled()
  145. IsReplayRecording()
  146. GetReplayRecordingTick()
  147. IsLevelMainMenuBackground()
  148. GetMainMenuBackgroundName()
  149. GetVideoModes()
  150. SetOcclusionParameters()
  151. GetUILanguage()
  152. IsSkyboxVisibleFromPoint()
  153. GetMapEntitiesString()
  154. IsInEditMode()
  155. GetScreenAspectRatio()
  156. REMOVED_SteamRefreshLogin()
  157. REMOVED_SteamProcessCall()
  158. GetEngineBuildNumber()
  159. GetProductVersionString()
  160. GrabPreColorCorrectedFrame()
  161. IsHammerRunning()
  162. ExecuteClientCmd(*szCmdString)
  163. MapHasHDRLighting()
  164. GetAppID()
  165. GetLightForPointFast()
  166. ClientCmd_Unrestricted(*szCmdString)
  167. SetRestrictServerCommands()
  168. SetRestrictClientCommands()
  169. SetOverlayBindProxy()
  170. CopyFrameBufferToMaterial()
  171. ChangeTeam()
  172. ReadConfiguration()
  173. SetAchievementMgr()
  174. GetAchievementMgr()
  175. MapLoadFailed()
  176. SetMapLoadFailed()
  177. IsLowViolence()
  178. GetMostRecentSaveGame()
  179. SetMostRecentSaveGame()
  180. StartXboxExitingProcess()
  181. IsSaveInProgress()
  182. OnStorageDeviceAttached()
  183. OnStorageDeviceDetached()
  184. ResetDemoInterpolation()
  185. SetGamestatsData()
  186. GetGamestatsData()
  187. LoadFilmmaker()
  188. UnloadFilmmaker()
  189. GetMouseDelta()
  190. ServerCcceyValues()
  191. IsInCommentaryMode()
  192. EndInterface
  193.  
  194.  
  195. ;- STEAM INTERFACES
  196. Interface ISteamClient011
  197. CreateSteamPipe()
  198. BReleaseSteamPipe(hSteamPipe)
  199. ConnectToGlobalUser(hSteamPipe)
  200. CreateLocalUser(*phSteamPipe, eAccountType)
  201. ReleaseUser(hSteamPipe, hUser)
  202. GetISteamUser(hSteamUser, hSteamPipe, pchVersion.s)
  203. GetISteamGameServer(hSteamUser, hSteamPipe, pchVersion.s)
  204. SetLocalIPBinding(unIP, usPort)
  205. GetISteamFriends(hSteamUser, hSteamPipe, pchVersion.s)
  206. GetISteamUtils(hSteamPipe, pchVersion.s)
  207. GetISteamMatchmaking(hSteamUser, hSteamPipe, pchVersion.s)
  208. GetISteamMasterServerUpdater(hSteamUser, hSteamPipe, pchVersion.s)
  209. GetISteamMatchmakingServers(hSteamUser, hSteamPipe, pchVersion.s)
  210. GetISteamGenericInterface(hSteamUser, hSteamPipe, pchVersion.s)
  211. GetISteamUserStats(hSteamUser, hSteamPipe, pchVersion.s)
  212. GetISteamGameServerStats(hSteamUser, hSteamPipe, pchVersion.s)
  213. GetISteamApps(hSteamUser, hSteamPipe, pchVersion.s)
  214. GetISteamNetworking(hSteamUser, hSteamPipe, pchVersion.s)
  215. GetISteamRemoteStorage(hSteamUser, hSteamPipe, pchVersion.s)
  216. GetISteamScreenshots(hSteamUser, hSteamPipe, pchVersion.s)
  217. RunFrame()
  218. GetIPCCallCount()
  219. SetWarningMessageHook(pFunction)
  220. BShutdownIfAllPipesClosed()
  221. GetISteamHTTP(hSteamUser, hSteamPipe, pchVersion.s)
  222. EndInterface
  223.  
  224. Interface ISteamFriends009
  225. GetPersonaName()
  226. SetPersonaName(*pchPersonaName)
  227. GetPersonaState()
  228. GetFriendCount(iFriendFlags)
  229. GetFriendByIndex(iFriend, iFriendFlags)
  230. GetFriendRelationship(steamIDFriend)
  231. GetFriendPersonaState(steamIDFriend)
  232. GetFriendPersonaName(steamIDFriend)
  233. GetFriendGamePlayed(steamIDFriend, *pFriendGameInfo)
  234. GetFriendPersonaNameHistory(steamIDFriend, iPersonaName)
  235. HasFriend(steamIDFriend, iFriendFlags)
  236. GetClanCount()
  237. GetClanByIndex(iClan)
  238. GetClanName(steamIDClan)
  239. GetClanTag(steamIDClan)
  240. GetFriendCountFromSource(steamIDSource)
  241. GetFriendFromSourceByIndex(steamIDSource, iFriend)
  242. IsUserInSource(steamIDUser, steamIDSource)
  243. SetInGameVoiceSpeaking(steamIDUser, bSpeaking.b)
  244. ActivateGameOverlay(*pchDialog)
  245. ActivateGameOverlayToUser(*pchDialog, steamID)
  246. ActivateGameOverlayToWebPage(*pchURL)
  247. ActivateGameOverlayToStore(nAppID)
  248. SetPlayedWith(steamIDUserPlayedWith)
  249. ActivateGameOverlayInviteDialog(steamIDLobby)
  250. GetSmallFriendAvatar(steamIDFriend)
  251. GetMediumFriendAvatar(steamIDFriend)
  252. GetLargeFriendAvatar(steamIDFriend)
  253. RequestUserInformation(steamIDUser, bRequireNameOnly.b)
  254. RequestClanOfficerList(steamIDClan)
  255. GetClanOwner(steamIDClan)
  256. GetClanOfficerCount(steamIDClan)
  257. GetClanOfficerByIndex(steamIDClan, iOfficer)
  258. GetUserRestrictions()
  259. SetRichPresence(*pchKey, *pchValue)
  260. ClearRichPresence()
  261. GetFriendRichPresence(steamIDFriend, *pchKey)
  262. GetFriendRichPresenceKeyCount(steamIDFriend)
  263. GetFriendRichPresenceKeyByIndex(steamIDFriend, iKey)
  264. InviteUserToGame(steamIDFriend, *pchConnectString)
  265. GetCoplayFriendCount()
  266. GetCoplayFriend(iCoplayFriend)
  267. GetFriendCoplayTime(steamIDFriend)
  268. GetFriendCoplayGame(steamIDFriend)
  269. EndInterface
  270.  
  271. Global steamclient.ISteamClient011
  272. Global steamfriends.ISteamFriends009
  273.  
  274. ;- STEAM PROTOTYPES
  275. PrototypeC PROTO_STEAM_CreateInterface(pName.s, *pReturnCode)
  276. Prototype PROTO_STEAM_SetPersonaName(*pchPersonaName)
  277.  
  278. Global STEAM_CreateInterface.PROTO_STEAM_CreateInterface
  279. Global STEAM_SetPersonaName.PROTO_STEAM_SetPersonaName
  280.  
  281. ;- H2L PROTOTYPES
  282. PrototypeC PROTO_H2L_CreateInterface(pszInterfaceName.s, *pReturnCode)
  283.  
  284. Prototype PROTO_GetMaxClients()
  285. Prototype PROTO_GetPlayerInfo(ent_num.i, *pinfo)
  286. Prototype PROTO_GetLocalPlayer()
  287.  
  288. ;- H2L PROTOTYPES
  289. Global H2L_CreateInterface.PROTO_H2L_CreateInterface
  290.  
  291. Global GetMaxClients.PROTO_GetMaxClients
  292. Global GetPlayerInfo.PROTO_GetPlayerInfo
  293. Global GetLocalPlayer.PROTO_GetLocalPlayer
  294.  
  295. Global Engine.IVEngineClient
  296.  
  297. Global playerInfo.player_info_t
  298. Global bStealName.b = #False
  299.  
  300. Global NameStealer_ThreadID.i
  301. Global KeyCheck_ThreadID.i
  302.  
  303. Procedure DebugString(debug_text.s)
  304. If #ApiDebug = #True
  305. OutputDebugString_(#ApiDebugName + ": " + debug_text)
  306. EndIf
  307. EndProcedure
  308.  
  309. Procedure Get_H2L_Interface(_Interface.s, InterfaceName.s)
  310. resu = 0
  311. hBase = GetModuleHandle_(_Interface)
  312.  
  313. If hBase
  314. H2L_CreateInterface = GetProcAddress_(hBase, "CreateInterface")
  315.  
  316. If H2L_CreateInterface
  317. resu = H2L_CreateInterface(InterfaceName, #Null)
  318. Else
  319. DebugString("Invalid H2L_CreateInterface : " + Str(H2L_CreateInterface))
  320. EndIf
  321.  
  322. Else
  323. DebugString("Invalid hBase : " + Str(hBase))
  324. EndIf
  325.  
  326. ProcedureReturn resu
  327. EndProcedure
  328.  
  329. Procedure KeyCheck_Thread(param)
  330. While(1)
  331. If GetAsyncKeyState_(#STEALER_START_TOOGLE_VK)&$8000
  332.  
  333. If bStealName = #False
  334. bStealName = #True
  335. ElseIf bStealName = #True
  336. bStealName = #False
  337. EndIf
  338.  
  339. EndIf
  340.  
  341. Delay(100)
  342. Wend
  343. EndProcedure
  344.  
  345. Procedure NameStealer_Thread(param)
  346. Protected newName.s
  347. KeyCheck_ThreadID = CreateThread(@KeyCheck_Thread(), 0)
  348. While(1)
  349.  
  350.  
  351. If bStealName
  352. For iIndex.l = 0 To GetMaxClients() - 1
  353.  
  354. If GetPlayerInfo(iIndex, @playerInfo)
  355.  
  356. If iIndex = GetLocalPlayer()
  357. Continue
  358. EndIf
  359.  
  360. If #STEAL_BOTS_NAME = #False
  361. If playerInfo\fakeplayer
  362. Continue
  363. EndIf
  364. EndIf
  365.  
  366. If playerInfo\name
  367. newName = PeekS(@playerInfo\name) + #NAME_BYPASS
  368.  
  369. thiscall(steamfriends)
  370. STEAM_SetPersonaName(@newName)
  371. Delay(#CHANGE_DELAY)
  372. EndIf
  373.  
  374. If Not bStealName : Break : EndIf
  375.  
  376. EndIf
  377.  
  378. Next iIndex
  379.  
  380. EndIf
  381.  
  382. Delay(100)
  383. Wend
  384. EndProcedure
  385.  
  386. Procedure.b InitSteam_Stuff()
  387. hMod = GetModuleHandle_("steamclient.dll")
  388.  
  389. If hMod
  390.  
  391. STEAM_CreateInterface = GetProcAddress_(hMod, "CreateInterface")
  392.  
  393. If STEAM_CreateInterface
  394. steamclient = STEAM_CreateInterface("SteamClient011", #Null)
  395.  
  396. If steamclient
  397. thiscall(steamclient)
  398. pipe = CallFunctionFast(@steamclient\CreateSteamPipe())
  399.  
  400. If pipe
  401. thiscall(steamclient)
  402. user = CallFunctionFast(@steamclient\ConnectToGlobalUser(), pipe)
  403.  
  404. If user
  405. thiscall(steamclient)
  406. steamfriends = CallFunctionFast(@steamclient\GetISteamFriends(), user, pipe, @"SteamFriends009")
  407.  
  408. If steamfriends
  409. ProcedureReturn #True
  410. Else
  411. DebugString("Invalid steamfriends : " + Str(steamfriends))
  412. EndIf
  413.  
  414. Else
  415. DebugString("Invalid user : " + Str(user))
  416. EndIf
  417.  
  418. Else
  419. DebugString("Invalid pipe : " + Str(pipe))
  420. EndIf
  421.  
  422. Else
  423. DebugString("Invalid steamclient : " + Str(steamclient))
  424. EndIf
  425.  
  426. Else
  427. DebugString("Invalid STEAM_CreateInterface : " + Str(STEAM_CreateInterface))
  428. EndIf
  429. Else
  430. DebugString("Invalid hMod : " + Str(hMod))
  431. EndIf
  432.  
  433. ProcedureReturn #False
  434. EndProcedure
  435.  
  436. Procedure InitStuff(param)
  437. ;wait a bit let the process load
  438. Delay(1000)
  439.  
  440. ;- wait until the module load...
  441. If Not GetModuleHandle_("steamclient.dll")
  442. While Not GetModuleHandle_("steamclient.dll")
  443. Delay(100)
  444. Wend
  445. EndIf
  446.  
  447. If Not GetModuleHandle_(#fnEngine)
  448. While Not GetModuleHandle_(#fnEngine)
  449. Delay(100)
  450. Wend
  451. EndIf
  452.  
  453. If Not GetModuleHandle_(#fnClient)
  454. While Not GetModuleHandle_(#fnClient)
  455. Delay(100)
  456. Wend
  457. EndIf
  458.  
  459. If InitSteam_Stuff()
  460. DebugString("Steam Stuff Inited")
  461. STEAM_SetPersonaName = Val(Str(@steamfriends\SetPersonaName())) ; <- Fail PureBasic bug...
  462.  
  463. Engine = Get_H2L_Interface(#fnEngine, "VEngineClient013")
  464.  
  465.  
  466. ;- Prototypes Faster then > CallFunctionFast
  467. GetMaxClients = Val(Str(@Engine\GetMaxClients())) ; <- Fail PureBasic bug...
  468. GetPlayerInfo = Val(Str(@Engine\GetPlayerInfo()))
  469. GetLocalPlayer = Val(Str(@Engine\GetLocalPlayer()))
  470.  
  471.  
  472. NameStealer_ThreadID = CreateThread(@NameStealer_Thread(), 0)
  473.  
  474. Else
  475. MessageRequester("Error", "Failed to Init Steam Stuff!", #MB_ICONERROR)
  476. ExitProcess_(0)
  477. EndIf
  478. EndProcedure
  479.  
  480. Procedure ProcessUnload()
  481. If IsThread(KeyCheck_ThreadID)
  482. KillThread(KeyCheck_ThreadID)
  483. Delay(100)
  484. EndIf
  485.  
  486. If IsThread(NameStealer_ThreadID)
  487. KillThread(NameStealer_ThreadID)
  488. Delay(100)
  489. EndIf
  490. EndProcedure
  491.  
  492. ;- DLL MAIN
  493. ProcedureDLL AttachProcess(Instance)
  494. CreateThread(@InitStuff(), 0)
  495. EndProcedure
  496.  
  497. ; Called when the program release (free) the DLL
  498. ProcedureDLL DetachProcess(Instance)
  499. ProcessUnload()
  500. EndProcedure
  501.  
  502.  
  503. ; Both are called when a thread in a program call or release (free) the DLL
  504. ProcedureDLL AttachThread(Instance)
  505. EndProcedure
  506.  
  507. ProcedureDLL DetachThread(Instance)
  508. EndProcedure
  509. ; IDE Options = PureBasic 4.51 (Windows - x86)
  510. ; ExecutableFormat = Shared Dll
  511. ; CursorPosition = 8
  512. ; Folding = Bs04-49
  513. ; EnableAsm
  514. ; EnableXP
  515. ; Executable = CSS NameStealer.dll

How-to-use:

   Start Darky Loader.exe.
   start the game.
   when Ingame press Numpad5 (TOOGLE) to start name stealing, press Numpad5 again to pause it.


Credits:

   s0beit
   Badster

Tested on:

   Window 7 - x64
   Counter-Strike Source - v13

Compiled with:

   PureBasic 4.51 (x86)

DLL For those who don't know how to compile
Download CSS Name Stealer

__________________

Hallo