SELECT 
  SQL_CALC_FOUND_ROWS products.product_id, 
  IF(
    shared_descr.product_id IS NOT NULL, 
    shared_descr.product, descr1.product
  ) as product, 
  companies.company as company_name, 
  products.product_type, 
  products.parent_product_id 
FROM 
  cscart_products as products 
  LEFT JOIN cscart_product_descriptions as descr1 ON descr1.product_id = products.product_id 
  AND descr1.lang_code = 'en' 
  LEFT JOIN cscart_product_prices as prices ON prices.product_id = products.product_id 
  AND prices.lower_limit = 1 
  LEFT JOIN cscart_companies AS companies ON companies.company_id = products.company_id 
  INNER JOIN cscart_products_categories as products_categories ON products_categories.product_id = products.product_id 
  INNER JOIN cscart_categories ON cscart_categories.category_id = products_categories.category_id 
  AND (
    cscart_categories.usergroup_ids = '' 
    OR FIND_IN_SET(
      0, cscart_categories.usergroup_ids
    ) 
    OR FIND_IN_SET(
      1, cscart_categories.usergroup_ids
    )
  ) 
  AND cscart_categories.status IN ('A', 'H') 
  AND cscart_categories.storefront_id IN (0, 1) 
  LEFT JOIN cscart_ult_product_descriptions shared_descr ON shared_descr.product_id = products.product_id 
  AND shared_descr.company_id = 1 
  AND shared_descr.lang_code = 'en' 
  LEFT JOIN cscart_product_restricted_countries AS prc ON prc.product_id = products.product_id 
  AND prc.country_code = 'US' 
  LEFT JOIN cscart_discussion ON cscart_discussion.object_id = products.product_id 
  AND cscart_discussion.object_type = 'P' 
  LEFT JOIN (
    SELECT 
      cscart_discussion_rating.thread_id, 
      AVG(
        cscart_discussion_rating.rating_value
      ) AS overall_rating 
    FROM 
      cscart_discussion_rating 
    GROUP BY 
      thread_id
  ) AS ratings ON ratings.thread_id = cscart_discussion.thread_id 
WHERE 
  1 
  AND cscart_categories.category_id IN (6, 35, 80) 
  AND companies.status IN ('A') 
  AND (
    products.usergroup_ids = '' 
    OR FIND_IN_SET(0, products.usergroup_ids) 
    OR FIND_IN_SET(1, products.usergroup_ids)
  ) 
  AND products.status IN ('A') 
  AND prices.usergroup_id IN (0, 0, 1) 
  AND (
    products.available_worldwide = 'Y' 
    OR prc.country_code IS NULL
  ) 
  AND !(
    products.out_of_stock_actions = 'B' && products.avail_since > 1747385399
  ) 
  AND products.parent_product_id = 0 
GROUP BY 
  products.product_id 
ORDER BY 
  products.timestamp desc, 
  products.product_id desc, 
  products.product_id ASC 
LIMIT 
  5240, 40

Query time 0.13555

Explain
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY companies ALL PRIMARY 1 Using where; Using temporary; Using filesort
1 PRIMARY cscart_categories range PRIMARY,c_status,p_category_id PRIMARY 3 3 Using where; Using join buffer (flat, BNL join)
1 PRIMARY products_categories ref PRIMARY,pt PRIMARY 3 toolboxdigitalshop_dev.cscart_categories.category_id 908 Using index
1 PRIMARY products eq_ref PRIMARY,status,idx_parent_product_id PRIMARY 3 toolboxdigitalshop_dev.products_categories.product_id 1 Using where
1 PRIMARY shared_descr eq_ref PRIMARY,product_id,company_id PRIMARY 13 toolboxdigitalshop_dev.products_categories.product_id,const,const 1 Using where
1 PRIMARY prc eq_ref PRIMARY PRIMARY 9 toolboxdigitalshop_dev.products_categories.product_id,const 1 Using where; Using index
1 PRIMARY cscart_discussion ref object_id object_id 6 toolboxdigitalshop_dev.products_categories.product_id,const 1 Using where; Using index
1 PRIMARY descr1 eq_ref PRIMARY,product_id PRIMARY 9 toolboxdigitalshop_dev.products_categories.product_id,const 1 Using where
1 PRIMARY prices ref usergroup,product_id,lower_limit,usergroup_id usergroup 3 toolboxdigitalshop_dev.products_categories.product_id 1 Using where; Using index
1 PRIMARY <derived2> ref key0 key0 4 toolboxdigitalshop_dev.cscart_discussion.thread_id 2 Using where
2 DERIVED cscart_discussion_rating ALL thread_id 1 Using temporary; Using filesort

Result

product_id product company_name product_type parent_product_id
70121 Major Rager Toolbox Digital Shop P 0
70812 13 Acid Tears Toolbox Digital Shop P 0
70727 Feel The Filth Toolbox Digital Shop P 0
70339 Kiss Myself (Original Mix) Toolbox Digital Shop P 0
70697 TDOG Dubz Vol.18 Toolbox Digital Shop P 0
70696 Queen of the Night Toolbox Digital Shop P 0
70695 TDOG Dubz Vol.17 Toolbox Digital Shop P 0
70694 4Ever Toolbox Digital Shop P 0
70640 Misunderstood Toolbox Digital Shop P 0
70600 Luna Toolbox Digital Shop P 0
70584 Bring It On Toolbox Digital Shop P 0
70539 Like It, If You Like Toolbox Digital Shop P 0
70432 WAIT FOR ME Toolbox Digital Shop P 0
70357 Boner (Original Mix) Toolbox Digital Shop P 0
70587 2Crack Toolbox Digital Shop P 0
70586 Delirious Toolbox Digital Shop P 0
70583 Feelin' Alive Toolbox Digital Shop P 0
70579 Hoedown Toolbox Digital Shop P 0
70537 Monster (Original Remix) Toolbox Digital Shop P 0
70493 Man Hunt Toolbox Digital Shop P 0
70120 Hoover Jam Toolbox Digital Shop P 0
69978 Always Need You (Original Mix) Toolbox Digital Shop P 0
69977 Always Need You (Radio Edit) Toolbox Digital Shop P 0
70358 Fuk All Ya Toolbox Digital Shop P 0
70462 Flump-weee Toolbox Digital Shop P 0
70459 TDOG Dubz Vol. 16 Toolbox Digital Shop P 0
70458 C4 To The Floor Toolbox Digital Shop P 0
70433 Fired Up Toolbox Digital Shop P 0
69982 Rock Your Body (Up And Down) Toolbox Digital Shop P 0
70435 Slim Boy Fat Toolbox Digital Shop P 0
70434 Only Your Lovin' Toolbox Digital Shop P 0
70362 Come With Me Toolbox Digital Shop P 0
70015 Narcotica (Original Mix) Toolbox Digital Shop P 0
70014 A Few Seconds (Original Mix) Toolbox Digital Shop P 0
70235 It's A Dream Toolbox Digital Shop P 0
70234 Yo DJ Toolbox Digital Shop P 0
70161 Unreadable Toolbox Digital Shop P 0
70119 One Last Time Toolbox Digital Shop P 0
69980 D6 (Miss Detonate Remix) Toolbox Digital Shop P 0
69745 Our Love (Original Mix) Toolbox Digital Shop P 0