140969d94:	e8 17 a1 fe ff       	call   0x140953eb0
140969d99:	48 8d 15 b0 cd 2c 00 	lea    0x2ccdb0(%rip),%rdx        # 0x140c36b50
140969da0:	48 8d 4d 80          	lea    -0x80(%rbp),%rcx
140969da4:	e8 d5 66 18 00       	call   0x140af047e
140969da9:	cc                   	int3
140969daa:	90                   	nop
140969dab:	90                   	nop
140969dac:	90                   	nop
140969dad:	90                   	nop
140969dae:	90                   	nop
140969daf:	90                   	nop
140969db0:	40 55                	rex push %rbp
140969db2:	53                   	push   %rbx
140969db3:	56                   	push   %rsi
140969db4:	57                   	push   %rdi
140969db5:	41 54                	push   %r12
140969db7:	41 55                	push   %r13
140969db9:	41 56                	push   %r14
140969dbb:	41 57                	push   %r15
140969dbd:	48 8b ec             	mov    %rsp,%rbp
140969dc0:	48 83 ec 68          	sub    $0x68,%rsp
140969dc4:	48 8b f1             	mov    %rcx,%rsi
140969dc7:	c6 45 48 00          	movb   $0x0,0x48(%rbp)
140969dcb:	8b 51 68             	mov    0x68(%rcx),%edx
140969dce:	85 d2                	test   %edx,%edx
140969dd0:	74 2c                	je     0x140969dfe
140969dd2:	83 ea 01             	sub    $0x1,%edx
140969dd5:	74 20                	je     0x140969df7
140969dd7:	83 ea 01             	sub    $0x1,%edx
140969dda:	74 14                	je     0x140969df0
140969ddc:	83 fa 01             	cmp    $0x1,%edx
140969ddf:	74 08                	je     0x140969de9
140969de1:	33 db                	xor    %ebx,%ebx
140969de3:	48 89 5d b8          	mov    %rbx,-0x48(%rbp)
140969de7:	eb 26                	jmp    0x140969e0f
140969de9:	b9 03 00 00 00       	mov    $0x3,%ecx
140969dee:	eb 10                	jmp    0x140969e00
140969df0:	b9 02 00 00 00       	mov    $0x2,%ecx
140969df5:	eb 09                	jmp    0x140969e00
140969df7:	b9 01 00 00 00       	mov    $0x1,%ecx
140969dfc:	eb 02                	jmp    0x140969e00
140969dfe:	33 c9                	xor    %ecx,%ecx
140969e00:	8b 56 6c             	mov    0x6c(%rsi),%edx
140969e03:	e8 08 28 16 00       	call   0x140acc610
140969e08:	48 8b d8             	mov    %rax,%rbx
140969e0b:	48 89 45 b8          	mov    %rax,-0x48(%rbp)
140969e0f:	81 7e 74 ff ff ff 7f 	cmpl   $0x7fffffff,0x74(%rsi)
140969e16:	0f 87 13 03 00 00    	ja     0x14096a12f
140969e1c:	4c 63 7e 70          	movslq 0x70(%rsi),%r15
140969e20:	48 63 46 74          	movslq 0x74(%rsi),%rax
140969e24:	4c 0f af f8          	imul   %rax,%r15
140969e28:	b8 00 00 00 80       	mov    $0x80000000,%eax
140969e2d:	49 03 c7             	add    %r15,%rax
140969e30:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
140969e35:	48 3b c1             	cmp    %rcx,%rax
140969e38:	0f 87 f1 02 00 00    	ja     0x14096a12f
140969e3e:	33 ff                	xor    %edi,%edi
140969e40:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
140969e44:	45 33 f6             	xor    %r14d,%r14d
140969e47:	4c 89 75 e0          	mov    %r14,-0x20(%rbp)
140969e4b:	48 21 7d e8          	and    %rdi,-0x18(%rbp)
140969e4f:	49 63 d7             	movslq %r15d,%rdx
140969e52:	45 85 ff             	test   %r15d,%r15d
140969e55:	74 11                	je     0x140969e68
140969e57:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
140969e5b:	e8 d8 79 84 ff       	call   0x1401b1838
140969e60:	4c 8b 75 e0          	mov    -0x20(%rbp),%r14
140969e64:	48 8b 7d d8          	mov    -0x28(%rbp),%rdi
140969e68:	48 8b 4e 58          	mov    0x58(%rsi),%rcx
140969e6c:	48 8b 01             	mov    (%rcx),%rax
140969e6f:	48 8b 40 28          	mov    0x28(%rax),%rax
140969e73:	ff 15 bf 2d 1a 00    	call   *0x1a2dbf(%rip)        # 0x140b0cc38
140969e79:	44 8b e0             	mov    %eax,%r12d
140969e7c:	0f 57 c0             	xorps  %xmm0,%xmm0
140969e7f:	f3 0f 7f 45 c8       	movdqu %xmm0,-0x38(%rbp)
140969e84:	48 8b 4e 60          	mov    0x60(%rsi),%rcx
140969e88:	48 85 c9             	test   %rcx,%rcx
140969e8b:	74 10                	je     0x140969e9d
140969e8d:	f0 ff 41 08          	lock incl 0x8(%rcx)
140969e91:	48 8b 5d b8          	mov    -0x48(%rbp),%rbx
140969e95:	4c 8b 75 e0          	mov    -0x20(%rbp),%r14
140969e99:	48 8b 7d d8          	mov    -0x28(%rbp),%rdi
140969e9d:	48 8b 46 58          	mov    0x58(%rsi),%rax
140969ea1:	48 89 45 c8          	mov    %rax,-0x38(%rbp)
140969ea5:	48 8b 46 60          	mov    0x60(%rsi),%rax
140969ea9:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
140969ead:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140969eb1:	e8 3a 10 fd ff       	call   0x14093aef0
140969eb6:	48 89 45 c0          	mov    %rax,-0x40(%rbp)
140969eba:	4c 3b f7             	cmp    %rdi,%r14
140969ebd:	75 07                	jne    0x140969ec6
140969ebf:	ff 15 d3 2a 1a 00    	call   *0x1a2ad3(%rip)        # 0x140b0c998
140969ec5:	cc                   	int3
140969ec6:	44 8b 6e 74          	mov    0x74(%rsi),%r13d
140969eca:	8a 56 78             	mov    0x78(%rsi),%dl
140969ecd:	88 55 50             	mov    %dl,0x50(%rbp)
140969ed0:	48 85 db             	test   %rbx,%rbx
140969ed3:	0f 84 cf 01 00 00    	je     0x14096a0a8
140969ed9:	48 8b cf             	mov    %rdi,%rcx
140969edc:	48 89 4d 60          	mov    %rcx,0x60(%rbp)
140969ee0:	48 89 43 18          	mov    %rax,0x18(%rbx)
140969ee4:	44 89 63 20          	mov    %r12d,0x20(%rbx)
140969ee8:	44 8b 4b 04          	mov    0x4(%rbx),%r9d
140969eec:	44 89 4d 58          	mov    %r9d,0x58(%rbp)
140969ef0:	45 8d 61 07          	lea    0x7(%r9),%r12d
140969ef4:	41 c1 fc 03          	sar    $0x3,%r12d
140969ef8:	45 85 ed             	test   %r13d,%r13d
140969efb:	0f 84 d6 00 00 00    	je     0x140969fd7
140969f01:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140969f06:	44 03 e8             	add    %eax,%r13d
140969f09:	45 33 c0             	xor    %r8d,%r8d
140969f0c:	84 d2                	test   %dl,%dl
140969f0e:	74 1e                	je     0x140969f2e
140969f10:	44 39 43 0c          	cmp    %r8d,0xc(%rbx)
140969f14:	74 18                	je     0x140969f2e
140969f16:	8b 43 20             	mov    0x20(%rbx),%eax
140969f19:	85 c0                	test   %eax,%eax
140969f1b:	0f 84 a9 00 00 00    	je     0x140969fca
140969f21:	ff c8                	dec    %eax
140969f23:	89 43 20             	mov    %eax,0x20(%rbx)
140969f26:	48 ff 43 18          	incq   0x18(%rbx)
140969f2a:	44 21 43 0c          	and    %r8d,0xc(%rbx)
140969f2e:	8b 0b                	mov    (%rbx),%ecx
140969f30:	85 c9                	test   %ecx,%ecx
140969f32:	74 31                	je     0x140969f65
140969f34:	83 e9 01             	sub    $0x1,%ecx
140969f37:	74 0a                	je     0x140969f43
140969f39:	83 e9 01             	sub    $0x1,%ecx
140969f3c:	74 1d                	je     0x140969f5b
140969f3e:	83 f9 01             	cmp    $0x1,%ecx
140969f41:	75 46                	jne    0x140969f89
140969f43:	48 8b cb             	mov    %rbx,%rcx
140969f46:	e8 11 18 16 00       	call   0x140acb75c
140969f4b:	33 c9                	xor    %ecx,%ecx
140969f4d:	85 c0                	test   %eax,%eax
140969f4f:	0f 49 c8             	cmovns %eax,%ecx
140969f52:	85 c9                	test   %ecx,%ecx
140969f54:	48 8b cb             	mov    %rbx,%rcx
140969f57:	74 17                	je     0x140969f70
140969f59:	eb 03                	jmp    0x140969f5e
140969f5b:	48 8b cb             	mov    %rbx,%rcx
140969f5e:	e8 09 1a 16 00       	call   0x140acb96c
140969f63:	eb 18                	jmp    0x140969f7d
140969f65:	48 8b cb             	mov    %rbx,%rcx
140969f68:	e8 ef 17 16 00       	call   0x140acb75c
140969f6d:	48 8b cb             	mov    %rbx,%rcx
140969f70:	44 8b 43 30          	mov    0x30(%rbx),%r8d
140969f74:	48 8b 53 28          	mov    0x28(%rbx),%rdx
140969f78:	e8 93 18 16 00       	call   0x140acb810
140969f7d:	44 8b c0             	mov    %eax,%r8d
140969f80:	83 f8 ff             	cmp    $0xffffffff,%eax
140969f83:	74 4e                	je     0x140969fd3
140969f85:	44 8b 4d 58          	mov    0x58(%rbp),%r9d
140969f89:	41 8d 41 07          	lea    0x7(%r9),%eax
140969f8d:	99                   	cltd
140969f8e:	83 e2 07             	and    $0x7,%edx
140969f91:	03 c2                	add    %edx,%eax
140969f93:	c1 f8 03             	sar    $0x3,%eax
140969f96:	48 8b 4d 60          	mov    0x60(%rbp),%rcx
140969f9a:	44 3b f8             	cmp    %eax,%r15d
140969f9d:	72 38                	jb     0x140969fd7
140969f9f:	48 8b 53 28          	mov    0x28(%rbx),%rdx
140969fa3:	e8 48 15 16 00       	call   0x140acb4f0
140969fa8:	49 63 c4             	movslq %r12d,%rax
140969fab:	48 8b 4d 60          	mov    0x60(%rbp),%rcx
140969faf:	48 03 c8             	add    %rax,%rcx
140969fb2:	48 89 4d 60          	mov    %rcx,0x60(%rbp)
140969fb6:	45 2b fc             	sub    %r12d,%r15d
140969fb9:	45 85 ed             	test   %r13d,%r13d
140969fbc:	74 19                	je     0x140969fd7
140969fbe:	8a 55 50             	mov    0x50(%rbp),%dl
140969fc1:	44 8b 4d 58          	mov    0x58(%rbp),%r9d
140969fc5:	e9 37 ff ff ff       	jmp    0x140969f01
140969fca:	41 83 cf ff          	or     $0xffffffff,%r15d
140969fce:	41 8b cf             	mov    %r15d,%ecx
140969fd1:	eb 1d                	jmp    0x140969ff0
140969fd3:	48 8b 4d 60          	mov    0x60(%rbp),%rcx
140969fd7:	45 85 ff             	test   %r15d,%r15d
140969fda:	74 0a                	je     0x140969fe6
140969fdc:	45 8b c7             	mov    %r15d,%r8d
140969fdf:	33 d2                	xor    %edx,%edx
140969fe1:	e8 86 64 18 00       	call   0x140af046c
140969fe6:	8b 4b 18             	mov    0x18(%rbx),%ecx
140969fe9:	2b 4d c0             	sub    -0x40(%rbp),%ecx
140969fec:	41 83 cf ff          	or     $0xffffffff,%r15d
140969ff0:	33 c0                	xor    %eax,%eax
140969ff2:	83 f9 fe             	cmp    $0xfffffffe,%ecx
140969ff5:	0f 45 c1             	cmovne %ecx,%eax
140969ff8:	41 3b c7             	cmp    %r15d,%eax
140969ffb:	0f 84 a7 00 00 00    	je     0x14096a0a8
14096a001:	80 7e 79 00          	cmpb   $0x0,0x79(%rsi)
14096a005:	74 24                	je     0x14096a02b
14096a007:	49 8b d6             	mov    %r14,%rdx
14096a00a:	48 2b d7             	sub    %rdi,%rdx
14096a00d:	b9 00 00 00 00       	mov    $0x0,%ecx
14096a012:	74 17                	je     0x14096a02b
14096a014:	4c 2b f7             	sub    %rdi,%r14
14096a017:	49 3b ce             	cmp    %r14,%rcx
14096a01a:	0f 83 81 00 00 00    	jae    0x14096a0a1
14096a020:	f6 14 0f             	notb   (%rdi,%rcx,1)
14096a023:	48 ff c1             	inc    %rcx
14096a026:	48 3b ca             	cmp    %rdx,%rcx
14096a029:	72 ec                	jb     0x14096a017
14096a02b:	41 b6 01             	mov    $0x1,%r14b
14096a02e:	48 8d 4e 30          	lea    0x30(%rsi),%rcx
14096a032:	48 8d 55 d8          	lea    -0x28(%rbp),%rdx
14096a036:	e8 81 f3 88 ff       	call   0x1401f93bc
14096a03b:	0f 57 c0             	xorps  %xmm0,%xmm0
14096a03e:	f3 0f 7f 45 c8       	movdqu %xmm0,-0x38(%rbp)
14096a043:	48 8d 55 c8          	lea    -0x38(%rbp),%rdx
14096a047:	48 8d 4e 58          	lea    0x58(%rsi),%rcx
14096a04b:	e8 94 c2 69 ff       	call   0x1400062e4
14096a050:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
14096a054:	48 85 c9             	test   %rcx,%rcx
14096a057:	74 42                	je     0x14096a09b
14096a059:	41 8b c7             	mov    %r15d,%eax
14096a05c:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
14096a061:	41 03 c7             	add    %r15d,%eax
14096a064:	75 31                	jne    0x14096a097
14096a066:	48 8b 5d d0          	mov    -0x30(%rbp),%rbx
14096a06a:	48 8b 03             	mov    (%rbx),%rax
14096a06d:	48 8b cb             	mov    %rbx,%rcx
14096a070:	48 8b 00             	mov    (%rax),%rax
14096a073:	ff 15 bf 2b 1a 00    	call   *0x1a2bbf(%rip)        # 0x140b0cc38
14096a079:	41 8b c7             	mov    %r15d,%eax
14096a07c:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
14096a081:	41 03 c7             	add    %r15d,%eax
14096a084:	75 11                	jne    0x14096a097
14096a086:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
14096a08a:	48 8b 01             	mov    (%rcx),%rax
14096a08d:	48 8b 40 08          	mov    0x8(%rax),%rax
14096a091:	ff 15 a1 2b 1a 00    	call   *0x1a2ba1(%rip)        # 0x140b0cc38
14096a097:	48 8b 5d b8          	mov    -0x48(%rbp),%rbx
14096a09b:	48 8b 7d d8          	mov    -0x28(%rbp),%rdi
14096a09f:	eb 0b                	jmp    0x14096a0ac
14096a0a1:	ff 15 f1 28 1a 00    	call   *0x1a28f1(%rip)        # 0x140b0c998
14096a0a7:	cc                   	int3
14096a0a8:	44 8a 75 48          	mov    0x48(%rbp),%r14b
14096a0ac:	48 85 ff             	test   %rdi,%rdi
14096a0af:	74 34                	je     0x14096a0e5
14096a0b1:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
14096a0b5:	48 2b c7             	sub    %rdi,%rax
14096a0b8:	48 8b cf             	mov    %rdi,%rcx
14096a0bb:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
14096a0c1:	72 18                	jb     0x14096a0db
14096a0c3:	48 8b 7f f8          	mov    -0x8(%rdi),%rdi
14096a0c7:	48 2b cf             	sub    %rdi,%rcx
14096a0ca:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14096a0ce:	48 83 f8 1f          	cmp    $0x1f,%rax
14096a0d2:	76 07                	jbe    0x14096a0db
14096a0d4:	ff 15 be 28 1a 00    	call   *0x1a28be(%rip)        # 0x140b0c998
14096a0da:	cc                   	int3
14096a0db:	48 8b cf             	mov    %rdi,%rcx
14096a0de:	ff 15 dc 27 1a 00    	call   *0x1a27dc(%rip)        # 0x140b0c8c0
14096a0e4:	90                   	nop
14096a0e5:	48 85 db             	test   %rbx,%rbx
14096a0e8:	74 31                	je     0x14096a11b
14096a0ea:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
14096a0ee:	ff 15 cc 27 1a 00    	call   *0x1a27cc(%rip)        # 0x140b0c8c0
14096a0f4:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
14096a0f8:	ff 15 c2 27 1a 00    	call   *0x1a27c2(%rip)        # 0x140b0c8c0
14096a0fe:	48 8b 4b 58          	mov    0x58(%rbx),%rcx
14096a102:	ff 15 b8 27 1a 00    	call   *0x1a27b8(%rip)        # 0x140b0c8c0
14096a108:	48 8b 4b 60          	mov    0x60(%rbx),%rcx
14096a10c:	ff 15 ae 27 1a 00    	call   *0x1a27ae(%rip)        # 0x140b0c8c0
14096a112:	48 8b cb             	mov    %rbx,%rcx
14096a115:	ff 15 a5 27 1a 00    	call   *0x1a27a5(%rip)        # 0x140b0c8c0
14096a11b:	41 8a c6             	mov    %r14b,%al
14096a11e:	48 83 c4 68          	add    $0x68,%rsp
14096a122:	41 5f                	pop    %r15
14096a124:	41 5e                	pop    %r14
14096a126:	41 5d                	pop    %r13
14096a128:	41 5c                	pop    %r12
14096a12a:	5f                   	pop    %rdi
14096a12b:	5e                   	pop    %rsi
14096a12c:	5b                   	pop    %rbx
14096a12d:	5d                   	pop    %rbp
14096a12e:	c3                   	ret
14096a12f:	e8 f0 5b 97 ff       	call   0x1402dfd24
14096a134:	90                   	nop
14096a135:	eb 01                	jmp    0x14096a138
14096a137:	90                   	nop
14096a138:	90                   	nop
14096a139:	90                   	nop
14096a13a:	90                   	nop
14096a13b:	90                   	nop
14096a13c:	90                   	nop
14096a13d:	90                   	nop
14096a13e:	90                   	nop
14096a13f:	90                   	nop
14096a140:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14096a145:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14096a14a:	57                   	push   %rdi
14096a14b:	41 56                	push   %r14
14096a14d:	41 57                	push   %r15
14096a14f:	48 83 ec 60          	sub    $0x60,%rsp
14096a153:	48 8b 05 e6 4e 35 00 	mov    0x354ee6(%rip),%rax        # 0x140cbf040
14096a15a:	48 33 c4             	xor    %rsp,%rax
14096a15d:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
14096a162:	48 8b f2             	mov    %rdx,%rsi
14096a165:	33 db                	xor    %ebx,%ebx
14096a167:	44 8b f3             	mov    %ebx,%r14d
14096a16a:	0f 57 c0             	xorps  %xmm0,%xmm0
14096a16d:	0f 11 44 24 30       	movups %xmm0,0x30(%rsp)
14096a172:	66 0f 6f 0d 16 7b 24 	movdqa 0x247b16(%rip),%xmm1        # 0x140bb1c90
14096a179:	00
14096a17a:	f3 0f 7f 4c 24 40    	movdqu %xmm1,0x40(%rsp)
14096a180:	c7 44 24 30 2f 42 50 	movl   $0x4350422f,0x30(%rsp)
14096a187:	43
14096a188:	88 5c 24 34          	mov    %bl,0x34(%rsp)
14096a18c:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
14096a191:	48 8b ce             	mov    %rsi,%rcx
14096a194:	e8 73 41 00 00       	call   0x14096e30c
14096a199:	44 8d 43 11          	lea    0x11(%rbx),%r8d
14096a19d:	48 8d 15 7c eb 1d 00 	lea    0x1deb7c(%rip),%rdx        # 0x140b48d20
14096a1a4:	48 8b c8             	mov    %rax,%rcx
14096a1a7:	e8 f4 39 7a ff       	call   0x14010dba0
14096a1ac:	90                   	nop
14096a1ad:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
14096a1b2:	bf 00 10 00 00       	mov    $0x1000,%edi
14096a1b7:	48 83 f8 0f          	cmp    $0xf,%rax
14096a1bb:	76 2e                	jbe    0x14096a1eb
14096a1bd:	48 ff c0             	inc    %rax
14096a1c0:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
14096a1c5:	48 8b d1             	mov    %rcx,%rdx
14096a1c8:	48 3b c7             	cmp    %rdi,%rax
14096a1cb:	72 18                	jb     0x14096a1e5
14096a1cd:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14096a1d1:	48 2b d1             	sub    %rcx,%rdx
14096a1d4:	48 8d 42 f8          	lea    -0x8(%rdx),%rax
14096a1d8:	48 83 f8 1f          	cmp    $0x1f,%rax
14096a1dc:	76 07                	jbe    0x14096a1e5
14096a1de:	ff 15 b4 27 1a 00    	call   *0x1a27b4(%rip)        # 0x140b0c998
14096a1e4:	cc                   	int3
14096a1e5:	ff 15 d5 26 1a 00    	call   *0x1a26d5(%rip)        # 0x140b0c8c0
14096a1eb:	0f 57 c0             	xorps  %xmm0,%xmm0
14096a1ee:	0f 11 44 24 30       	movups %xmm0,0x30(%rsp)
14096a1f3:	66 0f 6f 0d 85 7a 24 	movdqa 0x247a85(%rip),%xmm1        # 0x140bb1c80
14096a1fa:	00
14096a1fb:	f3 0f 7f 4c 24 40    	movdqu %xmm1,0x40(%rsp)
14096a201:	8b 05 91 07 1e 00    	mov    0x1e0791(%rip),%eax        # 0x140b4a998
14096a207:	66 89 44 24 30       	mov    %ax,0x30(%rsp)
14096a20c:	8a 05 88 07 1e 00    	mov    0x1e0788(%rip),%al        # 0x140b4a99a
14096a212:	88 44 24 32          	mov    %al,0x32(%rsp)
14096a216:	88 5c 24 33          	mov    %bl,0x33(%rsp)
14096a21a:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
14096a21f:	48 8b ce             	mov    %rsi,%rcx
14096a222:	e8 e5 40 00 00       	call   0x14096e30c
14096a227:	41 b8 0b 00 00 00    	mov    $0xb,%r8d
14096a22d:	48 8d 15 a4 e3 1d 00 	lea    0x1de3a4(%rip),%rdx        # 0x140b485d8