14001c9ad:	8b cd                	mov    %ebp,%ecx
14001c9af:	41 8d 51 0a          	lea    0xa(%r9),%edx
14001c9b3:	e8 1c 97 00 00       	call   0x1400260d4
14001c9b8:	48 63 f0             	movslq %eax,%rsi
14001c9bb:	85 c0                	test   %eax,%eax
14001c9bd:	75 16                	jne    0x14001c9d5
14001c9bf:	ff 15 03 f8 01 00    	call   *0x1f803(%rip)        # 0x14003c1c8
14001c9c5:	8b c8                	mov    %eax,%ecx
14001c9c7:	e8 84 46 00 00       	call   0x140021050
14001c9cc:	e8 0b 47 00 00       	call   0x1400210dc
14001c9d1:	8b 00                	mov    (%rax),%eax
14001c9d3:	eb 7d                	jmp    0x14001ca52
14001c9d5:	48 8b 53 18          	mov    0x18(%rbx),%rdx
14001c9d9:	48 3b f2             	cmp    %rdx,%rsi
14001c9dc:	76 41                	jbe    0x14001ca1f
14001c9de:	44 38 73 28          	cmp    %r14b,0x28(%rbx)
14001c9e2:	74 0d                	je     0x14001c9f1
14001c9e4:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14001c9e8:	e8 f3 4a fe ff       	call   0x1400014e0
14001c9ed:	44 88 73 28          	mov    %r14b,0x28(%rbx)
14001c9f1:	48 8d 0c 36          	lea    (%rsi,%rsi,1),%rcx
14001c9f5:	e8 06 4b fe ff       	call   0x140001500
14001c9fa:	48 89 43 10          	mov    %rax,0x10(%rbx)
14001c9fe:	49 8b d6             	mov    %r14,%rdx
14001ca01:	48 f7 d8             	neg    %rax
14001ca04:	1b c0                	sbb    %eax,%eax
14001ca06:	f7 d0                	not    %eax
14001ca08:	83 e0 0c             	and    $0xc,%eax
14001ca0b:	48 0f 44 d6          	cmove  %rsi,%rdx
14001ca0f:	85 c0                	test   %eax,%eax
14001ca11:	0f 94 c1             	sete   %cl
14001ca14:	88 4b 28             	mov    %cl,0x28(%rbx)
14001ca17:	48 89 53 18          	mov    %rdx,0x18(%rbx)
14001ca1b:	85 c0                	test   %eax,%eax
14001ca1d:	75 33                	jne    0x14001ca52
14001ca1f:	48 8b 43 10          	mov    0x10(%rbx),%rax
14001ca23:	41 83 c9 ff          	or     $0xffffffff,%r9d
14001ca27:	89 54 24 28          	mov    %edx,0x28(%rsp)
14001ca2b:	4c 8b c7             	mov    %rdi,%r8
14001ca2e:	8b cd                	mov    %ebp,%ecx
14001ca30:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14001ca35:	41 8d 51 0a          	lea    0xa(%r9),%edx
14001ca39:	e8 96 96 00 00       	call   0x1400260d4
14001ca3e:	48 98                	cltq
14001ca40:	48 85 c0             	test   %rax,%rax
14001ca43:	0f 84 76 ff ff ff    	je     0x14001c9bf
14001ca49:	48 ff c8             	dec    %rax
14001ca4c:	48 89 43 20          	mov    %rax,0x20(%rbx)
14001ca50:	33 c0                	xor    %eax,%eax
14001ca52:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14001ca57:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
14001ca5c:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14001ca61:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
14001ca66:	48 83 c4 30          	add    $0x30,%rsp
14001ca6a:	41 5e                	pop    %r14
14001ca6c:	c3                   	ret
14001ca6d:	cc                   	int3
14001ca6e:	cc                   	int3
14001ca6f:	cc                   	int3
14001ca70:	4d 85 c0             	test   %r8,%r8
14001ca73:	75 18                	jne    0x14001ca8d
14001ca75:	33 c0                	xor    %eax,%eax
14001ca77:	c3                   	ret
14001ca78:	0f b7 01             	movzwl (%rcx),%eax
14001ca7b:	66 85 c0             	test   %ax,%ax
14001ca7e:	74 13                	je     0x14001ca93
14001ca80:	66 3b 02             	cmp    (%rdx),%ax
14001ca83:	75 0e                	jne    0x14001ca93
14001ca85:	48 83 c1 02          	add    $0x2,%rcx
14001ca89:	48 83 c2 02          	add    $0x2,%rdx
14001ca8d:	49 83 e8 01          	sub    $0x1,%r8
14001ca91:	75 e5                	jne    0x14001ca78
14001ca93:	0f b7 01             	movzwl (%rcx),%eax
14001ca96:	0f b7 0a             	movzwl (%rdx),%ecx
14001ca99:	2b c1                	sub    %ecx,%eax
14001ca9b:	c3                   	ret
14001ca9c:	4c 8b da             	mov    %rdx,%r11
14001ca9f:	4c 8b d1             	mov    %rcx,%r10
14001caa2:	45 0f b7 02          	movzwl (%r10),%r8d
14001caa6:	4d 8d 52 02          	lea    0x2(%r10),%r10
14001caaa:	41 0f b7 13          	movzwl (%r11),%edx
14001caae:	4d 8d 5b 02          	lea    0x2(%r11),%r11
14001cab2:	41 8d 40 bf          	lea    -0x41(%r8),%eax
14001cab6:	83 f8 19             	cmp    $0x19,%eax
14001cab9:	45 8d 48 20          	lea    0x20(%r8),%r9d
14001cabd:	8d 42 bf             	lea    -0x41(%rdx),%eax
14001cac0:	45 0f 47 c8          	cmova  %r8d,%r9d
14001cac4:	8d 4a 20             	lea    0x20(%rdx),%ecx
14001cac7:	83 f8 19             	cmp    $0x19,%eax
14001caca:	41 8b c1             	mov    %r9d,%eax
14001cacd:	0f 47 ca             	cmova  %edx,%ecx
14001cad0:	2b c1                	sub    %ecx,%eax
14001cad2:	75 05                	jne    0x14001cad9
14001cad4:	45 85 c9             	test   %r9d,%r9d
14001cad7:	75 c9                	jne    0x14001caa2
14001cad9:	c3                   	ret
14001cada:	cc                   	int3
14001cadb:	cc                   	int3
14001cadc:	48 83 ec 28          	sub    $0x28,%rsp
14001cae0:	83 3d 95 55 03 00 00 	cmpl   $0x0,0x35595(%rip)        # 0x14005207c
14001cae7:	75 2d                	jne    0x14001cb16
14001cae9:	48 85 c9             	test   %rcx,%rcx
14001caec:	75 1a                	jne    0x14001cb08
14001caee:	e8 e9 45 00 00       	call   0x1400210dc
14001caf3:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14001caf9:	e8 56 24 ff ff       	call   0x14000ef54
14001cafe:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
14001cb03:	48 83 c4 28          	add    $0x28,%rsp
14001cb07:	c3                   	ret
14001cb08:	48 85 d2             	test   %rdx,%rdx
14001cb0b:	74 e1                	je     0x14001caee
14001cb0d:	48 83 c4 28          	add    $0x28,%rsp
14001cb11:	e9 86 ff ff ff       	jmp    0x14001ca9c
14001cb16:	45 33 c0             	xor    %r8d,%r8d
14001cb19:	48 83 c4 28          	add    $0x28,%rsp
14001cb1d:	e9 02 00 00 00       	jmp    0x14001cb24
14001cb22:	cc                   	int3
14001cb23:	cc                   	int3
14001cb24:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14001cb29:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14001cb2e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14001cb33:	57                   	push   %rdi
14001cb34:	41 56                	push   %r14
14001cb36:	41 57                	push   %r15
14001cb38:	48 83 ec 40          	sub    $0x40,%rsp
14001cb3c:	48 8b fa             	mov    %rdx,%rdi
14001cb3f:	48 8b d9             	mov    %rcx,%rbx
14001cb42:	48 85 c9             	test   %rcx,%rcx
14001cb45:	75 1a                	jne    0x14001cb61
14001cb47:	e8 90 45 00 00       	call   0x1400210dc
14001cb4c:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14001cb52:	e8 fd 23 ff ff       	call   0x14000ef54
14001cb57:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
14001cb5c:	e9 db 00 00 00       	jmp    0x14001cc3c
14001cb61:	48 85 ff             	test   %rdi,%rdi
14001cb64:	74 e1                	je     0x14001cb47
14001cb66:	49 8b d0             	mov    %r8,%rdx
14001cb69:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14001cb6e:	e8 69 9a ff ff       	call   0x1400165dc
14001cb73:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
14001cb78:	48 83 b9 38 01 00 00 	cmpq   $0x0,0x138(%rcx)
14001cb7f:	00
14001cb80:	75 12                	jne    0x14001cb94
14001cb82:	48 8b d7             	mov    %rdi,%rdx
14001cb85:	48 8b cb             	mov    %rbx,%rcx
14001cb88:	e8 0f ff ff ff       	call   0x14001ca9c
14001cb8d:	8b f0                	mov    %eax,%esi
14001cb8f:	e9 93 00 00 00       	jmp    0x14001cc27
14001cb94:	41 be 00 01 00 00    	mov    $0x100,%r14d
14001cb9a:	4c 8d 3d af 34 02 00 	lea    0x234af(%rip),%r15        # 0x140040050
14001cba1:	0f b7 03             	movzwl (%rbx),%eax
14001cba4:	48 8d 5b 02          	lea    0x2(%rbx),%rbx
14001cba8:	66 41 3b c6          	cmp    %r14w,%ax
14001cbac:	73 1a                	jae    0x14001cbc8
14001cbae:	0f b6 d0             	movzbl %al,%edx
14001cbb1:	41 f6 44 57 02 01    	testb  $0x1,0x2(%r15,%rdx,2)
14001cbb7:	74 0a                	je     0x14001cbc3
14001cbb9:	48 8b 81 10 01 00 00 	mov    0x110(%rcx),%rax
14001cbc0:	8a 14 02             	mov    (%rdx,%rax,1),%dl
14001cbc3:	0f b6 c2             	movzbl %dl,%eax
14001cbc6:	eb 12                	jmp    0x14001cbda
14001cbc8:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
14001cbcd:	0f b7 c8             	movzwl %ax,%ecx
14001cbd0:	e8 b3 9a 00 00       	call   0x140026688
14001cbd5:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
14001cbda:	0f b7 e8             	movzwl %ax,%ebp
14001cbdd:	0f b7 07             	movzwl (%rdi),%eax
14001cbe0:	8b f5                	mov    %ebp,%esi
14001cbe2:	48 83 c7 02          	add    $0x2,%rdi
14001cbe6:	66 41 3b c6          	cmp    %r14w,%ax
14001cbea:	73 1a                	jae    0x14001cc06
14001cbec:	0f b6 d0             	movzbl %al,%edx
14001cbef:	41 f6 44 57 02 01    	testb  $0x1,0x2(%r15,%rdx,2)
14001cbf5:	74 0a                	je     0x14001cc01
14001cbf7:	48 8b 81 10 01 00 00 	mov    0x110(%rcx),%rax
14001cbfe:	8a 14 02             	mov    (%rdx,%rax,1),%dl
14001cc01:	0f b6 c2             	movzbl %dl,%eax
14001cc04:	eb 12                	jmp    0x14001cc18
14001cc06:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
14001cc0b:	0f b7 c8             	movzwl %ax,%ecx
14001cc0e:	e8 75 9a 00 00       	call   0x140026688
14001cc13:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
14001cc18:	0f b7 c0             	movzwl %ax,%eax
14001cc1b:	2b f0                	sub    %eax,%esi
14001cc1d:	75 08                	jne    0x14001cc27
14001cc1f:	85 ed                	test   %ebp,%ebp
14001cc21:	0f 85 7a ff ff ff    	jne    0x14001cba1
14001cc27:	80 7c 24 38 00       	cmpb   $0x0,0x38(%rsp)
14001cc2c:	74 0c                	je     0x14001cc3a
14001cc2e:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
14001cc33:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
14001cc3a:	8b c6                	mov    %esi,%eax
14001cc3c:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14001cc41:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
14001cc46:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
14001cc4b:	48 83 c4 40          	add    $0x40,%rsp
14001cc4f:	41 5f                	pop    %r15
14001cc51:	41 5e                	pop    %r14
14001cc53:	5f                   	pop    %rdi
14001cc54:	c3                   	ret
14001cc55:	cc                   	int3
14001cc56:	cc                   	int3
14001cc57:	cc                   	int3
14001cc58:	cc                   	int3
14001cc59:	cc                   	int3
14001cc5a:	cc                   	int3
14001cc5b:	cc                   	int3
14001cc5c:	cc                   	int3
14001cc5d:	cc                   	int3
14001cc5e:	cc                   	int3
14001cc5f:	cc                   	int3
14001cc60:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14001cc65:	57                   	push   %rdi
14001cc66:	48 83 ec 20          	sub    $0x20,%rsp
14001cc6a:	83 3d 0b 54 03 00 00 	cmpl   $0x0,0x3540b(%rip)        # 0x14005207c
14001cc71:	48 63 d9             	movslq %ecx,%rbx
14001cc74:	8d 7b 01             	lea    0x1(%rbx),%edi
14001cc77:	75 21                	jne    0x14001cc9a
14001cc79:	81 ff 00 01 00 00    	cmp    $0x100,%edi
14001cc7f:	77 78                	ja     0x14001ccf9
14001cc81:	48 8b 05 e8 15 03 00 	mov    0x315e8(%rip),%rax        # 0x14004e270
14001cc88:	0f b7 04 58          	movzwl (%rax,%rbx,2),%eax
14001cc8c:	83 e0 02             	and    $0x2,%eax
14001cc8f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001cc94:	48 83 c4 20          	add    $0x20,%rsp
14001cc98:	5f                   	pop    %rdi
14001cc99:	c3                   	ret
14001cc9a:	e8 09 40 00 00       	call   0x140020ca8
14001cc9f:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
14001cca4:	48 8b 88 90 00 00 00 	mov    0x90(%rax),%rcx
14001ccab:	48 89 4c 24 38       	mov    %rcx,0x38(%rsp)
14001ccb0:	48 8b c8             	mov    %rax,%rcx
14001ccb3:	e8 6c 47 00 00       	call   0x140021424
14001ccb8:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
14001ccbd:	81 ff 00 01 00 00    	cmp    $0x100,%edi
14001ccc3:	77 15                	ja     0x14001ccda
14001ccc5:	48 8b 08             	mov    (%rax),%rcx
14001ccc8:	0f b7 04 59          	movzwl (%rcx,%rbx,2),%eax
14001cccc:	83 e0 02             	and    $0x2,%eax
14001cccf:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001ccd4:	48 83 c4 20          	add    $0x20,%rsp
14001ccd8:	5f                   	pop    %rdi
14001ccd9:	c3                   	ret
14001ccda:	83 78 08 01          	cmpl   $0x1,0x8(%rax)
14001ccde:	7e 19                	jle    0x14001ccf9
14001cce0:	45 33 c0             	xor    %r8d,%r8d
14001cce3:	8b cb                	mov    %ebx,%ecx
14001cce5:	41 8d 50 02          	lea    0x2(%r8),%edx
14001cce9:	e8 0e 64 00 00       	call   0x1400230fc
14001ccee:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001ccf3:	48 83 c4 20          	add    $0x20,%rsp
14001ccf7:	5f                   	pop    %rdi
14001ccf8:	c3                   	ret
14001ccf9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001ccfe:	33 c0                	xor    %eax,%eax
14001cd00:	48 83 c4 20          	add    $0x20,%rsp
14001cd04:	5f                   	pop    %rdi
14001cd05:	c3                   	ret
14001cd06:	cc                   	int3
14001cd07:	cc                   	int3
14001cd08:	cc                   	int3
14001cd09:	cc                   	int3
14001cd0a:	cc                   	int3
14001cd0b:	cc                   	int3
14001cd0c:	cc                   	int3
14001cd0d:	cc                   	int3
14001cd0e:	cc                   	int3
14001cd0f:	cc                   	int3
14001cd10:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14001cd15:	57                   	push   %rdi
14001cd16:	48 83 ec 20          	sub    $0x20,%rsp
14001cd1a:	83 3d 5b 53 03 00 00 	cmpl   $0x0,0x3535b(%rip)        # 0x14005207c
14001cd21:	48 63 d9             	movslq %ecx,%rbx
14001cd24:	8d 7b 01             	lea    0x1(%rbx),%edi
14001cd27:	75 21                	jne    0x14001cd4a
14001cd29:	81 ff 00 01 00 00    	cmp    $0x100,%edi
14001cd2f:	77 78                	ja     0x14001cda9
14001cd31:	48 8b 05 38 15 03 00 	mov    0x31538(%rip),%rax        # 0x14004e270
14001cd38:	0f b7 04 58          	movzwl (%rax,%rbx,2),%eax
14001cd3c:	83 e0 08             	and    $0x8,%eax
14001cd3f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001cd44:	48 83 c4 20          	add    $0x20,%rsp
14001cd48:	5f                   	pop    %rdi
14001cd49:	c3                   	ret
14001cd4a:	e8 59 3f 00 00       	call   0x140020ca8
14001cd4f:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
14001cd54:	48 8b 88 90 00 00 00 	mov    0x90(%rax),%rcx
14001cd5b:	48 89 4c 24 38       	mov    %rcx,0x38(%rsp)
14001cd60:	48 8b c8             	mov    %rax,%rcx
14001cd63:	e8 bc 46 00 00       	call   0x140021424
14001cd68:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
14001cd6d:	81 ff 00 01 00 00    	cmp    $0x100,%edi
14001cd73:	77 15                	ja     0x14001cd8a
14001cd75:	48 8b 08             	mov    (%rax),%rcx
14001cd78:	0f b7 04 59          	movzwl (%rcx,%rbx,2),%eax
14001cd7c:	83 e0 08             	and    $0x8,%eax
14001cd7f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001cd84:	48 83 c4 20          	add    $0x20,%rsp
14001cd88:	5f                   	pop    %rdi
14001cd89:	c3                   	ret
14001cd8a:	83 78 08 01          	cmpl   $0x1,0x8(%rax)
14001cd8e:	7e 19                	jle    0x14001cda9
14001cd90:	45 33 c0             	xor    %r8d,%r8d
14001cd93:	8b cb                	mov    %ebx,%ecx
14001cd95:	41 8d 50 08          	lea    0x8(%r8),%edx
14001cd99:	e8 5e 63 00 00       	call   0x1400230fc
14001cd9e:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001cda3:	48 83 c4 20          	add    $0x20,%rsp
14001cda7:	5f                   	pop    %rdi
14001cda8:	c3                   	ret
14001cda9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001cdae:	33 c0                	xor    %eax,%eax
14001cdb0:	48 83 c4 20          	add    $0x20,%rsp
14001cdb4:	5f                   	pop    %rdi
14001cdb5:	c3                   	ret
14001cdb6:	cc                   	int3
14001cdb7:	cc                   	int3
14001cdb8:	cc                   	int3
14001cdb9:	cc                   	int3
14001cdba:	cc                   	int3
14001cdbb:	cc                   	int3
14001cdbc:	cc                   	int3
14001cdbd:	cc                   	int3
14001cdbe:	cc                   	int3
14001cdbf:	cc                   	int3
14001cdc0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14001cdc5:	57                   	push   %rdi
14001cdc6:	48 83 ec 20          	sub    $0x20,%rsp
14001cdca:	83 3d ab 52 03 00 00 	cmpl   $0x0,0x352ab(%rip)        # 0x14005207c
14001cdd1:	48 63 d9             	movslq %ecx,%rbx
14001cdd4:	8d 7b 01             	lea    0x1(%rbx),%edi
14001cdd7:	75 21                	jne    0x14001cdfa
14001cdd9:	81 ff 00 01 00 00    	cmp    $0x100,%edi
14001cddf:	77 78                	ja     0x14001ce59
14001cde1:	48 8b 05 88 14 03 00 	mov    0x31488(%rip),%rax        # 0x14004e270
14001cde8:	0f b7 04 58          	movzwl (%rax,%rbx,2),%eax
14001cdec:	83 e0 01             	and    $0x1,%eax
14001cdef:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14001cdf4:	48 83 c4 20          	add    $0x20,%rsp
14001cdf8:	5f                   	pop    %rdi
14001cdf9:	c3                   	ret
14001cdfa:	e8 a9 3e 00 00       	call   0x140020ca8
14001cdff:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
14001ce04:	48 8b 88 90 00 00 00 	mov    0x90(%rax),%rcx
14001ce0b:	48 89 4c 24 38       	mov    %rcx,0x38(%rsp)
14001ce10:	48 8b c8             	mov    %rax,%rcx
14001ce13:	e8 0c 46 00 00       	call   0x140021424
14001ce18:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
14001ce1d:	81 ff 00 01 00 00    	cmp    $0x100,%edi
14001ce23:	77 15                	ja     0x14001ce3a