140865835:	49 8b c8             	mov    %r8,%rcx
140865838:	49 2b ca             	sub    %r10,%rcx
14086583b:	48 bf ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rdi
140865842:	aa aa 2a
140865845:	48 8b c7             	mov    %rdi,%rax
140865848:	33 f6                	xor    %esi,%esi
14086584a:	48 f7 e9             	imul   %rcx
14086584d:	4c 8b da             	mov    %rdx,%r11
140865850:	49 c1 fb 02          	sar    $0x2,%r11
140865854:	49 8b c3             	mov    %r11,%rax
140865857:	48 c1 e8 3f          	shr    $0x3f,%rax
14086585b:	4c 03 d8             	add    %rax,%r11
14086585e:	49 3b db             	cmp    %r11,%rbx
140865861:	0f 82 be 00 00 00    	jb     0x140865925
140865867:	48 81 fb 10 27 00 00 	cmp    $0x2710,%rbx
14086586e:	0f 83 92 00 00 00    	jae    0x140865906
140865874:	4c 8d 4b 01          	lea    0x1(%rbx),%r9
140865878:	4d 3b cb             	cmp    %r11,%r9
14086587b:	73 14                	jae    0x140865891
14086587d:	4b 8d 04 49          	lea    (%r9,%r9,2),%rax
140865881:	49 8d 0c c2          	lea    (%r10,%rax,8),%rcx
140865885:	48 89 0d 4c db bc 00 	mov    %rcx,0xbcdb4c(%rip)        # 0x1414333d8
14086588c:	e9 94 00 00 00       	jmp    0x140865925
140865891:	0f 86 8e 00 00 00    	jbe    0x140865925
140865897:	48 8b 0d 42 db bc 00 	mov    0xbcdb42(%rip),%rcx        # 0x1414333e0
14086589e:	48 8b c7             	mov    %rdi,%rax
1408658a1:	49 2b ca             	sub    %r10,%rcx
1408658a4:	48 f7 e9             	imul   %rcx
1408658a7:	48 c1 fa 02          	sar    $0x2,%rdx
1408658ab:	48 8b c2             	mov    %rdx,%rax
1408658ae:	48 c1 e8 3f          	shr    $0x3f,%rax
1408658b2:	48 03 d0             	add    %rax,%rdx
1408658b5:	4c 3b ca             	cmp    %rdx,%r9
1408658b8:	76 16                	jbe    0x1408658d0
1408658ba:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
1408658bf:	49 8b d1             	mov    %r9,%rdx
1408658c2:	48 8d 0d 07 db bc 00 	lea    0xbcdb07(%rip),%rcx        # 0x1414333d0
1408658c9:	e8 42 3c ff ff       	call   0x140859510
1408658ce:	eb 4e                	jmp    0x14086591e
1408658d0:	4d 2b cb             	sub    %r11,%r9
1408658d3:	74 28                	je     0x1408658fd
1408658d5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
1408658dc:	00 00 00 00
1408658e0:	49 89 30             	mov    %rsi,(%r8)
1408658e3:	49 89 70 08          	mov    %rsi,0x8(%r8)
1408658e7:	41 c6 40 10 01       	movb   $0x1,0x10(%r8)
1408658ec:	49 83 c0 18          	add    $0x18,%r8
1408658f0:	49 83 e9 01          	sub    $0x1,%r9
1408658f4:	75 ea                	jne    0x1408658e0
1408658f6:	4c 8b 15 d3 da bc 00 	mov    0xbcdad3(%rip),%r10        # 0x1414333d0
1408658fd:	4c 89 05 d4 da bc 00 	mov    %r8,0xbcdad4(%rip)        # 0x1414333d8
140865904:	eb 1f                	jmp    0x140865925
140865906:	48 8b 0d eb bb bc 00 	mov    0xbcbbeb(%rip),%rcx        # 0x1414314f8
14086590d:	48 8d 15 04 f2 7d 00 	lea    0x7df204(%rip),%rdx        # 0x141044b18
140865914:	e8 e7 ee f2 ff       	call   0x140794800
140865919:	bb 01 00 00 00       	mov    $0x1,%ebx
14086591e:	4c 8b 15 ab da bc 00 	mov    0xbcdaab(%rip),%r10        # 0x1414333d0
140865925:	48 8d 04 5b          	lea    (%rbx,%rbx,2),%rax
140865929:	48 8d 3c c5 00 00 00 	lea    0x0(,%rax,8),%rdi
140865930:	00
140865931:	42 38 74 17 10       	cmp    %sil,0x10(%rdi,%r10,1)
140865936:	0f 84 28 01 00 00    	je     0x140865a64
14086593c:	40 38 35 81 da bc 00 	cmp    %sil,0xbcda81(%rip)        # 0x1414333c4
140865943:	0f 85 ee 00 00 00    	jne    0x140865a37
140865949:	0f 57 c0             	xorps  %xmm0,%xmm0
14086594c:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140865951:	33 c0                	xor    %eax,%eax
140865953:	ba 78 00 00 00       	mov    $0x78,%edx
140865958:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
14086595d:	48 89 84 24 d0 00 00 	mov    %rax,0xd0(%rsp)
140865964:	00
140865965:	0f 11 44 24 50       	movups %xmm0,0x50(%rsp)
14086596a:	0f 11 44 24 60       	movups %xmm0,0x60(%rsp)
14086596f:	0f 11 44 24 70       	movups %xmm0,0x70(%rsp)
140865974:	0f 11 84 24 80 00 00 	movups %xmm0,0x80(%rsp)
14086597b:	00
14086597c:	0f 11 84 24 90 00 00 	movups %xmm0,0x90(%rsp)
140865983:	00
140865984:	0f 11 84 24 a0 00 00 	movups %xmm0,0xa0(%rsp)
14086598b:	00
14086598c:	0f 11 84 24 b0 00 00 	movups %xmm0,0xb0(%rsp)
140865993:	00
140865994:	0f 11 84 24 c0 00 00 	movups %xmm0,0xc0(%rsp)
14086599b:	00
14086599c:	ff 15 5e df 71 00    	call   *0x71df5e(%rip)        # 0x140f83900
1408659a2:	33 d2                	xor    %edx,%edx
1408659a4:	40 88 b4 24 b7 00 00 	mov    %sil,0xb7(%rsp)
1408659ab:	00
1408659ac:	48 8d 8c 24 c0 00 00 	lea    0xc0(%rsp),%rcx
1408659b3:	00
1408659b4:	e8 37 bb 22 00       	call   0x140a914f0
1408659b9:	48 89 9c 24 b8 00 00 	mov    %rbx,0xb8(%rsp)
1408659c0:	00
1408659c1:	e8 56 d7 5d 00       	call   0x140e4311c
1408659c6:	40 38 35 f7 d9 bc 00 	cmp    %sil,0xbcd9f7(%rip)        # 0x1414333c4
1408659cd:	48 63 c8             	movslq %eax,%rcx
1408659d0:	48 89 8c 24 c8 00 00 	mov    %rcx,0xc8(%rsp)
1408659d7:	00
1408659d8:	75 07                	jne    0x1408659e1
1408659da:	e8 f1 80 22 00       	call   0x140a8dad0
1408659df:	eb 35                	jmp    0x140865a16
1408659e1:	8b 0d e1 d9 bc 00    	mov    0xbcd9e1(%rip),%ecx        # 0x1414333c8
1408659e7:	b8 bd 16 9c 06       	mov    $0x69c16bd,%eax
1408659ec:	f7 e1                	mul    %ecx
1408659ee:	8b c1                	mov    %ecx,%eax
1408659f0:	69 c9 a7 41 00 00    	imul   $0x41a7,%ecx,%ecx
1408659f6:	2b c2                	sub    %edx,%eax
1408659f8:	d1 e8                	shr    $1,%eax
1408659fa:	03 c2                	add    %edx,%eax
1408659fc:	c1 e8 10             	shr    $0x10,%eax
1408659ff:	69 c0 ff ff ff 7f    	imul   $0x7fffffff,%eax,%eax
140865a05:	2b c8                	sub    %eax,%ecx
140865a07:	8d 81 ff ff ff 7f    	lea    0x7fffffff(%rcx),%eax
140865a0d:	0f 49 c1             	cmovns %ecx,%eax
140865a10:	89 05 b2 d9 bc 00    	mov    %eax,0xbcd9b2(%rip)        # 0x1414333c8
140865a16:	ba 98 00 00 00       	mov    $0x98,%edx
140865a1b:	89 84 24 d0 00 00 00 	mov    %eax,0xd0(%rsp)
140865a22:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140865a27:	e8 64 ca f3 ff       	call   0x1407a2490
140865a2c:	4c 8b 15 9d d9 bc 00 	mov    0xbcd99d(%rip),%r10        # 0x1414333d0
140865a33:	48 8d 58 01          	lea    0x1(%rax),%rbx
140865a37:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140865a3c:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
140865a41:	0f 10 44 24 28       	movups 0x28(%rsp),%xmm0
140865a46:	40 88 74 24 38       	mov    %sil,0x38(%rsp)
140865a4b:	f2 0f 10 4c 24 38    	movsd  0x38(%rsp),%xmm1
140865a51:	42 0f 11 04 17       	movups %xmm0,(%rdi,%r10,1)
140865a56:	f2 42 0f 11 4c 17 10 	movsd  %xmm1,0x10(%rdi,%r10,1)
140865a5d:	4c 8b 15 6c d9 bc 00 	mov    0xbcd96c(%rip),%r10        # 0x1414333d0
140865a64:	4a ff 44 17 08       	incq   0x8(%rdi,%r10,1)
140865a69:	ba 10 00 00 00       	mov    $0x10,%edx
140865a6e:	48 8b 0d 5b d9 bc 00 	mov    0xbcd95b(%rip),%rcx        # 0x1414333d0
140865a75:	48 03 cf             	add    %rdi,%rcx
140865a78:	e8 13 ca f3 ff       	call   0x1407a2490
140865a7d:	48 8b 8c 24 e0 00 00 	mov    0xe0(%rsp),%rcx
140865a84:	00
140865a85:	48 33 cc             	xor    %rsp,%rcx
140865a88:	e8 73 5a 5b 00       	call   0x140e1b500
140865a8d:	4c 8d 9c 24 f0 00 00 	lea    0xf0(%rsp),%r11
140865a94:	00
140865a95:	49 8b 5b 18          	mov    0x18(%r11),%rbx
140865a99:	49 8b 73 20          	mov    0x20(%r11),%rsi
140865a9d:	49 8b e3             	mov    %r11,%rsp
140865aa0:	5f                   	pop    %rdi
140865aa1:	c3                   	ret
140865aa2:	cc                   	int3
140865aa3:	cc                   	int3
140865aa4:	cc                   	int3
140865aa5:	cc                   	int3
140865aa6:	cc                   	int3
140865aa7:	cc                   	int3
140865aa8:	cc                   	int3
140865aa9:	cc                   	int3
140865aaa:	cc                   	int3
140865aab:	cc                   	int3
140865aac:	cc                   	int3
140865aad:	cc                   	int3
140865aae:	cc                   	int3
140865aaf:	cc                   	int3
140865ab0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140865ab5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140865aba:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140865abf:	56                   	push   %rsi
140865ac0:	57                   	push   %rdi
140865ac1:	41 56                	push   %r14
140865ac3:	48 83 ec 30          	sub    $0x30,%rsp
140865ac7:	48 8b fa             	mov    %rdx,%rdi
140865aca:	48 8b f1             	mov    %rcx,%rsi
140865acd:	45 33 f6             	xor    %r14d,%r14d
140865ad0:	44 89 74 24 20       	mov    %r14d,0x20(%rsp)
140865ad5:	8b 42 10             	mov    0x10(%rdx),%eax
140865ad8:	0f 57 c0             	xorps  %xmm0,%xmm0
140865adb:	0f 11 01             	movups %xmm0,(%rcx)
140865ade:	4c 89 71 10          	mov    %r14,0x10(%rcx)
140865ae2:	48 c7 41 18 0f 00 00 	movq   $0xf,0x18(%rcx)
140865ae9:	00
140865aea:	44 88 31             	mov    %r14b,(%rcx)
140865aed:	c7 44 24 20 01 00 00 	movl   $0x1,0x20(%rsp)
140865af4:	00
140865af5:	85 c0                	test   %eax,%eax
140865af7:	0f 84 8d 00 00 00    	je     0x140865b8a
140865afd:	8b e8                	mov    %eax,%ebp
140865aff:	0f b6 5c 24 50       	movzbl 0x50(%rsp),%ebx
140865b04:	48 8b c7             	mov    %rdi,%rax
140865b07:	48 83 7f 18 0f       	cmpq   $0xf,0x18(%rdi)
140865b0c:	76 03                	jbe    0x140865b11
140865b0e:	48 8b 07             	mov    (%rdi),%rax
140865b11:	41 0f be 0c 06       	movsbl (%r14,%rax,1),%ecx
140865b16:	e8 05 dc 5c 00       	call   0x140e33720
140865b1b:	85 c0                	test   %eax,%eax
140865b1d:	74 14                	je     0x140865b33
140865b1f:	48 8b c7             	mov    %rdi,%rax
140865b22:	48 83 7f 18 0f       	cmpq   $0xf,0x18(%rdi)
140865b27:	76 03                	jbe    0x140865b2c
140865b29:	48 8b 07             	mov    (%rdi),%rax
140865b2c:	41 0f b6 0c 06       	movzbl (%r14,%rax,1),%ecx
140865b31:	eb 02                	jmp    0x140865b35
140865b33:	b1 5f                	mov    $0x5f,%cl
140865b35:	0f be c9             	movsbl %cl,%ecx
140865b38:	e8 ab a8 5d 00       	call   0x140e403e8
140865b3d:	48 8b 56 10          	mov    0x10(%rsi),%rdx
140865b41:	4c 8b 46 18          	mov    0x18(%rsi),%r8
140865b45:	49 3b d0             	cmp    %r8,%rdx
140865b48:	73 1e                	jae    0x140865b68
140865b4a:	48 8d 4a 01          	lea    0x1(%rdx),%rcx
140865b4e:	48 89 4e 10          	mov    %rcx,0x10(%rsi)
140865b52:	48 8b ce             	mov    %rsi,%rcx
140865b55:	49 83 f8 0f          	cmp    $0xf,%r8
140865b59:	76 03                	jbe    0x140865b5e
140865b5b:	48 8b 0e             	mov    (%rsi),%rcx
140865b5e:	88 04 11             	mov    %al,(%rcx,%rdx,1)
140865b61:	c6 44 11 01 00       	movb   $0x0,0x1(%rcx,%rdx,1)
140865b66:	eb 15                	jmp    0x140865b7d
140865b68:	44 0f b6 c8          	movzbl %al,%r9d
140865b6c:	44 0f b6 c3          	movzbl %bl,%r8d
140865b70:	ba 01 00 00 00       	mov    $0x1,%edx
140865b75:	48 8b ce             	mov    %rsi,%rcx
140865b78:	e8 43 2c 94 ff       	call   0x1401a87c0
140865b7d:	49 ff c6             	inc    %r14
140865b80:	48 83 ed 01          	sub    $0x1,%rbp
140865b84:	0f 85 7a ff ff ff    	jne    0x140865b04
140865b8a:	48 8b c6             	mov    %rsi,%rax
140865b8d:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
140865b92:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
140865b97:	48 83 c4 30          	add    $0x30,%rsp
140865b9b:	41 5e                	pop    %r14
140865b9d:	5f                   	pop    %rdi
140865b9e:	5e                   	pop    %rsi
140865b9f:	c3                   	ret
140865ba0:	cc                   	int3
140865ba1:	cc                   	int3
140865ba2:	cc                   	int3
140865ba3:	cc                   	int3
140865ba4:	cc                   	int3
140865ba5:	cc                   	int3
140865ba6:	cc                   	int3
140865ba7:	cc                   	int3
140865ba8:	cc                   	int3
140865ba9:	cc                   	int3
140865baa:	cc                   	int3
140865bab:	cc                   	int3
140865bac:	cc                   	int3
140865bad:	cc                   	int3
140865bae:	cc                   	int3
140865baf:	cc                   	int3
140865bb0:	40 53                	rex push %rbx
140865bb2:	48 83 ec 20          	sub    $0x20,%rsp
140865bb6:	48 8b d9             	mov    %rcx,%rbx
140865bb9:	48 85 c9             	test   %rcx,%rcx
140865bbc:	75 08                	jne    0x140865bc6
140865bbe:	33 c0                	xor    %eax,%eax
140865bc0:	48 83 c4 20          	add    $0x20,%rsp
140865bc4:	5b                   	pop    %rbx
140865bc5:	c3                   	ret
140865bc6:	48 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%rcx
140865bcd:	0f 1f 00             	nopl   (%rax)
140865bd0:	48 ff c1             	inc    %rcx
140865bd3:	80 3c 0b 00          	cmpb   $0x0,(%rbx,%rcx,1)
140865bd7:	75 f7                	jne    0x140865bd0
140865bd9:	48 ff c1             	inc    %rcx
140865bdc:	e8 3b 5a 5b 00       	call   0x140e1b61c
140865be1:	48 8b d0             	mov    %rax,%rdx
140865be4:	48 2b d3             	sub    %rbx,%rdx
140865be7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140865bee:	00 00
140865bf0:	0f b6 0b             	movzbl (%rbx),%ecx
140865bf3:	88 0c 1a             	mov    %cl,(%rdx,%rbx,1)
140865bf6:	48 8d 5b 01          	lea    0x1(%rbx),%rbx
140865bfa:	84 c9                	test   %cl,%cl
140865bfc:	75 f2                	jne    0x140865bf0
140865bfe:	48 83 c4 20          	add    $0x20,%rsp
140865c02:	5b                   	pop    %rbx
140865c03:	c3                   	ret
140865c04:	cc                   	int3
140865c05:	cc                   	int3
140865c06:	cc                   	int3
140865c07:	cc                   	int3
140865c08:	cc                   	int3
140865c09:	cc                   	int3
140865c0a:	cc                   	int3
140865c0b:	cc                   	int3
140865c0c:	cc                   	int3
140865c0d:	cc                   	int3
140865c0e:	cc                   	int3
140865c0f:	cc                   	int3
140865c10:	48 83 ec 48          	sub    $0x48,%rsp
140865c14:	48 8b 05 e5 32 b5 00 	mov    0xb532e5(%rip),%rax        # 0x1413b8f00
140865c1b:	48 33 c4             	xor    %rsp,%rax
140865c1e:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140865c23:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140865c28:	b9 02 00 00 00       	mov    $0x2,%ecx
140865c2d:	e8 ae 82 22 00       	call   0x140a8dee0
140865c32:	66 0f 6e 44 24 28    	movd   0x28(%rsp),%xmm0
140865c38:	0f 57 c9             	xorps  %xmm1,%xmm1
140865c3b:	f2 48 0f 2a 4c 24 20 	cvtsi2sdq 0x20(%rsp),%xmm1
140865c42:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
140865c46:	f2 0f 5e 05 9a c7 77 	divsd  0x77c79a(%rip),%xmm0        # 0x140fe23e8
140865c4d:	00
140865c4e:	f2 0f 58 c1          	addsd  %xmm1,%xmm0
140865c52:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
140865c57:	48 33 cc             	xor    %rsp,%rcx
140865c5a:	e8 a1 58 5b 00       	call   0x140e1b500
140865c5f:	48 83 c4 48          	add    $0x48,%rsp
140865c63:	c3                   	ret
140865c64:	cc                   	int3
140865c65:	cc                   	int3
140865c66:	cc                   	int3
140865c67:	cc                   	int3
140865c68:	cc                   	int3
140865c69:	cc                   	int3
140865c6a:	cc                   	int3
140865c6b:	cc                   	int3
140865c6c:	cc                   	int3
140865c6d:	cc                   	int3
140865c6e:	cc                   	int3
140865c6f:	cc                   	int3
140865c70:	40 53                	rex push %rbx
140865c72:	48 83 ec 30          	sub    $0x30,%rsp
140865c76:	0f 29 74 24 20       	movaps %xmm6,0x20(%rsp)
140865c7b:	0f b6 d9             	movzbl %cl,%ebx
140865c7e:	e8 05 82 59 00       	call   0x140dfde88
140865c83:	48 8b d0             	mov    %rax,%rdx
140865c86:	0f 57 c9             	xorps  %xmm1,%xmm1
140865c89:	48 b8 4b 59 86 38 d6 	movabs $0x346dc5d63886594b,%rax
140865c90:	c5 6d 34
140865c93:	48 f7 ea             	imul   %rdx
140865c96:	4c 8b c2             	mov    %rdx,%r8
140865c99:	49 c1 f8 0b          	sar    $0xb,%r8
140865c9d:	49 8b c0             	mov    %r8,%rax
140865ca0:	48 c1 e8 3f          	shr    $0x3f,%rax
140865ca4:	4c 03 c0             	add    %rax,%r8
140865ca7:	48 b8 cf f7 53 e3 a5 	movabs $0x20c49ba5e353f7cf,%rax
140865cae:	9b c4 20
140865cb1:	49 f7 e8             	imul   %r8
140865cb4:	48 c1 fa 07          	sar    $0x7,%rdx
140865cb8:	48 8b c2             	mov    %rdx,%rax
140865cbb:	48 c1 e8 3f          	shr    $0x3f,%rax
140865cbf:	48 03 d0             	add    %rax,%rdx
140865cc2:	69 c2 e8 03 00 00    	imul   $0x3e8,%edx,%eax
140865cc8:	66 0f 6e c2          	movd   %edx,%xmm0
140865ccc:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
140865cd0:	44 2b c0             	sub    %eax,%r8d
140865cd3:	41 69 c0 e8 03 00 00 	imul   $0x3e8,%r8d,%eax
140865cda:	66 0f 6e f0          	movd   %eax,%xmm6
140865cde:	f3 0f e6 f6          	cvtdq2pd %xmm6,%xmm6
140865ce2:	f2 0f 5e 35 ee 09 78 	divsd  0x7809ee(%rip),%xmm6        # 0x140fe66d8
140865ce9:	00
140865cea:	f2 0f 58 f0          	addsd  %xmm0,%xmm6
140865cee:	f2 0f 10 05 5a ab bc 	movsd  0xbcab5a(%rip),%xmm0        # 0x141430850
140865cf5:	00