#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */
typedef int /*<<< orphan*/ buf;

/* Variables and functions */
int /*<<< orphan*/ snprintf(char *, int, char *, int);
const char *appid_app_to_name(int appid) {
  static char buf[256];
  switch (appid) {
  case 1:
    return "AFS";
  case 12:
    return "AIM";
  case 13:
    return "Ares";
  case 14:
    return "BGP";
  case 15:
    return "BitTorrent";
  case 16:
    return "Citrix";
  case 19:
    return "CORBA";
  case 20:
    return "CUPS";
  case 21:
    return "CVS";
  case 22:
    return "DAAP";
  case 23:
    return "DCERPC";
  case 24:
    return "DHCP";
  case 25:
    return "DNS";
  case 26:
    return "Edonkey";
  case 28:
    return "FastTrack";
  case 29:
    return "FTP";
  case 30:
    return "GaduGadu";
  case 31:
    return "Git";
  case 32:
    return "Gnutella";
  case 33:
    return "Groupwise";
  case 34:
    return "H323";
  case 35:
    return "HTTP";
  case 36:
    return "IAX";
  case 38:
    return "ICY";
  case 40:
    return "IMAP";
  case 41:
    return "IPP";
  case 43:
    return "IRC";
  case 44:
    return "ISAKMP";
  case 45:
    return "Kerberos";
  case 46:
    return "Kerberos";
  case 47:
    return "LDAP";
  case 49:
    return "LPD";
  case 50:
    return "MAPI";
  case 52:
    return "Megaco";
  case 53:
    return "MGCP";
  case 55:
    return "MSN";
  case 56:
    return "MUTE";
  case 57:
    return "MySQL";
  case 58:
    return "NCP";
  case 59:
    return "NetBIOS_NS";
  case 60:
    return "NetFlow";
  case 61:
    return "NFS";
  case 62:
    return "NMDC";
  case 63:
    return "NNTP";
  case 64:
    return "NTP";
  case 65:
    return "OpenFT";
  case 66:
    return "OpenNAP";
  case 67:
    return "Oracle";
  case 75:
    return "POP";
  case 76:
    return "PostgreSQL";
  case 78:
    return "QQ";
  case 79:
    return "Quake1";
  case 80:
    return "Quake3";
  case 81:
    return "RADIUS";
  case 82:
    return "RDP";
  case 83:
    return "RDT";
  case 85:
    return "RIP";
  case 86:
    return "Rlogin";
  case 87:
    return "RPC";
  case 88:
    return "Rsync";
  case 89:
    return "RTP";
  case 90:
    return "RTSP";
  case 91:
    return "Sametime";
  case 92:
    return "SCCP";
  case 93:
    return "SIP";
  case 95:
    return "SLP";
  case 96:
    return "SMB";
  case 97:
    return "SMTP";
  case 98:
    return "SNMP";
  case 99:
    return "SOAP";
  case 100:
    return "Soulseek";
  case 101:
    return "SSDP";
  case 102:
    return "SSH";
  case 103:
    return "SSL";
  case 104:
    return "STUN";
  case 105:
    return "SVN";
  case 106:
    return "Syslog";
  case 107:
    return "TACACS";
  case 108:
    return "TDS";
  case 109:
    return "TeamSpeak";
  case 110:
    return "Telnet";
  case 111:
    return "TFTP";
  case 112:
    return "Ventrilo";
  case 113:
    return "VNC";
  case 114:
    return "X11";
  case 117:
    return "XMPP";
  case 118:
    return "Yahoo";
  case 119:
    return "Zephyr";
  case 120:
    return "Gopher";
  default:
    snprintf(buf, sizeof(buf), "UNKNOWN ID %d", appid);
    return buf;
  }
  return "UNKNOWN";
}


x86 assembly (clang, -O0):
<appid_app_to_name>:
push   %rbp
mov    %rsp,%rbp
sub    $0x20,%rsp
mov    %edi,-0xc(%rbp)
mov    -0xc(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,%ecx
mov    %rcx,-0x18(%rbp)
sub    $0x77,%eax
ja     16d4 <appid_app_to_name+0x5c4>
mov    -0x18(%rbp),%rax
lea    0xec5(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
lea    0x1095(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1089(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x107d(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1072(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1066(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1061(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1058(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x104e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1043(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1037(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x102c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1023(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1018(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x100c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1004(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0x1166(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xfee(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xfe7(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xfdb(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xfd4(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xfce(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xfc3(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xfb8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xfac(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xfa0(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf95(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf89(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf7d(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf74(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf64(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf5d(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf52(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf46(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf3b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf32(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf27(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf1b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf10(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xf06(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xefa(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xef5(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xeed(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xee1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xed6(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xec7(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xebb(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xeb2(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xeaa(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xea1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe95(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe90(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe83(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe7a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe71(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe68(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe5c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe50(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe44(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd2f(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe2b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe21(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe15(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe0a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xe03(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xdf8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xdec(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xde0(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xdd4(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xdc9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xdbe(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xdb3(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xdac(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xda1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd95(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd89(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd7e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd72(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd69(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd60(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd54(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd4e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd45(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd3a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd33(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd27(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd1b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd10(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xd06(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
lea    0xcfd(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    16fa <appid_app_to_name+0x5ea>
mov    -0xc(%rbp),%ecx
lea    0x2962(%rip),%rdi
mov    $0x100,%esi
lea    0xce5(%rip),%rdx
call   1030 <snprintf@plt>
lea    0x294a(%rip),%rax
mov    %rax,-0x8(%rbp)
mov    -0x8(%rbp),%rax
add    $0x20,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<appid_app_to_name>:
push   %rbx
mov    %edi,%ecx
lea    -0x1(%rcx),%eax
cmp    $0x77,%eax
ja     113e <appid_app_to_name+0x2e>
lea    0x10be(%rip),%rbx
lea    0xed7(%rip),%rdx
movslq (%rdx,%rax,4),%rax
add    %rdx,%rax
jmp    *%rax
lea    0x1146(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x2efb(%rip),%rbx
lea    0x1283(%rip),%rdx
mov    %rbx,%rdi
mov    $0x100,%esi
call   1030 <snprintf@plt>
jmp    1537 <appid_app_to_name+0x427>
lea    0x107f(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1077(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1070(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1068(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1067(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1062(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x105c(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1055(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x104d(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1046(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1041(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x103a(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1032(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x102e(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1194(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1020(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x101d(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1015(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1012(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1010(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1009(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0x1002(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xffa(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xff2(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfeb(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfe3(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfdb(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfdf(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfd8(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfd0(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfc9(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfc4(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfbd(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfb5(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfae(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfa8(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xfa0(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf9f(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf9b(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf93(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf8c(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf81(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf79(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf74(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf70(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf6b(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf63(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf62(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf59(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf54(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf4f(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf4a(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf42(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf3a(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf32(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xe21(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf21(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf1b(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf13(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf0c(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf09(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xf02(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xefa(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xef2(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xeea(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xee3(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xedc(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xed5(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xed2(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xecb(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xec3(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xebb(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xeb7(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xeb2(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xeb0(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xeae(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xea9(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xeaa(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xea8(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xea4(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xea4(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xe9f(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xe9a(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xe96(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xe93(%rip),%rbx
jmp    1537 <appid_app_to_name+0x427>
lea    0xe91(%rip),%rbx
mov    %rbx,%rax
pop    %rbx
ret

LLVM IR (-O0):
@appid_app_to_name.buf = internal global [256 x i8] zeroinitializer
@.str = [4 x i8] c"AFS\00"
@.str.1 = [4 x i8] c"AIM\00"
@.str.2 = [5 x i8] c"Ares\00"
@.str.3 = [4 x i8] c"BGP\00"
@.str.4 = [11 x i8] c"BitTorrent\00"
@.str.5 = [7 x i8] c"Citrix\00"
@.str.6 = [6 x i8] c"CORBA\00"
@.str.7 = [5 x i8] c"CUPS\00"
@.str.8 = [4 x i8] c"CVS\00"
@.str.9 = [5 x i8] c"DAAP\00"
@.str.10 = [7 x i8] c"DCERPC\00"
@.str.11 = [5 x i8] c"DHCP\00"
@.str.12 = [4 x i8] c"DNS\00"
@.str.13 = [8 x i8] c"Edonkey\00"
@.str.14 = [10 x i8] c"FastTrack\00"
@.str.15 = [4 x i8] c"FTP\00"
@.str.16 = [9 x i8] c"GaduGadu\00"
@.str.17 = [4 x i8] c"Git\00"
@.str.18 = [9 x i8] c"Gnutella\00"
@.str.19 = [10 x i8] c"Groupwise\00"
@.str.20 = [5 x i8] c"H323\00"
@.str.21 = [5 x i8] c"HTTP\00"
@.str.22 = [4 x i8] c"IAX\00"
@.str.23 = [4 x i8] c"ICY\00"
@.str.24 = [5 x i8] c"IMAP\00"
@.str.25 = [4 x i8] c"IPP\00"
@.str.26 = [4 x i8] c"IRC\00"
@.str.27 = [7 x i8] c"ISAKMP\00"
@.str.28 = [9 x i8] c"Kerberos\00"
@.str.29 = [5 x i8] c"LDAP\00"
@.str.30 = [4 x i8] c"LPD\00"
@.str.31 = [5 x i8] c"MAPI\00"
@.str.32 = [7 x i8] c"Megaco\00"
@.str.33 = [5 x i8] c"MGCP\00"
@.str.34 = [4 x i8] c"MSN\00"
@.str.35 = [5 x i8] c"MUTE\00"
@.str.36 = [6 x i8] c"MySQL\00"
@.str.37 = [4 x i8] c"NCP\00"
@.str.38 = [11 x i8] c"NetBIOS_NS\00"
@.str.39 = [8 x i8] c"NetFlow\00"
@.str.40 = [4 x i8] c"NFS\00"
@.str.41 = [5 x i8] c"NMDC\00"
@.str.42 = [5 x i8] c"NNTP\00"
@.str.43 = [4 x i8] c"NTP\00"
@.str.44 = [7 x i8] c"OpenFT\00"
@.str.45 = [8 x i8] c"OpenNAP\00"
@.str.46 = [7 x i8] c"Oracle\00"
@.str.47 = [4 x i8] c"POP\00"
@.str.48 = [11 x i8] c"PostgreSQL\00"
@.str.49 = [3 x i8] c"QQ\00"
@.str.50 = [7 x i8] c"Quake1\00"
@.str.51 = [7 x i8] c"Quake3\00"
@.str.52 = [7 x i8] c"RADIUS\00"
@.str.53 = [4 x i8] c"RDP\00"
@.str.54 = [4 x i8] c"RDT\00"
@.str.55 = [4 x i8] c"RIP\00"
@.str.56 = [7 x i8] c"Rlogin\00"
@.str.57 = [4 x i8] c"RPC\00"
@.str.58 = [6 x i8] c"Rsync\00"
@.str.59 = [4 x i8] c"RTP\00"
@.str.60 = [5 x i8] c"RTSP\00"
@.str.61 = [9 x i8] c"Sametime\00"
@.str.62 = [5 x i8] c"SCCP\00"
@.str.63 = [4 x i8] c"SIP\00"
@.str.64 = [4 x i8] c"SLP\00"
@.str.65 = [4 x i8] c"SMB\00"
@.str.66 = [5 x i8] c"SMTP\00"
@.str.67 = [5 x i8] c"SNMP\00"
@.str.68 = [5 x i8] c"SOAP\00"
@.str.69 = [9 x i8] c"Soulseek\00"
@.str.70 = [5 x i8] c"SSDP\00"
@.str.71 = [4 x i8] c"SSH\00"
@.str.72 = [4 x i8] c"SSL\00"
@.str.73 = [5 x i8] c"STUN\00"
@.str.74 = [4 x i8] c"SVN\00"
@.str.75 = [7 x i8] c"Syslog\00"
@.str.76 = [7 x i8] c"TACACS\00"
@.str.77 = [4 x i8] c"TDS\00"
@.str.78 = [10 x i8] c"TeamSpeak\00"
@.str.79 = [7 x i8] c"Telnet\00"
@.str.80 = [5 x i8] c"TFTP\00"
@.str.81 = [9 x i8] c"Ventrilo\00"
@.str.82 = [4 x i8] c"VNC\00"
@.str.83 = [4 x i8] c"X11\00"
@.str.84 = [5 x i8] c"XMPP\00"
@.str.85 = [6 x i8] c"Yahoo\00"
@.str.86 = [7 x i8] c"Zephyr\00"
@.str.87 = [7 x i8] c"Gopher\00"
@.str.88 = [14 x i8] c"UNKNOWN ID %d\00"
define i8* @appid_app_to_name(i32 %0) {
%2 = alloca i8*
%3 = alloca i32
store i32 %0, i32* %3
%4 = load i32, i32* %3
switch i32 %4, label %94 [
i32 1, label %5
i32 12, label %6
i32 13, label %7
i32 14, label %8
i32 15, label %9
i32 16, label %10
i32 19, label %11
i32 20, label %12
i32 21, label %13
i32 22, label %14
i32 23, label %15
i32 24, label %16
i32 25, label %17
i32 26, label %18
i32 28, label %19
i32 29, label %20
i32 30, label %21
i32 31, label %22
i32 32, label %23
i32 33, label %24
i32 34, label %25
i32 35, label %26
i32 36, label %27
i32 38, label %28
i32 40, label %29
i32 41, label %30
i32 43, label %31
i32 44, label %32
i32 45, label %33
i32 46, label %34
i32 47, label %35
i32 49, label %36
i32 50, label %37
i32 52, label %38
i32 53, label %39
i32 55, label %40
i32 56, label %41
i32 57, label %42
i32 58, label %43
i32 59, label %44
i32 60, label %45
i32 61, label %46
i32 62, label %47
i32 63, label %48
i32 64, label %49
i32 65, label %50
i32 66, label %51
i32 67, label %52
i32 75, label %53
i32 76, label %54
i32 78, label %55
i32 79, label %56
i32 80, label %57
i32 81, label %58
i32 82, label %59
i32 83, label %60
i32 85, label %61
i32 86, label %62
i32 87, label %63
i32 88, label %64
i32 89, label %65
i32 90, label %66
i32 91, label %67
i32 92, label %68
i32 93, label %69
i32 95, label %70
i32 96, label %71
i32 97, label %72
i32 98, label %73
i32 99, label %74
i32 100, label %75
i32 101, label %76
i32 102, label %77
i32 103, label %78
i32 104, label %79
i32 105, label %80
i32 106, label %81
i32 107, label %82
i32 108, label %83
i32 109, label %84
i32 110, label %85
i32 111, label %86
i32 112, label %87
i32 113, label %88
i32 114, label %89
i32 117, label %90
i32 118, label %91
i32 119, label %92
i32 120, label %93
]
5: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i64 0, i64 0), i8** %2
br label %97
6: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.1, i64 0, i64 0), i8** %2
br label %97
7: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.2, i64 0, i64 0), i8** %2
br label %97
8: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), i8** %2
br label %97
9: ; preds = %1
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.4, i64 0, i64 0), i8** %2
br label %97
10: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.5, i64 0, i64 0), i8** %2
br label %97
11: ; preds = %1
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), i8** %2
br label %97
12: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.7, i64 0, i64 0), i8** %2
br label %97
13: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %97
14: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.9, i64 0, i64 0), i8** %2
br label %97
15: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.10, i64 0, i64 0), i8** %2
br label %97
16: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.11, i64 0, i64 0), i8** %2
br label %97
17: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.12, i64 0, i64 0), i8** %2
br label %97
18: ; preds = %1
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.13, i64 0, i64 0), i8** %2
br label %97
19: ; preds = %1
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.14, i64 0, i64 0), i8** %2
br label %97
20: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.15, i64 0, i64 0), i8** %2
br label %97
21: ; preds = %1
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.16, i64 0, i64 0), i8** %2
br label %97
22: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.17, i64 0, i64 0), i8** %2
br label %97
23: ; preds = %1
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.18, i64 0, i64 0), i8** %2
br label %97
24: ; preds = %1
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.19, i64 0, i64 0), i8** %2
br label %97
25: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.20, i64 0, i64 0), i8** %2
br label %97
26: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), i8** %2
br label %97
27: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.22, i64 0, i64 0), i8** %2
br label %97
28: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.23, i64 0, i64 0), i8** %2
br label %97
29: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.24, i64 0, i64 0), i8** %2
br label %97
30: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.25, i64 0, i64 0), i8** %2
br label %97
31: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.26, i64 0, i64 0), i8** %2
br label %97
32: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.27, i64 0, i64 0), i8** %2
br label %97
33: ; preds = %1
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.28, i64 0, i64 0), i8** %2
br label %97
34: ; preds = %1
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.28, i64 0, i64 0), i8** %2
br label %97
35: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.29, i64 0, i64 0), i8** %2
br label %97
36: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.30, i64 0, i64 0), i8** %2
br label %97
37: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.31, i64 0, i64 0), i8** %2
br label %97
38: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.32, i64 0, i64 0), i8** %2
br label %97
39: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.33, i64 0, i64 0), i8** %2
br label %97
40: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.34, i64 0, i64 0), i8** %2
br label %97
41: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.35, i64 0, i64 0), i8** %2
br label %97
42: ; preds = %1
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.36, i64 0, i64 0), i8** %2
br label %97
43: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.37, i64 0, i64 0), i8** %2
br label %97
44: ; preds = %1
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.38, i64 0, i64 0), i8** %2
br label %97
45: ; preds = %1
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.39, i64 0, i64 0), i8** %2
br label %97
46: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.40, i64 0, i64 0), i8** %2
br label %97
47: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.41, i64 0, i64 0), i8** %2
br label %97
48: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.42, i64 0, i64 0), i8** %2
br label %97
49: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.43, i64 0, i64 0), i8** %2
br label %97
50: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.44, i64 0, i64 0), i8** %2
br label %97
51: ; preds = %1
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.45, i64 0, i64 0), i8** %2
br label %97
52: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.46, i64 0, i64 0), i8** %2
br label %97
53: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.47, i64 0, i64 0), i8** %2
br label %97
54: ; preds = %1
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.48, i64 0, i64 0), i8** %2
br label %97
55: ; preds = %1
store i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.49, i64 0, i64 0), i8** %2
br label %97
56: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.50, i64 0, i64 0), i8** %2
br label %97
57: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.51, i64 0, i64 0), i8** %2
br label %97
58: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.52, i64 0, i64 0), i8** %2
br label %97
59: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.53, i64 0, i64 0), i8** %2
br label %97
60: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.54, i64 0, i64 0), i8** %2
br label %97
61: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.55, i64 0, i64 0), i8** %2
br label %97
62: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.56, i64 0, i64 0), i8** %2
br label %97
63: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.57, i64 0, i64 0), i8** %2
br label %97
64: ; preds = %1
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.58, i64 0, i64 0), i8** %2
br label %97
65: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.59, i64 0, i64 0), i8** %2
br label %97
66: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.60, i64 0, i64 0), i8** %2
br label %97
67: ; preds = %1
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.61, i64 0, i64 0), i8** %2
br label %97
68: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.62, i64 0, i64 0), i8** %2
br label %97
69: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.63, i64 0, i64 0), i8** %2
br label %97
70: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.64, i64 0, i64 0), i8** %2
br label %97
71: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.65, i64 0, i64 0), i8** %2
br label %97
72: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.66, i64 0, i64 0), i8** %2
br label %97
73: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.67, i64 0, i64 0), i8** %2
br label %97
74: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.68, i64 0, i64 0), i8** %2
br label %97
75: ; preds = %1
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.69, i64 0, i64 0), i8** %2
br label %97
76: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.70, i64 0, i64 0), i8** %2
br label %97
77: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.71, i64 0, i64 0), i8** %2
br label %97
78: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.72, i64 0, i64 0), i8** %2
br label %97
79: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.73, i64 0, i64 0), i8** %2
br label %97
80: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.74, i64 0, i64 0), i8** %2
br label %97
81: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.75, i64 0, i64 0), i8** %2
br label %97
82: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.76, i64 0, i64 0), i8** %2
br label %97
83: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.77, i64 0, i64 0), i8** %2
br label %97
84: ; preds = %1
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.78, i64 0, i64 0), i8** %2
br label %97
85: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.79, i64 0, i64 0), i8** %2
br label %97
86: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.80, i64 0, i64 0), i8** %2
br label %97
87: ; preds = %1
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.81, i64 0, i64 0), i8** %2
br label %97
88: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.82, i64 0, i64 0), i8** %2
br label %97
89: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.83, i64 0, i64 0), i8** %2
br label %97
90: ; preds = %1
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.84, i64 0, i64 0), i8** %2
br label %97
91: ; preds = %1
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.85, i64 0, i64 0), i8** %2
br label %97
92: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.86, i64 0, i64 0), i8** %2
br label %97
93: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.87, i64 0, i64 0), i8** %2
br label %97
94: ; preds = %1
%95 = load i32, i32* %3
%96 = call i32 @snprintf(i8* getelementptr inbounds ([256 x i8], [256 x i8]* @appid_app_to_name.buf, i64 0, i64 0), i32 256, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.88, i64 0, i64 0), i32 %95)
store i8* getelementptr inbounds ([256 x i8], [256 x i8]* @appid_app_to_name.buf, i64 0, i64 0), i8** %2
br label %97
97: ; preds = %94, %93, %92, %91, %90, %89, %88, %87, %86, %85, %84, %83, %82, %81, %80, %79, %78, %77, %76, %75, %74, %73, %72, %71, %70, %69, %68, %67, %66, %65, %64, %63, %62, %61, %60, %59, %58, %57, %56, %55, %54, %53, %52, %51, %50, %49, %48, %47, %46, %45, %44, %43, %42, %41, %40, %39, %38, %37, %36, %35, %34, %33, %32, %31, %30, %29, %28, %27, %26, %25, %24, %23, %22, %21, %20, %19, %18, %17, %16, %15, %14, %13, %12, %11, %10, %9, %8, %7, %6, %5
%98 = load i8*, i8** %2
ret i8* %98
}

LLVM IR (-O2):
@appid_app_to_name.buf = internal global [256 x i8] zeroinitializer
@.str = [4 x i8] c"AFS\00"
@.str.1 = [4 x i8] c"AIM\00"
@.str.2 = [5 x i8] c"Ares\00"
@.str.3 = [4 x i8] c"BGP\00"
@.str.4 = [11 x i8] c"BitTorrent\00"
@.str.5 = [7 x i8] c"Citrix\00"
@.str.6 = [6 x i8] c"CORBA\00"
@.str.7 = [5 x i8] c"CUPS\00"
@.str.8 = [4 x i8] c"CVS\00"
@.str.9 = [5 x i8] c"DAAP\00"
@.str.10 = [7 x i8] c"DCERPC\00"
@.str.11 = [5 x i8] c"DHCP\00"
@.str.12 = [4 x i8] c"DNS\00"
@.str.13 = [8 x i8] c"Edonkey\00"
@.str.14 = [10 x i8] c"FastTrack\00"
@.str.15 = [4 x i8] c"FTP\00"
@.str.16 = [9 x i8] c"GaduGadu\00"
@.str.17 = [4 x i8] c"Git\00"
@.str.18 = [9 x i8] c"Gnutella\00"
@.str.19 = [10 x i8] c"Groupwise\00"
@.str.20 = [5 x i8] c"H323\00"
@.str.21 = [5 x i8] c"HTTP\00"
@.str.22 = [4 x i8] c"IAX\00"
@.str.23 = [4 x i8] c"ICY\00"
@.str.24 = [5 x i8] c"IMAP\00"
@.str.25 = [4 x i8] c"IPP\00"
@.str.26 = [4 x i8] c"IRC\00"
@.str.27 = [7 x i8] c"ISAKMP\00"
@.str.28 = [9 x i8] c"Kerberos\00"
@.str.29 = [5 x i8] c"LDAP\00"
@.str.30 = [4 x i8] c"LPD\00"
@.str.31 = [5 x i8] c"MAPI\00"
@.str.32 = [7 x i8] c"Megaco\00"
@.str.33 = [5 x i8] c"MGCP\00"
@.str.34 = [4 x i8] c"MSN\00"
@.str.35 = [5 x i8] c"MUTE\00"
@.str.36 = [6 x i8] c"MySQL\00"
@.str.37 = [4 x i8] c"NCP\00"
@.str.38 = [11 x i8] c"NetBIOS_NS\00"
@.str.39 = [8 x i8] c"NetFlow\00"
@.str.40 = [4 x i8] c"NFS\00"
@.str.41 = [5 x i8] c"NMDC\00"
@.str.42 = [5 x i8] c"NNTP\00"
@.str.43 = [4 x i8] c"NTP\00"
@.str.44 = [7 x i8] c"OpenFT\00"
@.str.45 = [8 x i8] c"OpenNAP\00"
@.str.46 = [7 x i8] c"Oracle\00"
@.str.47 = [4 x i8] c"POP\00"
@.str.48 = [11 x i8] c"PostgreSQL\00"
@.str.49 = [3 x i8] c"QQ\00"
@.str.50 = [7 x i8] c"Quake1\00"
@.str.51 = [7 x i8] c"Quake3\00"
@.str.52 = [7 x i8] c"RADIUS\00"
@.str.53 = [4 x i8] c"RDP\00"
@.str.54 = [4 x i8] c"RDT\00"
@.str.55 = [4 x i8] c"RIP\00"
@.str.56 = [7 x i8] c"Rlogin\00"
@.str.57 = [4 x i8] c"RPC\00"
@.str.58 = [6 x i8] c"Rsync\00"
@.str.59 = [4 x i8] c"RTP\00"
@.str.60 = [5 x i8] c"RTSP\00"
@.str.61 = [9 x i8] c"Sametime\00"
@.str.62 = [5 x i8] c"SCCP\00"
@.str.63 = [4 x i8] c"SIP\00"
@.str.64 = [4 x i8] c"SLP\00"
@.str.65 = [4 x i8] c"SMB\00"
@.str.66 = [5 x i8] c"SMTP\00"
@.str.67 = [5 x i8] c"SNMP\00"
@.str.68 = [5 x i8] c"SOAP\00"
@.str.69 = [9 x i8] c"Soulseek\00"
@.str.70 = [5 x i8] c"SSDP\00"
@.str.71 = [4 x i8] c"SSH\00"
@.str.72 = [4 x i8] c"SSL\00"
@.str.73 = [5 x i8] c"STUN\00"
@.str.74 = [4 x i8] c"SVN\00"
@.str.75 = [7 x i8] c"Syslog\00"
@.str.76 = [7 x i8] c"TACACS\00"
@.str.77 = [4 x i8] c"TDS\00"
@.str.78 = [10 x i8] c"TeamSpeak\00"
@.str.79 = [7 x i8] c"Telnet\00"
@.str.80 = [5 x i8] c"TFTP\00"
@.str.81 = [9 x i8] c"Ventrilo\00"
@.str.82 = [4 x i8] c"VNC\00"
@.str.83 = [4 x i8] c"X11\00"
@.str.84 = [5 x i8] c"XMPP\00"
@.str.85 = [6 x i8] c"Yahoo\00"
@.str.86 = [7 x i8] c"Zephyr\00"
@.str.87 = [7 x i8] c"Gopher\00"
@.str.88 = [14 x i8] c"UNKNOWN ID %d\00"
define i8* @appid_app_to_name(i32 %0) {
switch i32 %0, label %90 [
i32 1, label %92
i32 12, label %2
i32 13, label %3
i32 14, label %4
i32 15, label %5
i32 16, label %6
i32 19, label %7
i32 20, label %8
i32 21, label %9
i32 22, label %10
i32 23, label %11
i32 24, label %12
i32 25, label %13
i32 26, label %14
i32 28, label %15
i32 29, label %16
i32 30, label %17
i32 31, label %18
i32 32, label %19
i32 33, label %20
i32 34, label %21
i32 35, label %22
i32 36, label %23
i32 38, label %24
i32 40, label %25
i32 41, label %26
i32 43, label %27
i32 44, label %28
i32 45, label %29
i32 46, label %30
i32 47, label %31
i32 49, label %32
i32 50, label %33
i32 52, label %34
i32 53, label %35
i32 55, label %36
i32 56, label %37
i32 57, label %38
i32 58, label %39
i32 59, label %40
i32 60, label %41
i32 61, label %42
i32 62, label %43
i32 63, label %44
i32 64, label %45
i32 65, label %46
i32 66, label %47
i32 67, label %48
i32 75, label %49
i32 76, label %50
i32 78, label %51
i32 79, label %52
i32 80, label %53
i32 81, label %54
i32 82, label %55
i32 83, label %56
i32 85, label %57
i32 86, label %58
i32 87, label %59
i32 88, label %60
i32 89, label %61
i32 90, label %62
i32 91, label %63
i32 92, label %64
i32 93, label %65
i32 95, label %66
i32 96, label %67
i32 97, label %68
i32 98, label %69
i32 99, label %70
i32 100, label %71
i32 101, label %72
i32 102, label %73
i32 103, label %74
i32 104, label %75
i32 105, label %76
i32 106, label %77
i32 107, label %78
i32 108, label %79
i32 109, label %80
i32 110, label %81
i32 111, label %82
i32 112, label %83
i32 113, label %84
i32 114, label %85
i32 117, label %86
i32 118, label %87
i32 119, label %88
i32 120, label %89
]
2: ; preds = %1
br label %92
3: ; preds = %1
br label %92
4: ; preds = %1
br label %92
5: ; preds = %1
br label %92
6: ; preds = %1
br label %92
7: ; preds = %1
br label %92
8: ; preds = %1
br label %92
9: ; preds = %1
br label %92
10: ; preds = %1
br label %92
11: ; preds = %1
br label %92
12: ; preds = %1
br label %92
13: ; preds = %1
br label %92
14: ; preds = %1
br label %92
15: ; preds = %1
br label %92
16: ; preds = %1
br label %92
17: ; preds = %1
br label %92
18: ; preds = %1
br label %92
19: ; preds = %1
br label %92
20: ; preds = %1
br label %92
21: ; preds = %1
br label %92
22: ; preds = %1
br label %92
23: ; preds = %1
br label %92
24: ; preds = %1
br label %92
25: ; preds = %1
br label %92
26: ; preds = %1
br label %92
27: ; preds = %1
br label %92
28: ; preds = %1
br label %92
29: ; preds = %1
br label %92
30: ; preds = %1
br label %92
31: ; preds = %1
br label %92
32: ; preds = %1
br label %92
33: ; preds = %1
br label %92
34: ; preds = %1
br label %92
35: ; preds = %1
br label %92
36: ; preds = %1
br label %92
37: ; preds = %1
br label %92
38: ; preds = %1
br label %92
39: ; preds = %1
br label %92
40: ; preds = %1
br label %92
41: ; preds = %1
br label %92
42: ; preds = %1
br label %92
43: ; preds = %1
br label %92
44: ; preds = %1
br label %92
45: ; preds = %1
br label %92
46: ; preds = %1
br label %92
47: ; preds = %1
br label %92
48: ; preds = %1
br label %92
49: ; preds = %1
br label %92
50: ; preds = %1
br label %92
51: ; preds = %1
br label %92
52: ; preds = %1
br label %92
53: ; preds = %1
br label %92
54: ; preds = %1
br label %92
55: ; preds = %1
br label %92
56: ; preds = %1
br label %92
57: ; preds = %1
br label %92
58: ; preds = %1
br label %92
59: ; preds = %1
br label %92
60: ; preds = %1
br label %92
61: ; preds = %1
br label %92
62: ; preds = %1
br label %92
63: ; preds = %1
br label %92
64: ; preds = %1
br label %92
65: ; preds = %1
br label %92
66: ; preds = %1
br label %92
67: ; preds = %1
br label %92
68: ; preds = %1
br label %92
69: ; preds = %1
br label %92
70: ; preds = %1
br label %92
71: ; preds = %1
br label %92
72: ; preds = %1
br label %92
73: ; preds = %1
br label %92
74: ; preds = %1
br label %92
75: ; preds = %1
br label %92
76: ; preds = %1
br label %92
77: ; preds = %1
br label %92
78: ; preds = %1
br label %92
79: ; preds = %1
br label %92
80: ; preds = %1
br label %92
81: ; preds = %1
br label %92
82: ; preds = %1
br label %92
83: ; preds = %1
br label %92
84: ; preds = %1
br label %92
85: ; preds = %1
br label %92
86: ; preds = %1
br label %92
87: ; preds = %1
br label %92
88: ; preds = %1
br label %92
89: ; preds = %1
br label %92
90: ; preds = %1
%91 = tail call i32 @snprintf(i8* getelementptr inbounds ([256 x i8], [256 x i8]* @appid_app_to_name.buf, i64 0, i64 0), i32 256, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.88, i64 0, i64 0), i32 %0)
br label %92
92: ; preds = %1, %90, %89, %88, %87, %86, %85, %84, %83, %82, %81, %80, %79, %78, %77, %76, %75, %74, %73, %72, %71, %70, %69, %68, %67, %66, %65, %64, %63, %62, %61, %60, %59, %58, %57, %56, %55, %54, %53, %52, %51, %50, %49, %48, %47, %46, %45, %44, %43, %42, %41, %40, %39, %38, %37, %36, %35, %34, %33, %32, %31, %30, %29, %28, %27, %26, %25, %24, %23, %22, %21, %20, %19, %18, %17, %16, %15, %14, %13, %12, %11, %10, %9, %8, %7, %6, %5, %4, %3, %2
%93 = phi i8* [ getelementptr inbounds ([256 x i8], [256 x i8]* @appid_app_to_name.buf, i64 0, i64 0), %90 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.87, i64 0, i64 0), %89 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.86, i64 0, i64 0), %88 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.85, i64 0, i64 0), %87 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.84, i64 0, i64 0), %86 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.83, i64 0, i64 0), %85 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.82, i64 0, i64 0), %84 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.81, i64 0, i64 0), %83 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.80, i64 0, i64 0), %82 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.79, i64 0, i64 0), %81 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.78, i64 0, i64 0), %80 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.77, i64 0, i64 0), %79 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.76, i64 0, i64 0), %78 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.75, i64 0, i64 0), %77 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.74, i64 0, i64 0), %76 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.73, i64 0, i64 0), %75 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.72, i64 0, i64 0), %74 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.71, i64 0, i64 0), %73 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.70, i64 0, i64 0), %72 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.69, i64 0, i64 0), %71 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.68, i64 0, i64 0), %70 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.67, i64 0, i64 0), %69 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.66, i64 0, i64 0), %68 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.65, i64 0, i64 0), %67 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.64, i64 0, i64 0), %66 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.63, i64 0, i64 0), %65 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.62, i64 0, i64 0), %64 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.61, i64 0, i64 0), %63 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.60, i64 0, i64 0), %62 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.59, i64 0, i64 0), %61 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.58, i64 0, i64 0), %60 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.57, i64 0, i64 0), %59 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.56, i64 0, i64 0), %58 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.55, i64 0, i64 0), %57 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.54, i64 0, i64 0), %56 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.53, i64 0, i64 0), %55 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.52, i64 0, i64 0), %54 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.51, i64 0, i64 0), %53 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.50, i64 0, i64 0), %52 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.49, i64 0, i64 0), %51 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.48, i64 0, i64 0), %50 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.47, i64 0, i64 0), %49 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.46, i64 0, i64 0), %48 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.45, i64 0, i64 0), %47 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.44, i64 0, i64 0), %46 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.43, i64 0, i64 0), %45 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.42, i64 0, i64 0), %44 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.41, i64 0, i64 0), %43 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.40, i64 0, i64 0), %42 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.39, i64 0, i64 0), %41 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.38, i64 0, i64 0), %40 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.37, i64 0, i64 0), %39 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.36, i64 0, i64 0), %38 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.35, i64 0, i64 0), %37 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.34, i64 0, i64 0), %36 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.33, i64 0, i64 0), %35 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.32, i64 0, i64 0), %34 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.31, i64 0, i64 0), %33 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.30, i64 0, i64 0), %32 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.29, i64 0, i64 0), %31 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.28, i64 0, i64 0), %30 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.28, i64 0, i64 0), %29 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.27, i64 0, i64 0), %28 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.26, i64 0, i64 0), %27 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.25, i64 0, i64 0), %26 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.24, i64 0, i64 0), %25 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.23, i64 0, i64 0), %24 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.22, i64 0, i64 0), %23 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), %22 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.20, i64 0, i64 0), %21 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.19, i64 0, i64 0), %20 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.18, i64 0, i64 0), %19 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.17, i64 0, i64 0), %18 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.16, i64 0, i64 0), %17 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.15, i64 0, i64 0), %16 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.14, i64 0, i64 0), %15 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.13, i64 0, i64 0), %14 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.12, i64 0, i64 0), %13 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.11, i64 0, i64 0), %12 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.10, i64 0, i64 0), %11 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.9, i64 0, i64 0), %10 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.8, i64 0, i64 0), %9 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.7, i64 0, i64 0), %8 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.6, i64 0, i64 0), %7 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.5, i64 0, i64 0), %6 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.4, i64 0, i64 0), %5 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.3, i64 0, i64 0), %4 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.2, i64 0, i64 0), %3 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.1, i64 0, i64 0), %2 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i64 0, i64 0), %1 ]
ret i8* %93
}