Print assembler hex in one pass

STM32 低功耗问题 当低功耗模式进入后,无法下载 download 失败 方法一、 1)RST保持复位,然后下载,出现一个“---JTAG---”弹出一个框; 2)去掉复位,然后下载操作。 方法二: 如果以上方法不可靠,采用下面的方式。s 方法处理:第一步、boot0引脚需要拉到vcc,并且RST保持复位。可能会出现提示:“···JTAG cable···” 第二步,断开boot0到VCC,rst不要复位,可以正常下载了 wakeup event 管理:摘自《reference ma... 阅读详情
Jason Geffner posted a piece of code to demonstrate how to print out a bulk of assembler hex in one pass,
    http://blogs.msdn.com/geffner/archive/2006/02/10/529320.aspx, i managed to work out another way to 
    accomplish the same work:

#include "stdafx.h"

typedef unsigned char __u8;

void __declspec(naked) shellcode(void)
{
 __asm {
        mov eax, 0x15db  
        rol eax, 0x13
        xor eax, 0xdeadbeef
        shr eax, 0x10
        mov ebx, eax
        shl eax, 0x2
        add eax, ebx
        add eax, ebx
        add eax, ebx
        add eax, 0x4
 }
}

void __declspec(naked) stub(void)
{
}

int __cdecl main(int argc, char* argv[])
{
    int i;
    for (i  =  0;  i  <  (__u8 *)stub - (__u8 *)shellcode;  i++)
    {
        printf ("//x%02x", ((__u8*)shellcode)[i]);
    }
    printf("/n");
    return 0;
}

don't forget to turn on Minimize Size optimization option in Visual C++ compiler, missing this option will make the compiler align the machine code with 4 bytes, so for the sample code, there're 2 byte nop instruction in tail.
Jason is a Virus Analyst of Microsoft Anti Malware team, his blog is worth of a reading.

keil编译中的常见问题 硬件开发中使用Keil环境时常遇到的错误或警告. 立即下载

相关推荐

Cadence ADE实战:1GHz VCO相位噪声仿真全流程(附PSS/Pnoise避坑指南)

本文详细介绍了在Cadence ADE环境中对1GHz VCO进行相位噪声仿真的完整流程。重点剖析了PSS(周期性稳态分析)和Pnoise(周期性噪声分析)两大核心引擎的关键参数设置与避坑指南,帮助射频与模拟IC设计者准确评估VCO性能,解决仿真不收敛、结果异常等常见问题。

rock5的博客 672

Keil4编译原子哥的SYSTEM出现错误error: #1113: Inline assembler not permitted when generating Thumb cod

原文地址:点击打开链接 由于版本问题Keil4编译原子哥的SYSTEM会出现此.c文件错误:void WFI_SET(void){__ASM volatile("wfi");  }//关闭所有中断void INTX_DISABLE(void){  __ASM volatile("cpsid i");}//开启所有中断void INTX_ENABLE(void){__ASM volatile("cp...

qq_34593278的博客 5933

DCA决策曲线的解读和代码实现

0.决策曲线 决策曲线分析法(Decision Curve Analysis,DCA)是个与ROC曲线相提并论的相对比较新的模型评价方法。 关于它的原理,长篇大论的医学统计学知识解读实在不是我的强项,放上两个链接偷偷懒: https://www.plob.org/article/12455.html https://www.iikx.com/news/statistics/1622.html 如果想看文章,这篇里的fig7就是:https://www.ncbi.nlm.nih.gov/pmc/artic

weixin_42960896的博客 1万+

编译原子哥的SYSTEM出现错误 Inline assembler not permitted when generating Thumb code

原文地址::http://www.openedv.com/posts/list/0/55803.htm;jsessionid=BF32A849CB8EF733FEEC85010EBCE48C void WFI_SET(void) { __ASM volatile("wfi");   } //关闭所有中断 void INTX_DISABLE(void) {   __ASM v

xqhrs232的专栏 8161

iTerm2+oh-my-zsh最全配置

iTerm2+oh-my-zsh最全配置安装前先看效果图一.安装[iTem2](https://iterm2.com/)二.安装[oh-my-zsh](https://ohmyz.sh/)三.安装[Powerline](https://powerline.readthedocs.io/en/latest/installation.html)四.安装 [Meslo](https://github.com/powerline/fonts) 字体库五.安装agnoster主题六.安装语法高亮七.安装代码补全插件八

xinximo的博客 2611

红外通信不止遥控器:手把手教你用2ASK调制实现语音+温度数据同传

本文详细介绍了如何利用2ASK调制技术实现红外通信系统,同时传输语音和温度数据。通过STM32F103C8T6微控制器和DS18B20温度传感器的硬件设计,结合2ASK调制原理,展示了系统的完整实现方案。文章还提供了调试优化建议,适合电子爱好者和通信工程学生实践学习。

weixin_42531588的博客 389

MDK4版本3.80编译正点原子的SYSTEM出现错误 Inline assembler not permitted when generating Thumb code

void WFI_SET(void){__ASM volatile("wfi");  }//关闭所有中断void INTX_DISABLE(void){  __ASM volatile("cpsid i");}//开启所有中断void INTX_ENABLE(void){__ASM volatile("cpsie i");  }//设置栈顶地址//addr:栈顶地址__asm void MSR_M...

博闻天下-lei的博客 3338

雷电模拟器+Python 3.11:手把手教你用Frida-dexdump给安卓APK脱壳(附GDA查壳)

本文详细介绍了如何使用雷电模拟器和Python 3.11配合Frida-dexdump工具进行安卓APK脱壳的全流程。从环境配置、工具安装到脱壳操作和问题排查,提供了包含30+关键截图的保姆级教程,适合零基础用户快速上手。重点讲解了Frida工具链的使用技巧和GDA查壳方法,帮助读者掌握移动应用安全分析的基础技能。

weixin_42568801的博客 329

Python自动化生成PPT:数据驱动的办公生产力革命

PowerPoint自动化是企业级数据可视化与报告交付的关键技术路径,其核心在于打通结构化数据(如Excel、数据库)到专业幻灯片的端到端流水线。基于python-pptx、pandas与matplotlib的技术栈,可实现图表渲染、占位符注入、模板复用等关键能力,解决VBA在多源数据兼容性、图表自由度和调试效率上的固有缺陷。该方案强调‘母版驱动’而非代码绘图,保障品牌规范与设计一致性;通过三层解耦架构(数据层/渲染层/组装层)提升长期可维护性。适用于财务月报、销售复盘、HR分析等高频标准化汇报场景,零基础

baichuan9723的博客 415

Word公式一键转MathType保姆级教程(附omml2mml.xsl报错终极解决方案)

本文提供Word公式一键转MathType的保姆级教程,重点解决常见的omml2mml.xsl报错问题。通过详细分析报错原因、官方解决方案实操步骤及转换后格式优化技巧,帮助用户高效完成公式转换,适用于科研论文和商业文档编辑。

weixin_30082367的博客 562

openmediavault(OMV) (1)安装部署

EXT3(Third Extended File System): EXT3 是 Linux 中广泛使用的日志文件系统,是 EXT2 文件系统的升级版本。这里可以根据自己的需求进行设置,目前只设置了自动登出为1天,为方便后续配置使用,其他设置可根据自己的具体需求进行设置。通过cd 命令进入到我们的raid存储中,通过ls发现里面没有任何的数据,因为我们的raid存储中还未创建任何数据。我的系统要安装在100G的磁盘上,故选择100G的磁盘,实际可以根据具体情况选择。

Monster✺◟(∗❛ัᴗ❛ั∗)◞✺的博客 2168

编译与调试完全指南—第5章 GDB调试详解

文章摘要 《GDB调试详解》全面介绍Linux下强大的源代码级调试器GDB。文章从启动与连接、程序执行控制、断点设置、数据查看、堆栈分析到多线程/多进程调试等核心功能展开,采用"启动连接→执行控制→断点观察→数据操作→堆栈分析→高级调试→实战场景"的知识体系结构。重点讲解了本地调试、进程附加、交叉调试(使用gdbserver)和Coredump事后分析四种调试场景,并详细说明了GDB启动参数、配置文件.gdbinit的使用方法以及常见调试技巧。该指南是进行嵌入式开发、系统编程和问题定位的重要参考资源。

weixin_43149888的博客 221

【制作100个unity实战之2】实现一款简单的FPS游戏

你将学到: fps武器脚本 基础瞄准功能 僵尸敌人AI 巡逻范围 攻击间 搜寻半径 追击 枪声吸引周围的僵尸 击中僵直效果

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 3553

【Embedded Development】【Zephyr】【Windows】基于STM32的Zephyr移植

指定板子后,需要参考默认的配置的固定关键字,去匹配指定的boards中的板子中的stm32设备树的aliases的led0的green_led_4(对应到stm32设备树的led0 = &green_led_4;然后,进行自定义修改引脚,这个创建boards文件方法是一种,也可以修改nrf54h20dk_nrf54h20_cpuppr.overlay中的gpio,编译时再指定使用板子原始版本的stm32f4_disco,也可以达到一样的效果。仓库,然后SDK下载在zephyr_project下。

qq_73648789的博客 579

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

写binder客户端与服务端碰到的编译错误

调试C++使用binder进行两个进程通讯的代码编译错误,记录下来给朋友们作为参考: 1、BpBInder端客户端函数未定义,如 target SharedLib: libgui (out/target/product/generic/obj/SHARED_LIBRARIES/libgui_intermediates/LINKED/libgui.so) out/target/prod

andyhuabing的专栏 5501

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

错误:error C2153:hex constants must have at least one hex digit

解决:基本是\\写成了\ char* s="F:\xiaopang子.txt";      就报这个错 改成char* s="F:\\xiaopang子.txt";   就ok了

newmanlf的专栏 6491

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

KEIL Real view MDK中插入空操作NOP

折腾了大半天,才搞明白一个空操作的指令 先在网上查有的说是__asm{NOP;},从intrins.h里调用,可犄角旮旯全找了,也没看到什么intrint.h的文件。如果直接用,就出现error: #1113: Inline assembler not permitted when generating Thumb code  最后搜索这条错误,知道是因为__asm("指令")

Grant的工作笔记 2万+

SP debug info incorrect because of optimization or inline assembler

 题中的warning是代码最优化时(common code optimization)堆栈指针不一致造成。在菜单-&gt;edit-&gt;standard setting-&gt;compiler for HC12-&gt;option中选中Main Optimize Target,再选中optimize for execution time,即可。...

weixin_34121282的博客 388

LeetCode-Number of Digit One-解题报告

原题链接 https://leetcode.com/problems/number-of-digit-one/ Given an integer n, count the total number of digit 1 appearing in all non-negative integers less than or equal to n. For example: Given n

dd523762588的博客 1611

国产超低功耗华大单片机Keil MDK编译中常遇的错误和警告汇总

在MDK的开发中编译的时候会遇到各种问题,本文把开发中遇到的问题及相应的解决办法做个汇总,希望对大家有帮助。 说明:此颜色显示的内容为编译器提示的错误或警告; 此颜色显示的内容为用户程序中的内容具体的实际情况中会有不同。 error: #18: expected a ")"如果是出现在c文件中, 多半是因为少了一个")",或者错误行有编译器不识别的字符;如果出现在头...

华大MCU★的专栏 1万+

MFC程序中主、子对话框类之间获取CSocket类对象出错问题解析:error C2248: “CSocket::CSocket”: 无法访问 private 成员(在“CSocket”类中声明)

(1)错误描述:在MFC程序中主对话框类利用网络套接字CSocket类和下位机进行通信;在MFC程序中子对话框类想要获取主对话框类的网络套接字变量时,可以通过 CMainDlg* parent;  //指向主对话框的指针 获取到主对话框的指针进而获取到指向套接字变量的指针,当时无法获取到网络套接字,不能进行套接字的成员函数操作如Close()的问题: 错误提示为: 错误 1     erro...

qq_41969790的博客 585

__asm void MSR_MSP(uint32_t addr) 提示:error:expected '(' after 'asm'

SYSTEM\sys\sys.c:33:7: error: expected '(' before 'void' __ASM void MSR_MSP(u32 addr) 在STM32中的sys.c文件编译报出这个错误时: __ASM void MSR_MSP(u32 addr) { MSR MSP, r0 //set Main Stack value BX r14 } 如果你上上面那种写法...

EXC_Twisted_Fate的博客 2万+

oracle 12952错误,单片机调试常见问题解决

原标题:单片机调试常见问题解决.error: #18:6.error: #18: expected a ")"如果是出现在c文件中, 多半是因为少了一个")",或者错误行有编译器不识别的字符如果出现在头文件中,错误行又是一个函数声明,多半是因为在函数声明中有编译器不认识的字符error: #20error: #20: identifier "TIM2_IRQChannel" is undefine...

weixin_35940111的博客 756
上一篇: VM Rootkits: The Next Big Threat?
下一篇: VIRUS RESEARCH UNIT
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值