14090a736:	4d 8b 7e 08          	mov    0x8(%r14),%r15
14090a73a:	48 03 5c 24 68       	add    0x68(%rsp),%rbx
14090a73f:	66 45 3b 5e 36       	cmp    0x36(%r14),%r11w
14090a744:	0f 8d 51 5b 00 00    	jge    0x14091029b
14090a74a:	49 8d 7f 0c          	lea    0xc(%r15),%rdi
14090a74e:	66 90                	xchg   %ax,%ax
14090a750:	0f b7 47 06          	movzwl 0x6(%rdi),%eax
14090a754:	a8 60                	test   $0x60,%al
14090a756:	74 17                	je     0x14090a76f
14090a758:	a8 20                	test   $0x20,%al
14090a75a:	0f 85 0c 01 00 00    	jne    0x14090a86c
14090a760:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
14090a765:	83 78 0c 00          	cmpl   $0x0,0xc(%rax)
14090a769:	0f 85 f9 00 00 00    	jne    0x14090a868
14090a76f:	0f b6 07             	movzbl (%rdi),%eax
14090a772:	3c 43                	cmp    $0x43,%al
14090a774:	7c 27                	jl     0x14090a79d
14090a776:	0f b7 43 14          	movzwl 0x14(%rbx),%eax
14090a77a:	a8 04                	test   $0x4,%al
14090a77c:	75 48                	jne    0x14090a7c6
14090a77e:	a8 08                	test   $0x8,%al
14090a780:	75 11                	jne    0x14090a793
14090a782:	a8 02                	test   $0x2,%al
14090a784:	74 40                	je     0x14090a7c6
14090a786:	41 8b d2             	mov    %r10d,%edx
14090a789:	48 8b cb             	mov    %rbx,%rcx
14090a78c:	e8 cf 6d f8 ff       	call   0x140891560
14090a791:	eb 33                	jmp    0x14090a7c6
14090a793:	48 8b cb             	mov    %rbx,%rcx
14090a796:	e8 25 7b 00 00       	call   0x1409122c0
14090a79b:	eb 29                	jmp    0x14090a7c6
14090a79d:	3c 42                	cmp    $0x42,%al
14090a79f:	75 25                	jne    0x14090a7c6
14090a7a1:	0f b7 43 14          	movzwl 0x14(%rbx),%eax
14090a7a5:	a8 02                	test   $0x2,%al
14090a7a7:	75 14                	jne    0x14090a7bd
14090a7a9:	a8 2c                	test   $0x2c,%al
14090a7ab:	74 10                	je     0x14090a7bd
14090a7ad:	0f b6 54 24 30       	movzbl 0x30(%rsp),%edx
14090a7b2:	41 b0 01             	mov    $0x1,%r8b
14090a7b5:	48 8b cb             	mov    %rbx,%rcx
14090a7b8:	e8 13 92 00 00       	call   0x1409139d0
14090a7bd:	b8 d3 ff 00 00       	mov    $0xffd3,%eax
14090a7c2:	66 21 43 14          	and    %ax,0x14(%rbx)
14090a7c6:	0f b7 4b 14          	movzwl 0x14(%rbx),%ecx
14090a7ca:	0f b7 d1             	movzwl %cx,%edx
14090a7cd:	f6 c1 01             	test   $0x1,%cl
14090a7d0:	0f 85 8c 00 00 00    	jne    0x14090a862
14090a7d6:	8b 47 fc             	mov    -0x4(%rdi),%eax
14090a7d9:	c1 e8 04             	shr    $0x4,%eax
14090a7dc:	83 e0 0f             	and    $0xf,%eax
14090a7df:	83 e8 02             	sub    $0x2,%eax
14090a7e2:	74 75                	je     0x14090a859
14090a7e4:	83 e8 01             	sub    $0x1,%eax
14090a7e7:	74 6b                	je     0x14090a854
14090a7e9:	83 e8 01             	sub    $0x1,%eax
14090a7ec:	74 66                	je     0x14090a854
14090a7ee:	83 e8 01             	sub    $0x1,%eax
14090a7f1:	74 0a                	je     0x14090a7fd
14090a7f3:	83 f8 01             	cmp    $0x1,%eax
14090a7f6:	75 6a                	jne    0x14090a862
14090a7f8:	f6 c1 02             	test   $0x2,%cl
14090a7fb:	eb 5f                	jmp    0x14090a85c
14090a7fd:	f6 c1 04             	test   $0x4,%cl
14090a800:	74 4d                	je     0x14090a84f
14090a802:	48 8b 13             	mov    (%rbx),%rdx
14090a805:	48 b8 00 00 00 00 00 	movabs $0x800000000000,%rax
14090a80c:	80 00 00
14090a80f:	48 03 c2             	add    %rdx,%rax
14090a812:	49 b8 ff ff ff ff ff 	movabs $0xffffffffffff,%r8
14090a819:	ff 00 00
14090a81c:	49 3b c0             	cmp    %r8,%rax
14090a81f:	48 8b c3             	mov    %rbx,%rax
14090a822:	77 06                	ja     0x14090a82a
14090a824:	66 83 c9 20          	or     $0x20,%cx
14090a828:	eb 10                	jmp    0x14090a83a
14090a82a:	0f 57 c0             	xorps  %xmm0,%xmm0
14090a82d:	66 83 c9 08          	or     $0x8,%cx
14090a831:	f2 48 0f 2a c2       	cvtsi2sd %rdx,%xmm0
14090a836:	f2 0f 11 03          	movsd  %xmm0,(%rbx)
14090a83a:	ba 14 00 00 00       	mov    $0x14,%edx
14090a83f:	41 b8 fb ff 00 00    	mov    $0xfffb,%r8d
14090a845:	66 41 23 c8          	and    %r8w,%cx
14090a849:	66 89 0c 02          	mov    %cx,(%rdx,%rax,1)
14090a84d:	eb 13                	jmp    0x14090a862
14090a84f:	f6 c1 28             	test   $0x28,%cl
14090a852:	eb 08                	jmp    0x14090a85c
14090a854:	f6 c1 04             	test   $0x4,%cl
14090a857:	eb 03                	jmp    0x14090a85c
14090a859:	f6 c1 10             	test   $0x10,%cl
14090a85c:	0f 84 ee 5b 00 00    	je     0x140910450
14090a862:	41 ba 01 00 00 00    	mov    $0x1,%r10d
14090a868:	48 83 c3 38          	add    $0x38,%rbx
14090a86c:	41 0f bf 46 36       	movswl 0x36(%r14),%eax
14090a871:	ff c6                	inc    %esi
14090a873:	48 83 c7 18          	add    $0x18,%rdi
14090a877:	3b f0                	cmp    %eax,%esi
14090a879:	0f 8c d1 fe ff ff    	jl     0x14090a750
14090a87f:	4c 8b 7c 24 38       	mov    0x38(%rsp),%r15
14090a884:	e9 e7 e9 ff ff       	jmp    0x140909270
14090a889:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
14090a88e:	48 8b 78 10          	mov    0x10(%rax),%rdi
14090a892:	48 63 40 04          	movslq 0x4(%rax),%rax
14090a896:	48 6b d8 38          	imul   $0x38,%rax,%rbx
14090a89a:	0f b6 07             	movzbl (%rdi),%eax
14090a89d:	49 03 de             	add    %r14,%rbx
14090a8a0:	3c 43                	cmp    $0x43,%al
14090a8a2:	7c 27                	jl     0x14090a8cb
14090a8a4:	0f b7 43 14          	movzwl 0x14(%rbx),%eax
14090a8a8:	a8 04                	test   $0x4,%al
14090a8aa:	75 48                	jne    0x14090a8f4
14090a8ac:	a8 08                	test   $0x8,%al
14090a8ae:	75 11                	jne    0x14090a8c1
14090a8b0:	a8 02                	test   $0x2,%al
14090a8b2:	74 40                	je     0x14090a8f4
14090a8b4:	41 8b d2             	mov    %r10d,%edx
14090a8b7:	48 8b cb             	mov    %rbx,%rcx
14090a8ba:	e8 a1 6c f8 ff       	call   0x140891560
14090a8bf:	eb 33                	jmp    0x14090a8f4
14090a8c1:	48 8b cb             	mov    %rbx,%rcx
14090a8c4:	e8 f7 79 00 00       	call   0x1409122c0
14090a8c9:	eb 29                	jmp    0x14090a8f4
14090a8cb:	3c 42                	cmp    $0x42,%al
14090a8cd:	75 25                	jne    0x14090a8f4
14090a8cf:	0f b7 43 14          	movzwl 0x14(%rbx),%eax
14090a8d3:	a8 02                	test   $0x2,%al
14090a8d5:	75 14                	jne    0x14090a8eb
14090a8d7:	a8 2c                	test   $0x2c,%al
14090a8d9:	74 10                	je     0x14090a8eb
14090a8db:	0f b6 54 24 30       	movzbl 0x30(%rsp),%edx
14090a8e0:	41 b0 01             	mov    $0x1,%r8b
14090a8e3:	48 8b cb             	mov    %rbx,%rcx
14090a8e6:	e8 e5 90 00 00       	call   0x1409139d0
14090a8eb:	b8 d3 ff 00 00       	mov    $0xffd3,%eax
14090a8f0:	66 21 43 14          	and    %ax,0x14(%rbx)
14090a8f4:	80 3f 45             	cmpb   $0x45,(%rdi)
14090a8f7:	75 4d                	jne    0x14090a946
14090a8f9:	0f b7 4b 14          	movzwl 0x14(%rbx),%ecx
14090a8fd:	f6 c1 04             	test   $0x4,%cl
14090a900:	74 44                	je     0x14090a946
14090a902:	48 8b 13             	mov    (%rbx),%rdx
14090a905:	48 b8 00 00 00 00 00 	movabs $0x800000000000,%rax
14090a90c:	80 00 00
14090a90f:	48 03 c2             	add    %rdx,%rax
14090a912:	49 b8 ff ff ff ff ff 	movabs $0xffffffffffff,%r8
14090a919:	ff 00 00
14090a91c:	49 3b c0             	cmp    %r8,%rax
14090a91f:	b8 fb ff 00 00       	mov    $0xfffb,%eax
14090a924:	77 09                	ja     0x14090a92f
14090a926:	66 23 c8             	and    %ax,%cx
14090a929:	66 83 c9 20          	or     $0x20,%cx
14090a92d:	eb 13                	jmp    0x14090a942
14090a92f:	0f 57 c0             	xorps  %xmm0,%xmm0
14090a932:	66 23 c8             	and    %ax,%cx
14090a935:	f2 48 0f 2a c2       	cvtsi2sd %rdx,%xmm0
14090a93a:	66 83 c9 08          	or     $0x8,%cx
14090a93e:	f2 0f 11 03          	movsd  %xmm0,(%rbx)
14090a942:	66 89 4b 14          	mov    %cx,0x14(%rbx)
14090a946:	0f b6 47 01          	movzbl 0x1(%rdi),%eax
14090a94a:	48 ff c7             	inc    %rdi
14090a94d:	84 c0                	test   %al,%al
14090a94f:	0f 84 b2 23 00 00    	je     0x14090cd07
14090a955:	48 83 c3 38          	add    $0x38,%rbx
14090a959:	41 ba 01 00 00 00    	mov    $0x1,%r10d
14090a95f:	e9 3c ff ff ff       	jmp    0x14090a8a0
14090a964:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
14090a969:	4d 8b fb             	mov    %r11,%r15
14090a96c:	45 8b e3             	mov    %r11d,%r12d
14090a96f:	4c 89 5c 24 70       	mov    %r11,0x70(%rsp)
14090a974:	4d 8b eb             	mov    %r11,%r13
14090a977:	48 63 41 04          	movslq 0x4(%rcx),%rax
14090a97b:	48 8b 79 10          	mov    0x10(%rcx),%rdi
14090a97f:	48 6b f0 38          	imul   $0x38,%rax,%rsi
14090a983:	8b 41 08             	mov    0x8(%rcx),%eax
14090a986:	49 03 f6             	add    %r14,%rsi
14090a989:	ff c8                	dec    %eax
14090a98b:	48 98                	cltq
14090a98d:	4c 6b f0 38          	imul   $0x38,%rax,%r14
14090a991:	48 63 41 0c          	movslq 0xc(%rcx),%rax
14090a995:	48 6b c8 38          	imul   $0x38,%rax,%rcx
14090a999:	4c 03 f6             	add    %rsi,%r14
14090a99c:	48 89 75 90          	mov    %rsi,-0x70(%rbp)
14090a9a0:	48 03 4c 24 68       	add    0x68(%rsp),%rcx
14090a9a5:	4c 89 75 98          	mov    %r14,-0x68(%rbp)
14090a9a9:	48 89 4d 80          	mov    %rcx,-0x80(%rbp)
14090a9ad:	48 85 ff             	test   %rdi,%rdi
14090a9b0:	0f 84 a2 00 00 00    	je     0x14090aa58
14090a9b6:	48 8d 5e 14          	lea    0x14(%rsi),%rbx
14090a9ba:	41 be fb ff 00 00    	mov    $0xfffb,%r14d
14090a9c0:	0f b6 74 24 30       	movzbl 0x30(%rsp),%esi
14090a9c5:	41 bd d3 ff 00 00    	mov    $0xffd3,%r13d
14090a9cb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14090a9d0:	0f b6 07             	movzbl (%rdi),%eax
14090a9d3:	3c 43                	cmp    $0x43,%al
14090a9d5:	7c 28                	jl     0x14090a9ff
14090a9d7:	0f b7 03             	movzwl (%rbx),%eax
14090a9da:	a8 04                	test   $0x4,%al
14090a9dc:	75 44                	jne    0x14090aa22
14090a9de:	a8 08                	test   $0x8,%al
14090a9e0:	75 12                	jne    0x14090a9f4
14090a9e2:	a8 02                	test   $0x2,%al
14090a9e4:	74 3c                	je     0x14090aa22
14090a9e6:	48 8d 4b ec          	lea    -0x14(%rbx),%rcx
14090a9ea:	41 8b d2             	mov    %r10d,%edx
14090a9ed:	e8 6e 6b f8 ff       	call   0x140891560
14090a9f2:	eb 2e                	jmp    0x14090aa22
14090a9f4:	48 8d 4b ec          	lea    -0x14(%rbx),%rcx
14090a9f8:	e8 c3 78 00 00       	call   0x1409122c0
14090a9fd:	eb 23                	jmp    0x14090aa22
14090a9ff:	3c 42                	cmp    $0x42,%al
14090aa01:	75 1f                	jne    0x14090aa22
14090aa03:	0f b7 03             	movzwl (%rbx),%eax
14090aa06:	a8 02                	test   $0x2,%al
14090aa08:	75 14                	jne    0x14090aa1e
14090aa0a:	a8 2c                	test   $0x2c,%al
14090aa0c:	74 10                	je     0x14090aa1e
14090aa0e:	48 8d 4b ec          	lea    -0x14(%rbx),%rcx
14090aa12:	41 b0 01             	mov    $0x1,%r8b
14090aa15:	40 0f b6 d6          	movzbl %sil,%edx
14090aa19:	e8 b2 8f 00 00       	call   0x1409139d0
14090aa1e:	66 44 21 2b          	and    %r13w,(%rbx)
14090aa22:	80 3f 45             	cmpb   $0x45,(%rdi)
14090aa25:	75 12                	jne    0x14090aa39
14090aa27:	0f b7 03             	movzwl (%rbx),%eax
14090aa2a:	a8 04                	test   $0x4,%al
14090aa2c:	74 0b                	je     0x14090aa39
14090aa2e:	66 41 23 c6          	and    %r14w,%ax
14090aa32:	66 83 c8 20          	or     $0x20,%ax
14090aa36:	66 89 03             	mov    %ax,(%rbx)
14090aa39:	48 ff c7             	inc    %rdi
14090aa3c:	48 83 c3 38          	add    $0x38,%rbx
14090aa40:	41 ba 01 00 00 00    	mov    $0x1,%r10d
14090aa46:	80 3f 00             	cmpb   $0x0,(%rdi)
14090aa49:	75 85                	jne    0x14090a9d0
14090aa4b:	4c 8b 6c 24 70       	mov    0x70(%rsp),%r13
14090aa50:	48 8b 75 90          	mov    -0x70(%rbp),%rsi
14090aa54:	4c 8b 75 98          	mov    -0x68(%rbp),%r14
14090aa58:	49 8d 7e 24          	lea    0x24(%r14),%rdi
14090aa5c:	0f 1f 40 00          	nopl   0x0(%rax)
14090aa60:	0f b7 4f f0          	movzwl -0x10(%rdi),%ecx
14090aa64:	f6 c1 01             	test   $0x1,%cl
14090aa67:	74 18                	je     0x14090aa81
14090aa69:	41 ff c4             	inc    %r12d
14090aa6c:	b8 00 04 00 00       	mov    $0x400,%eax
14090aa71:	66 23 c8             	and    %ax,%cx
14090aa74:	66 f7 d9             	neg    %cx
14090aa77:	1b db                	sbb    %ebx,%ebx
14090aa79:	83 e3 0a             	and    $0xa,%ebx
14090aa7c:	e9 6d 01 00 00       	jmp    0x14090abee
14090aa81:	f6 c1 24             	test   $0x24,%cl
14090aa84:	0f 84 e0 00 00 00    	je     0x14090ab6a
14090aa8a:	4c 8b 47 dc          	mov    -0x24(%rdi),%r8
14090aa8e:	49 8b d0             	mov    %r8,%rdx
14090aa91:	4d 85 c0             	test   %r8,%r8
14090aa94:	79 03                	jns    0x14090aa99
14090aa96:	48 f7 d2             	not    %rdx
14090aa99:	41 ff c4             	inc    %r12d
14090aa9c:	48 83 fa 7f          	cmp    $0x7f,%rdx
14090aaa0:	77 2c                	ja     0x14090aace
14090aaa2:	49 8b c0             	mov    %r8,%rax
14090aaa5:	83 e0 01             	and    $0x1,%eax
14090aaa8:	49 3b c0             	cmp    %r8,%rax
14090aaab:	75 16                	jne    0x14090aac3
14090aaad:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
14090aab2:	80 b8 c3 00 00 00 04 	cmpb   $0x4,0xc3(%rax)
14090aab9:	72 08                	jb     0x14090aac3
14090aabb:	8d 5a 08             	lea    0x8(%rdx),%ebx
14090aabe:	e9 2b 01 00 00       	jmp    0x14090abee
14090aac3:	49 ff c7             	inc    %r15
14090aac6:	41 8b da             	mov    %r10d,%ebx
14090aac9:	e9 20 01 00 00       	jmp    0x14090abee
14090aace:	48 81 fa ff 7f 00 00 	cmp    $0x7fff,%rdx
14090aad5:	77 0e                	ja     0x14090aae5
14090aad7:	49 83 c7 02          	add    $0x2,%r15
14090aadb:	bb 02 00 00 00       	mov    $0x2,%ebx
14090aae0:	e9 09 01 00 00       	jmp    0x14090abee
14090aae5:	48 81 fa ff ff 7f 00 	cmp    $0x7fffff,%rdx
14090aaec:	77 0e                	ja     0x14090aafc
14090aaee:	49 83 c7 03          	add    $0x3,%r15
14090aaf2:	bb 03 00 00 00       	mov    $0x3,%ebx
14090aaf7:	e9 f2 00 00 00       	jmp    0x14090abee
14090aafc:	48 81 fa ff ff ff 7f 	cmp    $0x7fffffff,%rdx
14090ab03:	77 0e                	ja     0x14090ab13
14090ab05:	49 83 c7 04          	add    $0x4,%r15
14090ab09:	bb 04 00 00 00       	mov    $0x4,%ebx
14090ab0e:	e9 db 00 00 00       	jmp    0x14090abee
14090ab13:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffff,%rax
14090ab1a:	7f 00 00
14090ab1d:	48 3b d0             	cmp    %rax,%rdx
14090ab20:	77 0e                	ja     0x14090ab30
14090ab22:	49 83 c7 06          	add    $0x6,%r15
14090ab26:	bb 05 00 00 00       	mov    $0x5,%ebx
14090ab2b:	e9 be 00 00 00       	jmp    0x14090abee
14090ab30:	49 83 c7 08          	add    $0x8,%r15
14090ab34:	f6 c1 20             	test   $0x20,%cl
14090ab37:	74 27                	je     0x14090ab60
14090ab39:	0f 57 c0             	xorps  %xmm0,%xmm0
14090ab3c:	b8 df ff 00 00       	mov    $0xffdf,%eax
14090ab41:	f2 49 0f 2a c0       	cvtsi2sd %r8,%xmm0
14090ab46:	66 23 c8             	and    %ax,%cx
14090ab49:	bb 07 00 00 00       	mov    $0x7,%ebx
14090ab4e:	66 83 c9 08          	or     $0x8,%cx
14090ab52:	f2 0f 11 47 dc       	movsd  %xmm0,-0x24(%rdi)
14090ab57:	66 89 4f f0          	mov    %cx,-0x10(%rdi)
14090ab5b:	e9 8e 00 00 00       	jmp    0x14090abee
14090ab60:	bb 06 00 00 00       	mov    $0x6,%ebx
14090ab65:	e9 84 00 00 00       	jmp    0x14090abee
14090ab6a:	f6 c1 08             	test   $0x8,%cl
14090ab6d:	74 0e                	je     0x14090ab7d
14090ab6f:	41 ff c4             	inc    %r12d
14090ab72:	bb 07 00 00 00       	mov    $0x7,%ebx
14090ab77:	49 83 c7 08          	add    $0x8,%r15
14090ab7b:	eb 71                	jmp    0x14090abee
14090ab7d:	44 8b 77 ec          	mov    -0x14(%rdi),%r14d
14090ab81:	8b c1                	mov    %ecx,%eax
14090ab83:	d1 e8                	shr    $1,%eax
14090ab85:	83 e0 01             	and    $0x1,%eax
14090ab88:	66 0f ba e1 0a       	bt     $0xa,%cx
14090ab8d:	41 8d 5e 06          	lea    0x6(%r14),%ebx
14090ab91:	8d 1c 58             	lea    (%rax,%rbx,2),%ebx
14090ab94:	73 30                	jae    0x14090abc6
14090ab96:	48 63 47 dc          	movslq -0x24(%rdi),%rax
14090ab9a:	8d 1c 43             	lea    (%rbx,%rax,2),%ebx
14090ab9d:	4d 85 ff             	test   %r15,%r15
14090aba0:	74 1d                	je     0x14090abbf
14090aba2:	48 8d 4f dc          	lea    -0x24(%rdi),%rcx
14090aba6:	e8 d5 81 00 00       	call   0x140912d80
14090abab:	85 c0                	test   %eax,%eax
14090abad:	0f 85 8a 5e 00 00    	jne    0x140910a3d
14090abb3:	44 03 77 dc          	add    -0x24(%rdi),%r14d
14090abb7:	41 ba 01 00 00 00    	mov    $0x1,%r10d
14090abbd:	eb 03                	jmp    0x14090abc2
14090abbf:	4c 03 e8             	add    %rax,%r13
14090abc2:	48 8b 75 90          	mov    -0x70(%rbp),%rsi
14090abc6:	41 8b c6             	mov    %r14d,%eax
14090abc9:	41 8b ca             	mov    %r10d,%ecx
14090abcc:	4c 03 f8             	add    %rax,%r15
14090abcf:	8b c3                	mov    %ebx,%eax
14090abd1:	48 c1 e8 07          	shr    $0x7,%rax
14090abd5:	48 85 c0             	test   %rax,%rax
14090abd8:	74 11                	je     0x14090abeb
14090abda:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
14090abe0:	ff c1                	inc    %ecx
14090abe2:	48 c1 e8 07          	shr    $0x7,%rax
14090abe6:	48 85 c0             	test   %rax,%rax
14090abe9:	75 f5                	jne    0x14090abe0
14090abeb:	44 03 e1             	add    %ecx,%r12d
14090abee:	48 8b c7             	mov    %rdi,%rax
14090abf1:	89 18                	mov    %ebx,(%rax)
14090abf3:	48 8d 47 dc          	lea    -0x24(%rdi),%rax