14018e69c:	48 b8 f7 b6 98 63 bb 	movabs $0x79baa6bb6398b6f7,%rax
14018e6a3:	a6 ba 79
14018e6a6:	49 f7 e0             	mul    %r8
14018e6a9:	4c 2b da             	sub    %rdx,%r11
14018e6ac:	49 d1 eb             	shr    $1,%r11
14018e6af:	4c 03 da             	add    %rdx,%r11
14018e6b2:	49 c1 eb 0c          	shr    $0xc,%r11
14018e6b6:	49 69 c3 50 ea ff ff 	imul   $0xffffffffffffea50,%r11,%rax
14018e6bd:	4c 03 c0             	add    %rax,%r8
14018e6c0:	ba 5b 01 00 00       	mov    $0x15b,%edx
14018e6c5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
14018e6cc:	00 00 00 00
14018e6d0:	41 0f b6 02          	movzbl (%r10),%eax
14018e6d4:	03 c8                	add    %eax,%ecx
14018e6d6:	41 0f b6 42 01       	movzbl 0x1(%r10),%eax
14018e6db:	44 03 c9             	add    %ecx,%r9d
14018e6de:	03 c8                	add    %eax,%ecx
14018e6e0:	41 0f b6 42 02       	movzbl 0x2(%r10),%eax
14018e6e5:	44 03 c9             	add    %ecx,%r9d
14018e6e8:	03 c8                	add    %eax,%ecx
14018e6ea:	41 0f b6 42 03       	movzbl 0x3(%r10),%eax
14018e6ef:	44 03 c9             	add    %ecx,%r9d
14018e6f2:	03 c8                	add    %eax,%ecx
14018e6f4:	41 0f b6 42 04       	movzbl 0x4(%r10),%eax
14018e6f9:	44 03 c9             	add    %ecx,%r9d
14018e6fc:	03 c8                	add    %eax,%ecx
14018e6fe:	41 0f b6 42 05       	movzbl 0x5(%r10),%eax
14018e703:	44 03 c9             	add    %ecx,%r9d
14018e706:	03 c8                	add    %eax,%ecx
14018e708:	41 0f b6 42 06       	movzbl 0x6(%r10),%eax
14018e70d:	44 03 c9             	add    %ecx,%r9d
14018e710:	03 c8                	add    %eax,%ecx
14018e712:	41 0f b6 42 07       	movzbl 0x7(%r10),%eax
14018e717:	44 03 c9             	add    %ecx,%r9d
14018e71a:	03 c8                	add    %eax,%ecx
14018e71c:	41 0f b6 42 08       	movzbl 0x8(%r10),%eax
14018e721:	44 03 c9             	add    %ecx,%r9d
14018e724:	03 c8                	add    %eax,%ecx
14018e726:	41 0f b6 42 09       	movzbl 0x9(%r10),%eax
14018e72b:	44 03 c9             	add    %ecx,%r9d
14018e72e:	03 c8                	add    %eax,%ecx
14018e730:	41 0f b6 42 0a       	movzbl 0xa(%r10),%eax
14018e735:	44 03 c9             	add    %ecx,%r9d
14018e738:	03 c8                	add    %eax,%ecx
14018e73a:	41 0f b6 42 0b       	movzbl 0xb(%r10),%eax
14018e73f:	44 03 c9             	add    %ecx,%r9d
14018e742:	03 c8                	add    %eax,%ecx
14018e744:	41 0f b6 42 0c       	movzbl 0xc(%r10),%eax
14018e749:	44 03 c9             	add    %ecx,%r9d
14018e74c:	03 c8                	add    %eax,%ecx
14018e74e:	41 0f b6 42 0d       	movzbl 0xd(%r10),%eax
14018e753:	44 03 c9             	add    %ecx,%r9d
14018e756:	03 c8                	add    %eax,%ecx
14018e758:	41 0f b6 42 0e       	movzbl 0xe(%r10),%eax
14018e75d:	44 03 c9             	add    %ecx,%r9d
14018e760:	03 c8                	add    %eax,%ecx
14018e762:	41 0f b6 42 0f       	movzbl 0xf(%r10),%eax
14018e767:	44 03 c9             	add    %ecx,%r9d
14018e76a:	49 83 c2 10          	add    $0x10,%r10
14018e76e:	03 c8                	add    %eax,%ecx
14018e770:	44 03 c9             	add    %ecx,%r9d
14018e773:	83 c2 ff             	add    $0xffffffff,%edx
14018e776:	0f 85 54 ff ff ff    	jne    0x14018e6d0
14018e77c:	b8 71 80 07 80       	mov    $0x80078071,%eax
14018e781:	f7 e1                	mul    %ecx
14018e783:	c1 ea 0f             	shr    $0xf,%edx
14018e786:	69 c2 0f 00 ff ff    	imul   $0xffff000f,%edx,%eax
14018e78c:	03 c8                	add    %eax,%ecx
14018e78e:	b8 71 80 07 80       	mov    $0x80078071,%eax
14018e793:	41 f7 e1             	mul    %r9d
14018e796:	c1 ea 0f             	shr    $0xf,%edx
14018e799:	69 c2 0f 00 ff ff    	imul   $0xffff000f,%edx,%eax
14018e79f:	44 03 c8             	add    %eax,%r9d
14018e7a2:	49 83 eb 01          	sub    $0x1,%r11
14018e7a6:	0f 85 14 ff ff ff    	jne    0x14018e6c0
14018e7ac:	4d 85 c0             	test   %r8,%r8
14018e7af:	0f 84 06 01 00 00    	je     0x14018e8bb
14018e7b5:	49 83 f8 10          	cmp    $0x10,%r8
14018e7b9:	0f 82 c3 00 00 00    	jb     0x14018e882
14018e7bf:	49 8b d0             	mov    %r8,%rdx
14018e7c2:	48 c1 ea 04          	shr    $0x4,%rdx
14018e7c6:	48 6b c2 f0          	imul   $0xfffffffffffffff0,%rdx,%rax
14018e7ca:	4c 03 c0             	add    %rax,%r8
14018e7cd:	0f 1f 00             	nopl   (%rax)
14018e7d0:	41 0f b6 02          	movzbl (%r10),%eax
14018e7d4:	03 c8                	add    %eax,%ecx
14018e7d6:	41 0f b6 42 01       	movzbl 0x1(%r10),%eax
14018e7db:	44 03 c9             	add    %ecx,%r9d
14018e7de:	03 c8                	add    %eax,%ecx
14018e7e0:	41 0f b6 42 02       	movzbl 0x2(%r10),%eax
14018e7e5:	44 03 c9             	add    %ecx,%r9d
14018e7e8:	03 c8                	add    %eax,%ecx
14018e7ea:	41 0f b6 42 03       	movzbl 0x3(%r10),%eax
14018e7ef:	44 03 c9             	add    %ecx,%r9d
14018e7f2:	03 c8                	add    %eax,%ecx
14018e7f4:	41 0f b6 42 04       	movzbl 0x4(%r10),%eax
14018e7f9:	44 03 c9             	add    %ecx,%r9d
14018e7fc:	03 c8                	add    %eax,%ecx
14018e7fe:	41 0f b6 42 05       	movzbl 0x5(%r10),%eax
14018e803:	44 03 c9             	add    %ecx,%r9d
14018e806:	03 c8                	add    %eax,%ecx
14018e808:	41 0f b6 42 06       	movzbl 0x6(%r10),%eax
14018e80d:	44 03 c9             	add    %ecx,%r9d
14018e810:	03 c8                	add    %eax,%ecx
14018e812:	41 0f b6 42 07       	movzbl 0x7(%r10),%eax
14018e817:	44 03 c9             	add    %ecx,%r9d
14018e81a:	03 c8                	add    %eax,%ecx
14018e81c:	41 0f b6 42 08       	movzbl 0x8(%r10),%eax
14018e821:	44 03 c9             	add    %ecx,%r9d
14018e824:	03 c8                	add    %eax,%ecx
14018e826:	41 0f b6 42 09       	movzbl 0x9(%r10),%eax
14018e82b:	44 03 c9             	add    %ecx,%r9d
14018e82e:	03 c8                	add    %eax,%ecx
14018e830:	41 0f b6 42 0a       	movzbl 0xa(%r10),%eax
14018e835:	44 03 c9             	add    %ecx,%r9d
14018e838:	03 c8                	add    %eax,%ecx
14018e83a:	41 0f b6 42 0b       	movzbl 0xb(%r10),%eax
14018e83f:	44 03 c9             	add    %ecx,%r9d
14018e842:	03 c8                	add    %eax,%ecx
14018e844:	41 0f b6 42 0c       	movzbl 0xc(%r10),%eax
14018e849:	44 03 c9             	add    %ecx,%r9d
14018e84c:	03 c8                	add    %eax,%ecx
14018e84e:	41 0f b6 42 0d       	movzbl 0xd(%r10),%eax
14018e853:	44 03 c9             	add    %ecx,%r9d
14018e856:	03 c8                	add    %eax,%ecx
14018e858:	41 0f b6 42 0e       	movzbl 0xe(%r10),%eax
14018e85d:	44 03 c9             	add    %ecx,%r9d
14018e860:	03 c8                	add    %eax,%ecx
14018e862:	41 0f b6 42 0f       	movzbl 0xf(%r10),%eax
14018e867:	44 03 c9             	add    %ecx,%r9d
14018e86a:	49 83 c2 10          	add    $0x10,%r10
14018e86e:	03 c8                	add    %eax,%ecx
14018e870:	44 03 c9             	add    %ecx,%r9d
14018e873:	48 83 ea 01          	sub    $0x1,%rdx
14018e877:	0f 85 53 ff ff ff    	jne    0x14018e7d0
14018e87d:	4d 85 c0             	test   %r8,%r8
14018e880:	74 13                	je     0x14018e895
14018e882:	41 0f b6 02          	movzbl (%r10),%eax
14018e886:	4d 8d 52 01          	lea    0x1(%r10),%r10
14018e88a:	03 c8                	add    %eax,%ecx
14018e88c:	44 03 c9             	add    %ecx,%r9d
14018e88f:	49 83 e8 01          	sub    $0x1,%r8
14018e893:	75 ed                	jne    0x14018e882
14018e895:	b8 71 80 07 80       	mov    $0x80078071,%eax
14018e89a:	f7 e1                	mul    %ecx
14018e89c:	b8 71 80 07 80       	mov    $0x80078071,%eax
14018e8a1:	c1 ea 0f             	shr    $0xf,%edx
14018e8a4:	69 d2 0f 00 ff ff    	imul   $0xffff000f,%edx,%edx
14018e8aa:	03 ca                	add    %edx,%ecx
14018e8ac:	41 f7 e1             	mul    %r9d
14018e8af:	c1 ea 0f             	shr    $0xf,%edx
14018e8b2:	69 d2 0f 00 ff ff    	imul   $0xffff000f,%edx,%edx
14018e8b8:	44 03 ca             	add    %edx,%r9d
14018e8bb:	41 c1 e1 10          	shl    $0x10,%r9d
14018e8bf:	44 0b c9             	or     %ecx,%r9d
14018e8c2:	41 8b c1             	mov    %r9d,%eax
14018e8c5:	c3                   	ret
14018e8c6:	cc                   	int3
14018e8c7:	cc                   	int3
14018e8c8:	cc                   	int3
14018e8c9:	cc                   	int3
14018e8ca:	cc                   	int3
14018e8cb:	cc                   	int3
14018e8cc:	cc                   	int3
14018e8cd:	cc                   	int3
14018e8ce:	cc                   	int3
14018e8cf:	cc                   	int3
14018e8d0:	45 8b c0             	mov    %r8d,%r8d
14018e8d3:	48 85 d2             	test   %rdx,%rdx
14018e8d6:	75 03                	jne    0x14018e8db
14018e8d8:	33 c0                	xor    %eax,%eax
14018e8da:	c3                   	ret
14018e8db:	e9 00 00 00 00       	jmp    0x14018e8e0
14018e8e0:	40 57                	rex push %rdi
14018e8e2:	48 8d 3d b7 44 1b 00 	lea    0x1b44b7(%rip),%rdi        # 0x140342da0
14018e8e9:	4d 8b d8             	mov    %r8,%r11
14018e8ec:	4c 8b d2             	mov    %rdx,%r10
14018e8ef:	f7 d1                	not    %ecx
14018e8f1:	4d 85 c0             	test   %r8,%r8
14018e8f4:	74 21                	je     0x14018e917
14018e8f6:	41 f6 c2 03          	test   $0x3,%r10b
14018e8fa:	74 1b                	je     0x14018e917
14018e8fc:	41 0f b6 12          	movzbl (%r10),%edx
14018e900:	8b c1                	mov    %ecx,%eax
14018e902:	48 33 d0             	xor    %rax,%rdx
14018e905:	c1 e9 08             	shr    $0x8,%ecx
14018e908:	0f b6 c2             	movzbl %dl,%eax
14018e90b:	49 ff c2             	inc    %r10
14018e90e:	33 0c 87             	xor    (%rdi,%rax,4),%ecx
14018e911:	49 83 eb 01          	sub    $0x1,%r11
14018e915:	75 df                	jne    0x14018e8f6
14018e917:	49 83 fb 20          	cmp    $0x20,%r11
14018e91b:	0f 82 38 02 00 00    	jb     0x14018eb59
14018e921:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14018e926:	49 8b db             	mov    %r11,%rbx
14018e929:	48 c1 eb 05          	shr    $0x5,%rbx
14018e92d:	48 6b c3 e0          	imul   $0xffffffffffffffe0,%rbx,%rax
14018e931:	4c 03 d8             	add    %rax,%r11
14018e934:	0f 1f 40 00          	nopl   0x0(%rax)
14018e938:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14018e93f:	00
14018e940:	41 33 0a             	xor    (%r10),%ecx
14018e943:	44 8b c9             	mov    %ecx,%r9d
14018e946:	8b c1                	mov    %ecx,%eax
14018e948:	48 c1 e8 10          	shr    $0x10,%rax
14018e94c:	0f b6 d0             	movzbl %al,%edx
14018e94f:	8b c1                	mov    %ecx,%eax
14018e951:	48 c1 e8 08          	shr    $0x8,%rax
14018e955:	0f b6 c8             	movzbl %al,%ecx
14018e958:	41 8b c1             	mov    %r9d,%eax
14018e95b:	44 8b 84 97 00 04 00 	mov    0x400(%rdi,%rdx,4),%r8d
14018e962:	00
14018e963:	48 c1 e8 18          	shr    $0x18,%rax
14018e967:	44 33 84 8f 00 08 00 	xor    0x800(%rdi,%rcx,4),%r8d
14018e96e:	00
14018e96f:	44 33 04 87          	xor    (%rdi,%rax,4),%r8d
14018e973:	41 0f b6 c1          	movzbl %r9b,%eax
14018e977:	44 33 84 87 00 0c 00 	xor    0xc00(%rdi,%rax,4),%r8d
14018e97e:	00
14018e97f:	45 33 42 04          	xor    0x4(%r10),%r8d
14018e983:	45 8b c8             	mov    %r8d,%r9d
14018e986:	41 8b c0             	mov    %r8d,%eax
14018e989:	48 c1 e8 10          	shr    $0x10,%rax
14018e98d:	0f b6 d0             	movzbl %al,%edx
14018e990:	41 8b c0             	mov    %r8d,%eax
14018e993:	48 c1 e8 08          	shr    $0x8,%rax
14018e997:	0f b6 c8             	movzbl %al,%ecx
14018e99a:	41 8b c1             	mov    %r9d,%eax
14018e99d:	44 8b 84 97 00 04 00 	mov    0x400(%rdi,%rdx,4),%r8d
14018e9a4:	00
14018e9a5:	48 c1 e8 18          	shr    $0x18,%rax
14018e9a9:	44 33 84 8f 00 08 00 	xor    0x800(%rdi,%rcx,4),%r8d
14018e9b0:	00
14018e9b1:	44 33 04 87          	xor    (%rdi,%rax,4),%r8d
14018e9b5:	41 0f b6 c1          	movzbl %r9b,%eax
14018e9b9:	44 33 84 87 00 0c 00 	xor    0xc00(%rdi,%rax,4),%r8d
14018e9c0:	00
14018e9c1:	45 33 42 08          	xor    0x8(%r10),%r8d
14018e9c5:	45 8b c8             	mov    %r8d,%r9d
14018e9c8:	41 8b c0             	mov    %r8d,%eax
14018e9cb:	48 c1 e8 10          	shr    $0x10,%rax
14018e9cf:	0f b6 d0             	movzbl %al,%edx
14018e9d2:	41 8b c0             	mov    %r8d,%eax
14018e9d5:	48 c1 e8 08          	shr    $0x8,%rax
14018e9d9:	0f b6 c8             	movzbl %al,%ecx
14018e9dc:	41 8b c1             	mov    %r9d,%eax
14018e9df:	44 8b 84 97 00 04 00 	mov    0x400(%rdi,%rdx,4),%r8d
14018e9e6:	00
14018e9e7:	48 c1 e8 18          	shr    $0x18,%rax
14018e9eb:	44 33 84 8f 00 08 00 	xor    0x800(%rdi,%rcx,4),%r8d
14018e9f2:	00
14018e9f3:	44 33 04 87          	xor    (%rdi,%rax,4),%r8d
14018e9f7:	41 0f b6 c1          	movzbl %r9b,%eax
14018e9fb:	44 33 84 87 00 0c 00 	xor    0xc00(%rdi,%rax,4),%r8d
14018ea02:	00
14018ea03:	45 33 42 0c          	xor    0xc(%r10),%r8d
14018ea07:	45 8b c8             	mov    %r8d,%r9d
14018ea0a:	41 8b c0             	mov    %r8d,%eax
14018ea0d:	48 c1 e8 10          	shr    $0x10,%rax
14018ea11:	0f b6 d0             	movzbl %al,%edx
14018ea14:	41 8b c0             	mov    %r8d,%eax
14018ea17:	48 c1 e8 08          	shr    $0x8,%rax
14018ea1b:	0f b6 c8             	movzbl %al,%ecx
14018ea1e:	41 8b c1             	mov    %r9d,%eax
14018ea21:	44 8b 84 97 00 04 00 	mov    0x400(%rdi,%rdx,4),%r8d
14018ea28:	00
14018ea29:	48 c1 e8 18          	shr    $0x18,%rax
14018ea2d:	44 33 84 8f 00 08 00 	xor    0x800(%rdi,%rcx,4),%r8d
14018ea34:	00
14018ea35:	44 33 04 87          	xor    (%rdi,%rax,4),%r8d
14018ea39:	41 0f b6 c1          	movzbl %r9b,%eax
14018ea3d:	44 33 84 87 00 0c 00 	xor    0xc00(%rdi,%rax,4),%r8d
14018ea44:	00
14018ea45:	45 33 42 10          	xor    0x10(%r10),%r8d
14018ea49:	45 8b c8             	mov    %r8d,%r9d
14018ea4c:	41 8b c0             	mov    %r8d,%eax
14018ea4f:	48 c1 e8 10          	shr    $0x10,%rax
14018ea53:	0f b6 d0             	movzbl %al,%edx
14018ea56:	41 8b c0             	mov    %r8d,%eax
14018ea59:	48 c1 e8 08          	shr    $0x8,%rax
14018ea5d:	0f b6 c8             	movzbl %al,%ecx
14018ea60:	41 8b c1             	mov    %r9d,%eax
14018ea63:	44 8b 84 97 00 04 00 	mov    0x400(%rdi,%rdx,4),%r8d
14018ea6a:	00
14018ea6b:	48 c1 e8 18          	shr    $0x18,%rax
14018ea6f:	44 33 84 8f 00 08 00 	xor    0x800(%rdi,%rcx,4),%r8d
14018ea76:	00
14018ea77:	44 33 04 87          	xor    (%rdi,%rax,4),%r8d
14018ea7b:	41 0f b6 c1          	movzbl %r9b,%eax
14018ea7f:	44 33 84 87 00 0c 00 	xor    0xc00(%rdi,%rax,4),%r8d
14018ea86:	00
14018ea87:	45 33 42 14          	xor    0x14(%r10),%r8d
14018ea8b:	41 8b c0             	mov    %r8d,%eax
14018ea8e:	48 c1 e8 10          	shr    $0x10,%rax
14018ea92:	0f b6 d0             	movzbl %al,%edx
14018ea95:	41 8b c0             	mov    %r8d,%eax
14018ea98:	45 8b c8             	mov    %r8d,%r9d
14018ea9b:	44 8b 84 97 00 04 00 	mov    0x400(%rdi,%rdx,4),%r8d
14018eaa2:	00
14018eaa3:	48 c1 e8 08          	shr    $0x8,%rax
14018eaa7:	0f b6 c8             	movzbl %al,%ecx
14018eaaa:	41 8b c1             	mov    %r9d,%eax
14018eaad:	48 c1 e8 18          	shr    $0x18,%rax
14018eab1:	44 33 84 8f 00 08 00 	xor    0x800(%rdi,%rcx,4),%r8d
14018eab8:	00
14018eab9:	44 33 04 87          	xor    (%rdi,%rax,4),%r8d
14018eabd:	41 0f b6 c1          	movzbl %r9b,%eax
14018eac1:	44 33 84 87 00 0c 00 	xor    0xc00(%rdi,%rax,4),%r8d
14018eac8:	00
14018eac9:	45 33 42 18          	xor    0x18(%r10),%r8d
14018eacd:	45 8b c8             	mov    %r8d,%r9d
14018ead0:	41 8b c0             	mov    %r8d,%eax
14018ead3:	48 c1 e8 08          	shr    $0x8,%rax
14018ead7:	0f b6 d0             	movzbl %al,%edx
14018eada:	41 8b c0             	mov    %r8d,%eax
14018eadd:	48 c1 e8 10          	shr    $0x10,%rax
14018eae1:	0f b6 c8             	movzbl %al,%ecx
14018eae4:	41 8b c1             	mov    %r9d,%eax
14018eae7:	44 8b 84 97 00 08 00 	mov    0x800(%rdi,%rdx,4),%r8d
14018eaee:	00
14018eaef:	48 c1 e8 18          	shr    $0x18,%rax
14018eaf3:	44 33 84 8f 00 04 00 	xor    0x400(%rdi,%rcx,4),%r8d
14018eafa:	00
14018eafb:	44 33 04 87          	xor    (%rdi,%rax,4),%r8d
14018eaff:	41 0f b6 c1          	movzbl %r9b,%eax
14018eb03:	44 33 84 87 00 0c 00 	xor    0xc00(%rdi,%rax,4),%r8d
14018eb0a:	00
14018eb0b:	45 33 42 1c          	xor    0x1c(%r10),%r8d
14018eb0f:	49 83 c2 20          	add    $0x20,%r10
14018eb13:	41 8b c0             	mov    %r8d,%eax
14018eb16:	48 c1 e8 10          	shr    $0x10,%rax
14018eb1a:	0f b6 c8             	movzbl %al,%ecx
14018eb1d:	41 8b c0             	mov    %r8d,%eax
14018eb20:	48 c1 e8 08          	shr    $0x8,%rax
14018eb24:	0f b6 d0             	movzbl %al,%edx
14018eb27:	8b 8c 8f 00 04 00 00 	mov    0x400(%rdi,%rcx,4),%ecx
14018eb2e:	41 8b c0             	mov    %r8d,%eax
14018eb31:	48 c1 e8 18          	shr    $0x18,%rax
14018eb35:	33 8c 97 00 08 00 00 	xor    0x800(%rdi,%rdx,4),%ecx
14018eb3c:	33 0c 87             	xor    (%rdi,%rax,4),%ecx
14018eb3f:	41 0f b6 c0          	movzbl %r8b,%eax
14018eb43:	33 8c 87 00 0c 00 00 	xor    0xc00(%rdi,%rax,4),%ecx
14018eb4a:	48 83 eb 01          	sub    $0x1,%rbx
14018eb4e:	0f 85 ec fd ff ff    	jne    0x14018e940
14018eb54:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
14018eb59:	49 83 fb 04          	cmp    $0x4,%r11
14018eb5d:	72 57                	jb     0x14018ebb6
14018eb5f:	4d 8b cb             	mov    %r11,%r9
14018eb62:	49 c1 e9 02          	shr    $0x2,%r9
14018eb66:	49 6b c1 fc          	imul   $0xfffffffffffffffc,%r9,%rax