14000529b:	45 8b c4             	mov    %r12d,%r8d
14000529e:	49 8b c4             	mov    %r12,%rax
1400052a1:	49 8b 16             	mov    (%r14),%rdx
1400052a4:	48 85 d2             	test   %rdx,%rdx
1400052a7:	74 10                	je     0x1400052b9
1400052a9:	48 8b 52 18          	mov    0x18(%rdx),%rdx
1400052ad:	41 8b c8             	mov    %r8d,%ecx
1400052b0:	41 ff c0             	inc    %r8d
1400052b3:	8b 0c 8b             	mov    (%rbx,%rcx,4),%ecx
1400052b6:	89 4a 08             	mov    %ecx,0x8(%rdx)
1400052b9:	49 83 c6 08          	add    $0x8,%r14
1400052bd:	48 ff c0             	inc    %rax
1400052c0:	49 3b c7             	cmp    %r15,%rax
1400052c3:	72 dc                	jb     0x1400052a1
1400052c5:	48 8b cb             	mov    %rbx,%rcx
1400052c8:	e8 27 c4 02 00       	call   0x1400316f4
1400052cd:	85 ed                	test   %ebp,%ebp
1400052cf:	78 7f                	js     0x140005350
1400052d1:	48 8b 06             	mov    (%rsi),%rax
1400052d4:	48 8b ce             	mov    %rsi,%rcx
1400052d7:	48 8b 40 30          	mov    0x30(%rax),%rax
1400052db:	ff 15 e7 0a 03 00    	call   *0x30ae7(%rip)        # 0x140035dc8
1400052e1:	48 8b d8             	mov    %rax,%rbx
1400052e4:	49 8d 7d 08          	lea    0x8(%r13),%rdi
1400052e8:	48 3b fb             	cmp    %rbx,%rdi
1400052eb:	48 8b c7             	mov    %rdi,%rax
1400052ee:	73 60                	jae    0x140005350
1400052f0:	48 8b 08             	mov    (%rax),%rcx
1400052f3:	48 85 c9             	test   %rcx,%rcx
1400052f6:	75 09                	jne    0x140005301
1400052f8:	48 83 c0 08          	add    $0x8,%rax
1400052fc:	48 3b c3             	cmp    %rbx,%rax
1400052ff:	eb ed                	jmp    0x1400052ee
140005301:	48 8b 41 18          	mov    0x18(%rcx),%rax
140005305:	33 d2                	xor    %edx,%edx
140005307:	48 8b ce             	mov    %rsi,%rcx
14000530a:	4c 8b 40 08          	mov    0x8(%rax),%r8
14000530e:	48 8b 06             	mov    (%rsi),%rax
140005311:	48 8b 40 48          	mov    0x48(%rax),%rax
140005315:	ff 15 ad 0a 03 00    	call   *0x30aad(%rip)        # 0x140035dc8
14000531b:	8b e8                	mov    %eax,%ebp
14000531d:	85 c0                	test   %eax,%eax
14000531f:	78 2f                	js     0x140005350
140005321:	48 2b df             	sub    %rdi,%rbx
140005324:	49 8b cc             	mov    %r12,%rcx
140005327:	48 83 c3 07          	add    $0x7,%rbx
14000532b:	48 c1 eb 03          	shr    $0x3,%rbx
14000532f:	48 85 db             	test   %rbx,%rbx
140005332:	74 1c                	je     0x140005350
140005334:	48 8b 07             	mov    (%rdi),%rax
140005337:	48 85 c0             	test   %rax,%rax
14000533a:	74 08                	je     0x140005344
14000533c:	48 8b 40 18          	mov    0x18(%rax),%rax
140005340:	4c 89 60 08          	mov    %r12,0x8(%rax)
140005344:	48 83 c7 08          	add    $0x8,%rdi
140005348:	48 ff c1             	inc    %rcx
14000534b:	48 3b cb             	cmp    %rbx,%rcx
14000534e:	72 e4                	jb     0x140005334
140005350:	45 33 c0             	xor    %r8d,%r8d
140005353:	48 8b ce             	mov    %rsi,%rcx
140005356:	e8 75 00 00 00       	call   0x1400053d0
14000535b:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140005360:	8b c5                	mov    %ebp,%eax
140005362:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140005367:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
14000536c:	48 83 c4 30          	add    $0x30,%rsp
140005370:	41 5f                	pop    %r15
140005372:	41 5e                	pop    %r14
140005374:	41 5d                	pop    %r13
140005376:	41 5c                	pop    %r12
140005378:	5f                   	pop    %rdi
140005379:	c3                   	ret
14000537a:	cc                   	int3
14000537b:	cc                   	int3
14000537c:	cc                   	int3
14000537d:	cc                   	int3
14000537e:	cc                   	int3
14000537f:	cc                   	int3
140005380:	cc                   	int3
140005381:	cc                   	int3
140005382:	cc                   	int3
140005383:	cc                   	int3
140005384:	cc                   	int3
140005385:	cc                   	int3
140005386:	cc                   	int3
140005387:	cc                   	int3
140005388:	cc                   	int3
140005389:	cc                   	int3
14000538a:	cc                   	int3
14000538b:	cc                   	int3
14000538c:	cc                   	int3
14000538d:	cc                   	int3
14000538e:	cc                   	int3
14000538f:	cc                   	int3
140005390:	48 8d 05 d1 56 03 00 	lea    0x356d1(%rip),%rax        # 0x14003aa68
140005397:	c3                   	ret
140005398:	cc                   	int3
140005399:	cc                   	int3
14000539a:	cc                   	int3
14000539b:	cc                   	int3
14000539c:	cc                   	int3
14000539d:	cc                   	int3
14000539e:	cc                   	int3
14000539f:	cc                   	int3
1400053a0:	48 8d 05 e1 56 03 00 	lea    0x356e1(%rip),%rax        # 0x14003aa88
1400053a7:	c3                   	ret
1400053a8:	cc                   	int3
1400053a9:	cc                   	int3
1400053aa:	cc                   	int3
1400053ab:	cc                   	int3
1400053ac:	cc                   	int3
1400053ad:	cc                   	int3
1400053ae:	cc                   	int3
1400053af:	cc                   	int3
1400053b0:	48 8d 05 19 94 03 00 	lea    0x39419(%rip),%rax        # 0x14003e7d0
1400053b7:	c3                   	ret
1400053b8:	cc                   	int3
1400053b9:	cc                   	int3
1400053ba:	cc                   	int3
1400053bb:	cc                   	int3
1400053bc:	cc                   	int3
1400053bd:	cc                   	int3
1400053be:	cc                   	int3
1400053bf:	cc                   	int3
1400053c0:	8b 05 1a 94 03 00    	mov    0x3941a(%rip),%eax        # 0x14003e7e0
1400053c6:	c3                   	ret
1400053c7:	cc                   	int3
1400053c8:	cc                   	int3
1400053c9:	cc                   	int3
1400053ca:	cc                   	int3
1400053cb:	cc                   	int3
1400053cc:	cc                   	int3
1400053cd:	cc                   	int3
1400053ce:	cc                   	int3
1400053cf:	cc                   	int3
1400053d0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400053d5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1400053da:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1400053df:	57                   	push   %rdi
1400053e0:	41 56                	push   %r14
1400053e2:	41 57                	push   %r15
1400053e4:	48 83 ec 20          	sub    $0x20,%rsp
1400053e8:	48 8b 01             	mov    (%rcx),%rax
1400053eb:	45 8a f8             	mov    %r8b,%r15b
1400053ee:	48 8b f1             	mov    %rcx,%rsi
1400053f1:	48 8b 40 20          	mov    0x20(%rax),%rax
1400053f5:	ff 15 cd 09 03 00    	call   *0x309cd(%rip)        # 0x140035dc8
1400053fb:	48 8b 16             	mov    (%rsi),%rdx
1400053fe:	48 8b ce             	mov    %rsi,%rcx
140005401:	48 8d 58 08          	lea    0x8(%rax),%rbx
140005405:	48 8b 42 30          	mov    0x30(%rdx),%rax
140005409:	ff 15 b9 09 03 00    	call   *0x309b9(%rip)        # 0x140035dc8
14000540f:	4c 8b f0             	mov    %rax,%r14
140005412:	48 3b d8             	cmp    %rax,%rbx
140005415:	0f 83 cb 00 00 00    	jae    0x1400054e6
14000541b:	48 83 3b 00          	cmpq   $0x0,(%rbx)
14000541f:	0f 84 b1 00 00 00    	je     0x1400054d6
140005425:	48 8b 0e             	mov    (%rsi),%rcx
140005428:	48 8b 41 18          	mov    0x18(%rcx),%rax
14000542c:	48 8b ce             	mov    %rsi,%rcx
14000542f:	ff 15 93 09 03 00    	call   *0x30993(%rip)        # 0x140035dc8
140005435:	85 c0                	test   %eax,%eax
140005437:	74 09                	je     0x140005442
140005439:	45 84 ff             	test   %r15b,%r15b
14000543c:	0f 84 a0 00 00 00    	je     0x1400054e2
140005442:	48 8b 03             	mov    (%rbx),%rax
140005445:	48 8b 48 18          	mov    0x18(%rax),%rcx
140005449:	48 8b 01             	mov    (%rcx),%rax
14000544c:	48 85 c0             	test   %rax,%rax
14000544f:	0f 84 81 00 00 00    	je     0x1400054d6
140005455:	48 8b 06             	mov    (%rsi),%rax
140005458:	48 8b ce             	mov    %rsi,%rcx
14000545b:	48 8b 40 38          	mov    0x38(%rax),%rax
14000545f:	ff 15 63 09 03 00    	call   *0x30963(%rip)        # 0x140035dc8
140005465:	48 8b c8             	mov    %rax,%rcx
140005468:	48 8b f8             	mov    %rax,%rdi
14000546b:	48 ff 15 26 04 03 00 	rex.W call *0x30426(%rip)        # 0x140035898
140005472:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140005477:	48 8b 0b             	mov    (%rbx),%rcx
14000547a:	48 8b 41 18          	mov    0x18(%rcx),%rax
14000547e:	48 8b 28             	mov    (%rax),%rbp
140005481:	48 85 ed             	test   %rbp,%rbp
140005484:	75 16                	jne    0x14000549c
140005486:	48 85 ff             	test   %rdi,%rdi
140005489:	74 4b                	je     0x1400054d6
14000548b:	48 8b cf             	mov    %rdi,%rcx
14000548e:	48 ff 15 7b 04 03 00 	rex.W call *0x3047b(%rip)        # 0x140035910
140005495:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000549a:	eb 3a                	jmp    0x1400054d6
14000549c:	48 83 20 00          	andq   $0x0,(%rax)
1400054a0:	48 85 ff             	test   %rdi,%rdi
1400054a3:	74 0f                	je     0x1400054b4
1400054a5:	48 8b cf             	mov    %rdi,%rcx
1400054a8:	48 ff 15 61 04 03 00 	rex.W call *0x30461(%rip)        # 0x140035910
1400054af:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400054b4:	48 8b cd             	mov    %rbp,%rcx
1400054b7:	48 ff 15 f2 04 03 00 	rex.W call *0x304f2(%rip)        # 0x1400359b0
1400054be:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400054c3:	48 8b d0             	mov    %rax,%rdx
1400054c6:	48 8b 08             	mov    (%rax),%rcx
1400054c9:	48 8b 41 10          	mov    0x10(%rcx),%rax
1400054cd:	48 8b ca             	mov    %rdx,%rcx
1400054d0:	ff 15 f2 08 03 00    	call   *0x308f2(%rip)        # 0x140035dc8
1400054d6:	48 83 c3 08          	add    $0x8,%rbx
1400054da:	49 3b de             	cmp    %r14,%rbx
1400054dd:	e9 33 ff ff ff       	jmp    0x140005415
1400054e2:	32 c0                	xor    %al,%al
1400054e4:	eb 15                	jmp    0x1400054fb
1400054e6:	48 8b 06             	mov    (%rsi),%rax
1400054e9:	48 8b ce             	mov    %rsi,%rcx
1400054ec:	48 8b 40 18          	mov    0x18(%rax),%rax
1400054f0:	ff 15 d2 08 03 00    	call   *0x308d2(%rip)        # 0x140035dc8
1400054f6:	85 c0                	test   %eax,%eax
1400054f8:	0f 94 c0             	sete   %al
1400054fb:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140005500:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140005505:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14000550a:	48 83 c4 20          	add    $0x20,%rsp
14000550e:	41 5f                	pop    %r15
140005510:	41 5e                	pop    %r14
140005512:	5f                   	pop    %rdi
140005513:	c3                   	ret
140005514:	cc                   	int3
140005515:	cc                   	int3
140005516:	cc                   	int3
140005517:	cc                   	int3
140005518:	cc                   	int3
140005519:	cc                   	int3
14000551a:	cc                   	int3
14000551b:	cc                   	int3
14000551c:	48 83 ec 28          	sub    $0x28,%rsp
140005520:	48 8b 0d d9 8a 03 00 	mov    0x38ad9(%rip),%rcx        # 0x14003e000
140005527:	48 85 c9             	test   %rcx,%rcx
14000552a:	75 04                	jne    0x140005530
14000552c:	33 c0                	xor    %eax,%eax
14000552e:	eb 14                	jmp    0x140005544
140005530:	48 ff 15 d1 05 03 00 	rex.W call *0x305d1(%rip)        # 0x140035b08
140005537:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000553c:	48 83 25 bc 8a 03 00 	andq   $0x0,0x38abc(%rip)        # 0x14003e000
140005543:	00
140005544:	48 83 c4 28          	add    $0x28,%rsp
140005548:	c3                   	ret
140005549:	cc                   	int3
14000554a:	cc                   	int3
14000554b:	cc                   	int3
14000554c:	cc                   	int3
14000554d:	cc                   	int3
14000554e:	cc                   	int3
14000554f:	cc                   	int3
140005550:	40 53                	rex push %rbx
140005552:	48 83 ec 20          	sub    $0x20,%rsp
140005556:	4c 8b 54 24 60       	mov    0x60(%rsp),%r10
14000555b:	33 db                	xor    %ebx,%ebx
14000555d:	4d 85 d2             	test   %r10,%r10
140005560:	0f 84 e8 00 00 00    	je     0x14000564e
140005566:	85 d2                	test   %edx,%edx
140005568:	0f 84 a5 00 00 00    	je     0x140005613
14000556e:	83 fa 01             	cmp    $0x1,%edx
140005571:	0f 85 d7 00 00 00    	jne    0x14000564e
140005577:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
14000557c:	45 88 42 28          	mov    %r8b,0x28(%r10)
140005580:	44 8b c3             	mov    %ebx,%r8d
140005583:	49 89 42 18          	mov    %rax,0x18(%r10)
140005587:	4d 89 4a 10          	mov    %r9,0x10(%r10)
14000558b:	41 89 52 24          	mov    %edx,0x24(%r10)
14000558f:	66 41 3b 5a 2a       	cmp    0x2a(%r10),%bx
140005594:	0f 83 b4 00 00 00    	jae    0x14000564e
14000559a:	49 8b 42 40          	mov    0x40(%r10),%rax
14000559e:	41 8a 4a 28          	mov    0x28(%r10),%cl
1400055a2:	45 8b c8             	mov    %r8d,%r9d
1400055a5:	41 38 0c 01          	cmp    %cl,(%r9,%rax,1)
1400055a9:	76 04                	jbe    0x1400055af
1400055ab:	84 c9                	test   %cl,%cl
1400055ad:	75 20                	jne    0x1400055cf
1400055af:	49 8b 42 38          	mov    0x38(%r10),%rax
1400055b3:	4a 8b 0c c8          	mov    (%rax,%r9,8),%rcx
1400055b7:	48 85 c9             	test   %rcx,%rcx
1400055ba:	74 18                	je     0x1400055d4
1400055bc:	49 85 4a 10          	test   %rcx,0x10(%r10)
1400055c0:	74 0d                	je     0x1400055cf
1400055c2:	49 8b 42 18          	mov    0x18(%r10),%rax
1400055c6:	48 23 c1             	and    %rcx,%rax
1400055c9:	49 3b 42 18          	cmp    0x18(%r10),%rax
1400055cd:	74 05                	je     0x1400055d4
1400055cf:	44 8a db             	mov    %bl,%r11b
1400055d2:	eb 03                	jmp    0x1400055d7
1400055d4:	41 b3 01             	mov    $0x1,%r11b
1400055d7:	49 8b 42 30          	mov    0x30(%r10),%rax
1400055db:	41 8b c8             	mov    %r8d,%ecx
1400055de:	83 e1 1f             	and    $0x1f,%ecx
1400055e1:	49 c1 e9 05          	shr    $0x5,%r9
1400055e5:	ba 01 00 00 00       	mov    $0x1,%edx
1400055ea:	d3 e2                	shl    %cl,%edx
1400055ec:	4a 8d 0c 88          	lea    (%rax,%r9,4),%rcx
1400055f0:	45 84 db             	test   %r11b,%r11b
1400055f3:	74 04                	je     0x1400055f9
1400055f5:	0b 11                	or     (%rcx),%edx
1400055f7:	eb 04                	jmp    0x1400055fd
1400055f9:	f7 d2                	not    %edx
1400055fb:	23 11                	and    (%rcx),%edx
1400055fd:	89 11                	mov    %edx,(%rcx)
1400055ff:	41 ff c0             	inc    %r8d
140005602:	41 0f b7 42 2a       	movzwl 0x2a(%r10),%eax
140005607:	44 3b c0             	cmp    %eax,%r8d
14000560a:	72 8e                	jb     0x14000559a
14000560c:	48 83 c4 20          	add    $0x20,%rsp
140005610:	5b                   	pop    %rbx
140005611:	c3                   	ret
140005612:	cc                   	int3
140005613:	41 89 5a 24          	mov    %ebx,0x24(%r10)
140005617:	41 88 5a 28          	mov    %bl,0x28(%r10)
14000561b:	49 89 5a 10          	mov    %rbx,0x10(%r10)
14000561f:	49 89 5a 18          	mov    %rbx,0x18(%r10)
140005623:	66 41 39 5a 2a       	cmp    %bx,0x2a(%r10)
140005628:	76 24                	jbe    0x14000564e
14000562a:	41 0f b7 42 2a       	movzwl 0x2a(%r10),%eax
14000562f:	49 8b 4a 30          	mov    0x30(%r10),%rcx
140005633:	ff c8                	dec    %eax
140005635:	99                   	cltd
140005636:	83 e2 1f             	and    $0x1f,%edx
140005639:	03 c2                	add    %edx,%eax
14000563b:	33 d2                	xor    %edx,%edx
14000563d:	c1 f8 05             	sar    $0x5,%eax
140005640:	ff c0                	inc    %eax
140005642:	4c 63 c0             	movslq %eax,%r8
140005645:	49 c1 e0 02          	shl    $0x2,%r8
140005649:	e8 c0 cc 02 00       	call   0x14003230e
14000564e:	48 83 c4 20          	add    $0x20,%rsp
140005652:	5b                   	pop    %rbx
140005653:	c3                   	ret
140005654:	cc                   	int3
140005655:	cc                   	int3
140005656:	cc                   	int3
140005657:	cc                   	int3
140005658:	cc                   	int3
140005659:	cc                   	int3
14000565a:	cc                   	int3
14000565b:	cc                   	int3
14000565c:	48 83 ec 28          	sub    $0x28,%rsp
140005660:	33 c0                	xor    %eax,%eax
140005662:	48 39 05 97 89 03 00 	cmp    %rax,0x38997(%rip)        # 0x14003e000
140005669:	75 24                	jne    0x14000568f
14000566b:	4c 8d 05 8e 89 03 00 	lea    0x3898e(%rip),%r8        # 0x14003e000
140005672:	4d 8b c8             	mov    %r8,%r9
140005675:	48 8d 15 d4 fe ff ff 	lea    -0x12c(%rip),%rdx        # 0x140005550
14000567c:	48 8d 0d 05 11 03 00 	lea    0x31105(%rip),%rcx        # 0x140036788
140005683:	48 ff 15 6e 04 03 00 	rex.W call *0x3046e(%rip)        # 0x140035af8
14000568a:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000568f:	48 83 c4 28          	add    $0x28,%rsp
140005693:	c3                   	ret