首页
社区
课程
招聘
如何优雅的在 Windows 上使用 LLVM Pass 插件进行代码混淆
发表于: 2022-4-17 19:19 37936

如何优雅的在 Windows 上使用 LLVM Pass 插件进行代码混淆

2022-4-17 19:19
37936
收藏
免费 29
支持
分享
最新回复 (40)
雪    币: 3
活跃值: (466)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
26
NewMai 你的 CMake 没装好,或者是 MSYS2 没装好,如果两者都装好了, 你可以试试运行 `cmake -G` 命令,你会看到如下的输出:
好吧 放弃了 一点不优雅
2022-5-7 11:22
0
雪    币: 68
活跃值: (374)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
27
2022-5-18 17:58
0
雪    币: 668
活跃值: (1215)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
28
这玩意哪都好,就是try废了,异常没法用
2022-8-7 02:52
0
雪    币: 1050
活跃值: (1137)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
29
lytywg 这玩意哪都好,就是try废了,异常没法用
你说的没错,它的异常处理在 Windows 上似乎是有问题,运行到异常处,直接停止运行了,不会抛出异常,
try... 和 __try... 都不行。
2022-8-22 10:03
0
雪    币: 267
活跃值: (625)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
30
NewMai 你说的没错,它的异常处理在 Windows 上似乎是有问题,运行到异常处,直接停止运行了,不会抛出异常, try... 和 __try... 都不行。
异常可以用,但不是很完善。clang官方在https://clang.llvm.org/docs/MSVCCompatibility.html这里说了:

Asynchronous Exceptions (SEH): Partial. Structured exceptions (__try / __except / __finally) mostly work on x86 and x64. LLVM does not model asynchronous exceptions, so it is currently impossible to catch an asynchronous exception generated in the same frame as the catching __try.

注意是不能捕获同一栈帧(in the same frame)抛出的异常,但如果异常是在另外一个函数抛出来的,这个是可以用__try捕获的。
2022-8-22 11:05
0
雪    币: 3623
活跃值: (656)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
31
好文
2022-8-22 14:48
0
雪    币: 1050
活跃值: (1137)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
32
hypersine 异常可以用,但不是很完善。clang官方在https://clang.llvm.org/docs/MSVCCompatibility.html这里说了: Asynchronous Excepti ...
2022-8-22 15:52
0
雪    币: 5
活跃值: (276)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
33

老哥能留个微信吗 遇到问题了太想解决了 求你了  我微信Heart_600

最后于 2022-9-6 18:21 被buhuinx编辑 ,原因:
2022-9-6 18:21
0
雪    币: 5029
活跃值: (4798)
能力值: ( LV10,RANK:171 )
在线值:
发帖
回帖
粉丝
34
感谢分享!赞!
2022-9-7 22:04
0
雪    币: 525
活跃值: (677)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
35
你好,问一下,文章中编译x64的部分,-DLLVM_TARGETS_TO_BUILD="X86" 不需要改成x64吗
2023-1-6 11:03
0
雪    币: 525
活跃值: (677)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
36
试了一下,真是写的太详细了,感动,我以后看到的文章要是都能写得这么详细就好了
2023-1-6 14:46
0
雪    币: 13
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
37

作者,,你好,我还是遇到了问题

就在第一次使用cmake编译的时候

    lld-link: error: could not open 'uuid.lib': no such file or directory
    lld-link: error: could not open 'oldnames.lib': no such file or directory
    lld-link: error: could not open 'msvcrtd.lib': no such file or directory
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    mingw32-make[1]: *** [CMakeFiles\cmTC_245d2.dir\build.make:101: cmTC_245d2.exe] Error 1
    mingw32-make[1]: Leaving directory 'F:/HX/src_patched/llvm/build_dyn_x32/CMakeFiles/CMakeScratch/TryCompile-mqv4df'
    mingw32-make: *** [Makefile:126: cmTC_245d2/fast] Error 2
  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:39 (project)

-- Configuring incomplete, errors occurred!
See also "F:/HX/src_patched/llvm/build_dyn_x32/CMakeFiles/CMakeOutput.log".
See also "F:/HX/src_patched/llvm/build_dyn_x32/CMakeFiles/CMakeError.log


最后于 2023-1-10 14:18 被Re_Upper编辑 ,原因:
2023-1-10 14:17
0
雪    币: 1050
活跃值: (1137)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
38
buhuinx 老哥能留个微信吗 遇到问题了太想解决了 求你了  我微信Heart_600
不好意思,太久没看了,你遇到的问题应该已经解决了吧。
2023-7-2 11:00
0
雪    币: 1050
活跃值: (1137)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
39
Rixo_叶默 你好,问一下,文章中编译x64的部分,-DLLVM_TARGETS_TO_BUILD="X86" 不需要改成x64吗
不用的,不过你可以试一下,应该会报错的,这里的 X86 指的是平台,比如 ARM,MIPS 之类的。
2023-7-2 11:01
0
雪    币: 1050
活跃值: (1137)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
40
Re_Upper 作者,,你好,我还是遇到了问题就在第一次使用cmake编译的时候    lld-link: error:&am ...
可能是你的环境没处理好。
2023-7-2 11:03
0
雪    币: 83
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
41
tql 
2023-7-2 11:23
0
游客
登录 | 注册 方可回帖
返回
//