C#逆向教程(5)For循环
这课讲一下For循环,C#源码using System;using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//用for实现计算1到100之间(包含1、100)所有整数的和。
int sum = 0;
for (int i = 1; i <= 100; i++)
{
sum = sum + i;
}
string text = sum.ToString();
textBox2.Text = text;
}
}
}
这是一个简单的计算1到100的和
效果如下,点击提交出现和
程序丢进RE,定位到关键点
这种情况比较常见的是修改账号数量,列表数量之类的,比如程序限制5账号,10账号,有可能作者会采取FOR循环,那么我们想改大账号数量,修改那个数字100就可以了
打开插件,查看此处IL代码
可以看到,IL里的代码逻辑是这样的,执行到5之后强制跳16,然后和100比,如果比100小,23的时候跳回6循环,否则继续执行,结束方法
要修改数量只需要在标号17的地方,ldc i4.s 100改大就可以了
不过这里要注意的是
SByte最大值是127,改超过这个值就变成0,要想改更大,修改数据类型
Int32或者Int64都可以,这课就到这里了
真心不错,楼主的系列教程非常好。
[快捷回复]-感谢楼主热心分享! 感谢楼主分享 感谢分享 跟着学习一下 谢谢大佬分享
页:
[1]
2