14012a527:	48 85 ff             	test   %rdi,%rdi
14012a52a:	74 06                	je     0x14012a532
14012a52c:	c7 07 00 00 00 00    	movl   $0x0,(%rdi)
14012a532:	4c 8b cd             	mov    %rbp,%r9
14012a535:	48 c7 44 24 40 00 00 	movq   $0x0,0x40(%rsp)
14012a53c:	00 00
14012a53e:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
14012a543:	c6 44 24 20 3a       	movb   $0x3a,0x20(%rsp)
14012a548:	48 8b d3             	mov    %rbx,%rdx
14012a54b:	48 8b ce             	mov    %rsi,%rcx
14012a54e:	e8 3d 03 00 00       	call   0x14012a890
14012a553:	85 c0                	test   %eax,%eax
14012a555:	74 10                	je     0x14012a567
14012a557:	48 85 ff             	test   %rdi,%rdi
14012a55a:	74 06                	je     0x14012a562
14012a55c:	8b 44 24 40          	mov    0x40(%rsp),%eax
14012a560:	89 07                	mov    %eax,(%rdi)
14012a562:	48 8b c6             	mov    %rsi,%rax
14012a565:	eb 17                	jmp    0x14012a57e
14012a567:	41 b8 d4 00 00 00    	mov    $0xd4,%r8d
14012a56d:	48 8d 15 9c a0 1e 00 	lea    0x1ea09c(%rip),%rdx        # 0x140314610
14012a574:	48 8b ce             	mov    %rsi,%rcx
14012a577:	e8 44 18 fc ff       	call   0x1400ebdc0
14012a57c:	33 c0                	xor    %eax,%eax
14012a57e:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14012a583:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14012a588:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
14012a58d:	48 83 c4 30          	add    $0x30,%rsp
14012a591:	5f                   	pop    %rdi
14012a592:	c3                   	ret
14012a593:	cc                   	int3
14012a594:	cc                   	int3
14012a595:	cc                   	int3
14012a596:	cc                   	int3
14012a597:	cc                   	int3
14012a598:	cc                   	int3
14012a599:	cc                   	int3
14012a59a:	cc                   	int3
14012a59b:	cc                   	int3
14012a59c:	cc                   	int3
14012a59d:	cc                   	int3
14012a59e:	cc                   	int3
14012a59f:	cc                   	int3
14012a5a0:	b8 38 00 00 00       	mov    $0x38,%eax
14012a5a5:	e8 86 65 18 00       	call   0x1402b0b30
14012a5aa:	48 2b e0             	sub    %rax,%rsp
14012a5ad:	0f b6 44 24 60       	movzbl 0x60(%rsp),%eax
14012a5b2:	88 44 24 60          	mov    %al,0x60(%rsp)
14012a5b6:	48 83 c4 38          	add    $0x38,%rsp
14012a5ba:	e9 d1 02 00 00       	jmp    0x14012a890
14012a5bf:	cc                   	int3
14012a5c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14012a5c5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14012a5ca:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14012a5cf:	57                   	push   %rdi
14012a5d0:	b8 20 00 00 00       	mov    $0x20,%eax
14012a5d5:	e8 56 65 18 00       	call   0x1402b0b30
14012a5da:	48 2b e0             	sub    %rax,%rsp
14012a5dd:	0f be 3a             	movsbl (%rdx),%edi
14012a5e0:	48 8b d9             	mov    %rcx,%rbx
14012a5e3:	0f be 09             	movsbl (%rcx),%ecx
14012a5e6:	48 8b ea             	mov    %rdx,%rbp
14012a5e9:	e8 72 0c 00 00       	call   0x14012b260
14012a5ee:	8b cf                	mov    %edi,%ecx
14012a5f0:	8b f0                	mov    %eax,%esi
14012a5f2:	e8 69 0c 00 00       	call   0x14012b260
14012a5f7:	2b f0                	sub    %eax,%esi
14012a5f9:	75 29                	jne    0x14012a624
14012a5fb:	48 2b eb             	sub    %rbx,%rbp
14012a5fe:	66 90                	xchg   %ax,%ax
14012a600:	0f b6 03             	movzbl (%rbx),%eax
14012a603:	48 8d 5b 01          	lea    0x1(%rbx),%rbx
14012a607:	84 c0                	test   %al,%al
14012a609:	74 30                	je     0x14012a63b
14012a60b:	0f be 0b             	movsbl (%rbx),%ecx
14012a60e:	0f be 3c 2b          	movsbl (%rbx,%rbp,1),%edi
14012a612:	e8 49 0c 00 00       	call   0x14012b260
14012a617:	8b cf                	mov    %edi,%ecx
14012a619:	8b f0                	mov    %eax,%esi
14012a61b:	e8 40 0c 00 00       	call   0x14012b260
14012a620:	2b f0                	sub    %eax,%esi
14012a622:	74 dc                	je     0x14012a600
14012a624:	8b c6                	mov    %esi,%eax
14012a626:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14012a62b:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14012a630:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14012a635:	48 83 c4 20          	add    $0x20,%rsp
14012a639:	5f                   	pop    %rdi
14012a63a:	c3                   	ret
14012a63b:	33 c0                	xor    %eax,%eax
14012a63d:	eb e7                	jmp    0x14012a626
14012a63f:	cc                   	int3
14012a640:	33 c0                	xor    %eax,%eax
14012a642:	44 8b d0             	mov    %eax,%r10d
14012a645:	4d 85 c0             	test   %r8,%r8
14012a648:	74 16                	je     0x14012a660
14012a64a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
14012a650:	38 01                	cmp    %al,(%rcx)
14012a652:	74 0c                	je     0x14012a660
14012a654:	49 ff c2             	inc    %r10
14012a657:	48 ff c1             	inc    %rcx
14012a65a:	49 83 e8 01          	sub    $0x1,%r8
14012a65e:	75 f0                	jne    0x14012a650
14012a660:	4c 8b d8             	mov    %rax,%r11
14012a663:	49 83 f8 01          	cmp    $0x1,%r8
14012a667:	76 25                	jbe    0x14012a68e
14012a669:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
14012a670:	44 0f b6 0a          	movzbl (%rdx),%r9d
14012a674:	45 84 c9             	test   %r9b,%r9b
14012a677:	74 1a                	je     0x14012a693
14012a679:	44 88 09             	mov    %r9b,(%rcx)
14012a67c:	48 ff c2             	inc    %rdx
14012a67f:	48 ff c1             	inc    %rcx
14012a682:	49 ff c3             	inc    %r11
14012a685:	49 ff c8             	dec    %r8
14012a688:	49 83 f8 01          	cmp    $0x1,%r8
14012a68c:	77 e2                	ja     0x14012a670
14012a68e:	4d 85 c0             	test   %r8,%r8
14012a691:	74 02                	je     0x14012a695
14012a693:	88 01                	mov    %al,(%rcx)
14012a695:	38 02                	cmp    %al,(%rdx)
14012a697:	74 18                	je     0x14012a6b1
14012a699:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
14012a6a0:	3d 00 00 00 80       	cmp    $0x80000000,%eax
14012a6a5:	73 0a                	jae    0x14012a6b1
14012a6a7:	48 ff c2             	inc    %rdx
14012a6aa:	ff c0                	inc    %eax
14012a6ac:	80 3a 00             	cmpb   $0x0,(%rdx)
14012a6af:	75 ef                	jne    0x14012a6a0
14012a6b1:	0f ba f0 1f          	btr    $0x1f,%eax
14012a6b5:	49 03 c3             	add    %r11,%rax
14012a6b8:	49 03 c2             	add    %r10,%rax
14012a6bb:	c3                   	ret
14012a6bc:	cc                   	int3
14012a6bd:	cc                   	int3
14012a6be:	cc                   	int3
14012a6bf:	cc                   	int3
14012a6c0:	33 c0                	xor    %eax,%eax
14012a6c2:	44 8b d0             	mov    %eax,%r10d
14012a6c5:	49 83 f8 01          	cmp    $0x1,%r8
14012a6c9:	76 23                	jbe    0x14012a6ee
14012a6cb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14012a6d0:	44 0f b6 0a          	movzbl (%rdx),%r9d
14012a6d4:	45 84 c9             	test   %r9b,%r9b
14012a6d7:	74 1a                	je     0x14012a6f3
14012a6d9:	44 88 09             	mov    %r9b,(%rcx)
14012a6dc:	48 ff c2             	inc    %rdx
14012a6df:	48 ff c1             	inc    %rcx
14012a6e2:	49 ff c2             	inc    %r10
14012a6e5:	49 ff c8             	dec    %r8
14012a6e8:	49 83 f8 01          	cmp    $0x1,%r8
14012a6ec:	77 e2                	ja     0x14012a6d0
14012a6ee:	4d 85 c0             	test   %r8,%r8
14012a6f1:	74 02                	je     0x14012a6f5
14012a6f3:	88 01                	mov    %al,(%rcx)
14012a6f5:	38 02                	cmp    %al,(%rdx)
14012a6f7:	74 18                	je     0x14012a711
14012a6f9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
14012a700:	3d 00 00 00 80       	cmp    $0x80000000,%eax
14012a705:	73 0a                	jae    0x14012a711
14012a707:	48 ff c2             	inc    %rdx
14012a70a:	ff c0                	inc    %eax
14012a70c:	80 3a 00             	cmpb   $0x0,(%rdx)
14012a70f:	75 ef                	jne    0x14012a700
14012a711:	0f ba f0 1f          	btr    $0x1f,%eax
14012a715:	49 03 c2             	add    %r10,%rax
14012a718:	c3                   	ret
14012a719:	cc                   	int3
14012a71a:	cc                   	int3
14012a71b:	cc                   	int3
14012a71c:	cc                   	int3
14012a71d:	cc                   	int3
14012a71e:	cc                   	int3
14012a71f:	cc                   	int3
14012a720:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14012a725:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14012a72a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14012a72f:	57                   	push   %rdi
14012a730:	41 56                	push   %r14
14012a732:	41 57                	push   %r15
14012a734:	b8 20 00 00 00       	mov    $0x20,%eax
14012a739:	e8 f2 63 18 00       	call   0x1402b0b30
14012a73e:	48 2b e0             	sub    %rax,%rsp
14012a741:	33 db                	xor    %ebx,%ebx
14012a743:	4d 8b f0             	mov    %r8,%r14
14012a746:	4c 8b fa             	mov    %rdx,%r15
14012a749:	48 8b f1             	mov    %rcx,%rsi
14012a74c:	4d 85 c0             	test   %r8,%r8
14012a74f:	74 2f                	je     0x14012a780
14012a751:	0f be 0e             	movsbl (%rsi),%ecx
14012a754:	41 0f be 3f          	movsbl (%r15),%edi
14012a758:	e8 03 0b 00 00       	call   0x14012b260
14012a75d:	8b cf                	mov    %edi,%ecx
14012a75f:	8b e8                	mov    %eax,%ebp
14012a761:	e8 fa 0a 00 00       	call   0x14012b260
14012a766:	4d 8d 7f 01          	lea    0x1(%r15),%r15
14012a76a:	2b e8                	sub    %eax,%ebp
14012a76c:	75 2d                	jne    0x14012a79b
14012a76e:	0f b6 06             	movzbl (%rsi),%eax
14012a771:	48 ff c6             	inc    %rsi
14012a774:	84 c0                	test   %al,%al
14012a776:	74 08                	je     0x14012a780
14012a778:	48 ff c3             	inc    %rbx
14012a77b:	49 3b de             	cmp    %r14,%rbx
14012a77e:	72 d1                	jb     0x14012a751
14012a780:	33 c0                	xor    %eax,%eax
14012a782:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14012a787:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
14012a78c:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14012a791:	48 83 c4 20          	add    $0x20,%rsp
14012a795:	41 5f                	pop    %r15
14012a797:	41 5e                	pop    %r14
14012a799:	5f                   	pop    %rdi
14012a79a:	c3                   	ret
14012a79b:	8b c5                	mov    %ebp,%eax
14012a79d:	eb e3                	jmp    0x14012a782
14012a79f:	cc                   	int3
14012a7a0:	48 8b c1             	mov    %rcx,%rax
14012a7a3:	48 85 d2             	test   %rdx,%rdx
14012a7a6:	74 10                	je     0x14012a7b8
14012a7a8:	48 ff ca             	dec    %rdx
14012a7ab:	80 38 00             	cmpb   $0x0,(%rax)
14012a7ae:	74 08                	je     0x14012a7b8
14012a7b0:	48 ff c0             	inc    %rax
14012a7b3:	48 85 d2             	test   %rdx,%rdx
14012a7b6:	75 f0                	jne    0x14012a7a8
14012a7b8:	48 2b c1             	sub    %rcx,%rax
14012a7bb:	c3                   	ret
14012a7bc:	cc                   	int3
14012a7bd:	cc                   	int3
14012a7be:	cc                   	int3
14012a7bf:	cc                   	int3
14012a7c0:	b8 28 00 00 00       	mov    $0x28,%eax
14012a7c5:	e8 66 63 18 00       	call   0x1402b0b30
14012a7ca:	48 2b e0             	sub    %rax,%rsp
14012a7cd:	4c 8b 54 24 50       	mov    0x50(%rsp),%r10
14012a7d2:	44 0f b6 5c 24 58    	movzbl 0x58(%rsp),%r11d
14012a7d8:	4b 8d 04 52          	lea    (%r10,%r10,2),%rax
14012a7dc:	45 84 db             	test   %r11b,%r11b
14012a7df:	75 08                	jne    0x14012a7e9
14012a7e1:	4a 8d 04 55 01 00 00 	lea    0x1(,%r10,2),%rax
14012a7e8:	00
14012a7e9:	4d 85 c0             	test   %r8,%r8
14012a7ec:	74 03                	je     0x14012a7f1
14012a7ee:	49 89 00             	mov    %rax,(%r8)
14012a7f1:	48 85 c9             	test   %rcx,%rcx
14012a7f4:	0f 84 88 00 00 00    	je     0x14012a882
14012a7fa:	8b c0                	mov    %eax,%eax
14012a7fc:	48 3b d0             	cmp    %rax,%rdx
14012a7ff:	73 33                	jae    0x14012a834
14012a801:	e8 6a c8 ff ff       	call   0x140127070
14012a806:	4c 8d 05 3b 9e 1e 00 	lea    0x1e9e3b(%rip),%r8        # 0x140314648
14012a80d:	ba ee 00 00 00       	mov    $0xee,%edx
14012a812:	48 8d 0d f7 9d 1e 00 	lea    0x1e9df7(%rip),%rcx        # 0x140314610
14012a819:	e8 72 c9 ff ff       	call   0x140127190
14012a81e:	45 33 c0             	xor    %r8d,%r8d
14012a821:	41 8d 50 74          	lea    0x74(%r8),%edx
14012a825:	8d 4a 9b             	lea    -0x65(%rdx),%ecx
14012a828:	e8 63 ca ff ff       	call   0x140127290
14012a82d:	33 c0                	xor    %eax,%eax
14012a82f:	48 83 c4 28          	add    $0x28,%rsp
14012a833:	c3                   	ret
14012a834:	4d 85 d2             	test   %r10,%r10
14012a837:	74 3b                	je     0x14012a874
14012a839:	48 8d 15 a8 9d 1e 00 	lea    0x1e9da8(%rip),%rdx        # 0x1403145e8
14012a840:	41 0f b6 01          	movzbl (%r9),%eax
14012a844:	48 c1 e8 04          	shr    $0x4,%rax
14012a848:	0f b6 04 10          	movzbl (%rax,%rdx,1),%eax
14012a84c:	88 01                	mov    %al,(%rcx)
14012a84e:	41 0f b6 01          	movzbl (%r9),%eax
14012a852:	83 e0 0f             	and    $0xf,%eax
14012a855:	0f b6 04 10          	movzbl (%rax,%rdx,1),%eax
14012a859:	88 41 01             	mov    %al,0x1(%rcx)
14012a85c:	48 83 c1 02          	add    $0x2,%rcx
14012a860:	45 84 db             	test   %r11b,%r11b
14012a863:	74 06                	je     0x14012a86b
14012a865:	44 88 19             	mov    %r11b,(%rcx)
14012a868:	48 ff c1             	inc    %rcx
14012a86b:	49 ff c1             	inc    %r9
14012a86e:	49 83 ea 01          	sub    $0x1,%r10
14012a872:	75 cc                	jne    0x14012a840
14012a874:	45 84 db             	test   %r11b,%r11b
14012a877:	48 8d 41 ff          	lea    -0x1(%rcx),%rax
14012a87b:	48 0f 44 c1          	cmove  %rcx,%rax
14012a87f:	c6 00 00             	movb   $0x0,(%rax)
14012a882:	b8 01 00 00 00       	mov    $0x1,%eax
14012a887:	48 83 c4 28          	add    $0x28,%rsp
14012a88b:	c3                   	ret
14012a88c:	cc                   	int3
14012a88d:	cc                   	int3
14012a88e:	cc                   	int3
14012a88f:	cc                   	int3
14012a890:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14012a895:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14012a89a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14012a89f:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
14012a8a4:	57                   	push   %rdi
14012a8a5:	41 54                	push   %r12
14012a8a7:	41 55                	push   %r13
14012a8a9:	41 56                	push   %r14
14012a8ab:	41 57                	push   %r15
14012a8ad:	b8 20 00 00 00       	mov    $0x20,%eax
14012a8b2:	e8 79 62 18 00       	call   0x1402b0b30
14012a8b7:	48 2b e0             	sub    %rax,%rsp
14012a8ba:	41 0f b6 39          	movzbl (%r9),%edi
14012a8be:	33 ed                	xor    %ebp,%ebp
14012a8c0:	49 8b d9             	mov    %r9,%rbx
14012a8c3:	49 8b c0             	mov    %r8,%rax
14012a8c6:	4c 8b ea             	mov    %rdx,%r13
14012a8c9:	48 8b f1             	mov    %rcx,%rsi
14012a8cc:	40 84 ff             	test   %dil,%dil
14012a8cf:	74 71                	je     0x14012a942
14012a8d1:	44 0f be 7c 24 70    	movsbl 0x70(%rsp),%r15d
14012a8d7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14012a8de:	00 00
14012a8e0:	48 ff c3             	inc    %rbx
14012a8e3:	40 0f b6 c7          	movzbl %dil,%eax
14012a8e7:	41 3b c7             	cmp    %r15d,%eax
14012a8ea:	75 05                	jne    0x14012a8f1
14012a8ec:	45 84 ff             	test   %r15b,%r15b
14012a8ef:	75 44                	jne    0x14012a935
14012a8f1:	0f b6 0b             	movzbl (%rbx),%ecx
14012a8f4:	48 ff c3             	inc    %rbx
14012a8f7:	84 c9                	test   %cl,%cl
14012a8f9:	0f 84 cd 00 00 00    	je     0x14012a9cc
14012a8ff:	e8 3c fa ff ff       	call   0x14012a340
14012a904:	40 0f b6 cf          	movzbl %dil,%ecx
14012a908:	44 8b f0             	mov    %eax,%r14d
14012a90b:	e8 30 fa ff ff       	call   0x14012a340
14012a910:	45 85 f6             	test   %r14d,%r14d
14012a913:	0f 88 83 00 00 00    	js     0x14012a99c
14012a919:	85 c0                	test   %eax,%eax
14012a91b:	78 7f                	js     0x14012a99c
14012a91d:	48 ff c5             	inc    %rbp
14012a920:	48 85 f6             	test   %rsi,%rsi
14012a923:	74 10                	je     0x14012a935
14012a925:	49 3b ed             	cmp    %r13,%rbp
14012a928:	77 42                	ja     0x14012a96c
14012a92a:	c0 e0 04             	shl    $0x4,%al
14012a92d:	41 0a c6             	or     %r14b,%al
14012a930:	88 06                	mov    %al,(%rsi)
14012a932:	48 ff c6             	inc    %rsi
14012a935:	0f b6 3b             	movzbl (%rbx),%edi
14012a938:	40 84 ff             	test   %dil,%dil
14012a93b:	75 a3                	jne    0x14012a8e0
14012a93d:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
14012a942:	48 85 c0             	test   %rax,%rax
14012a945:	74 03                	je     0x14012a94a
14012a947:	48 89 28             	mov    %rbp,(%rax)
14012a94a:	b8 01 00 00 00       	mov    $0x1,%eax