Как вставить новую инструкцию по указанному адресу в radare2

Я хочу добавить дополнительную инструкцию филиала по некоторым адресам. Я использую radare2. Проблема, которая вставляет команды, переписывает оригинальную инструкцию вместо добавления новых!

Я пытался: сначала увеличить размер файла (r+ 4), добавить нулевые байты (wen 4), а затем написать (weX), но это не сработало

[0x00400580]> r + 4

[0x00400580]> Вэнь 4

[0x00400580]> weX 0x400580 03000094

это оригинальный код, и я хочу вставить (дополнительную) новую инструкцию в 0x400580

0x0040057c 04000014 b 0x40058c

0x00400580 e01f40b9 ldr w0, [sp + arg_1ch]

0x00400584 00040011 добавить w0, w0, 1

0x00400588 e01f00b9 str w0, [sp + arg_1ch]

Я ожидал, что это будет

0x0040057c 04000014 b 0x40058c

0x00400580 03000094 bl 0x40058c

0x00400584 e01f40b9 ldr w0, [sp + arg_1ch]

0x00400588 00040011 добавить w0, w0, 1

0x0040058c e01f00b9 str w0, [sp + arg_1ch]

Но фактический результат был:

0x0040057c 04000014 b 0x40058c

0x00400580 03000094 bl 0x40058c

0x00400584 00040011 добавить w0, w0, 1

0x00400588 e01f00b9 str w0, [sp + arg_1ch]

0 ответов

Другие вопросы по тегам