EDX
  • 2024-04-29delphi 2006中,使用stdcall调用约定时,压缩结构参数的bug分析
    问题今天遇到一个很奇怪的问题,有一个dephi2006写的dll,使用了stdcall的调用约定,参数传递了结构体,在函数中收到的结构体值和传入的不一致,最后一个boolean类型,应为False,收到的是True,如下图:代码//结构体定义RStruct=packedrecordi1:Integer;i2:Integer;i3:I
  • 2024-04-07切换栈操作
    1.何时需要切换栈:上下文切换,如:当需要切换进程时,需要保存正在运行的进程并切换到新的进程。当从一个函数切换到另一个函数时,需要保存原有的栈寄存器2.切换栈需要有哪些基本操作:1.切换进程时,什么可以表示一个正在运行的程序?程序中各个寄存器的值表
  • 2024-02-04Chrome安全沙箱
    Chrome有使用安全沙箱在限制的进程中,对文件,管道,进程,注册表等都有沙箱限制A.dll加载限制加载程序目录下一个dll,失败复制系统的一个dll过来加载,成功修改下这个dll,破坏签名加载,失败跟踪在LdrLoadDll失败可以检查源码相关TargetNtCreateSection,实际限制
  • 2024-01-31eXeScope 注册机制算法破解
    使用x64dbg进行修改从网上找来一片文章,感觉靠谱,如下---------------------------------------------------------------------------------------第一次看到这个界面还是在十多年前,当时的我并不明白这些数据的含义。现在为它写一篇博客,算是一种纪念吧。用x64dbg加载exescop
  • 2023-12-31汇编-CDQ将有符号数双字转换为四字
     将eax寄存器中的有符号数扩展为edx:eax中的有符号数。如果eax是正数,则edx会被设置为00000000h;如果eax是负数,则edx会被设置为FFFFFFFFH.386.modelflat,stdcalloptioncasemap:none.stack4096IncludeIrvine32.incincludelibIrvine32.libExitProcessPROTO,dwExi
  • 2023-11-30汇编-Lea将内存地址加载到寄存器
     它的功能主要是将一个有效地址加载到寄存器中,让程序通过寄存器来访问相应的内存地址 lea指令的应用场景在汇编语言中,lea指令应用广泛,它通常用来完成以下几个任务:1.计算地址偏移量:当程序需要访问数组、结构体等数据结构中的某个元素时,我们可以使用lea指令来计算该元素相对
  • 2023-09-18【译】.NET 7 中的性能改进(四)
    原文|StephenToub翻译|郑子铭边界检查消除(BoundsCheckElimination)让.NET吸引人的地方之一是它的安全性。运行时保护对数组、字符串和跨度的访问,这样你就不会因为走到任何一端而意外地破坏内存;如果你这样做,而不是读/写任意的内存,你会得到异常。当然,这不是魔术;它是由JIT在
  • 2023-08-235.8 汇编语言:汇编高效除法运算
    通常情况下计算除法会使用div/idiv这两条指令,该指令分别用于计算无符号和有符号除法运算,但除法运算所需要耗费的时间非常多,大概需要比乘法运算多消耗10倍的CPU时钟,在Debug模式下,除法运算不会被优化,但Release模式下,除法运算指令会被特定的算法经过优化后转化为为乘法,这样就可以提高
  • 2023-08-225.4 汇编语言:算数运算指令集
    算术运算指令集是计算机中的一组基本操作,用于对数字执行常见的算术运算操作。这些指令都是计算机中非常基础的运算指令,可以用于实现所有常见的算术运算操作,并可以通过组合使用实现更加复杂的数学运算。在实际编程中,程序员可以根据具体需求选择合适的运算指令,实现程序中的算术运算操
  • 2023-08-225.4 汇编语言:算数运算指令集
    算术运算指令集是计算机中的一组基本操作,用于对数字执行常见的算术运算操作。这些指令都是计算机中非常基础的运算指令,可以用于实现所有常见的算术运算操作,并可以通过组合使用实现更加复杂的数学运算。在实际编程中,程序员可以根据具体需求选择合适的运算指令,实现程序中的算术运算
  • 2023-06-24加密市场新动向:比特币ETF申请浪潮、机构投资者入局和亚洲交易所发展!
        这是一个让加密社区心情大起大落的六月。尽管几周前,美国监管机构对加密行业进行致命打击,但随着比特币现货ETF申请浪潮、华尔街巨头推出交易所、挖矿业务积极扩张以及加密先驱为生存而战等诸多事件的发生,加密市场的信心开始重振比特币ETF申请浪潮掀起   多年来,十几家资
  • 2023-06-21资本宠儿“EDX Markets”上线,传统金融帝国即将复刻到加密世界?
        如今是加密世界,正呈现出魔幻般的景象。   一方面,Binance、Coinbase等加密原生机构正面临着SEC等监管机构的疯狂打击,而另一方面,传统金融世界似乎却加速了入局的步伐,贝莱德申请BTC现货ETF、德意志银行申请数字资产牌照、富达正考虑收购灰度(Grayscale),而这种趋势仍在继续。
  • 2023-06-14java开发系统内核:使用一个中断实现多个API调用
    在上一节,我们实现了通过中断访问内核API的功能,本节,我们进一步改进中断调用内核API的机制。当前,我们使用一个中断来对应一个API,问题是内核导出的API不可能只有一个,如果始终保持一个中断对应一个API的话,那么CPU只支持两百多个中断,也就是说,按照上一节的办法,我们内核最多只能导出两百
  • 2023-05-13ExtCreateRegion - 区域变换
    相似函数:SetWorldTransform本例效果图:代码文件:unitUnit1;interfaceuses Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms, Dialogs,StdCtrls,ExtCtrls;type TForm1=class(TForm)  RadioGroup1:TRadioGroup;  pro
  • 2023-05-102.2 算术和逻辑操作
    加载有效地址leal指令也称为加载有效地址(loadeffectiveaddress)指令,它实际上是movl指令的变形。它的指令形式是从存储器读数据到寄存器,但实际上它根本没有引用存储器。它的第一个操作数看上去是一个存储器引用,但该指令并不是从指定的位置读取数据,而是将有效地址写入到目的操
  • 2023-05-012.地牢大师(简单搜索 BFS)
    地牢大师↑题目链接题目你现在被困在一个三维地牢中,需要找到最快脱离的出路!地牢由若干个单位立方体组成,其中部分不含岩石障碍可以直接通过,部分包含岩石障碍无法通过。向北,向南,向东,向西,向上或向下移动一个单元距离均需要一分钟。你不能沿对角线移动,迷宫边界都是坚硬的岩石,你
  • 2023-04-25pt_regs结构
    structpt_regs{longebx;//可执行文件路径的指针(regs.ebx中longecx;//命令行参数的指针(regs.ecx中)longedx;//环境变量的指针(regs.edx中)。longesi;longedi;longebp;longeax;intxds;int
  • 2023-03-30MSF实战免杀过静态:ShellCode加花指令
    分析MSF的ShellCode1.Hash寻找系统API函数由于ShellCode是没有PE结构的,无法通过导入表来调用系统的API函数,因此,这部分是一个通用的API调用函数,它可以根据给定的哈希值查找并调用相应的API。在查找API时,它会遍历已加载模块的列表以及每个模块的导出地址表。这个函数在Shellcode中
  • 2023-03-1432位汇编语言实现求数组的最大值
    INCLUDEIrvine32.inc.dataarrdd99,2,3,1,22,188,7,77,54,10;定义数组 lendd($-arr)/4;用当前地址减去数组首元素地址除以4得到数组的长度.codemainPROC
  • 2023-03-1432位汇编语言实现冒泡排序
    INCLUDEIrvine32.inc.dataarrdd99,2,3,1,22,88,7,77,54;定义数组lendd($-arr)/4;定义数组的长度变量.codemainPROCmovedx,offsetarr
  • 2023-03-09BUU pwn PicoCTF_2018_shellcode //最简单的shellcode
    这道题需要我们了解x86汇编的lea指令。leadst,src指的是dst=&srcfile可知32bitELFIDAF5发现反编译失败,查看main函数的汇编,发现会调用vuln函数。其中leaeax,[ebp+va
  • 2023-02-22【译】.NET 7 中的性能改进(四)
    原文|StephenToub翻译|郑子铭边界检查消除(BoundsCheckElimination)让.NET吸引人的地方之一是它的安全性。运行时保护对数组、字符串和跨度的访问,这样你就不会
  • 2023-02-02csapp lab1,第六项拆弹工作
    第六项拆弹集合了1-5所有的内容,所以看起来比较复杂,本文只对此进行分析  地址401106将数据按顺序入栈。40117-401121判断输入的第一个数减1是否是无符号<=5的值,因
  • 2023-01-09逆向—堆栈
    假设我们需要一块内存,有如下的要求:1、主要用于临时存储一些数据,如果数量很少就放到寄存器中2、能够记录存了多少数据3、能够非常快速的找到某个数据我们可以这样来设计
  • 2022-12-28逆向工程 PE 逆向
    逆向工程PE逆向CraMe1.exehttps://github.com/SKPrimin/HomeWork/tree/main/ReverseEngineering/lab5_pe运行CraMe1.exe,提示"urright!"代表成功。首先修改exe使