Advertisement
Guest User

Untitled

a guest
Jun 25th, 2017
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.01 KB | None | 0 0
  1. long counter1 = 0, counter2 = 0;
  2. char preshare_key[] = "taebuj44L", pkgname_default[] = "datarevision-",
  3. pkg_md5[] = "b04d65bb53d80101dd40e8be60b51f20",
  4. prefix2[0x100] = "L44QB";
  5. DWORD jubeat_base_addr = 0, get_hash_addr = 0;
  6.  
  7. void hook_func(void)
  8. {
  9.     DWORD dp_module_addr = *(DWORD*)(jubeat_base_addr + 0xC83F04);
  10.     if (dp_module_addr == 0)
  11.     {
  12. //      log_body_warning("DataPackage_Break", "dp is not initialized (1).");
  13.         return ;
  14.     }
  15.     if (*((unsigned char*)dp_module_addr + 12) == 0)
  16.     {
  17. //      log_body_warning("DataPackage_Break", "dp is not initialized (2).");
  18.         return ;
  19.     }
  20.     if (counter1 >= 5)
  21.         return ;
  22.  
  23.     char pkgname[0x100], zero[0x10];
  24.  
  25.     switch (counter1)
  26.     {
  27.     case 0:
  28.         sprintf_s(pkgname, 0x100, "datarevision-%s", prefix2); break;
  29.     default:
  30.         sprintf_s(pkgname, 0x100, "datarevision-%s%0*d", prefix2, counter1, counter2); break;
  31.     }
  32.  
  33.     char data[512];
  34.     sprintf_s(
  35.     data,
  36.     512,
  37.     "%s%s%d%s%s%s%s%x%s%s%s%s%X",
  38.     "_pro_tec_ted_",
  39.     "_sto_rag_e_",
  40.     1511479831,
  41.     preshare_key,
  42.     pkgname,
  43.     "_pro_tec_ted_",
  44.     "_sto_rag_e_",
  45.     1511479831,
  46.     preshare_key,
  47.     pkgname,
  48.     "_PRO_TEC_TED_",
  49.     "_STO_RAG_E_",
  50.     1511479831);
  51.  
  52. //  log_body_misc("DataPackage_Break", "prehash_string: %s", data);
  53.     unsigned long hash[8];
  54.     mdigest_calcsum(3, data, strlen(data) + 1, &hash[0], 32);
  55.  
  56.     char file_path[512];
  57.     sprintf_s(file_path, 512, "/vfs_datarevision/%s:%08X%08X%08X%08X:%08X%08X%08X%08X",
  58.         pkg_md5, hash[0], hash[4], hash[1], hash[5], hash[2], hash[6], hash[3], hash[7]);
  59.  
  60.     int v22 = XCd229cc0000ce("/revision_read", file_path, "imagefs", 0);
  61.     log_body_misc("DataPackage_Break", "pkgname '%s'", pkgname);
  62.     if (v22 & 0x80000000)
  63. //      log_body_misc("DataPackage_Break", "%s", pkgname);
  64.         ;
  65.     else
  66.     {
  67.         XCd229cc0000b6(v22);
  68.         log_body_fatal("DataPackage_Break", "found, pkgname '%s' for file '%s'", pkgname, pkg_md5);
  69.     }
  70.  
  71.    
  72.     unsigned long tmp = 1;
  73.     for (int k = 0; k < counter1; k++)
  74.         tmp *= 10;
  75.     counter2++;
  76.     if (counter2 >= 9)
  77.     {
  78.         counter1++;
  79.         counter2 = 0;
  80.     }
  81.  
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement