180056120:	0f 83 24 01 00 00    	jae    0x18005624a
180056126:	8b eb                	mov    %ebx,%ebp
180056128:	38 5f 2b             	cmp    %bl,0x2b(%rdi)
18005612b:	76 1c                	jbe    0x180056149
18005612d:	4c 8b 4c 24 50       	mov    0x50(%rsp),%r9
180056132:	44 8b c5             	mov    %ebp,%r8d
180056135:	8b d6                	mov    %esi,%edx
180056137:	48 8b cf             	mov    %rdi,%rcx
18005613a:	e8 81 03 00 00       	call   0x1800564c0
18005613f:	0f b6 47 2b          	movzbl 0x2b(%rdi),%eax
180056143:	ff c5                	inc    %ebp
180056145:	3b e8                	cmp    %eax,%ebp
180056147:	72 e4                	jb     0x18005612d
180056149:	ff c6                	inc    %esi
18005614b:	eb b9                	jmp    0x180056106
18005614d:	4c 8b 74 24 50       	mov    0x50(%rsp),%r14
180056152:	41 38 1e             	cmp    %bl,(%r14)
180056155:	0f 85 ef 00 00 00    	jne    0x18005624a
18005615b:	8b f3                	mov    %ebx,%esi
18005615d:	48 8b 47 20          	mov    0x20(%rdi),%rax
180056161:	48 85 c0             	test   %rax,%rax
180056164:	74 06                	je     0x18005616c
180056166:	48 83 c0 58          	add    $0x58,%rax
18005616a:	eb 08                	jmp    0x180056174
18005616c:	48 8b 47 08          	mov    0x8(%rdi),%rax
180056170:	48 83 c0 50          	add    $0x50,%rax
180056174:	3b 70 10             	cmp    0x10(%rax),%esi
180056177:	0f 83 cd 00 00 00    	jae    0x18005624a
18005617d:	8b eb                	mov    %ebx,%ebp
18005617f:	38 5f 2b             	cmp    %bl,0x2b(%rdi)
180056182:	76 1e                	jbe    0x1800561a2
180056184:	45 33 c9             	xor    %r9d,%r9d
180056187:	44 8b c5             	mov    %ebp,%r8d
18005618a:	8b d6                	mov    %esi,%edx
18005618c:	48 8b cf             	mov    %rdi,%rcx
18005618f:	e8 2c 03 00 00       	call   0x1800564c0
180056194:	84 c0                	test   %al,%al
180056196:	75 0e                	jne    0x1800561a6
180056198:	0f b6 47 2b          	movzbl 0x2b(%rdi),%eax
18005619c:	ff c5                	inc    %ebp
18005619e:	3b e8                	cmp    %eax,%ebp
1800561a0:	72 e2                	jb     0x180056184
1800561a2:	ff c6                	inc    %esi
1800561a4:	eb b7                	jmp    0x18005615d
1800561a6:	41 c6 06 01          	movb   $0x1,(%r14)
1800561aa:	e9 9b 00 00 00       	jmp    0x18005624a
1800561af:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
1800561b4:	e8 5f 24 00 00       	call   0x180058618
1800561b9:	e9 8a 00 00 00       	jmp    0x180056248
1800561be:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
1800561c3:	e8 6c 23 00 00       	call   0x180058534
1800561c8:	eb 7e                	jmp    0x180056248
1800561ca:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
1800561cf:	48 8b 49 10          	mov    0x10(%rcx),%rcx
1800561d3:	48 89 08             	mov    %rcx,(%rax)
1800561d6:	48 8b cf             	mov    %rdi,%rcx
1800561d9:	48 8b 07             	mov    (%rdi),%rax
1800561dc:	48 8b 80 98 00 00 00 	mov    0x98(%rax),%rax
1800561e3:	ff d0                	call   *%rax
1800561e5:	0f 1f 00             	nopl   (%rax)
1800561e8:	eb 5e                	jmp    0x180056248
1800561ea:	48 39 59 40          	cmp    %rbx,0x40(%rcx)
1800561ee:	74 5a                	je     0x18005624a
1800561f0:	0f b7 51 28          	movzwl 0x28(%rcx),%edx
1800561f4:	f6 c2 08             	test   $0x8,%dl
1800561f7:	75 51                	jne    0x18005624a
1800561f9:	48 8b 41 08          	mov    0x8(%rcx),%rax
1800561fd:	48 8b 88 50 01 00 00 	mov    0x150(%rax),%rcx
180056204:	39 99 24 01 00 00    	cmp    %ebx,0x124(%rcx)
18005620a:	7e 07                	jle    0x180056213
18005620c:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
180056211:	eb 17                	jmp    0x18005622a
180056213:	48 81 fe 00 00 04 00 	cmp    $0x40000,%rsi
18005621a:	72 f0                	jb     0x18005620c
18005621c:	f6 c2 01             	test   $0x1,%dl
18005621f:	74 29                	je     0x18005624a
180056221:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
180056226:	38 18                	cmp    %bl,(%rax)
180056228:	74 20                	je     0x18005624a
18005622a:	c7 40 04 02 00 00 00 	movl   $0x2,0x4(%rax)
180056231:	bb 02 00 e7 00       	mov    $0xe70002,%ebx
180056236:	eb 12                	jmp    0x18005624a
180056238:	4c 8b 4c 24 50       	mov    0x50(%rsp),%r9
18005623d:	4c 8b c6             	mov    %rsi,%r8
180056240:	49 8b d2             	mov    %r10,%rdx
180056243:	e8 6c 28 00 00       	call   0x180058ab4
180056248:	8b d8                	mov    %eax,%ebx
18005624a:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18005624f:	8b c3                	mov    %ebx,%eax
180056251:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180056256:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18005625b:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
180056260:	48 83 c4 20          	add    $0x20,%rsp
180056264:	41 5e                	pop    %r14
180056266:	c3                   	ret
180056267:	cc                   	int3
180056268:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18005626d:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
180056272:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
180056277:	57                   	push   %rdi
180056278:	41 54                	push   %r12
18005627a:	41 55                	push   %r13
18005627c:	41 56                	push   %r14
18005627e:	41 57                	push   %r15
180056280:	48 83 ec 30          	sub    $0x30,%rsp
180056284:	4c 8b 7a 08          	mov    0x8(%rdx),%r15
180056288:	48 8b f9             	mov    %rcx,%rdi
18005628b:	8b 0a                	mov    (%rdx),%ecx
18005628d:	33 db                	xor    %ebx,%ebx
18005628f:	4c 8b f2             	mov    %rdx,%r14
180056292:	83 e9 02             	sub    $0x2,%ecx
180056295:	0f 84 29 01 00 00    	je     0x1800563c4
18005629b:	83 e9 02             	sub    $0x2,%ecx
18005629e:	74 0f                	je     0x1800562af
1800562a0:	83 e9 01             	sub    $0x1,%ecx
1800562a3:	74 2a                	je     0x1800562cf
1800562a5:	83 f9 01             	cmp    $0x1,%ecx
1800562a8:	74 05                	je     0x1800562af
1800562aa:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
1800562af:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
1800562b4:	8b c3                	mov    %ebx,%eax
1800562b6:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1800562bb:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
1800562c0:	48 83 c4 30          	add    $0x30,%rsp
1800562c4:	41 5f                	pop    %r15
1800562c6:	41 5e                	pop    %r14
1800562c8:	41 5d                	pop    %r13
1800562ca:	41 5c                	pop    %r12
1800562cc:	5f                   	pop    %rdi
1800562cd:	c3                   	ret
1800562ce:	cc                   	int3
1800562cf:	41 8b 87 a0 00 00 00 	mov    0xa0(%r15),%eax
1800562d6:	3d 1b 00 e7 c0       	cmp    $0xc0e7001b,%eax
1800562db:	0f 84 d4 00 00 00    	je     0x1800563b5
1800562e1:	41 8b 87 a0 00 00 00 	mov    0xa0(%r15),%eax
1800562e8:	3d 16 00 00 80       	cmp    $0x80000016,%eax
1800562ed:	0f 84 c2 00 00 00    	je     0x1800563b5
1800562f3:	48 8b 07             	mov    (%rdi),%rax
1800562f6:	48 8b cf             	mov    %rdi,%rcx
1800562f9:	48 8b 80 b8 00 00 00 	mov    0xb8(%rax),%rax
180056300:	ff d0                	call   *%rax
180056302:	0f 1f 00             	nopl   (%rax)
180056305:	84 c0                	test   %al,%al
180056307:	74 a6                	je     0x1800562af
180056309:	49 8b 47 70          	mov    0x70(%r15),%rax
18005630d:	8b eb                	mov    %ebx,%ebp
18005630f:	4c 8b 6f 20          	mov    0x20(%rdi),%r13
180056313:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
180056318:	4d 85 ed             	test   %r13,%r13
18005631b:	74 06                	je     0x180056323
18005631d:	49 8d 45 58          	lea    0x58(%r13),%rax
180056321:	eb 08                	jmp    0x18005632b
180056323:	48 8b 47 08          	mov    0x8(%rdi),%rax
180056327:	48 83 c0 50          	add    $0x50,%rax
18005632b:	3b 68 10             	cmp    0x10(%rax),%ebp
18005632e:	0f 83 7b ff ff ff    	jae    0x1800562af
180056334:	44 0f b6 67 2b       	movzbl 0x2b(%rdi),%r12d
180056339:	8b f3                	mov    %ebx,%esi
18005633b:	45 85 e4             	test   %r12d,%r12d
18005633e:	74 23                	je     0x180056363
180056340:	44 8b c6             	mov    %esi,%r8d
180056343:	8b d5                	mov    %ebp,%edx
180056345:	48 8b cf             	mov    %rdi,%rcx
180056348:	e8 03 b0 ff ff       	call   0x180051350
18005634d:	48 8b d0             	mov    %rax,%rdx
180056350:	e8 67 b0 ff ff       	call   0x1800513bc
180056355:	48 3b 44 24 68       	cmp    0x68(%rsp),%rax
18005635a:	74 0b                	je     0x180056367
18005635c:	ff c6                	inc    %esi
18005635e:	41 3b f4             	cmp    %r12d,%esi
180056361:	72 dd                	jb     0x180056340
180056363:	ff c5                	inc    %ebp
180056365:	eb b1                	jmp    0x180056318
180056367:	44 8b c6             	mov    %esi,%r8d
18005636a:	8b d5                	mov    %ebp,%edx
18005636c:	48 8b cf             	mov    %rdi,%rcx
18005636f:	e8 a0 b1 ff ff       	call   0x180051514
180056374:	84 c0                	test   %al,%al
180056376:	0f 84 33 ff ff ff    	je     0x1800562af
18005637c:	45 8b 8f a0 00 00 00 	mov    0xa0(%r15),%r9d
180056383:	8b d5                	mov    %ebp,%edx
180056385:	48 8b cf             	mov    %rdi,%rcx
180056388:	e8 b3 f4 ff ff       	call   0x180055840
18005638d:	41 8b 56 10          	mov    0x10(%r14),%edx
180056391:	8b c8                	mov    %eax,%ecx
180056393:	44 8b d8             	mov    %eax,%r11d
180056396:	e8 e5 9b fe ff       	call   0x18003ff80
18005639b:	84 c0                	test   %al,%al
18005639d:	74 04                	je     0x1800563a3
18005639f:	45 89 5e 10          	mov    %r11d,0x10(%r14)
1800563a3:	44 8b c6             	mov    %esi,%r8d
1800563a6:	8b d5                	mov    %ebp,%edx
1800563a8:	48 8b cf             	mov    %rdi,%rcx
1800563ab:	e8 2c f4 ff ff       	call   0x1800557dc
1800563b0:	e9 fa fe ff ff       	jmp    0x1800562af
1800563b5:	41 8b 87 a0 00 00 00 	mov    0xa0(%r15),%eax
1800563bc:	89 42 10             	mov    %eax,0x10(%rdx)
1800563bf:	e9 eb fe ff ff       	jmp    0x1800562af
1800563c4:	48 8b 07             	mov    (%rdi),%rax
1800563c7:	48 8b cf             	mov    %rdi,%rcx
1800563ca:	48 8b 80 b8 00 00 00 	mov    0xb8(%rax),%rax
1800563d1:	ff d0                	call   *%rax
1800563d3:	0f 1f 00             	nopl   (%rax)
1800563d6:	44 8a f8             	mov    %al,%r15b
1800563d9:	8b eb                	mov    %ebx,%ebp
1800563db:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
1800563df:	48 85 c9             	test   %rcx,%rcx
1800563e2:	74 06                	je     0x1800563ea
1800563e4:	48 83 c1 58          	add    $0x58,%rcx
1800563e8:	eb 08                	jmp    0x1800563f2
1800563ea:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1800563ee:	48 83 c1 50          	add    $0x50,%rcx
1800563f2:	3b 69 10             	cmp    0x10(%rcx),%ebp
1800563f5:	0f 83 b4 fe ff ff    	jae    0x1800562af
1800563fb:	8b f3                	mov    %ebx,%esi
1800563fd:	38 5f 2b             	cmp    %bl,0x2b(%rdi)
180056400:	76 5f                	jbe    0x180056461
180056402:	45 84 ff             	test   %r15b,%r15b
180056405:	74 50                	je     0x180056457
180056407:	44 8b c6             	mov    %esi,%r8d
18005640a:	8b d5                	mov    %ebp,%edx
18005640c:	48 8b cf             	mov    %rdi,%rcx
18005640f:	e8 3c af ff ff       	call   0x180051350
180056414:	8a 48 02             	mov    0x2(%rax),%cl
180056417:	80 e1 0f             	and    $0xf,%cl
18005641a:	80 f9 02             	cmp    $0x2,%cl
18005641d:	75 1d                	jne    0x18005643c
18005641f:	41 b1 03             	mov    $0x3,%r9b
180056422:	c6 44 24 20 01       	movb   $0x1,0x20(%rsp)
180056427:	48 8b cf             	mov    %rdi,%rcx
18005642a:	e8 dd f6 ff ff       	call   0x180055b0c
18005642f:	44 8b c6             	mov    %esi,%r8d
180056432:	8b d5                	mov    %ebp,%edx
180056434:	48 8b cf             	mov    %rdi,%rcx
180056437:	e8 a0 f3 ff ff       	call   0x1800557dc
18005643c:	44 8b c6             	mov    %esi,%r8d
18005643f:	8b d5                	mov    %ebp,%edx
180056441:	48 8b cf             	mov    %rdi,%rcx
180056444:	e8 07 af ff ff       	call   0x180051350
180056449:	f6 40 03 0f          	testb  $0xf,0x3(%rax)
18005644d:	74 08                	je     0x180056457
18005644f:	41 c7 46 10 13 00 e7 	movl   $0xc0e70013,0x10(%r14)
180056456:	c0
180056457:	0f b6 47 2b          	movzbl 0x2b(%rdi),%eax
18005645b:	ff c6                	inc    %esi
18005645d:	3b f0                	cmp    %eax,%esi
18005645f:	72 a1                	jb     0x180056402
180056461:	ff c5                	inc    %ebp
180056463:	e9 73 ff ff ff       	jmp    0x1800563db
180056468:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18005646d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180056472:	57                   	push   %rdi
180056473:	48 83 ec 20          	sub    $0x20,%rsp
180056477:	48 8b 02             	mov    (%rdx),%rax
18005647a:	48 8b d9             	mov    %rcx,%rbx
18005647d:	48 8b ca             	mov    %rdx,%rcx
180056480:	41 8b f8             	mov    %r8d,%edi
180056483:	48 8b 40 58          	mov    0x58(%rax),%rax
180056487:	ff d0                	call   *%rax
180056489:	0f 1f 00             	nopl   (%rax)
18005648c:	48 8b f0             	mov    %rax,%rsi
18005648f:	8b d7                	mov    %edi,%edx
180056491:	48 8b 03             	mov    (%rbx),%rax
180056494:	48 8b cb             	mov    %rbx,%rcx
180056497:	48 8b 80 c0 00 00 00 	mov    0xc0(%rax),%rax
18005649e:	ff d0                	call   *%rax
1800564a0:	0f 1f 00             	nopl   (%rax)
1800564a3:	39 06                	cmp    %eax,(%rsi)
1800564a5:	7f 06                	jg     0x1800564ad
1800564a7:	89 06                	mov    %eax,(%rsi)
1800564a9:	b0 01                	mov    $0x1,%al
1800564ab:	eb 02                	jmp    0x1800564af
1800564ad:	32 c0                	xor    %al,%al
1800564af:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800564b4:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1800564b9:	48 83 c4 20          	add    $0x20,%rsp
1800564bd:	5f                   	pop    %rdi
1800564be:	c3                   	ret
1800564bf:	cc                   	int3
1800564c0:	48 8b c4             	mov    %rsp,%rax
1800564c3:	48 89 58 08          	mov    %rbx,0x8(%rax)
1800564c7:	48 89 68 10          	mov    %rbp,0x10(%rax)
1800564cb:	48 89 70 18          	mov    %rsi,0x18(%rax)
1800564cf:	48 89 78 20          	mov    %rdi,0x20(%rax)
1800564d3:	41 56                	push   %r14
1800564d5:	48 83 ec 20          	sub    $0x20,%rsp
1800564d9:	49 8b d9             	mov    %r9,%rbx
1800564dc:	48 8b f9             	mov    %rcx,%rdi
1800564df:	40 32 ed             	xor    %bpl,%bpl
1800564e2:	e8 69 ae ff ff       	call   0x180051350
1800564e7:	48 8b f0             	mov    %rax,%rsi
1800564ea:	0f b7 00             	movzwl (%rax),%eax
1800564ed:	a8 10                	test   $0x10,%al
1800564ef:	0f 85 a1 00 00 00    	jne    0x180056596
1800564f5:	4c 8b 71 08          	mov    0x8(%rcx),%r14
1800564f9:	44 8b c2             	mov    %edx,%r8d
1800564fc:	48 8b 51 10          	mov    0x10(%rcx),%rdx
180056500:	49 8b ce             	mov    %r14,%rcx
180056503:	44 8b 4e 10          	mov    0x10(%rsi),%r9d
180056507:	e8 34 37 fe ff       	call   0x180039c40
18005650c:	48 85 c0             	test   %rax,%rax
18005650f:	74 29                	je     0x18005653a
180056511:	48 8b c8             	mov    %rax,%rcx
180056514:	e8 57 84 0e 00       	call   0x18013e970
180056519:	b2 02                	mov    $0x2,%dl
18005651b:	48 8b 48 10          	mov    0x10(%rax),%rcx
18005651f:	44 8b 40 3c          	mov    0x3c(%rax),%r8d
180056523:	48 8b 49 10          	mov    0x10(%rcx),%rcx
180056527:	e8 38 6a 0e 00       	call   0x18013cf64
18005652c:	48 8b c8             	mov    %rax,%rcx
18005652f:	e8 3c 84 0e 00       	call   0x18013e970
180056534:	83 78 44 05          	cmpl   $0x5,0x44(%rax)
180056538:	74 12                	je     0x18005654c
18005653a:	8a 4e 02             	mov    0x2(%rsi),%cl
18005653d:	80 e1 0f             	and    $0xf,%cl
180056540:	8d 41 ff             	lea    -0x1(%rcx),%eax
180056543:	3c 01                	cmp    $0x1,%al
180056545:	76 4f                	jbe    0x180056596
180056547:	80 f9 07             	cmp    $0x7,%cl
18005654a:	74 4a                	je     0x180056596
18005654c:	40 b5 01             	mov    $0x1,%bpl
18005654f:	48 85 db             	test   %rbx,%rbx
180056552:	74 42                	je     0x180056596
180056554:	8a 46 02             	mov    0x2(%rsi),%al
180056557:	24 0f                	and    $0xf,%al
180056559:	3c 08                	cmp    $0x8,%al
18005655b:	75 1a                	jne    0x180056577
18005655d:	48 8b 57 20          	mov    0x20(%rdi),%rdx
180056561:	49 8d 46 30          	lea    0x30(%r14),%rax
180056565:	48 85 d2             	test   %rdx,%rdx
180056568:	48 8d 4a 38          	lea    0x38(%rdx),%rcx
18005656c:	48 0f 44 c8          	cmove  %rax,%rcx
180056570:	48 8b 41 08          	mov    0x8(%rcx),%rax
180056574:	48 01 03             	add    %rax,(%rbx)
180056577:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
18005657b:	48 85 c9             	test   %rcx,%rcx
18005657e:	74 06                	je     0x180056586
180056580:	48 83 c1 38          	add    $0x38,%rcx
180056584:	eb 08                	jmp    0x18005658e
180056586:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
18005658a:	48 83 c1 30          	add    $0x30,%rcx
18005658e:	48 8b 49 08          	mov    0x8(%rcx),%rcx
180056592:	48 01 4b 08          	add    %rcx,0x8(%rbx)
180056596:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18005659b:	40 8a c5             	mov    %bpl,%al
18005659e:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1800565a3:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1800565a8:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
1800565ad:	48 83 c4 20          	add    $0x20,%rsp
1800565b1:	41 5e                	pop    %r14