140aeb9e1:	48 8b c1             	mov    %rcx,%rax
140aeb9e4:	48 2b c2             	sub    %rdx,%rax
140aeb9e7:	48 d1 f8             	sar    $1,%rax
140aeb9ea:	74 38                	je     0x140aeba24
140aeb9ec:	48 2b ca             	sub    %rdx,%rcx
140aeb9ef:	48 d1 f9             	sar    $1,%rcx
140aeb9f2:	48 3b d9             	cmp    %rcx,%rbx
140aeb9f5:	0f 83 8f 00 00 00    	jae    0x140aeba8a
140aeb9fb:	4c 8d 04 5a          	lea    (%rdx,%rbx,2),%r8
140aeb9ff:	49 8b ce             	mov    %r14,%rcx
140aeba02:	48 8d 55 20          	lea    0x20(%rbp),%rdx
140aeba06:	e8 99 ef ff ff       	call   0x140aea9a4
140aeba0b:	48 8b 4f 70          	mov    0x70(%rdi),%rcx
140aeba0f:	48 ff c3             	inc    %rbx
140aeba12:	48 8b 57 68          	mov    0x68(%rdi),%rdx
140aeba16:	48 8b c1             	mov    %rcx,%rax
140aeba19:	48 2b c2             	sub    %rdx,%rax
140aeba1c:	48 d1 f8             	sar    $1,%rax
140aeba1f:	48 3b d8             	cmp    %rax,%rbx
140aeba22:	72 c8                	jb     0x140aeb9ec
140aeba24:	48 8b 8f 88 00 00 00 	mov    0x88(%rdi),%rcx
140aeba2b:	48 8b 97 80 00 00 00 	mov    0x80(%rdi),%rdx
140aeba32:	48 8b c1             	mov    %rcx,%rax
140aeba35:	48 2b c2             	sub    %rdx,%rax
140aeba38:	48 d1 f8             	sar    $1,%rax
140aeba3b:	74 3a                	je     0x140aeba77
140aeba3d:	48 2b ca             	sub    %rdx,%rcx
140aeba40:	48 d1 f9             	sar    $1,%rcx
140aeba43:	48 3b f1             	cmp    %rcx,%rsi
140aeba46:	73 42                	jae    0x140aeba8a
140aeba48:	4c 8d 04 72          	lea    (%rdx,%rsi,2),%r8
140aeba4c:	49 8b ce             	mov    %r14,%rcx
140aeba4f:	48 8d 55 20          	lea    0x20(%rbp),%rdx
140aeba53:	e8 4c ef ff ff       	call   0x140aea9a4
140aeba58:	48 8b 8f 88 00 00 00 	mov    0x88(%rdi),%rcx
140aeba5f:	48 ff c6             	inc    %rsi
140aeba62:	48 8b 97 80 00 00 00 	mov    0x80(%rdi),%rdx
140aeba69:	48 8b c1             	mov    %rcx,%rax
140aeba6c:	48 2b c2             	sub    %rdx,%rax
140aeba6f:	48 d1 f8             	sar    $1,%rax
140aeba72:	48 3b f0             	cmp    %rax,%rsi
140aeba75:	72 c6                	jb     0x140aeba3d
140aeba77:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140aeba7c:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140aeba81:	48 83 c4 20          	add    $0x20,%rsp
140aeba85:	41 5e                	pop    %r14
140aeba87:	5f                   	pop    %rdi
140aeba88:	5d                   	pop    %rbp
140aeba89:	c3                   	ret
140aeba8a:	ff 15 08 0f 02 00    	call   *0x20f08(%rip)        # 0x140b0c998
140aeba90:	cc                   	int3
140aeba91:	90                   	nop
140aeba92:	90                   	nop
140aeba93:	90                   	nop
140aeba94:	90                   	nop
140aeba95:	90                   	nop
140aeba96:	90                   	nop
140aeba97:	90                   	nop
140aeba98:	90                   	nop
140aeba99:	90                   	nop
140aeba9a:	90                   	nop
140aeba9b:	90                   	nop
140aeba9c:	90                   	nop
140aeba9d:	90                   	nop
140aeba9e:	90                   	nop
140aeba9f:	90                   	nop
140aebaa0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140aebaa5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140aebaaa:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140aebaaf:	57                   	push   %rdi
140aebab0:	48 83 ec 20          	sub    $0x20,%rsp
140aebab4:	48 8b f2             	mov    %rdx,%rsi
140aebab7:	48 8b e9             	mov    %rcx,%rbp
140aebaba:	0f b7 51 0a          	movzwl 0xa(%rcx),%edx
140aebabe:	48 8b ce             	mov    %rsi,%rcx
140aebac1:	e8 9a 5a 6c ff       	call   0x1401b1560
140aebac6:	33 ff                	xor    %edi,%edi
140aebac8:	4c 8d 45 08          	lea    0x8(%rbp),%r8
140aebacc:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140aebad1:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
140aebad6:	48 8b ce             	mov    %rsi,%rcx
140aebad9:	e8 c6 ee ff ff       	call   0x140aea9a4
140aebade:	4c 8d 45 0a          	lea    0xa(%rbp),%r8
140aebae2:	48 8b ce             	mov    %rsi,%rcx
140aebae5:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140aebaea:	e8 b5 ee ff ff       	call   0x140aea9a4
140aebaef:	4c 8d 45 0c          	lea    0xc(%rbp),%r8
140aebaf3:	48 8b ce             	mov    %rsi,%rcx
140aebaf6:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140aebafb:	e8 a4 ee ff ff       	call   0x140aea9a4
140aebb00:	4c 8d 45 10          	lea    0x10(%rbp),%r8
140aebb04:	48 8b ce             	mov    %rsi,%rcx
140aebb07:	4c 03 c7             	add    %rdi,%r8
140aebb0a:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140aebb0f:	e8 04 ef ff ff       	call   0x140aeaa18
140aebb14:	48 ff c7             	inc    %rdi
140aebb17:	48 81 ff 00 01 00 00 	cmp    $0x100,%rdi
140aebb1e:	72 e0                	jb     0x140aebb00
140aebb20:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140aebb25:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
140aebb2a:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140aebb2f:	48 83 c4 20          	add    $0x20,%rsp
140aebb33:	5f                   	pop    %rdi
140aebb34:	c3                   	ret
140aebb35:	90                   	nop
140aebb36:	90                   	nop
140aebb37:	90                   	nop
140aebb38:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140aebb3d:	57                   	push   %rdi
140aebb3e:	48 83 ec 30          	sub    $0x30,%rsp
140aebb42:	48 8b d9             	mov    %rcx,%rbx
140aebb45:	33 ff                	xor    %edi,%edi
140aebb47:	b9 a8 00 00 00       	mov    $0xa8,%ecx
140aebb4c:	ff 15 76 0d 02 00    	call   *0x20d76(%rip)        # 0x140b0c8c8
140aebb52:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140aebb57:	48 85 c0             	test   %rax,%rax
140aebb5a:	75 07                	jne    0x140aebb63
140aebb5c:	ff 15 36 09 02 00    	call   *0x20936(%rip)        # 0x140b0c498
140aebb62:	90                   	nop
140aebb63:	b9 01 00 00 00       	mov    $0x1,%ecx
140aebb68:	89 48 08             	mov    %ecx,0x8(%rax)
140aebb6b:	89 48 0c             	mov    %ecx,0xc(%rax)
140aebb6e:	48 8d 0d c3 28 05 00 	lea    0x528c3(%rip),%rcx        # 0x140b3e438
140aebb75:	48 89 08             	mov    %rcx,(%rax)
140aebb78:	48 8d 48 10          	lea    0x10(%rax),%rcx
140aebb7c:	ba 04 00 00 00       	mov    $0x4,%edx
140aebb81:	66 89 50 18          	mov    %dx,0x18(%rax)
140aebb85:	48 8d 15 2c 29 05 00 	lea    0x5292c(%rip),%rdx        # 0x140b3e4b8
140aebb8c:	48 89 11             	mov    %rdx,(%rcx)
140aebb8f:	48 89 78 28          	mov    %rdi,0x28(%rax)
140aebb93:	48 89 78 30          	mov    %rdi,0x30(%rax)
140aebb97:	48 89 78 38          	mov    %rdi,0x38(%rax)
140aebb9b:	48 89 78 48          	mov    %rdi,0x48(%rax)
140aebb9f:	48 89 78 50          	mov    %rdi,0x50(%rax)
140aebba3:	48 89 78 58          	mov    %rdi,0x58(%rax)
140aebba7:	48 89 78 60          	mov    %rdi,0x60(%rax)
140aebbab:	48 89 78 68          	mov    %rdi,0x68(%rax)
140aebbaf:	48 89 78 70          	mov    %rdi,0x70(%rax)
140aebbb3:	48 89 78 78          	mov    %rdi,0x78(%rax)
140aebbb7:	48 89 b8 80 00 00 00 	mov    %rdi,0x80(%rax)
140aebbbe:	48 89 b8 88 00 00 00 	mov    %rdi,0x88(%rax)
140aebbc5:	48 89 b8 90 00 00 00 	mov    %rdi,0x90(%rax)
140aebbcc:	48 89 b8 98 00 00 00 	mov    %rdi,0x98(%rax)
140aebbd3:	48 89 b8 a0 00 00 00 	mov    %rdi,0xa0(%rax)
140aebbda:	48 89 0b             	mov    %rcx,(%rbx)
140aebbdd:	48 89 43 08          	mov    %rax,0x8(%rbx)
140aebbe1:	48 8b c3             	mov    %rbx,%rax
140aebbe4:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140aebbe9:	48 83 c4 30          	add    $0x30,%rsp
140aebbed:	5f                   	pop    %rdi
140aebbee:	c3                   	ret
140aebbef:	90                   	nop
140aebbf0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140aebbf5:	57                   	push   %rdi
140aebbf6:	48 83 ec 30          	sub    $0x30,%rsp
140aebbfa:	48 8b d9             	mov    %rcx,%rbx
140aebbfd:	33 ff                	xor    %edi,%edi
140aebbff:	b9 20 01 00 00       	mov    $0x120,%ecx
140aebc04:	ff 15 be 0c 02 00    	call   *0x20cbe(%rip)        # 0x140b0c8c8
140aebc0a:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140aebc0f:	48 85 c0             	test   %rax,%rax
140aebc12:	75 07                	jne    0x140aebc1b
140aebc14:	ff 15 7e 08 02 00    	call   *0x2087e(%rip)        # 0x140b0c498
140aebc1a:	90                   	nop
140aebc1b:	b9 01 00 00 00       	mov    $0x1,%ecx
140aebc20:	89 48 08             	mov    %ecx,0x8(%rax)
140aebc23:	89 48 0c             	mov    %ecx,0xc(%rax)
140aebc26:	48 8d 0d 33 28 05 00 	lea    0x52833(%rip),%rcx        # 0x140b3e460
140aebc2d:	48 89 08             	mov    %rcx,(%rax)
140aebc30:	48 8d 48 10          	lea    0x10(%rax),%rcx
140aebc34:	66 89 78 18          	mov    %di,0x18(%rax)
140aebc38:	48 8d 15 49 28 05 00 	lea    0x52849(%rip),%rdx        # 0x140b3e488
140aebc3f:	48 89 11             	mov    %rdx,(%rcx)
140aebc42:	48 89 0b             	mov    %rcx,(%rbx)
140aebc45:	48 89 43 08          	mov    %rax,0x8(%rbx)
140aebc49:	48 8b c3             	mov    %rbx,%rax
140aebc4c:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140aebc51:	48 83 c4 30          	add    $0x30,%rsp
140aebc55:	5f                   	pop    %rdi
140aebc56:	c3                   	ret
140aebc57:	90                   	nop
140aebc58:	90                   	nop
140aebc59:	90                   	nop
140aebc5a:	90                   	nop
140aebc5b:	90                   	nop
140aebc5c:	90                   	nop
140aebc5d:	90                   	nop
140aebc5e:	90                   	nop
140aebc5f:	90                   	nop
140aebc60:	40 53                	rex push %rbx
140aebc62:	48 83 ec 20          	sub    $0x20,%rsp
140aebc66:	48 8d 05 f3 27 05 00 	lea    0x527f3(%rip),%rax        # 0x140b3e460
140aebc6d:	48 8b d9             	mov    %rcx,%rbx
140aebc70:	48 89 01             	mov    %rax,(%rcx)
140aebc73:	f6 c2 01             	test   $0x1,%dl
140aebc76:	74 05                	je     0x140aebc7d
140aebc78:	e8 57 39 00 00       	call   0x140aef5d4
140aebc7d:	48 8b c3             	mov    %rbx,%rax
140aebc80:	48 83 c4 20          	add    $0x20,%rsp
140aebc84:	5b                   	pop    %rbx
140aebc85:	c3                   	ret
140aebc86:	90                   	nop
140aebc87:	90                   	nop
140aebc88:	90                   	nop
140aebc89:	90                   	nop
140aebc8a:	90                   	nop
140aebc8b:	90                   	nop
140aebc8c:	90                   	nop
140aebc8d:	90                   	nop
140aebc8e:	90                   	nop
140aebc8f:	90                   	nop
140aebc90:	40 53                	rex push %rbx
140aebc92:	48 83 ec 20          	sub    $0x20,%rsp
140aebc96:	48 8d 05 9b 27 05 00 	lea    0x5279b(%rip),%rax        # 0x140b3e438
140aebc9d:	48 8b d9             	mov    %rcx,%rbx
140aebca0:	48 89 01             	mov    %rax,(%rcx)
140aebca3:	f6 c2 01             	test   $0x1,%dl
140aebca6:	74 05                	je     0x140aebcad
140aebca8:	e8 27 39 00 00       	call   0x140aef5d4
140aebcad:	48 8b c3             	mov    %rbx,%rax
140aebcb0:	48 83 c4 20          	add    $0x20,%rsp
140aebcb4:	5b                   	pop    %rbx
140aebcb5:	c3                   	ret
140aebcb6:	90                   	nop
140aebcb7:	90                   	nop
140aebcb8:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140aebcbd:	53                   	push   %rbx
140aebcbe:	56                   	push   %rsi
140aebcbf:	57                   	push   %rdi
140aebcc0:	41 54                	push   %r12
140aebcc2:	41 55                	push   %r13
140aebcc4:	41 56                	push   %r14
140aebcc6:	41 57                	push   %r15
140aebcc8:	48 83 ec 30          	sub    $0x30,%rsp
140aebccc:	4c 8b e2             	mov    %rdx,%r12
140aebccf:	48 8b f9             	mov    %rcx,%rdi
140aebcd2:	4c 8b ca             	mov    %rdx,%r9
140aebcd5:	4c 2b 09             	sub    (%rcx),%r9
140aebcd8:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
140aebcdf:	aa aa 2a
140aebce2:	49 f7 e9             	imul   %r9
140aebce5:	4c 8b f2             	mov    %rdx,%r14
140aebce8:	49 c1 fe 02          	sar    $0x2,%r14
140aebcec:	49 8b c6             	mov    %r14,%rax
140aebcef:	48 c1 e8 3f          	shr    $0x3f,%rax
140aebcf3:	4c 03 f0             	add    %rax,%r14
140aebcf6:	48 8b 41 08          	mov    0x8(%rcx),%rax
140aebcfa:	48 2b 01             	sub    (%rcx),%rax
140aebcfd:	48 c1 f8 03          	sar    $0x3,%rax
140aebd01:	48 ba ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rdx
140aebd08:	aa aa aa
140aebd0b:	48 0f af c2          	imul   %rdx,%rax
140aebd0f:	49 ba aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r10
140aebd16:	aa aa 0a
140aebd19:	49 3b c2             	cmp    %r10,%rax
140aebd1c:	0f 84 06 03 00 00    	je     0x140aec028
140aebd22:	4c 8d 48 01          	lea    0x1(%rax),%r9
140aebd26:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140aebd2b:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140aebd2f:	48 2b 0f             	sub    (%rdi),%rcx
140aebd32:	48 c1 f9 03          	sar    $0x3,%rcx
140aebd36:	48 0f af ca          	imul   %rdx,%rcx
140aebd3a:	48 8b d1             	mov    %rcx,%rdx
140aebd3d:	48 d1 ea             	shr    $1,%rdx
140aebd40:	49 8b c2             	mov    %r10,%rax
140aebd43:	48 2b c2             	sub    %rdx,%rax
140aebd46:	48 3b c8             	cmp    %rax,%rcx
140aebd49:	76 05                	jbe    0x140aebd50
140aebd4b:	49 8b c2             	mov    %r10,%rax
140aebd4e:	eb 0b                	jmp    0x140aebd5b
140aebd50:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140aebd54:	49 3b c1             	cmp    %r9,%rax
140aebd57:	49 0f 42 c1          	cmovb  %r9,%rax
140aebd5b:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
140aebd62:	00
140aebd63:	49 3b c2             	cmp    %r10,%rax
140aebd66:	0f 87 b6 02 00 00    	ja     0x140aec022
140aebd6c:	48 8d 04 40          	lea    (%rax,%rax,2),%rax
140aebd70:	48 8d 34 c5 00 00 00 	lea    0x0(,%rax,8),%rsi
140aebd77:	00
140aebd78:	45 33 db             	xor    %r11d,%r11d
140aebd7b:	48 85 f6             	test   %rsi,%rsi
140aebd7e:	75 0a                	jne    0x140aebd8a
140aebd80:	41 8b db             	mov    %r11d,%ebx
140aebd83:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
140aebd88:	eb 5f                	jmp    0x140aebde9
140aebd8a:	48 81 fe 00 10 00 00 	cmp    $0x1000,%rsi
140aebd91:	72 2e                	jb     0x140aebdc1
140aebd93:	48 8d 4e 27          	lea    0x27(%rsi),%rcx
140aebd97:	48 3b ce             	cmp    %rsi,%rcx
140aebd9a:	0f 86 82 02 00 00    	jbe    0x140aec022
140aebda0:	ff 15 22 0b 02 00    	call   *0x20b22(%rip)        # 0x140b0c8c8
140aebda6:	45 33 db             	xor    %r11d,%r11d
140aebda9:	48 85 c0             	test   %rax,%rax
140aebdac:	74 27                	je     0x140aebdd5
140aebdae:	48 8d 58 27          	lea    0x27(%rax),%rbx
140aebdb2:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140aebdb6:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140aebdba:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
140aebdbf:	eb 20                	jmp    0x140aebde1
140aebdc1:	48 8b ce             	mov    %rsi,%rcx
140aebdc4:	ff 15 fe 0a 02 00    	call   *0x20afe(%rip)        # 0x140b0c8c8
140aebdca:	48 8b d8             	mov    %rax,%rbx
140aebdcd:	45 33 db             	xor    %r11d,%r11d
140aebdd0:	48 85 c0             	test   %rax,%rax
140aebdd3:	75 07                	jne    0x140aebddc
140aebdd5:	ff 15 bd 06 02 00    	call   *0x206bd(%rip)        # 0x140b0c498
140aebddb:	cc                   	int3
140aebddc:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
140aebde1:	4c 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8
140aebde8:	00
140aebde9:	4b 8d 04 76          	lea    (%r14,%r14,2),%rax
140aebded:	4c 8d 2c c5 00 00 00 	lea    0x0(,%rax,8),%r13
140aebdf4:	00
140aebdf5:	4e 8d 3c 2b          	lea    (%rbx,%r13,1),%r15
140aebdf9:	4d 8d 77 18          	lea    0x18(%r15),%r14
140aebdfd:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
140aebe02:	41 0f b7 00          	movzwl (%r8),%eax
140aebe06:	66 41 89 07          	mov    %ax,(%r15)
140aebe0a:	41 0f b7 40 02       	movzwl 0x2(%r8),%eax
140aebe0f:	66 41 89 47 02       	mov    %ax,0x2(%r15)
140aebe14:	41 8b 40 04          	mov    0x4(%r8),%eax
140aebe18:	41 89 47 04          	mov    %eax,0x4(%r15)
140aebe1c:	4d 89 5f 08          	mov    %r11,0x8(%r15)
140aebe20:	4d 89 5f 10          	mov    %r11,0x10(%r15)
140aebe24:	49 8b 40 10          	mov    0x10(%r8),%rax
140aebe28:	48 85 c0             	test   %rax,%rax
140aebe2b:	74 04                	je     0x140aebe31
140aebe2d:	f0 ff 40 08          	lock incl 0x8(%rax)
140aebe31:	49 8b 40 08          	mov    0x8(%r8),%rax
140aebe35:	49 89 47 08          	mov    %rax,0x8(%r15)
140aebe39:	49 8b 40 10          	mov    0x10(%r8),%rax
140aebe3d:	49 89 47 10          	mov    %rax,0x10(%r15)
140aebe41:	4c 89 7c 24 78       	mov    %r15,0x78(%rsp)
140aebe46:	4c 8b 57 08          	mov    0x8(%rdi),%r10
140aebe4a:	48 8b 17             	mov    (%rdi),%rdx
140aebe4d:	4d 3b e2             	cmp    %r10,%r12
140aebe50:	75 61                	jne    0x140aebeb3
140aebe52:	48 8b cb             	mov    %rbx,%rcx
140aebe55:	49 3b d2             	cmp    %r10,%rdx
140aebe58:	74 51                	je     0x140aebeab
140aebe5a:	4c 8d 42 10          	lea    0x10(%rdx),%r8
140aebe5e:	4c 8d 4b 10          	lea    0x10(%rbx),%r9
140aebe62:	0f b7 02             	movzwl (%rdx),%eax
140aebe65:	66 89 01             	mov    %ax,(%rcx)
140aebe68:	41 0f b7 40 f2       	movzwl -0xe(%r8),%eax
140aebe6d:	66 41 89 41 f2       	mov    %ax,-0xe(%r9)
140aebe72:	41 8b 40 f4          	mov    -0xc(%r8),%eax
140aebe76:	41 89 41 f4          	mov    %eax,-0xc(%r9)
140aebe7a:	4d 89 59 f8          	mov    %r11,-0x8(%r9)