Реверсинг проги под наладонник

Тема в разделе "WASM.RESEARCH", создана пользователем Stariy, 1 ноя 2007.

  1. Stariy

    Stariy Member

    Публикаций:
    0
    Регистрация:
    22 окт 2003
    Сообщения:
    529
    Адрес:
    Russia
    Имеется программа под Windows Mobile 5.0, состоящая из одного exe и двух dll. Необходимо, в конечном счете, найти необходимую функцию (есть подозрение, что она находится в одной из этих dll) и использовать ее в своей программе (т.е. подключать dll и вызывать из нее функцию).ТребуетсЯ найти имя функции, ее параметры и их тип.Отладчиков под Windows Mobile я не знаю, кроме того, который есть в Visual Studio 2005 и используетсЯ длЯ отладки собственных программ. Пробовал потрошить файлы идой, ясности это не внесло. Прошу совета, с чего начать, что-то вроде плана. В реверсинге программ я не силен, да еще и под наладонники.
     
  2. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Stariy
    Я тут потрошил Navitel под ARM-архитектуру - IDA нормально помогла. А что у тебя за устройство, какой процессор стоит? И что за программу ты исследуешь?
     
  3. twgt

    twgt New Member

    Публикаций:
    0
    Регистрация:
    15 янв 2007
    Сообщения:
    1.494
    Если арм, то можно тут поискать кое-что www.lauterbach.com/frames.html
     
  4. Stariy

    Stariy Member

    Публикаций:
    0
    Регистрация:
    22 окт 2003
    Сообщения:
    529
    Адрес:
    Russia
    Ида дизассемблирует, но отлаживаться не получается, говорит - отказано в доступе. Мож че настроено криво в самом аппарате?
    Обычные коммуникаторы под Windows Mobile 5.0, например MitacMio A700, процессор там ARM.
    Risco Audio Recorder. А конкретно, мне нужна их нее фонкция перекодирования mp3 в wav.
    Все опенсорсное, что мне попадалось, работает непозволительно долго, десятки минут. А эта прога обрабатывает средних размеров mp3 за 1-3 минуты, что очень даже подходит.
     
  5. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Stariy
    На кряклабе была неплохая тема, посвященная отладке под IDA - ищи там ключевое слово ARM:
     
  6. Stariy

    Stariy Member

    Публикаций:
    0
    Регистрация:
    22 окт 2003
    Сообщения:
    529
    Адрес:
    Russia
    Спасибо, полезная тема. Завтра отключу защиту от запуска неподписаных файлов и буду мучиться дальше
     
  7. Stariy

    Stariy Member

    Публикаций:
    0
    Регистрация:
    22 окт 2003
    Сообщения:
    529
    Адрес:
    Russia
    Подружил IDA и свой КПК, теперь можно отлаживаться.
    Какие следующие шаги?
    Подскажите, как можно выяснить, какая функция запускается при выборе какого-то пункта меню? Надо хоть приблизительно найти, куда бряк ставить. Кстати, во время собственно конвертирования нельзя нажать паузу в отладчике, ида говорит - failed. Что это может означать? Не является ли это подтверждением того факта, что в этот момент работает функция не из ехе, а из dll, потому то ИДА и не может остановить ее?
    Прошу быть снисходительными, если вопросы покажутся глупыми и ламерскими - это мой первый опыт...

    Обнаружил вот такой вот лог:
    Код (Text):
    1.  .......
    2. ....
    3. Debugger: Thread started: id=E28B8C56, entry=00048108.
    4. Debugger: Thread started: id=A2E145BA, entry=00048C2C.
    5. Debugger: Thread started: id=628B8B7E, entry=00048B64.
    6. Debugger: Thread started: id=628B881E, entry=0001E6A4.
    7. Command "ProcessPause" failed
    8. Command "ProcessPause" failed
    9. Debugger: Thread terminated: id=628B881E (exit code = 0x0).
    строчка "Thread started: id=628B881E, entry=0001E6A4." появляется сразу после окончания конвертирования.