首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏运维开发王义杰

    使用VSCode进行Go项目的调试以及Call Stack中的Disassembly View解析

    Call Stack中的Disassembly View 在深入调试问题或理解程序执行情况时,Disassembly View提供了代码在机器级别上执行的视图。 在VSCode的Go调试器中,打开Disassembly View可以看到当前函数的汇编代码。 深入了解Disassembly View需要一定的汇编语言知识。 我们深入地了解了在Go语言中,调试环境的配置以及Disassembly View的使用对于理解程序的执行有着重要的作用。 通过深入的理解Disassembly View,我们可以更好地理解我们的程序,以及如何优化我们的代码。

    4.4K20编辑于 2023-08-10
  • LyScript 实现应用层钩子扫描器

    sys import pefile from capstone import * from LyScript32 import MyDebug # 得到内存反汇编代码 def get_memory_disassembly pe_base))) print("模块大小: {}".format(hex(pe_size))) # 得到内存反汇编代码 dasm_memory_list = get_memory_disassembly sys import pefile from capstone import * from LyScript32 import MyDebug # 得到内存反汇编代码 def get_memory_disassembly item.op_str} dasm_memory_dict.append(dic) return dasm_memory_dict # 反汇编文件中的机器码 def get_file_disassembly (pe_base,0,pe_size) dasm_file_list = get_file_disassembly("d://win32project1.exe") # 循环对比内存与文件中的机器码

    32130编辑于 2022-12-28
  • 4.7 x64dbg 应用层的钩子扫描

    from capstone import * import pefile def Disassembly(FilePath): opcode_list = [] pe = pefile.PE 则可输出lyshark.exe程序内text节所有反汇编代码片段,输出效果如下图所示; 接着我们需要读入内存中的PE文件机器码并通过Capstone引擎反汇编为汇编指令集,如下get_memory_disassembly sys import pefile from capstone import * from LyScript32 import MyDebug # 得到内存反汇编代码 def get_memory_disassembly 获取到内存反汇编指令,然后通过get_file_disassembly获取磁盘反汇编指令,并将两者dasm_memory_list[index] ! (pe_base,0,pe_size) dasm_file_list = get_file_disassembly("d://lyshark.exe") # 循环对比内存与文件中的机器码

    35720编辑于 2023-10-11
  • 4.7 x64dbg 应用层的钩子扫描

    from capstone import *import pefiledef Disassembly(FilePath): opcode_list = [] pe = pefile.PE(FilePath format(addr,dic)) opcode_list.append(dic) return opcode_listif __name__ == "__main__": Disassembly 则可输出lyshark.exe程序内text节所有反汇编代码片段,输出效果如下图所示;图片接着我们需要读入内存中的PE文件机器码并通过Capstone引擎反汇编为汇编指令集,如下get_memory_disassembly 获取到内存反汇编指令,然后通过get_file_disassembly获取磁盘反汇编指令,并将两者dasm_memory_list[index] ! (pe_base,0,pe_size) dasm_file_list = get_file_disassembly("d://lyshark.exe") # 循环对比内存与文件中的机器码

    38740编辑于 2023-07-10
  • LyScript 实现应用层钩子扫描器

    binascii,os,sysimport pefilefrom capstone import *from LyScript32 import MyDebug# 得到内存反汇编代码def get_memory_disassembly pe_base))) print("模块大小: {}".format(hex(pe_size))) # 得到内存反汇编代码 dasm_memory_list = get_memory_disassembly item.op_str} dasm_memory_dict.append(dic) return dasm_memory_dict# 反汇编文件中的机器码def get_file_disassembly pe_base))) print("模块大小: {}".format(hex(pe_size))) # 得到内存反汇编代码 dasm_memory_list = get_memory_disassembly (pe_base,0,pe_size) dasm_file_list = get_file_disassembly("d://win32project1.exe") # 循环对比内存与文件中的机器码

    32140编辑于 2022-12-22
  • 在 Python 中创建列表时,应该写 `[]` 还是 `list()`?

    python 代码解读复制代码import dis # pip3 install disprint("Disassembly of create_list_with_list:")dis.dis('list ()')print("Disassembly of create_list_with_brackets:")dis.dis('[]')这段脚本的运行结果如下:vbnet 代码解读复制代码Disassembly

    2.6K10编辑于 2024-10-21
  • 来自专栏全栈程序员必看

    MicroBlaze使用_char* malloc

    XST_SUCCESS; } int main(void){ init_input(); while(1); return 1; } 汇编代码详解使用mb-objdump工具对实例进行了反汇编,想看看到底是个什么情况 Disassembly vectors.reset: 00000000 <_start>: 0: b0009000 imm -28672 4: b8080000 brai 0 #main()程序起始地址是0x90000000 Disassembly vectors.sw_exception: 00000008 <_vector_sw_exception>: 8: b0009000 imm -28672 c: b8080438 brai 1080 Disassembly 00000010 <_vector_interrupt>: 10: b0009000 imm -28672 14: b8080474 brai 1140 #中断处理程序起始地址是0x90000474 Disassembly

    1.1K20编辑于 2022-11-03
  • 来自专栏FreeBuf

    Functrace:使用DynamoRIO追踪函数调用

    report -- target_program [args] 选项 支持以下 [functrace](https://github.com/invictus1306/functrace)可选项: -disassembly report -verbose -- target_program [args] 选项 -disassemby $ drrun -c libfunctrace.so -report_file report -disassembly

    2.1K20发布于 2019-07-09
  • 来自专栏difcareer的技术笔记

    使用 IDA 破解某app的签名校验

    为了观察SP的值变化,先把SP的值显示出来: Options -> General -> Disassembly -> Display disassembly line parts(右上角) -> Stack

    1.8K41发布于 2018-08-23
  • 来自专栏全栈程序员必看

    linux设备驱动程序第四部分:从如何定位oops对代码的调试方法,驱动线「建议收藏」

    文件里: objdump helloworld.o -D > err.txt err.txt内容例如以下: helloworld.o: file format elf64-x86-64 Disassembly <cleanup_module+0x17> 47: 5d pop %rbp 48: c3 retq Disassembly jb 91 <cleanup_module+0x61> 25: 64 0a 00 or %fs:(%rax),%al Disassembly Disassembly of section .comment: 0000000000000000 <.comment>: 0: 00 47 43 add %al rbp,1) 21: 38 2e cmp %ch,(%rsi) 23: 32 00 xor (%rax),%al Disassembly

    1.1K11编辑于 2022-07-06
  • 来自专栏程序员互动联盟

    linux设备驱动第四篇:linux驱动调试方法

    err.txt文件中: objdump helloworld.o -D > err.txt err.txt内容如下: helloworld.o: file format elf64-x86-64 Disassembly <cleanup_module+0x17> 47: 5d pop %rbp 48: c3 retq Disassembly jb 91 <cleanup_module+0x61> 25: 64 0a 00 or %fs:(%rax),%al Disassembly Disassembly of section .comment: 0000000000000000 <.comment>: 0: 00 47 43 add %al rbp,1) 21: 38 2e cmp %ch,(%rsi) 23: 32 00 xor (%rax),%al Disassembly

    12.8K172发布于 2018-03-12
  • 来自专栏程序猿的大杂烩

    Windows下C语言环境搭建

    LLDB 设置显示汇编指令的格式: # 设置为 Intel 的指令格式 settings set target.x86-disassembly-flavor intel # 设置为 AT&T 的指令格式 settings set target.x86-disassembly-flavor att 也可以在用户目录下创建 .lldbinit 文件,将以上配置写入其中,以使其默认生效。 WinGW用的是 GDB ,也可以设置显示汇编指令的格式: # 设置为 Intel 的指令格式 set disassembly-flavor intel # 设置为 AT&T 的指令格式 set disassembly-flavor

    4K10编辑于 2022-01-12
  • 来自专栏JavaEdge

    重学计算机组成原理(七)- 程序无法同时在Linux和Windows下运行?

    第一个部分由编译(Compile)、汇编(Assemble)以及链接(Link)三个阶段组成 三阶段后,就生成了一个可执行文件link_example: file format elf64-x86-64 Disassembly Disassembly of section .plt: ... Disassembly of section .plt.got: ... Disassembly of section .text: ... 6b0: 55 push rbp 6b1: 48 89 e5 Disassembly of section .fini: ...你会发现,可执行代码dump出来内容,和之前的目标代码长得差不多,但是长了很多 因为在Linux下,可执行文件和目标文件所使用的都是一种叫

    1.7K60发布于 2019-08-16
  • 来自专栏Mac/Win软件

    CLion 2022 for Mac&win(C和C ++ IDE智能代码编辑器)

    JetBrains CLion 2022是一款跨平台C/C++ IDE工具,该版本以C++14(几乎完全支持)和C++17(初次支持) 编写代码、即使没有源码也可通过Disassembly view(反汇编视图

    84540编辑于 2023-02-07
  • 来自专栏Mac/Win软件

    CLion 2022 for mac/win(C和C ++ IDE智能代码编辑器) 中文

    JetBrains CLion 2022是一款JetBrains旗下的提供的跨平台C/C++ IDE工具最新版本现,该版本以C++14(几乎完全支持)和C++17(初次支持) 编写代码、即使没有源码也可通过Disassembly

    1.1K20编辑于 2022-12-23
  • 来自专栏FreeBuf

    Sickle:推荐一款优质ShellCode开发工具

    -d, --disassemble disassemble the binary file -a ARCH, --arch ARCH select architecture for disassembly -m MODE, --mode MODE select mode for disassembly -rs, --run-shellcode run the shellcode (use at

    1.6K80发布于 2018-02-23
  • 来自专栏hotarugaliの技术分享

    Linux下使用VSCode配置C++调试环境

    ignoreFailures": true }, { "description": "Set Disassembly Flavor to Intel", "text": "-gdb-set disassembly-flavor intel",

    8.7K31编辑于 2022-08-30
  • 来自专栏音视频直播技术专家

    Xcode 单步调试 WebRTC

    每次调到 WebRtc 里都会变成汇编语言,如果如下: 看到这个现象后,我分析有以下几种这种情况可能导致这类问题: Xcode中勾选了Always Show Disassembly 生成的静态库中没有符号表 Xcode->Debug->Debug Workflow->Always Show Disassembly 如果该项处于勾选状态,只需去掉勾选就可以解决上面的问题了。

    3.2K60发布于 2020-04-02
  • 来自专栏皮皮鲁的AI星球

    Hello World背后的故事:如何在Linux上编译C语言程序

    使用反汇编工具objdump看一下链接前: $ objdump -dS hello.o hello.o:文件格式 elf64-x86_64 Disassembly of section .text: Disassembly of section .plt: 0000000000400360 <puts@plt-0x10>: ... 0000000000400370 <puts@plt>: 400370 Disassembly of section .plt.got: 0000000000400390 <.plt.got>: ... Disassembly of section .text: 00000000004003a0 <main>: 4003a0: 55 push %rbp Disassembly of section .fini: 0000000000400464 <_fini>: ... 这个文件是一个ELF文件,也就是Linux上的可执行文件。

    2.4K12发布于 2020-09-15
  • 来自专栏这里只有VxWorks

    Tool之objdump

    -D Display assembler contents of all sections -S Intermix source code with disassembly ? ?

    98830发布于 2021-07-23
领券