Анимация
JavaScript
|
Главная Библионтека разрушает всю цепочку элементов кода. При необходимости разрушения одного элемента, его следует предварительно выделить курсорными клавишами, удерживая нажатым <Shift> или мышью, удерживая нажатой левую кнопку. long FindCode(long ea,long flag) Функция ищет ближайший к переданному ей линейному адресу ea элемент кода, возвращая в случае успешного завершения поиска адрес его головы. В зависимости от флага направления поиск может идти как вперед (от младших адресов к старшим), так и назад (от старших адресов к младшим). Переданный функции линейный адрес в этот диапазон поиска не входит и не обязательно должен принадлежать какому-нибудь сегменту. Аргумент flag задает направление поиска - если его младший бит установлен поиск идет от младших адресов к старшим и, соответственно, наоборот. Пример использования: seg000:0100 seg000:0103 a) исходные данные mov ax, 9 mov dx, 133h требуется получить линейный первого элемента кода Message(">%s\n",atoa(FindCode(0,1))); b) вызов функции FindCode - адрес начала поиска равен нулю, единичное значение флага направление указывает вести поиск с увеличением адресов >seg000:0100 результат - линейный первого элемента кода ??? #Верстальщику - change table
Родственные функции: FindData, FindExplored, FindUnexplored Интерактивный аналог:"~Nabigate\Search for\Next Code"; <Ctrl-C> long FindData(long ea,long flag) Функция ищет ближайший к переданному ей линейному адресу ea элемент кода, возвращая в случае успешного завершения поиска адрес его головы. В зависимости от флага направления поиск может идти как вперед (от младших адресов к старшим), так и назад (от старших адресов к младшим). Переданный функции линейный адрес в этот диапазон поиска не входит и не обязательно должен принадлежать какому-нибудь сегменту. Аргумент flag задает направление поиска - если его младший бит установлен поиск идет от младших адресов к старшим и, соответственно, наоборот. Пример использования: mov mov int retn seg000:0000 mov ah, 9 seg000:0002 mov dx, 108h seg000:0005 int 21h seg000:0005 seg000:0007 seg000:0007 ; - seg000:0008 aHellolda db Hello, IDA a) исходные данные - требуется получить линейный последнего элемента данных Message(">%s\n",atoa(FindData(BADADDR,0))); b) вызов функции FindData >seg000:0108 результат - линейный адрес последнего элемента данных ??? #Верстальщику - change table
Родственные функции: FindCode, FindExplored, FindUnexplored Интерактивный аналог:"~Nabigate\Search for\Next Data"; <Ctrl-D> long FindExplored(long ea,long flag) Функция ищет ближайший к переданному ей линейному адресу ea элемент кода или данных, возвращая в случае успешного завершения поиска адрес его головы. В зависимости от флага направления поиск может идти как вперед (от младших адресов к старшим), так и назад (от старших адресов к младшим). Переданный функции линейный адрес в этот диапазон поиска не входит и не обязательно должен принадлежать какому-нибудь сегменту. Аргумент flag задает направление поиска - если его младший бит установлен поиск идет от младших адресов к старшим и, соответственно, наоборот. Пример использования: seg000:0100 seg000:0101 a) исходные данные DB 99h ; Щ DW 666h требуется получить линейный первого элемента кода или данных Message(">%s\n",atoa(FindExplored(0,1))); b) вызов функции FindExplored - адрес начала поиска равен нулю, единичное значение флага направление указывает вести поиск с увеличением адресов >seg000:0101 результат - линейный первого элемента ??? #Верстальщику - change table
Родственные функции: FindCode, FindData, FindUnexplored Интерактивный аналог:"~Nabigate\Search for\Next explored"; <Ctrl-A> long FindUnexplored(long ea,long flag) Функция ищет ближайший к переданному ей линейному адресу ea бестиповой байт, возвращая в случае успешного завершения поиска его адрес. В зависимости от флага направления поиск может идти как вперед (от младших адресов к старшим), так и назад (от старших адресов к младшим). Переданный функции линейный адрес в этот диапазон поиска не входит и не обязательно должен принадлежать какому-нибудь сегменту. Аргумент flag задает направление поиска - если его младший бит установлен поиск идет от младших адресов к старшим и, соответственно, наоборот. Пример использования: seg000:0100 DW 666h seg000:0102 DB 99h ; Щ a) исходные данные - требуется получить линейный первого бестипового байта Message(">%s\n",atoa(FindUnexplored(0,1))); b) вызов функции FindUnexplored - адрес начала поиска равен нулю, единичное значение флага направление указывает вести поиск с увеличением адресов >seg000:0102 результат - линейный первого бестипового байта ??? #Верстальщику - change table
Родственные функции: FindCode, FindData, FindExplored Интерактивный аналог:"~Nabigate\Search for\Next Unexplored"; <Ctrl-U> 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 [ 38 ] 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 |