140038c03:	57                   	push   %rdi
140038c04:	55                   	push   %rbp
140038c05:	53                   	push   %rbx
140038c06:	48 83 ec 20          	sub    $0x20,%rsp
140038c0a:	48 85 d2             	test   %rdx,%rdx
140038c0d:	0f 84 fc 01 00 00    	je     0x140038e0f
140038c13:	48 89 d7             	mov    %rdx,%rdi
140038c16:	48 89 ce             	mov    %rcx,%rsi
140038c19:	0f 18 0a             	prefetcht0 (%rdx)
140038c1c:	49 89 d6             	mov    %rdx,%r14
140038c1f:	49 81 e6 00 00 e0 ff 	and    $0xffffffffffe00000,%r14
140038c26:	89 f8                	mov    %edi,%eax
140038c28:	c1 e8 09             	shr    $0x9,%eax
140038c2b:	25 e0 0f 00 00       	and    $0xfe0,%eax
140038c30:	4a 8d 1c 30          	lea    (%rax,%r14,1),%rbx
140038c34:	48 81 c3 00 10 00 00 	add    $0x1000,%rbx
140038c3b:	42 0f b6 84 30 1e 10 	movzbl 0x101e(%rax,%r14,1),%eax
140038c42:	00 00
140038c44:	83 e0 3f             	and    $0x3f,%eax
140038c47:	c1 e0 05             	shl    $0x5,%eax
140038c4a:	48 29 c3             	sub    %rax,%rbx
140038c4d:	0f 18 0b             	prefetcht0 (%rbx)
140038c50:	48 89 d9             	mov    %rbx,%rcx
140038c53:	e8 d8 ae 00 00       	call   0x140043b30
140038c58:	84 c0                	test   %al,%al
140038c5a:	0f 84 9f 03 00 00    	je     0x140038fff
140038c60:	80 7e 02 01          	cmpb   $0x1,0x2(%rsi)
140038c64:	75 59                	jne    0x140038cbf
140038c66:	48 89 f8             	mov    %rdi,%rax
140038c69:	48 c1 e0 34          	shl    $0x34,%rax
140038c6d:	0f 84 ea 02 00 00    	je     0x140038f5d
140038c73:	48 8b 43 10          	mov    0x10(%rbx),%rax
140038c77:	8b 40 18             	mov    0x18(%rax),%eax
140038c7a:	4c 8d 34 07          	lea    (%rdi,%rax,1),%r14
140038c7e:	49 83 c6 fc          	add    $0xfffffffffffffffc,%r14
140038c82:	41 8b 2e             	mov    (%r14),%ebp
140038c85:	81 e5 ff ff ff 3f    	and    $0x3fffffff,%ebp
140038c8b:	83 fd 01             	cmp    $0x1,%ebp
140038c8e:	0f 85 e2 02 00 00    	jne    0x140038f76
140038c94:	41 8b 06             	mov    (%r14),%eax
140038c97:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140038c9e:	00 00
140038ca0:	89 c1                	mov    %eax,%ecx
140038ca2:	83 e1 fe             	and    $0xfffffffe,%ecx
140038ca5:	f0 41 0f b1 0e       	lock cmpxchg %ecx,(%r14)
140038caa:	75 f4                	jne    0x140038ca0
140038cac:	a8 01                	test   $0x1,%al
140038cae:	0f 84 92 02 00 00    	je     0x140038f46
140038cb4:	a9 fe ff ff 3f       	test   $0x3ffffffe,%eax
140038cb9:	0f 85 ca 02 00 00    	jne    0x140038f89
140038cbf:	80 7e 01 01          	cmpb   $0x1,0x1(%rsi)
140038cc3:	0f 85 74 01 00 00    	jne    0x140038e3d
140038cc9:	8b 05 49 6a 0d 00    	mov    0xd6a49(%rip),%eax        # 0x14010f718
140038ccf:	65 48 8b 0c 25 58 00 	mov    %gs:0x58,%rcx
140038cd6:	00 00
140038cd8:	48 8b 04 c1          	mov    (%rcx,%rax,8),%rax
140038cdc:	80 b8 20 01 00 00 00 	cmpb   $0x0,0x120(%rax)
140038ce3:	75 05                	jne    0x140038cea
140038ce5:	e8 ae 56 03 00       	call   0x14006e398
140038cea:	8b 05 28 6a 0d 00    	mov    0xd6a28(%rip),%eax        # 0x14010f718
140038cf0:	65 48 8b 0c 25 58 00 	mov    %gs:0x58,%rcx
140038cf7:	00 00
140038cf9:	48 8b 04 c1          	mov    (%rcx,%rax,8),%rax
140038cfd:	4c 8b b0 68 01 00 00 	mov    0x168(%rax),%r14
140038d04:	49 83 fe 02          	cmp    $0x2,%r14
140038d08:	0f 82 2f 01 00 00    	jb     0x140038e3d
140038d0e:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140038d12:	48 8d 56 48          	lea    0x48(%rsi),%rdx
140038d16:	48 89 c8             	mov    %rcx,%rax
140038d19:	48 29 d0             	sub    %rdx,%rax
140038d1c:	0f 82 fc 00 00 00    	jb     0x140038e1e
140038d22:	48 8d 96 48 18 00 00 	lea    0x1848(%rsi),%rdx
140038d29:	48 39 d1             	cmp    %rdx,%rcx
140038d2c:	0f 87 ec 00 00 00    	ja     0x140038e1e
140038d32:	48 c1 f8 04          	sar    $0x4,%rax
140038d36:	49 ff 46 30          	incq   0x30(%r14)
140038d3a:	48 b9 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rcx
140038d41:	aa aa aa
140038d44:	48 0f af c8          	imul   %rax,%rcx
140038d48:	0f b7 05 31 a9 0c 00 	movzwl 0xca931(%rip),%eax        # 0x140103680
140038d4f:	48 39 c1             	cmp    %rax,%rcx
140038d52:	0f 87 c2 00 00 00    	ja     0x140038e1a
140038d58:	48 c1 e1 04          	shl    $0x4,%rcx
140038d5c:	49 8d 1c 0e          	lea    (%r14,%rcx,1),%rbx
140038d60:	48 83 c3 78          	add    $0x78,%rbx
140038d64:	41 0f b7 8c 0e 82 00 	movzwl 0x82(%r14,%rcx,1),%ecx
140038d6b:	00 00
140038d6d:	48 83 f9 10          	cmp    $0x10,%rcx
140038d71:	72 39                	jb     0x140038dac
140038d73:	89 f8                	mov    %edi,%eax
140038d75:	c1 e8 04             	shr    $0x4,%eax
140038d78:	83 e0 03             	and    $0x3,%eax
140038d7b:	ba 04 00 00 00       	mov    $0x4,%edx
140038d80:	29 c2                	sub    %eax,%edx
140038d82:	c1 e9 04             	shr    $0x4,%ecx
140038d85:	89 d0                	mov    %edx,%eax
140038d87:	48 39 c1             	cmp    %rax,%rcx
140038d8a:	48 0f 42 c1          	cmovb  %rcx,%rax
140038d8e:	c1 e0 04             	shl    $0x4,%eax
140038d91:	31 c9                	xor    %ecx,%ecx
140038d93:	0f 28 05 96 8b 0a 00 	movaps 0xa8b96(%rip),%xmm0        # 0x1400e1930
140038d9a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140038da0:	0f 11 04 0f          	movups %xmm0,(%rdi,%rcx,1)
140038da4:	48 83 c1 10          	add    $0x10,%rcx
140038da8:	39 c8                	cmp    %ecx,%eax
140038daa:	75 f4                	jne    0x140038da0
140038dac:	4c 89 f1             	mov    %r14,%rcx
140038daf:	e8 7c 77 00 00       	call   0x140040530
140038db4:	4c 8b 03             	mov    (%rbx),%r8
140038db7:	48 8b 08             	mov    (%rax),%rcx
140038dba:	4c 8b 49 10          	mov    0x10(%rcx),%r9
140038dbe:	48 89 c1             	mov    %rax,%rcx
140038dc1:	48 89 fa             	mov    %rdi,%rdx
140038dc4:	4c 89 c8             	mov    %r9,%rax
140038dc7:	ff 15 3b df 0b 00    	call   *0xbdf3b(%rip)        # 0x1400f6d08
140038dcd:	48 89 03             	mov    %rax,(%rbx)
140038dd0:	0f b6 4b 08          	movzbl 0x8(%rbx),%ecx
140038dd4:	fe c1                	inc    %cl
140038dd6:	88 4b 08             	mov    %cl,0x8(%rbx)
140038dd9:	0f b7 43 0a          	movzwl 0xa(%rbx),%eax
140038ddd:	41 01 06             	add    %eax,(%r14)
140038de0:	49 ff 46 38          	incq   0x38(%r14)
140038de4:	0f b6 43 09          	movzbl 0x9(%rbx),%eax
140038de8:	38 c1                	cmp    %al,%cl
140038dea:	0f 87 d1 01 00 00    	ja     0x140038fc1
140038df0:	41 0f b6 46 04       	movzbl 0x4(%r14),%eax
140038df5:	a8 01                	test   $0x1,%al
140038df7:	0f 85 53 01 00 00    	jne    0x140038f50
140038dfd:	0f b7 43 0a          	movzwl 0xa(%rbx),%eax
140038e01:	8b 4e 18             	mov    0x18(%rsi),%ecx
140038e04:	49 ff 46 68          	incq   0x68(%r14)
140038e08:	48 29 c8             	sub    %rcx,%rax
140038e0b:	49 01 46 70          	add    %rax,0x70(%r14)
140038e0f:	48 83 c4 20          	add    $0x20,%rsp
140038e13:	5b                   	pop    %rbx
140038e14:	5d                   	pop    %rbp
140038e15:	5f                   	pop    %rdi
140038e16:	5e                   	pop    %rsi
140038e17:	41 5e                	pop    %r14
140038e19:	c3                   	ret
140038e1a:	49 ff 46 40          	incq   0x40(%r14)
140038e1e:	83 7b 18 00          	cmpl   $0x0,0x18(%rbx)
140038e22:	0f 88 c5 01 00 00    	js     0x140038fed
140038e28:	48 8b 43 10          	mov    0x10(%rbx),%rax
140038e2c:	8b 40 18             	mov    0x18(%rax),%eax
140038e2f:	8b 4e 18             	mov    0x18(%rsi),%ecx
140038e32:	49 ff 46 68          	incq   0x68(%r14)
140038e36:	48 29 c8             	sub    %rcx,%rax
140038e39:	49 01 46 70          	add    %rax,0x70(%r14)
140038e3d:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
140038e44:	80 7e 12 01          	cmpb   $0x1,0x12(%rsi)
140038e48:	75 51                	jne    0x140038e9b
140038e4a:	48 8b 43 10          	mov    0x10(%rbx),%rax
140038e4e:	48 8d 4e 48          	lea    0x48(%rsi),%rcx
140038e52:	48 39 c8             	cmp    %rcx,%rax
140038e55:	0f 92 c1             	setb   %cl
140038e58:	48 8d 96 48 18 00 00 	lea    0x1848(%rsi),%rdx
140038e5f:	48 39 d0             	cmp    %rdx,%rax
140038e62:	0f 97 c2             	seta   %dl
140038e65:	08 ca                	or     %cl,%dl
140038e67:	75 32                	jne    0x140038e9b
140038e69:	8b 48 1c             	mov    0x1c(%rax),%ecx
140038e6c:	0f b6 c9             	movzbl %cl,%ecx
140038e6f:	c1 e1 0c             	shl    $0xc,%ecx
140038e72:	48 0f af 48 20       	imul   0x20(%rax),%rcx
140038e77:	48 c1 e9 2b          	shr    $0x2b,%rcx
140038e7b:	74 1e                	je     0x140038e9b
140038e7d:	83 7b 18 00          	cmpl   $0x0,0x18(%rbx)
140038e81:	0f 88 6f 01 00 00    	js     0x140038ff6
140038e87:	44 8b 40 18          	mov    0x18(%rax),%r8d
140038e8b:	8b 46 18             	mov    0x18(%rsi),%eax
140038e8e:	49 29 c0             	sub    %rax,%r8
140038e91:	48 89 f9             	mov    %rdi,%rcx
140038e94:	31 d2                	xor    %edx,%edx
140038e96:	e8 75 53 06 00       	call   0x14009e210
140038e9b:	4c 8d 76 40          	lea    0x40(%rsi),%r14
140038e9f:	4c 89 f1             	mov    %r14,%rcx
140038ea2:	ff 15 68 ea 0b 00    	call   *0xbea68(%rip)        # 0x1400f7910
140038ea8:	84 c0                	test   %al,%al
140038eaa:	75 08                	jne    0x140038eb4
140038eac:	4c 89 f1             	mov    %r14,%rcx
140038eaf:	e8 cc 8a 00 00       	call   0x140041980
140038eb4:	48 8b 43 10          	mov    0x10(%rbx),%rax
140038eb8:	8b 40 18             	mov    0x18(%rax),%eax
140038ebb:	48 29 86 a0 18 00 00 	sub    %rax,0x18a0(%rsi)
140038ec2:	4c 8b 03             	mov    (%rbx),%r8
140038ec5:	4c 39 c7             	cmp    %r8,%rdi
140038ec8:	0f 84 34 01 00 00    	je     0x140039002
140038ece:	48 8d 05 b3 73 0b 00 	lea    0xb73b3(%rip),%rax        # 0x1400f0288
140038ed5:	48 8d 0d a4 73 0b 00 	lea    0xb73a4(%rip),%rcx        # 0x1400f0280
140038edc:	80 7e 14 00          	cmpb   $0x0,0x14(%rsi)
140038ee0:	48 0f 45 c8          	cmovne %rax,%rcx
140038ee4:	48 8b 01             	mov    (%rcx),%rax
140038ee7:	48 8b 40 58          	mov    0x58(%rax),%rax
140038eeb:	48 89 fa             	mov    %rdi,%rdx
140038eee:	ff 15 14 de 0b 00    	call   *0xbde14(%rip)        # 0x1400f6d08
140038ef4:	48 89 3b             	mov    %rdi,(%rbx)
140038ef7:	80 63 1c fe          	andb   $0xfe,0x1c(%rbx)
140038efb:	8b 43 18             	mov    0x18(%rbx),%eax
140038efe:	a9 ff 7f 00 00       	test   $0x7fff,%eax
140038f03:	0f 84 fc 00 00 00    	je     0x140039005
140038f09:	8d 48 ff             	lea    -0x1(%rax),%ecx
140038f0c:	81 e1 ff 7f 00 00    	and    $0x7fff,%ecx
140038f12:	89 c2                	mov    %eax,%edx
140038f14:	81 e2 00 80 ff ff    	and    $0xffff8000,%edx
140038f1a:	09 ca                	or     %ecx,%edx
140038f1c:	89 53 18             	mov    %edx,0x18(%rbx)
140038f1f:	a9 00 00 00 40       	test   $0x40000000,%eax
140038f24:	0f 85 ae 00 00 00    	jne    0x140038fd8
140038f2a:	85 c9                	test   %ecx,%ecx
140038f2c:	0f 84 a6 00 00 00    	je     0x140038fd8
140038f32:	4c 89 f1             	mov    %r14,%rcx
140038f35:	48 83 c4 20          	add    $0x20,%rsp
140038f39:	5b                   	pop    %rbx
140038f3a:	5d                   	pop    %rbp
140038f3b:	5f                   	pop    %rdi
140038f3c:	5e                   	pop    %rsi
140038f3d:	41 5e                	pop    %r14
140038f3f:	48 ff 25 f2 e8 0b 00 	rex.W jmp *0xbe8f2(%rip)        # 0x1400f7838
140038f46:	4c 89 f1             	mov    %r14,%rcx
140038f49:	89 c2                	mov    %eax,%edx
140038f4b:	e8 c0 00 00 00       	call   0x140039010
140038f50:	4c 89 f1             	mov    %r14,%rcx
140038f53:	e8 28 87 00 00       	call   0x140041680
140038f58:	e9 a0 fe ff ff       	jmp    0x140038dfd
140038f5d:	89 f8                	mov    %edi,%eax
140038f5f:	25 ff ff 1f 00       	and    $0x1fffff,%eax
140038f64:	c1 e8 09             	shr    $0x9,%eax
140038f67:	49 01 c6             	add    %rax,%r14
140038f6a:	49 81 c6 00 20 00 00 	add    $0x2000,%r14
140038f71:	e9 0c fd ff ff       	jmp    0x140038c82
140038f76:	48 89 f1             	mov    %rsi,%rcx
140038f79:	48 89 da             	mov    %rbx,%rdx
140038f7c:	49 89 f8             	mov    %rdi,%r8
140038f7f:	e8 ec 70 00 00       	call   0x140040070
140038f84:	e9 0b fd ff ff       	jmp    0x140038c94
140038f89:	83 fd 01             	cmp    $0x1,%ebp
140038f8c:	74 7a                	je     0x140039008
140038f8e:	48 8b 43 10          	mov    0x10(%rbx),%rax
140038f92:	8b 40 18             	mov    0x18(%rax),%eax
140038f95:	f0 48 01 86 c0 18 00 	lock add %rax,0x18c0(%rsi)
140038f9c:	00
140038f9d:	f0 48 ff 86 c8 18 00 	lock incq 0x18c8(%rsi)
140038fa4:	00
140038fa5:	48 8b 43 10          	mov    0x10(%rbx),%rax
140038fa9:	8b 40 18             	mov    0x18(%rax),%eax
140038fac:	f0 48 01 86 d0 18 00 	lock add %rax,0x18d0(%rsi)
140038fb3:	00
140038fb4:	f0 48 ff 86 d8 18 00 	lock incq 0x18d8(%rsi)
140038fbb:	00
140038fbc:	e9 4e fe ff ff       	jmp    0x140038e0f
140038fc1:	44 0f b6 c0          	movzbl %al,%r8d
140038fc5:	41 d1 e8             	shr    $1,%r8d
140038fc8:	4c 89 f1             	mov    %r14,%rcx
140038fcb:	48 89 da             	mov    %rbx,%rdx
140038fce:	e8 7d 85 00 00       	call   0x140041550
140038fd3:	e9 18 fe ff ff       	jmp    0x140038df0
140038fd8:	ba 01 00 00 00       	mov    $0x1,%edx
140038fdd:	48 89 d9             	mov    %rbx,%rcx
140038fe0:	49 89 f0             	mov    %rsi,%r8
140038fe3:	e8 18 8a 00 00       	call   0x140041a00
140038fe8:	e9 45 ff ff ff       	jmp    0x140038f32
140038fed:	48 8b 43 20          	mov    0x20(%rbx),%rax
140038ff1:	e9 39 fe ff ff       	jmp    0x140038e2f
140038ff6:	4c 8b 43 20          	mov    0x20(%rbx),%r8
140038ffa:	e9 8c fe ff ff       	jmp    0x140038e8b
140038fff:	cc                   	int3
140039000:	0f 0b                	ud2
140039002:	cc                   	int3
140039003:	0f 0b                	ud2
140039005:	cc                   	int3
140039006:	0f 0b                	ud2
140039008:	cc                   	int3
140039009:	0f 0b                	ud2
14003900b:	cc                   	int3
14003900c:	cc                   	int3
14003900d:	cc                   	int3
14003900e:	cc                   	int3
14003900f:	cc                   	int3
140039010:	56                   	push   %rsi
140039011:	48 83 ec 40          	sub    $0x40,%rsp
140039015:	41 89 d0             	mov    %edx,%r8d
140039018:	0f 28 05 f1 78 0a 00 	movaps 0xa78f1(%rip),%xmm0        # 0x1400e0910
14003901f:	0f 29 44 24 30       	movaps %xmm0,0x30(%rsp)
140039024:	48 8d 15 47 72 0b 00 	lea    0xb7247(%rip),%rdx        # 0x1400f0272
14003902b:	48 8d 74 24 30       	lea    0x30(%rsp),%rsi
140039030:	48 89 f1             	mov    %rsi,%rcx
140039033:	e8 e8 0a fe ff       	call   0x140019b20
140039038:	48 89 f1             	mov    %rsi,%rcx
14003903b:	e8 20 f5 fd ff       	call   0x140018560
140039040:	c7 44 24 2c c4 01 00 	movl   $0x1c4,0x2c(%rsp)
140039047:	00
140039048:	48 8d 4c 24 2c       	lea    0x2c(%rsp),%rcx
14003904d:	e8 0e f5 fd ff       	call   0x140018560
140039052:	cc                   	int3
140039053:	cc                   	int3
140039054:	0f 0b                	ud2
140039056:	cc                   	int3
140039057:	cc                   	int3
140039058:	cc                   	int3
140039059:	cc                   	int3
14003905a:	cc                   	int3
14003905b:	cc                   	int3
14003905c:	cc                   	int3
14003905d:	cc                   	int3
14003905e:	cc                   	int3
14003905f:	cc                   	int3
140039060:	41 57                	push   %r15
140039062:	41 56                	push   %r14
140039064:	41 55                	push   %r13
140039066:	41 54                	push   %r12
140039068:	56                   	push   %rsi
140039069:	57                   	push   %rdi
14003906a:	53                   	push   %rbx
14003906b:	48 83 ec 20          	sub    $0x20,%rsp
14003906f:	4d 89 cc             	mov    %r9,%r12
140039072:	48 89 d6             	mov    %rdx,%rsi
140039075:	48 89 cf             	mov    %rcx,%rdi
140039078:	45 8b 30             	mov    (%r8),%r14d
14003907b:	4c 8b 69 08          	mov    0x8(%rcx),%r13
14003907f:	4d 85 ed             	test   %r13,%r13
140039082:	0f 84 2c 01 00 00    	je     0x1400391b4
140039088:	4c 89 e8             	mov    %r13,%rax
14003908b:	48 d1 e8             	shr    $1,%rax
14003908e:	48 b9 55 55 55 55 55 	movabs $0x5555555555555555,%rcx
140039095:	55 55 55
140039098:	48 21 c1             	and    %rax,%rcx
14003909b:	4c 89 e8             	mov    %r13,%rax
14003909e:	48 29 c8             	sub    %rcx,%rax
1400390a1:	48 b9 33 33 33 33 33 	movabs $0x3333333333333333,%rcx
1400390a8:	33 33 33
1400390ab:	48 89 c2             	mov    %rax,%rdx
1400390ae:	48 21 ca             	and    %rcx,%rdx
1400390b1:	48 c1 e8 02          	shr    $0x2,%rax
1400390b5:	48 21 c8             	and    %rcx,%rax
1400390b8:	48 01 d0             	add    %rdx,%rax
1400390bb:	48 89 c1             	mov    %rax,%rcx
1400390be:	48 c1 e9 04          	shr    $0x4,%rcx
1400390c2:	48 01 c1             	add    %rax,%rcx
1400390c5:	48 b8 0f 0f 0f 0f 0f 	movabs $0xf0f0f0f0f0f0f0f,%rax
1400390cc:	0f 0f 0f
1400390cf:	48 21 c8             	and    %rcx,%rax
1400390d2:	48 b9 01 01 01 01 01 	movabs $0x101010101010101,%rcx
1400390d9:	01 01 01
1400390dc:	48 0f af c8          	imul   %rax,%rcx
1400390e0:	48 c1 e9 38          	shr    $0x38,%rcx
1400390e4:	48 83 f9 01          	cmp    $0x1,%rcx
1400390e8:	76 15                	jbe    0x1400390ff
1400390ea:	4d 89 f7             	mov    %r14,%r15
1400390ed:	4d 39 f5             	cmp    %r14,%r13