56{
59
60
61
62
63 if (SplitCommand.size() != 1 && SplitCommand.size() != 2)
64 {
67 return;
68 }
69
70
71
72
74 {
75 ShowMessages(
"the instrumentation step-in is only supported in Debugger Mode\n");
76 return;
77 }
78
79
80
81
83
84
85
86
87 if (SplitCommand.size() == 2)
88 {
90 {
91 ShowMessages(
"please specify a correct hex value for [count]\n\n");
93 return;
94 }
95 }
96 else
97 {
98 StepCount = 1;
99 }
100
101
102
103
105 {
106
107
108
110
111 for (size_t i = 0; i < StepCount; i++)
112 {
113
114
115
116
117
118
119
120
121
122
124
125 if (!SplitCommand.at(0).compare("ir"))
126 {
127
128
129
131
132 if (i != StepCount - 1)
133 {
135 }
136 }
137
138
139
140
142 {
143 break;
144 }
145 }
146
147
148
149
151 }
152 else
153 {
154 ShowMessages(
"err, stepping (i) is not valid in the current context, you "
155 "should connect to a debuggee\n");
156 }
157}
#define TRUE
Definition BasicTypes.h:55
#define FALSE
Definition BasicTypes.h:54
unsigned int UINT32
Definition BasicTypes.h:48
@ DEBUGGER_REMOTE_STEPPING_REQUEST_INSTRUMENTATION_STEP_IN
Definition RequestStructures.h:993
enum _DEBUGGER_REMOTE_STEPPING_REQUEST DEBUGGER_REMOTE_STEPPING_REQUEST
stepping and tracking types
BOOLEAN ConvertStringToUInt32(string TextToConvert, PUINT32 Result)
check and convert string to a 32 bit unsigned it and also check for special notations like 0x etc.
Definition common.cpp:347
VOID CommandIHelp()
help of the i command
Definition i.cpp:27
BOOLEAN g_IsInstrumentingInstructions
Shows whether the user is running 't', 'p', or 'i' command.
Definition globals.h:561
BOOLEAN g_IsSerialConnectedToRemoteDebuggee
Shows if the debugger was connected to remote debuggee over (A remote guest)
Definition globals.h:231
ACTIVE_DEBUGGING_PROCESS g_ActiveProcessDebuggingState
State of active debugging thread.
Definition globals.h:362
BOOLEAN KdSendStepPacketToDebuggee(DEBUGGER_REMOTE_STEPPING_REQUEST StepRequestType)
Sends p (step out) and t (step in) packet to the debuggee.
Definition kd.cpp:1206
VOID ShowMessages(const char *Fmt,...)
Show messages.
Definition libhyperdbg.cpp:96
BOOLEAN HyperDbgRegisterShowAll()
handler of r show all registers
Definition r.cpp:317
BOOLEAN IsActive
Definition ud.h:49