kernel님 글. 초단위 시간패치 x64 디버거로 확인해 봤습니다
2021.11.11 14:33
kernel님이 알려주신 초단위 시간패치 글을 읽고 x64 디버거로 확인해 봤습니다.
https://windowsforum.kr/free/16910101
패치 전에는 초단위가 안나왔는데
x64디버거로 GetTimeFormatEx 호출 바로 전에 RDX 값을 0으로 하고 호출하니
위와 같이 시간이 초까지 나오는군요.
패치전 RDX 값은 2였습니다.
헤더파일 뒤져보니 2 값이 TIME_NOSECONDS를 의미하는 거였네요
RDX 값 패치해서 계속 X64 디버거로 런 해보니
놀랍게도 초단위 까지 표시 되네요.
윈도우11 버전 22000.318 로 테스트 했고요
kernel 님이 알려주신 방법대로 x64 디버거로 확인해 본 결과
GetTimeFormatEx 를 TIME_NOSECONDS 안쓰도록 패치하는 것만으로 초단위가 표시되네요
시간값 출력은 따로 처리해야 할 필요가 없더군요.
x64 디버거로 확인해 본 결과였습니다 ^^;;;;;;;;;
댓글 [5]
-
harman777 2021.11.11 14:53
-
왕초보 2021.11.11 15:19
신세계를 보여주시네요..
멋지십니다..
-
harman777 2021.11.11 15:56
앗 왕초보님 와라라락 ㅎㅎㅎㅎ
제가 뭐 한게 있나요.
kernel 님이 알려주신 방법을 x64 디버거로 확인해 본것 밖에 없는데요 -_-;;;;;
StartAllback과 uwd 워터마크 제거 프로그램 같이 사용할 때 동작 안하는거
해결해 보려고 시도해봤다가 실패했거든요.
초단위 패치도 어디서 부터 손을 대야할지 감조차 못잡고 있었는데
kernel 님이 방법을 알려주셔서 x64 디버거로 확인해본 것에 불과해요 -_-;;;;;
스케쥴링 부분은 기계어 코드가 복잡해서 어떻게 패치해야 할지 도체 감이 안온다는 -_-;;;;
-
왕초보 2021.11.11 17:45
kernel님께서 알려주신것을 실전에 적용하는것도..능력이 있어야 가능한일입니다
이렇게 가능하다는 사실을 증명해주셨네요..감사합니다
화이팅입니다..
-
ehdwk 2021.11.12 20:27
수고하셨습니다.
제가 아직 이해가 안되는 부분은 시간값 출력을 따로 처리해 주지 않아도 초단위가 표시되기는 하는데
스케쥴링 부분 어셈블리 코드가 복잡해서 이 부분은 어떻게 패치해야 할지 감이 안오네요 -_-;;;;;;;;;