• ¡Welcome to Square Theme!
  • This news are in header template.
  • Please ignore this message.
مهمان عزیز خوش‌آمدید. ورود عضــویت


امتیاز موضوع:
  • 27 رای - 2.41 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
Title: دستورات اسمبلی در کرک
حالت خطی
#2
اینها فقط یه سری دستورات ساده هستند که برای انجام کرک دونستنشون لازمه

Push ذخیره کردن یه ثبات رجیستری بعنوان مثال push eax میاد مقدار موجود در ثبات eax رو ذخیره میکنه
pop بازیابی کردن بعنوان مثال pop eax میاد مقدار موجود در ثبات رجیستری eax رو بازیابی میکنه و دوباره اونو برمیگردونه
mov کپی کردن فایل مبدا در فایل مقصد بعنوان مثال mov eax,esp ، این دستور مقدار esp رو در ثبات eax کپی میکنه
TEST مقایسه صورت میگیره بعنوان مثال test al,al میاد مقادیر al و al رو با هم مقایسه و یا تست میکنه
cmp اینم تقریباً کار دستور test رو انجام میده مثلاً cmp al , bl میاد مقادیر al و bl رو با هم تست میکنه

دستورات پرشی و همچنین پرشی شرطی رو هم باید بدونی
JE پرش در صورت صحیح بودن
JNE , JNZ
هر دو تای این دستور ها پرش در صورت نادرست بودن
JMP پرش بدون هیچ گونه شرط یعنی وقتی برنامه به این دستور برسه به طور اتوماتیک پرش رو انجام میده
NOP به معنای هیچی و با نوشتن این دستور برنامه هیچ عملی رو انجام نمیده
XOR این دستور هم به معنای هیچی و کار NOP رو انجام میده مثلاً XOR AL , AL

JE: پرش در صورت تساوی JNE : پرش در صورت عدم تساوی JZ : پرش در صورتی که فلگ خصا برابر صفر باشد JNZ : پرش در صورتی که فلگ خصا مقدار دهی شده باشد (غیر از صفر باشد) JA : پرش اگر مقدار بزرگتر باشد JB : پرش اگر مقدار کوچکتر باشد JBE : پرش اگر مقدار کوچکتر یا مساوی بود JAE : پرش اگر مقدار بزرگتر یا مساوی باشد JNS : پرش اگر مقدار مثبت باشد JS : پرش اگر منفی باشد NOP : برای اینکه کاری انجام نشه از این دستور استفاده میشه

چند تا از کدهای اصلی :
Call : برای صدا زدن یک تابع - مثل :
Call 004032DD که این یعنی به تابع توی خط 004042DD برو
JMP : که مخفف Jump به معنای پرش هست که به یه خط پرش میکنه - مثل :
JMP 0095ED29 : که این یعنی پرش کن به خط 0095ED29
MOV : که یه دستور برای ریختن چیزی توی یک متغیر ها و ... هست - مثل :
MOV EAX,1 : یعنی 1 رو بریز توی EAX
CMP : برای مقایسه کردن هست - مثل : CMP EDI,8 : یعنی مقایسه کن که مقدار EDI هشت هست یا نه - معمولا بعد CMP یع دستور شرطی هست مثلا CMP EDI,8 JE 004042DD یعنی اگر درست بود و EID برابر با 8 بود پرش کن به خط 004042DD و اگر درست نباشه ادامه میده.

ADD:اضافه کردن و یا علامت جمع ADD EAX , EBX این دستور مقدار EBX رو با مقدار EAX جمع میکنه و حاصل جمع این دو تا رو توی EAX قرار میده البته دستورات SUB برای تفریق - DIV برای تقسیم و MUL هم برای ضرب صورت میگیره

نوشته بالا Lord_Viper نوشتن
گروه دور همی پارسی کدرز
https://t.me/joinchat/GxVRww3ykLynHFsdCvb7eg
 
پاسخ
  


پیام‌های این موضوع
دستورات اسمبلی در کرک - توسط Amin_Mansouri - 01-06-2012، 07:37 PM
RE: دستورات اسمبلی در کرک - توسط Amin_Mansouri - 01-06-2012، 07:38 PM
RE: دستورات اسمبلی در کرک - توسط امیر - 04-11-2012، 12:19 PM
RE: دستورات اسمبلی در کرک - توسط امیر - 04-12-2012، 03:37 PM

پرش به انجمن:


Browsing: 1 مهمان