#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*/ __VERIFIER_error();
void *__VERIFIER_nondet_int();
int ssl3_connect(int initial_state) {
  int s__info_callback = __VERIFIER_nondet_int();
  int s__in_handshake = __VERIFIER_nondet_int();
  int s__state;
  int s__new_session;
  int s__server;
  int s__version = __VERIFIER_nondet_int();
  int s__type;
  int s__init_num;
  int s__bbio = __VERIFIER_nondet_int();
  int s__wbio = __VERIFIER_nondet_int();
  int s__hit = __VERIFIER_nondet_int();
  int s__rwstate;
  int s__init_buf___0;
  int s__debug = __VERIFIER_nondet_int();
  int s__shutdown;
  int s__ctx__info_callback = __VERIFIER_nondet_int();
  int s__ctx__stats__sess_connect_renegotiate = __VERIFIER_nondet_int();
  int s__ctx__stats__sess_connect = __VERIFIER_nondet_int();
  int s__ctx__stats__sess_hit = __VERIFIER_nondet_int();
  int s__ctx__stats__sess_connect_good = __VERIFIER_nondet_int();
  int s__s3__change_cipher_spec;
  int s__s3__flags;
  int s__s3__delay_buf_pop_ret;
  int s__s3__tmp__cert_req = __VERIFIER_nondet_int();
  int s__s3__tmp__new_compression = __VERIFIER_nondet_int();
  int s__s3__tmp__reuse_message = __VERIFIER_nondet_int();
  int s__s3__tmp__new_cipher = __VERIFIER_nondet_int();
  int s__s3__tmp__new_cipher__algorithms = __VERIFIER_nondet_int();
  int s__s3__tmp__next_state___0;
  int s__s3__tmp__new_compression__id = __VERIFIER_nondet_int();
  int s__session__cipher;
  int s__session__compress_meth;
  int buf;
  unsigned long tmp;
  unsigned long l;
  int num1;
  int cb;
  int ret;
  int new_state;
  int state;
  int skip;
  int tmp___0;
  int tmp___1 = __VERIFIER_nondet_int();
  int tmp___2 = __VERIFIER_nondet_int();
  int tmp___3 = __VERIFIER_nondet_int();
  int tmp___4 = __VERIFIER_nondet_int();
  int tmp___5 = __VERIFIER_nondet_int();
  int tmp___6 = __VERIFIER_nondet_int();
  int tmp___7 = __VERIFIER_nondet_int();
  int tmp___8 = __VERIFIER_nondet_int();
  int tmp___9 = __VERIFIER_nondet_int();
  int blastFlag;
  int __cil_tmp55;
  long __cil_tmp56;
  long __cil_tmp57;
  long __cil_tmp58;
  long __cil_tmp59;
  long __cil_tmp60;
  long __cil_tmp61;
  long __cil_tmp62;
  long __cil_tmp63;
  long __cil_tmp64;
  ;
  {
    s__state = initial_state;
    blastFlag = 0;
    tmp = __VERIFIER_nondet_int();
    cb = 0;
    ret = -1;
    skip = 0;
    tmp___0 = 0;
    if (s__info_callback != 0) {
      cb = s__info_callback;
    } else {
      if (s__ctx__info_callback != 0) {
        cb = s__ctx__info_callback;
      }
    }
    s__in_handshake++;
    if (tmp___1 - 12288) {
      if (tmp___2 - 16384) {
      }
    }
    {
      while (1) {
      while_0_continue:;
        state = s__state;
        if (s__state == 12292) {
          goto switch_1_12292;
        } else {
          if (s__state == 16384) {
            goto switch_1_16384;
          } else {
            if (s__state == 4096) {
              goto switch_1_4096;
            } else {
              if (s__state == 20480) {
                goto switch_1_20480;
              } else {
                if (s__state == 4099) {
                  goto switch_1_4099;
                } else {
                  if (s__state == 4368) {
                    goto switch_1_4368;
                  } else {
                    if (s__state == 4369) {
                      goto switch_1_4369;
                    } else {
                      if (s__state == 4384) {
                        goto switch_1_4384;
                      } else {
                        if (s__state == 4385) {
                          goto switch_1_4385;
                        } else {
                          if (s__state == 4400) {
                            goto switch_1_4400;
                          } else {
                            if (s__state == 4401) {
                              goto switch_1_4401;
                            } else {
                              if (s__state == 4416) {
                                goto switch_1_4416;
                              } else {
                                if (s__state == 4417) {
                                  goto switch_1_4417;
                                } else {
                                  if (s__state == 4432) {
                                    goto switch_1_4432;
                                  } else {
                                    if (s__state == 4433) {
                                      goto switch_1_4433;
                                    } else {
                                      if (s__state == 4448) {
                                        goto switch_1_4448;
                                      } else {
                                        if (s__state == 4449) {
                                          goto switch_1_4449;
                                        } else {
                                          if (s__state == 4464) {
                                            goto switch_1_4464;
                                          } else {
                                            if (s__state == 4465) {
                                              goto switch_1_4465;
                                            } else {
                                              if (s__state == 4466) {
                                                goto switch_1_4466;
                                              } else {
                                                if (s__state == 4467) {
                                                  goto switch_1_4467;
                                                } else {
                                                  if (s__state == 4480) {
                                                    goto switch_1_4480;
                                                  } else {
                                                    if (s__state == 4481) {
                                                      goto switch_1_4481;
                                                    } else {
                                                      if (s__state == 4496) {
                                                        goto switch_1_4496;
                                                      } else {
                                                        if (s__state == 4497) {
                                                          goto switch_1_4497;
                                                        } else {
                                                          if (s__state ==
                                                              4512) {
                                                            goto switch_1_4512;
                                                          } else {
                                                            if (s__state ==
                                                                4513) {
                                                              goto switch_1_4513;
                                                            } else {
                                                              if (s__state ==
                                                                  4528) {
                                                                goto switch_1_4528;
                                                              } else {
                                                                if (s__state ==
                                                                    4529) {
                                                                  goto switch_1_4529;
                                                                } else {
                                                                  if (s__state ==
                                                                      4560) {
                                                                    goto switch_1_4560;
                                                                  } else {
                                                                    if (s__state ==
                                                                        4561) {
                                                                      goto switch_1_4561;
                                                                    } else {
                                                                      if (s__state ==
                                                                          4352) {
                                                                        goto switch_1_4352;
                                                                      } else {
                                                                        if (s__state ==
                                                                            3) {
                                                                          goto switch_1_3;
                                                                        } else {
                                                                          goto switch_1_default;
                                                                          if (0) {
                                                                          switch_1_12292
                                                                              :
                                                                            s__new_session =
                                                                                1;
                                                                            s__state =
                                                                                4096;
                                                                            s__ctx__stats__sess_connect_renegotiate++;
                                                                          switch_1_16384
                                                                              :;
                                                                          switch_1_4096
                                                                              :;
                                                                          switch_1_20480
                                                                              :;
                                                                          switch_1_4099
                                                                              :
                                                                            s__server =
                                                                                0;
                                                                            if (cb !=
                                                                                0) {
                                                                            }
                                                                            {
                                                                              __cil_tmp55 =
                                                                                  s__version -
                                                                                  65280;
                                                                              if (__cil_tmp55 !=
                                                                                  768) {
                                                                                ret =
                                                                                    -1;
                                                                                goto end;
                                                                              }
                                                                            }
                                                                            s__type =
                                                                                4096;
                                                                            if (s__init_buf___0 ==
                                                                                0) {
                                                                              buf =
                                                                                  __VERIFIER_nondet_int();
                                                                              if (buf ==
                                                                                  0) {
                                                                                ret =
                                                                                    -1;
                                                                                goto end;
                                                                              }
                                                                              if (!tmp___3) {
                                                                                ret =
                                                                                    -1;
                                                                                goto end;
                                                                              }
                                                                              s__init_buf___0 =
                                                                                  buf;
                                                                            }
                                                                            if (!tmp___4) {
                                                                              ret =
                                                                                  -1;
                                                                              goto end;
                                                                            }
                                                                            if (!tmp___5) {
                                                                              ret =
                                                                                  -1;
                                                                              goto end;
                                                                            }
                                                                            s__state =
                                                                                4368;
                                                                            s__ctx__stats__sess_connect++;
                                                                            s__init_num =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4368
                                                                              :;
                                                                          switch_1_4369
                                                                              :
                                                                            s__shutdown =
                                                                                0;
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (blastFlag ==
                                                                                0) {
                                                                              blastFlag =
                                                                                  1;
                                                                            }
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            s__state =
                                                                                4384;
                                                                            s__init_num =
                                                                                0;
                                                                            if (s__bbio !=
                                                                                s__wbio) {
                                                                            }
                                                                            goto switch_1_break;
                                                                          switch_1_4384
                                                                              :;
                                                                          switch_1_4385
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (blastFlag ==
                                                                                1) {
                                                                              blastFlag =
                                                                                  2;
                                                                            }
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            if (s__hit) {
                                                                              s__state =
                                                                                  4560;
                                                                            } else {
                                                                              s__state =
                                                                                  4400;
                                                                            }
                                                                            s__init_num =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4400
                                                                              :;
                                                                          switch_1_4401
                                                                              :;
                                                                            if (s__s3__tmp__new_cipher__algorithms -
                                                                                256) {
                                                                              skip =
                                                                                  1;
                                                                            } else {
                                                                              ret =
                                                                                  __VERIFIER_nondet_int();
                                                                              if (blastFlag ==
                                                                                  2) {
                                                                                blastFlag =
                                                                                    3;
                                                                              }
                                                                              if (ret <=
                                                                                  0) {
                                                                                goto end;
                                                                              }
                                                                            }
                                                                            s__state =
                                                                                4416;
                                                                            s__init_num =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4416
                                                                              :;
                                                                          switch_1_4417
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (blastFlag ==
                                                                                3) {
                                                                              blastFlag =
                                                                                  4;
                                                                            }
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            s__state =
                                                                                4432;
                                                                            s__init_num =
                                                                                0;
                                                                            if (!tmp___6) {
                                                                              ret =
                                                                                  -1;
                                                                              goto end;
                                                                            }
                                                                            goto switch_1_break;
                                                                          switch_1_4432
                                                                              :;
                                                                          switch_1_4433
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (blastFlag ==
                                                                                5) {
                                                                              goto ERROR;
                                                                            }
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            s__state =
                                                                                4448;
                                                                            s__init_num =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4448
                                                                              :;
                                                                          switch_1_4449
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (blastFlag ==
                                                                                4) {
                                                                              blastFlag =
                                                                                  5;
                                                                            }
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            if (s__s3__tmp__cert_req) {
                                                                              s__state =
                                                                                  4464;
                                                                            } else {
                                                                              s__state =
                                                                                  4480;
                                                                            }
                                                                            s__init_num =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4464
                                                                              :;
                                                                          switch_1_4465
                                                                              :;
                                                                          switch_1_4466
                                                                              :;
                                                                          switch_1_4467
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            s__state =
                                                                                4480;
                                                                            s__init_num =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4480
                                                                              :;
                                                                          switch_1_4481
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            l = (unsigned long)
                                                                                s__s3__tmp__new_cipher__algorithms;
                                                                            if (s__s3__tmp__cert_req ==
                                                                                1) {
                                                                              s__state =
                                                                                  4496;
                                                                            } else {
                                                                              s__state =
                                                                                  4512;
                                                                              s__s3__change_cipher_spec =
                                                                                  0;
                                                                            }
                                                                            s__init_num =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4496
                                                                              :;
                                                                          switch_1_4497
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            s__state =
                                                                                4512;
                                                                            s__init_num =
                                                                                0;
                                                                            s__s3__change_cipher_spec =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4512
                                                                              :;
                                                                          switch_1_4513
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            s__state =
                                                                                4528;
                                                                            s__init_num =
                                                                                0;
                                                                            s__session__cipher =
                                                                                s__s3__tmp__new_cipher;
                                                                            if (s__s3__tmp__new_compression ==
                                                                                0) {
                                                                              s__session__compress_meth =
                                                                                  0;
                                                                            } else {
                                                                              s__session__compress_meth =
                                                                                  s__s3__tmp__new_compression__id;
                                                                            }
                                                                            if (!tmp___7) {
                                                                              ret =
                                                                                  -1;
                                                                              goto end;
                                                                            }
                                                                            if (!tmp___8) {
                                                                              ret =
                                                                                  -1;
                                                                              goto end;
                                                                            }
                                                                            goto switch_1_break;
                                                                          switch_1_4528
                                                                              :;
                                                                          switch_1_4529
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            s__state =
                                                                                4352;
                                                                            __cil_tmp56 =
                                                                                (long)
                                                                                    s__s3__flags;
                                                                            __cil_tmp57 =
                                                                                __cil_tmp56 +
                                                                                5;
                                                                            s__s3__flags =
                                                                                (int)
                                                                                    __cil_tmp57;
                                                                            if (s__hit) {
                                                                              s__s3__tmp__next_state___0 =
                                                                                  3;
                                                                              {
                                                                                __cil_tmp58 =
                                                                                    (long)
                                                                                        s__s3__flags;
                                                                                if (__cil_tmp58 -
                                                                                    2L) {
                                                                                  s__state =
                                                                                      3;
                                                                                  __cil_tmp59 =
                                                                                      (long)
                                                                                          s__s3__flags;
                                                                                  __cil_tmp60 =
                                                                                      __cil_tmp59 +
                                                                                      4L;
                                                                                  s__s3__flags =
                                                                                      (int)
                                                                                          __cil_tmp60;
                                                                                  s__s3__delay_buf_pop_ret =
                                                                                      0;
                                                                                }
                                                                              }
                                                                            } else {
                                                                              s__s3__tmp__next_state___0 =
                                                                                  4560;
                                                                            }
                                                                            s__init_num =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4560
                                                                              :;
                                                                          switch_1_4561
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (ret <=
                                                                                0) {
                                                                              goto end;
                                                                            }
                                                                            if (s__hit) {
                                                                              s__state =
                                                                                  4512;
                                                                            } else {
                                                                              s__state =
                                                                                  3;
                                                                            }
                                                                            s__init_num =
                                                                                0;
                                                                            goto switch_1_break;
                                                                          switch_1_4352
                                                                              : {
                                                                            __cil_tmp61 =
                                                                                (long)
                                                                                    num1;
                                                                            if (__cil_tmp61 >
                                                                                0L) {
                                                                              s__rwstate =
                                                                                  2;
                                                                              num1 =
                                                                                  tmp___9;
                                                                              {
                                                                                __cil_tmp62 =
                                                                                    (long)
                                                                                        num1;
                                                                                if (__cil_tmp62 <=
                                                                                    0L) {
                                                                                  ret =
                                                                                      -1;
                                                                                  goto end;
                                                                                }
                                                                              }
                                                                              s__rwstate =
                                                                                  1;
                                                                            }
                                                                          }
                                                                            s__state =
                                                                                s__s3__tmp__next_state___0;
                                                                            goto switch_1_break;
                                                                          switch_1_3
                                                                              :
                                                                            if (s__init_buf___0 !=
                                                                                0) {
                                                                              s__init_buf___0 =
                                                                                  0;
                                                                            }
                                                                            {
                                                                              __cil_tmp63 =
                                                                                  (long)
                                                                                      s__s3__flags;
                                                                              __cil_tmp64 =
                                                                                  __cil_tmp63 -
                                                                                  4L;
                                                                              if (!__cil_tmp64) {
                                                                              }
                                                                            }
                                                                            s__init_num =
                                                                                0;
                                                                            s__new_session =
                                                                                0;
                                                                            if (s__hit) {
                                                                              s__ctx__stats__sess_hit++;
                                                                            }
                                                                            ret =
                                                                                1;
                                                                            s__ctx__stats__sess_connect_good++;
                                                                            if (cb !=
                                                                                0) {
                                                                            }
                                                                            goto end;
                                                                          switch_1_default
                                                                              :
                                                                            ret =
                                                                                -1;
                                                                            goto end;
                                                                          } else {
                                                                          switch_1_break
                                                                              :;
                                                                          }
                                                                        }
                                                                      }
                                                                    }
                                                                  }
                                                                }
                                                              }
                                                            }
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          }
                                        }
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
        if (!s__s3__tmp__reuse_message) {
          if (!skip) {
            if (s__debug) {
              ret = __VERIFIER_nondet_int();
              if (ret <= 0) {
                goto end;
              }
            }
            if (cb != 0) {
              if (s__state != state) {
                new_state = s__state;
                s__state = state;
                s__state = new_state;
              }
            }
          }
        }
        skip = 0;
      }
    while_0_break:;
    }
  end:
    s__in_handshake--;
    if (cb != 0) {
    }
    return (ret);
  ERROR:
    __VERIFIER_error();
    return (-1);
  }
}


x86 assembly (clang, -O0):
<ssl3_connect>:
push   %rbp
mov    %rsp,%rbp
sub    $0x130,%rsp
mov    %edi,-0x8(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xc(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x10(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x20(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x2c(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x30(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x34(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x40(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x48(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x4c(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x50(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x54(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x58(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x68(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x6c(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x70(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x74(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x78(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x80(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xc0(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xc4(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xc8(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xcc(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xd0(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xd4(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xd8(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xdc(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xe0(%rbp)
mov    -0x8(%rbp),%eax
mov    %eax,-0x14(%rbp)
movl   $0x0,-0xe4(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,-0x98(%rbp)
movl   $0x0,-0xa8(%rbp)
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
movl   $0x0,-0xb8(%rbp)
movl   $0x0,-0xbc(%rbp)
cmpl   $0x0,-0xc(%rbp)
je     12b5 <ssl3_connect+0x195>
mov    -0xc(%rbp),%eax
mov    %eax,-0xa8(%rbp)
jmp    12cd <ssl3_connect+0x1ad>
cmpl   $0x0,-0x48(%rbp)
je     12c8 <ssl3_connect+0x1a8>
mov    -0x48(%rbp),%eax
mov    %eax,-0xa8(%rbp)
jmp    12cd <ssl3_connect+0x1ad>
mov    -0x10(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x10(%rbp)
mov    -0xc0(%rbp),%eax
sub    $0x3000,%eax
cmp    $0x0,%eax
je     1308 <ssl3_connect+0x1e8>
mov    -0xc4(%rbp),%eax
sub    $0x4000,%eax
cmp    $0x0,%eax
je     1303 <ssl3_connect+0x1e3>
jmp    1303 <ssl3_connect+0x1e3>
jmp    1308 <ssl3_connect+0x1e8>
jmp    130d <ssl3_connect+0x1ed>
jmp    1312 <ssl3_connect+0x1f2>
mov    -0x14(%rbp),%eax
mov    %eax,-0xb4(%rbp)
cmpl   $0x3004,-0x14(%rbp)
jne    132d <ssl3_connect+0x20d>
jmp    156f <ssl3_connect+0x44f>
cmpl   $0x4000,-0x14(%rbp)
jne    133f <ssl3_connect+0x21f>
jmp    1586 <ssl3_connect+0x466>
cmpl   $0x1000,-0x14(%rbp)
jne    1351 <ssl3_connect+0x231>
jmp    158b <ssl3_connect+0x46b>
cmpl   $0x5000,-0x14(%rbp)
jne    1363 <ssl3_connect+0x243>
jmp    1590 <ssl3_connect+0x470>
cmpl   $0x1003,-0x14(%rbp)
jne    1375 <ssl3_connect+0x255>
jmp    1595 <ssl3_connect+0x475>
cmpl   $0x1110,-0x14(%rbp)
jne    1387 <ssl3_connect+0x267>
jmp    168e <ssl3_connect+0x56e>
cmpl   $0x1111,-0x14(%rbp)
jne    1399 <ssl3_connect+0x279>
jmp    1693 <ssl3_connect+0x573>
cmpl   $0x1120,-0x14(%rbp)
jne    13ab <ssl3_connect+0x28b>
jmp    16f4 <ssl3_connect+0x5d4>
cmpl   $0x1121,-0x14(%rbp)
jne    13bd <ssl3_connect+0x29d>
jmp    16f9 <ssl3_connect+0x5d9>
cmpl   $0x1130,-0x14(%rbp)
jne    13cf <ssl3_connect+0x2af>
jmp    1758 <ssl3_connect+0x638>
cmpl   $0x1131,-0x14(%rbp)
jne    13e1 <ssl3_connect+0x2c1>
jmp    175d <ssl3_connect+0x63d>
cmpl   $0x1140,-0x14(%rbp)
jne    13f3 <ssl3_connect+0x2d3>
jmp    17cb <ssl3_connect+0x6ab>
cmpl   $0x1141,-0x14(%rbp)
jne    1405 <ssl3_connect+0x2e5>
jmp    17d0 <ssl3_connect+0x6b0>
cmpl   $0x1150,-0x14(%rbp)
jne    1417 <ssl3_connect+0x2f7>
jmp    1835 <ssl3_connect+0x715>
cmpl   $0x1151,-0x14(%rbp)
jne    1429 <ssl3_connect+0x309>
jmp    183a <ssl3_connect+0x71a>
cmpl   $0x1160,-0x14(%rbp)
jne    143b <ssl3_connect+0x31b>
jmp    187e <ssl3_connect+0x75e>
cmpl   $0x1161,-0x14(%rbp)
jne    144d <ssl3_connect+0x32d>
jmp    1883 <ssl3_connect+0x763>
cmpl   $0x1170,-0x14(%rbp)
jne    145f <ssl3_connect+0x33f>
jmp    18e2 <ssl3_connect+0x7c2>
cmpl   $0x1171,-0x14(%rbp)
jne    1471 <ssl3_connect+0x351>
jmp    18e7 <ssl3_connect+0x7c7>
cmpl   $0x1172,-0x14(%rbp)
jne    1483 <ssl3_connect+0x363>
jmp    18ec <ssl3_connect+0x7cc>
cmpl   $0x1173,-0x14(%rbp)
jne    1495 <ssl3_connect+0x375>
jmp    18f1 <ssl3_connect+0x7d1>
cmpl   $0x1180,-0x14(%rbp)
jne    14a7 <ssl3_connect+0x387>
jmp    1923 <ssl3_connect+0x803>
cmpl   $0x1181,-0x14(%rbp)
jne    14b9 <ssl3_connect+0x399>
jmp    1928 <ssl3_connect+0x808>
cmpl   $0x1190,-0x14(%rbp)
jne    14cb <ssl3_connect+0x3ab>
jmp    1982 <ssl3_connect+0x862>
cmpl   $0x1191,-0x14(%rbp)
jne    14dd <ssl3_connect+0x3bd>
jmp    1987 <ssl3_connect+0x867>
cmpl   $0x11a0,-0x14(%rbp)
jne    14ef <ssl3_connect+0x3cf>
jmp    19c0 <ssl3_connect+0x8a0>
cmpl   $0x11a1,-0x14(%rbp)
jne    1501 <ssl3_connect+0x3e1>
jmp    19c5 <ssl3_connect+0x8a5>
cmpl   $0x11b0,-0x14(%rbp)
jne    1513 <ssl3_connect+0x3f3>
jmp    1a5a <ssl3_connect+0x93a>
cmpl   $0x11b1,-0x14(%rbp)
jne    1525 <ssl3_connect+0x405>
jmp    1a5f <ssl3_connect+0x93f>
cmpl   $0x11d0,-0x14(%rbp)
jne    1537 <ssl3_connect+0x417>
jmp    1b2a <ssl3_connect+0xa0a>
cmpl   $0x11d1,-0x14(%rbp)
jne    1549 <ssl3_connect+0x429>
jmp    1b2f <ssl3_connect+0xa0f>
cmpl   $0x1100,-0x14(%rbp)
jne    155b <ssl3_connect+0x43b>
jmp    1b77 <ssl3_connect+0xa57>
cmpl   $0x3,-0x14(%rbp)
jne    156a <ssl3_connect+0x44a>
jmp    1be3 <ssl3_connect+0xac3>
jmp    1c6f <ssl3_connect+0xb4f>
movl   $0x1,-0x18(%rbp)
movl   $0x1000,-0x14(%rbp)
mov    -0x4c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x4c(%rbp)
jmp    158b <ssl3_connect+0x46b>
jmp    1590 <ssl3_connect+0x470>
jmp    1595 <ssl3_connect+0x475>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x0,-0xa8(%rbp)
je     15ae <ssl3_connect+0x48e>
jmp    15ae <ssl3_connect+0x48e>
mov    -0x20(%rbp),%eax
sub    $0xff00,%eax
mov    %eax,-0xe8(%rbp)
cmpl   $0x300,-0xe8(%rbp)
je     15db <ssl3_connect+0x4bb>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x1000,-0x24(%rbp)
cmpl   $0x0,-0x3c(%rbp)
jne    163a <ssl3_connect+0x51a>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x8c(%rbp)
cmpl   $0x0,-0x8c(%rbp)
jne    1615 <ssl3_connect+0x4f5>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
cmpl   $0x0,-0xc8(%rbp)
jne    1631 <ssl3_connect+0x511>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
mov    -0x8c(%rbp),%eax
mov    %eax,-0x3c(%rbp)
cmpl   $0x0,-0xcc(%rbp)
jne    1656 <ssl3_connect+0x536>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
cmpl   $0x0,-0xd0(%rbp)
jne    1672 <ssl3_connect+0x552>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x1110,-0x14(%rbp)
mov    -0x50(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x50(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
jmp    1693 <ssl3_connect+0x573>
movl   $0x0,-0x44(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xe4(%rbp)
jne    16be <ssl3_connect+0x59e>
movl   $0x1,-0xe4(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     16d0 <ssl3_connect+0x5b0>
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x1120,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
mov    -0x2c(%rbp),%eax
cmp    -0x30(%rbp),%eax
je     16ef <ssl3_connect+0x5cf>
jmp    16ef <ssl3_connect+0x5cf>
jmp    1c7e <ssl3_connect+0xb5e>
jmp    16f9 <ssl3_connect+0x5d9>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x1,-0xe4(%rbp)
jne    171d <ssl3_connect+0x5fd>
movl   $0x2,-0xe4(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     172f <ssl3_connect+0x60f>
jmp    1dc2 <ssl3_connect+0xca2>
cmpl   $0x0,-0x34(%rbp)
je     1745 <ssl3_connect+0x625>
movl   $0x11d0,-0x14(%rbp)
jmp    174c <ssl3_connect+0x62c>
movl   $0x1130,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
jmp    175d <ssl3_connect+0x63d>
mov    -0x78(%rbp),%eax
sub    $0x100,%eax
cmp    $0x0,%eax
je     177d <ssl3_connect+0x65d>
movl   $0x1,-0xb8(%rbp)
jmp    17b8 <ssl3_connect+0x698>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x2,-0xe4(%rbp)
jne    17a1 <ssl3_connect+0x681>
movl   $0x3,-0xe4(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     17b3 <ssl3_connect+0x693>
jmp    1dc2 <ssl3_connect+0xca2>
jmp    17b8 <ssl3_connect+0x698>
movl   $0x1140,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
jmp    17d0 <ssl3_connect+0x6b0>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x3,-0xe4(%rbp)
jne    17f4 <ssl3_connect+0x6d4>
movl   $0x4,-0xe4(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1806 <ssl3_connect+0x6e6>
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x1150,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
cmpl   $0x0,-0xd4(%rbp)
jne    1830 <ssl3_connect+0x710>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
jmp    1c7e <ssl3_connect+0xb5e>
jmp    183a <ssl3_connect+0x71a>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x5,-0xe4(%rbp)
jne    1859 <ssl3_connect+0x739>
jmp    1deb <ssl3_connect+0xccb>
cmpl   $0x0,-0xac(%rbp)
jg     186b <ssl3_connect+0x74b>
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x1160,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
jmp    1883 <ssl3_connect+0x763>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x4,-0xe4(%rbp)
jne    18a7 <ssl3_connect+0x787>
movl   $0x5,-0xe4(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     18b9 <ssl3_connect+0x799>
jmp    1dc2 <ssl3_connect+0xca2>
cmpl   $0x0,-0x68(%rbp)
je     18cf <ssl3_connect+0x7af>
movl   $0x1170,-0x14(%rbp)
jmp    18d6 <ssl3_connect+0x7b6>
movl   $0x1180,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
jmp    18e7 <ssl3_connect+0x7c7>
jmp    18ec <ssl3_connect+0x7cc>
jmp    18f1 <ssl3_connect+0x7d1>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1910 <ssl3_connect+0x7f0>
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x1180,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
jmp    1928 <ssl3_connect+0x808>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1947 <ssl3_connect+0x827>
jmp    1dc2 <ssl3_connect+0xca2>
movslq -0x78(%rbp),%rax
mov    %rax,-0xa0(%rbp)
cmpl   $0x1,-0x68(%rbp)
jne    1968 <ssl3_connect+0x848>
movl   $0x1190,-0x14(%rbp)
jmp    1976 <ssl3_connect+0x856>
movl   $0x11a0,-0x14(%rbp)
movl   $0x0,-0x5c(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
jmp    1987 <ssl3_connect+0x867>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     19a6 <ssl3_connect+0x886>
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x11a0,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
movl   $0x0,-0x5c(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
jmp    19c5 <ssl3_connect+0x8a5>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     19e4 <ssl3_connect+0x8c4>
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x11b0,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
mov    -0x74(%rbp),%eax
mov    %eax,-0x84(%rbp)
cmpl   $0x0,-0x6c(%rbp)
jne    1a14 <ssl3_connect+0x8f4>
movl   $0x0,-0x88(%rbp)
jmp    1a1d <ssl3_connect+0x8fd>
mov    -0x80(%rbp),%eax
mov    %eax,-0x88(%rbp)
cmpl   $0x0,-0xd8(%rbp)
jne    1a39 <ssl3_connect+0x919>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
cmpl   $0x0,-0xdc(%rbp)
jne    1a55 <ssl3_connect+0x935>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
jmp    1c7e <ssl3_connect+0xb5e>
jmp    1a5f <ssl3_connect+0x93f>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1a7e <ssl3_connect+0x95e>
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x1100,-0x14(%rbp)
movslq -0x60(%rbp),%rax
mov    %rax,-0xf0(%rbp)
mov    -0xf0(%rbp),%rax
add    $0x5,%rax
mov    %rax,-0xf8(%rbp)
mov    -0xf8(%rbp),%rax
mov    %eax,-0x60(%rbp)
cmpl   $0x0,-0x34(%rbp)
je     1b17 <ssl3_connect+0x9f7>
movl   $0x3,-0x7c(%rbp)
movslq -0x60(%rbp),%rax
mov    %rax,-0x100(%rbp)
mov    -0x100(%rbp),%rax
sub    $0x2,%rax
cmp    $0x0,%rax
je     1b12 <ssl3_connect+0x9f2>
movl   $0x3,-0x14(%rbp)
movslq -0x60(%rbp),%rax
mov    %rax,-0x108(%rbp)
mov    -0x108(%rbp),%rax
add    $0x4,%rax
mov    %rax,-0x110(%rbp)
mov    -0x110(%rbp),%rax
mov    %eax,-0x60(%rbp)
movl   $0x0,-0x64(%rbp)
jmp    1b1e <ssl3_connect+0x9fe>
movl   $0x11d0,-0x7c(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
jmp    1b2f <ssl3_connect+0xa0f>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1b4e <ssl3_connect+0xa2e>
jmp    1dc2 <ssl3_connect+0xca2>
cmpl   $0x0,-0x34(%rbp)
je     1b64 <ssl3_connect+0xa44>
movl   $0x11a0,-0x14(%rbp)
jmp    1b6b <ssl3_connect+0xa4b>
movl   $0x3,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
movslq -0xa4(%rbp),%rax
mov    %rax,-0x118(%rbp)
cmpq   $0x0,-0x118(%rbp)
jle    1bd8 <ssl3_connect+0xab8>
movl   $0x2,-0x38(%rbp)
mov    -0xe0(%rbp),%eax
mov    %eax,-0xa4(%rbp)
movslq -0xa4(%rbp),%rax
mov    %rax,-0x120(%rbp)
cmpq   $0x0,-0x120(%rbp)
jg     1bd1 <ssl3_connect+0xab1>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0x1,-0x38(%rbp)
mov    -0x7c(%rbp),%eax
mov    %eax,-0x14(%rbp)
jmp    1c7e <ssl3_connect+0xb5e>
cmpl   $0x0,-0x3c(%rbp)
je     1bf4 <ssl3_connect+0xad4>
movl   $0x0,-0x3c(%rbp)
movslq -0x60(%rbp),%rax
mov    %rax,-0x128(%rbp)
mov    -0x128(%rbp),%rax
sub    $0x4,%rax
mov    %rax,-0x130(%rbp)
cmpq   $0x0,-0x130(%rbp)
jne    1c24 <ssl3_connect+0xb04>
jmp    1c24 <ssl3_connect+0xb04>
movl   $0x0,-0x28(%rbp)
movl   $0x0,-0x18(%rbp)
cmpl   $0x0,-0x34(%rbp)
je     1c45 <ssl3_connect+0xb25>
mov    -0x54(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x54(%rbp)
movl   $0x1,-0xac(%rbp)
mov    -0x58(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x58(%rbp)
cmpl   $0x0,-0xa8(%rbp)
je     1c6a <ssl3_connect+0xb4a>
jmp    1c6a <ssl3_connect+0xb4a>
jmp    1dc2 <ssl3_connect+0xca2>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1dc2 <ssl3_connect+0xca2>
jmp    1c83 <ssl3_connect+0xb63>
jmp    1c88 <ssl3_connect+0xb68>
jmp    1c8d <ssl3_connect+0xb6d>
jmp    1c92 <ssl3_connect+0xb72>
jmp    1c97 <ssl3_connect+0xb77>
jmp    1c9c <ssl3_connect+0xb7c>
jmp    1ca1 <ssl3_connect+0xb81>
jmp    1ca6 <ssl3_connect+0xb86>
jmp    1cab <ssl3_connect+0xb8b>
jmp    1cb0 <ssl3_connect+0xb90>
jmp    1cb5 <ssl3_connect+0xb95>
jmp    1cba <ssl3_connect+0xb9a>
jmp    1cbf <ssl3_connect+0xb9f>
jmp    1cc4 <ssl3_connect+0xba4>
jmp    1cc9 <ssl3_connect+0xba9>
jmp    1cce <ssl3_connect+0xbae>
jmp    1cd3 <ssl3_connect+0xbb3>
jmp    1cd8 <ssl3_connect+0xbb8>
jmp    1cdd <ssl3_connect+0xbbd>
jmp    1ce2 <ssl3_connect+0xbc2>
jmp    1ce7 <ssl3_connect+0xbc7>
jmp    1cec <ssl3_connect+0xbcc>
jmp    1cf1 <ssl3_connect+0xbd1>
jmp    1cf6 <ssl3_connect+0xbd6>
jmp    1cfb <ssl3_connect+0xbdb>
jmp    1d00 <ssl3_connect+0xbe0>
jmp    1d05 <ssl3_connect+0xbe5>
jmp    1d0a <ssl3_connect+0xbea>
jmp    1d0f <ssl3_connect+0xbef>
jmp    1d14 <ssl3_connect+0xbf4>
jmp    1d19 <ssl3_connect+0xbf9>
jmp    1d1e <ssl3_connect+0xbfe>
jmp    1d23 <ssl3_connect+0xc03>
jmp    1d28 <ssl3_connect+0xc08>
cmpl   $0x0,-0x70(%rbp)
jne    1db3 <ssl3_connect+0xc93>
cmpl   $0x0,-0xb8(%rbp)
jne    1dae <ssl3_connect+0xc8e>
cmpl   $0x0,-0x40(%rbp)
je     1d6d <ssl3_connect+0xc4d>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1d68 <ssl3_connect+0xc48>
jmp    1dc2 <ssl3_connect+0xca2>
jmp    1d6d <ssl3_connect+0xc4d>
cmpl   $0x0,-0xa8(%rbp)
je     1da9 <ssl3_connect+0xc89>
mov    -0x14(%rbp),%eax
cmp    -0xb4(%rbp),%eax
je     1da4 <ssl3_connect+0xc84>
mov    -0x14(%rbp),%eax
mov    %eax,-0xb0(%rbp)
mov    -0xb4(%rbp),%eax
mov    %eax,-0x14(%rbp)
mov    -0xb0(%rbp),%eax
mov    %eax,-0x14(%rbp)
jmp    1da9 <ssl3_connect+0xc89>
jmp    1dae <ssl3_connect+0xc8e>
jmp    1db3 <ssl3_connect+0xc93>
movl   $0x0,-0xb8(%rbp)
jmp    130d <ssl3_connect+0x1ed>
mov    -0x10(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,-0x10(%rbp)
cmpl   $0x0,-0xa8(%rbp)
je     1ddd <ssl3_connect+0xcbd>
jmp    1ddd <ssl3_connect+0xcbd>
mov    -0xac(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    1df9 <ssl3_connect+0xcd9>
mov    $0x0,%al
call   1040 <__VERIFIER_error@plt>
movl   $0xffffffff,-0x4(%rbp)
mov    -0x4(%rbp),%eax
add    $0x130,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<ssl3_connect>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x68,%rsp
mov    %edi,%r14d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x58(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x28(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x50(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x60(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x40(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x48(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r12
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r15
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x38(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbx
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x30(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
test   %r12d,%r12d
sete   %al
test   %r15d,%r15d
sete   %r15b
or     %al,%r15b
xor    %eax,%eax
test   %r13d,%r13d
sete   %al
shl    $0x4,%eax
add    $0x1170,%eax
mov    %eax,0x24(%rsp)
cmpl   $0x0,0x28(%rsp)
mov    $0x1130,%eax
mov    $0x11d0,%ecx
cmove  %eax,%ecx
mov    %ecx,0x20(%rsp)
mov    $0x3,%eax
mov    $0x11a0,%ecx
cmove  %eax,%ecx
mov    %ecx,0x1c(%rsp)
test   %ebx,%ebx
sete   %al
test   %ebp,%ebp
sete   %cl
or     %al,%cl
mov    %cl,0xb(%rsp)
xor    %ebx,%ebx
cmp    $0x1,%r13d
setne  %bl
shl    $0x4,%ebx
add    $0x1190,%ebx
mov    %rax,0x10(%rsp)
movl   $0x0,0x4(%rsp)
cs nopw 0x0(%rax,%rax,1)
cmp    $0x3003,%r14d
jle    12e0 <ssl3_connect+0x1c0>
cmp    $0x3004,%r14d
je     1300 <ssl3_connect+0x1e0>
cmp    $0x4000,%r14d
je     1300 <ssl3_connect+0x1e0>
cmp    $0x5000,%r14d
je     1300 <ssl3_connect+0x1e0>
jmp    1375 <ssl3_connect+0x255>
nopl   0x0(%rax)
cmp    $0x1000,%r14d
je     1300 <ssl3_connect+0x1e0>
cmp    $0x1003,%r14d
jne    1375 <ssl3_connect+0x255>
cs nopw 0x0(%rax,%rax,1)
mov    $0xffffffff,%ebp
cmpl   $0x10200,0x58(%rsp)
jne    162f <ssl3_connect+0x50f>
test   %r13d,%r13d
jne    1336 <ssl3_connect+0x216>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
test   %r13d,%r13d
je     162f <ssl3_connect+0x50f>
cmpl   $0x0,0x48(%rsp)
je     162f <ssl3_connect+0x50f>
test   %r15b,%r15b
jne    162f <ssl3_connect+0x50f>
mov    $0x1110,%r14d
xor    %r12d,%r12d
or     0x60(%rsp),%r12d
jne    12b0 <ssl3_connect+0x190>
cmpl   $0x0,0x50(%rsp)
je     12b0 <ssl3_connect+0x190>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
test   %ebp,%ebp
jg     12b0 <ssl3_connect+0x190>
jmp    162f <ssl3_connect+0x50f>
mov    %r14d,%eax
and    $0xfffffffe,%eax
lea    -0x1110(%rax),%ecx
rol    $0x1c,%ecx
cmp    $0x5,%ecx
ja     13c5 <ssl3_connect+0x2a5>
lea    0xc70(%rip),%rdx
movslq (%rdx,%rcx,4),%rax
add    %rdx,%rax
jmp    *%rax
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
test   %ebp,%ebp
jle    162f <ssl3_connect+0x50f>
mov    0x4(%rsp),%ecx
test   %ecx,%ecx
mov    $0x1,%eax
cmove  %eax,%ecx
mov    %ecx,0x4(%rsp)
mov    $0x1120,%r14d
jmp    1345 <ssl3_connect+0x225>
mov    %r14d,%ecx
and    $0xfffffffc,%ecx
cmp    $0x1170,%ecx
je     1516 <ssl3_connect+0x3f6>
add    $0xffffee80,%eax
rol    $0x1c,%eax
cmp    $0x5,%eax
ja     15bc <ssl3_connect+0x49c>
lea    0xc29(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
mov    %ebx,%r14d
jmp    15f7 <ssl3_connect+0x4d7>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
test   %ebp,%ebp
jle    162f <ssl3_connect+0x50f>
mov    0x4(%rsp),%ecx
cmp    $0x1,%ecx
mov    $0x2,%eax
cmove  %eax,%ecx
mov    %ecx,0x4(%rsp)
xor    %r12d,%r12d
mov    0x20(%rsp),%r14d
jmp    1348 <ssl3_connect+0x228>
mov    $0x1140,%r14d
mov    $0x1,%r12d
cmpl   $0x100,0x40(%rsp)
jne    1348 <ssl3_connect+0x228>
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
mov    0x4(%rsp),%ecx
cmp    $0x2,%ecx
mov    $0x3,%eax
cmove  %eax,%ecx
mov    %ecx,0x4(%rsp)
jmp    15f7 <ssl3_connect+0x4d7>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
test   %ebp,%ebp
jle    162f <ssl3_connect+0x50f>
mov    0x4(%rsp),%ecx
cmp    $0x3,%ecx
mov    $0x4,%eax
cmove  %eax,%ecx
mov    %ecx,0x4(%rsp)
cmpl   $0x0,0x38(%rsp)
je     162a <ssl3_connect+0x50a>
xor    %r12d,%r12d
mov    $0x1150,%r14d
jmp    1348 <ssl3_connect+0x228>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
cmpl   $0x5,0x4(%rsp)
je     1623 <ssl3_connect+0x503>
mov    %rax,%rbp
test   %ebp,%ebp
jle    162f <ssl3_connect+0x50f>
mov    $0x1160,%r14d
jmp    1345 <ssl3_connect+0x225>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
test   %ebp,%ebp
jle    162f <ssl3_connect+0x50f>
mov    0x4(%rsp),%ecx
cmp    $0x4,%ecx
mov    $0x5,%eax
cmove  %eax,%ecx
mov    %ecx,0x4(%rsp)
xor    %r12d,%r12d
mov    0x24(%rsp),%r14d
jmp    1348 <ssl3_connect+0x228>
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
mov    $0x1180,%r14d
jmp    15f7 <ssl3_connect+0x4d7>
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
mov    $0x11a0,%r14d
jmp    15f7 <ssl3_connect+0x4d7>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
test   %ebp,%ebp
jle    162f <ssl3_connect+0x50f>
cmpb   $0x0,0xb(%rsp)
jne    162a <ssl3_connect+0x50a>
mov    $0x11b0,%r14d
jmp    1345 <ssl3_connect+0x225>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
test   %ebp,%ebp
jle    162f <ssl3_connect+0x50f>
mov    0x10(%rsp),%rcx
lea    0x5(%rcx),%eax
xor    %r12d,%r12d
cmpl   $0x0,0x28(%rsp)
je     1601 <ssl3_connect+0x4e1>
add    $0x9,%ecx
cmp    $0x2,%eax
cmove  %eax,%ecx
mov    %rcx,0x10(%rsp)
movl   $0x3,0xc(%rsp)
mov    $0x3,%r14d
mov    $0x1100,%eax
cmove  %eax,%r14d
jmp    1348 <ssl3_connect+0x228>
mov    $0xffffffff,%ebp
cmp    $0x1100,%r14d
jne    1640 <ssl3_connect+0x520>
xor    %r12d,%r12d
mov    0x30(%rsp),%rax
test   %eax,%eax
jle    1619 <ssl3_connect+0x4f9>
mov    0xc(%rsp),%r14d
test   %eax,%eax
jg     1348 <ssl3_connect+0x228>
jmp    162f <ssl3_connect+0x50f>
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
mov    0x1c(%rsp),%r14d
test   %ebp,%ebp
jg     1348 <ssl3_connect+0x228>
jmp    162f <ssl3_connect+0x50f>
mov    $0x1100,%r14d
movl   $0x11d0,0xc(%rsp)
mov    %rax,0x10(%rsp)
jmp    1348 <ssl3_connect+0x228>
mov    0xc(%rsp),%r14d
jmp    1348 <ssl3_connect+0x228>
xor    %eax,%eax
call   1040 <__VERIFIER_error@plt>
mov    $0xffffffff,%ebp
mov    %ebp,%eax
add    $0x68,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret
cmp    $0x3,%r14d
jne    162f <ssl3_connect+0x50f>
mov    $0x1,%ebp
jmp    162f <ssl3_connect+0x50f>

LLVM IR (-O0):
define i32 @ssl3_connect(i32 %0) {
%2 = alloca i32
%3 = alloca i32
%4 = alloca i32
%5 = alloca i32
%6 = alloca i32
%7 = alloca i32
%8 = alloca i32
%9 = alloca i32
%10 = alloca i32
%11 = alloca i32
%12 = alloca i32
%13 = alloca i32
%14 = alloca i32
%15 = alloca i32
%16 = alloca i32
%17 = alloca i32
%18 = alloca i32
%19 = alloca i32
%20 = alloca i32
%21 = alloca i32
%22 = alloca i32
%23 = alloca i32
%24 = alloca i32
%25 = alloca i32
%26 = alloca i32
%27 = alloca i32
%28 = alloca i32
%29 = alloca i32
%30 = alloca i32
%31 = alloca i32
%32 = alloca i32
%33 = alloca i32
%34 = alloca i32
%35 = alloca i32
%36 = alloca i32
%37 = alloca i64
%38 = alloca i64
%39 = alloca i32
%40 = alloca i32
%41 = alloca i32
%42 = alloca i32
%43 = alloca i32
%44 = alloca i32
%45 = alloca i32
%46 = alloca i32
%47 = alloca i32
%48 = alloca i32
%49 = alloca i32
%50 = alloca i32
%51 = alloca i32
%52 = alloca i32
%53 = alloca i32
%54 = alloca i32
%55 = alloca i32
%56 = alloca i32
%57 = alloca i64
%58 = alloca i64
%59 = alloca i64
%60 = alloca i64
%61 = alloca i64
%62 = alloca i64
%63 = alloca i64
%64 = alloca i64
%65 = alloca i64
store i32 %0, i32* %3
%66 = call i8* (...) @__VERIFIER_nondet_int()
%67 = ptrtoint i8* %66 to i32
store i32 %67, i32* %4
%68 = call i8* (...) @__VERIFIER_nondet_int()
%69 = ptrtoint i8* %68 to i32
store i32 %69, i32* %5
%70 = call i8* (...) @__VERIFIER_nondet_int()
%71 = ptrtoint i8* %70 to i32
store i32 %71, i32* %9
%72 = call i8* (...) @__VERIFIER_nondet_int()
%73 = ptrtoint i8* %72 to i32
store i32 %73, i32* %12
%74 = call i8* (...) @__VERIFIER_nondet_int()
%75 = ptrtoint i8* %74 to i32
store i32 %75, i32* %13
%76 = call i8* (...) @__VERIFIER_nondet_int()
%77 = ptrtoint i8* %76 to i32
store i32 %77, i32* %14
%78 = call i8* (...) @__VERIFIER_nondet_int()
%79 = ptrtoint i8* %78 to i32
store i32 %79, i32* %17
%80 = call i8* (...) @__VERIFIER_nondet_int()
%81 = ptrtoint i8* %80 to i32
store i32 %81, i32* %19
%82 = call i8* (...) @__VERIFIER_nondet_int()
%83 = ptrtoint i8* %82 to i32
store i32 %83, i32* %20
%84 = call i8* (...) @__VERIFIER_nondet_int()
%85 = ptrtoint i8* %84 to i32
store i32 %85, i32* %21
%86 = call i8* (...) @__VERIFIER_nondet_int()
%87 = ptrtoint i8* %86 to i32
store i32 %87, i32* %22
%88 = call i8* (...) @__VERIFIER_nondet_int()
%89 = ptrtoint i8* %88 to i32
store i32 %89, i32* %23
%90 = call i8* (...) @__VERIFIER_nondet_int()
%91 = ptrtoint i8* %90 to i32
store i32 %91, i32* %27
%92 = call i8* (...) @__VERIFIER_nondet_int()
%93 = ptrtoint i8* %92 to i32
store i32 %93, i32* %28
%94 = call i8* (...) @__VERIFIER_nondet_int()
%95 = ptrtoint i8* %94 to i32
store i32 %95, i32* %29
%96 = call i8* (...) @__VERIFIER_nondet_int()
%97 = ptrtoint i8* %96 to i32
store i32 %97, i32* %30
%98 = call i8* (...) @__VERIFIER_nondet_int()
%99 = ptrtoint i8* %98 to i32
store i32 %99, i32* %31
%100 = call i8* (...) @__VERIFIER_nondet_int()
%101 = ptrtoint i8* %100 to i32
store i32 %101, i32* %33
%102 = call i8* (...) @__VERIFIER_nondet_int()
%103 = ptrtoint i8* %102 to i32
store i32 %103, i32* %46
%104 = call i8* (...) @__VERIFIER_nondet_int()
%105 = ptrtoint i8* %104 to i32
store i32 %105, i32* %47
%106 = call i8* (...) @__VERIFIER_nondet_int()
%107 = ptrtoint i8* %106 to i32
store i32 %107, i32* %48
%108 = call i8* (...) @__VERIFIER_nondet_int()
%109 = ptrtoint i8* %108 to i32
store i32 %109, i32* %49
%110 = call i8* (...) @__VERIFIER_nondet_int()
%111 = ptrtoint i8* %110 to i32
store i32 %111, i32* %50
%112 = call i8* (...) @__VERIFIER_nondet_int()
%113 = ptrtoint i8* %112 to i32
store i32 %113, i32* %51
%114 = call i8* (...) @__VERIFIER_nondet_int()
%115 = ptrtoint i8* %114 to i32
store i32 %115, i32* %52
%116 = call i8* (...) @__VERIFIER_nondet_int()
%117 = ptrtoint i8* %116 to i32
store i32 %117, i32* %53
%118 = call i8* (...) @__VERIFIER_nondet_int()
%119 = ptrtoint i8* %118 to i32
store i32 %119, i32* %54
%120 = load i32, i32* %3
store i32 %120, i32* %6
store i32 0, i32* %55
%121 = call i8* (...) @__VERIFIER_nondet_int()
%122 = ptrtoint i8* %121 to i64
store i64 %122, i64* %37
store i32 0, i32* %40
store i32 -1, i32* %41
store i32 0, i32* %44
store i32 0, i32* %45
%123 = load i32, i32* %4
%124 = icmp ne i32 %123, 0
br i1 %124, label %125, label %127
125: ; preds = %1
%126 = load i32, i32* %4
store i32 %126, i32* %40
br label %133
127: ; preds = %1
%128 = load i32, i32* %19
%129 = icmp ne i32 %128, 0
br i1 %129, label %130, label %132
130: ; preds = %127
%131 = load i32, i32* %19
store i32 %131, i32* %40
br label %132
132: ; preds = %130, %127
br label %133
133: ; preds = %132, %125
%134 = load i32, i32* %5
%135 = add nsw i32 %134, 1
store i32 %135, i32* %5
%136 = load i32, i32* %46
%137 = sub nsw i32 %136, 12288
%138 = icmp ne i32 %137, 0
br i1 %138, label %139, label %145
139: ; preds = %133
%140 = load i32, i32* %47
%141 = sub nsw i32 %140, 16384
%142 = icmp ne i32 %141, 0
br i1 %142, label %143, label %144
143: ; preds = %139
br label %144
144: ; preds = %143, %139
br label %145
145: ; preds = %144, %133
br label %146
146: ; preds = %145, %629
br label %147
147: ; preds = %146
%148 = load i32, i32* %6
store i32 %148, i32* %43
%149 = load i32, i32* %6
%150 = icmp eq i32 %149, 12292
br i1 %150, label %151, label %152
151: ; preds = %147
br label %283
152: ; preds = %147
%153 = load i32, i32* %6
%154 = icmp eq i32 %153, 16384
br i1 %154, label %155, label %156
155: ; preds = %152
br label %286
156: ; preds = %152
%157 = load i32, i32* %6
%158 = icmp eq i32 %157, 4096
br i1 %158, label %159, label %160
159: ; preds = %156
br label %287
160: ; preds = %156
%161 = load i32, i32* %6
%162 = icmp eq i32 %161, 20480
br i1 %162, label %163, label %164
163: ; preds = %160
br label %288
164: ; preds = %160
%165 = load i32, i32* %6
%166 = icmp eq i32 %165, 4099
br i1 %166, label %167, label %168
167: ; preds = %164
br label %289
168: ; preds = %164
%169 = load i32, i32* %6
%170 = icmp eq i32 %169, 4368
br i1 %170, label %171, label %172
171: ; preds = %168
br label %325
172: ; preds = %168
%173 = load i32, i32* %6
%174 = icmp eq i32 %173, 4369
br i1 %174, label %175, label %176
175: ; preds = %172
br label %326
176: ; preds = %172
%177 = load i32, i32* %6
%178 = icmp eq i32 %177, 4384
br i1 %178, label %179, label %180
179: ; preds = %176
br label %342
180: ; preds = %176
%181 = load i32, i32* %6
%182 = icmp eq i32 %181, 4385
br i1 %182, label %183, label %184
183: ; preds = %180
br label %343
184: ; preds = %180
%185 = load i32, i32* %6
%186 = icmp eq i32 %185, 4400
br i1 %186, label %187, label %188
187: ; preds = %184
br label %359
188: ; preds = %184
%189 = load i32, i32* %6
%190 = icmp eq i32 %189, 4401
br i1 %190, label %191, label %192
191: ; preds = %188
br label %360
192: ; preds = %188
%193 = load i32, i32* %6
%194 = icmp eq i32 %193, 4416
br i1 %194, label %195, label %196
195: ; preds = %192
br label %377
196: ; preds = %192
%197 = load i32, i32* %6
%198 = icmp eq i32 %197, 4417
br i1 %198, label %199, label %200
199: ; preds = %196
br label %378
200: ; preds = %196
%201 = load i32, i32* %6
%202 = icmp eq i32 %201, 4432
br i1 %202, label %203, label %204
203: ; preds = %200
br label %393
204: ; preds = %200
%205 = load i32, i32* %6
%206 = icmp eq i32 %205, 4433
br i1 %206, label %207, label %208
207: ; preds = %204
br label %394
208: ; preds = %204
%209 = load i32, i32* %6
%210 = icmp eq i32 %209, 4448
br i1 %210, label %211, label %212
211: ; preds = %208
br label %405
212: ; preds = %208
%213 = load i32, i32* %6
%214 = icmp eq i32 %213, 4449
br i1 %214, label %215, label %216
215: ; preds = %212
br label %406
216: ; preds = %212
%217 = load i32, i32* %6
%218 = icmp eq i32 %217, 4464
br i1 %218, label %219, label %220
219: ; preds = %216
br label %422
220: ; preds = %216
%221 = load i32, i32* %6
%222 = icmp eq i32 %221, 4465
br i1 %222, label %223, label %224
223: ; preds = %220
br label %423
224: ; preds = %220
%225 = load i32, i32* %6
%226 = icmp eq i32 %225, 4466
br i1 %226, label %227, label %228
227: ; preds = %224
br label %424
228: ; preds = %224
%229 = load i32, i32* %6
%230 = icmp eq i32 %229, 4467
br i1 %230, label %231, label %232
231: ; preds = %228
br label %425
232: ; preds = %228
%233 = load i32, i32* %6
%234 = icmp eq i32 %233, 4480
br i1 %234, label %235, label %236
235: ; preds = %232
br label %432
236: ; preds = %232
%237 = load i32, i32* %6
%238 = icmp eq i32 %237, 4481
br i1 %238, label %239, label %240
239: ; preds = %236
br label %433
240: ; preds = %236
%241 = load i32, i32* %6
%242 = icmp eq i32 %241, 4496
br i1 %242, label %243, label %244
243: ; preds = %240
br label %447
244: ; preds = %240
%245 = load i32, i32* %6
%246 = icmp eq i32 %245, 4497
br i1 %246, label %247, label %248
247: ; preds = %244
br label %448
248: ; preds = %244
%249 = load i32, i32* %6
%250 = icmp eq i32 %249, 4512
br i1 %250, label %251, label %252
251: ; preds = %248
br label %455
252: ; preds = %248
%253 = load i32, i32* %6
%254 = icmp eq i32 %253, 4513
br i1 %254, label %255, label %256
255: ; preds = %252
br label %456
256: ; preds = %252
%257 = load i32, i32* %6
%258 = icmp eq i32 %257, 4528
br i1 %258, label %259, label %260
259: ; preds = %256
br label %478
260: ; preds = %256
%261 = load i32, i32* %6
%262 = icmp eq i32 %261, 4529
br i1 %262, label %263, label %264
263: ; preds = %260
br label %479
264: ; preds = %260
%265 = load i32, i32* %6
%266 = icmp eq i32 %265, 4560
br i1 %266, label %267, label %268
267: ; preds = %264
br label %510
268: ; preds = %264
%269 = load i32, i32* %6
%270 = icmp eq i32 %269, 4561
br i1 %270, label %271, label %272
271: ; preds = %268
br label %511
272: ; preds = %268
%273 = load i32, i32* %6
%274 = icmp eq i32 %273, 4352
br i1 %274, label %275, label %276
275: ; preds = %272
br label %523
276: ; preds = %272
%277 = load i32, i32* %6
%278 = icmp eq i32 %277, 3
br i1 %278, label %279, label %280
279: ; preds = %276
br label %538
280: ; preds = %276
br label %563
281: ; No predecessors!
br i1 false, label %282, label %564
282: ; preds = %281
br label %283
283: ; preds = %282, %151
store i32 1, i32* %7
store i32 4096, i32* %6
%284 = load i32, i32* %20
%285 = add nsw i32 %284, 1
store i32 %285, i32* %20
br label %286
286: ; preds = %283, %155
br label %287
287: ; preds = %286, %159
br label %288
288: ; preds = %287, %163
br label %289
289: ; preds = %288, %167
store i32 0, i32* %8
%290 = load i32, i32* %40
%291 = icmp ne i32 %290, 0
br i1 %291, label %292, label %293
292: ; preds = %289
br label %293
293: ; preds = %292, %289
%294 = load i32, i32* %9
%295 = sub nsw i32 %294, 65280
store i32 %295, i32* %56
%296 = load i32, i32* %56
%297 = icmp ne i32 %296, 768
br i1 %297, label %298, label %299
298: ; preds = %293
store i32 -1, i32* %41
br label %631
299: ; preds = %293
store i32 4096, i32* %10
%300 = load i32, i32* %16
%301 = icmp eq i32 %300, 0
br i1 %301, label %302, label %314
302: ; preds = %299
%303 = call i8* (...) @__VERIFIER_nondet_int()
%304 = ptrtoint i8* %303 to i32
store i32 %304, i32* %36
%305 = load i32, i32* %36
%306 = icmp eq i32 %305, 0
br i1 %306, label %307, label %308
307: ; preds = %302
store i32 -1, i32* %41
br label %631
308: ; preds = %302
%309 = load i32, i32* %48
%310 = icmp ne i32 %309, 0
br i1 %310, label %312, label %311
311: ; preds = %308
store i32 -1, i32* %41
br label %631
312: ; preds = %308
%313 = load i32, i32* %36
store i32 %313, i32* %16
br label %314
314: ; preds = %312, %299
%315 = load i32, i32* %49
%316 = icmp ne i32 %315, 0
br i1 %316, label %318, label %317
317: ; preds = %314
store i32 -1, i32* %41
br label %631
318: ; preds = %314
%319 = load i32, i32* %50
%320 = icmp ne i32 %319, 0
br i1 %320, label %322, label %321
321: ; preds = %318
store i32 -1, i32* %41
br label %631
322: ; preds = %318
store i32 4368, i32* %6
%323 = load i32, i32* %21
%324 = add nsw i32 %323, 1
store i32 %324, i32* %21
store i32 0, i32* %11
br label %565
325: ; preds = %171
br label %326
326: ; preds = %325, %175
store i32 0, i32* %18
%327 = call i8* (...) @__VERIFIER_nondet_int()
%328 = ptrtoint i8* %327 to i32
store i32 %328, i32* %41
%329 = load i32, i32* %55
%330 = icmp eq i32 %329, 0
br i1 %330, label %331, label %332
331: ; preds = %326
store i32 1, i32* %55
br label %332
332: ; preds = %331, %326
%333 = load i32, i32* %41
%334 = icmp sle i32 %333, 0
br i1 %334, label %335, label %336
335: ; preds = %332
br label %631
336: ; preds = %332
store i32 4384, i32* %6
store i32 0, i32* %11
%337 = load i32, i32* %12
%338 = load i32, i32* %13
%339 = icmp ne i32 %337, %338
br i1 %339, label %340, label %341
340: ; preds = %336
br label %341
341: ; preds = %340, %336
br label %565
342: ; preds = %179
br label %343
343: ; preds = %342, %183
%344 = call i8* (...) @__VERIFIER_nondet_int()
%345 = ptrtoint i8* %344 to i32
store i32 %345, i32* %41
%346 = load i32, i32* %55
%347 = icmp eq i32 %346, 1
br i1 %347, label %348, label %349
348: ; preds = %343
store i32 2, i32* %55
br label %349
349: ; preds = %348, %343
%350 = load i32, i32* %41
%351 = icmp sle i32 %350, 0
br i1 %351, label %352, label %353
352: ; preds = %349
br label %631
353: ; preds = %349
%354 = load i32, i32* %14
%355 = icmp ne i32 %354, 0
br i1 %355, label %356, label %357
356: ; preds = %353
store i32 4560, i32* %6
br label %358
357: ; preds = %353
store i32 4400, i32* %6
br label %358
358: ; preds = %357, %356
store i32 0, i32* %11
br label %565
359: ; preds = %187
br label %360
360: ; preds = %359, %191
%361 = load i32, i32* %31
%362 = sub nsw i32 %361, 256
%363 = icmp ne i32 %362, 0
br i1 %363, label %364, label %365
364: ; preds = %360
store i32 1, i32* %44
br label %376
365: ; preds = %360
%366 = call i8* (...) @__VERIFIER_nondet_int()
%367 = ptrtoint i8* %366 to i32
store i32 %367, i32* %41
%368 = load i32, i32* %55
%369 = icmp eq i32 %368, 2
br i1 %369, label %370, label %371
370: ; preds = %365
store i32 3, i32* %55
br label %371
371: ; preds = %370, %365
%372 = load i32, i32* %41
%373 = icmp sle i32 %372, 0
br i1 %373, label %374, label %375
374: ; preds = %371
br label %631
375: ; preds = %371
br label %376
376: ; preds = %375, %364
store i32 4416, i32* %6
store i32 0, i32* %11
br label %565
377: ; preds = %195
br label %378
378: ; preds = %377, %199
%379 = call i8* (...) @__VERIFIER_nondet_int()
%380 = ptrtoint i8* %379 to i32
store i32 %380, i32* %41
%381 = load i32, i32* %55
%382 = icmp eq i32 %381, 3
br i1 %382, label %383, label %384
383: ; preds = %378
store i32 4, i32* %55
br label %384
384: ; preds = %383, %378
%385 = load i32, i32* %41
%386 = icmp sle i32 %385, 0
br i1 %386, label %387, label %388
387: ; preds = %384
br label %631
388: ; preds = %384
store i32 4432, i32* %6
store i32 0, i32* %11
%389 = load i32, i32* %51
%390 = icmp ne i32 %389, 0
br i1 %390, label %392, label %391
391: ; preds = %388
store i32 -1, i32* %41
br label %631
392: ; preds = %388
br label %565
393: ; preds = %203
br label %394
394: ; preds = %393, %207
%395 = call i8* (...) @__VERIFIER_nondet_int()
%396 = ptrtoint i8* %395 to i32
store i32 %396, i32* %41
%397 = load i32, i32* %55
%398 = icmp eq i32 %397, 5
br i1 %398, label %399, label %400
399: ; preds = %394
br label %639
400: ; preds = %394
%401 = load i32, i32* %41
%402 = icmp sle i32 %401, 0
br i1 %402, label %403, label %404
403: ; preds = %400
br label %631
404: ; preds = %400
store i32 4448, i32* %6
store i32 0, i32* %11
br label %565
405: ; preds = %211
br label %406
406: ; preds = %405, %215
%407 = call i8* (...) @__VERIFIER_nondet_int()
%408 = ptrtoint i8* %407 to i32
store i32 %408, i32* %41
%409 = load i32, i32* %55
%410 = icmp eq i32 %409, 4
br i1 %410, label %411, label %412
411: ; preds = %406
store i32 5, i32* %55
br label %412
412: ; preds = %411, %406
%413 = load i32, i32* %41
%414 = icmp sle i32 %413, 0
br i1 %414, label %415, label %416
415: ; preds = %412
br label %631
416: ; preds = %412
%417 = load i32, i32* %27
%418 = icmp ne i32 %417, 0
br i1 %418, label %419, label %420
419: ; preds = %416
store i32 4464, i32* %6
br label %421
420: ; preds = %416
store i32 4480, i32* %6
br label %421
421: ; preds = %420, %419
store i32 0, i32* %11
br label %565
422: ; preds = %219
br label %423
423: ; preds = %422, %223
br label %424
424: ; preds = %423, %227
br label %425
425: ; preds = %424, %231
%426 = call i8* (...) @__VERIFIER_nondet_int()
%427 = ptrtoint i8* %426 to i32
store i32 %427, i32* %41
%428 = load i32, i32* %41
%429 = icmp sle i32 %428, 0
br i1 %429, label %430, label %431
430: ; preds = %425
br label %631
431: ; preds = %425
store i32 4480, i32* %6
store i32 0, i32* %11
br label %565
432: ; preds = %235
br label %433
433: ; preds = %432, %239
%434 = call i8* (...) @__VERIFIER_nondet_int()
%435 = ptrtoint i8* %434 to i32
store i32 %435, i32* %41
%436 = load i32, i32* %41
%437 = icmp sle i32 %436, 0
br i1 %437, label %438, label %439
438: ; preds = %433
br label %631
439: ; preds = %433
%440 = load i32, i32* %31
%441 = sext i32 %440 to i64
store i64 %441, i64* %38
%442 = load i32, i32* %27
%443 = icmp eq i32 %442, 1
br i1 %443, label %444, label %445
444: ; preds = %439
store i32 4496, i32* %6
br label %446
445: ; preds = %439
store i32 4512, i32* %6
store i32 0, i32* %24
br label %446
446: ; preds = %445, %444
store i32 0, i32* %11
br label %565
447: ; preds = %243
br label %448
448: ; preds = %447, %247
%449 = call i8* (...) @__VERIFIER_nondet_int()
%450 = ptrtoint i8* %449 to i32
store i32 %450, i32* %41
%451 = load i32, i32* %41
%452 = icmp sle i32 %451, 0
br i1 %452, label %453, label %454
453: ; preds = %448
br label %631
454: ; preds = %448
store i32 4512, i32* %6
store i32 0, i32* %11
store i32 0, i32* %24
br label %565
455: ; preds = %251
br label %456
456: ; preds = %455, %255
%457 = call i8* (...) @__VERIFIER_nondet_int()
%458 = ptrtoint i8* %457 to i32
store i32 %458, i32* %41
%459 = load i32, i32* %41
%460 = icmp sle i32 %459, 0
br i1 %460, label %461, label %462
461: ; preds = %456
br label %631
462: ; preds = %456
store i32 4528, i32* %6
store i32 0, i32* %11
%463 = load i32, i32* %30
store i32 %463, i32* %34
%464 = load i32, i32* %28
%465 = icmp eq i32 %464, 0
br i1 %465, label %466, label %467
466: ; preds = %462
store i32 0, i32* %35
br label %469
467: ; preds = %462
%468 = load i32, i32* %33
store i32 %468, i32* %35
br label %469
469: ; preds = %467, %466
%470 = load i32, i32* %52
%471 = icmp ne i32 %470, 0
br i1 %471, label %473, label %472
472: ; preds = %469
store i32 -1, i32* %41
br label %631
473: ; preds = %469
%474 = load i32, i32* %53
%475 = icmp ne i32 %474, 0
br i1 %475, label %477, label %476
476: ; preds = %473
store i32 -1, i32* %41
br label %631
477: ; preds = %473
br label %565
478: ; preds = %259
br label %479
479: ; preds = %478, %263
%480 = call i8* (...) @__VERIFIER_nondet_int()
%481 = ptrtoint i8* %480 to i32
store i32 %481, i32* %41
%482 = load i32, i32* %41
%483 = icmp sle i32 %482, 0
br i1 %483, label %484, label %485
484: ; preds = %479
br label %631
485: ; preds = %479
store i32 4352, i32* %6
%486 = load i32, i32* %25
%487 = sext i32 %486 to i64
store i64 %487, i64* %57
%488 = load i64, i64* %57
%489 = add nsw i64 %488, 5
store i64 %489, i64* %58
%490 = load i64, i64* %58
%491 = trunc i64 %490 to i32
store i32 %491, i32* %25
%492 = load i32, i32* %14
%493 = icmp ne i32 %492, 0
br i1 %493, label %494, label %508
494: ; preds = %485
store i32 3, i32* %32
%495 = load i32, i32* %25
%496 = sext i32 %495 to i64
store i64 %496, i64* %59
%497 = load i64, i64* %59
%498 = sub nsw i64 %497, 2
%499 = icmp ne i64 %498, 0
br i1 %499, label %500, label %507
500: ; preds = %494
store i32 3, i32* %6
%501 = load i32, i32* %25
%502 = sext i32 %501 to i64
store i64 %502, i64* %60
%503 = load i64, i64* %60
%504 = add nsw i64 %503, 4
store i64 %504, i64* %61
%505 = load i64, i64* %61
%506 = trunc i64 %505 to i32
store i32 %506, i32* %25
store i32 0, i32* %26
br label %507
507: ; preds = %500, %494
br label %509
508: ; preds = %485
store i32 4560, i32* %32
br label %509
509: ; preds = %508, %507
store i32 0, i32* %11
br label %565
510: ; preds = %267
br label %511
511: ; preds = %510, %271
%512 = call i8* (...) @__VERIFIER_nondet_int()
%513 = ptrtoint i8* %512 to i32
store i32 %513, i32* %41
%514 = load i32, i32* %41
%515 = icmp sle i32 %514, 0
br i1 %515, label %516, label %517
516: ; preds = %511
br label %631
517: ; preds = %511
%518 = load i32, i32* %14
%519 = icmp ne i32 %518, 0
br i1 %519, label %520, label %521
520: ; preds = %517
store i32 4512, i32* %6
br label %522
521: ; preds = %517
store i32 3, i32* %6
br label %522
522: ; preds = %521, %520
store i32 0, i32* %11
br label %565
523: ; preds = %275
%524 = load i32, i32* %39
%525 = sext i32 %524 to i64
store i64 %525, i64* %62
%526 = load i64, i64* %62
%527 = icmp sgt i64 %526, 0
br i1 %527, label %528, label %536
528: ; preds = %523
store i32 2, i32* %15
%529 = load i32, i32* %54
store i32 %529, i32* %39
%530 = load i32, i32* %39
%531 = sext i32 %530 to i64
store i64 %531, i64* %63
%532 = load i64, i64* %63
%533 = icmp sle i64 %532, 0
br i1 %533, label %534, label %535
534: ; preds = %528
store i32 -1, i32* %41
br label %631
535: ; preds = %528
store i32 1, i32* %15
br label %536
536: ; preds = %535, %523
%537 = load i32, i32* %32
store i32 %537, i32* %6
br label %565
538: ; preds = %279
%539 = load i32, i32* %16
%540 = icmp ne i32 %539, 0
br i1 %540, label %541, label %542
541: ; preds = %538
store i32 0, i32* %16
br label %542
542: ; preds = %541, %538
%543 = load i32, i32* %25
%544 = sext i32 %543 to i64
store i64 %544, i64* %64
%545 = load i64, i64* %64
%546 = sub nsw i64 %545, 4
store i64 %546, i64* %65
%547 = load i64, i64* %65
%548 = icmp ne i64 %547, 0
br i1 %548, label %550, label %549
549: ; preds = %542
br label %550
550: ; preds = %549, %542
store i32 0, i32* %11
store i32 0, i32* %7
%551 = load i32, i32* %14
%552 = icmp ne i32 %551, 0
br i1 %552, label %553, label %556
553: ; preds = %550
%554 = load i32, i32* %22
%555 = add nsw i32 %554, 1
store i32 %555, i32* %22
br label %556
556: ; preds = %553, %550
store i32 1, i32* %41
%557 = load i32, i32* %23
%558 = add nsw i32 %557, 1
store i32 %558, i32* %23
%559 = load i32, i32* %40
%560 = icmp ne i32 %559, 0
br i1 %560, label %561, label %562
561: ; preds = %556
br label %562
562: ; preds = %561, %556
br label %631
563: ; preds = %280
store i32 -1, i32* %41
br label %631
564: ; preds = %281
br label %565
565: ; preds = %564, %536, %522, %509, %477, %454, %446, %431, %421, %404, %392, %376, %358, %341, %322
br label %566
566: ; preds = %565
br label %567
567: ; preds = %566
br label %568
568: ; preds = %567
br label %569
569: ; preds = %568
br label %570
570: ; preds = %569
br label %571
571: ; preds = %570
br label %572
572: ; preds = %571
br label %573
573: ; preds = %572
br label %574
574: ; preds = %573
br label %575
575: ; preds = %574
br label %576
576: ; preds = %575
br label %577
577: ; preds = %576
br label %578
578: ; preds = %577
br label %579
579: ; preds = %578
br label %580
580: ; preds = %579
br label %581
581: ; preds = %580
br label %582
582: ; preds = %581
br label %583
583: ; preds = %582
br label %584
584: ; preds = %583
br label %585
585: ; preds = %584
br label %586
586: ; preds = %585
br label %587
587: ; preds = %586
br label %588
588: ; preds = %587
br label %589
589: ; preds = %588
br label %590
590: ; preds = %589
br label %591
591: ; preds = %590
br label %592
592: ; preds = %591
br label %593
593: ; preds = %592
br label %594
594: ; preds = %593
br label %595
595: ; preds = %594
br label %596
596: ; preds = %595
br label %597
597: ; preds = %596
br label %598
598: ; preds = %597
br label %599
599: ; preds = %598
%600 = load i32, i32* %29
%601 = icmp ne i32 %600, 0
br i1 %601, label %629, label %602
602: ; preds = %599
%603 = load i32, i32* %44
%604 = icmp ne i32 %603, 0
br i1 %604, label %628, label %605
605: ; preds = %602
%606 = load i32, i32* %17
%607 = icmp ne i32 %606, 0
br i1 %607, label %608, label %615
608: ; preds = %605
%609 = call i8* (...) @__VERIFIER_nondet_int()
%610 = ptrtoint i8* %609 to i32
store i32 %610, i32* %41
%611 = load i32, i32* %41
%612 = icmp sle i32 %611, 0
br i1 %612, label %613, label %614
613: ; preds = %608
br label %631
614: ; preds = %608
br label %615
615: ; preds = %614, %605
%616 = load i32, i32* %40
%617 = icmp ne i32 %616, 0
br i1 %617, label %618, label %627
618: ; preds = %615
%619 = load i32, i32* %6
%620 = load i32, i32* %43
%621 = icmp ne i32 %619, %620
br i1 %621, label %622, label %626
622: ; preds = %618
%623 = load i32, i32* %6
store i32 %623, i32* %42
%624 = load i32, i32* %43
store i32 %624, i32* %6
%625 = load i32, i32* %42
store i32 %625, i32* %6
br label %626
626: ; preds = %622, %618
br label %627
627: ; preds = %626, %615
br label %628
628: ; preds = %627, %602
br label %629
629: ; preds = %628, %599
store i32 0, i32* %44
br label %146
630: ; No predecessors!
br label %631
631: ; preds = %630, %613, %563, %562, %534, %516, %484, %476, %472, %461, %453, %438, %430, %415, %403, %391, %387, %374, %352, %335, %321, %317, %311, %307, %298
%632 = load i32, i32* %5
%633 = add nsw i32 %632, -1
store i32 %633, i32* %5
%634 = load i32, i32* %40
%635 = icmp ne i32 %634, 0
br i1 %635, label %636, label %637
636: ; preds = %631
br label %637
637: ; preds = %636, %631
%638 = load i32, i32* %41
store i32 %638, i32* %2
br label %641
639: ; preds = %399
%640 = call i32 (...) @__VERIFIER_error()
store i32 -1, i32* %2
br label %641
641: ; preds = %639, %637
%642 = load i32, i32* %2
ret i32 %642
}

LLVM IR (-O2):
define i32 @ssl3_connect(i32 %0) {
%2 = tail call i8* (...) @__VERIFIER_nondet_int()
%3 = tail call i8* (...) @__VERIFIER_nondet_int()
%4 = tail call i8* (...) @__VERIFIER_nondet_int()
%5 = ptrtoint i8* %4 to i64
%6 = trunc i64 %5 to i32
%7 = tail call i8* (...) @__VERIFIER_nondet_int()
%8 = tail call i8* (...) @__VERIFIER_nondet_int()
%9 = tail call i8* (...) @__VERIFIER_nondet_int()
%10 = ptrtoint i8* %9 to i64
%11 = trunc i64 %10 to i32
%12 = tail call i8* (...) @__VERIFIER_nondet_int()
%13 = ptrtoint i8* %12 to i64
%14 = trunc i64 %13 to i32
%15 = tail call i8* (...) @__VERIFIER_nondet_int()
%16 = tail call i8* (...) @__VERIFIER_nondet_int()
%17 = tail call i8* (...) @__VERIFIER_nondet_int()
%18 = tail call i8* (...) @__VERIFIER_nondet_int()
%19 = tail call i8* (...) @__VERIFIER_nondet_int()
%20 = tail call i8* (...) @__VERIFIER_nondet_int()
%21 = ptrtoint i8* %20 to i64
%22 = trunc i64 %21 to i32
%23 = tail call i8* (...) @__VERIFIER_nondet_int()
%24 = tail call i8* (...) @__VERIFIER_nondet_int()
%25 = ptrtoint i8* %24 to i64
%26 = trunc i64 %25 to i32
%27 = tail call i8* (...) @__VERIFIER_nondet_int()
%28 = tail call i8* (...) @__VERIFIER_nondet_int()
%29 = ptrtoint i8* %28 to i64
%30 = trunc i64 %29 to i32
%31 = tail call i8* (...) @__VERIFIER_nondet_int()
%32 = tail call i8* (...) @__VERIFIER_nondet_int()
%33 = tail call i8* (...) @__VERIFIER_nondet_int()
%34 = tail call i8* (...) @__VERIFIER_nondet_int()
%35 = ptrtoint i8* %34 to i64
%36 = trunc i64 %35 to i32
%37 = tail call i8* (...) @__VERIFIER_nondet_int()
%38 = ptrtoint i8* %37 to i64
%39 = trunc i64 %38 to i32
%40 = tail call i8* (...) @__VERIFIER_nondet_int()
%41 = ptrtoint i8* %40 to i64
%42 = trunc i64 %41 to i32
%43 = tail call i8* (...) @__VERIFIER_nondet_int()
%44 = ptrtoint i8* %43 to i64
%45 = trunc i64 %44 to i32
%46 = tail call i8* (...) @__VERIFIER_nondet_int()
%47 = ptrtoint i8* %46 to i64
%48 = trunc i64 %47 to i32
%49 = tail call i8* (...) @__VERIFIER_nondet_int()
%50 = ptrtoint i8* %49 to i64
%51 = trunc i64 %50 to i32
%52 = tail call i8* (...) @__VERIFIER_nondet_int()
%53 = ptrtoint i8* %52 to i64
%54 = trunc i64 %53 to i32
%55 = tail call i8* (...) @__VERIFIER_nondet_int()
%56 = icmp eq i32 %6, 66048
%57 = icmp eq i32 %36, 0
%58 = icmp eq i32 %39, 0
%59 = icmp eq i32 %42, 0
%60 = select i1 %58, i1 true, i1 %59
%61 = icmp eq i32 %22, 0
%62 = select i1 %61, i32 4480, i32 4464
%63 = icmp eq i32 %45, 0
%64 = icmp eq i32 %30, 256
%65 = icmp eq i32 %11, 0
%66 = select i1 %65, i32 4400, i32 4560
%67 = select i1 %65, i32 3, i32 4512
%68 = icmp eq i32 %48, 0
%69 = icmp eq i32 %51, 0
%70 = select i1 %68, i1 true, i1 %69
%71 = icmp eq i32 %22, 1
%72 = select i1 %71, i32 4496, i32 4512
%73 = icmp slt i32 %54, 1
%74 = icmp eq i32 %14, 0
br label %75
75: ; preds = %208, %1
%76 = phi i32 [ undef, %1 ], [ %194, %208 ]
%77 = phi i32 [ undef, %1 ], [ %195, %208 ]
%78 = phi i32 [ undef, %1 ], [ %196, %208 ]
%79 = phi i32 [ 0, %1 ], [ %197, %208 ]
%80 = phi i32 [ undef, %1 ], [ %198, %208 ]
%81 = phi i32 [ %0, %1 ], [ %199, %208 ]
switch i32 %81, label %82 [
i32 12292, label %93
i32 20480, label %93
i32 16384, label %93
i32 4099, label %93
i32 4096, label %93
]
82: ; preds = %75
%83 = and i32 %81, -2
%84 = add i32 %83, -4368
%85 = tail call i32 @llvm.fshl.i32(i32 %84, i32 %84, i32 28)
switch i32 %85, label %86 [
i32 0, label %104
i32 1, label %112
i32 2, label %120
i32 3, label %128
i32 4, label %136
i32 5, label %143
]
86: ; preds = %82
%87 = and i32 %81, -4
%88 = icmp eq i32 %87, 4464
br i1 %88, label %151, label %89
89: ; preds = %86
%90 = add i32 %83, -4480
%91 = tail call i32 @llvm.fshl.i32(i32 %90, i32 %90, i32 28)
switch i32 %91, label %92 [
i32 0, label %156
i32 1, label %161
i32 2, label %166
i32 3, label %172
i32 5, label %184
]
92: ; preds = %89
switch i32 %81, label %250 [
i32 4352, label %189
i32 3, label %251
]
93: ; preds = %75, %75, %75, %75, %75
br i1 %56, label %94, label %250
94: ; preds = %93
%95 = icmp eq i32 %80, 0
br i1 %95, label %96, label %102
96: ; preds = %94
%97 = tail call i8* (...) @__VERIFIER_nondet_int()
%98 = ptrtoint i8* %97 to i64
%99 = trunc i64 %98 to i32
%100 = icmp eq i32 %99, 0
%101 = select i1 %100, i1 true, i1 %57
br i1 %101, label %250, label %102
102: ; preds = %96, %94
%103 = phi i32 [ %80, %94 ], [ %99, %96 ]
br i1 %60, label %250, label %192
104: ; preds = %82
%105 = tail call i8* (...) @__VERIFIER_nondet_int()
%106 = ptrtoint i8* %105 to i64
%107 = trunc i64 %106 to i32
%108 = icmp slt i32 %107, 1
br i1 %108, label %211, label %109
109: ; preds = %104
%110 = icmp eq i32 %79, 0
%111 = select i1 %110, i32 1, i32 %79
br label %192
112: ; preds = %82
%113 = tail call i8* (...) @__VERIFIER_nondet_int()
%114 = ptrtoint i8* %113 to i64
%115 = trunc i64 %114 to i32
%116 = icmp slt i32 %115, 1
br i1 %116, label %214, label %117
117: ; preds = %112
%118 = icmp eq i32 %79, 1
%119 = select i1 %118, i32 2, i32 %79
br label %192
120: ; preds = %82
br i1 %64, label %121, label %192
121: ; preds = %120
%122 = tail call i8* (...) @__VERIFIER_nondet_int()
%123 = ptrtoint i8* %122 to i64
%124 = trunc i64 %123 to i32
%125 = icmp eq i32 %79, 2
%126 = select i1 %125, i32 3, i32 %79
%127 = icmp slt i32 %124, 1
br i1 %127, label %217, label %192
128: ; preds = %82
%129 = tail call i8* (...) @__VERIFIER_nondet_int()
%130 = ptrtoint i8* %129 to i64
%131 = trunc i64 %130 to i32
%132 = icmp slt i32 %131, 1
br i1 %132, label %220, label %133
133: ; preds = %128
%134 = icmp eq i32 %79, 3
%135 = select i1 %134, i32 4, i32 %79
br i1 %63, label %250, label %192
136: ; preds = %82
%137 = tail call i8* (...) @__VERIFIER_nondet_int()
%138 = icmp eq i32 %79, 5
br i1 %138, label %209, label %139
139: ; preds = %136
%140 = ptrtoint i8* %137 to i64
%141 = trunc i64 %140 to i32
%142 = icmp slt i32 %141, 1
br i1 %142, label %223, label %192
143: ; preds = %82
%144 = tail call i8* (...) @__VERIFIER_nondet_int()
%145 = ptrtoint i8* %144 to i64
%146 = trunc i64 %145 to i32
%147 = icmp slt i32 %146, 1
br i1 %147, label %226, label %148
148: ; preds = %143
%149 = icmp eq i32 %79, 4
%150 = select i1 %149, i32 5, i32 %79
br label %192
151: ; preds = %86
%152 = tail call i8* (...) @__VERIFIER_nondet_int()
%153 = ptrtoint i8* %152 to i64
%154 = trunc i64 %153 to i32
%155 = icmp slt i32 %154, 1
br i1 %155, label %229, label %192
156: ; preds = %89
%157 = tail call i8* (...) @__VERIFIER_nondet_int()
%158 = ptrtoint i8* %157 to i64
%159 = trunc i64 %158 to i32
%160 = icmp slt i32 %159, 1
br i1 %160, label %232, label %192
161: ; preds = %89
%162 = tail call i8* (...) @__VERIFIER_nondet_int()
%163 = ptrtoint i8* %162 to i64
%164 = trunc i64 %163 to i32
%165 = icmp slt i32 %164, 1
br i1 %165, label %235, label %192
166: ; preds = %89
%167 = tail call i8* (...) @__VERIFIER_nondet_int()
%168 = ptrtoint i8* %167 to i64
%169 = trunc i64 %168 to i32
%170 = icmp slt i32 %169, 1
br i1 %170, label %238, label %171
171: ; preds = %166
br i1 %70, label %250, label %192
172: ; preds = %89
%173 = tail call i8* (...) @__VERIFIER_nondet_int()
%174 = ptrtoint i8* %173 to i64
%175 = trunc i64 %174 to i32
%176 = icmp slt i32 %175, 1
br i1 %176, label %241, label %177
177: ; preds = %172
%178 = add i32 %78, 5
br i1 %65, label %192, label %179
179: ; preds = %177
%180 = icmp eq i32 %178, 2
%181 = add i32 %78, 9
%182 = select i1 %180, i32 2, i32 %181
%183 = select i1 %180, i32 4352, i32 3
br label %192
184: ; preds = %89
%185 = tail call i8* (...) @__VERIFIER_nondet_int()
%186 = ptrtoint i8* %185 to i64
%187 = trunc i64 %186 to i32
%188 = icmp slt i32 %187, 1
br i1 %188, label %244, label %192
189: ; preds = %92
%190 = icmp sgt i32 %76, 0
br i1 %190, label %191, label %192
191: ; preds = %189
br i1 %73, label %250, label %192
192: ; preds = %102, %184, %156, %179, %171, %189, %191, %177, %161, %151, %139, %121, %120, %133, %148, %117, %109
%193 = phi i32 [ 0, %109 ], [ 0, %117 ], [ 0, %133 ], [ 0, %148 ], [ 0, %121 ], [ 1, %120 ], [ 0, %139 ], [ 0, %151 ], [ 0, %161 ], [ 0, %177 ], [ 0, %179 ], [ 0, %191 ], [ 0, %189 ], [ 0, %171 ], [ 0, %156 ], [ 0, %184 ], [ 0, %102 ]
%194 = phi i32 [ %76, %109 ], [ %76, %117 ], [ %76, %133 ], [ %76, %148 ], [ %76, %121 ], [ %76, %120 ], [ %76, %139 ], [ %76, %151 ], [ %76, %161 ], [ %76, %177 ], [ %76, %179 ], [ %54, %191 ], [ %76, %189 ], [ %76, %171 ], [ %76, %156 ], [ %76, %184 ], [ %76, %102 ]
%195 = phi i32 [ %77, %109 ], [ %77, %117 ], [ %77, %133 ], [ %77, %148 ], [ %77, %121 ], [ %77, %120 ], [ %77, %139 ], [ %77, %151 ], [ %77, %161 ], [ 4560, %177 ], [ 3, %179 ], [ %77, %191 ], [ %77, %189 ], [ %77, %171 ], [ %77, %156 ], [ %77, %184 ], [ %77, %102 ]
%196 = phi i32 [ %78, %109 ], [ %78, %117 ], [ %78, %133 ], [ %78, %148 ], [ %78, %121 ], [ %78, %120 ], [ %78, %139 ], [ %78, %151 ], [ %78, %161 ], [ %178, %177 ], [ %182, %179 ], [ %78, %191 ], [ %78, %189 ], [ %78, %171 ], [ %78, %156 ], [ %78, %184 ], [ %78, %102 ]
%197 = phi i32 [ %111, %109 ], [ %119, %117 ], [ %135, %133 ], [ %150, %148 ], [ %126, %121 ], [ %79, %120 ], [ %79, %139 ], [ %79, %151 ], [ %79, %161 ], [ %79, %177 ], [ %79, %179 ], [ %79, %191 ], [ %79, %189 ], [ %79, %171 ], [ %79, %156 ], [ %79, %184 ], [ %79, %102 ]
%198 = phi i32 [ %80, %109 ], [ %80, %117 ], [ %80, %133 ], [ %80, %148 ], [ %80, %121 ], [ %80, %120 ], [ %80, %139 ], [ %80, %151 ], [ %80, %161 ], [ %80, %177 ], [ %80, %179 ], [ %80, %191 ], [ %80, %189 ], [ %80, %171 ], [ %80, %156 ], [ %80, %184 ], [ %103, %102 ]
%199 = phi i32 [ 4384, %109 ], [ %66, %117 ], [ 4432, %133 ], [ %62, %148 ], [ 4416, %121 ], [ 4416, %120 ], [ 4448, %139 ], [ 4480, %151 ], [ 4512, %161 ], [ 4352, %177 ], [ %183, %179 ], [ %77, %191 ], [ %77, %189 ], [ 4528, %171 ], [ %72, %156 ], [ %67, %184 ], [ 4368, %102 ]
%200 = or i32 %193, %26
%201 = icmp ne i32 %200, 0
%202 = select i1 %201, i1 true, i1 %74
br i1 %202, label %208, label %203
203: ; preds = %192
%204 = tail call i8* (...) @__VERIFIER_nondet_int()
%205 = ptrtoint i8* %204 to i64
%206 = trunc i64 %205 to i32
%207 = icmp slt i32 %206, 1
br i1 %207, label %247, label %208
208: ; preds = %203, %192
br label %75
209: ; preds = %136
%210 = tail call i32 (...) @__VERIFIER_error()
br label %251
211: ; preds = %104
%212 = ptrtoint i8* %105 to i64
%213 = trunc i64 %212 to i32
br label %251
214: ; preds = %112
%215 = ptrtoint i8* %113 to i64
%216 = trunc i64 %215 to i32
br label %251
217: ; preds = %121
%218 = ptrtoint i8* %122 to i64
%219 = trunc i64 %218 to i32
br label %251
220: ; preds = %128
%221 = ptrtoint i8* %129 to i64
%222 = trunc i64 %221 to i32
br label %251
223: ; preds = %139
%224 = ptrtoint i8* %137 to i64
%225 = trunc i64 %224 to i32
br label %251
226: ; preds = %143
%227 = ptrtoint i8* %144 to i64
%228 = trunc i64 %227 to i32
br label %251
229: ; preds = %151
%230 = ptrtoint i8* %152 to i64
%231 = trunc i64 %230 to i32
br label %251
232: ; preds = %156
%233 = ptrtoint i8* %157 to i64
%234 = trunc i64 %233 to i32
br label %251
235: ; preds = %161
%236 = ptrtoint i8* %162 to i64
%237 = trunc i64 %236 to i32
br label %251
238: ; preds = %166
%239 = ptrtoint i8* %167 to i64
%240 = trunc i64 %239 to i32
br label %251
241: ; preds = %172
%242 = ptrtoint i8* %173 to i64
%243 = trunc i64 %242 to i32
br label %251
244: ; preds = %184
%245 = ptrtoint i8* %185 to i64
%246 = trunc i64 %245 to i32
br label %251
247: ; preds = %203
%248 = ptrtoint i8* %204 to i64
%249 = trunc i64 %248 to i32
br label %251
250: ; preds = %92, %191, %171, %133, %102, %96, %93
br label %251
251: ; preds = %92, %250, %211, %214, %217, %220, %223, %226, %229, %232, %235, %238, %241, %244, %247, %209
%252 = phi i32 [ -1, %209 ], [ %213, %211 ], [ %216, %214 ], [ %219, %217 ], [ %222, %220 ], [ %225, %223 ], [ %228, %226 ], [ %231, %229 ], [ %234, %232 ], [ %237, %235 ], [ %240, %238 ], [ %243, %241 ], [ %246, %244 ], [ %249, %247 ], [ -1, %250 ], [ 1, %92 ]
ret i32 %252
}