#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 */
typedef int /*<<< orphan*/ BIGNUM;

/* Variables and functions */
int /*<<< orphan*/ BN_dec2bn(int /*<<< orphan*/ **, char *);
int /*<<< orphan*/ BN_free(int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_abs_eq_word(char *, int, char *, char *,
                                       int /*<<< orphan*/ *, int);
int /*<<< orphan*/ test_BN_eq(char *, int, char *, char *, int /*<<< orphan*/ *,
                              int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_eq_one(char *, int, char *, int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_eq_word(char *, int, char *, char *,
                                   int /*<<< orphan*/ *, int);
int /*<<< orphan*/ test_BN_eq_zero(char *, int, char *, int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_even(char *, int, char *, int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_ge(char *, int, char *, char *, int /*<<< orphan*/ *,
                              int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_ge_zero(char *, int, char *, int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_gt(char *, int, char *, char *, int /*<<< orphan*/ *,
                              int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_gt_zero(char *, int, char *, int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_le(char *, int, char *, char *, int /*<<< orphan*/ *,
                              int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_le_zero(char *, int, char *, int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_lt(char *, int, char *, char *, int /*<<< orphan*/ *,
                              int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_lt_zero(char *, int, char *, int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_ne(char *, int, char *, char *, int /*<<< orphan*/ *,
                              int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_ne_zero(char *, int, char *, int /*<<< orphan*/ *);
int /*<<< orphan*/ test_BN_odd(char *, int, char *, int /*<<< orphan*/ *);
int /*<<< orphan*/ test_case(int, char *, int /*<<< orphan*/);
int /*<<< orphan*/ test_int_eq(char *, int, char *, char *, int /*<<< orphan*/,
                               int);
int test_bignum(void) {
  BIGNUM *a = NULL, *b = NULL, *c = NULL;
  int r = 0;
  if (!test_case(
          (1), "TEST_int_eq(BN_dec2bn(&a, \"0\"), 1)",
          (test_int_eq(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              316, "BN_dec2bn(&a, \"0\")", "1", BN_dec2bn(&a, "0"), 1))) |
      !test_case(
          (1), "TEST_BN_eq_word(a, 0)",
          (test_BN_eq_word(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              317, "a", "0", a, 0))) |
      !test_case(
          (0), "TEST_BN_eq_word(a, 30)",
          (test_BN_eq_word(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              318, "a", "30", a, 30))) |
      !test_case(
          (1), "TEST_BN_abs_eq_word(a, 0)",
          (test_BN_abs_eq_word(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              319, "a", "0", a, 0))) |
      !test_case(
          (0), "TEST_BN_eq_one(a)",
          (test_BN_eq_one(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              320, "a", a))) |
      !test_case(
          (1), "TEST_BN_eq_zero(a)",
          (test_BN_eq_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              321, "a", a))) |
      !test_case(
          (0), "TEST_BN_ne_zero(a)",
          (test_BN_ne_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              322, "a", a))) |
      !test_case(
          (1), "TEST_BN_le_zero(a)",
          (test_BN_le_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              323, "a", a))) |
      !test_case(
          (0), "TEST_BN_lt_zero(a)",
          (test_BN_lt_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              324, "a", a))) |
      !test_case(
          (1), "TEST_BN_ge_zero(a)",
          (test_BN_ge_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              325, "a", a))) |
      !test_case(
          (0), "TEST_BN_gt_zero(a)",
          (test_BN_gt_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              326, "a", a))) |
      !test_case(
          (1), "TEST_BN_even(a)",
          (test_BN_even(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              327, "a", a))) |
      !test_case(
          (0), "TEST_BN_odd(a)",
          (test_BN_odd(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              328, "a", a))) |
      !test_case(
          (1), "TEST_BN_eq(b, c)",
          (test_BN_eq(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              329, "b", "c", b, c))) |
      !test_case(
          (0), "TEST_BN_eq(a, b)",
          (test_BN_eq(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              330, "a", "b", a, b))) |
      !test_case(
          (0), "TEST_BN_ne(NULL, c)",
          (test_BN_ne(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              331, "NULL", "c", NULL, c))) |
      !test_case(
          (1), "TEST_int_eq(BN_dec2bn(&b, \"1\"), 1)",
          (test_int_eq(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              332, "BN_dec2bn(&b, \"1\")", "1", BN_dec2bn(&b, "1"), 1))) |
      !test_case(
          (1), "TEST_BN_eq_word(b, 1)",
          (test_BN_eq_word(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              333, "b", "1", b, 1))) |
      !test_case(
          (1), "TEST_BN_eq_one(b)",
          (test_BN_eq_one(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              334, "b", b))) |
      !test_case(
          (0), "TEST_BN_abs_eq_word(b, 0)",
          (test_BN_abs_eq_word(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              335, "b", "0", b, 0))) |
      !test_case(
          (1), "TEST_BN_abs_eq_word(b, 1)",
          (test_BN_abs_eq_word(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              336, "b", "1", b, 1))) |
      !test_case(
          (0), "TEST_BN_eq_zero(b)",
          (test_BN_eq_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              337, "b", b))) |
      !test_case(
          (1), "TEST_BN_ne_zero(b)",
          (test_BN_ne_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              338, "b", b))) |
      !test_case(
          (0), "TEST_BN_le_zero(b)",
          (test_BN_le_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              339, "b", b))) |
      !test_case(
          (0), "TEST_BN_lt_zero(b)",
          (test_BN_lt_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              340, "b", b))) |
      !test_case(
          (1), "TEST_BN_ge_zero(b)",
          (test_BN_ge_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              341, "b", b))) |
      !test_case(
          (1), "TEST_BN_gt_zero(b)",
          (test_BN_gt_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              342, "b", b))) |
      !test_case(
          (0), "TEST_BN_even(b)",
          (test_BN_even(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              343, "b", b))) |
      !test_case(
          (1), "TEST_BN_odd(b)",
          (test_BN_odd(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              344, "b", b))) |
      !test_case(
          (1), "TEST_int_eq(BN_dec2bn(&c, \"-334739439\"), 10)",
          (test_int_eq(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              345, "BN_dec2bn(&c, \"-334739439\")", "10",
              BN_dec2bn(&c, "-334739439"), 10))) |
      !test_case(
          (0), "TEST_BN_eq_word(c, 334739439)",
          (test_BN_eq_word(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              346, "c", "334739439", c, 334739439))) |
      !test_case(
          (1), "TEST_BN_abs_eq_word(c, 334739439)",
          (test_BN_abs_eq_word(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              347, "c", "334739439", c, 334739439))) |
      !test_case(
          (0), "TEST_BN_eq_zero(c)",
          (test_BN_eq_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              348, "c", c))) |
      !test_case(
          (1), "TEST_BN_ne_zero(c)",
          (test_BN_ne_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              349, "c", c))) |
      !test_case(
          (1), "TEST_BN_le_zero(c)",
          (test_BN_le_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              350, "c", c))) |
      !test_case(
          (1), "TEST_BN_lt_zero(c)",
          (test_BN_lt_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              351, "c", c))) |
      !test_case(
          (0), "TEST_BN_ge_zero(c)",
          (test_BN_ge_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              352, "c", c))) |
      !test_case(
          (0), "TEST_BN_gt_zero(c)",
          (test_BN_gt_zero(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              353, "c", c))) |
      !test_case(
          (0), "TEST_BN_even(c)",
          (test_BN_even(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              354, "c", c))) |
      !test_case(
          (1), "TEST_BN_odd(c)",
          (test_BN_odd(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              355, "c", c))) |
      !test_case(
          (1), "TEST_BN_eq(a, a)",
          (test_BN_eq(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              356, "a", "a", a, a))) |
      !test_case(
          (0), "TEST_BN_ne(a, a)",
          (test_BN_ne(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              357, "a", "a", a, a))) |
      !test_case(
          (0), "TEST_BN_eq(a, b)",
          (test_BN_eq(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              358, "a", "b", a, b))) |
      !test_case(
          (1), "TEST_BN_ne(a, b)",
          (test_BN_ne(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              359, "a", "b", a, b))) |
      !test_case(
          (0), "TEST_BN_lt(a, c)",
          (test_BN_lt(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              360, "a", "c", a, c))) |
      !test_case(
          (1), "TEST_BN_lt(c, b)",
          (test_BN_lt(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              361, "c", "b", c, b))) |
      !test_case(
          (0), "TEST_BN_lt(b, c)",
          (test_BN_lt(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              362, "b", "c", b, c))) |
      !test_case(
          (0), "TEST_BN_le(a, c)",
          (test_BN_le(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              363, "a", "c", a, c))) |
      !test_case(
          (1), "TEST_BN_le(c, b)",
          (test_BN_le(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              364, "c", "b", c, b))) |
      !test_case(
          (0), "TEST_BN_le(b, c)",
          (test_BN_le(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              365, "b", "c", b, c))) |
      !test_case(
          (1), "TEST_BN_gt(a, c)",
          (test_BN_gt(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              366, "a", "c", a, c))) |
      !test_case(
          (0), "TEST_BN_gt(c, b)",
          (test_BN_gt(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              367, "c", "b", c, b))) |
      !test_case(
          (1), "TEST_BN_gt(b, c)",
          (test_BN_gt(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              368, "b", "c", b, c))) |
      !test_case(
          (1), "TEST_BN_ge(a, c)",
          (test_BN_ge(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              369, "a", "c", a, c))) |
      !test_case(
          (0), "TEST_BN_ge(c, b)",
          (test_BN_ge(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              370, "c", "b", c, b))) |
      !test_case(
          (1), "TEST_BN_ge(b, c)",
          (test_BN_ge(
              "/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/"
              "2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/"
              "heads/master/Src/OSF/OpenSSL-111/test/test_test.c",
              371, "b", "c", b, c))))
    goto err;
  r = 1;
err:
  BN_free(a);
  BN_free(b);
  BN_free(c);
  return r;
}


x86 assembly (clang, -O0):
<test_bignum>:
push   %rbp
mov    %rsp,%rbp
sub    $0x100,%rsp
movq   $0x0,-0x8(%rbp)
movq   $0x0,-0x10(%rbp)
movq   $0x0,-0x18(%rbp)
movl   $0x0,-0x1c(%rbp)
lea    -0x8(%rbp),%rdi
lea    0x20f9(%rip),%rsi
call   1050 <BN_dec2bn@plt>
mov    %eax,%r8d
lea    0x1d8f(%rip),%rdi
mov    $0x13c,%esi
lea    0x1e30(%rip),%rdx
lea    0x1e3c(%rip),%rcx
mov    $0x1,%r9d
call   10c0 <test_int_eq@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1d40(%rip),%rsi
call   1120 <test_case@plt>
cmp    $0x0,%eax
setne  %al
xor    $0xff,%al
and    $0x1,%al
movzbl %al,%eax
mov    %eax,-0xf8(%rbp)
mov    -0x8(%rbp),%r8
lea    0x1d40(%rip),%rdi
mov    $0x13d,%esi
lea    0x1e0c(%rip),%rdx
lea    0x2088(%rip),%rcx
xor    %r9d,%r9d
call   1110 <test_BN_eq_word@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1dd9(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xf8(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xf4(%rbp)
mov    -0x8(%rbp),%r8
lea    0x1ce8(%rip),%rdi
mov    $0x13e,%esi
lea    0x1db4(%rip),%rdx
lea    0x1dc6(%rip),%rcx
mov    $0x1e,%r9d
call   1110 <test_BN_eq_word@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1d99(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xf4(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xf0(%rbp)
mov    -0x8(%rbp),%r8
lea    0x1c90(%rip),%rdi
mov    $0x13f,%esi
lea    0x1d5c(%rip),%rdx
lea    0x1fd8(%rip),%rcx
xor    %r9d,%r9d
call   1080 <test_BN_abs_eq_word@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1d5b(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xf0(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xec(%rbp)
mov    -0x8(%rbp),%rcx
lea    0x1c38(%rip),%rdi
mov    $0x140,%esi
lea    0x1d04(%rip),%rdx
call   1040 <test_BN_eq_one@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1d2a(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xec(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xe8(%rbp)
mov    -0x8(%rbp),%rcx
lea    0x1bed(%rip),%rdi
mov    $0x141,%esi
lea    0x1cb9(%rip),%rdx
call   1090 <test_BN_eq_zero@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1cee(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xe8(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xe4(%rbp)
mov    -0x8(%rbp),%rcx
lea    0x1b9f(%rip),%rdi
mov    $0x142,%esi
lea    0x1c6b(%rip),%rdx
call   10a0 <test_BN_ne_zero@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1cb6(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xe4(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xe0(%rbp)
mov    -0x8(%rbp),%rcx
lea    0x1b54(%rip),%rdi
mov    $0x143,%esi
lea    0x1c20(%rip),%rdx
call   1150 <test_BN_le_zero@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1c7b(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xe0(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xdc(%rbp)
mov    -0x8(%rbp),%rcx
lea    0x1b06(%rip),%rdi
mov    $0x144,%esi
lea    0x1bd2(%rip),%rdx
call   1170 <test_BN_lt_zero@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1c43(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xdc(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xd8(%rbp)
mov    -0x8(%rbp),%rcx
lea    0x1abb(%rip),%rdi
mov    $0x145,%esi
lea    0x1b87(%rip),%rdx
call   1030 <test_BN_ge_zero@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1c08(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xd8(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xd4(%rbp)
mov    -0x8(%rbp),%rcx
lea    0x1a6d(%rip),%rdi
mov    $0x146,%esi
lea    0x1b39(%rip),%rdx
call   1140 <test_BN_gt_zero@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1bd0(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xd4(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xd0(%rbp)
mov    -0x8(%rbp),%rcx
lea    0x1a22(%rip),%rdi
mov    $0x147,%esi
lea    0x1aee(%rip),%rdx
call   1160 <test_BN_even@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1b95(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xd0(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xcc(%rbp)
mov    -0x8(%rbp),%rcx
lea    0x19d4(%rip),%rdi
mov    $0x148,%esi
lea    0x1aa0(%rip),%rdx
call   1130 <test_BN_odd@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1b5a(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xcc(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xc8(%rbp)
mov    -0x10(%rbp),%r8
mov    -0x18(%rbp),%r9
lea    0x1985(%rip),%rdi
mov    $0x149,%esi
lea    0x1b3b(%rip),%rdx
lea    0x1a1d(%rip),%rcx
call   10b0 <test_BN_eq@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1b10(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xc8(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xc4(%rbp)
mov    -0x8(%rbp),%r8
mov    -0x10(%rbp),%r9
lea    0x192c(%rip),%rdi
mov    $0x14a,%esi
lea    0x19f8(%rip),%rdx
lea    0x1adb(%rip),%rcx
call   10b0 <test_BN_eq@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1acd(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xc4(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xc0(%rbp)
mov    -0x18(%rbp),%r9
lea    0x18da(%rip),%rdi
mov    $0x14b,%esi
lea    0x1ab7(%rip),%rdx
lea    0x1972(%rip),%rcx
xor    %eax,%eax
mov    %eax,%r8d
call   10d0 <test_BN_ne@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1a87(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xc0(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xbc(%rbp)
lea    -0x10(%rbp),%rdi
lea    0x1943(%rip),%rsi
call   1050 <BN_dec2bn@plt>
mov    %eax,%r8d
lea    0x1874(%rip),%rdi
mov    $0x14c,%esi
lea    0x1a79(%rip),%rdx
lea    0x1921(%rip),%rcx
mov    $0x1,%r9d
call   10c0 <test_int_eq@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1a36(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xbc(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xb8(%rbp)
mov    -0x10(%rbp),%r8
lea    0x1819(%rip),%rdi
mov    $0x14d,%esi
lea    0x19cf(%rip),%rdx
lea    0x18c6(%rip),%rcx
mov    $0x1,%r9d
call   1110 <test_BN_eq_word@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1a11(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xb8(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xb4(%rbp)
mov    -0x10(%rbp),%rcx
lea    0x17be(%rip),%rdi
mov    $0x14e,%esi
lea    0x1974(%rip),%rdx
call   1040 <test_BN_eq_one@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x19d9(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xb4(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xb0(%rbp)
mov    -0x10(%rbp),%r8
lea    0x1770(%rip),%rdi
mov    $0x14f,%esi
lea    0x1926(%rip),%rdx
lea    0x1ab8(%rip),%rcx
xor    %r9d,%r9d
call   1080 <test_BN_abs_eq_word@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1996(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xb0(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xac(%rbp)
mov    -0x10(%rbp),%r8
lea    0x171b(%rip),%rdi
mov    $0x150,%esi
lea    0x18d1(%rip),%rdx
lea    0x17c8(%rip),%rcx
mov    $0x1,%r9d
call   1080 <test_BN_abs_eq_word@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1955(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xac(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xa8(%rbp)
mov    -0x10(%rbp),%rcx
lea    0x16c0(%rip),%rdi
mov    $0x151,%esi
lea    0x1876(%rip),%rdx
call   1090 <test_BN_eq_zero@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1924(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xa8(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xa4(%rbp)
mov    -0x10(%rbp),%rcx
lea    0x1675(%rip),%rdi
mov    $0x152,%esi
lea    0x182b(%rip),%rdx
call   10a0 <test_BN_ne_zero@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x18e9(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xa4(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0xa0(%rbp)
mov    -0x10(%rbp),%rcx
lea    0x1627(%rip),%rdi
mov    $0x153,%esi
lea    0x17dd(%rip),%rdx
call   1150 <test_BN_le_zero@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x18b1(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0xa0(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x9c(%rbp)
mov    -0x10(%rbp),%rcx
lea    0x15dc(%rip),%rdi
mov    $0x154,%esi
lea    0x1792(%rip),%rdx
call   1170 <test_BN_lt_zero@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1879(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x9c(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x98(%rbp)
mov    -0x10(%rbp),%rcx
lea    0x1591(%rip),%rdi
mov    $0x155,%esi
lea    0x1747(%rip),%rdx
call   1030 <test_BN_ge_zero@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x183e(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x98(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x94(%rbp)
mov    -0x10(%rbp),%rcx
lea    0x1543(%rip),%rdi
mov    $0x156,%esi
lea    0x16f9(%rip),%rdx
call   1140 <test_BN_gt_zero@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1803(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x94(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x90(%rbp)
mov    -0x10(%rbp),%rcx
lea    0x14f5(%rip),%rdi
mov    $0x157,%esi
lea    0x16ab(%rip),%rdx
call   1160 <test_BN_even@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x17cb(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x90(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x8c(%rbp)
mov    -0x10(%rbp),%rcx
lea    0x14aa(%rip),%rdi
mov    $0x158,%esi
lea    0x1660(%rip),%rdx
call   1130 <test_BN_odd@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x178d(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x8c(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x88(%rbp)
lea    -0x18(%rbp),%rdi
lea    0x17b9(%rip),%rsi
call   1050 <BN_dec2bn@plt>
mov    %eax,%r8d
lea    0x144d(%rip),%rdi
mov    $0x159,%esi
lea    0x177f(%rip),%rdx
lea    0x1794(%rip),%rcx
mov    $0xa,%r9d
call   10c0 <test_int_eq@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1732(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x88(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x84(%rbp)
mov    -0x18(%rbp),%r8
lea    0x13f2(%rip),%rdi
mov    $0x15a,%esi
lea    0x1491(%rip),%rdx
lea    0x173d(%rip),%rcx
mov    $0x13f3b7ef,%r9d
call   1110 <test_BN_eq_word@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1731(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x84(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x80(%rbp)
mov    -0x18(%rbp),%r8
lea    0x139d(%rip),%rdi
mov    $0x15b,%esi
lea    0x143c(%rip),%rdx
lea    0x16e8(%rip),%rcx
mov    $0x13f3b7ef,%r9d
call   1080 <test_BN_abs_eq_word@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x16f7(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x80(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x7c(%rbp)
mov    -0x18(%rbp),%rcx
lea    0x1348(%rip),%rdi
mov    $0x15c,%esi
lea    0x13e7(%rip),%rdx
call   1090 <test_BN_eq_zero@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x16d4(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x7c(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x78(%rbp)
mov    -0x18(%rbp),%rcx
lea    0x1303(%rip),%rdi
mov    $0x15d,%esi
lea    0x13a2(%rip),%rdx
call   10a0 <test_BN_ne_zero@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x169f(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x78(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x74(%rbp)
mov    -0x18(%rbp),%rcx
lea    0x12bb(%rip),%rdi
mov    $0x15e,%esi
lea    0x135a(%rip),%rdx
call   1150 <test_BN_le_zero@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x166a(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x74(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x70(%rbp)
mov    -0x18(%rbp),%rcx
lea    0x1273(%rip),%rdi
mov    $0x15f,%esi
lea    0x1312(%rip),%rdx
call   1170 <test_BN_lt_zero@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1635(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x70(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x6c(%rbp)
mov    -0x18(%rbp),%rcx
lea    0x122b(%rip),%rdi
mov    $0x160,%esi
lea    0x12ca(%rip),%rdx
call   1030 <test_BN_ge_zero@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1603(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x6c(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x68(%rbp)
mov    -0x18(%rbp),%rcx
lea    0x11e6(%rip),%rdi
mov    $0x161,%esi
lea    0x1285(%rip),%rdx
call   1140 <test_BN_gt_zero@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x15d1(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x68(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x64(%rbp)
mov    -0x18(%rbp),%rcx
lea    0x11a1(%rip),%rdi
mov    $0x162,%esi
lea    0x1240(%rip),%rdx
call   1160 <test_BN_even@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x159f(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x64(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x60(%rbp)
mov    -0x18(%rbp),%rcx
lea    0x115c(%rip),%rdi
mov    $0x163,%esi
lea    0x11fb(%rip),%rdx
call   1130 <test_BN_odd@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1567(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x60(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x5c(%rbp)
mov    -0x8(%rbp),%r8
mov    -0x8(%rbp),%r9
lea    0x1110(%rip),%rdi
mov    $0x164,%esi
lea    0x11dc(%rip),%rcx
mov    %rcx,%rdx
call   10b0 <test_BN_eq@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1527(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x5c(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x58(%rbp)
mov    -0x8(%rbp),%r8
mov    -0x8(%rbp),%r9
lea    0x10c1(%rip),%rdi
mov    $0x165,%esi
lea    0x118d(%rip),%rcx
mov    %rcx,%rdx
call   10d0 <test_BN_ne@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x14ec(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x58(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x54(%rbp)
mov    -0x8(%rbp),%r8
mov    -0x10(%rbp),%r9
lea    0x1075(%rip),%rdi
mov    $0x166,%esi
lea    0x1141(%rip),%rdx
lea    0x1224(%rip),%rcx
call   10b0 <test_BN_eq@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1216(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x54(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x50(%rbp)
mov    -0x8(%rbp),%r8
mov    -0x10(%rbp),%r9
lea    0x1025(%rip),%rdi
mov    $0x167,%esi
lea    0x10f1(%rip),%rdx
lea    0x11d4(%rip),%rcx
call   10d0 <test_BN_ne@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x145a(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x50(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x4c(%rbp)
mov    -0x8(%rbp),%r8
mov    -0x18(%rbp),%r9
lea    0xfd2(%rip),%rdi
mov    $0x168,%esi
lea    0x109e(%rip),%rdx
lea    0x106a(%rip),%rcx
call   1060 <test_BN_lt@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x141b(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x4c(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x48(%rbp)
mov    -0x18(%rbp),%r8
mov    -0x10(%rbp),%r9
lea    0xf82(%rip),%rdi
mov    $0x169,%esi
lea    0x1021(%rip),%rdx
lea    0x1131(%rip),%rcx
call   1060 <test_BN_lt@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x13d9(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x48(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x44(%rbp)
mov    -0x10(%rbp),%r8
mov    -0x18(%rbp),%r9
lea    0xf2f(%rip),%rdi
mov    $0x16a,%esi
lea    0x10e5(%rip),%rdx
lea    0xfc7(%rip),%rcx
call   1060 <test_BN_lt@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x139a(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x44(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x40(%rbp)
mov    -0x8(%rbp),%r8
mov    -0x18(%rbp),%r9
lea    0xedf(%rip),%rdi
mov    $0x16b,%esi
lea    0xfab(%rip),%rdx
lea    0xf77(%rip),%rcx
call   1100 <test_BN_le@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x135b(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x40(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x3c(%rbp)
mov    -0x18(%rbp),%r8
mov    -0x10(%rbp),%r9
lea    0xe8f(%rip),%rdi
mov    $0x16c,%esi
lea    0xf2e(%rip),%rdx
lea    0x103e(%rip),%rcx
call   1100 <test_BN_le@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1319(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x3c(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x38(%rbp)
mov    -0x10(%rbp),%r8
mov    -0x18(%rbp),%r9
lea    0xe3c(%rip),%rdi
mov    $0x16d,%esi
lea    0xff2(%rip),%rdx
lea    0xed4(%rip),%rcx
call   1100 <test_BN_le@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x12da(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x38(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x34(%rbp)
mov    -0x8(%rbp),%r8
mov    -0x18(%rbp),%r9
lea    0xdec(%rip),%rdi
mov    $0x16e,%esi
lea    0xeb8(%rip),%rdx
lea    0xe84(%rip),%rcx
call   1070 <test_BN_gt@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1298(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x34(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x30(%rbp)
mov    -0x18(%rbp),%r8
mov    -0x10(%rbp),%r9
lea    0xd99(%rip),%rdi
mov    $0x16f,%esi
lea    0xe38(%rip),%rdx
lea    0xf48(%rip),%rcx
call   1070 <test_BN_gt@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1259(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x30(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x2c(%rbp)
mov    -0x10(%rbp),%r8
mov    -0x18(%rbp),%r9
lea    0xd49(%rip),%rdi
mov    $0x170,%esi
lea    0xeff(%rip),%rdx
lea    0xde1(%rip),%rcx
call   1070 <test_BN_gt@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1217(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x2c(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x28(%rbp)
mov    -0x8(%rbp),%r8
mov    -0x18(%rbp),%r9
lea    0xcf6(%rip),%rdi
mov    $0x171,%esi
lea    0xdc2(%rip),%rdx
lea    0xd8e(%rip),%rcx
call   10f0 <test_BN_ge@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x11d5(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x28(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x24(%rbp)
mov    -0x18(%rbp),%r8
mov    -0x10(%rbp),%r9
lea    0xca3(%rip),%rdi
mov    $0x172,%esi
lea    0xd42(%rip),%rdx
lea    0xe52(%rip),%rcx
call   10f0 <test_BN_ge@plt>
mov    %eax,%edx
xor    %edi,%edi
lea    0x1196(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x24(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
mov    %eax,-0x20(%rbp)
mov    -0x10(%rbp),%r8
mov    -0x18(%rbp),%r9
lea    0xc53(%rip),%rdi
mov    $0x173,%esi
lea    0xe09(%rip),%rdx
lea    0xceb(%rip),%rcx
call   10f0 <test_BN_ge@plt>
mov    %eax,%edx
mov    $0x1,%edi
lea    0x1154(%rip),%rsi
call   1120 <test_case@plt>
mov    %eax,%ecx
mov    -0x20(%rbp),%eax
cmp    $0x0,%ecx
setne  %cl
xor    $0xff,%cl
and    $0x1,%cl
movzbl %cl,%ecx
or     %ecx,%eax
cmp    $0x0,%eax
je     241f <test_bignum+0x11cf>
jmp    2426 <test_bignum+0x11d6>
movl   $0x1,-0x1c(%rbp)
mov    -0x8(%rbp),%rdi
call   10e0 <BN_free@plt>
mov    -0x10(%rbp),%rdi
call   10e0 <BN_free@plt>
mov    -0x18(%rbp),%rdi
call   10e0 <BN_free@plt>
mov    -0x1c(%rbp),%eax
add    $0x100,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<test_bignum>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x18,%rsp
movq   $0x0,0x10(%rsp)
movq   $0x0,0x8(%rsp)
movq   $0x0,(%rsp)
lea    0x10ff(%rip),%r12
lea    0x10(%rsp),%rdi
mov    %r12,%rsi
call   1050 <BN_dec2bn@plt>
lea    0xd90(%rip),%rbp
lea    0xe36(%rip),%rdx
lea    0xe42(%rip),%rcx
mov    %rbp,%rdi
mov    $0x13c,%esi
mov    %eax,%r8d
mov    $0x1,%r9d
call   10c0 <test_int_eq@plt>
lea    0xd42(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
mov    0x10(%rsp),%r8
lea    0xe20(%rip),%r13
mov    %rbp,%rdi
mov    $0x13d,%esi
mov    %r13,%rdx
mov    %r12,%rcx
xor    %r9d,%r9d
call   1110 <test_BN_eq_word@plt>
lea    0xded(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %bl,%r14b
mov    0x10(%rsp),%r8
lea    0xdfb(%rip),%rcx
mov    %rbp,%rdi
mov    $0x13e,%esi
mov    %r13,%rdx
mov    $0x1e,%r9d
call   1110 <test_BN_eq_word@plt>
lea    0xdc7(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r15b
mov    0x10(%rsp),%r8
mov    %rbp,%rdi
mov    $0x13f,%esi
mov    %r13,%rdx
mov    %r12,%rcx
xor    %r9d,%r9d
call   1080 <test_BN_abs_eq_word@plt>
lea    0xdb0(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r12b
and    %r15b,%r12b
and    %r14b,%r12b
mov    0x10(%rsp),%rcx
mov    %rbp,%rdi
mov    $0x140,%esi
mov    %r13,%rdx
call   1040 <test_BN_eq_one@plt>
lea    0xd96(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
mov    0x10(%rsp),%rcx
mov    %rbp,%rdi
mov    $0x141,%esi
mov    %r13,%rdx
call   1090 <test_BN_eq_zero@plt>
lea    0xd7d(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    0x10(%rsp),%rcx
mov    %rbp,%rdi
mov    $0x142,%esi
mov    %r13,%rdx
call   10a0 <test_BN_ne_zero@plt>
lea    0xd60(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r15b
and    %bl,%r15b
and    %r12b,%r15b
mov    0x10(%rsp),%rcx
mov    %rbp,%rdi
mov    $0x143,%esi
mov    %r13,%rdx
call   1150 <test_BN_le_zero@plt>
lea    0xd42(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
mov    0x10(%rsp),%rcx
mov    %rbp,%rdi
mov    $0x144,%esi
mov    %r13,%rdx
call   1170 <test_BN_lt_zero@plt>
lea    0xd27(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    0x10(%rsp),%rcx
mov    %rbp,%rdi
mov    $0x145,%esi
mov    %r13,%rdx
call   1030 <test_BN_ge_zero@plt>
lea    0xd0d(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r12b
and    %bl,%r12b
mov    0x10(%rsp),%rcx
mov    %rbp,%rdi
mov    $0x146,%esi
mov    %r13,%rdx
call   1140 <test_BN_gt_zero@plt>
lea    0xcef(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %r12b,%r14b
and    %r15b,%r14b
mov    0x10(%rsp),%rcx
mov    %rbp,%rdi
mov    $0x147,%esi
mov    %r13,%r15
mov    %r13,%rdx
call   1160 <test_BN_even@plt>
lea    0xcce(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r12b
mov    0x10(%rsp),%rcx
mov    %rbp,%rdi
mov    %rbp,%r13
mov    $0x148,%esi
mov    %r15,%rdx
call   1130 <test_BN_odd@plt>
lea    0xcad(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %r12b,%bpl
mov    0x8(%rsp),%r8
mov    (%rsp),%r9
lea    0xcab(%rip),%r12
lea    0xb8d(%rip),%rcx
mov    %r13,%rdi
mov    $0x149,%esi
mov    %r12,%rdx
call   10b0 <test_BN_eq@plt>
lea    0xc7c(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %bpl,%bl
mov    0x10(%rsp),%r8
mov    0x8(%rsp),%r9
mov    %r13,%rdi
mov    $0x14a,%esi
mov    %r15,%rdx
mov    %r12,%rcx
call   10b0 <test_BN_eq@plt>
lea    0xc57(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %bl,%bpl
mov    (%rsp),%r9
lea    0xc5f(%rip),%rdx
mov    %r13,%rdi
mov    $0x14b,%esi
lea    0xb12(%rip),%rcx
xor    %r8d,%r8d
call   10d0 <test_BN_ne@plt>
lea    0xc2d(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r15b
and    %bpl,%r15b
and    %r14b,%r15b
lea    0x8(%rsp),%rdi
lea    0xaf7(%rip),%rbx
mov    %rbx,%rsi
call   1050 <BN_dec2bn@plt>
lea    0xc39(%rip),%rdx
mov    %r13,%rdi
mov    $0x14c,%esi
mov    %rbx,%rcx
mov    %eax,%r8d
mov    $0x1,%r9d
call   10c0 <test_int_eq@plt>
lea    0xbf6(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
mov    0x8(%rsp),%r8
mov    %r13,%rdi
mov    $0x14d,%esi
mov    %r12,%rdx
mov    %rbx,%rcx
mov    $0x1,%r9d
call   1110 <test_BN_eq_word@plt>
lea    0xbf5(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %bpl,%bl
mov    0x8(%rsp),%rcx
mov    %r13,%rdi
mov    $0x14e,%esi
mov    %r12,%rdx
call   1040 <test_BN_eq_one@plt>
lea    0xbdb(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %bl,%bpl
mov    0x8(%rsp),%r8
mov    %r13,%rdi
mov    $0x14f,%esi
mov    %r12,%rdx
lea    0xcd0(%rip),%rcx
xor    %r9d,%r9d
call   1080 <test_BN_abs_eq_word@plt>
lea    0xbb2(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %bpl,%r14b
mov    0x8(%rsp),%r8
mov    %r13,%rdi
mov    $0x150,%esi
mov    %r12,%rdx
lea    0x9fd(%rip),%rcx
mov    $0x1,%r9d
call   1080 <test_BN_abs_eq_word@plt>
lea    0xb91(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    0x8(%rsp),%rcx
mov    %r13,%rdi
mov    $0x151,%esi
mov    %r12,%rdx
call   1090 <test_BN_eq_zero@plt>
lea    0xb7b(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %bl,%bpl
and    %r15b,%bpl
mov    0x8(%rsp),%rcx
mov    %r13,%rdi
mov    $0x152,%esi
mov    %r12,%rdx
call   10a0 <test_BN_ne_zero@plt>
lea    0xb5d(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
mov    0x8(%rsp),%rcx
mov    %r13,%rdi
mov    $0x153,%esi
mov    %r12,%rdx
call   1150 <test_BN_le_zero@plt>
lea    0xb42(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    0x8(%rsp),%rcx
mov    %r13,%rdi
mov    $0x154,%esi
mov    %r12,%rdx
call   1170 <test_BN_lt_zero@plt>
lea    0xb28(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %bl,%r14b
mov    0x8(%rsp),%rcx
mov    %r13,%rdi
mov    $0x155,%esi
mov    %r12,%rdx
call   1030 <test_BN_ge_zero@plt>
lea    0xb0d(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    0x8(%rsp),%rcx
mov    %r13,%rdi
mov    $0x156,%esi
mov    %r12,%rdx
call   1140 <test_BN_gt_zero@plt>
lea    0xaf0(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %bl,%r14b
mov    0x8(%rsp),%rcx
mov    %r13,%rdi
mov    $0x157,%esi
mov    %r12,%rdx
call   1160 <test_BN_even@plt>
lea    0xad2(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    0x8(%rsp),%rcx
mov    %r13,%rdi
mov    $0x158,%esi
mov    %r12,%rdx
call   1130 <test_BN_odd@plt>
lea    0xab5(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %bl,%r14b
and    %bpl,%r14b
lea    0xaf1(%rip),%rsi
mov    %rsp,%rdi
call   1050 <BN_dec2bn@plt>
lea    0xac3(%rip),%rdx
lea    0xad8(%rip),%rcx
mov    %r13,%rdi
mov    $0x159,%esi
mov    %eax,%r8d
mov    $0xa,%r9d
call   10c0 <test_int_eq@plt>
lea    0xa72(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r15b
mov    (%rsp),%r8
lea    0xaa2(%rip),%rbp
mov    %r13,%rdi
mov    $0x15a,%esi
lea    0x7e0(%rip),%rbx
mov    %rbx,%rdx
mov    %rbp,%rcx
mov    $0x13f3b7ef,%r9d
call   1110 <test_BN_eq_word@plt>
lea    0xa85(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r12b
and    %r15b,%r12b
mov    (%rsp),%r8
mov    %r13,%rdi
mov    $0x15b,%esi
mov    %rbx,%rdx
mov    %rbx,%r15
mov    %rbp,%rcx
mov    $0x13f3b7ef,%r9d
call   1080 <test_BN_abs_eq_word@plt>
lea    0xa6a(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r12b,%bl
mov    (%rsp),%rcx
mov    %r13,%rdi
mov    $0x15c,%esi
mov    %r15,%r12
mov    %r15,%rdx
call   1090 <test_BN_eq_zero@plt>
lea    0xa5a(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %bl,%bpl
mov    (%rsp),%rcx
mov    %r13,%rdi
mov    $0x15d,%esi
mov    %r15,%rdx
call   10a0 <test_BN_ne_zero@plt>
lea    0xa40(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %bpl,%bl
mov    (%rsp),%rcx
mov    %r13,%rdi
mov    $0x15e,%esi
mov    %r15,%rdx
call   1150 <test_BN_le_zero@plt>
lea    0xa24(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %bl,%bpl
mov    (%rsp),%rcx
mov    %r13,%rdi
mov    $0x15f,%esi
mov    %r15,%rdx
call   1170 <test_BN_lt_zero@plt>
lea    0xa07(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %bpl,%bl
mov    (%rsp),%rcx
mov    %r13,%rdi
mov    $0x160,%esi
mov    %r15,%rdx
call   1030 <test_BN_ge_zero@plt>
lea    0x9eb(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r15b
and    %bl,%r15b
and    %r14b,%r15b
mov    (%rsp),%rcx
mov    %r13,%rdi
mov    $0x161,%esi
mov    %r12,%rdx
call   1140 <test_BN_gt_zero@plt>
lea    0x9ce(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
mov    (%rsp),%rcx
mov    %r13,%rdi
mov    $0x162,%esi
mov    %r12,%rdx
call   1160 <test_BN_even@plt>
lea    0x9b7(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %bpl,%bl
mov    (%rsp),%rcx
mov    %r13,%rdi
mov    $0x163,%esi
mov    %r12,%rdx
call   1130 <test_BN_odd@plt>
lea    0x99b(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %bl,%bpl
mov    0x10(%rsp),%r8
mov    %r13,%rdi
mov    $0x164,%esi
lea    0x620(%rip),%rcx
mov    %rcx,%rdx
mov    %rcx,%r12
mov    %r8,%r9
call   10b0 <test_BN_eq@plt>
lea    0x96c(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %bpl,%bl
mov    0x10(%rsp),%r8
mov    %r13,%rdi
mov    $0x165,%esi
mov    %r12,%rdx
mov    %r12,%rcx
mov    %r8,%r9
call   10d0 <test_BN_ne@plt>
lea    0x947(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %bl,%bpl
mov    0x10(%rsp),%r8
mov    0x8(%rsp),%r9
mov    %r13,%rdi
mov    $0x166,%esi
mov    %r12,%rdx
lea    0x691(%rip),%r14
mov    %r14,%rcx
call   10b0 <test_BN_eq@plt>
xor    %edi,%edi
lea    0x682(%rip),%rsi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %bpl,%bl
mov    0x10(%rsp),%r8
mov    0x8(%rsp),%r9
mov    %r13,%rdi
mov    $0x167,%esi
mov    %r12,%rdx
mov    %r14,%rcx
call   10d0 <test_BN_ne@plt>
lea    0x8e6(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %bl,%bpl
mov    0x10(%rsp),%r8
mov    (%rsp),%r9
mov    %r13,%rdi
mov    $0x168,%esi
mov    %r12,%rdx
lea    0x506(%rip),%r12
mov    %r12,%rcx
call   1060 <test_BN_lt@plt>
lea    0x8b8(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %bpl,%bl
mov    (%rsp),%r8
mov    0x8(%rsp),%r9
mov    %r13,%rdi
mov    $0x169,%esi
mov    %r12,%rdx
mov    %r14,%rcx
call   1060 <test_BN_lt@plt>
lea    0x895(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bpl
and    %bl,%bpl
and    %r15b,%bpl
mov    0x8(%rsp),%r8
mov    (%rsp),%r9
mov    %r13,%rdi
mov    $0x16a,%esi
mov    %r14,%rdx
mov    %r14,%r15
mov    %r12,%rcx
call   1060 <test_BN_lt@plt>
lea    0x868(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
mov    0x10(%rsp),%r8
mov    (%rsp),%r9
mov    %r13,%rdi
mov    $0x16b,%esi
lea    0x48b(%rip),%rdx
mov    %r12,%rcx
call   1100 <test_BN_le@plt>
lea    0x843(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    (%rsp),%r8
mov    0x8(%rsp),%r9
mov    %r13,%rdi
mov    $0x16c,%esi
mov    %r12,%rdx
mov    %r15,%rcx
call   1100 <test_BN_le@plt>
lea    0x820(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %bl,%r14b
mov    0x8(%rsp),%r8
mov    (%rsp),%r9
mov    %r13,%rdi
mov    $0x16d,%esi
mov    %r15,%rdx
mov    %r12,%rcx
call   1100 <test_BN_le@plt>
lea    0x7f9(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    0x10(%rsp),%r8
mov    (%rsp),%r9
mov    %r13,%rdi
mov    $0x16e,%esi
lea    0x3e7(%rip),%rdx
mov    %r12,%rcx
call   1070 <test_BN_gt@plt>
lea    0x7d2(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %bl,%r14b
mov    (%rsp),%r8
mov    0x8(%rsp),%r9
mov    %r13,%rdi
mov    $0x16f,%esi
mov    %r12,%rdx
mov    %r15,%rcx
call   1070 <test_BN_gt@plt>
lea    0x7ab(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    0x8(%rsp),%r8
mov    (%rsp),%r9
mov    %r13,%rdi
mov    $0x170,%esi
mov    %r15,%rdx
mov    %r12,%rcx
call   1070 <test_BN_gt@plt>
lea    0x788(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %bl,%r14b
mov    0x10(%rsp),%r8
mov    (%rsp),%r9
mov    %r13,%rdi
mov    $0x171,%esi
lea    0x33f(%rip),%rdx
mov    %r12,%rcx
call   10f0 <test_BN_ge@plt>
lea    0x75d(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %bl
and    %r14b,%bl
mov    (%rsp),%r8
mov    0x8(%rsp),%r9
mov    %r13,%rdi
mov    $0x172,%esi
mov    %r12,%rdx
mov    %r15,%rcx
call   10f0 <test_BN_ge@plt>
lea    0x737(%rip),%rsi
xor    %edi,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %r14b
and    %bl,%r14b
mov    0x8(%rsp),%r8
mov    (%rsp),%r9
mov    %r13,%rdi
mov    $0x173,%esi
mov    %r15,%rdx
mov    %r12,%rcx
call   10f0 <test_BN_ge@plt>
lea    0x713(%rip),%rsi
mov    $0x1,%edi
mov    %eax,%edx
call   1120 <test_case@plt>
test   %eax,%eax
setne  %al
and    %r14b,%al
and    %bpl,%al
movzbl %al,%ebx
mov    0x10(%rsp),%rdi
call   10e0 <BN_free@plt>
mov    0x8(%rsp),%rdi
call   10e0 <BN_free@plt>
mov    (%rsp),%rdi
call   10e0 <BN_free@plt>
mov    %ebx,%eax
add    $0x18,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
@.str = [35 x i8] c"TEST_int_eq(BN_dec2bn(&a, \220\22), 1)\00"
@.str.1 = [173 x i8] c"/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/heads/master/Src/OSF/OpenSSL-111/test/test_test.c\00"
@.str.2 = [19 x i8] c"BN_dec2bn(&a, \220\22)\00"
@.str.3 = [2 x i8] c"1\00"
@.str.4 = [2 x i8] c"0\00"
@.str.5 = [22 x i8] c"TEST_BN_eq_word(a, 0)\00"
@.str.6 = [2 x i8] c"a\00"
@.str.7 = [23 x i8] c"TEST_BN_eq_word(a, 30)\00"
@.str.8 = [3 x i8] c"30\00"
@.str.9 = [26 x i8] c"TEST_BN_abs_eq_word(a, 0)\00"
@.str.10 = [18 x i8] c"TEST_BN_eq_one(a)\00"
@.str.11 = [19 x i8] c"TEST_BN_eq_zero(a)\00"
@.str.12 = [19 x i8] c"TEST_BN_ne_zero(a)\00"
@.str.13 = [19 x i8] c"TEST_BN_le_zero(a)\00"
@.str.14 = [19 x i8] c"TEST_BN_lt_zero(a)\00"
@.str.15 = [19 x i8] c"TEST_BN_ge_zero(a)\00"
@.str.16 = [19 x i8] c"TEST_BN_gt_zero(a)\00"
@.str.17 = [16 x i8] c"TEST_BN_even(a)\00"
@.str.18 = [15 x i8] c"TEST_BN_odd(a)\00"
@.str.19 = [17 x i8] c"TEST_BN_eq(b, c)\00"
@.str.20 = [2 x i8] c"b\00"
@.str.21 = [2 x i8] c"c\00"
@.str.22 = [17 x i8] c"TEST_BN_eq(a, b)\00"
@.str.23 = [20 x i8] c"TEST_BN_ne(NULL, c)\00"
@.str.24 = [5 x i8] c"NULL\00"
@.str.25 = [35 x i8] c"TEST_int_eq(BN_dec2bn(&b, \221\22), 1)\00"
@.str.26 = [19 x i8] c"BN_dec2bn(&b, \221\22)\00"
@.str.27 = [22 x i8] c"TEST_BN_eq_word(b, 1)\00"
@.str.28 = [18 x i8] c"TEST_BN_eq_one(b)\00"
@.str.29 = [26 x i8] c"TEST_BN_abs_eq_word(b, 0)\00"
@.str.30 = [26 x i8] c"TEST_BN_abs_eq_word(b, 1)\00"
@.str.31 = [19 x i8] c"TEST_BN_eq_zero(b)\00"
@.str.32 = [19 x i8] c"TEST_BN_ne_zero(b)\00"
@.str.33 = [19 x i8] c"TEST_BN_le_zero(b)\00"
@.str.34 = [19 x i8] c"TEST_BN_lt_zero(b)\00"
@.str.35 = [19 x i8] c"TEST_BN_ge_zero(b)\00"
@.str.36 = [19 x i8] c"TEST_BN_gt_zero(b)\00"
@.str.37 = [16 x i8] c"TEST_BN_even(b)\00"
@.str.38 = [15 x i8] c"TEST_BN_odd(b)\00"
@.str.39 = [45 x i8] c"TEST_int_eq(BN_dec2bn(&c, \22-334739439\22), 10)\00"
@.str.40 = [28 x i8] c"BN_dec2bn(&c, \22-334739439\22)\00"
@.str.41 = [3 x i8] c"10\00"
@.str.42 = [11 x i8] c"-334739439\00"
@.str.43 = [30 x i8] c"TEST_BN_eq_word(c, 334739439)\00"
@.str.44 = [10 x i8] c"334739439\00"
@.str.45 = [34 x i8] c"TEST_BN_abs_eq_word(c, 334739439)\00"
@.str.46 = [19 x i8] c"TEST_BN_eq_zero(c)\00"
@.str.47 = [19 x i8] c"TEST_BN_ne_zero(c)\00"
@.str.48 = [19 x i8] c"TEST_BN_le_zero(c)\00"
@.str.49 = [19 x i8] c"TEST_BN_lt_zero(c)\00"
@.str.50 = [19 x i8] c"TEST_BN_ge_zero(c)\00"
@.str.51 = [19 x i8] c"TEST_BN_gt_zero(c)\00"
@.str.52 = [16 x i8] c"TEST_BN_even(c)\00"
@.str.53 = [15 x i8] c"TEST_BN_odd(c)\00"
@.str.54 = [17 x i8] c"TEST_BN_eq(a, a)\00"
@.str.55 = [17 x i8] c"TEST_BN_ne(a, a)\00"
@.str.56 = [17 x i8] c"TEST_BN_ne(a, b)\00"
@.str.57 = [17 x i8] c"TEST_BN_lt(a, c)\00"
@.str.58 = [17 x i8] c"TEST_BN_lt(c, b)\00"
@.str.59 = [17 x i8] c"TEST_BN_lt(b, c)\00"
@.str.60 = [17 x i8] c"TEST_BN_le(a, c)\00"
@.str.61 = [17 x i8] c"TEST_BN_le(c, b)\00"
@.str.62 = [17 x i8] c"TEST_BN_le(b, c)\00"
@.str.63 = [17 x i8] c"TEST_BN_gt(a, c)\00"
@.str.64 = [17 x i8] c"TEST_BN_gt(c, b)\00"
@.str.65 = [17 x i8] c"TEST_BN_gt(b, c)\00"
@.str.66 = [17 x i8] c"TEST_BN_ge(a, c)\00"
@.str.67 = [17 x i8] c"TEST_BN_ge(c, b)\00"
@.str.68 = [17 x i8] c"TEST_BN_ge(b, c)\00"
define i32 @test_bignum() {
%1 = alloca i32*
%2 = alloca i32*
%3 = alloca i32*
%4 = alloca i32
store i32* null, i32** %1
store i32* null, i32** %2
store i32* null, i32** %3
store i32 0, i32* %4
%5 = call i32 @BN_dec2bn(i32** %1, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0))
%6 = call i32 @test_int_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 316, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 %5, i32 1)
%7 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str, i64 0, i64 0), i32 %6)
%8 = icmp ne i32 %7, 0
%9 = xor i1 %8, true
%10 = zext i1 %9 to i32
%11 = load i32*, i32** %1
%12 = call i32 @test_BN_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 317, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32* %11, i32 0)
%13 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.5, i64 0, i64 0), i32 %12)
%14 = icmp ne i32 %13, 0
%15 = xor i1 %14, true
%16 = zext i1 %15 to i32
%17 = or i32 %10, %16
%18 = load i32*, i32** %1
%19 = call i32 @test_BN_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 318, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.8, i64 0, i64 0), i32* %18, i32 30)
%20 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.7, i64 0, i64 0), i32 %19)
%21 = icmp ne i32 %20, 0
%22 = xor i1 %21, true
%23 = zext i1 %22 to i32
%24 = or i32 %17, %23
%25 = load i32*, i32** %1
%26 = call i32 @test_BN_abs_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 319, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32* %25, i32 0)
%27 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.9, i64 0, i64 0), i32 %26)
%28 = icmp ne i32 %27, 0
%29 = xor i1 %28, true
%30 = zext i1 %29 to i32
%31 = or i32 %24, %30
%32 = load i32*, i32** %1
%33 = call i32 @test_BN_eq_one(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 320, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %32)
%34 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.10, i64 0, i64 0), i32 %33)
%35 = icmp ne i32 %34, 0
%36 = xor i1 %35, true
%37 = zext i1 %36 to i32
%38 = or i32 %31, %37
%39 = load i32*, i32** %1
%40 = call i32 @test_BN_eq_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 321, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %39)
%41 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.11, i64 0, i64 0), i32 %40)
%42 = icmp ne i32 %41, 0
%43 = xor i1 %42, true
%44 = zext i1 %43 to i32
%45 = or i32 %38, %44
%46 = load i32*, i32** %1
%47 = call i32 @test_BN_ne_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 322, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %46)
%48 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.12, i64 0, i64 0), i32 %47)
%49 = icmp ne i32 %48, 0
%50 = xor i1 %49, true
%51 = zext i1 %50 to i32
%52 = or i32 %45, %51
%53 = load i32*, i32** %1
%54 = call i32 @test_BN_le_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 323, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %53)
%55 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.13, i64 0, i64 0), i32 %54)
%56 = icmp ne i32 %55, 0
%57 = xor i1 %56, true
%58 = zext i1 %57 to i32
%59 = or i32 %52, %58
%60 = load i32*, i32** %1
%61 = call i32 @test_BN_lt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 324, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %60)
%62 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.14, i64 0, i64 0), i32 %61)
%63 = icmp ne i32 %62, 0
%64 = xor i1 %63, true
%65 = zext i1 %64 to i32
%66 = or i32 %59, %65
%67 = load i32*, i32** %1
%68 = call i32 @test_BN_ge_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 325, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %67)
%69 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.15, i64 0, i64 0), i32 %68)
%70 = icmp ne i32 %69, 0
%71 = xor i1 %70, true
%72 = zext i1 %71 to i32
%73 = or i32 %66, %72
%74 = load i32*, i32** %1
%75 = call i32 @test_BN_gt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 326, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %74)
%76 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.16, i64 0, i64 0), i32 %75)
%77 = icmp ne i32 %76, 0
%78 = xor i1 %77, true
%79 = zext i1 %78 to i32
%80 = or i32 %73, %79
%81 = load i32*, i32** %1
%82 = call i32 @test_BN_even(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 327, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %81)
%83 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.17, i64 0, i64 0), i32 %82)
%84 = icmp ne i32 %83, 0
%85 = xor i1 %84, true
%86 = zext i1 %85 to i32
%87 = or i32 %80, %86
%88 = load i32*, i32** %1
%89 = call i32 @test_BN_odd(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 328, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %88)
%90 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.18, i64 0, i64 0), i32 %89)
%91 = icmp ne i32 %90, 0
%92 = xor i1 %91, true
%93 = zext i1 %92 to i32
%94 = or i32 %87, %93
%95 = load i32*, i32** %2
%96 = load i32*, i32** %3
%97 = call i32 @test_BN_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 329, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %95, i32* %96)
%98 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.19, i64 0, i64 0), i32 %97)
%99 = icmp ne i32 %98, 0
%100 = xor i1 %99, true
%101 = zext i1 %100 to i32
%102 = or i32 %94, %101
%103 = load i32*, i32** %1
%104 = load i32*, i32** %2
%105 = call i32 @test_BN_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 330, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %103, i32* %104)
%106 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.22, i64 0, i64 0), i32 %105)
%107 = icmp ne i32 %106, 0
%108 = xor i1 %107, true
%109 = zext i1 %108 to i32
%110 = or i32 %102, %109
%111 = load i32*, i32** %3
%112 = call i32 @test_BN_ne(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 331, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.24, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* null, i32* %111)
%113 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.23, i64 0, i64 0), i32 %112)
%114 = icmp ne i32 %113, 0
%115 = xor i1 %114, true
%116 = zext i1 %115 to i32
%117 = or i32 %110, %116
%118 = call i32 @BN_dec2bn(i32** %2, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0))
%119 = call i32 @test_int_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 332, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.26, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 %118, i32 1)
%120 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.25, i64 0, i64 0), i32 %119)
%121 = icmp ne i32 %120, 0
%122 = xor i1 %121, true
%123 = zext i1 %122 to i32
%124 = or i32 %117, %123
%125 = load i32*, i32** %2
%126 = call i32 @test_BN_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 333, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32* %125, i32 1)
%127 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.27, i64 0, i64 0), i32 %126)
%128 = icmp ne i32 %127, 0
%129 = xor i1 %128, true
%130 = zext i1 %129 to i32
%131 = or i32 %124, %130
%132 = load i32*, i32** %2
%133 = call i32 @test_BN_eq_one(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 334, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %132)
%134 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.28, i64 0, i64 0), i32 %133)
%135 = icmp ne i32 %134, 0
%136 = xor i1 %135, true
%137 = zext i1 %136 to i32
%138 = or i32 %131, %137
%139 = load i32*, i32** %2
%140 = call i32 @test_BN_abs_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 335, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32* %139, i32 0)
%141 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.29, i64 0, i64 0), i32 %140)
%142 = icmp ne i32 %141, 0
%143 = xor i1 %142, true
%144 = zext i1 %143 to i32
%145 = or i32 %138, %144
%146 = load i32*, i32** %2
%147 = call i32 @test_BN_abs_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 336, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32* %146, i32 1)
%148 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.30, i64 0, i64 0), i32 %147)
%149 = icmp ne i32 %148, 0
%150 = xor i1 %149, true
%151 = zext i1 %150 to i32
%152 = or i32 %145, %151
%153 = load i32*, i32** %2
%154 = call i32 @test_BN_eq_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 337, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %153)
%155 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.31, i64 0, i64 0), i32 %154)
%156 = icmp ne i32 %155, 0
%157 = xor i1 %156, true
%158 = zext i1 %157 to i32
%159 = or i32 %152, %158
%160 = load i32*, i32** %2
%161 = call i32 @test_BN_ne_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 338, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %160)
%162 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.32, i64 0, i64 0), i32 %161)
%163 = icmp ne i32 %162, 0
%164 = xor i1 %163, true
%165 = zext i1 %164 to i32
%166 = or i32 %159, %165
%167 = load i32*, i32** %2
%168 = call i32 @test_BN_le_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 339, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %167)
%169 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.33, i64 0, i64 0), i32 %168)
%170 = icmp ne i32 %169, 0
%171 = xor i1 %170, true
%172 = zext i1 %171 to i32
%173 = or i32 %166, %172
%174 = load i32*, i32** %2
%175 = call i32 @test_BN_lt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 340, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %174)
%176 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.34, i64 0, i64 0), i32 %175)
%177 = icmp ne i32 %176, 0
%178 = xor i1 %177, true
%179 = zext i1 %178 to i32
%180 = or i32 %173, %179
%181 = load i32*, i32** %2
%182 = call i32 @test_BN_ge_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 341, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %181)
%183 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.35, i64 0, i64 0), i32 %182)
%184 = icmp ne i32 %183, 0
%185 = xor i1 %184, true
%186 = zext i1 %185 to i32
%187 = or i32 %180, %186
%188 = load i32*, i32** %2
%189 = call i32 @test_BN_gt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 342, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %188)
%190 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.36, i64 0, i64 0), i32 %189)
%191 = icmp ne i32 %190, 0
%192 = xor i1 %191, true
%193 = zext i1 %192 to i32
%194 = or i32 %187, %193
%195 = load i32*, i32** %2
%196 = call i32 @test_BN_even(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 343, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %195)
%197 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.37, i64 0, i64 0), i32 %196)
%198 = icmp ne i32 %197, 0
%199 = xor i1 %198, true
%200 = zext i1 %199 to i32
%201 = or i32 %194, %200
%202 = load i32*, i32** %2
%203 = call i32 @test_BN_odd(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 344, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %202)
%204 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.38, i64 0, i64 0), i32 %203)
%205 = icmp ne i32 %204, 0
%206 = xor i1 %205, true
%207 = zext i1 %206 to i32
%208 = or i32 %201, %207
%209 = call i32 @BN_dec2bn(i32** %3, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.42, i64 0, i64 0))
%210 = call i32 @test_int_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 345, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.40, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.41, i64 0, i64 0), i32 %209, i32 10)
%211 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([45 x i8], [45 x i8]* @.str.39, i64 0, i64 0), i32 %210)
%212 = icmp ne i32 %211, 0
%213 = xor i1 %212, true
%214 = zext i1 %213 to i32
%215 = or i32 %208, %214
%216 = load i32*, i32** %3
%217 = call i32 @test_BN_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 346, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.44, i64 0, i64 0), i32* %216, i32 334739439)
%218 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.43, i64 0, i64 0), i32 %217)
%219 = icmp ne i32 %218, 0
%220 = xor i1 %219, true
%221 = zext i1 %220 to i32
%222 = or i32 %215, %221
%223 = load i32*, i32** %3
%224 = call i32 @test_BN_abs_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 347, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.44, i64 0, i64 0), i32* %223, i32 334739439)
%225 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.45, i64 0, i64 0), i32 %224)
%226 = icmp ne i32 %225, 0
%227 = xor i1 %226, true
%228 = zext i1 %227 to i32
%229 = or i32 %222, %228
%230 = load i32*, i32** %3
%231 = call i32 @test_BN_eq_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 348, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %230)
%232 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.46, i64 0, i64 0), i32 %231)
%233 = icmp ne i32 %232, 0
%234 = xor i1 %233, true
%235 = zext i1 %234 to i32
%236 = or i32 %229, %235
%237 = load i32*, i32** %3
%238 = call i32 @test_BN_ne_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 349, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %237)
%239 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.47, i64 0, i64 0), i32 %238)
%240 = icmp ne i32 %239, 0
%241 = xor i1 %240, true
%242 = zext i1 %241 to i32
%243 = or i32 %236, %242
%244 = load i32*, i32** %3
%245 = call i32 @test_BN_le_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 350, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %244)
%246 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.48, i64 0, i64 0), i32 %245)
%247 = icmp ne i32 %246, 0
%248 = xor i1 %247, true
%249 = zext i1 %248 to i32
%250 = or i32 %243, %249
%251 = load i32*, i32** %3
%252 = call i32 @test_BN_lt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 351, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %251)
%253 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.49, i64 0, i64 0), i32 %252)
%254 = icmp ne i32 %253, 0
%255 = xor i1 %254, true
%256 = zext i1 %255 to i32
%257 = or i32 %250, %256
%258 = load i32*, i32** %3
%259 = call i32 @test_BN_ge_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 352, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %258)
%260 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.50, i64 0, i64 0), i32 %259)
%261 = icmp ne i32 %260, 0
%262 = xor i1 %261, true
%263 = zext i1 %262 to i32
%264 = or i32 %257, %263
%265 = load i32*, i32** %3
%266 = call i32 @test_BN_gt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 353, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %265)
%267 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.51, i64 0, i64 0), i32 %266)
%268 = icmp ne i32 %267, 0
%269 = xor i1 %268, true
%270 = zext i1 %269 to i32
%271 = or i32 %264, %270
%272 = load i32*, i32** %3
%273 = call i32 @test_BN_even(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 354, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %272)
%274 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.52, i64 0, i64 0), i32 %273)
%275 = icmp ne i32 %274, 0
%276 = xor i1 %275, true
%277 = zext i1 %276 to i32
%278 = or i32 %271, %277
%279 = load i32*, i32** %3
%280 = call i32 @test_BN_odd(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 355, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %279)
%281 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.53, i64 0, i64 0), i32 %280)
%282 = icmp ne i32 %281, 0
%283 = xor i1 %282, true
%284 = zext i1 %283 to i32
%285 = or i32 %278, %284
%286 = load i32*, i32** %1
%287 = load i32*, i32** %1
%288 = call i32 @test_BN_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 356, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %286, i32* %287)
%289 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.54, i64 0, i64 0), i32 %288)
%290 = icmp ne i32 %289, 0
%291 = xor i1 %290, true
%292 = zext i1 %291 to i32
%293 = or i32 %285, %292
%294 = load i32*, i32** %1
%295 = load i32*, i32** %1
%296 = call i32 @test_BN_ne(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 357, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %294, i32* %295)
%297 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.55, i64 0, i64 0), i32 %296)
%298 = icmp ne i32 %297, 0
%299 = xor i1 %298, true
%300 = zext i1 %299 to i32
%301 = or i32 %293, %300
%302 = load i32*, i32** %1
%303 = load i32*, i32** %2
%304 = call i32 @test_BN_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 358, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %302, i32* %303)
%305 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.22, i64 0, i64 0), i32 %304)
%306 = icmp ne i32 %305, 0
%307 = xor i1 %306, true
%308 = zext i1 %307 to i32
%309 = or i32 %301, %308
%310 = load i32*, i32** %1
%311 = load i32*, i32** %2
%312 = call i32 @test_BN_ne(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 359, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %310, i32* %311)
%313 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.56, i64 0, i64 0), i32 %312)
%314 = icmp ne i32 %313, 0
%315 = xor i1 %314, true
%316 = zext i1 %315 to i32
%317 = or i32 %309, %316
%318 = load i32*, i32** %1
%319 = load i32*, i32** %3
%320 = call i32 @test_BN_lt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 360, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %318, i32* %319)
%321 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.57, i64 0, i64 0), i32 %320)
%322 = icmp ne i32 %321, 0
%323 = xor i1 %322, true
%324 = zext i1 %323 to i32
%325 = or i32 %317, %324
%326 = load i32*, i32** %3
%327 = load i32*, i32** %2
%328 = call i32 @test_BN_lt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 361, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %326, i32* %327)
%329 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.58, i64 0, i64 0), i32 %328)
%330 = icmp ne i32 %329, 0
%331 = xor i1 %330, true
%332 = zext i1 %331 to i32
%333 = or i32 %325, %332
%334 = load i32*, i32** %2
%335 = load i32*, i32** %3
%336 = call i32 @test_BN_lt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 362, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %334, i32* %335)
%337 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.59, i64 0, i64 0), i32 %336)
%338 = icmp ne i32 %337, 0
%339 = xor i1 %338, true
%340 = zext i1 %339 to i32
%341 = or i32 %333, %340
%342 = load i32*, i32** %1
%343 = load i32*, i32** %3
%344 = call i32 @test_BN_le(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 363, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %342, i32* %343)
%345 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.60, i64 0, i64 0), i32 %344)
%346 = icmp ne i32 %345, 0
%347 = xor i1 %346, true
%348 = zext i1 %347 to i32
%349 = or i32 %341, %348
%350 = load i32*, i32** %3
%351 = load i32*, i32** %2
%352 = call i32 @test_BN_le(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 364, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %350, i32* %351)
%353 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.61, i64 0, i64 0), i32 %352)
%354 = icmp ne i32 %353, 0
%355 = xor i1 %354, true
%356 = zext i1 %355 to i32
%357 = or i32 %349, %356
%358 = load i32*, i32** %2
%359 = load i32*, i32** %3
%360 = call i32 @test_BN_le(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 365, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %358, i32* %359)
%361 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.62, i64 0, i64 0), i32 %360)
%362 = icmp ne i32 %361, 0
%363 = xor i1 %362, true
%364 = zext i1 %363 to i32
%365 = or i32 %357, %364
%366 = load i32*, i32** %1
%367 = load i32*, i32** %3
%368 = call i32 @test_BN_gt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 366, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %366, i32* %367)
%369 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.63, i64 0, i64 0), i32 %368)
%370 = icmp ne i32 %369, 0
%371 = xor i1 %370, true
%372 = zext i1 %371 to i32
%373 = or i32 %365, %372
%374 = load i32*, i32** %3
%375 = load i32*, i32** %2
%376 = call i32 @test_BN_gt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 367, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %374, i32* %375)
%377 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.64, i64 0, i64 0), i32 %376)
%378 = icmp ne i32 %377, 0
%379 = xor i1 %378, true
%380 = zext i1 %379 to i32
%381 = or i32 %373, %380
%382 = load i32*, i32** %2
%383 = load i32*, i32** %3
%384 = call i32 @test_BN_gt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 368, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %382, i32* %383)
%385 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.65, i64 0, i64 0), i32 %384)
%386 = icmp ne i32 %385, 0
%387 = xor i1 %386, true
%388 = zext i1 %387 to i32
%389 = or i32 %381, %388
%390 = load i32*, i32** %1
%391 = load i32*, i32** %3
%392 = call i32 @test_BN_ge(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 369, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %390, i32* %391)
%393 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.66, i64 0, i64 0), i32 %392)
%394 = icmp ne i32 %393, 0
%395 = xor i1 %394, true
%396 = zext i1 %395 to i32
%397 = or i32 %389, %396
%398 = load i32*, i32** %3
%399 = load i32*, i32** %2
%400 = call i32 @test_BN_ge(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 370, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %398, i32* %399)
%401 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.67, i64 0, i64 0), i32 %400)
%402 = icmp ne i32 %401, 0
%403 = xor i1 %402, true
%404 = zext i1 %403 to i32
%405 = or i32 %397, %404
%406 = load i32*, i32** %2
%407 = load i32*, i32** %3
%408 = call i32 @test_BN_ge(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 371, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %406, i32* %407)
%409 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.68, i64 0, i64 0), i32 %408)
%410 = icmp ne i32 %409, 0
%411 = xor i1 %410, true
%412 = zext i1 %411 to i32
%413 = or i32 %405, %412
%414 = icmp ne i32 %413, 0
br i1 %414, label %415, label %416
415: ; preds = %0
br label %417
416: ; preds = %0
store i32 1, i32* %4
br label %417
417: ; preds = %416, %415
%418 = load i32*, i32** %1
%419 = call i32 @BN_free(i32* %418)
%420 = load i32*, i32** %2
%421 = call i32 @BN_free(i32* %420)
%422 = load i32*, i32** %3
%423 = call i32 @BN_free(i32* %422)
%424 = load i32, i32* %4
ret i32 %424
}

LLVM IR (-O2):
@.str = [35 x i8] c"TEST_int_eq(BN_dec2bn(&a, \220\22), 1)\00"
@.str.1 = [173 x i8] c"/scratch/repos/new/home/jordi_armengol_estape/c-scraper/outputs/2022-01-22/02-19-57/repos/papyrussolution/OpenPapyrus/refs/heads/master/Src/OSF/OpenSSL-111/test/test_test.c\00"
@.str.2 = [19 x i8] c"BN_dec2bn(&a, \220\22)\00"
@.str.3 = [2 x i8] c"1\00"
@.str.4 = [2 x i8] c"0\00"
@.str.5 = [22 x i8] c"TEST_BN_eq_word(a, 0)\00"
@.str.6 = [2 x i8] c"a\00"
@.str.7 = [23 x i8] c"TEST_BN_eq_word(a, 30)\00"
@.str.8 = [3 x i8] c"30\00"
@.str.9 = [26 x i8] c"TEST_BN_abs_eq_word(a, 0)\00"
@.str.10 = [18 x i8] c"TEST_BN_eq_one(a)\00"
@.str.11 = [19 x i8] c"TEST_BN_eq_zero(a)\00"
@.str.12 = [19 x i8] c"TEST_BN_ne_zero(a)\00"
@.str.13 = [19 x i8] c"TEST_BN_le_zero(a)\00"
@.str.14 = [19 x i8] c"TEST_BN_lt_zero(a)\00"
@.str.15 = [19 x i8] c"TEST_BN_ge_zero(a)\00"
@.str.16 = [19 x i8] c"TEST_BN_gt_zero(a)\00"
@.str.17 = [16 x i8] c"TEST_BN_even(a)\00"
@.str.18 = [15 x i8] c"TEST_BN_odd(a)\00"
@.str.19 = [17 x i8] c"TEST_BN_eq(b, c)\00"
@.str.20 = [2 x i8] c"b\00"
@.str.21 = [2 x i8] c"c\00"
@.str.22 = [17 x i8] c"TEST_BN_eq(a, b)\00"
@.str.23 = [20 x i8] c"TEST_BN_ne(NULL, c)\00"
@.str.24 = [5 x i8] c"NULL\00"
@.str.25 = [35 x i8] c"TEST_int_eq(BN_dec2bn(&b, \221\22), 1)\00"
@.str.26 = [19 x i8] c"BN_dec2bn(&b, \221\22)\00"
@.str.27 = [22 x i8] c"TEST_BN_eq_word(b, 1)\00"
@.str.28 = [18 x i8] c"TEST_BN_eq_one(b)\00"
@.str.29 = [26 x i8] c"TEST_BN_abs_eq_word(b, 0)\00"
@.str.30 = [26 x i8] c"TEST_BN_abs_eq_word(b, 1)\00"
@.str.31 = [19 x i8] c"TEST_BN_eq_zero(b)\00"
@.str.32 = [19 x i8] c"TEST_BN_ne_zero(b)\00"
@.str.33 = [19 x i8] c"TEST_BN_le_zero(b)\00"
@.str.34 = [19 x i8] c"TEST_BN_lt_zero(b)\00"
@.str.35 = [19 x i8] c"TEST_BN_ge_zero(b)\00"
@.str.36 = [19 x i8] c"TEST_BN_gt_zero(b)\00"
@.str.37 = [16 x i8] c"TEST_BN_even(b)\00"
@.str.38 = [15 x i8] c"TEST_BN_odd(b)\00"
@.str.39 = [45 x i8] c"TEST_int_eq(BN_dec2bn(&c, \22-334739439\22), 10)\00"
@.str.40 = [28 x i8] c"BN_dec2bn(&c, \22-334739439\22)\00"
@.str.41 = [3 x i8] c"10\00"
@.str.42 = [11 x i8] c"-334739439\00"
@.str.43 = [30 x i8] c"TEST_BN_eq_word(c, 334739439)\00"
@.str.44 = [10 x i8] c"334739439\00"
@.str.45 = [34 x i8] c"TEST_BN_abs_eq_word(c, 334739439)\00"
@.str.46 = [19 x i8] c"TEST_BN_eq_zero(c)\00"
@.str.47 = [19 x i8] c"TEST_BN_ne_zero(c)\00"
@.str.48 = [19 x i8] c"TEST_BN_le_zero(c)\00"
@.str.49 = [19 x i8] c"TEST_BN_lt_zero(c)\00"
@.str.50 = [19 x i8] c"TEST_BN_ge_zero(c)\00"
@.str.51 = [19 x i8] c"TEST_BN_gt_zero(c)\00"
@.str.52 = [16 x i8] c"TEST_BN_even(c)\00"
@.str.53 = [15 x i8] c"TEST_BN_odd(c)\00"
@.str.54 = [17 x i8] c"TEST_BN_eq(a, a)\00"
@.str.55 = [17 x i8] c"TEST_BN_ne(a, a)\00"
@.str.56 = [17 x i8] c"TEST_BN_ne(a, b)\00"
@.str.57 = [17 x i8] c"TEST_BN_lt(a, c)\00"
@.str.58 = [17 x i8] c"TEST_BN_lt(c, b)\00"
@.str.59 = [17 x i8] c"TEST_BN_lt(b, c)\00"
@.str.60 = [17 x i8] c"TEST_BN_le(a, c)\00"
@.str.61 = [17 x i8] c"TEST_BN_le(c, b)\00"
@.str.62 = [17 x i8] c"TEST_BN_le(b, c)\00"
@.str.63 = [17 x i8] c"TEST_BN_gt(a, c)\00"
@.str.64 = [17 x i8] c"TEST_BN_gt(c, b)\00"
@.str.65 = [17 x i8] c"TEST_BN_gt(b, c)\00"
@.str.66 = [17 x i8] c"TEST_BN_ge(a, c)\00"
@.str.67 = [17 x i8] c"TEST_BN_ge(c, b)\00"
@.str.68 = [17 x i8] c"TEST_BN_ge(b, c)\00"
define i32 @test_bignum() {
%1 = alloca i32*
%2 = alloca i32*
%3 = alloca i32*
%4 = bitcast i32** %1 to i8*
store i32* null, i32** %1
%5 = bitcast i32** %2 to i8*
store i32* null, i32** %2
%6 = bitcast i32** %3 to i8*
store i32* null, i32** %3
%7 = call i32 @BN_dec2bn(i32** %1, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0))
%8 = call i32 @test_int_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 316, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 %7, i32 1)
%9 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str, i64 0, i64 0), i32 %8)
%10 = icmp eq i32 %9, 0
%11 = load i32*, i32** %1
%12 = call i32 @test_BN_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 317, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32* %11, i32 0)
%13 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.5, i64 0, i64 0), i32 %12)
%14 = icmp eq i32 %13, 0
%15 = or i1 %10, %14
%16 = load i32*, i32** %1
%17 = call i32 @test_BN_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 318, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.8, i64 0, i64 0), i32* %16, i32 30)
%18 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.7, i64 0, i64 0), i32 %17)
%19 = icmp eq i32 %18, 0
%20 = or i1 %15, %19
%21 = load i32*, i32** %1
%22 = call i32 @test_BN_abs_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 319, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32* %21, i32 0)
%23 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.9, i64 0, i64 0), i32 %22)
%24 = icmp eq i32 %23, 0
%25 = or i1 %20, %24
%26 = load i32*, i32** %1
%27 = call i32 @test_BN_eq_one(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 320, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %26)
%28 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.10, i64 0, i64 0), i32 %27)
%29 = icmp eq i32 %28, 0
%30 = or i1 %25, %29
%31 = load i32*, i32** %1
%32 = call i32 @test_BN_eq_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 321, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %31)
%33 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.11, i64 0, i64 0), i32 %32)
%34 = icmp eq i32 %33, 0
%35 = or i1 %30, %34
%36 = load i32*, i32** %1
%37 = call i32 @test_BN_ne_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 322, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %36)
%38 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.12, i64 0, i64 0), i32 %37)
%39 = icmp eq i32 %38, 0
%40 = or i1 %35, %39
%41 = load i32*, i32** %1
%42 = call i32 @test_BN_le_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 323, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %41)
%43 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.13, i64 0, i64 0), i32 %42)
%44 = icmp eq i32 %43, 0
%45 = or i1 %40, %44
%46 = load i32*, i32** %1
%47 = call i32 @test_BN_lt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 324, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %46)
%48 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.14, i64 0, i64 0), i32 %47)
%49 = icmp eq i32 %48, 0
%50 = or i1 %45, %49
%51 = load i32*, i32** %1
%52 = call i32 @test_BN_ge_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 325, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %51)
%53 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.15, i64 0, i64 0), i32 %52)
%54 = icmp eq i32 %53, 0
%55 = or i1 %50, %54
%56 = load i32*, i32** %1
%57 = call i32 @test_BN_gt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 326, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %56)
%58 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.16, i64 0, i64 0), i32 %57)
%59 = icmp eq i32 %58, 0
%60 = or i1 %55, %59
%61 = load i32*, i32** %1
%62 = call i32 @test_BN_even(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 327, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %61)
%63 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.17, i64 0, i64 0), i32 %62)
%64 = icmp eq i32 %63, 0
%65 = or i1 %60, %64
%66 = load i32*, i32** %1
%67 = call i32 @test_BN_odd(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 328, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %66)
%68 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.18, i64 0, i64 0), i32 %67)
%69 = icmp eq i32 %68, 0
%70 = or i1 %65, %69
%71 = load i32*, i32** %2
%72 = load i32*, i32** %3
%73 = call i32 @test_BN_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 329, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %71, i32* %72)
%74 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.19, i64 0, i64 0), i32 %73)
%75 = icmp eq i32 %74, 0
%76 = or i1 %70, %75
%77 = load i32*, i32** %1
%78 = load i32*, i32** %2
%79 = call i32 @test_BN_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 330, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %77, i32* %78)
%80 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.22, i64 0, i64 0), i32 %79)
%81 = icmp eq i32 %80, 0
%82 = or i1 %76, %81
%83 = load i32*, i32** %3
%84 = call i32 @test_BN_ne(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 331, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.24, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* null, i32* %83)
%85 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.23, i64 0, i64 0), i32 %84)
%86 = icmp eq i32 %85, 0
%87 = or i1 %82, %86
%88 = call i32 @BN_dec2bn(i32** %2, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0))
%89 = call i32 @test_int_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 332, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.26, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32 %88, i32 1)
%90 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.25, i64 0, i64 0), i32 %89)
%91 = icmp eq i32 %90, 0
%92 = or i1 %87, %91
%93 = load i32*, i32** %2
%94 = call i32 @test_BN_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 333, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32* %93, i32 1)
%95 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.27, i64 0, i64 0), i32 %94)
%96 = icmp eq i32 %95, 0
%97 = or i1 %92, %96
%98 = load i32*, i32** %2
%99 = call i32 @test_BN_eq_one(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 334, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %98)
%100 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.28, i64 0, i64 0), i32 %99)
%101 = icmp eq i32 %100, 0
%102 = or i1 %97, %101
%103 = load i32*, i32** %2
%104 = call i32 @test_BN_abs_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 335, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), i32* %103, i32 0)
%105 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.29, i64 0, i64 0), i32 %104)
%106 = icmp eq i32 %105, 0
%107 = or i1 %102, %106
%108 = load i32*, i32** %2
%109 = call i32 @test_BN_abs_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 336, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.3, i64 0, i64 0), i32* %108, i32 1)
%110 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.30, i64 0, i64 0), i32 %109)
%111 = icmp eq i32 %110, 0
%112 = or i1 %107, %111
%113 = load i32*, i32** %2
%114 = call i32 @test_BN_eq_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 337, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %113)
%115 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.31, i64 0, i64 0), i32 %114)
%116 = icmp eq i32 %115, 0
%117 = or i1 %112, %116
%118 = load i32*, i32** %2
%119 = call i32 @test_BN_ne_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 338, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %118)
%120 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.32, i64 0, i64 0), i32 %119)
%121 = icmp eq i32 %120, 0
%122 = or i1 %117, %121
%123 = load i32*, i32** %2
%124 = call i32 @test_BN_le_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 339, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %123)
%125 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.33, i64 0, i64 0), i32 %124)
%126 = icmp eq i32 %125, 0
%127 = or i1 %122, %126
%128 = load i32*, i32** %2
%129 = call i32 @test_BN_lt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 340, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %128)
%130 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.34, i64 0, i64 0), i32 %129)
%131 = icmp eq i32 %130, 0
%132 = or i1 %127, %131
%133 = load i32*, i32** %2
%134 = call i32 @test_BN_ge_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 341, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %133)
%135 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.35, i64 0, i64 0), i32 %134)
%136 = icmp eq i32 %135, 0
%137 = or i1 %132, %136
%138 = load i32*, i32** %2
%139 = call i32 @test_BN_gt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 342, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %138)
%140 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.36, i64 0, i64 0), i32 %139)
%141 = icmp eq i32 %140, 0
%142 = or i1 %137, %141
%143 = load i32*, i32** %2
%144 = call i32 @test_BN_even(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 343, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %143)
%145 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.37, i64 0, i64 0), i32 %144)
%146 = icmp eq i32 %145, 0
%147 = or i1 %142, %146
%148 = load i32*, i32** %2
%149 = call i32 @test_BN_odd(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 344, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %148)
%150 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.38, i64 0, i64 0), i32 %149)
%151 = icmp eq i32 %150, 0
%152 = or i1 %147, %151
%153 = call i32 @BN_dec2bn(i32** %3, i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.42, i64 0, i64 0))
%154 = call i32 @test_int_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 345, i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.40, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.41, i64 0, i64 0), i32 %153, i32 10)
%155 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([45 x i8], [45 x i8]* @.str.39, i64 0, i64 0), i32 %154)
%156 = icmp eq i32 %155, 0
%157 = or i1 %152, %156
%158 = load i32*, i32** %3
%159 = call i32 @test_BN_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 346, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.44, i64 0, i64 0), i32* %158, i32 334739439)
%160 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.43, i64 0, i64 0), i32 %159)
%161 = icmp eq i32 %160, 0
%162 = or i1 %157, %161
%163 = load i32*, i32** %3
%164 = call i32 @test_BN_abs_eq_word(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 347, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.44, i64 0, i64 0), i32* %163, i32 334739439)
%165 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.45, i64 0, i64 0), i32 %164)
%166 = icmp eq i32 %165, 0
%167 = or i1 %162, %166
%168 = load i32*, i32** %3
%169 = call i32 @test_BN_eq_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 348, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %168)
%170 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.46, i64 0, i64 0), i32 %169)
%171 = icmp eq i32 %170, 0
%172 = or i1 %167, %171
%173 = load i32*, i32** %3
%174 = call i32 @test_BN_ne_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 349, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %173)
%175 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.47, i64 0, i64 0), i32 %174)
%176 = icmp eq i32 %175, 0
%177 = or i1 %172, %176
%178 = load i32*, i32** %3
%179 = call i32 @test_BN_le_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 350, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %178)
%180 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.48, i64 0, i64 0), i32 %179)
%181 = icmp eq i32 %180, 0
%182 = or i1 %177, %181
%183 = load i32*, i32** %3
%184 = call i32 @test_BN_lt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 351, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %183)
%185 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.49, i64 0, i64 0), i32 %184)
%186 = icmp eq i32 %185, 0
%187 = or i1 %182, %186
%188 = load i32*, i32** %3
%189 = call i32 @test_BN_ge_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 352, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %188)
%190 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.50, i64 0, i64 0), i32 %189)
%191 = icmp eq i32 %190, 0
%192 = or i1 %187, %191
%193 = load i32*, i32** %3
%194 = call i32 @test_BN_gt_zero(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 353, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %193)
%195 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.51, i64 0, i64 0), i32 %194)
%196 = icmp eq i32 %195, 0
%197 = or i1 %192, %196
%198 = load i32*, i32** %3
%199 = call i32 @test_BN_even(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 354, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %198)
%200 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.52, i64 0, i64 0), i32 %199)
%201 = icmp eq i32 %200, 0
%202 = or i1 %197, %201
%203 = load i32*, i32** %3
%204 = call i32 @test_BN_odd(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 355, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %203)
%205 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.53, i64 0, i64 0), i32 %204)
%206 = icmp eq i32 %205, 0
%207 = or i1 %202, %206
%208 = load i32*, i32** %1
%209 = call i32 @test_BN_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 356, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %208, i32* %208)
%210 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.54, i64 0, i64 0), i32 %209)
%211 = icmp eq i32 %210, 0
%212 = or i1 %207, %211
%213 = load i32*, i32** %1
%214 = call i32 @test_BN_ne(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 357, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i32* %213, i32* %213)
%215 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.55, i64 0, i64 0), i32 %214)
%216 = icmp eq i32 %215, 0
%217 = or i1 %212, %216
%218 = load i32*, i32** %1
%219 = load i32*, i32** %2
%220 = call i32 @test_BN_eq(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 358, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %218, i32* %219)
%221 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.22, i64 0, i64 0), i32 %220)
%222 = icmp eq i32 %221, 0
%223 = or i1 %217, %222
%224 = load i32*, i32** %1
%225 = load i32*, i32** %2
%226 = call i32 @test_BN_ne(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 359, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %224, i32* %225)
%227 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.56, i64 0, i64 0), i32 %226)
%228 = icmp eq i32 %227, 0
%229 = or i1 %223, %228
%230 = load i32*, i32** %1
%231 = load i32*, i32** %3
%232 = call i32 @test_BN_lt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 360, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %230, i32* %231)
%233 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.57, i64 0, i64 0), i32 %232)
%234 = icmp eq i32 %233, 0
%235 = or i1 %229, %234
%236 = load i32*, i32** %3
%237 = load i32*, i32** %2
%238 = call i32 @test_BN_lt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 361, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %236, i32* %237)
%239 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.58, i64 0, i64 0), i32 %238)
%240 = icmp eq i32 %239, 0
%241 = or i1 %235, %240
%242 = load i32*, i32** %2
%243 = load i32*, i32** %3
%244 = call i32 @test_BN_lt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 362, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %242, i32* %243)
%245 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.59, i64 0, i64 0), i32 %244)
%246 = icmp eq i32 %245, 0
%247 = or i1 %241, %246
%248 = load i32*, i32** %1
%249 = load i32*, i32** %3
%250 = call i32 @test_BN_le(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 363, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %248, i32* %249)
%251 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.60, i64 0, i64 0), i32 %250)
%252 = icmp eq i32 %251, 0
%253 = or i1 %247, %252
%254 = load i32*, i32** %3
%255 = load i32*, i32** %2
%256 = call i32 @test_BN_le(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 364, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %254, i32* %255)
%257 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.61, i64 0, i64 0), i32 %256)
%258 = icmp eq i32 %257, 0
%259 = or i1 %253, %258
%260 = load i32*, i32** %2
%261 = load i32*, i32** %3
%262 = call i32 @test_BN_le(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 365, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %260, i32* %261)
%263 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.62, i64 0, i64 0), i32 %262)
%264 = icmp eq i32 %263, 0
%265 = or i1 %259, %264
%266 = load i32*, i32** %1
%267 = load i32*, i32** %3
%268 = call i32 @test_BN_gt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 366, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %266, i32* %267)
%269 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.63, i64 0, i64 0), i32 %268)
%270 = icmp eq i32 %269, 0
%271 = or i1 %265, %270
%272 = load i32*, i32** %3
%273 = load i32*, i32** %2
%274 = call i32 @test_BN_gt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 367, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %272, i32* %273)
%275 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.64, i64 0, i64 0), i32 %274)
%276 = icmp eq i32 %275, 0
%277 = or i1 %271, %276
%278 = load i32*, i32** %2
%279 = load i32*, i32** %3
%280 = call i32 @test_BN_gt(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 368, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %278, i32* %279)
%281 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.65, i64 0, i64 0), i32 %280)
%282 = icmp eq i32 %281, 0
%283 = or i1 %277, %282
%284 = load i32*, i32** %1
%285 = load i32*, i32** %3
%286 = call i32 @test_BN_ge(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 369, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %284, i32* %285)
%287 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.66, i64 0, i64 0), i32 %286)
%288 = icmp eq i32 %287, 0
%289 = or i1 %283, %288
%290 = load i32*, i32** %3
%291 = load i32*, i32** %2
%292 = call i32 @test_BN_ge(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 370, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i32* %290, i32* %291)
%293 = call i32 @test_case(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.67, i64 0, i64 0), i32 %292)
%294 = icmp eq i32 %293, 0
%295 = or i1 %289, %294
%296 = load i32*, i32** %2
%297 = load i32*, i32** %3
%298 = call i32 @test_BN_ge(i8* getelementptr inbounds ([173 x i8], [173 x i8]* @.str.1, i64 0, i64 0), i32 371, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.20, i64 0, i64 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.21, i64 0, i64 0), i32* %296, i32* %297)
%299 = call i32 @test_case(i32 1, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.68, i64 0, i64 0), i32 %298)
%300 = icmp eq i32 %299, 0
%301 = or i1 %295, %300
%302 = xor i1 %301, true
%303 = zext i1 %302 to i32
%304 = load i32*, i32** %1
%305 = call i32 @BN_free(i32* %304)
%306 = load i32*, i32** %2
%307 = call i32 @BN_free(i32* %306)
%308 = load i32*, i32** %3
%309 = call i32 @BN_free(i32* %308)
ret i32 %303
}