41502b:	23 c1                	and    %ecx,%eax
41502d:	8d 4b 24             	lea    0x24(%ebx),%ecx
415030:	57                   	push   %edi
415031:	89 45 f4             	mov    %eax,-0xc(%ebp)
415034:	e8 96 cb fe ff       	call   0x401bcf
415039:	8b 43 24             	mov    0x24(%ebx),%eax
41503c:	89 45 f8             	mov    %eax,-0x8(%ebp)
41503f:	3b 75 f4             	cmp    -0xc(%ebp),%esi
415042:	72 62                	jb     0x4150a6
415044:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
415048:	74 5c                	je     0x4150a6
41504a:	8b bb f4 e6 00 00    	mov    0xe6f4(%ebx),%edi
415050:	2b fe                	sub    %esi,%edi
415052:	80 bb 38 4c 00 00 00 	cmpb   $0x0,0x4c38(%ebx)
415059:	57                   	push   %edi
41505a:	74 1f                	je     0x41507b
41505c:	56                   	push   %esi
41505d:	8d 8b 38 4b 00 00    	lea    0x4b38(%ebx),%ecx
415063:	50                   	push   %eax
415064:	e8 4a d2 ff ff       	call   0x4122b3
415069:	ff 75 f4             	push   -0xc(%ebp)
41506c:	8b 45 f8             	mov    -0x8(%ebp),%eax
41506f:	6a 00                	push   $0x0
415071:	03 f8                	add    %eax,%edi
415073:	57                   	push   %edi
415074:	e8 3a d2 ff ff       	call   0x4122b3
415079:	eb 26                	jmp    0x4150a1
41507b:	8b 8b 34 4b 00 00    	mov    0x4b34(%ebx),%ecx
415081:	03 ce                	add    %esi,%ecx
415083:	51                   	push   %ecx
415084:	50                   	push   %eax
415085:	e8 e6 6b 00 00       	call   0x41bc70
41508a:	ff 75 f4             	push   -0xc(%ebp)
41508d:	8b 45 f8             	mov    -0x8(%ebp),%eax
415090:	ff b3 34 4b 00 00    	push   0x4b34(%ebx)
415096:	03 f8                	add    %eax,%edi
415098:	57                   	push   %edi
415099:	e8 d2 6b 00 00       	call   0x41bc70
41509e:	83 c4 18             	add    $0x18,%esp
4150a1:	8b 7d e8             	mov    -0x18(%ebp),%edi
4150a4:	eb 2b                	jmp    0x4150d1
4150a6:	80 bb 38 4c 00 00 00 	cmpb   $0x0,0x4c38(%ebx)
4150ad:	57                   	push   %edi
4150ae:	74 0f                	je     0x4150bf
4150b0:	56                   	push   %esi
4150b1:	50                   	push   %eax
4150b2:	8d 8b 38 4b 00 00    	lea    0x4b38(%ebx),%ecx
4150b8:	e8 f6 d1 ff ff       	call   0x4122b3
4150bd:	eb 12                	jmp    0x4150d1
4150bf:	8b 8b 34 4b 00 00    	mov    0x4b34(%ebx),%ecx
4150c5:	03 ce                	add    %esi,%ecx
4150c7:	51                   	push   %ecx
4150c8:	50                   	push   %eax
4150c9:	e8 a2 6b 00 00       	call   0x41bc70
4150ce:	83 c4 0c             	add    $0xc,%esp
4150d1:	ff 75 e0             	push   -0x20(%ebp)
4150d4:	8b cb                	mov    %ebx,%ecx
4150d6:	57                   	push   %edi
4150d7:	ff 75 f8             	push   -0x8(%ebp)
4150da:	e8 4b ee ff ff       	call   0x413f2a
4150df:	8b 4b 44             	mov    0x44(%ebx),%ecx
4150e2:	8b 55 f0             	mov    -0x10(%ebp),%edx
4150e5:	c6 04 0a 08          	movb   $0x8,(%edx,%ecx,1)
4150e9:	85 c0                	test   %eax,%eax
4150eb:	74 09                	je     0x4150f6
4150ed:	8b 0b                	mov    (%ebx),%ecx
4150ef:	57                   	push   %edi
4150f0:	50                   	push   %eax
4150f1:	e8 59 68 ff ff       	call   0x40b94f
4150f6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4150f9:	8d 83 50 4c 00 00    	lea    0x4c50(%ebx),%eax
4150ff:	01 38                	add    %edi,(%eax)
415101:	c6 83 4a 4c 00 00 01 	movb   $0x1,0x4c4a(%ebx)
415108:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41510b:	83 50 04 00          	adcl   $0x0,0x4(%eax)
41510f:	8b 43 70             	mov    0x70(%ebx),%eax
415112:	2b c1                	sub    %ecx,%eax
415114:	23 83 f8 e6 00 00    	and    0xe6f8(%ebx),%eax
41511a:	ff 45 ec             	incl   -0x14(%ebp)
41511d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
415120:	83 45 f0 10          	addl   $0x10,-0x10(%ebp)
415124:	3b 4b 48             	cmp    0x48(%ebx),%ecx
415127:	0f 82 78 fe ff ff    	jb     0x414fa5
41512d:	eb 30                	jmp    0x41515f
41512f:	8b 45 f8             	mov    -0x8(%ebp),%eax
415132:	89 43 74             	mov    %eax,0x74(%ebx)
415135:	8b 45 ec             	mov    -0x14(%ebp),%eax
415138:	8b c8                	mov    %eax,%ecx
41513a:	3b 43 48             	cmp    0x48(%ebx),%eax
41513d:	73 1c                	jae    0x41515b
41513f:	c1 e0 04             	shl    $0x4,%eax
415142:	8b d0                	mov    %eax,%edx
415144:	8b 43 44             	mov    0x44(%ebx),%eax
415147:	03 c2                	add    %edx,%eax
415149:	80 38 08             	cmpb   $0x8,(%eax)
41514c:	74 04                	je     0x415152
41514e:	c6 40 0d 00          	movb   $0x0,0xd(%eax)
415152:	41                   	inc    %ecx
415153:	83 c2 10             	add    $0x10,%edx
415156:	3b 4b 48             	cmp    0x48(%ebx),%ecx
415159:	72 e9                	jb     0x415144
41515b:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
41515f:	33 d2                	xor    %edx,%edx
415161:	89 55 f4             	mov    %edx,-0xc(%ebp)
415164:	89 55 ec             	mov    %edx,-0x14(%ebp)
415167:	39 53 48             	cmp    %edx,0x48(%ebx)
41516a:	76 48                	jbe    0x4151b4
41516c:	8d 4b 44             	lea    0x44(%ebx),%ecx
41516f:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
415173:	76 14                	jbe    0x415189
415175:	8b 01                	mov    (%ecx),%eax
415177:	8b 7d ec             	mov    -0x14(%ebp),%edi
41517a:	2b 7d f4             	sub    -0xc(%ebp),%edi
41517d:	8d 34 02             	lea    (%edx,%eax,1),%esi
415180:	c1 e7 04             	shl    $0x4,%edi
415183:	03 f8                	add    %eax,%edi
415185:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415186:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415187:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415188:	a5                   	movsl  %ds:(%esi),%es:(%edi)
415189:	8b 01                	mov    (%ecx),%eax
41518b:	80 3c 02 08          	cmpb   $0x8,(%edx,%eax,1)
41518f:	75 03                	jne    0x415194
415191:	ff 45 f4             	incl   -0xc(%ebp)
415194:	ff 45 ec             	incl   -0x14(%ebp)
415197:	8b 45 ec             	mov    -0x14(%ebp),%eax
41519a:	83 c2 10             	add    $0x10,%edx
41519d:	3b 43 48             	cmp    0x48(%ebx),%eax
4151a0:	72 cd                	jb     0x41516f
4151a2:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4151a6:	76 0c                	jbe    0x4151b4
4151a8:	8b 43 48             	mov    0x48(%ebx),%eax
4151ab:	2b 45 f4             	sub    -0xc(%ebp),%eax
4151ae:	50                   	push   %eax
4151af:	e8 78 f3 ff ff       	call   0x41452c
4151b4:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
4151b8:	75 13                	jne    0x4151cd
4151ba:	ff 73 70             	push   0x70(%ebx)
4151bd:	8b cb                	mov    %ebx,%ecx
4151bf:	ff 75 f8             	push   -0x8(%ebp)
4151c2:	e8 bd ee ff ff       	call   0x414084
4151c7:	8b 43 70             	mov    0x70(%ebx),%eax
4151ca:	89 43 74             	mov    %eax,0x74(%ebx)
4151cd:	8b 8b f4 e6 00 00    	mov    0xe6f4(%ebx),%ecx
4151d3:	b8 00 00 40 00       	mov    $0x400000,%eax
4151d8:	3b c8                	cmp    %eax,%ecx
4151da:	73 02                	jae    0x4151de
4151dc:	8b c1                	mov    %ecx,%eax
4151de:	8b 4b 70             	mov    0x70(%ebx),%ecx
4151e1:	8b b3 f8 e6 00 00    	mov    0xe6f8(%ebx),%esi
4151e7:	03 c1                	add    %ecx,%eax
4151e9:	23 c6                	and    %esi,%eax
4151eb:	89 83 30 4b 00 00    	mov    %eax,0x4b30(%ebx)
4151f1:	3b c1                	cmp    %ecx,%eax
4151f3:	74 13                	je     0x415208
4151f5:	8b 53 74             	mov    0x74(%ebx),%edx
4151f8:	3b d1                	cmp    %ecx,%edx
4151fa:	74 15                	je     0x415211
4151fc:	2b c1                	sub    %ecx,%eax
4151fe:	2b d1                	sub    %ecx,%edx
415200:	23 c6                	and    %esi,%eax
415202:	23 d6                	and    %esi,%edx
415204:	3b d0                	cmp    %eax,%edx
415206:	73 09                	jae    0x415211
415208:	8b 43 74             	mov    0x74(%ebx),%eax
41520b:	89 83 30 4b 00 00    	mov    %eax,0x4b30(%ebx)
415211:	5f                   	pop    %edi
415212:	5e                   	pop    %esi
415213:	5b                   	pop    %ebx
415214:	c9                   	leave
415215:	c3                   	ret
415216:	b8 d8 94 42 00       	mov    $0x4294d8,%eax
41521b:	e8 98 4c 00 00       	call   0x419eb8
415220:	51                   	push   %ecx
415221:	56                   	push   %esi
415222:	8b f1                	mov    %ecx,%esi
415224:	89 75 f0             	mov    %esi,-0x10(%ebp)
415227:	c7 45 fc 0a 00 00 00 	movl   $0xa,-0x4(%ebp)
41522e:	e8 be fc ff ff       	call   0x414ef1
415233:	8b 86 34 4b 00 00    	mov    0x4b34(%esi),%eax
415239:	85 c0                	test   %eax,%eax
41523b:	74 07                	je     0x415244
41523d:	50                   	push   %eax
41523e:	e8 9f 4c 00 00       	call   0x419ee2
415243:	59                   	pop    %ecx
415244:	ff 76 14             	push   0x14(%esi)
415247:	e8 56 bc ff ff       	call   0x410ea2
41524c:	ff 76 20             	push   0x20(%esi)
41524f:	e8 a7 71 00 00       	call   0x41c3fb
415254:	59                   	pop    %ecx
415255:	8b 4e 18             	mov    0x18(%esi),%ecx
415258:	85 c9                	test   %ecx,%ecx
41525a:	74 07                	je     0x415263
41525c:	6a 03                	push   $0x3
41525e:	e8 ae e7 ff ff       	call   0x413a11
415263:	8d 8e e0 e6 00 00    	lea    0xe6e0(%esi),%ecx
415269:	e8 a1 d3 ff ff       	call   0x41260f
41526e:	8d 8e d0 e6 00 00    	lea    0xe6d0(%esi),%ecx
415274:	e8 96 d3 ff ff       	call   0x41260f
415279:	8d 8e c0 e6 00 00    	lea    0xe6c0(%esi),%ecx
41527f:	e8 8b d3 ff ff       	call   0x41260f
415284:	8d 8e b0 e6 00 00    	lea    0xe6b0(%esi),%ecx
41528a:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
41528e:	e8 41 44 ff ff       	call   0x4096d4
415293:	8d 8e 78 e6 00 00    	lea    0xe678(%esi),%ecx
415299:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
41529d:	e8 29 57 ff ff       	call   0x40a9cb
4152a2:	8d 8e 5c e3 00 00    	lea    0xe35c(%esi),%ecx
4152a8:	e8 72 c9 ff ff       	call   0x411c1f
4152ad:	8d 8e 38 4b 00 00    	lea    0x4b38(%esi),%ecx
4152b3:	e8 98 ce ff ff       	call   0x412150
4152b8:	8d 4e 44             	lea    0x44(%esi),%ecx
4152bb:	e8 4f d3 ff ff       	call   0x41260f
4152c0:	8d 4e 34             	lea    0x34(%esi),%ecx
4152c3:	e8 47 d3 ff ff       	call   0x41260f
4152c8:	8d 4e 24             	lea    0x24(%esi),%ecx
4152cb:	e8 3f d3 ff ff       	call   0x41260f
4152d0:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4152d4:	8d 4e 04             	lea    0x4(%esi),%ecx
4152d7:	e8 f8 43 ff ff       	call   0x4096d4
4152dc:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4152df:	5e                   	pop    %esi
4152e0:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4152e7:	c9                   	leave
4152e8:	c3                   	ret
4152e9:	8b c1                	mov    %ecx,%eax
4152eb:	33 c9                	xor    %ecx,%ecx
4152ed:	89 08                	mov    %ecx,(%eax)
4152ef:	89 48 04             	mov    %ecx,0x4(%eax)
4152f2:	89 48 08             	mov    %ecx,0x8(%eax)
4152f5:	89 48 0c             	mov    %ecx,0xc(%eax)
4152f8:	89 48 18             	mov    %ecx,0x18(%eax)
4152fb:	89 48 1c             	mov    %ecx,0x1c(%eax)
4152fe:	89 48 20             	mov    %ecx,0x20(%eax)
415301:	89 48 24             	mov    %ecx,0x24(%eax)
415304:	89 48 28             	mov    %ecx,0x28(%eax)
415307:	89 48 2c             	mov    %ecx,0x2c(%eax)
41530a:	89 48 30             	mov    %ecx,0x30(%eax)
41530d:	89 48 34             	mov    %ecx,0x34(%eax)
415310:	89 48 10             	mov    %ecx,0x10(%eax)
415313:	89 48 58             	mov    %ecx,0x58(%eax)
415316:	89 48 14             	mov    %ecx,0x14(%eax)
415319:	c3                   	ret
41531a:	53                   	push   %ebx
41531b:	56                   	push   %esi
41531c:	8b 74 24 0c          	mov    0xc(%esp),%esi
415320:	57                   	push   %edi
415321:	33 db                	xor    %ebx,%ebx
415323:	33 ff                	xor    %edi,%edi
415325:	39 5e 04             	cmp    %ebx,0x4(%esi)
415328:	76 19                	jbe    0x415343
41532a:	8b 06                	mov    (%esi),%eax
41532c:	8d 0c 03             	lea    (%ebx,%eax,1),%ecx
41532f:	51                   	push   %ecx
415330:	8b 08                	mov    (%eax),%ecx
415332:	e8 33 f2 ff ff       	call   0x41456a
415337:	47                   	inc    %edi
415338:	81 c3 e4 4a 00 00    	add    $0x4ae4,%ebx
41533e:	3b 7e 04             	cmp    0x4(%esi),%edi
415341:	72 e7                	jb     0x41532a
415343:	5f                   	pop    %edi
415344:	5e                   	pop    %esi
415345:	5b                   	pop    %ebx
415346:	c2 04 00             	ret    $0x4
415349:	53                   	push   %ebx
41534a:	33 db                	xor    %ebx,%ebx
41534c:	56                   	push   %esi
41534d:	8b f1                	mov    %ecx,%esi
41534f:	38 5c 24 0c          	cmp    %bl,0xc(%esp)
415353:	75 32                	jne    0x415387
415355:	68 ae 01 00 00       	push   $0x1ae
41535a:	8d 86 c0 e4 00 00    	lea    0xe4c0(%esi),%eax
415360:	53                   	push   %ebx
415361:	50                   	push   %eax
415362:	88 9e 74 e6 00 00    	mov    %bl,0xe674(%esi)
415368:	e8 93 4e 00 00       	call   0x41a200
41536d:	83 c4 0c             	add    $0xc,%esp
415370:	8b ce                	mov    %esi,%ecx
415372:	c7 86 bc e4 00 00 02 	movl   $0x2,0xe4bc(%esi)
415379:	00 00 00
41537c:	89 9e 70 e6 00 00    	mov    %ebx,0xe670(%esi)
415382:	e8 6a fb ff ff       	call   0x414ef1
415387:	88 9e 39 4c 00 00    	mov    %bl,0x4c39(%esi)
41538d:	5e                   	pop    %esi
41538e:	5b                   	pop    %ebx
41538f:	c2 04 00             	ret    $0x4
415392:	53                   	push   %ebx
415393:	8b d9                	mov    %ecx,%ebx
415395:	81 7b 48 ff 1f 00 00 	cmpl   $0x1fff,0x48(%ebx)
41539c:	56                   	push   %esi
41539d:	57                   	push   %edi
41539e:	72 05                	jb     0x4153a5
4153a0:	e8 c8 fb ff ff       	call   0x414f6d
4153a5:	8b 43 74             	mov    0x74(%ebx),%eax
4153a8:	8b 4b 70             	mov    0x70(%ebx),%ecx
4153ab:	8b 74 24 10          	mov    0x10(%esp),%esi
4153af:	3b c1                	cmp    %ecx,%eax
4153b1:	74 12                	je     0x4153c5
4153b3:	2b c1                	sub    %ecx,%eax
4153b5:	23 83 f8 e6 00 00    	and    0xe6f8(%ebx),%eax
4153bb:	3b 46 04             	cmp    0x4(%esi),%eax
4153be:	77 05                	ja     0x4153c5
4153c0:	33 c0                	xor    %eax,%eax
4153c2:	40                   	inc    %eax
4153c3:	eb 02                	jmp    0x4153c7
4153c5:	33 c0                	xor    %eax,%eax
4153c7:	88 46 0d             	mov    %al,0xd(%esi)
4153ca:	8b 43 70             	mov    0x70(%ebx),%eax
4153cd:	03 46 04             	add    0x4(%esi),%eax
4153d0:	83 ec 10             	sub    $0x10,%esp
4153d3:	23 83 f8 e6 00 00    	and    0xe6f8(%ebx),%eax
4153d9:	8b fc                	mov    %esp,%edi
4153db:	89 46 04             	mov    %eax,0x4(%esi)
4153de:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4153df:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4153e0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4153e1:	8d 4b 44             	lea    0x44(%ebx),%ecx
4153e4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4153e5:	e8 5c f1 ff ff       	call   0x414546
4153ea:	5f                   	pop    %edi
4153eb:	5e                   	pop    %esi
4153ec:	b0 01                	mov    $0x1,%al
4153ee:	5b                   	pop    %ebx
4153ef:	c2 04 00             	ret    $0x4
4153f2:	53                   	push   %ebx
4153f3:	56                   	push   %esi
4153f4:	33 db                	xor    %ebx,%ebx
4153f6:	57                   	push   %edi
4153f7:	8b f1                	mov    %ecx,%esi
4153f9:	38 5c 24 10          	cmp    %bl,0x10(%esp)
4153fd:	75 57                	jne    0x415456
4153ff:	6a 10                	push   $0x10
415401:	8d 46 54             	lea    0x54(%esi),%eax
415404:	53                   	push   %ebx
415405:	50                   	push   %eax
415406:	e8 f5 4d 00 00       	call   0x41a200
41540b:	68 9c 4a 00 00       	push   $0x4a9c
415410:	8d 86 94 00 00 00    	lea    0x94(%esi),%eax
415416:	53                   	push   %ebx
415417:	50                   	push   %eax
415418:	89 5e 64             	mov    %ebx,0x64(%esi)
41541b:	89 5e 68             	mov    %ebx,0x68(%esi)
41541e:	89 5e 6c             	mov    %ebx,0x6c(%esi)
415421:	e8 da 4d 00 00       	call   0x41a200
415426:	8b 86 f4 e6 00 00    	mov    0xe6f4(%esi),%eax
41542c:	b9 00 00 40 00       	mov    $0x400000,%ecx
415431:	83 c4 18             	add    $0x18,%esp
415434:	89 5e 74             	mov    %ebx,0x74(%esi)
415437:	89 5e 70             	mov    %ebx,0x70(%esi)
41543a:	3b c1                	cmp    %ecx,%eax