140036367:	b8 0c 00 00 00       	mov    $0xc,%eax
14003636c:	44 39 56 30          	cmp    %r10d,0x30(%rsi)
140036370:	75 05                	jne    0x140036377
140036372:	b8 08 00 00 00       	mov    $0x8,%eax
140036377:	42 8b 04 38          	mov    (%rax,%r15,1),%eax
14003637b:	a8 04                	test   $0x4,%al
14003637d:	74 13                	je     0x140036392
14003637f:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
140036383:	48 c1 ea 20          	shr    $0x20,%rdx
140036387:	81 e2 ff cf ff ff    	and    $0xffffcfff,%edx
14003638d:	89 55 f4             	mov    %edx,-0xc(%rbp)
140036390:	eb 03                	jmp    0x140036395
140036392:	8b 55 f4             	mov    -0xc(%rbp),%edx
140036395:	a8 02                	test   $0x2,%al
140036397:	74 09                	je     0x1400363a2
140036399:	81 e2 ff f3 ff ff    	and    $0xfffff3ff,%edx
14003639f:	89 55 f4             	mov    %edx,-0xc(%rbp)
1400363a2:	41 84 c5             	test   %al,%r13b
1400363a5:	74 09                	je     0x1400363b0
1400363a7:	81 e2 ff fc ff ff    	and    $0xfffffcff,%edx
1400363ad:	89 55 f4             	mov    %edx,-0xc(%rbp)
1400363b0:	a8 08                	test   $0x8,%al
1400363b2:	74 0d                	je     0x1400363c1
1400363b4:	81 e2 ff ff ff c0    	and    $0xc0ffffff,%edx
1400363ba:	44 89 55 f8          	mov    %r10d,-0x8(%rbp)
1400363be:	89 55 f4             	mov    %edx,-0xc(%rbp)
1400363c1:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
1400363c5:	45 8b c2             	mov    %r10d,%r8d
1400363c8:	e8 17 f9 ff ff       	call   0x140035ce4
1400363cd:	85 c0                	test   %eax,%eax
1400363cf:	74 47                	je     0x140036418
1400363d1:	8b 45 f8             	mov    -0x8(%rbp),%eax
1400363d4:	89 43 0c             	mov    %eax,0xc(%rbx)
1400363d7:	8b c2                	mov    %edx,%eax
1400363d9:	c1 e8 1e             	shr    $0x1e,%eax
1400363dc:	89 43 08             	mov    %eax,0x8(%rbx)
1400363df:	8b c2                	mov    %edx,%eax
1400363e1:	c1 e8 18             	shr    $0x18,%eax
1400363e4:	24 3f                	and    $0x3f,%al
1400363e6:	88 43 04             	mov    %al,0x4(%rbx)
1400363e9:	8b c2                	mov    %edx,%eax
1400363eb:	d1 e8                	shr    $1,%eax
1400363ed:	41 23 c5             	and    %r13d,%eax
1400363f0:	89 43 14             	mov    %eax,0x14(%rbx)
1400363f3:	8b c2                	mov    %edx,%eax
1400363f5:	c1 e8 0c             	shr    $0xc,%eax
1400363f8:	83 e0 03             	and    $0x3,%eax
1400363fb:	75 0a                	jne    0x140036407
1400363fd:	8b c2                	mov    %edx,%eax
1400363ff:	c1 e8 0a             	shr    $0xa,%eax
140036402:	83 e0 03             	and    $0x3,%eax
140036405:	74 04                	je     0x14003640b
140036407:	89 03                	mov    %eax,(%rbx)
140036409:	eb 0a                	jmp    0x140036415
14003640b:	c1 ea 08             	shr    $0x8,%edx
14003640e:	83 e2 03             	and    $0x3,%edx
140036411:	74 02                	je     0x140036415
140036413:	89 13                	mov    %edx,(%rbx)
140036415:	45 8b c5             	mov    %r13d,%r8d
140036418:	41 0f b7 57 06       	movzwl 0x6(%r15),%edx
14003641d:	41 8b ca             	mov    %r10d,%ecx
140036420:	48 8b 46 28          	mov    0x28(%rsi),%rax
140036424:	85 d2                	test   %edx,%edx
140036426:	74 15                	je     0x14003643d
140036428:	44 39 20             	cmp    %r12d,(%rax)
14003642b:	74 0d                	je     0x14003643a
14003642d:	41 03 cd             	add    %r13d,%ecx
140036430:	48 83 c0 10          	add    $0x10,%rax
140036434:	3b ca                	cmp    %edx,%ecx
140036436:	72 f0                	jb     0x140036428
140036438:	eb 03                	jmp    0x14003643d
14003643a:	45 8b d5             	mov    %r13d,%r10d
14003643d:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140036442:	41 8b c0             	mov    %r8d,%eax
140036445:	48 8b 7c 24 70       	mov    0x70(%rsp),%rdi
14003644a:	44 89 53 10          	mov    %r10d,0x10(%rbx)
14003644e:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140036453:	48 83 c4 30          	add    $0x30,%rsp
140036457:	41 5f                	pop    %r15
140036459:	41 5e                	pop    %r14
14003645b:	41 5d                	pop    %r13
14003645d:	41 5c                	pop    %r12
14003645f:	5d                   	pop    %rbp
140036460:	c3                   	ret
140036461:	cc                   	int3
140036462:	cc                   	int3
140036463:	cc                   	int3
140036464:	cc                   	int3
140036465:	cc                   	int3
140036466:	cc                   	int3
140036467:	cc                   	int3
140036468:	cc                   	int3
140036469:	cc                   	int3
14003646a:	cc                   	int3
14003646b:	cc                   	int3
14003646c:	cc                   	int3
14003646d:	cc                   	int3
14003646e:	cc                   	int3
14003646f:	cc                   	int3
140036470:	48 8b ca             	mov    %rdx,%rcx
140036473:	e9 24 d1 fc ff       	jmp    0x14000359c
140036478:	cc                   	int3
140036479:	cc                   	int3
14003647a:	cc                   	int3
14003647b:	cc                   	int3
14003647c:	cc                   	int3
14003647d:	cc                   	int3
14003647e:	cc                   	int3
14003647f:	cc                   	int3
140036480:	48 8b c4             	mov    %rsp,%rax
140036483:	53                   	push   %rbx
140036484:	48 83 ec 50          	sub    $0x50,%rsp
140036488:	4c 8b d9             	mov    %rcx,%r11
14003648b:	8b da                	mov    %edx,%ebx
14003648d:	8b 94 24 88 00 00 00 	mov    0x88(%rsp),%edx
140036494:	b9 03 00 00 00       	mov    $0x3,%ecx
140036499:	89 48 38             	mov    %ecx,0x38(%rax)
14003649c:	45 8b d0             	mov    %r8d,%r10d
14003649f:	e8 d4 04 00 00       	call   0x140036978
1400364a4:	45 8b c2             	mov    %r10d,%r8d
1400364a7:	89 44 24 20          	mov    %eax,0x20(%rsp)
1400364ab:	8b d3                	mov    %ebx,%edx
1400364ad:	49 8b cb             	mov    %r11,%rcx
1400364b0:	e8 5b 00 00 00       	call   0x140036510
1400364b5:	85 c0                	test   %eax,%eax
1400364b7:	74 48                	je     0x140036501
1400364b9:	48 8b 05 b0 a8 06 00 	mov    0x6a8b0(%rip),%rax        # 0x1400a0d70
1400364c0:	48 85 c0             	test   %rax,%rax
1400364c3:	74 3c                	je     0x140036501
1400364c5:	44 8b 8c 24 88 00 00 	mov    0x88(%rsp),%r9d
1400364cc:	00
1400364cd:	48 8d 8c 24 90 00 00 	lea    0x90(%rsp),%rcx
1400364d4:	00
1400364d5:	48 8b 94 24 80 00 00 	mov    0x80(%rsp),%rdx
1400364dc:	00
1400364dd:	45 33 c0             	xor    %r8d,%r8d
1400364e0:	48 c7 44 24 38 01 00 	movq   $0x1,0x38(%rsp)
1400364e7:	00 00
1400364e9:	c6 44 24 30 00       	movb   $0x0,0x30(%rsp)
1400364ee:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
1400364f4:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1400364f9:	8b cb                	mov    %ebx,%ecx
1400364fb:	ff 15 c7 f1 04 00    	call   *0x4f1c7(%rip)        # 0x1400856c8
140036501:	48 83 c4 50          	add    $0x50,%rsp
140036505:	5b                   	pop    %rbx
140036506:	c3                   	ret
140036507:	cc                   	int3
140036508:	cc                   	int3
140036509:	cc                   	int3
14003650a:	cc                   	int3
14003650b:	cc                   	int3
14003650c:	cc                   	int3
14003650d:	cc                   	int3
14003650e:	cc                   	int3
14003650f:	cc                   	int3
140036510:	48 8b c4             	mov    %rsp,%rax
140036513:	48 89 58 08          	mov    %rbx,0x8(%rax)
140036517:	48 89 68 10          	mov    %rbp,0x10(%rax)
14003651b:	48 89 70 18          	mov    %rsi,0x18(%rax)
14003651f:	57                   	push   %rdi
140036520:	41 56                	push   %r14
140036522:	41 57                	push   %r15
140036524:	48 83 ec 60          	sub    $0x60,%rsp
140036528:	8b bc 24 a0 00 00 00 	mov    0xa0(%rsp),%edi
14003652f:	8b f2                	mov    %edx,%esi
140036531:	48 8b d1             	mov    %rcx,%rdx
140036534:	45 8b f0             	mov    %r8d,%r14d
140036537:	48 8b e9             	mov    %rcx,%rbp
14003653a:	44 8b c7             	mov    %edi,%r8d
14003653d:	48 8d 48 d0          	lea    -0x30(%rax),%rcx
140036541:	45 8b f9             	mov    %r9d,%r15d
140036544:	e8 d3 02 00 00       	call   0x14003681c
140036549:	33 db                	xor    %ebx,%ebx
14003654b:	0f 10 08             	movups (%rax),%xmm1
14003654e:	f2 0f 10 40 10       	movsd  0x10(%rax),%xmm0
140036553:	48 8b 05 de a5 06 00 	mov    0x6a5de(%rip),%rax        # 0x1400a0b38
14003655a:	f2 0f 11 44 24 40    	movsd  %xmm0,0x40(%rsp)
140036560:	0f 11 4c 24 30       	movups %xmm1,0x30(%rsp)
140036565:	48 85 c0             	test   %rax,%rax
140036568:	74 1c                	je     0x140036586
14003656a:	85 ff                	test   %edi,%edi
14003656c:	74 08                	je     0x140036576
14003656e:	8d 4f 9c             	lea    -0x64(%rdi),%ecx
140036571:	83 f9 31             	cmp    $0x31,%ecx
140036574:	77 10                	ja     0x140036586
140036576:	41 b8 01 00 00 00    	mov    $0x1,%r8d
14003657c:	8b d7                	mov    %edi,%edx
14003657e:	8b ce                	mov    %esi,%ecx
140036580:	ff 15 42 f1 04 00    	call   *0x4f142(%rip)        # 0x1400856c8
140036586:	39 5c 24 30          	cmp    %ebx,0x30(%rsp)
14003658a:	74 11                	je     0x14003659d
14003658c:	4c 8b c5             	mov    %rbp,%r8
14003658f:	48 8d 0d ba 9a 06 00 	lea    0x69aba(%rip),%rcx        # 0x1400a0050
140036596:	8b d6                	mov    %esi,%edx
140036598:	e8 57 d0 fc ff       	call   0x1400035f4
14003659d:	44 8b 44 24 34       	mov    0x34(%rsp),%r8d
1400365a2:	45 85 c0             	test   %r8d,%r8d
1400365a5:	74 27                	je     0x1400365ce
1400365a7:	48 8b 05 82 a5 06 00 	mov    0x6a582(%rip),%rax        # 0x1400a0b30
1400365ae:	48 85 c0             	test   %rax,%rax
1400365b1:	75 0c                	jne    0x1400365bf
1400365b3:	48 8b 05 36 a7 06 00 	mov    0x6a736(%rip),%rax        # 0x1400a0cf0
1400365ba:	48 85 c0             	test   %rax,%rax
1400365bd:	74 0f                	je     0x1400365ce
1400365bf:	8b 54 24 38          	mov    0x38(%rsp),%edx
1400365c3:	45 33 c9             	xor    %r9d,%r9d
1400365c6:	8b ce                	mov    %esi,%ecx
1400365c8:	ff 15 fa f0 04 00    	call   *0x4f0fa(%rip)        # 0x1400856c8
1400365ce:	39 5c 24 40          	cmp    %ebx,0x40(%rsp)
1400365d2:	75 13                	jne    0x1400365e7
1400365d4:	48 8d 15 d5 03 02 00 	lea    0x203d5(%rip),%rdx        # 0x1400569b0
1400365db:	48 8d 0d 6e 9a 06 00 	lea    0x69a6e(%rip),%rcx        # 0x1400a0050
1400365e2:	e8 c1 33 ff ff       	call   0x1400299a8
1400365e7:	45 85 f6             	test   %r14d,%r14d
1400365ea:	74 32                	je     0x14003661e
1400365ec:	48 8b 05 3d a5 06 00 	mov    0x6a53d(%rip),%rax        # 0x1400a0b30
1400365f3:	8b d7                	mov    %edi,%edx
1400365f5:	0f ba ea 1f          	bts    $0x1f,%edx
1400365f9:	45 85 ff             	test   %r15d,%r15d
1400365fc:	0f 44 d7             	cmove  %edi,%edx
1400365ff:	48 85 c0             	test   %rax,%rax
140036602:	75 0c                	jne    0x140036610
140036604:	48 8b 05 e5 a6 06 00 	mov    0x6a6e5(%rip),%rax        # 0x1400a0cf0
14003660b:	48 85 c0             	test   %rax,%rax
14003660e:	74 0e                	je     0x14003661e
140036610:	45 33 c9             	xor    %r9d,%r9d
140036613:	45 33 c0             	xor    %r8d,%r8d
140036616:	8b ce                	mov    %esi,%ecx
140036618:	ff 15 aa f0 04 00    	call   *0x4f0aa(%rip)        # 0x1400856c8
14003661e:	39 5c 24 40          	cmp    %ebx,0x40(%rsp)
140036622:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
140036627:	49 8b 6b 28          	mov    0x28(%r11),%rbp
14003662b:	49 8b 73 30          	mov    0x30(%r11),%rsi
14003662f:	0f 94 c3             	sete   %bl
140036632:	8b c3                	mov    %ebx,%eax
140036634:	49 8b 5b 20          	mov    0x20(%r11),%rbx
140036638:	49 8b e3             	mov    %r11,%rsp
14003663b:	41 5f                	pop    %r15
14003663d:	41 5e                	pop    %r14
14003663f:	5f                   	pop    %rdi
140036640:	c3                   	ret
140036641:	cc                   	int3
140036642:	cc                   	int3
140036643:	cc                   	int3
140036644:	cc                   	int3
140036645:	cc                   	int3
140036646:	cc                   	int3
140036647:	cc                   	int3
140036648:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14003664d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140036652:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140036657:	44 8b 01             	mov    (%rcx),%r8d
14003665a:	33 db                	xor    %ebx,%ebx
14003665c:	83 fa 05             	cmp    $0x5,%edx
14003665f:	44 8b da             	mov    %edx,%r11d
140036662:	48 8b f9             	mov    %rcx,%rdi
140036665:	be 01 00 00 00       	mov    $0x1,%esi
14003666a:	0f 94 c3             	sete   %bl
14003666d:	41 83 61 04 00       	andl   $0x0,0x4(%r9)
140036672:	41 8b c8             	mov    %r8d,%ecx
140036675:	0b ce                	or     %esi,%ecx
140036677:	8b c1                	mov    %ecx,%eax
140036679:	c1 e8 16             	shr    $0x16,%eax
14003667c:	23 c6                	and    %esi,%eax
14003667e:	3b c3                	cmp    %ebx,%eax
140036680:	74 3b                	je     0x1400366bd
140036682:	8b d1                	mov    %ecx,%edx
140036684:	c1 ea 0f             	shr    $0xf,%edx
140036687:	83 e2 7f             	and    $0x7f,%edx
14003668a:	76 19                	jbe    0x1400366a5
14003668c:	44 3b de             	cmp    %esi,%r11d
14003668f:	41 89 51 04          	mov    %edx,0x4(%r9)
140036693:	b8 05 00 00 00       	mov    $0x5,%eax
140036698:	0f 45 c6             	cmovne %esi,%eax
14003669b:	81 e1 ff 7f c0 ff    	and    $0xffc07fff,%ecx
1400366a1:	41 89 41 08          	mov    %eax,0x8(%r9)
1400366a5:	33 d2                	xor    %edx,%edx
1400366a7:	b8 00 00 40 00       	mov    $0x400000,%eax
1400366ac:	41 83 fb 05          	cmp    $0x5,%r11d
1400366b0:	0f 44 d0             	cmove  %eax,%edx
1400366b3:	8b c1                	mov    %ecx,%eax
1400366b5:	0f ba f0 16          	btr    $0x16,%eax
1400366b9:	8b ca                	mov    %edx,%ecx
1400366bb:	0b c8                	or     %eax,%ecx
1400366bd:	44 8b d1             	mov    %ecx,%r10d
1400366c0:	41 c1 ea 0f          	shr    $0xf,%r10d
1400366c4:	41 83 e2 7f          	and    $0x7f,%r10d
1400366c8:	41 8d 52 01          	lea    0x1(%r10),%edx
1400366cc:	48 83 fa 7f          	cmp    $0x7f,%rdx
1400366d0:	77 0e                	ja     0x1400366e0
1400366d2:	8b c1                	mov    %ecx,%eax
1400366d4:	48 c1 e8 0f          	shr    $0xf,%rax
1400366d8:	83 e0 7f             	and    $0x7f,%eax
1400366db:	48 3b d0             	cmp    %rax,%rdx
1400366de:	73 0b                	jae    0x1400366eb
1400366e0:	48 8b d6             	mov    %rsi,%rdx
1400366e3:	45 89 59 08          	mov    %r11d,0x8(%r9)
1400366e7:	45 89 51 04          	mov    %r10d,0x4(%r9)
1400366eb:	c1 e2 0f             	shl    $0xf,%edx
1400366ee:	41 8b c0             	mov    %r8d,%eax
1400366f1:	33 d1                	xor    %ecx,%edx
1400366f3:	81 e2 00 80 3f 00    	and    $0x3f8000,%edx
1400366f9:	33 ca                	xor    %edx,%ecx
1400366fb:	f0 0f b1 0f          	lock cmpxchg %ecx,(%rdi)
1400366ff:	74 08                	je     0x140036709
140036701:	44 8b c0             	mov    %eax,%r8d
140036704:	e9 64 ff ff ff       	jmp    0x14003666d
140036709:	41 83 61 10 00       	andl   $0x0,0x10(%r9)
14003670e:	41 f7 d0             	not    %r8d
140036711:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140036716:	44 23 c6             	and    %esi,%r8d
140036719:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
14003671e:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
140036723:	45 89 01             	mov    %r8d,(%r9)
140036726:	c3                   	ret
140036727:	cc                   	int3
140036728:	cc                   	int3
140036729:	cc                   	int3
14003672a:	cc                   	int3
14003672b:	cc                   	int3
14003672c:	cc                   	int3
14003672d:	cc                   	int3
14003672e:	cc                   	int3
14003672f:	cc                   	int3
140036730:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140036735:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14003673a:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
14003673f:	44 8b 01             	mov    (%rcx),%r8d
140036742:	33 db                	xor    %ebx,%ebx
140036744:	83 fa 04             	cmp    $0x4,%edx
140036747:	44 8b da             	mov    %edx,%r11d
14003674a:	48 8b f9             	mov    %rcx,%rdi
14003674d:	bd ff 01 00 00       	mov    $0x1ff,%ebp
140036752:	0f 94 c3             	sete   %bl
140036755:	41 83 61 04 00       	andl   $0x0,0x4(%r9)
14003675a:	41 8b c8             	mov    %r8d,%ecx
14003675d:	83 c9 01             	or     $0x1,%ecx
140036760:	8b c1                	mov    %ecx,%eax
140036762:	c1 e8 0e             	shr    $0xe,%eax
140036765:	83 e0 01             	and    $0x1,%eax
140036768:	3b c3                	cmp    %ebx,%eax
14003676a:	74 3e                	je     0x1400367aa
14003676c:	44 8b d1             	mov    %ecx,%r10d
14003676f:	41 c1 ea 05          	shr    $0x5,%r10d
140036773:	44 23 d5             	and    %ebp,%r10d
140036776:	76 1a                	jbe    0x140036792
140036778:	41 8b c3             	mov    %r11d,%eax
14003677b:	45 89 51 04          	mov    %r10d,0x4(%r9)
14003677f:	f7 d8                	neg    %eax
140036781:	1b d2                	sbb    %edx,%edx