Здраствуйте у меня вопрос по языку(я нуб) Код (Text): sub_488CE0(int, char *buf, int len, int) sub_488CE0 proc near arg_0= dword ptr 4 buf= dword ptr 8 len= dword ptr 0Ch arg_C= dword ptr 10h mov eax, [esp+arg_0] push ebx push esi push edi mov edi, ecx lea esi, [eax+eax*8] mov eax, [esp+0Ch+len] mov ecx, [esp+0Ch+buf] mov edx, [edi+10h] push 0 ; flags shl esi, 4 push eax ; len push ecx ; buf mov eax, [edx+esi] push eax ; s что здесь происходит?
Могу ошибаться, но это подготовка аргументов к передаче функции? По-моему это явно не обычная программа...
это проверка, данных перед отправкой, я немогу найти где происходит шифрование, шифрование должно быть ХОR
Код (Text): .text:00488CE0 ; =============== S U B R O U T I N E ======================================= .text:00488CE0 .text:00488CE0 .text:00488CE0 ; int __stdcall sub_488CE0(int, char *buf, int len, int) .text:00488CE0 sub_488CE0 proc near ; CODE XREF: sub_486920+141|p .text:00488CE0 .text:00488CE0 arg_0 = dword ptr 4 .text:00488CE0 buf = dword ptr 8 .text:00488CE0 len = dword ptr 0Ch .text:00488CE0 arg_C = dword ptr 10h .text:00488CE0 .text:00488CE0 mov eax, [esp+arg_0] .text:00488CE4 push ebx .text:00488CE5 push esi .text:00488CE6 push edi .text:00488CE7 mov edi, ecx .text:00488CE9 lea esi, [eax+eax*8] .text:00488CEC mov eax, [esp+0Ch+len] .text:00488CF0 mov ecx, [esp+0Ch+buf] .text:00488CF4 mov edx, [edi+10h] .text:00488CF7 push 0 ; flags .text:00488CF9 shl esi, 4 .text:00488CFC push eax ; len .text:00488CFD push ecx ; buf .text:00488CFE mov eax, [edx+esi] .text:00488D01 push eax ; s .text:00488D02 call ds:send .text:00488D08 mov ebx, [esp+0Ch+arg_C] .text:00488D0C cmp eax, 0FFFFFFFFh .text:00488D0F mov [ebx], eax .text:00488D11 jnz short loc_488D4C .text:00488D13 call ds:WSAGetLastError .text:00488D19 cmp eax, 2733h .text:00488D1E mov [ebx], eax .text:00488D20 jnz short loc_488D3D .text:00488D22 mov ecx, [edi+10h] .text:00488D25 mov edx, [edi+50h] .text:00488D28 inc edx .text:00488D29 lea eax, [ecx+esi+54h] .text:00488D2D mov [edi+50h], edx .text:00488D30 pop edi .text:00488D31 pop esi .text:00488D32 mov ecx, [eax] .text:00488D34 pop ebx .text:00488D35 inc ecx .text:00488D36 mov [eax], ecx .text:00488D38 xor al, al .text:00488D3A retn 10h .text:00488D3D ; --------------------------------------------------------------------------- .text:00488D3D .text:00488D3D loc_488D3D: ; CODE XREF: sub_488CE0+40j .text:00488D3D mov eax, [edi+4Ch] .text:00488D40 inc eax .text:00488D41 mov [edi+4Ch], eax .text:00488D44 pop edi .text:00488D45 pop esi .text:00488D46 xor al, al .text:00488D48 pop ebx .text:00488D49 retn 10h .text:00488D4C ; --------------------------------------------------------------------------- .text:00488D4C .text:00488D4C loc_488D4C: ; CODE XREF: sub_488CE0+31j .text:00488D4C pop edi .text:00488D4D pop esi .text:00488D4E mov al, 1 .text:00488D50 pop ebx .text:00488D51 retn 10h .text:00488D51 sub_488CE0 endp .text:00488D51 .text:00488D51 ; --------------------------------------------------------------------------- .text:00488D54 align 10h .text:00488D60
Код (Text): var_84= byte ptr -84h var_80= byte ptr -80h var_64= byte ptr -64h var_48= byte ptr -48h var_2C= byte ptr -2Ch var_28= dword ptr -28h var_24= dword ptr -24h var_1C= dword ptr -1Ch var_18= dword ptr -18h var_10= dword ptr -10h var_C= dword ptr -0Ch var_4= dword ptr -4 argc= dword ptr 8 argv= dword ptr 0Ch envp= dword ptr 10h push ebp mov ebp, esp push 0FFFFFFFFh push offset loc_403845 mov eax, large fs:0 push eax sub esp, 78h push ebx push esi push edi mov eax, dword_406018 xor eax, ebp push eax lea eax, [ebp+var_C] mov large fs:0, eax mov [ebp+var_10], esp lea eax, [ebp+var_2C] push eax mov [ebp+var_4], 0 call sub_4019E0 mov byte ptr [ebp+var_4], 1 mov esi, [ebp+var_28] mov eax, [ebp+var_24] cmp esi, eax а здесь есть шифрование?
модуль тяжёлый, есть легче но чемто запакован(так и непонял чем) http://depositfiles.com/files/hy7tqs7wj