Advertisement
Guest User

Untitled

a guest
Jun 28th, 2019
512
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.58 KB | None | 0 0
  1. Конверсия uTorrent в Pro-версию
  2.  
  3. 1. Первый шаг: Необходимо распаковать экзешник, который разработчики юторрент пакуют дурацким пакером для уменьшения размера экзешника. Из за чего он дольше запускается из за распаковки каждый раз и жрет больше памяти.
  4. Потребуются программы:
  5. FileUnsigner: https://www.fluxbytes.com/software-releases/fileunsigner-v1-0/
  6. UPX: https://github.com/upx/upx/releases/download/v3.95/upx-3.95-win32.zip
  7. Из скаченных архивов извлекаются файлы FileUnsigner.exe и upx.exe и помещаются в какую-нибудь папку.
  8. В ту же папку помещается извлеченный из инсталятора юторрента Carrier.exe, который теперь uTorrent.exe
  9. Затем в той же папке создается новый текстовый файл следующиго содержания:
  10.  
  11. FileUnsigner.exe uTorrent.exe
  12. upx.exe -t uTorrent.exe
  13. @pause
  14. upx.exe -d uTorrent.exe
  15. @pause
  16.  
  17. который переименовывается в unpack.bat и этот батник запускается.
  18. Батник делает три вещи по порядку:
  19. 1. Удаляет цифровую подпись из uTorrent.exe
  20. 2. Тестирует файл на корректность упаковки
  21. 3. Распаковывает
  22. Каждое из трех действий должно сообщить об успехе, после чего нужно нажать пробел для перехода к следующему действию.
  23. После закрытия батника получаем распакованный uTorrent.exe, размер которого будет прилично больше, чем был до распаковки.
  24.  
  25. 2. Второй шаг: Теперь uTorrent.exe готов для исправления в хекс-редакторе (например HxD, гугл в помощь) в соответствии с листингом ниже.
  26. В листинге, первой колонкой идут адреса, они всё равно неправильные, поэтому игнорируем.
  27. Во второй колонке находятся хекс-байты, вот они-то нам и нужны. Третью колонку тоже игнорируем.
  28. Байты на которые нужно поменять помечены стрелочками (->) и комментарием на русском.
  29.  
  30. Открываем uTorrent.exe в редакторе HxD и видим таблицу хекс-байтов.
  31. Теперь надо найти нужные, для этого вызываем поиск, выбираем искать хекс-значения (Hex-values) и копипастим исходные байты из листинга ниже.
  32. Например, для первого фикса нам нужны байты 7409, но такое значение слишком короткое и в файле таких байтов везде полно, поэтому лучше добавить соседние байты, чтобы найти только то, что нам нужно, т.е. добавляем предшествующие байты (из предыдущей строчки), получается 83E8007409 и уже такая последовательность находится только в одном месте.
  33. Проверяем, что до и после найденных 7409 находятся байты как указаны в листинге, и если это так, меняем 74 на EB, сохраняем файл и готово.
  34. Следующий фикс делается таким же образом.
  35.  
  36. Всё, можно пользоваться пофикшенной программой.
  37.  
  38. P.S. Данный листинг сделан для uTorrent.exe версии 3.5.5(build 45271), но скорее всего будет подходить и для других, т.к. вряд ли этот код там меняется.
  39.  
  40. ;----------------------------------------------------------------------------------------------------
  41. 005A3B08 SUB_L005A3B08:
  42. 005A3B08 E8ECFFFFFF call SUB_L005A3AF9
  43. 005A3B0D 83E800 sub eax,00000000h
  44. 005A3B10 7409 jz L005A3B1B
  45. -> EB09 ; сделать Pro
  46. 005A3B12 48 dec eax
  47. 005A3B13 83E801 sub eax,00000001h
  48. 005A3B16 7403 jz L005A3B1B
  49. 005A3B18 32C0 xor al,al
  50. 005A3B1A C3 retn
  51. ;----------------------------------------------------------------------------------------------------
  52. 005A3B1B L005A3B1B:
  53. 005A3B1B B001 mov al,01h
  54. 005A3B1D C3 retn
  55. ;----------------------------------------------------------------------------------------------------
  56. 005A3B1E SUB_L005A3B1E:
  57. 005A3B1E B8725E6A00 mov eax,L006A5E72
  58. 005A3B23 E8E8290900 call SUB_L00636510
  59. 005A3B28 83EC74 sub esp,00000074h
  60. 005A3B2B E8D8FFFFFF call SUB_L005A3B08
  61. 005A3B30 84C0 test al,al
  62. 005A3B32 0F848A000000 jz L005A3BC2
  63. 005A3B38 8D4DAC lea ecx,[ebp-54h]
  64. 005A3B3B E8FE0E0E00 call SUB_L00684A3E
  65. 005A3B40 8365FC00 and dword ptr [ebp-04h],00000000h
  66. 005A3B44 8D4DD8 lea ecx,[ebp-28h]
  67. 005A3B47 6854787000 push SSZ00707854_utPro
  68. 005A3B4C E89E96E6FF call SUB_L0040D1EF
  69. 005A3B51 8D45D8 lea eax,[ebp-28h]
  70. 005A3B54 C645FC01 mov byte ptr [ebp-04h],01h
  71. 005A3B58 50 push eax
  72. 005A3B59 8D4580 lea eax,[ebp-80h]
  73. 005A3B5C 50 push eax
  74.  
  75. ;----------------------------------------------------------------------------------------------------
  76. 005A6B81 SUB_L005A6B81:
  77. 005A6B81 B8E2EDF900 mov eax,00F9EDE2h
  78. -> BBDAFB00 ; темнее цвет выделенной строки
  79. 005A6B86 C3 retn
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement