1401905c7:	85 c0                	test   %eax,%eax
1401905c9:	74 0b                	je     0x1401905d6
1401905cb:	45 85 ff             	test   %r15d,%r15d
1401905ce:	75 79                	jne    0x140190649
1401905d0:	44 8d 7e 02          	lea    0x2(%rsi),%r15d
1401905d4:	eb 73                	jmp    0x140190649
1401905d6:	48 8b 07             	mov    (%rdi),%rax
1401905d9:	41 b8 df ff 00 00    	mov    $0xffdf,%r8d
1401905df:	0f b7 10             	movzwl (%rax),%edx
1401905e2:	48 8d 48 02          	lea    0x2(%rax),%rcx
1401905e6:	48 89 0f             	mov    %rcx,(%rdi)
1401905e9:	8d 42 a8             	lea    -0x58(%rdx),%eax
1401905ec:	66 41 85 c0          	test   %ax,%r8w
1401905f0:	74 3a                	je     0x14019062c
1401905f2:	45 85 ff             	test   %r15d,%r15d
1401905f5:	44 0f 44 fe          	cmove  %esi,%r15d
1401905f9:	48 83 c1 fe          	add    $0xfffffffffffffffe,%rcx
1401905fd:	48 89 0f             	mov    %rcx,(%rdi)
140190600:	66 85 d2             	test   %dx,%dx
140190603:	74 44                	je     0x140190649
140190605:	66 39 11             	cmp    %dx,(%rcx)
140190608:	74 3f                	je     0x140190649
14019060a:	e8 fd f8 ff ff       	call   0x14018ff0c
14019060f:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140190615:	e8 4a af ff ff       	call   0x14018b564
14019061a:	41 83 c9 ff          	or     $0xffffffff,%r9d
14019061e:	41 ba 30 00 00 00    	mov    $0x30,%r10d
140190624:	41 bb 10 ff 00 00    	mov    $0xff10,%r11d
14019062a:	eb 1d                	jmp    0x140190649
14019062c:	0f b7 19             	movzwl (%rcx),%ebx
14019062f:	b8 10 00 00 00       	mov    $0x10,%eax
140190634:	45 85 ff             	test   %r15d,%r15d
140190637:	44 0f 44 f8          	cmove  %eax,%r15d
14019063b:	48 8d 41 02          	lea    0x2(%rcx),%rax
14019063f:	48 89 07             	mov    %rax,(%rdi)
140190642:	eb 05                	jmp    0x140190649
140190644:	be 08 00 00 00       	mov    $0x8,%esi
140190649:	33 d2                	xor    %edx,%edx
14019064b:	41 8b c1             	mov    %r9d,%eax
14019064e:	41 f7 f7             	div    %r15d
140190651:	41 bd 60 06 00 00    	mov    $0x660,%r13d
140190657:	41 bc f0 06 00 00    	mov    $0x6f0,%r12d
14019065d:	44 8b c0             	mov    %eax,%r8d
140190660:	66 41 3b da          	cmp    %r10w,%bx
140190664:	0f 82 ae 01 00 00    	jb     0x140190818
14019066a:	66 83 fb 3a          	cmp    $0x3a,%bx
14019066e:	73 0b                	jae    0x14019067b
140190670:	0f b7 cb             	movzwl %bx,%ecx
140190673:	41 2b ca             	sub    %r10d,%ecx
140190676:	e9 98 01 00 00       	jmp    0x140190813
14019067b:	66 41 3b db          	cmp    %r11w,%bx
14019067f:	0f 83 79 01 00 00    	jae    0x1401907fe
140190685:	66 41 3b dd          	cmp    %r13w,%bx
140190689:	0f 82 89 01 00 00    	jb     0x140190818
14019068f:	b8 6a 06 00 00       	mov    $0x66a,%eax
140190694:	66 3b d8             	cmp    %ax,%bx
140190697:	73 0b                	jae    0x1401906a4
140190699:	0f b7 cb             	movzwl %bx,%ecx
14019069c:	41 2b cd             	sub    %r13d,%ecx
14019069f:	e9 6f 01 00 00       	jmp    0x140190813
1401906a4:	66 41 3b dc          	cmp    %r12w,%bx
1401906a8:	0f 82 6a 01 00 00    	jb     0x140190818
1401906ae:	b8 fa 06 00 00       	mov    $0x6fa,%eax
1401906b3:	66 3b d8             	cmp    %ax,%bx
1401906b6:	73 0b                	jae    0x1401906c3
1401906b8:	0f b7 cb             	movzwl %bx,%ecx
1401906bb:	41 2b cc             	sub    %r12d,%ecx
1401906be:	e9 50 01 00 00       	jmp    0x140190813
1401906c3:	b8 66 09 00 00       	mov    $0x966,%eax
1401906c8:	66 3b d8             	cmp    %ax,%bx
1401906cb:	0f 82 47 01 00 00    	jb     0x140190818
1401906d1:	8d 48 0a             	lea    0xa(%rax),%ecx
1401906d4:	66 3b d9             	cmp    %cx,%bx
1401906d7:	73 0a                	jae    0x1401906e3
1401906d9:	0f b7 cb             	movzwl %bx,%ecx
1401906dc:	2b c8                	sub    %eax,%ecx
1401906de:	e9 30 01 00 00       	jmp    0x140190813
1401906e3:	b8 e6 09 00 00       	mov    $0x9e6,%eax
1401906e8:	66 3b d8             	cmp    %ax,%bx
1401906eb:	0f 82 27 01 00 00    	jb     0x140190818
1401906f1:	8d 48 0a             	lea    0xa(%rax),%ecx
1401906f4:	66 3b d9             	cmp    %cx,%bx
1401906f7:	72 e0                	jb     0x1401906d9
1401906f9:	8d 41 76             	lea    0x76(%rcx),%eax
1401906fc:	66 3b d8             	cmp    %ax,%bx
1401906ff:	0f 82 13 01 00 00    	jb     0x140190818
140190705:	8d 48 0a             	lea    0xa(%rax),%ecx
140190708:	66 3b d9             	cmp    %cx,%bx
14019070b:	72 cc                	jb     0x1401906d9
14019070d:	8d 41 76             	lea    0x76(%rcx),%eax
140190710:	66 3b d8             	cmp    %ax,%bx
140190713:	0f 82 ff 00 00 00    	jb     0x140190818
140190719:	8d 48 0a             	lea    0xa(%rax),%ecx
14019071c:	66 3b d9             	cmp    %cx,%bx
14019071f:	72 b8                	jb     0x1401906d9
140190721:	8d 41 76             	lea    0x76(%rcx),%eax
140190724:	66 3b d8             	cmp    %ax,%bx
140190727:	0f 82 eb 00 00 00    	jb     0x140190818
14019072d:	8d 48 0a             	lea    0xa(%rax),%ecx
140190730:	66 3b d9             	cmp    %cx,%bx
140190733:	72 a4                	jb     0x1401906d9
140190735:	b8 66 0c 00 00       	mov    $0xc66,%eax
14019073a:	66 3b d8             	cmp    %ax,%bx
14019073d:	0f 82 d5 00 00 00    	jb     0x140190818
140190743:	8d 48 0a             	lea    0xa(%rax),%ecx
140190746:	66 3b d9             	cmp    %cx,%bx
140190749:	72 8e                	jb     0x1401906d9
14019074b:	8d 41 76             	lea    0x76(%rcx),%eax
14019074e:	66 3b d8             	cmp    %ax,%bx
140190751:	0f 82 c1 00 00 00    	jb     0x140190818
140190757:	8d 48 0a             	lea    0xa(%rax),%ecx
14019075a:	66 3b d9             	cmp    %cx,%bx
14019075d:	0f 82 76 ff ff ff    	jb     0x1401906d9
140190763:	8d 41 76             	lea    0x76(%rcx),%eax
140190766:	66 3b d8             	cmp    %ax,%bx
140190769:	0f 82 a9 00 00 00    	jb     0x140190818
14019076f:	8d 48 0a             	lea    0xa(%rax),%ecx
140190772:	66 3b d9             	cmp    %cx,%bx
140190775:	0f 82 5e ff ff ff    	jb     0x1401906d9
14019077b:	b8 50 0e 00 00       	mov    $0xe50,%eax
140190780:	66 3b d8             	cmp    %ax,%bx
140190783:	0f 82 8f 00 00 00    	jb     0x140190818
140190789:	8d 48 0a             	lea    0xa(%rax),%ecx
14019078c:	66 3b d9             	cmp    %cx,%bx
14019078f:	0f 82 44 ff ff ff    	jb     0x1401906d9
140190795:	8d 41 76             	lea    0x76(%rcx),%eax
140190798:	66 3b d8             	cmp    %ax,%bx
14019079b:	72 7b                	jb     0x140190818
14019079d:	8d 48 0a             	lea    0xa(%rax),%ecx
1401907a0:	66 3b d9             	cmp    %cx,%bx
1401907a3:	0f 82 30 ff ff ff    	jb     0x1401906d9
1401907a9:	8d 41 46             	lea    0x46(%rcx),%eax
1401907ac:	66 3b d8             	cmp    %ax,%bx
1401907af:	72 67                	jb     0x140190818
1401907b1:	8d 48 0a             	lea    0xa(%rax),%ecx
1401907b4:	66 3b d9             	cmp    %cx,%bx
1401907b7:	0f 82 1c ff ff ff    	jb     0x1401906d9
1401907bd:	b8 40 10 00 00       	mov    $0x1040,%eax
1401907c2:	66 3b d8             	cmp    %ax,%bx
1401907c5:	72 51                	jb     0x140190818
1401907c7:	8d 48 0a             	lea    0xa(%rax),%ecx
1401907ca:	66 3b d9             	cmp    %cx,%bx
1401907cd:	0f 82 06 ff ff ff    	jb     0x1401906d9
1401907d3:	b8 e0 17 00 00       	mov    $0x17e0,%eax
1401907d8:	66 3b d8             	cmp    %ax,%bx
1401907db:	72 3b                	jb     0x140190818
1401907dd:	8d 48 0a             	lea    0xa(%rax),%ecx
1401907e0:	66 3b d9             	cmp    %cx,%bx
1401907e3:	0f 82 f0 fe ff ff    	jb     0x1401906d9
1401907e9:	8d 41 26             	lea    0x26(%rcx),%eax
1401907ec:	66 3b d8             	cmp    %ax,%bx
1401907ef:	72 27                	jb     0x140190818
1401907f1:	8d 48 0a             	lea    0xa(%rax),%ecx
1401907f4:	66 3b d9             	cmp    %cx,%bx
1401907f7:	73 1f                	jae    0x140190818
1401907f9:	e9 db fe ff ff       	jmp    0x1401906d9
1401907fe:	b8 1a ff 00 00       	mov    $0xff1a,%eax
140190803:	66 3b d8             	cmp    %ax,%bx
140190806:	73 08                	jae    0x140190810
140190808:	0f b7 cb             	movzwl %bx,%ecx
14019080b:	41 2b cb             	sub    %r11d,%ecx
14019080e:	eb 03                	jmp    0x140190813
140190810:	83 c9 ff             	or     $0xffffffff,%ecx
140190813:	83 f9 ff             	cmp    $0xffffffff,%ecx
140190816:	75 29                	jne    0x140190841
140190818:	8d 43 bf             	lea    -0x41(%rbx),%eax
14019081b:	66 83 f8 19          	cmp    $0x19,%ax
14019081f:	76 0e                	jbe    0x14019082f
140190821:	8d 43 9f             	lea    -0x61(%rbx),%eax
140190824:	66 83 f8 19          	cmp    $0x19,%ax
140190828:	76 05                	jbe    0x14019082f
14019082a:	41 8b c9             	mov    %r9d,%ecx
14019082d:	eb 12                	jmp    0x140190841
14019082f:	8d 43 9f             	lea    -0x61(%rbx),%eax
140190832:	0f b7 cb             	movzwl %bx,%ecx
140190835:	66 83 f8 19          	cmp    $0x19,%ax
140190839:	77 03                	ja     0x14019083e
14019083b:	83 e9 20             	sub    $0x20,%ecx
14019083e:	83 c1 c9             	add    $0xffffffc9,%ecx
140190841:	41 3b c9             	cmp    %r9d,%ecx
140190844:	74 30                	je     0x140190876
140190846:	41 3b cf             	cmp    %r15d,%ecx
140190849:	73 2b                	jae    0x140190876
14019084b:	0b ee                	or     %esi,%ebp
14019084d:	45 3b f0             	cmp    %r8d,%r14d
140190850:	72 0b                	jb     0x14019085d
140190852:	75 04                	jne    0x140190858
140190854:	3b ca                	cmp    %edx,%ecx
140190856:	76 05                	jbe    0x14019085d
140190858:	83 cd 04             	or     $0x4,%ebp
14019085b:	eb 07                	jmp    0x140190864
14019085d:	45 0f af f7          	imul   %r15d,%r14d
140190861:	44 03 f1             	add    %ecx,%r14d
140190864:	48 8b 07             	mov    (%rdi),%rax
140190867:	0f b7 18             	movzwl (%rax),%ebx
14019086a:	48 83 c0 02          	add    $0x2,%rax
14019086e:	48 89 07             	mov    %rax,(%rdi)
140190871:	e9 ea fd ff ff       	jmp    0x140190660
140190876:	48 83 07 fe          	addq   $0xfffffffffffffffe,(%rdi)
14019087a:	45 33 ed             	xor    %r13d,%r13d
14019087d:	48 8b 07             	mov    (%rdi),%rax
140190880:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
140190885:	66 85 db             	test   %bx,%bx
140190888:	74 15                	je     0x14019089f
14019088a:	66 39 18             	cmp    %bx,(%rax)
14019088d:	74 10                	je     0x14019089f
14019088f:	e8 78 f6 ff ff       	call   0x14018ff0c
140190894:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14019089a:	e8 c5 ac ff ff       	call   0x14018b564
14019089f:	40 84 ee             	test   %bpl,%sil
1401908a2:	75 1f                	jne    0x1401908c3
1401908a4:	4c 89 27             	mov    %r12,(%rdi)
1401908a7:	44 38 6c 24 40       	cmp    %r13b,0x40(%rsp)
1401908ac:	0f 84 43 fa ff ff    	je     0x1401902f5
1401908b2:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
1401908b7:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
1401908be:	e9 32 fa ff ff       	jmp    0x1401902f5
1401908c3:	41 8b d6             	mov    %r14d,%edx
1401908c6:	8b cd                	mov    %ebp,%ecx
1401908c8:	e8 5f f6 ff ff       	call   0x14018ff2c
1401908cd:	84 c0                	test   %al,%al
1401908cf:	74 6f                	je     0x140190940
1401908d1:	e8 36 f6 ff ff       	call   0x14018ff0c
1401908d6:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
1401908dc:	40 f6 c5 01          	test   $0x1,%bpl
1401908e0:	75 06                	jne    0x1401908e8
1401908e2:	41 83 ce ff          	or     $0xffffffff,%r14d
1401908e6:	eb 61                	jmp    0x140190949
1401908e8:	40 f6 c5 02          	test   $0x2,%bpl
1401908ec:	74 29                	je     0x140190917
1401908ee:	44 38 6c 24 40       	cmp    %r13b,0x40(%rsp)
1401908f3:	74 0c                	je     0x140190901
1401908f5:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
1401908fa:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
140190901:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140190905:	48 85 c9             	test   %rcx,%rcx
140190908:	74 06                	je     0x140190910
14019090a:	48 8b 07             	mov    (%rdi),%rax
14019090d:	48 89 01             	mov    %rax,(%rcx)
140190910:	b8 00 00 00 80       	mov    $0x80000000,%eax
140190915:	eb 57                	jmp    0x14019096e
140190917:	44 38 6c 24 40       	cmp    %r13b,0x40(%rsp)
14019091c:	74 0c                	je     0x14019092a
14019091e:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140190923:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
14019092a:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14019092e:	48 85 c9             	test   %rcx,%rcx
140190931:	74 06                	je     0x140190939
140190933:	48 8b 07             	mov    (%rdi),%rax
140190936:	48 89 01             	mov    %rax,(%rcx)
140190939:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
14019093e:	eb 2e                	jmp    0x14019096e
140190940:	40 f6 c5 02          	test   $0x2,%bpl
140190944:	74 03                	je     0x140190949
140190946:	41 f7 de             	neg    %r14d
140190949:	44 38 6c 24 40       	cmp    %r13b,0x40(%rsp)
14019094e:	74 0c                	je     0x14019095c
140190950:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140190955:	83 a1 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rcx)
14019095c:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140190960:	48 85 d2             	test   %rdx,%rdx
140190963:	74 06                	je     0x14019096b
140190965:	48 8b 0f             	mov    (%rdi),%rcx
140190968:	48 89 0a             	mov    %rcx,(%rdx)
14019096b:	41 8b c6             	mov    %r14d,%eax
14019096e:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
140190973:	49 8b 5b 30          	mov    0x30(%r11),%rbx
140190977:	49 8b 6b 40          	mov    0x40(%r11),%rbp
14019097b:	49 8b 73 48          	mov    0x48(%r11),%rsi
14019097f:	49 8b e3             	mov    %r11,%rsp
140190982:	41 5f                	pop    %r15
140190984:	41 5e                	pop    %r14
140190986:	41 5d                	pop    %r13
140190988:	41 5c                	pop    %r12
14019098a:	5f                   	pop    %rdi
14019098b:	c3                   	ret
14019098c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140190991:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140190996:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14019099b:	55                   	push   %rbp
14019099c:	41 54                	push   %r12
14019099e:	41 55                	push   %r13
1401909a0:	41 56                	push   %r14
1401909a2:	41 57                	push   %r15
1401909a4:	48 8b ec             	mov    %rsp,%rbp
1401909a7:	48 83 ec 40          	sub    $0x40,%rsp
1401909ab:	48 83 3a 00          	cmpq   $0x0,(%rdx)
1401909af:	45 8a e1             	mov    %r9b,%r12b
1401909b2:	45 8b f8             	mov    %r8d,%r15d
1401909b5:	48 8b da             	mov    %rdx,%rbx
1401909b8:	75 26                	jne    0x1401909e0
1401909ba:	e8 4d f5 ff ff       	call   0x14018ff0c
1401909bf:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
1401909c5:	e8 9a ab ff ff       	call   0x14018b564
1401909ca:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1401909ce:	48 85 c9             	test   %rcx,%rcx
1401909d1:	74 06                	je     0x1401909d9
1401909d3:	48 8b 03             	mov    (%rbx),%rax
1401909d6:	48 89 01             	mov    %rax,(%rcx)
1401909d9:	33 c0                	xor    %eax,%eax
1401909db:	e9 c1 02 00 00       	jmp    0x140190ca1
1401909e0:	45 85 c0             	test   %r8d,%r8d
1401909e3:	74 09                	je     0x1401909ee
1401909e5:	41 8d 40 fe          	lea    -0x2(%r8),%eax
1401909e9:	83 f8 22             	cmp    $0x22,%eax
1401909ec:	77 cc                	ja     0x1401909ba
1401909ee:	48 8b d1             	mov    %rcx,%rdx
1401909f1:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
1401909f5:	e8 a6 b2 ff ff       	call   0x14018bca0
1401909fa:	4c 8b 2b             	mov    (%rbx),%r13
1401909fd:	45 33 f6             	xor    %r14d,%r14d
140190a00:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
140190a04:	4c 89 6d 38          	mov    %r13,0x38(%rbp)
140190a08:	41 8a 7d 00          	mov    0x0(%r13),%dil
140190a0c:	49 8d 45 01          	lea    0x1(%r13),%rax
140190a10:	45 8d 6e 08          	lea    0x8(%r14),%r13d
140190a14:	48 89 03             	mov    %rax,(%rbx)
140190a17:	83 7a 08 01          	cmpl   $0x1,0x8(%rdx)
140190a1b:	40 0f b6 c7          	movzbl %dil,%eax
140190a1f:	7e 14                	jle    0x140190a35
140190a21:	4c 8d 45 e8          	lea    -0x18(%rbp),%r8
140190a25:	41 8b d5             	mov    %r13d,%edx
140190a28:	8b c8                	mov    %eax,%ecx
140190a2a:	e8 89 71 01 00       	call   0x1401a7bb8
140190a2f:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
140190a33:	eb 0d                	jmp    0x140190a42
140190a35:	48 8b c8             	mov    %rax,%rcx
140190a38:	48 8b 02             	mov    (%rdx),%rax
140190a3b:	0f b7 04 48          	movzwl (%rax,%rcx,2),%eax
140190a3f:	41 23 c5             	and    %r13d,%eax
140190a42:	85 c0                	test   %eax,%eax
140190a44:	74 0b                	je     0x140190a51
140190a46:	48 8b 03             	mov    (%rbx),%rax
140190a49:	40 8a 38             	mov    (%rax),%dil
140190a4c:	48 ff c0             	inc    %rax
140190a4f:	eb c3                	jmp    0x140190a14
140190a51:	33 f6                	xor    %esi,%esi
140190a53:	45 84 e4             	test   %r12b,%r12b
140190a56:	40 0f 95 c6          	setne  %sil
140190a5a:	40 80 ff 2d          	cmp    $0x2d,%dil
140190a5e:	75 05                	jne    0x140190a65
140190a60:	83 ce 02             	or     $0x2,%esi
140190a63:	eb 06                	jmp    0x140190a6b
140190a65:	40 80 ff 2b          	cmp    $0x2b,%dil
140190a69:	75 0c                	jne    0x140190a77
140190a6b:	48 8b 03             	mov    (%rbx),%rax
140190a6e:	40 8a 38             	mov    (%rax),%dil
140190a71:	48 ff c0             	inc    %rax
140190a74:	48 89 03             	mov    %rax,(%rbx)
140190a77:	4c 8b 6d 38          	mov    0x38(%rbp),%r13