1401c70cc:	56                   	push   %rsi
1401c70cd:	57                   	push   %rdi
1401c70ce:	41 55                	push   %r13
1401c70d0:	41 56                	push   %r14
1401c70d2:	41 57                	push   %r15
1401c70d4:	48 8d 6c 24 f9       	lea    -0x7(%rsp),%rbp
1401c70d9:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
1401c70e0:	4d 8b e9             	mov    %r9,%r13
1401c70e3:	4c 8b f9             	mov    %rcx,%r15
1401c70e6:	4c 8b 75 77          	mov    0x77(%rbp),%r14
1401c70ea:	33 c9                	xor    %ecx,%ecx
1401c70ec:	4d 85 ff             	test   %r15,%r15
1401c70ef:	0f 84 15 02 00 00    	je     0x1401c730a
1401c70f5:	48 85 d2             	test   %rdx,%rdx
1401c70f8:	0f 84 0c 02 00 00    	je     0x1401c730a
1401c70fe:	4d 85 c9             	test   %r9,%r9
1401c7101:	0f 84 03 02 00 00    	je     0x1401c730a
1401c7107:	48 8b 75 6f          	mov    0x6f(%rbp),%rsi
1401c710b:	48 85 f6             	test   %rsi,%rsi
1401c710e:	74 09                	je     0x1401c7119
1401c7110:	4d 85 f6             	test   %r14,%r14
1401c7113:	0f 84 f1 01 00 00    	je     0x1401c730a
1401c7119:	48 83 7d 7f 00       	cmpq   $0x0,0x7f(%rbp)
1401c711e:	0f 84 e6 01 00 00    	je     0x1401c730a
1401c7124:	0f 57 c0             	xorps  %xmm0,%xmm0
1401c7127:	f3 0f 7f 45 d7       	movdqu %xmm0,-0x29(%rbp)
1401c712c:	48 89 4d e7          	mov    %rcx,-0x19(%rbp)
1401c7130:	48 85 f6             	test   %rsi,%rsi
1401c7133:	74 7b                	je     0x1401c71b0
1401c7135:	48 8b f9             	mov    %rcx,%rdi
1401c7138:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1401c713f:	00
1401c7140:	49 8b 14 fe          	mov    (%r14,%rdi,8),%rdx
1401c7144:	48 8d 4d 47          	lea    0x47(%rbp),%rcx
1401c7148:	e8 c3 32 ff ff       	call   0x1401ba410
1401c714d:	90                   	nop
1401c714e:	48 8b 5d 47          	mov    0x47(%rbp),%rbx
1401c7152:	48 8b 55 df          	mov    -0x21(%rbp),%rdx
1401c7156:	48 3b 55 e7          	cmp    -0x19(%rbp),%rdx
1401c715a:	74 23                	je     0x1401c717f
1401c715c:	48 89 1a             	mov    %rbx,(%rdx)
1401c715f:	48 85 db             	test   %rbx,%rbx
1401c7162:	74 14                	je     0x1401c7178
1401c7164:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c7168:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c716c:	48 83 c1 08          	add    $0x8,%rcx
1401c7170:	48 03 cb             	add    %rbx,%rcx
1401c7173:	48 8b 01             	mov    (%rcx),%rax
1401c7176:	ff 10                	call   *(%rax)
1401c7178:	48 83 45 df 08       	addq   $0x8,-0x21(%rbp)
1401c717d:	eb 0e                	jmp    0x1401c718d
1401c717f:	4c 8d 45 47          	lea    0x47(%rbp),%r8
1401c7183:	48 8d 4d d7          	lea    -0x29(%rbp),%rcx
1401c7187:	e8 44 8d f2 ff       	call   0x1400efed0
1401c718c:	90                   	nop
1401c718d:	48 85 db             	test   %rbx,%rbx
1401c7190:	74 16                	je     0x1401c71a8
1401c7192:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c7196:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c719a:	48 83 c1 08          	add    $0x8,%rcx
1401c719e:	48 03 cb             	add    %rbx,%rcx
1401c71a1:	48 8b 01             	mov    (%rcx),%rax
1401c71a4:	ff 50 08             	call   *0x8(%rax)
1401c71a7:	90                   	nop
1401c71a8:	48 ff c7             	inc    %rdi
1401c71ab:	48 3b fe             	cmp    %rsi,%rdi
1401c71ae:	72 90                	jb     0x1401c7140
1401c71b0:	49 8b 5f f0          	mov    -0x10(%r15),%rbx
1401c71b4:	48 89 5d bf          	mov    %rbx,-0x41(%rbp)
1401c71b8:	48 85 db             	test   %rbx,%rbx
1401c71bb:	74 15                	je     0x1401c71d2
1401c71bd:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c71c1:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c71c5:	48 83 c1 08          	add    $0x8,%rcx
1401c71c9:	48 03 cb             	add    %rbx,%rcx
1401c71cc:	48 8b 01             	mov    (%rcx),%rax
1401c71cf:	ff 10                	call   *(%rax)
1401c71d1:	90                   	nop
1401c71d2:	48 8b 03             	mov    (%rbx),%rax
1401c71d5:	48 8b 70 30          	mov    0x30(%rax),%rsi
1401c71d9:	48 8d 45 47          	lea    0x47(%rbp),%rax
1401c71dd:	48 89 45 c7          	mov    %rax,-0x39(%rbp)
1401c71e1:	48 8b 55 7f          	mov    0x7f(%rbp),%rdx
1401c71e5:	48 8d 4d 47          	lea    0x47(%rbp),%rcx
1401c71e9:	e8 22 25 ff ff       	call   0x1401b9710
1401c71ee:	48 8b f8             	mov    %rax,%rdi
1401c71f1:	4c 8d 35 48 37 16 00 	lea    0x163748(%rip),%r14        # 0x14032a940
1401c71f8:	4c 89 75 ef          	mov    %r14,-0x11(%rbp)
1401c71fc:	4c 89 6d f7          	mov    %r13,-0x9(%rbp)
1401c7200:	c6 45 ff 00          	movb   $0x0,-0x1(%rbp)
1401c7204:	48 8b 55 4f          	mov    0x4f(%rbp),%rdx
1401c7208:	48 8d 4d b7          	lea    -0x49(%rbp),%rcx
1401c720c:	e8 7f fa fe ff       	call   0x1401b6c90
1401c7211:	83 7d 57 00          	cmpl   $0x0,0x57(%rbp)
1401c7215:	41 0f 95 c0          	setne  %r8b
1401c7219:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
1401c721e:	48 8d 4d d7          	lea    -0x29(%rbp),%rcx
1401c7222:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1401c7227:	8b 4d 67             	mov    0x67(%rbp),%ecx
1401c722a:	89 4c 24 20          	mov    %ecx,0x20(%rsp)
1401c722e:	4c 8d 4d ef          	lea    -0x11(%rbp),%r9
1401c7232:	48 8b d0             	mov    %rax,%rdx
1401c7235:	48 8b cb             	mov    %rbx,%rcx
1401c7238:	ff d6                	call   *%rsi
1401c723a:	0f b6 f8             	movzbl %al,%edi
1401c723d:	4c 89 75 ef          	mov    %r14,-0x11(%rbp)
1401c7241:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
1401c7245:	48 85 c9             	test   %rcx,%rcx
1401c7248:	74 25                	je     0x1401c726f
1401c724a:	80 7d ff 00          	cmpb   $0x0,-0x1(%rbp)
1401c724e:	74 13                	je     0x1401c7263
1401c7250:	e8 a7 6b f1 ff       	call   0x1400dddfc
1401c7255:	ba 18 00 00 00       	mov    $0x18,%edx
1401c725a:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
1401c725e:	e8 21 30 13 00       	call   0x1402fa284
1401c7263:	48 c7 45 f7 00 00 00 	movq   $0x0,-0x9(%rbp)
1401c726a:	00
1401c726b:	c6 45 ff 00          	movb   $0x0,-0x1(%rbp)
1401c726f:	48 85 db             	test   %rbx,%rbx
1401c7272:	74 16                	je     0x1401c728a
1401c7274:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c7278:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c727c:	48 83 c1 08          	add    $0x8,%rcx
1401c7280:	48 03 cb             	add    %rbx,%rcx
1401c7283:	48 8b 01             	mov    (%rcx),%rax
1401c7286:	ff 50 08             	call   *0x8(%rax)
1401c7289:	90                   	nop
1401c728a:	8b f7                	mov    %edi,%esi
1401c728c:	48 8b 5d d7          	mov    -0x29(%rbp),%rbx
1401c7290:	48 85 db             	test   %rbx,%rbx
1401c7293:	74 71                	je     0x1401c7306
1401c7295:	48 8b 7d df          	mov    -0x21(%rbp),%rdi
1401c7299:	48 3b df             	cmp    %rdi,%rbx
1401c729c:	74 2d                	je     0x1401c72cb
1401c729e:	66 90                	xchg   %ax,%ax
1401c72a0:	48 8b 13             	mov    (%rbx),%rdx
1401c72a3:	48 85 d2             	test   %rdx,%rdx
1401c72a6:	74 16                	je     0x1401c72be
1401c72a8:	48 8b 42 08          	mov    0x8(%rdx),%rax
1401c72ac:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c72b0:	48 83 c2 08          	add    $0x8,%rdx
1401c72b4:	48 03 ca             	add    %rdx,%rcx
1401c72b7:	48 8b 01             	mov    (%rcx),%rax
1401c72ba:	ff 50 08             	call   *0x8(%rax)
1401c72bd:	90                   	nop
1401c72be:	48 83 c3 08          	add    $0x8,%rbx
1401c72c2:	48 3b df             	cmp    %rdi,%rbx
1401c72c5:	75 d9                	jne    0x1401c72a0
1401c72c7:	48 8b 5d d7          	mov    -0x29(%rbp),%rbx
1401c72cb:	48 8b 55 e7          	mov    -0x19(%rbp),%rdx
1401c72cf:	48 2b d3             	sub    %rbx,%rdx
1401c72d2:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
1401c72d6:	48 8b c3             	mov    %rbx,%rax
1401c72d9:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1401c72e0:	72 1c                	jb     0x1401c72fe
1401c72e2:	48 83 c2 27          	add    $0x27,%rdx
1401c72e6:	48 8b 5b f8          	mov    -0x8(%rbx),%rbx
1401c72ea:	48 2b c3             	sub    %rbx,%rax
1401c72ed:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1401c72f1:	48 83 f8 1f          	cmp    $0x1f,%rax
1401c72f5:	76 07                	jbe    0x1401c72fe
1401c72f7:	ff 15 fb 2c 16 00    	call   *0x162cfb(%rip)        # 0x140329ff8
1401c72fd:	cc                   	int3
1401c72fe:	48 8b cb             	mov    %rbx,%rcx
1401c7301:	e8 7e 2f 13 00       	call   0x1402fa284
1401c7306:	8b c6                	mov    %esi,%eax
1401c7308:	eb 02                	jmp    0x1401c730c
1401c730a:	33 c0                	xor    %eax,%eax
1401c730c:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
1401c7313:	41 5f                	pop    %r15
1401c7315:	41 5e                	pop    %r14
1401c7317:	41 5d                	pop    %r13
1401c7319:	5f                   	pop    %rdi
1401c731a:	5e                   	pop    %rsi
1401c731b:	5b                   	pop    %rbx
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