140a22601:	4d 8b f1             	mov    %r9,%r14
140a22604:	4d 8b f8             	mov    %r8,%r15
140a22607:	4c 8b e2             	mov    %rdx,%r12
140a2260a:	48 8b d9             	mov    %rcx,%rbx
140a2260d:	b9 40 00 00 00       	mov    $0x40,%ecx
140a22612:	ff 15 b0 a2 0e 00    	call   *0xea2b0(%rip)        # 0x140b0c8c8
140a22618:	48 8b f8             	mov    %rax,%rdi
140a2261b:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140a22620:	48 85 c0             	test   %rax,%rax
140a22623:	75 07                	jne    0x140a2262c
140a22625:	ff 15 6d 9e 0e 00    	call   *0xe9e6d(%rip)        # 0x140b0c498
140a2262b:	90                   	nop
140a2262c:	b8 01 00 00 00       	mov    $0x1,%eax
140a22631:	89 47 08             	mov    %eax,0x8(%rdi)
140a22634:	89 47 0c             	mov    %eax,0xc(%rdi)
140a22637:	48 8d 05 12 a6 0f 00 	lea    0xfa612(%rip),%rax        # 0x140b1cc50
140a2263e:	48 89 07             	mov    %rax,(%rdi)
140a22641:	48 8d 77 10          	lea    0x10(%rdi),%rsi
140a22645:	48 8b 94 24 90 00 00 	mov    0x90(%rsp),%rdx
140a2264c:	00
140a2264d:	4c 8b 02             	mov    (%rdx),%r8
140a22650:	4d 85 c0             	test   %r8,%r8
140a22653:	75 04                	jne    0x140a22659
140a22655:	33 c0                	xor    %eax,%eax
140a22657:	eb 0f                	jmp    0x140a22668
140a22659:	49 8b 40 10          	mov    0x10(%r8),%rax
140a2265d:	48 63 40 04          	movslq 0x4(%rax),%rax
140a22661:	48 83 c0 10          	add    $0x10,%rax
140a22665:	49 03 c0             	add    %r8,%rax
140a22668:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140a2266d:	48 8b 42 08          	mov    0x8(%rdx),%rax
140a22671:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140a22676:	48 83 22 00          	andq   $0x0,(%rdx)
140a2267a:	48 83 62 08 00       	andq   $0x0,0x8(%rdx)
140a2267f:	49 8b 0e             	mov    (%r14),%rcx
140a22682:	48 85 c9             	test   %rcx,%rcx
140a22685:	75 05                	jne    0x140a2268c
140a22687:	45 33 c9             	xor    %r9d,%r9d
140a2268a:	eb 0a                	jmp    0x140a22696
140a2268c:	48 8b 01             	mov    (%rcx),%rax
140a2268f:	4c 63 48 10          	movslq 0x10(%rax),%r9
140a22693:	4c 03 c9             	add    %rcx,%r9
140a22696:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
140a2269b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140a226a0:	45 8b 07             	mov    (%r15),%r8d
140a226a3:	41 8b 14 24          	mov    (%r12),%edx
140a226a7:	48 8b ce             	mov    %rsi,%rcx
140a226aa:	e8 d1 68 74 ff       	call   0x140168f80
140a226af:	48 89 33             	mov    %rsi,(%rbx)
140a226b2:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140a226b6:	48 8b c3             	mov    %rbx,%rax
140a226b9:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
140a226be:	49 8b 5b 20          	mov    0x20(%r11),%rbx
140a226c2:	49 8b 73 28          	mov    0x28(%r11),%rsi
140a226c6:	49 8b 7b 30          	mov    0x30(%r11),%rdi
140a226ca:	49 8b e3             	mov    %r11,%rsp
140a226cd:	41 5f                	pop    %r15
140a226cf:	41 5e                	pop    %r14
140a226d1:	41 5c                	pop    %r12
140a226d3:	c3                   	ret
140a226d4:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140a226d9:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140a226de:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140a226e3:	57                   	push   %rdi
140a226e4:	41 56                	push   %r14
140a226e6:	41 57                	push   %r15
140a226e8:	48 83 ec 40          	sub    $0x40,%rsp
140a226ec:	48 8b da             	mov    %rdx,%rbx
140a226ef:	48 8b f1             	mov    %rcx,%rsi
140a226f2:	48 3b ca             	cmp    %rdx,%rcx
140a226f5:	0f 84 9d 00 00 00    	je     0x140a22798
140a226fb:	4d 8d 70 40          	lea    0x40(%r8),%r14
140a226ff:	48 8b d6             	mov    %rsi,%rdx
140a22702:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140a22707:	e8 84 c0 6e ff       	call   0x14010e790
140a2270c:	48 8b f8             	mov    %rax,%rdi
140a2270f:	48 8b d0             	mov    %rax,%rdx
140a22712:	4c 8b 78 18          	mov    0x18(%rax),%r15
140a22716:	49 83 ff 0f          	cmp    $0xf,%r15
140a2271a:	76 03                	jbe    0x140a2271f
140a2271c:	48 8b 10             	mov    (%rax),%rdx
140a2271f:	49 83 7e 18 0f       	cmpq   $0xf,0x18(%r14)
140a22724:	49 8b ce             	mov    %r14,%rcx
140a22727:	4d 8b 46 10          	mov    0x10(%r14),%r8
140a2272b:	76 03                	jbe    0x140a22730
140a2272d:	49 8b 0e             	mov    (%r14),%rcx
140a22730:	4c 3b 40 10          	cmp    0x10(%rax),%r8
140a22734:	75 0e                	jne    0x140a22744
140a22736:	e8 af fb 0c 00       	call   0x140af22ea
140a2273b:	85 c0                	test   %eax,%eax
140a2273d:	75 05                	jne    0x140a22744
140a2273f:	40 b5 01             	mov    $0x1,%bpl
140a22742:	eb 03                	jmp    0x140a22747
140a22744:	40 32 ed             	xor    %bpl,%bpl
140a22747:	49 83 ff 0f          	cmp    $0xf,%r15
140a2274b:	76 29                	jbe    0x140a22776
140a2274d:	48 8b 0f             	mov    (%rdi),%rcx
140a22750:	49 8d 47 01          	lea    0x1(%r15),%rax
140a22754:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140a2275a:	72 14                	jb     0x140a22770
140a2275c:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
140a22760:	48 2b ca             	sub    %rdx,%rcx
140a22763:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140a22767:	48 83 f8 1f          	cmp    $0x1f,%rax
140a2276b:	77 46                	ja     0x140a227b3
140a2276d:	48 8b ca             	mov    %rdx,%rcx
140a22770:	ff 15 4a a1 0e 00    	call   *0xea14a(%rip)        # 0x140b0c8c0
140a22776:	48 83 67 10 00       	andq   $0x0,0x10(%rdi)
140a2277b:	48 c7 47 18 0f 00 00 	movq   $0xf,0x18(%rdi)
140a22782:	00
140a22783:	c6 07 00             	movb   $0x0,(%rdi)
140a22786:	40 84 ed             	test   %bpl,%bpl
140a22789:	75 2f                	jne    0x140a227ba
140a2278b:	48 83 c6 20          	add    $0x20,%rsi
140a2278f:	48 3b f3             	cmp    %rbx,%rsi
140a22792:	0f 85 67 ff ff ff    	jne    0x140a226ff
140a22798:	32 c0                	xor    %al,%al
140a2279a:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
140a2279f:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
140a227a4:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
140a227a9:	48 83 c4 40          	add    $0x40,%rsp
140a227ad:	41 5f                	pop    %r15
140a227af:	41 5e                	pop    %r14
140a227b1:	5f                   	pop    %rdi
140a227b2:	c3                   	ret
140a227b3:	ff 15 df a1 0e 00    	call   *0xea1df(%rip)        # 0x140b0c998
140a227b9:	cc                   	int3
140a227ba:	b0 01                	mov    $0x1,%al
140a227bc:	eb dc                	jmp    0x140a2279a
140a227be:	cc                   	int3
140a227bf:	90                   	nop
140a227c0:	40 53                	rex push %rbx
140a227c2:	48 83 ec 30          	sub    $0x30,%rsp
140a227c6:	48 8b d9             	mov    %rcx,%rbx
140a227c9:	b9 18 00 00 00       	mov    $0x18,%ecx
140a227ce:	ff 15 f4 a0 0e 00    	call   *0xea0f4(%rip)        # 0x140b0c8c8
140a227d4:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140a227d9:	48 85 c0             	test   %rax,%rax
140a227dc:	75 07                	jne    0x140a227e5
140a227de:	ff 15 b4 9c 0e 00    	call   *0xe9cb4(%rip)        # 0x140b0c498
140a227e4:	90                   	nop
140a227e5:	b9 01 00 00 00       	mov    $0x1,%ecx
140a227ea:	89 48 08             	mov    %ecx,0x8(%rax)
140a227ed:	89 48 0c             	mov    %ecx,0xc(%rax)
140a227f0:	48 8d 0d a9 d7 10 00 	lea    0x10d7a9(%rip),%rcx        # 0x140b2ffa0
140a227f7:	48 89 08             	mov    %rcx,(%rax)
140a227fa:	48 8d 48 10          	lea    0x10(%rax),%rcx
140a227fe:	48 8d 15 63 ca 10 00 	lea    0x10ca63(%rip),%rdx        # 0x140b2f268
140a22805:	48 89 11             	mov    %rdx,(%rcx)
140a22808:	48 89 0b             	mov    %rcx,(%rbx)
140a2280b:	48 89 43 08          	mov    %rax,0x8(%rbx)
140a2280f:	48 8b c3             	mov    %rbx,%rax
140a22812:	48 83 c4 30          	add    $0x30,%rsp
140a22816:	5b                   	pop    %rbx
140a22817:	c3                   	ret
140a22818:	48 8b c4             	mov    %rsp,%rax
140a2281b:	48 89 58 08          	mov    %rbx,0x8(%rax)
140a2281f:	48 89 68 10          	mov    %rbp,0x10(%rax)
140a22823:	48 89 70 18          	mov    %rsi,0x18(%rax)
140a22827:	57                   	push   %rdi
140a22828:	48 83 ec 40          	sub    $0x40,%rsp
140a2282c:	48 8b f1             	mov    %rcx,%rsi
140a2282f:	48 8d 48 e0          	lea    -0x20(%rax),%rcx
140a22833:	e8 40 30 00 00       	call   0x140a25878
140a22838:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140a2283d:	4c 8b 43 18          	mov    0x18(%rbx),%r8
140a22841:	48 8b 53 10          	mov    0x10(%rbx),%rdx
140a22845:	48 85 d2             	test   %rdx,%rdx
140a22848:	0f 84 f6 00 00 00    	je     0x140a22944
140a2284e:	8b 42 08             	mov    0x8(%rdx),%eax
140a22851:	eb 0a                	jmp    0x140a2285d
140a22853:	8d 48 01             	lea    0x1(%rax),%ecx
140a22856:	f0 0f b1 4a 08       	lock cmpxchg %ecx,0x8(%rdx)
140a2285b:	74 0a                	je     0x140a22867
140a2285d:	85 c0                	test   %eax,%eax
140a2285f:	0f 84 df 00 00 00    	je     0x140a22944
140a22865:	eb ec                	jmp    0x140a22853
140a22867:	48 8b 43 08          	mov    0x8(%rbx),%rax
140a2286b:	48 8b 5b 10          	mov    0x10(%rbx),%rbx
140a2286f:	33 c9                	xor    %ecx,%ecx
140a22871:	33 ff                	xor    %edi,%edi
140a22873:	48 85 db             	test   %rbx,%rbx
140a22876:	74 0a                	je     0x140a22882
140a22878:	48 8b c8             	mov    %rax,%rcx
140a2287b:	48 8b fb             	mov    %rbx,%rdi
140a2287e:	f0 ff 43 0c          	lock incl 0xc(%rbx)
140a22882:	33 c0                	xor    %eax,%eax
140a22884:	33 d2                	xor    %edx,%edx
140a22886:	48 85 ff             	test   %rdi,%rdi
140a22889:	74 0a                	je     0x140a22895
140a2288b:	f0 ff 47 0c          	lock incl 0xc(%rdi)
140a2288f:	48 8b c1             	mov    %rcx,%rax
140a22892:	48 8b d7             	mov    %rdi,%rdx
140a22895:	49 89 40 08          	mov    %rax,0x8(%r8)
140a22899:	49 8b 48 10          	mov    0x10(%r8),%rcx
140a2289d:	49 89 50 10          	mov    %rdx,0x10(%r8)
140a228a1:	83 cd ff             	or     $0xffffffff,%ebp
140a228a4:	48 85 c9             	test   %rcx,%rcx
140a228a7:	74 18                	je     0x140a228c1
140a228a9:	8b c5                	mov    %ebp,%eax
140a228ab:	f0 0f c1 41 0c       	lock xadd %eax,0xc(%rcx)
140a228b0:	03 c5                	add    %ebp,%eax
140a228b2:	75 0d                	jne    0x140a228c1
140a228b4:	48 8b 01             	mov    (%rcx),%rax
140a228b7:	48 8b 40 08          	mov    0x8(%rax),%rax
140a228bb:	ff 15 77 a3 0e 00    	call   *0xea377(%rip)        # 0x140b0cc38
140a228c1:	48 85 ff             	test   %rdi,%rdi
140a228c4:	74 1b                	je     0x140a228e1
140a228c6:	8b c5                	mov    %ebp,%eax
140a228c8:	f0 0f c1 47 0c       	lock xadd %eax,0xc(%rdi)
140a228cd:	03 c5                	add    %ebp,%eax
140a228cf:	75 10                	jne    0x140a228e1
140a228d1:	48 8b 07             	mov    (%rdi),%rax
140a228d4:	48 8b cf             	mov    %rdi,%rcx
140a228d7:	48 8b 40 08          	mov    0x8(%rax),%rax
140a228db:	ff 15 57 a3 0e 00    	call   *0xea357(%rip)        # 0x140b0cc38
140a228e1:	48 85 db             	test   %rbx,%rbx
140a228e4:	74 35                	je     0x140a2291b
140a228e6:	8b c5                	mov    %ebp,%eax
140a228e8:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140a228ed:	03 c5                	add    %ebp,%eax
140a228ef:	75 2a                	jne    0x140a2291b
140a228f1:	48 8b 03             	mov    (%rbx),%rax
140a228f4:	48 8b cb             	mov    %rbx,%rcx
140a228f7:	48 8b 00             	mov    (%rax),%rax
140a228fa:	ff 15 38 a3 0e 00    	call   *0xea338(%rip)        # 0x140b0cc38
140a22900:	8b c5                	mov    %ebp,%eax
140a22902:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140a22907:	03 c5                	add    %ebp,%eax
140a22909:	75 10                	jne    0x140a2291b
140a2290b:	48 8b 03             	mov    (%rbx),%rax
140a2290e:	48 8b cb             	mov    %rbx,%rcx
140a22911:	48 8b 40 08          	mov    0x8(%rax),%rax
140a22915:	ff 15 1d a3 0e 00    	call   *0xea31d(%rip)        # 0x140b0cc38
140a2291b:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140a22920:	48 89 06             	mov    %rax,(%rsi)
140a22923:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140a22928:	48 89 46 08          	mov    %rax,0x8(%rsi)
140a2292c:	48 8b c6             	mov    %rsi,%rax
140a2292f:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140a22934:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140a22939:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140a2293e:	48 83 c4 40          	add    $0x40,%rsp
140a22942:	5f                   	pop    %rdi
140a22943:	c3                   	ret
140a22944:	e8 3f 69 5e ff       	call   0x140009288
140a22949:	90                   	nop
140a2294a:	eb 00                	jmp    0x140a2294c
140a2294c:	90                   	nop
140a2294d:	90                   	nop
140a2294e:	90                   	nop
140a2294f:	90                   	nop
140a22950:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140a22955:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140a2295a:	41 56                	push   %r14
140a2295c:	48 83 ec 30          	sub    $0x30,%rsp
140a22960:	48 8b f1             	mov    %rcx,%rsi
140a22963:	b9 48 00 00 00       	mov    $0x48,%ecx
140a22968:	ff 15 5a 9f 0e 00    	call   *0xe9f5a(%rip)        # 0x140b0c8c8
140a2296e:	48 8b d0             	mov    %rax,%rdx
140a22971:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140a22976:	48 85 c0             	test   %rax,%rax
140a22979:	75 07                	jne    0x140a22982
140a2297b:	ff 15 17 9b 0e 00    	call   *0xe9b17(%rip)        # 0x140b0c498
140a22981:	90                   	nop
140a22982:	41 b9 01 00 00 00    	mov    $0x1,%r9d
140a22988:	44 89 48 08          	mov    %r9d,0x8(%rax)
140a2298c:	44 89 48 0c          	mov    %r9d,0xc(%rax)
140a22990:	48 8d 05 e1 d5 10 00 	lea    0x10d5e1(%rip),%rax        # 0x140b2ff78
140a22997:	48 89 02             	mov    %rax,(%rdx)
140a2299a:	48 8d 42 10          	lea    0x10(%rdx),%rax
140a2299e:	0f 57 c0             	xorps  %xmm0,%xmm0
140a229a1:	33 c9                	xor    %ecx,%ecx
140a229a3:	0f 11 00             	movups %xmm0,(%rax)
140a229a6:	0f 11 40 10          	movups %xmm0,0x10(%rax)
140a229aa:	0f 11 40 20          	movups %xmm0,0x20(%rax)
140a229ae:	48 89 48 30          	mov    %rcx,0x30(%rax)
140a229b2:	48 21 48 08          	and    %rcx,0x8(%rax)
140a229b6:	48 21 48 10          	and    %rcx,0x10(%rax)
140a229ba:	48 8d 0d 17 ca 10 00 	lea    0x10ca17(%rip),%rcx        # 0x140b2f3d8
140a229c1:	48 89 08             	mov    %rcx,(%rax)
140a229c4:	48 83 60 18 00       	andq   $0x0,0x18(%rax)
140a229c9:	48 83 60 20 00       	andq   $0x0,0x20(%rax)
140a229ce:	48 83 60 28 00       	andq   $0x0,0x28(%rax)
140a229d3:	48 83 60 30 00       	andq   $0x0,0x30(%rax)
140a229d8:	48 89 06             	mov    %rax,(%rsi)
140a229db:	48 89 56 08          	mov    %rdx,0x8(%rsi)
140a229df:	48 85 c0             	test   %rax,%rax
140a229e2:	0f 84 a1 00 00 00    	je     0x140a22a89
140a229e8:	48 8b 48 10          	mov    0x10(%rax),%rcx
140a229ec:	48 85 c9             	test   %rcx,%rcx
140a229ef:	74 06                	je     0x140a229f7
140a229f1:	44 8b 41 08          	mov    0x8(%rcx),%r8d
140a229f5:	eb 03                	jmp    0x140a229fa
140a229f7:	45 33 c0             	xor    %r8d,%r8d
140a229fa:	45 85 c0             	test   %r8d,%r8d
140a229fd:	0f 85 86 00 00 00    	jne    0x140a22a89
140a22a03:	f0 44 01 4a 08       	lock add %r9d,0x8(%rdx)
140a22a08:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
140a22a0c:	33 c9                	xor    %ecx,%ecx
140a22a0e:	33 d2                	xor    %edx,%edx
140a22a10:	48 85 db             	test   %rbx,%rbx
140a22a13:	74 0b                	je     0x140a22a20
140a22a15:	48 8b d3             	mov    %rbx,%rdx
140a22a18:	f0 44 01 4b 0c       	lock add %r9d,0xc(%rbx)
140a22a1d:	48 8b c8             	mov    %rax,%rcx
140a22a20:	48 89 48 08          	mov    %rcx,0x8(%rax)
140a22a24:	48 8b 48 10          	mov    0x10(%rax),%rcx
140a22a28:	48 89 50 10          	mov    %rdx,0x10(%rax)
140a22a2c:	48 85 c9             	test   %rcx,%rcx
140a22a2f:	74 1a                	je     0x140a22a4b
140a22a31:	83 c8 ff             	or     $0xffffffff,%eax
140a22a34:	f0 0f c1 41 0c       	lock xadd %eax,0xc(%rcx)
140a22a39:	83 f8 01             	cmp    $0x1,%eax
140a22a3c:	75 0d                	jne    0x140a22a4b
140a22a3e:	48 8b 01             	mov    (%rcx),%rax
140a22a41:	48 8b 40 08          	mov    0x8(%rax),%rax
140a22a45:	ff 15 ed a1 0e 00    	call   *0xea1ed(%rip)        # 0x140b0cc38
140a22a4b:	48 85 db             	test   %rbx,%rbx
140a22a4e:	74 39                	je     0x140a22a89
140a22a50:	83 c8 ff             	or     $0xffffffff,%eax
140a22a53:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
140a22a58:	83 f8 01             	cmp    $0x1,%eax
140a22a5b:	75 2c                	jne    0x140a22a89
140a22a5d:	48 8b 03             	mov    (%rbx),%rax
140a22a60:	48 8b cb             	mov    %rbx,%rcx
140a22a63:	48 8b 00             	mov    (%rax),%rax
140a22a66:	ff 15 cc a1 0e 00    	call   *0xea1cc(%rip)        # 0x140b0cc38
140a22a6c:	83 c8 ff             	or     $0xffffffff,%eax
140a22a6f:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140a22a74:	83 f8 01             	cmp    $0x1,%eax
140a22a77:	75 10                	jne    0x140a22a89
140a22a79:	48 8b 03             	mov    (%rbx),%rax
140a22a7c:	48 8b cb             	mov    %rbx,%rcx
140a22a7f:	48 8b 40 08          	mov    0x8(%rax),%rax
140a22a83:	ff 15 af a1 0e 00    	call   *0xea1af(%rip)        # 0x140b0cc38
140a22a89:	48 8b c6             	mov    %rsi,%rax
140a22a8c:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140a22a91:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140a22a96:	48 83 c4 30          	add    $0x30,%rsp
140a22a9a:	41 5e                	pop    %r14
140a22a9c:	c3                   	ret
140a22a9d:	90                   	nop
140a22a9e:	90                   	nop
140a22a9f:	90                   	nop
140a22aa0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140a22aa5:	57                   	push   %rdi
140a22aa6:	48 83 ec 30          	sub    $0x30,%rsp
140a22aaa:	48 8b d9             	mov    %rcx,%rbx
140a22aad:	33 ff                	xor    %edi,%edi