Anda di halaman 1dari 8

INERTIA: Mari belajar Assembly (Dasar-dasar Assembly)

http://saosabcd.blogspot.com/2010/09/mari-belajar-assembly-dasar-dasar...

INERTIA
A blog regarding my life and what i'm up to

EDIT-ME

EDIT-ME

EDIT-ME

Sponsors kaskus
kaskus badge | ktp kaskus

About Me
Gusti Rangga Everyone wants to be the hero. Villains are necessary.

Popular Posts
Mari belajar Assembly (Dasar-dasar Assembly) Dalam mempelajari berbagai teknik teknik Kraking yang ada, seorang Kraker - baik newbie maupun master tak akan terlepas dari Assembly. ...

Fungsi Manajemen Here we go.. sebelum kita mengetahui apa itu fungsi manajemen,ada lebih baiknya dulu kita tau apa yang dimaksud dengan "manajemen"...

Christina Perri cewek dikit gapapa lah,soalnya gua lagi suka kali dengerin lagunya doi hehe

________________________________________ Chr...

1 of 8

7/18/2013 2:20 AM

INERTIA: Mari belajar Assembly (Dasar-dasar Assembly)

http://saosabcd.blogspot.com/2010/09/mari-belajar-assembly-dasar-dasar...

EBP dan ESP adalah "Pointer Register". Kedua Register ini berpasangan dengan Register SS. Apabila ESP ( Stack Pointer ) berpasangan dengan Register SS ( ESP : SS ) maka digunakan untuk menunjuk alamat pada Stack sementara EBP ( Base Pointer ) akan berpasangan dengan Register SS ( EBP : SS ) untuk menunjuk pada alamat memory tempat data. EIP adalah "Index Pointer Register" yang berpasangan dengan CS ( CS : EIP ) untuk menunjuk pada alamat memory tempat perintah selanjutnya yang akan di eksekusi. Oke setelah penjelasan singkat mengenai Register di atas, kita lanjutkan dengan penjelasan mengenai perintah - perintah dasar Assembly. Perintah - perintah di bawah ini, disusun secara Alphabetical Order...... 1. ADD ( ADD Binary Number ) Format ADD Operand1, Operand2 Fungsi Menambahkan Operand1 dengan Operand2, hasilnya akan disimpan di dalam Operand1 Kalimat Matematika Operand1 = Operand1 + Operand2 Contoh MOV EAX, 00000001h ; Lihat perintah MOV ADD EAX, 00000002h ; EAX = 00000001h + 00000002h = 00000003h 2. AND ( Logical AND ) Format AND Operand1, Operand2 Fungsi Melakukan Operasi Logika AND pada Operand1 dan Operand2, hasilnya akan disimpan di Operand1 Kalimat Matematika Operand1 = Operand1 AND Operand2 Contoh MOV EAX, 00001111b ; Lihat perintah MOV AND EAX, 11110000b ; EAX = 00001111b AND 11110000b = 00000000b 3. CALL ( CALL A Procedure ) Format CALL LokasiProcedure Fungsi Memanggil sebuah Procedure. Kalimat Matematika Contoh CALL 12345678 ; Memanggil Procedure yang berada pada Offset 12345678 4. CDQ ( Convert Doubleword To Quadword ) Format CDQ Fungsi Merubah nilai 32-bit dalam EAX menjadi 64-bit dalam EDX : EAX dengan cara mengosongkan isi EDX Kalimat Matematika Contoh MOV EAX, 12345678h ; EAX = 12345678h CDQ ; EDX : EAX = 00000000 : 12345678h 5. CMP ( Compare ) Format CMP Operand1, Operand2 Fungsi Membandingkan Operand1 dengan Operand2, setelah perintah ini, biasanya akan diikuti dengan sebuah Condtional Jump yang akan menentukan jalur program berikutnya. Kalimat Matematika Contoh MOV ECX, 0Ah ; EAX = 0Ah MOV EAX, 0Bh ; EBX = 0Bh CMP EAX, ECX ; Pembandingan EAX dengan ECX. JE 12345678 ; Jika sama, lompat ke Offset 12345678. Jika tidak, lanjutkan ke bawah 6. DEC ( Decrement ) Format DEC Operand Fungsi Mengurangi nilai Operand dengan 1 Kalimat Matematika Operand1 = Operand1 - 1 Contoh MOV EAX, 0Ah ; EAX = 0000000Ah DEC EAX ; EAX = 0000000Ah - 00000001h = 00000009h 7. DIV ( Unsigned Division ) Format DIV Operand Fungsi Membagi nilai yang ada di Register EAX dengan Operand2 Kalimat Matematika EAX = EAX DIV Operand Contoh MOV EAX, 0Ah ; EAX = 0000000Ah MOV EBX, 05h ; EBX = 00000005h

Tutorial Simpel Penggunaan Ollydbg Sesuai dgn judul, saya mau memberikan sebuah trik kuno sederhana utk mendapatkan serial number pd sebuah program. Dimana program yg akan dij...

KODE SOAL: 1K (Soal Kamis Pertama) 1. Apa yang saudara ketahui tentang Manajemen? Istilah manajemen berasal dari bahasa italia maneggio dan bahasa latin maneggiare yang...

Tugas 2k 1 . Apa yang anda ketahui tentang Efisiensi ? Efisiensi merupakan suatu ukuran keberhasilan yang dinilai dari segi besarnya sumber/biaya u...

Microsoft C++ C + + (dibaca "Lihat plus plus") adalah, statis mengetik bebas-form, multiparadigma, dikompilasi, bahasa pemrograman untuk tuju...

Sejarah Awal Berdirinya Bank Muamalat S ejarah Berdirinya Bank Muamalat PT. Bank Muamalat, Tbk. Didirikan pada tahun 1412H atau tahun 1991 diprakarsai oleh Majelis Ulama ...

TUGAS 4S (Senin Keempat) 1. Siti Nurhaliza ingin mendirikan warteg di samping Kampus J Gunadarma Kalimalang, bentuk organisasi yang cocok adalah: a. Organisasi...

Tugas SoftSkill Bulan Oktober Studentsite Situs ini merupakan layanan online berbasis website yang

2 of 8

7/18/2013 2:20 AM

INERTIA: Mari belajar Assembly (Dasar-dasar Assembly)

http://saosabcd.blogspot.com/2010/09/mari-belajar-assembly-dasar-dasar...

DIV EBX ; EAX = 0000000Ah DIV 00000005h = 00000002h 8. IDIV ( Signed - Integer - Division ) Format IDIV Operand Fungsi Membagi nilai yang ada di Register EDX : EAX dengan Operand2, hasilnya akan disimpan di EAX sedang sisanya disimpan di EDX Kalimat Matematika EDX : EAX = EDX : EAX IDIV Operand Contoh MOV EDX, 00h ; EDX = 00000000h MOV EAX, 0Fh ; EAX = 0000000Fh MOV EBX, 05h ; EBX = 00000005h IDIV EBX ; EDX : EAX = 00000000 : 0000000Fh IDIV 00000005h ; EAX = 00000003h ( hasil ) EDX = 00000000h ( sisa ) 9. IMUL ( Signed - Integer - Multiplication ) Format IMUL Operand Fungsi Pada program 32 bit, IMUL ini digunakan untuk mengalikan antara nilai yang tersimpan di dalam Register EDX : EAX dengan Operand. Hasilnya akan disimpan di dalam EAX Kalimat Matematika EAX = EDX : EAX IMUL Operand Contoh MOV EDX, 00h ; EDX = 00000000h MOV EAX, 05h ; EAX = 00000005h MOV EBX, 0Ah ; EBX = 0000000Ah IMUL EBX ; EAX = 00000000 : 00000005 IMUL 0000000A = 00000032h 10. Conditional Jump Conditional Jump adalah perintah dalam Assembler yang digunakan untuk menentukan alur program berikutnya. Conditional Jump ini sebelumnya didahului oleh perintah CMP ( perhatikan contoh di penjelasan no. 5). Ada berbagai macam Conditional Jump, di sini aku hanya membahas beberapa Conditional Jump yang sering aku temui ketika mengKrak, untuk perintah - perintah Conditional Jump lainnya, bisa kamu perdalam lagi di buku - buku yang membahas Assembly. Untuk semua penjelasan Conditional Jump di bawah ini, aku akan pake beberapa perintah yang ada sebelum perintah Conditional Jump tersebut dieksekusi. MOV EAX, 01h ; EAX = 00000001h MOV EBX, 02h ; EBX = 00000002h CMP EAX, EBX ; Membandingkan antara EAX dengan EBX Format Conditional Jump

diperuntukan hanya untuk mahasiswa dan mahasiswi Universitas Gundarma...

Labels
Assembly (1) Belajar (1) C++ (1) Christina Perri (1) Dasar-dasar (1) female vocalists (1) Fungsi Manajemen (1) Guide (1) note (1) singer-songwriter (1) SoftSkill (6) Tugas (9) Universitas Gunadarma(UGM) (3)

Blog Archive
2013 (1) 2011 (6) 2010 (8) November (2) Oktober (1) September (5) A feste seg i unge sjeler.

Fungsi JA LokasiTujuan ( Jump If Above ) Lompat ke LokasiTujuan jika EAX lebih besar dari EBX JAE LokasiTujuan ( Jump If Above or Equal ) Lompat ke LokasiTujuan jika EAX lebih besar atau sama dengan EBX JNA LokasiTujuan ( Jump If Not Above ) Lompat ke LokasiTujuan jika EAX tidak lebih besar dari EBX JNAE LokasiTujuan ( Jump If Not Above or Equal ) Lompat ke LokasiTujuan jika EAX tidak lebih besar atau sama dengan EBX JB LokasiTujuan ( Jump If Below ) Lompat ke LokasiTujuan jika EAX lebih kecil dari EBX JBE LokasiTujuan ( Jump If Below or Equal ) Fungsinya sama dengan perintah JNA JNB LokasiTujuan ( Jump If Not Below ) Fungsinya sama dengan perintah JAE JNBE LokasiTujuan ( Jump If Not Below or Equal ) Fungsinya sama dengan perintah JA JE LokasiTujuan ( Jump If Equal ) Lompat ke LokasiTujuan jika EAX sama dengan EBX JNE LokasiTujuan ( Jump If Not Equal ) Lompat ke LokasiTujuan jika EAX tidak sama dengan EBX JG LokasiTujuan ( Jump If Greater ) Lompat ke LokasiTujuan jika EAX lebih besar dari EBX JGE LokasiTujuan ( Jump If Greater or Equal ) Lompat ke LokasiTujuan jika EAX lebih besar atau sama dengan EBX JNG LokasiTujuan ( Jump If Not Greater ) Lompat ke LokasiTujuan jika EAX tidak lebih besar dari EBX JNGE LokasiTujuan ( Jump If Not Greater or Equal ) Lompat ke LokasiTujuan jika EAX tidak lebih besar atau sama dengan EBX

Christina Perri Fungsi Manajemen Tutorial Simpel Penggunaan Ollydbg Mari belajar Assembly (Dasar-dasar Assembly)

3 of 8

7/18/2013 2:20 AM

INERTIA: Mari belajar Assembly (Dasar-dasar Assembly)

http://saosabcd.blogspot.com/2010/09/mari-belajar-assembly-dasar-dasar...

JL LokasiTujuan ( Jump If Less Than ) Fungsinya sama dengan perintah JNGE JLE LokasiTujuan ( Jump If Less or Equal ) Fungsinya sama dengan perintah JNG JNL LokasiTujuan ( Jump If Not Less Than ) Fungsinya sama dengan perintah JGE JNLE LokasiTujuan ( Jump If Not Less or Equal ) Fungsinya sama dengan perintah JG JZ LokasiTujuan ( Jump If Zero ) Fungsinya sama dengan JE JNZ LokasiTujuan ( Jump If Not Zero ) Fungsinya sama dengan JNE 11. JMP LokasiTujuan ( Unconditional Jump ) Format JMP LokasiTujuan Fungsi Perintah JMP ini berbeda dengan perintah - perintah Conditional Jump karena ia tidak memerlukan hasil perbandingan sebelum perintah ini dieksekusi. Kalimat Matematika Contoh JMP 12345678 ; Lompat ke Offset 12345678 12. LEA ( Load Effective Address ) Format LEA Operand1, LokasiMemory Fungsi Untuk mengambil Offset dari LokasiMemory dan menyimpannya di dalam Operand1 Kalimat Matematika Contoh LEA EAX, 13. MOV ( Move Data ) Format MOV Operand1, Operand2 Fungsi Menyalin isi dari Operand2 kedalam Operand1 Kalimat Matematika Operand1 = Operand2 Contoh MOV EAX, 0Ah ; EAX = 0000000Ah 14. MUL ( Multiplication ) Format MUL Operand Fungsi Mengalikan isi EAX dengan Operand, hasilnya akan disimapn di dalam EDX : EAX Kalimat Matematika EDX : EAX = EAX * Operand Contoh MOV EAX, 0Ah ; EAX = 0000000Ah MUL EAX, 05h ; EDX : EAX = 0000000Ah * 00000005h = 00000000 : 00000032h 15. NOP ( No Operation ) Format NOP Fungsi Seperti namanya, NOP tidak melakukan Operasi apa - apa, walaupun begitu perintah ini memiliki peran yang cukup penting dalam Kraking. Seperti yang diketahui, salah satu teknik mengKrak sebuah Sistem Proteksi adalah Patching, dalam Patching ini, Kraker harus merubah perintah yang ada di dalam Sistem Proteksi tersebut agar dapat mengKraknya. Contoh sederhananya yaitu ketika ada sebuah Conditional Jump yang akan menentukan apakah S/N yang kita masukan valid atau tidak, salah satu cara yang mungkin untuk mengKraknya adalah dengan me-NOP-kan perintah Conditional Jump tersebut. Untuk lebih jealasnya, liat contoh di bawah. Kalimat Matematika Contoh MOV EAX, 12345678 ; Offset 12345678 berisi S/N palsu MOV EBX, 87654321 ; Offset 87654321 berisi S/N yang asli. CMP EAX, EBX ; Bandingkan EAX dengan EBX JNE 12344321 ; Jika tidak sama, lompat ke Offset 12344321 Offset berikutnya menyatakan bahwa S/N yang dimasukan adalah S/N yang valid. Offset 12344321 menyatakan bahwa S/N yang kita masukan adalah S/N yang salah.. Listing di atas menunjukkan dengan jelas bagaimana S/N kita dibandingkan, jika kau ingin dengan sembarang S/N dapat dianggap sukses maka kita bisa me-NOP-kan Conditional Jump di atas sehingga listing perintah di atas menjadi : MOV EAX, 12345678 ; Offset 12345678 berisi S/N palsu MOV EBX, 87654321 ; Offset 87654321 berisi S/N yang asli. CMP EAX, EBX ; Bandingkan EAX dengan EBX NOP ; Tidak melakukan pencabangan sehingga S/N apa saja yang dimasukan akan dianggap valid. 16. OR ( Logical OR ) Format OR Operand1, Operand2 Fungsi Melakukan Operasi Logika OR terhadap Operand1 dan Operand2, hasilanya akan disimpan

4 of 8

7/18/2013 2:20 AM

INERTIA: Mari belajar Assembly (Dasar-dasar Assembly)

http://saosabcd.blogspot.com/2010/09/mari-belajar-assembly-dasar-dasar...

di dalam Operand1 Kalimat Matematika Operand1 = Operand1 OR Operand2 Contoh OR EAX, EBX 17. POP ( POP from Stack ) Format POP Operand Fungsi Mengambil isi dari Stack dan menyimpannya di dalam Operand Kalimat Matematika Contoh POP EAX 18. PUSH ( PUSH onto Stack ) Format PUSH Operand Fungsi Memasukan nilai dari Operand ke dalam Stack Kalimat Matematika Contoh PUSH EAX 19. RET ( Return from Procedure ) Format RET Fungsi Kembali ke Rutin pemanggil Procedure yang sedang berlangsung. Kalimat Matematika Contoh 1234 : 00000001 CALL 00001000 ;Memanggil Procedure yang ada di Offset 00001000 1234 : 00000002 ;Perintah Selanjutnya 1234 : 00001000 RET ;Alur program akan kembali ke Offset 00000002 20. SUB ( Subtract Binary Values ) Format SUB Operand1, Operand2 Fungsi Mengurangkan nilai dari Operand1 dengan Operand2. Hasilnya kemudian disimpan di dalam Operand1 Kalimat Matematika Operand1 = Operand1 - Operand2 Contoh MOV EAX, 0Ah ;EAX = 0Ah ( = 10 decimal ) MOV EBX, 01h ;EBX = 01h ( = 01 decimal ) SUB EAX, EBX ;EAX = EAX - EBX = 0Ah - 01h = 09h 21. TEST ( Test Bits ) Format TEST Operand1, Operand2 Fungsi Memeriksa apakah Operand1 sama dengan Operand2 ??? Kalimat Matematika Contoh MOV EAX, 0Ah ;EAX = 0Ah ( = 10 decimal ) MOV EBX, 01h ;EBX = 01h ( = 01 decimal ) TEST EAX, EBX ;Apakah EAX = EBX ??? JE 12344321 ;Jika sama, lompat. 22. XOR ( Exclusive OR ) Format XOR Operand1, Operand2 Fungsi Melakukan operasi logika Exlusive OR antara Operand1 dengan Operand2. Perintah XOR ini juga sering dipakai untuk me-nol-kan suatu register dengan cara XOR Operand1, Operand1 Kalimat Matematika Contoh XOR EAX, EAX ;Berfungsi untuk me-nol-kan nilai EAX ( EAX = 0 )

klo ad yang mo nambahin silahkan,soalnya saya juga masi pd tahap pembelajaran,mungkin ada yang mau share ilmunya ================================================= Soft ice http://rs40.rapidshare.com/files/23460036/Softice.rar

SETTING SOFT ICE

Level : Beginner SoftIce hampir tidak berguna jika tidak disetting untuk meload expert symbol pada waktu startup. Biar cepet, ini listing WinIce.dat gua yang terbaru :

5 of 8

7/18/2013 2:20 AM

INERTIA: Mari belajar Assembly (Dasar-dasar Assembly)

http://saosabcd.blogspot.com/2010/09/mari-belajar-assembly-dasar-dasar...

NMI=ON SIWVIDRANGE=ON LOWERCASE=OFF MOUSE=ON NOLEDS=OFF NOPAGE=OFF PENTIUM=ON THREADP=ON VERBOSE=ON PHYSMB=64 SYM=64 HST=256 DRAWSIZE=2048 TRA=256 INIT="lines 60;ww;wl;wr;wd 24;wc 24;Code ON;Faults OFF;X;wf;" F1="h;" F2="^wr;" F3="^src;" F4="^rs;" F5="^x;" F6="^ec;" F7="^here;" F8="^t;" F9="^bpx;" F10="^p;" F11="^G @SS:ESP;" F12="^p ret;" SF3="^format;" CF8="^XT;" CF9="TRACE OFF;" CF10="^XP;" CF11="SHOW B;" CF12="TRACE B;" AF1="^wr;" AF2="^wd;" AF3="^wc;" AF4="^ww;" AF5="CLS;" AF8="^XT R;" AF11="^dd dataaddr->0;" AF12="^dd dataaddr->4;" CF1="altscr off; lines 60; wc 32; wd 8;" CF2="^wr;^wd;^wc;" SF1="s 0 l ffffffff 56,57,8b,7c,24,10,8b,74,24,0c,8b,4c,24,14,33,c0,f3,66,a7" ; Untuk nyikat ; Program yang dibuat dengan Visual Basic 5 kebawah ! MACRO See="d *(%1)" ; Macro dengan nama see, untuk ngeliat isi ptr

EXP=c:\windows\system\kernel32.dll EXP=c:\windows\system\user32.dll EXP=c:\windows\system\gdi32.dll EXP=c:\windows\system\comdlg32.dll EXP=c:\windows\system\shell32.dll EXP=c:\windows\system\advapi32.dll EXP=c:\windows\system\shell232.dll EXP=c:\windows\system\comctl32.dll EXP=c:\windows\system\crtdll.dll EXP=c:\windows\system\version.dll EXP=c:\windows\system\netlib32.dll EXP=c:\windows\system\msshrui.dll EXP=c:\windows\system\msnet32.dll EXP=c:\windows\system\mspwl32.dll EXP=c:\windows\system\mpr.dll EXP=c:\windows\system\msvbvm50.dll ; DLL MS VB 5 EXP=C:\Windows\system\msvcrt40.dll ; DLL MS Visual C WDMEXPORTS=OFF MONITOR=0

6 of 8

7/18/2013 2:20 AM

INERTIA: Mari belajar Assembly (Dasar-dasar Assembly)

http://saosabcd.blogspot.com/2010/09/mari-belajar-assembly-dasar-dasar...

2 Responses so far.

uii profile says:


23 Juli 2012 10.16

Terimakasih Infonya sangat bermanfaat.. Perkenalkan saya mahasiswa Fakultas Ekonomi di UII Yogyakarta :) twitter : @profiluii

assa saha says:


21 September 2012 05.40

Komentar ini telah dihapus oleh penulis.

Leave a Reply

7 of 8

7/18/2013 2:20 AM

INERTIA: Mari belajar Assembly (Dasar-dasar Assembly)

http://saosabcd.blogspot.com/2010/09/mari-belajar-assembly-dasar-dasar...

Beri komentar sebagai:

Posting Lebih Baru

Category
Assembly (1) Belajar (1) C++ (1) Christina Perri (1) Dasar-dasar (1) female vocalists (1) Fungsi Manajemen (1) Guide (1) note (1) singer-songwriter (1) SoftSkill (6) Tugas (9) Universitas Gunadarma(UGM) (3)

Category
Assembly (1) Belajar (1) C++ (1) Christina Perri (1) Dasar-dasar (1) female vocalists (1) Fungsi Manajemen (1) Guide (1) note (1) singer-songwriter (1) SoftSkill (6) Tugas (9) Universitas Gunadarma(UGM) (3)

Category
Assembly (1) Belajar (1) C++ (1) Christina Perri (1) Dasar-dasar (1) female vocalists (1) Fungsi Manajemen (1) Guide (1) note (1) singer-songwriter (1) SoftSkill (6) Tugas (9) Universitas Gunadarma(UGM) (3)

Category
Assembly (1) Belajar (1) C++ (1) Christina Perri (1) Dasar-dasar (1) female vocalists (1) Fungsi Manajemen (1) Guide (1) note (1) singer-songwriter (1) SoftSkill (6) Tugas (9) Universitas Gunadarma(UGM) (3)

Copyright 2011 INERTIA | Blogger Theme by Best Blogger Themes | Premium Blogger Themes - . WordPress Theme by. Web2feel | Fab Themes

8 of 8

7/18/2013 2:20 AM

Anda mungkin juga menyukai