1.这个流程图很明显是ollvm平坦化流程控制,拿脚本path一下
2.base64加密和解密,具体写在注释里面了,注意这个while循环最后是base加密后面有作用
3.通过判断dword_4062C0这个值判断走那个分支交叉引用查看那边修改了这个值
4.这里对读取文件然后修改v2的值判断v2的值是否为0,不为0对密文进行修改,并且修改dword_4062C0的值,调试来看发现v2的值是不为0的当时我对这个深信不疑直到后面发现不对劲
5.获取码表下标为6开始的0x15的字节,然后根据这个值得出一个v3,再用v3来加密输入数据
6.本来这个地方应该是脚本不过脚本不小心删除了就给一下思路,一开始以为是走的if的分支后面将异或函数解密出来后发现得到的并不是一个base加密后的数据,及时换思路猜测走的是else分支解密后发现确实是base64编码后的值,然后找了base64加密解密的脚本,base程序加密总共用了5张码表,提取出这五张码表对异或解密出的数据逆推,如果是解密就加密,如果是加密就解密