1406402a0:	7f 18                	jg     0x1406402ba
1406402a2:	0f 88 14 01 00 00    	js     0x1406403bc
1406402a8:	48 8b 01             	mov    (%rcx),%rax
1406402ab:	ba 01 00 00 00       	mov    $0x1,%edx
1406402b0:	48 8b 00             	mov    (%rax),%rax
1406402b3:	ff 15 67 37 94 00    	call   *0x943767(%rip)        # 0x140f83a20
1406402b9:	90                   	nop
1406402ba:	48 8b 1b             	mov    (%rbx),%rbx
1406402bd:	48 3b df             	cmp    %rdi,%rbx
1406402c0:	0f 85 5a ff ff ff    	jne    0x140640220
1406402c6:	4c 8b 86 b0 00 00 00 	mov    0xb0(%rsi),%r8
1406402cd:	41 0f b6 d0          	movzbl %r8b,%edx
1406402d1:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
1406402d8:	9c f2 cb
1406402db:	48 33 d0             	xor    %rax,%rdx
1406402de:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
1406402e5:	01 00 00
1406402e8:	49 0f af d1          	imul   %r9,%rdx
1406402ec:	49 8b c0             	mov    %r8,%rax
1406402ef:	48 c1 e8 08          	shr    $0x8,%rax
1406402f3:	0f b6 c8             	movzbl %al,%ecx
1406402f6:	48 33 d1             	xor    %rcx,%rdx
1406402f9:	49 0f af d1          	imul   %r9,%rdx
1406402fd:	49 8b c0             	mov    %r8,%rax
140640300:	48 c1 e8 10          	shr    $0x10,%rax
140640304:	0f b6 c8             	movzbl %al,%ecx
140640307:	48 33 d1             	xor    %rcx,%rdx
14064030a:	49 0f af d1          	imul   %r9,%rdx
14064030e:	49 8b c0             	mov    %r8,%rax
140640311:	48 c1 e8 18          	shr    $0x18,%rax
140640315:	0f b6 c8             	movzbl %al,%ecx
140640318:	48 33 d1             	xor    %rcx,%rdx
14064031b:	49 0f af d1          	imul   %r9,%rdx
14064031f:	49 8b c0             	mov    %r8,%rax
140640322:	48 c1 e8 20          	shr    $0x20,%rax
140640326:	0f b6 c8             	movzbl %al,%ecx
140640329:	48 33 d1             	xor    %rcx,%rdx
14064032c:	49 0f af d1          	imul   %r9,%rdx
140640330:	49 8b c0             	mov    %r8,%rax
140640333:	48 c1 e8 28          	shr    $0x28,%rax
140640337:	0f b6 c8             	movzbl %al,%ecx
14064033a:	48 33 d1             	xor    %rcx,%rdx
14064033d:	49 0f af d1          	imul   %r9,%rdx
140640341:	49 8b c0             	mov    %r8,%rax
140640344:	48 c1 e8 30          	shr    $0x30,%rax
140640348:	0f b6 c8             	movzbl %al,%ecx
14064034b:	48 33 ca             	xor    %rdx,%rcx
14064034e:	49 0f af c9          	imul   %r9,%rcx
140640352:	49 8b c0             	mov    %r8,%rax
140640355:	48 c1 e8 38          	shr    $0x38,%rax
140640359:	48 33 c8             	xor    %rax,%rcx
14064035c:	49 0f af c9          	imul   %r9,%rcx
140640360:	48 23 0d a9 fc de 00 	and    0xdefca9(%rip),%rcx        # 0x141430010
140640367:	48 c1 e1 04          	shl    $0x4,%rcx
14064036b:	48 03 0d 86 fc de 00 	add    0xdefc86(%rip),%rcx        # 0x14142fff8
140640372:	48 8b 41 08          	mov    0x8(%rcx),%rax
140640376:	48 3b 05 6b fc de 00 	cmp    0xdefc6b(%rip),%rax        # 0x14142ffe8
14064037d:	74 1a                	je     0x140640399
14064037f:	48 8b 09             	mov    (%rcx),%rcx
140640382:	4c 3b 40 10          	cmp    0x10(%rax),%r8
140640386:	74 13                	je     0x14064039b
140640388:	48 3b c1             	cmp    %rcx,%rax
14064038b:	74 0c                	je     0x140640399
14064038d:	48 8b 40 08          	mov    0x8(%rax),%rax
140640391:	4c 3b 40 10          	cmp    0x10(%rax),%r8
140640395:	75 f1                	jne    0x140640388
140640397:	eb 02                	jmp    0x14064039b
140640399:	33 c0                	xor    %eax,%eax
14064039b:	48 85 c0             	test   %rax,%rax
14064039e:	0f 95 c0             	setne  %al
1406403a1:	88 86 ec 03 00 00    	mov    %al,0x3ec(%rsi)
1406403a7:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1406403ac:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
1406403b1:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1406403b6:	48 83 c4 20          	add    $0x20,%rsp
1406403ba:	5f                   	pop    %rdi
1406403bb:	c3                   	ret
1406403bc:	b9 02 00 00 00       	mov    $0x2,%ecx
1406403c1:	e8 3a a3 14 00       	call   0x14078a700
1406403c6:	90                   	nop
1406403c7:	b9 01 00 00 00       	mov    $0x1,%ecx
1406403cc:	e8 2f a3 14 00       	call   0x14078a700
1406403d1:	cc                   	int3
1406403d2:	33 c9                	xor    %ecx,%ecx
1406403d4:	e8 27 a3 14 00       	call   0x14078a700
1406403d9:	cc                   	int3
1406403da:	cc                   	int3
1406403db:	cc                   	int3
1406403dc:	cc                   	int3
1406403dd:	cc                   	int3
1406403de:	cc                   	int3
1406403df:	cc                   	int3
1406403e0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1406403e5:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1406403ea:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1406403ef:	55                   	push   %rbp
1406403f0:	41 54                	push   %r12
1406403f2:	41 55                	push   %r13
1406403f4:	41 56                	push   %r14
1406403f6:	41 57                	push   %r15
1406403f8:	48 8b ec             	mov    %rsp,%rbp
1406403fb:	48 83 ec 60          	sub    $0x60,%rsp
1406403ff:	4c 8b e1             	mov    %rcx,%r12
140640402:	33 f6                	xor    %esi,%esi
140640404:	89 75 30             	mov    %esi,0x30(%rbp)
140640407:	4c 8b 89 d8 00 00 00 	mov    0xd8(%rcx),%r9
14064040e:	4c 8b 81 d0 00 00 00 	mov    0xd0(%rcx),%r8
140640415:	49 8b c0             	mov    %r8,%rax
140640418:	48 c1 e8 08          	shr    $0x8,%rax
14064041c:	0f b6 d0             	movzbl %al,%edx
14064041f:	41 0f b6 c0          	movzbl %r8b,%eax
140640423:	48 b9 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rcx
14064042a:	9c f2 cb
14064042d:	48 33 c1             	xor    %rcx,%rax
140640430:	49 ba b3 01 00 00 00 	movabs $0x100000001b3,%r10
140640437:	01 00 00
14064043a:	49 0f af c2          	imul   %r10,%rax
14064043e:	48 33 d0             	xor    %rax,%rdx
140640441:	49 0f af d2          	imul   %r10,%rdx
140640445:	49 8b c0             	mov    %r8,%rax
140640448:	48 c1 e8 10          	shr    $0x10,%rax
14064044c:	0f b6 c8             	movzbl %al,%ecx
14064044f:	48 33 d1             	xor    %rcx,%rdx
140640452:	49 0f af d2          	imul   %r10,%rdx
140640456:	49 8b c0             	mov    %r8,%rax
140640459:	48 c1 e8 18          	shr    $0x18,%rax
14064045d:	0f b6 c8             	movzbl %al,%ecx
140640460:	48 33 d1             	xor    %rcx,%rdx
140640463:	49 0f af d2          	imul   %r10,%rdx
140640467:	49 8b c0             	mov    %r8,%rax
14064046a:	48 c1 e8 20          	shr    $0x20,%rax
14064046e:	0f b6 c8             	movzbl %al,%ecx
140640471:	48 33 d1             	xor    %rcx,%rdx
140640474:	49 0f af d2          	imul   %r10,%rdx
140640478:	49 8b c0             	mov    %r8,%rax
14064047b:	48 c1 e8 28          	shr    $0x28,%rax
14064047f:	0f b6 c8             	movzbl %al,%ecx
140640482:	48 33 d1             	xor    %rcx,%rdx
140640485:	49 0f af d2          	imul   %r10,%rdx
140640489:	49 8b c0             	mov    %r8,%rax
14064048c:	48 c1 e8 30          	shr    $0x30,%rax
140640490:	0f b6 c8             	movzbl %al,%ecx
140640493:	48 33 d1             	xor    %rcx,%rdx
140640496:	49 0f af d2          	imul   %r10,%rdx
14064049a:	49 8b c0             	mov    %r8,%rax
14064049d:	48 c1 e8 38          	shr    $0x38,%rax
1406404a1:	48 33 d0             	xor    %rax,%rdx
1406404a4:	49 0f af d2          	imul   %r10,%rdx
1406404a8:	49 8b 49 30          	mov    0x30(%r9),%rcx
1406404ac:	48 23 ca             	and    %rdx,%rcx
1406404af:	48 c1 e1 04          	shl    $0x4,%rcx
1406404b3:	49 03 49 18          	add    0x18(%r9),%rcx
1406404b7:	48 8b 41 08          	mov    0x8(%rcx),%rax
1406404bb:	49 8b 51 08          	mov    0x8(%r9),%rdx
1406404bf:	48 3b c2             	cmp    %rdx,%rax
1406404c2:	74 1d                	je     0x1406404e1
1406404c4:	48 8b 09             	mov    (%rcx),%rcx
1406404c7:	4c 3b 40 10          	cmp    0x10(%rax),%r8
1406404cb:	74 17                	je     0x1406404e4
1406404cd:	0f 1f 00             	nopl   (%rax)
1406404d0:	48 3b c1             	cmp    %rcx,%rax
1406404d3:	74 0c                	je     0x1406404e1
1406404d5:	48 8b 40 08          	mov    0x8(%rax),%rax
1406404d9:	4c 3b 40 10          	cmp    0x10(%rax),%r8
1406404dd:	75 f1                	jne    0x1406404d0
1406404df:	eb 03                	jmp    0x1406404e4
1406404e1:	48 8b c6             	mov    %rsi,%rax
1406404e4:	48 85 c0             	test   %rax,%rax
1406404e7:	48 0f 44 c2          	cmove  %rdx,%rax
1406404eb:	48 3b c2             	cmp    %rdx,%rax
1406404ee:	74 1b                	je     0x14064050b
1406404f0:	48 8d 55 e8          	lea    -0x18(%rbp),%rdx
1406404f4:	49 8b c9             	mov    %r9,%rcx
1406404f7:	e8 34 f5 01 00       	call   0x14065fa30
1406404fc:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
140640500:	bf 05 00 00 00       	mov    $0x5,%edi
140640505:	4c 8b 6d e8          	mov    -0x18(%rbp),%r13
140640509:	eb 10                	jmp    0x14064051b
14064050b:	48 89 75 c8          	mov    %rsi,-0x38(%rbp)
14064050f:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140640513:	bf 02 00 00 00       	mov    $0x2,%edi
140640518:	4c 8b ee             	mov    %rsi,%r13
14064051b:	4c 89 6d d8          	mov    %r13,-0x28(%rbp)
14064051f:	48 8b 41 08          	mov    0x8(%rcx),%rax
140640523:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
140640527:	48 89 31             	mov    %rsi,(%rcx)
14064052a:	48 89 71 08          	mov    %rsi,0x8(%rcx)
14064052e:	41 be ff ff ff ff    	mov    $0xffffffff,%r14d
140640534:	40 f6 c7 02          	test   $0x2,%dil
140640538:	74 4a                	je     0x140640584
14064053a:	83 e7 fd             	and    $0xfffffffd,%edi
14064053d:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
140640541:	48 85 c9             	test   %rcx,%rcx
140640544:	74 3e                	je     0x140640584
140640546:	41 8b c6             	mov    %r14d,%eax
140640549:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
14064054e:	83 f8 01             	cmp    $0x1,%eax
140640551:	75 31                	jne    0x140640584
140640553:	48 8b 5d c8          	mov    -0x38(%rbp),%rbx
140640557:	48 8b 03             	mov    (%rbx),%rax
14064055a:	48 8b cb             	mov    %rbx,%rcx
14064055d:	48 8b 00             	mov    (%rax),%rax
140640560:	ff 15 ba 34 94 00    	call   *0x9434ba(%rip)        # 0x140f83a20
140640566:	41 8b c6             	mov    %r14d,%eax
140640569:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
14064056e:	83 f8 01             	cmp    $0x1,%eax
140640571:	75 11                	jne    0x140640584
140640573:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
140640577:	48 8b 01             	mov    (%rcx),%rax
14064057a:	48 8b 40 08          	mov    0x8(%rax),%rax
14064057e:	ff 15 9c 34 94 00    	call   *0x94349c(%rip)        # 0x140f83a20
140640584:	40 f6 c7 01          	test   $0x1,%dil
140640588:	74 42                	je     0x1406405cc
14064058a:	48 8b 5d f0          	mov    -0x10(%rbp),%rbx
14064058e:	48 85 db             	test   %rbx,%rbx
140640591:	74 39                	je     0x1406405cc
140640593:	41 8b c6             	mov    %r14d,%eax
140640596:	f0 0f c1 43 08       	lock xadd %eax,0x8(%rbx)
14064059b:	83 f8 01             	cmp    $0x1,%eax
14064059e:	75 2c                	jne    0x1406405cc
1406405a0:	48 8b 03             	mov    (%rbx),%rax
1406405a3:	48 8b cb             	mov    %rbx,%rcx
1406405a6:	48 8b 00             	mov    (%rax),%rax
1406405a9:	ff 15 71 34 94 00    	call   *0x943471(%rip)        # 0x140f83a20
1406405af:	41 8b c6             	mov    %r14d,%eax
1406405b2:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
1406405b7:	83 f8 01             	cmp    $0x1,%eax
1406405ba:	75 10                	jne    0x1406405cc
1406405bc:	48 8b 03             	mov    (%rbx),%rax
1406405bf:	48 8b cb             	mov    %rbx,%rcx
1406405c2:	48 8b 40 08          	mov    0x8(%rax),%rax
1406405c6:	ff 15 54 34 94 00    	call   *0x943454(%rip)        # 0x140f83a20
1406405cc:	4d 8b bc 24 c8 00 00 	mov    0xc8(%r12),%r15
1406405d3:	00
1406405d4:	0f 57 c0             	xorps  %xmm0,%xmm0
1406405d7:	f3 0f 7f 45 c0       	movdqu %xmm0,-0x40(%rbp)
1406405dc:	48 89 75 d0          	mov    %rsi,-0x30(%rbp)
1406405e0:	49 8b 47 60          	mov    0x60(%r15),%rax
1406405e4:	49 2b 47 58          	sub    0x58(%r15),%rax
1406405e8:	48 c1 f8 03          	sar    $0x3,%rax
1406405ec:	48 8b de             	mov    %rsi,%rbx
1406405ef:	48 85 c0             	test   %rax,%rax
1406405f2:	0f 84 b7 00 00 00    	je     0x1406406af
1406405f8:	48 b9 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rcx
1406405ff:	ff ff 1f
140640602:	48 3b c1             	cmp    %rcx,%rax
140640605:	0f 87 bf 02 00 00    	ja     0x1406408ca
14064060b:	48 8d 34 c5 00 00 00 	lea    0x0(,%rax,8),%rsi
140640612:	00
140640613:	48 85 f6             	test   %rsi,%rsi
140640616:	74 3d                	je     0x140640655
140640618:	48 81 fe 00 10 00 00 	cmp    $0x1000,%rsi
14064061f:	72 29                	jb     0x14064064a
140640621:	48 8d 4e 27          	lea    0x27(%rsi),%rcx
140640625:	48 3b ce             	cmp    %rsi,%rcx
140640628:	0f 86 a2 02 00 00    	jbe    0x1406408d0
14064062e:	e8 d5 aa 7d 00       	call   0x140e1b108
140640633:	48 85 c0             	test   %rax,%rax
140640636:	0f 84 9a 02 00 00    	je     0x1406408d6
14064063c:	48 8d 58 27          	lea    0x27(%rax),%rbx
140640640:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140640644:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140640648:	eb 0b                	jmp    0x140640655
14064064a:	48 8b ce             	mov    %rsi,%rcx
14064064d:	e8 b6 aa 7d 00       	call   0x140e1b108
140640652:	48 8b d8             	mov    %rax,%rbx
140640655:	48 8b fb             	mov    %rbx,%rdi
140640658:	48 89 5d c0          	mov    %rbx,-0x40(%rbp)
14064065c:	48 89 5d c8          	mov    %rbx,-0x38(%rbp)
140640660:	48 8d 0c 33          	lea    (%rbx,%rsi,1),%rcx
140640664:	48 89 4d d0          	mov    %rcx,-0x30(%rbp)
140640668:	4d 8b 47 60          	mov    0x60(%r15),%r8
14064066c:	49 8b 57 58          	mov    0x58(%r15),%rdx
140640670:	49 3b d0             	cmp    %r8,%rdx
140640673:	74 34                	je     0x1406406a9
140640675:	48 8b 0a             	mov    (%rdx),%rcx
140640678:	48 89 0b             	mov    %rcx,(%rbx)
14064067b:	48 85 c9             	test   %rcx,%rcx
14064067e:	74 1c                	je     0x14064069c
140640680:	8b 41 10             	mov    0x10(%rcx),%eax
140640683:	ff c0                	inc    %eax
140640685:	89 41 10             	mov    %eax,0x10(%rcx)
140640688:	83 f8 01             	cmp    $0x1,%eax
14064068b:	0f 8e 56 02 00 00    	jle    0x1406408e7
140640691:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140640696:	0f 84 40 02 00 00    	je     0x1406408dc
14064069c:	48 83 c3 08          	add    $0x8,%rbx
1406406a0:	48 83 c2 08          	add    $0x8,%rdx
1406406a4:	49 3b d0             	cmp    %r8,%rdx
1406406a7:	75 cc                	jne    0x140640675
1406406a9:	48 89 5d c8          	mov    %rbx,-0x38(%rbp)
1406406ad:	eb 04                	jmp    0x1406406b3
1406406af:	48 8b 7d c0          	mov    -0x40(%rbp),%rdi
1406406b3:	49 8b 84 24 b0 00 00 	mov    0xb0(%r12),%rax
1406406ba:	00
1406406bb:	48 8b 48 40          	mov    0x40(%rax),%rcx
1406406bf:	48 8b 41 40          	mov    0x40(%rcx),%rax
1406406c3:	8b 70 78             	mov    0x78(%rax),%esi
1406406c6:	49 8b 8c 24 c8 00 00 	mov    0xc8(%r12),%rcx
1406406cd:	00
1406406ce:	48 89 4d 30          	mov    %rcx,0x30(%rbp)
1406406d2:	48 85 c9             	test   %rcx,%rcx
1406406d5:	74 1c                	je     0x1406406f3
1406406d7:	8b 41 10             	mov    0x10(%rcx),%eax
1406406da:	ff c0                	inc    %eax
1406406dc:	89 41 10             	mov    %eax,0x10(%rcx)
1406406df:	83 f8 01             	cmp    $0x1,%eax
1406406e2:	0f 8e 07 02 00 00    	jle    0x1406408ef
1406406e8:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406406ed:	0f 84 04 02 00 00    	je     0x1406408f7
1406406f3:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
1406406f7:	e8 84 ce 12 00       	call   0x14076d580
1406406fc:	48 3b fb             	cmp    %rbx,%rdi
1406406ff:	0f 84 15 01 00 00    	je     0x14064081a
140640705:	49 be b3 01 00 00 00 	movabs $0x100000001b3,%r14
14064070c:	01 00 00
14064070f:	49 bf 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%r15
140640716:	9c f2 cb
140640719:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140640720:	83 ee 01             	sub    $0x1,%esi
140640723:	0f 88 eb 00 00 00    	js     0x140640814
140640729:	48 8b 17             	mov    (%rdi),%rdx
14064072c:	4d 85 ed             	test   %r13,%r13
14064072f:	0f 84 d2 00 00 00    	je     0x140640807
140640735:	48 8b c2             	mov    %rdx,%rax
140640738:	48 c1 e8 08          	shr    $0x8,%rax
14064073c:	44 0f b6 c0          	movzbl %al,%r8d
140640740:	0f b6 c2             	movzbl %dl,%eax
140640743:	49 33 c7             	xor    %r15,%rax
140640746:	49 0f af c6          	imul   %r14,%rax
14064074a:	4c 33 c0             	xor    %rax,%r8
14064074d:	4d 0f af c6          	imul   %r14,%r8
140640751:	48 8b c2             	mov    %rdx,%rax
140640754:	48 c1 e8 10          	shr    $0x10,%rax
140640758:	0f b6 c8             	movzbl %al,%ecx
14064075b:	4c 33 c1             	xor    %rcx,%r8
14064075e:	4d 0f af c6          	imul   %r14,%r8
140640762:	48 8b c2             	mov    %rdx,%rax
140640765:	48 c1 e8 18          	shr    $0x18,%rax
140640769:	0f b6 c8             	movzbl %al,%ecx
14064076c:	4c 33 c1             	xor    %rcx,%r8
14064076f:	4d 0f af c6          	imul   %r14,%r8
140640773:	48 8b c2             	mov    %rdx,%rax
140640776:	48 c1 e8 20          	shr    $0x20,%rax
14064077a:	0f b6 c8             	movzbl %al,%ecx
14064077d:	4c 33 c1             	xor    %rcx,%r8
140640780:	4d 0f af c6          	imul   %r14,%r8
140640784:	48 8b c2             	mov    %rdx,%rax
140640787:	48 c1 e8 28          	shr    $0x28,%rax
14064078b:	0f b6 c8             	movzbl %al,%ecx