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

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

Вернуться   Форум программистов > Работа для программиста > Фриланс
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.08.2019, 08:23   #1
max_factor
Новичок
Джуниор
 
Регистрация: 02.08.2019
Сообщений: 0
По умолчанию Ассемблер: Расшифровать код

Есть код на Ассемблере. Там идет раскладка по ячейкам памяти, перекладывание из одной в другую со всякими сопутствующими действиями.
Вот все лишнее барахло надо вычистить.
Чтобы осталось понимание, что функция X - это, например, определение среднего арифметического.

Ниже пример функции. Всего их 36 шт.
Если кто может помочь с расшифровкой, прошу откликнуться.
За вознаграждение естественно.

Код:
CMNUM_

signed int __cdecl CMNUM_(char a1)
{
  bool v1; // zf@1
  char *v2; // edi@1
  signed int v3; // ecx@1
  signed int result; // eax@13
  int v5; // [sp-12h] [bp-84h]@1
  unsigned __int8 v6; // [sp+1h] [bp-71h]@10
  int v7; // [sp+2h] [bp-70h]@5
  int v8; // [sp+6h] [bp-6Ch]@5
  char v9; // [sp+Ah] [bp-68h]@1
  int v10; // [sp+5Ah] [bp-18h]@1
  int v11; // [sp+5Eh] [bp-14h]@1

  qmemcpy(&v11, &a1, 8u);
  v10 = dword_101BA0AC;
  CMNAM_((unsigned int)&v9);
  v1 = &v5 == 0;
  v2 = &v9;
  v3 = 80;
  do
  {
    if ( !v3 )
      break;
    v1 = *v2++ == 32;
    --v3;
  }
  while ( v1 );
  if ( v1 )
  {
LABEL_14:
    dword_101BA0AC = v10;
    result = 1;
  }
  else
  {
    v8 = 1;
    *(_DWORD *)v11 = 0;
    v7 = 1;
    if ( v9 == 43 )
    {
      ++v7;
    }
    else if ( v9 == 45 )
    {
      ++v7;
      v8 = -1;
    }
    while ( *((_BYTE *)&v8 + v7 + 3) != 32 )
    {
      v6 = *((_BYTE *)&v8 + v7 + 3);
      if ( v6 > 0x39u || v6 < 0x30u )
        goto LABEL_14;
      *(_DWORD *)v11 = v6 + 10 * *(_DWORD *)v11 - 48;
      ++v7;
    }
    result = 0;
  }
  return result;
}
max_factor вне форума Ответить с цитированием
Старый 02.08.2019, 09:21   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Мда, выдавать выкид декомпилятора HR за асм код...
p51x вне форума Ответить с цитированием
Старый 02.08.2019, 10:41   #3
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Проще по ехе смотреть, чем по этому тексту..
Black Fregat вне форума Ответить с цитированием
Старый 02.08.2019, 15:37   #4
AbakBarama
Пользователь
 
Регистрация: 12.05.2011
Сообщений: 57
По умолчанию

max_factor, обращайтесь, если ещё актуально.
В ЛС или на гуглопочту, адрес соответствует имени на форуме.
AbakBarama вне форума Ответить с цитированием
Старый 08.08.2019, 14:01   #5
Larboss
Недо
Участник клуба
 
Регистрация: 11.08.2011
Сообщений: 1,394
По умолчанию

Пишите: larbossfreelance@yandex.ru
С помощью программирования можно разбогатеть и изменить мир к лучшему (с) Бьерн Страуструп
Larboss вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
расшифровать код Stasio97 Помощь студентам 14 28.07.2014 10:00
Расшифровать кэш Pasha_Sh Помощь студентам 3 30.12.2010 22:44
как расшифровать? Dlight Свободное общение 6 24.09.2010 20:56
расшифровать в ASCII потом цифры расшифровать в бинарный код viorel Общие вопросы Delphi 1 07.05.2010 14:43