Home > TIPS & TRICK > Bagaimana membuat kunci generator?

Bagaimana membuat kunci generator?

-===========================-
Pendahuluan
————
Saya tidak mengambil tanggung jawab dari penggunaan informasi ini.
Tutorial ini, adalah untuk pendidikan pengetahuan ONLY.
Hi there, dalam tutorial ini, saya bermaksud untuk mengajarkan cara untuk membuat cantik
keygen sederhana, dari sebuah program bernama W3Filer 32 V1.1.3.
W3Filer adalah pretty good web downloader …
I guess beberapa anda mungkin tahu program.
I `ll menganggap Anda ketahui:

A. Cara menggunakan debugger (dalam hal ini, SoftIce).
B. How to crack, umumnya (mencari perlindungan rutinitas, mereka patch, dsb ..).
C. Cara menggunakan Disassembler (ini dapat membantu).
D. Majelis.
E. Bagaimana kode Turbo Pascal ™.
Tools `Anda perlukan:
A. SoftIce atau 3.00/01 baru.
B.WD32Asm. (Tidak harus).
C. Program W3Filer V1.13 (jika tidak diberikan dalam paket ini), dapat ditemukan di
www.windows95.com I believe.
D. Turbo Pascal (versi APAPUN).
Well, cukup blah blah, let’s go cracking …
Menjalankan W3Filer 32.
J nag screen pops, dan menuntut registrasi (Hmm, ini sux ;-)) Sekarang,
Kami melihat program ini memiliki beberapa jenis nomor seri (Mine is 873977046),
Mari kita menjaga serial diketahui, I bet `ll kami bertemu lagi pada saat kami
dengan debugger.
Nah, sekarang, marilah kita meletakkan nama dan dummy reg kode …
menetapkan BP di GetDlgItemTextA, dan tekan OK.
Pop kami di GetDlgItemTextA, Lets menemukan pendaftaran rutin …
I `ll menyimpan pekerjaan Anda, pendaftaran rutin ini adalah:
: 00404DB2 8D95A8FAFFFF lea edx, dword ptr [ebp + FFFFFAA8]
: 00404DB8 52 push edx —> nama pengguna Anda di sini.
: 00404DB9 E80B550000 panggilan 0040A2C9 —> Registrasi rutin.
: 00404DBE 83C408 add esp, 00000008 —> Dunno exactly what is it.
: 00404DC1 85C0 test eax, eax —> Boolean identifier, 0 jika
: 00404DC3 7D17 jge 00404DDC —> registrasi gagal, 1 jika
OK.
Well, Mari kita masukkan CALL 40A2C9, dan melihat apa yang di dalamnya:
(Silakan baca komentar saya pada kode).
* Dirujuk oleh CALL at Addresses:
|: 00404DB9,: 00407F76
|
: 0040A2C9 55 push ebp
: 0040A2CA 8BEC mov ebp, esp
: 0040A2CC esp 81C4B0FEFFFF menambahkan, FFFFFEB0
: 0040A2D2 53 push ebx
: 0040A2D3 56 push esi
: 0040A2D4 57 push edi
: 0040A2D5 8B5508 mov edx, dword ptr [ebp 08]
: 0040A2D8 8DB500FFFFFF lea esi, dword ptr [ebp + FFFFFF00]
: 0040A2DE 33C0 xor eax, eax
: 0040A2E0 EB16 jmp 0040A2F8
* Dirujuk oleh (U) atau nconditional © onditional Langsung di Alamat:
|: 0040A2FB ©
|
: 0040A2E2 0FBE0A movsx ecx, byte ptr [edx] —-> Inilah yang Mulai
menarik bagian.
: 0040A2E5 83F920 CMP ecx, 00000020 —-> ECX adalah saat
char dalam nama pengguna, Hmm, 20h = ” …
: 0040A2E8 740D je 0040A2F7 —-> Mari kita lihat,
: 0040A2EA 8A0A mov cl, byte ptr [edx] —-> umumnya, semua ini lingkaran
tidak, akan menyalin
nama pengguna dari
[EDX], ke [ESI], tanpa spasi!
(Perlu diingat ini!).
: 0040A2EC 880C06 mov byte ptr [esi + eax], cl
: 0040A2EF 42 inc edx
: 0040A2F0 40 inc eax
: 0040A2F1 C6040600 mov byte ptr [esi + eax], 00
: 0040A2F5 EB01 jmp 0040A2F8
* Dirujuk oleh (U) atau nconditional © onditional Langsung di Alamat:
|: 0040A2E8 ©
|
: 0040A2F7 42 inc edx
* Dirujuk oleh (U) atau nconditional © onditional Langsung di Alamat:
|: 0040A2E0 (U),: 0040A2F5 (U)
|
: 0040A2F8 803A00 CMP byte ptr [edx], 00
: 0040A2FB 75E5 jne 0040A2E2 —————-> ini adalah lingkaran, kami mendapat
what it does,
Mari kita lanjutkan pelacakan
kode …
: 0040A2FD 56 push esi ——–> Nama pengguna paksa, dalam rangka
untuk
It’s Upcase chars.
* Untuk Referensi: USER32.CharUpperA, Ord: 0000h
|
: 0040A2FE Panggil E80F330000 Pengguna! CharUpper —> Setelah itu, kami dalam nama
huruf besar.
: 0040A303 56 push esi —–> kami atas nama dalam kasus di sini.
* Untuk Referensi: cw3220mt._strlen, Ord: 0000h
|
: 0040A304 E86F300000 Call 0040D378 —> Ini adalah nama panjang kami.
: 0040A309 59 pop ecx
: 0040A30A 8BC8 mov ecx, eax —> ECX = Panjang.
: 0040A30C 83F904 CMP ecx, 00000004 —> Length> = 4 (MUST).
: 0040A30F 7D05 jge 0040A316 —> Mari kita pergi ke alamat ini …
: 0040A311 83C8FF atau eax, FFFFFFFF
: 0040A314 EB67 jmp 0040A37D
* Dirujuk oleh (U) atau nconditional © onditional Langsung di Alamat:
|: 0040A30F ©
|
: 0040A316 33D2 xor edx, edx
: 0040A318 33C0 xor eax, eax
: 0040A31A 3BC8 CMP ecx, eax
: 0040A31C 7E17 jle 0040A335 —> (Tidak penting, yang lain hanya berguna
memeriksa).
================================================== =================================
============ DARI DISINI DAN AKTIF, YANG PENTING KODE, PAY PERHATIAN ==================
================================================== =================================
Satu hal sebelum kita melanjutkan, EDX = 00000000h seperti yang kita masukkan ke petunjuk berikutnya.
* Dirujuk oleh (U) atau nconditional © onditional Langsung di Alamat:
|: 0040A333 ©
|
: 0040A31E 0FBE1C06 movsx ebx, byte ptr [esi + eax] —> EBX <— char user
nama, offset EAX.
: 0040A322 C1E303 shl ebx, 03 —–> Hmm, it’s the shl oleh char 03h …
(Ingat bahwa).
: 0040A325 0FBE3C06 movsx edi, byte ptr [esi + eax] —> Sekarang IPUS <— di Char
nama pengguna, offset EAX.
: 0040A329 0FAFF8 imul edi, eax —–> Penyalahgunaan mengalikan yang char oleh
offset dalam nama pengguna! (Ingat bahwa).
: 0040A32C 03DF menambahkan ebx, edi —–> Menambahkan hasilnya ke EBX (Itulah
Dimeriami (Ding Dong =)).
: 0040A32E 03D3 add edx, ebx —–> EDX = EDX + EBX! – Ini adalah CORE
rutin ini pendaftaran!
: 0040A330 40 inc eax —–> Tingkatkan EAX oleh satu (selanjutnya char).
: 0040A331 3BC8 CMP ecx, eax
: 0040A333 7FE9 jg —-> 0040A31E Jika ECX <EAX kemudian, kami meninggalkan
lingkaran.
* Dirujuk oleh (U) atau nconditional © onditional Langsung di Alamat:
|: 0040A31C ©
|
: 0040A335 A120674100 mov eax, dword ptr [00416720] —> kasa, What’s in
disini ?????
: 0040A33A C1F803 sar eax, 03 ———> WAIT! Silakan ketik pemelihara kuda ‘?
EAX ‘
Nomor ini tidak terlihat dalam EAX
dekat dengan kita?😉
Jika Anda masih don `t understand,
daripada, Ada
kami SERIAL NUMBER! (PLEASE, ambil
waktu Anda, dan periksa oleh
sendiri – don `t trust me!). OK,
sekarang kita tahu,
That it’s blehh EAX oleh 03 (SAR
hampir identik dengan blehh).
: 0040A33D 03D0 add edx, eax ———> Hmm, ia menambahkan hasil dari
lingkaran, dengan nomor seri shr’d oleh 03h
: 0040A33F 52 push edx ——-> Mari kita lanjutkan. (Pada tahap ini, saya
Anda bisa kirim, maka nomor reg, adalah
dalam EDX – hanya bahwa nomor reg
dalam Hex -> That’s how you memasukkannya).
* Kemungkinan StringData Ref Data obj dari -> “% lx”
|
: 0040A340 685EF54000 push 0040F55E
: 0040A345 8D95B0FEFFFF lea edx, dword ptr [ebp + FFFFFEB0]
: 0040A34B 52 push edx
* Untuk Referensi: USER32.wsprintfA, Ord: 0000h
|
: 0040A34C E8E5320000 Call 0040D636 ——-> satu ini, tidak HEX2STR (Takes
nilai dari EDX, dan ternyata ke sebuah hex string).
: 0040A351 83C40C menambahkan esp, 0000000C
: 0040A354 8D8DB0FEFFFF lea ecx, dword ptr [ebp + FFFFFEB0] —–> jenis’ d ecx ‘–
INI adalah nomor reg! Itu sudah cukup bagi kami, sisa dari
kode ini, adalah
hanya untuk membandingkan dengan benar reg kode kita.
: 0040A35A 51 push ecx
* Untuk Referensi: USER32.CharLowerA, Ord: 0000h
|
: 0040A35B E8B8320000 Call 0040D618
: 0040A360 8D85B0FEFFFF lea eax, dword ptr [ebp + FFFFFEB0]
: 0040A366 50 push eax
: 0040A367 FF750C push [ebp 0 C]
* Untuk Referensi: cw3220mt._strcmp, Ord: 0000h
|
: 0040A36A E875300000 Panggil 0040D3E4
: 0040A36F 83C408 add esp, 00000008
: 0040A372 85C0 test eax, eax
: 0040A374 7405 je 0040A37B
: 0040A376 83C8FF atau eax, FFFFFFFF
: 0040A379 EB02 jmp 0040A37D
* Dirujuk oleh (U) atau nconditional © onditional Langsung di Alamat:
|: 0040A374 ©
|
: 0040A37B 33C0 xor eax, eax
* Dirujuk oleh (U) atau nconditional © onditional Langsung di Alamat:
|: 0040A314 (U),: 0040A379 (U)
|
: 0040A37D 5F pop edi
: 0040A37E 5E pop esi
: 0040A37F 5B pop ebx
: 0040A380 8BE5 mov esp, ebp
: 0040A382 5D pop ebp
: 0040A383 C3 ret
Membuat yang sebenarnya keygen
~~~~~~~~~~~~~~~~~~~~~~~~
Kini, setelah saya telah menjelaskan bagaimana program menghitung pendaftaran
kode, Anda dapat menulis sendiri keymaker, tanpa melihat saya kode, atau
saya melihat kode (dalam Turbo Pascal – maaf untuk anda semua pecinta C😉 Berikut waktu).
That’s it, here’s the source of keygen:
Potong disini ——————- —————————– —————-
W3FilerKeygen program;
var
Tombol, SerialNum, EB, ED, angka: Longint;
I, x: Byte;
Nama, KeyHex: String;
mulai
Writeln ( ‘W3Filer32 V1.1.3 Keymaker’);
writeln ( ‘Cracked oleh sakit ^ ^”97 / pemberontak!’);
Write ( ‘Nama Anda:’); Baca (nama)
readln (Nama);
Write ( ‘Serial Number:’);
readln (SerialNum); (Ya, kami memerlukan nomor seri untuk perhitungan!)
Tombol: = 0;
x: = 0;
For I: = 1 ke panjang (Nama) melakukan
mulai
Nama [I]: = upcase (Nama [i]);
Nama Jika [I] <> ”, kemudian mulai
eb: = Ord (Nama [I]) shl 3; (Nama EB = [I] Shl 03h)
Ed: = Ord (Nama [I]); (Nama ED = [I])
ed: = ed * (x); (ED = ED * Offset)
inc (x);
eb: = eb + ed; (ED Tambahkan ke EB)
Key: = Key + EB; (EB Tambahkan ke KEY)
akhir;
akhir;
Key: = Key + (SerialNum blehh 3); (Tambahkan ke SerialNum blehh 03h Kunci)
(Dari sini, ini hanya HEX2STRING -> I `m quite sure it’s
Explaintory diri sendiri, orang lain – pergi dan belajar angka dasar lagi! ;-))
KeyHex :=”;
ulangi
angka: = Key mod 16;
kunci: = tombol div 16;
Jika angka <10 maka KeyHex: = Chr (Digit + Ord (‘0 ‘)) + KeyHex;
Jika angka> 10 maka KeyHex: = Chr (Digit-10 + Ord ( ‘a’)) + KeyHex;
sampai kunci = 0;
writeln ( ‘Kunci Anda:’, KeyHex);
writeln ( ‘Selamat’);
akhir.

Categories: TIPS & TRICK
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: