140056ab3:	41 89 f0             	mov    %esi,%r8d
140056ab6:	49 8b 4d 18          	mov    0x18(%r13),%rcx
140056aba:	4e 8d 34 01          	lea    (%rcx,%r8,1),%r14
140056abe:	4d 3b 75 10          	cmp    0x10(%r13),%r14
140056ac2:	0f 87 21 07 00 00    	ja     0x1400571e9
140056ac8:	4d 85 c0             	test   %r8,%r8
140056acb:	74 0d                	je     0x140056ada
140056acd:	48 8d 94 24 18 02 00 	lea    0x218(%rsp),%rdx
140056ad4:	00
140056ad5:	e8 96 70 04 00       	call   0x14009db70
140056ada:	4d 89 75 18          	mov    %r14,0x18(%r13)
140056ade:	41 01 74 24 20       	add    %esi,0x20(%r12)
140056ae3:	4c 0f af fd          	imul   %rbp,%r15
140056ae7:	48 89 fe             	mov    %rdi,%rsi
140056aea:	4c 01 bf f0 02 00 00 	add    %r15,0x2f0(%rdi)
140056af1:	4c 8b 6c 24 40       	mov    0x40(%rsp),%r13
140056af6:	48 89 df             	mov    %rbx,%rdi
140056af9:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140056afe:	4c 8b bc 24 00 02 00 	mov    0x200(%rsp),%r15
140056b05:	00
140056b06:	49 83 7f 10 00       	cmpq   $0x0,0x10(%r15)
140056b0b:	0f 85 eb 08 00 00    	jne    0x1400573fc
140056b11:	44 8b a4 24 b8 02 00 	mov    0x2b8(%rsp),%r12d
140056b18:	00
140056b19:	48 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaaa,%rax
140056b20:	aa aa aa
140056b23:	48 89 84 24 1f 02 00 	mov    %rax,0x21f(%rsp)
140056b2a:	00
140056b2b:	48 89 84 24 1a 02 00 	mov    %rax,0x21a(%rsp)
140056b32:	00
140056b33:	66 c7 84 24 18 02 00 	movw   $0x268,0x218(%rsp)
140056b3a:	00 68 02
140056b3d:	49 8b 0f             	mov    (%r15),%rcx
140056b40:	48 8b 41 18          	mov    0x18(%rcx),%rax
140056b44:	48 8d 50 02          	lea    0x2(%rax),%rdx
140056b48:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
140056b4c:	0f 87 42 08 00 00    	ja     0x140057394
140056b52:	44 0f b7 84 24 18 02 	movzwl 0x218(%rsp),%r8d
140056b59:	00 00
140056b5b:	66 44 89 00          	mov    %r8w,(%rax)
140056b5f:	48 89 51 18          	mov    %rdx,0x18(%rcx)
140056b63:	0f b6 ac 24 c8 02 00 	movzbl 0x2c8(%rsp),%ebp
140056b6a:	00
140056b6b:	41 83 47 20 02       	addl   $0x2,0x20(%r15)
140056b70:	48 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaaa,%rax
140056b77:	aa aa aa
140056b7a:	49 89 45 30          	mov    %rax,0x30(%r13)
140056b7e:	41 0f 11 75 20       	movups %xmm6,0x20(%r13)
140056b83:	41 0f 11 75 10       	movups %xmm6,0x10(%r13)
140056b88:	41 0f 11 75 00       	movups %xmm6,0x0(%r13)
140056b8d:	0f 28 84 24 00 02 00 	movaps 0x200(%rsp),%xmm0
140056b94:	00
140056b95:	0f 11 84 24 f0 01 00 	movups %xmm0,0x1f0(%rsp)
140056b9c:	00
140056b9d:	0f 57 c0             	xorps  %xmm0,%xmm0
140056ba0:	0f 29 84 24 00 02 00 	movaps %xmm0,0x200(%rsp)
140056ba7:	00
140056ba8:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140056bad:	4c 8d 84 24 f0 01 00 	lea    0x1f0(%rsp),%r8
140056bb4:	00
140056bb5:	4c 89 e9             	mov    %r13,%rcx
140056bb8:	48 89 fa             	mov    %rdi,%rdx
140056bbb:	48 89 f7             	mov    %rsi,%rdi
140056bbe:	49 89 f1             	mov    %rsi,%r9
140056bc1:	e8 3a e9 ff ff       	call   0x140055500
140056bc6:	4d 8b 4d 18          	mov    0x18(%r13),%r9
140056bca:	45 85 e4             	test   %r12d,%r12d
140056bcd:	4c 89 4c 24 38       	mov    %r9,0x38(%rsp)
140056bd2:	0f 84 90 00 00 00    	je     0x140056c68
140056bd8:	49 83 79 10 00       	cmpq   $0x0,0x10(%r9)
140056bdd:	0f 85 43 09 00 00    	jne    0x140057526
140056be3:	48 8d 84 24 19 02 00 	lea    0x219(%rsp),%rax
140056bea:	00
140056beb:	48 b9 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaaa,%rcx
140056bf2:	aa aa aa
140056bf5:	48 89 8c 24 1f 02 00 	mov    %rcx,0x21f(%rsp)
140056bfc:	00
140056bfd:	48 89 8c 24 19 02 00 	mov    %rcx,0x219(%rsp)
140056c04:	00
140056c05:	c6 84 24 18 02 00 00 	movb   $0x48,0x218(%rsp)
140056c0c:	48
140056c0d:	49 63 d4             	movslq %r12d,%rdx
140056c10:	48 8d 8c 24 18 02 00 	lea    0x218(%rsp),%rcx
140056c17:	00
140056c18:	41 81 fc 80 00 00 00 	cmp    $0x80,%r12d
140056c1f:	0f 83 3c 09 00 00    	jae    0x140057561
140056c25:	48 89 ce             	mov    %rcx,%rsi
140056c28:	88 10                	mov    %dl,(%rax)
140056c2a:	48 29 ce             	sub    %rcx,%rsi
140056c2d:	48 83 c6 02          	add    $0x2,%rsi
140056c31:	4d 8b 39             	mov    (%r9),%r15
140056c34:	41 89 f0             	mov    %esi,%r8d
140056c37:	49 8b 4f 18          	mov    0x18(%r15),%rcx
140056c3b:	4e 8d 34 01          	lea    (%rcx,%r8,1),%r14
140056c3f:	4d 3b 77 10          	cmp    0x10(%r15),%r14
140056c43:	0f 87 1c 07 00 00    	ja     0x140057365
140056c49:	4d 85 c0             	test   %r8,%r8
140056c4c:	74 12                	je     0x140056c60
140056c4e:	48 8d 94 24 18 02 00 	lea    0x218(%rsp),%rdx
140056c55:	00
140056c56:	e8 15 6f 04 00       	call   0x14009db70
140056c5b:	4c 8b 4c 24 38       	mov    0x38(%rsp),%r9
140056c60:	4d 89 77 18          	mov    %r14,0x18(%r15)
140056c64:	41 01 71 20          	add    %esi,0x20(%r9)
140056c68:	48 8b b4 24 b0 02 00 	mov    0x2b0(%rsp),%rsi
140056c6f:	00
140056c70:	40 84 ed             	test   %bpl,%bpl
140056c73:	0f 84 e6 00 00 00    	je     0x140056d5f
140056c79:	80 3b 00             	cmpb   $0x0,(%rbx)
140056c7c:	0f 84 dd 00 00 00    	je     0x140056d5f
140056c82:	4c 8d bc 24 18 02 00 	lea    0x218(%rsp),%r15
140056c89:	00
140056c8a:	4c 89 f9             	mov    %r15,%rcx
140056c8d:	e8 7e df ff ff       	call   0x140054c10
140056c92:	4c 8b 44 24 38       	mov    0x38(%rsp),%r8
140056c97:	48 8b 8c 24 18 02 00 	mov    0x218(%rsp),%rcx
140056c9e:	00
140056c9f:	48 89 c8             	mov    %rcx,%rax
140056ca2:	48 2b 87 20 03 00 00 	sub    0x320(%rdi),%rax
140056ca9:	48 89 8f 20 03 00 00 	mov    %rcx,0x320(%rdi)
140056cb0:	48 99                	cqto
140056cb2:	48 f7 7b 08          	idivq  0x8(%rbx)
140056cb6:	48 89 c3             	mov    %rax,%rbx
140056cb9:	49 83 78 10 00       	cmpq   $0x0,0x10(%r8)
140056cbe:	0f 85 84 02 00 00    	jne    0x140056f48
140056cc4:	48 8d 84 24 19 02 00 	lea    0x219(%rsp),%rax
140056ccb:	00
140056ccc:	48 b9 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaaa,%rcx
140056cd3:	aa aa aa
140056cd6:	48 89 8c 24 1f 02 00 	mov    %rcx,0x21f(%rsp)
140056cdd:	00
140056cde:	48 89 8c 24 19 02 00 	mov    %rcx,0x219(%rsp)
140056ce5:	00
140056ce6:	c6 84 24 18 02 00 00 	movb   $0x60,0x218(%rsp)
140056ced:	60
140056cee:	48 89 f5             	mov    %rsi,%rbp
140056cf1:	48 81 fb 80 00 00 00 	cmp    $0x80,%rbx
140056cf8:	0f 82 bc 00 00 00    	jb     0x140056dba
140056cfe:	48 89 d9             	mov    %rbx,%rcx
140056d01:	89 ca                	mov    %ecx,%edx
140056d03:	80 ca 80             	or     $0x80,%dl
140056d06:	88 10                	mov    %dl,(%rax)
140056d08:	48 c1 eb 07          	shr    $0x7,%rbx
140056d0c:	48 ff c0             	inc    %rax
140056d0f:	48 81 f9 ff 3f 00 00 	cmp    $0x3fff,%rcx
140056d16:	77 e6                	ja     0x140056cfe
140056d18:	48 8d 70 ff          	lea    -0x1(%rax),%rsi
140056d1c:	88 18                	mov    %bl,(%rax)
140056d1e:	4c 29 fe             	sub    %r15,%rsi
140056d21:	48 83 c6 02          	add    $0x2,%rsi
140056d25:	49 8b 18             	mov    (%r8),%rbx
140056d28:	41 89 f0             	mov    %esi,%r8d
140056d2b:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
140056d2f:	4e 8d 34 01          	lea    (%rcx,%r8,1),%r14
140056d33:	4c 3b 73 10          	cmp    0x10(%rbx),%r14
140056d37:	0f 87 42 06 00 00    	ja     0x14005737f
140056d3d:	4d 85 c0             	test   %r8,%r8
140056d40:	74 0d                	je     0x140056d4f
140056d42:	48 8d 94 24 18 02 00 	lea    0x218(%rsp),%rdx
140056d49:	00
140056d4a:	e8 21 6e 04 00       	call   0x14009db70
140056d4f:	4c 89 73 18          	mov    %r14,0x18(%rbx)
140056d53:	4c 8b 4c 24 38       	mov    0x38(%rsp),%r9
140056d58:	41 01 71 20          	add    %esi,0x20(%r9)
140056d5c:	48 89 ee             	mov    %rbp,%rsi
140056d5f:	48 85 f6             	test   %rsi,%rsi
140056d62:	74 0c                	je     0x140056d70
140056d64:	41 83 fc 02          	cmp    $0x2,%r12d
140056d68:	74 06                	je     0x140056d70
140056d6a:	41 83 fc 04          	cmp    $0x4,%r12d
140056d6e:	75 52                	jne    0x140056dc2
140056d70:	48 8b bc 24 00 02 00 	mov    0x200(%rsp),%rdi
140056d77:	00
140056d78:	48 85 ff             	test   %rdi,%rdi
140056d7b:	0f 85 b7 07 00 00    	jne    0x140057538
140056d81:	48 8b 8c 24 28 02 00 	mov    0x228(%rsp),%rcx
140056d88:	00
140056d89:	48 31 e1             	xor    %rsp,%rcx
140056d8c:	48 3b 0d ad a2 0a 00 	cmp    0xaa2ad(%rip),%rcx        # 0x140101040
140056d93:	74 06                	je     0x140056d9b
140056d95:	e8 36 85 01 00       	call   0x14006f2d0
140056d9a:	cc                   	int3
140056d9b:	4c 89 e8             	mov    %r13,%rax
140056d9e:	0f 28 b4 24 30 02 00 	movaps 0x230(%rsp),%xmm6
140056da5:	00
140056da6:	48 81 c4 48 02 00 00 	add    $0x248,%rsp
140056dad:	5b                   	pop    %rbx
140056dae:	5d                   	pop    %rbp
140056daf:	5f                   	pop    %rdi
140056db0:	5e                   	pop    %rsi
140056db1:	41 5c                	pop    %r12
140056db3:	41 5d                	pop    %r13
140056db5:	41 5e                	pop    %r14
140056db7:	41 5f                	pop    %r15
140056db9:	c3                   	ret
140056dba:	4c 89 fe             	mov    %r15,%rsi
140056dbd:	e9 5a ff ff ff       	jmp    0x140056d1c
140056dc2:	48 8b 1e             	mov    (%rsi),%rbx
140056dc5:	b8 01 00 00 00       	mov    $0x1,%eax
140056dca:	45 31 f6             	xor    %r14d,%r14d
140056dcd:	0f 57 f6             	xorps  %xmm6,%xmm6
140056dd0:	e9 03 01 00 00       	jmp    0x140056ed8
140056dd5:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140056ddc:	00 00 00 00
140056de0:	48 8b 46 08          	mov    0x8(%rsi),%rax
140056de4:	48 85 c0             	test   %rax,%rax
140056de7:	75 16                	jne    0x140056dff
140056de9:	e9 6c 01 00 00       	jmp    0x140056f5a
140056dee:	66 90                	xchg   %ax,%ax
140056df0:	48 8b 06             	mov    (%rsi),%rax
140056df3:	48 89 f5             	mov    %rsi,%rbp
140056df6:	48 85 c0             	test   %rax,%rax
140056df9:	0f 84 5f 01 00 00    	je     0x140056f5e
140056dff:	48 89 c6             	mov    %rax,%rsi
140056e02:	48 8b 40 20          	mov    0x20(%rax),%rax
140056e06:	48 39 c3             	cmp    %rax,%rbx
140056e09:	72 e5                	jb     0x140056df0
140056e0b:	77 d3                	ja     0x140056de0
140056e0d:	4c 8b 6e 28          	mov    0x28(%rsi),%r13
140056e11:	4c 8d bc 24 19 02 00 	lea    0x219(%rsp),%r15
140056e18:	00
140056e19:	48 8d ac 24 18 02 00 	lea    0x218(%rsp),%rbp
140056e20:	00
140056e21:	49 83 79 10 00       	cmpq   $0x0,0x10(%r9)
140056e26:	0f 85 11 06 00 00    	jne    0x14005743d
140056e2c:	48 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaaa,%rax
140056e33:	aa aa aa
140056e36:	49 89 47 06          	mov    %rax,0x6(%r15)
140056e3a:	49 89 07             	mov    %rax,(%r15)
140056e3d:	c6 84 24 18 02 00 00 	movb   $0x18,0x218(%rsp)
140056e44:	18
140056e45:	49 81 fd 80 00 00 00 	cmp    $0x80,%r13
140056e4c:	0f 82 15 06 00 00    	jb     0x140057467
140056e52:	4c 89 f8             	mov    %r15,%rax
140056e55:	4c 89 e9             	mov    %r13,%rcx
140056e58:	89 ca                	mov    %ecx,%edx
140056e5a:	80 ca 80             	or     $0x80,%dl
140056e5d:	88 10                	mov    %dl,(%rax)
140056e5f:	49 c1 ed 07          	shr    $0x7,%r13
140056e63:	48 ff c0             	inc    %rax
140056e66:	48 81 f9 ff 3f 00 00 	cmp    $0x3fff,%rcx
140056e6d:	77 e6                	ja     0x140056e55
140056e6f:	48 8d 70 ff          	lea    -0x1(%rax),%rsi
140056e73:	44 88 28             	mov    %r13b,(%rax)
140056e76:	48 29 ee             	sub    %rbp,%rsi
140056e79:	48 83 c6 02          	add    $0x2,%rsi
140056e7d:	4d 8b 21             	mov    (%r9),%r12
140056e80:	41 89 f0             	mov    %esi,%r8d
140056e83:	49 8b 4c 24 18       	mov    0x18(%r12),%rcx
140056e88:	4e 8d 3c 01          	lea    (%rcx,%r8,1),%r15
140056e8c:	4d 3b 7c 24 10       	cmp    0x10(%r12),%r15
140056e91:	0f 87 67 03 00 00    	ja     0x1400571fe
140056e97:	4d 85 c0             	test   %r8,%r8
140056e9a:	4c 8b 6c 24 40       	mov    0x40(%rsp),%r13
140056e9f:	74 0d                	je     0x140056eae
140056ea1:	48 89 ea             	mov    %rbp,%rdx
140056ea4:	e8 c7 6c 04 00       	call   0x14009db70
140056ea9:	4c 8b 4c 24 38       	mov    0x38(%rsp),%r9
140056eae:	4d 89 7c 24 18       	mov    %r15,0x18(%r12)
140056eb3:	41 01 71 20          	add    %esi,0x20(%r9)
140056eb7:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140056ebc:	48 01 c3             	add    %rax,%rbx
140056ebf:	48 ff c3             	inc    %rbx
140056ec2:	49 8d 46 01          	lea    0x1(%r14),%rax
140056ec6:	48 83 f8 05          	cmp    $0x5,%rax
140056eca:	48 8b b4 24 b0 02 00 	mov    0x2b0(%rsp),%rsi
140056ed1:	00
140056ed2:	0f 84 98 fe ff ff    	je     0x140056d70
140056ed8:	42 0f b6 74 36 30    	movzbl 0x30(%rsi,%r14,1),%esi
140056ede:	48 85 f6             	test   %rsi,%rsi
140056ee1:	0f 84 89 fe ff ff    	je     0x140056d70
140056ee7:	49 89 c6             	mov    %rax,%r14
140056eea:	49 8b 4d 20          	mov    0x20(%r13),%rcx
140056eee:	4c 8d a9 b0 00 00 00 	lea    0xb0(%rcx),%r13
140056ef5:	4c 8b a1 b0 00 00 00 	mov    0xb0(%rcx),%r12
140056efc:	49 83 fc 01          	cmp    $0x1,%r12
140056f00:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
140056f05:	75 24                	jne    0x140056f2b
140056f07:	49 83 c5 08          	add    $0x8,%r13
140056f0b:	4c 89 ee             	mov    %r13,%rsi
140056f0e:	4c 8b 26             	mov    (%rsi),%r12
140056f11:	49 8b 44 24 10       	mov    0x10(%r12),%rax
140056f16:	4d 8b 6c 24 18       	mov    0x18(%r12),%r13
140056f1b:	4d 8d 7c 24 10       	lea    0x10(%r12),%r15
140056f20:	4c 89 fd             	mov    %r15,%rbp
140056f23:	4c 89 fe             	mov    %r15,%rsi
140056f26:	e9 cb fe ff ff       	jmp    0x140056df6
140056f2b:	48 8d 91 c0 00 00 00 	lea    0xc0(%rcx),%rdx
140056f32:	4c 8b 91 c0 00 00 00 	mov    0xc0(%rcx),%r10
140056f39:	49 83 fa 01          	cmp    $0x1,%r10
140056f3d:	0f 85 7d 03 00 00    	jne    0x1400572c0
140056f43:	49 89 d5             	mov    %rdx,%r13
140056f46:	eb bf                	jmp    0x140056f07
140056f48:	4c 89 c1             	mov    %r8,%rcx
140056f4b:	e8 00 cf ff ff       	call   0x140053e50
140056f50:	4c 8b 44 24 38       	mov    0x38(%rsp),%r8
140056f55:	e9 6a fd ff ff       	jmp    0x140056cc4
140056f5a:	48 8d 6e 08          	lea    0x8(%rsi),%rbp
140056f5e:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
140056f63:	49 ff c5             	inc    %r13
140056f66:	b9 30 00 00 00       	mov    $0x30,%ecx
140056f6b:	e8 24 6f 01 00       	call   0x14006de94
140056f70:	48 89 58 20          	mov    %rbx,0x20(%rax)
140056f74:	4c 89 68 28          	mov    %r13,0x28(%rax)
140056f78:	0f 11 30             	movups %xmm6,(%rax)
140056f7b:	48 89 70 10          	mov    %rsi,0x10(%rax)
140056f7f:	48 89 45 00          	mov    %rax,0x0(%rbp)
140056f83:	49 8b 4c 24 08       	mov    0x8(%r12),%rcx
140056f88:	48 8b 09             	mov    (%rcx),%rcx
140056f8b:	48 85 c9             	test   %rcx,%rcx
140056f8e:	0f 85 3f 02 00 00    	jne    0x1400571d3
140056f94:	4d 8b 07             	mov    (%r15),%r8
140056f97:	4c 39 c0             	cmp    %r8,%rax
140056f9a:	0f 94 40 18          	sete   0x18(%rax)
140056f9e:	4c 8d bc 24 19 02 00 	lea    0x219(%rsp),%r15
140056fa5:	00
140056fa6:	48 8d ac 24 18 02 00 	lea    0x218(%rsp),%rbp
140056fad:	00
140056fae:	0f 84 86 00 00 00    	je     0x14005703a
140056fb4:	41 b1 01             	mov    $0x1,%r9b
140056fb7:	48 8b 50 10          	mov    0x10(%rax),%rdx
140056fbb:	80 7a 18 00          	cmpb   $0x0,0x18(%rdx)
140056fbf:	75 79                	jne    0x14005703a
140056fc1:	48 8b 4a 10          	mov    0x10(%rdx),%rcx
140056fc5:	4c 8b 11             	mov    (%rcx),%r10
140056fc8:	4c 39 d2             	cmp    %r10,%rdx
140056fcb:	0f 84 82 02 00 00    	je     0x140057253
140056fd1:	4d 85 d2             	test   %r10,%r10
140056fd4:	74 20                	je     0x140056ff6
140056fd6:	41 80 7a 18 00       	cmpb   $0x0,0x18(%r10)
140056fdb:	75 19                	jne    0x140056ff6
140056fdd:	44 88 4a 18          	mov    %r9b,0x18(%rdx)
140056fe1:	4c 39 c1             	cmp    %r8,%rcx
140056fe4:	0f 94 41 18          	sete   0x18(%rcx)
140056fe8:	45 88 4a 18          	mov    %r9b,0x18(%r10)
140056fec:	48 89 c8             	mov    %rcx,%rax
140056fef:	4c 39 c1             	cmp    %r8,%rcx
140056ff2:	75 c3                	jne    0x140056fb7
140056ff4:	eb 44                	jmp    0x14005703a
140056ff6:	4c 8b 02             	mov    (%rdx),%r8
140056ff9:	4c 39 c0             	cmp    %r8,%rax
140056ffc:	0f 84 0f 03 00 00    	je     0x140057311
140057002:	49 89 d0             	mov    %rdx,%r8
140057005:	41 c6 40 18 01       	movb   $0x1,0x18(%r8)
14005700a:	c6 41 18 00          	movb   $0x0,0x18(%rcx)
14005700e:	48 8b 41 08          	mov    0x8(%rcx),%rax
140057012:	48 8b 10             	mov    (%rax),%rdx
140057015:	48 89 51 08          	mov    %rdx,0x8(%rcx)
140057019:	48 85 d2             	test   %rdx,%rdx
14005701c:	75 44                	jne    0x140057062