首页
社区
课程
招聘
[原创][CrackMe] .NET Reactor 4.9.0.0
发表于: 2014-10-25 19:39 6584

[原创][CrackMe] .NET Reactor 4.9.0.0

2014-10-25 19:39
6584
.NET Reactor [4.9.0.0] *05-Jun-2014
- [+] Improved NecroBit protection
- [+] Improved string encryption
- [+] Improved resource encryption and compression
- [+] Improved 'Inject Invalid Metatada' feature
- [+] New internal encryption algorithms to prevent static analysis by decompiler/deprotector
- [!] Fixed issue failing Windows Store Apps certification
- [!] Fixed issue affecting MarshalAsAttribute using UnmanagedType.SafeArray as paramter
- [!] Fixed control flow obfuscation issue
- [!] Fixed Anti ILDASM problem in case the base type of a class is SafeHandle
- [!] Fixed bug affecting unhandled exception handlers
- [!] Fixed minor bugs

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 60
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2

for (int i = 0; i < buffer5.Length; i++)
{
buffer4 = (byte) (buffer4 ^ buffer5);
}
byte[] buffer = buffer6;
int num10 = buffer.Length % 4;
int num5 = buffer.Length / 4;
byte[] buffer2 = new byte[buffer.Length];
int num19 = buffer4.Length / 4;
uint num6 = 0;
uint num9 = 0;
uint num3 = 0;
if (num10 > 0)
{
num5++;
}
uint index = 0;
for (int j = 0; j < num5; j++)
{
int num20 = j % num19;
int num8 = j * 4;
index = (uint) (num20 * 4);
num9 = (uint) ((((buffer4[(int) ((IntPtr) (index + 3))] << 0x18) | (buffer4[(int) ((IntPtr) (index + 2))] << 0x10)) | (buffer4[(int) ((IntPtr) (index + 1))] << 8)) | buffer4[index]);
uint num21 = 0xff;
int num22 = 0;
if ((j == (num5 - 1)) && (num10 > 0))
{
num3 = 0;
for (int k = 0; k < num10; k++)
{
if (k > 0)
{
num3 = num3 << 8;
}
num3 |= buffer[buffer.Length - (1 + k)];
}
num6 += num9;
}
else
{
index = (uint) num8;
num3 = (uint) ((((buffer[(int) ((IntPtr) (index + 3))] << 0x18) | (buffer[(int) ((IntPtr) (index + 2))] << 0x10)) | (buffer[(int) ((IntPtr) (index + 1))] << 8)) | buffer[index]);
num6 += num9;
}
uint num13 = 0x52857179;
uint num14 = 0x4906343c;
uint num15 = 0x695f1cea;
uint num16 = num6;
uint num17 = 0x26636b15;
num13 = (uint) (((ulong) (0x52857179 * 0x52857179)) % 18446744073462706256L);
num14 = (uint) ((0x4906343c >> 8) | (0x4906343c << 0x18));
num15 = (uint) ((0x1100b000 >> 8) | (0xaf00ad << 8));
if (0x26636b15 == 0.0)
{
num17--;
}
uint num18 = ((uint) (-24811.0 / ((double) num17))) + num17;
num17 = (0xffffee50 - num18) + ((uint) 75640279.0);
num16 ^= num16 << 1;
num16 += num14;
num16 ^= num16 >> 3;
num16 += num15;
num16 ^= num16 << 10;
num16 += num17;
num16 = (((num13 << 0x12) + num15) ^ num15) + num16;
num6 += num16;
if ((j == (num5 - 1)) && (num10 > 0))
{
uint num23 = num6 ^ num3;
for (int m = 0; m < num10; m++)
{
if (m > 0)
{
num21 = num21 << 8;
num22 += 8;
}
buffer2[num8 + m] = (byte) ((num23 & num21) >> num22);
}
}
else
{
uint num7 = num6 ^ num3;
buffer2[num8] = (byte) (num7 & 0xff);
buffer2[num8 + 1] = (byte) ((num7 & 0xff00) >> 8);
buffer2[num8 + 2] = (byte) ((num7 & 0xff0000) >> 0x10);
buffer2[num8 + 3] = (byte) ((num7 & -16777216) >> 0x18);
}
}


这是什么?完全看不懂。
顺便膜拜会写CrackMe 的人。
2014-10-25 22:37
0
雪    币: 66
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
这个是加壳上去的部分代码
2014-10-26 08:26
0
雪    币: 237
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
using System;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
namespace CrackMe
{
        public class Form1 : Form
        {
                private bool bool_0;
                private IContainer icontainer_0;
                private Button button1;
                public Form1()
                {
                        Class3.EqpH8frzNX5Nn();
                        this.icontainer_0 = null;
                        base..ctor();
                        this.InitializeComponent();
                }
                private void button1_Click(object sender, EventArgs e)
                {
                        if (this.bool_0)
                        {
                                MessageBox.Show("I'm Cracked");
                        }
                        else
                        {
                                MessageBox.Show("Try Again.");
                        }
                }
                private void Form1_Load(object sender, EventArgs e)
                {
                        this.bool_0 = false;
                }
                protected override void Dispose(bool disposing)
                {
                        if (disposing && this.icontainer_0 != null)
                        {
                                this.icontainer_0.Dispose();
                        }
                        base.Dispose(disposing);
                }
                private void InitializeComponent()
                {
                        this.button1 = new Button();
                        base.SuspendLayout();
                        this.button1.Location = new Point(12, 12);
                        this.button1.Name = "button1";
                        this.button1.Size = new Size(276, 42);
                        this.button1.TabIndex = 0;
                        this.button1.Text = "Check License";
                        this.button1.UseVisualStyleBackColor = true;
                        this.button1.Click += new EventHandler(this.button1_Click);
                        base.AutoScaleDimensions = new SizeF(6f, 12f);
                        base.AutoScaleMode = AutoScaleMode.Font;
                        base.ClientSize = new Size(296, 59);
                        base.Controls.Add(this.button1);
                        base.Name = "Form1";
                        this.Text = "CrackMe [.NET Reactor4.9]";
                        base.Load += new EventHandler(this.Form1_Load);
                        base.ResumeLayout(false);
                }
        }
}
2015-5-25 13:43
0
游客
登录 | 注册 方可回帖
返回
//