14018dea8:	48 8b 77 08          	mov    0x8(%rdi),%rsi
14018deac:	48 85 f6             	test   %rsi,%rsi
14018deaf:	74 2a                	je     0x14018dedb
14018deb1:	44 8b 41 3c          	mov    0x3c(%rcx),%r8d
14018deb5:	8a 51 41             	mov    0x41(%rcx),%dl
14018deb8:	48 8b 09             	mov    (%rcx),%rcx
14018debb:	e8 c8 ea ff ff       	call   0x14018c988
14018dec0:	84 c0                	test   %al,%al
14018dec2:	48 89 73 48          	mov    %rsi,0x48(%rbx)
14018dec6:	0f b7 07             	movzwl (%rdi),%eax
14018dec9:	74 0b                	je     0x14018ded6
14018decb:	d1 e8                	shr    $1,%eax
14018decd:	89 43 50             	mov    %eax,0x50(%rbx)
14018ded0:	c6 43 54 01          	movb   $0x1,0x54(%rbx)
14018ded4:	eb 1b                	jmp    0x14018def1
14018ded6:	89 43 50             	mov    %eax,0x50(%rbx)
14018ded9:	eb 12                	jmp    0x14018deed
14018dedb:	48 8d 0d da 3c 09 00 	lea    0x93cda(%rip),%rcx        # 0x140221bbc
14018dee2:	c7 43 50 06 00 00 00 	movl   $0x6,0x50(%rbx)
14018dee9:	48 89 4b 48          	mov    %rcx,0x48(%rbx)
14018deed:	c6 43 54 00          	movb   $0x0,0x54(%rbx)
14018def1:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14018def6:	b0 01                	mov    $0x1,%al
14018def8:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14018defd:	48 83 c4 20          	add    $0x20,%rsp
14018df01:	5f                   	pop    %rdi
14018df02:	c3                   	ret
14018df03:	cc                   	int3
14018df04:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14018df09:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14018df0e:	57                   	push   %rdi
14018df0f:	48 83 ec 20          	sub    $0x20,%rsp
14018df13:	48 83 41 20 08       	addq   $0x8,0x20(%rcx)
14018df18:	48 8b d9             	mov    %rcx,%rbx
14018df1b:	48 8b 41 20          	mov    0x20(%rcx),%rax
14018df1f:	48 8b 78 f8          	mov    -0x8(%rax),%rdi
14018df23:	48 85 ff             	test   %rdi,%rdi
14018df26:	74 34                	je     0x14018df5c
14018df28:	48 8b 77 08          	mov    0x8(%rdi),%rsi
14018df2c:	48 85 f6             	test   %rsi,%rsi
14018df2f:	74 2b                	je     0x14018df5c
14018df31:	44 8b 41 3c          	mov    0x3c(%rcx),%r8d
14018df35:	0f b7 51 42          	movzwl 0x42(%rcx),%edx
14018df39:	48 8b 09             	mov    (%rcx),%rcx
14018df3c:	e8 77 ea ff ff       	call   0x14018c9b8
14018df41:	84 c0                	test   %al,%al
14018df43:	48 89 73 48          	mov    %rsi,0x48(%rbx)
14018df47:	0f b7 07             	movzwl (%rdi),%eax
14018df4a:	74 0b                	je     0x14018df57
14018df4c:	d1 e8                	shr    $1,%eax
14018df4e:	89 43 50             	mov    %eax,0x50(%rbx)
14018df51:	c6 43 54 01          	movb   $0x1,0x54(%rbx)
14018df55:	eb 1b                	jmp    0x14018df72
14018df57:	89 43 50             	mov    %eax,0x50(%rbx)
14018df5a:	eb 12                	jmp    0x14018df6e
14018df5c:	48 8d 0d 59 3c 09 00 	lea    0x93c59(%rip),%rcx        # 0x140221bbc
14018df63:	c7 43 50 06 00 00 00 	movl   $0x6,0x50(%rbx)
14018df6a:	48 89 4b 48          	mov    %rcx,0x48(%rbx)
14018df6e:	c6 43 54 00          	movb   $0x0,0x54(%rbx)
14018df72:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14018df77:	b0 01                	mov    $0x1,%al
14018df79:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14018df7e:	48 83 c4 20          	add    $0x20,%rsp
14018df82:	5f                   	pop    %rdi
14018df83:	c3                   	ret
14018df84:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14018df89:	57                   	push   %rdi
14018df8a:	48 83 ec 50          	sub    $0x50,%rsp
14018df8e:	83 49 30 10          	orl    $0x10,0x30(%rcx)
14018df92:	48 8b d9             	mov    %rcx,%rbx
14018df95:	8b 41 38             	mov    0x38(%rcx),%eax
14018df98:	85 c0                	test   %eax,%eax
14018df9a:	79 16                	jns    0x14018dfb2
14018df9c:	8a 41 41             	mov    0x41(%rcx),%al
14018df9f:	2c 41                	sub    $0x41,%al
14018dfa1:	24 df                	and    $0xdf,%al
14018dfa3:	f6 d8                	neg    %al
14018dfa5:	1b c0                	sbb    %eax,%eax
14018dfa7:	83 e0 f9             	and    $0xfffffff9,%eax
14018dfaa:	83 c0 0d             	add    $0xd,%eax
14018dfad:	89 41 38             	mov    %eax,0x38(%rcx)
14018dfb0:	eb 12                	jmp    0x14018dfc4
14018dfb2:	75 10                	jne    0x14018dfc4
14018dfb4:	8a 41 41             	mov    0x41(%rcx),%al
14018dfb7:	2c 47                	sub    $0x47,%al
14018dfb9:	a8 df                	test   $0xdf,%al
14018dfbb:	75 07                	jne    0x14018dfc4
14018dfbd:	c7 41 38 01 00 00 00 	movl   $0x1,0x38(%rcx)
14018dfc4:	8b 41 38             	mov    0x38(%rcx),%eax
14018dfc7:	48 8d 79 58          	lea    0x58(%rcx),%rdi
14018dfcb:	05 5d 01 00 00       	add    $0x15d,%eax
14018dfd0:	48 8b cf             	mov    %rdi,%rcx
14018dfd3:	48 63 d0             	movslq %eax,%rdx
14018dfd6:	e8 01 e9 ff ff       	call   0x14018c8dc
14018dfdb:	41 b8 00 02 00 00    	mov    $0x200,%r8d
14018dfe1:	84 c0                	test   %al,%al
14018dfe3:	75 21                	jne    0x14018e006
14018dfe5:	48 83 bf 08 04 00 00 	cmpq   $0x0,0x408(%rdi)
14018dfec:	00
14018dfed:	75 05                	jne    0x14018dff4
14018dfef:	41 8b c0             	mov    %r8d,%eax
14018dff2:	eb 0a                	jmp    0x14018dffe
14018dff4:	48 8b 87 00 04 00 00 	mov    0x400(%rdi),%rax
14018dffb:	48 d1 e8             	shr    $1,%rax
14018dffe:	05 a3 fe ff ff       	add    $0xfffffea3,%eax
14018e003:	89 43 38             	mov    %eax,0x38(%rbx)
14018e006:	48 8b 87 08 04 00 00 	mov    0x408(%rdi),%rax
14018e00d:	48 85 c0             	test   %rax,%rax
14018e010:	48 0f 44 c7          	cmove  %rdi,%rax
14018e014:	48 89 43 48          	mov    %rax,0x48(%rbx)
14018e018:	33 c0                	xor    %eax,%eax
14018e01a:	48 83 43 20 08       	addq   $0x8,0x20(%rbx)
14018e01f:	48 83 bf 08 04 00 00 	cmpq   $0x0,0x408(%rdi)
14018e026:	00
14018e027:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
14018e02c:	48 8b 43 20          	mov    0x20(%rbx),%rax
14018e030:	f2 0f 10 40 f8       	movsd  -0x8(%rax),%xmm0
14018e035:	f2 0f 11 44 24 60    	movsd  %xmm0,0x60(%rsp)
14018e03b:	75 05                	jne    0x14018e042
14018e03d:	4d 8b c8             	mov    %r8,%r9
14018e040:	eb 0a                	jmp    0x14018e04c
14018e042:	4c 8b 8f 00 04 00 00 	mov    0x400(%rdi),%r9
14018e049:	49 d1 e9             	shr    $1,%r9
14018e04c:	48 8b 8f 08 04 00 00 	mov    0x408(%rdi),%rcx
14018e053:	48 85 c9             	test   %rcx,%rcx
14018e056:	75 09                	jne    0x14018e061
14018e058:	4c 8d 97 00 02 00 00 	lea    0x200(%rdi),%r10
14018e05f:	eb 0d                	jmp    0x14018e06e
14018e061:	4c 8b 97 00 04 00 00 	mov    0x400(%rdi),%r10
14018e068:	49 d1 ea             	shr    $1,%r10
14018e06b:	4c 03 d1             	add    %rcx,%r10
14018e06e:	48 83 f9 00          	cmp    $0x0,%rcx
14018e072:	74 0a                	je     0x14018e07e
14018e074:	4c 8b 87 00 04 00 00 	mov    0x400(%rdi),%r8
14018e07b:	49 d1 e8             	shr    $1,%r8
14018e07e:	48 8b 43 08          	mov    0x8(%rbx),%rax
14018e082:	48 8b d1             	mov    %rcx,%rdx
14018e085:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
14018e08a:	48 85 c9             	test   %rcx,%rcx
14018e08d:	48 8b 03             	mov    (%rbx),%rax
14018e090:	0f be 4b 41          	movsbl 0x41(%rbx),%ecx
14018e094:	48 0f 44 d7          	cmove  %rdi,%rdx
14018e098:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14018e09d:	8b 43 38             	mov    0x38(%rbx),%eax
14018e0a0:	89 44 24 30          	mov    %eax,0x30(%rsp)
14018e0a4:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
14018e0a8:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
14018e0ad:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14018e0b2:	4d 8b ca             	mov    %r10,%r9
14018e0b5:	e8 52 af 01 00       	call   0x1401a900c
14018e0ba:	8b 43 30             	mov    0x30(%rbx),%eax
14018e0bd:	c1 e8 05             	shr    $0x5,%eax
14018e0c0:	a8 01                	test   $0x1,%al
14018e0c2:	74 13                	je     0x14018e0d7
14018e0c4:	83 7b 38 00          	cmpl   $0x0,0x38(%rbx)
14018e0c8:	75 0d                	jne    0x14018e0d7
14018e0ca:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14018e0ce:	48 8b 4b 48          	mov    0x48(%rbx),%rcx
14018e0d2:	e8 25 ec ff ff       	call   0x14018ccfc
14018e0d7:	8a 43 41             	mov    0x41(%rbx),%al
14018e0da:	2c 47                	sub    $0x47,%al
14018e0dc:	a8 df                	test   $0xdf,%al
14018e0de:	75 6d                	jne    0x14018e14d
14018e0e0:	8b 43 30             	mov    0x30(%rbx),%eax
14018e0e3:	c1 e8 05             	shr    $0x5,%eax
14018e0e6:	a8 01                	test   $0x1,%al
14018e0e8:	75 63                	jne    0x14018e14d
14018e0ea:	48 8b 43 08          	mov    0x8(%rbx),%rax
14018e0ee:	48 8b 53 48          	mov    0x48(%rbx),%rdx
14018e0f2:	48 8b 08             	mov    (%rax),%rcx
14018e0f5:	48 8b 81 f8 00 00 00 	mov    0xf8(%rcx),%rax
14018e0fc:	48 8b 08             	mov    (%rax),%rcx
14018e0ff:	44 8a 01             	mov    (%rcx),%r8b
14018e102:	eb 08                	jmp    0x14018e10c
14018e104:	41 3a c0             	cmp    %r8b,%al
14018e107:	74 09                	je     0x14018e112
14018e109:	48 ff c2             	inc    %rdx
14018e10c:	8a 02                	mov    (%rdx),%al
14018e10e:	84 c0                	test   %al,%al
14018e110:	75 f2                	jne    0x14018e104
14018e112:	8a 02                	mov    (%rdx),%al
14018e114:	48 ff c2             	inc    %rdx
14018e117:	84 c0                	test   %al,%al
14018e119:	74 32                	je     0x14018e14d
14018e11b:	eb 09                	jmp    0x14018e126
14018e11d:	2c 45                	sub    $0x45,%al
14018e11f:	a8 df                	test   $0xdf,%al
14018e121:	74 09                	je     0x14018e12c
14018e123:	48 ff c2             	inc    %rdx
14018e126:	8a 02                	mov    (%rdx),%al
14018e128:	84 c0                	test   %al,%al
14018e12a:	75 f1                	jne    0x14018e11d
14018e12c:	48 8b ca             	mov    %rdx,%rcx
14018e12f:	48 ff ca             	dec    %rdx
14018e132:	80 3a 30             	cmpb   $0x30,(%rdx)
14018e135:	74 f8                	je     0x14018e12f
14018e137:	44 38 02             	cmp    %r8b,(%rdx)
14018e13a:	75 03                	jne    0x14018e13f
14018e13c:	48 ff ca             	dec    %rdx
14018e13f:	8a 01                	mov    (%rcx),%al
14018e141:	48 ff c2             	inc    %rdx
14018e144:	48 ff c1             	inc    %rcx
14018e147:	88 02                	mov    %al,(%rdx)
14018e149:	84 c0                	test   %al,%al
14018e14b:	75 f2                	jne    0x14018e13f
14018e14d:	48 8b 43 48          	mov    0x48(%rbx),%rax
14018e151:	80 38 2d             	cmpb   $0x2d,(%rax)
14018e154:	75 0b                	jne    0x14018e161
14018e156:	83 4b 30 40          	orl    $0x40,0x30(%rbx)
14018e15a:	48 ff c0             	inc    %rax
14018e15d:	48 89 43 48          	mov    %rax,0x48(%rbx)
14018e161:	48 8b 53 48          	mov    0x48(%rbx),%rdx
14018e165:	8a 02                	mov    (%rdx),%al
14018e167:	2c 49                	sub    $0x49,%al
14018e169:	3c 25                	cmp    $0x25,%al
14018e16b:	77 14                	ja     0x14018e181
14018e16d:	48 b9 21 00 00 00 21 	movabs $0x2100000021,%rcx
14018e174:	00 00 00
14018e177:	48 0f a3 c1          	bt     %rax,%rcx
14018e17b:	73 04                	jae    0x14018e181
14018e17d:	c6 43 41 73          	movb   $0x73,0x41(%rbx)
14018e181:	48 83 c9 ff          	or     $0xffffffffffffffff,%rcx
14018e185:	48 ff c1             	inc    %rcx
14018e188:	80 3c 0a 00          	cmpb   $0x0,(%rdx,%rcx,1)
14018e18c:	75 f7                	jne    0x14018e185
14018e18e:	89 4b 50             	mov    %ecx,0x50(%rbx)
14018e191:	b0 01                	mov    $0x1,%al
14018e193:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
14018e198:	48 83 c4 50          	add    $0x50,%rsp
14018e19c:	5f                   	pop    %rdi
14018e19d:	c3                   	ret
14018e19e:	cc                   	int3
14018e19f:	cc                   	int3
14018e1a0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14018e1a5:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
14018e1aa:	41 56                	push   %r14
14018e1ac:	48 83 ec 50          	sub    $0x50,%rsp
14018e1b0:	83 49 30 10          	orl    $0x10,0x30(%rcx)
14018e1b4:	48 8b d9             	mov    %rcx,%rbx
14018e1b7:	8b 41 38             	mov    0x38(%rcx),%eax
14018e1ba:	41 be df ff 00 00    	mov    $0xffdf,%r14d
14018e1c0:	85 c0                	test   %eax,%eax
14018e1c2:	79 1c                	jns    0x14018e1e0
14018e1c4:	0f b7 41 42          	movzwl 0x42(%rcx),%eax
14018e1c8:	66 83 e8 41          	sub    $0x41,%ax
14018e1cc:	66 41 23 c6          	and    %r14w,%ax
14018e1d0:	66 f7 d8             	neg    %ax
14018e1d3:	1b c0                	sbb    %eax,%eax
14018e1d5:	83 e0 f9             	and    $0xfffffff9,%eax
14018e1d8:	83 c0 0d             	add    $0xd,%eax
14018e1db:	89 41 38             	mov    %eax,0x38(%rcx)
14018e1de:	eb 17                	jmp    0x14018e1f7
14018e1e0:	75 15                	jne    0x14018e1f7
14018e1e2:	0f b7 41 42          	movzwl 0x42(%rcx),%eax
14018e1e6:	66 83 e8 47          	sub    $0x47,%ax
14018e1ea:	66 41 85 c6          	test   %ax,%r14w
14018e1ee:	75 07                	jne    0x14018e1f7
14018e1f0:	c7 41 38 01 00 00 00 	movl   $0x1,0x38(%rcx)
14018e1f7:	8b 41 38             	mov    0x38(%rcx),%eax
14018e1fa:	48 8d 79 58          	lea    0x58(%rcx),%rdi
14018e1fe:	05 5d 01 00 00       	add    $0x15d,%eax
14018e203:	48 8b cf             	mov    %rdi,%rcx
14018e206:	48 63 d0             	movslq %eax,%rdx
14018e209:	e8 ce e6 ff ff       	call   0x14018c8dc
14018e20e:	41 b8 00 02 00 00    	mov    $0x200,%r8d
14018e214:	84 c0                	test   %al,%al
14018e216:	75 21                	jne    0x14018e239
14018e218:	48 83 bf 08 04 00 00 	cmpq   $0x0,0x408(%rdi)
14018e21f:	00
14018e220:	75 05                	jne    0x14018e227
14018e222:	41 8b c0             	mov    %r8d,%eax
14018e225:	eb 0a                	jmp    0x14018e231
14018e227:	48 8b 87 00 04 00 00 	mov    0x400(%rdi),%rax
14018e22e:	48 d1 e8             	shr    $1,%rax
14018e231:	05 a3 fe ff ff       	add    $0xfffffea3,%eax
14018e236:	89 43 38             	mov    %eax,0x38(%rbx)
14018e239:	48 8b 87 08 04 00 00 	mov    0x408(%rdi),%rax
14018e240:	48 85 c0             	test   %rax,%rax
14018e243:	48 0f 44 c7          	cmove  %rdi,%rax
14018e247:	48 89 43 48          	mov    %rax,0x48(%rbx)
14018e24b:	33 c0                	xor    %eax,%eax
14018e24d:	48 83 43 20 08       	addq   $0x8,0x20(%rbx)
14018e252:	48 83 bf 08 04 00 00 	cmpq   $0x0,0x408(%rdi)
14018e259:	00
14018e25a:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
14018e25f:	48 8b 43 20          	mov    0x20(%rbx),%rax
14018e263:	f2 0f 10 40 f8       	movsd  -0x8(%rax),%xmm0
14018e268:	f2 0f 11 44 24 60    	movsd  %xmm0,0x60(%rsp)
14018e26e:	75 05                	jne    0x14018e275
14018e270:	4d 8b c8             	mov    %r8,%r9
14018e273:	eb 0a                	jmp    0x14018e27f
14018e275:	4c 8b 8f 00 04 00 00 	mov    0x400(%rdi),%r9
14018e27c:	49 d1 e9             	shr    $1,%r9
14018e27f:	48 8b 8f 08 04 00 00 	mov    0x408(%rdi),%rcx
14018e286:	48 85 c9             	test   %rcx,%rcx
14018e289:	75 09                	jne    0x14018e294
14018e28b:	4c 8d 97 00 02 00 00 	lea    0x200(%rdi),%r10
14018e292:	eb 0d                	jmp    0x14018e2a1
14018e294:	4c 8b 97 00 04 00 00 	mov    0x400(%rdi),%r10
14018e29b:	49 d1 ea             	shr    $1,%r10
14018e29e:	4c 03 d1             	add    %rcx,%r10
14018e2a1:	48 83 f9 00          	cmp    $0x0,%rcx
14018e2a5:	74 0a                	je     0x14018e2b1
14018e2a7:	4c 8b 87 00 04 00 00 	mov    0x400(%rdi),%r8
14018e2ae:	49 d1 e8             	shr    $1,%r8
14018e2b1:	48 8b 43 08          	mov    0x8(%rbx),%rax
14018e2b5:	48 8b d1             	mov    %rcx,%rdx
14018e2b8:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
14018e2bd:	48 85 c9             	test   %rcx,%rcx
14018e2c0:	48 8b 03             	mov    (%rbx),%rax
14018e2c3:	0f be 4b 42          	movsbl 0x42(%rbx),%ecx
14018e2c7:	48 0f 44 d7          	cmove  %rdi,%rdx
14018e2cb:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14018e2d0:	8b 43 38             	mov    0x38(%rbx),%eax
14018e2d3:	89 44 24 30          	mov    %eax,0x30(%rsp)
14018e2d7:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
14018e2db:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
14018e2e0:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14018e2e5:	4d 8b ca             	mov    %r10,%r9
14018e2e8:	e8 1f ad 01 00       	call   0x1401a900c
14018e2ed:	8b 43 30             	mov    0x30(%rbx),%eax
14018e2f0:	c1 e8 05             	shr    $0x5,%eax
14018e2f3:	a8 01                	test   $0x1,%al
14018e2f5:	74 13                	je     0x14018e30a
14018e2f7:	83 7b 38 00          	cmpl   $0x0,0x38(%rbx)
14018e2fb:	75 0d                	jne    0x14018e30a
14018e2fd:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14018e301:	48 8b 4b 48          	mov    0x48(%rbx),%rcx
14018e305:	e8 f2 e9 ff ff       	call   0x14018ccfc
14018e30a:	0f b7 43 42          	movzwl 0x42(%rbx),%eax
14018e30e:	66 83 e8 47          	sub    $0x47,%ax
14018e312:	66 41 85 c6          	test   %ax,%r14w
14018e316:	75 6d                	jne    0x14018e385
14018e318:	8b 43 30             	mov    0x30(%rbx),%eax
14018e31b:	c1 e8 05             	shr    $0x5,%eax
14018e31e:	a8 01                	test   $0x1,%al
14018e320:	75 63                	jne    0x14018e385
14018e322:	48 8b 43 08          	mov    0x8(%rbx),%rax
14018e326:	48 8b 53 48          	mov    0x48(%rbx),%rdx
14018e32a:	48 8b 08             	mov    (%rax),%rcx
14018e32d:	48 8b 81 f8 00 00 00 	mov    0xf8(%rcx),%rax
14018e334:	48 8b 08             	mov    (%rax),%rcx
14018e337:	44 8a 01             	mov    (%rcx),%r8b
14018e33a:	eb 08                	jmp    0x14018e344
14018e33c:	41 3a c0             	cmp    %r8b,%al
14018e33f:	74 09                	je     0x14018e34a
14018e341:	48 ff c2             	inc    %rdx
14018e344:	8a 02                	mov    (%rdx),%al
14018e346:	84 c0                	test   %al,%al
14018e348:	75 f2                	jne    0x14018e33c