59036c:	c3                   	ret
59036d:	cc                   	int3
59036e:	cc                   	int3
59036f:	cc                   	int3
590370:	b8 14 02 00 00       	mov    $0x214,%eax
590375:	e8 36 14 04 00       	call   0x5d17b0
59037a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
59037f:	33 c4                	xor    %esp,%eax
590381:	89 84 24 10 02 00 00 	mov    %eax,0x210(%esp)
590388:	8b 94 24 1c 02 00 00 	mov    0x21c(%esp),%edx
59038f:	8b 8c 24 20 02 00 00 	mov    0x220(%esp),%ecx
590396:	53                   	push   %ebx
590397:	55                   	push   %ebp
590398:	56                   	push   %esi
590399:	8b b4 24 24 02 00 00 	mov    0x224(%esp),%esi
5903a0:	57                   	push   %edi
5903a1:	33 ff                	xor    %edi,%edi
5903a3:	89 54 24 14          	mov    %edx,0x14(%esp)
5903a7:	89 4c 24 10          	mov    %ecx,0x10(%esp)
5903ab:	8b ae e0 05 00 00    	mov    0x5e0(%esi),%ebp
5903b1:	8d 5f 01             	lea    0x1(%edi),%ebx
5903b4:	f7 45 24 00 01 00 00 	testl  $0x100,0x24(%ebp)
5903bb:	0f 85 a9 00 00 00    	jne    0x59046a
5903c1:	8b 06                	mov    (%esi),%eax
5903c3:	89 44 24 18          	mov    %eax,0x18(%esp)
5903c7:	83 f9 20             	cmp    $0x20,%ecx
5903ca:	76 07                	jbe    0x5903d3
5903cc:	33 c0                	xor    %eax,%eax
5903ce:	e9 f0 00 00 00       	jmp    0x5904c3
5903d3:	51                   	push   %ecx
5903d4:	52                   	push   %edx
5903d5:	8d 84 24 6c 01 00 00 	lea    0x16c(%esp),%eax
5903dc:	50                   	push   %eax
5903dd:	e8 ee 29 04 00       	call   0x5d2dd0
5903e2:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5903e6:	89 84 24 6c 01 00 00 	mov    %eax,0x16c(%esp)
5903ed:	ff b5 18 02 00 00    	push   0x218(%ebp)
5903f3:	e8 c8 1b f5 ff       	call   0x4e1fc0
5903f8:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
5903fe:	8d 4c 24 28          	lea    0x28(%esp),%ecx
590402:	51                   	push   %ecx
590403:	ff 70 14             	push   0x14(%eax)
590406:	e8 e5 3a f5 ff       	call   0x4e3ef0
59040b:	8b f8                	mov    %eax,%edi
59040d:	83 c4 18             	add    $0x18,%esp
590410:	85 ff                	test   %edi,%edi
590412:	74 25                	je     0x590439
590414:	8b d3                	mov    %ebx,%edx
590416:	8d 8f ac 01 00 00    	lea    0x1ac(%edi),%ecx
59041c:	f0 0f c1 11          	lock xadd %edx,(%ecx)
590420:	8b 8e e0 05 00 00    	mov    0x5e0(%esi),%ecx
590426:	ff b1 18 02 00 00    	push   0x218(%ecx)
59042c:	e8 0f 1c f5 ff       	call   0x4e2040
590431:	83 c4 04             	add    $0x4,%esp
590434:	e9 88 00 00 00       	jmp    0x5904c1
590439:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
59043f:	ff b0 18 02 00 00    	push   0x218(%eax)
590445:	e8 f6 1b f5 ff       	call   0x4e2040
59044a:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
590450:	83 c4 04             	add    $0x4,%esp
590453:	8b cb                	mov    %ebx,%ecx
590455:	83 c0 50             	add    $0x50,%eax
590458:	f0 0f c1 08          	lock xadd %ecx,(%eax)
59045c:	8b ae e0 05 00 00    	mov    0x5e0(%esi),%ebp
590462:	8b 4c 24 10          	mov    0x10(%esp),%ecx
590466:	8b 54 24 14          	mov    0x14(%esp),%edx
59046a:	8b 45 34             	mov    0x34(%ebp),%eax
59046d:	85 c0                	test   %eax,%eax
59046f:	74 50                	je     0x5904c1
590471:	8d 7c 24 10          	lea    0x10(%esp),%edi
590475:	89 5c 24 10          	mov    %ebx,0x10(%esp)
590479:	57                   	push   %edi
59047a:	51                   	push   %ecx
59047b:	52                   	push   %edx
59047c:	56                   	push   %esi
59047d:	ff d0                	call   *%eax
59047f:	8b f8                	mov    %eax,%edi
590481:	83 c4 10             	add    $0x10,%esp
590484:	85 ff                	test   %edi,%edi
590486:	74 39                	je     0x5904c1
590488:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
59048e:	8b cb                	mov    %ebx,%ecx
590490:	83 c0 60             	add    $0x60,%eax
590493:	f0 0f c1 08          	lock xadd %ecx,(%eax)
590497:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
59049c:	74 0a                	je     0x5904a8
59049e:	8d 87 ac 01 00 00    	lea    0x1ac(%edi),%eax
5904a4:	f0 0f c1 18          	lock xadd %ebx,(%eax)
5904a8:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
5904ae:	f7 40 24 00 02 00 00 	testl  $0x200,0x24(%eax)
5904b5:	75 0a                	jne    0x5904c1
5904b7:	57                   	push   %edi
5904b8:	50                   	push   %eax
5904b9:	e8 32 f8 ff ff       	call   0x58fcf0
5904be:	83 c4 08             	add    $0x8,%esp
5904c1:	8b c7                	mov    %edi,%eax
5904c3:	8b 8c 24 20 02 00 00 	mov    0x220(%esp),%ecx
5904ca:	5f                   	pop    %edi
5904cb:	5e                   	pop    %esi
5904cc:	5d                   	pop    %ebp
5904cd:	5b                   	pop    %ebx
5904ce:	33 cc                	xor    %esp,%ecx
5904d0:	e8 51 15 04 00       	call   0x5d1a26
5904d5:	81 c4 14 02 00 00    	add    $0x214,%esp
5904db:	c3                   	ret
5904dc:	cc                   	int3
5904dd:	cc                   	int3
5904de:	cc                   	int3
5904df:	cc                   	int3
5904e0:	56                   	push   %esi
5904e1:	8b 74 24 08          	mov    0x8(%esp),%esi
5904e5:	83 be 74 04 00 00 00 	cmpl   $0x0,0x474(%esi)
5904ec:	74 3b                	je     0x590529
5904ee:	f6 46 28 01          	testb  $0x1,0x28(%esi)
5904f2:	75 35                	jne    0x590529
5904f4:	56                   	push   %esi
5904f5:	e8 36 eb ff ff       	call   0x58f030
5904fa:	83 c4 04             	add    $0x4,%esp
5904fd:	85 c0                	test   %eax,%eax
5904ff:	75 28                	jne    0x590529
590501:	56                   	push   %esi
590502:	e8 09 eb ff ff       	call   0x58f010
590507:	83 c4 04             	add    $0x4,%esp
59050a:	85 c0                	test   %eax,%eax
59050c:	75 1b                	jne    0x590529
59050e:	ff b6 74 04 00 00    	push   0x474(%esi)
590514:	ff b6 e0 05 00 00    	push   0x5e0(%esi)
59051a:	e8 11 fa ff ff       	call   0x58ff30
59051f:	83 c4 08             	add    $0x8,%esp
590522:	b8 01 00 00 00       	mov    $0x1,%eax
590527:	5e                   	pop    %esi
590528:	c3                   	ret
590529:	33 c0                	xor    %eax,%eax
59052b:	5e                   	pop    %esi
59052c:	c3                   	ret
59052d:	cc                   	int3
59052e:	cc                   	int3
59052f:	cc                   	int3
590530:	56                   	push   %esi
590531:	8b 74 24 08          	mov    0x8(%esp),%esi
590535:	8b 06                	mov    (%esi),%eax
590537:	3d fd fe 00 00       	cmp    $0xfefd,%eax
59053c:	7f 41                	jg     0x59057f
59053e:	74 15                	je     0x590555
590540:	3d 00 01 00 00       	cmp    $0x100,%eax
590545:	74 0e                	je     0x590555
590547:	3d ff 02 00 00       	cmp    $0x2ff,%eax
59054c:	7e 38                	jle    0x590586
59054e:	3d 04 03 00 00       	cmp    $0x304,%eax
590553:	7f 31                	jg     0x590586
590555:	57                   	push   %edi
590556:	8b 7c 24 10          	mov    0x10(%esp),%edi
59055a:	c7 87 48 01 00 00 20 	movl   $0x20,0x148(%edi)
590561:	00 00 00
590564:	83 be 5c 05 00 00 00 	cmpl   $0x0,0x55c(%esi)
59056b:	74 3c                	je     0x5905a9
59056d:	c7 87 48 01 00 00 00 	movl   $0x0,0x148(%edi)
590574:	00 00 00
590577:	b8 01 00 00 00       	mov    $0x1,%eax
59057c:	5f                   	pop    %edi
59057d:	5e                   	pop    %esi
59057e:	c3                   	ret
59057f:	3d ff fe 00 00       	cmp    $0xfeff,%eax
590584:	74 cf                	je     0x590555
590586:	68 2a 01 00 00       	push   $0x12a
59058b:	68 5c 6f 66 00       	push   $0x666f5c
590590:	68 03 01 00 00       	push   $0x103
590595:	68 23 02 00 00       	push   $0x223
59059a:	6a 50                	push   $0x50
59059c:	56                   	push   %esi
59059d:	e8 6e eb ff ff       	call   0x58f110
5905a2:	83 c4 18             	add    $0x18,%esp
5905a5:	33 c0                	xor    %eax,%eax
5905a7:	5e                   	pop    %esi
5905a8:	c3                   	ret
5905a9:	53                   	push   %ebx
5905aa:	55                   	push   %ebp
5905ab:	ff b6 68 0f 00 00    	push   0xf68(%esi)
5905b1:	e8 0a 1a f5 ff       	call   0x4e1fc0
5905b6:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
5905bc:	ff b0 18 02 00 00    	push   0x218(%eax)
5905c2:	e8 f9 19 f5 ff       	call   0x4e1fc0
5905c7:	8b 9e 84 04 00 00    	mov    0x484(%esi),%ebx
5905cd:	83 c4 08             	add    $0x8,%esp
5905d0:	8b 8e e0 05 00 00    	mov    0x5e0(%esi),%ecx
5905d6:	85 db                	test   %ebx,%ebx
5905d8:	75 10                	jne    0x5905ea
5905da:	8b 81 fc 00 00 00    	mov    0xfc(%ecx),%eax
5905e0:	bb 20 03 59 00       	mov    $0x590320,%ebx
5905e5:	85 c0                	test   %eax,%eax
5905e7:	0f 45 d8             	cmovne %eax,%ebx
5905ea:	ff b1 18 02 00 00    	push   0x218(%ecx)
5905f0:	e8 4b 1a f5 ff       	call   0x4e2040
5905f5:	ff b6 68 0f 00 00    	push   0xf68(%esi)
5905fb:	e8 40 1a f5 ff       	call   0x4e2040
590600:	ff b7 48 01 00 00    	push   0x148(%edi)
590606:	8d af 4c 01 00 00    	lea    0x14c(%edi),%ebp
59060c:	6a 00                	push   $0x0
59060e:	55                   	push   %ebp
59060f:	e8 5c 26 04 00       	call   0x5d2c70
590614:	8b 87 48 01 00 00    	mov    0x148(%edi),%eax
59061a:	89 44 24 28          	mov    %eax,0x28(%esp)
59061e:	8d 44 24 28          	lea    0x28(%esp),%eax
590622:	50                   	push   %eax
590623:	55                   	push   %ebp
590624:	56                   	push   %esi
590625:	ff d3                	call   *%ebx
590627:	83 c4 20             	add    $0x20,%esp
59062a:	85 c0                	test   %eax,%eax
59062c:	75 11                	jne    0x59063f
59062e:	68 51 01 00 00       	push   $0x151
590633:	68 5c 6f 66 00       	push   $0x666f5c
590638:	68 2d 01 00 00       	push   $0x12d
59063d:	eb 4f                	jmp    0x59068e
59063f:	8b 44 24 14          	mov    0x14(%esp),%eax
590643:	85 c0                	test   %eax,%eax
590645:	74 38                	je     0x59067f
590647:	3b 87 48 01 00 00    	cmp    0x148(%edi),%eax
59064d:	77 30                	ja     0x59067f
59064f:	50                   	push   %eax
590650:	55                   	push   %ebp
590651:	56                   	push   %esi
590652:	89 87 48 01 00 00    	mov    %eax,0x148(%edi)
590658:	e8 13 90 ff ff       	call   0x589670
59065d:	83 c4 0c             	add    $0xc,%esp
590660:	85 c0                	test   %eax,%eax
590662:	74 11                	je     0x590675
590664:	68 63 01 00 00       	push   $0x163
590669:	68 5c 6f 66 00       	push   $0x666f5c
59066e:	68 2e 01 00 00       	push   $0x12e
590673:	eb 19                	jmp    0x59068e
590675:	5d                   	pop    %ebp
590676:	5b                   	pop    %ebx
590677:	5f                   	pop    %edi
590678:	b8 01 00 00 00       	mov    $0x1,%eax
59067d:	5e                   	pop    %esi
59067e:	c3                   	ret
59067f:	68 5b 01 00 00       	push   $0x15b
590684:	68 5c 6f 66 00       	push   $0x666f5c
590689:	68 2f 01 00 00       	push   $0x12f
59068e:	68 23 02 00 00       	push   $0x223
590693:	6a 50                	push   $0x50
590695:	56                   	push   %esi
590696:	e8 75 ea ff ff       	call   0x58f110
59069b:	83 c4 18             	add    $0x18,%esp
59069e:	33 c0                	xor    %eax,%eax
5906a0:	5d                   	pop    %ebp
5906a1:	5b                   	pop    %ebx
5906a2:	5f                   	pop    %edi
5906a3:	5e                   	pop    %esi
5906a4:	c3                   	ret
5906a5:	cc                   	int3
5906a6:	cc                   	int3
5906a7:	cc                   	int3
5906a8:	cc                   	int3
5906a9:	cc                   	int3
5906aa:	cc                   	int3
5906ab:	cc                   	int3
5906ac:	cc                   	int3
5906ad:	cc                   	int3
5906ae:	cc                   	int3
5906af:	cc                   	int3
5906b0:	b8 04 00 00 00       	mov    $0x4,%eax
5906b5:	e8 f6 10 04 00       	call   0x5d17b0
5906ba:	53                   	push   %ebx
5906bb:	56                   	push   %esi
5906bc:	57                   	push   %edi
5906bd:	8b 7c 24 14          	mov    0x14(%esp),%edi
5906c1:	6a 00                	push   $0x0
5906c3:	6a 00                	push   $0x0
5906c5:	68 00 00 20 00       	push   $0x200000
5906ca:	e8 91 5d ff ff       	call   0x586460
5906cf:	83 c4 0c             	add    $0xc,%esp
5906d2:	85 c0                	test   %eax,%eax
5906d4:	74 32                	je     0x590708
5906d6:	6a 48                	push   $0x48
5906d8:	68 5c 6f 66 00       	push   $0x666f5c
5906dd:	68 08 02 00 00       	push   $0x208
5906e2:	e8 59 03 f5 ff       	call   0x4e0a40
5906e7:	8b f0                	mov    %eax,%esi
5906e9:	83 c4 0c             	add    $0xc,%esp
5906ec:	85 f6                	test   %esi,%esi
5906ee:	75 3b                	jne    0x59072b
5906f0:	6a 4a                	push   $0x4a
5906f2:	68 5c 6f 66 00       	push   $0x666f5c
5906f7:	6a 41                	push   $0x41
5906f9:	68 bd 00 00 00       	push   $0xbd
5906fe:	6a 14                	push   $0x14
590700:	e8 7b 88 f4 ff       	call   0x4d8f80
590705:	83 c4 14             	add    $0x14,%esp
590708:	68 72 01 00 00       	push   $0x172
59070d:	68 5c 6f 66 00       	push   $0x666f5c
590712:	6a 41                	push   $0x41
590714:	68 b5 00 00 00       	push   $0xb5
590719:	6a 50                	push   $0x50
59071b:	57                   	push   %edi
59071c:	e8 ef e9 ff ff       	call   0x58f110
590721:	83 c4 18             	add    $0x18,%esp
590724:	33 c0                	xor    %eax,%eax
590726:	5f                   	pop    %edi
590727:	5e                   	pop    %esi
590728:	5b                   	pop    %ebx
590729:	59                   	pop    %ecx
59072a:	c3                   	ret
59072b:	c7 86 a8 01 00 00 01 	movl   $0x1,0x1a8(%esi)
590732:	00 00 00
590735:	6a 00                	push   $0x0
590737:	c7 86 ac 01 00 00 01 	movl   $0x1,0x1ac(%esi)
59073e:	00 00 00
590741:	c7 86 b0 01 00 00 30 	movl   $0x130,0x1b0(%esi)
590748:	01 00 00
59074b:	e8 21 5f 04 00       	call   0x5d6671
590750:	83 c4 04             	add    $0x4,%esp
590753:	89 86 b4 01 00 00    	mov    %eax,0x1b4(%esi)
590759:	e8 22 18 f5 ff       	call   0x4e1f80
59075e:	89 86 04 02 00 00    	mov    %eax,0x204(%esi)
590764:	85 c0                	test   %eax,%eax
590766:	75 2a                	jne    0x590792
590768:	6a 54                	push   $0x54
59076a:	68 5c 6f 66 00       	push   $0x666f5c
59076f:	6a 41                	push   $0x41
590771:	68 bd 00 00 00       	push   $0xbd
590776:	6a 14                	push   $0x14
590778:	e8 03 88 f4 ff       	call   0x4d8f80
59077d:	6a 55                	push   $0x55
59077f:	68 5c 6f 66 00       	push   $0x666f5c
590784:	56                   	push   %esi
590785:	e8 f6 ff f4 ff       	call   0x4e0780
59078a:	83 c4 20             	add    $0x20,%esp
59078d:	e9 76 ff ff ff       	jmp    0x590708
590792:	8d 9e c4 01 00 00    	lea    0x1c4(%esi),%ebx
590798:	53                   	push   %ebx
590799:	56                   	push   %esi
59079a:	6a 02                	push   $0x2
59079c:	e8 5f fc f4 ff       	call   0x4e0400
5907a1:	83 c4 0c             	add    $0xc,%esp
5907a4:	85 c0                	test   %eax,%eax
5907a6:	75 20                	jne    0x5907c8
5907a8:	ff b6 04 02 00 00    	push   0x204(%esi)
5907ae:	e8 9d 17 f5 ff       	call   0x4e1f50
5907b3:	6a 5b                	push   $0x5b
5907b5:	68 5c 6f 66 00       	push   $0x666f5c
5907ba:	56                   	push   %esi
5907bb:	e8 c0 ff f4 ff       	call   0x4e0780
5907c0:	83 c4 10             	add    $0x10,%esp
5907c3:	e9 40 ff ff ff       	jmp    0x590708
5907c8:	8b 87 e0 05 00 00    	mov    0x5e0(%edi),%eax
5907ce:	8b 40 28             	mov    0x28(%eax),%eax
5907d1:	85 c0                	test   %eax,%eax
5907d3:	75 09                	jne    0x5907de