void Module::Init( Process& process, const char* dllname ) { if (data_ != nullptr) { free( data_ ); } data_ = nullptr; process.GetRemoteModule( dllname, &module_entry_ ); data_ = malloc( module_entry_.modBaseSize ); if (data_ == nullptr) { BOOST_THROW_EXCEPTION(std::runtime_error("mallocError")); } process.ReadData(data_, module_entry_.modBaseAddr, module_entry_.modBaseSize); }