1800375a7:	48 3b df             	cmp    %rdi,%rbx
1800375aa:	75 a9                	jne    0x180037555
1800375ac:	48 83 c7 10          	add    $0x10,%rdi
1800375b0:	eb 1e                	jmp    0x1800375d0
1800375b2:	48 39 78 08          	cmp    %rdi,0x8(%rax)
1800375b6:	75 2c                	jne    0x1800375e4
1800375b8:	48 8b 08             	mov    (%rax),%rcx
1800375bb:	48 39 41 08          	cmp    %rax,0x8(%rcx)
1800375bf:	75 23                	jne    0x1800375e4
1800375c1:	48 89 0f             	mov    %rcx,(%rdi)
1800375c4:	48 89 79 08          	mov    %rdi,0x8(%rcx)
1800375c8:	48 8b c8             	mov    %rax,%rcx
1800375cb:	e8 8c f3 00 00       	call   0x18004695c
1800375d0:	48 8b 07             	mov    (%rdi),%rax
1800375d3:	48 3b c7             	cmp    %rdi,%rax
1800375d6:	75 da                	jne    0x1800375b2
1800375d8:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800375dd:	48 83 c4 20          	add    $0x20,%rsp
1800375e1:	5f                   	pop    %rdi
1800375e2:	c3                   	ret
1800375e3:	cc                   	int3
1800375e4:	b9 03 00 00 00       	mov    $0x3,%ecx
1800375e9:	cd 29                	int    $0x29
1800375eb:	cc                   	int3
1800375ec:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800375f1:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1800375f6:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1800375fb:	57                   	push   %rdi
1800375fc:	48 83 ec 20          	sub    $0x20,%rsp
180037600:	33 ff                	xor    %edi,%edi
180037602:	48 8b da             	mov    %rdx,%rbx
180037605:	48 8b e9             	mov    %rcx,%rbp
180037608:	e8 33 ff ff ff       	call   0x180037540
18003760d:	48 8b 8b d8 00 00 00 	mov    0xd8(%rbx),%rcx
180037614:	48 85 c9             	test   %rcx,%rcx
180037617:	0f 84 cc 01 00 00    	je     0x1800377e9
18003761d:	e8 4e 73 10 00       	call   0x18013e970
180037622:	b9 98 00 00 00       	mov    $0x98,%ecx
180037627:	48 8b f0             	mov    %rax,%rsi
18003762a:	e8 e5 f2 00 00       	call   0x180046914
18003762f:	48 8b d8             	mov    %rax,%rbx
180037632:	48 85 c0             	test   %rax,%rax
180037635:	74 2d                	je     0x180037664
180037637:	83 60 70 00          	andl   $0x0,0x70(%rax)
18003763b:	83 60 74 00          	andl   $0x0,0x74(%rax)
18003763f:	83 60 78 00          	andl   $0x0,0x78(%rax)
180037643:	48 83 a0 80 00 00 00 	andq   $0x0,0x80(%rax)
18003764a:	00
18003764b:	48 83 a0 88 00 00 00 	andq   $0x0,0x88(%rax)
180037652:	00
180037653:	48 83 a0 90 00 00 00 	andq   $0x0,0x90(%rax)
18003765a:	00
18003765b:	48 89 40 08          	mov    %rax,0x8(%rax)
18003765f:	48 89 00             	mov    %rax,(%rax)
180037662:	eb 02                	jmp    0x180037666
180037664:	33 db                	xor    %ebx,%ebx
180037666:	48 85 db             	test   %rbx,%rbx
180037669:	0f 84 75 01 00 00    	je     0x1800377e4
18003766f:	0f 10 46 20          	movups 0x20(%rsi),%xmm0
180037673:	f3 0f 7f 43 10       	movdqu %xmm0,0x10(%rbx)
180037678:	48 8b 4e 30          	mov    0x30(%rsi),%rcx
18003767c:	48 85 c9             	test   %rcx,%rcx
18003767f:	74 14                	je     0x180037695
180037681:	4c 8d 43 20          	lea    0x20(%rbx),%r8
180037685:	ba 00 01 00 00       	mov    $0x100,%edx
18003768a:	e8 49 86 00 00       	call   0x18003fcd8
18003768f:	8b f8                	mov    %eax,%edi
180037691:	85 c0                	test   %eax,%eax
180037693:	78 5c                	js     0x1800376f1
180037695:	48 8b 4e 38          	mov    0x38(%rsi),%rcx
180037699:	48 85 c9             	test   %rcx,%rcx
18003769c:	74 14                	je     0x1800376b2
18003769e:	4c 8d 43 28          	lea    0x28(%rbx),%r8
1800376a2:	ba 00 04 00 00       	mov    $0x400,%edx
1800376a7:	e8 2c 86 00 00       	call   0x18003fcd8
1800376ac:	8b f8                	mov    %eax,%edi
1800376ae:	85 c0                	test   %eax,%eax
1800376b0:	78 3f                	js     0x1800376f1
1800376b2:	8b 86 d8 00 00 00    	mov    0xd8(%rsi),%eax
1800376b8:	48 8d 4b 70          	lea    0x70(%rbx),%rcx
1800376bc:	89 43 30             	mov    %eax,0x30(%rbx)
1800376bf:	ba 01 00 00 00       	mov    $0x1,%edx
1800376c4:	0f 10 46 48          	movups 0x48(%rsi),%xmm0
1800376c8:	0f 11 43 38          	movups %xmm0,0x38(%rbx)
1800376cc:	44 8d 42 2f          	lea    0x2f(%rdx),%r8d
1800376d0:	0f 10 4e 58          	movups 0x58(%rsi),%xmm1
1800376d4:	0f 11 4b 48          	movups %xmm1,0x48(%rbx)
1800376d8:	0f 10 46 68          	movups 0x68(%rsi),%xmm0
1800376dc:	0f 11 43 58          	movups %xmm0,0x58(%rbx)
1800376e0:	f2 0f 10 4e 78       	movsd  0x78(%rsi),%xmm1
1800376e5:	f2 0f 11 4b 68       	movsd  %xmm1,0x68(%rbx)
1800376ea:	e8 b5 f5 00 00       	call   0x180046ca4
1800376ef:	8b f8                	mov    %eax,%edi
1800376f1:	85 ff                	test   %edi,%edi
1800376f3:	0f 88 b4 00 00 00    	js     0x1800377ad
1800376f9:	48 8b 45 08          	mov    0x8(%rbp),%rax
1800376fd:	48 39 28             	cmp    %rbp,(%rax)
180037700:	0f 85 a0 00 00 00    	jne    0x1800377a6
180037706:	48 89 2b             	mov    %rbp,(%rbx)
180037709:	48 89 43 08          	mov    %rax,0x8(%rbx)
18003770d:	48 89 18             	mov    %rbx,(%rax)
180037710:	48 89 5d 08          	mov    %rbx,0x8(%rbp)
180037714:	33 db                	xor    %ebx,%ebx
180037716:	39 9e 88 00 00 00    	cmp    %ebx,0x88(%rsi)
18003771c:	76 7c                	jbe    0x18003779a
18003771e:	b9 30 00 00 00       	mov    $0x30,%ecx
180037723:	e8 ec f1 00 00       	call   0x180046914
180037728:	48 8b c8             	mov    %rax,%rcx
18003772b:	48 85 c0             	test   %rax,%rax
18003772e:	0f 84 b0 00 00 00    	je     0x1800377e4
180037734:	8b c3                	mov    %ebx,%eax
180037736:	48 8d 55 10          	lea    0x10(%rbp),%rdx
18003773a:	48 c1 e0 04          	shl    $0x4,%rax
18003773e:	48 03 86 a0 00 00 00 	add    0xa0(%rsi),%rax
180037745:	48 89 49 08          	mov    %rcx,0x8(%rcx)
180037749:	33 ff                	xor    %edi,%edi
18003774b:	48 89 09             	mov    %rcx,(%rcx)
18003774e:	0f 10 46 20          	movups 0x20(%rsi),%xmm0
180037752:	f3 0f 7f 41 10       	movdqu %xmm0,0x10(%rcx)
180037757:	4c 8b 00             	mov    (%rax),%r8
18003775a:	4c 89 41 20          	mov    %r8,0x20(%rcx)
18003775e:	48 8b 40 08          	mov    0x8(%rax),%rax
180037762:	48 89 41 28          	mov    %rax,0x28(%rcx)
180037766:	48 8b 02             	mov    (%rdx),%rax
180037769:	eb 09                	jmp    0x180037774
18003776b:	4c 39 40 20          	cmp    %r8,0x20(%rax)
18003776f:	77 08                	ja     0x180037779
180037771:	48 8b 00             	mov    (%rax),%rax
180037774:	48 3b c2             	cmp    %rdx,%rax
180037777:	75 f2                	jne    0x18003776b
180037779:	48 8b 50 08          	mov    0x8(%rax),%rdx
18003777d:	48 39 02             	cmp    %rax,(%rdx)
180037780:	75 24                	jne    0x1800377a6
180037782:	48 89 01             	mov    %rax,(%rcx)
180037785:	ff c3                	inc    %ebx
180037787:	48 89 51 08          	mov    %rdx,0x8(%rcx)
18003778b:	48 89 0a             	mov    %rcx,(%rdx)
18003778e:	48 89 48 08          	mov    %rcx,0x8(%rax)
180037792:	3b 9e 88 00 00 00    	cmp    0x88(%rsi),%ebx
180037798:	72 84                	jb     0x18003771e
18003779a:	48 8b 8e b8 00 00 00 	mov    0xb8(%rsi),%rcx
1800377a1:	e9 6e fe ff ff       	jmp    0x180037614
1800377a6:	b9 03 00 00 00       	mov    $0x3,%ecx
1800377ab:	cd 29                	int    $0x29
1800377ad:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
1800377b1:	48 85 c9             	test   %rcx,%rcx
1800377b4:	74 05                	je     0x1800377bb
1800377b6:	e8 a1 f1 00 00       	call   0x18004695c
1800377bb:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
1800377bf:	48 85 c9             	test   %rcx,%rcx
1800377c2:	74 05                	je     0x1800377c9
1800377c4:	e8 93 f1 00 00       	call   0x18004695c
1800377c9:	48 8b 8b 90 00 00 00 	mov    0x90(%rbx),%rcx
1800377d0:	48 85 c9             	test   %rcx,%rcx
1800377d3:	74 05                	je     0x1800377da
1800377d5:	e8 82 f1 00 00       	call   0x18004695c
1800377da:	48 8b cb             	mov    %rbx,%rcx
1800377dd:	e8 7a f1 00 00       	call   0x18004695c
1800377e2:	eb 05                	jmp    0x1800377e9
1800377e4:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
1800377e9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800377ee:	8b c7                	mov    %edi,%eax
1800377f0:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1800377f5:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1800377fa:	48 83 c4 20          	add    $0x20,%rsp
1800377fe:	5f                   	pop    %rdi
1800377ff:	c3                   	ret
180037800:	cc                   	int3
180037801:	cc                   	int3
180037802:	cc                   	int3
180037803:	cc                   	int3
180037804:	48 8b 01             	mov    (%rcx),%rax
180037807:	45 33 c0             	xor    %r8d,%r8d
18003780a:	45 8b c8             	mov    %r8d,%r9d
18003780d:	eb 0b                	jmp    0x18003781a
18003780f:	4c 8b c8             	mov    %rax,%r9
180037812:	39 50 58             	cmp    %edx,0x58(%rax)
180037815:	74 0a                	je     0x180037821
180037817:	48 8b 00             	mov    (%rax),%rax
18003781a:	48 3b c1             	cmp    %rcx,%rax
18003781d:	75 f0                	jne    0x18003780f
18003781f:	eb 03                	jmp    0x180037824
180037821:	41 b0 01             	mov    $0x1,%r8b
180037824:	41 f6 d8             	neg    %r8b
180037827:	48 1b c0             	sbb    %rax,%rax
18003782a:	49 23 c1             	and    %r9,%rax
18003782d:	c3                   	ret
18003782e:	cc                   	int3
18003782f:	cc                   	int3
180037830:	48 83 ec 28          	sub    $0x28,%rsp
180037834:	49 8b c1             	mov    %r9,%rax
180037837:	44 8b c9             	mov    %ecx,%r9d
18003783a:	8b 48 28             	mov    0x28(%rax),%ecx
18003783d:	49 d3 e0             	shl    %cl,%r8
180037840:	48 d3 e2             	shl    %cl,%rdx
180037843:	48 8b c8             	mov    %rax,%rcx
180037846:	e8 09 00 00 00       	call   0x180037854
18003784b:	48 83 c4 28          	add    $0x28,%rsp
18003784f:	c3                   	ret
180037850:	cc                   	int3
180037851:	cc                   	int3
180037852:	cc                   	int3
180037853:	cc                   	int3
180037854:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180037859:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
18003785e:	56                   	push   %rsi
18003785f:	57                   	push   %rdi
180037860:	41 54                	push   %r12
180037862:	41 56                	push   %r14
180037864:	41 57                	push   %r15
180037866:	48 83 ec 20          	sub    $0x20,%rsp
18003786a:	48 8b 41 30          	mov    0x30(%rcx),%rax
18003786e:	33 ff                	xor    %edi,%edi
180037870:	48 21 7c 24 50       	and    %rdi,0x50(%rsp)
180037875:	41 8b d9             	mov    %r9d,%ebx
180037878:	4d 8b f0             	mov    %r8,%r14
18003787b:	48 8b f2             	mov    %rdx,%rsi
18003787e:	48 8b e9             	mov    %rcx,%rbp
180037881:	48 85 c0             	test   %rax,%rax
180037884:	75 17                	jne    0x18003789d
180037886:	85 db                	test   %ebx,%ebx
180037888:	0f 84 9d 00 00 00    	je     0x18003792b
18003788e:	e8 b5 00 00 00       	call   0x180037948
180037893:	8b f8                	mov    %eax,%edi
180037895:	85 c0                	test   %eax,%eax
180037897:	0f 88 8e 00 00 00    	js     0x18003792b
18003789d:	44 8b 4d 28          	mov    0x28(%rbp),%r9d
1800378a1:	4d 8d 66 ff          	lea    -0x1(%r14),%r12
1800378a5:	33 d2                	xor    %edx,%edx
1800378a7:	89 5c 24 50          	mov    %ebx,0x50(%rsp)
1800378ab:	41 8b c9             	mov    %r9d,%ecx
1800378ae:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1800378b4:	49 d3 e0             	shl    %cl,%r8
1800378b7:	49 8d 0c 30          	lea    (%r8,%rsi,1),%rcx
1800378bb:	4c 03 e1             	add    %rcx,%r12
1800378be:	49 8b c4             	mov    %r12,%rax
1800378c1:	49 f7 f0             	div    %r8
1800378c4:	48 8b c6             	mov    %rsi,%rax
1800378c7:	4c 2b e2             	sub    %rdx,%r12
1800378ca:	33 d2                	xor    %edx,%edx
1800378cc:	49 f7 f0             	div    %r8
1800378cf:	48 2b f2             	sub    %rdx,%rsi
1800378d2:	49 3b f4             	cmp    %r12,%rsi
1800378d5:	73 54                	jae    0x18003792b
1800378d7:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1800378dc:	4c 8b 7d 30          	mov    0x30(%rbp),%r15
1800378e0:	41 8b c9             	mov    %r9d,%ecx
1800378e3:	4c 8b f6             	mov    %rsi,%r14
1800378e6:	33 ff                	xor    %edi,%edi
1800378e8:	49 d3 ee             	shr    %cl,%r14
1800378eb:	49 8b cf             	mov    %r15,%rcx
1800378ee:	49 8b d6             	mov    %r14,%rdx
1800378f1:	e8 e6 bf 00 00       	call   0x1800438dc
1800378f6:	48 85 c0             	test   %rax,%rax
1800378f9:	75 05                	jne    0x180037900
1800378fb:	48 85 db             	test   %rbx,%rbx
1800378fe:	74 10                	je     0x180037910
180037900:	4c 8b c3             	mov    %rbx,%r8
180037903:	49 8b d6             	mov    %r14,%rdx
180037906:	49 8b cf             	mov    %r15,%rcx
180037909:	e8 12 c0 00 00       	call   0x180043920
18003790e:	8b f8                	mov    %eax,%edi
180037910:	85 ff                	test   %edi,%edi
180037912:	78 17                	js     0x18003792b
180037914:	44 8b 4d 28          	mov    0x28(%rbp),%r9d
180037918:	b8 01 00 00 00       	mov    $0x1,%eax
18003791d:	41 8b c9             	mov    %r9d,%ecx
180037920:	48 d3 e0             	shl    %cl,%rax
180037923:	48 03 f0             	add    %rax,%rsi
180037926:	49 3b f4             	cmp    %r12,%rsi
180037929:	72 b1                	jb     0x1800378dc
18003792b:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
180037930:	8b c7                	mov    %edi,%eax
180037932:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
180037937:	48 83 c4 20          	add    $0x20,%rsp
18003793b:	41 5f                	pop    %r15
18003793d:	41 5e                	pop    %r14
18003793f:	41 5c                	pop    %r12
180037941:	5f                   	pop    %rdi
180037942:	5e                   	pop    %rsi
180037943:	c3                   	ret
180037944:	cc                   	int3
180037945:	cc                   	int3
180037946:	cc                   	int3
180037947:	cc                   	int3
180037948:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18003794d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180037952:	57                   	push   %rdi
180037953:	48 83 ec 20          	sub    $0x20,%rsp
180037957:	48 8b f1             	mov    %rcx,%rsi
18003795a:	bf 40 00 00 00       	mov    $0x40,%edi
18003795f:	8b cf                	mov    %edi,%ecx
180037961:	e8 ae ef 00 00       	call   0x180046914
180037966:	48 8b d8             	mov    %rax,%rbx
180037969:	48 85 c0             	test   %rax,%rax
18003796c:	74 2d                	je     0x18003799b
18003796e:	48 83 20 00          	andq   $0x0,(%rax)
180037972:	48 83 c0 08          	add    $0x8,%rax
180037976:	48 83 63 18 00       	andq   $0x0,0x18(%rbx)
18003797b:	c7 43 20 01 00 00 00 	movl   $0x1,0x20(%rbx)
180037982:	89 7b 24             	mov    %edi,0x24(%rbx)
180037985:	48 89 40 08          	mov    %rax,0x8(%rax)
180037989:	48 89 00             	mov    %rax,(%rax)
18003798c:	8d 47 c6             	lea    -0x3a(%rdi),%eax
18003798f:	89 43 28             	mov    %eax,0x28(%rbx)
180037992:	89 43 38             	mov    %eax,0x38(%rbx)
180037995:	48 89 7b 30          	mov    %rdi,0x30(%rbx)
180037999:	eb 02                	jmp    0x18003799d
18003799b:	33 db                	xor    %ebx,%ebx
18003799d:	48 85 db             	test   %rbx,%rbx
1800379a0:	75 07                	jne    0x1800379a9
1800379a2:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
1800379a7:	eb 3e                	jmp    0x1800379e7
1800379a9:	48 8b 56 20          	mov    0x20(%rsi),%rdx
1800379ad:	8b 4e 28             	mov    0x28(%rsi),%ecx
1800379b0:	48 d3 ea             	shr    %cl,%rdx
1800379b3:	48 8b cb             	mov    %rbx,%rcx
1800379b6:	e8 ad bd 00 00       	call   0x180043768
1800379bb:	8b f8                	mov    %eax,%edi
1800379bd:	85 c0                	test   %eax,%eax
1800379bf:	78 11                	js     0x1800379d2
1800379c1:	33 c0                	xor    %eax,%eax
1800379c3:	f0 48 0f b1 5e 30    	lock cmpxchg %rbx,0x30(%rsi)
1800379c9:	48 f7 d8             	neg    %rax
1800379cc:	48 1b d2             	sbb    %rdx,%rdx
1800379cf:	48 23 da             	and    %rdx,%rbx
1800379d2:	48 85 db             	test   %rbx,%rbx
1800379d5:	74 10                	je     0x1800379e7
1800379d7:	48 8b cb             	mov    %rbx,%rcx
1800379da:	e8 3d be 00 00       	call   0x18004381c
1800379df:	48 8b cb             	mov    %rbx,%rcx
1800379e2:	e8 75 ef 00 00       	call   0x18004695c
1800379e7:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800379ec:	8b c7                	mov    %edi,%eax
1800379ee:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1800379f3:	48 83 c4 20          	add    $0x20,%rsp
1800379f7:	5f                   	pop    %rdi
1800379f8:	c3                   	ret
1800379f9:	cc                   	int3
1800379fa:	cc                   	int3
1800379fb:	cc                   	int3
1800379fc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180037a01:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180037a06:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180037a0b:	57                   	push   %rdi
180037a0c:	48 83 ec 20          	sub    $0x20,%rsp
180037a10:	48 8b 41 30          	mov    0x30(%rcx),%rax
180037a14:	33 ff                	xor    %edi,%edi
180037a16:	4d 8b c8             	mov    %r8,%r9
180037a19:	48 8b da             	mov    %rdx,%rbx