14081077a:	48 89 45 c7          	mov    %rax,-0x39(%rbp)
14081077e:	4d 8b 75 38          	mov    0x38(%r13),%r14
140810782:	49 8b 7d 30          	mov    0x30(%r13),%rdi
140810786:	48 89 5d e7          	mov    %rbx,-0x19(%rbp)
14081078a:	48 89 5d ef          	mov    %rbx,-0x11(%rbp)
14081078e:	48 8d 45 af          	lea    -0x51(%rbp),%rax
140810792:	48 89 45 f7          	mov    %rax,-0x9(%rbp)
140810796:	49 3b fe             	cmp    %r14,%rdi
140810799:	74 21                	je     0x1408107bc
14081079b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1408107a0:	48 8b d7             	mov    %rdi,%rdx
1408107a3:	48 8b cb             	mov    %rbx,%rcx
1408107a6:	e8 95 8e ff ff       	call   0x140809640
1408107ab:	48 83 c3 30          	add    $0x30,%rbx
1408107af:	48 89 5d ef          	mov    %rbx,-0x11(%rbp)
1408107b3:	48 83 c7 30          	add    $0x30,%rdi
1408107b7:	49 3b fe             	cmp    %r14,%rdi
1408107ba:	75 e4                	jne    0x1408107a0
1408107bc:	48 89 5d b7          	mov    %rbx,-0x49(%rbp)
1408107c0:	48 8b 7d cf          	mov    -0x31(%rbp),%rdi
1408107c4:	4c 8b 75 d7          	mov    -0x29(%rbp),%r14
1408107c8:	eb 04                	jmp    0x1408107ce
1408107ca:	48 8b 5d b7          	mov    -0x49(%rbp),%rbx
1408107ce:	4c 8b 47 18          	mov    0x18(%rdi),%r8
1408107d2:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
1408107d6:	49 2b c8             	sub    %r8,%rcx
1408107d9:	49 bd ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r13
1408107e0:	aa aa 2a
1408107e3:	49 8b c5             	mov    %r13,%rax
1408107e6:	48 f7 e9             	imul   %rcx
1408107e9:	48 c1 fa 03          	sar    $0x3,%rdx
1408107ed:	4c 8b ca             	mov    %rdx,%r9
1408107f0:	49 c1 e9 3f          	shr    $0x3f,%r9
1408107f4:	4c 03 ca             	add    %rdx,%r9
1408107f7:	48 8b d3             	mov    %rbx,%rdx
1408107fa:	48 8d 4d af          	lea    -0x51(%rbp),%rcx
1408107fe:	e8 4d 84 ff ff       	call   0x140808c50
140810803:	49 8b d4             	mov    %r12,%rdx
140810806:	48 8d 4d e7          	lea    -0x19(%rbp),%rcx
14081080a:	e8 31 82 99 ff       	call   0x1401a8a40
14081080f:	89 74 24 28          	mov    %esi,0x28(%rsp)
140810813:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140810818:	4c 8d 4d af          	lea    -0x51(%rbp),%r9
14081081c:	4d 8b c6             	mov    %r14,%r8
14081081f:	48 8b 55 df          	mov    -0x21(%rbp),%rdx
140810823:	48 8b cf             	mov    %rdi,%rcx
140810826:	e8 25 fa ff ff       	call   0x140810250
14081082b:	90                   	nop
14081082c:	48 8b 5d af          	mov    -0x51(%rbp),%rbx
140810830:	48 85 db             	test   %rbx,%rbx
140810833:	0f 84 a8 00 00 00    	je     0x1408108e1
140810839:	48 8b 7d b7          	mov    -0x49(%rbp),%rdi
14081083d:	48 3b df             	cmp    %rdi,%rbx
140810840:	74 15                	je     0x140810857
140810842:	48 8b cb             	mov    %rbx,%rcx
140810845:	e8 d6 99 ff ff       	call   0x14080a220
14081084a:	48 83 c3 30          	add    $0x30,%rbx
14081084e:	48 3b df             	cmp    %rdi,%rbx
140810851:	75 ef                	jne    0x140810842
140810853:	48 8b 5d af          	mov    -0x51(%rbp),%rbx
140810857:	48 8b 4d bf          	mov    -0x41(%rbp),%rcx
14081085b:	48 2b cb             	sub    %rbx,%rcx
14081085e:	49 8b c5             	mov    %r13,%rax
140810861:	48 f7 e9             	imul   %rcx
140810864:	48 c1 fa 03          	sar    $0x3,%rdx
140810868:	48 8b c2             	mov    %rdx,%rax
14081086b:	48 c1 e8 3f          	shr    $0x3f,%rax
14081086f:	48 03 d0             	add    %rax,%rdx
140810872:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
140810876:	48 c1 e2 04          	shl    $0x4,%rdx
14081087a:	48 8b c3             	mov    %rbx,%rax
14081087d:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140810884:	72 15                	jb     0x14081089b
140810886:	48 83 c2 27          	add    $0x27,%rdx
14081088a:	48 8b 5b f8          	mov    -0x8(%rbx),%rbx
14081088e:	48 2b c3             	sub    %rbx,%rax
140810891:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140810895:	48 83 f8 1f          	cmp    $0x1f,%rax
140810899:	77 6c                	ja     0x140810907
14081089b:	48 8b cb             	mov    %rbx,%rcx
14081089e:	e8 a1 a8 60 00       	call   0x140e1b144
1408108a3:	0f 57 c0             	xorps  %xmm0,%xmm0
1408108a6:	f3 0f 7f 45 af       	movdqu %xmm0,-0x51(%rbp)
1408108ab:	48 c7 45 bf 00 00 00 	movq   $0x0,-0x41(%rbp)
1408108b2:	00
1408108b3:	eb 2c                	jmp    0x1408108e1
1408108b5:	49 8b d4             	mov    %r12,%rdx
1408108b8:	48 8d 4d e7          	lea    -0x19(%rbp),%rcx
1408108bc:	e8 7f 81 99 ff       	call   0x1401a8a40
1408108c1:	4c 8d 4f 18          	lea    0x18(%rdi),%r9
1408108c5:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%rsp)
1408108cc:	00
1408108cd:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1408108d2:	4d 8b c6             	mov    %r14,%r8
1408108d5:	48 8b d3             	mov    %rbx,%rdx
1408108d8:	48 8b cf             	mov    %rdi,%rcx
1408108db:	e8 70 f9 ff ff       	call   0x140810250
1408108e0:	90                   	nop
1408108e1:	49 8b cc             	mov    %r12,%rcx
1408108e4:	e8 67 71 98 ff       	call   0x140197a50
1408108e9:	48 8b 4d 0f          	mov    0xf(%rbp),%rcx
1408108ed:	48 33 cc             	xor    %rsp,%rcx
1408108f0:	e8 0b ac 60 00       	call   0x140e1b500
1408108f5:	48 81 c4 a0 00 00 00 	add    $0xa0,%rsp
1408108fc:	41 5e                	pop    %r14
1408108fe:	41 5d                	pop    %r13
140810900:	41 5c                	pop    %r12
140810902:	5f                   	pop    %rdi
140810903:	5e                   	pop    %rsi
140810904:	5b                   	pop    %rbx
140810905:	5d                   	pop    %rbp
140810906:	c3                   	ret
140810907:	e8 98 98 61 00       	call   0x140e2a1a4
14081090c:	90                   	nop
14081090d:	e8 7e cc 98 ff       	call   0x14019d590
140810912:	cc                   	int3
140810913:	e8 78 c8 98 ff       	call   0x14019d190
140810918:	cc                   	int3
140810919:	cc                   	int3
14081091a:	cc                   	int3
14081091b:	cc                   	int3
14081091c:	cc                   	int3
14081091d:	cc                   	int3
14081091e:	cc                   	int3
14081091f:	cc                   	int3
140810920:	48 83 ec 18          	sub    $0x18,%rsp
140810924:	0f 57 c0             	xorps  %xmm0,%xmm0
140810927:	0f 11 02             	movups %xmm0,(%rdx)
14081092a:	48 c7 42 10 0e 00 00 	movq   $0xe,0x10(%rdx)
140810931:	00
140810932:	48 c7 42 18 0f 00 00 	movq   $0xf,0x18(%rdx)
140810939:	00
14081093a:	f2 0f 10 05 56 cc 82 	movsd  0x82cc56(%rip),%xmm0        # 0x14103d598
140810941:	00
140810942:	f2 0f 11 02          	movsd  %xmm0,(%rdx)
140810946:	8b 05 54 cc 82 00    	mov    0x82cc54(%rip),%eax        # 0x14103d5a0
14081094c:	89 42 08             	mov    %eax,0x8(%rdx)
14081094f:	0f b7 05 4e cc 82 00 	movzwl 0x82cc4e(%rip),%eax        # 0x14103d5a4
140810956:	66 89 42 0c          	mov    %ax,0xc(%rdx)
14081095a:	48 8b c2             	mov    %rdx,%rax
14081095d:	c6 42 0e 00          	movb   $0x0,0xe(%rdx)
140810961:	48 83 c4 18          	add    $0x18,%rsp
140810965:	c3                   	ret
140810966:	cc                   	int3
140810967:	cc                   	int3
140810968:	cc                   	int3
140810969:	cc                   	int3
14081096a:	cc                   	int3
14081096b:	cc                   	int3
14081096c:	cc                   	int3
14081096d:	cc                   	int3
14081096e:	cc                   	int3
14081096f:	cc                   	int3
140810970:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140810975:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14081097a:	56                   	push   %rsi
14081097b:	57                   	push   %rdi
14081097c:	41 56                	push   %r14
14081097e:	48 83 ec 40          	sub    $0x40,%rsp
140810982:	4c 8b f2             	mov    %rdx,%r14
140810985:	48 8b f9             	mov    %rcx,%rdi
140810988:	48 81 c1 18 01 00 00 	add    $0x118,%rcx
14081098f:	48 8b 97 20 01 00 00 	mov    0x120(%rdi),%rdx
140810996:	48 3b 97 28 01 00 00 	cmp    0x128(%rdi),%rdx
14081099d:	74 31                	je     0x1408109d0
14081099f:	49 8b 0e             	mov    (%r14),%rcx
1408109a2:	48 89 0a             	mov    %rcx,(%rdx)
1408109a5:	48 85 c9             	test   %rcx,%rcx
1408109a8:	74 1c                	je     0x1408109c6
1408109aa:	8b 41 10             	mov    0x10(%rcx),%eax
1408109ad:	ff c0                	inc    %eax
1408109af:	89 41 10             	mov    %eax,0x10(%rcx)
1408109b2:	83 f8 01             	cmp    $0x1,%eax
1408109b5:	0f 8e 73 01 00 00    	jle    0x140810b2e
1408109bb:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1408109c0:	0f 84 70 01 00 00    	je     0x140810b36
1408109c6:	48 83 87 20 01 00 00 	addq   $0x8,0x120(%rdi)
1408109cd:	08
1408109ce:	eb 08                	jmp    0x1408109d8
1408109d0:	4d 8b c6             	mov    %r14,%r8
1408109d3:	e8 f8 0f b7 ff       	call   0x1403819d0
1408109d8:	b9 50 00 00 00       	mov    $0x50,%ecx
1408109dd:	e8 26 a7 60 00       	call   0x140e1b108
1408109e2:	48 8b d8             	mov    %rax,%rbx
1408109e5:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
1408109ea:	48 85 c0             	test   %rax,%rax
1408109ed:	74 2c                	je     0x140810a1b
1408109ef:	0f 57 c0             	xorps  %xmm0,%xmm0
1408109f2:	0f 11 00             	movups %xmm0,(%rax)
1408109f5:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%rax)
1408109fc:	c7 40 0c 01 00 00 00 	movl   $0x1,0xc(%rax)
140810a03:	48 8d 05 1e cd 82 00 	lea    0x82cd1e(%rip),%rax        # 0x14103d728
140810a0a:	48 89 03             	mov    %rax,(%rbx)
140810a0d:	48 8d 4b 10          	lea    0x10(%rbx),%rcx
140810a11:	49 8b d6             	mov    %r14,%rdx
140810a14:	e8 e7 93 ff ff       	call   0x140809e00
140810a19:	eb 02                	jmp    0x140810a1d
140810a1b:	33 db                	xor    %ebx,%ebx
140810a1d:	48 8d 73 10          	lea    0x10(%rbx),%rsi
140810a21:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140810a26:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140810a2b:	45 33 c0             	xor    %r8d,%r8d
140810a2e:	48 8b d6             	mov    %rsi,%rdx
140810a31:	48 8b cf             	mov    %rdi,%rcx
140810a34:	e8 07 a7 ff ff       	call   0x14080b140
140810a39:	49 8b 06             	mov    (%r14),%rax
140810a3c:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140810a41:	4c 8d 44 24 60       	lea    0x60(%rsp),%r8
140810a46:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140810a4b:	48 8b cf             	mov    %rdi,%rcx
140810a4e:	e8 9d c8 e4 ff       	call   0x14065d2f0
140810a53:	48 8b 08             	mov    (%rax),%rcx
140810a56:	48 85 db             	test   %rbx,%rbx
140810a59:	74 09                	je     0x140810a64
140810a5b:	f0 ff 43 08          	lock incl 0x8(%rbx)
140810a5f:	48 8b 74 24 20       	mov    0x20(%rsp),%rsi
140810a64:	48 89 71 18          	mov    %rsi,0x18(%rcx)
140810a68:	48 8b 79 20          	mov    0x20(%rcx),%rdi
140810a6c:	48 89 59 20          	mov    %rbx,0x20(%rcx)
140810a70:	be ff ff ff ff       	mov    $0xffffffff,%esi
140810a75:	48 85 ff             	test   %rdi,%rdi
140810a78:	74 38                	je     0x140810ab2
140810a7a:	8b c6                	mov    %esi,%eax
140810a7c:	f0 0f c1 47 08       	lock xadd %eax,0x8(%rdi)
140810a81:	83 f8 01             	cmp    $0x1,%eax
140810a84:	75 2c                	jne    0x140810ab2
140810a86:	48 8b 07             	mov    (%rdi),%rax
140810a89:	48 8b cf             	mov    %rdi,%rcx
140810a8c:	48 8b 00             	mov    (%rax),%rax
140810a8f:	ff 15 8b 2f 77 00    	call   *0x772f8b(%rip)        # 0x140f83a20
140810a95:	8b c6                	mov    %esi,%eax
140810a97:	f0 0f c1 47 0c       	lock xadd %eax,0xc(%rdi)
140810a9c:	83 f8 01             	cmp    $0x1,%eax
140810a9f:	75 11                	jne    0x140810ab2
140810aa1:	48 8b 07             	mov    (%rdi),%rax
140810aa4:	48 8b cf             	mov    %rdi,%rcx
140810aa7:	48 8b 40 08          	mov    0x8(%rax),%rax
140810aab:	ff 15 6f 2f 77 00    	call   *0x772f6f(%rip)        # 0x140f83a20
140810ab1:	90                   	nop
140810ab2:	48 85 db             	test   %rbx,%rbx
140810ab5:	74 36                	je     0x140810aed
140810ab7:	8b c6                	mov    %esi,%eax
140810ab9:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140810abe:	83 f8 01             	cmp    $0x1,%eax
140810ac1:	75 2a                	jne    0x140810aed
140810ac3:	48 8b 03             	mov    (%rbx),%rax
140810ac6:	48 8b cb             	mov    %rbx,%rcx
140810ac9:	48 8b 00             	mov    (%rax),%rax
140810acc:	ff 15 4e 2f 77 00    	call   *0x772f4e(%rip)        # 0x140f83a20
140810ad2:	f0 0f c1 73 0c       	lock xadd %esi,0xc(%rbx)
140810ad7:	83 fe 01             	cmp    $0x1,%esi
140810ada:	75 11                	jne    0x140810aed
140810adc:	48 8b 03             	mov    (%rbx),%rax
140810adf:	48 8b cb             	mov    %rbx,%rcx
140810ae2:	48 8b 40 08          	mov    0x8(%rax),%rax
140810ae6:	ff 15 34 2f 77 00    	call   *0x772f34(%rip)        # 0x140f83a20
140810aec:	90                   	nop
140810aed:	49 8b 0e             	mov    (%r14),%rcx
140810af0:	48 85 c9             	test   %rcx,%rcx
140810af3:	74 20                	je     0x140810b15
140810af5:	8b 41 10             	mov    0x10(%rcx),%eax
140810af8:	ff c8                	dec    %eax
140810afa:	89 41 10             	mov    %eax,0x10(%rcx)
140810afd:	85 c0                	test   %eax,%eax
140810aff:	7f 14                	jg     0x140810b15
140810b01:	78 20                	js     0x140810b23
140810b03:	48 8b 01             	mov    (%rcx),%rax
140810b06:	ba 01 00 00 00       	mov    $0x1,%edx
140810b0b:	48 8b 00             	mov    (%rax),%rax
140810b0e:	ff 15 0c 2f 77 00    	call   *0x772f0c(%rip)        # 0x140f83a20
140810b14:	90                   	nop
140810b15:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
140810b1a:	48 83 c4 40          	add    $0x40,%rsp
140810b1e:	41 5e                	pop    %r14
140810b20:	5f                   	pop    %rdi
140810b21:	5e                   	pop    %rsi
140810b22:	c3                   	ret
140810b23:	b9 02 00 00 00       	mov    $0x2,%ecx
140810b28:	e8 d3 9b f7 ff       	call   0x14078a700
140810b2d:	90                   	nop
140810b2e:	33 c9                	xor    %ecx,%ecx
140810b30:	e8 cb 9b f7 ff       	call   0x14078a700
140810b35:	cc                   	int3
140810b36:	b9 01 00 00 00       	mov    $0x1,%ecx
140810b3b:	e8 c0 9b f7 ff       	call   0x14078a700
140810b40:	cc                   	int3
140810b41:	cc                   	int3
140810b42:	cc                   	int3
140810b43:	cc                   	int3
140810b44:	cc                   	int3
140810b45:	cc                   	int3
140810b46:	cc                   	int3
140810b47:	cc                   	int3
140810b48:	cc                   	int3
140810b49:	cc                   	int3
140810b4a:	cc                   	int3
140810b4b:	cc                   	int3
140810b4c:	cc                   	int3
140810b4d:	cc                   	int3
140810b4e:	cc                   	int3
140810b4f:	cc                   	int3
140810b50:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140810b55:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140810b5a:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140810b5f:	41 56                	push   %r14
140810b61:	48 83 ec 20          	sub    $0x20,%rsp
140810b65:	48 8b 79 08          	mov    0x8(%rcx),%rdi
140810b69:	48 8b f2             	mov    %rdx,%rsi
140810b6c:	48 2b 39             	sub    (%rcx),%rdi
140810b6f:	4c 8b f1             	mov    %rcx,%r14
140810b72:	48 8b 42 08          	mov    0x8(%rdx),%rax
140810b76:	48 2b 02             	sub    (%rdx),%rax
140810b79:	48 c1 ff 04          	sar    $0x4,%rdi
140810b7d:	48 c1 f8 04          	sar    $0x4,%rax
140810b81:	48 3b f8             	cmp    %rax,%rdi
140810b84:	75 31                	jne    0x140810bb7
140810b86:	33 db                	xor    %ebx,%ebx
140810b88:	48 85 ff             	test   %rdi,%rdi
140810b8b:	74 50                	je     0x140810bdd
140810b8d:	8b c3                	mov    %ebx,%eax
140810b8f:	90                   	nop
140810b90:	49 8b 0e             	mov    (%r14),%rcx
140810b93:	48 03 c0             	add    %rax,%rax
140810b96:	48 8b 16             	mov    (%rsi),%rdx
140810b99:	48 8b 0c c1          	mov    (%rcx,%rax,8),%rcx
140810b9d:	48 8b 04 c2          	mov    (%rdx,%rax,8),%rax
140810ba1:	48 85 c9             	test   %rcx,%rcx
140810ba4:	74 29                	je     0x140810bcf
140810ba6:	48 85 c0             	test   %rax,%rax
140810ba9:	74 0c                	je     0x140810bb7
140810bab:	48 8b d0             	mov    %rax,%rdx
140810bae:	e8 ed 9a ff ff       	call   0x14080a6a0
140810bb3:	84 c0                	test   %al,%al
140810bb5:	75 1d                	jne    0x140810bd4
140810bb7:	32 c0                	xor    %al,%al
140810bb9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140810bbe:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140810bc3:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
140810bc8:	48 83 c4 20          	add    $0x20,%rsp
140810bcc:	41 5e                	pop    %r14
140810bce:	c3                   	ret
140810bcf:	48 85 c0             	test   %rax,%rax
140810bd2:	75 e3                	jne    0x140810bb7
140810bd4:	ff c3                	inc    %ebx
140810bd6:	8b c3                	mov    %ebx,%eax
140810bd8:	48 3b c7             	cmp    %rdi,%rax
140810bdb:	72 b3                	jb     0x140810b90
140810bdd:	b0 01                	mov    $0x1,%al
140810bdf:	eb d8                	jmp    0x140810bb9
140810be1:	cc                   	int3