18005d54a:	cc                   	int3
18005d54b:	cc                   	int3
18005d54c:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
18005d551:	89 54 24 10          	mov    %edx,0x10(%rsp)
18005d555:	55                   	push   %rbp
18005d556:	56                   	push   %rsi
18005d557:	57                   	push   %rdi
18005d558:	41 54                	push   %r12
18005d55a:	41 55                	push   %r13
18005d55c:	41 56                	push   %r14
18005d55e:	41 57                	push   %r15
18005d560:	48 83 ec 20          	sub    $0x20,%rsp
18005d564:	48 8b 79 20          	mov    0x20(%rcx),%rdi
18005d568:	33 db                	xor    %ebx,%ebx
18005d56a:	45 8b e8             	mov    %r8d,%r13d
18005d56d:	48 8b f1             	mov    %rcx,%rsi
18005d570:	48 85 ff             	test   %rdi,%rdi
18005d573:	74 06                	je     0x18005d57b
18005d575:	48 8d 47 58          	lea    0x58(%rdi),%rax
18005d579:	eb 08                	jmp    0x18005d583
18005d57b:	48 8b 41 08          	mov    0x8(%rcx),%rax
18005d57f:	48 83 c0 50          	add    $0x50,%rax
18005d583:	44 8b 78 10          	mov    0x10(%rax),%r15d
18005d587:	8b eb                	mov    %ebx,%ebp
18005d589:	41 8b cf             	mov    %r15d,%ecx
18005d58c:	b8 01 00 00 00       	mov    $0x1,%eax
18005d591:	d3 e0                	shl    %cl,%eax
18005d593:	ff c8                	dec    %eax
18005d595:	89 44 24 60          	mov    %eax,0x60(%rsp)
18005d599:	48 85 ff             	test   %rdi,%rdi
18005d59c:	74 06                	je     0x18005d5a4
18005d59e:	48 8d 47 58          	lea    0x58(%rdi),%rax
18005d5a2:	eb 08                	jmp    0x18005d5ac
18005d5a4:	48 8b 46 08          	mov    0x8(%rsi),%rax
18005d5a8:	48 83 c0 50          	add    $0x50,%rax
18005d5ac:	3b 68 10             	cmp    0x10(%rax),%ebp
18005d5af:	73 76                	jae    0x18005d627
18005d5b1:	44 0f b6 66 2b       	movzbl 0x2b(%rsi),%r12d
18005d5b6:	44 8b f3             	mov    %ebx,%r14d
18005d5b9:	45 85 e4             	test   %r12d,%r12d
18005d5bc:	74 5e                	je     0x18005d61c
18005d5be:	3b ea                	cmp    %edx,%ebp
18005d5c0:	75 05                	jne    0x18005d5c7
18005d5c2:	45 3b f5             	cmp    %r13d,%r14d
18005d5c5:	74 40                	je     0x18005d607
18005d5c7:	45 8b c6             	mov    %r14d,%r8d
18005d5ca:	8b d5                	mov    %ebp,%edx
18005d5cc:	48 8b ce             	mov    %rsi,%rcx
18005d5cf:	e8 10 3f ff ff       	call   0x1800514e4
18005d5d4:	84 c0                	test   %al,%al
18005d5d6:	74 2b                	je     0x18005d603
18005d5d8:	8b d5                	mov    %ebp,%edx
18005d5da:	48 8b ce             	mov    %rsi,%rcx
18005d5dd:	e8 6e 3d ff ff       	call   0x180051350
18005d5e2:	48 8b d0             	mov    %rax,%rdx
18005d5e5:	e8 d2 3d ff ff       	call   0x1800513bc
18005d5ea:	48 39 98 a0 01 00 00 	cmp    %rbx,0x1a0(%rax)
18005d5f1:	76 10                	jbe    0x18005d603
18005d5f3:	38 98 f8 01 00 00    	cmp    %bl,0x1f8(%rax)
18005d5f9:	75 08                	jne    0x18005d603
18005d5fb:	38 98 f6 01 00 00    	cmp    %bl,0x1f6(%rax)
18005d601:	74 0e                	je     0x18005d611
18005d603:	8b 54 24 68          	mov    0x68(%rsp),%edx
18005d607:	41 ff c6             	inc    %r14d
18005d60a:	45 3b f4             	cmp    %r12d,%r14d
18005d60d:	73 0d                	jae    0x18005d61c
18005d60f:	eb ad                	jmp    0x18005d5be
18005d611:	41 ff cf             	dec    %r15d
18005d614:	48 8d 44 24 60       	lea    0x60(%rsp),%rax
18005d619:	0f b3 28             	btr    %ebp,(%rax)
18005d61c:	8b 54 24 68          	mov    0x68(%rsp),%edx
18005d620:	ff c5                	inc    %ebp
18005d622:	e9 72 ff ff ff       	jmp    0x18005d599
18005d627:	48 85 ff             	test   %rdi,%rdi
18005d62a:	74 06                	je     0x18005d632
18005d62c:	48 8d 47 38          	lea    0x38(%rdi),%rax
18005d630:	eb 08                	jmp    0x18005d63a
18005d632:	48 8b 46 08          	mov    0x8(%rsi),%rax
18005d636:	48 83 c0 30          	add    $0x30,%rax
18005d63a:	83 78 18 01          	cmpl   $0x1,0x18(%rax)
18005d63e:	74 1e                	je     0x18005d65e
18005d640:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
18005d644:	45 33 c9             	xor    %r9d,%r9d
18005d647:	8b 54 24 60          	mov    0x60(%rsp),%edx
18005d64b:	44 8b c2             	mov    %edx,%r8d
18005d64e:	48 8b 89 58 01 00 00 	mov    0x158(%rcx),%rcx
18005d655:	e8 d2 76 fe ff       	call   0x180044d2c
18005d65a:	8b d8                	mov    %eax,%ebx
18005d65c:	eb 1f                	jmp    0x18005d67d
18005d65e:	48 85 ff             	test   %rdi,%rdi
18005d661:	74 06                	je     0x18005d669
18005d663:	48 83 c7 58          	add    $0x58,%rdi
18005d667:	eb 08                	jmp    0x18005d671
18005d669:	48 8b 7e 08          	mov    0x8(%rsi),%rdi
18005d66d:	48 83 c7 50          	add    $0x50,%rdi
18005d671:	44 3b 7f 04          	cmp    0x4(%rdi),%r15d
18005d675:	b8 0b 00 e7 c0       	mov    $0xc0e7000b,%eax
18005d67a:	0f 47 d8             	cmova  %eax,%ebx
18005d67d:	c1 eb 1f             	shr    $0x1f,%ebx
18005d680:	80 f3 01             	xor    $0x1,%bl
18005d683:	8a c3                	mov    %bl,%al
18005d685:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
18005d68a:	48 83 c4 20          	add    $0x20,%rsp
18005d68e:	41 5f                	pop    %r15
18005d690:	41 5e                	pop    %r14
18005d692:	41 5d                	pop    %r13
18005d694:	41 5c                	pop    %r12
18005d696:	5f                   	pop    %rdi
18005d697:	5e                   	pop    %rsi
18005d698:	5d                   	pop    %rbp
18005d699:	c3                   	ret
18005d69a:	cc                   	int3
18005d69b:	cc                   	int3
18005d69c:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
18005d6a1:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
18005d6a6:	56                   	push   %rsi
18005d6a7:	57                   	push   %rdi
18005d6a8:	41 56                	push   %r14
18005d6aa:	48 83 ec 20          	sub    $0x20,%rsp
18005d6ae:	4c 8b 51 20          	mov    0x20(%rcx),%r10
18005d6b2:	45 33 c9             	xor    %r9d,%r9d
18005d6b5:	41 8b e8             	mov    %r8d,%ebp
18005d6b8:	44 8b f2             	mov    %edx,%r14d
18005d6bb:	4c 8b d9             	mov    %rcx,%r11
18005d6be:	4d 85 d2             	test   %r10,%r10
18005d6c1:	74 06                	je     0x18005d6c9
18005d6c3:	49 8d 42 58          	lea    0x58(%r10),%rax
18005d6c7:	eb 08                	jmp    0x18005d6d1
18005d6c9:	48 8b 41 08          	mov    0x8(%rcx),%rax
18005d6cd:	48 83 c0 50          	add    $0x50,%rax
18005d6d1:	8b 70 10             	mov    0x10(%rax),%esi
18005d6d4:	41 8b d9             	mov    %r9d,%ebx
18005d6d7:	8b ce                	mov    %esi,%ecx
18005d6d9:	b8 01 00 00 00       	mov    $0x1,%eax
18005d6de:	d3 e0                	shl    %cl,%eax
18005d6e0:	ff c8                	dec    %eax
18005d6e2:	89 44 24 40          	mov    %eax,0x40(%rsp)
18005d6e6:	4d 85 d2             	test   %r10,%r10
18005d6e9:	74 06                	je     0x18005d6f1
18005d6eb:	49 8d 42 58          	lea    0x58(%r10),%rax
18005d6ef:	eb 08                	jmp    0x18005d6f9
18005d6f1:	49 8b 43 08          	mov    0x8(%r11),%rax
18005d6f5:	48 83 c0 50          	add    $0x50,%rax
18005d6f9:	3b 58 10             	cmp    0x10(%rax),%ebx
18005d6fc:	73 3c                	jae    0x18005d73a
18005d6fe:	41 0f b6 7b 2b       	movzbl 0x2b(%r11),%edi
18005d703:	45 8b c1             	mov    %r9d,%r8d
18005d706:	85 ff                	test   %edi,%edi
18005d708:	74 2c                	je     0x18005d736
18005d70a:	41 3b de             	cmp    %r14d,%ebx
18005d70d:	75 05                	jne    0x18005d714
18005d70f:	44 3b c5             	cmp    %ebp,%r8d
18005d712:	74 0e                	je     0x18005d722
18005d714:	8b d3                	mov    %ebx,%edx
18005d716:	49 8b cb             	mov    %r11,%rcx
18005d719:	e8 c6 3d ff ff       	call   0x1800514e4
18005d71e:	84 c0                	test   %al,%al
18005d720:	75 0a                	jne    0x18005d72c
18005d722:	41 ff c0             	inc    %r8d
18005d725:	44 3b c7             	cmp    %edi,%r8d
18005d728:	72 e0                	jb     0x18005d70a
18005d72a:	eb 0a                	jmp    0x18005d736
18005d72c:	ff ce                	dec    %esi
18005d72e:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
18005d733:	0f b3 18             	btr    %ebx,(%rax)
18005d736:	ff c3                	inc    %ebx
18005d738:	eb ac                	jmp    0x18005d6e6
18005d73a:	4d 85 d2             	test   %r10,%r10
18005d73d:	74 06                	je     0x18005d745
18005d73f:	49 8d 42 38          	lea    0x38(%r10),%rax
18005d743:	eb 08                	jmp    0x18005d74d
18005d745:	49 8b 43 08          	mov    0x8(%r11),%rax
18005d749:	48 83 c0 30          	add    $0x30,%rax
18005d74d:	83 78 18 01          	cmpl   $0x1,0x18(%rax)
18005d751:	74 1c                	je     0x18005d76f
18005d753:	49 8b 4b 08          	mov    0x8(%r11),%rcx
18005d757:	8b 54 24 40          	mov    0x40(%rsp),%edx
18005d75b:	44 8b c2             	mov    %edx,%r8d
18005d75e:	48 8b 89 58 01 00 00 	mov    0x158(%rcx),%rcx
18005d765:	e8 c2 75 fe ff       	call   0x180044d2c
18005d76a:	44 8b c8             	mov    %eax,%r9d
18005d76d:	eb 20                	jmp    0x18005d78f
18005d76f:	4d 85 d2             	test   %r10,%r10
18005d772:	74 06                	je     0x18005d77a
18005d774:	49 83 c2 58          	add    $0x58,%r10
18005d778:	eb 08                	jmp    0x18005d782
18005d77a:	4d 8b 53 08          	mov    0x8(%r11),%r10
18005d77e:	49 83 c2 50          	add    $0x50,%r10
18005d782:	41 3b 72 04          	cmp    0x4(%r10),%esi
18005d786:	b8 0b 00 e7 c0       	mov    $0xc0e7000b,%eax
18005d78b:	44 0f 47 c8          	cmova  %eax,%r9d
18005d78f:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
18005d794:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
18005d799:	41 c1 e9 1f          	shr    $0x1f,%r9d
18005d79d:	41 8a c1             	mov    %r9b,%al
18005d7a0:	48 83 c4 20          	add    $0x20,%rsp
18005d7a4:	41 5e                	pop    %r14
18005d7a6:	5f                   	pop    %rdi
18005d7a7:	5e                   	pop    %rsi
18005d7a8:	c3                   	ret
18005d7a9:	cc                   	int3
18005d7aa:	cc                   	int3
18005d7ab:	cc                   	int3
18005d7ac:	48 83 ec 28          	sub    $0x28,%rsp
18005d7b0:	83 ca ff             	or     $0xffffffff,%edx
18005d7b3:	44 8b c2             	mov    %edx,%r8d
18005d7b6:	e8 e1 fe ff ff       	call   0x18005d69c
18005d7bb:	f6 d8                	neg    %al
18005d7bd:	1b c0                	sbb    %eax,%eax
18005d7bf:	25 c0 00 00 c0       	and    $0xc00000c0,%eax
18005d7c4:	48 83 c4 28          	add    $0x28,%rsp
18005d7c8:	c3                   	ret
18005d7c9:	cc                   	int3
18005d7ca:	cc                   	int3
18005d7cb:	cc                   	int3
18005d7cc:	8a 41 48             	mov    0x48(%rcx),%al
18005d7cf:	c3                   	ret
18005d7d0:	cc                   	int3
18005d7d1:	cc                   	int3
18005d7d2:	cc                   	int3
18005d7d3:	cc                   	int3
18005d7d4:	48 8b c4             	mov    %rsp,%rax
18005d7d7:	48 89 58 08          	mov    %rbx,0x8(%rax)
18005d7db:	48 89 68 10          	mov    %rbp,0x10(%rax)
18005d7df:	48 89 70 18          	mov    %rsi,0x18(%rax)
18005d7e3:	48 89 78 20          	mov    %rdi,0x20(%rax)
18005d7e7:	41 56                	push   %r14
18005d7e9:	48 83 ec 20          	sub    $0x20,%rsp
18005d7ed:	83 ca ff             	or     $0xffffffff,%edx
18005d7f0:	48 8b d9             	mov    %rcx,%rbx
18005d7f3:	44 8b c2             	mov    %edx,%r8d
18005d7f6:	bf 01 00 00 00       	mov    $0x1,%edi
18005d7fb:	e8 9c fe ff ff       	call   0x18005d69c
18005d800:	84 c0                	test   %al,%al
18005d802:	74 0a                	je     0x18005d80e
18005d804:	bf 04 00 00 00       	mov    $0x4,%edi
18005d809:	e9 82 00 00 00       	jmp    0x18005d890
18005d80e:	48 8b 43 20          	mov    0x20(%rbx),%rax
18005d812:	33 ed                	xor    %ebp,%ebp
18005d814:	48 85 c0             	test   %rax,%rax
18005d817:	74 06                	je     0x18005d81f
18005d819:	48 83 c0 68          	add    $0x68,%rax
18005d81d:	eb 08                	jmp    0x18005d827
18005d81f:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d823:	48 83 c0 60          	add    $0x60,%rax
18005d827:	3b 28                	cmp    (%rax),%ebp
18005d829:	73 65                	jae    0x18005d890
18005d82b:	45 33 f6             	xor    %r14d,%r14d
18005d82e:	33 f6                	xor    %esi,%esi
18005d830:	40 38 73 2b          	cmp    %sil,0x2b(%rbx)
18005d834:	76 2c                	jbe    0x18005d862
18005d836:	44 8b c6             	mov    %esi,%r8d
18005d839:	8b d5                	mov    %ebp,%edx
18005d83b:	48 8b cb             	mov    %rbx,%rcx
18005d83e:	e8 a1 3c ff ff       	call   0x1800514e4
18005d843:	84 c0                	test   %al,%al
18005d845:	74 11                	je     0x18005d858
18005d847:	8b d5                	mov    %ebp,%edx
18005d849:	48 8b cb             	mov    %rbx,%rcx
18005d84c:	e8 4b fe ff ff       	call   0x18005d69c
18005d851:	84 c0                	test   %al,%al
18005d853:	75 36                	jne    0x18005d88b
18005d855:	41 ff c6             	inc    %r14d
18005d858:	0f b6 43 2b          	movzbl 0x2b(%rbx),%eax
18005d85c:	ff c6                	inc    %esi
18005d85e:	3b f0                	cmp    %eax,%esi
18005d860:	72 d4                	jb     0x18005d836
18005d862:	48 8b 43 20          	mov    0x20(%rbx),%rax
18005d866:	48 85 c0             	test   %rax,%rax
18005d869:	74 06                	je     0x18005d871
18005d86b:	48 8d 48 58          	lea    0x58(%rax),%rcx
18005d86f:	eb 0a                	jmp    0x18005d87b
18005d871:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
18005d875:	48 83 c1 50          	add    $0x50,%rcx
18005d879:	33 c0                	xor    %eax,%eax
18005d87b:	44 3b 71 08          	cmp    0x8(%rcx),%r14d
18005d87f:	ba 02 00 00 00       	mov    $0x2,%edx
18005d884:	0f 42 fa             	cmovb  %edx,%edi
18005d887:	ff c5                	inc    %ebp
18005d889:	eb 89                	jmp    0x18005d814
18005d88b:	bf 03 00 00 00       	mov    $0x3,%edi
18005d890:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18005d895:	8b c7                	mov    %edi,%eax
18005d897:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18005d89c:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18005d8a1:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18005d8a6:	48 83 c4 20          	add    $0x20,%rsp
18005d8aa:	41 5e                	pop    %r14
18005d8ac:	c3                   	ret
18005d8ad:	cc                   	int3
18005d8ae:	cc                   	int3
18005d8af:	cc                   	int3
18005d8b0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18005d8b5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18005d8ba:	57                   	push   %rdi
18005d8bb:	48 83 ec 20          	sub    $0x20,%rsp
18005d8bf:	48 8b f9             	mov    %rcx,%rdi
18005d8c2:	48 8b f2             	mov    %rdx,%rsi
18005d8c5:	0f b6 49 2a          	movzbl 0x2a(%rcx),%ecx
18005d8c9:	33 db                	xor    %ebx,%ebx
18005d8cb:	48 8b 47 08          	mov    0x8(%rdi),%rax
18005d8cf:	4c 8b 90 58 01 00 00 	mov    0x158(%rax),%r10
18005d8d6:	48 8b c2             	mov    %rdx,%rax
18005d8d9:	48 d3 e8             	shr    %cl,%rax
18005d8dc:	33 d2                	xor    %edx,%edx
18005d8de:	45 8b 5a 28          	mov    0x28(%r10),%r11d
18005d8e2:	49 f7 f3             	div    %r11
18005d8e5:	49 d3 e3             	shl    %cl,%r11
18005d8e8:	4c 8b d0             	mov    %rax,%r10
18005d8eb:	41 89 59 04          	mov    %ebx,0x4(%r9)
18005d8ef:	41 8b c0             	mov    %r8d,%eax
18005d8f2:	49 3b c3             	cmp    %r11,%rax
18005d8f5:	74 0a                	je     0x18005d901
18005d8f7:	41 c7 41 04 02 00 00 	movl   $0x2,0x4(%r9)
18005d8fe:	00
18005d8ff:	eb 2a                	jmp    0x18005d92b
18005d901:	41 38 59 01          	cmp    %bl,0x1(%r9)
18005d905:	75 17                	jne    0x18005d91e
18005d907:	48 8b 47 58          	mov    0x58(%rdi),%rax
18005d90b:	41 8b ca             	mov    %r10d,%ecx
18005d90e:	48 0f a3 08          	bt     %rcx,(%rax)
18005d912:	73 0a                	jae    0x18005d91e
18005d914:	41 c7 41 04 03 00 00 	movl   $0x3,0x4(%r9)
18005d91b:	00
18005d91c:	eb 0d                	jmp    0x18005d92b
18005d91e:	48 8b d6             	mov    %rsi,%rdx
18005d921:	48 8b cf             	mov    %rdi,%rcx
18005d924:	e8 f3 4c ff ff       	call   0x18005261c
18005d929:	8b d8                	mov    %eax,%ebx
18005d92b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18005d930:	8b c3                	mov    %ebx,%eax
18005d932:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18005d937:	48 83 c4 20          	add    $0x20,%rsp
18005d93b:	5f                   	pop    %rdi
18005d93c:	c3                   	ret
18005d93d:	cc                   	int3
18005d93e:	cc                   	int3
18005d93f:	cc                   	int3
18005d940:	48 83 ec 28          	sub    $0x28,%rsp
18005d944:	48 8b 41 58          	mov    0x58(%rcx),%rax
18005d948:	44 8b 02             	mov    (%rdx),%r8d
18005d94b:	4c 0f a3 00          	bt     %r8,(%rax)
18005d94f:	72 04                	jb     0x18005d955
18005d951:	b0 01                	mov    $0x1,%al
18005d953:	eb 05                	jmp    0x18005d95a
18005d955:	e8 0e 4c ff ff       	call   0x180052568
18005d95a:	48 83 c4 28          	add    $0x28,%rsp
18005d95e:	c3                   	ret
18005d95f:	cc                   	int3
18005d960:	48 83 ec 28          	sub    $0x28,%rsp