140996b31:	ff 83 a0 02 00 00    	incl   0x2a0(%rbx)
140996b37:	49 ff c2             	inc    %r10
140996b3a:	41 ff c1             	inc    %r9d
140996b3d:	83 fa 02             	cmp    $0x2,%edx
140996b40:	7c 0c                	jl     0x140996b4e
140996b42:	8d 42 fe             	lea    -0x2(%rdx),%eax
140996b45:	99                   	cltd
140996b46:	2b c2                	sub    %edx,%eax
140996b48:	d1 f8                	sar    $1,%eax
140996b4a:	8b d0                	mov    %eax,%edx
140996b4c:	eb ca                	jmp    0x140996b18
140996b4e:	41 8b d4             	mov    %r12d,%edx
140996b51:	44 0f b6 44 24 21    	movzbl 0x21(%rsp),%r8d
140996b57:	48 8d 4c 24 21       	lea    0x21(%rsp),%rcx
140996b5c:	0f b6 44 24 20       	movzbl 0x20(%rsp),%eax
140996b61:	88 44 24 21          	mov    %al,0x21(%rsp)
140996b65:	45 3a d8             	cmp    %r8b,%r11b
140996b68:	74 18                	je     0x140996b82
140996b6a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140996b70:	48 ff c1             	inc    %rcx
140996b73:	41 0f b6 c0          	movzbl %r8b,%eax
140996b77:	44 0f b6 01          	movzbl (%rcx),%r8d
140996b7b:	88 01                	mov    %al,(%rcx)
140996b7d:	45 3a d8             	cmp    %r8b,%r11b
140996b80:	75 ee                	jne    0x140996b70
140996b82:	48 8d 44 24 20       	lea    0x20(%rsp),%rax
140996b87:	44 88 44 24 20       	mov    %r8b,0x20(%rsp)
140996b8c:	2b c8                	sub    %eax,%ecx
140996b8e:	41 ff c1             	inc    %r9d
140996b91:	8d 41 01             	lea    0x1(%rcx),%eax
140996b94:	66 42 89 04 57       	mov    %ax,(%rdi,%r10,2)
140996b99:	49 ff c2             	inc    %r10
140996b9c:	48 63 c1             	movslq %ecx,%rax
140996b9f:	ff 84 83 a4 02 00 00 	incl   0x2a4(%rbx,%rax,4)
140996ba6:	8b 4b 6c             	mov    0x6c(%rbx),%ecx
140996ba9:	ff c6                	inc    %esi
140996bab:	3b f1                	cmp    %ecx,%esi
140996bad:	0f 8c 2d ff ff ff    	jl     0x140996ae0
140996bb3:	45 8d 7d 01          	lea    0x1(%r13),%r15d
140996bb7:	85 d2                	test   %edx,%edx
140996bb9:	7e 41                	jle    0x140996bfc
140996bbb:	49 63 c1             	movslq %r9d,%rax
140996bbe:	ff ca                	dec    %edx
140996bc0:	48 8d 0c 47          	lea    (%rdi,%rax,2),%rcx
140996bc4:	f6 c2 01             	test   $0x1,%dl
140996bc7:	74 0d                	je     0x140996bd6
140996bc9:	66 c7 01 01 00       	movw   $0x1,(%rcx)
140996bce:	ff 83 a4 02 00 00    	incl   0x2a4(%rbx)
140996bd4:	eb 0a                	jmp    0x140996be0
140996bd6:	66 44 89 21          	mov    %r12w,(%rcx)
140996bda:	ff 83 a0 02 00 00    	incl   0x2a0(%rbx)
140996be0:	41 ff c1             	inc    %r9d
140996be3:	83 fa 02             	cmp    $0x2,%edx
140996be6:	7c 10                	jl     0x140996bf8
140996be8:	8d 42 fe             	lea    -0x2(%rdx),%eax
140996beb:	99                   	cltd
140996bec:	2b c2                	sub    %edx,%eax
140996bee:	d1 f8                	sar    $1,%eax
140996bf0:	8b d0                	mov    %eax,%edx
140996bf2:	48 83 c1 02          	add    $0x2,%rcx
140996bf6:	eb cc                	jmp    0x140996bc4
140996bf8:	45 8d 7d 01          	lea    0x1(%r13),%r15d
140996bfc:	49 63 c1             	movslq %r9d,%rax
140996bff:	66 44 89 3c 47       	mov    %r15w,(%rdi,%rax,2)
140996c04:	41 8d 41 01          	lea    0x1(%r9),%eax
140996c08:	42 ff 84 ab a4 02 00 	incl   0x2a4(%rbx,%r13,4)
140996c0f:	00
140996c10:	89 83 9c 02 00 00    	mov    %eax,0x29c(%rbx)
140996c16:	48 8b 8c 24 20 01 00 	mov    0x120(%rsp),%rcx
140996c1d:	00
140996c1e:	48 33 cc             	xor    %rsp,%rcx
140996c21:	e8 da 48 48 00       	call   0x140e1b500
140996c26:	4c 8d 9c 24 30 01 00 	lea    0x130(%rsp),%r11
140996c2d:	00
140996c2e:	49 8b 5b 38          	mov    0x38(%r11),%rbx
140996c32:	49 8b 6b 40          	mov    0x40(%r11),%rbp
140996c36:	49 8b 73 48          	mov    0x48(%r11),%rsi
140996c3a:	49 8b e3             	mov    %r11,%rsp
140996c3d:	41 5f                	pop    %r15
140996c3f:	41 5e                	pop    %r14
140996c41:	41 5d                	pop    %r13
140996c43:	41 5c                	pop    %r12
140996c45:	5f                   	pop    %rdi
140996c46:	c3                   	ret
140996c47:	cc                   	int3
140996c48:	cc                   	int3
140996c49:	cc                   	int3
140996c4a:	cc                   	int3
140996c4b:	cc                   	int3
140996c4c:	cc                   	int3
140996c4d:	cc                   	int3
140996c4e:	cc                   	int3
140996c4f:	cc                   	int3
140996c50:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140996c55:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140996c5a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140996c5f:	57                   	push   %rdi
140996c60:	41 54                	push   %r12
140996c62:	41 55                	push   %r13
140996c64:	41 56                	push   %r14
140996c66:	41 57                	push   %r15
140996c68:	48 81 ec b0 03 00 00 	sub    $0x3b0,%rsp
140996c6f:	48 8b 05 8a 22 a2 00 	mov    0xa2228a(%rip),%rax        # 0x1413b8f00
140996c76:	48 33 c4             	xor    %rsp,%rax
140996c79:	48 89 84 24 88 03 00 	mov    %rax,0x388(%rsp)
140996c80:	00
140996c81:	83 b9 90 02 00 00 03 	cmpl   $0x3,0x290(%rcx)
140996c88:	48 8b d9             	mov    %rcx,%rbx
140996c8b:	48 8b 71 48          	mov    0x48(%rcx),%rsi
140996c8f:	48 89 74 24 68       	mov    %rsi,0x68(%rsp)
140996c94:	0f 29 bc 24 90 03 00 	movaps %xmm7,0x390(%rsp)
140996c9b:	00
140996c9c:	48 89 4c 24 60       	mov    %rcx,0x60(%rsp)
140996ca1:	7c 2b                	jl     0x140996cce
140996ca3:	b9 02 00 00 00       	mov    $0x2,%ecx
140996ca8:	e8 e3 bf 49 00       	call   0x140e32c90
140996cad:	44 8b 8b 9c 02 00 00 	mov    0x29c(%rbx),%r9d
140996cb4:	48 8d 15 25 fc 6c 00 	lea    0x6cfc25(%rip),%rdx        # 0x1410668e0
140996cbb:	44 8b 43 6c          	mov    0x6c(%rbx),%r8d
140996cbf:	48 8b c8             	mov    %rax,%rcx
140996cc2:	8b 43 7c             	mov    0x7c(%rbx),%eax
140996cc5:	89 44 24 20          	mov    %eax,0x20(%rsp)
140996cc9:	e8 a2 8e 9e ff       	call   0x14037fb70
140996cce:	8b 43 7c             	mov    0x7c(%rbx),%eax
140996cd1:	48 8d bb 4c 93 00 00 	lea    0x934c(%rbx),%rdi
140996cd8:	83 c0 02             	add    $0x2,%eax
140996cdb:	bd 06 00 00 00       	mov    $0x6,%ebp
140996ce0:	4c 63 e0             	movslq %eax,%r12
140996ce3:	4c 89 a4 24 48 03 00 	mov    %r12,0x348(%rsp)
140996cea:	00
140996ceb:	89 44 24 4c          	mov    %eax,0x4c(%rsp)
140996cef:	90                   	nop
140996cf0:	4d 85 e4             	test   %r12,%r12
140996cf3:	7e 0d                	jle    0x140996d02
140996cf5:	4d 8b c4             	mov    %r12,%r8
140996cf8:	b2 0f                	mov    $0xf,%dl
140996cfa:	48 8b cf             	mov    %rdi,%rcx
140996cfd:	e8 ae 89 54 00       	call   0x140edf6b0
140996d02:	48 81 c7 02 01 00 00 	add    $0x102,%rdi
140996d09:	48 83 ed 01          	sub    $0x1,%rbp
140996d0d:	75 e1                	jne    0x140996cf0
140996d0f:	39 ab 9c 02 00 00    	cmp    %ebp,0x29c(%rbx)
140996d15:	7f 0a                	jg     0x140996d21
140996d17:	b9 b9 0b 00 00       	mov    $0xbb9,%ecx
140996d1c:	e8 1f e1 ff ff       	call   0x140994e40
140996d21:	44 8b 9b 9c 02 00 00 	mov    0x29c(%rbx),%r11d
140996d28:	45 33 f6             	xor    %r14d,%r14d
140996d2b:	44 89 5c 24 50       	mov    %r11d,0x50(%rsp)
140996d30:	41 81 fb c8 00 00 00 	cmp    $0xc8,%r11d
140996d37:	7d 07                	jge    0x140996d40
140996d39:	b8 02 00 00 00       	mov    $0x2,%eax
140996d3e:	eb 30                	jmp    0x140996d70
140996d40:	41 81 fb 58 02 00 00 	cmp    $0x258,%r11d
140996d47:	7d 07                	jge    0x140996d50
140996d49:	b8 03 00 00 00       	mov    $0x3,%eax
140996d4e:	eb 20                	jmp    0x140996d70
140996d50:	41 81 fb b0 04 00 00 	cmp    $0x4b0,%r11d
140996d57:	7d 07                	jge    0x140996d60
140996d59:	b8 04 00 00 00       	mov    $0x4,%eax
140996d5e:	eb 10                	jmp    0x140996d70
140996d60:	41 81 fb 60 09 00 00 	cmp    $0x960,%r11d
140996d67:	41 8b c6             	mov    %r14d,%eax
140996d6a:	0f 9d c0             	setge  %al
140996d6d:	83 c0 05             	add    $0x5,%eax
140996d70:	f2 0f 10 3d 80 8a 64 	movsd  0x648a80(%rip),%xmm7        # 0x140fdf7f8
140996d77:	00
140996d78:	44 8b c8             	mov    %eax,%r9d
140996d7b:	4c 69 c0 02 01 00 00 	imul   $0x102,%rax,%r8
140996d82:	0f 29 b4 24 a0 03 00 	movaps %xmm6,0x3a0(%rsp)
140996d89:	00
140996d8a:	89 44 24 40          	mov    %eax,0x40(%rsp)
140996d8e:	45 8b d6             	mov    %r14d,%r10d
140996d91:	49 81 c0 4a 92 00 00 	add    $0x924a,%r8
140996d98:	89 44 24 44          	mov    %eax,0x44(%rsp)
140996d9c:	4c 03 c3             	add    %rbx,%r8
140996d9f:	44 89 74 24 48       	mov    %r14d,0x48(%rsp)
140996da4:	4c 89 44 24 70       	mov    %r8,0x70(%rsp)
140996da9:	4d 8b ee             	mov    %r14,%r13
140996dac:	48 89 84 24 c8 02 00 	mov    %rax,0x2c8(%rsp)
140996db3:	00
140996db4:	48 8b c8             	mov    %rax,%rcx
140996db7:	48 89 84 24 70 03 00 	mov    %rax,0x370(%rsp)
140996dbe:	00
140996dbf:	41 8b f6             	mov    %r14d,%esi
140996dc2:	0f 1f 40 00          	nopl   0x0(%rax)
140996dc6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
140996dcd:	00 00 00
140996dd0:	41 8b c3             	mov    %r11d,%eax
140996dd3:	41 8d 6a ff          	lea    -0x1(%r10),%ebp
140996dd7:	99                   	cltd
140996dd8:	49 8d 7d ff          	lea    -0x1(%r13),%rdi
140996ddc:	41 f7 f9             	idiv   %r9d
140996ddf:	45 8b fe             	mov    %r14d,%r15d
140996de2:	85 c0                	test   %eax,%eax
140996de4:	7e 2f                	jle    0x140996e15
140996de6:	8b 54 24 4c          	mov    0x4c(%rsp),%edx
140996dea:	48 8d 8b a0 02 00 00 	lea    0x2a0(%rbx),%rcx
140996df1:	ff ca                	dec    %edx
140996df3:	48 8d 0c b9          	lea    (%rcx,%rdi,4),%rcx
140996df7:	3b ea                	cmp    %edx,%ebp
140996df9:	7d 12                	jge    0x140996e0d
140996dfb:	44 03 79 04          	add    0x4(%rcx),%r15d
140996dff:	48 83 c1 04          	add    $0x4,%rcx
140996e03:	ff c5                	inc    %ebp
140996e05:	48 ff c7             	inc    %rdi
140996e08:	44 3b f8             	cmp    %eax,%r15d
140996e0b:	7c ea                	jl     0x140996df7
140996e0d:	48 8b 8c 24 70 03 00 	mov    0x370(%rsp),%rcx
140996e14:	00
140996e15:	41 3b ea             	cmp    %r10d,%ebp
140996e18:	7e 32                	jle    0x140996e4c
140996e1a:	48 3b 8c 24 c8 02 00 	cmp    0x2c8(%rsp),%rcx
140996e21:	00
140996e22:	74 28                	je     0x140996e4c
140996e24:	41 83 f9 01          	cmp    $0x1,%r9d
140996e28:	74 22                	je     0x140996e4c
140996e2a:	8b c6                	mov    %esi,%eax
140996e2c:	25 01 00 00 80       	and    $0x80000001,%eax
140996e31:	7d 07                	jge    0x140996e3a
140996e33:	ff c8                	dec    %eax
140996e35:	83 c8 fe             	or     $0xfffffffe,%eax
140996e38:	ff c0                	inc    %eax
140996e3a:	83 f8 01             	cmp    $0x1,%eax
140996e3d:	75 0d                	jne    0x140996e4c
140996e3f:	44 2b bc bb a0 02 00 	sub    0x2a0(%rbx,%rdi,4),%r15d
140996e46:	00
140996e47:	ff cd                	dec    %ebp
140996e49:	48 ff cf             	dec    %rdi
140996e4c:	83 bb 90 02 00 00 03 	cmpl   $0x3,0x290(%rbx)
140996e53:	7c 62                	jl     0x140996eb7
140996e55:	66 0f 6e 8b 9c 02 00 	movd   0x29c(%rbx),%xmm1
140996e5c:	00
140996e5d:	b9 02 00 00 00       	mov    $0x2,%ecx
140996e62:	66 41 0f 6e c7       	movd   %r15d,%xmm0
140996e67:	0f 5b c0             	cvtdq2ps %xmm0,%xmm0
140996e6a:	0f 5b c9             	cvtdq2ps %xmm1,%xmm1
140996e6d:	0f 5a f0             	cvtps2pd %xmm0,%xmm6
140996e70:	0f 5a c1             	cvtps2pd %xmm1,%xmm0
140996e73:	f2 0f 59 f7          	mulsd  %xmm7,%xmm6
140996e77:	f2 0f 5e f0          	divsd  %xmm0,%xmm6
140996e7b:	e8 10 be 49 00       	call   0x140e32c90
140996e80:	44 8b 4c 24 48       	mov    0x48(%rsp),%r9d
140996e85:	48 8d 15 94 fa 6c 00 	lea    0x6cfa94(%rip),%rdx        # 0x141066920
140996e8c:	44 8b 44 24 44       	mov    0x44(%rsp),%r8d
140996e91:	48 8b c8             	mov    %rax,%rcx
140996e94:	f2 0f 11 74 24 30    	movsd  %xmm6,0x30(%rsp)
140996e9a:	44 89 7c 24 28       	mov    %r15d,0x28(%rsp)
140996e9f:	89 6c 24 20          	mov    %ebp,0x20(%rsp)
140996ea3:	e8 c8 8c 9e ff       	call   0x14037fb70
140996ea8:	4c 8b 44 24 70       	mov    0x70(%rsp),%r8
140996ead:	44 8b 4c 24 44       	mov    0x44(%rsp),%r9d
140996eb2:	44 8b 5c 24 50       	mov    0x50(%rsp),%r11d
140996eb7:	49 8b c6             	mov    %r14,%rax
140996eba:	4d 85 e4             	test   %r12,%r12
140996ebd:	7e 1d                	jle    0x140996edc
140996ebf:	90                   	nop
140996ec0:	49 3b c5             	cmp    %r13,%rax
140996ec3:	7c 09                	jl     0x140996ece
140996ec5:	48 3b c7             	cmp    %rdi,%rax
140996ec8:	7f 04                	jg     0x140996ece
140996eca:	32 c9                	xor    %cl,%cl
140996ecc:	eb 02                	jmp    0x140996ed0
140996ece:	b1 0f                	mov    $0xf,%cl
140996ed0:	41 88 0c 00          	mov    %cl,(%r8,%rax,1)
140996ed4:	48 ff c0             	inc    %rax
140996ed7:	49 3b c4             	cmp    %r12,%rax
140996eda:	7c e4                	jl     0x140996ec0
140996edc:	48 8b 8c 24 70 03 00 	mov    0x370(%rsp),%rcx
140996ee3:	00
140996ee4:	44 8d 55 01          	lea    0x1(%rbp),%r10d
140996ee8:	48 ff c9             	dec    %rcx
140996eeb:	44 89 54 24 48       	mov    %r10d,0x48(%rsp)
140996ef0:	41 ff c9             	dec    %r9d
140996ef3:	48 89 8c 24 70 03 00 	mov    %rcx,0x370(%rsp)
140996efa:	00
140996efb:	49 81 e8 02 01 00 00 	sub    $0x102,%r8
140996f02:	44 89 4c 24 44       	mov    %r9d,0x44(%rsp)
140996f07:	45 2b df             	sub    %r15d,%r11d
140996f0a:	4c 89 44 24 70       	mov    %r8,0x70(%rsp)
140996f0f:	ff c6                	inc    %esi
140996f11:	44 89 5c 24 50       	mov    %r11d,0x50(%rsp)
140996f16:	4c 8d 6f 01          	lea    0x1(%rdi),%r13
140996f1a:	45 85 c9             	test   %r9d,%r9d
140996f1d:	0f 8f ad fe ff ff    	jg     0x140996dd0
140996f23:	8b 4c 24 40          	mov    0x40(%rsp),%ecx
140996f27:	4c 8d ab 4c 93 00 00 	lea    0x934c(%rbx),%r13
140996f2e:	0f 28 bc 24 90 03 00 	movaps 0x390(%rsp),%xmm7
140996f35:	00
140996f36:	8b e9                	mov    %ecx,%ebp
140996f38:	0f 28 b4 24 a0 03 00 	movaps 0x3a0(%rsp),%xmm6
140996f3f:	00
140996f40:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140996f45:	48 8d 04 8d 00 00 00 	lea    0x0(,%rcx,4),%rax
140996f4c:	00
140996f4d:	44 89 74 24 48       	mov    %r14d,0x48(%rsp)
140996f52:	48 89 84 24 50 03 00 	mov    %rax,0x350(%rsp)
140996f59:	00
140996f5a:	48 89 4c 24 70       	mov    %rcx,0x70(%rsp)
140996f5f:	90                   	nop
140996f60:	4c 8b c0             	mov    %rax,%r8
140996f63:	48 8d 8c 24 58 03 00 	lea    0x358(%rsp),%rcx
140996f6a:	00
140996f6b:	49 83 e0 fc          	and    $0xfffffffffffffffc,%r8
140996f6f:	33 d2                	xor    %edx,%edx
140996f71:	e8 3a 87 54 00       	call   0x140edf6b0
140996f76:	48 8d bb 88 b1 00 00 	lea    0xb188(%rbx),%rdi
140996f7d:	4c 8b fd             	mov    %rbp,%r15
140996f80:	4d 85 e4             	test   %r12,%r12
140996f83:	7e 1b                	jle    0x140996fa0
140996f85:	4d 8b c4             	mov    %r12,%r8
140996f88:	33 d2                	xor    %edx,%edx
140996f8a:	49 c1 e0 02          	shl    $0x2,%r8
140996f8e:	48 8b cf             	mov    %rdi,%rcx
140996f91:	e8 1a 87 54 00       	call   0x140edf6b0
140996f96:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
140996f9d:	00 00 00
140996fa0:	48 81 c7 08 04 00 00 	add    $0x408,%rdi
140996fa7:	49 83 ef 01          	sub    $0x1,%r15
140996fab:	75 d3                	jne    0x140996f80
140996fad:	8b 54 24 40          	mov    0x40(%rsp),%edx
140996fb1:	83 fa 06             	cmp    $0x6,%edx
140996fb4:	75 70                	jne    0x140997026
140996fb6:	4d 85 e4             	test   %r12,%r12
140996fb9:	7e 6b                	jle    0x140997026
140996fbb:	49 c7 c1 b4 6c ff ff 	mov    $0xffffffffffff6cb4,%r9
140996fc2:	4c 8d 83 bc c9 00 00 	lea    0xc9bc(%rbx),%r8
140996fc9:	4c 2b cb             	sub    %rbx,%r9
140996fcc:	49 8b d5             	mov    %r13,%rdx
140996fcf:	90                   	nop
140996fd0:	0f b6 02             	movzbl (%rdx),%eax
140996fd3:	4d 8d 40 10          	lea    0x10(%r8),%r8
140996fd7:	0f b6 8a 02 01 00 00 	movzbl 0x102(%rdx),%ecx
140996fde:	48 8d 52 01          	lea    0x1(%rdx),%rdx
140996fe2:	c1 e1 10             	shl    $0x10,%ecx
140996fe5:	0b c8                	or     %eax,%ecx
140996fe7:	41 89 48 ec          	mov    %ecx,-0x14(%r8)
140996feb:	0f b6 82 03 02 00 00 	movzbl 0x203(%rdx),%eax
140996ff2:	0f b6 8a 05 03 00 00 	movzbl 0x305(%rdx),%ecx
140996ff9:	c1 e1 10             	shl    $0x10,%ecx
140996ffc:	0b c8                	or     %eax,%ecx
140996ffe:	41 89 48 f0          	mov    %ecx,-0x10(%r8)
140997002:	0f b6 82 07 04 00 00 	movzbl 0x407(%rdx),%eax
140997009:	0f b6 8a 09 05 00 00 	movzbl 0x509(%rdx),%ecx
140997010:	c1 e1 10             	shl    $0x10,%ecx
140997013:	0b c8                	or     %eax,%ecx
140997015:	49 8d 04 11          	lea    (%r9,%rdx,1),%rax
140997019:	41 89 48 f4          	mov    %ecx,-0xc(%r8)
14099701d:	49 3b c4             	cmp    %r12,%rax
140997020:	7c ae                	jl     0x140996fd0
140997022:	8b 54 24 40          	mov    0x40(%rsp),%edx