飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2348|回复: 3

[已解决] 火力全开,还原WeChat的wapkg二进制分析On 2023-01-05,6.9--7.10的10个版本C底部下载

[复制链接]

该用户从未签到

发表于 2023-1-5 15:45:52 | 显示全部楼层 |阅读模式
本帖最后由 ningkong 于 2023-1-7 14:43 编辑





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入我们

x
PYG19周年生日快乐!
  • TA的每日心情
    无聊
    昨天 06:10
  • 签到天数: 591 天

    [LV.9]以坛为家II

    发表于 2023-1-5 20:57:25 | 显示全部楼层
    谢谢楼主分享
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

     楼主| 发表于 2023-1-7 11:08:35 | 显示全部楼层
    本帖最后由 ningkong 于 2023-1-7 11:09 编辑

    WAPackageInfoCacheLogic unpackPkgWithFilePath:unpackLib    函数的抽取

    举例  7.0.3 的 F5 函数
    [C] 纯文本查看 复制代码
    bool __cdecl -[WAPackageInfoCacheLogic unpackPkgWithFilePath:unpackLib:](WAPackageInfoCacheLogic *self, SEL a2, id a3, WXAPkg *a4)
    {
      WXAPkg *v4; // x24
      __int64 v5; // x19
      void *v6; // x0
      void *v7; // x0
      void *v8; // x22
      __int64 v9; // x1
      __int64 v10; // x21
      void *v11; // x0
      void *v12; // x0
      __int64 v13; // x26
      void *v14; // x26
      void *v15; // x27
      void *v16; // x0
      bool v17; // w25
      __int64 v18; // x24
      void *v19; // x0
      void *v20; // x0
      char v22; // [xsp+10h] [xbp-60h]
      __int64 v23; // [xsp+18h] [xbp-58h]
    
      v4 = a4;
      v5 = objc_retain(a3, a2);
      v6 = +[WCLogger externalIMP](&OBJC_CLASS___WCLogger, "externalIMP");
      objc_msgSend(
        v6,
        "logWithLevel:module:errorCode:file:line:func:format:",
        2LL,
        "WeApp",
        0LL,
        "WAPackageInfoCacheLogic.mm",
        103LL,
        "-[WAPackageInfoCacheLogic unpackPkgWithFilePath:unpackLib:]",
        CFSTR("unpack pkg, path=%@"),
        v5);
      v23 = 0LL;
      v7 = objc_msgSend(&OBJC_CLASS___NSData, "dataWithContentsOfFile:options:error:", v5, 3LL, &v23);
      v8 = (void *)objc_retainAutoreleasedReturnValue(v7);
      v10 = objc_retain(v23, v9);
      if ( v10 )
      {
        v11 = +[WCLogger externalIMP](&OBJC_CLASS___WCLogger, "externalIMP");
        objc_msgSend(
          v11,
          "logWithLevel:module:errorCode:file:line:func:format:",
          3LL,
          "WeApp",
          0LL,
          "WAPackageInfoCacheLogic.mm",
          109LL,
          "-[WAPackageInfoCacheLogic unpackPkgWithFilePath:unpackLib:]",
          CFSTR("unpackPkgWithFilePath(NSDataReadingMappedIfSafe | NSDataReadingUncached) error: %@"),
          v10);
      }
      else if ( objc_msgSend(v8, "length") )
      {
        goto LABEL_5;
      }
      v12 = objc_msgSend(&OBJC_CLASS___NSData, "dataWithContentsOfFile:", v5);
      v13 = objc_retainAutoreleasedReturnValue(v12);
      objc_release(v8);
      v8 = (void *)v13;
    LABEL_5:
      if ( objc_msgSend(v8, "length") )
      {
        sub_10354B138(&v22);
        v14 = (void *)objc_retainAutorelease(v8);
        v15 = objc_msgSend(v14, "bytes");
        v16 = objc_msgSend(v14, "length");
        sub_10354B2A8(&v22, v15, v16);
        v17 = 1;
        v18 = sub_100735844(v4, &v22, 1LL);
        if ( (_DWORD)v18 )
        {
          v19 = +[WCLogger externalIMP](&OBJC_CLASS___WCLogger, "externalIMP");
          objc_msgSend(
            v19,
            "logWithLevel:module:errorCode:file:line:func:format:",
            4LL,
            "WeAppError",
            0LL,
            "WAPackageInfoCacheLogic.mm",
            126LL,
            "-[WAPackageInfoCacheLogic unpackPkgWithFilePath:unpackLib:]",
            CFSTR("unpack error:%d"),
            v18);
          v17 = 0;
        }
        sub_10354B1E8(&v22);
      }
      else
      {
        v20 = +[WCLogger externalIMP](&OBJC_CLASS___WCLogger, "externalIMP");
        objc_msgSend(
          v20,
          "logWithLevel:module:errorCode:file:line:func:format:",
          4LL,
          "WeAppError",
          0LL,
          "WAPackageInfoCacheLogic.mm",
          117LL,
          "-[WAPackageInfoCacheLogic unpackPkgWithFilePath:unpackLib:]",
          CFSTR("pkgData is empty"));
        v17 = 0;
      }
      objc_release(v8);
      objc_release(v10);
      objc_release(v5);
      return v17;
    }





    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?加入我们

    x
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    4 天前
  • 签到天数: 596 天

    [LV.9]以坛为家II

    发表于 2023-1-7 15:11:45 | 显示全部楼层
    来学习,多谢!
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表