1
0
Fork 0

PROJECT: updated readme

PROJECT: updated todo list
DBG: added stack dump command
This commit is contained in:
Mr. eXoDia 2014-03-03 01:24:16 +01:00
parent 082afb92f4
commit 8d9825f156
6 changed files with 20 additions and 8 deletions

View File

@ -53,11 +53,13 @@ without having to update the code of the other parts.
- easy context menu in disassembly (to set breakpoints etc)
- plugin support
- (manual) function analysis
- easily follow calls/jumps/ret (press ENTER in when selecting)
- easily follow calls/jumps/ret (press ENTER when selecting)
- (buggy) dynamic commenting
- scripting support (using the debugger commands)!
- simple dump
- symbols (+ exports) view with search
- simple stack view
- programmable reference view
>Known bugs:
- memory breakpoints sometimes fail (TitanEngine bug)

View File

@ -1,5 +1,4 @@
- detach debugger
- asm command
- memcpy
- pe data access
- fpu support
@ -10,7 +9,6 @@
- getremotestring
- function parameter
- help file updates
- scripting
- thread support
- tls callbacks
- inject dll
@ -38,9 +36,7 @@
- strings
- references
- callstack
- stack
- heap
- functions
- TEB/TBI
- PEB/PBI
- cpu thread id
@ -53,13 +49,10 @@
- restore window position (BridgeSetting)
- follow in dump
- opcode byte split
- stack window(!)
- dump window(!!!)
- tabbed GUI (workspace+dragable windows)
- LUA/Python support
- ep break options
- custom colours
- show export table
- find all intermodular calls
- highlight register changes (only when CIP changed also)
- 'dead' bytes custom analysis

View File

@ -1730,3 +1730,17 @@ CMDRESULT cbDebugDump(int argc, char* argv[])
GuiDumpAt(addr);
return STATUS_CONTINUE;
}
CMDRESULT cbDebugStackDump(int argc, char* argv[])
{
duint addr=0;
if(argc<2)
addr=GetContextData(UE_CSP);
else if(!valfromstring(argv[1], &addr))
{
dprintf("invalid address \"%s\"!\n", argv[1]);
return STATUS_ERROR;
}
GuiStackDumpAt(addr, GetContextData(UE_CSP));
return STATUS_CONTINUE;
}

View File

@ -55,6 +55,7 @@ CMDRESULT cbDebugDeleteMemoryBreakpoint(int argc, char* argv[]);
CMDRESULT cbDebugAttach(int argc, char* argv[]);
CMDRESULT cbDebugDetach(int argc, char* argv[]);
CMDRESULT cbDebugDump(int argc, char* argv[]);
CMDRESULT cbDebugStackDump(int argc, char* argv[]);
//variables
extern PROCESS_INFORMATION* fdProcessInfo;

View File

@ -141,6 +141,7 @@ static void registercommands()
cmdnew(cmd, "asm", cbAssemble, true); //assemble instruction
cmdnew(cmd, "dump", cbDebugDump, true); //dump at address
cmdnew(cmd, "sdump", cbDebugStackDump, true); //dump at stack address
cmdnew(cmd, "printf", cbPrintf, false); //printf
cmdnew(cmd, "refinit", cbInstrRefinit, false);

View File

@ -3,6 +3,7 @@
#include <QtGui>
#include <QtDebug>
#include <QAction>
#include "NewTypes.h"
#include "HexDump.h"
#include "Bridge.h"