1800a02d7:	8b c8                	mov    %eax,%ecx
1800a02d9:	48 8b 07             	mov    (%rdi),%rax
1800a02dc:	85 c9                	test   %ecx,%ecx
1800a02de:	74 05                	je     0x1800a02e5
1800a02e0:	bb 01 00 00 00       	mov    $0x1,%ebx
1800a02e5:	48 8b 40 08          	mov    0x8(%rax),%rax
1800a02e9:	48 8b cf             	mov    %rdi,%rcx
1800a02ec:	ff d0                	call   *%rax
1800a02ee:	0f 1f 00             	nopl   (%rax)
1800a02f1:	8b c3                	mov    %ebx,%eax
1800a02f3:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1800a02f8:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
1800a02fd:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
1800a0302:	48 83 c4 20          	add    $0x20,%rsp
1800a0306:	41 5f                	pop    %r15
1800a0308:	41 5e                	pop    %r14
1800a030a:	41 5d                	pop    %r13
1800a030c:	41 5c                	pop    %r12
1800a030e:	5f                   	pop    %rdi
1800a030f:	c3                   	ret
1800a0310:	cc                   	int3
1800a0311:	cc                   	int3
1800a0312:	cc                   	int3
1800a0313:	cc                   	int3
1800a0314:	48 8b 49 28          	mov    0x28(%rcx),%rcx
1800a0318:	48 8b 01             	mov    (%rcx),%rax
1800a031b:	48 8b 40 38          	mov    0x38(%rax),%rax
1800a031f:	48 ff e0             	rex.W jmp *%rax
1800a0322:	cc                   	int3
1800a0323:	cc                   	int3
1800a0324:	48 8b 49 28          	mov    0x28(%rcx),%rcx
1800a0328:	48 8b 01             	mov    (%rcx),%rax
1800a032b:	48 8b 40 40          	mov    0x40(%rax),%rax
1800a032f:	48 ff e0             	rex.W jmp *%rax
1800a0332:	cc                   	int3
1800a0333:	cc                   	int3
1800a0334:	48 8b 49 28          	mov    0x28(%rcx),%rcx
1800a0338:	48 8b 01             	mov    (%rcx),%rax
1800a033b:	48 8b 40 48          	mov    0x48(%rax),%rax
1800a033f:	48 ff e0             	rex.W jmp *%rax
1800a0342:	cc                   	int3
1800a0343:	cc                   	int3
1800a0344:	48 8b 49 28          	mov    0x28(%rcx),%rcx
1800a0348:	48 8b 01             	mov    (%rcx),%rax
1800a034b:	48 8b 40 50          	mov    0x50(%rax),%rax
1800a034f:	48 ff e0             	rex.W jmp *%rax
1800a0352:	cc                   	int3
1800a0353:	cc                   	int3
1800a0354:	48 8b 49 18          	mov    0x18(%rcx),%rcx
1800a0358:	48 8b 01             	mov    (%rcx),%rax
1800a035b:	48 8b 40 10          	mov    0x10(%rax),%rax
1800a035f:	48 ff e0             	rex.W jmp *%rax
1800a0362:	cc                   	int3
1800a0363:	cc                   	int3
1800a0364:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800a0369:	57                   	push   %rdi
1800a036a:	48 83 ec 20          	sub    $0x20,%rsp
1800a036e:	48 8d 05 9b 3f 0a 00 	lea    0xa3f9b(%rip),%rax        # 0x180144310
1800a0375:	48 8b d9             	mov    %rcx,%rbx
1800a0378:	48 89 01             	mov    %rax,(%rcx)
1800a037b:	8b fa                	mov    %edx,%edi
1800a037d:	48 8b 49 58          	mov    0x58(%rcx),%rcx
1800a0381:	48 85 c9             	test   %rcx,%rcx
1800a0384:	74 0c                	je     0x1800a0392
1800a0386:	48 8b 01             	mov    (%rcx),%rax
1800a0389:	48 8b 40 08          	mov    0x8(%rax),%rax
1800a038d:	ff d0                	call   *%rax
1800a038f:	0f 1f 00             	nopl   (%rax)
1800a0392:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
1800a0396:	48 8b 01             	mov    (%rcx),%rax
1800a0399:	48 8b 40 08          	mov    0x8(%rax),%rax
1800a039d:	ff d0                	call   *%rax
1800a039f:	0f 1f 00             	nopl   (%rax)
1800a03a2:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
1800a03a6:	e8 51 9c ff ff       	call   0x180099ffc
1800a03ab:	48 8d 05 1e 3d 0a 00 	lea    0xa3d1e(%rip),%rax        # 0x1801440d0
1800a03b2:	48 89 03             	mov    %rax,(%rbx)
1800a03b5:	40 f6 c7 01          	test   $0x1,%dil
1800a03b9:	74 08                	je     0x1800a03c3
1800a03bb:	48 8b cb             	mov    %rbx,%rcx
1800a03be:	e8 39 9c ff ff       	call   0x180099ffc
1800a03c3:	48 8b c3             	mov    %rbx,%rax
1800a03c6:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800a03cb:	48 83 c4 20          	add    $0x20,%rsp
1800a03cf:	5f                   	pop    %rdi
1800a03d0:	c3                   	ret
1800a03d1:	cc                   	int3
1800a03d2:	cc                   	int3
1800a03d3:	cc                   	int3
1800a03d4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800a03d9:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1800a03de:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1800a03e3:	57                   	push   %rdi
1800a03e4:	41 54                	push   %r12
1800a03e6:	41 55                	push   %r13
1800a03e8:	41 56                	push   %r14
1800a03ea:	41 57                	push   %r15
1800a03ec:	48 83 ec 20          	sub    $0x20,%rsp
1800a03f0:	4c 8b fa             	mov    %rdx,%r15
1800a03f3:	45 0f b7 e1          	movzwl %r9w,%r12d
1800a03f7:	48 8d 15 4a 1f 0b 00 	lea    0xb1f4a(%rip),%rdx        # 0x180152348
1800a03fe:	45 0f b7 e8          	movzwl %r8w,%r13d
1800a0402:	48 8b f1             	mov    %rcx,%rsi
1800a0405:	33 ed                	xor    %ebp,%ebp
1800a0407:	e8 54 ac 07 00       	call   0x18011b060
1800a040c:	8d 7d 01             	lea    0x1(%rbp),%edi
1800a040f:	48 85 c0             	test   %rax,%rax
1800a0412:	74 17                	je     0x1800a042b
1800a0414:	48 8d 15 65 1f 0b 00 	lea    0xb1f65(%rip),%rdx        # 0x180152380
1800a041b:	48 8b c8             	mov    %rax,%rcx
1800a041e:	e8 19 b4 08 00       	call   0x18012b83c
1800a0423:	85 c0                	test   %eax,%eax
1800a0425:	75 04                	jne    0x1800a042b
1800a0427:	8b cf                	mov    %edi,%ecx
1800a0429:	eb 02                	jmp    0x1800a042d
1800a042b:	33 c9                	xor    %ecx,%ecx
1800a042d:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
1800a0434:	00
1800a0435:	44 8b 74 24 78       	mov    0x78(%rsp),%r14d
1800a043a:	89 08                	mov    %ecx,(%rax)
1800a043c:	45 85 f6             	test   %r14d,%r14d
1800a043f:	74 29                	je     0x1800a046a
1800a0441:	48 8d 15 28 1f 0b 00 	lea    0xb1f28(%rip),%rdx        # 0x180152370
1800a0448:	48 8b ce             	mov    %rsi,%rcx
1800a044b:	e8 10 ac 07 00       	call   0x18011b060
1800a0450:	48 85 c0             	test   %rax,%rax
1800a0453:	74 15                	je     0x1800a046a
1800a0455:	48 8d 15 24 1f 0b 00 	lea    0xb1f24(%rip),%rdx        # 0x180152380
1800a045c:	48 8b c8             	mov    %rax,%rcx
1800a045f:	e8 d8 b3 08 00       	call   0x18012b83c
1800a0464:	85 c0                	test   %eax,%eax
1800a0466:	75 02                	jne    0x1800a046a
1800a0468:	8b ef                	mov    %edi,%ebp
1800a046a:	48 8d 15 27 1f 0b 00 	lea    0xb1f27(%rip),%rdx        # 0x180152398
1800a0471:	48 8b ce             	mov    %rsi,%rcx
1800a0474:	e8 e7 ab 07 00       	call   0x18011b060
1800a0479:	48 8b c8             	mov    %rax,%rcx
1800a047c:	e8 03 ee ff ff       	call   0x18009f284
1800a0481:	48 8b d8             	mov    %rax,%rbx
1800a0484:	48 85 c0             	test   %rax,%rax
1800a0487:	75 07                	jne    0x1800a0490
1800a0489:	33 c0                	xor    %eax,%eax
1800a048b:	e9 f1 00 00 00       	jmp    0x1800a0581
1800a0490:	48 8b 06             	mov    (%rsi),%rax
1800a0493:	48 8b ce             	mov    %rsi,%rcx
1800a0496:	48 8b 40 20          	mov    0x20(%rax),%rax
1800a049a:	ff d0                	call   *%rax
1800a049c:	0f 1f 00             	nopl   (%rax)
1800a049f:	48 8b c8             	mov    %rax,%rcx
1800a04a2:	44 8b c7             	mov    %edi,%r8d
1800a04a5:	49 8b d7             	mov    %r15,%rdx
1800a04a8:	e8 a7 f8 ff ff       	call   0x18009fd54
1800a04ad:	48 8b f8             	mov    %rax,%rdi
1800a04b0:	48 85 c0             	test   %rax,%rax
1800a04b3:	75 0a                	jne    0x1800a04bf
1800a04b5:	48 8b cb             	mov    %rbx,%rcx
1800a04b8:	e8 3f 9b ff ff       	call   0x180099ffc
1800a04bd:	eb ca                	jmp    0x1800a0489
1800a04bf:	48 8d 15 ca 1e 0b 00 	lea    0xb1eca(%rip),%rdx        # 0x180152390
1800a04c6:	48 8b ce             	mov    %rsi,%rcx
1800a04c9:	e8 92 ab 07 00       	call   0x18011b060
1800a04ce:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
1800a04d3:	33 f6                	xor    %esi,%esi
1800a04d5:	48 85 c9             	test   %rcx,%rcx
1800a04d8:	74 10                	je     0x1800a04ea
1800a04da:	48 85 c0             	test   %rax,%rax
1800a04dd:	74 0b                	je     0x1800a04ea
1800a04df:	48 8b d0             	mov    %rax,%rdx
1800a04e2:	e8 69 5f 00 00       	call   0x1800a6450
1800a04e7:	48 8b f0             	mov    %rax,%rsi
1800a04ea:	b9 78 00 00 00       	mov    $0x78,%ecx
1800a04ef:	e8 5c 99 ff ff       	call   0x180099e50
1800a04f4:	33 d2                	xor    %edx,%edx
1800a04f6:	48 8b c8             	mov    %rax,%rcx
1800a04f9:	48 85 c0             	test   %rax,%rax
1800a04fc:	74 5c                	je     0x1800a055a
1800a04fe:	89 50 14             	mov    %edx,0x14(%rax)
1800a0501:	44 8d 42 01          	lea    0x1(%rdx),%r8d
1800a0505:	44 89 40 08          	mov    %r8d,0x8(%rax)
1800a0509:	83 c8 ff             	or     $0xffffffff,%eax
1800a050c:	89 41 1c             	mov    %eax,0x1c(%rcx)
1800a050f:	89 41 18             	mov    %eax,0x18(%rcx)
1800a0512:	48 8d 05 f7 3d 0a 00 	lea    0xa3df7(%rip),%rax        # 0x180144310
1800a0519:	48 89 01             	mov    %rax,(%rcx)
1800a051c:	8b 84 24 80 00 00 00 	mov    0x80(%rsp),%eax
1800a0523:	89 41 68             	mov    %eax,0x68(%rcx)
1800a0526:	89 51 10             	mov    %edx,0x10(%rcx)
1800a0529:	48 89 51 28          	mov    %rdx,0x28(%rcx)
1800a052d:	89 51 30             	mov    %edx,0x30(%rcx)
1800a0530:	89 69 60             	mov    %ebp,0x60(%rcx)
1800a0533:	44 89 71 64          	mov    %r14d,0x64(%rcx)
1800a0537:	48 89 59 38          	mov    %rbx,0x38(%rcx)
1800a053b:	48 89 79 40          	mov    %rdi,0x40(%rcx)
1800a053f:	89 51 48             	mov    %edx,0x48(%rcx)
1800a0542:	44 89 41 4c          	mov    %r8d,0x4c(%rcx)
1800a0546:	66 44 89 69 50       	mov    %r13w,0x50(%rcx)
1800a054b:	66 44 89 61 52       	mov    %r12w,0x52(%rcx)
1800a0550:	48 89 71 58          	mov    %rsi,0x58(%rcx)
1800a0554:	4c 89 79 70          	mov    %r15,0x70(%rcx)
1800a0558:	eb 03                	jmp    0x1800a055d
1800a055a:	48 8b ca             	mov    %rdx,%rcx
1800a055d:	48 85 c9             	test   %rcx,%rcx
1800a0560:	75 1c                	jne    0x1800a057e
1800a0562:	48 8b cb             	mov    %rbx,%rcx
1800a0565:	e8 92 9a ff ff       	call   0x180099ffc
1800a056a:	48 8b 07             	mov    (%rdi),%rax
1800a056d:	48 8b cf             	mov    %rdi,%rcx
1800a0570:	48 8b 40 08          	mov    0x8(%rax),%rax
1800a0574:	ff d0                	call   *%rax
1800a0576:	0f 1f 00             	nopl   (%rax)
1800a0579:	e9 0b ff ff ff       	jmp    0x1800a0489
1800a057e:	48 8b c1             	mov    %rcx,%rax
1800a0581:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1800a0586:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
1800a058b:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
1800a0590:	48 83 c4 20          	add    $0x20,%rsp
1800a0594:	41 5f                	pop    %r15
1800a0596:	41 5e                	pop    %r14
1800a0598:	41 5d                	pop    %r13
1800a059a:	41 5c                	pop    %r12
1800a059c:	5f                   	pop    %rdi
1800a059d:	c3                   	ret
1800a059e:	cc                   	int3
1800a059f:	cc                   	int3
1800a05a0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1800a05a5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1800a05aa:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1800a05af:	57                   	push   %rdi
1800a05b0:	41 54                	push   %r12
1800a05b2:	41 55                	push   %r13
1800a05b4:	41 56                	push   %r14
1800a05b6:	41 57                	push   %r15
1800a05b8:	48 83 ec 30          	sub    $0x30,%rsp
1800a05bc:	8b 42 04             	mov    0x4(%rdx),%eax
1800a05bf:	49 8b f1             	mov    %r9,%rsi
1800a05c2:	4d 8b f0             	mov    %r8,%r14
1800a05c5:	48 8b ea             	mov    %rdx,%rbp
1800a05c8:	48 8b f9             	mov    %rcx,%rdi
1800a05cb:	41 39 40 04          	cmp    %eax,0x4(%r8)
1800a05cf:	76 15                	jbe    0x1800a05e6
1800a05d1:	49 8b 01             	mov    (%r9),%rax
1800a05d4:	49 8b c9             	mov    %r9,%rcx
1800a05d7:	48 8b 40 20          	mov    0x20(%rax),%rax
1800a05db:	ff d0                	call   *%rax
1800a05dd:	0f 1f 00             	nopl   (%rax)
1800a05e0:	41 01 06             	add    %eax,(%r14)
1800a05e3:	8b 45 04             	mov    0x4(%rbp),%eax
1800a05e6:	41 89 46 04          	mov    %eax,0x4(%r14)
1800a05ea:	ba 20 00 00 00       	mov    $0x20,%edx
1800a05ef:	0f 10 45 00          	movups 0x0(%rbp),%xmm0
1800a05f3:	48 8b ce             	mov    %rsi,%rcx
1800a05f6:	f3 0f 7f 47 10       	movdqu %xmm0,0x10(%rdi)
1800a05fb:	49 8b 06             	mov    (%r14),%rax
1800a05fe:	48 89 47 20          	mov    %rax,0x20(%rdi)
1800a0602:	48 89 77 28          	mov    %rsi,0x28(%rdi)
1800a0606:	c7 47 30 01 00 00 00 	movl   $0x1,0x30(%rdi)
1800a060d:	48 8b 06             	mov    (%rsi),%rax
1800a0610:	48 8b 40 28          	mov    0x28(%rax),%rax
1800a0614:	ff d0                	call   *%rax
1800a0616:	0f 1f 00             	nopl   (%rax)
1800a0619:	41 8b 16             	mov    (%r14),%edx
1800a061c:	44 8b f8             	mov    %eax,%r15d
1800a061f:	41 c1 e7 02          	shl    $0x2,%r15d
1800a0623:	45 33 ed             	xor    %r13d,%r13d
1800a0626:	3b 55 08             	cmp    0x8(%rbp),%edx
1800a0629:	0f 83 ea 01 00 00    	jae    0x1800a0819
1800a062f:	45 8b 46 04          	mov    0x4(%r14),%r8d
1800a0633:	43 8d 0c 38          	lea    (%r8,%r15,1),%ecx
1800a0637:	3b 4d 0c             	cmp    0xc(%rbp),%ecx
1800a063a:	0f 83 d9 01 00 00    	jae    0x1800a0819
1800a0640:	48 8b 06             	mov    (%rsi),%rax
1800a0643:	48 8b ce             	mov    %rsi,%rcx
1800a0646:	48 8b 40 58          	mov    0x58(%rax),%rax
1800a064a:	ff d0                	call   *%rax
1800a064c:	0f 1f 00             	nopl   (%rax)
1800a064f:	48 8b 06             	mov    (%rsi),%rax
1800a0652:	48 8b ce             	mov    %rsi,%rcx
1800a0655:	48 8b 40 50          	mov    0x50(%rax),%rax
1800a0659:	ff d0                	call   *%rax
1800a065b:	0f 1f 00             	nopl   (%rax)
1800a065e:	44 0f b7 e0          	movzwl %ax,%r12d
1800a0662:	44 39 6f 48          	cmp    %r13d,0x48(%rdi)
1800a0666:	74 12                	je     0x1800a067a
1800a0668:	44 39 6f 64          	cmp    %r13d,0x64(%rdi)
1800a066c:	75 0c                	jne    0x1800a067a
1800a066e:	44 39 6f 4c          	cmp    %r13d,0x4c(%rdi)
1800a0672:	75 06                	jne    0x1800a067a
1800a0674:	0f b7 57 50          	movzwl 0x50(%rdi),%edx
1800a0678:	eb 04                	jmp    0x1800a067e
1800a067a:	0f b7 57 52          	movzwl 0x52(%rdi),%edx
1800a067e:	48 8b 06             	mov    (%rsi),%rax
1800a0681:	48 8b ce             	mov    %rsi,%rcx
1800a0684:	48 8b 40 48          	mov    0x48(%rax),%rax
1800a0688:	ff d0                	call   *%rax
1800a068a:	0f 1f 00             	nopl   (%rax)
1800a068d:	44 39 6f 68          	cmp    %r13d,0x68(%rdi)
1800a0691:	75 1a                	jne    0x1800a06ad
1800a0693:	48 8b 06             	mov    (%rsi),%rax
1800a0696:	48 8d 15 13 1d 0b 00 	lea    0xb1d13(%rip),%rdx        # 0x1801523b0
1800a069d:	48 8b ce             	mov    %rsi,%rcx
1800a06a0:	48 8b 40 78          	mov    0x78(%rax),%rax
1800a06a4:	ff d0                	call   *%rax
1800a06a6:	0f 1f 00             	nopl   (%rax)
1800a06a9:	45 01 7e 04          	add    %r15d,0x4(%r14)
1800a06ad:	44 39 6f 64          	cmp    %r13d,0x64(%rdi)
1800a06b1:	74 72                	je     0x1800a0725
1800a06b3:	44 39 6f 48          	cmp    %r13d,0x48(%rdi)
1800a06b7:	74 19                	je     0x1800a06d2
1800a06b9:	44 39 6f 4c          	cmp    %r13d,0x4c(%rdi)
1800a06bd:	75 13                	jne    0x1800a06d2
1800a06bf:	48 8b 06             	mov    (%rsi),%rax
1800a06c2:	48 8b ce             	mov    %rsi,%rcx
1800a06c5:	0f b7 57 50          	movzwl 0x50(%rdi),%edx
1800a06c9:	48 8b 40 48          	mov    0x48(%rax),%rax
1800a06cd:	ff d0                	call   *%rax
1800a06cf:	0f 1f 00             	nopl   (%rax)
1800a06d2:	41 8b 5e 04          	mov    0x4(%r14),%ebx
1800a06d6:	3b 5d 0c             	cmp    0xc(%rbp),%ebx
1800a06d9:	73 35                	jae    0x1800a0710
1800a06db:	48 8b 06             	mov    (%rsi),%rax
1800a06de:	48 8d 15 c7 78 0a 00 	lea    0xa78c7(%rip),%rdx        # 0x180147fac
1800a06e5:	48 8b ce             	mov    %rsi,%rcx
1800a06e8:	48 8b 40 78          	mov    0x78(%rax),%rax
1800a06ec:	ff d0                	call   *%rax
1800a06ee:	0f 1f 00             	nopl   (%rax)
1800a06f1:	48 8b 06             	mov    (%rsi),%rax
1800a06f4:	ba 20 00 00 00       	mov    $0x20,%edx
1800a06f9:	48 8b ce             	mov    %rsi,%rcx
1800a06fc:	48 8b 40 28          	mov    0x28(%rax),%rax
1800a0700:	ff d0                	call   *%rax
1800a0702:	0f 1f 00             	nopl   (%rax)
1800a0705:	03 d8                	add    %eax,%ebx
1800a0707:	3b 5d 0c             	cmp    0xc(%rbp),%ebx
1800a070a:	72 cf                	jb     0x1800a06db
1800a070c:	41 8b 5e 04          	mov    0x4(%r14),%ebx
1800a0710:	48 8b 06             	mov    (%rsi),%rax
1800a0713:	44 8b c3             	mov    %ebx,%r8d
1800a0716:	41 8b 16             	mov    (%r14),%edx
1800a0719:	48 8b ce             	mov    %rsi,%rcx
1800a071c:	48 8b 40 58          	mov    0x58(%rax),%rax
1800a0720:	ff d0                	call   *%rax
1800a0722:	0f 1f 00             	nopl   (%rax)
1800a0725:	41 8b 06             	mov    (%r14),%eax
1800a0728:	48 8b ce             	mov    %rsi,%rcx
1800a072b:	89 44 24 20          	mov    %eax,0x20(%rsp)
1800a072f:	48 8b 06             	mov    (%rsi),%rax
1800a0732:	48 8b 40 20          	mov    0x20(%rax),%rax
1800a0736:	ff d0                	call   *%rax
1800a0738:	0f 1f 00             	nopl   (%rax)
1800a073b:	41 03 06             	add    (%r14),%eax