Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .text:004254A0 loc_4254A0: ; CODE XREF: NetThread+3j
- .text:004254A0 push ebp
- .text:004254A1 mov ebp, esp
- .text:004254A3 push 0FFFFFFFFh
- .text:004254A5 push offset sub_54C90A
- .text:004254AA mov eax, large fs:0
- .text:004254B0 push eax
- .text:004254B1 sub esp, 20Ch
- .text:004254B7 mov eax, ___security_cookie
- .text:004254BC xor eax, ebp
- .text:004254BE mov [ebp-10h], eax
- .text:004254C1 push ebx
- .text:004254C2 push esi
- .text:004254C3 push edi
- .text:004254C4 push eax
- .text:004254C5 lea eax, [ebp-0Ch]
- .text:004254C8 mov large fs:0, eax
- .text:004254CE mov ebx, ecx
- .text:004254D0 mov [ebp-1A4h], ebx
- .text:004254D6 mov eax, [ebx]
- .text:004254D8 xor edi, edi
- .text:004254DA xor esi, esi
- .text:004254DC cmp byte ptr [eax+4Ch], 0
- .text:004254E0 mov [ebp-19Ch], edi
- .text:004254E6 mov [ebp-1B4h], esi
- .text:004254EC jz loc_425FEB
- .text:004254F2
- .text:004254F2 loc_4254F2: ; CODE XREF: .text:00425FDFj
- .text:004254F2 push 0C8h
- .text:004254F7 call ds:__imp_Sleep
- .text:004254FD push ds:?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z ; std::endl(std::basic_ostream<char,std::char_traits<char>> &)
- .text:00425503 push offset aWaitingForConn ; "Waiting for connection."
- .text:00425508 push ds:?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A ; std::basic_ostream<char,std::char_traits<char>> std::cout
- .text:0042550E call PrintToStream
- .text:00425513 add esp, 8
- .text:00425516 mov ecx, eax
- .text:00425518 call ds:??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z ; std::basic_ostream<char,std::char_traits<char>>::operator<<(std::basic_ostream<char,std::char_traits<char>> & (*)(std::basic_ostream<char,std::char_traits<char>> &))
- .text:0042551E mov eax, [ebx]
- .text:00425520 push 0
- .text:00425522 push 0
- .text:00425524 push dword ptr [eax+24h]
- .text:00425527 call accept
- .text:0042552C mov ebx, eax
- .text:0042552E mov [ebp-1B0h], ebx
- .text:00425534 cmp ebx, 0FFFFFFFFh
- .text:00425537 jnz short loc_42555F
- .text:00425539 push ds:?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z ; std::endl(std::basic_ostream<char,std::char_traits<char>> &)
- .text:0042553F push offset aConnectionFail ; "Connection failed."
- .text:00425544 push ds:?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A ; std::basic_ostream<char,std::char_traits<char>> std::cout
- .text:0042554A call PrintToStream
- .text:0042554F add esp, 8
- .text:00425552 mov ecx, eax
- .text:00425554 call ds:??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z ; std::basic_ostream<char,std::char_traits<char>>::operator<<(std::basic_ostream<char,std::char_traits<char>> & (*)(std::basic_ostream<char,std::char_traits<char>> &))
- .text:0042555A jmp loc_425FD3
- .text:0042555F ; ---------------------------------------------------------------------------
- .text:0042555F
- .text:0042555F loc_42555F: ; CODE XREF: .text:00425537j
- .text:0042555F mov esi, [ebp-1A4h]
- .text:00425565 mov ecx, [esi]
- .text:00425567 mov ecx, [ecx+4]
- .text:0042556A call sub_4D3DF0
- .text:0042556F mov eax, [esi]
- .text:00425571 mov dword ptr [ebp-194h], 0
- .text:0042557B mov esi, [eax+4]
- .text:0042557E mov edi, 1
- .text:00425583 mov [ebp-1A0h], esi
- .text:00425589 lea esp, [esp+0]
- .text:00425590
- .text:00425590 loc_425590: ; CODE XREF: .text:0042562Cj
- .text:00425590 mov eax, edi
- .text:00425592 cdq
- .text:00425593 mov [ebp-198h], eax
- .text:00425599 mov [ebp-208h], eax
- .text:0042559F mov ecx, edx
- .text:004255A1 lea eax, [ebp-208h]
- .text:004255A7 push eax
- .text:004255A8 lea eax, [ebp-1FCh]
- .text:004255AE mov [ebp-18Ch], ecx
- .text:004255B4 mov [ebp-204h], ecx
- .text:004255BA push eax
- .text:004255BB lea ecx, [esi+4]
- .text:004255BE call sub_530600
- .text:004255C3 mov eax, [ebp-1FCh]
- .text:004255C9 cmp eax, [esi+4]
- .text:004255CC jz short loc_425620
- .text:004255CE cmp dword ptr [eax+18h], 0
- .text:004255D2 jz short loc_425620
- .text:004255D4 mov eax, [ebp-198h]
- .text:004255DA mov esi, [ebp-1A0h]
- .text:004255E0 mov [ebp-218h], eax
- .text:004255E6 mov eax, [ebp-18Ch]
- .text:004255EC mov [ebp-214h], eax
- .text:004255F2 lea eax, [ebp-218h]
- .text:004255F8 push eax
- .text:004255F9 lea eax, [ebp-1F8h]
- .text:004255FF push eax
- .text:00425600 lea ecx, [esi+4]
- .text:00425603 call sub_530600
- .text:00425608 mov eax, [ebp-1F8h]
- .text:0042560E cmp eax, [esi+4]
- .text:00425611 jnz short loc_425617
- .text:00425613 xor eax, eax
- .text:00425615 jmp short loc_42561A
- .text:00425617 ; ---------------------------------------------------------------------------
- .text:00425617
- .text:00425617 loc_425617: ; CODE XREF: .text:00425611j
- .text:00425617 mov eax, [eax+18h]
- .text:0042561A
- .text:0042561A loc_42561A: ; CODE XREF: .text:00425615j
- .text:0042561A cmp byte ptr [eax+60h], 0
- .text:0042561E jz short loc_425631
- .text:00425620
- .text:00425620 loc_425620: ; CODE XREF: .text:004255CCj
- .text:00425620 ; .text:004255D2j
- .text:00425620 inc edi
- .text:00425621 cmp edi, 0Ah
- .text:00425624 jg short loc_42563B
- .text:00425626 mov esi, [ebp-1A0h]
- .text:0042562C jmp loc_425590
- .text:00425631 ; ---------------------------------------------------------------------------
- .text:00425631
- .text:00425631 loc_425631: ; CODE XREF: .text:0042561Ej
- .text:00425631 mov dword ptr [ebp-194h], 1
- .text:0042563B
- .text:0042563B loc_42563B: ; CODE XREF: .text:00425624j
- .text:0042563B mov ecx, [ebp-1A0h]
- .text:00425641 call sub_4D5C60
- .text:00425646 mov dword ptr [ebp-190h], 0
- .text:00425650 mov esi, 4
- .text:00425655 lea edi, [ebp-190h]
- .text:0042565B jmp short loc_425660
- .text:0042565B ; ---------------------------------------------------------------------------
- .text:0042565D align 10h
- .text:00425660
- .text:00425660 loc_425660: ; CODE XREF: .text:0042565Bj
- .text:00425660 ; .text:00425674j
- .text:00425660 push 0
- .text:00425662 push esi
- .text:00425663 push edi
- .text:00425664 push ebx
- .text:00425665 call recv
- .text:0042566A test eax, eax
- .text:0042566C jle short loc_425690
- .text:0042566E sub esi, eax
- .text:00425670 add edi, eax
- .text:00425672 test esi, esi
- .text:00425674 jg short loc_425660
- .text:00425676
- .text:00425676 loc_425676: ; CODE XREF: .text:00425693j
- .text:00425676 cmp dword ptr [ebp-190h], 11h
- .text:0042567D jz short loc_4256A6
- .text:0042567F push ebx
- .text:00425680 call closesocket
- .text:00425685 mov edi, [ebp-19Ch]
- .text:0042568B jmp loc_425FD3
- .text:00425690 ; ---------------------------------------------------------------------------
- .text:00425690
- .text:00425690 loc_425690: ; CODE XREF: .text:0042566Cj
- .text:00425690 cmp eax, 0FFFFFFFFh
- .text:00425693 jnz short loc_425676
- .text:00425695 push ebx
- .text:00425696 call closesocket
- .text:0042569B mov edi, [ebp-19Ch]
- .text:004256A1 jmp loc_425FD3
- .text:004256A6 ; ---------------------------------------------------------------------------
- .text:004256A6
- .text:004256A6 loc_4256A6: ; CODE XREF: .text:0042567Dj
- .text:004256A6 mov dword ptr [ebp-1BCh], 0
- .text:004256B0 mov esi, 4
- .text:004256B5 lea edi, [ebp-1BCh]
- .text:004256BB jmp short loc_4256C0
- .text:004256BB ; ---------------------------------------------------------------------------
- .text:004256BD align 10h
- .text:004256C0
- .text:004256C0 loc_4256C0: ; CODE XREF: .text:004256BBj
- .text:004256C0 ; .text:004256D4j
- .text:004256C0 push 0
- .text:004256C2 push esi
- .text:004256C3 push edi
- .text:004256C4 push ebx
- .text:004256C5 call recv
- .text:004256CA test eax, eax
- .text:004256CC jle short loc_425748
- .text:004256CE sub esi, eax
- .text:004256D0 add edi, eax
- .text:004256D2 test esi, esi
- .text:004256D4 jg short loc_4256C0
- .text:004256D6
- .text:004256D6 loc_4256D6: ; CODE XREF: .text:0042574Bj
- .text:004256D6 push ds:?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z ; std::endl(std::basic_ostream<char,std::char_traits<char>> &)
- .text:004256DC push dword ptr [ebp-1BCh]
- .text:004256E2 push offset aClientVersion ; "Client version: "
- .text:004256E7 push ds:?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A ; std::basic_ostream<char,std::char_traits<char>> std::cout
- .text:004256ED call PrintToStream
- .text:004256F2 add esp, 8
- .text:004256F5 mov ecx, eax
- .text:004256F7 call ds:??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@H@Z ; std::basic_ostream<char,std::char_traits<char>>::operator<<(int)
- .text:004256FD mov ecx, eax
- .text:004256FF call ds:??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z ; std::basic_ostream<char,std::char_traits<char>>::operator<<(std::basic_ostream<char,std::char_traits<char>> & (*)(std::basic_ostream<char,std::char_traits<char>> &))
- .text:00425705 cmp dword ptr [ebp-194h], 4
- .text:0042570C push 0
- .text:0042570E push 4
- .text:00425710 jl short loc_42575E
- .text:00425712 lea eax, [ebp-18Ch]
- .text:00425718 push eax
- .text:00425719 push ebx
- .text:0042571A mov dword ptr [ebp-18Ch], 12h
- .text:00425724 call send
- .text:00425729 mov eax, ds:__imp_Sleep
- .text:0042572E push 1F4h
- .text:00425733 call eax ; __imp_Sleep
- .text:00425735 push ebx
- .text:00425736 call closesocket
- .text:0042573B push ds:?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z ; std::endl(std::basic_ostream<char,std::char_traits<char>> &)
- .text:00425741 push offset aServerIsFull_C ; "Server is full. Closing client connecti"...
- .text:00425746 jmp short loc_42579B
- .text:00425748 ; ---------------------------------------------------------------------------
- .text:00425748
- .text:00425748 loc_425748: ; CODE XREF: .text:004256CCj
- .text:00425748 cmp eax, 0FFFFFFFFh
- .text:0042574B jnz short loc_4256D6
- .text:0042574D push ebx
- .text:0042574E call closesocket
- .text:00425753 mov edi, [ebp-19Ch]
- .text:00425759 jmp loc_425FD3
- .text:0042575E ; ---------------------------------------------------------------------------
- .text:0042575E
- .text:0042575E loc_42575E: ; CODE XREF: .text:00425710j
- .text:0042575E cmp dword ptr [ebp-1BCh], 3
- .text:00425765 jz short loc_4257BC
- .text:00425767 lea eax, [ebp-198h]
- .text:0042576D push eax
- .text:0042576E push ebx
- .text:0042576F mov dword ptr [ebp-198h], 3
- .text:00425779 call send
- .text:0042577E mov eax, ds:__imp_Sleep
- .text:00425783 push 1F4h
- .text:00425788 call eax ; __imp_Sleep
- .text:0042578A push ebx
- .text:0042578B call closesocket
- .text:00425790 push ds:?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z ; std::endl(std::basic_ostream<char,std::char_traits<char>> &)
- .text:00425796 push offset aWrongClientVer ; "Wrong client version. Closing client co"...
- .text:0042579B
- .text:0042579B loc_42579B: ; CODE XREF: .text:00425746j
- .text:0042579B push ds:?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A ; std::basic_ostream<char,std::char_traits<char>> std::cout
- .text:004257A1 call PrintToStream
- .text:004257A6 add esp, 8
- .text:004257A9 mov ecx, eax
- .text:004257AB call ds:??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z ; std::basic_ostream<char,std::char_traits<char>>::operator<<(std::basic_ostream<char,std::char_traits<char>> & (*)(std::basic_ostream<char,std::char_traits<char>> &))
- .text:004257B1 mov edi, [ebp-19Ch]
- .text:004257B7 jmp loc_425FD3
- .text:004257BC ; ---------------------------------------------------------------------------
- .text:004257BC
- .text:004257BC loc_4257BC: ; CODE XREF: .text:00425765j
- .text:004257BC lea eax, [ebp-190h]
- .text:004257C2 push eax
- .text:004257C3 push ebx
- .text:004257C4 mov dword ptr [ebp-190h], 10h
- .text:004257CE call send
- .text:004257D3 push ds:?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z ; std::endl(std::basic_ostream<char,std::char_traits<char>> &)
- .text:004257D9 push offset aNewConnection_ ; "New connection."
- .text:004257DE push ds:?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A ; std::basic_ostream<char,std::char_traits<char>> std::cout
- .text:004257E4 call PrintToStream
- .text:004257E9 add esp, 8
- .text:004257EC mov ecx, eax
- .text:004257EE call ds:??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z ; std::basic_ostream<char,std::char_traits<char>>::operator<<(std::basic_ostream<char,std::char_traits<char>> & (*)(std::basic_ostream<char,std::char_traits<char>> &))
- .text:004257F4 mov ecx, [ebp-1A4h]
- .text:004257FA xorps xmm0, xmm0
- .text:004257FD mov eax, [ecx]
- .text:004257FF mov edi, 1
- .text:00425804 mov ecx, [eax+4]
- .text:00425807 mov [ebp-1A0h], ecx
- .text:0042580D movlpd qword ptr [ebp-1ACh], xmm0
- .text:00425815 mov ecx, [eax+4]
- .text:00425818 add ecx, 4
- .text:0042581B mov [ebp-18Ch], ecx
- .text:00425821 mov esi, [ecx]
- .text:00425823
- .text:00425823 loc_425823: ; CODE XREF: .text:00425861j
- .text:00425823 mov eax, edi
- .text:00425825 cdq
- .text:00425826 mov [ebp-210h], eax
- .text:0042582C lea eax, [ebp-210h]
- .text:00425832 push eax
- .text:00425833 lea eax, [ebp-1F0h]
- .text:00425839 push eax
- .text:0042583A mov [ebp-20Ch], edx
- .text:00425840 call sub_530600
- .text:00425845 mov eax, [ebp-1F0h]
- .text:0042584B cmp eax, esi
- .text:0042584D jz short loc_425863
- .text:0042584F cmp dword ptr [eax+18h], 0
- .text:00425853 jz short loc_425863
- .text:00425855 inc edi
- .text:00425856 cmp edi, 0Ah
- .text:00425859 jg short loc_425876
- .text:0042585B mov ecx, [ebp-18Ch]
- .text:00425861 jmp short loc_425823
- .text:00425863 ; ---------------------------------------------------------------------------
- .text:00425863
- .text:00425863 loc_425863: ; CODE XREF: .text:0042584Dj
- .text:00425863 ; .text:00425853j
- .text:00425863 mov eax, edi
- .text:00425865 cdq
- .text:00425866 mov [ebp-1ACh], eax
- .text:0042586C or eax, edx
- .text:0042586E mov [ebp-1A8h], edx
- .text:00425874 jnz short loc_425887
- .text:00425876
- .text:00425876 loc_425876: ; CODE XREF: .text:00425859j
- .text:00425876 push ebx
- .text:00425877 call closesocket
- .text:0042587C mov edi, [ebp-19Ch]
- .text:00425882 jmp loc_425FD3
- .text:00425887 ; ---------------------------------------------------------------------------
- .text:00425887
- .text:00425887 loc_425887: ; CODE XREF: .text:00425874j
- .text:00425887 mov ecx, [ebp-1A0h]
- .text:0042588D call sub_4D3DF0
- .text:00425892 push 1E60h
- .text:00425897 call ??2@YAPAXI@Z ; operator new(uint)
- .text:0042589C add esp, 4
- .text:0042589F mov [ebp-18Ch], eax
- .text:004258A5 mov dword ptr [ebp-4], 0
- .text:004258AC test eax, eax
- .text:004258AE jz short loc_4258C8
- .text:004258B0 lea ecx, [ebp-1ACh]
- .text:004258B6 push ecx
- .text:004258B7 mov ecx, eax
- .text:004258B9 call sub_406400
- .text:004258BE mov edi, eax
- .text:004258C0 mov [ebp-194h], eax
- .text:004258C6 jmp short loc_4258D0
- .text:004258C8 ; ---------------------------------------------------------------------------
- .text:004258C8
- .text:004258C8 loc_4258C8: ; CODE XREF: .text:004258AEj
- .text:004258C8 xor edi, edi
- .text:004258CA mov [ebp-194h], edi
- .text:004258D0
- .text:004258D0 loc_4258D0: ; CODE XREF: .text:004258C6j
- .text:004258D0 mov esi, [ebp-1A4h]
- .text:004258D6 lea eax, [ebp-1ACh]
- .text:004258DC push eax
- .text:004258DD mov eax, [esi]
- .text:004258DF mov dword ptr [ebp-4], 0FFFFFFFFh
- .text:004258E6 mov ecx, [eax+4]
- .text:004258E9 add ecx, 4
- .text:004258EC call sub_402B10
- .text:004258F1 mov ecx, edi
- .text:004258F3 mov [eax], edi
- .text:004258F5 call sub_4110D0
- .text:004258FA mov eax, [esi]
- .text:004258FC lea ebx, [edi+10h]
- .text:004258FF mov eax, [eax+4]
- .text:00425902 add eax, 8000F0h
- .text:00425907 mov [ebp-198h], ebx
- .text:0042590D xor esi, esi
- .text:0042590F mov edi, eax
- .text:00425911
- .text:00425911 loc_425911: ; CODE XREF: .text:0042593Cj
- .text:00425911 movss xmm0, dword ptr [edi+esi*4]
- .text:00425916 mulss xmm0, ds:dword_55878C
- .text:0042591E movss dword ptr [ebp-200h], xmm0
- .text:00425926 fld dword ptr [ebp-200h]
- .text:0042592C call __ftol2
- .text:00425931 mov [ebx+esi*8], eax
- .text:00425934 mov [ebx+esi*8+4], edx
- .text:00425938 inc esi
- .text:00425939 cmp esi, 3
- .text:0042593C jl short loc_425911
- .text:0042593E movss xmm1, ds:dword_5586E8
- .text:00425946 mov edi, [ebp-194h]
- .text:0042594C mov dword ptr [ebp-28h], 3F4CCCCDh
- .text:00425953 mov dword ptr [ebp-24h], 3F4CCCCDh
- .text:0042595A movq xmm0, qword ptr [ebp-28h]
- .text:0042595F movq qword ptr [ebp-1Ch], xmm0
- .text:00425964 movss xmm0, dword ptr [ebp-1Ch]
- .text:00425969 mulss xmm0, xmm1
- .text:0042596D mov ebx, [ebp-1B0h]
- .text:00425973 mov dword ptr [ebp-20h], 3FE66666h
- .text:0042597A mov eax, [ebp-20h]
- .text:0042597D movss dword ptr [ebp-1Ch], xmm0
- .text:00425982 movss xmm0, dword ptr [ebp-18h]
- .text:00425987 mulss xmm0, xmm1
- .text:0042598B mov [ebp-14h], eax
- .text:0042598E mov dword ptr [ebp-40h], 0
- .text:00425995 movss dword ptr [ebp-18h], xmm0
- .text:0042599A movss xmm0, dword ptr [ebp-14h]
- .text:0042599F mulss xmm0, xmm1
- .text:004259A3 mov dword ptr [ebp-3Ch], 0
- .text:004259AA mov dword ptr [ebp-38h], 0
- .text:004259B1 movss dword ptr [ebp-14h], xmm0
- .text:004259B6 movq xmm0, qword ptr [ebp-1Ch]
- .text:004259BB mov eax, [ebp-14h]
- .text:004259BE movq qword ptr [edi+80h], xmm0
- .text:004259C6 movq xmm0, qword ptr [ebp-40h]
- .text:004259CB mov [edi+88h], eax
- .text:004259D1 mov eax, [ebp-38h]
- .text:004259D4 movq qword ptr [edi+28h], xmm0
- .text:004259D9 mov [edi+30h], eax
- .text:004259DC mov dword ptr [ebp-34h], 0
- .text:004259E3 mov dword ptr [ebp-30h], 0
- .text:004259EA movq xmm0, qword ptr [ebp-34h]
- .text:004259EF movq qword ptr [edi+34h], xmm0
- .text:004259F4 mov dword ptr [ebp-2Ch], 0
- .text:004259FB mov eax, [ebp-2Ch]
- .text:004259FE mov [edi+3Ch], eax
- .text:00425A01 mov ecx, edi
- .text:00425A03 mov dword ptr [edi+5Ch], 0
- .text:00425A0A mov dword ptr [edi+190h], 1
- .text:00425A14 call sub_40FDA0
- .text:00425A19 mov byte ptr [edi+60h], 0
- .text:00425A1D fstp dword ptr [edi+16Ch]
- .text:00425A23 mov dword ptr [edi+64h], 2Ch
- .text:00425A2A mov eax, [edi+10h]
- .text:00425A2D mov [edi+1C0h], eax
- .text:00425A33 mov eax, [edi+14h]
- .text:00425A36 mov [edi+1C4h], eax
- .text:00425A3C mov eax, [edi+18h]
- .text:00425A3F lea ecx, [edi+64h]
- .text:00425A42 mov [edi+1C8h], eax
- .text:00425A48 mov eax, [edi+1Ch]
- .text:00425A4B mov [edi+1CCh], eax
- .text:00425A51 mov eax, [edi+20h]
- .text:00425A54 mov [edi+1D0h], eax
- .text:00425A5A mov eax, [edi+24h]
- .text:00425A5D mov [edi+1D4h], eax
- .text:00425A63 push 0
- .text:00425A65 lea eax, [edi+78h]
- .text:00425A68 push eax
- .text:00425A69 push ecx
- .text:00425A6A mov byte ptr [edi+0AB5h], 1
- .text:00425A71 mov word ptr [edi+0AA8h], 203h
- .text:00425A7A mov byte ptr [edi+99Dh], 1
- .text:00425A81 mov word ptr [edi+990h], 203h
- .text:00425A8A mov byte ptr [edi+140h], 1
- .text:00425A91 call sub_40A840
- .text:00425A96 mov ecx, [ebp-1A0h]
- .text:00425A9C add esp, 0Ch
- .text:00425A9F call sub_4D5C60
- .text:00425AA4 push 100h
- .text:00425AA9 lea eax, [ebp-174h]
- .text:00425AAF push 0
- .text:00425AB1 push eax
- .text:00425AB2 mov dword ptr [ebp-184h], 0
- .text:00425ABC mov dword ptr [ebp-180h], 0
- .text:00425AC6 mov byte ptr [ebp-17Ch], 0
- .text:00425ACD mov byte ptr [ebp-17Ah], 0
- .text:00425AD4 mov dword ptr [ebp-74h], 0
- .text:00425ADB call memset
- .text:00425AE0 add esp, 0Ch
- .text:00425AE3 mov eax, 1
- .text:00425AE8 mov word ptr [ebp-188h], 1
- .text:00425AF1 mov byte ptr [ebp-17Bh], 0
- .text:00425AF8 mov [ebp-178h], ax
- .text:00425AFF lea esi, [eax+31h]
- .text:00425B02
- .text:00425B02 loc_425B02: ; CODE XREF: .text:00425B17j
- .text:00425B02 push 0FFFFFFFFh
- .text:00425B04 lea eax, [ebp-188h]
- .text:00425B0A push eax
- .text:00425B0B lea ecx, [edi+11DCh]
- .text:00425B11 call sub_427000
- .text:00425B16 dec esi
- .text:00425B17 jnz short loc_425B02
- .text:00425B19 mov eax, 1
- .text:00425B1E mov [ebp-178h], ax
- .text:00425B25 push 0FFFFFFFFh
- .text:00425B27 lea eax, [ebp-188h]
- .text:00425B2D push eax
- .text:00425B2E lea ecx, [edi+11DCh]
- .text:00425B34 mov word ptr [ebp-188h], 603h
- .text:00425B3D mov byte ptr [ebp-17Bh], 2
- .text:00425B44 call sub_427000
- .text:00425B49 mov esi, [ebp-1A4h]
- .text:00425B4F mov ecx, [esi]
- .text:00425B51 mov ecx, [ecx+4]
- .text:00425B54 call sub_4D3DF0
- .text:00425B59 mov edx, [esi]
- .text:00425B5B xor edi, edi
- .text:00425B5D mov eax, [edx+2Ch]
- .text:00425B60 sub eax, [edx+28h]
- .text:00425B63 test eax, 0FFFFFFFCh
- .text:00425B68 jle short loc_425BC2
- .text:00425B6A mov ecx, [edx+28h]
- .text:00425B6D lea ecx, [ecx+0]
- .text:00425B70
- .text:00425B70 loc_425B70: ; CODE XREF: .text:00425B84j
- .text:00425B70 cmp dword ptr [ecx], 0
- .text:00425B73 jz short loc_425B88
- .text:00425B75 mov eax, [edx+2Ch]
- .text:00425B78 sub eax, [edx+28h]
- .text:00425B7B inc edi
- .text:00425B7C sar eax, 2
- .text:00425B7F add ecx, 4
- .text:00425B82 cmp edi, eax
- .text:00425B84 jl short loc_425B70
- .text:00425B86 jmp short loc_425BC2
- .text:00425B88 ; ---------------------------------------------------------------------------
- .text:00425B88
- .text:00425B88 loc_425B88: ; CODE XREF: .text:00425B73j
- .text:00425B88 push 0B0h
- .text:00425B8D call ??2@YAPAXI@Z ; operator new(uint)
- .text:00425B92 add esp, 4
- .text:00425B95 mov [ebp-18Ch], eax
- .text:00425B9B mov dword ptr [ebp-4], 1
- .text:00425BA2 test eax, eax
- .text:00425BA4 jz short loc_425BB1
- .text:00425BA6 mov ecx, eax
- .text:00425BA8 call sub_422910
- .text:00425BAD mov ecx, eax
- .text:00425BAF jmp short loc_425BB3
- .text:00425BB1 ; ---------------------------------------------------------------------------
- .text:00425BB1
- .text:00425BB1 loc_425BB1: ; CODE XREF: .text:00425BA4j
- .text:00425BB1 xor ecx, ecx
- .text:00425BB3
- .text:00425BB3 loc_425BB3: ; CODE XREF: .text:00425BAFj
- .text:00425BB3 mov eax, [esi]
- .text:00425BB5 mov dword ptr [ebp-4], 0FFFFFFFFh
- .text:00425BBC mov eax, [eax+28h]
- .text:00425BBF mov [eax+edi*4], ecx
- .text:00425BC2
- .text:00425BC2 loc_425BC2: ; CODE XREF: .text:00425B68j
- .text:00425BC2 ; .text:00425B86j
- .text:00425BC2 mov ecx, [esi]
- .text:00425BC4 mov eax, [ecx+2Ch]
- .text:00425BC7 sub eax, [ecx+28h]
- .text:00425BCA sar eax, 2
- .text:00425BCD cmp edi, eax
- .text:00425BCF jnz loc_425C90
- .text:00425BD5 push 0B0h
- .text:00425BDA call ??2@YAPAXI@Z ; operator new(uint)
- .text:00425BDF add esp, 4
- .text:00425BE2 mov [ebp-18Ch], eax
- .text:00425BE8 mov dword ptr [ebp-4], 2
- .text:00425BEF test eax, eax
- .text:00425BF1 jz short loc_425BFC
- .text:00425BF3 mov ecx, eax
- .text:00425BF5 call sub_422910
- .text:00425BFA jmp short loc_425BFE
- .text:00425BFC ; ---------------------------------------------------------------------------
- .text:00425BFC
- .text:00425BFC loc_425BFC: ; CODE XREF: .text:00425BF1j
- .text:00425BFC xor eax, eax
- .text:00425BFE
- .text:00425BFE loc_425BFE: ; CODE XREF: .text:00425BFAj
- .text:00425BFE mov esi, [esi]
- .text:00425C00 lea edx, [ebp-1B8h]
- .text:00425C06 mov ecx, [esi+2Ch]
- .text:00425C09 mov [ebp-194h], eax
- .text:00425C0F mov dword ptr [ebp-4], 0FFFFFFFFh
- .text:00425C16 mov [ebp-1B8h], eax
- .text:00425C1C cmp edx, ecx
- .text:00425C1E jnb short loc_425C68
- .text:00425C20 mov edx, [esi+28h]
- .text:00425C23 lea ebx, [ebp-1B8h]
- .text:00425C29 cmp edx, ebx
- .text:00425C2B mov ebx, [ebp-1B0h]
- .text:00425C31 ja short loc_425C68
- .text:00425C33 lea eax, [ebp-1B8h]
- .text:00425C39 sub eax, edx
- .text:00425C3B sar eax, 2
- .text:00425C3E mov [ebp-18Ch], eax
- .text:00425C44 cmp ecx, [esi+30h]
- .text:00425C47 jnz short loc_425C59
- .text:00425C49 push 1
- .text:00425C4B lea ecx, [esi+28h]
- .text:00425C4E call sub_426EB0
- .text:00425C53 mov eax, [ebp-18Ch]
- .text:00425C59
- .text:00425C59 loc_425C59: ; CODE XREF: .text:00425C47j
- .text:00425C59 mov ecx, [esi+2Ch]
- .text:00425C5C mov edx, [esi+28h]
- .text:00425C5F test ecx, ecx
- .text:00425C61 jz short loc_425C86
- .text:00425C63 mov eax, [edx+eax*4]
- .text:00425C66 jmp short loc_425C84
- .text:00425C68 ; ---------------------------------------------------------------------------
- .text:00425C68
- .text:00425C68 loc_425C68: ; CODE XREF: .text:00425C1Ej
- .text:00425C68 ; .text:00425C31j
- .text:00425C68 cmp ecx, [esi+30h]
- .text:00425C6B jnz short loc_425C7D
- .text:00425C6D push 1
- .text:00425C6F lea ecx, [esi+28h]
- .text:00425C72 call sub_426EB0
- .text:00425C77 mov eax, [ebp-194h]
- .text:00425C7D
- .text:00425C7D loc_425C7D: ; CODE XREF: .text:00425C6Bj
- .text:00425C7D mov ecx, [esi+2Ch]
- .text:00425C80 test ecx, ecx
- .text:00425C82 jz short loc_425C86
- .text:00425C84
- .text:00425C84 loc_425C84: ; CODE XREF: .text:00425C66j
- .text:00425C84 mov [ecx], eax
- .text:00425C86
- .text:00425C86 loc_425C86: ; CODE XREF: .text:00425C61j
- .text:00425C86 ; .text:00425C82j
- .text:00425C86 add dword ptr [esi+2Ch], 4
- .text:00425C8A mov esi, [ebp-1A4h]
- .text:00425C90
- .text:00425C90 loc_425C90: ; CODE XREF: .text:00425BCFj
- .text:00425C90 mov eax, [esi]
- .text:00425C92 mov eax, [eax+28h]
- .text:00425C95 mov eax, [eax+edi*4]
- .text:00425C98 mov [eax+8], ebx
- .text:00425C9B mov eax, [esi]
- .text:00425C9D mov eax, [eax+28h]
- .text:00425CA0 mov ecx, [eax+edi*4]
- .text:00425CA3 mov eax, [ebp-1ACh]
- .text:00425CA9 mov [ecx+10h], eax
- .text:00425CAC mov eax, [ebp-1A8h]
- .text:00425CB2 mov [ecx+14h], eax
- .text:00425CB5 mov ecx, [esi]
- .text:00425CB7 mov ecx, [ecx+4]
- .text:00425CBA call sub_4D5C60
- .text:00425CBF push ds:?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV21@@Z ; std::endl(std::basic_ostream<char,std::char_traits<char>> &)
- .text:00425CC5 push offset aJoined_ ; " joined."
- .text:00425CCA push edi
- .text:00425CCB push offset aPlayer ; "Player "
- .text:00425CD0 push ds:?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A ; std::basic_ostream<char,std::char_traits<char>> std::cout
- .text:00425CD6 call PrintToStream
- .text:00425CDB add esp, 8
- .text:00425CDE mov ecx, eax
- .text:00425CE0 call ds:??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@H@Z ; std::basic_ostream<char,std::char_traits<char>>::operator<<(int)
- .text:00425CE6 push eax
- .text:00425CE7 call PrintToStream
- .text:00425CEC add esp, 8
- .text:00425CEF mov ecx, eax
- .text:00425CF1 call ds:??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z ; std::basic_ostream<char,std::char_traits<char>>::operator<<(std::basic_ostream<char,std::char_traits<char>> & (*)(std::basic_ostream<char,std::char_traits<char>> &))
- .text:00425CF7 push 0
- .text:00425CF9 push 4
- .text:00425CFB lea eax, [ebp-190h]
- .text:00425D01 push eax
- .text:00425D02 mov eax, [esi]
- .text:00425D04 mov dword ptr [ebp-190h], 0
- .text:00425D0E mov eax, [eax+28h]
- .text:00425D11 mov eax, [eax+edi*4]
- .text:00425D14 push dword ptr [eax+8]
- .text:00425D17 call send
- .text:00425D1C push 0
- .text:00425D1E push 8
- .text:00425D20 lea eax, [ebp-1ACh]
- .text:00425D26 push eax
- .text:00425D27 mov eax, [esi]
- .text:00425D29 mov eax, [eax+28h]
- .text:00425D2C mov eax, [eax+edi*4]
- .text:00425D2F push dword ptr [eax+8]
- .text:00425D32 call send
- .text:00425D37 mov eax, [esi]
- .text:00425D39 push 0
- .text:00425D3B mov eax, [eax+28h]
- .text:00425D3E push 1168h
- .text:00425D43 push dword ptr [ebp-198h]
- .text:00425D49 mov eax, [eax+edi*4]
- .text:00425D4C push dword ptr [eax+8]
- .text:00425D4F call send
- .text:00425D54 mov ecx, [esi]
- .text:00425D56 mov dword ptr [ebp-190h], 0Fh
- .text:00425D60 mov eax, [ecx+8]
- .text:00425D63 mov [ebp-1F4h], eax
- .text:00425D69 push 0
- .text:00425D6B push 4
- .text:00425D6D lea eax, [ebp-190h]
- .text:00425D73 push eax
- .text:00425D74 mov eax, [ecx+28h]
- .text:00425D77 mov eax, [eax+edi*4]
- .text:00425D7A push dword ptr [eax+8]
- .text:00425D7D call send
- .text:00425D82 push 0
- .text:00425D84 push 4
- .text:00425D86 lea eax, [ebp-1F4h]
- .text:00425D8C push eax
- .text:00425D8D mov eax, [esi]
- .text:00425D8F mov eax, [eax+28h]
- .text:00425D92 mov eax, [eax+edi*4]
- .text:00425D95 push dword ptr [eax+8]
- .text:00425D98 call send
- .text:00425D9D mov eax, [esi]
- .text:00425D9F mov [ebp-1B0h], eax
- .text:00425DA5 lea ecx, [eax+28h]
- .text:00425DA8 mov [ebp-18Ch], ecx
- .text:00425DAE lea esi, [eax+34h]
- .text:00425DB1 mov ebx, [ebp-1A0h]
- .text:00425DB7 lea edx, [eax+3Ch]
- .text:00425DBA lea ecx, [eax+44h]
- .text:00425DBD add eax, 4Ch
- .text:00425DC0 mov [ebp-198h], eax
- .text:00425DC6 mov eax, [ebp-18Ch]
- .text:00425DCC mov [ebp-1E8h], eax
- .text:00425DD2 mov eax, [ebp-1ACh]
- .text:00425DD8 mov [ebp-1DCh], eax
- .text:00425DDE mov eax, [ebp-1A8h]
- .text:00425DE4 mov [ebp-1D8h], eax
- .text:00425DEA mov eax, [ebp-198h]
- .text:00425DF0 mov [ebp-1D4h], esi
- .text:00425DF6 mov esi, [ebp-1B0h]
- .text:00425DFC mov [ebp-1ECh], ebx
- .text:00425E02 mov [ebp-1E4h], edi
- .text:00425E08 mov [ebp-1D0h], edx
- .text:00425E0E mov [ebp-1CCh], ecx
- .text:00425E14 mov [ebp-1C8h], eax
- .text:00425E1A mov [ebp-1C4h], esi
- .text:00425E20 push 40h
- .text:00425E22 mov dword ptr [ebp-4], 3
- .text:00425E29 call ??2@YAPAXI@Z ; operator new(uint)
- .text:00425E2E add esp, 4
- .text:00425E31 test eax, eax
- .text:00425E33 jz loc_426017
- .text:00425E39 movq xmm0, qword ptr [ebp-1ECh]
- .text:00425E41 mov dword ptr [eax], offset off_55B200
- .text:00425E47 movq qword ptr [eax+8], xmm0
- .text:00425E4C movq xmm0, qword ptr [ebp-1E4h]
- .text:00425E54 movq qword ptr [eax+10h], xmm0
- .text:00425E59 movq xmm0, qword ptr [ebp-1DCh]
- .text:00425E61 movq qword ptr [eax+18h], xmm0
- .text:00425E66 movq xmm0, qword ptr [ebp-1D4h]
- .text:00425E6E movq qword ptr [eax+20h], xmm0
- .text:00425E73 movq xmm0, qword ptr [ebp-1CCh]
- .text:00425E7B movq qword ptr [eax+28h], xmm0
- .text:00425E80 movq xmm0, qword ptr [ebp-1C4h]
- .text:00425E88 movq qword ptr [eax+30h], xmm0
- .text:00425E8D mov [ebp-60h], eax
- .text:00425E90 lea eax, [ebp-70h]
- .text:00425E93 push eax
- .text:00425E94 mov dword ptr [ebp-4], 4
- .text:00425E9B call CreateNetThread
- .text:00425EA0 mov ecx, [ebp-60h]
- .text:00425EA3 add esp, 4
- .text:00425EA6 mov [ebp-1B4h], eax
- .text:00425EAC mov dword ptr [ebp-4], 0FFFFFFFFh
- .text:00425EB3 test ecx, ecx
- .text:00425EB5 jz short loc_425ED5
- .text:00425EB7 mov edx, [ecx]
- .text:00425EB9 lea eax, [ebp-70h]
- .text:00425EBC cmp ecx, eax
- .text:00425EBE setnz al
- .text:00425EC1 movzx eax, al
- .text:00425EC4 push eax
- .text:00425EC5 call dword ptr [edx+10h]
- .text:00425EC8 mov eax, [ebp-1B4h]
- .text:00425ECE mov dword ptr [ebp-60h], 0
- .text:00425ED5
- .text:00425ED5 loc_425ED5: ; CODE XREF: .text:00425EB5j
- .text:00425ED5 push 0FFFFFFFFh
- .text:00425ED7 push eax
- .text:00425ED8 call ds:SetThreadPriority
- .text:00425EDE lea eax, [esi+28h]
- .text:00425EE1 mov [ebp-1E0h], eax
- .text:00425EE7 mov eax, [ebp-1ACh]
- .text:00425EED mov [ebp-1D4h], eax
- .text:00425EF3 mov eax, [ebp-1A8h]
- .text:00425EF9 mov [ebp-1D0h], eax
- .text:00425EFF lea eax, [esi+4Ch]
- .text:00425F02 mov [ebp-1C8h], esi
- .text:00425F08 mov esi, [ebp-1B4h]
- .text:00425F0E mov [ebp-1E4h], ebx
- .text:00425F14 mov [ebp-1DCh], edi
- .text:00425F1A mov [ebp-1CCh], eax
- .text:00425F20 mov [ebp-1C4h], esi
- .text:00425F26 push 38h
- .text:00425F28 mov dword ptr [ebp-4], 5
- .text:00425F2F call ??2@YAPAXI@Z ; operator new(uint)
- .text:00425F34 add esp, 4
- .text:00425F37 test eax, eax
- .text:00425F39 jz loc_426017
- .text:00425F3F movq xmm0, qword ptr [ebp-1E4h]
- .text:00425F47 mov dword ptr [eax], offset off_55B220
- .text:00425F4D movq qword ptr [eax+8], xmm0
- .text:00425F52 movq xmm0, qword ptr [ebp-1DCh]
- .text:00425F5A movq qword ptr [eax+10h], xmm0
- .text:00425F5F movq xmm0, qword ptr [ebp-1D4h]
- .text:00425F67 movq qword ptr [eax+18h], xmm0
- .text:00425F6C movq xmm0, qword ptr [ebp-1CCh]
- .text:00425F74 movq qword ptr [eax+20h], xmm0
- .text:00425F79 movq xmm0, qword ptr [ebp-1C4h]
- .text:00425F81 movq qword ptr [eax+28h], xmm0
- .text:00425F86 mov [ebp-48h], eax
- .text:00425F89 lea eax, [ebp-58h]
- .text:00425F8C push eax
- .text:00425F8D mov dword ptr [ebp-4], 6
- .text:00425F94 call CreateNetThread
- .text:00425F99 mov ecx, [ebp-48h]
- .text:00425F9C add esp, 4
- .text:00425F9F mov edi, eax
- .text:00425FA1 mov [ebp-19Ch], edi
- .text:00425FA7 mov dword ptr [ebp-4], 0FFFFFFFFh
- .text:00425FAE test ecx, ecx
- .text:00425FB0 jz short loc_425FCA
- .text:00425FB2 mov esi, [ecx]
- .text:00425FB4 lea eax, [ebp-58h]
- .text:00425FB7 cmp ecx, eax
- .text:00425FB9 setnz dl
- .text:00425FBC movzx eax, dl
- .text:00425FBF push eax
- .text:00425FC0 call dword ptr [esi+10h]
- .text:00425FC3 mov dword ptr [ebp-48h], 0
- .text:00425FCA
- .text:00425FCA loc_425FCA: ; CODE XREF: .text:00425FB0j
- .text:00425FCA push 0FFFFFFFFh
- .text:00425FCC push edi
- .text:00425FCD call ds:SetThreadPriority
- .text:00425FD3
- .text:00425FD3 loc_425FD3: ; CODE XREF: .text:0042555Aj
- .text:00425FD3 ; .text:0042568Bj ...
- .text:00425FD3 mov ebx, [ebp-1A4h]
- .text:00425FD9 mov eax, [ebx]
- .text:00425FDB cmp byte ptr [eax+4Ch], 0
- .text:00425FDF jnz loc_4254F2
- .text:00425FE5 mov esi, [ebp-1B4h]
- .text:00425FEB
- .text:00425FEB loc_425FEB: ; CODE XREF: .text:004254ECj
- .text:00425FEB push 0FFFFFFFFh
- .text:00425FED push esi
- .text:00425FEE mov esi, ds:__imp_WaitForSingleObject
- .text:00425FF4 call esi ; __imp_WaitForSingleObject
- .text:00425FF6 push 0FFFFFFFFh
- .text:00425FF8 push edi
- .text:00425FF9 call esi ; __imp_WaitForSingleObject
- .text:00425FFB mov ecx, [ebp-0Ch]
- .text:00425FFE mov large fs:0, ecx
- .text:00426005 pop ecx
- .text:00426006 pop edi
- .text:00426007 pop esi
- .text:00426008 pop ebx
- .text:00426009 mov ecx, [ebp-10h]
- .text:0042600C xor ecx, ebp
- .text:0042600E call @__security_check_cookie@4 ; __security_check_cookie(x)
- .text:00426013 mov esp, ebp
- .text:00426015 pop ebp
- .text:00426016 retn
- .text:00426017 ; ---------------------------------------------------------------------------
- .text:00426017
- .text:00426017 loc_426017: ; CODE XREF: .text:00425E33j
- .text:00426017 ; .text:00425F39j
- .text:00426017 call ds:?_Xbad_alloc@std@@YAXXZ ; std::_Xbad_alloc(void)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement