Не уверен, что именно вы видели, но публичные имена методов не должны быть скрыты - в силу того, что они общедоступны, они должны вызываться вызывающими сторонами вне сборки. Частные (и, возможно, внутренние) методы могут скрывать свои имена, как и детали реализации в методах, но все же могут быть читаемы с помощью Reflector, даже если имена нечетные. Различные средства запутывания могут предоставлять дополнительные функции, которые помогают предотвратить использование таких инструментов, как Reflector, но могут различаться по своей способности генерировать проверяемый IL или другими способами, которые я не особенно понимаю.
Запутывание не является средством шифрования - оно только замедляет работу считывателя.