I think we could do with getting a bit more focused here: simply looking at the amount of recognisable text in a binary is... well frankly pretty pathetic, particularly since tools like binwalk ** are smart enough to look for binary blocks which are "more random than expected" and treat them as candidate encryption keys.
Here's a program I wrote over the Summer, which embeds LazMapViewer hence various SSL etc. stuff, which probably makes it fairly typical "I'd rather that people kept their fingers out of this" fodder.
$ ls -lh local1090-x86_64-linux-gtk2
-rwxr-xr-x 1 markMLl markMLl 27M Oct 12 09:15 local1090-x86_64-linux-gtk2
$ strip local1090-x86_64-linux-gtk2
$ ls -lh local1090-x86_64-linux-gtk2
-rwxr-xr-x 1 markMLl markMLl 7.8M Oct 22 19:54 local1090-x86_64-linux-gtk2
So, roughly three quarters of the binary is symbolic information which, if left in there, is definitely "of value to the enemy" since the format is entirely understood.
What does that leave us? Well the first thing that stands out is the named entry points of all system libraries being used:
$ strings -n 8 local1090-x86_64-linux-gtk2 | less
/lib64/ld-linux-x86-64.so.2
pango_layout_get_extents
g_type_interface_peek
g_value_unset
g_list_find
gdk_pixbuf_get_height
g_slist_free
gdk_pixbuf_new_from_data
...
That, trivially and (on non-Windows OSes) unavoidably, will tell a miscreant whether any special encryption etc. libraries are being used.
After that it gets interesting: there's a great deal of text which looks like assertions in various libraries (which an attacker could match with a bit of Googling), and what looks like more unstripped symbols (which could possibly be RTTI) *** :
...
RaiseOwnerCircle AValue=
TAnchorSide.SetControl AValue=FOwner
TAnchorSide.CheckSidePosition Circle,
TAnchorSide.CheckSidePosition invalid anchor control,
TAnchorSide.CheckSidePosition invalid Side
LCLSTRCONSTS
lclstrconsts.rsmbyes
lclstrconsts.rsmbno
lclstrconsts.rsmbok
lclstrconsts.rsmbcancel
lclstrconsts.rsmbabort
...
I definitely don't want to "do a Joanna" and start screaming that we're all doomed **** . But equally definitely, there's stuff in that binary which would definitely be useful /if/ an attacker thought that it was hiding something interesting.
** I don't claim to be fully up to date, but please note that I'm actually able to "name names" rather than making aggrieved noises about potential script kiddies with hypothetical magic toolkits.
*** Note that the FPC used to build Lazarus was low on optimisation and high on debugging checks.
**** Even if we're using Pascal.
MarkMLl