fork download
  1. //Функция 1
  2. var_20 = -0x20
  3. .text:00493E70
  4. .text:00493E70 ; __unwind {
  5. .text:00493E70 STMFD SP!, {R4,R5,LR}
  6. .text:00493E74 LDR R4, =(dword_137318C - 0x493E84)
  7. .text:00493E78 SUB SP, SP, #0x14
  8. .text:00493E7C ADD R4, PC, R4 ; dword_137318C
  9. .text:00493E80 LDR R2, [R4,#(dword_13731A8 - 0x137318C)]
  10. .text:00493E84 CMP R2, #0
  11. .text:00493E88 BEQ loc_493F08
  12. .text:00493E8C LDR R1, [R4,#(dword_13731B0 - 0x137318C)]
  13. .text:00493E90 LDR R0, [R4,#(dword_13731AC - 0x137318C)]
  14. .text:00493E94 BL _ZN7_JNIEnv22CallStaticObjectMethodEP7_jclassP10_jmethodIDz ; _JNIEnv::CallStaticObjectMethod(_jclass *,_jmethodID *,...)
  15. .text:00493E98 SUBS R1, R0, #0
  16. .text:00493E9C BEQ loc_493F08
  17. .text:00493EA0 LDR R3, [R4,#(dword_13731AC - 0x137318C)]
  18. .text:00493EA4 MOV R2, #0
  19. .text:00493EA8 MOV R0, R3
  20. .text:00493EAC LDR R3, [R3]
  21. .text:00493EB0 MOV LR, PC
  22. .text:00493EB4 LDR PC, [R3,#0x2EC]
  23. .text:00493EB8 LDR R12, [R4]
  24. .text:00493EBC LDR R1, =(aGaia - 0x493EC8)
  25. .text:00493EC0 ADD R1, PC, R1 ; "GAIA"
  26. .text:00493EC4 MOV LR, R0
  27. .text:00493EC8 MOV R0, #4
  28. .text:00493ECC LDR R2, [LR]
  29. .text:00493ED0 MOV R3, R2
  30. .text:00493ED4 STR R2, [R12]
  31. .text:00493ED8 LDR R4, [LR,#4]
  32. .text:00493EDC LDR R2, =(aGluid1DDDD - 0x493EEC)
  33. .text:00493EE0 STR R4, [R12,#4]
  34. .text:00493EE4 ADD R2, PC, R2 ; "GLUID1: %d,%d,%d,%d"
  35. .text:00493EE8 LDR R5, [LR,#8]
  36. .text:00493EEC STR R5, [R12,#8]
  37. .text:00493EF0 LDR LR, [LR,#0xC]
  38. .text:00493EF4 STR LR, [R12,#0xC]
  39. .text:00493EF8 STR R4, [SP,#0x20+var_20]
  40. .text:00493EFC LDR R12, [R12,#8]
  41. .text:00493F00 STMFA SP, {R12,LR}
  42. .text:00493F04 BL __android_log_print
  43. .text:00493F08
  44. .text:00493F08 loc_493F08 ; CODE XREF: myfunction(void)+18↑j
  45. .text:00493F08 ; myfunction(void)+2C↑j
  46. .text:00493F08 ADD SP, SP, #0x14
  47. .text:00493F0C LDMFD SP!, {R4,R5,PC}
  48.  
  49. //Ее псевдокод:
  50. int v4; // r1
  51. int *v5; // r0 почему int?
  52. _DWORD *v6; // r12
  53. int v7; // r3
  54. int v8; // r4
  55. int v9; // lr
  56.  
  57. if ( dword_13731A8 )
  58. {
  59. v4 = _JNIEnv::CallStaticObjectMethod(dword_13731AC, dword_13731B0, dword_13731A8, a4);
  60. if ( v4 )
  61. {
  62. /**Почему самым первым стоит int?**/ v5 = (int *)(*(int (__fastcall **)(int, int, _DWORD))(*(_DWORD *)dword_13731AC + 748))(dword_13731AC, v4, 0);
  63. v6 = (_DWORD *)dword_137318C;
  64. v7 = *v5;
  65. *(_DWORD *)dword_137318C = *v5;
  66. v8 = v5[1];
  67. v6[1] = v8;
  68. v6[2] = v5[2];
  69. v9 = v5[3];
  70. v6[3] = v9;
  71. _android_log_print(4, "GAIA", "GLUID1: %d,%d,%d,%d", v7, v8, v6[2], v9);
  72. }
  73. }
  74. }
  75.  
  76.  
  77. //Функция 2
  78. ; __unwind {
  79. .text:004A7764 STMFD SP!, {R4,LR}
  80. .text:004A7768 LDR R4, =(dword_13DDE80 - 0x4A7774)
  81. .text:004A776C ADD R4, PC, R4 ; dword_13DDE80
  82. .text:004A7770 LDR R2, [R4,#(dword_13DDE9C - 0x13DDE80)]
  83. .text:004A7774 CMP R2, #0
  84. .text:004A7778 LDMEQFD SP!, {R4,PC}
  85. .text:004A777C LDR R1, [R4,#(dword_13DDEA4 - 0x13DDE80)]
  86. .text:004A7780 LDR R0, [R4,#(dword_13DDEA0 - 0x13DDE80)]
  87. .text:004A7784 BL _ZN7_JNIEnv22CallStaticObjectMethodEP7_jclassP10_jmethodIDz ; _JNIEnv::CallStaticObjectMethod(_jclass *,_jmethodID *,...)
  88. .text:004A7788 SUBS R1, R0, #0
  89. .text:004A778C LDMEQFD SP!, {R4,PC}
  90. .text:004A7790 LDR R3, [R4,#(dword_13DDEA0 - 0x13DDE80)]
  91. .text:004A7794 MOV R2, #0
  92. .text:004A7798 MOV R0, R3
  93. .text:004A779C LDR R3, [R3]
  94. .text:004A77A0 MOV LR, PC
  95. .text:004A77A4 LDR PC, [R3,#0x2EC]
  96. .text:004A77A8 LDR R3, [R4]
  97. .text:004A77AC LDR R2, [R0]
  98. .text:004A77B0 STR R2, [R3]
  99. .text:004A77B4 LDR R2, [R0,#4]
  100. .text:004A77B8 STR R2, [R3,#4]
  101. .text:004A77BC LDR R2, [R0,#8]
  102. .text:004A77C0 STR R2, [R3,#8]
  103. .text:004A77C4 LDR R2, [R0,#0xC]
  104. .text:004A77C8 STR R2, [R3,#0xC]
  105. .text:004A77CC LDMFD SP!, {R4,PC}
  106.  
  107. //Ее псевдокод:
  108. {
  109. int v0; // r1
  110. _DWORD *v1; // r0 почему Dword?
  111. _DWORD *v2; // r3
  112.  
  113. if ( dword_13DDE9C )
  114. {
  115. v0 = _JNIEnv::CallStaticObjectMethod(dword_13DDEA0, dword_13DDEA4);
  116. if ( v0 )
  117. {
  118. /**А здесь Dword первым стоит**/ v1 = (_DWORD *)(*(int (__fastcall **)(int, int, _DWORD))(*(_DWORD *)dword_13DDEA0 + 748))(dword_13DDEA0, v0, 0);
  119. v2 = (_DWORD *)dword_13DDE80;
  120. *(_DWORD *)dword_13DDE80 = *v1;
  121. v2[1] = v1[1];
  122. v2[2] = v1[2];
  123. v2[3] = v1[3];
  124. }
  125. }
  126. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp:7:56: error: stray ‘#’ in program
 .text:00493E78                 SUB             SP, SP, #0x14
                                                        ^
prog.cpp:9:56: error: stray ‘#’ in program
 .text:00493E80                 LDR             R2, [R4,#(dword_13731A8 - 0x137318C)]
                                                        ^
prog.cpp:10:52: error: stray ‘#’ in program
 .text:00493E84                 CMP             R2, #0
                                                    ^
prog.cpp:12:56: error: stray ‘#’ in program
 .text:00493E8C                 LDR             R1, [R4,#(dword_13731B0 - 0x137318C)]
                                                        ^
prog.cpp:13:56: error: stray ‘#’ in program
 .text:00493E90                 LDR             R0, [R4,#(dword_13731AC - 0x137318C)]
                                                        ^
prog.cpp:15:56: error: stray ‘#’ in program
 .text:00493E98                 SUBS            R1, R0, #0
                                                        ^
prog.cpp:17:7: error: exponent has no digits
 .text:00493EA0                 LDR             R3, [R4,#(dword_13731AC - 0x137318C)]
       ^~~~~~~~
prog.cpp:17:56: error: stray ‘#’ in program
 .text:00493EA0                 LDR             R3, [R4,#(dword_13731AC - 0x137318C)]
                                                        ^
prog.cpp:18:7: error: exponent has no digits
 .text:00493EA4                 MOV             R2, #0
       ^~~~~~~~
prog.cpp:18:52: error: stray ‘#’ in program
 .text:00493EA4                 MOV             R2, #0
                                                    ^
prog.cpp:19:7: error: exponent has no digits
 .text:00493EA8                 MOV             R0, R3
       ^~~~~~~~
prog.cpp:20:7: error: exponent has no digits
 .text:00493EAC                 LDR             R3, [R3]
       ^~~~~~~~
prog.cpp:21:7: error: exponent has no digits
 .text:00493EB0                 MOV             LR, PC
       ^~~~~~~~
prog.cpp:22:7: error: exponent has no digits
 .text:00493EB4                 LDR             PC, [R3,#0x2EC]
       ^~~~~~~~
prog.cpp:22:56: error: stray ‘#’ in program
 .text:00493EB4                 LDR             PC, [R3,#0x2EC]
                                                        ^
prog.cpp:23:7: error: exponent has no digits
 .text:00493EB8                 LDR             R12, [R4]
       ^~~~~~~~
prog.cpp:24:7: error: exponent has no digits
 .text:00493EBC                 LDR             R1, =(aGaia - 0x493EC8)
       ^~~~~~~~
prog.cpp:25:7: error: exponent has no digits
 .text:00493EC0                 ADD             R1, PC, R1 ; "GAIA"
       ^~~~~~~~
prog.cpp:26:7: error: exponent has no digits
 .text:00493EC4                 MOV             LR, R0
       ^~~~~~~~
prog.cpp:27:7: error: exponent has no digits
 .text:00493EC8                 MOV             R0, #4
       ^~~~~~~~
prog.cpp:27:52: error: stray ‘#’ in program
 .text:00493EC8                 MOV             R0, #4
                                                    ^
prog.cpp:28:7: error: exponent has no digits
 .text:00493ECC                 LDR             R2, [LR]
       ^~~~~~~~
prog.cpp:29:7: error: exponent has no digits
 .text:00493ED0                 MOV             R3, R2
       ^~~~~~~~
prog.cpp:30:7: error: exponent has no digits
 .text:00493ED4                 STR             R2, [R12]
       ^~~~~~~~
prog.cpp:31:7: error: exponent has no digits
 .text:00493ED8                 LDR             R4, [LR,#4]
       ^~~~~~~~
prog.cpp:31:56: error: stray ‘#’ in program
 .text:00493ED8                 LDR             R4, [LR,#4]
                                                        ^
prog.cpp:32:7: error: exponent has no digits
 .text:00493EDC                 LDR             R2, =(aGluid1DDDD - 0x493EEC)
       ^~~~~~~~
prog.cpp:33:7: error: exponent has no digits
 .text:00493EE0                 STR             R4, [R12,#4]
       ^~~~~~~~
prog.cpp:33:57: error: stray ‘#’ in program
 .text:00493EE0                 STR             R4, [R12,#4]
                                                         ^
prog.cpp:34:7: error: exponent has no digits
 .text:00493EE4                 ADD             R2, PC, R2 ; "GLUID1: %d,%d,%d,%d"
       ^~~~~~~~
prog.cpp:35:7: error: exponent has no digits
 .text:00493EE8                 LDR             R5, [LR,#8]
       ^~~~~~~~
prog.cpp:35:56: error: stray ‘#’ in program
 .text:00493EE8                 LDR             R5, [LR,#8]
                                                        ^
prog.cpp:36:7: error: exponent has no digits
 .text:00493EEC                 STR             R5, [R12,#8]
       ^~~~~~~~
prog.cpp:36:57: error: stray ‘#’ in program
 .text:00493EEC                 STR             R5, [R12,#8]
                                                         ^
prog.cpp:37:7: error: exponent has no digits
 .text:00493EF0                 LDR             LR, [LR,#0xC]
       ^~~~~~~~
prog.cpp:37:56: error: stray ‘#’ in program
 .text:00493EF0                 LDR             LR, [LR,#0xC]
                                                        ^
prog.cpp:38:7: error: exponent has no digits
 .text:00493EF4                 STR             LR, [R12,#0xC]
       ^~~~~~~~
prog.cpp:38:57: error: stray ‘#’ in program
 .text:00493EF4                 STR             LR, [R12,#0xC]
                                                         ^
prog.cpp:39:7: error: exponent has no digits
 .text:00493EF8                 STR             R4, [SP,#0x20+var_20]
       ^~~~~~~~
prog.cpp:39:56: error: stray ‘#’ in program
 .text:00493EF8                 STR             R4, [SP,#0x20+var_20]
                                                        ^
prog.cpp:40:7: error: exponent has no digits
 .text:00493EFC                 LDR             R12, [R12,#8]
       ^~~~~~~~
prog.cpp:40:58: error: stray ‘#’ in program
 .text:00493EFC                 LDR             R12, [R12,#8]
                                                          ^
prog.cpp:41:7: error: invalid digit "9" in octal constant
 .text:00493F00                 STMFA           SP, {R12,LR}
       ^~~~~~~~
prog.cpp:42:7: error: invalid digit "9" in octal constant
 .text:00493F04                 BL              __android_log_print
       ^~~~~~~~
prog.cpp:43:7: error: invalid digit "9" in octal constant
 .text:00493F08
       ^~~~~~~~
prog.cpp:44:7: error: invalid digit "9" in octal constant
 .text:00493F08 loc_493F08                              ; CODE XREF: myfunction(void)+18↑j
       ^~~~~~~~
prog.cpp:44:88: error: stray ‘\342’ in program
 .text:00493F08 loc_493F08                              ; CODE XREF: myfunction(void)+18↑j
                                                                                        ^
prog.cpp:44:89: error: stray ‘\206’ in program
 .text:00493F08 loc_493F08                              ; CODE XREF: myfunction(void)+18↑j
                                                                                         ^
prog.cpp:44:90: error: stray ‘\221’ in program
 .text:00493F08 loc_493F08                              ; CODE XREF: myfunction(void)+18↑j
                                                                                          ^
prog.cpp:45:7: error: invalid digit "9" in octal constant
 .text:00493F08                                         ; myfunction(void)+2C↑j
       ^~~~~~~~
prog.cpp:45:77: error: stray ‘\342’ in program
 .text:00493F08                                         ; myfunction(void)+2C↑j
                                                                             ^
prog.cpp:45:78: error: stray ‘\206’ in program
 .text:00493F08                                         ; myfunction(void)+2C↑j
                                                                              ^
prog.cpp:45:79: error: stray ‘\221’ in program
 .text:00493F08                                         ; myfunction(void)+2C↑j
                                                                               ^
prog.cpp:46:7: error: invalid digit "9" in octal constant
 .text:00493F08                 ADD             SP, SP, #0x14
       ^~~~~~~~
prog.cpp:46:56: error: stray ‘#’ in program
 .text:00493F08                 ADD             SP, SP, #0x14
                                                        ^
prog.cpp:47:7: error: invalid digit "9" in octal constant
 .text:00493F0C                 LDMFD           SP!, {R4,R5,PC}
       ^~~~~~~~
prog.cpp:82:56: error: stray ‘#’ in program
 .text:004A7770                 LDR             R2, [R4,#(dword_13DDE9C - 0x13DDE80)]
                                                        ^
prog.cpp:83:52: error: stray ‘#’ in program
 .text:004A7774                 CMP             R2, #0
                                                    ^
prog.cpp:85:56: error: stray ‘#’ in program
 .text:004A777C                 LDR             R1, [R4,#(dword_13DDEA4 - 0x13DDE80)]
                                                        ^
prog.cpp:86:56: error: stray ‘#’ in program
 .text:004A7780                 LDR             R0, [R4,#(dword_13DDEA0 - 0x13DDE80)]
                                                        ^
prog.cpp:88:56: error: stray ‘#’ in program
 .text:004A7788                 SUBS            R1, R0, #0
                                                        ^
prog.cpp:90:56: error: stray ‘#’ in program
 .text:004A7790                 LDR             R3, [R4,#(dword_13DDEA0 - 0x13DDE80)]
                                                        ^
prog.cpp:91:52: error: stray ‘#’ in program
 .text:004A7794                 MOV             R2, #0
                                                    ^
prog.cpp:95:56: error: stray ‘#’ in program
 .text:004A77A4                 LDR             PC, [R3,#0x2EC]
                                                        ^
prog.cpp:99:56: error: stray ‘#’ in program
 .text:004A77B4                 LDR             R2, [R0,#4]
                                                        ^
prog.cpp:100:56: error: stray ‘#’ in program
 .text:004A77B8                 STR             R2, [R3,#4]
                                                        ^
prog.cpp:101:56: error: stray ‘#’ in program
 .text:004A77BC                 LDR             R2, [R0,#8]
                                                        ^
prog.cpp:102:56: error: stray ‘#’ in program
 .text:004A77C0                 STR             R2, [R3,#8]
                                                        ^
prog.cpp:103:56: error: stray ‘#’ in program
 .text:004A77C4                 LDR             R2, [R0,#0xC]
                                                        ^
prog.cpp:104:56: error: stray ‘#’ in program
 .text:004A77C8                 STR             R2, [R3,#0xC]
                                                        ^
prog.cpp:2:1: error: ‘var_20’ does not name a type
 var_20          = -0x20
 ^~~~~~
prog.cpp:4:18: error: ‘__unwind’ does not name a type
 .text:00493E70 ; __unwind {
                  ^~~~~~~~
prog.cpp:78:4: error: ‘__unwind’ does not name a type
  ; __unwind {
    ^~~~~~~~
stdout
Standard output is empty