140036783:	f7 d2                	not    %edx
140036785:	83 e2 04             	and    $0x4,%edx
140036788:	41 89 51 08          	mov    %edx,0x8(%r9)
14003678c:	81 e1 1f c0 ff ff    	and    $0xffffc01f,%ecx
140036792:	33 d2                	xor    %edx,%edx
140036794:	b8 00 40 00 00       	mov    $0x4000,%eax
140036799:	41 83 fb 04          	cmp    $0x4,%r11d
14003679d:	0f 44 d0             	cmove  %eax,%edx
1400367a0:	8b c1                	mov    %ecx,%eax
1400367a2:	0f ba f0 0e          	btr    $0xe,%eax
1400367a6:	8b ca                	mov    %edx,%ecx
1400367a8:	0b c8                	or     %eax,%ecx
1400367aa:	44 8b d1             	mov    %ecx,%r10d
1400367ad:	41 c1 ea 05          	shr    $0x5,%r10d
1400367b1:	44 23 d5             	and    %ebp,%r10d
1400367b4:	41 8d 52 01          	lea    0x1(%r10),%edx
1400367b8:	48 3b d5             	cmp    %rbp,%rdx
1400367bb:	77 0e                	ja     0x1400367cb
1400367bd:	8b c1                	mov    %ecx,%eax
1400367bf:	48 c1 e8 05          	shr    $0x5,%rax
1400367c3:	48 23 c5             	and    %rbp,%rax
1400367c6:	48 3b d0             	cmp    %rax,%rdx
1400367c9:	73 0d                	jae    0x1400367d8
1400367cb:	ba 01 00 00 00       	mov    $0x1,%edx
1400367d0:	45 89 59 08          	mov    %r11d,0x8(%r9)
1400367d4:	45 89 51 04          	mov    %r10d,0x4(%r9)
1400367d8:	c1 e2 05             	shl    $0x5,%edx
1400367db:	41 8b c0             	mov    %r8d,%eax
1400367de:	33 d1                	xor    %ecx,%edx
1400367e0:	81 e2 e0 3f 00 00    	and    $0x3fe0,%edx
1400367e6:	33 ca                	xor    %edx,%ecx
1400367e8:	f0 0f b1 0f          	lock cmpxchg %ecx,(%rdi)
1400367ec:	74 08                	je     0x1400367f6
1400367ee:	44 8b c0             	mov    %eax,%r8d
1400367f1:	e9 5f ff ff ff       	jmp    0x140036755
1400367f6:	41 83 61 10 00       	andl   $0x0,0x10(%r9)
1400367fb:	41 f7 d0             	not    %r8d
1400367fe:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140036803:	41 83 e0 01          	and    $0x1,%r8d
140036807:	48 8b 6c 24 10       	mov    0x10(%rsp),%rbp
14003680c:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
140036811:	45 89 01             	mov    %r8d,(%r9)
140036814:	c3                   	ret
140036815:	cc                   	int3
140036816:	cc                   	int3
140036817:	cc                   	int3
140036818:	cc                   	int3
140036819:	cc                   	int3
14003681a:	cc                   	int3
14003681b:	cc                   	int3
14003681c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140036821:	57                   	push   %rdi
140036822:	48 83 ec 20          	sub    $0x20,%rsp
140036826:	33 c0                	xor    %eax,%eax
140036828:	0f 57 c0             	xorps  %xmm0,%xmm0
14003682b:	4c 8b d2             	mov    %rdx,%r10
14003682e:	48 8b d9             	mov    %rcx,%rbx
140036831:	0f 11 01             	movups %xmm0,(%rcx)
140036834:	48 89 41 10          	mov    %rax,0x10(%rcx)
140036838:	45 85 c0             	test   %r8d,%r8d
14003683b:	0f 84 13 01 00 00    	je     0x140036954
140036841:	44 8d 48 01          	lea    0x1(%rax),%r9d
140036845:	45 3b c1             	cmp    %r9d,%r8d
140036848:	0f 84 f6 00 00 00    	je     0x140036944
14003684e:	0f 8e 95 00 00 00    	jle    0x1400368e9
140036854:	41 83 f8 03          	cmp    $0x3,%r8d
140036858:	7e 1d                	jle    0x140036877
14003685a:	41 83 f8 04          	cmp    $0x4,%r8d
14003685e:	0f 84 f0 00 00 00    	je     0x140036954
140036864:	41 83 f8 05          	cmp    $0x5,%r8d
140036868:	0f 84 d6 00 00 00    	je     0x140036944
14003686e:	41 8d 40 fa          	lea    -0x6(%r8),%eax
140036872:	41 3b c1             	cmp    %r9d,%eax
140036875:	77 72                	ja     0x1400368e9
140036877:	33 d2                	xor    %edx,%edx
140036879:	41 83 e8 02          	sub    $0x2,%r8d
14003687d:	74 25                	je     0x1400368a4
14003687f:	45 2b c1             	sub    %r9d,%r8d
140036882:	74 19                	je     0x14003689d
140036884:	41 83 e8 03          	sub    $0x3,%r8d
140036888:	74 0c                	je     0x140036896
14003688a:	45 3b c1             	cmp    %r9d,%r8d
14003688d:	75 1a                	jne    0x1400368a9
14003688f:	ba 10 00 00 00       	mov    $0x10,%edx
140036894:	eb 13                	jmp    0x1400368a9
140036896:	ba 04 00 00 00       	mov    $0x4,%edx
14003689b:	eb 0c                	jmp    0x1400368a9
14003689d:	ba 08 00 00 00       	mov    $0x8,%edx
1400368a2:	eb 05                	jmp    0x1400368a9
1400368a4:	ba 02 00 00 00       	mov    $0x2,%edx
1400368a9:	41 8b 0a             	mov    (%r10),%ecx
1400368ac:	33 c0                	xor    %eax,%eax
1400368ae:	44 8b c2             	mov    %edx,%r8d
1400368b1:	44 0b c1             	or     %ecx,%r8d
1400368b4:	44 3b c1             	cmp    %ecx,%r8d
1400368b7:	45 8b d8             	mov    %r8d,%r11d
1400368ba:	0f 94 c0             	sete   %al
1400368bd:	45 0b d9             	or     %r9d,%r11d
1400368c0:	44 3b c1             	cmp    %ecx,%r8d
1400368c3:	89 43 10             	mov    %eax,0x10(%rbx)
1400368c6:	8b c1                	mov    %ecx,%eax
1400368c8:	45 0f 44 d8          	cmove  %r8d,%r11d
1400368cc:	f0 45 0f b1 1a       	lock cmpxchg %r11d,(%r10)
1400368d1:	74 04                	je     0x1400368d7
1400368d3:	8b c8                	mov    %eax,%ecx
1400368d5:	eb d5                	jmp    0x1400368ac
1400368d7:	45 84 d9             	test   %r11b,%r9b
1400368da:	74 05                	je     0x1400368e1
1400368dc:	41 84 c9             	test   %cl,%r9b
1400368df:	74 03                	je     0x1400368e4
1400368e1:	45 33 c9             	xor    %r9d,%r9d
1400368e4:	44 89 0b             	mov    %r9d,(%rbx)
1400368e7:	eb 79                	jmp    0x140036962
1400368e9:	45 8d 98 c0 fe ff ff 	lea    -0x140(%r8),%r11d
1400368f0:	41 83 fb 40          	cmp    $0x40,%r11d
1400368f4:	73 40                	jae    0x140036936
1400368f6:	8b 42 04             	mov    0x4(%rdx),%eax
1400368f9:	41 8b fb             	mov    %r11d,%edi
1400368fc:	83 e7 3f             	and    $0x3f,%edi
1400368ff:	ba 10 00 00 00       	mov    $0x10,%edx
140036904:	c1 e7 05             	shl    $0x5,%edi
140036907:	84 c2                	test   %al,%dl
140036909:	74 12                	je     0x14003691d
14003690b:	8b c8                	mov    %eax,%ecx
14003690d:	c1 e9 05             	shr    $0x5,%ecx
140036910:	83 e1 3f             	and    $0x3f,%ecx
140036913:	41 3b cb             	cmp    %r11d,%ecx
140036916:	75 05                	jne    0x14003691d
140036918:	41 8b c9             	mov    %r9d,%ecx
14003691b:	eb 02                	jmp    0x14003691f
14003691d:	33 c9                	xor    %ecx,%ecx
14003691f:	89 4b 10             	mov    %ecx,0x10(%rbx)
140036922:	8b c8                	mov    %eax,%ecx
140036924:	81 e1 1f f8 ff ff    	and    $0xfffff81f,%ecx
14003692a:	0b cf                	or     %edi,%ecx
14003692c:	0b ca                	or     %edx,%ecx
14003692e:	f0 41 0f b1 4a 04    	lock cmpxchg %ecx,0x4(%r10)
140036934:	75 d1                	jne    0x140036907
140036936:	83 63 0c 00          	andl   $0x0,0xc(%rbx)
14003693a:	44 89 43 08          	mov    %r8d,0x8(%rbx)
14003693e:	44 89 4b 04          	mov    %r9d,0x4(%rbx)
140036942:	eb 1e                	jmp    0x140036962
140036944:	4c 8b cb             	mov    %rbx,%r9
140036947:	41 8b d0             	mov    %r8d,%edx
14003694a:	49 8b ca             	mov    %r10,%rcx
14003694d:	e8 f6 fc ff ff       	call   0x140036648
140036952:	eb 0e                	jmp    0x140036962
140036954:	4c 8b cb             	mov    %rbx,%r9
140036957:	41 8b d0             	mov    %r8d,%edx
14003695a:	49 8b ca             	mov    %r10,%rcx
14003695d:	e8 ce fd ff ff       	call   0x140036730
140036962:	48 8b c3             	mov    %rbx,%rax
140036965:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14003696a:	48 83 c4 20          	add    $0x20,%rsp
14003696e:	5f                   	pop    %rdi
14003696f:	c3                   	ret
140036970:	cc                   	int3
140036971:	cc                   	int3
140036972:	cc                   	int3
140036973:	cc                   	int3
140036974:	cc                   	int3
140036975:	cc                   	int3
140036976:	cc                   	int3
140036977:	cc                   	int3
140036978:	44 8b c1             	mov    %ecx,%r8d
14003697b:	85 c9                	test   %ecx,%ecx
14003697d:	0f 84 86 00 00 00    	je     0x140036a09
140036983:	41 83 e8 01          	sub    $0x1,%r8d
140036987:	74 75                	je     0x1400369fe
140036989:	41 83 e8 01          	sub    $0x1,%r8d
14003698d:	74 63                	je     0x1400369f2
14003698f:	41 83 e8 01          	sub    $0x1,%r8d
140036993:	74 51                	je     0x1400369e6
140036995:	41 83 e8 01          	sub    $0x1,%r8d
140036999:	74 3f                	je     0x1400369da
14003699b:	41 83 e8 01          	sub    $0x1,%r8d
14003699f:	74 2d                	je     0x1400369ce
1400369a1:	41 83 f8 01          	cmp    $0x1,%r8d
1400369a5:	74 1b                	je     0x1400369c2
1400369a7:	80 e9 64             	sub    $0x64,%cl
1400369aa:	80 f9 31             	cmp    $0x31,%cl
1400369ad:	77 5a                	ja     0x140036a09
1400369af:	f7 da                	neg    %edx
1400369b1:	0f b6 c9             	movzbl %cl,%ecx
1400369b4:	1b c0                	sbb    %eax,%eax
1400369b6:	83 e0 ce             	and    $0xffffffce,%eax
1400369b9:	05 96 00 00 00       	add    $0x96,%eax
1400369be:	03 c1                	add    %ecx,%eax
1400369c0:	c3                   	ret
1400369c1:	cc                   	int3
1400369c2:	f7 da                	neg    %edx
1400369c4:	1b c0                	sbb    %eax,%eax
1400369c6:	83 e0 fe             	and    $0xfffffffe,%eax
1400369c9:	83 c0 0b             	add    $0xb,%eax
1400369cc:	c3                   	ret
1400369cd:	cc                   	int3
1400369ce:	f7 da                	neg    %edx
1400369d0:	1b c0                	sbb    %eax,%eax
1400369d2:	83 e0 fe             	and    $0xfffffffe,%eax
1400369d5:	83 c0 0a             	add    $0xa,%eax
1400369d8:	c3                   	ret
1400369d9:	cc                   	int3
1400369da:	f7 da                	neg    %edx
1400369dc:	1b c0                	sbb    %eax,%eax
1400369de:	83 e0 fc             	and    $0xfffffffc,%eax
1400369e1:	83 c0 07             	add    $0x7,%eax
1400369e4:	c3                   	ret
1400369e5:	cc                   	int3
1400369e6:	f7 da                	neg    %edx
1400369e8:	1b c0                	sbb    %eax,%eax
1400369ea:	83 e0 fc             	and    $0xfffffffc,%eax
1400369ed:	83 c0 06             	add    $0x6,%eax
1400369f0:	c3                   	ret
1400369f1:	cc                   	int3
1400369f2:	f7 da                	neg    %edx
1400369f4:	1b c0                	sbb    %eax,%eax
1400369f6:	83 e0 fc             	and    $0xfffffffc,%eax
1400369f9:	83 c0 05             	add    $0x5,%eax
1400369fc:	c3                   	ret
1400369fd:	cc                   	int3
1400369fe:	f7 da                	neg    %edx
140036a00:	1b c0                	sbb    %eax,%eax
140036a02:	f7 d0                	not    %eax
140036a04:	83 e0 04             	and    $0x4,%eax
140036a07:	c3                   	ret
140036a08:	cc                   	int3
140036a09:	b8 ff 00 00 00       	mov    $0xff,%eax
140036a0e:	c3                   	ret
140036a0f:	cc                   	int3
140036a10:	cc                   	int3
140036a11:	cc                   	int3
140036a12:	cc                   	int3
140036a13:	cc                   	int3
140036a14:	cc                   	int3
140036a15:	cc                   	int3
140036a16:	cc                   	int3
140036a17:	cc                   	int3
140036a18:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140036a1d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140036a22:	55                   	push   %rbp
140036a23:	48 8d 6c 24 a9       	lea    -0x57(%rsp),%rbp
140036a28:	48 81 ec 00 01 00 00 	sub    $0x100,%rsp
140036a2f:	48 8b 05 8a 87 06 00 	mov    0x6878a(%rip),%rax        # 0x14009f1c0
140036a36:	48 33 c4             	xor    %rsp,%rax
140036a39:	48 89 45 47          	mov    %rax,0x47(%rbp)
140036a3d:	83 65 87 00          	andl   $0x0,-0x79(%rbp)
140036a41:	48 8d 4d 97          	lea    -0x69(%rbp),%rcx
140036a45:	83 65 8b 00          	andl   $0x0,-0x75(%rbp)
140036a49:	33 d2                	xor    %edx,%edx
140036a4b:	83 65 8f 00          	andl   $0x0,-0x71(%rbp)
140036a4f:	41 b8 a8 00 00 00    	mov    $0xa8,%r8d
140036a55:	e8 e1 19 00 00       	call   0x14003843b
140036a5a:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140036a60:	48 8d 45 8b          	lea    -0x75(%rbp),%rax
140036a64:	48 89 45 af          	mov    %rax,-0x51(%rbp)
140036a68:	48 8d 35 21 1f 05 00 	lea    0x51f21(%rip),%rsi        # 0x140088990
140036a6f:	b9 04 00 00 00       	mov    $0x4,%ecx
140036a74:	48 89 75 a7          	mov    %rsi,-0x59(%rbp)
140036a78:	41 b8 20 01 00 00    	mov    $0x120,%r8d
140036a7e:	89 4d c7             	mov    %ecx,-0x39(%rbp)
140036a81:	ba 04 00 00 04       	mov    $0x4000004,%edx
140036a86:	44 89 45 9f          	mov    %r8d,-0x61(%rbp)
140036a8a:	48 8d 45 87          	lea    -0x79(%rbp),%rax
140036a8e:	89 55 b7             	mov    %edx,-0x49(%rbp)
140036a91:	48 89 45 bf          	mov    %rax,-0x41(%rbp)
140036a95:	45 33 c9             	xor    %r9d,%r9d
140036a98:	48 8d 05 21 1f 05 00 	lea    0x51f21(%rip),%rax        # 0x1400889c0
140036a9f:	44 89 45 d7          	mov    %r8d,-0x29(%rbp)
140036aa3:	48 89 45 df          	mov    %rax,-0x21(%rbp)
140036aa7:	4c 8d 45 97          	lea    -0x69(%rbp),%r8
140036aab:	48 8d 45 8f          	lea    -0x71(%rbp),%rax
140036aaf:	89 55 ef             	mov    %edx,-0x11(%rbp)
140036ab2:	48 89 45 e7          	mov    %rax,-0x19(%rbp)
140036ab6:	48 8d 15 3b 1f 05 00 	lea    0x51f3b(%rip),%rdx        # 0x1400889f8
140036abd:	48 8d 45 87          	lea    -0x79(%rbp),%rax
140036ac1:	89 4d ff             	mov    %ecx,-0x1(%rbp)
140036ac4:	41 8d 49 02          	lea    0x2(%r9),%ecx
140036ac8:	48 89 45 f7          	mov    %rax,-0x9(%rbp)
140036acc:	48 ff 15 bd eb 04 00 	rex.W call *0x4ebbd(%rip)        # 0x140085690
140036ad3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140036ad8:	83 7d 8b 00          	cmpl   $0x0,-0x75(%rbp)
140036adc:	74 76                	je     0x140036b54
140036ade:	83 7d 8f 00          	cmpl   $0x0,-0x71(%rbp)
140036ae2:	75 70                	jne    0x140036b54
140036ae4:	48 8d 0d 2d 20 05 00 	lea    0x5202d(%rip),%rcx        # 0x140088b18
140036aeb:	e8 2c 07 00 00       	call   0x14003721c
140036af0:	33 c9                	xor    %ecx,%ecx
140036af2:	48 ff 15 2f dc 04 00 	rex.W call *0x4dc2f(%rip)        # 0x140084728
140036af9:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140036afe:	8b d8                	mov    %eax,%ebx
140036b00:	85 c0                	test   %eax,%eax
140036b02:	74 35                	je     0x140036b39
140036b04:	48 8b 0d f5 84 06 00 	mov    0x684f5(%rip),%rcx        # 0x14009f000
140036b0b:	48 8d 05 ee 84 06 00 	lea    0x684ee(%rip),%rax        # 0x14009f000
140036b12:	48 3b c8             	cmp    %rax,%rcx
140036b15:	74 1e                	je     0x140036b35
140036b17:	f6 41 1c 01          	testb  $0x1,0x1c(%rcx)
140036b1b:	74 18                	je     0x140036b35
140036b1d:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140036b21:	4c 8d 05 f8 1e 05 00 	lea    0x51ef8(%rip),%r8        # 0x140088a20
140036b28:	ba 51 00 00 00       	mov    $0x51,%edx
140036b2d:	44 8b cb             	mov    %ebx,%r9d
140036b30:	e8 e7 0d 02 00       	call   0x14005791c
140036b35:	8b c3                	mov    %ebx,%eax
140036b37:	eb 1d                	jmp    0x140036b56
140036b39:	4c 8b c6             	mov    %rsi,%r8
140036b3c:	48 8d 15 b5 1e 05 00 	lea    0x51eb5(%rip),%rdx        # 0x1400889f8
140036b43:	b9 02 00 00 00       	mov    $0x2,%ecx
140036b48:	48 ff 15 39 eb 04 00 	rex.W call *0x4eb39(%rip)        # 0x140085688
140036b4f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140036b54:	33 c0                	xor    %eax,%eax
140036b56:	48 8b 4d 47          	mov    0x47(%rbp),%rcx
140036b5a:	48 33 cc             	xor    %rsp,%rcx
140036b5d:	e8 4e d0 ff ff       	call   0x140033bb0
140036b62:	4c 8d 9c 24 00 01 00 	lea    0x100(%rsp),%r11
140036b69:	00
140036b6a:	49 8b 5b 10          	mov    0x10(%r11),%rbx
140036b6e:	49 8b 73 18          	mov    0x18(%r11),%rsi
140036b72:	49 8b e3             	mov    %r11,%rsp
140036b75:	5d                   	pop    %rbp
140036b76:	c3                   	ret
140036b77:	cc                   	int3
140036b78:	cc                   	int3
140036b79:	cc                   	int3
140036b7a:	cc                   	int3
140036b7b:	cc                   	int3
140036b7c:	cc                   	int3
140036b7d:	cc                   	int3
140036b7e:	cc                   	int3
140036b7f:	cc                   	int3
140036b80:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140036b85:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140036b8a:	56                   	push   %rsi
140036b8b:	57                   	push   %rdi
140036b8c:	41 56                	push   %r14
140036b8e:	48 83 ec 30          	sub    $0x30,%rsp
140036b92:	45 33 f6             	xor    %r14d,%r14d
140036b95:	49 8b f1             	mov    %r9,%rsi
140036b98:	4c 89 74 24 50       	mov    %r14,0x50(%rsp)
140036b9d:	49 8b d8             	mov    %r8,%rbx
140036ba0:	48 8b ea             	mov    %rdx,%rbp
140036ba3:	48 8b f9             	mov    %rcx,%rdi
140036ba6:	49 3b c8             	cmp    %r8,%rcx
140036ba9:	75 0f                	jne    0x140036bba
140036bab:	41 8b fe             	mov    %r14d,%edi
140036bae:	41 c7 01 01 00 00 00 	movl   $0x1,(%r9)
140036bb5:	e9 67 01 00 00       	jmp    0x140036d21
140036bba:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
140036bbf:	48 8b cb             	mov    %rbx,%rcx
140036bc2:	e8 69 00 fe ff       	call   0x140016c30