52f73e:	cc                   	int3
52f73f:	cc                   	int3
52f740:	55                   	push   %ebp
52f741:	8b ec                	mov    %esp,%ebp
52f743:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
52f747:	7e 7c                	jle    0x52f7c5
52f749:	53                   	push   %ebx
52f74a:	56                   	push   %esi
52f74b:	8b 75 08             	mov    0x8(%ebp),%esi
52f74e:	bb 17 00 00 00       	mov    $0x17,%ebx
52f753:	57                   	push   %edi
52f754:	83 c6 0c             	add    $0xc,%esi
52f757:	8b 7e 14             	mov    0x14(%esi),%edi
52f75a:	85 ff                	test   %edi,%edi
52f75c:	75 04                	jne    0x52f762
52f75e:	33 c0                	xor    %eax,%eax
52f760:	eb 13                	jmp    0x52f775
52f762:	8b c7                	mov    %edi,%eax
52f764:	8d 50 01             	lea    0x1(%eax),%edx
52f767:	8a 08                	mov    (%eax),%cl
52f769:	40                   	inc    %eax
52f76a:	84 c9                	test   %cl,%cl
52f76c:	75 f9                	jne    0x52f767
52f76e:	2b c2                	sub    %edx,%eax
52f770:	25 ff ff ff 3f       	and    $0x3fffffff,%eax
52f775:	0f be 0f             	movsbl (%edi),%ecx
52f778:	03 c1                	add    %ecx,%eax
52f77a:	99                   	cltd
52f77b:	f7 fb                	idiv   %ebx
52f77d:	57                   	push   %edi
52f77e:	8b da                	mov    %edx,%ebx
52f780:	53                   	push   %ebx
52f781:	e8 4a ac ff ff       	call   0x52a3d0
52f786:	83 c4 08             	add    $0x8,%esp
52f789:	85 c0                	test   %eax,%eax
52f78b:	74 0d                	je     0x52f79a
52f78d:	8b 48 0c             	mov    0xc(%eax),%ecx
52f790:	89 0e                	mov    %ecx,(%esi)
52f792:	8d 4e f4             	lea    -0xc(%esi),%ecx
52f795:	89 48 0c             	mov    %ecx,0xc(%eax)
52f798:	eb 1a                	jmp    0x52f7b4
52f79a:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
52f7a0:	8b 04 9d c0 ff 72 00 	mov    0x72ffc0(,%ebx,4),%eax
52f7a7:	89 46 18             	mov    %eax,0x18(%esi)
52f7aa:	8d 46 f4             	lea    -0xc(%esi),%eax
52f7ad:	89 04 9d c0 ff 72 00 	mov    %eax,0x72ffc0(,%ebx,4)
52f7b4:	83 c6 28             	add    $0x28,%esi
52f7b7:	bb 17 00 00 00       	mov    $0x17,%ebx
52f7bc:	83 6d 0c 01          	subl   $0x1,0xc(%ebp)
52f7c0:	75 95                	jne    0x52f757
52f7c2:	5f                   	pop    %edi
52f7c3:	5e                   	pop    %esi
52f7c4:	5b                   	pop    %ebx
52f7c5:	5d                   	pop    %ebp
52f7c6:	c3                   	ret
52f7c7:	cc                   	int3
52f7c8:	cc                   	int3
52f7c9:	cc                   	int3
52f7ca:	cc                   	int3
52f7cb:	cc                   	int3
52f7cc:	cc                   	int3
52f7cd:	cc                   	int3
52f7ce:	cc                   	int3
52f7cf:	cc                   	int3
52f7d0:	55                   	push   %ebp
52f7d1:	8b ec                	mov    %esp,%ebp
52f7d3:	f2 0f 10 05 50 c6 6b 	movsd  0x6bc650,%xmm0
52f7da:	00
52f7db:	f2 0f 10 4d 10       	movsd  0x10(%ebp),%xmm1
52f7e0:	66 0f 2f c1          	comisd %xmm1,%xmm0
52f7e4:	76 07                	jbe    0x52f7ed
52f7e6:	b8 01 00 00 00       	mov    $0x1,%eax
52f7eb:	5d                   	pop    %ebp
52f7ec:	c3                   	ret
52f7ed:	66 0f 2f 0d 00 c6 6b 	comisd 0x6bc600,%xmm1
52f7f4:	00
52f7f5:	72 05                	jb     0x52f7fc
52f7f7:	83 c8 ff             	or     $0xffffffff,%eax
52f7fa:	5d                   	pop    %ebp
52f7fb:	c3                   	ret
52f7fc:	56                   	push   %esi
52f7fd:	0f 28 c1             	movaps %xmm1,%xmm0
52f800:	e8 86 1f 0b 00       	call   0x5e178b
52f805:	8b 4d 08             	mov    0x8(%ebp),%ecx
52f808:	8b f2                	mov    %edx,%esi
52f80a:	8b 55 0c             	mov    0xc(%ebp),%edx
52f80d:	3b d6                	cmp    %esi,%edx
52f80f:	7f 10                	jg     0x52f821
52f811:	7c 26                	jl     0x52f839
52f813:	3b c8                	cmp    %eax,%ecx
52f815:	72 22                	jb     0x52f839
52f817:	3b d6                	cmp    %esi,%edx
52f819:	7c 0e                	jl     0x52f829
52f81b:	7f 04                	jg     0x52f821
52f81d:	3b c8                	cmp    %eax,%ecx
52f81f:	76 08                	jbe    0x52f829
52f821:	b8 01 00 00 00       	mov    $0x1,%eax
52f826:	5e                   	pop    %esi
52f827:	5d                   	pop    %ebp
52f828:	c3                   	ret
52f829:	e8 72 20 0b 00       	call   0x5e18a0
52f82e:	f2 0f 10 4d 10       	movsd  0x10(%ebp),%xmm1
52f833:	66 0f 2f c8          	comisd %xmm0,%xmm1
52f837:	76 06                	jbe    0x52f83f
52f839:	83 c8 ff             	or     $0xffffffff,%eax
52f83c:	5e                   	pop    %esi
52f83d:	5d                   	pop    %ebp
52f83e:	c3                   	ret
52f83f:	33 c0                	xor    %eax,%eax
52f841:	66 0f 2f c1          	comisd %xmm1,%xmm0
52f845:	5e                   	pop    %esi
52f846:	0f 97 c0             	seta   %al
52f849:	5d                   	pop    %ebp
52f84a:	c3                   	ret
52f84b:	cc                   	int3
52f84c:	cc                   	int3
52f84d:	cc                   	int3
52f84e:	cc                   	int3
52f84f:	cc                   	int3
52f850:	55                   	push   %ebp
52f851:	8b ec                	mov    %esp,%ebp
52f853:	56                   	push   %esi
52f854:	57                   	push   %edi
52f855:	8b 7d 08             	mov    0x8(%ebp),%edi
52f858:	8b 47 04             	mov    0x4(%edi),%eax
52f85b:	ff 70 08             	push   0x8(%eax)
52f85e:	68 74 c3 6b 00       	push   $0x6bc374
52f863:	e8 e8 ac fb ff       	call   0x4ea550
52f868:	6a ff                	push   $0xffffffff
52f86a:	6a 01                	push   $0x1
52f86c:	8b f0                	mov    %eax,%esi
52f86e:	c7 47 14 01 00 00 00 	movl   $0x1,0x14(%edi)
52f875:	6a ff                	push   $0xffffffff
52f877:	56                   	push   %esi
52f878:	ff 37                	push   (%edi)
52f87a:	e8 61 c2 01 00       	call   0x54bae0
52f87f:	56                   	push   %esi
52f880:	e8 0b b5 fb ff       	call   0x4ead90
52f885:	83 c4 20             	add    $0x20,%esp
52f888:	5f                   	pop    %edi
52f889:	5e                   	pop    %esi
52f88a:	5d                   	pop    %ebp
52f88b:	c3                   	ret
52f88c:	cc                   	int3
52f88d:	cc                   	int3
52f88e:	cc                   	int3
52f88f:	cc                   	int3
52f890:	55                   	push   %ebp
52f891:	8b ec                	mov    %esp,%ebp
52f893:	56                   	push   %esi
52f894:	8b 75 0c             	mov    0xc(%ebp),%esi
52f897:	80 3e a9             	cmpb   $0xa9,(%esi)
52f89a:	0f 85 8c 00 00 00    	jne    0x52f92c
52f8a0:	8b 46 14             	mov    0x14(%esi),%eax
52f8a3:	85 c0                	test   %eax,%eax
52f8a5:	0f 84 81 00 00 00    	je     0x52f92c
52f8ab:	53                   	push   %ebx
52f8ac:	8b 18                	mov    (%eax),%ebx
52f8ae:	57                   	push   %edi
52f8af:	6a 00                	push   $0x0
52f8b1:	6a 01                	push   $0x1
52f8b3:	53                   	push   %ebx
52f8b4:	ff 76 08             	push   0x8(%esi)
52f8b7:	ff 75 08             	push   0x8(%ebp)
52f8ba:	e8 61 86 ff ff       	call   0x527f20
52f8bf:	8b f8                	mov    %eax,%edi
52f8c1:	83 c4 14             	add    $0x14,%esp
52f8c4:	85 ff                	test   %edi,%edi
52f8c6:	74 5d                	je     0x52f925
52f8c8:	f6 47 04 04          	testb  $0x4,0x4(%edi)
52f8cc:	74 57                	je     0x52f925
52f8ce:	83 fb 03             	cmp    $0x3,%ebx
52f8d1:	7d 09                	jge    0x52f8dc
52f8d3:	8b 55 14             	mov    0x14(%ebp),%edx
52f8d6:	c6 42 03 00          	movb   $0x0,0x3(%edx)
52f8da:	eb 20                	jmp    0x52f8fc
52f8dc:	8b 46 14             	mov    0x14(%esi),%eax
52f8df:	8b 40 2c             	mov    0x2c(%eax),%eax
52f8e2:	80 38 73             	cmpb   $0x73,(%eax)
52f8e5:	75 3e                	jne    0x52f925
52f8e7:	8b 40 08             	mov    0x8(%eax),%eax
52f8ea:	8a 08                	mov    (%eax),%cl
52f8ec:	84 c9                	test   %cl,%cl
52f8ee:	74 35                	je     0x52f925
52f8f0:	80 78 01 00          	cmpb   $0x0,0x1(%eax)
52f8f4:	75 2f                	jne    0x52f925
52f8f6:	8b 55 14             	mov    0x14(%ebp),%edx
52f8f9:	88 4a 03             	mov    %cl,0x3(%edx)
52f8fc:	8b 4f 08             	mov    0x8(%edi),%ecx
52f8ff:	66 8b 01             	mov    (%ecx),%ax
52f902:	66 89 02             	mov    %ax,(%edx)
52f905:	8a 41 02             	mov    0x2(%ecx),%al
52f908:	88 42 02             	mov    %al,0x2(%edx)
52f90b:	8b 4f 04             	mov    0x4(%edi),%ecx
52f90e:	8b 45 10             	mov    0x10(%ebp),%eax
52f911:	c1 e9 03             	shr    $0x3,%ecx
52f914:	f7 d1                	not    %ecx
52f916:	5f                   	pop    %edi
52f917:	83 e1 01             	and    $0x1,%ecx
52f91a:	5b                   	pop    %ebx
52f91b:	89 08                	mov    %ecx,(%eax)
52f91d:	b8 01 00 00 00       	mov    $0x1,%eax
52f922:	5e                   	pop    %esi
52f923:	5d                   	pop    %ebp
52f924:	c3                   	ret
52f925:	5f                   	pop    %edi
52f926:	5b                   	pop    %ebx
52f927:	33 c0                	xor    %eax,%eax
52f929:	5e                   	pop    %esi
52f92a:	5d                   	pop    %ebp
52f92b:	c3                   	ret
52f92c:	33 c0                	xor    %eax,%eax
52f92e:	5e                   	pop    %esi
52f92f:	5d                   	pop    %ebp
52f930:	c3                   	ret
52f931:	cc                   	int3
52f932:	cc                   	int3
52f933:	cc                   	int3
52f934:	cc                   	int3
52f935:	cc                   	int3
52f936:	cc                   	int3
52f937:	cc                   	int3
52f938:	cc                   	int3
52f939:	cc                   	int3
52f93a:	cc                   	int3
52f93b:	cc                   	int3
52f93c:	cc                   	int3
52f93d:	cc                   	int3
52f93e:	cc                   	int3
52f93f:	cc                   	int3
52f940:	55                   	push   %ebp
52f941:	8b ec                	mov    %esp,%ebp
52f943:	8b 4d 0c             	mov    0xc(%ebp),%ecx
52f946:	8b c1                	mov    %ecx,%eax
52f948:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
52f94d:	33 d2                	xor    %edx,%edx
52f94f:	75 1b                	jne    0x52f96c
52f951:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
52f956:	75 14                	jne    0x52f96c
52f958:	8b 45 08             	mov    0x8(%ebp),%eax
52f95b:	81 e1 ff ff 0f 00    	and    $0xfffff,%ecx
52f961:	0b c1                	or     %ecx,%eax
52f963:	74 07                	je     0x52f96c
52f965:	b8 01 00 00 00       	mov    $0x1,%eax
52f96a:	5d                   	pop    %ebp
52f96b:	c3                   	ret
52f96c:	33 c0                	xor    %eax,%eax
52f96e:	5d                   	pop    %ebp
52f96f:	c3                   	ret
52f970:	55                   	push   %ebp
52f971:	8b ec                	mov    %esp,%ebp
52f973:	56                   	push   %esi
52f974:	8b 75 0c             	mov    0xc(%ebp),%esi
52f977:	57                   	push   %edi
52f978:	8b 7d 08             	mov    0x8(%ebp),%edi
52f97b:	56                   	push   %esi
52f97c:	57                   	push   %edi
52f97d:	e8 de 89 02 00       	call   0x558360
52f982:	83 c4 08             	add    $0x8,%esp
52f985:	85 c0                	test   %eax,%eax
52f987:	74 19                	je     0x52f9a2
52f989:	ff 36                	push   (%esi)
52f98b:	68 84 a7 6b 00       	push   $0x6ba784
52f990:	57                   	push   %edi
52f991:	e8 ca 38 ff ff       	call   0x523260
52f996:	83 c4 0c             	add    $0xc,%esp
52f999:	b8 01 00 00 00       	mov    $0x1,%eax
52f99e:	5f                   	pop    %edi
52f99f:	5e                   	pop    %esi
52f9a0:	5d                   	pop    %ebp
52f9a1:	c3                   	ret
52f9a2:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
52f9a6:	75 1f                	jne    0x52f9c7
52f9a8:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
52f9ac:	74 19                	je     0x52f9c7
52f9ae:	ff 36                	push   (%esi)
52f9b0:	68 a4 a7 6b 00       	push   $0x6ba7a4
52f9b5:	57                   	push   %edi
52f9b6:	e8 a5 38 ff ff       	call   0x523260
52f9bb:	83 c4 0c             	add    $0xc,%esp
52f9be:	b8 01 00 00 00       	mov    $0x1,%eax
52f9c3:	5f                   	pop    %edi
52f9c4:	5e                   	pop    %esi
52f9c5:	5d                   	pop    %ebp
52f9c6:	c3                   	ret
52f9c7:	5f                   	pop    %edi
52f9c8:	33 c0                	xor    %eax,%eax
52f9ca:	5e                   	pop    %esi
52f9cb:	5d                   	pop    %ebp
52f9cc:	c3                   	ret
52f9cd:	cc                   	int3
52f9ce:	cc                   	int3
52f9cf:	cc                   	int3
52f9d0:	55                   	push   %ebp
52f9d1:	8b ec                	mov    %esp,%ebp
52f9d3:	56                   	push   %esi
52f9d4:	8b 75 08             	mov    0x8(%ebp),%esi
52f9d7:	68 14 91 6b 00       	push   $0x6b9114
52f9dc:	56                   	push   %esi
52f9dd:	e8 4e e2 00 00       	call   0x53dc30
52f9e2:	83 c4 08             	add    $0x8,%esp
52f9e5:	85 c0                	test   %eax,%eax
52f9e7:	75 08                	jne    0x52f9f1
52f9e9:	b8 01 00 00 00       	mov    $0x1,%eax
52f9ee:	5e                   	pop    %esi
52f9ef:	5d                   	pop    %ebp
52f9f0:	c3                   	ret
52f9f1:	68 1c 91 6b 00       	push   $0x6b911c
52f9f6:	56                   	push   %esi
52f9f7:	e8 34 e2 00 00       	call   0x53dc30
52f9fc:	83 c4 08             	add    $0x8,%esp
52f9ff:	85 c0                	test   %eax,%eax
52fa01:	74 e6                	je     0x52f9e9
52fa03:	68 24 91 6b 00       	push   $0x6b9124
52fa08:	56                   	push   %esi
52fa09:	e8 22 e2 00 00       	call   0x53dc30
52fa0e:	83 c4 08             	add    $0x8,%esp
52fa11:	f7 d8                	neg    %eax
52fa13:	1b c0                	sbb    %eax,%eax
52fa15:	40                   	inc    %eax
52fa16:	5e                   	pop    %esi
52fa17:	5d                   	pop    %ebp
52fa18:	c3                   	ret
52fa19:	cc                   	int3
52fa1a:	cc                   	int3
52fa1b:	cc                   	int3
52fa1c:	cc                   	int3
52fa1d:	cc                   	int3
52fa1e:	cc                   	int3
52fa1f:	cc                   	int3
52fa20:	55                   	push   %ebp
52fa21:	8b ec                	mov    %esp,%ebp
52fa23:	83 ec 18             	sub    $0x18,%esp
52fa26:	8b 45 14             	mov    0x14(%ebp),%eax
52fa29:	33 d2                	xor    %edx,%edx
52fa2b:	53                   	push   %ebx
52fa2c:	56                   	push   %esi
52fa2d:	8b 75 0c             	mov    0xc(%ebp),%esi
52fa30:	89 45 f0             	mov    %eax,-0x10(%ebp)
52fa33:	33 c0                	xor    %eax,%eax
52fa35:	89 75 e8             	mov    %esi,-0x18(%ebp)
52fa38:	8b 75 10             	mov    0x10(%ebp),%esi
52fa3b:	57                   	push   %edi
52fa3c:	89 55 fc             	mov    %edx,-0x4(%ebp)
52fa3f:	89 75 ec             	mov    %esi,-0x14(%ebp)
52fa42:	89 45 f8             	mov    %eax,-0x8(%ebp)
52fa45:	8b 4c 85 e8          	mov    -0x18(%ebp,%eax,4),%ecx
52fa49:	89 4d f4             	mov    %ecx,-0xc(%ebp)
52fa4c:	85 c9                	test   %ecx,%ecx
52fa4e:	74 45                	je     0x52fa95