#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 */
int /*<<< orphan*/ memset(char *, int /*<<< orphan*/, int);
int /*<<< orphan*/ printf(char *, char *, char *);
scalar_t__ strcmp(char *, char *);
int /*<<< orphan*/ strncpy(char *, char *, int);
int fisica_regla9(char *clave, int debug) {
  int substituted = 0;
  char *correcta = NULL;
  if (strcmp(clave, "BUEI") == 0)
    correcta = "BUEX";
  else if (strcmp(clave, "BUEI") == 0)
    correcta = "BUEX";
  else if (strcmp(clave, "BUEY") == 0)
    correcta = "BUEX";
  else if (strcmp(clave, "CACA") == 0)
    correcta = "CACX";
  else if (strcmp(clave, "CACO") == 0)
    correcta = "CACX";
  else if (strcmp(clave, "CAGA") == 0)
    correcta = "CAGX";
  else if (strcmp(clave, "CAGO") == 0)
    correcta = "CAGX";
  else if (strcmp(clave, "CAKA") == 0)
    correcta = "CAKX";
  else if (strcmp(clave, "COGE") == 0)
    correcta = "COGX";
  else if (strcmp(clave, "COJA") == 0)
    correcta = "COJX";
  else if (strcmp(clave, "COJE") == 0)
    correcta = "COJX";
  else if (strcmp(clave, "COJI") == 0)
    correcta = "COJX";
  else if (strcmp(clave, "COJO") == 0)
    correcta = "COJX";
  else if (strcmp(clave, "CULO") == 0)
    correcta = "CULX";
  else if (strcmp(clave, "FETO") == 0)
    correcta = "FETX";
  else if (strcmp(clave, "GUEY") == 0)
    correcta = "GUEX";
  else if (strcmp(clave, "JOTO") == 0)
    correcta = "JOTX";
  else if (strcmp(clave, "KACA") == 0)
    correcta = "KACX";
  else if (strcmp(clave, "KACO") == 0)
    correcta = "KACX";
  else if (strcmp(clave, "KAGA") == 0)
    correcta = "KAGX";
  else if (strcmp(clave, "KAGO") == 0)
    correcta = "KAGX";
  else if (strcmp(clave, "KOGE") == 0)
    correcta = "KOGX";
  else if (strcmp(clave, "KOJO") == 0)
    correcta = "KOJX";
  else if (strcmp(clave, "KAKA") == 0)
    correcta = "KAKX";
  else if (strcmp(clave, "KULO") == 0)
    correcta = "KULX";
  else if (strcmp(clave, "MAME") == 0)
    correcta = "MAMX";
  else if (strcmp(clave, "MAMO") == 0)
    correcta = "MAMX";
  else if (strcmp(clave, "MEAR") == 0)
    correcta = "MEAX";
  else if (strcmp(clave, "MEON") == 0)
    correcta = "MEOX";
  else if (strcmp(clave, "MION") == 0)
    correcta = "MIOX";
  else if (strcmp(clave, "MOCO") == 0)
    correcta = "MOCX";
  else if (strcmp(clave, "MULA") == 0)
    correcta = "MULX";
  else if (strcmp(clave, "PEDA") == 0)
    correcta = "PEDX";
  else if (strcmp(clave, "PEDO") == 0)
    correcta = "PEDX";
  else if (strcmp(clave, "PENE") == 0)
    correcta = "PENX";
  else if (strcmp(clave, "PUTA") == 0)
    correcta = "PUTX";
  else if (strcmp(clave, "PUTO") == 0)
    correcta = "PUTX";
  else if (strcmp(clave, "QULO") == 0)
    correcta = "QULX";
  else if (strcmp(clave, "RATA") == 0)
    correcta = "RATX";
  else if (strcmp(clave, "RUIN") == 0)
    correcta = "RUIX";
  if (correcta != NULL) {
    if (debug)
      printf("Palabra inconveniente para formar parte de la clave del Registro "
             "Federal de Contribuyentes (%s)... sustituida por \"%s\".\n",
             clave, correcta);
    substituted = 1;
    memset(clave, 0, 5);
    strncpy(clave, correcta, 4);
  }
  return substituted;
}


x86 assembly (clang, -O0):
<fisica_regla9>:
push   %rbp
mov    %rsp,%rbp
sub    $0x20,%rsp
mov    %rdi,-0x8(%rbp)
mov    %esi,-0xc(%rbp)
movl   $0x0,-0x10(%rbp)
movq   $0x0,-0x18(%rbp)
mov    -0x8(%rbp),%rdi
lea    0xe97(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1188 <fisica_regla9+0x48>
lea    0xe86(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    18ac <fisica_regla9+0x76c>
mov    -0x8(%rbp),%rdi
lea    0xe6d(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    11b2 <fisica_regla9+0x72>
lea    0xe5c(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    18a7 <fisica_regla9+0x767>
mov    -0x8(%rbp),%rdi
lea    0xe4d(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    11dc <fisica_regla9+0x9c>
lea    0xe32(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    18a2 <fisica_regla9+0x762>
mov    -0x8(%rbp),%rdi
lea    0xe28(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1206 <fisica_regla9+0xc6>
lea    0xe17(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    189d <fisica_regla9+0x75d>
mov    -0x8(%rbp),%rdi
lea    0xe08(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1230 <fisica_regla9+0xf0>
lea    0xded(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1898 <fisica_regla9+0x758>
mov    -0x8(%rbp),%rdi
lea    0xde3(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    125a <fisica_regla9+0x11a>
lea    0xdd2(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1893 <fisica_regla9+0x753>
mov    -0x8(%rbp),%rdi
lea    0xdc3(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1284 <fisica_regla9+0x144>
lea    0xda8(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    188e <fisica_regla9+0x74e>
mov    -0x8(%rbp),%rdi
lea    0xd9e(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    12ae <fisica_regla9+0x16e>
lea    0xd8d(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1889 <fisica_regla9+0x749>
mov    -0x8(%rbp),%rdi
lea    0xd7e(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    12d8 <fisica_regla9+0x198>
lea    0xd6d(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1884 <fisica_regla9+0x744>
mov    -0x8(%rbp),%rdi
lea    0xd5e(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1302 <fisica_regla9+0x1c2>
lea    0xd4d(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    187f <fisica_regla9+0x73f>
mov    -0x8(%rbp),%rdi
lea    0xd3e(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    132c <fisica_regla9+0x1ec>
lea    0xd23(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    187a <fisica_regla9+0x73a>
mov    -0x8(%rbp),%rdi
lea    0xd19(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1356 <fisica_regla9+0x216>
lea    0xcf9(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1875 <fisica_regla9+0x735>
mov    -0x8(%rbp),%rdi
lea    0xcf4(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1380 <fisica_regla9+0x240>
lea    0xccf(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1870 <fisica_regla9+0x730>
mov    -0x8(%rbp),%rdi
lea    0xccf(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    13aa <fisica_regla9+0x26a>
lea    0xcbe(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    186b <fisica_regla9+0x72b>
mov    -0x8(%rbp),%rdi
lea    0xcaf(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    13d4 <fisica_regla9+0x294>
lea    0xc9e(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1866 <fisica_regla9+0x726>
mov    -0x8(%rbp),%rdi
lea    0xc8f(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    13fe <fisica_regla9+0x2be>
lea    0xc7e(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1861 <fisica_regla9+0x721>
mov    -0x8(%rbp),%rdi
lea    0xc6f(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1428 <fisica_regla9+0x2e8>
lea    0xc5e(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    185c <fisica_regla9+0x71c>
mov    -0x8(%rbp),%rdi
lea    0xc4f(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1452 <fisica_regla9+0x312>
lea    0xc3e(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1857 <fisica_regla9+0x717>
mov    -0x8(%rbp),%rdi
lea    0xc2f(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    147c <fisica_regla9+0x33c>
lea    0xc14(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1852 <fisica_regla9+0x712>
mov    -0x8(%rbp),%rdi
lea    0xc0a(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    14a6 <fisica_regla9+0x366>
lea    0xbf9(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    184d <fisica_regla9+0x70d>
mov    -0x8(%rbp),%rdi
lea    0xbea(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    14d0 <fisica_regla9+0x390>
lea    0xbcf(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1848 <fisica_regla9+0x708>
mov    -0x8(%rbp),%rdi
lea    0xbc5(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    14fa <fisica_regla9+0x3ba>
lea    0xbb4(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1843 <fisica_regla9+0x703>
mov    -0x8(%rbp),%rdi
lea    0xba5(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1524 <fisica_regla9+0x3e4>
lea    0xb94(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    183e <fisica_regla9+0x6fe>
mov    -0x8(%rbp),%rdi
lea    0xb85(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    154e <fisica_regla9+0x40e>
lea    0xb74(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1839 <fisica_regla9+0x6f9>
mov    -0x8(%rbp),%rdi
lea    0xb65(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1578 <fisica_regla9+0x438>
lea    0xb54(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1834 <fisica_regla9+0x6f4>
mov    -0x8(%rbp),%rdi
lea    0xb45(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    15a2 <fisica_regla9+0x462>
lea    0xb34(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    182f <fisica_regla9+0x6ef>
mov    -0x8(%rbp),%rdi
lea    0xb25(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    15cc <fisica_regla9+0x48c>
lea    0xb0a(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    182a <fisica_regla9+0x6ea>
mov    -0x8(%rbp),%rdi
lea    0xb00(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    15f6 <fisica_regla9+0x4b6>
lea    0xaef(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1825 <fisica_regla9+0x6e5>
mov    -0x8(%rbp),%rdi
lea    0xae0(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1620 <fisica_regla9+0x4e0>
lea    0xacf(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1820 <fisica_regla9+0x6e0>
mov    -0x8(%rbp),%rdi
lea    0xac0(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    164a <fisica_regla9+0x50a>
lea    0xaaf(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    181b <fisica_regla9+0x6db>
mov    -0x8(%rbp),%rdi
lea    0xaa0(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1674 <fisica_regla9+0x534>
lea    0xa8f(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1816 <fisica_regla9+0x6d6>
mov    -0x8(%rbp),%rdi
lea    0xa80(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    169e <fisica_regla9+0x55e>
lea    0xa6f(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1811 <fisica_regla9+0x6d1>
mov    -0x8(%rbp),%rdi
lea    0xa60(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    16c8 <fisica_regla9+0x588>
lea    0xa4f(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    180c <fisica_regla9+0x6cc>
mov    -0x8(%rbp),%rdi
lea    0xa40(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    16f2 <fisica_regla9+0x5b2>
lea    0xa25(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1807 <fisica_regla9+0x6c7>
mov    -0x8(%rbp),%rdi
lea    0xa1b(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    171c <fisica_regla9+0x5dc>
lea    0xa0a(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    1802 <fisica_regla9+0x6c2>
mov    -0x8(%rbp),%rdi
lea    0x9fb(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1746 <fisica_regla9+0x606>
lea    0x9ea(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    17fd <fisica_regla9+0x6bd>
mov    -0x8(%rbp),%rdi
lea    0x9db(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    1770 <fisica_regla9+0x630>
lea    0x9c0(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    17f8 <fisica_regla9+0x6b8>
mov    -0x8(%rbp),%rdi
lea    0x9b6(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    179a <fisica_regla9+0x65a>
lea    0x9a5(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    17f3 <fisica_regla9+0x6b3>
mov    -0x8(%rbp),%rdi
lea    0x996(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    17c4 <fisica_regla9+0x684>
lea    0x985(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    17ee <fisica_regla9+0x6ae>
mov    -0x8(%rbp),%rdi
lea    0x976(%rip),%rsi
call   1060 <strcmp@plt>
cmp    $0x0,%rax
jne    17e9 <fisica_regla9+0x6a9>
lea    0x965(%rip),%rax
mov    %rax,-0x18(%rbp)
jmp    17ee <fisica_regla9+0x6ae>
jmp    17f3 <fisica_regla9+0x6b3>
jmp    17f8 <fisica_regla9+0x6b8>
jmp    17fd <fisica_regla9+0x6bd>
jmp    1802 <fisica_regla9+0x6c2>
jmp    1807 <fisica_regla9+0x6c7>
jmp    180c <fisica_regla9+0x6cc>
jmp    1811 <fisica_regla9+0x6d1>
jmp    1816 <fisica_regla9+0x6d6>
jmp    181b <fisica_regla9+0x6db>
jmp    1820 <fisica_regla9+0x6e0>
jmp    1825 <fisica_regla9+0x6e5>
jmp    182a <fisica_regla9+0x6ea>
jmp    182f <fisica_regla9+0x6ef>
jmp    1834 <fisica_regla9+0x6f4>
jmp    1839 <fisica_regla9+0x6f9>
jmp    183e <fisica_regla9+0x6fe>
jmp    1843 <fisica_regla9+0x703>
jmp    1848 <fisica_regla9+0x708>
jmp    184d <fisica_regla9+0x70d>
jmp    1852 <fisica_regla9+0x712>
jmp    1857 <fisica_regla9+0x717>
jmp    185c <fisica_regla9+0x71c>
jmp    1861 <fisica_regla9+0x721>
jmp    1866 <fisica_regla9+0x726>
jmp    186b <fisica_regla9+0x72b>
jmp    1870 <fisica_regla9+0x730>
jmp    1875 <fisica_regla9+0x735>
jmp    187a <fisica_regla9+0x73a>
jmp    187f <fisica_regla9+0x73f>
jmp    1884 <fisica_regla9+0x744>
jmp    1889 <fisica_regla9+0x749>
jmp    188e <fisica_regla9+0x74e>
jmp    1893 <fisica_regla9+0x753>
jmp    1898 <fisica_regla9+0x758>
jmp    189d <fisica_regla9+0x75d>
jmp    18a2 <fisica_regla9+0x762>
jmp    18a7 <fisica_regla9+0x767>
jmp    18ac <fisica_regla9+0x76c>
cmpq   $0x0,-0x18(%rbp)
je     18fe <fisica_regla9+0x7be>
cmpl   $0x0,-0xc(%rbp)
je     18d5 <fisica_regla9+0x795>
mov    -0x8(%rbp),%rsi
mov    -0x18(%rbp),%rdx
lea    0x87f(%rip),%rdi
call   1040 <printf@plt>
movl   $0x1,-0x10(%rbp)
mov    -0x8(%rbp),%rdi
xor    %esi,%esi
mov    $0x5,%edx
call   1050 <memset@plt>
mov    -0x8(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x4,%edx
call   1030 <strncpy@plt>
mov    -0x10(%rbp),%eax
add    $0x20,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<fisica_regla9>:
push   %rbp
push   %r14
push   %rbx
mov    %esi,%r14d
mov    %rdi,%rbx
lea    0xeaf(%rip),%rsi
call   1060 <strcmp@plt>
lea    0xea8(%rip),%rbp
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xe93(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xe85(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xe72(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
lea    0xe68(%rip),%rbp
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xe5d(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xe4a(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
lea    0xe40(%rip),%rbp
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xe35(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xe22(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1548 <fisica_regla9+0x408>
lea    0xe14(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1551 <fisica_regla9+0x411>
lea    0xe06(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
lea    0xdfc(%rip),%rbp
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xdf1(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xdde(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xdcb(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xdb8(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1598 <fisica_regla9+0x458>
lea    0xdaa(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15a1 <fisica_regla9+0x461>
lea    0xd9c(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15aa <fisica_regla9+0x46a>
lea    0xd8e(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15b3 <fisica_regla9+0x473>
lea    0xd80(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
lea    0xd76(%rip),%rbp
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xd6b(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xd58(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
lea    0xd4e(%rip),%rbp
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xd43(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xd30(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15bc <fisica_regla9+0x47c>
lea    0xd22(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15c5 <fisica_regla9+0x485>
lea    0xd14(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15ce <fisica_regla9+0x48e>
lea    0xd06(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15d7 <fisica_regla9+0x497>
lea    0xcf8(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
lea    0xcee(%rip),%rbp
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xce3(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xcd0(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15e3 <fisica_regla9+0x4a3>
lea    0xcc2(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15ef <fisica_regla9+0x4af>
lea    0xcb4(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     15fb <fisica_regla9+0x4bb>
lea    0xca6(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1607 <fisica_regla9+0x4c7>
lea    0xc98(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1613 <fisica_regla9+0x4d3>
lea    0xc8a(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
lea    0xc80(%rip),%rbp
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xc75(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xc62(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     161f <fisica_regla9+0x4df>
lea    0xc54(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
lea    0xc4a(%rip),%rbp
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xc43(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1558 <fisica_regla9+0x418>
lea    0xc34(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     162b <fisica_regla9+0x4eb>
lea    0xc26(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
test   %rax,%rax
je     1637 <fisica_regla9+0x4f7>
lea    0xc18(%rip),%rsi
mov    %rbx,%rdi
call   1060 <strcmp@plt>
mov    %rax,%rcx
xor    %eax,%eax
test   %rcx,%rcx
jne    1593 <fisica_regla9+0x453>
lea    0xc04(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xae3(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xae4(%rip),%rbp
test   %r14d,%r14d
je     156f <fisica_regla9+0x42f>
lea    0xbeb(%rip),%rdi
mov    %rbx,%rsi
mov    %rbp,%rdx
call   1040 <printf@plt>
mov    %rbx,%rdi
xor    %esi,%esi
mov    $0x5,%edx
call   1050 <memset@plt>
mov    %rbx,%rdi
mov    %rbp,%rsi
mov    $0x4,%edx
call   1030 <strncpy@plt>
mov    $0x1,%eax
pop    %rbx
pop    %r14
pop    %rbp
ret
lea    0xac0(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xac1(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xac2(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xac3(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xae2(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xae3(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xae4(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xae5(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xaf2(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xaf0(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xaee(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xaec(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xaea(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xaf7(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xb04(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>
lea    0xb02(%rip),%rbp
jmp    1558 <fisica_regla9+0x418>

LLVM IR (-O0):
@.str = [5 x i8] c"BUEI\00"
@.str.1 = [5 x i8] c"BUEX\00"
@.str.2 = [5 x i8] c"BUEY\00"
@.str.3 = [5 x i8] c"CACA\00"
@.str.4 = [5 x i8] c"CACX\00"
@.str.5 = [5 x i8] c"CACO\00"
@.str.6 = [5 x i8] c"CAGA\00"
@.str.7 = [5 x i8] c"CAGX\00"
@.str.8 = [5 x i8] c"CAGO\00"
@.str.9 = [5 x i8] c"CAKA\00"
@.str.10 = [5 x i8] c"CAKX\00"
@.str.11 = [5 x i8] c"COGE\00"
@.str.12 = [5 x i8] c"COGX\00"
@.str.13 = [5 x i8] c"COJA\00"
@.str.14 = [5 x i8] c"COJX\00"
@.str.15 = [5 x i8] c"COJE\00"
@.str.16 = [5 x i8] c"COJI\00"
@.str.17 = [5 x i8] c"COJO\00"
@.str.18 = [5 x i8] c"CULO\00"
@.str.19 = [5 x i8] c"CULX\00"
@.str.20 = [5 x i8] c"FETO\00"
@.str.21 = [5 x i8] c"FETX\00"
@.str.22 = [5 x i8] c"GUEY\00"
@.str.23 = [5 x i8] c"GUEX\00"
@.str.24 = [5 x i8] c"JOTO\00"
@.str.25 = [5 x i8] c"JOTX\00"
@.str.26 = [5 x i8] c"KACA\00"
@.str.27 = [5 x i8] c"KACX\00"
@.str.28 = [5 x i8] c"KACO\00"
@.str.29 = [5 x i8] c"KAGA\00"
@.str.30 = [5 x i8] c"KAGX\00"
@.str.31 = [5 x i8] c"KAGO\00"
@.str.32 = [5 x i8] c"KOGE\00"
@.str.33 = [5 x i8] c"KOGX\00"
@.str.34 = [5 x i8] c"KOJO\00"
@.str.35 = [5 x i8] c"KOJX\00"
@.str.36 = [5 x i8] c"KAKA\00"
@.str.37 = [5 x i8] c"KAKX\00"
@.str.38 = [5 x i8] c"KULO\00"
@.str.39 = [5 x i8] c"KULX\00"
@.str.40 = [5 x i8] c"MAME\00"
@.str.41 = [5 x i8] c"MAMX\00"
@.str.42 = [5 x i8] c"MAMO\00"
@.str.43 = [5 x i8] c"MEAR\00"
@.str.44 = [5 x i8] c"MEAX\00"
@.str.45 = [5 x i8] c"MEON\00"
@.str.46 = [5 x i8] c"MEOX\00"
@.str.47 = [5 x i8] c"MION\00"
@.str.48 = [5 x i8] c"MIOX\00"
@.str.49 = [5 x i8] c"MOCO\00"
@.str.50 = [5 x i8] c"MOCX\00"
@.str.51 = [5 x i8] c"MULA\00"
@.str.52 = [5 x i8] c"MULX\00"
@.str.53 = [5 x i8] c"PEDA\00"
@.str.54 = [5 x i8] c"PEDX\00"
@.str.55 = [5 x i8] c"PEDO\00"
@.str.56 = [5 x i8] c"PENE\00"
@.str.57 = [5 x i8] c"PENX\00"
@.str.58 = [5 x i8] c"PUTA\00"
@.str.59 = [5 x i8] c"PUTX\00"
@.str.60 = [5 x i8] c"PUTO\00"
@.str.61 = [5 x i8] c"QULO\00"
@.str.62 = [5 x i8] c"QULX\00"
@.str.63 = [5 x i8] c"RATA\00"
@.str.64 = [5 x i8] c"RATX\00"
@.str.65 = [5 x i8] c"RUIN\00"
@.str.66 = [5 x i8] c"RUIX\00"
@.str.67 = [121 x i8] c"Palabra inconveniente para formar parte de la clave del Registro Federal de Contribuyentes (%s)... sustituida por \22%s\22.\0A\00"
define i32 @fisica_regla9(i8* %0, i32 %1) {
%3 = alloca i8*
%4 = alloca i32
%5 = alloca i32
%6 = alloca i8*
store i8* %0, i8** %3
store i32 %1, i32* %4
store i32 0, i32* %5
store i8* null, i8** %6
%7 = load i8*, i8** %3
%8 = call i64 @strcmp(i8* %7, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0))
%9 = icmp eq i64 %8, 0
br i1 %9, label %10, label %11
10: ; preds = %2
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.1, i64 0, i64 0), i8** %6
br label %245
11: ; preds = %2
%12 = load i8*, i8** %3
%13 = call i64 @strcmp(i8* %12, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0))
%14 = icmp eq i64 %13, 0
br i1 %14, label %15, label %16
15: ; preds = %11
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.1, i64 0, i64 0), i8** %6
br label %244
16: ; preds = %11
%17 = load i8*, i8** %3
%18 = call i64 @strcmp(i8* %17, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.2, i64 0, i64 0))
%19 = icmp eq i64 %18, 0
br i1 %19, label %20, label %21
20: ; preds = %16
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.1, i64 0, i64 0), i8** %6
br label %243
21: ; preds = %16
%22 = load i8*, i8** %3
%23 = call i64 @strcmp(i8* %22, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.3, i64 0, i64 0))
%24 = icmp eq i64 %23, 0
br i1 %24, label %25, label %26
25: ; preds = %21
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.4, i64 0, i64 0), i8** %6
br label %242
26: ; preds = %21
%27 = load i8*, i8** %3
%28 = call i64 @strcmp(i8* %27, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.5, i64 0, i64 0))
%29 = icmp eq i64 %28, 0
br i1 %29, label %30, label %31
30: ; preds = %26
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.4, i64 0, i64 0), i8** %6
br label %241
31: ; preds = %26
%32 = load i8*, i8** %3
%33 = call i64 @strcmp(i8* %32, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.6, i64 0, i64 0))
%34 = icmp eq i64 %33, 0
br i1 %34, label %35, label %36
35: ; preds = %31
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.7, i64 0, i64 0), i8** %6
br label %240
36: ; preds = %31
%37 = load i8*, i8** %3
%38 = call i64 @strcmp(i8* %37, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.8, i64 0, i64 0))
%39 = icmp eq i64 %38, 0
br i1 %39, label %40, label %41
40: ; preds = %36
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.7, i64 0, i64 0), i8** %6
br label %239
41: ; preds = %36
%42 = load i8*, i8** %3
%43 = call i64 @strcmp(i8* %42, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.9, i64 0, i64 0))
%44 = icmp eq i64 %43, 0
br i1 %44, label %45, label %46
45: ; preds = %41
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.10, i64 0, i64 0), i8** %6
br label %238
46: ; preds = %41
%47 = load i8*, i8** %3
%48 = call i64 @strcmp(i8* %47, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.11, i64 0, i64 0))
%49 = icmp eq i64 %48, 0
br i1 %49, label %50, label %51
50: ; preds = %46
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.12, i64 0, i64 0), i8** %6
br label %237
51: ; preds = %46
%52 = load i8*, i8** %3
%53 = call i64 @strcmp(i8* %52, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.13, i64 0, i64 0))
%54 = icmp eq i64 %53, 0
br i1 %54, label %55, label %56
55: ; preds = %51
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.14, i64 0, i64 0), i8** %6
br label %236
56: ; preds = %51
%57 = load i8*, i8** %3
%58 = call i64 @strcmp(i8* %57, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.15, i64 0, i64 0))
%59 = icmp eq i64 %58, 0
br i1 %59, label %60, label %61
60: ; preds = %56
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.14, i64 0, i64 0), i8** %6
br label %235
61: ; preds = %56
%62 = load i8*, i8** %3
%63 = call i64 @strcmp(i8* %62, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.16, i64 0, i64 0))
%64 = icmp eq i64 %63, 0
br i1 %64, label %65, label %66
65: ; preds = %61
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.14, i64 0, i64 0), i8** %6
br label %234
66: ; preds = %61
%67 = load i8*, i8** %3
%68 = call i64 @strcmp(i8* %67, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.17, i64 0, i64 0))
%69 = icmp eq i64 %68, 0
br i1 %69, label %70, label %71
70: ; preds = %66
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.14, i64 0, i64 0), i8** %6
br label %233
71: ; preds = %66
%72 = load i8*, i8** %3
%73 = call i64 @strcmp(i8* %72, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.18, i64 0, i64 0))
%74 = icmp eq i64 %73, 0
br i1 %74, label %75, label %76
75: ; preds = %71
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.19, i64 0, i64 0), i8** %6
br label %232
76: ; preds = %71
%77 = load i8*, i8** %3
%78 = call i64 @strcmp(i8* %77, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.20, i64 0, i64 0))
%79 = icmp eq i64 %78, 0
br i1 %79, label %80, label %81
80: ; preds = %76
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), i8** %6
br label %231
81: ; preds = %76
%82 = load i8*, i8** %3
%83 = call i64 @strcmp(i8* %82, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.22, i64 0, i64 0))
%84 = icmp eq i64 %83, 0
br i1 %84, label %85, label %86
85: ; preds = %81
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.23, i64 0, i64 0), i8** %6
br label %230
86: ; preds = %81
%87 = load i8*, i8** %3
%88 = call i64 @strcmp(i8* %87, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.24, i64 0, i64 0))
%89 = icmp eq i64 %88, 0
br i1 %89, label %90, label %91
90: ; preds = %86
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.25, i64 0, i64 0), i8** %6
br label %229
91: ; preds = %86
%92 = load i8*, i8** %3
%93 = call i64 @strcmp(i8* %92, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.26, i64 0, i64 0))
%94 = icmp eq i64 %93, 0
br i1 %94, label %95, label %96
95: ; preds = %91
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.27, i64 0, i64 0), i8** %6
br label %228
96: ; preds = %91
%97 = load i8*, i8** %3
%98 = call i64 @strcmp(i8* %97, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.28, i64 0, i64 0))
%99 = icmp eq i64 %98, 0
br i1 %99, label %100, label %101
100: ; preds = %96
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.27, i64 0, i64 0), i8** %6
br label %227
101: ; preds = %96
%102 = load i8*, i8** %3
%103 = call i64 @strcmp(i8* %102, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.29, i64 0, i64 0))
%104 = icmp eq i64 %103, 0
br i1 %104, label %105, label %106
105: ; preds = %101
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.30, i64 0, i64 0), i8** %6
br label %226
106: ; preds = %101
%107 = load i8*, i8** %3
%108 = call i64 @strcmp(i8* %107, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.31, i64 0, i64 0))
%109 = icmp eq i64 %108, 0
br i1 %109, label %110, label %111
110: ; preds = %106
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.30, i64 0, i64 0), i8** %6
br label %225
111: ; preds = %106
%112 = load i8*, i8** %3
%113 = call i64 @strcmp(i8* %112, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.32, i64 0, i64 0))
%114 = icmp eq i64 %113, 0
br i1 %114, label %115, label %116
115: ; preds = %111
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.33, i64 0, i64 0), i8** %6
br label %224
116: ; preds = %111
%117 = load i8*, i8** %3
%118 = call i64 @strcmp(i8* %117, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.34, i64 0, i64 0))
%119 = icmp eq i64 %118, 0
br i1 %119, label %120, label %121
120: ; preds = %116
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.35, i64 0, i64 0), i8** %6
br label %223
121: ; preds = %116
%122 = load i8*, i8** %3
%123 = call i64 @strcmp(i8* %122, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.36, i64 0, i64 0))
%124 = icmp eq i64 %123, 0
br i1 %124, label %125, label %126
125: ; preds = %121
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.37, i64 0, i64 0), i8** %6
br label %222
126: ; preds = %121
%127 = load i8*, i8** %3
%128 = call i64 @strcmp(i8* %127, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.38, i64 0, i64 0))
%129 = icmp eq i64 %128, 0
br i1 %129, label %130, label %131
130: ; preds = %126
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.39, i64 0, i64 0), i8** %6
br label %221
131: ; preds = %126
%132 = load i8*, i8** %3
%133 = call i64 @strcmp(i8* %132, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.40, i64 0, i64 0))
%134 = icmp eq i64 %133, 0
br i1 %134, label %135, label %136
135: ; preds = %131
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.41, i64 0, i64 0), i8** %6
br label %220
136: ; preds = %131
%137 = load i8*, i8** %3
%138 = call i64 @strcmp(i8* %137, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.42, i64 0, i64 0))
%139 = icmp eq i64 %138, 0
br i1 %139, label %140, label %141
140: ; preds = %136
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.41, i64 0, i64 0), i8** %6
br label %219
141: ; preds = %136
%142 = load i8*, i8** %3
%143 = call i64 @strcmp(i8* %142, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.43, i64 0, i64 0))
%144 = icmp eq i64 %143, 0
br i1 %144, label %145, label %146
145: ; preds = %141
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.44, i64 0, i64 0), i8** %6
br label %218
146: ; preds = %141
%147 = load i8*, i8** %3
%148 = call i64 @strcmp(i8* %147, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.45, i64 0, i64 0))
%149 = icmp eq i64 %148, 0
br i1 %149, label %150, label %151
150: ; preds = %146
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.46, i64 0, i64 0), i8** %6
br label %217
151: ; preds = %146
%152 = load i8*, i8** %3
%153 = call i64 @strcmp(i8* %152, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.47, i64 0, i64 0))
%154 = icmp eq i64 %153, 0
br i1 %154, label %155, label %156
155: ; preds = %151
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.48, i64 0, i64 0), i8** %6
br label %216
156: ; preds = %151
%157 = load i8*, i8** %3
%158 = call i64 @strcmp(i8* %157, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.49, i64 0, i64 0))
%159 = icmp eq i64 %158, 0
br i1 %159, label %160, label %161
160: ; preds = %156
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.50, i64 0, i64 0), i8** %6
br label %215
161: ; preds = %156
%162 = load i8*, i8** %3
%163 = call i64 @strcmp(i8* %162, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.51, i64 0, i64 0))
%164 = icmp eq i64 %163, 0
br i1 %164, label %165, label %166
165: ; preds = %161
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.52, i64 0, i64 0), i8** %6
br label %214
166: ; preds = %161
%167 = load i8*, i8** %3
%168 = call i64 @strcmp(i8* %167, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.53, i64 0, i64 0))
%169 = icmp eq i64 %168, 0
br i1 %169, label %170, label %171
170: ; preds = %166
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.54, i64 0, i64 0), i8** %6
br label %213
171: ; preds = %166
%172 = load i8*, i8** %3
%173 = call i64 @strcmp(i8* %172, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.55, i64 0, i64 0))
%174 = icmp eq i64 %173, 0
br i1 %174, label %175, label %176
175: ; preds = %171
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.54, i64 0, i64 0), i8** %6
br label %212
176: ; preds = %171
%177 = load i8*, i8** %3
%178 = call i64 @strcmp(i8* %177, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.56, i64 0, i64 0))
%179 = icmp eq i64 %178, 0
br i1 %179, label %180, label %181
180: ; preds = %176
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.57, i64 0, i64 0), i8** %6
br label %211
181: ; preds = %176
%182 = load i8*, i8** %3
%183 = call i64 @strcmp(i8* %182, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.58, i64 0, i64 0))
%184 = icmp eq i64 %183, 0
br i1 %184, label %185, label %186
185: ; preds = %181
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.59, i64 0, i64 0), i8** %6
br label %210
186: ; preds = %181
%187 = load i8*, i8** %3
%188 = call i64 @strcmp(i8* %187, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.60, i64 0, i64 0))
%189 = icmp eq i64 %188, 0
br i1 %189, label %190, label %191
190: ; preds = %186
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.59, i64 0, i64 0), i8** %6
br label %209
191: ; preds = %186
%192 = load i8*, i8** %3
%193 = call i64 @strcmp(i8* %192, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.61, i64 0, i64 0))
%194 = icmp eq i64 %193, 0
br i1 %194, label %195, label %196
195: ; preds = %191
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.62, i64 0, i64 0), i8** %6
br label %208
196: ; preds = %191
%197 = load i8*, i8** %3
%198 = call i64 @strcmp(i8* %197, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.63, i64 0, i64 0))
%199 = icmp eq i64 %198, 0
br i1 %199, label %200, label %201
200: ; preds = %196
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.64, i64 0, i64 0), i8** %6
br label %207
201: ; preds = %196
%202 = load i8*, i8** %3
%203 = call i64 @strcmp(i8* %202, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.65, i64 0, i64 0))
%204 = icmp eq i64 %203, 0
br i1 %204, label %205, label %206
205: ; preds = %201
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.66, i64 0, i64 0), i8** %6
br label %206
206: ; preds = %205, %201
br label %207
207: ; preds = %206, %200
br label %208
208: ; preds = %207, %195
br label %209
209: ; preds = %208, %190
br label %210
210: ; preds = %209, %185
br label %211
211: ; preds = %210, %180
br label %212
212: ; preds = %211, %175
br label %213
213: ; preds = %212, %170
br label %214
214: ; preds = %213, %165
br label %215
215: ; preds = %214, %160
br label %216
216: ; preds = %215, %155
br label %217
217: ; preds = %216, %150
br label %218
218: ; preds = %217, %145
br label %219
219: ; preds = %218, %140
br label %220
220: ; preds = %219, %135
br label %221
221: ; preds = %220, %130
br label %222
222: ; preds = %221, %125
br label %223
223: ; preds = %222, %120
br label %224
224: ; preds = %223, %115
br label %225
225: ; preds = %224, %110
br label %226
226: ; preds = %225, %105
br label %227
227: ; preds = %226, %100
br label %228
228: ; preds = %227, %95
br label %229
229: ; preds = %228, %90
br label %230
230: ; preds = %229, %85
br label %231
231: ; preds = %230, %80
br label %232
232: ; preds = %231, %75
br label %233
233: ; preds = %232, %70
br label %234
234: ; preds = %233, %65
br label %235
235: ; preds = %234, %60
br label %236
236: ; preds = %235, %55
br label %237
237: ; preds = %236, %50
br label %238
238: ; preds = %237, %45
br label %239
239: ; preds = %238, %40
br label %240
240: ; preds = %239, %35
br label %241
241: ; preds = %240, %30
br label %242
242: ; preds = %241, %25
br label %243
243: ; preds = %242, %20
br label %244
244: ; preds = %243, %15
br label %245
245: ; preds = %244, %10
%246 = load i8*, i8** %6
%247 = icmp ne i8* %246, null
br i1 %247, label %248, label %261
248: ; preds = %245
%249 = load i32, i32* %4
%250 = icmp ne i32 %249, 0
br i1 %250, label %251, label %255
251: ; preds = %248
%252 = load i8*, i8** %3
%253 = load i8*, i8** %6
%254 = call i32 @printf(i8* getelementptr inbounds ([121 x i8], [121 x i8]* @.str.67, i64 0, i64 0), i8* %252, i8* %253)
br label %255
255: ; preds = %251, %248
store i32 1, i32* %5
%256 = load i8*, i8** %3
%257 = call i32 @memset(i8* %256, i32 0, i32 5)
%258 = load i8*, i8** %3
%259 = load i8*, i8** %6
%260 = call i32 @strncpy(i8* %258, i8* %259, i32 4)
br label %261
261: ; preds = %255, %245
%262 = load i32, i32* %5
ret i32 %262
}

LLVM IR (-O2):
@.str = [5 x i8] c"BUEI\00"
@.str.1 = [5 x i8] c"BUEX\00"
@.str.2 = [5 x i8] c"BUEY\00"
@.str.3 = [5 x i8] c"CACA\00"
@.str.4 = [5 x i8] c"CACX\00"
@.str.5 = [5 x i8] c"CACO\00"
@.str.6 = [5 x i8] c"CAGA\00"
@.str.7 = [5 x i8] c"CAGX\00"
@.str.8 = [5 x i8] c"CAGO\00"
@.str.9 = [5 x i8] c"CAKA\00"
@.str.10 = [5 x i8] c"CAKX\00"
@.str.11 = [5 x i8] c"COGE\00"
@.str.12 = [5 x i8] c"COGX\00"
@.str.13 = [5 x i8] c"COJA\00"
@.str.14 = [5 x i8] c"COJX\00"
@.str.15 = [5 x i8] c"COJE\00"
@.str.16 = [5 x i8] c"COJI\00"
@.str.17 = [5 x i8] c"COJO\00"
@.str.18 = [5 x i8] c"CULO\00"
@.str.19 = [5 x i8] c"CULX\00"
@.str.20 = [5 x i8] c"FETO\00"
@.str.21 = [5 x i8] c"FETX\00"
@.str.22 = [5 x i8] c"GUEY\00"
@.str.23 = [5 x i8] c"GUEX\00"
@.str.24 = [5 x i8] c"JOTO\00"
@.str.25 = [5 x i8] c"JOTX\00"
@.str.26 = [5 x i8] c"KACA\00"
@.str.27 = [5 x i8] c"KACX\00"
@.str.28 = [5 x i8] c"KACO\00"
@.str.29 = [5 x i8] c"KAGA\00"
@.str.30 = [5 x i8] c"KAGX\00"
@.str.31 = [5 x i8] c"KAGO\00"
@.str.32 = [5 x i8] c"KOGE\00"
@.str.33 = [5 x i8] c"KOGX\00"
@.str.34 = [5 x i8] c"KOJO\00"
@.str.35 = [5 x i8] c"KOJX\00"
@.str.36 = [5 x i8] c"KAKA\00"
@.str.37 = [5 x i8] c"KAKX\00"
@.str.38 = [5 x i8] c"KULO\00"
@.str.39 = [5 x i8] c"KULX\00"
@.str.40 = [5 x i8] c"MAME\00"
@.str.41 = [5 x i8] c"MAMX\00"
@.str.42 = [5 x i8] c"MAMO\00"
@.str.43 = [5 x i8] c"MEAR\00"
@.str.44 = [5 x i8] c"MEAX\00"
@.str.45 = [5 x i8] c"MEON\00"
@.str.46 = [5 x i8] c"MEOX\00"
@.str.47 = [5 x i8] c"MION\00"
@.str.48 = [5 x i8] c"MIOX\00"
@.str.49 = [5 x i8] c"MOCO\00"
@.str.50 = [5 x i8] c"MOCX\00"
@.str.51 = [5 x i8] c"MULA\00"
@.str.52 = [5 x i8] c"MULX\00"
@.str.53 = [5 x i8] c"PEDA\00"
@.str.54 = [5 x i8] c"PEDX\00"
@.str.55 = [5 x i8] c"PEDO\00"
@.str.56 = [5 x i8] c"PENE\00"
@.str.57 = [5 x i8] c"PENX\00"
@.str.58 = [5 x i8] c"PUTA\00"
@.str.59 = [5 x i8] c"PUTX\00"
@.str.60 = [5 x i8] c"PUTO\00"
@.str.61 = [5 x i8] c"QULO\00"
@.str.62 = [5 x i8] c"QULX\00"
@.str.63 = [5 x i8] c"RATA\00"
@.str.64 = [5 x i8] c"RATX\00"
@.str.65 = [5 x i8] c"RUIN\00"
@.str.66 = [5 x i8] c"RUIX\00"
@.str.67 = [121 x i8] c"Palabra inconveniente para formar parte de la clave del Registro Federal de Contribuyentes (%s)... sustituida por \22%s\22.\0A\00"
define i32 @fisica_regla9(i8* %0, i32 %1) {
%3 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0))
%4 = icmp eq i64 %3, 0
br i1 %4, label %122, label %5
5: ; preds = %2
%6 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0))
%7 = icmp eq i64 %6, 0
br i1 %7, label %122, label %8
8: ; preds = %5
%9 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.2, i64 0, i64 0))
%10 = icmp eq i64 %9, 0
br i1 %10, label %122, label %11
11: ; preds = %8
%12 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.3, i64 0, i64 0))
%13 = icmp eq i64 %12, 0
br i1 %13, label %122, label %14
14: ; preds = %11
%15 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.5, i64 0, i64 0))
%16 = icmp eq i64 %15, 0
br i1 %16, label %122, label %17
17: ; preds = %14
%18 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.6, i64 0, i64 0))
%19 = icmp eq i64 %18, 0
br i1 %19, label %122, label %20
20: ; preds = %17
%21 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.8, i64 0, i64 0))
%22 = icmp eq i64 %21, 0
br i1 %22, label %122, label %23
23: ; preds = %20
%24 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.9, i64 0, i64 0))
%25 = icmp eq i64 %24, 0
br i1 %25, label %122, label %26
26: ; preds = %23
%27 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.11, i64 0, i64 0))
%28 = icmp eq i64 %27, 0
br i1 %28, label %122, label %29
29: ; preds = %26
%30 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.13, i64 0, i64 0))
%31 = icmp eq i64 %30, 0
br i1 %31, label %122, label %32
32: ; preds = %29
%33 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.15, i64 0, i64 0))
%34 = icmp eq i64 %33, 0
br i1 %34, label %122, label %35
35: ; preds = %32
%36 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.16, i64 0, i64 0))
%37 = icmp eq i64 %36, 0
br i1 %37, label %122, label %38
38: ; preds = %35
%39 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.17, i64 0, i64 0))
%40 = icmp eq i64 %39, 0
br i1 %40, label %122, label %41
41: ; preds = %38
%42 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.18, i64 0, i64 0))
%43 = icmp eq i64 %42, 0
br i1 %43, label %122, label %44
44: ; preds = %41
%45 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.20, i64 0, i64 0))
%46 = icmp eq i64 %45, 0
br i1 %46, label %122, label %47
47: ; preds = %44
%48 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.22, i64 0, i64 0))
%49 = icmp eq i64 %48, 0
br i1 %49, label %122, label %50
50: ; preds = %47
%51 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.24, i64 0, i64 0))
%52 = icmp eq i64 %51, 0
br i1 %52, label %122, label %53
53: ; preds = %50
%54 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.26, i64 0, i64 0))
%55 = icmp eq i64 %54, 0
br i1 %55, label %122, label %56
56: ; preds = %53
%57 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.28, i64 0, i64 0))
%58 = icmp eq i64 %57, 0
br i1 %58, label %122, label %59
59: ; preds = %56
%60 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.29, i64 0, i64 0))
%61 = icmp eq i64 %60, 0
br i1 %61, label %122, label %62
62: ; preds = %59
%63 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.31, i64 0, i64 0))
%64 = icmp eq i64 %63, 0
br i1 %64, label %122, label %65
65: ; preds = %62
%66 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.32, i64 0, i64 0))
%67 = icmp eq i64 %66, 0
br i1 %67, label %122, label %68
68: ; preds = %65
%69 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.34, i64 0, i64 0))
%70 = icmp eq i64 %69, 0
br i1 %70, label %122, label %71
71: ; preds = %68
%72 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.36, i64 0, i64 0))
%73 = icmp eq i64 %72, 0
br i1 %73, label %122, label %74
74: ; preds = %71
%75 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.38, i64 0, i64 0))
%76 = icmp eq i64 %75, 0
br i1 %76, label %122, label %77
77: ; preds = %74
%78 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.40, i64 0, i64 0))
%79 = icmp eq i64 %78, 0
br i1 %79, label %122, label %80
80: ; preds = %77
%81 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.42, i64 0, i64 0))
%82 = icmp eq i64 %81, 0
br i1 %82, label %122, label %83
83: ; preds = %80
%84 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.43, i64 0, i64 0))
%85 = icmp eq i64 %84, 0
br i1 %85, label %122, label %86
86: ; preds = %83
%87 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.45, i64 0, i64 0))
%88 = icmp eq i64 %87, 0
br i1 %88, label %122, label %89
89: ; preds = %86
%90 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.47, i64 0, i64 0))
%91 = icmp eq i64 %90, 0
br i1 %91, label %122, label %92
92: ; preds = %89
%93 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.49, i64 0, i64 0))
%94 = icmp eq i64 %93, 0
br i1 %94, label %122, label %95
95: ; preds = %92
%96 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.51, i64 0, i64 0))
%97 = icmp eq i64 %96, 0
br i1 %97, label %122, label %98
98: ; preds = %95
%99 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.53, i64 0, i64 0))
%100 = icmp eq i64 %99, 0
br i1 %100, label %122, label %101
101: ; preds = %98
%102 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.55, i64 0, i64 0))
%103 = icmp eq i64 %102, 0
br i1 %103, label %122, label %104
104: ; preds = %101
%105 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.56, i64 0, i64 0))
%106 = icmp eq i64 %105, 0
br i1 %106, label %122, label %107
107: ; preds = %104
%108 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.58, i64 0, i64 0))
%109 = icmp eq i64 %108, 0
br i1 %109, label %122, label %110
110: ; preds = %107
%111 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.60, i64 0, i64 0))
%112 = icmp eq i64 %111, 0
br i1 %112, label %122, label %113
113: ; preds = %110
%114 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.61, i64 0, i64 0))
%115 = icmp eq i64 %114, 0
br i1 %115, label %122, label %116
116: ; preds = %113
%117 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.63, i64 0, i64 0))
%118 = icmp eq i64 %117, 0
br i1 %118, label %122, label %119
119: ; preds = %116
%120 = tail call i64 @strcmp(i8* %0, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.65, i64 0, i64 0))
%121 = icmp eq i64 %120, 0
br i1 %121, label %122, label %130
122: ; preds = %116, %113, %110, %107, %104, %101, %98, %95, %92, %89, %86, %83, %80, %77, %74, %71, %68, %65, %62, %59, %56, %53, %50, %47, %44, %41, %38, %35, %32, %29, %26, %23, %20, %17, %14, %11, %8, %5, %2, %119
%123 = phi i8* [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.66, i64 0, i64 0), %119 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.64, i64 0, i64 0), %116 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.62, i64 0, i64 0), %113 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.59, i64 0, i64 0), %110 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.59, i64 0, i64 0), %107 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.57, i64 0, i64 0), %104 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.54, i64 0, i64 0), %101 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.54, i64 0, i64 0), %98 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.52, i64 0, i64 0), %95 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.50, i64 0, i64 0), %92 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.48, i64 0, i64 0), %89 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.46, i64 0, i64 0), %86 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.44, i64 0, i64 0), %83 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.41, i64 0, i64 0), %80 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.41, i64 0, i64 0), %77 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.39, i64 0, i64 0), %74 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.37, i64 0, i64 0), %71 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.35, i64 0, i64 0), %68 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.33, i64 0, i64 0), %65 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.30, i64 0, i64 0), %62 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.30, i64 0, i64 0), %59 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.27, i64 0, i64 0), %56 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.27, i64 0, i64 0), %53 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.25, i64 0, i64 0), %50 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.23, i64 0, i64 0), %47 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.21, i64 0, i64 0), %44 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.19, i64 0, i64 0), %41 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.14, i64 0, i64 0), %38 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.14, i64 0, i64 0), %35 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.14, i64 0, i64 0), %32 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.14, i64 0, i64 0), %29 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.12, i64 0, i64 0), %26 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.10, i64 0, i64 0), %23 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.7, i64 0, i64 0), %20 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.7, i64 0, i64 0), %17 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.4, i64 0, i64 0), %14 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.4, i64 0, i64 0), %11 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.1, i64 0, i64 0), %8 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.1, i64 0, i64 0), %5 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.1, i64 0, i64 0), %2 ]
%124 = icmp eq i32 %1, 0
br i1 %124, label %127, label %125
125: ; preds = %122
%126 = tail call i32 @printf(i8* getelementptr inbounds ([121 x i8], [121 x i8]* @.str.67, i64 0, i64 0), i8* %0, i8* %123)
br label %127
127: ; preds = %125, %122
%128 = tail call i32 @memset(i8* %0, i32 0, i32 5)
%129 = tail call i32 @strncpy(i8* %0, i8* %123, i32 4)
br label %130
130: ; preds = %127, %119
%131 = phi i32 [ 1, %127 ], [ 0, %119 ]
ret i32 %131
}