18006680c:	8b 11                	mov    (%rcx),%edx
18006680e:	48 39 54 24 20       	cmp    %rdx,0x20(%rsp)
180066813:	75 03                	jne    0x180066818
180066815:	41 89 16             	mov    %edx,(%r14)
180066818:	48 83 c1 08          	add    $0x8,%rcx
18006681c:	48 83 e8 01          	sub    $0x1,%rax
180066820:	75 ea                	jne    0x18006680c
180066822:	e9 cb 00 00 00       	jmp    0x1800668f2
180066827:	ba 53 50 43 52       	mov    $0x52435053,%edx
18006682c:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
180066831:	e8 e2 c7 02 00       	call   0x180093018
180066836:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
18006683b:	85 c0                	test   %eax,%eax
18006683d:	0f 88 b8 00 00 00    	js     0x1800668fb
180066843:	44 8b 47 04          	mov    0x4(%rdi),%r8d
180066847:	41 b9 01 00 00 00    	mov    $0x1,%r9d
18006684d:	48 8b d7             	mov    %rdi,%rdx
180066850:	33 c9                	xor    %ecx,%ecx
180066852:	e8 25 c6 02 00       	call   0x180092e7c
180066857:	84 c0                	test   %al,%al
180066859:	74 0a                	je     0x180066865
18006685b:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
180066860:	e9 96 00 00 00       	jmp    0x1800668fb
180066865:	48 39 5f 2c          	cmp    %rbx,0x2c(%rdi)
180066869:	74 f0                	je     0x18006685b
18006686b:	80 7f 28 02          	cmpb   $0x2,0x28(%rdi)
18006686f:	73 ea                	jae    0x18006685b
180066871:	8b c3                	mov    %ebx,%eax
180066873:	85 c0                	test   %eax,%eax
180066875:	0f 88 80 00 00 00    	js     0x1800668fb
18006687b:	48 39 5f 2c          	cmp    %rbx,0x2c(%rdi)
18006687f:	74 75                	je     0x1800668f6
180066881:	33 d2                	xor    %edx,%edx
180066883:	48 8b ce             	mov    %rsi,%rcx
180066886:	44 8d 42 48          	lea    0x48(%rdx),%r8d
18006688a:	e8 f1 f3 0c 00       	call   0x180135c80
18006688f:	c7 46 08 48 00 00 00 	movl   $0x48,0x8(%rsi)
180066896:	c7 06 03 00 00 00    	movl   $0x3,(%rsi)
18006689c:	80 7f 08 02          	cmpb   $0x2,0x8(%rdi)
1800668a0:	72 0b                	jb     0x1800668ad
1800668a2:	38 5f 24             	cmp    %bl,0x24(%rdi)
1800668a5:	74 06                	je     0x1800668ad
1800668a7:	0f b6 47 24          	movzbl 0x24(%rdi),%eax
1800668ab:	eb 05                	jmp    0x1800668b2
1800668ad:	b8 01 00 00 00       	mov    $0x1,%eax
1800668b2:	89 46 10             	mov    %eax,0x10(%rsi)
1800668b5:	4c 8d 05 5c 89 0e 00 	lea    0xe895c(%rip),%r8        # 0x18014f218
1800668bc:	f2 0f 10 47 28       	movsd  0x28(%rdi),%xmm0
1800668c1:	f2 0f 11 46 14       	movsd  %xmm0,0x14(%rsi)
1800668c6:	8b 47 30             	mov    0x30(%rdi),%eax
1800668c9:	89 46 1c             	mov    %eax,0x1c(%rsi)
1800668cc:	b8 04 00 00 00       	mov    $0x4,%eax
1800668d1:	8a 57 3a             	mov    0x3a(%rdi),%dl
1800668d4:	0f b6 cb             	movzbl %bl,%ecx
1800668d7:	41 3a 14 c8          	cmp    (%r8,%rcx,8),%dl
1800668db:	74 0d                	je     0x1800668ea
1800668dd:	fe c3                	inc    %bl
1800668df:	3a d8                	cmp    %al,%bl
1800668e1:	72 f1                	jb     0x1800668d4
1800668e3:	b9 80 25 00 00       	mov    $0x2580,%ecx
1800668e8:	eb 05                	jmp    0x1800668ef
1800668ea:	41 8b 4c c8 04       	mov    0x4(%r8,%rcx,8),%ecx
1800668ef:	41 89 0e             	mov    %ecx,(%r14)
1800668f2:	33 c0                	xor    %eax,%eax
1800668f4:	eb 05                	jmp    0x1800668fb
1800668f6:	b8 9d 00 00 c0       	mov    $0xc000009d,%eax
1800668fb:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
180066900:	48 83 c4 30          	add    $0x30,%rsp
180066904:	41 5e                	pop    %r14
180066906:	5f                   	pop    %rdi
180066907:	5e                   	pop    %rsi
180066908:	c3                   	ret
180066909:	cc                   	int3
18006690a:	cc                   	int3
18006690b:	cc                   	int3
18006690c:	4c 8d 51 08          	lea    0x8(%rcx),%r10
180066910:	45 0f b7 d9          	movzwl %r9w,%r11d
180066914:	4c 3b d1             	cmp    %rcx,%r10
180066917:	0f 82 c7 00 00 00    	jb     0x1800669e4
18006691d:	4c 3b d2             	cmp    %rdx,%r10
180066920:	0f 87 be 00 00 00    	ja     0x1800669e4
180066926:	0f b7 01             	movzwl (%rcx),%eax
180066929:	66 c1 c8 08          	ror    $0x8,%ax
18006692d:	44 0f b7 c8          	movzwl %ax,%r9d
180066931:	0f b7 41 02          	movzwl 0x2(%rcx),%eax
180066935:	66 c1 c8 08          	ror    $0x8,%ax
180066939:	66 89 41 02          	mov    %ax,0x2(%rcx)
18006693d:	8b 41 04             	mov    0x4(%rcx),%eax
180066940:	0f c8                	bswap  %eax
180066942:	66 44 89 09          	mov    %r9w,(%rcx)
180066946:	89 41 04             	mov    %eax,0x4(%rcx)
180066949:	41 83 e9 01          	sub    $0x1,%r9d
18006694d:	74 50                	je     0x18006699f
18006694f:	41 83 f9 02          	cmp    $0x2,%r9d
180066953:	74 0a                	je     0x18006695f
180066955:	b9 02 00 00 c0       	mov    $0xc0000002,%ecx
18006695a:	e9 81 00 00 00       	jmp    0x1800669e0
18006695f:	41 0f b7 c0          	movzwl %r8w,%eax
180066963:	41 8b cb             	mov    %r11d,%ecx
180066966:	2b c8                	sub    %eax,%ecx
180066968:	83 c1 02             	add    $0x2,%ecx
18006696b:	44 8b c1             	mov    %ecx,%r8d
18006696e:	49 8d 04 4a          	lea    (%r10,%rcx,2),%rax
180066972:	49 3b c2             	cmp    %r10,%rax
180066975:	72 64                	jb     0x1800669db
180066977:	48 3b d0             	cmp    %rax,%rdx
18006697a:	72 5f                	jb     0x1800669db
18006697c:	33 c9                	xor    %ecx,%ecx
18006697e:	8b d1                	mov    %ecx,%edx
180066980:	4d 85 c0             	test   %r8,%r8
180066983:	74 5b                	je     0x1800669e0
180066985:	41 0f b7 02          	movzwl (%r10),%eax
180066989:	48 ff c2             	inc    %rdx
18006698c:	66 c1 c8 08          	ror    $0x8,%ax
180066990:	66 41 89 02          	mov    %ax,(%r10)
180066994:	4d 8d 52 02          	lea    0x2(%r10),%r10
180066998:	49 3b d0             	cmp    %r8,%rdx
18006699b:	72 e8                	jb     0x180066985
18006699d:	eb 41                	jmp    0x1800669e0
18006699f:	41 0f b7 c0          	movzwl %r8w,%eax
1800669a3:	41 8b cb             	mov    %r11d,%ecx
1800669a6:	2b c8                	sub    %eax,%ecx
1800669a8:	83 c1 02             	add    $0x2,%ecx
1800669ab:	44 8b c1             	mov    %ecx,%r8d
1800669ae:	49 8d 04 8a          	lea    (%r10,%rcx,4),%rax
1800669b2:	49 3b c2             	cmp    %r10,%rax
1800669b5:	72 24                	jb     0x1800669db
1800669b7:	48 3b d0             	cmp    %rax,%rdx
1800669ba:	72 1f                	jb     0x1800669db
1800669bc:	33 c9                	xor    %ecx,%ecx
1800669be:	8b d1                	mov    %ecx,%edx
1800669c0:	4d 85 c0             	test   %r8,%r8
1800669c3:	74 1b                	je     0x1800669e0
1800669c5:	41 8b 02             	mov    (%r10),%eax
1800669c8:	48 ff c2             	inc    %rdx
1800669cb:	0f c8                	bswap  %eax
1800669cd:	41 89 02             	mov    %eax,(%r10)
1800669d0:	4d 8d 52 04          	lea    0x4(%r10),%r10
1800669d4:	49 3b d0             	cmp    %r8,%rdx
1800669d7:	72 ec                	jb     0x1800669c5
1800669d9:	eb 05                	jmp    0x1800669e0
1800669db:	b9 7b 00 00 c0       	mov    $0xc000007b,%ecx
1800669e0:	8b c1                	mov    %ecx,%eax
1800669e2:	c3                   	ret
1800669e3:	cc                   	int3
1800669e4:	b8 7b 00 00 c0       	mov    $0xc000007b,%eax
1800669e9:	c3                   	ret
1800669ea:	cc                   	int3
1800669eb:	cc                   	int3
1800669ec:	48 8b c4             	mov    %rsp,%rax
1800669ef:	48 89 58 08          	mov    %rbx,0x8(%rax)
1800669f3:	48 89 70 10          	mov    %rsi,0x10(%rax)
1800669f7:	48 89 78 18          	mov    %rdi,0x18(%rax)
1800669fb:	4c 89 60 20          	mov    %r12,0x20(%rax)
1800669ff:	55                   	push   %rbp
180066a00:	41 56                	push   %r14
180066a02:	41 57                	push   %r15
180066a04:	48 8b ec             	mov    %rsp,%rbp
180066a07:	48 83 ec 50          	sub    $0x50,%rsp
180066a0b:	45 33 e4             	xor    %r12d,%r12d
180066a0e:	8b fa                	mov    %edx,%edi
180066a10:	45 8b f8             	mov    %r8d,%r15d
180066a13:	c7 40 c0 02 00 00 00 	movl   $0x2,-0x40(%rax)
180066a1a:	49 8b f1             	mov    %r9,%rsi
180066a1d:	44 8b c2             	mov    %edx,%r8d
180066a20:	4c 8d 4d e0          	lea    -0x20(%rbp),%r9
180066a24:	4c 89 60 b8          	mov    %r12,-0x48(%rax)
180066a28:	41 8d 54 24 0c       	lea    0xc(%r12),%edx
180066a2d:	44 8b f1             	mov    %ecx,%r14d
180066a30:	e8 1b 25 00 00       	call   0x180068f50
180066a35:	85 c0                	test   %eax,%eax
180066a37:	79 06                	jns    0x180066a3f
180066a39:	0f b7 4d e4          	movzwl -0x1c(%rbp),%ecx
180066a3d:	eb 37                	jmp    0x180066a76
180066a3f:	8b 45 e0             	mov    -0x20(%rbp),%eax
180066a42:	0f c8                	bswap  %eax
180066a44:	89 45 e0             	mov    %eax,-0x20(%rbp)
180066a47:	3d 00 00 01 00       	cmp    $0x10000,%eax
180066a4c:	74 0a                	je     0x180066a58
180066a4e:	b8 bb 00 00 c0       	mov    $0xc00000bb,%eax
180066a53:	e9 91 00 00 00       	jmp    0x180066ae9
180066a58:	0f b7 4d e4          	movzwl -0x1c(%rbp),%ecx
180066a5c:	41 8b c4             	mov    %r12d,%eax
180066a5f:	66 c1 4d e6 08       	rorw   $0x8,-0x1a(%rbp)
180066a64:	66 c1 4d e8 08       	rorw   $0x8,-0x18(%rbp)
180066a69:	66 c1 4d ea 08       	rorw   $0x8,-0x16(%rbp)
180066a6e:	66 c1 c9 08          	ror    $0x8,%cx
180066a72:	66 89 4d e4          	mov    %cx,-0x1c(%rbp)
180066a76:	85 c0                	test   %eax,%eax
180066a78:	78 6f                	js     0x180066ae9
180066a7a:	83 c7 0c             	add    $0xc,%edi
180066a7d:	41 8b dc             	mov    %r12d,%ebx
180066a80:	66 44 3b e1          	cmp    %cx,%r12w
180066a84:	73 5e                	jae    0x180066ae4
180066a86:	44 8b c7             	mov    %edi,%r8d
180066a89:	4c 8d 4d f0          	lea    -0x10(%rbp),%r9
180066a8d:	c7 44 24 28 02 00 00 	movl   $0x2,0x28(%rsp)
180066a94:	00
180066a95:	ba 10 00 00 00       	mov    $0x10,%edx
180066a9a:	41 8b ce             	mov    %r14d,%ecx
180066a9d:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
180066aa2:	e8 a9 24 00 00       	call   0x180068f50
180066aa7:	8b 4d f8             	mov    -0x8(%rbp),%ecx
180066aaa:	8b 55 f0             	mov    -0x10(%rbp),%edx
180066aad:	85 c0                	test   %eax,%eax
180066aaf:	78 38                	js     0x180066ae9
180066ab1:	8b 45 fc             	mov    -0x4(%rbp),%eax
180066ab4:	0f c8                	bswap  %eax
180066ab6:	89 45 fc             	mov    %eax,-0x4(%rbp)
180066ab9:	8b 45 f4             	mov    -0xc(%rbp),%eax
180066abc:	0f c8                	bswap  %eax
180066abe:	89 45 f4             	mov    %eax,-0xc(%rbp)
180066ac1:	41 8b c4             	mov    %r12d,%eax
180066ac4:	0f ca                	bswap  %edx
180066ac6:	89 55 f0             	mov    %edx,-0x10(%rbp)
180066ac9:	0f c9                	bswap  %ecx
180066acb:	89 4d f8             	mov    %ecx,-0x8(%rbp)
180066ace:	85 c0                	test   %eax,%eax
180066ad0:	78 17                	js     0x180066ae9
180066ad2:	41 3b d7             	cmp    %r15d,%edx
180066ad5:	74 31                	je     0x180066b08
180066ad7:	0f b7 45 e4          	movzwl -0x1c(%rbp),%eax
180066adb:	ff c3                	inc    %ebx
180066add:	83 c7 10             	add    $0x10,%edi
180066ae0:	3b d8                	cmp    %eax,%ebx
180066ae2:	72 a2                	jb     0x180066a86
180066ae4:	b8 25 02 00 c0       	mov    $0xc0000225,%eax
180066ae9:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
180066aee:	49 8b 5b 20          	mov    0x20(%r11),%rbx
180066af2:	49 8b 73 28          	mov    0x28(%r11),%rsi
180066af6:	49 8b 7b 30          	mov    0x30(%r11),%rdi
180066afa:	4d 8b 63 38          	mov    0x38(%r11),%r12
180066afe:	49 8b e3             	mov    %r11,%rsp
180066b01:	41 5f                	pop    %r15
180066b03:	41 5e                	pop    %r14
180066b05:	5d                   	pop    %rbp
180066b06:	c3                   	ret
180066b07:	cc                   	int3
180066b08:	89 0e                	mov    %ecx,(%rsi)
180066b0a:	eb dd                	jmp    0x180066ae9
180066b0c:	48 8b c4             	mov    %rsp,%rax
180066b0f:	48 89 58 08          	mov    %rbx,0x8(%rax)
180066b13:	48 89 70 10          	mov    %rsi,0x10(%rax)
180066b17:	48 89 78 18          	mov    %rdi,0x18(%rax)
180066b1b:	4c 89 70 20          	mov    %r14,0x20(%rax)
180066b1f:	45 33 d2             	xor    %r10d,%r10d
180066b22:	0f b7 da             	movzwl %dx,%ebx
180066b25:	4c 8b d9             	mov    %rcx,%r11
180066b28:	45 8b ca             	mov    %r10d,%r9d
180066b2b:	44 39 11             	cmp    %r10d,(%rcx)
180066b2e:	76 1f                	jbe    0x180066b4f
180066b30:	48 8b 51 10          	mov    0x10(%rcx),%rdx
180066b34:	41 8b c9             	mov    %r9d,%ecx
180066b37:	66 39 1c 4a          	cmp    %bx,(%rdx,%rcx,2)
180066b3b:	77 0a                	ja     0x180066b47
180066b3d:	49 8b 43 18          	mov    0x18(%r11),%rax
180066b41:	66 3b 1c 48          	cmp    (%rax,%rcx,2),%bx
180066b45:	76 08                	jbe    0x180066b4f
180066b47:	41 ff c1             	inc    %r9d
180066b4a:	45 3b 0b             	cmp    (%r11),%r9d
180066b4d:	72 e5                	jb     0x180066b34
180066b4f:	45 3b 0b             	cmp    (%r11),%r9d
180066b52:	75 08                	jne    0x180066b5c
180066b54:	41 ba 01 00 00 c0    	mov    $0xc0000001,%r10d
180066b5a:	eb 40                	jmp    0x180066b9c
180066b5c:	49 8b 73 28          	mov    0x28(%r11),%rsi
180066b60:	41 8b f9             	mov    %r9d,%edi
180066b63:	66 44 39 14 7e       	cmp    %r10w,(%rsi,%rdi,2)
180066b68:	75 0d                	jne    0x180066b77
180066b6a:	49 8b 43 20          	mov    0x20(%r11),%rax
180066b6e:	0f b7 14 78          	movzwl (%rax,%rdi,2),%edx
180066b72:	66 03 d3             	add    %bx,%dx
180066b75:	eb 21                	jmp    0x180066b98
180066b77:	0f b7 14 7e          	movzwl (%rsi,%rdi,2),%edx
180066b7b:	49 8b 43 10          	mov    0x10(%r11),%rax
180066b7f:	d1 ea                	shr    $1,%edx
180066b81:	0f b7 0c 78          	movzwl (%rax,%rdi,2),%ecx
180066b85:	2b d1                	sub    %ecx,%edx
180066b87:	49 8b 4b 20          	mov    0x20(%r11),%rcx
180066b8b:	41 03 d1             	add    %r9d,%edx
180066b8e:	03 d3                	add    %ebx,%edx
180066b90:	0f b7 14 56          	movzwl (%rsi,%rdx,2),%edx
180066b94:	66 03 14 79          	add    (%rcx,%rdi,2),%dx
180066b98:	66 41 89 10          	mov    %dx,(%r8)
180066b9c:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
180066ba1:	41 8b c2             	mov    %r10d,%eax
180066ba4:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
180066ba9:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
180066bae:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
180066bb3:	c3                   	ret
180066bb4:	cc                   	int3
180066bb5:	cc                   	int3
180066bb6:	cc                   	int3
180066bb7:	cc                   	int3
180066bb8:	48 8b c4             	mov    %rsp,%rax
180066bbb:	48 89 58 08          	mov    %rbx,0x8(%rax)
180066bbf:	48 89 68 10          	mov    %rbp,0x10(%rax)
180066bc3:	48 89 70 18          	mov    %rsi,0x18(%rax)
180066bc7:	48 89 78 20          	mov    %rdi,0x20(%rax)
180066bcb:	41 54                	push   %r12
180066bcd:	41 56                	push   %r14
180066bcf:	41 57                	push   %r15
180066bd1:	48 83 ec 30          	sub    $0x30,%rsp
180066bd5:	8b e9                	mov    %ecx,%ebp
180066bd7:	4d 8b f1             	mov    %r9,%r14
180066bda:	b9 18 00 00 00       	mov    $0x18,%ecx
180066bdf:	49 8b f0             	mov    %r8,%rsi
180066be2:	8b da                	mov    %edx,%ebx
180066be4:	e8 67 32 03 00       	call   0x180099e50
180066be9:	48 8b f8             	mov    %rax,%rdi
180066bec:	48 85 c0             	test   %rax,%rax
180066bef:	75 07                	jne    0x180066bf8
180066bf1:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
180066bf6:	eb 32                	jmp    0x180066c2a
180066bf8:	33 c0                	xor    %eax,%eax
180066bfa:	0f 57 c0             	xorps  %xmm0,%xmm0
180066bfd:	0f 11 07             	movups %xmm0,(%rdi)
180066c00:	48 89 47 10          	mov    %rax,0x10(%rdi)
180066c04:	44 8d 60 02          	lea    0x2(%rax),%r12d
180066c08:	66 44 39 66 08       	cmp    %r12w,0x8(%rsi)
180066c0d:	74 3d                	je     0x180066c4c
180066c0f:	bb 02 00 00 c0       	mov    $0xc0000002,%ebx
180066c14:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
180066c18:	48 85 c9             	test   %rcx,%rcx
180066c1b:	74 05                	je     0x180066c22
180066c1d:	e8 da 33 03 00       	call   0x180099ffc
180066c22:	48 8b cf             	mov    %rdi,%rcx
180066c25:	e8 d2 33 03 00       	call   0x180099ffc
180066c2a:	8b c3                	mov    %ebx,%eax
180066c2c:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
180066c31:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
180066c36:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
180066c3b:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
180066c40:	48 83 c4 30          	add    $0x30,%rsp
180066c44:	41 5f                	pop    %r15
180066c46:	41 5e                	pop    %r14
180066c48:	41 5c                	pop    %r12
180066c4a:	c3                   	ret
180066c4b:	cc                   	int3
180066c4c:	44 8b 3e             	mov    (%rsi),%r15d
180066c4f:	4c 8b cf             	mov    %rdi,%r9
180066c52:	44 03 fb             	add    %ebx,%r15d
180066c55:	44 89 64 24 28       	mov    %r12d,0x28(%rsp)
180066c5a:	48 21 44 24 20       	and    %rax,0x20(%rsp)
180066c5f:	ba 05 00 00 00       	mov    $0x5,%edx
180066c64:	45 8b c7             	mov    %r15d,%r8d
180066c67:	8b cd                	mov    %ebp,%ecx
180066c69:	e8 e2 22 00 00       	call   0x180068f50
180066c6e:	8b d8                	mov    %eax,%ebx
180066c70:	85 c0                	test   %eax,%eax