418261:	2b d1                	sub    %ecx,%edx
418263:	88 07                	mov    %al,(%edi)
418265:	83 c7 01             	add    $0x1,%edi
418268:	83 e9 01             	sub    $0x1,%ecx
41826b:	75 f6                	jne    0x418263
41826d:	8b c8                	mov    %eax,%ecx
41826f:	c1 e0 08             	shl    $0x8,%eax
418272:	03 c1                	add    %ecx,%eax
418274:	8b c8                	mov    %eax,%ecx
418276:	c1 e0 10             	shl    $0x10,%eax
418279:	03 c1                	add    %ecx,%eax
41827b:	8b ca                	mov    %edx,%ecx
41827d:	83 e2 03             	and    $0x3,%edx
418280:	c1 e9 02             	shr    $0x2,%ecx
418283:	74 06                	je     0x41828b
418285:	f3 ab                	rep stos %eax,%es:(%edi)
418287:	85 d2                	test   %edx,%edx
418289:	74 0a                	je     0x418295
41828b:	88 07                	mov    %al,(%edi)
41828d:	83 c7 01             	add    $0x1,%edi
418290:	83 ea 01             	sub    $0x1,%edx
418293:	75 f6                	jne    0x41828b
418295:	8b 44 24 08          	mov    0x8(%esp),%eax
418299:	5f                   	pop    %edi
41829a:	c3                   	ret
41829b:	8b 44 24 04          	mov    0x4(%esp),%eax
41829f:	c3                   	ret
4182a0:	55                   	push   %ebp
4182a1:	8b ec                	mov    %esp,%ebp
4182a3:	e8 ff 49 00 00       	call   0x41cca7
4182a8:	8b 40 60             	mov    0x60(%eax),%eax
4182ab:	3b 05 d4 e1 4a 00    	cmp    0x4ae1d4,%eax
4182b1:	74 05                	je     0x4182b8
4182b3:	e8 4e 1d 00 00       	call   0x41a006
4182b8:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
4182bc:	75 06                	jne    0x4182c4
4182be:	5d                   	pop    %ebp
4182bf:	e9 dc 8e 00 00       	jmp    0x4211a0
4182c4:	8b 4d 08             	mov    0x8(%ebp),%ecx
4182c7:	53                   	push   %ebx
4182c8:	56                   	push   %esi
4182c9:	eb 2f                	jmp    0x4182fa
4182cb:	0f b6 f2             	movzbl %dl,%esi
4182ce:	f6 44 06 1d 04       	testb  $0x4,0x1d(%esi,%eax,1)
4182d3:	74 1c                	je     0x4182f1
4182d5:	41                   	inc    %ecx
4182d6:	8a 19                	mov    (%ecx),%bl
4182d8:	84 db                	test   %bl,%bl
4182da:	74 3b                	je     0x418317
4182dc:	0f b7 d2             	movzwl %dx,%edx
4182df:	0f b6 f3             	movzbl %bl,%esi
4182e2:	c1 e2 08             	shl    $0x8,%edx
4182e5:	0b d6                	or     %esi,%edx
4182e7:	39 55 0c             	cmp    %edx,0xc(%ebp)
4182ea:	75 0d                	jne    0x4182f9
4182ec:	8d 41 ff             	lea    -0x1(%ecx),%eax
4182ef:	eb 22                	jmp    0x418313
4182f1:	0f b7 f2             	movzwl %dx,%esi
4182f4:	39 75 0c             	cmp    %esi,0xc(%ebp)
4182f7:	74 0a                	je     0x418303
4182f9:	41                   	inc    %ecx
4182fa:	66 0f b6 11          	movzbw (%ecx),%dx
4182fe:	66 85 d2             	test   %dx,%dx
418301:	75 c8                	jne    0x4182cb
418303:	8b 45 0c             	mov    0xc(%ebp),%eax
418306:	0f b7 d2             	movzwl %dx,%edx
418309:	2b c2                	sub    %edx,%eax
41830b:	f7 d8                	neg    %eax
41830d:	1b c0                	sbb    %eax,%eax
41830f:	f7 d0                	not    %eax
418311:	23 c1                	and    %ecx,%eax
418313:	5e                   	pop    %esi
418314:	5b                   	pop    %ebx
418315:	5d                   	pop    %ebp
418316:	c3                   	ret
418317:	33 c0                	xor    %eax,%eax
418319:	eb f8                	jmp    0x418313
41831b:	6a 14                	push   $0x14
41831d:	68 80 1c 49 00       	push   $0x491c80
418322:	e8 c1 fe ff ff       	call   0x4181e8
418327:	8b 7d 08             	mov    0x8(%ebp),%edi
41832a:	33 db                	xor    %ebx,%ebx
41832c:	3b fb                	cmp    %ebx,%edi
41832e:	75 0e                	jne    0x41833e
418330:	ff 75 0c             	push   0xc(%ebp)
418333:	e8 54 e0 ff ff       	call   0x41638c
418338:	59                   	pop    %ecx
418339:	e9 84 01 00 00       	jmp    0x4184c2
41833e:	8b 75 0c             	mov    0xc(%ebp),%esi
418341:	3b f3                	cmp    %ebx,%esi
418343:	75 0c                	jne    0x418351
418345:	57                   	push   %edi
418346:	e8 53 e0 ff ff       	call   0x41639e
41834b:	59                   	pop    %ecx
41834c:	e9 6f 01 00 00       	jmp    0x4184c0
418351:	83 3d 58 e1 4a 00 03 	cmpl   $0x3,0x4ae158
418358:	0f 85 2e 01 00 00    	jne    0x41848c
41835e:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
418361:	83 fe e0             	cmp    $0xffffffe0,%esi
418364:	0f 87 f1 00 00 00    	ja     0x41845b
41836a:	6a 04                	push   $0x4
41836c:	e8 fd 29 00 00       	call   0x41ad6e
418371:	59                   	pop    %ecx
418372:	89 5d fc             	mov    %ebx,-0x4(%ebp)
418375:	57                   	push   %edi
418376:	e8 71 2b 00 00       	call   0x41aeec
41837b:	59                   	pop    %ecx
41837c:	89 45 e0             	mov    %eax,-0x20(%ebp)
41837f:	3b c3                	cmp    %ebx,%eax
418381:	0f 84 a4 00 00 00    	je     0x41842b
418387:	3b 35 38 e1 4a 00    	cmp    0x4ae138,%esi
41838d:	77 4c                	ja     0x4183db
41838f:	56                   	push   %esi
418390:	57                   	push   %edi
418391:	50                   	push   %eax
418392:	e8 55 30 00 00       	call   0x41b3ec
418397:	83 c4 0c             	add    $0xc,%esp
41839a:	85 c0                	test   %eax,%eax
41839c:	74 05                	je     0x4183a3
41839e:	89 7d e4             	mov    %edi,-0x1c(%ebp)
4183a1:	eb 38                	jmp    0x4183db
4183a3:	56                   	push   %esi
4183a4:	e8 67 37 00 00       	call   0x41bb10
4183a9:	59                   	pop    %ecx
4183aa:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4183ad:	3b c3                	cmp    %ebx,%eax
4183af:	74 2a                	je     0x4183db
4183b1:	8b 47 fc             	mov    -0x4(%edi),%eax
4183b4:	48                   	dec    %eax
4183b5:	89 45 dc             	mov    %eax,-0x24(%ebp)
4183b8:	3b c6                	cmp    %esi,%eax
4183ba:	72 02                	jb     0x4183be
4183bc:	8b c6                	mov    %esi,%eax
4183be:	50                   	push   %eax
4183bf:	57                   	push   %edi
4183c0:	ff 75 e4             	push   -0x1c(%ebp)
4183c3:	e8 a8 f4 ff ff       	call   0x417870
4183c8:	57                   	push   %edi
4183c9:	e8 1e 2b 00 00       	call   0x41aeec
4183ce:	89 45 e0             	mov    %eax,-0x20(%ebp)
4183d1:	57                   	push   %edi
4183d2:	50                   	push   %eax
4183d3:	e8 3f 2b 00 00       	call   0x41af17
4183d8:	83 c4 18             	add    $0x18,%esp
4183db:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
4183de:	75 4b                	jne    0x41842b
4183e0:	3b f3                	cmp    %ebx,%esi
4183e2:	75 06                	jne    0x4183ea
4183e4:	33 f6                	xor    %esi,%esi
4183e6:	46                   	inc    %esi
4183e7:	89 75 0c             	mov    %esi,0xc(%ebp)
4183ea:	83 c6 0f             	add    $0xf,%esi
4183ed:	83 e6 f0             	and    $0xfffffff0,%esi
4183f0:	89 75 0c             	mov    %esi,0xc(%ebp)
4183f3:	56                   	push   %esi
4183f4:	53                   	push   %ebx
4183f5:	ff 35 48 e1 4a 00    	push   0x4ae148
4183fb:	ff 15 ec 01 4b 00    	call   *0x4b01ec
418401:	89 45 e4             	mov    %eax,-0x1c(%ebp)
418404:	3b c3                	cmp    %ebx,%eax
418406:	74 23                	je     0x41842b
418408:	8b 47 fc             	mov    -0x4(%edi),%eax
41840b:	48                   	dec    %eax
41840c:	89 45 dc             	mov    %eax,-0x24(%ebp)
41840f:	3b c6                	cmp    %esi,%eax
418411:	72 02                	jb     0x418415
418413:	8b c6                	mov    %esi,%eax
418415:	50                   	push   %eax
418416:	57                   	push   %edi
418417:	ff 75 e4             	push   -0x1c(%ebp)
41841a:	e8 51 f4 ff ff       	call   0x417870
41841f:	57                   	push   %edi
418420:	ff 75 e0             	push   -0x20(%ebp)
418423:	e8 ef 2a 00 00       	call   0x41af17
418428:	83 c4 14             	add    $0x14,%esp
41842b:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41842f:	e8 4f 00 00 00       	call   0x418483
418434:	39 5d e0             	cmp    %ebx,-0x20(%ebp)
418437:	75 22                	jne    0x41845b
418439:	3b f3                	cmp    %ebx,%esi
41843b:	75 03                	jne    0x418440
41843d:	33 f6                	xor    %esi,%esi
41843f:	46                   	inc    %esi
418440:	83 c6 0f             	add    $0xf,%esi
418443:	83 e6 f0             	and    $0xfffffff0,%esi
418446:	89 75 0c             	mov    %esi,0xc(%ebp)
418449:	56                   	push   %esi
41844a:	57                   	push   %edi
41844b:	53                   	push   %ebx
41844c:	ff 35 48 e1 4a 00    	push   0x4ae148
418452:	ff 15 44 01 4b 00    	call   *0x4b0144
418458:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41845b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41845e:	3b c3                	cmp    %ebx,%eax
418460:	75 60                	jne    0x4184c2
418462:	39 1d a4 c8 4a 00    	cmp    %ebx,0x4ac8a4
418468:	74 58                	je     0x4184c2
41846a:	56                   	push   %esi
41846b:	e8 c6 39 00 00       	call   0x41be36
418470:	59                   	pop    %ecx
418471:	85 c0                	test   %eax,%eax
418473:	0f 85 e5 fe ff ff    	jne    0x41835e
418479:	eb 45                	jmp    0x4184c0
41847b:	33 db                	xor    %ebx,%ebx
41847d:	8b 75 0c             	mov    0xc(%ebp),%esi
418480:	8b 7d 08             	mov    0x8(%ebp),%edi
418483:	6a 04                	push   $0x4
418485:	e8 17 28 00 00       	call   0x41aca1
41848a:	59                   	pop    %ecx
41848b:	c3                   	ret
41848c:	33 c0                	xor    %eax,%eax
41848e:	83 fe e0             	cmp    $0xffffffe0,%esi
418491:	77 16                	ja     0x4184a9
418493:	3b f3                	cmp    %ebx,%esi
418495:	75 03                	jne    0x41849a
418497:	33 f6                	xor    %esi,%esi
418499:	46                   	inc    %esi
41849a:	56                   	push   %esi
41849b:	57                   	push   %edi
41849c:	53                   	push   %ebx
41849d:	ff 35 48 e1 4a 00    	push   0x4ae148
4184a3:	ff 15 44 01 4b 00    	call   *0x4b0144
4184a9:	3b c3                	cmp    %ebx,%eax
4184ab:	75 15                	jne    0x4184c2
4184ad:	39 1d a4 c8 4a 00    	cmp    %ebx,0x4ac8a4
4184b3:	74 0d                	je     0x4184c2
4184b5:	56                   	push   %esi
4184b6:	e8 7b 39 00 00       	call   0x41be36
4184bb:	59                   	pop    %ecx
4184bc:	85 c0                	test   %eax,%eax
4184be:	75 cc                	jne    0x41848c
4184c0:	33 c0                	xor    %eax,%eax
4184c2:	e8 5c fd ff ff       	call   0x418223
4184c7:	c3                   	ret
4184c8:	8b 44 24 04          	mov    0x4(%esp),%eax
4184cc:	66 8b 08             	mov    (%eax),%cx
4184cf:	40                   	inc    %eax
4184d0:	40                   	inc    %eax
4184d1:	66 85 c9             	test   %cx,%cx
4184d4:	75 f6                	jne    0x4184cc
4184d6:	2b 44 24 04          	sub    0x4(%esp),%eax
4184da:	d1 f8                	sar    $1,%eax
4184dc:	48                   	dec    %eax
4184dd:	c3                   	ret
4184de:	8b 00                	mov    (%eax),%eax
4184e0:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
4184e6:	74 03                	je     0x4184eb
4184e8:	33 c0                	xor    %eax,%eax
4184ea:	c3                   	ret
4184eb:	e9 99 4a 00 00       	jmp    0x41cf89
4184f0:	6a 14                	push   $0x14
4184f2:	68 90 1c 49 00       	push   $0x491c90
4184f7:	e8 ec fc ff ff       	call   0x4181e8
4184fc:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
418500:	ff 4d 10             	decl   0x10(%ebp)
418503:	78 0e                	js     0x418513
418505:	8b 4d 08             	mov    0x8(%ebp),%ecx
418508:	2b 4d 0c             	sub    0xc(%ebp),%ecx
41850b:	89 4d 08             	mov    %ecx,0x8(%ebp)
41850e:	ff 55 14             	call   *0x14(%ebp)
418511:	eb ed                	jmp    0x418500
418513:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
418517:	e8 07 fd ff ff       	call   0x418223
41851c:	c2 10 00             	ret    $0x10
41851f:	8b 45 ec             	mov    -0x14(%ebp),%eax
418522:	89 45 e4             	mov    %eax,-0x1c(%ebp)
418525:	8b 45 e4             	mov    -0x1c(%ebp),%eax
418528:	8b 00                	mov    (%eax),%eax
41852a:	89 45 e0             	mov    %eax,-0x20(%ebp)
41852d:	8b 45 e0             	mov    -0x20(%ebp),%eax
418530:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
418536:	74 10                	je     0x418548
418538:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
41853f:	8b 45 dc             	mov    -0x24(%ebp),%eax
418542:	c3                   	ret
418543:	8b 65 e8             	mov    -0x18(%ebp),%esp
418546:	eb cb                	jmp    0x418513
418548:	e8 3c 4a 00 00       	call   0x41cf89
41854d:	cc                   	int3
41854e:	6a 0c                	push   $0xc
418550:	68 a0 1c 49 00       	push   $0x491ca0
418555:	e8 8e fc ff ff       	call   0x4181e8
41855a:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
41855e:	8b 75 0c             	mov    0xc(%ebp),%esi
418561:	8b c6                	mov    %esi,%eax
418563:	0f af 45 10          	imul   0x10(%ebp),%eax
418567:	01 45 08             	add    %eax,0x8(%ebp)
41856a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41856e:	ff 4d 10             	decl   0x10(%ebp)
418571:	78 0b                	js     0x41857e
418573:	29 75 08             	sub    %esi,0x8(%ebp)
418576:	8b 4d 08             	mov    0x8(%ebp),%ecx
418579:	ff 55 14             	call   *0x14(%ebp)
41857c:	eb f0                	jmp    0x41856e
41857e:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
418585:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
418589:	e8 08 00 00 00       	call   0x418596
41858e:	e8 90 fc ff ff       	call   0x418223
418593:	c2 10 00             	ret    $0x10
418596:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
41859a:	75 11                	jne    0x4185ad
41859c:	ff 75 14             	push   0x14(%ebp)
41859f:	ff 75 10             	push   0x10(%ebp)
4185a2:	ff 75 0c             	push   0xc(%ebp)
4185a5:	ff 75 08             	push   0x8(%ebp)
4185a8:	e8 43 ff ff ff       	call   0x4184f0
4185ad:	c3                   	ret
4185ae:	55                   	push   %ebp
4185af:	8b ec                	mov    %esp,%ebp
4185b1:	83 ec 20             	sub    $0x20,%esp
4185b4:	8b 45 0c             	mov    0xc(%ebp),%eax
4185b7:	56                   	push   %esi
4185b8:	8b 75 08             	mov    0x8(%ebp),%esi
4185bb:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4185be:	57                   	push   %edi
4185bf:	8d 45 14             	lea    0x14(%ebp),%eax
4185c2:	50                   	push   %eax
4185c3:	ff 75 10             	push   0x10(%ebp)
4185c6:	8d 45 e0             	lea    -0x20(%ebp),%eax
4185c9:	50                   	push   %eax
4185ca:	c7 45 ec 42 00 00 00 	movl   $0x42,-0x14(%ebp)
4185d1:	89 75 e8             	mov    %esi,-0x18(%ebp)
4185d4:	89 75 e0             	mov    %esi,-0x20(%ebp)
4185d7:	e8 c4 5e 00 00       	call   0x41e4a0
4185dc:	83 c4 0c             	add    $0xc,%esp
4185df:	85 f6                	test   %esi,%esi
4185e1:	8b f8                	mov    %eax,%edi
4185e3:	74 1a                	je     0x4185ff
4185e5:	ff 4d e4             	decl   -0x1c(%ebp)
4185e8:	78 08                	js     0x4185f2
4185ea:	8b 45 e0             	mov    -0x20(%ebp),%eax
4185ed:	c6 00 00             	movb   $0x0,(%eax)
4185f0:	eb 0d                	jmp    0x4185ff
4185f2:	8d 45 e0             	lea    -0x20(%ebp),%eax
4185f5:	50                   	push   %eax
4185f6:	6a 00                	push   $0x0
4185f8:	e8 dd 5c 00 00       	call   0x41e2da
4185fd:	59                   	pop    %ecx
4185fe:	59                   	pop    %ecx
4185ff:	8b c7                	mov    %edi,%eax
418601:	5f                   	pop    %edi
418602:	5e                   	pop    %esi
418603:	c9                   	leave
418604:	c3                   	ret
418605:	55                   	push   %ebp
418606:	8b ec                	mov    %esp,%ebp
418608:	83 ec 20             	sub    $0x20,%esp
41860b:	8b 45 08             	mov    0x8(%ebp),%eax
41860e:	50                   	push   %eax
41860f:	c7 45 ec 49 00 00 00 	movl   $0x49,-0x14(%ebp)