140971340:	4c 8b e9             	mov    %rcx,%r13
140971343:	66 41 0f 45 d1       	cmovne %r9w,%dx
140971348:	44 0f b7 49 10       	movzwl 0x10(%rcx),%r9d
14097134d:	66 41 3b d1          	cmp    %r9w,%dx
140971351:	45 0f b7 d1          	movzwl %r9w,%r10d
140971355:	66 44 0f 42 d2       	cmovb  %dx,%r10w
14097135a:	4d 2b fc             	sub    %r12,%r15
14097135d:	45 0f b7 c2          	movzwl %r10w,%r8d
140971361:	4b 8d 0c 07          	lea    (%r15,%r8,1),%rcx
140971365:	49 3b c9             	cmp    %r9,%rcx
140971368:	76 15                	jbe    0x14097137f
14097136a:	41 c6 46 02 00       	movb   $0x0,0x2(%r14)
14097136f:	49 8b c6             	mov    %r14,%rax
140971372:	48 83 c4 28          	add    $0x28,%rsp
140971376:	41 5f                	pop    %r15
140971378:	41 5e                	pop    %r14
14097137a:	41 5d                	pop    %r13
14097137c:	41 5c                	pop    %r12
14097137e:	c3                   	ret
14097137f:	8b 44 24 70          	mov    0x70(%rsp),%eax
140971383:	b9 01 00 00 00       	mov    $0x1,%ecx
140971388:	8b d0                	mov    %eax,%edx
14097138a:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
14097138f:	c1 ea 10             	shr    $0x10,%edx
140971392:	84 d2                	test   %dl,%dl
140971394:	48 89 74 24 68       	mov    %rsi,0x68(%rsp)
140971399:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14097139e:	41 8d 57 ff          	lea    -0x1(%r15),%edx
1409713a2:	66 0f 45 c8          	cmovne %ax,%cx
1409713a6:	49 8b 45 08          	mov    0x8(%r13),%rax
1409713aa:	66 03 d1             	add    %cx,%dx
1409713ad:	66 41 03 d2          	add    %r10w,%dx
1409713b1:	66 41 3b d1          	cmp    %r9w,%dx
1409713b5:	48 8b 08             	mov    (%rax),%rcx
1409713b8:	66 44 0f 42 ca       	cmovb  %dx,%r9w
1409713bd:	41 0f b7 f9          	movzwl %r9w,%edi
1409713c1:	48 03 f9             	add    %rcx,%rdi
1409713c4:	48 8b c7             	mov    %rdi,%rax
1409713c7:	4a 8d 34 01          	lea    (%rcx,%r8,1),%rsi
1409713cb:	48 2b c6             	sub    %rsi,%rax
1409713ce:	48 8b df             	mov    %rdi,%rbx
1409713d1:	49 3b c7             	cmp    %r15,%rax
1409713d4:	7c 3e                	jl     0x140971414
1409713d6:	48 89 6c 24 60       	mov    %rbp,0x60(%rsp)
1409713db:	0f ae e8             	lfence
1409713de:	48 8b ef             	mov    %rdi,%rbp
1409713e1:	49 2b ef             	sub    %r15,%rbp
1409713e4:	0f 1f 40 00          	nopl   0x0(%rax)
1409713e8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1409713ef:	00
1409713f0:	4d 8b c7             	mov    %r15,%r8
1409713f3:	48 8b d6             	mov    %rsi,%rdx
1409713f6:	49 8b cc             	mov    %r12,%rcx
1409713f9:	e8 52 e6 56 00       	call   0x140edfa50
1409713fe:	85 c0                	test   %eax,%eax
140971400:	74 0a                	je     0x14097140c
140971402:	48 3b f5             	cmp    %rbp,%rsi
140971405:	74 08                	je     0x14097140f
140971407:	48 ff c6             	inc    %rsi
14097140a:	eb e4                	jmp    0x1409713f0
14097140c:	48 8b de             	mov    %rsi,%rbx
14097140f:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
140971414:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140971419:	48 3b df             	cmp    %rdi,%rbx
14097141c:	48 8b 7c 24 20       	mov    0x20(%rsp),%rdi
140971421:	75 07                	jne    0x14097142a
140971423:	41 c6 46 02 00       	movb   $0x0,0x2(%r14)
140971428:	eb 10                	jmp    0x14097143a
14097142a:	49 8b 45 08          	mov    0x8(%r13),%rax
14097142e:	66 2b 18             	sub    (%rax),%bx
140971431:	66 41 89 1e          	mov    %bx,(%r14)
140971435:	41 c6 46 02 01       	movb   $0x1,0x2(%r14)
14097143a:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14097143f:	49 8b c6             	mov    %r14,%rax
140971442:	48 83 c4 28          	add    $0x28,%rsp
140971446:	41 5f                	pop    %r15
140971448:	41 5e                	pop    %r14
14097144a:	41 5d                	pop    %r13
14097144c:	41 5c                	pop    %r12
14097144e:	c3                   	ret
14097144f:	cc                   	int3
140971450:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140971455:	55                   	push   %rbp
140971456:	56                   	push   %rsi
140971457:	57                   	push   %rdi
140971458:	41 54                	push   %r12
14097145a:	41 55                	push   %r13
14097145c:	41 56                	push   %r14
14097145e:	41 57                	push   %r15
140971460:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
140971467:	48 8b 05 92 7a a4 00 	mov    0xa47a92(%rip),%rax        # 0x1413b8f00
14097146e:	48 33 c4             	xor    %rsp,%rax
140971471:	48 89 84 24 80 00 00 	mov    %rax,0x80(%rsp)
140971478:	00
140971479:	4d 8b e8             	mov    %r8,%r13
14097147c:	48 8b f2             	mov    %rdx,%rsi
14097147f:	4c 8b f1             	mov    %rcx,%r14
140971482:	41 8b c1             	mov    %r9d,%eax
140971485:	c1 e8 10             	shr    $0x10,%eax
140971488:	33 db                	xor    %ebx,%ebx
14097148a:	0f b7 eb             	movzwl %bx,%ebp
14097148d:	84 c0                	test   %al,%al
14097148f:	66 41 0f 45 e9       	cmovne %r9w,%bp
140971494:	8b 84 24 f0 00 00 00 	mov    0xf0(%rsp),%eax
14097149b:	8b c8                	mov    %eax,%ecx
14097149d:	c1 e9 10             	shr    $0x10,%ecx
1409714a0:	84 c9                	test   %cl,%cl
1409714a2:	75 05                	jne    0x1409714a9
1409714a4:	41 0f b7 46 10       	movzwl 0x10(%r14),%eax
1409714a9:	66 03 c5             	add    %bp,%ax
1409714ac:	45 0f b7 46 10       	movzwl 0x10(%r14),%r8d
1409714b1:	66 44 3b c0          	cmp    %ax,%r8w
1409714b5:	66 41 0f 42 c0       	cmovb  %r8w,%ax
1409714ba:	44 0f b7 f8          	movzwl %ax,%r15d
1409714be:	44 0f b7 e5          	movzwl %bp,%r12d
1409714c2:	41 8b d7             	mov    %r15d,%edx
1409714c5:	41 2b d4             	sub    %r12d,%edx
1409714c8:	81 fa ff ff 00 00    	cmp    $0xffff,%edx
1409714ce:	0f 87 c1 01 00 00    	ja     0x140971695
1409714d4:	0f b7 cd             	movzwl %bp,%ecx
1409714d7:	e8 e4 f2 ff ff       	call   0x1409707c0
1409714dc:	0f 57 c0             	xorps  %xmm0,%xmm0
1409714df:	41 8b 45 40          	mov    0x40(%r13),%eax
1409714e3:	83 c0 01             	add    $0x1,%eax
1409714e6:	48 63 f8             	movslq %eax,%rdi
1409714e9:	f3 0f 7f 44 24 58    	movdqu %xmm0,0x58(%rsp)
1409714ef:	48 89 5c 24 68       	mov    %rbx,0x68(%rsp)
1409714f4:	74 52                	je     0x140971548
1409714f6:	48 b8 ff ff ff ff ff 	movabs $0xfffffffffffffff,%rax
1409714fd:	ff ff 0f
140971500:	48 3b f8             	cmp    %rax,%rdi
140971503:	0f 87 92 01 00 00    	ja     0x14097169b
140971509:	0f ae e8             	lfence
14097150c:	48 8b df             	mov    %rdi,%rbx
14097150f:	48 c1 e3 04          	shl    $0x4,%rbx
140971513:	48 8b cb             	mov    %rbx,%rcx
140971516:	e8 15 58 82 ff       	call   0x140196d30
14097151b:	4c 8b d0             	mov    %rax,%r10
14097151e:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
140971523:	48 03 c3             	add    %rbx,%rax
140971526:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
14097152b:	33 db                	xor    %ebx,%ebx
14097152d:	0f 1f 00             	nopl   (%rax)
140971530:	49 89 1a             	mov    %rbx,(%r10)
140971533:	49 89 5a 08          	mov    %rbx,0x8(%r10)
140971537:	49 83 c2 10          	add    $0x10,%r10
14097153b:	48 83 ef 01          	sub    $0x1,%rdi
14097153f:	75 ef                	jne    0x140971530
140971541:	4c 89 54 24 60       	mov    %r10,0x60(%rsp)
140971546:	eb 05                	jmp    0x14097154d
140971548:	4c 8b 54 24 60       	mov    0x60(%rsp),%r10
14097154d:	49 8b 46 08          	mov    0x8(%r14),%rax
140971551:	48 8b 10             	mov    (%rax),%rdx
140971554:	4c 8b 40 08          	mov    0x8(%rax),%r8
140971558:	4c 2b c2             	sub    %rdx,%r8
14097155b:	0f b7 cd             	movzwl %bp,%ecx
14097155e:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
140971562:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
140971567:	4c 2b c1             	sub    %rcx,%r8
14097156a:	4c 89 44 24 78       	mov    %r8,0x78(%rsp)
14097156f:	48 8b 54 24 58       	mov    0x58(%rsp),%rdx
140971574:	4c 2b d2             	sub    %rdx,%r10
140971577:	49 c1 fa 04          	sar    $0x4,%r10
14097157b:	4d 8b cf             	mov    %r15,%r9
14097157e:	4d 2b cc             	sub    %r12,%r9
140971581:	44 89 54 24 30       	mov    %r10d,0x30(%rsp)
140971586:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
14097158b:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
14097158f:	45 33 c0             	xor    %r8d,%r8d
140971592:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
140971597:	49 8b cd             	mov    %r13,%rcx
14097159a:	e8 f1 00 46 00       	call   0x140dd1690
14097159f:	84 c0                	test   %al,%al
1409715a1:	75 71                	jne    0x140971614
1409715a3:	88 46 18             	mov    %al,0x18(%rsi)
1409715a6:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
1409715ab:	48 85 c9             	test   %rcx,%rcx
1409715ae:	74 36                	je     0x1409715e6
1409715b0:	48 8b 54 24 68       	mov    0x68(%rsp),%rdx
1409715b5:	48 2b d1             	sub    %rcx,%rdx
1409715b8:	48 83 e2 f0          	and    $0xfffffffffffffff0,%rdx
1409715bc:	4c 8b c1             	mov    %rcx,%r8
1409715bf:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1409715c6:	72 19                	jb     0x1409715e1
1409715c8:	48 83 c2 27          	add    $0x27,%rdx
1409715cc:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1409715d0:	4c 2b c1             	sub    %rcx,%r8
1409715d3:	49 83 c0 f8          	add    $0xfffffffffffffff8,%r8
1409715d7:	49 83 f8 1f          	cmp    $0x1f,%r8
1409715db:	0f 87 ae 00 00 00    	ja     0x14097168f
1409715e1:	e8 5e 9b 4a 00       	call   0x140e1b144
1409715e6:	48 8b c6             	mov    %rsi,%rax
1409715e9:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
1409715f0:	00
1409715f1:	48 33 cc             	xor    %rsp,%rcx
1409715f4:	e8 07 9f 4a 00       	call   0x140e1b500
1409715f9:	48 8b 9c 24 e8 00 00 	mov    0xe8(%rsp),%rbx
140971600:	00
140971601:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
140971608:	41 5f                	pop    %r15
14097160a:	41 5e                	pop    %r14
14097160c:	41 5d                	pop    %r13
14097160e:	41 5c                	pop    %r12
140971610:	5f                   	pop    %rdi
140971611:	5e                   	pop    %rsi
140971612:	5d                   	pop    %rbp
140971613:	c3                   	ret
140971614:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
140971619:	4c 8b 44 24 58       	mov    0x58(%rsp),%r8
14097161e:	49 2b c0             	sub    %r8,%rax
140971621:	48 83 e0 f0          	and    $0xfffffffffffffff0,%rax
140971625:	4a 8b 4c 00 f0       	mov    -0x10(%rax,%r8,1),%rcx
14097162a:	c6 44 24 50 00       	movb   $0x0,0x50(%rsp)
14097162f:	48 89 4c 24 40       	mov    %rcx,0x40(%rsp)
140971634:	4a 03 4c 00 f8       	add    -0x8(%rax,%r8,1),%rcx
140971639:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
14097163e:	0f 10 44 24 40       	movups 0x40(%rsp),%xmm0
140971643:	0f 11 06             	movups %xmm0,(%rsi)
140971646:	f2 0f 10 4c 24 50    	movsd  0x50(%rsp),%xmm1
14097164c:	f2 0f 11 4e 10       	movsd  %xmm1,0x10(%rsi)
140971651:	c6 46 18 01          	movb   $0x1,0x18(%rsi)
140971655:	4d 85 c0             	test   %r8,%r8
140971658:	74 8c                	je     0x1409715e6
14097165a:	48 8b 54 24 68       	mov    0x68(%rsp),%rdx
14097165f:	49 2b d0             	sub    %r8,%rdx
140971662:	48 83 e2 f0          	and    $0xfffffffffffffff0,%rdx
140971666:	49 8b c0             	mov    %r8,%rax
140971669:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140971670:	72 15                	jb     0x140971687
140971672:	48 83 c2 27          	add    $0x27,%rdx
140971676:	4d 8b 40 f8          	mov    -0x8(%r8),%r8
14097167a:	49 2b c0             	sub    %r8,%rax
14097167d:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140971681:	48 83 f8 1f          	cmp    $0x1f,%rax
140971685:	77 08                	ja     0x14097168f
140971687:	49 8b c8             	mov    %r8,%rcx
14097168a:	e9 52 ff ff ff       	jmp    0x1409715e1
14097168f:	e8 10 8b 4b 00       	call   0x140e2a1a4
140971694:	cc                   	int3
140971695:	e8 46 fc ff ff       	call   0x1409712e0
14097169a:	cc                   	int3
14097169b:	e8 f0 be 82 ff       	call   0x14019d590
1409716a0:	cc                   	int3
1409716a1:	cc                   	int3
1409716a2:	cc                   	int3
1409716a3:	cc                   	int3
1409716a4:	cc                   	int3
1409716a5:	cc                   	int3
1409716a6:	cc                   	int3
1409716a7:	cc                   	int3
1409716a8:	cc                   	int3
1409716a9:	cc                   	int3
1409716aa:	cc                   	int3
1409716ab:	cc                   	int3
1409716ac:	cc                   	int3
1409716ad:	cc                   	int3
1409716ae:	cc                   	int3
1409716af:	cc                   	int3
1409716b0:	4c 8b d1             	mov    %rcx,%r10
1409716b3:	4c 8d 5a 02          	lea    0x2(%rdx),%r11
1409716b7:	0f b7 0a             	movzwl (%rdx),%ecx
1409716ba:	41 89 09             	mov    %ecx,(%r9)
1409716bd:	81 f9 00 d8 00 00    	cmp    $0xd800,%ecx
1409716c3:	73 0c                	jae    0x1409716d1
1409716c5:	4d 89 1a             	mov    %r11,(%r10)
1409716c8:	41 c6 42 08 01       	movb   $0x1,0x8(%r10)
1409716cd:	49 8b c2             	mov    %r10,%rax
1409716d0:	c3                   	ret
1409716d1:	81 f9 ff db 00 00    	cmp    $0xdbff,%ecx
1409716d7:	77 6a                	ja     0x140971743
1409716d9:	4d 3b d8             	cmp    %r8,%r11
1409716dc:	75 13                	jne    0x1409716f1
1409716de:	41 c7 01 fd ff 00 00 	movl   $0xfffd,(%r9)
1409716e5:	49 8b c2             	mov    %r10,%rax
1409716e8:	4d 89 02             	mov    %r8,(%r10)
1409716eb:	41 c6 42 08 00       	movb   $0x0,0x8(%r10)
1409716f0:	c3                   	ret
1409716f1:	b8 00 24 00 00       	mov    $0x2400,%eax
1409716f6:	41 b8 ff 03 00 00    	mov    $0x3ff,%r8d
1409716fc:	66 41 03 03          	add    (%r11),%ax
140971700:	66 41 3b c0          	cmp    %r8w,%ax
140971704:	77 2a                	ja     0x140971730
140971706:	81 c1 00 28 ff ff    	add    $0xffff2800,%ecx
14097170c:	41 c6 42 08 01       	movb   $0x1,0x8(%r10)
140971711:	c1 e1 0a             	shl    $0xa,%ecx
140971714:	41 89 09             	mov    %ecx,(%r9)
140971717:	41 0f b7 03          	movzwl (%r11),%eax
14097171b:	05 00 24 00 00       	add    $0x2400,%eax
140971720:	03 c8                	add    %eax,%ecx
140971722:	48 8d 42 04          	lea    0x4(%rdx),%rax
140971726:	49 89 02             	mov    %rax,(%r10)
140971729:	49 8b c2             	mov    %r10,%rax
14097172c:	41 89 09             	mov    %ecx,(%r9)
14097172f:	c3                   	ret
140971730:	41 c7 01 fd ff 00 00 	movl   $0xfffd,(%r9)
140971737:	49 8b c2             	mov    %r10,%rax
14097173a:	4d 89 1a             	mov    %r11,(%r10)
14097173d:	41 c6 42 08 00       	movb   $0x0,0x8(%r10)
140971742:	c3                   	ret
140971743:	4d 89 1a             	mov    %r11,(%r10)
140971746:	81 f9 ff df 00 00    	cmp    $0xdfff,%ecx
14097174c:	0f 87 76 ff ff ff    	ja     0x1409716c8
140971752:	41 c7 01 fd ff 00 00 	movl   $0xfffd,(%r9)
140971759:	49 8b c2             	mov    %r10,%rax
14097175c:	41 c6 42 08 00       	movb   $0x0,0x8(%r10)
140971761:	c3                   	ret
140971762:	cc                   	int3
140971763:	cc                   	int3
140971764:	cc                   	int3
140971765:	cc                   	int3
140971766:	cc                   	int3
140971767:	cc                   	int3
140971768:	cc                   	int3
140971769:	cc                   	int3
14097176a:	cc                   	int3
14097176b:	cc                   	int3
14097176c:	cc                   	int3
14097176d:	cc                   	int3
14097176e:	cc                   	int3
14097176f:	cc                   	int3
140971770:	48 83 ec 38          	sub    $0x38,%rsp
140971774:	48 81 79 10 00 01 00 	cmpq   $0x100,0x10(%rcx)
14097177b:	00
14097177c:	75 3e                	jne    0x1409717bc
14097177e:	4c 8b 51 20          	mov    0x20(%rcx),%r10
140971782:	4c 8d 99 28 02 00 00 	lea    0x228(%rcx),%r11
140971789:	48 c7 41 10 00 00 00 	movq   $0x0,0x10(%rcx)
140971790:	00
140971791:	49 8b d2             	mov    %r10,%rdx
140971794:	49 83 7a 18 07       	cmpq   $0x7,0x18(%r10)
140971799:	76 03                	jbe    0x14097179e
14097179b:	49 8b 12             	mov    (%r10),%rdx
14097179e:	49 8b 42 10          	mov    0x10(%r10),%rax
1409717a2:	4c 8d 49 28          	lea    0x28(%rcx),%r9
1409717a6:	49 8b ca             	mov    %r10,%rcx
1409717a9:	4c 89 5c 24 20       	mov    %r11,0x20(%rsp)
1409717ae:	4c 8d 04 42          	lea    (%rdx,%rax,2),%r8
1409717b2:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1409717b7:	e8 24 dd ff ff       	call   0x14096f4e0
1409717bc:	48 83 c4 38          	add    $0x38,%rsp
1409717c0:	c3                   	ret
1409717c1:	cc                   	int3
1409717c2:	cc                   	int3
1409717c3:	cc                   	int3
1409717c4:	cc                   	int3
1409717c5:	cc                   	int3
1409717c6:	cc                   	int3
1409717c7:	cc                   	int3
1409717c8:	cc                   	int3
1409717c9:	cc                   	int3