Extracting Information From Subroutines Using Static Analysis Semantics