14002399f:	48 8b 1d 52 36 05 00 	mov    0x53652(%rip),%rbx        # 0x140076ff8
1400239a6:	48 85 db             	test   %rbx,%rbx
1400239a9:	0f 85 8d 00 00 00    	jne    0x140023a3c
1400239af:	33 c9                	xor    %ecx,%ecx
1400239b1:	e8 c2 01 00 00       	call   0x140023b78
1400239b6:	48 8b d8             	mov    %rax,%rbx
1400239b9:	48 8b c8             	mov    %rax,%rcx
1400239bc:	e8 e7 01 00 00       	call   0x140023ba8
1400239c1:	c7 43 20 3f 00 00 00 	movl   $0x3f,0x20(%rbx)
1400239c8:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
1400239cc:	48 8d 2d c9 a1 02 00 	lea    0x2a1c9(%rip),%rbp        # 0x14004db9c
1400239d3:	48 3b cd             	cmp    %rbp,%rcx
1400239d6:	74 3f                	je     0x140023a17
1400239d8:	48 85 c9             	test   %rcx,%rcx
1400239db:	74 05                	je     0x1400239e2
1400239dd:	e8 4e d2 00 00       	call   0x140030c30
1400239e2:	48 83 63 28 00       	andq   $0x0,0x28(%rbx)
1400239e7:	48 8b fd             	mov    %rbp,%rdi
1400239ea:	48 ff c7             	inc    %rdi
1400239ed:	80 3f 00             	cmpb   $0x0,(%rdi)
1400239f0:	75 f8                	jne    0x1400239ea
1400239f2:	48 ff c7             	inc    %rdi
1400239f5:	48 2b fd             	sub    %rbp,%rdi
1400239f8:	48 8b cf             	mov    %rdi,%rcx
1400239fb:	e8 d0 e3 00 00       	call   0x140031dd0
140023a00:	48 89 43 28          	mov    %rax,0x28(%rbx)
140023a04:	48 85 c0             	test   %rax,%rax
140023a07:	74 0e                	je     0x140023a17
140023a09:	4c 8b c7             	mov    %rdi,%r8
140023a0c:	48 8b d5             	mov    %rbp,%rdx
140023a0f:	48 8b c8             	mov    %rax,%rcx
140023a12:	e8 b9 36 00 00       	call   0x1400270d0
140023a17:	48 89 1d 8a 35 05 00 	mov    %rbx,0x5358a(%rip)        # 0x140076fa8
140023a1e:	48 8b 03             	mov    (%rbx),%rax
140023a21:	48 8b cb             	mov    %rbx,%rcx
140023a24:	48 8b 40 08          	mov    0x8(%rax),%rax
140023a28:	ff 15 1a 8a 02 00    	call   *0x28a1a(%rip)        # 0x14004c448
140023a2e:	48 8b 05 73 35 05 00 	mov    0x53573(%rip),%rax        # 0x140076fa8
140023a35:	48 89 05 9c 35 05 00 	mov    %rax,0x5359c(%rip)        # 0x140076fd8
140023a3c:	40 84 f6             	test   %sil,%sil
140023a3f:	74 11                	je     0x140023a52
140023a41:	48 8b 03             	mov    (%rbx),%rax
140023a44:	48 8b cb             	mov    %rbx,%rcx
140023a47:	48 8b 40 08          	mov    0x8(%rax),%rax
140023a4b:	ff 15 f7 89 02 00    	call   *0x289f7(%rip)        # 0x14004c448
140023a51:	90                   	nop
140023a52:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140023a57:	e8 b4 02 00 00       	call   0x140023d10
140023a5c:	48 8b c3             	mov    %rbx,%rax
140023a5f:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140023a64:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
140023a69:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140023a6e:	48 83 c4 20          	add    $0x20,%rsp
140023a72:	5f                   	pop    %rdi
140023a73:	c3                   	ret
140023a74:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140023a79:	57                   	push   %rdi
140023a7a:	48 83 ec 20          	sub    $0x20,%rsp
140023a7e:	48 8b f9             	mov    %rcx,%rdi
140023a81:	33 d2                	xor    %edx,%edx
140023a83:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140023a88:	e8 0b 02 00 00       	call   0x140023c98
140023a8d:	48 8b 5f 18          	mov    0x18(%rdi),%rbx
140023a91:	eb 39                	jmp    0x140023acc
140023a93:	48 8b 47 10          	mov    0x10(%rdi),%rax
140023a97:	48 ff cb             	dec    %rbx
140023a9a:	48 8b 0c d8          	mov    (%rax,%rbx,8),%rcx
140023a9e:	48 85 c9             	test   %rcx,%rcx
140023aa1:	74 29                	je     0x140023acc
140023aa3:	48 8b 01             	mov    (%rcx),%rax
140023aa6:	48 8b 40 10          	mov    0x10(%rax),%rax
140023aaa:	ff 15 98 89 02 00    	call   *0x28998(%rip)        # 0x14004c448
140023ab0:	4c 8b c0             	mov    %rax,%r8
140023ab3:	48 85 c0             	test   %rax,%rax
140023ab6:	74 14                	je     0x140023acc
140023ab8:	48 8b 08             	mov    (%rax),%rcx
140023abb:	ba 01 00 00 00       	mov    $0x1,%edx
140023ac0:	48 8b 01             	mov    (%rcx),%rax
140023ac3:	49 8b c8             	mov    %r8,%rcx
140023ac6:	ff 15 7c 89 02 00    	call   *0x2897c(%rip)        # 0x14004c448
140023acc:	48 85 db             	test   %rbx,%rbx
140023acf:	75 c2                	jne    0x140023a93
140023ad1:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140023ad5:	e8 56 d1 00 00       	call   0x140030c30
140023ada:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140023adf:	e8 2c 02 00 00       	call   0x140023d10
140023ae4:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140023ae9:	48 83 c4 20          	add    $0x20,%rsp
140023aed:	5f                   	pop    %rdi
140023aee:	c3                   	ret
140023aef:	cc                   	int3
140023af0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140023af5:	57                   	push   %rdi
140023af6:	48 83 ec 20          	sub    $0x20,%rsp
140023afa:	48 8b da             	mov    %rdx,%rbx
140023afd:	48 8b f9             	mov    %rcx,%rdi
140023b00:	33 d2                	xor    %edx,%edx
140023b02:	33 c9                	xor    %ecx,%ecx
140023b04:	e8 ab e5 00 00       	call   0x1400320b4
140023b09:	48 85 c0             	test   %rax,%rax
140023b0c:	48 8d 0d a5 84 03 00 	lea    0x384a5(%rip),%rcx        # 0x14005bfb8
140023b13:	48 0f 44 c1          	cmove  %rcx,%rax
140023b17:	48 8d 4f 48          	lea    0x48(%rdi),%rcx
140023b1b:	48 8b d0             	mov    %rax,%rdx
140023b1e:	e8 3d fd ff ff       	call   0x140023860
140023b23:	48 85 db             	test   %rbx,%rbx
140023b26:	74 0d                	je     0x140023b35
140023b28:	48 8b d3             	mov    %rbx,%rdx
140023b2b:	33 c9                	xor    %ecx,%ecx
140023b2d:	e8 82 e5 00 00       	call   0x1400320b4
140023b32:	48 8b d8             	mov    %rax,%rbx
140023b35:	48 85 db             	test   %rbx,%rbx
140023b38:	48 8d 05 59 a0 02 00 	lea    0x2a059(%rip),%rax        # 0x14004db98
140023b3f:	48 8d 4f 58          	lea    0x58(%rdi),%rcx
140023b43:	48 0f 44 d8          	cmove  %rax,%rbx
140023b47:	48 8b d3             	mov    %rbx,%rdx
140023b4a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140023b4f:	48 83 c4 20          	add    $0x20,%rsp
140023b53:	5f                   	pop    %rdi
140023b54:	e9 07 fd ff ff       	jmp    0x140023860
140023b59:	cc                   	int3
140023b5a:	cc                   	int3
140023b5b:	cc                   	int3
140023b5c:	48 83 ec 28          	sub    $0x28,%rsp
140023b60:	48 8b 51 48          	mov    0x48(%rcx),%rdx
140023b64:	48 85 d2             	test   %rdx,%rdx
140023b67:	74 07                	je     0x140023b70
140023b69:	33 c9                	xor    %ecx,%ecx
140023b6b:	e8 44 e5 00 00       	call   0x1400320b4
140023b70:	48 83 c4 28          	add    $0x28,%rsp
140023b74:	c3                   	ret
140023b75:	cc                   	int3
140023b76:	cc                   	int3
140023b77:	cc                   	int3
140023b78:	40 53                	rex push %rbx
140023b7a:	48 83 ec 20          	sub    $0x20,%rsp
140023b7e:	8a d9                	mov    %cl,%bl
140023b80:	b9 38 00 00 00       	mov    $0x38,%ecx
140023b85:	e8 42 13 00 00       	call   0x140024ecc
140023b8a:	48 8b c8             	mov    %rax,%rcx
140023b8d:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140023b92:	33 c0                	xor    %eax,%eax
140023b94:	48 85 c9             	test   %rcx,%rcx
140023b97:	74 07                	je     0x140023ba0
140023b99:	8a d3                	mov    %bl,%dl
140023b9b:	e8 38 fc ff ff       	call   0x1400237d8
140023ba0:	48 83 c4 20          	add    $0x20,%rsp
140023ba4:	5b                   	pop    %rbx
140023ba5:	c3                   	ret
140023ba6:	cc                   	int3
140023ba7:	cc                   	int3
140023ba8:	40 53                	rex push %rbx
140023baa:	48 83 ec 20          	sub    $0x20,%rsp
140023bae:	80 3d 4b 34 05 00 00 	cmpb   $0x0,0x5344b(%rip)        # 0x140077000
140023bb5:	48 8b d9             	mov    %rcx,%rbx
140023bb8:	75 13                	jne    0x140023bcd
140023bba:	48 8d 0d 5f 00 00 00 	lea    0x5f(%rip),%rcx        # 0x140023c20
140023bc1:	c6 05 38 34 05 00 01 	movb   $0x1,0x53438(%rip)        # 0x140077000
140023bc8:	e8 8f 0a 00 00       	call   0x14002465c
140023bcd:	48 89 1d 24 34 05 00 	mov    %rbx,0x53424(%rip)        # 0x140076ff8
140023bd4:	48 83 c4 20          	add    $0x20,%rsp
140023bd8:	5b                   	pop    %rbx
140023bd9:	c3                   	ret
140023bda:	cc                   	int3
140023bdb:	cc                   	int3
140023bdc:	48 83 ec 28          	sub    $0x28,%rsp
140023be0:	48 8b 09             	mov    (%rcx),%rcx
140023be3:	48 85 c9             	test   %rcx,%rcx
140023be6:	74 29                	je     0x140023c11
140023be8:	48 8b 01             	mov    (%rcx),%rax
140023beb:	48 8b 40 10          	mov    0x10(%rax),%rax
140023bef:	ff 15 53 88 02 00    	call   *0x28853(%rip)        # 0x14004c448
140023bf5:	4c 8b c0             	mov    %rax,%r8
140023bf8:	48 85 c0             	test   %rax,%rax
140023bfb:	74 14                	je     0x140023c11
140023bfd:	48 8b 08             	mov    (%rax),%rcx
140023c00:	ba 01 00 00 00       	mov    $0x1,%edx
140023c05:	48 8b 01             	mov    (%rcx),%rax
140023c08:	49 8b c8             	mov    %r8,%rcx
140023c0b:	ff 15 37 88 02 00    	call   *0x28837(%rip)        # 0x14004c448
140023c11:	48 83 c4 28          	add    $0x28,%rsp
140023c15:	c3                   	ret
140023c16:	cc                   	int3
140023c17:	cc                   	int3
140023c18:	cc                   	int3
140023c19:	cc                   	int3
140023c1a:	cc                   	int3
140023c1b:	cc                   	int3
140023c1c:	cc                   	int3
140023c1d:	cc                   	int3
140023c1e:	cc                   	int3
140023c1f:	cc                   	int3
140023c20:	48 83 ec 28          	sub    $0x28,%rsp
140023c24:	33 d2                	xor    %edx,%edx
140023c26:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140023c2b:	e8 68 00 00 00       	call   0x140023c98
140023c30:	48 8d 0d c1 33 05 00 	lea    0x533c1(%rip),%rcx        # 0x140076ff8
140023c37:	e8 a0 ff ff ff       	call   0x140023bdc
140023c3c:	48 83 25 b4 33 05 00 	andq   $0x0,0x533b4(%rip)        # 0x140076ff8
140023c43:	00
140023c44:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140023c49:	e8 c2 00 00 00       	call   0x140023d10
140023c4e:	48 83 c4 28          	add    $0x28,%rsp
140023c52:	c3                   	ret
140023c53:	cc                   	int3
140023c54:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140023c59:	57                   	push   %rdi
140023c5a:	48 83 ec 20          	sub    $0x20,%rsp
140023c5e:	48 8b f9             	mov    %rcx,%rdi
140023c61:	f0 ff 05 9c e3 04 00 	lock incl 0x4e39c(%rip)        # 0x140072004
140023c68:	75 1f                	jne    0x140023c89
140023c6a:	48 8d 1d af 33 05 00 	lea    0x533af(%rip),%rbx        # 0x140077020
140023c71:	48 8b cb             	mov    %rbx,%rcx
140023c74:	e8 27 0a 00 00       	call   0x1400246a0
140023c79:	48 8d 05 e0 34 05 00 	lea    0x534e0(%rip),%rax        # 0x140077160
140023c80:	48 83 c3 28          	add    $0x28,%rbx
140023c84:	48 3b d8             	cmp    %rax,%rbx
140023c87:	75 e8                	jne    0x140023c71
140023c89:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140023c8e:	48 8b c7             	mov    %rdi,%rax
140023c91:	48 83 c4 20          	add    $0x20,%rsp
140023c95:	5f                   	pop    %rdi
140023c96:	c3                   	ret
140023c97:	cc                   	int3
140023c98:	40 53                	rex push %rbx
140023c9a:	48 83 ec 20          	sub    $0x20,%rsp
140023c9e:	89 11                	mov    %edx,(%rcx)
140023ca0:	48 8b d9             	mov    %rcx,%rbx
140023ca3:	85 d2                	test   %edx,%edx
140023ca5:	75 07                	jne    0x140023cae
140023ca7:	e8 18 e5 00 00       	call   0x1400321c4
140023cac:	eb 1c                	jmp    0x140023cca
140023cae:	83 fa 08             	cmp    $0x8,%edx
140023cb1:	7d 17                	jge    0x140023cca
140023cb3:	48 63 c2             	movslq %edx,%rax
140023cb6:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
140023cba:	48 8d 05 5f 33 05 00 	lea    0x5335f(%rip),%rax        # 0x140077020
140023cc1:	48 8d 0c c8          	lea    (%rax,%rcx,8),%rcx
140023cc5:	e8 e6 09 00 00       	call   0x1400246b0
140023cca:	48 8b c3             	mov    %rbx,%rax
140023ccd:	48 83 c4 20          	add    $0x20,%rsp
140023cd1:	5b                   	pop    %rbx
140023cd2:	c3                   	ret
140023cd3:	cc                   	int3
140023cd4:	40 53                	rex push %rbx
140023cd6:	48 83 ec 20          	sub    $0x20,%rsp
140023cda:	83 c8 ff             	or     $0xffffffff,%eax
140023cdd:	f0 0f c1 05 1f e3 04 	lock xadd %eax,0x4e31f(%rip)        # 0x140072004
140023ce4:	00
140023ce5:	83 f8 01             	cmp    $0x1,%eax
140023ce8:	79 1f                	jns    0x140023d09
140023cea:	48 8d 1d 2f 33 05 00 	lea    0x5332f(%rip),%rbx        # 0x140077020
140023cf1:	48 8b cb             	mov    %rbx,%rcx
140023cf4:	e8 9f 09 00 00       	call   0x140024698
140023cf9:	48 8d 05 60 34 05 00 	lea    0x53460(%rip),%rax        # 0x140077160
140023d00:	48 83 c3 28          	add    $0x28,%rbx
140023d04:	48 3b d8             	cmp    %rax,%rbx
140023d07:	75 e8                	jne    0x140023cf1
140023d09:	48 83 c4 20          	add    $0x20,%rsp
140023d0d:	5b                   	pop    %rbx
140023d0e:	c3                   	ret
140023d0f:	cc                   	int3
140023d10:	48 83 ec 28          	sub    $0x28,%rsp
140023d14:	48 63 01             	movslq (%rcx),%rax
140023d17:	85 c0                	test   %eax,%eax
140023d19:	75 09                	jne    0x140023d24
140023d1b:	48 83 c4 28          	add    $0x28,%rsp
140023d1f:	e9 bc e4 00 00       	jmp    0x1400321e0
140023d24:	83 f8 08             	cmp    $0x8,%eax
140023d27:	7d 14                	jge    0x140023d3d
140023d29:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
140023d2d:	48 8d 05 ec 32 05 00 	lea    0x532ec(%rip),%rax        # 0x140077020
140023d34:	48 8d 0c c8          	lea    (%rax,%rcx,8),%rcx
140023d38:	e8 7b 09 00 00       	call   0x1400246b8
140023d3d:	48 83 c4 28          	add    $0x28,%rsp
140023d41:	c3                   	ret
140023d42:	cc                   	int3
140023d43:	cc                   	int3
140023d44:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140023d49:	57                   	push   %rdi
140023d4a:	48 83 ec 20          	sub    $0x20,%rsp
140023d4e:	0f 57 c0             	xorps  %xmm0,%xmm0
140023d51:	33 c0                	xor    %eax,%eax
140023d53:	0f 11 01             	movups %xmm0,(%rcx)
140023d56:	48 8b d9             	mov    %rcx,%rbx
140023d59:	0f 11 41 10          	movups %xmm0,0x10(%rcx)
140023d5d:	48 89 41 20          	mov    %rax,0x20(%rcx)
140023d61:	89 41 28             	mov    %eax,0x28(%rcx)
140023d64:	e8 37 d9 00 00       	call   0x1400316a0
140023d69:	89 03                	mov    %eax,(%rbx)
140023d6b:	e8 94 d9 00 00       	call   0x140031704
140023d70:	89 43 04             	mov    %eax,0x4(%rbx)
140023d73:	e8 58 d9 00 00       	call   0x1400316d0
140023d78:	33 ff                	xor    %edi,%edi
140023d7a:	48 8b 48 10          	mov    0x10(%rax),%rcx
140023d7e:	8b c7                	mov    %edi,%eax
140023d80:	48 85 c9             	test   %rcx,%rcx
140023d83:	0f 94 c0             	sete   %al
140023d86:	89 43 08             	mov    %eax,0x8(%rbx)
140023d89:	48 85 c9             	test   %rcx,%rcx
140023d8c:	74 40                	je     0x140023dce
140023d8e:	e8 5d e4 00 00       	call   0x1400321f0
140023d93:	4c 8b c8             	mov    %rax,%r9
140023d96:	44 8b c7             	mov    %edi,%r8d
140023d99:	44 8b d7             	mov    %edi,%r10d
140023d9c:	66 41 39 39          	cmp    %di,(%r9)
140023da0:	7d 19                	jge    0x140023dbb
140023da2:	49 8b d2             	mov    %r10,%rdx
140023da5:	41 8b c0             	mov    %r8d,%eax
140023da8:	48 c1 ea 03          	shr    $0x3,%rdx
140023dac:	83 e0 07             	and    $0x7,%eax
140023daf:	0f b6 4c 1a 0c       	movzbl 0xc(%rdx,%rbx,1),%ecx
140023db4:	0f ab c1             	bts    %eax,%ecx
140023db7:	88 4c 1a 0c          	mov    %cl,0xc(%rdx,%rbx,1)
140023dbb:	41 ff c0             	inc    %r8d
140023dbe:	49 ff c2             	inc    %r10
140023dc1:	49 83 c1 02          	add    $0x2,%r9
140023dc5:	41 81 f8 00 01 00 00 	cmp    $0x100,%r8d
140023dcc:	7c ce                	jl     0x140023d9c
140023dce:	48 8b c3             	mov    %rbx,%rax
140023dd1:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140023dd6:	48 83 c4 20          	add    $0x20,%rsp
140023dda:	5f                   	pop    %rdi
140023ddb:	c3                   	ret
140023ddc:	48 83 ec 58          	sub    $0x58,%rsp
140023de0:	41 83 79 08 00       	cmpl   $0x0,0x8(%r9)
140023de5:	4d 8b d1             	mov    %r9,%r10
140023de8:	66 89 54 24 40       	mov    %dx,0x40(%rsp)
140023ded:	74 13                	je     0x140023e02
140023def:	b8 ff 00 00 00       	mov    $0xff,%eax
140023df4:	66 3b d0             	cmp    %ax,%dx
140023df7:	77 4c                	ja     0x140023e45
140023df9:	88 11                	mov    %dl,(%rcx)
140023dfb:	b8 01 00 00 00       	mov    $0x1,%eax
140023e00:	eb 51                	jmp    0x140023e53
140023e02:	83 64 24 48 00       	andl   $0x0,0x48(%rsp)
140023e07:	48 8d 44 24 48       	lea    0x48(%rsp),%rax
140023e0c:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140023e11:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
140023e16:	41 8b 41 04          	mov    0x4(%r9),%eax
140023e1a:	33 d2                	xor    %edx,%edx
140023e1c:	48 83 64 24 30 00    	andq   $0x0,0x30(%rsp)
140023e22:	41 b9 01 00 00 00    	mov    $0x1,%r9d
140023e28:	89 44 24 28          	mov    %eax,0x28(%rsp)
140023e2c:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140023e31:	41 8b 0a             	mov    (%r10),%ecx
140023e34:	ff 15 26 84 02 00    	call   *0x28426(%rip)        # 0x14004c260
140023e3a:	85 c0                	test   %eax,%eax
140023e3c:	74 07                	je     0x140023e45
140023e3e:	83 7c 24 48 00       	cmpl   $0x0,0x48(%rsp)