140255b58:	4d 8b e1             	mov    %r9,%r12
140255b5b:	4d 8b f5             	mov    %r13,%r14
140255b5e:	49 8b e8             	mov    %r8,%rbp
140255b61:	49 d1 fe             	sar    $1,%r14
140255b64:	48 8b fa             	mov    %rdx,%rdi
140255b67:	48 8b f1             	mov    %rcx,%rsi
140255b6a:	4c 8b fa             	mov    %rdx,%r15
140255b6d:	48 8b da             	mov    %rdx,%rbx
140255b70:	49 3b d6             	cmp    %r14,%rdx
140255b73:	7d 47                	jge    0x140255bbc
140255b75:	48 03 db             	add    %rbx,%rbx
140255b78:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
140255b7d:	48 8d 53 02          	lea    0x2(%rbx),%rdx
140255b81:	48 c1 e2 04          	shl    $0x4,%rdx
140255b85:	48 03 d6             	add    %rsi,%rdx
140255b88:	4c 8d 42 f0          	lea    -0x10(%rdx),%r8
140255b8c:	e8 6f cf ff ff       	call   0x140252b00
140255b91:	0f b6 c0             	movzbl %al,%eax
140255b94:	48 03 ff             	add    %rdi,%rdi
140255b97:	48 83 f0 01          	xor    $0x1,%rax
140255b9b:	48 ff c0             	inc    %rax
140255b9e:	48 03 d8             	add    %rax,%rbx
140255ba1:	48 8b d3             	mov    %rbx,%rdx
140255ba4:	48 8d 0c fe          	lea    (%rsi,%rdi,8),%rcx
140255ba8:	48 c1 e2 04          	shl    $0x4,%rdx
140255bac:	48 03 d6             	add    %rsi,%rdx
140255baf:	e8 30 07 db ff       	call   0x1400062e4
140255bb4:	48 8b fb             	mov    %rbx,%rdi
140255bb7:	49 3b de             	cmp    %r14,%rbx
140255bba:	7c b9                	jl     0x140255b75
140255bbc:	49 3b de             	cmp    %r14,%rbx
140255bbf:	75 20                	jne    0x140255be1
140255bc1:	40 f6 c5 01          	test   $0x1,%bpl
140255bc5:	75 1a                	jne    0x140255be1
140255bc7:	48 03 ff             	add    %rdi,%rdi
140255bca:	48 c1 e5 04          	shl    $0x4,%rbp
140255bce:	48 8d 56 f0          	lea    -0x10(%rsi),%rdx
140255bd2:	48 03 d5             	add    %rbp,%rdx
140255bd5:	48 8d 0c fe          	lea    (%rsi,%rdi,8),%rcx
140255bd9:	e8 06 07 db ff       	call   0x1400062e4
140255bde:	49 8b fd             	mov    %r13,%rdi
140255be1:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
140255be6:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
140255beb:	4c 3b ff             	cmp    %rdi,%r15
140255bee:	7d 3c                	jge    0x140255c2c
140255bf0:	48 8d 5f ff          	lea    -0x1(%rdi),%rbx
140255bf4:	4d 8b c4             	mov    %r12,%r8
140255bf7:	48 d1 fb             	sar    $1,%rbx
140255bfa:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
140255bff:	48 8b eb             	mov    %rbx,%rbp
140255c02:	48 c1 e5 04          	shl    $0x4,%rbp
140255c06:	48 03 ee             	add    %rsi,%rbp
140255c09:	48 8b d5             	mov    %rbp,%rdx
140255c0c:	e8 ef ce ff ff       	call   0x140252b00
140255c11:	84 c0                	test   %al,%al
140255c13:	74 17                	je     0x140255c2c
140255c15:	48 03 ff             	add    %rdi,%rdi
140255c18:	48 8b d5             	mov    %rbp,%rdx
140255c1b:	48 8d 0c fe          	lea    (%rsi,%rdi,8),%rcx
140255c1f:	e8 c0 06 db ff       	call   0x1400062e4
140255c24:	48 8b fb             	mov    %rbx,%rdi
140255c27:	4c 3b fb             	cmp    %rbx,%r15
140255c2a:	7c c4                	jl     0x140255bf0
140255c2c:	48 03 ff             	add    %rdi,%rdi
140255c2f:	49 8b d4             	mov    %r12,%rdx
140255c32:	48 8d 0c fe          	lea    (%rsi,%rdi,8),%rcx
140255c36:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140255c3b:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140255c40:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140255c45:	48 83 c4 20          	add    $0x20,%rsp
140255c49:	41 5f                	pop    %r15
140255c4b:	41 5e                	pop    %r14
140255c4d:	41 5d                	pop    %r13
140255c4f:	41 5c                	pop    %r12
140255c51:	5f                   	pop    %rdi
140255c52:	e9 8d 06 db ff       	jmp    0x1400062e4
140255c57:	cc                   	int3
140255c58:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140255c5d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140255c62:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140255c67:	57                   	push   %rdi
140255c68:	41 56                	push   %r14
140255c6a:	41 57                	push   %r15
140255c6c:	48 83 ec 20          	sub    $0x20,%rsp
140255c70:	49 8b e8             	mov    %r8,%rbp
140255c73:	4c 8d 71 08          	lea    0x8(%rcx),%r14
140255c77:	4c 8b c1             	mov    %rcx,%r8
140255c7a:	48 8d 7a 08          	lea    0x8(%rdx),%rdi
140255c7e:	4c 8b f9             	mov    %rcx,%r15
140255c81:	49 8b d9             	mov    %r9,%rbx
140255c84:	49 8b c9             	mov    %r9,%rcx
140255c87:	48 8b f2             	mov    %rdx,%rsi
140255c8a:	e8 9d b9 ff ff       	call   0x14025162c
140255c8f:	84 c0                	test   %al,%al
140255c91:	74 18                	je     0x140255cab
140255c93:	49 8b 07             	mov    (%r15),%rax
140255c96:	4c 8b 06             	mov    (%rsi),%r8
140255c99:	48 89 06             	mov    %rax,(%rsi)
140255c9c:	49 8b 06             	mov    (%r14),%rax
140255c9f:	4d 89 07             	mov    %r8,(%r15)
140255ca2:	48 8b 0f             	mov    (%rdi),%rcx
140255ca5:	48 89 07             	mov    %rax,(%rdi)
140255ca8:	49 89 0e             	mov    %rcx,(%r14)
140255cab:	4c 8b c6             	mov    %rsi,%r8
140255cae:	48 8b d5             	mov    %rbp,%rdx
140255cb1:	48 8b cb             	mov    %rbx,%rcx
140255cb4:	e8 73 b9 ff ff       	call   0x14025162c
140255cb9:	84 c0                	test   %al,%al
140255cbb:	74 46                	je     0x140255d03
140255cbd:	48 8b 06             	mov    (%rsi),%rax
140255cc0:	4d 8b c7             	mov    %r15,%r8
140255cc3:	48 8b 4d 00          	mov    0x0(%rbp),%rcx
140255cc7:	48 8b d6             	mov    %rsi,%rdx
140255cca:	48 89 45 00          	mov    %rax,0x0(%rbp)
140255cce:	48 8b 07             	mov    (%rdi),%rax
140255cd1:	48 89 0e             	mov    %rcx,(%rsi)
140255cd4:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
140255cd8:	48 89 45 08          	mov    %rax,0x8(%rbp)
140255cdc:	48 89 0f             	mov    %rcx,(%rdi)
140255cdf:	48 8b cb             	mov    %rbx,%rcx
140255ce2:	e8 45 b9 ff ff       	call   0x14025162c
140255ce7:	84 c0                	test   %al,%al
140255ce9:	74 18                	je     0x140255d03
140255ceb:	49 8b 07             	mov    (%r15),%rax
140255cee:	48 8b 0e             	mov    (%rsi),%rcx
140255cf1:	48 89 06             	mov    %rax,(%rsi)
140255cf4:	49 8b 06             	mov    (%r14),%rax
140255cf7:	49 89 0f             	mov    %rcx,(%r15)
140255cfa:	48 8b 0f             	mov    (%rdi),%rcx
140255cfd:	48 89 07             	mov    %rax,(%rdi)
140255d00:	49 89 0e             	mov    %rcx,(%r14)
140255d03:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140255d08:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140255d0d:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140255d12:	48 83 c4 20          	add    $0x20,%rsp
140255d16:	41 5f                	pop    %r15
140255d18:	41 5e                	pop    %r14
140255d1a:	5f                   	pop    %rdi
140255d1b:	c3                   	ret
140255d1c:	48 8b c4             	mov    %rsp,%rax
140255d1f:	48 89 58 08          	mov    %rbx,0x8(%rax)
140255d23:	48 89 70 10          	mov    %rsi,0x10(%rax)
140255d27:	4c 89 48 20          	mov    %r9,0x20(%rax)
140255d2b:	57                   	push   %rdi
140255d2c:	41 56                	push   %r14
140255d2e:	41 57                	push   %r15
140255d30:	48 83 ec 20          	sub    $0x20,%rsp
140255d34:	4d 8b f8             	mov    %r8,%r15
140255d37:	48 8d 71 08          	lea    0x8(%rcx),%rsi
140255d3b:	4c 8b c1             	mov    %rcx,%r8
140255d3e:	48 8d 5a 08          	lea    0x8(%rdx),%rbx
140255d42:	4c 8b f1             	mov    %rcx,%r14
140255d45:	48 8b fa             	mov    %rdx,%rdi
140255d48:	48 8d 48 20          	lea    0x20(%rax),%rcx
140255d4c:	e8 5b bc ff ff       	call   0x1402519ac
140255d51:	84 c0                	test   %al,%al
140255d53:	74 18                	je     0x140255d6d
140255d55:	49 8b 06             	mov    (%r14),%rax
140255d58:	4c 8b 07             	mov    (%rdi),%r8
140255d5b:	48 89 07             	mov    %rax,(%rdi)
140255d5e:	48 8b 06             	mov    (%rsi),%rax
140255d61:	4d 89 06             	mov    %r8,(%r14)
140255d64:	48 8b 0b             	mov    (%rbx),%rcx
140255d67:	48 89 03             	mov    %rax,(%rbx)
140255d6a:	48 89 0e             	mov    %rcx,(%rsi)
140255d6d:	4c 8b c7             	mov    %rdi,%r8
140255d70:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
140255d75:	49 8b d7             	mov    %r15,%rdx
140255d78:	e8 2f bc ff ff       	call   0x1402519ac
140255d7d:	84 c0                	test   %al,%al
140255d7f:	74 46                	je     0x140255dc7
140255d81:	48 8b 07             	mov    (%rdi),%rax
140255d84:	4d 8b c6             	mov    %r14,%r8
140255d87:	49 8b 0f             	mov    (%r15),%rcx
140255d8a:	48 8b d7             	mov    %rdi,%rdx
140255d8d:	49 89 07             	mov    %rax,(%r15)
140255d90:	48 8b 03             	mov    (%rbx),%rax
140255d93:	48 89 0f             	mov    %rcx,(%rdi)
140255d96:	49 8b 4f 08          	mov    0x8(%r15),%rcx
140255d9a:	49 89 47 08          	mov    %rax,0x8(%r15)
140255d9e:	48 89 0b             	mov    %rcx,(%rbx)
140255da1:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
140255da6:	e8 01 bc ff ff       	call   0x1402519ac
140255dab:	84 c0                	test   %al,%al
140255dad:	74 18                	je     0x140255dc7
140255daf:	49 8b 06             	mov    (%r14),%rax
140255db2:	48 8b 0f             	mov    (%rdi),%rcx
140255db5:	48 89 07             	mov    %rax,(%rdi)
140255db8:	48 8b 06             	mov    (%rsi),%rax
140255dbb:	49 89 0e             	mov    %rcx,(%r14)
140255dbe:	48 8b 0b             	mov    (%rbx),%rcx
140255dc1:	48 89 03             	mov    %rax,(%rbx)
140255dc4:	48 89 0e             	mov    %rcx,(%rsi)
140255dc7:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140255dcc:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140255dd1:	48 83 c4 20          	add    $0x20,%rsp
140255dd5:	41 5f                	pop    %r15
140255dd7:	41 5e                	pop    %r14
140255dd9:	5f                   	pop    %rdi
140255dda:	c3                   	ret
140255ddb:	90                   	nop
140255ddc:	48 8b c4             	mov    %rsp,%rax
140255ddf:	48 89 58 08          	mov    %rbx,0x8(%rax)
140255de3:	48 89 70 10          	mov    %rsi,0x10(%rax)
140255de7:	4c 89 48 20          	mov    %r9,0x20(%rax)
140255deb:	57                   	push   %rdi
140255dec:	41 56                	push   %r14
140255dee:	41 57                	push   %r15
140255df0:	48 83 ec 20          	sub    $0x20,%rsp
140255df4:	4d 8b f8             	mov    %r8,%r15
140255df7:	48 8d 71 08          	lea    0x8(%rcx),%rsi
140255dfb:	4c 8b c1             	mov    %rcx,%r8
140255dfe:	48 8d 5a 08          	lea    0x8(%rdx),%rbx
140255e02:	4c 8b f1             	mov    %rcx,%r14
140255e05:	48 8b fa             	mov    %rdx,%rdi
140255e08:	48 8d 48 20          	lea    0x20(%rax),%rcx
140255e0c:	e8 ef cc ff ff       	call   0x140252b00
140255e11:	84 c0                	test   %al,%al
140255e13:	74 18                	je     0x140255e2d
140255e15:	49 8b 06             	mov    (%r14),%rax
140255e18:	4c 8b 07             	mov    (%rdi),%r8
140255e1b:	48 89 07             	mov    %rax,(%rdi)
140255e1e:	48 8b 06             	mov    (%rsi),%rax
140255e21:	4d 89 06             	mov    %r8,(%r14)
140255e24:	48 8b 0b             	mov    (%rbx),%rcx
140255e27:	48 89 03             	mov    %rax,(%rbx)
140255e2a:	48 89 0e             	mov    %rcx,(%rsi)
140255e2d:	4c 8b c7             	mov    %rdi,%r8
140255e30:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
140255e35:	49 8b d7             	mov    %r15,%rdx
140255e38:	e8 c3 cc ff ff       	call   0x140252b00
140255e3d:	84 c0                	test   %al,%al
140255e3f:	74 46                	je     0x140255e87
140255e41:	48 8b 07             	mov    (%rdi),%rax
140255e44:	4d 8b c6             	mov    %r14,%r8
140255e47:	49 8b 0f             	mov    (%r15),%rcx
140255e4a:	48 8b d7             	mov    %rdi,%rdx
140255e4d:	49 89 07             	mov    %rax,(%r15)
140255e50:	48 8b 03             	mov    (%rbx),%rax
140255e53:	48 89 0f             	mov    %rcx,(%rdi)
140255e56:	49 8b 4f 08          	mov    0x8(%r15),%rcx
140255e5a:	49 89 47 08          	mov    %rax,0x8(%r15)
140255e5e:	48 89 0b             	mov    %rcx,(%rbx)
140255e61:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
140255e66:	e8 95 cc ff ff       	call   0x140252b00
140255e6b:	84 c0                	test   %al,%al
140255e6d:	74 18                	je     0x140255e87
140255e6f:	49 8b 06             	mov    (%r14),%rax
140255e72:	48 8b 0f             	mov    (%rdi),%rcx
140255e75:	48 89 07             	mov    %rax,(%rdi)
140255e78:	48 8b 06             	mov    (%rsi),%rax
140255e7b:	49 89 0e             	mov    %rcx,(%r14)
140255e7e:	48 8b 0b             	mov    (%rbx),%rcx
140255e81:	48 89 03             	mov    %rax,(%rbx)
140255e84:	48 89 0e             	mov    %rcx,(%rsi)
140255e87:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140255e8c:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140255e91:	48 83 c4 20          	add    $0x20,%rsp
140255e95:	41 5f                	pop    %r15
140255e97:	41 5e                	pop    %r14
140255e99:	5f                   	pop    %rdi
140255e9a:	c3                   	ret
140255e9b:	90                   	nop
140255e9c:	48 8b c4             	mov    %rsp,%rax
140255e9f:	48 89 58 18          	mov    %rbx,0x18(%rax)
140255ea3:	48 89 50 10          	mov    %rdx,0x10(%rax)
140255ea7:	55                   	push   %rbp
140255ea8:	56                   	push   %rsi
140255ea9:	57                   	push   %rdi
140255eaa:	41 54                	push   %r12
140255eac:	41 55                	push   %r13
140255eae:	41 56                	push   %r14
140255eb0:	41 57                	push   %r15
140255eb2:	48 8d 68 a1          	lea    -0x5f(%rax),%rbp
140255eb6:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
140255ebd:	0f 29 70 b8          	movaps %xmm6,-0x48(%rax)
140255ec1:	48 8b fa             	mov    %rdx,%rdi
140255ec4:	45 33 ff             	xor    %r15d,%r15d
140255ec7:	45 33 ed             	xor    %r13d,%r13d
140255eca:	45 33 e4             	xor    %r12d,%r12d
140255ecd:	0f 57 c0             	xorps  %xmm0,%xmm0
140255ed0:	66 0f 7f 45 c7       	movdqa %xmm0,-0x39(%rbp)
140255ed5:	f3 0f 7f 45 f7       	movdqu %xmm0,-0x9(%rbp)
140255eda:	4c 21 65 07          	and    %r12,0x7(%rbp)
140255ede:	48 8b 42 08          	mov    0x8(%rdx),%rax
140255ee2:	48 85 c0             	test   %rax,%rax
140255ee5:	74 04                	je     0x140255eeb
140255ee7:	f0 ff 40 08          	lock incl 0x8(%rax)
140255eeb:	48 8b 02             	mov    (%rdx),%rax
140255eee:	48 89 45 e7          	mov    %rax,-0x19(%rbp)
140255ef2:	48 8b 5a 08          	mov    0x8(%rdx),%rbx
140255ef6:	48 89 5d ef          	mov    %rbx,-0x11(%rbp)
140255efa:	45 33 c0             	xor    %r8d,%r8d
140255efd:	48 8d 55 f7          	lea    -0x9(%rbp),%rdx
140255f01:	48 8d 4d e7          	lea    -0x19(%rbp),%rcx
140255f05:	e8 aa 58 f4 ff       	call   0x14019b7b4
140255f0a:	0f 28 f0             	movaps %xmm0,%xmm6
140255f0d:	83 ce ff             	or     $0xffffffff,%esi
140255f10:	48 85 db             	test   %rbx,%rbx
140255f13:	74 36                	je     0x140255f4b
140255f15:	8b c6                	mov    %esi,%eax
140255f17:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140255f1c:	03 c6                	add    %esi,%eax
140255f1e:	75 2b                	jne    0x140255f4b
140255f20:	48 8b 03             	mov    (%rbx),%rax
140255f23:	48 8b cb             	mov    %rbx,%rcx
140255f26:	48 8b 00             	mov    (%rax),%rax
140255f29:	ff 15 09 6d 8b 00    	call   *0x8b6d09(%rip)        # 0x140b0cc38
140255f2f:	8b c6                	mov    %esi,%eax
140255f31:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140255f36:	03 c6                	add    %esi,%eax
140255f38:	75 11                	jne    0x140255f4b
140255f3a:	48 8b 03             	mov    (%rbx),%rax
140255f3d:	48 8b cb             	mov    %rbx,%rcx
140255f40:	48 8b 40 08          	mov    0x8(%rax),%rax
140255f44:	ff 15 ee 6c 8b 00    	call   *0x8b6cee(%rip)        # 0x140b0cc38
140255f4a:	90                   	nop
140255f4b:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
140255f4f:	48 85 c9             	test   %rcx,%rcx
140255f52:	74 34                	je     0x140255f88
140255f54:	48 8b 45 07          	mov    0x7(%rbp),%rax
140255f58:	48 2b c1             	sub    %rcx,%rax
140255f5b:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
140255f5f:	48 8b d1             	mov    %rcx,%rdx
140255f62:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140255f68:	72 18                	jb     0x140255f82
140255f6a:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140255f6e:	48 2b d1             	sub    %rcx,%rdx
140255f71:	48 8d 42 f8          	lea    -0x8(%rdx),%rax
140255f75:	48 83 f8 1f          	cmp    $0x1f,%rax
140255f79:	76 07                	jbe    0x140255f82
140255f7b:	ff 15 17 6a 8b 00    	call   *0x8b6a17(%rip)        # 0x140b0c998
140255f81:	cc                   	int3
140255f82:	ff 15 38 69 8b 00    	call   *0x8b6938(%rip)        # 0x140b0c8c0
140255f88:	45 33 f6             	xor    %r14d,%r14d
140255f8b:	48 8b 0f             	mov    (%rdi),%rcx
140255f8e:	48 8b 01             	mov    (%rcx),%rax
140255f91:	48 8b 40 40          	mov    0x40(%rax),%rax
140255f95:	ff 15 9d 6c 8b 00    	call   *0x8b6c9d(%rip)        # 0x140b0cc38
140255f9b:	48 85 c0             	test   %rax,%rax
140255f9e:	0f 84 46 01 00 00    	je     0x1402560ea
140255fa4:	48 8b 0f             	mov    (%rdi),%rcx
140255fa7:	48 8b 01             	mov    (%rcx),%rax
140255faa:	4d 8b c6             	mov    %r14,%r8
140255fad:	48 8d 55 e7          	lea    -0x19(%rbp),%rdx
140255fb1:	48 8b 40 30          	mov    0x30(%rax),%rax
140255fb5:	ff 15 7d 6c 8b 00    	call   *0x8b6c7d(%rip)        # 0x140b0cc38
140255fbb:	48 8b d0             	mov    %rax,%rdx
140255fbe:	48 8d 4d b7          	lea    -0x49(%rbp),%rcx
140255fc2:	e8 29 66 dc ff       	call   0x14001c5f0