140976656:	48 8d 05 83 6e 1b 00 	lea    0x1b6e83(%rip),%rax        # 0x140b2d4e0
14097665d:	48 8b d9             	mov    %rcx,%rbx
140976660:	48 89 01             	mov    %rax,(%rcx)
140976663:	f6 c2 01             	test   $0x1,%dl
140976666:	74 05                	je     0x14097666d
140976668:	e8 67 8f 17 00       	call   0x140aef5d4
14097666d:	48 8b c3             	mov    %rbx,%rax
140976670:	48 83 c4 20          	add    $0x20,%rsp
140976674:	5b                   	pop    %rbx
140976675:	c3                   	ret
140976676:	90                   	nop
140976677:	90                   	nop
140976678:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14097667d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140976682:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140976687:	57                   	push   %rdi
140976688:	41 56                	push   %r14
14097668a:	41 57                	push   %r15
14097668c:	48 83 ec 40          	sub    $0x40,%rsp
140976690:	48 8b 01             	mov    (%rcx),%rax
140976693:	45 33 ff             	xor    %r15d,%r15d
140976696:	49 8b e9             	mov    %r9,%rbp
140976699:	49 8b f0             	mov    %r8,%rsi
14097669c:	48 8b fa             	mov    %rdx,%rdi
14097669f:	4c 8b f1             	mov    %rcx,%r14
1409766a2:	45 38 78 19          	cmp    %r15b,0x19(%r8)
1409766a6:	74 34                	je     0x1409766dc
1409766a8:	48 8d 58 10          	lea    0x10(%rax),%rbx
1409766ac:	48 8b 40 08          	mov    0x8(%rax),%rax
1409766b0:	44 38 78 19          	cmp    %r15b,0x19(%rax)
1409766b4:	75 17                	jne    0x1409766cd
1409766b6:	48 8b 13             	mov    (%rbx),%rdx
1409766b9:	4d 8b c1             	mov    %r9,%r8
1409766bc:	48 83 c2 20          	add    $0x20,%rdx
1409766c0:	e8 df 5d 79 ff       	call   0x14010c4a4
1409766c5:	84 c0                	test   %al,%al
1409766c7:	0f 84 6b 01 00 00    	je     0x140976838
1409766cd:	48 8b 03             	mov    (%rbx),%rax
1409766d0:	48 89 07             	mov    %rax,(%rdi)
1409766d3:	44 88 7f 10          	mov    %r15b,0x10(%rdi)
1409766d7:	e9 0d 02 00 00       	jmp    0x1409768e9
1409766dc:	49 8d 58 20          	lea    0x20(%r8),%rbx
1409766e0:	48 8b d5             	mov    %rbp,%rdx
1409766e3:	4c 8b c3             	mov    %rbx,%r8
1409766e6:	48 3b 30             	cmp    (%rax),%rsi
1409766e9:	75 20                	jne    0x14097670b
1409766eb:	e8 b4 5d 79 ff       	call   0x14010c4a4
1409766f0:	84 c0                	test   %al,%al
1409766f2:	0f 84 40 01 00 00    	je     0x140976838
1409766f8:	48 89 37             	mov    %rsi,(%rdi)
1409766fb:	c7 47 08 01 00 00 00 	movl   $0x1,0x8(%rdi)
140976702:	44 88 7f 10          	mov    %r15b,0x10(%rdi)
140976706:	e9 e2 01 00 00       	jmp    0x1409768ed
14097670b:	e8 94 5d 79 ff       	call   0x14010c4a4
140976710:	84 c0                	test   %al,%al
140976712:	0f 84 a4 00 00 00    	je     0x1409767bc
140976718:	48 8b 1e             	mov    (%rsi),%rbx
14097671b:	48 8b c6             	mov    %rsi,%rax
14097671e:	44 38 7b 19          	cmp    %r15b,0x19(%rbx)
140976722:	74 44                	je     0x140976768
140976724:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
140976728:	48 8b ce             	mov    %rsi,%rcx
14097672b:	44 38 7b 19          	cmp    %r15b,0x19(%rbx)
14097672f:	75 2d                	jne    0x14097675e
140976731:	48 8b d6             	mov    %rsi,%rdx
140976734:	4c 8b c6             	mov    %rsi,%r8
140976737:	4c 8b cb             	mov    %rbx,%r9
14097673a:	4c 8b d3             	mov    %rbx,%r10
14097673d:	4c 8b db             	mov    %rbx,%r11
140976740:	49 8b c8             	mov    %r8,%rcx
140976743:	48 3b 13             	cmp    (%rbx),%rdx
140976746:	75 16                	jne    0x14097675e
140976748:	48 8b c3             	mov    %rbx,%rax
14097674b:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
14097674f:	48 8b d0             	mov    %rax,%rdx
140976752:	4c 8b c0             	mov    %rax,%r8
140976755:	48 8b c8             	mov    %rax,%rcx
140976758:	44 38 7b 19          	cmp    %r15b,0x19(%rbx)
14097675c:	74 d9                	je     0x140976737
14097675e:	44 38 79 19          	cmp    %r15b,0x19(%rcx)
140976762:	48 0f 45 d8          	cmovne %rax,%rbx
140976766:	eb 13                	jmp    0x14097677b
140976768:	48 8b 43 10          	mov    0x10(%rbx),%rax
14097676c:	eb 07                	jmp    0x140976775
14097676e:	48 8b d8             	mov    %rax,%rbx
140976771:	48 8b 40 10          	mov    0x10(%rax),%rax
140976775:	44 38 78 19          	cmp    %r15b,0x19(%rax)
140976779:	74 f3                	je     0x14097676e
14097677b:	48 8d 53 20          	lea    0x20(%rbx),%rdx
14097677f:	4c 8b c5             	mov    %rbp,%r8
140976782:	e8 1d 5d 79 ff       	call   0x14010c4a4
140976787:	84 c0                	test   %al,%al
140976789:	0f 84 a9 00 00 00    	je     0x140976838
14097678f:	48 8b 43 10          	mov    0x10(%rbx),%rax
140976793:	8a 48 19             	mov    0x19(%rax),%cl
140976796:	48 8b c7             	mov    %rdi,%rax
140976799:	44 88 7f 10          	mov    %r15b,0x10(%rdi)
14097679d:	84 c9                	test   %cl,%cl
14097679f:	74 0c                	je     0x1409767ad
1409767a1:	48 89 1f             	mov    %rbx,(%rdi)
1409767a4:	44 89 7f 08          	mov    %r15d,0x8(%rdi)
1409767a8:	e9 43 01 00 00       	jmp    0x1409768f0
1409767ad:	48 89 37             	mov    %rsi,(%rdi)
1409767b0:	c7 47 08 01 00 00 00 	movl   $0x1,0x8(%rdi)
1409767b7:	e9 34 01 00 00       	jmp    0x1409768f0
1409767bc:	4c 8b c5             	mov    %rbp,%r8
1409767bf:	48 8b d3             	mov    %rbx,%rdx
1409767c2:	e8 dd 5c 79 ff       	call   0x14010c4a4
1409767c7:	84 c0                	test   %al,%al
1409767c9:	0f 84 13 01 00 00    	je     0x1409768e2
1409767cf:	48 8b 5e 10          	mov    0x10(%rsi),%rbx
1409767d3:	44 38 7b 19          	cmp    %r15b,0x19(%rbx)
1409767d7:	74 29                	je     0x140976802
1409767d9:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
1409767dd:	44 38 7b 19          	cmp    %r15b,0x19(%rbx)
1409767e1:	0f 85 d9 00 00 00    	jne    0x1409768c0
1409767e7:	48 8b c6             	mov    %rsi,%rax
1409767ea:	48 8b cb             	mov    %rbx,%rcx
1409767ed:	48 3b 43 10          	cmp    0x10(%rbx),%rax
1409767f1:	75 27                	jne    0x14097681a
1409767f3:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
1409767f7:	48 8b c1             	mov    %rcx,%rax
1409767fa:	44 38 7b 19          	cmp    %r15b,0x19(%rbx)
1409767fe:	74 ea                	je     0x1409767ea
140976800:	eb 18                	jmp    0x14097681a
140976802:	48 8b 0b             	mov    (%rbx),%rcx
140976805:	44 38 79 19          	cmp    %r15b,0x19(%rcx)
140976809:	75 0f                	jne    0x14097681a
14097680b:	48 8b 01             	mov    (%rcx),%rax
14097680e:	48 8b d9             	mov    %rcx,%rbx
140976811:	48 8b c8             	mov    %rax,%rcx
140976814:	44 38 78 19          	cmp    %r15b,0x19(%rax)
140976818:	74 f1                	je     0x14097680b
14097681a:	44 38 7b 19          	cmp    %r15b,0x19(%rbx)
14097681e:	0f 85 9c 00 00 00    	jne    0x1409768c0
140976824:	4c 8d 43 20          	lea    0x20(%rbx),%r8
140976828:	48 8b d5             	mov    %rbp,%rdx
14097682b:	e8 74 5c 79 ff       	call   0x14010c4a4
140976830:	84 c0                	test   %al,%al
140976832:	0f 85 88 00 00 00    	jne    0x1409768c0
140976838:	49 8b 36             	mov    (%r14),%rsi
14097683b:	44 89 7c 24 28       	mov    %r15d,0x28(%rsp)
140976840:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
140976844:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140976849:	eb 2e                	jmp    0x140976879
14097684b:	48 8d 53 20          	lea    0x20(%rbx),%rdx
14097684f:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140976854:	4c 8b c5             	mov    %rbp,%r8
140976857:	e8 48 5c 79 ff       	call   0x14010c4a4
14097685c:	84 c0                	test   %al,%al
14097685e:	74 0b                	je     0x14097686b
140976860:	48 8b 5b 10          	mov    0x10(%rbx),%rbx
140976864:	44 89 7c 24 28       	mov    %r15d,0x28(%rsp)
140976869:	eb 0e                	jmp    0x140976879
14097686b:	48 8b f3             	mov    %rbx,%rsi
14097686e:	c7 44 24 28 01 00 00 	movl   $0x1,0x28(%rsp)
140976875:	00
140976876:	48 8b 1b             	mov    (%rbx),%rbx
140976879:	44 38 7b 19          	cmp    %r15b,0x19(%rbx)
14097687d:	74 cc                	je     0x14097684b
14097687f:	44 38 7e 19          	cmp    %r15b,0x19(%rsi)
140976883:	75 12                	jne    0x140976897
140976885:	4c 8d 46 20          	lea    0x20(%rsi),%r8
140976889:	48 8b d5             	mov    %rbp,%rdx
14097688c:	e8 13 5c 79 ff       	call   0x14010c4a4
140976891:	84 c0                	test   %al,%al
140976893:	b0 01                	mov    $0x1,%al
140976895:	74 03                	je     0x14097689a
140976897:	41 8a c7             	mov    %r15b,%al
14097689a:	84 c0                	test   %al,%al
14097689c:	48 8b c7             	mov    %rdi,%rax
14097689f:	74 10                	je     0x1409768b1
1409768a1:	48 89 37             	mov    %rsi,(%rdi)
1409768a4:	c7 47 08 02 00 00 00 	movl   $0x2,0x8(%rdi)
1409768ab:	c6 47 10 01          	movb   $0x1,0x10(%rdi)
1409768af:	eb 3f                	jmp    0x1409768f0
1409768b1:	0f 10 44 24 20       	movups 0x20(%rsp),%xmm0
1409768b6:	44 88 7f 10          	mov    %r15b,0x10(%rdi)
1409768ba:	f3 0f 7f 07          	movdqu %xmm0,(%rdi)
1409768be:	eb 30                	jmp    0x1409768f0
1409768c0:	48 8b 46 10          	mov    0x10(%rsi),%rax
1409768c4:	8a 48 19             	mov    0x19(%rax),%cl
1409768c7:	48 8b c7             	mov    %rdi,%rax
1409768ca:	44 88 7f 10          	mov    %r15b,0x10(%rdi)
1409768ce:	84 c9                	test   %cl,%cl
1409768d0:	74 08                	je     0x1409768da
1409768d2:	48 89 37             	mov    %rsi,(%rdi)
1409768d5:	e9 ca fe ff ff       	jmp    0x1409767a4
1409768da:	48 89 1f             	mov    %rbx,(%rdi)
1409768dd:	e9 ce fe ff ff       	jmp    0x1409767b0
1409768e2:	48 89 37             	mov    %rsi,(%rdi)
1409768e5:	c6 47 10 01          	movb   $0x1,0x10(%rdi)
1409768e9:	44 89 7f 08          	mov    %r15d,0x8(%rdi)
1409768ed:	48 8b c7             	mov    %rdi,%rax
1409768f0:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1409768f5:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
1409768fa:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
1409768ff:	48 83 c4 40          	add    $0x40,%rsp
140976903:	41 5f                	pop    %r15
140976905:	41 5e                	pop    %r14
140976907:	5f                   	pop    %rdi
140976908:	c3                   	ret
140976909:	90                   	nop
14097690a:	90                   	nop
14097690b:	90                   	nop
14097690c:	90                   	nop
14097690d:	90                   	nop
14097690e:	90                   	nop
14097690f:	90                   	nop
140976910:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140976915:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14097691a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14097691f:	57                   	push   %rdi
140976920:	41 54                	push   %r12
140976922:	41 55                	push   %r13
140976924:	41 56                	push   %r14
140976926:	41 57                	push   %r15
140976928:	48 83 ec 50          	sub    $0x50,%rsp
14097692c:	48 8b 05 0d 87 34 00 	mov    0x34870d(%rip),%rax        # 0x140cbf040
140976933:	48 33 c4             	xor    %rsp,%rax
140976936:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
14097693b:	45 33 ff             	xor    %r15d,%r15d
14097693e:	48 8b d9             	mov    %rcx,%rbx
140976941:	44 39 79 60          	cmp    %r15d,0x60(%rcx)
140976945:	74 7f                	je     0x1409769c6
140976947:	44 89 79 60          	mov    %r15d,0x60(%rcx)
14097694b:	44 39 79 64          	cmp    %r15d,0x64(%rcx)
14097694f:	75 07                	jne    0x140976958
140976951:	c7 41 64 01 00 00 00 	movl   $0x1,0x64(%rcx)
140976958:	48 8b 51 38          	mov    0x38(%rcx),%rdx
14097695c:	48 85 d2             	test   %rdx,%rdx
14097695f:	75 12                	jne    0x140976973
140976961:	48 8b 05 a8 5b 19 00 	mov    0x195ba8(%rip),%rax        # 0x140b0c510
140976968:	48 89 41 38          	mov    %rax,0x38(%rcx)
14097696c:	48 8b 15 9d 5b 19 00 	mov    0x195b9d(%rip),%rdx        # 0x140b0c510
140976973:	4c 39 79 40          	cmp    %r15,0x40(%rcx)
140976977:	75 0b                	jne    0x140976984
140976979:	48 8b 05 88 5b 19 00 	mov    0x195b88(%rip),%rax        # 0x140b0c508
140976980:	48 89 41 40          	mov    %rax,0x40(%rcx)
140976984:	4c 8b 41 48          	mov    0x48(%rcx),%r8
140976988:	4d 85 c0             	test   %r8,%r8
14097698b:	75 1a                	jne    0x1409769a7
14097698d:	48 8b 01             	mov    (%rcx),%rax
140976990:	41 b8 00 40 00 00    	mov    $0x4000,%r8d
140976996:	48 8b 40 10          	mov    0x10(%rax),%rax
14097699a:	ff 15 98 62 19 00    	call   *0x196298(%rip)        # 0x140b0cc38
1409769a0:	4c 8b c0             	mov    %rax,%r8
1409769a3:	48 89 43 48          	mov    %rax,0x48(%rbx)
1409769a7:	41 8b 40 1c          	mov    0x1c(%r8),%eax
1409769ab:	89 43 54             	mov    %eax,0x54(%rbx)
1409769ae:	49 8b 48 10          	mov    0x10(%r8),%rcx
1409769b2:	48 89 4b 58          	mov    %rcx,0x58(%rbx)
1409769b6:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
1409769ba:	49 8b 00             	mov    (%r8),%rax
1409769bd:	48 89 43 38          	mov    %rax,0x38(%rbx)
1409769c1:	8a 01                	mov    (%rcx),%al
1409769c3:	88 43 50             	mov    %al,0x50(%rbx)
1409769c6:	41 bc 09 00 00 00    	mov    $0x9,%r12d
1409769cc:	45 8d 6c 24 3c       	lea    0x3c(%r12),%r13d
1409769d1:	41 be 0b 00 00 00    	mov    $0xb,%r14d
1409769d7:	4c 8d 15 22 96 68 ff 	lea    -0x9769de(%rip),%r10        # 0x140000000
1409769de:	44 89 bb a8 00 00 00 	mov    %r15d,0xa8(%rbx)
1409769e5:	44 39 bb a4 00 00 00 	cmp    %r15d,0xa4(%rbx)
1409769ec:	74 13                	je     0x140976a01
1409769ee:	8b 43 58             	mov    0x58(%rbx),%eax
1409769f1:	2b 43 08             	sub    0x8(%rbx),%eax
1409769f4:	89 83 a8 00 00 00    	mov    %eax,0xa8(%rbx)
1409769fa:	44 89 bb a4 00 00 00 	mov    %r15d,0xa4(%rbx)
140976a01:	4c 8b 43 58          	mov    0x58(%rbx),%r8
140976a05:	8a 43 50             	mov    0x50(%rbx),%al
140976a08:	49 8b f8             	mov    %r8,%rdi
140976a0b:	41 88 00             	mov    %al,(%r8)
140976a0e:	8b 53 64             	mov    0x64(%rbx),%edx
140976a11:	41 0f b6 00          	movzbl (%r8),%eax
140976a15:	48 63 ca             	movslq %edx,%rcx
140976a18:	45 0f b6 8c 82 d0 e6 	movzbl 0xb6e6d0(%r10,%rax,4),%r9d
140976a1f:	b6 00
140976a21:	45 39 bc 8a d0 ea b6 	cmp    %r15d,0xb6ead0(%r10,%rcx,4)
140976a28:	00
140976a29:	74 07                	je     0x140976a32
140976a2b:	89 53 6c             	mov    %edx,0x6c(%rbx)
140976a2e:	4c 89 43 70          	mov    %r8,0x70(%rbx)
140976a32:	41 8b c1             	mov    %r9d,%eax
140976a35:	41 03 84 8a 20 08 b7 	add    0xb70820(%r10,%rcx,4),%eax
140976a3c:	00
140976a3d:	eb 2b                	jmp    0x140976a6a
140976a3f:	48 63 c2             	movslq %edx,%rax
140976a42:	49 63 94 82 f0 03 b7 	movslq 0xb703f0(%r10,%rax,4),%rdx
140976a49:	00
140976a4a:	81 fa fe 00 00 00    	cmp    $0xfe,%edx
140976a50:	7c 0c                	jl     0x140976a5e
140976a52:	41 0f b6 c1          	movzbl %r9b,%eax
140976a56:	45 8a 8c 82 50 0c b7 	mov    0xb70c50(%r10,%rax,4),%r9b
140976a5d:	00
140976a5e:	41 0f b6 c1          	movzbl %r9b,%eax
140976a62:	41 03 84 92 20 08 b7 	add    0xb70820(%r10,%rdx,4),%eax
140976a69:	00
140976a6a:	48 98                	cltq
140976a6c:	41 39 94 82 70 0d b7 	cmp    %edx,0xb70d70(%r10,%rax,4)
140976a73:	00
140976a74:	75 c9                	jne    0x140976a3f
140976a76:	48 63 ca             	movslq %edx,%rcx
140976a79:	49 ff c0             	inc    %r8
140976a7c:	41 0f b6 c1          	movzbl %r9b,%eax
140976a80:	41 8b 8c 8a 20 08 b7 	mov    0xb70820(%r10,%rcx,4),%ecx
140976a87:	00
140976a88:	03 c8                	add    %eax,%ecx
140976a8a:	41 8b 94 8a d0 ee b6 	mov    0xb6eed0(%r10,%rcx,4),%edx
140976a91:	00
140976a92:	81 fa fd 00 00 00    	cmp    $0xfd,%edx
140976a98:	0f 85 73 ff ff ff    	jne    0x140976a11
140976a9e:	8b 53 6c             	mov    0x6c(%rbx),%edx
140976aa1:	48 8b 73 70          	mov    0x70(%rbx),%rsi
140976aa5:	48 63 83 a8 00 00 00 	movslq 0xa8(%rbx),%rax
140976aac:	48 8b cf             	mov    %rdi,%rcx
140976aaf:	48 2b c8             	sub    %rax,%rcx
140976ab2:	8b c6                	mov    %esi,%eax
140976ab4:	2b c1                	sub    %ecx,%eax
140976ab6:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
140976aba:	89 43 10             	mov    %eax,0x10(%rbx)
140976abd:	8a 06                	mov    (%rsi),%al
140976abf:	88 43 50             	mov    %al,0x50(%rbx)
140976ac2:	48 63 c2             	movslq %edx,%rax
140976ac5:	44 88 3e             	mov    %r15b,(%rsi)
140976ac8:	48 89 73 58          	mov    %rsi,0x58(%rbx)
140976acc:	41 8b 8c 82 d0 ea b6 	mov    0xb6ead0(%r10,%rax,4),%ecx
140976ad3:	00
140976ad4:	83 f9 4d             	cmp    $0x4d,%ecx
140976ad7:	0f 8e 0c 01 00 00    	jle    0x140976be9
140976add:	83 f9 74             	cmp    $0x74,%ecx
140976ae0:	0f 8e e8 05 00 00    	jle    0x1409770ce
140976ae6:	81 f9 87 00 00 00    	cmp    $0x87,%ecx
140976aec:	0f 8e fd 02 00 00    	jle    0x140976def
140976af2:	81 f9 91 00 00 00    	cmp    $0x91,%ecx
140976af8:	0f 8f a1 02 00 00    	jg     0x140976d9f
140976afe:	0f 84 a6 19 00 00    	je     0x1409784aa
140976b04:	81 e9 88 00 00 00    	sub    $0x88,%ecx
140976b0a:	0f 84 76 02 00 00    	je     0x140976d86
140976b10:	83 e9 01             	sub    $0x1,%ecx
140976b13:	0f 84 26 19 00 00    	je     0x14097843f
140976b19:	83 e9 01             	sub    $0x1,%ecx
140976b1c:	0f 84 0b 19 00 00    	je     0x14097842d
140976b22:	83 e9 01             	sub    $0x1,%ecx
140976b25:	0f 84 0f 0d 00 00    	je     0x14097783a
140976b2b:	83 e9 01             	sub    $0x1,%ecx
140976b2e:	0f 84 06 0d 00 00    	je     0x14097783a
140976b34:	83 e9 01             	sub    $0x1,%ecx
140976b37:	0f 84 8b 18 00 00    	je     0x1409783c8
140976b3d:	83 e9 01             	sub    $0x1,%ecx
140976b40:	0f 84 81 0e 00 00    	je     0x1409779c7