140e010c4:	48 89 55 b0          	mov    %rdx,-0x50(%rbp)
140e010c8:	48 8b d9             	mov    %rcx,%rbx
140e010cb:	45 33 c0             	xor    %r8d,%r8d
140e010ce:	41 8b d0             	mov    %r8d,%edx
140e010d1:	45 8d 60 01          	lea    0x1(%r8),%r12d
140e010d5:	66 45 39 01          	cmp    %r8w,(%r9)
140e010d9:	74 20                	je     0x140e010fb
140e010db:	41 0f b7 09          	movzwl (%r9),%ecx
140e010df:	48 8d 46 01          	lea    0x1(%rsi),%rax
140e010e3:	66 41 3b 09          	cmp    (%r9),%cx
140e010e7:	48 0f 45 c6          	cmovne %rsi,%rax
140e010eb:	48 8b f0             	mov    %rax,%rsi
140e010ee:	49 03 d4             	add    %r12,%rdx
140e010f1:	41 0f b7 0c 51       	movzwl (%r9,%rdx,2),%ecx
140e010f6:	66 85 c9             	test   %cx,%cx
140e010f9:	75 e4                	jne    0x140e010df
140e010fb:	0f 57 c0             	xorps  %xmm0,%xmm0
140e010fe:	0f 11 45 c8          	movups %xmm0,-0x38(%rbp)
140e01102:	4c 89 45 d8          	mov    %r8,-0x28(%rbp)
140e01106:	4c 89 45 e0          	mov    %r8,-0x20(%rbp)
140e0110a:	4c 8b c6             	mov    %rsi,%r8
140e0110d:	33 d2                	xor    %edx,%edx
140e0110f:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140e01113:	e8 48 73 3a ff       	call   0x1401a8460
140e01118:	90                   	nop
140e01119:	41 8a cc             	mov    %r12b,%cl
140e0111c:	e8 4b b1 ff ff       	call   0x140dfc26c
140e01121:	48 8b f8             	mov    %rax,%rdi
140e01124:	48 89 45 c0          	mov    %rax,-0x40(%rbp)
140e01128:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
140e0112c:	e8 6b 5a 00 00       	call   0x140e06b9c
140e01131:	48 89 45 b8          	mov    %rax,-0x48(%rbp)
140e01135:	45 33 c0             	xor    %r8d,%r8d
140e01138:	48 85 ff             	test   %rdi,%rdi
140e0113b:	74 2d                	je     0x140e0116a
140e0113d:	48 8b 0f             	mov    (%rdi),%rcx
140e01140:	48 8b 41 10          	mov    0x10(%rcx),%rax
140e01144:	48 8b cf             	mov    %rdi,%rcx
140e01147:	ff 15 d3 28 18 00    	call   *0x1828d3(%rip)        # 0x140f83a20
140e0114d:	4c 8b c0             	mov    %rax,%r8
140e01150:	48 85 c0             	test   %rax,%rax
140e01153:	74 12                	je     0x140e01167
140e01155:	48 8b 08             	mov    (%rax),%rcx
140e01158:	48 8b 01             	mov    (%rcx),%rax
140e0115b:	41 8b d4             	mov    %r12d,%edx
140e0115e:	49 8b c8             	mov    %r8,%rcx
140e01161:	ff 15 b9 28 18 00    	call   *0x1828b9(%rip)        # 0x140f83a20
140e01167:	45 33 c0             	xor    %r8d,%r8d
140e0116a:	41 8a c8             	mov    %r8b,%cl
140e0116d:	88 4d a8             	mov    %cl,-0x58(%rbp)
140e01170:	49 8b f8             	mov    %r8,%rdi
140e01173:	4d 8b f0             	mov    %r8,%r14
140e01176:	41 bd fe ff ff ff    	mov    $0xfffffffe,%r13d
140e0117c:	48 85 f6             	test   %rsi,%rsi
140e0117f:	75 32                	jne    0x140e011b3
140e01181:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140e01185:	e8 c6 68 39 ff       	call   0x140197a50
140e0118a:	41 8b c5             	mov    %r13d,%eax
140e0118d:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
140e01191:	48 33 cc             	xor    %rsp,%rcx
140e01194:	e8 67 a3 01 00       	call   0x140e1b500
140e01199:	48 83 c4 78          	add    $0x78,%rsp
140e0119d:	41 5f                	pop    %r15
140e0119f:	41 5e                	pop    %r14
140e011a1:	41 5d                	pop    %r13
140e011a3:	41 5c                	pop    %r12
140e011a5:	5f                   	pop    %rdi
140e011a6:	5e                   	pop    %rsi
140e011a7:	5b                   	pop    %rbx
140e011a8:	5d                   	pop    %rbp
140e011a9:	c3                   	ret
140e011aa:	66 41 3b 07          	cmp    (%r15),%ax
140e011ae:	74 0d                	je     0x140e011bd
140e011b0:	48 ff c7             	inc    %rdi
140e011b3:	41 0f b7 04 7f       	movzwl (%r15,%rdi,2),%eax
140e011b8:	66 85 c0             	test   %ax,%ax
140e011bb:	75 ed                	jne    0x140e011aa
140e011bd:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
140e011c1:	48 83 7d e0 0f       	cmpq   $0xf,-0x20(%rbp)
140e011c6:	48 0f 47 45 c8       	cmova  -0x38(%rbp),%rax
140e011cb:	46 38 04 30          	cmp    %r8b,(%rax,%r14,1)
140e011cf:	74 1b                	je     0x140e011ec
140e011d1:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
140e011d5:	48 83 7d e0 0f       	cmpq   $0xf,-0x20(%rbp)
140e011da:	48 0f 47 45 c8       	cmova  -0x38(%rbp),%rax
140e011df:	4a 0f be 04 30       	movsbq (%rax,%r14,1),%rax
140e011e4:	48 03 f8             	add    %rax,%rdi
140e011e7:	e9 58 01 00 00       	jmp    0x140e01344
140e011ec:	49 03 fc             	add    %r12,%rdi
140e011ef:	41 0f b7 04 7f       	movzwl (%r15,%rdi,2),%eax
140e011f4:	66 41 3b 07          	cmp    (%r15),%ax
140e011f8:	0f 84 1f 01 00 00    	je     0x140e0131d
140e011fe:	66 85 c0             	test   %ax,%ax
140e01201:	0f 84 16 01 00 00    	je     0x140e0131d
140e01207:	48 8b 55 b0          	mov    -0x50(%rbp),%rdx
140e0120b:	48 8b cb             	mov    %rbx,%rcx
140e0120e:	e8 95 5e 01 00       	call   0x140e170a8
140e01213:	45 33 c0             	xor    %r8d,%r8d
140e01216:	84 c0                	test   %al,%al
140e01218:	0f 85 02 01 00 00    	jne    0x140e01320
140e0121e:	80 7d 68 01          	cmpb   $0x1,0x68(%rbp)
140e01222:	75 5d                	jne    0x140e01281
140e01224:	44 38 43 08          	cmp    %r8b,0x8(%rbx)
140e01228:	75 49                	jne    0x140e01273
140e0122a:	48 8b 0b             	mov    (%rbx),%rcx
140e0122d:	48 85 c9             	test   %rcx,%rcx
140e01230:	74 3a                	je     0x140e0126c
140e01232:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e01236:	48 8b 10             	mov    (%rax),%rdx
140e01239:	48 85 d2             	test   %rdx,%rdx
140e0123c:	74 0e                	je     0x140e0124c
140e0123e:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e01242:	44 39 00             	cmp    %r8d,(%rax)
140e01245:	7e 05                	jle    0x140e0124c
140e01247:	0f b7 02             	movzwl (%rdx),%eax
140e0124a:	eb 10                	jmp    0x140e0125c
140e0124c:	48 8b 01             	mov    (%rcx),%rax
140e0124f:	48 8b 40 30          	mov    0x30(%rax),%rax
140e01253:	ff 15 c7 27 18 00    	call   *0x1827c7(%rip)        # 0x140f83a20
140e01259:	45 33 c0             	xor    %r8d,%r8d
140e0125c:	b9 ff ff 00 00       	mov    $0xffff,%ecx
140e01261:	66 3b c8             	cmp    %ax,%cx
140e01264:	74 06                	je     0x140e0126c
140e01266:	66 89 43 0a          	mov    %ax,0xa(%rbx)
140e0126a:	eb 03                	jmp    0x140e0126f
140e0126c:	4c 89 03             	mov    %r8,(%rbx)
140e0126f:	c6 43 08 01          	movb   $0x1,0x8(%rbx)
140e01273:	0f b7 43 0a          	movzwl 0xa(%rbx),%eax
140e01277:	66 41 39 04 7f       	cmp    %ax,(%r15,%rdi,2)
140e0127c:	e9 8b 00 00 00       	jmp    0x140e0130c
140e01281:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
140e01285:	48 8b 01             	mov    (%rcx),%rax
140e01288:	41 0f b7 14 7f       	movzwl (%r15,%rdi,2),%edx
140e0128d:	48 8b 40 40          	mov    0x40(%rax),%rax
140e01291:	ff 15 89 27 18 00    	call   *0x182789(%rip)        # 0x140f83a20
140e01297:	66 89 45 ac          	mov    %ax,-0x54(%rbp)
140e0129b:	45 33 c0             	xor    %r8d,%r8d
140e0129e:	44 38 43 08          	cmp    %r8b,0x8(%rbx)
140e012a2:	75 4c                	jne    0x140e012f0
140e012a4:	48 8b 13             	mov    (%rbx),%rdx
140e012a7:	48 85 d2             	test   %rdx,%rdx
140e012aa:	74 3d                	je     0x140e012e9
140e012ac:	48 8b 4a 38          	mov    0x38(%rdx),%rcx
140e012b0:	48 8b 01             	mov    (%rcx),%rax
140e012b3:	48 85 c0             	test   %rax,%rax
140e012b6:	74 0e                	je     0x140e012c6
140e012b8:	48 8b 4a 50          	mov    0x50(%rdx),%rcx
140e012bc:	44 39 01             	cmp    %r8d,(%rcx)
140e012bf:	7e 05                	jle    0x140e012c6
140e012c1:	0f b7 00             	movzwl (%rax),%eax
140e012c4:	eb 13                	jmp    0x140e012d9
140e012c6:	48 8b 02             	mov    (%rdx),%rax
140e012c9:	48 8b ca             	mov    %rdx,%rcx
140e012cc:	48 8b 40 30          	mov    0x30(%rax),%rax
140e012d0:	ff 15 4a 27 18 00    	call   *0x18274a(%rip)        # 0x140f83a20
140e012d6:	45 33 c0             	xor    %r8d,%r8d
140e012d9:	b9 ff ff 00 00       	mov    $0xffff,%ecx
140e012de:	66 3b c8             	cmp    %ax,%cx
140e012e1:	74 06                	je     0x140e012e9
140e012e3:	66 89 43 0a          	mov    %ax,0xa(%rbx)
140e012e7:	eb 03                	jmp    0x140e012ec
140e012e9:	4c 89 03             	mov    %r8,(%rbx)
140e012ec:	c6 43 08 01          	movb   $0x1,0x8(%rbx)
140e012f0:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
140e012f4:	48 8b 01             	mov    (%rcx),%rax
140e012f7:	0f b7 53 0a          	movzwl 0xa(%rbx),%edx
140e012fb:	48 8b 40 40          	mov    0x40(%rax),%rax
140e012ff:	ff 15 1b 27 18 00    	call   *0x18271b(%rip)        # 0x140f83a20
140e01305:	45 33 c0             	xor    %r8d,%r8d
140e01308:	66 39 45 ac          	cmp    %ax,-0x54(%rbp)
140e0130c:	41 8b c8             	mov    %r8d,%ecx
140e0130f:	0f 95 c1             	setne  %cl
140e01312:	85 c9                	test   %ecx,%ecx
140e01314:	75 0a                	jne    0x140e01320
140e01316:	b1 01                	mov    $0x1,%cl
140e01318:	88 4d a8             	mov    %cl,-0x58(%rbp)
140e0131b:	eb 27                	jmp    0x140e01344
140e0131d:	45 8b ee             	mov    %r14d,%r13d
140e01320:	48 8d 55 c8          	lea    -0x38(%rbp),%rdx
140e01324:	48 83 7d e0 0f       	cmpq   $0xf,-0x20(%rbp)
140e01329:	48 0f 47 55 c8       	cmova  -0x38(%rbp),%rdx
140e0132e:	b9 7f 00 00 00       	mov    $0x7f,%ecx
140e01333:	4c 3b e1             	cmp    %rcx,%r12
140e01336:	41 0f b6 c4          	movzbl %r12b,%eax
140e0133a:	0f 42 c8             	cmovb  %eax,%ecx
140e0133d:	42 88 0c 32          	mov    %cl,(%rdx,%r14,1)
140e01341:	8a 4d a8             	mov    -0x58(%rbp),%cl
140e01344:	49 ff c6             	inc    %r14
140e01347:	4c 3b f6             	cmp    %rsi,%r14
140e0134a:	0f 82 63 fe ff ff    	jb     0x140e011b3
140e01350:	84 c9                	test   %cl,%cl
140e01352:	0f 84 29 fe ff ff    	je     0x140e01181
140e01358:	48 8b 55 b0          	mov    -0x50(%rbp),%rdx
140e0135c:	48 8b cb             	mov    %rbx,%rcx
140e0135f:	e8 44 5d 01 00       	call   0x140e170a8
140e01364:	84 c0                	test   %al,%al
140e01366:	0f 85 15 fe ff ff    	jne    0x140e01181
140e0136c:	49 ff c4             	inc    %r12
140e0136f:	48 8b cb             	mov    %rbx,%rcx
140e01372:	e8 a1 b1 00 00       	call   0x140e0c518
140e01377:	41 83 cd ff          	or     $0xffffffff,%r13d
140e0137b:	45 33 c0             	xor    %r8d,%r8d
140e0137e:	41 8a c8             	mov    %r8b,%cl
140e01381:	88 4d a8             	mov    %cl,-0x58(%rbp)
140e01384:	41 8b f8             	mov    %r8d,%edi
140e01387:	45 8b f0             	mov    %r8d,%r14d
140e0138a:	e9 24 fe ff ff       	jmp    0x140e011b3
140e0138f:	cc                   	int3
140e01390:	40 55                	rex push %rbp
140e01392:	53                   	push   %rbx
140e01393:	56                   	push   %rsi
140e01394:	57                   	push   %rdi
140e01395:	41 54                	push   %r12
140e01397:	41 55                	push   %r13
140e01399:	41 56                	push   %r14
140e0139b:	41 57                	push   %r15
140e0139d:	48 8b ec             	mov    %rsp,%rbp
140e013a0:	48 83 ec 78          	sub    $0x78,%rsp
140e013a4:	48 8b 05 55 7b 5b 00 	mov    0x5b7b55(%rip),%rax        # 0x1413b8f00
140e013ab:	48 33 c4             	xor    %rsp,%rax
140e013ae:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
140e013b2:	4d 8b f9             	mov    %r9,%r15
140e013b5:	49 8b f0             	mov    %r8,%rsi
140e013b8:	48 89 55 b0          	mov    %rdx,-0x50(%rbp)
140e013bc:	48 8b d9             	mov    %rcx,%rbx
140e013bf:	45 33 c0             	xor    %r8d,%r8d
140e013c2:	41 8b d0             	mov    %r8d,%edx
140e013c5:	45 8d 60 01          	lea    0x1(%r8),%r12d
140e013c9:	66 45 39 01          	cmp    %r8w,(%r9)
140e013cd:	74 20                	je     0x140e013ef
140e013cf:	41 0f b7 09          	movzwl (%r9),%ecx
140e013d3:	48 8d 46 01          	lea    0x1(%rsi),%rax
140e013d7:	66 41 3b 09          	cmp    (%r9),%cx
140e013db:	48 0f 45 c6          	cmovne %rsi,%rax
140e013df:	48 8b f0             	mov    %rax,%rsi
140e013e2:	49 03 d4             	add    %r12,%rdx
140e013e5:	41 0f b7 0c 51       	movzwl (%r9,%rdx,2),%ecx
140e013ea:	66 85 c9             	test   %cx,%cx
140e013ed:	75 e4                	jne    0x140e013d3
140e013ef:	0f 57 c0             	xorps  %xmm0,%xmm0
140e013f2:	0f 11 45 c8          	movups %xmm0,-0x38(%rbp)
140e013f6:	4c 89 45 d8          	mov    %r8,-0x28(%rbp)
140e013fa:	4c 89 45 e0          	mov    %r8,-0x20(%rbp)
140e013fe:	4c 8b c6             	mov    %rsi,%r8
140e01401:	33 d2                	xor    %edx,%edx
140e01403:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140e01407:	e8 54 70 3a ff       	call   0x1401a8460
140e0140c:	90                   	nop
140e0140d:	41 8a cc             	mov    %r12b,%cl
140e01410:	e8 57 ae ff ff       	call   0x140dfc26c
140e01415:	48 8b f8             	mov    %rax,%rdi
140e01418:	48 89 45 c0          	mov    %rax,-0x40(%rbp)
140e0141c:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
140e01420:	e8 8b 0d b6 ff       	call   0x1409621b0
140e01425:	48 89 45 b8          	mov    %rax,-0x48(%rbp)
140e01429:	45 33 c0             	xor    %r8d,%r8d
140e0142c:	48 85 ff             	test   %rdi,%rdi
140e0142f:	74 2d                	je     0x140e0145e
140e01431:	48 8b 0f             	mov    (%rdi),%rcx
140e01434:	48 8b 41 10          	mov    0x10(%rcx),%rax
140e01438:	48 8b cf             	mov    %rdi,%rcx
140e0143b:	ff 15 df 25 18 00    	call   *0x1825df(%rip)        # 0x140f83a20
140e01441:	4c 8b c0             	mov    %rax,%r8
140e01444:	48 85 c0             	test   %rax,%rax
140e01447:	74 12                	je     0x140e0145b
140e01449:	48 8b 08             	mov    (%rax),%rcx
140e0144c:	48 8b 01             	mov    (%rcx),%rax
140e0144f:	41 8b d4             	mov    %r12d,%edx
140e01452:	49 8b c8             	mov    %r8,%rcx
140e01455:	ff 15 c5 25 18 00    	call   *0x1825c5(%rip)        # 0x140f83a20
140e0145b:	45 33 c0             	xor    %r8d,%r8d
140e0145e:	41 8a c8             	mov    %r8b,%cl
140e01461:	88 4d a8             	mov    %cl,-0x58(%rbp)
140e01464:	49 8b f8             	mov    %r8,%rdi
140e01467:	4d 8b f0             	mov    %r8,%r14
140e0146a:	41 bd fe ff ff ff    	mov    $0xfffffffe,%r13d
140e01470:	48 85 f6             	test   %rsi,%rsi
140e01473:	75 32                	jne    0x140e014a7
140e01475:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140e01479:	e8 d2 65 39 ff       	call   0x140197a50
140e0147e:	41 8b c5             	mov    %r13d,%eax
140e01481:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
140e01485:	48 33 cc             	xor    %rsp,%rcx
140e01488:	e8 73 a0 01 00       	call   0x140e1b500
140e0148d:	48 83 c4 78          	add    $0x78,%rsp
140e01491:	41 5f                	pop    %r15
140e01493:	41 5e                	pop    %r14
140e01495:	41 5d                	pop    %r13
140e01497:	41 5c                	pop    %r12
140e01499:	5f                   	pop    %rdi
140e0149a:	5e                   	pop    %rsi
140e0149b:	5b                   	pop    %rbx
140e0149c:	5d                   	pop    %rbp
140e0149d:	c3                   	ret
140e0149e:	66 41 3b 07          	cmp    (%r15),%ax
140e014a2:	74 0d                	je     0x140e014b1
140e014a4:	48 ff c7             	inc    %rdi
140e014a7:	41 0f b7 04 7f       	movzwl (%r15,%rdi,2),%eax
140e014ac:	66 85 c0             	test   %ax,%ax
140e014af:	75 ed                	jne    0x140e0149e
140e014b1:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
140e014b5:	48 83 7d e0 0f       	cmpq   $0xf,-0x20(%rbp)
140e014ba:	48 0f 47 45 c8       	cmova  -0x38(%rbp),%rax
140e014bf:	46 38 04 30          	cmp    %r8b,(%rax,%r14,1)
140e014c3:	74 1b                	je     0x140e014e0
140e014c5:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
140e014c9:	48 83 7d e0 0f       	cmpq   $0xf,-0x20(%rbp)
140e014ce:	48 0f 47 45 c8       	cmova  -0x38(%rbp),%rax
140e014d3:	4a 0f be 04 30       	movsbq (%rax,%r14,1),%rax
140e014d8:	48 03 f8             	add    %rax,%rdi
140e014db:	e9 58 01 00 00       	jmp    0x140e01638
140e014e0:	49 03 fc             	add    %r12,%rdi
140e014e3:	41 0f b7 04 7f       	movzwl (%r15,%rdi,2),%eax
140e014e8:	66 41 3b 07          	cmp    (%r15),%ax
140e014ec:	0f 84 1f 01 00 00    	je     0x140e01611
140e014f2:	66 85 c0             	test   %ax,%ax
140e014f5:	0f 84 16 01 00 00    	je     0x140e01611
140e014fb:	48 8b 55 b0          	mov    -0x50(%rbp),%rdx
140e014ff:	48 8b cb             	mov    %rbx,%rcx
140e01502:	e8 a1 5b 01 00       	call   0x140e170a8
140e01507:	45 33 c0             	xor    %r8d,%r8d
140e0150a:	84 c0                	test   %al,%al
140e0150c:	0f 85 02 01 00 00    	jne    0x140e01614
140e01512:	80 7d 68 01          	cmpb   $0x1,0x68(%rbp)
140e01516:	75 5d                	jne    0x140e01575
140e01518:	44 38 43 08          	cmp    %r8b,0x8(%rbx)
140e0151c:	75 49                	jne    0x140e01567
140e0151e:	48 8b 0b             	mov    (%rbx),%rcx
140e01521:	48 85 c9             	test   %rcx,%rcx
140e01524:	74 3a                	je     0x140e01560
140e01526:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e0152a:	48 8b 10             	mov    (%rax),%rdx
140e0152d:	48 85 d2             	test   %rdx,%rdx
140e01530:	74 0e                	je     0x140e01540
140e01532:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e01536:	44 39 00             	cmp    %r8d,(%rax)
140e01539:	7e 05                	jle    0x140e01540
140e0153b:	0f b7 02             	movzwl (%rdx),%eax
140e0153e:	eb 10                	jmp    0x140e01550
140e01540:	48 8b 01             	mov    (%rcx),%rax
140e01543:	48 8b 40 30          	mov    0x30(%rax),%rax
140e01547:	ff 15 d3 24 18 00    	call   *0x1824d3(%rip)        # 0x140f83a20
140e0154d:	45 33 c0             	xor    %r8d,%r8d
140e01550:	b9 ff ff 00 00       	mov    $0xffff,%ecx
140e01555:	66 3b c8             	cmp    %ax,%cx
140e01558:	74 06                	je     0x140e01560
140e0155a:	66 89 43 0a          	mov    %ax,0xa(%rbx)
140e0155e:	eb 03                	jmp    0x140e01563
140e01560:	4c 89 03             	mov    %r8,(%rbx)
140e01563:	c6 43 08 01          	movb   $0x1,0x8(%rbx)