Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2014, 17:04   #1
flesyyykkk
Пользователь
 
Регистрация: 31.07.2012
Сообщений: 21
По умолчанию Что за функция (помогите опознать функцию или переписать)

Подскажите, что делается данная функция (скорее всего это из библиотеки Borland или Jedi, что-то делает с числом)
Код:
text:007EF704 ; =============== S U B R O U T I N E =======================================
.text:007EF704
.text:007EF704 ; Attributes: library function
.text:007EF704
.text:007EF704 __llmod         proc near               ; CODE XREF: sub_45A404+40Ep
.text:007EF704                                         ; sub_45A404+822p ...
.text:007EF704
.text:007EF704 arg_0           = dword ptr  4
.text:007EF704 arg_4           = dword ptr  8
.text:007EF704
.text:007EF704                 push    ebp
.text:007EF705                 push    ebx
.text:007EF706                 push    esi
.text:007EF707                 push    edi
.text:007EF708                 xor     edi, edi
.text:007EF70A                 mov     ebx, [esp+10h+arg_0]
.text:007EF70E                 mov     ecx, [esp+10h+arg_4]
.text:007EF712                 or      ecx, ecx
.text:007EF714                 jnz     short loc_7EF71E
.text:007EF716                 or      edx, edx
.text:007EF718                 jz      short loc_7EF777
.text:007EF71A                 or      ebx, ebx
.text:007EF71C                 jz      short loc_7EF777
.text:007EF71E
.text:007EF71E loc_7EF71E:                             ; CODE XREF: __llmod+10j
.text:007EF71E                 or      edx, edx
.text:007EF720                 jns     short loc_7EF72C
.text:007EF722                 neg     edx
.text:007EF724                 neg     eax
.text:007EF726                 sbb     edx, 0
.text:007EF729                 or      edi, 1
.text:007EF72C
.text:007EF72C loc_7EF72C:                             ; CODE XREF: __llmod+1Cj
.text:007EF72C                 or      ecx, ecx
.text:007EF72E                 jns     short loc_7EF737
.text:007EF730                 neg     ecx
.text:007EF732                 neg     ebx
.text:007EF734                 sbb     ecx, 0
.text:007EF737
.text:007EF737 loc_7EF737:                             ; CODE XREF: __llmod+2Aj
.text:007EF737                 mov     ebp, ecx
.text:007EF739                 mov     ecx, 40h
.text:007EF73E                 push    edi
.text:007EF73F                 xor     edi, edi
.text:007EF741                 xor     esi, esi
.text:007EF743
.text:007EF743 loc_7EF743:                             ; CODE XREF: __llmod:loc_7EF75Aj
.text:007EF743                 shl     eax, 1
.text:007EF745                 rcl     edx, 1
.text:007EF747                 rcl     esi, 1
.text:007EF749                 rcl     edi, 1
.text:007EF74B                 cmp     edi, ebp
.text:007EF74D                 jb      short loc_7EF75A
.text:007EF74F                 ja      short loc_7EF755
.text:007EF751                 cmp     esi, ebx
.text:007EF753                 jb      short loc_7EF75A
.text:007EF755
.text:007EF755 loc_7EF755:                             ; CODE XREF: __llmod+4Bj
.text:007EF755                 sub     esi, ebx
.text:007EF757                 sbb     edi, ebp
.text:007EF759                 inc     eax
.text:007EF75A
.text:007EF75A loc_7EF75A:                             ; CODE XREF: __llmod+49j
.text:007EF75A                                         ; __llmod+4Fj
.text:007EF75A                 loop    loc_7EF743
.text:007EF75C                 mov     eax, esi
.text:007EF75E                 mov     edx, edi
.text:007EF760                 pop     ebx
.text:007EF761                 test    ebx, 1
.text:007EF767                 jz      short loc_7EF770
.text:007EF769                 neg     edx
.text:007EF76B                 neg     eax
.text:007EF76D                 sbb     edx, 0
.text:007EF770
.text:007EF770 loc_7EF770:                             ; CODE XREF: __llmod+63j
.text:007EF770                                         ; __llmod+78j
.text:007EF770                 pop     edi
.text:007EF771                 pop     esi
.text:007EF772                 pop     ebx
.text:007EF773                 pop     ebp
.text:007EF774                 retn    8
.text:007EF777 ; ---------------------------------------------------------------------------
.text:007EF777
.text:007EF777 loc_7EF777:                             ; CODE XREF: __llmod+14j
.text:007EF777                                         ; __llmod+18j
.text:007EF777                 div     ebx
.text:007EF779                 xchg    eax, edx
.text:007EF77A                 xor     edx, edx
.text:007EF77C                 jmp     short loc_7EF770
.text:007EF77C __llmod         endp
Не актуально, закрыто! __llmod

Последний раз редактировалось flesyyykkk; 18.01.2014 в 10:29.
flesyyykkk вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi]Переписать программу использовав функцию just4smth Помощь студентам 4 16.10.2011 08:45
Что лучше процедура или функция??? VintProg Общие вопросы Delphi 34 17.08.2010 15:52
Память, (что тяжелее:функция или процедура) WF7 Паскаль, Turbo Pascal, PascalABC.NET 4 08.06.2009 08:09
Помогите опознать формат leb44 БД в Delphi 1 28.01.2009 12:43