资讯详情

[逆向]汇编JCC指令举例

一前言

今天文章的主要内容是逆向基础汇编JCC指令举例,JCC指令是满足跳转指令的条件。上一篇文章介绍了基本用法。如果你不明白,你可以先看看我的最后一篇文章。今天,我主要举例加强巩固.

二JCC指令举例

//-------jz-------等于0转移

运行效果如图所示,满足jz 然后直接从断点跳到lab代码贴在下面

_asm{             mov al,0x3    mov cl,0x3    sub al,cl    jz lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx } 

//-------jnz-------不等于0转移

_asm{    //-------jnz-------不等于0转移   mov eax,0x5   add eax,0x2   jnz lab   mov eax,ecx   mov eax,ecx lab:   mov eax,ecx  }

//-------js-------为负转移 sf=1

_asm{   //-------js-------为负转移 sf=1    mov al,0x7f    add al,0x2    js lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------jns-------为正转移 sf=0

_asm{    //-------jns-------为正转移 sf=0    mov al,0x23    add al,0x3    jns lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------jo-------溢出转移 of=1

_asm{   //-------jo-------溢出转移 of=1    mov ax,0x7fff    add ax,0x3    jo lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------jno-------不溢出转移 of=0

_asm{   //-------jno-------不溢出转移 of=0    mov ax,0xffff    add ax,0x4    jno lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------jp/jpe-------偶转移 PF=1

_asm{   //-------jp/jpe-------偶转移 PF=1    mov eax,0x4    add eax,0x2    jpe lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------jnp/jpo-------奇转移 PF=0

_asm{ //-------jnp/jpo-------奇转移 PF=0    mov al,0x4    add al,0x3    jpo lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------jc-------位置转移进位标志 CF=1

_asm{   //-------jc-------位置转移进位标志 CF=1    mov al,0xff    add al,0x3    jc lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------jnc-------清转移进位标志 CF=0

_asm{   //-------jnc-------清转移进位标志 CF=0    mov al,0x5f    sub al,0x2    jnc lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------JB/JNAE-------无符号小于转移

_asm{   //-------JB/JNAE-------无符号小于    mov eax,0x8    cmp eax,0x9    jnae lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------JNB/JAE-------无符号大于等于转移

_asm{  //-------JNB/JAE-------大于号大于等于    mov eax,0x35    mov ecx,0xf    cmp eax,ecx    jnb lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------JBE/JNA-------无符号小于等于转移

_asm{  //-------JBE/JNA-------无符号小于等于    mov al,0x4    cmp al,0x9    jbe lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------JNBE/JA-------无符号大于转移

_asm{  //-------JNBE/JA-------无符号大于    mov eax,0x45    cmp eax,0x2    jnbe lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  } 

//-------JL/JNGE-------符号小于转移

_asm{  //-------JL/JNGE-------有符号小于    mov eax,0x80000000    cmp eax,0x1    jl lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------JNL/JGE-------符号大于等于转移

_asm{  //-------JNL/JGE-------符号大于等于    mov al,0xff    mov cl,0xfd    cmp al,cl    jnl lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------JLE/LNG-------符号小于等于转移

_asm{  //-------JLE/LNG-------符号小于等于    mov ax,0x95    mov cx,0xfe    cmp ax,cx    jle lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

//-------JNLE/LG-------符号大于转移

_asm{  //-------JNLE/LG-------有符号大于    mov al,0x85    cmp al,0x80    jnle lab    mov eax,ecx    mov eax,ecx lab:    mov eax,ecx  }

今天的文章到此为止。如果你什么都不懂,欢迎和我交流。我一定知道一切。这篇文章也付出了一定的努力。喜欢的朋友可以表扬和关注。非常感谢!

标签: tr35jbe0330电阻

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

 锐单商城 - 一站式电子元器件采购平台  

 深圳锐单电子有限公司