180018a61:	0f 88 23 01 00 00    	js     0x180018b8a
180018a67:	0f b6 0f             	movzbl (%rdi),%ecx
180018a6a:	85 c9                	test   %ecx,%ecx
180018a6c:	0f 84 f7 00 00 00    	je     0x180018b69
180018a72:	83 e9 01             	sub    $0x1,%ecx
180018a75:	0f 84 95 00 00 00    	je     0x180018b10
180018a7b:	83 e9 01             	sub    $0x1,%ecx
180018a7e:	74 62                	je     0x180018ae2
180018a80:	83 e9 01             	sub    $0x1,%ecx
180018a83:	74 3f                	je     0x180018ac4
180018a85:	83 f9 01             	cmp    $0x1,%ecx
180018a88:	0f 85 f0 00 00 00    	jne    0x180018b7e
180018a8e:	8b 5d 40             	mov    0x40(%rbp),%ebx
180018a91:	4d 8b ce             	mov    %r14,%r9
180018a94:	44 8a 47 04          	mov    0x4(%rdi),%r8b
180018a98:	8b d3                	mov    %ebx,%edx
180018a9a:	48 8b cf             	mov    %rdi,%rcx
180018a9d:	e8 06 ff ff ff       	call   0x1800189a8
180018aa2:	44 8a 47 07          	mov    0x7(%rdi),%r8b
180018aa6:	40 0a f0             	or     %al,%sil
180018aa9:	4d 8b ce             	mov    %r14,%r9
180018aac:	8b d3                	mov    %ebx,%edx
180018aae:	48 8b cf             	mov    %rdi,%rcx
180018ab1:	e8 f2 fe ff ff       	call   0x1800189a8
180018ab6:	44 8a 47 10          	mov    0x10(%rdi),%r8b
180018aba:	40 0a f0             	or     %al,%sil
180018abd:	8b d3                	mov    %ebx,%edx
180018abf:	e9 ac 00 00 00       	jmp    0x180018b70
180018ac4:	44 8a 47 04          	mov    0x4(%rdi),%r8b
180018ac8:	4d 8b ce             	mov    %r14,%r9
180018acb:	8b 55 40             	mov    0x40(%rbp),%edx
180018ace:	48 8b cf             	mov    %rdi,%rcx
180018ad1:	e8 d2 fe ff ff       	call   0x1800189a8
180018ad6:	44 8a 47 07          	mov    0x7(%rdi),%r8b
180018ada:	40 0a f0             	or     %al,%sil
180018add:	e9 8b 00 00 00       	jmp    0x180018b6d
180018ae2:	8b 5d 40             	mov    0x40(%rbp),%ebx
180018ae5:	4d 8b ce             	mov    %r14,%r9
180018ae8:	44 8a 47 04          	mov    0x4(%rdi),%r8b
180018aec:	8b d3                	mov    %ebx,%edx
180018aee:	48 8b cf             	mov    %rdi,%rcx
180018af1:	e8 b2 fe ff ff       	call   0x1800189a8
180018af6:	44 8a 47 05          	mov    0x5(%rdi),%r8b
180018afa:	40 0a f0             	or     %al,%sil
180018afd:	4d 8b ce             	mov    %r14,%r9
180018b00:	8b d3                	mov    %ebx,%edx
180018b02:	48 8b cf             	mov    %rdi,%rcx
180018b05:	e8 9e fe ff ff       	call   0x1800189a8
180018b0a:	44 8a 47 07          	mov    0x7(%rdi),%r8b
180018b0e:	eb aa                	jmp    0x180018aba
180018b10:	8b 5d 40             	mov    0x40(%rbp),%ebx
180018b13:	4d 8b ce             	mov    %r14,%r9
180018b16:	44 8a 47 04          	mov    0x4(%rdi),%r8b
180018b1a:	8b d3                	mov    %ebx,%edx
180018b1c:	48 8b cf             	mov    %rdi,%rcx
180018b1f:	e8 84 fe ff ff       	call   0x1800189a8
180018b24:	44 8a 47 05          	mov    0x5(%rdi),%r8b
180018b28:	4d 8b ce             	mov    %r14,%r9
180018b2b:	8b d3                	mov    %ebx,%edx
180018b2d:	48 8b cf             	mov    %rdi,%rcx
180018b30:	40 0a f0             	or     %al,%sil
180018b33:	e8 70 fe ff ff       	call   0x1800189a8
180018b38:	44 8a 47 07          	mov    0x7(%rdi),%r8b
180018b3c:	4d 8b ce             	mov    %r14,%r9
180018b3f:	8b d3                	mov    %ebx,%edx
180018b41:	48 8b cf             	mov    %rdi,%rcx
180018b44:	40 0a f0             	or     %al,%sil
180018b47:	e8 5c fe ff ff       	call   0x1800189a8
180018b4c:	44 8a 47 19          	mov    0x19(%rdi),%r8b
180018b50:	40 0a f0             	or     %al,%sil
180018b53:	4d 8b ce             	mov    %r14,%r9
180018b56:	8b d3                	mov    %ebx,%edx
180018b58:	48 8b cf             	mov    %rdi,%rcx
180018b5b:	e8 48 fe ff ff       	call   0x1800189a8
180018b60:	44 8a 47 1a          	mov    0x1a(%rdi),%r8b
180018b64:	e9 51 ff ff ff       	jmp    0x180018aba
180018b69:	44 8a 47 04          	mov    0x4(%rdi),%r8b
180018b6d:	8b 55 40             	mov    0x40(%rbp),%edx
180018b70:	4d 8b ce             	mov    %r14,%r9
180018b73:	48 8b cf             	mov    %rdi,%rcx
180018b76:	e8 2d fe ff ff       	call   0x1800189a8
180018b7b:	40 0a f0             	or     %al,%sil
180018b7e:	48 8b 7d f0          	mov    -0x10(%rbp),%rdi
180018b82:	8b 5d 50             	mov    0x50(%rbp),%ebx
180018b85:	e9 b8 fe ff ff       	jmp    0x180018a42
180018b8a:	4c 8b 65 58          	mov    0x58(%rbp),%r12
180018b8e:	33 db                	xor    %ebx,%ebx
180018b90:	4d 85 e4             	test   %r12,%r12
180018b93:	74 0e                	je     0x180018ba3
180018b95:	45 33 c0             	xor    %r8d,%r8d
180018b98:	49 8b d5             	mov    %r13,%rdx
180018b9b:	49 8b cc             	mov    %r12,%rcx
180018b9e:	e8 c9 1c 08 00       	call   0x18009a86c
180018ba3:	40 84 f6             	test   %sil,%sil
180018ba6:	44 0f 45 fb          	cmovne %ebx,%r15d
180018baa:	41 8b c7             	mov    %r15d,%eax
180018bad:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
180018bb4:	00
180018bb5:	48 83 c4 40          	add    $0x40,%rsp
180018bb9:	41 5f                	pop    %r15
180018bbb:	41 5e                	pop    %r14
180018bbd:	41 5d                	pop    %r13
180018bbf:	41 5c                	pop    %r12
180018bc1:	5f                   	pop    %rdi
180018bc2:	5e                   	pop    %rsi
180018bc3:	5d                   	pop    %rbp
180018bc4:	c3                   	ret
180018bc5:	cc                   	int3
180018bc6:	cc                   	int3
180018bc7:	cc                   	int3
180018bc8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180018bcd:	57                   	push   %rdi
180018bce:	48 81 ec c0 00 00 00 	sub    $0xc0,%rsp
180018bd5:	48 8b da             	mov    %rdx,%rbx
180018bd8:	48 8b f9             	mov    %rcx,%rdi
180018bdb:	e8 d4 bb 07 00       	call   0x1800947b4
180018be0:	85 c0                	test   %eax,%eax
180018be2:	78 36                	js     0x180018c1a
180018be4:	41 b8 10 00 00 00    	mov    $0x10,%r8d
180018bea:	48 8d 15 4f f8 12 00 	lea    0x12f84f(%rip),%rdx        # 0x180148440
180018bf1:	48 8b cb             	mov    %rbx,%rcx
180018bf4:	e8 67 b2 11 00       	call   0x180133e60
180018bf9:	48 83 f8 10          	cmp    $0x10,%rax
180018bfd:	74 1b                	je     0x180018c1a
180018bff:	41 b8 10 00 00 00    	mov    $0x10,%r8d
180018c05:	48 8d 15 24 f8 12 00 	lea    0x12f824(%rip),%rdx        # 0x180148430
180018c0c:	48 8b cb             	mov    %rbx,%rcx
180018c0f:	e8 4c b2 11 00       	call   0x180133e60
180018c14:	48 83 f8 10          	cmp    $0x10,%rax
180018c18:	75 58                	jne    0x180018c72
180018c1a:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
180018c1f:	e8 84 86 0c 00       	call   0x1800e12a8
180018c24:	48 85 ff             	test   %rdi,%rdi
180018c27:	75 07                	jne    0x180018c30
180018c29:	bf 01 00 00 c0       	mov    $0xc0000001,%edi
180018c2e:	eb 0f                	jmp    0x180018c3f
180018c30:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
180018c35:	48 8b cf             	mov    %rdi,%rcx
180018c38:	e8 b3 fd ff ff       	call   0x1800189f0
180018c3d:	8b f8                	mov    %eax,%edi
180018c3f:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
180018c44:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
180018c49:	e8 9e 86 0c 00       	call   0x1800e12ec
180018c4e:	85 ff                	test   %edi,%edi
180018c50:	78 07                	js     0x180018c59
180018c52:	0f 10 44 24 20       	movups 0x20(%rsp),%xmm0
180018c57:	eb 15                	jmp    0x180018c6e
180018c59:	8b d7                	mov    %edi,%edx
180018c5b:	48 8d 0d 2e f6 12 00 	lea    0x12f62e(%rip),%rcx        # 0x180148290
180018c62:	e8 81 78 07 00       	call   0x1800904e8
180018c67:	0f 10 05 d2 f7 12 00 	movups 0x12f7d2(%rip),%xmm0        # 0x180148440
180018c6e:	f3 0f 7f 03          	movdqu %xmm0,(%rbx)
180018c72:	48 8b 9c 24 d0 00 00 	mov    0xd0(%rsp),%rbx
180018c79:	00
180018c7a:	48 81 c4 c0 00 00 00 	add    $0xc0,%rsp
180018c81:	5f                   	pop    %rdi
180018c82:	c3                   	ret
180018c83:	cc                   	int3
180018c84:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180018c89:	44 89 44 24 18       	mov    %r8d,0x18(%rsp)
180018c8e:	55                   	push   %rbp
180018c8f:	56                   	push   %rsi
180018c90:	57                   	push   %rdi
180018c91:	41 54                	push   %r12
180018c93:	41 55                	push   %r13
180018c95:	41 56                	push   %r14
180018c97:	41 57                	push   %r15
180018c99:	48 8b ec             	mov    %rsp,%rbp
180018c9c:	48 83 ec 30          	sub    $0x30,%rsp
180018ca0:	44 8b 2d 2d 38 15 00 	mov    0x15382d(%rip),%r13d        # 0x18016c4d4
180018ca7:	4c 8b fa             	mov    %rdx,%r15
180018caa:	48 8b b1 f0 00 00 00 	mov    0xf0(%rcx),%rsi
180018cb1:	0f 31                	rdtsc
180018cb3:	48 c1 e2 20          	shl    $0x20,%rdx
180018cb7:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
180018cbb:	48 0b c2             	or     %rdx,%rax
180018cbe:	33 db                	xor    %ebx,%ebx
180018cc0:	48 8d 55 50          	lea    0x50(%rbp),%rdx
180018cc4:	48 89 86 30 0a 00 00 	mov    %rax,0xa30(%rsi)
180018ccb:	45 32 f6             	xor    %r14b,%r14b
180018cce:	e8 7d 81 07 00       	call   0x180090e50
180018cd3:	48 8d 55 40          	lea    0x40(%rbp),%rdx
180018cd7:	8b f8                	mov    %eax,%edi
180018cd9:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
180018cdd:	e8 da ae 01 00       	call   0x180033bbc
180018ce2:	44 8a 65 50          	mov    0x50(%rbp),%r12b
180018ce6:	85 ff                	test   %edi,%edi
180018ce8:	78 24                	js     0x180018d0e
180018cea:	84 c0                	test   %al,%al
180018cec:	74 20                	je     0x180018d0e
180018cee:	48 8b 5d 40          	mov    0x40(%rbp),%rbx
180018cf2:	41 b6 01             	mov    $0x1,%r14b
180018cf5:	48 89 9e 28 0a 00 00 	mov    %rbx,0xa28(%rsi)
180018cfc:	45 84 e4             	test   %r12b,%r12b
180018cff:	75 0d                	jne    0x180018d0e
180018d01:	48 b8 00 90 f2 ed d9 	movabs $0xd9edf29000,%rax
180018d08:	00 00 00
180018d0b:	48 03 d8             	add    %rax,%rbx
180018d0e:	4d 85 ff             	test   %r15,%r15
180018d11:	75 07                	jne    0x180018d1a
180018d13:	bf 01 00 00 c0       	mov    $0xc0000001,%edi
180018d18:	eb 24                	jmp    0x180018d3e
180018d1a:	41 b8 08 00 00 00    	mov    $0x8,%r8d
180018d20:	49 8d 57 10          	lea    0x10(%r15),%rdx
180018d24:	e8 5b b1 01 00       	call   0x180033e84
180018d29:	41 39 47 18          	cmp    %eax,0x18(%r15)
180018d2d:	75 e4                	jne    0x180018d13
180018d2f:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
180018d33:	49 8d 4f 10          	lea    0x10(%r15),%rcx
180018d37:	e8 64 ab 01 00       	call   0x1800338a0
180018d3c:	33 ff                	xor    %edi,%edi
180018d3e:	48 8d 55 40          	lea    0x40(%rbp),%rdx
180018d42:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
180018d46:	e8 71 ae 01 00       	call   0x180033bbc
180018d4b:	85 ff                	test   %edi,%edi
180018d4d:	78 1b                	js     0x180018d6a
180018d4f:	84 c0                	test   %al,%al
180018d51:	74 17                	je     0x180018d6a
180018d53:	48 8b 45 40          	mov    0x40(%rbp),%rax
180018d57:	45 84 f6             	test   %r14b,%r14b
180018d5a:	74 05                	je     0x180018d61
180018d5c:	48 3b c3             	cmp    %rbx,%rax
180018d5f:	7e 69                	jle    0x180018dca
180018d61:	48 89 86 28 0a 00 00 	mov    %rax,0xa28(%rsi)
180018d68:	eb 5d                	jmp    0x180018dc7
180018d6a:	48 8b 05 e7 c5 18 00 	mov    0x18c5e7(%rip),%rax        # 0x1801a5358
180018d71:	4e 8b 3c e8          	mov    (%rax,%r13,8),%r15
180018d75:	83 c8 ff             	or     $0xffffffff,%eax
180018d78:	41 8b 97 f8 12 00 00 	mov    0x12f8(%r15),%edx
180018d7f:	3b d0                	cmp    %eax,%edx
180018d81:	74 47                	je     0x180018dca
180018d83:	89 45 40             	mov    %eax,0x40(%rbp)
180018d86:	4c 8d 45 40          	lea    0x40(%rbp),%r8
180018d8a:	33 c0                	xor    %eax,%eax
180018d8c:	49 8d 4f 10          	lea    0x10(%r15),%rcx
180018d90:	89 45 44             	mov    %eax,0x44(%rbp)
180018d93:	49 8b 47 18          	mov    0x18(%r15),%rax
180018d97:	ff d0                	call   *%rax
180018d99:	0f 1f 00             	nopl   (%rax)
180018d9c:	48 85 c0             	test   %rax,%rax
180018d9f:	74 29                	je     0x180018dca
180018da1:	48 8b 78 04          	mov    0x4(%rax),%rdi
180018da5:	48 8d 55 40          	lea    0x40(%rbp),%rdx
180018da9:	49 8b 47 20          	mov    0x20(%r15),%rax
180018dad:	49 8d 4f 10          	lea    0x10(%r15),%rcx
180018db1:	ff d0                	call   *%rax
180018db3:	0f 1f 00             	nopl   (%rax)
180018db6:	45 84 f6             	test   %r14b,%r14b
180018db9:	74 05                	je     0x180018dc0
180018dbb:	48 3b fb             	cmp    %rbx,%rdi
180018dbe:	7e 0a                	jle    0x180018dca
180018dc0:	48 89 be 28 0a 00 00 	mov    %rdi,0xa28(%rsi)
180018dc7:	45 32 f6             	xor    %r14b,%r14b
180018dca:	45 84 f6             	test   %r14b,%r14b
180018dcd:	74 0a                	je     0x180018dd9
180018dcf:	48 83 8e 40 0a 00 00 	orq    $0x2,0xa40(%rsi)
180018dd6:	02
180018dd7:	eb 03                	jmp    0x180018ddc
180018dd9:	41 b4 01             	mov    $0x1,%r12b
180018ddc:	45 84 e4             	test   %r12b,%r12b
180018ddf:	74 08                	je     0x180018de9
180018de1:	48 83 8e 40 0a 00 00 	orq    $0x1,0xa40(%rsi)
180018de8:	01
180018de9:	48 8b 5c 24 78       	mov    0x78(%rsp),%rbx
180018dee:	48 83 c4 30          	add    $0x30,%rsp
180018df2:	41 5f                	pop    %r15
180018df4:	41 5e                	pop    %r14
180018df6:	41 5d                	pop    %r13
180018df8:	41 5c                	pop    %r12
180018dfa:	5f                   	pop    %rdi
180018dfb:	5e                   	pop    %rsi
180018dfc:	5d                   	pop    %rbp
180018dfd:	c3                   	ret
180018dfe:	cc                   	int3
180018dff:	cc                   	int3
180018e00:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180018e05:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
180018e0a:	56                   	push   %rsi
180018e0b:	57                   	push   %rdi
180018e0c:	41 56                	push   %r14
180018e0e:	48 83 ec 20          	sub    $0x20,%rsp
180018e12:	48 8b f1             	mov    %rcx,%rsi
180018e15:	41 be 24 00 00 00    	mov    $0x24,%r14d
180018e1b:	41 8b ce             	mov    %r14d,%ecx
180018e1e:	e8 2d 10 08 00       	call   0x180099e50
180018e23:	33 ed                	xor    %ebp,%ebp
180018e25:	48 8b f8             	mov    %rax,%rdi
180018e28:	48 85 c0             	test   %rax,%rax
180018e2b:	75 07                	jne    0x180018e34
180018e2d:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
180018e32:	eb 74                	jmp    0x180018ea8
180018e34:	ba 46 41 43 50       	mov    $0x50434146,%edx
180018e39:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
180018e3e:	e8 d5 a1 07 00       	call   0x180093018
180018e43:	8b d8                	mov    %eax,%ebx
180018e45:	85 c0                	test   %eax,%eax
180018e47:	78 57                	js     0x180018ea0
180018e49:	4c 8b 44 24 48       	mov    0x48(%rsp),%r8
180018e4e:	0f b7 dd             	movzwl %bp,%ebx
180018e51:	0f b7 cb             	movzwl %bx,%ecx
180018e54:	41 0f be 44 08 0a    	movsbl 0xa(%r8,%rcx,1),%eax
180018e5a:	84 c0                	test   %al,%al
180018e5c:	74 0d                	je     0x180018e6b
180018e5e:	66 ff c3             	inc    %bx
180018e61:	66 89 04 4f          	mov    %ax,(%rdi,%rcx,2)
180018e65:	66 83 fb 06          	cmp    $0x6,%bx
180018e69:	72 e6                	jb     0x180018e51
180018e6b:	45 8b 48 18          	mov    0x18(%r8),%r9d
180018e6f:	ba 12 00 00 00       	mov    $0x12,%edx
180018e74:	0f b7 c3             	movzwl %bx,%eax
180018e77:	4c 8d 05 d2 f4 12 00 	lea    0x12f4d2(%rip),%r8        # 0x180148350
180018e7e:	48 2b d0             	sub    %rax,%rdx
180018e81:	48 8d 0c 47          	lea    (%rdi,%rax,2),%rcx
180018e85:	e8 b2 4c 11 00       	call   0x18012db3c
180018e8a:	66 03 c3             	add    %bx,%ax
180018e8d:	48 89 7e 08          	mov    %rdi,0x8(%rsi)
180018e91:	66 03 c0             	add    %ax,%ax
180018e94:	66 44 89 76 02       	mov    %r14w,0x2(%rsi)
180018e99:	66 89 06             	mov    %ax,(%rsi)
180018e9c:	8b dd                	mov    %ebp,%ebx
180018e9e:	eb 08                	jmp    0x180018ea8
180018ea0:	48 8b cf             	mov    %rdi,%rcx
180018ea3:	e8 54 11 08 00       	call   0x180099ffc
180018ea8:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
180018ead:	8b c3                	mov    %ebx,%eax
180018eaf:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
180018eb4:	48 83 c4 20          	add    $0x20,%rsp
180018eb8:	41 5e                	pop    %r14
180018eba:	5f                   	pop    %rdi
180018ebb:	5e                   	pop    %rsi
180018ebc:	c3                   	ret
180018ebd:	cc                   	int3
180018ebe:	cc                   	int3
180018ebf:	cc                   	int3
180018ec0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180018ec5:	56                   	push   %rsi
180018ec6:	48 83 ec 20          	sub    $0x20,%rsp
180018eca:	83 4c 24 40 ff       	orl    $0xffffffff,0x40(%rsp)
180018ecf:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
180018ed4:	45 33 c0             	xor    %r8d,%r8d
180018ed7:	48 8b f2             	mov    %rdx,%rsi
180018eda:	41 8d 50 01          	lea    0x1(%r8),%edx
180018ede:	e8 2d e3 00 00       	call   0x180027210
180018ee3:	8b d8                	mov    %eax,%ebx
180018ee5:	85 c0                	test   %eax,%eax
180018ee7:	78 11                	js     0x180018efa
180018ee9:	8b 4c 24 40          	mov    0x40(%rsp),%ecx
180018eed:	41 b0 01             	mov    $0x1,%r8b
180018ef0:	48 8b d6             	mov    %rsi,%rdx
180018ef3:	e8 90 cc 05 00       	call   0x180075b88