14007ee5f:	4c 8b 44 31 48       	mov    0x48(%rcx,%rsi,1),%r8
14007ee64:	44 0f b6 4c 31 58    	movzbl 0x58(%rcx,%rsi,1),%r9d
14007ee6a:	49 8b 40 40          	mov    0x40(%r8),%rax
14007ee6e:	48 83 38 00          	cmpq   $0x0,(%rax)
14007ee72:	74 24                	je     0x14007ee98
14007ee74:	49 8b 48 58          	mov    0x58(%r8),%rcx
14007ee78:	8b 01                	mov    (%rcx),%eax
14007ee7a:	85 c0                	test   %eax,%eax
14007ee7c:	7e 1a                	jle    0x14007ee98
14007ee7e:	ff c8                	dec    %eax
14007ee80:	89 01                	mov    %eax,(%rcx)
14007ee82:	49 8b 48 40          	mov    0x40(%r8),%rcx
14007ee86:	48 8b 11             	mov    (%rcx),%rdx
14007ee89:	48 8d 42 01          	lea    0x1(%rdx),%rax
14007ee8d:	48 89 01             	mov    %rax,(%rcx)
14007ee90:	44 88 0a             	mov    %r9b,(%rdx)
14007ee93:	41 8b c1             	mov    %r9d,%eax
14007ee96:	eb 0c                	jmp    0x14007eea4
14007ee98:	49 8b 00             	mov    (%r8),%rax
14007ee9b:	41 8b d1             	mov    %r9d,%edx
14007ee9e:	49 8b c8             	mov    %r8,%rcx
14007eea1:	ff 50 18             	call   *0x18(%rax)
14007eea4:	83 f8 ff             	cmp    $0xffffffff,%eax
14007eea7:	75 13                	jne    0x14007eebc
14007eea9:	ba 04 00 00 00       	mov    $0x4,%edx
14007eeae:	8b fa                	mov    %edx,%edi
14007eeb0:	89 94 24 c0 00 00 00 	mov    %edx,0xc0(%rsp)
14007eeb7:	e9 8e 00 00 00       	jmp    0x14007ef4a
14007eebc:	48 ff cb             	dec    %rbx
14007eebf:	eb 92                	jmp    0x14007ee53
14007eec1:	48 8b 06             	mov    (%rsi),%rax
14007eec4:	48 63 48 04          	movslq 0x4(%rax),%rcx
14007eec8:	48 8b 4c 31 48       	mov    0x48(%rcx,%rsi,1),%rcx
14007eecd:	48 8b 01             	mov    (%rcx),%rax
14007eed0:	4d 8b c6             	mov    %r14,%r8
14007eed3:	49 8b d7             	mov    %r15,%rdx
14007eed6:	ff 50 48             	call   *0x48(%rax)
14007eed9:	49 3b c6             	cmp    %r14,%rax
14007eedc:	75 5d                	jne    0x14007ef3b
14007eede:	66 90                	xchg   %ax,%ax
14007eee0:	48 85 db             	test   %rbx,%rbx
14007eee3:	7e 60                	jle    0x14007ef45
14007eee5:	48 8b 06             	mov    (%rsi),%rax
14007eee8:	48 63 48 04          	movslq 0x4(%rax),%rcx
14007eeec:	4c 8b 44 31 48       	mov    0x48(%rcx,%rsi,1),%r8
14007eef1:	44 0f b6 4c 31 58    	movzbl 0x58(%rcx,%rsi,1),%r9d
14007eef7:	49 8b 40 40          	mov    0x40(%r8),%rax
14007eefb:	48 83 38 00          	cmpq   $0x0,(%rax)
14007eeff:	74 24                	je     0x14007ef25
14007ef01:	49 8b 48 58          	mov    0x58(%r8),%rcx
14007ef05:	8b 01                	mov    (%rcx),%eax
14007ef07:	85 c0                	test   %eax,%eax
14007ef09:	7e 1a                	jle    0x14007ef25
14007ef0b:	ff c8                	dec    %eax
14007ef0d:	89 01                	mov    %eax,(%rcx)
14007ef0f:	49 8b 48 40          	mov    0x40(%r8),%rcx
14007ef13:	48 8b 11             	mov    (%rcx),%rdx
14007ef16:	48 8d 42 01          	lea    0x1(%rdx),%rax
14007ef1a:	48 89 01             	mov    %rax,(%rcx)
14007ef1d:	44 88 0a             	mov    %r9b,(%rdx)
14007ef20:	41 8b c1             	mov    %r9d,%eax
14007ef23:	eb 0c                	jmp    0x14007ef31
14007ef25:	49 8b 00             	mov    (%r8),%rax
14007ef28:	41 8b d1             	mov    %r9d,%edx
14007ef2b:	49 8b c8             	mov    %r8,%rcx
14007ef2e:	ff 50 18             	call   *0x18(%rax)
14007ef31:	83 f8 ff             	cmp    $0xffffffff,%eax
14007ef34:	74 05                	je     0x14007ef3b
14007ef36:	48 ff cb             	dec    %rbx
14007ef39:	eb a5                	jmp    0x14007eee0
14007ef3b:	83 cf 04             	or     $0x4,%edi
14007ef3e:	89 bc 24 c0 00 00 00 	mov    %edi,0xc0(%rsp)
14007ef45:	ba 04 00 00 00       	mov    $0x4,%edx
14007ef4a:	48 8b 06             	mov    (%rsi),%rax
14007ef4d:	48 63 48 04          	movslq 0x4(%rax),%rcx
14007ef51:	4c 89 6c 31 28       	mov    %r13,0x28(%rcx,%rsi,1)
14007ef56:	eb 1c                	jmp    0x14007ef74
14007ef58:	45 33 ed             	xor    %r13d,%r13d
14007ef5b:	ba 04 00 00 00       	mov    $0x4,%edx
14007ef60:	48 8b b4 24 b0 00 00 	mov    0xb0(%rsp),%rsi
14007ef67:	00
14007ef68:	8b bc 24 c0 00 00 00 	mov    0xc0(%rsp),%edi
14007ef6f:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
14007ef74:	48 8b 06             	mov    (%rsi),%rax
14007ef77:	48 63 48 04          	movslq 0x4(%rax),%rcx
14007ef7b:	48 03 ce             	add    %rsi,%rcx
14007ef7e:	0b 79 10             	or     0x10(%rcx),%edi
14007ef81:	48 83 79 48 00       	cmpq   $0x0,0x48(%rcx)
14007ef86:	41 0f 45 d5          	cmovne %r13d,%edx
14007ef8a:	0b d7                	or     %edi,%edx
14007ef8c:	83 e2 17             	and    $0x17,%edx
14007ef8f:	89 51 10             	mov    %edx,0x10(%rcx)
14007ef92:	23 51 14             	and    0x14(%rcx),%edx
14007ef95:	75 3e                	jne    0x14007efd5
14007ef97:	e8 e0 fe 22 00       	call   0x1402aee7c
14007ef9c:	84 c0                	test   %al,%al
14007ef9e:	75 09                	jne    0x14007efa9
14007efa0:	49 8b cc             	mov    %r12,%rcx
14007efa3:	e8 58 fa ff ff       	call   0x14007ea00
14007efa8:	90                   	nop
14007efa9:	49 8b 04 24          	mov    (%r12),%rax
14007efad:	48 63 48 04          	movslq 0x4(%rax),%rcx
14007efb1:	4a 8b 4c 21 48       	mov    0x48(%rcx,%r12,1),%rcx
14007efb6:	48 85 c9             	test   %rcx,%rcx
14007efb9:	74 07                	je     0x14007efc2
14007efbb:	48 8b 01             	mov    (%rcx),%rax
14007efbe:	ff 50 10             	call   *0x10(%rax)
14007efc1:	90                   	nop
14007efc2:	48 8b c6             	mov    %rsi,%rax
14007efc5:	48 83 c4 70          	add    $0x70,%rsp
14007efc9:	41 5f                	pop    %r15
14007efcb:	41 5e                	pop    %r14
14007efcd:	41 5d                	pop    %r13
14007efcf:	41 5c                	pop    %r12
14007efd1:	5f                   	pop    %rdi
14007efd2:	5e                   	pop    %rsi
14007efd3:	5b                   	pop    %rbx
14007efd4:	c3                   	ret
14007efd5:	f6 c2 04             	test   $0x4,%dl
14007efd8:	74 09                	je     0x14007efe3
14007efda:	48 8d 1d af 8f 32 00 	lea    0x328faf(%rip),%rbx        # 0x1403a7f90
14007efe1:	eb 15                	jmp    0x14007eff8
14007efe3:	f6 c2 02             	test   $0x2,%dl
14007efe6:	48 8d 1d bb 8f 32 00 	lea    0x328fbb(%rip),%rbx        # 0x1403a7fa8
14007efed:	48 8d 05 cc 8f 32 00 	lea    0x328fcc(%rip),%rax        # 0x1403a7fc0
14007eff4:	48 0f 44 d8          	cmove  %rax,%rbx
14007eff8:	ba 01 00 00 00       	mov    $0x1,%edx
14007effd:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14007f002:	e8 b9 e5 ff ff       	call   0x14007d5c0
14007f007:	4c 8b c0             	mov    %rax,%r8
14007f00a:	48 8b d3             	mov    %rbx,%rdx
14007f00d:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14007f012:	e8 29 f0 ff ff       	call   0x14007e040
14007f017:	48 8d 15 ba dd 34 00 	lea    0x34ddba(%rip),%rdx        # 0x1403ccdd8
14007f01e:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14007f023:	e8 88 34 23 00       	call   0x1402b24b0
14007f028:	cc                   	int3
14007f029:	cc                   	int3
14007f02a:	cc                   	int3
14007f02b:	cc                   	int3
14007f02c:	cc                   	int3
14007f02d:	cc                   	int3
14007f02e:	cc                   	int3
14007f02f:	cc                   	int3
14007f030:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14007f035:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14007f03a:	56                   	push   %rsi
14007f03b:	57                   	push   %rdi
14007f03c:	41 56                	push   %r14
14007f03e:	48 83 ec 70          	sub    $0x70,%rsp
14007f042:	4c 8b f1             	mov    %rcx,%r14
14007f045:	33 db                	xor    %ebx,%ebx
14007f047:	89 5c 24 30          	mov    %ebx,0x30(%rsp)
14007f04b:	48 8b f2             	mov    %rdx,%rsi
14007f04e:	48 83 7a 18 07       	cmpq   $0x7,0x18(%rdx)
14007f053:	76 03                	jbe    0x14007f058
14007f055:	48 8b 32             	mov    (%rdx),%rsi
14007f058:	48 8b 7a 10          	mov    0x10(%rdx),%rdi
14007f05c:	e8 57 f2 22 00       	call   0x1402ae2b8
14007f061:	8b e8                	mov    %eax,%ebp
14007f063:	0f 57 c0             	xorps  %xmm0,%xmm0
14007f066:	0f 11 44 24 38       	movups %xmm0,0x38(%rsp)
14007f06b:	48 89 5c 24 48       	mov    %rbx,0x48(%rsp)
14007f070:	b9 0f 00 00 00       	mov    $0xf,%ecx
14007f075:	48 89 4c 24 50       	mov    %rcx,0x50(%rsp)
14007f07a:	c6 44 24 38 00       	movb   $0x0,0x38(%rsp)
14007f07f:	c7 44 24 30 04 00 00 	movl   $0x4,0x30(%rsp)
14007f086:	00
14007f087:	48 85 ff             	test   %rdi,%rdi
14007f08a:	74 7b                	je     0x14007f107
14007f08c:	48 81 ff ff ff ff 7f 	cmp    $0x7fffffff,%rdi
14007f093:	0f 87 ef 00 00 00    	ja     0x14007f188
14007f099:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
14007f09d:	45 33 c9             	xor    %r9d,%r9d
14007f0a0:	44 8b c7             	mov    %edi,%r8d
14007f0a3:	48 8b d6             	mov    %rsi,%rdx
14007f0a6:	8b c8                	mov    %eax,%ecx
14007f0a8:	e8 33 f2 22 00       	call   0x1402ae2e0
14007f0ad:	48 8b d8             	mov    %rax,%rbx
14007f0b0:	48 c1 e8 20          	shr    $0x20,%rax
14007f0b4:	85 c0                	test   %eax,%eax
14007f0b6:	0f 85 d2 00 00 00    	jne    0x14007f18e
14007f0bc:	48 63 d3             	movslq %ebx,%rdx
14007f0bf:	45 33 c0             	xor    %r8d,%r8d
14007f0c2:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14007f0c7:	e8 e4 f9 ff ff       	call   0x14007eab0
14007f0cc:	4c 8d 4c 24 38       	lea    0x38(%rsp),%r9
14007f0d1:	48 83 7c 24 50 0f    	cmpq   $0xf,0x50(%rsp)
14007f0d7:	4c 0f 47 4c 24 38    	cmova  0x38(%rsp),%r9
14007f0dd:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
14007f0e1:	44 8b c7             	mov    %edi,%r8d
14007f0e4:	48 8b d6             	mov    %rsi,%rdx
14007f0e7:	8b cd                	mov    %ebp,%ecx
14007f0e9:	e8 f2 f1 22 00       	call   0x1402ae2e0
14007f0ee:	48 8b c8             	mov    %rax,%rcx
14007f0f1:	48 c1 e8 20          	shr    $0x20,%rax
14007f0f5:	85 c0                	test   %eax,%eax
14007f0f7:	0f 85 9d 00 00 00    	jne    0x14007f19a
14007f0fd:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14007f102:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
14007f107:	48 8d 44 24 38       	lea    0x38(%rsp),%rax
14007f10c:	48 83 f9 0f          	cmp    $0xf,%rcx
14007f110:	48 0f 47 44 24 38    	cmova  0x38(%rsp),%rax
14007f116:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
14007f11b:	48 89 5c 24 60       	mov    %rbx,0x60(%rsp)
14007f120:	66 c7 44 24 68 22 5c 	movw   $0x5c22,0x68(%rsp)
14007f127:	48 8d 54 24 58       	lea    0x58(%rsp),%rdx
14007f12c:	49 8b ce             	mov    %r14,%rcx
14007f12f:	e8 ec 03 00 00       	call   0x14007f520
14007f134:	48 8b d8             	mov    %rax,%rbx
14007f137:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
14007f13c:	48 83 fa 0f          	cmp    $0xf,%rdx
14007f140:	76 2e                	jbe    0x14007f170
14007f142:	48 ff c2             	inc    %rdx
14007f145:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
14007f14a:	48 8b c1             	mov    %rcx,%rax
14007f14d:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14007f154:	72 15                	jb     0x14007f16b
14007f156:	48 83 c2 27          	add    $0x27,%rdx
14007f15a:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14007f15e:	48 2b c1             	sub    %rcx,%rax
14007f161:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14007f165:	48 83 f8 1f          	cmp    $0x1f,%rax
14007f169:	77 39                	ja     0x14007f1a4
14007f16b:	e8 9c 0d 23 00       	call   0x1402aff0c
14007f170:	48 8b c3             	mov    %rbx,%rax
14007f173:	4c 8d 5c 24 70       	lea    0x70(%rsp),%r11
14007f178:	49 8b 5b 28          	mov    0x28(%r11),%rbx
14007f17c:	49 8b 6b 30          	mov    0x30(%r11),%rbp
14007f180:	49 8b e3             	mov    %r11,%rsp
14007f183:	41 5e                	pop    %r14
14007f185:	5f                   	pop    %rdi
14007f186:	5e                   	pop    %rsi
14007f187:	c3                   	ret
14007f188:	e8 c3 e6 ff ff       	call   0x14007d850
14007f18d:	90                   	nop
14007f18e:	48 c1 eb 20          	shr    $0x20,%rbx
14007f192:	8b cb                	mov    %ebx,%ecx
14007f194:	e8 37 ea ff ff       	call   0x14007dbd0
14007f199:	cc                   	int3
14007f19a:	48 c1 e9 20          	shr    $0x20,%rcx
14007f19e:	e8 2d ea ff ff       	call   0x14007dbd0
14007f1a3:	90                   	nop
14007f1a4:	e8 7b 72 23 00       	call   0x1402b6424
14007f1a9:	cc                   	int3
14007f1aa:	cc                   	int3
14007f1ab:	cc                   	int3
14007f1ac:	cc                   	int3
14007f1ad:	cc                   	int3
14007f1ae:	cc                   	int3
14007f1af:	cc                   	int3
14007f1b0:	40 57                	rex push %rdi
14007f1b2:	41 54                	push   %r12
14007f1b4:	41 56                	push   %r14
14007f1b6:	41 57                	push   %r15
14007f1b8:	48 83 ec 38          	sub    $0x38,%rsp
14007f1bc:	4c 8b 61 10          	mov    0x10(%rcx),%r12
14007f1c0:	48 bf fe ff ff ff ff 	movabs $0x7ffffffffffffffe,%rdi
14007f1c7:	ff ff 7f
14007f1ca:	48 8b c7             	mov    %rdi,%rax
14007f1cd:	4d 8b f9             	mov    %r9,%r15
14007f1d0:	49 2b c4             	sub    %r12,%rax
14007f1d3:	4c 8b f1             	mov    %rcx,%r14
14007f1d6:	48 3b c2             	cmp    %rdx,%rax
14007f1d9:	0f 82 7f 01 00 00    	jb     0x14007f35e
14007f1df:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
14007f1e4:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
14007f1e9:	48 8b 69 18          	mov    0x18(%rcx),%rbp
14007f1ed:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
14007f1f2:	4a 8d 34 22          	lea    (%rdx,%r12,1),%rsi
14007f1f6:	48 8b d6             	mov    %rsi,%rdx
14007f1f9:	4c 89 6c 24 20       	mov    %r13,0x20(%rsp)
14007f1fe:	48 83 ca 07          	or     $0x7,%rdx
14007f202:	45 33 ed             	xor    %r13d,%r13d
14007f205:	48 3b d7             	cmp    %rdi,%rdx
14007f208:	77 40                	ja     0x14007f24a
14007f20a:	48 8b cd             	mov    %rbp,%rcx
14007f20d:	48 8b c7             	mov    %rdi,%rax
14007f210:	48 d1 e9             	shr    $1,%rcx
14007f213:	48 2b c1             	sub    %rcx,%rax
14007f216:	48 3b e8             	cmp    %rax,%rbp
14007f219:	77 2f                	ja     0x14007f24a
14007f21b:	48 8d 04 29          	lea    (%rcx,%rbp,1),%rax
14007f21f:	48 8b fa             	mov    %rdx,%rdi
14007f222:	48 3b d0             	cmp    %rax,%rdx
14007f225:	48 0f 42 f8          	cmovb  %rax,%rdi
14007f229:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
14007f230:	ff ff 7f
14007f233:	48 8d 4f 01          	lea    0x1(%rdi),%rcx
14007f237:	48 3b c8             	cmp    %rax,%rcx
14007f23a:	0f 87 18 01 00 00    	ja     0x14007f358
14007f240:	48 03 c9             	add    %rcx,%rcx
14007f243:	75 13                	jne    0x14007f258
14007f245:	41 8b dd             	mov    %r13d,%ebx
14007f248:	eb 4b                	jmp    0x14007f295
14007f24a:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
14007f251:	ff ff 7f
14007f254:	48 8d 0c 00          	lea    (%rax,%rax,1),%rcx
14007f258:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14007f25f:	72 2c                	jb     0x14007f28d
14007f261:	48 8d 41 27          	lea    0x27(%rcx),%rax
14007f265:	48 3b c1             	cmp    %rcx,%rax
14007f268:	0f 86 ea 00 00 00    	jbe    0x14007f358
14007f26e:	48 8b c8             	mov    %rax,%rcx
14007f271:	e8 5a 0c 23 00       	call   0x1402afed0
14007f276:	48 85 c0             	test   %rax,%rax
14007f279:	0f 84 d3 00 00 00    	je     0x14007f352
14007f27f:	48 8d 58 27          	lea    0x27(%rax),%rbx
14007f283:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
14007f287:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
14007f28b:	eb 08                	jmp    0x14007f295
14007f28d:	e8 3e 0c 23 00       	call   0x1402afed0
14007f292:	48 8b d8             	mov    %rax,%rbx
14007f295:	49 89 7e 18          	mov    %rdi,0x18(%r14)
14007f299:	4f 8d 04 24          	lea    (%r12,%r12,1),%r8
14007f29d:	49 89 76 10          	mov    %rsi,0x10(%r14)
14007f2a1:	49 8d 3c 18          	lea    (%r8,%rbx,1),%rdi
14007f2a5:	48 8b cb             	mov    %rbx,%rcx
14007f2a8:	48 83 fd 07          	cmp    $0x7,%rbp
14007f2ac:	76 5a                	jbe    0x14007f308
14007f2ae:	49 8b 36             	mov    (%r14),%rsi
14007f2b1:	48 8b d6             	mov    %rsi,%rdx
14007f2b4:	e8 a7 20 26 00       	call   0x1402e1360
14007f2b9:	4d 85 ff             	test   %r15,%r15
14007f2bc:	74 0e                	je     0x14007f2cc
14007f2be:	0f b7 84 24 80 00 00 	movzwl 0x80(%rsp),%eax
14007f2c5:	00
14007f2c6:	49 8b cf             	mov    %r15,%rcx
14007f2c9:	66 f3 ab             	rep stos %ax,%es:(%rdi)
14007f2cc:	48 8d 14 6d 02 00 00 	lea    0x2(,%rbp,2),%rdx
14007f2d3:	00
14007f2d4:	4b 8d 04 27          	lea    (%r15,%r12,1),%rax
14007f2d8:	66 44 89 2c 43       	mov    %r13w,(%rbx,%rax,2)
14007f2dd:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14007f2e4:	72 18                	jb     0x14007f2fe
14007f2e6:	48 8b 4e f8          	mov    -0x8(%rsi),%rcx
14007f2ea:	48 83 c2 27          	add    $0x27,%rdx
14007f2ee:	48 2b f1             	sub    %rcx,%rsi
14007f2f1:	48 8d 46 f8          	lea    -0x8(%rsi),%rax
14007f2f5:	48 83 f8 1f          	cmp    $0x1f,%rax
14007f2f9:	77 57                	ja     0x14007f352
14007f2fb:	48 8b f1             	mov    %rcx,%rsi
14007f2fe:	48 8b ce             	mov    %rsi,%rcx
14007f301:	e8 06 0c 23 00       	call   0x1402aff0c
14007f306:	eb 24                	jmp    0x14007f32c
14007f308:	49 8b d6             	mov    %r14,%rdx
14007f30b:	e8 50 20 26 00       	call   0x1402e1360
14007f310:	4d 85 ff             	test   %r15,%r15
14007f313:	74 0e                	je     0x14007f323
14007f315:	0f b7 84 24 80 00 00 	movzwl 0x80(%rsp),%eax