140760821:	41 b8 ff ff 00 00    	mov    $0xffff,%r8d
140760827:	ff c6                	inc    %esi
140760829:	48 ff c5             	inc    %rbp
14076082c:	48 83 c3 20          	add    $0x20,%rbx
140760830:	49 3b ee             	cmp    %r14,%rbp
140760833:	7c 9b                	jl     0x1407607d0
140760835:	c7 44 24 44 ff ff ff 	movl   $0xffffffff,0x44(%rsp)
14076083c:	ff
14076083d:	48 be 15 7c 4a 7f b9 	movabs $0x9e3779b97f4a7c15,%rsi
140760844:	79 37 9e
140760847:	0f b7 44 24 40       	movzwl 0x40(%rsp),%eax
14076084c:	41 ff c7             	inc    %r15d
14076084f:	41 ff cc             	dec    %r12d
140760852:	41 ff c5             	inc    %r13d
140760855:	44 3b f8             	cmp    %eax,%r15d
140760858:	7f 41                	jg     0x14076089b
14076085a:	48 8b 9c 24 b0 00 00 	mov    0xb0(%rsp),%rbx
140760861:	00
140760862:	8b 54 24 48          	mov    0x48(%rsp),%edx
140760866:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
14076086b:	e9 16 ff ff ff       	jmp    0x140760786
140760870:	89 74 24 44          	mov    %esi,0x44(%rsp)
140760874:	85 f6                	test   %esi,%esi
140760876:	78 c5                	js     0x14076083d
140760878:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
14076087f:	00
140760880:	66 83 79 0c 00       	cmpw   $0x0,0xc(%rcx)
140760885:	75 10                	jne    0x140760897
140760887:	4c 8d 44 24 44       	lea    0x44(%rsp),%r8
14076088c:	8b d6                	mov    %esi,%edx
14076088e:	e8 cd 03 00 00       	call   0x140760c60
140760893:	8b 74 24 44          	mov    0x44(%rsp),%esi
140760897:	8b c6                	mov    %esi,%eax
140760899:	eb 05                	jmp    0x1407608a0
14076089b:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1407608a0:	48 83 c4 68          	add    $0x68,%rsp
1407608a4:	41 5f                	pop    %r15
1407608a6:	41 5e                	pop    %r14
1407608a8:	41 5d                	pop    %r13
1407608aa:	41 5c                	pop    %r12
1407608ac:	5f                   	pop    %rdi
1407608ad:	5e                   	pop    %rsi
1407608ae:	5d                   	pop    %rbp
1407608af:	5b                   	pop    %rbx
1407608b0:	c3                   	ret
1407608b1:	cc                   	int3
1407608b2:	cc                   	int3
1407608b3:	cc                   	int3
1407608b4:	cc                   	int3
1407608b5:	cc                   	int3
1407608b6:	cc                   	int3
1407608b7:	cc                   	int3
1407608b8:	cc                   	int3
1407608b9:	cc                   	int3
1407608ba:	cc                   	int3
1407608bb:	cc                   	int3
1407608bc:	cc                   	int3
1407608bd:	cc                   	int3
1407608be:	cc                   	int3
1407608bf:	cc                   	int3
1407608c0:	48 83 ec 28          	sub    $0x28,%rsp
1407608c4:	8b 42 18             	mov    0x18(%rdx),%eax
1407608c7:	83 f8 06             	cmp    $0x6,%eax
1407608ca:	75 0a                	jne    0x1407608d6
1407608cc:	b8 02 00 00 00       	mov    $0x2,%eax
1407608d1:	48 83 c4 28          	add    $0x28,%rsp
1407608d5:	c3                   	ret
1407608d6:	83 f8 10             	cmp    $0x10,%eax
1407608d9:	75 61                	jne    0x14076093c
1407608db:	48 8b 02             	mov    (%rdx),%rax
1407608de:	48 8b ca             	mov    %rdx,%rcx
1407608e1:	48 8b 40 10          	mov    0x10(%rax),%rax
1407608e5:	ff 15 35 31 82 00    	call   *0x823135(%rip)        # 0x140f83a20
1407608eb:	48 8b 0d 06 0c cd 00 	mov    0xcd0c06(%rip),%rcx        # 0x1414314f8
1407608f2:	48 8b d0             	mov    %rax,%rdx
1407608f5:	e8 06 0d c2 ff       	call   0x140381600
1407608fa:	48 8b 0d f7 0b cd 00 	mov    0xcd0bf7(%rip),%rcx        # 0x1414314f8
140760901:	48 8d 15 a8 54 8c 00 	lea    0x8c54a8(%rip),%rdx        # 0x141025db0
140760908:	e8 b3 2c 03 00       	call   0x1407935c0
14076090d:	48 8b 15 e4 0b cd 00 	mov    0xcd0be4(%rip),%rdx        # 0x1414314f8
140760914:	48 8b 42 10          	mov    0x10(%rdx),%rax
140760918:	48 8b 48 08          	mov    0x8(%rax),%rcx
14076091c:	4c 8b 01             	mov    (%rcx),%r8
14076091f:	48 ff 4a 18          	decq   0x18(%rdx)
140760923:	ba 20 00 00 00       	mov    $0x20,%edx
140760928:	48 8b 41 08          	mov    0x8(%rcx),%rax
14076092c:	4c 89 00             	mov    %r8,(%rax)
14076092f:	48 8b 41 08          	mov    0x8(%rcx),%rax
140760933:	49 89 40 08          	mov    %rax,0x8(%r8)
140760937:	e8 08 a8 6b 00       	call   0x140e1b144
14076093c:	33 c0                	xor    %eax,%eax
14076093e:	48 83 c4 28          	add    $0x28,%rsp
140760942:	c3                   	ret
140760943:	cc                   	int3
140760944:	cc                   	int3
140760945:	cc                   	int3
140760946:	cc                   	int3
140760947:	cc                   	int3
140760948:	cc                   	int3
140760949:	cc                   	int3
14076094a:	cc                   	int3
14076094b:	cc                   	int3
14076094c:	cc                   	int3
14076094d:	cc                   	int3
14076094e:	cc                   	int3
14076094f:	cc                   	int3
140760950:	48 8b c4             	mov    %rsp,%rax
140760953:	41 56                	push   %r14
140760955:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
14076095c:	66 83 79 0c 00       	cmpw   $0x0,0xc(%rcx)
140760961:	4c 8b f1             	mov    %rcx,%r14
140760964:	0f 87 e6 02 00 00    	ja     0x140760c50
14076096a:	44 8b 51 10          	mov    0x10(%rcx),%r10d
14076096e:	4c 89 68 e0          	mov    %r13,-0x20(%rax)
140760972:	45 33 ed             	xor    %r13d,%r13d
140760975:	4c 89 78 d8          	mov    %r15,-0x28(%rax)
140760979:	41 bf 10 00 00 00    	mov    $0x10,%r15d
14076097f:	48 89 58 10          	mov    %rbx,0x10(%rax)
140760983:	48 89 68 18          	mov    %rbp,0x18(%rax)
140760987:	48 89 70 20          	mov    %rsi,0x20(%rax)
14076098b:	48 89 78 f0          	mov    %rdi,-0x10(%rax)
14076098f:	4c 89 60 e8          	mov    %r12,-0x18(%rax)
140760993:	44 89 bc 24 b0 00 00 	mov    %r15d,0xb0(%rsp)
14076099a:	00
14076099b:	45 85 d2             	test   %r10d,%r10d
14076099e:	0f 88 70 02 00 00    	js     0x140760c14
1407609a4:	41 bc ff ff 00 00    	mov    $0xffff,%r12d
1407609aa:	49 b9 15 7c 4a 7f b9 	movabs $0x9e3779b97f4a7c15,%r9
1407609b1:	79 37 9e
1407609b4:	45 85 ff             	test   %r15d,%r15d
1407609b7:	0f 8e 5b 02 00 00    	jle    0x140760c18
1407609bd:	41 8b d2             	mov    %r10d,%edx
1407609c0:	48 c1 e2 05          	shl    $0x5,%rdx
1407609c4:	49 03 56 40          	add    0x40(%r14),%rdx
1407609c8:	0f b7 02             	movzwl (%rdx),%eax
1407609cb:	66 41 3b c4          	cmp    %r12w,%ax
1407609cf:	0f 84 2f 02 00 00    	je     0x140760c04
1407609d5:	45 8b c2             	mov    %r10d,%r8d
1407609d8:	44 2b c0             	sub    %eax,%r8d
1407609db:	41 0f b7 46 02       	movzwl 0x2(%r14),%eax
1407609e0:	66 85 c0             	test   %ax,%ax
1407609e3:	75 05                	jne    0x1407609ea
1407609e5:	41 8b ed             	mov    %r13d,%ebp
1407609e8:	eb 15                	jmp    0x1407609ff
1407609ea:	8b 6a 08             	mov    0x8(%rdx),%ebp
1407609ed:	b9 40 00 00 00       	mov    $0x40,%ecx
1407609f2:	49 0f af e9          	imul   %r9,%rbp
1407609f6:	48 2b c8             	sub    %rax,%rcx
1407609f9:	48 d3 e5             	shl    %cl,%rbp
1407609fc:	48 d3 ed             	shr    %cl,%rbp
1407609ff:	44 3b c5             	cmp    %ebp,%r8d
140760a02:	0f 84 fc 01 00 00    	je     0x140760c04
140760a08:	0f 10 02             	movups (%rdx),%xmm0
140760a0b:	49 8d 76 04          	lea    0x4(%r14),%rsi
140760a0f:	41 bf fd ff 00 00    	mov    $0xfffd,%r15d
140760a15:	0f 10 4a 10          	movups 0x10(%rdx),%xmm1
140760a19:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
140760a1e:	0f 11 4c 24 20       	movups %xmm1,0x20(%rsp)
140760a23:	49 8b 7e 40          	mov    0x40(%r14),%rdi
140760a27:	48 85 ff             	test   %rdi,%rdi
140760a2a:	74 04                	je     0x140760a30
140760a2c:	8b 06                	mov    (%rsi),%eax
140760a2e:	eb 03                	jmp    0x140760a33
140760a30:	41 8b c5             	mov    %r13d,%eax
140760a33:	ff c8                	dec    %eax
140760a35:	44 3b d0             	cmp    %eax,%r10d
140760a38:	0f 84 9b 00 00 00    	je     0x140760ad9
140760a3e:	41 8d 42 01          	lea    0x1(%r10),%eax
140760a42:	4c 63 c8             	movslq %eax,%r9
140760a45:	4d 8b c1             	mov    %r9,%r8
140760a48:	49 c1 e0 05          	shl    $0x5,%r8
140760a4c:	4c 03 c7             	add    %rdi,%r8
140760a4f:	41 0f b7 10          	movzwl (%r8),%edx
140760a53:	8d 4a ff             	lea    -0x1(%rdx),%ecx
140760a56:	66 41 3b cf          	cmp    %r15w,%cx
140760a5a:	77 7d                	ja     0x140760ad9
140760a5c:	44 8b d8             	mov    %eax,%r11d
140760a5f:	44 2b da             	sub    %edx,%r11d
140760a62:	48 85 ff             	test   %rdi,%rdi
140760a65:	74 04                	je     0x140760a6b
140760a67:	8b 0e                	mov    (%rsi),%ecx
140760a69:	eb 07                	jmp    0x140760a72
140760a6b:	41 8b cd             	mov    %r13d,%ecx
140760a6e:	49 8d 76 04          	lea    0x4(%r14),%rsi
140760a72:	3b c1                	cmp    %ecx,%eax
140760a74:	7d 2b                	jge    0x140760aa1
140760a76:	48 63 d9             	movslq %ecx,%rbx
140760a79:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140760a80:	41 0f b7 08          	movzwl (%r8),%ecx
140760a84:	66 41 3b cc          	cmp    %r12w,%cx
140760a88:	74 17                	je     0x140760aa1
140760a8a:	8b d0                	mov    %eax,%edx
140760a8c:	2b d1                	sub    %ecx,%edx
140760a8e:	41 3b d3             	cmp    %r11d,%edx
140760a91:	75 0e                	jne    0x140760aa1
140760a93:	ff c0                	inc    %eax
140760a95:	49 ff c1             	inc    %r9
140760a98:	49 83 c0 20          	add    $0x20,%r8
140760a9c:	4c 3b cb             	cmp    %rbx,%r9
140760a9f:	7c df                	jl     0x140760a80
140760aa1:	8d 50 ff             	lea    -0x1(%rax),%edx
140760aa4:	49 63 ca             	movslq %r10d,%rcx
140760aa7:	48 c1 e1 05          	shl    $0x5,%rcx
140760aab:	66 44 2b d2          	sub    %dx,%r10w
140760aaf:	48 63 c2             	movslq %edx,%rax
140760ab2:	48 c1 e0 05          	shl    $0x5,%rax
140760ab6:	0f 10 04 38          	movups (%rax,%rdi,1),%xmm0
140760aba:	0f 11 04 39          	movups %xmm0,(%rcx,%rdi,1)
140760abe:	0f 10 4c 38 10       	movups 0x10(%rax,%rdi,1),%xmm1
140760ac3:	0f 11 4c 39 10       	movups %xmm1,0x10(%rcx,%rdi,1)
140760ac8:	49 8b 46 40          	mov    0x40(%r14),%rax
140760acc:	66 44 01 14 08       	add    %r10w,(%rax,%rcx,1)
140760ad1:	44 8b d2             	mov    %edx,%r10d
140760ad4:	e9 4a ff ff ff       	jmp    0x140760a23
140760ad9:	49 63 c2             	movslq %r10d,%rax
140760adc:	8b dd                	mov    %ebp,%ebx
140760ade:	48 c1 e0 05          	shl    $0x5,%rax
140760ae2:	66 44 89 24 38       	mov    %r12w,(%rax,%rdi,1)
140760ae7:	49 8b 4e 40          	mov    0x40(%r14),%rcx
140760aeb:	48 85 c9             	test   %rcx,%rcx
140760aee:	74 04                	je     0x140760af4
140760af0:	8b 06                	mov    (%rsi),%eax
140760af2:	eb 03                	jmp    0x140760af7
140760af4:	41 8b c5             	mov    %r13d,%eax
140760af7:	44 8b bc 24 b0 00 00 	mov    0xb0(%rsp),%r15d
140760afe:	00
140760aff:	3b e8                	cmp    %eax,%ebp
140760b01:	7d 2f                	jge    0x140760b32
140760b03:	4c 63 c5             	movslq %ebp,%r8
140760b06:	49 8b d0             	mov    %r8,%rdx
140760b09:	4c 63 c8             	movslq %eax,%r9
140760b0c:	48 c1 e2 05          	shl    $0x5,%rdx
140760b10:	48 03 d1             	add    %rcx,%rdx
140760b13:	0f b7 02             	movzwl (%rdx),%eax
140760b16:	66 41 3b c4          	cmp    %r12w,%ax
140760b1a:	74 16                	je     0x140760b32
140760b1c:	8b cb                	mov    %ebx,%ecx
140760b1e:	2b c8                	sub    %eax,%ecx
140760b20:	3b cd                	cmp    %ebp,%ecx
140760b22:	7f 0e                	jg     0x140760b32
140760b24:	ff c3                	inc    %ebx
140760b26:	49 ff c0             	inc    %r8
140760b29:	48 83 c2 20          	add    $0x20,%rdx
140760b2d:	4d 3b c1             	cmp    %r9,%r8
140760b30:	7c e1                	jl     0x140760b13
140760b32:	0f 10 4c 24 20       	movups 0x20(%rsp),%xmm1
140760b37:	0f b7 c3             	movzwl %bx,%eax
140760b3a:	66 2b c5             	sub    %bp,%ax
140760b3d:	66 89 44 24 40       	mov    %ax,0x40(%rsp)
140760b42:	0f 10 44 24 40       	movups 0x40(%rsp),%xmm0
140760b47:	49 8b 4e 40          	mov    0x40(%r14),%rcx
140760b4b:	0f 11 44 24 30       	movups %xmm0,0x30(%rsp)
140760b50:	48 85 c9             	test   %rcx,%rcx
140760b53:	74 04                	je     0x140760b59
140760b55:	8b 06                	mov    (%rsi),%eax
140760b57:	eb 03                	jmp    0x140760b5c
140760b59:	41 8b c5             	mov    %r13d,%eax
140760b5c:	48 63 fb             	movslq %ebx,%rdi
140760b5f:	48 c1 e7 05          	shl    $0x5,%rdi
140760b63:	3b d8                	cmp    %eax,%ebx
140760b65:	7d 63                	jge    0x140760bca
140760b67:	48 03 f9             	add    %rcx,%rdi
140760b6a:	66 44 39 27          	cmp    %r12w,(%rdi)
140760b6e:	74 51                	je     0x140760bc1
140760b70:	0f 10 07             	movups (%rdi),%xmm0
140760b73:	8b d3                	mov    %ebx,%edx
140760b75:	49 8b ce             	mov    %r14,%rcx
140760b78:	0f 11 44 24 60       	movups %xmm0,0x60(%rsp)
140760b7d:	0f 10 47 10          	movups 0x10(%rdi),%xmm0
140760b81:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
140760b86:	e8 a5 60 b1 ff       	call   0x140276c30
140760b8b:	0f 10 4c 24 20       	movups 0x20(%rsp),%xmm1
140760b90:	8b 0f                	mov    (%rdi),%ecx
140760b92:	ff c0                	inc    %eax
140760b94:	0f 10 44 24 30       	movups 0x30(%rsp),%xmm0
140760b99:	0f b7 d0             	movzwl %ax,%edx
140760b9c:	66 2b d3             	sub    %bx,%dx
140760b9f:	8b d8                	mov    %eax,%ebx
140760ba1:	0f 11 07             	movups %xmm0,(%rdi)
140760ba4:	66 03 ca             	add    %dx,%cx
140760ba7:	0f 11 4f 10          	movups %xmm1,0x10(%rdi)
140760bab:	66 89 4c 24 60       	mov    %cx,0x60(%rsp)
140760bb0:	0f 10 4c 24 40       	movups 0x40(%rsp),%xmm1
140760bb5:	0f 10 44 24 60       	movups 0x60(%rsp),%xmm0
140760bba:	0f 11 4c 24 20       	movups %xmm1,0x20(%rsp)
140760bbf:	eb 86                	jmp    0x140760b47
140760bc1:	0f 11 07             	movups %xmm0,(%rdi)
140760bc4:	0f 11 4f 10          	movups %xmm1,0x10(%rdi)
140760bc8:	eb 1f                	jmp    0x140760be9
140760bca:	49 8b ce             	mov    %r14,%rcx
140760bcd:	e8 9e a5 e1 ff       	call   0x14057b170
140760bd2:	49 8b 46 40          	mov    0x40(%r14),%rax
140760bd6:	0f 10 44 24 30       	movups 0x30(%rsp),%xmm0
140760bdb:	0f 10 4c 24 20       	movups 0x20(%rsp),%xmm1
140760be0:	0f 11 04 38          	movups %xmm0,(%rax,%rdi,1)
140760be4:	0f 11 4c 38 10       	movups %xmm1,0x10(%rax,%rdi,1)
140760be9:	45 8b 56 10          	mov    0x10(%r14),%r10d
140760bed:	41 ff cf             	dec    %r15d
140760bf0:	44 89 bc 24 b0 00 00 	mov    %r15d,0xb0(%rsp)
140760bf7:	00
140760bf8:	49 b9 15 7c 4a 7f b9 	movabs $0x9e3779b97f4a7c15,%r9
140760bff:	79 37 9e
140760c02:	eb 07                	jmp    0x140760c0b
140760c04:	41 ff ca             	dec    %r10d
140760c07:	45 89 56 10          	mov    %r10d,0x10(%r14)
140760c0b:	45 85 d2             	test   %r10d,%r10d
140760c0e:	0f 89 a0 fd ff ff    	jns    0x1407609b4
140760c14:	66 45 89 2e          	mov    %r13w,(%r14)
140760c18:	48 8b ac 24 c0 00 00 	mov    0xc0(%rsp),%rbp
140760c1f:	00
140760c20:	4c 8b a4 24 90 00 00 	mov    0x90(%rsp),%r12
140760c27:	00
140760c28:	48 8b bc 24 98 00 00 	mov    0x98(%rsp),%rdi
140760c2f:	00
140760c30:	48 8b b4 24 c8 00 00 	mov    0xc8(%rsp),%rsi
140760c37:	00
140760c38:	48 8b 9c 24 b8 00 00 	mov    0xb8(%rsp),%rbx
140760c3f:	00
140760c40:	4c 8b ac 24 88 00 00 	mov    0x88(%rsp),%r13
140760c47:	00
140760c48:	4c 8b bc 24 80 00 00 	mov    0x80(%rsp),%r15
140760c4f:	00
140760c50:	48 81 c4 a0 00 00 00 	add    $0xa0,%rsp
140760c57:	41 5e                	pop    %r14
140760c59:	c3                   	ret
140760c5a:	cc                   	int3
140760c5b:	cc                   	int3
140760c5c:	cc                   	int3
140760c5d:	cc                   	int3
140760c5e:	cc                   	int3
140760c5f:	cc                   	int3
140760c60:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140760c65:	55                   	push   %rbp
140760c66:	57                   	push   %rdi
140760c67:	41 56                	push   %r14
140760c69:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
140760c70:	48 63 da             	movslq %edx,%rbx
140760c73:	4d 8b f0             	mov    %r8,%r14
140760c76:	48 8b d3             	mov    %rbx,%rdx
140760c79:	44 8b cb             	mov    %ebx,%r9d
140760c7c:	48 c1 e2 05          	shl    $0x5,%rdx
140760c80:	48 8b f9             	mov    %rcx,%rdi
140760c83:	48 03 51 40          	add    0x40(%rcx),%rdx
140760c87:	0f b7 02             	movzwl (%rdx),%eax
140760c8a:	44 2b c8             	sub    %eax,%r9d
140760c8d:	0f b7 41 02          	movzwl 0x2(%rcx),%eax
140760c91:	66 85 c0             	test   %ax,%ax
140760c94:	75 04                	jne    0x140760c9a
140760c96:	33 ed                	xor    %ebp,%ebp
140760c98:	eb 1f                	jmp    0x140760cb9