140018ca3:	66 83 7c 43 fe 54    	cmpw   $0x54,-0x2(%rbx,%rax,2)
140018ca9:	0f 84 70 fe ff ff    	je     0x140018b1f
140018caf:	8d 46 ff             	lea    -0x1(%rsi),%eax
140018cb2:	e9 e7 01 00 00       	jmp    0x140018e9e
140018cb7:	0f b7 45 d0          	movzwl -0x30(%rbp),%eax
140018cbb:	83 c6 03             	add    $0x3,%esi
140018cbe:	66 89 47 0c          	mov    %ax,0xc(%rdi)
140018cc2:	66 83 3c 73 2e       	cmpw   $0x2e,(%rbx,%rsi,2)
140018cc7:	75 78                	jne    0x140018d41
140018cc9:	4c 8d 34 73          	lea    (%rbx,%rsi,2),%r14
140018ccd:	41 0f b7 4e 02       	movzwl 0x2(%r14),%ecx
140018cd2:	e8 ad bd 00 00       	call   0x140024a84
140018cd7:	85 c0                	test   %eax,%eax
140018cd9:	0f 84 bd 01 00 00    	je     0x140018e9c
140018cdf:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
140018ce3:	49 8d 4e 02          	lea    0x2(%r14),%rcx
140018ce7:	e8 a0 f7 ff ff       	call   0x14001848c
140018cec:	44 8b c0             	mov    %eax,%r8d
140018cef:	85 c0                	test   %eax,%eax
140018cf1:	0f 84 a5 01 00 00    	je     0x140018e9c
140018cf7:	8b 55 d0             	mov    -0x30(%rbp),%edx
140018cfa:	ff c6                	inc    %esi
140018cfc:	03 f0                	add    %eax,%esi
140018cfe:	41 ba 03 00 00 00    	mov    $0x3,%r10d
140018d04:	41 3b c2             	cmp    %r10d,%eax
140018d07:	7d 18                	jge    0x140018d21
140018d09:	45 8b ca             	mov    %r10d,%r9d
140018d0c:	45 8b c2             	mov    %r10d,%r8d
140018d0f:	44 2b c8             	sub    %eax,%r9d
140018d12:	8d 04 92             	lea    (%rdx,%rdx,4),%eax
140018d15:	8d 14 00             	lea    (%rax,%rax,1),%edx
140018d18:	49 83 e9 01          	sub    $0x1,%r9
140018d1c:	75 f4                	jne    0x140018d12
140018d1e:	89 55 d0             	mov    %edx,-0x30(%rbp)
140018d21:	45 3b c2             	cmp    %r10d,%r8d
140018d24:	7e 17                	jle    0x140018d3d
140018d26:	41 8d 48 fd          	lea    -0x3(%r8),%ecx
140018d2a:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
140018d2f:	f7 e2                	mul    %edx
140018d31:	c1 ea 03             	shr    $0x3,%edx
140018d34:	48 83 e9 01          	sub    $0x1,%rcx
140018d38:	75 f0                	jne    0x140018d2a
140018d3a:	89 55 d0             	mov    %edx,-0x30(%rbp)
140018d3d:	66 89 57 0e          	mov    %dx,0xe(%rdi)
140018d41:	48 63 c6             	movslq %esi,%rax
140018d44:	44 8b fe             	mov    %esi,%r15d
140018d47:	0f b7 0c 43          	movzwl (%rbx,%rax,2),%ecx
140018d4b:	66 83 f9 5a          	cmp    $0x5a,%cx
140018d4f:	75 08                	jne    0x140018d59
140018d51:	8d 46 01             	lea    0x1(%rsi),%eax
140018d54:	e9 45 01 00 00       	jmp    0x140018e9e
140018d59:	66 85 c9             	test   %cx,%cx
140018d5c:	0f 84 ff fe ff ff    	je     0x140018c61
140018d62:	66 83 f9 2d          	cmp    $0x2d,%cx
140018d66:	75 05                	jne    0x140018d6d
140018d68:	45 8a f4             	mov    %r12b,%r14b
140018d6b:	eb 0d                	jmp    0x140018d7a
140018d6d:	66 83 f9 2b          	cmp    $0x2b,%cx
140018d71:	0f 85 ea fe ff ff    	jne    0x140018c61
140018d77:	41 b6 01             	mov    $0x1,%r14b
140018d7a:	ff c6                	inc    %esi
140018d7c:	44 89 65 e0          	mov    %r12d,-0x20(%rbp)
140018d80:	48 63 ce             	movslq %esi,%rcx
140018d83:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
140018d87:	4c 89 65 d8          	mov    %r12,-0x28(%rbp)
140018d8b:	48 8d 0c 4b          	lea    (%rbx,%rcx,2),%rcx
140018d8f:	e8 f8 f6 ff ff       	call   0x14001848c
140018d94:	8d 48 fe             	lea    -0x2(%rax),%ecx
140018d97:	f7 c1 fd ff ff ff    	test   $0xfffffffd,%ecx
140018d9d:	0f 85 fb fd ff ff    	jne    0x140018b9e
140018da3:	03 f0                	add    %eax,%esi
140018da5:	83 f8 02             	cmp    $0x2,%eax
140018da8:	75 2c                	jne    0x140018dd6
140018daa:	44 6b 7d e0 3c       	imul   $0x3c,-0x20(%rbp),%r15d
140018daf:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
140018db3:	ff c6                	inc    %esi
140018db5:	48 63 c6             	movslq %esi,%rax
140018db8:	48 8d 0c 43          	lea    (%rbx,%rax,2),%rcx
140018dbc:	e8 cb f6 ff ff       	call   0x14001848c
140018dc1:	83 f8 02             	cmp    $0x2,%eax
140018dc4:	74 08                	je     0x140018dce
140018dc6:	8d 46 fd             	lea    -0x3(%rsi),%eax
140018dc9:	e9 d0 00 00 00       	jmp    0x140018e9e
140018dce:	8b 4d d0             	mov    -0x30(%rbp),%ecx
140018dd1:	83 c6 02             	add    $0x2,%esi
140018dd4:	eb 16                	jmp    0x140018dec
140018dd6:	8b 4d e0             	mov    -0x20(%rbp),%ecx
140018dd9:	b8 1f 85 eb 51       	mov    $0x51eb851f,%eax
140018dde:	f7 e1                	mul    %ecx
140018de0:	c1 ea 05             	shr    $0x5,%edx
140018de3:	6b c2 64             	imul   $0x64,%edx,%eax
140018de6:	2b c8                	sub    %eax,%ecx
140018de8:	44 6b fa 3c          	imul   $0x3c,%edx,%r15d
140018dec:	41 8d 04 0f          	lea    (%r15,%rcx,1),%eax
140018df0:	3d d0 02 00 00       	cmp    $0x2d0,%eax
140018df5:	76 05                	jbe    0x140018dfc
140018df7:	45 84 f6             	test   %r14b,%r14b
140018dfa:	74 0c                	je     0x140018e08
140018dfc:	3d 0c 03 00 00       	cmp    $0x30c,%eax
140018e01:	76 0d                	jbe    0x140018e10
140018e03:	45 84 f6             	test   %r14b,%r14b
140018e06:	74 08                	je     0x140018e10
140018e08:	8d 46 fb             	lea    -0x5(%rsi),%eax
140018e0b:	e9 8e 00 00 00       	jmp    0x140018e9e
140018e10:	89 45 e0             	mov    %eax,-0x20(%rbp)
140018e13:	48 8d 55 d8          	lea    -0x28(%rbp),%rdx
140018e17:	44 89 65 e4          	mov    %r12d,-0x1c(%rbp)
140018e1b:	48 8b cf             	mov    %rdi,%rcx
140018e1e:	48 69 5d e0 00 46 c3 	imul   $0x23c34600,-0x20(%rbp),%rbx
140018e25:	23
140018e26:	48 89 5d e0          	mov    %rbx,-0x20(%rbp)
140018e2a:	48 c1 eb 20          	shr    $0x20,%rbx
140018e2e:	ff 15 bc 92 1f 00    	call   *0x1f92bc(%rip)        # 0x1402120f0
140018e34:	85 c0                	test   %eax,%eax
140018e36:	74 64                	je     0x140018e9c
140018e38:	44 8b 45 d8          	mov    -0x28(%rbp),%r8d
140018e3c:	45 84 f6             	test   %r14b,%r14b
140018e3f:	74 08                	je     0x140018e49
140018e41:	41 8b d0             	mov    %r8d,%edx
140018e44:	2b 55 e0             	sub    -0x20(%rbp),%edx
140018e47:	eb 06                	jmp    0x140018e4f
140018e49:	8b 55 e0             	mov    -0x20(%rbp),%edx
140018e4c:	41 03 d0             	add    %r8d,%edx
140018e4f:	44 3b c2             	cmp    %edx,%r8d
140018e52:	89 55 d8             	mov    %edx,-0x28(%rbp)
140018e55:	41 8b cc             	mov    %r12d,%ecx
140018e58:	41 8b c4             	mov    %r12d,%eax
140018e5b:	0f 92 c1             	setb   %cl
140018e5e:	0f 97 c0             	seta   %al
140018e61:	45 84 f6             	test   %r14b,%r14b
140018e64:	0f 45 c1             	cmovne %ecx,%eax
140018e67:	85 c0                	test   %eax,%eax
140018e69:	8b 45 dc             	mov    -0x24(%rbp),%eax
140018e6c:	74 0b                	je     0x140018e79
140018e6e:	45 84 f6             	test   %r14b,%r14b
140018e71:	74 04                	je     0x140018e77
140018e73:	ff c8                	dec    %eax
140018e75:	eb 02                	jmp    0x140018e79
140018e77:	ff c0                	inc    %eax
140018e79:	45 84 f6             	test   %r14b,%r14b
140018e7c:	74 04                	je     0x140018e82
140018e7e:	2b c3                	sub    %ebx,%eax
140018e80:	eb 02                	jmp    0x140018e84
140018e82:	03 c3                	add    %ebx,%eax
140018e84:	48 8b d7             	mov    %rdi,%rdx
140018e87:	89 45 dc             	mov    %eax,-0x24(%rbp)
140018e8a:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
140018e8e:	ff 15 44 93 1f 00    	call   *0x1f9344(%rip)        # 0x1402121d8
140018e94:	85 c0                	test   %eax,%eax
140018e96:	0f 85 c5 fd ff ff    	jne    0x140018c61
140018e9c:	33 c0                	xor    %eax,%eax
140018e9e:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
140018ea2:	48 33 cc             	xor    %rsp,%rcx
140018ea5:	e8 c6 b8 1e 00       	call   0x140204770
140018eaa:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
140018eaf:	49 8b 5b 40          	mov    0x40(%r11),%rbx
140018eb3:	49 8b 73 48          	mov    0x48(%r11),%rsi
140018eb7:	49 8b e3             	mov    %r11,%rsp
140018eba:	41 5f                	pop    %r15
140018ebc:	41 5e                	pop    %r14
140018ebe:	41 5c                	pop    %r12
140018ec0:	5f                   	pop    %rdi
140018ec1:	5d                   	pop    %rbp
140018ec2:	c3                   	ret
140018ec3:	90                   	nop
140018ec4:	48 83 ec 28          	sub    $0x28,%rsp
140018ec8:	48 8b 09             	mov    (%rcx),%rcx
140018ecb:	48 85 c9             	test   %rcx,%rcx
140018ece:	74 06                	je     0x140018ed6
140018ed0:	ff 15 6a 9c 1f 00    	call   *0x1f9c6a(%rip)        # 0x140212b40
140018ed6:	48 83 c4 28          	add    $0x28,%rsp
140018eda:	c3                   	ret
140018edb:	90                   	nop
140018edc:	48 8d 05 f5 a6 2f 00 	lea    0x2fa6f5(%rip),%rax        # 0x1403135d8
140018ee3:	c3                   	ret
140018ee4:	48 8b c4             	mov    %rsp,%rax
140018ee7:	48 89 58 10          	mov    %rbx,0x10(%rax)
140018eeb:	48 89 70 18          	mov    %rsi,0x18(%rax)
140018eef:	48 89 78 20          	mov    %rdi,0x20(%rax)
140018ef3:	55                   	push   %rbp
140018ef4:	48 8d 68 a1          	lea    -0x5f(%rax),%rbp
140018ef8:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
140018eff:	48 8b 05 7a 82 2e 00 	mov    0x2e827a(%rip),%rax        # 0x140301180
140018f06:	48 33 c4             	xor    %rsp,%rax
140018f09:	48 89 45 47          	mov    %rax,0x47(%rbp)
140018f0d:	4c 8b da             	mov    %rdx,%r11
140018f10:	48 8b f1             	mov    %rcx,%rsi
140018f13:	0f b7 7a 0c          	movzwl 0xc(%rdx),%edi
140018f17:	b9 1f 85 eb 51       	mov    $0x51eb851f,%ecx
140018f1c:	8b c1                	mov    %ecx,%eax
140018f1e:	f7 e7                	mul    %edi
140018f20:	c1 ea 05             	shr    $0x5,%edx
140018f23:	6b c2 64             	imul   $0x64,%edx,%eax
140018f26:	2b f8                	sub    %eax,%edi
140018f28:	41 0f b7 5b 0a       	movzwl 0xa(%r11),%ebx
140018f2d:	8b c1                	mov    %ecx,%eax
140018f2f:	f7 e3                	mul    %ebx
140018f31:	c1 ea 05             	shr    $0x5,%edx
140018f34:	6b c2 64             	imul   $0x64,%edx,%eax
140018f37:	2b d8                	sub    %eax,%ebx
140018f39:	45 0f b7 53 08       	movzwl 0x8(%r11),%r10d
140018f3e:	8b c1                	mov    %ecx,%eax
140018f40:	41 f7 e2             	mul    %r10d
140018f43:	c1 ea 05             	shr    $0x5,%edx
140018f46:	6b c2 64             	imul   $0x64,%edx,%eax
140018f49:	44 2b d0             	sub    %eax,%r10d
140018f4c:	45 0f b7 4b 06       	movzwl 0x6(%r11),%r9d
140018f51:	8b c1                	mov    %ecx,%eax
140018f53:	41 f7 e1             	mul    %r9d
140018f56:	c1 ea 05             	shr    $0x5,%edx
140018f59:	6b c2 64             	imul   $0x64,%edx,%eax
140018f5c:	44 2b c8             	sub    %eax,%r9d
140018f5f:	45 0f b7 43 02       	movzwl 0x2(%r11),%r8d
140018f64:	8b c1                	mov    %ecx,%eax
140018f66:	41 f7 e0             	mul    %r8d
140018f69:	c1 ea 05             	shr    $0x5,%edx
140018f6c:	6b c2 64             	imul   $0x64,%edx,%eax
140018f6f:	44 2b c0             	sub    %eax,%r8d
140018f72:	41 0f b7 0b          	movzwl (%r11),%ecx
140018f76:	b8 59 17 b7 d1       	mov    $0xd1b71759,%eax
140018f7b:	f7 e1                	mul    %ecx
140018f7d:	c1 ea 0d             	shr    $0xd,%edx
140018f80:	69 c2 10 27 00 00    	imul   $0x2710,%edx,%eax
140018f86:	2b c8                	sub    %eax,%ecx
140018f88:	48 8d 05 91 72 23 00 	lea    0x237291(%rip),%rax        # 0x140250220
140018f8f:	48 89 45 e7          	mov    %rax,-0x19(%rbp)
140018f93:	48 c7 45 ef 24 00 00 	movq   $0x24,-0x11(%rbp)
140018f9a:	00
140018f9b:	89 4d 27             	mov    %ecx,0x27(%rbp)
140018f9e:	48 b8 00 00 00 00 00 	movabs $0x1000000000000000,%rax
140018fa5:	00 00 10
140018fa8:	48 89 45 f7          	mov    %rax,-0x9(%rbp)
140018fac:	44 89 45 2b          	mov    %r8d,0x2b(%rbp)
140018fb0:	48 b8 04 00 00 00 00 	movabs $0x1000000000000004,%rax
140018fb7:	00 00 10
140018fba:	48 89 45 ff          	mov    %rax,-0x1(%rbp)
140018fbe:	44 89 4d 2f          	mov    %r9d,0x2f(%rbp)
140018fc2:	48 b8 08 00 00 00 00 	movabs $0x1000000000000008,%rax
140018fc9:	00 00 10
140018fcc:	48 89 45 07          	mov    %rax,0x7(%rbp)
140018fd0:	44 89 55 33          	mov    %r10d,0x33(%rbp)
140018fd4:	48 b8 0c 00 00 00 00 	movabs $0x100000000000000c,%rax
140018fdb:	00 00 10
140018fde:	48 89 45 0f          	mov    %rax,0xf(%rbp)
140018fe2:	89 5d 37             	mov    %ebx,0x37(%rbp)
140018fe5:	48 b8 10 00 00 00 00 	movabs $0x1000000000000010,%rax
140018fec:	00 00 10
140018fef:	48 89 45 17          	mov    %rax,0x17(%rbp)
140018ff3:	89 7d 3b             	mov    %edi,0x3b(%rbp)
140018ff6:	48 b9 14 00 00 00 00 	movabs $0x1000000000000014,%rcx
140018ffd:	00 00 10
140019000:	48 89 4d 1f          	mov    %rcx,0x1f(%rbp)
140019004:	48 c7 45 d7 06 00 00 	movq   $0x6,-0x29(%rbp)
14001900b:	00
14001900c:	48 8d 4d f7          	lea    -0x9(%rbp),%rcx
140019010:	48 89 4d df          	mov    %rcx,-0x21(%rbp)
140019014:	0f 28 45 d7          	movaps -0x29(%rbp),%xmm0
140019018:	66 0f 7f 45 d7       	movdqa %xmm0,-0x29(%rbp)
14001901d:	0f 28 4d e7          	movaps -0x19(%rbp),%xmm1
140019021:	66 0f 7f 4d e7       	movdqa %xmm1,-0x19(%rbp)
140019026:	4c 8d 45 d7          	lea    -0x29(%rbp),%r8
14001902a:	48 8d 55 e7          	lea    -0x19(%rbp),%rdx
14001902e:	48 8b ce             	mov    %rsi,%rcx
140019031:	e8 2a 01 00 00       	call   0x140019160
140019036:	48 8b c6             	mov    %rsi,%rax
140019039:	48 8b 4d 47          	mov    0x47(%rbp),%rcx
14001903d:	48 33 cc             	xor    %rsp,%rcx
140019040:	e8 2b b7 1e 00       	call   0x140204770
140019045:	4c 8d 9c 24 a0 00 00 	lea    0xa0(%rsp),%r11
14001904c:	00
14001904d:	49 8b 5b 18          	mov    0x18(%r11),%rbx
140019051:	49 8b 73 20          	mov    0x20(%r11),%rsi
140019055:	49 8b 7b 28          	mov    0x28(%r11),%rdi
140019059:	49 8b e3             	mov    %r11,%rsp
14001905c:	5d                   	pop    %rbp
14001905d:	c3                   	ret
14001905e:	90                   	nop
14001905f:	90                   	nop
140019060:	48 83 ec 28          	sub    $0x28,%rsp
140019064:	66 83 39 7d          	cmpw   $0x7d,(%rcx)
140019068:	4c 8b c9             	mov    %rcx,%r9
14001906b:	0f 84 99 00 00 00    	je     0x14001910a
140019071:	66 83 39 3a          	cmpw   $0x3a,(%rcx)
140019075:	0f 84 8f 00 00 00    	je     0x14001910a
14001907b:	0f b7 01             	movzwl (%rcx),%eax
14001907e:	41 ba 30 00 00 00    	mov    $0x30,%r10d
140019084:	66 41 2b c2          	sub    %r10w,%ax
140019088:	66 83 f8 09          	cmp    $0x9,%ax
14001908c:	0f 87 b2 00 00 00    	ja     0x140019144
140019092:	33 c0                	xor    %eax,%eax
140019094:	66 44 39 11          	cmp    %r10w,(%rcx)
140019098:	75 2b                	jne    0x1400190c5
14001909a:	49 83 c1 02          	add    $0x2,%r9
14001909e:	4c 3b ca             	cmp    %rdx,%r9
1400190a1:	0f 84 9d 00 00 00    	je     0x140019144
1400190a7:	66 41 83 39 7d       	cmpw   $0x7d,(%r9)
1400190ac:	74 0b                	je     0x1400190b9
1400190ae:	66 41 83 39 3a       	cmpw   $0x3a,(%r9)
1400190b3:	0f 85 8b 00 00 00    	jne    0x140019144
1400190b9:	49 8b 08             	mov    (%r8),%rcx
1400190bc:	48 83 79 18 00       	cmpq   $0x0,0x18(%rcx)
1400190c1:	7f 67                	jg     0x14001912a
1400190c3:	eb 3a                	jmp    0x1400190ff
1400190c5:	3d cc cc cc 0c       	cmp    $0xccccccc,%eax
1400190ca:	77 25                	ja     0x1400190f1
1400190cc:	8d 0c 80             	lea    (%rax,%rax,4),%ecx
1400190cf:	41 0f b7 01          	movzwl (%r9),%eax
1400190d3:	49 83 c1 02          	add    $0x2,%r9
1400190d7:	8d 04 48             	lea    (%rax,%rcx,2),%eax
1400190da:	83 c0 d0             	add    $0xffffffd0,%eax
1400190dd:	4c 3b ca             	cmp    %rdx,%r9
1400190e0:	74 14                	je     0x1400190f6
1400190e2:	66 45 3b 11          	cmp    (%r9),%r10w
1400190e6:	77 0e                	ja     0x1400190f6
1400190e8:	66 41 83 39 39       	cmpw   $0x39,(%r9)
1400190ed:	76 d6                	jbe    0x1400190c5
1400190ef:	eb 05                	jmp    0x1400190f6
1400190f1:	b8 00 00 00 80       	mov    $0x80000000,%eax
1400190f6:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1400190fb:	77 3a                	ja     0x140019137
1400190fd:	eb 9f                	jmp    0x14001909e
1400190ff:	48 83 49 18 ff       	orq    $0xffffffffffffffff,0x18(%rcx)
140019104:	49 89 40 08          	mov    %rax,0x8(%r8)
140019108:	eb 18                	jmp    0x140019122
14001910a:	49 8b 10             	mov    (%r8),%rdx
14001910d:	48 8b 4a 18          	mov    0x18(%rdx),%rcx
140019111:	48 85 c9             	test   %rcx,%rcx
140019114:	78 3b                	js     0x140019151
140019116:	48 8d 41 01          	lea    0x1(%rcx),%rax
14001911a:	48 89 42 18          	mov    %rax,0x18(%rdx)
14001911e:	49 89 48 08          	mov    %rcx,0x8(%r8)
140019122:	49 8b c1             	mov    %r9,%rax
140019125:	48 83 c4 28          	add    $0x28,%rsp
140019129:	c3                   	ret
14001912a:	48 8d 0d d7 71 23 00 	lea    0x2371d7(%rip),%rcx        # 0x140250308
140019131:	e8 e6 b8 00 00       	call   0x140024a1c
140019136:	cc                   	int3
140019137:	48 8d 0d ba 6e 23 00 	lea    0x236eba(%rip),%rcx        # 0x14024fff8
14001913e:	e8 d9 b8 00 00       	call   0x140024a1c
140019143:	cc                   	int3
140019144:	48 8d 0d 75 6e 23 00 	lea    0x236e75(%rip),%rcx        # 0x14024ffc0
14001914b:	e8 cc b8 00 00       	call   0x140024a1c
140019150:	cc                   	int3
140019151:	48 8d 0d f0 6d 23 00 	lea    0x236df0(%rip),%rcx        # 0x14024ff48
140019158:	e8 bf b8 00 00       	call   0x140024a1c
14001915d:	cc                   	int3
14001915e:	90                   	nop
14001915f:	90                   	nop
140019160:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140019165:	55                   	push   %rbp