5a53fa:	cc                   	int3
5a53fb:	cc                   	int3
5a53fc:	cc                   	int3
5a53fd:	cc                   	int3
5a53fe:	cc                   	int3
5a53ff:	cc                   	int3
5a5400:	f7 44 24 0c 00 08 00 	testl  $0x800,0xc(%esp)
5a5407:	00
5a5408:	8b 54 24 04          	mov    0x4(%esp),%edx
5a540c:	8b 4c 24 08          	mov    0x8(%esp),%ecx
5a5410:	56                   	push   %esi
5a5411:	57                   	push   %edi
5a5412:	8b 7a 04             	mov    0x4(%edx),%edi
5a5415:	74 07                	je     0x5a541e
5a5417:	be 01 00 00 00       	mov    $0x1,%esi
5a541c:	eb 22                	jmp    0x5a5440
5a541e:	8b 47 64             	mov    0x64(%edi),%eax
5a5421:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5a5425:	75 17                	jne    0x5a543e
5a5427:	8b 07                	mov    (%edi),%eax
5a5429:	3d 04 03 00 00       	cmp    $0x304,%eax
5a542e:	7c 0e                	jl     0x5a543e
5a5430:	3d 00 00 01 00       	cmp    $0x10000,%eax
5a5435:	74 07                	je     0x5a543e
5a5437:	be 01 00 00 00       	mov    $0x1,%esi
5a543c:	eb 02                	jmp    0x5a5440
5a543e:	33 f6                	xor    %esi,%esi
5a5440:	8b 47 64             	mov    0x64(%edi),%eax
5a5443:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5a5447:	74 05                	je     0x5a544e
5a5449:	f6 c1 04             	test   $0x4,%cl
5a544c:	75 47                	jne    0x5a5495
5a544e:	81 3a 00 03 00 00    	cmpl   $0x300,(%edx)
5a5454:	75 05                	jne    0x5a545b
5a5456:	f6 c1 08             	test   $0x8,%cl
5a5459:	74 3a                	je     0x5a5495
5a545b:	85 f6                	test   %esi,%esi
5a545d:	74 0c                	je     0x5a546b
5a545f:	f6 c1 10             	test   $0x10,%cl
5a5462:	75 31                	jne    0x5a5495
5a5464:	8b c1                	mov    %ecx,%eax
5a5466:	83 e0 20             	and    $0x20,%eax
5a5469:	eb 0e                	jmp    0x5a5479
5a546b:	8b c1                	mov    %ecx,%eax
5a546d:	83 e0 20             	and    $0x20,%eax
5a5470:	74 07                	je     0x5a5479
5a5472:	f6 44 24 14 80       	testb  $0x80,0x14(%esp)
5a5477:	74 1c                	je     0x5a5495
5a5479:	83 7a 1c 00          	cmpl   $0x0,0x1c(%edx)
5a547d:	74 08                	je     0x5a5487
5a547f:	85 f6                	test   %esi,%esi
5a5481:	75 04                	jne    0x5a5487
5a5483:	85 c0                	test   %eax,%eax
5a5485:	75 0e                	jne    0x5a5495
5a5487:	83 ba 8c 00 00 00 00 	cmpl   $0x0,0x8c(%edx)
5a548e:	74 0a                	je     0x5a549a
5a5490:	f6 c1 40             	test   $0x40,%cl
5a5493:	74 05                	je     0x5a549a
5a5495:	5f                   	pop    %edi
5a5496:	33 c0                	xor    %eax,%eax
5a5498:	5e                   	pop    %esi
5a5499:	c3                   	ret
5a549a:	5f                   	pop    %edi
5a549b:	b8 01 00 00 00       	mov    $0x1,%eax
5a54a0:	5e                   	pop    %esi
5a54a1:	c3                   	ret
5a54a2:	cc                   	int3
5a54a3:	cc                   	int3
5a54a4:	cc                   	int3
5a54a5:	cc                   	int3
5a54a6:	cc                   	int3
5a54a7:	cc                   	int3
5a54a8:	cc                   	int3
5a54a9:	cc                   	int3
5a54aa:	cc                   	int3
5a54ab:	cc                   	int3
5a54ac:	cc                   	int3
5a54ad:	cc                   	int3
5a54ae:	cc                   	int3
5a54af:	cc                   	int3
5a54b0:	8b 44 24 08          	mov    0x8(%esp),%eax
5a54b4:	53                   	push   %ebx
5a54b5:	8b 5c 24 10          	mov    0x10(%esp),%ebx
5a54b9:	56                   	push   %esi
5a54ba:	85 c3                	test   %eax,%ebx
5a54bc:	74 3c                	je     0x5a54fa
5a54be:	8b 74 24 0c          	mov    0xc(%esp),%esi
5a54c2:	53                   	push   %ebx
5a54c3:	50                   	push   %eax
5a54c4:	56                   	push   %esi
5a54c5:	e8 36 ff ff ff       	call   0x5a5400
5a54ca:	83 c4 0c             	add    $0xc,%esp
5a54cd:	85 c0                	test   %eax,%eax
5a54cf:	74 29                	je     0x5a54fa
5a54d1:	f6 44 24 10 20       	testb  $0x20,0x10(%esp)
5a54d6:	74 1a                	je     0x5a54f2
5a54d8:	84 db                	test   %bl,%bl
5a54da:	79 16                	jns    0x5a54f2
5a54dc:	8b 46 04             	mov    0x4(%esi),%eax
5a54df:	8b 40 64             	mov    0x64(%eax),%eax
5a54e2:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5a54e6:	75 12                	jne    0x5a54fa
5a54e8:	81 7c 24 18 04 03 00 	cmpl   $0x304,0x18(%esp)
5a54ef:	00
5a54f0:	7c 08                	jl     0x5a54fa
5a54f2:	5e                   	pop    %esi
5a54f3:	b8 01 00 00 00       	mov    $0x1,%eax
5a54f8:	5b                   	pop    %ebx
5a54f9:	c3                   	ret
5a54fa:	5e                   	pop    %esi
5a54fb:	33 c0                	xor    %eax,%eax
5a54fd:	5b                   	pop    %ebx
5a54fe:	c3                   	ret
5a54ff:	cc                   	int3
5a5500:	b8 20 00 00 00       	mov    $0x20,%eax
5a5505:	e8 a6 c2 02 00       	call   0x5d17b0
5a550a:	8b 44 24 28          	mov    0x28(%esp),%eax
5a550e:	53                   	push   %ebx
5a550f:	8b 5c 24 28          	mov    0x28(%esp),%ebx
5a5513:	55                   	push   %ebp
5a5514:	8b 08                	mov    (%eax),%ecx
5a5516:	8b 68 04             	mov    0x4(%eax),%ebp
5a5519:	8b 44 24 38          	mov    0x38(%esp),%eax
5a551d:	56                   	push   %esi
5a551e:	8b b3 04 04 00 00    	mov    0x404(%ebx),%esi
5a5524:	57                   	push   %edi
5a5525:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
5a5529:	81 c6 f0 00 00 00    	add    $0xf0,%esi
5a552f:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
5a5535:	8b c7                	mov    %edi,%eax
5a5537:	25 80 00 00 00       	and    $0x80,%eax
5a553c:	89 4c 24 10          	mov    %ecx,0x10(%esp)
5a5540:	89 74 24 1c          	mov    %esi,0x1c(%esp)
5a5544:	89 44 24 14          	mov    %eax,0x14(%esp)
5a5548:	74 14                	je     0x5a555e
5a554a:	8b 83 04 04 00 00    	mov    0x404(%ebx),%eax
5a5550:	05 f0 00 00 00       	add    $0xf0,%eax
5a5555:	50                   	push   %eax
5a5556:	e8 75 99 fe ff       	call   0x58eed0
5a555b:	83 c4 04             	add    $0x4,%esp
5a555e:	85 f6                	test   %esi,%esi
5a5560:	74 05                	je     0x5a5567
5a5562:	8b 46 04             	mov    0x4(%esi),%eax
5a5565:	eb 02                	jmp    0x5a5569
5a5567:	33 c0                	xor    %eax,%eax
5a5569:	83 c0 1a             	add    $0x1a,%eax
5a556c:	89 44 24 24          	mov    %eax,0x24(%esp)
5a5570:	68 3d 02 00 00       	push   $0x23d
5a5575:	68 38 80 66 00       	push   $0x668038
5a557a:	8d 04 40             	lea    (%eax,%eax,2),%eax
5a557d:	c1 e0 03             	shl    $0x3,%eax
5a5580:	50                   	push   %eax
5a5581:	e8 ba b4 f3 ff       	call   0x4e0a40
5a5586:	83 c4 0c             	add    $0xc,%esp
5a5589:	89 44 24 38          	mov    %eax,0x38(%esp)
5a558d:	85 c0                	test   %eax,%eax
5a558f:	75 26                	jne    0x5a55b7
5a5591:	68 40 02 00 00       	push   $0x240
5a5596:	68 38 80 66 00       	push   $0x668038
5a559b:	6a 41                	push   $0x41
5a559d:	68 b3 01 00 00       	push   $0x1b3
5a55a2:	6a 50                	push   $0x50
5a55a4:	53                   	push   %ebx
5a55a5:	e8 66 9b fe ff       	call   0x58f110
5a55aa:	83 c4 18             	add    $0x18,%esp
5a55ad:	33 c0                	xor    %eax,%eax
5a55af:	5f                   	pop    %edi
5a55b0:	5e                   	pop    %esi
5a55b1:	5d                   	pop    %ebp
5a55b2:	5b                   	pop    %ebx
5a55b3:	83 c4 20             	add    $0x20,%esp
5a55b6:	c3                   	ret
5a55b7:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
5a55be:	00
5a55bf:	85 ed                	test   %ebp,%ebp
5a55c1:	0f 84 40 02 00 00    	je     0x5a5807
5a55c7:	83 fd 02             	cmp    $0x2,%ebp
5a55ca:	0f 82 22 02 00 00    	jb     0x5a57f2
5a55d0:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5a55d4:	83 ed 02             	sub    $0x2,%ebp
5a55d7:	0f b6 31             	movzbl (%ecx),%esi
5a55da:	0f b6 41 01          	movzbl 0x1(%ecx),%eax
5a55de:	83 c1 02             	add    $0x2,%ecx
5a55e1:	c1 e6 08             	shl    $0x8,%esi
5a55e4:	0b f0                	or     %eax,%esi
5a55e6:	89 4c 24 28          	mov    %ecx,0x28(%esp)
5a55ea:	83 fd 02             	cmp    $0x2,%ebp
5a55ed:	0f 82 ff 01 00 00    	jb     0x5a57f2
5a55f3:	0f b6 11             	movzbl (%ecx),%edx
5a55f6:	83 c5 fe             	add    $0xfffffffe,%ebp
5a55f9:	0f b6 41 01          	movzbl 0x1(%ecx),%eax
5a55fd:	c1 e2 08             	shl    $0x8,%edx
5a5600:	0b d0                	or     %eax,%edx
5a5602:	8d 41 02             	lea    0x2(%ecx),%eax
5a5605:	89 54 24 20          	mov    %edx,0x20(%esp)
5a5609:	89 44 24 28          	mov    %eax,0x28(%esp)
5a560d:	3b ea                	cmp    %edx,%ebp
5a560f:	0f 82 dd 01 00 00    	jb     0x5a57f2
5a5615:	8d 0c 10             	lea    (%eax,%edx,1),%ecx
5a5618:	2b ea                	sub    %edx,%ebp
5a561a:	89 4c 24 10          	mov    %ecx,0x10(%esp)
5a561e:	b8 e0 7c 66 00       	mov    $0x667ce0,%eax
5a5623:	33 c9                	xor    %ecx,%ecx
5a5625:	3b 30                	cmp    (%eax),%esi
5a5627:	0f 84 84 00 00 00    	je     0x5a56b1
5a562d:	41                   	inc    %ecx
5a562e:	83 c0 20             	add    $0x20,%eax
5a5631:	83 f9 1a             	cmp    $0x1a,%ecx
5a5634:	72 ef                	jb     0x5a5625
5a5636:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
5a563a:	85 c9                	test   %ecx,%ecx
5a563c:	74 6b                	je     0x5a56a9
5a563e:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
5a5643:	b8 02 00 00 00       	mov    $0x2,%eax
5a5648:	c7 44 24 34 00 00 00 	movl   $0x0,0x34(%esp)
5a564f:	00
5a5650:	74 07                	je     0x5a5659
5a5652:	b8 01 00 00 00       	mov    $0x1,%eax
5a5657:	eb 0e                	jmp    0x5a5667
5a5659:	f7 c7 00 01 00 00    	test   $0x100,%edi
5a565f:	ba 00 00 00 00       	mov    $0x0,%edx
5a5664:	0f 45 c2             	cmovne %edx,%eax
5a5667:	8d 54 24 34          	lea    0x34(%esp),%edx
5a566b:	52                   	push   %edx
5a566c:	56                   	push   %esi
5a566d:	50                   	push   %eax
5a566e:	51                   	push   %ecx
5a566f:	e8 dc 97 fe ff       	call   0x58ee50
5a5674:	83 c4 10             	add    $0x10,%esp
5a5677:	85 c0                	test   %eax,%eax
5a5679:	74 2e                	je     0x5a56a9
5a567b:	8b 48 08             	mov    0x8(%eax),%ecx
5a567e:	85 cf                	test   %ecx,%edi
5a5680:	0f 84 57 01 00 00    	je     0x5a57dd
5a5686:	8b 43 04             	mov    0x4(%ebx),%eax
5a5689:	8b 40 64             	mov    0x64(%eax),%eax
5a568c:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5a5690:	74 05                	je     0x5a5697
5a5692:	f6 c1 01             	test   $0x1,%cl
5a5695:	eb 03                	jmp    0x5a569a
5a5697:	f6 c1 02             	test   $0x2,%cl
5a569a:	0f 85 3d 01 00 00    	jne    0x5a57dd
5a56a0:	8b 4c 24 34          	mov    0x34(%esp),%ecx
5a56a4:	83 c1 1a             	add    $0x1a,%ecx
5a56a7:	eb 2d                	jmp    0x5a56d6
5a56a9:	8b 54 24 38          	mov    0x38(%esp),%edx
5a56ad:	33 ff                	xor    %edi,%edi
5a56af:	eb 3f                	jmp    0x5a56f0
5a56b1:	8b 50 04             	mov    0x4(%eax),%edx
5a56b4:	85 d7                	test   %edx,%edi
5a56b6:	0f 84 21 01 00 00    	je     0x5a57dd
5a56bc:	8b 43 04             	mov    0x4(%ebx),%eax
5a56bf:	8b 40 64             	mov    0x64(%eax),%eax
5a56c2:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5a56c6:	74 05                	je     0x5a56cd
5a56c8:	f6 c2 01             	test   $0x1,%dl
5a56cb:	eb 03                	jmp    0x5a56d0
5a56cd:	f6 c2 02             	test   $0x2,%dl
5a56d0:	0f 85 07 01 00 00    	jne    0x5a57dd
5a56d6:	8b 54 24 38          	mov    0x38(%esp),%edx
5a56da:	8d 04 49             	lea    (%ecx,%ecx,2),%eax
5a56dd:	8d 04 c2             	lea    (%edx,%eax,8),%eax
5a56e0:	8b f8                	mov    %eax,%edi
5a56e2:	85 c0                	test   %eax,%eax
5a56e4:	74 0a                	je     0x5a56f0
5a56e6:	83 78 08 01          	cmpl   $0x1,0x8(%eax)
5a56ea:	0f 84 ed 00 00 00    	je     0x5a57dd
5a56f0:	83 fe 29             	cmp    $0x29,%esi
5a56f3:	75 0f                	jne    0x5a5704
5a56f5:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
5a56fa:	74 08                	je     0x5a5704
5a56fc:	85 ed                	test   %ebp,%ebp
5a56fe:	0f 85 d9 00 00 00    	jne    0x5a57dd
5a5704:	8b cf                	mov    %edi,%ecx
5a5706:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
5a570b:	2b ca                	sub    %edx,%ecx
5a570d:	f7 e9                	imul   %ecx
5a570f:	c1 fa 02             	sar    $0x2,%edx
5a5712:	8b c2                	mov    %edx,%eax
5a5714:	c1 e8 1f             	shr    $0x1f,%eax
5a5717:	03 c2                	add    %edx,%eax
5a5719:	83 f8 1a             	cmp    $0x1a,%eax
5a571c:	73 26                	jae    0x5a5744
5a571e:	f7 44 24 3c 80 60 00 	testl  $0x6080,0x3c(%esp)
5a5725:	00
5a5726:	75 1c                	jne    0x5a5744
5a5728:	83 fe 2c             	cmp    $0x2c,%esi
5a572b:	74 17                	je     0x5a5744
5a572d:	81 fe 01 ff 00 00    	cmp    $0xff01,%esi
5a5733:	74 0f                	je     0x5a5744
5a5735:	83 fe 12             	cmp    $0x12,%esi
5a5738:	74 0a                	je     0x5a5744
5a573a:	f6 84 18 14 05 00 00 	testb  $0x2,0x514(%eax,%ebx,1)
5a5741:	02
5a5742:	74 59                	je     0x5a579d
5a5744:	85 ff                	test   %edi,%edi
5a5746:	74 48                	je     0x5a5790
5a5748:	8b 44 24 28          	mov    0x28(%esp),%eax
5a574c:	89 07                	mov    %eax,(%edi)
5a574e:	8b 44 24 20          	mov    0x20(%esp),%eax
5a5752:	89 47 04             	mov    %eax,0x4(%edi)
5a5755:	8b 44 24 18          	mov    0x18(%esp),%eax
5a5759:	89 47 14             	mov    %eax,0x14(%edi)
5a575c:	40                   	inc    %eax
5a575d:	c7 47 08 01 00 00 00 	movl   $0x1,0x8(%edi)
5a5764:	89 77 10             	mov    %esi,0x10(%edi)
5a5767:	8b 8b 30 05 00 00    	mov    0x530(%ebx),%ecx
5a576d:	89 44 24 18          	mov    %eax,0x18(%esp)
5a5771:	85 c9                	test   %ecx,%ecx
5a5773:	74 1b                	je     0x5a5790
5a5775:	ff b3 34 05 00 00    	push   0x534(%ebx)
5a577b:	33 c0                	xor    %eax,%eax
5a577d:	ff 77 04             	push   0x4(%edi)
5a5780:	39 43 1c             	cmp    %eax,0x1c(%ebx)
5a5783:	ff 37                	push   (%edi)
5a5785:	0f 94 c0             	sete   %al
5a5788:	56                   	push   %esi
5a5789:	50                   	push   %eax
5a578a:	53                   	push   %ebx
5a578b:	ff d1                	call   *%ecx
5a578d:	83 c4 18             	add    $0x18,%esp
5a5790:	85 ed                	test   %ebp,%ebp
5a5792:	74 73                	je     0x5a5807
5a5794:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
5a5798:	e9 2a fe ff ff       	jmp    0x5a55c7
5a579d:	68 7b 02 00 00       	push   $0x27b
5a57a2:	68 38 80 66 00       	push   $0x668038
5a57a7:	68 d9 00 00 00       	push   $0xd9
5a57ac:	68 b3 01 00 00       	push   $0x1b3
5a57b1:	6a 6e                	push   $0x6e
5a57b3:	53                   	push   %ebx
5a57b4:	e8 57 99 fe ff       	call   0x58f110
5a57b9:	83 c4 18             	add    $0x18,%esp
5a57bc:	8b 44 24 38          	mov    0x38(%esp),%eax
5a57c0:	68 a1 02 00 00       	push   $0x2a1
5a57c5:	68 38 80 66 00       	push   $0x668038
5a57ca:	50                   	push   %eax
5a57cb:	e8 b0 af f3 ff       	call   0x4e0780
5a57d0:	83 c4 0c             	add    $0xc,%esp
5a57d3:	33 c0                	xor    %eax,%eax
5a57d5:	5f                   	pop    %edi
5a57d6:	5e                   	pop    %esi
5a57d7:	5d                   	pop    %ebp
5a57d8:	5b                   	pop    %ebx
5a57d9:	83 c4 20             	add    $0x20,%esp
5a57dc:	c3                   	ret
5a57dd:	68 5b 02 00 00       	push   $0x25b
5a57e2:	68 38 80 66 00       	push   $0x668038
5a57e7:	6a 6e                	push   $0x6e
5a57e9:	68 b3 01 00 00       	push   $0x1b3