Senin, 14 Februari 2011
CARA MEMBUAT CHEAT ENGINE
PART 1
Banyak yang penasaran bagaimana
cara membuat cheat engine sendiri, sebenarnya sudah banyak situs web
yang membahas bagaimana cara membuat CE sendiri dalam bahasa Inggris
tentunya. So bagi yang masih penasaran, saya coba terjemahkan dalam
bahasa Indonesia tentunya… Cuman biar bagaimanapun, ini adalah teknik
editing CE yang paling sederhana dan belum tentu dapat menembus GG rev
terbaru.
Untuk lebih jelasnya bagaimana membuat CE sendiri,
silahkan baca dan pahami ulasan berikut.
Bahan untuk membuat Cheat
Engine ( kaya bahan makanan aja yah…)
1. Windows Driver Development Kit
2. Actual Search And Replace (ASR)
3. Borland Delphi 7
4.Source CE 5.3 (darkbyte) or terserah
Untuk Borland Delphi 7 dan
Windows DDK saya sarankan untuk meminjam dari rental karena kedua file
ini cukup besar
Setelah mendapatkan bahan-bahan dan melakukan
instalasi, bukalah source cheat engine kalian
Lakukan
langkah-langkah berikut ini
1 a. Carilah file driver.dat yang berada
pada folder utama sorce CE, kemudian buka dengan menggunakan
notepad/wordpad/edit plus.
lakukan perubahan pada :
CEDRIVER53
—> Whatever1
DBKProcList53 —> Whatever2
DBKThreadList53
—> Whatever3
dbk32.sys —> Whatever.sys
Catatan :
Whatever dapat diganti terserah sesuai dengan keinginan kalian
1
b. Buka folder DBKKernel kemudian carilah file DBKDrvr.c dan bukalah
menggunakan notepad. Carilah kata “hideme” yang diawali dengan tanda
“//” kemudian hapuslah tanda “//” nya
1 c. Carilah file “SOURCES”
dan “sources.ce” pada folder DBKKernel kemudian bukalah menggunakan
notepad. Gantilah kata DBK32 dengan kata Whatever (kata yang sama
seperti yang digunakan untuk mengganti nama DBK32.sys)
1 d.
Compile whatever.sys dengan windows ddk. Jalankan terlebih dahulu
windows XP Free Build Environment
Start > All Programs >
Development Kits > Windows DDK > Build Environment > Windows XP
> Windows XP Free Build Environment
kemudian ketikkan “cd”
setelah
itu ketikkan lagi cd (directory folder DBKKernel)
misalkan “cd
D:cheatengineDBKKernel” (enter)
Ketikkan “ce” diikuti (enter)
catatan
: tanda kutip jangan disertakan
Apabila benar maka akan terlihat
“7 files compiled, 1 executable built”, berarti tugas anda sudah benar
Jika
masih muncul error, maka ulangi langkah-langkah tersebut diatas kembali
sampai tidak ditemukannya error. Sampai saat ini anda telah berhasil
membuat 20% Cheat Engine sendiri.
PART 2
Setelah
menyelesaikan semua tahapan di awal, kini saatnya untuk melakukan
editing pada string yang menyebabkan CE dikenali oleh GG.
3 a.
Bukalah file dbk32.dpr yang berada dalam folder dbk32 dengan menggunakan
delphi. Kemudian pilih menu view>Project Manager klik lah pada
dbk32.dll sehingga muncul dbk32function. Lakukan double klik pada file
tersebut kemudian carilah :
CEDRIVER53 = Whatever1 (same thing as
CEDRIVER53)
DBKProcList53 = Whatever2 (same thing as DBKProcList53)
DBKThreadList53
= Whatever3 (same thing as DBKThreadList53)
dbk32.sys = Whatever.sys
Gambar
6
Simpan dan tutup delphi nya
3 b. Bukalah ASR (Actual
Search and Replace), Pilih menu File > Settings > Editor. Carilah
file “delphi32.exe” dan OK (umumnya file delphi32.exe berada pada
“C:Program FilesBorlandDelphi7Bindelphi32.exe”
Gambar 7
Kemudian
pilih tab ‘Option’, pilih “include subfolders”.
Masukkan pada kotak
“Masks” –> newkernelhandler.pas; DBK32funcionts.pas; DBK32.dpr
Pilih
lah folder utama cheat engine pada kotak “Path”, dan pilih “whole
words” yang berada dibawah kotak path
Gambar 8
carilah string
berikut ini dan ubahlah (lebih baik di copy dalam notepad terlebih dulu,
karena di bagian berikutnya akan digunakan lagi)
VQE = Whatever4
OP
= Whatever5
OT = Whatever6
NOP = Whatever7
RPM = Whatever8
WPM
= Whatever9
VAE = Whatever10
CreateRemoteAPC = Whatever11
ReadPhysicalMemory
= Whatever12
WritePhysicalMemory = Whatever13
GetPhysicalAddress =
Whatever14
GetPEProcess = Whatever15
GetPEThread = Whatever16
ProtectMe
= Whatever17
UnprotectMe = Whatever18
IsValidHandle = Whatever19
GetCR4
= Whatever20
GetCR3 = Whatever21
SetCR3 = Whatever22
GetSDT =
Whatever23
GetSDTShadow = Whatever24
setAlternateDebugMethod =
Whatever25
getAlternateDebugMethod = Whatever26
DebugProcess =
Whatever27
StopDebugging = Whatever28
StopRegisterChange =
Whatever29
RetrieveDebugData = Whatever30
GetThreadsProcessOffset =
Whatever31
GetThreadListEntryOffset = Whatever32
GetDebugportOffset
= Whatever33
GetProcessnameOffset = Whatever34
StartProcessWatch =
Whatever35
WaitForProcessListData = Whatever36
GetProcessNameFromID
= Whatever37
GetProcessNameFromPEProcess = Whatever38
GetIDTCurrentThread
= Whatever39
GetIDTs = Whatever40
MakeWritable = Whatever41
GetLoadedState
= Whatever42
ChangeRegOnBP = Whatever43
DBKSuspendThread =
Whatever44
DBKResumeThread = Whatever45
DBKSuspendProcess =
Whatever46
DBKResumeProcess = Whatever47
KernelAlloc = Whatever48
GetKProcAddress
= Whatever49
Protect2 = Whatever50
test = Whatever51
useIOCTL =
Whatever52
DBKGetDC = Whatever53
Selesai replace detected
string, pembuatan CE sendiri telah selesai 30%
PART 3
3 d. Langkah selanjutnya adalah
mengubah nama file newkernelhandler.pas, DBK32functions.pas, and
DBK32.dpr menjadi nama baru. Bukalah ketiga file tersebut dengan
menggunakan Delphi, dan lakukan save as
DBK32.dpr = Whatever.dpr
(simpan pada folder dbk32 folder)
DBK32functions.pas =
Whateverfunctions.pas (simpan pada dbk32 folder)
NewKernelHandler.pas
= Whateverhandler.pas (simpan pada folder utama Cheat Engine)
3
e. Gunakan ASR untuk mengganti nama berikut pada semua file caranya Set
“Mask” as *.* dan pilih “Include Subfolders”
dbk32.sys =
whatever.sys
dbk32.dll = whatever.dll
Gambar 9
3 f.
Bukalah file whatever.dpr menggunakan Delphi kemudian lakukan compile
pada whatever.dll.
pilih menu Project > Compile whatever.
Apabila
muncul “[Warning]” or “[Hint]” berarti sudah benar tapi jika muncul
“[Error]” berarti harus melakukan checking ulang pada tiap langkah
Gambar
10
Jika tidak muncul error maka file whatever.dll akan berada pada
folder utama cheat engine
3 g. Membuat CEHook
Gunakan ASR,
carilah “myhook” (Include subfolders).
myhook = Whatever54
ubahlah
“myhook” hanya dalam file CEHook.dpr dan hypermode.pas
Bukalah file
CEHook.dpr dengan menggunakan Delphi (dalam folder CEHook)
berikan
comment out pada “system” bawah uses (untuk memberikan comment out
tambahkan tanda “//” sebelum tulisan “system”) kemudian lakukan compile
lagi.
Gambar 11
3 h. Membuat Stealth masuklah pada folder
stealth dan bukalah file stealth.dpr kemudian compile lah
3 i.
Ubahlah nama NewKernelHandler and CeFuncProc
Bukalah file
cheatengine.dpr dari folder utama Cheat Engine, kemudian pilih menu
“Project Manager” dan bukalah file ‘NewKernelHandler.pas’ &
‘CeFuncProc.pas’.
pilihlah menu File > Save As dan simpanlah
pada directory utama cheat engine
NewKernelHandler.pas –>
WhateverHandler.pas (Pilihlah replace saat melakukan penyimpanan)
CeFuncProc.pas
= Whatever55.pas
simpan dan tutup borland delphi
Gunakan
ASR dan carilah “NewKernelHandler” & “CeFuncProc” (Jangan pilih
“include subfolders” dan Mask pada *.*)
NewKernelHandler –>
WhateverHandler (Ubah semua file kecuali pada file
“NewKernelHandler.pas”)
CeFuncProc = Whatever55
Sampai pada
langkah ini, berarti mencapai 60% penyelesaian pembuatan Cheat Engine
sendiri
PART 4
3 j. Ubahlah nilai
dari strings (Hex Values)
Nilai yang harus diganti adalah 00400000 ,
7FFFFFFF , 80000000 dengan nilai yang lain. Sebagai alat bantu
pergunakanlah calculator (Start > All Programs > Accesories >
Calculator) kemudian pilih menu View > Scientific > Hex
Gambar
12
Masukkan angka ‘00400000′ (HEX) kemudian tambahlah dengan
bilangan tertentu (Jangan lakukan pengurangan)
Gunakan ASR dan
gantilah semua nilai lama dengan nilai yang baru (Include Subfolders dan
Mask pada *.*)
Berikut adalah contoh penggunaan dengan
menambahkan 5 pada semuanya
00400000 = 00400005
7FFFFFFF =
80000004
80000000 = 80000005
3 k. Gunakan ASR untuk merubah
kata yang berada pada CheatEngine GUI (Do NOT include subfolders)
nextscanbutton
= Whatever56
scanvalue = Whatever57
scanvalue2 = Whatever58
ScanType
= Whatever59
VarType = Whatever60
newscan = Whatever61
ScanText
= Whatever62
Kemudian bukalah file ‘MainUnit.pas’ menggunakan
Delphi dan cari:
if messagedlg(’Do you want to try out the
tutorial?’,mtconfirmation,[mbyes,mbno],0)=mryes then
shellexecute(0,’open’,'Tutorial.exe’,”,”,sw_show
);
Ubahlah “Tutorial” dengan “Project1″ sehingga menjadi :
if
messagedlg(’Do you want to try out the
tutorial?’,mtconfirmation,[mbyes,mbno],0)=mryes then
shellexecute(0,’open’,'Project1.exe’,”,”,sw_show
);
Simpan dan tutuplah delphi
Kemudian bukalah file
“OpenSave.pas” dan carilah:
7 “Tutorial.exe”:Application
processname
Ubahlah “Tutorial” menjadi “Project1″ sehingga
menjadi:
7 “Project1.exe”:Application processname
Kemudian
bukalah file “openSave.pas” dan carilah: (khusus untuk Cheat Engine
5.3)
if <> ‘WhateverEngine’ then
raise
exception.Create(’This is not a valid Whatever Engine table’);
Berikan
comment out sehingga menjadi
//if <>’WhateverEngine’ then
//raise
exception.Create(’This is not a valid Whatever Engine table’);
Hal
ini digunakan untuk mengijinkan membuka Cheat Tables(.CT), yang tidak
di simpan oleh engine mu kemudian simpan dan tutuplah.
3 l.
Gunakan ASR (Do NOT include subfolders dan Mask is *.pas), Ubahlah :
CheatEngine
= WhateverEngine
cheat engine = Whatever Engine
3 m.
Konfigurasi Cheat Engine GUI
Bukalah file “cheatengine.bpg” yang
berada pada folder utama Cheat Engine. Gunakan Project Manager, bukalah
“MainUnit” yang berada dibawah “Cheatengine.exe”, kemudian lakukan
double klik sehingga Cheat Engine GUI akan muncul
Gambar 13
Cailah
kata “scan type” dan “value type” yang berwarna abu-abu. klik pada
textbox untuk mengecek apakah sudah benar proses perubahan strings.
Setelah melakukan klik pada textbox lihatlah pada layar kiri di bawah
under Object Treeview dan Object Inspector. Apabila benar maka
Whatever59 akan tersorot dan carilah name pada Object Inspector yang
juga harus berisi Whatever59 juga. Apabila sampai pada langkah ini
benar, lakukan pengecekan pada ‘value type’
Akhirnya, klik pada
label “ProtectMe2″ dan “crash me” yang berada didekat pointer merah pada
GUI. Klik dan carilah ‘caption’ pada ‘Object Inspector’ kemudian
hapuslah kata yang ada disitu, jangan klik kemudian tekan delete karena
kita masih membutuhkannya hanya tanpa caption.
3 n. Compiling
cheatengine.exe
Pilih menu View>project manager dan klick compile
cheatengine.exe, yakinkan bahwa ‘Cheatengine.exe’ terpilih dan bukan
cheatengine.DEU, cheatengine.NLD, atau cheatengine.RUS
Gambar 14
Kemudian
minimized Delphi dan masuklah pada folder utama Cheat Engine, kemudian
bukalah notepad dan simpan dengan nama “trainerwithassembler.exe”.
Kembalilah pada Delphi dan Compile
Setelah melakukan compile,
kamu akan mendapatkan errors, contoh
[Error]
autoassembler.pas(531): Undeclared identifier: ‘KernelAlloc’
Hal
ini berarti KernelAlloc harus diubah sesuai dengan nama pada pengubahan
di replace detected string (bag 1). Setelah memperbaikinya, lakukan
compile ulang sampai kamu tidak menemukan error lagi
Sampai pada
langkah ini 80% pembuatan Cheat Engine sendiri telah berhasil
PART PENYELESAIAN
4 a. Langkah terakhir
adalah melakukan compile file2 yang dibutuhkan oleh UCE
Buka file
“systemcallsignal.dpr” pada folder ‘SystemcallRetriever’ –> compile
Buka
file “Systemcallretriever.dpr” pada folder ‘SystemcallRetriever’ –>
compile (Akan muncul beberapa error, ubahlah sesuai dengan yang ada pada
replace detect string (bag 1)
Buka file “Kernelmoduleunloader.dpr”
pada sub folder ‘dbk32 kernelmodule unloader’ –> compile
4 b.
Buatlah copy file source sebelum melanjutkan, karena ada kemungkinan
gagal
Bukalah file “cheatengine.bpg” dari directory utama,
kemudian “Save As” dengan nama whateverengine.bpg pada direktori utama
cheat engine kemudian tutup.
Kemudian bukalah kembali
“cheatengine.bpg” dari direktori utama dan pilih menu view>project
manager kemudian double klik pada “cheatengine.exe”. Setelah itu klik
kanan pada “cheatengine.exe” dan pilihlah “View Source”. Simpanlah
“cheatengine.dpr” menjadi “whateverengine.dpr” dan compile lah dan akan
mendapatkan “WhateverEngine.exe” yang berada pada folder utama cheat
engine (File exe dari cheat engine kalian)
(Nama “cheatengine.exe”
pada Project Manager harusnya berubah menjadi “whateverengine.exe”.)
4
c. Compile program berikut dengan menggunakan delphi:
–
Pscan.dll (Pscan.dpr dalam folder injectedpointerscan)
- emptydll.dll
(emptydll.dpr dalam folder SystemcallRetriever)
- emptyprocess.exe
(emptyprocess.dpr dalam folder SystemcallRetriever)
-
systemcallsignal.exe (systemcallsignal.dpr dalam folder
SystemcallRetriever)
- Systemcallretriever.exe
(Systemcallretriever.dpr dalam folder SystemcallRetriever) – apabila ada
error sesuaikan dengan bagian replace detect strings (bag1)
-
Kernelmoduleunloader.exe (Kernelmoduleunloader.dpr dalam folder
“dbk32Kernelmodule unloader”)
- Project1.exe (Project1.dpr dalam
folder Tutorial)
4 d. Files
Setelah mendapatkan semua files
yang dibutuhkan, maka buatlah 1 folder baru dan pisahkan file-file
berikut:
whateverengine.exe
driver.dat
whatever.sys
whatever.dll
stealth.dll
cehook.dll
PScan.dll
systemcallsignal.exe
systemcallretriever.exe
kernelmoduleunloader.exe
emptydll.dll
emptyprocess.exe
Project1.exe
Yeah,
akhirnya selesai sudah perjalanan pembuatan CE sendiri, yah mungkin
masih bisa dibilang sangat klasik sekali CE yang dihasilkan, tapi bisa
dimodifikasi sesuai keinginan sendiri jika ingin membuat UCE. Yah perlu
perjuangan yang besar dan mencoba-coba serta membaca string apa yang
kini sudah terdeteksi oleh GG. Akhir kata saya ucapkan selamat mencoba.
Langganan:
Posting Komentar (Atom)
0 Komentar:
Posting Komentar