• نحوه مشاهده کد منبع فایل exe اگر آنها سعی در اطمینان از امنیت این موضوع داشته باشند، فاش کردن کد منبع غیرممکن است (به خصوص اگر یک کالای مارک دار باشد). فایل های ایجاد شده با ویژوال بیسیک


    گاهی اوقات خطاهای CODE.EXE و سایر خطاهای سیستم EXE می تواند به مشکلاتی در رجیستری ویندوز مربوط شود. چندین برنامه می توانند از فایل CODE.EXE استفاده کنند، اما زمانی که آن برنامه ها حذف یا تغییر می کنند، گاهی اوقات ورودی های رجیستری EXE "یتیم" (نامعتبر) باقی می مانند.

    در واقع، این بدان معنی است که در حالی که ممکن است مسیر واقعی فایل تغییر کرده باشد، مکان قبلی نادرست آن هنوز در رجیستری ویندوز ثبت می شود. هنگامی که ویندوز سعی می کند این منابع فایل نادرست (محل فایل ها در رایانه شما) را جستجو کند، خطاهای CODE.EXE ممکن است رخ دهد. علاوه بر این، ممکن است آلودگی بدافزار ورودی‌های رجیستری مرتبط با Game Cracker را خراب کرده باشد. بنابراین، این ورودی های نامعتبر رجیستری EXE باید تعمیر شوند تا ریشه مشکل برطرف شود.

    ویرایش دستی رجیستری ویندوز برای حذف کلیدهای نامعتبر CODE.EXE توصیه نمی شود مگر اینکه حرفه ای خدمات کامپیوتری باشید. اشتباهاتی که در هنگام ویرایش رجیستری مرتکب می شوند می توانند رایانه شما را غیرقابل استفاده کنند و آسیب های جبران ناپذیری به سیستم عامل شما وارد کنند. در واقع، حتی یک کاما در جای اشتباه می تواند از بالا آمدن کامپیوتر شما جلوگیری کند!

    به دلیل این خطر، ما به شدت توصیه می کنیم از یک پاک کننده رجیستری مطمئن مانند %%product%% (طراحی شده توسط Microsoft Gold Certified Partner) برای اسکن و تعمیر مشکلات رجیستری مربوط به CODE.EXE استفاده کنید. استفاده از پاک کننده رجیستری فرآیند یافتن ورودی های رجیستری نامعتبر، مراجع فایل گم شده (مانند موردی که باعث خطای CODE.EXE شما می شود) و لینک های خراب در رجیستری را خودکار می کند. یک نسخه پشتیبان به طور خودکار قبل از هر اسکن ایجاد می شود، به شما این امکان را می دهد که هر تغییری را با یک کلیک لغو کنید و از آسیب احتمالی به رایانه محافظت کنید. بهترین بخش این است که رفع خطاهای رجیستری می تواند سرعت و عملکرد سیستم را به شدت بهبود بخشد.


    هشدار:ویرایش دستی رجیستری ویندوز را توصیه نمی کنیم، مگر اینکه یک کاربر پیشرفته رایانه شخصی باشید. استفاده نادرست از ویرایشگر رجیستری می تواند منجر به مشکلات جدی شود و شما را مجبور به نصب مجدد ویندوز کند. ما تضمین نمی کنیم که مشکلات ناشی از استفاده نادرست از ویرایشگر رجیستری قابل حل باشد. شما با مسئولیت خود از ویرایشگر رجیستری استفاده می کنید.

    برای تعمیر دستی رجیستری ویندوز، ابتدا باید با صادر کردن بخشی از رجیستری مربوط به CODE.EXE (به عنوان مثال، Game Cracker) یک نسخه پشتیبان ایجاد کنید:

    1. روی دکمه کلیک کنید شروع.
    2. وارد " فرمان"V نوار جستجو... هنوز فشار ندهید وارد!
    3. نگه داشتن کلیدها CTRL-Shiftروی صفحه کلید، فشار دهید وارد.
    4. یک گفتگوی دسترسی نمایش داده خواهد شد.
    5. کلیک آره.
    6. جعبه سیاه با یک مکان نما که چشمک می زند باز می شود.
    7. وارد " regedit"و فشار دهید وارد.
    8. در ویرایشگر رجیستری، کلید مربوط به CODE.EXE (مثلاً بازی Cracker) را که می خواهید از آن نسخه پشتیبان تهیه کنید، انتخاب کنید.
    9. در منو فایلانتخاب کنید صادرات.
    10. ذکر شده ذخیره درپوشه ای را که می خواهید بک آپ کلید Game Cracker را در آن ذخیره کنید انتخاب کنید.
    11. در زمینه نام فایلیک نام برای فایل پشتیبان وارد کنید، مانند "Game Cracker Backup".
    12. از میدان مطمئن شوید محدوده صادراتمقدار انتخاب شده شعبه انتخاب شده.
    13. کلیک صرفه جویی.
    14. فایل ذخیره خواهد شد با پسوند reg.
    15. اکنون یک نسخه پشتیبان از ورودی رجیستری مربوط به CODE.EXE خود دارید.

    مراحل بعدی برای ویرایش دستی رجیستری در این مقاله پوشش داده نخواهد شد، زیرا ممکن است به سیستم شما آسیب برساند. اگر می خواهید اطلاعات بیشتری در مورد ویرایش دستی رجیستری داشته باشید، لطفاً به لینک های زیر مراجعه کنید.

    با کمک تیونر منابعمی توانید فایل های اجرایی مانند EXE.، .DLL، .OCX، محافظ صفحه نمایش (.SCR) و بسیاری دیگر را باز کنید. با باز کردن یک فایل، به منابع فایل دسترسی پیدا می‌کنید و می‌توانید آیکون‌ها، مکان‌نماها و گرافیک‌ها را در قالب‌های مختلف جایگزین کنید، خطوط را در منوها، کادرهای محاوره‌ای و دیگر عناصر رابط کاربری تغییر دهید.

    البته در نظر داشته باشید که منابع موجود در فایل اجرایی از کد برنامه جدا شده و با تغییر رابط برنامه به کد برنامه دسترسی پیدا نمی کنید. با استفاده از ویرایشگر منبع، می توانید کنترل های برنامه را تغییر دهید. کد برنامه را نمی توان با استفاده از ویرایشگر منبع تغییر داد.

    برای تغییرات جدی تر (که البته بدون تجربه کافی در برنامه نویسی برای ویندوز به هیچ چیز خوبی منجر نمی شود)، توصیه می کنیم از PE Explorer (ویرایشگر ساختار فایل PE) یا FlexHex (ویرایشگر هگزا برای فایل های باینری) استفاده کنید.

    باز کردن یک فایل EXE یا DLL در Resource Tuner

    از چندین راه برای باز کردن فایل ها پشتیبانی می کند. برای باز کردن فایل برای مشاهده و ویرایش، روی دکمه کلیک کنید باز کردن فایلدر نوار ابزار یا دستور را انتخاب کنید فایل > باز کناز منو منوی کشویی کنار دکمه نوار ابزار به شما امکان دسترسی سریع به لیستی از فایل های اخیراً باز شده را می دهد. همین لیست را می توان با دستور به دست آورد فایل > فایل های اخیراز منوی برنامه تعداد فایل های موجود در لیست در کادر گفتگو پیکربندی می شود شخصی سازی.


    همچنین می‌توانید با کلیک راست روی فایل و انتخاب، فایلی را با Resource Tuner مستقیماً از Windows Explorer باز کنید با Resource Tuner باز کنیداز منوی زمینه

    یا می توانید به سادگی نماد فایل را از Windows Explorer روی نماد Resource Tuner روی دسکتاپ یا روی پنجره یک Resource Tuner در حال اجرا بکشید و رها کنید.

    همچنین می توانید فایل را از خط فرمان باز کنید.
    مثلا: restuner.exe filename.exe

    هنگامی که یک فایل باز می شود، Resource Tuner چندین عملیات خودکار را انجام می دهد: در صورتی که فایل با UPX بسته بندی شده است را باز می کند، سپس ساختار و منابع فایل را برای خطاهای احتمالی بررسی می کند و در نهایت منابع آسیب دیده را مطابق با فایل اجرایی بازسازی می کند. مشخصات فرمت فایل

    خطا هنگام باز کردن فایل

    اگر هنگام باز کردن یک فایل خطایی رخ دهد، به احتمال زیاد به سه دلیل: فایل محافظت شده است، فایل 16 بیتی است یا اصلاً یک فایل اجرایی نیست.

    1. خطا: فایل آسیب دیده است، توسط یک بسته بندی فشرده شده است یا توسط یک محافظ محافظت می شود.

    امکان فشرده سازی فایل برای کاهش حجم آن بسیار زیاد است. بیش از ده‌ها بسته‌کننده و محافظ برای فایل‌های اجرایی وجود دارد و موارد جدید همیشه ظاهر می‌شوند. منبع تیونر تنها از باز کردن بسته بندی پشتیبانی می کند، اما رایج ترین بسته بندی - UPX. بسته‌کننده‌های دیگر پشتیبانی نمی‌شوند و باید خودتان فایل را باز کنید تا بتوانید فایل را برای مشاهده یا ویرایش باز کنید.

    این وضعیت به عنوان یک خطای برنامه در نظر گرفته نمی شود. ما قرار نیست با تلاش‌های سایر نویسندگان نرم‌افزار برای محافظت از ساخته‌های خود در برابر هک مبارزه کنیم، و از باز کردن بسته‌بندی‌های مختلف که در میان آنها محصولات تجاری و خانگی وجود دارد، حمایت نمی‌کنیم.

    2. خطا: فایل به صورت 16 بیتی NE Executable تعریف شده است. این قالب پشتیبانی نمی شود!

    برنامه های ما فقط با فایل های PE 32 بیتی و 64 بیتی کار می کنند. فرمت NE (مخفف "New Executable") یک فرمت برنامه کاربردی 16 بیتی است که از نسخه های قدیمی ویندوز 3.xx به ارث رسیده است. با ظهور ویندوز 95، این فرمت منسوخ شده و مورد استفاده قرار نمی گیرد، اگرچه می توان آن را بر روی پلتفرم های مدرن مایکروسافت اجرا کرد. ما از فایل های 16 بیتی پشتیبانی نمی کنیم و قصد پشتیبانی از آنها را نداریم.

    3. خطا: فایل یک فایل EXE یا DLL نیست. اصلا!

    Resource Tuner فایلی را نه با پسوند تشخیص می دهد. اگر پسوند یک فایل اجرایی را تغییر نام دهید، مثلاً EXE را به TXT اصلاح کنید، یا پسوند را به طور کلی حذف کنید، Resource Tuner نمی تواند فریب این را بخورد: هنگام باز کردن یک فایل، برنامه هدر فایل را در داخل فایل تجزیه و تحلیل می کند. اما اصلا به پسوند نگاه نمی کند.

    بنابراین، اگر Resource Tuner به شما بگوید که فایل قابل اجرا نیست، به این صورت است. اگر به دلایلی شخصی یک فایل متنی در بازی با پسوند .DLL ارائه کرد، این کار مانع از متن بودن فایل نمی شود و به یک کتابخانه پویا تبدیل نمی شود. فریب پسوند فایل را نخورید.

    باز کردن کدام فایل ها در ویرایشگر منبع منطقی نیست

    با وجود این واقعیت که Resource Tuner برای باز کردن و ویرایش هر فایل اجرایی 32/64 بیتی طراحی شده است، برخی از انواع فایل های EXE وجود دارند که در آنها منابع عملا وجود ندارد.

    1. فایل های ایجاد شده با ویژوال بیسیک.

    در این گونه فایل ها به جز اطلاعات آیکون و نسخه، چیزی در قسمت منابع وجود ندارد. خطوط و دیالوگ ها در برنامه های ویژوال بیسیک در قالب اختصاصی خود ذخیره می شوند و از بخش منابع استاندارد استفاده نمی کنند.

    2. فایل های EXE که گیگابایت یا بزرگتر هستند.

    از آنجایی که Resource Tuner یک برنامه 32 بیتی است، محدودیت های طبیعی برای قرار دادن تصویر فایل باز شده در حافظه مجازی در گیگا بایت اول وجود دارد. یک فایل گیگابایت یا بزرگتر به سادگی در آنجا جا نمی شود.

    3. خود استخراج آرشیو در قالب فایل های EXE.

    در این گونه فایل ها به جز اطلاعات آیکون و نسخه یا شاید هم چیزی در منابع وجود ندارد. در واقع، این داده‌های بایگانی شده است، مجهز به یک روال برای باز کردن بسته‌بندی.

    4. نصب کننده برنامه های دیگر.

    در این گونه فایل ها به جز اطلاعات آیکون و نسخه، چیزی در منابع وجود ندارد. بسیار شبیه به مورد 3. یک فایل نصب کننده را می توان به عنوان یک محفظه در نظر گرفت که حاوی یک فایل EXE فشرده دیگر و یک روال برای استخراج آن است. علاوه بر این، برنامه های ایجاد نصب کننده از الگوریتم های مختلفی برای ذخیره داده های آرشیو شده در داخل استفاده می کنند.

    دانلود نسخه آزمایشی رایگان!


    منبع تیونر کار می کند تمام نسخه های ویندوز
    از 2000 و XP تا 8 و 10.

    کمترین سیستم مورد نیاز:
    پردازنده Intel Pentium® یا AMD K5 166 مگاهرتز
    رم 16 مگابایت

    *** تمام استفاده کتبی فقط برای مقاصد آموزشی! ***

    -ابزار-
    OLLYDBG
    برنامه ای که کد خود را در آن وارد می کنیم.
    خواهد بود NOTEPAD.EXE.
    توصیه می شود از فایل یک کپی تهیه کنید.
    این همه است

    -شروع کنید-
    هدف ما این است که کد خود را در Notepad.EXE قرار دهیم.
    ما یک ساده می چسبانیم جعبه پیامراه انداختن دفترچه یادداشت.
    بریم بدویم نوت بوکو مطمئن شوید که به طور معمول شروع می شود.

    اگر از اصل بودن آن مطمئن هستید notepad.exe، آن را باز کنید اولی.
    پنجره زیر ظاهر می شود:

    برای اینکه کد خود را درج کنیم، به جایی در کد برنامه نیاز داریم.
    فایل های exe زیادی وجود دارد. کد غارها. اینها بایت هستند ( D.B.00).
    فقط کافیست کد برنامه را کمی زیر ابتدا اسکرول کنید، خواهید دید غار کد:


    مستطیل قرمز قطعه را با علامت گذاری می کند غار کد"آه؟
    در اینجا می توانید هر کدی را بچسبانید و برنامه شما خراب نمی شود.
    اگر تابع API را می دانید که باید تماس بگیرید جعبه پیامفقط از آن خطوط بگذر

    ***** نقل قول را از کتابچه راهنمای برنامه نویس WIN32 شروع کنید

    تابع MessageBox یک جعبه پیام را ایجاد، نمایش و اجرا می کند.
    جعبه پیام حاوی یک پیام و عنوان برنامه تعریف شده است،
    به علاوه هر ترکیبی از نمادهای از پیش تعریف شده و دکمه های فشاری.

    Int MessageBox(
    HWND hWnd، // دسته پنجره مالک
    LPCTSTTR lpText، // آدرس متن در جعبه پیام
    LPCTSTR lpCaption، // آدرس عنوان جعبه پیام
    UINT uType // سبک جعبه پیام
    );

    ***** پایان نقل قول از راهنمای برنامه نویس WIN32

    برای نمایش کلیک کنید...

    این تمام چیزی است که باید در مورد آن بدانید جعبه پیام.
    بیا یه کاری بکنیم با کد غارها.
    به منظور استفاده جعبه پیام، باید متنی را ایجاد کنیم که در آن خروجی خواهیم داشت
    جعبه پیام. در تصویر بعدی چند خط را با آن هایلایت کرده ام کد غارهاو
    منو را نشان داد باینری ویرایشبرای شما (ما به آن نیاز خواهیم داشت).


    اگر فشار دادید باینری=>ویرایشیا (CTRL+E) پنجره زیر را مشاهده خواهید کرد.
    فقط فیلد بالا را به همان روشی که من انجام دادم پر کنید.
    روی OK کلیک کنید و کد اصلاح شده را مشاهده خواهید کرد (که با رنگ قرمز مشخص شده است):
    حالا CTRL+A را فشار دهید تا کد را دوباره تحلیل کنید.
    خوب! حالا اگر می خواهید عنوان پیام را تغییر دهید، این خط را کپی کنید
    (مثل پارامتر دوم فراخوانی رویه است).

    -کمی اسمبلر-

    زمان آن فرا رسیده است ASMآ
    این یک مثال خوب است!

    PUSH 0 ; دکمه ها =<ТОЛЬКО КНОПКА OK>
    PUSH 1008751 ; کپشن = آدرس ما "تزریق دفترچه یادداشت"
    PUSH 1008751 ; پیام = همان.
    PUSH 0 ; ICON=<БЕЗ ИКОНКИ>
    CALL MessageBoxA; فراخوانی MessageBoxA با پارامترهای مشخص شده.

    برای نمایش کلیک کنید...

    این خطوط، وارد شده است اولیبه این صورت خواهد بود:

    فلش رو میبینی؟! این خیلی مهمه!
    به هر حال، اگر فقط برنامه را اجرا کنیم، هیچ اتفاقی نمی افتد. چرا؟
    چون رویه کوچک ما هنوز جایی فراخوان نشده است!
    لازم است آدرس ابتدای آن را بنویسید، یعنی. نشانی " فشار 0"چون ما باید پرش کنیم
    به روش ما و بازگشت
    عالی. حالا به ابتدای برنامه برگردید ( دکمه Cدر نوار ابزار اولییا همانطور که نشان داده شده است).

    اکنون ما در اولین خطی هستیم که باید اجرا شود.
    آیا هنوز به یاد دارید که هدف ما درج کد شماست؟
    سپس ادامه خواهیم داد!
    چند خط را از ابتدا انتخاب کرده و در کلیپ بورد کپی کنید.


    آنها را در هر ویرایشگر متنی قرار دهید - آنها همچنان برای ما مفید خواهند بود.
    دوباره به ابتدای برنامه برگردید.
    (تصویر بالا این است PUSH 70).
    با دوبار کلیک بر روی این خط، پنجره زیر نمایش داده می شود.
    شما باید وارد کنید " JMP<адрес PUSH 0, который мы записывали ранее> "
    دکمه Assemble را فشار دهید و کد برنامه دوباره تغییر می کند، یعنی. تغییرات با رنگ قرمز مشخص شده اند.

    به مستطیل قرمز نگاه کن! ما باید در انتهای کد خود به این آدرس برویم.
    اما اگر بعد از تزریق به اینجا بپریم، برنامه طوری اجرا می شود که انگار بدون آن است.
    بنابراین یک کار دیگر وجود دارد!
    شروع جدید برنامه را با برنامه قبلی که در ویرایشگر متن کپی کردیم مقایسه کنید.
    خواهید دید که دو خط بازنویسی شده است! اما ما به آنها برای عملکرد عادی نیاز داریم
    برنامه های بدون خطا خطوطی را که بازنویسی شده اند پیدا کنید.
    در مورد من کد زیر بود:

    PUSH 70
    PUSH NOTEPAD.01001898

    برای نمایش کلیک کنید...

    روی خط اول کد (ما JMP) و فشار دهید وارد.
    شما به کد تماس MessageBox درج شده منتقل خواهید شد!
    بعد از CALL MessageBoxAما باید این دو خط را وارد کنیم و به عقب برگردیم!


    این همه چیز است!
    (بررسی کنید که آیا پرش به درستی کار می کند آسان است - روی آن کلیک کنید وارد!)
    برای ذخیره دفترچه یادداشت "تغییر یافته" ما، مراحل را مانند تصویر دنبال کنید:
    سپس فشار دهید کپی همه. در پنجره ای که ظاهر می شود، کلیک راست کنید
    مورد منو را انتخاب کنید ذخیره فایلو با نام جدید ذخیره کنید. فایل را اجرا کنید:

    تابع اضافه شده نباید مستقیماً همانطور که در مقاله نوشته شده است فراخوانی شود، بلکه کمی متفاوت است.

    ابتدا پس از افزودن رویه به واردات، باید آن را بدانید FT (FirstThunk "IAT"). در اینجا نمایش داده می شود:

    آن را به خاطر بسپار!(بهش زنگ میزنم آدرس واقعی)​


    حالا بیایید به جایی که کد خود را می نویسیم ( غارهای کد).
    حالا بیایید فراخوانی صحیح را به تابع خود اضافه کنیم MessageBoxA. برای این کار می نویسیم:

    JMP [[B]TrueAddress]

    اگر اولیبه طور خودکار کد جدید را به عنوان یک فراخوانی رویه تعریف کرد - این بسیار بسیار خوب است! بنابراین آسان تر خواهد شد. اگر نه، پس شما آدرس واردات را اشتباه محاسبه کرده اید. دوبار چک کنید!
    آدرس اینو بنویس JMP(بهش زنگ میزنم TrueCall).

    اکنون ما همه کارها را مانند مقاله انجام می دهیم (درج خطوط، PUSH و غیره)، اما به جای:

    با MessageBoxA تماس بگیرید

    باید بنویسی:

    با [B]TrueCall تماس بگیرید

    بقیه به همان شکل باقی می ماند.

    برای نمایش کلیک کنید...

    اگر آنها سعی در اطمینان از امنیت این موضوع داشته باشند، فاش کردن کد منبع غیرممکن است (به خصوص اگر یک کالای مارک دار باشد).

    اما راه‌هایی برای آشکار کردن کامل یا جزئی کد وجود دارد.

    • IDA Pro بهترین کرکر رایگان است، برخی از ماکروها ممکن است به شما اجازه دهند که کد را دوباره تبدیل کنید. اما نه همیشه. محصولات Borland به ویژه به خوبی آشکار شده اند.
    • Hiew.Exe یک ابزار رایگان بسیار کوچک است که به شما امکان ویرایش کد زبان اسمبلی را می دهد. می توانید متن و ثابت های عدد صحیح را ویرایش کنید. حتی می توانید از آن برای "ترجمه" برنامه به زبان دیگر، پاک کردن نام شرکت و غیره استفاده کنید.
    • اگر فایل PDB وجود داشته باشد یا اطلاعات اشکال زدایی به فایل پیوست شده باشد، کد را می توان در محیط توسعه به دست آورد (اگر اطلاعات اشکال زدایی کامل باشد) به ندرت می توان از آن استفاده کرد. شما نمی توانید کد منبع را دریافت کنید، اما می توانید "شماره خط و نام منبع"، و همچنین نام / مقادیر همه ثابت ها، متغیرهای محلی را دریافت کنید، از "تجزیه توابع" اجتناب کنید و همچنین کلاس هایی با پر کردن کلاس دریافت کنید (تقریبا تمام ساختارها به جز متن برنامه) که درک برنامه را تا حد زیادی ساده می کند. برای برخی از کتابخانه ها (dll) فایل های pdb را می توان جداگانه دانلود کرد. بعید است که شرکتی که به خود احترام می گذارد، پی دی بی محصول ارزشمند خود را لو بدهد.
    • اطلاعات Debug، اطلاعات DebugInfo داخل exe وجود دارد. اگر چنین اطلاعاتی و ابزار مربوطه وجود دارد (به عنوان مثال، دلفی در Borland مونتاژ شده است، و در دسترس است)، می توانید مانند پاراگراف قبلی انجام دهید. اما بعید است که شرکتی که به خود احترام می گذارد چنین اشتباه "احمقانه" (مشابه pdb) را مرتکب شود.
    • اگر فایل به زبان سی شارپ نوشته شده باشد، می توان آن را تقریباً به طور کامل در کدها با استفاده از disSharp مشاهده کرد (اینگونه برنامه ها فقط mscorlib را در جدول واردات "اتصال" می کنند و تمام). DisSharp برخی از قسمت های برنامه را به خوبی از هم جدا نمی کند، اما شاید نسخه پولی آن یا نسخه پولی ابزارهای مشابه، کد را بهتر نشان دهد.
    • اگر فایل به زبان های FoxPro، Clipper و سایر زبان های بایت کد مشابه نوشته شده باشد، توسط ابزارهای ویژه (مثلا Refox) باز می شود.
    • ابزار exescope.exe ResourceHacker.exe و ابزارهای مشابه آن به شما امکان می دهد هدر، کتابخانه های متصل را مشاهده کنید (می توانید از آنها استفاده کنید فهمیدنبرنامه روی چه چیزی نوشته شده است) و منابع برنامه (فرم های منبع شامل دلفی، آیکون ها، تصاویر، جداول رشته های منابع) را ویرایش کنید.
    • اگر می دانید کد چگونه ایجاد شده است، فکر می کنم برنامه های کاربردی خاصی وجود دارد که می توانند آن را باز کنند (آنها پولی هستند و غیرقابل دسترسی هستند).

    باز هم، این به شرطی است که بسته‌کننده کد وجود نداشته باشد (پس ابتدا باید یک Depacker را اعمال کنید)، یک رمزگذار / کد خود اصلاح‌کننده. مگر اینکه توسط یک مبهم شکسته شود، پس باز نکنید. هر چه کد بیشتر باشد، درک آن سخت تر است.

    P.S. شخصاً نظر من این است که همه چیز فاش می شود ، هک می شود ، اما زمان زیادی می برد. شاید یک سال یا بیشتر (بسته به تجربه و ابزار، هیچ ابزار خوبی در حوزه عمومی وجود ندارد).