140558d95:	49 8b c6             	mov    %r14,%rax
140558d98:	48 83 c4 30          	add    $0x30,%rsp
140558d9c:	41 5f                	pop    %r15
140558d9e:	41 5e                	pop    %r14
140558da0:	41 5d                	pop    %r13
140558da2:	41 5c                	pop    %r12
140558da4:	5f                   	pop    %rdi
140558da5:	5e                   	pop    %rsi
140558da6:	5b                   	pop    %rbx
140558da7:	c3                   	ret
140558da8:	e8 e3 43 c4 ff       	call   0x14019d190
140558dad:	cc                   	int3
140558dae:	e8 dd 47 c4 ff       	call   0x14019d590
140558db3:	cc                   	int3
140558db4:	e8 eb 13 8d 00       	call   0x140e2a1a4
140558db9:	cc                   	int3
140558dba:	cc                   	int3
140558dbb:	cc                   	int3
140558dbc:	cc                   	int3
140558dbd:	cc                   	int3
140558dbe:	cc                   	int3
140558dbf:	cc                   	int3
140558dc0:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140558dc5:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140558dca:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140558dcf:	53                   	push   %rbx
140558dd0:	56                   	push   %rsi
140558dd1:	57                   	push   %rdi
140558dd2:	41 54                	push   %r12
140558dd4:	41 55                	push   %r13
140558dd6:	41 56                	push   %r14
140558dd8:	41 57                	push   %r15
140558dda:	48 83 ec 50          	sub    $0x50,%rsp
140558dde:	4c 8b e2             	mov    %rdx,%r12
140558de1:	48 8b f1             	mov    %rcx,%rsi
140558de4:	4c 8b 19             	mov    (%rcx),%r11
140558de7:	4c 8b d2             	mov    %rdx,%r10
140558dea:	4d 2b d3             	sub    %r11,%r10
140558ded:	48 bb 39 8e e3 38 8e 	movabs $0xe38e38e38e38e39,%rbx
140558df4:	e3 38 0e
140558df7:	48 8b c3             	mov    %rbx,%rax
140558dfa:	49 f7 ea             	imul   %r10
140558dfd:	4c 8b f2             	mov    %rdx,%r14
140558e00:	49 c1 fe 02          	sar    $0x2,%r14
140558e04:	49 8b c6             	mov    %r14,%rax
140558e07:	48 c1 e8 3f          	shr    $0x3f,%rax
140558e0b:	4c 03 f0             	add    %rax,%r14
140558e0e:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140558e12:	49 2b cb             	sub    %r11,%rcx
140558e15:	48 8b c3             	mov    %rbx,%rax
140558e18:	48 f7 e9             	imul   %rcx
140558e1b:	48 c1 fa 02          	sar    $0x2,%rdx
140558e1f:	48 8b c2             	mov    %rdx,%rax
140558e22:	48 c1 e8 3f          	shr    $0x3f,%rax
140558e26:	48 03 d0             	add    %rax,%rdx
140558e29:	49 ba 8e e3 38 8e e3 	movabs $0x38e38e38e38e38e,%r10
140558e30:	38 8e 03
140558e33:	49 3b d2             	cmp    %r10,%rdx
140558e36:	0f 84 4a 01 00 00    	je     0x140558f86
140558e3c:	4c 8d 6a 01          	lea    0x1(%rdx),%r13
140558e40:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140558e44:	49 2b cb             	sub    %r11,%rcx
140558e47:	48 8b c3             	mov    %rbx,%rax
140558e4a:	48 f7 e9             	imul   %rcx
140558e4d:	48 c1 fa 02          	sar    $0x2,%rdx
140558e51:	48 8b c2             	mov    %rdx,%rax
140558e54:	48 c1 e8 3f          	shr    $0x3f,%rax
140558e58:	48 03 d0             	add    %rax,%rdx
140558e5b:	48 8b ca             	mov    %rdx,%rcx
140558e5e:	48 d1 e9             	shr    $1,%rcx
140558e61:	49 8b c2             	mov    %r10,%rax
140558e64:	48 2b c1             	sub    %rcx,%rax
140558e67:	48 3b d0             	cmp    %rax,%rdx
140558e6a:	0f 87 10 01 00 00    	ja     0x140558f80
140558e70:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140558e74:	49 8b fd             	mov    %r13,%rdi
140558e77:	49 3b c5             	cmp    %r13,%rax
140558e7a:	48 0f 43 f8          	cmovae %rax,%rdi
140558e7e:	49 3b fa             	cmp    %r10,%rdi
140558e81:	0f 87 f9 00 00 00    	ja     0x140558f80
140558e87:	48 8d 0c ff          	lea    (%rdi,%rdi,8),%rcx
140558e8b:	48 c1 e1 03          	shl    $0x3,%rcx
140558e8f:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140558e94:	48 85 c9             	test   %rcx,%rcx
140558e97:	75 09                	jne    0x140558ea2
140558e99:	33 db                	xor    %ebx,%ebx
140558e9b:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140558ea0:	eb 4d                	jmp    0x140558eef
140558ea2:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
140558ea9:	72 2c                	jb     0x140558ed7
140558eab:	48 8d 41 27          	lea    0x27(%rcx),%rax
140558eaf:	48 3b c1             	cmp    %rcx,%rax
140558eb2:	0f 86 c8 00 00 00    	jbe    0x140558f80
140558eb8:	48 8b c8             	mov    %rax,%rcx
140558ebb:	e8 48 22 8c 00       	call   0x140e1b108
140558ec0:	48 85 c0             	test   %rax,%rax
140558ec3:	0f 84 c3 00 00 00    	je     0x140558f8c
140558ec9:	48 8d 58 27          	lea    0x27(%rax),%rbx
140558ecd:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140558ed1:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140558ed5:	eb 08                	jmp    0x140558edf
140558ed7:	e8 2c 22 8c 00       	call   0x140e1b108
140558edc:	48 8b d8             	mov    %rax,%rbx
140558edf:	4c 8b 84 24 a0 00 00 	mov    0xa0(%rsp),%r8
140558ee6:	00
140558ee7:	4c 8b 8c 24 a8 00 00 	mov    0xa8(%rsp),%r9
140558eee:	00
140558eef:	48 89 9c 24 98 00 00 	mov    %rbx,0x98(%rsp)
140558ef6:	00
140558ef7:	4b 8d 0c f6          	lea    (%r14,%r14,8),%rcx
140558efb:	4c 8d 34 cb          	lea    (%rbx,%rcx,8),%r14
140558eff:	4d 8d 7e 48          	lea    0x48(%r14),%r15
140558f03:	4c 89 7c 24 40       	mov    %r15,0x40(%rsp)
140558f08:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
140558f0f:	00
140558f10:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140558f15:	49 8b d6             	mov    %r14,%rdx
140558f18:	48 8b ce             	mov    %rsi,%rcx
140558f1b:	e8 a0 22 00 00       	call   0x14055b1c0
140558f20:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140558f25:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140558f29:	48 8b 0e             	mov    (%rsi),%rcx
140558f2c:	4c 3b e2             	cmp    %rdx,%r12
140558f2f:	75 05                	jne    0x140558f36
140558f31:	4c 8b fb             	mov    %rbx,%r15
140558f34:	eb 1a                	jmp    0x140558f50
140558f36:	4c 8b ce             	mov    %rsi,%r9
140558f39:	4c 8b c3             	mov    %rbx,%r8
140558f3c:	49 8b d4             	mov    %r12,%rdx
140558f3f:	e8 7c 0a 00 00       	call   0x1405599c0
140558f44:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140558f49:	49 8b cc             	mov    %r12,%rcx
140558f4c:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140558f50:	4c 8b ce             	mov    %rsi,%r9
140558f53:	4d 8b c7             	mov    %r15,%r8
140558f56:	e8 65 0a 00 00       	call   0x1405599c0
140558f5b:	90                   	nop
140558f5c:	4c 8b cf             	mov    %rdi,%r9
140558f5f:	4d 8b c5             	mov    %r13,%r8
140558f62:	48 8b d3             	mov    %rbx,%rdx
140558f65:	48 8b ce             	mov    %rsi,%rcx
140558f68:	e8 f3 81 00 00       	call   0x140561160
140558f6d:	49 8b c6             	mov    %r14,%rax
140558f70:	48 83 c4 50          	add    $0x50,%rsp
140558f74:	41 5f                	pop    %r15
140558f76:	41 5e                	pop    %r14
140558f78:	41 5d                	pop    %r13
140558f7a:	41 5c                	pop    %r12
140558f7c:	5f                   	pop    %rdi
140558f7d:	5e                   	pop    %rsi
140558f7e:	5b                   	pop    %rbx
140558f7f:	c3                   	ret
140558f80:	e8 0b 42 c4 ff       	call   0x14019d190
140558f85:	cc                   	int3
140558f86:	e8 05 46 c4 ff       	call   0x14019d590
140558f8b:	cc                   	int3
140558f8c:	e8 13 12 8d 00       	call   0x140e2a1a4
140558f91:	cc                   	int3
140558f92:	cc                   	int3
140558f93:	cc                   	int3
140558f94:	cc                   	int3
140558f95:	cc                   	int3
140558f96:	cc                   	int3
140558f97:	cc                   	int3
140558f98:	cc                   	int3
140558f99:	cc                   	int3
140558f9a:	cc                   	int3
140558f9b:	cc                   	int3
140558f9c:	cc                   	int3
140558f9d:	cc                   	int3
140558f9e:	cc                   	int3
140558f9f:	cc                   	int3
140558fa0:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140558fa5:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140558faa:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140558faf:	53                   	push   %rbx
140558fb0:	56                   	push   %rsi
140558fb1:	57                   	push   %rdi
140558fb2:	41 54                	push   %r12
140558fb4:	41 55                	push   %r13
140558fb6:	41 56                	push   %r14
140558fb8:	41 57                	push   %r15
140558fba:	48 83 ec 50          	sub    $0x50,%rsp
140558fbe:	4c 8b e2             	mov    %rdx,%r12
140558fc1:	48 8b f1             	mov    %rcx,%rsi
140558fc4:	4c 8b 19             	mov    (%rcx),%r11
140558fc7:	4c 8b d2             	mov    %rdx,%r10
140558fca:	4d 2b d3             	sub    %r11,%r10
140558fcd:	48 bb 39 8e e3 38 8e 	movabs $0xe38e38e38e38e39,%rbx
140558fd4:	e3 38 0e
140558fd7:	48 8b c3             	mov    %rbx,%rax
140558fda:	49 f7 ea             	imul   %r10
140558fdd:	4c 8b f2             	mov    %rdx,%r14
140558fe0:	49 c1 fe 02          	sar    $0x2,%r14
140558fe4:	49 8b c6             	mov    %r14,%rax
140558fe7:	48 c1 e8 3f          	shr    $0x3f,%rax
140558feb:	4c 03 f0             	add    %rax,%r14
140558fee:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140558ff2:	49 2b cb             	sub    %r11,%rcx
140558ff5:	48 8b c3             	mov    %rbx,%rax
140558ff8:	48 f7 e9             	imul   %rcx
140558ffb:	48 c1 fa 02          	sar    $0x2,%rdx
140558fff:	48 8b c2             	mov    %rdx,%rax
140559002:	48 c1 e8 3f          	shr    $0x3f,%rax
140559006:	48 03 d0             	add    %rax,%rdx
140559009:	49 ba 8e e3 38 8e e3 	movabs $0x38e38e38e38e38e,%r10
140559010:	38 8e 03
140559013:	49 3b d2             	cmp    %r10,%rdx
140559016:	0f 84 4a 01 00 00    	je     0x140559166
14055901c:	4c 8d 6a 01          	lea    0x1(%rdx),%r13
140559020:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140559024:	49 2b cb             	sub    %r11,%rcx
140559027:	48 8b c3             	mov    %rbx,%rax
14055902a:	48 f7 e9             	imul   %rcx
14055902d:	48 c1 fa 02          	sar    $0x2,%rdx
140559031:	48 8b c2             	mov    %rdx,%rax
140559034:	48 c1 e8 3f          	shr    $0x3f,%rax
140559038:	48 03 d0             	add    %rax,%rdx
14055903b:	48 8b ca             	mov    %rdx,%rcx
14055903e:	48 d1 e9             	shr    $1,%rcx
140559041:	49 8b c2             	mov    %r10,%rax
140559044:	48 2b c1             	sub    %rcx,%rax
140559047:	48 3b d0             	cmp    %rax,%rdx
14055904a:	0f 87 10 01 00 00    	ja     0x140559160
140559050:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140559054:	49 8b fd             	mov    %r13,%rdi
140559057:	49 3b c5             	cmp    %r13,%rax
14055905a:	48 0f 43 f8          	cmovae %rax,%rdi
14055905e:	49 3b fa             	cmp    %r10,%rdi
140559061:	0f 87 f9 00 00 00    	ja     0x140559160
140559067:	48 8d 0c ff          	lea    (%rdi,%rdi,8),%rcx
14055906b:	48 c1 e1 03          	shl    $0x3,%rcx
14055906f:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140559074:	48 85 c9             	test   %rcx,%rcx
140559077:	75 09                	jne    0x140559082
140559079:	33 db                	xor    %ebx,%ebx
14055907b:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140559080:	eb 4d                	jmp    0x1405590cf
140559082:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
140559089:	72 2c                	jb     0x1405590b7
14055908b:	48 8d 41 27          	lea    0x27(%rcx),%rax
14055908f:	48 3b c1             	cmp    %rcx,%rax
140559092:	0f 86 c8 00 00 00    	jbe    0x140559160
140559098:	48 8b c8             	mov    %rax,%rcx
14055909b:	e8 68 20 8c 00       	call   0x140e1b108
1405590a0:	48 85 c0             	test   %rax,%rax
1405590a3:	0f 84 c3 00 00 00    	je     0x14055916c
1405590a9:	48 8d 58 27          	lea    0x27(%rax),%rbx
1405590ad:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
1405590b1:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
1405590b5:	eb 08                	jmp    0x1405590bf
1405590b7:	e8 4c 20 8c 00       	call   0x140e1b108
1405590bc:	48 8b d8             	mov    %rax,%rbx
1405590bf:	4c 8b 84 24 a0 00 00 	mov    0xa0(%rsp),%r8
1405590c6:	00
1405590c7:	4c 8b 8c 24 a8 00 00 	mov    0xa8(%rsp),%r9
1405590ce:	00
1405590cf:	48 89 9c 24 98 00 00 	mov    %rbx,0x98(%rsp)
1405590d6:	00
1405590d7:	4b 8d 0c f6          	lea    (%r14,%r14,8),%rcx
1405590db:	4c 8d 34 cb          	lea    (%rbx,%rcx,8),%r14
1405590df:	4d 8d 7e 48          	lea    0x48(%r14),%r15
1405590e3:	4c 89 7c 24 40       	mov    %r15,0x40(%rsp)
1405590e8:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
1405590ef:	00
1405590f0:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1405590f5:	49 8b d6             	mov    %r14,%rdx
1405590f8:	48 8b ce             	mov    %rsi,%rcx
1405590fb:	e8 60 21 00 00       	call   0x14055b260
140559100:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140559105:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140559109:	48 8b 0e             	mov    (%rsi),%rcx
14055910c:	4c 3b e2             	cmp    %rdx,%r12
14055910f:	75 05                	jne    0x140559116
140559111:	4c 8b fb             	mov    %rbx,%r15
140559114:	eb 1a                	jmp    0x140559130
140559116:	4c 8b ce             	mov    %rsi,%r9
140559119:	4c 8b c3             	mov    %rbx,%r8
14055911c:	49 8b d4             	mov    %r12,%rdx
14055911f:	e8 9c 08 00 00       	call   0x1405599c0
140559124:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140559129:	49 8b cc             	mov    %r12,%rcx
14055912c:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140559130:	4c 8b ce             	mov    %rsi,%r9
140559133:	4d 8b c7             	mov    %r15,%r8
140559136:	e8 85 08 00 00       	call   0x1405599c0
14055913b:	90                   	nop
14055913c:	4c 8b cf             	mov    %rdi,%r9
14055913f:	4d 8b c5             	mov    %r13,%r8
140559142:	48 8b d3             	mov    %rbx,%rdx
140559145:	48 8b ce             	mov    %rsi,%rcx
140559148:	e8 13 80 00 00       	call   0x140561160
14055914d:	49 8b c6             	mov    %r14,%rax
140559150:	48 83 c4 50          	add    $0x50,%rsp
140559154:	41 5f                	pop    %r15
140559156:	41 5e                	pop    %r14
140559158:	41 5d                	pop    %r13
14055915a:	41 5c                	pop    %r12
14055915c:	5f                   	pop    %rdi
14055915d:	5e                   	pop    %rsi
14055915e:	5b                   	pop    %rbx
14055915f:	c3                   	ret
140559160:	e8 2b 40 c4 ff       	call   0x14019d190
140559165:	cc                   	int3
140559166:	e8 25 44 c4 ff       	call   0x14019d590
14055916b:	cc                   	int3
14055916c:	e8 33 10 8d 00       	call   0x140e2a1a4
140559171:	cc                   	int3
140559172:	cc                   	int3
140559173:	cc                   	int3
140559174:	cc                   	int3
140559175:	cc                   	int3
140559176:	cc                   	int3
140559177:	cc                   	int3
140559178:	cc                   	int3
140559179:	cc                   	int3
14055917a:	cc                   	int3
14055917b:	cc                   	int3
14055917c:	cc                   	int3
14055917d:	cc                   	int3
14055917e:	cc                   	int3
14055917f:	cc                   	int3
140559180:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140559185:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14055918a:	53                   	push   %rbx
14055918b:	56                   	push   %rsi
14055918c:	57                   	push   %rdi
14055918d:	41 54                	push   %r12
14055918f:	41 55                	push   %r13
140559191:	41 56                	push   %r14
140559193:	41 57                	push   %r15
140559195:	48 83 ec 30          	sub    $0x30,%rsp
140559199:	4d 8b e9             	mov    %r9,%r13
14055919c:	4c 8b fa             	mov    %rdx,%r15
14055919f:	48 8b f1             	mov    %rcx,%rsi
1405591a2:	4c 8b 11             	mov    (%rcx),%r10
1405591a5:	4c 8b f2             	mov    %rdx,%r14
1405591a8:	4d 2b f2             	sub    %r10,%r14
1405591ab:	48 8b 41 08          	mov    0x8(%rcx),%rax
1405591af:	49 2b c2             	sub    %r10,%rax
1405591b2:	48 c1 f8 04          	sar    $0x4,%rax
1405591b6:	49 b8 ff ff ff ff ff 	movabs $0xfffffffffffffff,%r8
1405591bd:	ff ff 0f
1405591c0:	49 3b c0             	cmp    %r8,%rax
1405591c3:	0f 84 11 01 00 00    	je     0x1405592da
1405591c9:	4c 8d 60 01          	lea    0x1(%rax),%r12
1405591cd:	48 8b 49 10          	mov    0x10(%rcx),%rcx
1405591d1:	49 2b ca             	sub    %r10,%rcx
1405591d4:	48 c1 f9 04          	sar    $0x4,%rcx
1405591d8:	48 8b d1             	mov    %rcx,%rdx