18002823d:	4d 85 c0             	test   %r8,%r8
180028240:	74 08                	je     0x18002824a
180028242:	49 8b c8             	mov    %r8,%rcx
180028245:	e8 de 6a 08 00       	call   0x1800aed28
18002824a:	48 85 f6             	test   %rsi,%rsi
18002824d:	74 08                	je     0x180028257
18002824f:	48 8b ce             	mov    %rsi,%rcx
180028252:	e8 d1 6a 08 00       	call   0x1800aed28
180028257:	8b c5                	mov    %ebp,%eax
180028259:	48 83 c4 40          	add    $0x40,%rsp
18002825d:	41 5e                	pop    %r14
18002825f:	5f                   	pop    %rdi
180028260:	5e                   	pop    %rsi
180028261:	5d                   	pop    %rbp
180028262:	5b                   	pop    %rbx
180028263:	c3                   	ret
180028264:	cc                   	int3
180028265:	cc                   	int3
180028266:	cc                   	int3
180028267:	cc                   	int3
180028268:	48 8b c4             	mov    %rsp,%rax
18002826b:	48 89 58 08          	mov    %rbx,0x8(%rax)
18002826f:	48 89 68 18          	mov    %rbp,0x18(%rax)
180028273:	56                   	push   %rsi
180028274:	57                   	push   %rdi
180028275:	41 56                	push   %r14
180028277:	48 83 ec 20          	sub    $0x20,%rsp
18002827b:	83 48 10 ff          	orl    $0xffffffff,0x10(%rax)
18002827f:	4c 8d 48 10          	lea    0x10(%rax),%r9
180028283:	45 33 f6             	xor    %r14d,%r14d
180028286:	49 8b f8             	mov    %r8,%rdi
180028289:	48 8b f2             	mov    %rdx,%rsi
18002828c:	44 89 32             	mov    %r14d,(%rdx)
18002828f:	45 89 30             	mov    %r14d,(%r8)
180028292:	48 8b e9             	mov    %rcx,%rbp
180028295:	45 33 c0             	xor    %r8d,%r8d
180028298:	41 8d 56 01          	lea    0x1(%r14),%edx
18002829c:	e8 6f ef ff ff       	call   0x180027210
1800282a1:	8b d8                	mov    %eax,%ebx
1800282a3:	85 c0                	test   %eax,%eax
1800282a5:	78 1e                	js     0x1800282c5
1800282a7:	48 8b cd             	mov    %rbp,%rcx
1800282aa:	e8 39 59 00 00       	call   0x18002dbe8
1800282af:	4c 8b c7             	mov    %rdi,%r8
1800282b2:	48 8b d6             	mov    %rsi,%rdx
1800282b5:	48 8b c8             	mov    %rax,%rcx
1800282b8:	e8 b3 4d 00 00       	call   0x18002d070
1800282bd:	85 c0                	test   %eax,%eax
1800282bf:	8b d8                	mov    %eax,%ebx
1800282c1:	41 0f 49 de          	cmovns %r14d,%ebx
1800282c5:	8b 4c 24 48          	mov    0x48(%rsp),%ecx
1800282c9:	83 f9 ff             	cmp    $0xffffffff,%ecx
1800282cc:	74 05                	je     0x1800282d3
1800282ce:	e8 e5 e6 ff ff       	call   0x1800269b8
1800282d3:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1800282d8:	8b c3                	mov    %ebx,%eax
1800282da:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1800282df:	48 83 c4 20          	add    $0x20,%rsp
1800282e3:	41 5e                	pop    %r14
1800282e5:	5f                   	pop    %rdi
1800282e6:	5e                   	pop    %rsi
1800282e7:	c3                   	ret
1800282e8:	cc                   	int3
1800282e9:	cc                   	int3
1800282ea:	cc                   	int3
1800282eb:	cc                   	int3
1800282ec:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1800282f1:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
1800282f6:	55                   	push   %rbp
1800282f7:	56                   	push   %rsi
1800282f8:	57                   	push   %rdi
1800282f9:	41 54                	push   %r12
1800282fb:	41 55                	push   %r13
1800282fd:	41 56                	push   %r14
1800282ff:	41 57                	push   %r15
180028301:	48 83 ec 40          	sub    $0x40,%rsp
180028305:	33 db                	xor    %ebx,%ebx
180028307:	8b ea                	mov    %edx,%ebp
180028309:	4c 8b f1             	mov    %rcx,%r14
18002830c:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
180028311:	89 9c 24 80 00 00 00 	mov    %ebx,0x80(%rsp)
180028318:	40 8a fb             	mov    %bl,%dil
18002831b:	89 bc 24 98 00 00 00 	mov    %edi,0x98(%rsp)
180028322:	8b f3                	mov    %ebx,%esi
180028324:	44 8b fb             	mov    %ebx,%r15d
180028327:	44 8b e3             	mov    %ebx,%r12d
18002832a:	44 8b eb             	mov    %ebx,%r13d
18002832d:	44 8b c3             	mov    %ebx,%r8d
180028330:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
180028335:	4d 85 f6             	test   %r14,%r14
180028338:	0f 84 b2 01 00 00    	je     0x1800284f0
18002833e:	85 d2                	test   %edx,%edx
180028340:	0f 84 aa 01 00 00    	je     0x1800284f0
180028346:	8b c5                	mov    %ebp,%eax
180028348:	8b dd                	mov    %ebp,%ebx
18002834a:	48 c1 e0 03          	shl    $0x3,%rax
18002834e:	48 3b c1             	cmp    %rcx,%rax
180028351:	0f 87 c9 01 00 00    	ja     0x180028520
180028357:	8b c8                	mov    %eax,%ecx
180028359:	8b f8                	mov    %eax,%edi
18002835b:	e8 f0 1a 07 00       	call   0x180099e50
180028360:	4c 8b e0             	mov    %rax,%r12
180028363:	48 85 c0             	test   %rax,%rax
180028366:	75 0a                	jne    0x180028372
180028368:	bf 17 00 00 c0       	mov    $0xc0000017,%edi
18002836d:	e9 b7 01 00 00       	jmp    0x180028529
180028372:	4c 8b c7             	mov    %rdi,%r8
180028375:	33 d2                	xor    %edx,%edx
180028377:	49 8b cc             	mov    %r12,%rcx
18002837a:	e8 01 d9 10 00       	call   0x180135c80
18002837f:	48 8b cf             	mov    %rdi,%rcx
180028382:	e8 c9 1a 07 00       	call   0x180099e50
180028387:	4c 8b e8             	mov    %rax,%r13
18002838a:	48 85 c0             	test   %rax,%rax
18002838d:	74 d9                	je     0x180028368
18002838f:	4c 8b c7             	mov    %rdi,%r8
180028392:	33 d2                	xor    %edx,%edx
180028394:	48 8b c8             	mov    %rax,%rcx
180028397:	e8 e4 d8 10 00       	call   0x180135c80
18002839c:	48 c1 e3 02          	shl    $0x2,%rbx
1800283a0:	bf ff ff ff ff       	mov    $0xffffffff,%edi
1800283a5:	48 3b df             	cmp    %rdi,%rbx
1800283a8:	0f 87 72 01 00 00    	ja     0x180028520
1800283ae:	8b cb                	mov    %ebx,%ecx
1800283b0:	e8 9b 1a 07 00       	call   0x180099e50
1800283b5:	4c 8b f8             	mov    %rax,%r15
1800283b8:	48 85 c0             	test   %rax,%rax
1800283bb:	74 ab                	je     0x180028368
1800283bd:	48 c1 eb 02          	shr    $0x2,%rbx
1800283c1:	8b c7                	mov    %edi,%eax
1800283c3:	48 8b cb             	mov    %rbx,%rcx
1800283c6:	49 8b ff             	mov    %r15,%rdi
1800283c9:	f3 ab                	rep stos %eax,%es:(%rdi)
1800283cb:	33 db                	xor    %ebx,%ebx
1800283cd:	48 85 f6             	test   %rsi,%rsi
1800283d0:	74 0f                	je     0x1800283e1
1800283d2:	48 8b ce             	mov    %rsi,%rcx
1800283d5:	e8 22 1c 07 00       	call   0x180099ffc
1800283da:	33 f6                	xor    %esi,%esi
1800283dc:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1800283e1:	41 8b 0e             	mov    (%r14),%ecx
1800283e4:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
1800283e9:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
1800283ef:	33 ff                	xor    %edi,%edi
1800283f1:	e8 ca ea ff ff       	call   0x180026ec0
1800283f6:	85 c0                	test   %eax,%eax
1800283f8:	78 0d                	js     0x180028407
1800283fa:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
1800283ff:	e8 e4 57 00 00       	call   0x18002dbe8
180028404:	48 8b f8             	mov    %rax,%rdi
180028407:	48 85 ff             	test   %rdi,%rdi
18002840a:	75 5f                	jne    0x18002846b
18002840c:	41 8b 0e             	mov    (%r14),%ecx
18002840f:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
180028414:	e8 a7 ea ff ff       	call   0x180026ec0
180028419:	85 c0                	test   %eax,%eax
18002841b:	0f 88 ab 00 00 00    	js     0x1800284cc
180028421:	48 8b 94 24 90 00 00 	mov    0x90(%rsp),%rdx
180028428:	00
180028429:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
18002842e:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
180028433:	e8 d4 01 00 00       	call   0x18002860c
180028438:	48 8b 74 24 20       	mov    0x20(%rsp),%rsi
18002843d:	85 c0                	test   %eax,%eax
18002843f:	0f 88 87 00 00 00    	js     0x1800284cc
180028445:	4d 8d 0c 9f          	lea    (%r15,%rbx,4),%r9
180028449:	45 33 c0             	xor    %r8d,%r8d
18002844c:	8d 57 01             	lea    0x1(%rdi),%edx
18002844f:	48 8b ce             	mov    %rsi,%rcx
180028452:	e8 b9 ed ff ff       	call   0x180027210
180028457:	85 c0                	test   %eax,%eax
180028459:	78 71                	js     0x1800284cc
18002845b:	48 8b ce             	mov    %rsi,%rcx
18002845e:	e8 85 57 00 00       	call   0x18002dbe8
180028463:	48 8b f8             	mov    %rax,%rdi
180028466:	48 85 c0             	test   %rax,%rax
180028469:	74 61                	je     0x1800284cc
18002846b:	44 8b 84 24 98 00 00 	mov    0x98(%rsp),%r8d
180028472:	00
180028473:	ba 01 00 00 00       	mov    $0x1,%edx
180028478:	8b 47 70             	mov    0x70(%rdi),%eax
18002847b:	0f ba e0 0a          	bt     $0xa,%eax
18002847f:	45 0f b6 c0          	movzbl %r8b,%r8d
180028483:	44 0f 42 c2          	cmovb  %edx,%r8d
180028487:	48 8b 17             	mov    (%rdi),%rdx
18002848a:	44 89 84 24 98 00 00 	mov    %r8d,0x98(%rsp)
180028491:	00
180028492:	48 85 d2             	test   %rdx,%rdx
180028495:	74 35                	je     0x1800284cc
180028497:	25 10 04 00 00       	and    $0x410,%eax
18002849c:	83 f8 10             	cmp    $0x10,%eax
18002849f:	74 2b                	je     0x1800284cc
1800284a1:	44 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8d
1800284a8:	00
1800284a9:	48 8d 42 40          	lea    0x40(%rdx),%rax
1800284ad:	4b 89 04 c4          	mov    %rax,(%r12,%r8,8)
1800284b1:	48 8b 47 10          	mov    0x10(%rdi),%rax
1800284b5:	4b 89 44 c5 00       	mov    %rax,0x0(%r13,%r8,8)
1800284ba:	b8 01 00 00 00       	mov    $0x1,%eax
1800284bf:	44 03 c0             	add    %eax,%r8d
1800284c2:	44 89 84 24 80 00 00 	mov    %r8d,0x80(%rsp)
1800284c9:	00
1800284ca:	eb 0d                	jmp    0x1800284d9
1800284cc:	44 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8d
1800284d3:	00
1800284d4:	b8 01 00 00 00       	mov    $0x1,%eax
1800284d9:	03 d8                	add    %eax,%ebx
1800284db:	49 83 c6 04          	add    $0x4,%r14
1800284df:	3b dd                	cmp    %ebp,%ebx
1800284e1:	0f 82 e6 fe ff ff    	jb     0x1800283cd
1800284e7:	8b bc 24 98 00 00 00 	mov    0x98(%rsp),%edi
1800284ee:	33 db                	xor    %ebx,%ebx
1800284f0:	48 8b 0d 29 ca 17 00 	mov    0x17ca29(%rip),%rcx        # 0x1801a4f20
1800284f7:	48 85 c9             	test   %rcx,%rcx
1800284fa:	74 2b                	je     0x180028527
1800284fc:	45 8b c8             	mov    %r8d,%r9d
1800284ff:	49 8b d4             	mov    %r12,%rdx
180028502:	4d 8b c5             	mov    %r13,%r8
180028505:	e8 b6 64 08 00       	call   0x1800ae9c0
18002850a:	85 c0                	test   %eax,%eax
18002850c:	79 06                	jns    0x180028514
18002850e:	40 84 ff             	test   %dil,%dil
180028511:	0f 45 c3             	cmovne %ebx,%eax
180028514:	3d 25 02 00 c0       	cmp    $0xc0000225,%eax
180028519:	8b fb                	mov    %ebx,%edi
18002851b:	0f 45 f8             	cmovne %eax,%edi
18002851e:	eb 09                	jmp    0x180028529
180028520:	bf 95 00 00 c0       	mov    $0xc0000095,%edi
180028525:	eb 02                	jmp    0x180028529
180028527:	8b fb                	mov    %ebx,%edi
180028529:	e8 f2 49 00 00       	call   0x18002cf20
18002852e:	33 d2                	xor    %edx,%edx
180028530:	85 ff                	test   %edi,%edi
180028532:	78 09                	js     0x18002853d
180028534:	e8 3b 17 00 00       	call   0x180029c74
180028539:	8b f8                	mov    %eax,%edi
18002853b:	eb 05                	jmp    0x180028542
18002853d:	e8 32 17 00 00       	call   0x180029c74
180028542:	4d 85 ff             	test   %r15,%r15
180028545:	74 37                	je     0x18002857e
180028547:	85 ed                	test   %ebp,%ebp
180028549:	74 2b                	je     0x180028576
18002854b:	49 8b df             	mov    %r15,%rbx
18002854e:	b8 01 00 00 00       	mov    $0x1,%eax
180028553:	41 be ff ff ff ff    	mov    $0xffffffff,%r14d
180028559:	44 39 33             	cmp    %r14d,(%rbx)
18002855c:	74 0f                	je     0x18002856d
18002855e:	8b 0b                	mov    (%rbx),%ecx
180028560:	e8 53 e4 ff ff       	call   0x1800269b8
180028565:	b8 01 00 00 00       	mov    $0x1,%eax
18002856a:	44 89 33             	mov    %r14d,(%rbx)
18002856d:	48 83 c3 04          	add    $0x4,%rbx
180028571:	48 2b e8             	sub    %rax,%rbp
180028574:	75 e3                	jne    0x180028559
180028576:	49 8b cf             	mov    %r15,%rcx
180028579:	e8 7e 1a 07 00       	call   0x180099ffc
18002857e:	48 85 f6             	test   %rsi,%rsi
180028581:	74 08                	je     0x18002858b
180028583:	48 8b ce             	mov    %rsi,%rcx
180028586:	e8 71 1a 07 00       	call   0x180099ffc
18002858b:	4d 85 e4             	test   %r12,%r12
18002858e:	74 08                	je     0x180028598
180028590:	49 8b cc             	mov    %r12,%rcx
180028593:	e8 64 1a 07 00       	call   0x180099ffc
180028598:	4d 85 ed             	test   %r13,%r13
18002859b:	74 08                	je     0x1800285a5
18002859d:	49 8b cd             	mov    %r13,%rcx
1800285a0:	e8 57 1a 07 00       	call   0x180099ffc
1800285a5:	e8 1e 00 00 00       	call   0x1800285c8
1800285aa:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
1800285b1:	00
1800285b2:	8b c7                	mov    %edi,%eax
1800285b4:	48 83 c4 40          	add    $0x40,%rsp
1800285b8:	41 5f                	pop    %r15
1800285ba:	41 5e                	pop    %r14
1800285bc:	41 5d                	pop    %r13
1800285be:	41 5c                	pop    %r12
1800285c0:	5f                   	pop    %rdi
1800285c1:	5e                   	pop    %rsi
1800285c2:	5d                   	pop    %rbp
1800285c3:	c3                   	ret
1800285c4:	cc                   	int3
1800285c5:	cc                   	int3
1800285c6:	cc                   	int3
1800285c7:	cc                   	int3
1800285c8:	40 55                	rex push %rbp
1800285ca:	48 8b ec             	mov    %rsp,%rbp
1800285cd:	48 83 ec 30          	sub    $0x30,%rsp
1800285d1:	45 33 c0             	xor    %r8d,%r8d
1800285d4:	c7 45 f0 03 19 af de 	movl   $0xdeaf1903,-0x10(%rbp)
1800285db:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
1800285df:	c7 45 f4 2d 46 5e 4e 	movl   $0x4e5e462d,-0xc(%rbp)
1800285e6:	33 c9                	xor    %ecx,%ecx
1800285e8:	c7 45 f8 94 b8 58 35 	movl   $0x3558b894,-0x8(%rbp)
1800285ef:	c7 45 fc 52 df 84 18 	movl   $0x1884df52,-0x4(%rbp)
1800285f6:	e8 b1 10 06 00       	call   0x1800896ac
1800285fb:	33 c9                	xor    %ecx,%ecx
1800285fd:	3d 25 02 00 c0       	cmp    $0xc0000225,%eax
180028602:	0f 44 c1             	cmove  %ecx,%eax
180028605:	48 83 c4 30          	add    $0x30,%rsp
180028609:	5d                   	pop    %rbp
18002860a:	c3                   	ret
18002860b:	cc                   	int3
18002860c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180028611:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180028616:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
18002861b:	55                   	push   %rbp
18002861c:	41 54                	push   %r12
18002861e:	41 55                	push   %r13
180028620:	41 56                	push   %r14
180028622:	41 57                	push   %r15
180028624:	48 8b ec             	mov    %rsp,%rbp
180028627:	48 83 ec 40          	sub    $0x40,%rsp
18002862b:	4d 8b f8             	mov    %r8,%r15
18002862e:	c7 45 f0 03 19 af de 	movl   $0xdeaf1903,-0x10(%rbp)
180028635:	4c 8b ea             	mov    %rdx,%r13
180028638:	c7 45 f4 2d 46 5e 4e 	movl   $0x4e5e462d,-0xc(%rbp)
18002863f:	4c 8b e1             	mov    %rcx,%r12
180028642:	c7 45 f8 94 b8 58 35 	movl   $0x3558b894,-0x8(%rbp)
180028649:	33 ff                	xor    %edi,%edi
18002864b:	c7 45 fc 52 df 84 18 	movl   $0x1884df52,-0x4(%rbp)
180028652:	49 21 38             	and    %rdi,(%r8)
180028655:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
180028659:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
18002865d:	33 d2                	xor    %edx,%edx
18002865f:	e8 4c 1a 06 00       	call   0x18008a0b0
180028664:	8b d8                	mov    %eax,%ebx
180028666:	85 c0                	test   %eax,%eax
180028668:	0f 88 71 01 00 00    	js     0x1800287df
18002866e:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
180028672:	83 78 24 1c          	cmpl   $0x1c,0x24(%rax)
180028676:	73 0a                	jae    0x180028682
180028678:	bb 0a 00 21 c0       	mov    $0xc021000a,%ebx
18002867d:	e9 54 01 00 00       	jmp    0x1800287d6
180028682:	8b 58 28             	mov    0x28(%rax),%ebx
180028685:	48 03 d8             	add    %rax,%rbx
180028688:	8b 0b                	mov    (%rbx),%ecx
18002868a:	83 f9 1c             	cmp    $0x1c,%ecx
18002868d:	72 e9                	jb     0x180028678
18002868f:	8b 53 04             	mov    0x4(%rbx),%edx
180028692:	85 d2                	test   %edx,%edx
180028694:	0f 84 2a 01 00 00    	je     0x1800287c4
18002869a:	44 8b 43 14          	mov    0x14(%rbx),%r8d
18002869e:	45 85 c0             	test   %r8d,%r8d
1800286a1:	0f 84 1d 01 00 00    	je     0x1800287c4
1800286a7:	8b 73 0c             	mov    0xc(%rbx),%esi
1800286aa:	85 f6                	test   %esi,%esi
1800286ac:	0f 84 12 01 00 00    	je     0x1800287c4
1800286b2:	83 7b 08 20          	cmpl   $0x20,0x8(%rbx)
1800286b6:	0f 82 08 01 00 00    	jb     0x1800287c4