Анимация
JavaScript


Главная  Библионтека 

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

seg000:0013 seg000:0016 STRING seg000:0016

string terminated by "$"

seg000:0018 seg000:001A

QUIT WITH EXIT CODE (EXIT)

seg000:001A start

code

seg000:001A seg000:001A seg000 seg000:001A

dseg:000C ; --------------

dseg:000C

dseg:000C ; Segment type: Pure data

endp

ends

dx, 0Ch 21h

ah, 4Ch

; DOS - PRINT ; DS:DX ->

; DOS - 2+ -; AL = exit

dseg:000C dseg

dseg:000C

dseg:000C

dseg:000C aHelloSailor dseg:000C dseg

segment para public DATA use16 assume cs:dseg ;org 0Ch

db Hello,Sailor!,0Dh,0Ah,$

ends

В приведенном выше коде перемещаемый элемент был создан вызовом:

SetFixup(0x10001, FIXUP SEG16, 0, 0x1001, 0);

Операнд

Пояснения

Линейный адрес

Type

Тип перемещаемого элемента

Селектор

Смещение

Displ

Displacement

void DelFixup(long ea);

Функция удаляет перемещаемый элемент.

Операнд Пояснения

"ea I Линейный адрес

АНАЛИЗ

Имя функции

Назначение

long FindText (long ea,long flag,long y,long x,char str);

Ищет фрагмент дизассемблируемого текста

Прочие функции

Имя функции

Назначение

Void DeleteAll

Удаляет все элементы и связанные с ними элементы.



Long AnalyseArea (long sEA,long eEA

void AutoMark (long ea,long queuetype);

void AutoMark2 (long start,long end,long

queuetype)

Дизассемблирует выбранный регион Управляет автоанализом Управляет автоанализов

void DeleteAll ();

Невероятно "полезная" функция, удаляющая всю информацию о дизассемблируемой программе - сегменты, метки, комментарии, словом все флаги и связанные с ними объекты.

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

Пример использования:

seg000:0000 seg000:0000 seg000:0000 seg000:0000

32EAh

seg000:0000

seg000:0000

seg000:0000

seg000:0000

seg000:0000

seg000:0000

seg000:0000

seg000:0000

seg000:0000

fs:nothing,

seg000:0000

seg000:0000;

seg000:0000

seg000:0000

seg000:0000

seg000:0000

seg000:0001

seg000:0002

seg000:0003

seg000:0004

seg000:0004

seg000:0004

seg000:0007

seg000:000A

Loaded length:

; File Name : F:\IDAF\IDA\test.exe ; Format : MS-DOS executable (EXE)

; Base Address: 1000h Range: 10000h-132EAh ; Entry Point : 1000:22C0

; Segment type: Pure code seg000 segment byte public

assume cs:seg000

assume es:nothing,

gs:nothing

S U B R O U T I N E

CODE use16

ss:nothing, ds:nothing,

MyFunct

proc near

MyLabel:

push push push push

mov mov int

; CODE XREF: sub 0 22DD+1Ep

; My Comment

ax, 3D02h dx, 206h 21h

DeleteAll ();

0:00010000

50h ;

0:00010001

53h ;

0:00010002

51h ;

0:00010003

52h ;



0:00010004

0:00010005

0:00010006 0:00010007 0:00010008 0:00010009 0:0001000A

db 0B8h

db db

db 0BAh

db db

db 0CDh

long AnalyseArea (long sEA,long eEA);

Полный анализ выбранной области. Весь код будет дизассемблирован независимо от того, были обнаружены на него ссылки или нет. Сравните:

seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000:

0100 start

0101

0102

0103

0104

0105

0106

0107

0108

0109

010A

010B

010B seg000

db 0BBh

db db

db 0FFh db 0E3h db 0B4h db 6 db 0B2h

db 0CDh db 21h db 0C3h

ends

MakeCode(0x10100);

seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000: seg000:

0100 start: 0100 0103

0103 ; -----0105 0106 0107 0108 0109 010A 010B

010B seg000

mov bx, 105h jmp bx

db 0B4h db 6 db 0B2h

db 0CDh db 21h db 0C3h

ends

AnalyseArea(0x10100,0x10B);

seg000:0100 seg000:0100 seg000:0103 seg000:0105 seg000:0105 seg000:0107 seg000:0109 seg000:010B seg000:010B

start:

seg000

mov mov

retn

ends

bx, 105h bx

ah, 6

dl, 7



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