Author | Message | Time |
---|---|---|
ShadowDancer | I think this have somthing to do with the warden packet... maybe bcoz this is the address called to process the packet AE :P ... [code] d2client: .text:6FB6E910 sub_6FB6E910 proc near ; DATA XREF: .data:6FB8BC3Co .text:6FB6E910 .text:6FB6E910 var_4 = dword ptr -4 .text:6FB6E910 .text:6FB6E910 push ecx .text:6FB6E911 mov eax, dword_6FBCC2AC .text:6FB6E916 cmp eax, 2 .text:6FB6E919 jz short loc_6FB6E920 .text:6FB6E91B cmp eax, 3 .text:6FB6E91E jnz short loc_6FB6E950 .text:6FB6E920 .text:6FB6E920 loc_6FB6E920: ; CODE XREF: sub_6FB6E910+9j .text:6FB6E920 mov eax, dword_6FBCC250 .text:6FB6E925 test eax, eax .text:6FB6E927 jz short loc_6FB6E950 .text:6FB6E929 mov eax, [eax+0Ch] .text:6FB6E92C push esi .text:6FB6E92D lea esi, [esp+8+var_4] .text:6FB6E931 push esi .text:6FB6E932 movzx esi, word ptr [ecx+1] .text:6FB6E936 add ecx, 3 .text:6FB6E939 push esi .text:6FB6E93A mov [esp+10h+var_4], 0 .text:6FB6E942 mov edx, [eax] .text:6FB6E944 push ecx .text:6FB6E945 mov ecx, eax .text:6FB6E947 call dword ptr [edx+8] .text:6FB6E94A call sub_6FAE9F60 .text:6FB6E94F pop esi .text:6FB6E950 .text:6FB6E950 loc_6FB6E950: ; CODE XREF: sub_6FB6E910+Ej .text:6FB6E950 ; sub_6FB6E910+17j .text:6FB6E950 pop ecx .text:6FB6E951 retn .text:6FB6E951 sub_6FB6E910 endp .text:6FAE9F60 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ .text:6FAE9F60 .text:6FAE9F60 .text:6FAE9F60 sub_6FAE9F60 proc near ; CODE XREF: sub_6FAE3290+11Ap .text:6FAE9F60 ; .text:6FAEA012j ... .text:6FAE9F60 .text:6FAE9F60 var_10 = dword ptr -10h .text:6FAE9F60 .text:6FAE9F60 push ecx .text:6FAE9F61 mov eax, dword_6FBCC254 .text:6FAE9F66 test eax, eax .text:6FAE9F68 jz loc_6FAE9FF1 .text:6FAE9F6E push esi .text:6FAE9F6F nop .text:6FAE9F70 .text:6FAE9F70 loc_6FAE9F70: ; CODE XREF: sub_6FAE9F60+8Ej .text:6FAE9F70 mov eax, dword_6FBCC250 .text:6FAE9F75 test eax, eax .text:6FAE9F77 jz short loc_6FAE9FAF .text:6FAE9F79 mov ecx, [eax+0Ch] .text:6FAE9F7C mov eax, [ecx] .text:6FAE9F7E call dword ptr [eax+4] .text:6FAE9F81 mov esi, dword_6FBCC250 .text:6FAE9F87 call sub_6FB73600 .text:6FAE9F8C mov eax, dword_6FBCC250 .text:6FAE9F91 test eax, eax .text:6FAE9F93 mov esi, eax .text:6FAE9F95 jz short loc_6FAE9FAF .text:6FAE9F97 push eax .text:6FAE9F98 call sub_6FAB1E50 .text:6FAE9F9D push 0 .text:6FAE9F9F push 117h .text:6FAE9FA4 push offset a__SourceD2c_29 ; "..\\Source\\D2Client\\WARDEN\\WardenClient."... .text:6FAE9FA9 push esi .text:6FAE9FAA call Storm_403 .text:6FAE9FAF .text:6FAE9FAF loc_6FAE9FAF: ; CODE XREF: sub_6FAE9F60+17j .text:6FAE9FAF ; sub_6FAE9F60+35j .text:6FAE9FAF mov eax, dword_6FBCC254 .text:6FAE9FB4 mov ecx, offset off_6FBA9DDC .text:6FAE9FB9 mov dword_6FBCC250, eax .text:6FAE9FBE mov dword_6FBCC254, 0 .text:6FAE9FC8 lea esi, [eax+0Ch] .text:6FAE9FCB call dword ptr [eax+10h] .text:6FAE9FCE mov ecx, dword_6FBA1700 .text:6FAE9FD4 mov [esi], eax .text:6FAE9FD6 mov [esp+4], ecx .text:6FAE9FDA mov ecx, [esi] .text:6FAE9FDC mov edx, [ecx] .text:6FAE9FDE push 4 .text:6FAE9FE0 lea eax, [esp+8] .text:6FAE9FE4 push eax .text:6FAE9FE5 call dword ptr [edx] .text:6FAE9FE7 mov eax, dword_6FBCC254 .text:6FAE9FEC test eax, eax .text:6FAE9FEE jnz short loc_6FAE9F70 .text:6FAE9FF0 pop esi .text:6FAE9FF1 .text:6FAE9FF1 loc_6FAE9FF1: ; CODE XREF: sub_6FAE9F60+8j .text:6FAE9FF1 pop ecx .text:6FAE9FF2 retn .text:6FAE9FF2 sub_6FAE9F60 endp .text:6FAE9FF2 .text:6FAE9FF2 ; --------------------------------------------------------------------------- .text:6FAE9FF3 align 10h .text:6FAEA000 mov eax, dword_6FBCC250 .text:6FAEA005 test eax, eax .text:6FAEA007 jz short locret_6FAEA017 .text:6FAEA009 mov ecx, [eax+0Ch] .text:6FAEA00C mov eax, [ecx] .text:6FAEA00E push edx .text:6FAEA00F call dword ptr [eax+0Ch] .text:6FAEA012 jmp sub_6FAE9F60 .text:6FAEA017 ; --------------------------------------------------------------------------- .text:6FAEA017 .text:6FAEA017 locret_6FAEA017: ; CODE XREF: .text:6FAEA007j .text:6FAEA017 retn .text:6FAEA017 ; --------------------------------------------------------------------------- .text:6FAEA018 align 10h .text:6FAEA020 push ecx .text:6FAEA021 mov eax, dword_6FBCC250 .text:6FAEA026 test eax, eax .text:6FAEA028 jz short loc_6FAEA04D .text:6FAEA02A mov ecx, [eax+0Ch] .text:6FAEA02D lea edx, [esp] .text:6FAEA030 push edx .text:6FAEA031 mov edx, [esp+10h] .text:6FAEA035 push edx .text:6FAEA036 mov edx, [esp+10h] .text:6FAEA03A mov dword ptr [esp+8], 0 .text:6FAEA042 mov eax, [ecx] .text:6FAEA044 push edx .text:6FAEA045 call dword ptr [eax+8] .text:6FAEA048 call sub_6FAE9F60 .text:6FAEA04D .text:6FAEA04D loc_6FAEA04D: ; CODE XREF: .text:6FAEA028j .text:6FAEA04D pop ecx .text:6FAEA04E retn 8 .text:6FAEA04E ; --------------------------------------------------------------------------- .text:6FAE9F60 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ .text:6FAE9F60 .text:6FAE9F60 .text:6FAE9F60 sub_6FAE9F60 proc near ; CODE XREF: sub_6FAE3290+11Ap .text:6FAE9F60 ; .text:6FAEA012j ... .text:6FAE9F60 .text:6FAE9F60 var_10 = dword ptr -10h .text:6FAE9F60 .text:6FAE9F60 push ecx .text:6FAE9F61 mov eax, dword_6FBCC254 .text:6FAE9F66 test eax, eax .text:6FAE9F68 jz loc_6FAE9FF1 .text:6FAE9F6E push esi .text:6FAE9F6F nop .text:6FAE9F70 .text:6FAE9F70 loc_6FAE9F70: ; CODE XREF: sub_6FAE9F60+8Ej .text:6FAE9F70 mov eax, dword_6FBCC250 .text:6FAE9F75 test eax, eax .text:6FAE9F77 jz short loc_6FAE9FAF .text:6FAE9F79 mov ecx, [eax+0Ch] .text:6FAE9F7C mov eax, [ecx] .text:6FAE9F7E call dword ptr [eax+4] .text:6FAE9F81 mov esi, dword_6FBCC250 .text:6FAE9F87 call sub_6FB73600 .text:6FAE9F8C mov eax, dword_6FBCC250 .text:6FAE9F91 test eax, eax .text:6FAE9F93 mov esi, eax .text:6FAE9F95 jz short loc_6FAE9FAF .text:6FAE9F97 push eax .text:6FAE9F98 call sub_6FAB1E50 .text:6FAE9F9D push 0 .text:6FAE9F9F push 117h .text:6FAE9FA4 push offset a__SourceD2c_29 ; "..\\Source\\D2Client\\WARDEN\\WardenClient."... .text:6FAE9FA9 push esi .text:6FAE9FAA call Storm_403 .text:6FAE9FAF .text:6FAE9FAF loc_6FAE9FAF: ; CODE XREF: sub_6FAE9F60+17j .text:6FAE9FAF ; sub_6FAE9F60+35j .text:6FAE9FAF mov eax, dword_6FBCC254 .text:6FAE9FB4 mov ecx, offset off_6FBA9DDC .text:6FAE9FB9 mov dword_6FBCC250, eax .text:6FAE9FBE mov dword_6FBCC254, 0 .text:6FAE9FC8 lea esi, [eax+0Ch] .text:6FAE9FCB call dword ptr [eax+10h] .text:6FAE9FCE mov ecx, dword_6FBA1700 .text:6FAE9FD4 mov [esi], eax .text:6FAE9FD6 mov [esp+4], ecx .text:6FAE9FDA mov ecx, [esi] .text:6FAE9FDC mov edx, [ecx] .text:6FAE9FDE push 4 .text:6FAE9FE0 lea eax, [esp+8] .text:6FAE9FE4 push eax .text:6FAE9FE5 call dword ptr [edx] .text:6FAE9FE7 mov eax, dword_6FBCC254 .text:6FAE9FEC test eax, eax .text:6FAE9FEE jnz short loc_6FAE9F70 .text:6FAE9FF0 pop esi .text:6FAE9FF1 .text:6FAE9FF1 loc_6FAE9FF1: ; CODE XREF: sub_6FAE9F60+8j .text:6FAE9FF1 pop ecx .text:6FAE9FF2 retn .text:6FAE9FF2 sub_6FAE9F60 endp .text:6FAE9FF2 .text:6FAE9FF2 ; --------------------------------------------------------------------------- .text:6FAE9FF3 align 10h .text:6FAEA000 mov eax, dword_6FBCC250 .text:6FAEA005 test eax, eax .text:6FAEA007 jz short locret_6FAEA017 .text:6FAEA009 mov ecx, [eax+0Ch] .text:6FAEA00C mov eax, [ecx] .text:6FAEA00E push edx .text:6FAEA00F call dword ptr [eax+0Ch] .text:6FAEA012 jmp sub_6FAE9F60 .text:6FAEA017 ; --------------------------------------------------------------------------- .text:6FAEA017 .text:6FAEA017 locret_6FAEA017: ; CODE XREF: .text:6FAEA007j .text:6FAEA017 retn .text:6FAEA017 ; --------------------------------------------------------------------------- .text:6FAEA018 align 10h .text:6FAEA020 push ecx .text:6FAEA021 mov eax, dword_6FBCC250 .text:6FAEA026 test eax, eax .text:6FAEA028 jz short loc_6FAEA04D .text:6FAEA02A mov ecx, [eax+0Ch] .text:6FAEA02D lea edx, [esp] .text:6FAEA030 push edx .text:6FAEA031 mov edx, [esp+10h] .text:6FAEA035 push edx .text:6FAEA036 mov edx, [esp+10h] .text:6FAEA03A mov dword ptr [esp+8], 0 .text:6FAEA042 mov eax, [ecx] .text:6FAEA044 push edx .text:6FAEA045 call dword ptr [eax+8] .text:6FAEA048 call sub_6FAE9F60 .text:6FAEA04D .text:6FAEA04D loc_6FAEA04D: ; CODE XREF: .text:6FAEA028j .text:6FAEA04D pop ecx .text:6FAEA04E retn 8 .text:6FAEA04E ; --------------------------------------------------------------------------- Storm.dll: .text:6FC23350 ; Exported entry 403. .text:6FC23350 .text:6FC23350 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ .text:6FC23350 .text:6FC23350 .text:6FC23350 public Storm_403 .text:6FC23350 Storm_403 proc near ; CODE XREF: sub_6FBF1000+12p .text:6FC23350 ; sub_6FBF1040+33p ... .text:6FC23350 .text:6FC23350 arg_0 = dword ptr 4 .text:6FC23350 arg_4 = dword ptr 8 .text:6FC23350 arg_8 = dword ptr 0Ch .text:6FC23350 .text:6FC23350 mov eax, dword_6FC44988 .text:6FC23355 test eax, eax .text:6FC23357 jnz short loc_6FC23393 .text:6FC23359 push 8510007Dh ; dwErrCode .text:6FC2335E mov dword_6FC457E4, 8510007Dh .text:6FC23368 call ds:SetLastError .text:6FC2336E mov eax, dword_6FC44578 .text:6FC23373 test eax, eax .text:6FC23375 jz short loc_6FC2338E .text:6FC23377 push 1 .text:6FC23379 push 1 .text:6FC2337B push 0 .text:6FC2337D push 0FFFFFFFFh .text:6FC2337F push offset aSmemfree ; "SMemFree()" .text:6FC23384 push 8510007Dh .text:6FC23389 call Storm_461 .text:6FC2338E .text:6FC2338E loc_6FC2338E: ; CODE XREF: Storm_403+25j .text:6FC2338E xor eax, eax .text:6FC23390 retn 10h .text:6FC23393 ; --------------------------------------------------------------------------- .text:6FC23393 .text:6FC23393 loc_6FC23393: ; CODE XREF: Storm_403+7j .text:6FC23393 push ebp .text:6FC23394 mov ebp, [esp+4+arg_0] .text:6FC23398 test ebp, ebp .text:6FC2339A push esi .text:6FC2339B push edi .text:6FC2339C jnz short loc_6FC233DD .text:6FC2339E push 85100081h ; dwErrCode .text:6FC233A3 mov dword_6FC457E4, 85100081h .text:6FC233AD call ds:SetLastError .text:6FC233B3 mov eax, dword_6FC44578 .text:6FC233B8 test eax, eax .text:6FC233BA jz short loc_6FC233D5 .text:6FC233BC mov eax, [esp+0Ch+arg_8] .text:6FC233C0 mov ecx, [esp+0Ch+arg_4] .text:6FC233C4 push 1 .text:6FC233C6 push 1 .text:6FC233C8 push ebp .text:6FC233C9 push eax .text:6FC233CA push ecx .text:6FC233CB push 85100081h .text:6FC233D0 call Storm_461 .text:6FC233D5 .text:6FC233D5 loc_6FC233D5: ; CODE XREF: Storm_403+6Aj .text:6FC233D5 ; Storm_403+B4j .text:6FC233D5 pop edi .text:6FC233D6 pop esi .text:6FC233D7 xor eax, eax .text:6FC233D9 pop ebp .text:6FC233DA retn 10h .text:6FC233DD ; --------------------------------------------------------------------------- .text:6FC233DD .text:6FC233DD loc_6FC233DD: ; CODE XREF: Storm_403+4Cj .text:6FC233DD cmp word ptr [ebp-2], 6F6Dh .text:6FC233E3 lea edi, [ebp-8] .text:6FC233E6 jz short loc_6FC23428 .text:6FC233E8 push 8510007Ch ; dwErrCode .text:6FC233ED mov dword_6FC457E4, 8510007Ch .text:6FC233F7 call ds:SetLastError .text:6FC233FD mov eax, dword_6FC44578 .text:6FC23402 test eax, eax .text:6FC23404 jz short loc_6FC233D5 .text:6FC23406 mov edx, [esp+0Ch+arg_8] .text:6FC2340A mov eax, [esp+0Ch+arg_4] .text:6FC2340E push 1 .text:6FC23410 push 1 .text:6FC23412 push 0 .text:6FC23414 push edx .text:6FC23415 push eax .text:6FC23416 push 8510007Ch .text:6FC2341B call Storm_461 .text:6FC23420 pop edi .text:6FC23421 pop esi .text:6FC23422 xor eax, eax .text:6FC23424 pop ebp .text:6FC23425 retn 10h .text:6FC23428 ; --------------------------------------------------------------------------- .text:6FC23428 .text:6FC23428 loc_6FC23428: ; CODE XREF: Storm_403+96j .text:6FC23428 mov al, [edi+3] .text:6FC2342B test al, 2 .text:6FC2342D jz short loc_6FC2344B .text:6FC2342F mov ecx, [esp+0Ch+arg_8] .text:6FC23433 mov edx, [esp+0Ch+arg_4] .text:6FC23437 push ecx .text:6FC23438 push edx .text:6FC23439 mov esi, 8510007Ah .text:6FC2343E call sub_6FC226E0 .text:6FC23443 pop edi .text:6FC23444 pop esi .text:6FC23445 xor eax, eax .text:6FC23447 pop ebp .text:6FC23448 retn 10h .text:6FC2344B ; --------------------------------------------------------------------------- .text:6FC2344B .text:6FC2344B loc_6FC2344B: ; CODE XREF: Storm_403+DDj .text:6FC2344B test al, 1 .text:6FC2344D jz short loc_6FC23475 .text:6FC2344F movzx eax, byte ptr [edi+2] .text:6FC23453 movzx ecx, word ptr [edi] .text:6FC23456 sub ecx, eax .text:6FC23458 cmp word ptr [ecx+edi-2], 12B1h .text:6FC2345F jz short loc_6FC23475 .text:6FC23461 mov edx, [esp+0Ch+arg_8] .text:6FC23465 mov eax, [esp+0Ch+arg_4] .text:6FC23469 push edx .text:6FC2346A push eax .text:6FC2346B mov esi, 8510007Bh .text:6FC23470 call sub_6FC226E0 .text:6FC23475 .text:6FC23475 loc_6FC23475: ; CODE XREF: Storm_403+FDj .text:6FC23475 ; Storm_403+10Fj .text:6FC23475 test byte ptr [edi+3], 8 .text:6FC23479 jz short loc_6FC2347E .text:6FC2347B mov edi, [edi-4] .text:6FC2347E .text:6FC2347E loc_6FC2347E: ; CODE XREF: Storm_403+129j .text:6FC2347E movzx esi, word ptr [edi+4] .text:6FC23482 shl esi, 10h .text:6FC23485 mov eax, [esi+8] .text:6FC23488 lea ecx, [eax+eax*2] .text:6FC2348B push ebx .text:6FC2348C lea edx, stru_6FC42D78.DebugInfo[ecx*8] .text:6FC23493 push edx ; lpCriticalSection .text:6FC23494 call ds:EnterCriticalSection .text:6FC2349A mov ebx, [esi+8] .text:6FC2349D push ebp .text:6FC2349E push esi .text:6FC2349F mov edx, edi .text:6FC234A1 call sub_6FC22B60 .text:6FC234A6 cmp ebx, 0FFFFFFFFh .text:6FC234A9 jz short loc_6FC234BC .text:6FC234AB lea eax, [ebx+ebx*2] .text:6FC234AE lea ecx, stru_6FC42D78.DebugInfo[eax*8] .text:6FC234B5 push ecx ; lpCriticalSection .text:6FC234B6 call ds:LeaveCriticalSection .text:6FC234BC .text:6FC234BC loc_6FC234BC: ; CODE XREF: Storm_403+159j .text:6FC234BC pop ebx .text:6FC234BD pop edi .text:6FC234BE pop esi .text:6FC234BF mov eax, 1 .text:6FC234C4 pop ebp .text:6FC234C5 retn 10h .text:6FC234C5 Storm_403 endp .text:6FC22B60 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ .text:6FC22B60 .text:6FC22B60 .text:6FC22B60 sub_6FC22B60 proc near ; CODE XREF: Storm_488+14Bp .text:6FC22B60 ; Storm_403+151p ... .text:6FC22B60 .text:6FC22B60 arg_0 = dword ptr 4 .text:6FC22B60 arg_4 = dword ptr 8 .text:6FC22B60 .text:6FC22B60 mov eax, dword_6FC44984 .text:6FC22B65 test eax, eax .text:6FC22B67 push esi .text:6FC22B68 push edi .text:6FC22B69 jz short loc_6FC22B9E .text:6FC22B6B xor eax, eax .text:6FC22B6D mov al, [edx+3] .text:6FC22B70 test al, 4 .text:6FC22B72 jnz short loc_6FC22B9E .text:6FC22B74 movzx ecx, word ptr [edx] .text:6FC22B77 mov edi, [esp+8+arg_4] .text:6FC22B7B and eax, 1 .text:6FC22B7E shl eax, 1 .text:6FC22B80 sub ecx, eax .text:6FC22B82 movzx eax, byte ptr [edx+2] .text:6FC22B86 sub ecx, eax .text:6FC22B88 sub ecx, 8 .text:6FC22B8B mov esi, ecx .text:6FC22B8D shr ecx, 2 .text:6FC22B90 mov eax, 0DDDDDDDDh .text:6FC22B95 rep stosd .text:6FC22B97 mov ecx, esi .text:6FC22B99 and ecx, 3 .text:6FC22B9C rep stosb .text:6FC22B9E .text:6FC22B9E loc_6FC22B9E: ; CODE XREF: sub_6FC22B60+9j .text:6FC22B9E ; sub_6FC22B60+12j .text:6FC22B9E mov esi, [esp+8+arg_0] .text:6FC22BA2 mov edi, edx .text:6FC22BA4 call sub_6FC225E0 .text:6FC22BA9 pop edi .text:6FC22BAA pop esi .text:6FC22BAB retn 8 .text:6FC22BAB sub_6FC22B60 endp [/code] | August 9, 2006, 6:04 PM |