|
要想让第二个游戏能跟第一个游戏连接,需要修改IP吧?
下面是1.24e版本的关键部分:
0042D929 |> \53 push ebx ; /Protocol
0042D92A |. BF 01000000 mov edi, 1 ; |
0042D92F |. 57 push edi ; |Type => SOCK_STREAM
0042D930 |. 6A 02 push 2 ; |Family = AF_INET
0042D932 |. FF15 F8654500 call dword ptr [<&WSOCK32.#23>] ; \socket
0042D938 |. 83F8 FF cmp eax, -1
0042D93B |. 8946 04 mov dword ptr [esi+4], eax
0042D93E |. 0F84 80000000 je 0042D9C4
0042D944 |. 8D5424 10 lea edx, dword ptr [esp+10]
0042D948 |. 52 push edx ; /Parm
0042D949 |. 68 7E660480 push 8004667E ; |Cmd = FIONBIO
0042D94E |. 50 push eax ; |Socket
0042D94F |. 897C24 1C mov dword ptr [esp+1C], edi ; |
0042D953 |. FF15 FC654500 call dword ptr [<&WSOCK32.#12>] ; \ioctlsocket
0042D959 |. 33C0 xor eax, eax
0042D95B |. 894424 14 mov dword ptr [esp+14], eax
0042D95F |. 894424 18 mov dword ptr [esp+18], eax
0042D963 |. 894424 1C mov dword ptr [esp+1C], eax
0042D967 |. 894424 20 mov dword ptr [esp+20], eax
0042D96B |. 0FB746 20 movzx eax, word ptr [esi+20]
0042D96F |. 50 push eax ; /NetShort
0042D970 |. 66:C74424 18 >mov word ptr [esp+18], 2 ; |
0042D977 |. FF15 04664500 call dword ptr [<&WSOCK32.#9>] ; \ntohs
0042D97D |. 8B4E 1C mov ecx, dword ptr [esi+1C]
0042D980 |. 6A 10 push 10 ; /AddrLen = 10 (16.)
0042D982 |. 8D5424 18 lea edx, dword ptr [esp+18] ; |
0042D986 |. 66:894424 1A mov word ptr [esp+1A], ax ; |
0042D98B |. 8B46 04 mov eax, dword ptr [esi+4] ; |
0042D98E |. 52 push edx ; |pSockAddr
0042D98F |. 50 push eax ; |Socket
0042D990 |. 894C24 24 mov dword ptr [esp+24], ecx ; |
0042D994 |. FF15 E4654500 call dword ptr [<&WSOCK32.#4>] ; \connect
0042D99A |. 83F8 FF cmp eax, -1
0042D99D |. 75 25 jnz short 0042D9C4
0042D99F |. FF15 C0654500 call dword ptr [<&WSOCK32.#111>] ; [WSAGetLastError
0042D9A5 |. 3D 33270000 cmp eax, 2733
0042D9AA |. 74 13 je short 0042D9BF
0042D9AC |. 8B4E 04 mov ecx, dword ptr [esi+4]
0042D9AF |. 51 push ecx ; /Socket
0042D9B0 |. FF15 00664500 call dword ptr [<&WSOCK32.#3>] ; \closesocket
0042D9B6 |. C746 04 FFFFF>mov dword ptr [esi+4], -1
0042D9BD |. EB 05 jmp short 0042D9C4
0042D9BF |> BF 02000000 mov edi, 2
0042D9C4 |> 8D147F lea edx, dword ptr [edi+edi*2]
---------
现在不知道怎么改才能通用,这个edx值...
lea edx, dword ptr [esp+18]
push edx ; |pSockAddr |
|