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 (1, 28, 37) 
  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 > 1747386101
  ) 
  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 
  5080, 20

Query time 0.25063

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
87105 Think About (Original Mix) Toolbox Digital Shop P 0
87104 Supercharged (Original Mix) Toolbox Digital Shop P 0
87103 Still Here (Original Mix) Toolbox Digital Shop P 0
87102 Everybody Wants Kiss (Original Mix) Toolbox Digital Shop P 0
87101 Dance With The Devil (Original Mix) Toolbox Digital Shop P 0
87100 Don't Break My Heart (Club Mix) Toolbox Digital Shop P 0
87099 Cookie 008 (Original Mix) Toolbox Digital Shop P 0
87098 Wanna Take A Ride (Original Mix) Toolbox Digital Shop P 0
87097 Self (Original Mix) Toolbox Digital Shop P 0
87096 Charged Up (Original Mix) Toolbox Digital Shop P 0
87095 OG (Original Mix) Toolbox Digital Shop P 0
87094 Hit The Floor (Original Mix) Toolbox Digital Shop P 0
87093 Zombie (Original Mix) Toolbox Digital Shop P 0
87092 On Fire (Extended Mix) Toolbox Digital Shop P 0
87091 Voodoo Poky (Original Mix) Toolbox Digital Shop P 0
87090 Strong (Original Mix) Toolbox Digital Shop P 0
87089 And I'm Like (DJ Edit) Toolbox Digital Shop P 0
87088 Everything Changes (Freeform Mix) Toolbox Digital Shop P 0
87087 Anima (Splinta Remix) Toolbox Digital Shop P 0
87086 Surge (Original Mix) Toolbox Digital Shop P 0