#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;
  void *__cil_tmp56;
  unsigned long __cil_tmp57;
  unsigned long __cil_tmp58;
  void *__cil_tmp59;
  unsigned long __cil_tmp60;
  unsigned long __cil_tmp61;
  unsigned long __cil_tmp62;
  unsigned long __cil_tmp63;
  unsigned long __cil_tmp64;
  long __cil_tmp65;
  long __cil_tmp66;
  long __cil_tmp67;
  long __cil_tmp68;
  long __cil_tmp69;
  long __cil_tmp70;
  long __cil_tmp71;
  long __cil_tmp72;
  long __cil_tmp73;
  long __cil_tmp74;
  {
    ;
    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;
                                                                            {
                                                                              __cil_tmp56 =
                                                                                  (void
                                                                                       *)0;
                                                                              __cil_tmp57 =
                                                                                  (unsigned long)
                                                                                      __cil_tmp56;
                                                                              __cil_tmp58 =
                                                                                  (unsigned long)
                                                                                      s__init_buf___0;
                                                                              if (__cil_tmp58 ==
                                                                                  __cil_tmp57) {
                                                                                buf =
                                                                                    __VERIFIER_nondet_int();
                                                                                {
                                                                                  __cil_tmp59 =
                                                                                      (void
                                                                                           *)0;
                                                                                  __cil_tmp60 =
                                                                                      (unsigned long)
                                                                                          __cil_tmp59;
                                                                                  __cil_tmp61 =
                                                                                      (unsigned long)
                                                                                          buf;
                                                                                  if (__cil_tmp61 ==
                                                                                      __cil_tmp60) {
                                                                                    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;
                                                                            {
                                                                              __cil_tmp62 =
                                                                                  (unsigned long)
                                                                                      s__wbio;
                                                                              __cil_tmp63 =
                                                                                  (unsigned long)
                                                                                      s__bbio;
                                                                              if (__cil_tmp63 !=
                                                                                  __cil_tmp62) {
                                                                              }
                                                                            }
                                                                            goto switch_1_break;
                                                                          switch_1_4384
                                                                              :;
                                                                          switch_1_4385
                                                                              :
                                                                            ret =
                                                                                __VERIFIER_nondet_int();
                                                                            if (blastFlag ==
                                                                                1) {
                                                                              blastFlag =
                                                                                  2;
                                                                            } else {
                                                                              if (blastFlag ==
                                                                                  4) {
                                                                                blastFlag =
                                                                                    5;
                                                                              }
                                                                            }
                                                                            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
                                                                              :;
                                                                            {
                                                                              __cil_tmp64 =
                                                                                  (unsigned long)
                                                                                      s__s3__tmp__new_cipher__algorithms;
                                                                              if (__cil_tmp64 +
                                                                                  256UL) {
                                                                                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 (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_tmp65 =
                                                                                (long)
                                                                                    s__s3__flags;
                                                                            __cil_tmp66 =
                                                                                __cil_tmp65 -
                                                                                5;
                                                                            s__s3__flags =
                                                                                (int)
                                                                                    __cil_tmp66;
                                                                            if (s__hit) {
                                                                              s__s3__tmp__next_state___0 =
                                                                                  3;
                                                                              {
                                                                                __cil_tmp67 =
                                                                                    (long)
                                                                                        s__s3__flags;
                                                                                if (__cil_tmp67 +
                                                                                    2L) {
                                                                                  s__state =
                                                                                      3;
                                                                                  __cil_tmp68 =
                                                                                      (long)
                                                                                          s__s3__flags;
                                                                                  __cil_tmp69 =
                                                                                      __cil_tmp68 *
                                                                                      4L;
                                                                                  s__s3__flags =
                                                                                      (int)
                                                                                          __cil_tmp69;
                                                                                  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_tmp70 =
                                                                                (long)
                                                                                    num1;
                                                                            if (__cil_tmp70 >
                                                                                0L) {
                                                                              s__rwstate =
                                                                                  2;
                                                                              __cil_tmp71 =
                                                                                  (long)
                                                                                      tmp___9;
                                                                              num1 =
                                                                                  (int)
                                                                                      __cil_tmp71;
                                                                              {
                                                                                __cil_tmp72 =
                                                                                    (long)
                                                                                        num1;
                                                                                if (__cil_tmp72 <=
                                                                                    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_tmp73 =
                                                                                  (long)
                                                                                      s__s3__flags;
                                                                              __cil_tmp74 =
                                                                                  __cil_tmp73 +
                                                                                  4L;
                                                                              if (!__cil_tmp74) {
                                                                              }
                                                                            }
                                                                            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    $0x180,%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
add    $0x3000,%eax
cmp    $0x0,%eax
je     1308 <ssl3_connect+0x1e8>
mov    -0xc4(%rbp),%eax
add    $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    16ea <ssl3_connect+0x5ca>
cmpl   $0x1111,-0x14(%rbp)
jne    1399 <ssl3_connect+0x279>
jmp    16ef <ssl3_connect+0x5cf>
cmpl   $0x1120,-0x14(%rbp)
jne    13ab <ssl3_connect+0x28b>
jmp    176e <ssl3_connect+0x64e>
cmpl   $0x1121,-0x14(%rbp)
jne    13bd <ssl3_connect+0x29d>
jmp    1773 <ssl3_connect+0x653>
cmpl   $0x1130,-0x14(%rbp)
jne    13cf <ssl3_connect+0x2af>
jmp    17f3 <ssl3_connect+0x6d3>
cmpl   $0x1131,-0x14(%rbp)
jne    13e1 <ssl3_connect+0x2c1>
jmp    17f8 <ssl3_connect+0x6d8>
cmpl   $0x1140,-0x14(%rbp)
jne    13f3 <ssl3_connect+0x2d3>
jmp    1877 <ssl3_connect+0x757>
cmpl   $0x1141,-0x14(%rbp)
jne    1405 <ssl3_connect+0x2e5>
jmp    187c <ssl3_connect+0x75c>
cmpl   $0x1150,-0x14(%rbp)
jne    1417 <ssl3_connect+0x2f7>
jmp    18e1 <ssl3_connect+0x7c1>
cmpl   $0x1151,-0x14(%rbp)
jne    1429 <ssl3_connect+0x309>
jmp    18e6 <ssl3_connect+0x7c6>
cmpl   $0x1160,-0x14(%rbp)
jne    143b <ssl3_connect+0x31b>
jmp    192a <ssl3_connect+0x80a>
cmpl   $0x1161,-0x14(%rbp)
jne    144d <ssl3_connect+0x32d>
jmp    192f <ssl3_connect+0x80f>
cmpl   $0x1170,-0x14(%rbp)
jne    145f <ssl3_connect+0x33f>
jmp    1977 <ssl3_connect+0x857>
cmpl   $0x1171,-0x14(%rbp)
jne    1471 <ssl3_connect+0x351>
jmp    197c <ssl3_connect+0x85c>
cmpl   $0x1172,-0x14(%rbp)
jne    1483 <ssl3_connect+0x363>
jmp    1981 <ssl3_connect+0x861>
cmpl   $0x1173,-0x14(%rbp)
jne    1495 <ssl3_connect+0x375>
jmp    1986 <ssl3_connect+0x866>
cmpl   $0x1180,-0x14(%rbp)
jne    14a7 <ssl3_connect+0x387>
jmp    19b8 <ssl3_connect+0x898>
cmpl   $0x1181,-0x14(%rbp)
jne    14b9 <ssl3_connect+0x399>
jmp    19bd <ssl3_connect+0x89d>
cmpl   $0x1190,-0x14(%rbp)
jne    14cb <ssl3_connect+0x3ab>
jmp    1a17 <ssl3_connect+0x8f7>
cmpl   $0x1191,-0x14(%rbp)
jne    14dd <ssl3_connect+0x3bd>
jmp    1a1c <ssl3_connect+0x8fc>
cmpl   $0x11a0,-0x14(%rbp)
jne    14ef <ssl3_connect+0x3cf>
jmp    1a55 <ssl3_connect+0x935>
cmpl   $0x11a1,-0x14(%rbp)
jne    1501 <ssl3_connect+0x3e1>
jmp    1a5a <ssl3_connect+0x93a>
cmpl   $0x11b0,-0x14(%rbp)
jne    1513 <ssl3_connect+0x3f3>
jmp    1aef <ssl3_connect+0x9cf>
cmpl   $0x11b1,-0x14(%rbp)
jne    1525 <ssl3_connect+0x405>
jmp    1af4 <ssl3_connect+0x9d4>
cmpl   $0x11d0,-0x14(%rbp)
jne    1537 <ssl3_connect+0x417>
jmp    1bbf <ssl3_connect+0xa9f>
cmpl   $0x11d1,-0x14(%rbp)
jne    1549 <ssl3_connect+0x429>
jmp    1bc4 <ssl3_connect+0xaa4>
cmpl   $0x1100,-0x14(%rbp)
jne    155b <ssl3_connect+0x43b>
jmp    1c0c <ssl3_connect+0xaec>
cmpl   $0x3,-0x14(%rbp)
jne    156a <ssl3_connect+0x44a>
jmp    1c87 <ssl3_connect+0xb67>
jmp    1d13 <ssl3_connect+0xbf3>
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
add    $0xff00,%eax
mov    %eax,-0xe8(%rbp)
cmpl   $0x300,-0xe8(%rbp)
je     15db <ssl3_connect+0x4bb>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x1000,-0x24(%rbp)
movq   $0x0,-0xf0(%rbp)
mov    -0xf0(%rbp),%rax
mov    %rax,-0xf8(%rbp)
movslq -0x3c(%rbp),%rax
mov    %rax,-0x100(%rbp)
mov    -0x100(%rbp),%rax
cmp    -0xf8(%rbp),%rax
jne    1696 <ssl3_connect+0x576>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0x8c(%rbp)
movq   $0x0,-0x108(%rbp)
mov    -0x108(%rbp),%rax
mov    %rax,-0x110(%rbp)
movslq -0x8c(%rbp),%rax
mov    %rax,-0x118(%rbp)
mov    -0x118(%rbp),%rax
cmp    -0x110(%rbp),%rax
jne    1671 <ssl3_connect+0x551>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
cmpl   $0x0,-0xc8(%rbp)
jne    168d <ssl3_connect+0x56d>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
mov    -0x8c(%rbp),%eax
mov    %eax,-0x3c(%rbp)
cmpl   $0x0,-0xcc(%rbp)
jne    16b2 <ssl3_connect+0x592>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
cmpl   $0x0,-0xd0(%rbp)
jne    16ce <ssl3_connect+0x5ae>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x1110,-0x14(%rbp)
mov    -0x50(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x50(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
jmp    16ef <ssl3_connect+0x5cf>
movl   $0x0,-0x44(%rbp)
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xe4(%rbp)
jne    171a <ssl3_connect+0x5fa>
movl   $0x1,-0xe4(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     172c <ssl3_connect+0x60c>
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x1120,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
movslq -0x30(%rbp),%rax
mov    %rax,-0x120(%rbp)
movslq -0x2c(%rbp),%rax
mov    %rax,-0x128(%rbp)
mov    -0x128(%rbp),%rax
cmp    -0x120(%rbp),%rax
je     1769 <ssl3_connect+0x649>
jmp    1769 <ssl3_connect+0x649>
jmp    1d22 <ssl3_connect+0xc02>
jmp    1773 <ssl3_connect+0x653>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x1,-0xe4(%rbp)
jne    179c <ssl3_connect+0x67c>
movl   $0x2,-0xe4(%rbp)
jmp    17b8 <ssl3_connect+0x698>
cmpl   $0x4,-0xe4(%rbp)
jne    17b3 <ssl3_connect+0x693>
movl   $0x5,-0xe4(%rbp)
jmp    17b8 <ssl3_connect+0x698>
cmpl   $0x0,-0xac(%rbp)
jg     17ca <ssl3_connect+0x6aa>
jmp    1e66 <ssl3_connect+0xd46>
cmpl   $0x0,-0x34(%rbp)
je     17e0 <ssl3_connect+0x6c0>
movl   $0x11d0,-0x14(%rbp)
jmp    17e7 <ssl3_connect+0x6c7>
movl   $0x1130,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
jmp    17f8 <ssl3_connect+0x6d8>
movslq -0x78(%rbp),%rax
mov    %rax,-0x130(%rbp)
mov    -0x130(%rbp),%rax
add    $0x100,%rax
cmp    $0x0,%rax
je     1829 <ssl3_connect+0x709>
movl   $0x1,-0xb8(%rbp)
jmp    1864 <ssl3_connect+0x744>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x2,-0xe4(%rbp)
jne    184d <ssl3_connect+0x72d>
movl   $0x3,-0xe4(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     185f <ssl3_connect+0x73f>
jmp    1e66 <ssl3_connect+0xd46>
jmp    1864 <ssl3_connect+0x744>
movl   $0x1140,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
jmp    187c <ssl3_connect+0x75c>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x3,-0xe4(%rbp)
jne    18a0 <ssl3_connect+0x780>
movl   $0x4,-0xe4(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     18b2 <ssl3_connect+0x792>
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x1150,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
cmpl   $0x0,-0xd4(%rbp)
jne    18dc <ssl3_connect+0x7bc>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
jmp    1d22 <ssl3_connect+0xc02>
jmp    18e6 <ssl3_connect+0x7c6>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x5,-0xe4(%rbp)
jne    1905 <ssl3_connect+0x7e5>
jmp    1e8f <ssl3_connect+0xd6f>
cmpl   $0x0,-0xac(%rbp)
jg     1917 <ssl3_connect+0x7f7>
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x1160,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
jmp    192f <ssl3_connect+0x80f>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     194e <ssl3_connect+0x82e>
jmp    1e66 <ssl3_connect+0xd46>
cmpl   $0x0,-0x68(%rbp)
je     1964 <ssl3_connect+0x844>
movl   $0x1170,-0x14(%rbp)
jmp    196b <ssl3_connect+0x84b>
movl   $0x1180,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
jmp    197c <ssl3_connect+0x85c>
jmp    1981 <ssl3_connect+0x861>
jmp    1986 <ssl3_connect+0x866>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     19a5 <ssl3_connect+0x885>
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x1180,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
jmp    19bd <ssl3_connect+0x89d>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     19dc <ssl3_connect+0x8bc>
jmp    1e66 <ssl3_connect+0xd46>
movslq -0x78(%rbp),%rax
mov    %rax,-0xa0(%rbp)
cmpl   $0x1,-0x68(%rbp)
jne    19fd <ssl3_connect+0x8dd>
movl   $0x1190,-0x14(%rbp)
jmp    1a0b <ssl3_connect+0x8eb>
movl   $0x11a0,-0x14(%rbp)
movl   $0x0,-0x5c(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
jmp    1a1c <ssl3_connect+0x8fc>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1a3b <ssl3_connect+0x91b>
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x11a0,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
movl   $0x0,-0x5c(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
jmp    1a5a <ssl3_connect+0x93a>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1a79 <ssl3_connect+0x959>
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x11b0,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
mov    -0x74(%rbp),%eax
mov    %eax,-0x84(%rbp)
cmpl   $0x0,-0x6c(%rbp)
jne    1aa9 <ssl3_connect+0x989>
movl   $0x0,-0x88(%rbp)
jmp    1ab2 <ssl3_connect+0x992>
mov    -0x80(%rbp),%eax
mov    %eax,-0x88(%rbp)
cmpl   $0x0,-0xd8(%rbp)
jne    1ace <ssl3_connect+0x9ae>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
cmpl   $0x0,-0xdc(%rbp)
jne    1aea <ssl3_connect+0x9ca>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
jmp    1d22 <ssl3_connect+0xc02>
jmp    1af4 <ssl3_connect+0x9d4>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1b13 <ssl3_connect+0x9f3>
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x1100,-0x14(%rbp)
movslq -0x60(%rbp),%rax
mov    %rax,-0x138(%rbp)
mov    -0x138(%rbp),%rax
sub    $0x5,%rax
mov    %rax,-0x140(%rbp)
mov    -0x140(%rbp),%rax
mov    %eax,-0x60(%rbp)
cmpl   $0x0,-0x34(%rbp)
je     1bac <ssl3_connect+0xa8c>
movl   $0x3,-0x7c(%rbp)
movslq -0x60(%rbp),%rax
mov    %rax,-0x148(%rbp)
mov    -0x148(%rbp),%rax
add    $0x2,%rax
cmp    $0x0,%rax
je     1ba7 <ssl3_connect+0xa87>
movl   $0x3,-0x14(%rbp)
movslq -0x60(%rbp),%rax
mov    %rax,-0x150(%rbp)
mov    -0x150(%rbp),%rax
shl    $0x2,%rax
mov    %rax,-0x158(%rbp)
mov    -0x158(%rbp),%rax
mov    %eax,-0x60(%rbp)
movl   $0x0,-0x64(%rbp)
jmp    1bb3 <ssl3_connect+0xa93>
movl   $0x11d0,-0x7c(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
jmp    1bc4 <ssl3_connect+0xaa4>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1be3 <ssl3_connect+0xac3>
jmp    1e66 <ssl3_connect+0xd46>
cmpl   $0x0,-0x34(%rbp)
je     1bf9 <ssl3_connect+0xad9>
movl   $0x11a0,-0x14(%rbp)
jmp    1c00 <ssl3_connect+0xae0>
movl   $0x3,-0x14(%rbp)
movl   $0x0,-0x28(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
movslq -0xa4(%rbp),%rax
mov    %rax,-0x160(%rbp)
cmpq   $0x0,-0x160(%rbp)
jle    1c7c <ssl3_connect+0xb5c>
movl   $0x2,-0x38(%rbp)
movslq -0xe0(%rbp),%rax
mov    %rax,-0x168(%rbp)
mov    -0x168(%rbp),%rax
mov    %eax,-0xa4(%rbp)
movslq -0xa4(%rbp),%rax
mov    %rax,-0x170(%rbp)
cmpq   $0x0,-0x170(%rbp)
jg     1c75 <ssl3_connect+0xb55>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
movl   $0x1,-0x38(%rbp)
mov    -0x7c(%rbp),%eax
mov    %eax,-0x14(%rbp)
jmp    1d22 <ssl3_connect+0xc02>
cmpl   $0x0,-0x3c(%rbp)
je     1c98 <ssl3_connect+0xb78>
movl   $0x0,-0x3c(%rbp)
movslq -0x60(%rbp),%rax
mov    %rax,-0x178(%rbp)
mov    -0x178(%rbp),%rax
add    $0x4,%rax
mov    %rax,-0x180(%rbp)
cmpq   $0x0,-0x180(%rbp)
jne    1cc8 <ssl3_connect+0xba8>
jmp    1cc8 <ssl3_connect+0xba8>
movl   $0x0,-0x28(%rbp)
movl   $0x0,-0x18(%rbp)
cmpl   $0x0,-0x34(%rbp)
je     1ce9 <ssl3_connect+0xbc9>
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     1d0e <ssl3_connect+0xbee>
jmp    1d0e <ssl3_connect+0xbee>
jmp    1e66 <ssl3_connect+0xd46>
movl   $0xffffffff,-0xac(%rbp)
ff ff ff
jmp    1e66 <ssl3_connect+0xd46>
jmp    1d27 <ssl3_connect+0xc07>
jmp    1d2c <ssl3_connect+0xc0c>
jmp    1d31 <ssl3_connect+0xc11>
jmp    1d36 <ssl3_connect+0xc16>
jmp    1d3b <ssl3_connect+0xc1b>
jmp    1d40 <ssl3_connect+0xc20>
jmp    1d45 <ssl3_connect+0xc25>
jmp    1d4a <ssl3_connect+0xc2a>
jmp    1d4f <ssl3_connect+0xc2f>
jmp    1d54 <ssl3_connect+0xc34>
jmp    1d59 <ssl3_connect+0xc39>
jmp    1d5e <ssl3_connect+0xc3e>
jmp    1d63 <ssl3_connect+0xc43>
jmp    1d68 <ssl3_connect+0xc48>
jmp    1d6d <ssl3_connect+0xc4d>
jmp    1d72 <ssl3_connect+0xc52>
jmp    1d77 <ssl3_connect+0xc57>
jmp    1d7c <ssl3_connect+0xc5c>
jmp    1d81 <ssl3_connect+0xc61>
jmp    1d86 <ssl3_connect+0xc66>
jmp    1d8b <ssl3_connect+0xc6b>
jmp    1d90 <ssl3_connect+0xc70>
jmp    1d95 <ssl3_connect+0xc75>
jmp    1d9a <ssl3_connect+0xc7a>
jmp    1d9f <ssl3_connect+0xc7f>
jmp    1da4 <ssl3_connect+0xc84>
jmp    1da9 <ssl3_connect+0xc89>
jmp    1dae <ssl3_connect+0xc8e>
jmp    1db3 <ssl3_connect+0xc93>
jmp    1db8 <ssl3_connect+0xc98>
jmp    1dbd <ssl3_connect+0xc9d>
jmp    1dc2 <ssl3_connect+0xca2>
jmp    1dc7 <ssl3_connect+0xca7>
jmp    1dcc <ssl3_connect+0xcac>
cmpl   $0x0,-0x70(%rbp)
jne    1e57 <ssl3_connect+0xd37>
cmpl   $0x0,-0xb8(%rbp)
jne    1e52 <ssl3_connect+0xd32>
cmpl   $0x0,-0x40(%rbp)
je     1e11 <ssl3_connect+0xcf1>
mov    $0x0,%al
call   1030 <__VERIFIER_nondet_int@plt>
mov    %eax,-0xac(%rbp)
cmpl   $0x0,-0xac(%rbp)
jg     1e0c <ssl3_connect+0xcec>
jmp    1e66 <ssl3_connect+0xd46>
jmp    1e11 <ssl3_connect+0xcf1>
cmpl   $0x0,-0xa8(%rbp)
je     1e4d <ssl3_connect+0xd2d>
mov    -0x14(%rbp),%eax
cmp    -0xb4(%rbp),%eax
je     1e48 <ssl3_connect+0xd28>
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    1e4d <ssl3_connect+0xd2d>
jmp    1e52 <ssl3_connect+0xd32>
jmp    1e57 <ssl3_connect+0xd37>
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     1e81 <ssl3_connect+0xd61>
jmp    1e81 <ssl3_connect+0xd61>
mov    -0xac(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    1e9d <ssl3_connect+0xd7d>
mov    $0x0,%al
call   1040 <__VERIFIER_error@plt>
movl   $0xffffffff,-0x4(%rbp)
mov    -0x4(%rbp),%eax
add    $0x180,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<ssl3_connect>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x78,%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,0x68(%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,0x38(%rsp)
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>
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,%rbp
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x70(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x10(%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,0x58(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r15
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x48(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbx
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r12
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,0x40(%rsp)
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
test   %r15d,%r15d
sete   %al
test   %r13d,%r13d
sete   %r15b
or     %al,%r15b
xor    %eax,%eax
test   %ebp,%ebp
sete   %al
shl    $0x4,%eax
add    $0x1170,%eax
mov    %eax,0x34(%rsp)
mov    0x10(%rsp),%eax
mov    %rax,0x50(%rsp)
cmpl   $0x0,0x38(%rsp)
mov    $0x1130,%eax
mov    $0x11d0,%ecx
cmove  %eax,%ecx
mov    %ecx,0x30(%rsp)
mov    $0x3,%eax
mov    $0x11a0,%ecx
cmove  %eax,%ecx
mov    %ecx,0x2c(%rsp)
test   %ebx,%ebx
sete   %al
test   %r12d,%r12d
sete   %cl
or     %al,%cl
mov    %cl,0xf(%rsp)
xor    %ebx,%ebx
cmp    $0x1,%ebp
setne  %bl
shl    $0x4,%ebx
add    $0x1190,%ebx
movl   $0x0,0x10(%rsp)
mov    %rax,0x20(%rsp)
xchg   %ax,%ax
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,%r13d
cmpl   $0xffff0400,0x68(%rsp)
ff
jne    1631 <ssl3_connect+0x511>
test   %ebp,%ebp
jne    1335 <ssl3_connect+0x215>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%rbp
test   %ebp,%ebp
je     1631 <ssl3_connect+0x511>
cmpl   $0x0,0x58(%rsp)
je     1631 <ssl3_connect+0x511>
test   %r15b,%r15b
jne    1631 <ssl3_connect+0x511>
mov    $0x1110,%r14d
xor    %r12d,%r12d
or     0x70(%rsp),%r12d
jne    12b0 <ssl3_connect+0x190>
cmpl   $0x0,0x60(%rsp)
je     12b0 <ssl3_connect+0x190>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
test   %r13d,%r13d
jg     12b0 <ssl3_connect+0x190>
jmp    1631 <ssl3_connect+0x511>
mov    %r14d,%eax
and    $0xfffffffe,%eax
lea    -0x1110(%rax),%ecx
rol    $0x1c,%ecx
cmp    $0x5,%ecx
ja     13c9 <ssl3_connect+0x2a9>
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,%r13
test   %r13d,%r13d
jle    1631 <ssl3_connect+0x511>
mov    0x10(%rsp),%ecx
test   %ecx,%ecx
mov    $0x1,%eax
cmove  %eax,%ecx
mov    %ecx,0x10(%rsp)
mov    $0x1120,%r14d
jmp    1344 <ssl3_connect+0x224>
mov    %r14d,%ecx
and    $0xfffffffc,%ecx
cmp    $0x1170,%ecx
je     150f <ssl3_connect+0x3ef>
add    $0xffffee80,%eax
rol    $0x1c,%eax
cmp    $0x5,%eax
ja     15bb <ssl3_connect+0x49b>
lea    0xc25(%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,%r13
mov    %ebx,%r14d
jmp    15f7 <ssl3_connect+0x4d7>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
test   %r13d,%r13d
jle    1631 <ssl3_connect+0x511>
mov    0x10(%rsp),%edx
cmp    $0x4,%edx
mov    %edx,%eax
mov    $0x5,%ecx
cmove  %ecx,%eax
cmp    $0x1,%edx
mov    $0x2,%ecx
cmove  %ecx,%eax
xor    %r12d,%r12d
mov    %eax,0x10(%rsp)
mov    0x30(%rsp),%r14d
jmp    1347 <ssl3_connect+0x227>
mov    $0x1140,%r14d
mov    $0x1,%r12d
cmpl   $0xffffff00,0x50(%rsp)
ff
jne    1347 <ssl3_connect+0x227>
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
mov    0x10(%rsp),%ecx
cmp    $0x2,%ecx
mov    $0x3,%eax
cmove  %eax,%ecx
mov    %ecx,0x10(%rsp)
jmp    15f7 <ssl3_connect+0x4d7>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
test   %r13d,%r13d
jle    1631 <ssl3_connect+0x511>
mov    0x10(%rsp),%ecx
cmp    $0x3,%ecx
mov    $0x4,%eax
cmove  %eax,%ecx
mov    %ecx,0x10(%rsp)
cmpl   $0x0,0x48(%rsp)
je     162b <ssl3_connect+0x50b>
xor    %r12d,%r12d
mov    $0x1150,%r14d
jmp    1347 <ssl3_connect+0x227>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
cmpl   $0x5,0x10(%rsp)
je     1624 <ssl3_connect+0x504>
mov    %rax,%r13
test   %r13d,%r13d
jle    1631 <ssl3_connect+0x511>
mov    $0x1160,%r14d
jmp    1344 <ssl3_connect+0x224>
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
mov    0x34(%rsp),%r14d
jmp    15f7 <ssl3_connect+0x4d7>
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
mov    $0x1180,%r14d
jmp    15f7 <ssl3_connect+0x4d7>
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
mov    $0x11a0,%r14d
jmp    15f7 <ssl3_connect+0x4d7>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
test   %r13d,%r13d
jle    1631 <ssl3_connect+0x511>
cmpb   $0x0,0xf(%rsp)
jne    162b <ssl3_connect+0x50b>
mov    $0x11b0,%r14d
jmp    1344 <ssl3_connect+0x224>
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
test   %r13d,%r13d
jle    1631 <ssl3_connect+0x511>
mov    0x20(%rsp),%rcx
add    $0xfffffffb,%ecx
xor    %r12d,%r12d
cmpl   $0x0,0x38(%rsp)
je     1602 <ssl3_connect+0x4e2>
lea    0x0(,%rcx,4),%eax
cmp    $0xfffffffe,%ecx
cmove  %ecx,%eax
movl   $0x3,0x1c(%rsp)
mov    $0x3,%r14d
mov    $0x1100,%ecx
cmove  %ecx,%r14d
mov    %rax,0x20(%rsp)
jmp    1347 <ssl3_connect+0x227>
mov    $0xffffffff,%r13d
cmp    $0x1100,%r14d
jne    1643 <ssl3_connect+0x523>
xor    %r12d,%r12d
mov    0x40(%rsp),%rax
test   %eax,%eax
jle    161a <ssl3_connect+0x4fa>
mov    0x1c(%rsp),%r14d
test   %eax,%eax
jg     1347 <ssl3_connect+0x227>
jmp    1631 <ssl3_connect+0x511>
xor    %r12d,%r12d
xor    %eax,%eax
call   1030 <__VERIFIER_nondet_int@plt>
mov    %rax,%r13
mov    0x2c(%rsp),%r14d
test   %r13d,%r13d
jg     1347 <ssl3_connect+0x227>
jmp    1631 <ssl3_connect+0x511>
mov    %rcx,0x20(%rsp)
mov    $0x1100,%r14d
movl   $0x11d0,0x1c(%rsp)
jmp    1347 <ssl3_connect+0x227>
mov    0x1c(%rsp),%r14d
jmp    1347 <ssl3_connect+0x227>
xor    %eax,%eax
call   1040 <__VERIFIER_error@plt>
mov    $0xffffffff,%r13d
mov    %r13d,%eax
add    $0x78,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret
cmp    $0x3,%r14d
jne    1631 <ssl3_connect+0x511>
mov    $0x1,%r13d
jmp    1631 <ssl3_connect+0x511>

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

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 = tail call i8* (...) @__VERIFIER_nondet_int()
%31 = tail call i8* (...) @__VERIFIER_nondet_int()
%32 = tail call i8* (...) @__VERIFIER_nondet_int()
%33 = tail call i8* (...) @__VERIFIER_nondet_int()
%34 = ptrtoint i8* %33 to i64
%35 = trunc i64 %34 to i32
%36 = tail call i8* (...) @__VERIFIER_nondet_int()
%37 = ptrtoint i8* %36 to i64
%38 = trunc i64 %37 to i32
%39 = tail call i8* (...) @__VERIFIER_nondet_int()
%40 = ptrtoint i8* %39 to i64
%41 = trunc i64 %40 to i32
%42 = tail call i8* (...) @__VERIFIER_nondet_int()
%43 = ptrtoint i8* %42 to i64
%44 = trunc i64 %43 to i32
%45 = tail call i8* (...) @__VERIFIER_nondet_int()
%46 = ptrtoint i8* %45 to i64
%47 = trunc i64 %46 to i32
%48 = tail call i8* (...) @__VERIFIER_nondet_int()
%49 = ptrtoint i8* %48 to i64
%50 = trunc i64 %49 to i32
%51 = tail call i8* (...) @__VERIFIER_nondet_int()
%52 = ptrtoint i8* %51 to i64
%53 = trunc i64 %52 to i32
%54 = tail call i8* (...) @__VERIFIER_nondet_int()
%55 = icmp eq i32 %6, -64512
%56 = icmp eq i32 %35, 0
%57 = icmp eq i32 %38, 0
%58 = icmp eq i32 %41, 0
%59 = select i1 %57, i1 true, i1 %58
%60 = icmp eq i32 %22, 0
%61 = select i1 %60, i32 4480, i32 4464
%62 = icmp eq i32 %44, 0
%63 = and i64 %29, 4294967295
%64 = icmp eq i64 %63, 4294967040
%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 %47, 0
%69 = icmp eq i32 %50, 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 %53, 1
%74 = icmp eq i32 %14, 0
br label %75
75: ; preds = %208, %1
%76 = phi i32 [ 0, %1 ], [ %193, %208 ]
%77 = phi i32 [ undef, %1 ], [ %195, %208 ]
%78 = phi i32 [ undef, %1 ], [ %196, %208 ]
%79 = phi i32 [ undef, %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 %105
i32 1, label %113
i32 2, label %123
i32 3, label %131
i32 4, label %139
i32 5, label %146
]
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 %55, label %94, label %250
94: ; preds = %93
%95 = icmp eq i32 %80, 0
br i1 %95, label %96, label %103
96: ; preds = %94
%97 = tail call i8* (...) @__VERIFIER_nondet_int()
%98 = ptrtoint i8* %97 to i64
%99 = trunc i64 %98 to i32
%100 = and i64 %98, 4294967295
%101 = icmp eq i64 %100, 0
%102 = select i1 %101, i1 true, i1 %56
br i1 %102, label %250, label %103
103: ; preds = %96, %94
%104 = phi i32 [ %80, %94 ], [ %99, %96 ]
br i1 %59, label %250, label %192
105: ; preds = %82
%106 = tail call i8* (...) @__VERIFIER_nondet_int()
%107 = ptrtoint i8* %106 to i64
%108 = trunc i64 %107 to i32
%109 = icmp slt i32 %108, 1
br i1 %109, label %211, label %110
110: ; preds = %105
%111 = icmp eq i32 %76, 0
%112 = select i1 %111, i32 1, i32 %76
br label %192
113: ; preds = %82
%114 = tail call i8* (...) @__VERIFIER_nondet_int()
%115 = ptrtoint i8* %114 to i64
%116 = trunc i64 %115 to i32
%117 = icmp slt i32 %116, 1
br i1 %117, label %214, label %118
118: ; preds = %113
%119 = icmp eq i32 %76, 1
%120 = icmp eq i32 %76, 4
%121 = select i1 %120, i32 5, i32 %76
%122 = select i1 %119, i32 2, i32 %121
br label %192
123: ; preds = %82
br i1 %64, label %124, label %192
124: ; preds = %123
%125 = tail call i8* (...) @__VERIFIER_nondet_int()
%126 = ptrtoint i8* %125 to i64
%127 = trunc i64 %126 to i32
%128 = icmp eq i32 %76, 2
%129 = select i1 %128, i32 3, i32 %76
%130 = icmp slt i32 %127, 1
br i1 %130, label %217, label %192
131: ; preds = %82
%132 = tail call i8* (...) @__VERIFIER_nondet_int()
%133 = ptrtoint i8* %132 to i64
%134 = trunc i64 %133 to i32
%135 = icmp slt i32 %134, 1
br i1 %135, label %220, label %136
136: ; preds = %131
%137 = icmp eq i32 %76, 3
%138 = select i1 %137, i32 4, i32 %76
br i1 %62, label %250, label %192
139: ; preds = %82
%140 = tail call i8* (...) @__VERIFIER_nondet_int()
%141 = icmp eq i32 %76, 5
br i1 %141, label %209, label %142
142: ; preds = %139
%143 = ptrtoint i8* %140 to i64
%144 = trunc i64 %143 to i32
%145 = icmp slt i32 %144, 1
br i1 %145, label %223, label %192
146: ; preds = %82
%147 = tail call i8* (...) @__VERIFIER_nondet_int()
%148 = ptrtoint i8* %147 to i64
%149 = trunc i64 %148 to i32
%150 = icmp slt i32 %149, 1
br i1 %150, label %226, 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 %79, -5
br i1 %65, label %192, label %179
179: ; preds = %177
%180 = icmp eq i32 %178, -2
%181 = shl i32 %178, 2
%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 %77, 0
br i1 %190, label %191, label %192
191: ; preds = %189
br i1 %73, label %250, label %192
192: ; preds = %103, %184, %156, %146, %179, %171, %189, %191, %177, %161, %151, %142, %124, %123, %136, %118, %110
%193 = phi i32 [ %112, %110 ], [ %122, %118 ], [ %138, %136 ], [ %129, %124 ], [ %76, %123 ], [ %76, %142 ], [ %76, %151 ], [ %76, %161 ], [ %76, %177 ], [ %76, %179 ], [ %76, %191 ], [ %76, %189 ], [ %76, %171 ], [ %76, %146 ], [ %76, %156 ], [ %76, %184 ], [ %76, %103 ]
%194 = phi i32 [ 0, %110 ], [ 0, %118 ], [ 0, %136 ], [ 0, %124 ], [ 1, %123 ], [ 0, %142 ], [ 0, %151 ], [ 0, %161 ], [ 0, %177 ], [ 0, %179 ], [ 0, %191 ], [ 0, %189 ], [ 0, %171 ], [ 0, %146 ], [ 0, %156 ], [ 0, %184 ], [ 0, %103 ]
%195 = phi i32 [ %77, %110 ], [ %77, %118 ], [ %77, %136 ], [ %77, %124 ], [ %77, %123 ], [ %77, %142 ], [ %77, %151 ], [ %77, %161 ], [ %77, %177 ], [ %77, %179 ], [ %53, %191 ], [ %77, %189 ], [ %77, %171 ], [ %77, %146 ], [ %77, %156 ], [ %77, %184 ], [ %77, %103 ]
%196 = phi i32 [ %78, %110 ], [ %78, %118 ], [ %78, %136 ], [ %78, %124 ], [ %78, %123 ], [ %78, %142 ], [ %78, %151 ], [ %78, %161 ], [ 4560, %177 ], [ 3, %179 ], [ %78, %191 ], [ %78, %189 ], [ %78, %171 ], [ %78, %146 ], [ %78, %156 ], [ %78, %184 ], [ %78, %103 ]
%197 = phi i32 [ %79, %110 ], [ %79, %118 ], [ %79, %136 ], [ %79, %124 ], [ %79, %123 ], [ %79, %142 ], [ %79, %151 ], [ %79, %161 ], [ %178, %177 ], [ %182, %179 ], [ %79, %191 ], [ %79, %189 ], [ %79, %171 ], [ %79, %146 ], [ %79, %156 ], [ %79, %184 ], [ %79, %103 ]
%198 = phi i32 [ %80, %110 ], [ %80, %118 ], [ %80, %136 ], [ %80, %124 ], [ %80, %123 ], [ %80, %142 ], [ %80, %151 ], [ %80, %161 ], [ %80, %177 ], [ %80, %179 ], [ %80, %191 ], [ %80, %189 ], [ %80, %171 ], [ %80, %146 ], [ %80, %156 ], [ %80, %184 ], [ %104, %103 ]
%199 = phi i32 [ 4384, %110 ], [ %66, %118 ], [ 4432, %136 ], [ 4416, %124 ], [ 4416, %123 ], [ 4448, %142 ], [ 4480, %151 ], [ 4512, %161 ], [ 4352, %177 ], [ %183, %179 ], [ %78, %191 ], [ %78, %189 ], [ 4528, %171 ], [ %61, %146 ], [ %72, %156 ], [ %67, %184 ], [ 4368, %103 ]
%200 = or i32 %194, %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 = %139
%210 = tail call i32 (...) @__VERIFIER_error()
br label %251
211: ; preds = %105
%212 = ptrtoint i8* %106 to i64
%213 = trunc i64 %212 to i32
br label %251
214: ; preds = %113
%215 = ptrtoint i8* %114 to i64
%216 = trunc i64 %215 to i32
br label %251
217: ; preds = %124
%218 = ptrtoint i8* %125 to i64
%219 = trunc i64 %218 to i32
br label %251
220: ; preds = %131
%221 = ptrtoint i8* %132 to i64
%222 = trunc i64 %221 to i32
br label %251
223: ; preds = %142
%224 = ptrtoint i8* %140 to i64
%225 = trunc i64 %224 to i32
br label %251
226: ; preds = %146
%227 = ptrtoint i8* %147 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, %136, %103, %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
}