1extern int f1();
2extern int f2(void*);
3extern void* f3(int);
4int xmsih;
5typedef unsigned short XWCHAR;
6
7inline unsigned int xstrlenW( const XWCHAR *str )
8{
9    const XWCHAR *s = str;
10    while (*s) s++;
11    return s - str;
12}
13
14
15static int msi_dialog_register_class( void )
16{
17    int cls;
18
19    if( !f2( &cls ) )
20        return 0;
21    if( !f2( &cls ) )
22        return 0;
23    xmsih = f1();
24    if( !xmsih )
25        return 0;
26    return 1;
27}
28
29void *xmsi_dialog_create(const XWCHAR* szDialogName)
30{
31    msi_dialog_register_class();
32    return f3(xstrlenW(szDialogName));
33}
34