140ad7953:	41 0f 94 c1          	sete   %r9b
140ad7957:	eb 31                	jmp    0x140ad798a
140ad7959:	44 8b c6             	mov    %esi,%r8d
140ad795c:	8b d3                	mov    %ebx,%edx
140ad795e:	48 8b cf             	mov    %rdi,%rcx
140ad7961:	e8 8e f6 ff ff       	call   0x140ad6ff4
140ad7966:	45 8b cb             	mov    %r11d,%r9d
140ad7969:	66 44 3b d0          	cmp    %ax,%r10w
140ad796d:	41 0f 95 c1          	setne  %r9b
140ad7971:	eb 17                	jmp    0x140ad798a
140ad7973:	66 45 85 d2          	test   %r10w,%r10w
140ad7977:	75 1f                	jne    0x140ad7998
140ad7979:	45 33 c9             	xor    %r9d,%r9d
140ad797c:	eb 0a                	jmp    0x140ad7988
140ad797e:	66 45 85 d2          	test   %r10w,%r10w
140ad7982:	74 14                	je     0x140ad7998
140ad7984:	45 0f b7 ca          	movzwl %r10w,%r9d
140ad7988:	8b d3                	mov    %ebx,%edx
140ad798a:	44 8b c6             	mov    %esi,%r8d
140ad798d:	48 8b cf             	mov    %rdi,%rcx
140ad7990:	e8 2b f5 ff ff       	call   0x140ad6ec0
140ad7995:	45 33 db             	xor    %r11d,%r11d
140ad7998:	ff c3                	inc    %ebx
140ad799a:	41 8d 04 1f          	lea    (%r15,%rbx,1),%eax
140ad799e:	3b c5                	cmp    %ebp,%eax
140ad79a0:	0f 82 11 ff ff ff    	jb     0x140ad78b7
140ad79a6:	44 8b 64 24 70       	mov    0x70(%rsp),%r12d
140ad79ab:	44 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8d
140ad79b2:	00
140ad79b3:	ff c6                	inc    %esi
140ad79b5:	41 8d 04 36          	lea    (%r14,%rsi,1),%eax
140ad79b9:	41 3b c4             	cmp    %r12d,%eax
140ad79bc:	0f 82 df fe ff ff    	jb     0x140ad78a1
140ad79c2:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140ad79c7:	48 8b 7f 08          	mov    0x8(%rdi),%rdi
140ad79cb:	48 85 ff             	test   %rdi,%rdi
140ad79ce:	74 38                	je     0x140ad7a08
140ad79d0:	83 cb ff             	or     $0xffffffff,%ebx
140ad79d3:	8b c3                	mov    %ebx,%eax
140ad79d5:	f0 0f c1 47 08       	lock xadd %eax,0x8(%rdi)
140ad79da:	03 c3                	add    %ebx,%eax
140ad79dc:	75 2a                	jne    0x140ad7a08
140ad79de:	48 8b 07             	mov    (%rdi),%rax
140ad79e1:	48 8b cf             	mov    %rdi,%rcx
140ad79e4:	48 8b 00             	mov    (%rax),%rax
140ad79e7:	ff 15 4b 52 03 00    	call   *0x3524b(%rip)        # 0x140b0cc38
140ad79ed:	8b c3                	mov    %ebx,%eax
140ad79ef:	f0 0f c1 47 0c       	lock xadd %eax,0xc(%rdi)
140ad79f4:	03 c3                	add    %ebx,%eax
140ad79f6:	75 10                	jne    0x140ad7a08
140ad79f8:	48 8b 07             	mov    (%rdi),%rax
140ad79fb:	48 8b cf             	mov    %rdi,%rcx
140ad79fe:	48 8b 40 08          	mov    0x8(%rax),%rax
140ad7a02:	ff 15 30 52 03 00    	call   *0x35230(%rip)        # 0x140b0cc38
140ad7a08:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
140ad7a0f:	00
140ad7a10:	48 83 c4 30          	add    $0x30,%rsp
140ad7a14:	41 5f                	pop    %r15
140ad7a16:	41 5e                	pop    %r14
140ad7a18:	41 5d                	pop    %r13
140ad7a1a:	41 5c                	pop    %r12
140ad7a1c:	5f                   	pop    %rdi
140ad7a1d:	5e                   	pop    %rsi
140ad7a1e:	5d                   	pop    %rbp
140ad7a1f:	c3                   	ret
140ad7a20:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140ad7a25:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140ad7a2a:	55                   	push   %rbp
140ad7a2b:	57                   	push   %rdi
140ad7a2c:	41 54                	push   %r12
140ad7a2e:	41 56                	push   %r14
140ad7a30:	41 57                	push   %r15
140ad7a32:	48 8b ec             	mov    %rsp,%rbp
140ad7a35:	48 83 ec 30          	sub    $0x30,%rsp
140ad7a39:	48 8d 59 30          	lea    0x30(%rcx),%rbx
140ad7a3d:	48 8b fa             	mov    %rdx,%rdi
140ad7a40:	48 8b f1             	mov    %rcx,%rsi
140ad7a43:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7a47:	41 83 cf ff          	or     $0xffffffff,%r15d
140ad7a4b:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7a4f:	45 33 f6             	xor    %r14d,%r14d
140ad7a52:	66 44 89 7d 30       	mov    %r15w,0x30(%rbp)
140ad7a57:	48 8b cb             	mov    %rbx,%rcx
140ad7a5a:	66 44 89 75 32       	mov    %r14w,0x32(%rbp)
140ad7a5f:	e8 38 02 00 00       	call   0x140ad7c9c
140ad7a64:	45 8d 67 02          	lea    0x2(%r15),%r12d
140ad7a68:	66 44 89 7d 30       	mov    %r15w,0x30(%rbp)
140ad7a6d:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7a71:	66 44 89 65 32       	mov    %r12w,0x32(%rbp)
140ad7a76:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7a7a:	48 8b cb             	mov    %rbx,%rcx
140ad7a7d:	e8 1a 02 00 00       	call   0x140ad7c9c
140ad7a82:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7a86:	66 44 89 75 30       	mov    %r14w,0x30(%rbp)
140ad7a8b:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7a8f:	66 44 89 7d 32       	mov    %r15w,0x32(%rbp)
140ad7a94:	48 8b cb             	mov    %rbx,%rcx
140ad7a97:	e8 00 02 00 00       	call   0x140ad7c9c
140ad7a9c:	48 8b 0f             	mov    (%rdi),%rcx
140ad7a9f:	48 8b 47 08          	mov    0x8(%rdi),%rax
140ad7aa3:	48 3b c8             	cmp    %rax,%rcx
140ad7aa6:	0f 85 bf 00 00 00    	jne    0x140ad7b6b
140ad7aac:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7ab0:	66 44 89 7d 30       	mov    %r15w,0x30(%rbp)
140ad7ab5:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7ab9:	66 44 89 7d 32       	mov    %r15w,0x32(%rbp)
140ad7abe:	48 8b cb             	mov    %rbx,%rcx
140ad7ac1:	e8 d6 01 00 00       	call   0x140ad7c9c
140ad7ac6:	48 8d 5e 40          	lea    0x40(%rsi),%rbx
140ad7aca:	66 44 89 7d 30       	mov    %r15w,0x30(%rbp)
140ad7acf:	48 8b cb             	mov    %rbx,%rcx
140ad7ad2:	66 44 89 75 32       	mov    %r14w,0x32(%rbp)
140ad7ad7:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7adb:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7adf:	e8 b8 01 00 00       	call   0x140ad7c9c
140ad7ae4:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7ae8:	66 44 89 75 30       	mov    %r14w,0x30(%rbp)
140ad7aed:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7af1:	66 44 89 7d 32       	mov    %r15w,0x32(%rbp)
140ad7af6:	48 8b cb             	mov    %rbx,%rcx
140ad7af9:	e8 9e 01 00 00       	call   0x140ad7c9c
140ad7afe:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7b02:	44 89 75 30          	mov    %r14d,0x30(%rbp)
140ad7b06:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7b0a:	48 8b cb             	mov    %rbx,%rcx
140ad7b0d:	e8 8a 01 00 00       	call   0x140ad7c9c
140ad7b12:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7b16:	c7 45 30 00 00 01 00 	movl   $0x10000,0x30(%rbp)
140ad7b1d:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7b21:	48 8b cb             	mov    %rbx,%rcx
140ad7b24:	e8 73 01 00 00       	call   0x140ad7c9c
140ad7b29:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7b2d:	44 89 65 30          	mov    %r12d,0x30(%rbp)
140ad7b31:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7b35:	48 8b cb             	mov    %rbx,%rcx
140ad7b38:	e8 5f 01 00 00       	call   0x140ad7c9c
140ad7b3d:	48 8b cb             	mov    %rbx,%rcx
140ad7b40:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7b44:	c7 45 30 01 00 01 00 	movl   $0x10001,0x30(%rbp)
140ad7b4b:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7b4f:	e8 48 01 00 00       	call   0x140ad7c9c
140ad7b54:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
140ad7b59:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140ad7b5e:	48 83 c4 30          	add    $0x30,%rsp
140ad7b62:	41 5f                	pop    %r15
140ad7b64:	41 5e                	pop    %r14
140ad7b66:	41 5c                	pop    %r12
140ad7b68:	5f                   	pop    %rdi
140ad7b69:	5d                   	pop    %rbp
140ad7b6a:	c3                   	ret
140ad7b6b:	48 2b c1             	sub    %rcx,%rax
140ad7b6e:	48 d1 f8             	sar    $1,%rax
140ad7b71:	0f 84 1c 01 00 00    	je     0x140ad7c93
140ad7b77:	49 3b c4             	cmp    %r12,%rax
140ad7b7a:	0f 86 13 01 00 00    	jbe    0x140ad7c93
140ad7b80:	0f b7 41 02          	movzwl 0x2(%rcx),%eax
140ad7b84:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7b88:	66 89 45 30          	mov    %ax,0x30(%rbp)
140ad7b8c:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7b90:	0f b7 01             	movzwl (%rcx),%eax
140ad7b93:	48 8b cb             	mov    %rbx,%rcx
140ad7b96:	66 89 45 32          	mov    %ax,0x32(%rbp)
140ad7b9a:	e8 fd 00 00 00       	call   0x140ad7c9c
140ad7b9f:	48 8b 0f             	mov    (%rdi),%rcx
140ad7ba2:	48 83 c6 40          	add    $0x40,%rsi
140ad7ba6:	48 8b 47 08          	mov    0x8(%rdi),%rax
140ad7baa:	48 2b c1             	sub    %rcx,%rax
140ad7bad:	48 d1 f8             	sar    $1,%rax
140ad7bb0:	48 83 f8 02          	cmp    $0x2,%rax
140ad7bb4:	0f 86 d9 00 00 00    	jbe    0x140ad7c93
140ad7bba:	48 83 f8 03          	cmp    $0x3,%rax
140ad7bbe:	0f 86 cf 00 00 00    	jbe    0x140ad7c93
140ad7bc4:	0f b7 41 06          	movzwl 0x6(%rcx),%eax
140ad7bc8:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7bcc:	66 89 45 30          	mov    %ax,0x30(%rbp)
140ad7bd0:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7bd4:	0f b7 41 04          	movzwl 0x4(%rcx),%eax
140ad7bd8:	48 8b ce             	mov    %rsi,%rcx
140ad7bdb:	66 89 45 32          	mov    %ax,0x32(%rbp)
140ad7bdf:	e8 b8 00 00 00       	call   0x140ad7c9c
140ad7be4:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7be8:	66 44 89 7d 30       	mov    %r15w,0x30(%rbp)
140ad7bed:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7bf1:	66 44 89 75 32       	mov    %r14w,0x32(%rbp)
140ad7bf6:	48 8b ce             	mov    %rsi,%rcx
140ad7bf9:	e8 9e 00 00 00       	call   0x140ad7c9c
140ad7bfe:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7c02:	66 44 89 7d 30       	mov    %r15w,0x30(%rbp)
140ad7c07:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7c0b:	66 44 89 65 32       	mov    %r12w,0x32(%rbp)
140ad7c10:	48 8b ce             	mov    %rsi,%rcx
140ad7c13:	e8 84 00 00 00       	call   0x140ad7c9c
140ad7c18:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7c1c:	66 44 89 75 30       	mov    %r14w,0x30(%rbp)
140ad7c21:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7c25:	66 44 89 7d 32       	mov    %r15w,0x32(%rbp)
140ad7c2a:	48 8b ce             	mov    %rsi,%rcx
140ad7c2d:	e8 6a 00 00 00       	call   0x140ad7c9c
140ad7c32:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7c36:	44 89 75 30          	mov    %r14d,0x30(%rbp)
140ad7c3a:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7c3e:	48 8b ce             	mov    %rsi,%rcx
140ad7c41:	e8 56 00 00 00       	call   0x140ad7c9c
140ad7c46:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7c4a:	c7 45 30 00 00 01 00 	movl   $0x10000,0x30(%rbp)
140ad7c51:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7c55:	48 8b ce             	mov    %rsi,%rcx
140ad7c58:	e8 3f 00 00 00       	call   0x140ad7c9c
140ad7c5d:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7c61:	66 44 89 65 30       	mov    %r12w,0x30(%rbp)
140ad7c66:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7c6a:	66 44 89 7d 32       	mov    %r15w,0x32(%rbp)
140ad7c6f:	48 8b ce             	mov    %rsi,%rcx
140ad7c72:	e8 25 00 00 00       	call   0x140ad7c9c
140ad7c77:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140ad7c7b:	44 89 65 30          	mov    %r12d,0x30(%rbp)
140ad7c7f:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140ad7c83:	48 8b ce             	mov    %rsi,%rcx
140ad7c86:	e8 11 00 00 00       	call   0x140ad7c9c
140ad7c8b:	48 8b ce             	mov    %rsi,%rcx
140ad7c8e:	e9 ad fe ff ff       	jmp    0x140ad7b40
140ad7c93:	ff 15 ff 4c 03 00    	call   *0x34cff(%rip)        # 0x140b0c998
140ad7c99:	cc                   	int3
140ad7c9a:	90                   	nop
140ad7c9b:	90                   	nop
140ad7c9c:	48 8b c4             	mov    %rsp,%rax
140ad7c9f:	48 89 58 08          	mov    %rbx,0x8(%rax)
140ad7ca3:	48 89 68 10          	mov    %rbp,0x10(%rax)
140ad7ca7:	48 89 70 18          	mov    %rsi,0x18(%rax)
140ad7cab:	48 89 78 20          	mov    %rdi,0x20(%rax)
140ad7caf:	41 56                	push   %r14
140ad7cb1:	48 83 ec 50          	sub    $0x50,%rsp
140ad7cb5:	4d 8b f0             	mov    %r8,%r14
140ad7cb8:	48 8b fa             	mov    %rdx,%rdi
140ad7cbb:	48 8b f1             	mov    %rcx,%rsi
140ad7cbe:	48 8b 29             	mov    (%rcx),%rbp
140ad7cc1:	4c 8b 4d 08          	mov    0x8(%rbp),%r9
140ad7cc5:	4c 89 4c 24 30       	mov    %r9,0x30(%rsp)
140ad7cca:	33 db                	xor    %ebx,%ebx
140ad7ccc:	89 5c 24 38          	mov    %ebx,0x38(%rsp)
140ad7cd0:	4c 8b d5             	mov    %rbp,%r10
140ad7cd3:	41 38 59 19          	cmp    %bl,0x19(%r9)
140ad7cd7:	75 45                	jne    0x140ad7d1e
140ad7cd9:	41 0f b7 08          	movzwl (%r8),%ecx
140ad7cdd:	4c 89 4c 24 30       	mov    %r9,0x30(%rsp)
140ad7ce2:	66 41 39 49 1a       	cmp    %cx,0x1a(%r9)
140ad7ce7:	7c 27                	jl     0x140ad7d10
140ad7ce9:	75 0f                	jne    0x140ad7cfa
140ad7ceb:	41 0f b7 40 02       	movzwl 0x2(%r8),%eax
140ad7cf0:	66 41 39 41 1c       	cmp    %ax,0x1c(%r9)
140ad7cf5:	0f 9c c0             	setl   %al
140ad7cf8:	eb 02                	jmp    0x140ad7cfc
140ad7cfa:	8a c3                	mov    %bl,%al
140ad7cfc:	84 c0                	test   %al,%al
140ad7cfe:	75 10                	jne    0x140ad7d10
140ad7d00:	c7 44 24 38 01 00 00 	movl   $0x1,0x38(%rsp)
140ad7d07:	00
140ad7d08:	4d 8b d1             	mov    %r9,%r10
140ad7d0b:	4d 8b 09             	mov    (%r9),%r9
140ad7d0e:	eb 08                	jmp    0x140ad7d18
140ad7d10:	89 5c 24 38          	mov    %ebx,0x38(%rsp)
140ad7d14:	4d 8b 49 10          	mov    0x10(%r9),%r9
140ad7d18:	41 38 59 19          	cmp    %bl,0x19(%r9)
140ad7d1c:	74 bf                	je     0x140ad7cdd
140ad7d1e:	41 38 5a 19          	cmp    %bl,0x19(%r10)
140ad7d22:	75 22                	jne    0x140ad7d46
140ad7d24:	41 0f b7 42 1a       	movzwl 0x1a(%r10),%eax
140ad7d29:	66 41 39 00          	cmp    %ax,(%r8)
140ad7d2d:	7c 17                	jl     0x140ad7d46
140ad7d2f:	75 0f                	jne    0x140ad7d40
140ad7d31:	41 0f b7 42 1c       	movzwl 0x1c(%r10),%eax
140ad7d36:	66 41 39 40 02       	cmp    %ax,0x2(%r8)
140ad7d3b:	0f 9c c0             	setl   %al
140ad7d3e:	eb 02                	jmp    0x140ad7d42
140ad7d40:	8a c3                	mov    %bl,%al
140ad7d42:	84 c0                	test   %al,%al
140ad7d44:	74 68                	je     0x140ad7dae
140ad7d46:	48 b8 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%rax
140ad7d4d:	ff ff 07
140ad7d50:	48 39 46 08          	cmp    %rax,0x8(%rsi)
140ad7d54:	74 7c                	je     0x140ad7dd2
140ad7d56:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140ad7d5b:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140ad7d60:	b9 20 00 00 00       	mov    $0x20,%ecx
140ad7d65:	ff 15 5d 4b 03 00    	call   *0x34b5d(%rip)        # 0x140b0c8c8
140ad7d6b:	4c 8b c0             	mov    %rax,%r8
140ad7d6e:	48 85 c0             	test   %rax,%rax
140ad7d71:	75 07                	jne    0x140ad7d7a
140ad7d73:	ff 15 1f 47 03 00    	call   *0x3471f(%rip)        # 0x140b0c498
140ad7d79:	90                   	nop
140ad7d7a:	41 8b 06             	mov    (%r14),%eax
140ad7d7d:	41 89 40 1a          	mov    %eax,0x1a(%r8)
140ad7d81:	49 89 28             	mov    %rbp,(%r8)
140ad7d84:	49 89 68 08          	mov    %rbp,0x8(%r8)
140ad7d88:	49 89 68 10          	mov    %rbp,0x10(%r8)
140ad7d8c:	66 41 89 58 18       	mov    %bx,0x18(%r8)
140ad7d91:	0f 10 44 24 30       	movups 0x30(%rsp),%xmm0
140ad7d96:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
140ad7d9c:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140ad7da1:	48 8b ce             	mov    %rsi,%rcx
140ad7da4:	e8 37 f1 52 ff       	call   0x140006ee0
140ad7da9:	4c 8b d0             	mov    %rax,%r10
140ad7dac:	b3 01                	mov    $0x1,%bl
140ad7dae:	4c 89 17             	mov    %r10,(%rdi)
140ad7db1:	88 5f 08             	mov    %bl,0x8(%rdi)
140ad7db4:	48 8b c7             	mov    %rdi,%rax
140ad7db7:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140ad7dbc:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140ad7dc1:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140ad7dc6:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140ad7dcb:	48 83 c4 50          	add    $0x50,%rsp
140ad7dcf:	41 5e                	pop    %r14
140ad7dd1:	c3                   	ret
140ad7dd2:	e8 fd bf 52 ff       	call   0x140003dd4
140ad7dd7:	cc                   	int3
140ad7dd8:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140ad7ddd:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140ad7de2:	56                   	push   %rsi
140ad7de3:	57                   	push   %rdi
140ad7de4:	41 56                	push   %r14
140ad7de6:	48 83 ec 20          	sub    $0x20,%rsp
140ad7dea:	4c 8b f2             	mov    %rdx,%r14
140ad7ded:	48 8b f9             	mov    %rcx,%rdi
140ad7df0:	48 8b 71 08          	mov    0x8(%rcx),%rsi
140ad7df4:	48 2b 31             	sub    (%rcx),%rsi
140ad7df7:	48 c1 fe 02          	sar    $0x2,%rsi
140ad7dfb:	48 8b 0a             	mov    (%rdx),%rcx
140ad7dfe:	48 b8 ff ff ff ff ff 	movabs $0x3fffffffffffffff,%rax
140ad7e05:	ff ff 3f
140ad7e08:	48 3b c8             	cmp    %rax,%rcx
140ad7e0b:	0f 87 cc 00 00 00    	ja     0x140ad7edd
140ad7e11:	48 c1 e1 02          	shl    $0x2,%rcx
140ad7e15:	48 85 c9             	test   %rcx,%rcx
140ad7e18:	75 72                	jne    0x140ad7e8c
140ad7e1a:	33 db                	xor    %ebx,%ebx
140ad7e1c:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
140ad7e21:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140ad7e25:	4c 2b 07             	sub    (%rdi),%r8
140ad7e28:	48 8b 17             	mov    (%rdi),%rdx
140ad7e2b:	48 8b cb             	mov    %rbx,%rcx
140ad7e2e:	e8 33 86 01 00       	call   0x140af0466
140ad7e33:	4d 8b 36             	mov    (%r14),%r14
140ad7e36:	48 8b 0f             	mov    (%rdi),%rcx
140ad7e39:	48 85 c9             	test   %rcx,%rcx
140ad7e3c:	74 2d                	je     0x140ad7e6b
140ad7e3e:	48 8b 47 10          	mov    0x10(%rdi),%rax
140ad7e42:	48 2b c1             	sub    %rcx,%rax
140ad7e45:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
140ad7e49:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140ad7e4f:	72 14                	jb     0x140ad7e65