Сейчас на форуме: _MBK_, asfa (+6 невидимых)

 eXeL@B —› Вопросы новичков —› поиск серийника в ARM проге в IDA
Посл.ответ Сообщение

Ранг: -1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 28 мая 2009 15:32
· Личное сообщение · #1

Вот кусок кода в котором происходит считывание пользователя и пароля
Code:
  1. .text:000405D4                 STMFD   SP!, {R4,R5,LR}
  2. .text:000405D8                 SUB     SP, SP, #0x34
  3. .text:000405DC                 MOV     R5, R0
  4. .text:000405E0                 LDR     R0, =off_148F98
  5. .text:000405E4                 ADD     R1, SP, #0x18
  6. .text:000405E8                 LDR     R0, [R0]
  7. .text:000405EC                 STR     R0, [SP,#0x14]
  8. .text:000405F0                 STR     R0, [SP,#0x18]
  9. .text:000405F4                 ADD     R0, R5, #0xDC
  10. .text:000405F8                 BL      _GetWindowTextW_CWnd__QBAXAAVCString___Z ; CWnd::GetWindowTextW(CString &)
  11. .text:000405FC                 LDR     R3, [SP,#0x18]
  12. .text:00040600                 LDR     R3, [R3,#-0xC]
  13. .text:00040604                 CMP     R3, #0
  14. .text:00040608                 BEQ     loc_40784
  15. .text:0004060C                 ADD     R1, SP, #0x14
  16. .text:00040610                 ADD     R0, R5, #0x98
  17. .text:00040614                 BL      _GetWindowTextW_CWnd__QBAXAAVCString___Z ; CWnd::GetWindowTextW(CString &)
  18. .text:00040618                 ADD     R0, SP, #0x14
  19. .text:0004061C                 BL      sub_107834
  20. .text:00040620                 ADD     R0, SP, #0x14
  21. .text:00040624                 BL      _TrimRight_CString__QAAXXZ ; CString::TrimRight(void)
  22. .text:00040628                 LDR     R3, [SP,#0x14]
  23. .text:0004062C                 LDR     R3, [R3,#-0xC]
  24. .text:00040630                 CMP     R3, #0
  25. .text:00040634                 BEQ     loc_40784
  26. .text:00040638                 ADD     R0, SP, #0x1C
  27. .text:0004063C                 ADD     R1, SP, #0x18
  28. .text:00040640                 BL      sub_10EF64
  29. .text:00040644                 ADD     R0, SP, #0x20
  30. .text:00040648                 ADD     R1, SP, #0x14
  31. .text:0004064C                 BL      sub_10EF64
  32. .text:00040650                 ADD     R3, SP, #0x2C
  33. .text:00040654                 LDR     R4, =unk_155124
  34. .text:00040658                 STR     R3, [SP,#8]
  35. .text:0004065C                 ADD     R3, SP, #0xC
  36. .text:00040660                 STR     R3, [SP,#4]
  37. .text:00040664                 ADD     R3, SP, #0xE
  38. .text:00040668                 STR     R3, [SP]
  39. .text:0004066C                 ADD     R3, SP, #0x10
  40. .text:00040670                 LDR     R2, [SP,#0x1C]
  41. .text:00040674                 LDR     R1, [SP,#0x20]
  42. .text:00040678                 LDR     R0, [R4]
  43. .text:0004067C                 BL      sub_D4660
  44. .text:00040680                 ADD     R1, SP, #0x18
  45. .text:00040684                 ANDS    R3, R0, #0xFF
  46. .text:00040688                 BEQ     loc_406C8
  47. .text:0004068C                 ADD     R0, SP, #0x20
  48. .text:00040690                 BL      sub_10EF64
  49. .text:00040694                 LDR     R1, [R4]
  50. .text:00040698                 ADD     R0, SP, #0x1C
  51. .text:0004069C                 ADD     R1, R1, #0x340
  52. .text:000406A0                 BL      sub_10EF64
  53. .text:000406A4                 ADD     R0, SP, #0x24
  54. .text:000406A8                 ADD     R1, SP, #0x14
  55. .text:000406AC                 BL      sub_10EF64
  56. .text:000406B0                 LDR     R3, [SP,#0x20]
  57. .text:000406B4                 LDR     R2, [SP,#0x1C]
  58. .text:000406B8                 LDR     R1, [SP,#0x24]
  59. .text:000406BC                 B       loc_40744
  60. .text:000406BC ; ---------------------------------------------------------------------- -----

Это я нашел а вот дальше во всех туториалах "следующая функция проверяет серийник и там его можно найти" а вот и не могу понять - явно введенный серийник ни с чем не сравнивается. подскажите в каком направлении копать дальше
спасибо



Ранг: 301.4 (мудрец), 194thx
Активность: 0.170.01
Статус: Участник

Создано: 28 мая 2009 17:29
· Личное сообщение · #2

ну олька тут мало чем поможет, точней ничем, попробуй IDA запустить в режиме дебага, правда если у тебя девайс залоченый то врядли получится



Ранг: -1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 28 мая 2009 17:59
· Личное сообщение · #3

50Hz_220B_1200W
А как же открыть в ольке ?? она ARM проги не понимает (или я не прав?)




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 28 мая 2009 18:40
· Личное сообщение · #4

потребуется эмулятор девайса, если ты хочешь запустить
либо визуально разобрать алго (если разбираешься в ассемблере arm)

-----
EnJoy!




Ранг: -1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 28 мая 2009 21:06
· Личное сообщение · #5

Для отладки я использую не эмулятор а живой девайс НР-2110
Только опять-же возможно в олли запустить программу под ARM или нельзя ??
Отладчиком пользуюсь IDA шным все работает. Вот только при проходе по проге ,после считывания имени и серийника происходит очень много (до 50) ветвлений по различным условиям и невозможно удержать в голове куда сходил а куда нет. может нужно изменить настройки дизассемблера?? Кроме того в конце концов при пошаговом проходе IDA не может поставить очередной бряк. Подскажите хоть где искать?


 eXeL@B —› Вопросы новичков —› поиск серийника в ARM проге в IDA
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати