180011e86:	80 3f 01             	cmpb   $0x1,(%rdi)
180011e89:	0f 85 e4 00 00 00    	jne    0x180011f73
180011e8f:	48 39 5f 10          	cmp    %rbx,0x10(%rdi)
180011e93:	0f 86 da 00 00 00    	jbe    0x180011f73
180011e99:	b9 30 00 00 00       	mov    $0x30,%ecx
180011e9e:	e8 ad 7f 08 00       	call   0x180099e50
180011ea3:	4c 8b c8             	mov    %rax,%r9
180011ea6:	48 85 c0             	test   %rax,%rax
180011ea9:	0f 84 f1 00 00 00    	je     0x180011fa0
180011eaf:	80 7d 08 01          	cmpb   $0x1,0x8(%rbp)
180011eb3:	75 06                	jne    0x180011ebb
180011eb5:	41 0f b6 0e          	movzbl (%r14),%ecx
180011eb9:	eb 32                	jmp    0x180011eed
180011ebb:	38 1f                	cmp    %bl,(%rdi)
180011ebd:	75 21                	jne    0x180011ee0
180011ebf:	0f b6 47 0a          	movzbl 0xa(%rdi),%eax
180011ec3:	0f b6 4f 0b          	movzbl 0xb(%rdi),%ecx
180011ec7:	c1 e1 08             	shl    $0x8,%ecx
180011eca:	03 c8                	add    %eax,%ecx
180011ecc:	0f b6 47 09          	movzbl 0x9(%rdi),%eax
180011ed0:	c1 e1 08             	shl    $0x8,%ecx
180011ed3:	03 c8                	add    %eax,%ecx
180011ed5:	41 0f b6 06          	movzbl (%r14),%eax
180011ed9:	c1 e1 08             	shl    $0x8,%ecx
180011edc:	03 c8                	add    %eax,%ecx
180011ede:	eb 0d                	jmp    0x180011eed
180011ee0:	80 3f 02             	cmpb   $0x2,(%rdi)
180011ee3:	75 05                	jne    0x180011eea
180011ee5:	8b 4f 04             	mov    0x4(%rdi),%ecx
180011ee8:	eb 03                	jmp    0x180011eed
180011eea:	41 8b 0e             	mov    (%r14),%ecx
180011eed:	41 89 49 28          	mov    %ecx,0x28(%r9)
180011ef1:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
180011ef5:	48 c1 f9 0c          	sar    $0xc,%rcx
180011ef9:	49 89 49 18          	mov    %rcx,0x18(%r9)
180011efd:	48 8b 47 10          	mov    0x10(%rdi),%rax
180011f01:	48 c1 e8 0c          	shr    $0xc,%rax
180011f05:	48 03 c1             	add    %rcx,%rax
180011f08:	49 89 41 20          	mov    %rax,0x20(%r9)
180011f0c:	48 8b 05 8d dc 15 00 	mov    0x15dc8d(%rip),%rax        # 0x18016fba0
180011f13:	48 8b 15 7e dc 15 00 	mov    0x15dc7e(%rip),%rdx        # 0x18016fb98
180011f1a:	a8 01                	test   $0x1,%al
180011f1c:	74 0d                	je     0x180011f2b
180011f1e:	48 85 d2             	test   %rdx,%rdx
180011f21:	74 05                	je     0x180011f28
180011f23:	49 33 d4             	xor    %r12,%rdx
180011f26:	eb 03                	jmp    0x180011f2b
180011f28:	48 8b d3             	mov    %rbx,%rdx
180011f2b:	0f b6 c8             	movzbl %al,%ecx
180011f2e:	44 8a c3             	mov    %bl,%r8b
180011f31:	83 e1 01             	and    $0x1,%ecx
180011f34:	48 85 d2             	test   %rdx,%rdx
180011f37:	74 2f                	je     0x180011f68
180011f39:	4c 3b 6a 20          	cmp    0x20(%rdx),%r13
180011f3d:	73 0b                	jae    0x180011f4a
180011f3f:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
180011f44:	48 39 42 18          	cmp    %rax,0x18(%rdx)
180011f48:	72 06                	jb     0x180011f50
180011f4a:	4c 3b 6a 18          	cmp    0x18(%rdx),%r13
180011f4e:	72 37                	jb     0x180011f87
180011f50:	48 8b 42 08          	mov    0x8(%rdx),%rax
180011f54:	85 c9                	test   %ecx,%ecx
180011f56:	74 08                	je     0x180011f60
180011f58:	48 85 c0             	test   %rax,%rax
180011f5b:	74 08                	je     0x180011f65
180011f5d:	48 33 c2             	xor    %rdx,%rax
180011f60:	48 85 c0             	test   %rax,%rax
180011f63:	75 36                	jne    0x180011f9b
180011f65:	41 b0 01             	mov    $0x1,%r8b
180011f68:	49 8b cc             	mov    %r12,%rcx
180011f6b:	e8 08 0b 02 00       	call   0x180032a78
180011f70:	8a 4f 01             	mov    0x1(%rdi),%cl
180011f73:	0f b6 c1             	movzbl %cl,%eax
180011f76:	48 03 f8             	add    %rax,%rdi
180011f79:	4c 8d 77 02          	lea    0x2(%rdi),%r14
180011f7d:	4d 3b f7             	cmp    %r15,%r14
180011f80:	77 23                	ja     0x180011fa5
180011f82:	e9 e5 fe ff ff       	jmp    0x180011e6c
180011f87:	48 8b 02             	mov    (%rdx),%rax
180011f8a:	85 c9                	test   %ecx,%ecx
180011f8c:	74 08                	je     0x180011f96
180011f8e:	48 85 c0             	test   %rax,%rax
180011f91:	74 d5                	je     0x180011f68
180011f93:	48 33 c2             	xor    %rdx,%rax
180011f96:	48 85 c0             	test   %rax,%rax
180011f99:	74 cd                	je     0x180011f68
180011f9b:	48 8b d0             	mov    %rax,%rdx
180011f9e:	eb 99                	jmp    0x180011f39
180011fa0:	be 17 00 00 c0       	mov    $0xc0000017,%esi
180011fa5:	48 85 ed             	test   %rbp,%rbp
180011fa8:	74 08                	je     0x180011fb2
180011faa:	48 8b cd             	mov    %rbp,%rcx
180011fad:	e8 9e 12 08 00       	call   0x180093250
180011fb2:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
180011fb7:	8b c6                	mov    %esi,%eax
180011fb9:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
180011fbe:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
180011fc3:	48 83 c4 20          	add    $0x20,%rsp
180011fc7:	41 5f                	pop    %r15
180011fc9:	41 5e                	pop    %r14
180011fcb:	41 5d                	pop    %r13
180011fcd:	41 5c                	pop    %r12
180011fcf:	5f                   	pop    %rdi
180011fd0:	c3                   	ret
180011fd1:	cc                   	int3
180011fd2:	cc                   	int3
180011fd3:	cc                   	int3
180011fd4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180011fd9:	55                   	push   %rbp
180011fda:	56                   	push   %rsi
180011fdb:	57                   	push   %rdi
180011fdc:	41 54                	push   %r12
180011fde:	41 55                	push   %r13
180011fe0:	41 56                	push   %r14
180011fe2:	41 57                	push   %r15
180011fe4:	48 8b ec             	mov    %rsp,%rbp
180011fe7:	48 83 ec 50          	sub    $0x50,%rsp
180011feb:	48 8d 45 50          	lea    0x50(%rbp),%rax
180011fef:	41 b9 04 00 00 00    	mov    $0x4,%r9d
180011ff5:	4c 8d 05 5c a5 15 00 	lea    0x15a55c(%rip),%r8        # 0x18016c558
180011ffc:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180012001:	8b f1                	mov    %ecx,%esi
180012003:	e8 28 1a ff ff       	call   0x180003a30
180012008:	45 33 ed             	xor    %r13d,%r13d
18001200b:	85 c0                	test   %eax,%eax
18001200d:	0f 88 b7 01 00 00    	js     0x1800121ca
180012013:	4c 8b 75 50          	mov    0x50(%rbp),%r14
180012017:	4c 8d 4d 48          	lea    0x48(%rbp),%r9
18001201b:	49 8b d6             	mov    %r14,%rdx
18001201e:	4c 8d 05 fb 58 13 00 	lea    0x1358fb(%rip),%r8        # 0x180147920
180012025:	8b ce                	mov    %esi,%ecx
180012027:	e8 34 29 ff ff       	call   0x180004960
18001202c:	85 c0                	test   %eax,%eax
18001202e:	79 08                	jns    0x180012038
180012030:	41 8b c5             	mov    %r13d,%eax
180012033:	41 8b dd             	mov    %r13d,%ebx
180012036:	eb 03                	jmp    0x18001203b
180012038:	8b 5d 48             	mov    0x48(%rbp),%ebx
18001203b:	83 fb 03             	cmp    $0x3,%ebx
18001203e:	72 0a                	jb     0x18001204a
180012040:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
180012045:	e9 83 01 00 00       	jmp    0x1800121cd
18001204a:	85 db                	test   %ebx,%ebx
18001204c:	0f 84 7b 01 00 00    	je     0x1800121cd
180012052:	49 8b d6             	mov    %r14,%rdx
180012055:	8b ce                	mov    %esi,%ecx
180012057:	83 fb 01             	cmp    $0x1,%ebx
18001205a:	0f 85 02 01 00 00    	jne    0x180012162
180012060:	48 8d 45 58          	lea    0x58(%rbp),%rax
180012064:	45 33 c0             	xor    %r8d,%r8d
180012067:	4c 8d 4d e0          	lea    -0x20(%rbp),%r9
18001206b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180012070:	45 8b e5             	mov    %r13d,%r12d
180012073:	e8 3c 1a ff ff       	call   0x180003ab4
180012078:	85 c0                	test   %eax,%eax
18001207a:	0f 88 44 01 00 00    	js     0x1800121c4
180012080:	48 8d 3d f1 a4 15 00 	lea    0x15a4f1(%rip),%rdi        # 0x18016c578
180012087:	4c 8b 7d 58          	mov    0x58(%rbp),%r15
18001208b:	48 8d 15 b6 58 13 00 	lea    0x1358b6(%rip),%rdx        # 0x180147948
180012092:	49 8b cf             	mov    %r15,%rcx
180012095:	41 b8 04 00 00 00    	mov    $0x4,%r8d
18001209b:	41 ff c4             	inc    %r12d
18001209e:	e8 99 8d 11 00       	call   0x18012ae3c
1800120a3:	85 c0                	test   %eax,%eax
1800120a5:	0f 85 8d 00 00 00    	jne    0x180012138
1800120ab:	49 8d 57 08          	lea    0x8(%r15),%rdx
1800120af:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
1800120b3:	e8 0c b6 06 00       	call   0x18007d6c4
1800120b8:	4c 8d 45 50          	lea    0x50(%rbp),%r8
1800120bc:	ba 0a 00 00 00       	mov    $0xa,%edx
1800120c1:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
1800120c5:	e8 3e e7 01 00       	call   0x180030808
1800120ca:	85 c0                	test   %eax,%eax
1800120cc:	78 6a                	js     0x180012138
1800120ce:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
1800120d2:	4c 8d 4d 48          	lea    0x48(%rbp),%r9
1800120d6:	4c 8d 05 7b 58 13 00 	lea    0x13587b(%rip),%r8        # 0x180147958
1800120dd:	8b ce                	mov    %esi,%ecx
1800120df:	e8 7c 28 ff ff       	call   0x180004960
1800120e4:	44 8b 7d 48          	mov    0x48(%rbp),%r15d
1800120e8:	85 c0                	test   %eax,%eax
1800120ea:	45 0f 48 fd          	cmovs  %r13d,%r15d
1800120ee:	44 89 7d 48          	mov    %r15d,0x48(%rbp)
1800120f2:	45 85 ff             	test   %r15d,%r15d
1800120f5:	74 41                	je     0x180012138
1800120f7:	b9 18 00 00 00       	mov    $0x18,%ecx
1800120fc:	e8 4f 7d 08 00       	call   0x180099e50
180012101:	48 85 c0             	test   %rax,%rax
180012104:	74 55                	je     0x18001215b
180012106:	4c 89 28             	mov    %r13,(%rax)
180012109:	4c 89 68 08          	mov    %r13,0x8(%rax)
18001210d:	8b 4d 50             	mov    0x50(%rbp),%ecx
180012110:	89 48 10             	mov    %ecx,0x10(%rax)
180012113:	44 89 78 14          	mov    %r15d,0x14(%rax)
180012117:	48 8b 0d 62 a4 15 00 	mov    0x15a462(%rip),%rcx        # 0x18016c580
18001211e:	48 39 39             	cmp    %rdi,(%rcx)
180012121:	0f 85 85 00 00 00    	jne    0x1800121ac
180012127:	48 89 38             	mov    %rdi,(%rax)
18001212a:	48 89 48 08          	mov    %rcx,0x8(%rax)
18001212e:	48 89 01             	mov    %rax,(%rcx)
180012131:	48 89 05 48 a4 15 00 	mov    %rax,0x15a448(%rip)        # 0x18016c580
180012138:	48 8d 45 58          	lea    0x58(%rbp),%rax
18001213c:	45 8b c4             	mov    %r12d,%r8d
18001213f:	4c 8d 4d e0          	lea    -0x20(%rbp),%r9
180012143:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180012148:	49 8b d6             	mov    %r14,%rdx
18001214b:	8b ce                	mov    %esi,%ecx
18001214d:	e8 62 19 ff ff       	call   0x180003ab4
180012152:	85 c0                	test   %eax,%eax
180012154:	78 6e                	js     0x1800121c4
180012156:	e9 2c ff ff ff       	jmp    0x180012087
18001215b:	b8 17 00 00 c0       	mov    $0xc0000017,%eax
180012160:	eb 6b                	jmp    0x1800121cd
180012162:	4c 8d 4d 48          	lea    0x48(%rbp),%r9
180012166:	4c 8d 05 eb 57 13 00 	lea    0x1357eb(%rip),%r8        # 0x180147958
18001216d:	e8 ee 27 ff ff       	call   0x180004960
180012172:	85 c0                	test   %eax,%eax
180012174:	78 57                	js     0x1800121cd
180012176:	b9 18 00 00 00       	mov    $0x18,%ecx
18001217b:	e8 d0 7c 08 00       	call   0x180099e50
180012180:	48 8b c8             	mov    %rax,%rcx
180012183:	48 85 c0             	test   %rax,%rax
180012186:	74 d3                	je     0x18001215b
180012188:	4c 89 28             	mov    %r13,(%rax)
18001218b:	48 8d 3d e6 a3 15 00 	lea    0x15a3e6(%rip),%rdi        # 0x18016c578
180012192:	4c 89 68 08          	mov    %r13,0x8(%rax)
180012196:	44 89 68 10          	mov    %r13d,0x10(%rax)
18001219a:	8b 45 48             	mov    0x48(%rbp),%eax
18001219d:	89 41 14             	mov    %eax,0x14(%rcx)
1800121a0:	48 8b 05 d9 a3 15 00 	mov    0x15a3d9(%rip),%rax        # 0x18016c580
1800121a7:	48 39 38             	cmp    %rdi,(%rax)
1800121aa:	74 07                	je     0x1800121b3
1800121ac:	b9 03 00 00 00       	mov    $0x3,%ecx
1800121b1:	cd 29                	int    $0x29
1800121b3:	48 89 39             	mov    %rdi,(%rcx)
1800121b6:	48 89 41 08          	mov    %rax,0x8(%rcx)
1800121ba:	48 89 08             	mov    %rcx,(%rax)
1800121bd:	48 89 0d bc a3 15 00 	mov    %rcx,0x15a3bc(%rip)        # 0x18016c580
1800121c4:	89 1d de d9 15 00    	mov    %ebx,0x15d9de(%rip)        # 0x18016fba8
1800121ca:	41 8b c5             	mov    %r13d,%eax
1800121cd:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
1800121d4:	00
1800121d5:	48 83 c4 50          	add    $0x50,%rsp
1800121d9:	41 5f                	pop    %r15
1800121db:	41 5e                	pop    %r14
1800121dd:	41 5d                	pop    %r13
1800121df:	41 5c                	pop    %r12
1800121e1:	5f                   	pop    %rdi
1800121e2:	5e                   	pop    %rsi
1800121e3:	5d                   	pop    %rbp
1800121e4:	c3                   	ret
1800121e5:	cc                   	int3
1800121e6:	cc                   	int3
1800121e7:	cc                   	int3
1800121e8:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1800121ed:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1800121f2:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1800121f7:	57                   	push   %rdi
1800121f8:	41 54                	push   %r12
1800121fa:	41 55                	push   %r13
1800121fc:	41 56                	push   %r14
1800121fe:	41 57                	push   %r15
180012200:	48 83 ec 50          	sub    $0x50,%rsp
180012204:	48 8b d9             	mov    %rcx,%rbx
180012207:	48 8b f2             	mov    %rdx,%rsi
18001220a:	33 c9                	xor    %ecx,%ecx
18001220c:	ba 00 00 10 00       	mov    $0x100000,%edx
180012211:	4d 8b e0             	mov    %r8,%r12
180012214:	48 3b da             	cmp    %rdx,%rbx
180012217:	73 13                	jae    0x18001222c
180012219:	8b c2                	mov    %edx,%eax
18001221b:	48 2b c3             	sub    %rbx,%rax
18001221e:	48 3b f0             	cmp    %rax,%rsi
180012221:	0f 86 ca 01 00 00    	jbe    0x1800123f1
180012227:	48 2b f0             	sub    %rax,%rsi
18001222a:	8b da                	mov    %edx,%ebx
18001222c:	48 8d 93 ff ff 03 00 	lea    0x3ffff(%rbx),%rdx
180012233:	49 c7 c1 00 00 fc ff 	mov    $0xfffffffffffc0000,%r9
18001223a:	49 23 d1             	and    %r9,%rdx
18001223d:	48 8b c2             	mov    %rdx,%rax
180012240:	48 2b c3             	sub    %rbx,%rax
180012243:	74 0f                	je     0x180012254
180012245:	48 3b f0             	cmp    %rax,%rsi
180012248:	0f 86 a3 01 00 00    	jbe    0x1800123f1
18001224e:	48 2b f0             	sub    %rax,%rsi
180012251:	48 8b da             	mov    %rdx,%rbx
180012254:	49 23 f1             	and    %r9,%rsi
180012257:	0f 84 94 01 00 00    	je     0x1800123f1
18001225d:	48 8b 15 3c d9 15 00 	mov    0x15d93c(%rip),%rdx        # 0x18016fba0
180012264:	4c 8d 2c 33          	lea    (%rbx,%rsi,1),%r13
180012268:	48 8b 05 29 d9 15 00 	mov    0x15d929(%rip),%rax        # 0x18016fb98
18001226f:	f6 c2 01             	test   $0x1,%dl
180012272:	74 0f                	je     0x180012283
180012274:	48 85 c0             	test   %rax,%rax
180012277:	74 0a                	je     0x180012283
180012279:	4c 8d 05 18 d9 15 00 	lea    0x15d918(%rip),%r8        # 0x18016fb98
180012280:	49 33 c0             	xor    %r8,%rax
180012283:	44 0f b6 c2          	movzbl %dl,%r8d
180012287:	41 83 e0 01          	and    $0x1,%r8d
18001228b:	48 85 c0             	test   %rax,%rax
18001228e:	0f 84 5d 01 00 00    	je     0x1800123f1
180012294:	48 3b 58 20          	cmp    0x20(%rax),%rbx
180012298:	73 06                	jae    0x1800122a0
18001229a:	4c 39 68 18          	cmp    %r13,0x18(%rax)
18001229e:	72 23                	jb     0x1800122c3
1800122a0:	48 3b 58 18          	cmp    0x18(%rax),%rbx
1800122a4:	73 05                	jae    0x1800122ab
1800122a6:	48 8b 10             	mov    (%rax),%rdx
1800122a9:	eb 04                	jmp    0x1800122af
1800122ab:	48 8b 50 08          	mov    0x8(%rax),%rdx
1800122af:	45 85 c0             	test   %r8d,%r8d
1800122b2:	74 0a                	je     0x1800122be
1800122b4:	48 85 d2             	test   %rdx,%rdx
1800122b7:	74 05                	je     0x1800122be
1800122b9:	48 33 c2             	xor    %rdx,%rax
1800122bc:	eb cd                	jmp    0x18001228b
1800122be:	48 8b c2             	mov    %rdx,%rax
1800122c1:	eb c8                	jmp    0x18001228b
1800122c3:	48 85 c0             	test   %rax,%rax
1800122c6:	0f 84 25 01 00 00    	je     0x1800123f1
1800122cc:	48 3b 58 18          	cmp    0x18(%rax),%rbx
1800122d0:	48 8d 15 a1 a2 15 00 	lea    0x15a2a1(%rip),%rdx        # 0x18016c578
1800122d7:	48 8b 3d 9a a2 15 00 	mov    0x15a29a(%rip),%rdi        # 0x18016c578
1800122de:	4c 8b f3             	mov    %rbx,%r14
1800122e1:	4c 0f 46 70 18       	cmovbe 0x18(%rax),%r14
1800122e6:	4d 8b fd             	mov    %r13,%r15
1800122e9:	4c 3b 68 20          	cmp    0x20(%rax),%r13
1800122ed:	4c 0f 43 78 20       	cmovae 0x20(%rax),%r15
1800122f2:	48 3b fa             	cmp    %rdx,%rdi
1800122f5:	0f 84 bb 00 00 00    	je     0x1800123b6
1800122fb:	8b 48 28             	mov    0x28(%rax),%ecx
1800122fe:	39 4f 10             	cmp    %ecx,0x10(%rdi)
180012301:	74 0d                	je     0x180012310
180012303:	48 8b 3f             	mov    (%rdi),%rdi
180012306:	48 3b fa             	cmp    %rdx,%rdi
180012309:	75 f3                	jne    0x1800122fe
18001230b:	e9 a6 00 00 00       	jmp    0x1800123b6
180012310:	8b 6f 14             	mov    0x14(%rdi),%ebp
180012313:	49 8b c6             	mov    %r14,%rax
180012316:	48 c1 e0 0c          	shl    $0xc,%rax
18001231a:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
18001231f:	49 8b c7             	mov    %r15,%rax
180012322:	48 c1 e0 0c          	shl    $0xc,%rax
180012326:	48 c1 e5 12          	shl    $0x12,%rbp
18001232a:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
18001232f:	49 8b c7             	mov    %r15,%rax
180012332:	49 2b c6             	sub    %r14,%rax
180012335:	48 3b e8             	cmp    %rax,%rbp
180012338:	48 0f 43 e8          	cmovae %rax,%rbp
18001233c:	49 23 e9             	and    %r9,%rbp