تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[تمرين] حللني ان استطعت 4
#7
(15-09-2021, 04:10 PM)overlap كتب : التطبيق الأصلي مبني بــ ML64 و يحتوي هو ايضا على نفس الــ Stub المعدل...

حاولت فعل هذا بعد تلميحك، ولكن أقصى ما وصلت له هو 640 بايت، ويبدو أن الفرق بين تطبيقك وتطبيقي هو القسم .idata. يرفض ml64 أن يدمجه مع أي قسم آخر! إذا أدمج القسم فالمفترض أن الحجم سينقص 40 بايت أن 600 بايت، ولكن إن كان فهمي صحيحا فشرط المحاذاة ALIGN:16 يجبر ال linker على إضافة 8 بايتات أخرى أي 608 بايت. هذه الزيادة بمقدار 16 بايت عن برنامجك بعد المقارنة تبين أن سببها استعمالي للأمر
mov r9, offset EventName
وطوله 10 بايتات بينما أنت استعملت
lea r9, offset EventName
بطول 7 بايتات. ويبدو أن هذا الفرق الطفيف جُعِل 16 بايت من قبل ال linker بسبب شرط المحاذاة، وبالفعل بعد تغيير الأمر نقص حجم البرنامج 16 بايت أي 624 بايت.
 
(15-09-2021, 04:10 PM)overlap كتب : ML64  لا يهتم باضافتها و منه يزيد صغر حجم التطبيق النهائي...
فعلا! بالمناسبة، هل قمت بتصفير ال rich signature وكذلك ال linker versions في ال optional headers بشكل يدوي؟
(15-09-2021, 04:10 PM)overlap كتب : بالمناسبة، الظاهر انك تستعمل اصدار Visual Studio 2017 ؟
بالفعل، هذا ما أستخدمه، استنتجت هذا بسبب مشكلة ال exceptions الذي ذكرتها بالأعلى ؟
أعضاء أعجبوا بهذه المشاركة :


الردود في هذا الموضوع
[تمرين] حللني ان استطعت 4 - بواسطة overlap - 10-09-2021, 03:17 PM
RE: [تمرين] حللني ان استطعت 4 - بواسطة siddigss - 13-09-2021, 03:05 PM
RE: [تمرين] حللني ان استطعت 4 - بواسطة siddigss - 14-09-2021, 08:02 AM
RE: [تمرين] حللني ان استطعت 4 - بواسطة overlap - 14-09-2021, 12:35 PM
RE: [تمرين] حللني ان استطعت 4 - بواسطة siddigss - 14-09-2021, 04:19 PM
RE: [تمرين] حللني ان استطعت 4 - بواسطة overlap - 15-09-2021, 04:10 PM
RE: [تمرين] حللني ان استطعت 4 - بواسطة siddigss - 15-09-2021, 09:16 PM
RE: [تمرين] حللني ان استطعت 4 - بواسطة overlap - 18-09-2021, 04:39 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم