57960d:	74 46                	je     0x579655
57960f:	83 7c 24 20 00       	cmpl   $0x0,0x20(%esp)
579614:	75 3f                	jne    0x579655
579616:	ff 74 24 10          	push   0x10(%esp)
57961a:	8b 46 44             	mov    0x44(%esi),%eax
57961d:	57                   	push   %edi
57961e:	ff 76 08             	push   0x8(%esi)
579621:	ff 76 18             	push   0x18(%esi)
579624:	8b 40 0c             	mov    0xc(%eax),%eax
579627:	ff 74 24 2c          	push   0x2c(%esp)
57962b:	55                   	push   %ebp
57962c:	56                   	push   %esi
57962d:	ff d0                	call   *%eax
57962f:	83 c4 1c             	add    $0x1c,%esp
579632:	85 c0                	test   %eax,%eax
579634:	75 0e                	jne    0x579644
579636:	68 fc 00 00 00       	push   $0xfc
57963b:	68 5c d4 6b 00       	push   $0x6bd45c
579640:	6a 03                	push   $0x3
579642:	eb 1d                	jmp    0x579661
579644:	ff 74 24 18          	push   0x18(%esp)
579648:	55                   	push   %ebp
579649:	e8 c2 96 f3 ff       	call   0x4b2d10
57964e:	83 c4 08             	add    $0x8,%esp
579651:	8b d8                	mov    %eax,%ebx
579653:	eb 18                	jmp    0x57966d
579655:	68 f6 00 00 00       	push   $0xf6
57965a:	68 5c d4 6b 00       	push   $0x6bd45c
57965f:	6a 66                	push   $0x66
579661:	6a 66                	push   $0x66
579663:	6a 05                	push   $0x5
579665:	e8 36 7e f2 ff       	call   0x4a14a0
57966a:	83 c4 14             	add    $0x14,%esp
57966d:	57                   	push   %edi
57966e:	e8 dd e6 f5 ff       	call   0x4d7d50
579673:	57                   	push   %edi
579674:	e8 17 e7 f5 ff       	call   0x4d7d90
579679:	83 c4 08             	add    $0x8,%esp
57967c:	5d                   	pop    %ebp
57967d:	5f                   	pop    %edi
57967e:	5e                   	pop    %esi
57967f:	8b c3                	mov    %ebx,%eax
579681:	5b                   	pop    %ebx
579682:	59                   	pop    %ecx
579683:	c3                   	ret
579684:	cc                   	int3
579685:	cc                   	int3
579686:	cc                   	int3
579687:	cc                   	int3
579688:	cc                   	int3
579689:	cc                   	int3
57968a:	cc                   	int3
57968b:	cc                   	int3
57968c:	cc                   	int3
57968d:	cc                   	int3
57968e:	cc                   	int3
57968f:	cc                   	int3
579690:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
579694:	83 79 04 01          	cmpl   $0x1,0x4(%ecx)
579698:	75 2b                	jne    0x5796c5
57969a:	8b 44 24 04          	mov    0x4(%esp),%eax
57969e:	f6 40 1c 02          	testb  $0x2,0x1c(%eax)
5796a2:	74 21                	je     0x5796c5
5796a4:	ff 74 24 1c          	push   0x1c(%esp)
5796a8:	8b 01                	mov    (%ecx),%eax
5796aa:	ff 74 24 1c          	push   0x1c(%esp)
5796ae:	ff 74 24 1c          	push   0x1c(%esp)
5796b2:	ff 74 24 1c          	push   0x1c(%esp)
5796b6:	ff 30                	push   (%eax)
5796b8:	ff 74 24 1c          	push   0x1c(%esp)
5796bc:	e8 cf 62 ff ff       	call   0x56f990
5796c1:	83 c4 18             	add    $0x18,%esp
5796c4:	c3                   	ret
5796c5:	ff 74 24 1c          	push   0x1c(%esp)
5796c9:	ff 74 24 1c          	push   0x1c(%esp)
5796cd:	ff 74 24 1c          	push   0x1c(%esp)
5796d1:	ff 74 24 1c          	push   0x1c(%esp)
5796d5:	51                   	push   %ecx
5796d6:	ff 74 24 1c          	push   0x1c(%esp)
5796da:	e8 31 57 ff ff       	call   0x56ee10
5796df:	83 c4 18             	add    $0x18,%esp
5796e2:	c3                   	ret
5796e3:	cc                   	int3
5796e4:	cc                   	int3
5796e5:	cc                   	int3
5796e6:	cc                   	int3
5796e7:	cc                   	int3
5796e8:	cc                   	int3
5796e9:	cc                   	int3
5796ea:	cc                   	int3
5796eb:	cc                   	int3
5796ec:	cc                   	int3
5796ed:	cc                   	int3
5796ee:	cc                   	int3
5796ef:	cc                   	int3
5796f0:	8b 44 24 04          	mov    0x4(%esp),%eax
5796f4:	83 48 1c 01          	orl    $0x1,0x1c(%eax)
5796f8:	b8 01 00 00 00       	mov    $0x1,%eax
5796fd:	c3                   	ret
5796fe:	cc                   	int3
5796ff:	cc                   	int3
579700:	8b 44 24 04          	mov    0x4(%esp),%eax
579704:	8b 40 20             	mov    0x20(%eax),%eax
579707:	85 c0                	test   %eax,%eax
579709:	74 09                	je     0x579714
57970b:	50                   	push   %eax
57970c:	e8 2f 72 ff ff       	call   0x570940
579711:	83 c4 04             	add    $0x4,%esp
579714:	b8 01 00 00 00       	mov    $0x1,%eax
579719:	c3                   	ret
57971a:	cc                   	int3
57971b:	cc                   	int3
57971c:	cc                   	int3
57971d:	cc                   	int3
57971e:	cc                   	int3
57971f:	cc                   	int3
579720:	b8 98 34 72 00       	mov    $0x723498,%eax
579725:	c3                   	ret
579726:	cc                   	int3
579727:	cc                   	int3
579728:	cc                   	int3
579729:	cc                   	int3
57972a:	cc                   	int3
57972b:	cc                   	int3
57972c:	cc                   	int3
57972d:	cc                   	int3
57972e:	cc                   	int3
57972f:	cc                   	int3
579730:	8b 44 24 0c          	mov    0xc(%esp),%eax
579734:	8b 48 44             	mov    0x44(%eax),%ecx
579737:	89 44 24 0c          	mov    %eax,0xc(%esp)
57973b:	8b 41 08             	mov    0x8(%ecx),%eax
57973e:	ff e0                	jmp    *%eax
579740:	53                   	push   %ebx
579741:	8b 5c 24 08          	mov    0x8(%esp),%ebx
579745:	56                   	push   %esi
579746:	57                   	push   %edi
579747:	8b 7c 24 18          	mov    0x18(%esp),%edi
57974b:	57                   	push   %edi
57974c:	ff 74 24 18          	push   0x18(%esp)
579750:	8b 47 44             	mov    0x44(%edi),%eax
579753:	53                   	push   %ebx
579754:	8b 40 08             	mov    0x8(%eax),%eax
579757:	ff d0                	call   *%eax
579759:	8b f0                	mov    %eax,%esi
57975b:	83 c4 0c             	add    $0xc,%esp
57975e:	85 f6                	test   %esi,%esi
579760:	7e 38                	jle    0x57979a
579762:	ff 77 08             	push   0x8(%edi)
579765:	e8 06 9c f3 ff       	call   0x4b3370
57976a:	83 c0 07             	add    $0x7,%eax
57976d:	83 c4 04             	add    $0x4,%esp
579770:	99                   	cltd
579771:	83 e2 07             	and    $0x7,%edx
579774:	8d 3c 02             	lea    (%edx,%eax,1),%edi
579777:	c1 ff 03             	sar    $0x3,%edi
57977a:	2b fe                	sub    %esi,%edi
57977c:	85 ff                	test   %edi,%edi
57977e:	7e 17                	jle    0x579797
579780:	56                   	push   %esi
579781:	8d 0c 1f             	lea    (%edi,%ebx,1),%ecx
579784:	53                   	push   %ebx
579785:	51                   	push   %ecx
579786:	e8 f5 9c 06 00       	call   0x5e3480
57978b:	57                   	push   %edi
57978c:	6a 00                	push   $0x0
57978e:	53                   	push   %ebx
57978f:	e8 6c a2 06 00       	call   0x5e3a00
579794:	83 c4 18             	add    $0x18,%esp
579797:	8d 04 37             	lea    (%edi,%esi,1),%eax
57979a:	5f                   	pop    %edi
57979b:	5e                   	pop    %esi
57979c:	5b                   	pop    %ebx
57979d:	c3                   	ret
57979e:	cc                   	int3
57979f:	cc                   	int3
5797a0:	8b 44 24 04          	mov    0x4(%esp),%eax
5797a4:	8b 48 44             	mov    0x44(%eax),%ecx
5797a7:	89 44 24 04          	mov    %eax,0x4(%esp)
5797ab:	8b 41 04             	mov    0x4(%ecx),%eax
5797ae:	ff e0                	jmp    *%eax
5797b0:	56                   	push   %esi
5797b1:	e8 ea 30 ff ff       	call   0x56c8a0
5797b6:	8b f0                	mov    %eax,%esi
5797b8:	85 f6                	test   %esi,%esi
5797ba:	74 47                	je     0x579803
5797bc:	68 c8 d9 6b 00       	push   $0x6bd9c8
5797c1:	e8 da 99 f3 ff       	call   0x4b31a0
5797c6:	68 f0 d9 6b 00       	push   $0x6bd9f0
5797cb:	89 46 08             	mov    %eax,0x8(%esi)
5797ce:	e8 cd 99 f3 ff       	call   0x4b31a0
5797d3:	68 dc d9 6b 00       	push   $0x6bd9dc
5797d8:	89 46 0c             	mov    %eax,0xc(%esi)
5797db:	e8 c0 99 f3 ff       	call   0x4b31a0
5797e0:	83 c4 0c             	add    $0xc,%esp
5797e3:	89 46 24             	mov    %eax,0x24(%esi)
5797e6:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
5797ea:	74 0e                	je     0x5797fa
5797ec:	85 c0                	test   %eax,%eax
5797ee:	74 0a                	je     0x5797fa
5797f0:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
5797f4:	74 04                	je     0x5797fa
5797f6:	8b c6                	mov    %esi,%eax
5797f8:	5e                   	pop    %esi
5797f9:	c3                   	ret
5797fa:	56                   	push   %esi
5797fb:	e8 b0 2f ff ff       	call   0x56c7b0
579800:	83 c4 04             	add    $0x4,%esp
579803:	33 c0                	xor    %eax,%eax
579805:	5e                   	pop    %esi
579806:	c3                   	ret
579807:	cc                   	int3
579808:	cc                   	int3
579809:	cc                   	int3
57980a:	cc                   	int3
57980b:	cc                   	int3
57980c:	cc                   	int3
57980d:	cc                   	int3
57980e:	cc                   	int3
57980f:	cc                   	int3
579810:	56                   	push   %esi
579811:	e8 8a 30 ff ff       	call   0x56c8a0
579816:	8b f0                	mov    %eax,%esi
579818:	85 f6                	test   %esi,%esi
57981a:	74 47                	je     0x579863
57981c:	68 04 da 6b 00       	push   $0x6bda04
579821:	e8 7a 99 f3 ff       	call   0x4b31a0
579826:	68 2c da 6b 00       	push   $0x6bda2c
57982b:	89 46 08             	mov    %eax,0x8(%esi)
57982e:	e8 6d 99 f3 ff       	call   0x4b31a0
579833:	68 18 da 6b 00       	push   $0x6bda18
579838:	89 46 0c             	mov    %eax,0xc(%esi)
57983b:	e8 60 99 f3 ff       	call   0x4b31a0
579840:	83 c4 0c             	add    $0xc,%esp
579843:	89 46 24             	mov    %eax,0x24(%esi)
579846:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
57984a:	74 0e                	je     0x57985a
57984c:	85 c0                	test   %eax,%eax
57984e:	74 0a                	je     0x57985a
579850:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
579854:	74 04                	je     0x57985a
579856:	8b c6                	mov    %esi,%eax
579858:	5e                   	pop    %esi
579859:	c3                   	ret
57985a:	56                   	push   %esi
57985b:	e8 50 2f ff ff       	call   0x56c7b0
579860:	83 c4 04             	add    $0x4,%esp
579863:	33 c0                	xor    %eax,%eax
579865:	5e                   	pop    %esi
579866:	c3                   	ret
579867:	cc                   	int3
579868:	cc                   	int3
579869:	cc                   	int3
57986a:	cc                   	int3
57986b:	cc                   	int3
57986c:	cc                   	int3
57986d:	cc                   	int3
57986e:	cc                   	int3
57986f:	cc                   	int3
579870:	56                   	push   %esi
579871:	e8 2a 30 ff ff       	call   0x56c8a0
579876:	8b f0                	mov    %eax,%esi
579878:	85 f6                	test   %esi,%esi
57987a:	74 47                	je     0x5798c3
57987c:	68 40 da 6b 00       	push   $0x6bda40
579881:	e8 1a 99 f3 ff       	call   0x4b31a0
579886:	68 68 da 6b 00       	push   $0x6bda68
57988b:	89 46 08             	mov    %eax,0x8(%esi)
57988e:	e8 0d 99 f3 ff       	call   0x4b31a0
579893:	68 54 da 6b 00       	push   $0x6bda54
579898:	89 46 0c             	mov    %eax,0xc(%esi)
57989b:	e8 00 99 f3 ff       	call   0x4b31a0
5798a0:	83 c4 0c             	add    $0xc,%esp
5798a3:	89 46 24             	mov    %eax,0x24(%esi)
5798a6:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
5798aa:	74 0e                	je     0x5798ba
5798ac:	85 c0                	test   %eax,%eax
5798ae:	74 0a                	je     0x5798ba
5798b0:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
5798b4:	74 04                	je     0x5798ba
5798b6:	8b c6                	mov    %esi,%eax
5798b8:	5e                   	pop    %esi
5798b9:	c3                   	ret
5798ba:	56                   	push   %esi
5798bb:	e8 f0 2e ff ff       	call   0x56c7b0
5798c0:	83 c4 04             	add    $0x4,%esp
5798c3:	33 c0                	xor    %eax,%eax
5798c5:	5e                   	pop    %esi
5798c6:	c3                   	ret
5798c7:	cc                   	int3
5798c8:	cc                   	int3
5798c9:	cc                   	int3
5798ca:	cc                   	int3
5798cb:	cc                   	int3
5798cc:	cc                   	int3
5798cd:	cc                   	int3
5798ce:	cc                   	int3
5798cf:	cc                   	int3
5798d0:	b8 70 00 00 00       	mov    $0x70,%eax
5798d5:	e8 16 7c 06 00       	call   0x5e14f0
5798da:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5798df:	33 c4                	xor    %esp,%eax
5798e1:	89 44 24 6c          	mov    %eax,0x6c(%esp)
5798e5:	81 bc 24 80 00 00 00 	cmpl   $0x40000000,0x80(%esp)
5798ec:	00 00 00 40
5798f0:	8b 44 24 7c          	mov    0x7c(%esp),%eax
5798f4:	53                   	push   %ebx
5798f5:	8b 9c 24 88 00 00 00 	mov    0x88(%esp),%ebx
5798fc:	55                   	push   %ebp
5798fd:	8b 6c 24 7c          	mov    0x7c(%esp),%ebp
579901:	89 44 24 10          	mov    %eax,0x10(%esp)
579905:	8b 84 24 98 00 00 00 	mov    0x98(%esp),%eax
57990c:	56                   	push   %esi
57990d:	8b b4 24 94 00 00 00 	mov    0x94(%esp),%esi
579914:	89 44 24 10          	mov    %eax,0x10(%esp)
579918:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
57991f:	00
579920:	76 14                	jbe    0x579936
579922:	5e                   	pop    %esi
579923:	5d                   	pop    %ebp
579924:	33 c0                	xor    %eax,%eax
579926:	5b                   	pop    %ebx
579927:	8b 4c 24 6c          	mov    0x6c(%esp),%ecx
57992b:	33 cc                	xor    %esp,%ecx
57992d:	e8 a8 7b 06 00       	call   0x5e14da
579932:	83 c4 70             	add    $0x70,%esp
579935:	c3                   	ret
579936:	57                   	push   %edi
579937:	50                   	push   %eax
579938:	e8 b3 7b f1 ff       	call   0x4914f0
57993d:	8b f8                	mov    %eax,%edi
57993f:	8d 44 24 28          	lea    0x28(%esp),%eax
579943:	50                   	push   %eax
579944:	e8 77 7d f3 ff       	call   0x4b16c0
579949:	ff b4 24 a4 00 00 00 	push   0xa4(%esp)
579950:	8d 44 24 28          	lea    0x28(%esp),%eax
579954:	56                   	push   %esi
579955:	8b b4 24 98 00 00 00 	mov    0x98(%esp),%esi
57995c:	56                   	push   %esi
57995d:	53                   	push   %ebx
57995e:	50                   	push   %eax
57995f:	8d 44 24 2c          	lea    0x2c(%esp),%eax
579963:	50                   	push   %eax
579964:	e8 47 01 00 00       	call   0x579ab0
579969:	83 c4 20             	add    $0x20,%esp
57996c:	89 44 24 20          	mov    %eax,0x20(%esp)
579970:	85 c0                	test   %eax,%eax
579972:	0f 84 c6 00 00 00    	je     0x579a3e
579978:	6a 00                	push   $0x0
57997a:	ff 74 24 18          	push   0x18(%esp)