// File: /workspace/github_c_makefile_star2_O2/tomka[P]cliaspora/cliaspora.c
// Function: main
int
main(int argc, char *argv[])
{
	int	  ch, eflag, mflag, i, len, aspect_id, user_id, pm_id; 
	bool	  public, have_cfg;
	char	  *account, *host, *user, *pass, *p, *ans, *buf, url[256];
	session_t *sp;
	contact_t *contacts;

	if (setlocale(LC_CTYPE, "en_US.UTF-8") == NULL) {
		warnx("Failed to set locale to \"en_US.UTF-8\". Using " \
		    "default locale.");
		if (setlocale(LC_CTYPE, "C") == NULL)
			warnx("Failed to set default locale.");
		warnx("Expect messed up output");
	}

	eflag = mflag = 0; account = NULL;
	while ((ch = getopt(argc, argv, "a:emh")) != -1) {
		switch (ch) {
		case 'a':
			account = optarg;
			break;
		case 'e':
			eflag = 1;
			break;
		case 'm':
			mflag = 1;
			break;
		case 'h':
		case '?':
		default:
			usage();
			break;
		}
	}
	argc -= optind;
	argv += optind;

	if (argc == 0)
		usage();

	(void)signal(SIGINT, cleanup);
	(void)signal(SIGTERM, cleanup);
	(void)signal(SIGHUP, cleanup);
	(void)signal(SIGQUIT, cleanup);

	switch (read_config(account)) {
	case  0:
		have_cfg = true;
		break;
	case -1:
		errx(EXIT_FAILURE, "Failed to read config file");
		/* NOTREACHED */
	default:
		have_cfg = false;
	}
	sp = NULL;
	if (strcmp(argv[0], "session") == 0) {
		if (argc < 2)
			usage();
		if (strcmp(argv[1], "close") == 0) {
			if (!have_cfg)
				errx(EXIT_FAILURE, "There is no session.");
			if ((sp = create_session()) == NULL) {
				errx(EXIT_FAILURE,
				    "Failed to create session.");
			}
			close_session(sp);
			return (EXIT_SUCCESS);
		}
		if (strcmp(argv[1], "new") != 0 || argc < 3)
			usage();
		if ((user = strtok(argv[2], "@")) == NULL)
			usage();
		if ((host = strtok(NULL, "@")) == NULL)
			usage();
		if (argc > 3)
			pass = argv[3];
		else if ((pass = readpass()) == NULL)
			errx(EXIT_FAILURE, "readpass() failed");
		sp = new_session(host, SSL_PORT, user, pass);
		if (sp == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
	} else if (!have_cfg)
		errx(EXIT_FAILURE, "Please create a session first.");
	else if (strcmp(argv[0], "show") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if (strcmp(argv[1], "stream") == 0)
			read_stream(sp, "/stream");
		else if (strcmp(argv[1], "activity") == 0)
			read_stream(sp, "/activity");
		else if (strcmp(argv[1], "mystream") == 0) {
			if (cfg.user == NULL || cfg.user[0] == '\0') {
				errx(EXIT_FAILURE, "Username not set. " \
				    "Please create a new session.");
			}
			(void)snprintf(url, sizeof(url), "/u/%s", cfg.user);
			read_stream(sp, url);
		} else
			usage();
	} else if (strcmp(argv[0], "lookup") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if ((contacts = lookup_user(sp, argv[1])) == NULL)
			errx(EXIT_FAILURE, "Failed to look up %s", argv[1]);
		show_contacts(contacts);
	} else if (strcmp(argv[0], "list") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if (strcmp(argv[1], "contacts") == 0) {
			if (get_contacts(sp) == NULL)
				errx(EXIT_FAILURE, "Failed to get contacts");
			show_contacts(sp->contacts);
		} else if (strcmp(argv[1], "messages") == 0) {
			if (get_contacts(sp) == NULL)
				warnx("Failed to get contacts");
			if (get_msg_index(sp) == NULL) {
				errx(EXIT_FAILURE,
				    "Failed to get message index");
			}
			show_msg_index(sp);
			exit(0);
		} else if (strcmp(argv[1], "aspects") == 0)
			show_aspects(sp);
		else
			usage();
	} else if (strcmp(argv[0], "like") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if (like(sp, strtol(argv[1], NULL, 10)) == -1)
			errx(EXIT_FAILURE, "Failed to \"like\" post");
	} else if (strcmp(argv[0], "delete") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if (delete_post(sp, strtol(argv[1], NULL, 10)) == -1)
			errx(EXIT_FAILURE, "Failed to delete post");
	} else if (strcmp(argv[0], "upload") == 0) {
		if (argc < 3)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if (strcmp(argv[1], "public") != 0 &&
		    get_aspect_id(sp, argv[1]) == -1) {
			errx(EXIT_FAILURE, "Unknown aspect '%s'", argv[1]);
		}
		if (mflag == 1)
			buf = get_input(eflag == 1 ? false : true);
		if (upload(sp, argv[1], mflag ? buf : NULL, &argv[2]) == -1)
			errx(EXIT_FAILURE, "Failed to upload file(s).");
		if (mflag == 1 && eflag == 1)
			delete_postponed();
	} else if (strcmp(argv[0], "poll") == 0) {
		if (argc < 5)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		for (ans = NULL, len = 0, i = 3; i < argc; i++) {
			if ((p = json_escape_str(argv[i])) == NULL)
				err(EXIT_FAILURE, "json_escape_str()");
			len += strlen(p) + 4;
			if ((ans = realloc(ans, len)) == NULL)
				err(EXIT_FAILURE, "realloc()");
			if (i == 3)
				/* First iteration. Initialize 'ans' */
				*ans = '\0';
			(void)sprintf(ans + strlen(ans), "\"%s\"%s", p,
			    argc - 1 > i ? "," : "");
			free(p);
		}
		if (mflag == 1)
			buf = get_input(eflag == 1 ? false : true);
		if (dpoll(sp, argv[1], mflag ? buf : NULL, argv[2], ans) == -1)
			errx(EXIT_FAILURE, "Failed to start poll.");
		if (mflag == 1 && eflag == 1)
			delete_postponed();
	} else if (strcmp(argv[0], "reshare") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if (reshare(sp, strtol(argv[1], NULL, 10)) == -1)
			errx(EXIT_FAILURE, "Failed to reshare post");
 	} else if (strcmp(argv[0], "follow") == 0) {
		if (argc < 3)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE,  "Failed to create session.");
		if (strcmp(argv[1], "tag") == 0) {
			if (follow_tag(sp, argv[2]) == -1)
				errx(EXIT_FAILURE, "Failed to follow tag.");
		} else if (strcmp(argv[1], "user") == 0) {
			if (argc < 4)
				usage();
			contacts = lookup_user(sp, argv[2]);
			if (contacts == NULL) {
				errx(EXIT_FAILURE, "Failed to lookup '%s'",
				    argv[2]);
			}
			user_id = get_contact_id(contacts, argv[2]);
			if (user_id == -1) {
				errx(EXIT_FAILURE, "Couldn't find '%s'",
				    argv[2]);
			}
			aspect_id = get_aspect_id(sp, argv[3]);
			if (aspect_id == -1) {
				errx(EXIT_FAILURE, "Aspect '%s' not found",
				    argv[3]);
			}
			if (add_contact(sp, aspect_id, user_id) == -1)
				errx(EXIT_FAILURE, "Failed to follow");
		} else
			usage();
	} else if (strcmp(argv[0], "add") == 0) {
		if (argc < 4)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if (strcmp(argv[1], "aspect") == 0) {
			public = false;
			if (strcmp(argv[3], "public") == 0)
				public = true;
			else if (strcmp(argv[3], "private") == 0)
				public = false;
			else
				usage();
			if (add_aspect(sp, argv[2], public) == -1)
				errx(EXIT_FAILURE, "Failed to add aspect");
		} else
			usage();
	} else if (strcmp(argv[0], "post") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if (strcmp(argv[1], "public") != 0 &&
		    get_aspect_id(sp, argv[1]) == -1) {
			errx(EXIT_FAILURE, "Unknown aspect '%s'", argv[1]);
		}
		buf = get_input(eflag == 1 ? false : true);
		if (post(sp, buf, argv[1]) == -1)
			errx(EXIT_FAILURE, "Failed to post");
		if (eflag == 1)
			delete_postponed();
	} else if (strcmp(argv[0], "comment") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		buf = get_input(eflag == 1 ? false : true);
		if (comment(sp, buf, strtol(argv[1], NULL, 10)) == -1)
			errx(EXIT_FAILURE, "Failed to send comment");
		if (eflag == 1)
			delete_postponed();
	} else if (strcmp(argv[0], "message") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		if (get_contacts(sp) == NULL)
			errx(EXIT_FAILURE, "Failed to get contacts");
		if ((pm_id = get_pm_id(sp, argv[1])) == -1) {
			errx(EXIT_FAILURE, "Failed to get %s's PM ID",
			    argv[1]);
		}
		buf = get_input(eflag == 1 ? false : true);
		if (message(sp, argc > 2 ? argv[2] : "No subject", buf,
		    pm_id) == -1)
			errx(EXIT_FAILURE, "Failed to send message");
		if (eflag == 1)
			delete_postponed();
	} else if (strcmp(argv[0], "reply") == 0) {
		if (argc < 2)
			usage();
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		buf = get_input(eflag == 1 ? false : true);
		if (reply(sp, buf, strtol(argv[1], NULL, 10)) == -1) {
			errx(EXIT_FAILURE, "Failed to reply to message %d",
			    (int)strtol(argv[1], NULL, 10));
		}
		if (eflag == 1)
			delete_postponed();
	} else if (strcmp(argv[0], "status") == 0) {
		if ((sp = create_session()) == NULL)
			errx(EXIT_FAILURE, "Failed to create session.");
		(void)puts("NOTIFICATIONS  NEW MESSAGES");
		(void)printf("%-13d  %d\n", sp->attr.nc, sp->attr.mc);
	} else
		usage();
	exit(0);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x398, %rsp            # imm = 0x398
movq %rsi, %r14
movl %edi, %ebx
leaq 0x7917(%rip), %rsi      # 0xa020
xorl %ebp, %ebp
xorl %edi, %edi
callq 0x2240
testq %rax, %rax
jne 0x2754
leaq 0x790e(%rip), %rdi      # 0xa02c
xorl %eax, %eax
callq 0x22e0
leaq 0x793d(%rip), %rsi      # 0xa069
xorl %edi, %edi
callq 0x2240
testq %rax, %rax
jne 0x2746
leaq 0x792c(%rip), %rdi      # 0xa06b
xorl %eax, %eax
callq 0x22e0
leaq 0x793c(%rip), %rdi      # 0xa089
xorl %eax, %eax
callq 0x22e0
movb $0x1, %al
movl %eax, 0x18(%rsp)
leaq 0x7940(%rip), %r12      # 0xa0a1
pushq $0x1
popq %r15
movq $0x0, 0x10(%rsp)
xorl %r13d, %r13d
movl %ebp, %ecx
movl %ecx, %ebp
movl %ebx, %edi
movq %r14, %rsi
movq %r12, %rdx
callq 0x20e0
movl %r15d, %ecx
cmpl $0x65, %eax
je 0x2773
cmpl $-0x1, %eax
je 0x27ba
cmpl $0x6d, %eax
je 0x27a9
cmpl $0x61, %eax
jne 0x4457
movq 0xc81c(%rip), %rax      # 0xefc0
movq (%rax), %r13
jmp 0x2771
movb $0x1, %al
movq %rax, 0x10(%rsp)
movl $0x0, 0x18(%rsp)
jmp 0x2771
movq 0xc81f(%rip), %rax      # 0xefe0
movslq (%rax), %r15
subl %r15d, %ebx
je 0x4457
leaq 0x26ba(%rip), %r12      # 0x4e8e
pushq $0x2
popq %rdi
movq %r12, %rsi
callq 0x23c0
pushq $0xf
popq %rdi
movq %r12, %rsi
callq 0x23c0
pushq $0x1
popq %rdi
movq %r12, %rsi
callq 0x23c0
pushq $0x3
popq %rdi
movq %r12, %rsi
callq 0x23c0
movq %r13, %rdi
callq 0x643f
testl %eax, %eax
je 0x281a
cmpl $-0x1, %eax
je 0x3412
movb $0x1, %r12b
jmp 0x281d
xorl %r12d, %r12d
leaq (%r14,%r15,8), %r13
movq (%r13), %r14
leaq 0x7c08(%rip), %rsi      # 0xa434
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
je 0x2bbf
testb %r12b, %r12b
jne 0x3242
leaq 0x78e2(%rip), %rsi      # 0xa12e
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
je 0x324e
leaq 0x7920(%rip), %rsi      # 0xa183
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
je 0x328f
leaq 0x7925(%rip), %rsi      # 0xa19f
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x32d0
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %r14
movq 0x8(%r13), %rbx
leaq 0x7b48(%rip), %rsi      # 0xa3f7
movq %rbx, %rdi
callq 0x2460
testl %eax, %eax
movq %r14, 0x18(%rsp)
je 0x3359
leaq 0x7d2c(%rip), %rsi      # 0xa5f7
movq %rbx, %rdi
callq 0x2460
testl %eax, %eax
jne 0x3376
movq %r14, %rdi
callq 0x590a
testq %rax, %rax
jne 0x28f6
leaq 0x78b5(%rip), %rdi      # 0xa1a4
xorl %eax, %eax
callq 0x22e0
callq 0x2060
andl $0x0, (%rax)
callq 0x7fe3
movq %rax, 0x8(%rsp)
testq %rax, %rax
je 0x3127
leaq 0x100(%rsp), %r15
xorl %r13d, %r13d
xorl %r12d, %r12d
pushq $0x1
popq %rbp
movq 0x8(%rsp), %rax
movq %rax, 0x20(%rsp)
orl %r13d, %r12d
jne 0x2a62
movq %r15, %rdi
pushq $0x27
popq %rsi
leaq 0x879e(%rip), %rdx      # 0xb0e0
movl %ebp, 0x10(%rsp)
movl %ebp, %ecx
xorl %eax, %eax
callq 0x2540
movq (%r14), %rdi
movzwl 0x10(%r14), %esi
callq 0x70dc
testq %rax, %rax
je 0x3127
movq %rax, %rbx
movq 0x8(%r14), %rdx
movq %rax, %rdi
movq %r15, %rbp
movq %r15, %rsi
leaq 0x7b09(%rip), %rcx      # 0xa485
leaq 0x7a7d(%rip), %r8       # 0xa400
callq 0x7b3c
xorl %r15d, %r15d
cmpl $0xc8, %eax
je 0x29bc
movl $0x0, %r14d
movl $0x0, %r13d
cmpl $0x12e, %eax            # imm = 0x12E
je 0x29db
cmpl $0x191, %eax            # imm = 0x191
jne 0x29c4
leaq 0x7a57(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x29d4
xorl %r14d, %r14d
xorl %r13d, %r13d
jmp 0x29db
leaq 0x7cf0(%rip), %rdi      # 0xa6bb
movl %eax, %esi
xorl %eax, %eax
callq 0x22e0
movb $0x1, %r14b
pushq $0x1
popq %r13
xorl %ecx, %ecx
movl %r15d, %r12d
orb %r14b, %cl
testb $0x1, %cl
jne 0x2a26
movq %rbx, %rdi
callq 0x764f
testq %rax, %rax
je 0x2a23
xorl %r15d, %r15d
cmpb $0x5b, (%rax)
sete %cl
jne 0x29dd
cmpb $0x5d, 0x1(%rax)
pushq $0x1
popq %r15
je 0x29dd
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0x8047
xorl %r13d, %r13d
testq %rax, %rax
sete %r13b
jmp 0x2a26
xorl %r13d, %r13d
movl %r13d, %eax
orl %r12d, %eax
movq 0x18(%rsp), %r14
movq %rbp, %r15
jne 0x2a4f
movq 0x20(%rsp), %rdi
callq 0x8772
xorl %r13d, %r13d
movq %rax, 0x20(%rsp)
testq %rax, %rax
sete %r13b
movl 0x10(%rsp), %ebp
movq %rbx, %rdi
callq 0x72d8
incl %ebp
jmp 0x292c
testl %r13d, %r13d
jne 0x3403
xorl %r15d, %r15d
leaq 0x7dcd(%rip), %r14      # 0xa842
leaq 0x7ddd(%rip), %rbx      # 0xa859
movq 0x8(%rsp), %rax
testq %rax, %rax
je 0x310f
cmpb $0x3, (%rax)
jne 0x2b8b
movq %rax, 0x10(%rsp)
leaq 0x10(%rax), %r12
movq (%r12), %r12
testq %r12, %r12
je 0x2b86
movq %r12, %rdi
movq %r14, %rsi
callq 0x871d
testq %rax, %rax
je 0x2b7d
movq %rax, %r13
testq %r15, %r15
je 0x2adb
movq %r15, %rdi
callq 0x618e
testq %rax, %rax
je 0x2b94
movq %rax, %rbp
jmp 0x2af7
xorl %edi, %edi
callq 0x618e
movl $0x0, %r15d
testq %rax, %rax
je 0x2b94
movq %rax, %rbp
movq %rax, %r15
movq 0x10(%r13), %rdi
leaq 0x786c(%rip), %rsi      # 0xa36e
callq 0x871d
testq %rax, %rax
je 0x2b1e
movq 0x10(%rax), %rdi
callq 0x2580
movq %rax, 0x8(%rbp)
testq %rax, %rax
je 0x2b94
movq 0x10(%r13), %rdi
leaq 0x7d26(%rip), %rsi      # 0xa84f
callq 0x871d
testq %rax, %rax
je 0x2b3c
movq 0x10(%rax), %rax
movl (%rax), %eax
movl %eax, (%rbp)
movq 0x10(%r13), %rdi
leaq 0x7ca4(%rip), %rsi      # 0xa7eb
callq 0x871d
testq %rax, %rax
je 0x2b5a
movq 0x10(%rax), %rax
movl (%rax), %eax
movl %eax, 0x4(%rbp)
movq 0x10(%r13), %rdi
movq %rbx, %rsi
callq 0x871d
testq %rax, %rax
je 0x2b7d
movq 0x10(%rax), %rdi
callq 0x2580
movq %rax, 0x10(%rbp)
testq %rax, %rax
je 0x2b94
addq $0x18, %r12
jmp 0x2a9c
movq 0x10(%rsp), %rax
movq 0x18(%rax), %rax
jmp 0x2a81
movq 0x8(%rsp), %rdi
callq 0x8002
testq %r15, %r15
je 0x3127
movq 0x8(%r15), %rdi
callq 0x23d0
movq 0x10(%r15), %rdi
callq 0x23d0
movq 0x18(%r15), %r15
jmp 0x2b9e
cmpl $0x1, %ebx
jle 0x4457
movq 0x8(%r13), %r14
leaq 0x74ef(%rip), %rsi      # 0xa0c2
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
je 0x2c47
leaq 0x7511(%rip), %rsi      # 0xa0f7
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x4457
cmpl $0x2, %ebx
je 0x4457
movq 0x10(%r13), %rdi
leaq 0x74f1(%rip), %rsi      # 0xa0fb
callq 0x2510
testq %rax, %rax
je 0x4457
movq %rax, %r14
leaq 0x74d9(%rip), %rsi      # 0xa0fb
xorl %edi, %edi
callq 0x2510
testq %rax, %rax
je 0x4457
movq %rax, %r15
cmpl $0x4, %ebx
jb 0x2cea
movq 0x18(%r13), %r12
jmp 0x2cfb
testb %r12b, %r12b
jne 0x3541
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %r14
movq (%rax), %rdi
movzwl 0x10(%rax), %esi
callq 0x70dc
testq %rax, %rax
je 0x2cd6
movq %rax, %rbx
movq 0x8(%r14), %rdx
leaq 0x784b(%rip), %rax      # 0xa4cb
movq %rax, (%rsp)
leaq 0x784f(%rip), %rsi      # 0xa4da
leaq 0x7805(%rip), %rcx      # 0xa497
leaq 0x7767(%rip), %r8       # 0xa400
pushq $0x3
popq %r9
movq %rbx, %rdi
callq 0x7bca
cmpl $-0x1, %eax
je 0x2cce
cmpl $0x12e, %eax            # imm = 0x12E
sete %cl
cmpl $0x12c, %eax            # imm = 0x12C
setl %dl
orb %cl, %dl
jne 0x2cce
leaq 0x79f6(%rip), %rdi      # 0xa6bb
movl %eax, %esi
xorl %eax, %eax
callq 0x22e0
movq %rbx, %rdi
callq 0x72d8
xorl %eax, %eax
addq $0x398, %rsp            # imm = 0x398
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
callq 0x8f73
movq %rax, %r12
testq %rax, %rax
je 0x354d
movq %r14, 0x38(%rsp)
pushq $0x60
popq %rdi
callq 0x2430
testq %rax, %rax
je 0x34b5
movq %rax, %rbx
andq $0x0, 0x8(%rax)
movw $0x1bb, 0x10(%rax)      # imm = 0x1BB
andq $0x0, 0x58(%rax)
xorps %xmm0, %xmm0
movups %xmm0, 0x40(%rax)
movq %r15, %rdi
callq 0x2580
movq %rbx, 0x40(%rsp)
movq %rax, (%rbx)
testq %rax, %rax
je 0x34c1
leaq 0x8305(%rip), %rsi      # 0xb050
leaq 0x70(%rsp), %rdi
movl $0x81, %edx
callq 0x2200
callq 0x2060
movq %rax, 0x48(%rsp)
andl $0x0, (%rax)
movq %r15, 0x30(%rsp)
movq %r15, %rdi
movl $0x1bb, %esi            # imm = 0x1BB
callq 0x70dc
testq %rax, %rax
je 0x2f34
movq %rax, %r14
leaq 0x7912(%rip), %rsi      # 0xa69e
leaq 0x7704(%rip), %rcx      # 0xa497
leaq 0x7666(%rip), %r8       # 0xa400
movq %rax, %rdi
xorl %edx, %edx
callq 0x7b3c
cmpl $0xc8, %eax
jne 0x3174
movq %r12, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
leaq 0x7913(%rip), %rbp      # 0xa6d7
pushq $0xb
popq %rbx
leaq 0x7915(%rip), %r15      # 0xa6e3
xorl %r12d, %r12d
movq %r14, %rdi
callq 0x764f
testq %rax, %rax
je 0x2ed7
testq %r12, %r12
jne 0x2ed7
movq %rax, %r13
movq %rax, %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x2170
testl %eax, %eax
je 0x2ec2
movq %r13, %rdi
leaq 0x78eb(%rip), %rsi      # 0xa6f9
callq 0x20d0
movl $0x0, %r12d
testq %rax, %rax
je 0x2dd1
movq %rax, %rdi
leaq 0x78eb(%rip), %rsi      # 0xa713
callq 0x20d0
movl $0x0, %r12d
testq %rax, %rax
je 0x2dd1
movzbl (%rax), %ecx
testl %ecx, %ecx
je 0x2e49
cmpl $0x3d, %ecx
je 0x2e49
incq %rax
jmp 0x2e38
xorl %edx, %edx
cmpb $0x3d, %cl
sete %dl
xorl %ecx, %ecx
cmpb $0x22, (%rax,%rdx)
sete %cl
addq %rdx, %rax
addq %rcx, %rax
movq %rax, %rcx
movzbl (%rcx), %edx
testl %edx, %edx
je 0x2e74
cmpl $0x22, %edx
je 0x2e74
incq %rcx
jmp 0x2e63
movb $0x0, (%rcx)
movq %rax, %rdi
callq 0x2580
movq %rax, %r12
jmp 0x2dd1
movq %rax, %r12
movq %rax, %rdi
leaq 0x7852(%rip), %rsi      # 0xa6e6
pushq $0x12
popq %rdx
callq 0x2170
movl $0x0, %r13d
testl %eax, %eax
jne 0x2ec2
movq %r12, %rdi
callq 0x2580
movl $0x0, %r13d
movq %rax, 0x20(%rsp)
testq %rax, %rax
je 0x3159
movq %r13, %rdi
movq %r15, %rsi
callq 0x2510
testq %rax, %rax
jne 0x2e87
jmp 0x2dce
movq %r14, %rdi
callq 0x72d8
testq %r12, %r12
jne 0x2ef2
leaq 0x782f(%rip), %rdi      # 0xa71a
xorl %eax, %eax
callq 0x22e0
cmpq $0x0, 0x20(%rsp)
movq 0x38(%rsp), %rbx
jne 0x2f0d
leaq 0x7834(%rip), %rdi      # 0xa73a
xorl %eax, %eax
callq 0x22e0
movq %rbx, %rdi
callq 0x79e5
movq %rax, %rbx
testq %rax, %rax
je 0x2f2c
movq 0x10(%rsp), %rdi
callq 0x79e5
testq %rax, %rax
jne 0x2f40
movq %rbx, %rdi
callq 0x23d0
leaq 0x71a2(%rip), %rsi      # 0xa0dd
jmp 0x312e
movq %rax, %r14
testq %r12, %r12
leaq 0x8bc1(%rip), %rcx      # 0xbb0e
cmovneq %r12, %rcx
leaq 0x70(%rsp), %rdi
movq %rbx, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0x918a
movq %rax, %r15
movq %rbx, %rdi
callq 0x23d0
movq %r14, %rdi
callq 0x23d0
movq %r15, 0x28(%rsp)
testq %r15, %r15
je 0x2f34
leaq 0x775c(%rip), %r13      # 0xa6e3
leaq 0x77c8(%rip), %rbp      # 0xa756
pushq $0x14
popq %rbx
xorl %r14d, %r14d
testl %r14d, %r14d
je 0x2fa1
pushq $0x2
popq %rdi
callq 0x21f0
movq 0x30(%rsp), %rdi
movl $0x1bb, %esi            # imm = 0x1BB
callq 0x70dc
testq %rax, %rax
je 0x3189
movq %rax, %r15
movq 0x28(%rsp), %rax
movq %rax, (%rsp)
movq %r15, %rdi
leaq 0x76cf(%rip), %rsi      # 0xa69e
movq 0x20(%rsp), %rdx
leaq 0x74bc(%rip), %rcx      # 0xa497
leaq 0x741e(%rip), %r8       # 0xa400
pushq $0x3
popq %r9
callq 0x7bca
cmpl $0x190, %eax            # imm = 0x190
jge 0x3174
movq %r14, 0x8(%rsp)
cmpl $-0x1, %eax
je 0x2f34
movq $0x0, 0x10(%rsp)
movq %r15, 0x18(%rsp)
movq %r15, %rdi
callq 0x764f
movq %rax, %r14
testq %rax, %rax
movq 0x10(%rsp), %rax
je 0x30a0
testq %rax, %rax
jne 0x30a0
movq %r14, %rdi
leaq 0x76a1(%rip), %rsi      # 0xa6d7
pushq $0xb
popq %rdx
callq 0x2170
movl $0x0, %ecx
movq %rcx, 0x10(%rsp)
testl %eax, %eax
jne 0x3012
xorl %eax, %eax
movq %rax, 0x10(%rsp)
movq %r14, %rdi
movq %r13, %rsi
callq 0x2510
testq %rax, %rax
je 0x3096
movq %rax, %r15
movq %rax, %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x2170
movl $0x0, %r14d
testl %eax, %eax
jne 0x3053
movq %r15, %rdi
callq 0x2580
movl $0x0, %r14d
testq %rax, %rax
jne 0x304e
jmp 0x3138
movq 0x18(%rsp), %r15
jmp 0x3012
movq %r15, %rdi
callq 0x72d8
movq 0x10(%rsp), %rax
movq 0x8(%rsp), %r14
cmpl $0x8, %r14d
ja 0x30c4
incl %r14d
testq %rax, %rax
je 0x2f94
movq 0x28(%rsp), %rdi
callq 0x23d0
movq 0x20(%rsp), %rdi
callq 0x23d0
movq %r12, %rdi
callq 0x23d0
movq 0x10(%rsp), %rax
testq %rax, %rax
jne 0x3193
movq 0x48(%rsp), %rax
cmpl $0x0, (%rax)
jne 0x2f34
leaq 0x7668(%rip), %rdi      # 0xa76b
xorl %eax, %eax
callq 0x22e0
jmp 0x2f34
movq 0x8(%rsp), %rdi
callq 0x8002
movq 0x18(%rsp), %rdi
movq %r15, 0x18(%rdi)
testq %r15, %r15
jne 0x314d
leaq 0x708d(%rip), %rsi      # 0xa1bb
pushq $0x1
popq %rdi
xorl %eax, %eax
callq 0x25a0
leaq 0x7550(%rip), %rdi      # 0xa68f
xorl %eax, %eax
callq 0x2110
movq 0x18(%rsp), %rdi
jmp 0x316a
callq 0x5b74
xorl %edi, %edi
callq 0x23f0
leaq 0x752f(%rip), %rdi      # 0xa68f
xorl %eax, %eax
callq 0x2110
movq %r14, %rdi
callq 0x72d8
jmp 0x2f34
leaq 0x7532(%rip), %rdi      # 0xa6ad
movl %eax, %esi
xorl %eax, %eax
callq 0x22e0
jmp 0x2f34
movq 0x28(%rsp), %rdi
jmp 0x2f2f
movq 0x40(%rsp), %r14
movq %rax, 0x8(%r14)
movq %r14, %rdi
callq 0x5d5b
cmpl $-0x1, %eax
jne 0x31b6
movq %r14, %rdi
callq 0x5d3d
jmp 0x2f34
movq 0x8(%r14), %rdi
callq 0x2580
leaq 0xc24a(%rip), %rbx      # 0xf410
movq %rax, 0x18(%rbx)
testq %rax, %rax
je 0x31f6
movq (%r14), %rdi
callq 0x2580
movq %rax, 0x10(%rbx)
testq %rax, %rax
je 0x31f6
movq 0x38(%rsp), %r14
movq %r14, %rdi
callq 0x2580
movq %rax, 0x8(%rbx)
testq %rax, %rax
jne 0x3209
leaq 0x7492(%rip), %rdi      # 0xa68f
xorl %eax, %eax
callq 0x2110
jmp 0x2f34
movl $0x1bb, (%rbx)          # imm = 0x1BB
leaq 0x7482(%rip), %rdx      # 0xa698
leaq 0x100(%rsp), %rbx
movl $0x100, %esi            # imm = 0x100
movq %rbx, %rdi
movq %r14, %rcx
movq 0x30(%rsp), %r8
xorl %eax, %eax
callq 0x2540
movq %rbx, %rdi
callq 0x6a2f
jmp 0x3152
leaq 0x6ec6(%rip), %rsi      # 0xa10f
jmp 0x312e
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %rbx
movq 0x8(%r13), %r14
leaq 0x85d0(%rip), %rsi      # 0xb843
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x3559
leaq 0x6ea9(%rip), %rsi      # 0xa133
jmp 0x3577
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq 0x8(%r13), %rsi
movq %rax, %rdi
callq 0x55c2
testq %rax, %rax
jne 0x3584
movq 0x8(%r13), %rdx
leaq 0x6ec4(%rip), %rsi      # 0xa18a
pushq $0x1
popq %rdi
xorl %eax, %eax
callq 0x25a0
leaq 0x6f00(%rip), %rsi      # 0xa1d7
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x341e
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %r14
movq 0x8(%r13), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x2470
movq %rax, %rbx
callq 0x2060
andl $0x0, (%rax)
leaq 0x7298(%rip), %rdi      # 0xa5b9
movl %ebx, %esi
xorl %eax, %eax
callq 0x918a
testq %rax, %rax
je 0x3b71
movq %rax, %r15
movq (%r14), %rdi
movzwl 0x10(%r14), %esi
callq 0x70dc
testq %rax, %rax
jne 0x380a
movq %r15, %rdi
callq 0x23d0
jmp 0x3b71
movq %r14, %rdi
callq 0x590a
testq %rax, %rax
jne 0x34a7
leaq 0x6e33(%rip), %rsi      # 0xa1a4
jmp 0x312e
leaq 0x72d0(%rip), %rsi      # 0xa64d
movq %rbx, %rdi
callq 0x2460
testl %eax, %eax
jne 0x4457
leaq 0x7d64(%rip), %rdi      # 0xb0f8
xorl %eax, %eax
callq 0x24d0
movq 0x18(%rsp), %r13
addq $0x58, %r13
leaq 0x100(%rsp), %rbx
pushq $0x32
popq %r14
leaq 0x7dc1(%rip), %r15      # 0xb178
leaq 0x7dd6(%rip), %r12      # 0xb194
movq (%r13), %r13
testq %r13, %r13
je 0x3152
movq 0x8(%r13), %rsi
movq %rbx, %rdi
movq %r14, %rdx
callq 0x2050
andl $0x0, 0x150(%rsp)
movq %r15, %rdi
movq %rbx, %rsi
xorl %eax, %eax
callq 0x24d0
movl (%r13), %esi
movq %r12, %rdi
xorl %eax, %eax
callq 0x24d0
addq $0x10, %r13
jmp 0x33be
movq 0x8(%rsp), %rdi
callq 0x8002
jmp 0x3127
leaq 0x6c8e(%rip), %rsi      # 0xa0a7
jmp 0x312e
leaq 0x70ae(%rip), %rsi      # 0xa4d3
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x34cb
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %r14
movq 0x8(%r13), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x2470
movq %rax, %rbx
callq 0x2060
andl $0x0, (%rax)
leaq 0x715d(%rip), %rdi      # 0xa5cc
movl %ebx, %esi
xorl %eax, %eax
callq 0x918a
testq %rax, %rax
je 0x4061
movq %rax, %r15
movq (%r14), %rdi
movzwl 0x10(%r14), %esi
callq 0x70dc
testq %rax, %rax
jne 0x39a4
movq %r15, %rdi
callq 0x23d0
jmp 0x4061
movq 0x18(%rsp), %rax
movq 0x20(%rax), %rdi
jmp 0x3587
leaq 0x71ca(%rip), %rdi      # 0xa686
jmp 0x31fd
movq 0x40(%rsp), %rdi
jmp 0x31ac
leaq 0x6d36(%rip), %rsi      # 0xa208
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x3591
cmpl $0x2, %ebx
jle 0x4457
callq 0x4ea7
movq %rax, 0x30(%rsp)
testq %rax, %rax
je 0x2f34
movq 0x8(%r13), %r14
leaq 0x6d06(%rip), %rsi      # 0xa20f
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
je 0x3933
movq 0x30(%rsp), %rdi
movq %r14, %rsi
callq 0x5c73
cmpl $-0x1, %eax
jne 0x3933
leaq 0x6ce0(%rip), %rsi      # 0xa216
pushq $0x1
popq %rdi
movq %r14, %rdx
jmp 0x32c9
leaq 0x6b80(%rip), %rsi      # 0xa0c8
jmp 0x312e
leaq 0x6ba9(%rip), %rsi      # 0xa0fd
jmp 0x312e
leaq 0x6bdc(%rip), %rsi      # 0xa13c
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x3694
leaq 0x6bc4(%rip), %rsi      # 0xa13b
movq %rbx, %rdi
callq 0x4f49
jmp 0x3152
movq %rax, %rdi
callq 0x585e
jmp 0x3152
leaq 0x6cac(%rip), %rsi      # 0xa244
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x36d0
cmpl $0x4, %ebx
jle 0x4457
callq 0x4ea7
movq %rax, 0x28(%rsp)
testq %rax, %rax
je 0x2f34
movl %ebx, %eax
movq %rax, 0x30(%rsp)
decl %ebx
pushq $0x3
popq %r15
leaq 0x8536(%rip), %rax      # 0xbb0e
movq %rax, 0x38(%rsp)
movq $0x0, 0x20(%rsp)
movq $0x0, 0x8(%rsp)
cmpq 0x30(%rsp), %r15
jae 0x3f4f
movq (%r13,%r15,8), %rdi
callq 0x8791
testq %rax, %rax
je 0x3fc2
movq %rax, %r14
movq %rax, %rdi
callq 0x2150
movslq 0x20(%rsp), %rcx
addq %rcx, %rax
addq $0x4, %rax
movq %rax, 0x20(%rsp)
movslq %eax, %rsi
movq 0x8(%rsp), %rdi
callq 0x2550
testq %rax, %rax
je 0x3fcb
cmpq $0x3, %r15
jne 0x3648
movb $0x0, (%rax)
movq %rax, %rdi
movq %rax, %r12
callq 0x2150
movq %r12, 0x8(%rsp)
addq %rax, %r12
cmpq %rbx, %r15
leaq 0x84a9(%rip), %rcx      # 0xbb0e
leaq 0x6eaf(%rip), %rax      # 0xa51b
cmovbq %rax, %rcx
movq %r12, %rdi
leaq 0x6beb(%rip), %rsi      # 0xa265
movq %r14, %rdx
xorl %eax, %eax
callq 0x20c0
movq %r14, %rdi
callq 0x23d0
incq %r15
jmp 0x35ef
leaq 0x6aaa(%rip), %rsi      # 0xa145
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x4457
leaq 0xbd5e(%rip), %rax      # 0xf410
movq 0x8(%rax), %rcx
testq %rcx, %rcx
je 0x36c4
cmpb $0x0, (%rcx)
jne 0x3b30
leaq 0x6a83(%rip), %rsi      # 0xa14e
jmp 0x312e
leaq 0x6bab(%rip), %rsi      # 0xa282
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x3872
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %rbx
movq 0x8(%r13), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x2470
movq %rax, %r14
movaps 0x78a7(%rip), %xmm0     # 0xafc0
movaps %xmm0, 0x100(%rsp)
movl $0x7d2273, 0x10f(%rsp) # imm = 0x7D2273
callq 0x2060
movq %rax, %r12
andl $0x0, (%rax)
leaq 0x6e8e(%rip), %rdi      # 0xa5cc
movl %r14d, %esi
xorl %eax, %eax
callq 0x918a
movq %rax, 0xbc79(%rip)      # 0xf3c8
testq %rax, %rax
je 0x453d
movq (%rbx), %r14
movzwl 0x10(%rbx), %ebp
movq %r14, %rdi
movl %ebp, %esi
callq 0x70dc
testq %rax, %rax
je 0x453d
movq %rax, %r15
movq 0xbc4c(%rip), %rsi      # 0xf3c8
movq 0x8(%rbx), %rbx
leaq 0x6dda(%rip), %rcx      # 0xa561
leaq 0x6c72(%rip), %r8       # 0xa400
movq %rax, %rdi
movq %rbx, %rdx
callq 0x7b3c
movl %eax, %r13d
movq 0xbc25(%rip), %rdi      # 0xf3c8
callq 0x23d0
cmpl $-0x1, %r13d
je 0x4535
cmpl $0x191, %r13d           # imm = 0x191
je 0x43ec
cmpl $0xc8, %r13d
jne 0x43f8
movq %r15, %rdi
callq 0x764f
movq %rax, 0xbbe5(%rip)      # 0xf3c0
testq %rax, %rax
je 0x4520
cmpb $0x7b, (%rax)
jne 0x37cc
callq 0x7fe3
testq %rax, %rax
jne 0x4549
leaq 0x6e24(%rip), %rdi      # 0xa622
xorl %eax, %eax
callq 0x2110
jmp 0x4535
movq %rax, %rbx
movq 0x8(%r14), %rdx
leaq 0x6db1(%rip), %rax      # 0xa5c9
movq %rax, (%rsp)
leaq 0x6bdd(%rip), %r8       # 0xa400
pushq $0x1
popq %r9
movq %rbx, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %ebp
movq %r15, %rdi
callq 0x23d0
cmpl $-0x1, %ebp
je 0x3b69
cmpl $0xc9, %ebp
je 0x4d12
cmpl $0x191, %ebp            # imm = 0x191
jne 0x3b59
leaq 0x6ba4(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x3b69
leaq 0x6a8b(%rip), %rsi      # 0xa304
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x39fb
cmpl $0x2, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %r14
movq 0x8(%r13), %r12
leaq 0x69f3(%rip), %rsi      # 0xa2a1
movq %r12, %rdi
callq 0x2460
testl %eax, %eax
jne 0x4174
movq 0x10(%r13), %rbx
callq 0x2060
andl $0x0, (%rax)
decq %rbx
cmpb $0x0, 0x1(%rbx)
leaq 0x1(%rbx), %rbx
je 0x38cd
movq %rbx, %rdi
callq 0x79e5
testq %rax, %rax
je 0x4991
movq %rax, %rbx
leaq 0x6d63(%rip), %rdi      # 0xa655
movq %rax, %rsi
xorl %eax, %eax
callq 0x918a
movq %rax, %r15
movq %rbx, %rdi
callq 0x23d0
testq %r15, %r15
je 0x4991
movq (%r14), %rdi
movzwl 0x10(%r14), %esi
callq 0x70dc
testq %rax, %rax
jne 0x45a5
movq %r15, %rdi
callq 0x23d0
jmp 0x4991
testb $0x1, 0x10(%rsp)
je 0x3948
movl %ebp, %edi
xorl $0x1, %edi
callq 0x8a3b
movq 0x8(%r13), %r14
xorl %ecx, %ecx
testb $0x1, 0x18(%rsp)
cmoveq %rax, %rcx
movq %rcx, 0x28(%rsp)
leaq 0x75a1(%rip), %rsi      # 0xaf00
pushq $0x65
popq %rcx
leaq 0x70(%rsp), %rdi
rep  movsb (%rsi), %es:(%rdi)
callq 0x2060
movq %rax, 0x8(%rsp)
andl $0x0, (%rax)
leaq 0x6892(%rip), %rsi      # 0xa20f
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x3b04
movups 0x7a80(%rip), %xmm0     # 0xb414
movaps %xmm0, 0x50(%rsp)
andq $0x0, 0x60(%rsp)
jmp 0x3c4f
movq %rax, %rbx
movq 0x8(%r14), %rdx
leaq 0x6a4e(%rip), %rcx      # 0xa400
movq %rax, %rdi
movq %r15, %rsi
callq 0x7cd0
movl %eax, %ebp
movq %r15, %rdi
callq 0x23d0
cmpl $-0x1, %ebp
je 0x4059
cmpl $0x12e, %ebp            # imm = 0x12E
je 0x4d12
cmpl $0x191, %ebp            # imm = 0x191
jne 0x4049
leaq 0x6a1b(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x4059
leaq 0x6909(%rip), %rsi      # 0xa30b
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x3b7d
cmpl $0x3, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %rbx
movq 0x8(%r13), %rdi
leaq 0x68ee(%rip), %rsi      # 0xa325
callq 0x2460
testl %eax, %eax
jne 0x4457
movq 0x18(%r13), %r14
leaq 0x67c0(%rip), %rsi      # 0xa20f
movq %r14, %rdi
callq 0x2460
movl %eax, %ebp
testl %eax, %eax
je 0x3a74
leaq 0x68ab(%rip), %rsi      # 0xa30f
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x4457
xorl %r14d, %r14d
testl %ebp, %ebp
sete %r14b
movq 0x10(%r13), %r15
movaps 0x7578(%rip), %xmm0     # 0xb000
leaq 0x100(%rsp), %r12
movaps %xmm0, 0x20(%r12)
movaps 0x7553(%rip), %xmm0     # 0xaff0
movaps %xmm0, 0x10(%r12)
movaps 0x7536(%rip), %xmm0     # 0xafe0
movaps %xmm0, (%r12)
movabsq $0x64253d64352525, %rax # imm = 0x64253D64352525
movq %rax, 0x30(%r12)
callq 0x2060
andl $0x0, (%rax)
movq %r12, %rdi
movq %r15, %rsi
movl %r14d, %edx
xorl %eax, %eax
callq 0x918a
testq %rax, %rax
je 0x49b5
movq %rax, %r15
movq (%rbx), %rdi
movzwl 0x10(%rbx), %esi
callq 0x70dc
testq %rax, %rax
jne 0x460a
movq %r15, %rdi
callq 0x23d0
jmp 0x49b5
movq 0x30(%rsp), %rdi
movq %r14, %rsi
callq 0x5c73
cmpl $-0x1, %eax
jne 0x3c37
leaq 0x66f5(%rip), %rdi      # 0xa216
movq %r14, %rsi
xorl %eax, %eax
callq 0x22e0
jmp 0x44a6
leaq 0x6646(%rip), %rdx      # 0xa17d
leaq 0x100(%rsp), %r14
movl $0x100, %esi            # imm = 0x100
movq %r14, %rdi
xorl %eax, %eax
callq 0x2540
movq %rbx, %rdi
movq %r14, %rsi
jmp 0x357a
leaq 0x6b5b(%rip), %rdi      # 0xa6bb
movl %ebp, %esi
xorl %eax, %eax
callq 0x22e0
movq %rbx, %rdi
callq 0x72d8
leaq 0x6664(%rip), %rsi      # 0xa1dc
jmp 0x312e
leaq 0x6669(%rip), %rsi      # 0xa1ed
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x406d
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %rbx
movq 0x8(%r13), %r14
leaq 0x6656(%rip), %rsi      # 0xa20f
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
je 0x3bd9
movq %rbx, %rdi
movq %r14, %rsi
callq 0x5c73
cmpl $-0x1, %eax
je 0x352f
movl %ebp, %edi
xorl $0x1, %edi
callq 0x8a3b
movq %rax, %r14
movq 0x8(%r13), %r15
leaq 0x722f(%rip), %rsi      # 0xae20
pushq $0x5a
popq %rcx
leaq 0x100(%rsp), %rdi
rep  movsb (%rsi), %es:(%rdi)
callq 0x2060
andl $0x0, (%rax)
leaq 0x6602(%rip), %rsi      # 0xa20f
movq %r15, %rdi
callq 0x2460
testl %eax, %eax
jne 0x445c
movups 0x77f0(%rip), %xmm0     # 0xb414
movaps %xmm0, 0x70(%rsp)
andq $0x0, 0x80(%rsp)
jmp 0x480f
leaq 0x7b25(%rip), %rdx      # 0xb763
leaq 0x50(%rsp), %rdi
pushq $0x18
popq %rsi
movl %eax, %ecx
xorl %eax, %eax
callq 0x2540
addq $0x10, %r13
xorl %eax, %eax
movq 0x8(%rsp), %rbx
cmpl $0x17, %eax
ja 0x3ec8
movq (%r13), %r15
testq %r15, %r15
je 0x3ec8
movq %rax, 0x18(%rsp)
cltq
movq %rax, 0x20(%rsp)
andl $0x0, (%rbx)
movq %r15, %rdi
pushq $0x2f
popq %rsi
callq 0x2310
leaq 0x1(%rax), %rdi
testq %rax, %rax
cmoveq %r15, %rdi
callq 0x79e5
testq %rax, %rax
je 0x3ded
movq %rax, %r14
leaq 0x6875(%rip), %rdi      # 0xa522
movq %rax, %rsi
xorl %eax, %eax
callq 0x918a
movq %rax, %r12
movq %r14, %rdi
callq 0x23d0
testq %r12, %r12
je 0x3ded
movq 0x30(%rsp), %rbx
movq (%rbx), %rdi
movzwl 0x10(%rbx), %esi
callq 0x70dc
testq %rax, %rax
je 0x3d2f
movq %rax, %r14
movq 0x8(%rbx), %rdx
movq %rax, %rdi
movq %r12, %rsi
leaq 0x686c(%rip), %rcx      # 0xa561
leaq 0x6704(%rip), %r8       # 0xa400
movq %r15, %r9
callq 0x7d59
movl %eax, %r15d
movq %r12, %rdi
callq 0x23d0
cmpl $-0x1, %r15d
je 0x3d39
cmpl $0x191, %r15d           # imm = 0x191
movq 0x8(%rsp), %rbx
jne 0x3d4b
leaq 0x66e0(%rip), %rdi      # 0xa40a
jmp 0x3dde
movq %r12, %rdi
callq 0x23d0
jmp 0x3d41
movq %r14, %rdi
callq 0x72d8
movq 0x8(%rsp), %rbx
jmp 0x3ded
leal -0xca(%r15), %eax
cmpl $-0x2, %eax
jae 0x3d6a
leaq 0x695d(%rip), %rdi      # 0xa6bb
movl %r15d, %esi
xorl %eax, %eax
callq 0x22e0
jmp 0x3de5
movq %r14, %rdi
callq 0x764f
testq %rax, %rax
je 0x3dd7
movq %rax, %r12
cmpb $0x7b, (%rax)
jne 0x3d6a
callq 0x7fe3
testq %rax, %rax
je 0x3de5
movq %rax, %r15
movq %rax, %rdi
movq %r12, %rsi
callq 0x8047
movq %rax, %r12
movq %r14, %rdi
callq 0x72d8
testq %r12, %r12
je 0x3e1a
movq %r15, %r14
addq $0x10, %r14
leaq 0x67bd(%rip), %rbx      # 0xa572
movq (%r14), %r14
testq %r14, %r14
je 0x3e77
movq 0x8(%r14), %rdi
movq %rbx, %rsi
callq 0x2460
testl %eax, %eax
je 0x3e27
addq $0x18, %r14
jmp 0x3db5
leaq 0x667d(%rip), %rdi      # 0xa45b
xorl %eax, %eax
callq 0x22e0
movq %r14, %rdi
callq 0x72d8
movq 0x20(%rsp), %rax
orl $-0x1, 0x330(%rsp,%rax,4)
movq (%r13), %rsi
leaq 0x66f6(%rip), %rdi      # 0xa4fb
xorl %eax, %eax
callq 0x22e0
addq $0x8, %r13
movq 0x18(%rsp), %rax
jmp 0x3c5a
movq %r15, %rdi
callq 0x8002
jmp 0x3d41
addq $0x10, %r14
leaq 0x6745(%rip), %rbx      # 0xa577
movq (%r14), %r14
testq %r14, %r14
je 0x3e77
movq 0x8(%r14), %rdi
movq %rbx, %rsi
callq 0x2460
testl %eax, %eax
je 0x3e50
addq $0x18, %r14
jmp 0x3e32
addq $0x10, %r14
movq (%r14), %r14
testq %r14, %r14
je 0x3e77
movq 0x8(%r14), %rax
cmpb $0x69, (%rax)
jne 0x3e71
cmpb $0x64, 0x1(%rax)
jne 0x3e71
cmpb $0x0, 0x2(%rax)
je 0x3ebf
addq $0x18, %r14
jmp 0x3e54
pushq $-0x1
popq %r14
movq %r15, %rdi
callq 0x8002
cmpl $-0x1, %r14d
je 0x3eac
movq 0x20(%rsp), %rax
movl %r14d, 0x330(%rsp,%rax,4)
movq 0x18(%rsp), %rax
incl %eax
movq %rax, 0x18(%rsp)
movq 0x8(%rsp), %rbx
jmp 0x3e0c
leaq 0x66ca(%rip), %rdi      # 0xa57d
xorl %eax, %eax
callq 0x22e0
jmp 0x3d41
movq 0x10(%r14), %rax
movl (%rax), %r14d
jmp 0x3e7b
testl %eax, %eax
jle 0x44a6
movq %rax, %rcx
leal -0x1(%rax), %ebx
movl %ecx, %r15d
leaq 0x663d(%rip), %r13      # 0xa51d
leaq 0x100(%rsp), %r14
xorl %r12d, %r12d
xorl %eax, %eax
cmpq %r12, %r15
je 0x3f34
cltq
leaq (%rsp,%rax), %rdi
addq $0x100, %rdi            # imm = 0x100
movl $0x228, %esi            # imm = 0x228
subq %rax, %rsi
cmpq %rbx, %r12
movq %r13, %rdx
leaq 0x6603(%rip), %rax      # 0xa517
cmovbq %rax, %rdx
movl 0x330(%rsp,%r12,4), %ecx
xorl %eax, %eax
callq 0x2540
movq %r14, %rdi
callq 0x2150
incq %r12
jmp 0x3eed
cmpq $0x0, 0x28(%rsp)
jne 0x3fdc
leaq 0x7bc7(%rip), %rsi      # 0xbb0e
xorl %r14d, %r14d
jmp 0x3ff5
testb $0x1, 0x10(%rsp)
je 0x3f60
movl %ebp, %edi
xorl $0x1, %edi
callq 0x8a3b
movq 0x8(%r13), %r14
xorl %r15d, %r15d
testb $0x1, 0x18(%rsp)
cmoveq %rax, %r15
movq 0x10(%r13), %rbx
leaq 0x6f05(%rip), %rsi      # 0xae80
pushq $0x10
popq %rcx
leaq 0x100(%rsp), %rdi
rep  movsq (%rsi), %es:(%rdi)
callq 0x2060
andl $0x0, (%rax)
leaq 0x6277(%rip), %rsi      # 0xa20f
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x4148
movups 0x7465(%rip), %xmm0     # 0xb414
movaps %xmm0, 0x70(%rsp)
andq $0x0, 0x80(%rsp)
jmp 0x42bb
leaq 0x6280(%rip), %rsi      # 0xa249
jmp 0x3fd2
leaq 0x6289(%rip), %rsi      # 0xa25b
pushq $0x1
popq %rdi
xorl %eax, %eax
callq 0x2250
movq 0x28(%rsp), %rdi
callq 0x8791
movq %rax, %rsi
movq %rax, %r14
testq %rax, %rax
je 0x44a6
leaq 0x70(%rsp), %rdi
leaq 0x50(%rsp), %rdx
leaq 0x100(%rsp), %rcx
xorl %eax, %eax
callq 0x918a
movq %rax, %r15
movq %r14, %rdi
callq 0x23d0
testq %r15, %r15
je 0x44a6
movq 0x30(%rsp), %rax
movq (%rax), %rdi
movzwl 0x10(%rax), %esi
callq 0x70dc
testq %rax, %rax
jne 0x4239
movq %r15, %rdi
callq 0x23d0
jmp 0x44a6
leaq 0x666b(%rip), %rdi      # 0xa6bb
movl %ebp, %esi
xorl %eax, %eax
callq 0x22e0
movq %rbx, %rdi
callq 0x72d8
leaq 0x618a(%rip), %rsi      # 0xa1f2
jmp 0x312e
leaq 0x62d6(%rip), %rsi      # 0xa34a
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x41b9
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %rbx
movl %ebp, %edi
xorl $0x1, %edi
callq 0x8a3b
movq %rax, %r12
movq 0x8(%r13), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x2470
movq %rax, %r14
movabsq $0x7d227325223a22, %rax # imm = 0x7D227325223A22
movq %rax, 0x106(%rsp)
movabsq $0x3a2274786574227b, %rax # imm = 0x3A2274786574227B
movq %rax, 0x100(%rsp)
callq 0x2060
andl $0x0, (%rax)
leaq 0x64b7(%rip), %rdi      # 0xa5a6
movl %r14d, %esi
xorl %eax, %eax
callq 0x918a
testq %rax, %rax
je 0x49e1
movq %rax, %r14
movq %r12, %rdi
callq 0x8791
testq %rax, %rax
je 0x413b
movq %rax, %r15
leaq 0x100(%rsp), %rdi
movq %rax, %rsi
xorl %eax, %eax
callq 0x918a
movq %rax, %r12
movq %r15, %rdi
callq 0x23d0
testq %r12, %r12
jne 0x466f
movq %r14, %rdi
callq 0x23d0
jmp 0x49e1
movq 0x28(%rsp), %rdi
movq %r14, %rsi
callq 0x5c73
cmpl $-0x1, %eax
jne 0x42a3
leaq 0x60b1(%rip), %rdi      # 0xa216
movq %r14, %rsi
xorl %eax, %eax
callq 0x22e0
jmp 0x4331
leaq 0x6602(%rip), %rsi      # 0xa77d
movq %r12, %rdi
callq 0x2460
testl %eax, %eax
jne 0x4457
cmpl $0x3, %ebx
je 0x4457
movq 0x10(%r13), %rsi
movq %r14, %rdi
callq 0x55c2
movq 0x10(%r13), %rbx
testq %rax, %rax
jne 0x46ed
leaq 0x6107(%rip), %rsi      # 0xa2bb
jmp 0x4a01
leaq 0x61c5(%rip), %rsi      # 0xa385
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x433d
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %r12
movq %rax, %rdi
callq 0x590a
testq %rax, %rax
je 0x336a
movq 0x8(%r13), %r15
callq 0x2060
movq %rax, 0x8(%rsp)
andl $0x0, (%rax)
movq %r12, %r14
addq $0x20, %r14
movq (%r14), %r14
testq %r14, %r14
je 0x4715
movq 0x10(%r14), %rdi
movq %r15, %rsi
callq 0x2460
testl %eax, %eax
je 0x472b
addq $0x28, %r14
jmp 0x4213
movq %rax, %r14
movq 0x30(%rsp), %rax
movq 0x8(%rax), %rdx
movq %r15, (%rsp)
leaq 0x629a(%rip), %rsi      # 0xa4ea
leaq 0x61a9(%rip), %r8       # 0xa400
pushq $0x1
popq %r9
movq %r14, %rdi
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %ebx
movq %r15, %rdi
callq 0x23d0
cmpl $-0x1, %ebx
je 0x449e
cmpl $0x12e, %ebx            # imm = 0x12E
je 0x4486
cmpl $0x191, %ebx            # imm = 0x191
jne 0x448e
leaq 0x6173(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x449e
leaq 0x74b9(%rip), %rdx      # 0xb763
leaq 0x70(%rsp), %rdi
pushq $0x18
popq %rsi
movl %eax, %ecx
xorl %eax, %eax
callq 0x2540
testq %r15, %r15
jne 0x42c5
xorl %r13d, %r13d
jmp 0x42da
movq %r15, %rdi
callq 0x8791
movq %rax, %r13
movq %rax, 0x38(%rsp)
testq %rax, %rax
je 0x4331
movq %rbx, %rdi
callq 0x8791
testq %rax, %rax
jne 0x42f1
movq %r13, %rdi
callq 0x23d0
jmp 0x4331
movq %rax, %rbx
leaq 0x100(%rsp), %rdi
leaq 0x70(%rsp), %rdx
movq 0x38(%rsp), %rsi
movq %rax, %rcx
movq 0x8(%rsp), %r8
xorl %eax, %eax
callq 0x918a
movq %rax, %r15
movq %r13, %rdi
callq 0x23d0
movq %rbx, %rdi
callq 0x23d0
testq %r15, %r15
jne 0x43ca
leaq 0x5f34(%rip), %rsi      # 0xa26c
jmp 0x312e
leaq 0x6129(%rip), %rsi      # 0xa46d
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x440e
cmpl $0x1, %ebx
jle 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %rbx
movl %ebp, %edi
xorl $0x1, %edi
callq 0x8a3b
movq %rax, %r14
movq 0x8(%r13), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x2470
movq %rax, %r12
callq 0x2060
andl $0x0, (%rax)
movq %r14, %rdi
callq 0x79e5
testq %rax, %rax
je 0x4bef
movq %rax, %r14
leaq 0x6236(%rip), %rdi      # 0xa5e5
movl %r12d, %esi
xorl %eax, %eax
callq 0x918a
testq %rax, %rax
jne 0x47c2
movq %r14, %rdi
jmp 0x47ed
movq 0x28(%rsp), %rax
movq (%rax), %rdi
movzwl 0x10(%rax), %esi
callq 0x70dc
testq %rax, %rax
jne 0x44b2
movq %r15, %rdi
jmp 0x42ea
leaq 0x6017(%rip), %rdi      # 0xa40a
jmp 0x452e
leaq 0x62bc(%rip), %rdi      # 0xa6bb
movl %r13d, %esi
xorl %eax, %eax
callq 0x22e0
jmp 0x4535
leaq 0x5f96(%rip), %rsi      # 0xa3ab
movq %r14, %rdi
callq 0x2460
testl %eax, %eax
jne 0x4457
callq 0x4ea7
testq %rax, %rax
je 0x2f34
movq %rax, %rbx
leaq 0x5f79(%rip), %rdi      # 0xa3b2
callq 0x24f0
movl 0x2c(%rbx), %esi
movl 0x30(%rbx), %edx
leaq 0x5f83(%rip), %rdi      # 0xa3ce
xorl %eax, %eax
callq 0x2070
jmp 0x3152
callq 0x4e79
movq %rbx, %rdi
movq %r15, %rsi
callq 0x5c73
cmpl $-0x1, %eax
jne 0x47f7
leaq 0x5d9f(%rip), %rdi      # 0xa216
movq %r15, %rsi
xorl %eax, %eax
callq 0x22e0
jmp 0x4b03
movq %r14, %rdi
jmp 0x48cb
leaq 0x6226(%rip), %rdi      # 0xa6bb
movl %ebx, %esi
xorl %eax, %eax
callq 0x22e0
movq %r14, %rdi
callq 0x72d8
leaq 0x5d7d(%rip), %rsi      # 0xa22a
jmp 0x312e
movq %rax, %rbx
movq 0x28(%rsp), %rax
movq 0x8(%rax), %rdx
movq %r15, (%rsp)
leaq 0x6021(%rip), %rsi      # 0xa4ea
leaq 0x5f30(%rip), %r8       # 0xa400
pushq $0x1
popq %r9
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %r14d
movq %r15, %rdi
callq 0x23d0
cmpl $-0x1, %r14d
je 0x48f5
cmpl $0x12e, %r14d           # imm = 0x12E
je 0x48c8
cmpl $0x191, %r14d           # imm = 0x191
jne 0x48e4
leaq 0x5ef6(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x48f5
cmpl $0x0, (%r12)
jne 0x4535
leaq 0x5f2d(%rip), %rdi      # 0xa45b
xorl %eax, %eax
callq 0x22e0
movq %r15, %rdi
callq 0x72d8
leaq 0x5d46(%rip), %rsi      # 0xa28a
jmp 0x312e
movq %rax, %r12
movq 0xae6d(%rip), %rsi      # 0xf3c0
movq %rax, %rdi
callq 0x8047
movq %rax, %r13
movq %r15, %rdi
callq 0x72d8
testq %r13, %r13
je 0x453d
movq %r12, %r13
addq $0x10, %r13
leaq 0x60ce(%rip), %r15      # 0xa647
movq (%r13), %r13
testq %r13, %r13
je 0x4902
movq 0x8(%r13), %rdi
testq %rdi, %rdi
je 0x459f
movq %r15, %rsi
callq 0x2460
testl %eax, %eax
je 0x491d
addq $0x18, %r13
jmp 0x4579
movq %rax, %rbx
movq 0x8(%r14), %rdx
movq %r15, (%rsp)
leaq 0x60a6(%rip), %rsi      # 0xa65d
leaq 0x5e42(%rip), %r8       # 0xa400
pushq $0x3
popq %r9
movq %rax, %rdi
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %ebp
movq %r15, %rdi
callq 0x23d0
cmpl $-0x1, %ebp
je 0x4989
cmpl $0xc9, %ebp
je 0x4d12
cmpl $0x191, %ebp            # imm = 0x191
jne 0x4979
leaq 0x5e0c(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x4989
movq %rax, %r14
movq 0x8(%rbx), %rdx
movq %r15, (%rsp)
leaq 0x6030(%rip), %rsi      # 0xa64c
leaq 0x5ddd(%rip), %r8       # 0xa400
pushq $0x3
popq %r9
movq %rax, %rdi
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %ebx
movq %r15, %rdi
callq 0x23d0
cmpl $-0x1, %ebx
je 0x49ad
cmpl $0x12e, %ebx            # imm = 0x12E
je 0x4c10
cmpl $0x191, %ebx            # imm = 0x191
jne 0x499d
leaq 0x5da7(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x49ad
movq (%rbx), %rdi
movzwl 0x10(%rbx), %esi
callq 0x70dc
testq %rax, %rax
je 0x49e1
movq %rax, %r15
movq 0x8(%rbx), %rdx
movq %r12, (%rsp)
leaq 0x5d6a(%rip), %r8       # 0xa400
pushq $0x1
popq %r9
movq %rax, %rdi
movq %r14, %rsi
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %ebx
movq %r12, %rdi
callq 0x23d0
movq %r14, %rdi
callq 0x23d0
cmpl $-0x1, %ebx
je 0x49d9
cmpl $0xc9, %ebx
je 0x49c1
cmpl $0x191, %ebx            # imm = 0x191
jne 0x49c9
leaq 0x5d29(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x49d9
movq %rax, %r12
testq %r12, %r12
je 0x49fa
movq 0x10(%r12), %rdi
movq %rbx, %rsi
callq 0x2460
testl %eax, %eax
je 0x49ed
movq 0x28(%r12), %r12
jmp 0x46f0
leaq 0x5cc4(%rip), %rdi      # 0xa3e0
movq %r15, %rsi
xorl %eax, %eax
callq 0x22e0
jmp 0x4bbf
movq (%r12), %rdi
movzwl 0x10(%r12), %esi
movq %rdi, 0x18(%rsp)
movl %esi, 0x20(%rsp)
callq 0x70dc
testq %rax, %rax
je 0x4bbf
movq %rax, %r15
movq 0x18(%r14), %rsi
movq 0x8(%r12), %rdx
leaq 0x5d38(%rip), %rcx      # 0xa497
leaq 0x5c9a(%rip), %r8       # 0xa400
movq %rax, %rdi
movq %rdx, 0x10(%rsp)
callq 0x7b3c
cmpl $-0x1, %eax
je 0x4a60
cmpl $0x191, %eax            # imm = 0x191
je 0x4a0c
cmpl $0xc8, %eax
jne 0x4a15
xorl %eax, %eax
leaq 0x5ca1(%rip), %r14      # 0xa43c
testq %rax, %rax
jne 0x4a27
movq %r15, %rdi
callq 0x764f
testq %rax, %rax
je 0x4a52
movq %rax, %rdi
movq %r14, %rsi
callq 0x20d0
jmp 0x479b
movq %rax, %r15
leaq 0x5e34(%rip), %rdi      # 0xa600
movq %r14, %rsi
xorl %eax, %eax
callq 0x918a
movq %rax, %r12
movq %r14, %rdi
callq 0x23d0
testq %r12, %r12
jne 0x4a6d
movq %r15, %rdi
callq 0x23d0
jmp 0x4bef
leaq 0x6f65(%rip), %rdx      # 0xb763
leaq 0x70(%rsp), %rdi
pushq $0x18
popq %rsi
movl %eax, %ecx
xorl %eax, %eax
callq 0x2540
movq %r14, %rdi
callq 0x8791
testq %rax, %rax
je 0x4b03
movq %rax, %r14
leaq 0x100(%rsp), %rdi
leaq 0x70(%rsp), %rdx
movq %rax, %rsi
xorl %eax, %eax
callq 0x918a
movq %rax, %r15
movq %r14, %rdi
callq 0x23d0
testq %r15, %r15
je 0x4b03
movq (%rbx), %rdi
movzwl 0x10(%rbx), %esi
callq 0x70dc
testq %rax, %rax
je 0x4b03
movq %rax, %r14
movq 0x8(%rbx), %rdx
movq %r15, (%rsp)
leaq 0x5c75(%rip), %rsi      # 0xa4ea
leaq 0x5b84(%rip), %r8       # 0xa400
pushq $0x1
popq %r9
movq %rax, %rdi
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %ebx
movq %r15, %rdi
callq 0x23d0
cmpl $-0x1, %ebx
je 0x4afb
cmpl $0x12e, %ebx            # imm = 0x12E
je 0x4bcf
cmpl $0x191, %ebx            # imm = 0x191
jne 0x4aeb
leaq 0x5b4e(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x4afb
movq %rbx, %rdi
callq 0x72d8
testl %ebp, %ebp
setne %al
testb %al, 0x10(%rsp)
je 0x3152
jmp 0x4e4a
leaq 0x5dd0(%rip), %rdi      # 0xa6bb
movl %r14d, %esi
xorl %eax, %eax
callq 0x22e0
movq %rbx, %rdi
callq 0x72d8
jmp 0x4331
movq %r12, %rdi
callq 0x8002
leaq 0x5d21(%rip), %rdi      # 0xa632
xorl %eax, %eax
callq 0x22e0
jmp 0x453d
movq 0x10(%r13), %rsi
leaq 0xaaa8(%rip), %r15      # 0xf3d0
pushq $0x40
popq %rdx
movq %r15, %rdi
callq 0x21a0
movq %r12, %rdi
callq 0x8002
leaq 0x100(%rsp), %rdi
movq %r15, %rsi
xorl %eax, %eax
callq 0x918a
testq %rax, %rax
je 0x453d
movq %rax, %r15
movq %r14, %rdi
movl %ebp, %esi
callq 0x70dc
testq %rax, %rax
jne 0x4b0f
movq %r15, %rdi
callq 0x23d0
jmp 0x453d
leaq 0x5d3b(%rip), %rdi      # 0xa6bb
movl %ebp, %esi
xorl %eax, %eax
callq 0x22e0
movq %rbx, %rdi
callq 0x72d8
leaq 0x590d(%rip), %rsi      # 0xa2a5
jmp 0x312e
leaq 0x5d17(%rip), %rdi      # 0xa6bb
movl %ebx, %esi
xorl %eax, %eax
callq 0x22e0
movq %r14, %rdi
callq 0x72d8
leaq 0x595b(%rip), %rsi      # 0xa317
jmp 0x312e
movq %r15, %rdi
jmp 0x4e3d
leaq 0x5ceb(%rip), %rdi      # 0xa6bb
movl %ebx, %esi
xorl %eax, %eax
callq 0x22e0
movq %r15, %rdi
callq 0x72d8
leaq 0x5953(%rip), %rsi      # 0xa33b
jmp 0x312e
movl (%r12), %ebp
cmpl $-0x1, %ebp
jne 0x4b73
leaq 0x58d0(%rip), %rsi      # 0xa2d1
pushq $0x1
popq %rdi
movq %rbx, %rdx
jmp 0x32c9
leaq 0x59f7(%rip), %rdi      # 0xa40a
jmp 0x4a59
leaq 0x5c9f(%rip), %rdi      # 0xa6bb
movl %eax, %esi
xorl %eax, %eax
callq 0x22e0
jmp 0x4a60
leaq 0x5a45(%rip), %rsi      # 0xa473
movq %rax, %rdi
callq 0x2510
testq %rax, %rax
je 0x4a52
leaq 0x5a31(%rip), %rsi      # 0xa473
xorl %edi, %edi
callq 0x2510
testq %rax, %rax
jne 0x4b9d
leaq 0x5a02(%rip), %rdi      # 0xa45b
xorl %eax, %eax
callq 0x22e0
movq %r15, %rdi
callq 0x72d8
jmp 0x4bbf
movq (%rbx), %rdi
movzwl 0x10(%rbx), %esi
callq 0x70dc
testq %rax, %rax
je 0x4bef
movq %rax, %r14
movq 0x8(%rbx), %rdx
movq %r12, (%rsp)
leaq 0x596c(%rip), %r8       # 0xa400
pushq $0x3
popq %r9
movq %rax, %rdi
movq %r15, %rsi
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %ebx
movq %r15, %rdi
callq 0x23d0
movq %r12, %rdi
callq 0x23d0
cmpl $-0x1, %ebx
je 0x4be7
cmpl $0x12e, %ebx            # imm = 0x12E
je 0x4bcf
cmpl $0x191, %ebx            # imm = 0x191
jne 0x4bd7
leaq 0x592b(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x4be7
leaq 0x5bc9(%rip), %rdi      # 0xa6bb
movl %ebx, %esi
xorl %eax, %eax
callq 0x22e0
movq %r14, %rdi
callq 0x72d8
leaq 0x5822(%rip), %rsi      # 0xa32c
jmp 0x312e
movq %rax, %r14
movq %r15, (%rsp)
leaq 0x5afb(%rip), %rsi      # 0xa618
leaq 0x58dc(%rip), %r8       # 0xa400
pushq $0x1
popq %r9
movq %rax, %rdi
movq %rbx, %rdx
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %ebx
movq %r15, %rdi
callq 0x23d0
cmpl $-0x1, %ebx
je 0x4c28
cmpl $0xc9, %ebx
je 0x4c10
cmpl $0x191, %ebx            # imm = 0x191
jne 0x4c18
leaq 0x58a3(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x4c28
movq 0x18(%r13), %r15
movq %r14, %rdi
movq %r15, %rsi
callq 0x5c73
cmpl $-0x1, %eax
jne 0x4c30
leaq 0x5752(%rip), %rsi      # 0xa2e4
pushq $0x1
popq %rdi
movq %r15, %rdx
jmp 0x32c9
pushq $0xa
popq %rdx
movq %rax, %rdi
xorl %esi, %esi
callq 0x2470
movq %rax, %r14
movq %r15, %rdi
callq 0x72d8
cmpl $-0x1, %r14d
jne 0x4ca0
movq 0x8(%r13), %rdx
leaq 0x5788(%rip), %rsi      # 0xa352
jmp 0x32c6
movq %r14, %rdi
jmp 0x4e3d
leaq 0x5add(%rip), %rdi      # 0xa6bb
movl %ebx, %esi
xorl %eax, %eax
callq 0x22e0
movq %r14, %rdi
callq 0x72d8
movq 0x8(%r13), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x2470
leaq 0x5789(%rip), %rsi      # 0xa38d
pushq $0x1
popq %rdi
movl %eax, %edx
xorl %eax, %eax
callq 0x25a0
movq %r14, %rdi
jmp 0x4d15
leaq 0x5a9c(%rip), %rdi      # 0xa6bb
movl %ebx, %esi
xorl %eax, %eax
callq 0x22e0
movq %r14, %rdi
jmp 0x4538
movl %eax, %ebx
movaps 0x63f7(%rip), %xmm0     # 0xb030
leaq 0x100(%rsp), %r15
movaps %xmm0, 0x10(%r15)
movaps 0x63d3(%rip), %xmm0     # 0xb020
movaps %xmm0, (%r15)
movabsq $0x54534f503d646f, %rax # imm = 0x54534F503D646F
movq %rax, 0x1f(%r15)
callq 0x2060
andl $0x0, (%rax)
movq %r15, %rdi
movl %ebx, %esi
movl %ebp, %edx
xorl %eax, %eax
callq 0x918a
testq %rax, %rax
je 0x4d85
movq %rax, %r15
movq (%r14), %rdi
movzwl 0x10(%r14), %esi
callq 0x70dc
testq %rax, %rax
jne 0x4cb8
movq %r15, %rdi
callq 0x23d0
jmp 0x4d85
movl %ebp, %edi
xorl $0x1, %edi
callq 0x8a3b
cmpl $0x2, %ebx
jne 0x4d1f
leaq 0x56b5(%rip), %r13      # 0xa36b
jmp 0x4d23
movq %rax, %rbx
movq 0x8(%r14), %rdx
movq %r15, (%rsp)
leaq 0x59a3(%rip), %rsi      # 0xa66d
leaq 0x572f(%rip), %r8       # 0xa400
pushq $0x3
popq %r9
movq %rax, %rdi
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %ebp
movq %r15, %rdi
callq 0x23d0
cmpl $-0x1, %ebp
je 0x4d7d
cmpl $0xc8, %ebp
je 0x4d12
cmpl $0x191, %ebp            # imm = 0x191
jne 0x4d6d
leaq 0x5701(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x4d7d
movq %rbx, %rdi
callq 0x72d8
jmp 0x3152
movq 0x10(%r13), %r13
leaq 0x6246(%rip), %rsi      # 0xaf70
pushq $0x4b
popq %rcx
leaq 0x100(%rsp), %rdi
rep  movsb (%rsi), %es:(%rdi)
movq 0x8(%rsp), %rcx
andl $0x0, (%rcx)
movq %rax, %rdi
callq 0x79e5
testq %rax, %rax
je 0x4e6d
movq %rax, %rbx
movq %r13, %rdi
callq 0x79e5
testq %rax, %rax
jne 0x4d91
movq %rbx, %rdi
callq 0x23d0
jmp 0x4e6d
leaq 0x5947(%rip), %rdi      # 0xa6bb
movl %ebp, %esi
xorl %eax, %eax
callq 0x22e0
movq %rbx, %rdi
callq 0x72d8
leaq 0x556e(%rip), %rsi      # 0xa2fa
jmp 0x312e
movq %rax, %r12
leaq 0x100(%rsp), %rdi
movl %r14d, %esi
movq %rax, %rdx
movq %rbx, %rcx
xorl %eax, %eax
callq 0x918a
movq %rax, %r14
movq %rbx, %rdi
callq 0x23d0
movq %r12, %rdi
callq 0x23d0
testq %r14, %r14
je 0x4e6d
movq 0x18(%rsp), %rdi
movl 0x20(%rsp), %esi
callq 0x70dc
testq %rax, %rax
je 0x4e6d
movq %rax, %rbx
movq %r14, (%rsp)
leaq 0x57e9(%rip), %rsi      # 0xa5d6
leaq 0x560c(%rip), %r8       # 0xa400
pushq $0x3
popq %r9
movq %rax, %rdi
movq 0x10(%rsp), %rdx
xorl %ecx, %ecx
callq 0x7bca
movl %eax, %r15d
movq %r14, %rdi
callq 0x23d0
cmpl $-0x1, %r15d
je 0x4e65
cmpl $0x12e, %r15d           # imm = 0x12E
je 0x4e3a
cmpl $0x191, %r15d           # imm = 0x191
jne 0x4e54
leaq 0x55d9(%rip), %rdi      # 0xa40a
xorl %eax, %eax
callq 0x22e0
jmp 0x4e65
movq %rbx, %rdi
callq 0x72d8
testl %ebp, %ebp
je 0x3152
callq 0x88d4
jmp 0x3152
leaq 0x5860(%rip), %rdi      # 0xa6bb
movl %r15d, %esi
xorl %eax, %eax
callq 0x22e0
movq %rbx, %rdi
callq 0x72d8
leaq 0x5502(%rip), %rsi      # 0xa376
jmp 0x312e