RachaProFreeFire

Pdf main

Aug 28th, 2025
285
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 166.56 KB | None | 0 0
  1.             ; CALL XREF from section..text @ 0xd00c(x)
  2. 6964: int main (int argc, char **argv, int64_t envp, int64_t arg_370h, int64_t arg_378h, int64_t arg_380h, int64_t arg_388h, int64_t arg_390h, int64_t arg_398h, int64_t arg_3b0h, int64_t arg_3b8h, int64_t arg_488h, int64_t arg_498h, int64_t arg_2a0h, int64_t arg_838h, int64_t arg_840h, int64_t arg_848h, int64_t arg_850h, int64_t arg_858h, int64_t arg_868h, int64_t arg_870h, int64_t arg_8d8h, int64_t arg_8e0h, int64_t arg_8e8h, int64_t arg_8f0h, int64_t arg_900h, int64_t arg_908h, int64_t arg_910h, int64_t arg_918h, int64_t arg_920h);
  3. │ `- args(x0, x1, sp[0x37..0x60f]) vars(41:sp[0x8..0x310])
  4. │           0x0000d21c      e80f19fc       str d8, [sp, -0x70]!
  5. │           0x0000d220      fd7b01a9       stp x29, x30, [sp, 0x10]
  6. │           0x0000d224      fc6f02a9       stp x28, x27, [sp, 0x20]
  7. │           0x0000d228      fa6703a9       stp x26, x25, [var_10h_3]
  8. │           0x0000d22c      f85f04a9       stp x24, x23, [sp, 0x40]
  9. │           0x0000d230      f65705a9       stp x22, x21, [var_30h]
  10. │           0x0000d234      f44f06a9       stp x20, x19, [sp, 0x60]
  11. │           0x0000d238      fd030091       mov x29, sp
  12. │           0x0000d23c      ff0740d1       sub sp, sp, 1, lsl 12
  13. │           0x0000d240      ff830ad1       sub sp, sp, 0x2a0
  14. │           0x0000d244      a0c312b8       stur w0, [x29, -0xd4]       ; argc
  15. │           0x0000d248      e0074091       add x0, sp, 1, lsl 12
  16. │           0x0000d24c      a10312f8       stur x1, [x29, -0xe0]       ; argv
  17. │           0x0000d250      00a00491       add x0, x0, 0x128
  18. │           0x0000d254      a15303d1       sub x1, x29, 0xd4
  19. │           0x0000d258      a28303d1       sub x2, x29, 0xe0
  20. │           0x0000d25c      b5290094       bl sym llvm::InitLLVM::InitLLVM(int&, char const**&) ; sym.imp.llvm::InitLLVM::InitLLVM_int__char_const_
  21. │           0x0000d260      a10352f8       ldur x1, [x29, -0xe0]       ; int64_t arg2
  22. │           0x0000d264      a8c392b8       ldursw x8, [x29, -0xd4]
  23. │           0x0000d268      eaffffd0       adrp x10, 0xb000
  24. │           0x0000d26c      408d43fd       ldr d0, [x10, 0x718]
  25. │           0x0000d270      e9632491       add x9, sp, 0x918
  26. │           0x0000d274      36410091       add x22, x9, 0x10
  27. │           0x0000d278      220c088b       add x2, x1, x8, lsl 3       ; int64_t arg3
  28. │           0x0000d27c      e0632491       add x0, sp, 0x918           ; int64_t arg1
  29. │           0x0000d280      f68f04f9       str x22, [sp, 0x918]
  30. │           0x0000d284      e09304fd       str d0, [sp, 0x920]
  31. │           0x0000d288      48070094       bl method void llvm::SmallVectorImpl<char const*>::append<char const**, void>(char const**, char const**) ; method.void_llvm::SmallVectorImpl_char_const_.append_char_const__void__char_const__char_const_
  32. │           0x0000d28c      ad290094       bl sym llvm::sys::Process::FixupStandardFileDescriptors() ; sym.imp.llvm::sys::Process::FixupStandardFileDescriptors__
  33. │       ┌─< 0x0000d290      60000034       cbz w0, 0xd29c
  34. │       │   0x0000d294      33008052       mov w19, 1
  35. │      ┌──< 0x0000d298      c8050014       b 0xe9b8
  36. │      ││   ; CODE XREF from main @ 0xd290(x)
  37. │      │└─> 0x0000d29c      ad290094       bl sym.imp.LLVMInitializeAArch64TargetInfo
  38. │      │    0x0000d2a0      b0290094       bl sym.imp.LLVMInitializeAArch64Target
  39. │      │    0x0000d2a4      e88f44f9       ldr x8, [sp, 0x918]
  40. │      │    0x0000d2a8      130140f9       ldr x19, [x8]
  41. │      │┌─< 0x0000d2ac      b30000b4       cbz x19, 0xd2c0
  42. │      ││   0x0000d2b0      e00313aa       mov x0, x19                 ; const char *s
  43. │      ││   0x0000d2b4      4f290094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  44. │      ││   0x0000d2b8      e10300aa       mov x1, x0
  45. │     ┌───< 0x0000d2bc      02000014       b 0xd2c4
  46. │     │││   ; CODE XREF from main @ 0xd2ac(x)
  47. │     ││└─> 0x0000d2c0      e1031faa       mov x1, xzr
  48. │     ││    ; CODE XREF from main @ 0xd2bc(x)
  49. │     └───> 0x0000d2c4      e8632391       add x8, sp, 0x8d8
  50. │      │    0x0000d2c8      e00313aa       mov x0, x19
  51. │      │    0x0000d2cc      a9290094       bl sym clang::driver::ToolChain::getTargetAndModeFromProgramName(llvm::StringRef) ; sym.imp.clang::driver::ToolChain::getTargetAndModeFromProgramName_llvm::StringRef_
  52. │      │    0x0000d2d0      e9ffffd0       adrp x9, 0xb000
  53. │      │    0x0000d2d4      288143fd       ldr d8, [x9, 0x700]
  54. │      │    0x0000d2d8      f38744f9       ldr x19, [sp, 0x908]
  55. │      │    0x0000d2dc      e8c32191       add x8, sp, 0x870
  56. │      │    0x0000d2e0      09810091       add x9, x8, 0x20
  57. │      │    0x0000d2e4      2a008052       mov w10, 1
  58. │      │    0x0000d2e8      e94304f9       str x9, [sp, 0x880]
  59. │      │    0x0000d2ec      09410191       add x9, x8, 0x50
  60. │      │    0x0000d2f0      ff3f04f9       str xzr, [sp, 0x878]
  61. │      │    0x0000d2f4      ff3b04f9       str xzr, [sp, 0x870]
  62. │      │    0x0000d2f8      ff6304f9       str xzr, [sp, 0x8c0]
  63. │      │    0x0000d2fc      ea6704f9       str x10, [sp, 0x8c8]
  64. │      │    0x0000d300      e95b04f9       str x9, [sp, 0x8b0]
  65. │      │    0x0000d304      ff5f04f9       str xzr, [sp, 0x8b8]
  66. │      │    0x0000d308      e84704fd       str d8, [sp, 0x888]
  67. │      │    0x0000d30c      e83704f9       str x8, [sp, 0x868]
  68. │      │    0x0000d310      f61700f9       str x22, [var_8h]
  69. │      │┌─< 0x0000d314      530200b4       cbz x19, 0xd35c
  70. │      ││   0x0000d318      e00313aa       mov x0, x19                 ; const char *s
  71. │      ││   0x0000d31c      35290094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  72. │      ││   0x0000d320      1f4000f1       cmp x0, 0x10
  73. │     ┌───< 0x0000d324      c1010054       b.ne 0xd35c
  74. │     │││   0x0000d328      682640a9       ldp x8, x9, [x19]           ; [0x1bdb0:4]=0
  75. │     │││                                                              ; method.llvm::cl.TokenizeWindowsCommandLine_llvm::StringRef__llvm::StringSaver__llvm::SmallVectorImpl_char_const___bool_
  76. │     │││   0x0000d32c      aaa585d2       mov x10, 0x2d2d             ; '--'
  77. │     │││   0x0000d330      aba58dd2       mov x11, 0x6d2d             ; '-m'
  78. │     │││   0x0000d334      8a4caef2       movk x10, 0x7264, lsl 16    ; 'dr'
  79. │     │││   0x0000d338      eb8dacf2       movk x11, 0x646f, lsl 16    ; 'od'
  80. │     │││   0x0000d33c      2acdcef2       movk x10, 0x7669, lsl 32    ; 'iv'
  81. │     │││   0x0000d340      abacc7f2       movk x11, 0x3d65, lsl 32    ; 'e='
  82. │     │││   0x0000d344      aa4ceef2       movk x10, 0x7265, lsl 48    ; 'er'
  83. │     │││   0x0000d348      6b8cedf2       movk x11, 0x6c63, lsl 48    ; 'cl'
  84. │     │││   0x0000d34c      08010aca       eor x8, x8, x10
  85. │     │││   0x0000d350      29010bca       eor x9, x9, x11
  86. │     │││   0x0000d354      080109aa       orr x8, x8, x9
  87. │    ┌────< 0x0000d358      280300b4       cbz x8, 0xd3bc
  88. │    ││││   ; CODE XREFS from main @ 0xd314(x), 0xd324(x)
  89. │    │└─└─> 0x0000d35c      f78f44f9       ldr x23, [sp, 0x918]
  90. │    │ │    0x0000d360      f82349b9       ldr w24, [sp, 0x920]
  91. │    │ │    0x0000d364      e80317aa       mov x8, x23
  92. │    │ │┌─< 0x0000d368      f8010034       cbz w24, 0xd3a4
  93. │    │ ││   0x0000d36c      f3ffffd0       adrp x19, 0xb000
  94. │    │ ││   0x0000d370      f4031faa       mov x20, xzr
  95. │    │ ││   0x0000d374      15f37dd3       lsl x21, x24, 3
  96. │    │ ││   0x0000d378      734e2291       add x19, x19, 0x893         ; 0xb893 ; "--driver-mode=cl"
  97. │    │ ││   ; CODE XREF from main @ 0xd398(x)
  98. │    │┌───> 0x0000d37c      e06a74f8       ldr x0, [x23, x20]          ; [0x1bdb0:4]=0
  99. │    │╎││                                                              ; method.llvm::cl.TokenizeWindowsCommandLine_llvm::StringRef__llvm::StringSaver__llvm::SmallVectorImpl_char_const___bool_
  100. │   ┌─────< 0x0000d380      800000b4       cbz x0, 0xd390
  101. │   ││╎││   0x0000d384      e10313aa       mov x1, x19                 ; const char *s2
  102. │   ││╎││   0x0000d388      7e290094       bl sym.imp.strcmp           ; int strcmp(const char *s1, const char *s2)
  103. │  ┌──────< 0x0000d38c      a0000034       cbz w0, 0xd3a0
  104. │  │││╎││   ; CODE XREF from main @ 0xd380(x)
  105. │  │└─────> 0x0000d390      94220091       add x20, x20, 8
  106. │  │ │╎││   0x0000d394      bf0214eb       cmp x21, x20
  107. │  │ │└───< 0x0000d398      21ffff54       b.ne 0xd37c
  108. │  │ │┌───< 0x0000d39c      05000014       b 0xd3b0
  109. │  │ ││││   ; CODE XREF from main @ 0xd38c(x)
  110. │  └──────> 0x0000d3a0      e802148b       add x8, x23, x20
  111. │    ││││   ; CODE XREF from main @ 0xd368(x)
  112. │    │││└─> 0x0000d3a4      e94e388b       add x9, x23, w24, uxtw 3
  113. │    │││    0x0000d3a8      1f0109eb       cmp x8, x9
  114. │    │││┌─< 0x0000d3ac      c1000054       b.ne 0xd3c4
  115. │    ││││   ; CODE XREF from main @ 0xd39c(x)
  116. │    │└───> 0x0000d3b0      f6031f2a       mov w22, wzr
  117. │    │┌───< 0x0000d3b4      d8000035       cbnz w24, 0xd3cc
  118. │   ┌─────< 0x0000d3b8      23000014       b 0xd444
  119. │   │││││   ; CODE XREF from main @ 0xd358(x)
  120. │   │└────> 0x0000d3bc      f78f44f9       ldr x23, [sp, 0x918]
  121. │   │ │││   0x0000d3c0      f82349b9       ldr w24, [sp, 0x920]
  122. │   │ │││   ; CODE XREF from main @ 0xd3ac(x)
  123. │   │ ││└─> 0x0000d3c4      36008052       mov w22, 1
  124. │   │ ││┌─< 0x0000d3c8      f8030034       cbz w24, 0xd444
  125. │   │ │││   ; CODE XREF from main @ 0xd3b4(x)
  126. │   │ └───> 0x0000d3cc      f3ffffd0       adrp x19, 0xb000
  127. │   │  ││   0x0000d3d0      f4ffffd0       adrp x20, 0xb000
  128. │   │  ││   0x0000d3d4      f9031f2a       mov w25, wzr
  129. │   │  ││   0x0000d3d8      1af37dd3       lsl x26, x24, 3
  130. │   │  ││   0x0000d3dc      73021d91       add x19, x19, 0x740         ; 0xb740 ; "--rsp-quoting=posix"
  131. │   │  ││   0x0000d3e0      94ae1d91       add x20, x20, 0x76b         ; 0xb76b ; "--rsp-quoting=windows"
  132. │   │  ││   0x0000d3e4      5b008052       mov w27, 2
  133. │   │  ││   0x0000d3e8      fc0317aa       mov x28, x23
  134. │   │  ││   ; CODE XREF from main @ 0xd424(x)
  135. │   │ ┌───> 0x0000d3ec      950340f9       ldr x21, [x28]              ; [0x1bdb0:4]=0
  136. │   │ ╎││                                                              ; method.llvm::cl.TokenizeWindowsCommandLine_llvm::StringRef__llvm::StringSaver__llvm::SmallVectorImpl_char_const___bool_
  137. │   │ ╎││   0x0000d3f0      e10313aa       mov x1, x19                 ; const char *s2
  138. │   │ ╎││   0x0000d3f4      e00315aa       mov x0, x21                 ; const char *s1
  139. │   │ ╎││   0x0000d3f8      62290094       bl sym.imp.strcmp           ; int strcmp(const char *s1, const char *s2)
  140. │   │┌────< 0x0000d3fc      e0000034       cbz w0, 0xd418
  141. │   ││╎││   0x0000d400      e00315aa       mov x0, x21                 ; const char *s1
  142. │   ││╎││   0x0000d404      e10314aa       mov x1, x20                 ; const char *s2
  143. │   ││╎││   0x0000d408      5e290094       bl sym.imp.strcmp           ; int strcmp(const char *s1, const char *s2)
  144. │   ││╎││   0x0000d40c      1f000071       cmp w0, 0
  145. │   ││╎││   0x0000d410      7903991a       csel w25, w27, w25, eq
  146. │  ┌──────< 0x0000d414      02000014       b 0xd41c
  147. │  │││╎││   ; CODE XREF from main @ 0xd3fc(x)
  148. │  ││└────> 0x0000d418      39008052       mov w25, 1
  149. │  ││ ╎││   ; CODE XREF from main @ 0xd414(x)
  150. │  └──────> 0x0000d41c      5a2300f1       subs x26, x26, 8
  151. │   │ ╎││   0x0000d420      9c230091       add x28, x28, 8
  152. │   │ └───< 0x0000d424      41feff54       b.ne 0xd3ec
  153. │   │ ┌───< 0x0000d428      f9000034       cbz w25, 0xd444
  154. │   │ │││   0x0000d42c      3f0b0071       cmp w25, 2
  155. │   │┌────< 0x0000d430      21010054       b.ne 0xd454
  156. │   │││││   0x0000d434      730000b0       adrp x19, 0x1a000
  157. │   │││││   0x0000d438      730240f9       ldr x19, [x19]              ; [0x1bdb0:4]=0
  158. │   │││││                                                              ; method.llvm::cl.TokenizeWindowsCommandLine_llvm::StringRef__llvm::StringSaver__llvm::SmallVectorImpl_char_const___bool_
  159. │  ┌──────< 0x0000d43c      36010035       cbnz w22, 0xd460
  160. │ ┌───────< 0x0000d440      12000014       b 0xd488
  161. │ │││││││   ; CODE XREFS from main @ 0xd3b8(x), 0xd3c8(x), 0xd428(x)
  162. │ ──└─└─└─> 0x0000d444      96000036       tbz w22, 0, 0xd454
  163. │ ││ │ │    0x0000d448      730000b0       adrp x19, 0x1a000
  164. │ ││ │ │    0x0000d44c      730240f9       ldr x19, [x19]              ; [0x1bdb0:4]=0
  165. │ ││ │ │                                                               ; method.llvm::cl.TokenizeWindowsCommandLine_llvm::StringRef__llvm::StringSaver__llvm::SmallVectorImpl_char_const___bool_
  166. │ ││ │ │┌─< 0x0000d450      04000014       b 0xd460
  167. │ ││ │ ││   ; CODE XREFS from main @ 0xd430(x), 0xd444(x)
  168. │ ───└────> 0x0000d454      730000b0       adrp x19, 0x1a000
  169. │ ││   ││   0x0000d458      730640f9       ldr x19, [x19, 8]           ; [0x1c690:4]=0
  170. │ ││   ││                                                              ; method.llvm::cl.TokenizeGNUCommandLine_llvm::StringRef__llvm::StringSaver__llvm::SmallVectorImpl_char_const___bool_
  171. │ ││  ┌───< 0x0000d45c      76010034       cbz w22, 0xd488
  172. │ ││  │││   ; CODE XREFS from main @ 0xd43c(x), 0xd450(x)
  173. │ │└────└─> 0x0000d460      1f0b0071       cmp w24, 2
  174. │ │   ││┌─< 0x0000d464      e3000054       b.lo 0xd480
  175. │ │   │││   0x0000d468      f40640f9       ldr x20, [x23, 8]
  176. │ │  ┌────< 0x0000d46c      b40000b4       cbz x20, 0xd480
  177. │ │  ││││   0x0000d470      e00314aa       mov x0, x20                 ; const char *s
  178. │ │  ││││   0x0000d474      df280094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  179. │ │  ││││   0x0000d478      1f1000f1       cmp x0, 4
  180. │ │ ┌─────< 0x0000d47c      a2000054       b.hs 0xd490
  181. │ │ │││││   ; CODE XREFS from main @ 0xd464(x), 0xd46c(x)
  182. │ │ │└──└─> 0x0000d480      34008052       mov w20, 1
  183. │ │ │ ││┌─< 0x0000d484      08000014       b 0xd4a4
  184. │ │ │ │││   ; CODE XREFS from main @ 0xd440(x), 0xd45c(x)
  185. │ └───└───> 0x0000d488      f4031f2a       mov w20, wzr
  186. │   │ ┌───< 0x0000d48c      06000014       b 0xd4a4
  187. │   │ │││   ; CODE XREF from main @ 0xd47c(x)
  188. │   └─────> 0x0000d490      880240b9       ldr w8, [x20]
  189. │     │││   0x0000d494      a9658c52       mov w9, 0x632d              ; '-c'
  190. │     │││   0x0000d498      692ca672       movk w9, 0x3163, lsl 16     ; 'c1'
  191. │     │││   0x0000d49c      1f01096b       cmp w8, w9
  192. │     │││   0x0000d4a0      f4079f1a       cset w20, ne
  193. │     │││   ; CODE XREFS from main @ 0xd484(x), 0xd48c(x)
  194. │     └─└─> 0x0000d4a4      e0a32191       add x0, sp, 0x868
  195. │      │    0x0000d4a8      e2632491       add x2, sp, 0x918
  196. │      │    0x0000d4ac      e10313aa       mov x1, x19
  197. │      │    0x0000d4b0      e303142a       mov w3, w20
  198. │      │    0x0000d4b4      e4031f2a       mov w4, wzr
  199. │      │    0x0000d4b8      36290094       bl method llvm::cl::ExpandResponseFiles(llvm::StringSaver&, void (*)(llvm::StringRef, llvm::StringSaver&, llvm::SmallVectorImpl<char const*>&, bool), llvm::SmallVectorImpl<char const*>&, bool, bool) ; method.llvm::cl.ExpandResponseFiles_llvm::StringSaver__void____llvm::StringRef__llvm::StringSaver__llvm::SmallVectorImpl_char_const___bool___llvm::SmallVectorImpl_char_const___bool__bool_
  200. │      │    0x0000d4bc      f72349b9       ldr w23, [sp, 0x920]
  201. │      │    0x0000d4c0      f38f44f9       ldr x19, [sp, 0x918]
  202. │      │    0x0000d4c4      ff060071       cmp w23, 1
  203. │      │    0x0000d4c8      68220091       add x8, x19, 8
  204. │      │┌─< 0x0000d4cc      61030054       b.ne 0xd538
  205. │      ││   ; CODE XREF from main @ 0xd544(x)
  206. │     ┌───> 0x0000d4d0      780e178b       add x24, x19, x23, lsl 3
  207. │     ╎││   0x0000d4d4      1f0118eb       cmp x8, x24
  208. │    ┌────< 0x0000d4d8      e0030054       b.eq 0xd554
  209. │    │╎││   0x0000d4dc      150140f9       ldr x21, [x8]
  210. │   ┌─────< 0x0000d4e0      b50300b4       cbz x21, 0xd554
  211. │   ││╎││   0x0000d4e4      e00315aa       mov x0, x21                 ; const char *s
  212. │   ││╎││   0x0000d4e8      c2280094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  213. │   ││╎││   0x0000d4ec      1f1000f1       cmp x0, 4
  214. │  ┌──────< 0x0000d4f0      23030054       b.lo 0xd554
  215. │  │││╎││   0x0000d4f4      a80240b9       ldr w8, [x21]
  216. │  │││╎││   0x0000d4f8      a9658c52       mov w9, 0x632d              ; '-c'
  217. │  │││╎││   0x0000d4fc      692ca672       movk w9, 0x3163, lsl 16     ; 'c1'
  218. │  │││╎││   0x0000d500      1f01096b       cmp w8, w9
  219. │ ┌───────< 0x0000d504      81020054       b.ne 0xd554
  220. │ ────────< 0x0000d508      f4b10034       cbz w20, 0xeb44
  221. │ ││││╎││   0x0000d50c      f61740f9       ldr x22, [var_8h]
  222. │ ││││╎││   0x0000d510      e80313aa       mov x8, x19
  223. │ ────────< 0x0000d514      d7b10034       cbz w23, 0xeb4c
  224. │ ││││╎││   0x0000d518      e9f27dd3       lsl x9, x23, 3
  225. │ ││││╎││   0x0000d51c      e80313aa       mov x8, x19
  226. │ ││││╎││   ; CODE XREF from main @ 0xd530(x)
  227. │ ────────> 0x0000d520      0a0140f9       ldr x10, [x8]
  228. │ ────────< 0x0000d524      4ab100b4       cbz x10, 0xeb4c
  229. │ ││││╎││   0x0000d528      292100f1       subs x9, x9, 8
  230. │ ││││╎││   0x0000d52c      08210091       add x8, x8, 8
  231. │ ────────< 0x0000d530      81ffff54       b.ne 0xd520
  232. │ ────────< 0x0000d534      93050014       b 0xeb80
  233. │ ││││╎││   ; CODE XREF from main @ 0xd4cc(x)
  234. │ ││││╎│└─> 0x0000d538      e9f27dd3       lsl x9, x23, 3
  235. │ ││││╎│    0x0000d53c      292100d1       sub x9, x9, 8
  236. │ ││││╎│    ; CODE XREF from main @ 0xd550(x)
  237. │ ││││╎│┌─> 0x0000d540      0a0140f9       ldr x10, [x8]
  238. │ ││││└───< 0x0000d544      6afcffb5       cbnz x10, 0xd4d0
  239. │ ││││ │╎   0x0000d548      292100f1       subs x9, x9, 8
  240. │ ││││ │╎   0x0000d54c      08210091       add x8, x8, 8
  241. │ ││││ │└─< 0x0000d550      81ffff54       b.ne 0xd540
  242. │ ││││ │    ; CODE XREFS from main @ 0xd4d8(x), 0xd4e0(x), 0xd4f0(x), 0xd504(x)
  243. │ └└└└────> 0x0000d554      ff0a0071       cmp w23, 2
  244. │      │┌─< 0x0000d558      0b040054       b.lt 0xd5d8
  245. │      ││   0x0000d55c      f50600d1       sub x21, x23, 1
  246. │      ││   0x0000d560      b7c58dd2       mov x23, 0x6e2d             ; '-n'
  247. │      ││   0x0000d564      d82d8dd2       mov x24, 0x696e             ; 'ni'
  248. │      ││   0x0000d568      194e8ed2       mov x25, 0x7270             ; 'pr'
  249. │      ││   0x0000d56c      f7ada5f2       movk x23, 0x2d6f, lsl 16    ; 'o-'
  250. │      ││   0x0000d570      782cacf2       movk x24, 0x6163, lsl 16    ; 'ca'
  251. │      ││   0x0000d574      b9ccacf2       movk x25, 0x6665, lsl 16    ; 'ef'
  252. │      ││   0x0000d578      772cccf2       movk x23, 0x6163, lsl 32    ; 'ca'
  253. │      ││   0x0000d57c      98adc5f2       movk x24, 0x2d6c, lsl 32    ; 'l-'
  254. │      ││   0x0000d580      390dcff2       movk x25, 0x7869, lsl 32    ; 'ix'
  255. │      ││   0x0000d584      74220091       add x20, x19, 8
  256. │      ││   0x0000d588      d7ededf2       movk x23, 0x6f6e, lsl 48    ; 'no'
  257. │      ││   0x0000d58c      184eeef2       movk x24, 0x7270, lsl 48    ; 'pr'
  258. │      ││   0x0000d590      b96ceef2       movk x25, 0x7365, lsl 48    ; 'es'
  259. │      ││   ; CODE XREF from main @ 0xd5d4(x)
  260. │     ┌───> 0x0000d594      930240f9       ldr x19, [x20]
  261. │    ┌────< 0x0000d598      b30100b4       cbz x19, 0xd5cc
  262. │    │╎││   0x0000d59c      e00313aa       mov x0, x19                 ; const char *s
  263. │    │╎││   0x0000d5a0      94280094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  264. │    │╎││   0x0000d5a4      1f5800f1       cmp x0, 0x16
  265. │   ┌─────< 0x0000d5a8      21010054       b.ne 0xd5cc
  266. │   ││╎││   0x0000d5ac      682640a9       ldp x8, x9, [x19]
  267. │   ││╎││   0x0000d5b0      6ae240f8       ldur x10, [x19, 0xe]
  268. │   ││╎││   0x0000d5b4      080117ca       eor x8, x8, x23
  269. │   ││╎││   0x0000d5b8      290118ca       eor x9, x9, x24
  270. │   ││╎││   0x0000d5bc      4a0119ca       eor x10, x10, x25
  271. │   ││╎││   0x0000d5c0      080109aa       orr x8, x8, x9
  272. │   ││╎││   0x0000d5c4      08010aaa       orr x8, x8, x10
  273. │  ┌──────< 0x0000d5c8      a80000b4       cbz x8, 0xd5dc
  274. │  │││╎││   ; CODE XREFS from main @ 0xd598(x), 0xd5a8(x)
  275. │  │└└────> 0x0000d5cc      b50600f1       subs x21, x21, 1
  276. │  │  ╎││   0x0000d5d0      94220091       add x20, x20, 8
  277. │  │  └───< 0x0000d5d4      01feff54       b.ne 0xd594
  278. │  │   ││   ; CODE XREF from main @ 0xd558(x)
  279. │  │   │└─> 0x0000d5d8      28008052       mov w8, 1
  280. │  │   │    ; CODE XREF from main @ 0xd5c8(x)
  281. │  └──────> 0x0000d5dc      b90303d1       sub x25, x29, 0xc0
  282. │      │    0x0000d5e0      e82700b9       str w8, [sp, 0x24]
  283. │      │┌─< 0x0000d5e4      96080034       cbz w22, 0xd6f4
  284. │      ││   0x0000d5e8      e0ffffd0       adrp x0, 0xb000
  285. │      ││   0x0000d5ec      00d02591       add x0, x0, 0x974
  286. │      ││   0x0000d5f0      e8e30091       add x8, sp, 0x38
  287. │      ││   0x0000d5f4      41008052       mov w1, 2
  288. │      ││   0x0000d5f8      ea280094       bl sym llvm::sys::Process::GetEnv(llvm::StringRef) ; sym.imp.llvm::sys::Process::GetEnv_llvm::StringRef_
  289. │      ││   0x0000d5fc      e8434139       ldrb w8, [var_30h]
  290. │      ││   0x0000d600      f3ffffd0       adrp x19, 0xb000
  291. │     ┌───< 0x0000d604      a8020034       cbz w8, 0xd658
  292. │     │││   0x0000d608      606e43fd       ldr d0, [x19, 0x6d8]
  293. │     │││   0x0000d60c      e8030e91       add x8, sp, 0x380
  294. │     │││   0x0000d610      14410091       add x20, x8, 0x10
  295. │     │││   0x0000d614      e0e30091       add x0, sp, 0x38            ; int64_t arg1
  296. │     │││   0x0000d618      e1a32191       add x1, sp, 0x868           ; int64_t arg2
  297. │     │││   0x0000d61c      e2030e91       add x2, sp, 0x380           ; int64_t arg3
  298. │     │││   0x0000d620      f4c301f9       str x20, [var_18h0]
  299. │     │││   0x0000d624      e0c701fd       str d0, [var_18h8]
  300. │     │││   0x0000d628      e8050094       bl sym getCLEnvVarOptions(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >&, llvm::StringSaver&, llvm::SmallVectorImpl<char const*>&) ; sym.getCLEnvVarOptions_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_____llvm::StringSaver__llvm::SmallVectorImpl_char_const__
  301. │     │││   0x0000d62c      e88f44f9       ldr x8, [sp, 0x918]
  302. │     │││   0x0000d630      e2c341f9       ldr x2, [var_18h0]          ; int64_t arg3
  303. │     │││   0x0000d634      e98b43b9       ldr w9, [var_18h8]
  304. │     │││   0x0000d638      e0632491       add x0, sp, 0x918           ; int64_t arg1
  305. │     │││   0x0000d63c      01210091       add x1, x8, 8               ; uint32_t arg2
  306. │     │││   0x0000d640      430c098b       add x3, x2, x9, lsl 3
  307. │     │││   0x0000d644      01060094       bl method char const** llvm::SmallVectorImpl<char const*>::insert<char const**, void>(char const**, char const**, char const**) ; method.char_const_llvm::SmallVectorImpl_char_const_.insert_char_const__void__char_const__char_const__char_const_
  308. │     │││   0x0000d648      e0c341f9       ldr x0, [var_18h0]
  309. │     │││   0x0000d64c      1f0014eb       cmp x0, x20
  310. │    ┌────< 0x0000d650      40000054       b.eq 0xd658
  311. │    ││││   0x0000d654      b3280094       bl sym.imp.free             ; void free(void *ptr)
  312. │    ││││   ; CODE XREFS from main @ 0xd604(x), 0xd650(x)
  313. │    └└───> 0x0000d658      e0ffffd0       adrp x0, 0xb000
  314. │      ││   0x0000d65c      00142491       add x0, x0, 0x905           ; 0xb905 ; "_CL_"
  315. │      ││   0x0000d660      a88302d1       sub x8, x29, 0xa0
  316. │      ││   0x0000d664      81008052       mov w1, 4
  317. │      ││   0x0000d668      ce280094       bl sym llvm::sys::Process::GetEnv(llvm::StringRef) ; sym.imp.llvm::sys::Process::GetEnv_llvm::StringRef_
  318. │      ││   0x0000d66c      28e34039       ldrb w8, [x25, 0x38]
  319. │     ┌───< 0x0000d670      48030034       cbz w8, 0xd6d8
  320. │     │││   0x0000d674      606e43fd       ldr d0, [x19, 0x6d8]
  321. │     │││   0x0000d678      e8030e91       add x8, sp, 0x380
  322. │     │││   0x0000d67c      13410091       add x19, x8, 0x10
  323. │     │││   0x0000d680      a08302d1       sub x0, x29, 0xa0           ; int64_t arg1
  324. │     │││   0x0000d684      e1a32191       add x1, sp, 0x868           ; int64_t arg2
  325. │     │││   0x0000d688      e2030e91       add x2, sp, 0x380           ; int64_t arg3
  326. │     │││   0x0000d68c      f3c301f9       str x19, [var_18h0]
  327. │     │││   0x0000d690      e0c701fd       str d0, [var_18h8]
  328. │     │││   0x0000d694      cd050094       bl sym getCLEnvVarOptions(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >&, llvm::StringSaver&, llvm::SmallVectorImpl<char const*>&) ; sym.getCLEnvVarOptions_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_____llvm::StringSaver__llvm::SmallVectorImpl_char_const__
  329. │     │││   0x0000d698      e1c341f9       ldr x1, [var_18h0]          ; int64_t arg2
  330. │     │││   0x0000d69c      e88b43b9       ldr w8, [var_18h8]
  331. │     │││   0x0000d6a0      e0632491       add x0, sp, 0x918           ; int64_t arg1
  332. │     │││   0x0000d6a4      220c088b       add x2, x1, x8, lsl 3       ; int64_t arg3
  333. │     │││   0x0000d6a8      40060094       bl method void llvm::SmallVectorImpl<char const*>::append<char const**, void>(char const**, char const**) ; method.void_llvm::SmallVectorImpl_char_const_.append_char_const__void__char_const__char_const_
  334. │     │││   0x0000d6ac      e0c341f9       ldr x0, [var_18h0]
  335. │     │││   0x0000d6b0      1f0013eb       cmp x0, x19
  336. │    ┌────< 0x0000d6b4      40000054       b.eq 0xd6bc
  337. │    ││││   0x0000d6b8      9a280094       bl sym.imp.free             ; void free(void *ptr)
  338. │    ││││   ; CODE XREF from main @ 0xd6b4(x)
  339. │    └────> 0x0000d6bc      28e34039       ldrb w8, [x25, 0x38]
  340. │    ┌────< 0x0000d6c0      c8000034       cbz w8, 0xd6d8
  341. │    ││││   0x0000d6c4      28834039       ldrb w8, [x25, 0x20]
  342. │   ┌─────< 0x0000d6c8      68000036       tbz w8, 0, 0xd6d4
  343. │   │││││   0x0000d6cc      a00357f8       ldur x0, [x29, -0x90]
  344. │   │││││   0x0000d6d0      90280094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  345. │   │││││   ; CODE XREF from main @ 0xd6c8(x)
  346. │   └─────> 0x0000d6d4      3fe30039       strb wzr, [x25, 0x38]
  347. │    ││││   ; CODE XREFS from main @ 0xd670(x), 0xd6c0(x)
  348. │    └└───> 0x0000d6d8      e8434139       ldrb w8, [var_30h]
  349. │     ┌───< 0x0000d6dc      c8000034       cbz w8, 0xd6f4
  350. │     │││   0x0000d6e0      e8e34039       ldrb w8, [var_18h]
  351. │    ┌────< 0x0000d6e4      68000036       tbz w8, 0, 0xd6f0
  352. │    ││││   0x0000d6e8      e02740f9       ldr x0, [var_28h]
  353. │    ││││   0x0000d6ec      89280094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  354. │    ││││   ; CODE XREF from main @ 0xd6e4(x)
  355. │    └────> 0x0000d6f0      ff430139       strb wzr, [var_30h]
  356. │     │││   ; CODE XREFS from main @ 0xd5e4(x), 0xd6dc(x)
  357. │     └─└─> 0x0000d6f4      e8432191       add x8, sp, 0x850
  358. │      │    0x0000d6f8      e0ffffd0       adrp x0, 0xb000
  359. │      │    0x0000d6fc      08210091       add x8, x8, 8
  360. │      │    0x0000d700      00d82491       add x0, x0, 0x936           ; 0xb936 ; "CCC_OVERRIC" ; const char *name
  361. │      │    0x0000d704      ff3304f9       str xzr, [sp, 0x860]
  362. │      │    0x0000d708      ff2f04f9       str xzr, [sp, 0x858]
  363. │      │    0x0000d70c      e82b04f9       str x8, [sp, 0x850]
  364. │      │    0x0000d710      34280094       bl sym.imp.getenv           ; char *getenv(const char *name)
  365. │      │┌─< 0x0000d714      205f00b4       cbz x0, 0xe2f8
  366. │      ││   0x0000d718      f60300aa       mov x22, x0
  367. │      ││   0x0000d71c      a5280094       bl sym llvm::errs()         ; sym.imp.llvm::errs__
  368. │      ││   0x0000d720      c8024039       ldrb w8, [x22]              ; [0xb936:4]=0x5f434343 ; "CCC_OVERRIC"
  369. │      ││   0x0000d724      1f8d0071       cmp w8, 0x23
  370. │     ┌───< 0x0000d728      61000054       b.ne 0xd734
  371. │     │││   0x0000d72c      d6060091       add x22, x22, 1
  372. │     │││   0x0000d730      a4280094       bl sym llvm::nulls()        ; sym.imp.llvm::nulls__
  373. │     │││   ; CODE XREF from main @ 0xd728(x)
  374. │     └───> 0x0000d734      f50300aa       mov x21, x0
  375. │      ││   0x0000d738      a88e41f8       ldr x8, [x21, 0x18]!
  376. │      ││   0x0000d73c      f40300aa       mov x20, x0
  377. │      ││   0x0000d740      a9825ff8       ldur x9, [x21, -8]
  378. │      ││   0x0000d744      290108cb       sub x9, x9, x8
  379. │      ││   0x0000d748      3f6500f1       cmp x9, 0x19
  380. │     ┌───< 0x0000d74c      08010054       b.hi 0xd76c
  381. │     │││   0x0000d750      e1ffffd0       adrp x1, 0xb000
  382. │     │││   0x0000d754      21442c91       add x1, x1, 0xb11           ; 0xbb11 ; "### CCC_OVERRIDE_OPTIONS: "
  383. │     │││   0x0000d758      42038052       mov w2, 0x1a
  384. │     │││   0x0000d75c      e00314aa       mov x0, x20
  385. │     │││   0x0000d760      9c280094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  386. │     │││   0x0000d764      f30300aa       mov x19, x0
  387. │    ┌────< 0x0000d768      0b000014       b 0xd794
  388. │    ││││   ; CODE XREF from main @ 0xd74c(x)
  389. │    │└───> 0x0000d76c      e9ffffd0       adrp x9, 0xb000
  390. │    │ ││   0x0000d770      29452c91       add x9, x9, 0xb11           ; 0xbb11 ; "### CCC_OVERRIDE_OPTIONS: "
  391. │    │ ││   0x0000d774      20a1c03c       ldur q0, [x9, 0xa]
  392. │    │ ││   0x0000d778      2101c03d       ldr q1, [x9]                ; [0xbb11:4]=0x20232323 ; "### CCC_OVERRIDE_OPTIONS: "
  393. │    │ ││   0x0000d77c      f30314aa       mov x19, x20
  394. │    │ ││   0x0000d780      00a1803c       stur q0, [x8, 0xa]
  395. │    │ ││   0x0000d784      0101803d       str q1, [x8]
  396. │    │ ││   0x0000d788      a80240f9       ldr x8, [x21]
  397. │    │ ││   0x0000d78c      08690091       add x8, x8, 0x1a
  398. │    │ ││   0x0000d790      a80200f9       str x8, [x21]
  399. │    │ ││   ; CODE XREF from main @ 0xd768(x)
  400. │    └────> 0x0000d794      e00316aa       mov x0, x22                 ; const char *s
  401. │      ││   0x0000d798      16280094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  402. │      ││   0x0000d79c      e20300aa       mov x2, x0                  ; uint32_t arg3
  403. │      ││   0x0000d7a0      e00313aa       mov x0, x19                 ; int64_t arg1
  404. │      ││   0x0000d7a4      e10316aa       mov x1, x22                 ; const void *s2
  405. │      ││   0x0000d7a8      01070094       bl method llvm::raw_ostream::operator<<(llvm::StringRef) ; method.llvm::raw_ostream.operator___llvm::StringRef_
  406. │      ││   0x0000d7ac      092041a9       ldp x9, x8, [x0, 0x10]
  407. │      ││   0x0000d7b0      3f0108eb       cmp x9, x8
  408. │     ┌───< 0x0000d7b4      c1000054       b.ne 0xd7cc
  409. │     │││   0x0000d7b8      e1ffffd0       adrp x1, 0xb000
  410. │     │││   0x0000d7bc      21443191       add x1, x1, 0xc51
  411. │     │││   0x0000d7c0      22008052       mov w2, 1
  412. │     │││   0x0000d7c4      83280094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  413. │    ┌────< 0x0000d7c8      06000014       b 0xd7e0
  414. │    ││││   ; CODE XREF from main @ 0xd7b4(x)
  415. │    │└───> 0x0000d7cc      49018052       mov w9, 0xa
  416. │    │ ││   0x0000d7d0      09010039       strb w9, [x8]
  417. │    │ ││   0x0000d7d4      080c40f9       ldr x8, [x0, 0x18]
  418. │    │ ││   0x0000d7d8      08050091       add x8, x8, 1
  419. │    │ ││   0x0000d7dc      080c00f9       str x8, [x0, 0x18]
  420. │    │ ││   ; CODE XREF from main @ 0xd7c8(x)
  421. │    └────> 0x0000d7e0      c8024039       ldrb w8, [x22]              ; [0xb936:4]=0x5f434343 ; "CCC_OVERRIC"
  422. │     ┌───< 0x0000d7e4      a8580034       cbz w8, 0xe2f8
  423. │     │││   0x0000d7e8      e8e30091       add x8, sp, 0x38
  424. │     │││   0x0000d7ec      e9030e91       add x9, sp, 0x380
  425. │     │││   0x0000d7f0      080140b2       orr x8, x8, 1
  426. │     │││   0x0000d7f4      aa8302d1       sub x10, x29, 0xa0
  427. │     │││   0x0000d7f8      e80f00f9       str x8, [sp, 0x18]
  428. │     │││   0x0000d7fc      280140b2       orr x8, x9, 1
  429. │     │││   0x0000d800      5b0140b2       orr x27, x10, 1
  430. │     │││   0x0000d804      a80700f9       str x8, [x29, 8]
  431. │     │││   0x0000d808      48017fb2       orr x8, x10, 2
  432. │     │││   0x0000d80c      e80b00f9       str x8, [sp, 0x10]
  433. │     │││   ; CODE XREF from main @ 0xe2f4(x)
  434. │    ┌────> 0x0000d810      01048052       mov w1, 0x20
  435. │    ╎│││   0x0000d814      e00316aa       mov x0, x22                 ; const char *s
  436. │    ╎│││   0x0000d818      72280094       bl sym.imp.strchr           ; char *strchr(const char *s, int c)
  437. │    ╎│││   0x0000d81c      fc0300aa       mov x28, x0
  438. │   ┌─────< 0x0000d820      800000b5       cbnz x0, 0xd830
  439. │   │╎│││   0x0000d824      e00316aa       mov x0, x22                 ; const char *s
  440. │   │╎│││   0x0000d828      f2270094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  441. │   │╎│││   0x0000d82c      dc02008b       add x28, x22, x0
  442. │   │╎│││   ; CODE XREF from main @ 0xd820(x)
  443. │   └─────> 0x0000d830      970316eb       subs x23, x28, x22
  444. │   ┌─────< 0x0000d834      60550054       b.eq 0xe2e0
  445. │   │╎│││   0x0000d838      ff4200b1       cmn x23, 0x10
  446. │  ┌──────< 0x0000d83c      62a80054       b.hs 0xed48
  447. │  ││╎│││   0x0000d840      ff5a00f1       cmp x23, 0x16
  448. │ ┌───────< 0x0000d844      a8000054       b.hi 0xd858
  449. │ │││╎│││   0x0000d848      e87a1f53       lsl w8, w23, 1
  450. │ │││╎│││   0x0000d84c      28830039       strb w8, [x25, 0x20]
  451. │ │││╎│││   0x0000d850      e0031baa       mov x0, x27
  452. │ ────────< 0x0000d854      08000014       b 0xd874
  453. │ │││╎│││   ; CODE XREF from main @ 0xd844(x)
  454. │ └───────> 0x0000d858      e8420091       add x8, x23, 0x10
  455. │  ││╎│││   0x0000d85c      13ed7c92       and x19, x8, 0xfffffffffffffff0
  456. │  ││╎│││   0x0000d860      e00313aa       mov x0, x19
  457. │  ││╎│││   0x0000d864      63280094       bl sym operator new(unsigned long) ; sym.imp.operator_new_unsigned_long_
  458. │  ││╎│││   0x0000d868      680240b2       orr x8, x19, 1
  459. │  ││╎│││   0x0000d86c      b78336a9       stp x23, x0, [x29, -0x98]
  460. │  ││╎│││   0x0000d870      a80316f8       stur x8, [x29, -0xa0]
  461. │  ││╎│││   ; CODE XREFS from main @ 0xd854(x), 0xd880(x)
  462. │ ┌───────> 0x0000d874      c8164038       ldrb w8, [x22], 1           ; [0xb936:4]=0x5f434343 ; "CCC_OVERRIC"
  463. │ ╎││╎│││   0x0000d878      9f0316eb       cmp x28, x22
  464. │ ╎││╎│││   0x0000d87c      08140038       strb w8, [x0], 1
  465. │ └───────< 0x0000d880      a1ffff54       b.ne 0xd874
  466. │  ││╎│││   0x0000d884      1f000039       strb wzr, [x0]
  467. │  ││╎│││   0x0000d888      28834039       ldrb w8, [x25, 0x20]
  468. │  ││╎│││   0x0000d88c      aaa776a9       ldp x10, x9, [x29, -0x98]
  469. │  ││╎│││   0x0000d890      1f010072       tst w8, 1
  470. │  ││╎│││   0x0000d894      0bfd41d3       lsr x11, x8, 1
  471. │  ││╎│││   0x0000d898      7903899a       csel x25, x27, x9, eq
  472. │  ││╎│││   0x0000d89c      76018a9a       csel x22, x11, x10, eq
  473. │  ││╎│││   0x0000d8a0      b95b34a9       stp x25, x22, [x29, -0xc0]
  474. │  ││╎│││   0x0000d8a4      2a034039       ldrb w10, [x25]
  475. │  ││╎│││   0x0000d8a8      5f750171       cmp w10, 0x5d
  476. │ ┌───────< 0x0000d8ac      0c010054       b.gt 0xd8cc
  477. │ │││╎│││   0x0000d8b0      5fad0071       cmp w10, 0x2b
  478. │ ────────< 0x0000d8b4      60130054       b.eq 0xdb20
  479. │ │││╎│││   0x0000d8b8      5f3d0171       cmp w10, 0x4f
  480. │ ────────< 0x0000d8bc      a0170054       b.eq 0xdbb0
  481. │ │││╎│││   0x0000d8c0      5f610171       cmp w10, 0x58
  482. │ ────────< 0x0000d8c4      00010054       b.eq 0xd8e4
  483. │ ────────< 0x0000d8c8      c5010014       b 0xdfdc
  484. │ │││╎│││   ; CODE XREF from main @ 0xd8ac(x)
  485. │ └───────> 0x0000d8cc      5f790171       cmp w10, 0x5e
  486. │ ┌───────< 0x0000d8d0      c0140054       b.eq 0xdb68
  487. │ │││╎│││   0x0000d8d4      5fcd0171       cmp w10, 0x73
  488. │ ────────< 0x0000d8d8      20200054       b.eq 0xdcdc
  489. │ │││╎│││   0x0000d8dc      5fe10171       cmp w10, 0x78
  490. │ ────────< 0x0000d8e0      e1370054       b.ne 0xdfdc
  491. │ │││╎│││   ; CODE XREF from main @ 0xd8c4(x)
  492. │ ────────> 0x0000d8e4      f72349b9       ldr w23, [sp, 0x920]
  493. │ │││╎│││   0x0000d8e8      df0200f1       cmp x22, 0
  494. │ │││╎│││   0x0000d8ec      e8079f1a       cset w8, ne
  495. │ │││╎│││   0x0000d8f0      3a07999a       cinc x26, x25, ne
  496. │ │││╎│││   0x0000d8f4      ff0a0071       cmp w23, 2
  497. │ ────────< 0x0000d8f8      a34e0054       b.lo 0xe2cc
  498. │ │││╎│││   0x0000d8fc      d60208cb       sub x22, x22, x8
  499. │ │││╎│││   0x0000d900      38008052       mov w24, 1
  500. │ │││╎│││   0x0000d904      33008052       mov w19, 1
  501. │ │││╎│││   ; CODE XREF from main @ 0xd950(x)
  502. │ ────────> 0x0000d908      e88f44f9       ldr x8, [sp, 0x918]
  503. │ │││╎│││   0x0000d90c      197978f8       ldr x25, [x8, x24, lsl 3]
  504. │ ────────< 0x0000d910      990000b4       cbz x25, 0xd920
  505. │ │││╎│││   0x0000d914      e00319aa       mov x0, x25                 ; const char *s
  506. │ │││╎│││   0x0000d918      b6270094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  507. │ ────────< 0x0000d91c      02000014       b 0xd924
  508. │ │││╎│││   ; CODE XREF from main @ 0xd910(x)
  509. │ ────────> 0x0000d920      e0031faa       mov x0, xzr
  510. │ │││╎│││   ; CODE XREF from main @ 0xd91c(x)
  511. │ ────────> 0x0000d924      df0200eb       cmp x22, x0
  512. │ ────────< 0x0000d928      e1000054       b.ne 0xd944
  513. │ ────────< 0x0000d92c      760100b4       cbz x22, 0xd958
  514. │ │││╎│││   0x0000d930      e0031aaa       mov x0, x26                 ; const void *s1
  515. │ │││╎│││   0x0000d934      e10319aa       mov x1, x25                 ; const void *s2
  516. │ │││╎│││   0x0000d938      e20316aa       mov x2, x22                 ; size_t n
  517. │ │││╎│││   0x0000d93c      31280094       bl sym.imp.memcmp           ; int memcmp(const void *s1, const void *s2, size_t n)
  518. │ ────────< 0x0000d940      c0000034       cbz w0, 0xd958
  519. │ │││╎│││   ; CODE XREF from main @ 0xd928(x)
  520. │ ────────> 0x0000d944      73060011       add w19, w19, 1
  521. │ │││╎│││   ; CODE XREFS from main @ 0xda14(x), 0xdae4(x), 0xdb1c(x)
  522. │ ────────> 0x0000d948      ff02136b       cmp w23, w19
  523. │ │││╎│││   0x0000d94c      f803132a       mov w24, w19
  524. │ ────────< 0x0000d950      c8fdff54       b.hi 0xd908
  525. │ ────────< 0x0000d954      5e020014       b 0xe2cc
  526. │ │││╎│││   ; CODE XREFS from main @ 0xd92c(x), 0xd940(x)
  527. │ ────────> 0x0000d958      892241a9       ldp x9, x8, [x20, 0x10]
  528. │ │││╎│││   0x0000d95c      290108cb       sub x9, x9, x8
  529. │ │││╎│││   0x0000d960      3f5500f1       cmp x9, 0x15
  530. │ ────────< 0x0000d964      e8000054       b.hi 0xd980
  531. │ │││╎│││   0x0000d968      e1ffffd0       adrp x1, 0xb000
  532. │ │││╎│││   0x0000d96c      c2028052       mov w2, 0x16
  533. │ │││╎│││   0x0000d970      e00314aa       mov x0, x20
  534. │ │││╎│││   0x0000d974      21582a91       add x1, x1, 0xa96           ; 0xba96 ; "### Deleting argument "
  535. │ │││╎│││   0x0000d978      16280094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  536. │ ────────< 0x0000d97c      0b000014       b 0xd9a8
  537. │ │││╎│││   ; CODE XREF from main @ 0xd964(x)
  538. │ ────────> 0x0000d980      eaffffd0       adrp x10, 0xb000
  539. │ │││╎│││   0x0000d984      4a592a91       add x10, x10, 0xa96         ; 0xba96 ; "### Deleting argument "
  540. │ │││╎│││   0x0000d988      49e140f8       ldur x9, [x10, 0xe]
  541. │ │││╎│││   0x0000d98c      4001c03d       ldr q0, [x10]               ; [0xba96:4]=0x20232323 ; "### Deleting argument "
  542. │ │││╎│││   0x0000d990      e00314aa       mov x0, x20
  543. │ │││╎│││   0x0000d994      09e100f8       stur x9, [x8, 0xe]
  544. │ │││╎│││   0x0000d998      0001803d       str q0, [x8]
  545. │ │││╎│││   0x0000d99c      a80240f9       ldr x8, [x21]
  546. │ │││╎│││   0x0000d9a0      08590091       add x8, x8, 0x16
  547. │ │││╎│││   0x0000d9a4      a80200f9       str x8, [x21]
  548. │ │││╎│││   ; CODE XREF from main @ 0xd97c(x)
  549. │ ────────> 0x0000d9a8      e88f44f9       ldr x8, [sp, 0x918]
  550. │ │││╎│││   0x0000d9ac      017978f8       ldr x1, [x8, x24, lsl 3]    ; int64_t arg2
  551. │ │││╎│││   0x0000d9b0      6f060094       bl method llvm::raw_ostream::operator<<(char const*) ; method.llvm::raw_ostream.operator___char_const_
  552. │ │││╎│││   0x0000d9b4      092041a9       ldp x9, x8, [x0, 0x10]
  553. │ │││╎│││   0x0000d9b8      1f0109eb       cmp x8, x9
  554. │ ────────< 0x0000d9bc      c2000054       b.hs 0xd9d4
  555. │ │││╎│││   0x0000d9c0      09050091       add x9, x8, 1
  556. │ │││╎│││   0x0000d9c4      090c00f9       str x9, [x0, 0x18]
  557. │ │││╎│││   0x0000d9c8      49018052       mov w9, 0xa
  558. │ │││╎│││   0x0000d9cc      09010039       strb w9, [x8]
  559. │ ────────< 0x0000d9d0      03000014       b 0xd9dc
  560. │ │││╎│││   ; CODE XREF from main @ 0xd9bc(x)
  561. │ ────────> 0x0000d9d4      41018052       mov w1, 0xa
  562. │ │││╎│││   0x0000d9d8      0e280094       bl sym llvm::raw_ostream::write(unsigned char) ; sym.imp.llvm::raw_ostream::write_unsigned_char_
  563. │ │││╎│││   ; CODE XREF from main @ 0xd9d0(x)
  564. │ ────────> 0x0000d9dc      e98f44f9       ldr x9, [sp, 0x918]
  565. │ │││╎│││   0x0000d9e0      e82349b9       ldr w8, [sp, 0x920]
  566. │ │││╎│││   0x0000d9e4      200d188b       add x0, x9, x24, lsl 3
  567. │ │││╎│││   0x0000d9e8      01200091       add x1, x0, 8
  568. │ │││╎│││   0x0000d9ec      290d088b       add x9, x9, x8, lsl 3
  569. │ │││╎│││   0x0000d9f0      220101eb       subs x2, x9, x1
  570. │ ────────< 0x0000d9f4      60000054       b.eq 0xda00
  571. │ │││╎│││   0x0000d9f8      8e270094       bl sym.imp.memmove          ; void *memmove(void *s1, const void *s2, size_t n)
  572. │ │││╎│││   0x0000d9fc      e82349b9       ldr w8, [sp, 0x920]
  573. │ │││╎│││   ; CODE XREF from main @ 0xd9f4(x)
  574. │ ────────> 0x0000da00      a90354f8       ldur x9, [x29, -0xc0]
  575. │ │││╎│││   0x0000da04      17050051       sub w23, w8, 1
  576. │ │││╎│││   0x0000da08      f72309b9       str w23, [sp, 0x920]
  577. │ │││╎│││   0x0000da0c      28014039       ldrb w8, [x9]
  578. │ │││╎│││   0x0000da10      1f610171       cmp w8, 0x58
  579. │ ────────< 0x0000da14      a1f9ff54       b.ne 0xd948
  580. │ │││╎│││   0x0000da18      892241a9       ldp x9, x8, [x20, 0x10]
  581. │ │││╎│││   0x0000da1c      ff02136b       cmp w23, w19
  582. │ │││╎│││   0x0000da20      290108cb       sub x9, x9, x8
  583. │ ────────< 0x0000da24      29010054       b.ls 0xda48
  584. │ │││╎│││   0x0000da28      3f5500f1       cmp x9, 0x15
  585. │ ────────< 0x0000da2c      e8010054       b.hi 0xda68
  586. │ │││╎│││   0x0000da30      e1ffffd0       adrp x1, 0xb000
  587. │ │││╎│││   0x0000da34      c2028052       mov w2, 0x16
  588. │ │││╎│││   0x0000da38      e00314aa       mov x0, x20
  589. │ │││╎│││   0x0000da3c      21582a91       add x1, x1, 0xa96           ; 0xba96 ; "### Deleting argument "
  590. │ │││╎│││   0x0000da40      e4270094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  591. │ ────────< 0x0000da44      13000014       b 0xda90
  592. │ │││╎│││   ; CODE XREF from main @ 0xda24(x)
  593. │ ────────> 0x0000da48      3fa100f1       cmp x9, 0x28
  594. │ ────────< 0x0000da4c      88030054       b.hi 0xdabc
  595. │ │││╎│││   0x0000da50      e1ffffd0       adrp x1, 0xb000
  596. │ │││╎│││   0x0000da54      22058052       mov w2, 0x29                ; ')'
  597. │ │││╎│││   0x0000da58      e00314aa       mov x0, x20
  598. │ │││╎│││   0x0000da5c      21a43091       add x1, x1, 0xc29           ; 0xbc29 ; "### Invalid X edit, end of command line!\n"
  599. │ │││╎│││   0x0000da60      dc270094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  600. │ ────────< 0x0000da64      1f000014       b 0xdae0
  601. │ │││╎│││   ; CODE XREF from main @ 0xda2c(x)
  602. │ ────────> 0x0000da68      eaffffd0       adrp x10, 0xb000
  603. │ │││╎│││   0x0000da6c      4a592a91       add x10, x10, 0xa96         ; 0xba96 ; "### Deleting argument "
  604. │ │││╎│││   0x0000da70      49e140f8       ldur x9, [x10, 0xe]
  605. │ │││╎│││   0x0000da74      4001c03d       ldr q0, [x10]               ; [0xba96:4]=0x20232323 ; "### Deleting argument "
  606. │ │││╎│││   0x0000da78      e00314aa       mov x0, x20
  607. │ │││╎│││   0x0000da7c      09e100f8       stur x9, [x8, 0xe]
  608. │ │││╎│││   0x0000da80      0001803d       str q0, [x8]
  609. │ │││╎│││   0x0000da84      a80240f9       ldr x8, [x21]
  610. │ │││╎│││   0x0000da88      08590091       add x8, x8, 0x16
  611. │ │││╎│││   0x0000da8c      a80200f9       str x8, [x21]
  612. │ │││╎│││   ; CODE XREF from main @ 0xda44(x)
  613. │ ────────> 0x0000da90      e88f44f9       ldr x8, [sp, 0x918]
  614. │ │││╎│││   0x0000da94      017978f8       ldr x1, [x8, x24, lsl 3]    ; int64_t arg2
  615. │ │││╎│││   0x0000da98      35060094       bl method llvm::raw_ostream::operator<<(char const*) ; method.llvm::raw_ostream.operator___char_const_
  616. │ │││╎│││   0x0000da9c      092041a9       ldp x9, x8, [x0, 0x10]
  617. │ │││╎│││   0x0000daa0      1f0109eb       cmp x8, x9
  618. │ ────────< 0x0000daa4      22020054       b.hs 0xdae8
  619. │ │││╎│││   0x0000daa8      09050091       add x9, x8, 1
  620. │ │││╎│││   0x0000daac      090c00f9       str x9, [x0, 0x18]
  621. │ │││╎│││   0x0000dab0      49018052       mov w9, 0xa
  622. │ │││╎│││   0x0000dab4      09010039       strb w9, [x8]
  623. │ ────────< 0x0000dab8      0e000014       b 0xdaf0
  624. │ │││╎│││   ; CODE XREF from main @ 0xda4c(x)
  625. │ ────────> 0x0000dabc      e9ffffd0       adrp x9, 0xb000
  626. │ │││╎│││   0x0000dac0      29a53091       add x9, x9, 0xc29           ; 0xbc29 ; "### Invalid X edit, end of command line!\n"
  627. │ │││╎│││   0x0000dac4      2091c13c       ldur q0, [x9, 0x19]
  628. │ │││╎│││   0x0000dac8      220540ad       ldp q2, q1, [x9]            ; [0xbc29:4]=0x20232323 ; "### Invalid X edit, end of command line!\n"
  629. │ │││╎│││   0x0000dacc      0091813c       stur q0, [x8, 0x19]
  630. │ │││╎│││   0x0000dad0      020500ad       stp q2, q1, [x8]
  631. │ │││╎│││   0x0000dad4      a80240f9       ldr x8, [x21]
  632. │ │││╎│││   0x0000dad8      08a50091       add x8, x8, 0x29
  633. │ │││╎│││   0x0000dadc      a80200f9       str x8, [x21]
  634. │ │││╎│││   ; CODE XREF from main @ 0xda64(x)
  635. │ ────────> 0x0000dae0      f72349b9       ldr w23, [sp, 0x920]
  636. │ ────────< 0x0000dae4      99ffff17       b 0xd948
  637. │ │││╎│││   ; CODE XREF from main @ 0xdaa4(x)
  638. │ ────────> 0x0000dae8      41018052       mov w1, 0xa
  639. │ │││╎│││   0x0000daec      c9270094       bl sym llvm::raw_ostream::write(unsigned char) ; sym.imp.llvm::raw_ostream::write_unsigned_char_
  640. │ │││╎│││   ; CODE XREF from main @ 0xdab8(x)
  641. │ ────────> 0x0000daf0      e98f44f9       ldr x9, [sp, 0x918]
  642. │ │││╎│││   0x0000daf4      e82349b9       ldr w8, [sp, 0x920]
  643. │ │││╎│││   0x0000daf8      200d188b       add x0, x9, x24, lsl 3
  644. │ │││╎│││   0x0000dafc      01200091       add x1, x0, 8
  645. │ │││╎│││   0x0000db00      290d088b       add x9, x9, x8, lsl 3
  646. │ │││╎│││   0x0000db04      220101eb       subs x2, x9, x1
  647. │ ────────< 0x0000db08      60000054       b.eq 0xdb14
  648. │ │││╎│││   0x0000db0c      49270094       bl sym.imp.memmove          ; void *memmove(void *s1, const void *s2, size_t n)
  649. │ │││╎│││   0x0000db10      e82349b9       ldr w8, [sp, 0x920]
  650. │ │││╎│││   ; CODE XREF from main @ 0xdb08(x)
  651. │ ────────> 0x0000db14      17050051       sub w23, w8, 1
  652. │ │││╎│││   0x0000db18      f72309b9       str w23, [sp, 0x920]
  653. │ ────────< 0x0000db1c      8bffff17       b 0xd948
  654. │ │││╎│││   ; CODE XREF from main @ 0xd8b4(x)
  655. │ ────────> 0x0000db20      df0200f1       cmp x22, 0
  656. │ │││╎│││   0x0000db24      e8079f1a       cset w8, ne
  657. │ │││╎│││   0x0000db28      2107999a       cinc x1, x25, ne
  658. │ │││╎│││   0x0000db2c      c20208cb       sub x2, x22, x8
  659. │ │││╎│││   0x0000db30      e0432191       add x0, sp, 0x850
  660. │ │││╎│││   0x0000db34      36060094       bl sym GetStableCStr(std::__ndk1::set<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::less<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > >&, llvm::StringRef) ; sym.GetStableCStr_std::__ndk1::set_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_____std::__ndk1::less_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_______std::__ndk1::allocator_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_________llvm::StringRef_
  661. │ │││╎│││   0x0000db38      e0c301f9       str x0, [var_18h0]
  662. │ │││╎│││   0x0000db3c      892241a9       ldp x9, x8, [x20, 0x10]
  663. │ │││╎│││   0x0000db40      f60300aa       mov x22, x0
  664. │ │││╎│││   0x0000db44      290108cb       sub x9, x9, x8
  665. │ │││╎│││   0x0000db48      3f4d00f1       cmp x9, 0x13
  666. │ ────────< 0x0000db4c      28290054       b.hi 0xe070
  667. │ │││╎│││   0x0000db50      e1ffffd0       adrp x1, 0xb000
  668. │ │││╎│││   0x0000db54      82028052       mov w2, 0x14
  669. │ │││╎│││   0x0000db58      e00314aa       mov x0, x20
  670. │ │││╎│││   0x0000db5c      21b42a91       add x1, x1, 0xaad           ; 0xbaad ; "### Adding argument "
  671. │ │││╎│││   0x0000db60      9c270094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  672. │ ────────< 0x0000db64      4e010014       b 0xe09c
  673. │ │││╎│││   ; CODE XREF from main @ 0xd8d0(x)
  674. │ └───────> 0x0000db68      df0200f1       cmp x22, 0
  675. │  ││╎│││   0x0000db6c      e8079f1a       cset w8, ne
  676. │  ││╎│││   0x0000db70      2107999a       cinc x1, x25, ne
  677. │  ││╎│││   0x0000db74      c20208cb       sub x2, x22, x8
  678. │  ││╎│││   0x0000db78      e0432191       add x0, sp, 0x850
  679. │  ││╎│││   0x0000db7c      24060094       bl sym GetStableCStr(std::__ndk1::set<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::less<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > >&, llvm::StringRef) ; sym.GetStableCStr_std::__ndk1::set_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_____std::__ndk1::less_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_______std::__ndk1::allocator_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_________llvm::StringRef_
  680. │  ││╎│││   0x0000db80      e0c301f9       str x0, [var_18h0]
  681. │  ││╎│││   0x0000db84      892241a9       ldp x9, x8, [x20, 0x10]
  682. │  ││╎│││   0x0000db88      f60300aa       mov x22, x0
  683. │  ││╎│││   0x0000db8c      290108cb       sub x9, x9, x8
  684. │  ││╎│││   0x0000db90      3f4d00f1       cmp x9, 0x13
  685. │ ┌───────< 0x0000db94      a8290054       b.hi 0xe0c8
  686. │ │││╎│││   0x0000db98      e1ffffd0       adrp x1, 0xb000
  687. │ │││╎│││   0x0000db9c      82028052       mov w2, 0x14
  688. │ │││╎│││   0x0000dba0      e00314aa       mov x0, x20
  689. │ │││╎│││   0x0000dba4      21b42a91       add x1, x1, 0xaad           ; 0xbaad ; "### Adding argument "
  690. │ │││╎│││   0x0000dba8      8a270094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  691. │ ────────< 0x0000dbac      52010014       b 0xe0f4
  692. │ │││╎│││   ; CODE XREF from main @ 0xd8bc(x)
  693. │ ────────> 0x0000dbb0      e82349b9       ldr w8, [sp, 0x920]
  694. │ │││╎│││   0x0000dbb4      1f090071       cmp w8, 2
  695. │ ────────< 0x0000dbb8      c32e0054       b.lo 0xe190
  696. │ │││╎│││   0x0000dbbc      36008052       mov w22, 1
  697. │ │││╎│││   0x0000dbc0      33008052       mov w19, 1
  698. │ │││╎│││   ; CODE XREF from main @ 0xdc04(x)
  699. │ ────────> 0x0000dbc4      e98f44f9       ldr x9, [sp, 0x918]
  700. │ │││╎│││   0x0000dbc8      297976f8       ldr x9, [x9, x22, lsl 3]
  701. │ ────────< 0x0000dbcc      890100b4       cbz x9, 0xdbfc
  702. │ │││╎│││   0x0000dbd0      2a014039       ldrb w10, [x9]
  703. │ │││╎│││   0x0000dbd4      5fb50071       cmp w10, 0x2d
  704. │ ────────< 0x0000dbd8      01010054       b.ne 0xdbf8
  705. │ │││╎│││   0x0000dbdc      2a054039       ldrb w10, [x9, 1]
  706. │ │││╎│││   0x0000dbe0      5f3d0171       cmp w10, 0x4f
  707. │ ────────< 0x0000dbe4      a1000054       b.ne 0xdbf8
  708. │ │││╎│││   0x0000dbe8      2a094039       ldrb w10, [x9, 2]
  709. │ ────────< 0x0000dbec      ea010034       cbz w10, 0xdc28
  710. │ │││╎│││   0x0000dbf0      290d4039       ldrb w9, [x9, 3]
  711. │ ────────< 0x0000dbf4      c9000034       cbz w9, 0xdc0c
  712. │ │││╎│││   ; CODE XREFS from main @ 0xdbd8(x), 0xdbe4(x), 0xdc24(x)
  713. │ ────────> 0x0000dbf8      73060011       add w19, w19, 1
  714. │ │││╎│││   ; CODE XREFS from main @ 0xdbcc(x), 0xdcd8(x)
  715. │ ────────> 0x0000dbfc      1f01136b       cmp w8, w19
  716. │ │││╎│││   0x0000dc00      f603132a       mov w22, w19
  717. │ ────────< 0x0000dc04      08feff54       b.hi 0xdbc4
  718. │ ────────< 0x0000dc08      61010014       b 0xe18c
  719. │ │││╎│││   ; CODE XREF from main @ 0xdbf4(x)
  720. │ ────────> 0x0000dc0c      5fcd0171       cmp w10, 0x73
  721. │ ────────< 0x0000dc10      c0000054       b.eq 0xdc28
  722. │ │││╎│││   0x0000dc14      5fe90171       cmp w10, 0x7a
  723. │ ────────< 0x0000dc18      80000054       b.eq 0xdc28
  724. │ │││╎│││   0x0000dc1c      49c10051       sub w9, w10, 0x30
  725. │ │││╎│││   0x0000dc20      3f250071       cmp w9, 9
  726. │ ────────< 0x0000dc24      a8feff54       b.hi 0xdbf8
  727. │ │││╎│││   ; CODE XREFS from main @ 0xdbec(x), 0xdc10(x), 0xdc18(x)
  728. │ ────────> 0x0000dc28      892241a9       ldp x9, x8, [x20, 0x10]
  729. │ │││╎│││   0x0000dc2c      290108cb       sub x9, x9, x8
  730. │ │││╎│││   0x0000dc30      3f5500f1       cmp x9, 0x15
  731. │ ────────< 0x0000dc34      e8000054       b.hi 0xdc50
  732. │ │││╎│││   0x0000dc38      e1ffffd0       adrp x1, 0xb000
  733. │ │││╎│││   0x0000dc3c      c2028052       mov w2, 0x16
  734. │ │││╎│││   0x0000dc40      e00314aa       mov x0, x20
  735. │ │││╎│││   0x0000dc44      21582a91       add x1, x1, 0xa96           ; 0xba96 ; "### Deleting argument "
  736. │ │││╎│││   0x0000dc48      62270094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  737. │ ────────< 0x0000dc4c      0b000014       b 0xdc78
  738. │ │││╎│││   ; CODE XREF from main @ 0xdc34(x)
  739. │ ────────> 0x0000dc50      eaffffd0       adrp x10, 0xb000
  740. │ │││╎│││   0x0000dc54      4a592a91       add x10, x10, 0xa96         ; 0xba96 ; "### Deleting argument "
  741. │ │││╎│││   0x0000dc58      49e140f8       ldur x9, [x10, 0xe]
  742. │ │││╎│││   0x0000dc5c      4001c03d       ldr q0, [x10]               ; [0xba96:4]=0x20232323 ; "### Deleting argument "
  743. │ │││╎│││   0x0000dc60      e00314aa       mov x0, x20
  744. │ │││╎│││   0x0000dc64      09e100f8       stur x9, [x8, 0xe]
  745. │ │││╎│││   0x0000dc68      0001803d       str q0, [x8]
  746. │ │││╎│││   0x0000dc6c      a80240f9       ldr x8, [x21]
  747. │ │││╎│││   0x0000dc70      08590091       add x8, x8, 0x16
  748. │ │││╎│││   0x0000dc74      a80200f9       str x8, [x21]
  749. │ │││╎│││   ; CODE XREF from main @ 0xdc4c(x)
  750. │ ────────> 0x0000dc78      e88f44f9       ldr x8, [sp, 0x918]
  751. │ │││╎│││   0x0000dc7c      017976f8       ldr x1, [x8, x22, lsl 3]    ; int64_t arg2
  752. │ │││╎│││   0x0000dc80      bb050094       bl method llvm::raw_ostream::operator<<(char const*) ; method.llvm::raw_ostream.operator___char_const_
  753. │ │││╎│││   0x0000dc84      092041a9       ldp x9, x8, [x0, 0x10]
  754. │ │││╎│││   0x0000dc88      1f0109eb       cmp x8, x9
  755. │ ────────< 0x0000dc8c      c2000054       b.hs 0xdca4
  756. │ │││╎│││   0x0000dc90      09050091       add x9, x8, 1
  757. │ │││╎│││   0x0000dc94      090c00f9       str x9, [x0, 0x18]
  758. │ │││╎│││   0x0000dc98      49018052       mov w9, 0xa
  759. │ │││╎│││   0x0000dc9c      09010039       strb w9, [x8]
  760. │ ────────< 0x0000dca0      03000014       b 0xdcac
  761. │ │││╎│││   ; CODE XREF from main @ 0xdc8c(x)
  762. │ ────────> 0x0000dca4      41018052       mov w1, 0xa
  763. │ │││╎│││   0x0000dca8      5a270094       bl sym llvm::raw_ostream::write(unsigned char) ; sym.imp.llvm::raw_ostream::write_unsigned_char_
  764. │ │││╎│││   ; CODE XREF from main @ 0xdca0(x)
  765. │ ────────> 0x0000dcac      e98f44f9       ldr x9, [sp, 0x918]
  766. │ │││╎│││   0x0000dcb0      e82349b9       ldr w8, [sp, 0x920]
  767. │ │││╎│││   0x0000dcb4      200d168b       add x0, x9, x22, lsl 3
  768. │ │││╎│││   0x0000dcb8      01200091       add x1, x0, 8
  769. │ │││╎│││   0x0000dcbc      290d088b       add x9, x9, x8, lsl 3
  770. │ │││╎│││   0x0000dcc0      220101eb       subs x2, x9, x1
  771. │ ────────< 0x0000dcc4      60000054       b.eq 0xdcd0
  772. │ │││╎│││   0x0000dcc8      da260094       bl sym.imp.memmove          ; void *memmove(void *s1, const void *s2, size_t n)
  773. │ │││╎│││   0x0000dccc      e82349b9       ldr w8, [sp, 0x920]
  774. │ │││╎│││   ; CODE XREF from main @ 0xdcc4(x)
  775. │ ────────> 0x0000dcd0      08050051       sub w8, w8, 1
  776. │ │││╎│││   0x0000dcd4      e82309b9       str w8, [sp, 0x920]
  777. │ ────────< 0x0000dcd8      c9ffff17       b 0xdbfc
  778. │ │││╎│││   ; CODE XREF from main @ 0xd8d8(x)
  779. │ ────────> 0x0000dcdc      ea0b40f9       ldr x10, [sp, 0x10]
  780. │ │││╎│││   0x0000dce0      1f010072       tst w8, 1
  781. │ │││╎│││   0x0000dce4      4a05899a       csinc x10, x10, x9, eq
  782. │ ────────< 0x0000dce8      b61700b4       cbz x22, 0xdfdc
  783. │ │││╎│││   0x0000dcec      4a014039       ldrb w10, [x10]
  784. │ │││╎│││   0x0000dcf0      5fbd0071       cmp w10, 0x2f
  785. │ ────────< 0x0000dcf4      41170054       b.ne 0xdfdc
  786. │ │││╎│││   0x0000dcf8      290500d1       sub x9, x9, 1
  787. │ │││╎│││   0x0000dcfc      1f010072       tst w8, 1
  788. │ │││╎│││   0x0000dd00      a88302d1       sub x8, x29, 0xa0
  789. │ │││╎│││   0x0000dd04      0801899a       csel x8, x8, x9, eq
  790. │ │││╎│││   0x0000dd08      08697638       ldrb w8, [x8, x22]
  791. │ │││╎│││   0x0000dd0c      1fbd0071       cmp w8, 0x2f
  792. │ ────────< 0x0000dd10      61160054       b.ne 0xdfdc
  793. │ │││╎│││   0x0000dd14      df0a00f1       cmp x22, 2
  794. │ │││╎│││   0x0000dd18      49008052       mov w9, 2
  795. │ │││╎│││   0x0000dd1c      c80600d1       sub x8, x22, 1
  796. │ │││╎│││   0x0000dd20      d732899a       csel x23, x22, x9, lo
  797. │ │││╎│││   0x0000dd24      ff0208eb       cmp x23, x8
  798. │ │││╎│││   0x0000dd28      0831979a       csel x8, x8, x23, lo
  799. │ │││╎│││   0x0000dd2c      df0208eb       cmp x22, x8
  800. │ │││╎│││   0x0000dd30      c832889a       csel x8, x22, x8, lo
  801. │ │││╎│││   0x0000dd34      020117eb       subs x2, x8, x23
  802. │ ────────< 0x0000dd38      20150054       b.eq 0xdfdc
  803. │ │││╎│││   0x0000dd3c      3303178b       add x19, x25, x23
  804. │ │││╎│││   0x0000dd40      e1058052       mov w1, 0x2f                ; '/'
  805. │ │││╎│││   0x0000dd44      e00313aa       mov x0, x19                 ; void *s
  806. │ │││╎│││   0x0000dd48      36270094       bl sym.imp.memchr           ; void *memchr(void *s, int c, size_t n)
  807. │ ────────< 0x0000dd4c      801400b4       cbz x0, 0xdfdc
  808. │ │││╎│││   0x0000dd50      080013cb       sub x8, x0, x19
  809. │ │││╎│││   0x0000dd54      1f0500b1       cmn x8, 1
  810. │ ────────< 0x0000dd58      20140054       b.eq 0xdfdc
  811. │ │││╎│││   0x0000dd5c      c80217cb       sub x8, x22, x23
  812. │ │││╎│││   0x0000dd60      f3a303a9       stp x19, x8, [var_18h]
  813. │ │││╎│││   0x0000dd64      f3058052       mov w19, 0x2f               ; '/'
  814. │ │││╎│││   0x0000dd68      e8030e91       add x8, sp, 0x380
  815. │ │││╎│││   0x0000dd6c      e0e30091       add x0, sp, 0x38            ; int64_t arg1
  816. │ │││╎│││   0x0000dd70      e1e32091       add x1, sp, 0x838           ; int64_t arg3
  817. │ │││╎│││   0x0000dd74      22008052       mov w2, 1
  818. │ │││╎│││   0x0000dd78      f3e32039       strb w19, [sp, 0x838]
  819. │ │││╎│││   0x0000dd7c      fb060094       bl method llvm::StringRef::split(llvm::StringRef) const ; method.llvm::StringRef.split_llvm::StringRef__const
  820. │ │││╎│││   0x0000dd80      a92374a9       ldp x9, x8, [x29, -0xc0]
  821. │ │││╎│││   0x0000dd84      4a008052       mov w10, 2
  822. │ │││╎│││   0x0000dd88      f7c341f9       ldr x23, [var_18h0]
  823. │ │││╎│││   0x0000dd8c      f8c741f9       ldr x24, [var_18h8]
  824. │ │││╎│││   0x0000dd90      1f0900f1       cmp x8, 2
  825. │ │││╎│││   0x0000dd94      0a318a9a       csel x10, x8, x10, lo
  826. │ │││╎│││   0x0000dd98      29010a8b       add x9, x9, x10
  827. │ │││╎│││   0x0000dd9c      08010acb       sub x8, x8, x10
  828. │ │││╎│││   0x0000dda0      e9a303a9       stp x9, x8, [var_18h]
  829. │ │││╎│││   0x0000dda4      e8030e91       add x8, sp, 0x380
  830. │ │││╎│││   0x0000dda8      e0e30091       add x0, sp, 0x38            ; int64_t arg1
  831. │ │││╎│││   0x0000ddac      e1e32091       add x1, sp, 0x838           ; int64_t arg3
  832. │ │││╎│││   0x0000ddb0      22008052       mov w2, 1
  833. │ │││╎│││   0x0000ddb4      f3e32039       strb w19, [sp, 0x838]
  834. │ │││╎│││   0x0000ddb8      ec060094       bl method llvm::StringRef::split(llvm::StringRef) const ; method.llvm::StringRef.split_llvm::StringRef__const
  835. │ │││╎│││   0x0000ddbc      e8cf41f9       ldr x8, [sp, 0x398]
  836. │ │││╎│││   0x0000ddc0      fa2349b9       ldr w26, [sp, 0x920]
  837. │ │││╎│││   0x0000ddc4      090500d1       sub x9, x8, 1
  838. │ │││╎│││   0x0000ddc8      1f0109eb       cmp x8, x9
  839. │ │││╎│││   0x0000ddcc      1631899a       csel x22, x8, x9, lo
  840. │ │││╎│││   0x0000ddd0      5f070071       cmp w26, 1
  841. │ ────────< 0x0000ddd4      c0270054       b.eq 0xe2cc
  842. │ │││╎│││   0x0000ddd8      e8cb41f9       ldr x8, [sp, 0x390]
  843. │ │││╎│││   0x0000dddc      39008052       mov w25, 1
  844. │ │││╎│││   0x0000dde0      e80700f9       str x8, [sp, 8]
  845. │ │││╎│││   ; CODE XREF from main @ 0xdfd4(x)
  846. │ ────────> 0x0000dde4      e88f44f9       ldr x8, [sp, 0x918]
  847. │ │││╎│││   0x0000dde8      087979f8       ldr x8, [x8, x25, lsl 3]
  848. │ ────────< 0x0000ddec      080f00b4       cbz x8, 0xdfcc
  849. │ │││╎│││   0x0000ddf0      e0e30091       add x0, sp, 0x38
  850. │ │││╎│││   0x0000ddf4      e10317aa       mov x1, x23
  851. │ │││╎│││   0x0000ddf8      e20318aa       mov x2, x24
  852. │ │││╎│││   0x0000ddfc      e3031f2a       mov w3, wzr
  853. │ │││╎│││   0x0000de00      0c270094       bl sym llvm::Regex::Regex(llvm::StringRef, unsigned int) ; sym.imp.llvm::Regex::Regex_llvm::StringRef__unsigned_int_
  854. │ │││╎│││   0x0000de04      e88f44f9       ldr x8, [sp, 0x918]
  855. │ │││╎│││   0x0000de08      137979f8       ldr x19, [x8, x25, lsl 3]
  856. │ ────────< 0x0000de0c      b30000b4       cbz x19, 0xde20
  857. │ │││╎│││   0x0000de10      e00313aa       mov x0, x19                 ; const char *s
  858. │ │││╎│││   0x0000de14      77260094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  859. │ │││╎│││   0x0000de18      e40300aa       mov x4, x0
  860. │ ────────< 0x0000de1c      02000014       b 0xde24
  861. │ │││╎│││   ; CODE XREF from main @ 0xde0c(x)
  862. │ ────────> 0x0000de20      e4031faa       mov x4, xzr
  863. │ │││╎│││   ; CODE XREF from main @ 0xde1c(x)
  864. │ ────────> 0x0000de24      e10740f9       ldr x1, [sp, 8]
  865. │ │││╎│││   0x0000de28      e8030e91       add x8, sp, 0x380
  866. │ │││╎│││   0x0000de2c      e0e30091       add x0, sp, 0x38
  867. │ │││╎│││   0x0000de30      e20316aa       mov x2, x22
  868. │ │││╎│││   0x0000de34      e30313aa       mov x3, x19
  869. │ │││╎│││   0x0000de38      e5031faa       mov x5, xzr
  870. │ │││╎│││   0x0000de3c      01270094       bl method llvm::Regex::sub(llvm::StringRef, llvm::StringRef, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >*) ; method.llvm::Regex.sub_llvm::StringRef__llvm::StringRef__std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char____
  871. │ │││╎│││   0x0000de40      e0e30091       add x0, sp, 0x38
  872. │ │││╎│││   0x0000de44      03270094       bl sym llvm::Regex::~Regex() ; sym.imp.llvm::Regex::Regex__
  873. │ │││╎│││   0x0000de48      e88f44f9       ldr x8, [sp, 0x918]
  874. │ │││╎│││   0x0000de4c      137979f8       ldr x19, [x8, x25, lsl 3]
  875. │ │││╎│││   0x0000de50      e00313aa       mov x0, x19                 ; const char *s
  876. │ │││╎│││   0x0000de54      67260094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  877. │ │││╎│││   0x0000de58      e8034e39       ldrb w8, [var_18h0]
  878. │ │││╎│││   0x0000de5c      e9c741f9       ldr x9, [var_18h8]
  879. │ │││╎│││   0x0000de60      0afd41d3       lsr x10, x8, 1
  880. │ │││╎│││   0x0000de64      1f010072       tst w8, 1
  881. │ │││╎│││   0x0000de68      4801899a       csel x8, x10, x9, eq
  882. │ │││╎│││   0x0000de6c      1f0008eb       cmp x0, x8
  883. │ ────────< 0x0000de70      01010054       b.ne 0xde90
  884. │ │││╎│││   0x0000de74      e40300aa       mov x4, x0
  885. │ │││╎│││   0x0000de78      e0030e91       add x0, sp, 0x380
  886. │ │││╎│││   0x0000de7c      02008092       mov x2, -1
  887. │ │││╎│││   0x0000de80      e1031faa       mov x1, xzr
  888. │ │││╎│││   0x0000de84      e30313aa       mov x3, x19
  889. │ │││╎│││   0x0000de88      f6260094       bl method std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >::compare(unsigned long, unsigned long, char const*, unsigned long) const ; method.std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char___.compare_unsigned_long__unsigned_long__char_const__unsigned_long__const
  890. │ ────────< 0x0000de8c      80090034       cbz w0, 0xdfbc
  891. │ │││╎│││   ; CODE XREF from main @ 0xde70(x)
  892. │ ────────> 0x0000de90      892241a9       ldp x9, x8, [x20, 0x10]
  893. │ │││╎│││   0x0000de94      290108cb       sub x9, x9, x8
  894. │ │││╎│││   0x0000de98      3f3900f1       cmp x9, 0xe
  895. │ ────────< 0x0000de9c      e8000054       b.hi 0xdeb8
  896. │ │││╎│││   0x0000dea0      e1ffffd0       adrp x1, 0xb000
  897. │ │││╎│││   0x0000dea4      e2018052       mov w2, 0xf
  898. │ │││╎│││   0x0000dea8      e00314aa       mov x0, x20
  899. │ │││╎│││   0x0000deac      21182a91       add x1, x1, 0xa86           ; 0xba86 ; "### Replacing '"
  900. │ │││╎│││   0x0000deb0      c8260094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  901. │ ────────< 0x0000deb4      0b000014       b 0xdee0
  902. │ │││╎│││   ; CODE XREF from main @ 0xde9c(x)
  903. │ ────────> 0x0000deb8      eaffffd0       adrp x10, 0xb000
  904. │ │││╎│││   0x0000debc      4a192a91       add x10, x10, 0xa86         ; 0xba86 ; "### Replacing '"
  905. │ │││╎│││   0x0000dec0      497140f8       ldur x9, [x10, 7]
  906. │ │││╎│││   0x0000dec4      4a0140f9       ldr x10, [x10]              ; [0xba86:4]=0x20232323 ; "### Replacing '"
  907. │ │││╎│││   0x0000dec8      e00314aa       mov x0, x20
  908. │ │││╎│││   0x0000decc      097100f8       stur x9, [x8, 7]
  909. │ │││╎│││   0x0000ded0      0a0100f9       str x10, [x8]
  910. │ │││╎│││   0x0000ded4      a80240f9       ldr x8, [x21]
  911. │ │││╎│││   0x0000ded8      083d0091       add x8, x8, 0xf
  912. │ │││╎│││   0x0000dedc      a80200f9       str x8, [x21]
  913. │ │││╎│││   ; CODE XREF from main @ 0xdeb4(x)
  914. │ ────────> 0x0000dee0      e88f44f9       ldr x8, [sp, 0x918]
  915. │ │││╎│││   0x0000dee4      017979f8       ldr x1, [x8, x25, lsl 3]    ; int64_t arg2
  916. │ │││╎│││   0x0000dee8      21050094       bl method llvm::raw_ostream::operator<<(char const*) ; method.llvm::raw_ostream.operator___char_const_
  917. │ │││╎│││   0x0000deec      092041a9       ldp x9, x8, [x0, 0x10]
  918. │ │││╎│││   0x0000def0      290108cb       sub x9, x9, x8
  919. │ │││╎│││   0x0000def4      3f1d00f1       cmp x9, 7
  920. │ ────────< 0x0000def8      c8000054       b.hi 0xdf10
  921. │ │││╎│││   0x0000defc      e1ffffd0       adrp x1, 0xb000
  922. │ │││╎│││   0x0000df00      02018052       mov w2, 8
  923. │ │││╎│││   0x0000df04      21f42991       add x1, x1, 0xa7d           ; 0xba7d ; "' with '"
  924. │ │││╎│││   0x0000df08      b2260094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  925. │ ────────< 0x0000df0c      09000014       b 0xdf30
  926. │ │││╎│││   ; CODE XREF from main @ 0xdef8(x)
  927. │ ────────> 0x0000df10      e90484d2       mov x9, 0x2027              ; '\' '
  928. │ │││╎│││   0x0000df14      e92eadf2       movk x9, 0x6977, lsl 16     ; 'wi'
  929. │ │││╎│││   0x0000df18      890ecdf2       movk x9, 0x6874, lsl 32     ; 'th'
  930. │ │││╎│││   0x0000df1c      09e4e4f2       movk x9, 0x2720, lsl 48     ; ' \''
  931. │ │││╎│││   0x0000df20      090100f9       str x9, [x8]
  932. │ │││╎│││   0x0000df24      080c40f9       ldr x8, [x0, 0x18]
  933. │ │││╎│││   0x0000df28      08210091       add x8, x8, 8
  934. │ │││╎│││   0x0000df2c      080c00f9       str x8, [x0, 0x18]
  935. │ │││╎│││   ; CODE XREF from main @ 0xdf0c(x)
  936. │ ────────> 0x0000df30      e8034e39       ldrb w8, [var_18h0]
  937. │ │││╎│││   0x0000df34      e9cb41f9       ldr x9, [sp, 0x390]
  938. │ │││╎│││   0x0000df38      eac741f9       ldr x10, [var_18h8]
  939. │ │││╎│││   0x0000df3c      0bfd41d3       lsr x11, x8, 1
  940. │ │││╎│││   0x0000df40      1f010072       tst w8, 1
  941. │ │││╎│││   0x0000df44      a80740f9       ldr x8, [x29, 8]            ; [0x8:4]=0
  942. │ │││╎│││   0x0000df48      62018a9a       csel x2, x11, x10, eq
  943. │ │││╎│││   0x0000df4c      0101899a       csel x1, x8, x9, eq
  944. │ │││╎│││   0x0000df50      a0260094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  945. │ │││╎│││   0x0000df54      092041a9       ldp x9, x8, [x0, 0x10]
  946. │ │││╎│││   0x0000df58      290108cb       sub x9, x9, x8
  947. │ │││╎│││   0x0000df5c      3f0500f1       cmp x9, 1
  948. │ ────────< 0x0000df60      c8000054       b.hi 0xdf78
  949. │ │││╎│││   0x0000df64      e1ffffd0       adrp x1, 0xb000
  950. │ │││╎│││   0x0000df68      42008052       mov w2, 2
  951. │ │││╎│││   0x0000df6c      21983091       add x1, x1, 0xc26
  952. │ │││╎│││   0x0000df70      98260094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  953. │ ────────< 0x0000df74      06000014       b 0xdf8c
  954. │ │││╎│││   ; CODE XREF from main @ 0xdf60(x)
  955. │ ────────> 0x0000df78      e9448152       mov w9, 0xa27               ; '\'\n'
  956. │ │││╎│││   0x0000df7c      09010079       strh w9, [x8]
  957. │ │││╎│││   0x0000df80      080c40f9       ldr x8, [x0, 0x18]
  958. │ │││╎│││   0x0000df84      08090091       add x8, x8, 2
  959. │ │││╎│││   0x0000df88      080c00f9       str x8, [x0, 0x18]
  960. │ │││╎│││   ; CODE XREF from main @ 0xdf74(x)
  961. │ ────────> 0x0000df8c      e8034e39       ldrb w8, [var_18h0]
  962. │ │││╎│││   0x0000df90      e9cb41f9       ldr x9, [sp, 0x390]
  963. │ │││╎│││   0x0000df94      eac741f9       ldr x10, [var_18h8]
  964. │ │││╎│││   0x0000df98      ab0740f9       ldr x11, [x29, 8]           ; [0x8:4]=0
  965. │ │││╎│││   0x0000df9c      1f010072       tst w8, 1
  966. │ │││╎│││   0x0000dfa0      08fd41d3       lsr x8, x8, 1
  967. │ │││╎│││   0x0000dfa4      02018a9a       csel x2, x8, x10, eq
  968. │ │││╎│││   0x0000dfa8      6101899a       csel x1, x11, x9, eq
  969. │ │││╎│││   0x0000dfac      e0432191       add x0, sp, 0x850
  970. │ │││╎│││   0x0000dfb0      17050094       bl sym GetStableCStr(std::__ndk1::set<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::less<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > >&, llvm::StringRef) ; sym.GetStableCStr_std::__ndk1::set_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_____std::__ndk1::less_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_______std::__ndk1::allocator_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_________llvm::StringRef_
  971. │ │││╎│││   0x0000dfb4      e88f44f9       ldr x8, [sp, 0x918]
  972. │ │││╎│││   0x0000dfb8      007939f8       str x0, [x8, x25, lsl 3]
  973. │ │││╎│││   ; CODE XREF from main @ 0xde8c(x)
  974. │ ────────> 0x0000dfbc      e8034e39       ldrb w8, [var_18h0]
  975. │ ────────< 0x0000dfc0      68000036       tbz w8, 0, 0xdfcc
  976. │ │││╎│││   0x0000dfc4      e0cb41f9       ldr x0, [sp, 0x390]
  977. │ │││╎│││   0x0000dfc8      52260094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  978. │ │││╎│││   ; CODE XREFS from main @ 0xddec(x), 0xdfc0(x)
  979. │ ────────> 0x0000dfcc      39070091       add x25, x25, 1
  980. │ │││╎│││   0x0000dfd0      5f03196b       cmp w26, w25
  981. │ ────────< 0x0000dfd4      81f0ff54       b.ne 0xdde4
  982. │ ────────< 0x0000dfd8      bd000014       b 0xe2cc
  983. │ │││╎│││   ; XREFS: CODE 0x0000d8c8  CODE 0x0000d8e0  CODE 0x0000dce8  
  984. │ │││╎│││   ; XREFS: CODE 0x0000dcf4  CODE 0x0000dd10  CODE 0x0000dd38  
  985. │ │││╎│││   ; XREFS: CODE 0x0000dd4c  CODE 0x0000dd58  
  986. │ ────────> 0x0000dfdc      892241a9       ldp x9, x8, [x20, 0x10]
  987. │ │││╎│││   0x0000dfe0      290108cb       sub x9, x9, x8
  988. │ │││╎│││   0x0000dfe4      3f5900f1       cmp x9, 0x16
  989. │ ────────< 0x0000dfe8      e8000054       b.hi 0xe004
  990. │ │││╎│││   0x0000dfec      e1ffffd0       adrp x1, 0xb000
  991. │ │││╎│││   0x0000dff0      e2028052       mov w2, 0x17
  992. │ │││╎│││   0x0000dff4      e00314aa       mov x0, x20
  993. │ │││╎│││   0x0000dff8      21e42b91       add x1, x1, 0xaf9           ; 0xbaf9 ; "### Unrecognized edit: "
  994. │ │││╎│││   0x0000dffc      75260094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  995. │ ────────< 0x0000e000      0b000014       b 0xe02c
  996. │ │││╎│││   ; CODE XREF from main @ 0xdfe8(x)
  997. │ ────────> 0x0000e004      eaffffb0       adrp x10, 0xb000
  998. │ │││╎│││   0x0000e008      4ae52b91       add x10, x10, 0xaf9         ; 0xbaf9 ; "### Unrecognized edit: "
  999. │ │││╎│││   0x0000e00c      49f140f8       ldur x9, [x10, 0xf]
  1000. │ │││╎│││   0x0000e010      4001c03d       ldr q0, [x10]               ; [0xbaf9:4]=0x20232323 ; "### Unrecognized edit: "
  1001. │ │││╎│││   0x0000e014      e00314aa       mov x0, x20
  1002. │ │││╎│││   0x0000e018      09f100f8       stur x9, [x8, 0xf]
  1003. │ │││╎│││   0x0000e01c      0001803d       str q0, [x8]
  1004. │ │││╎│││   0x0000e020      a80240f9       ldr x8, [x21]
  1005. │ │││╎│││   0x0000e024      085d0091       add x8, x8, 0x17
  1006. │ │││╎│││   0x0000e028      a80200f9       str x8, [x21]
  1007. │ │││╎│││   ; CODE XREF from main @ 0xe000(x)
  1008. │ ────────> 0x0000e02c      e10319aa       mov x1, x25                 ; const void *s2
  1009. │ │││╎│││   0x0000e030      e20316aa       mov x2, x22                 ; uint32_t arg3
  1010. │ │││╎│││   0x0000e034      de040094       bl method llvm::raw_ostream::operator<<(llvm::StringRef) ; method.llvm::raw_ostream.operator___llvm::StringRef_
  1011. │ │││╎│││   0x0000e038      092041a9       ldp x9, x8, [x0, 0x10]
  1012. │ │││╎│││   0x0000e03c      3f0108eb       cmp x9, x8
  1013. │ ────────< 0x0000e040      c1000054       b.ne 0xe058
  1014. │ │││╎│││   0x0000e044      e1ffffb0       adrp x1, 0xb000
  1015. │ │││╎│││   0x0000e048      22008052       mov w2, 1
  1016. │ │││╎│││   0x0000e04c      21443191       add x1, x1, 0xc51
  1017. │ │││╎│││   0x0000e050      60260094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  1018. │ ────────< 0x0000e054      9e000014       b 0xe2cc
  1019. │ │││╎│││   ; CODE XREF from main @ 0xe040(x)
  1020. │ ────────> 0x0000e058      49018052       mov w9, 0xa
  1021. │ │││╎│││   0x0000e05c      09010039       strb w9, [x8]
  1022. │ │││╎│││   0x0000e060      080c40f9       ldr x8, [x0, 0x18]
  1023. │ │││╎│││   0x0000e064      08050091       add x8, x8, 1
  1024. │ │││╎│││   0x0000e068      080c00f9       str x8, [x0, 0x18]
  1025. │ ────────< 0x0000e06c      98000014       b 0xe2cc
  1026. │ │││╎│││   ; CODE XREF from main @ 0xdb4c(x)
  1027. │ ────────> 0x0000e070      e9ffffb0       adrp x9, 0xb000
  1028. │ │││╎│││   0x0000e074      29b52a91       add x9, x9, 0xaad           ; 0xbaad ; "### Adding argument "
  1029. │ │││╎│││   0x0000e078      2001c03d       ldr q0, [x9]                ; [0xbaad:4]=0x20232323 ; "### Adding argument "
  1030. │ │││╎│││   0x0000e07c      a9cc8d52       mov w9, 0x6e65              ; 'en'
  1031. │ │││╎│││   0x0000e080      890ea472       movk w9, 0x2074, lsl 16     ; 't '
  1032. │ │││╎│││   0x0000e084      091100b9       str w9, [x8, 0x10]
  1033. │ │││╎│││   0x0000e088      0001803d       str q0, [x8]
  1034. │ │││╎│││   0x0000e08c      a80240f9       ldr x8, [x21]
  1035. │ │││╎│││   0x0000e090      e00314aa       mov x0, x20
  1036. │ │││╎│││   0x0000e094      08510091       add x8, x8, 0x14
  1037. │ │││╎│││   0x0000e098      a80200f9       str x8, [x21]
  1038. │ │││╎│││   ; CODE XREF from main @ 0xdb64(x)
  1039. │ ────────> 0x0000e09c      e10316aa       mov x1, x22                 ; int64_t arg2
  1040. │ │││╎│││   0x0000e0a0      b3040094       bl method llvm::raw_ostream::operator<<(char const*) ; method.llvm::raw_ostream.operator___char_const_
  1041. │ │││╎│││   0x0000e0a4      092041a9       ldp x9, x8, [x0, 0x10]
  1042. │ │││╎│││   0x0000e0a8      290108cb       sub x9, x9, x8
  1043. │ │││╎│││   0x0000e0ac      3f1d00f1       cmp x9, 7
  1044. │ ────────< 0x0000e0b0      88030054       b.hi 0xe120
  1045. │ │││╎│││   0x0000e0b4      e1ffffb0       adrp x1, 0xb000
  1046. │ │││╎│││   0x0000e0b8      02018052       mov w2, 8
  1047. │ │││╎│││   0x0000e0bc      21982f91       add x1, x1, 0xbe6           ; 0xbbe6 ; " at end\n"
  1048. │ │││╎│││   0x0000e0c0      44260094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  1049. │ ────────< 0x0000e0c4      1f000014       b 0xe140
  1050. │ │││╎│││   ; CODE XREF from main @ 0xdb94(x)
  1051. │ └───────> 0x0000e0c8      e9ffffb0       adrp x9, 0xb000
  1052. │  ││╎│││   0x0000e0cc      29b52a91       add x9, x9, 0xaad           ; 0xbaad ; "### Adding argument "
  1053. │  ││╎│││   0x0000e0d0      2001c03d       ldr q0, [x9]                ; [0xbaad:4]=0x20232323 ; "### Adding argument "
  1054. │  ││╎│││   0x0000e0d4      a9cc8d52       mov w9, 0x6e65              ; 'en'
  1055. │  ││╎│││   0x0000e0d8      890ea472       movk w9, 0x2074, lsl 16     ; 't '
  1056. │  ││╎│││   0x0000e0dc      091100b9       str w9, [x8, 0x10]
  1057. │  ││╎│││   0x0000e0e0      0001803d       str q0, [x8]
  1058. │  ││╎│││   0x0000e0e4      a80240f9       ldr x8, [x21]
  1059. │  ││╎│││   0x0000e0e8      e00314aa       mov x0, x20
  1060. │  ││╎│││   0x0000e0ec      08510091       add x8, x8, 0x14
  1061. │  ││╎│││   0x0000e0f0      a80200f9       str x8, [x21]
  1062. │  ││╎│││   ; CODE XREF from main @ 0xdbac(x)
  1063. │ ────────> 0x0000e0f4      e10316aa       mov x1, x22                 ; int64_t arg2
  1064. │  ││╎│││   0x0000e0f8      9d040094       bl method llvm::raw_ostream::operator<<(char const*) ; method.llvm::raw_ostream.operator___char_const_
  1065. │  ││╎│││   0x0000e0fc      092041a9       ldp x9, x8, [x0, 0x10]
  1066. │  ││╎│││   0x0000e100      290108cb       sub x9, x9, x8
  1067. │  ││╎│││   0x0000e104      3f3500f1       cmp x9, 0xd
  1068. │ ┌───────< 0x0000e108      48020054       b.hi 0xe150
  1069. │ │││╎│││   0x0000e10c      e1ffffb0       adrp x1, 0xb000
  1070. │ │││╎│││   0x0000e110      c2018052       mov w2, 0xe
  1071. │ │││╎│││   0x0000e114      21dc2e91       add x1, x1, 0xbb7           ; 0xbbb7 ; " at beginning\n"
  1072. │ │││╎│││   0x0000e118      2e260094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  1073. │ ────────< 0x0000e11c      16000014       b 0xe174
  1074. │ │││╎│││   ; CODE XREF from main @ 0xe0b0(x)
  1075. │ ────────> 0x0000e120      09248cd2       mov x9, 0x6120              ; ' a'
  1076. │ │││╎│││   0x0000e124      890ea4f2       movk x9, 0x2074, lsl 16     ; 't '
  1077. │ │││╎│││   0x0000e128      a9cccdf2       movk x9, 0x6e65, lsl 32     ; 'en'
  1078. │ │││╎│││   0x0000e12c      894ce1f2       movk x9, 0xa64, lsl 48      ; 'd\n'
  1079. │ │││╎│││   0x0000e130      090100f9       str x9, [x8]
  1080. │ │││╎│││   0x0000e134      080c40f9       ldr x8, [x0, 0x18]
  1081. │ │││╎│││   0x0000e138      08210091       add x8, x8, 8
  1082. │ │││╎│││   0x0000e13c      080c00f9       str x8, [x0, 0x18]
  1083. │ │││╎│││   ; CODE XREF from main @ 0xe0c4(x)
  1084. │ ────────> 0x0000e140      e0632491       add x0, sp, 0x918           ; int64_t arg1
  1085. │ │││╎│││   0x0000e144      e1030e91       add x1, sp, 0x380           ; int64_t arg2
  1086. │ │││╎│││   0x0000e148      09050094       bl method llvm::SmallVectorTemplateBase<char const*, true>::push_back(char const* const&) ; method.llvm::SmallVectorTemplateBase_char_const__true_.push_back_char_const_const_
  1087. │ ────────< 0x0000e14c      60000014       b 0xe2cc
  1088. │ │││╎│││   ; CODE XREF from main @ 0xe108(x)
  1089. │ └───────> 0x0000e150      eaffffb0       adrp x10, 0xb000
  1090. │  ││╎│││   0x0000e154      4add2e91       add x10, x10, 0xbb7         ; 0xbbb7 ; " at beginning\n"
  1091. │  ││╎│││   0x0000e158      496140f8       ldur x9, [x10, 6]
  1092. │  ││╎│││   0x0000e15c      4a0140f9       ldr x10, [x10]              ; [0xbbb7:4]=0x20746120 ; " at beginning\n"
  1093. │  ││╎│││   0x0000e160      096100f8       stur x9, [x8, 6]
  1094. │  ││╎│││   0x0000e164      0a0100f9       str x10, [x8]
  1095. │  ││╎│││   0x0000e168      080c40f9       ldr x8, [x0, 0x18]
  1096. │  ││╎│││   0x0000e16c      08390091       add x8, x8, 0xe
  1097. │  ││╎│││   0x0000e170      080c00f9       str x8, [x0, 0x18]
  1098. │  ││╎│││   ; CODE XREF from main @ 0xe11c(x)
  1099. │ ────────> 0x0000e174      e88f44f9       ldr x8, [sp, 0x918]
  1100. │  ││╎│││   0x0000e178      e0632491       add x0, sp, 0x918           ; int64_t arg1
  1101. │  ││╎│││   0x0000e17c      e2030e91       add x2, sp, 0x380           ; void *s1
  1102. │  ││╎│││   0x0000e180      01210091       add x1, x8, 8               ; uint32_t arg2
  1103. │  ││╎│││   0x0000e184      be040094       bl method llvm::SmallVectorImpl<char const*>::insert(char const**, char const* const&) ; method.llvm::SmallVectorImpl_char_const_.insert_char_const__char_const_const_
  1104. │ ┌───────< 0x0000e188      51000014       b 0xe2cc
  1105. │ │││╎│││   ; CODE XREF from main @ 0xdc08(x)
  1106. │ ────────> 0x0000e18c      b95b74a9       ldp x25, x22, [x29, -0xc0]
  1107. │ │││╎│││   ; CODE XREF from main @ 0xdbb8(x)
  1108. │ ────────> 0x0000e190      892241a9       ldp x9, x8, [x20, 0x10]
  1109. │ │││╎│││   0x0000e194      290108cb       sub x9, x9, x8
  1110. │ │││╎│││   0x0000e198      3f4d00f1       cmp x9, 0x13
  1111. │ ────────< 0x0000e19c      e8000054       b.hi 0xe1b8
  1112. │ │││╎│││   0x0000e1a0      e1ffffb0       adrp x1, 0xb000
  1113. │ │││╎│││   0x0000e1a4      82028052       mov w2, 0x14
  1114. │ │││╎│││   0x0000e1a8      e00314aa       mov x0, x20
  1115. │ │││╎│││   0x0000e1ac      21b42a91       add x1, x1, 0xaad           ; 0xbaad ; "### Adding argument "
  1116. │ │││╎│││   0x0000e1b0      08260094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  1117. │ ────────< 0x0000e1b4      0c000014       b 0xe1e4
  1118. │ │││╎│││   ; CODE XREF from main @ 0xe19c(x)
  1119. │ ────────> 0x0000e1b8      e9ffffb0       adrp x9, 0xb000
  1120. │ │││╎│││   0x0000e1bc      29b52a91       add x9, x9, 0xaad           ; 0xbaad ; "### Adding argument "
  1121. │ │││╎│││   0x0000e1c0      2001c03d       ldr q0, [x9]                ; [0xbaad:4]=0x20232323 ; "### Adding argument "
  1122. │ │││╎│││   0x0000e1c4      a9cc8d52       mov w9, 0x6e65              ; 'en'
  1123. │ │││╎│││   0x0000e1c8      890ea472       movk w9, 0x2074, lsl 16     ; 't '
  1124. │ │││╎│││   0x0000e1cc      091100b9       str w9, [x8, 0x10]
  1125. │ │││╎│││   0x0000e1d0      0001803d       str q0, [x8]
  1126. │ │││╎│││   0x0000e1d4      a80240f9       ldr x8, [x21]
  1127. │ │││╎│││   0x0000e1d8      e00314aa       mov x0, x20
  1128. │ │││╎│││   0x0000e1dc      08510091       add x8, x8, 0x14
  1129. │ │││╎│││   0x0000e1e0      a80200f9       str x8, [x21]
  1130. │ │││╎│││   ; CODE XREF from main @ 0xe1b4(x)
  1131. │ ────────> 0x0000e1e4      e10319aa       mov x1, x25                 ; const void *s2
  1132. │ │││╎│││   0x0000e1e8      e20316aa       mov x2, x22                 ; uint32_t arg3
  1133. │ │││╎│││   0x0000e1ec      70040094       bl method llvm::raw_ostream::operator<<(llvm::StringRef) ; method.llvm::raw_ostream.operator___llvm::StringRef_
  1134. │ │││╎│││   0x0000e1f0      092041a9       ldp x9, x8, [x0, 0x10]
  1135. │ │││╎│││   0x0000e1f4      290108cb       sub x9, x9, x8
  1136. │ │││╎│││   0x0000e1f8      3f1d00f1       cmp x9, 7
  1137. │ ────────< 0x0000e1fc      c8000054       b.hi 0xe214
  1138. │ │││╎│││   0x0000e200      e1ffffb0       adrp x1, 0xb000
  1139. │ │││╎│││   0x0000e204      02018052       mov w2, 8
  1140. │ │││╎│││   0x0000e208      21982f91       add x1, x1, 0xbe6           ; 0xbbe6 ; " at end\n"
  1141. │ │││╎│││   0x0000e20c      f1250094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  1142. │ ────────< 0x0000e210      09000014       b 0xe234
  1143. │ │││╎│││   ; CODE XREF from main @ 0xe1fc(x)
  1144. │ ────────> 0x0000e214      09248cd2       mov x9, 0x6120              ; ' a'
  1145. │ │││╎│││   0x0000e218      890ea4f2       movk x9, 0x2074, lsl 16     ; 't '
  1146. │ │││╎│││   0x0000e21c      a9cccdf2       movk x9, 0x6e65, lsl 32     ; 'en'
  1147. │ │││╎│││   0x0000e220      894ce1f2       movk x9, 0xa64, lsl 48      ; 'd\n'
  1148. │ │││╎│││   0x0000e224      090100f9       str x9, [x8]
  1149. │ │││╎│││   0x0000e228      080c40f9       ldr x8, [x0, 0x18]
  1150. │ │││╎│││   0x0000e22c      08210091       add x8, x8, 8
  1151. │ │││╎│││   0x0000e230      080c00f9       str x8, [x0, 0x18]
  1152. │ │││╎│││   ; CODE XREF from main @ 0xe210(x)
  1153. │ ────────> 0x0000e234      e8e30091       add x8, sp, 0x38
  1154. │ │││╎│││   0x0000e238      a00303d1       sub x0, x29, 0xc0           ; int64_t arg1
  1155. │ │││╎│││   0x0000e23c      26040094       bl method llvm::StringRef::str() const ; method.llvm::StringRef.str___const
  1156. │ │││╎│││   0x0000e240      e8e34039       ldrb w8, [var_18h]
  1157. │ │││╎│││   0x0000e244      e92740f9       ldr x9, [var_28h]
  1158. │ │││╎│││   0x0000e248      e0e30091       add x0, sp, 0x38
  1159. │ │││╎│││   0x0000e24c      a2058052       mov w2, 0x2d                ; '-'
  1160. │ │││╎│││   0x0000e250      1f010072       tst w8, 1
  1161. │ │││╎│││   0x0000e254      e80f40f9       ldr x8, [sp, 0x18]
  1162. │ │││╎│││   0x0000e258      0101899a       csel x1, x8, x9, eq
  1163. │ │││╎│││   0x0000e25c      05260094       bl method std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >::insert(std::__ndk1::__wrap_iter<char const*>, char) ; method.std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char___.insert_std::__ndk1::__wrap_iter_char_const___char_
  1164. │ │││╎│││   0x0000e260      e083c33c       ldur q0, [var_18h]
  1165. │ │││╎│││   0x0000e264      e82740f9       ldr x8, [var_28h]
  1166. │ │││╎│││   0x0000e268      ab0740f9       ldr x11, [x29, 8]           ; [0x8:4]=0
  1167. │ │││╎│││   0x0000e26c      e0432191       add x0, sp, 0x850
  1168. │ │││╎│││   0x0000e270      e0e3803d       str q0, [var_18h0]
  1169. │ │││╎│││   0x0000e274      e9034e39       ldrb w9, [var_18h0]
  1170. │ │││╎│││   0x0000e278      eac741f9       ldr x10, [var_18h8]
  1171. │ │││╎│││   0x0000e27c      ffff03a9       stp xzr, xzr, [var_18h]
  1172. │ │││╎│││   0x0000e280      ff2700f9       str xzr, [var_28h]
  1173. │ │││╎│││   0x0000e284      3f010072       tst w9, 1
  1174. │ │││╎│││   0x0000e288      29fd41d3       lsr x9, x9, 1
  1175. │ │││╎│││   0x0000e28c      6101889a       csel x1, x11, x8, eq
  1176. │ │││╎│││   0x0000e290      22018a9a       csel x2, x9, x10, eq
  1177. │ │││╎│││   0x0000e294      e8cb01f9       str x8, [sp, 0x390]
  1178. │ │││╎│││   0x0000e298      5d040094       bl sym GetStableCStr(std::__ndk1::set<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::less<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > >&, llvm::StringRef) ; sym.GetStableCStr_std::__ndk1::set_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_____std::__ndk1::less_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_______std::__ndk1::allocator_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_________llvm::StringRef_
  1179. │ │││╎│││   0x0000e29c      e01f04f9       str x0, [sp, 0x838]
  1180. │ │││╎│││   0x0000e2a0      e0632491       add x0, sp, 0x918           ; int64_t arg1
  1181. │ │││╎│││   0x0000e2a4      e1e32091       add x1, sp, 0x838           ; int64_t arg2
  1182. │ │││╎│││   0x0000e2a8      b1040094       bl method llvm::SmallVectorTemplateBase<char const*, true>::push_back(char const* const&) ; method.llvm::SmallVectorTemplateBase_char_const__true_.push_back_char_const_const_
  1183. │ │││╎│││   0x0000e2ac      e8034e39       ldrb w8, [var_18h0]
  1184. │ ────────< 0x0000e2b0      68000036       tbz w8, 0, 0xe2bc
  1185. │ │││╎│││   0x0000e2b4      e0cb41f9       ldr x0, [sp, 0x390]
  1186. │ │││╎│││   0x0000e2b8      96250094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1187. │ │││╎│││   ; CODE XREF from main @ 0xe2b0(x)
  1188. │ ────────> 0x0000e2bc      e8e34039       ldrb w8, [var_18h]
  1189. │ ────────< 0x0000e2c0      68000036       tbz w8, 0, 0xe2cc
  1190. │ │││╎│││   0x0000e2c4      e02740f9       ldr x0, [var_28h]
  1191. │ │││╎│││   0x0000e2c8      92250094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1192. │ │││╎│││   ; XREFS: CODE 0x0000d8f8  CODE 0x0000d954  CODE 0x0000ddd4  
  1193. │ │││╎│││   ; XREFS: CODE 0x0000dfd8  CODE 0x0000e054  CODE 0x0000e06c  
  1194. │ │││╎│││   ; XREFS: CODE 0x0000e14c  CODE 0x0000e188  CODE 0x0000e2c0  
  1195. │ └───────> 0x0000e2cc      b90303d1       sub x25, x29, 0xc0
  1196. │  ││╎│││   0x0000e2d0      28834039       ldrb w8, [x25, 0x20]
  1197. │ ┌───────< 0x0000e2d4      68000036       tbz w8, 0, 0xe2e0
  1198. │ │││╎│││   0x0000e2d8      a00357f8       ldur x0, [x29, -0x90]
  1199. │ │││╎│││   0x0000e2dc      8d250094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1200. │ │││╎│││   ; CODE XREFS from main @ 0xd834(x), 0xe2d4(x)
  1201. │ └─└─────> 0x0000e2e0      e8031caa       mov x8, x28
  1202. │  │ ╎│││   0x0000e2e4      09154038       ldrb w9, [x8], 1            ; [0xb936:4]=0x5f434343 ; "CCC_OVERRIC"
  1203. │  │ ╎│││   0x0000e2e8      3f010071       cmp w9, 0
  1204. │  │ ╎│││   0x0000e2ec      9603889a       csel x22, x28, x8, eq
  1205. │  │ ╎│││   0x0000e2f0      c8024039       ldrb w8, [x22]
  1206. │  │ └────< 0x0000e2f4      e8a8ff35       cbnz w8, 0xd810
  1207. │  │  │││   ; CODE XREFS from main @ 0xd714(x), 0xd7e4(x)
  1208. │  │  └─└─> 0x0000e2f8      e88f44f9       ldr x8, [sp, 0x918]
  1209. │  │   │    0x0000e2fc      f82740b9       ldr w24, [sp, 0x24]
  1210. │  │   │    0x0000e300      f5e32091       add x21, sp, 0x838
  1211. │  │   │    0x0000e304      000140f9       ldr x0, [x8]                ; int64_t arg1
  1212. │  │   │    0x0000e308      e8e32091       add x8, sp, 0x838
  1213. │  │   │    0x0000e30c      e103182a       mov w1, w24
  1214. │  │   │    0x0000e310      73fbff97       bl sym GetExecutablePath(char const*, bool) ; sym.GetExecutablePath_char_const__bool_
  1215. │  │   │    0x0000e314      f38f44f9       ldr x19, [sp, 0x918]
  1216. │  │   │    0x0000e318      f62349b9       ldr w22, [sp, 0x920]
  1217. │  │   │    0x0000e31c      00158052       mov w0, 0xa8
  1218. │  │   │    0x0000e320      b4250094       bl sym operator new(unsigned long) ; sym.imp.operator_new_unsigned_long_
  1219. │  │   │    0x0000e324      4a0680d2       mov x10, 0x32               ; '2'
  1220. │  │   │    0x0000e328      09018052       mov w9, 8
  1221. │  │   │    0x0000e32c      2a00c0f2       movk x10, 1, lsl 32
  1222. │  │   │    0x0000e330      0aa401a9       stp x10, x9, [x0, 0x18]
  1223. │  │   │    0x0000e334      490180d2       mov x9, 0xa
  1224. │  │   │    0x0000e338      4901c0f2       movk x9, 0xa, lsl 32
  1225. │  │   │    0x0000e33c      0836c0d2       mov x8, 0x1b000000000
  1226. │  │   │    0x0000e340      090800f9       str x9, [x0, 0x10]
  1227. │  │   │    0x0000e344      c900c0d2       mov x9, 0x600000000
  1228. │  │   │    0x0000e348      00e4006f       movi v0.2d, 0000000000000000
  1229. │  │   │    0x0000e34c      082400a9       stp x8, x9, [x0]
  1230. │  │   │    0x0000e350      e8e30091       add x8, sp, 0x38
  1231. │  │   │    0x0000e354      f40300aa       mov x20, x0
  1232. │  │   │    0x0000e358      1f5000f9       str xzr, [x0, 0xa0]
  1233. │  │   │    0x0000e35c      008001ad       stp q0, q0, [x0, 0x30]
  1234. │  │   │    0x0000e360      008002ad       stp q0, q0, [x0, 0x50]
  1235. │  │   │    0x0000e364      008003ad       stp q0, q0, [x0, 0x70]
  1236. │  │   │    0x0000e368      0024803d       str q0, [x0, 0x90]
  1237. │  │   │    0x0000e36c      1fa00039       strb wzr, [x0, 0x28]
  1238. │  │   │    0x0000e370      c4250094       bl sym clang::driver::createDriverOptTable() ; sym.imp.clang::driver::createDriverOptTable__
  1239. │  │   │    0x0000e374      e01f40f9       ldr x0, [var_18h]
  1240. │  │   │    0x0000e378      c20600d1       sub x2, x22, 1
  1241. │  │   │    0x0000e37c      61220091       add x1, x19, 8
  1242. │  │   │    0x0000e380      e8030e91       add x8, sp, 0x380
  1243. │  │   │    0x0000e384      a38302d1       sub x3, x29, 0xa0
  1244. │  │   │    0x0000e388      a40303d1       sub x4, x29, 0xc0
  1245. │  │   │    0x0000e38c      e5031f2a       mov w5, wzr
  1246. │  │   │    0x0000e390      e6031f2a       mov w6, wzr
  1247. │  │   │    0x0000e394      bf250094       bl sym llvm::opt::OptTable::ParseArgs(llvm::ArrayRef<char const*>, unsigned int&, unsigned int&, unsigned int, unsigned int) const ; sym.imp.llvm::opt::OptTable::ParseArgs_llvm::ArrayRef_char_const___unsigned_int__unsigned_int__unsigned_int__unsigned_int__const
  1248. │  │   │    0x0000e398      e1030e91       add x1, sp, 0x380
  1249. │  │   │    0x0000e39c      23008052       mov w3, 1
  1250. │  │   │    0x0000e3a0      24008052       mov w4, 1
  1251. │  │   │    0x0000e3a4      e00314aa       mov x0, x20
  1252. │  │   │    0x0000e3a8      e2031faa       mov x2, xzr
  1253. │  │   │    0x0000e3ac      bd250094       bl sym clang::ParseDiagnosticArgs(clang::DiagnosticOptions&, llvm::opt::ArgList&, clang::DiagnosticsEngine*, bool, bool) ; sym.imp.clang::ParseDiagnosticArgs_clang::DiagnosticOptions__llvm::opt::ArgList__clang::DiagnosticsEngine__bool__bool_
  1254. │  │   │    0x0000e3b0      e0030e91       add x0, sp, 0x380           ; int64_t arg1
  1255. │  │   │    0x0000e3b4      8a050094       bl method llvm::opt::InputArgList::~InputArgList() ; method.llvm::opt::InputArgList.InputArgList__
  1256. │  │   │    0x0000e3b8      f31f40f9       ldr x19, [var_18h]
  1257. │  │   │    0x0000e3bc      ff1f00f9       str xzr, [var_18h]
  1258. │  │   │┌─< 0x0000e3c0      b30000b4       cbz x19, 0xe3d4
  1259. │  │   ││   0x0000e3c4      e00313aa       mov x0, x19
  1260. │  │   ││   0x0000e3c8      ba250094       bl sym llvm::opt::OptTable::~OptTable() ; sym.imp.llvm::opt::OptTable::OptTable__
  1261. │  │   ││   0x0000e3cc      e00313aa       mov x0, x19
  1262. │  │   ││   0x0000e3d0      50250094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1263. │  │   ││   ; CODE XREF from main @ 0xe3c0(x)
  1264. │  │   │└─> 0x0000e3d4      880240b9       ldr w8, [x20]
  1265. │  │   │    0x0000e3d8      00098052       mov w0, 0x48                ; 'H'
  1266. │  │   │    0x0000e3dc      08050011       add w8, w8, 1
  1267. │  │   │    0x0000e3e0      880200b9       str w8, [x20]
  1268. │  │   │    0x0000e3e4      83250094       bl sym operator new(unsigned long) ; sym.imp.operator_new_unsigned_long_
  1269. │  │   │    0x0000e3e8      f60300aa       mov x22, x0
  1270. │  │   │    0x0000e3ec      71250094       bl sym llvm::errs()         ; sym.imp.llvm::errs__
  1271. │  │   │    0x0000e3f0      e10300aa       mov x1, x0
  1272. │  │   │    0x0000e3f4      e00316aa       mov x0, x22
  1273. │  │   │    0x0000e3f8      e20314aa       mov x2, x20
  1274. │  │   │    0x0000e3fc      e3031f2a       mov w3, wzr
  1275. │  │   │    0x0000e400      b0250094       bl sym clang::TextDiagnosticPrinter::TextDiagnosticPrinter(llvm::raw_ostream&, clang::DiagnosticOptions*, bool) ; sym.imp.clang::TextDiagnosticPrinter::TextDiagnosticPrinter_llvm::raw_ostream__clang::DiagnosticOptions__bool_
  1276. │  │   │    0x0000e404      e8e36039       ldrb w8, [sp, 0x838]
  1277. │  │   │    0x0000e408      e92744f9       ldr x9, [sp, 0x848]
  1278. │  │   │    0x0000e40c      ea2344f9       ldr x10, [sp, 0x840]
  1279. │  │   │    0x0000e410      b30240b2       orr x19, x21, 1
  1280. │  │   │    0x0000e414      1f010072       tst w8, 1
  1281. │  │   │    0x0000e418      08fd41d3       lsr x8, x8, 1
  1282. │  │   │    0x0000e41c      6002899a       csel x0, x19, x9, eq
  1283. │  │   │    0x0000e420      01018a9a       csel x1, x8, x10, eq
  1284. │  │   │    0x0000e424      42008052       mov w2, 2
  1285. │  │   │    0x0000e428      aa250094       bl sym llvm::sys::path::stem(llvm::StringRef, llvm::sys::path::Style) ; sym.imp.llvm::sys::path::stem_llvm::StringRef__llvm::sys::path::Style_
  1286. │  │   │    0x0000e42c      3f0800f1       cmp x1, 2
  1287. │  │   │    0x0000e430      e08703a9       stp x0, x1, [var_18h]
  1288. │  │   │┌─< 0x0000e434      61010054       b.ne 0xe460
  1289. │  │   ││   0x0000e438      e1ffffb0       adrp x1, 0xb000
  1290. │  │   ││   0x0000e43c      21a82291       add x1, x1, 0x8aa
  1291. │  │   ││   0x0000e440      e0e30091       add x0, sp, 0x38
  1292. │  │   ││   0x0000e444      42008052       mov w2, 2
  1293. │  │   ││   0x0000e448      a6250094       bl sym llvm::StringRef::compare_lower(llvm::StringRef) const ; sym.imp.llvm::StringRef::compare_lower_llvm::StringRef__const
  1294. │  │  ┌───< 0x0000e44c      a0000035       cbnz w0, 0xe460
  1295. │  │  │││   0x0000e450      e8ffffb0       adrp x8, 0xb000
  1296. │  │  │││   0x0000e454      08912291       add x8, x8, 0x8a4           ; 0xb8a4 ; "clang-cl"
  1297. │  │  │││   0x0000e458      09018052       mov w9, 8
  1298. │  │  │││   0x0000e45c      e8a703a9       stp x8, x9, [var_18h]
  1299. │  │  │││   ; CODE XREFS from main @ 0xe434(x), 0xe44c(x)
  1300. │  │  └─└─> 0x0000e460      e8030e91       add x8, sp, 0x380
  1301. │  │   │    0x0000e464      e0e30091       add x0, sp, 0x38            ; int64_t arg1
  1302. │  │   │    0x0000e468      9b030094       bl method llvm::StringRef::str() const ; method.llvm::StringRef.str___const
  1303. │  │   │    0x0000e46c      f50316aa       mov x21, x22
  1304. │  │   │    0x0000e470      a88e4238       ldrb w8, [x21, 0x28]!
  1305. │  │   │┌─< 0x0000e474      68000036       tbz w8, 0, 0xe480
  1306. │  │   ││   0x0000e478      c01e40f9       ldr x0, [x22, 0x38]
  1307. │  │   ││   0x0000e47c      25250094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1308. │  │   ││   ; CODE XREF from main @ 0xe474(x)
  1309. │  │   │└─> 0x0000e480      e8cb41f9       ldr x8, [sp, 0x390]
  1310. │  │   │    0x0000e484      e0e3c03d       ldr q0, [var_18h0]
  1311. │  │   │    0x0000e488      00028052       mov w0, 0x10
  1312. │  │   │    0x0000e48c      a80a00f9       str x8, [x21, 0x10]
  1313. │  │   │    0x0000e490      a002803d       str q0, [x21]
  1314. │  │   │    0x0000e494      57250094       bl sym operator new(unsigned long) ; sym.imp.operator_new_unsigned_long_
  1315. │  │   │    0x0000e498      f50300aa       mov x21, x0
  1316. │  │   │    0x0000e49c      95250094       bl fcn.00017af0
  1317. │  │   │    0x0000e4a0      a80240b9       ldr w8, [x21]
  1318. │  │   │    0x0000e4a4      890240b9       ldr w9, [x20]
  1319. │  │   │    0x0000e4a8      e0030e91       add x0, sp, 0x380
  1320. │  │   │    0x0000e4ac      e1e30d91       add x1, sp, 0x378
  1321. │  │   │    0x0000e4b0      08090011       add w8, w8, 2
  1322. │  │   │    0x0000e4b4      29050011       add w9, w9, 1
  1323. │  │   │    0x0000e4b8      e2c30d91       add x2, sp, 0x370
  1324. │  │   │    0x0000e4bc      24008052       mov w4, 1
  1325. │  │   │    0x0000e4c0      e30316aa       mov x3, x22
  1326. │  │   │    0x0000e4c4      f5bf01f9       str x21, [sp, 0x378]
  1327. │  │   │    0x0000e4c8      f4bb01f9       str x20, [sp, 0x370]
  1328. │  │   │    0x0000e4cc      a80200b9       str w8, [x21]
  1329. │  │   │    0x0000e4d0      890200b9       str w9, [x20]
  1330. │  │   │    0x0000e4d4      8b250094       bl method clang::DiagnosticsEngine::DiagnosticsEngine(llvm::IntrusiveRefCntPtr<clang::DiagnosticIDs>, llvm::IntrusiveRefCntPtr<clang::DiagnosticOptions>, clang::DiagnosticConsumer*, bool) ; method.clang::DiagnosticsEngine.DiagnosticsEngine_llvm::IntrusiveRefCntPtr_clang::DiagnosticIDs___llvm::IntrusiveRefCntPtr_clang::DiagnosticOptions___clang::DiagnosticConsumer__bool_
  1331. │  │   │    0x0000e4d8      e0bb41f9       ldr x0, [sp, 0x370]
  1332. │  │   │┌─< 0x0000e4dc      400000b4       cbz x0, 0xe4e4
  1333. │  │   ││   0x0000e4e0      9f060094       bl method llvm::RefCountedBase<clang::DiagnosticOptions>::Release() const ; method.llvm::RefCountedBase_clang::DiagnosticOptions_.Release___const
  1334. │  │   ││   ; CODE XREF from main @ 0xe4dc(x)
  1335. │  │   │└─> 0x0000e4e4      e0bf41f9       ldr x0, [sp, 0x378]
  1336. │  │   │┌─< 0x0000e4e8      400000b4       cbz x0, 0xe4f0
  1337. │  │   ││   0x0000e4ec      dd060094       bl method llvm::RefCountedBase<clang::DiagnosticIDs>::Release() const ; method.llvm::RefCountedBase_clang::DiagnosticIDs_.Release___const
  1338. │  │   ││   ; CODE XREF from main @ 0xe4e8(x)
  1339. │  │   │└─> 0x0000e4f0      88224139       ldrb w8, [x20, 0x48]
  1340. │  │   │┌─< 0x0000e4f4      88000037       tbnz w8, 0, 0xe504
  1341. │  │   ││   0x0000e4f8      09fd41d3       lsr x9, x8, 1
  1342. │  │  ┌───< 0x0000e4fc      890000b5       cbnz x9, 0xe50c
  1343. │  │ ┌────< 0x0000e500      24000014       b 0xe590
  1344. │  │ ││││   ; CODE XREF from main @ 0xe4f4(x)
  1345. │  │ │││└─> 0x0000e504      892a40f9       ldr x9, [x20, 0x50]
  1346. │  │ │││┌─< 0x0000e508      490400b4       cbz x9, 0xe590
  1347. │  │ ││││   ; CODE XREF from main @ 0xe4fc(x)
  1348. │  │ │└───> 0x0000e50c      8b2a45a9       ldp x11, x10, [x20, 0x50]
  1349. │  │ │ ││   0x0000e510      89260191       add x9, x20, 0x49
  1350. │  │ │ ││   0x0000e514      1f010072       tst w8, 1
  1351. │  │ │ ││   0x0000e518      087d41d3       ubfx x8, x8, 1, 0x1f
  1352. │  │ │ ││   0x0000e51c      20018a9a       csel x0, x9, x10, eq
  1353. │  │ │ ││   0x0000e520      01018b9a       csel x1, x8, x11, eq
  1354. │  │ │ ││   0x0000e524      e8e30091       add x8, sp, 0x38
  1355. │  │ │ ││   0x0000e528      23008052       mov w3, 1
  1356. │  │ │ ││   0x0000e52c      e20314aa       mov x2, x20
  1357. │  │ │ ││   0x0000e530      78250094       bl sym clang::serialized_diags::create(llvm::StringRef, clang::DiagnosticOptions*, bool) ; sym.imp.clang::serialized_diags::create_llvm::StringRef__clang::DiagnosticOptions__bool_
  1358. │  │ │ ││   0x0000e534      00058052       mov w0, 0x28                ; '('
  1359. │  │ │ ││   0x0000e538      2e250094       bl sym operator new(unsigned long) ; sym.imp.operator_new_unsigned_long_
  1360. │  │ │ ││   0x0000e53c      e8df41f9       ldr x8, [sp, 0x3b8]
  1361. │  │ │ ││   0x0000e540      ffdf01f9       str xzr, [sp, 0x3b8]
  1362. │  │ │ ││   0x0000e544      e91f40f9       ldr x9, [var_18h]
  1363. │  │ │ ││   0x0000e548      ff1f00f9       str xzr, [var_18h]
  1364. │  │ │ ││   0x0000e54c      1f0400f9       str xzr, [x0, 8]
  1365. │  │ │ ││   0x0000e550      6a000090       adrp x10, 0x1a000
  1366. │  │ │ ││   0x0000e554      4a0940f9       ldr x10, [x10, 0x10]        ; [0x1c6a0:4]=0
  1367. │  │ │ ││                                                              ; reloc.vtable_for_clang::ChainedDiagnosticConsumer
  1368. │  │ │ ││   0x0000e558      e10300aa       mov x1, x0
  1369. │  │ │ ││   0x0000e55c      082001a9       stp x8, x8, [x0, 0x10]
  1370. │  │ │ ││   0x0000e560      091000f9       str x9, [x0, 0x20]
  1371. │  │ │ ││   0x0000e564      4a410091       add x10, x10, 0x10
  1372. │  │ │ ││   0x0000e568      0a0000f9       str x10, [x0]
  1373. │  │ │ ││   0x0000e56c      e0030e91       add x0, sp, 0x380
  1374. │  │ │ ││   0x0000e570      22008052       mov w2, 1
  1375. │  │ │ ││   0x0000e574      6b250094       bl sym clang::DiagnosticsEngine::setClient(clang::DiagnosticConsumer*, bool) ; sym.imp.clang::DiagnosticsEngine::setClient_clang::DiagnosticConsumer__bool_
  1376. │  │ │ ││   0x0000e578      e01f40f9       ldr x0, [var_18h]
  1377. │  │ │ ││   0x0000e57c      ff1f00f9       str xzr, [var_18h]
  1378. │  │ │┌───< 0x0000e580      800000b4       cbz x0, 0xe590
  1379. │  │ ││││   0x0000e584      080040f9       ldr x8, [x0]
  1380. │  │ ││││   0x0000e588      080540f9       ldr x8, [x8, 8]
  1381. │  │ ││││   0x0000e58c      00013fd6       blr x8
  1382. │  │ ││││   ; CODE XREFS from main @ 0xe500(x), 0xe508(x), 0xe580(x)
  1383. │  │ └└─└─> 0x0000e590      e0030e91       add x0, sp, 0x380
  1384. │  │   │    0x0000e594      e10314aa       mov x1, x20
  1385. │  │   │    0x0000e598      e2031f2a       mov w2, wzr
  1386. │  │   │    0x0000e59c      65250094       bl sym clang::ProcessWarningOptions(clang::DiagnosticsEngine&, clang::DiagnosticOptions const&, bool) ; sym.imp.clang::ProcessWarningOptions_clang::DiagnosticsEngine__clang::DiagnosticOptions_const__bool_
  1387. │  │   │    0x0000e5a0      e8e36039       ldrb w8, [sp, 0x838]
  1388. │  │   │    0x0000e5a4      ea2344f9       ldr x10, [sp, 0x840]
  1389. │  │   │    0x0000e5a8      e92744f9       ldr x9, [sp, 0x848]
  1390. │  │   │    0x0000e5ac      b78302d1       sub x23, x29, 0xa0
  1391. │  │   │    0x0000e5b0      1f010072       tst w8, 1
  1392. │  │   │    0x0000e5b4      08fd41d3       lsr x8, x8, 1
  1393. │  │   │    0x0000e5b8      16018a9a       csel x22, x8, x10, eq
  1394. │  │   │    0x0000e5bc      a88302d1       sub x8, x29, 0xa0
  1395. │  │   │    0x0000e5c0      7302899a       csel x19, x19, x9, eq
  1396. │  │   │    0x0000e5c4      5f250094       bl sym llvm::sys::getDefaultTargetTriple() ; sym.imp.llvm::sys::getDefaultTargetTriple__
  1397. │  │   │    0x0000e5c8      28834039       ldrb w8, [x25, 0x20]
  1398. │  │   │    0x0000e5cc      abab76a9       ldp x11, x10, [x29, -0x98]
  1399. │  │   │    0x0000e5d0      e90240b2       orr x9, x23, 1
  1400. │  │   │    0x0000e5d4      e0e30091       add x0, sp, 0x38
  1401. │  │   │    0x0000e5d8      1f010072       tst w8, 1
  1402. │  │   │    0x0000e5dc      08fd41d3       lsr x8, x8, 1
  1403. │  │   │    0x0000e5e0      23018a9a       csel x3, x9, x10, eq
  1404. │  │   │    0x0000e5e4      04018b9a       csel x4, x8, x11, eq
  1405. │  │   │    0x0000e5e8      e5030e91       add x5, sp, 0x380
  1406. │  │   │    0x0000e5ec      e6c30091       add x6, sp, 0x30
  1407. │  │   │    0x0000e5f0      e10313aa       mov x1, x19
  1408. │  │   │    0x0000e5f4      e20316aa       mov x2, x22
  1409. │  │   │    0x0000e5f8      ff1b00f9       str xzr, [var_10h_3]
  1410. │  │   │    0x0000e5fc      55250094       bl method clang::driver::Driver::Driver(llvm::StringRef, llvm::StringRef, clang::DiagnosticsEngine&, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>) ; method.clang::driver::Driver.Driver_llvm::StringRef__llvm::StringRef__clang::DiagnosticsEngine__llvm::IntrusiveRefCntPtr_llvm::vfs::FileSystem__
  1411. │  │   │    0x0000e600      e81b40f9       ldr x8, [var_10h_3]
  1412. │  │   │┌─< 0x0000e604      480100b4       cbz x8, 0xe62c
  1413. │  │   ││   0x0000e608      00210091       add x0, x8, 8
  1414. │  │   ││   ; CODE XREF from main @ 0xe618(x)
  1415. │  │  ┌───> 0x0000e60c      08fc5f88       ldaxr w8, [x0]
  1416. │  │  ╎││   0x0000e610      08050071       subs w8, w8, 1
  1417. │  │  ╎││   0x0000e614      08fc0988       stlxr w9, w8, [x0]
  1418. │  │  └───< 0x0000e618      a9ffff35       cbnz w9, 0xe60c
  1419. │  │  ┌───< 0x0000e61c      81000054       b.ne 0xe62c
  1420. │  │  │││   0x0000e620      088c5ff8       ldr x8, [x0, -8]!
  1421. │  │  │││   0x0000e624      080540f9       ldr x8, [x8, 8]
  1422. │  │  │││   0x0000e628      00013fd6       blr x8
  1423. │  │  │││   ; CODE XREFS from main @ 0xe604(x), 0xe61c(x)
  1424. │  │  └─└─> 0x0000e62c      28834039       ldrb w8, [x25, 0x20]
  1425. │  │   │┌─< 0x0000e630      68000036       tbz w8, 0, 0xe63c
  1426. │  │   ││   0x0000e634      a00357f8       ldur x0, [x29, -0x90]
  1427. │  │   ││   0x0000e638      b6240094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1428. │  │   ││   ; CODE XREF from main @ 0xe630(x)
  1429. │  │   │└─> 0x0000e63c      e88f44f9       ldr x8, [sp, 0x918]
  1430. │  │   │    0x0000e640      160140f9       ldr x22, [x8]
  1431. │  │   │┌─< 0x0000e644      960000b4       cbz x22, 0xe654
  1432. │  │   ││   0x0000e648      e00316aa       mov x0, x22                 ; const char *s
  1433. │  │   ││   0x0000e64c      69240094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  1434. │  │  ┌───< 0x0000e650      02000014       b 0xe658
  1435. │  │  │││   ; CODE XREF from main @ 0xe644(x)
  1436. │  │  ││└─> 0x0000e654      e0031faa       mov x0, xzr
  1437. │  │  ││    ; CODE XREF from main @ 0xe650(x)
  1438. │  │  └───> 0x0000e658      e8ffffb0       adrp x8, 0xb000
  1439. │  │   │    0x0000e65c      007943fd       ldr d0, [x8, 0x6f0]
  1440. │  │   │    0x0000e660      a88302d1       sub x8, x29, 0xa0
  1441. │  │   │    0x0000e664      c202008b       add x2, x22, x0             ; int64_t arg3
  1442. │  │   │    0x0000e668      08410091       add x8, x8, 0x10
  1443. │  │   │    0x0000e66c      a08302d1       sub x0, x29, 0xa0           ; int64_t arg1
  1444. │  │   │    0x0000e670      e10316aa       mov x1, x22                 ; int64_t arg2
  1445. │  │   │    0x0000e674      a80316f8       stur x8, [x29, -0xa0]
  1446. │  │   │    0x0000e678      a08316fc       stur d0, [x29, -0x98]
  1447. │  │   │    0x0000e67c      e2050094       bl method void llvm::SmallVectorImpl<char>::append<char const*, void>(char const*, char const*) ; method.void_llvm::SmallVectorImpl_char_.append_char_const__void__char_const__char_const_
  1448. │  │   │    0x0000e680      a00356f8       ldur x0, [x29, -0xa0]
  1449. │  │   │    0x0000e684      a18356b8       ldur w1, [x29, -0x98]
  1450. │  │   │    0x0000e688      42008052       mov w2, 2
  1451. │  │   │    0x0000e68c      35250094       bl sym llvm::sys::path::filename(llvm::StringRef, llvm::sys::path::Style) ; sym.imp.llvm::sys::path::filename_llvm::StringRef__llvm::sys::path::Style_
  1452. │  │   │    0x0000e690      b68356b8       ldur w22, [x29, -0x98]
  1453. │  │   │    0x0000e694      3f0016eb       cmp x1, x22
  1454. │  │   │┌─< 0x0000e698      61040054       b.ne 0xe724
  1455. │  │   ││   0x0000e69c      b30356f8       ldur x19, [x29, -0xa0]
  1456. │  │  ┌───< 0x0000e6a0      b6000034       cbz w22, 0xe6b4
  1457. │  │  │││   0x0000e6a4      e10313aa       mov x1, x19                 ; const void *s2
  1458. │  │  │││   0x0000e6a8      e20316aa       mov x2, x22                 ; size_t n
  1459. │  │  │││   0x0000e6ac      d5240094       bl sym.imp.memcmp           ; int memcmp(const void *s1, const void *s2, size_t n)
  1460. │  │ ┌────< 0x0000e6b0      a0030035       cbnz w0, 0xe724
  1461. │  │ ││││   ; CODE XREF from main @ 0xe6a0(x)
  1462. │  │ │└───> 0x0000e6b4      42008052       mov w2, 2
  1463. │  │ │ ││   0x0000e6b8      e00313aa       mov x0, x19
  1464. │  │ │ ││   0x0000e6bc      e10316aa       mov x1, x22
  1465. │  │ │ ││   0x0000e6c0      28250094       bl sym llvm::sys::path::filename(llvm::StringRef, llvm::sys::path::Style) ; sym.imp.llvm::sys::path::filename_llvm::StringRef__llvm::sys::path::Style_
  1466. │  │ │ ││   0x0000e6c4      a80303d1       sub x8, x29, 0xc0
  1467. │  │ │ ││   0x0000e6c8      e2031faa       mov x2, xzr
  1468. │  │ │ ││   0x0000e6cc      e3031faa       mov x3, xzr
  1469. │  │ │ ││   0x0000e6d0      b30303d1       sub x19, x29, 0xc0
  1470. │  │ │ ││   0x0000e6d4      8b240094       bl sym llvm::sys::findProgramByName(llvm::StringRef, llvm::ArrayRef<llvm::StringRef>) ; sym.imp.llvm::sys::findProgramByName_llvm::StringRef__llvm::ArrayRef_llvm::StringRef__
  1471. │  │ │ ││   0x0000e6d8      28634039       ldrb w8, [x25, 0x18]
  1472. │  │ │┌───< 0x0000e6dc      a8010037       tbnz w8, 0, 0xe710
  1473. │  │ ││││   0x0000e6e0      28034039       ldrb w8, [x25]
  1474. │  │ ││││   0x0000e6e4      abab74a9       ldp x11, x10, [x29, -0xb8]
  1475. │  │ ││││   0x0000e6e8      690240b2       orr x9, x19, 1
  1476. │  │ ││││   0x0000e6ec      a08302d1       sub x0, x29, 0xa0           ; int64_t arg1
  1477. │  │ ││││   0x0000e6f0      1f010072       tst w8, 1
  1478. │  │ ││││   0x0000e6f4      08fd41d3       lsr x8, x8, 1
  1479. │  │ ││││   0x0000e6f8      21018a9a       csel x1, x9, x10, eq        ; int64_t arg2
  1480. │  │ ││││   0x0000e6fc      08018b9a       csel x8, x8, x11, eq
  1481. │  │ ││││   0x0000e700      2200088b       add x2, x1, x8              ; int64_t arg3
  1482. │  │ ││││   0x0000e704      bf8316b8       stur wzr, [x29, -0x98]
  1483. │  │ ││││   0x0000e708      bf050094       bl method void llvm::SmallVectorImpl<char>::append<char const*, void>(char const*, char const*) ; method.void_llvm::SmallVectorImpl_char_.append_char_const__void__char_const__char_const_
  1484. │  │ ││││   0x0000e70c      28634039       ldrb w8, [x25, 0x18]
  1485. │  │ ││││   ; CODE XREF from main @ 0xe6dc(x)
  1486. │  │┌─└───> 0x0000e710      a8000037       tbnz w8, 0, 0xe724
  1487. │  │││ ││   0x0000e714      28034039       ldrb w8, [x25]
  1488. │  │││┌───< 0x0000e718      68000036       tbz w8, 0, 0xe724
  1489. │  ││││││   0x0000e71c      a00355f8       ldur x0, [x29, -0xb0]
  1490. │  ││││││   0x0000e720      7c240094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1491. │  ││││││   ; CODE XREFS from main @ 0xe698(x), 0xe6b0(x), 0xe710(x), 0xe718(x)
  1492. │ ┌─└└└─└─> 0x0000e724      78000034       cbz w24, 0xe730
  1493. │ ││   │    0x0000e728      a08302d1       sub x0, x29, 0xa0
  1494. │ ││   │    0x0000e72c      11250094       bl sym llvm::sys::fs::make_absolute(llvm::SmallVectorImpl<char>&) ; sym.imp.llvm::sys::fs::make_absolute_llvm::SmallVectorImpl_char__
  1495. │ ││   │    ; CODE XREF from main @ 0xe724(x)
  1496. │ └───────> 0x0000e730      a00356f8       ldur x0, [x29, -0xa0]
  1497. │  │   │    0x0000e734      a18356b8       ldur w1, [x29, -0x98]
  1498. │  │   │    0x0000e738      42008052       mov w2, 2
  1499. │  │   │    0x0000e73c      11250094       bl sym llvm::sys::path::parent_path(llvm::StringRef, llvm::sys::path::Style) ; sym.imp.llvm::sys::path::parent_path_llvm::StringRef__llvm::sys::path::Style_
  1500. │  │   │    0x0000e740      a00733a9       stp x0, x1, [x29, -0xd0]
  1501. │  │   │    0x0000e744      a8208052       mov w8, 0x105
  1502. │  │   │    0x0000e748      a94303d1       sub x9, x29, 0xd0
  1503. │  │   │    0x0000e74c      a00303d1       sub x0, x29, 0xc0
  1504. │  │   │    0x0000e750      e1031f2a       mov w1, wzr
  1505. │  │   │    0x0000e754      a8031578       sturh w8, [x29, -0xb0]
  1506. │  │   │    0x0000e758      a90314f8       stur x9, [x29, -0xc0]
  1507. │  │   │    0x0000e75c      65240094       bl sym llvm::sys::fs::access(llvm::Twine const&, llvm::sys::fs::AccessMode) ; sym.imp.llvm::sys::fs::access_llvm::Twine_const__llvm::sys::fs::AccessMode_
  1508. │  │   │┌─< 0x0000e760      80000035       cbnz w0, 0xe770
  1509. │  │   ││   0x0000e764      a10b73a9       ldp x1, x2, [x29, -0xd0]    ; int64_t arg3
  1510. │  │   ││   0x0000e768      e0e30091       add x0, sp, 0x38            ; int64_t arg1
  1511. │  │   ││   0x0000e76c      f1040094       bl method clang::driver::Driver::setInstalledDir(llvm::StringRef) ; method.clang::driver::Driver.setInstalledDir_llvm::StringRef_
  1512. │  │   ││   ; CODE XREF from main @ 0xe760(x)
  1513. │  │   │└─> 0x0000e770      a00356f8       ldur x0, [x29, -0xa0]
  1514. │  │   │    0x0000e774      a88302d1       sub x8, x29, 0xa0
  1515. │  │   │    0x0000e778      08410091       add x8, x8, 0x10
  1516. │  │   │    0x0000e77c      1f0008eb       cmp x0, x8
  1517. │  │   │    0x0000e780      e8632391       add x8, sp, 0x8d8
  1518. │  │   │    0x0000e784      13c10091       add x19, x8, 0x30
  1519. │  │   │┌─< 0x0000e788      40000054       b.eq 0xe790
  1520. │  │   ││   0x0000e78c      65240094       bl sym.imp.free             ; void free(void *ptr)
  1521. │  │   ││   ; CODE XREF from main @ 0xe788(x)
  1522. │  │   │└─> 0x0000e790      f6e30091       add x22, sp, 0x38
  1523. │  │   │    0x0000e794      c0c20191       add x0, x22, 0x70
  1524. │  │   │    0x0000e798      e1632391       add x1, sp, 0x8d8
  1525. │  │   │    0x0000e79c      f7632391       add x23, sp, 0x8d8
  1526. │  │   │    0x0000e7a0      fc240094       bl method std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >::operator=(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) ; method.std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char___.operator_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char____const_
  1527. │  │   │    0x0000e7a4      c0220291       add x0, x22, 0x88
  1528. │  │   │    0x0000e7a8      e1620091       add x1, x23, 0x18
  1529. │  │   │    0x0000e7ac      f9240094       bl method std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >::operator=(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) ; method.std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char___.operator_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char____const_
  1530. │  │   │    0x0000e7b0      ea2349b9       ldr w10, [sp, 0x920]
  1531. │  │   │    0x0000e7b4      680240f9       ldr x8, [x19]
  1532. │  │   │    0x0000e7b8      69224039       ldrb w9, [x19, 8]
  1533. │  │   │    0x0000e7bc      f38744f9       ldr x19, [sp, 0x908]
  1534. │  │   │    0x0000e7c0      5f010071       cmp w10, 0
  1535. │  │   │    0x0000e7c4      f7079f1a       cset w23, ne
  1536. │  │   │    0x0000e7c8      e86f00f9       str x8, [sp, 0xd8]
  1537. │  │   │    0x0000e7cc      e9830339       strb w9, [sp, 0xe0]
  1538. │  │   │┌─< 0x0000e7d0      d30100b4       cbz x19, 0xe808
  1539. │  │   ││   0x0000e7d4      e88f44f9       ldr x8, [sp, 0x918]
  1540. │  │   ││   0x0000e7d8      e00313aa       mov x0, x19                 ; const char *s
  1541. │  │   ││   0x0000e7dc      160d178b       add x22, x8, x23, lsl 3
  1542. │  │   ││   0x0000e7e0      04240094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  1543. │  │   ││   0x0000e7e4      e20300aa       mov x2, x0
  1544. │  │   ││   0x0000e7e8      e0432191       add x0, sp, 0x850
  1545. │  │   ││   0x0000e7ec      e10313aa       mov x1, x19
  1546. │  │   ││   0x0000e7f0      07030094       bl sym GetStableCStr(std::__ndk1::set<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::less<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > >&, llvm::StringRef) ; sym.GetStableCStr_std::__ndk1::set_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_____std::__ndk1::less_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_______std::__ndk1::allocator_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_________llvm::StringRef_
  1547. │  │   ││   0x0000e7f4      a00316f8       stur x0, [x29, -0xa0]
  1548. │  │   ││   0x0000e7f8      e0632491       add x0, sp, 0x918           ; int64_t arg1
  1549. │  │   ││   0x0000e7fc      a28302d1       sub x2, x29, 0xa0           ; void *s1
  1550. │  │   ││   0x0000e800      e10316aa       mov x1, x22                 ; uint32_t arg2
  1551. │  │   ││   0x0000e804      e1040094       bl method llvm::SmallVectorImpl<char const*>::insert(char const**, char const*&&) ; method.llvm::SmallVectorImpl_char_const_.insert_char_const__char_const_
  1552. │  │   ││   ; CODE XREF from main @ 0xe7d0(x)
  1553. │  │   │└─> 0x0000e808      e8436439       ldrb w8, [sp, 0x910]
  1554. │  │   │┌─< 0x0000e80c      e8020034       cbz w8, 0xe868
  1555. │  │   ││   0x0000e810      e9636339       ldrb w9, [sp, 0x8d8]
  1556. │  │   ││   0x0000e814      eb7744f9       ldr x11, [sp, 0x8e8]
  1557. │  │   ││   0x0000e818      ec7344f9       ldr x12, [sp, 0x8e0]
  1558. │  │   ││   0x0000e81c      e8ffffb0       adrp x8, 0xb000
  1559. │  │   ││   0x0000e820      088d1d91       add x8, x8, 0x763           ; 0xb763 ; "-target"
  1560. │  │   ││   0x0000e824      ea632391       add x10, sp, 0x8d8
  1561. │  │   ││   0x0000e828      a80316f8       stur x8, [x29, -0xa0]
  1562. │  │   ││   0x0000e82c      480140b2       orr x8, x10, 1
  1563. │  │   ││   0x0000e830      3f010072       tst w9, 1
  1564. │  │   ││   0x0000e834      29fd41d3       lsr x9, x9, 1
  1565. │  │   ││   0x0000e838      01018b9a       csel x1, x8, x11, eq
  1566. │  │   ││   0x0000e83c      22018c9a       csel x2, x9, x12, eq
  1567. │  │   ││   0x0000e840      e0432191       add x0, sp, 0x850
  1568. │  │   ││   0x0000e844      f2020094       bl sym GetStableCStr(std::__ndk1::set<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::less<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > >&, llvm::StringRef) ; sym.GetStableCStr_std::__ndk1::set_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_____std::__ndk1::less_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_______std::__ndk1::allocator_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_________llvm::StringRef_
  1569. │  │   ││   0x0000e848      e88f44f9       ldr x8, [sp, 0x918]
  1570. │  │   ││   0x0000e84c      a98302d1       sub x9, x29, 0xa0
  1571. │  │   ││   0x0000e850      a08316f8       stur x0, [x29, -0x98]
  1572. │  │   ││   0x0000e854      23410091       add x3, x9, 0x10
  1573. │  │   ││   0x0000e858      010d178b       add x1, x8, x23, lsl 3      ; uint32_t arg2
  1574. │  │   ││   0x0000e85c      e0632491       add x0, sp, 0x918           ; int64_t arg1
  1575. │  │   ││   0x0000e860      a28302d1       sub x2, x29, 0xa0           ; int64_t arg3
  1576. │  │   ││   0x0000e864      79010094       bl method char const** llvm::SmallVectorImpl<char const*>::insert<char const**, void>(char const**, char const**, char const**) ; method.char_const_llvm::SmallVectorImpl_char_const_.insert_char_const__void__char_const__char_const__char_const_
  1577. │  │   ││   ; CODE XREF from main @ 0xe80c(x)
  1578. │  │   │└─> 0x0000e868      e0ffffb0       adrp x0, 0xb000
  1579. │  │   │    0x0000e86c      00942491       add x0, x0, 0x925           ; 0xb925 ; "CC_PRINT_OPTIONS" ; const char *name
  1580. │  │   │    0x0000e870      dc230094       bl sym.imp.getenv           ; char *getenv(const char *name)
  1581. │  │   │    0x0000e874      f3e34939       ldrb w19, [sp, 0x278]
  1582. │  │   │    0x0000e878      1f0000f1       cmp x0, 0
  1583. │  │   │    0x0000e87c      e8079f1a       cset w8, ne
  1584. │  │   │    0x0000e880      13011f33       bfi w19, w8, 1, 1
  1585. │  │   │    0x0000e884      f3e30939       strb w19, [sp, 0x278]
  1586. │  │   │┌─< 0x0000e888      a00000b4       cbz x0, 0xe89c
  1587. │  │   ││   0x0000e88c      e0ffffb0       adrp x0, 0xb000
  1588. │  │   ││   0x0000e890      00482791       add x0, x0, 0x9d2           ; 0xb9d2 ; "CC_PRINT_OPTIONS_FILE" ; const char *name
  1589. │  │   ││   0x0000e894      d3230094       bl sym.imp.getenv           ; char *getenv(const char *name)
  1590. │  │   ││   0x0000e898      e03301f9       str x0, [sp, 0x260]
  1591. │  │   ││   ; CODE XREF from main @ 0xe888(x)
  1592. │  │   │└─> 0x0000e89c      e0ffffb0       adrp x0, 0xb000
  1593. │  │   │    0x0000e8a0      00502491       add x0, x0, 0x914           ; 0xb914 ; "CC_PRINT_HEADERS" ; const char *name
  1594. │  │   │    0x0000e8a4      cf230094       bl sym.imp.getenv           ; char *getenv(const char *name)
  1595. │  │   │    0x0000e8a8      1f0000f1       cmp x0, 0
  1596. │  │   │    0x0000e8ac      e8079f1a       cset w8, ne
  1597. │  │   │    0x0000e8b0      13011e33       bfi w19, w8, 2, 1
  1598. │  │   │    0x0000e8b4      f3e30939       strb w19, [sp, 0x278]
  1599. │  │   │┌─< 0x0000e8b8      a00000b4       cbz x0, 0xe8cc
  1600. │  │   ││   0x0000e8bc      e0ffffb0       adrp x0, 0xb000
  1601. │  │   ││   0x0000e8c0      00f02691       add x0, x0, 0x9bc           ; 0xb9bc ; "CC_PRINT_HEADERS_FILE" ; const char *name
  1602. │  │   ││   0x0000e8c4      c7230094       bl sym.imp.getenv           ; char *getenv(const char *name)
  1603. │  │   ││   0x0000e8c8      e03701f9       str x0, [sp, 0x268]
  1604. │  │   ││   ; CODE XREF from main @ 0xe8b8(x)
  1605. │  │   │└─> 0x0000e8cc      e0ffffb0       adrp x0, 0xb000
  1606. │  │   │    0x0000e8d0      002c2591       add x0, x0, 0x94b           ; 0xb94b ; "CC_RPG_DIAGNOSTICS" ; const char *name
  1607. │  │   │    0x0000e8d4      c3230094       bl sym.imp.getenv           ; char *getenv(const char *name)
  1608. │  │   │    0x0000e8d8      1f0000f1       cmp x0, 0
  1609. │  │   │    0x0000e8dc      e8079f1a       cset w8, ne
  1610. │  │   │    0x0000e8e0      697a1c12       and w9, w19, 0xfffffff7
  1611. │  │   │    0x0000e8e4      280d082a       orr w8, w9, w8, lsl 3
  1612. │  │   │    0x0000e8e8      e8e30939       strb w8, [sp, 0x278]
  1613. │  │   │┌─< 0x0000e8ec      a00000b4       cbz x0, 0xe900
  1614. │  │   ││   0x0000e8f0      e0ffffb0       adrp x0, 0xb000
  1615. │  │   ││   0x0000e8f4      00a02791       add x0, x0, 0x9e8           ; 0xb9e8 ; "CC_LOG_DIAGNOSTICS_FILE" ; const char *name
  1616. │  │   ││   0x0000e8f8      ba230094       bl sym.imp.getenv           ; char *getenv(const char *name)
  1617. │  │   ││   0x0000e8fc      e03b01f9       str x0, [sp, 0x270]
  1618. │  │   ││   ; CODE XREF from main @ 0xe8ec(x)
  1619. │  │   │└─> 0x0000e900      e18f44f9       ldr x1, [sp, 0x918]
  1620. │  │   │    0x0000e904      e22349b9       ldr w2, [sp, 0x920]
  1621. │  │   │    0x0000e908      e0e30091       add x0, sp, 0x38
  1622. │  │   │    0x0000e90c      a5240094       bl sym clang::driver::Driver::BuildCompilation(llvm::ArrayRef<char const*>) ; sym.imp.clang::driver::Driver::BuildCompilation_llvm::ArrayRef_char_const__
  1623. │  │   │    0x0000e910      f60300aa       mov x22, x0
  1624. │  │   │┌─< 0x0000e914      600000b4       cbz x0, 0xe920
  1625. │  │   ││   0x0000e918      c8864639       ldrb w8, [x22, 0x1a1]
  1626. │  │  ┌───< 0x0000e91c      28070034       cbz w8, 0xea00
  1627. │  │  │││   ; CODE XREF from main @ 0xe914(x)
  1628. │  │  ││└─> 0x0000e920      33008052       mov w19, 1
  1629. │  │  ││    ; CODE XREFS from main @ 0xeb38(x), 0xeb40(x)
  1630. │  │ ┌──┌─> 0x0000e924      e0db41f9       ldr x0, [sp, 0x3b0]
  1631. │  │ ╎││╎   0x0000e928      080040f9       ldr x8, [x0]
  1632. │  │ ╎││╎   0x0000e92c      081540f9       ldr x8, [x8, 0x28]
  1633. │  │ ╎││╎   0x0000e930      00013fd6       blr x8
  1634. │  │ ╎││╎   0x0000e934      1f240094       bl sym llvm::errs()         ; sym.imp.llvm::errs__
  1635. │  │ ╎││╎   0x0000e938      9e240094       bl sym llvm::TimerGroup::printAll(llvm::raw_ostream&) ; sym.imp.llvm::TimerGroup::printAll_llvm::raw_ostream_
  1636. │  │┌─────< 0x0000e93c      b60000b4       cbz x22, 0xe950
  1637. │  ││╎││╎   0x0000e940      e00316aa       mov x0, x22
  1638. │  ││╎││╎   0x0000e944      9f240094       bl sym clang::driver::Compilation::~Compilation() ; sym.imp.clang::driver::Compilation::Compilation__
  1639. │  ││╎││╎   0x0000e948      e00316aa       mov x0, x22
  1640. │  ││╎││╎   0x0000e94c      f1230094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1641. │  ││╎││╎   ; CODE XREF from main @ 0xe93c(x)
  1642. │  │└─────> 0x0000e950      e0e30091       add x0, sp, 0x38            ; int64_t arg1
  1643. │  │ ╎││╎   0x0000e954      cd010094       bl method clang::driver::Driver::~Driver() ; method.clang::driver::Driver.Driver__
  1644. │  │ ╎││╎   0x0000e958      e0030e91       add x0, sp, 0x380
  1645. │  │ ╎││╎   0x0000e95c      9d240094       bl sym clang::DiagnosticsEngine::~DiagnosticsEngine() ; sym.imp.clang::DiagnosticsEngine::DiagnosticsEngine__
  1646. │  │ ╎││╎   0x0000e960      e00315aa       mov x0, x21                 ; int64_t arg1
  1647. │  │ ╎││╎   0x0000e964      bf050094       bl method llvm::RefCountedBase<clang::DiagnosticIDs>::Release() const ; method.llvm::RefCountedBase_clang::DiagnosticIDs_.Release___const
  1648. │  │ ╎││╎   0x0000e968      e00314aa       mov x0, x20                 ; int64_t arg1
  1649. │  │ ╎││╎   0x0000e96c      7c050094       bl method llvm::RefCountedBase<clang::DiagnosticOptions>::Release() const ; method.llvm::RefCountedBase_clang::DiagnosticOptions_.Release___const
  1650. │  │ ╎││╎   0x0000e970      e8e36039       ldrb w8, [sp, 0x838]
  1651. │  │┌─────< 0x0000e974      68000036       tbz w8, 0, 0xe980
  1652. │  ││╎││╎   0x0000e978      e02744f9       ldr x0, [sp, 0x848]
  1653. │  ││╎││╎   0x0000e97c      e5230094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1654. │  ││╎││╎   ; CODE XREF from main @ 0xe974(x)
  1655. │  │└─────> 0x0000e980      e12f44f9       ldr x1, [sp, 0x858]
  1656. │  │ ╎││╎   0x0000e984      e0432191       add x0, sp, 0x850
  1657. │  │ ╎││╎   0x0000e988      61050094       bl method std::__ndk1::__tree<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::less<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > >, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > >::destroy(std::__ndk1::__tree_node<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, void*>*) ; method.std::__ndk1::__tree_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_____std::__ndk1::less_std::__ndk1::basic_string_char__std::__ndk1::char_traits_char___std::__ndk1::allocator_char_______std::__ndk1::all
  1658. │  │ ╎││╎   0x0000e98c      f61740f9       ldr x22, [var_8h]
  1659. │  │ ╎││╎   ; CODE XREFS from main @ 0xecf8(x), 0xed24(x), 0xed44(x)
  1660. │ ┌─┌─────> 0x0000e990      e0c32191       add x0, sp, 0x870           ; int64_t arg1
  1661. │ ╎│╎╎││╎   0x0000e994      29020094       bl method llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul>::~BumpPtrAllocatorImpl() ; method.llvm::BumpPtrAllocatorImpl_llvm::MallocAllocator__4096ul__4096ul_.BumpPtrAllocatorImpl__
  1662. │ ╎│╎╎││╎   0x0000e998      e8c36339       ldrb w8, [sp, 0x8f0]
  1663. │ ────────< 0x0000e99c      68000036       tbz w8, 0, 0xe9a8
  1664. │ ╎│╎╎││╎   0x0000e9a0      e08344f9       ldr x0, [sp, 0x900]
  1665. │ ╎│╎╎││╎   0x0000e9a4      db230094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1666. │ ╎│╎╎││╎   ; CODE XREF from main @ 0xe99c(x)
  1667. │ ────────> 0x0000e9a8      e8636339       ldrb w8, [sp, 0x8d8]
  1668. │ ────────< 0x0000e9ac      68000036       tbz w8, 0, 0xe9b8
  1669. │ ╎│╎╎││╎   0x0000e9b0      e07744f9       ldr x0, [sp, 0x8e8]
  1670. │ ╎│╎╎││╎   0x0000e9b4      d7230094       bl sym operator delete(void*) ; sym.imp.operator_delete_void_
  1671. │ ╎│╎╎││╎   ; CODE XREFS from main @ 0xd298(x), 0xe9ac(x)
  1672. │ ─────└──> 0x0000e9b8      e08f44f9       ldr x0, [sp, 0x918]
  1673. │ ╎│╎╎│ ╎   0x0000e9bc      1f0016eb       cmp x0, x22
  1674. │ ╎│╎╎│┌──< 0x0000e9c0      40000054       b.eq 0xe9c8
  1675. │ ╎│╎╎││╎   0x0000e9c4      d7230094       bl sym.imp.free             ; void free(void *ptr)
  1676. │ ╎│╎╎││╎   ; CODE XREF from main @ 0xe9c0(x)
  1677. │ ╎│╎╎│└──> 0x0000e9c8      e0074091       add x0, sp, 1, lsl 12
  1678. │ ╎│╎╎│ ╎   0x0000e9cc      00a00491       add x0, x0, 0x128
  1679. │ ╎│╎╎│ ╎   0x0000e9d0      84240094       bl sym llvm::InitLLVM::~InitLLVM() ; sym.imp.llvm::InitLLVM::InitLLVM__
  1680. │ ╎│╎╎│ ╎   0x0000e9d4      e003132a       mov w0, w19
  1681. │ ╎│╎╎│ ╎   0x0000e9d8      ff074091       add sp, sp, 1, lsl 12
  1682. │ ╎│╎╎│ ╎   0x0000e9dc      ff830a91       add sp, sp, 0x2a0
  1683. │ ╎│╎╎│ ╎   0x0000e9e0      f44f46a9       ldp x20, x19, [sp, 0x60]
  1684. │ ╎│╎╎│ ╎   0x0000e9e4      f65745a9       ldp x22, x21, [var_30h]
  1685. │ ╎│╎╎│ ╎   0x0000e9e8      f85f44a9       ldp x24, x23, [sp, 0x40]
  1686. │ ╎│╎╎│ ╎   0x0000e9ec      fa6743a9       ldp x26, x25, [var_10h_3]
  1687. │ ╎│╎╎│ ╎   0x0000e9f0      fc6f42a9       ldp x28, x27, [sp, 0x20]
  1688. │ ╎│╎╎│ ╎   0x0000e9f4      fd7b41a9       ldp x29, x30, [sp, 0x10]
  1689. │ ╎│╎╎│ ╎   0x0000e9f8      e80747fc       ldr d8, [sp], 0x70
  1690. │ ╎│╎╎│ ╎   0x0000e9fc      c0035fd6       ret
  1691. │ ╎│╎╎│ ╎   ; CODE XREF from main @ 0xe91c(x)
  1692. │ ╎│╎╎└───> 0x0000ea00      a88302d1       sub x8, x29, 0xa0
  1693. │ ╎│╎╎  ╎   0x0000ea04      08410091       add x8, x8, 0x10
  1694. │ ╎│╎╎  ╎   0x0000ea08      e0e30091       add x0, sp, 0x38
  1695. │ ╎│╎╎  ╎   0x0000ea0c      a28302d1       sub x2, x29, 0xa0
  1696. │ ╎│╎╎  ╎   0x0000ea10      e10316aa       mov x1, x22
  1697. │ ╎│╎╎  ╎   0x0000ea14      a80316f8       stur x8, [x29, -0xa0]
  1698. │ ╎│╎╎  ╎   0x0000ea18      a88316fc       stur d8, [x29, -0x98]
  1699. │ ╎│╎╎  ╎   0x0000ea1c      75240094       bl method clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::__ndk1::pair<int, clang::driver::Command const*> >&) ; method.clang::driver::Driver.ExecuteCompilation_clang::driver::Compilation__llvm::SmallVectorImpl_std::__ndk1::pair_int__clang::driver::Command_const____
  1700. │ ╎│╎╎  ╎   0x0000ea20      e8234d39       ldrb w8, [sp, 0x348]
  1701. │ ╎│╎╎  ╎   0x0000ea24      f303002a       mov w19, w0
  1702. │ ╎│╎╎ ┌──< 0x0000ea28      28050836       tbz w8, 1, 0xeacc
  1703. │ ╎│╎╎ │╎   0x0000ea2c      e8ffffb0       adrp x8, 0xb000
  1704. │ ╎│╎╎ │╎   0x0000ea30      007143fd       ldr d0, [x8, 0x6e0]
  1705. │ ╎│╎╎ │╎   0x0000ea34      e8235239       ldrb w8, [var_28h8]
  1706. │ ╎│╎╎ │╎   0x0000ea38      e05302fd       str d0, [sp, 0x4a0]
  1707. │ ╎│╎╎┌───< 0x0000ea3c      68000037       tbnz w8, 0, 0xea48
  1708. │ ╎│╎╎││╎   0x0000ea40      ff130979       strh wzr, [var_28h8]
  1709. │ ────────< 0x0000ea44      04000014       b 0xea54
  1710. │ ╎│╎╎││╎   ; CODE XREF from main @ 0xea3c(x)
  1711. │ ╎│╎╎└───> 0x0000ea48      e84f42f9       ldr x8, [sp, 0x498]
  1712. │ ╎│╎╎ │╎   0x0000ea4c      1f010039       strb wzr, [x8]
  1713. │ ╎│╎╎ │╎   0x0000ea50      ff4b02f9       str xzr, [sp, 0x490]
  1714. │ ╎│╎╎ │╎   ; CODE XREF from main @ 0xea44(x)
  1715. │ ────────> 0x0000ea54      e8030e91       add x8, sp, 0x380
  1716. │ ╎│╎╎ │╎   0x0000ea58      00a10b91       add x0, x8, 0x2e8           ; int64_t arg1
  1717. │ ╎│╎╎ │╎   0x0000ea5c      ff0306b9       str wzr, [sp, 0x600]
  1718. │ ╎│╎╎ │╎   0x0000ea60      86040094       bl method llvm::SmallVectorImpl<clang::FixItHint>::clear() ; method.llvm::SmallVectorImpl_clang::FixItHint_.clear__
  1719. │ ╎│╎╎ │╎   0x0000ea64      e0ffffb0       adrp x0, 0xb000
  1720. │ ╎│╎╎ │╎   0x0000ea68      00dc2591       add x0, x0, 0x977           ; 0xb977 ; "FORCE_CLANG_DIAGNOSTICS_CRASH" ; const char *name
  1721. │ ╎│╎╎ │╎   0x0000ea6c      5d230094       bl sym.imp.getenv           ; char *getenv(const char *name)
  1722. │ ╎│╎╎ │╎   0x0000ea70      1f0000f1       cmp x0, 0
  1723. │ ╎│╎╎ │╎   0x0000ea74      28408052       mov w8, 0x201
  1724. │ ╎│╎╎ │╎   0x0000ea78      e9179f1a       cset w9, eq
  1725. │ ╎│╎╎ │╎   0x0000ea7c      e0030e91       add x0, sp, 0x380
  1726. │ ╎│╎╎ │╎   0x0000ea80      e1031f2a       mov w1, wzr
  1727. │ ╎│╎╎ │╎   0x0000ea84      e9d702f9       str x9, [sp, 0x5a8]
  1728. │ ╎│╎╎ │╎   0x0000ea88      e8530979       strh w8, [sp, 0x4a8]
  1729. │ ╎│╎╎ │╎   0x0000ea8c      5d240094       bl sym clang::DiagnosticsEngine::EmitCurrentDiagnostic(bool) ; sym.imp.clang::DiagnosticsEngine::EmitCurrentDiagnostic_bool_
  1730. │ ╎│╎╎ │╎   0x0000ea90      bf8316b8       stur wzr, [x29, -0x98]
  1731. │ ╎│╎╎ │╎   0x0000ea94      c88a40b9       ldr w8, [x22, 0x88]
  1732. │ ╎│╎╎┌───< 0x0000ea98      a8010034       cbz w8, 0xeacc
  1733. │ ╎│╎╎││╎   0x0000ea9c      d74240f9       ldr x23, [x22, 0x80]
  1734. │ ╎│╎╎││╎   0x0000eaa0      18f17dd3       lsl x24, x8, 3
  1735. │ ╎│╎╎││╎   0x0000eaa4      19008012       mov w25, -1
  1736. │ ╎│╎╎││╎   ; CODE XREF from main @ 0xeac8(x)
  1737. │ ────────> 0x0000eaa8      e80240f9       ldr x8, [x23]
  1738. │ ────────< 0x0000eaac      a80000b4       cbz x8, 0xeac0
  1739. │ ╎│╎╎││╎   0x0000eab0      a08302d1       sub x0, x29, 0xa0           ; int64_t arg1
  1740. │ ╎│╎╎││╎   0x0000eab4      a10303d1       sub x1, x29, 0xc0           ; int64_t arg2
  1741. │ ╎│╎╎││╎   0x0000eab8      b92334a9       stp x25, x8, [x29, -0xc0]
  1742. │ ╎│╎╎││╎   0x0000eabc      5d010094       bl method llvm::SmallVectorTemplateBase<std::__ndk1::pair<int, clang::driver::Command const*>, false>::push_back(std::__ndk1::pair<int, clang::driver::Command const*>&&) ; method.llvm::SmallVectorTemplateBase_std::__ndk1::pair_int__clang::driver::Command_const___false_.push_back_std::__ndk1::pair_int__clang::driver::Command_const__
  1743. │ ╎│╎╎││╎   ; CODE XREF from main @ 0xeaac(x)
  1744. │ ────────> 0x0000eac0      182300f1       subs x24, x24, 8
  1745. │ ╎│╎╎││╎   0x0000eac4      f7220091       add x23, x23, 8
  1746. │ ────────< 0x0000eac8      01ffff54       b.ne 0xeaa8
  1747. │ ╎│╎╎││╎   ; CODE XREFS from main @ 0xea28(x), 0xea98(x)
  1748. │ ╎│╎╎└└──> 0x0000eacc      a98356b8       ldur w9, [x29, -0x98]
  1749. │ ╎│╎╎  ╎   0x0000ead0      a00356f8       ldur x0, [x29, -0xa0]
  1750. │ ╎│╎╎ ┌──< 0x0000ead4      c9020034       cbz w9, 0xeb2c
  1751. │ ╎│╎╎ │╎   0x0000ead8      08200091       add x8, x0, 8
  1752. │ ╎│╎╎ │╎   0x0000eadc      29ed7cd3       lsl x9, x9, 4
  1753. │ ╎│╎╎ │╎   ; CODE XREF from main @ 0xeb00(x)
  1754. │ ╎│╎╎┌───> 0x0000eae0      0a815fb8       ldur w10, [x8, -8]
  1755. │ ╎│╎╎╎│╎   0x0000eae4      7f020071       cmp w19, 0
  1756. │ ╎│╎╎╎│╎   0x0000eae8      5301931a       csel w19, w10, w19, eq
  1757. │ ────────< 0x0000eaec      ea00f837       tbnz w10, 0x1f, 0xeb08
  1758. │ ╎│╎╎╎│╎   0x0000eaf0      5f190171       cmp w10, 0x46
  1759. │ ────────< 0x0000eaf4      a0000054       b.eq 0xeb08
  1760. │ ╎│╎╎╎│╎   0x0000eaf8      294100f1       subs x9, x9, 0x10
  1761. │ ╎│╎╎╎│╎   0x0000eafc      08410091       add x8, x8, 0x10
  1762. │ ╎│╎╎└───< 0x0000eb00      01ffff54       b.ne 0xeae0
  1763. │ ╎│╎╎┌───< 0x0000eb04      0a000014       b 0xeb2c
  1764. │ ╎│╎╎││╎   ; CODE XREFS from main @ 0xeaec(x), 0xeaf4(x)
  1765. │ ────────> 0x0000eb08      020140f9       ldr x2, [x8]
  1766. │ ╎│╎╎││╎   0x0000eb0c      e3ffffb0       adrp x3, 0xb000
  1767. │ ╎│╎╎││╎   0x0000eb10      63483191       add x3, x3, 0xc52
  1768. │ ╎│╎╎││╎   0x0000eb14      e0e30091       add x0, sp, 0x38
  1769. │ ╎│╎╎││╎   0x0000eb18      e10316aa       mov x1, x22
  1770. │ ╎│╎╎││╎   0x0000eb1c      e4031faa       mov x4, xzr
  1771. │ ╎│╎╎││╎   0x0000eb20      e5031faa       mov x5, xzr
  1772. │ ╎│╎╎││╎   0x0000eb24      3b240094       bl method clang::driver::Driver::generateCompilationDiagnostics(clang::driver::Compilation&, clang::driver::Command const&, llvm::StringRef, clang::driver::Driver::CompilationDiagnosticReport*) ; method.clang::driver::Driver.generateCompilationDiagnostics_clang::driver::Compilation__clang::driver::Command_const__llvm::StringRef__clang::driver::Driver::CompilationDiagnosticReport_
  1773. │ ╎│╎╎││╎   0x0000eb28      a00356f8       ldur x0, [x29, -0xa0]
  1774. │ ╎│╎╎││╎   ; CODE XREFS from main @ 0xead4(x), 0xeb04(x)
  1775. │ ╎│╎╎└└──> 0x0000eb2c      a88302d1       sub x8, x29, 0xa0
  1776. │ ╎│╎╎  ╎   0x0000eb30      08410091       add x8, x8, 0x10
  1777. │ ╎│╎╎  ╎   0x0000eb34      1f0008eb       cmp x0, x8
  1778. │ ╎│╎└────< 0x0000eb38      60efff54       b.eq 0xe924
  1779. │ ╎│╎   ╎   0x0000eb3c      79230094       bl sym.imp.free             ; void free(void *ptr)
  1780. │ ╎│╎   └─< 0x0000eb40      79ffff17       b 0xe924
  1781. │ ╎│╎       ; CODE XREF from main @ 0xd508(x)
  1782. │ ────────> 0x0000eb44      f61740f9       ldr x22, [var_8h]
  1783. │ ╎│╎   ┌─< 0x0000eb48      14000014       b 0xeb98
  1784. │ ╎│╎   │   ; CODE XREFS from main @ 0xd514(x), 0xd524(x)
  1785. │ ────────> 0x0000eb4c      1f0118eb       cmp x8, x24
  1786. │ ╎│╎  ┌──< 0x0000eb50      80010054       b.eq 0xeb80
  1787. │ ╎│╎  ││   0x0000eb54      09210091       add x9, x8, 8
  1788. │ ╎│╎  ││   0x0000eb58      3f0118eb       cmp x9, x24
  1789. │ ╎│╎ ┌───< 0x0000eb5c      00010054       b.eq 0xeb7c
  1790. │ ╎│╎ │││   ; CODE XREF from main @ 0xeb74(x)
  1791. │ ╎│╎┌────> 0x0000eb60      2a0140f9       ldr x10, [x9]
  1792. │ ────────< 0x0000eb64      4a0000b4       cbz x10, 0xeb6c
  1793. │ ╎│╎╎│││   0x0000eb68      0a8500f8       str x10, [x8], 8
  1794. │ ╎│╎╎│││   ; CODE XREF from main @ 0xeb64(x)
  1795. │ ────────> 0x0000eb6c      29210091       add x9, x9, 8
  1796. │ ╎│╎╎│││   0x0000eb70      1f0309eb       cmp x24, x9
  1797. │ ╎│╎└────< 0x0000eb74      61ffff54       b.ne 0xeb60
  1798. │ ╎│╎ │││   0x0000eb78      f38f44f9       ldr x19, [sp, 0x918]
  1799. │ ╎│╎ │││   ; CODE XREF from main @ 0xeb5c(x)
  1800. │ ╎│╎ └───> 0x0000eb7c      f80308aa       mov x24, x8
  1801. │ ╎│╎  ││   ; CODE XREFS from main @ 0xd534(x), 0xeb50(x)
  1802. │ ─────└──> 0x0000eb80      080313cb       sub x8, x24, x19
  1803. │ ╎│╎   │   0x0000eb84      01fd4393       asr x1, x8, 3               ; uint32_t arg2
  1804. │ ╎│╎   │   0x0000eb88      e0632491       add x0, sp, 0x918           ; int64_t arg1
  1805. │ ╎│╎   │   0x0000eb8c      71000094       bl method llvm::SmallVectorImpl<char const*>::resize(unsigned long) ; method.llvm::SmallVectorImpl_char_const_.resize_unsigned_long_
  1806. │ ╎│╎   │   0x0000eb90      f38f44f9       ldr x19, [sp, 0x918]
  1807. │ ╎│╎   │   0x0000eb94      f72349b9       ldr w23, [sp, 0x920]
  1808. │ ╎│╎   │   ; CODE XREF from main @ 0xeb48(x)
  1809. │ ╎│╎   └─> 0x0000eb98      680640f9       ldr x8, [x19, 8]
  1810. │ ╎│╎       0x0000eb9c      14110091       add x20, x8, 4
  1811. │ ╎│╎       0x0000eba0      e00314aa       mov x0, x20                 ; const char *s
  1812. │ ╎│╎       0x0000eba4      13230094       bl sym.imp.strlen           ; size_t strlen(const char *s)
  1813. │ ╎│╎       0x0000eba8      f50300aa       mov x21, x0
  1814. │ ╎│╎       0x0000ebac      1f3800f1       cmp x0, 0xe
  1815. │ ╎│╎   ┌─< 0x0000ebb0      60010054       b.eq 0xebdc
  1816. │ ╎│╎   │   0x0000ebb4      bf0a00f1       cmp x21, 2
  1817. │ ╎│╎  ┌──< 0x0000ebb8      c0030054       b.eq 0xec30
  1818. │ ╎│╎ ┌───< 0x0000ebbc      350400b5       cbnz x21, 0xec40
  1819. │ ╎│╎ │││   0x0000ebc0      620641f8       ldr x2, [x19], 0x10         ; int64_t arg3
  1820. │ ╎│╎ │││   0x0000ebc4      430000f0       adrp x3, 0x19000
  1821. │ ╎│╎ │││   0x0000ebc8      63fc47f9       ldr x3, [x3, 0xff8]
  1822. │ ╎│╎ │││   0x0000ebcc      e10a00d1       sub x1, x23, 2              ; int64_t arg2
  1823. │ ╎│╎ │││   0x0000ebd0      e00313aa       mov x0, x19                 ; int64_t arg1
  1824. │ ╎│╎ │││   0x0000ebd4      75050094       bl sym cc1_main(llvm::ArrayRef<char const*>, char const*, void*) ; sym.cc1_main_llvm::ArrayRef_char_const___char_const__void_
  1825. │ ╎│╎┌────< 0x0000ebd8      5a000014       b 0xed40
  1826. │ ╎│╎││││   ; CODE XREF from main @ 0xebb0(x)
  1827. │ ╎│╎│││└─> 0x0000ebdc      880240f9       ldr x8, [x20]
  1828. │ ╎│╎│││    0x0000ebe0      896240f8       ldur x9, [x20, 6]
  1829. │ ╎│╎│││    0x0000ebe4      eaac8cd2       mov x10, 0x6567             ; 'ge'
  1830. │ ╎│╎│││    0x0000ebe8      0b4e8ed2       mov x11, 0x7270             ; 'pr'
  1831. │ ╎│╎│││    0x0000ebec      caada5f2       movk x10, 0x2d6e, lsl 16    ; 'n-'
  1832. │ ╎│╎│││    0x0000ebf0      eb8dacf2       movk x11, 0x646f, lsl 16    ; 'od'
  1833. │ ╎│╎│││    0x0000ebf4      4aaeccf2       movk x10, 0x6572, lsl 32    ; 're'
  1834. │ ╎│╎│││    0x0000ebf8      ab6eccf2       movk x11, 0x6375, lsl 32    ; 'uc'
  1835. │ ╎│╎│││    0x0000ebfc      0a4eeef2       movk x10, 0x7270, lsl 48    ; 'pr'
  1836. │ ╎│╎│││    0x0000ec00      ab4ceef2       movk x11, 0x7265, lsl 48    ; 'er'
  1837. │ ╎│╎│││    0x0000ec04      08010aca       eor x8, x8, x10
  1838. │ ╎│╎│││    0x0000ec08      29010bca       eor x9, x9, x11
  1839. │ ╎│╎│││    0x0000ec0c      080109aa       orr x8, x8, x9
  1840. │ ╎│╎│││┌─< 0x0000ec10      880100b5       cbnz x8, 0xec40
  1841. │ ╎│╎││││   0x0000ec14      620641f8       ldr x2, [x19], 0x10         ; int64_t arg3
  1842. │ ╎│╎││││   0x0000ec18      430000f0       adrp x3, 0x19000
  1843. │ ╎│╎││││   0x0000ec1c      63fc47f9       ldr x3, [x3, 0xff8]
  1844. │ ╎│╎││││   0x0000ec20      e10a00d1       sub x1, x23, 2              ; int64_t arg2
  1845. │ ╎│╎││││   0x0000ec24      e00313aa       mov x0, x19                 ; int64_t arg1
  1846. │ ╎│╎││││   0x0000ec28      ee190094       bl sym cc1gen_reproducer_main(llvm::ArrayRef<char const*>, char const*, void*) ; sym.cc1gen_reproducer_main_llvm::ArrayRef_char_const___char_const__void_
  1847. │ ────────< 0x0000ec2c      45000014       b 0xed40
  1848. │ ╎│╎││││   ; CODE XREF from main @ 0xebb8(x)
  1849. │ ╎│╎││└──> 0x0000ec30      88024079       ldrh w8, [x20]
  1850. │ ╎│╎││ │   0x0000ec34      296c8e52       mov w9, 0x7361              ; 'as'
  1851. │ ╎│╎││ │   0x0000ec38      1f01096b       cmp w8, w9
  1852. │ ╎│╎││┌──< 0x0000ec3c      60070054       b.eq 0xed28
  1853. │ ╎│╎││││   ; CODE XREFS from main @ 0xebbc(x), 0xec10(x)
  1854. │ ╎│╎│└─└─> 0x0000ec40      5c230094       bl sym llvm::errs()         ; sym.imp.llvm::errs__
  1855. │ ╎│╎│ │    0x0000ec44      092041a9       ldp x9, x8, [x0, 0x10]
  1856. │ ╎│╎│ │    0x0000ec48      290108cb       sub x9, x9, x8
  1857. │ ╎│╎│ │    0x0000ec4c      3f7d00f1       cmp x9, 0x1f
  1858. │ ╎│╎│ │┌─< 0x0000ec50      c8000054       b.hi 0xec68
  1859. │ ╎│╎│ ││   0x0000ec54      e1ffffb0       adrp x1, 0xb000
  1860. │ ╎│╎│ ││   0x0000ec58      21702991       add x1, x1, 0xa5c           ; 0xba5c ; "error: unknown integrated tool '"
  1861. │ ╎│╎│ ││   0x0000ec5c      02048052       mov w2, 0x20
  1862. │ ╎│╎│ ││   0x0000ec60      5c230094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  1863. │ ╎│╎│┌───< 0x0000ec64      08000014       b 0xec84
  1864. │ ╎│╎││││   ; CODE XREF from main @ 0xec50(x)
  1865. │ ╎│╎│││└─> 0x0000ec68      e9ffffb0       adrp x9, 0xb000
  1866. │ ╎│╎│││    0x0000ec6c      29712991       add x9, x9, 0xa5c           ; 0xba5c ; "error: unknown integrated tool '"
  1867. │ ╎│╎│││    0x0000ec70      210140ad       ldp q1, q0, [x9]            ; [0xba5c:4]=0x6f727265 ; "error: unknown integrated tool '"
  1868. │ ╎│╎│││    0x0000ec74      010100ad       stp q1, q0, [x8]
  1869. │ ╎│╎│││    0x0000ec78      080c40f9       ldr x8, [x0, 0x18]
  1870. │ ╎│╎│││    0x0000ec7c      08810091       add x8, x8, 0x20
  1871. │ ╎│╎│││    0x0000ec80      080c00f9       str x8, [x0, 0x18]
  1872. │ ╎│╎│││    ; CODE XREF from main @ 0xec64(x)
  1873. │ ╎│╎│└───> 0x0000ec84      e10314aa       mov x1, x20                 ; const void *s2
  1874. │ ╎│╎│ │    0x0000ec88      e20315aa       mov x2, x21                 ; uint32_t arg3
  1875. │ ╎│╎│ │    0x0000ec8c      c8010094       bl method llvm::raw_ostream::operator<<(llvm::StringRef) ; method.llvm::raw_ostream.operator___llvm::StringRef_
  1876. │ ╎│╎│ │    0x0000ec90      092041a9       ldp x9, x8, [x0, 0x10]
  1877. │ ╎│╎│ │    0x0000ec94      290108cb       sub x9, x9, x8
  1878. │ ╎│╎│ │    0x0000ec98      3f0900f1       cmp x9, 2
  1879. │ ╎│╎│ │┌─< 0x0000ec9c      e8000054       b.hi 0xecb8
  1880. │ ╎│╎│ ││   0x0000eca0      e1ffffb0       adrp x1, 0xb000
  1881. │ ╎│╎│ ││   0x0000eca4      21182d91       add x1, x1, 0xb46
  1882. │ ╎│╎│ ││   0x0000eca8      62008052       mov w2, 3
  1883. │ ╎│╎│ ││   0x0000ecac      49230094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  1884. │ ╎│╎│ ││   0x0000ecb0      080c40f9       ldr x8, [x0, 0x18]
  1885. │ ╎│╎│┌───< 0x0000ecb4      08000014       b 0xecd4
  1886. │ ╎│╎││││   ; CODE XREF from main @ 0xec9c(x)
  1887. │ ╎│╎│││└─> 0x0000ecb8      09048052       mov w9, 0x20
  1888. │ ╎│╎│││    0x0000ecbc      eac48552       mov w10, 0x2e27             ; '\'.'
  1889. │ ╎│╎│││    0x0000ecc0      09090039       strb w9, [x8, 2]
  1890. │ ╎│╎│││    0x0000ecc4      0a010079       strh w10, [x8]
  1891. │ ╎│╎│││    0x0000ecc8      080c40f9       ldr x8, [x0, 0x18]
  1892. │ ╎│╎│││    0x0000eccc      080d0091       add x8, x8, 3
  1893. │ ╎│╎│││    0x0000ecd0      080c00f9       str x8, [x0, 0x18]
  1894. │ ╎│╎│││    ; CODE XREF from main @ 0xecb4(x)
  1895. │ ╎│╎│└───> 0x0000ecd4      090840f9       ldr x9, [x0, 0x10]
  1896. │ ╎│╎│ │    0x0000ecd8      290108cb       sub x9, x9, x8
  1897. │ ╎│╎│ │    0x0000ecdc      3fa100f1       cmp x9, 0x28
  1898. │ ╎│╎│ │┌─< 0x0000ece0      e8000054       b.hi 0xecfc
  1899. │ ╎│╎│ ││   0x0000ece4      e1ffffb0       adrp x1, 0xb000
  1900. │ ╎│╎│ ││   0x0000ece8      21f02f91       add x1, x1, 0xbfc           ; 0xbbfc ; "Valid tools include '-cc1' and '-cc1as'.\n"
  1901. │ ╎│╎│ ││   0x0000ecec      22058052       mov w2, 0x29                ; ')'
  1902. │ ╎│╎│ ││   0x0000ecf0      38230094       bl sym llvm::raw_ostream::write(char const*, unsigned long) ; sym.imp.llvm::raw_ostream::write_char_const__unsigned_long_
  1903. │ ╎│╎│ ││   0x0000ecf4      33008052       mov w19, 1
  1904. │ ────────< 0x0000ecf8      26ffff17       b 0xe990
  1905. │ ╎│╎│ ││   ; CODE XREF from main @ 0xece0(x)
  1906. │ ╎│╎│ │└─> 0x0000ecfc      e9ffffb0       adrp x9, 0xb000
  1907. │ ╎│╎│ │    0x0000ed00      29f12f91       add x9, x9, 0xbfc           ; 0xbbfc ; "Valid tools include '-cc1' and '-cc1as'.\n"
  1908. │ ╎│╎│ │    0x0000ed04      2091c13c       ldur q0, [x9, 0x19]
  1909. │ ╎│╎│ │    0x0000ed08      220540ad       ldp q2, q1, [x9]            ; [0xbbfc:4]=0x696c6156 ; "Valid tools include '-cc1' and '-cc1as'.\n"
  1910. │ ╎│╎│ │    0x0000ed0c      33008052       mov w19, 1
  1911. │ ╎│╎│ │    0x0000ed10      0091813c       stur q0, [x8, 0x19]
  1912. │ ╎│╎│ │    0x0000ed14      020500ad       stp q2, q1, [x8]
  1913. │ ╎│╎│ │    0x0000ed18      080c40f9       ldr x8, [x0, 0x18]
  1914. │ ╎│╎│ │    0x0000ed1c      08a50091       add x8, x8, 0x29
  1915. │ ╎│╎│ │    0x0000ed20      080c00f9       str x8, [x0, 0x18]
  1916. │ └───────< 0x0000ed24      1bffff17       b 0xe990
  1917. │  │╎│ │    ; CODE XREF from main @ 0xec3c(x)
  1918. │  │╎│ └──> 0x0000ed28      620641f8       ldr x2, [x19], 0x10         ; int64_t arg_ec0h
  1919. │  │╎│      0x0000ed2c      430000f0       adrp x3, 0x19000
  1920. │  │╎│      0x0000ed30      63fc47f9       ldr x3, [x3, 0xff8]
  1921. │  │╎│      0x0000ed34      e10a00d1       sub x1, x23, 2              ; int64_t arg2
  1922. │  │╎│      0x0000ed38      e00313aa       mov x0, x19                 ; int64_t arg1
  1923. │  │╎│      0x0000ed3c      1d0c0094       bl sym cc1as_main(llvm::ArrayRef<char const*>, char const*, void*) ; sym.cc1as_main_llvm::ArrayRef_char_const___char_const__void_
  1924. │  │╎│      ; CODE XREFS from main @ 0xebd8(x), 0xec2c(x)
  1925. │ ───└────> 0x0000ed40      f303002a       mov w19, w0
  1926. │  │└─────< 0x0000ed44      13ffff17       b 0xe990
  1927. │  │        ; CODE XREF from main @ 0xd83c(x)
  1928. │  └──────> 0x0000ed48      a08302d1       sub x0, x29, 0xa0
  1929. └           0x0000ed4c      b5230094       bl sym std::__ndk1::__basic_string_common<true>::__throw_length_error() const ; sym.imp.std::__ndk1::__basic_string_common_true_::__throw_length_error___const
  1930.  
Advertisement
Add Comment
Please, Sign In to add comment