Цитата:
Сообщение от ratvier
Никогда бы не подумал, что клиент так устроен О_о
|
А как ты думал он устроен?
Просто для примера кусок из Engine.dll:
PHP код:
00444B80 8B41 48 MOV EAX,DWORD PTR DS:[ECX+48]
00444B83 8B08 MOV ECX,DWORD PTR DS:[EAX]
00444B85 56 PUSH ESI
00444B86 8B7424 08 MOV ESI,DWORD PTR SS:[ESP+8]
00444B8A 56 PUSH ESI
00444B8B 6A 1B PUSH 1B
00444B8D 68 88D78000 PUSH Engine.0080D788 ; ASCII "cd"
00444B92 50 PUSH EAX
00444B93 FF51 64 CALL DWORD PTR DS:[ECX+64]
00444B96 8B15 44793204 MOV EDX,DWORD PTR DS:[<&Core.GNetworkLog>; Core.GNetworkLog
00444B9C 8B02 MOV EAX,DWORD PTR DS:[EDX]
00444B9E 56 PUSH ESI
00444B9F 68 38D78000 PUSH Engine.0080D738 ; UNICODE "(Send)SocialAction ActionType:%d"
00444BA4 50 PUSH EAX
00444BA5 FF15 80773204 CALL DWORD PTR DS:[<&Core.FOutputDevice:>; Core.FOutputDevice::Logf
00444BAB A1 BC6BB800 MOV EAX,DWORD PTR DS:[GL2Console]
00444BB0 8B08 MOV ECX,DWORD PTR DS:[EAX]
00444BB2 56 PUSH ESI
00444BB3 68 38D78000 PUSH Engine.0080D738 ; UNICODE "(Send)SocialAction ActionType:%d"
00444BB8 6A 02 PUSH 2
00444BBA 50 PUSH EAX
00444BBB FF91 C0020000 CALL DWORD PTR DS:[ECX+2C0]
00444BC1 83C4 2C ADD ESP,2C
00444BC4 5E POP ESI
00444BC5 C2 0400 RETN 4
это ф-ция SocialAction, в ней прыжки на отправку пакета, запись пакета в лог (клиент умеет вести логи пакетов), и прыжек в обработчик окна(NWindow.dll)
Правда я чуток не по теме тут пишу, прошу простить )
Dmitry501, м.б. тему завести - "Изучаем клиент изнутри"?