180032862:	0f 85 d4 00 00 00    	jne    0x18003293c
180032868:	83 e7 03             	and    $0x3,%edi
18003286b:	48 0b f9             	or     %rcx,%rdi
18003286e:	49 89 7a 10          	mov    %rdi,0x10(%r10)
180032872:	4d 8b 53 10          	mov    0x10(%r11),%r10
180032876:	49 8b c2             	mov    %r10,%rax
180032879:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
18003287d:	49 3b c0             	cmp    %r8,%rax
180032880:	0f 85 b6 00 00 00    	jne    0x18003293c
180032886:	41 83 e2 03          	and    $0x3,%r10d
18003288a:	4c 0b d1             	or     %rcx,%r10
18003288d:	4d 89 53 10          	mov    %r10,0x10(%r11)
180032891:	48 8b 41 10          	mov    0x10(%rcx),%rax
180032895:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
180032899:	48 3b c2             	cmp    %rdx,%rax
18003289c:	0f 85 9a 00 00 00    	jne    0x18003293c
1800328a2:	8b c3                	mov    %ebx,%eax
1800328a4:	4c 89 0c c2          	mov    %r9,(%rdx,%rax,8)
1800328a8:	4d 85 c9             	test   %r9,%r9
1800328ab:	74 0e                	je     0x1800328bb
1800328ad:	49 39 49 10          	cmp    %rcx,0x10(%r9)
1800328b1:	0f 85 85 00 00 00    	jne    0x18003293c
1800328b7:	49 89 51 10          	mov    %rdx,0x10(%r9)
1800328bb:	49 8b 40 10          	mov    0x10(%r8),%rax
1800328bf:	f7 db                	neg    %ebx
1800328c1:	48 89 41 10          	mov    %rax,0x10(%rcx)
1800328c5:	49 8b 40 10          	mov    0x10(%r8),%rax
1800328c9:	1a db                	sbb    %bl,%bl
1800328cb:	80 e3 02             	and    $0x2,%bl
1800328ce:	41 02 df             	add    %r15b,%bl
1800328d1:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
1800328d5:	75 0c                	jne    0x1800328e3
1800328d7:	4d 39 04 24          	cmp    %r8,(%r12)
1800328db:	75 5f                	jne    0x18003293c
1800328dd:	49 89 0c 24          	mov    %rcx,(%r12)
1800328e1:	eb 66                	jmp    0x180032949
1800328e3:	45 33 c9             	xor    %r9d,%r9d
1800328e6:	4c 39 40 08          	cmp    %r8,0x8(%rax)
1800328ea:	45 8d 51 08          	lea    0x8(%r9),%r10d
1800328ee:	45 0f 44 ca          	cmove  %r10d,%r9d
1800328f2:	4d 39 04 01          	cmp    %r8,(%r9,%rax,1)
1800328f6:	75 44                	jne    0x18003293c
1800328f8:	49 89 0c 01          	mov    %rcx,(%r9,%rax,1)
1800328fc:	eb 4b                	jmp    0x180032949
1800328fe:	48 8b 52 10          	mov    0x10(%rdx),%rdx
180032902:	48 83 e2 fc          	and    $0xfffffffffffffffc,%rdx
180032906:	4d 85 c9             	test   %r9,%r9
180032909:	74 0a                	je     0x180032915
18003290b:	4d 39 41 10          	cmp    %r8,0x10(%r9)
18003290f:	75 2b                	jne    0x18003293c
180032911:	49 89 51 10          	mov    %rdx,0x10(%r9)
180032915:	48 85 d2             	test   %rdx,%rdx
180032918:	75 0f                	jne    0x180032929
18003291a:	4d 39 04 24          	cmp    %r8,(%r12)
18003291e:	75 1c                	jne    0x18003293c
180032920:	4d 89 0c 24          	mov    %r9,(%r12)
180032924:	e9 2c 01 00 00       	jmp    0x180032a55
180032929:	4c 39 42 08          	cmp    %r8,0x8(%rdx)
18003292d:	75 08                	jne    0x180032937
18003292f:	b3 03                	mov    $0x3,%bl
180032931:	4c 89 4a 08          	mov    %r9,0x8(%rdx)
180032935:	eb 12                	jmp    0x180032949
180032937:	4c 39 02             	cmp    %r8,(%rdx)
18003293a:	74 07                	je     0x180032943
18003293c:	b9 1d 00 00 00       	mov    $0x1d,%ecx
180032941:	cd 29                	int    $0x29
180032943:	41 8a df             	mov    %r15b,%bl
180032946:	4c 89 0a             	mov    %r9,(%rdx)
180032949:	41 b2 fc             	mov    $0xfc,%r10b
18003294c:	48 8d 7a 10          	lea    0x10(%rdx),%rdi
180032950:	8a cb                	mov    %bl,%cl
180032952:	8a 07                	mov    (%rdi),%al
180032954:	80 f1 02             	xor    $0x2,%cl
180032957:	40 8a f0             	mov    %al,%sil
18003295a:	40 80 e6 03          	and    $0x3,%sil
18003295e:	40 3a f1             	cmp    %cl,%sil
180032961:	75 0d                	jne    0x180032970
180032963:	41 22 c2             	and    %r10b,%al
180032966:	88 07                	mov    %al,(%rdi)
180032968:	4c 8b 37             	mov    (%rdi),%r14
18003296b:	e9 b5 00 00 00       	jmp    0x180032a25
180032970:	40 84 f6             	test   %sil,%sil
180032973:	0f 84 d4 00 00 00    	je     0x180032a4d
180032979:	4c 8b 37             	mov    (%rdi),%r14
18003297c:	48 8b 2a             	mov    (%rdx),%rbp
18003297f:	41 3a df             	cmp    %r15b,%bl
180032982:	75 04                	jne    0x180032988
180032984:	48 8b 6a 08          	mov    0x8(%rdx),%rbp
180032988:	44 8a 7d 10          	mov    0x10(%rbp),%r15b
18003298c:	45 33 c9             	xor    %r9d,%r9d
18003298f:	41 80 e7 03          	and    $0x3,%r15b
180032993:	4c 8b c5             	mov    %rbp,%r8
180032996:	44 3a f9             	cmp    %cl,%r15b
180032999:	49 8b cc             	mov    %r12,%rcx
18003299c:	75 5e                	jne    0x1800329fc
18003299e:	45 8d 79 01          	lea    0x1(%r9),%r15d
1800329a2:	41 3a df             	cmp    %r15b,%bl
1800329a5:	41 0f 94 c1          	sete   %r9b
1800329a9:	e8 b2 fc ff ff       	call   0x180032660
1800329ae:	41 b2 fc             	mov    $0xfc,%r10b
1800329b1:	44 0f b6 ce          	movzbl %sil,%r9d
1800329b5:	44 20 17             	and    %r10b,(%rdi)
1800329b8:	48 8b d0             	mov    %rax,%rdx
1800329bb:	44 8a 45 10          	mov    0x10(%rbp),%r8b
1800329bf:	45 22 c2             	and    %r10b,%r8b
1800329c2:	44 88 45 10          	mov    %r8b,0x10(%rbp)
1800329c6:	0f b6 48 10          	movzbl 0x10(%rax),%ecx
1800329ca:	8b c1                	mov    %ecx,%eax
1800329cc:	83 e0 03             	and    $0x3,%eax
1800329cf:	44 3b c8             	cmp    %eax,%r9d
1800329d2:	75 10                	jne    0x1800329e4
1800329d4:	44 20 17             	and    %r10b,(%rdi)
1800329d7:	40 80 f6 fe          	xor    $0xfe,%sil
1800329db:	40 80 e6 03          	and    $0x3,%sil
1800329df:	40 08 37             	or     %sil,(%rdi)
1800329e2:	eb 12                	jmp    0x1800329f6
1800329e4:	83 f1 fe             	xor    $0xfffffffe,%ecx
1800329e7:	83 e1 03             	and    $0x3,%ecx
1800329ea:	44 3b c9             	cmp    %ecx,%r9d
1800329ed:	75 07                	jne    0x1800329f6
1800329ef:	44 0a c6             	or     %sil,%r8b
1800329f2:	44 88 45 10          	mov    %r8b,0x10(%rbp)
1800329f6:	44 20 52 10          	and    %r10b,0x10(%rdx)
1800329fa:	eb 29                	jmp    0x180032a25
1800329fc:	80 fb 01             	cmp    $0x1,%bl
1800329ff:	41 0f 95 c1          	setne  %r9b
180032a03:	e8 cc fb ff ff       	call   0x1800325d4
180032a08:	8a 55 10             	mov    0x10(%rbp),%dl
180032a0b:	41 b2 fc             	mov    $0xfc,%r10b
180032a0e:	41 22 d2             	and    %r10b,%dl
180032a11:	45 84 ff             	test   %r15b,%r15b
180032a14:	74 2a                	je     0x180032a40
180032a16:	88 55 10             	mov    %dl,0x10(%rbp)
180032a19:	41 bf 01 00 00 00    	mov    $0x1,%r15d
180032a1f:	44 20 17             	and    %r10b,(%rdi)
180032a22:	48 8b d5             	mov    %rbp,%rdx
180032a25:	49 83 e6 fc          	and    $0xfffffffffffffffc,%r14
180032a29:	74 2a                	je     0x180032a55
180032a2b:	49 39 56 08          	cmp    %rdx,0x8(%r14)
180032a2f:	bb 03 00 00 00       	mov    $0x3,%ebx
180032a34:	49 8b d6             	mov    %r14,%rdx
180032a37:	41 0f 45 df          	cmovne %r15d,%ebx
180032a3b:	e9 0c ff ff ff       	jmp    0x18003294c
180032a40:	80 f3 fe             	xor    $0xfe,%bl
180032a43:	80 e3 03             	and    $0x3,%bl
180032a46:	0a da                	or     %dl,%bl
180032a48:	88 5d 10             	mov    %bl,0x10(%rbp)
180032a4b:	eb 08                	jmp    0x180032a55
180032a4d:	41 22 c2             	and    %r10b,%al
180032a50:	0a c3                	or     %bl,%al
180032a52:	88 42 10             	mov    %al,0x10(%rdx)
180032a55:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
180032a5a:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
180032a5f:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
180032a64:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
180032a69:	48 83 c4 30          	add    $0x30,%rsp
180032a6d:	41 5f                	pop    %r15
180032a6f:	41 5e                	pop    %r14
180032a71:	41 5c                	pop    %r12
180032a73:	c3                   	ret
180032a74:	cc                   	int3
180032a75:	cc                   	int3
180032a76:	cc                   	int3
180032a77:	cc                   	int3
180032a78:	48 8b c4             	mov    %rsp,%rax
180032a7b:	48 89 58 08          	mov    %rbx,0x8(%rax)
180032a7f:	48 89 68 10          	mov    %rbp,0x10(%rax)
180032a83:	48 89 70 18          	mov    %rsi,0x18(%rax)
180032a87:	48 89 78 20          	mov    %rdi,0x20(%rax)
180032a8b:	41 57                	push   %r15
180032a8d:	49 83 21 00          	andq   $0x0,(%r9)
180032a91:	4c 8b d9             	mov    %rcx,%r11
180032a94:	49 83 61 08 00       	andq   $0x0,0x8(%r9)
180032a99:	41 bf 01 00 00 00    	mov    $0x1,%r15d
180032a9f:	8a 49 08             	mov    0x8(%rcx),%cl
180032aa2:	4c 8b d2             	mov    %rdx,%r10
180032aa5:	8a d9                	mov    %cl,%bl
180032aa7:	41 0f b6 f8          	movzbl %r8b,%edi
180032aab:	41 22 df             	and    %r15b,%bl
180032aae:	48 85 d2             	test   %rdx,%rdx
180032ab1:	75 42                	jne    0x180032af5
180032ab3:	49 8b c3             	mov    %r11,%rax
180032ab6:	49 33 c1             	xor    %r9,%rax
180032ab9:	84 db                	test   %bl,%bl
180032abb:	74 05                	je     0x180032ac2
180032abd:	49 89 03             	mov    %rax,(%r11)
180032ac0:	eb 03                	jmp    0x180032ac5
180032ac2:	4d 89 0b             	mov    %r9,(%r11)
180032ac5:	41 84 cf             	test   %cl,%r15b
180032ac8:	74 0a                	je     0x180032ad4
180032aca:	49 89 43 08          	mov    %rax,0x8(%r11)
180032ace:	45 08 7b 08          	or     %r15b,0x8(%r11)
180032ad2:	eb 04                	jmp    0x180032ad8
180032ad4:	4d 89 4b 08          	mov    %r9,0x8(%r11)
180032ad8:	49 83 61 10 00       	andq   $0x0,0x10(%r9)
180032add:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
180032ae2:	48 8b 6c 24 18       	mov    0x18(%rsp),%rbp
180032ae7:	48 8b 74 24 20       	mov    0x20(%rsp),%rsi
180032aec:	48 8b 7c 24 28       	mov    0x28(%rsp),%rdi
180032af1:	41 5f                	pop    %r15
180032af3:	c3                   	ret
180032af4:	cc                   	int3
180032af5:	49 33 d1             	xor    %r9,%rdx
180032af8:	49 8b c9             	mov    %r9,%rcx
180032afb:	84 db                	test   %bl,%bl
180032afd:	49 8b c2             	mov    %r10,%rax
180032b00:	48 0f 45 ca          	cmovne %rdx,%rcx
180032b04:	49 89 0c fa          	mov    %rcx,(%r10,%rdi,8)
180032b08:	45 84 7b 08          	test   %r15b,0x8(%r11)
180032b0c:	48 0f 45 c2          	cmovne %rdx,%rax
180032b10:	49 0b c7             	or     %r15,%rax
180032b13:	49 89 41 10          	mov    %rax,0x10(%r9)
180032b17:	45 84 c0             	test   %r8b,%r8b
180032b1a:	75 3e                	jne    0x180032b5a
180032b1c:	49 8b 4b 08          	mov    0x8(%r11),%rcx
180032b20:	41 84 cf             	test   %cl,%r15b
180032b23:	74 14                	je     0x180032b39
180032b25:	49 3b cf             	cmp    %r15,%rcx
180032b28:	75 04                	jne    0x180032b2e
180032b2a:	33 c0                	xor    %eax,%eax
180032b2c:	eb 0e                	jmp    0x180032b3c
180032b2e:	49 8b c3             	mov    %r11,%rax
180032b31:	49 0b c7             	or     %r15,%rax
180032b34:	48 33 c1             	xor    %rcx,%rax
180032b37:	eb 03                	jmp    0x180032b3c
180032b39:	48 8b c1             	mov    %rcx,%rax
180032b3c:	4c 3b d0             	cmp    %rax,%r10
180032b3f:	75 19                	jne    0x180032b5a
180032b41:	41 84 cf             	test   %cl,%r15b
180032b44:	74 10                	je     0x180032b56
180032b46:	49 8b c3             	mov    %r11,%rax
180032b49:	49 33 c1             	xor    %r9,%rax
180032b4c:	49 89 43 08          	mov    %rax,0x8(%r11)
180032b50:	45 08 7b 08          	or     %r15b,0x8(%r11)
180032b54:	eb 04                	jmp    0x180032b5a
180032b56:	4d 89 4b 08          	mov    %r9,0x8(%r11)
180032b5a:	45 84 7a 10          	test   %r15b,0x10(%r10)
180032b5e:	0f 84 79 ff ff ff    	je     0x180032add
180032b64:	45 8a 43 08          	mov    0x8(%r11),%r8b
180032b68:	49 8b 52 10          	mov    0x10(%r10),%rdx
180032b6c:	41 8a c8             	mov    %r8b,%cl
180032b6f:	48 83 e2 fc          	and    $0xfffffffffffffffc,%rdx
180032b73:	41 22 cf             	and    %r15b,%cl
180032b76:	74 08                	je     0x180032b80
180032b78:	48 85 d2             	test   %rdx,%rdx
180032b7b:	74 03                	je     0x180032b80
180032b7d:	49 33 d2             	xor    %r10,%rdx
180032b80:	48 8b 02             	mov    (%rdx),%rax
180032b83:	84 c9                	test   %cl,%cl
180032b85:	74 08                	je     0x180032b8f
180032b87:	48 85 c0             	test   %rax,%rax
180032b8a:	74 03                	je     0x180032b8f
180032b8c:	48 33 c2             	xor    %rdx,%rax
180032b8f:	33 ed                	xor    %ebp,%ebp
180032b91:	49 3b c2             	cmp    %r10,%rax
180032b94:	40 0f 95 c5          	setne  %bpl
180032b98:	8b dd                	mov    %ebp,%ebx
180032b9a:	49 33 df             	xor    %r15,%rbx
180032b9d:	48 8b 04 da          	mov    (%rdx,%rbx,8),%rax
180032ba1:	84 c9                	test   %cl,%cl
180032ba3:	74 08                	je     0x180032bad
180032ba5:	48 85 c0             	test   %rax,%rax
180032ba8:	74 6b                	je     0x180032c15
180032baa:	48 33 c2             	xor    %rdx,%rax
180032bad:	48 85 c0             	test   %rax,%rax
180032bb0:	74 63                	je     0x180032c15
180032bb2:	44 84 78 10          	test   %r15b,0x10(%rax)
180032bb6:	74 5d                	je     0x180032c15
180032bb8:	41 80 62 10 fe       	andb   $0xfe,0x10(%r10)
180032bbd:	4c 8b ca             	mov    %rdx,%r9
180032bc0:	80 60 10 fe          	andb   $0xfe,0x10(%rax)
180032bc4:	4c 8b 52 10          	mov    0x10(%rdx),%r10
180032bc8:	49 83 e2 fc          	and    $0xfffffffffffffffc,%r10
180032bcc:	45 84 7b 08          	test   %r15b,0x8(%r11)
180032bd0:	74 0c                	je     0x180032bde
180032bd2:	4d 85 d2             	test   %r10,%r10
180032bd5:	0f 84 02 ff ff ff    	je     0x180032add
180032bdb:	4c 33 d2             	xor    %rdx,%r10
180032bde:	4d 85 d2             	test   %r10,%r10
180032be1:	0f 84 f6 fe ff ff    	je     0x180032add
180032be7:	44 08 7a 10          	or     %r15b,0x10(%rdx)
180032beb:	45 8a 43 08          	mov    0x8(%r11),%r8b
180032bef:	49 8b 02             	mov    (%r10),%rax
180032bf2:	45 84 c7             	test   %r8b,%r15b
180032bf5:	74 08                	je     0x180032bff
180032bf7:	48 85 c0             	test   %rax,%rax
180032bfa:	74 03                	je     0x180032bff
180032bfc:	49 33 c2             	xor    %r10,%rax
180032bff:	48 3b d0             	cmp    %rax,%rdx
180032c02:	40 0f 95 c7          	setne  %dil
180032c06:	45 84 7a 10          	test   %r15b,0x10(%r10)
180032c0a:	0f 85 58 ff ff ff    	jne    0x180032b68
180032c10:	e9 c8 fe ff ff       	jmp    0x180032add
180032c15:	40 0f b6 c7          	movzbl %dil,%eax
180032c19:	3b c5                	cmp    %ebp,%eax
180032c1b:	0f 84 25 01 00 00    	je     0x180032d46
180032c21:	49 8b 41 10          	mov    0x10(%r9),%rax
180032c25:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
180032c29:	45 0f b6 c0          	movzbl %r8b,%r8d
180032c2d:	45 23 c7             	and    %r15d,%r8d
180032c30:	74 08                	je     0x180032c3a
180032c32:	48 85 c0             	test   %rax,%rax
180032c35:	74 03                	je     0x180032c3a
180032c37:	49 33 c1             	xor    %r9,%rax
180032c3a:	49 3b c2             	cmp    %r10,%rax
180032c3d:	0f 85 8e 02 00 00    	jne    0x180032ed1
180032c43:	49 8b 04 da          	mov    (%r10,%rbx,8),%rax
180032c47:	45 85 c0             	test   %r8d,%r8d
180032c4a:	74 08                	je     0x180032c54
180032c4c:	48 85 c0             	test   %rax,%rax
180032c4f:	74 03                	je     0x180032c54
180032c51:	49 33 c2             	xor    %r10,%rax
180032c54:	49 3b c1             	cmp    %r9,%rax
180032c57:	0f 85 74 02 00 00    	jne    0x180032ed1
180032c5d:	8b fd                	mov    %ebp,%edi
180032c5f:	48 8b 04 fa          	mov    (%rdx,%rdi,8),%rax
180032c63:	45 85 c0             	test   %r8d,%r8d
180032c66:	74 08                	je     0x180032c70
180032c68:	48 85 c0             	test   %rax,%rax
180032c6b:	74 03                	je     0x180032c70
180032c6d:	48 33 c2             	xor    %rdx,%rax
180032c70:	49 3b c2             	cmp    %r10,%rax
180032c73:	0f 85 58 02 00 00    	jne    0x180032ed1
180032c79:	49 8b 42 10          	mov    0x10(%r10),%rax
180032c7d:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
180032c81:	45 85 c0             	test   %r8d,%r8d
180032c84:	74 08                	je     0x180032c8e
180032c86:	48 85 c0             	test   %rax,%rax
180032c89:	74 03                	je     0x180032c8e
180032c8b:	49 33 c2             	xor    %r10,%rax
180032c8e:	48 3b c2             	cmp    %rdx,%rax
180032c91:	0f 85 3a 02 00 00    	jne    0x180032ed1
180032c97:	48 8b ca             	mov    %rdx,%rcx
180032c9a:	49 8d 34 f9          	lea    (%r9,%rdi,8),%rsi
180032c9e:	49 33 c9             	xor    %r9,%rcx
180032ca1:	45 85 c0             	test   %r8d,%r8d
180032ca4:	48 8b c1             	mov    %rcx,%rax
180032ca7:	49 0f 44 c1          	cmove  %r9,%rax
180032cab:	48 89 04 fa          	mov    %rax,(%rdx,%rdi,8)
180032caf:	49 83 61 10 03       	andq   $0x3,0x10(%r9)
180032cb4:	45 85 c0             	test   %r8d,%r8d
180032cb7:	48 0f 44 ca          	cmove  %rdx,%rcx
180032cbb:	49 09 49 10          	or     %rcx,0x10(%r9)
180032cbf:	48 8b 0e             	mov    (%rsi),%rcx
180032cc2:	45 85 c0             	test   %r8d,%r8d
180032cc5:	74 08                	je     0x180032ccf
180032cc7:	48 85 c9             	test   %rcx,%rcx
180032cca:	74 40                	je     0x180032d0c
180032ccc:	49 33 c9             	xor    %r9,%rcx
180032ccf:	48 85 c9             	test   %rcx,%rcx