Adoreshare Video Converter Genius

Цитата: 78SergeyЕсли есть время, помоги, пожалуйста, найти растяжкиВ прошлой версии я сам находил, в этой
  1. Оффлайн

    Автор темы

    Leserg

    Звание: Ветеран

    Команда сайта

    Сообщений: 946

    Создано тем: 79

    Рейтинг: 8

    Репа: (131|131|0)

    Баллы: 1681

    Был: 2024-12-12 23:16

    Лайков: 168

    Цитата: 78Sergey
    Если есть время, помоги, пожалуйста, найти растяжки





    В прошлой версии я сам находил, в этой автор сменил компилятор QT 4.1.0 на PE32, теперь не могу найти.
    В прошлой версии это было:
    Просмотр оригинала m_labOriginal
    Исх.пропорции m_radOriginalAspect
    Исх.размер m_radOriginalSize
    Во весь экран m_radScreen
    Субтитры m_labSub

    Странно, эти строки (как m_radOriginalAspect) по-прежнему есть в radialix, а в отладчике они не находятся.



    Открой программу в отладчике x64Dbg (я работал с оригинальным файлом). Перейди на вкладку "Memory Map" и задай поиск паттерна на базе строки, к примеру, "m_labOriginal" (вводи строку в поле "Unicode"). А можно отталкиваться от строк на элементах управления....

    Рис. 1


    В коде программы будет найден 1 такой паттерн. Перейди по найденному адресу. Ты окажешься в дампе на искомой строке. Сам ресурс строки начинается с сигнатуры FFFFFFFF (это метка начала строки). Установи выделение на первый байт ресурса строки и задай поиск перекрестных ссылок на этот адрес. Так мы найдем в коде место, где вызывается эта строка (1).

    Рис. 2


    Изучаем код на предмет координат и размеров. Как видим, в данном случае это всего лишь функция чтения строки с именем элемента управления. Поэтому ставим курсор на адрес начала функции и задаем поиск перекрестных ссылок (см. рис. 2 (2)). Будет найдена одна ссылка. Переходим по ней в код программы (1). Ниже по коду обрати внимание на операции с регистром XMM0. Это идет чтение и запись данных с размерами элемента управления "m_labOriginal" (2).

    Рис. 3


    Ресурс с размерами зашит в коде и указан относительными координатами X1Y1 - X2Y2, которые определяют прямоугольную область, выделяемую под элемент. Высота элемента вычисляется как разница значений координат по оси X, а ширина — разницей значений координат по оси Y.

    Перейди в дамп на адрес, из которого читаются данные в регистр XMM0.

    Рис. 4


    Чтобы удобно было их редактировать, необходимо переключить формат отображения данных на десятичный (контекстное меню "Integer -> Signed long (32-bit)"). Получится вот так:

    Рис. 5


    Кстати хорошо видно, что здесь указаны размеры и других элементов управления окна программы. Редактировать просто: выделяешь значение, нажимаешь клавишу Пробел (или смотри команду редактирования значения в контекстном меню) и вводишь свое.

    Подбирать нужные значения можно в режиме отладки, установив точку останова (ВР) на инструкцию чтения данных в регистр XMM0.

    Таким образом корректируем размеры необходимых элементов управления.

    Чтобы найти координаты местоположения элемента, нужно подняться по коду на начало текущей функции и найти перекрестные ссылки. Перейти по ссылке и исследовать код. Например, это будет в следующем участке кода:

    Рис. 6


    Также можно определить примерные координаты по снимку окна программы в графическом редакторе и выполнять поиск похожих или близких значений. Как это делается, уже на раз было рассказано и показано на страницах форума.

    В итоге должно получится примерно так (в случае перевода строк подобным образом):






    Изображение кнопки (но можешь нарисовать и свою, просто сделай ширину несколько больше, у меня она 100 пикс.):


    Удачи!

    Кто ищет, тот всегда найдет!

    24 июля 2017 - 14:39 / #1
  2. Оффлайн

    78Sergey

    Звание: Эксперт

    Мастер

    Сообщений: 532

    Создано тем: 52

    Рейтинг: 6

    Репа: (269|269|0)

    Баллы: 2551

    Страна: не указана!

    Был: 2024-11-20 20:43

    Лайков: 264

    Leserg, огромное спасибо за помощь good_mini
    24 июля 2017 - 15:39 / #2

Статистика форума, пользователей онлайн: 0 (за последние 20 минут)

---
Создано тем
1201
Всего сообщений
15804
Пользователей
18048
Новый участник
puika