5a444b:	8b 74 24 0c          	mov    0xc(%esp),%esi
5a444f:	57                   	push   %edi
5a4450:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4453:	c7 80 e8 00 00 00 00 	movl   $0x0,0xe8(%eax)
5a445a:	00 00 00
5a445d:	8d 44 24 08          	lea    0x8(%esp),%eax
5a4461:	50                   	push   %eax
5a4462:	6a 00                	push   $0x0
5a4464:	6a 01                	push   $0x1
5a4466:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5a446a:	c7 44 24 1c 02 00 00 	movl   $0x2,0x1c(%esp)
5a4471:	00
5a4472:	50                   	push   %eax
5a4473:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4476:	05 ec 00 00 00       	add    $0xec,%eax
5a447b:	50                   	push   %eax
5a447c:	6a 15                	push   $0x15
5a447e:	56                   	push   %esi
5a447f:	e8 9c cf fe ff       	call   0x591420
5a4484:	8b f8                	mov    %eax,%edi
5a4486:	83 c4 1c             	add    $0x1c,%esp
5a4489:	85 ff                	test   %edi,%edi
5a448b:	7f 11                	jg     0x5a449e
5a448d:	8b 4e 7c             	mov    0x7c(%esi),%ecx
5a4490:	5f                   	pop    %edi
5a4491:	5e                   	pop    %esi
5a4492:	c7 81 e8 00 00 00 01 	movl   $0x1,0xe8(%ecx)
5a4499:	00 00 00
5a449c:	59                   	pop    %ecx
5a449d:	c3                   	ret
5a449e:	6a 00                	push   $0x0
5a44a0:	6a 00                	push   $0x0
5a44a2:	6a 0b                	push   $0xb
5a44a4:	ff 76 0c             	push   0xc(%esi)
5a44a7:	e8 84 46 f5 ff       	call   0x4f8b30
5a44ac:	8b 8e 84 00 00 00    	mov    0x84(%esi),%ecx
5a44b2:	83 c4 10             	add    $0x10,%esp
5a44b5:	85 c9                	test   %ecx,%ecx
5a44b7:	74 1d                	je     0x5a44d6
5a44b9:	ff b6 88 00 00 00    	push   0x88(%esi)
5a44bf:	8b 46 7c             	mov    0x7c(%esi),%eax
5a44c2:	56                   	push   %esi
5a44c3:	6a 02                	push   $0x2
5a44c5:	05 ec 00 00 00       	add    $0xec,%eax
5a44ca:	50                   	push   %eax
5a44cb:	6a 15                	push   $0x15
5a44cd:	ff 36                	push   (%esi)
5a44cf:	6a 01                	push   $0x1
5a44d1:	ff d1                	call   *%ecx
5a44d3:	83 c4 1c             	add    $0x1c,%esp
5a44d6:	8b 96 b4 04 00 00    	mov    0x4b4(%esi),%edx
5a44dc:	85 d2                	test   %edx,%edx
5a44de:	75 10                	jne    0x5a44f0
5a44e0:	8b 86 d0 04 00 00    	mov    0x4d0(%esi),%eax
5a44e6:	8b 90 a0 00 00 00    	mov    0xa0(%eax),%edx
5a44ec:	85 d2                	test   %edx,%edx
5a44ee:	74 22                	je     0x5a4512
5a44f0:	8b 46 7c             	mov    0x7c(%esi),%eax
5a44f3:	0f b6 88 ec 00 00 00 	movzbl 0xec(%eax),%ecx
5a44fa:	0f b6 80 ed 00 00 00 	movzbl 0xed(%eax),%eax
5a4501:	c1 e1 08             	shl    $0x8,%ecx
5a4504:	0b c8                	or     %eax,%ecx
5a4506:	51                   	push   %ecx
5a4507:	68 08 40 00 00       	push   $0x4008
5a450c:	56                   	push   %esi
5a450d:	ff d2                	call   *%edx
5a450f:	83 c4 0c             	add    $0xc,%esp
5a4512:	8b c7                	mov    %edi,%eax
5a4514:	5f                   	pop    %edi
5a4515:	5e                   	pop    %esi
5a4516:	59                   	pop    %ecx
5a4517:	c3                   	ret
5a4518:	cc                   	int3
5a4519:	cc                   	int3
5a451a:	cc                   	int3
5a451b:	cc                   	int3
5a451c:	cc                   	int3
5a451d:	cc                   	int3
5a451e:	cc                   	int3
5a451f:	cc                   	int3
5a4520:	56                   	push   %esi
5a4521:	8b 74 24 08          	mov    0x8(%esp),%esi
5a4525:	b8 11 00 00 00       	mov    $0x11,%eax
5a452a:	57                   	push   %edi
5a452b:	bf 21 00 00 00       	mov    $0x21,%edi
5a4530:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
5a4534:	0f 44 f8             	cmove  %eax,%edi
5a4537:	8b 46 7c             	mov    0x7c(%esi),%eax
5a453a:	83 b8 2c 02 00 00 00 	cmpl   $0x0,0x22c(%eax)
5a4541:	75 2f                	jne    0x5a4572
5a4543:	8b 8e 74 04 00 00    	mov    0x474(%esi),%ecx
5a4549:	85 c9                	test   %ecx,%ecx
5a454b:	74 41                	je     0x5a458e
5a454d:	83 79 04 00          	cmpl   $0x0,0x4(%ecx)
5a4551:	74 3b                	je     0x5a458e
5a4553:	8b 80 10 02 00 00    	mov    0x210(%eax),%eax
5a4559:	89 81 bc 01 00 00    	mov    %eax,0x1bc(%ecx)
5a455f:	8b 46 04             	mov    0x4(%esi),%eax
5a4562:	56                   	push   %esi
5a4563:	8b 40 64             	mov    0x64(%eax),%eax
5a4566:	8b 40 08             	mov    0x8(%eax),%eax
5a4569:	ff d0                	call   *%eax
5a456b:	83 c4 04             	add    $0x4,%esp
5a456e:	85 c0                	test   %eax,%eax
5a4570:	74 37                	je     0x5a45a9
5a4572:	8b 46 04             	mov    0x4(%esi),%eax
5a4575:	57                   	push   %edi
5a4576:	56                   	push   %esi
5a4577:	8b 40 64             	mov    0x64(%eax),%eax
5a457a:	8b 40 10             	mov    0x10(%eax),%eax
5a457d:	ff d0                	call   *%eax
5a457f:	83 c4 08             	add    $0x8,%esp
5a4582:	85 c0                	test   %eax,%eax
5a4584:	74 23                	je     0x5a45a9
5a4586:	5f                   	pop    %edi
5a4587:	b8 01 00 00 00       	mov    $0x1,%eax
5a458c:	5e                   	pop    %esi
5a458d:	c3                   	ret
5a458e:	6a 18                	push   $0x18
5a4590:	68 cc 7c 66 00       	push   $0x667ccc
5a4595:	68 85 00 00 00       	push   $0x85
5a459a:	68 24 01 00 00       	push   $0x124
5a459f:	6a 14                	push   $0x14
5a45a1:	e8 da 49 f3 ff       	call   0x4d8f80
5a45a6:	83 c4 14             	add    $0x14,%esp
5a45a9:	5f                   	pop    %edi
5a45aa:	33 c0                	xor    %eax,%eax
5a45ac:	5e                   	pop    %esi
5a45ad:	c3                   	ret
5a45ae:	cc                   	int3
5a45af:	cc                   	int3
5a45b0:	53                   	push   %ebx
5a45b1:	56                   	push   %esi
5a45b2:	8b 74 24 0c          	mov    0xc(%esp),%esi
5a45b6:	8b 46 04             	mov    0x4(%esi),%eax
5a45b9:	8b 48 64             	mov    0x64(%eax),%ecx
5a45bc:	f6 41 30 08          	testb  $0x8,0x30(%ecx)
5a45c0:	75 10                	jne    0x5a45d2
5a45c2:	8b 00                	mov    (%eax),%eax
5a45c4:	3d 04 03 00 00       	cmp    $0x304,%eax
5a45c9:	7c 07                	jl     0x5a45d2
5a45cb:	3d 00 00 01 00       	cmp    $0x10000,%eax
5a45d0:	75 2b                	jne    0x5a45fd
5a45d2:	8b 46 68             	mov    0x68(%esi),%eax
5a45d5:	83 f8 02             	cmp    $0x2,%eax
5a45d8:	74 23                	je     0x5a45fd
5a45da:	83 f8 01             	cmp    $0x1,%eax
5a45dd:	74 1e                	je     0x5a45fd
5a45df:	83 f8 04             	cmp    $0x4,%eax
5a45e2:	74 19                	je     0x5a45fd
5a45e4:	83 f8 03             	cmp    $0x3,%eax
5a45e7:	74 14                	je     0x5a45fd
5a45e9:	83 be 4c 04 00 00 01 	cmpl   $0x1,0x44c(%esi)
5a45f0:	74 0b                	je     0x5a45fd
5a45f2:	ff 74 24 14          	push   0x14(%esp)
5a45f6:	8b 41 28             	mov    0x28(%ecx),%eax
5a45f9:	ff d0                	call   *%eax
5a45fb:	eb 09                	jmp    0x5a4606
5a45fd:	ff 74 24 14          	push   0x14(%esp)
5a4601:	e8 4a 1f ff ff       	call   0x596550
5a4606:	83 c4 04             	add    $0x4,%esp
5a4609:	8b d8                	mov    %eax,%ebx
5a460b:	81 3e 00 03 00 00    	cmpl   $0x300,(%esi)
5a4611:	75 0a                	jne    0x5a461d
5a4613:	83 fb 46             	cmp    $0x46,%ebx
5a4616:	75 05                	jne    0x5a461d
5a4618:	8d 58 e2             	lea    -0x1e(%eax),%ebx
5a461b:	eb 04                	jmp    0x5a4621
5a461d:	85 db                	test   %ebx,%ebx
5a461f:	78 65                	js     0x5a4686
5a4621:	83 7c 24 10 02       	cmpl   $0x2,0x10(%esp)
5a4626:	75 19                	jne    0x5a4641
5a4628:	8b 86 74 04 00 00    	mov    0x474(%esi),%eax
5a462e:	85 c0                	test   %eax,%eax
5a4630:	74 0f                	je     0x5a4641
5a4632:	50                   	push   %eax
5a4633:	ff b6 e0 05 00 00    	push   0x5e0(%esi)
5a4639:	e8 f2 b8 fe ff       	call   0x58ff30
5a463e:	83 c4 08             	add    $0x8,%esp
5a4641:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4644:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5a4648:	c7 80 e8 00 00 00 01 	movl   $0x1,0xe8(%eax)
5a464f:	00 00 00
5a4652:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4655:	88 88 ec 00 00 00    	mov    %cl,0xec(%eax)
5a465b:	8b 46 7c             	mov    0x7c(%esi),%eax
5a465e:	88 98 ed 00 00 00    	mov    %bl,0xed(%eax)
5a4664:	8d 86 50 06 00 00    	lea    0x650(%esi),%eax
5a466a:	50                   	push   %eax
5a466b:	e8 90 cd fe ff       	call   0x591400
5a4670:	83 c4 04             	add    $0x4,%esp
5a4673:	85 c0                	test   %eax,%eax
5a4675:	75 0f                	jne    0x5a4686
5a4677:	8b 46 04             	mov    0x4(%esi),%eax
5a467a:	56                   	push   %esi
5a467b:	8b 40 40             	mov    0x40(%eax),%eax
5a467e:	ff d0                	call   *%eax
5a4680:	83 c4 04             	add    $0x4,%esp
5a4683:	5e                   	pop    %esi
5a4684:	5b                   	pop    %ebx
5a4685:	c3                   	ret
5a4686:	5e                   	pop    %esi
5a4687:	83 c8 ff             	or     $0xffffffff,%eax
5a468a:	5b                   	pop    %ebx
5a468b:	c3                   	ret
5a468c:	cc                   	int3
5a468d:	cc                   	int3
5a468e:	cc                   	int3
5a468f:	cc                   	int3
5a4690:	8b 44 24 04          	mov    0x4(%esp),%eax
5a4694:	83 78 1c 00          	cmpl   $0x0,0x1c(%eax)
5a4698:	75 35                	jne    0x5a46cf
5a469a:	f7 80 ec 04 00 00 04 	testl  $0x40004,0x4ec(%eax)
5a46a1:	00 04 00
5a46a4:	75 4c                	jne    0x5a46f2
5a46a6:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
5a46ab:	75 45                	jne    0x5a46f2
5a46ad:	68 7c 03 00 00       	push   $0x37c
5a46b2:	68 38 80 66 00       	push   $0x668038
5a46b7:	68 52 01 00 00       	push   $0x152
5a46bc:	68 e3 01 00 00       	push   $0x1e3
5a46c1:	6a 28                	push   $0x28
5a46c3:	50                   	push   %eax
5a46c4:	e8 47 aa fe ff       	call   0x58f110
5a46c9:	83 c4 18             	add    $0x18,%esp
5a46cc:	33 c0                	xor    %eax,%eax
5a46ce:	c3                   	ret
5a46cf:	83 b8 ec 05 00 00 00 	cmpl   $0x0,0x5ec(%eax)
5a46d6:	74 1a                	je     0x5a46f2
5a46d8:	f7 80 ec 04 00 00 00 	testl  $0x40000,0x4ec(%eax)
5a46df:	00 04 00
5a46e2:	75 0e                	jne    0x5a46f2
5a46e4:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
5a46e9:	75 07                	jne    0x5a46f2
5a46eb:	68 88 03 00 00       	push   $0x388
5a46f0:	eb c0                	jmp    0x5a46b2
5a46f2:	b8 01 00 00 00       	mov    $0x1,%eax
5a46f7:	c3                   	ret
5a46f8:	cc                   	int3
5a46f9:	cc                   	int3
5a46fa:	cc                   	int3
5a46fb:	cc                   	int3
5a46fc:	cc                   	int3
5a46fd:	cc                   	int3
5a46fe:	cc                   	int3
5a46ff:	cc                   	int3
5a4700:	56                   	push   %esi
5a4701:	8b 74 24 08          	mov    0x8(%esp),%esi
5a4705:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
5a4709:	74 2c                	je     0x5a4737
5a470b:	68 95 03 00 00       	push   $0x395
5a4710:	68 38 80 66 00       	push   $0x668038
5a4715:	ff b6 38 05 00 00    	push   0x538(%esi)
5a471b:	c7 86 cc 05 00 00 00 	movl   $0x0,0x5cc(%esi)
5a4722:	00 00 00
5a4725:	e8 56 c0 f3 ff       	call   0x4e0780
5a472a:	83 c4 0c             	add    $0xc,%esp
5a472d:	c7 86 38 05 00 00 00 	movl   $0x0,0x538(%esi)
5a4734:	00 00 00
5a4737:	b8 01 00 00 00       	mov    $0x1,%eax
5a473c:	5e                   	pop    %esi
5a473d:	c3                   	ret
5a473e:	cc                   	int3
5a473f:	cc                   	int3
5a4740:	b8 04 00 00 00       	mov    $0x4,%eax
5a4745:	e8 66 d0 02 00       	call   0x5d17b0
5a474a:	53                   	push   %ebx
5a474b:	56                   	push   %esi
5a474c:	8b 74 24 10          	mov    0x10(%esp),%esi
5a4750:	57                   	push   %edi
5a4751:	56                   	push   %esi
5a4752:	bf 03 00 00 00       	mov    $0x3,%edi
5a4757:	c7 44 24 10 70 00 00 	movl   $0x70,0x10(%esp)
5a475e:	00
5a475f:	e8 bc 4e fe ff       	call   0x589620
5a4764:	8b 8e d0 04 00 00    	mov    0x4d0(%esi),%ecx
5a476a:	8b d8                	mov    %eax,%ebx
5a476c:	c1 eb 0e             	shr    $0xe,%ebx
5a476f:	83 c4 04             	add    $0x4,%esp
5a4772:	f7 d3                	not    %ebx
5a4774:	83 e3 01             	and    $0x1,%ebx
5a4777:	85 c9                	test   %ecx,%ecx
5a4779:	0f 84 3e 02 00 00    	je     0x5a49bd
5a477f:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
5a4785:	85 c0                	test   %eax,%eax
5a4787:	0f 84 30 02 00 00    	je     0x5a49bd
5a478d:	8b 91 30 01 00 00    	mov    0x130(%ecx),%edx
5a4793:	85 d2                	test   %edx,%edx
5a4795:	74 10                	je     0x5a47a7
5a4797:	ff b1 34 01 00 00    	push   0x134(%ecx)
5a479d:	8d 44 24 10          	lea    0x10(%esp),%eax
5a47a1:	50                   	push   %eax
5a47a2:	56                   	push   %esi
5a47a3:	ff d2                	call   *%edx
5a47a5:	eb 18                	jmp    0x5a47bf
5a47a7:	8b 88 30 01 00 00    	mov    0x130(%eax),%ecx
5a47ad:	85 c9                	test   %ecx,%ecx
5a47af:	74 13                	je     0x5a47c4
5a47b1:	ff b0 34 01 00 00    	push   0x134(%eax)
5a47b7:	8d 44 24 10          	lea    0x10(%esp),%eax
5a47bb:	50                   	push   %eax
5a47bc:	56                   	push   %esi
5a47bd:	ff d1                	call   *%ecx
5a47bf:	8b f8                	mov    %eax,%edi
5a47c1:	83 c4 0c             	add    $0xc,%esp
5a47c4:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
5a47c8:	0f 84 84 00 00 00    	je     0x5a4852
5a47ce:	83 7c 24 1c 00       	cmpl   $0x0,0x1c(%esp)
5a47d3:	74 7d                	je     0x5a4852
5a47d5:	85 ff                	test   %edi,%edi
5a47d7:	75 79                	jne    0x5a4852
5a47d9:	39 be 8c 00 00 00    	cmp    %edi,0x8c(%esi)
5a47df:	75 71                	jne    0x5a4852
5a47e1:	8b 86 74 04 00 00    	mov    0x474(%esi),%eax
5a47e7:	68 ba 03 00 00       	push   $0x3ba
5a47ec:	68 38 80 66 00       	push   $0x668038
5a47f1:	ff b0 d0 01 00 00    	push   0x1d0(%eax)
5a47f7:	e8 84 bf f3 ff       	call   0x4e0780
5a47fc:	68 bb 03 00 00       	push   $0x3bb
5a4801:	68 38 80 66 00       	push   $0x668038
5a4806:	ff b6 38 05 00 00    	push   0x538(%esi)
5a480c:	e8 bf d8 f3 ff       	call   0x4e20d0
5a4811:	8b 8e 74 04 00 00    	mov    0x474(%esi),%ecx
5a4817:	83 c4 18             	add    $0x18,%esp
5a481a:	89 81 d0 01 00 00    	mov    %eax,0x1d0(%ecx)
5a4820:	8b 86 74 04 00 00    	mov    0x474(%esi),%eax
5a4826:	39 b8 d0 01 00 00    	cmp    %edi,0x1d0(%eax)
5a482c:	75 24                	jne    0x5a4852
5a482e:	39 be 38 05 00 00    	cmp    %edi,0x538(%esi)
5a4834:	74 1c                	je     0x5a4852
5a4836:	68 be 03 00 00       	push   $0x3be
5a483b:	68 38 80 66 00       	push   $0x668038
5a4840:	6a 44                	push   $0x44
5a4842:	68 2e 02 00 00       	push   $0x22e
5a4847:	6a 50                	push   $0x50
5a4849:	56                   	push   %esi
5a484a:	e8 c1 a8 fe ff       	call   0x58f110
5a484f:	83 c4 18             	add    $0x18,%esp
5a4852:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4855:	83 b8 80 01 00 00 00 	cmpl   $0x0,0x180(%eax)
5a485c:	74 09                	je     0x5a4867
5a485e:	83 b8 04 02 00 00 00 	cmpl   $0x0,0x204(%eax)
5a4865:	75 2a                	jne    0x5a4891
5a4867:	8b 86 d0 04 00 00    	mov    0x4d0(%esi),%eax
5a486d:	3b 86 e0 05 00 00    	cmp    0x5e0(%esi),%eax
5a4873:	74 1c                	je     0x5a4891
5a4875:	b9 01 00 00 00       	mov    $0x1,%ecx
5a487a:	83 c0 44             	add    $0x44,%eax
5a487d:	f0 0f c1 08          	lock xadd %ecx,(%eax)
5a4881:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax