zoukankan      html  css  js  c++  java
  • X-CTF(REVERSE高级) Reversing-x64Elf-100

    逻辑很简单,如果sub_4006FD函数返回假则返回Nice!


    图1

    进入sub_4006FD函数,加密过程也很简单,这里值得注意的有两点

    一、8*(i%3)是二维数组的第一个参数,这里是取v3的地址所以*8的是数组长度,不是选择8倍于它的数组。换成python里直接写用数组时,就可以把这个*8省略了

    二、a1是传入的字符串地址,所以i+a1是从第1个到第12个字符的意思,求s不用再减i了


    图2

    解密代码思路很好理解,比如x-y=1,那么y=x-1一样

    这里使用了int转换是为了除数后取整,python不支持除数取整,c支持

    附代码:

    1     v3=["Dufhbmf","pG`imos","ewUglpt"]
    2 
    3     s=''
    4 
    5     for i in range(12):
    6 
    7         s+=chr(ord(v3[i % 3][2*int(i / 3)])-1)
    8 
    9     print(s)
  • 相关阅读:
    mongodb 添加用户
    mongo 安装
    python 操作redis
    python 安装 redis
    redis 命令文档网址
    redis 事务
    Redis key命令
    手动卸载的vs2010
    个人封装JavaScript函数
    女学-温砚如老师的人生女学
  • 原文地址:https://www.cnblogs.com/blackicelisa/p/12263631.html
Copyright © 2011-2022 走看看