KODevelopers 438 #1 Oluşturuldu: Şubat 13, 2018 Sexyko fileslerle anticheatı kullanıyorum ama filesle anti arasında haberleşme yok disconnect anticheatten paket gelmediği için oluyor zaten neden haberleşmiyor.JvCryption.cppGuardCryption.cpp// Cryption#if __VERSION #define g_private_key 0x1207500120128966#endif2083 Pointers/* 2083 Pointers */const DWORD KO_WND = 0x00B5CE94;const DWORD KO_ACC = 0x00C37728;const DWORD KO_KEY = 0x00D66620;const DWORD KO_CHAR = 0x00DF6C3C;const DWORD KO_DLG = 0x00DE702C;const DWORD KO_SND = 0x0048C2B0;const DWORD KO_PKT = 0x00DE6FF8;const DWORD KO_SMMB = 0x00DF6B34;const DWORD KO_SMMF = 0x004EE860;Sonra. SexyKoGaurd.İkisi aynısı yaptım.Stadefx.h#define _GUARD_VERSION 2100Game/SoftStone.cpp#define _GUARD_VERSION 2100Files antisi. #include "stdafx.h"#define _GUARD_VERSION 2100#pragma region CUser::HandleStoneSoftGuard(Packet & pkt)/*** @brief Handles the KiraMixAutoSoft Guard packets coming from the client and* responds respectively.** @param pkt The packet to be handled.*/void CUser::HandleStoneSoftGuard(Packet & pkt){ uint8 subOpcode = pkt.read(); Packet resultGuard(WIZ_KIRAMIX_GUARD); DateTime time; switch (subOpcode) { case GuardOpCodes::VERSION: { uint16 m_sGuardVersion = pkt.read(); if (m_sGuardVersion != uint16(_GUARD_VERSION)) { printf("### KiraMixAutoSoft %d different version", _GUARD_VERSION); printf("### KiraMixAutoSoft %s (SocketID:%d) different version", GetRemoteIP().c_str(), GetSocketID()); Disconnect(); return; } } case GuardOpCodes::INITIATE: { uint32 m_sGuardVersion = pkt.read(); if (m_sGuardVersion != uint32(_GUARD_VERSION)) { printf("### KiraMixAutoSoft %d different version", _GUARD_VERSION); printf("### KiraMixAutoSoft %s (SocketID:%d) different version", GetRemoteIP().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("### KiraMixAutoSoft - %d:%d:%d - %s (SocketID:%d) different version", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID())); Disconnect(); return; } m_tGuardAliveExpiryTime = uint32(UNIXTIME); isStoneSoftGuardAlive = true; break; } case GuardOpCodes::ALIVE: { //if(isStoneSoftGuardAlive) //{ uint32 m_sGuardVersion = pkt.read(); uint8 bAuthority = 0; pkt >> bAuthority >> m_sGuardVersion; if (m_sGuardVersion != uint32(_GUARD_VERSION)) { printf("### KiraMixAutoSoft %d different version", m_sGuardVersion); printf("### KiraMixAutoSoft %s (SocketID:%d) different version", GetRemoteIP().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("### KiraMixAutoSoft - %d:%d:%d - %s (SocketID:%d) different version", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID())); Disconnect(); return; } if (bAuthority != m_bAuthority && !isGM()) { printf("[%s] Disconnected. Reason: WALL HACK", GetName().c_str()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - WALL HACK | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); return; } m_tGuardAliveExpiryTime = uint32(UNIXTIME); resultGuard Send(&resultGuard); } //} break; case GuardOpCodes::DISCONNECT: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = DISCONNECT ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - DISCONNECT | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::CLIENTNAME_ERROR: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = CLIENTNAME_ERROR ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - CLIENTNAME_ERROR | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::SPEED_HACK: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = SPEED_HACK ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - SPEED_HACK | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::WALL_HACK: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = WALL_HACK ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - WALL_HACK | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::DLL_INJECT: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = DLL_INJECT ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - DLL_INJECT | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::BYPASS: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = BYPASS ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - BYPASS | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::DEBUGGER: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = DEBUGGER ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - DEBUGGER | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::TBL: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = TBL ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - TBL | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::VIRTUAL_MACHINE: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = VIRTUAL_MACHINE ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - VIRTUAL_MACHINE | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::UGLY_PROCESS: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = UGLY_PROCESS ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - UGLY_PROCESS | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::UGLY_DRIVER: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = UGLY_DRIVER ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - UGLY_DRIVER | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::MULTI_CLIENT: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = MULTI_CLIENT ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - MULTI_CLIENT | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; case GuardOpCodes::TIMEOUT: printf("### KiraMixAutoSoft Disconnected = %s | SocketID = %d | Req = TIMEOUT ", GetName().c_str(), GetSocketID()); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - TIMEOUT | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; default: printf("[KiraMixAutoSoft - Unknown Subopcode | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft - Unknown Subopcode | %d:%d:%d ] Disconnected = %s | SocketID = %d | Req = Default(%d) ", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID(), subOpcode)); Disconnect(); break; }}#pragma endregion#pragma region CUser::CheckStoneSoftGuardAlive()/*** @brief Checks the StoneSoftGuard ALIVE packets are being received to understand* whether our Guard is alive at the client side.* This also starts the StoneSoftGuard if enabled.*/void CUser::CheckStoneSoftGuardAlive(){ if (!g_pMain->m_bisGuardActive) return; if (!isInGame()) return; if (isStoneSoftGuardAlive == false) { m_tGuardAliveExpiryTime = uint32(UNIXTIME); isStoneSoftGuardAlive = true; } else if (isStoneSoftGuardAlive == true) { if (m_tGuardAliveExpiryTime != 0 && (uint32(UNIXTIME) - m_tGuardAliveExpiryTime) >= StoneSoft_GUARD_CHECK_ALIVE_PERIOD) { DateTime time; SendChat(ChatType::ALLIANCE_CHAT, string_format("%s was disconnected since no KiraMixAutoSoft Alive packet was received in %d seconds", GetName().c_str(), StoneSoft_GUARD_CHECK_ALIVE_PERIOD), "KiraMixAutoSoft SYSTEM"); g_pMain->WriteCheatLogFile(string_format("[KiraMixAutoSoft Alive - TIMEOUT | %d:%d:%d ] Disconnected = %s | SocketID = %d", time.GetHour(), time.GetMinute(), time.GetSecond(), GetName().c_str(), GetSocketID())); printf("%s was disconnected since no KiraMixAutoSoft Alive packet was received in %d seconds", GetName().c_str(), StoneSoft_GUARD_CHECK_ALIVE_PERIOD); Packet result(WIZ_KIRAMIX_GUARD, uint8(GuardOpCodes::DISCONNECT)); Send(&result); Disconnect(); } }}#pragma endregionhttps://prnt.sc/iea1w5 Dll Console Kontrol.http://prntscr.com/ieb24e Files durumu.http://prntscr.com/ieb9yd Opcode çalışıyo ama baska birşey mi eksik bilmiyorum. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş
KODevelopers 438 #2 Konu Sahibi Şubat 14, 2018 tarihinde gönderildi void CStoneSoftGuardDLL::SendPacket(BYTE* ptrPacket,SIZE_T tsize){ __asm { mov ecx, KO_PKT mov ecx, DWORD ptr ds:[ecx] push tsize push ptrPacket call KO_SND }}Burası eksik herhalde asm bakmam lazım bakarım. Mesajı raporla İletiyi paylaş Link to post Sitelerde Paylaş