140961cbd:	48 63 41 04          	movslq 0x4(%rcx),%rax
140961cc1:	8b 4c 30 18          	mov    0x18(%rax,%rsi,1),%ecx
140961cc5:	81 e1 c0 01 00 00    	and    $0x1c0,%ecx
140961ccb:	41 bf ff ff 00 00    	mov    $0xffff,%r15d
140961cd1:	83 f9 40             	cmp    $0x40,%ecx
140961cd4:	74 79                	je     0x140961d4f
140961cd6:	48 85 db             	test   %rbx,%rbx
140961cd9:	74 74                	je     0x140961d4f
140961cdb:	48 8b 06             	mov    (%rsi),%rax
140961cde:	48 63 48 04          	movslq 0x4(%rax),%rcx
140961ce2:	4c 8b 44 31 48       	mov    0x48(%rcx,%rsi,1),%r8
140961ce7:	44 0f b7 4c 31 58    	movzwl 0x58(%rcx,%rsi,1),%r9d
140961ced:	49 8b 40 40          	mov    0x40(%r8),%rax
140961cf1:	48 83 38 00          	cmpq   $0x0,(%rax)
140961cf5:	74 22                	je     0x140961d19
140961cf7:	49 8b 48 58          	mov    0x58(%r8),%rcx
140961cfb:	8b 01                	mov    (%rcx),%eax
140961cfd:	85 c0                	test   %eax,%eax
140961cff:	7e 18                	jle    0x140961d19
140961d01:	ff c8                	dec    %eax
140961d03:	89 01                	mov    %eax,(%rcx)
140961d05:	49 8b 48 40          	mov    0x40(%r8),%rcx
140961d09:	48 8b 11             	mov    (%rcx),%rdx
140961d0c:	48 8d 42 02          	lea    0x2(%rdx),%rax
140961d10:	48 89 01             	mov    %rax,(%rcx)
140961d13:	66 44 89 0a          	mov    %r9w,(%rdx)
140961d17:	eb 18                	jmp    0x140961d31
140961d19:	49 8b 00             	mov    (%r8),%rax
140961d1c:	41 0f b7 d1          	movzwl %r9w,%edx
140961d20:	49 8b c8             	mov    %r8,%rcx
140961d23:	48 8b 40 18          	mov    0x18(%rax),%rax
140961d27:	ff 15 f3 1c 62 00    	call   *0x621cf3(%rip)        # 0x140f83a20
140961d2d:	44 0f b7 c8          	movzwl %ax,%r9d
140961d31:	66 45 3b f9          	cmp    %r9w,%r15w
140961d35:	75 13                	jne    0x140961d4a
140961d37:	41 be 04 00 00 00    	mov    $0x4,%r14d
140961d3d:	41 8b fe             	mov    %r14d,%edi
140961d40:	44 89 b4 24 c8 00 00 	mov    %r14d,0xc8(%rsp)
140961d47:	00
140961d48:	eb 36                	jmp    0x140961d80
140961d4a:	48 ff cb             	dec    %rbx
140961d4d:	eb 87                	jmp    0x140961cd6
140961d4f:	48 8b 06             	mov    (%rsi),%rax
140961d52:	48 63 48 04          	movslq 0x4(%rax),%rcx
140961d56:	48 8b 4c 31 48       	mov    0x48(%rcx,%rsi,1),%rcx
140961d5b:	48 8b 01             	mov    (%rcx),%rax
140961d5e:	4d 8b c6             	mov    %r14,%r8
140961d61:	48 8b 94 24 b8 00 00 	mov    0xb8(%rsp),%rdx
140961d68:	00
140961d69:	48 8b 40 48          	mov    0x48(%rax),%rax
140961d6d:	ff 15 ad 1c 62 00    	call   *0x621cad(%rip)        # 0x140f83a20
140961d73:	49 3b c6             	cmp    %r14,%rax
140961d76:	41 be 04 00 00 00    	mov    $0x4,%r14d
140961d7c:	75 68                	jne    0x140961de6
140961d7e:	66 90                	xchg   %ax,%ax
140961d80:	48 85 db             	test   %rbx,%rbx
140961d83:	74 6b                	je     0x140961df0
140961d85:	48 8b 06             	mov    (%rsi),%rax
140961d88:	48 63 48 04          	movslq 0x4(%rax),%rcx
140961d8c:	4c 8b 44 31 48       	mov    0x48(%rcx,%rsi,1),%r8
140961d91:	44 0f b7 4c 31 58    	movzwl 0x58(%rcx,%rsi,1),%r9d
140961d97:	49 8b 40 40          	mov    0x40(%r8),%rax
140961d9b:	48 83 38 00          	cmpq   $0x0,(%rax)
140961d9f:	74 22                	je     0x140961dc3
140961da1:	49 8b 48 58          	mov    0x58(%r8),%rcx
140961da5:	8b 01                	mov    (%rcx),%eax
140961da7:	85 c0                	test   %eax,%eax
140961da9:	7e 18                	jle    0x140961dc3
140961dab:	ff c8                	dec    %eax
140961dad:	89 01                	mov    %eax,(%rcx)
140961daf:	49 8b 48 40          	mov    0x40(%r8),%rcx
140961db3:	48 8b 11             	mov    (%rcx),%rdx
140961db6:	48 8d 42 02          	lea    0x2(%rdx),%rax
140961dba:	48 89 01             	mov    %rax,(%rcx)
140961dbd:	66 44 89 0a          	mov    %r9w,(%rdx)
140961dc1:	eb 18                	jmp    0x140961ddb
140961dc3:	49 8b 00             	mov    (%r8),%rax
140961dc6:	41 0f b7 d1          	movzwl %r9w,%edx
140961dca:	49 8b c8             	mov    %r8,%rcx
140961dcd:	48 8b 40 18          	mov    0x18(%rax),%rax
140961dd1:	ff 15 49 1c 62 00    	call   *0x621c49(%rip)        # 0x140f83a20
140961dd7:	44 0f b7 c8          	movzwl %ax,%r9d
140961ddb:	66 45 3b f9          	cmp    %r9w,%r15w
140961ddf:	74 05                	je     0x140961de6
140961de1:	48 ff cb             	dec    %rbx
140961de4:	eb 9a                	jmp    0x140961d80
140961de6:	83 cf 04             	or     $0x4,%edi
140961de9:	89 bc 24 c8 00 00 00 	mov    %edi,0xc8(%rsp)
140961df0:	48 8b 06             	mov    (%rsi),%rax
140961df3:	48 63 48 04          	movslq 0x4(%rax),%rcx
140961df7:	4c 89 6c 31 28       	mov    %r13,0x28(%rcx,%rsi,1)
140961dfc:	eb 1d                	jmp    0x140961e1b
140961dfe:	45 33 ed             	xor    %r13d,%r13d
140961e01:	41 be 04 00 00 00    	mov    $0x4,%r14d
140961e07:	48 8b b4 24 b0 00 00 	mov    0xb0(%rsp),%rsi
140961e0e:	00
140961e0f:	8b bc 24 c8 00 00 00 	mov    0xc8(%rsp),%edi
140961e16:	4c 8b 64 24 28       	mov    0x28(%rsp),%r12
140961e1b:	48 8b 06             	mov    (%rsi),%rax
140961e1e:	48 63 48 04          	movslq 0x4(%rax),%rcx
140961e22:	48 03 ce             	add    %rsi,%rcx
140961e25:	0b 79 10             	or     0x10(%rcx),%edi
140961e28:	48 83 79 48 00       	cmpq   $0x0,0x48(%rcx)
140961e2d:	45 0f 45 f5          	cmovne %r13d,%r14d
140961e31:	44 0b f7             	or     %edi,%r14d
140961e34:	41 83 e6 17          	and    $0x17,%r14d
140961e38:	44 89 71 10          	mov    %r14d,0x10(%rcx)
140961e3c:	44 23 71 14          	and    0x14(%rcx),%r14d
140961e40:	75 45                	jne    0x140961e87
140961e42:	e8 e5 96 49 00       	call   0x140dfb52c
140961e47:	85 c0                	test   %eax,%eax
140961e49:	75 09                	jne    0x140961e54
140961e4b:	49 8b cc             	mov    %r12,%rcx
140961e4e:	e8 3d 67 88 ff       	call   0x1401e8590
140961e53:	90                   	nop
140961e54:	49 8b 04 24          	mov    (%r12),%rax
140961e58:	48 63 48 04          	movslq 0x4(%rax),%rcx
140961e5c:	4a 8b 4c 21 48       	mov    0x48(%rcx,%r12,1),%rcx
140961e61:	48 85 c9             	test   %rcx,%rcx
140961e64:	74 0e                	je     0x140961e74
140961e66:	48 8b 01             	mov    (%rcx),%rax
140961e69:	48 8b 40 10          	mov    0x10(%rax),%rax
140961e6d:	ff 15 ad 1b 62 00    	call   *0x621bad(%rip)        # 0x140f83a20
140961e73:	90                   	nop
140961e74:	48 8b c6             	mov    %rsi,%rax
140961e77:	48 83 c4 70          	add    $0x70,%rsp
140961e7b:	41 5f                	pop    %r15
140961e7d:	41 5e                	pop    %r14
140961e7f:	41 5d                	pop    %r13
140961e81:	41 5c                	pop    %r12
140961e83:	5f                   	pop    %rdi
140961e84:	5e                   	pop    %rsi
140961e85:	5b                   	pop    %rbx
140961e86:	c3                   	ret
140961e87:	41 f6 c6 04          	test   $0x4,%r14b
140961e8b:	74 09                	je     0x140961e96
140961e8d:	48 8d 1d 54 78 64 00 	lea    0x647854(%rip),%rbx        # 0x140fa96e8
140961e94:	eb 16                	jmp    0x140961eac
140961e96:	41 f6 c6 02          	test   $0x2,%r14b
140961e9a:	48 8d 1d 5f 78 64 00 	lea    0x64785f(%rip),%rbx        # 0x140fa9700
140961ea1:	48 8d 05 70 78 64 00 	lea    0x647870(%rip),%rax        # 0x140fa9718
140961ea8:	48 0f 44 d8          	cmove  %rax,%rbx
140961eac:	ba 01 00 00 00       	mov    $0x1,%edx
140961eb1:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140961eb6:	e8 05 59 8a ff       	call   0x1402077c0
140961ebb:	4c 8b c0             	mov    %rax,%r8
140961ebe:	48 8b d3             	mov    %rbx,%rdx
140961ec1:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140961ec6:	e8 65 e9 87 ff       	call   0x1401e0830
140961ecb:	48 8d 15 46 ee a3 00 	lea    0xa3ee46(%rip),%rdx        # 0x1413a0d18
140961ed2:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140961ed7:	e8 3c a9 4b 00       	call   0x140e1c818
140961edc:	cc                   	int3
140961edd:	cc                   	int3
140961ede:	cc                   	int3
140961edf:	cc                   	int3
140961ee0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140961ee5:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140961eea:	56                   	push   %rsi
140961eeb:	57                   	push   %rdi
140961eec:	41 54                	push   %r12
140961eee:	41 56                	push   %r14
140961ef0:	41 57                	push   %r15
140961ef2:	48 83 ec 50          	sub    $0x50,%rsp
140961ef6:	48 8b 05 03 70 a5 00 	mov    0xa57003(%rip),%rax        # 0x1413b8f00
140961efd:	48 33 c4             	xor    %rsp,%rax
140961f00:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140961f05:	45 33 e4             	xor    %r12d,%r12d
140961f08:	4d 8b f8             	mov    %r8,%r15
140961f0b:	4c 89 64 24 38       	mov    %r12,0x38(%rsp)
140961f10:	48 8b e9             	mov    %rcx,%rbp
140961f13:	48 c7 c7 ff ff ff ff 	mov    $0xffffffffffffffff,%rdi
140961f1a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140961f20:	48 ff c7             	inc    %rdi
140961f23:	44 38 24 0f          	cmp    %r12b,(%rdi,%rcx,1)
140961f27:	75 f7                	jne    0x140961f20
140961f29:	48 83 c7 01          	add    $0x1,%rdi
140961f2d:	49 8b dc             	mov    %r12,%rbx
140961f30:	48 8b f7             	mov    %rdi,%rsi
140961f33:	4c 8b f1             	mov    %rcx,%r14
140961f36:	74 33                	je     0x140961f6b
140961f38:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140961f3f:	00
140961f40:	4c 8d 4c 24 38       	lea    0x38(%rsp),%r9
140961f45:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
140961f4a:	4c 8b c6             	mov    %rsi,%r8
140961f4d:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140961f52:	49 8b d6             	mov    %r14,%rdx
140961f55:	e8 9e cd 49 00       	call   0x140dfecf8
140961f5a:	85 c0                	test   %eax,%eax
140961f5c:	7e 0d                	jle    0x140961f6b
140961f5e:	48 98                	cltq
140961f60:	48 ff c3             	inc    %rbx
140961f63:	4c 03 f0             	add    %rax,%r14
140961f66:	48 2b f0             	sub    %rax,%rsi
140961f69:	75 d5                	jne    0x140961f40
140961f6b:	48 ff c3             	inc    %rbx
140961f6e:	ba 02 00 00 00       	mov    $0x2,%edx
140961f73:	48 8b cb             	mov    %rbx,%rcx
140961f76:	e8 0d f1 4c 00       	call   0x140e31088
140961f7b:	4c 8b f0             	mov    %rax,%r14
140961f7e:	48 85 c0             	test   %rax,%rax
140961f81:	74 65                	je     0x140961fe8
140961f83:	4c 89 64 24 40       	mov    %r12,0x40(%rsp)
140961f88:	48 8b f0             	mov    %rax,%rsi
140961f8b:	48 85 db             	test   %rbx,%rbx
140961f8e:	74 2b                	je     0x140961fbb
140961f90:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
140961f95:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
140961f9a:	4c 8b c7             	mov    %rdi,%r8
140961f9d:	48 8b d5             	mov    %rbp,%rdx
140961fa0:	48 8b ce             	mov    %rsi,%rcx
140961fa3:	e8 50 cd 49 00       	call   0x140dfecf8
140961fa8:	85 c0                	test   %eax,%eax
140961faa:	7e 0f                	jle    0x140961fbb
140961fac:	48 98                	cltq
140961fae:	48 83 c6 02          	add    $0x2,%rsi
140961fb2:	48 03 e8             	add    %rax,%rbp
140961fb5:	48 83 eb 01          	sub    $0x1,%rbx
140961fb9:	75 d5                	jne    0x140961f90
140961fbb:	66 44 89 26          	mov    %r12w,(%rsi)
140961fbf:	49 8b c6             	mov    %r14,%rax
140961fc2:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
140961fc7:	48 33 cc             	xor    %rsp,%rcx
140961fca:	e8 31 95 4b 00       	call   0x140e1b500
140961fcf:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
140961fd4:	49 8b 5b 38          	mov    0x38(%r11),%rbx
140961fd8:	49 8b 6b 48          	mov    0x48(%r11),%rbp
140961fdc:	49 8b e3             	mov    %r11,%rsp
140961fdf:	41 5f                	pop    %r15
140961fe1:	41 5e                	pop    %r14
140961fe3:	41 5c                	pop    %r12
140961fe5:	5f                   	pop    %rdi
140961fe6:	5e                   	pop    %rsi
140961fe7:	c3                   	ret
140961fe8:	e8 63 93 49 00       	call   0x140dfb350
140961fed:	cc                   	int3
140961fee:	cc                   	int3
140961fef:	cc                   	int3
140961ff0:	40 55                	rex push %rbp
140961ff2:	56                   	push   %rsi
140961ff3:	57                   	push   %rdi
140961ff4:	41 55                	push   %r13
140961ff6:	48 83 ec 38          	sub    $0x38,%rsp
140961ffa:	48 8b 69 10          	mov    0x10(%rcx),%rbp
140961ffe:	48 bf fe ff ff ff ff 	movabs $0x7ffffffffffffffe,%rdi
140962005:	ff ff 7f
140962008:	48 8b c7             	mov    %rdi,%rax
14096200b:	4d 8b e9             	mov    %r9,%r13
14096200e:	48 2b c5             	sub    %rbp,%rax
140962011:	48 8b f1             	mov    %rcx,%rsi
140962014:	48 3b c2             	cmp    %rdx,%rax
140962017:	0f 82 83 01 00 00    	jb     0x1409621a0
14096201d:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
140962022:	48 8d 1c 2a          	lea    (%rdx,%rbp,1),%rbx
140962026:	48 8b d3             	mov    %rbx,%rdx
140962029:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
14096202e:	4c 8b 61 18          	mov    0x18(%rcx),%r12
140962032:	48 83 ca 07          	or     $0x7,%rdx
140962036:	48 3b d7             	cmp    %rdi,%rdx
140962039:	77 38                	ja     0x140962073
14096203b:	49 8b cc             	mov    %r12,%rcx
14096203e:	48 8b c7             	mov    %rdi,%rax
140962041:	48 d1 e9             	shr    $1,%rcx
140962044:	48 2b c1             	sub    %rcx,%rax
140962047:	4c 3b e0             	cmp    %rax,%r12
14096204a:	77 27                	ja     0x140962073
14096204c:	4a 8d 04 21          	lea    (%rcx,%r12,1),%rax
140962050:	48 8b fa             	mov    %rdx,%rdi
140962053:	48 3b d0             	cmp    %rax,%rdx
140962056:	48 0f 42 f8          	cmovb  %rax,%rdi
14096205a:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
140962061:	ff ff 7f
140962064:	48 8d 4f 01          	lea    0x1(%rdi),%rcx
140962068:	48 3b c8             	cmp    %rax,%rcx
14096206b:	0f 87 29 01 00 00    	ja     0x14096219a
140962071:	eb 0a                	jmp    0x14096207d
140962073:	48 b9 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rcx
14096207a:	ff ff 7f
14096207d:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
140962082:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
140962087:	0f ae e8             	lfence
14096208a:	48 03 c9             	add    %rcx,%rcx
14096208d:	e8 9e 4c 83 ff       	call   0x140196d30
140962092:	48 89 5e 10          	mov    %rbx,0x10(%rsi)
140962096:	4e 8d 3c 6d 00 00 00 	lea    0x0(,%r13,2),%r15
14096209d:	00
14096209e:	48 89 7e 18          	mov    %rdi,0x18(%rsi)
1409620a2:	4d 8b c7             	mov    %r15,%r8
1409620a5:	4c 8b f0             	mov    %rax,%r14
1409620a8:	48 8b c8             	mov    %rax,%rcx
1409620ab:	49 83 fc 07          	cmp    $0x7,%r12
1409620af:	76 7c                	jbe    0x14096212d
1409620b1:	48 8b 1e             	mov    (%rsi),%rbx
1409620b4:	48 8b d3             	mov    %rbx,%rdx
1409620b7:	e8 54 cf 57 00       	call   0x140edf010
1409620bc:	4c 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8
1409620c3:	00
1409620c4:	4b 8d 3c 37          	lea    (%r15,%r14,1),%rdi
1409620c8:	4d 85 c0             	test   %r8,%r8
1409620cb:	74 0e                	je     0x1409620db
1409620cd:	0f b7 84 24 88 00 00 	movzwl 0x88(%rsp),%eax
1409620d4:	00
1409620d5:	49 8b c8             	mov    %r8,%rcx
1409620d8:	66 f3 ab             	rep stos %ax,%es:(%rdi)
1409620db:	4b 8d 04 28          	lea    (%r8,%r13,1),%rax
1409620df:	49 2b ed             	sub    %r13,%rbp
1409620e2:	49 8d 14 1f          	lea    (%r15,%rbx,1),%rdx
1409620e6:	49 8d 0c 46          	lea    (%r14,%rax,2),%rcx
1409620ea:	4c 8d 04 6d 02 00 00 	lea    0x2(,%rbp,2),%r8
1409620f1:	00
1409620f2:	e8 19 cf 57 00       	call   0x140edf010
1409620f7:	4a 8d 14 65 02 00 00 	lea    0x2(,%r12,2),%rdx
1409620fe:	00
1409620ff:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140962106:	72 18                	jb     0x140962120
140962108:	48 8b 4b f8          	mov    -0x8(%rbx),%rcx
14096210c:	48 83 c2 27          	add    $0x27,%rdx
140962110:	48 2b d9             	sub    %rcx,%rbx
140962113:	48 8d 43 f8          	lea    -0x8(%rbx),%rax
140962117:	48 83 f8 1f          	cmp    $0x1f,%rax
14096211b:	77 77                	ja     0x140962194
14096211d:	48 8b d9             	mov    %rcx,%rbx
140962120:	0f ae e8             	lfence
140962123:	48 8b cb             	mov    %rbx,%rcx
140962126:	e8 19 90 4b 00       	call   0x140e1b144
14096212b:	eb 43                	jmp    0x140962170
14096212d:	48 8b d6             	mov    %rsi,%rdx
140962130:	e8 db ce 57 00       	call   0x140edf010
140962135:	4c 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8
14096213c:	00
14096213d:	4b 8d 3c 37          	lea    (%r15,%r14,1),%rdi
140962141:	4d 85 c0             	test   %r8,%r8
140962144:	74 0e                	je     0x140962154
140962146:	0f b7 84 24 88 00 00 	movzwl 0x88(%rsp),%eax
14096214d:	00
14096214e:	49 8b c8             	mov    %r8,%rcx
140962151:	66 f3 ab             	rep stos %ax,%es:(%rdi)
140962154:	4b 8d 0c 28          	lea    (%r8,%r13,1),%rcx
140962158:	49 2b ed             	sub    %r13,%rbp
14096215b:	49 8d 14 37          	lea    (%r15,%rsi,1),%rdx
14096215f:	49 8d 0c 4e          	lea    (%r14,%rcx,2),%rcx
140962163:	4c 8d 04 6d 02 00 00 	lea    0x2(,%rbp,2),%r8
14096216a:	00
14096216b:	e8 a0 ce 57 00       	call   0x140edf010
140962170:	4c 89 36             	mov    %r14,(%rsi)
140962173:	48 8b c6             	mov    %rsi,%rax
140962176:	4c 8b 74 24 28       	mov    0x28(%rsp),%r14
14096217b:	4c 8b 7c 24 20       	mov    0x20(%rsp),%r15
140962180:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx