140dd55e5:	41 81 f8 00 01 00 00 	cmp    $0x100,%r8d
140dd55ec:	0f 8c 62 ff ff ff    	jl     0x140dd5554
140dd55f2:	44 84 7e 06          	test   %r15b,0x6(%rsi)
140dd55f6:	74 37                	je     0x140dd562f
140dd55f8:	40 80 ff 7a          	cmp    $0x7a,%dil
140dd55fc:	77 31                	ja     0x140dd562f
140dd55fe:	83 fb 61             	cmp    $0x61,%ebx
140dd5601:	72 2c                	jb     0x140dd562f
140dd5603:	40 80 ff 61          	cmp    $0x61,%dil
140dd5607:	b8 61 00 00 00       	mov    $0x61,%eax
140dd560c:	0f 42 f8             	cmovb  %eax,%edi
140dd560f:	83 fb 7a             	cmp    $0x7a,%ebx
140dd5612:	b8 7a 00 00 00       	mov    $0x7a,%eax
140dd5617:	0f 47 d8             	cmova  %eax,%ebx
140dd561a:	3b fb                	cmp    %ebx,%edi
140dd561c:	77 11                	ja     0x140dd562f
140dd561e:	44 8d 43 e0          	lea    -0x20(%rbx),%r8d
140dd5622:	8d 57 e0             	lea    -0x20(%rdi),%edx
140dd5625:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140dd562a:	e8 41 ec ff ff       	call   0x140dd4270
140dd562f:	8b 44 24 24          	mov    0x24(%rsp),%eax
140dd5633:	41 3b c6             	cmp    %r14d,%eax
140dd5636:	74 16                	je     0x140dd564e
140dd5638:	2b 44 24 20          	sub    0x20(%rsp),%eax
140dd563c:	ba ff 7f 00 00       	mov    $0x7fff,%edx
140dd5641:	3b c2                	cmp    %edx,%eax
140dd5643:	66 0f 4f c2          	cmovg  %dx,%ax
140dd5647:	66 03 c0             	add    %ax,%ax
140dd564a:	66 09 46 06          	or     %ax,0x6(%rsi)
140dd564e:	48 ba 00 00 00 00 00 	movabs $0x8000000000000000,%rdx
140dd5655:	00 00 80
140dd5658:	e9 85 00 00 00       	jmp    0x140dd56e2
140dd565d:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140dd5662:	48 85 c0             	test   %rax,%rax
140dd5665:	74 0d                	je     0x140dd5674
140dd5667:	4c 0f bc c0          	bsf    %rax,%r8
140dd566b:	41 83 c0 40          	add    $0x40,%r8d
140dd566f:	e9 42 ff ff ff       	jmp    0x140dd55b6
140dd5674:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
140dd5679:	48 85 c0             	test   %rax,%rax
140dd567c:	74 0d                	je     0x140dd568b
140dd567e:	4c 0f bc c0          	bsf    %rax,%r8
140dd5682:	41 83 e8 80          	sub    $0xffffff80,%r8d
140dd5686:	e9 2b ff ff ff       	jmp    0x140dd55b6
140dd568b:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
140dd5690:	48 85 c0             	test   %rax,%rax
140dd5693:	0f 84 17 ff ff ff    	je     0x140dd55b0
140dd5699:	4c 0f bc c0          	bsf    %rax,%r8
140dd569d:	41 81 c0 c0 00 00 00 	add    $0xc0,%r8d
140dd56a4:	e9 0d ff ff ff       	jmp    0x140dd55b6
140dd56a9:	48 ba 00 00 00 00 00 	movabs $0x8000000000000000,%rdx
140dd56b0:	00 00 80
140dd56b3:	45 84 ff             	test   %r15b,%r15b
140dd56b6:	74 1b                	je     0x140dd56d3
140dd56b8:	0f 57 c0             	xorps  %xmm0,%xmm0
140dd56bb:	45 32 ff             	xor    %r15b,%r15b
140dd56be:	0f 11 44 24 58       	movups %xmm0,0x58(%rsp)
140dd56c3:	0f 11 44 24 48       	movups %xmm0,0x48(%rsp)
140dd56c8:	66 0f 73 d8 08       	psrldq $0x8,%xmm0
140dd56cd:	66 0f d6 44 24 60    	movq   %xmm0,0x60(%rsp)
140dd56d3:	8b 44 24 20          	mov    0x20(%rsp),%eax
140dd56d7:	48 09 54 24 60       	or     %rdx,0x60(%rsp)
140dd56dc:	89 85 6c 03 00 00    	mov    %eax,0x36c(%rbp)
140dd56e2:	8b 44 24 20          	mov    0x20(%rsp),%eax
140dd56e6:	ff c8                	dec    %eax
140dd56e8:	89 44 24 20          	mov    %eax,0x20(%rsp)
140dd56ec:	44 8b c0             	mov    %eax,%r8d
140dd56ef:	8b c8                	mov    %eax,%ecx
140dd56f1:	41 3b c4             	cmp    %r12d,%eax
140dd56f4:	0f 8d 67 fd ff ff    	jge    0x140dd5461
140dd56fa:	48 8b bc 24 80 04 00 	mov    0x480(%rsp),%rdi
140dd5701:	00
140dd5702:	48 8b b4 24 88 04 00 	mov    0x488(%rsp),%rsi
140dd5709:	00
140dd570a:	48 8b 9c 24 c0 04 00 	mov    0x4c0(%rsp),%rbx
140dd5711:	00
140dd5712:	48 8b 8d 70 03 00 00 	mov    0x370(%rbp),%rcx
140dd5719:	48 33 cc             	xor    %rsp,%rcx
140dd571c:	e8 df 5d 04 00       	call   0x140e1b500
140dd5721:	48 81 c4 90 04 00 00 	add    $0x490,%rsp
140dd5728:	41 5f                	pop    %r15
140dd572a:	41 5e                	pop    %r14
140dd572c:	41 5d                	pop    %r13
140dd572e:	41 5c                	pop    %r12
140dd5730:	5d                   	pop    %rbp
140dd5731:	c3                   	ret
140dd5732:	cc                   	int3
140dd5733:	cc                   	int3
140dd5734:	cc                   	int3
140dd5735:	cc                   	int3
140dd5736:	cc                   	int3
140dd5737:	cc                   	int3
140dd5738:	cc                   	int3
140dd5739:	cc                   	int3
140dd573a:	cc                   	int3
140dd573b:	cc                   	int3
140dd573c:	cc                   	int3
140dd573d:	cc                   	int3
140dd573e:	cc                   	int3
140dd573f:	cc                   	int3
140dd5740:	40 53                	rex push %rbx
140dd5742:	48 83 ec 40          	sub    $0x40,%rsp
140dd5746:	48 8b d9             	mov    %rcx,%rbx
140dd5749:	44 88 41 18          	mov    %r8b,0x18(%rcx)
140dd574d:	48 8b 4a 10          	mov    0x10(%rdx),%rcx
140dd5751:	4c 8d 4a 10          	lea    0x10(%rdx),%r9
140dd5755:	45 33 db             	xor    %r11d,%r11d
140dd5758:	48 89 4b 20          	mov    %rcx,0x20(%rbx)
140dd575c:	45 84 c0             	test   %r8b,%r8b
140dd575f:	74 5b                	je     0x140dd57bc
140dd5761:	48 83 f9 09          	cmp    $0x9,%rcx
140dd5765:	4c 89 5c 24 30       	mov    %r11,0x30(%rsp)
140dd576a:	4c 8d 05 3f ae 3d 00 	lea    0x3dae3f(%rip),%r8        # 0x1411b05b0
140dd5771:	4c 89 5c 24 38       	mov    %r11,0x38(%rsp)
140dd5776:	48 8d 43 20          	lea    0x20(%rbx),%rax
140dd577a:	0f 57 c0             	xorps  %xmm0,%xmm0
140dd577d:	49 0f 47 c0          	cmova  %r8,%rax
140dd5781:	0f 11 44 24 20       	movups %xmm0,0x20(%rsp)
140dd5786:	4c 8b 00             	mov    (%rax),%r8
140dd5789:	4c 89 43 20          	mov    %r8,0x20(%rbx)
140dd578d:	4d 39 01             	cmp    %r8,(%r9)
140dd5790:	4d 0f 42 01          	cmovb  (%r9),%r8
140dd5794:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
140dd5799:	76 03                	jbe    0x140dd579e
140dd579b:	48 8b 12             	mov    (%rdx),%rdx
140dd579e:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140dd57a3:	e8 58 16 3c ff       	call   0x140196e00
140dd57a8:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140dd57ad:	e8 6e ec ff ff       	call   0x140dd4420
140dd57b2:	48 89 43 28          	mov    %rax,0x28(%rbx)
140dd57b6:	48 83 c4 40          	add    $0x40,%rsp
140dd57ba:	5b                   	pop    %rbx
140dd57bb:	c3                   	ret
140dd57bc:	48 8b 42 18          	mov    0x18(%rdx),%rax
140dd57c0:	48 83 f9 01          	cmp    $0x1,%rcx
140dd57c4:	74 2d                	je     0x140dd57f3
140dd57c6:	48 8b ca             	mov    %rdx,%rcx
140dd57c9:	48 83 f8 0f          	cmp    $0xf,%rax
140dd57cd:	76 03                	jbe    0x140dd57d2
140dd57cf:	48 8b 0a             	mov    (%rdx),%rcx
140dd57d2:	0f be 01             	movsbl (%rcx),%eax
140dd57d5:	89 43 28             	mov    %eax,0x28(%rbx)
140dd57d8:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
140dd57dd:	76 03                	jbe    0x140dd57e2
140dd57df:	48 8b 12             	mov    (%rdx),%rdx
140dd57e2:	49 8b 01             	mov    (%r9),%rax
140dd57e5:	0f be 4c 02 ff       	movsbl -0x1(%rdx,%rax,1),%ecx
140dd57ea:	89 4b 2c             	mov    %ecx,0x2c(%rbx)
140dd57ed:	48 83 c4 40          	add    $0x40,%rsp
140dd57f1:	5b                   	pop    %rbx
140dd57f2:	c3                   	ret
140dd57f3:	48 83 f8 0f          	cmp    $0xf,%rax
140dd57f7:	76 03                	jbe    0x140dd57fc
140dd57f9:	48 8b 12             	mov    (%rdx),%rdx
140dd57fc:	0f be 02             	movsbl (%rdx),%eax
140dd57ff:	89 43 28             	mov    %eax,0x28(%rbx)
140dd5802:	48 83 c4 40          	add    $0x40,%rsp
140dd5806:	5b                   	pop    %rbx
140dd5807:	c3                   	ret
140dd5808:	cc                   	int3
140dd5809:	cc                   	int3
140dd580a:	cc                   	int3
140dd580b:	cc                   	int3
140dd580c:	cc                   	int3
140dd580d:	cc                   	int3
140dd580e:	cc                   	int3
140dd580f:	cc                   	int3
140dd5810:	4c 8b 11             	mov    (%rcx),%r10
140dd5813:	45 33 c0             	xor    %r8d,%r8d
140dd5816:	48 8b c1             	mov    %rcx,%rax
140dd5819:	48 8d 4a ff          	lea    -0x1(%rdx),%rcx
140dd581d:	49 3b d2             	cmp    %r10,%rdx
140dd5820:	75 08                	jne    0x140dd582a
140dd5822:	41 b8 05 00 00 00    	mov    $0x5,%r8d
140dd5828:	eb 0b                	jmp    0x140dd5835
140dd582a:	80 39 0a             	cmpb   $0xa,(%rcx)
140dd582d:	75 06                	jne    0x140dd5835
140dd582f:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140dd5835:	4c 8b 48 08          	mov    0x8(%rax),%r9
140dd5839:	4d 03 ca             	add    %r10,%r9
140dd583c:	49 3b d1             	cmp    %r9,%rdx
140dd583f:	75 06                	jne    0x140dd5847
140dd5841:	41 83 c8 0a          	or     $0xa,%r8d
140dd5845:	eb 0b                	jmp    0x140dd5852
140dd5847:	73 09                	jae    0x140dd5852
140dd5849:	80 3a 0a             	cmpb   $0xa,(%rdx)
140dd584c:	75 04                	jne    0x140dd5852
140dd584e:	41 83 c8 02          	or     $0x2,%r8d
140dd5852:	49 3b d2             	cmp    %r10,%rdx
140dd5855:	75 48                	jne    0x140dd589f
140dd5857:	49 3b d1             	cmp    %r9,%rdx
140dd585a:	0f 84 f1 00 00 00    	je     0x140dd5951
140dd5860:	0f b6 0a             	movzbl (%rdx),%ecx
140dd5863:	8d 41 d0             	lea    -0x30(%rcx),%eax
140dd5866:	3c 2f                	cmp    $0x2f,%al
140dd5868:	77 10                	ja     0x140dd587a
140dd586a:	49 b9 ff 03 fe ff ff 	movabs $0x87fffffe03ff,%r9
140dd5871:	87 00 00
140dd5874:	49 0f a3 c1          	bt     %rax,%r9
140dd5878:	72 69                	jb     0x140dd58e3
140dd587a:	80 e9 61             	sub    $0x61,%cl
140dd587d:	80 f9 19             	cmp    $0x19,%cl
140dd5880:	76 61                	jbe    0x140dd58e3
140dd5882:	41 8b c0             	mov    %r8d,%eax
140dd5885:	32 c9                	xor    %cl,%cl
140dd5887:	83 c8 10             	or     $0x10,%eax
140dd588a:	84 c9                	test   %cl,%cl
140dd588c:	41 0f 44 c0          	cmove  %r8d,%eax
140dd5890:	44 8b c0             	mov    %eax,%r8d
140dd5893:	83 c8 20             	or     $0x20,%eax
140dd5896:	41 f6 c0 10          	test   $0x10,%r8b
140dd589a:	41 0f 45 c0          	cmovne %r8d,%eax
140dd589e:	c3                   	ret
140dd589f:	0f b6 09             	movzbl (%rcx),%ecx
140dd58a2:	8d 41 d0             	lea    -0x30(%rcx),%eax
140dd58a5:	49 3b d1             	cmp    %r9,%rdx
140dd58a8:	75 56                	jne    0x140dd5900
140dd58aa:	3c 2f                	cmp    $0x2f,%al
140dd58ac:	77 10                	ja     0x140dd58be
140dd58ae:	49 b9 ff 03 fe ff ff 	movabs $0x87fffffe03ff,%r9
140dd58b5:	87 00 00
140dd58b8:	49 0f a3 c1          	bt     %rax,%r9
140dd58bc:	72 25                	jb     0x140dd58e3
140dd58be:	80 e9 61             	sub    $0x61,%cl
140dd58c1:	80 f9 19             	cmp    $0x19,%cl
140dd58c4:	76 1d                	jbe    0x140dd58e3
140dd58c6:	41 8b c0             	mov    %r8d,%eax
140dd58c9:	32 c9                	xor    %cl,%cl
140dd58cb:	83 c8 10             	or     $0x10,%eax
140dd58ce:	84 c9                	test   %cl,%cl
140dd58d0:	41 0f 44 c0          	cmove  %r8d,%eax
140dd58d4:	44 8b c0             	mov    %eax,%r8d
140dd58d7:	83 c8 20             	or     $0x20,%eax
140dd58da:	41 f6 c0 10          	test   $0x10,%r8b
140dd58de:	41 0f 45 c0          	cmovne %r8d,%eax
140dd58e2:	c3                   	ret
140dd58e3:	41 8b c0             	mov    %r8d,%eax
140dd58e6:	b1 01                	mov    $0x1,%cl
140dd58e8:	83 c8 10             	or     $0x10,%eax
140dd58eb:	84 c9                	test   %cl,%cl
140dd58ed:	41 0f 44 c0          	cmove  %r8d,%eax
140dd58f1:	44 8b c0             	mov    %eax,%r8d
140dd58f4:	83 c8 20             	or     $0x20,%eax
140dd58f7:	41 f6 c0 10          	test   $0x10,%r8b
140dd58fb:	41 0f 45 c0          	cmovne %r8d,%eax
140dd58ff:	c3                   	ret
140dd5900:	49 b9 ff 03 fe ff ff 	movabs $0x87fffffe03ff,%r9
140dd5907:	87 00 00
140dd590a:	3c 2f                	cmp    $0x2f,%al
140dd590c:	77 09                	ja     0x140dd5917
140dd590e:	0f b6 c0             	movzbl %al,%eax
140dd5911:	49 0f a3 c1          	bt     %rax,%r9
140dd5915:	72 0d                	jb     0x140dd5924
140dd5917:	80 e9 61             	sub    $0x61,%cl
140dd591a:	80 f9 19             	cmp    $0x19,%cl
140dd591d:	76 05                	jbe    0x140dd5924
140dd591f:	45 32 d2             	xor    %r10b,%r10b
140dd5922:	eb 03                	jmp    0x140dd5927
140dd5924:	41 b2 01             	mov    $0x1,%r10b
140dd5927:	0f b6 0a             	movzbl (%rdx),%ecx
140dd592a:	8d 41 d0             	lea    -0x30(%rcx),%eax
140dd592d:	3c 2f                	cmp    $0x2f,%al
140dd592f:	77 09                	ja     0x140dd593a
140dd5931:	0f b6 c0             	movzbl %al,%eax
140dd5934:	49 0f a3 c1          	bt     %rax,%r9
140dd5938:	72 0c                	jb     0x140dd5946
140dd593a:	80 e9 61             	sub    $0x61,%cl
140dd593d:	80 f9 19             	cmp    $0x19,%cl
140dd5940:	76 04                	jbe    0x140dd5946
140dd5942:	32 c0                	xor    %al,%al
140dd5944:	eb 02                	jmp    0x140dd5948
140dd5946:	b0 01                	mov    $0x1,%al
140dd5948:	44 3a d0             	cmp    %al,%r10b
140dd594b:	74 04                	je     0x140dd5951
140dd594d:	41 83 c8 10          	or     $0x10,%r8d
140dd5951:	41 8b c0             	mov    %r8d,%eax
140dd5954:	83 c8 20             	or     $0x20,%eax
140dd5957:	41 f6 c0 10          	test   $0x10,%r8b
140dd595b:	41 0f 45 c0          	cmovne %r8d,%eax
140dd595f:	c3                   	ret
140dd5960:	8b c2                	mov    %edx,%eax
140dd5962:	4c 8b c9             	mov    %rcx,%r9
140dd5965:	99                   	cltd
140dd5966:	83 e2 3f             	and    $0x3f,%edx
140dd5969:	03 c2                	add    %edx,%eax
140dd596b:	44 8b c0             	mov    %eax,%r8d
140dd596e:	83 e0 3f             	and    $0x3f,%eax
140dd5971:	2b c2                	sub    %edx,%eax
140dd5973:	41 c1 f8 06          	sar    $0x6,%r8d
140dd5977:	8b c8                	mov    %eax,%ecx
140dd5979:	49 63 d0             	movslq %r8d,%rdx
140dd597c:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
140dd5983:	48 d3 e0             	shl    %cl,%rax
140dd5986:	49 8b 0c d1          	mov    (%r9,%rdx,8),%rcx
140dd598a:	48 23 c8             	and    %rax,%rcx
140dd598d:	74 0c                	je     0x140dd599b
140dd598f:	48 0f bc c1          	bsf    %rcx,%rax
140dd5993:	41 c1 e0 06          	shl    $0x6,%r8d
140dd5997:	41 03 c0             	add    %r8d,%eax
140dd599a:	c3                   	ret
140dd599b:	41 8d 48 01          	lea    0x1(%r8),%ecx
140dd599f:	83 e9 01             	sub    $0x1,%ecx
140dd59a2:	74 10                	je     0x140dd59b4
140dd59a4:	83 e9 01             	sub    $0x1,%ecx
140dd59a7:	74 1c                	je     0x140dd59c5
140dd59a9:	83 f9 01             	cmp    $0x1,%ecx
140dd59ac:	74 28                	je     0x140dd59d6
140dd59ae:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140dd59b3:	c3                   	ret
140dd59b4:	49 8b 41 08          	mov    0x8(%r9),%rax
140dd59b8:	48 85 c0             	test   %rax,%rax
140dd59bb:	74 08                	je     0x140dd59c5
140dd59bd:	48 0f bc c0          	bsf    %rax,%rax
140dd59c1:	83 c0 40             	add    $0x40,%eax
140dd59c4:	c3                   	ret
140dd59c5:	49 8b 41 10          	mov    0x10(%r9),%rax
140dd59c9:	48 85 c0             	test   %rax,%rax
140dd59cc:	74 08                	je     0x140dd59d6
140dd59ce:	48 0f bc c0          	bsf    %rax,%rax
140dd59d2:	83 e8 80             	sub    $0xffffff80,%eax
140dd59d5:	c3                   	ret
140dd59d6:	49 8b 41 18          	mov    0x18(%r9),%rax
140dd59da:	48 85 c0             	test   %rax,%rax
140dd59dd:	74 cf                	je     0x140dd59ae
140dd59df:	48 0f bc c0          	bsf    %rax,%rax
140dd59e3:	05 c0 00 00 00       	add    $0xc0,%eax
140dd59e8:	c3                   	ret
140dd59e9:	cc                   	int3
140dd59ea:	cc                   	int3
140dd59eb:	cc                   	int3
140dd59ec:	cc                   	int3
140dd59ed:	cc                   	int3
140dd59ee:	cc                   	int3
140dd59ef:	cc                   	int3
140dd59f0:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140dd59f5:	55                   	push   %rbp
140dd59f6:	53                   	push   %rbx
140dd59f7:	56                   	push   %rsi
140dd59f8:	57                   	push   %rdi
140dd59f9:	41 54                	push   %r12
140dd59fb:	41 55                	push   %r13
140dd59fd:	41 56                	push   %r14
140dd59ff:	41 57                	push   %r15
140dd5a01:	48 8d ac 24 78 fe ff 	lea    -0x188(%rsp),%rbp
140dd5a08:	ff
140dd5a09:	48 81 ec 88 02 00 00 	sub    $0x288,%rsp
140dd5a10:	4c 8b e1             	mov    %rcx,%r12
140dd5a13:	80 79 03 00          	cmpb   $0x0,0x3(%rcx)
140dd5a17:	0f 85 94 0d 00 00    	jne    0x140dd67b1
140dd5a1d:	c6 41 03 01          	movb   $0x1,0x3(%rcx)