1400848ea:	48 83 7f 08 00       	cmpq   $0x0,0x8(%rdi)
1400848ef:	0f 86 27 02 00 00    	jbe    0x140084b1c
1400848f5:	4c 8b 37             	mov    (%rdi),%r14
1400848f8:	49 8b 1e             	mov    (%r14),%rbx
1400848fb:	48 8b f3             	mov    %rbx,%rsi
1400848fe:	49 3b de             	cmp    %r14,%rbx
140084901:	0f 84 8e 00 00 00    	je     0x140084995
140084907:	48 8b 43 10          	mov    0x10(%rbx),%rax
14008490b:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
14008490f:	74 1e                	je     0x14008492f
140084911:	48 8b 43 08          	mov    0x8(%rbx),%rax
140084915:	eb 0d                	jmp    0x140084924
140084917:	48 3b 58 10          	cmp    0x10(%rax),%rbx
14008491b:	75 0d                	jne    0x14008492a
14008491d:	48 8b d8             	mov    %rax,%rbx
140084920:	48 8b 40 08          	mov    0x8(%rax),%rax
140084924:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
140084928:	74 ed                	je     0x140084917
14008492a:	48 8b d8             	mov    %rax,%rbx
14008492d:	eb 1b                	jmp    0x14008494a
14008492f:	48 8b d8             	mov    %rax,%rbx
140084932:	48 8b 08             	mov    (%rax),%rcx
140084935:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
140084939:	75 0f                	jne    0x14008494a
14008493b:	48 8b d9             	mov    %rcx,%rbx
14008493e:	48 8b 01             	mov    (%rcx),%rax
140084941:	48 8b c8             	mov    %rax,%rcx
140084944:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
140084948:	74 f1                	je     0x14008493b
14008494a:	49 3b de             	cmp    %r14,%rbx
14008494d:	74 36                	je     0x140084985
14008494f:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
140084953:	4c 8b 7e 20          	mov    0x20(%rsi),%r15
140084957:	48 8b 01             	mov    (%rcx),%rax
14008495a:	48 8b 80 00 01 00 00 	mov    0x100(%rax),%rax
140084961:	ff 15 d1 82 a8 00    	call   *0xa882d1(%rip)        # 0x140b0cc38
140084967:	8b e8                	mov    %eax,%ebp
140084969:	49 8b 17             	mov    (%r15),%rdx
14008496c:	49 8b cf             	mov    %r15,%rcx
14008496f:	48 8b 82 00 01 00 00 	mov    0x100(%rdx),%rax
140084976:	ff 15 bc 82 a8 00    	call   *0xa882bc(%rip)        # 0x140b0cc38
14008497c:	3b e8                	cmp    %eax,%ebp
14008497e:	7d 87                	jge    0x140084907
140084980:	48 8b f3             	mov    %rbx,%rsi
140084983:	eb 82                	jmp    0x140084907
140084985:	40 8a ac 24 98 00 00 	mov    0x98(%rsp),%bpl
14008498c:	00
14008498d:	4c 8b bc 24 90 00 00 	mov    0x90(%rsp),%r15
140084994:	00
140084995:	48 8b 46 28          	mov    0x28(%rsi),%rax
140084999:	48 85 c0             	test   %rax,%rax
14008499c:	74 04                	je     0x1400849a2
14008499e:	f0 ff 40 08          	lock incl 0x8(%rax)
1400849a2:	48 8b 5e 20          	mov    0x20(%rsi),%rbx
1400849a6:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
1400849ab:	4c 8b 76 28          	mov    0x28(%rsi),%r14
1400849af:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
1400849b4:	f3 0f 10 5f 20       	movss  0x20(%rdi),%xmm3
1400849b9:	f3 0f 10 57 10       	movss  0x10(%rdi),%xmm2
1400849be:	f3 0f 58 57 1c       	addss  0x1c(%rdi),%xmm2
1400849c3:	f3 0f 10 4f 18       	movss  0x18(%rdi),%xmm1
1400849c8:	f3 0f 10 47 14       	movss  0x14(%rdi),%xmm0
1400849cd:	f3 0f 5c 47 10       	subss  0x10(%rdi),%xmm0
1400849d2:	f3 0f 11 44 24 20    	movss  %xmm0,0x20(%rsp)
1400849d8:	f3 0f 11 4c 24 24    	movss  %xmm1,0x24(%rsp)
1400849de:	f3 0f 11 54 24 28    	movss  %xmm2,0x28(%rsp)
1400849e4:	f3 0f 11 5c 24 2c    	movss  %xmm3,0x2c(%rsp)
1400849ea:	49 8b 4d 00          	mov    0x0(%r13),%rcx
1400849ee:	48 8b 01             	mov    (%rcx),%rax
1400849f1:	48 8b 80 a8 00 00 00 	mov    0xa8(%rax),%rax
1400849f8:	ff 15 3a 82 a8 00    	call   *0xa8823a(%rip)        # 0x140b0cc38
1400849fe:	f3 0f 10 15 2e c7 b2 	movss  0xb2c72e(%rip),%xmm2        # 0x140bb1134
140084a05:	00
140084a06:	48 8b d0             	mov    %rax,%rdx
140084a09:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140084a0e:	e8 e9 18 13 00       	call   0x1401b62fc
140084a13:	84 c0                	test   %al,%al
140084a15:	0f 84 c2 00 00 00    	je     0x140084add
140084a1b:	49 8b 75 00          	mov    0x0(%r13),%rsi
140084a1f:	48 8b 03             	mov    (%rbx),%rax
140084a22:	48 8b cb             	mov    %rbx,%rcx
140084a25:	48 8b 80 00 01 00 00 	mov    0x100(%rax),%rax
140084a2c:	ff 15 06 82 a8 00    	call   *0xa88206(%rip)        # 0x140b0cc38
140084a32:	8b d8                	mov    %eax,%ebx
140084a34:	48 8b 16             	mov    (%rsi),%rdx
140084a37:	48 8b ce             	mov    %rsi,%rcx
140084a3a:	48 8b 82 00 01 00 00 	mov    0x100(%rdx),%rax
140084a41:	ff 15 f1 81 a8 00    	call   *0xa881f1(%rip)        # 0x140b0cc38
140084a47:	3b d8                	cmp    %eax,%ebx
140084a49:	7f 7f                	jg     0x140084aca
140084a4b:	40 84 ed             	test   %bpl,%bpl
140084a4e:	0f 84 89 00 00 00    	je     0x140084add
140084a54:	8b 47 24             	mov    0x24(%rdi),%eax
140084a57:	c1 e8 10             	shr    $0x10,%eax
140084a5a:	44 0f b6 d8          	movzbl %al,%r11d
140084a5e:	8b 47 24             	mov    0x24(%rdi),%eax
140084a61:	c1 e8 08             	shr    $0x8,%eax
140084a64:	44 0f b6 d0          	movzbl %al,%r10d
140084a68:	0f b6 57 24          	movzbl 0x24(%rdi),%edx
140084a6c:	44 8b 84 24 a0 00 00 	mov    0xa0(%rsp),%r8d
140084a73:	00
140084a74:	41 8b c0             	mov    %r8d,%eax
140084a77:	c1 e8 10             	shr    $0x10,%eax
140084a7a:	44 0f b6 c8          	movzbl %al,%r9d
140084a7e:	41 8b c0             	mov    %r8d,%eax
140084a81:	c1 e8 08             	shr    $0x8,%eax
140084a84:	0f b6 c8             	movzbl %al,%ecx
140084a87:	41 0f b6 c0          	movzbl %r8b,%eax
140084a8b:	2b d0                	sub    %eax,%edx
140084a8d:	44 8b c2             	mov    %edx,%r8d
140084a90:	41 f7 d8             	neg    %r8d
140084a93:	44 0f 48 c2          	cmovs  %edx,%r8d
140084a97:	44 2b d1             	sub    %ecx,%r10d
140084a9a:	41 8b c2             	mov    %r10d,%eax
140084a9d:	f7 d8                	neg    %eax
140084a9f:	41 0f 48 c2          	cmovs  %r10d,%eax
140084aa3:	44 03 c0             	add    %eax,%r8d
140084aa6:	45 2b d9             	sub    %r9d,%r11d
140084aa9:	41 8b c3             	mov    %r11d,%eax
140084aac:	f7 d8                	neg    %eax
140084aae:	41 0f 48 c3          	cmovs  %r11d,%eax
140084ab2:	44 03 c0             	add    %eax,%r8d
140084ab5:	66 41 0f 6e c8       	movd   %r8d,%xmm1
140084aba:	0f 5b c9             	cvtdq2ps %xmm1,%xmm1
140084abd:	f3 0f 10 05 d7 c7 b2 	movss  0xb2c7d7(%rip),%xmm0        # 0x140bb129c
140084ac4:	00
140084ac5:	0f 2f c1             	comiss %xmm1,%xmm0
140084ac8:	76 13                	jbe    0x140084add
140084aca:	4d 8b c5             	mov    %r13,%r8
140084acd:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140084ad2:	48 8b cf             	mov    %rdi,%rcx
140084ad5:	e8 6e 77 f9 ff       	call   0x14001c248
140084ada:	45 32 e4             	xor    %r12b,%r12b
140084add:	4d 85 f6             	test   %r14,%r14
140084ae0:	74 3a                	je     0x140084b1c
140084ae2:	83 cb ff             	or     $0xffffffff,%ebx
140084ae5:	8b c3                	mov    %ebx,%eax
140084ae7:	f0 41 0f c1 46 08    	lock xadd %eax,0x8(%r14)
140084aed:	03 c3                	add    %ebx,%eax
140084aef:	75 2b                	jne    0x140084b1c
140084af1:	49 8b 06             	mov    (%r14),%rax
140084af4:	49 8b ce             	mov    %r14,%rcx
140084af7:	48 8b 00             	mov    (%rax),%rax
140084afa:	ff 15 38 81 a8 00    	call   *0xa88138(%rip)        # 0x140b0cc38
140084b00:	8b c3                	mov    %ebx,%eax
140084b02:	f0 41 0f c1 46 0c    	lock xadd %eax,0xc(%r14)
140084b08:	03 c3                	add    %ebx,%eax
140084b0a:	75 10                	jne    0x140084b1c
140084b0c:	49 8b 06             	mov    (%r14),%rax
140084b0f:	49 8b ce             	mov    %r14,%rcx
140084b12:	48 8b 40 08          	mov    0x8(%rax),%rax
140084b16:	ff 15 1c 81 a8 00    	call   *0xa8811c(%rip)        # 0x140b0cc38
140084b1c:	48 83 c7 30          	add    $0x30,%rdi
140084b20:	45 84 e4             	test   %r12b,%r12b
140084b23:	0f 85 b7 fd ff ff    	jne    0x1400848e0
140084b29:	45 84 e4             	test   %r12b,%r12b
140084b2c:	0f 94 c0             	sete   %al
140084b2f:	48 8b 9c 24 a8 00 00 	mov    0xa8(%rsp),%rbx
140084b36:	00
140084b37:	48 83 c4 50          	add    $0x50,%rsp
140084b3b:	41 5f                	pop    %r15
140084b3d:	41 5e                	pop    %r14
140084b3f:	41 5d                	pop    %r13
140084b41:	41 5c                	pop    %r12
140084b43:	5f                   	pop    %rdi
140084b44:	5e                   	pop    %rsi
140084b45:	5d                   	pop    %rbp
140084b46:	c3                   	ret
140084b47:	90                   	nop
140084b48:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140084b4d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140084b52:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140084b57:	41 56                	push   %r14
140084b59:	48 83 ec 30          	sub    $0x30,%rsp
140084b5d:	4c 8b f2             	mov    %rdx,%r14
140084b60:	48 8b d9             	mov    %rcx,%rbx
140084b63:	b9 30 00 00 00       	mov    $0x30,%ecx
140084b68:	ff 15 5a 7d a8 00    	call   *0xa87d5a(%rip)        # 0x140b0c8c8
140084b6e:	48 8b f8             	mov    %rax,%rdi
140084b71:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140084b76:	48 85 c0             	test   %rax,%rax
140084b79:	75 07                	jne    0x140084b82
140084b7b:	ff 15 17 79 a8 00    	call   *0xa87917(%rip)        # 0x140b0c498
140084b81:	90                   	nop
140084b82:	b8 01 00 00 00       	mov    $0x1,%eax
140084b87:	89 47 08             	mov    %eax,0x8(%rdi)
140084b8a:	89 47 0c             	mov    %eax,0xc(%rdi)
140084b8d:	48 8d 05 2c 17 a9 00 	lea    0xa9172c(%rip),%rax        # 0x140b162c0
140084b94:	48 89 07             	mov    %rax,(%rdi)
140084b97:	48 8d 77 10          	lea    0x10(%rdi),%rsi
140084b9b:	49 8b d6             	mov    %r14,%rdx
140084b9e:	48 8b ce             	mov    %rsi,%rcx
140084ba1:	e8 ba 3d 00 00       	call   0x140088960
140084ba6:	48 89 33             	mov    %rsi,(%rbx)
140084ba9:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140084bad:	48 8b c3             	mov    %rbx,%rax
140084bb0:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140084bb5:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140084bba:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140084bbf:	90                   	nop
140084bc0:	48 83 c4 30          	add    $0x30,%rsp
140084bc4:	41 5e                	pop    %r14
140084bc6:	c3                   	ret
140084bc7:	90                   	nop
140084bc8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140084bcd:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140084bd2:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140084bd7:	41 56                	push   %r14
140084bd9:	48 83 ec 30          	sub    $0x30,%rsp
140084bdd:	49 8b d8             	mov    %r8,%rbx
140084be0:	4c 8b f2             	mov    %rdx,%r14
140084be3:	48 8b f1             	mov    %rcx,%rsi
140084be6:	b9 28 00 00 00       	mov    $0x28,%ecx
140084beb:	ff 15 d7 7c a8 00    	call   *0xa87cd7(%rip)        # 0x140b0c8c8
140084bf1:	48 8b f8             	mov    %rax,%rdi
140084bf4:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
140084bf9:	48 85 c0             	test   %rax,%rax
140084bfc:	75 07                	jne    0x140084c05
140084bfe:	ff 15 94 78 a8 00    	call   *0xa87894(%rip)        # 0x140b0c498
140084c04:	90                   	nop
140084c05:	ba 01 00 00 00       	mov    $0x1,%edx
140084c0a:	89 50 08             	mov    %edx,0x8(%rax)
140084c0d:	89 50 0c             	mov    %edx,0xc(%rax)
140084c10:	48 8d 05 d1 16 a9 00 	lea    0xa916d1(%rip),%rax        # 0x140b162e8
140084c17:	48 89 07             	mov    %rax,(%rdi)
140084c1a:	8a 03                	mov    (%rbx),%al
140084c1c:	49 8b 0e             	mov    (%r14),%rcx
140084c1f:	49 83 26 00          	andq   $0x0,(%r14)
140084c23:	49 8b 5e 08          	mov    0x8(%r14),%rbx
140084c27:	49 83 66 08 00       	andq   $0x0,0x8(%r14)
140084c2c:	48 83 67 10 00       	andq   $0x0,0x10(%rdi)
140084c31:	48 83 67 18 00       	andq   $0x0,0x18(%rdi)
140084c36:	48 85 db             	test   %rbx,%rbx
140084c39:	74 04                	je     0x140084c3f
140084c3b:	f0 01 53 08          	lock add %edx,0x8(%rbx)
140084c3f:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
140084c43:	48 89 5f 18          	mov    %rbx,0x18(%rdi)
140084c47:	88 47 20             	mov    %al,0x20(%rdi)
140084c4a:	48 85 db             	test   %rbx,%rbx
140084c4d:	74 3e                	je     0x140084c8d
140084c4f:	41 83 ce ff          	or     $0xffffffff,%r14d
140084c53:	41 8b c6             	mov    %r14d,%eax
140084c56:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140084c5b:	41 03 c6             	add    %r14d,%eax
140084c5e:	75 2d                	jne    0x140084c8d
140084c60:	48 8b 03             	mov    (%rbx),%rax
140084c63:	48 8b cb             	mov    %rbx,%rcx
140084c66:	48 8b 00             	mov    (%rax),%rax
140084c69:	ff 15 c9 7f a8 00    	call   *0xa87fc9(%rip)        # 0x140b0cc38
140084c6f:	41 8b c6             	mov    %r14d,%eax
140084c72:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140084c77:	41 03 c6             	add    %r14d,%eax
140084c7a:	75 11                	jne    0x140084c8d
140084c7c:	48 8b 03             	mov    (%rbx),%rax
140084c7f:	48 8b cb             	mov    %rbx,%rcx
140084c82:	48 8b 40 08          	mov    0x8(%rax),%rax
140084c86:	ff 15 ac 7f a8 00    	call   *0xa87fac(%rip)        # 0x140b0cc38
140084c8c:	90                   	nop
140084c8d:	48 8d 47 10          	lea    0x10(%rdi),%rax
140084c91:	48 89 06             	mov    %rax,(%rsi)
140084c94:	48 89 7e 08          	mov    %rdi,0x8(%rsi)
140084c98:	48 8b c6             	mov    %rsi,%rax
140084c9b:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140084ca0:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140084ca5:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
140084caa:	48 83 c4 30          	add    $0x30,%rsp
140084cae:	41 5e                	pop    %r14
140084cb0:	c3                   	ret
140084cb1:	90                   	nop
140084cb2:	90                   	nop
140084cb3:	90                   	nop
140084cb4:	48 3b ca             	cmp    %rdx,%rcx
140084cb7:	74 43                	je     0x140084cfc
140084cb9:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140084cbe:	57                   	push   %rdi
140084cbf:	48 83 ec 20          	sub    $0x20,%rsp
140084cc3:	48 8b fa             	mov    %rdx,%rdi
140084cc6:	48 8d 59 10          	lea    0x10(%rcx),%rbx
140084cca:	4c 8b 03             	mov    (%rbx),%r8
140084ccd:	48 8b d3             	mov    %rbx,%rdx
140084cd0:	48 8b cb             	mov    %rbx,%rcx
140084cd3:	4d 8b 40 08          	mov    0x8(%r8),%r8
140084cd7:	e8 50 99 f9 ff       	call   0x14001e62c
140084cdc:	48 8b 0b             	mov    (%rbx),%rcx
140084cdf:	ff 15 db 7b a8 00    	call   *0xa87bdb(%rip)        # 0x140b0c8c0
140084ce5:	48 83 c3 20          	add    $0x20,%rbx
140084ce9:	48 8d 43 f0          	lea    -0x10(%rbx),%rax
140084ced:	48 3b c7             	cmp    %rdi,%rax
140084cf0:	75 d8                	jne    0x140084cca
140084cf2:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140084cf7:	48 83 c4 20          	add    $0x20,%rsp
140084cfb:	5f                   	pop    %rdi
140084cfc:	c3                   	ret
140084cfd:	90                   	nop
140084cfe:	90                   	nop
140084cff:	90                   	nop
140084d00:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140084d05:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140084d0a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140084d0f:	57                   	push   %rdi
140084d10:	41 56                	push   %r14
140084d12:	41 57                	push   %r15
140084d14:	48 83 ec 40          	sub    $0x40,%rsp
140084d18:	49 8b f0             	mov    %r8,%rsi
140084d1b:	48 8b fa             	mov    %rdx,%rdi
140084d1e:	4c 8b f9             	mov    %rcx,%r15
140084d21:	4c 8b 31             	mov    (%rcx),%r14
140084d24:	48 8b 41 10          	mov    0x10(%rcx),%rax
140084d28:	49 2b c6             	sub    %r14,%rax
140084d2b:	48 c1 f8 03          	sar    $0x3,%rax
140084d2f:	48 b9 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rcx
140084d36:	aa aa aa
140084d39:	48 0f af c1          	imul   %rcx,%rax
140084d3d:	4c 3b c0             	cmp    %rax,%r8
140084d40:	76 42                	jbe    0x140084d84
140084d42:	49 8b d0             	mov    %r8,%rdx
140084d45:	49 8b cf             	mov    %r15,%rcx
140084d48:	e8 b3 02 00 00       	call   0x140085000
140084d4d:	49 8b 1f             	mov    (%r15),%rbx
140084d50:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140084d55:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140084d5a:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140084d5f:	48 85 f6             	test   %rsi,%rsi
140084d62:	74 1e                	je     0x140084d82
140084d64:	48 8b d7             	mov    %rdi,%rdx
140084d67:	48 8b cb             	mov    %rbx,%rcx
140084d6a:	e8 95 67 f9 ff       	call   0x14001b504
140084d6f:	48 83 c3 18          	add    $0x18,%rbx
140084d73:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140084d78:	48 83 c7 18          	add    $0x18,%rdi
140084d7c:	48 83 ee 01          	sub    $0x1,%rsi
140084d80:	75 e2                	jne    0x140084d64
140084d82:	eb 6e                	jmp    0x140084df2
140084d84:	49 8b 5f 08          	mov    0x8(%r15),%rbx
140084d88:	48 8b eb             	mov    %rbx,%rbp
140084d8b:	49 2b ee             	sub    %r14,%rbp
140084d8e:	48 c1 fd 03          	sar    $0x3,%rbp
140084d92:	48 0f af e9          	imul   %rcx,%rbp
140084d96:	48 3b f5             	cmp    %rbp,%rsi
140084d99:	0f 87 97 00 00 00    	ja     0x140084e36
140084d9f:	4b 8d 04 40          	lea    (%r8,%r8,2),%rax
140084da3:	49 8d 1c c6          	lea    (%r14,%rax,8),%rbx
140084da7:	48 85 f6             	test   %rsi,%rsi
140084daa:	74 29                	je     0x140084dd5
140084dac:	4c 3b f7             	cmp    %rdi,%r14
140084daf:	74 16                	je     0x140084dc7
140084db1:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140084db5:	4c 2b 07             	sub    (%rdi),%r8
140084db8:	49 c1 f8 04          	sar    $0x4,%r8
140084dbc:	48 8b 17             	mov    (%rdi),%rdx