void script_37(int arg0,int arg1,int arg2,int arg3) { int ivar4; int ivar5; ivar4 = subtract(getWidgetScrollMaxV(new WidgetPointer(arg1)), getWidgetActualHeight(new WidgetPointer(arg1))); if (((boolean)ivar4)) { ivar4 = 1; } if (arg2 < 0) { arg2 = 0; } if (arg2 > ivar4) { arg2 = ivar4; } cs2method2100(0, arg2, new WidgetPointer(arg1)); switch (arg1) { case 8978490: globalint_7 = arg2; break; case 19660815: globalint_109 = arg2; break; case 48168973: globalint_121 = arg2; break; case 49938525: script_705(bitconfig_4893, arg2); break; case 59572276: globalint_1122 = arg2; break; case 59768852: globalint_1124 = arg2; break; case 12255233: globalint_88 = arg2; break; case 73007109: script_5082(arg1); } ivar5 = 0; if (((boolean)arg3)) { ivar5 = subtract(subtract(getWidgetActualHeight(new WidgetPointer(arg0)), 32), getWidgetActualHeight()); setWidgetPosition(0, add(16, multiplyDivide(arg2, ivar4, ivar5)), 0, 0); if (setWidgetRegister(new WidgetPointer(arg0), 2)) { setWidgetPosition(0, getWidgetActualY(), 0, 0); } if (setWidgetRegister(new WidgetPointer(arg0), 3)) { setWidgetPosition(0, subtract(add(getWidgetActualY(), getWidgetActualHeight()), 5), 0, 0); } } return; }