Notice
Recent Posts
Recent Comments
Link
관리 메뉴

DreamFactory7 :: IT

자습서 7단계: 코드 삽입기능 본문

번역_유틸리티/Cheat Engine

자습서 7단계: 코드 삽입기능

우루사1호 2023. 6. 21. 14:37

이것은 5단계의 NOP와 비슷한개념인데 기존 코드를 변경해서 아무것도 안하게 만드는가 아니면 거기에 그만한 크기의 내가 원하는 기능을 추가하는가를 선택하는거다.
그런데 추가할게 방대해지면 그렇게 할 수 없다.

예를 들면, 도서관에 빽빽하게 끼워진 책장에 200권짜리 시리즈물 책을 끼워놓고 다음에 100권짜리 시리즈물을 끼워넣었다.
그런데 200권짜리 책이 알고보니 210권짜리일경우라면 어떻게 해야할까?
뒤에 100권을 빼고 다시 쌓아야하나? 그러면 일이 커진다.
그럴경우 200권짜리 책에서 199번째 책을 드러내고 그자리에 쪽지를 써둔다
'200번째 책부터는 A-3'열에 놔뒀으니 그쪽으로 가세요 라는식으로'
왜냐면 100권의 책을 빼면 상관없겠지만 여긴 도서관이고 도서관에는 이미 이 위치에는 어떤 책이 있다라는 목록을 작성해둔터라 그것까지 바꿔야하니 일이커진다.
 
어셈블리도 기존코드들이 빡빡하게 있는데 그것의 순서를 건들면 모든게 바뀌게 된다.
그러다보면 코드들이 작동이 안될 수 있다.
c언어와 같은 소스코드는 유동적인데 비해, 이미 기계어로 되버린것들은 딱딱해져서 유동적이지 않다.
그리고 게임같은거 본인이 개발하지도 않았으니 저런 치트를 쓸 수 있는 공간을 주지 않는것도 상식적인거 아닌가?
내가 어떻게든지 비집고 들어가야하는 상황이니 그런 꼼수를 써보자는것이다.


 https://www.youtube.com/watch?v=pku7jCxm03U&list=PLRx0vPvlEmdB8ky_3GDyRFeARmOD2O6ub&index=8 
4:54
여기에서는 바로 originalcode: 에 수정하였는데 자동조립기에서는
newmem: 에 추가하라고 하는것같다.
아마도 오리지널 코드부분을 주석처리하고 하라는 뜻으로 보인다.

관련 번역부분은 아래와 같다.
//이것은 할당된 메모리이며 읽기, 쓰기, 실행 접근 권한이 있습니다
//여기에 코드를 배치하십시오

이러면서 치트엔진의 잘못된 번역을 조금씩 수정중이다.