nao icon indicating copy to clipboard operation
nao copied to clipboard

support branch

Open tkmru opened this issue 9 years ago • 6 comments

  • hook jxx instruction, get LBR. judge for loop or infinite loop by checking ecx .

copyed from handle infinite loop · Issue #19 · tkmru/nao

tkmru avatar Jan 11 '17 08:01 tkmru

分岐を含めて過剰にコードを削除する場合の対処 cmp命令とjz,jnz等を例外として追加する

pinksawtooth avatar Feb 03 '17 06:02 pinksawtooth

全パス探査の方法

単純に分岐命令とそのアドレスを記録しておいて逆のパスを通るようにパッチングする

JE←→JNE JZ←→JNZ JA←→JB JNA←→JNB JL←→JG JLE←→JGE

  • 実行に影響を与えない組み合わせを考慮せずに2^n通り実行する.(n= 分岐数)
  • 分岐ツリーを作り葉から順番に実行する.

pinksawtooth avatar Feb 06 '17 10:02 pinksawtooth

eflagsいじってもよさそう。どっちでもいいか

tkmru avatar Feb 06 '17 11:02 tkmru

eflagsだとZFとCFとSFをいじらないといけないとだめだから逆の命令にするほうが楽かなと

pinksawtooth avatar Feb 06 '17 11:02 pinksawtooth

分岐ツリー作るためのいいアイデアない?

pinksawtooth avatar Feb 06 '17 12:02 pinksawtooth

暇なときに実装してみます

tkmru avatar Feb 06 '17 14:02 tkmru