۱۲-دى-۱۳۸۶, ۱۱:۲۵:۴۷
سلام!
قطعه کد زیر ، بخشی از کد دسمبلر شده فایل اجرایی یک برنامه هست. دستوراتش شبیه به اسمبلی هست ولی انگار اسمبلی نیست !!؟! چون نمی تونم با اسمبلی تحت داس اجراش کنم یا کامپایش کنم. شاید دوستان بتونن تشخیص بدن این کد دقیقا به چه زیانی هست و یا چطور می شه اون رو به شکلی اجرا کرد یا از اون فایل اجرایی ساخت.
قطعه کد زیر ، بخشی از کد دسمبلر شده فایل اجرایی یک برنامه هست. دستوراتش شبیه به اسمبلی هست ولی انگار اسمبلی نیست !!؟! چون نمی تونم با اسمبلی تحت داس اجراش کنم یا کامپایش کنم. شاید دوستان بتونن تشخیص بدن این کد دقیقا به چه زیانی هست و یا چطور می شه اون رو به شکلی اجرا کرد یا از اون فایل اجرایی ساخت.
کد:
push ebp
mov ebp, esp
sub esp, 0000000Ch
push 004018C6h ; MSVBVM60.DLL.__vbaExceptHandler
mov eax, fs:[00h]
push eax
mov fs:[00000000h], esp
sub esp, 00000020h
push ebx
push esi
push edi
mov var_0C, esp
mov var_08, 00401808h
mov esi, arg_08
mov eax, esi
and eax, 00000001h
mov var_04, eax
and esi, FFFFFFFEh
push esi
mov arg_08, esi
mov ecx, [esi]
call [ecx+04h]
mov ebx, [00401044h] ; Asc(arg_1)
xor eax, eax
push 00409E08h
mov var_18, eax
mov var_1C, eax
call ebx
mov edi, arg_0C
cmp [edi], ax
jle 47A7DBh
push 00409E10h
call ebx
mov dx, ax
push 00409E08h
add dx, [edi]
jo 0047A893h
mov var_32, dx
call ebx
mov dx, var_32
sub dx, ax
jo 0047A893h
mov [edi], dx
cmp word ptr [edi], 000Dh
jnz 47A852h