4285a6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4285a7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4285a8:	8b d9                	mov    %ecx,%ebx
4285aa:	89 45 fc             	mov    %eax,-0x4(%ebp)
4285ad:	6a 00                	push   $0x0
4285af:	e8 fc e3 fd ff       	call   0x4069b0
4285b4:	89 45 e8             	mov    %eax,-0x18(%ebp)
4285b7:	6a 00                	push   $0x0
4285b9:	e8 f2 e3 fd ff       	call   0x4069b0
4285be:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4285c1:	33 c0                	xor    %eax,%eax
4285c3:	55                   	push   %ebp
4285c4:	68 e6 86 42 00       	push   $0x4286e6
4285c9:	64 ff 30             	push   %fs:(%eax)
4285cc:	64 89 20             	mov    %esp,%fs:(%eax)
4285cf:	8d 45 cc             	lea    -0x34(%ebp),%eax
4285d2:	50                   	push   %eax
4285d3:	6a 18                	push   $0x18
4285d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4285d8:	50                   	push   %eax
4285d9:	e8 6a e4 fd ff       	call   0x406a48
4285de:	84 db                	test   %bl,%bl
4285e0:	74 18                	je     0x4285fa
4285e2:	6a 00                	push   $0x0
4285e4:	6a 01                	push   $0x1
4285e6:	6a 01                	push   $0x1
4285e8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4285eb:	50                   	push   %eax
4285ec:	8b 45 f4             	mov    -0xc(%ebp),%eax
4285ef:	50                   	push   %eax
4285f0:	e8 a3 e3 fd ff       	call   0x406998
4285f5:	89 45 f0             	mov    %eax,-0x10(%ebp)
4285f8:	eb 62                	jmp    0x42865c
4285fa:	6a 00                	push   $0x0
4285fc:	e8 c7 e6 fd ff       	call   0x406cc8
428601:	89 45 ec             	mov    %eax,-0x14(%ebp)
428604:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
428608:	75 05                	jne    0x42860f
42860a:	e8 d1 fe ff ff       	call   0x4284e0
42860f:	33 c0                	xor    %eax,%eax
428611:	55                   	push   %ebp
428612:	68 55 86 42 00       	push   $0x428655
428617:	64 ff 30             	push   %fs:(%eax)
42861a:	64 89 20             	mov    %esp,%fs:(%eax)
42861d:	8b 45 f8             	mov    -0x8(%ebp),%eax
428620:	50                   	push   %eax
428621:	8b 45 f4             	mov    -0xc(%ebp),%eax
428624:	50                   	push   %eax
428625:	8b 45 ec             	mov    -0x14(%ebp),%eax
428628:	50                   	push   %eax
428629:	e8 7a e3 fd ff       	call   0x4069a8
42862e:	89 45 f0             	mov    %eax,-0x10(%ebp)
428631:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
428635:	75 05                	jne    0x42863c
428637:	e8 a4 fe ff ff       	call   0x4284e0
42863c:	33 c0                	xor    %eax,%eax
42863e:	5a                   	pop    %edx
42863f:	59                   	pop    %ecx
428640:	59                   	pop    %ecx
428641:	64 89 10             	mov    %edx,%fs:(%eax)
428644:	68 5c 86 42 00       	push   $0x42865c
428649:	8b 45 ec             	mov    -0x14(%ebp),%eax
42864c:	50                   	push   %eax
42864d:	6a 00                	push   $0x0
42864f:	e8 c4 e8 fd ff       	call   0x406f18
428654:	c3                   	ret
428655:	e9 0e b5 fd ff       	jmp    0x403b68
42865a:	eb ed                	jmp    0x428649
42865c:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
428660:	74 64                	je     0x4286c6
428662:	8b 45 fc             	mov    -0x4(%ebp),%eax
428665:	50                   	push   %eax
428666:	8b 45 e8             	mov    -0x18(%ebp),%eax
428669:	50                   	push   %eax
42866a:	e8 69 e4 fd ff       	call   0x406ad8
42866f:	8b d8                	mov    %eax,%ebx
428671:	8b 45 f0             	mov    -0x10(%ebp),%eax
428674:	50                   	push   %eax
428675:	8b 45 e4             	mov    -0x1c(%ebp),%eax
428678:	50                   	push   %eax
428679:	e8 5a e4 fd ff       	call   0x406ad8
42867e:	8b f0                	mov    %eax,%esi
428680:	68 20 00 cc 00       	push   $0xcc0020
428685:	8b 45 d4             	mov    -0x2c(%ebp),%eax
428688:	50                   	push   %eax
428689:	8b 45 d0             	mov    -0x30(%ebp),%eax
42868c:	50                   	push   %eax
42868d:	6a 00                	push   $0x0
42868f:	6a 00                	push   $0x0
428691:	8b 45 e8             	mov    -0x18(%ebp),%eax
428694:	50                   	push   %eax
428695:	8b 45 f8             	mov    -0x8(%ebp),%eax
428698:	50                   	push   %eax
428699:	8b 45 f4             	mov    -0xc(%ebp),%eax
42869c:	50                   	push   %eax
42869d:	6a 00                	push   $0x0
42869f:	6a 00                	push   $0x0
4286a1:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4286a4:	50                   	push   %eax
4286a5:	e8 8e e4 fd ff       	call   0x406b38
4286aa:	85 db                	test   %ebx,%ebx
4286ac:	74 0a                	je     0x4286b8
4286ae:	53                   	push   %ebx
4286af:	8b 45 e8             	mov    -0x18(%ebp),%eax
4286b2:	50                   	push   %eax
4286b3:	e8 20 e4 fd ff       	call   0x406ad8
4286b8:	85 f6                	test   %esi,%esi
4286ba:	74 0a                	je     0x4286c6
4286bc:	56                   	push   %esi
4286bd:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4286c0:	50                   	push   %eax
4286c1:	e8 12 e4 fd ff       	call   0x406ad8
4286c6:	33 c0                	xor    %eax,%eax
4286c8:	5a                   	pop    %edx
4286c9:	59                   	pop    %ecx
4286ca:	59                   	pop    %ecx
4286cb:	64 89 10             	mov    %edx,%fs:(%eax)
4286ce:	68 ed 86 42 00       	push   $0x4286ed
4286d3:	8b 45 e8             	mov    -0x18(%ebp),%eax
4286d6:	50                   	push   %eax
4286d7:	e8 14 e3 fd ff       	call   0x4069f0
4286dc:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4286df:	50                   	push   %eax
4286e0:	e8 0b e3 fd ff       	call   0x4069f0
4286e5:	c3                   	ret
4286e6:	e9 7d b4 fd ff       	jmp    0x403b68
4286eb:	eb e6                	jmp    0x4286d3
4286ed:	8b 45 f0             	mov    -0x10(%ebp),%eax
4286f0:	5f                   	pop    %edi
4286f1:	5e                   	pop    %esi
4286f2:	5b                   	pop    %ebx
4286f3:	8b e5                	mov    %ebp,%esp
4286f5:	5d                   	pop    %ebp
4286f6:	c3                   	ret
4286f7:	90                   	nop
4286f8:	8b d0                	mov    %eax,%edx
4286fa:	66 ff ca             	dec    %dx
4286fd:	74 0c                	je     0x42870b
4286ff:	66 83 ea 03          	sub    $0x3,%dx
428703:	74 06                	je     0x42870b
428705:	66 83 ea 04          	sub    $0x4,%dx
428709:	75 0a                	jne    0x428715
42870b:	8b c8                	mov    %eax,%ecx
42870d:	b8 01 00 00 00       	mov    $0x1,%eax
428712:	d3 e0                	shl    %cl,%eax
428714:	c3                   	ret
428715:	33 c0                	xor    %eax,%eax
428717:	c3                   	ret
428718:	49                   	dec    %ecx
428719:	f7 ea                	imul   %edx
42871b:	03 c1                	add    %ecx,%eax
42871d:	f7 d1                	not    %ecx
42871f:	23 c1                	and    %ecx,%eax
428721:	85 c0                	test   %eax,%eax
428723:	79 03                	jns    0x428728
428725:	83 c0 07             	add    $0x7,%eax
428728:	c1 f8 03             	sar    $0x3,%eax
42872b:	c3                   	ret
42872c:	55                   	push   %ebp
42872d:	8b ec                	mov    %esp,%ebp
42872f:	83 c4 dc             	add    $0xffffffdc,%esp
428732:	53                   	push   %ebx
428733:	56                   	push   %esi
428734:	57                   	push   %edi
428735:	89 4d f8             	mov    %ecx,-0x8(%ebp)
428738:	89 55 fc             	mov    %edx,-0x4(%ebp)
42873b:	8b f8                	mov    %eax,%edi
42873d:	8b 75 14             	mov    0x14(%ebp),%esi
428740:	8b 5d 18             	mov    0x18(%ebp),%ebx
428743:	c6 45 f7 01          	movb   $0x1,-0x9(%ebp)
428747:	a1 20 b5 49 00       	mov    0x49b520,%eax
42874c:	83 38 02             	cmpl   $0x2,(%eax)
42874f:	0f 85 b1 00 00 00    	jne    0x428806
428755:	3b 5d 2c             	cmp    0x2c(%ebp),%ebx
428758:	0f 85 a8 00 00 00    	jne    0x428806
42875e:	3b 75 28             	cmp    0x28(%ebp),%esi
428761:	0f 85 9f 00 00 00    	jne    0x428806
428767:	6a 01                	push   $0x1
428769:	6a 01                	push   $0x1
42876b:	8b 45 24             	mov    0x24(%ebp),%eax
42876e:	50                   	push   %eax
42876f:	e8 34 e2 fd ff       	call   0x4069a8
428774:	e8 0f fe ff ff       	call   0x428588
428779:	89 45 ec             	mov    %eax,-0x14(%ebp)
42877c:	8b 45 ec             	mov    -0x14(%ebp),%eax
42877f:	50                   	push   %eax
428780:	8b 45 10             	mov    0x10(%ebp),%eax
428783:	50                   	push   %eax
428784:	e8 4f e3 fd ff       	call   0x406ad8
428789:	89 45 ec             	mov    %eax,-0x14(%ebp)
42878c:	33 c0                	xor    %eax,%eax
42878e:	55                   	push   %ebp
42878f:	68 ff 87 42 00       	push   $0x4287ff
428794:	64 ff 30             	push   %fs:(%eax)
428797:	64 89 20             	mov    %esp,%fs:(%eax)
42879a:	ba 20 00 cc 00       	mov    $0xcc0020,%edx
42879f:	b8 29 00 aa 00       	mov    $0xaa0029,%eax
4287a4:	e8 ff e8 fd ff       	call   0x4070a8
4287a9:	50                   	push   %eax
4287aa:	8b 45 08             	mov    0x8(%ebp),%eax
4287ad:	50                   	push   %eax
4287ae:	8b 45 0c             	mov    0xc(%ebp),%eax
4287b1:	50                   	push   %eax
4287b2:	8b 45 ec             	mov    -0x14(%ebp),%eax
4287b5:	50                   	push   %eax
4287b6:	8b 45 1c             	mov    0x1c(%ebp),%eax
4287b9:	50                   	push   %eax
4287ba:	8b 45 20             	mov    0x20(%ebp),%eax
4287bd:	50                   	push   %eax
4287be:	8b 45 24             	mov    0x24(%ebp),%eax
4287c1:	50                   	push   %eax
4287c2:	8b 45 28             	mov    0x28(%ebp),%eax
4287c5:	50                   	push   %eax
4287c6:	8b 45 2c             	mov    0x2c(%ebp),%eax
4287c9:	50                   	push   %eax
4287ca:	8b 45 f8             	mov    -0x8(%ebp),%eax
4287cd:	50                   	push   %eax
4287ce:	8b 45 fc             	mov    -0x4(%ebp),%eax
4287d1:	50                   	push   %eax
4287d2:	57                   	push   %edi
4287d3:	e8 c0 e2 fd ff       	call   0x406a98
4287d8:	33 c0                	xor    %eax,%eax
4287da:	5a                   	pop    %edx
4287db:	59                   	pop    %ecx
4287dc:	59                   	pop    %ecx
4287dd:	64 89 10             	mov    %edx,%fs:(%eax)
4287e0:	68 b3 89 42 00       	push   $0x4289b3
4287e5:	8b 45 ec             	mov    -0x14(%ebp),%eax
4287e8:	50                   	push   %eax
4287e9:	8b 45 10             	mov    0x10(%ebp),%eax
4287ec:	50                   	push   %eax
4287ed:	e8 e6 e2 fd ff       	call   0x406ad8
4287f2:	89 45 ec             	mov    %eax,-0x14(%ebp)
4287f5:	8b 45 ec             	mov    -0x14(%ebp),%eax
4287f8:	50                   	push   %eax
4287f9:	e8 fa e1 fd ff       	call   0x4069f8
4287fe:	c3                   	ret
4287ff:	e9 64 b3 fd ff       	jmp    0x403b68
428804:	eb df                	jmp    0x4287e5
428806:	33 c0                	xor    %eax,%eax
428808:	89 45 dc             	mov    %eax,-0x24(%ebp)
42880b:	6a 00                	push   $0x0
42880d:	e8 9e e1 fd ff       	call   0x4069b0
428812:	e8 71 fd ff ff       	call   0x428588
428817:	89 45 f0             	mov    %eax,-0x10(%ebp)
42881a:	33 c0                	xor    %eax,%eax
42881c:	55                   	push   %ebp
42881d:	68 ac 89 42 00       	push   $0x4289ac
428822:	64 ff 30             	push   %fs:(%eax)
428825:	64 89 20             	mov    %esp,%fs:(%eax)
428828:	56                   	push   %esi
428829:	53                   	push   %ebx
42882a:	8b 45 24             	mov    0x24(%ebp),%eax
42882d:	50                   	push   %eax
42882e:	e8 75 e1 fd ff       	call   0x4069a8
428833:	e8 50 fd ff ff       	call   0x428588
428838:	89 45 ec             	mov    %eax,-0x14(%ebp)
42883b:	8b 45 ec             	mov    -0x14(%ebp),%eax
42883e:	50                   	push   %eax
42883f:	8b 45 f0             	mov    -0x10(%ebp),%eax
428842:	50                   	push   %eax
428843:	e8 90 e2 fd ff       	call   0x406ad8
428848:	89 45 e8             	mov    %eax,-0x18(%ebp)
42884b:	6a 00                	push   $0x0
42884d:	a1 90 c8 49 00       	mov    0x49c890,%eax
428852:	50                   	push   %eax
428853:	8b 45 24             	mov    0x24(%ebp),%eax
428856:	50                   	push   %eax
428857:	e8 84 e2 fd ff       	call   0x406ae0
42885c:	89 45 dc             	mov    %eax,-0x24(%ebp)
42885f:	6a 00                	push   $0x0
428861:	8b 45 dc             	mov    -0x24(%ebp),%eax
428864:	50                   	push   %eax
428865:	8b 45 24             	mov    0x24(%ebp),%eax
428868:	50                   	push   %eax
428869:	e8 72 e2 fd ff       	call   0x406ae0
42886e:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
428872:	74 14                	je     0x428888
428874:	6a ff                	push   $0xffffffff
428876:	8b 45 dc             	mov    -0x24(%ebp),%eax
428879:	50                   	push   %eax
42887a:	8b 45 f0             	mov    -0x10(%ebp),%eax
42887d:	50                   	push   %eax
42887e:	e8 5d e2 fd ff       	call   0x406ae0
428883:	89 45 dc             	mov    %eax,-0x24(%ebp)
428886:	eb 14                	jmp    0x42889c
428888:	6a ff                	push   $0xffffffff
42888a:	a1 90 c8 49 00       	mov    0x49c890,%eax
42888f:	50                   	push   %eax
428890:	8b 45 f0             	mov    -0x10(%ebp),%eax
428893:	50                   	push   %eax
428894:	e8 47 e2 fd ff       	call   0x406ae0
428899:	89 45 dc             	mov    %eax,-0x24(%ebp)
42889c:	8b 45 f0             	mov    -0x10(%ebp),%eax
42889f:	50                   	push   %eax
4288a0:	e8 0b e2 fd ff       	call   0x406ab0
4288a5:	68 20 00 cc 00       	push   $0xcc0020
4288aa:	56                   	push   %esi
4288ab:	53                   	push   %ebx
4288ac:	8b 45 08             	mov    0x8(%ebp),%eax
4288af:	50                   	push   %eax
4288b0:	8b 45 0c             	mov    0xc(%ebp),%eax
4288b3:	50                   	push   %eax
4288b4:	8b 45 10             	mov    0x10(%ebp),%eax
4288b7:	50                   	push   %eax
4288b8:	56                   	push   %esi
4288b9:	53                   	push   %ebx
4288ba:	6a 00                	push   $0x0
4288bc:	6a 00                	push   $0x0
4288be:	8b 45 f0             	mov    -0x10(%ebp),%eax
4288c1:	50                   	push   %eax
4288c2:	e8 71 e2 fd ff       	call   0x406b38
4288c7:	68 28 03 44 00       	push   $0x440328
4288cc:	56                   	push   %esi
4288cd:	53                   	push   %ebx
4288ce:	8b 45 1c             	mov    0x1c(%ebp),%eax
4288d1:	50                   	push   %eax
4288d2:	8b 45 20             	mov    0x20(%ebp),%eax
4288d5:	50                   	push   %eax
4288d6:	8b 45 24             	mov    0x24(%ebp),%eax
4288d9:	50                   	push   %eax
4288da:	56                   	push   %esi
4288db:	53                   	push   %ebx
4288dc:	6a 00                	push   $0x0
4288de:	6a 00                	push   $0x0
4288e0:	8b 45 f0             	mov    -0x10(%ebp),%eax
4288e3:	50                   	push   %eax
4288e4:	e8 4f e2 fd ff       	call   0x406b38
4288e9:	6a 00                	push   $0x0
4288eb:	57                   	push   %edi
4288ec:	e8 2f e2 fd ff       	call   0x406b20
4288f1:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4288f4:	68 ff ff ff 00       	push   $0xffffff
4288f9:	57                   	push   %edi
4288fa:	e8 e9 e1 fd ff       	call   0x406ae8
4288ff:	89 45 e0             	mov    %eax,-0x20(%ebp)
428902:	68 c6 00 88 00       	push   $0x8800c6
428907:	56                   	push   %esi
428908:	53                   	push   %ebx
428909:	8b 45 08             	mov    0x8(%ebp),%eax
42890c:	50                   	push   %eax
42890d:	8b 45 0c             	mov    0xc(%ebp),%eax
428910:	50                   	push   %eax
428911:	8b 45 10             	mov    0x10(%ebp),%eax
428914:	50                   	push   %eax
428915:	8b 45 28             	mov    0x28(%ebp),%eax
428918:	50                   	push   %eax
428919:	8b 45 2c             	mov    0x2c(%ebp),%eax
42891c:	50                   	push   %eax
42891d:	8b 45 f8             	mov    -0x8(%ebp),%eax