ODBJscript: ODBJScript.h Source File

ODBJscript

ODBJscript
javascript plugin
ODBJScript.h
Go to the documentation of this file.
00001 #ifndef __ODBJ_DOCUMENTATION_H__
00002 #define __ODBJ_DOCUMENTATION_H__
00003 
00004 
00008 enum e_exceptmask {
00009    IGNORE_NONE              = 0x00000000,
00010    IGNORE_ACCESS_KER32      = 0x00000001,
00011    IGNORE_INT3              = 0x00000002,
00012    IGNORE_TRAP              = 0x00000004,
00013    IGNORE_ACCESS            = 0x00000010,
00014    IGNORE_DIV_ZERO          = 0x00000020,
00015    IGNORE_ILLEGAL_INST      = 0x00000040,
00016    IGNORE_FPU_EXCEPT        = 0x00000100,
00017    IGNORE_CUSTOM_EXCEPT     = 0x00000200,
00018    IGNORE_MANUALLY          = 0xFFFFFFFF,
00019    IGNORE_ALL               = IGNORE_ACCESS_KER32|IGNORE_INT3|IGNORE_TRAP|IGNORE_ACCESS|IGNORE_DIV_ZERO|IGNORE_ILLEGAL_INST|IGNORE_FPU_EXCEPT|IGNORE_CUSTOM_EXCEPT
00020 };
00021 
00022 enum e_memoryinfo {
00023    MEMORYBASE,
00024    MEMORYSIZE,
00025    MEMORYOWNER
00026 };
00027 
00028 
00029 enum t_moduleinfo {
00030    MODULEBASE,  
00031    MODULESIZE,  
00032    CODEBASE  ,  
00033    CODESIZE  ,  
00034    ENTRY     ,  
00035    NSECT     ,  
00036    DATABASE  ,  
00037    EDATATABLE,  
00038    EDATASIZE ,  
00039    IDATATABLE,  
00040    RESBASE   ,  
00041    RESSIZE   ,  
00042    RELOCTABLE,  
00043    RELOCSIZE    
00044 };
00045 
00046 enum e_cmdinfo {
00047    COMMAND    ,
00048    CONDITION  ,
00049    DESTINATION,
00050    FINALDEST  , 
00051    SIZE       ,
00052    TYPE       ,
00053 };
00054 
00055 enum e_dumptype {
00056    DU_HEXTEXT =    0x01000L,        
00057    DU_TEXT    =    0x02000L,        
00058    DU_UNICODE =    0x03000L,        
00059    DU_INT     =    0x04000L,        
00060    DU_UINT    =    0x05000L,        
00061    DU_IHEX    =    0x06000L,        
00062    DU_FLOAT   =    0x07000L,        
00063    DU_ADDR    =    0x08000L,        
00064    DU_DISASM  =    0x09000L,        
00065    DU_HEXUNI  =    0x0A000L,        
00066    DU_ADRASC  =    0x0B000L,        
00067    DU_ADRUNI  =    0x0C000L         
00068 };
00069 
00070 enum e_processinfo {
00071    HPROCESS = 20,      
00072    PROCESSID   ,      
00073    HMAINTHREAD ,      
00074    MAINTHREADID,      
00075    MAINBASE    ,      
00076    PROCESSNAME ,      
00077    EXEFILENAME ,      
00078    CURRENTDIR  ,      
00079    SYSTEMDIR         
00080 };
00081 
00082 enum e_origin {
00083    CPUDASM,
00084    CPUDUMP,
00085    CPUSTACK
00086 };
00087 
00095 ulong DD(ulong addr);
00103 ulong DW(ulong addr);
00111 ulong DB(ulong addr);
00121 ulong SETOPTION(DWORD mask);
00126 void EVAL(void);
00131 void MSGYN(void);
00136 void MSG(void);
00145 void REFRESH(bool onoff);
00157 void LOGBUF(ulong ip, size_t size, int nepl= 32, char* separator = "");
00165 void LOG(...);
00176 void TICND(char* cond, ulong in0,ulong in1,ulong out0,ulong out1);
00188 void BPGOTO(ulong addr, FUNC* proc);
00197 void EOB(FUNC* proc);
00206 void EOE(FUNC* proc);
00211 void COB();
00216 void COE();
00226 void BPX(char* procname, DWORD addr = 0);
00237 void BPD(char* procname);
00247 void GBPM();
00257 ulong FIND(ulong addr, char* what);
00268 ulong MOV(ulong addr, char* what, int n = lenght_of_what);
00279 ulong MOVS(ulong addr, char* str, int n = lenght_of_what);
00294 ulong FINDO(ulong addr, char* what, int blocklen, func callback, ...);
00303 ulong PREOP(ulong addr);
00314 ulong GCI(ulong addr,int info);
00327 void KEY(int vkcode, bool shift = false, bool ctrl = false, int origin = PM_DISASM);
00333 void OPENDUMP(ulong addr, ulong base, ulong size, int type = Hex/ASCII){}
00344 ulong BUF(var);
00355 ulong CLOSE(window);
00365 ulong DBH(void);
00375 ulong DBS(void);
00387 ulong DPE(char* filename, ulong ep);
00397 ulong ENDE(void);
00407 void ENDSEARCH(void);
00417 void EXEC(void);
00428 ulong GAPI(ulong addr);
00438 ulong GMA(char* name, int info);
00451 ulong GMEXP(ulong moduleaddr, int info, [int num]);
00461 char* GN(ulong addr);
00472 ulong GREF([int line]);
00483 ulong GRO(ulong addr);
00493 char* GSTR(ulong addr[, int len]);
00503 uchar* GSTRW(ulong addr[, int len]);
00516 ulong LM(ulong addr, int size, char* filename);
00527 ulong LOADLIB(char* dllname);
00540 ulong MEMCPY(ulong dest, ulong src, int size);
00551 ulong NAMES(ulong addr);
00562 ulong OLLY(int info);
00572 void PAUSE(void);
00582 void POPA(void);
00592 void PUSHA(void);
00603 void STR(var);
00608 void AI(void);
00613 void AO(void);
00618 void ERUN(void);
00623 void ESTI(void);
00628 void GO(ulong addr);
00633 void RTR(void);
00638 void RTU(void);
00643 void RUN(void);
00648 void STI(void);
00653 void STO(void);
00658 void TI(void);
00663 void TO(void);
00674 void TOCND(char* cond);
00679 void CMT(char* comment);
00684 void AN(ulong addr);
00689 void BC(ulong addr);
00694 void BD(ulong addr);
00699 void BE(ulong addr);
00704 void BP(ulong addr);
00709 void BPCND(ulong addr, char* cond);
00714 void BPLCND(ulong addr, char* cond, char* expr);
00719 void BPWM(ulong addr, int size);
00724 void BPHWS(ulong addr, char* mode = "x", int size = 1);
00729 void BPHWC(ulong addr);
00734 void BPL(ulong addr, char* expr);
00739 void BPMC();
00744 void BPRM(ulong addr, int size);
00749 void GBPR();
00755 ulong GMEMI(ulong addr, int info);
00760 ulong GPA(char* proc,char* lib, bool bKeepInMem);
00765 ulong REPL(ulong addr, char* find, char* repl, int len);
00770 ulong WRT(char* file, char* data);
00775 ulong WRTA(char* file, char* data[, char* separator]);
00780 ulong OPCODE(ulong addr);
00785 ulong FILL(ulong addr, int len, char* value);
00790 void LBL(ulong addr,char* text);
00795 void LC();
00800 void OPENTRACE();
00805 void TC();
00810 ulong ALLOC(int size);
00815 ulong ASK(char* question);
00820 void BACKUP(ulong addr);
00825 ulong DM(ulong addr, int size, file);
00830 ulong DMA(ulong addr, int size, file);
00835 void ESTEP(void);
00840 void FREE(ulong addr);
00845 ulong GFO(ulong addr);
00851 ulong GPI(info);
00857 ulong GSL([int where]);
00862 ulong LEN(char* str);
00868 ulong POP();
00873 void PUSH(ulong dw);
00878 char* READSTR(char* str, int len);
00883 ulong REV(ulong what);
00888 ulong ROL(ulong op, ulong ulong count);
00893 ulong ROR(ulong op, ulong count);
00900 ulong XCHG(object* regdest, object* regsrc);
00908 void MOVB(object* objaddr, object* odjdata);
00916 void ASMB(object* objaddr, object* odjdata);
00921 ulong TICK(void);
00922 
00923 
00924 
00925 #endif // __ODBJ_DOCUMENTATION_H__
Generated on Fri Jan 27 2012 17:54:31 for ODBJscript by   doxygen 1.7.5.1