140088b7e:	4c 8b c0             	mov    %rax,%r8
140088b81:	66 0f 7f 44 24 30    	movdqa %xmm0,0x30(%rsp)
140088b87:	0f 28 44 24 50       	movaps 0x50(%rsp),%xmm0
140088b8c:	89 28                	mov    %ebp,(%rax)
140088b8e:	66 0f 7f 44 24 50    	movdqa %xmm0,0x50(%rsp)
140088b94:	e8 37 fb ff ff       	call   0x1400886d0
140088b99:	48 8b 9c 24 b8 00 00 	mov    0xb8(%rsp),%rbx
140088ba0:	00
140088ba1:	48 83 c4 60          	add    $0x60,%rsp
140088ba5:	41 5f                	pop    %r15
140088ba7:	41 5e                	pop    %r14
140088ba9:	41 5d                	pop    %r13
140088bab:	41 5c                	pop    %r12
140088bad:	5f                   	pop    %rdi
140088bae:	5e                   	pop    %rsi
140088baf:	5d                   	pop    %rbp
140088bb0:	c3                   	ret
140088bb1:	cc                   	int3
140088bb2:	cc                   	int3
140088bb3:	cc                   	int3
140088bb4:	cc                   	int3
140088bb5:	cc                   	int3
140088bb6:	cc                   	int3
140088bb7:	cc                   	int3
140088bb8:	cc                   	int3
140088bb9:	cc                   	int3
140088bba:	cc                   	int3
140088bbb:	cc                   	int3
140088bbc:	cc                   	int3
140088bbd:	cc                   	int3
140088bbe:	cc                   	int3
140088bbf:	cc                   	int3
140088bc0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140088bc5:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140088bca:	41 56                	push   %r14
140088bcc:	48 83 ec 20          	sub    $0x20,%rsp
140088bd0:	42 8d 34 02          	lea    (%rdx,%r8,1),%esi
140088bd4:	4c 8b f1             	mov    %rcx,%r14
140088bd7:	3b d6                	cmp    %esi,%edx
140088bd9:	7f 3d                	jg     0x140088c18
140088bdb:	83 fe 0f             	cmp    $0xf,%esi
140088bde:	7f 38                	jg     0x140088c18
140088be0:	48 63 c2             	movslq %edx,%rax
140088be3:	ba 30 00 00 00       	mov    $0x30,%edx
140088be8:	48 63 de             	movslq %esi,%rbx
140088beb:	48 03 c8             	add    %rax,%rcx
140088bee:	4c 8b c3             	mov    %rbx,%r8
140088bf1:	4c 2b c0             	sub    %rax,%r8
140088bf4:	e8 07 8e 25 00       	call   0x1402e1a00
140088bf9:	49 8d 46 02          	lea    0x2(%r14),%rax
140088bfd:	66 42 c7 04 33 2e 30 	movw   $0x302e,(%rbx,%r14,1)
140088c04:	48 03 c3             	add    %rbx,%rax
140088c07:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140088c0c:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140088c11:	48 83 c4 20          	add    $0x20,%rsp
140088c15:	41 5e                	pop    %r14
140088c17:	c3                   	ret
140088c18:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
140088c1d:	85 f6                	test   %esi,%esi
140088c1f:	7e 30                	jle    0x140088c51
140088c21:	83 fe 0f             	cmp    $0xf,%esi
140088c24:	7f 70                	jg     0x140088c96
140088c26:	48 63 c6             	movslq %esi,%rax
140088c29:	48 63 fa             	movslq %edx,%rdi
140088c2c:	4c 8b c7             	mov    %rdi,%r8
140088c2f:	4c 2b c0             	sub    %rax,%r8
140088c32:	48 8d 1c 08          	lea    (%rax,%rcx,1),%rbx
140088c36:	48 8d 4b 01          	lea    0x1(%rbx),%rcx
140088c3a:	48 8b d3             	mov    %rbx,%rdx
140088c3d:	e8 1e 87 25 00       	call   0x1402e1360
140088c42:	48 8d 47 01          	lea    0x1(%rdi),%rax
140088c46:	c6 03 2e             	movb   $0x2e,(%rbx)
140088c49:	49 03 c6             	add    %r14,%rax
140088c4c:	e9 17 01 00 00       	jmp    0x140088d68
140088c51:	83 fe fc             	cmp    $0xfffffffc,%esi
140088c54:	7e 40                	jle    0x140088c96
140088c56:	48 63 fa             	movslq %edx,%rdi
140088c59:	48 83 c1 02          	add    $0x2,%rcx
140088c5d:	f7 de                	neg    %esi
140088c5f:	4c 8b c7             	mov    %rdi,%r8
140088c62:	48 63 de             	movslq %esi,%rbx
140088c65:	49 8b d6             	mov    %r14,%rdx
140088c68:	48 03 cb             	add    %rbx,%rcx
140088c6b:	e8 f0 86 25 00       	call   0x1402e1360
140088c70:	49 8d 4e 02          	lea    0x2(%r14),%rcx
140088c74:	66 41 c7 06 30 2e    	movw   $0x2e30,(%r14)
140088c7a:	4c 8b c3             	mov    %rbx,%r8
140088c7d:	ba 30 00 00 00       	mov    $0x30,%edx
140088c82:	e8 79 8d 25 00       	call   0x1402e1a00
140088c87:	48 8d 47 02          	lea    0x2(%rdi),%rax
140088c8b:	48 03 c3             	add    %rbx,%rax
140088c8e:	49 03 c6             	add    %r14,%rax
140088c91:	e9 d2 00 00 00       	jmp    0x140088d68
140088c96:	48 8d 79 01          	lea    0x1(%rcx),%rdi
140088c9a:	83 fa 01             	cmp    $0x1,%edx
140088c9d:	74 1d                	je     0x140088cbc
140088c9f:	48 63 da             	movslq %edx,%rbx
140088ca2:	48 83 c1 02          	add    $0x2,%rcx
140088ca6:	48 8b d7             	mov    %rdi,%rdx
140088ca9:	4c 8d 43 ff          	lea    -0x1(%rbx),%r8
140088cad:	e8 ae 86 25 00       	call   0x1402e1360
140088cb2:	c6 07 2e             	movb   $0x2e,(%rdi)
140088cb5:	48 8d 7b 01          	lea    0x1(%rbx),%rdi
140088cb9:	49 03 fe             	add    %r14,%rdi
140088cbc:	8d 4e ff             	lea    -0x1(%rsi),%ecx
140088cbf:	c6 07 65             	movb   $0x65,(%rdi)
140088cc2:	85 c9                	test   %ecx,%ecx
140088cc4:	b8 2d 00 00 00       	mov    $0x2d,%eax
140088cc9:	ba 2b 00 00 00       	mov    $0x2b,%edx
140088cce:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140088cd4:	0f 49 c2             	cmovns %edx,%eax
140088cd7:	44 2b c6             	sub    %esi,%r8d
140088cda:	85 c9                	test   %ecx,%ecx
140088cdc:	88 47 01             	mov    %al,0x1(%rdi)
140088cdf:	44 0f 49 c1          	cmovns %ecx,%r8d
140088ce3:	41 83 f8 0a          	cmp    $0xa,%r8d
140088ce7:	73 0a                	jae    0x140088cf3
140088ce9:	c6 47 02 30          	movb   $0x30,0x2(%rdi)
140088ced:	4c 8d 4f 03          	lea    0x3(%rdi),%r9
140088cf1:	eb 69                	jmp    0x140088d5c
140088cf3:	41 83 f8 64          	cmp    $0x64,%r8d
140088cf7:	73 24                	jae    0x140088d1d
140088cf9:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
140088cfe:	4c 8d 4f 03          	lea    0x3(%rdi),%r9
140088d02:	41 f7 e0             	mul    %r8d
140088d05:	c1 ea 03             	shr    $0x3,%edx
140088d08:	8d 42 30             	lea    0x30(%rdx),%eax
140088d0b:	88 47 02             	mov    %al,0x2(%rdi)
140088d0e:	0f b6 c2             	movzbl %dl,%eax
140088d11:	c0 e2 02             	shl    $0x2,%dl
140088d14:	02 c2                	add    %dl,%al
140088d16:	02 c0                	add    %al,%al
140088d18:	44 2a c0             	sub    %al,%r8b
140088d1b:	eb 3f                	jmp    0x140088d5c
140088d1d:	b8 1f 85 eb 51       	mov    $0x51eb851f,%eax
140088d22:	4c 8d 4f 04          	lea    0x4(%rdi),%r9
140088d26:	41 f7 e0             	mul    %r8d
140088d29:	c1 ea 05             	shr    $0x5,%edx
140088d2c:	8d 42 30             	lea    0x30(%rdx),%eax
140088d2f:	88 47 02             	mov    %al,0x2(%rdi)
140088d32:	6b c2 9c             	imul   $0xffffff9c,%edx,%eax
140088d35:	44 03 c0             	add    %eax,%r8d
140088d38:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
140088d3d:	41 f7 e0             	mul    %r8d
140088d40:	c1 ea 03             	shr    $0x3,%edx
140088d43:	0f b6 c2             	movzbl %dl,%eax
140088d46:	c0 e0 02             	shl    $0x2,%al
140088d49:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
140088d4c:	02 c9                	add    %cl,%cl
140088d4e:	44 2a c1             	sub    %cl,%r8b
140088d51:	41 80 c0 30          	add    $0x30,%r8b
140088d55:	45 88 01             	mov    %r8b,(%r9)
140088d58:	44 0f b6 c2          	movzbl %dl,%r8d
140088d5c:	41 80 c0 30          	add    $0x30,%r8b
140088d60:	49 8d 41 01          	lea    0x1(%r9),%rax
140088d64:	44 88 47 03          	mov    %r8b,0x3(%rdi)
140088d68:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
140088d6d:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140088d72:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140088d77:	48 83 c4 20          	add    $0x20,%rsp
140088d7b:	41 5e                	pop    %r14
140088d7d:	c3                   	ret
140088d7e:	cc                   	int3
140088d7f:	cc                   	int3
140088d80:	40 53                	rex push %rbx
140088d82:	48 83 ec 20          	sub    $0x20,%rsp
140088d86:	48 8b d9             	mov    %rcx,%rbx
140088d89:	48 8b 49 38          	mov    0x38(%rcx),%rcx
140088d8d:	48 85 c9             	test   %rcx,%rcx
140088d90:	74 14                	je     0x140088da6
140088d92:	48 8b 01             	mov    (%rcx),%rax
140088d95:	48 3b cb             	cmp    %rbx,%rcx
140088d98:	0f 95 c2             	setne  %dl
140088d9b:	ff 50 20             	call   *0x20(%rax)
140088d9e:	48 c7 43 38 00 00 00 	movq   $0x0,0x38(%rbx)
140088da5:	00
140088da6:	48 83 c4 20          	add    $0x20,%rsp
140088daa:	5b                   	pop    %rbx
140088dab:	c3                   	ret
140088dac:	cc                   	int3
140088dad:	cc                   	int3
140088dae:	cc                   	int3
140088daf:	cc                   	int3
140088db0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140088db5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140088dba:	57                   	push   %rdi
140088dbb:	48 83 ec 20          	sub    $0x20,%rsp
140088dbf:	48 8b fa             	mov    %rdx,%rdi
140088dc2:	48 8b f1             	mov    %rcx,%rsi
140088dc5:	49 8b 89 b8 00 00 00 	mov    0xb8(%r9),%rcx
140088dcc:	49 8b d9             	mov    %r9,%rbx
140088dcf:	49 0f af f8          	imul   %r8,%rdi
140088dd3:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
140088dda:	48 85 c9             	test   %rcx,%rcx
140088ddd:	75 12                	jne    0x140088df1
140088ddf:	48 8b cf             	mov    %rdi,%rcx
140088de2:	48 83 c1 01          	add    $0x1,%rcx
140088de6:	48 0f 42 c8          	cmovb  %rax,%rcx
140088dea:	e8 2d a0 23 00       	call   0x1402c2e1c
140088def:	eb 17                	jmp    0x140088e08
140088df1:	49 8b 91 c0 00 00 00 	mov    0xc0(%r9),%rdx
140088df8:	48 03 d7             	add    %rdi,%rdx
140088dfb:	48 83 c2 01          	add    $0x1,%rdx
140088dff:	48 0f 42 d0          	cmovb  %rax,%rdx
140088e03:	e8 bc 8e 23 00       	call   0x1402c1cc4
140088e08:	48 8b c8             	mov    %rax,%rcx
140088e0b:	48 89 83 b8 00 00 00 	mov    %rax,0xb8(%rbx)
140088e12:	48 03 8b c0 00 00 00 	add    0xc0(%rbx),%rcx
140088e19:	4c 8b c7             	mov    %rdi,%r8
140088e1c:	48 8b d6             	mov    %rsi,%rdx
140088e1f:	e8 3c 85 25 00       	call   0x1402e1360
140088e24:	48 01 bb c0 00 00 00 	add    %rdi,0xc0(%rbx)
140088e2b:	48 8b 83 b8 00 00 00 	mov    0xb8(%rbx),%rax
140088e32:	48 8b 8b c0 00 00 00 	mov    0xc0(%rbx),%rcx
140088e39:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140088e3e:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140088e43:	c6 04 01 00          	movb   $0x0,(%rcx,%rax,1)
140088e47:	48 8b c7             	mov    %rdi,%rax
140088e4a:	48 83 c4 20          	add    $0x20,%rsp
140088e4e:	5f                   	pop    %rdi
140088e4f:	c3                   	ret
140088e50:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140088e55:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140088e5a:	57                   	push   %rdi
140088e5b:	48 83 ec 40          	sub    $0x40,%rsp
140088e5f:	0f 57 c0             	xorps  %xmm0,%xmm0
140088e62:	0f 29 74 24 30       	movaps %xmm6,0x30(%rsp)
140088e67:	f2 48 0f 2a c2       	cvtsi2sd %rdx,%xmm0
140088e6c:	49 8b d9             	mov    %r9,%rbx
140088e6f:	49 8b f0             	mov    %r8,%rsi
140088e72:	48 8b f9             	mov    %rcx,%rdi
140088e75:	c7 81 90 00 00 00 01 	movl   $0x1,0x90(%rcx)
140088e7c:	00 00 00
140088e7f:	0f 29 7c 24 20       	movaps %xmm7,0x20(%rsp)
140088e84:	e8 23 73 25 00       	call   0x1402e01ac
140088e89:	0f 28 f0             	movaps %xmm0,%xmm6
140088e8c:	0f 57 c0             	xorps  %xmm0,%xmm0
140088e8f:	f2 48 0f 2a c3       	cvtsi2sd %rbx,%xmm0
140088e94:	e8 13 73 25 00       	call   0x1402e01ac
140088e99:	f2 0f 10 3d 47 1e 32 	movsd  0x321e47(%rip),%xmm7        # 0x1403aace8
140088ea0:	00
140088ea1:	f2 0f 58 f0          	addsd  %xmm0,%xmm6
140088ea5:	33 c9                	xor    %ecx,%ecx
140088ea7:	48 bb 00 00 00 00 00 	movabs $0x8000000000000000,%rbx
140088eae:	00 00 80
140088eb1:	66 0f 2f f7          	comisd %xmm7,%xmm6
140088eb5:	72 0d                	jb     0x140088ec4
140088eb7:	f2 0f 5c f7          	subsd  %xmm7,%xmm6
140088ebb:	66 0f 2f f7          	comisd %xmm7,%xmm6
140088ebf:	73 03                	jae    0x140088ec4
140088ec1:	48 8b cb             	mov    %rbx,%rcx
140088ec4:	f2 48 0f 2c c6       	cvttsd2si %xmm6,%rax
140088ec9:	0f 57 c0             	xorps  %xmm0,%xmm0
140088ecc:	48 03 c1             	add    %rcx,%rax
140088ecf:	f2 48 0f 2a c6       	cvtsi2sd %rsi,%xmm0
140088ed4:	48 89 47 78          	mov    %rax,0x78(%rdi)
140088ed8:	e8 cf 72 25 00       	call   0x1402e01ac
140088edd:	0f 28 f0             	movaps %xmm0,%xmm6
140088ee0:	0f 57 c0             	xorps  %xmm0,%xmm0
140088ee3:	f2 48 0f 2a 44 24 70 	cvtsi2sdq 0x70(%rsp),%xmm0
140088eea:	e8 bd 72 25 00       	call   0x1402e01ac
140088eef:	f2 0f 58 f0          	addsd  %xmm0,%xmm6
140088ef3:	33 c9                	xor    %ecx,%ecx
140088ef5:	66 0f 2f f7          	comisd %xmm7,%xmm6
140088ef9:	72 0d                	jb     0x140088f08
140088efb:	f2 0f 5c f7          	subsd  %xmm7,%xmm6
140088eff:	66 0f 2f f7          	comisd %xmm7,%xmm6
140088f03:	73 03                	jae    0x140088f08
140088f05:	48 8b cb             	mov    %rbx,%rcx
140088f08:	f2 48 0f 2c c6       	cvttsd2si %xmm6,%rax
140088f0d:	48 8d 57 18          	lea    0x18(%rdi),%rdx
140088f11:	48 03 c1             	add    %rcx,%rax
140088f14:	48 89 47 20          	mov    %rax,0x20(%rdi)
140088f18:	48 8b 0f             	mov    (%rdi),%rcx
140088f1b:	e8 60 77 ff ff       	call   0x140080680
140088f20:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140088f25:	33 c0                	xor    %eax,%eax
140088f27:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
140088f2c:	0f 28 74 24 30       	movaps 0x30(%rsp),%xmm6
140088f31:	0f 28 7c 24 20       	movaps 0x20(%rsp),%xmm7
140088f36:	48 83 c4 40          	add    $0x40,%rsp
140088f3a:	5f                   	pop    %rdi
140088f3b:	c3                   	ret
140088f3c:	cc                   	int3
140088f3d:	cc                   	int3
140088f3e:	cc                   	int3
140088f3f:	cc                   	int3
140088f40:	48 8b c4             	mov    %rsp,%rax
140088f43:	4c 89 48 20          	mov    %r9,0x20(%rax)
140088f47:	4c 89 40 18          	mov    %r8,0x18(%rax)
140088f4b:	48 89 48 08          	mov    %rcx,0x8(%rax)
140088f4f:	53                   	push   %rbx
140088f50:	56                   	push   %rsi
140088f51:	57                   	push   %rdi
140088f52:	41 56                	push   %r14
140088f54:	41 57                	push   %r15
140088f56:	48 83 ec 60          	sub    $0x60,%rsp
140088f5a:	4d 8b f1             	mov    %r9,%r14
140088f5d:	49 8b d8             	mov    %r8,%rbx
140088f60:	48 8b fa             	mov    %rdx,%rdi
140088f63:	48 8b f1             	mov    %rcx,%rsi
140088f66:	0f 57 c0             	xorps  %xmm0,%xmm0
140088f69:	f3 0f 7f 40 a0       	movdqu %xmm0,-0x60(%rax)
140088f6e:	4c 8b 78 28          	mov    0x28(%rax),%r15
140088f72:	49 8b 47 08          	mov    0x8(%r15),%rax
140088f76:	48 85 c0             	test   %rax,%rax
140088f79:	74 04                	je     0x140088f7f
140088f7b:	f0 ff 40 08          	lock incl 0x8(%rax)
140088f7f:	49 8b 07             	mov    (%r15),%rax
140088f82:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140088f87:	49 8b 47 08          	mov    0x8(%r15),%rax
140088f8b:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140088f90:	f3 0f 7f 44 24 38    	movdqu %xmm0,0x38(%rsp)
140088f96:	49 8b 41 08          	mov    0x8(%r9),%rax
140088f9a:	48 85 c0             	test   %rax,%rax
140088f9d:	74 04                	je     0x140088fa3
140088f9f:	f0 ff 40 08          	lock incl 0x8(%rax)
140088fa3:	49 8b 01             	mov    (%r9),%rax
140088fa6:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140088fab:	49 8b 41 08          	mov    0x8(%r9),%rax
140088faf:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140088fb4:	f3 0f 7f 44 24 48    	movdqu %xmm0,0x48(%rsp)
140088fba:	49 8b 40 08          	mov    0x8(%r8),%rax
140088fbe:	48 85 c0             	test   %rax,%rax
140088fc1:	74 04                	je     0x140088fc7
140088fc3:	f0 ff 40 08          	lock incl 0x8(%rax)
140088fc7:	49 8b 00             	mov    (%r8),%rax
140088fca:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140088fcf:	49 8b 40 08          	mov    0x8(%r8),%rax
140088fd3:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140088fd8:	4c 8d 4c 24 28       	lea    0x28(%rsp),%r9
140088fdd:	4c 8d 44 24 38       	lea    0x38(%rsp),%r8
140088fe2:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx
140088fe7:	e8 b4 72 ff ff       	call   0x1400802a0
140088fec:	90                   	nop
140088fed:	48 8d 05 cc fe 31 00 	lea    0x31fecc(%rip),%rax        # 0x1403a8ec0
140088ff4:	48 89 06             	mov    %rax,(%rsi)
140088ff7:	48 8d 8e 98 00 00 00 	lea    0x98(%rsi),%rcx
140088ffe:	48 8b d7             	mov    %rdi,%rdx
140089001:	e8 1a 55 ff ff       	call   0x14007e520
140089006:	83 3d 4f 28 35 00 00 	cmpl   $0x0,0x35284f(%rip)        # 0x1403db85c
14008900d:	75 10                	jne    0x14008901f
14008900f:	b9 03 00 00 00       	mov    $0x3,%ecx
140089014:	e8 8f 76 01 00       	call   0x1400a06a8
140089019:	ff 05 3d 28 35 00    	incl   0x35283d(%rip)        # 0x1403db85c
14008901f:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140089023:	bf ff ff ff ff       	mov    $0xffffffff,%edi
140089028:	48 85 db             	test   %rbx,%rbx
14008902b:	74 2a                	je     0x140089057
14008902d:	8b c7                	mov    %edi,%eax