538650:	56                   	push   %esi
538651:	e8 5a e5 fb ff       	call   0x4f6bb0
538656:	83 c4 04             	add    $0x4,%esp
538659:	f6 46 18 01          	testb  $0x1,0x18(%esi)
53865d:	74 0f                	je     0x53866e
53865f:	38 9e a5 00 00 00    	cmp    %bl,0xa5(%esi)
538665:	75 07                	jne    0x53866e
538667:	ba 01 00 00 00       	mov    $0x1,%edx
53866c:	eb 02                	jmp    0x538670
53866e:	33 d2                	xor    %edx,%edx
538670:	57                   	push   %edi
538671:	33 ff                	xor    %edi,%edi
538673:	89 55 08             	mov    %edx,0x8(%ebp)
538676:	39 5e 14             	cmp    %ebx,0x14(%esi)
538679:	7e 41                	jle    0x5386bc
53867b:	33 db                	xor    %ebx,%ebx
53867d:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
538684:	8b 46 10             	mov    0x10(%esi),%eax
538687:	8b 4c 18 04          	mov    0x4(%eax,%ebx,1),%ecx
53868b:	85 c9                	test   %ecx,%ecx
53868d:	74 1e                	je     0x5386ad
53868f:	80 79 08 02          	cmpb   $0x2,0x8(%ecx)
538693:	8b 45 fc             	mov    -0x4(%ebp),%eax
538696:	0f 44 45 f8          	cmove  -0x8(%ebp),%eax
53869a:	83 f2 01             	xor    $0x1,%edx
53869d:	52                   	push   %edx
53869e:	ff 75 0c             	push   0xc(%ebp)
5386a1:	89 45 fc             	mov    %eax,-0x4(%ebp)
5386a4:	51                   	push   %ecx
5386a5:	e8 86 4f fe ff       	call   0x51d630
5386aa:	83 c4 0c             	add    $0xc,%esp
5386ad:	8b 55 08             	mov    0x8(%ebp),%edx
5386b0:	47                   	inc    %edi
5386b1:	83 c3 10             	add    $0x10,%ebx
5386b4:	3b 7e 14             	cmp    0x14(%esi),%edi
5386b7:	7c cb                	jl     0x538684
5386b9:	8b 5d fc             	mov    -0x4(%ebp),%ebx
5386bc:	6a 44                	push   $0x44
5386be:	56                   	push   %esi
5386bf:	e8 6c f5 fb ff       	call   0x4f7c30
5386c4:	a1 74 00 73 00       	mov    0x730074,%eax
5386c9:	83 c4 08             	add    $0x8,%esp
5386cc:	5f                   	pop    %edi
5386cd:	85 c0                	test   %eax,%eax
5386cf:	74 02                	je     0x5386d3
5386d1:	ff d0                	call   *%eax
5386d3:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5386d7:	74 29                	je     0x538702
5386d9:	8b 4e 04             	mov    0x4(%esi),%ecx
5386dc:	85 c9                	test   %ecx,%ecx
5386de:	74 19                	je     0x5386f9
5386e0:	8b 81 98 00 00 00    	mov    0x98(%ecx),%eax
5386e6:	83 e0 fd             	and    $0xfffffffd,%eax
5386e9:	83 c8 01             	or     $0x1,%eax
5386ec:	89 81 98 00 00 00    	mov    %eax,0x98(%ecx)
5386f2:	8b 49 08             	mov    0x8(%ecx),%ecx
5386f5:	85 c9                	test   %ecx,%ecx
5386f7:	75 e7                	jne    0x5386e0
5386f9:	56                   	push   %esi
5386fa:	e8 31 f8 ff ff       	call   0x537f30
5386ff:	83 c4 04             	add    $0x4,%esp
538702:	80 7e 59 00          	cmpb   $0x0,0x59(%esi)
538706:	75 09                	jne    0x538711
538708:	56                   	push   %esi
538709:	e8 82 e8 fb ff       	call   0x4f6f90
53870e:	83 c4 04             	add    $0x4,%esp
538711:	8b 46 24             	mov    0x24(%esi),%eax
538714:	81 66 20 ff ff f7 ff 	andl   $0xfff7ffff,0x20(%esi)
53871b:	89 46 24             	mov    %eax,0x24(%esi)
53871e:	8b 86 e8 00 00 00    	mov    0xe8(%esi),%eax
538724:	c7 86 e8 01 00 00 00 	movl   $0x0,0x1e8(%esi)
53872b:	00 00 00
53872e:	c7 86 ec 01 00 00 00 	movl   $0x0,0x1ec(%esi)
538735:	00 00 00
538738:	c7 86 f0 01 00 00 00 	movl   $0x0,0x1f0(%esi)
53873f:	00 00 00
538742:	c7 86 f4 01 00 00 00 	movl   $0x0,0x1f4(%esi)
538749:	00 00 00
53874c:	85 c0                	test   %eax,%eax
53874e:	74 14                	je     0x538764
538750:	85 db                	test   %ebx,%ebx
538752:	75 05                	jne    0x538759
538754:	38 5e 4f             	cmp    %bl,0x4f(%esi)
538757:	75 0b                	jne    0x538764
538759:	ff b6 e4 00 00 00    	push   0xe4(%esi)
53875f:	ff d0                	call   *%eax
538761:	83 c4 04             	add    $0x4,%esp
538764:	5e                   	pop    %esi
538765:	5b                   	pop    %ebx
538766:	8b e5                	mov    %ebp,%esp
538768:	5d                   	pop    %ebp
538769:	c3                   	ret
53876a:	cc                   	int3
53876b:	cc                   	int3
53876c:	cc                   	int3
53876d:	cc                   	int3
53876e:	cc                   	int3
53876f:	cc                   	int3
538770:	55                   	push   %ebp
538771:	8b ec                	mov    %esp,%ebp
538773:	8b 45 08             	mov    0x8(%ebp),%eax
538776:	8b 55 14             	mov    0x14(%ebp),%edx
538779:	56                   	push   %esi
53877a:	8b 75 10             	mov    0x10(%ebp),%esi
53877d:	57                   	push   %edi
53877e:	8b 7d 0c             	mov    0xc(%ebp),%edi
538781:	c1 e7 04             	shl    $0x4,%edi
538784:	03 78 10             	add    0x10(%eax),%edi
538787:	8b 47 0c             	mov    0xc(%edi),%eax
53878a:	8b 40 10             	mov    0x10(%eax),%eax
53878d:	85 c0                	test   %eax,%eax
53878f:	74 11                	je     0x5387a2
538791:	8b 48 08             	mov    0x8(%eax),%ecx
538794:	39 71 1c             	cmp    %esi,0x1c(%ecx)
538797:	75 03                	jne    0x53879c
538799:	89 51 1c             	mov    %edx,0x1c(%ecx)
53879c:	8b 00                	mov    (%eax),%eax
53879e:	85 c0                	test   %eax,%eax
5387a0:	75 ef                	jne    0x538791
5387a2:	8b 47 0c             	mov    0xc(%edi),%eax
5387a5:	8b 40 20             	mov    0x20(%eax),%eax
5387a8:	85 c0                	test   %eax,%eax
5387aa:	74 15                	je     0x5387c1
5387ac:	0f 1f 40 00          	nopl   0x0(%eax)
5387b0:	8b 48 08             	mov    0x8(%eax),%ecx
5387b3:	39 71 2c             	cmp    %esi,0x2c(%ecx)
5387b6:	75 03                	jne    0x5387bb
5387b8:	89 51 2c             	mov    %edx,0x2c(%ecx)
5387bb:	8b 00                	mov    (%eax),%eax
5387bd:	85 c0                	test   %eax,%eax
5387bf:	75 ef                	jne    0x5387b0
5387c1:	5f                   	pop    %edi
5387c2:	5e                   	pop    %esi
5387c3:	5d                   	pop    %ebp
5387c4:	c3                   	ret
5387c5:	cc                   	int3
5387c6:	cc                   	int3
5387c7:	cc                   	int3
5387c8:	cc                   	int3
5387c9:	cc                   	int3
5387ca:	cc                   	int3
5387cb:	cc                   	int3
5387cc:	cc                   	int3
5387cd:	cc                   	int3
5387ce:	cc                   	int3
5387cf:	cc                   	int3
5387d0:	55                   	push   %ebp
5387d1:	8b ec                	mov    %esp,%ebp
5387d3:	56                   	push   %esi
5387d4:	57                   	push   %edi
5387d5:	8b 7d 08             	mov    0x8(%ebp),%edi
5387d8:	8b 37                	mov    (%edi),%esi
5387da:	85 f6                	test   %esi,%esi
5387dc:	0f 84 ba 00 00 00    	je     0x53889c
5387e2:	53                   	push   %ebx
5387e3:	8b 4f 04             	mov    0x4(%edi),%ecx
5387e6:	8b 1e                	mov    (%esi),%ebx
5387e8:	85 c9                	test   %ecx,%ecx
5387ea:	74 50                	je     0x53883c
5387ec:	83 b9 f8 01 00 00 00 	cmpl   $0x0,0x1f8(%ecx)
5387f3:	74 0f                	je     0x538804
5387f5:	56                   	push   %esi
5387f6:	51                   	push   %ecx
5387f7:	e8 74 0c fd ff       	call   0x509470
5387fc:	83 c4 08             	add    $0x8,%esp
5387ff:	e9 8d 00 00 00       	jmp    0x538891
538804:	3b b1 4c 01 00 00    	cmp    0x14c(%ecx),%esi
53880a:	73 30                	jae    0x53883c
53880c:	3b b1 44 01 00 00    	cmp    0x144(%ecx),%esi
538812:	72 10                	jb     0x538824
538814:	8b 81 40 01 00 00    	mov    0x140(%ecx),%eax
53881a:	89 06                	mov    %eax,(%esi)
53881c:	89 b1 40 01 00 00    	mov    %esi,0x140(%ecx)
538822:	eb 6d                	jmp    0x538891
538824:	3b b1 48 01 00 00    	cmp    0x148(%ecx),%esi
53882a:	72 10                	jb     0x53883c
53882c:	8b 81 38 01 00 00    	mov    0x138(%ecx),%eax
538832:	89 06                	mov    %eax,(%esi)
538834:	89 b1 38 01 00 00    	mov    %esi,0x138(%ecx)
53883a:	eb 55                	jmp    0x538891
53883c:	83 3d 10 18 72 00 00 	cmpl   $0x0,0x721810
538843:	74 42                	je     0x538887
538845:	a1 90 ff 72 00       	mov    0x72ff90,%eax
53884a:	85 c0                	test   %eax,%eax
53884c:	74 0a                	je     0x538858
53884e:	50                   	push   %eax
53884f:	ff 15 60 18 72 00    	call   *0x721860
538855:	83 c4 04             	add    $0x4,%esp
538858:	56                   	push   %esi
538859:	ff 15 3c 18 72 00    	call   *0x72183c
53885f:	29 05 20 00 73 00    	sub    %eax,0x730020
538865:	ff 0d 44 00 73 00    	decl   0x730044
53886b:	56                   	push   %esi
53886c:	ff 15 34 18 72 00    	call   *0x721834
538872:	a1 90 ff 72 00       	mov    0x72ff90,%eax
538877:	83 c4 08             	add    $0x8,%esp
53887a:	85 c0                	test   %eax,%eax
53887c:	74 13                	je     0x538891
53887e:	50                   	push   %eax
53887f:	ff 15 68 18 72 00    	call   *0x721868
538885:	eb 07                	jmp    0x53888e
538887:	56                   	push   %esi
538888:	ff 15 34 18 72 00    	call   *0x721834
53888e:	83 c4 04             	add    $0x4,%esp
538891:	8b f3                	mov    %ebx,%esi
538893:	85 db                	test   %ebx,%ebx
538895:	0f 85 48 ff ff ff    	jne    0x5387e3
53889b:	5b                   	pop    %ebx
53889c:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
5388a2:	c7 47 18 00 00 01 00 	movl   $0x10000,0x18(%edi)
5388a9:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
5388b0:	c7 47 0c 00 00 00 00 	movl   $0x0,0xc(%edi)
5388b7:	c7 47 14 00 00 00 00 	movl   $0x0,0x14(%edi)
5388be:	5f                   	pop    %edi
5388bf:	5e                   	pop    %esi
5388c0:	5d                   	pop    %ebp
5388c1:	c3                   	ret
5388c2:	cc                   	int3
5388c3:	cc                   	int3
5388c4:	cc                   	int3
5388c5:	cc                   	int3
5388c6:	cc                   	int3
5388c7:	cc                   	int3
5388c8:	cc                   	int3
5388c9:	cc                   	int3
5388ca:	cc                   	int3
5388cb:	cc                   	int3
5388cc:	cc                   	int3
5388cd:	cc                   	int3
5388ce:	cc                   	int3
5388cf:	cc                   	int3
5388d0:	55                   	push   %ebp
5388d1:	8b ec                	mov    %esp,%ebp
5388d3:	56                   	push   %esi
5388d4:	8b 75 08             	mov    0x8(%ebp),%esi
5388d7:	56                   	push   %esi
5388d8:	e8 f3 fe ff ff       	call   0x5387d0
5388dd:	83 c4 04             	add    $0x4,%esp
5388e0:	85 f6                	test   %esi,%esi
5388e2:	74 0c                	je     0x5388f0
5388e4:	56                   	push   %esi
5388e5:	ff 76 04             	push   0x4(%esi)
5388e8:	e8 83 8a fe ff       	call   0x521370
5388ed:	83 c4 08             	add    $0x8,%esp
5388f0:	5e                   	pop    %esi
5388f1:	5d                   	pop    %ebp
5388f2:	c3                   	ret
5388f3:	cc                   	int3
5388f4:	cc                   	int3
5388f5:	cc                   	int3
5388f6:	cc                   	int3
5388f7:	cc                   	int3
5388f8:	cc                   	int3
5388f9:	cc                   	int3
5388fa:	cc                   	int3
5388fb:	cc                   	int3
5388fc:	cc                   	int3
5388fd:	cc                   	int3
5388fe:	cc                   	int3
5388ff:	cc                   	int3
538900:	55                   	push   %ebp
538901:	8b ec                	mov    %esp,%ebp
538903:	56                   	push   %esi
538904:	57                   	push   %edi
538905:	8b 7d 08             	mov    0x8(%ebp),%edi
538908:	6a 00                	push   $0x0
53890a:	6a 20                	push   $0x20
53890c:	57                   	push   %edi
53890d:	e8 ce 8a fe ff       	call   0x5213e0
538912:	8b f0                	mov    %eax,%esi
538914:	83 c4 0c             	add    $0xc,%esp
538917:	85 f6                	test   %esi,%esi
538919:	74 76                	je     0x538991
53891b:	85 ff                	test   %edi,%edi
53891d:	74 28                	je     0x538947
53891f:	3b b7 4c 01 00 00    	cmp    0x14c(%edi),%esi
538925:	73 20                	jae    0x538947
538927:	3b b7 44 01 00 00    	cmp    0x144(%edi),%esi
53892d:	72 07                	jb     0x538936
53892f:	b8 80 00 00 00       	mov    $0x80,%eax
538934:	eb 1b                	jmp    0x538951
538936:	3b b7 48 01 00 00    	cmp    0x148(%edi),%esi
53893c:	72 09                	jb     0x538947
53893e:	0f b7 87 1e 01 00 00 	movzwl 0x11e(%edi),%eax
538945:	eb 0a                	jmp    0x538951
538947:	56                   	push   %esi
538948:	ff 15 3c 18 72 00    	call   *0x72183c
53894e:	83 c4 04             	add    $0x4,%esp
538951:	83 c0 e0             	add    $0xffffffe0,%eax
538954:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
53895a:	c1 e8 04             	shr    $0x4,%eax
53895d:	8d 4e 20             	lea    0x20(%esi),%ecx
538960:	66 89 46 18          	mov    %ax,0x18(%esi)
538964:	b8 01 00 00 00       	mov    $0x1,%eax
538969:	66 89 46 1a          	mov    %ax,0x1a(%esi)
53896d:	8b c6                	mov    %esi,%eax
53896f:	89 7e 04             	mov    %edi,0x4(%esi)
538972:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
538979:	c7 46 0c 00 00 00 00 	movl   $0x0,0xc(%esi)
538980:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
538987:	89 4e 10             	mov    %ecx,0x10(%esi)
53898a:	c7 46 1c 00 00 00 00 	movl   $0x0,0x1c(%esi)
538991:	5f                   	pop    %edi
538992:	5e                   	pop    %esi
538993:	5d                   	pop    %ebp
538994:	c3                   	ret
538995:	cc                   	int3
538996:	cc                   	int3
538997:	cc                   	int3
538998:	cc                   	int3
538999:	cc                   	int3
53899a:	cc                   	int3
53899b:	cc                   	int3
53899c:	cc                   	int3
53899d:	cc                   	int3
53899e:	cc                   	int3
53899f:	cc                   	int3
5389a0:	55                   	push   %ebp
5389a1:	8b ec                	mov    %esp,%ebp
5389a3:	56                   	push   %esi
5389a4:	8b 75 08             	mov    0x8(%ebp),%esi
5389a7:	66 83 7e 18 00       	cmpw   $0x0,0x18(%esi)
5389ac:	75 2b                	jne    0x5389d9
5389ae:	6a 00                	push   $0x0
5389b0:	68 f8 03 00 00       	push   $0x3f8
5389b5:	ff 76 04             	push   0x4(%esi)
5389b8:	e8 23 8a fe ff       	call   0x5213e0
5389bd:	83 c4 0c             	add    $0xc,%esp
5389c0:	85 c0                	test   %eax,%eax
5389c2:	74 6a                	je     0x538a2e
5389c4:	8b 0e                	mov    (%esi),%ecx
5389c6:	89 08                	mov    %ecx,(%eax)
5389c8:	89 06                	mov    %eax,(%esi)
5389ca:	83 c0 08             	add    $0x8,%eax
5389cd:	89 46 10             	mov    %eax,0x10(%esi)
5389d0:	b8 3f 00 00 00       	mov    $0x3f,%eax
5389d5:	66 89 46 18          	mov    %ax,0x18(%esi)
5389d9:	8b 4e 10             	mov    0x10(%esi),%ecx
5389dc:	b8 ff ff 00 00       	mov    $0xffff,%eax
5389e1:	66 01 46 18          	add    %ax,0x18(%esi)
5389e5:	8d 41 10             	lea    0x10(%ecx),%eax
5389e8:	89 46 10             	mov    %eax,0x10(%esi)
5389eb:	85 c9                	test   %ecx,%ecx
5389ed:	74 3f                	je     0x538a2e
5389ef:	8b 55 10             	mov    0x10(%ebp),%edx
5389f2:	57                   	push   %edi
5389f3:	8b 7d 0c             	mov    0xc(%ebp),%edi
5389f6:	89 39                	mov    %edi,(%ecx)
5389f8:	89 51 04             	mov    %edx,0x4(%ecx)
5389fb:	c7 41 08 00 00 00 00 	movl   $0x0,0x8(%ecx)