1400381d4:	e8 f7 d6 fe ff       	call   0x1400258d0
1400381d9:	48 83 ce ff          	or     $0xffffffffffffffff,%rsi
1400381dd:	44 8b f0             	mov    %eax,%r14d
1400381e0:	3b c6                	cmp    %esi,%eax
1400381e2:	0f 84 8d 01 00 00    	je     0x140038375
1400381e8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1400381ef:	00
1400381f0:	4c 8b 4d 2f          	mov    0x2f(%rbp),%r9
1400381f4:	48 8b ce             	mov    %rsi,%rcx
1400381f7:	49 2b c9             	sub    %r9,%rcx
1400381fa:	48 83 f9 01          	cmp    $0x1,%rcx
1400381fe:	0f 86 5f 02 00 00    	jbe    0x140038463
140038204:	49 8d 59 01          	lea    0x1(%r9),%rbx
140038208:	48 83 fb fe          	cmp    $0xfffffffffffffffe,%rbx
14003820c:	0f 87 44 02 00 00    	ja     0x140038456
140038212:	48 8b 4d 37          	mov    0x37(%rbp),%rcx
140038216:	48 3b cb             	cmp    %rbx,%rcx
140038219:	0f 83 f2 00 00 00    	jae    0x140038311
14003821f:	4d 8b c1             	mov    %r9,%r8
140038222:	48 8d 4d 1f          	lea    0x1f(%rbp),%rcx
140038226:	48 8b d3             	mov    %rbx,%rdx
140038229:	e8 e2 da ff ff       	call   0x140035d10
14003822e:	48 8b 4d 37          	mov    0x37(%rbp),%rcx
140038232:	4c 8b 4d 2f          	mov    0x2f(%rbp),%r9
140038236:	48 85 db             	test   %rbx,%rbx
140038239:	74 2f                	je     0x14003826a
14003823b:	48 83 f9 10          	cmp    $0x10,%rcx
14003823f:	48 8d 45 1f          	lea    0x1f(%rbp),%rax
140038243:	48 0f 43 45 1f       	cmovae 0x1f(%rbp),%rax
140038248:	46 88 34 08          	mov    %r14b,(%rax,%r9,1)
14003824c:	48 8d 45 1f          	lea    0x1f(%rbp),%rax
140038250:	48 83 7d 37 10       	cmpq   $0x10,0x37(%rbp)
140038255:	48 89 5d 2f          	mov    %rbx,0x2f(%rbp)
140038259:	48 0f 43 45 1f       	cmovae 0x1f(%rbp),%rax
14003825e:	44 88 3c 18          	mov    %r15b,(%rax,%rbx,1)
140038262:	4c 8b 4d 2f          	mov    0x2f(%rbp),%r9
140038266:	48 8b 4d 37          	mov    0x37(%rbp),%rcx
14003826a:	48 83 f9 10          	cmp    $0x10,%rcx
14003826e:	4c 8d 55 17          	lea    0x17(%rbp),%r10
140038272:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140038276:	48 8d 55 1f          	lea    0x1f(%rbp),%rdx
14003827a:	48 0f 43 55 1f       	cmovae 0x1f(%rbp),%rdx
14003827f:	4c 8d 45 1f          	lea    0x1f(%rbp),%r8
140038283:	4c 0f 43 45 1f       	cmovae 0x1f(%rbp),%r8
140038288:	4c 03 ca             	add    %rdx,%r9
14003828b:	4c 89 54 24 38       	mov    %r10,0x38(%rsp)
140038290:	48 8d 57 74          	lea    0x74(%rdi),%rdx
140038294:	48 8b 01             	mov    (%rcx),%rax
140038297:	4c 8d 55 08          	lea    0x8(%rbp),%r10
14003829b:	4c 89 54 24 30       	mov    %r10,0x30(%rsp)
1400382a0:	4c 8d 55 07          	lea    0x7(%rbp),%r10
1400382a4:	4c 89 54 24 28       	mov    %r10,0x28(%rsp)
1400382a9:	4c 8d 55 0f          	lea    0xf(%rbp),%r10
1400382ad:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
1400382b2:	ff 50 30             	call   *0x30(%rax)
1400382b5:	85 c0                	test   %eax,%eax
1400382b7:	0f 88 b8 00 00 00    	js     0x140038375
1400382bd:	83 f8 01             	cmp    $0x1,%eax
1400382c0:	7e 71                	jle    0x140038333
1400382c2:	83 f8 03             	cmp    $0x3,%eax
1400382c5:	0f 85 aa 00 00 00    	jne    0x140038375
1400382cb:	48 83 7d 2f 01       	cmpq   $0x1,0x2f(%rbp)
1400382d0:	0f 82 87 00 00 00    	jb     0x14003835d
1400382d6:	48 83 7d 37 10       	cmpq   $0x10,0x37(%rbp)
1400382db:	48 8b 4d 1f          	mov    0x1f(%rbp),%rcx
1400382df:	0f 82 b0 00 00 00    	jb     0x140038395
1400382e5:	48 8b c1             	mov    %rcx,%rax
1400382e8:	48 85 c9             	test   %rcx,%rcx
1400382eb:	0f 85 a8 00 00 00    	jne    0x140038399
1400382f1:	88 45 07             	mov    %al,0x7(%rbp)
1400382f4:	e8 e3 8d fe ff       	call   0x1400210dc
1400382f9:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
1400382ff:	e8 50 6c fd ff       	call   0x14000ef54
140038304:	0f b6 45 07          	movzbl 0x7(%rbp),%eax
140038308:	48 8b 4d 1f          	mov    0x1f(%rbp),%rcx
14003830c:	0f b6 f0             	movzbl %al,%esi
14003830f:	eb 68                	jmp    0x140038379
140038311:	48 85 db             	test   %rbx,%rbx
140038314:	0f 85 21 ff ff ff    	jne    0x14003823b
14003831a:	48 83 f9 10          	cmp    $0x10,%rcx
14003831e:	4c 89 7d 2f          	mov    %r15,0x2f(%rbp)
140038322:	48 8d 45 1f          	lea    0x1f(%rbp),%rax
140038326:	48 0f 43 45 1f       	cmovae 0x1f(%rbp),%rax
14003832b:	44 88 38             	mov    %r15b,(%rax)
14003832e:	e9 2f ff ff ff       	jmp    0x140038262
140038333:	48 8d 45 07          	lea    0x7(%rbp),%rax
140038337:	48 39 45 17          	cmp    %rax,0x17(%rbp)
14003833b:	48 8d 45 1f          	lea    0x1f(%rbp),%rax
14003833f:	75 63                	jne    0x1400383a4
140038341:	48 83 7d 37 10       	cmpq   $0x10,0x37(%rbp)
140038346:	48 8d 4d 1f          	lea    0x1f(%rbp),%rcx
14003834a:	4c 8b 45 0f          	mov    0xf(%rbp),%r8
14003834e:	48 0f 43 45 1f       	cmovae 0x1f(%rbp),%rax
140038353:	33 d2                	xor    %edx,%edx
140038355:	4c 2b c0             	sub    %rax,%r8
140038358:	e8 53 ee ff ff       	call   0x1400371b0
14003835d:	48 8b 8f 80 00 00 00 	mov    0x80(%rdi),%rcx
140038364:	e8 67 d5 fe ff       	call   0x1400258d0
140038369:	44 8b f0             	mov    %eax,%r14d
14003836c:	83 f8 ff             	cmp    $0xffffffff,%eax
14003836f:	0f 85 7b fe ff ff    	jne    0x1400381f0
140038375:	48 8b 4d 1f          	mov    0x1f(%rbp),%rcx
140038379:	48 8b 45 37          	mov    0x37(%rbp),%rax
14003837d:	48 83 f8 10          	cmp    $0x10,%rax
140038381:	0f 82 91 00 00 00    	jb     0x140038418
140038387:	48 ff c0             	inc    %rax
14003838a:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
14003838e:	76 5a                	jbe    0x1400383ea
140038390:	e9 bb 00 00 00       	jmp    0x140038450
140038395:	48 8d 45 1f          	lea    0x1f(%rbp),%rax
140038399:	0f b6 00             	movzbl (%rax),%eax
14003839c:	88 45 07             	mov    %al,0x7(%rbp)
14003839f:	0f b6 f0             	movzbl %al,%esi
1400383a2:	eb d5                	jmp    0x140038379
1400383a4:	48 83 7d 37 10       	cmpq   $0x10,0x37(%rbp)
1400383a9:	48 8b 4d 1f          	mov    0x1f(%rbp),%rcx
1400383ad:	48 8b 55 0f          	mov    0xf(%rbp),%rdx
1400383b1:	48 0f 43 c1          	cmovae %rcx,%rax
1400383b5:	2b c2                	sub    %edx,%eax
1400383b7:	03 45 2f             	add    0x2f(%rbp),%eax
1400383ba:	48 63 d8             	movslq %eax,%rbx
1400383bd:	85 c0                	test   %eax,%eax
1400383bf:	7e 23                	jle    0x1400383e4
1400383c1:	0f be 4c 13 ff       	movsbl -0x1(%rbx,%rdx,1),%ecx
1400383c6:	48 ff cb             	dec    %rbx
1400383c9:	48 8b 97 80 00 00 00 	mov    0x80(%rdi),%rdx
1400383d0:	e8 43 db fe ff       	call   0x140025f18
1400383d5:	48 85 db             	test   %rbx,%rbx
1400383d8:	7e 06                	jle    0x1400383e0
1400383da:	48 8b 55 0f          	mov    0xf(%rbp),%rdx
1400383de:	eb e1                	jmp    0x1400383c1
1400383e0:	48 8b 4d 1f          	mov    0x1f(%rbp),%rcx
1400383e4:	0f b6 75 07          	movzbl 0x7(%rbp),%esi
1400383e8:	eb 8f                	jmp    0x140038379
1400383ea:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
1400383f0:	72 21                	jb     0x140038413
1400383f2:	f6 45 1f 1f          	testb  $0x1f,0x1f(%rbp)
1400383f6:	75 78                	jne    0x140038470
1400383f8:	48 8b 41 f8          	mov    -0x8(%rcx),%rax
1400383fc:	48 3b c1             	cmp    %rcx,%rax
1400383ff:	73 75                	jae    0x140038476
140038401:	48 2b c8             	sub    %rax,%rcx
140038404:	48 83 f9 08          	cmp    $0x8,%rcx
140038408:	72 72                	jb     0x14003847c
14003840a:	48 83 f9 27          	cmp    $0x27,%rcx
14003840e:	77 72                	ja     0x140038482
140038410:	48 8b c8             	mov    %rax,%rcx
140038413:	e8 98 8e fc ff       	call   0x1400012b0
140038418:	4c 8b b4 24 b8 00 00 	mov    0xb8(%rsp),%r14
14003841f:	00
140038420:	48 8b 9c 24 a8 00 00 	mov    0xa8(%rsp),%rbx
140038427:	00
140038428:	4c 8b bc 24 80 00 00 	mov    0x80(%rsp),%r15
14003842f:	00
140038430:	8b c6                	mov    %esi,%eax
140038432:	48 8b b4 24 b0 00 00 	mov    0xb0(%rsp),%rsi
140038439:	00
14003843a:	48 8b 4d 3f          	mov    0x3f(%rbp),%rcx
14003843e:	48 33 cc             	xor    %rsp,%rcx
140038441:	e8 5a 0f fd ff       	call   0x1400093a0
140038446:	48 81 c4 88 00 00 00 	add    $0x88,%rsp
14003844d:	5f                   	pop    %rdi
14003844e:	5d                   	pop    %rbp
14003844f:	c3                   	ret
140038450:	e8 1f 6b fd ff       	call   0x14000ef74
140038455:	cc                   	int3
140038456:	48 8d 0d 9b 45 00 00 	lea    0x459b(%rip),%rcx        # 0x14003c9f8
14003845d:	e8 4a 0a fd ff       	call   0x140008eac
140038462:	cc                   	int3
140038463:	48 8d 0d 8e 45 00 00 	lea    0x458e(%rip),%rcx        # 0x14003c9f8
14003846a:	e8 3d 0a fd ff       	call   0x140008eac
14003846f:	cc                   	int3
140038470:	e8 ff 6a fd ff       	call   0x14000ef74
140038475:	cc                   	int3
140038476:	e8 f9 6a fd ff       	call   0x14000ef74
14003847b:	cc                   	int3
14003847c:	e8 f3 6a fd ff       	call   0x14000ef74
140038481:	cc                   	int3
140038482:	e8 ed 6a fd ff       	call   0x14000ef74
140038487:	cc                   	int3
140038488:	cc                   	int3
140038489:	cc                   	int3
14003848a:	cc                   	int3
14003848b:	cc                   	int3
14003848c:	cc                   	int3
14003848d:	cc                   	int3
14003848e:	cc                   	int3
14003848f:	cc                   	int3
140038490:	40 53                	rex push %rbx
140038492:	48 83 ec 20          	sub    $0x20,%rsp
140038496:	48 8b 01             	mov    (%rcx),%rax
140038499:	48 8b d9             	mov    %rcx,%rbx
14003849c:	ff 50 30             	call   *0x30(%rax)
14003849f:	83 f8 ff             	cmp    $0xffffffff,%eax
1400384a2:	75 08                	jne    0x1400384ac
1400384a4:	0b c0                	or     %eax,%eax
1400384a6:	48 83 c4 20          	add    $0x20,%rsp
1400384aa:	5b                   	pop    %rbx
1400384ab:	c3                   	ret
1400384ac:	48 8b 43 50          	mov    0x50(%rbx),%rax
1400384b0:	ff 08                	decl   (%rax)
1400384b2:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
1400384b6:	48 8b 11             	mov    (%rcx),%rdx
1400384b9:	48 8d 42 01          	lea    0x1(%rdx),%rax
1400384bd:	48 89 01             	mov    %rax,(%rcx)
1400384c0:	0f b6 02             	movzbl (%rdx),%eax
1400384c3:	48 83 c4 20          	add    $0x20,%rsp
1400384c7:	5b                   	pop    %rbx
1400384c8:	c3                   	ret
1400384c9:	cc                   	int3
1400384ca:	cc                   	int3
1400384cb:	cc                   	int3
1400384cc:	cc                   	int3
1400384cd:	cc                   	int3
1400384ce:	cc                   	int3
1400384cf:	cc                   	int3
1400384d0:	40 53                	rex push %rbx
1400384d2:	48 83 ec 20          	sub    $0x20,%rsp
1400384d6:	48 8b 41 38          	mov    0x38(%rcx),%rax
1400384da:	48 8b d9             	mov    %rcx,%rbx
1400384dd:	48 8b 08             	mov    (%rax),%rcx
1400384e0:	48 85 c9             	test   %rcx,%rcx
1400384e3:	74 18                	je     0x1400384fd
1400384e5:	48 8b 43 50          	mov    0x50(%rbx),%rax
1400384e9:	48 63 10             	movslq (%rax),%rdx
1400384ec:	48 03 d1             	add    %rcx,%rdx
1400384ef:	48 3b ca             	cmp    %rdx,%rcx
1400384f2:	73 09                	jae    0x1400384fd
1400384f4:	0f b6 01             	movzbl (%rcx),%eax
1400384f7:	48 83 c4 20          	add    $0x20,%rsp
1400384fb:	5b                   	pop    %rbx
1400384fc:	c3                   	ret
1400384fd:	48 8b 03             	mov    (%rbx),%rax
140038500:	48 8b cb             	mov    %rbx,%rcx
140038503:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
140038508:	ff 50 38             	call   *0x38(%rax)
14003850b:	8b f8                	mov    %eax,%edi
14003850d:	83 f8 ff             	cmp    $0xffffffff,%eax
140038510:	75 0d                	jne    0x14003851f
140038512:	0b c0                	or     %eax,%eax
140038514:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
140038519:	48 83 c4 20          	add    $0x20,%rsp
14003851d:	5b                   	pop    %rbx
14003851e:	c3                   	ret
14003851f:	48 8b 03             	mov    (%rbx),%rax
140038522:	8b d7                	mov    %edi,%edx
140038524:	48 8b cb             	mov    %rbx,%rcx
140038527:	ff 50 20             	call   *0x20(%rax)
14003852a:	8b c7                	mov    %edi,%eax
14003852c:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
140038531:	48 83 c4 20          	add    $0x20,%rsp
140038535:	5b                   	pop    %rbx
140038536:	c3                   	ret
140038537:	cc                   	int3
140038538:	cc                   	int3
140038539:	cc                   	int3
14003853a:	cc                   	int3
14003853b:	cc                   	int3
14003853c:	cc                   	int3
14003853d:	cc                   	int3
14003853e:	cc                   	int3
14003853f:	cc                   	int3
140038540:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140038544:	48 8d 05 2d e3 00 00 	lea    0xe32d(%rip),%rax        # 0x140046878
14003854b:	48 85 d2             	test   %rdx,%rdx
14003854e:	48 0f 45 c2          	cmovne %rdx,%rax
140038552:	c3                   	ret
140038553:	cc                   	int3
140038554:	cc                   	int3
140038555:	cc                   	int3
140038556:	cc                   	int3
140038557:	cc                   	int3
140038558:	cc                   	int3
140038559:	cc                   	int3
14003855a:	cc                   	int3
14003855b:	cc                   	int3
14003855c:	cc                   	int3
14003855d:	cc                   	int3
14003855e:	cc                   	int3
14003855f:	cc                   	int3
140038560:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140038565:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14003856a:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14003856f:	41 56                	push   %r14
140038571:	48 83 ec 20          	sub    $0x20,%rsp
140038575:	33 ed                	xor    %ebp,%ebp
140038577:	49 8b f8             	mov    %r8,%rdi
14003857a:	48 8b f2             	mov    %rdx,%rsi
14003857d:	4c 8b f1             	mov    %rcx,%r14
140038580:	4d 85 c0             	test   %r8,%r8
140038583:	0f 8e 8c 00 00 00    	jle    0x140038615
140038589:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
14003858e:	66 90                	xchg   %ax,%ax
140038590:	49 8b ce             	mov    %r14,%rcx
140038593:	e8 58 dc ff ff       	call   0x1400361f0
140038598:	48 8b d8             	mov    %rax,%rbx
14003859b:	48 85 c0             	test   %rax,%rax
14003859e:	7e 39                	jle    0x1400385d9
1400385a0:	48 3b f8             	cmp    %rax,%rdi
1400385a3:	48 0f 4c df          	cmovl  %rdi,%rbx
1400385a7:	48 85 db             	test   %rbx,%rbx
1400385aa:	74 12                	je     0x1400385be
1400385ac:	49 8b 56 38          	mov    0x38(%r14),%rdx
1400385b0:	4c 8b c3             	mov    %rbx,%r8
1400385b3:	48 8b ce             	mov    %rsi,%rcx
1400385b6:	48 8b 12             	mov    (%rdx),%rdx
1400385b9:	e8 52 22 00 00       	call   0x14003a810
1400385be:	49 8b 46 50          	mov    0x50(%r14),%rax
1400385c2:	48 03 f3             	add    %rbx,%rsi
1400385c5:	48 03 eb             	add    %rbx,%rbp
1400385c8:	48 2b fb             	sub    %rbx,%rdi
1400385cb:	29 18                	sub    %ebx,(%rax)
1400385cd:	49 8b 4e 38          	mov    0x38(%r14),%rcx
1400385d1:	48 63 c3             	movslq %ebx,%rax
1400385d4:	48 01 01             	add    %rax,(%rcx)
1400385d7:	eb 19                	jmp    0x1400385f2
1400385d9:	49 8b 16             	mov    (%r14),%rdx
1400385dc:	49 8b ce             	mov    %r14,%rcx
1400385df:	ff 52 38             	call   *0x38(%rdx)
1400385e2:	83 f8 ff             	cmp    $0xffffffff,%eax
1400385e5:	74 10                	je     0x1400385f7
1400385e7:	88 06                	mov    %al,(%rsi)
1400385e9:	48 ff c5             	inc    %rbp
1400385ec:	48 ff c6             	inc    %rsi
1400385ef:	48 ff cf             	dec    %rdi
1400385f2:	48 85 ff             	test   %rdi,%rdi
1400385f5:	7f 99                	jg     0x140038590
1400385f7:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400385fc:	48 8b c5             	mov    %rbp,%rax
1400385ff:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140038604:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140038609:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
14003860e:	48 83 c4 20          	add    $0x20,%rsp
140038612:	41 5e                	pop    %r14
140038614:	c3                   	ret
140038615:	48 8b c5             	mov    %rbp,%rax
140038618:	eb e5                	jmp    0x1400385ff
14003861a:	cc                   	int3
14003861b:	cc                   	int3
14003861c:	cc                   	int3
14003861d:	cc                   	int3
14003861e:	cc                   	int3
14003861f:	cc                   	int3
140038620:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140038625:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14003862a:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14003862f:	41 56                	push   %r14
140038631:	48 83 ec 20          	sub    $0x20,%rsp
140038635:	33 ed                	xor    %ebp,%ebp
140038637:	49 8b f8             	mov    %r8,%rdi