逆向-汇编(二)

tech2022-07-10  119

逆向-汇编(二)

x86大多数是小端模式存储,手机上的应用ARM模式:大多是大端模式存储 大端模式或者小端模式是受编译器影响的,可以改 加法,把ecx的值加到eax里面,最终结果存在eax里面 AL减这个内存的值,得到的结果再存到这个内存里面 减法

与运算 这个内存里面的值与eaxf的值进行一个与运算,结果存到这个内存里面 eax的值与内存里面的进行或运算 XOR异或 NOT非运算 下面这个指令就可以从内存到内存移动数据

只要用movs指令,默认就是EDI和ESI这俩寄存器 ESI里面是一个地址,或者说是一个内存的编号,就是你要复制的那个数据在哪里 EDI就是你要把数据复制到哪里去 movs指令可以一次复制一个,2个或者4个字节 现在的EDI和ESI都是空的 movs指令只要执行一次,EDI和ESI的地址就会往上+1 EFL每一位转成二进制,第十位是方向位DF

DF位是0的时候,每次执行一次movs指令,ESI跟EDI的值都会+1,2,4,取决于每次移动的字节数

DF位是1的时候,每次执行一次movs指令,ESI跟EDI的值都会-1,2,4,取决于每次移动的字节数

byte:就是把Al的值放到EDI指定的位置 word:就是把AX的值放到EDI指定的位置 dword:就是把EAX的值放到EDI指定的位置 每执行一次,EDI的值就会±124,如果想加,就让D是0,想减去就双击这个0让他变成1 想重复执行,输入下面这个指令,重复多少次取决于ECX里面的值是多少 每次执行一次,ECX里的值就-1,ECX里面的值是16进制的

最新回复(0)