diff --git a/SMPFunction.cpp b/SMPFunction.cpp
index 70d5cb63866ed97070530581a5a276d3b2dcf406..1141702fec2a3a58ba94f25c193bfcebadfd151c 100644
--- a/SMPFunction.cpp
+++ b/SMPFunction.cpp
@@ -986,9 +986,6 @@ void SMPFunction::SemiNaiveLocalVarID(void) {
 //  calling convention is used, e.g. gcc/linux allocates local var space + out args space
 //  in a single allocation and then writes outarg values directly to ESP+0, ESP+4, etc.
 void SMPFunction::FindOutgoingArgsSize(void) {
-		this->OutgoingArgsSize = 0;
-		return;
-
 	// Compute the lowest value reached by the stack pointer.
 	list<SMPInstr>::iterator CurrInst;
 	this->MinStackDelta = 20000; // Final value should be negative
diff --git a/SMPStaticAnalyzer.cpp b/SMPStaticAnalyzer.cpp
index 8b2eb881d65e2614a0e6b61d5caf4dd436df0d10..4c1a227b6e53c08a3afce21121d56c66f6e6cc89 100644
--- a/SMPStaticAnalyzer.cpp
+++ b/SMPStaticAnalyzer.cpp
@@ -234,15 +234,15 @@ void IDAP_run(int arg) {
 	SymsFileName += FileSuffix;
 
 	SMPProgram *CurrProg = new SMPProgram();
-//	CurrProg->AnalyzeData(); // Analyze static data in the executable
+	CurrProg->AnalyzeData(); // Analyze static data in the executable
 
 	// read the Profiler generated information into a new prof_info class 
-//	ProfilerInformation *prof_info = new ProfilerInformation(SymsFileName.c_str(), CurrProg);
+	ProfilerInformation *prof_info = new ProfilerInformation(SymsFileName.c_str(), CurrProg);
 
 	SymsFile = qfopen(SymsFileName.c_str(), "w");
 	if (NULL == SymsFile) {
 		error("FATAL ERROR: Cannot open output file %s\n", SymsFileName.c_str());
-//		delete prof_info;
+		delete prof_info;
 		return;
 	}
 
@@ -261,10 +261,10 @@ void IDAP_run(int arg) {
 	}
 
 #if SMP_DEBUG_DATA_ONLY
-//	FindDataInCode();
-//	FixCodeIdentification();
+	FindDataInCode();
+	FixCodeIdentification();
 	qfclose(SymsFile);
-//	delete prof_info;
+	delete prof_info;
 	return;
 #endif
 
@@ -272,15 +272,14 @@ void IDAP_run(int arg) {
 	//  between code and data can be improved, and if all branches
 	//  and calls have proper code targets and code cross references.
 #if SMP_FIXUP_IDB
-//	FixupIDB();
+	FixupIDB();
 #endif
 
 	msg("Calling InferDataGranularity\n");
-//	msg("ptr to MemoryAccessInfo: %x\n", prof_info->GetMemoryAccessInfo());
-//	prof_info->GetMemoryAccessInfo()->InferDataGranularity();
+	msg("ptr to MemoryAccessInfo: %x\n", prof_info->GetMemoryAccessInfo());
+	prof_info->GetMemoryAccessInfo()->InferDataGranularity();
 	msg("Returned from InferDataGranularity\n");
-//	CurrProg->Analyze(prof_info);
-	CurrProg->Analyze(NULL);
+	CurrProg->Analyze(prof_info);
 	CurrProg->EmitAnnotations(SymsFile);
 
 #if SMP_FIND_ORPHANS
@@ -298,7 +297,7 @@ void IDAP_run(int arg) {
 
 	qfclose(SymsFile);
 	delete CurrProg;
-//	delete prof_info;
+	delete prof_info;
 	return;
 } // end IDAP_run()