1. Си / Говнокод #28995

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    longlong ** FUN_14000e5a0(longlong **param_1,LPCWSTR param_2,int param_3,uint param_4)
    
    {
      uint uVar1;
      longlong **pplVar2;
      longlong **hFile;
      longlong *plVar3;
      longlong **pplVar4;
      DWORD DVar5;
      LONG local_38;
      undefined4 uStack_34;
      
      pplVar4 = (longlong **)0x0;
      uVar1 = param_4 & 0x1f;
      if ((param_4 & 0x1f) == 0) {
        uVar1 = 2;
      }
      pplVar2 = FUN_1400119f8(DAT_1400213a0,(longlong)param_1);
      if (pplVar2 == (longlong **)0x0) {
        return (longlong **)0x0;
      }
      if (param_3 == 1) {
        DVar5 = (DWORD)((param_4 >> 0x11 & 1) != 0);
        if ((param_4 >> 0x12 & 1) != 0) {
          DVar5 = 7;
        }
        hFile = (longlong **)
                CreateFileW(param_2,0x80000000,DVar5,(LPSECURITY_ATTRIBUTES)0x0,3,0x80,(HANDLE)0x0);
    LAB_14000e70c:
        if (hFile == (longlong **)0xffffffffffffffff) goto LAB_14000e7ad;
      }
      else {
        if (param_3 == 2) {
          DVar5 = (DWORD)((param_4 >> 0x11 & 1) != 0);
          if ((param_4 >> 0x12 & 1) != 0) {
            DVar5 = 7;
          }
          hFile = (longlong **)
                  CreateFileW(param_2,0xc0000000,DVar5,(LPSECURITY_ATTRIBUTES)0x0,4,0x80,(HANDLE)0x0);
          goto LAB_14000e70c;
        }
        if (param_3 != 3) {
          hFile = (longlong **)CONCAT44(uStack_34,local_38);
          goto LAB_14000e70c;
        }
        DVar5 = (DWORD)((param_4 >> 0x11 & 1) != 0);
        if ((param_4 >> 0x12 & 1) != 0) {
          DVar5 = 7;
        }
        hFile = (longlong **)
                CreateFileW(param_2,0xc0000000,DVar5,(LPSECURITY_ATTRIBUTES)0x0,2,0x80,(HANDLE)0x0);
        if (hFile == (longlong **)0xffffffffffffffff) {
          hFile = (longlong **)
                  CreateFileW(param_2,0x40000000,DVar5,(LPSECURITY_ATTRIBUTES)0x0,5,0,(HANDLE)0x0);
          goto LAB_14000e70c;
        }
      }
      if (hFile != (longlong **)0x0) {
        if ((DAT_14001f140 == 0) || ((param_4 >> 0x13 & 1) != 0)) {
          pplVar2[1] = (longlong *)0x0;
        }
        else {
          plVar3 = (longlong *)HeapAlloc(DAT_1400204cc,0,(longlong)DAT_14001f140);
          pplVar2[1] = plVar3;
        }
        *pplVar2 = (longlong *)hFile;
        *(int *)(pplVar2 + 2) = DAT_14001f140;
        *(undefined4 *)((longlong)pplVar2 + 0x14) = 0;
        *(uint *)(pplVar2 + 4) = uVar1;
        *(uint *)((longlong)pplVar2 + 0x24) = (uint)(param_3 == 1);
        *(undefined4 *)((longlong)pplVar2 + 0x1c) = 1;
        if ((param_3 == 2) && ((param_4 >> 0x14 & 1) != 0)) {
          local_38 = 0;
          SetFilePointer(hFile,0,&local_38,2);
        }
        pplVar4 = hFile;
        if (param_1 == (longlong **)0xffffffffffffffff) {
          pplVar4 = pplVar2;
        }
        if (pplVar4 != (longlong **)0x0) {
          return pplVar4;
        }
      }
    LAB_14000e7ad:
      if (param_1 == (longlong **)0xffffffffffffffff) {
        param_1 = pplVar2;
      }
      FUN_14001192c(DAT_1400213a0,(longlong)param_1);
      return pplVar4;
    }

    Запостил: BelCodeMonkey, 06 Октября 2024

    Комментарии (5) RSS

    • Тут кал!
      Тут столько кала, что не бывает столько кала
      Ответить
      • Говновоз, говновоз, говновоз...
        Не очистить говна от колёс!
        Ответить
    • Выглядит как херня после декомпилятора
      Ответить
      • Или как исходники интерпретатора «J» или «Перла». Хотя нет, там были бы не param_1, param_2, param_3, а i, j, k.
        Ответить
        • Это точно декомпиляторный высер. Можешь например загуглить CONCAT44 https://stackoverflow.com/questions/69430800
          Ответить

    Добавить комментарий