<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Discover iOS</title>
    <link>https://olszanowski.blog/</link>
    <description>Recent content on Discover iOS</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Fri, 08 May 2020 17:15:58 +0200</lastBuildDate><atom:link href="https://olszanowski.blog/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Mach-O reader - parsing Mach-O headers</title>
      <link>https://olszanowski.blog/posts/macho-reader-parsing-headers/</link>
      <pubDate>Fri, 08 May 2020 17:15:58 +0200</pubDate>
      
      <guid>https://olszanowski.blog/posts/macho-reader-parsing-headers/</guid>
      <description>Introduction There are plenty of articles that explain how does Mach-O file format looks like, but not so many of them explain how bytes can be transformed into valuable information that can tell us more about the binary itself.
Apple provides a command-line tool for reading Mach-O files which is called otool. You can, for example, read a Mach-O header of a binary by invoking the following command:
$ otool -h &amp;lt;path_to_binary&amp;gt; Mach header magic cputype cpusubtype caps filetype ncmds sizeofcmds flags 0xfeedfacf 16777228 0 0x00 2 82 9032 0x00218085 You can also read what shared libraries are linked to a specified binary by invoking the following:</description>
    </item>
    
    <item>
      <title>Understanding iOS application entry point</title>
      <link>https://olszanowski.blog/posts/understanding-ios-app-entrypoint/</link>
      <pubDate>Sun, 26 Apr 2020 10:00:01 +0200</pubDate>
      
      <guid>https://olszanowski.blog/posts/understanding-ios-app-entrypoint/</guid>
      <description>Application entry point What is an entry point? According to the wikipedia an entry point is where the first instructions of a program are executed, and where the program has access to command-line arguments. In many languages an entry point is a function named main. For instance, in C/C++ the entry point is a function main, in Java it is defined as a static function main, in C# it is a static function Main.</description>
    </item>
    
    <item>
      <title>Reverse Engineering Salesforce Chat SDK</title>
      <link>https://olszanowski.blog/posts/reverse-engineering-salesforce-chat-sdk/</link>
      <pubDate>Fri, 10 Apr 2020 12:37:22 +0200</pubDate>
      
      <guid>https://olszanowski.blog/posts/reverse-engineering-salesforce-chat-sdk/</guid>
      <description>Introduction Before start looking into the Salesforce Chat SDK binary, I want to provide a little context for why I decided to reverse engineer the framework.
I was integrating the chat in one of the projects I&amp;rsquo;ve been involved into. After adding Salesforce SDK to the Xcode project, I&amp;rsquo;ve tried to open the chat inside the application I was developing. Surprisingly, the chat from the SDK was not working properly - namely, it didn&amp;rsquo;t show localized strings, but rather their corresponding keys.</description>
    </item>
    
  </channel>
</rss>
