#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 */

/* Variables and functions */
scalar_t__ calloc(int, int);
int /*<<< orphan*/ sprintf(char *, char *, int, int, int, int);
char *decode_format(int format, int type) {
  char *f4;
  switch (type) {
  case 0:
    switch (format) {
    case 0:
      return ("unspecified");
      break;
    case 8:
      return ("indirect");
      break;
    case 9:
      return ("nested");
      break;
    case 10:
      return ("dsp_core");
      break;
    case 11:
      return ("dsp_data_8");
      break;
    case 12:
      return ("dsp_data_16");
      break;
    case 13:
      return ("dsp_data_24");
      break;
    case 14:
      return ("dsp_data_32");
      break;
    case 16:
      return ("display");
      break;
    case 17:
      return ("mulaw_squelch");
      break;
    case 18:
      return ("emphasized");
      break;
    case 19:
      return ("compressed");
      break;
    case 20:
      return ("compressed_emphasized");
      break;
    case 21:
      return ("dsp_commands");
      break;
    case 22:
      return ("dsp_commands_samples");
      break;
    case 23:
      return ("adpcm_g721");
      break;
    case 24:
      return ("adpcm_g722");
      break;
    case 25:
      return ("adpcm_g723");
      break;
    case 26:
      return ("adpcm_g723_5");
      break;
    case 28:
      return ("aes");
      break;
    case 29:
      return ("delat_mulaw_8");
      break;
    }
    break;
  case 1:
    if (format) {
      f4 = (char *)calloc(5, sizeof(char));
      sprintf(f4, "%c%c%c%c", (format >> 24) & 0xff, (format >> 16) & 0xff,
              (format >> 8) & 0xff, format & 0xff);
      return (f4);
    }
    break;
  case 2:
    switch (format) {
    case 2:
      return ("ADPCM");
      break;
    case 4:
      return ("VSELP");
      break;
    case 5:
      return ("IBM_CVSD");
      break;
    case 0x10:
      return ("OKI_ADPCM");
      break;
    case 0x11:
      return ("DVI_ADPCM");
      break;
    case 0x12:
      return ("MediaSpace_ADPCM");
      break;
    case 0x13:
      return ("Sierra_ADPCM");
      break;
    case 0x14:
      return ("G723_ADPCM");
      break;
    case 0x15:
      return ("DIGISTD");
      break;
    case 0x16:
      return ("DIGIFIX");
      break;
    case 0x17:
      return ("Dialogic ADPCM");
      break;
    case 0x18:
      return ("Mediavision ADPCM");
      break;
    case 0x19:
      return ("HP cu codec");
      break;
    case 0x20:
      return ("Yamaha_ADPCM");
      break;
    case 0x21:
      return ("SONARC");
      break;
    case 0x22:
      return ("DSPGroup_TrueSpeech");
      break;
    case 0x23:
      return ("EchoSC1");
      break;
    case 0x24:
      return ("AudioFile_AF36");
      break;
    case 0x25:
      return ("APTX");
      break;
    case 0x26:
      return ("AudioFile_AF10");
      break;
    case 0x27:
      return ("prosody 1612");
      break;
    case 0x28:
      return ("lrc");
      break;
    case 0x30:
      return ("Dolby_Ac2");
      break;
    case 0x31:
      return ("GSM610");
      break;
    case 0x32:
      return ("MSN audio codec");
      break;
    case 0x33:
      return ("Antext_ADPCM");
      break;
    case 0x34:
      return ("Control_res_vqlpc");
      break;
    case 0x35:
      return ("DIGIREAL");
      break;
    case 0x36:
      return ("DIGIADPCM");
      break;
    case 0x37:
      return ("Control_res_cr10");
      break;
    case 0x38:
      return ("NMS_VBXADPCM");
      break;
    case 0x39:
      return ("oland rdac");
      break;
    case 0x3a:
      return ("echo sc3");
      break;
    case 0x3b:
      return ("Rockwell adpcm");
      break;
    case 0x3c:
      return ("Rockwell digitalk codec");
      break;
    case 0x3d:
      return ("Xebec");
      break;
    case 0x40:
      return ("G721_ADPCM");
      break;
    case 0x41:
      return ("G728 CELP");
      break;
    case 0x42:
      return ("MS G723");
      break;
    case 0x50:
      return ("MPEG");
      break;
    case 0x52:
      return ("RT24");
      break;
    case 0x53:
      return ("PAC");
      break;
    case 0x55:
      return ("Mpeg layer 3");
      break;
    case 0x59:
      return ("Lucent G723");
      break;
    case 0x60:
      return ("Cirrus");
      break;
    case 0x61:
      return ("ESS Tech pcm");
      break;
    case 0x62:
      return ("voxware ");
      break;
    case 0x63:
      return ("canopus atrac");
      break;
    case 0x64:
      return ("G726");
      break;
    case 0x65:
      return ("G722");
      break;
    case 0x66:
      return ("DSAT");
      break;
    case 0x67:
      return ("DSAT display");
      break;
    case 0x69:
      return ("voxware ");
      break;
    case 0x70:
      return ("voxware ac8 ");
      break;
    case 0x71:
      return ("voxware ac10 ");
      break;
    case 0x72:
      return ("voxware ac16");
      break;
    case 0x73:
      return ("voxware ac20");
      break;
    case 0x74:
      return ("voxware rt24");
      break;
    case 0x75:
      return ("voxware rt29");
      break;
    case 0x76:
      return ("voxware rt29hw");
      break;
    case 0x77:
      return ("voxware vr12 ");
      break;
    case 0x78:
      return ("voxware vr18");
      break;
    case 0x79:
      return ("voxware tq40");
      break;
    case 0x80:
      return ("softsound");
      break;
    case 0x81:
      return ("voxware tq60 ");
      break;
    case 0x82:
      return ("MS RT24");
      break;
    case 0x83:
      return ("G729A");
      break;
    case 0x84:
      return ("MVI_MVI2");
      break;
    case 0x85:
      return ("DF G726");
      break;
    case 0x86:
      return ("DF GSM610");
      break;
    case 0x88:
      return ("isaudio");
      break;
    case 0x89:
      return ("onlive");
      break;
    case 0x91:
      return ("sbc24");
      break;
    case 0x92:
      return ("dolby ac3 spdif");
      break;
    case 0x97:
      return ("zyxel adpcm");
      break;
    case 0x98:
      return ("philips lpcbb");
      break;
    case 0x99:
      return ("packed");
      break;
    case 0x100:
      return ("rhetorex adpcm");
      break;
    case 0x101:
      return ("Irat");
      break;
    case 0x102:
      return ("IBM_alaw?");
      break;
    case 0x103:
      return ("IBM_ADPCM?");
      break;
    case 0x111:
      return ("vivo G723");
      break;
    case 0x112:
      return ("vivo siren");
      break;
    case 0x123:
      return ("digital g273");
      break;
    case 0x200:
      return ("Creative_ADPCM");
      break;
    case 0x202:
      return ("Creative fastspeech 8");
      break;
    case 0x203:
      return ("Creative fastspeech 10");
      break;
    case 0x220:
      return ("quarterdeck");
      break;
    case 0x300:
      return ("FM_TOWNS_SND");
      break;
    case 0x400:
      return ("BTV digital");
      break;
    case 0x680:
      return ("VME vmpcm");
      break;
    case 0x1000:
      return ("OLIGSM");
      break;
    case 0x1001:
      return ("OLIADPCM");
      break;
    case 0x1002:
      return ("OLICELP");
      break;
    case 0x1003:
      return ("OLISBC");
      break;
    case 0x1004:
      return ("OLIOPR");
      break;
    case 0x1100:
      return ("LH codec");
      break;
    case 0x1400:
      return ("Norris");
      break;
    case 0x1401:
      return ("isaudio");
      break;
    case 0x1500:
      return ("Soundspace musicompression");
      break;
    case 0x2000:
      return ("DVM");
      break;
    }
    break;
  }
  return (NULL);
}


x86 assembly (clang, -O0):
<decode_format>:
push   %rbp
mov    %rsp,%rbp
sub    $0x30,%rsp
mov    %edi,-0xc(%rbp)
mov    %esi,-0x10(%rbp)
mov    -0x10(%rbp),%eax
mov    %eax,-0x1c(%rbp)
test   %eax,%eax
je     1163 <decode_format+0x43>
jmp    1141 <decode_format+0x21>
mov    -0x1c(%rbp),%eax
sub    $0x1,%eax
je     12dd <decode_format+0x1bd>
jmp    1152 <decode_format+0x32>
mov    -0x1c(%rbp),%eax
sub    $0x2,%eax
je     134e <decode_format+0x22e>
jmp    20a7 <decode_format+0xf87>
mov    -0xc(%rbp),%eax
mov    %rax,-0x28(%rbp)
sub    $0x1d,%rax
ja     12d8 <decode_format+0x1b8>
mov    -0x28(%rbp),%rax
lea    0x1e81(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
lea    0x1ee9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1ee5(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1ede(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1ed5(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1ece(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1ec9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1ec5(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1ec1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x2168(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1ead(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1ec1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e9b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e96(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e9c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e99(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e9e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e99(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e94(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e8f(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e8c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1e80(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
jmp    20a7 <decode_format+0xf87>
cmpl   $0x0,-0xc(%rbp)
je     1349 <decode_format+0x229>
mov    $0x5,%edi
mov    $0x1,%esi
call   1030 <calloc@plt>
mov    %rax,-0x18(%rbp)
mov    -0x18(%rbp),%rdi
mov    -0xc(%rbp),%edx
sar    $0x18,%edx
and    $0xff,%edx
mov    -0xc(%rbp),%ecx
sar    $0x10,%ecx
and    $0xff,%ecx
mov    -0xc(%rbp),%r8d
sar    $0x8,%r8d
and    $0xff,%r8d
mov    -0xc(%rbp),%r9d
and    $0xff,%r9d
lea    0x1e26(%rip),%rsi
call   1040 <sprintf@plt>
mov    -0x18(%rbp),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
jmp    20a7 <decode_format+0xf87>
mov    -0xc(%rbp),%eax
mov    %eax,-0x2c(%rbp)
sub    $0x2,%eax
je     1a52 <decode_format+0x932>
jmp    1362 <decode_format+0x242>
mov    -0x2c(%rbp),%eax
sub    $0x4,%eax
je     1a62 <decode_format+0x942>
jmp    1373 <decode_format+0x253>
mov    -0x2c(%rbp),%eax
sub    $0x5,%eax
je     1a72 <decode_format+0x952>
jmp    1384 <decode_format+0x264>
mov    -0x2c(%rbp),%eax
sub    $0x10,%eax
je     1a82 <decode_format+0x962>
jmp    1395 <decode_format+0x275>
mov    -0x2c(%rbp),%eax
sub    $0x11,%eax
je     1a92 <decode_format+0x972>
jmp    13a6 <decode_format+0x286>
mov    -0x2c(%rbp),%eax
sub    $0x12,%eax
je     1aa2 <decode_format+0x982>
jmp    13b7 <decode_format+0x297>
mov    -0x2c(%rbp),%eax
sub    $0x13,%eax
je     1ab2 <decode_format+0x992>
jmp    13c8 <decode_format+0x2a8>
mov    -0x2c(%rbp),%eax
sub    $0x14,%eax
je     1ac2 <decode_format+0x9a2>
jmp    13d9 <decode_format+0x2b9>
mov    -0x2c(%rbp),%eax
sub    $0x15,%eax
je     1ad2 <decode_format+0x9b2>
jmp    13ea <decode_format+0x2ca>
mov    -0x2c(%rbp),%eax
sub    $0x16,%eax
je     1ae2 <decode_format+0x9c2>
jmp    13fb <decode_format+0x2db>
mov    -0x2c(%rbp),%eax
sub    $0x17,%eax
je     1af2 <decode_format+0x9d2>
jmp    140c <decode_format+0x2ec>
mov    -0x2c(%rbp),%eax
sub    $0x18,%eax
je     1b02 <decode_format+0x9e2>
jmp    141d <decode_format+0x2fd>
mov    -0x2c(%rbp),%eax
sub    $0x19,%eax
je     1b12 <decode_format+0x9f2>
jmp    142e <decode_format+0x30e>
mov    -0x2c(%rbp),%eax
sub    $0x20,%eax
je     1b22 <decode_format+0xa02>
jmp    143f <decode_format+0x31f>
mov    -0x2c(%rbp),%eax
sub    $0x21,%eax
je     1b32 <decode_format+0xa12>
jmp    1450 <decode_format+0x330>
mov    -0x2c(%rbp),%eax
sub    $0x22,%eax
je     1b42 <decode_format+0xa22>
jmp    1461 <decode_format+0x341>
mov    -0x2c(%rbp),%eax
sub    $0x23,%eax
je     1b52 <decode_format+0xa32>
jmp    1472 <decode_format+0x352>
mov    -0x2c(%rbp),%eax
sub    $0x24,%eax
je     1b62 <decode_format+0xa42>
jmp    1483 <decode_format+0x363>
mov    -0x2c(%rbp),%eax
sub    $0x25,%eax
je     1b72 <decode_format+0xa52>
jmp    1494 <decode_format+0x374>
mov    -0x2c(%rbp),%eax
sub    $0x26,%eax
je     1b82 <decode_format+0xa62>
jmp    14a5 <decode_format+0x385>
mov    -0x2c(%rbp),%eax
sub    $0x27,%eax
je     1b92 <decode_format+0xa72>
jmp    14b6 <decode_format+0x396>
mov    -0x2c(%rbp),%eax
sub    $0x28,%eax
je     1ba2 <decode_format+0xa82>
jmp    14c7 <decode_format+0x3a7>
mov    -0x2c(%rbp),%eax
sub    $0x30,%eax
je     1bb2 <decode_format+0xa92>
jmp    14d8 <decode_format+0x3b8>
mov    -0x2c(%rbp),%eax
sub    $0x31,%eax
je     1bc2 <decode_format+0xaa2>
jmp    14e9 <decode_format+0x3c9>
mov    -0x2c(%rbp),%eax
sub    $0x32,%eax
je     1bd2 <decode_format+0xab2>
jmp    14fa <decode_format+0x3da>
mov    -0x2c(%rbp),%eax
sub    $0x33,%eax
je     1be2 <decode_format+0xac2>
jmp    150b <decode_format+0x3eb>
mov    -0x2c(%rbp),%eax
sub    $0x34,%eax
je     1bf2 <decode_format+0xad2>
jmp    151c <decode_format+0x3fc>
mov    -0x2c(%rbp),%eax
sub    $0x35,%eax
je     1c02 <decode_format+0xae2>
jmp    152d <decode_format+0x40d>
mov    -0x2c(%rbp),%eax
sub    $0x36,%eax
je     1c12 <decode_format+0xaf2>
jmp    153e <decode_format+0x41e>
mov    -0x2c(%rbp),%eax
sub    $0x37,%eax
je     1c22 <decode_format+0xb02>
jmp    154f <decode_format+0x42f>
mov    -0x2c(%rbp),%eax
sub    $0x38,%eax
je     1c32 <decode_format+0xb12>
jmp    1560 <decode_format+0x440>
mov    -0x2c(%rbp),%eax
sub    $0x39,%eax
je     1c42 <decode_format+0xb22>
jmp    1571 <decode_format+0x451>
mov    -0x2c(%rbp),%eax
sub    $0x3a,%eax
je     1c52 <decode_format+0xb32>
jmp    1582 <decode_format+0x462>
mov    -0x2c(%rbp),%eax
sub    $0x3b,%eax
je     1c62 <decode_format+0xb42>
jmp    1593 <decode_format+0x473>
mov    -0x2c(%rbp),%eax
sub    $0x3c,%eax
je     1c72 <decode_format+0xb52>
jmp    15a4 <decode_format+0x484>
mov    -0x2c(%rbp),%eax
sub    $0x3d,%eax
je     1c82 <decode_format+0xb62>
jmp    15b5 <decode_format+0x495>
mov    -0x2c(%rbp),%eax
sub    $0x40,%eax
je     1c92 <decode_format+0xb72>
jmp    15c6 <decode_format+0x4a6>
mov    -0x2c(%rbp),%eax
sub    $0x41,%eax
je     1ca2 <decode_format+0xb82>
jmp    15d7 <decode_format+0x4b7>
mov    -0x2c(%rbp),%eax
sub    $0x42,%eax
je     1cb2 <decode_format+0xb92>
jmp    15e8 <decode_format+0x4c8>
mov    -0x2c(%rbp),%eax
sub    $0x50,%eax
je     1cc2 <decode_format+0xba2>
jmp    15f9 <decode_format+0x4d9>
mov    -0x2c(%rbp),%eax
sub    $0x52,%eax
je     1cd2 <decode_format+0xbb2>
jmp    160a <decode_format+0x4ea>
mov    -0x2c(%rbp),%eax
sub    $0x53,%eax
je     1ce2 <decode_format+0xbc2>
jmp    161b <decode_format+0x4fb>
mov    -0x2c(%rbp),%eax
sub    $0x55,%eax
je     1cf2 <decode_format+0xbd2>
jmp    162c <decode_format+0x50c>
mov    -0x2c(%rbp),%eax
sub    $0x59,%eax
je     1d02 <decode_format+0xbe2>
jmp    163d <decode_format+0x51d>
mov    -0x2c(%rbp),%eax
sub    $0x60,%eax
je     1d12 <decode_format+0xbf2>
jmp    164e <decode_format+0x52e>
mov    -0x2c(%rbp),%eax
sub    $0x61,%eax
je     1d22 <decode_format+0xc02>
jmp    165f <decode_format+0x53f>
mov    -0x2c(%rbp),%eax
sub    $0x62,%eax
je     1d32 <decode_format+0xc12>
jmp    1670 <decode_format+0x550>
mov    -0x2c(%rbp),%eax
sub    $0x63,%eax
je     1d42 <decode_format+0xc22>
jmp    1681 <decode_format+0x561>
mov    -0x2c(%rbp),%eax
sub    $0x64,%eax
je     1d52 <decode_format+0xc32>
jmp    1692 <decode_format+0x572>
mov    -0x2c(%rbp),%eax
sub    $0x65,%eax
je     1d62 <decode_format+0xc42>
jmp    16a3 <decode_format+0x583>
mov    -0x2c(%rbp),%eax
sub    $0x66,%eax
je     1d72 <decode_format+0xc52>
jmp    16b4 <decode_format+0x594>
mov    -0x2c(%rbp),%eax
sub    $0x67,%eax
je     1d82 <decode_format+0xc62>
jmp    16c5 <decode_format+0x5a5>
mov    -0x2c(%rbp),%eax
sub    $0x69,%eax
je     1d92 <decode_format+0xc72>
jmp    16d6 <decode_format+0x5b6>
mov    -0x2c(%rbp),%eax
sub    $0x70,%eax
je     1da2 <decode_format+0xc82>
jmp    16e7 <decode_format+0x5c7>
mov    -0x2c(%rbp),%eax
sub    $0x71,%eax
je     1db2 <decode_format+0xc92>
jmp    16f8 <decode_format+0x5d8>
mov    -0x2c(%rbp),%eax
sub    $0x72,%eax
je     1dc2 <decode_format+0xca2>
jmp    1709 <decode_format+0x5e9>
mov    -0x2c(%rbp),%eax
sub    $0x73,%eax
je     1dd2 <decode_format+0xcb2>
jmp    171a <decode_format+0x5fa>
mov    -0x2c(%rbp),%eax
sub    $0x74,%eax
je     1de2 <decode_format+0xcc2>
jmp    172b <decode_format+0x60b>
mov    -0x2c(%rbp),%eax
sub    $0x75,%eax
je     1df2 <decode_format+0xcd2>
jmp    173c <decode_format+0x61c>
mov    -0x2c(%rbp),%eax
sub    $0x76,%eax
je     1e02 <decode_format+0xce2>
jmp    174d <decode_format+0x62d>
mov    -0x2c(%rbp),%eax
sub    $0x77,%eax
je     1e12 <decode_format+0xcf2>
jmp    175e <decode_format+0x63e>
mov    -0x2c(%rbp),%eax
sub    $0x78,%eax
je     1e22 <decode_format+0xd02>
jmp    176f <decode_format+0x64f>
mov    -0x2c(%rbp),%eax
sub    $0x79,%eax
je     1e32 <decode_format+0xd12>
jmp    1780 <decode_format+0x660>
mov    -0x2c(%rbp),%eax
sub    $0x80,%eax
je     1e42 <decode_format+0xd22>
jmp    1793 <decode_format+0x673>
mov    -0x2c(%rbp),%eax
sub    $0x81,%eax
je     1e52 <decode_format+0xd32>
jmp    17a6 <decode_format+0x686>
mov    -0x2c(%rbp),%eax
sub    $0x82,%eax
je     1e62 <decode_format+0xd42>
jmp    17b9 <decode_format+0x699>
mov    -0x2c(%rbp),%eax
sub    $0x83,%eax
je     1e72 <decode_format+0xd52>
jmp    17cc <decode_format+0x6ac>
mov    -0x2c(%rbp),%eax
sub    $0x84,%eax
je     1e82 <decode_format+0xd62>
jmp    17df <decode_format+0x6bf>
mov    -0x2c(%rbp),%eax
sub    $0x85,%eax
je     1e92 <decode_format+0xd72>
jmp    17f2 <decode_format+0x6d2>
mov    -0x2c(%rbp),%eax
sub    $0x86,%eax
je     1ea2 <decode_format+0xd82>
jmp    1805 <decode_format+0x6e5>
mov    -0x2c(%rbp),%eax
sub    $0x88,%eax
je     1eb2 <decode_format+0xd92>
jmp    1818 <decode_format+0x6f8>
mov    -0x2c(%rbp),%eax
sub    $0x89,%eax
je     1ec2 <decode_format+0xda2>
jmp    182b <decode_format+0x70b>
mov    -0x2c(%rbp),%eax
sub    $0x91,%eax
je     1ed2 <decode_format+0xdb2>
jmp    183e <decode_format+0x71e>
mov    -0x2c(%rbp),%eax
sub    $0x92,%eax
je     1ee2 <decode_format+0xdc2>
jmp    1851 <decode_format+0x731>
mov    -0x2c(%rbp),%eax
sub    $0x97,%eax
je     1ef2 <decode_format+0xdd2>
jmp    1864 <decode_format+0x744>
mov    -0x2c(%rbp),%eax
sub    $0x98,%eax
je     1f02 <decode_format+0xde2>
jmp    1877 <decode_format+0x757>
mov    -0x2c(%rbp),%eax
sub    $0x99,%eax
je     1f12 <decode_format+0xdf2>
jmp    188a <decode_format+0x76a>
mov    -0x2c(%rbp),%eax
sub    $0x100,%eax
je     1f22 <decode_format+0xe02>
jmp    189d <decode_format+0x77d>
mov    -0x2c(%rbp),%eax
sub    $0x101,%eax
je     1f32 <decode_format+0xe12>
jmp    18b0 <decode_format+0x790>
mov    -0x2c(%rbp),%eax
sub    $0x102,%eax
je     1f42 <decode_format+0xe22>
jmp    18c3 <decode_format+0x7a3>
mov    -0x2c(%rbp),%eax
sub    $0x103,%eax
je     1f52 <decode_format+0xe32>
jmp    18d6 <decode_format+0x7b6>
mov    -0x2c(%rbp),%eax
sub    $0x111,%eax
je     1f62 <decode_format+0xe42>
jmp    18e9 <decode_format+0x7c9>
mov    -0x2c(%rbp),%eax
sub    $0x112,%eax
je     1f72 <decode_format+0xe52>
jmp    18fc <decode_format+0x7dc>
mov    -0x2c(%rbp),%eax
sub    $0x123,%eax
je     1f82 <decode_format+0xe62>
jmp    190f <decode_format+0x7ef>
mov    -0x2c(%rbp),%eax
sub    $0x200,%eax
je     1f92 <decode_format+0xe72>
jmp    1922 <decode_format+0x802>
mov    -0x2c(%rbp),%eax
sub    $0x202,%eax
je     1fa2 <decode_format+0xe82>
jmp    1935 <decode_format+0x815>
mov    -0x2c(%rbp),%eax
sub    $0x203,%eax
je     1fb2 <decode_format+0xe92>
jmp    1948 <decode_format+0x828>
mov    -0x2c(%rbp),%eax
sub    $0x220,%eax
je     1fc2 <decode_format+0xea2>
jmp    195b <decode_format+0x83b>
mov    -0x2c(%rbp),%eax
sub    $0x300,%eax
je     1fd2 <decode_format+0xeb2>
jmp    196e <decode_format+0x84e>
mov    -0x2c(%rbp),%eax
sub    $0x400,%eax
je     1fe2 <decode_format+0xec2>
jmp    1981 <decode_format+0x861>
mov    -0x2c(%rbp),%eax
sub    $0x680,%eax
je     1ff2 <decode_format+0xed2>
jmp    1994 <decode_format+0x874>
mov    -0x2c(%rbp),%eax
sub    $0x1000,%eax
je     2002 <decode_format+0xee2>
jmp    19a7 <decode_format+0x887>
mov    -0x2c(%rbp),%eax
sub    $0x1001,%eax
je     2012 <decode_format+0xef2>
jmp    19ba <decode_format+0x89a>
mov    -0x2c(%rbp),%eax
sub    $0x1002,%eax
je     2022 <decode_format+0xf02>
jmp    19cd <decode_format+0x8ad>
mov    -0x2c(%rbp),%eax
sub    $0x1003,%eax
je     2032 <decode_format+0xf12>
jmp    19e0 <decode_format+0x8c0>
mov    -0x2c(%rbp),%eax
sub    $0x1004,%eax
je     2042 <decode_format+0xf22>
jmp    19f3 <decode_format+0x8d3>
mov    -0x2c(%rbp),%eax
sub    $0x1100,%eax
je     2052 <decode_format+0xf32>
jmp    1a06 <decode_format+0x8e6>
mov    -0x2c(%rbp),%eax
sub    $0x1400,%eax
je     2062 <decode_format+0xf42>
jmp    1a19 <decode_format+0x8f9>
mov    -0x2c(%rbp),%eax
sub    $0x1401,%eax
je     2072 <decode_format+0xf52>
jmp    1a2c <decode_format+0x90c>
mov    -0x2c(%rbp),%eax
sub    $0x1500,%eax
je     2082 <decode_format+0xf62>
jmp    1a3f <decode_format+0x91f>
mov    -0x2c(%rbp),%eax
sub    $0x2000,%eax
je     2092 <decode_format+0xf72>
jmp    20a2 <decode_format+0xf82>
lea    0x1772(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16fd(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16f3(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16ec(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16e6(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16e0(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16e1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16de(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16d9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16d1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16c9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16c8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16ca(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16c6(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16c3(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16ba(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16be(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16b6(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16b5(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16aa(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16a9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16a6(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x169a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1876(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1684(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1684(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1681(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1683(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x167c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1676(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1677(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1674(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x166f(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1668(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1667(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x166f(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1665(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1660(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x165a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1652(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1747(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1637(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x162b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1628(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1624(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x161b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1618(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1611(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x16de(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15ff(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15f4(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15e9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15b8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15d6(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15d3(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15d1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15ce(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15cb(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15c8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15c5(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15c4(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15c2(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15bf(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15bc(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15b6(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15b4(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15ac(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x15a2(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x159b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1593(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x158d(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1585(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x157c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1572(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1572(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x156e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x156c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1563(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1562(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1557(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1551(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x154c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1546(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1541(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x153e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x153d(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1543(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x154a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1546(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1543(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x153f(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1539(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1530(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1529(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1521(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1518(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x150f(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x1508(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x13cd(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x14ef(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
lea    0x14fa(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    20af <decode_format+0xf8f>
jmp    20a7 <decode_format+0xf87>
movq   $0x0,-0x8(%rbp)
mov    -0x8(%rbp),%rax
add    $0x30,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<decode_format>:
push   %r14
push   %rbx
push   %rax
mov    %edi,%ebx
cmp    $0x2,%esi
je     1154 <decode_format+0x34>
cmp    $0x1,%esi
je     118d <decode_format+0x6d>
test   %esi,%esi
jne    126f <decode_format+0x14f>
cmp    $0x1e,%ebx
jae    126f <decode_format+0x14f>
movslq %ebx,%rax
lea    0x3be5(%rip),%rcx
mov    (%rcx,%rax,8),%r14
jmp    1272 <decode_format+0x152>
cmp    $0x67f,%ebx
jg     11d2 <decode_format+0xb2>
lea    -0x2(%rbx),%eax
cmp    $0x2fe,%eax
ja     125e <decode_format+0x13e>
lea    0x1bf2(%rip),%r14
lea    0xe88(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
lea    0x1d61(%rip),%r14
jmp    1272 <decode_format+0x152>
test   %ebx,%ebx
je     126f <decode_format+0x14f>
mov    $0x5,%edi
mov    $0x1,%esi
call   1030 <calloc@plt>
mov    %rax,%r14
mov    %ebx,%edx
shr    $0x18,%edx
mov    %ebx,%eax
shr    $0x10,%eax
movzbl %al,%ecx
movzbl %bh,%eax
movzbl %bl,%r9d
lea    0x1b33(%rip),%rsi
mov    %r14,%rdi
mov    %eax,%r8d
call   1040 <sprintf@plt>
jmp    1272 <decode_format+0x152>
cmp    $0x10ff,%ebx
jg     11fe <decode_format+0xde>
lea    -0x1000(%rbx),%eax
cmp    $0x4,%eax
ja     124d <decode_format+0x12d>
lea    0x1a10(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
lea    0x1ede(%rip),%r14
jmp    1272 <decode_format+0x152>
cmp    $0x1400,%ebx
jle    122b <decode_format+0x10b>
cmp    $0x1401,%ebx
je     1244 <decode_format+0x124>
cmp    $0x1500,%ebx
je     12a1 <decode_format+0x181>
cmp    $0x2000,%ebx
jne    126f <decode_format+0x14f>
lea    0x1f02(%rip),%r14
jmp    1272 <decode_format+0x152>
cmp    $0x1100,%ebx
je     12aa <decode_format+0x18a>
cmp    $0x1400,%ebx
jne    126f <decode_format+0x14f>
lea    0x1ec7(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1d93(%rip),%r14
jmp    1272 <decode_format+0x152>
cmp    $0x680,%ebx
jne    126f <decode_format+0x14f>
lea    0x1e74(%rip),%r14
jmp    1272 <decode_format+0x152>
cmp    $0x400,%ebx
jne    126f <decode_format+0x14f>
lea    0x1e57(%rip),%r14
jmp    1272 <decode_format+0x152>
xor    %r14d,%r14d
mov    %r14,%rax
add    $0x8,%rsp
pop    %rbx
pop    %r14
ret
lea    0x1e5d(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1e5d(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1e5c(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1e5a(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1e68(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1e4f(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a44(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a41(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a41(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a42(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a43(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4b(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4f(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a51(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4d(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a49(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4c(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a52(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a52(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a53(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4e(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a56(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a52(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a55(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4e(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a51(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a52(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4a(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1c2a(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a3c(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a40(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a41(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a47(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a44(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a42(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a47(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a48(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a47(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a44(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a47(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a53(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4d(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4c(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a4a(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a46(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1b3f(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a33(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a2b(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a2c(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a2c(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a27(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a31(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1b02(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a27(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a20(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a19(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a1a(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a1b(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a1d(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a1e(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a1f(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a20(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a21(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a24(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a26(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a27(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a28(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a26(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a28(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a24(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a1e(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a1b(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a17(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a1d(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a18(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a12(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a16(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a16(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a18(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a13(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a16(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a0f(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a0d(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a0c(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a0a(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a09(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a0a(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a0d(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a17(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a22(%rip),%r14
jmp    1272 <decode_format+0x152>
lea    0x1a22(%rip),%r14
jmp    1272 <decode_format+0x152>

LLVM IR (-O0):
@.str = [12 x i8] c"unspecified\00"
@.str.1 = [9 x i8] c"indirect\00"
@.str.2 = [7 x i8] c"nested\00"
@.str.3 = [9 x i8] c"dsp_core\00"
@.str.4 = [11 x i8] c"dsp_data_8\00"
@.str.5 = [12 x i8] c"dsp_data_16\00"
@.str.6 = [12 x i8] c"dsp_data_24\00"
@.str.7 = [12 x i8] c"dsp_data_32\00"
@.str.8 = [8 x i8] c"display\00"
@.str.9 = [14 x i8] c"mulaw_squelch\00"
@.str.10 = [11 x i8] c"emphasized\00"
@.str.11 = [11 x i8] c"compressed\00"
@.str.12 = [22 x i8] c"compressed_emphasized\00"
@.str.13 = [13 x i8] c"dsp_commands\00"
@.str.14 = [21 x i8] c"dsp_commands_samples\00"
@.str.15 = [11 x i8] c"adpcm_g721\00"
@.str.16 = [11 x i8] c"adpcm_g722\00"
@.str.17 = [11 x i8] c"adpcm_g723\00"
@.str.18 = [13 x i8] c"adpcm_g723_5\00"
@.str.19 = [4 x i8] c"aes\00"
@.str.20 = [14 x i8] c"delat_mulaw_8\00"
@.str.21 = [9 x i8] c"%c%c%c%c\00"
@.str.22 = [6 x i8] c"ADPCM\00"
@.str.23 = [6 x i8] c"VSELP\00"
@.str.24 = [9 x i8] c"IBM_CVSD\00"
@.str.25 = [10 x i8] c"OKI_ADPCM\00"
@.str.26 = [10 x i8] c"DVI_ADPCM\00"
@.str.27 = [17 x i8] c"MediaSpace_ADPCM\00"
@.str.28 = [13 x i8] c"Sierra_ADPCM\00"
@.str.29 = [11 x i8] c"G723_ADPCM\00"
@.str.30 = [8 x i8] c"DIGISTD\00"
@.str.31 = [8 x i8] c"DIGIFIX\00"
@.str.32 = [15 x i8] c"Dialogic ADPCM\00"
@.str.33 = [18 x i8] c"Mediavision ADPCM\00"
@.str.34 = [12 x i8] c"HP cu codec\00"
@.str.35 = [13 x i8] c"Yamaha_ADPCM\00"
@.str.36 = [7 x i8] c"SONARC\00"
@.str.37 = [20 x i8] c"DSPGroup_TrueSpeech\00"
@.str.38 = [8 x i8] c"EchoSC1\00"
@.str.39 = [15 x i8] c"AudioFile_AF36\00"
@.str.40 = [5 x i8] c"APTX\00"
@.str.41 = [15 x i8] c"AudioFile_AF10\00"
@.str.42 = [13 x i8] c"prosody 1612\00"
@.str.43 = [4 x i8] c"lrc\00"
@.str.44 = [10 x i8] c"Dolby_Ac2\00"
@.str.45 = [7 x i8] c"GSM610\00"
@.str.46 = [16 x i8] c"MSN audio codec\00"
@.str.47 = [13 x i8] c"Antext_ADPCM\00"
@.str.48 = [18 x i8] c"Control_res_vqlpc\00"
@.str.49 = [9 x i8] c"DIGIREAL\00"
@.str.50 = [10 x i8] c"DIGIADPCM\00"
@.str.51 = [17 x i8] c"Control_res_cr10\00"
@.str.52 = [13 x i8] c"NMS_VBXADPCM\00"
@.str.53 = [11 x i8] c"oland rdac\00"
@.str.54 = [9 x i8] c"echo sc3\00"
@.str.55 = [15 x i8] c"Rockwell adpcm\00"
@.str.56 = [24 x i8] c"Rockwell digitalk codec\00"
@.str.57 = [6 x i8] c"Xebec\00"
@.str.58 = [11 x i8] c"G721_ADPCM\00"
@.str.59 = [10 x i8] c"G728 CELP\00"
@.str.60 = [8 x i8] c"MS G723\00"
@.str.61 = [5 x i8] c"MPEG\00"
@.str.62 = [5 x i8] c"RT24\00"
@.str.63 = [4 x i8] c"PAC\00"
@.str.64 = [13 x i8] c"Mpeg layer 3\00"
@.str.65 = [12 x i8] c"Lucent G723\00"
@.str.66 = [7 x i8] c"Cirrus\00"
@.str.67 = [13 x i8] c"ESS Tech pcm\00"
@.str.68 = [9 x i8] c"voxware \00"
@.str.69 = [14 x i8] c"canopus atrac\00"
@.str.70 = [5 x i8] c"G726\00"
@.str.71 = [5 x i8] c"G722\00"
@.str.72 = [5 x i8] c"DSAT\00"
@.str.73 = [13 x i8] c"DSAT display\00"
@.str.74 = [13 x i8] c"voxware ac8 \00"
@.str.75 = [14 x i8] c"voxware ac10 \00"
@.str.76 = [13 x i8] c"voxware ac16\00"
@.str.77 = [13 x i8] c"voxware ac20\00"
@.str.78 = [13 x i8] c"voxware rt24\00"
@.str.79 = [13 x i8] c"voxware rt29\00"
@.str.80 = [15 x i8] c"voxware rt29hw\00"
@.str.81 = [14 x i8] c"voxware vr12 \00"
@.str.82 = [13 x i8] c"voxware vr18\00"
@.str.83 = [13 x i8] c"voxware tq40\00"
@.str.84 = [10 x i8] c"softsound\00"
@.str.85 = [14 x i8] c"voxware tq60 \00"
@.str.86 = [8 x i8] c"MS RT24\00"
@.str.87 = [6 x i8] c"G729A\00"
@.str.88 = [9 x i8] c"MVI_MVI2\00"
@.str.89 = [8 x i8] c"DF G726\00"
@.str.90 = [10 x i8] c"DF GSM610\00"
@.str.91 = [8 x i8] c"isaudio\00"
@.str.92 = [7 x i8] c"onlive\00"
@.str.93 = [6 x i8] c"sbc24\00"
@.str.94 = [16 x i8] c"dolby ac3 spdif\00"
@.str.95 = [12 x i8] c"zyxel adpcm\00"
@.str.96 = [14 x i8] c"philips lpcbb\00"
@.str.97 = [7 x i8] c"packed\00"
@.str.98 = [15 x i8] c"rhetorex adpcm\00"
@.str.99 = [5 x i8] c"Irat\00"
@.str.100 = [10 x i8] c"IBM_alaw?\00"
@.str.101 = [11 x i8] c"IBM_ADPCM?\00"
@.str.102 = [10 x i8] c"vivo G723\00"
@.str.103 = [11 x i8] c"vivo siren\00"
@.str.104 = [13 x i8] c"digital g273\00"
@.str.105 = [15 x i8] c"Creative_ADPCM\00"
@.str.106 = [22 x i8] c"Creative fastspeech 8\00"
@.str.107 = [23 x i8] c"Creative fastspeech 10\00"
@.str.108 = [12 x i8] c"quarterdeck\00"
@.str.109 = [13 x i8] c"FM_TOWNS_SND\00"
@.str.110 = [12 x i8] c"BTV digital\00"
@.str.111 = [10 x i8] c"VME vmpcm\00"
@.str.112 = [7 x i8] c"OLIGSM\00"
@.str.113 = [9 x i8] c"OLIADPCM\00"
@.str.114 = [8 x i8] c"OLICELP\00"
@.str.115 = [7 x i8] c"OLISBC\00"
@.str.116 = [7 x i8] c"OLIOPR\00"
@.str.117 = [9 x i8] c"LH codec\00"
@.str.118 = [7 x i8] c"Norris\00"
@.str.119 = [27 x i8] c"Soundspace musicompression\00"
@.str.120 = [4 x i8] c"DVM\00"
define i8* @decode_format(i32 %0, i32 %1) {
%3 = alloca i8*
%4 = alloca i32
%5 = alloca i32
%6 = alloca i8*
store i32 %0, i32* %4
store i32 %1, i32* %5
%7 = load i32, i32* %5
switch i32 %7, label %157 [
i32 0, label %8
i32 1, label %32
i32 2, label %53
]
8: ; preds = %2
%9 = load i32, i32* %4
switch i32 %9, label %31 [
i32 0, label %10
i32 8, label %11
i32 9, label %12
i32 10, label %13
i32 11, label %14
i32 12, label %15
i32 13, label %16
i32 14, label %17
i32 16, label %18
i32 17, label %19
i32 18, label %20
i32 19, label %21
i32 20, label %22
i32 21, label %23
i32 22, label %24
i32 23, label %25
i32 24, label %26
i32 25, label %27
i32 26, label %28
i32 28, label %29
i32 29, label %30
]
10: ; preds = %8
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str, i64 0, i64 0), i8** %3
br label %158
11: ; preds = %8
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.1, i64 0, i64 0), i8** %3
br label %158
12: ; preds = %8
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8** %3
br label %158
13: ; preds = %8
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.3, i64 0, i64 0), i8** %3
br label %158
14: ; preds = %8
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.4, i64 0, i64 0), i8** %3
br label %158
15: ; preds = %8
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.5, i64 0, i64 0), i8** %3
br label %158
16: ; preds = %8
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i64 0, i64 0), i8** %3
br label %158
17: ; preds = %8
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.7, i64 0, i64 0), i8** %3
br label %158
18: ; preds = %8
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.8, i64 0, i64 0), i8** %3
br label %158
19: ; preds = %8
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.9, i64 0, i64 0), i8** %3
br label %158
20: ; preds = %8
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.10, i64 0, i64 0), i8** %3
br label %158
21: ; preds = %8
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.11, i64 0, i64 0), i8** %3
br label %158
22: ; preds = %8
store i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.12, i64 0, i64 0), i8** %3
br label %158
23: ; preds = %8
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.13, i64 0, i64 0), i8** %3
br label %158
24: ; preds = %8
store i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.14, i64 0, i64 0), i8** %3
br label %158
25: ; preds = %8
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.15, i64 0, i64 0), i8** %3
br label %158
26: ; preds = %8
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.16, i64 0, i64 0), i8** %3
br label %158
27: ; preds = %8
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.17, i64 0, i64 0), i8** %3
br label %158
28: ; preds = %8
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.18, i64 0, i64 0), i8** %3
br label %158
29: ; preds = %8
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.19, i64 0, i64 0), i8** %3
br label %158
30: ; preds = %8
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.20, i64 0, i64 0), i8** %3
br label %158
31: ; preds = %8
br label %157
32: ; preds = %2
%33 = load i32, i32* %4
%34 = icmp ne i32 %33, 0
br i1 %34, label %35, label %52
35: ; preds = %32
%36 = call i64 @calloc(i32 5, i32 1)
%37 = inttoptr i64 %36 to i8*
store i8* %37, i8** %6
%38 = load i8*, i8** %6
%39 = load i32, i32* %4
%40 = ashr i32 %39, 24
%41 = and i32 %40, 255
%42 = load i32, i32* %4
%43 = ashr i32 %42, 16
%44 = and i32 %43, 255
%45 = load i32, i32* %4
%46 = ashr i32 %45, 8
%47 = and i32 %46, 255
%48 = load i32, i32* %4
%49 = and i32 %48, 255
%50 = call i32 @sprintf(i8* %38, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.21, i64 0, i64 0), i32 %41, i32 %44, i32 %47, i32 %49)
%51 = load i8*, i8** %6
store i8* %51, i8** %3
br label %158
52: ; preds = %32
br label %157
53: ; preds = %2
%54 = load i32, i32* %4
switch i32 %54, label %156 [
i32 2, label %55
i32 4, label %56
i32 5, label %57
i32 16, label %58
i32 17, label %59
i32 18, label %60
i32 19, label %61
i32 20, label %62
i32 21, label %63
i32 22, label %64
i32 23, label %65
i32 24, label %66
i32 25, label %67
i32 32, label %68
i32 33, label %69
i32 34, label %70
i32 35, label %71
i32 36, label %72
i32 37, label %73
i32 38, label %74
i32 39, label %75
i32 40, label %76
i32 48, label %77
i32 49, label %78
i32 50, label %79
i32 51, label %80
i32 52, label %81
i32 53, label %82
i32 54, label %83
i32 55, label %84
i32 56, label %85
i32 57, label %86
i32 58, label %87
i32 59, label %88
i32 60, label %89
i32 61, label %90
i32 64, label %91
i32 65, label %92
i32 66, label %93
i32 80, label %94
i32 82, label %95
i32 83, label %96
i32 85, label %97
i32 89, label %98
i32 96, label %99
i32 97, label %100
i32 98, label %101
i32 99, label %102
i32 100, label %103
i32 101, label %104
i32 102, label %105
i32 103, label %106
i32 105, label %107
i32 112, label %108
i32 113, label %109
i32 114, label %110
i32 115, label %111
i32 116, label %112
i32 117, label %113
i32 118, label %114
i32 119, label %115
i32 120, label %116
i32 121, label %117
i32 128, label %118
i32 129, label %119
i32 130, label %120
i32 131, label %121
i32 132, label %122
i32 133, label %123
i32 134, label %124
i32 136, label %125
i32 137, label %126
i32 145, label %127
i32 146, label %128
i32 151, label %129
i32 152, label %130
i32 153, label %131
i32 256, label %132
i32 257, label %133
i32 258, label %134
i32 259, label %135
i32 273, label %136
i32 274, label %137
i32 291, label %138
i32 512, label %139
i32 514, label %140
i32 515, label %141
i32 544, label %142
i32 768, label %143
i32 1024, label %144
i32 1664, label %145
i32 4096, label %146
i32 4097, label %147
i32 4098, label %148
i32 4099, label %149
i32 4100, label %150
i32 4352, label %151
i32 5120, label %152
i32 5121, label %153
i32 5376, label %154
i32 8192, label %155
]
55: ; preds = %53
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.22, i64 0, i64 0), i8** %3
br label %158
56: ; preds = %53
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.23, i64 0, i64 0), i8** %3
br label %158
57: ; preds = %53
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.24, i64 0, i64 0), i8** %3
br label %158
58: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.25, i64 0, i64 0), i8** %3
br label %158
59: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.26, i64 0, i64 0), i8** %3
br label %158
60: ; preds = %53
store i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.27, i64 0, i64 0), i8** %3
br label %158
61: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.28, i64 0, i64 0), i8** %3
br label %158
62: ; preds = %53
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.29, i64 0, i64 0), i8** %3
br label %158
63: ; preds = %53
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.30, i64 0, i64 0), i8** %3
br label %158
64: ; preds = %53
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.31, i64 0, i64 0), i8** %3
br label %158
65: ; preds = %53
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.32, i64 0, i64 0), i8** %3
br label %158
66: ; preds = %53
store i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.33, i64 0, i64 0), i8** %3
br label %158
67: ; preds = %53
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.34, i64 0, i64 0), i8** %3
br label %158
68: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.35, i64 0, i64 0), i8** %3
br label %158
69: ; preds = %53
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.36, i64 0, i64 0), i8** %3
br label %158
70: ; preds = %53
store i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.37, i64 0, i64 0), i8** %3
br label %158
71: ; preds = %53
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.38, i64 0, i64 0), i8** %3
br label %158
72: ; preds = %53
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.39, i64 0, i64 0), i8** %3
br label %158
73: ; preds = %53
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.40, i64 0, i64 0), i8** %3
br label %158
74: ; preds = %53
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.41, i64 0, i64 0), i8** %3
br label %158
75: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.42, i64 0, i64 0), i8** %3
br label %158
76: ; preds = %53
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.43, i64 0, i64 0), i8** %3
br label %158
77: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.44, i64 0, i64 0), i8** %3
br label %158
78: ; preds = %53
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.45, i64 0, i64 0), i8** %3
br label %158
79: ; preds = %53
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.46, i64 0, i64 0), i8** %3
br label %158
80: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.47, i64 0, i64 0), i8** %3
br label %158
81: ; preds = %53
store i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.48, i64 0, i64 0), i8** %3
br label %158
82: ; preds = %53
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.49, i64 0, i64 0), i8** %3
br label %158
83: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.50, i64 0, i64 0), i8** %3
br label %158
84: ; preds = %53
store i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.51, i64 0, i64 0), i8** %3
br label %158
85: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.52, i64 0, i64 0), i8** %3
br label %158
86: ; preds = %53
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.53, i64 0, i64 0), i8** %3
br label %158
87: ; preds = %53
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.54, i64 0, i64 0), i8** %3
br label %158
88: ; preds = %53
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.55, i64 0, i64 0), i8** %3
br label %158
89: ; preds = %53
store i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.56, i64 0, i64 0), i8** %3
br label %158
90: ; preds = %53
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.57, i64 0, i64 0), i8** %3
br label %158
91: ; preds = %53
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.58, i64 0, i64 0), i8** %3
br label %158
92: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.59, i64 0, i64 0), i8** %3
br label %158
93: ; preds = %53
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.60, i64 0, i64 0), i8** %3
br label %158
94: ; preds = %53
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.61, i64 0, i64 0), i8** %3
br label %158
95: ; preds = %53
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.62, i64 0, i64 0), i8** %3
br label %158
96: ; preds = %53
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.63, i64 0, i64 0), i8** %3
br label %158
97: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.64, i64 0, i64 0), i8** %3
br label %158
98: ; preds = %53
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.65, i64 0, i64 0), i8** %3
br label %158
99: ; preds = %53
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.66, i64 0, i64 0), i8** %3
br label %158
100: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.67, i64 0, i64 0), i8** %3
br label %158
101: ; preds = %53
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.68, i64 0, i64 0), i8** %3
br label %158
102: ; preds = %53
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.69, i64 0, i64 0), i8** %3
br label %158
103: ; preds = %53
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.70, i64 0, i64 0), i8** %3
br label %158
104: ; preds = %53
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.71, i64 0, i64 0), i8** %3
br label %158
105: ; preds = %53
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.72, i64 0, i64 0), i8** %3
br label %158
106: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.73, i64 0, i64 0), i8** %3
br label %158
107: ; preds = %53
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.68, i64 0, i64 0), i8** %3
br label %158
108: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.74, i64 0, i64 0), i8** %3
br label %158
109: ; preds = %53
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.75, i64 0, i64 0), i8** %3
br label %158
110: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.76, i64 0, i64 0), i8** %3
br label %158
111: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.77, i64 0, i64 0), i8** %3
br label %158
112: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.78, i64 0, i64 0), i8** %3
br label %158
113: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.79, i64 0, i64 0), i8** %3
br label %158
114: ; preds = %53
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.80, i64 0, i64 0), i8** %3
br label %158
115: ; preds = %53
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.81, i64 0, i64 0), i8** %3
br label %158
116: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.82, i64 0, i64 0), i8** %3
br label %158
117: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.83, i64 0, i64 0), i8** %3
br label %158
118: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.84, i64 0, i64 0), i8** %3
br label %158
119: ; preds = %53
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.85, i64 0, i64 0), i8** %3
br label %158
120: ; preds = %53
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.86, i64 0, i64 0), i8** %3
br label %158
121: ; preds = %53
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.87, i64 0, i64 0), i8** %3
br label %158
122: ; preds = %53
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.88, i64 0, i64 0), i8** %3
br label %158
123: ; preds = %53
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.89, i64 0, i64 0), i8** %3
br label %158
124: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.90, i64 0, i64 0), i8** %3
br label %158
125: ; preds = %53
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.91, i64 0, i64 0), i8** %3
br label %158
126: ; preds = %53
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.92, i64 0, i64 0), i8** %3
br label %158
127: ; preds = %53
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.93, i64 0, i64 0), i8** %3
br label %158
128: ; preds = %53
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.94, i64 0, i64 0), i8** %3
br label %158
129: ; preds = %53
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.95, i64 0, i64 0), i8** %3
br label %158
130: ; preds = %53
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.96, i64 0, i64 0), i8** %3
br label %158
131: ; preds = %53
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.97, i64 0, i64 0), i8** %3
br label %158
132: ; preds = %53
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.98, i64 0, i64 0), i8** %3
br label %158
133: ; preds = %53
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.99, i64 0, i64 0), i8** %3
br label %158
134: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.100, i64 0, i64 0), i8** %3
br label %158
135: ; preds = %53
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.101, i64 0, i64 0), i8** %3
br label %158
136: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.102, i64 0, i64 0), i8** %3
br label %158
137: ; preds = %53
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.103, i64 0, i64 0), i8** %3
br label %158
138: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.104, i64 0, i64 0), i8** %3
br label %158
139: ; preds = %53
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.105, i64 0, i64 0), i8** %3
br label %158
140: ; preds = %53
store i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.106, i64 0, i64 0), i8** %3
br label %158
141: ; preds = %53
store i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.107, i64 0, i64 0), i8** %3
br label %158
142: ; preds = %53
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.108, i64 0, i64 0), i8** %3
br label %158
143: ; preds = %53
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.109, i64 0, i64 0), i8** %3
br label %158
144: ; preds = %53
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.110, i64 0, i64 0), i8** %3
br label %158
145: ; preds = %53
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.111, i64 0, i64 0), i8** %3
br label %158
146: ; preds = %53
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.112, i64 0, i64 0), i8** %3
br label %158
147: ; preds = %53
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.113, i64 0, i64 0), i8** %3
br label %158
148: ; preds = %53
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.114, i64 0, i64 0), i8** %3
br label %158
149: ; preds = %53
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.115, i64 0, i64 0), i8** %3
br label %158
150: ; preds = %53
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.116, i64 0, i64 0), i8** %3
br label %158
151: ; preds = %53
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.117, i64 0, i64 0), i8** %3
br label %158
152: ; preds = %53
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.118, i64 0, i64 0), i8** %3
br label %158
153: ; preds = %53
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.91, i64 0, i64 0), i8** %3
br label %158
154: ; preds = %53
store i8* getelementptr inbounds ([27 x i8], [27 x i8]* @.str.119, i64 0, i64 0), i8** %3
br label %158
155: ; preds = %53
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.120, i64 0, i64 0), i8** %3
br label %158
156: ; preds = %53
br label %157
157: ; preds = %2, %156, %52, %31
store i8* null, i8** %3
br label %158
158: ; preds = %157, %155, %154, %153, %152, %151, %150, %149, %148, %147, %146, %145, %144, %143, %142, %141, %140, %139, %138, %137, %136, %135, %134, %133, %132, %131, %130, %129, %128, %127, %126, %125, %124, %123, %122, %121, %120, %119, %118, %117, %116, %115, %114, %113, %112, %111, %110, %109, %108, %107, %106, %105, %104, %103, %102, %101, %100, %99, %98, %97, %96, %95, %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, %35, %30, %29, %28, %27, %26, %25, %24, %23, %22, %21, %20, %19, %18, %17, %16, %15, %14, %13, %12, %11, %10
%159 = load i8*, i8** %3
ret i8* %159
}

LLVM IR (-O2):
@.str = [12 x i8] c"unspecified\00"
@.str.1 = [9 x i8] c"indirect\00"
@.str.2 = [7 x i8] c"nested\00"
@.str.3 = [9 x i8] c"dsp_core\00"
@.str.4 = [11 x i8] c"dsp_data_8\00"
@.str.5 = [12 x i8] c"dsp_data_16\00"
@.str.6 = [12 x i8] c"dsp_data_24\00"
@.str.7 = [12 x i8] c"dsp_data_32\00"
@.str.8 = [8 x i8] c"display\00"
@.str.9 = [14 x i8] c"mulaw_squelch\00"
@.str.10 = [11 x i8] c"emphasized\00"
@.str.11 = [11 x i8] c"compressed\00"
@.str.12 = [22 x i8] c"compressed_emphasized\00"
@.str.13 = [13 x i8] c"dsp_commands\00"
@.str.14 = [21 x i8] c"dsp_commands_samples\00"
@.str.15 = [11 x i8] c"adpcm_g721\00"
@.str.16 = [11 x i8] c"adpcm_g722\00"
@.str.17 = [11 x i8] c"adpcm_g723\00"
@.str.18 = [13 x i8] c"adpcm_g723_5\00"
@.str.19 = [4 x i8] c"aes\00"
@.str.20 = [14 x i8] c"delat_mulaw_8\00"
@.str.21 = [9 x i8] c"%c%c%c%c\00"
@.str.22 = [6 x i8] c"ADPCM\00"
@.str.23 = [6 x i8] c"VSELP\00"
@.str.24 = [9 x i8] c"IBM_CVSD\00"
@.str.25 = [10 x i8] c"OKI_ADPCM\00"
@.str.26 = [10 x i8] c"DVI_ADPCM\00"
@.str.27 = [17 x i8] c"MediaSpace_ADPCM\00"
@.str.28 = [13 x i8] c"Sierra_ADPCM\00"
@.str.29 = [11 x i8] c"G723_ADPCM\00"
@.str.30 = [8 x i8] c"DIGISTD\00"
@.str.31 = [8 x i8] c"DIGIFIX\00"
@.str.32 = [15 x i8] c"Dialogic ADPCM\00"
@.str.33 = [18 x i8] c"Mediavision ADPCM\00"
@.str.34 = [12 x i8] c"HP cu codec\00"
@.str.35 = [13 x i8] c"Yamaha_ADPCM\00"
@.str.36 = [7 x i8] c"SONARC\00"
@.str.37 = [20 x i8] c"DSPGroup_TrueSpeech\00"
@.str.38 = [8 x i8] c"EchoSC1\00"
@.str.39 = [15 x i8] c"AudioFile_AF36\00"
@.str.40 = [5 x i8] c"APTX\00"
@.str.41 = [15 x i8] c"AudioFile_AF10\00"
@.str.42 = [13 x i8] c"prosody 1612\00"
@.str.43 = [4 x i8] c"lrc\00"
@.str.44 = [10 x i8] c"Dolby_Ac2\00"
@.str.45 = [7 x i8] c"GSM610\00"
@.str.46 = [16 x i8] c"MSN audio codec\00"
@.str.47 = [13 x i8] c"Antext_ADPCM\00"
@.str.48 = [18 x i8] c"Control_res_vqlpc\00"
@.str.49 = [9 x i8] c"DIGIREAL\00"
@.str.50 = [10 x i8] c"DIGIADPCM\00"
@.str.51 = [17 x i8] c"Control_res_cr10\00"
@.str.52 = [13 x i8] c"NMS_VBXADPCM\00"
@.str.53 = [11 x i8] c"oland rdac\00"
@.str.54 = [9 x i8] c"echo sc3\00"
@.str.55 = [15 x i8] c"Rockwell adpcm\00"
@.str.56 = [24 x i8] c"Rockwell digitalk codec\00"
@.str.57 = [6 x i8] c"Xebec\00"
@.str.58 = [11 x i8] c"G721_ADPCM\00"
@.str.59 = [10 x i8] c"G728 CELP\00"
@.str.60 = [8 x i8] c"MS G723\00"
@.str.61 = [5 x i8] c"MPEG\00"
@.str.62 = [5 x i8] c"RT24\00"
@.str.63 = [4 x i8] c"PAC\00"
@.str.64 = [13 x i8] c"Mpeg layer 3\00"
@.str.65 = [12 x i8] c"Lucent G723\00"
@.str.66 = [7 x i8] c"Cirrus\00"
@.str.67 = [13 x i8] c"ESS Tech pcm\00"
@.str.68 = [9 x i8] c"voxware \00"
@.str.69 = [14 x i8] c"canopus atrac\00"
@.str.70 = [5 x i8] c"G726\00"
@.str.71 = [5 x i8] c"G722\00"
@.str.72 = [5 x i8] c"DSAT\00"
@.str.73 = [13 x i8] c"DSAT display\00"
@.str.74 = [13 x i8] c"voxware ac8 \00"
@.str.75 = [14 x i8] c"voxware ac10 \00"
@.str.76 = [13 x i8] c"voxware ac16\00"
@.str.77 = [13 x i8] c"voxware ac20\00"
@.str.78 = [13 x i8] c"voxware rt24\00"
@.str.79 = [13 x i8] c"voxware rt29\00"
@.str.80 = [15 x i8] c"voxware rt29hw\00"
@.str.81 = [14 x i8] c"voxware vr12 \00"
@.str.82 = [13 x i8] c"voxware vr18\00"
@.str.83 = [13 x i8] c"voxware tq40\00"
@.str.84 = [10 x i8] c"softsound\00"
@.str.85 = [14 x i8] c"voxware tq60 \00"
@.str.86 = [8 x i8] c"MS RT24\00"
@.str.87 = [6 x i8] c"G729A\00"
@.str.88 = [9 x i8] c"MVI_MVI2\00"
@.str.89 = [8 x i8] c"DF G726\00"
@.str.90 = [10 x i8] c"DF GSM610\00"
@.str.91 = [8 x i8] c"isaudio\00"
@.str.92 = [7 x i8] c"onlive\00"
@.str.93 = [6 x i8] c"sbc24\00"
@.str.94 = [16 x i8] c"dolby ac3 spdif\00"
@.str.95 = [12 x i8] c"zyxel adpcm\00"
@.str.96 = [14 x i8] c"philips lpcbb\00"
@.str.97 = [7 x i8] c"packed\00"
@.str.98 = [15 x i8] c"rhetorex adpcm\00"
@.str.99 = [5 x i8] c"Irat\00"
@.str.100 = [10 x i8] c"IBM_alaw?\00"
@.str.101 = [11 x i8] c"IBM_ADPCM?\00"
@.str.102 = [10 x i8] c"vivo G723\00"
@.str.103 = [11 x i8] c"vivo siren\00"
@.str.104 = [13 x i8] c"digital g273\00"
@.str.105 = [15 x i8] c"Creative_ADPCM\00"
@.str.106 = [22 x i8] c"Creative fastspeech 8\00"
@.str.107 = [23 x i8] c"Creative fastspeech 10\00"
@.str.108 = [12 x i8] c"quarterdeck\00"
@.str.109 = [13 x i8] c"FM_TOWNS_SND\00"
@.str.110 = [12 x i8] c"BTV digital\00"
@.str.111 = [10 x i8] c"VME vmpcm\00"
@.str.112 = [7 x i8] c"OLIGSM\00"
@.str.113 = [9 x i8] c"OLIADPCM\00"
@.str.114 = [8 x i8] c"OLICELP\00"
@.str.115 = [7 x i8] c"OLISBC\00"
@.str.116 = [7 x i8] c"OLIOPR\00"
@.str.117 = [9 x i8] c"LH codec\00"
@.str.118 = [7 x i8] c"Norris\00"
@.str.119 = [27 x i8] c"Soundspace musicompression\00"
@.str.120 = [4 x i8] c"DVM\00"
@switch.table.decode_format = [30 x i8*] [i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str, i64 0, i64 0), i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.1, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.4, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.5, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.7, i64 0, i64 0), i8* null, i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.8, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.9, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.10, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.11, i64 0, i64 0), i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.12, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.13, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.14, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.15, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.16, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.17, i64 0, i64 0), i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.18, i64 0, i64 0), i8* null, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.19, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.20, i64 0, i64 0)]
define i8* @decode_format(i32 %0, i32 %1) {
switch i32 %1, label %118 [
i32 0, label %3
i32 1, label %5
i32 2, label %17
]
3: ; preds = %2
%4 = icmp ult i32 %0, 30
br i1 %4, label %119, label %118
5: ; preds = %2
%6 = icmp eq i32 %0, 0
br i1 %6, label %118, label %7
7: ; preds = %5
%8 = tail call i64 @calloc(i32 5, i32 1)
%9 = inttoptr i64 %8 to i8*
%10 = lshr i32 %0, 24
%11 = lshr i32 %0, 16
%12 = and i32 %11, 255
%13 = lshr i32 %0, 8
%14 = and i32 %13, 255
%15 = and i32 %0, 255
%16 = tail call i32 @sprintf(i8* dereferenceable(1) %9, i8* dereferenceable(1) getelementptr inbounds ([9 x i8], [9 x i8]* @.str.21, i64 0, i64 0), i32 %10, i32 %12, i32 %14, i32 %15)
br label %123
17: ; preds = %2
switch i32 %0, label %118 [
i32 2, label %123
i32 4, label %18
i32 5, label %19
i32 16, label %20
i32 17, label %21
i32 18, label %22
i32 19, label %23
i32 20, label %24
i32 21, label %25
i32 22, label %26
i32 23, label %27
i32 24, label %28
i32 25, label %29
i32 32, label %30
i32 33, label %31
i32 34, label %32
i32 35, label %33
i32 36, label %34
i32 37, label %35
i32 38, label %36
i32 39, label %37
i32 40, label %38
i32 48, label %39
i32 49, label %40
i32 50, label %41
i32 51, label %42
i32 52, label %43
i32 53, label %44
i32 54, label %45
i32 55, label %46
i32 56, label %47
i32 57, label %48
i32 58, label %49
i32 59, label %50
i32 60, label %51
i32 61, label %52
i32 64, label %53
i32 65, label %54
i32 66, label %55
i32 80, label %56
i32 82, label %57
i32 83, label %58
i32 85, label %59
i32 89, label %60
i32 96, label %61
i32 97, label %62
i32 98, label %63
i32 99, label %64
i32 100, label %65
i32 101, label %66
i32 102, label %67
i32 103, label %68
i32 105, label %69
i32 112, label %70
i32 113, label %71
i32 114, label %72
i32 115, label %73
i32 116, label %74
i32 117, label %75
i32 118, label %76
i32 119, label %77
i32 120, label %78
i32 121, label %79
i32 128, label %80
i32 129, label %81
i32 130, label %82
i32 131, label %83
i32 132, label %84
i32 133, label %85
i32 134, label %86
i32 136, label %87
i32 137, label %88
i32 145, label %89
i32 146, label %90
i32 151, label %91
i32 152, label %92
i32 153, label %93
i32 256, label %94
i32 257, label %95
i32 258, label %96
i32 259, label %97
i32 273, label %98
i32 274, label %99
i32 291, label %100
i32 512, label %101
i32 514, label %102
i32 515, label %103
i32 544, label %104
i32 768, label %105
i32 1024, label %106
i32 1664, label %107
i32 4096, label %108
i32 4097, label %109
i32 4098, label %110
i32 4099, label %111
i32 4100, label %112
i32 4352, label %113
i32 5120, label %114
i32 5121, label %115
i32 5376, label %116
i32 8192, label %117
]
18: ; preds = %17
br label %123
19: ; preds = %17
br label %123
20: ; preds = %17
br label %123
21: ; preds = %17
br label %123
22: ; preds = %17
br label %123
23: ; preds = %17
br label %123
24: ; preds = %17
br label %123
25: ; preds = %17
br label %123
26: ; preds = %17
br label %123
27: ; preds = %17
br label %123
28: ; preds = %17
br label %123
29: ; preds = %17
br label %123
30: ; preds = %17
br label %123
31: ; preds = %17
br label %123
32: ; preds = %17
br label %123
33: ; preds = %17
br label %123
34: ; preds = %17
br label %123
35: ; preds = %17
br label %123
36: ; preds = %17
br label %123
37: ; preds = %17
br label %123
38: ; preds = %17
br label %123
39: ; preds = %17
br label %123
40: ; preds = %17
br label %123
41: ; preds = %17
br label %123
42: ; preds = %17
br label %123
43: ; preds = %17
br label %123
44: ; preds = %17
br label %123
45: ; preds = %17
br label %123
46: ; preds = %17
br label %123
47: ; preds = %17
br label %123
48: ; preds = %17
br label %123
49: ; preds = %17
br label %123
50: ; preds = %17
br label %123
51: ; preds = %17
br label %123
52: ; preds = %17
br label %123
53: ; preds = %17
br label %123
54: ; preds = %17
br label %123
55: ; preds = %17
br label %123
56: ; preds = %17
br label %123
57: ; preds = %17
br label %123
58: ; preds = %17
br label %123
59: ; preds = %17
br label %123
60: ; preds = %17
br label %123
61: ; preds = %17
br label %123
62: ; preds = %17
br label %123
63: ; preds = %17
br label %123
64: ; preds = %17
br label %123
65: ; preds = %17
br label %123
66: ; preds = %17
br label %123
67: ; preds = %17
br label %123
68: ; preds = %17
br label %123
69: ; preds = %17
br label %123
70: ; preds = %17
br label %123
71: ; preds = %17
br label %123
72: ; preds = %17
br label %123
73: ; preds = %17
br label %123
74: ; preds = %17
br label %123
75: ; preds = %17
br label %123
76: ; preds = %17
br label %123
77: ; preds = %17
br label %123
78: ; preds = %17
br label %123
79: ; preds = %17
br label %123
80: ; preds = %17
br label %123
81: ; preds = %17
br label %123
82: ; preds = %17
br label %123
83: ; preds = %17
br label %123
84: ; preds = %17
br label %123
85: ; preds = %17
br label %123
86: ; preds = %17
br label %123
87: ; preds = %17
br label %123
88: ; preds = %17
br label %123
89: ; preds = %17
br label %123
90: ; preds = %17
br label %123
91: ; preds = %17
br label %123
92: ; preds = %17
br label %123
93: ; preds = %17
br label %123
94: ; preds = %17
br label %123
95: ; preds = %17
br label %123
96: ; preds = %17
br label %123
97: ; preds = %17
br label %123
98: ; preds = %17
br label %123
99: ; preds = %17
br label %123
100: ; preds = %17
br label %123
101: ; preds = %17
br label %123
102: ; preds = %17
br label %123
103: ; preds = %17
br label %123
104: ; preds = %17
br label %123
105: ; preds = %17
br label %123
106: ; preds = %17
br label %123
107: ; preds = %17
br label %123
108: ; preds = %17
br label %123
109: ; preds = %17
br label %123
110: ; preds = %17
br label %123
111: ; preds = %17
br label %123
112: ; preds = %17
br label %123
113: ; preds = %17
br label %123
114: ; preds = %17
br label %123
115: ; preds = %17
br label %123
116: ; preds = %17
br label %123
117: ; preds = %17
br label %123
118: ; preds = %3, %17, %5, %2
br label %123
119: ; preds = %3
%120 = sext i32 %0 to i64
%121 = getelementptr inbounds [30 x i8*], [30 x i8*]* @switch.table.decode_format, i64 0, i64 %120
%122 = load i8*, i8** %121
br label %123
123: ; preds = %119, %17, %118, %117, %116, %115, %114, %113, %112, %111, %110, %109, %108, %107, %106, %105, %104, %103, %102, %101, %100, %99, %98, %97, %96, %95, %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, %7
%124 = phi i8* [ null, %118 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.120, i64 0, i64 0), %117 ], [ getelementptr inbounds ([27 x i8], [27 x i8]* @.str.119, i64 0, i64 0), %116 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.91, i64 0, i64 0), %115 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.118, i64 0, i64 0), %114 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.117, i64 0, i64 0), %113 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.116, i64 0, i64 0), %112 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.115, i64 0, i64 0), %111 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.114, i64 0, i64 0), %110 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.113, i64 0, i64 0), %109 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.112, i64 0, i64 0), %108 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.111, i64 0, i64 0), %107 ], [ getelementptr inbounds ([12 x i8], [12 x i8]* @.str.110, i64 0, i64 0), %106 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.109, i64 0, i64 0), %105 ], [ getelementptr inbounds ([12 x i8], [12 x i8]* @.str.108, i64 0, i64 0), %104 ], [ getelementptr inbounds ([23 x i8], [23 x i8]* @.str.107, i64 0, i64 0), %103 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.106, i64 0, i64 0), %102 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.105, i64 0, i64 0), %101 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.104, i64 0, i64 0), %100 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.103, i64 0, i64 0), %99 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.102, i64 0, i64 0), %98 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.101, i64 0, i64 0), %97 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.100, i64 0, i64 0), %96 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.99, i64 0, i64 0), %95 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.98, i64 0, i64 0), %94 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.97, i64 0, i64 0), %93 ], [ getelementptr inbounds ([14 x i8], [14 x i8]* @.str.96, i64 0, i64 0), %92 ], [ getelementptr inbounds ([12 x i8], [12 x i8]* @.str.95, i64 0, i64 0), %91 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.94, i64 0, i64 0), %90 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.93, i64 0, i64 0), %89 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.92, i64 0, i64 0), %88 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.91, i64 0, i64 0), %87 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.90, i64 0, i64 0), %86 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.89, i64 0, i64 0), %85 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.88, i64 0, i64 0), %84 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.87, i64 0, i64 0), %83 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.86, i64 0, i64 0), %82 ], [ getelementptr inbounds ([14 x i8], [14 x i8]* @.str.85, i64 0, i64 0), %81 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.84, i64 0, i64 0), %80 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.83, i64 0, i64 0), %79 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.82, i64 0, i64 0), %78 ], [ getelementptr inbounds ([14 x i8], [14 x i8]* @.str.81, i64 0, i64 0), %77 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.80, i64 0, i64 0), %76 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.79, i64 0, i64 0), %75 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.78, i64 0, i64 0), %74 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.77, i64 0, i64 0), %73 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.76, i64 0, i64 0), %72 ], [ getelementptr inbounds ([14 x i8], [14 x i8]* @.str.75, i64 0, i64 0), %71 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.74, i64 0, i64 0), %70 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.68, i64 0, i64 0), %69 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.73, i64 0, i64 0), %68 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.72, i64 0, i64 0), %67 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.71, i64 0, i64 0), %66 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.70, i64 0, i64 0), %65 ], [ getelementptr inbounds ([14 x i8], [14 x i8]* @.str.69, i64 0, i64 0), %64 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.68, i64 0, i64 0), %63 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.67, i64 0, i64 0), %62 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.66, i64 0, i64 0), %61 ], [ getelementptr inbounds ([12 x i8], [12 x i8]* @.str.65, i64 0, i64 0), %60 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.64, i64 0, i64 0), %59 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.63, i64 0, i64 0), %58 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.62, i64 0, i64 0), %57 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.61, i64 0, i64 0), %56 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.60, i64 0, i64 0), %55 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.59, i64 0, i64 0), %54 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.58, i64 0, i64 0), %53 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.57, i64 0, i64 0), %52 ], [ getelementptr inbounds ([24 x i8], [24 x i8]* @.str.56, i64 0, i64 0), %51 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.55, i64 0, i64 0), %50 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.54, i64 0, i64 0), %49 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.53, i64 0, i64 0), %48 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.52, i64 0, i64 0), %47 ], [ getelementptr inbounds ([17 x i8], [17 x i8]* @.str.51, i64 0, i64 0), %46 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.50, i64 0, i64 0), %45 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.49, i64 0, i64 0), %44 ], [ getelementptr inbounds ([18 x i8], [18 x i8]* @.str.48, i64 0, i64 0), %43 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.47, i64 0, i64 0), %42 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.46, i64 0, i64 0), %41 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.45, i64 0, i64 0), %40 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.44, i64 0, i64 0), %39 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.43, i64 0, i64 0), %38 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.42, i64 0, i64 0), %37 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.41, i64 0, i64 0), %36 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.40, i64 0, i64 0), %35 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.39, i64 0, i64 0), %34 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.38, i64 0, i64 0), %33 ], [ getelementptr inbounds ([20 x i8], [20 x i8]* @.str.37, i64 0, i64 0), %32 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.36, i64 0, i64 0), %31 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.35, i64 0, i64 0), %30 ], [ getelementptr inbounds ([12 x i8], [12 x i8]* @.str.34, i64 0, i64 0), %29 ], [ getelementptr inbounds ([18 x i8], [18 x i8]* @.str.33, i64 0, i64 0), %28 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.32, i64 0, i64 0), %27 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.31, i64 0, i64 0), %26 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.30, i64 0, i64 0), %25 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.29, i64 0, i64 0), %24 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.28, i64 0, i64 0), %23 ], [ getelementptr inbounds ([17 x i8], [17 x i8]* @.str.27, i64 0, i64 0), %22 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.26, i64 0, i64 0), %21 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.25, i64 0, i64 0), %20 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.24, i64 0, i64 0), %19 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.23, i64 0, i64 0), %18 ], [ %9, %7 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.22, i64 0, i64 0), %17 ], [ %122, %119 ]
ret i8* %124
}