eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: anmolodtsov, hlop (+1 невидимый пользователь)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Крэки, обсуждения —› .NET и C++
Посл.ответ Сообщение

Ранг: 30.5 (посетитель)
Статус: Участник

Создано: 16 мая 2016 00:42 New!
Цитата · Личное сообщение · #1

Есть пакет Tessaract NET SDK. Люди запилили свой wrapper над tessaract и добавили свои плюшки + лицензирование. Итак, в архиве две либы. Patagames.OCR и tessnet.dll

Перелопатил весь Patagames.OCR . Подозрение вызвал метод Create. Tesseract.TessBaseAPICreate скорее всего проверяет серийник. Все бы ничего, да это происходит в либе tessnet.dll которая написана на плюсах. Dot.net приложения я при возможности отлаживаю в ILspector, однако он не не может показать мне содержимое tessnet.dll (ну так понятно почему).

Code:
  1. public static OcrApi Create()
  2. {
  3.  
  4.   public static OcrApi Create()
  5. {
  6.     OcrApi api = new OcrApi();
  7.     string vers = null;
  8.     try
  9.     {
  10.         vers = Assembly.Load("Patagames.Ocr").GetName().Version.ToString();
  11.     }
  12.     catch
  13.     {
  14.     }
  15.     api.Handle = Tesseract.TessBaseAPICreate(LicenseKey, vers);
  16.     if (api.Handle == IntPtr.Zero)
  17.     {
  18.         throw new Exception(Error.err0002);
  19.     }
  20.     return api;
  21. }
  22.  
  23.  

Code:
  1. [DllImport("tesseract.dll", CallingConvention=CallingConvention.Cdecl)]
  2. public static extern IntPtr TessBaseAPICreate([MarshalAs(UnmanagedType.LPStr)] string key, [MarshalAs(UnmanagedType.LPStr)] string vers);



Открыл либу через IDA Pro, в коем особо не силен. Вижу SplashScreen и интуитивно понимаю что это и есть наша нага. Не суть. Идем дальше. Хочу найти TessBaseAPICreate, но увы такого метода там нет. Искал по словам типа "license". Ничего не нашел. Подскажите в какую сторону искать дальше?



ps Сам архив тут

https://tesseract.patagames.com/API/downloads.ashx?par=tesseract_7z

Добавлено спустя 22 минуты
Также заметил что лезет в реестр в ветки "Software\Patagames\Tesseract"

Добавлено спустя 12 часов 4 минуты
Нашел ключ на оф. форуме)) что то проглядели админы
--> Link <--
42433553494d500328bd021c3fd13c295f0f22d28e311f9cfb5937fbbb94fda3eb077f57b681c1c01742a0e23ccb0e7c52ccd8ea1674baf7473992f5043a4c77d2dc5ba756cd558d2555tdc333e90a2a036c1ec4eb88edda821c1e6d2f5a9517d7d092574ec50a75aaae3b461c62b70

Однако он все равно говорит что лицензии нет. Скорее всего как то надо в реестр вставлять его.

Ранг: 288.4 (наставник)
Статус: Участник

Создано: 16 мая 2016 13:44 New!
Цитата · Личное сообщение · #2

Не может того быть, чтоб в С++ библе не была задекларирована там TessBaseAPICreate

Ранг: 30.5 (посетитель)
Статус: Участник

Создано: 16 мая 2016 14:12 · Поправил: 17 мая 2016 08:33 Radzhab New!
Цитата · Личное сообщение · #3

Кажись нашел место проверки.

Code:
  1. int __thiscall TessBaseAPICreate(void *this, int a2)
  2. {
  3.   int v2; // eax@1
  4.   int result; // eax@2
  5.  
  6.   sub_1000C620(a2, this);
  7.   v2 = sub_100D247E(88);
  8.   if ( v2 )
  9.     result = tesseract__TessBaseAPI__TessBaseAPI(v2);
  10.   else
  11.     result = 0;
  12.   return result;
  13. }



Принудительно сделал переход во второй блок, теперь выводит ошибку

Unable to initialize the OCR API

Добавлено спустя 18 часов 21 минуту
Дам денежку тому кто сделает.
 eXeL@B —› Крэки, обсуждения —› .NET и C++

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS