123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339 |
- /******************************************************************************
- /* Header: ThemidaSDK.h
- /* Description: SDK header definition for the C/C++ language
- /*
- /* Author/s: Rafael Ahucha
- /* (c) 2004 Oreans Technologies
- /*****************************************************************************/
- #ifndef __THEMIDASDK__
- #define __THEMIDASDK__
- /* Definition for Borland C/C++ */
- #ifdef __BORLANDC__
-
- #define CODEREPLACE_START __emit__ (0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20);
- #define CODEREPLACE_END __emit__ (0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x01, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20);
-
- #define ENCODE_START __emit__ (0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x04, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20);
- #define ENCODE_END __emit__ (0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x05, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20);
- #define CLEAR_START __emit__ (0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x06, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20);
- #define CLEAR_END __emit__ (0xEB, 0x15, 0x57, 0x4C, 0x20, 0x20, 0x07, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20, 0x00, 0x00, \
- 0x00, 0x00, 0x00);
- #define __WL_MACROS__
- #endif
-
- #endif
- /* Definition for Intel cpp compiler */
-
- #ifndef __WL_MACROS__
-
- #ifdef __ICL
-
- #define CODEREPLACE_START \
- __asm __emit 0xEB \
- __asm __emit 0x10 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
-
- #define CODEREPLACE_END \
- __asm __emit 0xEB \
- __asm __emit 0x10 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
- __asm __emit 0x01 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
-
- #define ENCODE_START \
- __asm __emit 0xEB \
- __asm __emit 0x10 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
- __asm __emit 0x04 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
-
- #define ENCODE_END \
- __asm __emit 0xEB \
- __asm __emit 0x10 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
- __asm __emit 0x05 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
-
- #define CLEAR_START \
- __asm __emit 0xEB \
- __asm __emit 0x10 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
- __asm __emit 0x06 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
-
- #define CLEAR_END \
- __asm __emit 0xEB \
- __asm __emit 0x15 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
- __asm __emit 0x07 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x57 \
- __asm __emit 0x4C \
- __asm __emit 0x20 \
- __asm __emit 0x20 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00 \
- __asm __emit 0x00
-
- #define __WL_MACROS__
-
- #endif
- #endif
-
-
- /* Definition for LCC by Jacob Navia */
-
- #ifndef __WL_MACROS__
-
- #ifdef __LCC__
-
- #define CODEREPLACE_START __asm__ (" .byte\t0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20");
- #define CODEREPLACE_END __asm__ (" .byte\t0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x01, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20");
-
- #define ENCODE_START __asm__(" .byte\t0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x04, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20");
- #define ENCODE_END __asm__(" .byte\t0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x05, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20");
-
- #define CLEAR_START __asm__(" .byte\t0xEB, 0x10, 0x57, 0x4C, 0x20, 0x20, 0x06, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20");
-
- #define CLEAR_END __asm__(" .byte\t0xEB, 0x15, 0x57, 0x4C, 0x20, 0x20, 0x07, 0x00, 0x00, 0x00, \
- 0x00, 0x00, 0x00, 0x00, 0x57, 0x4C, 0x20, 0x20, 0x00, 0x00, \
- 0x00, 0x00, 0x00");
-
- #define __WL_MACROS__
-
- #endif
-
- #endif
-
- /* Definition for Visual C++ and others */
- #ifndef __WL_MACROS__
-
- #define CODEREPLACE_START \
- __asm _emit 0xEB \
- __asm _emit 0x10 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
-
- #define CODEREPLACE_END \
- __asm _emit 0xEB \
- __asm _emit 0x10 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
- __asm _emit 0x01 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
-
- #define ENCODE_START \
- __asm _emit 0xEB \
- __asm _emit 0x10 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
- __asm _emit 0x04 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
-
- #define ENCODE_END \
- __asm _emit 0xEB \
- __asm _emit 0x10 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
- __asm _emit 0x05 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
-
- #define CLEAR_START \
- __asm _emit 0xEB \
- __asm _emit 0x10 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
- __asm _emit 0x06 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
-
- #define CLEAR_END \
- __asm _emit 0xEB \
- __asm _emit 0x15 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
- __asm _emit 0x07 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x57 \
- __asm _emit 0x4C \
- __asm _emit 0x20 \
- __asm _emit 0x20 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00 \
- __asm _emit 0x00
- #endif
|