diff --git a/libIRDB/include/core/scoop.hpp b/libIRDB/include/core/scoop.hpp
index 96194283d187bfbb398a04fe7e3eb51892328ba7..d6f6b0187a4e8e979a1cfa6a6d09f2bc09d55855 100644
--- a/libIRDB/include/core/scoop.hpp
+++ b/libIRDB/include/core/scoop.hpp
@@ -47,6 +47,7 @@ class DataScoop_t : public BaseObj_t
 
 		std::string GetName() const { return name; }
 		std::string GetContents() const { return contents; }
+		std::string &GetContents() { return contents; }
 		libIRDB::AddressID_t* GetStart() const { return start; }
 		libIRDB::AddressID_t* GetEnd() const { return end; }
 		libIRDB::Type_t* GetType() const { return type; }
@@ -54,6 +55,7 @@ class DataScoop_t : public BaseObj_t
 		bool isReadable() const  { return (permissions & permissions_r) == permissions_r; }
 		bool isWriteable() const { return (permissions & permissions_w) == permissions_w; };
 		bool isExecuteable() const { return (permissions & permissions_x) == permissions_x; };
+		int  getRawPerms() const { return permissions; }
 
 		void SetName(const std::string &n) { name=n; }
 		void SetContents(const std::string &n) { contents=n; }
diff --git a/libIRDB/test/fill_in_cfg.cpp b/libIRDB/test/fill_in_cfg.cpp
index 1d5774b2898b38b811c3b8cf9b28366403a75a3b..897d43de09a20a9a198879227f0ad70e174cb9a8 100644
--- a/libIRDB/test/fill_in_cfg.cpp
+++ b/libIRDB/test/fill_in_cfg.cpp
@@ -445,22 +445,26 @@ void fill_in_scoops(FileIR_t *firp)
 			fout<<"Found that section "<<elfiop->sections[secndx]->get_name()<<" is both writeable and executable.  Program is inherently unsafe!"<<endl;
 		}
 
+#if 0
 		/* executable sections handled by other bits. */
         	if(elfiop->sections[secndx]->isExecutable()) 
 		{
 			cout<<"Skipping scoop for section (executable) "<<elfiop->sections[secndx]->get_name()<<endl;
                 	continue;
 		}
+		// we decided to skip BSS for a bad reason.  trying again.
         	if(elfiop->sections[secndx]->isBSS())
 		{
 			cout<<"Skipping bss section: "<<elfiop->sections[secndx]->get_name()<<endl;
                 	continue;
 		}
+		// we decided to skip tls for a bad reason.  trying again.
         	if(elfiop->sections[secndx]->isThreadLocal())
 		{
 			cout<<"Skipping tls section (executable) "<<elfiop->sections[secndx]->get_name()<<endl;
                 	continue;
 		}
+#endif
 
 		/* name */
 		string name=elfiop->sections[secndx]->get_name();
diff --git a/tools/hook_dynamic_call/SConscript b/tools/hook_dynamic_call/SConscript
index 037ca70e0adc6d4f61cdaed72e25688ac5d0c8b4..488072d41a527c069c6d2e1a6bb677da3fb06c77 100644
--- a/tools/hook_dynamic_call/SConscript
+++ b/tools/hook_dynamic_call/SConscript
@@ -24,5 +24,5 @@ myenv=myenv.Clone(CPPPATH=Split(cpppath))
 myenv.Append(CPPFLAGS=CPPFLAGS)
 
 pgm=myenv.Program(target="hook_dynamic_calls.exe", source=Split("hook_dynamic_calls.cpp hook_dynamic_calls_driver.cpp"), LIBPATH=LIBPATH, LIBS=LIBS)
-install=myenv.Install("$SECURITY_TRANSFORMS_HOME/bin/", pgm)
+install=myenv.Install("$SECURITY_TRANSFORMS_HOME/plugins_install/", pgm)
 Default(install)