// File: SMT-COMP[P]scrambler/scrambler.cpp
// Function: usage(char const*)
void usage(const char *program)
{
    std::cout << "Syntax: " << program << " [OPTIONS] < INPUT_FILE.smt2\n"
              << "\n"
              << "    -term_annot [true|pattern|false]\n"
              << "        controls whether term annotations are printed "
                 "(default: true)\n"
              << "\n"
              << "    -seed N\n"
              << "        seed value (>= 0) for pseudo-random choices; if 0, "
                 "no scrambling is\n"
              << "        performed (default: time(0))\n"
              << "\n"
              << "    -core FILE\n"
              << "        print only those (named) assertions whose name is "
                 "contained in the\n"
              << "        specified FILE (default: print all assertions)\n"
              << "\n"
              << "    -incremental [true|false]\n"
              << "        produce output in a format suitable for the trace "
                 "executer used in\n"
              << "        the incremental track of SMT-COMP (default: false)\n"
              << "\n"
              << "    -gen-unsat-core [true|false]\n"
              << "        controls whether the output is in a format suitable "
                 "for the unsat-core\n"
              << "        track of SMT-COMP (default: false)\n"
              << "\n"
              << "    -gen-model-val [true|false]\n"
              << "        controls whether the output is in a format suitable "
                 "for the model\n"
              << "        validation track of SMT-COMP (default: false)\n"
              << "\n"
              << "    -gen-proof [true|false]\n"
              << "        controls whether the output is in a format suitable "
                 "for the proof\n"
              << "        track of SMT-COMP (default: false)\n"
              << "\n"
              << "    -support-non-smtcomp [true|false]\n"
              << "        controls whether to support SMTLIB commands that are "
                 "not supported\n"
              << "        by SMTCOMP (default: false)\n"
              << "\n"
              << "    -support-z3 [true|false]\n"
              << "        controls whether to support non-SMTLIB commands that "
                 "are supported\n"
              << "        by Z3 (default: false)\n"
              << "\n"
              << "    -count-asserts [true|false]\n"
              << "        controls whether the number of assertions found in the benchmark\n"
              << "        is printed to stderr (default: false)\n\n";
    std::cout.flush();
    exit(1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x8(%rbp)
movq 0x1ff25(%rip), %rdi     # 0x25fb8
leaq 0x13310(%rip), %rsi     # 0x193aa
callq 0x3260
movq %rax, %rdi
movq -0x8(%rbp), %rsi
callq 0x3260
movq %rax, %rdi
leaq 0x132fe(%rip), %rsi     # 0x193b3
callq 0x3260
movq %rax, %rdi
leaq 0x13899(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x132fe(%rip), %rsi     # 0x193d1
callq 0x3260
movq %rax, %rdi
leaq 0x13315(%rip), %rsi     # 0x193f7
callq 0x3260
movq %rax, %rdi
leaq 0x1386c(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x1333e(%rip), %rsi     # 0x1943e
callq 0x3260
movq %rax, %rdi
leaq 0x1333c(%rip), %rsi     # 0x1944b
callq 0x3260
movq %rax, %rdi
leaq 0x1337a(%rip), %rsi     # 0x19498
callq 0x3260
movq %rax, %rdi
leaq 0x13830(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x13382(%rip), %rsi     # 0x194be
callq 0x3260
movq %rax, %rdi
leaq 0x13383(%rip), %rsi     # 0x194ce
callq 0x3260
movq %rax, %rdi
leaq 0x133c0(%rip), %rsi     # 0x1951a
callq 0x3260
movq %rax, %rdi
leaq 0x137f4(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x133da(%rip), %rsi     # 0x19552
callq 0x3260
movq %rax, %rdi
leaq 0x133ea(%rip), %rsi     # 0x19571
callq 0x3260
movq %rax, %rdi
leaq 0x13427(%rip), %rsi     # 0x195bd
callq 0x3260
movq %rax, %rdi
leaq 0x137b8(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x13445(%rip), %rsi     # 0x195f9
callq 0x3260
movq %rax, %rdi
leaq 0x13458(%rip), %rsi     # 0x1961b
callq 0x3260
movq %rax, %rdi
leaq 0x13499(%rip), %rsi     # 0x1966b
callq 0x3260
movq %rax, %rdi
leaq 0x1377c(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x134a7(%rip), %rsi     # 0x19697
callq 0x3260
movq %rax, %rdi
leaq 0x134b9(%rip), %rsi     # 0x196b8
callq 0x3260
movq %rax, %rdi
leaq 0x134f5(%rip), %rsi     # 0x19703
callq 0x3260
movq %rax, %rdi
leaq 0x13740(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x1350e(%rip), %rsi     # 0x1973a
callq 0x3260
movq %rax, %rdi
leaq 0x1351c(%rip), %rsi     # 0x19757
callq 0x3260
movq %rax, %rdi
leaq 0x13421(%rip), %rsi     # 0x1966b
callq 0x3260
movq %rax, %rdi
leaq 0x13704(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x1353a(%rip), %rsi     # 0x197a2
callq 0x3260
movq %rax, %rdi
leaq 0x13552(%rip), %rsi     # 0x197c9
callq 0x3260
movq %rax, %rdi
leaq 0x1358f(%rip), %rsi     # 0x19815
callq 0x3260
movq %rax, %rdi
leaq 0x136c8(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x13596(%rip), %rsi     # 0x1983a
callq 0x3260
movq %rax, %rdi
leaq 0x135a5(%rip), %rsi     # 0x19858
callq 0x3260
movq %rax, %rdi
leaq 0x135e2(%rip), %rsi     # 0x198a4
callq 0x3260
movq %rax, %rdi
leaq 0x1368c(%rip), %rsi     # 0x1995d
callq 0x3260
movq %rax, %rdi
leaq 0x135e4(%rip), %rsi     # 0x198c4
callq 0x3260
movq %rax, %rdi
leaq 0x135f6(%rip), %rsi     # 0x198e5
callq 0x3260
movq %rax, %rdi
leaq 0x13631(%rip), %rsi     # 0x1992f
callq 0x3260
movq 0x1fcae(%rip), %rdi     # 0x25fb8
callq 0x31c0
movl $0x1, %edi
callq 0x32f0
nopl (%rax)