468467:	8b 46 2c             	mov    0x2c(%esi),%eax
46846a:	8d 14 38             	lea    (%eax,%edi,1),%edx
46846d:	3b d1                	cmp    %ecx,%edx
46846f:	77 ef                	ja     0x468460
468471:	8b 4e 30             	mov    0x30(%esi),%ecx
468474:	57                   	push   %edi
468475:	ff 75 08             	push   0x8(%ebp)
468478:	03 c8                	add    %eax,%ecx
46847a:	51                   	push   %ecx
46847b:	e8 f0 f3 fa ff       	call   0x417870
468480:	83 c4 0c             	add    $0xc,%esp
468483:	01 7e 2c             	add    %edi,0x2c(%esi)
468486:	eb d8                	jmp    0x468460
468488:	6a 06                	push   $0x6
46848a:	ff 76 1c             	push   0x1c(%esi)
46848d:	e8 c5 fb ff ff       	call   0x468057
468492:	cc                   	int3
468493:	56                   	push   %esi
468494:	8b f1                	mov    %ecx,%esi
468496:	83 7e 18 01          	cmpl   $0x1,0x18(%esi)
46849a:	75 0a                	jne    0x4684a6
46849c:	6a 06                	push   $0x6
46849e:	ff 76 1c             	push   0x1c(%esi)
4684a1:	e8 b1 fb ff ff       	call   0x468057
4684a6:	57                   	push   %edi
4684a7:	ff 74 24 0c          	push   0xc(%esp)
4684ab:	8b 3e                	mov    (%esi),%edi
4684ad:	ff 15 88 03 4b 00    	call   *0x4b0388
4684b3:	50                   	push   %eax
4684b4:	ff 74 24 10          	push   0x10(%esp)
4684b8:	8b ce                	mov    %esi,%ecx
4684ba:	ff 57 38             	call   *0x38(%edi)
4684bd:	5f                   	pop    %edi
4684be:	5e                   	pop    %esi
4684bf:	c2 04 00             	ret    $0x4
4684c2:	55                   	push   %ebp
4684c3:	8b ec                	mov    %esp,%ebp
4684c5:	51                   	push   %ecx
4684c6:	53                   	push   %ebx
4684c7:	56                   	push   %esi
4684c8:	8b f1                	mov    %ecx,%esi
4684ca:	33 db                	xor    %ebx,%ebx
4684cc:	39 5e 3c             	cmp    %ebx,0x3c(%esi)
4684cf:	75 2e                	jne    0x4684ff
4684d1:	68 00 10 00 00       	push   $0x1000
4684d6:	e8 c6 f1 ff ff       	call   0x4676a1
4684db:	85 c0                	test   %eax,%eax
4684dd:	74 7b                	je     0x46855a
4684df:	8d 45 fc             	lea    -0x4(%ebp),%eax
4684e2:	50                   	push   %eax
4684e3:	ff 76 34             	push   0x34(%esi)
4684e6:	ff 76 3c             	push   0x3c(%esi)
4684e9:	ff 76 14             	push   0x14(%esi)
4684ec:	ff 15 a8 09 4b 00    	call   *0x4b09a8
4684f2:	85 c0                	test   %eax,%eax
4684f4:	74 6a                	je     0x468560
4684f6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4684f9:	89 46 40             	mov    %eax,0x40(%esi)
4684fc:	89 5e 38             	mov    %ebx,0x38(%esi)
4684ff:	8b 46 38             	mov    0x38(%esi),%eax
468502:	03 46 3c             	add    0x3c(%esi),%eax
468505:	57                   	push   %edi
468506:	8b 7d 08             	mov    0x8(%ebp),%edi
468509:	eb 44                	jmp    0x46854f
46850b:	8b 4e 38             	mov    0x38(%esi),%ecx
46850e:	3b 4e 40             	cmp    0x40(%esi),%ecx
468511:	72 27                	jb     0x46853a
468513:	8d 45 fc             	lea    -0x4(%ebp),%eax
468516:	50                   	push   %eax
468517:	ff 76 34             	push   0x34(%esi)
46851a:	ff 76 3c             	push   0x3c(%esi)
46851d:	ff 76 14             	push   0x14(%esi)
468520:	ff 15 a8 09 4b 00    	call   *0x4b09a8
468526:	85 c0                	test   %eax,%eax
468528:	74 36                	je     0x468560
46852a:	8b 45 fc             	mov    -0x4(%ebp),%eax
46852d:	3b c3                	cmp    %ebx,%eax
46852f:	89 46 40             	mov    %eax,0x40(%esi)
468532:	74 35                	je     0x468569
468534:	8b 46 3c             	mov    0x3c(%esi),%eax
468537:	89 5e 38             	mov    %ebx,0x38(%esi)
46853a:	8a 08                	mov    (%eax),%cl
46853c:	80 f9 0d             	cmp    $0xd,%cl
46853f:	74 03                	je     0x468544
468541:	88 0f                	mov    %cl,(%edi)
468543:	47                   	inc    %edi
468544:	ff 46 38             	incl   0x38(%esi)
468547:	8a 08                	mov    (%eax),%cl
468549:	40                   	inc    %eax
46854a:	80 f9 0a             	cmp    $0xa,%cl
46854d:	74 05                	je     0x468554
46854f:	ff 4d 0c             	decl   0xc(%ebp)
468552:	75 b7                	jne    0x46850b
468554:	8b 45 08             	mov    0x8(%ebp),%eax
468557:	88 1f                	mov    %bl,(%edi)
468559:	5f                   	pop    %edi
46855a:	5e                   	pop    %esi
46855b:	5b                   	pop    %ebx
46855c:	c9                   	leave
46855d:	c2 08 00             	ret    $0x8
468560:	53                   	push   %ebx
468561:	ff 76 1c             	push   0x1c(%esi)
468564:	e8 ee fa ff ff       	call   0x468057
468569:	8b c7                	mov    %edi,%eax
46856b:	2b 45 08             	sub    0x8(%ebp),%eax
46856e:	f7 d8                	neg    %eax
468570:	1b c0                	sbb    %eax,%eax
468572:	23 45 08             	and    0x8(%ebp),%eax
468575:	eb e0                	jmp    0x468557
468577:	b8 a8 25 48 00       	mov    $0x4825a8,%eax
46857c:	e8 fb f6 fa ff       	call   0x417c7c
468581:	51                   	push   %ecx
468582:	56                   	push   %esi
468583:	8b f1                	mov    %ecx,%esi
468585:	89 75 f0             	mov    %esi,-0x10(%ebp)
468588:	c7 06 e8 a0 48 00    	movl   $0x48a0e8,(%esi)
46858e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
468592:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
468596:	74 05                	je     0x46859d
468598:	e8 cb f8 ff ff       	call   0x467e68
46859d:	8b 4e 10             	mov    0x10(%esi),%ecx
4685a0:	83 e9 10             	sub    $0x10,%ecx
4685a3:	e8 aa 8d f9 ff       	call   0x401352
4685a8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4685ab:	5e                   	pop    %esi
4685ac:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4685b3:	c9                   	leave
4685b4:	c3                   	ret
4685b5:	56                   	push   %esi
4685b6:	8b f1                	mov    %ecx,%esi
4685b8:	8b 4e 18             	mov    0x18(%esi),%ecx
4685bb:	83 e9 10             	sub    $0x10,%ecx
4685be:	c7 06 fc a0 48 00    	movl   $0x48a0fc,(%esi)
4685c4:	e8 89 8d f9 ff       	call   0x401352
4685c9:	8b ce                	mov    %esi,%ecx
4685cb:	5e                   	pop    %esi
4685cc:	e9 a6 ff ff ff       	jmp    0x468577
4685d1:	56                   	push   %esi
4685d2:	8b f1                	mov    %ecx,%esi
4685d4:	e8 dc ff ff ff       	call   0x4685b5
4685d9:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
4685de:	74 07                	je     0x4685e7
4685e0:	56                   	push   %esi
4685e1:	e8 9a 7a fd ff       	call   0x440080
4685e6:	59                   	pop    %ecx
4685e7:	8b c6                	mov    %esi,%eax
4685e9:	5e                   	pop    %esi
4685ea:	c2 04 00             	ret    $0x4
4685ed:	c7 01 10 a1 48 00    	movl   $0x48a110,(%ecx)
4685f3:	e9 7f ff ff ff       	jmp    0x468577
4685f8:	56                   	push   %esi
4685f9:	8b f1                	mov    %ecx,%esi
4685fb:	e8 ed ff ff ff       	call   0x4685ed
468600:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
468605:	74 07                	je     0x46860e
468607:	56                   	push   %esi
468608:	e8 73 7a fd ff       	call   0x440080
46860d:	59                   	pop    %ecx
46860e:	8b c6                	mov    %esi,%eax
468610:	5e                   	pop    %esi
468611:	c2 04 00             	ret    $0x4
468614:	56                   	push   %esi
468615:	8b f1                	mov    %ecx,%esi
468617:	8b 4e 18             	mov    0x18(%esi),%ecx
46861a:	83 e9 10             	sub    $0x10,%ecx
46861d:	c7 06 24 a1 48 00    	movl   $0x48a124,(%esi)
468623:	e8 2a 8d f9 ff       	call   0x401352
468628:	8b ce                	mov    %esi,%ecx
46862a:	5e                   	pop    %esi
46862b:	e9 47 ff ff ff       	jmp    0x468577
468630:	56                   	push   %esi
468631:	8b f1                	mov    %ecx,%esi
468633:	e8 dc ff ff ff       	call   0x468614
468638:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
46863d:	74 07                	je     0x468646
46863f:	56                   	push   %esi
468640:	e8 3b 7a fd ff       	call   0x440080
468645:	59                   	pop    %ecx
468646:	8b c6                	mov    %esi,%eax
468648:	5e                   	pop    %esi
468649:	c2 04 00             	ret    $0x4
46864c:	56                   	push   %esi
46864d:	8b f1                	mov    %ecx,%esi
46864f:	8b 4e 48             	mov    0x48(%esi),%ecx
468652:	83 e9 10             	sub    $0x10,%ecx
468655:	c7 06 3c a1 48 00    	movl   $0x48a13c,(%esi)
46865b:	e8 f2 8c f9 ff       	call   0x401352
468660:	8b 4e 44             	mov    0x44(%esi),%ecx
468663:	83 e9 10             	sub    $0x10,%ecx
468666:	e8 e7 8c f9 ff       	call   0x401352
46866b:	8b ce                	mov    %esi,%ecx
46866d:	5e                   	pop    %esi
46866e:	e9 8f fb ff ff       	jmp    0x468202
468673:	55                   	push   %ebp
468674:	8b ec                	mov    %esp,%ebp
468676:	51                   	push   %ecx
468677:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
46867b:	83 c1 48             	add    $0x48,%ecx
46867e:	51                   	push   %ecx
46867f:	8b 4d 08             	mov    0x8(%ebp),%ecx
468682:	e8 4b 8a f9 ff       	call   0x4010d2
468687:	8b 45 08             	mov    0x8(%ebp),%eax
46868a:	c9                   	leave
46868b:	c2 04 00             	ret    $0x4
46868e:	55                   	push   %ebp
46868f:	8b ec                	mov    %esp,%ebp
468691:	51                   	push   %ecx
468692:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
468696:	83 c1 44             	add    $0x44,%ecx
468699:	51                   	push   %ecx
46869a:	8b 4d 08             	mov    0x8(%ebp),%ecx
46869d:	e8 30 8a f9 ff       	call   0x4010d2
4686a2:	8b 45 08             	mov    0x8(%ebp),%eax
4686a5:	c9                   	leave
4686a6:	c2 04 00             	ret    $0x4
4686a9:	56                   	push   %esi
4686aa:	ff 74 24 14          	push   0x14(%esp)
4686ae:	8b f1                	mov    %ecx,%esi
4686b0:	ff 74 24 14          	push   0x14(%esp)
4686b4:	ff 74 24 14          	push   0x14(%esp)
4686b8:	ff 74 24 14          	push   0x14(%esp)
4686bc:	ff 76 14             	push   0x14(%esi)
4686bf:	ff 15 a4 09 4b 00    	call   *0x4b09a4
4686c5:	85 c0                	test   %eax,%eax
4686c7:	75 09                	jne    0x4686d2
4686c9:	50                   	push   %eax
4686ca:	ff 76 1c             	push   0x1c(%esi)
4686cd:	e8 85 f9 ff ff       	call   0x468057
4686d2:	5e                   	pop    %esi
4686d3:	c2 10 00             	ret    $0x10
4686d6:	8b 44 24 0c          	mov    0xc(%esp),%eax
4686da:	83 f8 01             	cmp    $0x1,%eax
4686dd:	56                   	push   %esi
4686de:	8b f1                	mov    %ecx,%esi
4686e0:	75 03                	jne    0x4686e5
4686e2:	8b 46 1c             	mov    0x1c(%esi),%eax
4686e5:	50                   	push   %eax
4686e6:	ff 74 24 0c          	push   0xc(%esp)
4686ea:	ff 74 24 14          	push   0x14(%esp)
4686ee:	ff 76 14             	push   0x14(%esi)
4686f1:	ff 15 a0 09 4b 00    	call   *0x4b09a0
4686f7:	85 c0                	test   %eax,%eax
4686f9:	75 09                	jne    0x468704
4686fb:	50                   	push   %eax
4686fc:	ff 76 1c             	push   0x1c(%esi)
4686ff:	e8 53 f9 ff ff       	call   0x468057
468704:	5e                   	pop    %esi
468705:	c2 0c 00             	ret    $0xc
468708:	8b 44 24 10          	mov    0x10(%esp),%eax
46870c:	83 f8 01             	cmp    $0x1,%eax
46870f:	56                   	push   %esi
468710:	8b f1                	mov    %ecx,%esi
468712:	75 03                	jne    0x468717
468714:	8b 46 1c             	mov    0x1c(%esi),%eax
468717:	50                   	push   %eax
468718:	ff 74 24 14          	push   0x14(%esp)
46871c:	ff 74 24 14          	push   0x14(%esp)
468720:	ff 74 24 14          	push   0x14(%esp)
468724:	ff 76 14             	push   0x14(%esi)
468727:	ff 15 9c 09 4b 00    	call   *0x4b099c
46872d:	85 c0                	test   %eax,%eax
46872f:	75 09                	jne    0x46873a
468731:	50                   	push   %eax
468732:	ff 76 1c             	push   0x1c(%esi)
468735:	e8 1d f9 ff ff       	call   0x468057
46873a:	83 4e 18 ff          	orl    $0xffffffff,0x18(%esi)
46873e:	5e                   	pop    %esi
46873f:	c2 10 00             	ret    $0x10
468742:	ff 74 24 0c          	push   0xc(%esp)
468746:	8b 44 24 08          	mov    0x8(%esp),%eax
46874a:	8b 00                	mov    (%eax),%eax
46874c:	ff 74 24 0c          	push   0xc(%esp)
468750:	8b 50 f4             	mov    -0xc(%eax),%edx
468753:	52                   	push   %edx
468754:	50                   	push   %eax
468755:	e8 4f ff ff ff       	call   0x4686a9
46875a:	c2 0c 00             	ret    $0xc
46875d:	51                   	push   %ecx
46875e:	83 24 24 00          	andl   $0x0,(%esp)
468762:	e8 ca cc fc ff       	call   0x435431
468767:	cc                   	int3
468768:	51                   	push   %ecx
468769:	83 24 24 00          	andl   $0x0,(%esp)
46876d:	e8 bf cc fc ff       	call   0x435431
468772:	cc                   	int3
468773:	51                   	push   %ecx
468774:	83 24 24 00          	andl   $0x0,(%esp)
468778:	e8 b4 cc fc ff       	call   0x435431
46877d:	cc                   	int3
46877e:	51                   	push   %ecx
46877f:	83 24 24 00          	andl   $0x0,(%esp)
468783:	e8 a9 cc fc ff       	call   0x435431
468788:	cc                   	int3
468789:	51                   	push   %ecx
46878a:	83 24 24 00          	andl   $0x0,(%esp)
46878e:	e8 9e cc fc ff       	call   0x435431
468793:	cc                   	int3
468794:	c7 01 a4 a1 48 00    	movl   $0x48a1a4,(%ecx)
46879a:	8b 49 04             	mov    0x4(%ecx),%ecx
46879d:	83 e9 10             	sub    $0x10,%ecx
4687a0:	e9 ad 8b f9 ff       	jmp    0x401352
4687a5:	55                   	push   %ebp
4687a6:	8b ec                	mov    %esp,%ebp
4687a8:	83 ec 3c             	sub    $0x3c,%esp
4687ab:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4687af:	53                   	push   %ebx
4687b0:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4687b3:	c7 03 00 10 00 00    	movl   $0x1000,(%ebx)
4687b9:	75 07                	jne    0x4687c2
4687bb:	33 c0                	xor    %eax,%eax
4687bd:	e9 ab 00 00 00       	jmp    0x46886d
4687c2:	56                   	push   %esi
4687c3:	57                   	push   %edi
4687c4:	6a 3c                	push   $0x3c
4687c6:	5e                   	pop    %esi
4687c7:	56                   	push   %esi
4687c8:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4687cb:	6a 00                	push   $0x0
4687cd:	50                   	push   %eax
4687ce:	e8 6d fa fa ff       	call   0x418240
4687d3:	8b 4d 10             	mov    0x10(%ebp),%ecx
4687d6:	83 c4 0c             	add    $0xc,%esp
4687d9:	68 01 01 00 00       	push   $0x101
4687de:	89 75 c4             	mov    %esi,-0x3c(%ebp)
4687e1:	c7 45 d8 00 01 00 00 	movl   $0x100,-0x28(%ebp)
4687e8:	e8 a3 89 f9 ff       	call   0x401190
4687ed:	8b 4d 14             	mov    0x14(%ebp),%ecx
4687f0:	68 01 08 00 00       	push   $0x801
4687f5:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4687f8:	c7 45 f4 00 08 00 00 	movl   $0x800,-0xc(%ebp)
4687ff:	e8 8c 89 f9 ff       	call   0x401190
468804:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
468807:	83 c6 45             	add    $0x45,%esi
46880a:	bf 80 00 00 00       	mov    $0x80,%edi
46880f:	56                   	push   %esi
468810:	89 45 f0             	mov    %eax,-0x10(%ebp)
468813:	89 7d e4             	mov    %edi,-0x1c(%ebp)
468816:	e8 75 89 f9 ff       	call   0x401190
46881b:	8b 4d 20             	mov    0x20(%ebp),%ecx
46881e:	56                   	push   %esi
46881f:	89 45 e0             	mov    %eax,-0x20(%ebp)
468822:	89 7d ec             	mov    %edi,-0x14(%ebp)
468825:	e8 66 89 f9 ff       	call   0x401190
46882a:	ff 75 24             	push   0x24(%ebp)
46882d:	89 45 e8             	mov    %eax,-0x18(%ebp)
468830:	ff 75 18             	push   0x18(%ebp)
468833:	8d 45 c4             	lea    -0x3c(%ebp),%eax
468836:	53                   	push   %ebx
468837:	50                   	push   %eax
468838:	ff 75 08             	push   0x8(%ebp)