14016301a:	85 c0                	test   %eax,%eax
14016301c:	0f 84 9a 00 00 00    	je     0x1401630bc
140163022:	48 8b ce             	mov    %rsi,%rcx
140163025:	e8 86 96 f8 ff       	call   0x1400ec6b0
14016302a:	48 8b c8             	mov    %rax,%rcx
14016302d:	48 8b d5             	mov    %rbp,%rdx
140163030:	e8 db bd ff ff       	call   0x14015ee10
140163035:	85 c0                	test   %eax,%eax
140163037:	7f 3c                	jg     0x140163075
140163039:	85 ff                	test   %edi,%edi
14016303b:	78 7f                	js     0x1401630bc
14016303d:	85 c0                	test   %eax,%eax
14016303f:	75 34                	jne    0x140163075
140163041:	85 ff                	test   %edi,%edi
140163043:	79 08                	jns    0x14016304d
140163045:	8b bb ac 00 00 00    	mov    0xac(%rbx),%edi
14016304b:	eb 06                	jmp    0x140163053
14016304d:	89 bb ac 00 00 00    	mov    %edi,0xac(%rbx)
140163053:	48 85 f6             	test   %rsi,%rsi
140163056:	75 11                	jne    0x140163069
140163058:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14016305f:	8b d7                	mov    %edi,%edx
140163061:	e8 da 89 f8 ff       	call   0x1400eba40
140163066:	48 8b f0             	mov    %rax,%rsi
140163069:	c7 83 b0 00 00 00 0e 	movl   $0xe,0xb0(%rbx)
140163070:	00 00 00
140163073:	eb 34                	jmp    0x1401630a9
140163075:	79 49                	jns    0x1401630c0
140163077:	85 ff                	test   %edi,%edi
140163079:	79 08                	jns    0x140163083
14016307b:	8b bb ac 00 00 00    	mov    0xac(%rbx),%edi
140163081:	eb 06                	jmp    0x140163089
140163083:	89 bb ac 00 00 00    	mov    %edi,0xac(%rbx)
140163089:	48 85 f6             	test   %rsi,%rsi
14016308c:	75 11                	jne    0x14016309f
14016308e:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
140163095:	8b d7                	mov    %edi,%edx
140163097:	e8 a4 89 f8 ff       	call   0x1400eba40
14016309c:	48 8b f0             	mov    %rax,%rsi
14016309f:	c7 83 b0 00 00 00 0a 	movl   $0xa,0xb0(%rbx)
1401630a6:	00 00 00
1401630a9:	48 8b d3             	mov    %rbx,%rdx
1401630ac:	48 89 b3 b8 00 00 00 	mov    %rsi,0xb8(%rbx)
1401630b3:	33 c9                	xor    %ecx,%ecx
1401630b5:	ff 53 38             	call   *0x38(%rbx)
1401630b8:	85 c0                	test   %eax,%eax
1401630ba:	75 04                	jne    0x1401630c0
1401630bc:	33 c0                	xor    %eax,%eax
1401630be:	eb 05                	jmp    0x1401630c5
1401630c0:	b8 01 00 00 00       	mov    $0x1,%eax
1401630c5:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401630ca:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1401630cf:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1401630d4:	48 83 c4 20          	add    $0x20,%rsp
1401630d8:	5f                   	pop    %rdi
1401630d9:	c3                   	ret
1401630da:	cc                   	int3
1401630db:	cc                   	int3
1401630dc:	cc                   	int3
1401630dd:	cc                   	int3
1401630de:	cc                   	int3
1401630df:	cc                   	int3
1401630e0:	40 53                	rex push %rbx
1401630e2:	b8 20 00 00 00       	mov    $0x20,%eax
1401630e7:	e8 44 da 14 00       	call   0x1402b0b30
1401630ec:	48 2b e0             	sub    %rax,%rsp
1401630ef:	48 8b d9             	mov    %rcx,%rbx
1401630f2:	e8 89 c2 ff ff       	call   0x14015f380
1401630f7:	8b c8                	mov    %eax,%ecx
1401630f9:	85 c0                	test   %eax,%eax
1401630fb:	0f 8e 34 01 00 00    	jle    0x140163235
140163101:	48 8b cb             	mov    %rbx,%rcx
140163104:	e8 27 d4 ff ff       	call   0x140160530
140163109:	8b c8                	mov    %eax,%ecx
14016310b:	85 c0                	test   %eax,%eax
14016310d:	0f 8e 22 01 00 00    	jle    0x140163235
140163113:	48 8b cb             	mov    %rbx,%rcx
140163116:	e8 75 cc ff ff       	call   0x14015fd90
14016311b:	8b c8                	mov    %eax,%ecx
14016311d:	85 c0                	test   %eax,%eax
14016311f:	0f 8e 10 01 00 00    	jle    0x140163235
140163125:	48 8b cb             	mov    %rbx,%rcx
140163128:	e8 33 dc ff ff       	call   0x140160d60
14016312d:	8b c8                	mov    %eax,%ecx
14016312f:	85 c0                	test   %eax,%eax
140163131:	0f 8e fe 00 00 00    	jle    0x140163235
140163137:	48 8b 93 98 00 00 00 	mov    0x98(%rbx),%rdx
14016313e:	33 c9                	xor    %ecx,%ecx
140163140:	e8 cb bd ff ff       	call   0x14015ef10
140163145:	85 c0                	test   %eax,%eax
140163147:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
14016314c:	ba 01 00 00 00       	mov    $0x1,%edx
140163151:	0f 45 ca             	cmovne %edx,%ecx
140163154:	0f 84 db 00 00 00    	je     0x140163235
14016315a:	48 8b cb             	mov    %rbx,%rcx
14016315d:	ff 53 50             	call   *0x50(%rbx)
140163160:	8b c8                	mov    %eax,%ecx
140163162:	85 c0                	test   %eax,%eax
140163164:	0f 8e cb 00 00 00    	jle    0x140163235
14016316a:	48 8b 43 20          	mov    0x20(%rbx),%rax
14016316e:	48 8d 8b ac 00 00 00 	lea    0xac(%rbx),%rcx
140163175:	4c 8b 83 98 00 00 00 	mov    0x98(%rbx),%r8
14016317c:	33 d2                	xor    %edx,%edx
14016317e:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
140163183:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140163188:	44 8b 48 14          	mov    0x14(%rax),%r9d
14016318c:	e8 0f 0f fa ff       	call   0x1401040a0
140163191:	8b f0                	mov    %eax,%esi
140163193:	85 c0                	test   %eax,%eax
140163195:	74 3b                	je     0x1401631d2
140163197:	8b 93 ac 00 00 00    	mov    0xac(%rbx),%edx
14016319d:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
1401631a4:	e8 97 88 f8 ff       	call   0x1400eba40
1401631a9:	48 8b d3             	mov    %rbx,%rdx
1401631ac:	48 89 83 b8 00 00 00 	mov    %rax,0xb8(%rbx)
1401631b3:	33 c9                	xor    %ecx,%ecx
1401631b5:	89 b3 b0 00 00 00    	mov    %esi,0xb0(%rbx)
1401631bb:	ff 53 38             	call   *0x38(%rbx)
1401631be:	85 c0                	test   %eax,%eax
1401631c0:	75 10                	jne    0x1401631d2
1401631c2:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
1401631c7:	48 8b 7c 24 38       	mov    0x38(%rsp),%rdi
1401631cc:	48 83 c4 20          	add    $0x20,%rsp
1401631d0:	5b                   	pop    %rbx
1401631d1:	c3                   	ret
1401631d2:	48 8b 43 30          	mov    0x30(%rbx),%rax
1401631d6:	48 8b cb             	mov    %rbx,%rcx
1401631d9:	48 85 c0             	test   %rax,%rax
1401631dc:	74 04                	je     0x1401631e2
1401631de:	ff d0                	call   *%rax
1401631e0:	eb 05                	jmp    0x1401631e7
1401631e2:	e8 d9 fa ff ff       	call   0x140162cc0
1401631e7:	85 c0                	test   %eax,%eax
1401631e9:	7e d7                	jle    0x1401631c2
1401631eb:	48 8b cb             	mov    %rbx,%rcx
1401631ee:	e8 6d de ff ff       	call   0x140161060
1401631f3:	85 c0                	test   %eax,%eax
1401631f5:	7e cb                	jle    0x1401631c2
1401631f7:	48 8b cb             	mov    %rbx,%rcx
1401631fa:	e8 31 d4 00 00       	call   0x140170630
1401631ff:	85 c0                	test   %eax,%eax
140163201:	7e bf                	jle    0x1401631c2
140163203:	48 8b cb             	mov    %rbx,%rcx
140163206:	e8 35 f1 00 00       	call   0x140172340
14016320b:	8b c8                	mov    %eax,%ecx
14016320d:	85 c0                	test   %eax,%eax
14016320f:	7e b1                	jle    0x1401631c2
140163211:	48 8b 43 20          	mov    0x20(%rbx),%rax
140163215:	f6 40 14 80          	testb  $0x80,0x14(%rax)
140163219:	74 08                	je     0x140163223
14016321b:	48 8b cb             	mov    %rbx,%rcx
14016321e:	ff 53 70             	call   *0x70(%rbx)
140163221:	8b c8                	mov    %eax,%ecx
140163223:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
140163228:	8b c1                	mov    %ecx,%eax
14016322a:	48 8b 7c 24 38       	mov    0x38(%rsp),%rdi
14016322f:	48 83 c4 20          	add    $0x20,%rsp
140163233:	5b                   	pop    %rbx
140163234:	c3                   	ret
140163235:	8b c1                	mov    %ecx,%eax
140163237:	48 83 c4 20          	add    $0x20,%rsp
14016323b:	5b                   	pop    %rbx
14016323c:	c3                   	ret
14016323d:	cc                   	int3
14016323e:	cc                   	int3
14016323f:	cc                   	int3
140163240:	40 55                	rex push %rbp
140163242:	41 54                	push   %r12
140163244:	41 55                	push   %r13
140163246:	41 56                	push   %r14
140163248:	41 57                	push   %r15
14016324a:	b8 50 00 00 00       	mov    $0x50,%eax
14016324f:	e8 dc d8 14 00       	call   0x1402b0b30
140163254:	48 2b e0             	sub    %rax,%rsp
140163257:	48 8d 6c 24 40       	lea    0x40(%rsp),%rbp
14016325c:	48 89 5d 40          	mov    %rbx,0x40(%rbp)
140163260:	48 89 75 48          	mov    %rsi,0x48(%rbp)
140163264:	48 89 7d 50          	mov    %rdi,0x50(%rbp)
140163268:	48 8b 05 11 28 27 00 	mov    0x272811(%rip),%rax        # 0x1403d5a80
14016326f:	48 33 c5             	xor    %rbp,%rax
140163272:	48 89 45 00          	mov    %rax,0x0(%rbp)
140163276:	4c 8b f9             	mov    %rcx,%r15
140163279:	45 33 c0             	xor    %r8d,%r8d
14016327c:	48 8d 0d a5 07 1b 00 	lea    0x1b07a5(%rip),%rcx        # 0x140313a28
140163283:	33 d2                	xor    %edx,%edx
140163285:	ff 15 85 20 18 00    	call   *0x182085(%rip)        # 0x1402e5310
14016328b:	85 c0                	test   %eax,%eax
14016328d:	0f 84 7f 02 00 00    	je     0x140163512
140163293:	33 ff                	xor    %edi,%edi
140163295:	44 8b f7             	mov    %edi,%r14d
140163298:	8b df                	mov    %edi,%ebx
14016329a:	44 8d 67 08          	lea    0x8(%rdi),%r12d
14016329e:	ff 15 e4 20 18 00    	call   *0x1820e4(%rip)        # 0x1402e5388
1401632a4:	8b f0                	mov    %eax,%esi
1401632a6:	05 d4 3b ff ff       	add    $0xffff3bd4,%eax
1401632ab:	83 f8 09             	cmp    $0x9,%eax
1401632ae:	77 0a                	ja     0x1401632ba
1401632b0:	b9 a7 02 00 00       	mov    $0x2a7,%ecx
1401632b5:	0f a3 c1             	bt     %eax,%ecx
1401632b8:	72 18                	jb     0x1401632d2
1401632ba:	8d 8e 56 21 ff ff    	lea    -0xdeaa(%rsi),%ecx
1401632c0:	83 f9 09             	cmp    $0x9,%ecx
1401632c3:	76 0d                	jbe    0x1401632d2
1401632c5:	81 fe e8 fd 00 00    	cmp    $0xfde8,%esi
1401632cb:	74 05                	je     0x1401632d2
1401632cd:	83 fe 2a             	cmp    $0x2a,%esi
1401632d0:	75 03                	jne    0x1401632d5
1401632d2:	44 8b e7             	mov    %edi,%r12d
1401632d5:	89 7c 24 28          	mov    %edi,0x28(%rsp)
1401632d9:	41 b9 ff ff ff ff    	mov    $0xffffffff,%r9d
1401632df:	4d 8b c7             	mov    %r15,%r8
1401632e2:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1401632e7:	41 8b d4             	mov    %r12d,%edx
1401632ea:	8b ce                	mov    %esi,%ecx
1401632ec:	ff 15 fe 1e 18 00    	call   *0x181efe(%rip)        # 0x1402e51f0
1401632f2:	4c 63 e8             	movslq %eax,%r13
1401632f5:	85 c0                	test   %eax,%eax
1401632f7:	0f 8e 10 02 00 00    	jle    0x14016350d
1401632fd:	49 8b d5             	mov    %r13,%rdx
140163300:	4c 8b c7             	mov    %rdi,%r8
140163303:	48 03 d2             	add    %rdx,%rdx
140163306:	48 8d 4a 10          	lea    0x10(%rdx),%rcx
14016330a:	48 3b ca             	cmp    %rdx,%rcx
14016330d:	4c 0f 47 c1          	cmova  %rcx,%r8
140163311:	4d 85 c0             	test   %r8,%r8
140163314:	0f 84 f3 01 00 00    	je     0x14016350d
14016331a:	48 b9 f0 ff ff ff ff 	movabs $0xffffffffffffff0,%rcx
140163321:	ff ff 0f
140163324:	49 81 f8 00 04 00 00 	cmp    $0x400,%r8
14016332b:	77 2e                	ja     0x14016335b
14016332d:	49 8d 40 0f          	lea    0xf(%r8),%rax
140163331:	49 3b c0             	cmp    %r8,%rax
140163334:	77 03                	ja     0x140163339
140163336:	48 8b c1             	mov    %rcx,%rax
140163339:	48 83 e0 f0          	and    $0xfffffffffffffff0,%rax
14016333d:	e8 ee d7 14 00       	call   0x1402b0b30
140163342:	48 2b e0             	sub    %rax,%rsp
140163345:	48 8d 7c 24 40       	lea    0x40(%rsp),%rdi
14016334a:	48 85 ff             	test   %rdi,%rdi
14016334d:	0f 84 ba 01 00 00    	je     0x14016350d
140163353:	c7 07 cc cc 00 00    	movl   $0xcccc,(%rdi)
140163359:	eb 16                	jmp    0x140163371
14016335b:	49 8b c8             	mov    %r8,%rcx
14016335e:	e8 b9 fa 15 00       	call   0x1402c2e1c
140163363:	48 8b f8             	mov    %rax,%rdi
140163366:	48 85 c0             	test   %rax,%rax
140163369:	74 0a                	je     0x140163375
14016336b:	c7 00 dd dd 00 00    	movl   $0xdddd,(%rax)
140163371:	48 83 c7 10          	add    $0x10,%rdi
140163375:	48 85 ff             	test   %rdi,%rdi
140163378:	0f 84 8f 01 00 00    	je     0x14016350d
14016337e:	44 89 6c 24 28       	mov    %r13d,0x28(%rsp)
140163383:	41 b9 ff ff ff ff    	mov    $0xffffffff,%r9d
140163389:	4d 8b c7             	mov    %r15,%r8
14016338c:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140163391:	41 8b d4             	mov    %r12d,%edx
140163394:	8b ce                	mov    %esi,%ecx
140163396:	ff 15 54 1e 18 00    	call   *0x181e54(%rip)        # 0x1402e51f0
14016339c:	85 c0                	test   %eax,%eax
14016339e:	0f 8e 40 01 00 00    	jle    0x1401634e4
1401633a4:	45 33 c0             	xor    %r8d,%r8d
1401633a7:	33 d2                	xor    %edx,%edx
1401633a9:	48 8b cf             	mov    %rdi,%rcx
1401633ac:	ff 15 5e 1f 18 00    	call   *0x181f5e(%rip)        # 0x1402e5310
1401633b2:	8b f0                	mov    %eax,%esi
1401633b4:	85 c0                	test   %eax,%eax
1401633b6:	0f 84 28 01 00 00    	je     0x1401634e4
1401633bc:	45 33 ff             	xor    %r15d,%r15d
1401633bf:	8b d6                	mov    %esi,%edx
1401633c1:	48 03 d2             	add    %rdx,%rdx
1401633c4:	45 8b c7             	mov    %r15d,%r8d
1401633c7:	48 8d 4a 10          	lea    0x10(%rdx),%rcx
1401633cb:	48 3b ca             	cmp    %rdx,%rcx
1401633ce:	4c 0f 47 c1          	cmova  %rcx,%r8
1401633d2:	4d 85 c0             	test   %r8,%r8
1401633d5:	0f 84 09 01 00 00    	je     0x1401634e4
1401633db:	49 81 f8 00 04 00 00 	cmp    $0x400,%r8
1401633e2:	77 35                	ja     0x140163419
1401633e4:	49 8d 40 0f          	lea    0xf(%r8),%rax
1401633e8:	49 3b c0             	cmp    %r8,%rax
1401633eb:	77 0a                	ja     0x1401633f7
1401633ed:	48 b8 f0 ff ff ff ff 	movabs $0xffffffffffffff0,%rax
1401633f4:	ff ff 0f
1401633f7:	48 83 e0 f0          	and    $0xfffffffffffffff0,%rax
1401633fb:	e8 30 d7 14 00       	call   0x1402b0b30
140163400:	48 2b e0             	sub    %rax,%rsp
140163403:	48 8d 5c 24 40       	lea    0x40(%rsp),%rbx
140163408:	48 85 db             	test   %rbx,%rbx
14016340b:	0f 84 d3 00 00 00    	je     0x1401634e4
140163411:	c7 03 cc cc 00 00    	movl   $0xcccc,(%rbx)
140163417:	eb 16                	jmp    0x14016342f
140163419:	49 8b c8             	mov    %r8,%rcx
14016341c:	e8 fb f9 15 00       	call   0x1402c2e1c
140163421:	48 8b d8             	mov    %rax,%rbx
140163424:	48 85 c0             	test   %rax,%rax
140163427:	74 0a                	je     0x140163433
140163429:	c7 00 dd dd 00 00    	movl   $0xdddd,(%rax)
14016342f:	48 83 c3 10          	add    $0x10,%rbx
140163433:	48 85 db             	test   %rbx,%rbx
140163436:	0f 84 a8 00 00 00    	je     0x1401634e4
14016343c:	44 8b c6             	mov    %esi,%r8d
14016343f:	48 8b d3             	mov    %rbx,%rdx
140163442:	48 8b cf             	mov    %rdi,%rcx
140163445:	ff 15 c5 1e 18 00    	call   *0x181ec5(%rip)        # 0x1402e5310
14016344b:	3b c6                	cmp    %esi,%eax
14016344d:	0f 83 91 00 00 00    	jae    0x1401634e4
140163453:	4c 89 7c 24 38       	mov    %r15,0x38(%rsp)
140163458:	41 b9 ff ff ff ff    	mov    $0xffffffff,%r9d
14016345e:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140163463:	4c 8b c3             	mov    %rbx,%r8
140163466:	44 89 7c 24 28       	mov    %r15d,0x28(%rsp)
14016346b:	33 d2                	xor    %edx,%edx
14016346d:	b9 e9 fd 00 00       	mov    $0xfde9,%ecx
140163472:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
140163477:	ff 15 33 1e 18 00    	call   *0x181e33(%rip)        # 0x1402e52b0
14016347d:	48 63 f0             	movslq %eax,%rsi
140163480:	85 c0                	test   %eax,%eax
140163482:	7e 60                	jle    0x1401634e4
140163484:	48 8b ce             	mov    %rsi,%rcx
140163487:	48 8d 15 8a 7d 1b 00 	lea    0x1b7d8a(%rip),%rdx        # 0x14031b218
14016348e:	41 b8 46 00 00 00    	mov    $0x46,%r8d
140163494:	e8 d7 88 f8 ff       	call   0x1400ebd70
140163499:	4c 8b f0             	mov    %rax,%r14
14016349c:	48 85 c0             	test   %rax,%rax
14016349f:	74 43                	je     0x1401634e4
1401634a1:	4c 89 7c 24 38       	mov    %r15,0x38(%rsp)
1401634a6:	41 b9 ff ff ff ff    	mov    $0xffffffff,%r9d
1401634ac:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
1401634b1:	4c 8b c3             	mov    %rbx,%r8
1401634b4:	89 74 24 28          	mov    %esi,0x28(%rsp)
1401634b8:	33 d2                	xor    %edx,%edx
1401634ba:	b9 e9 fd 00 00       	mov    $0xfde9,%ecx
1401634bf:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1401634c4:	ff 15 e6 1d 18 00    	call   *0x181de6(%rip)        # 0x1402e52b0
1401634ca:	85 c0                	test   %eax,%eax
1401634cc:	75 16                	jne    0x1401634e4
1401634ce:	44 8d 40 4c          	lea    0x4c(%rax),%r8d
1401634d2:	49 8b ce             	mov    %r14,%rcx
1401634d5:	48 8d 15 3c 7d 1b 00 	lea    0x1b7d3c(%rip),%rdx        # 0x14031b218
1401634dc:	e8 df 88 f8 ff       	call   0x1400ebdc0
1401634e1:	4d 8b f7             	mov    %r15,%r14
1401634e4:	81 7f f0 dd dd 00 00 	cmpl   $0xdddd,-0x10(%rdi)
1401634eb:	48 8d 4f f0          	lea    -0x10(%rdi),%rcx
1401634ef:	75 05                	jne    0x1401634f6
1401634f1:	e8 d2 93 15 00       	call   0x1402bc8c8
1401634f6:	48 85 db             	test   %rbx,%rbx
1401634f9:	74 12                	je     0x14016350d
1401634fb:	81 7b f0 dd dd 00 00 	cmpl   $0xdddd,-0x10(%rbx)
140163502:	48 8d 4b f0          	lea    -0x10(%rbx),%rcx
140163506:	75 05                	jne    0x14016350d