18001506b:	a8 01                	test   $0x1,%al
18001506d:	75 07                	jne    0x180015076
18001506f:	bf bb 00 00 c0       	mov    $0xc00000bb,%edi
180015074:	eb 48                	jmp    0x1800150be
180015076:	48 83 4d 87 ff       	orq    $0xffffffffffffffff,-0x79(%rbp)
18001507b:	48 8d 55 87          	lea    -0x79(%rbp),%rdx
18001507f:	48 c7 44 24 30 45 00 	movq   $0x45,0x30(%rsp)
180015086:	00 00
180015088:	41 b8 18 00 00 00    	mov    $0x18,%r8d
18001508e:	c7 44 24 30 45 00 01 	movl   $0x10045,0x30(%rsp)
180015095:	00
180015096:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
18001509b:	c7 45 8f 01 00 05 00 	movl   $0x50001,-0x71(%rbp)
1800150a2:	4c 89 75 97          	mov    %r14,-0x69(%rbp)
1800150a6:	e8 b5 fd 11 00       	call   0x180134e60
1800150ab:	66 85 c0             	test   %ax,%ax
1800150ae:	75 05                	jne    0x1800150b5
1800150b0:	41 8b fe             	mov    %r14d,%edi
1800150b3:	eb 09                	jmp    0x1800150be
1800150b5:	0f b7 f8             	movzwl %ax,%edi
1800150b8:	81 cf 00 00 35 c0    	or     $0xc0350000,%edi
1800150be:	e8 b1 fa ff ff       	call   0x180014b74
1800150c3:	8b c7                	mov    %edi,%eax
1800150c5:	4c 8d 9c 24 00 01 00 	lea    0x100(%rsp),%r11
1800150cc:	00
1800150cd:	49 8b 5b 38          	mov    0x38(%r11),%rbx
1800150d1:	49 8b 7b 40          	mov    0x40(%r11),%rdi
1800150d5:	49 8b e3             	mov    %r11,%rsp
1800150d8:	41 5f                	pop    %r15
1800150da:	41 5e                	pop    %r14
1800150dc:	41 5d                	pop    %r13
1800150de:	41 5c                	pop    %r12
1800150e0:	5d                   	pop    %rbp
1800150e1:	c3                   	ret
1800150e2:	cc                   	int3
1800150e3:	cc                   	int3
1800150e4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800150e9:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1800150ee:	56                   	push   %rsi
1800150ef:	57                   	push   %rdi
1800150f0:	41 56                	push   %r14
1800150f2:	48 83 ec 30          	sub    $0x30,%rsp
1800150f6:	8b f9                	mov    %ecx,%edi
1800150f8:	e8 97 e7 ff ff       	call   0x180013894
1800150fd:	33 ed                	xor    %ebp,%ebp
1800150ff:	84 c0                	test   %al,%al
180015101:	74 07                	je     0x18001510a
180015103:	33 c0                	xor    %eax,%eax
180015105:	e9 08 01 00 00       	jmp    0x180015212
18001510a:	48 8b 05 9f 73 15 00 	mov    0x15739f(%rip),%rax        # 0x18016c4b0
180015111:	4c 8b c5             	mov    %rbp,%r8
180015114:	44 8b cd             	mov    %ebp,%r9d
180015117:	48 8b 48 58          	mov    0x58(%rax),%rcx
18001511b:	48 85 c9             	test   %rcx,%rcx
18001511e:	74 10                	je     0x180015130
180015120:	66 39 69 06          	cmp    %bp,0x6(%rcx)
180015124:	76 0a                	jbe    0x180015130
180015126:	4c 8d 41 0c          	lea    0xc(%rcx),%r8
18001512a:	41 b9 20 00 00 00    	mov    $0x20,%r9d
180015130:	48 8b 15 01 02 19 00 	mov    0x190201(%rip),%rdx        # 0x1801a5338
180015137:	48 8d 44 24 60       	lea    0x60(%rsp),%rax
18001513c:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180015141:	8b cf                	mov    %edi,%ecx
180015143:	48 8d 44 24 58       	lea    0x58(%rsp),%rax
180015148:	48 89 6c 24 58       	mov    %rbp,0x58(%rsp)
18001514d:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180015152:	48 89 6c 24 60       	mov    %rbp,0x60(%rsp)
180015157:	e8 c4 6c 00 00       	call   0x18001be20
18001515c:	8b d8                	mov    %eax,%ebx
18001515e:	85 c0                	test   %eax,%eax
180015160:	0f 88 9c 00 00 00    	js     0x180015202
180015166:	4c 8b 74 24 58       	mov    0x58(%rsp),%r14
18001516b:	b8 48 02 00 00       	mov    $0x248,%eax
180015170:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
180015175:	41 39 06             	cmp    %eax,(%r14)
180015178:	77 6a                	ja     0x1800151e4
18001517a:	39 06                	cmp    %eax,(%rsi)
18001517c:	77 66                	ja     0x1800151e4
18001517e:	48 8b 0d bb ff 18 00 	mov    0x18ffbb(%rip),%rcx        # 0x1801a5140
180015185:	49 8b d6             	mov    %r14,%rdx
180015188:	45 8b 06             	mov    (%r14),%r8d
18001518b:	48 81 c1 b8 00 00 00 	add    $0xb8,%rcx
180015192:	e8 29 08 12 00       	call   0x1801359c0
180015197:	41 8b 0e             	mov    (%r14),%ecx
18001519a:	48 8b d6             	mov    %rsi,%rdx
18001519d:	48 8b 05 9c ff 18 00 	mov    0x18ff9c(%rip),%rax        # 0x1801a5140
1800151a4:	48 89 88 b0 00 00 00 	mov    %rcx,0xb0(%rax)
1800151ab:	48 8b 0d 8e ff 18 00 	mov    0x18ff8e(%rip),%rcx        # 0x1801a5140
1800151b2:	44 8b 06             	mov    (%rsi),%r8d
1800151b5:	48 81 c1 08 03 00 00 	add    $0x308,%rcx
1800151bc:	e8 ff 07 12 00       	call   0x1801359c0
1800151c1:	48 8b 05 78 ff 18 00 	mov    0x18ff78(%rip),%rax        # 0x1801a5140
1800151c8:	49 8b fe             	mov    %r14,%rdi
1800151cb:	8b 0e                	mov    (%rsi),%ecx
1800151cd:	48 89 88 00 03 00 00 	mov    %rcx,0x300(%rax)
1800151d4:	33 c0                	xor    %eax,%eax
1800151d6:	41 8b 0e             	mov    (%r14),%ecx
1800151d9:	f3 aa                	rep stos %al,%es:(%rdi)
1800151db:	8b 0e                	mov    (%rsi),%ecx
1800151dd:	48 8b fe             	mov    %rsi,%rdi
1800151e0:	f3 aa                	rep stos %al,%es:(%rdi)
1800151e2:	eb 05                	jmp    0x1800151e9
1800151e4:	bb e5 00 00 c0       	mov    $0xc00000e5,%ebx
1800151e9:	49 8b ce             	mov    %r14,%rcx
1800151ec:	e8 0b 4e 08 00       	call   0x180099ffc
1800151f1:	48 85 f6             	test   %rsi,%rsi
1800151f4:	74 08                	je     0x1800151fe
1800151f6:	48 8b ce             	mov    %rsi,%rcx
1800151f9:	e8 fe 4d 08 00       	call   0x180099ffc
1800151fe:	85 db                	test   %ebx,%ebx
180015200:	79 0e                	jns    0x180015210
180015202:	8b d3                	mov    %ebx,%edx
180015204:	b9 07 00 00 00       	mov    $0x7,%ecx
180015209:	e8 aa e8 07 00       	call   0x180093ab8
18001520e:	8b d8                	mov    %eax,%ebx
180015210:	8b c3                	mov    %ebx,%eax
180015212:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
180015217:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
18001521c:	48 83 c4 30          	add    $0x30,%rsp
180015220:	41 5e                	pop    %r14
180015222:	5f                   	pop    %rdi
180015223:	5e                   	pop    %rsi
180015224:	c3                   	ret
180015225:	cc                   	int3
180015226:	cc                   	int3
180015227:	cc                   	int3
180015228:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18001522d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180015232:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
180015237:	55                   	push   %rbp
180015238:	48 8b ec             	mov    %rsp,%rbp
18001523b:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
180015242:	83 65 f8 00          	andl   $0x0,-0x8(%rbp)
180015246:	48 8d 45 e8          	lea    -0x18(%rbp),%rax
18001524a:	48 83 65 e8 00       	andq   $0x0,-0x18(%rbp)
18001524f:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
180015253:	83 65 f4 00          	andl   $0x0,-0xc(%rbp)
180015257:	48 8b f1             	mov    %rcx,%rsi
18001525a:	83 65 f0 00          	andl   $0x0,-0x10(%rbp)
18001525e:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
180015262:	48 83 65 c0 00       	andq   $0x0,-0x40(%rbp)
180015267:	41 b9 00 10 00 00    	mov    $0x1000,%r9d
18001526d:	83 65 cc 00          	andl   $0x0,-0x34(%rbp)
180015271:	41 b8 00 02 00 00    	mov    $0x200,%r8d
180015277:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
18001527b:	c7 45 b0 64 5d c9 60 	movl   $0x60c95d64,-0x50(%rbp)
180015282:	c7 45 b4 e2 ad 87 42 	movl   $0x4287ade2,-0x4c(%rbp)
180015289:	c7 45 b8 90 60 f0 33 	movl   $0x33f06090,-0x48(%rbp)
180015290:	c7 45 bc 01 19 d0 2e 	movl   $0x2ed01901,-0x44(%rbp)
180015297:	e8 f0 28 08 00       	call   0x180097b8c
18001529c:	8b d8                	mov    %eax,%ebx
18001529e:	85 c0                	test   %eax,%eax
1800152a0:	0f 88 73 01 00 00    	js     0x180015419
1800152a6:	8b 45 f8             	mov    -0x8(%rbp),%eax
1800152a9:	4c 8d 4d c0          	lea    -0x40(%rbp),%r9
1800152ad:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
1800152b3:	48 8d 55 b0          	lea    -0x50(%rbp),%rdx
1800152b7:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
1800152bd:	41 b8 00 00 02 00    	mov    $0x20000,%r8d
1800152c3:	8d 0c 40             	lea    (%rax,%rax,2),%ecx
1800152c6:	c1 e1 04             	shl    $0x4,%ecx
1800152c9:	83 c1 10             	add    $0x10,%ecx
1800152cc:	89 4d c8             	mov    %ecx,-0x38(%rbp)
1800152cf:	33 c9                	xor    %ecx,%ecx
1800152d1:	e8 ca 50 07 00       	call   0x18008a3a0
1800152d6:	8b d8                	mov    %eax,%ebx
1800152d8:	85 c0                	test   %eax,%eax
1800152da:	0f 88 23 01 00 00    	js     0x180015403
1800152e0:	48 8b 7d c0          	mov    -0x40(%rbp),%rdi
1800152e4:	33 d2                	xor    %edx,%edx
1800152e6:	8b 5d c8             	mov    -0x38(%rbp),%ebx
1800152e9:	48 8b cf             	mov    %rdi,%rcx
1800152ec:	44 8b c3             	mov    %ebx,%r8d
1800152ef:	48 89 3d 22 fe 18 00 	mov    %rdi,0x18fe22(%rip)        # 0x1801a5118
1800152f6:	e8 85 09 12 00       	call   0x180135c80
1800152fb:	c7 07 01 00 00 00    	movl   $0x1,(%rdi)
180015301:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
180015305:	89 5f 04             	mov    %ebx,0x4(%rdi)
180015308:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
18001530c:	48 3b c8             	cmp    %rax,%rcx
18001530f:	0f 84 a2 00 00 00    	je     0x1800153b7
180015315:	48 8b 15 94 71 15 00 	mov    0x157194(%rip),%rdx        # 0x18016c4b0
18001531c:	4c 8d 57 30          	lea    0x30(%rdi),%r10
180015320:	44 8b 41 2c          	mov    0x2c(%rcx),%r8d
180015324:	45 8b c8             	mov    %r8d,%r9d
180015327:	41 c1 e9 1c          	shr    $0x1c,%r9d
18001532b:	41 8d 41 f3          	lea    -0xd(%r9),%eax
18001532f:	83 f8 01             	cmp    $0x1,%eax
180015332:	76 1d                	jbe    0x180015351
180015334:	41 8b c0             	mov    %r8d,%eax
180015337:	25 ff ff ff 0f       	and    $0xfffffff,%eax
18001533c:	41 83 f9 0f          	cmp    $0xf,%r9d
180015340:	75 05                	jne    0x180015347
180015342:	83 f8 01             	cmp    $0x1,%eax
180015345:	74 0a                	je     0x180015351
180015347:	83 f8 05             	cmp    $0x5,%eax
18001534a:	74 05                	je     0x180015351
18001534c:	83 f8 04             	cmp    $0x4,%eax
18001534f:	75 0c                	jne    0x18001535d
180015351:	48 8b 41 20          	mov    0x20(%rcx),%rax
180015355:	48 01 42 28          	add    %rax,0x28(%rdx)
180015359:	44 8b 41 2c          	mov    0x2c(%rcx),%r8d
18001535d:	41 81 f8 01 00 00 f0 	cmp    $0xf0000001,%r8d
180015364:	75 24                	jne    0x18001538a
180015366:	48 81 79 10 00 00 10 	cmpq   $0x100000,0x10(%rcx)
18001536d:	00
18001536e:	48 8b 41 20          	mov    0x20(%rcx),%rax
180015372:	73 0c                	jae    0x180015380
180015374:	48 3b 42 18          	cmp    0x18(%rdx),%rax
180015378:	76 10                	jbe    0x18001538a
18001537a:	48 89 42 18          	mov    %rax,0x18(%rdx)
18001537e:	eb 0a                	jmp    0x18001538a
180015380:	48 3b 42 20          	cmp    0x20(%rdx),%rax
180015384:	76 04                	jbe    0x18001538a
180015386:	48 89 42 20          	mov    %rax,0x20(%rdx)
18001538a:	48 8b 41 10          	mov    0x10(%rcx),%rax
18001538e:	49 89 42 f0          	mov    %rax,-0x10(%r10)
180015392:	48 8b 41 20          	mov    0x20(%rcx),%rax
180015396:	49 89 02             	mov    %rax,(%r10)
180015399:	8b 41 2c             	mov    0x2c(%rcx),%eax
18001539c:	41 89 42 0c          	mov    %eax,0xc(%r10)
1800153a0:	49 83 c2 30          	add    $0x30,%r10
1800153a4:	ff 47 08             	incl   0x8(%rdi)
1800153a7:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
1800153ab:	48 8b 09             	mov    (%rcx),%rcx
1800153ae:	48 3b c8             	cmp    %rax,%rcx
1800153b1:	0f 85 69 ff ff ff    	jne    0x180015320
1800153b7:	4c 8b 86 f0 00 00 00 	mov    0xf0(%rsi),%r8
1800153be:	33 c9                	xor    %ecx,%ecx
1800153c0:	39 4f 08             	cmp    %ecx,0x8(%rdi)
1800153c3:	76 1d                	jbe    0x1800153e2
1800153c5:	8b 57 08             	mov    0x8(%rdi),%edx
1800153c8:	48 8d 47 30          	lea    0x30(%rdi),%rax
1800153cc:	81 78 0c 04 00 00 f0 	cmpl   $0xf0000004,0xc(%rax)
1800153d3:	75 03                	jne    0x1800153d8
1800153d5:	48 03 08             	add    (%rax),%rcx
1800153d8:	48 83 c0 30          	add    $0x30,%rax
1800153dc:	48 83 ea 01          	sub    $0x1,%rdx
1800153e0:	75 ea                	jne    0x1800153cc
1800153e2:	8b 05 b8 e4 18 00    	mov    0x18e4b8(%rip),%eax        # 0x1801a38a0
1800153e8:	83 e0 01             	and    $0x1,%eax
1800153eb:	c1 e0 15             	shl    $0x15,%eax
1800153ee:	05 00 00 f0 00       	add    $0xf00000,%eax
1800153f3:	c1 e8 0c             	shr    $0xc,%eax
1800153f6:	03 c1                	add    %ecx,%eax
1800153f8:	41 89 80 10 01 00 00 	mov    %eax,0x110(%r8)
1800153ff:	33 db                	xor    %ebx,%ebx
180015401:	eb 16                	jmp    0x180015419
180015403:	48 83 7d c0 00       	cmpq   $0x0,-0x40(%rbp)
180015408:	74 0f                	je     0x180015419
18001540a:	4c 8d 45 c0          	lea    -0x40(%rbp),%r8
18001540e:	33 c9                	xor    %ecx,%ecx
180015410:	48 8d 55 b0          	lea    -0x50(%rbp),%rdx
180015414:	e8 1f 44 07 00       	call   0x180089838
180015419:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
18001541d:	e8 2a 2d 08 00       	call   0x18009814c
180015422:	4c 8d 9c 24 80 00 00 	lea    0x80(%rsp),%r11
180015429:	00
18001542a:	8b c3                	mov    %ebx,%eax
18001542c:	49 8b 5b 10          	mov    0x10(%r11),%rbx
180015430:	49 8b 73 18          	mov    0x18(%r11),%rsi
180015434:	49 8b 7b 20          	mov    0x20(%r11),%rdi
180015438:	49 8b e3             	mov    %r11,%rsp
18001543b:	5d                   	pop    %rbp
18001543c:	c3                   	ret
18001543d:	cc                   	int3
18001543e:	cc                   	int3
18001543f:	cc                   	int3
180015440:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180015445:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18001544a:	57                   	push   %rdi
18001544b:	48 83 ec 40          	sub    $0x40,%rsp
18001544f:	41 8b f9             	mov    %r9d,%edi
180015452:	8b da                	mov    %edx,%ebx
180015454:	48 8b f1             	mov    %rcx,%rsi
180015457:	e8 b8 f5 00 00       	call   0x180024a14
18001545c:	44 8b cf             	mov    %edi,%r9d
18001545f:	48 89 05 1a fe 18 00 	mov    %rax,0x18fe1a(%rip)        # 0x1801a5280
180015466:	44 8b c3             	mov    %ebx,%r8d
180015469:	48 8b d6             	mov    %rsi,%rdx
18001546c:	33 c9                	xor    %ecx,%ecx
18001546e:	e8 15 40 00 00       	call   0x180019488
180015473:	48 8b 15 be fd 18 00 	mov    0x18fdbe(%rip),%rdx        # 0x1801a5238
18001547a:	8b f8                	mov    %eax,%edi
18001547c:	48 8b 9a f0 00 00 00 	mov    0xf0(%rdx),%rbx
180015483:	e8 8c f5 00 00       	call   0x180024a14
180015488:	48 2b 05 f1 fd 18 00 	sub    0x18fdf1(%rip),%rax        # 0x1801a5280
18001548f:	48 8d 15 92 fc 12 00 	lea    0x12fc92(%rip),%rdx        # 0x180145128
180015496:	48 01 83 a8 00 00 00 	add    %rax,0xa8(%rbx)
18001549d:	41 b9 02 00 30 00    	mov    $0x300002,%r9d
1800154a3:	89 7c 24 20          	mov    %edi,0x20(%rsp)
1800154a7:	e8 9c fa fe ff       	call   0x180004f48
1800154ac:	85 ff                	test   %edi,%edi
1800154ae:	79 3a                	jns    0x1800154ea
1800154b0:	e8 17 c1 0a 00       	call   0x1800c15cc
1800154b5:	84 c0                	test   %al,%al
1800154b7:	74 31                	je     0x1800154ea
1800154b9:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1800154be:	e8 11 c2 0a 00       	call   0x1800c16d4
1800154c3:	4c 8b 5c 24 30       	mov    0x30(%rsp),%r11
1800154c8:	49 c1 eb 2c          	shr    $0x2c,%r11
1800154cc:	41 f6 c3 01          	test   $0x1,%r11b
1800154d0:	74 18                	je     0x1800154ea
1800154d2:	41 b9 0c 00 30 40    	mov    $0x4030000c,%r9d
1800154d8:	48 8d 15 21 01 13 00 	lea    0x130121(%rip),%rdx        # 0x180145600
1800154df:	89 7c 24 20          	mov    %edi,0x20(%rsp)
1800154e3:	e8 60 fa fe ff       	call   0x180004f48
1800154e8:	eb 2a                	jmp    0x180015514
1800154ea:	e8 91 c1 0a 00       	call   0x1800c1680
1800154ef:	84 c0                	test   %al,%al
1800154f1:	74 34                	je     0x180015527
1800154f3:	48 83 3d b5 a6 15 00 	cmpq   $0x0,0x15a6b5(%rip)        # 0x18016fbb0
1800154fa:	00
1800154fb:	74 33                	je     0x180015530
1800154fd:	48 8b 8e f0 00 00 00 	mov    0xf0(%rsi),%rcx
180015504:	48 8b 05 ad a6 15 00 	mov    0x15a6ad(%rip),%rax        # 0x18016fbb8
18001550b:	48 89 81 68 0b 00 00 	mov    %rax,0xb68(%rcx)
180015512:	33 ff                	xor    %edi,%edi
180015514:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
180015519:	8b c7                	mov    %edi,%eax
18001551b:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
180015520:	48 83 c4 40          	add    $0x40,%rsp
180015524:	5f                   	pop    %rdi
180015525:	c3                   	ret
180015526:	cc                   	int3
180015527:	80 3d 80 a6 15 00 00 	cmpb   $0x0,0x15a680(%rip)        # 0x18016fbae
18001552e:	74 cd                	je     0x1800154fd
180015530:	b9 01 00 00 00       	mov    $0x1,%ecx
180015535:	e8 0e d2 ff ff       	call   0x180012748
18001553a:	33 ff                	xor    %edi,%edi
18001553c:	85 c0                	test   %eax,%eax
18001553e:	0f 48 f8             	cmovs  %eax,%edi
180015541:	85 ff                	test   %edi,%edi
180015543:	79 b8                	jns    0x1800154fd
180015545:	41 b9 0d 00 30 40    	mov    $0x4030000d,%r9d
18001554b:	eb 8b                	jmp    0x1800154d8
18001554d:	cc                   	int3
18001554e:	cc                   	int3
18001554f:	cc                   	int3
180015550:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180015555:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18001555a:	57                   	push   %rdi
18001555b:	48 83 ec 30          	sub    $0x30,%rsp
18001555f:	8b 05 2f da 18 00    	mov    0x18da2f(%rip),%eax        # 0x1801a2f94
180015565:	33 ff                	xor    %edi,%edi
180015567:	4c 8b 81 f0 00 00 00 	mov    0xf0(%rcx),%r8
18001556e:	8b da                	mov    %edx,%ebx
180015570:	48 8b f1             	mov    %rcx,%rsi
180015573:	41 89 80 2c 0b 00 00 	mov    %eax,0xb2c(%r8)
18001557a:	0f ba e0 0b          	bt     $0xb,%eax