140062b64:	8b c2                	mov    %edx,%eax
140062b66:	c1 e8 1f             	shr    $0x1f,%eax
140062b69:	03 d0                	add    %eax,%edx
140062b6b:	69 c2 4f c5 fd ff    	imul   $0xfffdc54f,%edx,%eax
140062b71:	44 8d 0c 95 00 00 00 	lea    0x0(,%rdx,4),%r9d
140062b78:	00
140062b79:	03 d8                	add    %eax,%ebx
140062b7b:	81 fb b0 3a 02 00    	cmp    $0x23ab0,%ebx
140062b81:	75 0a                	jne    0x140062b8d
140062b83:	bb ac 8e 00 00       	mov    $0x8eac,%ebx
140062b88:	44 8b c1             	mov    %ecx,%r8d
140062b8b:	eb 21                	jmp    0x140062bae
140062b8d:	b8 fb 81 ac e5       	mov    $0xe5ac81fb,%eax
140062b92:	f7 eb                	imul   %ebx
140062b94:	44 8d 04 13          	lea    (%rbx,%rdx,1),%r8d
140062b98:	41 c1 f8 0f          	sar    $0xf,%r8d
140062b9c:	41 8b c0             	mov    %r8d,%eax
140062b9f:	c1 e8 1f             	shr    $0x1f,%eax
140062ba2:	44 03 c0             	add    %eax,%r8d
140062ba5:	41 69 c0 54 71 ff ff 	imul   $0xffff7154,%r8d,%eax
140062bac:	03 d8                	add    %eax,%ebx
140062bae:	b8 73 b0 6d 16       	mov    $0x166db073,%eax
140062bb3:	f7 eb                	imul   %ebx
140062bb5:	c1 fa 07             	sar    $0x7,%edx
140062bb8:	8b c2                	mov    %edx,%eax
140062bba:	c1 e8 1f             	shr    $0x1f,%eax
140062bbd:	03 d0                	add    %eax,%edx
140062bbf:	69 c2 4b fa ff ff    	imul   $0xfffffa4b,%edx,%eax
140062bc5:	03 d8                	add    %eax,%ebx
140062bc7:	43 8d 04 01          	lea    (%r9,%r8,1),%eax
140062bcb:	44 6b c0 19          	imul   $0x19,%eax,%r8d
140062bcf:	44 03 c2             	add    %edx,%r8d
140062bd2:	41 c1 e0 02          	shl    $0x2,%r8d
140062bd6:	81 fb b4 05 00 00    	cmp    $0x5b4,%ebx
140062bdc:	75 07                	jne    0x140062be5
140062bde:	bb 6d 01 00 00       	mov    $0x16d,%ebx
140062be3:	eb 1c                	jmp    0x140062c01
140062be5:	b8 b1 f9 8c b3       	mov    $0xb38cf9b1,%eax
140062bea:	f7 eb                	imul   %ebx
140062bec:	8d 0c 13             	lea    (%rbx,%rdx,1),%ecx
140062bef:	c1 f9 08             	sar    $0x8,%ecx
140062bf2:	8b c1                	mov    %ecx,%eax
140062bf4:	c1 e8 1f             	shr    $0x1f,%eax
140062bf7:	03 c8                	add    %eax,%ecx
140062bf9:	69 c1 93 fe ff ff    	imul   $0xfffffe93,%ecx,%eax
140062bff:	03 d8                	add    %eax,%ebx
140062c01:	66 44 03 c1          	add    %cx,%r8w
140062c05:	41 ba 01 00 00 00    	mov    $0x1,%r10d
140062c0b:	b8 41 06 00 00       	mov    $0x641,%eax
140062c10:	45 8b ca             	mov    %r10d,%r9d
140062c13:	66 44 03 c0          	add    %ax,%r8w
140062c17:	48 8b cf             	mov    %rdi,%rcx
140062c1a:	41 0f b7 d0          	movzwl %r8w,%edx
140062c1e:	41 03 da             	add    %r10d,%ebx
140062c21:	45 8b c2             	mov    %r10d,%r8d
140062c24:	e8 1b 01 00 00       	call   0x140062d44
140062c29:	8b c3                	mov    %ebx,%eax
140062c2b:	c1 f8 05             	sar    $0x5,%eax
140062c2e:	83 7f 14 00          	cmpl   $0x0,0x14(%rdi)
140062c32:	0f b6 d0             	movzbl %al,%edx
140062c35:	8d 4a 02             	lea    0x2(%rdx),%ecx
140062c38:	89 4f 04             	mov    %ecx,0x4(%rdi)
140062c3b:	74 33                	je     0x140062c70
140062c3d:	48 8d 15 bc d3 f9 ff 	lea    -0x62c44(%rip),%rdx        # 0x140000000
140062c44:	3b 9c 8a 20 c7 07 00 	cmp    0x7c720(%rdx,%rcx,4),%ebx
140062c4b:	7e 11                	jle    0x140062c5e
140062c4d:	ff c1                	inc    %ecx
140062c4f:	48 63 c1             	movslq %ecx,%rax
140062c52:	89 4f 04             	mov    %ecx,0x4(%rdi)
140062c55:	3b 9c 82 20 c7 07 00 	cmp    0x7c720(%rdx,%rax,4),%ebx
140062c5c:	7f ef                	jg     0x140062c4d
140062c5e:	8d 41 ff             	lea    -0x1(%rcx),%eax
140062c61:	89 47 04             	mov    %eax,0x4(%rdi)
140062c64:	48 63 c1             	movslq %ecx,%rax
140062c67:	2b 9c 82 1c c7 07 00 	sub    0x7c71c(%rdx,%rax,4),%ebx
140062c6e:	eb 34                	jmp    0x140062ca4
140062c70:	48 8b c2             	mov    %rdx,%rax
140062c73:	48 8d 15 86 d3 f9 ff 	lea    -0x62c7a(%rip),%rdx        # 0x140000000
140062c7a:	3b 9c 82 f0 c6 07 00 	cmp    0x7c6f0(%rdx,%rax,4),%ebx
140062c81:	7e 11                	jle    0x140062c94
140062c83:	ff c1                	inc    %ecx
140062c85:	48 63 c1             	movslq %ecx,%rax
140062c88:	89 4f 04             	mov    %ecx,0x4(%rdi)
140062c8b:	3b 9c 82 e8 c6 07 00 	cmp    0x7c6e8(%rdx,%rax,4),%ebx
140062c92:	7f ef                	jg     0x140062c83
140062c94:	8d 41 ff             	lea    -0x1(%rcx),%eax
140062c97:	89 47 04             	mov    %eax,0x4(%rdi)
140062c9a:	48 63 c1             	movslq %ecx,%rax
140062c9d:	2b 9c 82 e4 c6 07 00 	sub    0x7c6e4(%rdx,%rax,4),%ebx
140062ca4:	0f b6 c3             	movzbl %bl,%eax
140062ca7:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140062cac:	89 47 08             	mov    %eax,0x8(%rdi)
140062caf:	48 83 c4 20          	add    $0x20,%rsp
140062cb3:	5f                   	pop    %rdi
140062cb4:	c3                   	ret
140062cb5:	90                   	nop
140062cb6:	90                   	nop
140062cb7:	90                   	nop
140062cb8:	44 8b 09             	mov    (%rcx),%r9d
140062cbb:	4c 8d 15 26 9a 01 00 	lea    0x19a26(%rip),%r10        # 0x14007c6e8
140062cc2:	4c 63 41 04          	movslq 0x4(%rcx),%r8
140062cc6:	41 81 e9 41 06 00 00 	sub    $0x641,%r9d
140062ccd:	4c 8b d9             	mov    %rcx,%r11
140062cd0:	b8 1f 85 eb 51       	mov    $0x51eb851f,%eax
140062cd5:	41 f7 e9             	imul   %r9d
140062cd8:	41 69 c9 6d 01 00 00 	imul   $0x16d,%r9d,%ecx
140062cdf:	47 8b 14 82          	mov    (%r10,%r8,4),%r10d
140062ce3:	c1 fa 07             	sar    $0x7,%edx
140062ce6:	8b c2                	mov    %edx,%eax
140062ce8:	c1 e8 1f             	shr    $0x1f,%eax
140062ceb:	03 d0                	add    %eax,%edx
140062ced:	b8 1f 85 eb 51       	mov    $0x51eb851f,%eax
140062cf2:	44 03 d2             	add    %edx,%r10d
140062cf5:	41 f7 e9             	imul   %r9d
140062cf8:	44 03 d1             	add    %ecx,%r10d
140062cfb:	41 8b c1             	mov    %r9d,%eax
140062cfe:	c1 fa 05             	sar    $0x5,%edx
140062d01:	8b ca                	mov    %edx,%ecx
140062d03:	c1 e9 1f             	shr    $0x1f,%ecx
140062d06:	03 d1                	add    %ecx,%edx
140062d08:	44 2b d2             	sub    %edx,%r10d
140062d0b:	99                   	cltd
140062d0c:	83 e2 03             	and    $0x3,%edx
140062d0f:	03 c2                	add    %edx,%eax
140062d11:	c1 f8 02             	sar    $0x2,%eax
140062d14:	44 03 d0             	add    %eax,%r10d
140062d17:	41 83 7b 14 00       	cmpl   $0x0,0x14(%r11)
140062d1c:	74 0a                	je     0x140062d28
140062d1e:	41 83 7b 04 02       	cmpl   $0x2,0x4(%r11)
140062d23:	7e 03                	jle    0x140062d28
140062d25:	41 ff c2             	inc    %r10d
140062d28:	41 8b 43 0c          	mov    0xc(%r11),%eax
140062d2c:	41 8b 4b 08          	mov    0x8(%r11),%ecx
140062d30:	41 03 ca             	add    %r10d,%ecx
140062d33:	8d 0c 49             	lea    (%rcx,%rcx,2),%ecx
140062d36:	8d 49 fd             	lea    -0x3(%rcx),%ecx
140062d39:	8d 0c c8             	lea    (%rax,%rcx,8),%ecx
140062d3c:	6b c1 3c             	imul   $0x3c,%ecx,%eax
140062d3f:	41 03 43 10          	add    0x10(%r11),%eax
140062d43:	c3                   	ret
140062d44:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140062d49:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140062d4e:	57                   	push   %rdi
140062d4f:	48 83 ec 20          	sub    $0x20,%rsp
140062d53:	41 8b f9             	mov    %r9d,%edi
140062d56:	41 8b f0             	mov    %r8d,%esi
140062d59:	48 8b d9             	mov    %rcx,%rbx
140062d5c:	85 d2                	test   %edx,%edx
140062d5e:	74 05                	je     0x140062d65
140062d60:	e8 9f 00 00 00       	call   0x140062e04
140062d65:	85 f6                	test   %esi,%esi
140062d67:	74 03                	je     0x140062d6c
140062d69:	89 73 04             	mov    %esi,0x4(%rbx)
140062d6c:	4c 63 43 04          	movslq 0x4(%rbx),%r8
140062d70:	b9 01 00 00 00       	mov    $0x1,%ecx
140062d75:	48 8d 53 14          	lea    0x14(%rbx),%rdx
140062d79:	85 ff                	test   %edi,%edi
140062d7b:	74 39                	je     0x140062db6
140062d7d:	41 83 f8 02          	cmp    $0x2,%r8d
140062d81:	75 0a                	jne    0x140062d8d
140062d83:	83 3a 00             	cmpl   $0x0,(%rdx)
140062d86:	74 05                	je     0x140062d8d
140062d88:	44 8b c9             	mov    %ecx,%r9d
140062d8b:	eb 03                	jmp    0x140062d90
140062d8d:	45 33 c9             	xor    %r9d,%r9d
140062d90:	4c 8d 15 c1 99 01 00 	lea    0x199c1(%rip),%r10        # 0x14007c758
140062d97:	47 8b 14 82          	mov    (%r10,%r8,4),%r10d
140062d9b:	43 8d 04 0a          	lea    (%r10,%r9,1),%eax
140062d9f:	3b f8                	cmp    %eax,%edi
140062da1:	7e 4d                	jle    0x140062df0
140062da3:	41 83 f8 02          	cmp    $0x2,%r8d
140062da7:	75 05                	jne    0x140062dae
140062da9:	83 3a 00             	cmpl   $0x0,(%rdx)
140062dac:	75 02                	jne    0x140062db0
140062dae:	33 c9                	xor    %ecx,%ecx
140062db0:	42 8d 3c 11          	lea    (%rcx,%r10,1),%edi
140062db4:	eb 3a                	jmp    0x140062df0
140062db6:	41 83 f8 02          	cmp    $0x2,%r8d
140062dba:	75 0a                	jne    0x140062dc6
140062dbc:	83 3a 00             	cmpl   $0x0,(%rdx)
140062dbf:	74 05                	je     0x140062dc6
140062dc1:	44 8b c9             	mov    %ecx,%r9d
140062dc4:	eb 03                	jmp    0x140062dc9
140062dc6:	45 33 c9             	xor    %r9d,%r9d
140062dc9:	8b 7b 08             	mov    0x8(%rbx),%edi
140062dcc:	4c 8d 15 85 99 01 00 	lea    0x19985(%rip),%r10        # 0x14007c758
140062dd3:	47 8b 14 82          	mov    (%r10,%r8,4),%r10d
140062dd7:	43 8d 04 0a          	lea    (%r10,%r9,1),%eax
140062ddb:	3b f8                	cmp    %eax,%edi
140062ddd:	7e 11                	jle    0x140062df0
140062ddf:	41 83 f8 02          	cmp    $0x2,%r8d
140062de3:	75 05                	jne    0x140062dea
140062de5:	83 3a 00             	cmpl   $0x0,(%rdx)
140062de8:	75 02                	jne    0x140062dec
140062dea:	33 c9                	xor    %ecx,%ecx
140062dec:	42 8d 3c 11          	lea    (%rcx,%r10,1),%edi
140062df0:	89 7b 08             	mov    %edi,0x8(%rbx)
140062df3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140062df8:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140062dfd:	48 83 c4 20          	add    $0x20,%rsp
140062e01:	5f                   	pop    %rdi
140062e02:	c3                   	ret
140062e03:	90                   	nop
140062e04:	89 11                	mov    %edx,(%rcx)
140062e06:	44 8b ca             	mov    %edx,%r9d
140062e09:	f6 c2 03             	test   $0x3,%dl
140062e0c:	75 43                	jne    0x140062e51
140062e0e:	41 bb 1f 85 eb 51    	mov    $0x51eb851f,%r11d
140062e14:	41 8b c3             	mov    %r11d,%eax
140062e17:	41 f7 e9             	imul   %r9d
140062e1a:	c1 fa 05             	sar    $0x5,%edx
140062e1d:	44 8b c2             	mov    %edx,%r8d
140062e20:	41 c1 e8 1f          	shr    $0x1f,%r8d
140062e24:	41 03 d0             	add    %r8d,%edx
140062e27:	6b d2 64             	imul   $0x64,%edx,%edx
140062e2a:	44 3b ca             	cmp    %edx,%r9d
140062e2d:	75 1b                	jne    0x140062e4a
140062e2f:	41 8b c3             	mov    %r11d,%eax
140062e32:	41 f7 e9             	imul   %r9d
140062e35:	c1 fa 07             	sar    $0x7,%edx
140062e38:	8b c2                	mov    %edx,%eax
140062e3a:	c1 e8 1f             	shr    $0x1f,%eax
140062e3d:	03 d0                	add    %eax,%edx
140062e3f:	69 c2 90 01 00 00    	imul   $0x190,%edx,%eax
140062e45:	44 3b c8             	cmp    %eax,%r9d
140062e48:	75 07                	jne    0x140062e51
140062e4a:	b8 01 00 00 00       	mov    $0x1,%eax
140062e4f:	eb 02                	jmp    0x140062e53
140062e51:	33 c0                	xor    %eax,%eax
140062e53:	89 41 14             	mov    %eax,0x14(%rcx)
140062e56:	c3                   	ret
140062e57:	90                   	nop
140062e58:	8b c2                	mov    %edx,%eax
140062e5a:	81 e1 ff ff ff 1f    	and    $0x1fffffff,%ecx
140062e60:	48 c1 e1 20          	shl    $0x20,%rcx
140062e64:	48 0b c8             	or     %rax,%rcx
140062e67:	48 b8 a7 be d7 05 c2 	movabs $0xe5109ec205d7bea7,%rax
140062e6e:	9e 10 e5
140062e71:	48 81 c1 00 a3 e1 11 	add    $0x11e1a300,%rcx
140062e78:	48 f7 e1             	mul    %rcx
140062e7b:	48 c1 ea 1d          	shr    $0x1d,%rdx
140062e7f:	8b c2                	mov    %edx,%eax
140062e81:	c3                   	ret
140062e82:	90                   	nop
140062e83:	90                   	nop
140062e84:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140062e89:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140062e8e:	55                   	push   %rbp
140062e8f:	48 8d ac 24 e0 f9 ff 	lea    -0x620(%rsp),%rbp
140062e96:	ff
140062e97:	48 81 ec 20 07 00 00 	sub    $0x720,%rsp
140062e9e:	48 8b 05 1b f8 05 00 	mov    0x5f81b(%rip),%rax        # 0x1400c26c0
140062ea5:	48 33 c4             	xor    %rsp,%rax
140062ea8:	48 89 85 10 06 00 00 	mov    %rax,0x610(%rbp)
140062eaf:	48 8b d9             	mov    %rcx,%rbx
140062eb2:	ba 04 01 00 00       	mov    $0x104,%edx
140062eb7:	48 8d 8d f0 01 00 00 	lea    0x1f0(%rbp),%rcx
140062ebe:	ff 15 4c c4 00 00    	call   *0xc44c(%rip)        # 0x14006f310
140062ec4:	33 ff                	xor    %edi,%edi
140062ec6:	85 c0                	test   %eax,%eax
140062ec8:	0f 84 e7 00 00 00    	je     0x140062fb5
140062ece:	48 8d 85 f0 01 00 00 	lea    0x1f0(%rbp),%rax
140062ed5:	49 83 c8 ff          	or     $0xffffffffffffffff,%r8
140062ed9:	4c 8d 0d c8 98 01 00 	lea    0x198c8(%rip),%r9        # 0x14007c7a8
140062ee0:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140062ee5:	ba 04 01 00 00       	mov    $0x104,%edx
140062eea:	48 8d 8d 00 04 00 00 	lea    0x400(%rbp),%rcx
140062ef1:	e8 a6 03 fa ff       	call   0x14000329c
140062ef6:	33 d2                	xor    %edx,%edx
140062ef8:	66 89 7d e0          	mov    %di,-0x20(%rbp)
140062efc:	41 b8 06 02 00 00    	mov    $0x206,%r8d
140062f02:	48 8d 4d e2          	lea    -0x1e(%rbp),%rcx
140062f06:	e8 0b 74 00 00       	call   0x14006a316
140062f0b:	4c 8b cb             	mov    %rbx,%r9
140062f0e:	4c 8d 05 b3 98 01 00 	lea    0x198b3(%rip),%r8        # 0x14007c7c8
140062f15:	ba 04 01 00 00       	mov    $0x104,%edx
140062f1a:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140062f1e:	e8 cd 8d ff ff       	call   0x14005bcf0
140062f23:	85 c0                	test   %eax,%eax
140062f25:	0f 88 8f 00 00 00    	js     0x140062fba
140062f2b:	33 d2                	xor    %edx,%edx
140062f2d:	44 8d 47 64          	lea    0x64(%rdi),%r8d
140062f31:	48 8d 4c 24 74       	lea    0x74(%rsp),%rcx
140062f36:	e8 db 73 00 00       	call   0x14006a316
140062f3b:	33 c0                	xor    %eax,%eax
140062f3d:	c7 44 24 70 68 00 00 	movl   $0x68,0x70(%rsp)
140062f44:	00
140062f45:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140062f4a:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
140062f4e:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
140062f53:	0f 57 c0             	xorps  %xmm0,%xmm0
140062f56:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140062f5b:	48 8d 8d 00 04 00 00 	lea    0x400(%rbp),%rcx
140062f62:	48 8d 44 24 70       	lea    0x70(%rsp),%rax
140062f67:	45 33 c9             	xor    %r9d,%r9d
140062f6a:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140062f6f:	45 33 c0             	xor    %r8d,%r8d
140062f72:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140062f77:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
140062f7c:	c7 44 24 28 20 00 00 	movl   $0x4000020,0x28(%rsp)
140062f83:	04
140062f84:	c7 44 24 20 01 00 00 	movl   $0x1,0x20(%rsp)
140062f8b:	00
140062f8c:	0f 11 44 24 50       	movups %xmm0,0x50(%rsp)
140062f91:	ff 15 69 c2 00 00    	call   *0xc269(%rip)        # 0x14006f200
140062f97:	85 c0                	test   %eax,%eax
140062f99:	74 1a                	je     0x140062fb5
140062f9b:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140062fa0:	ff 15 72 c1 00 00    	call   *0xc172(%rip)        # 0x14006f118
140062fa6:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
140062fab:	ff 15 67 c1 00 00    	call   *0xc167(%rip)        # 0x14006f118
140062fb1:	8b c7                	mov    %edi,%eax
140062fb3:	eb 05                	jmp    0x140062fba
140062fb5:	b8 05 40 00 80       	mov    $0x80004005,%eax
140062fba:	48 8b 8d 10 06 00 00 	mov    0x610(%rbp),%rcx
140062fc1:	48 33 cc             	xor    %rsp,%rcx
140062fc4:	e8 77 6a 00 00       	call   0x140069a40
140062fc9:	4c 8d 9c 24 20 07 00 	lea    0x720(%rsp),%r11
140062fd0:	00
140062fd1:	49 8b 5b 18          	mov    0x18(%r11),%rbx
140062fd5:	49 8b 7b 20          	mov    0x20(%r11),%rdi
140062fd9:	49 8b e3             	mov    %r11,%rsp
140062fdc:	5d                   	pop    %rbp
140062fdd:	c3                   	ret
140062fde:	90                   	nop
140062fdf:	90                   	nop
140062fe0:	4c 8b dc             	mov    %rsp,%r11
140062fe3:	49 89 5b 08          	mov    %rbx,0x8(%r11)
140062fe7:	49 89 6b 18          	mov    %rbp,0x18(%r11)
140062feb:	49 89 73 20          	mov    %rsi,0x20(%r11)
140062fef:	57                   	push   %rdi
140062ff0:	41 56                	push   %r14
140062ff2:	41 57                	push   %r15
140062ff4:	48 83 ec 60          	sub    $0x60,%rsp
140062ff8:	48 83 22 00          	andq   $0x0,(%rdx)
140062ffc:	33 c0                	xor    %eax,%eax
140062ffe:	49 83 20 00          	andq   $0x0,(%r8)
140063002:	0f 57 c0             	xorps  %xmm0,%xmm0
140063005:	49 21 43 b0          	and    %rax,-0x50(%r11)
140063009:	4d 8b f0             	mov    %r8,%r14
14006300c:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
140063011:	49 89 43 d8          	mov    %rax,-0x28(%r11)
140063015:	44 8d 40 04          	lea    0x4(%rax),%r8d
140063019:	4c 8b fa             	mov    %rdx,%r15
14006301c:	c7 44 24 40 18 00 00 	movl   $0x18,0x40(%rsp)
140063023:	00
140063024:	48 8b e9             	mov    %rcx,%rbp
140063027:	c7 44 24 50 01 00 00 	movl   $0x1,0x50(%rsp)
14006302e:	00
14006302f:	45 33 c9             	xor    %r9d,%r9d