Rev 387 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 387 | Rev 419 | ||
---|---|---|---|
Line 113... | Line 113... | ||
113 | ; ecx=sizeof(CONTEXT) |
113 | ; ecx=sizeof(CONTEXT) |
114 | ; edx->CONTEXT |
114 | ; edx->CONTEXT |
115 | ; destroys eax,ecx,edx,esi,edi |
115 | ; destroys eax,ecx,edx,esi,edi |
116 | cmp ecx, 28h |
116 | cmp ecx, 28h |
117 | jnz .ret |
117 | jnz .ret |
118 | add edx, std_application_base_address |
118 | ; add edx, std_application_base_address |
119 | push ebx |
119 | push ebx |
120 | mov ebx, edx |
120 | mov ebx, edx |
121 | call check_region |
121 | call check_region |
122 | pop ebx |
122 | pop ebx |
123 | dec eax |
123 | dec eax |
Line 172... | Line 172... | ||
172 | ; ecx=sizeof(CONTEXT) |
172 | ; ecx=sizeof(CONTEXT) |
173 | ; edx->CONTEXT |
173 | ; edx->CONTEXT |
174 | ; destroys eax,ecx,edx,esi,edi |
174 | ; destroys eax,ecx,edx,esi,edi |
175 | cmp ecx, 28h |
175 | cmp ecx, 28h |
176 | jnz .ret |
176 | jnz .ret |
177 | add edx, std_application_base_address |
177 | ; add edx, std_application_base_address |
178 | push ebx |
178 | push ebx |
179 | mov ebx, edx |
179 | mov ebx, edx |
180 | call check_region |
180 | call check_region |
181 | pop ebx |
181 | pop ebx |
182 | dec eax |
182 | dec eax |
Line 228... | Line 228... | ||
228 | jc .errret |
228 | jc .errret |
229 | mov ebp, eax |
229 | mov ebp, eax |
230 | lea eax, [eax*8+SLOT_BASE+APPDATA.dbg_regs] |
230 | lea eax, [eax*8+SLOT_BASE+APPDATA.dbg_regs] |
231 | ; [eax]=dr0, [eax+4]=dr1, [eax+8]=dr2, [eax+C]=dr3 |
231 | ; [eax]=dr0, [eax+4]=dr1, [eax+8]=dr2, [eax+C]=dr3 |
232 | ; [eax+10]=dr7 |
232 | ; [eax+10]=dr7 |
233 | add edx, std_application_base_address |
233 | ; add edx, std_application_base_address |
234 | jc .errret |
234 | jc .errret |
235 | cmp cl, 3 |
235 | cmp cl, 3 |
236 | ja .errret |
236 | ja .errret |
237 | mov ebx, dr7 |
237 | mov ebx, dr7 |
238 | shr ebx, cl |
238 | shr ebx, cl |
Line 300... | Line 300... | ||
300 | ; ecx=length |
300 | ; ecx=length |
301 | ; esi->buffer in debugger |
301 | ; esi->buffer in debugger |
302 | ; edx=address in debuggee |
302 | ; edx=address in debuggee |
303 | ; out: [esp+36]=sizeof(read) |
303 | ; out: [esp+36]=sizeof(read) |
304 | ; destroys all |
304 | ; destroys all |
305 | add esi, std_application_base_address |
305 | ; add esi, std_application_base_address |
306 | push ebx |
306 | push ebx |
307 | mov ebx, esi |
307 | mov ebx, esi |
308 | call check_region |
308 | call check_region |
309 | pop ebx |
309 | pop ebx |
310 | dec eax |
310 | dec eax |
Line 327... | Line 327... | ||
327 | ; ecx=length |
327 | ; ecx=length |
328 | ; esi->buffer in debugger |
328 | ; esi->buffer in debugger |
329 | ; edx=address in debuggee |
329 | ; edx=address in debuggee |
330 | ; out: [esp+36]=sizeof(write) |
330 | ; out: [esp+36]=sizeof(write) |
331 | ; destroys all |
331 | ; destroys all |
332 | add esi, std_application_base_address |
332 | ; add esi, std_application_base_address |
333 | push ebx |
333 | push ebx |
334 | mov ebx, esi |
334 | mov ebx, esi |
335 | call check_region |
335 | call check_region |
336 | pop ebx |
336 | pop ebx |
337 | dec eax |
337 | dec eax |