4190ea:	83 7d f8 08          	cmpl   $0x8,-0x8(%ebp)
4190ee:	89 73 14             	mov    %esi,0x14(%ebx)
4190f1:	51                   	push   %ecx
4190f2:	8d 14 01             	lea    (%ecx,%eax,1),%edx
4190f5:	89 55 fc             	mov    %edx,-0x4(%ebp)
4190f8:	0f 82 93 00 00 00    	jb     0x419191
4190fe:	8b 33                	mov    (%ebx),%esi
419100:	56                   	push   %esi
419101:	50                   	push   %eax
419102:	e8 19 25 05 00       	call   0x46b620
419107:	8b 45 14             	mov    0x14(%ebp),%eax
41910a:	83 c4 0c             	add    $0xc,%esp
41910d:	85 c0                	test   %eax,%eax
41910f:	74 1e                	je     0x41912f
419111:	8b 7d fc             	mov    -0x4(%ebp),%edi
419114:	8b c8                	mov    %eax,%ecx
419116:	8b 45 18             	mov    0x18(%ebp),%eax
419119:	0f b7 d0             	movzwl %ax,%edx
41911c:	8b c2                	mov    %edx,%eax
41911e:	c1 e2 10             	shl    $0x10,%edx
419121:	0b c2                	or     %edx,%eax
419123:	d1 e9                	shr    $1,%ecx
419125:	f3 ab                	rep stos %eax,%es:(%edi)
419127:	13 c9                	adc    %ecx,%ecx
419129:	66 f3 ab             	rep stos %ax,%es:(%edi)
41912c:	8b 7d f4             	mov    -0xc(%ebp),%edi
41912f:	8b 4d 10             	mov    0x10(%ebp),%ecx
419132:	2b f9                	sub    %ecx,%edi
419134:	8d 04 7d 02 00 00 00 	lea    0x2(,%edi,2),%eax
41913b:	8b 7d f0             	mov    -0x10(%ebp),%edi
41913e:	50                   	push   %eax
41913f:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
419142:	03 c6                	add    %esi,%eax
419144:	50                   	push   %eax
419145:	8b 45 14             	mov    0x14(%ebp),%eax
419148:	03 c1                	add    %ecx,%eax
41914a:	8d 04 47             	lea    (%edi,%eax,2),%eax
41914d:	50                   	push   %eax
41914e:	e8 cd 24 05 00       	call   0x46b620
419153:	8b 45 f8             	mov    -0x8(%ebp),%eax
419156:	83 c4 0c             	add    $0xc,%esp
419159:	8d 0c 45 02 00 00 00 	lea    0x2(,%eax,2),%ecx
419160:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
419166:	72 12                	jb     0x41917a
419168:	8b 56 fc             	mov    -0x4(%esi),%edx
41916b:	83 c1 23             	add    $0x23,%ecx
41916e:	2b f2                	sub    %edx,%esi
419170:	8d 46 fc             	lea    -0x4(%esi),%eax
419173:	83 f8 1f             	cmp    $0x1f,%eax
419176:	77 7f                	ja     0x4191f7
419178:	8b f2                	mov    %edx,%esi
41917a:	51                   	push   %ecx
41917b:	56                   	push   %esi
41917c:	e8 87 08 05 00       	call   0x469a08
419181:	83 c4 08             	add    $0x8,%esp
419184:	89 3b                	mov    %edi,(%ebx)
419186:	8b c3                	mov    %ebx,%eax
419188:	5f                   	pop    %edi
419189:	5e                   	pop    %esi
41918a:	5b                   	pop    %ebx
41918b:	8b e5                	mov    %ebp,%esp
41918d:	5d                   	pop    %ebp
41918e:	c2 14 00             	ret    $0x14
419191:	53                   	push   %ebx
419192:	50                   	push   %eax
419193:	e8 88 24 05 00       	call   0x46b620
419198:	8b 75 14             	mov    0x14(%ebp),%esi
41919b:	83 c4 0c             	add    $0xc,%esp
41919e:	85 f6                	test   %esi,%esi
4191a0:	74 1e                	je     0x4191c0
4191a2:	8b 45 18             	mov    0x18(%ebp),%eax
4191a5:	8b ce                	mov    %esi,%ecx
4191a7:	8b 7d fc             	mov    -0x4(%ebp),%edi
4191aa:	0f b7 d0             	movzwl %ax,%edx
4191ad:	8b c2                	mov    %edx,%eax
4191af:	c1 e2 10             	shl    $0x10,%edx
4191b2:	0b c2                	or     %edx,%eax
4191b4:	d1 e9                	shr    $1,%ecx
4191b6:	f3 ab                	rep stos %eax,%es:(%edi)
4191b8:	13 c9                	adc    %ecx,%ecx
4191ba:	66 f3 ab             	rep stos %ax,%es:(%edi)
4191bd:	8b 7d f4             	mov    -0xc(%ebp),%edi
4191c0:	8b 55 10             	mov    0x10(%ebp),%edx
4191c3:	2b fa                	sub    %edx,%edi
4191c5:	8d 04 7d 02 00 00 00 	lea    0x2(,%edi,2),%eax
4191cc:	8b 7d f0             	mov    -0x10(%ebp),%edi
4191cf:	8d 0c 12             	lea    (%edx,%edx,1),%ecx
4191d2:	03 cb                	add    %ebx,%ecx
4191d4:	50                   	push   %eax
4191d5:	51                   	push   %ecx
4191d6:	8d 0c 32             	lea    (%edx,%esi,1),%ecx
4191d9:	8d 0c 4f             	lea    (%edi,%ecx,2),%ecx
4191dc:	51                   	push   %ecx
4191dd:	e8 3e 24 05 00       	call   0x46b620
4191e2:	83 c4 0c             	add    $0xc,%esp
4191e5:	89 3b                	mov    %edi,(%ebx)
4191e7:	8b c3                	mov    %ebx,%eax
4191e9:	5f                   	pop    %edi
4191ea:	5e                   	pop    %esi
4191eb:	5b                   	pop    %ebx
4191ec:	8b e5                	mov    %ebp,%esp
4191ee:	5d                   	pop    %ebp
4191ef:	c2 14 00             	ret    $0x14
4191f2:	e8 e9 81 fe ff       	call   0x4013e0
4191f7:	e8 35 04 06 00       	call   0x479631
4191fc:	cc                   	int3
4191fd:	cc                   	int3
4191fe:	cc                   	int3
4191ff:	cc                   	int3
419200:	55                   	push   %ebp
419201:	8b ec                	mov    %esp,%ebp
419203:	83 ec 10             	sub    $0x10,%esp
419206:	53                   	push   %ebx
419207:	8b d9                	mov    %ecx,%ebx
419209:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
41920e:	8b c1                	mov    %ecx,%eax
419210:	56                   	push   %esi
419211:	8b 75 08             	mov    0x8(%ebp),%esi
419214:	8b 53 10             	mov    0x10(%ebx),%edx
419217:	2b c2                	sub    %edx,%eax
419219:	89 55 fc             	mov    %edx,-0x4(%ebp)
41921c:	57                   	push   %edi
41921d:	3b c6                	cmp    %esi,%eax
41921f:	0f 82 2a 01 00 00    	jb     0x41934f
419225:	8d 04 32             	lea    (%edx,%esi,1),%eax
419228:	8b 73 14             	mov    0x14(%ebx),%esi
41922b:	8b f8                	mov    %eax,%edi
41922d:	89 45 f8             	mov    %eax,-0x8(%ebp)
419230:	83 cf 0f             	or     $0xf,%edi
419233:	89 75 f4             	mov    %esi,-0xc(%ebp)
419236:	3b f9                	cmp    %ecx,%edi
419238:	76 04                	jbe    0x41923e
41923a:	8b f9                	mov    %ecx,%edi
41923c:	eb 18                	jmp    0x419256
41923e:	8b c6                	mov    %esi,%eax
419240:	d1 e8                	shr    $1,%eax
419242:	2b c8                	sub    %eax,%ecx
419244:	3b f1                	cmp    %ecx,%esi
419246:	76 07                	jbe    0x41924f
419248:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
41924d:	eb 07                	jmp    0x419256
41924f:	03 c6                	add    %esi,%eax
419251:	3b f8                	cmp    %eax,%edi
419253:	0f 42 f8             	cmovb  %eax,%edi
419256:	33 c9                	xor    %ecx,%ecx
419258:	8b c7                	mov    %edi,%eax
41925a:	83 c0 01             	add    $0x1,%eax
41925d:	0f 92 c1             	setb   %cl
419260:	f7 d9                	neg    %ecx
419262:	0b c8                	or     %eax,%ecx
419264:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
41926a:	72 2a                	jb     0x419296
41926c:	8d 41 23             	lea    0x23(%ecx),%eax
41926f:	3b c1                	cmp    %ecx,%eax
419271:	0f 86 dd 00 00 00    	jbe    0x419354
419277:	50                   	push   %eax
419278:	e8 5b 07 05 00       	call   0x4699d8
41927d:	83 c4 04             	add    $0x4,%esp
419280:	85 c0                	test   %eax,%eax
419282:	0f 84 d1 00 00 00    	je     0x419359
419288:	8b 55 fc             	mov    -0x4(%ebp),%edx
41928b:	8d 70 23             	lea    0x23(%eax),%esi
41928e:	83 e6 e0             	and    $0xffffffe0,%esi
419291:	89 46 fc             	mov    %eax,-0x4(%esi)
419294:	eb 16                	jmp    0x4192ac
419296:	85 c9                	test   %ecx,%ecx
419298:	74 10                	je     0x4192aa
41929a:	51                   	push   %ecx
41929b:	e8 38 07 05 00       	call   0x4699d8
4192a0:	8b 55 fc             	mov    -0x4(%ebp),%edx
4192a3:	83 c4 04             	add    $0x4,%esp
4192a6:	8b f0                	mov    %eax,%esi
4192a8:	eb 02                	jmp    0x4192ac
4192aa:	33 f6                	xor    %esi,%esi
4192ac:	8b 45 f8             	mov    -0x8(%ebp),%eax
4192af:	89 43 10             	mov    %eax,0x10(%ebx)
4192b2:	0f be 45 14          	movsbl 0x14(%ebp),%eax
4192b6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4192b9:	8b 45 10             	mov    0x10(%ebp),%eax
4192bc:	89 7b 14             	mov    %edi,0x14(%ebx)
4192bf:	8d 3c 16             	lea    (%esi,%edx,1),%edi
4192c2:	03 c7                	add    %edi,%eax
4192c4:	89 7d f0             	mov    %edi,-0x10(%ebp)
4192c7:	83 7d f4 10          	cmpl   $0x10,-0xc(%ebp)
4192cb:	89 45 f8             	mov    %eax,-0x8(%ebp)
4192ce:	52                   	push   %edx
4192cf:	72 55                	jb     0x419326
4192d1:	8b 3b                	mov    (%ebx),%edi
4192d3:	57                   	push   %edi
4192d4:	56                   	push   %esi
4192d5:	e8 46 23 05 00       	call   0x46b620
4192da:	ff 75 10             	push   0x10(%ebp)
4192dd:	ff 75 fc             	push   -0x4(%ebp)
4192e0:	ff 75 f0             	push   -0x10(%ebp)
4192e3:	e8 c8 28 05 00       	call   0x46bbb0
4192e8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4192eb:	83 c4 18             	add    $0x18,%esp
4192ee:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4192f1:	41                   	inc    %ecx
4192f2:	c6 00 00             	movb   $0x0,(%eax)
4192f5:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4192fb:	72 12                	jb     0x41930f
4192fd:	8b 57 fc             	mov    -0x4(%edi),%edx
419300:	83 c1 23             	add    $0x23,%ecx
419303:	2b fa                	sub    %edx,%edi
419305:	8d 47 fc             	lea    -0x4(%edi),%eax
419308:	83 f8 1f             	cmp    $0x1f,%eax
41930b:	77 4c                	ja     0x419359
41930d:	8b fa                	mov    %edx,%edi
41930f:	51                   	push   %ecx
419310:	57                   	push   %edi
419311:	e8 f2 06 05 00       	call   0x469a08
419316:	83 c4 08             	add    $0x8,%esp
419319:	89 33                	mov    %esi,(%ebx)
41931b:	8b c3                	mov    %ebx,%eax
41931d:	5f                   	pop    %edi
41931e:	5e                   	pop    %esi
41931f:	5b                   	pop    %ebx
419320:	8b e5                	mov    %ebp,%esp
419322:	5d                   	pop    %ebp
419323:	c2 10 00             	ret    $0x10
419326:	53                   	push   %ebx
419327:	56                   	push   %esi
419328:	e8 f3 22 05 00       	call   0x46b620
41932d:	ff 75 10             	push   0x10(%ebp)
419330:	ff 75 fc             	push   -0x4(%ebp)
419333:	57                   	push   %edi
419334:	e8 77 28 05 00       	call   0x46bbb0
419339:	8b 45 f8             	mov    -0x8(%ebp),%eax
41933c:	83 c4 18             	add    $0x18,%esp
41933f:	c6 00 00             	movb   $0x0,(%eax)
419342:	8b c3                	mov    %ebx,%eax
419344:	5f                   	pop    %edi
419345:	89 33                	mov    %esi,(%ebx)
419347:	5e                   	pop    %esi
419348:	5b                   	pop    %ebx
419349:	8b e5                	mov    %ebp,%esp
41934b:	5d                   	pop    %ebp
41934c:	c2 10 00             	ret    $0x10
41934f:	e8 8c 80 fe ff       	call   0x4013e0
419354:	e8 e7 7f fe ff       	call   0x401340
419359:	e8 d3 02 06 00       	call   0x479631
41935e:	cc                   	int3
41935f:	cc                   	int3
419360:	55                   	push   %ebp
419361:	8b ec                	mov    %esp,%ebp
419363:	6a ff                	push   $0xffffffff
419365:	68 e0 87 49 00       	push   $0x4987e0
41936a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
419370:	50                   	push   %eax
419371:	56                   	push   %esi
419372:	57                   	push   %edi
419373:	a1 14 40 4c 00       	mov    0x4c4014,%eax
419378:	33 c5                	xor    %ebp,%eax
41937a:	50                   	push   %eax
41937b:	8d 45 f4             	lea    -0xc(%ebp),%eax
41937e:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
419384:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
41938b:	8b 09                	mov    (%ecx),%ecx
41938d:	8b 01                	mov    (%ecx),%eax
41938f:	8b 40 04             	mov    0x4(%eax),%eax
419392:	8b 7c 08 38          	mov    0x38(%eax,%ecx,1),%edi
419396:	85 ff                	test   %edi,%edi
419398:	74 11                	je     0x4193ab
41939a:	8b 07                	mov    (%edi),%eax
41939c:	8b 70 08             	mov    0x8(%eax),%esi
41939f:	8b ce                	mov    %esi,%ecx
4193a1:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4193a7:	8b cf                	mov    %edi,%ecx
4193a9:	ff d6                	call   *%esi
4193ab:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4193ae:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4193b5:	59                   	pop    %ecx
4193b6:	5f                   	pop    %edi
4193b7:	5e                   	pop    %esi
4193b8:	8b e5                	mov    %ebp,%esp
4193ba:	5d                   	pop    %ebp
4193bb:	c3                   	ret
4193bc:	cc                   	int3
4193bd:	cc                   	int3
4193be:	cc                   	int3
4193bf:	cc                   	int3
4193c0:	cc                   	int3
4193c1:	cc                   	int3
4193c2:	cc                   	int3
4193c3:	cc                   	int3
4193c4:	cc                   	int3
4193c5:	cc                   	int3
4193c6:	cc                   	int3
4193c7:	cc                   	int3
4193c8:	cc                   	int3
4193c9:	cc                   	int3
4193ca:	cc                   	int3
4193cb:	cc                   	int3
4193cc:	cc                   	int3
4193cd:	cc                   	int3
4193ce:	cc                   	int3
4193cf:	cc                   	int3
4193d0:	55                   	push   %ebp
4193d1:	8b ec                	mov    %esp,%ebp
4193d3:	6a ff                	push   $0xffffffff
4193d5:	68 dd 8e 49 00       	push   $0x498edd
4193da:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4193e0:	50                   	push   %eax
4193e1:	83 ec 3c             	sub    $0x3c,%esp
4193e4:	a1 14 40 4c 00       	mov    0x4c4014,%eax
4193e9:	33 c5                	xor    %ebp,%eax
4193eb:	89 45 f0             	mov    %eax,-0x10(%ebp)
4193ee:	53                   	push   %ebx
4193ef:	56                   	push   %esi
4193f0:	57                   	push   %edi
4193f1:	50                   	push   %eax
4193f2:	8d 45 f4             	lea    -0xc(%ebp),%eax
4193f5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4193fb:	8b d9                	mov    %ecx,%ebx
4193fd:	8b 45 08             	mov    0x8(%ebp),%eax
419400:	89 45 b8             	mov    %eax,-0x48(%ebp)
419403:	8b 45 20             	mov    0x20(%ebp),%eax
419406:	89 45 bc             	mov    %eax,-0x44(%ebp)
419409:	8b 45 24             	mov    0x24(%ebp),%eax
41940c:	89 45 c0             	mov    %eax,-0x40(%ebp)
41940f:	8b 45 1c             	mov    0x1c(%ebp),%eax
419412:	8b 40 30             	mov    0x30(%eax),%eax
419415:	8b 78 04             	mov    0x4(%eax),%edi
419418:	89 7d cc             	mov    %edi,-0x34(%ebp)
41941b:	8b 07                	mov    (%edi),%eax
41941d:	8b 70 04             	mov    0x4(%eax),%esi
419420:	8b ce                	mov    %esi,%ecx
419422:	ff 15 d4 e2 49 00    	call   *0x49e2d4
419428:	8b cf                	mov    %edi,%ecx
41942a:	ff d6                	call   *%esi
41942c:	8d 45 c8             	lea    -0x38(%ebp),%eax
41942f:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
419436:	50                   	push   %eax
419437:	68 00 08 00 00       	push   $0x800
41943c:	8d 45 14             	lea    0x14(%ebp),%eax
41943f:	50                   	push   %eax
419440:	8d 45 0c             	lea    0xc(%ebp),%eax
419443:	50                   	push   %eax
419444:	8d 45 d0             	lea    -0x30(%ebp),%eax
419447:	50                   	push   %eax
419448:	53                   	push   %ebx
419449:	e8 82 25 00 00       	call   0x41b9d0
41944e:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
419455:	83 c4 18             	add    $0x18,%esp
419458:	8b 7d cc             	mov    -0x34(%ebp),%edi
41945b:	8b d8                	mov    %eax,%ebx
41945d:	85 ff                	test   %edi,%edi
41945f:	74 29                	je     0x41948a
419461:	8b 07                	mov    (%edi),%eax