惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
Netflix TechBlog - Medium
V
Vulnerabilities – Threatpost
Google Online Security Blog
Google Online Security Blog
Hugging Face - Blog
Hugging Face - Blog
L
LINUX DO - 热门话题
云风的 BLOG
云风的 BLOG
P
Proofpoint News Feed
D
Docker
C
Cyber Attacks, Cyber Crime and Cyber Security
MyScale Blog
MyScale Blog
P
Palo Alto Networks Blog
T
Tenable Blog
P
Privacy International News Feed
Google DeepMind News
Google DeepMind News
小众软件
小众软件
Cisco Talos Blog
Cisco Talos Blog
aimingoo的专栏
aimingoo的专栏
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
A
Arctic Wolf
C
Cybersecurity and Infrastructure Security Agency CISA
C
Cisco Blogs
T
Threat Research - Cisco Blogs
NISL@THU
NISL@THU
The Hacker News
The Hacker News
Project Zero
Project Zero
AWS News Blog
AWS News Blog
Simon Willison's Weblog
Simon Willison's Weblog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Threatpost
V
Visual Studio Blog
The GitHub Blog
The GitHub Blog
The Cloudflare Blog
Last Week in AI
Last Week in AI
Jina AI
Jina AI
Cyberwarzone
Cyberwarzone
The Register - Security
The Register - Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
Vercel News
Vercel News
D
Darknet – Hacking Tools, Hacker News & Cyber Security
MongoDB | Blog
MongoDB | Blog
U
Unit 42
Scott Helme
Scott Helme
A
About on SuperTechFans
WordPress大学
WordPress大学
F
Fortinet All Blogs
大猫的无限游戏
大猫的无限游戏
G
GRAHAM CLULEY
Latest news
Latest news
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
S
Schneier on Security

博客园 - 汇编工具视频笔记教程

那你再查一下View==> Source这一功能的实现:是如何调用源码一起来调试的? 如何让QT工程回到未编译前的样子?需要删除哪些文件夹? X64dbg中minidump文件夹的用途 x64dbg这个文件夹memdumps有啥用? cnpack卸载不干净,Delphi 11.1启动报错时的解决 Delphi 11.1 强行安装修改【一键中英文助手】版本号失败后的解决: 法王八强版x64dbg 存档 流程图 Delphi程序,已知机器码是:558BEC 要求反转为: EC8B55 delphi反转机器码的实现: delphi剪贴板类型 解决cnpack不正常使用的键值 x64dbg构建时正确的返回信息 Delphi 10.4.2 topics.chm帮助文件中文版 Ollydbg_x36dbg贴心伴侣 8.88版2021-5-5号发布 Ollydbg/x32dbg/x64dbg贴心伴侣 Version 6.48使用详解 视频教程x32dbg_x64dbg命令脚本从入门到精通 Red Gate .NET Reflector 10.2.1.1800汉化版使用心得
写机器码改写EXE文件
汇编工具视频笔记教程 · 2022-01-11 · via 博客园 - 汇编工具视频笔记教程

版本1:

procedure TForm1.Button2Click(Sender: TObject);
var
  vFS: TFileStream;
  A1: Integer;
begin
  A1 := $07EB;                     //要写入的机器码
  ShowMessage(IntToStr(A1));       //变成了10进制的啦
  vFS := TFileStream.Create(sEdit1.Text, fmOpenReadWrite);
  try
    vFS.Position := $843;        //要写入的FOA(文件偏移地址)即在x64dbg中直接复制得到的那个无需转换!
    vFS.WriteBuffer(A1, Length(E2.Text) div 2);
  finally
    FreeAndNil(vFS);
  end;
end;

View Code

版本2:

procedure TForm1.cc1Click(Sender: TObject);
var
  vFS: TFileStream;
  a: TBytes;
begin
  vFS := TFileStream.Create(sEdit1.text, fmOpenReadWrite);
  try
    vFS.Position := $843; //后面这个赋值E1不会报错
    SetLength(a, Length(E2.Text) div 2);      //后面是写入的长度
    a[0] := $EB;          //后面这里转换成字节数组不会
    a[1] := $07;
    vFS.WriteBuffer(a[0], Length(a));         //a[0]指向首地址
  finally
    FreeAndNil(vFS);
  end;
end;

View Code

版本3:组合了(取编辑框字符串+拆分成字节码数组)

{好友巧妙的用了一个自定义函数完成转换!
不然直接调用就出错了!
}
function HexToInt(Value: string): Integer;
begin
  result := StrToInt('$' + Value);
end;


procedure TForm1.NewClick(Sender: TObject);
var
  vFS: TFileStream;
  A1: Integer;
begin
  A1 := HexToInt(E2.Text);            //要写入的机器码
//  ShowMessage(IntToStr(A1));       //变成了10进制的啦
  vFS := TFileStream.Create(sEdit1.Text, fmOpenReadWrite);
  try
    vFS.Position := HexToInt(E1.Text);        //要写入的FOA(文件偏移地址)即在x64dbg中直接复制得到的那个无需转换!
    vFS.WriteBuffer(A1, Length(E2.Text) div 2);
  finally
    FreeAndNil(vFS);
  end;
end;

View Code

拆分机器码:

procedure TForm1.sdsdClick(Sender: TObject);
var
  buf: array[0..100] of byte;
  str: string;
begin
  str := '07EB';
  Move(str[1], buf[0], 32);
  ShowMessageFmt('$%.2d, $%.2d, $%.2d, $%.2d', [buf[3], buf[2], buf[1], buf[0]]);
end;

View Code

采用EnigmaVirtualBox制作单文件便携版只是兴趣爱好,在WES7环境中制作,不保证全系统下正常,随缘随心随性。 温馨提醒建议在SandBoxie中测试https://www.lanzous.com/iatkifc