14001385f:	48 8b 4d df          	mov    -0x21(%rbp),%rcx
140013863:	48 85 c9             	test   %rcx,%rcx
140013866:	74 41                	je     0x1400138a9
140013868:	83 cf ff             	or     $0xffffffff,%edi
14001386b:	8b c7                	mov    %edi,%eax
14001386d:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
140013872:	03 c7                	add    %edi,%eax
140013874:	75 2f                	jne    0x1400138a5
140013876:	48 8b 5d df          	mov    -0x21(%rbp),%rbx
14001387a:	48 8b 03             	mov    (%rbx),%rax
14001387d:	48 8b cb             	mov    %rbx,%rcx
140013880:	48 8b 00             	mov    (%rax),%rax
140013883:	ff 15 af 93 af 00    	call   *0xaf93af(%rip)        # 0x140b0cc38
140013889:	8b c7                	mov    %edi,%eax
14001388b:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140013890:	03 c7                	add    %edi,%eax
140013892:	75 11                	jne    0x1400138a5
140013894:	48 8b 4d df          	mov    -0x21(%rbp),%rcx
140013898:	48 8b 01             	mov    (%rcx),%rax
14001389b:	48 8b 40 08          	mov    0x8(%rax),%rax
14001389f:	ff 15 93 93 af 00    	call   *0xaf9393(%rip)        # 0x140b0cc38
1400138a5:	48 8b 7d a7          	mov    -0x59(%rbp),%rdi
1400138a9:	4c 8b 4d bf          	mov    -0x41(%rbp),%r9
1400138ad:	49 ff c1             	inc    %r9
1400138b0:	4c 89 4d bf          	mov    %r9,-0x41(%rbp)
1400138b4:	4c 8b 45 c7          	mov    -0x39(%rbp),%r8
1400138b8:	49 83 c0 10          	add    $0x10,%r8
1400138bc:	4c 89 45 c7          	mov    %r8,-0x39(%rbp)
1400138c0:	48 8b 45 ef          	mov    -0x11(%rbp),%rax
1400138c4:	48 8b 48 08          	mov    0x8(%rax),%rcx
1400138c8:	48 8b 10             	mov    (%rax),%rdx
1400138cb:	48 8b c1             	mov    %rcx,%rax
1400138ce:	48 2b c2             	sub    %rdx,%rax
1400138d1:	48 c1 f8 04          	sar    $0x4,%rax
1400138d5:	4c 3b c8             	cmp    %rax,%r9
1400138d8:	0f 82 16 fe ff ff    	jb     0x1400136f4
1400138de:	4c 8b 45 77          	mov    0x77(%rbp),%r8
1400138e2:	49 ff c4             	inc    %r12
1400138e5:	49 8b 4e 08          	mov    0x8(%r14),%rcx
1400138e9:	49 8b 16             	mov    (%r14),%rdx
1400138ec:	48 8b c1             	mov    %rcx,%rax
1400138ef:	48 2b c2             	sub    %rdx,%rax
1400138f2:	48 c1 f8 03          	sar    $0x3,%rax
1400138f6:	4c 3b e0             	cmp    %rax,%r12
1400138f9:	73 09                	jae    0x140013904
1400138fb:	4c 8b 4d f7          	mov    -0x9(%rbp),%r9
1400138ff:	e9 59 fd ff ff       	jmp    0x14001365d
140013904:	c7 87 98 00 00 00 04 	movl   $0x4,0x98(%rdi)
14001390b:	00 00 00
14001390e:	c7 87 ac 00 00 00 01 	movl   $0x1,0xac(%rdi)
140013915:	00 00 00
140013918:	48 8b 07             	mov    (%rdi),%rax
14001391b:	48 8b cf             	mov    %rdi,%rcx
14001391e:	48 8b 80 a8 00 00 00 	mov    0xa8(%rax),%rax
140013925:	ff 15 0d 93 af 00    	call   *0xaf930d(%rip)        # 0x140b0cc38
14001392b:	f3 0f 10 00          	movss  (%rax),%xmm0
14001392f:	f3 0f 11 87 a4 00 00 	movss  %xmm0,0xa4(%rdi)
140013936:	00
140013937:	c7 87 a8 00 00 00 01 	movl   $0x1,0xa8(%rdi)
14001393e:	00 00 00
140013941:	48 8b 07             	mov    (%rdi),%rax
140013944:	48 8b cf             	mov    %rdi,%rcx
140013947:	48 8b 80 a8 00 00 00 	mov    0xa8(%rax),%rax
14001394e:	ff 15 e4 92 af 00    	call   *0xaf92e4(%rip)        # 0x140b0cc38
140013954:	f3 0f 10 40 04       	movss  0x4(%rax),%xmm0
140013959:	f3 0f 11 87 a0 00 00 	movss  %xmm0,0xa0(%rdi)
140013960:	00
140013961:	49 8b 47 08          	mov    0x8(%r15),%rax
140013965:	49 3b 47 10          	cmp    0x10(%r15),%rax
140013969:	74 12                	je     0x14001397d
14001396b:	49 8b d6             	mov    %r14,%rdx
14001396e:	48 8b c8             	mov    %rax,%rcx
140013971:	e8 6e ed 00 00       	call   0x1400226e4
140013976:	49 83 47 08 18       	addq   $0x18,0x8(%r15)
14001397b:	eb 0e                	jmp    0x14001398b
14001397d:	4d 8b c6             	mov    %r14,%r8
140013980:	48 8b d0             	mov    %rax,%rdx
140013983:	49 8b cf             	mov    %r15,%rcx
140013986:	e8 4d e3 00 00       	call   0x140021cd8
14001398b:	4c 8b 4d 7f          	mov    0x7f(%rbp),%r9
14001398f:	49 8b 51 08          	mov    0x8(%r9),%rdx
140013993:	49 3b 51 10          	cmp    0x10(%r9),%rdx
140013997:	74 2c                	je     0x1400139c5
140013999:	48 83 22 00          	andq   $0x0,(%rdx)
14001399d:	48 83 62 08 00       	andq   $0x0,0x8(%rdx)
1400139a2:	48 8b 4d af          	mov    -0x51(%rbp),%rcx
1400139a6:	48 85 c9             	test   %rcx,%rcx
1400139a9:	74 08                	je     0x1400139b3
1400139ab:	f0 ff 41 08          	lock incl 0x8(%rcx)
1400139af:	48 8b 7d a7          	mov    -0x59(%rbp),%rdi
1400139b3:	48 89 3a             	mov    %rdi,(%rdx)
1400139b6:	48 8b 45 af          	mov    -0x51(%rbp),%rax
1400139ba:	48 89 42 08          	mov    %rax,0x8(%rdx)
1400139be:	49 83 41 08 10       	addq   $0x10,0x8(%r9)
1400139c3:	eb 0c                	jmp    0x1400139d1
1400139c5:	4c 8d 45 a7          	lea    -0x59(%rbp),%r8
1400139c9:	49 8b c9             	mov    %r9,%rcx
1400139cc:	e8 1f cd 00 00       	call   0x1400206f0
1400139d1:	48 89 3e             	mov    %rdi,(%rsi)
1400139d4:	48 8b 45 af          	mov    -0x51(%rbp),%rax
1400139d8:	48 89 46 08          	mov    %rax,0x8(%rsi)
1400139dc:	e9 db fb ff ff       	jmp    0x1400135bc
1400139e1:	ff 15 b1 8f af 00    	call   *0xaf8fb1(%rip)        # 0x140b0c998
1400139e7:	cc                   	int3
1400139e8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400139ed:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1400139f2:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
1400139f7:	55                   	push   %rbp
1400139f8:	41 55                	push   %r13
1400139fa:	41 56                	push   %r14
1400139fc:	48 8b ec             	mov    %rsp,%rbp
1400139ff:	48 83 ec 50          	sub    $0x50,%rsp
140013a03:	4d 8b f1             	mov    %r9,%r14
140013a06:	49 8b f0             	mov    %r8,%rsi
140013a09:	48 8b da             	mov    %rdx,%rbx
140013a0c:	4c 8b e9             	mov    %rcx,%r13
140013a0f:	49 8b d1             	mov    %r9,%rdx
140013a12:	49 8b c8             	mov    %r8,%rcx
140013a15:	e8 3e e6 ff ff       	call   0x140012058
140013a1a:	4c 8b d0             	mov    %rax,%r10
140013a1d:	48 3d ff ff ff 7f    	cmp    $0x7fffffff,%rax
140013a23:	74 44                	je     0x140013a69
140013a25:	48 8b 4d 48          	mov    0x48(%rbp),%rcx
140013a29:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140013a2d:	48 2b 11             	sub    (%rcx),%rdx
140013a30:	48 c1 fa 04          	sar    $0x4,%rdx
140013a34:	48 3b c2             	cmp    %rdx,%rax
140013a37:	73 45                	jae    0x140013a7e
140013a39:	49 c1 e2 04          	shl    $0x4,%r10
140013a3d:	4c 03 11             	add    (%rcx),%r10
140013a40:	48 83 23 00          	andq   $0x0,(%rbx)
140013a44:	48 83 63 08 00       	andq   $0x0,0x8(%rbx)
140013a49:	49 8b 42 08          	mov    0x8(%r10),%rax
140013a4d:	48 85 c0             	test   %rax,%rax
140013a50:	74 04                	je     0x140013a56
140013a52:	f0 ff 40 08          	lock incl 0x8(%rax)
140013a56:	49 8b 02             	mov    (%r10),%rax
140013a59:	48 89 03             	mov    %rax,(%rbx)
140013a5c:	49 8b 42 08          	mov    0x8(%r10),%rax
140013a60:	48 89 43 08          	mov    %rax,0x8(%rbx)
140013a64:	e9 d9 00 00 00       	jmp    0x140013b42
140013a69:	49 8b 4d 40          	mov    0x40(%r13),%rcx
140013a6d:	49 8b 45 48          	mov    0x48(%r13),%rax
140013a71:	48 2b c1             	sub    %rcx,%rax
140013a74:	48 c1 f8 04          	sar    $0x4,%rax
140013a78:	48 39 45 40          	cmp    %rax,0x40(%rbp)
140013a7c:	72 07                	jb     0x140013a85
140013a7e:	ff 15 14 8f af 00    	call   *0xaf8f14(%rip)        # 0x140b0c998
140013a84:	cc                   	int3
140013a85:	48 8b 55 40          	mov    0x40(%rbp),%rdx
140013a89:	48 03 d2             	add    %rdx,%rdx
140013a8c:	48 8b 14 d1          	mov    (%rcx,%rdx,8),%rdx
140013a90:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
140013a94:	e8 f7 94 00 00       	call   0x14001cf90
140013a99:	0f 57 c0             	xorps  %xmm0,%xmm0
140013a9c:	66 0f 7f 45 e0       	movdqa %xmm0,-0x20(%rbp)
140013aa1:	48 8b 7d f8          	mov    -0x8(%rbp),%rdi
140013aa5:	48 85 ff             	test   %rdi,%rdi
140013aa8:	74 08                	je     0x140013ab2
140013aaa:	f0 ff 47 08          	lock incl 0x8(%rdi)
140013aae:	48 8b 7d f8          	mov    -0x8(%rbp),%rdi
140013ab2:	0f 28 45 f0          	movaps -0x10(%rbp),%xmm0
140013ab6:	66 0f 7f 45 e0       	movdqa %xmm0,-0x20(%rbp)
140013abb:	4c 8b 4d 40          	mov    0x40(%rbp),%r9
140013abf:	4d 8b c6             	mov    %r14,%r8
140013ac2:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
140013ac6:	49 8b cd             	mov    %r13,%rcx
140013ac9:	e8 3e e6 ff ff       	call   0x14001210c
140013ace:	48 8b 46 08          	mov    0x8(%rsi),%rax
140013ad2:	48 3b 46 10          	cmp    0x10(%rsi),%rax
140013ad6:	74 12                	je     0x140013aea
140013ad8:	49 8b d6             	mov    %r14,%rdx
140013adb:	48 8b c8             	mov    %rax,%rcx
140013ade:	e8 01 ec 00 00       	call   0x1400226e4
140013ae3:	48 83 46 08 18       	addq   $0x18,0x8(%rsi)
140013ae8:	eb 0e                	jmp    0x140013af8
140013aea:	4d 8b c6             	mov    %r14,%r8
140013aed:	48 8b d0             	mov    %rax,%rdx
140013af0:	48 8b ce             	mov    %rsi,%rcx
140013af3:	e8 e0 e1 00 00       	call   0x140021cd8
140013af8:	48 8b 4d 48          	mov    0x48(%rbp),%rcx
140013afc:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140013b00:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
140013b04:	74 28                	je     0x140013b2e
140013b06:	48 83 22 00          	andq   $0x0,(%rdx)
140013b0a:	48 83 62 08 00       	andq   $0x0,0x8(%rdx)
140013b0f:	48 85 ff             	test   %rdi,%rdi
140013b12:	74 08                	je     0x140013b1c
140013b14:	f0 ff 47 08          	lock incl 0x8(%rdi)
140013b18:	48 8b 7d f8          	mov    -0x8(%rbp),%rdi
140013b1c:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
140013b20:	48 89 02             	mov    %rax,(%rdx)
140013b23:	48 89 7a 08          	mov    %rdi,0x8(%rdx)
140013b27:	48 83 41 08 10       	addq   $0x10,0x8(%rcx)
140013b2c:	eb 0d                	jmp    0x140013b3b
140013b2e:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
140013b32:	e8 b9 cb 00 00       	call   0x1400206f0
140013b37:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
140013b3b:	48 89 03             	mov    %rax,(%rbx)
140013b3e:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140013b42:	48 8b c3             	mov    %rbx,%rax
140013b45:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
140013b4a:	49 8b 5b 20          	mov    0x20(%r11),%rbx
140013b4e:	49 8b 73 28          	mov    0x28(%r11),%rsi
140013b52:	49 8b 7b 30          	mov    0x30(%r11),%rdi
140013b56:	49 8b e3             	mov    %r11,%rsp
140013b59:	41 5e                	pop    %r14
140013b5b:	41 5d                	pop    %r13
140013b5d:	5d                   	pop    %rbp
140013b5e:	c3                   	ret
140013b5f:	90                   	nop
140013b60:	48 8b c4             	mov    %rsp,%rax
140013b63:	48 89 50 10          	mov    %rdx,0x10(%rax)
140013b67:	48 89 48 08          	mov    %rcx,0x8(%rax)
140013b6b:	53                   	push   %rbx
140013b6c:	55                   	push   %rbp
140013b6d:	56                   	push   %rsi
140013b6e:	57                   	push   %rdi
140013b6f:	41 54                	push   %r12
140013b71:	41 55                	push   %r13
140013b73:	41 56                	push   %r14
140013b75:	41 57                	push   %r15
140013b77:	48 83 ec 48          	sub    $0x48,%rsp
140013b7b:	48 8b da             	mov    %rdx,%rbx
140013b7e:	4c 8b e1             	mov    %rcx,%r12
140013b81:	83 60 98 00          	andl   $0x0,-0x68(%rax)
140013b85:	48 83 22 00          	andq   $0x0,(%rdx)
140013b89:	4c 8d 72 08          	lea    0x8(%rdx),%r14
140013b8d:	49 83 26 00          	andq   $0x0,(%r14)
140013b91:	48 83 62 10 00       	andq   $0x0,0x10(%rdx)
140013b96:	c7 40 98 01 00 00 00 	movl   $0x1,-0x68(%rax)
140013b9d:	4b 8d 3c 08          	lea    (%r8,%r9,1),%rdi
140013ba1:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140013ba6:	48 8b f7             	mov    %rdi,%rsi
140013ba9:	49 8b ce             	mov    %r14,%rcx
140013bac:	49 8d 40 01          	lea    0x1(%r8),%rax
140013bb0:	48 3b c7             	cmp    %rdi,%rax
140013bb3:	0f 83 db 03 00 00    	jae    0x140013f94
140013bb9:	41 b7 01             	mov    $0x1,%r15b
140013bbc:	4d 8d 58 03          	lea    0x3(%r8),%r11
140013bc0:	49 8b d3             	mov    %r11,%rdx
140013bc3:	4c 3b de             	cmp    %rsi,%r11
140013bc6:	0f 83 b8 01 00 00    	jae    0x140013d84
140013bcc:	49 8d 6b fe          	lea    -0x2(%r11),%rbp
140013bd0:	4c 8b ca             	mov    %rdx,%r9
140013bd3:	49 c1 e1 04          	shl    $0x4,%r9
140013bd7:	45 84 ff             	test   %r15b,%r15b
140013bda:	0f 84 a0 01 00 00    	je     0x140013d80
140013be0:	49 8b 4c 24 40       	mov    0x40(%r12),%rcx
140013be5:	49 8b 44 24 48       	mov    0x48(%r12),%rax
140013bea:	48 2b c1             	sub    %rcx,%rax
140013bed:	48 c1 f8 04          	sar    $0x4,%rax
140013bf1:	48 3b d0             	cmp    %rax,%rdx
140013bf4:	0f 83 bc 03 00 00    	jae    0x140013fb6
140013bfa:	49 8b 04 09          	mov    (%r9,%rcx,1),%rax
140013bfe:	48 83 c0 20          	add    $0x20,%rax
140013c02:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140013c07:	49 8b 44 24 48       	mov    0x48(%r12),%rax
140013c0c:	48 2b c1             	sub    %rcx,%rax
140013c0f:	48 c1 f8 04          	sar    $0x4,%rax
140013c13:	48 3b e8             	cmp    %rax,%rbp
140013c16:	0f 83 9a 03 00 00    	jae    0x140013fb6
140013c1c:	45 33 d2             	xor    %r10d,%r10d
140013c1f:	4c 89 94 24 a8 00 00 	mov    %r10,0xa8(%rsp)
140013c26:	00
140013c27:	49 8b 44 24 60       	mov    0x60(%r12),%rax
140013c2c:	49 2b 44 24 58       	sub    0x58(%r12),%rax
140013c31:	48 c1 f8 06          	sar    $0x6,%rax
140013c35:	48 85 c0             	test   %rax,%rax
140013c38:	0f 84 2f 01 00 00    	je     0x140013d6d
140013c3e:	49 8b 4c 09 e0       	mov    -0x20(%r9,%rcx,1),%rcx
140013c43:	48 83 c1 20          	add    $0x20,%rcx
140013c47:	48 89 8c 24 a0 00 00 	mov    %rcx,0xa0(%rsp)
140013c4e:	00
140013c4f:	49 8b 44 24 58       	mov    0x58(%r12),%rax
140013c54:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140013c59:	45 84 ff             	test   %r15b,%r15b
140013c5c:	0f 84 0b 01 00 00    	je     0x140013d6d
140013c62:	4d 8b 5c 24 60       	mov    0x60(%r12),%r11
140013c67:	4d 2b 5c 24 58       	sub    0x58(%r12),%r11
140013c6c:	49 c1 fb 06          	sar    $0x6,%r11
140013c70:	4d 3b d3             	cmp    %r11,%r10
140013c73:	0f 83 3d 03 00 00    	jae    0x140013fb6
140013c79:	4c 8b 20             	mov    (%rax),%r12
140013c7c:	4c 8b 50 08          	mov    0x8(%rax),%r10
140013c80:	4d 2b d4             	sub    %r12,%r10
140013c83:	49 c1 fa 03          	sar    $0x3,%r10
140013c87:	49 3b d2             	cmp    %r10,%rdx
140013c8a:	0f 83 26 03 00 00    	jae    0x140013fb6
140013c90:	4d 8b 2c d4          	mov    (%r12,%rdx,8),%r13
140013c94:	49 83 fd ff          	cmp    $0xffffffffffffffff,%r13
140013c98:	74 39                	je     0x140013cd3
140013c9a:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140013c9f:	48 8b 08             	mov    (%rax),%rcx
140013ca2:	48 8b 40 08          	mov    0x8(%rax),%rax
140013ca6:	48 2b c1             	sub    %rcx,%rax
140013ca9:	48 c1 f8 04          	sar    $0x4,%rax
140013cad:	4c 3b e8             	cmp    %rax,%r13
140013cb0:	0f 83 00 03 00 00    	jae    0x140013fb6
140013cb6:	49 8b c5             	mov    %r13,%rax
140013cb9:	48 03 c0             	add    %rax,%rax
140013cbc:	48 8b 04 c1          	mov    (%rcx,%rax,8),%rax
140013cc0:	8a 48 60             	mov    0x60(%rax),%cl
140013cc3:	c0 e9 06             	shr    $0x6,%cl
140013cc6:	f6 c1 01             	test   $0x1,%cl
140013cc9:	75 68                	jne    0x140013d33
140013ccb:	48 8b 8c 24 a0 00 00 	mov    0xa0(%rsp),%rcx
140013cd2:	00
140013cd3:	49 3b ea             	cmp    %r10,%rbp
140013cd6:	0f 83 da 02 00 00    	jae    0x140013fb6
140013cdc:	4d 8b 54 d4 f0       	mov    -0x10(%r12,%rdx,8),%r10
140013ce1:	49 83 fa ff          	cmp    $0xffffffffffffffff,%r10
140013ce5:	74 34                	je     0x140013d1b
140013ce7:	48 8b 09             	mov    (%rcx),%rcx
140013cea:	48 8b 84 24 a0 00 00 	mov    0xa0(%rsp),%rax
140013cf1:	00
140013cf2:	48 8b 40 08          	mov    0x8(%rax),%rax
140013cf6:	48 2b c1             	sub    %rcx,%rax
140013cf9:	48 c1 f8 04          	sar    $0x4,%rax
140013cfd:	4c 3b d0             	cmp    %rax,%r10
140013d00:	0f 83 b0 02 00 00    	jae    0x140013fb6
140013d06:	49 8b c2             	mov    %r10,%rax
140013d09:	48 03 c0             	add    %rax,%rax
140013d0c:	48 8b 04 c1          	mov    (%rcx,%rax,8),%rax
140013d10:	8a 48 60             	mov    0x60(%rax),%cl
140013d13:	c0 e9 06             	shr    $0x6,%cl
140013d16:	f6 c1 01             	test   $0x1,%cl
140013d19:	75 18                	jne    0x140013d33
140013d1b:	33 c9                	xor    %ecx,%ecx
140013d1d:	49 83 fa ff          	cmp    $0xffffffffffffffff,%r10
140013d21:	0f 95 c1             	setne  %cl
140013d24:	33 c0                	xor    %eax,%eax
140013d26:	49 83 fd ff          	cmp    $0xffffffffffffffff,%r13
140013d2a:	0f 95 c0             	setne  %al
140013d2d:	3b c1                	cmp    %ecx,%eax
140013d2f:	41 0f 94 c7          	sete   %r15b
140013d33:	4c 8b 94 24 a8 00 00 	mov    0xa8(%rsp),%r10
140013d3a:	00
140013d3b:	49 ff c2             	inc    %r10
140013d3e:	4c 89 94 24 a8 00 00 	mov    %r10,0xa8(%rsp)
140013d45:	00
140013d46:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140013d4b:	48 83 c0 40          	add    $0x40,%rax
140013d4f:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140013d54:	4d 3b d3             	cmp    %r11,%r10
140013d57:	48 8b 8c 24 a0 00 00 	mov    0xa0(%rsp),%rcx
140013d5e:	00
140013d5f:	4c 8b a4 24 90 00 00 	mov    0x90(%rsp),%r12
140013d66:	00
140013d67:	0f 82 ec fe ff ff    	jb     0x140013c59