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
140236fd8:	48 83 c6 09          	add    $0x9,%rsi
140236fdc:	44 8b eb             	mov    %ebx,%r13d
140236fdf:	eb 64                	jmp    0x140237045
140236fe1:	85 ff                	test   %edi,%edi
140236fe3:	74 69                	je     0x14023704e
140236fe5:	8b cf                	mov    %edi,%ecx
140236fe7:	e8 64 03 00 00       	call   0x140237350
140236fec:	8b d8                	mov    %eax,%ebx
140236fee:	8b e8                	mov    %eax,%ebp
140236ff0:	2b 5c 24 24          	sub    0x24(%rsp),%ebx
140236ff4:	83 eb 0a             	sub    $0xa,%ebx
140236ff7:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
140236ffb:	41 3b c4             	cmp    %r12d,%eax
140236ffe:	77 7d                	ja     0x14023707d
140237000:	83 7c 24 30 00       	cmpl   $0x0,0x30(%rsp)
140237005:	76 23                	jbe    0x14023702a
140237007:	8d 58 01             	lea    0x1(%rax),%ebx
14023700a:	49 8b c7             	mov    %r15,%rax
14023700d:	48 2b c6             	sub    %rsi,%rax
140237010:	48 3b c3             	cmp    %rbx,%rax
140237013:	0f 8c 12 fe ff ff    	jl     0x140236e2b
140237019:	0f ae e8             	lfence
14023701c:	4c 8b c6             	mov    %rsi,%r8
14023701f:	8b d7                	mov    %edi,%edx
140237021:	8b cd                	mov    %ebp,%ecx
140237023:	e8 18 f4 ff ff       	call   0x140236440
140237028:	eb 13                	jmp    0x14023703d
14023702a:	49 3b f7             	cmp    %r15,%rsi
14023702d:	0f 84 f8 fd ff ff    	je     0x140236e2b
140237033:	8d 47 30             	lea    0x30(%rdi),%eax
140237036:	bb 01 00 00 00       	mov    $0x1,%ebx
14023703b:	88 06                	mov    %al,(%rsi)
14023703d:	44 8b ed             	mov    %ebp,%r13d
140237040:	33 ed                	xor    %ebp,%ebp
140237042:	48 03 f3             	add    %rbx,%rsi
140237045:	44 8b 44 24 28       	mov    0x28(%rsp),%r8d
14023704a:	8b 54 24 24          	mov    0x24(%rsp),%edx
14023704e:	41 ff c0             	inc    %r8d
140237051:	83 c2 09             	add    $0x9,%edx
140237054:	44 89 44 24 28       	mov    %r8d,0x28(%rsp)
140237059:	89 54 24 24          	mov    %edx,0x24(%rsp)
14023705d:	81 fa 08 07 00 00    	cmp    $0x708,%edx
140237063:	7d 14                	jge    0x140237079
140237065:	4c 8b 4c 24 48       	mov    0x48(%rsp),%r9
14023706a:	4c 8b 54 24 38       	mov    0x38(%rsp),%r10
14023706f:	e9 3c fe ff ff       	jmp    0x140236eb0
140237074:	bd 09 00 00 00       	mov    $0x9,%ebp
140237079:	8b 5c 24 20          	mov    0x20(%rsp),%ebx
14023707d:	33 c0                	xor    %eax,%eax
14023707f:	45 8b dc             	mov    %r12d,%r11d
140237082:	45 2b dd             	sub    %r13d,%r11d
140237085:	85 ed                	test   %ebp,%ebp
140237087:	0f 45 c7             	cmovne %edi,%eax
14023708a:	33 c9                	xor    %ecx,%ecx
14023708c:	44 8b c8             	mov    %eax,%r9d
14023708f:	41 3b eb             	cmp    %r11d,%ebp
140237092:	0f 86 ea 00 00 00    	jbe    0x140237182
140237098:	41 2b eb             	sub    %r11d,%ebp
14023709b:	0f 84 e1 00 00 00    	je     0x140237182
1402370a1:	44 8b c5             	mov    %ebp,%r8d
1402370a4:	0f 1f 40 00          	nopl   0x0(%rax)
1402370a8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1402370af:	00
1402370b0:	41 8b c9             	mov    %r9d,%ecx
1402370b3:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
1402370b8:	41 f7 e1             	mul    %r9d
1402370bb:	c1 ea 03             	shr    $0x3,%edx
1402370be:	44 8b ca             	mov    %edx,%r9d
1402370c1:	8d 04 92             	lea    (%rdx,%rdx,4),%eax
1402370c4:	03 c0                	add    %eax,%eax
1402370c6:	2b c8                	sub    %eax,%ecx
1402370c8:	49 83 e8 01          	sub    $0x1,%r8
1402370cc:	75 e2                	jne    0x1402370b0
1402370ce:	83 f9 05             	cmp    $0x5,%ecx
1402370d1:	0f 85 ab 00 00 00    	jne    0x140237182
1402370d7:	8b 4c 24 2c          	mov    0x2c(%rsp),%ecx
1402370db:	44 2b e3             	sub    %ebx,%r12d
1402370de:	41 03 cc             	add    %r12d,%ecx
1402370e1:	f7 d9                	neg    %ecx
1402370e3:	85 c9                	test   %ecx,%ecx
1402370e5:	7e 27                	jle    0x14023710e
1402370e7:	83 f9 3c             	cmp    $0x3c,%ecx
1402370ea:	7d 19                	jge    0x140237105
1402370ec:	b8 01 00 00 00       	mov    $0x1,%eax
1402370f1:	48 d3 e0             	shl    %cl,%rax
1402370f4:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
1402370f9:	48 ff c8             	dec    %rax
1402370fc:	48 85 c1             	test   %rax,%rcx
1402370ff:	74 12                	je     0x140237113
140237101:	32 c0                	xor    %al,%al
140237103:	eb 10                	jmp    0x140237115
140237105:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14023710a:	32 c0                	xor    %al,%al
14023710c:	eb 07                	jmp    0x140237115
14023710e:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140237113:	b0 01                	mov    $0x1,%al
140237115:	45 85 e4             	test   %r12d,%r12d
140237118:	79 61                	jns    0x14023717b
14023711a:	41 f7 dc             	neg    %r12d
14023711d:	84 c0                	test   %al,%al
14023711f:	74 58                	je     0x140237179
140237121:	48 bf cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rdi
140237128:	cc cc cc
14023712b:	45 33 d2             	xor    %r10d,%r10d
14023712e:	48 8b c7             	mov    %rdi,%rax
140237131:	48 f7 e1             	mul    %rcx
140237134:	4c 8b c2             	mov    %rdx,%r8
140237137:	49 c1 e8 02          	shr    $0x2,%r8
14023713b:	43 8d 04 80          	lea    (%r8,%r8,4),%eax
14023713f:	3b c8                	cmp    %eax,%ecx
140237141:	75 28                	jne    0x14023716b
140237143:	0f 1f 40 00          	nopl   0x0(%rax)
140237147:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14023714e:	00 00
140237150:	49 8b c8             	mov    %r8,%rcx
140237153:	48 8b c7             	mov    %rdi,%rax
140237156:	49 f7 e0             	mul    %r8
140237159:	41 ff c2             	inc    %r10d
14023715c:	4c 8b c2             	mov    %rdx,%r8
14023715f:	49 c1 e8 02          	shr    $0x2,%r8
140237163:	43 8d 04 80          	lea    (%r8,%r8,4),%eax
140237167:	3b c8                	cmp    %eax,%ecx
140237169:	74 e5                	je     0x140237150
14023716b:	45 3b d4             	cmp    %r12d,%r10d
14023716e:	72 09                	jb     0x140237179
140237170:	b0 01                	mov    $0x1,%al
140237172:	0f b6 f8             	movzbl %al,%edi
140237175:	ff c7                	inc    %edi
140237177:	eb 12                	jmp    0x14023718b
140237179:	32 c0                	xor    %al,%al
14023717b:	0f b6 f8             	movzbl %al,%edi
14023717e:	ff c7                	inc    %edi
140237180:	eb 09                	jmp    0x14023718b
140237182:	33 ff                	xor    %edi,%edi
140237184:	83 f9 05             	cmp    $0x5,%ecx
140237187:	40 0f 97 c7          	seta   %dil
14023718b:	45 85 ed             	test   %r13d,%r13d
14023718e:	74 42                	je     0x1402371d2
140237190:	49 8b c7             	mov    %r15,%rax
140237193:	41 8b eb             	mov    %r11d,%ebp
140237196:	48 2b c6             	sub    %rsi,%rax
140237199:	48 3b c5             	cmp    %rbp,%rax
14023719c:	0f 8c 89 fc ff ff    	jl     0x140236e2b
1402371a2:	45 85 c9             	test   %r9d,%r9d
1402371a5:	75 15                	jne    0x1402371bc
1402371a7:	44 8b c5             	mov    %ebp,%r8d
1402371aa:	ba 30 00 00 00       	mov    $0x30,%edx
1402371af:	48 8b ce             	mov    %rsi,%rcx
1402371b2:	e8 f9 84 ca 00       	call   0x140edf6b0
1402371b7:	48 03 f5             	add    %rbp,%rsi
1402371ba:	eb 59                	jmp    0x140237215
1402371bc:	0f ae e8             	lfence
1402371bf:	4c 8b c6             	mov    %rsi,%r8
1402371c2:	41 8b d1             	mov    %r9d,%edx
1402371c5:	41 8b cb             	mov    %r11d,%ecx
1402371c8:	e8 33 9f ff ff       	call   0x140231100
1402371cd:	48 03 f5             	add    %rbp,%rsi
1402371d0:	eb 43                	jmp    0x140237215
1402371d2:	83 7c 24 30 00       	cmpl   $0x0,0x30(%rsp)
1402371d7:	76 29                	jbe    0x140237202
1402371d9:	49 8b c7             	mov    %r15,%rax
1402371dc:	41 8d 6b 01          	lea    0x1(%r11),%ebp
1402371e0:	48 2b c6             	sub    %rsi,%rax
1402371e3:	48 3b c5             	cmp    %rbp,%rax
1402371e6:	0f 8c 3f fc ff ff    	jl     0x140236e2b
1402371ec:	0f ae e8             	lfence
1402371ef:	4c 8b c6             	mov    %rsi,%r8
1402371f2:	41 8b d1             	mov    %r9d,%edx
1402371f5:	41 8b cb             	mov    %r11d,%ecx
1402371f8:	e8 43 f2 ff ff       	call   0x140236440
1402371fd:	48 03 f5             	add    %rbp,%rsi
140237200:	eb 13                	jmp    0x140237215
140237202:	49 3b f7             	cmp    %r15,%rsi
140237205:	0f 84 20 fc ff ff    	je     0x140236e2b
14023720b:	41 80 c1 30          	add    $0x30,%r9b