402054:	43                   	inc    %ebx
402055:	33 c9                	xor    %ecx,%ecx
402057:	eb 02                	jmp    0x40205b
402059:	46                   	inc    %esi
40205a:	41                   	inc    %ecx
40205b:	80 3e 5c             	cmpb   $0x5c,(%esi)
40205e:	74 f9                	je     0x402059
402060:	80 3e 22             	cmpb   $0x22,(%esi)
402063:	75 26                	jne    0x40208b
402065:	f6 c1 01             	test   $0x1,%cl
402068:	75 1f                	jne    0x402089
40206a:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
40206e:	74 0c                	je     0x40207c
402070:	8d 46 01             	lea    0x1(%esi),%eax
402073:	80 38 22             	cmpb   $0x22,(%eax)
402076:	75 04                	jne    0x40207c
402078:	8b f0                	mov    %eax,%esi
40207a:	eb 0d                	jmp    0x402089
40207c:	33 c0                	xor    %eax,%eax
40207e:	33 db                	xor    %ebx,%ebx
402080:	39 45 fc             	cmp    %eax,-0x4(%ebp)
402083:	0f 94 c0             	sete   %al
402086:	89 45 fc             	mov    %eax,-0x4(%ebp)
402089:	d1 e9                	shr    $1,%ecx
40208b:	85 c9                	test   %ecx,%ecx
40208d:	74 12                	je     0x4020a1
40208f:	49                   	dec    %ecx
402090:	85 d2                	test   %edx,%edx
402092:	74 04                	je     0x402098
402094:	c6 02 5c             	movb   $0x5c,(%edx)
402097:	42                   	inc    %edx
402098:	ff 07                	incl   (%edi)
40209a:	85 c9                	test   %ecx,%ecx
40209c:	75 f1                	jne    0x40208f
40209e:	89 55 0c             	mov    %edx,0xc(%ebp)
4020a1:	8a 06                	mov    (%esi),%al
4020a3:	84 c0                	test   %al,%al
4020a5:	74 55                	je     0x4020fc
4020a7:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4020ab:	75 08                	jne    0x4020b5
4020ad:	3c 20                	cmp    $0x20,%al
4020af:	74 4b                	je     0x4020fc
4020b1:	3c 09                	cmp    $0x9,%al
4020b3:	74 47                	je     0x4020fc
4020b5:	85 db                	test   %ebx,%ebx
4020b7:	74 3d                	je     0x4020f6
4020b9:	0f be c0             	movsbl %al,%eax
4020bc:	50                   	push   %eax
4020bd:	85 d2                	test   %edx,%edx
4020bf:	74 23                	je     0x4020e4
4020c1:	e8 e2 25 00 00       	call   0x4046a8
4020c6:	59                   	pop    %ecx
4020c7:	85 c0                	test   %eax,%eax
4020c9:	74 0d                	je     0x4020d8
4020cb:	8a 06                	mov    (%esi),%al
4020cd:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4020d0:	ff 45 0c             	incl   0xc(%ebp)
4020d3:	88 01                	mov    %al,(%ecx)
4020d5:	46                   	inc    %esi
4020d6:	ff 07                	incl   (%edi)
4020d8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4020db:	8a 06                	mov    (%esi),%al
4020dd:	ff 45 0c             	incl   0xc(%ebp)
4020e0:	88 01                	mov    %al,(%ecx)
4020e2:	eb 0d                	jmp    0x4020f1
4020e4:	e8 bf 25 00 00       	call   0x4046a8
4020e9:	59                   	pop    %ecx
4020ea:	85 c0                	test   %eax,%eax
4020ec:	74 03                	je     0x4020f1
4020ee:	46                   	inc    %esi
4020ef:	ff 07                	incl   (%edi)
4020f1:	ff 07                	incl   (%edi)
4020f3:	8b 55 0c             	mov    0xc(%ebp),%edx
4020f6:	46                   	inc    %esi
4020f7:	e9 56 ff ff ff       	jmp    0x402052
4020fc:	85 d2                	test   %edx,%edx
4020fe:	74 07                	je     0x402107
402100:	c6 02 00             	movb   $0x0,(%edx)
402103:	42                   	inc    %edx
402104:	89 55 0c             	mov    %edx,0xc(%ebp)
402107:	ff 07                	incl   (%edi)
402109:	8b 4d 10             	mov    0x10(%ebp),%ecx
40210c:	e9 0e ff ff ff       	jmp    0x40201f
402111:	8b 45 08             	mov    0x8(%ebp),%eax
402114:	5e                   	pop    %esi
402115:	5b                   	pop    %ebx
402116:	85 c0                	test   %eax,%eax
402118:	74 03                	je     0x40211d
40211a:	83 20 00             	andl   $0x0,(%eax)
40211d:	ff 01                	incl   (%ecx)
40211f:	c9                   	leave
402120:	c3                   	ret
402121:	8b ff                	mov    %edi,%edi
402123:	55                   	push   %ebp
402124:	8b ec                	mov    %esp,%ebp
402126:	83 ec 0c             	sub    $0xc,%esp
402129:	53                   	push   %ebx
40212a:	33 db                	xor    %ebx,%ebx
40212c:	56                   	push   %esi
40212d:	57                   	push   %edi
40212e:	39 1d ac 2e de 02    	cmp    %ebx,0x2de2eac
402134:	75 05                	jne    0x40213b
402136:	e8 4a 2c 00 00       	call   0x404d85
40213b:	68 04 01 00 00       	push   $0x104
402140:	be 08 0d 43 00       	mov    $0x430d08,%esi
402145:	56                   	push   %esi
402146:	53                   	push   %ebx
402147:	88 1d 0c 0e 43 00    	mov    %bl,0x430e0c
40214d:	ff 15 88 d0 41 00    	call   *0x41d088
402153:	a1 c0 2e de 02       	mov    0x2de2ec0,%eax
402158:	89 35 d8 09 43 00    	mov    %esi,0x4309d8
40215e:	3b c3                	cmp    %ebx,%eax
402160:	74 07                	je     0x402169
402162:	89 45 fc             	mov    %eax,-0x4(%ebp)
402165:	38 18                	cmp    %bl,(%eax)
402167:	75 03                	jne    0x40216c
402169:	89 75 fc             	mov    %esi,-0x4(%ebp)
40216c:	8b 55 fc             	mov    -0x4(%ebp),%edx
40216f:	8d 45 f8             	lea    -0x8(%ebp),%eax
402172:	50                   	push   %eax
402173:	53                   	push   %ebx
402174:	53                   	push   %ebx
402175:	8d 7d f4             	lea    -0xc(%ebp),%edi
402178:	e8 0a fe ff ff       	call   0x401f87
40217d:	8b 45 f8             	mov    -0x8(%ebp),%eax
402180:	83 c4 0c             	add    $0xc,%esp
402183:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
402188:	73 4a                	jae    0x4021d4
40218a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40218d:	83 f9 ff             	cmp    $0xffffffff,%ecx
402190:	73 42                	jae    0x4021d4
402192:	8b f8                	mov    %eax,%edi
402194:	c1 e7 02             	shl    $0x2,%edi
402197:	8d 04 0f             	lea    (%edi,%ecx,1),%eax
40219a:	3b c1                	cmp    %ecx,%eax
40219c:	72 36                	jb     0x4021d4
40219e:	50                   	push   %eax
40219f:	e8 8d 2c 00 00       	call   0x404e31
4021a4:	8b f0                	mov    %eax,%esi
4021a6:	59                   	pop    %ecx
4021a7:	3b f3                	cmp    %ebx,%esi
4021a9:	74 29                	je     0x4021d4
4021ab:	8b 55 fc             	mov    -0x4(%ebp),%edx
4021ae:	8d 45 f8             	lea    -0x8(%ebp),%eax
4021b1:	50                   	push   %eax
4021b2:	03 fe                	add    %esi,%edi
4021b4:	57                   	push   %edi
4021b5:	56                   	push   %esi
4021b6:	8d 7d f4             	lea    -0xc(%ebp),%edi
4021b9:	e8 c9 fd ff ff       	call   0x401f87
4021be:	8b 45 f8             	mov    -0x8(%ebp),%eax
4021c1:	83 c4 0c             	add    $0xc,%esp
4021c4:	48                   	dec    %eax
4021c5:	a3 bc 09 43 00       	mov    %eax,0x4309bc
4021ca:	89 35 c0 09 43 00    	mov    %esi,0x4309c0
4021d0:	33 c0                	xor    %eax,%eax
4021d2:	eb 03                	jmp    0x4021d7
4021d4:	83 c8 ff             	or     $0xffffffff,%eax
4021d7:	5f                   	pop    %edi
4021d8:	5e                   	pop    %esi
4021d9:	5b                   	pop    %ebx
4021da:	c9                   	leave
4021db:	c3                   	ret
4021dc:	8b ff                	mov    %edi,%edi
4021de:	55                   	push   %ebp
4021df:	8b ec                	mov    %esp,%ebp
4021e1:	a1 10 0e 43 00       	mov    0x430e10,%eax
4021e6:	83 ec 0c             	sub    $0xc,%esp
4021e9:	53                   	push   %ebx
4021ea:	56                   	push   %esi
4021eb:	8b 35 9c d0 41 00    	mov    0x41d09c,%esi
4021f1:	57                   	push   %edi
4021f2:	33 db                	xor    %ebx,%ebx
4021f4:	33 ff                	xor    %edi,%edi
4021f6:	3b c3                	cmp    %ebx,%eax
4021f8:	75 2e                	jne    0x402228
4021fa:	ff d6                	call   *%esi
4021fc:	8b f8                	mov    %eax,%edi
4021fe:	3b fb                	cmp    %ebx,%edi
402200:	74 0c                	je     0x40220e
402202:	c7 05 10 0e 43 00 01 	movl   $0x1,0x430e10
402209:	00 00 00
40220c:	eb 23                	jmp    0x402231
40220e:	ff 15 58 d0 41 00    	call   *0x41d058
402214:	83 f8 78             	cmp    $0x78,%eax
402217:	75 0a                	jne    0x402223
402219:	6a 02                	push   $0x2
40221b:	58                   	pop    %eax
40221c:	a3 10 0e 43 00       	mov    %eax,0x430e10
402221:	eb 05                	jmp    0x402228
402223:	a1 10 0e 43 00       	mov    0x430e10,%eax
402228:	83 f8 01             	cmp    $0x1,%eax
40222b:	0f 85 81 00 00 00    	jne    0x4022b2
402231:	3b fb                	cmp    %ebx,%edi
402233:	75 0f                	jne    0x402244
402235:	ff d6                	call   *%esi
402237:	8b f8                	mov    %eax,%edi
402239:	3b fb                	cmp    %ebx,%edi
40223b:	75 07                	jne    0x402244
40223d:	33 c0                	xor    %eax,%eax
40223f:	e9 ca 00 00 00       	jmp    0x40230e
402244:	8b c7                	mov    %edi,%eax
402246:	66 39 1f             	cmp    %bx,(%edi)
402249:	74 0e                	je     0x402259
40224b:	40                   	inc    %eax
40224c:	40                   	inc    %eax
40224d:	66 39 18             	cmp    %bx,(%eax)
402250:	75 f9                	jne    0x40224b
402252:	40                   	inc    %eax
402253:	40                   	inc    %eax
402254:	66 39 18             	cmp    %bx,(%eax)
402257:	75 f2                	jne    0x40224b
402259:	8b 35 98 d0 41 00    	mov    0x41d098,%esi
40225f:	53                   	push   %ebx
402260:	53                   	push   %ebx
402261:	53                   	push   %ebx
402262:	2b c7                	sub    %edi,%eax
402264:	53                   	push   %ebx
402265:	d1 f8                	sar    $1,%eax
402267:	40                   	inc    %eax
402268:	50                   	push   %eax
402269:	57                   	push   %edi
40226a:	53                   	push   %ebx
40226b:	53                   	push   %ebx
40226c:	89 45 f4             	mov    %eax,-0xc(%ebp)
40226f:	ff d6                	call   *%esi
402271:	89 45 f8             	mov    %eax,-0x8(%ebp)
402274:	3b c3                	cmp    %ebx,%eax
402276:	74 2f                	je     0x4022a7
402278:	50                   	push   %eax
402279:	e8 b3 2b 00 00       	call   0x404e31
40227e:	59                   	pop    %ecx
40227f:	89 45 fc             	mov    %eax,-0x4(%ebp)
402282:	3b c3                	cmp    %ebx,%eax
402284:	74 21                	je     0x4022a7
402286:	53                   	push   %ebx
402287:	53                   	push   %ebx
402288:	ff 75 f8             	push   -0x8(%ebp)
40228b:	50                   	push   %eax
40228c:	ff 75 f4             	push   -0xc(%ebp)
40228f:	57                   	push   %edi
402290:	53                   	push   %ebx
402291:	53                   	push   %ebx
402292:	ff d6                	call   *%esi
402294:	85 c0                	test   %eax,%eax
402296:	75 0c                	jne    0x4022a4
402298:	ff 75 fc             	push   -0x4(%ebp)
40229b:	e8 03 2b 00 00       	call   0x404da3
4022a0:	59                   	pop    %ecx
4022a1:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4022a4:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4022a7:	57                   	push   %edi
4022a8:	ff 15 94 d0 41 00    	call   *0x41d094
4022ae:	8b c3                	mov    %ebx,%eax
4022b0:	eb 5c                	jmp    0x40230e
4022b2:	83 f8 02             	cmp    $0x2,%eax
4022b5:	74 04                	je     0x4022bb
4022b7:	3b c3                	cmp    %ebx,%eax
4022b9:	75 82                	jne    0x40223d
4022bb:	ff 15 90 d0 41 00    	call   *0x41d090
4022c1:	8b f0                	mov    %eax,%esi
4022c3:	3b f3                	cmp    %ebx,%esi
4022c5:	0f 84 72 ff ff ff    	je     0x40223d
4022cb:	38 1e                	cmp    %bl,(%esi)
4022cd:	74 0a                	je     0x4022d9
4022cf:	40                   	inc    %eax
4022d0:	38 18                	cmp    %bl,(%eax)
4022d2:	75 fb                	jne    0x4022cf
4022d4:	40                   	inc    %eax
4022d5:	38 18                	cmp    %bl,(%eax)
4022d7:	75 f6                	jne    0x4022cf
4022d9:	2b c6                	sub    %esi,%eax
4022db:	40                   	inc    %eax
4022dc:	50                   	push   %eax
4022dd:	89 45 f8             	mov    %eax,-0x8(%ebp)
4022e0:	e8 4c 2b 00 00       	call   0x404e31
4022e5:	8b f8                	mov    %eax,%edi
4022e7:	59                   	pop    %ecx
4022e8:	3b fb                	cmp    %ebx,%edi
4022ea:	75 0c                	jne    0x4022f8
4022ec:	56                   	push   %esi
4022ed:	ff 15 8c d0 41 00    	call   *0x41d08c
4022f3:	e9 45 ff ff ff       	jmp    0x40223d
4022f8:	ff 75 f8             	push   -0x8(%ebp)
4022fb:	56                   	push   %esi
4022fc:	57                   	push   %edi
4022fd:	e8 0e 2c 00 00       	call   0x404f10
402302:	83 c4 0c             	add    $0xc,%esp
402305:	56                   	push   %esi
402306:	ff 15 8c d0 41 00    	call   *0x41d08c
40230c:	8b c7                	mov    %edi,%eax
40230e:	5f                   	pop    %edi
40230f:	5e                   	pop    %esi
402310:	5b                   	pop    %ebx
402311:	c9                   	leave
402312:	c3                   	ret
402313:	6a 54                	push   $0x54
402315:	68 38 e6 41 00       	push   $0x41e638
40231a:	e8 61 08 00 00       	call   0x402b80
40231f:	33 ff                	xor    %edi,%edi
402321:	89 7d fc             	mov    %edi,-0x4(%ebp)
402324:	8d 45 9c             	lea    -0x64(%ebp),%eax
402327:	50                   	push   %eax
402328:	ff 15 64 d0 41 00    	call   *0x41d064
40232e:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
402335:	6a 40                	push   $0x40
402337:	6a 20                	push   $0x20
402339:	5e                   	pop    %esi
40233a:	56                   	push   %esi
40233b:	e8 36 2b 00 00       	call   0x404e76
402340:	59                   	pop    %ecx
402341:	59                   	pop    %ecx
402342:	3b c7                	cmp    %edi,%eax
402344:	0f 84 14 02 00 00    	je     0x40255e
40234a:	a3 a0 2d de 02       	mov    %eax,0x2de2da0
40234f:	89 35 9c 2d de 02    	mov    %esi,0x2de2d9c
402355:	8d 88 00 08 00 00    	lea    0x800(%eax),%ecx
40235b:	eb 30                	jmp    0x40238d
40235d:	c6 40 04 00          	movb   $0x0,0x4(%eax)
402361:	83 08 ff             	orl    $0xffffffff,(%eax)
402364:	c6 40 05 0a          	movb   $0xa,0x5(%eax)
402368:	89 78 08             	mov    %edi,0x8(%eax)
40236b:	c6 40 24 00          	movb   $0x0,0x24(%eax)
40236f:	c6 40 25 0a          	movb   $0xa,0x25(%eax)
402373:	c6 40 26 0a          	movb   $0xa,0x26(%eax)
402377:	89 78 38             	mov    %edi,0x38(%eax)
40237a:	c6 40 34 00          	movb   $0x0,0x34(%eax)
40237e:	83 c0 40             	add    $0x40,%eax
402381:	8b 0d a0 2d de 02    	mov    0x2de2da0,%ecx
402387:	81 c1 00 08 00 00    	add    $0x800,%ecx
40238d:	3b c1                	cmp    %ecx,%eax
40238f:	72 cc                	jb     0x40235d
402391:	66 39 7d ce          	cmp    %di,-0x32(%ebp)
402395:	0f 84 0a 01 00 00    	je     0x4024a5
40239b:	8b 45 d0             	mov    -0x30(%ebp),%eax
40239e:	3b c7                	cmp    %edi,%eax
4023a0:	0f 84 ff 00 00 00    	je     0x4024a5
4023a6:	8b 38                	mov    (%eax),%edi
4023a8:	8d 58 04             	lea    0x4(%eax),%ebx
4023ab:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
4023ae:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4023b1:	be 00 08 00 00       	mov    $0x800,%esi
4023b6:	3b fe                	cmp    %esi,%edi
4023b8:	7c 02                	jl     0x4023bc
4023ba:	8b fe                	mov    %esi,%edi
4023bc:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
4023c3:	eb 5b                	jmp    0x402420
4023c5:	6a 40                	push   $0x40
4023c7:	6a 20                	push   $0x20
4023c9:	e8 a8 2a 00 00       	call   0x404e76