솔직히 좀 있어보이고 싶어서 POC라 쓴거고.....ㅎ
오늘은 엄청 복잡한 얘기는 안할거같음. 솔직히 진짜 제대로 해볼거면 리버싱 해보고 그래야하는데
도구는 충분하나 내 실력이 받쳐주질 못하기에 리버싱은 갖다 버리고 새로운 방식을 구상해봤음
자체적으로 만든 파일 구조면 앞에 헤더 부분이 있긴 할텐데 솔직히 리버싱 안하고 하루종일 쳐다보니깐
아무리 봐도 뭐가 뭔지 모르겠는거임... 그러다가 옛날에 취미로 게임 해킹쪽 관심이 있어서 이것저것 찾아보고
코드까지 직접 작성해보고 했던 기억이 있는데 그 기억 중 기가막힌게 떠오름
https://github.com/GH-Rake/PatternScan
이거는 예제긴 한데 패턴 매칭이라는게 갑자기 딱 떠오른거임
아 이거다 하고 파일 여러개 열어놓고 눈으로 찾기 시작함
계속 보다보니 패턴이 보이기 시작함
평범한 깃붕이들이라면 보자마자 뭐를 패턴으로 잡아야 할지 눈에 들어올거라고 감히 예상해봄
찾았으리라 믿고 내가 쓴 패턴은 아래와 같음
\xC0\x0C\x00\x00\x00\x00\x00\x00\xB9\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x0D\x00\x00\x00\x00\x00\x00\xB9\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01
원래 좀 더 길게 잡긴 했는데 원래 하려고 했던 건 테스트 하면서 안잡히는 애들이 있길래 조금 줄여서 썼음
위 패턴을 이용해서 코드를 한 번 짜봤음
다들 평소 말하는거 보면 상위 1%의 사람들 같으니 나보단 코드 더 효율적이고 빠르게 잘 짤거라고 생각함
결과는 아래와 같음
잘 나옴
다음에는 바꿔치기 까지 코드 작성 할거같은데 문제가 하나 있음
원본 파일은 UTF-8을 쓰는거 같은데 기존 디스아너드 한글패치 파일 뜯어보면
UTF-16으로 작성되어 있음. 인코딩 혼합해서 파이썬에서 쓰는건 처음이라 이 부분에 대해서는
조금 고민을 해봐야 할거같음
원래 어제 글 싸려고 했는데 술먹고 뻗어서 못썼음...ㅎ
그래서 뭐했다고? - dc App
디스아너드 dlc한글패치 하는중임 내가 한건 대사를 한국어로 바꿔치기 하기 전 대사 추출 방법에 대해 고민해본거