1400410a0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1400410a5:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1400410aa:	55                   	push   %rbp
1400410ab:	57                   	push   %rdi
1400410ac:	41 56                	push   %r14
1400410ae:	48 8b ec             	mov    %rsp,%rbp
1400410b1:	48 83 ec 50          	sub    $0x50,%rsp
1400410b5:	48 8b 05 84 6f 03 00 	mov    0x36f84(%rip),%rax        # 0x140078040
1400410bc:	48 33 c4             	xor    %rsp,%rax
1400410bf:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
1400410c3:	49 8b d8             	mov    %r8,%rbx
1400410c6:	48 8b f2             	mov    %rdx,%rsi
1400410c9:	4c 8b f1             	mov    %rcx,%r14
1400410cc:	4c 8b 49 20          	mov    0x20(%rcx),%r9
1400410d0:	48 8b 51 38          	mov    0x38(%rcx),%rdx
1400410d4:	48 85 d2             	test   %rdx,%rdx
1400410d7:	79 1f                	jns    0x1400410f8
1400410d9:	48 8b c2             	mov    %rdx,%rax
1400410dc:	48 f7 d8             	neg    %rax
1400410df:	74 17                	je     0x1400410f8
1400410e1:	48 8b c2             	mov    %rdx,%rax
1400410e4:	48 f7 d0             	not    %rax
1400410e7:	48 c1 e8 05          	shr    $0x5,%rax
1400410eb:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
1400410f2:	00
1400410f3:	4c 2b c8             	sub    %rax,%r9
1400410f6:	eb 0b                	jmp    0x140041103
1400410f8:	48 8b c2             	mov    %rdx,%rax
1400410fb:	48 c1 e8 05          	shr    $0x5,%rax
1400410ff:	4d 8d 0c 81          	lea    (%r9,%rax,4),%r9
140041103:	83 e2 1f             	and    $0x1f,%edx
140041106:	4c 8d 42 ff          	lea    -0x1(%rdx),%r8
14004110a:	48 83 fa 01          	cmp    $0x1,%rdx
14004110e:	73 17                	jae    0x140041127
140041110:	49 8b c0             	mov    %r8,%rax
140041113:	48 f7 d0             	not    %rax
140041116:	48 c1 e8 05          	shr    $0x5,%rax
14004111a:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
140041121:	00
140041122:	4c 2b c8             	sub    %rax,%r9
140041125:	eb 0b                	jmp    0x140041132
140041127:	49 8b c8             	mov    %r8,%rcx
14004112a:	48 c1 e9 05          	shr    $0x5,%rcx
14004112e:	4d 8d 0c 89          	lea    (%r9,%rcx,4),%r9
140041132:	41 0f b6 c8          	movzbl %r8b,%ecx
140041136:	80 e1 1f             	and    $0x1f,%cl
140041139:	0f b6 d1             	movzbl %cl,%edx
14004113c:	41 8b 09             	mov    (%r9),%ecx
14004113f:	0f a3 d1             	bt     %edx,%ecx
140041142:	72 10                	jb     0x140041154
140041144:	c6 06 00             	movb   $0x0,(%rsi)
140041147:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
14004114e:	00
14004114f:	e9 47 02 00 00       	jmp    0x14004139b
140041154:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
140041158:	33 c0                	xor    %eax,%eax
14004115a:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
14004115e:	48 8b 1b             	mov    (%rbx),%rbx
140041161:	33 d2                	xor    %edx,%edx
140041163:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140041167:	e8 54 52 ff ff       	call   0x1400363c0
14004116c:	c6 45 d8 06          	movb   $0x6,-0x28(%rbp)
140041170:	48 89 5d e0          	mov    %rbx,-0x20(%rbp)
140041174:	49 8b 46 10          	mov    0x10(%r14),%rax
140041178:	49 2b 46 08          	sub    0x8(%r14),%rax
14004117c:	48 c1 f8 03          	sar    $0x3,%rax
140041180:	c6 45 d0 05          	movb   $0x5,-0x30(%rbp)
140041184:	89 45 e8             	mov    %eax,-0x18(%rbp)
140041187:	49 8b 8e a8 00 00 00 	mov    0xa8(%r14),%rcx
14004118e:	48 85 c9             	test   %rcx,%rcx
140041191:	75 07                	jne    0x14004119a
140041193:	ff 15 3f e1 01 00    	call   *0x1e13f(%rip)        # 0x14005f2d8
140041199:	cc                   	int3
14004119a:	48 8b 01             	mov    (%rcx),%rax
14004119d:	4c 8d 4d d8          	lea    -0x28(%rbp),%r9
1400411a1:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
1400411a5:	48 8d 55 e8          	lea    -0x18(%rbp),%rdx
1400411a9:	ff 50 10             	call   *0x10(%rax)
1400411ac:	84 c0                	test   %al,%al
1400411ae:	75 1d                	jne    0x1400411cd
1400411b0:	88 06                	mov    %al,(%rsi)
1400411b2:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
1400411b9:	00
1400411ba:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
1400411be:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
1400411c2:	e8 f9 51 ff ff       	call   0x1400363c0
1400411c7:	90                   	nop
1400411c8:	e9 ce 01 00 00       	jmp    0x14004139b
1400411cd:	49 8b 4e 10          	mov    0x10(%r14),%rcx
1400411d1:	49 39 4e 08          	cmp    %rcx,0x8(%r14)
1400411d5:	75 52                	jne    0x140041229
1400411d7:	0f b6 45 d8          	movzbl -0x28(%rbp),%eax
1400411db:	4c 8b 45 e0          	mov    -0x20(%rbp),%r8
1400411df:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
1400411e3:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
1400411ea:	00
1400411eb:	49 8b 0e             	mov    (%r14),%rcx
1400411ee:	0f b6 11             	movzbl (%rcx),%edx
1400411f1:	88 01                	mov    %al,(%rcx)
1400411f3:	88 55 e8             	mov    %dl,-0x18(%rbp)
1400411f6:	48 8b 41 08          	mov    0x8(%rcx),%rax
1400411fa:	4c 89 41 08          	mov    %r8,0x8(%rcx)
1400411fe:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140041202:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
140041206:	e8 b5 51 ff ff       	call   0x1400363c0
14004120b:	90                   	nop
14004120c:	49 8b 06             	mov    (%r14),%rax
14004120f:	c6 06 01             	movb   $0x1,(%rsi)
140041212:	48 89 46 08          	mov    %rax,0x8(%rsi)
140041216:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
14004121a:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
14004121e:	e8 9d 51 ff ff       	call   0x1400363c0
140041223:	90                   	nop
140041224:	e9 72 01 00 00       	jmp    0x14004139b
140041229:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14004122d:	48 85 c9             	test   %rcx,%rcx
140041230:	75 19                	jne    0x14004124b
140041232:	88 0e                	mov    %cl,(%rsi)
140041234:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
140041238:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
14004123c:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140041240:	e8 7b 51 ff ff       	call   0x1400363c0
140041245:	90                   	nop
140041246:	e9 50 01 00 00       	jmp    0x14004139b
14004124b:	80 39 02             	cmpb   $0x2,(%rcx)
14004124e:	75 66                	jne    0x1400412b6
140041250:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140041254:	48 8b 51 08          	mov    0x8(%rcx),%rdx
140041258:	48 3b 51 10          	cmp    0x10(%rcx),%rdx
14004125c:	74 21                	je     0x14004127f
14004125e:	0f b6 45 d8          	movzbl -0x28(%rbp),%eax
140041262:	88 02                	mov    %al,(%rdx)
140041264:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
140041268:	48 89 42 08          	mov    %rax,0x8(%rdx)
14004126c:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
140041270:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
140041277:	00
140041278:	48 83 41 08 10       	addq   $0x10,0x8(%rcx)
14004127d:	eb 09                	jmp    0x140041288
14004127f:	4c 8d 45 d8          	lea    -0x28(%rbp),%r8
140041283:	e8 d8 ab ff ff       	call   0x14003be60
140041288:	49 8b 46 10          	mov    0x10(%r14),%rax
14004128c:	48 8b 40 f8          	mov    -0x8(%rax),%rax
140041290:	48 8b 48 08          	mov    0x8(%rax),%rcx
140041294:	48 8b 41 08          	mov    0x8(%rcx),%rax
140041298:	48 83 e8 10          	sub    $0x10,%rax
14004129c:	c6 06 01             	movb   $0x1,(%rsi)
14004129f:	48 89 46 08          	mov    %rax,0x8(%rsi)
1400412a3:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
1400412a7:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
1400412ab:	e8 10 51 ff ff       	call   0x1400363c0
1400412b0:	90                   	nop
1400412b1:	e9 e5 00 00 00       	jmp    0x14004139b
1400412b6:	49 8b 5e 40          	mov    0x40(%r14),%rbx
1400412ba:	49 8b 4e 58          	mov    0x58(%r14),%rcx
1400412be:	48 85 c9             	test   %rcx,%rcx
1400412c1:	79 1f                	jns    0x1400412e2
1400412c3:	48 8b c1             	mov    %rcx,%rax
1400412c6:	48 f7 d8             	neg    %rax
1400412c9:	74 17                	je     0x1400412e2
1400412cb:	48 8b c1             	mov    %rcx,%rax
1400412ce:	48 f7 d0             	not    %rax
1400412d1:	48 c1 e8 05          	shr    $0x5,%rax
1400412d5:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
1400412dc:	00
1400412dd:	48 2b d8             	sub    %rax,%rbx
1400412e0:	eb 0b                	jmp    0x1400412ed
1400412e2:	48 8b c1             	mov    %rcx,%rax
1400412e5:	48 c1 e8 05          	shr    $0x5,%rax
1400412e9:	48 8d 1c 83          	lea    (%rbx,%rax,4),%rbx
1400412ed:	83 e1 1f             	and    $0x1f,%ecx
1400412f0:	48 8d 51 ff          	lea    -0x1(%rcx),%rdx
1400412f4:	48 8b c2             	mov    %rdx,%rax
1400412f7:	48 83 f9 01          	cmp    $0x1,%rcx
1400412fb:	73 14                	jae    0x140041311
1400412fd:	48 f7 d0             	not    %rax
140041300:	48 c1 e8 05          	shr    $0x5,%rax
140041304:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
14004130b:	00
14004130c:	48 2b d8             	sub    %rax,%rbx
14004130f:	eb 08                	jmp    0x140041319
140041311:	48 c1 e8 05          	shr    $0x5,%rax
140041315:	48 8d 1c 83          	lea    (%rbx,%rax,4),%rbx
140041319:	0f b6 c2             	movzbl %dl,%eax
14004131c:	24 1f                	and    $0x1f,%al
14004131e:	0f b6 f8             	movzbl %al,%edi
140041321:	8b 1b                	mov    (%rbx),%ebx
140041323:	49 8d 4e 40          	lea    0x40(%r14),%rcx
140041327:	e8 84 db ff ff       	call   0x14003eeb0
14004132c:	0f a3 fb             	bt     %edi,%ebx
14004132f:	72 1b                	jb     0x14004134c
140041331:	c6 06 00             	movb   $0x0,(%rsi)
140041334:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
14004133b:	00
14004133c:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
140041340:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140041344:	e8 77 50 ff ff       	call   0x1400363c0
140041349:	90                   	nop
14004134a:	eb 4f                	jmp    0x14004139b
14004134c:	0f b6 45 d8          	movzbl -0x28(%rbp),%eax
140041350:	4c 8b 45 e0          	mov    -0x20(%rbp),%r8
140041354:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
140041358:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
14004135f:	00
140041360:	49 8b 4e 60          	mov    0x60(%r14),%rcx
140041364:	0f b6 11             	movzbl (%rcx),%edx
140041367:	88 01                	mov    %al,(%rcx)
140041369:	88 55 e8             	mov    %dl,-0x18(%rbp)
14004136c:	48 8b 41 08          	mov    0x8(%rcx),%rax
140041370:	4c 89 41 08          	mov    %r8,0x8(%rcx)
140041374:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140041378:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
14004137c:	e8 3f 50 ff ff       	call   0x1400363c0
140041381:	90                   	nop
140041382:	c6 06 01             	movb   $0x1,(%rsi)
140041385:	49 8b 46 60          	mov    0x60(%r14),%rax
140041389:	48 89 46 08          	mov    %rax,0x8(%rsi)
14004138d:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
140041391:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140041395:	e8 26 50 ff ff       	call   0x1400363c0
14004139a:	90                   	nop
14004139b:	48 8b c6             	mov    %rsi,%rax
14004139e:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
1400413a2:	48 33 cc             	xor    %rsp,%rcx
1400413a5:	e8 56 84 01 00       	call   0x140059800
1400413aa:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
1400413af:	49 8b 5b 30          	mov    0x30(%r11),%rbx
1400413b3:	49 8b 73 38          	mov    0x38(%r11),%rsi
1400413b7:	49 8b e3             	mov    %r11,%rsp
1400413ba:	41 5e                	pop    %r14
1400413bc:	5f                   	pop    %rdi
1400413bd:	5d                   	pop    %rbp
1400413be:	c3                   	ret
1400413bf:	cc                   	int3
1400413c0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1400413c5:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1400413ca:	55                   	push   %rbp
1400413cb:	57                   	push   %rdi
1400413cc:	41 56                	push   %r14
1400413ce:	48 8b ec             	mov    %rsp,%rbp
1400413d1:	48 83 ec 50          	sub    $0x50,%rsp
1400413d5:	48 8b 05 64 6c 03 00 	mov    0x36c64(%rip),%rax        # 0x140078040
1400413dc:	48 33 c4             	xor    %rsp,%rax
1400413df:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
1400413e3:	49 8b d8             	mov    %r8,%rbx
1400413e6:	48 8b f2             	mov    %rdx,%rsi
1400413e9:	4c 8b f1             	mov    %rcx,%r14
1400413ec:	4c 8b 49 20          	mov    0x20(%rcx),%r9
1400413f0:	48 8b 51 38          	mov    0x38(%rcx),%rdx
1400413f4:	48 85 d2             	test   %rdx,%rdx
1400413f7:	79 1f                	jns    0x140041418
1400413f9:	48 8b c2             	mov    %rdx,%rax
1400413fc:	48 f7 d8             	neg    %rax
1400413ff:	74 17                	je     0x140041418
140041401:	48 8b c2             	mov    %rdx,%rax
140041404:	48 f7 d0             	not    %rax
140041407:	48 c1 e8 05          	shr    $0x5,%rax
14004140b:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
140041412:	00
140041413:	4c 2b c8             	sub    %rax,%r9
140041416:	eb 0b                	jmp    0x140041423
140041418:	48 8b c2             	mov    %rdx,%rax
14004141b:	48 c1 e8 05          	shr    $0x5,%rax
14004141f:	4d 8d 0c 81          	lea    (%r9,%rax,4),%r9
140041423:	83 e2 1f             	and    $0x1f,%edx
140041426:	4c 8d 42 ff          	lea    -0x1(%rdx),%r8
14004142a:	48 83 fa 01          	cmp    $0x1,%rdx
14004142e:	73 17                	jae    0x140041447
140041430:	49 8b c0             	mov    %r8,%rax
140041433:	48 f7 d0             	not    %rax
140041436:	48 c1 e8 05          	shr    $0x5,%rax
14004143a:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
140041441:	00
140041442:	4c 2b c8             	sub    %rax,%r9
140041445:	eb 0b                	jmp    0x140041452
140041447:	49 8b c8             	mov    %r8,%rcx
14004144a:	48 c1 e9 05          	shr    $0x5,%rcx
14004144e:	4d 8d 0c 89          	lea    (%r9,%rcx,4),%r9
140041452:	41 0f b6 c8          	movzbl %r8b,%ecx
140041456:	80 e1 1f             	and    $0x1f,%cl
140041459:	0f b6 d1             	movzbl %cl,%edx
14004145c:	41 8b 09             	mov    (%r9),%ecx
14004145f:	0f a3 d1             	bt     %edx,%ecx
140041462:	72 10                	jb     0x140041474
140041464:	c6 06 00             	movb   $0x0,(%rsi)
140041467:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
14004146e:	00
14004146f:	e9 47 02 00 00       	jmp    0x1400416bb
140041474:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
140041478:	33 c0                	xor    %eax,%eax
14004147a:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
14004147e:	48 8b 1b             	mov    (%rbx),%rbx
140041481:	33 d2                	xor    %edx,%edx
140041483:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140041487:	e8 34 4f ff ff       	call   0x1400363c0
14004148c:	c6 45 d8 05          	movb   $0x5,-0x28(%rbp)
140041490:	48 89 5d e0          	mov    %rbx,-0x20(%rbp)
140041494:	49 8b 46 10          	mov    0x10(%r14),%rax
140041498:	49 2b 46 08          	sub    0x8(%r14),%rax
14004149c:	48 c1 f8 03          	sar    $0x3,%rax
1400414a0:	c6 45 d0 05          	movb   $0x5,-0x30(%rbp)
1400414a4:	89 45 e8             	mov    %eax,-0x18(%rbp)
1400414a7:	49 8b 8e a8 00 00 00 	mov    0xa8(%r14),%rcx
1400414ae:	48 85 c9             	test   %rcx,%rcx
1400414b1:	75 07                	jne    0x1400414ba
1400414b3:	ff 15 1f de 01 00    	call   *0x1de1f(%rip)        # 0x14005f2d8
1400414b9:	cc                   	int3
1400414ba:	48 8b 01             	mov    (%rcx),%rax
1400414bd:	4c 8d 4d d8          	lea    -0x28(%rbp),%r9
1400414c1:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
1400414c5:	48 8d 55 e8          	lea    -0x18(%rbp),%rdx
1400414c9:	ff 50 10             	call   *0x10(%rax)
1400414cc:	84 c0                	test   %al,%al
1400414ce:	75 1d                	jne    0x1400414ed
1400414d0:	88 06                	mov    %al,(%rsi)
1400414d2:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
1400414d9:	00
1400414da:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
1400414de:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
1400414e2:	e8 d9 4e ff ff       	call   0x1400363c0
1400414e7:	90                   	nop
1400414e8:	e9 ce 01 00 00       	jmp    0x1400416bb
1400414ed:	49 8b 4e 10          	mov    0x10(%r14),%rcx
1400414f1:	49 39 4e 08          	cmp    %rcx,0x8(%r14)
1400414f5:	75 52                	jne    0x140041549
1400414f7:	0f b6 45 d8          	movzbl -0x28(%rbp),%eax
1400414fb:	4c 8b 45 e0          	mov    -0x20(%rbp),%r8
1400414ff:	c6 45 d8 00          	movb   $0x0,-0x28(%rbp)
140041503:	48 c7 45 e0 00 00 00 	movq   $0x0,-0x20(%rbp)
14004150a:	00
14004150b:	49 8b 0e             	mov    (%r14),%rcx
14004150e:	0f b6 11             	movzbl (%rcx),%edx
140041511:	88 01                	mov    %al,(%rcx)
140041513:	88 55 e8             	mov    %dl,-0x18(%rbp)
140041516:	48 8b 41 08          	mov    0x8(%rcx),%rax
14004151a:	4c 89 41 08          	mov    %r8,0x8(%rcx)
14004151e:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140041522:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
140041526:	e8 95 4e ff ff       	call   0x1400363c0
14004152b:	90                   	nop
14004152c:	49 8b 06             	mov    (%r14),%rax
14004152f:	c6 06 01             	movb   $0x1,(%rsi)
140041532:	48 89 46 08          	mov    %rax,0x8(%rsi)
140041536:	0f b6 55 d8          	movzbl -0x28(%rbp),%edx
14004153a:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
14004153e:	e8 7d 4e ff ff       	call   0x1400363c0
140041543:	90                   	nop
140041544:	e9 72 01 00 00       	jmp    0x1400416bb
140041549:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14004154d:	48 85 c9             	test   %rcx,%rcx