// File: /workspace/github_c_makefile_star2_O0/lyda[P]tz/zic.c
// Function: main
int
main(argc, argv)
int	argc;
char *	argv[];
{
	register int	i;
	register int	j;
	register int	c;

#ifdef unix
	(void) umask(umask(S_IWGRP | S_IWOTH) | (S_IWGRP | S_IWOTH));
#endif /* defined unix */
#if HAVE_GETTEXT
	(void) setlocale(LC_ALL, "");
#ifdef TZ_DOMAINDIR
	(void) bindtextdomain(TZ_DOMAIN, TZ_DOMAINDIR);
#endif /* defined TEXTDOMAINDIR */
	(void) textdomain(TZ_DOMAIN);
#endif /* HAVE_GETTEXT */
	progname = argv[0];
	if (TYPE_BIT(zic_t) < 64) {
		(void) fprintf(stderr, "%s: %s\n", progname,
			_("wild compilation-time specification of zic_t"));
		exit(EXIT_FAILURE);
	}
	for (i = 1; i < argc; ++i)
		if (strcmp(argv[i], "--version") == 0) {
			(void) printf("%s\n", elsieid);
			exit(EXIT_SUCCESS);
		} else if (strcmp(argv[i], "--help") == 0) {
			usage(stdout, EXIT_SUCCESS);
		}
	while ((c = getopt(argc, argv, "d:l:p:L:vsy:")) != EOF && c != -1)
		switch (c) {
			default:
				usage(stderr, EXIT_FAILURE);
			case 'd':
				if (directory == NULL)
					directory = optarg;
				else {
					(void) fprintf(stderr,
_("%s: More than one -d option specified\n"),
						progname);
					exit(EXIT_FAILURE);
				}
				break;
			case 'l':
				if (lcltime == NULL)
					lcltime = optarg;
				else {
					(void) fprintf(stderr,
_("%s: More than one -l option specified\n"),
						progname);
					exit(EXIT_FAILURE);
				}
				break;
			case 'p':
				if (psxrules == NULL)
					psxrules = optarg;
				else {
					(void) fprintf(stderr,
_("%s: More than one -p option specified\n"),
						progname);
					exit(EXIT_FAILURE);
				}
				break;
			case 'y':
				if (yitcommand == NULL)
					yitcommand = optarg;
				else {
					(void) fprintf(stderr,
_("%s: More than one -y option specified\n"),
						progname);
					exit(EXIT_FAILURE);
				}
				break;
			case 'L':
				if (leapsec == NULL)
					leapsec = optarg;
				else {
					(void) fprintf(stderr,
_("%s: More than one -L option specified\n"),
						progname);
					exit(EXIT_FAILURE);
				}
				break;
			case 'v':
				noise = TRUE;
				break;
			case 's':
				(void) printf("%s: -s ignored\n", progname);
				break;
		}
	if (optind == argc - 1 && strcmp(argv[optind], "=") == 0)
		usage(stderr, EXIT_FAILURE);	/* usage message by request */
	if (directory == NULL)
		directory = TZDIR;
	if (yitcommand == NULL)
		yitcommand = "yearistype";

	setboundaries();

	if (optind < argc && leapsec != NULL) {
		infile(leapsec);
		adjleap();
	}

	for (i = optind; i < argc; ++i)
		infile(argv[i]);
	if (errors)
		exit(EXIT_FAILURE);
	associate();
	for (i = 0; i < nzones; i = j) {
		/*
		** Find the next non-continuation zone entry.
		*/
		for (j = i + 1; j < nzones && zones[j].z_name == NULL; ++j)
			continue;
		outzone(&zones[i], j - i);
	}
	/*
	** Make links.
	*/
	for (i = 0; i < nlinks; ++i) {
		eat(links[i].l_filename, links[i].l_linenum);
		dolink(links[i].l_from, links[i].l_to);
		if (noise)
			for (j = 0; j < nlinks; ++j)
				if (strcmp(links[i].l_to,
					links[j].l_from) == 0)
						warning(_("link to link"));
	}
	if (lcltime != NULL) {
		eat("command line", 1);
		dolink(lcltime, TZDEFAULT);
	}
	if (psxrules != NULL) {
		eat("command line", 1);
		dolink(psxrules, TZDEFRULES);
	}
	return (errors == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movl $0x0, -0x4(%rbp)
movl %edi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl $0x12, %edi
callq 0x2190
movl %eax, %edi
orl $0x12, %edi
callq 0x2190
movq -0x10(%rbp), %rax
movq (%rax), %rax
movq %rax, 0xfdc8(%rip)      # 0x121b0
movl $0x1, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl -0x8(%rbp), %eax
jge 0x246d
movq -0x10(%rbp), %rax
movslq -0x14(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0xbdba(%rip), %rsi      # 0xe1c4
callq 0x2160
cmpl $0x0, %eax
jne 0x2430
leaq 0xcacc(%rip), %rdi      # 0xeee7
leaq 0xfd4e(%rip), %rsi      # 0x12170
movb $0x0, %al
callq 0x2100
xorl %edi, %edi
callq 0x2270
movq -0x10(%rbp), %rax
movslq -0x14(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0xbd8b(%rip), %rsi      # 0xe1ce
callq 0x2160
cmpl $0x0, %eax
jne 0x245e
movq 0xfb6c(%rip), %rax      # 0x11fc0
movq (%rax), %rdi
xorl %esi, %esi
callq 0x2960
jmp 0x2460
jmp 0x2462
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x23ef
jmp 0x246f
movl -0x8(%rbp), %edi
movq -0x10(%rbp), %rsi
leaq 0xbd58(%rip), %rdx      # 0xe1d5
callq 0x2230
movl %eax, %ecx
movl %ecx, -0x1c(%rbp)
xorl %eax, %eax
cmpl $-0x1, %ecx
movb %al, -0x1d(%rbp)
je 0x249b
cmpl $-0x1, -0x1c(%rbp)
setne %al
movb %al, -0x1d(%rbp)
movb -0x1d(%rbp), %al
testb $0x1, %al
jne 0x24a7
jmp 0x2677
movl -0x1c(%rbp), %eax
addl $-0x4c, %eax
movl %eax, %ecx
movq %rcx, -0x28(%rbp)
subl $0x2d, %eax
ja 0x24cc
movq -0x28(%rbp), %rax
leaq 0xbb4d(%rip), %rcx      # 0xe010
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0xfb25(%rip), %rax      # 0x11ff8
movq (%rax), %rdi
movl $0x1, %esi
callq 0x2960
cmpq $0x0, 0xfcd0(%rip)      # 0x121b8
jne 0x24fd
movq 0xfae7(%rip), %rax      # 0x11fd8
movq (%rax), %rax
movq %rax, 0xfcbd(%rip)      # 0x121b8
jmp 0x2526
movq 0xfaf4(%rip), %rax      # 0x11ff8
movq (%rax), %rdi
movq 0xfca2(%rip), %rdx      # 0x121b0
leaq 0xbccd(%rip), %rsi      # 0xe1e2
movb $0x0, %al
callq 0x2180
movl $0x1, %edi
callq 0x2270
jmp 0x2672
cmpq $0x0, 0xfc8d(%rip)      # 0x121c0
jne 0x2548
movq 0xfa9c(%rip), %rax      # 0x11fd8
movq (%rax), %rax
movq %rax, 0xfc7a(%rip)      # 0x121c0
jmp 0x2571
movq 0xfaa9(%rip), %rax      # 0x11ff8
movq (%rax), %rdi
movq 0xfc57(%rip), %rdx      # 0x121b0
leaq 0xbca9(%rip), %rsi      # 0xe209
movb $0x0, %al
callq 0x2180
movl $0x1, %edi
callq 0x2270
jmp 0x2672
cmpq $0x0, 0xfc4a(%rip)      # 0x121c8
jne 0x2593
movq 0xfa51(%rip), %rax      # 0x11fd8
movq (%rax), %rax
movq %rax, 0xfc37(%rip)      # 0x121c8
jmp 0x25bc
movq 0xfa5e(%rip), %rax      # 0x11ff8
movq (%rax), %rdi
movq 0xfc0c(%rip), %rdx      # 0x121b0
leaq 0xbc85(%rip), %rsi      # 0xe230
movb $0x0, %al
callq 0x2180
movl $0x1, %edi
callq 0x2270
jmp 0x2672
cmpq $0x0, 0xfc07(%rip)      # 0x121d0
jne 0x25de
movq 0xfa06(%rip), %rax      # 0x11fd8
movq (%rax), %rax
movq %rax, 0xfbf4(%rip)      # 0x121d0
jmp 0x2607
movq 0xfa13(%rip), %rax      # 0x11ff8
movq (%rax), %rdi
movq 0xfbc1(%rip), %rdx      # 0x121b0
leaq 0xbc61(%rip), %rsi      # 0xe257
movb $0x0, %al
callq 0x2180
movl $0x1, %edi
callq 0x2270
jmp 0x2672
cmpq $0x0, 0xfbc7(%rip)      # 0x121d8
jne 0x2626
movq 0xf9be(%rip), %rax      # 0x11fd8
movq (%rax), %rax
movq %rax, 0xfbb4(%rip)      # 0x121d8
jmp 0x264f
movq 0xf9cb(%rip), %rax      # 0x11ff8
movq (%rax), %rdi
movq 0xfb79(%rip), %rdx      # 0x121b0
leaq 0xbc40(%rip), %rsi      # 0xe27e
movb $0x0, %al
callq 0x2180
movl $0x1, %edi
callq 0x2270
jmp 0x2672
movl $0x1, 0xfb85(%rip)      # 0x121e0
jmp 0x2672
movq 0xfb4c(%rip), %rsi      # 0x121b0
leaq 0xbc3a(%rip), %rdi      # 0xe2a5
movb $0x0, %al
callq 0x2100
jmp 0x246f
movq 0xf952(%rip), %rax      # 0x11fd0
movl (%rax), %eax
movl -0x8(%rbp), %ecx
subl $0x1, %ecx
cmpl %ecx, %eax
jne 0x26c1
movq -0x10(%rbp), %rax
movq 0xf93b(%rip), %rcx      # 0x11fd0
movslq (%rcx), %rcx
movq (%rax,%rcx,8), %rdi
leaq 0xbc12(%rip), %rsi      # 0xe2b5
callq 0x2160
cmpl $0x0, %eax
jne 0x26c1
movq 0xf944(%rip), %rax      # 0x11ff8
movq (%rax), %rdi
movl $0x1, %esi
callq 0x2960
cmpq $0x0, 0xfaef(%rip)      # 0x121b8
jne 0x26d9
leaq 0xbbe5(%rip), %rax      # 0xe2b7
movq %rax, 0xfadf(%rip)      # 0x121b8
cmpq $0x0, 0xfaef(%rip)      # 0x121d0
jne 0x26f1
leaq 0xbbe5(%rip), %rax      # 0xe2cf
movq %rax, 0xfadf(%rip)      # 0x121d0
callq 0x29a0
movq 0xf8d3(%rip), %rax      # 0x11fd0
movl (%rax), %eax
cmpl -0x8(%rbp), %eax
jge 0x271f
cmpq $0x0, 0xfacc(%rip)      # 0x121d8
je 0x271f
movq 0xfac3(%rip), %rdi      # 0x121d8
callq 0x2a00
callq 0x2da0
movq 0xf8aa(%rip), %rax      # 0x11fd0
movl (%rax), %eax
movl %eax, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl -0x8(%rbp), %eax
jge 0x274f
movq -0x10(%rbp), %rax
movslq -0x14(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
callq 0x2a00
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x272b
cmpl $0x0, 0xfa8e(%rip)      # 0x121e4
je 0x2762
movl $0x1, %edi
callq 0x2270
callq 0x2e20
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl 0xfa71(%rip), %eax      # 0x121e8
jge 0x27f3
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
movl -0x18(%rbp), %ecx
xorl %eax, %eax
cmpl 0xfa5b(%rip), %ecx      # 0x121e8
movb %al, -0x29(%rbp)
jge 0x27b2
movq 0xfa57(%rip), %rax      # 0x121f0
movslq -0x18(%rbp), %rcx
imulq $0xc0, %rcx, %rcx
addq %rcx, %rax
cmpq $0x0, 0x10(%rax)
sete %al
movb %al, -0x29(%rbp)
movb -0x29(%rbp), %al
testb $0x1, %al
jne 0x27bb
jmp 0x27c8
jmp 0x27bd
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x2782
movq 0xfa21(%rip), %rdi      # 0x121f0
movslq -0x14(%rbp), %rax
imulq $0xc0, %rax, %rax
addq %rax, %rdi
movl -0x18(%rbp), %esi
subl -0x14(%rbp), %esi
callq 0x3260
movl -0x18(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x276e
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl 0xf9f5(%rip), %eax      # 0x121f8
jge 0x28e5
movq 0xf9f0(%rip), %rax      # 0x12200
movslq -0x14(%rbp), %rcx
shlq $0x5, %rcx
addq %rcx, %rax
movq (%rax), %rdi
movq 0xf9db(%rip), %rax      # 0x12200
movslq -0x14(%rbp), %rcx
shlq $0x5, %rcx
addq %rcx, %rax
movl 0x8(%rax), %esi
callq 0x3d60
movq 0xf9c1(%rip), %rax      # 0x12200
movslq -0x14(%rbp), %rcx
shlq $0x5, %rcx
addq %rcx, %rax
movq 0x10(%rax), %rdi
movq 0xf9ab(%rip), %rax      # 0x12200
movslq -0x14(%rbp), %rcx
shlq $0x5, %rcx
addq %rcx, %rax
movq 0x18(%rax), %rsi
callq 0x3d90
cmpl $0x0, 0xf970(%rip)      # 0x121e0
je 0x28d5
movl $0x0, -0x18(%rbp)
movl -0x18(%rbp), %eax
cmpl 0xf976(%rip), %eax      # 0x121f8
jge 0x28d3
movq 0xf975(%rip), %rax      # 0x12200
movslq -0x14(%rbp), %rcx
shlq $0x5, %rcx
addq %rcx, %rax
movq 0x18(%rax), %rdi
movq 0xf95f(%rip), %rax      # 0x12200
movslq -0x18(%rbp), %rcx
shlq $0x5, %rcx
addq %rcx, %rax
movq 0x10(%rax), %rsi
callq 0x2160
cmpl $0x0, %eax
jne 0x28c6
leaq 0xba19(%rip), %rdi      # 0xe2da
callq 0x4000
jmp 0x28c8
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x2879
jmp 0x28d5
jmp 0x28d7
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x27fa
cmpq $0x0, 0xf8d3(%rip)      # 0x121c0
je 0x2913
leaq 0xb9f1(%rip), %rdi      # 0xe2e7
movl $0x1, %esi
callq 0x3d60
movq 0xf8b9(%rip), %rdi      # 0x121c0
leaq 0xb9e6(%rip), %rsi      # 0xe2f4
callq 0x3d90
cmpq $0x0, 0xf8ad(%rip)      # 0x121c8
je 0x2941
leaq 0xb9c3(%rip), %rdi      # 0xe2e7
movl $0x1, %esi
callq 0x3d60
movq 0xf893(%rip), %rdi      # 0x121c8
leaq 0xb9c2(%rip), %rsi      # 0xe2fe
callq 0x3d90
movl 0xf89d(%rip), %edx      # 0x121e4
movl $0x1, %eax
xorl %ecx, %ecx
cmpl $0x0, %edx
cmovel %ecx, %eax
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)