一、条件跳转指令特定标志值的跳转jz 为零跳转 zf=1jnz 非零跳转 zf=0jc 有进位则跳转 cf=1jnc 无进位则跳转 cf=0jo 溢出则跳转 of=1jno 无溢出则跳转 of=0js 如果符号位为1则跳转 sf=1jns 如果符号位为零则跳转 sf=0jp 如果奇偶标志位为1(奇偶性为偶)则跳转 pf=1jnp 如果奇偶标志位为0(奇偶性为奇)则跳转 pf=0基于相等性的跳转je 如果相等(leftop=rightop)则跳转jne 如果不相等(leftop!=rightop)则跳转jcxz 如果cx=0则跳转jecxz 如果ecx=0则跳转jrcxz 如果rcx=0则跳转基于无符号数比较的跳转ja 如果多于则跳转(若leftop>rightop)jnbe 如果不是少于或等于则跳转(与ja相同)jae 如果多于或等于则跳转(若leftop>=rightop)jnb 如果不少于则跳转(与jae相同)jb 如果少于则跳转(若leftopjnae 如果不是多余或等于则跳转(与jb相同)jbe 如果少于或等于则跳转(若leftjna 如果不多于则跳转(与jbe相同
1. VirtualProtectEx 函数更改指定进程的虚拟地址空间中已提交页面区域的保护。(修改内存值)(1)语法BOOL VirtualProtectEx( [in] HANDLE hProcess, [in] LPVOID lpAddress, [in] SIZE_T dwSize, [in] DWORD flNewProtect, [out] PDWORD lpflOldProtect);(2)参数[in] hProcess要更改其内存保护的进程句柄。 句柄必须具有 PROCESS_VM_OPERATION 访问权限。 有关详细信息,请参阅 进程安全和访问权限。[in] lpAddress指向要更改其访问保护属性的页区域的基址的指针。指定区域中的所有页面都必须在使用 MEM_RESERVE 调用 VirtualAlloc 或 VirtualAllocEx 函数时分配 的同一保留区域。 这些页面不能跨通过单独调用 VirtualAlloc 或 VirtualAllocEx(使用 MEM_RESERVE)分配的相邻保留区域。[in] dwSize访问保护属性已
需在开头添加一行from idc_bc695 import *
一、binascii库基本介绍用处主要用于二进制和ASCII互相转换(Convert between binary and ASCII );包含的函数使用前要将字符串转换为字节流数据才能用此模块!方法(1):b = string.encode()方法(2):b = bytes(string,'ascii')相关内置函数chr():把一个整形转换成ASCII码表中对应的单个字符 ord():把ASCII码表中的字符转换成对应的整形 hex():把十进制转换成16进制字符 oct():把十进制转换成八进制字符 bin():把十进制整形转换成二进制字符 code,使用示例二、常用功能(1)二进制数据(byte类型数据)和ASCII的转换在16进制和字符串的转换过程中,主要用到了以下几个函数:a2b_hex():返回16进制的二进制数据表现形式b2a_hex():返回二进制数据的16进制表现形式hexlify():返回二进制数据的16进制表现形式unhexlify():返回16进制的二进制数据表现形16进制数据转换成字符串此时b= 68656c6c6f2c2077726f6c64c
一、常用快捷键命令 简写形式 说明backtrace bt、where 显示backtracebreak b 设置断点continue c、cont 继续执行delete d 删除断点finish 运行到函数结束info breakpoints 显示断点信息next n 执行下一行print p 显示表达式run r 运行程序step s 一次执行一行,包括函数内部x 显示内存内容until
Norman1z