1401c731c:	5d                   	pop    %rbp
1401c731d:	c3                   	ret
1401c731e:	cc                   	int3
1401c731f:	cc                   	int3
1401c7320:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401c7325:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1401c732a:	57                   	push   %rdi
1401c732b:	48 83 ec 40          	sub    $0x40,%rsp
1401c732f:	8b f2                	mov    %edx,%esi
1401c7331:	48 8b d9             	mov    %rcx,%rbx
1401c7334:	33 c0                	xor    %eax,%eax
1401c7336:	48 85 c9             	test   %rcx,%rcx
1401c7339:	0f 84 f4 00 00 00    	je     0x1401c7433
1401c733f:	0f 57 c0             	xorps  %xmm0,%xmm0
1401c7342:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
1401c7348:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1401c734d:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1401c7352:	49 8b c8             	mov    %r8,%rcx
1401c7355:	e8 e6 1c 00 00       	call   0x1401c9040
1401c735a:	48 8b 5b f0          	mov    -0x10(%rbx),%rbx
1401c735e:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
1401c7363:	48 85 db             	test   %rbx,%rbx
1401c7366:	74 15                	je     0x1401c737d
1401c7368:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c736c:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c7370:	48 83 c1 08          	add    $0x8,%rcx
1401c7374:	48 03 cb             	add    %rbx,%rcx
1401c7377:	48 8b 01             	mov    (%rcx),%rax
1401c737a:	ff 10                	call   *(%rax)
1401c737c:	90                   	nop
1401c737d:	48 8b 03             	mov    (%rbx),%rax
1401c7380:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
1401c7385:	8b d6                	mov    %esi,%edx
1401c7387:	48 8b cb             	mov    %rbx,%rcx
1401c738a:	ff 10                	call   *(%rax)
1401c738c:	90                   	nop
1401c738d:	48 85 db             	test   %rbx,%rbx
1401c7390:	74 16                	je     0x1401c73a8
1401c7392:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c7396:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c739a:	48 83 c1 08          	add    $0x8,%rcx
1401c739e:	48 03 cb             	add    %rbx,%rcx
1401c73a1:	48 8b 01             	mov    (%rcx),%rax
1401c73a4:	ff 50 08             	call   *0x8(%rax)
1401c73a7:	90                   	nop
1401c73a8:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
1401c73ad:	48 85 db             	test   %rbx,%rbx
1401c73b0:	0f 84 7d 00 00 00    	je     0x1401c7433
1401c73b6:	48 8b 7c 24 28       	mov    0x28(%rsp),%rdi
1401c73bb:	48 3b df             	cmp    %rdi,%rbx
1401c73be:	74 18                	je     0x1401c73d8
1401c73c0:	48 8b 03             	mov    (%rbx),%rax
1401c73c3:	33 d2                	xor    %edx,%edx
1401c73c5:	48 8b cb             	mov    %rbx,%rcx
1401c73c8:	ff 10                	call   *(%rax)
1401c73ca:	48 83 c3 18          	add    $0x18,%rbx
1401c73ce:	48 3b df             	cmp    %rdi,%rbx
1401c73d1:	75 ed                	jne    0x1401c73c0
1401c73d3:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
1401c73d8:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1401c73dd:	48 2b cb             	sub    %rbx,%rcx
1401c73e0:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
1401c73e7:	aa aa 2a
1401c73ea:	48 f7 e9             	imul   %rcx
1401c73ed:	48 c1 fa 02          	sar    $0x2,%rdx
1401c73f1:	48 8b c2             	mov    %rdx,%rax
1401c73f4:	48 c1 e8 3f          	shr    $0x3f,%rax
1401c73f8:	48 03 d0             	add    %rax,%rdx
1401c73fb:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
1401c73ff:	48 c1 e2 03          	shl    $0x3,%rdx
1401c7403:	48 8b c3             	mov    %rbx,%rax
1401c7406:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1401c740d:	72 1c                	jb     0x1401c742b
1401c740f:	48 83 c2 27          	add    $0x27,%rdx
1401c7413:	48 8b 5b f8          	mov    -0x8(%rbx),%rbx
1401c7417:	48 2b c3             	sub    %rbx,%rax
1401c741a:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1401c741e:	48 83 f8 1f          	cmp    $0x1f,%rax
1401c7422:	76 07                	jbe    0x1401c742b
1401c7424:	ff 15 ce 2b 16 00    	call   *0x162bce(%rip)        # 0x140329ff8
1401c742a:	cc                   	int3
1401c742b:	48 8b cb             	mov    %rbx,%rcx
1401c742e:	e8 51 2e 13 00       	call   0x1402fa284
1401c7433:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
1401c7438:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
1401c743d:	48 83 c4 40          	add    $0x40,%rsp
1401c7441:	5f                   	pop    %rdi
1401c7442:	c3                   	ret
1401c7443:	cc                   	int3
1401c7444:	cc                   	int3
1401c7445:	cc                   	int3
1401c7446:	cc                   	int3
1401c7447:	cc                   	int3
1401c7448:	cc                   	int3
1401c7449:	cc                   	int3
1401c744a:	cc                   	int3
1401c744b:	cc                   	int3
1401c744c:	cc                   	int3
1401c744d:	cc                   	int3
1401c744e:	cc                   	int3
1401c744f:	cc                   	int3
1401c7450:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401c7455:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1401c745a:	56                   	push   %rsi
1401c745b:	57                   	push   %rdi
1401c745c:	41 56                	push   %r14
1401c745e:	48 83 ec 30          	sub    $0x30,%rsp
1401c7462:	49 8b f1             	mov    %r9,%rsi
1401c7465:	4d 8b f0             	mov    %r8,%r14
1401c7468:	8b ea                	mov    %edx,%ebp
1401c746a:	48 85 c9             	test   %rcx,%rcx
1401c746d:	0f 84 84 00 00 00    	je     0x1401c74f7
1401c7473:	4d 85 c0             	test   %r8,%r8
1401c7476:	74 7f                	je     0x1401c74f7
1401c7478:	4d 85 c9             	test   %r9,%r9
1401c747b:	74 7a                	je     0x1401c74f7
1401c747d:	49 8b 00             	mov    (%r8),%rax
1401c7480:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
1401c7485:	49 8b 01             	mov    (%r9),%rax
1401c7488:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1401c748d:	48 8b 59 f0          	mov    -0x10(%rcx),%rbx
1401c7491:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
1401c7496:	48 85 db             	test   %rbx,%rbx
1401c7499:	74 15                	je     0x1401c74b0
1401c749b:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c749f:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c74a3:	48 83 c1 08          	add    $0x8,%rcx
1401c74a7:	48 03 cb             	add    %rbx,%rcx
1401c74aa:	48 8b 01             	mov    (%rcx),%rax
1401c74ad:	ff 10                	call   *(%rax)
1401c74af:	90                   	nop
1401c74b0:	48 8b 03             	mov    (%rbx),%rax
1401c74b3:	4c 8d 4c 24 20       	lea    0x20(%rsp),%r9
1401c74b8:	4c 8d 44 24 50       	lea    0x50(%rsp),%r8
1401c74bd:	8b d5                	mov    %ebp,%edx
1401c74bf:	48 8b cb             	mov    %rbx,%rcx
1401c74c2:	ff 50 08             	call   *0x8(%rax)
1401c74c5:	0f b6 e8             	movzbl %al,%ebp
1401c74c8:	48 85 db             	test   %rbx,%rbx
1401c74cb:	74 16                	je     0x1401c74e3
1401c74cd:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1401c74d1:	48 63 49 04          	movslq 0x4(%rcx),%rcx
1401c74d5:	48 83 c1 08          	add    $0x8,%rcx
1401c74d9:	48 03 cb             	add    %rbx,%rcx
1401c74dc:	48 8b 11             	mov    (%rcx),%rdx
1401c74df:	ff 52 08             	call   *0x8(%rdx)
1401c74e2:	90                   	nop
1401c74e3:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
1401c74e8:	49 89 06             	mov    %rax,(%r14)
1401c74eb:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
1401c74f0:	48 89 06             	mov    %rax,(%rsi)
1401c74f3:	8b c5                	mov    %ebp,%eax
1401c74f5:	eb 02                	jmp    0x1401c74f9
1401c74f7:	33 c0                	xor    %eax,%eax
1401c74f9:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
1401c74fe:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
1401c7503:	48 83 c4 30          	add    $0x30,%rsp
1401c7507:	41 5e                	pop    %r14
1401c7509:	5f                   	pop    %rdi
1401c750a:	5e                   	pop    %rsi
1401c750b:	c3                   	ret
1401c750c:	cc                   	int3
1401c750d:	cc                   	int3
1401c750e:	cc                   	int3
1401c750f:	cc                   	int3
1401c7510:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401c7515:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1401c751a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1401c751f:	57                   	push   %rdi
1401c7520:	41 56                	push   %r14
1401c7522:	41 57                	push   %r15
1401c7524:	48 83 ec 40          	sub    $0x40,%rsp
1401c7528:	4d 8b f1             	mov    %r9,%r14
1401c752b:	41 8b e8             	mov    %r8d,%ebp
1401c752e:	44 8b fa             	mov    %edx,%r15d
1401c7531:	48 85 c9             	test   %rcx,%rcx
1401c7534:	0f 84 9d 00 00 00    	je     0x1401c75d7
1401c753a:	4d 85 c9             	test   %r9,%r9
1401c753d:	0f 84 94 00 00 00    	je     0x1401c75d7
1401c7543:	48 8b b4 24 80 00 00 	mov    0x80(%rsp),%rsi
1401c754a:	00
1401c754b:	48 85 f6             	test   %rsi,%rsi
1401c754e:	0f 84 83 00 00 00    	je     0x1401c75d7
1401c7554:	49 8b 01             	mov    (%r9),%rax
1401c7557:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
1401c755c:	48 8b 06             	mov    (%rsi),%rax
1401c755f:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1401c7564:	48 8b 59 f0          	mov    -0x10(%rcx),%rbx
1401c7568:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
1401c756d:	48 85 db             	test   %rbx,%rbx
1401c7570:	74 15                	je     0x1401c7587
1401c7572:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c7576:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c757a:	48 83 c1 08          	add    $0x8,%rcx
1401c757e:	48 03 cb             	add    %rbx,%rcx
1401c7581:	48 8b 01             	mov    (%rcx),%rax
1401c7584:	ff 10                	call   *(%rax)
1401c7586:	90                   	nop
1401c7587:	48 8b 03             	mov    (%rbx),%rax
1401c758a:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401c758f:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1401c7594:	4c 8d 4c 24 60       	lea    0x60(%rsp),%r9
1401c7599:	44 8b c5             	mov    %ebp,%r8d
1401c759c:	41 8b d7             	mov    %r15d,%edx
1401c759f:	48 8b cb             	mov    %rbx,%rcx
1401c75a2:	ff 50 10             	call   *0x10(%rax)
1401c75a5:	0f b6 e8             	movzbl %al,%ebp
1401c75a8:	48 85 db             	test   %rbx,%rbx
1401c75ab:	74 16                	je     0x1401c75c3
1401c75ad:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1401c75b1:	48 63 49 04          	movslq 0x4(%rcx),%rcx
1401c75b5:	48 83 c1 08          	add    $0x8,%rcx
1401c75b9:	48 03 cb             	add    %rbx,%rcx
1401c75bc:	48 8b 11             	mov    (%rcx),%rdx
1401c75bf:	ff 52 08             	call   *0x8(%rdx)
1401c75c2:	90                   	nop
1401c75c3:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
1401c75c8:	49 89 06             	mov    %rax,(%r14)
1401c75cb:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1401c75d0:	48 89 06             	mov    %rax,(%rsi)
1401c75d3:	8b c5                	mov    %ebp,%eax
1401c75d5:	eb 02                	jmp    0x1401c75d9
1401c75d7:	33 c0                	xor    %eax,%eax
1401c75d9:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
1401c75de:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
1401c75e3:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
1401c75e8:	48 83 c4 40          	add    $0x40,%rsp
1401c75ec:	41 5f                	pop    %r15
1401c75ee:	41 5e                	pop    %r14
1401c75f0:	5f                   	pop    %rdi
1401c75f1:	c3                   	ret
1401c75f2:	cc                   	int3
1401c75f3:	cc                   	int3
1401c75f4:	cc                   	int3
1401c75f5:	cc                   	int3
1401c75f6:	cc                   	int3
1401c75f7:	cc                   	int3
1401c75f8:	cc                   	int3
1401c75f9:	cc                   	int3
1401c75fa:	cc                   	int3
1401c75fb:	cc                   	int3
1401c75fc:	cc                   	int3
1401c75fd:	cc                   	int3
1401c75fe:	cc                   	int3
1401c75ff:	cc                   	int3
1401c7600:	48 8b c4             	mov    %rsp,%rax
1401c7603:	48 89 58 10          	mov    %rbx,0x10(%rax)
1401c7607:	48 89 68 18          	mov    %rbp,0x18(%rax)
1401c760b:	48 89 70 20          	mov    %rsi,0x20(%rax)
1401c760f:	57                   	push   %rdi
1401c7610:	48 83 ec 40          	sub    $0x40,%rsp
1401c7614:	8b f2                	mov    %edx,%esi
1401c7616:	48 85 c9             	test   %rcx,%rcx
1401c7619:	0f 84 99 00 00 00    	je     0x1401c76b8
1401c761f:	4d 85 c0             	test   %r8,%r8
1401c7622:	0f 84 90 00 00 00    	je     0x1401c76b8
1401c7628:	48 8d 2d 11 33 16 00 	lea    0x163311(%rip),%rbp        # 0x14032a940
1401c762f:	48 89 68 d8          	mov    %rbp,-0x28(%rax)
1401c7633:	4c 89 40 e0          	mov    %r8,-0x20(%rax)
1401c7637:	c6 40 e8 00          	movb   $0x0,-0x18(%rax)
1401c763b:	48 8b 59 f0          	mov    -0x10(%rcx),%rbx
1401c763f:	48 89 58 08          	mov    %rbx,0x8(%rax)
1401c7643:	48 85 db             	test   %rbx,%rbx
1401c7646:	74 15                	je     0x1401c765d
1401c7648:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c764c:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c7650:	48 83 c1 08          	add    $0x8,%rcx
1401c7654:	48 03 cb             	add    %rbx,%rcx
1401c7657:	48 8b 01             	mov    (%rcx),%rax
1401c765a:	ff 10                	call   *(%rax)
1401c765c:	90                   	nop
1401c765d:	48 8b 03             	mov    (%rbx),%rax
1401c7660:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
1401c7665:	8b d6                	mov    %esi,%edx
1401c7667:	48 8b cb             	mov    %rbx,%rcx
1401c766a:	ff 10                	call   *(%rax)
1401c766c:	0f b6 f0             	movzbl %al,%esi
1401c766f:	48 85 db             	test   %rbx,%rbx
1401c7672:	74 16                	je     0x1401c768a
1401c7674:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1401c7678:	48 63 49 04          	movslq 0x4(%rcx),%rcx
1401c767c:	48 83 c1 08          	add    $0x8,%rcx
1401c7680:	48 03 cb             	add    %rbx,%rcx
1401c7683:	48 8b 11             	mov    (%rcx),%rdx
1401c7686:	ff 52 08             	call   *0x8(%rdx)
1401c7689:	90                   	nop
1401c768a:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1401c768f:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
1401c7694:	48 85 c9             	test   %rcx,%rcx
1401c7697:	74 1b                	je     0x1401c76b4
1401c7699:	80 7c 24 30 00       	cmpb   $0x0,0x30(%rsp)
1401c769e:	74 14                	je     0x1401c76b4
1401c76a0:	e8 57 67 f1 ff       	call   0x1400dddfc
1401c76a5:	ba 18 00 00 00       	mov    $0x18,%edx
1401c76aa:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
1401c76af:	e8 d0 2b 13 00       	call   0x1402fa284
1401c76b4:	8b c6                	mov    %esi,%eax
1401c76b6:	eb 02                	jmp    0x1401c76ba
1401c76b8:	33 c0                	xor    %eax,%eax
1401c76ba:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
1401c76bf:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
1401c76c4:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
1401c76c9:	48 83 c4 40          	add    $0x40,%rsp
1401c76cd:	5f                   	pop    %rdi
1401c76ce:	c3                   	ret
1401c76cf:	cc                   	int3
1401c76d0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401c76d5:	57                   	push   %rdi
1401c76d6:	48 83 ec 20          	sub    $0x20,%rsp
1401c76da:	48 85 c9             	test   %rcx,%rcx
1401c76dd:	74 48                	je     0x1401c7727
1401c76df:	48 8b 59 f0          	mov    -0x10(%rcx),%rbx
1401c76e3:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
1401c76e8:	48 85 db             	test   %rbx,%rbx
1401c76eb:	74 15                	je     0x1401c7702
1401c76ed:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c76f1:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c76f5:	48 83 c1 08          	add    $0x8,%rcx
1401c76f9:	48 03 cb             	add    %rbx,%rcx
1401c76fc:	48 8b 01             	mov    (%rcx),%rax
1401c76ff:	ff 10                	call   *(%rax)
1401c7701:	90                   	nop
1401c7702:	48 8b 03             	mov    (%rbx),%rax
1401c7705:	48 8b cb             	mov    %rbx,%rcx
1401c7708:	ff 50 30             	call   *0x30(%rax)
1401c770b:	90                   	nop
1401c770c:	48 85 db             	test   %rbx,%rbx
1401c770f:	74 16                	je     0x1401c7727
1401c7711:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c7715:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c7719:	48 83 c1 08          	add    $0x8,%rcx
1401c771d:	48 03 cb             	add    %rbx,%rcx
1401c7720:	48 8b 01             	mov    (%rcx),%rax
1401c7723:	ff 50 08             	call   *0x8(%rax)
1401c7726:	90                   	nop
1401c7727:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1401c772c:	48 83 c4 20          	add    $0x20,%rsp
1401c7730:	5f                   	pop    %rdi
1401c7731:	c3                   	ret
1401c7732:	cc                   	int3
1401c7733:	cc                   	int3
1401c7734:	cc                   	int3
1401c7735:	cc                   	int3
1401c7736:	cc                   	int3
1401c7737:	cc                   	int3
1401c7738:	cc                   	int3
1401c7739:	cc                   	int3
1401c773a:	cc                   	int3
1401c773b:	cc                   	int3
1401c773c:	cc                   	int3