רק למען הסקרנות, אם אתה אכן מכיר כלי
Obfuscator לקוד מקור (אני יודע שקיימים לא מעט כלים כאלה לקוד מקומפל), אשמח ללינק ואני חושב שכך גם השואל המקורי, שכן אם הבנתי נכון, זה בדיוק מה שהוא מחפש. והערה אישית קטנה (אני לא רוצה לפתוח ויכוח לא קשור לפורום, אבל בכל זאת רוצה לציין נקודה קטנה): מתנה שעלולה לסבך אותך מול לקוח היא לא מתנה טובה. אני מבין את הסיבות בגללן מפתח, (או אפילו חברה) ירצו מצד אחד להסתיר את הקוד שלהם ומצד שני לתת ללקוח תמריץ להמשיך לעשות אתם עסקים או להמליץ עליהם לאחרים. אבל, הצרה היא, שלקוחות מצפים שגם מה שקיבלו במתנה יעבוד, ואם יש תקלה הם יצפו שתתקן אותה. ואם תגיד להם "קיבלת את זה חינם, אני לא חייב לתקן" אתה מציג את עצמך באור שלילי. זה אחד המקרים בהם "עדיף להיות חכם מאשר צודק" (משהו שמורה נהיגה שלי לימד אותי בזמנו). המקרה ממנו אני מנסה להזהיר הוא כזה: פונקציה X עובדת תקין ועוברת בדיקות. לאחר שהקוד עובר עיבוד ע"י כלי ערבול כזה או אחר נוצר באג בפונקציה X שלא קיים בגרסה הלא מעורבלת. זה יכול לקרות בקלות בגלל יישומי קומפיילר שאינם מתאימים לתקנים ב-100%, בגלל תקנים רופפים בשפה שכל יצרן מפרש כרעות עיניו או בגלל שהקוד עובר אופטימיזציה בצורה שונה. לכל שינוי בקוד יש פוטנציאל להכניס באג, ובטח שבטח שינוי שנעשה ע"י כלי אוטומטי "חסר שכל". וקוד מעורבל, אם אכן עבר ערבול ייסודי, יהיה קשה עד בלטי אפשרי לדבג. הפתרון הנכון למקרה כזה לדעתי, הוא לעטוף את המנגנון במודול נפרד שיישאר סגור.