The initial script "_utils.py.in" of pyside2 looks for a wrong DLL pattern:
        if sys.platform == 'win32':
            pattern = ["QtCore*.dll"]
        else:
            ...
The pattern should be "Qt5Core*.dll" instead.
The other problem is "rc_struct", "rc_name", "rc_data" always be garbage collected which makes the registered qt.conf resource invalid.
rc_struct, rc_name, rc_data = _get_qt_conf_resource(prefix, binaries,
                                                         plugins, imports,
                                                         translations)
A solution could be declaring the three variables global.
global rc_struct, rc_name, rc_data