140038149:	48 83 ec 58          	sub    $0x58,%rsp
14003814d:	44 89 c3             	mov    %r8d,%ebx
140038150:	48 89 d7             	mov    %rdx,%rdi
140038153:	48 89 ce             	mov    %rcx,%rsi
140038156:	48 8b 05 e3 8e 0c 00 	mov    0xc8ee3(%rip),%rax        # 0x140101040
14003815d:	48 31 e0             	xor    %rsp,%rax
140038160:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140038165:	ff 15 a5 f7 0b 00    	call   *0xbf7a5(%rip)        # 0x1400f7910
14003816b:	84 c0                	test   %al,%al
14003816d:	0f 84 ea 01 00 00    	je     0x14003835d
140038173:	4c 8d 66 40          	lea    0x40(%rsi),%r12
140038177:	48 8b 46 40          	mov    0x40(%rsi),%rax
14003817b:	48 85 c0             	test   %rax,%rax
14003817e:	0f 84 3d 01 00 00    	je     0x1400382c1
140038184:	4d 89 e6             	mov    %r12,%r14
140038187:	31 c9                	xor    %ecx,%ecx
140038189:	48 39 78 20          	cmp    %rdi,0x20(%rax)
14003818d:	0f 92 c1             	setb   %cl
140038190:	4c 0f 43 f0          	cmovae %rax,%r14
140038194:	48 8b 04 c8          	mov    (%rax,%rcx,8),%rax
140038198:	48 85 c0             	test   %rax,%rax
14003819b:	75 ea                	jne    0x140038187
14003819d:	4d 39 e6             	cmp    %r12,%r14
1400381a0:	0f 84 1b 01 00 00    	je     0x1400382c1
1400381a6:	49 3b 7e 20          	cmp    0x20(%r14),%rdi
1400381aa:	0f 82 11 01 00 00    	jb     0x1400382c1
1400381b0:	49 8b 4e 08          	mov    0x8(%r14),%rcx
1400381b4:	48 85 c9             	test   %rcx,%rcx
1400381b7:	0f 85 d7 00 00 00    	jne    0x140038294
1400381bd:	4c 89 f1             	mov    %r14,%rcx
1400381c0:	48 8b 41 10          	mov    0x10(%rcx),%rax
1400381c4:	48 3b 08             	cmp    (%rax),%rcx
1400381c7:	48 89 c1             	mov    %rax,%rcx
1400381ca:	75 f4                	jne    0x1400381c0
1400381cc:	4c 39 76 38          	cmp    %r14,0x38(%rsi)
1400381d0:	0f 84 e2 00 00 00    	je     0x1400382b8
1400381d6:	48 ff 4e 48          	decq   0x48(%rsi)
1400381da:	48 8b 4e 40          	mov    0x40(%rsi),%rcx
1400381de:	4c 89 f2             	mov    %r14,%rdx
1400381e1:	e8 3a cd 01 00       	call   0x140054f20
1400381e6:	4c 89 f1             	mov    %r14,%rcx
1400381e9:	e8 e2 5c 03 00       	call   0x14006ded0
1400381ee:	4c 8d 7e 28          	lea    0x28(%rsi),%r15
1400381f2:	48 8b 46 28          	mov    0x28(%rsi),%rax
1400381f6:	48 85 c0             	test   %rax,%rax
1400381f9:	0f 84 10 01 00 00    	je     0x14003830f
1400381ff:	4d 89 fe             	mov    %r15,%r14
140038202:	31 c9                	xor    %ecx,%ecx
140038204:	39 58 20             	cmp    %ebx,0x20(%rax)
140038207:	0f 92 c1             	setb   %cl
14003820a:	4c 0f 43 f0          	cmovae %rax,%r14
14003820e:	48 8b 04 c8          	mov    (%rax,%rcx,8),%rax
140038212:	48 85 c0             	test   %rax,%rax
140038215:	75 eb                	jne    0x140038202
140038217:	4d 39 fe             	cmp    %r15,%r14
14003821a:	0f 84 ef 00 00 00    	je     0x14003830f
140038220:	41 3b 5e 20          	cmp    0x20(%r14),%ebx
140038224:	0f 82 e5 00 00 00    	jb     0x14003830f
14003822a:	49 39 7e 28          	cmp    %rdi,0x28(%r14)
14003822e:	75 36                	jne    0x140038266
140038230:	49 8b 4e 08          	mov    0x8(%r14),%rcx
140038234:	48 85 c9             	test   %rcx,%rcx
140038237:	75 6c                	jne    0x1400382a5
140038239:	4c 89 f1             	mov    %r14,%rcx
14003823c:	48 8b 41 10          	mov    0x10(%rcx),%rax
140038240:	48 3b 08             	cmp    (%rax),%rcx
140038243:	48 89 c1             	mov    %rax,%rcx
140038246:	75 f4                	jne    0x14003823c
140038248:	4c 39 76 20          	cmp    %r14,0x20(%rsi)
14003824c:	74 64                	je     0x1400382b2
14003824e:	48 ff 4e 30          	decq   0x30(%rsi)
140038252:	48 8b 4e 28          	mov    0x28(%rsi),%rcx
140038256:	4c 89 f2             	mov    %r14,%rdx
140038259:	e8 c2 cc 01 00       	call   0x140054f20
14003825e:	4c 89 f1             	mov    %r14,%rcx
140038261:	e8 6a 5c 03 00       	call   0x14006ded0
140038266:	48 89 f1             	mov    %rsi,%rcx
140038269:	ff 15 c9 f5 0b 00    	call   *0xbf5c9(%rip)        # 0x1400f7838
14003826f:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140038274:	48 31 e1             	xor    %rsp,%rcx
140038277:	48 3b 0d c2 8d 0c 00 	cmp    0xc8dc2(%rip),%rcx        # 0x140101040
14003827e:	74 06                	je     0x140038286
140038280:	e8 4b 70 03 00       	call   0x14006f2d0
140038285:	cc                   	int3
140038286:	48 83 c4 58          	add    $0x58,%rsp
14003828a:	5b                   	pop    %rbx
14003828b:	5f                   	pop    %rdi
14003828c:	5e                   	pop    %rsi
14003828d:	41 5c                	pop    %r12
14003828f:	41 5e                	pop    %r14
140038291:	41 5f                	pop    %r15
140038293:	c3                   	ret
140038294:	48 89 c8             	mov    %rcx,%rax
140038297:	48 8b 09             	mov    (%rcx),%rcx
14003829a:	48 85 c9             	test   %rcx,%rcx
14003829d:	0f 84 29 ff ff ff    	je     0x1400381cc
1400382a3:	eb ef                	jmp    0x140038294
1400382a5:	48 89 c8             	mov    %rcx,%rax
1400382a8:	48 8b 09             	mov    (%rcx),%rcx
1400382ab:	48 85 c9             	test   %rcx,%rcx
1400382ae:	74 98                	je     0x140038248
1400382b0:	eb f3                	jmp    0x1400382a5
1400382b2:	48 89 46 20          	mov    %rax,0x20(%rsi)
1400382b6:	eb 96                	jmp    0x14003824e
1400382b8:	48 89 46 38          	mov    %rax,0x38(%rsi)
1400382bc:	e9 15 ff ff ff       	jmp    0x1400381d6
1400382c1:	48 8d 15 32 7f 0b 00 	lea    0xb7f32(%rip),%rdx        # 0x1400f01fa
1400382c8:	4c 8d 05 fc 7e 0b 00 	lea    0xb7efc(%rip),%r8        # 0x1400f01cb
1400382cf:	4c 8d 74 24 28       	lea    0x28(%rsp),%r14
1400382d4:	4c 89 f1             	mov    %r14,%rcx
1400382d7:	41 b9 81 00 00 00    	mov    $0x81,%r9d
1400382dd:	e8 9e 77 02 00       	call   0x14005fa80
1400382e2:	48 8d 15 1c 7f 0b 00 	lea    0xb7f1c(%rip),%rdx        # 0x1400f0205
1400382e9:	4c 8d 7c 24 48       	lea    0x48(%rsp),%r15
1400382ee:	4c 89 f9             	mov    %r15,%rcx
1400382f1:	41 b8 7d 00 00 00    	mov    $0x7d,%r8d
1400382f7:	4d 89 f1             	mov    %r14,%r9
1400382fa:	e8 e1 9f 08 00       	call   0x1400c22e0
1400382ff:	4c 89 f9             	mov    %r15,%rcx
140038302:	e8 e9 a1 08 00       	call   0x1400c24f0
140038307:	4d 89 e6             	mov    %r12,%r14
14003830a:	e9 a1 fe ff ff       	jmp    0x1400381b0
14003830f:	48 8d 15 e4 7e 0b 00 	lea    0xb7ee4(%rip),%rdx        # 0x1400f01fa
140038316:	4c 8d 05 ae 7e 0b 00 	lea    0xb7eae(%rip),%r8        # 0x1400f01cb
14003831d:	48 8d 5c 24 28       	lea    0x28(%rsp),%rbx
140038322:	48 89 d9             	mov    %rbx,%rcx
140038325:	41 b9 86 00 00 00    	mov    $0x86,%r9d
14003832b:	e8 50 77 02 00       	call   0x14005fa80
140038330:	48 8d 15 0b 7f 0b 00 	lea    0xb7f0b(%rip),%rdx        # 0x1400f0242
140038337:	4c 8d 74 24 20       	lea    0x20(%rsp),%r14
14003833c:	4c 89 f1             	mov    %r14,%rcx
14003833f:	41 b8 7d 00 00 00    	mov    $0x7d,%r8d
140038345:	49 89 d9             	mov    %rbx,%r9
140038348:	e8 93 9f 08 00       	call   0x1400c22e0
14003834d:	4c 89 f1             	mov    %r14,%rcx
140038350:	e8 9b a1 08 00       	call   0x1400c24f0
140038355:	4d 89 fe             	mov    %r15,%r14
140038358:	e9 cd fe ff ff       	jmp    0x14003822a
14003835d:	48 89 f1             	mov    %rsi,%rcx
140038360:	e8 db 44 02 00       	call   0x14005c840
140038365:	e9 09 fe ff ff       	jmp    0x140038173
14003836a:	cc                   	int3
14003836b:	cc                   	int3
14003836c:	cc                   	int3
14003836d:	cc                   	int3
14003836e:	cc                   	int3
14003836f:	cc                   	int3
140038370:	41 57                	push   %r15
140038372:	41 56                	push   %r14
140038374:	41 55                	push   %r13
140038376:	41 54                	push   %r12
140038378:	56                   	push   %rsi
140038379:	57                   	push   %rdi
14003837a:	55                   	push   %rbp
14003837b:	53                   	push   %rbx
14003837c:	48 83 ec 28          	sub    $0x28,%rsp
140038380:	48 89 d6             	mov    %rdx,%rsi
140038383:	48 89 cf             	mov    %rcx,%rdi
140038386:	48 8b 41 08          	mov    0x8(%rcx),%rax
14003838a:	48 85 c0             	test   %rax,%rax
14003838d:	0f 84 0e 01 00 00    	je     0x1400384a1
140038393:	4d 89 c6             	mov    %r8,%r14
140038396:	4d 0f be 68 17       	movsbq 0x17(%r8),%r13
14003839b:	4d 85 ed             	test   %r13,%r13
14003839e:	79 3a                	jns    0x1400383da
1400383a0:	4d 8b 6e 08          	mov    0x8(%r14),%r13
1400383a4:	4d 8b 36             	mov    (%r14),%r14
1400383a7:	eb 31                	jmp    0x1400383da
1400383a9:	48 8b 6b 28          	mov    0x28(%rbx),%rbp
1400383ad:	4c 8b 7b 20          	mov    0x20(%rbx),%r15
1400383b1:	4c 39 ed             	cmp    %r13,%rbp
1400383b4:	4d 89 ec             	mov    %r13,%r12
1400383b7:	4c 0f 42 e5          	cmovb  %rbp,%r12
1400383bb:	4c 89 f1             	mov    %r14,%rcx
1400383be:	4c 89 fa             	mov    %r15,%rdx
1400383c1:	4d 89 e0             	mov    %r12,%r8
1400383c4:	e8 a7 56 06 00       	call   0x14009da70
1400383c9:	85 c0                	test   %eax,%eax
1400383cb:	74 20                	je     0x1400383ed
1400383cd:	79 23                	jns    0x1400383f2
1400383cf:	48 8b 03             	mov    (%rbx),%rax
1400383d2:	49 89 df             	mov    %rbx,%r15
1400383d5:	48 85 c0             	test   %rax,%rax
1400383d8:	74 5a                	je     0x140038434
1400383da:	48 89 c3             	mov    %rax,%rbx
1400383dd:	48 0f be 68 37       	movsbq 0x37(%rax),%rbp
1400383e2:	48 85 ed             	test   %rbp,%rbp
1400383e5:	78 c2                	js     0x1400383a9
1400383e7:	4c 8d 7b 20          	lea    0x20(%rbx),%r15
1400383eb:	eb c4                	jmp    0x1400383b1
1400383ed:	49 39 ed             	cmp    %rbp,%r13
1400383f0:	72 dd                	jb     0x1400383cf
1400383f2:	4c 89 f9             	mov    %r15,%rcx
1400383f5:	4c 89 f2             	mov    %r14,%rdx
1400383f8:	4d 89 e0             	mov    %r12,%r8
1400383fb:	e8 70 56 06 00       	call   0x14009da70
140038400:	85 c0                	test   %eax,%eax
140038402:	74 1e                	je     0x140038422
140038404:	78 21                	js     0x140038427
140038406:	31 c0                	xor    %eax,%eax
140038408:	48 89 1e             	mov    %rbx,(%rsi)
14003840b:	88 46 08             	mov    %al,0x8(%rsi)
14003840e:	48 89 f0             	mov    %rsi,%rax
140038411:	48 83 c4 28          	add    $0x28,%rsp
140038415:	5b                   	pop    %rbx
140038416:	5d                   	pop    %rbp
140038417:	5f                   	pop    %rdi
140038418:	5e                   	pop    %rsi
140038419:	41 5c                	pop    %r12
14003841b:	41 5d                	pop    %r13
14003841d:	41 5e                	pop    %r14
14003841f:	41 5f                	pop    %r15
140038421:	c3                   	ret
140038422:	4c 39 ed             	cmp    %r13,%rbp
140038425:	73 df                	jae    0x140038406
140038427:	48 8b 43 08          	mov    0x8(%rbx),%rax
14003842b:	48 85 c0             	test   %rax,%rax
14003842e:	75 aa                	jne    0x1400383da
140038430:	4c 8d 7b 08          	lea    0x8(%rbx),%r15
140038434:	49 89 de             	mov    %rbx,%r14
140038437:	4c 8b a4 24 90 00 00 	mov    0x90(%rsp),%r12
14003843e:	00
14003843f:	b9 40 00 00 00       	mov    $0x40,%ecx
140038444:	e8 4b 5a 03 00       	call   0x14006de94
140038449:	48 89 c3             	mov    %rax,%rbx
14003844c:	49 8b 04 24          	mov    (%r12),%rax
140038450:	48 8b 48 10          	mov    0x10(%rax),%rcx
140038454:	48 89 4b 30          	mov    %rcx,0x30(%rbx)
140038458:	0f 10 00             	movups (%rax),%xmm0
14003845b:	0f 11 43 20          	movups %xmm0,0x20(%rbx)
14003845f:	31 c9                	xor    %ecx,%ecx
140038461:	48 89 48 10          	mov    %rcx,0x10(%rax)
140038465:	0f 57 c0             	xorps  %xmm0,%xmm0
140038468:	0f 11 00             	movups %xmm0,(%rax)
14003846b:	48 89 4b 38          	mov    %rcx,0x38(%rbx)
14003846f:	0f 11 03             	movups %xmm0,(%rbx)
140038472:	4c 89 73 10          	mov    %r14,0x10(%rbx)
140038476:	49 89 1f             	mov    %rbx,(%r15)
140038479:	48 8b 07             	mov    (%rdi),%rax
14003847c:	48 8b 00             	mov    (%rax),%rax
14003847f:	48 89 da             	mov    %rbx,%rdx
140038482:	48 85 c0             	test   %rax,%rax
140038485:	74 06                	je     0x14003848d
140038487:	48 89 07             	mov    %rax,(%rdi)
14003848a:	49 8b 17             	mov    (%r15),%rdx
14003848d:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140038491:	e8 7a ce 01 00       	call   0x140055310
140038496:	48 ff 47 10          	incq   0x10(%rdi)
14003849a:	b0 01                	mov    $0x1,%al
14003849c:	e9 67 ff ff ff       	jmp    0x140038408
1400384a1:	4c 8d 7f 08          	lea    0x8(%rdi),%r15
1400384a5:	4c 89 fb             	mov    %r15,%rbx
1400384a8:	eb 8a                	jmp    0x140038434
1400384aa:	cc                   	int3
1400384ab:	cc                   	int3
1400384ac:	cc                   	int3
1400384ad:	cc                   	int3
1400384ae:	cc                   	int3
1400384af:	cc                   	int3
1400384b0:	41 57                	push   %r15
1400384b2:	41 56                	push   %r14
1400384b4:	41 55                	push   %r13
1400384b6:	41 54                	push   %r12
1400384b8:	56                   	push   %rsi
1400384b9:	57                   	push   %rdi
1400384ba:	55                   	push   %rbp
1400384bb:	53                   	push   %rbx
1400384bc:	48 83 ec 28          	sub    $0x28,%rsp
1400384c0:	48 89 d6             	mov    %rdx,%rsi
1400384c3:	48 89 cf             	mov    %rcx,%rdi
1400384c6:	4c 8b 69 08          	mov    0x8(%rcx),%r13
1400384ca:	48 83 c7 08          	add    $0x8,%rdi
1400384ce:	4d 85 ed             	test   %r13,%r13
1400384d1:	0f 84 ee 00 00 00    	je     0x1400385c5
1400384d7:	4c 89 c3             	mov    %r8,%rbx
1400384da:	4d 0f be 60 17       	movsbq 0x17(%r8),%r12
1400384df:	4d 89 c6             	mov    %r8,%r14
1400384e2:	4d 85 e4             	test   %r12,%r12
1400384e5:	79 07                	jns    0x1400384ee
1400384e7:	4c 8b 63 08          	mov    0x8(%rbx),%r12
1400384eb:	4c 8b 33             	mov    (%rbx),%r14
1400384ee:	49 89 ff             	mov    %rdi,%r15
1400384f1:	eb 78                	jmp    0x14003856b
1400384f3:	b8 01 00 00 00       	mov    $0x1,%eax
1400384f8:	eb 12                	jmp    0x14003850c
1400384fa:	73 f7                	jae    0x1400384f3
1400384fc:	49 83 c5 08          	add    $0x8,%r13
140038500:	4c 89 e8             	mov    %r13,%rax
140038503:	eb 5e                	jmp    0x140038563
140038505:	31 c0                	xor    %eax,%eax
140038507:	4c 39 e5             	cmp    %r12,%rbp
14003850a:	75 ee                	jne    0x1400384fa
14003850c:	85 c0                	test   %eax,%eax
14003850e:	0f 98 c0             	sets   %al
140038511:	0f 9f c1             	setg   %cl
140038514:	28 c1                	sub    %al,%cl
140038516:	c0 e9 07             	shr    $0x7,%cl
140038519:	0f b6 c1             	movzbl %cl,%eax
14003851c:	48 8d 04 c5 00 00 00 	lea    0x0(,%rax,8),%rax
140038523:	00
140038524:	4c 01 e8             	add    %r13,%rax
140038527:	4d 89 ef             	mov    %r13,%r15
14003852a:	eb 37                	jmp    0x140038563
14003852c:	49 8d 4d 20          	lea    0x20(%r13),%rcx
140038530:	49 39 ec             	cmp    %rbp,%r12
140038533:	49 89 e8             	mov    %rbp,%r8
140038536:	4d 0f 42 c4          	cmovb  %r12,%r8
14003853a:	4c 89 f2             	mov    %r14,%rdx
14003853d:	e8 2e 55 06 00       	call   0x14009da70
140038542:	85 c0                	test   %eax,%eax
140038544:	74 bf                	je     0x140038505
140038546:	0f 9f c0             	setg   %al
140038549:	0f 98 c1             	sets   %cl
14003854c:	4d 0f 49 fd          	cmovns %r13,%r15
140038550:	28 c8                	sub    %cl,%al
140038552:	c0 e8 07             	shr    $0x7,%al
140038555:	0f b6 c0             	movzbl %al,%eax
140038558:	48 8d 04 c5 00 00 00 	lea    0x0(,%rax,8),%rax
14003855f:	00
140038560:	4c 01 e8             	add    %r13,%rax
140038563:	4c 8b 28             	mov    (%rax),%r13
140038566:	4d 85 ed             	test   %r13,%r13
140038569:	74 14                	je     0x14003857f
14003856b:	49 0f be 6d 37       	movsbq 0x37(%r13),%rbp
140038570:	48 85 ed             	test   %rbp,%rbp
140038573:	79 b7                	jns    0x14003852c
140038575:	49 8b 6d 28          	mov    0x28(%r13),%rbp
140038579:	49 8b 4d 20          	mov    0x20(%r13),%rcx
14003857d:	eb b1                	jmp    0x140038530
14003857f:	49 39 ff             	cmp    %rdi,%r15
140038582:	74 41                	je     0x1400385c5
140038584:	4d 0f be 77 37       	movsbq 0x37(%r15),%r14
140038589:	4d 85 f6             	test   %r14,%r14
14003858c:	79 0a                	jns    0x140038598
14003858e:	4d 8b 77 28          	mov    0x28(%r15),%r14
140038592:	49 8b 57 20          	mov    0x20(%r15),%rdx
140038596:	eb 04                	jmp    0x14003859c
140038598:	49 8d 57 20          	lea    0x20(%r15),%rdx
14003859c:	4c 0f be 63 17       	movsbq 0x17(%rbx),%r12
1400385a1:	4d 85 e4             	test   %r12,%r12
1400385a4:	79 07                	jns    0x1400385ad
1400385a6:	4c 8b 63 08          	mov    0x8(%rbx),%r12
1400385aa:	48 8b 1b             	mov    (%rbx),%rbx
1400385ad:	4d 39 e6             	cmp    %r12,%r14
1400385b0:	4d 89 e0             	mov    %r12,%r8
1400385b3:	4d 0f 42 c6          	cmovb  %r14,%r8
1400385b7:	48 89 d9             	mov    %rbx,%rcx
1400385ba:	e8 b1 54 06 00       	call   0x14009da70
1400385bf:	85 c0                	test   %eax,%eax
1400385c1:	74 1c                	je     0x1400385df