New pSilent Hints

Posts 1–4 of 4 · Page 1 of 1
New pSilent Hints
Hey guys i'm back and im kinda disappointed because I have yet to see a public cheat with the new psilent since it shouldn't be that hard to figure out, but since I will not Feed the C+P, I am only going to tell you some tips and point you in the right direction :).
First off, The new pSilent is not normal pSilent like before, Everyone in your game can see your snaps this is due to the old public method being patched. Also Should debunk the myth that "Fake" angles for anti-aims still work, no just no the hitbox update broke all fake angles.
Lets get started, First what you'll have to do is get the ClientState which is engine.dll + 0x5CE1C4. You can get engine.dll internally Like this
Code:
(DWORD)GetModuleHandle(/*engine.dll*/XorStr<0x07, 11, 0x2B15D8E1>("\x62\x66\x6E\x63\x65\x69\x23\x6A\x63\x7C" + 0x2B15D8E1).s);
ok so now that we have those we do need to get INetChannel,
Code:
CClientState + m_nNetChannel
Net channel being (0x94).
Now this part has all been pointless because if you looked through anywhere at all this should be easy but anyway you get access to these
Code:
// Generated using ReClass
 
class N00000000;
class CClientState;
class INetChannel;
class FLOAT;
class N00000285;
class N000010AD;
class N000010C0;
class Entity;
class INetChannelHandler;
class N00001187;
class Netmsgbinder;
class CUtlVector;
class T;
class bf_write;
class CUtlMemory;
class netadr_t;
class N00002ABB;
class N00002ABE;
class N00002AC3;
 
class N00000000 // This is engine.dll + 0x5CE1C4
{
public:
	CClientState* pClientState; 
char pad_0x0004[0x3C]; 
 
};//Size=0x0040
 
class CClientState
{
public:
	char pad_0x0000[0x8]; //0x0000
	N00000285* ClientStateVtable; //0x0008 
	char pad_0x000C[0x4]; //0x000C
	Netmsgbinder* PROCESS_NET_MESSAGE(Tick); //0x0010 
	Netmsgbinder* PROCESS_NET_MESSAGE(StringCmd); //0x0014 
	Netmsgbinder* PROCESS_NET_MESSAGE(SignonState); //0x0018 
	Netmsgbinder* PROCESS_NET_MESSAGE(SetConVar); //0x001C 
	Netmsgbinder* N0000001B; //0x0020 
	Netmsgbinder* N0000001C; //0x0024 
	Netmsgbinder* N0000001D; //0x0028 
	Netmsgbinder* N0000001E; //0x002C 
	Netmsgbinder* N0000001F; //0x0030 
	Netmsgbinder* N00000020; //0x0034 
	Netmsgbinder* N00000021; //0x0038 
	Netmsgbinder* N00000022; //0x003C 
	Netmsgbinder* N00000023; //0x0040 
	Netmsgbinder* N00000024; //0x0044 
	Netmsgbinder* N00000025; //0x0048 
	Netmsgbinder* N00000026; //0x004C 
	Netmsgbinder* N00000027; //0x0050 
	Netmsgbinder* N00000028; //0x0054 
	Netmsgbinder* N00000029; //0x0058 
	Netmsgbinder* N0000002A; //0x005C 
	Netmsgbinder* N0000002B; //0x0060 
	Netmsgbinder* N0000002C; //0x0064 
	Netmsgbinder* N0000002D; //0x0068 
	Netmsgbinder* N0000002E; //0x006C 
	Netmsgbinder* N0000002F; //0x0070 
	Netmsgbinder* N00000030; //0x0074 
	Netmsgbinder* N0000039C; //0x0078 
	Netmsgbinder* N00000032; //0x007C 
	Netmsgbinder* N00000033; //0x0080 
	Netmsgbinder* N00000034; //0x0084 
	Netmsgbinder* N00000035; //0x0088 
	Netmsgbinder* N00000036; //0x008C 
	__int32 m_Socket; //0x0090 
	INetChannel* m_NetChannel; //0x0094 <-- This was what I was after!
	__int32 m_nChallengeNr; //0x0098 
	char pad_0x009C[0x4C]; //0x009C
	__int32 m_nSignonState; //0x00E8 
	char pad_0x00EC[0x8]; //0x00EC
	float m_flNextCmdTime; //0x00F4 
	__int32 m_nServerCount; //0x00F8 
	__int32 m_nCurrentSequence; //0x00FC 
	char pad_0x0100[0x8]; //0x0100
	FLOAT m_ClockOffsets[16]; //0x0108 
	__int32 m_iCurClockOffset; //0x0148 
	__int32 m_nServerTick; //0x014C 
	__int32 m_nClientTick; //0x0150 
	__int32 m_nDeltaTick; //0x0154 
	unsigned char m_bPaused; //0x0158 
	char pad_0x0159[0x3]; //0x0159
	__int32 m_nViewEntity; //0x015C 
	char pad_0x0160[0x8]; //0x0160
	char m_szLevelName[260]; //0x0168 
	char m_szLevelNameShort[40]; //0x026C 
	char pad_0x0294[0x5EC]; //0x0294
	Entity* N00000233; //0x0880 
	Entity* N00000426; //0x0884 
	Entity* N00000427; //0x0888 
	Entity* N00000428; //0x088C 
	Entity* N00000429; //0x0890 
char pad_0x0894[0x3130]; //0x0894
 
};//Size=0x39C4
 
class INetChannel
{
public:
	__int32 vtable; //0x0000 
	Netmsgbinder* msgbinder1; //0x0004 
	Netmsgbinder* msgbinder2; //0x0008 
	Netmsgbinder* msgbinder3; //0x000C 
	Netmsgbinder* msgbinder4; //0x0010 
	unsigned char m_bProcessingMessages; //0x0014 
	unsigned char m_bShouldDelete; //0x0015 
	char pad_0x0016[0x2]; //0x0016
	__int32 m_nOutSequenceNr; //0x0018 
	__int32 m_nInSequenceNr; //0x001C 
	__int32 m_nOutSequenceNrAck; //0x0020 
	__int32 m_nOutReliableState; //0x0024 
	__int32 m_nInReliableState; //0x0028 
	__int32 m_nChokedPackets; //0x002C 
	bf_write m_StreamReliable; //0x0030 
	CUtlMemory m_ReliableDataBuffer; //0x0048 
	bf_write m_StreamUnreliable; //0x0054 
	CUtlMemory m_UnreliableDataBuffer; //0x006C 
	bf_write m_StreamVoice; //0x0078 
	CUtlMemory m_VoiceDataBuffer; //0x0090 
	__int32 m_Socket; //0x009C 
	__int32 m_StreamSocket; //0x00A0 
	__int32 m_MaxReliablePayloadSize; //0x00A4 
	char pad_0x00A8[0x4]; //0x00A8
	netadr_t remote_address; //0x00AC 
	float last_received; //0x00B8 
	char pad_0x00BC[0x4]; //0x00BC
	float connect_time; //0x00C0 
	char pad_0x00C4[0x4]; //0x00C4
	__int32 m_Rate; //0x00C8 
	float m_fClearTime; //0x00CC 
	char pad_0x00D0[0x8]; //0x00D0
	CUtlVector m_WaitingList[0]; //0x00D8 
	CUtlVector m_WaitingList[1]; //0x00EC 
	char pad_0x0100[0x4120]; //0x0100
	__int32 m_PacketDrop; //0x4220 
	char m_Name[32]; //0x4224 
	__int32 m_ChallengeNr; //0x4244 
	float m_Timeout; //0x4248 
	INetChannelHandler* m_MessageHandler; //0x424C 
	CUtlVector m_NetMessages; //0x4250 
	__int32 m_pDemoRecorder; //0x4264 
	__int32 m_nQueuedPackets; //0x4268 
	float m_flInterpolationAmount; //0x426C 
	float m_flRemoteFrameTime; //0x4270 
	float m_flRemoteFrameTimeStdDeviation; //0x4274 
	float m_nMaxRoutablePayloadSize; //0x4278 
	__int32 m_nSplitPacketSequence; //0x427C 
char pad_0x4280[0x14]; //0x4280
 
};//Size=0x4294
rwby was just asking about a couple things from this class.
Now to the pSilent part by having this you can now access CGOTVRecorder which is in CNetChannel.
Your turn to go and reverse the class and find out what you can use. Big Hint #1 CGOTVRecorder is going to be used to exploit demo's
heres big hint #2
Code:
 
    Tickrate  = pCmd->tickrate;
    if ( (int Cvar_82 = sv_maxusrcmd_holdaim )
      maxusrcmd_holdaim = Var_12;
    else
      maxusrcmd_holdaim = (Var_71 + 52))();
   
    if ( m_iLastWeaponFireUsercmd - Tickrate < maxusrcmd_holdaim )
    {
      v47 = *(player + 0xF9C);
      _mm_storel_epi64(&vars0, _mm_loadl_epi64((player + 0xF94)));
    }
Now i've only just got this working myself and ive lost 2 accounts to UT doing this wrong... But I did not tell you how you should be doing the pSil Ive only given a bit more than is publicly known.
GL HF may the anti C+P be with you, this psilent patch is being used in most privates.
Not really asking for help, moved to Discussions!
Quote Originally Posted by Truix View Post
Hey guys i'm back and im kinda disappointed because I have yet to see a public cheat with the new psilent since it shouldn't be that hard to figure out, but since I will not Feed the C+P, I am only going to tell you some tips and point you in the right direction .
First off, The new pSilent is not normal pSilent like before, Everyone in your game can see your snaps this is due to the old public method being patched. Also Should debunk the myth that "Fake" angles for anti-aims still work, no just no the hitbox update broke all fake angles.
Lets get started, First what you'll have to do is get the ClientState which is engine.dll + 0x5CE1C4. You can get engine.dll internally Like this
Code:
(DWORD)GetModuleHandle(/*engine.dll*/XorStr<0x07, 11, 0x2B15D8E1>("\x62\x66\x6E\x63\x65\x69\x23\x6A\x63\x7C" + 0x2B15D8E1).s);
ok so now that we have those we do need to get INetChannel,
Code:
CClientState + m_nNetChannel
Net channel being (0x94).
Now this part has all been pointless because if you looked through anywhere at all this should be easy but anyway you get access to these
Code:
// Generated using ReClass
 
class N00000000;
class CClientState;
class INetChannel;
class FLOAT;
class N00000285;
class N000010AD;
class N000010C0;
class Entity;
class INetChannelHandler;
class N00001187;
class Netmsgbinder;
class CUtlVector;
class T;
class bf_write;
class CUtlMemory;
class netadr_t;
class N00002ABB;
class N00002ABE;
class N00002AC3;
 
class N00000000 // This is engine.dll + 0x5CE1C4
{
public:
	CClientState* pClientState; 
char pad_0x0004[0x3C]; 
 
};//Size=0x0040
 
class CClientState
{
public:
	char pad_0x0000[0x8]; //0x0000
	N00000285* ClientStateVtable; //0x0008 
	char pad_0x000C[0x4]; //0x000C
	Netmsgbinder* PROCESS_NET_MESSAGE(Tick); //0x0010 
	Netmsgbinder* PROCESS_NET_MESSAGE(StringCmd); //0x0014 
	Netmsgbinder* PROCESS_NET_MESSAGE(SignonState); //0x0018 
	Netmsgbinder* PROCESS_NET_MESSAGE(SetConVar); //0x001C 
	Netmsgbinder* N0000001B; //0x0020 
	Netmsgbinder* N0000001C; //0x0024 
	Netmsgbinder* N0000001D; //0x0028 
	Netmsgbinder* N0000001E; //0x002C 
	Netmsgbinder* N0000001F; //0x0030 
	Netmsgbinder* N00000020; //0x0034 
	Netmsgbinder* N00000021; //0x0038 
	Netmsgbinder* N00000022; //0x003C 
	Netmsgbinder* N00000023; //0x0040 
	Netmsgbinder* N00000024; //0x0044 
	Netmsgbinder* N00000025; //0x0048 
	Netmsgbinder* N00000026; //0x004C 
	Netmsgbinder* N00000027; //0x0050 
	Netmsgbinder* N00000028; //0x0054 
	Netmsgbinder* N00000029; //0x0058 
	Netmsgbinder* N0000002A; //0x005C 
	Netmsgbinder* N0000002B; //0x0060 
	Netmsgbinder* N0000002C; //0x0064 
	Netmsgbinder* N0000002D; //0x0068 
	Netmsgbinder* N0000002E; //0x006C 
	Netmsgbinder* N0000002F; //0x0070 
	Netmsgbinder* N00000030; //0x0074 
	Netmsgbinder* N0000039C; //0x0078 
	Netmsgbinder* N00000032; //0x007C 
	Netmsgbinder* N00000033; //0x0080 
	Netmsgbinder* N00000034; //0x0084 
	Netmsgbinder* N00000035; //0x0088 
	Netmsgbinder* N00000036; //0x008C 
	__int32 m_Socket; //0x0090 
	INetChannel* m_NetChannel; //0x0094 <-- This was what I was after!
	__int32 m_nChallengeNr; //0x0098 
	char pad_0x009C[0x4C]; //0x009C
	__int32 m_nSignonState; //0x00E8 
	char pad_0x00EC[0x8]; //0x00EC
	float m_flNextCmdTime; //0x00F4 
	__int32 m_nServerCount; //0x00F8 
	__int32 m_nCurrentSequence; //0x00FC 
	char pad_0x0100[0x8]; //0x0100
	FLOAT m_ClockOffsets[16]; //0x0108 
	__int32 m_iCurClockOffset; //0x0148 
	__int32 m_nServerTick; //0x014C 
	__int32 m_nClientTick; //0x0150 
	__int32 m_nDeltaTick; //0x0154 
	unsigned char m_bPaused; //0x0158 
	char pad_0x0159[0x3]; //0x0159
	__int32 m_nViewEntity; //0x015C 
	char pad_0x0160[0x8]; //0x0160
	char m_szLevelName[260]; //0x0168 
	char m_szLevelNameShort[40]; //0x026C 
	char pad_0x0294[0x5EC]; //0x0294
	Entity* N00000233; //0x0880 
	Entity* N00000426; //0x0884 
	Entity* N00000427; //0x0888 
	Entity* N00000428; //0x088C 
	Entity* N00000429; //0x0890 
char pad_0x0894[0x3130]; //0x0894
 
};//Size=0x39C4
 
class INetChannel
{
public:
	__int32 vtable; //0x0000 
	Netmsgbinder* msgbinder1; //0x0004 
	Netmsgbinder* msgbinder2; //0x0008 
	Netmsgbinder* msgbinder3; //0x000C 
	Netmsgbinder* msgbinder4; //0x0010 
	unsigned char m_bProcessingMessages; //0x0014 
	unsigned char m_bShouldDelete; //0x0015 
	char pad_0x0016[0x2]; //0x0016
	__int32 m_nOutSequenceNr; //0x0018 
	__int32 m_nInSequenceNr; //0x001C 
	__int32 m_nOutSequenceNrAck; //0x0020 
	__int32 m_nOutReliableState; //0x0024 
	__int32 m_nInReliableState; //0x0028 
	__int32 m_nChokedPackets; //0x002C 
	bf_write m_StreamReliable; //0x0030 
	CUtlMemory m_ReliableDataBuffer; //0x0048 
	bf_write m_StreamUnreliable; //0x0054 
	CUtlMemory m_UnreliableDataBuffer; //0x006C 
	bf_write m_StreamVoice; //0x0078 
	CUtlMemory m_VoiceDataBuffer; //0x0090 
	__int32 m_Socket; //0x009C 
	__int32 m_StreamSocket; //0x00A0 
	__int32 m_MaxReliablePayloadSize; //0x00A4 
	char pad_0x00A8[0x4]; //0x00A8
	netadr_t remote_address; //0x00AC 
	float last_received; //0x00B8 
	char pad_0x00BC[0x4]; //0x00BC
	float connect_time; //0x00C0 
	char pad_0x00C4[0x4]; //0x00C4
	__int32 m_Rate; //0x00C8 
	float m_fClearTime; //0x00CC 
	char pad_0x00D0[0x8]; //0x00D0
	CUtlVector m_WaitingList[0]; //0x00D8 
	CUtlVector m_WaitingList[1]; //0x00EC 
	char pad_0x0100[0x4120]; //0x0100
	__int32 m_PacketDrop; //0x4220 
	char m_Name[32]; //0x4224 
	__int32 m_ChallengeNr; //0x4244 
	float m_Timeout; //0x4248 
	INetChannelHandler* m_MessageHandler; //0x424C 
	CUtlVector m_NetMessages; //0x4250 
	__int32 m_pDemoRecorder; //0x4264 
	__int32 m_nQueuedPackets; //0x4268 
	float m_flInterpolationAmount; //0x426C 
	float m_flRemoteFrameTime; //0x4270 
	float m_flRemoteFrameTimeStdDeviation; //0x4274 
	float m_nMaxRoutablePayloadSize; //0x4278 
	__int32 m_nSplitPacketSequence; //0x427C 
char pad_0x4280[0x14]; //0x4280
 
};//Size=0x4294
rwby was just asking about a couple things from this class.
Now to the pSilent part by having this you can now access CGOTVRecorder which is in CNetChannel.
Your turn to go and reverse the class and find out what you can use. Big Hint #1 CGOTVRecorder is going to be used to exploit demo's
heres big hint #2
Code:
 
    Tickrate  = pCmd->tickrate;
    if ( (int Cvar_82 = sv_maxusrcmd_holdaim )
      maxusrcmd_holdaim = Var_12;
    else
      maxusrcmd_holdaim = (Var_71 + 52))();
   
    if ( m_iLastWeaponFireUsercmd - Tickrate < maxusrcmd_holdaim )
    {
      v47 = *(player + 0xF9C);
      _mm_storel_epi64(&vars0, _mm_loadl_epi64((player + 0xF94)));
    }
Now i've only just got this working myself and ive lost 2 accounts to UT doing this wrong... But I did not tell you how you should be doing the pSil Ive only given a bit more than is publicly known.
GL HF may the anti C+P be with you, this psilent patch is being used in most privates.
Good work.
Ok, so pasted the table on "DevC#" compiled and gave me a error, waht should i do?? Try the Fridge? Plox Halp me

Nice one @Truix
Posts 1–4 of 4 · Page 1 of 1

Post a Reply

Similar Threads

Tags for this Thread

None

Talk with us