: ابدأ التنفيذ

يمكن استخدام طريقة عرض التسجيل لتصور قيمة سجلات الحالة النشطة. يمكن تعديل قيمة السجل بالنقر المزدوج عليه. تسمح قائمة النقر بزر الماوس الأيمن بما يلي:

يمكن استخدام طريقة عرض الذاكرة لتصور قيمة جزء من ذاكرة الحالة النشطة. من خلال النقر على "مراقبة الذاكرة" ، يمكن للمستخدم تحديد عنوان ذاكرة للمراقبة. ستعرض القطعة 512 بايت بدءًا من هذا العنوان. يتم تقسيم طريقة عرض الذاكرة في قسمين: Hexview و ASCII. تعرض Hexview قيمة Hex لكل بايت فقط إذا تم تعيين البايت والخرسانة. إذا كان البايت غير محفور ، فسيتم عرض _ _ إذا كانت البايت رمزية ، فإن القطعة تُظهر الحرف . .
تسمح قائمة النقر بزر الماوس الأيمن بما يلي:
تتيح هذه القطعة إنشاء مخازن مؤقتة تحتوي على بيانات رمزية.
يمكن تنفيذ المزيد من واجهات برمجة التطبيقات من خلال قذيفة Python. على سبيل المثال ، يمكننا استخدام Solver لإثبات شرط للحالة الحالية:
> >> import borzacchiello_seninja as seninja
> >> s = seninja . get_current_state ()
> >> s . solver . satisfiable ( extra_constraints = [ s . regs . eax == 3 ]) سوف يتحقق الرمز من رضا eax == 3 بالنظر إلى قيود المسار للحالة النشطة.
استشر wiki للحصول على مزيد من المعلومات حول الأوامر.
يعطي Seninja للمستخدم إمكانية تكوين أجزاء كثيرة من المحرك الرمزي (مثل البعد للصفحات ، واستراتيجية الوصول إلى الذاكرة الرمزية ، إلخ). يمكن الوصول إلى جميع الإعدادات المتاحة وتعديلها من خلال النقر على Edit/Preferences/Settings واختيار SENinja في عنصر واجهة المستخدم اليسرى.
تم اختباره مع
4.0 مع ترخيص شخصي3.114.8.14 لجعلها تعمل ، تحتاج إلى تثبيت Z3 مع PIP: $ pip3 install z3-solver