1400292f7:	57                   	push   %rdi
1400292f8:	48 83 ec 20          	sub    $0x20,%rsp
1400292fc:	ff 15 a6 2d 01 00    	call   *0x12da6(%rip)        # 0x14003c0a8
140029302:	33 ed                	xor    %ebp,%ebp
140029304:	48 8b d8             	mov    %rax,%rbx
140029307:	48 85 c0             	test   %rax,%rax
14002930a:	74 63                	je     0x14002936f
14002930c:	48 8b f3             	mov    %rbx,%rsi
14002930f:	66 39 28             	cmp    %bp,(%rax)
140029312:	74 1a                	je     0x14002932e
140029314:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
140029318:	48 ff c0             	inc    %rax
14002931b:	66 39 2c 46          	cmp    %bp,(%rsi,%rax,2)
14002931f:	75 f7                	jne    0x140029318
140029321:	48 8d 34 46          	lea    (%rsi,%rax,2),%rsi
140029325:	48 83 c6 02          	add    $0x2,%rsi
140029329:	66 39 2e             	cmp    %bp,(%rsi)
14002932c:	75 e6                	jne    0x140029314
14002932e:	48 2b f3             	sub    %rbx,%rsi
140029331:	48 83 c6 02          	add    $0x2,%rsi
140029335:	48 d1 fe             	sar    $1,%rsi
140029338:	48 03 f6             	add    %rsi,%rsi
14002933b:	48 8b ce             	mov    %rsi,%rcx
14002933e:	e8 bd 81 fd ff       	call   0x140001500
140029343:	48 8b f8             	mov    %rax,%rdi
140029346:	48 85 c0             	test   %rax,%rax
140029349:	74 11                	je     0x14002935c
14002934b:	4c 8b c6             	mov    %rsi,%r8
14002934e:	48 8b d3             	mov    %rbx,%rdx
140029351:	48 8b c8             	mov    %rax,%rcx
140029354:	e8 b7 14 01 00       	call   0x14003a810
140029359:	48 8b ef             	mov    %rdi,%rbp
14002935c:	33 c9                	xor    %ecx,%ecx
14002935e:	e8 7d 81 fd ff       	call   0x1400014e0
140029363:	48 8b cb             	mov    %rbx,%rcx
140029366:	ff 15 34 2d 01 00    	call   *0x12d34(%rip)        # 0x14003c0a0
14002936c:	48 8b c5             	mov    %rbp,%rax
14002936f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140029374:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140029379:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14002937e:	48 83 c4 20          	add    $0x20,%rsp
140029382:	5f                   	pop    %rdi
140029383:	c3                   	ret
140029384:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140029389:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14002938e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140029393:	57                   	push   %rdi
140029394:	41 54                	push   %r12
140029396:	41 55                	push   %r13
140029398:	41 56                	push   %r14
14002939a:	41 57                	push   %r15
14002939c:	48 83 ec 30          	sub    $0x30,%rsp
1400293a0:	33 f6                	xor    %esi,%esi
1400293a2:	8b ea                	mov    %edx,%ebp
1400293a4:	4c 8b f9             	mov    %rcx,%r15
1400293a7:	48 85 c9             	test   %rcx,%rcx
1400293aa:	75 10                	jne    0x1400293bc
1400293ac:	e8 2b 7d ff ff       	call   0x1400210dc
1400293b1:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
1400293b7:	e9 f6 02 00 00       	jmp    0x1400296b2
1400293bc:	ba 3d 00 00 00       	mov    $0x3d,%edx
1400293c1:	49 8b ff             	mov    %r15,%rdi
1400293c4:	e8 9b 05 01 00       	call   0x140039964
1400293c9:	4c 8b e8             	mov    %rax,%r13
1400293cc:	48 85 c0             	test   %rax,%rax
1400293cf:	0f 84 ca 02 00 00    	je     0x14002969f
1400293d5:	49 3b c7             	cmp    %r15,%rax
1400293d8:	0f 84 c1 02 00 00    	je     0x14002969f
1400293de:	4c 8b 35 6b 8c 02 00 	mov    0x28c6b(%rip),%r14        # 0x140052050
1400293e5:	4c 3b 35 6c 8c 02 00 	cmp    0x28c6c(%rip),%r14        # 0x140052058
1400293ec:	44 0f b7 60 02       	movzwl 0x2(%rax),%r12d
1400293f1:	75 12                	jne    0x140029405
1400293f3:	49 8b ce             	mov    %r14,%rcx
1400293f6:	e8 ed 02 00 00       	call   0x1400296e8
1400293fb:	4c 8b f0             	mov    %rax,%r14
1400293fe:	48 89 05 4b 8c 02 00 	mov    %rax,0x28c4b(%rip)        # 0x140052050
140029405:	bb 01 00 00 00       	mov    $0x1,%ebx
14002940a:	4d 85 f6             	test   %r14,%r14
14002940d:	0f 85 cd 00 00 00    	jne    0x1400294e0
140029413:	48 8b 05 2e 8c 02 00 	mov    0x28c2e(%rip),%rax        # 0x140052048
14002941a:	85 ed                	test   %ebp,%ebp
14002941c:	74 51                	je     0x14002946f
14002941e:	48 85 c0             	test   %rax,%rax
140029421:	74 4c                	je     0x14002946f
140029423:	e8 fc 4e ff ff       	call   0x14001e324
140029428:	48 85 c0             	test   %rax,%rax
14002942b:	75 1e                	jne    0x14002944b
14002942d:	e8 aa 7c ff ff       	call   0x1400210dc
140029432:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140029438:	48 83 cd ff          	or     $0xffffffffffffffff,%rbp
14002943c:	49 8b cf             	mov    %r15,%rcx
14002943f:	e8 9c 80 fd ff       	call   0x1400014e0
140029444:	8b c5                	mov    %ebp,%eax
140029446:	e9 6b 02 00 00       	jmp    0x1400296b6
14002944b:	4c 8b 35 fe 8b 02 00 	mov    0x28bfe(%rip),%r14        # 0x140052050
140029452:	4c 3b 35 ff 8b 02 00 	cmp    0x28bff(%rip),%r14        # 0x140052058
140029459:	75 7c                	jne    0x1400294d7
14002945b:	49 8b ce             	mov    %r14,%rcx
14002945e:	e8 85 02 00 00       	call   0x1400296e8
140029463:	4c 8b f0             	mov    %rax,%r14
140029466:	48 89 05 e3 8b 02 00 	mov    %rax,0x28be3(%rip)        # 0x140052050
14002946d:	eb 68                	jmp    0x1400294d7
14002946f:	66 45 85 e4          	test   %r12w,%r12w
140029473:	0f 84 1f 01 00 00    	je     0x140029598
140029479:	48 85 c0             	test   %rax,%rax
14002947c:	75 2e                	jne    0x1400294ac
14002947e:	8d 50 08             	lea    0x8(%rax),%edx
140029481:	48 8b cb             	mov    %rbx,%rcx
140029484:	e8 e7 7f fd ff       	call   0x140001470
140029489:	33 c9                	xor    %ecx,%ecx
14002948b:	48 89 05 b6 8b 02 00 	mov    %rax,0x28bb6(%rip)        # 0x140052048
140029492:	e8 49 80 fd ff       	call   0x1400014e0
140029497:	48 39 35 aa 8b 02 00 	cmp    %rsi,0x28baa(%rip)        # 0x140052048
14002949e:	74 98                	je     0x140029438
1400294a0:	4c 8b 35 a9 8b 02 00 	mov    0x28ba9(%rip),%r14        # 0x140052050
1400294a7:	4d 85 f6             	test   %r14,%r14
1400294aa:	75 34                	jne    0x1400294e0
1400294ac:	ba 08 00 00 00       	mov    $0x8,%edx
1400294b1:	48 8b cb             	mov    %rbx,%rcx
1400294b4:	e8 b7 7f fd ff       	call   0x140001470
1400294b9:	33 c9                	xor    %ecx,%ecx
1400294bb:	48 89 05 8e 8b 02 00 	mov    %rax,0x28b8e(%rip)        # 0x140052050
1400294c2:	e8 19 80 fd ff       	call   0x1400014e0
1400294c7:	4c 8b 35 82 8b 02 00 	mov    0x28b82(%rip),%r14        # 0x140052050
1400294ce:	4d 85 f6             	test   %r14,%r14
1400294d1:	0f 84 61 ff ff ff    	je     0x140029438
1400294d7:	4d 85 f6             	test   %r14,%r14
1400294da:	0f 84 58 ff ff ff    	je     0x140029438
1400294e0:	49 8b 06             	mov    (%r14),%rax
1400294e3:	4d 2b ef             	sub    %r15,%r13
1400294e6:	49 d1 fd             	sar    $1,%r13
1400294e9:	49 8b de             	mov    %r14,%rbx
1400294ec:	48 85 c0             	test   %rax,%rax
1400294ef:	74 3a                	je     0x14002952b
1400294f1:	4d 8b c5             	mov    %r13,%r8
1400294f4:	48 8b d0             	mov    %rax,%rdx
1400294f7:	49 8b cf             	mov    %r15,%rcx
1400294fa:	e8 dd 7f 00 00       	call   0x1400314dc
1400294ff:	85 c0                	test   %eax,%eax
140029501:	75 16                	jne    0x140029519
140029503:	48 8b 03             	mov    (%rbx),%rax
140029506:	b9 3d 00 00 00       	mov    $0x3d,%ecx
14002950b:	66 42 39 0c 68       	cmp    %cx,(%rax,%r13,2)
140029510:	74 10                	je     0x140029522
140029512:	66 42 39 34 68       	cmp    %si,(%rax,%r13,2)
140029517:	74 09                	je     0x140029522
140029519:	48 83 c3 08          	add    $0x8,%rbx
14002951d:	48 8b 03             	mov    (%rbx),%rax
140029520:	eb ca                	jmp    0x1400294ec
140029522:	49 2b de             	sub    %r14,%rbx
140029525:	48 c1 fb 03          	sar    $0x3,%rbx
140029529:	eb 0a                	jmp    0x140029535
14002952b:	49 2b de             	sub    %r14,%rbx
14002952e:	48 c1 fb 03          	sar    $0x3,%rbx
140029532:	48 f7 db             	neg    %rbx
140029535:	48 85 db             	test   %rbx,%rbx
140029538:	78 58                	js     0x140029592
14002953a:	49 39 36             	cmp    %rsi,(%r14)
14002953d:	74 53                	je     0x140029592
14002953f:	49 8b 0c de          	mov    (%r14,%rbx,8),%rcx
140029543:	e8 98 7f fd ff       	call   0x1400014e0
140029548:	66 45 85 e4          	test   %r12w,%r12w
14002954c:	74 15                	je     0x140029563
14002954e:	4d 89 3c de          	mov    %r15,(%r14,%rbx,8)
140029552:	e9 9c 00 00 00       	jmp    0x1400295f3
140029557:	49 8b 44 de 08       	mov    0x8(%r14,%rbx,8),%rax
14002955c:	49 89 04 de          	mov    %rax,(%r14,%rbx,8)
140029560:	48 ff c3             	inc    %rbx
140029563:	49 39 34 de          	cmp    %rsi,(%r14,%rbx,8)
140029567:	75 ee                	jne    0x140029557
140029569:	41 b8 08 00 00 00    	mov    $0x8,%r8d
14002956f:	48 8b d3             	mov    %rbx,%rdx
140029572:	49 8b ce             	mov    %r14,%rcx
140029575:	e8 d6 7f fd ff       	call   0x140001550
14002957a:	33 c9                	xor    %ecx,%ecx
14002957c:	48 8b d8             	mov    %rax,%rbx
14002957f:	e8 5c 7f fd ff       	call   0x1400014e0
140029584:	48 85 db             	test   %rbx,%rbx
140029587:	74 6d                	je     0x1400295f6
140029589:	48 89 1d c0 8a 02 00 	mov    %rbx,0x28ac0(%rip)        # 0x140052050
140029590:	eb 64                	jmp    0x1400295f6
140029592:	66 45 85 e4          	test   %r12w,%r12w
140029596:	75 07                	jne    0x14002959f
140029598:	8b ee                	mov    %esi,%ebp
14002959a:	e9 9d fe ff ff       	jmp    0x14002943c
14002959f:	48 f7 db             	neg    %rbx
1400295a2:	48 8d 53 02          	lea    0x2(%rbx),%rdx
1400295a6:	48 3b d3             	cmp    %rbx,%rdx
1400295a9:	0f 82 89 fe ff ff    	jb     0x140029438
1400295af:	48 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rax
1400295b6:	ff ff 1f
1400295b9:	48 3b d0             	cmp    %rax,%rdx
1400295bc:	0f 83 76 fe ff ff    	jae    0x140029438
1400295c2:	41 b8 08 00 00 00    	mov    $0x8,%r8d
1400295c8:	49 8b ce             	mov    %r14,%rcx
1400295cb:	e8 80 7f fd ff       	call   0x140001550
1400295d0:	33 c9                	xor    %ecx,%ecx
1400295d2:	4c 8b f0             	mov    %rax,%r14
1400295d5:	e8 06 7f fd ff       	call   0x1400014e0
1400295da:	4d 85 f6             	test   %r14,%r14
1400295dd:	0f 84 55 fe ff ff    	je     0x140029438
1400295e3:	4d 89 3c de          	mov    %r15,(%r14,%rbx,8)
1400295e7:	49 89 74 de 08       	mov    %rsi,0x8(%r14,%rbx,8)
1400295ec:	4c 89 35 5d 8a 02 00 	mov    %r14,0x28a5d(%rip)        # 0x140052050
1400295f3:	48 8b fe             	mov    %rsi,%rdi
1400295f6:	85 ed                	test   %ebp,%ebp
1400295f8:	0f 84 95 00 00 00    	je     0x140029693
1400295fe:	48 83 cd ff          	or     $0xffffffffffffffff,%rbp
140029602:	4c 8b f5             	mov    %rbp,%r14
140029605:	49 ff c6             	inc    %r14
140029608:	66 43 39 34 77       	cmp    %si,(%r15,%r14,2)
14002960d:	75 f6                	jne    0x140029605
14002960f:	ba 02 00 00 00       	mov    $0x2,%edx
140029614:	4c 03 f2             	add    %rdx,%r14
140029617:	49 8b ce             	mov    %r14,%rcx
14002961a:	e8 51 7e fd ff       	call   0x140001470
14002961f:	48 8b d8             	mov    %rax,%rbx
140029622:	48 85 c0             	test   %rax,%rax
140029625:	75 09                	jne    0x140029630
140029627:	33 c9                	xor    %ecx,%ecx
140029629:	e8 b2 7e fd ff       	call   0x1400014e0
14002962e:	eb 4f                	jmp    0x14002967f
140029630:	4d 8b c7             	mov    %r15,%r8
140029633:	49 8b d6             	mov    %r14,%rdx
140029636:	48 8b cb             	mov    %rbx,%rcx
140029639:	e8 06 cc fe ff       	call   0x140016244
14002963e:	85 c0                	test   %eax,%eax
140029640:	0f 85 8d 00 00 00    	jne    0x1400296d3
140029646:	66 41 f7 dc          	neg    %r12w
14002964a:	66 42 89 34 6b       	mov    %si,(%rbx,%r13,2)
14002964f:	49 8d 45 01          	lea    0x1(%r13),%rax
140029653:	48 8b cb             	mov    %rbx,%rcx
140029656:	48 1b d2             	sbb    %rdx,%rdx
140029659:	48 8d 04 43          	lea    (%rbx,%rax,2),%rax
14002965d:	48 23 d0             	and    %rax,%rdx
140029660:	ff 15 32 2a 01 00    	call   *0x12a32(%rip)        # 0x14003c098
140029666:	85 c0                	test   %eax,%eax
140029668:	75 21                	jne    0x14002968b
14002966a:	e8 6d 7a ff ff       	call   0x1400210dc
14002966f:	48 8b cb             	mov    %rbx,%rcx
140029672:	c7 00 2a 00 00 00    	movl   $0x2a,(%rax)
140029678:	e8 63 7e fd ff       	call   0x1400014e0
14002967d:	8b f5                	mov    %ebp,%esi
14002967f:	48 8b cf             	mov    %rdi,%rcx
140029682:	e8 59 7e fd ff       	call   0x1400014e0
140029687:	8b c6                	mov    %esi,%eax
140029689:	eb 2b                	jmp    0x1400296b6
14002968b:	48 8b cb             	mov    %rbx,%rcx
14002968e:	e8 4d 7e fd ff       	call   0x1400014e0
140029693:	48 8b cf             	mov    %rdi,%rcx
140029696:	e8 45 7e fd ff       	call   0x1400014e0
14002969b:	33 c0                	xor    %eax,%eax
14002969d:	eb 17                	jmp    0x1400296b6
14002969f:	e8 38 7a ff ff       	call   0x1400210dc
1400296a4:	49 8b cf             	mov    %r15,%rcx
1400296a7:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
1400296ad:	e8 2e 7e fd ff       	call   0x1400014e0
1400296b2:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
1400296b6:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1400296bb:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
1400296c0:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
1400296c5:	48 83 c4 30          	add    $0x30,%rsp
1400296c9:	41 5f                	pop    %r15
1400296cb:	41 5e                	pop    %r14
1400296cd:	41 5d                	pop    %r13
1400296cf:	41 5c                	pop    %r12
1400296d1:	5f                   	pop    %rdi
1400296d2:	c3                   	ret
1400296d3:	45 33 c9             	xor    %r9d,%r9d
1400296d6:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1400296db:	45 33 c0             	xor    %r8d,%r8d
1400296de:	33 d2                	xor    %edx,%edx
1400296e0:	33 c9                	xor    %ecx,%ecx
1400296e2:	e8 bd 58 fe ff       	call   0x14000efa4
1400296e7:	cc                   	int3
1400296e8:	48 8b c4             	mov    %rsp,%rax
1400296eb:	48 89 58 08          	mov    %rbx,0x8(%rax)
1400296ef:	48 89 68 10          	mov    %rbp,0x10(%rax)
1400296f3:	48 89 70 18          	mov    %rsi,0x18(%rax)
1400296f7:	48 89 78 20          	mov    %rdi,0x20(%rax)
1400296fb:	41 56                	push   %r14
1400296fd:	48 83 ec 30          	sub    $0x30,%rsp
140029701:	33 ed                	xor    %ebp,%ebp
140029703:	48 8b f9             	mov    %rcx,%rdi
140029706:	48 85 c9             	test   %rcx,%rcx
140029709:	75 1d                	jne    0x140029728
14002970b:	33 c0                	xor    %eax,%eax
14002970d:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140029712:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140029717:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14002971c:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140029721:	48 83 c4 30          	add    $0x30,%rsp
140029725:	41 5e                	pop    %r14
140029727:	c3                   	ret
140029728:	48 8b cd             	mov    %rbp,%rcx
14002972b:	48 8b c7             	mov    %rdi,%rax
14002972e:	48 39 2f             	cmp    %rbp,(%rdi)
140029731:	74 0c                	je     0x14002973f
140029733:	48 ff c1             	inc    %rcx
140029736:	48 8d 40 08          	lea    0x8(%rax),%rax
14002973a:	48 39 28             	cmp    %rbp,(%rax)
14002973d:	75 f4                	jne    0x140029733
14002973f:	48 ff c1             	inc    %rcx
140029742:	ba 08 00 00 00       	mov    $0x8,%edx
140029747:	e8 24 7d fd ff       	call   0x140001470
14002974c:	48 8b d8             	mov    %rax,%rbx
14002974f:	48 85 c0             	test   %rax,%rax
140029752:	74 7d                	je     0x1400297d1
140029754:	48 8b 07             	mov    (%rdi),%rax
140029757:	48 85 c0             	test   %rax,%rax
14002975a:	74 51                	je     0x1400297ad
14002975c:	4c 8b f3             	mov    %rbx,%r14
14002975f:	4c 2b f7             	sub    %rdi,%r14
140029762:	48 83 ce ff          	or     $0xffffffffffffffff,%rsi
140029766:	48 ff c6             	inc    %rsi
140029769:	66 39 2c 70          	cmp    %bp,(%rax,%rsi,2)
14002976d:	75 f7                	jne    0x140029766
14002976f:	ba 02 00 00 00       	mov    $0x2,%edx
140029774:	48 8d 4e 01          	lea    0x1(%rsi),%rcx
140029778:	e8 f3 7c fd ff       	call   0x140001470
14002977d:	33 c9                	xor    %ecx,%ecx
14002977f:	49 89 04 3e          	mov    %rax,(%r14,%rdi,1)
140029783:	e8 58 7d fd ff       	call   0x1400014e0
140029788:	49 8b 0c 3e          	mov    (%r14,%rdi,1),%rcx
14002978c:	48 85 c9             	test   %rcx,%rcx
14002978f:	74 40                	je     0x1400297d1
140029791:	4c 8b 07             	mov    (%rdi),%r8
140029794:	48 8d 56 01          	lea    0x1(%rsi),%rdx
140029798:	e8 a7 ca fe ff       	call   0x140016244
14002979d:	85 c0                	test   %eax,%eax
14002979f:	75 1b                	jne    0x1400297bc
1400297a1:	48 83 c7 08          	add    $0x8,%rdi
1400297a5:	48 8b 07             	mov    (%rdi),%rax
1400297a8:	48 85 c0             	test   %rax,%rax
1400297ab:	75 b5                	jne    0x140029762
1400297ad:	33 c9                	xor    %ecx,%ecx
1400297af:	e8 2c 7d fd ff       	call   0x1400014e0
1400297b4:	48 8b c3             	mov    %rbx,%rax
1400297b7:	e9 51 ff ff ff       	jmp    0x14002970d
1400297bc:	45 33 c9             	xor    %r9d,%r9d
1400297bf:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1400297c4:	45 33 c0             	xor    %r8d,%r8d
1400297c7:	33 d2                	xor    %edx,%edx
1400297c9:	33 c9                	xor    %ecx,%ecx
1400297cb:	e8 d4 57 fe ff       	call   0x14000efa4
1400297d0:	cc                   	int3
1400297d1:	e8 0a 70 ff ff       	call   0x1400207e0
1400297d6:	cc                   	int3
1400297d7:	cc                   	int3
1400297d8:	e9 a7 fb ff ff       	jmp    0x140029384