140d2a500:	0f b6 04 0e          	movzbl (%rsi,%rcx,1),%eax
140d2a504:	88 01                	mov    %al,(%rcx)
140d2a506:	48 8d 49 01          	lea    0x1(%rcx),%rcx
140d2a50a:	48 83 ea 01          	sub    $0x1,%rdx
140d2a50e:	75 f0                	jne    0x140d2a500
140d2a510:	4c 8b 6c 24 68       	mov    0x68(%rsp),%r13
140d2a515:	4c 8b 64 24 70       	mov    0x70(%rsp),%r12
140d2a51a:	48 8b ac 24 b0 00 00 	mov    0xb0(%rsp),%rbp
140d2a521:	00
140d2a522:	4c 8b 74 24 60       	mov    0x60(%rsp),%r14
140d2a527:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140d2a52c:	48 33 cc             	xor    %rsp,%rcx
140d2a52f:	e8 cc 0f 0f 00       	call   0x140e1b500
140d2a534:	48 83 c4 78          	add    $0x78,%rsp
140d2a538:	41 5f                	pop    %r15
140d2a53a:	5f                   	pop    %rdi
140d2a53b:	5e                   	pop    %rsi
140d2a53c:	5b                   	pop    %rbx
140d2a53d:	c3                   	ret
140d2a53e:	cc                   	int3
140d2a53f:	cc                   	int3
140d2a540:	4d 85 c0             	test   %r8,%r8
140d2a543:	0f 84 c3 01 00 00    	je     0x140d2a70c
140d2a549:	53                   	push   %rbx
140d2a54a:	56                   	push   %rsi
140d2a54b:	57                   	push   %rdi
140d2a54c:	41 54                	push   %r12
140d2a54e:	41 55                	push   %r13
140d2a550:	b8 20 00 00 00       	mov    $0x20,%eax
140d2a555:	e8 46 0f 0f 00       	call   0x140e1b4a0
140d2a55a:	48 2b e0             	sub    %rax,%rsp
140d2a55d:	4c 8b 6c 24 70       	mov    0x70(%rsp),%r13
140d2a562:	49 8b d8             	mov    %r8,%rbx
140d2a565:	4c 89 7c 24 60       	mov    %r15,0x60(%rsp)
140d2a56a:	4d 8b e1             	mov    %r9,%r12
140d2a56d:	4c 8b 7c 24 78       	mov    0x78(%rsp),%r15
140d2a572:	48 8b fa             	mov    %rdx,%rdi
140d2a575:	48 8b f1             	mov    %rcx,%rsi
140d2a578:	4d 8b d5             	mov    %r13,%r10
140d2a57b:	48 83 fb 10          	cmp    $0x10,%rbx
140d2a57f:	72 75                	jb     0x140d2a5f6
140d2a581:	48 89 6c 24 50       	mov    %rbp,0x50(%rsp)
140d2a586:	48 8b eb             	mov    %rbx,%rbp
140d2a589:	48 c1 ed 04          	shr    $0x4,%rbp
140d2a58d:	48 6b c5 f0          	imul   $0xfffffffffffffff0,%rbp,%rax
140d2a591:	48 03 d8             	add    %rax,%rbx
140d2a594:	4c 2b d6             	sub    %rsi,%r10
140d2a597:	4c 8b c7             	mov    %rdi,%r8
140d2a59a:	4c 2b c6             	sub    %rsi,%r8
140d2a59d:	48 8b ce             	mov    %rsi,%rcx
140d2a5a0:	ba 02 00 00 00       	mov    $0x2,%edx
140d2a5a5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
140d2a5ac:	00 00 00 00
140d2a5b0:	4a 8b 04 11          	mov    (%rcx,%r10,1),%rax
140d2a5b4:	48 33 01             	xor    (%rcx),%rax
140d2a5b7:	49 89 04 08          	mov    %rax,(%r8,%rcx,1)
140d2a5bb:	48 8d 49 08          	lea    0x8(%rcx),%rcx
140d2a5bf:	48 83 ea 01          	sub    $0x1,%rdx
140d2a5c3:	75 eb                	jne    0x140d2a5b0
140d2a5c5:	4d 8b c4             	mov    %r12,%r8
140d2a5c8:	48 8b d7             	mov    %rdi,%rdx
140d2a5cb:	48 8b cf             	mov    %rdi,%rcx
140d2a5ce:	49 8b c7             	mov    %r15,%rax
140d2a5d1:	ff 15 49 94 25 00    	call   *0x259449(%rip)        # 0x140f83a20
140d2a5d7:	4c 8b d7             	mov    %rdi,%r10
140d2a5da:	48 83 c6 10          	add    $0x10,%rsi
140d2a5de:	48 83 c7 10          	add    $0x10,%rdi
140d2a5e2:	48 83 ed 01          	sub    $0x1,%rbp
140d2a5e6:	75 ac                	jne    0x140d2a594
140d2a5e8:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140d2a5ed:	48 85 db             	test   %rbx,%rbx
140d2a5f0:	0f 84 fd 00 00 00    	je     0x140d2a6f3
140d2a5f6:	4c 89 74 24 58       	mov    %r14,0x58(%rsp)
140d2a5fb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140d2a600:	4d 8b c2             	mov    %r10,%r8
140d2a603:	48 8d 46 01          	lea    0x1(%rsi),%rax
140d2a607:	4c 8b cf             	mov    %rdi,%r9
140d2a60a:	41 bb 01 00 00 00    	mov    $0x1,%r11d
140d2a610:	4c 2b c6             	sub    %rsi,%r8
140d2a613:	4c 2b ce             	sub    %rsi,%r9
140d2a616:	4c 2b de             	sub    %rsi,%r11
140d2a619:	33 d2                	xor    %edx,%edx
140d2a61b:	41 be 02 00 00 00    	mov    $0x2,%r14d
140d2a621:	4c 2b f6             	sub    %rsi,%r14
140d2a624:	48 3b d3             	cmp    %rbx,%rdx
140d2a627:	73 77                	jae    0x140d2a6a0
140d2a629:	41 0f b6 4c 00 ff    	movzbl -0x1(%r8,%rax,1),%ecx
140d2a62f:	32 48 ff             	xor    -0x1(%rax),%cl
140d2a632:	41 88 4c 01 ff       	mov    %cl,-0x1(%r9,%rax,1)
140d2a637:	48 8b c8             	mov    %rax,%rcx
140d2a63a:	48 2b ce             	sub    %rsi,%rcx
140d2a63d:	48 3b cb             	cmp    %rbx,%rcx
140d2a640:	73 55                	jae    0x140d2a697
140d2a642:	41 0f b6 0c 00       	movzbl (%r8,%rax,1),%ecx
140d2a647:	32 08                	xor    (%rax),%cl
140d2a649:	41 88 0c 01          	mov    %cl,(%r9,%rax,1)
140d2a64d:	49 8d 0c 03          	lea    (%r11,%rax,1),%rcx
140d2a651:	48 3b cb             	cmp    %rbx,%rcx
140d2a654:	73 3b                	jae    0x140d2a691
140d2a656:	41 0f b6 4c 00 01    	movzbl 0x1(%r8,%rax,1),%ecx
140d2a65c:	32 48 01             	xor    0x1(%rax),%cl
140d2a65f:	41 88 4c 01 01       	mov    %cl,0x1(%r9,%rax,1)
140d2a664:	49 8d 0c 06          	lea    (%r14,%rax,1),%rcx
140d2a668:	48 3b cb             	cmp    %rbx,%rcx
140d2a66b:	73 1e                	jae    0x140d2a68b
140d2a66d:	41 0f b6 4c 00 02    	movzbl 0x2(%r8,%rax,1),%ecx
140d2a673:	48 83 c2 04          	add    $0x4,%rdx
140d2a677:	32 48 02             	xor    0x2(%rax),%cl
140d2a67a:	41 88 4c 01 02       	mov    %cl,0x2(%r9,%rax,1)
140d2a67f:	48 83 c0 04          	add    $0x4,%rax
140d2a683:	48 83 fa 10          	cmp    $0x10,%rdx
140d2a687:	72 9b                	jb     0x140d2a624
140d2a689:	eb 36                	jmp    0x140d2a6c1
140d2a68b:	48 83 c2 03          	add    $0x3,%rdx
140d2a68f:	eb 09                	jmp    0x140d2a69a
140d2a691:	48 83 c2 02          	add    $0x2,%rdx
140d2a695:	eb 03                	jmp    0x140d2a69a
140d2a697:	48 ff c2             	inc    %rdx
140d2a69a:	48 83 fa 10          	cmp    $0x10,%rdx
140d2a69e:	73 21                	jae    0x140d2a6c1
140d2a6a0:	4c 2b d7             	sub    %rdi,%r10
140d2a6a3:	48 8d 0c 3a          	lea    (%rdx,%rdi,1),%rcx
140d2a6a7:	41 b8 10 00 00 00    	mov    $0x10,%r8d
140d2a6ad:	4c 2b c2             	sub    %rdx,%r8
140d2a6b0:	41 0f b6 04 0a       	movzbl (%r10,%rcx,1),%eax
140d2a6b5:	88 01                	mov    %al,(%rcx)
140d2a6b7:	48 8d 49 01          	lea    0x1(%rcx),%rcx
140d2a6bb:	49 83 e8 01          	sub    $0x1,%r8
140d2a6bf:	75 ef                	jne    0x140d2a6b0
140d2a6c1:	4d 8b c4             	mov    %r12,%r8
140d2a6c4:	48 8b d7             	mov    %rdi,%rdx
140d2a6c7:	48 8b cf             	mov    %rdi,%rcx
140d2a6ca:	49 8b c7             	mov    %r15,%rax
140d2a6cd:	ff 15 4d 93 25 00    	call   *0x25934d(%rip)        # 0x140f83a20
140d2a6d3:	4c 8b d7             	mov    %rdi,%r10
140d2a6d6:	48 83 fb 10          	cmp    $0x10,%rbx
140d2a6da:	76 12                	jbe    0x140d2a6ee
140d2a6dc:	48 83 c6 10          	add    $0x10,%rsi
140d2a6e0:	48 83 c7 10          	add    $0x10,%rdi
140d2a6e4:	48 83 eb 10          	sub    $0x10,%rbx
140d2a6e8:	0f 85 12 ff ff ff    	jne    0x140d2a600
140d2a6ee:	4c 8b 74 24 58       	mov    0x58(%rsp),%r14
140d2a6f3:	41 0f 10 02          	movups (%r10),%xmm0
140d2a6f7:	4c 8b 7c 24 60       	mov    0x60(%rsp),%r15
140d2a6fc:	41 0f 11 45 00       	movups %xmm0,0x0(%r13)
140d2a701:	48 83 c4 20          	add    $0x20,%rsp
140d2a705:	41 5d                	pop    %r13
140d2a707:	41 5c                	pop    %r12
140d2a709:	5f                   	pop    %rdi
140d2a70a:	5e                   	pop    %rsi
140d2a70b:	5b                   	pop    %rbx
140d2a70c:	c3                   	ret
140d2a70d:	cc                   	int3
140d2a70e:	cc                   	int3
140d2a70f:	cc                   	int3
140d2a710:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140d2a715:	53                   	push   %rbx
140d2a716:	55                   	push   %rbp
140d2a717:	56                   	push   %rsi
140d2a718:	57                   	push   %rdi
140d2a719:	41 54                	push   %r12
140d2a71b:	41 57                	push   %r15
140d2a71d:	b8 28 00 00 00       	mov    $0x28,%eax
140d2a722:	e8 79 0d 0f 00       	call   0x140e1b4a0
140d2a727:	48 2b e0             	sub    %rax,%rsp
140d2a72a:	48 8b b4 24 90 00 00 	mov    0x90(%rsp),%rsi
140d2a731:	00
140d2a732:	4d 8b d1             	mov    %r9,%r10
140d2a735:	4c 8b a4 24 88 00 00 	mov    0x88(%rsp),%r12
140d2a73c:	00
140d2a73d:	49 8b f8             	mov    %r8,%rdi
140d2a740:	4c 8b fa             	mov    %rdx,%r15
140d2a743:	48 8b e9             	mov    %rcx,%rbp
140d2a746:	8b 1e                	mov    (%rsi),%ebx
140d2a748:	85 db                	test   %ebx,%ebx
140d2a74a:	74 26                	je     0x140d2a772
140d2a74c:	0f 1f 40 00          	nopl   0x0(%rax)
140d2a750:	48 85 ff             	test   %rdi,%rdi
140d2a753:	74 1d                	je     0x140d2a772
140d2a755:	8b c3                	mov    %ebx,%eax
140d2a757:	48 ff cf             	dec    %rdi
140d2a75a:	42 0f b6 0c 20       	movzbl (%rax,%r12,1),%ecx
140d2a75f:	32 4d 00             	xor    0x0(%rbp),%cl
140d2a762:	48 ff c5             	inc    %rbp
140d2a765:	41 88 0f             	mov    %cl,(%r15)
140d2a768:	49 ff c7             	inc    %r15
140d2a76b:	ff c3                	inc    %ebx
140d2a76d:	83 e3 0f             	and    $0xf,%ebx
140d2a770:	75 de                	jne    0x140d2a750
140d2a772:	4c 8b 8c 24 98 00 00 	mov    0x98(%rsp),%r9
140d2a779:	00
140d2a77a:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
140d2a781:	00
140d2a782:	48 83 ff 10          	cmp    $0x10,%rdi
140d2a786:	0f 82 c2 00 00 00    	jb     0x140d2a84e
140d2a78c:	4c 89 6c 24 60       	mov    %r13,0x60(%rsp)
140d2a791:	33 db                	xor    %ebx,%ebx
140d2a793:	4c 8b ef             	mov    %rdi,%r13
140d2a796:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
140d2a79b:	49 c1 ed 04          	shr    $0x4,%r13
140d2a79f:	49 8b f7             	mov    %r15,%rsi
140d2a7a2:	49 6b c5 f0          	imul   $0xfffffffffffffff0,%r13,%rax
140d2a7a6:	4c 8b f5             	mov    %rbp,%r14
140d2a7a9:	89 5c 24 70          	mov    %ebx,0x70(%rsp)
140d2a7ad:	48 8b 5c 24 78       	mov    0x78(%rsp),%rbx
140d2a7b2:	48 03 f8             	add    %rax,%rdi
140d2a7b5:	49 8b c5             	mov    %r13,%rax
140d2a7b8:	49 2b f4             	sub    %r12,%rsi
140d2a7bb:	48 c1 e0 04          	shl    $0x4,%rax
140d2a7bf:	4d 2b f4             	sub    %r12,%r14
140d2a7c2:	4c 03 f8             	add    %rax,%r15
140d2a7c5:	48 03 e8             	add    %rax,%rbp
140d2a7c8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140d2a7cf:	00
140d2a7d0:	4c 8b c3             	mov    %rbx,%r8
140d2a7d3:	49 8b d4             	mov    %r12,%rdx
140d2a7d6:	49 8b c1             	mov    %r9,%rax
140d2a7d9:	ff 15 41 92 25 00    	call   *0x259241(%rip)        # 0x140f83a20
140d2a7df:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
140d2a7e6:	00
140d2a7e7:	e8 d4 02 00 00       	call   0x140d2aac0
140d2a7ec:	ba 02 00 00 00       	mov    $0x2,%edx
140d2a7f1:	49 8b cc             	mov    %r12,%rcx
140d2a7f4:	0f 1f 40 00          	nopl   0x0(%rax)
140d2a7f8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140d2a7ff:	00
140d2a800:	49 8b 04 0e          	mov    (%r14,%rcx,1),%rax
140d2a804:	48 33 01             	xor    (%rcx),%rax
140d2a807:	48 89 04 0e          	mov    %rax,(%rsi,%rcx,1)
140d2a80b:	48 8d 49 08          	lea    0x8(%rcx),%rcx
140d2a80f:	48 83 ea 01          	sub    $0x1,%rdx
140d2a813:	75 eb                	jne    0x140d2a800
140d2a815:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
140d2a81c:	00
140d2a81d:	48 83 c6 10          	add    $0x10,%rsi
140d2a821:	4c 8b 8c 24 98 00 00 	mov    0x98(%rsp),%r9
140d2a828:	00
140d2a829:	49 83 c6 10          	add    $0x10,%r14
140d2a82d:	49 83 ed 01          	sub    $0x1,%r13
140d2a831:	75 9d                	jne    0x140d2a7d0
140d2a833:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
140d2a838:	4c 8b 6c 24 60       	mov    0x60(%rsp),%r13
140d2a83d:	8b 5c 24 70          	mov    0x70(%rsp),%ebx
140d2a841:	48 8b b4 24 90 00 00 	mov    0x90(%rsp),%rsi
140d2a848:	00
140d2a849:	4c 8b 54 24 78       	mov    0x78(%rsp),%r10
140d2a84e:	48 85 ff             	test   %rdi,%rdi
140d2a851:	74 33                	je     0x140d2a886
140d2a853:	4d 8b c2             	mov    %r10,%r8
140d2a856:	49 8b d4             	mov    %r12,%rdx
140d2a859:	49 8b c1             	mov    %r9,%rax
140d2a85c:	ff 15 be 91 25 00    	call   *0x2591be(%rip)        # 0x140f83a20
140d2a862:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
140d2a869:	00
140d2a86a:	e8 51 02 00 00       	call   0x140d2aac0
140d2a86f:	90                   	nop
140d2a870:	8b cb                	mov    %ebx,%ecx
140d2a872:	ff c3                	inc    %ebx
140d2a874:	41 0f b6 04 0c       	movzbl (%r12,%rcx,1),%eax
140d2a879:	32 04 29             	xor    (%rcx,%rbp,1),%al
140d2a87c:	41 88 04 0f          	mov    %al,(%r15,%rcx,1)
140d2a880:	48 83 ef 01          	sub    $0x1,%rdi
140d2a884:	75 ea                	jne    0x140d2a870
140d2a886:	89 1e                	mov    %ebx,(%rsi)
140d2a888:	48 83 c4 28          	add    $0x28,%rsp
140d2a88c:	41 5f                	pop    %r15
140d2a88e:	41 5c                	pop    %r12
140d2a890:	5f                   	pop    %rdi
140d2a891:	5e                   	pop    %rsi
140d2a892:	5d                   	pop    %rbp
140d2a893:	5b                   	pop    %rbx
140d2a894:	c3                   	ret
140d2a895:	cc                   	int3
140d2a896:	cc                   	int3
140d2a897:	cc                   	int3
140d2a898:	cc                   	int3
140d2a899:	cc                   	int3
140d2a89a:	cc                   	int3
140d2a89b:	cc                   	int3
140d2a89c:	cc                   	int3
140d2a89d:	cc                   	int3
140d2a89e:	cc                   	int3
140d2a89f:	cc                   	int3
140d2a8a0:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140d2a8a5:	53                   	push   %rbx
140d2a8a6:	55                   	push   %rbp
140d2a8a7:	56                   	push   %rsi
140d2a8a8:	57                   	push   %rdi
140d2a8a9:	41 55                	push   %r13
140d2a8ab:	41 56                	push   %r14
140d2a8ad:	41 57                	push   %r15
140d2a8af:	b8 40 00 00 00       	mov    $0x40,%eax
140d2a8b4:	e8 e7 0b 0f 00       	call   0x140e1b4a0
140d2a8b9:	48 2b e0             	sub    %rax,%rsp
140d2a8bc:	49 8b d8             	mov    %r8,%rbx
140d2a8bf:	4c 8b f2             	mov    %rdx,%r14
140d2a8c2:	4c 8b 84 24 b0 00 00 	mov    0xb0(%rsp),%r8
140d2a8c9:	00
140d2a8ca:	48 8b e9             	mov    %rcx,%rbp
140d2a8cd:	41 8b 38             	mov    (%r8),%edi
140d2a8d0:	89 7c 24 30          	mov    %edi,0x30(%rsp)
140d2a8d4:	85 ff                	test   %edi,%edi
140d2a8d6:	74 2d                	je     0x140d2a905
140d2a8d8:	48 8b 94 24 a8 00 00 	mov    0xa8(%rsp),%rdx
140d2a8df:	00
140d2a8e0:	48 85 db             	test   %rbx,%rbx
140d2a8e3:	74 1c                	je     0x140d2a901
140d2a8e5:	8b c7                	mov    %edi,%eax
140d2a8e7:	48 ff cb             	dec    %rbx
140d2a8ea:	0f b6 0c 10          	movzbl (%rax,%rdx,1),%ecx
140d2a8ee:	32 4d 00             	xor    0x0(%rbp),%cl
140d2a8f1:	48 ff c5             	inc    %rbp
140d2a8f4:	41 88 0e             	mov    %cl,(%r14)
140d2a8f7:	49 ff c6             	inc    %r14
140d2a8fa:	ff c7                	inc    %edi
140d2a8fc:	83 e7 0f             	and    $0xf,%edi
140d2a8ff:	75 df                	jne    0x140d2a8e0
140d2a901:	89 7c 24 30          	mov    %edi,0x30(%rsp)
140d2a905:	48 8b 84 24 a0 00 00 	mov    0xa0(%rsp),%rax
140d2a90c:	00
140d2a90d:	be 01 00 00 00       	mov    $0x1,%esi
140d2a912:	8b 48 0c             	mov    0xc(%rax),%ecx
140d2a915:	4c 8d 78 0c          	lea    0xc(%rax),%r15
140d2a919:	4c 8b 94 24 b8 00 00 	mov    0xb8(%rsp),%r10
140d2a920:	00
140d2a921:	4c 89 a4 24 80 00 00 	mov    %r12,0x80(%rsp)
140d2a928:	00
140d2a929:	44 8d 6e 0b          	lea    0xb(%rsi),%r13d
140d2a92d:	0f c9                	bswap  %ecx
140d2a92f:	89 8c 24 90 00 00 00 	mov    %ecx,0x90(%rsp)
140d2a936:	48 83 fb 10          	cmp    $0x10,%rbx
140d2a93a:	0f 82 e3 00 00 00    	jb     0x140d2aa23
140d2a940:	48 8b bc 24 a0 00 00 	mov    0xa0(%rsp),%rdi
140d2a947:	00
140d2a948:	b8 00 00 00 10       	mov    $0x10000000,%eax
140d2a94d:	0f 1f 00             	nopl   (%rax)
140d2a950:	48 8b d3             	mov    %rbx,%rdx
140d2a953:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140d2a958:	48 c1 ea 04          	shr    $0x4,%rdx
140d2a95c:	48 3b d0             	cmp    %rax,%rdx
140d2a95f:	48 0f 47 d0          	cmova  %rax,%rdx
140d2a963:	03 ca                	add    %edx,%ecx
140d2a965:	4c 8b e2             	mov    %rdx,%r12
140d2a968:	8b c1                	mov    %ecx,%eax
140d2a96a:	4c 2b e0             	sub    %rax,%r12
140d2a96d:	48 3b c2             	cmp    %rdx,%rax
140d2a970:	4c 0f 43 e2          	cmovae %rdx,%r12
140d2a974:	45 33 c0             	xor    %r8d,%r8d
140d2a977:	48 3b c2             	cmp    %rdx,%rax
140d2a97a:	49 8b d6             	mov    %r14,%rdx