好久没弄ollvm了,可以继续了,今天给ollvm新增了一个pass,用来加密字符串,这个pass是从别的库里面扒出来的。

本文是基于在Windows 上使用VS2017编译出来的ollvm,在这个基础上来添加。

 

第一步:

寻找两个pass的代码

头文件

 1 #ifndef _STRING_OBFUSCATION_H_
 2 #define _STRING_OBFUSCATION_H_
 3 
 4 
 5 // LLVM include
 6 #include "llvm/Pass.h"
 7 #include "llvm/IR/Function.h"
 8 #include "llvm/IR/Instructions.h"
 9 #include "llvm/ADT/Statistic.h"
10 #include "llvm/Transforms/IPO.h"
11 #include "llvm/IR/Module.h"
12 #include "llvm/Support/CommandLine.h"
13 #include "llvm/CryptoUtils.h"
14 
15 // Namespace
16 using namespace llvm;
17 using namespace std;
18 
19 namespace llvm {
20     Pass *createStringObfuscation(bool flag);
21 }
22 
23 #endif
View Code

相关文章: