가능한 중복 : 나는이 클래스의 바이너리 폭탄 할당 일하고 있어요
그래서
What’s the purpose of the LEA instruction?
LEA instruction?문제 이해 조립 명령 "부하 효과 주소는"
은 (는 무리가 있습니다 프로그램의 어셈블리 코드를 단계별로 실행하고 "폭탄"을 디코딩 할 암호문을 찾는 단계).
lea 명령을 이해할 수 없어 현재 단계를 완료 할 수 없습니다. 나는 그것이 산술에 일반적으로 사용되는 것을 읽었지만, 나는 그것이 어떻게하는지 이해하지 못한다.
나는 특히 찾고 있어요 명령은, 그들은 프로그램이 계속 동일한 있다면
lea -0x18(%ebp), %ebx
lea -0x8(%ebp), %esi
는 비교 다음 라인 EAX와 EBX에
mov -0x4 (%ebx), %eax
add -0x8(%ebx), %eax
다음이다 그렇지 않으면 폭탄이 터진다.
나는이 단계에 대해 6 숫자가 필요하다는 것을 알기에 충분하다고 생각했다. 처음 두 개는 0과 1이다. 그 후 나머지 시퀀스가 올바른지를 결정하기 위해 몇 가지 조작을한다. (나는 lea 명령은 다음 번호를 찾으려면 디코딩해야합니다.)
이제 내가 찾을 수없는 것은 특히 -0x18이 의미하는 것입니다. 음수 기호는 무엇입니까? 그것은 뺄셈을 나타 냅니까? ebp 전에 18 바이트를 찾고 있습니까?
도움을 주셔서 감사합니다.