14066d61f:	57                   	push   %rdi
14066d620:	48 83 ec 20          	sub    $0x20,%rsp
14066d624:	48 8b f1             	mov    %rcx,%rsi
14066d627:	33 ed                	xor    %ebp,%ebp
14066d629:	48 8b 49 18          	mov    0x18(%rcx),%rcx
14066d62d:	48 85 c9             	test   %rcx,%rcx
14066d630:	74 41                	je     0x14066d673
14066d632:	48 8b 56 28          	mov    0x28(%rsi),%rdx
14066d636:	48 2b d1             	sub    %rcx,%rdx
14066d639:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
14066d63d:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14066d644:	72 1c                	jb     0x14066d662
14066d646:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
14066d64a:	48 83 c2 27          	add    $0x27,%rdx
14066d64e:	49 2b c8             	sub    %r8,%rcx
14066d651:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14066d655:	48 83 f8 1f          	cmp    $0x1f,%rax
14066d659:	0f 87 b2 00 00 00    	ja     0x14066d711
14066d65f:	49 8b c8             	mov    %r8,%rcx
14066d662:	e8 dd da 7a 00       	call   0x140e1b144
14066d667:	48 89 6e 18          	mov    %rbp,0x18(%rsi)
14066d66b:	48 89 6e 20          	mov    %rbp,0x20(%rsi)
14066d66f:	48 89 6e 28          	mov    %rbp,0x28(%rsi)
14066d673:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
14066d677:	48 8b 41 08          	mov    0x8(%rcx),%rax
14066d67b:	48 89 28             	mov    %rbp,(%rax)
14066d67e:	48 8b 19             	mov    (%rcx),%rbx
14066d681:	48 85 db             	test   %rbx,%rbx
14066d684:	74 69                	je     0x14066d6ef
14066d686:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14066d68d:	00 00 00
14066d690:	48 8b 53 28          	mov    0x28(%rbx),%rdx
14066d694:	48 8b 3b             	mov    (%rbx),%rdi
14066d697:	48 83 fa 0f          	cmp    $0xf,%rdx
14066d69b:	76 2d                	jbe    0x14066d6ca
14066d69d:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14066d6a1:	48 ff c2             	inc    %rdx
14066d6a4:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14066d6ab:	72 18                	jb     0x14066d6c5
14066d6ad:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
14066d6b1:	48 83 c2 27          	add    $0x27,%rdx
14066d6b5:	49 2b c8             	sub    %r8,%rcx
14066d6b8:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14066d6bc:	48 83 f8 1f          	cmp    $0x1f,%rax
14066d6c0:	77 4f                	ja     0x14066d711
14066d6c2:	49 8b c8             	mov    %r8,%rcx
14066d6c5:	e8 7a da 7a 00       	call   0x140e1b144
14066d6ca:	ba 38 00 00 00       	mov    $0x38,%edx
14066d6cf:	48 89 6b 20          	mov    %rbp,0x20(%rbx)
14066d6d3:	48 8b cb             	mov    %rbx,%rcx
14066d6d6:	48 c7 43 28 0f 00 00 	movq   $0xf,0x28(%rbx)
14066d6dd:	00
14066d6de:	40 88 6b 10          	mov    %bpl,0x10(%rbx)
14066d6e2:	e8 5d da 7a 00       	call   0x140e1b144
14066d6e7:	48 8b df             	mov    %rdi,%rbx
14066d6ea:	48 85 ff             	test   %rdi,%rdi
14066d6ed:	75 a1                	jne    0x14066d690
14066d6ef:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
14066d6f3:	ba 38 00 00 00       	mov    $0x38,%edx
14066d6f8:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14066d6fd:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14066d702:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14066d707:	48 83 c4 20          	add    $0x20,%rsp
14066d70b:	5f                   	pop    %rdi
14066d70c:	e9 33 da 7a 00       	jmp    0x140e1b144
14066d711:	e8 8e ca 7b 00       	call   0x140e2a1a4
14066d716:	cc                   	int3
14066d717:	cc                   	int3
14066d718:	cc                   	int3
14066d719:	cc                   	int3
14066d71a:	cc                   	int3
14066d71b:	cc                   	int3
14066d71c:	cc                   	int3
14066d71d:	cc                   	int3
14066d71e:	cc                   	int3
14066d71f:	cc                   	int3
14066d720:	40 53                	rex push %rbx
14066d722:	48 83 ec 20          	sub    $0x20,%rsp
14066d726:	48 8b d9             	mov    %rcx,%rbx
14066d729:	48 8b 09             	mov    (%rcx),%rcx
14066d72c:	48 85 c9             	test   %rcx,%rcx
14066d72f:	74 6c                	je     0x14066d79d
14066d731:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14066d735:	4c 8b c3             	mov    %rbx,%r8
14066d738:	e8 83 e4 ff ff       	call   0x14066bbc0
14066d73d:	48 8b 0b             	mov    (%rbx),%rcx
14066d740:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
14066d747:	66 66 66
14066d74a:	48 8b 53 10          	mov    0x10(%rbx),%rdx
14066d74e:	48 2b d1             	sub    %rcx,%rdx
14066d751:	48 f7 ea             	imul   %rdx
14066d754:	48 c1 fa 04          	sar    $0x4,%rdx
14066d758:	48 8b c2             	mov    %rdx,%rax
14066d75b:	48 c1 e8 3f          	shr    $0x3f,%rax
14066d75f:	48 03 d0             	add    %rax,%rdx
14066d762:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
14066d766:	48 c1 e2 03          	shl    $0x3,%rdx
14066d76a:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14066d771:	72 18                	jb     0x14066d78b
14066d773:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
14066d777:	48 83 c2 27          	add    $0x27,%rdx
14066d77b:	49 2b c8             	sub    %r8,%rcx
14066d77e:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14066d782:	48 83 f8 1f          	cmp    $0x1f,%rax
14066d786:	77 1b                	ja     0x14066d7a3
14066d788:	49 8b c8             	mov    %r8,%rcx
14066d78b:	e8 b4 d9 7a 00       	call   0x140e1b144
14066d790:	33 c0                	xor    %eax,%eax
14066d792:	48 89 03             	mov    %rax,(%rbx)
14066d795:	48 89 43 08          	mov    %rax,0x8(%rbx)
14066d799:	48 89 43 10          	mov    %rax,0x10(%rbx)
14066d79d:	48 83 c4 20          	add    $0x20,%rsp
14066d7a1:	5b                   	pop    %rbx
14066d7a2:	c3                   	ret
14066d7a3:	e8 fc c9 7b 00       	call   0x140e2a1a4
14066d7a8:	cc                   	int3
14066d7a9:	cc                   	int3
14066d7aa:	cc                   	int3
14066d7ab:	cc                   	int3
14066d7ac:	cc                   	int3
14066d7ad:	cc                   	int3
14066d7ae:	cc                   	int3
14066d7af:	cc                   	int3
14066d7b0:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14066d7b5:	57                   	push   %rdi
14066d7b6:	48 83 ec 20          	sub    $0x20,%rsp
14066d7ba:	48 8b 39             	mov    (%rcx),%rdi
14066d7bd:	48 8b f1             	mov    %rcx,%rsi
14066d7c0:	48 85 ff             	test   %rdi,%rdi
14066d7c3:	0f 84 b1 00 00 00    	je     0x14066d87a
14066d7c9:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
14066d7ce:	48 8b 69 08          	mov    0x8(%rcx),%rbp
14066d7d2:	48 3b fd             	cmp    %rbp,%rdi
14066d7d5:	74 5d                	je     0x14066d834
14066d7d7:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
14066d7dc:	0f 1f 40 00          	nopl   0x0(%rax)
14066d7e0:	48 8b 5f 08          	mov    0x8(%rdi),%rbx
14066d7e4:	48 85 db             	test   %rbx,%rbx
14066d7e7:	74 3d                	je     0x14066d826
14066d7e9:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
14066d7ee:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
14066d7f3:	83 f8 01             	cmp    $0x1,%eax
14066d7f6:	75 2e                	jne    0x14066d826
14066d7f8:	48 8b 03             	mov    (%rbx),%rax
14066d7fb:	48 8b cb             	mov    %rbx,%rcx
14066d7fe:	48 8b 00             	mov    (%rax),%rax
14066d801:	ff 15 19 62 91 00    	call   *0x916219(%rip)        # 0x140f83a20
14066d807:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
14066d80c:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
14066d811:	83 f8 01             	cmp    $0x1,%eax
14066d814:	75 10                	jne    0x14066d826
14066d816:	48 8b 03             	mov    (%rbx),%rax
14066d819:	48 8b cb             	mov    %rbx,%rcx
14066d81c:	48 8b 40 08          	mov    0x8(%rax),%rax
14066d820:	ff 15 fa 61 91 00    	call   *0x9161fa(%rip)        # 0x140f83a20
14066d826:	48 83 c7 10          	add    $0x10,%rdi
14066d82a:	48 3b fd             	cmp    %rbp,%rdi
14066d82d:	75 b1                	jne    0x14066d7e0
14066d82f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14066d834:	48 8b 0e             	mov    (%rsi),%rcx
14066d837:	48 8b 56 10          	mov    0x10(%rsi),%rdx
14066d83b:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14066d840:	48 2b d1             	sub    %rcx,%rdx
14066d843:	48 83 e2 f0          	and    $0xfffffffffffffff0,%rdx
14066d847:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14066d84e:	72 18                	jb     0x14066d868
14066d850:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
14066d854:	48 83 c2 27          	add    $0x27,%rdx
14066d858:	49 2b c8             	sub    %r8,%rcx
14066d85b:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14066d85f:	48 83 f8 1f          	cmp    $0x1f,%rax
14066d863:	77 20                	ja     0x14066d885
14066d865:	49 8b c8             	mov    %r8,%rcx
14066d868:	e8 d7 d8 7a 00       	call   0x140e1b144
14066d86d:	33 c0                	xor    %eax,%eax
14066d86f:	48 89 06             	mov    %rax,(%rsi)
14066d872:	48 89 46 08          	mov    %rax,0x8(%rsi)
14066d876:	48 89 46 10          	mov    %rax,0x10(%rsi)
14066d87a:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14066d87f:	48 83 c4 20          	add    $0x20,%rsp
14066d883:	5f                   	pop    %rdi
14066d884:	c3                   	ret
14066d885:	e8 1a c9 7b 00       	call   0x140e2a1a4
14066d88a:	cc                   	int3
14066d88b:	cc                   	int3
14066d88c:	cc                   	int3
14066d88d:	cc                   	int3
14066d88e:	cc                   	int3
14066d88f:	cc                   	int3
14066d890:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14066d895:	56                   	push   %rsi
14066d896:	48 83 ec 20          	sub    $0x20,%rsp
14066d89a:	48 8b 19             	mov    (%rcx),%rbx
14066d89d:	48 8b f1             	mov    %rcx,%rsi
14066d8a0:	48 85 db             	test   %rbx,%rbx
14066d8a3:	74 65                	je     0x14066d90a
14066d8a5:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
14066d8aa:	48 8b 79 08          	mov    0x8(%rcx),%rdi
14066d8ae:	48 3b df             	cmp    %rdi,%rbx
14066d8b1:	74 11                	je     0x14066d8c4
14066d8b3:	48 8b cb             	mov    %rbx,%rcx
14066d8b6:	e8 f5 cb bc ff       	call   0x14023a4b0
14066d8bb:	48 83 c3 40          	add    $0x40,%rbx
14066d8bf:	48 3b df             	cmp    %rdi,%rbx
14066d8c2:	75 ef                	jne    0x14066d8b3
14066d8c4:	48 8b 0e             	mov    (%rsi),%rcx
14066d8c7:	48 8b 56 10          	mov    0x10(%rsi),%rdx
14066d8cb:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
14066d8d0:	48 2b d1             	sub    %rcx,%rdx
14066d8d3:	48 83 e2 c0          	and    $0xffffffffffffffc0,%rdx
14066d8d7:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14066d8de:	72 18                	jb     0x14066d8f8
14066d8e0:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
14066d8e4:	48 83 c2 27          	add    $0x27,%rdx
14066d8e8:	49 2b c8             	sub    %r8,%rcx
14066d8eb:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14066d8ef:	48 83 f8 1f          	cmp    $0x1f,%rax
14066d8f3:	77 20                	ja     0x14066d915
14066d8f5:	49 8b c8             	mov    %r8,%rcx
14066d8f8:	e8 47 d8 7a 00       	call   0x140e1b144
14066d8fd:	33 c0                	xor    %eax,%eax
14066d8ff:	48 89 06             	mov    %rax,(%rsi)
14066d902:	48 89 46 08          	mov    %rax,0x8(%rsi)
14066d906:	48 89 46 10          	mov    %rax,0x10(%rsi)
14066d90a:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14066d90f:	48 83 c4 20          	add    $0x20,%rsp
14066d913:	5e                   	pop    %rsi
14066d914:	c3                   	ret
14066d915:	e8 8a c8 7b 00       	call   0x140e2a1a4
14066d91a:	cc                   	int3
14066d91b:	cc                   	int3
14066d91c:	cc                   	int3
14066d91d:	cc                   	int3
14066d91e:	cc                   	int3
14066d91f:	cc                   	int3
14066d920:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14066d925:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14066d92a:	57                   	push   %rdi
14066d92b:	48 83 ec 20          	sub    $0x20,%rsp
14066d92f:	48 8b f9             	mov    %rcx,%rdi
14066d932:	48 8b 59 20          	mov    0x20(%rcx),%rbx
14066d936:	48 85 db             	test   %rbx,%rbx
14066d939:	74 3b                	je     0x14066d976
14066d93b:	be ff ff ff ff       	mov    $0xffffffff,%esi
14066d940:	8b c6                	mov    %esi,%eax
14066d942:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
14066d947:	83 f8 01             	cmp    $0x1,%eax
14066d94a:	75 2a                	jne    0x14066d976
14066d94c:	48 8b 03             	mov    (%rbx),%rax
14066d94f:	48 8b cb             	mov    %rbx,%rcx
14066d952:	48 8b 00             	mov    (%rax),%rax
14066d955:	ff 15 c5 60 91 00    	call   *0x9160c5(%rip)        # 0x140f83a20
14066d95b:	f0 0f c1 73 0c       	lock xadd %esi,0xc(%rbx)
14066d960:	83 fe 01             	cmp    $0x1,%esi
14066d963:	75 11                	jne    0x14066d976
14066d965:	48 8b 03             	mov    (%rbx),%rax
14066d968:	48 8b cb             	mov    %rbx,%rcx
14066d96b:	48 8b 40 08          	mov    0x8(%rax),%rax
14066d96f:	ff 15 ab 60 91 00    	call   *0x9160ab(%rip)        # 0x140f83a20
14066d975:	90                   	nop
14066d976:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
14066d97a:	48 85 c9             	test   %rcx,%rcx
14066d97d:	74 20                	je     0x14066d99f
14066d97f:	8b 41 10             	mov    0x10(%rcx),%eax
14066d982:	ff c8                	dec    %eax
14066d984:	89 41 10             	mov    %eax,0x10(%rcx)
14066d987:	85 c0                	test   %eax,%eax
14066d989:	7f 14                	jg     0x14066d99f
14066d98b:	78 7e                	js     0x14066da0b
14066d98d:	48 8b 01             	mov    (%rcx),%rax
14066d990:	ba 01 00 00 00       	mov    $0x1,%edx
14066d995:	48 8b 00             	mov    (%rax),%rax
14066d998:	ff 15 82 60 91 00    	call   *0x916082(%rip)        # 0x140f83a20
14066d99e:	90                   	nop
14066d99f:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14066d9a3:	48 85 c9             	test   %rcx,%rcx
14066d9a6:	74 20                	je     0x14066d9c8
14066d9a8:	8b 41 10             	mov    0x10(%rcx),%eax
14066d9ab:	ff c8                	dec    %eax
14066d9ad:	89 41 10             	mov    %eax,0x10(%rcx)
14066d9b0:	85 c0                	test   %eax,%eax
14066d9b2:	7f 14                	jg     0x14066d9c8
14066d9b4:	78 60                	js     0x14066da16
14066d9b6:	48 8b 01             	mov    (%rcx),%rax
14066d9b9:	ba 01 00 00 00       	mov    $0x1,%edx
14066d9be:	48 8b 00             	mov    (%rax),%rax
14066d9c1:	ff 15 59 60 91 00    	call   *0x916059(%rip)        # 0x140f83a20
14066d9c7:	90                   	nop
14066d9c8:	48 8b 0f             	mov    (%rdi),%rcx
14066d9cb:	48 85 c9             	test   %rcx,%rcx
14066d9ce:	74 20                	je     0x14066d9f0
14066d9d0:	8b 41 10             	mov    0x10(%rcx),%eax
14066d9d3:	ff c8                	dec    %eax
14066d9d5:	89 41 10             	mov    %eax,0x10(%rcx)
14066d9d8:	85 c0                	test   %eax,%eax
14066d9da:	7f 14                	jg     0x14066d9f0
14066d9dc:	78 22                	js     0x14066da00
14066d9de:	48 8b 01             	mov    (%rcx),%rax
14066d9e1:	ba 01 00 00 00       	mov    $0x1,%edx
14066d9e6:	48 8b 00             	mov    (%rax),%rax
14066d9e9:	ff 15 31 60 91 00    	call   *0x916031(%rip)        # 0x140f83a20
14066d9ef:	90                   	nop
14066d9f0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14066d9f5:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14066d9fa:	48 83 c4 20          	add    $0x20,%rsp
14066d9fe:	5f                   	pop    %rdi
14066d9ff:	c3                   	ret
14066da00:	b9 02 00 00 00       	mov    $0x2,%ecx
14066da05:	e8 f6 cc 11 00       	call   0x14078a700
14066da0a:	90                   	nop
14066da0b:	b9 02 00 00 00       	mov    $0x2,%ecx
14066da10:	e8 eb cc 11 00       	call   0x14078a700
14066da15:	90                   	nop
14066da16:	b9 02 00 00 00       	mov    $0x2,%ecx
14066da1b:	e8 e0 cc 11 00       	call   0x14078a700
14066da20:	cc                   	int3
14066da21:	cc                   	int3
14066da22:	cc                   	int3
14066da23:	cc                   	int3
14066da24:	cc                   	int3
14066da25:	cc                   	int3
14066da26:	cc                   	int3
14066da27:	cc                   	int3
14066da28:	cc                   	int3
14066da29:	cc                   	int3
14066da2a:	cc                   	int3
14066da2b:	cc                   	int3
14066da2c:	cc                   	int3
14066da2d:	cc                   	int3
14066da2e:	cc                   	int3
14066da2f:	cc                   	int3
14066da30:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14066da35:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14066da3a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14066da3f:	57                   	push   %rdi
14066da40:	48 83 ec 20          	sub    $0x20,%rsp
14066da44:	48 8b d9             	mov    %rcx,%rbx
14066da47:	48 8b 79 68          	mov    0x68(%rcx),%rdi
14066da4b:	33 ed                	xor    %ebp,%ebp
14066da4d:	48 85 ff             	test   %rdi,%rdi
14066da50:	74 64                	je     0x14066dab6
14066da52:	48 8b 71 70          	mov    0x70(%rcx),%rsi
14066da56:	48 3b fe             	cmp    %rsi,%rdi
14066da59:	74 16                	je     0x14066da71
14066da5b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14066da60:	48 8b cf             	mov    %rdi,%rcx
14066da63:	e8 48 ca bc ff       	call   0x14023a4b0
14066da68:	48 83 c7 40          	add    $0x40,%rdi
14066da6c:	48 3b fe             	cmp    %rsi,%rdi
14066da6f:	75 ef                	jne    0x14066da60