180118ab9:	33 c0                	xor    %eax,%eax
180118abb:	85 ff                	test   %edi,%edi
180118abd:	0f 49 45 bb          	cmovns -0x45(%rbp),%eax
180118ac1:	eb 22                	jmp    0x180118ae5
180118ac3:	4c 8d 4d cf          	lea    -0x31(%rbp),%r9
180118ac7:	48 89 45 ef          	mov    %rax,-0x11(%rbp)
180118acb:	8b d3                	mov    %ebx,%edx
180118acd:	0f 11 45 cf          	movups %xmm0,-0x31(%rbp)
180118ad1:	0f 11 45 df          	movups %xmm0,-0x21(%rbp)
180118ad5:	e8 96 f9 ff ff       	call   0x180118470
180118ada:	8b f8                	mov    %eax,%edi
180118adc:	41 bb 01 82 00 00    	mov    $0x8201,%r11d
180118ae2:	8b 45 97             	mov    -0x69(%rbp),%eax
180118ae5:	85 ff                	test   %edi,%edi
180118ae7:	78 71                	js     0x180118b5a
180118ae9:	03 f0                	add    %eax,%esi
180118aeb:	83 fb 0f             	cmp    $0xf,%ebx
180118aee:	77 06                	ja     0x180118af6
180118af0:	41 0f a3 db          	bt     %ebx,%r11d
180118af4:	72 35                	jb     0x180118b2b
180118af6:	49 8b 4e 28          	mov    0x28(%r14),%rcx
180118afa:	48 85 c9             	test   %rcx,%rcx
180118afd:	74 2c                	je     0x180118b2b
180118aff:	0f 57 c0             	xorps  %xmm0,%xmm0
180118b02:	4c 8d 4d f7          	lea    -0x9(%rbp),%r9
180118b06:	33 c0                	xor    %eax,%eax
180118b08:	4c 8d 45 97          	lea    -0x69(%rbp),%r8
180118b0c:	21 45 97             	and    %eax,-0x69(%rbp)
180118b0f:	8b d3                	mov    %ebx,%edx
180118b11:	0f 11 45 f7          	movups %xmm0,-0x9(%rbp)
180118b15:	48 89 45 17          	mov    %rax,0x17(%rbp)
180118b19:	0f 11 45 07          	movups %xmm0,0x7(%rbp)
180118b1d:	e8 4e f9 ff ff       	call   0x180118470
180118b22:	8b f8                	mov    %eax,%edi
180118b24:	85 c0                	test   %eax,%eax
180118b26:	78 03                	js     0x180118b2b
180118b28:	03 75 97             	add    -0x69(%rbp),%esi
180118b2b:	ff c3                	inc    %ebx
180118b2d:	41 bb 01 82 00 00    	mov    $0x8201,%r11d
180118b33:	83 fb 0f             	cmp    $0xf,%ebx
180118b36:	0f 8e 34 ff ff ff    	jle    0x180118a70
180118b3c:	44 8b fe             	mov    %esi,%r15d
180118b3f:	85 ff                	test   %edi,%edi
180118b41:	78 17                	js     0x180118b5a
180118b43:	85 f6                	test   %esi,%esi
180118b45:	74 13                	je     0x180118b5a
180118b47:	4c 8b 4d 9f          	mov    -0x61(%rbp),%r9
180118b4b:	4d 8b c4             	mov    %r12,%r8
180118b4e:	8b d6                	mov    %esi,%edx
180118b50:	49 8b ce             	mov    %r14,%rcx
180118b53:	e8 80 f0 ff ff       	call   0x180117bd8
180118b58:	8b f8                	mov    %eax,%edi
180118b5a:	81 ff 23 00 00 c0    	cmp    $0xc0000023,%edi
180118b60:	75 14                	jne    0x180118b76
180118b62:	41 8b cd             	mov    %r13d,%ecx
180118b65:	41 bb 01 82 00 00    	mov    $0x8201,%r11d
180118b6b:	41 ff cd             	dec    %r13d
180118b6e:	85 c9                	test   %ecx,%ecx
180118b70:	0f 85 ee fe ff ff    	jne    0x180118a64
180118b76:	85 ff                	test   %edi,%edi
180118b78:	78 30                	js     0x180118baa
180118b7a:	49 8b 0c 24          	mov    (%r12),%rcx
180118b7e:	48 85 c9             	test   %rcx,%rcx
180118b81:	74 27                	je     0x180118baa
180118b83:	8b 01                	mov    (%rcx),%eax
180118b85:	85 c0                	test   %eax,%eax
180118b87:	74 1c                	je     0x180118ba5
180118b89:	8b d0                	mov    %eax,%edx
180118b8b:	4c 8d 0d 16 e4 ff ff 	lea    -0x1bea(%rip),%r9        # 0x180116fa8
180118b92:	48 83 c1 04          	add    $0x4,%rcx
180118b96:	41 b8 0c 00 00 00    	mov    $0xc,%r8d
180118b9c:	e8 af 26 01 00       	call   0x18012b250
180118ba1:	49 8b 0c 24          	mov    (%r12),%rcx
180118ba5:	e8 c6 e6 ff ff       	call   0x180117270
180118baa:	8b c7                	mov    %edi,%eax
180118bac:	48 8b 4d 1f          	mov    0x1f(%rbp),%rcx
180118bb0:	48 33 cc             	xor    %rsp,%rcx
180118bb3:	e8 74 cf ef ff       	call   0x180015b2c
180118bb8:	48 8b 9c 24 08 01 00 	mov    0x108(%rsp),%rbx
180118bbf:	00
180118bc0:	48 81 c4 b0 00 00 00 	add    $0xb0,%rsp
180118bc7:	41 5f                	pop    %r15
180118bc9:	41 5e                	pop    %r14
180118bcb:	41 5d                	pop    %r13
180118bcd:	41 5c                	pop    %r12
180118bcf:	5f                   	pop    %rdi
180118bd0:	5e                   	pop    %rsi
180118bd1:	5d                   	pop    %rbp
180118bd2:	c3                   	ret
180118bd3:	cc                   	int3
180118bd4:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
180118bd9:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
180118bde:	53                   	push   %rbx
180118bdf:	56                   	push   %rsi
180118be0:	57                   	push   %rdi
180118be1:	41 54                	push   %r12
180118be3:	41 55                	push   %r13
180118be5:	41 56                	push   %r14
180118be7:	41 57                	push   %r15
180118be9:	48 83 ec 40          	sub    $0x40,%rsp
180118bed:	49 8b f0             	mov    %r8,%rsi
180118bf0:	4c 8b f2             	mov    %rdx,%r14
180118bf3:	4c 8b e9             	mov    %rcx,%r13
180118bf6:	41 bc 05 00 00 00    	mov    $0x5,%r12d
180118bfc:	33 ff                	xor    %edi,%edi
180118bfe:	45 33 ff             	xor    %r15d,%r15d
180118c01:	48 21 bc 24 98 00 00 	and    %rdi,0x98(%rsp)
180118c08:	00
180118c09:	4d 85 ed             	test   %r13,%r13
180118c0c:	0f 84 38 01 00 00    	je     0x180118d4a
180118c12:	4c 8d 0d bf 49 04 00 	lea    0x449bf(%rip),%r9        # 0x18015d5d8
180118c19:	4d 8b c5             	mov    %r13,%r8
180118c1c:	48 8d 8c 24 98 00 00 	lea    0x98(%rsp),%rcx
180118c23:	00
180118c24:	e8 bf 2e f0 ff       	call   0x18001bae8
180118c29:	8b d8                	mov    %eax,%ebx
180118c2b:	3d 34 00 00 c0       	cmp    $0xc0000034,%eax
180118c30:	0f 84 10 01 00 00    	je     0x180118d46
180118c36:	3d 7c 01 00 c0       	cmp    $0xc000017c,%eax
180118c3b:	0f 84 05 01 00 00    	je     0x180118d46
180118c41:	85 c0                	test   %eax,%eax
180118c43:	0f 88 b2 00 00 00    	js     0x180118cfb
180118c49:	bb 30 01 00 00       	mov    $0x130,%ebx
180118c4e:	8b cb                	mov    %ebx,%ecx
180118c50:	89 9c 24 80 00 00 00 	mov    %ebx,0x80(%rsp)
180118c57:	e8 f4 11 f8 ff       	call   0x180099e50
180118c5c:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
180118c61:	48 8b f8             	mov    %rax,%rdi
180118c64:	48 85 c0             	test   %rax,%rax
180118c67:	75 0a                	jne    0x180118c73
180118c69:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
180118c6e:	e9 88 00 00 00       	jmp    0x180118cfb
180118c73:	4c 8b c3             	mov    %rbx,%r8
180118c76:	33 d2                	xor    %edx,%edx
180118c78:	48 8b c8             	mov    %rax,%rcx
180118c7b:	e8 00 d0 01 00       	call   0x180135c80
180118c80:	33 f6                	xor    %esi,%esi
180118c82:	45 33 f6             	xor    %r14d,%r14d
180118c85:	4c 39 bc 24 98 00 00 	cmp    %r15,0x98(%rsp)
180118c8c:	00
180118c8d:	74 31                	je     0x180118cc0
180118c8f:	48 8b 8c 24 98 00 00 	mov    0x98(%rsp),%rcx
180118c96:	00
180118c97:	48 8d 84 24 80 00 00 	lea    0x80(%rsp),%rax
180118c9e:	00
180118c9f:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
180118ca4:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180118ca9:	41 b8 02 00 00 00    	mov    $0x2,%r8d
180118caf:	41 8b d6             	mov    %r14d,%edx
180118cb2:	e8 8d e6 ff ff       	call   0x180117344
180118cb7:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
180118cbc:	8b d8                	mov    %eax,%ebx
180118cbe:	eb 05                	jmp    0x180118cc5
180118cc0:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
180118cc5:	81 fb 1a 00 00 80    	cmp    $0x8000001a,%ebx
180118ccb:	74 0c                	je     0x180118cd9
180118ccd:	85 db                	test   %ebx,%ebx
180118ccf:	78 0d                	js     0x180118cde
180118cd1:	03 77 14             	add    0x14(%rdi),%esi
180118cd4:	41 ff c6             	inc    %r14d
180118cd7:	eb ac                	jmp    0x180118c85
180118cd9:	33 db                	xor    %ebx,%ebx
180118cdb:	44 8b fe             	mov    %esi,%r15d
180118cde:	4c 8b b4 24 88 00 00 	mov    0x88(%rsp),%r14
180118ce5:	00
180118ce6:	48 8b b4 24 90 00 00 	mov    0x90(%rsp),%rsi
180118ced:	00
180118cee:	48 85 ff             	test   %rdi,%rdi
180118cf1:	74 08                	je     0x180118cfb
180118cf3:	48 8b cf             	mov    %rdi,%rcx
180118cf6:	e8 01 13 f8 ff       	call   0x180099ffc
180118cfb:	48 83 bc 24 98 00 00 	cmpq   $0x0,0x98(%rsp)
180118d02:	00 00
180118d04:	74 0d                	je     0x180118d13
180118d06:	48 8b 8c 24 98 00 00 	mov    0x98(%rsp),%rcx
180118d0d:	00
180118d0e:	e8 e9 12 f8 ff       	call   0x180099ffc
180118d13:	85 db                	test   %ebx,%ebx
180118d15:	78 18                	js     0x180118d2f
180118d17:	45 85 ff             	test   %r15d,%r15d
180118d1a:	74 13                	je     0x180118d2f
180118d1c:	4c 8b ce             	mov    %rsi,%r9
180118d1f:	4d 8b c6             	mov    %r14,%r8
180118d22:	41 8b d7             	mov    %r15d,%edx
180118d25:	49 8b cd             	mov    %r13,%rcx
180118d28:	e8 f7 f3 ff ff       	call   0x180118124
180118d2d:	8b d8                	mov    %eax,%ebx
180118d2f:	81 fb 23 00 00 c0    	cmp    $0xc0000023,%ebx
180118d35:	75 18                	jne    0x180118d4f
180118d37:	41 8b cc             	mov    %r12d,%ecx
180118d3a:	41 ff cc             	dec    %r12d
180118d3d:	85 c9                	test   %ecx,%ecx
180118d3f:	74 0e                	je     0x180118d4f
180118d41:	e9 b6 fe ff ff       	jmp    0x180118bfc
180118d46:	33 db                	xor    %ebx,%ebx
180118d48:	eb a4                	jmp    0x180118cee
180118d4a:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
180118d4f:	8b c3                	mov    %ebx,%eax
180118d51:	48 83 c4 40          	add    $0x40,%rsp
180118d55:	41 5f                	pop    %r15
180118d57:	41 5e                	pop    %r14
180118d59:	41 5d                	pop    %r13
180118d5b:	41 5c                	pop    %r12
180118d5d:	5f                   	pop    %rdi
180118d5e:	5e                   	pop    %rsi
180118d5f:	5b                   	pop    %rbx
180118d60:	c3                   	ret
180118d61:	cc                   	int3
180118d62:	cc                   	int3
180118d63:	cc                   	int3
180118d64:	48 8b c4             	mov    %rsp,%rax
180118d67:	53                   	push   %rbx
180118d68:	55                   	push   %rbp
180118d69:	56                   	push   %rsi
180118d6a:	57                   	push   %rdi
180118d6b:	41 54                	push   %r12
180118d6d:	41 56                	push   %r14
180118d6f:	41 57                	push   %r15
180118d71:	48 83 ec 20          	sub    $0x20,%rsp
180118d75:	33 f6                	xor    %esi,%esi
180118d77:	33 ff                	xor    %edi,%edi
180118d79:	48 21 70 18          	and    %rsi,0x18(%rax)
180118d7d:	48 8b d9             	mov    %rcx,%rbx
180118d80:	48 21 70 20          	and    %rsi,0x20(%rax)
180118d84:	4d 8b e0             	mov    %r8,%r12
180118d87:	48 21 32             	and    %rsi,(%rdx)
180118d8a:	4c 8b fa             	mov    %rdx,%r15
180118d8d:	49 21 30             	and    %rsi,(%r8)
180118d90:	48 8b 09             	mov    (%rcx),%rcx
180118d93:	48 89 70 08          	mov    %rsi,0x8(%rax)
180118d97:	48 89 78 10          	mov    %rdi,0x10(%rax)
180118d9b:	48 85 c9             	test   %rcx,%rcx
180118d9e:	74 12                	je     0x180118db2
180118da0:	4c 8d 40 18          	lea    0x18(%rax),%r8
180118da4:	48 8d 50 08          	lea    0x8(%rax),%rdx
180118da8:	e8 27 fe ff ff       	call   0x180118bd4
180118dad:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
180118db2:	48 8b 4b 30          	mov    0x30(%rbx),%rcx
180118db6:	48 85 c9             	test   %rcx,%rcx
180118db9:	74 14                	je     0x180118dcf
180118dbb:	4c 8d 44 24 78       	lea    0x78(%rsp),%r8
180118dc0:	48 8d 54 24 68       	lea    0x68(%rsp),%rdx
180118dc5:	e8 0a fe ff ff       	call   0x180118bd4
180118dca:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
180118dcf:	33 ed                	xor    %ebp,%ebp
180118dd1:	49 21 2f             	and    %rbp,(%r15)
180118dd4:	49 21 2c 24          	and    %rbp,(%r12)
180118dd8:	48 85 f6             	test   %rsi,%rsi
180118ddb:	74 04                	je     0x180118de1
180118ddd:	8b 06                	mov    (%rsi),%eax
180118ddf:	eb 02                	jmp    0x180118de3
180118de1:	33 c0                	xor    %eax,%eax
180118de3:	48 85 ff             	test   %rdi,%rdi
180118de6:	74 04                	je     0x180118dec
180118de8:	8b 0f                	mov    (%rdi),%ecx
180118dea:	eb 02                	jmp    0x180118dee
180118dec:	33 c9                	xor    %ecx,%ecx
180118dee:	03 c1                	add    %ecx,%eax
180118df0:	0f 84 84 01 00 00    	je     0x180118f7a
180118df6:	8b c8                	mov    %eax,%ecx
180118df8:	bd 95 00 00 c0       	mov    $0xc0000095,%ebp
180118dfd:	b8 10 00 00 00       	mov    $0x10,%eax
180118e02:	48 f7 e1             	mul    %rcx
180118e05:	48 8b c8             	mov    %rax,%rcx
180118e08:	48 85 d2             	test   %rdx,%rdx
180118e0b:	0f 85 d0 00 00 00    	jne    0x180118ee1
180118e11:	48 83 c0 04          	add    $0x4,%rax
180118e15:	49 83 ce ff          	or     $0xffffffffffffffff,%r14
180118e19:	48 3b c1             	cmp    %rcx,%rax
180118e1c:	4c 0f 43 f0          	cmovae %rax,%r14
180118e20:	1b c0                	sbb    %eax,%eax
180118e22:	23 e8                	and    %eax,%ebp
180118e24:	0f 8c 50 01 00 00    	jl     0x180118f7a
180118e2a:	49 8b ce             	mov    %r14,%rcx
180118e2d:	e8 1e 10 f8 ff       	call   0x180099e50
180118e32:	48 8b d8             	mov    %rax,%rbx
180118e35:	48 85 c0             	test   %rax,%rax
180118e38:	75 0a                	jne    0x180118e44
180118e3a:	bd 17 00 00 c0       	mov    $0xc0000017,%ebp
180118e3f:	e9 90 00 00 00       	jmp    0x180118ed4
180118e44:	4d 8b c6             	mov    %r14,%r8
180118e47:	33 d2                	xor    %edx,%edx
180118e49:	48 8b cb             	mov    %rbx,%rcx
180118e4c:	e8 2f ce 01 00       	call   0x180135c80
180118e51:	33 d2                	xor    %edx,%edx
180118e53:	33 ed                	xor    %ebp,%ebp
180118e55:	48 85 f6             	test   %rsi,%rsi
180118e58:	74 27                	je     0x180118e81
180118e5a:	45 33 c0             	xor    %r8d,%r8d
180118e5d:	39 16                	cmp    %edx,(%rsi)
180118e5f:	76 20                	jbe    0x180118e81
180118e61:	41 8b c0             	mov    %r8d,%eax
180118e64:	41 ff c0             	inc    %r8d
180118e67:	48 03 c0             	add    %rax,%rax
180118e6a:	8b ca                	mov    %edx,%ecx
180118e6c:	48 03 c9             	add    %rcx,%rcx
180118e6f:	ff c2                	inc    %edx
180118e71:	0f 10 44 c6 04       	movups 0x4(%rsi,%rax,8),%xmm0
180118e76:	f3 0f 7f 44 cb 04    	movdqu %xmm0,0x4(%rbx,%rcx,8)
180118e7c:	44 3b 06             	cmp    (%rsi),%r8d
180118e7f:	72 e0                	jb     0x180118e61
180118e81:	48 85 ff             	test   %rdi,%rdi
180118e84:	74 27                	je     0x180118ead
180118e86:	45 33 c0             	xor    %r8d,%r8d
180118e89:	39 2f                	cmp    %ebp,(%rdi)
180118e8b:	76 20                	jbe    0x180118ead
180118e8d:	41 8b c0             	mov    %r8d,%eax
180118e90:	41 ff c0             	inc    %r8d
180118e93:	48 03 c0             	add    %rax,%rax
180118e96:	8b ca                	mov    %edx,%ecx
180118e98:	48 03 c9             	add    %rcx,%rcx
180118e9b:	ff c2                	inc    %edx
180118e9d:	0f 10 44 c7 04       	movups 0x4(%rdi,%rax,8),%xmm0
180118ea2:	f3 0f 7f 44 cb 04    	movdqu %xmm0,0x4(%rbx,%rcx,8)
180118ea8:	44 3b 07             	cmp    (%rdi),%r8d
180118eab:	72 e0                	jb     0x180118e8d
180118ead:	89 13                	mov    %edx,(%rbx)
180118eaf:	85 d2                	test   %edx,%edx
180118eb1:	74 16                	je     0x180118ec9
180118eb3:	48 8d 4b 04          	lea    0x4(%rbx),%rcx
180118eb7:	41 b8 10 00 00 00    	mov    $0x10,%r8d
180118ebd:	4c 8d 0d ac e0 ff ff 	lea    -0x1f54(%rip),%r9        # 0x180116f70
180118ec4:	e8 87 23 01 00       	call   0x18012b250
180118ec9:	49 89 1f             	mov    %rbx,(%r15)
180118ecc:	33 db                	xor    %ebx,%ebx
180118ece:	33 c0                	xor    %eax,%eax
180118ed0:	4d 89 34 24          	mov    %r14,(%r12)
180118ed4:	48 85 c0             	test   %rax,%rax
180118ed7:	74 08                	je     0x180118ee1
180118ed9:	48 8b cb             	mov    %rbx,%rcx
180118edc:	e8 1b 11 f8 ff       	call   0x180099ffc
180118ee1:	85 ed                	test   %ebp,%ebp
180118ee3:	0f 88 91 00 00 00    	js     0x180118f7a
180118ee9:	4d 8b 07             	mov    (%r15),%r8
180118eec:	4d 85 c0             	test   %r8,%r8
180118eef:	0f 84 85 00 00 00    	je     0x180118f7a
180118ef5:	41 8b 00             	mov    (%r8),%eax
180118ef8:	85 c0                	test   %eax,%eax
180118efa:	74 7e                	je     0x180118f7a
180118efc:	45 33 db             	xor    %r11d,%r11d
180118eff:	8d 58 ff             	lea    -0x1(%rax),%ebx
180118f02:	85 db                	test   %ebx,%ebx
180118f04:	74 55                	je     0x180118f5b
180118f06:	49 8d 48 0c          	lea    0xc(%r8),%rcx
180118f0a:	44 8b f3             	mov    %ebx,%r14d
180118f0d:	49 8d 50 1c          	lea    0x1c(%r8),%rdx
180118f11:	8b 41 f8             	mov    -0x8(%rcx),%eax
180118f14:	3b 42 f8             	cmp    -0x8(%rdx),%eax
180118f17:	77 20                	ja     0x180118f39
180118f19:	72 1e                	jb     0x180118f39