• 大小: 246KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-26
  • 语言: 其他
  • 标签: vdex  

资源简介

个人编译好的一个反编译Vdex文件的vdexExtractor ,如果linux库不全有可能运行不了,进入bin目录vdexExtractor 可执行命令 ./vdexExtractor -i input_vdex_file -o output_dex_file 需要该资源的可以去我博客留言,这个资源积分确实有些坑,改了又会默认改成50 https://blog.csdn.net/peachs885090/article/details/81505342

资源截图

代码片段和文件信息

/*

   vdexExtractor
   -----------------------------------------

   Anestis Bechtsoudis 
   Copyright 2017 - 2018 by CENSUS S.A. All Rights Reserved.

   Licensed under the Apache License Version 2.0 (the “License“);
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing software
   distributed under the License is distributed on an “AS IS“ BASIS
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

*/

#include “dex.h“
#include “utils.h“

static bool enableDisassembler = false;

static inline u2 get2LE(unsigned char const *pSrc) { return pSrc[0] | (pSrc[1] << 8); }

// Helper for dex_dumpInstruction() which builds the string representation
// for the index in the given instruction.
static char *indexString(const u1 *dexFileBuf u2 *codePtr u4 bufSize) {
  char *buf = utils_calloc(bufSize);

  const dexHeader *pDexHeader = (const dexHeader *)dexFileBuf;
  static const u4 kInvalidIndex = USHRT_MAX;

  // Determine index and width of the string.
  u4 index = 0;
  u4 secondary_index = kInvalidIndex;
  u4 width = 4;
  switch (kInstructionDescriptors[dexInstr_getOpcode(codePtr)].format) {
    // SOME NOT SUPPORTED:
    // case k20bc:
    case k21c:
    case k35c:
    // case k35ms:
    case k3rc:
      // case k3rms:
      // case k35mi:
      // case k3rmi:
      index = dexInstr_getVRegB(codePtr);
      width = 4;
      break;
    case k31c:
      index = dexInstr_getVRegB(codePtr);
      width = 8;
      break;
    case k22c:
      // case k22cs:
      index = dexInstr_getVRegC(codePtr);
      width = 4;
      break;
    case k45cc:
    case k4rcc:
      index = dexInstr_getVRegB(codePtr);
      secondary_index = dexInstr_getVRegH(codePtr);
      width = 4;
      break;
    default:
      break;
  }  // switch

  // Determine index type.
  size_t outSize = 0;
  switch (kInstructionDescriptors[dexInstr_getOpcode(codePtr)].index_type) {
    case kIndexUnknown:
      // This function should never get called for this type but do
      // something sensible here just to help with debugging.
      outSize = snprintf(buf bufSize ““);
      break;
    case kIndexNone:
      // This function should never get called for this type but do
      // something sensible here just to help with debugging.
      outSize = snprintf(buf bufSize ““);
      break;
    case kIndexTypeRef:
      if (index < pDexHeader->typeIdsSize) {
        const char *tp = dex_getStringByTypeIdx(dexFileBuf index);
        outSize = snprintf(buf bufSize “%s // type@%0*x“ tp width index);
      } else {
        outSize = snprintf(buf bufSize “ // type@%0*x“ width index);
      }
      break;
    case kIndexStringRef:
  

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-07-10 06:57  vdexExtractor-master\
     目录           0  2018-07-10 07:24  vdexExtractor-master\src\
     文件        9817  2018-06-10 13:10  vdexExtractor-master\src\utils.c
     文件        8378  2018-06-10 13:10  vdexExtractor-master\src\vdexExtractor.c
     文件      206672  2018-07-10 07:24  vdexExtractor-master\src\vdexExtractor
     文件        3986  2018-06-10 13:10  vdexExtractor-master\src\log.c
     文件       15064  2018-07-10 07:24  vdexExtractor-master\src\utils.o
     文件       50992  2018-07-10 07:24  vdexExtractor-master\src\dex.o
     文件        3771  2018-06-10 13:10  vdexExtractor-master\src\out_writer.c
     文件        2768  2018-06-10 13:10  vdexExtractor-master\src\common.h
     文件        7494  2018-06-10 13:10  vdexExtractor-master\src\dex.h
     文件        1534  2018-06-10 13:10  vdexExtractor-master\src\utils.h
     文件        1529  2018-06-10 13:10  vdexExtractor-master\src\Makefile
     文件       10688  2018-07-10 07:24  vdexExtractor-master\src\vdexExtractor.o
     文件        1609  2018-06-10 13:10  vdexExtractor-master\src\log.h
     文件       20728  2018-07-10 07:24  vdexExtractor-master\src\vdex.o
     文件       35643  2018-06-10 13:10  vdexExtractor-master\src\dex.c
     文件        1059  2018-06-10 13:10  vdexExtractor-master\src\out_writer.h
     文件       22768  2018-06-10 13:10  vdexExtractor-master\src\dex_instruction.c
     文件        1099  2018-06-10 13:10  vdexExtractor-master\src\vdex.h
     文件        3271  2018-06-10 13:10  vdexExtractor-master\src\vdex.c
     目录           0  2018-07-10 07:24  vdexExtractor-master\src\vdex\
     文件       20164  2018-06-10 13:10  vdexExtractor-master\src\vdex\vdex_backend_010.c
     文件        4374  2018-06-10 13:10  vdexExtractor-master\src\vdex\vdex_006.h
     文件        7535  2018-06-10 13:10  vdexExtractor-master\src\vdex\vdex_010.c
     文件       23584  2018-07-10 07:24  vdexExtractor-master\src\vdex\vdex_decompiler_010.o
     文件        6949  2018-06-10 13:10  vdexExtractor-master\src\vdex\vdex_decompiler_006.c
     文件       33840  2018-07-10 07:24  vdexExtractor-master\src\vdex\vdex_backend_010.o
     文件         930  2018-06-10 13:10  vdexExtractor-master\src\vdex\vdex_common.h
     文件       25360  2018-07-10 07:24  vdexExtractor-master\src\vdex\vdex_006.o
     文件       25360  2018-07-10 07:24  vdexExtractor-master\src\vdex\vdex_010.o
............此处省略28个文件信息

评论

共有 条评论

相关资源