Advertisement
Guest User

Untitled

a guest
Nov 19th, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.14 KB | None | 0 0
  1. signed int __cdecl Script_GetLFGDungeonRewardCapBarInfo(int a1)
  2. {
  3. int v2; // esi
  4. int v3; // eax
  5. signed int *v4; // edi
  6. LFG_SLOT_INFO *v5; // ebx
  7. int v6; // eax
  8. int v7; // esi
  9. LFG_SLOT_INFO *v8; // eax
  10. int v9; // edx
  11. int v10; // eax
  12. int v11; // eax
  13. signed int v12; // esi
  14. signed int v13; // [esp+2Ch] [ebp-3Ch]
  15. int v14; // [esp+30h] [ebp-38h]
  16. signed int v15; // [esp+34h] [ebp-34h]
  17. int v16; // [esp+38h] [ebp-30h]
  18. signed int v17; // [esp+3Ch] [ebp-2Ch]
  19. int v18; // [esp+40h] [ebp-28h]
  20. signed int v19; // [esp+44h] [ebp-24h]
  21. int v20; // [esp+48h] [ebp-20h]
  22. int v21; // [esp+4Ch] [ebp-1Ch]
  23.  
  24. if ( !lua_isnumber(a1, 1) )
  25. {
  26. luaL_error(a1, "Usage: GetLFGDungeonRewardCapBarInfo(dungeonID)");
  27. return 0;
  28. }
  29. v2 = lua_tointeger(a1, 1);
  30. if ( g_lfgDungeonsDB[1] < 0 )
  31. SErrDisplayError(-2062548992, "../DB/WowClientDB.h", 117, "m_numRecords >= 0", 0, 1, 0, 286331153);
  32. v3 = g_lfgDungeonsDB[3];
  33. if ( v2 < v3 )
  34. return 0;
  35. if ( v2 > g_lfgDungeonsDB[2] )
  36. return 0;
  37. v4 = *(signed int **)(g_lfgDungeonsDB[6] + 4 * (v2 - v3));
  38. if ( !v4 || !byte_1766468 || (unsigned __int8)dword_176647C & 1 || !dword_176647C )
  39. return 0;
  40. v5 = dword_176647C;
  41. v6 = (v4[10] << 24) | v2 & 0xFFFFFF;
  42. if ( v6 != *((_DWORD *)dword_176647C + 2) )
  43. {
  44. do
  45. {
  46. v5 = (LFG_SLOT_INFO *)*((_DWORD *)v5 + 1);
  47. if ( (unsigned __int8)v5 & 1 || !v5 )
  48. return 0;
  49. }
  50. while ( v6 != *((_DWORD *)v5 + 2) );
  51. }
  52. v7 = *((_DWORD *)v5 + 6);
  53. if ( !v7 )
  54. {
  55. lua_pushnumber(a1, 0.0);
  56. lua_pushnumber(a1, (double)*v4);
  57. lua_pushnumber(a1, (double)*((signed int *)v5 + 7));
  58. lua_pushnumber(a1, (double)*((signed int *)v5 + 8));
  59. lua_pushnumber(a1, (double)*((signed int *)v5 + 9));
  60. lua_pushnumber(a1, (double)*((signed int *)v5 + 10));
  61. lua_pushnumber(a1, (double)*((signed int *)v5 + 11));
  62. lua_pushnumber(a1, (double)*((signed int *)v5 + 12));
  63. lua_pushnumber(a1, (double)*((signed int *)v5 + 13));
  64. lua_pushnumber(a1, (double)*((signed int *)v5 + 14));
  65. return 10;
  66. }
  67. if ( dword_176647C )
  68. {
  69. v8 = dword_176647C;
  70. v16 = 0;
  71. v18 = 0;
  72. v19 = -1;
  73. v21 = -1;
  74. v13 = -1;
  75. v14 = 0;
  76. v15 = -1;
  77. v17 = -1;
  78. v20 = 0;
  79. while ( 1 )
  80. {
  81. if ( v7 != *((_DWORD *)v8 + 6) )
  82. goto LABEL_22;
  83. if ( !v14 )
  84. break;
  85. v9 = *((_DWORD *)v8 + 8);
  86. if ( v14 > v9 )
  87. goto LABEL_27;
  88. LABEL_22:
  89. v8 = (LFG_SLOT_INFO *)*((_DWORD *)v8 + 1);
  90. if ( (unsigned __int8)v8 & 1 || !v8 )
  91. goto LABEL_31;
  92. }
  93. v9 = *((_DWORD *)v8 + 8);
  94. LABEL_27:
  95. v21 = *((_DWORD *)v8 + 2) & 0xFFFFFF;
  96. v13 = *((_DWORD *)v8 + 7);
  97. v15 = *((_DWORD *)v8 + 9);
  98. v16 = *((_DWORD *)v8 + 10);
  99. v17 = *((_DWORD *)v8 + 11);
  100. v18 = *((_DWORD *)v8 + 12);
  101. v19 = *((_DWORD *)v8 + 13);
  102. v20 = *((_DWORD *)v8 + 14);
  103. v14 = v9;
  104. goto LABEL_22;
  105. }
  106. v16 = 0;
  107. v18 = 0;
  108. v19 = -1;
  109. v21 = -1;
  110. v13 = -1;
  111. v14 = 0;
  112. v15 = -1;
  113. v17 = -1;
  114. v20 = 0;
  115. LABEL_31:
  116. if ( g_currencyTypesDB[1] < 0 )
  117. SErrDisplayError(-2062548992, "../DB/WowClientDB.h", 117, "m_numRecords >= 0", 0, 1, 0, 286331153);
  118. v10 = g_currencyTypesDB[3];
  119. if ( v7 < v10 )
  120. return 0;
  121. if ( v7 > g_currencyTypesDB[2] )
  122. return 0;
  123. v11 = *(_DWORD *)(g_currencyTypesDB[6] + 4 * (v7 - v10));
  124. if ( !v11 )
  125. return 0;
  126. v12 = (*(_DWORD *)(v11 + 36) & 8u) < 1 ? 1 : 100;
  127. if ( v21 == -1 )
  128. SErrDisplayError(
  129. -2062548992,
  130. "/Users/patchman/buildserver/wow-b/work/WoW-code/trunk/WoW/Source/Mac/../Ui/LFGInfo.cpp",
  131. 4362,
  132. "tier1QueueID != -1",
  133. 0,
  134. 1,
  135. 0,
  136. 286331153);
  137. lua_pushnumber(a1, (double)*((signed int *)v5 + 6));
  138. lua_pushnumber(a1, (double)v21);
  139. lua_pushnumber(a1, (double)(v13 / v12));
  140. lua_pushnumber(a1, (double)(v14 / v12));
  141. lua_pushnumber(a1, (double)(v15 / v12));
  142. lua_pushnumber(a1, (double)(v16 / v12));
  143. lua_pushnumber(a1, (double)(v17 / v12));
  144. lua_pushnumber(a1, (double)(v18 / v12));
  145. lua_pushnumber(a1, (double)(v19 / v12));
  146. lua_pushnumber(a1, (double)(v20 / v12));
  147. return 10;
  148. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement