180010369:	85 c0                	test   %eax,%eax
18001036b:	79 02                	jns    0x18001036f
18001036d:	89 1f                	mov    %ebx,(%rdi)
18001036f:	48 8b 0d 62 46 19 00 	mov    0x194662(%rip),%rcx        # 0x1801a49d8
180010376:	4c 8d 45 f8          	lea    -0x8(%rbp),%r8
18001037a:	ba e0 00 00 25       	mov    $0x250000e0,%edx
18001037f:	e8 3c c1 06 00       	call   0x18007c4c0
180010384:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
180010388:	85 c0                	test   %eax,%eax
18001038a:	ba 02 00 00 00       	mov    $0x2,%edx
18001038f:	44 89 75 f4          	mov    %r14d,-0xc(%rbp)
180010393:	48 0f 48 ca          	cmovs  %rdx,%rcx
180010397:	48 39 1d f2 f7 15 00 	cmp    %rbx,0x15f7f2(%rip)        # 0x18016fb90
18001039e:	48 89 4d f8          	mov    %rcx,-0x8(%rbp)
1800103a2:	75 0a                	jne    0x1800103ae
1800103a4:	b8 01 00 00 c0       	mov    $0xc0000001,%eax
1800103a9:	e9 86 01 00 00       	jmp    0x180010534
1800103ae:	4c 8d 4d f4          	lea    -0xc(%rbp),%r9
1800103b2:	ba 05 00 00 00       	mov    $0x5,%edx
1800103b7:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
1800103bb:	41 8a ce             	mov    %r14b,%cl
1800103be:	e8 49 07 00 00       	call   0x180010b0c
1800103c3:	85 c0                	test   %eax,%eax
1800103c5:	0f 88 69 01 00 00    	js     0x180010534
1800103cb:	48 8b 45 70          	mov    0x70(%rbp),%rax
1800103cf:	4c 8d 4d f4          	lea    -0xc(%rbp),%r9
1800103d3:	0f b6 75 f0          	movzbl -0x10(%rbp),%esi
1800103d7:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
1800103db:	ba 04 00 00 00       	mov    $0x4,%edx
1800103e0:	44 89 75 f4          	mov    %r14d,-0xc(%rbp)
1800103e4:	41 8a ce             	mov    %r14b,%cl
1800103e7:	40 88 30             	mov    %sil,(%rax)
1800103ea:	e8 1d 07 00 00       	call   0x180010b0c
1800103ef:	85 c0                	test   %eax,%eax
1800103f1:	0f 88 3d 01 00 00    	js     0x180010534
1800103f7:	48 8b 45 68          	mov    0x68(%rbp),%rax
1800103fb:	44 8b ce             	mov    %esi,%r9d
1800103fe:	44 0f b6 75 f0       	movzbl -0x10(%rbp),%r14d
180010403:	44 88 30             	mov    %r14b,(%rax)
180010406:	8b 45 f8             	mov    -0x8(%rbp),%eax
180010409:	89 44 24 30          	mov    %eax,0x30(%rsp)
18001040d:	8b 07                	mov    (%rdi),%eax
18001040f:	89 44 24 28          	mov    %eax,0x28(%rsp)
180010413:	44 89 74 24 20       	mov    %r14d,0x20(%rsp)
180010418:	e8 73 fe ff ff       	call   0x180010290
18001041d:	45 84 f6             	test   %r14b,%r14b
180010420:	74 3b                	je     0x18001045d
180010422:	40 84 f6             	test   %sil,%sil
180010425:	75 36                	jne    0x18001045d
180010427:	48 39 1d 62 f7 15 00 	cmp    %rbx,0x15f762(%rip)        # 0x18016fb90
18001042e:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%rbp)
180010435:	0f 84 69 ff ff ff    	je     0x1800103a4
18001043b:	4c 8d 4d f4          	lea    -0xc(%rbp),%r9
18001043f:	ba 09 00 00 00       	mov    $0x9,%edx
180010444:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
180010448:	b1 01                	mov    $0x1,%cl
18001044a:	e8 bd 06 00 00       	call   0x180010b0c
18001044f:	85 c0                	test   %eax,%eax
180010451:	0f 88 dd 00 00 00    	js     0x180010534
180010457:	40 8a 7d f0          	mov    -0x10(%rbp),%dil
18001045b:	eb 03                	jmp    0x180010460
18001045d:	40 b7 01             	mov    $0x1,%dil
180010460:	45 84 f6             	test   %r14b,%r14b
180010463:	74 05                	je     0x18001046a
180010465:	40 84 ff             	test   %dil,%dil
180010468:	75 03                	jne    0x18001046d
18001046a:	40 b6 01             	mov    $0x1,%sil
18001046d:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
180010471:	48 83 e8 01          	sub    $0x1,%rax
180010475:	74 59                	je     0x1800104d0
180010477:	48 83 e8 01          	sub    $0x1,%rax
18001047b:	74 4e                	je     0x1800104cb
18001047d:	48 83 e8 01          	sub    $0x1,%rax
180010481:	74 43                	je     0x1800104c6
180010483:	48 83 e8 01          	sub    $0x1,%rax
180010487:	74 38                	je     0x1800104c1
180010489:	48 83 e8 01          	sub    $0x1,%rax
18001048d:	74 2a                	je     0x1800104b9
18001048f:	48 83 e8 01          	sub    $0x1,%rax
180010493:	74 1c                	je     0x1800104b1
180010495:	48 83 e8 01          	sub    $0x1,%rax
180010499:	74 0e                	je     0x1800104a9
18001049b:	48 83 f8 01          	cmp    $0x1,%rax
18001049f:	75 38                	jne    0x1800104d9
1800104a1:	44 8a e0             	mov    %al,%r12b
1800104a4:	40 8a f0             	mov    %al,%sil
1800104a7:	eb 30                	jmp    0x1800104d9
1800104a9:	41 b6 01             	mov    $0x1,%r14b
1800104ac:	41 8a f6             	mov    %r14b,%sil
1800104af:	eb 2d                	jmp    0x1800104de
1800104b1:	40 b7 01             	mov    $0x1,%dil
1800104b4:	40 8a f7             	mov    %dil,%sil
1800104b7:	eb 20                	jmp    0x1800104d9
1800104b9:	41 b6 01             	mov    $0x1,%r14b
1800104bc:	41 8a fe             	mov    %r14b,%dil
1800104bf:	eb 51                	jmp    0x180010512
1800104c1:	40 b7 01             	mov    $0x1,%dil
1800104c4:	eb 13                	jmp    0x1800104d9
1800104c6:	41 b6 01             	mov    $0x1,%r14b
1800104c9:	eb 13                	jmp    0x1800104de
1800104cb:	40 b6 01             	mov    $0x1,%sil
1800104ce:	eb 09                	jmp    0x1800104d9
1800104d0:	40 b6 01             	mov    $0x1,%sil
1800104d3:	44 8a f6             	mov    %sil,%r14b
1800104d6:	40 8a fe             	mov    %sil,%dil
1800104d9:	45 84 f6             	test   %r14b,%r14b
1800104dc:	74 05                	je     0x1800104e3
1800104de:	40 84 ff             	test   %dil,%dil
1800104e1:	75 2f                	jne    0x180010512
1800104e3:	48 39 1d a6 f6 15 00 	cmp    %rbx,0x15f6a6(%rip)        # 0x18016fb90
1800104ea:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%rbp)
1800104f1:	0f 84 ad fe ff ff    	je     0x1800103a4
1800104f7:	4c 8d 4d f4          	lea    -0xc(%rbp),%r9
1800104fb:	ba 08 00 00 00       	mov    $0x8,%edx
180010500:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
180010504:	b1 01                	mov    $0x1,%cl
180010506:	e8 01 06 00 00       	call   0x180010b0c
18001050b:	85 c0                	test   %eax,%eax
18001050d:	78 25                	js     0x180010534
18001050f:	8a 5d f0             	mov    -0x10(%rbp),%bl
180010512:	48 8b 45 40          	mov    0x40(%rbp),%rax
180010516:	44 88 30             	mov    %r14b,(%rax)
180010519:	48 8b 45 48          	mov    0x48(%rbp),%rax
18001051d:	40 88 30             	mov    %sil,(%rax)
180010520:	48 8b 45 50          	mov    0x50(%rbp),%rax
180010524:	40 88 38             	mov    %dil,(%rax)
180010527:	48 8b 45 78          	mov    0x78(%rbp),%rax
18001052b:	41 88 5d 00          	mov    %bl,0x0(%r13)
18001052f:	44 88 20             	mov    %r12b,(%rax)
180010532:	33 c0                	xor    %eax,%eax
180010534:	48 83 c4 50          	add    $0x50,%rsp
180010538:	41 5e                	pop    %r14
18001053a:	41 5d                	pop    %r13
18001053c:	41 5c                	pop    %r12
18001053e:	5f                   	pop    %rdi
18001053f:	5e                   	pop    %rsi
180010540:	5b                   	pop    %rbx
180010541:	5d                   	pop    %rbp
180010542:	c3                   	ret
180010543:	cc                   	int3
180010544:	48 8b c4             	mov    %rsp,%rax
180010547:	48 89 58 20          	mov    %rbx,0x20(%rax)
18001054b:	44 88 40 18          	mov    %r8b,0x18(%rax)
18001054f:	88 50 10             	mov    %dl,0x10(%rax)
180010552:	88 48 08             	mov    %cl,0x8(%rax)
180010555:	55                   	push   %rbp
180010556:	48 8b ec             	mov    %rsp,%rbp
180010559:	48 83 ec 30          	sub    $0x30,%rsp
18001055d:	33 c9                	xor    %ecx,%ecx
18001055f:	41 8b d9             	mov    %r9d,%ebx
180010562:	e8 25 06 00 00       	call   0x180010b8c
180010567:	85 c0                	test   %eax,%eax
180010569:	0f 88 df 00 00 00    	js     0x18001064e
18001056f:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
180010573:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%rbp)
18001057a:	48 8d 55 18          	lea    0x18(%rbp),%rdx
18001057e:	b9 05 00 00 00       	mov    $0x5,%ecx
180010583:	e8 88 07 00 00       	call   0x180010d10
180010588:	85 c0                	test   %eax,%eax
18001058a:	0f 88 be 00 00 00    	js     0x18001064e
180010590:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
180010594:	b9 04 00 00 00       	mov    $0x4,%ecx
180010599:	48 8d 55 10          	lea    0x10(%rbp),%rdx
18001059d:	e8 6e 07 00 00       	call   0x180010d10
1800105a2:	85 c0                	test   %eax,%eax
1800105a4:	0f 88 a4 00 00 00    	js     0x18001064e
1800105aa:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
1800105ae:	b9 09 00 00 00       	mov    $0x9,%ecx
1800105b3:	48 8d 55 20          	lea    0x20(%rbp),%rdx
1800105b7:	e8 54 07 00 00       	call   0x180010d10
1800105bc:	85 c0                	test   %eax,%eax
1800105be:	0f 88 8a 00 00 00    	js     0x18001064e
1800105c4:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
1800105c8:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%rbp)
1800105cf:	48 8d 55 30          	lea    0x30(%rbp),%rdx
1800105d3:	b9 08 00 00 00       	mov    $0x8,%ecx
1800105d8:	e8 33 07 00 00       	call   0x180010d10
1800105dd:	85 c0                	test   %eax,%eax
1800105df:	78 6d                	js     0x18001064e
1800105e1:	48 83 3d a7 f5 15 00 	cmpq   $0x0,0x15f5a7(%rip)        # 0x18016fb90
1800105e8:	00
1800105e9:	c7 45 f0 04 00 00 00 	movl   $0x4,-0x10(%rbp)
1800105f0:	74 1d                	je     0x18001060f
1800105f2:	4c 8d 4d f0          	lea    -0x10(%rbp),%r9
1800105f6:	ba 0a 00 00 00       	mov    $0xa,%edx
1800105fb:	4c 8d 45 f4          	lea    -0xc(%rbp),%r8
1800105ff:	b1 01                	mov    $0x1,%cl
180010601:	e8 06 05 00 00       	call   0x180010b0c
180010606:	85 c0                	test   %eax,%eax
180010608:	78 05                	js     0x18001060f
18001060a:	8b 45 f4             	mov    -0xc(%rbp),%eax
18001060d:	eb 02                	jmp    0x180010611
18001060f:	33 c0                	xor    %eax,%eax
180010611:	83 fb 01             	cmp    $0x1,%ebx
180010614:	75 05                	jne    0x18001061b
180010616:	8d 48 01             	lea    0x1(%rax),%ecx
180010619:	eb 0c                	jmp    0x180010627
18001061b:	83 fb 02             	cmp    $0x2,%ebx
18001061e:	75 27                	jne    0x180010647
180010620:	85 c0                	test   %eax,%eax
180010622:	74 23                	je     0x180010647
180010624:	8d 48 ff             	lea    -0x1(%rax),%ecx
180010627:	89 4d f4             	mov    %ecx,-0xc(%rbp)
18001062a:	3b c8                	cmp    %eax,%ecx
18001062c:	74 19                	je     0x180010647
18001062e:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
180010632:	c7 45 f0 04 00 00 00 	movl   $0x4,-0x10(%rbp)
180010639:	48 8d 55 f4          	lea    -0xc(%rbp),%rdx
18001063d:	b9 0a 00 00 00       	mov    $0xa,%ecx
180010642:	e8 c9 06 00 00       	call   0x180010d10
180010647:	b1 01                	mov    $0x1,%cl
180010649:	e8 3e 05 00 00       	call   0x180010b8c
18001064e:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
180010653:	48 83 c4 30          	add    $0x30,%rsp
180010657:	5d                   	pop    %rbp
180010658:	c3                   	ret
180010659:	cc                   	int3
18001065a:	cc                   	int3
18001065b:	cc                   	int3
18001065c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180010661:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180010666:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18001066b:	57                   	push   %rdi
18001066c:	41 56                	push   %r14
18001066e:	41 57                	push   %r15
180010670:	48 83 ec 20          	sub    $0x20,%rsp
180010674:	48 8b f9             	mov    %rcx,%rdi
180010677:	4d 8b f0             	mov    %r8,%r14
18001067a:	b9 21 00 00 00       	mov    $0x21,%ecx
18001067f:	4c 8b fa             	mov    %rdx,%r15
180010682:	e8 c9 97 08 00       	call   0x180099e50
180010687:	48 8b d8             	mov    %rax,%rbx
18001068a:	48 85 c0             	test   %rax,%rax
18001068d:	75 0a                	jne    0x180010699
18001068f:	bf 17 00 00 c0       	mov    $0xc0000017,%edi
180010694:	e9 1e 01 00 00       	jmp    0x1800107b7
180010699:	0f 10 07             	movups (%rdi),%xmm0
18001069c:	33 c9                	xor    %ecx,%ecx
18001069e:	0f 11 00             	movups %xmm0,(%rax)
1800106a1:	f2 0f 10 4f 10       	movsd  0x10(%rdi),%xmm1
1800106a6:	f2 0f 11 48 10       	movsd  %xmm1,0x10(%rax)
1800106ab:	e8 dc 04 00 00       	call   0x180010b8c
1800106b0:	8b f8                	mov    %eax,%edi
1800106b2:	85 c0                	test   %eax,%eax
1800106b4:	0f 88 f0 00 00 00    	js     0x1800107aa
1800106ba:	48 8b 35 cf f4 15 00 	mov    0x15f4cf(%rip),%rsi        # 0x18016fb90
1800106c1:	c7 44 24 58 04 00 00 	movl   $0x4,0x58(%rsp)
1800106c8:	00
1800106c9:	48 85 f6             	test   %rsi,%rsi
1800106cc:	75 0a                	jne    0x1800106d8
1800106ce:	bf 01 00 00 c0       	mov    $0xc0000001,%edi
1800106d3:	e9 d2 00 00 00       	jmp    0x1800107aa
1800106d8:	ba 0a 00 00 00       	mov    $0xa,%edx
1800106dd:	4c 8d 43 18          	lea    0x18(%rbx),%r8
1800106e1:	4c 8d 4c 24 58       	lea    0x58(%rsp),%r9
1800106e6:	8d 6a f7             	lea    -0x9(%rdx),%ebp
1800106e9:	40 8a cd             	mov    %bpl,%cl
1800106ec:	e8 1b 04 00 00       	call   0x180010b0c
1800106f1:	8b f8                	mov    %eax,%edi
1800106f3:	85 c0                	test   %eax,%eax
1800106f5:	0f 88 af 00 00 00    	js     0x1800107aa
1800106fb:	4c 8d 43 1d          	lea    0x1d(%rbx),%r8
1800106ff:	89 6c 24 58          	mov    %ebp,0x58(%rsp)
180010703:	4c 8d 4c 24 58       	lea    0x58(%rsp),%r9
180010708:	40 8a cd             	mov    %bpl,%cl
18001070b:	8d 55 04             	lea    0x4(%rbp),%edx
18001070e:	e8 f9 03 00 00       	call   0x180010b0c
180010713:	8b f8                	mov    %eax,%edi
180010715:	85 c0                	test   %eax,%eax
180010717:	0f 88 8d 00 00 00    	js     0x1800107aa
18001071d:	4c 8d 43 1c          	lea    0x1c(%rbx),%r8
180010721:	89 6c 24 58          	mov    %ebp,0x58(%rsp)
180010725:	4c 8d 4c 24 58       	lea    0x58(%rsp),%r9
18001072a:	40 8a cd             	mov    %bpl,%cl
18001072d:	8d 55 03             	lea    0x3(%rbp),%edx
180010730:	e8 d7 03 00 00       	call   0x180010b0c
180010735:	8b f8                	mov    %eax,%edi
180010737:	85 c0                	test   %eax,%eax
180010739:	78 6f                	js     0x1800107aa
18001073b:	4c 8d 43 1e          	lea    0x1e(%rbx),%r8
18001073f:	89 6c 24 58          	mov    %ebp,0x58(%rsp)
180010743:	4c 8d 4c 24 58       	lea    0x58(%rsp),%r9
180010748:	40 8a cd             	mov    %bpl,%cl
18001074b:	8d 55 07             	lea    0x7(%rbp),%edx
18001074e:	e8 b9 03 00 00       	call   0x180010b0c
180010753:	8b f8                	mov    %eax,%edi
180010755:	85 c0                	test   %eax,%eax
180010757:	78 51                	js     0x1800107aa
180010759:	4c 8d 43 1f          	lea    0x1f(%rbx),%r8
18001075d:	89 6c 24 58          	mov    %ebp,0x58(%rsp)
180010761:	4c 8d 4c 24 58       	lea    0x58(%rsp),%r9
180010766:	40 8a cd             	mov    %bpl,%cl
180010769:	8d 55 08             	lea    0x8(%rbp),%edx
18001076c:	e8 9b 03 00 00       	call   0x180010b0c
180010771:	8b f8                	mov    %eax,%edi
180010773:	85 c0                	test   %eax,%eax
180010775:	78 33                	js     0x1800107aa
180010777:	44 8b 06             	mov    (%rsi),%r8d
18001077a:	41 8d 40 ff          	lea    -0x1(%r8),%eax
18001077e:	3d af 00 00 00       	cmp    $0xaf,%eax
180010783:	77 14                	ja     0x180010799
180010785:	44 8b cd             	mov    %ebp,%r9d
180010788:	48 8b d6             	mov    %rsi,%rdx
18001078b:	33 c9                	xor    %ecx,%ecx
18001078d:	e8 ea 26 08 00       	call   0x180092e7c
180010792:	84 c0                	test   %al,%al
180010794:	0f 94 c0             	sete   %al
180010797:	eb 02                	jmp    0x18001079b
180010799:	32 c0                	xor    %al,%al
18001079b:	88 43 20             	mov    %al,0x20(%rbx)
18001079e:	49 89 1f             	mov    %rbx,(%r15)
1800107a1:	33 db                	xor    %ebx,%ebx
1800107a3:	41 c7 06 21 00 00 00 	movl   $0x21,(%r14)
1800107aa:	48 85 db             	test   %rbx,%rbx
1800107ad:	74 08                	je     0x1800107b7
1800107af:	48 8b cb             	mov    %rbx,%rcx
1800107b2:	e8 45 98 08 00       	call   0x180099ffc
1800107b7:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1800107bc:	8b c7                	mov    %edi,%eax
1800107be:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1800107c3:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1800107c8:	48 83 c4 20          	add    $0x20,%rsp
1800107cc:	41 5f                	pop    %r15
1800107ce:	41 5e                	pop    %r14
1800107d0:	5f                   	pop    %rdi
1800107d1:	c3                   	ret
1800107d2:	cc                   	int3
1800107d3:	cc                   	int3
1800107d4:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1800107d9:	55                   	push   %rbp
1800107da:	56                   	push   %rsi
1800107db:	57                   	push   %rdi
1800107dc:	41 54                	push   %r12
1800107de:	41 55                	push   %r13
1800107e0:	41 56                	push   %r14
1800107e2:	41 57                	push   %r15
1800107e4:	48 8b ec             	mov    %rsp,%rbp
1800107e7:	48 83 ec 50          	sub    $0x50,%rsp
1800107eb:	49 8b f8             	mov    %r8,%rdi
1800107ee:	4c 8b f2             	mov    %rdx,%r14
1800107f1:	4c 8b e9             	mov    %rcx,%r13
1800107f4:	e8 07 b4 00 00       	call   0x18001bc00
1800107f9:	48 8d 45 40          	lea    0x40(%rbp),%rax
1800107fd:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
180010802:	4c 8d 0d c6 bc 15 00 	lea    0x15bcc6(%rip),%r9        # 0x18016c4cf
180010809:	48 8d 45 48          	lea    0x48(%rbp),%rax
18001080d:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
180010812:	4c 8d 05 b0 bc 15 00 	lea    0x15bcb0(%rip),%r8        # 0x18016c4c9
180010819:	48 8d 45 58          	lea    0x58(%rbp),%rax
18001081d:	48 89 44 24 28       	mov    %rax,0x28(%rsp)