冰楓論壇

標題: TwMs v224.1 CRC 視野調整(已修正) [打印本頁]

作者: 消逝的星空    時間: 2020-4-1 23:57
標題: TwMs v224.1 CRC 視野調整(已修正)
本帖最後由 消逝的星空 於 2020-4-4 18:57 編輯
應該沒更新錯.. 有錯的話 小力鞭QQ
  1. //TwMs v224.1 CRC 視野調整

  2. [Enable]
  3. Alloc(Hook,123)
  4. Label(Function)
  5. Label(Return)
  6. Label(Increase)
  7. Label(Decrease)
  8. Label(Reset)
  9. Label(Exit)

  10. Alloc(value,4)
  11. value:
  12. dd 000003E8

  13. Hook:
  14. pushad
  15. cmp ebx,004E0000 //放大 Numpad +
  16. je Increase
  17. cmp ebx,004A0000 //縮小 Numpad -
  18. je Decrease
  19. cmp ebx,00370000 //復原 Numpad *
  20. je Reset
  21. Exit:
  22. popad
  23. mov ecx,[0421D6BC]
  24. jmp Return

  25. Increase:
  26. add [value],00000014
  27. jmp Function

  28. Decrease:
  29. sub [value],00000014
  30. jmp Function

  31. Reset:
  32. mov [value],000003E8

  33. Function:
  34. mov eax,[04222108]
  35. test eax,eax
  36. je Exit
  37. mov ecx,[eax]
  38. push [value]
  39. push eax
  40. call dword ptr [ecx+000000B4]
  41. jmp Exit

  42. 02AD6CD3:
  43. jmp Hook
  44. db 90
  45. Return:

  46. [Disable]
  47. 02AD6CD3:
  48. mov ecx,[0421D6BC]

  49. dealloc(hook)
複製代碼

作者: btb    時間: 2020-4-4 18:45
本帖最後由 btb 於 2020-4-4 18:48 編輯

Function:
mov ecx,[04222108]//這裡寄存器寫錯必須改為eax
test eax,eax
這樣檢測才有意義
參考位址:
025A7646 - A1 08212204           - mov eax,[04222108] { [00000000] }
025A764B - 85 C0                 - test eax,eax
025A764D - 75 0A                 - jne 025A7659
025A764F - 68 03400080           - push 80004003 { -2147467261 }
025A7654 - E8 37C4C600           - call 03213A90
025A7659 - 8B 08                 - mov ecx,[eax]
025A765B - 68 E8030000           - push 000003E8 { 1000 }
025A7660 - 50                    - push eax
025A7661 - FF 91 B4000000        - call dword ptr [ecx+000000B4]


作者: 消逝的星空    時間: 2020-4-4 19:05
btb 發表於 2020-4-4 18:45
Function:
mov ecx,[04222108]//這裡寄存器寫錯必須改為eax
test eax,eax

那不好意思 請問一下 假如
也可用 ecx,ecx 去弄嘛
參考位址:
01759B13 - 8B 0D 08212204 - mov ecx,[04222108] { [147866DC] }
01759B19 - 85 C9                - test ecx,ecx
01759B1B - 75 0A               - jne 01759B27
01759B1D - 68 03400080    - push 80004003    {-247467261}
01759B22 - E8 699FAB01    - call 03213A90  
作者: btb    時間: 2020-4-4 19:22
消逝的星空 發表於 2020-4-4 19:05
那不好意思 請問一下 假如
也可用 ecx,ecx 去弄嘛
參考位址:

可以把eax跟ecx調換過來就行了,但我不推薦,我推薦的位址基本上已經是照抄的最佳位址了




歡迎光臨 冰楓論壇 (https://bingfong.com/) Powered by 冰楓