- Yasaklandı
- #1
Öncelikle C++ İndiriceksiniz :
[*]Visual C++ 'da Empty proje açalım ve projenin ayarlarını .dll olarak ayarlayalım.
[*]Öncelikle CSHELL.DLL Dosyasını wolftü/İmg Klasörüne Atacaksınız.
[*]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.
[*]Oyun içi ve envanter içi aah alırsanız bunu çözmesi size kalmış envanteri göstermesi bize.
[*]
[*]
func.h
[*]
[*]
silahvalue.cpp
[*]
[*]
[font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]silahayar.cpp[/FONT]
[font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]Kod:
[/FONT]
[font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]KOD:
[/FONT]
[*]
[*]
İnject.Mix Kodlama :
[*]
[*]
HMODULE myDll = LoadLibrary("Dosyaadi.dll"); // Dosyaadi.dll inject edeceği dosyanın ismini yazınız, uzantısıyla beraber.
[*]
Bağlantıları görmek için lütfen
Giriş Yap
[*]Visual C++ 'da Empty proje açalım ve projenin ayarlarını .dll olarak ayarlayalım.
[*]Öncelikle CSHELL.DLL Dosyasını wolftü/İmg Klasörüne Atacaksınız.
[*]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.
[*]Oyun içi ve envanter içi aah alırsanız bunu çözmesi size kalmış envanteri göstermesi bize.
[*]
func.h
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:
#include <Windows.h>
#include "func.h"
#pragma pack(1) //Alttaki Silah Valuelerini Editleyerek Bir Çok Silah Ekleyebilirsiniz.
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]
}
}
[*]
[font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]silahayar.cpp[/FONT]
[font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]Kod:
[/FONT]
[font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]KOD:
[/FONT]
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;
}
[*]
İnject.Mix Kodlama :
- Yeni proje açıyoruz ama Empty Project seçeneğini seçiyoruz.
- (Not)Sizden Windows Form , Console , DLL gibi seçenek isterse DLL 'yi seçeceksiniz.
- Source Files 'e main.cpp diye dosya oluşturun. Aşağıdaki kodları yazıyoruz.
- Proje ayarlarına gelerek(Alt+Enter) ayarları aşağıda işaretlediğim gibi yapınız.
- Build ediyoruz.
Kod:
#include <windows.h>
typedef int (*function1_ptr) ();
function1_ptr function1=NULL;
int APIENTRY WinMain(HINSTANCE, HINSTANCE, LPSTR, int) {
HMODULE myDll = LoadLibrary("Dosyaadi.dll"); // İnject edeceği dosyanın adını yazın..dll .exe .png farketmez.
if(myDll!=NULL) {
function1 = (function1_ptr) GetProcAddress(myDll,"function1");
if(function1!=NULL)
function1();
else
exit(4);
FreeLibrary(myDll);
}
else
exit(6);
return 0;
}
[*]
HMODULE myDll = LoadLibrary("Dosyaadi.dll"); // Dosyaadi.dll inject edeceği dosyanın ismini yazınız, uzantısıyla beraber.
[font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]Empty Project seçeceksiniz.[/FONT]
[font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]
[/FONT]
[font=open_sansregular, Tahoma, Verdana, Arial, sans-serif]Burada ilk mavi ile işaretlediğim örnek amaçlıdır. .exe / .asi / .dll / .bat istediğiniz yapın. Yani aktif edecek oyun veya programın istediği uzantı tipinde.[/FONT]
[*][*]