修改飞秋2013~随便改,瞬间提升你的逼格

我是玩Java的,在一个局域网里面通常会用到飞秋之类的聊天工具,相信飞秋大家也很熟悉,接下来给大家献上用了一个晚自习时间摸索出来的飞秋修改方案,用Java代码实现的,直接贴代码

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
/**
 * 修改飞秋。其实可以修改任何没有经过压缩的文件或程序
 * 编译本代码,然后把飞秋程序复制到同一目录,并且更名为4.exe,然后运行本程序
 * @author 71934
 *
 */



public class Tools1 {
	public static void main(String[] args) {
		try {
			go("自己", "大神");
			//这样,当你打开修改后的飞秋的时候你会发现“自己”分组变成“大神”分组了
		} catch (IOException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		}
	}
	private static void go(String lodField,String newField) throws IOException{
		// TODO 自动生成的方法存根
		byte[] feiQiu = new byte[1024*64];		//64K的对比空间
		FileInputStream in = new FileInputStream(new File("4.exe"));
		FileOutputStream out = new FileOutputStream(new File("5.exe"));
		String title = lodField;		//飞秋(FeiQ) 2013 正式版
		for (int i = in.read(feiQiu, 0, feiQiu.length); i > 0; i = in.read(feiQiu, 0, feiQiu.length)) {
			String temp = new String(feiQiu);
			if(temp.contains(title)){
				//锁定二进制位置
				int head = temp.indexOf(title);
				int foot = title.length();
				//字节提取
				ArrayList<Byte> headlist = new ArrayList<>();
				for(int j = 0 ; j < head ; j++){
					//X
					headlist.add(feiQiu[j]);
				}
				byte[] newtitle = newField.getBytes();
				for(int j = 0 ; j < foot ; j++){
					//Y
					headlist.add(newtitle[j]);
				}
				for(int j = head+foot ; j < feiQiu.length ; j++){
					//Z
					headlist.add(feiQiu[j]);
				}
				//移花接木
				for(int j = 0 ; j < headlist.size() ; j++){
					out.write(headlist.get(j));
				}
				
				System.out.println("找到1项匹配,更改");
				
			}else{
				out.write(feiQiu, 0, i);
			}
			
		}
		in.close();
		out.close();
	}
}

将上面这条代码编译,然后跟飞秋放在同一目录,并且将飞秋更名为4.exe,运行本代码会发现目录中多出了一个5.exe,这个5.exe就是修改后的飞秋

这是通过IO的巧妙复制实现的

原理:在复制的过程中寻找String元素,直接new一个String,把字节放进去,能查到的就是String元素

找到要修改的String后,定位这个String元素对应的二进制所在的位置,找到后,将新的String转换成bate[]数组,替换进去

然后直接write。

理论上可以修改任何文件


猜你喜欢

转载自blog.csdn.net/guoshengkai373/article/details/46673909