4991c5:	53                   	push   %ebx
4991c6:	e8 8a 80 13 00       	call   0x5d1255
4991cb:	83 c4 08             	add    $0x8,%esp
4991ce:	eb 13                	jmp    0x4991e3
4991d0:	56                   	push   %esi
4991d1:	50                   	push   %eax
4991d2:	e8 f9 9b 13 00       	call   0x5d2dd0
4991d7:	8a 45 f3             	mov    -0xd(%ebp),%al
4991da:	83 c4 0c             	add    $0xc,%esp
4991dd:	88 03                	mov    %al,(%ebx)
4991df:	c6 43 01 00          	movb   $0x0,0x1(%ebx)
4991e3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4991e6:	8a 5d 0f             	mov    0xf(%ebp),%bl
4991e9:	89 06                	mov    %eax,(%esi)
4991eb:	8b 7d ec             	mov    -0x14(%ebp),%edi
4991ee:	8b 55 e8             	mov    -0x18(%ebp),%edx
4991f1:	42                   	inc    %edx
4991f2:	89 55 e8             	mov    %edx,-0x18(%ebp)
4991f5:	3b d7                	cmp    %edi,%edx
4991f7:	0f 85 c3 fd ff ff    	jne    0x498fc0
4991fd:	8b c6                	mov    %esi,%eax
4991ff:	8b 4d f4             	mov    -0xc(%ebp),%ecx
499202:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
499209:	59                   	pop    %ecx
49920a:	5f                   	pop    %edi
49920b:	5e                   	pop    %esi
49920c:	5b                   	pop    %ebx
49920d:	8b e5                	mov    %ebp,%esp
49920f:	5d                   	pop    %ebp
499210:	c3                   	ret
499211:	e8 fa e3 fa ff       	call   0x447610
499216:	e8 d5 cf 13 00       	call   0x5d61f0
49921b:	cc                   	int3
49921c:	cc                   	int3
49921d:	cc                   	int3
49921e:	cc                   	int3
49921f:	cc                   	int3
499220:	55                   	push   %ebp
499221:	8b ec                	mov    %esp,%ebp
499223:	6a ff                	push   $0xffffffff
499225:	68 5e cc 5f 00       	push   $0x5fcc5e
49922a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
499230:	50                   	push   %eax
499231:	83 ec 18             	sub    $0x18,%esp
499234:	53                   	push   %ebx
499235:	56                   	push   %esi
499236:	57                   	push   %edi
499237:	a1 c0 14 69 00       	mov    0x6914c0,%eax
49923c:	33 c5                	xor    %ebp,%eax
49923e:	50                   	push   %eax
49923f:	8d 45 f4             	lea    -0xc(%ebp),%eax
499242:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
499248:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
49924f:	8b 75 08             	mov    0x8(%ebp),%esi
499252:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
499258:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
49925f:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
499266:	c6 06 00             	movb   $0x0,(%esi)
499269:	8b 45 0c             	mov    0xc(%ebp),%eax
49926c:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
499273:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
49927a:	89 45 ec             	mov    %eax,-0x14(%ebp)
49927d:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
499281:	72 05                	jb     0x499288
499283:	8b 10                	mov    (%eax),%edx
499285:	89 55 ec             	mov    %edx,-0x14(%ebp)
499288:	8b d0                	mov    %eax,%edx
49928a:	72 02                	jb     0x49928e
49928c:	8b 10                	mov    (%eax),%edx
49928e:	8b 48 10             	mov    0x10(%eax),%ecx
499291:	03 ca                	add    %edx,%ecx
499293:	89 4d f0             	mov    %ecx,-0x10(%ebp)
499296:	8b 4d ec             	mov    -0x14(%ebp),%ecx
499299:	8b 55 f0             	mov    -0x10(%ebp),%edx
49929c:	3b ca                	cmp    %edx,%ecx
49929e:	0f 84 fc 01 00 00    	je     0x4994a0
4992a4:	8a 09                	mov    (%ecx),%cl
4992a6:	88 4d 0f             	mov    %cl,0xf(%ebp)
4992a9:	80 f9 5f             	cmp    $0x5f,%cl
4992ac:	0f 84 df 01 00 00    	je     0x499491
4992b2:	8b 7e 10             	mov    0x10(%esi),%edi
4992b5:	8d 41 bf             	lea    -0x41(%ecx),%eax
4992b8:	8b 5e 14             	mov    0x14(%esi),%ebx
4992bb:	3c 19                	cmp    $0x19,%al
4992bd:	0f 87 de 00 00 00    	ja     0x4993a1
4992c3:	80 c1 20             	add    $0x20,%cl
4992c6:	88 4d 0f             	mov    %cl,0xf(%ebp)
4992c9:	3b fb                	cmp    %ebx,%edi
4992cb:	0f 82 d4 00 00 00    	jb     0x4993a5
4992d1:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4992d6:	2b c7                	sub    %edi,%eax
4992d8:	83 f8 01             	cmp    $0x1,%eax
4992db:	0f 82 d3 01 00 00    	jb     0x4994b4
4992e1:	8d 4f 01             	lea    0x1(%edi),%ecx
4992e4:	83 c9 0f             	or     $0xf,%ecx
4992e7:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
4992ed:	76 07                	jbe    0x4992f6
4992ef:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
4992f4:	eb 1e                	jmp    0x499314
4992f6:	8b d3                	mov    %ebx,%edx
4992f8:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4992fd:	d1 ea                	shr    $1,%edx
4992ff:	2b c2                	sub    %edx,%eax
499301:	3b d8                	cmp    %eax,%ebx
499303:	76 07                	jbe    0x49930c
499305:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
49930a:	eb 08                	jmp    0x499314
49930c:	8d 04 1a             	lea    (%edx,%ebx,1),%eax
49930f:	3b c8                	cmp    %eax,%ecx
499311:	0f 42 c8             	cmovb  %eax,%ecx
499314:	8d 41 01             	lea    0x1(%ecx),%eax
499317:	89 4d e8             	mov    %ecx,-0x18(%ebp)
49931a:	50                   	push   %eax
49931b:	8b ce                	mov    %esi,%ecx
49931d:	e8 fe fa fb ff       	call   0x458e20
499322:	8b c8                	mov    %eax,%ecx
499324:	8d 47 01             	lea    0x1(%edi),%eax
499327:	89 46 10             	mov    %eax,0x10(%esi)
49932a:	8b 45 e8             	mov    -0x18(%ebp),%eax
49932d:	89 46 14             	mov    %eax,0x14(%esi)
499330:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
499333:	8d 04 39             	lea    (%ecx,%edi,1),%eax
499336:	89 45 e8             	mov    %eax,-0x18(%ebp)
499339:	57                   	push   %edi
49933a:	83 fb 10             	cmp    $0x10,%ebx
49933d:	72 4b                	jb     0x49938a
49933f:	8b 06                	mov    (%esi),%eax
499341:	8b f8                	mov    %eax,%edi
499343:	57                   	push   %edi
499344:	51                   	push   %ecx
499345:	e8 86 9a 13 00       	call   0x5d2dd0
49934a:	8b 4d e8             	mov    -0x18(%ebp),%ecx
49934d:	43                   	inc    %ebx
49934e:	8a 45 0f             	mov    0xf(%ebp),%al
499351:	83 c4 0c             	add    $0xc,%esp
499354:	88 01                	mov    %al,(%ecx)
499356:	c6 41 01 00          	movb   $0x0,0x1(%ecx)
49935a:	81 fb 00 10 00 00    	cmp    $0x1000,%ebx
499360:	72 16                	jb     0x499378
499362:	8b 4f fc             	mov    -0x4(%edi),%ecx
499365:	83 c3 23             	add    $0x23,%ebx
499368:	2b f9                	sub    %ecx,%edi
49936a:	8d 47 fc             	lea    -0x4(%edi),%eax
49936d:	83 f8 1f             	cmp    $0x1f,%eax
499370:	0f 87 43 01 00 00    	ja     0x4994b9
499376:	8b f9                	mov    %ecx,%edi
499378:	53                   	push   %ebx
499379:	57                   	push   %edi
49937a:	e8 d6 7e 13 00       	call   0x5d1255
49937f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
499382:	83 c4 08             	add    $0x8,%esp
499385:	e9 02 01 00 00       	jmp    0x49948c
49938a:	56                   	push   %esi
49938b:	51                   	push   %ecx
49938c:	e8 3f 9a 13 00       	call   0x5d2dd0
499391:	8b 4d e8             	mov    -0x18(%ebp),%ecx
499394:	8a 45 0f             	mov    0xf(%ebp),%al
499397:	88 01                	mov    %al,(%ecx)
499399:	8b 45 e4             	mov    -0x1c(%ebp),%eax
49939c:	e9 e4 00 00 00       	jmp    0x499485
4993a1:	3b fb                	cmp    %ebx,%edi
4993a3:	73 1c                	jae    0x4993c1
4993a5:	8d 47 01             	lea    0x1(%edi),%eax
4993a8:	89 46 10             	mov    %eax,0x10(%esi)
4993ab:	8b c6                	mov    %esi,%eax
4993ad:	83 fb 10             	cmp    $0x10,%ebx
4993b0:	72 02                	jb     0x4993b4
4993b2:	8b 06                	mov    (%esi),%eax
4993b4:	88 0c 38             	mov    %cl,(%eax,%edi,1)
4993b7:	c6 44 38 01 00       	movb   $0x0,0x1(%eax,%edi,1)
4993bc:	e9 d0 00 00 00       	jmp    0x499491
4993c1:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4993c6:	2b c7                	sub    %edi,%eax
4993c8:	83 f8 01             	cmp    $0x1,%eax
4993cb:	0f 82 e3 00 00 00    	jb     0x4994b4
4993d1:	8d 4f 01             	lea    0x1(%edi),%ecx
4993d4:	83 c9 0f             	or     $0xf,%ecx
4993d7:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
4993dd:	76 07                	jbe    0x4993e6
4993df:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
4993e4:	eb 1e                	jmp    0x499404
4993e6:	8b d3                	mov    %ebx,%edx
4993e8:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4993ed:	d1 ea                	shr    $1,%edx
4993ef:	2b c2                	sub    %edx,%eax
4993f1:	3b d8                	cmp    %eax,%ebx
4993f3:	76 07                	jbe    0x4993fc
4993f5:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
4993fa:	eb 08                	jmp    0x499404
4993fc:	8d 04 1a             	lea    (%edx,%ebx,1),%eax
4993ff:	3b c8                	cmp    %eax,%ecx
499401:	0f 42 c8             	cmovb  %eax,%ecx
499404:	8d 41 01             	lea    0x1(%ecx),%eax
499407:	89 4d e8             	mov    %ecx,-0x18(%ebp)
49940a:	50                   	push   %eax
49940b:	8b ce                	mov    %esi,%ecx
49940d:	e8 0e fa fb ff       	call   0x458e20
499412:	8b c8                	mov    %eax,%ecx
499414:	8d 47 01             	lea    0x1(%edi),%eax
499417:	89 46 10             	mov    %eax,0x10(%esi)
49941a:	8b 45 e8             	mov    -0x18(%ebp),%eax
49941d:	89 46 14             	mov    %eax,0x14(%esi)
499420:	89 4d e0             	mov    %ecx,-0x20(%ebp)
499423:	8d 04 39             	lea    (%ecx,%edi,1),%eax
499426:	89 45 e4             	mov    %eax,-0x1c(%ebp)
499429:	57                   	push   %edi
49942a:	83 fb 10             	cmp    $0x10,%ebx
49942d:	72 44                	jb     0x499473
49942f:	8b 06                	mov    (%esi),%eax
499431:	8b f8                	mov    %eax,%edi
499433:	57                   	push   %edi
499434:	51                   	push   %ecx
499435:	e8 96 99 13 00       	call   0x5d2dd0
49943a:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
49943d:	43                   	inc    %ebx
49943e:	8a 45 0f             	mov    0xf(%ebp),%al
499441:	83 c4 0c             	add    $0xc,%esp
499444:	88 01                	mov    %al,(%ecx)
499446:	c6 41 01 00          	movb   $0x0,0x1(%ecx)
49944a:	81 fb 00 10 00 00    	cmp    $0x1000,%ebx
499450:	72 12                	jb     0x499464
499452:	8b 4f fc             	mov    -0x4(%edi),%ecx
499455:	83 c3 23             	add    $0x23,%ebx
499458:	2b f9                	sub    %ecx,%edi
49945a:	8d 47 fc             	lea    -0x4(%edi),%eax
49945d:	83 f8 1f             	cmp    $0x1f,%eax
499460:	77 57                	ja     0x4994b9
499462:	8b f9                	mov    %ecx,%edi
499464:	53                   	push   %ebx
499465:	57                   	push   %edi
499466:	e8 ea 7d 13 00       	call   0x5d1255
49946b:	8b 45 e0             	mov    -0x20(%ebp),%eax
49946e:	83 c4 08             	add    $0x8,%esp
499471:	eb 19                	jmp    0x49948c
499473:	56                   	push   %esi
499474:	51                   	push   %ecx
499475:	e8 56 99 13 00       	call   0x5d2dd0
49947a:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
49947d:	8a 45 0f             	mov    0xf(%ebp),%al
499480:	88 01                	mov    %al,(%ecx)
499482:	8b 45 e0             	mov    -0x20(%ebp),%eax
499485:	c6 41 01 00          	movb   $0x0,0x1(%ecx)
499489:	83 c4 0c             	add    $0xc,%esp
49948c:	8b 55 f0             	mov    -0x10(%ebp),%edx
49948f:	89 06                	mov    %eax,(%esi)
499491:	8b 4d ec             	mov    -0x14(%ebp),%ecx
499494:	41                   	inc    %ecx
499495:	89 4d ec             	mov    %ecx,-0x14(%ebp)
499498:	3b ca                	cmp    %edx,%ecx
49949a:	0f 85 04 fe ff ff    	jne    0x4992a4
4994a0:	8b c6                	mov    %esi,%eax
4994a2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4994a5:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4994ac:	59                   	pop    %ecx
4994ad:	5f                   	pop    %edi
4994ae:	5e                   	pop    %esi
4994af:	5b                   	pop    %ebx
4994b0:	8b e5                	mov    %ebp,%esp
4994b2:	5d                   	pop    %ebp
4994b3:	c3                   	ret
4994b4:	e8 57 e1 fa ff       	call   0x447610
4994b9:	e8 32 cd 13 00       	call   0x5d61f0
4994be:	cc                   	int3
4994bf:	cc                   	int3
4994c0:	55                   	push   %ebp
4994c1:	8b ec                	mov    %esp,%ebp
4994c3:	6a ff                	push   $0xffffffff
4994c5:	68 90 cc 5f 00       	push   $0x5fcc90
4994ca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4994d0:	50                   	push   %eax
4994d1:	81 ec 94 00 00 00    	sub    $0x94,%esp
4994d7:	a1 c0 14 69 00       	mov    0x6914c0,%eax
4994dc:	33 c5                	xor    %ebp,%eax
4994de:	89 45 f0             	mov    %eax,-0x10(%ebp)
4994e1:	53                   	push   %ebx
4994e2:	56                   	push   %esi
4994e3:	57                   	push   %edi
4994e4:	50                   	push   %eax
4994e5:	8d 45 f4             	lea    -0xc(%ebp),%eax
4994e8:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4994ee:	8b f1                	mov    %ecx,%esi
4994f0:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
4994f4:	8b 7d 08             	mov    0x8(%ebp),%edi
4994f7:	75 07                	jne    0x499500
4994f9:	32 c0                	xor    %al,%al
4994fb:	e9 8e 00 00 00       	jmp    0x49958e
499500:	6a 00                	push   $0x0
499502:	8d 8d 64 ff ff ff    	lea    -0x9c(%ebp),%ecx
499508:	e8 f3 fd 02 00       	call   0x4c9300
49950d:	c7 85 64 ff ff ff 58 	movl   $0x60ef58,-0x9c(%ebp)
499514:	ef 60 00
499517:	8b 4e 04             	mov    0x4(%esi),%ecx
49951a:	8d 95 64 ff ff ff    	lea    -0x9c(%ebp),%edx
499520:	52                   	push   %edx
499521:	ff 75 0c             	push   0xc(%ebp)
499524:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
49952b:	8b 01                	mov    (%ecx),%eax
49952d:	ff 77 04             	push   0x4(%edi)
499530:	8b 40 0c             	mov    0xc(%eax),%eax
499533:	ff d0                	call   *%eax
499535:	84 c0                	test   %al,%al
499537:	74 46                	je     0x49957f
499539:	8b 45 dc             	mov    -0x24(%ebp),%eax
49953c:	83 ec 08             	sub    $0x8,%esp
49953f:	83 e0 fe             	and    $0xfffffffe,%eax
499542:	8b cc                	mov    %esp,%ecx
499544:	8b d0                	mov    %eax,%edx
499546:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
49954a:	72 02                	jb     0x49954e
49954c:	8b 10                	mov    (%eax),%edx
49954e:	c7 41 04 00 00 00 00 	movl   $0x0,0x4(%ecx)
499555:	89 11                	mov    %edx,(%ecx)
499557:	8b 40 10             	mov    0x10(%eax),%eax
49955a:	89 41 04             	mov    %eax,0x4(%ecx)
49955d:	8b 4e 10             	mov    0x10(%esi),%ecx
499560:	e8 5b 77 ff ff       	call   0x490cc0
499565:	85 c0                	test   %eax,%eax
499567:	75 16                	jne    0x49957f
499569:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
49956f:	8b ce                	mov    %esi,%ecx
499571:	50                   	push   %eax
499572:	e8 19 aa fe ff       	call   0x483f90
499577:	85 c0                	test   %eax,%eax
499579:	74 04                	je     0x49957f
49957b:	b3 01                	mov    $0x1,%bl
49957d:	eb 02                	jmp    0x499581
49957f:	32 db                	xor    %bl,%bl
499581:	8d 8d 64 ff ff ff    	lea    -0x9c(%ebp),%ecx
499587:	e8 74 0e 03 00       	call   0x4ca400
49958c:	8a c3                	mov    %bl,%al
49958e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
499591:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
499598:	59                   	pop    %ecx
499599:	5f                   	pop    %edi
49959a:	5e                   	pop    %esi
49959b:	5b                   	pop    %ebx
49959c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
49959f:	33 cd                	xor    %ebp,%ecx
4995a1:	e8 80 84 13 00       	call   0x5d1a26
4995a6:	8b e5                	mov    %ebp,%esp
4995a8:	5d                   	pop    %ebp
4995a9:	c2 08 00             	ret    $0x8
4995ac:	cc                   	int3
4995ad:	cc                   	int3
4995ae:	cc                   	int3
4995af:	cc                   	int3
4995b0:	55                   	push   %ebp
4995b1:	8b ec                	mov    %esp,%ebp
4995b3:	6a ff                	push   $0xffffffff
4995b5:	68 d8 cc 5f 00       	push   $0x5fccd8