14023d364:	89 7c 24 30          	mov    %edi,0x30(%rsp)
14023d368:	48 8b 84 24 a0 00 00 	mov    0xa0(%rsp),%rax
14023d36f:	00
14023d370:	be 01 00 00 00       	mov    $0x1,%esi
14023d375:	44 8b 40 0c          	mov    0xc(%rax),%r8d
14023d379:	4c 8d 78 0c          	lea    0xc(%rax),%r15
14023d37d:	4c 8b 94 24 b8 00 00 	mov    0xb8(%rsp),%r10
14023d384:	00
14023d385:	4c 89 a4 24 80 00 00 	mov    %r12,0x80(%rsp)
14023d38c:	00
14023d38d:	44 8d 6e 0b          	lea    0xb(%rsi),%r13d
14023d391:	41 0f c8             	bswap  %r8d
14023d394:	44 89 84 24 90 00 00 	mov    %r8d,0x90(%rsp)
14023d39b:	00
14023d39c:	48 83 fb 10          	cmp    $0x10,%rbx
14023d3a0:	0f 82 ef 00 00 00    	jb     0x14023d495
14023d3a6:	48 8b bc 24 a0 00 00 	mov    0xa0(%rsp),%rdi
14023d3ad:	00
14023d3ae:	b8 00 00 00 10       	mov    $0x10000000,%eax
14023d3b3:	0f 1f 40 00          	nopl   0x0(%rax)
14023d3b7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14023d3be:	00 00
14023d3c0:	48 8b d3             	mov    %rbx,%rdx
14023d3c3:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14023d3c8:	48 c1 ea 04          	shr    $0x4,%rdx
14023d3cc:	4d 8b cb             	mov    %r11,%r9
14023d3cf:	48 3b d0             	cmp    %rax,%rdx
14023d3d2:	48 0f 47 d0          	cmova  %rax,%rdx
14023d3d6:	44 03 c2             	add    %edx,%r8d
14023d3d9:	4c 8b e2             	mov    %rdx,%r12
14023d3dc:	41 8b c0             	mov    %r8d,%eax
14023d3df:	41 8b c8             	mov    %r8d,%ecx
14023d3e2:	4c 2b e0             	sub    %rax,%r12
14023d3e5:	48 3b c2             	cmp    %rdx,%rax
14023d3e8:	4c 0f 43 e2          	cmovae %rdx,%r12
14023d3ec:	45 33 c0             	xor    %r8d,%r8d
14023d3ef:	48 3b c2             	cmp    %rdx,%rax
14023d3f2:	49 8b d6             	mov    %r14,%rdx
14023d3f5:	44 0f 43 c1          	cmovae %ecx,%r8d
14023d3f9:	48 8b cd             	mov    %rbp,%rcx
14023d3fc:	44 89 84 24 90 00 00 	mov    %r8d,0x90(%rsp)
14023d403:	00
14023d404:	4d 8b c4             	mov    %r12,%r8
14023d407:	41 ff d2             	call   *%r10
14023d40a:	44 8b 84 24 90 00 00 	mov    0x90(%rsp),%r8d
14023d411:	00
14023d412:	41 8b c0             	mov    %r8d,%eax
14023d415:	0f c8                	bswap  %eax
14023d417:	41 89 07             	mov    %eax,(%r15)
14023d41a:	45 85 c0             	test   %r8d,%r8d
14023d41d:	75 2e                	jne    0x14023d44d
14023d41f:	45 8b c5             	mov    %r13d,%r8d
14023d422:	8b c6                	mov    %esi,%eax
14023d424:	49 8b d7             	mov    %r15,%rdx
14023d427:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14023d42e:	00 00
14023d430:	0f b6 4a ff          	movzbl -0x1(%rdx),%ecx
14023d434:	48 8d 52 ff          	lea    -0x1(%rdx),%rdx
14023d438:	03 c1                	add    %ecx,%eax
14023d43a:	88 02                	mov    %al,(%rdx)
14023d43c:	c1 e8 08             	shr    $0x8,%eax
14023d43f:	41 83 c0 ff          	add    $0xffffffff,%r8d
14023d443:	75 eb                	jne    0x14023d430
14023d445:	44 8b 84 24 90 00 00 	mov    0x90(%rsp),%r8d
14023d44c:	00
14023d44d:	4c 8b 94 24 b8 00 00 	mov    0xb8(%rsp),%r10
14023d454:	00
14023d455:	b8 00 00 00 10       	mov    $0x10000000,%eax
14023d45a:	4c 8b 9c 24 98 00 00 	mov    0x98(%rsp),%r11
14023d461:	00
14023d462:	49 c1 e4 04          	shl    $0x4,%r12
14023d466:	49 2b dc             	sub    %r12,%rbx
14023d469:	4d 03 f4             	add    %r12,%r14
14023d46c:	49 03 ec             	add    %r12,%rbp
14023d46f:	48 83 fb 10          	cmp    $0x10,%rbx
14023d473:	0f 83 47 ff ff ff    	jae    0x14023d3c0
14023d479:	8b 7c 24 30          	mov    0x30(%rsp),%edi
14023d47d:	4c 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%r9
14023d484:	00
14023d485:	48 8b 84 24 a0 00 00 	mov    0xa0(%rsp),%rax
14023d48c:	00
14023d48d:	44 89 84 24 90 00 00 	mov    %r8d,0x90(%rsp)
14023d494:	00
14023d495:	48 85 db             	test   %rbx,%rbx
14023d498:	74 78                	je     0x14023d512
14023d49a:	4c 8b a4 24 a8 00 00 	mov    0xa8(%rsp),%r12
14023d4a1:	00
14023d4a2:	0f 57 c0             	xorps  %xmm0,%xmm0
14023d4a5:	4d 8b cb             	mov    %r11,%r9
14023d4a8:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14023d4ad:	4c 8b c6             	mov    %rsi,%r8
14023d4b0:	49 8b d4             	mov    %r12,%rdx
14023d4b3:	49 8b cc             	mov    %r12,%rcx
14023d4b6:	41 0f 11 04 24       	movups %xmm0,(%r12)
14023d4bb:	41 ff d2             	call   *%r10
14023d4be:	44 8b 84 24 90 00 00 	mov    0x90(%rsp),%r8d
14023d4c5:	00
14023d4c6:	44 03 c6             	add    %esi,%r8d
14023d4c9:	41 0f c8             	bswap  %r8d
14023d4cc:	45 89 07             	mov    %r8d,(%r15)
14023d4cf:	75 1f                	jne    0x14023d4f0
14023d4d1:	41 0f b6 47 ff       	movzbl -0x1(%r15),%eax
14023d4d6:	4d 8d 7f ff          	lea    -0x1(%r15),%r15
14023d4da:	03 f0                	add    %eax,%esi
14023d4dc:	41 88 37             	mov    %sil,(%r15)
14023d4df:	c1 ee 08             	shr    $0x8,%esi
14023d4e2:	41 83 c5 ff          	add    $0xffffffff,%r13d
14023d4e6:	75 e9                	jne    0x14023d4d1
14023d4e8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14023d4ef:	00
14023d4f0:	8b cf                	mov    %edi,%ecx
14023d4f2:	ff c7                	inc    %edi
14023d4f4:	0f b6 04 29          	movzbl (%rcx,%rbp,1),%eax
14023d4f8:	42 32 04 21          	xor    (%rcx,%r12,1),%al
14023d4fc:	42 88 04 31          	mov    %al,(%rcx,%r14,1)
14023d500:	48 83 eb 01          	sub    $0x1,%rbx
14023d504:	75 ea                	jne    0x14023d4f0
14023d506:	48 8b 84 24 b0 00 00 	mov    0xb0(%rsp),%rax
14023d50d:	00
14023d50e:	89 38                	mov    %edi,(%rax)
14023d510:	eb 03                	jmp    0x14023d515
14023d512:	41 89 39             	mov    %edi,(%r9)
14023d515:	4c 8b a4 24 80 00 00 	mov    0x80(%rsp),%r12
14023d51c:	00
14023d51d:	48 83 c4 40          	add    $0x40,%rsp
14023d521:	41 5f                	pop    %r15
14023d523:	41 5e                	pop    %r14
14023d525:	41 5d                	pop    %r13
14023d527:	5f                   	pop    %rdi
14023d528:	5e                   	pop    %rsi
14023d529:	5d                   	pop    %rbp
14023d52a:	5b                   	pop    %rbx
14023d52b:	c3                   	ret
14023d52c:	cc                   	int3
14023d52d:	cc                   	int3
14023d52e:	cc                   	int3
14023d52f:	cc                   	int3
14023d530:	0f b6 51 0f          	movzbl 0xf(%rcx),%edx
14023d534:	ff c2                	inc    %edx
14023d536:	88 51 0f             	mov    %dl,0xf(%rcx)
14023d539:	0f b6 41 0e          	movzbl 0xe(%rcx),%eax
14023d53d:	c1 ea 08             	shr    $0x8,%edx
14023d540:	03 d0                	add    %eax,%edx
14023d542:	88 51 0e             	mov    %dl,0xe(%rcx)
14023d545:	0f b6 41 0d          	movzbl 0xd(%rcx),%eax
14023d549:	c1 ea 08             	shr    $0x8,%edx
14023d54c:	03 d0                	add    %eax,%edx
14023d54e:	88 51 0d             	mov    %dl,0xd(%rcx)
14023d551:	0f b6 41 0c          	movzbl 0xc(%rcx),%eax
14023d555:	c1 ea 08             	shr    $0x8,%edx
14023d558:	03 d0                	add    %eax,%edx
14023d55a:	88 51 0c             	mov    %dl,0xc(%rcx)
14023d55d:	0f b6 41 0b          	movzbl 0xb(%rcx),%eax
14023d561:	c1 ea 08             	shr    $0x8,%edx
14023d564:	03 d0                	add    %eax,%edx
14023d566:	88 51 0b             	mov    %dl,0xb(%rcx)
14023d569:	0f b6 41 0a          	movzbl 0xa(%rcx),%eax
14023d56d:	c1 ea 08             	shr    $0x8,%edx
14023d570:	03 d0                	add    %eax,%edx
14023d572:	88 51 0a             	mov    %dl,0xa(%rcx)
14023d575:	0f b6 41 09          	movzbl 0x9(%rcx),%eax
14023d579:	c1 ea 08             	shr    $0x8,%edx
14023d57c:	03 d0                	add    %eax,%edx
14023d57e:	88 51 09             	mov    %dl,0x9(%rcx)
14023d581:	0f b6 41 08          	movzbl 0x8(%rcx),%eax
14023d585:	c1 ea 08             	shr    $0x8,%edx
14023d588:	03 d0                	add    %eax,%edx
14023d58a:	88 51 08             	mov    %dl,0x8(%rcx)
14023d58d:	0f b6 41 07          	movzbl 0x7(%rcx),%eax
14023d591:	c1 ea 08             	shr    $0x8,%edx
14023d594:	03 d0                	add    %eax,%edx
14023d596:	88 51 07             	mov    %dl,0x7(%rcx)
14023d599:	0f b6 41 06          	movzbl 0x6(%rcx),%eax
14023d59d:	c1 ea 08             	shr    $0x8,%edx
14023d5a0:	03 d0                	add    %eax,%edx
14023d5a2:	88 51 06             	mov    %dl,0x6(%rcx)
14023d5a5:	0f b6 41 05          	movzbl 0x5(%rcx),%eax
14023d5a9:	c1 ea 08             	shr    $0x8,%edx
14023d5ac:	03 d0                	add    %eax,%edx
14023d5ae:	88 51 05             	mov    %dl,0x5(%rcx)
14023d5b1:	0f b6 41 04          	movzbl 0x4(%rcx),%eax
14023d5b5:	c1 ea 08             	shr    $0x8,%edx
14023d5b8:	03 d0                	add    %eax,%edx
14023d5ba:	88 51 04             	mov    %dl,0x4(%rcx)
14023d5bd:	0f b6 41 03          	movzbl 0x3(%rcx),%eax
14023d5c1:	c1 ea 08             	shr    $0x8,%edx
14023d5c4:	03 d0                	add    %eax,%edx
14023d5c6:	88 51 03             	mov    %dl,0x3(%rcx)
14023d5c9:	0f b6 41 02          	movzbl 0x2(%rcx),%eax
14023d5cd:	c1 ea 08             	shr    $0x8,%edx
14023d5d0:	03 d0                	add    %eax,%edx
14023d5d2:	88 51 02             	mov    %dl,0x2(%rcx)
14023d5d5:	0f b6 41 01          	movzbl 0x1(%rcx),%eax
14023d5d9:	c1 ea 08             	shr    $0x8,%edx
14023d5dc:	03 d0                	add    %eax,%edx
14023d5de:	88 51 01             	mov    %dl,0x1(%rcx)
14023d5e1:	c1 ea 08             	shr    $0x8,%edx
14023d5e4:	00 11                	add    %dl,(%rcx)
14023d5e6:	c3                   	ret
14023d5e7:	cc                   	int3
14023d5e8:	cc                   	int3
14023d5e9:	cc                   	int3
14023d5ea:	cc                   	int3
14023d5eb:	cc                   	int3
14023d5ec:	cc                   	int3
14023d5ed:	cc                   	int3
14023d5ee:	cc                   	int3
14023d5ef:	cc                   	int3
14023d5f0:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14023d5f5:	53                   	push   %rbx
14023d5f6:	56                   	push   %rsi
14023d5f7:	57                   	push   %rdi
14023d5f8:	41 54                	push   %r12
14023d5fa:	41 57                	push   %r15
14023d5fc:	b8 30 00 00 00       	mov    $0x30,%eax
14023d601:	e8 2a 35 07 00       	call   0x1402b0b30
14023d606:	48 2b e0             	sub    %rax,%rsp
14023d609:	48 8b b4 24 88 00 00 	mov    0x88(%rsp),%rsi
14023d610:	00
14023d611:	4d 8b d1             	mov    %r9,%r10
14023d614:	49 8b f8             	mov    %r8,%rdi
14023d617:	4c 8b fa             	mov    %rdx,%r15
14023d61a:	4c 8b e1             	mov    %rcx,%r12
14023d61d:	8b 1e                	mov    (%rsi),%ebx
14023d61f:	85 db                	test   %ebx,%ebx
14023d621:	79 12                	jns    0x14023d635
14023d623:	c7 06 ff ff ff ff    	movl   $0xffffffff,(%rsi)
14023d629:	48 83 c4 30          	add    $0x30,%rsp
14023d62d:	41 5f                	pop    %r15
14023d62f:	41 5c                	pop    %r12
14023d631:	5f                   	pop    %rdi
14023d632:	5e                   	pop    %rsi
14023d633:	5b                   	pop    %rbx
14023d634:	c3                   	ret
14023d635:	48 89 6c 24 60       	mov    %rbp,0x60(%rsp)
14023d63a:	48 8b ac 24 80 00 00 	mov    0x80(%rsp),%rbp
14023d641:	00
14023d642:	85 db                	test   %ebx,%ebx
14023d644:	74 22                	je     0x14023d668
14023d646:	48 85 ff             	test   %rdi,%rdi
14023d649:	74 1d                	je     0x14023d668
14023d64b:	8b c3                	mov    %ebx,%eax
14023d64d:	48 ff cf             	dec    %rdi
14023d650:	0f b6 0c 28          	movzbl (%rax,%rbp,1),%ecx
14023d654:	41 32 0c 24          	xor    (%r12),%cl
14023d658:	49 ff c4             	inc    %r12
14023d65b:	41 88 0f             	mov    %cl,(%r15)
14023d65e:	49 ff c7             	inc    %r15
14023d661:	ff c3                	inc    %ebx
14023d663:	83 e3 0f             	and    $0xf,%ebx
14023d666:	75 de                	jne    0x14023d646
14023d668:	4c 8b 8c 24 90 00 00 	mov    0x90(%rsp),%r9
14023d66f:	00
14023d670:	48 83 ff 10          	cmp    $0x10,%rdi
14023d674:	0f 82 bf 00 00 00    	jb     0x14023d739
14023d67a:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
14023d67f:	49 8b f7             	mov    %r15,%rsi
14023d682:	4c 8b ef             	mov    %rdi,%r13
14023d685:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
14023d68a:	49 c1 ed 04          	shr    $0x4,%r13
14023d68e:	4d 8b f4             	mov    %r12,%r14
14023d691:	49 6b c5 f0          	imul   $0xfffffffffffffff0,%r13,%rax
14023d695:	48 2b f5             	sub    %rbp,%rsi
14023d698:	4c 2b f5             	sub    %rbp,%r14
14023d69b:	48 03 f8             	add    %rax,%rdi
14023d69e:	49 8b c5             	mov    %r13,%rax
14023d6a1:	48 c1 e0 04          	shl    $0x4,%rax
14023d6a5:	4c 03 f8             	add    %rax,%r15
14023d6a8:	4c 89 7c 24 68       	mov    %r15,0x68(%rsp)
14023d6ad:	4c 03 e0             	add    %rax,%r12
14023d6b0:	4c 8b 7c 24 78       	mov    0x78(%rsp),%r15
14023d6b5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
14023d6bc:	00 00 00 00
14023d6c0:	4d 8b c7             	mov    %r15,%r8
14023d6c3:	48 8b d5             	mov    %rbp,%rdx
14023d6c6:	48 8b cd             	mov    %rbp,%rcx
14023d6c9:	41 ff d1             	call   *%r9
14023d6cc:	83 fb 10             	cmp    $0x10,%ebx
14023d6cf:	73 34                	jae    0x14023d705
14023d6d1:	ba 0f 00 00 00       	mov    $0xf,%edx
14023d6d6:	8b c3                	mov    %ebx,%eax
14023d6d8:	2b d3                	sub    %ebx,%edx
14023d6da:	48 03 c5             	add    %rbp,%rax
14023d6dd:	c1 ea 03             	shr    $0x3,%edx
14023d6e0:	ff c2                	inc    %edx
14023d6e2:	0f 1f 40 00          	nopl   0x0(%rax)
14023d6e6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14023d6ed:	00 00 00
14023d6f0:	49 8b 0c 06          	mov    (%r14,%rax,1),%rcx
14023d6f4:	48 33 08             	xor    (%rax),%rcx
14023d6f7:	48 89 0c 06          	mov    %rcx,(%rsi,%rax,1)
14023d6fb:	48 8d 40 08          	lea    0x8(%rax),%rax
14023d6ff:	48 83 ea 01          	sub    $0x1,%rdx
14023d703:	75 eb                	jne    0x14023d6f0
14023d705:	4c 8b 8c 24 90 00 00 	mov    0x90(%rsp),%r9
14023d70c:	00
14023d70d:	48 83 c6 10          	add    $0x10,%rsi
14023d711:	49 83 c6 10          	add    $0x10,%r14
14023d715:	33 db                	xor    %ebx,%ebx
14023d717:	49 83 ed 01          	sub    $0x1,%r13
14023d71b:	75 a3                	jne    0x14023d6c0
14023d71d:	4c 8b 7c 24 68       	mov    0x68(%rsp),%r15
14023d722:	4c 8b 54 24 78       	mov    0x78(%rsp),%r10
14023d727:	48 8b b4 24 88 00 00 	mov    0x88(%rsp),%rsi
14023d72e:	00
14023d72f:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
14023d734:	4c 8b 6c 24 28       	mov    0x28(%rsp),%r13
14023d739:	48 85 ff             	test   %rdi,%rdi
14023d73c:	74 28                	je     0x14023d766
14023d73e:	4d 8b c2             	mov    %r10,%r8
14023d741:	48 8b d5             	mov    %rbp,%rdx
14023d744:	48 8b cd             	mov    %rbp,%rcx
14023d747:	41 ff d1             	call   *%r9
14023d74a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
14023d750:	8b cb                	mov    %ebx,%ecx
14023d752:	ff c3                	inc    %ebx
14023d754:	42 0f b6 04 21       	movzbl (%rcx,%r12,1),%eax
14023d759:	32 04 29             	xor    (%rcx,%rbp,1),%al
14023d75c:	42 88 04 39          	mov    %al,(%rcx,%r15,1)
14023d760:	48 83 ef 01          	sub    $0x1,%rdi
14023d764:	75 ea                	jne    0x14023d750
14023d766:	89 1e                	mov    %ebx,(%rsi)
14023d768:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
14023d76d:	48 83 c4 30          	add    $0x30,%rsp
14023d771:	41 5f                	pop    %r15
14023d773:	41 5c                	pop    %r12
14023d775:	5f                   	pop    %rdi
14023d776:	5e                   	pop    %rsi
14023d777:	5b                   	pop    %rbx
14023d778:	c3                   	ret
14023d779:	cc                   	int3
14023d77a:	cc                   	int3
14023d77b:	cc                   	int3
14023d77c:	cc                   	int3
14023d77d:	cc                   	int3
14023d77e:	cc                   	int3
14023d77f:	cc                   	int3
14023d780:	40 56                	rex push %rsi
14023d782:	57                   	push   %rdi
14023d783:	41 55                	push   %r13
14023d785:	b8 90 00 00 00       	mov    $0x90,%eax
14023d78a:	e8 a1 33 07 00       	call   0x1402b0b30
14023d78f:	48 2b e0             	sub    %rax,%rsp
14023d792:	48 8b 05 e7 82 19 00 	mov    0x1982e7(%rip),%rax        # 0x1403d5a80
14023d799:	48 33 c4             	xor    %rsp,%rax
14023d79c:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
14023d7a1:	4c 8b 94 24 e8 00 00 	mov    0xe8(%rsp),%r10
14023d7a8:	00
14023d7a9:	33 ff                	xor    %edi,%edi
14023d7ab:	48 8b b4 24 d0 00 00 	mov    0xd0(%rsp),%rsi