user: Demonstrate the C code that generates the assembly output below:

```asm
<ssl3_connect>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0xd0,%rsp
  mov    %edi,-0xc4(%rbp)
  mov    -0xc4(%rbp),%eax
  mov    %eax,-0xc0(%rbp)
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xb0(%rbp)
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xac(%rbp)
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0x94(%rbp)
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0x90(%rbp)
  movl   $0x0,-0x98(%rbp)
  movl   $0x0,-0xa4(%rbp)
  movl   $0xffffffff,-0xa0(%rbp)
  movl   $0x0,-0x9c(%rbp)
  movl   $0x0,-0x8c(%rbp)
  cmpl   $0x0,-0x88(%rbp)
  je     L292
  mov    -0x88(%rbp),%eax
  mov    %eax,-0xa4(%rbp)
  jmp    L560
L292:
  cmpl   $0x0,-0x84(%rbp)
  je     L560
  mov    -0x84(%rbp),%eax
  mov    %eax,-0xa4(%rbp)
L560:
  addl   $0x1,-0x80(%rbp)
L618:
  nop
  mov    -0xc0(%rbp),%eax
  mov    %eax,-0x7c(%rbp)
  cmpl   $0x3004,-0xc0(%rbp)
  je     L431
  cmpl   $0x4000,-0xc0(%rbp)
  je     L1311
  cmpl   $0x1000,-0xc0(%rbp)
  je     L499
  cmpl   $0x5000,-0xc0(%rbp)
  je     L984
  cmpl   $0x1003,-0xc0(%rbp)
  je     L324
  cmpl   $0x1110,-0xc0(%rbp)
  je     L1249
  cmpl   $0x1111,-0xc0(%rbp)
  je     L958
  cmpl   $0x1120,-0xc0(%rbp)
  je     L216
  cmpl   $0x1121,-0xc0(%rbp)
  je     L978
  cmpl   $0x1130,-0xc0(%rbp)
  je     L724
  cmpl   $0x1131,-0xc0(%rbp)
  je     L1294
  cmpl   $0x1140,-0xc0(%rbp)
  je     L980
  cmpl   $0x1141,-0xc0(%rbp)
  je     L58
  cmpl   $0x1150,-0xc0(%rbp)
  je     L954
  cmpl   $0x1151,-0xc0(%rbp)
  je     L379
  cmpl   $0x1160,-0xc0(%rbp)
  je     L477
  cmpl   $0x1161,-0xc0(%rbp)
  je     L1145
  cmpl   $0x1170,-0xc0(%rbp)
  je     L745
  cmpl   $0x1171,-0xc0(%rbp)
  je     L648
  cmpl   $0x1172,-0xc0(%rbp)
  je     L608
  cmpl   $0x1173,-0xc0(%rbp)
  je     L550
  cmpl   $0x1180,-0xc0(%rbp)
  je     L339
  cmpl   $0x1181,-0xc0(%rbp)
  je     L83
  cmpl   $0x1190,-0xc0(%rbp)
  je     L164
  cmpl   $0x1191,-0xc0(%rbp)
  je     L382
  cmpl   $0x11a0,-0xc0(%rbp)
  je     L600
  cmpl   $0x11a1,-0xc0(%rbp)
  je     L306
  cmpl   $0x11b0,-0xc0(%rbp)
  je     L69
  cmpl   $0x11b1,-0xc0(%rbp)
  je     L607
  cmpl   $0x11d0,-0xc0(%rbp)
  je     L109
  cmpl   $0x11d1,-0xc0(%rbp)
  je     L521
  cmpl   $0x1100,-0xc0(%rbp)
  je     L998
  cmpl   $0x3,-0xc0(%rbp)
  jne    L893
  jmp    L842
L431:
  nop
  movl   $0x1,-0x74(%rbp)
  movl   $0x1000,-0xc0(%rbp)
  addl   $0x1,-0xb8(%rbp)
  jmp    L798
L1311:
  nop
  jmp    L798
L499:
  nop
  jmp    L798
L984:
  nop
  jmp    L798
L324:
  nop
L798:
  movl   $0x0,-0x30(%rbp)
  cmpl   $0xffff0400,-0x2c(%rbp)
  je     L983
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L983:
  movl   $0x1000,-0x28(%rbp)
  cmpl   $0x0,-0xbc(%rbp)
  jne    L721
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0x24(%rbp)
  cmpl   $0x0,-0x24(%rbp)
  jne    L995
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L995:
  cmpl   $0x0,-0x20(%rbp)
  jne    L1187
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L1187:
  mov    -0x24(%rbp),%eax
  mov    %eax,-0xbc(%rbp)
L721:
  cmpl   $0x0,-0x1c(%rbp)
  jne    L1238
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L1238:
  cmpl   $0x0,-0x18(%rbp)
  jne    L36
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L36:
  movl   $0x1110,-0xc0(%rbp)
  addl   $0x1,-0xb4(%rbp)
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L1249:
  nop
  jmp    L426
L958:
  nop
L426:
  movl   $0x0,-0x34(%rbp)
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x0,-0x98(%rbp)
  jne    L435
  movl   $0x1,-0x98(%rbp)
L435:
  cmpl   $0x0,-0xa0(%rbp)
  jle    L1045
  movl   $0x1120,-0xc0(%rbp)
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L216:
  nop
  jmp    L1325
L978:
  nop
L1325:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x1,-0x98(%rbp)
  jne    L494
  movl   $0x2,-0x98(%rbp)
  jmp    L1418
L494:
  cmpl   $0x4,-0x98(%rbp)
  jne    L1418
  movl   $0x5,-0x98(%rbp)
L1418:
  cmpl   $0x0,-0xa0(%rbp)
  jle    L284
  cmpl   $0x0,-0x90(%rbp)
  je     L347
  movl   $0x11d0,-0xc0(%rbp)
  jmp    L1384
L347:
  movl   $0x1130,-0xc0(%rbp)
L1384:
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L724:
  nop
  jmp    L540
L1294:
  nop
L540:
  mov    -0x94(%rbp),%eax
  cltq
  cmp    $0xffffffffffffff00,%rax
  je     L557
  movl   $0x1,-0x9c(%rbp)
  jmp    L1008
L557:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x2,-0x98(%rbp)
  jne    L1149
  movl   $0x3,-0x98(%rbp)
L1149:
  cmpl   $0x0,-0xa0(%rbp)
  jle    L569
L1008:
  movl   $0x1140,-0xc0(%rbp)
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L980:
  nop
  jmp    L687
L58:
  nop
L687:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x3,-0x98(%rbp)
  jne    L578
  movl   $0x4,-0x98(%rbp)
L578:
  cmpl   $0x0,-0xa0(%rbp)
  jle    L976
  movl   $0x1150,-0xc0(%rbp)
  movl   $0x0,-0x78(%rbp)
  cmpl   $0x0,-0x38(%rbp)
  jne    L399
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L954:
  nop
  jmp    L309
L379:
  nop
L309:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x5,-0x98(%rbp)
  je     L1406
  cmpl   $0x0,-0xa0(%rbp)
  jle    L690
  movl   $0x1160,-0xc0(%rbp)
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L477:
  nop
  jmp    L703
L1145:
  nop
L703:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x0,-0xa0(%rbp)
  jle    L908
  cmpl   $0x0,-0x3c(%rbp)
  je     L1385
  movl   $0x1170,-0xc0(%rbp)
  jmp    L1242
L1385:
  movl   $0x1180,-0xc0(%rbp)
L1242:
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L745:
  nop
  jmp    L526
L648:
  nop
  jmp    L526
L608:
  nop
  jmp    L526
L550:
  nop
L526:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x0,-0xa0(%rbp)
  jle    L1000
  movl   $0x1180,-0xc0(%rbp)
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L339:
  nop
  jmp    L1355
L83:
  nop
L1355:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x0,-0xa0(%rbp)
  jle    L812
  mov    -0x94(%rbp),%eax
  cltq
  mov    %rax,-0x8(%rbp)
  cmpl   $0x1,-0x3c(%rbp)
  jne    L166
  movl   $0x1190,-0xc0(%rbp)
  jmp    L1409
L166:
  movl   $0x11a0,-0xc0(%rbp)
  movl   $0x0,-0x40(%rbp)
L1409:
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L164:
  nop
  jmp    L700
L382:
  nop
L700:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x0,-0xa0(%rbp)
  jle    L566
  movl   $0x11a0,-0xc0(%rbp)
  movl   $0x0,-0x78(%rbp)
  movl   $0x0,-0x40(%rbp)
  jmp    L1400
L600:
  nop
  jmp    L57
L306:
  nop
L57:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x0,-0xa0(%rbp)
  jle    L811
  movl   $0x11b0,-0xc0(%rbp)
  movl   $0x0,-0x78(%rbp)
  mov    -0x5c(%rbp),%eax
  mov    %eax,-0x58(%rbp)
  cmpl   $0x0,-0x54(%rbp)
  jne    L344
  movl   $0x0,-0x4c(%rbp)
  jmp    L946
L344:
  mov    -0x50(%rbp),%eax
  mov    %eax,-0x4c(%rbp)
L946:
  cmpl   $0x0,-0x48(%rbp)
  jne    L712
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L712:
  cmpl   $0x0,-0x44(%rbp)
  jne    L233
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L69:
  nop
  jmp    L1252
L607:
  nop
L1252:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x0,-0xa0(%rbp)
  jle    L157
  movl   $0x1100,-0xc0(%rbp)
  mov    -0xb0(%rbp),%eax
  sub    $0x5,%eax
  mov    %eax,-0xb0(%rbp)
  cmpl   $0x0,-0x90(%rbp)
  je     L1272
  movl   $0x3,-0xac(%rbp)
  cmpl   $0xfffffffe,-0xb0(%rbp)
  je     L1336
  movl   $0x3,-0xc0(%rbp)
  mov    -0xb0(%rbp),%eax
  shl    $0x2,%eax
  mov    %eax,-0xb0(%rbp)
  movl   $0x0,-0x60(%rbp)
  jmp    L1336
L1272:
  movl   $0x11d0,-0xac(%rbp)
L1336:
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L109:
  nop
  jmp    L175
L521:
  nop
L175:
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x0,-0xa0(%rbp)
  jle    L1247
  cmpl   $0x0,-0x90(%rbp)
  je     L200
  movl   $0x11a0,-0xc0(%rbp)
  jmp    L1380
L200:
  movl   $0x3,-0xc0(%rbp)
L1380:
  movl   $0x0,-0x78(%rbp)
  jmp    L1400
L998:
  nop
  cmpl   $0x0,-0xa8(%rbp)
  jle    L629
  movl   $0x2,-0x68(%rbp)
  mov    -0x64(%rbp),%eax
  mov    %eax,-0xa8(%rbp)
  cmpl   $0x0,-0xa8(%rbp)
  jg     L1331
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L1331:
  movl   $0x1,-0x68(%rbp)
L629:
  mov    -0xac(%rbp),%eax
  mov    %eax,-0xc0(%rbp)
  jmp    L1400
L842:
  cmpl   $0x0,-0xbc(%rbp)
  je     L1001
  movl   $0x0,-0xbc(%rbp)
L1001:
  movl   $0x0,-0x78(%rbp)
  movl   $0x0,-0x74(%rbp)
  cmpl   $0x0,-0x90(%rbp)
  je     L244
  addl   $0x1,-0x70(%rbp)
L244:
  movl   $0x1,-0xa0(%rbp)
  addl   $0x1,-0x6c(%rbp)
  jmp    L93
L893:
  nop
  movl   $0xffffffff,-0xa0(%rbp)
  jmp    L93
L399:
  nop
  jmp    L1400
L233:
  nop
L1400:
  cmpl   $0x0,-0x14(%rbp)
  jne    L890
  cmpl   $0x0,-0x9c(%rbp)
  jne    L890
  cmpl   $0x0,-0x10(%rbp)
  je     L1354
  mov    $0x0,%eax
  call   <__VERIFIER_nondet_int@plt>
  mov    %eax,-0xa0(%rbp)
  cmpl   $0x0,-0xa0(%rbp)
  jle    L386
L1354:
  cmpl   $0x0,-0xa4(%rbp)
  je     L890
  mov    -0xc0(%rbp),%eax
  cmp    -0x7c(%rbp),%eax
  je     L890
  mov    -0xc0(%rbp),%eax
  mov    %eax,-0xc(%rbp)
  mov    -0x7c(%rbp),%eax
  mov    %eax,-0xc0(%rbp)
  mov    -0xc(%rbp),%eax
  mov    %eax,-0xc0(%rbp)
L890:
  movl   $0x0,-0x9c(%rbp)
  jmp    L618
L1045:
  nop
  jmp    L93
L284:
  nop
  jmp    L93
L569:
  nop
  jmp    L93
L976:
  nop
  jmp    L93
L690:
  nop
  jmp    L93
L908:
  nop
  jmp    L93
L1000:
  nop
  jmp    L93
L812:
  nop
  jmp    L93
L566:
  nop
  jmp    L93
L811:
  nop
  jmp    L93
L157:
  nop
  jmp    L93
L1247:
  nop
  jmp    L93
L386:
  nop
L93:
  subl   $0x1,-0x80(%rbp)
  mov    -0xa0(%rbp),%eax
  jmp    L672
L1406:
  nop
  mov    $0x0,%eax
  call   <__VERIFIER_error@plt>
  mov    $0xffffffff,%eax
L672:
  leave
  ret
```

assistant: ```c
int ssl3_connect(int initial_state) {
  int s__info_callback;
  int s__in_handshake;
  int s__state;
  int s__new_session;
  int s__server;
  int s__version;
  int s__type;
  int s__init_num;
  int s__bbio;
  int s__wbio;
  int s__hit;
  int s__rwstate;
  int s__init_buf___0;
  int s__debug;
  int s__shutdown;
  int s__ctx__info_callback;
  int s__ctx__stats__sess_connect_renegotiate;
  int s__ctx__stats__sess_connect;
  int s__ctx__stats__sess_hit;
  int s__ctx__stats__sess_connect_good;
  int s__s3__change_cipher_spec;
  int s__s3__flags;
  int s__s3__delay_buf_pop_ret;
  int s__s3__tmp__cert_req;
  int s__s3__tmp__new_compression;
  int s__s3__tmp__reuse_message;
  int s__s3__tmp__new_cipher;
  int s__s3__tmp__new_cipher__algorithms;
  int s__s3__tmp__next_state___0;
  int s__s3__tmp__new_compression__id;
  int s__session__cipher;
  int s__session__compress_meth;
  int buf;
  unsigned long l;
  int num1;
  int cb;
  int ret;
  int new_state;
  int state;
  int skip;
  int tmp___0;
  int tmp___1;
  int tmp___2;
  int tmp___3;
  int tmp___4;
  int tmp___5;
  int tmp___6;
  int tmp___7;
  int tmp___8;
  int tmp___9;
  int blastFlag;
  {
    s__state = initial_state;
    s__s3__flags = __VERIFIER_nondet_int();
    s__s3__tmp__next_state___0 = __VERIFIER_nondet_int();
    s__s3__tmp__new_cipher__algorithms = __VERIFIER_nondet_int();
    s__hit = __VERIFIER_nondet_int();
    blastFlag = 0;
    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;
      } else {
      }
    }
    s__in_handshake += 1;
    if (tmp___1 + 12288) {
      if (tmp___2 + 16384) {
      } else {
      }
    } else {
    }
    {
      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 += 1;
                                                                            switch_1_16384:;
                                                                            switch_1_4096:;
                                                                            switch_1_20480:;
                                                                            switch_1_4099:
                                                                              s__server = 0;
                                                                              if (cb != 0) {
                                                                              } else {
                                                                              }
                                                                              if (s__version + 65280 != 768) {
                                                                                ret = -1;
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              s__type = 4096;
                                                                              if ((unsigned long)s__init_buf___0 == (unsigned long)((void *)0)) {
                                                                                buf = __VERIFIER_nondet_int();
                                                                                if ((unsigned long)buf == (unsigned long)((void *)0)) {
                                                                                  ret = -1;
                                                                                  goto end;
                                                                                } else {
                                                                                }
                                                                                if (!tmp___3) {
                                                                                  ret = -1;
                                                                                  goto end;
                                                                                } else {
                                                                                }
                                                                                s__init_buf___0 = buf;
                                                                              } else {
                                                                              }
                                                                              if (!tmp___4) {
                                                                                ret = -1;
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              if (!tmp___5) {
                                                                                ret = -1;
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              s__state = 4368;
                                                                              s__ctx__stats__sess_connect += 1;
                                                                              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;
                                                                              } else {
                                                                              }
                                                                              if (ret <= 0) {
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              s__state = 4384;
                                                                              s__init_num = 0;
                                                                              if ((unsigned long)s__bbio != (unsigned long)s__wbio) {
                                                                              } else {
                                                                              }
                                                                              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;
                                                                                } else {
                                                                                }
                                                                              }
                                                                              if (ret <= 0) {
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              if (s__hit) {
                                                                                s__state = 4560;
                                                                              } else {
                                                                                s__state = 4400;
                                                                              }
                                                                              s__init_num = 0;
                                                                              goto switch_1_break;
                                                                            switch_1_4400:;
                                                                            switch_1_4401:;
                                                                              if ((unsigned long)s__s3__tmp__new_cipher__algorithms + 256UL) {
                                                                                skip = 1;
                                                                              } else {
                                                                                ret = __VERIFIER_nondet_int();
                                                                                if (blastFlag == 2) {
                                                                                  blastFlag = 3;
                                                                                } else {
                                                                                }
                                                                                if (ret <= 0) {
                                                                                  goto end;
                                                                                } else {
                                                                                }
                                                                              }
                                                                              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;
                                                                              } else {
                                                                              }
                                                                              if (ret <= 0) {
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              s__state = 4432;
                                                                              s__init_num = 0;
                                                                              if (!tmp___6) {
                                                                                ret = -1;
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              goto switch_1_break;
                                                                            switch_1_4432:;
                                                                            switch_1_4433:
                                                                              ret = __VERIFIER_nondet_int();
                                                                              if (blastFlag == 5) {
                                                                                goto ERROR;
                                                                              } else {
                                                                              }
                                                                              if (ret <= 0) {
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              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;
                                                                              } else {
                                                                              }
                                                                              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;
                                                                              } else {
                                                                              }
                                                                              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;
                                                                              } else {
                                                                              }
                                                                              l = 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;
                                                                              } else {
                                                                              }
                                                                              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;
                                                                              } else {
                                                                              }
                                                                              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;
                                                                              } else {
                                                                              }
                                                                              if (!tmp___8) {
                                                                                ret = -1;
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              goto switch_1_break;
                                                                            switch_1_4528:;
                                                                            switch_1_4529:
                                                                              ret = __VERIFIER_nondet_int();
                                                                              if (ret <= 0) {
                                                                                goto end;
                                                                              } else {
                                                                              }
                                                                              s__state = 4352;
                                                                              s__s3__flags = (long)s__s3__flags + -5L;
                                                                              if (s__hit) {
                                                                                s__s3__tmp__next_state___0 = 3;
                                                                                if ((long)s__s3__flags + 2L) {
                                                                                  s__state = 3;
                                                                                  s__s3__flags = (long)s__s3__flags * 4L;
                                                                                  s__s3__delay_buf_pop_ret = 0;
                                                                                } else {
                                                                                }
                                                                              } 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;
                                                                              } else {
                                                                              }
                                                                              if (s__hit) {
                                                                                s__state = 4512;
                                                                              } else {
                                                                                s__state = 3;
                                                                              }
                                                                              s__init_num = 0;
                                                                              goto switch_1_break;
                                                                            switch_1_4352:
                                                                              if ((long)num1 > 0L) {
                                                                                s__rwstate = 2;
                                                                                num1 = (long)tmp___9;
                                                                                if ((long)num1 <= 0L) {
                                                                                  ret = -1;
                                                                                  goto end;
                                                                                } else {
                                                                                }
                                                                                s__rwstate = 1;
                                                                              } else {
                                                                              }
                                                                              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;
                                                                              } else {
                                                                              }
                                                                              if (!((long)s__s3__flags + 4L)) {
                                                                              } else {
                                                                              }
                                                                              s__init_num = 0;
                                                                              s__new_session = 0;
                                                                              if (s__hit) {
                                                                                s__ctx__stats__sess_hit += 1;
                                                                              } else {
                                                                              }
                                                                              ret = 1;
                                                                              s__ctx__stats__sess_connect_good += 1;
                                                                              if (cb != 0) {
                                                                              } else {
                                                                              }
                                                                              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;
              } else {
              }
            } else {
            }
            if (cb != 0) {
              if (s__state != state) {
                new_state = s__state;
                s__state = state;
                s__state = new_state;
              } else {
              }
            } else {
            }
          } else {
          }
        } else {
        }
        skip = 0;
      }
    while_0_break:;
    }
  end:
    s__in_handshake -= 1;
    if (cb != 0) {
    } else {
    }
    return (ret);
  ERROR:
    __VERIFIER_error();
    return (-1);
  }
}
```