42151f:	8b cd                	mov    %ebp,%ecx
421521:	e8 8a 06 00 00       	call   0x421bb0
421526:	8b f8                	mov    %eax,%edi
421528:	6a f0                	push   $0xfffffff0
42152a:	8b 77 1c             	mov    0x1c(%edi),%esi
42152d:	56                   	push   %esi
42152e:	ff 15 20 99 43 00    	call   *0x439920
421534:	8b 1d 28 99 43 00    	mov    0x439928,%ebx
42153a:	80 e4 7f             	and    $0x7f,%ah
42153d:	50                   	push   %eax
42153e:	6a f0                	push   $0xfffffff0
421540:	56                   	push   %esi
421541:	ff d3                	call   *%ebx
421543:	8b cd                	mov    %ebp,%ecx
421545:	89 44 24 10          	mov    %eax,0x10(%esp)
421549:	e8 21 9d fe ff       	call   0x40b26f
42154e:	56                   	push   %esi
42154f:	ff 15 80 99 43 00    	call   *0x439980
421555:	85 c0                	test   %eax,%eax
421557:	74 15                	je     0x42156e
421559:	ff 74 24 10          	push   0x10(%esp)
42155d:	6a f0                	push   $0xfffffff0
42155f:	56                   	push   %esi
421560:	ff d3                	call   *%ebx
421562:	8b 07                	mov    (%edi),%eax
421564:	6a 01                	push   $0x1
421566:	8b cf                	mov    %edi,%ecx
421568:	ff 90 e8 00 00 00    	call   *0xe8(%eax)
42156e:	6a 01                	push   $0x1
421570:	58                   	pop    %eax
421571:	5b                   	pop    %ebx
421572:	5e                   	pop    %esi
421573:	5f                   	pop    %edi
421574:	5d                   	pop    %ebp
421575:	59                   	pop    %ecx
421576:	c3                   	ret
421577:	56                   	push   %esi
421578:	57                   	push   %edi
421579:	8b 7c 24 0c          	mov    0xc(%esp),%edi
42157d:	8b f1                	mov    %ecx,%esi
42157f:	8b 47 04             	mov    0x4(%edi),%eax
421582:	3d 01 02 00 00       	cmp    $0x201,%eax
421587:	74 07                	je     0x421590
421589:	3d a1 00 00 00       	cmp    $0xa1,%eax
42158e:	75 07                	jne    0x421597
421590:	ff 37                	push   (%edi)
421592:	e8 4e eb ff ff       	call   0x4200e5
421597:	57                   	push   %edi
421598:	8b ce                	mov    %esi,%ecx
42159a:	e8 5d 96 ff ff       	call   0x41abfc
42159f:	85 c0                	test   %eax,%eax
4215a1:	75 35                	jne    0x4215d8
4215a3:	8b 47 04             	mov    0x4(%edi),%eax
4215a6:	3d 00 01 00 00       	cmp    $0x100,%eax
4215ab:	72 30                	jb     0x4215dd
4215ad:	3d 08 01 00 00       	cmp    $0x108,%eax
4215b2:	77 29                	ja     0x4215dd
4215b4:	8b 06                	mov    (%esi),%eax
4215b6:	8b ce                	mov    %esi,%ecx
4215b8:	ff 90 f0 00 00 00    	call   *0xf0(%eax)
4215be:	85 c0                	test   %eax,%eax
4215c0:	74 1b                	je     0x4215dd
4215c2:	57                   	push   %edi
4215c3:	50                   	push   %eax
4215c4:	8b ce                	mov    %esi,%ecx
4215c6:	e8 e5 05 00 00       	call   0x421bb0
4215cb:	ff 70 1c             	push   0x1c(%eax)
4215ce:	ff 15 30 98 43 00    	call   *0x439830
4215d4:	85 c0                	test   %eax,%eax
4215d6:	74 05                	je     0x4215dd
4215d8:	6a 01                	push   $0x1
4215da:	58                   	pop    %eax
4215db:	eb 02                	jmp    0x4215df
4215dd:	33 c0                	xor    %eax,%eax
4215df:	5f                   	pop    %edi
4215e0:	5e                   	pop    %esi
4215e1:	c2 04 00             	ret    $0x4
4215e4:	ff 74 24 04          	push   0x4(%esp)
4215e8:	e8 9b 11 00 00       	call   0x422788
4215ed:	c2 04 00             	ret    $0x4
4215f0:	55                   	push   %ebp
4215f1:	8b ec                	mov    %esp,%ebp
4215f3:	83 ec 54             	sub    $0x54,%esp
4215f6:	53                   	push   %ebx
4215f7:	56                   	push   %esi
4215f8:	8b 75 18             	mov    0x18(%ebp),%esi
4215fb:	57                   	push   %edi
4215fc:	85 f6                	test   %esi,%esi
4215fe:	8b d9                	mov    %ecx,%ebx
421600:	75 08                	jne    0x42160a
421602:	e8 b5 c9 ff ff       	call   0x41dfbc
421607:	8b 70 1c             	mov    0x1c(%eax),%esi
42160a:	8b 06                	mov    (%esi),%eax
42160c:	6a 01                	push   $0x1
42160e:	8b ce                	mov    %esi,%ecx
421610:	ff 90 d0 00 00 00    	call   *0xd0(%eax)
421616:	8b 45 08             	mov    0x8(%ebp),%eax
421619:	83 65 d8 00          	andl   $0x0,-0x28(%ebp)
42161d:	89 45 d4             	mov    %eax,-0x2c(%ebp)
421620:	8b 45 0c             	mov    0xc(%ebp),%eax
421623:	89 45 d0             	mov    %eax,-0x30(%ebp)
421626:	8b 45 10             	mov    0x10(%ebp),%eax
421629:	89 45 cc             	mov    %eax,-0x34(%ebp)
42162c:	8b 45 14             	mov    0x14(%ebp),%eax
42162f:	8b 08                	mov    (%eax),%ecx
421631:	8b 50 04             	mov    0x4(%eax),%edx
421634:	8b 78 08             	mov    0x8(%eax),%edi
421637:	8b 40 0c             	mov    0xc(%eax),%eax
42163a:	2b f9                	sub    %ecx,%edi
42163c:	2b c2                	sub    %edx,%eax
42163e:	89 4d c8             	mov    %ecx,-0x38(%ebp)
421641:	89 55 c4             	mov    %edx,-0x3c(%ebp)
421644:	89 7d c0             	mov    %edi,-0x40(%ebp)
421647:	89 45 bc             	mov    %eax,-0x44(%ebp)
42164a:	8b 46 1c             	mov    0x1c(%esi),%eax
42164d:	83 65 b4 00          	andl   $0x0,-0x4c(%ebp)
421651:	89 45 b8             	mov    %eax,-0x48(%ebp)
421654:	e8 ee 30 00 00       	call   0x424747
421659:	8b 40 08             	mov    0x8(%eax),%eax
42165c:	8b 3b                	mov    (%ebx),%edi
42165e:	89 45 b0             	mov    %eax,-0x50(%ebp)
421661:	8b 45 1c             	mov    0x1c(%ebp),%eax
421664:	89 45 ac             	mov    %eax,-0x54(%ebp)
421667:	8d 45 ac             	lea    -0x54(%ebp),%eax
42166a:	50                   	push   %eax
42166b:	8b cb                	mov    %ebx,%ecx
42166d:	ff 57 64             	call   *0x64(%edi)
421670:	85 c0                	test   %eax,%eax
421672:	75 0a                	jne    0x42167e
421674:	8b cb                	mov    %ebx,%ecx
421676:	ff 97 ac 00 00 00    	call   *0xac(%edi)
42167c:	eb 73                	jmp    0x4216f1
42167e:	8b 45 d4             	mov    -0x2c(%ebp),%eax
421681:	53                   	push   %ebx
421682:	89 45 dc             	mov    %eax,-0x24(%ebp)
421685:	8b 45 d0             	mov    -0x30(%ebp),%eax
421688:	89 45 e0             	mov    %eax,-0x20(%ebp)
42168b:	8b 45 b0             	mov    -0x50(%ebp),%eax
42168e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
421691:	8b 45 c8             	mov    -0x38(%ebp),%eax
421694:	89 45 e8             	mov    %eax,-0x18(%ebp)
421697:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42169a:	89 45 ec             	mov    %eax,-0x14(%ebp)
42169d:	8b 45 c0             	mov    -0x40(%ebp),%eax
4216a0:	89 45 f0             	mov    %eax,-0x10(%ebp)
4216a3:	8b 45 bc             	mov    -0x44(%ebp),%eax
4216a6:	89 45 f4             	mov    %eax,-0xc(%ebp)
4216a9:	8b 45 cc             	mov    -0x34(%ebp),%eax
4216ac:	25 ff ff ff ee       	and    $0xeeffffff,%eax
4216b1:	89 45 f8             	mov    %eax,-0x8(%ebp)
4216b4:	8b 45 ac             	mov    -0x54(%ebp),%eax
4216b7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4216ba:	e8 12 91 ff ff       	call   0x41a7d1
4216bf:	8d 45 dc             	lea    -0x24(%ebp),%eax
4216c2:	50                   	push   %eax
4216c3:	6a 00                	push   $0x0
4216c5:	68 20 02 00 00       	push   $0x220
4216ca:	ff b6 bc 00 00 00    	push   0xbc(%esi)
4216d0:	ff 15 88 99 43 00    	call   *0x439988
4216d6:	89 45 18             	mov    %eax,0x18(%ebp)
4216d9:	e8 3f 91 ff ff       	call   0x41a81d
4216de:	85 c0                	test   %eax,%eax
4216e0:	75 08                	jne    0x4216ea
4216e2:	8b cb                	mov    %ebx,%ecx
4216e4:	ff 97 ac 00 00 00    	call   *0xac(%edi)
4216ea:	33 ff                	xor    %edi,%edi
4216ec:	39 7d 18             	cmp    %edi,0x18(%ebp)
4216ef:	75 04                	jne    0x4216f5
4216f1:	33 c0                	xor    %eax,%eax
4216f3:	eb 55                	jmp    0x42174a
4216f5:	f6 45 cf 10          	testb  $0x10,-0x31(%ebp)
4216f9:	74 4c                	je     0x421747
4216fb:	ff 75 18             	push   0x18(%ebp)
4216fe:	ff 15 3c 98 43 00    	call   *0x43983c
421704:	f6 45 cf 20          	testb  $0x20,-0x31(%ebp)
421708:	74 04                	je     0x42170e
42170a:	6a 02                	push   $0x2
42170c:	eb 0c                	jmp    0x42171a
42170e:	f6 45 cf 01          	testb  $0x1,-0x31(%ebp)
421712:	74 04                	je     0x421718
421714:	6a 03                	push   $0x3
421716:	eb 02                	jmp    0x42171a
421718:	6a 01                	push   $0x1
42171a:	8b cb                	mov    %ebx,%ecx
42171c:	e8 c9 c0 ff ff       	call   0x41d7ea
421721:	57                   	push   %edi
421722:	ff 73 1c             	push   0x1c(%ebx)
421725:	8b 1d 88 99 43 00    	mov    0x439988,%ebx
42172b:	68 22 02 00 00       	push   $0x222
421730:	ff b6 bc 00 00 00    	push   0xbc(%esi)
421736:	ff d3                	call   *%ebx
421738:	57                   	push   %edi
421739:	57                   	push   %edi
42173a:	68 34 02 00 00       	push   $0x234
42173f:	ff b6 bc 00 00 00    	push   0xbc(%esi)
421745:	ff d3                	call   *%ebx
421747:	6a 01                	push   $0x1
421749:	58                   	pop    %eax
42174a:	5f                   	pop    %edi
42174b:	5e                   	pop    %esi
42174c:	5b                   	pop    %ebx
42174d:	c9                   	leave
42174e:	c2 18 00             	ret    $0x18
421751:	b8 bc 78 42 00       	mov    $0x4278bc,%eax
421756:	e8 d5 a4 fe ff       	call   0x40bc30
42175b:	80 4d 0f 40          	orb    $0x40,0xf(%ebp)
42175f:	53                   	push   %ebx
421760:	8b 5d 14             	mov    0x14(%ebp),%ebx
421763:	56                   	push   %esi
421764:	57                   	push   %edi
421765:	8b 7d 08             	mov    0x8(%ebp),%edi
421768:	8b f1                	mov    %ecx,%esi
42176a:	85 db                	test   %ebx,%ebx
42176c:	89 be 8c 00 00 00    	mov    %edi,0x8c(%esi)
421772:	74 16                	je     0x42178a
421774:	8b 43 08             	mov    0x8(%ebx),%eax
421777:	85 c0                	test   %eax,%eax
421779:	74 0f                	je     0x42178a
42177b:	8b 48 64             	mov    0x64(%eax),%ecx
42177e:	89 8e bc 00 00 00    	mov    %ecx,0xbc(%esi)
421784:	8b 40 68             	mov    0x68(%eax),%eax
421787:	89 46 48             	mov    %eax,0x48(%esi)
42178a:	8d 4d 14             	lea    0x14(%ebp),%ecx
42178d:	e8 fa d1 ff ff       	call   0x41e98c
421792:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
421796:	8d 4d 08             	lea    0x8(%ebp),%ecx
421799:	e8 ee d1 ff ff       	call   0x41e98c
42179e:	57                   	push   %edi
42179f:	8d 4d 14             	lea    0x14(%ebp),%ecx
4217a2:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4217a6:	e8 3e d4 ff ff       	call   0x41ebe9
4217ab:	85 c0                	test   %eax,%eax
4217ad:	74 10                	je     0x4217bf
4217af:	6a 0a                	push   $0xa
4217b1:	6a 00                	push   $0x0
4217b3:	ff 75 14             	push   0x14(%ebp)
4217b6:	8d 45 08             	lea    0x8(%ebp),%eax
4217b9:	50                   	push   %eax
4217ba:	e8 d5 d4 ff ff       	call   0x41ec94
4217bf:	53                   	push   %ebx
4217c0:	8b 16                	mov    (%esi),%edx
4217c2:	ff 75 10             	push   0x10(%ebp)
4217c5:	8b ce                	mov    %esi,%ecx
4217c7:	68 a0 6a 43 00       	push   $0x436aa0
4217cc:	ff 75 0c             	push   0xc(%ebp)
4217cf:	ff 75 08             	push   0x8(%ebp)
4217d2:	57                   	push   %edi
4217d3:	ff 75 0c             	push   0xc(%ebp)
4217d6:	89 55 0c             	mov    %edx,0xc(%ebp)
4217d9:	e8 92 11 00 00       	call   0x422970
4217de:	50                   	push   %eax
4217df:	8b 45 0c             	mov    0xc(%ebp),%eax
4217e2:	8b ce                	mov    %esi,%ecx
4217e4:	ff 90 fc 00 00 00    	call   *0xfc(%eax)
4217ea:	85 c0                	test   %eax,%eax
4217ec:	75 1b                	jne    0x421809
4217ee:	20 45 fc             	and    %al,-0x4(%ebp)
4217f1:	8d 4d 08             	lea    0x8(%ebp),%ecx
4217f4:	e8 a7 d2 ff ff       	call   0x41eaa0
4217f9:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4217fd:	8d 4d 14             	lea    0x14(%ebp),%ecx
421800:	e8 9b d2 ff ff       	call   0x41eaa0
421805:	33 c0                	xor    %eax,%eax
421807:	eb 1b                	jmp    0x421824
421809:	80 65 fc 00          	andb   $0x0,-0x4(%ebp)
42180d:	8d 4d 08             	lea    0x8(%ebp),%ecx
421810:	e8 8b d2 ff ff       	call   0x41eaa0
421815:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
421819:	8d 4d 14             	lea    0x14(%ebp),%ecx
42181c:	e8 7f d2 ff ff       	call   0x41eaa0
421821:	6a 01                	push   $0x1
421823:	58                   	pop    %eax
421824:	8b 4d f4             	mov    -0xc(%ebp),%ecx
421827:	5f                   	pop    %edi
421828:	5e                   	pop    %esi
421829:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
421830:	5b                   	pop    %ebx
421831:	c9                   	leave
421832:	c2 10 00             	ret    $0x10
421835:	56                   	push   %esi
421836:	8b f1                	mov    %ecx,%esi
421838:	ff 74 24 10          	push   0x10(%esp)
42183c:	ff 74 24 10          	push   0x10(%esp)
421840:	ff 74 24 10          	push   0x10(%esp)
421844:	e8 98 26 00 00       	call   0x423ee1
421849:	8b ce                	mov    %esi,%ecx
42184b:	e8 60 03 00 00       	call   0x421bb0
421850:	8b 10                	mov    (%eax),%edx
421852:	6a 01                	push   $0x1
421854:	8b c8                	mov    %eax,%ecx
421856:	ff 92 e8 00 00 00    	call   *0xe8(%edx)
42185c:	5e                   	pop    %esi
42185d:	c2 0c 00             	ret    $0xc
421860:	51                   	push   %ecx
421861:	53                   	push   %ebx
421862:	55                   	push   %ebp
421863:	33 db                	xor    %ebx,%ebx
421865:	8b e9                	mov    %ecx,%ebp
421867:	39 1d dc 6d 43 00    	cmp    %ebx,0x436ddc
42186d:	56                   	push   %esi
42186e:	57                   	push   %edi
42186f:	89 6c 24 10          	mov    %ebp,0x10(%esp)
421873:	0f 84 b8 00 00 00    	je     0x421931
421879:	e8 32 03 00 00       	call   0x421bb0
42187e:	8b f0                	mov    %eax,%esi
421880:	53                   	push   %ebx
421881:	8b ce                	mov    %esi,%ecx
421883:	e8 c7 fb ff ff       	call   0x42144f
421888:	8b f8                	mov    %eax,%edi
42188a:	3b fb                	cmp    %ebx,%edi
42188c:	74 08                	je     0x421896
42188e:	3b fd                	cmp    %ebp,%edi
421890:	0f 85 9b 00 00 00    	jne    0x421931
421896:	6a ec                	push   $0xffffffec
421898:	ff b6 bc 00 00 00    	push   0xbc(%esi)
42189e:	ff 15 20 99 43 00    	call   *0x439920
4218a4:	3b fb                	cmp    %ebx,%edi
4218a6:	8b e8                	mov    %eax,%ebp
4218a8:	74 28                	je     0x4218d2
4218aa:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4218ae:	e8 3f be ff ff       	call   0x41d6f2
4218b3:	f6 c4 02             	test   $0x2,%ah
4218b6:	75 1a                	jne    0x4218d2
4218b8:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4218bc:	e8 17 be ff ff       	call   0x41d6d8
4218c1:	a9 00 00 00 01       	test   $0x1000000,%eax
4218c6:	74 0a                	je     0x4218d2
4218c8:	8b fd                	mov    %ebp,%edi
4218ca:	81 e7 ff fd ff ff    	and    $0xfffffdff,%edi
4218d0:	eb 08                	jmp    0x4218da
4218d2:	8b fd                	mov    %ebp,%edi
4218d4:	81 cf 00 02 00 00    	or     $0x200,%edi
4218da:	3b ef                	cmp    %edi,%ebp
4218dc:	74 53                	je     0x421931
4218de:	68 81 00 00 00       	push   $0x81
4218e3:	53                   	push   %ebx
4218e4:	53                   	push   %ebx
4218e5:	ff b6 bc 00 00 00    	push   0xbc(%esi)
4218eb:	ff 15 24 98 43 00    	call   *0x439824
4218f1:	57                   	push   %edi
4218f2:	6a ec                	push   $0xffffffec
4218f4:	ff b6 bc 00 00 00    	push   0xbc(%esi)
4218fa:	ff 15 28 99 43 00    	call   *0x439928
421900:	68 37 01 00 00       	push   $0x137
421905:	53                   	push   %ebx
421906:	53                   	push   %ebx
421907:	53                   	push   %ebx
421908:	53                   	push   %ebx
421909:	53                   	push   %ebx
42190a:	ff b6 bc 00 00 00    	push   0xbc(%esi)