Aral Trans 0.2 - Interface
ATCTNR.DLL
아랄트랜스는 크게 2개의 프로세스로 구성된다.
- 후킹을 하는 AralTrans.exe
- 게임 프로세스에 인잭션 되는 ATCTNR.DLL
다른 프로세스에 DLL을 삽입시키는 방법엔 여러가지가 있으나, 아랄트랜스는 비교적 합법적인 루트인 SetWindowsHookEx 함수를 사용한다. 또한 후킹 방식도 여러가지가 있으나 아랄트랜스에서는 모듈 이미지가 로드된 메모리에 jmp/call 명령어를 overwrite한다.
ATCTNR(이하 컨테이너)는 게임 프로세스 공간에 로드 된 직후 작은 윈도우를 하나 띄우며, 이곳에서 사용자는 플러그인을 선택할 수 있다. 컨테이너는 이 플러그인들을 위해 후킹 관련 함수들을 제공하고 있다. 현재 ATCode, DebuggingATCode, Cached, NonCached, KiriKiri 플러그인 모두 이 함수들을 기반으로 하고 있다.