18005d315:	48 83 7b 10 00       	cmpq   $0x0,0x10(%rbx)
18005d31a:	75 71                	jne    0x18005d38d
18005d31c:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d320:	48 8d 4d 90          	lea    -0x70(%rbp),%rcx
18005d324:	45 33 c0             	xor    %r8d,%r8d
18005d327:	8b 70 7c             	mov    0x7c(%rax),%esi
18005d32a:	44 8b ce             	mov    %esi,%r9d
18005d32d:	41 8d 50 03          	lea    0x3(%r8),%edx
18005d331:	e8 66 98 fe ff       	call   0x180046b9c
18005d336:	8b f8                	mov    %eax,%edi
18005d338:	85 c0                	test   %eax,%eax
18005d33a:	78 51                	js     0x18005d38d
18005d33c:	48 8b 4d 98          	mov    -0x68(%rbp),%rcx
18005d340:	44 8b c6             	mov    %esi,%r8d
18005d343:	33 d2                	xor    %edx,%edx
18005d345:	e8 36 89 0d 00       	call   0x180135c80
18005d34a:	8a 4b 2b             	mov    0x2b(%rbx),%cl
18005d34d:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
18005d352:	81 4c 24 6c 04 00 00 	orl    $0x20000004,0x6c(%rsp)
18005d359:	20
18005d35a:	b8 01 00 00 00       	mov    $0x1,%eax
18005d35f:	48 83 65 a8 00       	andq   $0x0,-0x58(%rbp)
18005d364:	41 b0 0a             	mov    $0xa,%r8b
18005d367:	83 65 b4 00          	andl   $0x0,-0x4c(%rbp)
18005d36b:	d3 e0                	shl    %cl,%eax
18005d36d:	48 8b cb             	mov    %rbx,%rcx
18005d370:	ff c8                	dec    %eax
18005d372:	89 75 b0             	mov    %esi,-0x50(%rbp)
18005d375:	89 45 bc             	mov    %eax,-0x44(%rbp)
18005d378:	c6 45 c8 04          	movb   $0x4,-0x38(%rbp)
18005d37c:	c6 45 ca 06          	movb   $0x6,-0x36(%rbp)
18005d380:	48 89 5d 00          	mov    %rbx,0x0(%rbp)
18005d384:	48 89 5d 08          	mov    %rbx,0x8(%rbp)
18005d388:	e8 83 a1 fe ff       	call   0x180047510
18005d38d:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
18005d392:	e8 a1 9c fe ff       	call   0x180047038
18005d397:	4c 8d 9c 24 10 01 00 	lea    0x110(%rsp),%r11
18005d39e:	00
18005d39f:	8b c7                	mov    %edi,%eax
18005d3a1:	49 8b 5b 20          	mov    0x20(%r11),%rbx
18005d3a5:	49 8b 73 28          	mov    0x28(%r11),%rsi
18005d3a9:	49 8b 7b 30          	mov    0x30(%r11),%rdi
18005d3ad:	4d 8b 6b 38          	mov    0x38(%r11),%r13
18005d3b1:	49 8b e3             	mov    %r11,%rsp
18005d3b4:	41 5f                	pop    %r15
18005d3b6:	41 5e                	pop    %r14
18005d3b8:	5d                   	pop    %rbp
18005d3b9:	c3                   	ret
18005d3ba:	cc                   	int3
18005d3bb:	cc                   	int3
18005d3bc:	4c 8b 51 08          	mov    0x8(%rcx),%r10
18005d3c0:	45 8b c8             	mov    %r8d,%r9d
18005d3c3:	4c 8b 41 20          	mov    0x20(%rcx),%r8
18005d3c7:	4d 85 c0             	test   %r8,%r8
18005d3ca:	49 8d 42 30          	lea    0x30(%r10),%rax
18005d3ce:	49 8d 48 38          	lea    0x38(%r8),%rcx
18005d3d2:	48 0f 44 c8          	cmove  %rax,%rcx
18005d3d6:	83 79 18 01          	cmpl   $0x1,0x18(%rcx)
18005d3da:	75 2c                	jne    0x18005d408
18005d3dc:	4d 85 c0             	test   %r8,%r8
18005d3df:	49 8d 42 50          	lea    0x50(%r10),%rax
18005d3e3:	49 8d 48 58          	lea    0x58(%r8),%rcx
18005d3e7:	48 0f 44 c8          	cmove  %rax,%rcx
18005d3eb:	49 8b 82 58 01 00 00 	mov    0x158(%r10),%rax
18005d3f2:	8b 40 28             	mov    0x28(%rax),%eax
18005d3f5:	44 8b 41 10          	mov    0x10(%rcx),%r8d
18005d3f9:	48 0f af c2          	imul   %rdx,%rax
18005d3fd:	33 d2                	xor    %edx,%edx
18005d3ff:	49 03 c1             	add    %r9,%rax
18005d402:	49 f7 f0             	div    %r8
18005d405:	4c 8b ca             	mov    %rdx,%r9
18005d408:	41 8b c1             	mov    %r9d,%eax
18005d40b:	c3                   	ret
18005d40c:	cc                   	int3
18005d40d:	cc                   	int3
18005d40e:	cc                   	int3
18005d40f:	cc                   	int3
18005d410:	4c 8b 51 08          	mov    0x8(%rcx),%r10
18005d414:	45 8b c8             	mov    %r8d,%r9d
18005d417:	4c 8b 41 20          	mov    0x20(%rcx),%r8
18005d41b:	4d 85 c0             	test   %r8,%r8
18005d41e:	49 8d 42 30          	lea    0x30(%r10),%rax
18005d422:	49 8d 48 38          	lea    0x38(%r8),%rcx
18005d426:	48 0f 44 c8          	cmove  %rax,%rcx
18005d42a:	83 79 18 01          	cmpl   $0x1,0x18(%rcx)
18005d42e:	75 2c                	jne    0x18005d45c
18005d430:	4d 85 c0             	test   %r8,%r8
18005d433:	49 8d 42 50          	lea    0x50(%r10),%rax
18005d437:	49 8d 48 58          	lea    0x58(%r8),%rcx
18005d43b:	48 0f 44 c8          	cmove  %rax,%rcx
18005d43f:	49 8b 82 58 01 00 00 	mov    0x158(%r10),%rax
18005d446:	8b 40 2c             	mov    0x2c(%rax),%eax
18005d449:	44 8b 41 10          	mov    0x10(%rcx),%r8d
18005d44d:	48 0f af c2          	imul   %rdx,%rax
18005d451:	33 d2                	xor    %edx,%edx
18005d453:	49 03 c1             	add    %r9,%rax
18005d456:	49 f7 f0             	div    %r8
18005d459:	4c 8b ca             	mov    %rdx,%r9
18005d45c:	41 8b c1             	mov    %r9d,%eax
18005d45f:	c3                   	ret
18005d460:	cc                   	int3
18005d461:	cc                   	int3
18005d462:	cc                   	int3
18005d463:	cc                   	int3
18005d464:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18005d469:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18005d46e:	57                   	push   %rdi
18005d46f:	48 83 ec 20          	sub    $0x20,%rsp
18005d473:	48 8b c2             	mov    %rdx,%rax
18005d476:	48 8b d9             	mov    %rcx,%rbx
18005d479:	8a 49 2a             	mov    0x2a(%rcx),%cl
18005d47c:	48 8b f2             	mov    %rdx,%rsi
18005d47f:	48 d3 e8             	shr    %cl,%rax
18005d482:	33 d2                	xor    %edx,%edx
18005d484:	49 8b f8             	mov    %r8,%rdi
18005d487:	4c 8b 4b 08          	mov    0x8(%rbx),%r9
18005d48b:	4d 8b 91 58 01 00 00 	mov    0x158(%r9),%r10
18005d492:	45 8b 4a 28          	mov    0x28(%r10),%r9d
18005d496:	49 f7 f1             	div    %r9
18005d499:	4c 8b d8             	mov    %rax,%r11
18005d49c:	4d 85 c0             	test   %r8,%r8
18005d49f:	74 13                	je     0x18005d4b4
18005d4a1:	44 8b c2             	mov    %edx,%r8d
18005d4a4:	48 8b cb             	mov    %rbx,%rcx
18005d4a7:	48 8b d0             	mov    %rax,%rdx
18005d4aa:	e8 0d ff ff ff       	call   0x18005d3bc
18005d4af:	89 07                	mov    %eax,(%rdi)
18005d4b1:	8a 4b 2a             	mov    0x2a(%rbx),%cl
18005d4b4:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18005d4b9:	b8 01 00 00 00       	mov    $0x1,%eax
18005d4be:	0f b6 c9             	movzbl %cl,%ecx
18005d4c1:	48 d3 e0             	shl    %cl,%rax
18005d4c4:	ff c8                	dec    %eax
18005d4c6:	49 d3 e3             	shl    %cl,%r11
18005d4c9:	48 23 c6             	and    %rsi,%rax
18005d4cc:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18005d4d1:	49 03 c3             	add    %r11,%rax
18005d4d4:	48 83 c4 20          	add    $0x20,%rsp
18005d4d8:	5f                   	pop    %rdi
18005d4d9:	c3                   	ret
18005d4da:	cc                   	int3
18005d4db:	cc                   	int3
18005d4dc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18005d4e1:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18005d4e6:	57                   	push   %rdi
18005d4e7:	48 83 ec 20          	sub    $0x20,%rsp
18005d4eb:	0f b6 79 2a          	movzbl 0x2a(%rcx),%edi
18005d4ef:	48 8b d9             	mov    %rcx,%rbx
18005d4f2:	4d 8b d8             	mov    %r8,%r11
18005d4f5:	8b cf                	mov    %edi,%ecx
18005d4f7:	49 d3 eb             	shr    %cl,%r11
18005d4fa:	49 8b f0             	mov    %r8,%rsi
18005d4fd:	44 8b c2             	mov    %edx,%r8d
18005d500:	48 8b cb             	mov    %rbx,%rcx
18005d503:	49 8b d3             	mov    %r11,%rdx
18005d506:	e8 05 ff ff ff       	call   0x18005d410
18005d50b:	44 8b c8             	mov    %eax,%r9d
18005d50e:	8b cf                	mov    %edi,%ecx
18005d510:	48 8b 43 08          	mov    0x8(%rbx),%rax
18005d514:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18005d519:	48 8b 90 58 01 00 00 	mov    0x158(%rax),%rdx
18005d520:	8b 42 28             	mov    0x28(%rdx),%eax
18005d523:	ba 01 00 00 00       	mov    $0x1,%edx
18005d528:	49 0f af c3          	imul   %r11,%rax
18005d52c:	48 d3 e2             	shl    %cl,%rdx
18005d52f:	49 03 c1             	add    %r9,%rax
18005d532:	48 d3 e0             	shl    %cl,%rax
18005d535:	8d 4a ff             	lea    -0x1(%rdx),%ecx
18005d538:	48 23 ce             	and    %rsi,%rcx
18005d53b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18005d540:	48 03 c1             	add    %rcx,%rax
18005d543:	48 83 c4 20          	add    $0x20,%rsp
18005d547:	5f                   	pop    %rdi
18005d548:	c3                   	ret
18005d549:	cc                   	int3
18005d54a:	cc                   	int3
18005d54b:	cc                   	int3
18005d54c:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
18005d551:	89 54 24 10          	mov    %edx,0x10(%rsp)
18005d555:	55                   	push   %rbp
18005d556:	56                   	push   %rsi
18005d557:	57                   	push   %rdi
18005d558:	41 54                	push   %r12
18005d55a:	41 55                	push   %r13
18005d55c:	41 56                	push   %r14
18005d55e:	41 57                	push   %r15
18005d560:	48 83 ec 20          	sub    $0x20,%rsp
18005d564:	48 8b 79 20          	mov    0x20(%rcx),%rdi
18005d568:	33 db                	xor    %ebx,%ebx
18005d56a:	45 8b e8             	mov    %r8d,%r13d
18005d56d:	48 8b f1             	mov    %rcx,%rsi
18005d570:	48 85 ff             	test   %rdi,%rdi
18005d573:	74 06                	je     0x18005d57b
18005d575:	48 8d 47 58          	lea    0x58(%rdi),%rax
18005d579:	eb 08                	jmp    0x18005d583
18005d57b:	48 8b 41 08          	mov    0x8(%rcx),%rax
18005d57f:	48 83 c0 50          	add    $0x50,%rax
18005d583:	44 8b 78 10          	mov    0x10(%rax),%r15d
18005d587:	8b eb                	mov    %ebx,%ebp
18005d589:	41 8b cf             	mov    %r15d,%ecx
18005d58c:	b8 01 00 00 00       	mov    $0x1,%eax
18005d591:	d3 e0                	shl    %cl,%eax
18005d593:	ff c8                	dec    %eax
18005d595:	89 44 24 60          	mov    %eax,0x60(%rsp)
18005d599:	48 85 ff             	test   %rdi,%rdi
18005d59c:	74 06                	je     0x18005d5a4
18005d59e:	48 8d 47 58          	lea    0x58(%rdi),%rax
18005d5a2:	eb 08                	jmp    0x18005d5ac
18005d5a4:	48 8b 46 08          	mov    0x8(%rsi),%rax
18005d5a8:	48 83 c0 50          	add    $0x50,%rax
18005d5ac:	3b 68 10             	cmp    0x10(%rax),%ebp
18005d5af:	73 76                	jae    0x18005d627
18005d5b1:	44 0f b6 66 2b       	movzbl 0x2b(%rsi),%r12d
18005d5b6:	44 8b f3             	mov    %ebx,%r14d
18005d5b9:	45 85 e4             	test   %r12d,%r12d
18005d5bc:	74 5e                	je     0x18005d61c
18005d5be:	3b ea                	cmp    %edx,%ebp
18005d5c0:	75 05                	jne    0x18005d5c7
18005d5c2:	45 3b f5             	cmp    %r13d,%r14d
18005d5c5:	74 40                	je     0x18005d607
18005d5c7:	45 8b c6             	mov    %r14d,%r8d
18005d5ca:	8b d5                	mov    %ebp,%edx
18005d5cc:	48 8b ce             	mov    %rsi,%rcx
18005d5cf:	e8 10 3f ff ff       	call   0x1800514e4
18005d5d4:	84 c0                	test   %al,%al
18005d5d6:	74 2b                	je     0x18005d603
18005d5d8:	8b d5                	mov    %ebp,%edx
18005d5da:	48 8b ce             	mov    %rsi,%rcx
18005d5dd:	e8 6e 3d ff ff       	call   0x180051350
18005d5e2:	48 8b d0             	mov    %rax,%rdx
18005d5e5:	e8 d2 3d ff ff       	call   0x1800513bc
18005d5ea:	48 39 98 a0 01 00 00 	cmp    %rbx,0x1a0(%rax)
18005d5f1:	76 10                	jbe    0x18005d603
18005d5f3:	38 98 f8 01 00 00    	cmp    %bl,0x1f8(%rax)
18005d5f9:	75 08                	jne    0x18005d603
18005d5fb:	38 98 f6 01 00 00    	cmp    %bl,0x1f6(%rax)
18005d601:	74 0e                	je     0x18005d611
18005d603:	8b 54 24 68          	mov    0x68(%rsp),%edx
18005d607:	41 ff c6             	inc    %r14d
18005d60a:	45 3b f4             	cmp    %r12d,%r14d
18005d60d:	73 0d                	jae    0x18005d61c
18005d60f:	eb ad                	jmp    0x18005d5be
18005d611:	41 ff cf             	dec    %r15d
18005d614:	48 8d 44 24 60       	lea    0x60(%rsp),%rax
18005d619:	0f b3 28             	btr    %ebp,(%rax)
18005d61c:	8b 54 24 68          	mov    0x68(%rsp),%edx
18005d620:	ff c5                	inc    %ebp
18005d622:	e9 72 ff ff ff       	jmp    0x18005d599
18005d627:	48 85 ff             	test   %rdi,%rdi
18005d62a:	74 06                	je     0x18005d632
18005d62c:	48 8d 47 38          	lea    0x38(%rdi),%rax
18005d630:	eb 08                	jmp    0x18005d63a
18005d632:	48 8b 46 08          	mov    0x8(%rsi),%rax
18005d636:	48 83 c0 30          	add    $0x30,%rax
18005d63a:	83 78 18 01          	cmpl   $0x1,0x18(%rax)
18005d63e:	74 1e                	je     0x18005d65e
18005d640:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
18005d644:	45 33 c9             	xor    %r9d,%r9d
18005d647:	8b 54 24 60          	mov    0x60(%rsp),%edx
18005d64b:	44 8b c2             	mov    %edx,%r8d
18005d64e:	48 8b 89 58 01 00 00 	mov    0x158(%rcx),%rcx
18005d655:	e8 d2 76 fe ff       	call   0x180044d2c
18005d65a:	8b d8                	mov    %eax,%ebx
18005d65c:	eb 1f                	jmp    0x18005d67d
18005d65e:	48 85 ff             	test   %rdi,%rdi
18005d661:	74 06                	je     0x18005d669
18005d663:	48 83 c7 58          	add    $0x58,%rdi
18005d667:	eb 08                	jmp    0x18005d671
18005d669:	48 8b 7e 08          	mov    0x8(%rsi),%rdi
18005d66d:	48 83 c7 50          	add    $0x50,%rdi
18005d671:	44 3b 7f 04          	cmp    0x4(%rdi),%r15d
18005d675:	b8 0b 00 e7 c0       	mov    $0xc0e7000b,%eax
18005d67a:	0f 47 d8             	cmova  %eax,%ebx
18005d67d:	c1 eb 1f             	shr    $0x1f,%ebx
18005d680:	80 f3 01             	xor    $0x1,%bl
18005d683:	8a c3                	mov    %bl,%al
18005d685:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
18005d68a:	48 83 c4 20          	add    $0x20,%rsp
18005d68e:	41 5f                	pop    %r15
18005d690:	41 5e                	pop    %r14
18005d692:	41 5d                	pop    %r13
18005d694:	41 5c                	pop    %r12
18005d696:	5f                   	pop    %rdi
18005d697:	5e                   	pop    %rsi
18005d698:	5d                   	pop    %rbp
18005d699:	c3                   	ret
18005d69a:	cc                   	int3
18005d69b:	cc                   	int3
18005d69c:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
18005d6a1:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
18005d6a6:	56                   	push   %rsi
18005d6a7:	57                   	push   %rdi
18005d6a8:	41 56                	push   %r14
18005d6aa:	48 83 ec 20          	sub    $0x20,%rsp
18005d6ae:	4c 8b 51 20          	mov    0x20(%rcx),%r10
18005d6b2:	45 33 c9             	xor    %r9d,%r9d
18005d6b5:	41 8b e8             	mov    %r8d,%ebp
18005d6b8:	44 8b f2             	mov    %edx,%r14d
18005d6bb:	4c 8b d9             	mov    %rcx,%r11
18005d6be:	4d 85 d2             	test   %r10,%r10
18005d6c1:	74 06                	je     0x18005d6c9
18005d6c3:	49 8d 42 58          	lea    0x58(%r10),%rax
18005d6c7:	eb 08                	jmp    0x18005d6d1
18005d6c9:	48 8b 41 08          	mov    0x8(%rcx),%rax
18005d6cd:	48 83 c0 50          	add    $0x50,%rax
18005d6d1:	8b 70 10             	mov    0x10(%rax),%esi
18005d6d4:	41 8b d9             	mov    %r9d,%ebx
18005d6d7:	8b ce                	mov    %esi,%ecx
18005d6d9:	b8 01 00 00 00       	mov    $0x1,%eax
18005d6de:	d3 e0                	shl    %cl,%eax
18005d6e0:	ff c8                	dec    %eax
18005d6e2:	89 44 24 40          	mov    %eax,0x40(%rsp)
18005d6e6:	4d 85 d2             	test   %r10,%r10
18005d6e9:	74 06                	je     0x18005d6f1
18005d6eb:	49 8d 42 58          	lea    0x58(%r10),%rax
18005d6ef:	eb 08                	jmp    0x18005d6f9
18005d6f1:	49 8b 43 08          	mov    0x8(%r11),%rax
18005d6f5:	48 83 c0 50          	add    $0x50,%rax
18005d6f9:	3b 58 10             	cmp    0x10(%rax),%ebx
18005d6fc:	73 3c                	jae    0x18005d73a
18005d6fe:	41 0f b6 7b 2b       	movzbl 0x2b(%r11),%edi
18005d703:	45 8b c1             	mov    %r9d,%r8d
18005d706:	85 ff                	test   %edi,%edi
18005d708:	74 2c                	je     0x18005d736
18005d70a:	41 3b de             	cmp    %r14d,%ebx
18005d70d:	75 05                	jne    0x18005d714
18005d70f:	44 3b c5             	cmp    %ebp,%r8d
18005d712:	74 0e                	je     0x18005d722
18005d714:	8b d3                	mov    %ebx,%edx
18005d716:	49 8b cb             	mov    %r11,%rcx
18005d719:	e8 c6 3d ff ff       	call   0x1800514e4
18005d71e:	84 c0                	test   %al,%al
18005d720:	75 0a                	jne    0x18005d72c
18005d722:	41 ff c0             	inc    %r8d
18005d725:	44 3b c7             	cmp    %edi,%r8d
18005d728:	72 e0                	jb     0x18005d70a
18005d72a:	eb 0a                	jmp    0x18005d736
18005d72c:	ff ce                	dec    %esi
18005d72e:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
18005d733:	0f b3 18             	btr    %ebx,(%rax)
18005d736:	ff c3                	inc    %ebx
18005d738:	eb ac                	jmp    0x18005d6e6
18005d73a:	4d 85 d2             	test   %r10,%r10
18005d73d:	74 06                	je     0x18005d745
18005d73f:	49 8d 42 38          	lea    0x38(%r10),%rax
18005d743:	eb 08                	jmp    0x18005d74d
18005d745:	49 8b 43 08          	mov    0x8(%r11),%rax
18005d749:	48 83 c0 30          	add    $0x30,%rax
18005d74d:	83 78 18 01          	cmpl   $0x1,0x18(%rax)
18005d751:	74 1c                	je     0x18005d76f