Slaughter
S
[*]Visual C++ 'da Empty proje açalım ve projenin ayarlarını .dll olarak ayarlayalım.
[*]Kodları .h olaranları header, .cpp olanları Source yazın.
[*]Direk yazsanız hatasız devam edersiniz eğer hata alırsanız yaptığınız ayarlar ile alakalıdır. Hata alanlar özelden görüntü atabilirler.
[*]Direk dosyayı indirmek istiyenler link aşağıdadır ve cshell.dll 'yi WolfteamTS/Img klasörüne atınız.
[*]Projeyi build ettikten sonra Envanter - Arge.arge 'yi ve inject.mix ' i WolfteamTS klasörüne atınız.
[*]Oyun içi ve envanter içi aah alırsanız bunu çözmesi size kalmış envanteri göstermesi bize.
[font=Verdana, Arial, sans-serif]
KODLAR ; [/FONT]
[font=Verdana, Arial, sans-serif]
[font=Verdana, Arial, sans-serif]
func.h
Kod:
Kod:
[/FONT][/FONT]
[*]
silahvalue.cpp
Kod:
Kod:
[*]
silahayar.cpp
Kod:
Kod:
[*]
[font=Verdana, Arial, sans-serif][font=Verdana, Arial, sans-serif][font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]
[/FONT]
[*]Kodları .h olaranları header, .cpp olanları Source yazın.
[*]Direk yazsanız hatasız devam edersiniz eğer hata alırsanız yaptığınız ayarlar ile alakalıdır. Hata alanlar özelden görüntü atabilirler.
[*]Direk dosyayı indirmek istiyenler link aşağıdadır ve cshell.dll 'yi WolfteamTS/Img klasörüne atınız.
[*]Projeyi build ettikten sonra Envanter - Arge.arge 'yi ve inject.mix ' i WolfteamTS klasörüne atınız.
[*]Oyun içi ve envanter içi aah alırsanız bunu çözmesi size kalmış envanteri göstermesi bize.
[font=Verdana, Arial, sans-serif]
KODLAR ; [/FONT]
[font=Verdana, Arial, sans-serif]
[font=Verdana, Arial, sans-serif]
func.h
Kod:
Kod:
[/FONT][/FONT]
Kod:
#pragma once
void WepCount();
void HookedInventory();
// { };
#pragma pack(1)
struct WTInventoryItem
{
DWORD ptr;
unsigned char unk[2];
short TimeLeft;
char _unk1[2];
char* unknown;
short WeaponID;
char _unk2[3];
}extern Envanteritemleri[500];
extern DWORD envanterdevam;
extern DWORD silahsubContinue;
extern WORD silahvalueleri[418];
silahvalue.cpp
Kod:
Kod:
Kod:
#include <Windows.h>
#include "func.h"
#pragma pack(1) //without this, WTInventoryItem will have padding .
WORD silahvalueleri[418] =
{ 7100, 7101, 7102, 5005,
5004, 5013, 5002, 3042,
3035, 3002, 3044, 3099,
3098, 3064, 3065, 3049,
3100, 3080, 3115, 3052,
};
WTInventoryItem Envanteritemleri[500] = { 0 };
DWORD envanterdevam;
DWORD silahsubContinue;
__declspec(naked) void HookedInventory()
{
_asm
{
lea esi, Envanteritemleri
mov cx, [eax + esi]
add eax, 2
jmp dword ptr[envanterdevam]
}
}
__declspec(naked) void WepCount()
{
_asm
{
mov eax, 418
jmp dword ptr[silahsubContinue]
}
}
silahayar.cpp
Kod:
Kod:
Kod:
#include <Windows.h>
#include <iostream>
#include <tchar.h>
#include <tlhelp32.h>
#include <psapi.h>
#include <fstream>
#include <sstream>
#include <string>
#include "func.h"
#include <stdio.h>
#pragma comment( lib, "psapi.lib" )
bool compare(PBYTE sig, PCHAR mask, PBYTE adr)
{
for (unsigned int i = 0; i < strlen(mask); i++)
if (mask[i] == 'x' && sig[i] != adr[i]) return false;
return true;
}
MODULEINFO GetModuleInfo(char *szModule)
{
MODULEINFO modinfo = { 0 };
HMODULE hModule = GetModuleHandle(szModule);
if (hModule == 0)
return modinfo;
GetModuleInformation(GetCurrentProcess(), hModule, &modinfo, sizeof(MODULEINFO));
return modinfo;
}
DWORD baseadresi()
{
MODULEINFO base = GetModuleInfo("cshell.dll");
DWORD dw_base = (DWORD)base.lpBaseOfDll;
return dw_base;
}
DWORD arama(PBYTE sig, PCHAR mask, DWORD dwBase, DWORD dwLen, int iIndex)
{
int cIndex = 0;
if (!dwBase || !mask || !dwLen || !sig) return false;
for (PBYTE i = (PBYTE)dwBase; i != (PBYTE)(dwBase + dwLen); i++)
if (compare(sig, mask, i))
if (iIndex == cIndex++) return (DWORD)i;
return false;
}
DWORD hookreyiz(BYTE *src, BYTE *dst, int len)
{
if (!src || !dst || !len) return 0;
DWORD dwOld;
VirtualProtect(src, len, PAGE_EXECUTE_READWRITE, &dwOld);
src[0] = 0xE9;
*(DWORD*)((DWORD)src + 1) = (DWORD)(dst - (DWORD)src) - 5;
if (len > 5) for (int i = 5; i < len; i++) src[i] = 0x90;
return ((DWORD)src + len);
}
int unknown = 0;
void envanteraktif()
{
int wepid = 0;
for (int i = 0; i < 417; i++){
Envanteritemleri[i].WeaponID = silahvalueleri[wepid++];
Envanteritemleri[i].unknown = NULL;
Envanteritemleri[i].TimeLeft = 1406;
}
PBYTE lpenvanter = NULL;
DWORD envantertmp = arama((PBYTE)"CS_IN_ITEMLIST_ACK", "xxxxxxxxxxxxxxxxxxx", baseadresi(), 7720000, 0);
if (envantertmp)
{
BYTE InventoryFuncSig[5] = { 0x68, 0x00, 0x00, 0x00, 0x00 };
*(DWORD*)&InventoryFuncSig[1] = envantertmp;
lpenvanter = (PBYTE)arama(&InventoryFuncSig[0], "xxxxx", baseadresi(), 5000000, 0);
}
PBYTE silahsub = (PBYTE)arama((PBYTE)"\xFF\x05\x00\x00\x00\x00\x0F\xB6\xC1\x50\x8D\x8F\x00\x00\x00\x00", "xx????xxxxxx????", (DWORD)lpenvanter, 300, 0);
PBYTE InventorySub = (PBYTE)(arama((PBYTE)"\x8B\x86\x04\x20\x00\x00\x66\x8B\x0C\x30\x83\xC0\x02", "xxxxxxxxxxxxx", (DWORD)lpenvanter, 500, 0) + 6);
if ((DWORD)InventorySub == 6) InventorySub = NULL;
char buf[50] = { 0 };
sprintf_s(buf, "count: %X, set:%X", (int)silahsub, (int)InventorySub);
MessageBoxA(0, "ArgeTeam - Dağılmadan önce son birleşim.", "ibronix - Kaneki - Leuqme",0);
silahsubContinue = hookreyiz(silahsub, (PBYTE)&WepCount, 9);
envanterdevam = hookreyiz(InventorySub, (PBYTE)&HookedInventory, 7);
}
BOOL WINAPI DllMain(HMODULE Modül, DWORD Durum, LPVOID Yer)
{
switch (Durum) {
case DLL_PROCESS_ATTACH:
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)envanteraktif, NULL, 0, NULL);
break;
case DLL_PROCESS_DETACH:
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
}
return TRUE;
}
[*]
[font=Verdana, Arial, sans-serif][font=Verdana, Arial, sans-serif][font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]
Bağlantıları görmek için lütfen
Giriş Yap
[/FONT][/FONT][/FONT]