title: When analyzing a binary compiled from Swift, is it possible to figure out the Swift method name for a function that has no symbol?
body: <p><em>I'm new to disassembling and reverse engineering binaries, so forgive me if this question is nonsensical or impossible.</em></p>
  
  <p>In the past when I've tried reverse engineering macOS binaries, analyzing the ones written in Objective-C yielded a lot of useful information, because generally all of the Objective-C classes and their method names were easily retrievable, making it a lot easier to figure out what any particular method did.</p>
  
  <p>I'm trying to analyze a binary written in Swift (technically a combination of Swift and Objective-C), and most of the functions now have no symbol. There are some Objective-C methods that I can retrieve as usual, and a few functions that have a Swift-style mangled name, but nearly all of the rest have no symbol. I know a lot of those have to be Swift methods.</p>
  
  <p>Is there anyway to figure out what this binary's Swift classes are and their associated methods like I can with Objective-C?</p>
  
  <p>Using a tool like Hopper Disassembler reveals the mangled names of some Swift classes (usually a symbol like <code>_TtC4Something25SomethingElse</code>) and I can get a list of its instance variable names and their offsets, but no method names.</p>
  
  <p><em>Note: the binary in question is an x64 macOS binary, not an iOS binary.</em></p>