6596d7:	50                   	push   %eax
6596d8:	8b 46 48             	mov    0x48(%esi),%eax
6596db:	d1 f8                	sar    $1,%eax
6596dd:	79 03                	jns    0x6596e2
6596df:	83 d0 00             	adc    $0x0,%eax
6596e2:	89 45 f0             	mov    %eax,-0x10(%ebp)
6596e5:	db 45 f0             	fildl  -0x10(%ebp)
6596e8:	e8 d3 95 da ff       	call   0x402cc0
6596ed:	8b d0                	mov    %eax,%edx
6596ef:	8b c6                	mov    %esi,%eax
6596f1:	59                   	pop    %ecx
6596f2:	e8 6d 00 f8 ff       	call   0x5d9764
6596f7:	33 c0                	xor    %eax,%eax
6596f9:	5a                   	pop    %edx
6596fa:	59                   	pop    %ecx
6596fb:	59                   	pop    %ecx
6596fc:	64 89 10             	mov    %edx,%fs:(%eax)
6596ff:	eb 0a                	jmp    0x65970b
659701:	e9 52 a8 da ff       	jmp    0x403f58
659706:	e8 b5 ab da ff       	call   0x4042c0
65970b:	5f                   	pop    %edi
65970c:	5e                   	pop    %esi
65970d:	5b                   	pop    %ebx
65970e:	8b e5                	mov    %ebp,%esp
659710:	5d                   	pop    %ebp
659711:	c2 08 00             	ret    $0x8
659714:	55                   	push   %ebp
659715:	8b ec                	mov    %esp,%ebp
659717:	83 c4 f8             	add    $0xfffffff8,%esp
65971a:	53                   	push   %ebx
65971b:	56                   	push   %esi
65971c:	57                   	push   %edi
65971d:	8b d8                	mov    %eax,%ebx
65971f:	33 c0                	xor    %eax,%eax
659721:	55                   	push   %ebp
659722:	68 a8 97 65 00       	push   $0x6597a8
659727:	64 ff 30             	push   %fs:(%eax)
65972a:	64 89 20             	mov    %esp,%fs:(%eax)
65972d:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
659733:	8b 10                	mov    (%eax),%edx
659735:	ff 92 e0 00 00 00    	call   *0xe0(%edx)
65973b:	8b b3 f0 02 00 00    	mov    0x2f0(%ebx),%esi
659741:	dd 86 a0 03 00 00    	fldl   0x3a0(%esi)
659747:	d8 1d bc 97 65 00    	fcomps 0x6597bc
65974d:	df e0                	fnstsw %ax
65974f:	9e                   	sahf
659750:	74 3e                	je     0x659790
659752:	68 00 00 59 40       	push   $0x40590000
659757:	6a 00                	push   $0x0
659759:	6a 01                	push   $0x1
65975b:	8b 46 4c             	mov    0x4c(%esi),%eax
65975e:	d1 f8                	sar    $1,%eax
659760:	79 03                	jns    0x659765
659762:	83 d0 00             	adc    $0x0,%eax
659765:	89 45 fc             	mov    %eax,-0x4(%ebp)
659768:	db 45 fc             	fildl  -0x4(%ebp)
65976b:	e8 50 95 da ff       	call   0x402cc0
659770:	50                   	push   %eax
659771:	8b 46 48             	mov    0x48(%esi),%eax
659774:	d1 f8                	sar    $1,%eax
659776:	79 03                	jns    0x65977b
659778:	83 d0 00             	adc    $0x0,%eax
65977b:	89 45 f8             	mov    %eax,-0x8(%ebp)
65977e:	db 45 f8             	fildl  -0x8(%ebp)
659781:	e8 3a 95 da ff       	call   0x402cc0
659786:	8b d0                	mov    %eax,%edx
659788:	8b c6                	mov    %esi,%eax
65978a:	59                   	pop    %ecx
65978b:	e8 d4 ff f7 ff       	call   0x5d9764
659790:	8b 83 f0 02 00 00    	mov    0x2f0(%ebx),%eax
659796:	8b 10                	mov    (%eax),%edx
659798:	ff 92 e4 00 00 00    	call   *0xe4(%edx)
65979e:	33 c0                	xor    %eax,%eax
6597a0:	5a                   	pop    %edx
6597a1:	59                   	pop    %ecx
6597a2:	59                   	pop    %ecx
6597a3:	64 89 10             	mov    %edx,%fs:(%eax)
6597a6:	eb 0a                	jmp    0x6597b2
6597a8:	e9 ab a7 da ff       	jmp    0x403f58
6597ad:	e8 0e ab da ff       	call   0x4042c0
6597b2:	5f                   	pop    %edi
6597b3:	5e                   	pop    %esi
6597b4:	5b                   	pop    %ebx
6597b5:	59                   	pop    %ecx
6597b6:	59                   	pop    %ecx
6597b7:	5d                   	pop    %ebp
6597b8:	c3                   	ret
6597b9:	00 00                	add    %al,(%eax)
6597bb:	00 00                	add    %al,(%eax)
6597bd:	00 c8                	add    %cl,%al
6597bf:	42                   	inc    %edx
6597c0:	55                   	push   %ebp
6597c1:	8b ec                	mov    %esp,%ebp
6597c3:	53                   	push   %ebx
6597c4:	56                   	push   %esi
6597c5:	57                   	push   %edi
6597c6:	33 d2                	xor    %edx,%edx
6597c8:	55                   	push   %ebp
6597c9:	68 09 98 65 00       	push   $0x659809
6597ce:	64 ff 32             	push   %fs:(%edx)
6597d1:	64 89 22             	mov    %esp,%fs:(%edx)
6597d4:	33 d2                	xor    %edx,%edx
6597d6:	55                   	push   %ebp
6597d7:	68 f1 97 65 00       	push   $0x6597f1
6597dc:	64 ff 32             	push   %fs:(%edx)
6597df:	64 89 22             	mov    %esp,%fs:(%edx)
6597e2:	e8 2d ff ff ff       	call   0x659714
6597e7:	33 c0                	xor    %eax,%eax
6597e9:	5a                   	pop    %edx
6597ea:	59                   	pop    %ecx
6597eb:	59                   	pop    %ecx
6597ec:	64 89 10             	mov    %edx,%fs:(%eax)
6597ef:	eb 0a                	jmp    0x6597fb
6597f1:	e9 62 a7 da ff       	jmp    0x403f58
6597f6:	e8 c5 aa da ff       	call   0x4042c0
6597fb:	33 c0                	xor    %eax,%eax
6597fd:	5a                   	pop    %edx
6597fe:	59                   	pop    %ecx
6597ff:	59                   	pop    %ecx
659800:	64 89 10             	mov    %edx,%fs:(%eax)
659803:	68 10 98 65 00       	push   $0x659810
659808:	c3                   	ret
659809:	e9 fe a9 da ff       	jmp    0x40420c
65980e:	eb f8                	jmp    0x659808
659810:	5f                   	pop    %edi
659811:	5e                   	pop    %esi
659812:	5b                   	pop    %ebx
659813:	5d                   	pop    %ebp
659814:	c3                   	ret
659815:	8d 40 00             	lea    0x0(%eax),%eax
659818:	55                   	push   %ebp
659819:	8b ec                	mov    %esp,%ebp
65981b:	83 c4 f8             	add    $0xfffffff8,%esp
65981e:	53                   	push   %ebx
65981f:	83 cb ff             	or     $0xffffffff,%ebx
659822:	dd 45 08             	fldl   0x8(%ebp)
659825:	d8 1d e0 98 65 00    	fcomps 0x6598e0
65982b:	df e0                	fnstsw %ax
65982d:	9e                   	sahf
65982e:	76 4f                	jbe    0x65987f
659830:	dd 45 08             	fldl   0x8(%ebp)
659833:	d8 1d e4 98 65 00    	fcomps 0x6598e4
659839:	df e0                	fnstsw %ax
65983b:	9e                   	sahf
65983c:	73 41                	jae    0x65987f
65983e:	33 c9                	xor    %ecx,%ecx
659840:	8b 15 28 6d 6a 00    	mov    0x6a6d28,%edx
659846:	dd 45 08             	fldl   0x8(%ebp)
659849:	dc 1a                	fcompl (%edx)
65984b:	df e0                	fnstsw %ax
65984d:	9e                   	sahf
65984e:	72 26                	jb     0x659876
659850:	dd 45 08             	fldl   0x8(%ebp)
659853:	dc 5a 08             	fcompl 0x8(%edx)
659856:	df e0                	fnstsw %ax
659858:	9e                   	sahf
659859:	77 1b                	ja     0x659876
65985b:	dd 45 08             	fldl   0x8(%ebp)
65985e:	dc 22                	fsubl  (%edx)
659860:	dd 42 08             	fldl   0x8(%edx)
659863:	dc 65 08             	fsubl  0x8(%ebp)
659866:	de d9                	fcompp
659868:	df e0                	fnstsw %ax
65986a:	9e                   	sahf
65986b:	76 04                	jbe    0x659871
65986d:	8b d9                	mov    %ecx,%ebx
65986f:	eb 0e                	jmp    0x65987f
659871:	8d 59 01             	lea    0x1(%ecx),%ebx
659874:	eb 09                	jmp    0x65987f
659876:	41                   	inc    %ecx
659877:	83 c2 08             	add    $0x8,%edx
65987a:	83 f9 15             	cmp    $0x15,%ecx
65987d:	75 c7                	jne    0x659846
65987f:	8b 45 10             	mov    0x10(%ebp),%eax
659882:	89 45 f8             	mov    %eax,-0x8(%ebp)
659885:	8b 45 14             	mov    0x14(%ebp),%eax
659888:	89 45 fc             	mov    %eax,-0x4(%ebp)
65988b:	33 c9                	xor    %ecx,%ecx
65988d:	8b 15 28 6d 6a 00    	mov    0x6a6d28,%edx
659893:	3b d9                	cmp    %ecx,%ebx
659895:	74 17                	je     0x6598ae
659897:	dd 45 10             	fldl   0x10(%ebp)
65989a:	dc 1a                	fcompl (%edx)
65989c:	df e0                	fnstsw %ax
65989e:	9e                   	sahf
65989f:	73 0d                	jae    0x6598ae
6598a1:	8b 02                	mov    (%edx),%eax
6598a3:	89 45 f8             	mov    %eax,-0x8(%ebp)
6598a6:	8b 42 04             	mov    0x4(%edx),%eax
6598a9:	89 45 fc             	mov    %eax,-0x4(%ebp)
6598ac:	eb 26                	jmp    0x6598d4
6598ae:	3b d9                	cmp    %ecx,%ebx
6598b0:	75 19                	jne    0x6598cb
6598b2:	dd 45 10             	fldl   0x10(%ebp)
6598b5:	dc 5d 08             	fcompl 0x8(%ebp)
6598b8:	df e0                	fnstsw %ax
6598ba:	9e                   	sahf
6598bb:	73 0e                	jae    0x6598cb
6598bd:	8b 45 08             	mov    0x8(%ebp),%eax
6598c0:	89 45 f8             	mov    %eax,-0x8(%ebp)
6598c3:	8b 45 0c             	mov    0xc(%ebp),%eax
6598c6:	89 45 fc             	mov    %eax,-0x4(%ebp)
6598c9:	eb 09                	jmp    0x6598d4
6598cb:	41                   	inc    %ecx
6598cc:	83 c2 08             	add    $0x8,%edx
6598cf:	83 f9 16             	cmp    $0x16,%ecx
6598d2:	75 bf                	jne    0x659893
6598d4:	dd 45 f8             	fldl   -0x8(%ebp)
6598d7:	5b                   	pop    %ebx
6598d8:	59                   	pop    %ecx
6598d9:	59                   	pop    %ecx
6598da:	5d                   	pop    %ebp
6598db:	c2 10 00             	ret    $0x10
6598de:	00 00                	add    %al,(%eax)
6598e0:	00 00                	add    %al,(%eax)
6598e2:	00 40 00             	add    %al,0x0(%eax)
6598e5:	40                   	inc    %eax
6598e6:	9c                   	pushf
6598e7:	45                   	inc    %ebp
6598e8:	55                   	push   %ebp
6598e9:	8b ec                	mov    %esp,%ebp
6598eb:	83 c4 f8             	add    $0xfffffff8,%esp
6598ee:	53                   	push   %ebx
6598ef:	83 cb ff             	or     $0xffffffff,%ebx
6598f2:	dd 45 08             	fldl   0x8(%ebp)
6598f5:	d8 1d b8 99 65 00    	fcomps 0x6599b8
6598fb:	df e0                	fnstsw %ax
6598fd:	9e                   	sahf
6598fe:	76 4f                	jbe    0x65994f
659900:	dd 45 08             	fldl   0x8(%ebp)
659903:	d8 1d bc 99 65 00    	fcomps 0x6599bc
659909:	df e0                	fnstsw %ax
65990b:	9e                   	sahf
65990c:	73 41                	jae    0x65994f
65990e:	33 c9                	xor    %ecx,%ecx
659910:	8b 15 28 6d 6a 00    	mov    0x6a6d28,%edx
659916:	dd 45 08             	fldl   0x8(%ebp)
659919:	dc 1a                	fcompl (%edx)
65991b:	df e0                	fnstsw %ax
65991d:	9e                   	sahf
65991e:	72 26                	jb     0x659946
659920:	dd 45 08             	fldl   0x8(%ebp)
659923:	dc 5a 08             	fcompl 0x8(%edx)
659926:	df e0                	fnstsw %ax
659928:	9e                   	sahf
659929:	77 1b                	ja     0x659946
65992b:	dd 45 08             	fldl   0x8(%ebp)
65992e:	dc 22                	fsubl  (%edx)
659930:	dd 42 08             	fldl   0x8(%edx)
659933:	dc 65 08             	fsubl  0x8(%ebp)
659936:	de d9                	fcompp
659938:	df e0                	fnstsw %ax
65993a:	9e                   	sahf
65993b:	76 04                	jbe    0x659941
65993d:	8b d9                	mov    %ecx,%ebx
65993f:	eb 0e                	jmp    0x65994f
659941:	8d 59 01             	lea    0x1(%ecx),%ebx
659944:	eb 09                	jmp    0x65994f
659946:	41                   	inc    %ecx
659947:	83 c2 08             	add    $0x8,%edx
65994a:	83 f9 15             	cmp    $0x15,%ecx
65994d:	75 c7                	jne    0x659916
65994f:	8b 45 10             	mov    0x10(%ebp),%eax
659952:	89 45 f8             	mov    %eax,-0x8(%ebp)
659955:	8b 45 14             	mov    0x14(%ebp),%eax
659958:	89 45 fc             	mov    %eax,-0x4(%ebp)
65995b:	b9 15 00 00 00       	mov    $0x15,%ecx
659960:	8b 15 28 6d 6a 00    	mov    0x6a6d28,%edx
659966:	81 c2 a8 00 00 00    	add    $0xa8,%edx
65996c:	3b d9                	cmp    %ecx,%ebx
65996e:	74 17                	je     0x659987
659970:	dd 45 10             	fldl   0x10(%ebp)
659973:	dc 1a                	fcompl (%edx)
659975:	df e0                	fnstsw %ax
659977:	9e                   	sahf
659978:	76 0d                	jbe    0x659987
65997a:	8b 02                	mov    (%edx),%eax
65997c:	89 45 f8             	mov    %eax,-0x8(%ebp)
65997f:	8b 42 04             	mov    0x4(%edx),%eax
659982:	89 45 fc             	mov    %eax,-0x4(%ebp)
659985:	eb 26                	jmp    0x6599ad
659987:	3b d9                	cmp    %ecx,%ebx
659989:	75 19                	jne    0x6599a4
65998b:	dd 45 10             	fldl   0x10(%ebp)
65998e:	dc 5d 08             	fcompl 0x8(%ebp)
659991:	df e0                	fnstsw %ax
659993:	9e                   	sahf
659994:	76 0e                	jbe    0x6599a4
659996:	8b 45 08             	mov    0x8(%ebp),%eax
659999:	89 45 f8             	mov    %eax,-0x8(%ebp)
65999c:	8b 45 0c             	mov    0xc(%ebp),%eax
65999f:	89 45 fc             	mov    %eax,-0x4(%ebp)
6599a2:	eb 09                	jmp    0x6599ad
6599a4:	49                   	dec    %ecx
6599a5:	83 ea 08             	sub    $0x8,%edx
6599a8:	83 f9 ff             	cmp    $0xffffffff,%ecx
6599ab:	75 bf                	jne    0x65996c
6599ad:	dd 45 f8             	fldl   -0x8(%ebp)
6599b0:	5b                   	pop    %ebx
6599b1:	59                   	pop    %ecx
6599b2:	59                   	pop    %ecx
6599b3:	5d                   	pop    %ebp
6599b4:	c2 10 00             	ret    $0x10
6599b7:	00 00                	add    %al,(%eax)
6599b9:	00 00                	add    %al,(%eax)
6599bb:	40                   	inc    %eax
6599bc:	00 40 9c             	add    %al,-0x64(%eax)
6599bf:	45                   	inc    %ebp
6599c0:	55                   	push   %ebp
6599c1:	8b ec                	mov    %esp,%ebp
6599c3:	83 c4 f4             	add    $0xfffffff4,%esp
6599c6:	53                   	push   %ebx
6599c7:	56                   	push   %esi
6599c8:	57                   	push   %edi
6599c9:	8b f9                	mov    %ecx,%edi
6599cb:	8b f0                	mov    %eax,%esi
6599cd:	8b 5d 08             	mov    0x8(%ebp),%ebx
6599d0:	33 d2                	xor    %edx,%edx
6599d2:	55                   	push   %ebp
6599d3:	68 4f 9d 65 00       	push   $0x659d4f
6599d8:	64 ff 32             	push   %fs:(%edx)
6599db:	64 89 22             	mov    %esp,%fs:(%edx)
6599de:	66 81 3f bb 00       	cmpw   $0xbb,(%edi)
6599e3:	74 06                	je     0x6599eb
6599e5:	66 83 3f 6b          	cmpw   $0x6b,(%edi)
6599e9:	75 0e                	jne    0x6599f9
6599eb:	68 00 00 e0 3f       	push   $0x3fe00000
6599f0:	6a 00                	push   $0x0
6599f2:	8b c6                	mov    %esi,%eax
6599f4:	e8 b3 fb ff ff       	call   0x6595ac
6599f9:	66 81 3f bd 00       	cmpw   $0xbd,(%edi)
6599fe:	74 06                	je     0x659a06
659a00:	66 83 3f 6d          	cmpw   $0x6d,(%edi)
659a04:	75 0e                	jne    0x659a14
659a06:	68 00 00 e0 3f       	push   $0x3fe00000
659a0b:	6a 00                	push   $0x0
659a0d:	8b c6                	mov    %esi,%eax
659a0f:	e8 4c fc ff ff       	call   0x659660
659a14:	66 83 3f 30          	cmpw   $0x30,(%edi)
659a18:	74 06                	je     0x659a20
659a1a:	66 83 3f 60          	cmpw   $0x60,(%edi)
659a1e:	75 07                	jne    0x659a27
659a20:	8b c6                	mov    %esi,%eax
659a22:	e8 31 e7 ff ff       	call   0x658158
659a27:	66 83 3f 41          	cmpw   $0x41,(%edi)
659a2b:	74 0d                	je     0x659a3a
659a2d:	66 83 3f 6f          	cmpw   $0x6f,(%edi)
659a31:	74 07                	je     0x659a3a
659a33:	66 81 3f bf 00       	cmpw   $0xbf,(%edi)
659a38:	75 07                	jne    0x659a41