// File: /workspace/github_c_makefile_star2_O3/lucvoo[P]sparse-dev/predefine.c
// Function: predefined_macros
void predefined_macros(void)
{
	predefine("__CHECKER__", 0, "1");
	predefine("__GNUC__", 1, "%d", gcc_major);
	predefine("__GNUC_MINOR__", 1, "%d", gcc_minor);
	predefine("__GNUC_PATCHLEVEL__", 1, "%d", gcc_patchlevel);

	predefine("__STDC__", 1, "1");
	predefine("__STDC_HOSTED__", 0, fhosted ? "1" : "0");
	switch (standard) {
	default:
		break;

	case STANDARD_C94:
		predefine("__STDC_VERSION__", 1, "199409L");
		break;

	case STANDARD_C99:
	case STANDARD_GNU99:
		predefine("__STDC_VERSION__", 1, "199901L");
		break;

	case STANDARD_C11:
	case STANDARD_GNU11:
		predefine("__STDC_VERSION__", 1, "201112L");
		break;
	case STANDARD_C17:
	case STANDARD_GNU17:
		predefine("__STDC_VERSION__", 1, "201710L");
		break;
	}
	if (!(standard & STANDARD_GNU) && (standard != STANDARD_NONE))
		predefine("__STRICT_ANSI__", 1, "1");
	if (standard >= STANDARD_C11) {
		predefine("__STDC_NO_ATOMICS__", 1, "1");
		predefine("__STDC_NO_COMPLEX__", 1, "1");
		predefine("__STDC_NO_THREADS__", 1, "1");
	}

	predefine("__CHAR_BIT__", 1, "%d", bits_in_char);
	if (funsigned_char)
		predefine("__CHAR_UNSIGNED__", 1, "1");

	predefined_ctype("SHORT",     &short_ctype, PTYPE_SIZEOF);
	predefined_ctype("SHRT",      &short_ctype, PTYPE_MAX|PTYPE_WIDTH);
	predefined_ctype("SCHAR",     &schar_ctype, PTYPE_MAX|PTYPE_WIDTH);
	predefined_ctype("WCHAR",      wchar_ctype, PTYPE_ALL_T|PTYPE_MIN|PTYPE_TYPE);
	predefined_ctype("WINT",        wint_ctype, PTYPE_ALL_T|PTYPE_MIN|PTYPE_TYPE);
	predefined_ctype("CHAR16",   &ushort_ctype, PTYPE_TYPE);
	predefined_ctype("CHAR32",    uint32_ctype, PTYPE_TYPE);

	predefined_ctype("INT",         &int_ctype, PTYPE_ALL);
	predefined_ctype("LONG",       &long_ctype, PTYPE_ALL);
	predefined_ctype("LONG_LONG", &llong_ctype, PTYPE_ALL);

	predefined_ctype("INT8",      &schar_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("UINT8",     &uchar_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INT16",     &short_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("UINT16",   &ushort_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INT32",      int32_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("UINT32",    uint32_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INT64",      int64_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("UINT64",    uint64_ctype, PTYPE_MAX|PTYPE_TYPE);

	predefined_ctype("INT_LEAST8",   &schar_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINT_LEAST8",  &uchar_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INT_LEAST16",  &short_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINT_LEAST16",&ushort_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INT_LEAST32",   int32_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINT_LEAST32", uint32_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INT_LEAST64",   int64_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINT_LEAST64", uint64_ctype, PTYPE_MAX|PTYPE_TYPE);

	predefined_ctype("INT_FAST8",    fast8_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINT_FAST8",  ufast8_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INT_FAST16",  fast16_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINT_FAST16",ufast16_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INT_FAST32",  fast32_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINT_FAST32",ufast32_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INT_FAST64",  fast64_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINT_FAST64",ufast64_ctype, PTYPE_MAX|PTYPE_TYPE);

	predefined_ctype("INTMAX",    intmax_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINTMAX",  uintmax_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("INTPTR",    intptr_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH);
	predefined_ctype("UINTPTR",  uintptr_ctype, PTYPE_MAX|PTYPE_TYPE);
	predefined_ctype("PTRDIFF",  ptrdiff_ctype, PTYPE_ALL_T|PTYPE_TYPE);
	predefined_ctype("SIZE",      size_t_ctype, PTYPE_ALL_T|PTYPE_TYPE);
	predefined_ctype("POINTER",     &ptr_ctype, PTYPE_SIZEOF);
	predefined_ctype("SIG_ATOMIC", sig_atomic_ctype, PTYPE_MAX|PTYPE_MIN|PTYPE_TYPE|PTYPE_WIDTH);

	predefined_sizeof("FLOAT", "", bits_in_float);
	predefined_sizeof("DOUBLE", "", bits_in_double);
	predefined_sizeof("LONG_DOUBLE", "", bits_in_longdouble);

	if (arch_target->has_int128)
		predefined_sizeof("INT128", "", 128);

	predefine("__ATOMIC_RELAXED", 1, "0");
	predefine("__ATOMIC_CONSUME", 1, "1");
	predefine("__ATOMIC_ACQUIRE", 1, "3");
	predefine("__ATOMIC_RELEASE", 1, "4");
	predefine("__ATOMIC_ACQ_REL", 1, "7");
	predefine("__ATOMIC_SEQ_CST", 1, "8");

	predefine("__ORDER_LITTLE_ENDIAN__", 1, "1234");
	predefine("__ORDER_BIG_ENDIAN__", 1, "4321");
	predefine("__ORDER_PDP_ENDIAN__", 1, "3412");
	if (arch_big_endian) {
		predefine("__BIG_ENDIAN__", 1, "1");
		predefine("__BYTE_ORDER__", 1, "__ORDER_BIG_ENDIAN__");
	} else {
		predefine("__LITTLE_ENDIAN__", 1, "1");
		predefine("__BYTE_ORDER__", 1, "__ORDER_LITTLE_ENDIAN__");
	}

	if (optimize_level)
		predefine("__OPTIMIZE__", 0, "1");
	if (optimize_size)
		predefine("__OPTIMIZE_SIZE__", 0, "1");

	predefine("__PRAGMA_REDEFINE_EXTNAME", 1, "1");

	// Temporary hacks
	predefine("__extension__", 0, NULL);
	predefine("__pragma__", 0, NULL);

	switch (arch_m64) {
	case ARCH_LP32:
		break;
	case ARCH_X32:
		predefine("__ILP32__", 1, "1");
		predefine("_ILP32", 1, "1");
		break;
	case ARCH_LP64:
		predefine("__LP64__", 1, "1");
		predefine("_LP64", 1, "1");
		break;
	case ARCH_LLP64:
		predefine("__LLP64__", 1, "1");
		break;
	}

	if (fpic) {
		predefine("__pic__", 0, "%d", fpic);
		predefine("__PIC__", 0, "%d", fpic);
	}
	if (fpie) {
		predefine("__pie__", 0, "%d", fpie);
		predefine("__PIE__", 0, "%d", fpie);
	}

	if (arch_target->predefine)
		arch_target->predefine(arch_target);

	if (arch_os >= OS_UNIX && arch_os != OS_DARWIN) {
		predefine("__unix__", 1, "1");
		predefine("__unix", 1, "1");
		predefine_nostd("unix");
	}

	switch (arch_os) {
	case OS_CYGWIN:
		predefine("__CYGWIN__", 1, "1");
		if (arch_m64 == ARCH_LP32)
			predefine("__CYGWIN32__", 1, "1");
		add_pre_buffer("#define __cdecl __attribute__((__cdecl__))\n");
		add_pre_buffer("#define __declspec(x) __attribute__((x))\n");
		add_pre_buffer("#define __fastcall __attribute__((__fastcall__))\n");
		add_pre_buffer("#define __stdcall __attribute__((__stdcall__))\n");
		add_pre_buffer("#define __thiscall __attribute__((__thiscall__))\n");
		add_pre_buffer("#define _cdecl __attribute__((__cdecl__))\n");
		add_pre_buffer("#define _fastcall __attribute__((__fastcall__))\n");
		add_pre_buffer("#define _stdcall __attribute__((__stdcall__))\n");
		add_pre_buffer("#define _thiscall __attribute__((__thiscall__))\n");
		break;
	case OS_DARWIN:
		predefine("__APPLE__", 1, "1");
		predefine("__APPLE_CC__", 1, "1");
		predefine("__MACH__", 1, "1");
		break;
	case OS_FREEBSD:
		predefine("__FreeBSD__", 1, "1");
		break;
	case OS_LINUX:
		predefine("__linux__", 1, "1");
		predefine("__linux", 1, "1");
		break;
	case OS_NETBSD:
		predefine("__NetBSD__", 1, "1");
		break;
	case OS_OPENBSD:
		predefine("__OpenBSD__", 1, "1");
		break;
	case OS_SUNOS:
		predefine("__sun__", 1, "1");
		predefine("__sun", 1, "1");
		predefine_nostd("sun");
		predefine("__svr4__", 1, "1");
		break;
	}
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
leaq 0x275bf(%rip), %rdi     # 0x456e0
leaq 0x2d0fb(%rip), %rbx     # 0x4b223
xorl %esi, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x423f9(%rip), %rax     # 0x60534
movl (%rax), %ecx
leaq 0x275a8(%rip), %rdi     # 0x456ec
leaq 0x235a6(%rip), %r14     # 0x416f1
movl $0x1, %esi
movq %r14, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x423d7(%rip), %rax     # 0x60538
movl (%rax), %ecx
leaq 0x2758b(%rip), %rdi     # 0x456f5
movl $0x1, %esi
movq %r14, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x423bc(%rip), %rax     # 0x6053c
movl (%rax), %ecx
leaq 0x2757b(%rip), %rdi     # 0x45704
movl $0x1, %esi
movq %r14, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x27579(%rip), %rdi     # 0x45718
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x423b3(%rip), %rax     # 0x60568
cmpl $0x0, (%rax)
leaq 0x28281(%rip), %rdx     # 0x46440
cmovneq %rbx, %rdx
leaq 0x27557(%rip), %rdi     # 0x45721
xorl %esi, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x4237e(%rip), %rbx     # 0x60558
movl (%rbx), %eax
addl $-0x4, %eax
cmpl $0x7, %eax
ja 0x1e211
movl $0xfd, %ecx
btl %eax, %ecx
jae 0x1e211
movl %eax, %eax
leaq 0x274c9(%rip), %rcx     # 0x456c0
movslq (%rcx,%rax,4), %rdx
addq %rcx, %rdx
leaq 0x2752c(%rip), %rdi     # 0x45731
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
movl (%rbx), %eax
testl %eax, %eax
sete %cl
orb %al, %cl
testb $0x1, %cl
jne 0x1e23b
leaq 0x2753c(%rip), %rdi     # 0x45762
leaq 0x2cff6(%rip), %rdx     # 0x4b223
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
movl (%rbx), %eax
cmpl $0x8, %eax
jb 0x1e289
leaq 0x2752b(%rip), %rdi     # 0x45772
leaq 0x2cfd5(%rip), %rbx     # 0x4b223
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x27522(%rip), %rdi     # 0x45786
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x27520(%rip), %rdi     # 0x4579a
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x46470(%rip), %rax     # 0x64700
movl (%rax), %ecx
leaq 0x27515(%rip), %rdi     # 0x457ae
leaq 0x23451(%rip), %rdx     # 0x416f1
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x48b29(%rip), %rax     # 0x66ddc
cmpl $0x0, (%rax)
je 0x1e2d2
leaq 0x274fc(%rip), %rdi     # 0x457bb
leaq 0x2cf5d(%rip), %rdx     # 0x4b223
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x274f4(%rip), %rdi     # 0x457cd
leaq 0x4d1b8(%rip), %rbx     # 0x6b498
movq %rbx, %rsi
movl $0x1, %edx
callq 0x1ecf7
leaq 0x274df(%rip), %rdi     # 0x457d3
movq %rbx, %rsi
movl $0x14, %edx
callq 0x1ecf7
leaq 0x274d0(%rip), %rdi     # 0x457d8
leaq 0x4cfc9(%rip), %r14     # 0x6b2d8
movq %r14, %rsi
movl $0x14, %edx
callq 0x1ecf7
leaq 0x4633d(%rip), %rax     # 0x64660
movq (%rax), %rsi
leaq 0x274b1(%rip), %rdi     # 0x457de
movl $0x3f, %edx
callq 0x1ecf7
leaq 0x4632a(%rip), %rax     # 0x64668
movq (%rax), %rsi
leaq 0x2749c(%rip), %rdi     # 0x457e4
movl $0x3f, %edx
callq 0x1ecf7
leaq 0x4d2ff(%rip), %r15     # 0x6b658
movq %r15, %rdi
callq 0x23279
leaq 0x27966(%rip), %r12     # 0x45cce
leaq 0x2747a(%rip), %rsi     # 0x457e9
movq %r12, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0x11cf7
leaq 0x462d5(%rip), %r13     # 0x64658
movq (%r13), %rdi
callq 0x23279
leaq 0x2745d(%rip), %rsi     # 0x457f0
movq %r12, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0x11cf7
leaq 0x2743e(%rip), %rdi     # 0x457e5
leaq 0x4d38a(%rip), %rsi     # 0x6b738
movl $0x15, %edx
callq 0x1ecf7
leaq 0x298c1(%rip), %rdi     # 0x47c80
leaq 0x4d612(%rip), %rsi     # 0x6b9d8
movl $0x15, %edx
callq 0x1ecf7
leaq 0x27420(%rip), %rdi     # 0x457f7
leaq 0x4d89a(%rip), %rsi     # 0x6bc78
movl $0x15, %edx
callq 0x1ecf7
leaq 0x27413(%rip), %rdi     # 0x45802
movq %r14, %rsi
movl $0x24, %edx
callq 0x1ecf7
leaq 0x273fe(%rip), %rdi     # 0x45801
leaq 0x4cfae(%rip), %r12     # 0x6b3b8
movq %r12, %rsi
movl $0x24, %edx
callq 0x1ecf7
leaq 0x273ea(%rip), %rdi     # 0x45808
movq %rbx, %rsi
movl $0x24, %edx
callq 0x1ecf7
leaq 0x273d5(%rip), %rdi     # 0x45807
movq %r15, %rsi
movl $0x24, %edx
callq 0x1ecf7
leaq 0x4620a(%rip), %rbp     # 0x64650
movq (%rbp), %rsi
leaq 0x273be(%rip), %rdi     # 0x4580f
movl $0x24, %edx
callq 0x1ecf7
movq (%r13), %rsi
leaq 0x273a8(%rip), %rdi     # 0x4580e
movl $0x24, %edx
callq 0x1ecf7
leaq 0x461c9(%rip), %r14     # 0x64640
movq (%r14), %rsi
leaq 0x27395(%rip), %rdi     # 0x45816
movl $0x24, %edx
callq 0x1ecf7
leaq 0x461b6(%rip), %r15     # 0x64648
movq (%r15), %rsi
leaq 0x27379(%rip), %rdi     # 0x45815
movl $0x24, %edx
callq 0x1ecf7
leaq 0x27370(%rip), %rdi     # 0x4581d
leaq 0x4ce24(%rip), %rsi     # 0x6b2d8
movl $0x34, %edx
callq 0x1ecf7
leaq 0x27357(%rip), %rdi     # 0x4581c
movq %r12, %rsi
movl $0x24, %edx
callq 0x1ecf7
leaq 0x27350(%rip), %rdi     # 0x45829
movq %rbx, %rsi
movl $0x34, %edx
callq 0x1ecf7
leaq 0x2733b(%rip), %rdi     # 0x45828
leaq 0x4d164(%rip), %rsi     # 0x6b658
movl $0x24, %edx
callq 0x1ecf7
movq (%rbp), %rsi
leaq 0x2732d(%rip), %rdi     # 0x45836
movl $0x34, %edx
callq 0x1ecf7
movq (%r13), %rsi
leaq 0x27317(%rip), %rdi     # 0x45835
movl $0x24, %edx
callq 0x1ecf7
movq (%r14), %rsi
leaq 0x27311(%rip), %rdi     # 0x45843
movl $0x34, %edx
callq 0x1ecf7
movq (%r15), %rsi
leaq 0x272fc(%rip), %rdi     # 0x45842
movl $0x24, %edx
callq 0x1ecf7
leaq 0x46159(%rip), %rax     # 0x646b0
movq (%rax), %rsi
leaq 0x272ef(%rip), %rdi     # 0x45850
movl $0x34, %edx
callq 0x1ecf7
leaq 0x46146(%rip), %rax     # 0x646b8
movq (%rax), %rsi
leaq 0x272d3(%rip), %rdi     # 0x4584f
movl $0x24, %edx
callq 0x1ecf7
leaq 0x46133(%rip), %rax     # 0x646c0
movq (%rax), %rsi
leaq 0x272c4(%rip), %rdi     # 0x4585b
movl $0x34, %edx
callq 0x1ecf7
leaq 0x46120(%rip), %rax     # 0x646c8
movq (%rax), %rsi
leaq 0x272a8(%rip), %rdi     # 0x4585a
movl $0x24, %edx
callq 0x1ecf7
leaq 0x4610d(%rip), %rax     # 0x646d0
movq (%rax), %rsi
leaq 0x2729a(%rip), %rdi     # 0x45867
movl $0x34, %edx
callq 0x1ecf7
leaq 0x460fa(%rip), %rax     # 0x646d8
movq (%rax), %rsi
leaq 0x2727e(%rip), %rdi     # 0x45866
movl $0x24, %edx
callq 0x1ecf7
leaq 0x460e7(%rip), %rax     # 0x646e0
movq (%rax), %rsi
leaq 0x27270(%rip), %rdi     # 0x45873
movl $0x34, %edx
callq 0x1ecf7
leaq 0x460d4(%rip), %rax     # 0x646e8
movq (%rax), %rsi
leaq 0x27254(%rip), %rdi     # 0x45872
movl $0x24, %edx
callq 0x1ecf7
leaq 0x46001(%rip), %rax     # 0x64630
movq (%rax), %rsi
leaq 0x27246(%rip), %rdi     # 0x4587f
movl $0x34, %edx
callq 0x1ecf7
leaq 0x45fee(%rip), %rax     # 0x64638
movq (%rax), %rsi
leaq 0x2722a(%rip), %rdi     # 0x4587e
movl $0x24, %edx
callq 0x1ecf7
leaq 0x4f923(%rip), %rax     # 0x6df88
movq (%rax), %rsi
leaq 0x27218(%rip), %rdi     # 0x45887
movl $0x34, %edx
callq 0x1ecf7
leaq 0x4f910(%rip), %rax     # 0x6df90
movq (%rax), %rsi
leaq 0x271fc(%rip), %rdi     # 0x45886
movl $0x24, %edx
callq 0x1ecf7
leaq 0x4f8e5(%rip), %rax     # 0x6df80
movq (%rax), %rsi
leaq 0x271e9(%rip), %rdi     # 0x4588e
movl $0x37, %edx
callq 0x1ecf7
leaq 0x45f6a(%rip), %rax     # 0x64620
movq (%rax), %rsi
leaq 0x271d6(%rip), %rdi     # 0x45896
movl $0x37, %edx
callq 0x1ecf7
leaq 0x271ca(%rip), %rdi     # 0x4589b
leaq 0x4de60(%rip), %rsi     # 0x6c538
movl $0x1, %edx
callq 0x1ecf7
leaq 0x46007(%rip), %rax     # 0x646f0
movq (%rax), %rsi
leaq 0x271b0(%rip), %rdi     # 0x458a3
movl $0x3c, %edx
callq 0x1ecf7
leaq 0x46018(%rip), %rax     # 0x6471c
movl (%rax), %ebp
leaq 0x275eb(%rip), %rbx     # 0x45cf8
leaq 0x2719a(%rip), %rcx     # 0x458ae
leaq 0x221b2(%rip), %r14     # 0x408cd
movq %rsp, %r12
movl $0x20, %esi
movq %r12, %rdi
movq %rbx, %rdx
movq %r14, %r8
xorl %eax, %eax
callq 0xe100
shrl $0x3, %ebp
leaq 0x22fb4(%rip), %r15     # 0x416f1
movq %r12, %rdi
movl $0x1, %esi
movq %r15, %rdx
movl %ebp, %ecx
xorl %eax, %eax
callq 0x1eec8
leaq 0x45fc8(%rip), %rax     # 0x64720
movl (%rax), %ebp
leaq 0x27158(%rip), %rcx     # 0x458b9
movq %rsp, %r12
movl $0x20, %esi
movq %r12, %rdi
movq %rbx, %rdx
movq %r14, %r8
xorl %eax, %eax
callq 0xe100
shrl $0x3, %ebp
movq %r12, %rdi
movl $0x1, %esi
movq %r15, %rdx
movl %ebp, %ecx
xorl %eax, %eax
callq 0x1eec8
leaq 0x45f8d(%rip), %rax     # 0x64724
movl (%rax), %ebp
leaq 0x27114(%rip), %rcx     # 0x458b4
movq %rsp, %r12
movl $0x20, %esi
movq %r12, %rdi
movq %rbx, %rdx
movq %r14, %r8
xorl %eax, %eax
callq 0xe100
shrl $0x3, %ebp
movq %r12, %rdi
movl $0x1, %esi
movq %r15, %rdx
movl %ebp, %ecx
xorl %eax, %eax
callq 0x1eec8
leaq 0x45f6a(%rip), %r12     # 0x64740
movq (%r12), %rax
testb $0x8, 0x8(%rax)
je 0x1e822
leaq 0x27511(%rip), %rdx     # 0x45cf8
leaq 0x270d2(%rip), %rcx     # 0x458c0
leaq 0x220d8(%rip), %r8      # 0x408cd
movq %rsp, %rbx
movl $0x20, %esi
movq %rbx, %rdi
xorl %eax, %eax
callq 0xe100
leaq 0x22ee3(%rip), %rdx     # 0x416f1
movq %rbx, %rdi
movl $0x1, %esi
movl $0x10, %ecx
xorl %eax, %eax
callq 0x1eec8
leaq 0x2709e(%rip), %rdi     # 0x458c7
leaq 0x27c10(%rip), %rdx     # 0x46440
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x27095(%rip), %rdi     # 0x458d8
leaq 0x2c9d9(%rip), %rbx     # 0x4b223
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x27089(%rip), %rdi     # 0x458e9
leaq 0x27093(%rip), %rdx     # 0x458fa
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x27082(%rip), %rdi     # 0x458fc
leaq 0x270c9(%rip), %rdx     # 0x4594a
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x27079(%rip), %rdi     # 0x4590d
leaq 0x23beb(%rip), %rdx     # 0x42486
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x27070(%rip), %rdi     # 0x4591e
leaq 0x23bde(%rip), %rdx     # 0x42493
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x27067(%rip), %r15     # 0x4592f
leaq 0x27078(%rip), %rdx     # 0x45947
movq %r15, %rdi
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x27067(%rip), %r14     # 0x4594c
leaq 0x27075(%rip), %rdx     # 0x45961
movq %r14, %rdi
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x27064(%rip), %rdi     # 0x45966
leaq 0x27072(%rip), %rdx     # 0x4597b
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x4847c(%rip), %rax     # 0x66d98
cmpl $0x0, (%rax)
leaq 0x27078(%rip), %rax     # 0x4599e
leaq 0x27053(%rip), %rdi     # 0x45980
cmoveq %rax, %rdi
cmoveq %r15, %r14
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x27044(%rip), %rdi     # 0x4598f
movl $0x1, %esi
movq %r14, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x484f3(%rip), %rax     # 0x66e54
cmpl $0x0, (%rax)
je 0x1e97d
leaq 0x27043(%rip), %rdi     # 0x459b0
leaq 0x2c8af(%rip), %rdx     # 0x4b223
xorl %esi, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x484d4(%rip), %rax     # 0x66e58
cmpl $0x0, (%rax)
je 0x1e9a0
leaq 0x2702d(%rip), %rdi     # 0x459bd
leaq 0x2c88c(%rip), %rdx     # 0x4b223
xorl %esi, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x27028(%rip), %rdi     # 0x459cf
leaq 0x2c875(%rip), %rdx     # 0x4b223
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x27028(%rip), %rdi     # 0x459e9
xorl %esi, %esi
xorl %edx, %edx
xorl %eax, %eax
callq 0x1eec8
leaq 0x27024(%rip), %rdi     # 0x459f7
xorl %esi, %esi
xorl %edx, %edx
xorl %eax, %eax
callq 0x1eec8
leaq 0x41b7b(%rip), %r14     # 0x60560
movl (%r14), %eax
cmpl $0x1, %eax
je 0x1ea10
cmpl $0x3, %eax
je 0x1ea07
cmpl $0x2, %eax
jne 0x1ea47
leaq 0x2701e(%rip), %rbx     # 0x45a1c
leaq 0x2700e(%rip), %rdi     # 0x45a13
jmp 0x1ea1e
leaq 0x27014(%rip), %rbx     # 0x45a22
jmp 0x1ea31
leaq 0x26ff5(%rip), %rbx     # 0x45a0c
leaq 0x26fe4(%rip), %rdi     # 0x45a02
leaq 0x2c7fe(%rip), %rdx     # 0x4b223
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x2c7eb(%rip), %rdx     # 0x4b223
movq %rbx, %rdi
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x4837e(%rip), %r15     # 0x66dcc
movl (%r15), %ecx
testl %ecx, %ecx
je 0x1ea85
leaq 0x26fd0(%rip), %rdi     # 0x45a2c
leaq 0x22c8e(%rip), %rbx     # 0x416f1
xorl %esi, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
movl (%r15), %ecx
leaq 0x26fbb(%rip), %rdi     # 0x45a34
xorl %esi, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x48344(%rip), %r15     # 0x66dd0
movl (%r15), %ecx
testl %ecx, %ecx
je 0x1eac3
leaq 0x26fa2(%rip), %rdi     # 0x45a3c
leaq 0x22c50(%rip), %rbx     # 0x416f1
xorl %esi, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
movl (%r15), %ecx
leaq 0x26f8d(%rip), %rdi     # 0x45a44
xorl %esi, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
movq (%r12), %rdi
movq 0x60(%rdi), %rax
testq %rax, %rax
je 0x1ead2
callq *%rax
leaq 0x41a8b(%rip), %r15     # 0x60564
movl (%r15), %eax
cmpl $0x2, %eax
setl %cl
cmpl $0x4, %eax
sete %dl
orb %cl, %dl
jne 0x1eb2e
leaq 0x26f59(%rip), %rdi     # 0x45a4c
leaq 0x2c729(%rip), %rbx     # 0x4b223
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x26f45(%rip), %rdi     # 0x45a55
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x26f31(%rip), %rdi     # 0x45a57
callq 0x1f3e9
movl (%r15), %eax
addl $-0x3, %eax
cmpl $0x6, %eax
ja 0x1ece8
leaq 0x26b63(%rip), %rcx     # 0x456a4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x26f0b(%rip), %rdi     # 0x45a5c
leaq 0x2c6cb(%rip), %rdx     # 0x4b223
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
cmpl $0x0, (%r14)
jne 0x1eb84
leaq 0x26ef6(%rip), %rdi     # 0x45a67
leaq 0x2c6ab(%rip), %rdx     # 0x4b223
movl $0x1, %esi
xorl %eax, %eax
callq 0x1eec8
leaq 0x26ee9(%rip), %rdi     # 0x45a74
xorl %eax, %eax
callq 0x11cf7
leaq 0x26f07(%rip), %rdi     # 0x45aa0
xorl %eax, %eax
callq 0x11cf7
leaq 0x26f23(%rip), %rdi     # 0x45aca
xorl %eax, %eax
callq 0x11cf7
leaq 0x26f47(%rip), %rdi     # 0x45afc
xorl %eax, %eax
callq 0x11cf7
leaq 0x26f69(%rip), %rdi     # 0x45b2c
xorl %eax, %eax
callq 0x11cf7
leaq 0x26f8d(%rip), %rdi     # 0x45b5e
xorl %eax, %eax
callq 0x11cf7
leaq 0x26faa(%rip), %rdi     # 0x45b89
xorl %eax, %eax
callq 0x11cf7
leaq 0x26fcd(%rip), %rdi     # 0x45bba
xorl %eax, %eax
callq 0x11cf7
leaq 0x26fee(%rip), %rdi     # 0x45be9
xorl %eax, %eax
callq 0x11cf7
jmp 0x1ece8
leaq 0x2704a(%rip), %rdi     # 0x45c58
jmp 0x1ec85
leaq 0x27023(%rip), %rdi     # 0x45c3a
jmp 0x1ec85
leaq 0x27026(%rip), %rdi     # 0x45c46
leaq 0x2c5fc(%rip), %rbx     # 0x4b223
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x27013(%rip), %rdi     # 0x45c50
jmp 0x1ecd9
leaq 0x26fd1(%rip), %rdi     # 0x45c1a
leaq 0x2c5d3(%rip), %rbx     # 0x4b223
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x26fbe(%rip), %rdi     # 0x45c24
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x26fb5(%rip), %rdi     # 0x45c31
jmp 0x1ecd9
leaq 0x26fde(%rip), %rdi     # 0x45c63
leaq 0x2c597(%rip), %rdx     # 0x4b223
movl $0x1, %esi
jmp 0x1ece1
leaq 0x26fd5(%rip), %rdi     # 0x45c6f
leaq 0x2c582(%rip), %rbx     # 0x4b223
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x26fc0(%rip), %rdi     # 0x45c77
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
leaq 0x26fac(%rip), %rdi     # 0x45c79
callq 0x1f3e9
leaq 0x26fa4(%rip), %rdi     # 0x45c7d
movl $0x1, %esi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x1eec8
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq