W32Dasm 8.93

oleh

CHuPaCaBRa


Tutorial saya kali ini akan menjelaskan sedikit mengenai penggunaan W32Dasm 8.93 sebagai salah satu ToolZ yang juga sering digunakan oleh para Kraker.

Berbeda dengan SoftICE yang digunakan sebagai debugger, W32Dasm adalah program Disassembler yaitu program yang menampilkan listing program ( disebut 'dead listing' ) dari program target tertentu. Tentu saja untuk mengerti listing program yang tertulis, anda harus menguasai bahasa Assembly.

Berikut akan saya terangkan beberapa fasilitas W32Dasm yang sering digunakan untuk kraking :

- Membuka File

Untuk merubah suatu file tertentu, anda dapat menggunakan menu Disassembler - Open File to Disassemble.Beberapa format program yang dapat dibaca oleh W32Dasm adalah :

Setelah anda memilih program yang menjadi target anda, dalam beberapa saat, W32Dasm akan merubah file target tersebut menjadi sebuah listing program.

- Menyimpan file

Setelah file target selesai di-disassembly, anda dapat menyimpannya dengan menu Disassembler - Save Disassembly Text File and Create Project File. Listing program tersebut akan disimpan ke dalam 2 buah file *.alf dan *.wpj.

Sebagai catatan, dalam menggunakan W32Dasm, sebaiknya anda memperhatikan besar file target anda karena hasil dari Disassembly tersebut bisa cukup besar. Sebagai gambaran, sebuah file target yang besarnya 500 KB akan menghasilkan sebuah file alf ( *.alf ) sekitar ± 8 MB dan file wpj ( *.wpj ) dengan besar sekitar 300 KB.

- Interface W32Dasm

Pada bagian Assembly Code Listing, anda akan melihat berbagai baris - baris perintah dalam kode Assembly seperti ini :

:00401000   0410 	add al, 10

Keterangan :

Selain itu juga terdapat keterangan seperti berikut ini :

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401070(C)
|

Maksud dari keterangan di atas adalah kelompok perintah di bawahnya dijalankan setelah adanya Unconditional / Conditional Jump dari alamat 00401070. Untuk menuju ke alamat tertentu, anda dapat menggunakan menu Goto - Goto Code Location dan memasukan alamat yang dituju.

- HotKey

Ada beberapa HotKey yang bisa digunakan pada W32Dasm yaitu :

  1. 'Panah Ke Kanan' -- bila ditekan pada perintah Call, W32Dasm akan langsung menuju Offset tempat Rutin Call tersebut berada.
  2. 'Panah Ke Kiri' -- bila ditekan pada perintah Ret, maka W32Dasm akan kembali ke prosedur pemanggil Rutin tersebut.
  3. Ctrl + S -- langsung menuju tempat awal Code program.
  4. F10 -- menuju Program Entry Point
  5. F12 -- menuju ke suatu lokasi Code tertentu

- String Data References

Fungsi ini adalah fungsi yang cukup penting yang dimiliki oleh W32Dasm. Fungsi String Data References ini akan menampilkan daftar String yang ada dalam program target yang bersangkutan. Fusngi ini berguna kalo ingin melihat lokasi procedure yang memanggil 'nag message' atau sejenisnya. Dengan mengetahui lokasinya, kita dapat mengetahui secara tepat lokasi di program tersebut yang dapat di-patch untuk menghilangkan 'nag message'. Tentu saja fungsi ini tidak hanya melulu untuk menghilangkan 'nag message', fungsi ini bisa digunakan untuk keperluan lain yang menyangkut Data - data String.

- Penutup

Keterangan di atas hanyalah sebagian dari kemampuan W32Dasm. Program ini sebenarnya juga mampu melakukan 'live debuging' seperti layaknya SoftICE, tetapi bagi yang terbiasa dengan SoftICE, akan merasa kebingungan melihat interface-nya. Untuk lebih memahami kegunaan W32Dasm ini, aku sarankan untuk membaca tutorial - tutorial Kraking lain yang menggunakan W32Dasm karena untuk mengerti penggunaannya - IMHO - program ini harus dicoba langsung.

 

chupacabra@softhome.net

© Mei 1999