1400415ff:	00 00 00
140041602:	e8 85 77 ff ff       	call   0x140038d8c
140041607:	48 8b 8e 20 01 00 00 	mov    0x120(%rsi),%rcx
14004160e:	e8 e1 03 00 00       	call   0x1400419f4
140041613:	33 c0                	xor    %eax,%eax
140041615:	48 89 9e 20 01 00 00 	mov    %rbx,0x120(%rsi)
14004161c:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140041621:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140041626:	48 83 c4 20          	add    $0x20,%rsp
14004162a:	5f                   	pop    %rdi
14004162b:	c3                   	ret
14004162c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140041631:	57                   	push   %rdi
140041632:	48 83 ec 20          	sub    $0x20,%rsp
140041636:	45 33 d2             	xor    %r10d,%r10d
140041639:	48 8b da             	mov    %rdx,%rbx
14004163c:	4c 8b d9             	mov    %rcx,%r11
14004163f:	4d 85 c9             	test   %r9,%r9
140041642:	75 2c                	jne    0x140041670
140041644:	48 85 c9             	test   %rcx,%rcx
140041647:	75 2c                	jne    0x140041675
140041649:	48 85 d2             	test   %rdx,%rdx
14004164c:	74 14                	je     0x140041662
14004164e:	e8 e5 a3 fe ff       	call   0x14002ba38
140041653:	bb 16 00 00 00       	mov    $0x16,%ebx
140041658:	89 18                	mov    %ebx,(%rax)
14004165a:	e8 45 9f fe ff       	call   0x14002b5a4
14004165f:	44 8b d3             	mov    %ebx,%r10d
140041662:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140041667:	41 8b c2             	mov    %r10d,%eax
14004166a:	48 83 c4 20          	add    $0x20,%rsp
14004166e:	5f                   	pop    %rdi
14004166f:	c3                   	ret
140041670:	4d 85 db             	test   %r11,%r11
140041673:	74 d9                	je     0x14004164e
140041675:	48 85 db             	test   %rbx,%rbx
140041678:	74 d4                	je     0x14004164e
14004167a:	4d 85 c9             	test   %r9,%r9
14004167d:	74 0b                	je     0x14004168a
14004167f:	4d 85 c0             	test   %r8,%r8
140041682:	75 06                	jne    0x14004168a
140041684:	66 44 89 11          	mov    %r10w,(%rcx)
140041688:	eb c4                	jmp    0x14004164e
14004168a:	49 8b f9             	mov    %r9,%rdi
14004168d:	66 44 39 11          	cmp    %r10w,(%rcx)
140041691:	74 10                	je     0x1400416a3
140041693:	48 83 c1 02          	add    $0x2,%rcx
140041697:	48 83 ea 01          	sub    $0x1,%rdx
14004169b:	75 f0                	jne    0x14004168d
14004169d:	66 45 89 13          	mov    %r10w,(%r11)
1400416a1:	eb ab                	jmp    0x14004164e
1400416a3:	49 83 f9 ff          	cmp    $0xffffffffffffffff,%r9
1400416a7:	75 1c                	jne    0x1400416c5
1400416a9:	4c 2b c1             	sub    %rcx,%r8
1400416ac:	41 0f b7 04 08       	movzwl (%r8,%rcx,1),%eax
1400416b1:	66 89 01             	mov    %ax,(%rcx)
1400416b4:	48 8d 49 02          	lea    0x2(%rcx),%rcx
1400416b8:	66 85 c0             	test   %ax,%ax
1400416bb:	74 36                	je     0x1400416f3
1400416bd:	48 83 ea 01          	sub    $0x1,%rdx
1400416c1:	75 e9                	jne    0x1400416ac
1400416c3:	eb 2e                	jmp    0x1400416f3
1400416c5:	4d 85 c9             	test   %r9,%r9
1400416c8:	74 20                	je     0x1400416ea
1400416ca:	41 0f b7 00          	movzwl (%r8),%eax
1400416ce:	4d 8d 40 02          	lea    0x2(%r8),%r8
1400416d2:	66 89 01             	mov    %ax,(%rcx)
1400416d5:	48 83 c1 02          	add    $0x2,%rcx
1400416d9:	66 85 c0             	test   %ax,%ax
1400416dc:	74 84                	je     0x140041662
1400416de:	48 83 ea 01          	sub    $0x1,%rdx
1400416e2:	74 06                	je     0x1400416ea
1400416e4:	48 83 ef 01          	sub    $0x1,%rdi
1400416e8:	75 e0                	jne    0x1400416ca
1400416ea:	48 85 ff             	test   %rdi,%rdi
1400416ed:	75 04                	jne    0x1400416f3
1400416ef:	66 44 89 11          	mov    %r10w,(%rcx)
1400416f3:	48 85 d2             	test   %rdx,%rdx
1400416f6:	0f 85 66 ff ff ff    	jne    0x140041662
1400416fc:	49 83 f9 ff          	cmp    $0xffffffffffffffff,%r9
140041700:	75 0f                	jne    0x140041711
140041702:	66 45 89 54 5b fe    	mov    %r10w,-0x2(%r11,%rbx,2)
140041708:	44 8d 52 50          	lea    0x50(%rdx),%r10d
14004170c:	e9 51 ff ff ff       	jmp    0x140041662
140041711:	66 45 89 13          	mov    %r10w,(%r11)
140041715:	e8 1e a3 fe ff       	call   0x14002ba38
14004171a:	bb 22 00 00 00       	mov    $0x22,%ebx
14004171f:	e9 34 ff ff ff       	jmp    0x140041658
140041724:	45 33 d2             	xor    %r10d,%r10d
140041727:	4c 8b c2             	mov    %rdx,%r8
14004172a:	66 44 39 11          	cmp    %r10w,(%rcx)
14004172e:	48 8b c1             	mov    %rcx,%rax
140041731:	74 29                	je     0x14004175c
140041733:	4d 8b c8             	mov    %r8,%r9
140041736:	66 45 39 10          	cmp    %r10w,(%r8)
14004173a:	74 16                	je     0x140041752
14004173c:	41 0f b7 10          	movzwl (%r8),%edx
140041740:	66 39 10             	cmp    %dx,(%rax)
140041743:	74 17                	je     0x14004175c
140041745:	49 83 c1 02          	add    $0x2,%r9
140041749:	41 0f b7 11          	movzwl (%r9),%edx
14004174d:	66 85 d2             	test   %dx,%dx
140041750:	75 ee                	jne    0x140041740
140041752:	48 83 c0 02          	add    $0x2,%rax
140041756:	66 44 39 10          	cmp    %r10w,(%rax)
14004175a:	eb d5                	jmp    0x140041731
14004175c:	48 2b c1             	sub    %rcx,%rax
14004175f:	48 d1 f8             	sar    $1,%rax
140041762:	c3                   	ret
140041763:	cc                   	int3
140041764:	4d 85 c0             	test   %r8,%r8
140041767:	75 18                	jne    0x140041781
140041769:	33 c0                	xor    %eax,%eax
14004176b:	c3                   	ret
14004176c:	0f b7 01             	movzwl (%rcx),%eax
14004176f:	66 85 c0             	test   %ax,%ax
140041772:	74 13                	je     0x140041787
140041774:	66 3b 02             	cmp    (%rdx),%ax
140041777:	75 0e                	jne    0x140041787
140041779:	48 83 c1 02          	add    $0x2,%rcx
14004177d:	48 83 c2 02          	add    $0x2,%rdx
140041781:	49 83 e8 01          	sub    $0x1,%r8
140041785:	75 e5                	jne    0x14004176c
140041787:	0f b7 01             	movzwl (%rcx),%eax
14004178a:	0f b7 0a             	movzwl (%rdx),%ecx
14004178d:	2b c1                	sub    %ecx,%eax
14004178f:	c3                   	ret
140041790:	f0 ff 41 10          	lock incl 0x10(%rcx)
140041794:	48 8b 81 e0 00 00 00 	mov    0xe0(%rcx),%rax
14004179b:	48 85 c0             	test   %rax,%rax
14004179e:	74 03                	je     0x1400417a3
1400417a0:	f0 ff 00             	lock incl (%rax)
1400417a3:	48 8b 81 f0 00 00 00 	mov    0xf0(%rcx),%rax
1400417aa:	48 85 c0             	test   %rax,%rax
1400417ad:	74 03                	je     0x1400417b2
1400417af:	f0 ff 00             	lock incl (%rax)
1400417b2:	48 8b 81 e8 00 00 00 	mov    0xe8(%rcx),%rax
1400417b9:	48 85 c0             	test   %rax,%rax
1400417bc:	74 03                	je     0x1400417c1
1400417be:	f0 ff 00             	lock incl (%rax)
1400417c1:	48 8b 81 00 01 00 00 	mov    0x100(%rcx),%rax
1400417c8:	48 85 c0             	test   %rax,%rax
1400417cb:	74 03                	je     0x1400417d0
1400417cd:	f0 ff 00             	lock incl (%rax)
1400417d0:	48 8d 41 38          	lea    0x38(%rcx),%rax
1400417d4:	41 b8 06 00 00 00    	mov    $0x6,%r8d
1400417da:	48 8d 15 e7 0b 03 00 	lea    0x30be7(%rip),%rdx        # 0x1400723c8
1400417e1:	48 39 50 f0          	cmp    %rdx,-0x10(%rax)
1400417e5:	74 0b                	je     0x1400417f2
1400417e7:	48 8b 10             	mov    (%rax),%rdx
1400417ea:	48 85 d2             	test   %rdx,%rdx
1400417ed:	74 03                	je     0x1400417f2
1400417ef:	f0 ff 02             	lock incl (%rdx)
1400417f2:	48 83 78 e8 00       	cmpq   $0x0,-0x18(%rax)
1400417f7:	74 0c                	je     0x140041805
1400417f9:	48 8b 50 f8          	mov    -0x8(%rax),%rdx
1400417fd:	48 85 d2             	test   %rdx,%rdx
140041800:	74 03                	je     0x140041805
140041802:	f0 ff 02             	lock incl (%rdx)
140041805:	48 83 c0 20          	add    $0x20,%rax
140041809:	49 83 e8 01          	sub    $0x1,%r8
14004180d:	75 cb                	jne    0x1400417da
14004180f:	48 8b 89 20 01 00 00 	mov    0x120(%rcx),%rcx
140041816:	e9 79 01 00 00       	jmp    0x140041994
14004181b:	cc                   	int3
14004181c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140041821:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140041826:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14004182b:	57                   	push   %rdi
14004182c:	48 83 ec 20          	sub    $0x20,%rsp
140041830:	48 8b 81 f8 00 00 00 	mov    0xf8(%rcx),%rax
140041837:	48 8b d9             	mov    %rcx,%rbx
14004183a:	48 85 c0             	test   %rax,%rax
14004183d:	74 79                	je     0x1400418b8
14004183f:	48 8d 0d 2a 08 03 00 	lea    0x3082a(%rip),%rcx        # 0x140072070
140041846:	48 3b c1             	cmp    %rcx,%rax
140041849:	74 6d                	je     0x1400418b8
14004184b:	48 8b 83 e0 00 00 00 	mov    0xe0(%rbx),%rax
140041852:	48 85 c0             	test   %rax,%rax
140041855:	74 61                	je     0x1400418b8
140041857:	83 38 00             	cmpl   $0x0,(%rax)
14004185a:	75 5c                	jne    0x1400418b8
14004185c:	48 8b 8b f0 00 00 00 	mov    0xf0(%rbx),%rcx
140041863:	48 85 c9             	test   %rcx,%rcx
140041866:	74 16                	je     0x14004187e
140041868:	83 39 00             	cmpl   $0x0,(%rcx)
14004186b:	75 11                	jne    0x14004187e
14004186d:	e8 1a 75 ff ff       	call   0x140038d8c
140041872:	48 8b 8b f8 00 00 00 	mov    0xf8(%rbx),%rcx
140041879:	e8 fe ee ff ff       	call   0x14004077c
14004187e:	48 8b 8b e8 00 00 00 	mov    0xe8(%rbx),%rcx
140041885:	48 85 c9             	test   %rcx,%rcx
140041888:	74 16                	je     0x1400418a0
14004188a:	83 39 00             	cmpl   $0x0,(%rcx)
14004188d:	75 11                	jne    0x1400418a0
14004188f:	e8 f8 74 ff ff       	call   0x140038d8c
140041894:	48 8b 8b f8 00 00 00 	mov    0xf8(%rbx),%rcx
14004189b:	e8 0c f5 ff ff       	call   0x140040dac
1400418a0:	48 8b 8b e0 00 00 00 	mov    0xe0(%rbx),%rcx
1400418a7:	e8 e0 74 ff ff       	call   0x140038d8c
1400418ac:	48 8b 8b f8 00 00 00 	mov    0xf8(%rbx),%rcx
1400418b3:	e8 d4 74 ff ff       	call   0x140038d8c
1400418b8:	48 8b 83 00 01 00 00 	mov    0x100(%rbx),%rax
1400418bf:	48 85 c0             	test   %rax,%rax
1400418c2:	74 47                	je     0x14004190b
1400418c4:	83 38 00             	cmpl   $0x0,(%rax)
1400418c7:	75 42                	jne    0x14004190b
1400418c9:	48 8b 8b 08 01 00 00 	mov    0x108(%rbx),%rcx
1400418d0:	48 81 e9 fe 00 00 00 	sub    $0xfe,%rcx
1400418d7:	e8 b0 74 ff ff       	call   0x140038d8c
1400418dc:	48 8b 8b 10 01 00 00 	mov    0x110(%rbx),%rcx
1400418e3:	bf 80 00 00 00       	mov    $0x80,%edi
1400418e8:	48 2b cf             	sub    %rdi,%rcx
1400418eb:	e8 9c 74 ff ff       	call   0x140038d8c
1400418f0:	48 8b 8b 18 01 00 00 	mov    0x118(%rbx),%rcx
1400418f7:	48 2b cf             	sub    %rdi,%rcx
1400418fa:	e8 8d 74 ff ff       	call   0x140038d8c
1400418ff:	48 8b 8b 00 01 00 00 	mov    0x100(%rbx),%rcx
140041906:	e8 81 74 ff ff       	call   0x140038d8c
14004190b:	48 8b 8b 20 01 00 00 	mov    0x120(%rbx),%rcx
140041912:	e8 a5 00 00 00       	call   0x1400419bc
140041917:	48 8d b3 28 01 00 00 	lea    0x128(%rbx),%rsi
14004191e:	bd 06 00 00 00       	mov    $0x6,%ebp
140041923:	48 8d 7b 38          	lea    0x38(%rbx),%rdi
140041927:	48 8d 05 9a 0a 03 00 	lea    0x30a9a(%rip),%rax        # 0x1400723c8
14004192e:	48 39 47 f0          	cmp    %rax,-0x10(%rdi)
140041932:	74 1a                	je     0x14004194e
140041934:	48 8b 0f             	mov    (%rdi),%rcx
140041937:	48 85 c9             	test   %rcx,%rcx
14004193a:	74 12                	je     0x14004194e
14004193c:	83 39 00             	cmpl   $0x0,(%rcx)
14004193f:	75 0d                	jne    0x14004194e
140041941:	e8 46 74 ff ff       	call   0x140038d8c
140041946:	48 8b 0e             	mov    (%rsi),%rcx
140041949:	e8 3e 74 ff ff       	call   0x140038d8c
14004194e:	48 83 7f e8 00       	cmpq   $0x0,-0x18(%rdi)
140041953:	74 13                	je     0x140041968
140041955:	48 8b 4f f8          	mov    -0x8(%rdi),%rcx
140041959:	48 85 c9             	test   %rcx,%rcx
14004195c:	74 0a                	je     0x140041968
14004195e:	83 39 00             	cmpl   $0x0,(%rcx)
140041961:	75 05                	jne    0x140041968
140041963:	e8 24 74 ff ff       	call   0x140038d8c
140041968:	48 83 c6 08          	add    $0x8,%rsi
14004196c:	48 83 c7 20          	add    $0x20,%rdi
140041970:	48 83 ed 01          	sub    $0x1,%rbp
140041974:	75 b1                	jne    0x140041927
140041976:	48 8b cb             	mov    %rbx,%rcx
140041979:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14004197e:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140041983:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140041988:	48 83 c4 20          	add    $0x20,%rsp
14004198c:	5f                   	pop    %rdi
14004198d:	e9 fa 73 ff ff       	jmp    0x140038d8c
140041992:	cc                   	int3
140041993:	cc                   	int3
140041994:	48 85 c9             	test   %rcx,%rcx
140041997:	74 1c                	je     0x1400419b5
140041999:	48 8d 05 10 0e 01 00 	lea    0x10e10(%rip),%rax        # 0x1400527b0
1400419a0:	48 3b c8             	cmp    %rax,%rcx
1400419a3:	74 10                	je     0x1400419b5
1400419a5:	b8 01 00 00 00       	mov    $0x1,%eax
1400419aa:	f0 0f c1 81 5c 01 00 	lock xadd %eax,0x15c(%rcx)
1400419b1:	00
1400419b2:	ff c0                	inc    %eax
1400419b4:	c3                   	ret
1400419b5:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
1400419ba:	c3                   	ret
1400419bb:	cc                   	int3
1400419bc:	48 85 c9             	test   %rcx,%rcx
1400419bf:	74 31                	je     0x1400419f2
1400419c1:	53                   	push   %rbx
1400419c2:	48 83 ec 20          	sub    $0x20,%rsp
1400419c6:	48 8d 05 e3 0d 01 00 	lea    0x10de3(%rip),%rax        # 0x1400527b0
1400419cd:	48 8b d9             	mov    %rcx,%rbx
1400419d0:	48 3b c8             	cmp    %rax,%rcx
1400419d3:	74 18                	je     0x1400419ed
1400419d5:	8b 81 5c 01 00 00    	mov    0x15c(%rcx),%eax
1400419db:	90                   	nop
1400419dc:	85 c0                	test   %eax,%eax
1400419de:	75 0d                	jne    0x1400419ed
1400419e0:	e8 97 fa ff ff       	call   0x14004147c
1400419e5:	48 8b cb             	mov    %rbx,%rcx
1400419e8:	e8 9f 73 ff ff       	call   0x140038d8c
1400419ed:	48 83 c4 20          	add    $0x20,%rsp
1400419f1:	5b                   	pop    %rbx
1400419f2:	c3                   	ret
1400419f3:	cc                   	int3
1400419f4:	48 85 c9             	test   %rcx,%rcx
1400419f7:	74 1a                	je     0x140041a13
1400419f9:	48 8d 05 b0 0d 01 00 	lea    0x10db0(%rip),%rax        # 0x1400527b0
140041a00:	48 3b c8             	cmp    %rax,%rcx
140041a03:	74 0e                	je     0x140041a13
140041a05:	83 c8 ff             	or     $0xffffffff,%eax
140041a08:	f0 0f c1 81 5c 01 00 	lock xadd %eax,0x15c(%rcx)
140041a0f:	00
140041a10:	ff c8                	dec    %eax
140041a12:	c3                   	ret
140041a13:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
140041a18:	c3                   	ret
140041a19:	cc                   	int3
140041a1a:	cc                   	int3
140041a1b:	cc                   	int3
140041a1c:	48 83 ec 28          	sub    $0x28,%rsp
140041a20:	48 85 c9             	test   %rcx,%rcx
140041a23:	0f 84 96 00 00 00    	je     0x140041abf
140041a29:	41 83 c9 ff          	or     $0xffffffff,%r9d
140041a2d:	f0 44 01 49 10       	lock add %r9d,0x10(%rcx)
140041a32:	48 8b 81 e0 00 00 00 	mov    0xe0(%rcx),%rax
140041a39:	48 85 c0             	test   %rax,%rax
140041a3c:	74 04                	je     0x140041a42
140041a3e:	f0 44 01 08          	lock add %r9d,(%rax)
140041a42:	48 8b 81 f0 00 00 00 	mov    0xf0(%rcx),%rax
140041a49:	48 85 c0             	test   %rax,%rax
140041a4c:	74 04                	je     0x140041a52
140041a4e:	f0 44 01 08          	lock add %r9d,(%rax)
140041a52:	48 8b 81 e8 00 00 00 	mov    0xe8(%rcx),%rax
140041a59:	48 85 c0             	test   %rax,%rax
140041a5c:	74 04                	je     0x140041a62
140041a5e:	f0 44 01 08          	lock add %r9d,(%rax)
140041a62:	48 8b 81 00 01 00 00 	mov    0x100(%rcx),%rax
140041a69:	48 85 c0             	test   %rax,%rax
140041a6c:	74 04                	je     0x140041a72
140041a6e:	f0 44 01 08          	lock add %r9d,(%rax)
140041a72:	48 8d 41 38          	lea    0x38(%rcx),%rax
140041a76:	41 b8 06 00 00 00    	mov    $0x6,%r8d
140041a7c:	48 8d 15 45 09 03 00 	lea    0x30945(%rip),%rdx        # 0x1400723c8
140041a83:	48 39 50 f0          	cmp    %rdx,-0x10(%rax)
140041a87:	74 0c                	je     0x140041a95
140041a89:	48 8b 10             	mov    (%rax),%rdx
140041a8c:	48 85 d2             	test   %rdx,%rdx
140041a8f:	74 04                	je     0x140041a95
140041a91:	f0 44 01 0a          	lock add %r9d,(%rdx)
140041a95:	48 83 78 e8 00       	cmpq   $0x0,-0x18(%rax)
140041a9a:	74 0d                	je     0x140041aa9
140041a9c:	48 8b 50 f8          	mov    -0x8(%rax),%rdx
140041aa0:	48 85 d2             	test   %rdx,%rdx
140041aa3:	74 04                	je     0x140041aa9
140041aa5:	f0 44 01 0a          	lock add %r9d,(%rdx)
140041aa9:	48 83 c0 20          	add    $0x20,%rax
140041aad:	49 83 e8 01          	sub    $0x1,%r8
140041ab1:	75 c9                	jne    0x140041a7c
140041ab3:	48 8b 89 20 01 00 00 	mov    0x120(%rcx),%rcx
140041aba:	e8 35 ff ff ff       	call   0x1400419f4
140041abf:	48 83 c4 28          	add    $0x28,%rsp
140041ac3:	c3                   	ret
140041ac4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140041ac9:	57                   	push   %rdi
140041aca:	48 83 ec 20          	sub    $0x20,%rsp
140041ace:	e8 5d 6e ff ff       	call   0x140038930