140236ae5:	41 56                	push   %r14
140236ae7:	41 57                	push   %r15
140236ae9:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
140236af0:	48 8b 05 09 24 18 01 	mov    0x1182409(%rip),%rax        # 0x1413b8f00
140236af7:	48 33 c4             	xor    %rsp,%rax
140236afa:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
140236aff:	4d 8b f8             	mov    %r8,%r15
140236b02:	48 89 54 24 58       	mov    %rdx,0x58(%rsp)
140236b07:	66 49 0f 7e d8       	movq   %xmm3,%r8
140236b0c:	4c 8b f1             	mov    %rcx,%r14
140236b0f:	8b 8c 24 d0 00 00 00 	mov    0xd0(%rsp),%ecx
140236b16:	48 8b f2             	mov    %rdx,%rsi
140236b19:	89 4c 24 30          	mov    %ecx,0x30(%rsp)
140236b1d:	44 8b e1             	mov    %ecx,%r12d
140236b20:	4d 85 c0             	test   %r8,%r8
140236b23:	75 68                	jne    0x140236b8d
140236b25:	33 c0                	xor    %eax,%eax
140236b27:	85 c9                	test   %ecx,%ecx
140236b29:	0f 95 c0             	setne  %al
140236b2c:	83 c1 05             	add    $0x5,%ecx
140236b2f:	03 c1                	add    %ecx,%eax
140236b31:	48 63 c8             	movslq %eax,%rcx
140236b34:	49 8b c7             	mov    %r15,%rax
140236b37:	48 2b c2             	sub    %rdx,%rax
140236b3a:	48 3b c1             	cmp    %rcx,%rax
140236b3d:	7d 10                	jge    0x140236b4f
140236b3f:	4d 89 3e             	mov    %r15,(%r14)
140236b42:	41 c7 46 08 84 00 00 	movl   $0x84,0x8(%r14)
140236b49:	00
140236b4a:	e9 da 07 00 00       	jmp    0x140237329
140236b4f:	48 ff c6             	inc    %rsi
140236b52:	c6 02 30             	movb   $0x30,(%rdx)
140236b55:	45 85 e4             	test   %r12d,%r12d
140236b58:	74 19                	je     0x140236b73
140236b5a:	c6 06 2e             	movb   $0x2e,(%rsi)
140236b5d:	4d 8b c4             	mov    %r12,%r8
140236b60:	48 ff c6             	inc    %rsi
140236b63:	ba 30 00 00 00       	mov    $0x30,%edx
140236b68:	48 8b ce             	mov    %rsi,%rcx
140236b6b:	e8 40 8b ca 00       	call   0x140edf6b0
140236b70:	49 03 f4             	add    %r12,%rsi
140236b73:	48 8d 46 04          	lea    0x4(%rsi),%rax
140236b77:	c7 06 65 2b 30 30    	movl   $0x30302b65,(%rsi)
140236b7d:	49 89 06             	mov    %rax,(%r14)
140236b80:	41 c7 46 08 00 00 00 	movl   $0x0,0x8(%r14)
140236b87:	00
140236b88:	e9 9c 07 00 00       	jmp    0x140237329
140236b8d:	48 89 ac 24 b0 00 00 	mov    %rbp,0xb0(%rsp)
140236b94:	00
140236b95:	48 8d 0d 64 94 dc ff 	lea    -0x236b9c(%rip),%rcx        # 0x140000000
140236b9c:	48 89 7c 24 78       	mov    %rdi,0x78(%rsp)
140236ba1:	4d 8b d0             	mov    %r8,%r10
140236ba4:	48 b8 ff ff ff ff ff 	movabs $0xfffffffffffff,%rax
140236bab:	ff 0f 00
140236bae:	4c 89 6c 24 70       	mov    %r13,0x70(%rsp)
140236bb3:	4c 23 d0             	and    %rax,%r10
140236bb6:	49 c1 e8 34          	shr    $0x34,%r8
140236bba:	45 33 ed             	xor    %r13d,%r13d
140236bbd:	4c 89 54 24 38       	mov    %r10,0x38(%rsp)
140236bc2:	33 ff                	xor    %edi,%edi
140236bc4:	33 ed                	xor    %ebp,%ebp
140236bc6:	45 85 c0             	test   %r8d,%r8d
140236bc9:	75 1c                	jne    0x140236be7
140236bcb:	41 ff c4             	inc    %r12d
140236bce:	4c 89 54 24 40       	mov    %r10,0x40(%rsp)
140236bd3:	33 db                	xor    %ebx,%ebx
140236bd5:	b8 ce fb ff ff       	mov    $0xfffffbce,%eax
140236bda:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
140236bde:	89 44 24 2c          	mov    %eax,0x2c(%rsp)
140236be2:	e9 79 02 00 00       	jmp    0x140236e60
140236be7:	41 81 c0 cd fb ff ff 	add    $0xfffffbcd,%r8d
140236bee:	33 db                	xor    %ebx,%ebx
140236bf0:	48 b8 00 00 00 00 00 	movabs $0x10000000000000,%rax
140236bf7:	00 10 00
140236bfa:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
140236bfe:	4c 0b d0             	or     %rax,%r10
140236c01:	44 89 44 24 2c       	mov    %r8d,0x2c(%rsp)
140236c06:	41 ff c4             	inc    %r12d
140236c09:	4c 89 54 24 40       	mov    %r10,0x40(%rsp)
140236c0e:	4c 89 54 24 38       	mov    %r10,0x38(%rsp)
140236c13:	41 83 f8 cc          	cmp    $0xffffffcc,%r8d
140236c17:	0f 8c 32 02 00 00    	jl     0x140236e4f
140236c1d:	45 85 c0             	test   %r8d,%r8d
140236c20:	79 14                	jns    0x140236c36
140236c22:	b9 01 00 00 00       	mov    $0x1,%ecx
140236c27:	45 33 c9             	xor    %r9d,%r9d
140236c2a:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
140236c2e:	41 bb 78 00 00 00    	mov    $0x78,%r11d
140236c34:	eb 42                	jmp    0x140236c78
140236c36:	45 8d 48 0f          	lea    0xf(%r8),%r9d
140236c3a:	44 89 44 24 2c       	mov    %r8d,0x2c(%rsp)
140236c3f:	41 c1 e9 04          	shr    $0x4,%r9d
140236c43:	b8 39 8e e3 38       	mov    $0x38e38e39,%eax
140236c48:	41 69 c9 10 44 13 00 	imul   $0x134410,%r9d,%ecx
140236c4f:	45 8b d9             	mov    %r9d,%r11d
140236c52:	41 c1 e3 04          	shl    $0x4,%r11d
140236c56:	41 83 c3 78          	add    $0x78,%r11d
140236c5a:	4c 89 54 24 38       	mov    %r10,0x38(%rsp)
140236c5f:	c1 e9 12             	shr    $0x12,%ecx
140236c62:	83 c1 19             	add    $0x19,%ecx
140236c65:	f7 e1                	mul    %ecx
140236c67:	8b ca                	mov    %edx,%ecx
140236c69:	d1 e9                	shr    $1,%ecx
140236c6b:	83 e9 01             	sub    $0x1,%ecx
140236c6e:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
140236c72:	0f 88 d0 01 00 00    	js     0x140236e48
140236c78:	0f ae e8             	lfence
140236c7b:	49 8b da             	mov    %r10,%rbx
140236c7e:	41 8b d1             	mov    %r9d,%edx
140236c81:	48 c1 e3 08          	shl    $0x8,%rbx
140236c85:	8d 04 c9             	lea    (%rcx,%rcx,8),%eax
140236c88:	45 2b d8             	sub    %r8d,%r11d
140236c8b:	48 89 54 24 48       	mov    %rdx,0x48(%rsp)
140236c90:	41 83 eb 78          	sub    $0x78,%r11d
140236c94:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
140236c99:	44 89 5c 24 34       	mov    %r11d,0x34(%rsp)
140236c9e:	89 44 24 24          	mov    %eax,0x24(%rsp)
140236ca2:	44 89 44 24 2c       	mov    %r8d,0x2c(%rsp)
140236ca7:	4c 89 54 24 38       	mov    %r10,0x38(%rsp)
140236cac:	0f 1f 40 00          	nopl   0x0(%rax)
140236cb0:	48 8d 3d 49 93 dc ff 	lea    -0x236cb7(%rip),%rdi        # 0x140000000
140236cb7:	48 bd 97 a5 b4 36 41 	movabs $0x89705f4136b4a597,%rbp
140236cbe:	5f 70 89
140236cc1:	0f b7 84 57 20 eb fa 	movzwl 0xfaeb20(%rdi,%rdx,2),%eax
140236cc8:	00
140236cc9:	03 c1                	add    %ecx,%eax
140236ccb:	48 98                	cltq
140236ccd:	4c 8d 14 40          	lea    (%rax,%rax,2),%r10
140236cd1:	4a 8b 84 d7 00 51 1c 	mov    0x11c5100(%rdi,%r10,8),%rax
140236cd8:	01
140236cd9:	48 f7 e3             	mul    %rbx
140236cdc:	4a 8b 84 d7 08 51 1c 	mov    0x11c5108(%rdi,%r10,8),%rax
140236ce3:	01
140236ce4:	48 8b ca             	mov    %rdx,%rcx
140236ce7:	48 f7 e3             	mul    %rbx
140236cea:	4c 8b c0             	mov    %rax,%r8
140236ced:	4c 8b ca             	mov    %rdx,%r9
140236cf0:	4a 8b 84 d7 10 51 1c 	mov    0x11c5110(%rdi,%r10,8),%rax
140236cf7:	01
140236cf8:	49 03 c8             	add    %r8,%rcx
140236cfb:	48 f7 e3             	mul    %rbx
140236cfe:	49 3b c8             	cmp    %r8,%rcx
140236d01:	41 8b cb             	mov    %r11d,%ecx
140236d04:	48 8b f8             	mov    %rax,%rdi
140236d07:	49 13 f9             	adc    %r9,%rdi
140236d0a:	49 b9 31 30 95 f8 88 	movabs $0x31680a88f8953031,%r9
140236d11:	0a 68 31
140236d14:	48 3b f8             	cmp    %rax,%rdi
140236d17:	49 8b c1             	mov    %r9,%rax
140236d1a:	48 83 d2 00          	adc    $0x0,%rdx
140236d1e:	48 0f ad d7          	shrd   %cl,%rdx,%rdi
140236d22:	4c 8b c2             	mov    %rdx,%r8
140236d25:	48 f7 e7             	mul    %rdi
140236d28:	49 d3 e8             	shr    %cl,%r8
140236d2b:	48 8b c5             	mov    %rbp,%rax
140236d2e:	48 8b ca             	mov    %rdx,%rcx
140236d31:	48 f7 e7             	mul    %rdi
140236d34:	4c 8b d0             	mov    %rax,%r10
140236d37:	48 8b da             	mov    %rdx,%rbx
140236d3a:	49 8b c1             	mov    %r9,%rax
140236d3d:	49 f7 e0             	mul    %r8
140236d40:	4c 8b c8             	mov    %rax,%r9
140236d43:	4c 8b da             	mov    %rdx,%r11
140236d46:	48 8b c5             	mov    %rbp,%rax
140236d49:	49 f7 e0             	mul    %r8
140236d4c:	4d 8d 04 09          	lea    (%r9,%rcx,1),%r8
140236d50:	4b 8d 0c 10          	lea    (%r8,%r10,1),%rcx
140236d54:	49 3b ca             	cmp    %r10,%rcx
140236d57:	48 83 d0 00          	adc    $0x0,%rax
140236d5b:	4d 3b c1             	cmp    %r9,%r8
140236d5e:	49 13 c3             	adc    %r11,%rax
140236d61:	48 03 c3             	add    %rbx,%rax
140236d64:	48 c1 e8 1d          	shr    $0x1d,%rax
140236d68:	69 c0 00 ca 9a 3b    	imul   $0x3b9aca00,%eax,%eax
140236d6e:	2b f8                	sub    %eax,%edi
140236d70:	45 85 ed             	test   %r13d,%r13d
140236d73:	74 32                	je     0x140236da7
140236d75:	41 8d 5d 09          	lea    0x9(%r13),%ebx
140236d79:	41 3b dc             	cmp    %r12d,%ebx
140236d7c:	0f 87 b9 00 00 00    	ja     0x140236e3b
140236d82:	49 8b c7             	mov    %r15,%rax
140236d85:	48 2b c6             	sub    %rsi,%rax
140236d88:	48 83 f8 09          	cmp    $0x9,%rax
140236d8c:	0f 8c 99 00 00 00    	jl     0x140236e2b
140236d92:	48 8b d6             	mov    %rsi,%rdx
140236d95:	8b cf                	mov    %edi,%ecx
140236d97:	e8 24 a5 ff ff       	call   0x1402312c0
140236d9c:	48 83 c6 09          	add    $0x9,%rsi
140236da0:	44 8b eb             	mov    %ebx,%r13d
140236da3:	33 ed                	xor    %ebp,%ebp
140236da5:	eb 5d                	jmp    0x140236e04
140236da7:	33 ed                	xor    %ebp,%ebp
140236da9:	85 ff                	test   %edi,%edi
140236dab:	74 57                	je     0x140236e04
140236dad:	8b cf                	mov    %edi,%ecx
140236daf:	e8 9c 05 00 00       	call   0x140237350
140236db4:	8b e8                	mov    %eax,%ebp
140236db6:	8b 44 24 24          	mov    0x24(%rsp),%eax
140236dba:	ff c8                	dec    %eax
140236dbc:	03 c5                	add    %ebp,%eax
140236dbe:	89 44 24 20          	mov    %eax,0x20(%rsp)
140236dc2:	41 3b ec             	cmp    %r12d,%ebp
140236dc5:	77 7f                	ja     0x140236e46
140236dc7:	83 7c 24 30 00       	cmpl   $0x0,0x30(%rsp)
140236dcc:	76 1f                	jbe    0x140236ded
140236dce:	49 8b cf             	mov    %r15,%rcx
140236dd1:	8d 5d 01             	lea    0x1(%rbp),%ebx
140236dd4:	48 2b ce             	sub    %rsi,%rcx
140236dd7:	48 3b cb             	cmp    %rbx,%rcx
140236dda:	7c 4f                	jl     0x140236e2b
140236ddc:	0f ae e8             	lfence
140236ddf:	4c 8b c6             	mov    %rsi,%r8
140236de2:	8b d7                	mov    %edi,%edx
140236de4:	8b cd                	mov    %ebp,%ecx
140236de6:	e8 55 f6 ff ff       	call   0x140236440
140236deb:	eb 0f                	jmp    0x140236dfc
140236ded:	49 3b f7             	cmp    %r15,%rsi
140236df0:	74 39                	je     0x140236e2b
140236df2:	8d 47 30             	lea    0x30(%rdi),%eax
140236df5:	bb 01 00 00 00       	mov    $0x1,%ebx
140236dfa:	88 06                	mov    %al,(%rsi)
140236dfc:	44 8b ed             	mov    %ebp,%r13d
140236dff:	33 ed                	xor    %ebp,%ebp
140236e01:	48 03 f3             	add    %rbx,%rsi
140236e04:	8b 4c 24 28          	mov    0x28(%rsp),%ecx
140236e08:	83 6c 24 24 09       	subl   $0x9,0x24(%rsp)
140236e0d:	ff c9                	dec    %ecx
140236e0f:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
140236e13:	85 c9                	test   %ecx,%ecx
140236e15:	78 29                	js     0x140236e40
140236e17:	44 8b 5c 24 34       	mov    0x34(%rsp),%r11d
140236e1c:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140236e21:	48 8b 54 24 48       	mov    0x48(%rsp),%rdx
140236e26:	e9 85 fe ff ff       	jmp    0x140236cb0
140236e2b:	4d 89 3e             	mov    %r15,(%r14)
140236e2e:	41 c7 46 08 84 00 00 	movl   $0x84,0x8(%r14)
140236e35:	00
140236e36:	e9 dc 04 00 00       	jmp    0x140237317
140236e3b:	bd 09 00 00 00       	mov    $0x9,%ebp
140236e40:	8b 5c 24 20          	mov    0x20(%rsp),%ebx
140236e44:	eb 02                	jmp    0x140236e48
140236e46:	8b d8                	mov    %eax,%ebx
140236e48:	48 8d 0d b1 91 dc ff 	lea    -0x236e4f(%rip),%rcx        # 0x140000000
140236e4f:	8b 44 24 2c          	mov    0x2c(%rsp),%eax
140236e53:	85 c0                	test   %eax,%eax
140236e55:	0f 89 22 02 00 00    	jns    0x14023707d
140236e5b:	4c 8b 54 24 38       	mov    0x38(%rsp),%r10
140236e60:	0f ae e8             	lfence
140236e63:	85 ed                	test   %ebp,%ebp
140236e65:	0f 85 12 02 00 00    	jne    0x14023707d
140236e6b:	0f ae e8             	lfence
140236e6e:	99                   	cltd
140236e6f:	83 e2 0f             	and    $0xf,%edx
140236e72:	03 c2                	add    %edx,%eax
140236e74:	c1 f8 04             	sar    $0x4,%eax
140236e77:	f7 d8                	neg    %eax
140236e79:	4c 63 c8             	movslq %eax,%r9
140236e7c:	89 44 24 34          	mov    %eax,0x34(%rsp)
140236e80:	4c 89 4c 24 48       	mov    %r9,0x48(%rsp)
140236e85:	45 0f b6 84 09 30 ec 	movzbl 0xfaec30(%r9,%rcx,1),%r8d
140236e8c:	fa 00
140236e8e:	44 89 44 24 28       	mov    %r8d,0x28(%rsp)
140236e93:	41 81 f8 c8 00 00 00 	cmp    $0xc8,%r8d
140236e9a:	0f 83 dd 01 00 00    	jae    0x14023707d
140236ea0:	43 8d 14 c0          	lea    (%r8,%r8,8),%edx
140236ea4:	89 54 24 24          	mov    %edx,0x24(%rsp)
140236ea8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140236eaf:	00
140236eb0:	48 8d 1d 49 91 dc ff 	lea    -0x236eb7(%rip),%rbx        # 0x140000000
140236eb7:	41 0f b6 84 19 30 ec 	movzbl 0xfaec30(%r9,%rbx,1),%eax
140236ebe:	fa 00
140236ec0:	42 0f b7 8c 4b a0 eb 	movzwl 0xfaeba0(%rbx,%r9,2),%ecx
140236ec7:	fa 00
140236ec9:	2b c8                	sub    %eax,%ecx
140236ecb:	42 0f b7 84 4b a2 eb 	movzwl 0xfaeba2(%rbx,%r9,2),%eax
140236ed2:	fa 00
140236ed4:	41 03 c8             	add    %r8d,%ecx
140236ed7:	3b c8                	cmp    %eax,%ecx
140236ed9:	72 07                	jb     0x140236ee2
140236edb:	33 ff                	xor    %edi,%edi
140236edd:	e9 ca 00 00 00       	jmp    0x140236fac
140236ee2:	4c 8d 1c 49          	lea    (%rcx,%rcx,2),%r11
140236ee6:	49 c1 e2 08          	shl    $0x8,%r10
140236eea:	4a 8b 84 db c0 c3 1c 	mov    0x11cc3c0(%rbx,%r11,8),%rax
140236ef1:	01
140236ef2:	49 f7 e2             	mul    %r10
140236ef5:	4a 8b 84 db c8 c3 1c 	mov    0x11cc3c8(%rbx,%r11,8),%rax
140236efc:	01
140236efd:	48 8b ca             	mov    %rdx,%rcx
140236f00:	49 f7 e2             	mul    %r10
140236f03:	4c 8b c0             	mov    %rax,%r8
140236f06:	4c 8b ca             	mov    %rdx,%r9
140236f09:	4a 8b 84 db d0 c3 1c 	mov    0x11cc3d0(%rbx,%r11,8),%rax
140236f10:	01
140236f11:	49 03 c8             	add    %r8,%rcx
140236f14:	49 f7 e2             	mul    %r10
140236f17:	49 3b c8             	cmp    %r8,%rcx
140236f1a:	8b 4c 24 2c          	mov    0x2c(%rsp),%ecx
140236f1e:	48 8b f8             	mov    %rax,%rdi
140236f21:	49 13 f9             	adc    %r9,%rdi
140236f24:	49 b9 31 30 95 f8 88 	movabs $0x31680a88f8953031,%r9
140236f2b:	0a 68 31
140236f2e:	48 3b f8             	cmp    %rax,%rdi
140236f31:	8b 44 24 34          	mov    0x34(%rsp),%eax
140236f35:	48 83 d2 00          	adc    $0x0,%rdx
140236f39:	c1 e0 04             	shl    $0x4,%eax
140236f3c:	f7 d9                	neg    %ecx
140236f3e:	4c 8b c2             	mov    %rdx,%r8
140236f41:	2b c8                	sub    %eax,%ecx
140236f43:	49 8b c1             	mov    %r9,%rax
140236f46:	48 0f ad d7          	shrd   %cl,%rdx,%rdi
140236f4a:	49 d3 e8             	shr    %cl,%r8
140236f4d:	48 f7 e7             	mul    %rdi
140236f50:	48 b8 97 a5 b4 36 41 	movabs $0x89705f4136b4a597,%rax
140236f57:	5f 70 89
140236f5a:	48 8b ca             	mov    %rdx,%rcx
140236f5d:	48 f7 e7             	mul    %rdi
140236f60:	4c 8b d0             	mov    %rax,%r10
140236f63:	48 8b da             	mov    %rdx,%rbx
140236f66:	49 8b c1             	mov    %r9,%rax
140236f69:	49 f7 e0             	mul    %r8
140236f6c:	4c 8b c8             	mov    %rax,%r9
140236f6f:	4c 8b da             	mov    %rdx,%r11
140236f72:	48 b8 97 a5 b4 36 41 	movabs $0x89705f4136b4a597,%rax
140236f79:	5f 70 89
140236f7c:	49 f7 e0             	mul    %r8
140236f7f:	8b 54 24 24          	mov    0x24(%rsp),%edx
140236f83:	4d 8d 04 09          	lea    (%r9,%rcx,1),%r8
140236f87:	4b 8d 0c 10          	lea    (%r8,%r10,1),%rcx
140236f8b:	49 3b ca             	cmp    %r10,%rcx
140236f8e:	48 83 d0 00          	adc    $0x0,%rax
140236f92:	4d 3b c1             	cmp    %r9,%r8
140236f95:	44 8b 44 24 28       	mov    0x28(%rsp),%r8d
140236f9a:	49 13 c3             	adc    %r11,%rax
140236f9d:	48 03 c3             	add    %rbx,%rax
140236fa0:	48 c1 e8 1d          	shr    $0x1d,%rax
140236fa4:	69 c0 00 ca 9a 3b    	imul   $0x3b9aca00,%eax,%eax
140236faa:	2b f8                	sub    %eax,%edi
140236fac:	45 85 ed             	test   %r13d,%r13d
140236faf:	74 30                	je     0x140236fe1
140236fb1:	41 8d 5d 09          	lea    0x9(%r13),%ebx
140236fb5:	41 3b dc             	cmp    %r12d,%ebx
140236fb8:	0f 87 b6 00 00 00    	ja     0x140237074
140236fbe:	49 8b c7             	mov    %r15,%rax
140236fc1:	48 2b c6             	sub    %rsi,%rax
140236fc4:	48 83 f8 09          	cmp    $0x9,%rax
140236fc8:	0f 8c 5d fe ff ff    	jl     0x140236e2b
140236fce:	48 8b d6             	mov    %rsi,%rdx
140236fd1:	8b cf                	mov    %edi,%ecx
140236fd3:	e8 e8 a2 ff ff       	call   0x1402312c0