5808c3:	56                   	push   %esi
5808c4:	8b f1                	mov    %ecx,%esi
5808c6:	e8 35 f7 ff ff       	call   0x580000
5808cb:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
5808cf:	74 0b                	je     0x5808dc
5808d1:	6a 24                	push   $0x24
5808d3:	56                   	push   %esi
5808d4:	e8 99 07 06 00       	call   0x5e1072
5808d9:	83 c4 08             	add    $0x8,%esp
5808dc:	8b c6                	mov    %esi,%eax
5808de:	5e                   	pop    %esi
5808df:	5d                   	pop    %ebp
5808e0:	c2 04 00             	ret    $0x4
5808e3:	cc                   	int3
5808e4:	cc                   	int3
5808e5:	cc                   	int3
5808e6:	cc                   	int3
5808e7:	cc                   	int3
5808e8:	cc                   	int3
5808e9:	cc                   	int3
5808ea:	cc                   	int3
5808eb:	cc                   	int3
5808ec:	cc                   	int3
5808ed:	cc                   	int3
5808ee:	cc                   	int3
5808ef:	cc                   	int3
5808f0:	55                   	push   %ebp
5808f1:	8b ec                	mov    %esp,%ebp
5808f3:	83 ec 08             	sub    $0x8,%esp
5808f6:	f2 0f 10 45 08       	movsd  0x8(%ebp),%xmm0
5808fb:	8d 45 f8             	lea    -0x8(%ebp),%eax
5808fe:	50                   	push   %eax
5808ff:	83 ec 08             	sub    $0x8,%esp
580902:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
580907:	e8 74 f4 07 00       	call   0x5ffd80
58090c:	dd 5d f8             	fstpl  -0x8(%ebp)
58090f:	f2 0f 10 45 f8       	movsd  -0x8(%ebp),%xmm0
580914:	83 c4 0c             	add    $0xc,%esp
580917:	66 0f 2e 05 40 c5 6b 	ucomisd 0x6bc540,%xmm0
58091e:	00
58091f:	9f                   	lahf
580920:	f6 c4 44             	test   $0x44,%ah
580923:	7a 06                	jp     0x58092b
580925:	b0 01                	mov    $0x1,%al
580927:	8b e5                	mov    %ebp,%esp
580929:	5d                   	pop    %ebp
58092a:	c3                   	ret
58092b:	32 c0                	xor    %al,%al
58092d:	8b e5                	mov    %ebp,%esp
58092f:	5d                   	pop    %ebp
580930:	c3                   	ret
580931:	cc                   	int3
580932:	cc                   	int3
580933:	cc                   	int3
580934:	cc                   	int3
580935:	cc                   	int3
580936:	cc                   	int3
580937:	cc                   	int3
580938:	cc                   	int3
580939:	cc                   	int3
58093a:	cc                   	int3
58093b:	cc                   	int3
58093c:	cc                   	int3
58093d:	cc                   	int3
58093e:	cc                   	int3
58093f:	cc                   	int3
580940:	55                   	push   %ebp
580941:	8b ec                	mov    %esp,%ebp
580943:	51                   	push   %ecx
580944:	8b 51 04             	mov    0x4(%ecx),%edx
580947:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
58094c:	2b 11                	sub    (%ecx),%edx
58094e:	f7 ea                	imul   %edx
580950:	53                   	push   %ebx
580951:	c1 fa 02             	sar    $0x2,%edx
580954:	56                   	push   %esi
580955:	ff 75 08             	push   0x8(%ebp)
580958:	8b da                	mov    %edx,%ebx
58095a:	89 4d fc             	mov    %ecx,-0x4(%ebp)
58095d:	c1 eb 1f             	shr    $0x1f,%ebx
580960:	03 da                	add    %edx,%ebx
580962:	e8 f9 46 ec ff       	call   0x445060
580967:	8b f0                	mov    %eax,%esi
580969:	8b 45 fc             	mov    -0x4(%ebp),%eax
58096c:	50                   	push   %eax
58096d:	56                   	push   %esi
58096e:	ff 70 04             	push   0x4(%eax)
580971:	ff 30                	push   (%eax)
580973:	e8 a8 3d ec ff       	call   0x444720
580978:	8b 4d fc             	mov    -0x4(%ebp),%ecx
58097b:	83 c4 10             	add    $0x10,%esp
58097e:	ff 75 08             	push   0x8(%ebp)
580981:	53                   	push   %ebx
580982:	56                   	push   %esi
580983:	e8 48 3a ed ff       	call   0x4543d0
580988:	5e                   	pop    %esi
580989:	5b                   	pop    %ebx
58098a:	8b e5                	mov    %ebp,%esp
58098c:	5d                   	pop    %ebp
58098d:	c2 04 00             	ret    $0x4
580990:	55                   	push   %ebp
580991:	8b ec                	mov    %esp,%ebp
580993:	6a ff                	push   $0xffffffff
580995:	68 98 cb 65 00       	push   $0x65cb98
58099a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5809a0:	50                   	push   %eax
5809a1:	83 ec 18             	sub    $0x18,%esp
5809a4:	56                   	push   %esi
5809a5:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5809aa:	33 c5                	xor    %ebp,%eax
5809ac:	50                   	push   %eax
5809ad:	8d 45 f4             	lea    -0xc(%ebp),%eax
5809b0:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
5809b6:	8b f1                	mov    %ecx,%esi
5809b8:	ff 75 08             	push   0x8(%ebp)
5809bb:	8d 4d dc             	lea    -0x24(%ebp),%ecx
5809be:	e8 dd f0 ff ff       	call   0x57faa0
5809c3:	8b ce                	mov    %esi,%ecx
5809c5:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5809cc:	e8 af 15 00 00       	call   0x581f80
5809d1:	50                   	push   %eax
5809d2:	8b ce                	mov    %esi,%ecx
5809d4:	e8 57 f9 ff ff       	call   0x580330
5809d9:	8b f0                	mov    %eax,%esi
5809db:	8d 45 dc             	lea    -0x24(%ebp),%eax
5809de:	50                   	push   %eax
5809df:	8b ce                	mov    %esi,%ecx
5809e1:	e8 0a 16 00 00       	call   0x581ff0
5809e6:	8d 4d dc             	lea    -0x24(%ebp),%ecx
5809e9:	e8 92 f6 ff ff       	call   0x580080
5809ee:	8b c6                	mov    %esi,%eax
5809f0:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5809f3:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5809fa:	59                   	pop    %ecx
5809fb:	5e                   	pop    %esi
5809fc:	8b e5                	mov    %ebp,%esp
5809fe:	5d                   	pop    %ebp
5809ff:	c2 04 00             	ret    $0x4
580a02:	cc                   	int3
580a03:	cc                   	int3
580a04:	cc                   	int3
580a05:	cc                   	int3
580a06:	cc                   	int3
580a07:	cc                   	int3
580a08:	cc                   	int3
580a09:	cc                   	int3
580a0a:	cc                   	int3
580a0b:	cc                   	int3
580a0c:	cc                   	int3
580a0d:	cc                   	int3
580a0e:	cc                   	int3
580a0f:	cc                   	int3
580a10:	55                   	push   %ebp
580a11:	8b ec                	mov    %esp,%ebp
580a13:	6a ff                	push   $0xffffffff
580a15:	68 a3 ca 65 00       	push   $0x65caa3
580a1a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
580a20:	50                   	push   %eax
580a21:	81 ec b4 00 00 00    	sub    $0xb4,%esp
580a27:	a1 d4 89 72 00       	mov    0x7289d4,%eax
580a2c:	33 c5                	xor    %ebp,%eax
580a2e:	89 45 f0             	mov    %eax,-0x10(%ebp)
580a31:	50                   	push   %eax
580a32:	8d 45 f4             	lea    -0xc(%ebp),%eax
580a35:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
580a3b:	0f be 41 08          	movsbl 0x8(%ecx),%eax
580a3f:	83 f8 05             	cmp    $0x5,%eax
580a42:	77 45                	ja     0x580a89
580a44:	ff 24 85 cc 0a 58 00 	jmp    *0x580acc(,%eax,4)
580a4b:	8a 01                	mov    (%ecx),%al
580a4d:	eb 0d                	jmp    0x580a5c
580a4f:	32 c0                	xor    %al,%al
580a51:	eb 09                	jmp    0x580a5c
580a53:	8b 01                	mov    (%ecx),%eax
580a55:	0b 41 04             	or     0x4(%ecx),%eax
580a58:	74 f5                	je     0x580a4f
580a5a:	b0 01                	mov    $0x1,%al
580a5c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
580a5f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
580a66:	59                   	pop    %ecx
580a67:	8b 4d f0             	mov    -0x10(%ebp),%ecx
580a6a:	33 cd                	xor    %ebp,%ecx
580a6c:	e8 69 0a 06 00       	call   0x5e14da
580a71:	8b e5                	mov    %ebp,%esp
580a73:	5d                   	pop    %ebp
580a74:	c3                   	ret
580a75:	f2 0f 10 01          	movsd  (%ecx),%xmm0
580a79:	66 0f 2e 05 40 c5 6b 	ucomisd 0x6bc540,%xmm0
580a80:	00
580a81:	9f                   	lahf
580a82:	f6 c4 44             	test   $0x44,%ah
580a85:	7b c8                	jnp    0x580a4f
580a87:	eb d1                	jmp    0x580a5a
580a89:	6a 01                	push   $0x1
580a8b:	6a 02                	push   $0x2
580a8d:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
580a93:	e8 98 e2 ff ff       	call   0x57ed30
580a98:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
580a9e:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
580aa5:	68 14 32 6c 00       	push   $0x6c3214
580aaa:	50                   	push   %eax
580aab:	e8 10 a8 f1 ff       	call   0x49b2c0
580ab0:	83 c4 08             	add    $0x8,%esp
580ab3:	8d 45 d8             	lea    -0x28(%ebp),%eax
580ab6:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
580abc:	50                   	push   %eax
580abd:	e8 ee e3 ff ff       	call   0x57eeb0
580ac2:	50                   	push   %eax
580ac3:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
580ac7:	e8 f4 15 00 00       	call   0x5820c0
580acc:	4f                   	dec    %edi
580acd:	0a 58 00             	or     0x0(%eax),%bl
580ad0:	53                   	push   %ebx
580ad1:	0a 58 00             	or     0x0(%eax),%bl
580ad4:	53                   	push   %ebx
580ad5:	0a 58 00             	or     0x0(%eax),%bl
580ad8:	75 0a                	jne    0x580ae4
580ada:	58                   	pop    %eax
580adb:	00 89 0a 58 00 4b    	add    %cl,0x4b00580a(%ecx)
580ae1:	0a 58 00             	or     0x0(%eax),%bl
580ae4:	cc                   	int3
580ae5:	cc                   	int3
580ae6:	cc                   	int3
580ae7:	cc                   	int3
580ae8:	cc                   	int3
580ae9:	cc                   	int3
580aea:	cc                   	int3
580aeb:	cc                   	int3
580aec:	cc                   	int3
580aed:	cc                   	int3
580aee:	cc                   	int3
580aef:	cc                   	int3
580af0:	55                   	push   %ebp
580af1:	8b ec                	mov    %esp,%ebp
580af3:	6a ff                	push   $0xffffffff
580af5:	68 a3 ca 65 00       	push   $0x65caa3
580afa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
580b00:	50                   	push   %eax
580b01:	81 ec b4 00 00 00    	sub    $0xb4,%esp
580b07:	a1 d4 89 72 00       	mov    0x7289d4,%eax
580b0c:	33 c5                	xor    %ebp,%eax
580b0e:	89 45 f0             	mov    %eax,-0x10(%ebp)
580b11:	50                   	push   %eax
580b12:	8d 45 f4             	lea    -0xc(%ebp),%eax
580b15:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
580b1b:	8b c1                	mov    %ecx,%eax
580b1d:	80 78 08 04          	cmpb   $0x4,0x8(%eax)
580b21:	75 32                	jne    0x580b55
580b23:	8b 08                	mov    (%eax),%ecx
580b25:	85 c9                	test   %ecx,%ecx
580b27:	75 04                	jne    0x580b2d
580b29:	33 c0                	xor    %eax,%eax
580b2b:	eb 0f                	jmp    0x580b3c
580b2d:	8b 40 08             	mov    0x8(%eax),%eax
580b30:	c1 e8 08             	shr    $0x8,%eax
580b33:	a8 01                	test   $0x1,%al
580b35:	74 03                	je     0x580b3a
580b37:	83 c1 04             	add    $0x4,%ecx
580b3a:	8b c1                	mov    %ecx,%eax
580b3c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
580b3f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
580b46:	59                   	pop    %ecx
580b47:	8b 4d f0             	mov    -0x10(%ebp),%ecx
580b4a:	33 cd                	xor    %ebp,%ecx
580b4c:	e8 89 09 06 00       	call   0x5e14da
580b51:	8b e5                	mov    %ebp,%esp
580b53:	5d                   	pop    %ebp
580b54:	c3                   	ret
580b55:	6a 01                	push   $0x1
580b57:	6a 02                	push   $0x2
580b59:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
580b5f:	e8 cc e1 ff ff       	call   0x57ed30
580b64:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
580b6a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
580b71:	68 d8 30 6c 00       	push   $0x6c30d8
580b76:	50                   	push   %eax
580b77:	e8 44 a7 f1 ff       	call   0x49b2c0
580b7c:	83 c4 08             	add    $0x8,%esp
580b7f:	8d 45 d8             	lea    -0x28(%ebp),%eax
580b82:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
580b88:	50                   	push   %eax
580b89:	e8 22 e3 ff ff       	call   0x57eeb0
580b8e:	50                   	push   %eax
580b8f:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
580b93:	e8 28 15 00 00       	call   0x5820c0
580b98:	cc                   	int3
580b99:	cc                   	int3
580b9a:	cc                   	int3
580b9b:	cc                   	int3
580b9c:	cc                   	int3
580b9d:	cc                   	int3
580b9e:	cc                   	int3
580b9f:	cc                   	int3
580ba0:	55                   	push   %ebp
580ba1:	8b ec                	mov    %esp,%ebp
580ba3:	6a ff                	push   $0xffffffff
580ba5:	68 d3 cb 65 00       	push   $0x65cbd3
580baa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
580bb0:	50                   	push   %eax
580bb1:	81 ec bc 00 00 00    	sub    $0xbc,%esp
580bb7:	a1 d4 89 72 00       	mov    0x7289d4,%eax
580bbc:	33 c5                	xor    %ebp,%eax
580bbe:	89 45 f0             	mov    %eax,-0x10(%ebp)
580bc1:	50                   	push   %eax
580bc2:	8d 45 f4             	lea    -0xc(%ebp),%eax
580bc5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
580bcb:	0f be 41 08          	movsbl 0x8(%ecx),%eax
580bcf:	83 f8 05             	cmp    $0x5,%eax
580bd2:	77 72                	ja     0x580c46
580bd4:	ff 24 85 8c 0c 58 00 	jmp    *0x580c8c(,%eax,4)
580bdb:	8b 51 04             	mov    0x4(%ecx),%edx
580bde:	8b 09                	mov    (%ecx),%ecx
580be0:	e8 bb 0c 06 00       	call   0x5e18a0
580be5:	f2 0f 11 45 d0       	movsd  %xmm0,-0x30(%ebp)
580bea:	dd 45 d0             	fldl   -0x30(%ebp)
580bed:	8b 4d f4             	mov    -0xc(%ebp),%ecx
580bf0:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
580bf7:	59                   	pop    %ecx
580bf8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
580bfb:	33 cd                	xor    %ebp,%ecx
580bfd:	e8 d8 08 06 00       	call   0x5e14da
580c02:	8b e5                	mov    %ebp,%esp
580c04:	5d                   	pop    %ebp
580c05:	c3                   	ret
580c06:	8b 51 04             	mov    0x4(%ecx),%edx
580c09:	8b 09                	mov    (%ecx),%ecx
580c0b:	e8 30 0c 06 00       	call   0x5e1840
580c10:	f2 0f 11 45 d0       	movsd  %xmm0,-0x30(%ebp)
580c15:	dd 45 d0             	fldl   -0x30(%ebp)
580c18:	eb d3                	jmp    0x580bed
580c1a:	dd 01                	fldl   (%ecx)
580c1c:	eb cf                	jmp    0x580bed
580c1e:	d9 ee                	fldz
580c20:	eb cb                	jmp    0x580bed
580c22:	80 39 00             	cmpb   $0x0,(%ecx)
580c25:	74 12                	je     0x580c39
580c27:	f2 0f 10 05 00 9c 6a 	movsd  0x6a9c00,%xmm0
580c2e:	00
580c2f:	f2 0f 11 45 d0       	movsd  %xmm0,-0x30(%ebp)
580c34:	dd 45 d0             	fldl   -0x30(%ebp)
580c37:	eb b4                	jmp    0x580bed
580c39:	0f 57 c0             	xorps  %xmm0,%xmm0
580c3c:	f2 0f 11 45 d0       	movsd  %xmm0,-0x30(%ebp)
580c41:	dd 45 d0             	fldl   -0x30(%ebp)
580c44:	eb a7                	jmp    0x580bed
580c46:	6a 01                	push   $0x1
580c48:	6a 02                	push   $0x2
580c4a:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
580c50:	e8 db e0 ff ff       	call   0x57ed30
580c55:	8d 85 38 ff ff ff    	lea    -0xc8(%ebp),%eax