/Reversing (2) 썸네일형 리스트형 리버싱_햇갈렸던 명령어 정리_by $0u1Tr33 자주 까먹거나 햇갈리는 명령어들을 정리했다. JNZ => zero flag가 0일 때 점프한다. JZ => 반대로 zero flag가 0이 아닐 때 점프한다. ADD a,b => a와 b를 더해서 a에 넣는다. SUB a,b => a와 b를 빼서 a에 넣는다. INC a => a를 1 증가시킨다. DEC a => a를 1 감소시킨다. (DEC의 대상이 0이 되면 Zero flag를 1로 설정한다.) SAR a,1 => a를 2번쨰 인자만큼(1만큼) 오른쪽으로 이동시킨다. a가 만약에 16진수로 6c라면, 2진수로는 01101100 이고 1들을 다 오른쪽으로 1칸씩 밀면 00110110이 된다. 이것은 16진수로 39가 되고 10진수로는 54가 된다. 어셈블리어에는 곱셈이 2가지가 있는데 하나는 부호가 없.. 리버싱_간단한 기초지식_by $0u1Tr33 메모리에는 코드,데이터,힙,스택 이렇게 4가지의 영역으로 나뉜다. 특히 스택은 거꾸로 데이터가 쌓인다. 스택이 커지는 그 반대방향에는 커널 이라는 중요한 곳이 있어서 침범을 하면 안되도록 설계해놓았다. EP(엔트리 포인트) : 운영체제가 사용자 프로그램(ollydbg)으로 최초로 제어를 넘기는 지점. ollydbg로 어떠한 바이너리를 열면 멈추는 지점이 바로 엔트리 포인트이다. Flag 중 중요한 것이 Zero flag인데 두 값을 비교해서 같으면 ZF가 1이 되고, 같지 않으면 0이 된다. https://www.aldeid.com/wiki/X86-assembly/Instructions/jnz?fbclid=IwAR0f8Hyd8OS4oN-SM2h9lx-fZ_CteKH5qQ1SWirM2NX-IOieHjG4I.. 이전 1 다음