السلام عليكم
اسم البرنامج : 1st Mass Mailer
الحماية : غير محمي
مرفق :
المسكلة بعد كسر البرنامج..ايجاد بداية الروتين تم كسر البرنامج عن طريق ال stupid ^patching ولم تنجح لكن جربت احد طرق الاخوان ونجحت معي حيت قمت بدخول الى داخل ال CALL وتغيير PUSH ب MOV AL,1 ونحت الطريقة
... صور :
بعدها تم كسر البرنامج بنجاااااح لكن
وعليكم السلام
اخي العزيز
بالبداية نبحث عن String الخطاء Registration code invalid
وبعدها نذهب الى بداية الروتين
صع نقطة توقف على الاماكن المحددة
النداء هذا مسوؤل عن خوارزمية التسجيل
ندخل النداء
اقراء الاكواد شوية راح تفهم انو الشرط لازم يكون طول احرف السريال 14
هذه خوارزمية السيريال المهم
انت ادخل 14 حرف بعدها تتبع الروتين الى ان تصل الى
ببساطة غير ال sete الى setne
ومبروك تم الكسر
(19-02-2020, 04:48 PM)the9am3 كتب : [ -> ]ببساطة غير ال sete الى setne
شكرا اخي على الشرح جربت الطريقة نجحت معي شكرا المرجو ان تشرج لي هده الاسطر ادا ممكن وشكرا على وقتك
لأبسط لك الفكرة:
SETNE => Set if Not Equal
SETE => Set if Equal
بخوارزميه التسجيل للبرنامج (المكان الذي أشار اليه الأخ
the9am3 ):
مقارنة طول السيريال =>
14 +
07 مقارنات حول السيريال الصحيح
2
x935
xx94
x0
xxx
فاذا تحققت .......... تحققت المقارنة الاخيرة
CMP DWORD PTR SS:[EBP-8],7
SETE BYTE PTR SS:[EBP-1]
أي
BYTE PTR SS:[EBP-1] = 1
وبالتالي :
MOV AL,
BYTE PTR SS:[EBP-1] وكأنها MOV AL,
1
فعند ادخال سيريال غير صحيح .... لا يتحقق الشرط الاخير
أي:
BYTE PTR SS:[EBP-1] =
0
وبالتالي :
MOV AL,
BYTE PTR SS:[EBP-1] وكأنها MOV AL,
0
ولا يقبل التسجيل
لذا قمنا بتغيير التعليمة من:
SETE
الى
SETNE
وجعله يقبل اي سيريال
أسأل الله العظيم في هذه الساعة أن ينزل عليكم من سحائب رحماته وفيض بركاته ما تطمئن به نفسكم وتتحقق به أمانيكم اللهم وفقهم لحمدك وشكرك وأدم عليهم عفوك وسترك والبسهم لباس العافية يسر الله أموركم وشرح صدركم وبارك فيكم وحفظكم من كل شر.
شكرا لكم جميعا.