Add Skeleton for REPL to hook into console
This commit is contained in:
		
							parent
							
								
									5ec1635af2
								
							
						
					
					
						commit
						1ac0a9955b
					
				
					 1 changed files with 54 additions and 0 deletions
				
			
		
							
								
								
									
										54
									
								
								ScrapHacks/ScrapHack/REPL.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								ScrapHacks/ScrapHack/REPL.h
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,54 @@ | |||
| #include <sstream> | ||||
| #include <regex> | ||||
| #include <Windows.h> | ||||
| #include "Util.h" | ||||
| 
 | ||||
| DWORD get_protection(void *addr) | ||||
| { | ||||
|     MEMORY_BASIC_INFORMATION mbi; | ||||
|     VirtualQuery(addr, &mbi, sizeof(mbi)); | ||||
|     return mbi.Protect; | ||||
| } | ||||
| 
 | ||||
| void handle_command(const char *_cmd) | ||||
| { | ||||
|     cout<<"CMD: '"<<_cmd<<"'"<<endl; | ||||
|     vector<string> cmd = split(string(_cmd), ' '); | ||||
|     cout<<"PARTS: "; | ||||
|     for (string c:cmd) { | ||||
|         cout<<"'"<<c<<"' "; | ||||
|     } | ||||
|     cout<<endl; | ||||
|     if (cmd.size() == 0) | ||||
|     { | ||||
|         cout<<"EMPTY!"<<endl; | ||||
|         return; | ||||
|     } | ||||
|     scrap_log(0x00ff00,_cmd); | ||||
|     scrap_log(0x00ff00,"\n"); | ||||
|     if (cmd[0] == "r") | ||||
|     { | ||||
|         if (cmd.size()!=2) { | ||||
|             scrap_log(0xff0000, "Usage: $r <addr> [size]\n"); | ||||
|             return; | ||||
|         } | ||||
|         scrap_log(0xff0000, "READ!\n"); | ||||
|         cout<<"READ!"<<endl; | ||||
|     } | ||||
|     else if (cmd[0] == "w") | ||||
|     { | ||||
|         if (cmd.size()!=2) { | ||||
|             scrap_log(0xff0000, "Usage: $w <addr> <hex_data>\n"); | ||||
|             return; | ||||
|         } | ||||
|         scrap_log(0xff0000, "WRITE!\n"); | ||||
|         cout<<"WRITE!"<<endl; | ||||
|     } | ||||
|     else | ||||
|     { | ||||
|         scrap_log(0xff0000, "Unknown command!\n"); | ||||
|     } | ||||
| 
 | ||||
|     scrap_log(0x00ff00, "HAXX\n"); | ||||
|     return; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue