Cmdinfo

ulong Cmdinfo(uchar *cmd,ulong cmdsize,ulong cmdip,t_cmdinfo *ci,int cmdmode,t_reg *cmdreg);

A stripped-down and accelerated version of Disasm(). Reports basic information about the pointed binary command, like command length, list of prefixes and list of operands.


Parameters:

cmd
(in) Pointer to the binary code of the 80x86 command, cmdsize bytes long
cmdsize
(in) Size of the data pointed to by cmd, bytes. May be significantly longer than the length of the processed command. Note that the length of valid 80x86 command is limited to MAXCMDSIZE bytes. (In fact, maximal command length is 15 bytes and MAXCMDSIZE is rounded up to 16)
cmdip
(in) Address of the command. necessary to decode destinations of relative jumps and calls.
ci
(out) Pointer to the structure of type t_cmdinfo that receives information
cmdmode
(in) Disassembling mode, a combination of zero or more of the flags listed below:
DA_MEMORY - allows Cmdinfo() to read memory of the debugged process in order to extract destinations of indirect jumps
cmdreg
(in) Pointer to the structure of type t_reg describing contents of registers before the command was executed, or NULL if registers are unavailable or not necessary. Registers may be necessary to calculate the jump destination


Return values:

Returns length of the command in bytes, or 0 in the case of invalid input parameters


See also:
Assembler and disassembler, t_cmdinfo, t_opinfo, Disasm()