14017966f:	48 8b cf             	mov    %rdi,%rcx
140179672:	e8 8d 5e ea ff       	call   0x14001f504
140179677:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14017967e:	00 00
140179680:	48 8b c7             	mov    %rdi,%rax
140179683:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140179688:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14017968d:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140179692:	48 83 c4 30          	add    $0x30,%rsp
140179696:	41 5e                	pop    %r14
140179698:	c3                   	ret
140179699:	90                   	nop
14017969a:	90                   	nop
14017969b:	90                   	nop
14017969c:	48 8b c4             	mov    %rsp,%rax
14017969f:	48 89 58 08          	mov    %rbx,0x8(%rax)
1401796a3:	48 89 70 10          	mov    %rsi,0x10(%rax)
1401796a7:	48 89 78 18          	mov    %rdi,0x18(%rax)
1401796ab:	4c 89 60 20          	mov    %r12,0x20(%rax)
1401796af:	55                   	push   %rbp
1401796b0:	41 56                	push   %r14
1401796b2:	41 57                	push   %r15
1401796b4:	48 8b ec             	mov    %rsp,%rbp
1401796b7:	48 83 ec 60          	sub    $0x60,%rsp
1401796bb:	4c 8b f2             	mov    %rdx,%r14
1401796be:	48 8b f9             	mov    %rcx,%rdi
1401796c1:	33 f6                	xor    %esi,%esi
1401796c3:	48 8b 01             	mov    (%rcx),%rax
1401796c6:	48 8b 40 40          	mov    0x40(%rax),%rax
1401796ca:	ff 15 68 35 99 00    	call   *0x993568(%rip)        # 0x140b0cc38
1401796d0:	48 85 c0             	test   %rax,%rax
1401796d3:	0f 84 80 01 00 00    	je     0x140179859
1401796d9:	41 83 cc ff          	or     $0xffffffff,%r12d
1401796dd:	48 8b 07             	mov    (%rdi),%rax
1401796e0:	4c 8b c6             	mov    %rsi,%r8
1401796e3:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
1401796e7:	48 8b cf             	mov    %rdi,%rcx
1401796ea:	48 8b 40 30          	mov    0x30(%rax),%rax
1401796ee:	ff 15 44 35 99 00    	call   *0x993544(%rip)        # 0x140b0cc38
1401796f4:	48 8b d0             	mov    %rax,%rdx
1401796f7:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
1401796fb:	e8 f0 2e ea ff       	call   0x14001c5f0
140179700:	90                   	nop
140179701:	48 8b 5d d8          	mov    -0x28(%rbp),%rbx
140179705:	48 85 db             	test   %rbx,%rbx
140179708:	74 39                	je     0x140179743
14017970a:	41 8b c4             	mov    %r12d,%eax
14017970d:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140179712:	41 03 c4             	add    %r12d,%eax
140179715:	75 2c                	jne    0x140179743
140179717:	48 8b 03             	mov    (%rbx),%rax
14017971a:	48 8b cb             	mov    %rbx,%rcx
14017971d:	48 8b 00             	mov    (%rax),%rax
140179720:	ff 15 12 35 99 00    	call   *0x993512(%rip)        # 0x140b0cc38
140179726:	41 8b c4             	mov    %r12d,%eax
140179729:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
14017972e:	41 03 c4             	add    %r12d,%eax
140179731:	75 10                	jne    0x140179743
140179733:	48 8b 03             	mov    (%rbx),%rax
140179736:	48 8b cb             	mov    %rbx,%rcx
140179739:	48 8b 40 08          	mov    0x8(%rax),%rax
14017973d:	ff 15 f5 34 99 00    	call   *0x9934f5(%rip)        # 0x140b0cc38
140179743:	48 83 7d c0 00       	cmpq   $0x0,-0x40(%rbp)
140179748:	0f 85 2b 01 00 00    	jne    0x140179879
14017974e:	49 83 fe 01          	cmp    $0x1,%r14
140179752:	76 2d                	jbe    0x140179781
140179754:	48 8b 07             	mov    (%rdi),%rax
140179757:	4c 8b c6             	mov    %rsi,%r8
14017975a:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
14017975e:	48 8b cf             	mov    %rdi,%rcx
140179761:	48 8b 40 30          	mov    0x30(%rax),%rax
140179765:	ff 15 cd 34 99 00    	call   *0x9934cd(%rip)        # 0x140b0cc38
14017976b:	90                   	nop
14017976c:	49 8d 56 ff          	lea    -0x1(%r14),%rdx
140179770:	48 8b 08             	mov    (%rax),%rcx
140179773:	e8 24 ff ff ff       	call   0x14017969c
140179778:	44 8a f8             	mov    %al,%r15b
14017977b:	48 8b 5d e8          	mov    -0x18(%rbp),%rbx
14017977f:	eb 2e                	jmp    0x1401797af
140179781:	4d 85 f6             	test   %r14,%r14
140179784:	75 70                	jne    0x1401797f6
140179786:	48 8b 07             	mov    (%rdi),%rax
140179789:	4c 8b c6             	mov    %rsi,%r8
14017978c:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140179790:	48 8b cf             	mov    %rdi,%rcx
140179793:	48 8b 40 30          	mov    0x30(%rax),%rax
140179797:	ff 15 9b 34 99 00    	call   *0x99349b(%rip)        # 0x140b0cc38
14017979d:	90                   	nop
14017979e:	33 d2                	xor    %edx,%edx
1401797a0:	48 8b 08             	mov    (%rax),%rcx
1401797a3:	e8 f4 fe ff ff       	call   0x14017969c
1401797a8:	44 8a f8             	mov    %al,%r15b
1401797ab:	48 8b 5d f8          	mov    -0x8(%rbp),%rbx
1401797af:	48 85 db             	test   %rbx,%rbx
1401797b2:	74 39                	je     0x1401797ed
1401797b4:	41 8b cc             	mov    %r12d,%ecx
1401797b7:	f0 0f c1 4b 08       	lock xadd %ecx,0x8(%rbx)
1401797bc:	41 03 cc             	add    %r12d,%ecx
1401797bf:	75 2c                	jne    0x1401797ed
1401797c1:	48 8b 13             	mov    (%rbx),%rdx
1401797c4:	48 8b cb             	mov    %rbx,%rcx
1401797c7:	48 8b 02             	mov    (%rdx),%rax
1401797ca:	ff 15 68 34 99 00    	call   *0x993468(%rip)        # 0x140b0cc38
1401797d0:	41 8b c4             	mov    %r12d,%eax
1401797d3:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
1401797d8:	41 03 c4             	add    %r12d,%eax
1401797db:	75 10                	jne    0x1401797ed
1401797dd:	48 8b 03             	mov    (%rbx),%rax
1401797e0:	48 8b cb             	mov    %rbx,%rcx
1401797e3:	48 8b 40 08          	mov    0x8(%rax),%rax
1401797e7:	ff 15 4b 34 99 00    	call   *0x99344b(%rip)        # 0x140b0cc38
1401797ed:	45 84 ff             	test   %r15b,%r15b
1401797f0:	0f 85 83 00 00 00    	jne    0x140179879
1401797f6:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
1401797fa:	48 85 c9             	test   %rcx,%rcx
1401797fd:	74 3e                	je     0x14017983d
1401797ff:	41 8b c4             	mov    %r12d,%eax
140179802:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
140179807:	41 03 c4             	add    %r12d,%eax
14017980a:	75 31                	jne    0x14017983d
14017980c:	48 8b 5d c8          	mov    -0x38(%rbp),%rbx
140179810:	48 8b 03             	mov    (%rbx),%rax
140179813:	48 8b cb             	mov    %rbx,%rcx
140179816:	48 8b 00             	mov    (%rax),%rax
140179819:	ff 15 19 34 99 00    	call   *0x993419(%rip)        # 0x140b0cc38
14017981f:	41 8b c4             	mov    %r12d,%eax
140179822:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140179827:	41 03 c4             	add    %r12d,%eax
14017982a:	75 11                	jne    0x14017983d
14017982c:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
140179830:	48 8b 01             	mov    (%rcx),%rax
140179833:	48 8b 40 08          	mov    0x8(%rax),%rax
140179837:	ff 15 fb 33 99 00    	call   *0x9933fb(%rip)        # 0x140b0cc38
14017983d:	48 ff c6             	inc    %rsi
140179840:	48 8b 07             	mov    (%rdi),%rax
140179843:	48 8b cf             	mov    %rdi,%rcx
140179846:	48 8b 40 40          	mov    0x40(%rax),%rax
14017984a:	ff 15 e8 33 99 00    	call   *0x9933e8(%rip)        # 0x140b0cc38
140179850:	48 3b f0             	cmp    %rax,%rsi
140179853:	0f 82 84 fe ff ff    	jb     0x1401796dd
140179859:	32 c0                	xor    %al,%al
14017985b:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
140179860:	49 8b 5b 20          	mov    0x20(%r11),%rbx
140179864:	49 8b 73 28          	mov    0x28(%r11),%rsi
140179868:	49 8b 7b 30          	mov    0x30(%r11),%rdi
14017986c:	4d 8b 63 38          	mov    0x38(%r11),%r12
140179870:	49 8b e3             	mov    %r11,%rsp
140179873:	41 5f                	pop    %r15
140179875:	41 5e                	pop    %r14
140179877:	5d                   	pop    %rbp
140179878:	c3                   	ret
140179879:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
14017987d:	48 85 c9             	test   %rcx,%rcx
140179880:	74 3e                	je     0x1401798c0
140179882:	41 8b c4             	mov    %r12d,%eax
140179885:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
14017988a:	41 03 c4             	add    %r12d,%eax
14017988d:	75 31                	jne    0x1401798c0
14017988f:	48 8b 5d c8          	mov    -0x38(%rbp),%rbx
140179893:	48 8b 03             	mov    (%rbx),%rax
140179896:	48 8b cb             	mov    %rbx,%rcx
140179899:	48 8b 00             	mov    (%rax),%rax
14017989c:	ff 15 96 33 99 00    	call   *0x993396(%rip)        # 0x140b0cc38
1401798a2:	41 8b cc             	mov    %r12d,%ecx
1401798a5:	f0 0f c1 4b 0c       	lock xadd %ecx,0xc(%rbx)
1401798aa:	41 03 cc             	add    %r12d,%ecx
1401798ad:	75 11                	jne    0x1401798c0
1401798af:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
1401798b3:	48 8b 11             	mov    (%rcx),%rdx
1401798b6:	48 8b 42 08          	mov    0x8(%rdx),%rax
1401798ba:	ff 15 78 33 99 00    	call   *0x993378(%rip)        # 0x140b0cc38
1401798c0:	b0 01                	mov    $0x1,%al
1401798c2:	eb 97                	jmp    0x14017985b
1401798c4:	cc                   	int3
1401798c5:	90                   	nop
1401798c6:	90                   	nop
1401798c7:	90                   	nop
1401798c8:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1401798cd:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1401798d2:	55                   	push   %rbp
1401798d3:	56                   	push   %rsi
1401798d4:	57                   	push   %rdi
1401798d5:	41 54                	push   %r12
1401798d7:	41 55                	push   %r13
1401798d9:	41 56                	push   %r14
1401798db:	41 57                	push   %r15
1401798dd:	48 8b ec             	mov    %rsp,%rbp
1401798e0:	48 83 ec 50          	sub    $0x50,%rsp
1401798e4:	41 8a d9             	mov    %r9b,%bl
1401798e7:	49 8b f8             	mov    %r8,%rdi
1401798ea:	4c 8b fa             	mov    %rdx,%r15
1401798ed:	48 8b f1             	mov    %rcx,%rsi
1401798f0:	48 8b c2             	mov    %rdx,%rax
1401798f3:	48 2b c1             	sub    %rcx,%rax
1401798f6:	41 bd 00 02 00 00    	mov    $0x200,%r13d
1401798fc:	eb 77                	jmp    0x140179975
1401798fe:	48 85 ff             	test   %rdi,%rdi
140179901:	0f 8e 11 01 00 00    	jle    0x140179a18
140179907:	44 8a cb             	mov    %bl,%r9b
14017990a:	4d 8b c7             	mov    %r15,%r8
14017990d:	48 8b d6             	mov    %rsi,%rdx
140179910:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
140179914:	e8 c7 16 00 00       	call   0x14017afe0
140179919:	48 8b cf             	mov    %rdi,%rcx
14017991c:	48 c1 f9 02          	sar    $0x2,%rcx
140179920:	48 d1 ff             	sar    $1,%rdi
140179923:	48 03 f9             	add    %rcx,%rdi
140179926:	49 8b cf             	mov    %r15,%rcx
140179929:	4c 8b 75 f0          	mov    -0x10(%rbp),%r14
14017992d:	49 2b ce             	sub    %r14,%rcx
140179930:	48 83 e1 f0          	and    $0xfffffffffffffff0,%rcx
140179934:	4c 8b 65 e8          	mov    -0x18(%rbp),%r12
140179938:	49 8b c4             	mov    %r12,%rax
14017993b:	48 2b c6             	sub    %rsi,%rax
14017993e:	48 83 e0 f0          	and    $0xfffffffffffffff0,%rax
140179942:	44 8a cb             	mov    %bl,%r9b
140179945:	4c 8b c7             	mov    %rdi,%r8
140179948:	48 3b c1             	cmp    %rcx,%rax
14017994b:	7d 10                	jge    0x14017995d
14017994d:	49 8b d4             	mov    %r12,%rdx
140179950:	48 8b ce             	mov    %rsi,%rcx
140179953:	e8 70 ff ff ff       	call   0x1401798c8
140179958:	49 8b f6             	mov    %r14,%rsi
14017995b:	eb 12                	jmp    0x14017996f
14017995d:	49 8b d7             	mov    %r15,%rdx
140179960:	49 8b ce             	mov    %r14,%rcx
140179963:	e8 60 ff ff ff       	call   0x1401798c8
140179968:	4d 8b fc             	mov    %r12,%r15
14017996b:	4c 89 65 48          	mov    %r12,0x48(%rbp)
14017996f:	49 8b c7             	mov    %r15,%rax
140179972:	48 2b c6             	sub    %rsi,%rax
140179975:	48 83 e0 f0          	and    $0xfffffffffffffff0,%rax
140179979:	49 3b c5             	cmp    %r13,%rax
14017997c:	7f 80                	jg     0x1401798fe
14017997e:	49 3b f7             	cmp    %r15,%rsi
140179981:	0f 84 59 03 00 00    	je     0x140179ce0
140179987:	4c 8d 66 10          	lea    0x10(%rsi),%r12
14017998b:	4d 3b e7             	cmp    %r15,%r12
14017998e:	0f 84 4c 03 00 00    	je     0x140179ce0
140179994:	41 83 ce ff          	or     $0xffffffff,%r14d
140179998:	4c 89 65 40          	mov    %r12,0x40(%rbp)
14017999c:	4d 8b 2c 24          	mov    (%r12),%r13
1401799a0:	4c 89 6d e8          	mov    %r13,-0x18(%rbp)
1401799a4:	49 8b 44 24 08       	mov    0x8(%r12),%rax
1401799a9:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
1401799ad:	49 83 24 24 00       	andq   $0x0,(%r12)
1401799b2:	49 83 64 24 08 00    	andq   $0x0,0x8(%r12)
1401799b8:	48 8b 3e             	mov    (%rsi),%rdi
1401799bb:	49 8b 45 00          	mov    0x0(%r13),%rax
1401799bf:	49 8b cd             	mov    %r13,%rcx
1401799c2:	48 8b 80 a8 00 00 00 	mov    0xa8(%rax),%rax
1401799c9:	ff 15 69 32 99 00    	call   *0x993269(%rip)        # 0x140b0cc38
1401799cf:	48 8b d8             	mov    %rax,%rbx
1401799d2:	48 8b 17             	mov    (%rdi),%rdx
1401799d5:	48 8b cf             	mov    %rdi,%rcx
1401799d8:	48 8b 82 a8 00 00 00 	mov    0xa8(%rdx),%rax
1401799df:	ff 15 53 32 99 00    	call   *0x993253(%rip)        # 0x140b0cc38
1401799e5:	f3 0f 10 43 0c       	movss  0xc(%rbx),%xmm0
1401799ea:	0f 2f 40 0c          	comiss 0xc(%rax),%xmm0
1401799ee:	0f 86 eb 01 00 00    	jbe    0x140179bdf
1401799f4:	49 8b dc             	mov    %r12,%rbx
1401799f7:	4c 3b e6             	cmp    %rsi,%r12
1401799fa:	74 14                	je     0x140179a10
1401799fc:	48 8b cb             	mov    %rbx,%rcx
1401799ff:	48 83 eb 10          	sub    $0x10,%rbx
140179a03:	48 8b d3             	mov    %rbx,%rdx
140179a06:	e8 d9 c8 e8 ff       	call   0x1400062e4
140179a0b:	48 3b de             	cmp    %rsi,%rbx
140179a0e:	75 ec                	jne    0x1401799fc
140179a10:	48 8b ce             	mov    %rsi,%rcx
140179a13:	e9 6a 02 00 00       	jmp    0x140179c82
140179a18:	49 8b ff             	mov    %r15,%rdi
140179a1b:	48 2b fe             	sub    %rsi,%rdi
140179a1e:	48 c1 ff 04          	sar    $0x4,%rdi
140179a22:	48 89 7d 48          	mov    %rdi,0x48(%rbp)
140179a26:	4c 8b ef             	mov    %rdi,%r13
140179a29:	49 d1 fd             	sar    $1,%r13
140179a2c:	41 83 ce ff          	or     $0xffffffff,%r14d
140179a30:	4d 85 ed             	test   %r13,%r13
140179a33:	0f 8e 98 00 00 00    	jle    0x140179ad1
140179a39:	4d 8b e5             	mov    %r13,%r12
140179a3c:	49 c1 e4 04          	shl    $0x4,%r12
140179a40:	4c 03 e6             	add    %rsi,%r12
140179a43:	49 ff cd             	dec    %r13
140179a46:	4d 8d 64 24 f0       	lea    -0x10(%r12),%r12
140179a4b:	49 8b 04 24          	mov    (%r12),%rax
140179a4f:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
140179a53:	49 8b 44 24 08       	mov    0x8(%r12),%rax
140179a58:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140179a5c:	49 83 24 24 00       	andq   $0x0,(%r12)
140179a61:	49 83 64 24 08 00    	andq   $0x0,0x8(%r12)
140179a67:	88 5c 24 20          	mov    %bl,0x20(%rsp)
140179a6b:	4c 8d 4d e8          	lea    -0x18(%rbp),%r9
140179a6f:	4c 8b c7             	mov    %rdi,%r8
140179a72:	49 8b d5             	mov    %r13,%rdx
140179a75:	48 8b ce             	mov    %rsi,%rcx
140179a78:	e8 0f 28 00 00       	call   0x14017c28c
140179a7d:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
140179a81:	48 85 c9             	test   %rcx,%rcx
140179a84:	74 42                	je     0x140179ac8
140179a86:	41 8b c6             	mov    %r14d,%eax
140179a89:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
140179a8e:	41 03 c6             	add    %r14d,%eax
140179a91:	75 35                	jne    0x140179ac8
140179a93:	48 8b 7d f0          	mov    -0x10(%rbp),%rdi
140179a97:	48 8b 07             	mov    (%rdi),%rax
140179a9a:	48 8b cf             	mov    %rdi,%rcx
140179a9d:	48 8b 00             	mov    (%rax),%rax
140179aa0:	ff 15 92 31 99 00    	call   *0x993192(%rip)        # 0x140b0cc38
140179aa6:	41 8b c6             	mov    %r14d,%eax
140179aa9:	f0 0f c1 47 0c       	lock xadd %eax,0xc(%rdi)
140179aae:	41 03 c6             	add    %r14d,%eax
140179ab1:	75 11                	jne    0x140179ac4
140179ab3:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
140179ab7:	48 8b 01             	mov    (%rcx),%rax
140179aba:	48 8b 40 08          	mov    0x8(%rax),%rax
140179abe:	ff 15 74 31 99 00    	call   *0x993174(%rip)        # 0x140b0cc38
140179ac4:	48 8b 7d 48          	mov    0x48(%rbp),%rdi
140179ac8:	4d 85 ed             	test   %r13,%r13
140179acb:	0f 8f 72 ff ff ff    	jg     0x140179a43
140179ad1:	48 83 ff 02          	cmp    $0x2,%rdi
140179ad5:	0f 8c 05 02 00 00    	jl     0x140179ce0
140179adb:	49 83 c7 f8          	add    $0xfffffffffffffff8,%r15
140179adf:	49 c7 c5 f8 ff ff ff 	mov    $0xfffffffffffffff8,%r13
140179ae6:	4c 2b ee             	sub    %rsi,%r13
140179ae9:	41 bc 08 00 00 00    	mov    $0x8,%r12d
140179aef:	4c 2b e6             	sub    %rsi,%r12
140179af2:	49 8b 47 f8          	mov    -0x8(%r15),%rax
140179af6:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
140179afa:	49 8b 07             	mov    (%r15),%rax
140179afd:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140179b01:	49 83 67 f8 00       	andq   $0x0,-0x8(%r15)
140179b06:	49 83 27 00          	andq   $0x0,(%r15)
140179b0a:	48 8b 06             	mov    (%rsi),%rax
140179b0d:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140179b11:	48 83 26 00          	andq   $0x0,(%rsi)
140179b15:	48 83 66 08 00       	andq   $0x0,0x8(%rsi)
140179b1a:	49 89 47 f8          	mov    %rax,-0x8(%r15)
140179b1e:	49 8b 3f             	mov    (%r15),%rdi
140179b21:	49 89 0f             	mov    %rcx,(%r15)
140179b24:	48 85 ff             	test   %rdi,%rdi
140179b27:	74 39                	je     0x140179b62
140179b29:	41 8b c6             	mov    %r14d,%eax
140179b2c:	f0 0f c1 47 08       	lock xadd %eax,0x8(%rdi)
140179b31:	41 03 c6             	add    %r14d,%eax
140179b34:	75 2c                	jne    0x140179b62
140179b36:	48 8b 07             	mov    (%rdi),%rax
140179b39:	48 8b cf             	mov    %rdi,%rcx
140179b3c:	48 8b 00             	mov    (%rax),%rax
140179b3f:	ff 15 f3 30 99 00    	call   *0x9930f3(%rip)        # 0x140b0cc38