// File: /workspace/github_c_makefile_star2_O2/AtifChy[P]st/x.c
// Function: main
int
main(int argc, char *argv[])
{
	xw.l = xw.t = 0;
	xw.isfixed = False;
	xsetcursor(cursorstyle);

	ARGBEGIN {
	case 'a':
		allowaltscreen = 0;
		break;
	case 'c':
		opt_class = EARGF(usage());
		break;
	case 'e':
		if (argc > 0)
			--argc, ++argv;
		goto run;
	case 'f':
		opt_font = EARGF(usage());
		break;
	case 'g':
		xw.gm = XParseGeometry(EARGF(usage()),
				&xw.l, &xw.t, &cols, &rows);
		geometry = CellGeometry;
		break;
	case 'G':
		xw.gm = XParseGeometry(EARGF(usage()),
				&xw.l, &xw.t, &width, &height);
		geometry = PixelGeometry;
		break;
	case 'i':
		xw.isfixed = 1;
		break;
	case 'o':
		opt_io = EARGF(usage());
		break;
	case 'l':
		opt_line = EARGF(usage());
		break;
	case 'n':
		opt_name = EARGF(usage());
		break;
	case 't':
	case 'T':
		opt_title = EARGF(usage());
		break;
	case 'w':
		opt_embed = EARGF(usage());
		break;
	case 'v':
		die("%s " VERSION "\n", argv0);
		break;
	default:
		usage();
	} ARGEND;

run:
	if (argc > 0) /* eat all remaining arguments */
		opt_cmd = argv;

	if (!opt_title)
		opt_title = (opt_line || !opt_cmd) ? "st" : opt_cmd[0];

	setlocale(LC_CTYPE, "");
	XSetLocaleModifiers("");

	if(!(xw.dpy = XOpenDisplay(NULL)))
		die("Can't open display\n");

	config_init();
	switch (geometry) {
	case CellGeometry:
		xinit(cols, rows);
		break;
	case PixelGeometry:
		xinit(width, height);
		cols = (win.w - 2 * win.hborderpx) / win.cw;
		rows = (win.h - 2 * win.vborderpx) / win.ch;
		break;
	}
	cols = MAX(cols, 1);
	rows = MAX(rows, 1);
	signal(SIGUSR1, reload);
	tnew(cols, rows);
	xsetenv();
	selinit();
	run();

	return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x1b8, %rsp            # imm = 0x1B8
movq %rsi, %rbx
movl %edi, %ebp
andl $0x0, 0x11e68(%rip)     # 0x1e984
andq $0x0, 0x11e58(%rip)     # 0x1e97c
movl 0xb31e(%rip), %edi      # 0x17e48
callq 0xc3e3
movq (%rbx), %rax
movq %rax, 0x11eaf(%rip)     # 0x1e9e8
pushq $0x8
popq %rsi
pushq $0x1
popq %r8
leaq 0x3f41(%rip), %r14      # 0x10a88
leal -0x1(%rbp), %r13d
movq 0x8(%rbx), %rdi
testq %rdi, %rdi
je 0xce6d
cmpb $0x2d, (%rdi)
jne 0xce6d
movzbl 0x1(%rdi), %ecx
cmpl $0x2d, %ecx
je 0xcb73
testl %ecx, %ecx
jne 0xcb7d
jmp 0xce6d
cmpb $0x0, 0x2(%rdi)
je 0xd3cb
xorl %r15d, %r15d
pushq $0x2
popq %rbp
movq %rsi, %r12
leaq (%rbx,%r12), %rax
cmpq $0x8, %r12
jne 0xce62
testl %r15d, %r15d
jne 0xce62
testb %cl, %cl
je 0xce62
movzbl %cl, %ecx
leal -0x61(%rcx), %edx
cmpl $0x16, %edx
ja 0xcbc2
movslq (%r14,%rdx,4), %rcx
addq %r14, %rcx
jmpq *%rcx
andl $0x0, 0xaa28(%rip)      # 0x175e8
jmp 0xcc3c
cmpl $0x47, %ecx
je 0xccbc
cmpl $0x54, %ecx
jne 0xcbe5
cmpb $0x0, (%rdi,%rbp)
je 0xccd1
addq %rbp, %rdi
movq %rsi, %r12
jmp 0xcce7
callq 0xd3e4
pushq $0x1
popq %r8
pushq $0x8
popq %rsi
jmp 0xcc3c
cmpb $0x0, (%rdi,%rbp)
je 0xccf3
addq %rbp, %rdi
movq %rsi, %r12
jmp 0xcd09
cmpb $0x0, (%rdi,%rbp)
je 0xcd15
addq %rbp, %rdi
movq %rsi, %r12
jmp 0xcd2b
cmpb $0x0, (%rdi,%rbp)
je 0xcd37
addq %rbp, %rdi
movq %rsi, %r12
jmp 0xcd4d
movl $0x1, 0x11d40(%rip)     # 0x1e97c
xorl %r15d, %r15d
jmp 0xcc60
movq 0x11da0(%rip), %rsi     # 0x1e9e8
xorl %r15d, %r15d
leaq 0x40d9(%rip), %rdi      # 0x10d2b
xorl %eax, %eax
callq 0x6bb6
pushq $0x1
popq %r8
pushq $0x8
popq %rsi
movq %rsi, %r12
jmp 0xce03
cmpb $0x0, (%rdi,%rbp)
je 0xcd59
addq %rbp, %rdi
movq %rsi, %r12
jmp 0xcd6f
cmpb $0x0, (%rdi,%rbp)
je 0xcd7b
addq %rbp, %rdi
movq %rsi, %r12
jmp 0xcd91
cmpb $0x0, (%rdi,%rbp)
je 0xcdc4
addq %rbp, %rdi
movq %rsi, %r12
jmp 0xcdda
cmpb $0x0, (%rdi,%rbp)
je 0xcde3
addq %rbp, %rdi
movq %rsi, %r12
jmp 0xcdf9
cmpb $0x0, (%rdi,%rbp)
je 0xce12
addq %rbp, %rdi
movq %rsi, %r12
jmp 0xce28
cmpq $0x0, 0x8(%rax)
je 0xd3da
decl %r13d
movq 0x10(%rbx), %rdi
pushq $0x10
popq %r12
movq %rdi, 0x11cca(%rip)     # 0x1e9b8
jmp 0xce00
cmpq $0x0, 0x8(%rax)
je 0xd3da
decl %r13d
movq 0x10(%rbx), %rdi
pushq $0x10
popq %r12
movq %rdi, 0x11cb8(%rip)     # 0x1e9c8
jmp 0xce00
cmpq $0x0, 0x8(%rax)
je 0xd3da
decl %r13d
movq 0x10(%rbx), %rdi
pushq $0x10
popq %r12
movq %rdi, 0x11ca6(%rip)     # 0x1e9d8
jmp 0xce00
cmpq $0x0, 0x8(%rax)
je 0xd3da
decl %r13d
movq 0x10(%rbx), %rdi
pushq $0x10
popq %r12
movq %rdi, 0x11cb4(%rip)     # 0x1ea08
jmp 0xce00
cmpq $0x0, 0x8(%rax)
je 0xd3da
decl %r13d
movq 0x10(%rbx), %rdi
pushq $0x10
popq %r12
movq %rdi, 0x11c8a(%rip)     # 0x1ea00
jmp 0xce00
cmpq $0x0, 0x8(%rax)
je 0xd3da
decl %r13d
movq 0x10(%rbx), %rdi
pushq $0x10
popq %r12
leaq 0x11be8(%rip), %rsi     # 0x1e980
leaq 0x11be5(%rip), %rdx     # 0x1e984
leaq 0xb3a2(%rip), %rcx      # 0x18148
leaq 0xb39f(%rip), %r8       # 0x1814c
callq 0x6a80
movl %eax, 0x11bd0(%rip)     # 0x1e988
movb $0x0, 0x11c31(%rip)     # 0x1e9f0
jmp 0xce56
cmpq $0x0, 0x8(%rax)
je 0xd3da
decl %r13d
movq 0x10(%rbx), %rdi
pushq $0x10
popq %r12
movq %rdi, 0x11bef(%rip)     # 0x1e9d0
jmp 0xce00
cmpq $0x0, 0x8(%rax)
je 0xd3da
decl %r13d
movq 0x10(%rbx), %rdi
pushq $0x10
popq %r12
movq %rdi, 0x11bf8(%rip)     # 0x1e9f8
movl %r8d, %r15d
movq (%rbx,%r12), %rdi
movb (%rdi,%rbp), %cl
incq %rbp
jmp 0xcb86
cmpq $0x0, 0x8(%rax)
je 0xd3da
decl %r13d
movq 0x10(%rbx), %rdi
pushq $0x10
popq %r12
leaq 0x11b51(%rip), %rsi     # 0x1e980
leaq 0x11b4e(%rip), %rdx     # 0x1e984
leaq 0xb313(%rip), %rcx      # 0x18150
leaq 0xb310(%rip), %r8       # 0x18154
callq 0x6a80
movl %eax, 0x11b39(%rip)     # 0x1e988
movb $0x1, 0x11b9a(%rip)     # 0x1e9f0
pushq $0x1
popq %r8
movl %r8d, %r15d
pushq $0x8
popq %rsi
jmp 0xce03
movq %rax, %rbx
movl %r13d, %ebp
jmp 0xcb47
addq $0x8, %rbx
jmp 0xce82
xorl %ecx, %ecx
testl %r13d, %r13d
setg %cl
leaq (%rax,%rcx,8), %rbx
subl %ecx, %r13d
testl %r13d, %r13d
jle 0xce8e
movq %rbx, 0x11b82(%rip)     # 0x1ea10
cmpq $0x0, 0x11b22(%rip)     # 0x1e9b8
jne 0xceca
cmpq $0x0, 0x11b60(%rip)     # 0x1ea00
sete %cl
movq 0x11b66(%rip), %rax     # 0x1ea10
testq %rax, %rax
setne %dl
andb %cl, %dl
cmpb $0x1, %dl
jne 0xcebc
movq (%rax), %rax
jmp 0xcec3
leaq 0x3783(%rip), %rax      # 0x10646
movq %rax, 0x11aee(%rip)     # 0x1e9b8
leaq 0x4606(%rip), %rbx      # 0x114d7
xorl %edi, %edi
movq %rbx, %rsi
callq 0x6960
movq %rbx, %rdi
callq 0x6880
xorl %edi, %edi
callq 0x6310
movq %rax, 0x1199f(%rip)     # 0x1e890
testq %rax, %rax
jne 0xcf04
leaq 0x3e38(%rip), %rdi      # 0x10d35
xorl %eax, %eax
callq 0x6bb6
callq 0xc649
cmpb $0x0, 0x11ae0(%rip)     # 0x1e9f0
je 0xcf55
movl 0xb238(%rip), %edi      # 0x18150
movl 0xb236(%rip), %esi      # 0x18154
callq 0xd3fc
movl 0x11a6f(%rip), %eax     # 0x1e998
movl 0x11a71(%rip), %ecx     # 0x1e9a0
addl %ecx, %ecx
subl %ecx, %eax
cltd
idivl 0x11a72(%rip)           # 0x1e9ac
movl %eax, %ecx
movl 0x11a5a(%rip), %eax     # 0x1e99c
movl 0x11a5c(%rip), %edx     # 0x1e9a4
addl %edx, %edx
subl %edx, %eax
cltd
idivl 0x11a55(%rip)           # 0x1e9a8
jmp 0xcf72
movl 0xb1ed(%rip), %edi      # 0x18148
movl 0xb1eb(%rip), %esi      # 0x1814c
callq 0xd3fc
movl 0xb1dc(%rip), %ecx      # 0x18148
movl 0xb1da(%rip), %eax      # 0x1814c
cmpl $0x1, %ecx
adcl $0x0, %ecx
movl %ecx, 0xb1ca(%rip)      # 0x18148
cmpl $0x1, %eax
adcl $0x0, %eax
movl %eax, 0xb1c2(%rip)      # 0x1814c
leaq -0x9b2(%rip), %rsi      # 0xc5df
pushq $0xa
popq %rdi
callq 0x6070
movl 0xb1a9(%rip), %edi      # 0x18148
movl 0xb1a7(%rip), %esi      # 0x1814c
callq 0x7daf
movq 0x118ef(%rip), %rcx     # 0x1e8a0
leaq 0x4160(%rip), %rdx      # 0x11118
leaq 0xf0(%rsp), %rbx
pushq $0x41
popq %rsi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x60c0
leaq 0x4148(%rip), %rdi      # 0x1111c
pushq $0x1
popq %rdx
movq %rbx, %rsi
callq 0x65f0
callq 0x6d60
movl 0x119ad(%rip), %r15d    # 0x1e998
movl 0x119aa(%rip), %r14d    # 0x1e99c
movq 0x11897(%rip), %rdi     # 0x1e890
callq 0x62d0
movl %eax, %r13d
movq 0x11888(%rip), %rdi     # 0x1e890
movq %rbx, %rsi
callq 0x6470
movq %rbx, %rdi
xorl %esi, %esi
callq 0x6370
movl 0xf0(%rsp), %ecx
movl %ecx, %edx
xorl $0x16, %edx
orl %eax, %edx
jne 0xd03a
movl 0x12c(%rsp), %r14d
movl 0x128(%rsp), %r15d
cmpl $0x13, %ecx
jne 0xd001
movq 0x119ba(%rip), %rdi     # 0x1ea00
movq 0xade3(%rip), %rsi      # 0x17e30
movq 0x119a4(%rip), %rdx     # 0x1e9f8
movq 0x119b5(%rip), %rcx     # 0x1ea10
callq 0x737b
movl %eax, %ebx
movl %r15d, %edi
movl %r14d, %esi
callq 0xc9b3
pushq $0x40
popq %rsi
movl %ebx, %eax
cltd
idivl %esi
movslq %eax, %r15
shll $0x6, %eax
movl %ebx, %ecx
subl %eax, %ecx
pushq $0x1
popq %r12
movq %r12, %rbp
shlq %cl, %rbp
movl %r13d, %eax
cltd
idivl %esi
movslq %eax, %r14
shll $0x6, %eax
movl %r13d, %ecx
subl %eax, %ecx
shlq %cl, %r12
cmpl %ebx, %r13d
cmovgl %r13d, %ebx
incl %ebx
movsd 0x3a5a(%rip), %xmm0     # 0x10b08
movb $0x1, %cl
leaq 0xf0(%rsp), %r13
movq $0x0, 0x18(%rsp)
movq $0x0, 0x10(%rsp)
movl %ebx, 0xc(%rsp)
movl %ecx, 0x3c(%rsp)
xorl %eax, %eax
cmpq $0x10, %rax
je 0xd0e5
andq $0x0, 0x70(%rsp,%rax,8)
incq %rax
jmp 0xd0d4
orq %rbp, 0x70(%rsp,%r15,8)
orq %r12, 0x70(%rsp,%r14,8)
movq 0x1179a(%rip), %rdi     # 0x1e890
movapd %xmm0, 0x20(%rsp)
callq 0x6a50
movapd 0x20(%rsp), %xmm2
xorpd %xmm0, %xmm0
testl %eax, %eax
je 0xd113
xorpd %xmm2, %xmm2
movapd %xmm2, %xmm1
divsd 0x3a01(%rip), %xmm1     # 0x10b20
cvttsd2si %xmm1, %rax
cvtsi2sd %rax, %xmm1
movq %rax, 0x60(%rsp)
mulsd 0x39f2(%rip), %xmm1     # 0x10b28
addsd %xmm2, %xmm1
mulsd 0x39ee(%rip), %xmm1     # 0x10b30
cvttsd2si %xmm1, %rax
movapd %xmm2, 0x20(%rsp)
ucomisd %xmm0, %xmm2
movq %rax, 0x68(%rsp)
movl $0x0, %r8d
leaq 0x60(%rsp), %rax
cmovaeq %rax, %r8
movl %ebx, %edi
leaq 0x70(%rsp), %rsi
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x6340
testl %eax, %eax
jns 0xd1a8
callq 0x6640
movl (%rax), %edi
cmpl $0x4, %edi
movapd 0x20(%rsp), %xmm0
je 0xd0d2
callq 0x64c0
leaq 0x35ef(%rip), %rdi      # 0x1078d
movq %rax, %rsi
xorl %eax, %eax
callq 0x6bb6
pushq $0x1
popq %rdi
leaq 0x40(%rsp), %rsi
callq 0x6140
testq %rbp, 0x70(%rsp,%r15,8)
je 0xd1c1
callq 0x784b
xorl %ebx, %ebx
movq 0x116c6(%rip), %rdi     # 0x1e890
callq 0x6a50
testl %eax, %eax
je 0xd219
movq 0x116b6(%rip), %rdi     # 0x1e890
movq %r13, %rsi
callq 0x6470
movq %r13, %rdi
xorl %esi, %esi
callq 0x6370
movb $0x1, %bl
testl %eax, %eax
jne 0xd1c3
movslq 0xf0(%rsp), %rax
movabsq $0xd2fbb698b, %rcx      # imm = 0xD2FBB698B
btq %rax, %rcx
jb 0xd1c3
movq %r13, %rdi
leaq 0x803c(%rip), %rcx      # 0x15250
callq *(%rcx,%rax,8)
jmp 0xd1c3
testq %rbp, 0x70(%rsp,%r15,8)
sete %al
notb %bl
testb %al, %bl
jne 0xd2d5
movq 0x40(%rsp), %rcx
movq 0x48(%rsp), %rax
testb $0x1, 0x3c(%rsp)
movl 0xc(%rsp), %ebx
je 0xd280
movl 0x1176a(%rip), %edx     # 0x1e9b0
btl $0xb, %edx
movq %rax, 0x18(%rsp)
movq %rcx, 0x10(%rsp)
movq %rax, 0x58(%rsp)
movq %rcx, 0x50(%rsp)
jae 0xd280
andl $0xfffff7ff, %edx       # imm = 0xFFFFF7FF
movl %edx, 0x11744(%rip)     # 0x1e9b0
movq %rax, 0x18(%rsp)
movq %rcx, 0x10(%rsp)
movq %rax, 0x58(%rsp)
movq %rcx, 0x50(%rsp)
subq 0x50(%rsp), %rcx
imulq $0x3e8, %rcx, %rcx      # imm = 0x3E8
cvtsi2sd %rcx, %xmm0
subq 0x58(%rsp), %rax
cvtsi2sd %rax, %xmm1
movsd 0xab9d(%rip), %xmm2     # 0x17e40
divsd 0x3885(%rip), %xmm1     # 0x10b30
addsd %xmm0, %xmm1
movapd %xmm2, %xmm0
subsd %xmm1, %xmm0
divsd %xmm2, %xmm0
mulsd 0xab75(%rip), %xmm0     # 0x17e38
xorl %ecx, %ecx
ucomisd 0x384b(%rip), %xmm0     # 0x10b18
ja 0xd0ce
jmp 0xd2d9
movl 0xc(%rsp), %ebx
movl 0xab6d(%rip), %eax      # 0x17e4c
testl %eax, %eax
je 0xd350
cmpl $0x0, 0x116d6(%rip)     # 0x1e9c0
jne 0xd2fe
pushq $0x10
popq %rdi
callq 0x7cd8
testl %eax, %eax
je 0xd350
movl 0xab4e(%rip), %eax      # 0x17e4c
movl %eax, %eax
cvtsi2sd %rax, %xmm0
movq 0x40(%rsp), %rax
movq 0x48(%rsp), %rcx
subq 0x10(%rsp), %rax
imulq $0x3e8, %rax, %rax      # imm = 0x3E8
cvtsi2sd %rax, %xmm1
subq 0x18(%rsp), %rcx
cvtsi2sd %rcx, %xmm2
divsd 0x37fe(%rip), %xmm2     # 0x10b30
addsd %xmm1, %xmm2
movapd %xmm0, %xmm3
subsd %xmm2, %xmm3
xorpd %xmm1, %xmm1
ucomisd %xmm3, %xmm1
jae 0xd35a
movapd %xmm3, 0x20(%rsp)
jmp 0xd3ad
movsd 0x37b0(%rip), %xmm0     # 0x10b08
jmp 0xd3a7
xorpd 0x37ee(%rip), %xmm3     # 0x10b50
movl 0x11648(%rip), %eax     # 0x1e9b0
movl %eax, %ecx
movl $0x800, %edx            # imm = 0x800
orl %edx, %ecx
ucomisd %xmm0, %xmm3
cmovbel %eax, %ecx
xorl %edx, %ecx
movl %ecx, 0x11630(%rip)     # 0x1e9b0
pushq $0x10
popq %rdi
callq 0x7d3d
movq 0x40(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x48(%rsp), %rax
movq %rax, 0x18(%rsp)
movl 0xaaaa(%rip), %eax      # 0x17e4c
cvtsi2sd %rax, %xmm0
movapd %xmm0, 0x20(%rsp)
callq 0x874c
movq 0x114d7(%rip), %rdi     # 0x1e890
callq 0x6650
movb $0x1, %cl
movapd 0x20(%rsp), %xmm0
jmp 0xd0ce
addq $0x10, %rbx
addl $-0x2, %ebp
movl %ebp, %r13d
jmp 0xce82
callq 0xd3e4
callq 0x6120