相关疑难解决方法(0)

是否可以"反编译"Windows .exe?或者至少查看大会?

我的一个朋友从Facebook下载了一些恶意软件,我很想知道它的作用而不会感染自己.我知道你不能真正反编译.exe,但我至少可以在Assembly中查看它或附加调试器吗?

编辑说它不是.NET可执行文件,没有CLI标头.

debugging assembly winapi decompiling

222
推荐指数
10
解决办法
51万
查看次数

反编译汇编代码有多难(真的)?

我正在努力寻找有助于我的管理层理解对编译的C代码进行逆向工程的难易程度的事实.

之前在这个网站上已经提出了类似的问题(参见例如,是否可以"反编译"Windows .exe?或者至少查看程序集?或者可能反编译用C编写的DLL?),但这些问题的要点是反编译编译的C代码"很难,但并非完全不可能".

为了促进基于事实的答案,我包含了一个神秘函数的编译代码,我建议这个问题的答案通过它们是否可以确定这个函数的作用来衡量所提出技术的成败.这可能是不寻常的,但我认为这是获得这个工程问题的"良好主观"或事实答案的最佳方式.因此,你最好猜测这个功能在做什么,以及如何做?

这是使用gcc在Mac OSX上编译的已编译代码:

_mystery:
Leh_func_begin1:
    pushq   %rbp
Ltmp0:
    movq    %rsp, %rbp
Ltmp1:
    movsd   LCPI1_0(%rip), %xmm1
    subsd   %xmm0, %xmm1
    pxor    %xmm2, %xmm2
    ucomisd %xmm1, %xmm2
    jbe     LBB1_2
    xorpd   LCPI1_1(%rip), %xmm1
LBB1_2:
    ucomisd LCPI1_2(%rip), %xmm1
    jb      LBB1_8
    movsd   LCPI1_0(%rip), %xmm1
    movsd   LCPI1_3(%rip), %xmm2
    pxor    %xmm3, %xmm3
    movsd   LCPI1_1(%rip), %xmm4
    jmp     LBB1_4
    .align  4, 0x90
LBB1_5:
    ucomisd LCPI1_2(%rip), %xmm1
    jb      LBB1_9
    movapd  %xmm5, %xmm1
LBB1_4:
    movapd  %xmm0, %xmm5
    divsd   %xmm1, %xmm5
    addsd   %xmm1, %xmm5
    mulsd …
Run Code Online (Sandbox Code Playgroud)

c x86 assembly decompiling reverse-engineering

12
推荐指数
2
解决办法
1万
查看次数

标签 统计

assembly ×2

decompiling ×2

c ×1

debugging ×1

reverse-engineering ×1

winapi ×1

x86 ×1