180054340:	48 85 db             	test   %rbx,%rbx
180054343:	74 13                	je     0x180054358
180054345:	48 8b 03             	mov    (%rbx),%rax
180054348:	ba 01 00 00 00       	mov    $0x1,%edx
18005434d:	48 8b cb             	mov    %rbx,%rcx
180054350:	48 8b 00             	mov    (%rax),%rax
180054353:	ff d0                	call   *%rax
180054355:	0f 1f 00             	nopl   (%rax)
180054358:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
18005435d:	8b c7                	mov    %edi,%eax
18005435f:	49 8b 5b 30          	mov    0x30(%r11),%rbx
180054363:	49 8b 6b 38          	mov    0x38(%r11),%rbp
180054367:	49 8b 73 48          	mov    0x48(%r11),%rsi
18005436b:	49 8b e3             	mov    %r11,%rsp
18005436e:	41 5f                	pop    %r15
180054370:	41 5e                	pop    %r14
180054372:	41 5d                	pop    %r13
180054374:	41 5c                	pop    %r12
180054376:	5f                   	pop    %rdi
180054377:	c3                   	ret
180054378:	cc                   	int3
180054379:	cc                   	int3
18005437a:	cc                   	int3
18005437b:	cc                   	int3
18005437c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180054381:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180054386:	57                   	push   %rdi
180054387:	48 83 ec 20          	sub    $0x20,%rsp
18005438b:	8b ba a0 00 00 00    	mov    0xa0(%rdx),%edi
180054391:	48 8b da             	mov    %rdx,%rbx
180054394:	0f b6 92 9a 00 00 00 	movzbl 0x9a(%rdx),%edx
18005439b:	48 8b f1             	mov    %rcx,%rsi
18005439e:	83 ea 01             	sub    $0x1,%edx
1800543a1:	74 24                	je     0x1800543c7
1800543a3:	83 ea 03             	sub    $0x3,%edx
1800543a6:	74 11                	je     0x1800543b9
1800543a8:	83 fa 04             	cmp    $0x4,%edx
1800543ab:	75 5b                	jne    0x180054408
1800543ad:	48 8b d3             	mov    %rbx,%rdx
1800543b0:	e8 83 00 00 00       	call   0x180054438
1800543b5:	8b f8                	mov    %eax,%edi
1800543b7:	eb 4f                	jmp    0x180054408
1800543b9:	c6 83 9a 00 00 00 01 	movb   $0x1,0x9a(%rbx)
1800543c0:	bf 2d 02 00 c0       	mov    $0xc000022d,%edi
1800543c5:	eb 5d                	jmp    0x180054424
1800543c7:	8b bb a0 00 00 00    	mov    0xa0(%rbx),%edi
1800543cd:	f7 43 3c 00 00 00 10 	testl  $0x10000000,0x3c(%rbx)
1800543d4:	75 08                	jne    0x1800543de
1800543d6:	48 8b d3             	mov    %rbx,%rdx
1800543d9:	e8 da df ff ff       	call   0x1800523b8
1800543de:	85 ff                	test   %edi,%edi
1800543e0:	78 42                	js     0x180054424
1800543e2:	8b 83 f4 00 00 00    	mov    0xf4(%rbx),%eax
1800543e8:	89 83 80 00 00 00    	mov    %eax,0x80(%rbx)
1800543ee:	48 83 7e 40 00       	cmpq   $0x0,0x40(%rsi)
1800543f3:	74 13                	je     0x180054408
1800543f5:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
1800543f9:	48 8b d3             	mov    %rbx,%rdx
1800543fc:	48 8b 89 50 01 00 00 	mov    0x150(%rcx),%rcx
180054403:	e8 60 b0 fe ff       	call   0x18003f468
180054408:	85 ff                	test   %edi,%edi
18005440a:	78 18                	js     0x180054424
18005440c:	8b 43 3c             	mov    0x3c(%rbx),%eax
18005440f:	a8 01                	test   $0x1,%al
180054411:	74 11                	je     0x180054424
180054413:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
180054417:	8b 83 80 00 00 00    	mov    0x80(%rbx),%eax
18005441d:	48 01 81 a8 00 00 00 	add    %rax,0xa8(%rcx)
180054424:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180054429:	8b c7                	mov    %edi,%eax
18005442b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
180054430:	48 83 c4 20          	add    $0x20,%rsp
180054434:	5f                   	pop    %rdi
180054435:	c3                   	ret
180054436:	cc                   	int3
180054437:	cc                   	int3
180054438:	4c 8b dc             	mov    %rsp,%r11
18005443b:	49 89 5b 10          	mov    %rbx,0x10(%r11)
18005443f:	49 89 6b 18          	mov    %rbp,0x18(%r11)
180054443:	56                   	push   %rsi
180054444:	57                   	push   %rdi
180054445:	41 56                	push   %r14
180054447:	48 83 ec 70          	sub    $0x70,%rsp
18005444b:	48 8b 41 08          	mov    0x8(%rcx),%rax
18005444f:	0f 57 c0             	xorps  %xmm0,%xmm0
180054452:	44 8b b2 a0 00 00 00 	mov    0xa0(%rdx),%r14d
180054459:	33 ff                	xor    %edi,%edi
18005445b:	49 89 7b 08          	mov    %rdi,0x8(%r11)
18005445f:	48 8b f2             	mov    %rdx,%rsi
180054462:	48 8b e9             	mov    %rcx,%rbp
180054465:	48 8b 98 50 01 00 00 	mov    0x150(%rax),%rbx
18005446c:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
180054471:	0f 11 44 24 50       	movups %xmm0,0x50(%rsp)
180054476:	0f 11 44 24 60       	movups %xmm0,0x60(%rsp)
18005447b:	45 85 f6             	test   %r14d,%r14d
18005447e:	78 4d                	js     0x1800544cd
180054480:	4c 8b 42 78          	mov    0x78(%rdx),%r8
180054484:	49 8d 43 b8          	lea    -0x48(%r11),%rax
180054488:	49 89 43 a8          	mov    %rax,-0x58(%r11)
18005448c:	4d 8b c8             	mov    %r8,%r9
18005448f:	49 89 4b b8          	mov    %rcx,-0x48(%r11)
180054493:	48 8d 05 da 00 00 00 	lea    0xda(%rip),%rax        # 0x180054574
18005449a:	8a 49 2a             	mov    0x2a(%rcx),%cl
18005449d:	49 89 53 c0          	mov    %rdx,-0x40(%r11)
1800544a1:	83 4c 24 5c ff       	orl    $0xffffffff,0x5c(%rsp)
1800544a6:	49 89 43 a0          	mov    %rax,-0x60(%r11)
1800544aa:	8b 82 84 00 00 00    	mov    0x84(%rdx),%eax
1800544b0:	8b 92 80 00 00 00    	mov    0x80(%rdx),%edx
1800544b6:	49 d3 e9             	shr    %cl,%r9
1800544b9:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
1800544bd:	89 7c 24 60          	mov    %edi,0x60(%rsp)
1800544c1:	89 44 24 20          	mov    %eax,0x20(%rsp)
1800544c5:	e8 c6 6c 00 00       	call   0x18005b190
1800544ca:	44 8b f0             	mov    %eax,%r14d
1800544cd:	8b 8e f8 00 00 00    	mov    0xf8(%rsi),%ecx
1800544d3:	48 8b 96 e0 00 00 00 	mov    0xe0(%rsi),%rdx
1800544da:	48 8b 4c cb 28       	mov    0x28(%rbx,%rcx,8),%rcx
1800544df:	e8 d4 a8 ff ff       	call   0x18004edb8
1800544e4:	44 8b 96 f8 00 00 00 	mov    0xf8(%rsi),%r10d
1800544eb:	41 83 fa 02          	cmp    $0x2,%r10d
1800544ef:	74 22                	je     0x180054513
1800544f1:	4a 8b 4c d3 28       	mov    0x28(%rbx,%r10,8),%rcx
1800544f6:	e8 05 b5 ff ff       	call   0x18004fa00
1800544fb:	83 f8 19             	cmp    $0x19,%eax
1800544fe:	76 13                	jbe    0x180054513
180054500:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
180054504:	48 8b 01             	mov    (%rcx),%rax
180054507:	48 8b 80 80 00 00 00 	mov    0x80(%rax),%rax
18005450e:	ff d0                	call   *%rax
180054510:	0f 1f 00             	nopl   (%rax)
180054513:	40 38 bb f8 00 00 00 	cmp    %dil,0xf8(%rbx)
18005451a:	75 3f                	jne    0x18005455b
18005451c:	83 bb 10 01 00 00 64 	cmpl   $0x64,0x110(%rbx)
180054523:	73 36                	jae    0x18005455b
180054525:	48 8d 94 24 90 00 00 	lea    0x90(%rsp),%rdx
18005452c:	00
18005452d:	48 8b cb             	mov    %rbx,%rcx
180054530:	e8 03 b1 fe ff       	call   0x18003f638
180054535:	f0 48 0f c1 bb 08 01 	lock xadd %rdi,0x108(%rbx)
18005453c:	00 00
18005453e:	48 39 bc 24 90 00 00 	cmp    %rdi,0x90(%rsp)
180054545:	00
180054546:	72 13                	jb     0x18005455b
180054548:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
18005454c:	48 8b 01             	mov    (%rcx),%rax
18005454f:	48 8b 80 a8 00 00 00 	mov    0xa8(%rax),%rax
180054556:	ff d0                	call   *%rax
180054558:	0f 1f 00             	nopl   (%rax)
18005455b:	4c 8d 5c 24 70       	lea    0x70(%rsp),%r11
180054560:	41 8b c6             	mov    %r14d,%eax
180054563:	49 8b 5b 28          	mov    0x28(%r11),%rbx
180054567:	49 8b 6b 30          	mov    0x30(%r11),%rbp
18005456b:	49 8b e3             	mov    %r11,%rsp
18005456e:	41 5e                	pop    %r14
180054570:	5f                   	pop    %rdi
180054571:	5e                   	pop    %rsi
180054572:	c3                   	ret
180054573:	cc                   	int3
180054574:	48 8b c4             	mov    %rsp,%rax
180054577:	48 89 58 08          	mov    %rbx,0x8(%rax)
18005457b:	48 89 68 10          	mov    %rbp,0x10(%rax)
18005457f:	48 89 70 18          	mov    %rsi,0x18(%rax)
180054583:	44 89 48 20          	mov    %r9d,0x20(%rax)
180054587:	57                   	push   %rdi
180054588:	41 54                	push   %r12
18005458a:	41 55                	push   %r13
18005458c:	41 56                	push   %r14
18005458e:	41 57                	push   %r15
180054590:	48 83 ec 30          	sub    $0x30,%rsp
180054594:	4c 8b bc 24 88 00 00 	mov    0x88(%rsp),%r15
18005459b:	00
18005459c:	33 f6                	xor    %esi,%esi
18005459e:	4c 8b a4 24 80 00 00 	mov    0x80(%rsp),%r12
1800545a5:	00
1800545a6:	4d 8b f0             	mov    %r8,%r14
1800545a9:	45 8b d9             	mov    %r9d,%r11d
1800545ac:	4d 8b 2f             	mov    (%r15),%r13
1800545af:	49 8b 6f 08          	mov    0x8(%r15),%rbp
1800545b3:	83 e9 01             	sub    $0x1,%ecx
1800545b6:	0f 84 94 01 00 00    	je     0x180054750
1800545bc:	83 e9 01             	sub    $0x1,%ecx
1800545bf:	74 1a                	je     0x1800545db
1800545c1:	83 e9 01             	sub    $0x1,%ecx
1800545c4:	0f 84 86 01 00 00    	je     0x180054750
1800545ca:	83 f9 01             	cmp    $0x1,%ecx
1800545cd:	0f 85 cc 01 00 00    	jne    0x18005479f
1800545d3:	40 8a c6             	mov    %sil,%al
1800545d6:	e9 77 01 00 00       	jmp    0x180054752
1800545db:	41 8b 50 20          	mov    0x20(%r8),%edx
1800545df:	8d 42 ff             	lea    -0x1(%rdx),%eax
1800545e2:	83 f8 01             	cmp    $0x1,%eax
1800545e5:	0f 87 b4 01 00 00    	ja     0x18005479f
1800545eb:	49 8b 48 30          	mov    0x30(%r8),%rcx
1800545ef:	48 39 8d e0 00 00 00 	cmp    %rcx,0xe0(%rbp)
1800545f6:	72 db                	jb     0x1800545d3
1800545f8:	83 fa 02             	cmp    $0x2,%edx
1800545fb:	74 7d                	je     0x18005467a
1800545fd:	49 8b 45 08          	mov    0x8(%r13),%rax
180054601:	4d 8b c4             	mov    %r12,%r8
180054604:	4d 2b 46 28          	sub    0x28(%r14),%r8
180054608:	41 8b 7e 38          	mov    0x38(%r14),%edi
18005460c:	49 8b d8             	mov    %r8,%rbx
18005460f:	4c 8b 90 50 01 00 00 	mov    0x150(%rax),%r10
180054616:	49 8b c3             	mov    %r11,%rax
180054619:	49 8b 52 50          	mov    0x50(%r10),%rdx
18005461d:	ff 42 0c             	incl   0xc(%rdx)
180054620:	48 01 42 38          	add    %rax,0x38(%rdx)
180054624:	48 29 42 48          	sub    %rax,0x48(%rdx)
180054628:	4d 85 c0             	test   %r8,%r8
18005462b:	74 04                	je     0x180054631
18005462d:	49 8d 1c 38          	lea    (%r8,%rdi,1),%rbx
180054631:	4d 8b 52 08          	mov    0x8(%r10),%r10
180054635:	42 8d 04 1f          	lea    (%rdi,%r11,1),%eax
180054639:	4d 85 c0             	test   %r8,%r8
18005463c:	c7 44 24 28 05 00 00 	movl   $0x5,0x28(%rsp)
180054643:	00
180054644:	41 0f 45 c3          	cmovne %r11d,%eax
180054648:	33 d2                	xor    %edx,%edx
18005464a:	45 8b 4a 7c          	mov    0x7c(%r10),%r9d
18005464e:	41 f7 f1             	div    %r9d
180054651:	33 d2                	xor    %edx,%edx
180054653:	44 8b c0             	mov    %eax,%r8d
180054656:	48 8b c3             	mov    %rbx,%rax
180054659:	49 f7 f1             	div    %r9
18005465c:	44 89 44 24 20       	mov    %r8d,0x20(%rsp)
180054661:	49 8d 52 18          	lea    0x18(%r10),%rdx
180054665:	4c 8b c8             	mov    %rax,%r9
180054668:	45 33 c0             	xor    %r8d,%r8d
18005466b:	8b c1                	mov    %ecx,%eax
18005466d:	b9 37 08 00 00       	mov    $0x837,%ecx
180054672:	4c 03 c8             	add    %rax,%r9
180054675:	e8 fe 24 ff ff       	call   0x180046b78
18005467a:	49 8b 4e 10          	mov    0x10(%r14),%rcx
18005467e:	4d 8b c3             	mov    %r11,%r8
180054681:	41 8b 56 18          	mov    0x18(%r14),%edx
180054685:	49 3b cc             	cmp    %r12,%rcx
180054688:	0f 83 a8 00 00 00    	jae    0x180054736
18005468e:	49 8b c4             	mov    %r12,%rax
180054691:	48 2b c1             	sub    %rcx,%rax
180054694:	48 2b d0             	sub    %rax,%rdx
180054697:	41 89 46 18          	mov    %eax,0x18(%r14)
18005469b:	49 3b d3             	cmp    %r11,%rdx
18005469e:	0f 86 ac 00 00 00    	jbe    0x180054750
1800546a4:	41 8a 4d 2a          	mov    0x2a(%r13),%cl
1800546a8:	4d 03 c4             	add    %r12,%r8
1800546ab:	4c 8b 4d 78          	mov    0x78(%rbp),%r9
1800546af:	41 2b d3             	sub    %r11d,%edx
1800546b2:	8b 85 84 00 00 00    	mov    0x84(%rbp),%eax
1800546b8:	49 d3 e9             	shr    %cl,%r9
1800546bb:	49 8b 4d 40          	mov    0x40(%r13),%rcx
1800546bf:	89 44 24 20          	mov    %eax,0x20(%rsp)
1800546c3:	e8 78 69 00 00       	call   0x18005b040
1800546c8:	48 8b c8             	mov    %rax,%rcx
1800546cb:	48 85 c0             	test   %rax,%rax
1800546ce:	75 0a                	jne    0x1800546da
1800546d0:	be 9a 00 00 c0       	mov    $0xc000009a,%esi
1800546d5:	e9 28 02 00 00       	jmp    0x180054902
1800546da:	41 8b 7e 20          	mov    0x20(%r14),%edi
1800546de:	89 78 20             	mov    %edi,0x20(%rax)
1800546e1:	49 8b 46 28          	mov    0x28(%r14),%rax
1800546e5:	48 89 41 28          	mov    %rax,0x28(%rcx)
1800546e9:	49 8b 5e 30          	mov    0x30(%r14),%rbx
1800546ed:	48 89 59 30          	mov    %rbx,0x30(%rcx)
1800546f1:	41 8b 46 3c          	mov    0x3c(%r14),%eax
1800546f5:	89 41 3c             	mov    %eax,0x3c(%rcx)
1800546f8:	41 8b 46 38          	mov    0x38(%r14),%eax
1800546fc:	89 41 38             	mov    %eax,0x38(%rcx)
1800546ff:	41 8a 4d 2a          	mov    0x2a(%r13),%cl
180054703:	48 8b 55 78          	mov    0x78(%rbp),%rdx
180054707:	48 d3 ea             	shr    %cl,%rdx
18005470a:	49 8b 4d 40          	mov    0x40(%r13),%rcx
18005470e:	48 83 c1 10          	add    $0x10,%rcx
180054712:	e8 c5 f1 fe ff       	call   0x1800438dc
180054717:	83 ff 01             	cmp    $0x1,%edi
18005471a:	48 8b d0             	mov    %rax,%rdx
18005471d:	41 8a 47 20          	mov    0x20(%r15),%al
180054721:	4c 8b c3             	mov    %rbx,%r8
180054724:	41 0f 94 c1          	sete   %r9b
180054728:	88 44 24 20          	mov    %al,0x20(%rsp)
18005472c:	49 8b cd             	mov    %r13,%rcx
18005472f:	e8 2c e0 ff ff       	call   0x180052760
180054734:	eb 5b                	jmp    0x180054791
180054736:	4c 2b c1             	sub    %rcx,%r8
180054739:	4d 03 c4             	add    %r12,%r8
18005473c:	4c 3b c2             	cmp    %rdx,%r8
18005473f:	73 2f                	jae    0x180054770
180054741:	4a 8d 04 01          	lea    (%rcx,%r8,1),%rax
180054745:	41 2b d0             	sub    %r8d,%edx
180054748:	49 89 46 10          	mov    %rax,0x10(%r14)
18005474c:	41 89 56 18          	mov    %edx,0x18(%r14)
180054750:	b0 01                	mov    $0x1,%al
180054752:	45 8b 47 24          	mov    0x24(%r15),%r8d
180054756:	84 c0                	test   %al,%al
180054758:	74 4f                	je     0x1800547a9
18005475a:	45 85 c0             	test   %r8d,%r8d
18005475d:	75 04                	jne    0x180054763
18005475f:	4d 89 67 28          	mov    %r12,0x28(%r15)
180054763:	43 8d 04 18          	lea    (%r8,%r11,1),%eax
180054767:	41 89 47 24          	mov    %eax,0x24(%r15)
18005476b:	e9 92 01 00 00       	jmp    0x180054902
180054770:	49 8b 06             	mov    (%r14),%rax
180054773:	4c 39 70 08          	cmp    %r14,0x8(%rax)
180054777:	75 1f                	jne    0x180054798
180054779:	49 8b 4e 08          	mov    0x8(%r14),%rcx
18005477d:	4c 39 31             	cmp    %r14,(%rcx)
180054780:	75 16                	jne    0x180054798
180054782:	48 89 01             	mov    %rax,(%rcx)
180054785:	48 89 48 08          	mov    %rcx,0x8(%rax)
180054789:	49 8b ce             	mov    %r14,%rcx
18005478c:	e8 27 cf 00 00       	call   0x1800616b8
180054791:	44 8b 5c 24 78       	mov    0x78(%rsp),%r11d
180054796:	eb b8                	jmp    0x180054750
180054798:	b9 03 00 00 00       	mov    $0x3,%ecx
18005479d:	cd 29                	int    $0x29
18005479f:	be 0d 00 00 c0       	mov    $0xc000000d,%esi
1800547a4:	e9 59 01 00 00       	jmp    0x180054902
1800547a9:	45 85 c0             	test   %r8d,%r8d
1800547ac:	0f 84 48 01 00 00    	je     0x1800548fa
1800547b2:	49 8b 45 08          	mov    0x8(%r13),%rax
1800547b6:	4d 8b 5f 28          	mov    0x28(%r15),%r11
1800547ba:	4c 2b 9d e8 00 00 00 	sub    0xe8(%rbp),%r11
1800547c1:	8b bd fc 00 00 00    	mov    0xfc(%rbp),%edi
1800547c7:	44 8b cf             	mov    %edi,%r9d
1800547ca:	4c 8b 90 50 01 00 00 	mov    0x150(%rax),%r10
1800547d1:	4c 2b 5d 78          	sub    0x78(%rbp),%r11
1800547d5:	44 8b b5 f0 00 00 00 	mov    0xf0(%rbp),%r14d
1800547dc:	48 8b 8d e0 00 00 00 	mov    0xe0(%rbp),%rcx
1800547e3:	49 8b 52 50          	mov    0x50(%r10),%rdx
1800547e7:	41 83 e9 02          	sub    $0x2,%r9d
1800547eb:	74 1e                	je     0x18005480b
1800547ed:	41 83 e9 01          	sub    $0x1,%r9d
1800547f1:	74 0f                	je     0x180054802
1800547f3:	41 83 f9 01          	cmp    $0x1,%r9d
1800547f7:	75 18                	jne    0x180054811
1800547f9:	ff 42 08             	incl   0x8(%rdx)
1800547fc:	4c 01 42 30          	add    %r8,0x30(%rdx)
180054800:	eb 0f                	jmp    0x180054811
180054802:	ff 42 04             	incl   0x4(%rdx)
180054805:	4c 01 42 28          	add    %r8,0x28(%rdx)
180054809:	eb 06                	jmp    0x180054811
18005480b:	ff 02                	incl   (%rdx)
18005480d:	4c 01 42 20          	add    %r8,0x20(%rdx)
180054811:	4c 01 42 48          	add    %r8,0x48(%rdx)
180054815:	49 8b db             	mov    %r11,%rbx
180054818:	4d 85 db             	test   %r11,%r11
18005481b:	74 04                	je     0x180054821
18005481d:	4b 8d 1c 33          	lea    (%r11,%r14,1),%rbx
180054821:	4d 8b 52 08          	mov    0x8(%r10),%r10
180054825:	43 8d 04 06          	lea    (%r14,%r8,1),%eax
180054829:	4d 85 db             	test   %r11,%r11