140224886:	48 8b 00             	mov    (%rax),%rax
140224889:	0f ae e8             	lfence
14022488c:	8b d3                	mov    %ebx,%edx
14022488e:	48 8d 8d e0 00 00 00 	lea    0xe0(%rbp),%rcx
140224895:	48 3b c7             	cmp    %rdi,%rax
140224898:	75 07                	jne    0x1402248a1
14022489a:	e8 31 1c 00 00       	call   0x1402264d0
14022489f:	eb 06                	jmp    0x1402248a7
1402248a1:	ff 15 79 f1 d5 00    	call   *0xd5f179(%rip)        # 0x140f83a20
1402248a7:	4c 8b 8d f8 00 00 00 	mov    0xf8(%rbp),%r9
1402248ae:	49 3b d9             	cmp    %r9,%rbx
1402248b1:	4c 0f 46 cb          	cmovbe %rbx,%r9
1402248b5:	4c 89 8d f0 00 00 00 	mov    %r9,0xf0(%rbp)
1402248bc:	41 8b c7             	mov    %r15d,%eax
1402248bf:	99                   	cltd
1402248c0:	83 e2 1f             	and    $0x1f,%edx
1402248c3:	03 c2                	add    %edx,%eax
1402248c5:	8b c8                	mov    %eax,%ecx
1402248c7:	83 e0 1f             	and    $0x1f,%eax
1402248ca:	2b c2                	sub    %edx,%eax
1402248cc:	c1 f9 05             	sar    $0x5,%ecx
1402248cf:	8b f8                	mov    %eax,%edi
1402248d1:	89 8d 88 01 00 00    	mov    %ecx,0x188(%rbp)
1402248d7:	85 c0                	test   %eax,%eax
1402248d9:	0f 84 aa 00 00 00    	je     0x140224989
1402248df:	44 8b de             	mov    %esi,%r11d
1402248e2:	4c 8b c6             	mov    %rsi,%r8
1402248e5:	4d 85 c9             	test   %r9,%r9
1402248e8:	0f 84 9b 00 00 00    	je     0x140224989
1402248ee:	45 8b d6             	mov    %r14d,%r10d
1402248f1:	44 2b d0             	sub    %eax,%r10d
1402248f4:	0f 1f 40 00          	nopl   0x0(%rax)
1402248f8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1402248ff:	00
140224900:	48 8b 85 e8 00 00 00 	mov    0xe8(%rbp),%rax
140224907:	4a 8d 14 80          	lea    (%rax,%r8,4),%rdx
14022490b:	8b 02                	mov    (%rdx),%eax
14022490d:	8b d8                	mov    %eax,%ebx
14022490f:	41 8b ca             	mov    %r10d,%ecx
140224912:	d3 eb                	shr    %cl,%ebx
140224914:	8b cf                	mov    %edi,%ecx
140224916:	d3 e0                	shl    %cl,%eax
140224918:	41 03 c3             	add    %r11d,%eax
14022491b:	89 02                	mov    %eax,(%rdx)
14022491d:	44 8b db             	mov    %ebx,%r11d
140224920:	49 ff c0             	inc    %r8
140224923:	4d 3b c1             	cmp    %r9,%r8
140224926:	72 d8                	jb     0x140224900
140224928:	85 db                	test   %ebx,%ebx
14022492a:	74 58                	je     0x140224984
14022492c:	48 8b 95 f0 00 00 00 	mov    0xf0(%rbp),%rdx
140224933:	48 ff c2             	inc    %rdx
140224936:	48 3b 95 f8 00 00 00 	cmp    0xf8(%rbp),%rdx
14022493d:	76 2d                	jbe    0x14022496c
14022493f:	48 8b 85 e0 00 00 00 	mov    0xe0(%rbp),%rax
140224946:	48 8b 00             	mov    (%rax),%rax
140224949:	48 8d 0d 80 1b 00 00 	lea    0x1b80(%rip),%rcx        # 0x1402264d0
140224950:	0f ae e8             	lfence
140224953:	48 3b c1             	cmp    %rcx,%rax
140224956:	48 8d 8d e0 00 00 00 	lea    0xe0(%rbp),%rcx
14022495d:	75 07                	jne    0x140224966
14022495f:	e8 6c 1b 00 00       	call   0x1402264d0
140224964:	eb 06                	jmp    0x14022496c
140224966:	ff 15 b4 f0 d5 00    	call   *0xd5f0b4(%rip)        # 0x140f83a20
14022496c:	48 8b 8d f0 00 00 00 	mov    0xf0(%rbp),%rcx
140224973:	48 8b 85 e8 00 00 00 	mov    0xe8(%rbp),%rax
14022497a:	89 1c 88             	mov    %ebx,(%rax,%rcx,4)
14022497d:	48 ff 85 f0 00 00 00 	incq   0xf0(%rbp)
140224984:	bb 01 00 00 00       	mov    $0x1,%ebx
140224989:	45 84 ed             	test   %r13b,%r13b
14022498c:	74 28                	je     0x1402249b6
14022498e:	48 8b d3             	mov    %rbx,%rdx
140224991:	48 8d 8d 90 01 00 00 	lea    0x190(%rbp),%rcx
140224998:	e8 63 03 ff ff       	call   0x140214d00
14022499d:	41 8d 57 01          	lea    0x1(%r15),%edx
1402249a1:	48 8d 8d 90 01 00 00 	lea    0x190(%rbp),%rcx
1402249a8:	e8 a3 ec ff ff       	call   0x140223650
1402249ad:	4c 8d bd 90 01 00 00 	lea    0x190(%rbp),%r15
1402249b4:	eb 05                	jmp    0x1402249bb
1402249b6:	4c 8b 7c 24 28       	mov    0x28(%rsp),%r15
1402249bb:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1402249c0:	8b 36                	mov    (%rsi),%esi
1402249c2:	85 f6                	test   %esi,%esi
1402249c4:	75 57                	jne    0x140224a1d
1402249c6:	48 8b 45 38          	mov    0x38(%rbp),%rax
1402249ca:	89 18                	mov    %ebx,(%rax)
1402249cc:	48 8b 45 48          	mov    0x48(%rbp),%rax
1402249d0:	48 3b d8             	cmp    %rax,%rbx
1402249d3:	76 31                	jbe    0x140224a06
1402249d5:	48 8b 45 30          	mov    0x30(%rbp),%rax
1402249d9:	48 8b 00             	mov    (%rax),%rax
1402249dc:	48 8d 0d ed 1a 00 00 	lea    0x1aed(%rip),%rcx        # 0x1402264d0
1402249e3:	0f ae e8             	lfence
1402249e6:	48 8b d3             	mov    %rbx,%rdx
1402249e9:	48 3b c1             	cmp    %rcx,%rax
1402249ec:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
1402249f0:	75 07                	jne    0x1402249f9
1402249f2:	e8 d9 1a 00 00       	call   0x1402264d0
1402249f7:	eb 06                	jmp    0x1402249ff
1402249f9:	ff 15 21 f0 d5 00    	call   *0xd5f021(%rip)        # 0x140f83a20
1402249ff:	48 8b 45 48          	mov    0x48(%rbp),%rax
140224a03:	48 3b d8             	cmp    %rax,%rbx
140224a06:	48 0f 46 c3          	cmovbe %rbx,%rax
140224a0a:	48 89 45 40          	mov    %rax,0x40(%rbp)
140224a0e:	45 33 ed             	xor    %r13d,%r13d
140224a11:	44 89 ad d8 00 00 00 	mov    %r13d,0xd8(%rbp)
140224a18:	e9 b0 01 00 00       	jmp    0x140224bcd
140224a1d:	8b fb                	mov    %ebx,%edi
140224a1f:	83 fe 01             	cmp    $0x1,%esi
140224a22:	7c 06                	jl     0x140224a2a
140224a24:	03 ff                	add    %edi,%edi
140224a26:	3b f7                	cmp    %edi,%esi
140224a28:	7d fa                	jge    0x140224a24
140224a2a:	48 8b 45 38          	mov    0x38(%rbp),%rax
140224a2e:	c7 00 05 00 00 00    	movl   $0x5,(%rax)
140224a34:	48 8b 45 48          	mov    0x48(%rbp),%rax
140224a38:	48 3b d8             	cmp    %rax,%rbx
140224a3b:	76 31                	jbe    0x140224a6e
140224a3d:	48 8b 45 30          	mov    0x30(%rbp),%rax
140224a41:	48 8b 00             	mov    (%rax),%rax
140224a44:	48 8d 0d 85 1a 00 00 	lea    0x1a85(%rip),%rcx        # 0x1402264d0
140224a4b:	0f ae e8             	lfence
140224a4e:	48 8b d3             	mov    %rbx,%rdx
140224a51:	48 3b c1             	cmp    %rcx,%rax
140224a54:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140224a58:	75 07                	jne    0x140224a61
140224a5a:	e8 71 1a 00 00       	call   0x1402264d0
140224a5f:	eb 06                	jmp    0x140224a67
140224a61:	ff 15 b9 ef d5 00    	call   *0xd5efb9(%rip)        # 0x140f83a20
140224a67:	48 8b 45 48          	mov    0x48(%rbp),%rax
140224a6b:	48 3b d8             	cmp    %rax,%rbx
140224a6e:	48 0f 46 c3          	cmovbe %rbx,%rax
140224a72:	48 89 45 40          	mov    %rax,0x40(%rbp)
140224a76:	45 33 ed             	xor    %r13d,%r13d
140224a79:	44 89 ad d8 00 00 00 	mov    %r13d,0xd8(%rbp)
140224a80:	c1 ff 02             	sar    $0x2,%edi
140224a83:	85 ff                	test   %edi,%edi
140224a85:	0f 84 96 00 00 00    	je     0x140224b21
140224a8b:	4c 8d 25 3e 1a 00 00 	lea    0x1a3e(%rip),%r12        # 0x1402264d0
140224a92:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140224a96:	e8 55 22 00 00       	call   0x140226cf0
140224a9b:	85 fe                	test   %edi,%esi
140224a9d:	74 75                	je     0x140224b14
140224a9f:	41 8b dd             	mov    %r13d,%ebx
140224aa2:	4c 8b 4d 40          	mov    0x40(%rbp),%r9
140224aa6:	4d 8b c5             	mov    %r13,%r8
140224aa9:	4d 85 c9             	test   %r9,%r9
140224aac:	74 66                	je     0x140224b14
140224aae:	66 90                	xchg   %ax,%ax
140224ab0:	48 8b 45 38          	mov    0x38(%rbp),%rax
140224ab4:	4a 8d 14 80          	lea    (%rax,%r8,4),%rdx
140224ab8:	8b 02                	mov    (%rdx),%eax
140224aba:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
140224abe:	8b c3                	mov    %ebx,%eax
140224ac0:	48 03 c8             	add    %rax,%rcx
140224ac3:	89 0a                	mov    %ecx,(%rdx)
140224ac5:	48 8b d9             	mov    %rcx,%rbx
140224ac8:	48 c1 eb 20          	shr    $0x20,%rbx
140224acc:	49 ff c0             	inc    %r8
140224acf:	4d 3b c1             	cmp    %r9,%r8
140224ad2:	72 dc                	jb     0x140224ab0
140224ad4:	85 db                	test   %ebx,%ebx
140224ad6:	74 3c                	je     0x140224b14
140224ad8:	48 8b 55 40          	mov    0x40(%rbp),%rdx
140224adc:	48 ff c2             	inc    %rdx
140224adf:	48 3b 55 48          	cmp    0x48(%rbp),%rdx
140224ae3:	76 20                	jbe    0x140224b05
140224ae5:	48 8b 45 30          	mov    0x30(%rbp),%rax
140224ae9:	48 8b 00             	mov    (%rax),%rax
140224aec:	0f ae e8             	lfence
140224aef:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140224af3:	49 3b c4             	cmp    %r12,%rax
140224af6:	75 07                	jne    0x140224aff
140224af8:	e8 d3 19 00 00       	call   0x1402264d0
140224afd:	eb 06                	jmp    0x140224b05
140224aff:	ff 15 1b ef d5 00    	call   *0xd5ef1b(%rip)        # 0x140f83a20
140224b05:	48 8b 55 40          	mov    0x40(%rbp),%rdx
140224b09:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
140224b0d:	89 1c 91             	mov    %ebx,(%rcx,%rdx,4)
140224b10:	48 ff 45 40          	incq   0x40(%rbp)
140224b14:	d1 ff                	sar    $1,%edi
140224b16:	0f 85 76 ff ff ff    	jne    0x140224a92
140224b1c:	44 8b 64 24 34       	mov    0x34(%rsp),%r12d
140224b21:	8b c6                	mov    %esi,%eax
140224b23:	99                   	cltd
140224b24:	83 e2 1f             	and    $0x1f,%edx
140224b27:	03 c2                	add    %edx,%eax
140224b29:	8b c8                	mov    %eax,%ecx
140224b2b:	83 e0 1f             	and    $0x1f,%eax
140224b2e:	2b c2                	sub    %edx,%eax
140224b30:	c1 f9 05             	sar    $0x5,%ecx
140224b33:	44 8b d8             	mov    %eax,%r11d
140224b36:	01 8d d8 00 00 00    	add    %ecx,0xd8(%rbp)
140224b3c:	85 c0                	test   %eax,%eax
140224b3e:	0f 84 89 00 00 00    	je     0x140224bcd
140224b44:	45 8b cd             	mov    %r13d,%r9d
140224b47:	48 8b 7d 40          	mov    0x40(%rbp),%rdi
140224b4b:	4d 8b c5             	mov    %r13,%r8
140224b4e:	48 85 ff             	test   %rdi,%rdi
140224b51:	74 7a                	je     0x140224bcd
140224b53:	45 8b d6             	mov    %r14d,%r10d
140224b56:	44 2b d0             	sub    %eax,%r10d
140224b59:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140224b60:	48 8b 45 38          	mov    0x38(%rbp),%rax
140224b64:	4a 8d 14 80          	lea    (%rax,%r8,4),%rdx
140224b68:	8b 02                	mov    (%rdx),%eax
140224b6a:	8b d8                	mov    %eax,%ebx
140224b6c:	41 8b ca             	mov    %r10d,%ecx
140224b6f:	d3 eb                	shr    %cl,%ebx
140224b71:	41 8b cb             	mov    %r11d,%ecx
140224b74:	d3 e0                	shl    %cl,%eax
140224b76:	41 03 c1             	add    %r9d,%eax
140224b79:	89 02                	mov    %eax,(%rdx)
140224b7b:	44 8b cb             	mov    %ebx,%r9d
140224b7e:	49 ff c0             	inc    %r8
140224b81:	4c 3b c7             	cmp    %rdi,%r8
140224b84:	72 da                	jb     0x140224b60
140224b86:	85 db                	test   %ebx,%ebx
140224b88:	74 43                	je     0x140224bcd
140224b8a:	48 8b 55 40          	mov    0x40(%rbp),%rdx
140224b8e:	48 ff c2             	inc    %rdx
140224b91:	48 3b 55 48          	cmp    0x48(%rbp),%rdx
140224b95:	76 27                	jbe    0x140224bbe
140224b97:	48 8b 45 30          	mov    0x30(%rbp),%rax
140224b9b:	48 8b 00             	mov    (%rax),%rax
140224b9e:	48 8d 0d 2b 19 00 00 	lea    0x192b(%rip),%rcx        # 0x1402264d0
140224ba5:	0f ae e8             	lfence
140224ba8:	48 3b c1             	cmp    %rcx,%rax
140224bab:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140224baf:	75 07                	jne    0x140224bb8
140224bb1:	e8 1a 19 00 00       	call   0x1402264d0
140224bb6:	eb 06                	jmp    0x140224bbe
140224bb8:	ff 15 62 ee d5 00    	call   *0xd5ee62(%rip)        # 0x140f83a20
140224bbe:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
140224bc2:	48 8b 45 38          	mov    0x38(%rbp),%rax
140224bc6:	89 1c 88             	mov    %ebx,(%rax,%rcx,4)
140224bc9:	48 ff 45 40          	incq   0x40(%rbp)
140224bcd:	45 8b cd             	mov    %r13d,%r9d
140224bd0:	4c 8b 55 40          	mov    0x40(%rbp),%r10
140224bd4:	4d 8b c5             	mov    %r13,%r8
140224bd7:	4d 85 d2             	test   %r10,%r10
140224bda:	74 71                	je     0x140224c4d
140224bdc:	45 2b f4             	sub    %r12d,%r14d
140224bdf:	90                   	nop
140224be0:	48 8b 45 38          	mov    0x38(%rbp),%rax
140224be4:	4a 8d 14 80          	lea    (%rax,%r8,4),%rdx
140224be8:	8b 02                	mov    (%rdx),%eax
140224bea:	8b d8                	mov    %eax,%ebx
140224bec:	41 8b ce             	mov    %r14d,%ecx
140224bef:	d3 eb                	shr    %cl,%ebx
140224bf1:	41 8b cc             	mov    %r12d,%ecx
140224bf4:	d3 e0                	shl    %cl,%eax
140224bf6:	41 03 c1             	add    %r9d,%eax
140224bf9:	89 02                	mov    %eax,(%rdx)
140224bfb:	44 8b cb             	mov    %ebx,%r9d
140224bfe:	49 ff c0             	inc    %r8
140224c01:	4d 3b c2             	cmp    %r10,%r8
140224c04:	72 da                	jb     0x140224be0
140224c06:	85 db                	test   %ebx,%ebx
140224c08:	74 43                	je     0x140224c4d
140224c0a:	48 8b 55 40          	mov    0x40(%rbp),%rdx
140224c0e:	48 ff c2             	inc    %rdx
140224c11:	48 3b 55 48          	cmp    0x48(%rbp),%rdx
140224c15:	76 27                	jbe    0x140224c3e
140224c17:	48 8b 45 30          	mov    0x30(%rbp),%rax
140224c1b:	48 8b 00             	mov    (%rax),%rax
140224c1e:	48 8d 0d ab 18 00 00 	lea    0x18ab(%rip),%rcx        # 0x1402264d0
140224c25:	0f ae e8             	lfence
140224c28:	48 3b c1             	cmp    %rcx,%rax
140224c2b:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140224c2f:	75 07                	jne    0x140224c38
140224c31:	e8 9a 18 00 00       	call   0x1402264d0
140224c36:	eb 06                	jmp    0x140224c3e
140224c38:	ff 15 e2 ed d5 00    	call   *0xd5ede2(%rip)        # 0x140f83a20
140224c3e:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
140224c42:	48 8b 45 38          	mov    0x38(%rbp),%rax
140224c46:	89 1c 88             	mov    %ebx,(%rax,%rcx,4)
140224c49:	48 ff 45 40          	incq   0x40(%rbp)
140224c4d:	41 be 01 00 00 00    	mov    $0x1,%r14d
140224c53:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
140224c58:	8b 33                	mov    (%rbx),%esi
140224c5a:	f7 d6                	not    %esi
140224c5c:	83 e6 01             	and    $0x1,%esi
140224c5f:	89 74 24 30          	mov    %esi,0x30(%rsp)
140224c63:	48 8d bd e0 00 00 00 	lea    0xe0(%rbp),%rdi
140224c6a:	4d 85 ff             	test   %r15,%r15
140224c6d:	49 0f 45 ff          	cmovne %r15,%rdi
140224c71:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140224c76:	8b 5c 24 38          	mov    0x38(%rsp),%ebx
140224c7a:	f6 c3 02             	test   $0x2,%bl
140224c7d:	74 72                	je     0x140224cf1
140224c7f:	4c 8d 45 30          	lea    0x30(%rbp),%r8
140224c83:	48 8b d7             	mov    %rdi,%rdx
140224c86:	48 8d 4d 80          	lea    -0x80(%rbp),%rcx
140224c8a:	e8 11 f1 ff ff       	call   0x140223da0
140224c8f:	03 c6                	add    %esi,%eax
140224c91:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140224c96:	85 c0                	test   %eax,%eax
140224c98:	7f 44                	jg     0x140224cde
140224c9a:	ff 0e                	decl   (%rsi)
140224c9c:	ba 0a 00 00 00       	mov    $0xa,%edx
140224ca1:	48 8d 4d 80          	lea    -0x80(%rbp),%rcx
140224ca5:	e8 46 f1 fe ff       	call   0x140213df0
140224caa:	83 7c 24 70 00       	cmpl   $0x0,0x70(%rsp)
140224caf:	7d 2d                	jge    0x140224cde
140224cb1:	ba 0a 00 00 00       	mov    $0xa,%edx
140224cb6:	48 8d 8d e0 00 00 00 	lea    0xe0(%rbp),%rcx
140224cbd:	e8 2e f1 fe ff       	call   0x140213df0
140224cc2:	48 8d 85 e0 00 00 00 	lea    0xe0(%rbp),%rax
140224cc9:	48 3b f8             	cmp    %rax,%rdi
140224ccc:	74 10                	je     0x140224cde
140224cce:	0f ae e8             	lfence
140224cd1:	ba 0a 00 00 00       	mov    $0xa,%edx
140224cd6:	48 8b cf             	mov    %rdi,%rcx
140224cd9:	e8 12 f1 fe ff       	call   0x140213df0
140224cde:	f6 c3 04             	test   $0x4,%bl
140224ce1:	74 0e                	je     0x140224cf1
140224ce3:	8b 16                	mov    (%rsi),%edx
140224ce5:	ff c2                	inc    %edx
140224ce7:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
140224cec:	e8 ff f1 ff ff       	call   0x140223ef0
140224cf1:	83 7c 24 70 00       	cmpl   $0x0,0x70(%rsp)
140224cf6:	0f 8d be 09 00 00    	jge    0x1402256ba
140224cfc:	44 89 6c 24 70       	mov    %r13d,0x70(%rsp)
140224d01:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
140224d06:	48 8b 40 08          	mov    0x8(%rax),%rax
140224d0a:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140224d0f:	90                   	nop
140224d10:	48 8d 55 30          	lea    0x30(%rbp),%rdx
140224d14:	48 8d 4d 80          	lea    -0x80(%rbp),%rcx
140224d18:	e8 83 f4 ff ff       	call   0x1402241a0
140224d1d:	8b 7d 28             	mov    0x28(%rbp),%edi
140224d20:	85 c0                	test   %eax,%eax
140224d22:	0f 89 f8 03 00 00    	jns    0x140225120
140224d28:	44 89 6c 24 34       	mov    %r13d,0x34(%rsp)
140224d2d:	4c 8b 4d 88          	mov    -0x78(%rbp),%r9
140224d31:	8b 75 40             	mov    0x40(%rbp),%esi
140224d34:	e9 ed 05 00 00       	jmp    0x140225326
140224d39:	8b 17                	mov    (%rdi),%edx
140224d3b:	85 d2                	test   %edx,%edx
140224d3d:	0f 89 6b 01 00 00    	jns    0x140224eae
140224d43:	f7 da                	neg    %edx
140224d45:	48 8d 4d 80          	lea    -0x80(%rbp),%rcx
140224d49:	e8 92 f2 ff ff       	call   0x140223fe0
140224d4e:	48 8b 5d 90          	mov    -0x70(%rbp),%rbx
140224d52:	48 8d 3d 77 17 00 00 	lea    0x1777(%rip),%rdi        # 0x1402264d0
140224d59:	48 8b 85 f8 00 00 00 	mov    0xf8(%rbp),%rax
140224d60:	48 3b d8             	cmp    %rax,%rbx
140224d63:	76 34                	jbe    0x140224d99
140224d65:	48 8b 85 e0 00 00 00 	mov    0xe0(%rbp),%rax