Помогите спастить в индего

Пользователь
Статус
Оффлайн
Регистрация
19 Май 2017
Сообщения
172
Реакции[?]
47
Поинты[?]
0
Помогите спастить функцию которая делает фейк пинг в табе
Код:
int __fastcall Hooks::SendDatagram(INetChannel* netchan, void*, bf_write* datagram)
{
    if (DisableAllChk.Checked || !BacktrackExploitChk.Checked || datagram)
    {
        return oSendDatagram(netchan, datagram);
    }
 
    int instate = netchan->m_nInReliableState;
    int insequencenr = netchan->m_nInSequenceNr;
 
    gLagCompensation.AddLatencyToNetchan(netchan, FAKE_LATENCY_AMOUNT);
 
    int ret = oSendDatagram(netchan, datagram);
 
    netchan->m_nInReliableState = instate;
    netchan->m_nInSequenceNr = insequencenr;
 
    return ret;
}
 
void LagCompensation::AddLatencyToNetchan(INetChannel *netchan, float Latency)
{
    for (auto& seq : sequences)
    {
        if (Interfaces::Globals->realtime - seq.curtime >= Latency)
        {
            netchan->m_nInReliableState = seq.inreliablestate;
            netchan->m_nInSequenceNr = seq.sequencenr;
            break;
        }
    }
}
 
void LagCompensation::UpdateIncomingSequences()
{
    DWORD ClientState = (DWORD)*(DWORD*)pClientState;
    if (ClientState)
    {
        INetChannel *netchan = (INetChannel*)*(DWORD*)(ClientState + 0x9C);
 
        if (netchan)
        {
            if (netchan->m_nInSequenceNr > lastincomingsequencenumber)
            {
                lastincomingsequencenumber = netchan->m_nInSequenceNr;
 
                sequences.push_front(CIncomingSequence(netchan->m_nInReliableState, netchan->m_nOutReliableState, netchan->m_nInSequenceNr, Interfaces::Globals->realtime));
            }
 
            if (sequences.size() > 2048)
                sequences.pop_back();
        }
    }
}
 
Администратор
Администратор
Статус
Оффлайн
Регистрация
18 Авг 2017
Сообщения
2,332
Реакции[?]
1,572
Поинты[?]
69K
Помогите спастить функцию которая делает фейк пинг в табе
Код:
int __fastcall Hooks::SendDatagram(INetChannel* netchan, void*, bf_write* datagram)
{
    if (DisableAllChk.Checked || !BacktrackExploitChk.Checked || datagram)
    {
        return oSendDatagram(netchan, datagram);
    }
 
    int instate = netchan->m_nInReliableState;
    int insequencenr = netchan->m_nInSequenceNr;
 
    gLagCompensation.AddLatencyToNetchan(netchan, FAKE_LATENCY_AMOUNT);
 
    int ret = oSendDatagram(netchan, datagram);
 
    netchan->m_nInReliableState = instate;
    netchan->m_nInSequenceNr = insequencenr;
 
    return ret;
}
 
void LagCompensation::AddLatencyToNetchan(INetChannel *netchan, float Latency)
{
    for (auto& seq : sequences)
    {
        if (Interfaces::Globals->realtime - seq.curtime >= Latency)
        {
            netchan->m_nInReliableState = seq.inreliablestate;
            netchan->m_nInSequenceNr = seq.sequencenr;
            break;
        }
    }
}
 
void LagCompensation::UpdateIncomingSequences()
{
    DWORD ClientState = (DWORD)*(DWORD*)pClientState;
    if (ClientState)
    {
        INetChannel *netchan = (INetChannel*)*(DWORD*)(ClientState + 0x9C);
 
        if (netchan)
        {
            if (netchan->m_nInSequenceNr > lastincomingsequencenumber)
            {
                lastincomingsequencenumber = netchan->m_nInSequenceNr;
 
                sequences.push_front(CIncomingSequence(netchan->m_nInReliableState, netchan->m_nOutReliableState, netchan->m_nInSequenceNr, Interfaces::Globals->realtime));
            }
 
            if (sequences.size() > 2048)
                sequences.pop_back();
        }
    }
}
берете код, вставляйте куда нибудь, делаете вызов функции, сравниваете сдк откуда брали функцию со своим, а потом меняете имена, которые отличаются. Вроде это делается так.
 
Сверху Снизу