14017bd87:	49 8b d7             	mov    %r15,%rdx
14017bd8a:	e8 bd 0f 00 00       	call   0x14017cd4c
14017bd8f:	4d 8d 45 f0          	lea    -0x10(%r13),%r8
14017bd93:	48 2b fe             	sub    %rsi,%rdi
14017bd96:	49 8b c8             	mov    %r8,%rcx
14017bd99:	44 8a cb             	mov    %bl,%r9b
14017bd9c:	49 2b ce             	sub    %r14,%rcx
14017bd9f:	48 8b d7             	mov    %rdi,%rdx
14017bda2:	e8 a5 0f 00 00       	call   0x14017cd4c
14017bda7:	44 8a cb             	mov    %bl,%r9b
14017bdaa:	4c 8b c7             	mov    %rdi,%r8
14017bdad:	49 8b d7             	mov    %r15,%rdx
14017bdb0:	48 8b cd             	mov    %rbp,%rcx
14017bdb3:	e8 94 0f 00 00       	call   0x14017cd4c
14017bdb8:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
14017bdbd:	eb 0b                	jmp    0x14017bdca
14017bdbf:	4c 8b c7             	mov    %rdi,%r8
14017bdc2:	49 8b d7             	mov    %r15,%rdx
14017bdc5:	e8 82 0f 00 00       	call   0x14017cd4c
14017bdca:	49 8d 5f 10          	lea    0x10(%r15),%rbx
14017bdce:	4d 3b e7             	cmp    %r15,%r12
14017bdd1:	73 4e                	jae    0x14017be21
14017bdd3:	49 8d 7f f0          	lea    -0x10(%r15),%rdi
14017bdd7:	4d 8b c7             	mov    %r15,%r8
14017bdda:	48 8b d7             	mov    %rdi,%rdx
14017bddd:	e8 be 8e ff ff       	call   0x140174ca0
14017bde2:	84 c0                	test   %al,%al
14017bde4:	75 3b                	jne    0x14017be21
14017bde6:	4c 8b c7             	mov    %rdi,%r8
14017bde9:	49 8b d7             	mov    %r15,%rdx
14017bdec:	e8 af 8e ff ff       	call   0x140174ca0
14017bdf1:	84 c0                	test   %al,%al
14017bdf3:	75 2c                	jne    0x14017be21
14017bdf5:	4c 8b ff             	mov    %rdi,%r15
14017bdf8:	4c 3b e7             	cmp    %rdi,%r12
14017bdfb:	72 d6                	jb     0x14017bdd3
14017bdfd:	eb 22                	jmp    0x14017be21
14017bdff:	4d 8b c7             	mov    %r15,%r8
14017be02:	48 8b d3             	mov    %rbx,%rdx
14017be05:	e8 96 8e ff ff       	call   0x140174ca0
14017be0a:	84 c0                	test   %al,%al
14017be0c:	75 18                	jne    0x14017be26
14017be0e:	4c 8b c3             	mov    %rbx,%r8
14017be11:	49 8b d7             	mov    %r15,%rdx
14017be14:	e8 87 8e ff ff       	call   0x140174ca0
14017be19:	84 c0                	test   %al,%al
14017be1b:	75 09                	jne    0x14017be26
14017be1d:	48 83 c3 10          	add    $0x10,%rbx
14017be21:	49 3b dd             	cmp    %r13,%rbx
14017be24:	72 d9                	jb     0x14017bdff
14017be26:	48 8b fb             	mov    %rbx,%rdi
14017be29:	49 8b f7             	mov    %r15,%rsi
14017be2c:	eb 47                	jmp    0x14017be75
14017be2e:	4c 8b c7             	mov    %rdi,%r8
14017be31:	49 8b d7             	mov    %r15,%rdx
14017be34:	e8 67 8e ff ff       	call   0x140174ca0
14017be39:	84 c0                	test   %al,%al
14017be3b:	75 34                	jne    0x14017be71
14017be3d:	4d 8b c7             	mov    %r15,%r8
14017be40:	48 8b d7             	mov    %rdi,%rdx
14017be43:	e8 58 8e ff ff       	call   0x140174ca0
14017be48:	84 c0                	test   %al,%al
14017be4a:	75 2e                	jne    0x14017be7a
14017be4c:	48 3b df             	cmp    %rdi,%rbx
14017be4f:	74 1c                	je     0x14017be6d
14017be51:	48 8b 07             	mov    (%rdi),%rax
14017be54:	48 8b 0b             	mov    (%rbx),%rcx
14017be57:	48 89 03             	mov    %rax,(%rbx)
14017be5a:	48 8b 47 08          	mov    0x8(%rdi),%rax
14017be5e:	48 89 0f             	mov    %rcx,(%rdi)
14017be61:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14017be65:	48 89 43 08          	mov    %rax,0x8(%rbx)
14017be69:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
14017be6d:	48 83 c3 10          	add    $0x10,%rbx
14017be71:	48 83 c7 10          	add    $0x10,%rdi
14017be75:	49 3b fd             	cmp    %r13,%rdi
14017be78:	72 b4                	jb     0x14017be2e
14017be7a:	49 3b f4             	cmp    %r12,%rsi
14017be7d:	76 57                	jbe    0x14017bed6
14017be7f:	4c 8d 76 f0          	lea    -0x10(%rsi),%r14
14017be83:	4d 8b c7             	mov    %r15,%r8
14017be86:	49 8b d6             	mov    %r14,%rdx
14017be89:	e8 12 8e ff ff       	call   0x140174ca0
14017be8e:	84 c0                	test   %al,%al
14017be90:	75 34                	jne    0x14017bec6
14017be92:	4d 8b c6             	mov    %r14,%r8
14017be95:	49 8b d7             	mov    %r15,%rdx
14017be98:	e8 03 8e ff ff       	call   0x140174ca0
14017be9d:	84 c0                	test   %al,%al
14017be9f:	75 32                	jne    0x14017bed3
14017bea1:	49 83 ef 10          	sub    $0x10,%r15
14017bea5:	4d 3b fe             	cmp    %r14,%r15
14017bea8:	74 1c                	je     0x14017bec6
14017beaa:	49 8b 06             	mov    (%r14),%rax
14017bead:	49 8b 0f             	mov    (%r15),%rcx
14017beb0:	49 89 07             	mov    %rax,(%r15)
14017beb3:	49 8b 46 08          	mov    0x8(%r14),%rax
14017beb7:	49 89 0e             	mov    %rcx,(%r14)
14017beba:	49 8b 4f 08          	mov    0x8(%r15),%rcx
14017bebe:	49 89 47 08          	mov    %rax,0x8(%r15)
14017bec2:	49 89 4e 08          	mov    %rcx,0x8(%r14)
14017bec6:	48 83 ee 10          	sub    $0x10,%rsi
14017beca:	49 83 ee 10          	sub    $0x10,%r14
14017bece:	4c 3b e6             	cmp    %rsi,%r12
14017bed1:	72 b0                	jb     0x14017be83
14017bed3:	49 3b f4             	cmp    %r12,%rsi
14017bed6:	75 53                	jne    0x14017bf2b
14017bed8:	49 3b fd             	cmp    %r13,%rdi
14017bedb:	0f 84 be 00 00 00    	je     0x14017bf9f
14017bee1:	48 3b df             	cmp    %rdi,%rbx
14017bee4:	74 1c                	je     0x14017bf02
14017bee6:	48 8b 03             	mov    (%rbx),%rax
14017bee9:	49 8b 0f             	mov    (%r15),%rcx
14017beec:	49 89 07             	mov    %rax,(%r15)
14017beef:	48 8b 43 08          	mov    0x8(%rbx),%rax
14017bef3:	48 89 0b             	mov    %rcx,(%rbx)
14017bef6:	49 8b 4f 08          	mov    0x8(%r15),%rcx
14017befa:	49 89 47 08          	mov    %rax,0x8(%r15)
14017befe:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
14017bf02:	49 8b 0f             	mov    (%r15),%rcx
14017bf05:	48 83 c3 10          	add    $0x10,%rbx
14017bf09:	48 8b 07             	mov    (%rdi),%rax
14017bf0c:	49 89 07             	mov    %rax,(%r15)
14017bf0f:	48 8b 47 08          	mov    0x8(%rdi),%rax
14017bf13:	48 89 0f             	mov    %rcx,(%rdi)
14017bf16:	49 8b 4f 08          	mov    0x8(%r15),%rcx
14017bf1a:	49 89 47 08          	mov    %rax,0x8(%r15)
14017bf1e:	49 83 c7 10          	add    $0x10,%r15
14017bf22:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
14017bf26:	e9 46 ff ff ff       	jmp    0x14017be71
14017bf2b:	48 83 c6 f0          	add    $0xfffffffffffffff0,%rsi
14017bf2f:	49 3b fd             	cmp    %r13,%rdi
14017bf32:	75 4a                	jne    0x14017bf7e
14017bf34:	49 83 ef 10          	sub    $0x10,%r15
14017bf38:	49 8d 57 08          	lea    0x8(%r15),%rdx
14017bf3c:	49 3b f7             	cmp    %r15,%rsi
14017bf3f:	74 1a                	je     0x14017bf5b
14017bf41:	49 8b 07             	mov    (%r15),%rax
14017bf44:	48 8b 0e             	mov    (%rsi),%rcx
14017bf47:	48 89 06             	mov    %rax,(%rsi)
14017bf4a:	48 8b 02             	mov    (%rdx),%rax
14017bf4d:	49 89 0f             	mov    %rcx,(%r15)
14017bf50:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
14017bf54:	48 89 46 08          	mov    %rax,0x8(%rsi)
14017bf58:	48 89 0a             	mov    %rcx,(%rdx)
14017bf5b:	49 8b 0f             	mov    (%r15),%rcx
14017bf5e:	48 83 eb 10          	sub    $0x10,%rbx
14017bf62:	48 8b 03             	mov    (%rbx),%rax
14017bf65:	49 89 07             	mov    %rax,(%r15)
14017bf68:	48 8b 43 08          	mov    0x8(%rbx),%rax
14017bf6c:	48 89 0b             	mov    %rcx,(%rbx)
14017bf6f:	48 8b 0a             	mov    (%rdx),%rcx
14017bf72:	48 89 02             	mov    %rax,(%rdx)
14017bf75:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
14017bf79:	e9 f7 fe ff ff       	jmp    0x14017be75
14017bf7e:	48 8b 06             	mov    (%rsi),%rax
14017bf81:	48 8b 0f             	mov    (%rdi),%rcx
14017bf84:	48 89 07             	mov    %rax,(%rdi)
14017bf87:	48 8b 46 08          	mov    0x8(%rsi),%rax
14017bf8b:	48 89 0e             	mov    %rcx,(%rsi)
14017bf8e:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14017bf92:	48 89 47 08          	mov    %rax,0x8(%rdi)
14017bf96:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
14017bf9a:	e9 d2 fe ff ff       	jmp    0x14017be71
14017bf9f:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
14017bfa4:	48 8b c5             	mov    %rbp,%rax
14017bfa7:	48 89 5d 08          	mov    %rbx,0x8(%rbp)
14017bfab:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14017bfb0:	4c 89 7d 00          	mov    %r15,0x0(%rbp)
14017bfb4:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
14017bfb9:	48 83 c4 20          	add    $0x20,%rsp
14017bfbd:	41 5f                	pop    %r15
14017bfbf:	41 5e                	pop    %r14
14017bfc1:	41 5d                	pop    %r13
14017bfc3:	41 5c                	pop    %r12
14017bfc5:	5f                   	pop    %rdi
14017bfc6:	c3                   	ret
14017bfc7:	90                   	nop
14017bfc8:	48 8b c4             	mov    %rsp,%rax
14017bfcb:	48 89 58 10          	mov    %rbx,0x10(%rax)
14017bfcf:	48 89 68 18          	mov    %rbp,0x18(%rax)
14017bfd3:	48 89 70 20          	mov    %rsi,0x20(%rax)
14017bfd7:	48 89 48 08          	mov    %rcx,0x8(%rax)
14017bfdb:	57                   	push   %rdi
14017bfdc:	41 54                	push   %r12
14017bfde:	41 55                	push   %r13
14017bfe0:	41 56                	push   %r14
14017bfe2:	41 57                	push   %r15
14017bfe4:	48 83 ec 20          	sub    $0x20,%rsp
14017bfe8:	4d 8b f8             	mov    %r8,%r15
14017bfeb:	49 8d 78 f0          	lea    -0x10(%r8),%rdi
14017bfef:	4c 2b fa             	sub    %rdx,%r15
14017bff2:	48 8b f7             	mov    %rdi,%rsi
14017bff5:	49 c1 ff 05          	sar    $0x5,%r15
14017bff9:	48 2b f2             	sub    %rdx,%rsi
14017bffc:	49 c1 e7 04          	shl    $0x4,%r15
14017c000:	48 8b e9             	mov    %rcx,%rbp
14017c003:	4c 03 fa             	add    %rdx,%r15
14017c006:	48 c1 fe 04          	sar    $0x4,%rsi
14017c00a:	41 8a d9             	mov    %r9b,%bl
14017c00d:	4d 8b e8             	mov    %r8,%r13
14017c010:	4c 8b e2             	mov    %rdx,%r12
14017c013:	48 8b ca             	mov    %rdx,%rcx
14017c016:	48 83 fe 28          	cmp    $0x28,%rsi
14017c01a:	7e 67                	jle    0x14017c083
14017c01c:	48 ff c6             	inc    %rsi
14017c01f:	48 c1 fe 03          	sar    $0x3,%rsi
14017c023:	4c 8b f6             	mov    %rsi,%r14
14017c026:	48 c1 e6 04          	shl    $0x4,%rsi
14017c02a:	49 c1 e6 05          	shl    $0x5,%r14
14017c02e:	48 8d 2c 16          	lea    (%rsi,%rdx,1),%rbp
14017c032:	4d 8d 04 16          	lea    (%r14,%rdx,1),%r8
14017c036:	48 8b d5             	mov    %rbp,%rdx
14017c039:	e8 ca 0d 00 00       	call   0x14017ce08
14017c03e:	49 8b cf             	mov    %r15,%rcx
14017c041:	4e 8d 04 3e          	lea    (%rsi,%r15,1),%r8
14017c045:	48 2b ce             	sub    %rsi,%rcx
14017c048:	44 8a cb             	mov    %bl,%r9b
14017c04b:	49 8b d7             	mov    %r15,%rdx
14017c04e:	e8 b5 0d 00 00       	call   0x14017ce08
14017c053:	4d 8d 45 f0          	lea    -0x10(%r13),%r8
14017c057:	48 2b fe             	sub    %rsi,%rdi
14017c05a:	49 8b c8             	mov    %r8,%rcx
14017c05d:	44 8a cb             	mov    %bl,%r9b
14017c060:	49 2b ce             	sub    %r14,%rcx
14017c063:	48 8b d7             	mov    %rdi,%rdx
14017c066:	e8 9d 0d 00 00       	call   0x14017ce08
14017c06b:	44 8a cb             	mov    %bl,%r9b
14017c06e:	4c 8b c7             	mov    %rdi,%r8
14017c071:	49 8b d7             	mov    %r15,%rdx
14017c074:	48 8b cd             	mov    %rbp,%rcx
14017c077:	e8 8c 0d 00 00       	call   0x14017ce08
14017c07c:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
14017c081:	eb 0b                	jmp    0x14017c08e
14017c083:	4c 8b c7             	mov    %rdi,%r8
14017c086:	49 8b d7             	mov    %r15,%rdx
14017c089:	e8 7a 0d 00 00       	call   0x14017ce08
14017c08e:	49 8d 5f 10          	lea    0x10(%r15),%rbx
14017c092:	4d 3b e7             	cmp    %r15,%r12
14017c095:	73 4e                	jae    0x14017c0e5
14017c097:	49 8d 7f f0          	lea    -0x10(%r15),%rdi
14017c09b:	4d 8b c7             	mov    %r15,%r8
14017c09e:	48 8b d7             	mov    %rdi,%rdx
14017c0a1:	e8 aa ab ff ff       	call   0x140176c50
14017c0a6:	84 c0                	test   %al,%al
14017c0a8:	75 3b                	jne    0x14017c0e5
14017c0aa:	4c 8b c7             	mov    %rdi,%r8
14017c0ad:	49 8b d7             	mov    %r15,%rdx
14017c0b0:	e8 9b ab ff ff       	call   0x140176c50
14017c0b5:	84 c0                	test   %al,%al
14017c0b7:	75 2c                	jne    0x14017c0e5
14017c0b9:	4c 8b ff             	mov    %rdi,%r15
14017c0bc:	4c 3b e7             	cmp    %rdi,%r12
14017c0bf:	72 d6                	jb     0x14017c097
14017c0c1:	eb 22                	jmp    0x14017c0e5
14017c0c3:	4d 8b c7             	mov    %r15,%r8
14017c0c6:	48 8b d3             	mov    %rbx,%rdx
14017c0c9:	e8 82 ab ff ff       	call   0x140176c50
14017c0ce:	84 c0                	test   %al,%al
14017c0d0:	75 18                	jne    0x14017c0ea
14017c0d2:	4c 8b c3             	mov    %rbx,%r8
14017c0d5:	49 8b d7             	mov    %r15,%rdx
14017c0d8:	e8 73 ab ff ff       	call   0x140176c50
14017c0dd:	84 c0                	test   %al,%al
14017c0df:	75 09                	jne    0x14017c0ea
14017c0e1:	48 83 c3 10          	add    $0x10,%rbx
14017c0e5:	49 3b dd             	cmp    %r13,%rbx
14017c0e8:	72 d9                	jb     0x14017c0c3
14017c0ea:	48 8b fb             	mov    %rbx,%rdi
14017c0ed:	49 8b f7             	mov    %r15,%rsi
14017c0f0:	eb 47                	jmp    0x14017c139
14017c0f2:	4c 8b c7             	mov    %rdi,%r8
14017c0f5:	49 8b d7             	mov    %r15,%rdx
14017c0f8:	e8 53 ab ff ff       	call   0x140176c50
14017c0fd:	84 c0                	test   %al,%al
14017c0ff:	75 34                	jne    0x14017c135
14017c101:	4d 8b c7             	mov    %r15,%r8
14017c104:	48 8b d7             	mov    %rdi,%rdx
14017c107:	e8 44 ab ff ff       	call   0x140176c50
14017c10c:	84 c0                	test   %al,%al
14017c10e:	75 2e                	jne    0x14017c13e
14017c110:	48 3b df             	cmp    %rdi,%rbx
14017c113:	74 1c                	je     0x14017c131
14017c115:	48 8b 07             	mov    (%rdi),%rax
14017c118:	48 8b 0b             	mov    (%rbx),%rcx
14017c11b:	48 89 03             	mov    %rax,(%rbx)
14017c11e:	48 8b 47 08          	mov    0x8(%rdi),%rax
14017c122:	48 89 0f             	mov    %rcx,(%rdi)
14017c125:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14017c129:	48 89 43 08          	mov    %rax,0x8(%rbx)
14017c12d:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
14017c131:	48 83 c3 10          	add    $0x10,%rbx
14017c135:	48 83 c7 10          	add    $0x10,%rdi
14017c139:	49 3b fd             	cmp    %r13,%rdi
14017c13c:	72 b4                	jb     0x14017c0f2
14017c13e:	49 3b f4             	cmp    %r12,%rsi
14017c141:	76 57                	jbe    0x14017c19a
14017c143:	4c 8d 76 f0          	lea    -0x10(%rsi),%r14
14017c147:	4d 8b c7             	mov    %r15,%r8
14017c14a:	49 8b d6             	mov    %r14,%rdx
14017c14d:	e8 fe aa ff ff       	call   0x140176c50
14017c152:	84 c0                	test   %al,%al
14017c154:	75 34                	jne    0x14017c18a
14017c156:	4d 8b c6             	mov    %r14,%r8
14017c159:	49 8b d7             	mov    %r15,%rdx
14017c15c:	e8 ef aa ff ff       	call   0x140176c50
14017c161:	84 c0                	test   %al,%al
14017c163:	75 32                	jne    0x14017c197
14017c165:	49 83 ef 10          	sub    $0x10,%r15
14017c169:	4d 3b fe             	cmp    %r14,%r15
14017c16c:	74 1c                	je     0x14017c18a
14017c16e:	49 8b 06             	mov    (%r14),%rax
14017c171:	49 8b 0f             	mov    (%r15),%rcx
14017c174:	49 89 07             	mov    %rax,(%r15)
14017c177:	49 8b 46 08          	mov    0x8(%r14),%rax
14017c17b:	49 89 0e             	mov    %rcx,(%r14)
14017c17e:	49 8b 4f 08          	mov    0x8(%r15),%rcx
14017c182:	49 89 47 08          	mov    %rax,0x8(%r15)
14017c186:	49 89 4e 08          	mov    %rcx,0x8(%r14)
14017c18a:	48 83 ee 10          	sub    $0x10,%rsi
14017c18e:	49 83 ee 10          	sub    $0x10,%r14
14017c192:	4c 3b e6             	cmp    %rsi,%r12
14017c195:	72 b0                	jb     0x14017c147
14017c197:	49 3b f4             	cmp    %r12,%rsi
14017c19a:	75 53                	jne    0x14017c1ef
14017c19c:	49 3b fd             	cmp    %r13,%rdi
14017c19f:	0f 84 be 00 00 00    	je     0x14017c263
14017c1a5:	48 3b df             	cmp    %rdi,%rbx
14017c1a8:	74 1c                	je     0x14017c1c6
14017c1aa:	48 8b 03             	mov    (%rbx),%rax
14017c1ad:	49 8b 0f             	mov    (%r15),%rcx
14017c1b0:	49 89 07             	mov    %rax,(%r15)
14017c1b3:	48 8b 43 08          	mov    0x8(%rbx),%rax
14017c1b7:	48 89 0b             	mov    %rcx,(%rbx)
14017c1ba:	49 8b 4f 08          	mov    0x8(%r15),%rcx
14017c1be:	49 89 47 08          	mov    %rax,0x8(%r15)
14017c1c2:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
14017c1c6:	49 8b 0f             	mov    (%r15),%rcx
14017c1c9:	48 83 c3 10          	add    $0x10,%rbx
14017c1cd:	48 8b 07             	mov    (%rdi),%rax
14017c1d0:	49 89 07             	mov    %rax,(%r15)
14017c1d3:	48 8b 47 08          	mov    0x8(%rdi),%rax
14017c1d7:	48 89 0f             	mov    %rcx,(%rdi)
14017c1da:	49 8b 4f 08          	mov    0x8(%r15),%rcx
14017c1de:	49 89 47 08          	mov    %rax,0x8(%r15)
14017c1e2:	49 83 c7 10          	add    $0x10,%r15
14017c1e6:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
14017c1ea:	e9 46 ff ff ff       	jmp    0x14017c135
14017c1ef:	48 83 c6 f0          	add    $0xfffffffffffffff0,%rsi
14017c1f3:	49 3b fd             	cmp    %r13,%rdi