41c282:	c7 46 18 0f 00 00 00 	movl   $0xf,0x18(%esi)
41c289:	89 46 14             	mov    %eax,0x14(%esi)
41c28c:	88 46 04             	mov    %al,0x4(%esi)
41c28f:	e8 4c ff ff ff       	call   0x41c1e0
41c294:	8b c6                	mov    %esi,%eax
41c296:	5e                   	pop    %esi
41c297:	5d                   	pop    %ebp
41c298:	c2 04 00             	ret    $0x4
41c29b:	8b ff                	mov    %edi,%edi
41c29d:	55                   	push   %ebp
41c29e:	8b ec                	mov    %esp,%ebp
41c2a0:	83 79 18 10          	cmpl   $0x10,0x18(%ecx)
41c2a4:	8d 41 04             	lea    0x4(%ecx),%eax
41c2a7:	8b 55 08             	mov    0x8(%ebp),%edx
41c2aa:	89 51 14             	mov    %edx,0x14(%ecx)
41c2ad:	72 02                	jb     0x41c2b1
41c2af:	8b 00                	mov    (%eax),%eax
41c2b1:	c6 04 10 00          	movb   $0x0,(%eax,%edx,1)
41c2b5:	5d                   	pop    %ebp
41c2b6:	c2 04 00             	ret    $0x4
41c2b9:	8b ff                	mov    %edi,%edi
41c2bb:	55                   	push   %ebp
41c2bc:	8b ec                	mov    %esp,%ebp
41c2be:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
41c2c2:	56                   	push   %esi
41c2c3:	8b f1                	mov    %ecx,%esi
41c2c5:	74 2b                	je     0x41c2f2
41c2c7:	83 7e 18 10          	cmpl   $0x10,0x18(%esi)
41c2cb:	72 25                	jb     0x41c2f2
41c2cd:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
41c2d1:	8d 46 04             	lea    0x4(%esi),%eax
41c2d4:	53                   	push   %ebx
41c2d5:	8b 18                	mov    (%eax),%ebx
41c2d7:	76 10                	jbe    0x41c2e9
41c2d9:	ff 75 0c             	push   0xc(%ebp)
41c2dc:	53                   	push   %ebx
41c2dd:	6a 10                	push   $0x10
41c2df:	50                   	push   %eax
41c2e0:	ff 15 f0 80 4a 00    	call   *0x4a80f0
41c2e6:	83 c4 10             	add    $0x10,%esp
41c2e9:	53                   	push   %ebx
41c2ea:	ff 15 10 74 4a 00    	call   *0x4a7410
41c2f0:	59                   	pop    %ecx
41c2f1:	5b                   	pop    %ebx
41c2f2:	ff 75 0c             	push   0xc(%ebp)
41c2f5:	8b ce                	mov    %esi,%ecx
41c2f7:	c7 46 18 0f 00 00 00 	movl   $0xf,0x18(%esi)
41c2fe:	e8 98 ff ff ff       	call   0x41c29b
41c303:	5e                   	pop    %esi
41c304:	5d                   	pop    %ebp
41c305:	c2 08 00             	ret    $0x8
41c308:	6a 00                	push   $0x0
41c30a:	6a 01                	push   $0x1
41c30c:	e8 a8 ff ff ff       	call   0x41c2b9
41c311:	c3                   	ret
41c312:	cc                   	int3
41c313:	cc                   	int3
41c314:	cc                   	int3
41c315:	cc                   	int3
41c316:	cc                   	int3
41c317:	cc                   	int3
41c318:	cc                   	int3
41c319:	cc                   	int3
41c31a:	cc                   	int3
41c31b:	cc                   	int3
41c31c:	cc                   	int3
41c31d:	cc                   	int3
41c31e:	cc                   	int3
41c31f:	cc                   	int3
41c320:	6a 04                	push   $0x4
41c322:	b8 00 14 49 00       	mov    $0x491400,%eax
41c327:	e8 a7 41 07 00       	call   0x4904d3
41c32c:	8b f9                	mov    %ecx,%edi
41c32e:	89 7d f0             	mov    %edi,-0x10(%ebp)
41c331:	8b 75 08             	mov    0x8(%ebp),%esi
41c334:	56                   	push   %esi
41c335:	ff 15 d4 80 4a 00    	call   *0x4a80d4
41c33b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41c33f:	8d 46 0c             	lea    0xc(%esi),%eax
41c342:	50                   	push   %eax
41c343:	8d 4f 0c             	lea    0xc(%edi),%ecx
41c346:	c7 07 dc 11 40 00    	movl   $0x4011dc,(%edi)
41c34c:	e8 21 ff ff ff       	call   0x41c272
41c351:	8b c7                	mov    %edi,%eax
41c353:	e8 49 41 07 00       	call   0x4904a1
41c358:	c2 04 00             	ret    $0x4
41c35b:	cc                   	int3
41c35c:	cc                   	int3
41c35d:	cc                   	int3
41c35e:	cc                   	int3
41c35f:	cc                   	int3
41c360:	8b ff                	mov    %edi,%edi
41c362:	55                   	push   %ebp
41c363:	8b ec                	mov    %esp,%ebp
41c365:	83 ec 2c             	sub    $0x2c,%esp
41c368:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41c36d:	33 c5                	xor    %ebp,%eax
41c36f:	89 45 fc             	mov    %eax,-0x4(%ebp)
41c372:	51                   	push   %ecx
41c373:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
41c376:	e8 b5 fb ff ff       	call   0x41bf30
41c37b:	68 20 eb 49 00       	push   $0x49eb20
41c380:	8d 45 d4             	lea    -0x2c(%ebp),%eax
41c383:	50                   	push   %eax
41c384:	e8 12 41 07 00       	call   0x49049b
41c389:	cc                   	int3
41c38a:	8b ff                	mov    %edi,%edi
41c38c:	55                   	push   %ebp
41c38d:	8b ec                	mov    %esp,%ebp
41c38f:	51                   	push   %ecx
41c390:	56                   	push   %esi
41c391:	ff 75 08             	push   0x8(%ebp)
41c394:	8b f1                	mov    %ecx,%esi
41c396:	89 75 fc             	mov    %esi,-0x4(%ebp)
41c399:	e8 14 fb ff ff       	call   0x41beb2
41c39e:	c7 06 ec 11 40 00    	movl   $0x4011ec,(%esi)
41c3a4:	8b c6                	mov    %esi,%eax
41c3a6:	5e                   	pop    %esi
41c3a7:	c9                   	leave
41c3a8:	c2 08 00             	ret    $0x8
41c3ab:	cc                   	int3
41c3ac:	cc                   	int3
41c3ad:	cc                   	int3
41c3ae:	cc                   	int3
41c3af:	cc                   	int3
41c3b0:	8b ff                	mov    %edi,%edi
41c3b2:	55                   	push   %ebp
41c3b3:	8b ec                	mov    %esp,%ebp
41c3b5:	6a ff                	push   $0xffffffff
41c3b7:	68 34 11 49 00       	push   $0x491134
41c3bc:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41c3c2:	50                   	push   %eax
41c3c3:	56                   	push   %esi
41c3c4:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41c3c9:	33 c5                	xor    %ebp,%eax
41c3cb:	50                   	push   %eax
41c3cc:	8d 45 f4             	lea    -0xc(%ebp),%eax
41c3cf:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41c3d5:	8b f1                	mov    %ecx,%esi
41c3d7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41c3db:	56                   	push   %esi
41c3dc:	c7 06 04 12 40 00    	movl   $0x401204,(%esi)
41c3e2:	e8 12 17 07 00       	call   0x48daf9
41c3e7:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41c3eb:	59                   	pop    %ecx
41c3ec:	74 08                	je     0x41c3f6
41c3ee:	56                   	push   %esi
41c3ef:	ff 15 10 74 4a 00    	call   *0x4a7410
41c3f5:	59                   	pop    %ecx
41c3f6:	8b c6                	mov    %esi,%eax
41c3f8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41c3fb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41c402:	59                   	pop    %ecx
41c403:	5e                   	pop    %esi
41c404:	c9                   	leave
41c405:	c2 04 00             	ret    $0x4
41c408:	8b ff                	mov    %edi,%edi
41c40a:	55                   	push   %ebp
41c40b:	8b ec                	mov    %esp,%ebp
41c40d:	6a ff                	push   $0xffffffff
41c40f:	68 76 14 49 00       	push   $0x491476
41c414:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41c41a:	50                   	push   %eax
41c41b:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41c420:	33 c5                	xor    %ebp,%eax
41c422:	50                   	push   %eax
41c423:	8d 45 f4             	lea    -0xc(%ebp),%eax
41c426:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41c42c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41c430:	51                   	push   %ecx
41c431:	c7 01 04 12 40 00    	movl   $0x401204,(%ecx)
41c437:	e8 bd 16 07 00       	call   0x48daf9
41c43c:	59                   	pop    %ecx
41c43d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41c440:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41c447:	59                   	pop    %ecx
41c448:	c9                   	leave
41c449:	c3                   	ret
41c44a:	8b ff                	mov    %edi,%edi
41c44c:	55                   	push   %ebp
41c44d:	8b ec                	mov    %esp,%ebp
41c44f:	51                   	push   %ecx
41c450:	53                   	push   %ebx
41c451:	8b 5d 08             	mov    0x8(%ebp),%ebx
41c454:	56                   	push   %esi
41c455:	8b f1                	mov    %ecx,%esi
41c457:	57                   	push   %edi
41c458:	8b 46 14             	mov    0x14(%esi),%eax
41c45b:	3b c3                	cmp    %ebx,%eax
41c45d:	73 08                	jae    0x41c467
41c45f:	e8 26 16 07 00       	call   0x48da8a
41c464:	8b 46 14             	mov    0x14(%esi),%eax
41c467:	8b 7d 0c             	mov    0xc(%ebp),%edi
41c46a:	2b c3                	sub    %ebx,%eax
41c46c:	3b c7                	cmp    %edi,%eax
41c46e:	73 02                	jae    0x41c472
41c470:	8b f8                	mov    %eax,%edi
41c472:	85 ff                	test   %edi,%edi
41c474:	74 4d                	je     0x41c4c3
41c476:	8b 56 18             	mov    0x18(%esi),%edx
41c479:	8d 4e 04             	lea    0x4(%esi),%ecx
41c47c:	83 fa 08             	cmp    $0x8,%edx
41c47f:	72 0a                	jb     0x41c48b
41c481:	8b 19                	mov    (%ecx),%ebx
41c483:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41c486:	8b 5d 08             	mov    0x8(%ebp),%ebx
41c489:	eb 03                	jmp    0x41c48e
41c48b:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41c48e:	72 02                	jb     0x41c492
41c490:	8b 09                	mov    (%ecx),%ecx
41c492:	2b c7                	sub    %edi,%eax
41c494:	03 c0                	add    %eax,%eax
41c496:	50                   	push   %eax
41c497:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
41c49a:	8b 5d fc             	mov    -0x4(%ebp),%ebx
41c49d:	8d 04 43             	lea    (%ebx,%eax,2),%eax
41c4a0:	8b 5d 08             	mov    0x8(%ebp),%ebx
41c4a3:	50                   	push   %eax
41c4a4:	2b d3                	sub    %ebx,%edx
41c4a6:	03 d2                	add    %edx,%edx
41c4a8:	52                   	push   %edx
41c4a9:	8d 04 59             	lea    (%ecx,%ebx,2),%eax
41c4ac:	50                   	push   %eax
41c4ad:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41c4b3:	8b 46 14             	mov    0x14(%esi),%eax
41c4b6:	83 c4 10             	add    $0x10,%esp
41c4b9:	2b c7                	sub    %edi,%eax
41c4bb:	8b ce                	mov    %esi,%ecx
41c4bd:	50                   	push   %eax
41c4be:	e8 e1 02 00 00       	call   0x41c7a4
41c4c3:	5f                   	pop    %edi
41c4c4:	8b c6                	mov    %esi,%eax
41c4c6:	5e                   	pop    %esi
41c4c7:	5b                   	pop    %ebx
41c4c8:	c9                   	leave
41c4c9:	c2 08 00             	ret    $0x8
41c4cc:	8b ff                	mov    %edi,%edi
41c4ce:	55                   	push   %ebp
41c4cf:	8b ec                	mov    %esp,%ebp
41c4d1:	56                   	push   %esi
41c4d2:	8d 45 08             	lea    0x8(%ebp),%eax
41c4d5:	8b f1                	mov    %ecx,%esi
41c4d7:	50                   	push   %eax
41c4d8:	ff 15 c8 80 4a 00    	call   *0x4a80c8
41c4de:	c7 06 0c 12 40 00    	movl   $0x40120c,(%esi)
41c4e4:	8b c6                	mov    %esi,%eax
41c4e6:	5e                   	pop    %esi
41c4e7:	5d                   	pop    %ebp
41c4e8:	c2 04 00             	ret    $0x4
41c4eb:	cc                   	int3
41c4ec:	cc                   	int3
41c4ed:	cc                   	int3
41c4ee:	cc                   	int3
41c4ef:	cc                   	int3
41c4f0:	c7 01 0c 12 40 00    	movl   $0x40120c,(%ecx)
41c4f6:	ff 25 ec 80 4a 00    	jmp    *0x4a80ec
41c4fc:	cc                   	int3
41c4fd:	cc                   	int3
41c4fe:	cc                   	int3
41c4ff:	cc                   	int3
41c500:	8b ff                	mov    %edi,%edi
41c502:	55                   	push   %ebp
41c503:	8b ec                	mov    %esp,%ebp
41c505:	56                   	push   %esi
41c506:	8b f1                	mov    %ecx,%esi
41c508:	c7 06 0c 12 40 00    	movl   $0x40120c,(%esi)
41c50e:	ff 15 ec 80 4a 00    	call   *0x4a80ec
41c514:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41c518:	74 08                	je     0x41c522
41c51a:	56                   	push   %esi
41c51b:	ff 15 10 74 4a 00    	call   *0x4a7410
41c521:	59                   	pop    %ecx
41c522:	8b c6                	mov    %esi,%eax
41c524:	5e                   	pop    %esi
41c525:	5d                   	pop    %ebp
41c526:	c2 04 00             	ret    $0x4
41c529:	cc                   	int3
41c52a:	cc                   	int3
41c52b:	cc                   	int3
41c52c:	cc                   	int3
41c52d:	cc                   	int3
41c52e:	cc                   	int3
41c52f:	cc                   	int3
41c530:	8b ff                	mov    %edi,%edi
41c532:	55                   	push   %ebp
41c533:	8b ec                	mov    %esp,%ebp
41c535:	83 ec 0c             	sub    $0xc,%esp
41c538:	51                   	push   %ecx
41c539:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41c53c:	e8 0f 00 00 00       	call   0x41c550
41c541:	68 4c eb 49 00       	push   $0x49eb4c
41c546:	8d 45 f4             	lea    -0xc(%ebp),%eax
41c549:	50                   	push   %eax
41c54a:	e8 4c 3f 07 00       	call   0x49049b
41c54f:	cc                   	int3
41c550:	8b ff                	mov    %edi,%edi
41c552:	55                   	push   %ebp
41c553:	8b ec                	mov    %esp,%ebp
41c555:	51                   	push   %ecx
41c556:	56                   	push   %esi
41c557:	ff 75 08             	push   0x8(%ebp)
41c55a:	8b f1                	mov    %ecx,%esi
41c55c:	89 75 fc             	mov    %esi,-0x4(%ebp)
41c55f:	ff 15 d4 80 4a 00    	call   *0x4a80d4
41c565:	c7 06 0c 12 40 00    	movl   $0x40120c,(%esi)
41c56b:	8b c6                	mov    %esi,%eax
41c56d:	5e                   	pop    %esi
41c56e:	c9                   	leave
41c56f:	c2 04 00             	ret    $0x4
41c572:	8b ff                	mov    %edi,%edi
41c574:	55                   	push   %ebp
41c575:	8b ec                	mov    %esp,%ebp
41c577:	8b 4d 08             	mov    0x8(%ebp),%ecx
41c57a:	83 ec 0c             	sub    $0xc,%esp
41c57d:	85 c9                	test   %ecx,%ecx
41c57f:	75 0f                	jne    0x41c590
41c581:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
41c584:	50                   	push   %eax
41c585:	ff 15 14 74 4a 00    	call   *0x4a7414
41c58b:	59                   	pop    %ecx
41c58c:	c9                   	leave
41c58d:	c2 04 00             	ret    $0x4
41c590:	83 c8 ff             	or     $0xffffffff,%eax
41c593:	33 d2                	xor    %edx,%edx
41c595:	f7 f1                	div    %ecx
41c597:	83 f8 02             	cmp    $0x2,%eax
41c59a:	73 e5                	jae    0x41c581
41c59c:	6a 00                	push   $0x0
41c59e:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41c5a1:	e8 26 ff ff ff       	call   0x41c4cc
41c5a6:	68 4c eb 49 00       	push   $0x49eb4c
41c5ab:	8d 45 f4             	lea    -0xc(%ebp),%eax
41c5ae:	50                   	push   %eax
41c5af:	e8 e7 3e 07 00       	call   0x49049b
41c5b4:	cc                   	int3
41c5b5:	6a 10                	push   $0x10
41c5b7:	b8 91 14 49 00       	mov    $0x491491,%eax
41c5bc:	e8 7b 3f 07 00       	call   0x49053c
41c5c1:	8b f9                	mov    %ecx,%edi
41c5c3:	89 7d e8             	mov    %edi,-0x18(%ebp)
41c5c6:	8b 75 08             	mov    0x8(%ebp),%esi
41c5c9:	b9 fe ff ff 7f       	mov    $0x7ffffffe,%ecx
41c5ce:	83 ce 07             	or     $0x7,%esi
41c5d1:	3b f1                	cmp    %ecx,%esi
41c5d3:	76 05                	jbe    0x41c5da
41c5d5:	8b 75 08             	mov    0x8(%ebp),%esi
41c5d8:	eb 23                	jmp    0x41c5fd
41c5da:	33 d2                	xor    %edx,%edx
41c5dc:	c7 45 ec 03 00 00 00 	movl   $0x3,-0x14(%ebp)
41c5e3:	8b c6                	mov    %esi,%eax