diff --git a/BCB/Cheang et al/Figure 3b/Figure_3b.bir b/BCB/Cheang et al/Figure 3b/Figure_3b.bir
new file mode 100644
index 0000000000000000000000000000000000000000..880687b25bc2273f8cddf2f2bf0d1b44266cb2aa
--- /dev/null
+++ b/BCB/Cheang et al/Figure 3b/Figure_3b.bir	
@@ -0,0 +1,2697 @@
+00019569: program
+0001956a: sub foo(foo_result)
+00019617: foo_result :: out u32 = low:32[RAX]
+
+000143bb:
+000143bd: goto %0001343b
+
+0001343b:
+00013441: RAX := pad:64[low:32[RCX]]
+00013463: CF := RAX < mem[0x180008000, el]:u64
+00013484: when ~CF goto %00013481
+0001956b: goto %000134e3
+
+00013481:
+00013493: RAX := 63:8[RAX].0
+000134b2: #12582290 := mem[RSP, el]:u64
+000134b6: RSP := RSP + 8
+000134b9: call #12582290 with noreturn
+
+000134e3:
+000134e9: RDX := pad:64[mem[0x180008230]]
+00013508: RDX := pad:64[low:32[RDX] << 9]
+0001354a: #12582286 := mem[RDX + 0x180008228]
+00013550: RCX := 63:8[RCX].low:8[RCX] + #12582286
+00013579: RAX := pad:64[low:8[RCX]]
+00013586: #12582284 := mem[RSP, el]:u64
+0001358a: RSP := RSP + 8
+0001358d: call #12582284 with noreturn
+
+0001956c: sub sub_180001005(sub_180001005_result)
+00019618: sub_180001005_result :: out u32 = low:32[RAX]
+
+000049f0:
+000049f3: goto %000049f1
+
+000049f1:
+000049fe: mem := mem with [RSP + 8, el]:u64 <- RBX
+00004a0a: mem := mem with [RSP + 0x10, el]:u64 <- RSI
+00004a18: #12582911 := RDI
+00004a1c: RSP := RSP - 8
+00004a22: mem := mem with [RSP, el]:u64 <- #12582911
+00004a40: RSP := RSP - 0x20
+00004a64: RDI := R8
+00004a6c: RBX := pad:64[low:32[RDX]]
+00004a74: RSI := RCX
+00004a8c: #12582907 := low:32[RDX] - 1
+00004aa8: ZF := 0 = #12582907
+00004aaf: when ~ZF goto %00004aac
+0001956d: goto %00019557
+
+00019557:
+00019560: RSP := RSP - 8
+00019565: mem := mem with [RSP, el]:u64 <- 0x180001771
+00019567: call @sub_1800010fa with return %00004aac
+
+00004aac:
+00004ab8: R8 := RDI
+00004ac0: RDX := pad:64[low:32[RBX]]
+00004ac8: RCX := RSI
+00004ad2: RBX := mem[RSP + 0x30, el]:u64
+00004adc: RSI := mem[RSP + 0x38, el]:u64
+00004afd: RSP := RSP + 0x20
+00004b28: RDI := mem[RSP, el]:u64
+00004b2c: RSP := RSP + 8
+00004b31: call @sub_1800015a8 with noreturn
+
+0001956e: sub sub_18000100f(sub_18000100f_result)
+00019619: sub_18000100f_result :: out u32 = low:32[RAX]
+
+000118a5:
+000118b4: goto %000118b2
+
+000118b2:
+000118b9: RAX := 0x180008198
+000118c6: #12582417 := mem[RSP, el]:u64
+000118ca: RSP := RSP + 8
+000118cd: call #12582417 with noreturn
+
+0001956f: sub sub_180001019(sub_180001019_result)
+0001961a: sub_180001019_result :: out u32 = low:32[RAX]
+
+0001190d:
+00011910: goto %0001190e
+
+0001190e:
+0001192d: RSP := RSP - 0x28
+00011955: RCX := 0
+00011972: RSP := RSP - 8
+00011977: mem := mem with [RSP, el]:u64 <- 0x180001AE7
+00011979: call @sub_18000105a with return %0001197b
+
+0001197b:
+0001198b: #12582412 := low:8[RAX]
+000119a1: ZF := 0 = #12582412
+000119ab: RAX := 63:8[RAX].pad:8[~ZF]
+000119cc: RSP := RSP + 0x28
+000119f8: #12582407 := mem[RSP, el]:u64
+000119fc: RSP := RSP + 8
+000119ff: call #12582407 with noreturn
+
+00019570: sub sub_18000101e(sub_18000101e_result)
+0001961b: sub_18000101e_result :: out u32 = low:32[RAX]
+
+0001206b:
+0001206d: goto %000118df
+
+000118df:
+000118e3: RAX := 0x1800081A8
+000118f0: #12582416 := mem[RSP, el]:u64
+000118f4: RSP := RSP + 8
+000118f7: call #12582416 with noreturn
+
+00019571: sub sub_18000102d(sub_18000102d_result)
+0001961c: sub_18000102d_result :: out u32 = low:32[RAX]
+
+00011803:
+00011811: call @sub_180002790 with noreturn
+
+00019572: sub sub_180001032(sub_180001032_result)
+0001961d: sub_180001032_result :: out u32 = low:32[RAX]
+
+00011813:
+00011815: goto %00004ecb
+
+00004ecb:
+00004ed5: RAX := 0
+00004ef4: #12582878 := mem[RSP, el]:u64
+00004ef8: RSP := RSP + 8
+00004efb: call #12582878 with noreturn
+
+00019573: sub sub_18000103c(sub_18000103c_result)
+0001961e: sub_18000103c_result :: out u32 = low:32[RAX]
+
+0000dd5b:
+0000dd6a: goto %0000dd68
+
+0000dd68:
+0000dd77: #12582819 := RBX
+0000dd7b: RSP := RSP - 8
+0000dd81: mem := mem with [RSP, el]:u64 <- #12582819
+0000dd9f: RSP := RSP - 0x20
+0000ddd3: #12582815 := mem[0x1800081D0, el]:u64 - 0xFFFFFFFFFFFFFFFF
+0000ddef: ZF := 0 = #12582815
+0000ddf7: RBX := RCX
+0000ddfe: when ~ZF goto %0000ddfb
+00019574: goto %0000df81
+
+0000ddfb:
+0000de07: RDX := RBX
+0000de0d: RCX := 0x1800081D0
+0000de18: RSP := RSP - 8
+0000de1d: mem := mem with [RSP, el]:u64 <- 0x180001E71
+0000de1f: call @sub_18000276c with return %0000de21
+
+0000df81:
+0000df8a: RSP := RSP - 8
+0000df8f: mem := mem with [RSP, el]:u64 <- 0x180001E60
+0000df91: call @sub_180002778 with return %0000df93
+
+0000df93:
+0000df95: goto %0000de21
+
+0000de21:
+0000de2b: RDX := 0
+0000de4f: #12582813 := low:32[RAX]
+0000de65: ZF := 0 = #12582813
+0000de71: RDX := if ZF then RBX else 0
+0000de79: RAX := RDX
+0000de9a: RSP := RSP + 0x20
+0000dec5: RBX := mem[RSP, el]:u64
+0000dec9: RSP := RSP + 8
+0000ded6: #12582808 := mem[RSP, el]:u64
+0000deda: RSP := RSP + 8
+0000dedd: call #12582808 with noreturn
+
+00019575: sub sub_180001041(sub_180001041_result)
+0001961f: sub_180001041_result :: out u32 = low:32[RAX]
+
+0000df97:
+0000df99: goto %00004d9d
+
+00004d9d:
+00004da1: RCX := 0x180008180
+00004da7: call mem[0x18000A028, el]:u64 with noreturn
+
+00019576: sub sub_180001046(sub_180001046_result)
+00019620: sub_180001046_result :: out u32 = low:32[RAX]
+
+0000df9b:
+0000df9d: call @sub_18000279c with noreturn
+
+00019577: sub sub_180001055(sub_180001055_result)
+00019621: sub_180001055_result :: out u32 = low:32[RAX]
+
+0000f067:
+0000f069: call @sub_180002794 with noreturn
+
+00019578: sub sub_18000105a(sub_18000105a_result)
+00019622: sub_18000105a_result :: out u32 = low:32[RAX]
+
+0000f06b:
+0000f06e: goto %0000f06c
+
+0000f06c:
+0000f07b: #12582710 := RBX
+0000f07f: RSP := RSP - 8
+0000f085: mem := mem with [RSP, el]:u64 <- #12582710
+0000f0a3: RSP := RSP - 0x20
+0000f0d7: #12582706 := mem[0x1800081C9]
+0000f0f3: ZF := 0 = #12582706
+0000f0fb: RBX := pad:64[low:32[RCX]]
+0000f102: when ~ZF goto %0000f0ff
+00019582: goto %000141f7
+
+000141f7:
+0001420d: #12582214 := low:32[RCX] - 1
+00014211: CF := low:32[RCX] < 1
+00014229: ZF := 0 = #12582214
+00014231: when ~(CF | ZF) goto %0000f171
+00019581: goto %00014235
+
+0000f171:
+0000f175: RCX := 5
+0000f181: RSP := RSP - 8
+0000f186: mem := mem with [RSP, el]:u64 <- 0x180001CFE
+0000f188: call @sub_18000114a with return %0001415f
+
+0001415f:
+00014161: call @interrupt:#3 with noreturn
+
+00014163:
+00014165: call @interrupt:#3 with noreturn
+
+00014167:
+00014169: call @interrupt:#3 with noreturn
+
+0001416b:
+0001416d: call @interrupt:#3 with noreturn
+
+0001416f:
+00014171: call @interrupt:#3 with noreturn
+
+00014173:
+00014175: call @interrupt:#3 with noreturn
+
+00014177:
+00014179: call @interrupt:#3 with noreturn
+
+0001417b:
+0001417d: call @interrupt:#3 with noreturn
+
+0001417f:
+00014181: call @interrupt:#3 with noreturn
+
+00014183:
+00014185: call @interrupt:#3 with noreturn
+
+00014187:
+00014189: call @interrupt:#3 with noreturn
+
+0001418b:
+0001418d: call @interrupt:#3 with noreturn
+
+0001418f:
+00014191: call @interrupt:#3 with noreturn
+
+00014193:
+00014195: call @interrupt:#3 with noreturn
+
+00014197:
+00014199: call @interrupt:#3 with noreturn
+
+0001419b:
+0001419d: call @interrupt:#3 with noreturn
+
+0001419f:
+000141a1: call @interrupt:#3 with noreturn
+
+000141a3:
+000141a5: call @interrupt:#3 with noreturn
+
+000141a7:
+000141a9: call @interrupt:#3 with noreturn
+
+000141ab:
+000141ad: call @interrupt:#3 with noreturn
+
+000141af:
+000141b1: call @interrupt:#3 with noreturn
+
+000141b3:
+000141b5: call @interrupt:#3 with noreturn
+
+000141b7:
+000141b9: call @interrupt:#3 with noreturn
+
+000141bb:
+000141bd: call @interrupt:#3 with noreturn
+
+000141bf:
+000141c1: call @interrupt:#3 with noreturn
+
+000141c3:
+000141c5: call @interrupt:#3 with noreturn
+
+000141c7:
+000141c9: call @interrupt:#3 with noreturn
+
+000141cb:
+000141cd: call @interrupt:#3 with noreturn
+
+000141cf:
+000141d1: call @interrupt:#3 with noreturn
+
+000141d3:
+000141d5: call @interrupt:#3 with noreturn
+
+000141d7:
+000141d9: call @interrupt:#3 with noreturn
+
+000141db:
+000141dd: call @interrupt:#3 with noreturn
+
+000141df:
+000141e1: call @interrupt:#3 with noreturn
+
+000141e3:
+000141e5: call @interrupt:#3 with noreturn
+
+000141e7:
+000141e9: call @interrupt:#3 with noreturn
+
+000141eb:
+000141ed: call @interrupt:#3 with noreturn
+
+000141ef:
+000141f1: call @interrupt:#3 with noreturn
+
+000141f3:
+000141f5: call @interrupt:#3 with noreturn
+
+00014235:
+0001423e: RSP := RSP - 8
+00014243: mem := mem with [RSP, el]:u64 <- 0x180001C8F
+00014245: call @sub_180001087 with return %00014247
+
+00014247:
+00014257: #12582212 := low:32[RAX]
+0001426d: ZF := 0 = #12582212
+00014274: when ZF goto %00014271
+0001957f: goto %000142cf
+
+000142cf:
+000142df: #12582209 := low:32[RBX]
+000142f5: ZF := 0 = #12582209
+000142fb: when ~ZF goto %00014271
+0001957e: goto %000142ff
+
+00014271:
+0001427f: YMM0 := 255:128[YMM0].mem[0x180006890, el]:u128
+0001428b: RAX := 0xFFFFFFFFFFFFFFFF
+000142a7: mem := mem with [0x1800081D0, el]:u128 <- low:128[YMM0]
+000142b1: mem := mem with [0x1800081E0, el]:u64 <- 0xFFFFFFFFFFFFFFFF
+000142bb: mem := mem with [0x1800081E8, el]:u128 <- low:128[YMM0]
+000142c5: mem := mem with [0x1800081F8, el]:u64 <- 0xFFFFFFFFFFFFFFFF
+0001957d: goto %000142c7
+
+000142ff:
+00014303: RCX := 0x1800081D0
+0001430e: RSP := RSP - 8
+00014313: mem := mem with [RSP, el]:u64 <- 0x180001CA3
+00014315: call @sub_180002766 with return %00014317
+
+00014317:
+00014327: #12582207 := low:32[RAX]
+0001433d: ZF := 0 = #12582207
+00014344: when ~ZF goto %00014341
+0001957c: goto %0001436b
+
+0001436b:
+0001436f: RCX := 0x1800081E8
+0001437a: RSP := RSP - 8
+0001437f: mem := mem with [RSP, el]:u64 <- 0x180001CB3
+00014381: call @sub_180002766 with return %00014383
+
+00014383:
+00014393: #12582205 := low:32[RAX]
+000143a9: ZF := 0 = #12582205
+000143af: when ZF goto %000142c7
+0001957b: goto %00014341
+
+000142c7:
+000142cd: mem := mem with [0x1800081C9] <- 1
+0001957a: goto %0000f0ff
+
+0000f0ff:
+0000f10b: RAX := high:56[RAX].1
+00019579: goto %0000f10d
+
+00014341:
+00014353: RAX := 63:8[RAX].0
+00014369: goto %0000f10d
+
+0000f10d:
+0000f12c: RSP := RSP + 0x20
+0000f157: RBX := mem[RSP, el]:u64
+0000f15b: RSP := RSP + 8
+0000f168: #12582701 := mem[RSP, el]:u64
+0000f16c: RSP := RSP + 8
+0000f16f: call #12582701 with noreturn
+
+00019583: sub sub_180001082(sub_180001082_result)
+00019623: sub_180001082_result :: out u32 = low:32[RAX]
+
+00013625:
+00013634: goto %00013632
+
+00013632:
+00013641: #12582282 := RBX
+00013645: RSP := RSP - 8
+0001364b: mem := mem with [RSP, el]:u64 <- #12582282
+00013669: RSP := RSP - 0x20
+0001369d: #12582278 := mem[0x1800081C8]
+000136b9: ZF := 0 = #12582278
+000136c3: RBX := high:56[RBX].low:8[RCX]
+000136ca: when ZF goto %000136c7
+00019585: goto %00013793
+
+00013793:
+000137a3: #12582272 := low:8[RDX]
+000137b9: ZF := 0 = #12582272
+000137bf: when ~ZF goto %000136fb
+00019584: goto %000136c7
+
+000136c7:
+000136d6: RSP := RSP - 8
+000136db: mem := mem with [RSP, el]:u64 <- 0x180001E2E
+000136dd: call @sub_1800010e6 with return %000136df
+
+000136df:
+000136e7: RCX := high:56[RCX].low:8[RBX]
+000136f2: RSP := RSP - 8
+000136f7: mem := mem with [RSP, el]:u64 <- 0x180001E35
+000136f9: call @sub_180001046 with return %000136fb
+
+000136fb:
+00013701: RAX := high:56[RAX].1
+00013722: RSP := RSP + 0x20
+0001374d: RBX := mem[RSP, el]:u64
+00013751: RSP := RSP + 8
+0001375e: #12582273 := mem[RSP, el]:u64
+00013762: RSP := RSP + 8
+00013765: call #12582273 with noreturn
+
+00019586: sub sub_180001087(sub_180001087_result)
+00019624: sub_180001087_result :: out u32 = low:32[RAX]
+
+0000d5cd:
+0000d5dc: goto %0000d5da
+
+0000d5da:
+0000d616: #12582866 := mem[0x180008060, el]:u32
+0000d635: ZF := 0 = #12582866
+0000d63f: RAX := 0.pad:8[~ZF]
+0000d64c: #12582864 := mem[RSP, el]:u64
+0000d650: RSP := RSP + 8
+0000d653: call #12582864 with noreturn
+
+00019587: sub sub_18000108c(sub_18000108c_result)
+00019625: sub_18000108c_result :: out u32 = low:32[RAX]
+
+0000d6f5:
+0000d6f8: call @sub_180001d24 with noreturn
+
+00019588: sub sub_180001096(sub_180001096_result)
+00019626: sub_180001096_result :: out u32 = low:32[RAX]
+
+00011bb9:
+00011bc7: call @sub_180002798 with noreturn
+
+00019589: sub sub_1800010a5(sub_1800010a5_result)
+00019627: sub_1800010a5_result :: out u32 = low:32[RAX]
+
+000116cd:
+000116db: call @sub_1800027a0 with noreturn
+
+0001958a: sub sub_1800010aa(sub_1800010aa_result)
+00019628: sub_1800010aa_result :: out u32 = low:32[RAX]
+
+000116dd:
+000116df: call @sub_180002794 with noreturn
+
+0001958b: sub sub_1800010b4(sub_1800010b4_result)
+00019629: sub_1800010b4_result :: out u32 = low:32[RAX]
+
+00004c98:
+00004ca7: goto %00004ca5
+
+00004ca5:
+00004cc4: RSP := RSP - 0x28
+00004cf8: #12582889 := low:32[RDX] - 1
+00004d14: ZF := 0 = #12582889
+00004d1b: when ~ZF goto %00004d18
+0001958d: goto %00018a6f
+
+00018a6f:
+00018a85: #12582154 := mem[0x180006880, el]:u64
+00018aa1: ZF := 0 = #12582154
+00018aa7: when ~ZF goto %00004d18
+0001958c: goto %00018aab
+
+00018aab:
+00018ab7: #12582152 := mem[0x18000A020, el]:u64
+00018abb: RSP := RSP - 8
+00018ac0: mem := mem with [RSP, el]:u64 <- 0x180001915
+00018ac3: call #12582152 with return %00004d18
+
+00004d18:
+00004d22: RAX := 1
+00004d43: RSP := RSP + 0x28
+00004d6f: #12582884 := mem[RSP, el]:u64
+00004d73: RSP := RSP + 8
+00004d76: call #12582884 with noreturn
+
+0001958e: sub sub_1800010c3(sub_1800010c3_result)
+0001962a: sub_1800010c3_result :: out u32 = low:32[RAX]
+
+0000fc66:
+0000fc74: goto %0000e915
+
+0000e915:
+0000e919: RAX := 1
+0000e926: #12582755 := mem[RSP, el]:u64
+0000e92a: RSP := RSP + 8
+0000e92d: call #12582755 with noreturn
+
+0001958f: sub sub_1800010cd(sub_1800010cd_result)
+0001962b: sub_1800010cd_result :: out u32 = low:32[RAX]
+
+000109b4:
+000109b6: goto %0001007e
+
+0001007e:
+00010088: mem := mem with [RSP + 8, el]:u64 <- RBX
+00010096: #12582586 := RDI
+0001009a: RSP := RSP - 8
+000100a0: mem := mem with [RSP, el]:u64 <- #12582586
+000100be: RSP := RSP - 0x20
+000100e0: RBX := 0x1800070A0
+000100e6: RDI := 0x1800071A8
+000100eb: goto %000100e9
+
+000100e9:
+0001010c: CF := RBX < 0x1800071A8
+0001012d: when CF goto %0001012a
+00019592: goto %000101c4
+
+000101c4:
+000101cc: RBX := mem[RSP + 0x30, el]:u64
+000101ed: RSP := RSP + 0x20
+00010218: RDI := mem[RSP, el]:u64
+0001021c: RSP := RSP + 8
+00010229: #12582571 := mem[RSP, el]:u64
+0001022d: RSP := RSP + 8
+00010230: call #12582571 with noreturn
+
+0001012a:
+00010138: RAX := mem[RBX, el]:u64
+0001014a: #12582580 := RAX
+00010160: ZF := 0 = #12582580
+00010167: when ZF goto %00010164
+00019591: goto %000101aa
+
+000101aa:
+000101b6: #12582575 := mem[0x18000B020, el]:u64
+000101ba: RSP := RSP - 8
+000101bf: mem := mem with [RSP, el]:u64 <- 0x1800021F8
+000101c2: call #12582575 with return %00010164
+
+00010164:
+00010189: RBX := RBX + 8
+00019590: goto %000100e9
+
+00019593: sub sub_1800010d7(sub_1800010d7_result)
+0001962c: sub_1800010d7_result :: out u32 = low:32[RAX]
+
+00011199:
+0001119b: goto %00010272
+
+00010272:
+0001027c: mem := mem with [RSP + 8, el]:u64 <- RBX
+0001028a: #12582570 := RDI
+0001028e: RSP := RSP - 8
+00010294: mem := mem with [RSP, el]:u64 <- #12582570
+000102b2: RSP := RSP - 0x20
+000102d4: RBX := 0x1800072C0
+000102da: RDI := 0x1800073C8
+000102df: goto %000102dd
+
+000102dd:
+00010300: CF := RBX < 0x1800073C8
+00010321: when CF goto %0001031e
+00019596: goto %000103b8
+
+000103b8:
+000103c0: RBX := mem[RSP + 0x30, el]:u64
+000103e1: RSP := RSP + 0x20
+0001040c: RDI := mem[RSP, el]:u64
+00010410: RSP := RSP + 8
+0001041d: #12582555 := mem[RSP, el]:u64
+00010421: RSP := RSP + 8
+00010424: call #12582555 with noreturn
+
+0001031e:
+0001032c: RAX := mem[RBX, el]:u64
+0001033e: #12582564 := RAX
+00010354: ZF := 0 = #12582564
+0001035b: when ZF goto %00010358
+00019595: goto %0001039e
+
+0001039e:
+000103aa: #12582559 := mem[0x18000B020, el]:u64
+000103ae: RSP := RSP - 8
+000103b3: mem := mem with [RSP, el]:u64 <- 0x180002244
+000103b6: call #12582559 with return %00010358
+
+00010358:
+0001037d: RBX := RBX + 8
+00019594: goto %000102dd
+
+00019597: sub sub_1800010e1(sub_1800010e1_result)
+0001962d: sub_1800010e1_result :: out u32 = low:32[RAX]
+
+000111a1:
+000111a3: call @sub_180002798 with noreturn
+
+00019598: sub sub_1800010e6(sub_1800010e6_result)
+0001962e: sub_1800010e6_result :: out u32 = low:32[RAX]
+
+000111a5:
+000111a7: call @sub_18000279c with noreturn
+
+00019599: sub sub_1800010fa(sub_1800010fa_result)
+0001962f: sub_1800010fa_result :: out u32 = low:32[RAX]
+
+000111b5:
+000111b8: goto %000111b6
+
+000111b6:
+000111c3: mem := mem with [RSP + 0x20, el]:u64 <- RBX
+000111d1: #12582460 := RBP
+000111d5: RSP := RSP - 8
+000111db: mem := mem with [RSP, el]:u64 <- #12582460
+000111e3: RBP := RSP
+00011201: RSP := RSP - 0x20
+00011225: RAX := mem[0x180008020, el]:u64
+0001122b: RBX := 0x2B992DDFA232
+00011248: #12582456 := RAX - 0x2B992DDFA232
+00011267: ZF := 0 = #12582456
+0001126e: when ~ZF goto %0001126b
+0001959b: goto %000113a1
+
+000113a1:
+000113b7: mem := mem with [RBP + 0x18, el]:u64 <- 0
+000113d9: RCX := RBP + 0x18
+000113e7: #12582449 := mem[0x18000A018, el]:u64
+000113eb: RSP := RSP - 8
+000113f0: mem := mem with [RSP, el]:u64 <- 0x180001856
+000113f3: call #12582449 with return %000113f5
+
+000113f5:
+000113fd: RAX := mem[RBP + 0x18, el]:u64
+00011409: mem := mem with [RBP + 0x10, el]:u64 <- RAX
+00011417: #12582448 := mem[0x18000A010, el]:u64
+0001141b: RSP := RSP - 8
+00011420: mem := mem with [RSP, el]:u64 <- 0x180001864
+00011423: call #12582448 with return %00011425
+
+00011425:
+0001142b: RAX := pad:64[low:32[RAX]]
+00011449: mem :=
+          mem with [RBP + 0x10, el]:u64 <- mem[RBP + 0x10, el]:u64 ^ RAX
+00011471: #12582446 := mem[0x18000A008, el]:u64
+00011475: RSP := RSP - 8
+0001147a: mem := mem with [RSP, el]:u64 <- 0x180001870
+0001147d: call #12582446 with return %0001147f
+
+0001147f:
+00011485: RAX := pad:64[low:32[RAX]]
+0001148d: RCX := RBP + 0x20
+000114ab: mem :=
+          mem with [RBP + 0x10, el]:u64 <- mem[RBP + 0x10, el]:u64 ^ RAX
+000114d3: #12582444 := mem[0x18000A000, el]:u64
+000114d7: RSP := RSP - 8
+000114dc: mem := mem with [RSP, el]:u64 <- 0x180001880
+000114df: call #12582444 with return %000114e1
+
+000114e1:
+000114e9: RAX := pad:64[mem[RBP + 0x20, el]:u32]
+000114f1: RCX := RBP + 0x10
+0001150a: RAX := RAX << 0x20
+00011537: RAX := RAX ^ mem[RBP + 0x20, el]:u64
+00011563: RAX := RAX ^ mem[RBP + 0x10, el]:u64
+0001158d: RAX := RAX ^ RCX
+000115bd: RAX := RAX & 0xFFFFFFFFFFFF
+000115d9: RCX := 0x2B992DDFA233
+000115f6: #12582437 := RAX - 0x2B992DDFA232
+00011615: ZF := 0 = #12582437
+00011621: RAX := if ZF then 0x2B992DDFA233 else RAX
+0001162b: mem := mem with [0x180008020, el]:u64 <- RAX
+0001959a: goto %0001126b
+
+0001126b:
+00011279: RBX := mem[RSP + 0x48, el]:u64
+00011281: RAX := ~RAX
+0001128b: mem := mem with [0x180008028, el]:u64 <- RAX
+000112ac: RSP := RSP + 0x20
+000112d7: RBP := mem[RSP, el]:u64
+000112db: RSP := RSP + 8
+000112e8: #12582451 := mem[RSP, el]:u64
+000112ec: RSP := RSP + 8
+000112ef: call #12582451 with noreturn
+
+0001959c: sub sub_180001109(sub_180001109_result)
+00019630: sub_180001109_result :: out u32 = low:32[RAX]
+
+00011635:
+00011638: goto %00011636
+
+00011636:
+0001163d: RAX := 0x180008238
+0001164a: #12582435 := mem[RSP, el]:u64
+0001164e: RSP := RSP + 8
+00011651: call #12582435 with noreturn
+
+0001959d: sub sub_18000110e(sub_18000110e_result)
+00019631: sub_18000110e_result :: out u32 = low:32[RAX]
+
+00011663:
+00011665: goto %00004dc1
+
+00004dc1:
+00004dc5: RCX := 0x180008180
+00004dca: goto %00004dc8
+
+00004dc8:
+00004dcf: call mem[0x18000A0F0, el]:u64 with noreturn
+
+0001959e: sub sub_180001118(sub_180001118_result)
+00019632: sub_180001118_result :: out u32 = low:32[RAX]
+
+0001166b:
+0001166e: goto %0001166c
+
+0001166c:
+0001168b: RSP := RSP - 0x28
+000116b3: RCX := 0
+000116d1: RSP := RSP - 8
+000116d6: mem := mem with [RSP, el]:u64 <- 0x180001C07
+000116d8: call @sub_1800010a5 with return %000116e5
+
+000116e5:
+00011704: RSP := RSP + 0x28
+00011727: goto %000111b1
+
+000111b1:
+000111b3: call @sub_1800027a0 with noreturn
+
+0001959f: sub sub_18000111d(sub_18000111d_result)
+00019633: sub_18000111d_result :: out u32 = low:32[RAX]
+
+000122af:
+000122b1: goto %00011a1d
+
+00011a1d:
+00011a39: RSP := RSP - 0x28
+00011a60: RSP := RSP - 8
+00011a65: mem := mem with [RSP, el]:u64 <- 0x180001B01
+00011a67: call @sub_180001055 with return %00011a69
+
+00011a69:
+00011a79: #12582403 := low:8[RAX]
+00011a8f: ZF := 0 = #12582403
+00011a96: when ~ZF goto %00011a93
+000195a2: goto %00012044
+
+00011a93:
+00011aa2: RSP := RSP - 8
+00011aa7: mem := mem with [RSP, el]:u64 <- 0x180001B0E
+00011aa9: call @sub_1800010aa with return %00011aab
+
+00011aab:
+00011abb: #12582401 := low:8[RAX]
+00011ad1: ZF := 0 = #12582401
+00011ad8: when ~ZF goto %00011ad5
+000195a1: goto %00012031
+
+00011ad5:
+00011ae1: RAX := high:56[RAX].1
+000195a0: goto %00011ae3
+
+00012031:
+0001203a: RSP := RSP - 8
+0001203f: mem := mem with [RSP, el]:u64 <- 0x180001B17
+00012041: call @sub_180001096 with return %00012043
+
+00012043:
+00012046: goto %00012044
+
+00012044:
+00012053: RAX := 63:8[RAX].0
+00012069: goto %00011ae3
+
+00011ae3:
+00011b02: RSP := RSP + 0x28
+00011b2e: #12582396 := mem[RSP, el]:u64
+00011b32: RSP := RSP + 8
+00011b35: call #12582396 with noreturn
+
+000195a3: sub sub_180001122(sub_180001122_result)
+00019634: sub_180001122_result :: out u32 = low:32[RAX]
+
+00011851:
+0001185f: call @sub_180002790 with noreturn
+
+000195a4: sub sub_180001127(sub_180001127_result)
+00019635: sub_180001127_result :: out u32 = low:32[RAX]
+
+00011861:
+00011864: goto %00011862
+
+00011862:
+00011881: RSP := RSP - 0x28
+000118a9: RSP := RSP - 8
+000118ae: mem := mem with [RSP, el]:u64 <- 0x18000196D
+000118b0: call @sub_18000100f with return %00012077
+
+00012077:
+00012091: mem := mem with [RAX, el]:u64 <- mem[RAX, el]:u64 | 0x24
+000120b6: RSP := RSP - 8
+000120bb: mem := mem with [RSP, el]:u64 <- 0x180001976
+000120bd: call @sub_18000101e with return %000120bf
+
+000120bf:
+000120d9: mem := mem with [RAX, el]:u64 <- mem[RAX, el]:u64 | 2
+00012114: RSP := RSP + 0x28
+00012140: #12582357 := mem[RSP, el]:u64
+00012144: RSP := RSP + 8
+00012147: call #12582357 with noreturn
+
+000195a5: sub sub_18000112c(sub_18000112c_result)
+00019636: sub_18000112c_result :: out u32 = low:32[RAX]
+
+0000f257:
+0000f266: goto %0000f264
+
+0000f264:
+0000f277: mem := mem with [0x180008210, el]:u32 <- 0
+0000f29a: #12582692 := mem[RSP, el]:u64
+0000f29e: RSP := RSP + 8
+0000f2a1: call #12582692 with noreturn
+
+000195a6: sub sub_18000113b(sub_18000113b_result)
+00019637: sub_18000113b_result :: out u32 = low:32[RAX]
+
+0000fbe0:
+0000fbe3: goto %0000fbe1
+
+0000fbe1:
+0000fc00: RSP := RSP - 0x28
+0000fc27: RSP := RSP - 8
+0000fc2c: mem := mem with [RSP, el]:u64 <- 0x180001AA1
+0000fc2e: call @sub_180001087 with return %0000fc30
+
+0000fc30:
+0000fc40: #12582610 := low:32[RAX]
+0000fc56: ZF := 0 = #12582610
+0000fc5d: when ZF goto %0000fc5a
+000195a9: goto %000123cf
+
+0000fc5a:
+0000fc6a: RSP := RSP - 8
+0000fc6f: mem := mem with [RSP, el]:u64 <- 0x180001AB1
+0000fc71: call @sub_1800010c3 with return %000122b3
+
+000122b3:
+000122b9: RCX := pad:64[low:32[RAX]]
+000122c4: RSP := RSP - 8
+000122c9: mem := mem with [RSP, el]:u64 <- 0x180001AB8
+000122cb: call @sub_18000275a with return %000122cd
+
+000122cd:
+000122dd: #12582350 := low:32[RAX]
+000122f3: ZF := 0 = #12582350
+000122fa: when ZF goto %000122f7
+000195a8: goto %000123ab
+
+000122f7:
+00012306: RSP := RSP - 8
+0001230b: mem := mem with [RSP, el]:u64 <- 0x180001AC5
+0001230d: call @sub_180002760 with return %0001230f
+
+000123ab:
+000123b7: RAX := 63:8[RAX].0
+000123cd: goto %00012317
+
+000123cf:
+000123d8: RSP := RSP - 8
+000123dd: mem := mem with [RSP, el]:u64 <- 0x180001AAA
+000123df: call @sub_180001145 with return %000123e1
+
+000123e1:
+000123e3: goto %0001230f
+
+0001230f:
+00012315: RAX := high:56[RAX].1
+000195a7: goto %00012317
+
+00012317:
+00012336: RSP := RSP + 0x28
+00012362: #12582345 := mem[RSP, el]:u64
+00012366: RSP := RSP + 8
+00012369: call #12582345 with noreturn
+
+000195aa: sub sub_180001140(sub_180001140_result)
+00019638: sub_180001140_result :: out u32 = low:32[RAX]
+
+0000d564:
+0000d56a: goto %0000d568
+
+0000d568:
+0000d577: #12582870 := RBX
+0000d57b: RSP := RSP - 8
+0000d581: mem := mem with [RSP, el]:u64 <- #12582870
+0000d59f: RSP := RSP - 0x20
+0000d5c5: RBX := high:56[RBX].low:8[RCX]
+0000d5d1: RSP := RSP - 8
+0000d5d6: mem := mem with [RSP, el]:u64 <- 0x180001DF1
+0000d5d8: call @sub_180001087 with return %00014529
+
+00014529:
+00014533: RDX := 0
+00014557: #12582190 := low:32[RAX]
+0001456d: ZF := 0 = #12582190
+00014574: when ZF goto %00014571
+000195ad: goto %0001460b
+
+0001460b:
+0001461b: #12582184 := low:8[RBX]
+00014631: ZF := 0 = #12582184
+00014637: when ~ZF goto %00014571
+000195ac: goto %0001463b
+
+0001463b:
+0001464a: RDX := mem[0x1800081C0, el]:u64
+0001464f: mem := mem with [0x1800081C0, el]:u64 <- 0
+000195ab: goto %00014571
+
+00014571:
+00014596: RSP := RSP + 0x20
+000145c1: RBX := mem[RSP, el]:u64
+000145c5: RSP := RSP + 8
+000145d2: #12582185 := mem[RSP, el]:u64
+000145d6: RSP := RSP + 8
+000145d9: call #12582185 with noreturn
+
+000195ae: sub sub_180001145(sub_180001145_result)
+00019639: sub_180001145_result :: out u32 = low:32[RAX]
+
+000117ed:
+000117fb: goto %0000e3ff
+
+0000e3ff:
+0000e409: mem := mem with [RSP + 0x10, el]:u64 <- RBX
+0000e415: mem := mem with [RSP + 0x18, el]:u64 <- RSI
+0000e423: #12582770 := RDI
+0000e427: RSP := RSP - 8
+0000e42d: mem := mem with [RSP, el]:u64 <- #12582770
+0000e44b: RSP := RSP - 0x10
+0000e4ac: RAX := pad:64[unknown[bits]:u32]
+0000e4af: RBX := pad:64[unknown[bits]:u32]
+0000e4b2: RCX := pad:64[unknown[bits]:u32]
+0000e4b5: RDX := pad:64[unknown[bits]:u32]
+0000e4bd: R8 := pad:64[low:32[RCX]]
+0000e4c9: R11 := 0
+0000e4e3: R10 := pad:64[low:32[RDX]]
+0000e4f5: R8 := pad:64[low:32[R8] ^ 0x6C65746E]
+0000e51d: R10 := pad:64[low:32[R10] ^ 0x49656E69]
+0000e53b: R9 := pad:64[low:32[RBX]]
+0000e543: RSI := pad:64[low:32[RAX]]
+0000e54f: RCX := 0
+0000e569: RAX := 1
+0000e57d: R10 := pad:64[low:32[R10] | low:32[R8]]
+0000e59c: RAX := pad:64[unknown[bits]:u32]
+0000e59f: RBX := pad:64[unknown[bits]:u32]
+0000e5a2: RCX := pad:64[unknown[bits]:u32]
+0000e5a5: RDX := pad:64[unknown[bits]:u32]
+0000e5b7: R9 := pad:64[low:32[R9] ^ 0x756E6547]
+0000e5d9: mem := mem with [RSP, el]:u32 <- low:32[RAX]
+0000e5ed: R10 := pad:64[low:32[R10] | low:32[R9]]
+0000e603: ZF := 0 = low:32[R10]
+0000e60f: mem := mem with [RSP + 4, el]:u32 <- low:32[RBX]
+0000e617: RDI := pad:64[low:32[RCX]]
+0000e623: mem := mem with [RSP + 8, el]:u32 <- low:32[RCX]
+0000e62f: mem := mem with [RSP + 0xC, el]:u32 <- low:32[RDX]
+0000e636: when ~ZF goto %0000e633
+000195c0: goto %0000ed25
+
+0000ed25:
+0000ed35: mem := mem with [0x180008048, el]:u64 <- 0xFFFFFFFFFFFFFFFF
+0000ed5d: RAX := pad:64[low:32[RAX] & 0xFFF3FF0]
+0000ed7b: mem := mem with [0x180008040, el]:u64 <- 0x8000
+0000ed93: #12582734 := low:32[RAX] - 0x106C0
+0000edaf: ZF := 0 = #12582734
+0000edb6: when ZF goto %0000edb3
+000195bf: goto %0000edf7
+
+0000edf7:
+0000ee0d: #12582731 := low:32[RAX] - 0x20660
+0000ee29: ZF := 0 = #12582731
+0000ee2f: when ZF goto %0000edb3
+000195be: goto %0000ee33
+
+0000ee33:
+0000ee49: #12582729 := low:32[RAX] - 0x20670
+0000ee65: ZF := 0 = #12582729
+0000ee6b: when ZF goto %0000edb3
+000195bd: goto %0000ee6f
+
+0000ee6f:
+0000ee8e: RAX := pad:64[low:32[RAX] - 0x30650]
+0000eec5: #12582724 := low:32[RAX] - 0x20
+0000eec9: CF := low:32[RAX] < 0x20
+0000eee1: ZF := 0 = #12582724
+0000eee9: when ~(CF | ZF) goto %0000e633
+000195bc: goto %0000eeed
+
+0000eeed:
+0000eef1: RCX := 0x100010001
+0000ef01: #12582722 := low:6[RAX]
+0000ef06: CF := low:1[0x100010001 >> #12582722]
+0000ef1b: when ~CF goto %0000e633
+000195bb: goto %0000edb3
+
+0000e633:
+0000e63f: R8 := pad:64[mem[0x180008214, el]:u32]
+000195ba: goto %0000e641
+
+0000edb3:
+0000edbf: R8 := pad:64[mem[0x180008214, el]:u32]
+0000edd1: R8 := pad:64[low:32[R8] | 1]
+0000edf1: mem := mem with [0x180008214, el]:u32 <- low:32[R8]
+0000edf5: goto %0000e641
+
+0000e641:
+0000e645: RAX := 7
+0000e64d: R9 := 2
+0000e66a: #12582761 := low:32[RSI] - 7
+0000e676: OF := high:1[(low:32[RSI] ^ 7) & (low:32[RSI] ^ #12582761)]
+0000e685: SF := high:1[#12582761]
+0000e696: when (SF | OF) & ~(SF & OF) goto %0000e690
+000195b9: goto %0000ec65
+
+0000ec65:
+0000ec6f: RCX := 0
+0000ec8a: RAX := pad:64[unknown[bits]:u32]
+0000ec8d: RBX := pad:64[unknown[bits]:u32]
+0000ec90: RCX := pad:64[unknown[bits]:u32]
+0000ec93: RDX := pad:64[unknown[bits]:u32]
+0000ec9f: mem := mem with [RSP, el]:u32 <- low:32[RAX]
+0000eca7: R11 := pad:64[low:32[RBX]]
+0000ecb3: mem := mem with [RSP + 4, el]:u32 <- low:32[RBX]
+0000ecbf: mem := mem with [RSP + 8, el]:u32 <- low:32[RCX]
+0000eccb: mem := mem with [RSP + 0xC, el]:u32 <- low:32[RDX]
+0000ecd8: CF := low:1[RBX >> 9]
+0000eced: when ~CF goto %0000e690
+000195b8: goto %0000ecf1
+
+0000ecf1:
+0000ed03: R8 := pad:64[low:32[R8] | 2]
+0000ed23: mem := mem with [0x180008214, el]:u32 <- low:32[R8]
+000195b7: goto %0000e690
+
+0000e690:
+0000e69f: mem := mem with [0x180008038, el]:u32 <- 1
+0000e6a9: mem := mem with [0x18000803C, el]:u32 <- 2
+0000e6b6: CF := low:1[RDI >> 0x14]
+0000e6cc: when ~CF goto %0000e6c9
+000195b6: goto %0000e937
+
+0000e937:
+0000e93f: mem := mem with [0x180008038, el]:u32 <- 2
+0000e945: RBX := 6
+0000e94f: mem := mem with [0x18000803C, el]:u32 <- 6
+0000e95c: CF := low:1[RDI >> 0x1B]
+0000e971: when ~CF goto %0000e6c9
+000195b5: goto %0000e975
+
+0000e975:
+0000e980: CF := low:1[RDI >> 0x1C]
+0000e995: when ~CF goto %0000e6c9
+000195b4: goto %0000e999
+
+0000e999:
+0000e9a3: RCX := 0
+0000e9bc: RAX := pad:64[unknown[bits]:u32]
+0000e9bf: RDX := pad:64[unknown[bits]:u32]
+0000e9d8: RDX := RDX << 0x20
+0000ea03: RDX := RDX | RAX
+0000ea25: mem := mem with [RSP + 0x20, el]:u64 <- RDX
+0000ea2f: RAX := mem[RSP + 0x20, el]:u64
+0000ea45: RAX := 63:8[RAX].low:8[RAX] & 6
+0000ea78: #12582750 := low:8[RAX] - 6
+0000ea97: ZF := 0 = #12582750
+0000ea9d: when ~ZF goto %0000e6c9
+000195b3: goto %0000eaa1
+
+0000eaa1:
+0000eaa7: RAX := pad:64[mem[0x18000803C, el]:u32]
+0000eab9: RAX := pad:64[low:32[RAX] | 8]
+0000ead7: mem := mem with [0x180008038, el]:u32 <- 3
+0000eae1: mem := mem with [0x18000803C, el]:u32 <- low:32[RAX]
+0000eaf3: #12582747 := low:8[R11] & 0x20
+0000eb09: ZF := 0 = #12582747
+0000eb0f: when ZF goto %0000e6c9
+000195b2: goto %0000eb13
+
+0000eb13:
+0000eb23: RAX := pad:64[low:32[RAX] | 0x20]
+0000eb41: mem := mem with [0x180008038, el]:u32 <- 5
+0000eb4b: mem := mem with [0x18000803C, el]:u32 <- low:32[RAX]
+0000eb51: RAX := 0xD0030000
+0000eb65: R11 := pad:64[low:32[R11] & 0xD0030000]
+0000eb98: #12582743 := low:32[R11] - 0xD0030000
+0000ebb7: ZF := 0 = #12582743
+0000ebbd: when ~ZF goto %0000e6c9
+000195b1: goto %0000ebc1
+
+0000ebc1:
+0000ebc9: RAX := mem[RSP + 0x20, el]:u64
+0000ebdd: RAX := 63:8[RAX].low:8[RAX] & 0xE0
+0000ec0b: #12582740 := low:8[RAX] - 0xE0
+0000ec27: ZF := 0 = #12582740
+0000ec2d: when ~ZF goto %0000e6c9
+000195b0: goto %0000ec31
+
+0000ec31:
+0000ec43: mem :=
+          mem with [0x18000803C, el]:u32 <- mem[0x18000803C, el]:u32 | 0x40
+0000ec63: mem := mem with [0x180008038, el]:u32 <- 6
+000195af: goto %0000e6c9
+
+0000e6c9:
+0000e6d7: RBX := mem[RSP + 0x28, el]:u64
+0000e6e3: RAX := 0
+0000e6ff: RSI := mem[RSP + 0x30, el]:u64
+0000e720: RSP := RSP + 0x10
+0000e74b: RDI := mem[RSP, el]:u64
+0000e74f: RSP := RSP + 8
+0000e75c: #12582756 := mem[RSP, el]:u64
+0000e760: RSP := RSP + 8
+0000e763: call #12582756 with noreturn
+
+000195c1: sub sub_18000114a(sub_18000114a_result)
+0001963a: sub_18000114a_result :: out u32 = low:32[RAX]
+
+0000f17d:
+0000f18c: goto %0000f18a
+
+0000f18a:
+0000f197: mem := mem with [RSP + 8, el]:u64 <- RBX
+0000f1a5: #12582700 := RBP
+0000f1a9: RSP := RSP - 8
+0000f1af: mem := mem with [RSP, el]:u64 <- #12582700
+0000f1b7: RBP := RSP - 0x4C0
+0000f1d5: RSP := RSP - 0x5C0
+0000f1f9: RBX := pad:64[low:32[RCX]]
+0000f1ff: RCX := 0x17
+0000f20d: #12582696 := mem[0x18000A068, el]:u64
+0000f211: RSP := RSP - 8
+0000f216: mem := mem with [RSP, el]:u64 <- 0x180001F0A
+0000f219: call #12582696 with return %0000f21b
+
+0000f21b:
+0000f22b: #12582695 := low:32[RAX]
+0000f241: ZF := 0 = #12582695
+0000f248: when ZF goto %0000f245
+000195c5: goto %00012aeb
+
+00012aeb:
+00012af1: RCX := pad:64[low:32[RBX]]
+00012af5: call @interrupt:#41 with noreturn
+
+0000f245:
+0000f24f: RCX := 3
+0000f25b: RSP := RSP - 8
+0000f260: mem := mem with [RSP, el]:u64 <- 0x180001F1C
+0000f262: call @sub_18000112c with return %000123e5
+
+000123e5:
+000123ef: RDX := 0
+00012409: RCX := RBP - 0x10
+0001240f: R8 := 0x4D0
+0001241a: RSP := RSP - 8
+0001241f: mem := mem with [RSP, el]:u64 <- 0x180001F2D
+00012421: call @sub_180002742 with return %00012423
+
+00012423:
+00012429: RCX := RBP - 0x10
+00012437: #12582344 := mem[0x18000A030, el]:u64
+0001243b: RSP := RSP - 8
+00012440: mem := mem with [RSP, el]:u64 <- 0x180001F37
+00012443: call #12582344 with return %00012445
+
+00012445:
+0001244d: RBX := mem[RBP + 0xE8, el]:u64
+00012455: RDX := RBP + 0x4D8
+0001245d: RCX := RBX
+00012469: R8 := 0
+00012489: #12582343 := mem[0x18000A038, el]:u64
+0001248d: RSP := RSP - 8
+00012492: mem := mem with [RSP, el]:u64 <- 0x180001F51
+00012495: call #12582343 with return %00012497
+
+00012497:
+000124a7: #12582342 := RAX
+000124bd: ZF := 0 = #12582342
+000124c4: when ZF goto %000124c1
+000195c4: goto %00012a2b
+
+00012a2b:
+00012a41: mem := mem with [RSP + 0x38, el]:u64 <- 0
+00012a63: RCX := RBP + 0x4E0
+00012a6d: RDX := mem[RBP + 0x4D8, el]:u64
+00012a75: R9 := RAX
+00012a81: mem := mem with [RSP + 0x30, el]:u64 <- RCX
+00012a89: R8 := RBX
+00012a91: RCX := RBP + 0x4E8
+00012a9d: mem := mem with [RSP + 0x28, el]:u64 <- RCX
+00012aa5: RCX := RBP - 0x10
+00012ab1: mem := mem with [RSP + 0x20, el]:u64 <- RCX
+00012abd: RCX := 0
+00012add: #12582313 := mem[0x18000A040, el]:u64
+00012ae1: RSP := RSP - 8
+00012ae6: mem := mem with [RSP, el]:u64 <- 0x180001F92
+00012ae9: call #12582313 with return %000124c1
+
+000124c1:
+000124cf: RAX := mem[RBP + 0x4C8, el]:u64
+000124d7: RCX := RSP + 0x50
+000124e3: mem := mem with [RBP + 0xE8, el]:u64 <- RAX
+000124ef: RDX := 0
+00012509: RAX := RBP + 0x4C8
+0001250f: R8 := 0x98
+00012530: RAX := RAX + 8
+0001255b: mem := mem with [RBP + 0x88, el]:u64 <- RAX
+00012566: RSP := RSP - 8
+0001256b: mem := mem with [RSP, el]:u64 <- 0x180001FC4
+0001256d: call @sub_180002742 with return %0001256f
+
+0001256f:
+00012577: RAX := mem[RBP + 0x4C8, el]:u64
+00012583: mem := mem with [RSP + 0x60, el]:u64 <- RAX
+0001258d: mem := mem with [RSP + 0x50, el]:u32 <- 0x40000015
+00012597: mem := mem with [RSP + 0x54, el]:u32 <- 1
+000125a5: #12582337 := mem[0x18000A048, el]:u64
+000125a9: RSP := RSP - 8
+000125ae: mem := mem with [RSP, el]:u64 <- 0x180001FE6
+000125b1: call #12582337 with return %000125b3
+
+000125b3:
+000125c9: #12582336 := low:32[RAX] - 1
+000125e5: ZF := 0 = #12582336
+000125ed: RAX := RSP + 0x50
+000125f9: mem := mem with [RSP + 0x40, el]:u64 <- RAX
+00012601: RAX := RBP - 0x10
+0001260b: RBX := 63:8[RBX].pad:8[ZF]
+00012617: mem := mem with [RSP + 0x48, el]:u64 <- RAX
+00012623: RCX := 0
+00012643: #12582334 := mem[0x18000A058, el]:u64
+00012647: RSP := RSP - 8
+0001264c: mem := mem with [RSP, el]:u64 <- 0x180002007
+0001264f: call #12582334 with return %00012651
+
+00012651:
+00012657: RCX := RSP + 0x40
+00012665: #12582333 := mem[0x18000A050, el]:u64
+00012669: RSP := RSP - 8
+0001266e: mem := mem with [RSP, el]:u64 <- 0x180002012
+00012671: call #12582333 with return %00012673
+
+00012673:
+00012683: #12582332 := low:32[RAX]
+00012699: ZF := 0 = #12582332
+000126a0: when ~ZF goto %0001269d
+000195c3: goto %000129e1
+
+000129e1:
+000129f1: #12582316 := low:8[RBX]
+00012a07: ZF := 0 = #12582316
+00012a0d: when ~ZF goto %0001269d
+000195c2: goto %00012a11
+
+00012a11:
+00012a17: RCX := pad:64[low:32[RAX + 3]]
+00012a22: RSP := RSP - 8
+00012a27: mem := mem with [RSP, el]:u64 <- 0x180002022
+00012a29: call @sub_18000112c with return %0001269d
+
+0001269d:
+000126ab: RBX := mem[RSP + 0x5D0, el]:u64
+000126cc: RSP := RSP + 0x5C0
+000126f7: RBP := mem[RSP, el]:u64
+000126fb: RSP := RSP + 8
+00012708: #12582327 := mem[RSP, el]:u64
+0001270c: RSP := RSP + 8
+0001270f: call #12582327 with noreturn
+
+000195c6: sub sub_180001154(sub_180001154_result)
+0001963b: sub_180001154_result :: out u32 = low:32[RAX]
+
+00012afb:
+00012afd: goto %00010cd4
+
+00010cd4:
+00010cf0: RSP := RSP - 0x28
+00010d17: RSP := RSP - 8
+00010d1c: mem := mem with [RSP, el]:u64 <- 0x180001A59
+00010d1e: call @sub_180001087 with return %00010d20
+
+00010d20:
+00010d30: #12582492 := low:32[RAX]
+00010d46: ZF := 0 = #12582492
+00010d4d: when ZF goto %00010d4a
+000195ca: goto %00010e0c
+
+00010e0c:
+00010e14: RAX := mem[GS_BASE + 0x30, el]:u64
+00010e1e: RCX := mem[RAX + 8, el]:u64
+00010e23: goto %00010e21
+
+00010e21:
+00010e2e: RAX := 0
+00010e65: call @intrinsic:x86:lock with return %00010e68
+
+00010e68:
+00010e69: #12582486 := mem[0x1800081C0, el]:u64
+00010e6e: #12582485 := -#12582486
+00010e8d: ZF := 0 = #12582485
+00010ea1: goto %00010e99
+
+00010e99:
+00010e9b: when 0 = #12582486 goto %00010e93
+00010e9c: goto %00010e97
+
+00010e97:
+00010e98: RAX := #12582486
+00010e9e: goto %00010e9a
+
+00010e93:
+00010e94: mem := mem with [0x1800081C0, el]:u64 <- RCX
+00010e9d: goto %00010e9a
+
+00010e9a:
+00010ea0: call @intrinsic:x86:unlock with return %00010eab
+
+00010eab:
+00010eb0: when ~ZF goto %00010ead
+000195c9: goto %00010d4a
+
+00010d4a:
+00010d5c: RAX := 63:8[RAX].0
+00010d62: ZF := 1
+000195c8: goto %00010d70
+
+00010ead:
+00010ece: #12582483 := RCX - RAX
+00010eed: ZF := 0 = #12582483
+00010ef3: when ZF goto %00010dc4
+000195c7: goto %00010e21
+
+00010dc4:
+00010dca: RAX := high:56[RAX].1
+00010dce: goto %00010d70
+
+00010d70:
+00010d8f: RSP := RSP + 0x28
+00010dbb: #12582487 := mem[RSP, el]:u64
+00010dbf: RSP := RSP + 8
+00010dc2: call #12582487 with noreturn
+
+000195cb: sub sub_180001163(sub_180001163_result)
+0001963c: sub_180001163_result :: out u32 = low:32[RAX]
+
+00012b07:
+00012b09: goto %00011c49
+
+00011c49:
+00011c53: mem := mem with [RSP + 8, el]:u64 <- RBX
+00011c5f: mem := mem with [RSP + 0x10, el]:u64 <- RBP
+00011c6b: mem := mem with [RSP + 0x18, el]:u64 <- RSI
+00011c79: #12582388 := RDI
+00011c7d: RSP := RSP - 8
+00011c83: mem := mem with [RSP, el]:u64 <- #12582388
+00011ca1: RSP := RSP - 0x20
+00011cc5: RDI := R9
+00011ccd: RSI := R8
+00011cd5: RBX := pad:64[low:32[RDX]]
+00011cdd: RBP := RCX
+00011ce8: RSP := RSP - 8
+00011ced: mem := mem with [RSP, el]:u64 <- 0x180001B6C
+00011cef: call @sub_180001087 with return %00011cf1
+
+00011cf1:
+00011d01: #12582384 := low:32[RAX]
+00011d17: ZF := 0 = #12582384
+00011d1e: when ~ZF goto %00011d1b
+000195cd: goto %00011fa5
+
+00011fa5:
+00011fbb: #12582365 := low:32[RBX] - 1
+00011fd7: ZF := 0 = #12582365
+00011fdd: when ~ZF goto %00011d1b
+000195cc: goto %00011fe1
+
+00011fe1:
+00011fe7: R8 := RSI
+00011ff3: RDX := 0
+0001200d: RCX := RBP
+00012015: RAX := RDI
+00012023: #12582363 := mem[0x18000B020, el]:u64
+00012027: RSP := RSP - 8
+0001202c: mem := mem with [RSP, el]:u64 <- 0x180001B86
+0001202f: call #12582363 with return %00011d1b
+
+00011d1b:
+00011d29: RDX := mem[RSP + 0x58, el]:u64
+00011d33: RCX := pad:64[mem[RSP + 0x50, el]:u32]
+00011d3d: RBX := mem[RSP + 0x30, el]:u64
+00011d47: RBP := mem[RSP + 0x38, el]:u64
+00011d51: RSI := mem[RSP + 0x40, el]:u64
+00011d72: RSP := RSP + 0x20
+00011d9d: RDI := mem[RSP, el]:u64
+00011da1: RSP := RSP + 8
+00011da5: goto %00004def
+
+00004def:
+00004df3: call mem[0x18000A180, el]:u64 with noreturn
+
+000195ce: sub sub_180001168(sub_180001168_result)
+0001963d: sub_180001168_result :: out u32 = low:32[RAX]
+
+00012b0b:
+00012b0d: goto %00011749
+
+00011749:
+00011755: #12582428 := RBX
+00011759: RSP := RSP - 8
+0001175f: mem := mem with [RSP, el]:u64 <- #12582428
+0001177d: RSP := RSP - 0x20
+000117a1: RAX := pad:64[mem[0x1800081C8]]
+000117b3: #12582424 := low:32[RCX]
+000117c9: ZF := 0 = #12582424
+000117cf: RBX := 1
+000117db: RAX := pad:64[if ZF then 1 else low:32[RAX]]
+000117e5: mem := mem with [0x1800081C8] <- low:8[RAX]
+000117f1: RSP := RSP - 8
+000117f6: mem := mem with [RSP, el]:u64 <- 0x180001C3A
+000117f8: call @sub_180001145 with return %000117fd
+
+000117fd:
+00011807: RSP := RSP - 8
+0001180c: mem := mem with [RSP, el]:u64 <- 0x180001C3F
+0001180e: call @sub_18000102d with return %0001181b
+
+0001181b:
+0001182b: #12582422 := low:8[RAX]
+00011841: ZF := 0 = #12582422
+00011848: when ~ZF goto %00011845
+000195d1: goto %00012288
+
+00011845:
+00011855: RSP := RSP - 8
+0001185a: mem := mem with [RSP, el]:u64 <- 0x180001C4C
+0001185c: call @sub_180001122 with return %0001216d
+
+0001216d:
+0001217d: #12582356 := low:8[RAX]
+00012193: ZF := 0 = #12582356
+0001219a: when ~ZF goto %00012197
+000195d0: goto %00012257
+
+00012197:
+000121a5: RAX := high:56[RAX].1
+000195cf: goto %000121a7
+
+00012257:
+00012261: RCX := 0
+0001227e: RSP := RSP - 8
+00012283: mem := mem with [RSP, el]:u64 <- 0x180001C57
+00012285: call @sub_180001046 with return %00012287
+
+00012287:
+0001228a: goto %00012288
+
+00012288:
+00012297: RAX := 63:8[RAX].0
+000122ad: goto %000121a7
+
+000121a7:
+000121c6: RSP := RSP + 0x20
+000121f1: RBX := mem[RSP, el]:u64
+000121f5: RSP := RSP + 8
+00012202: #12582351 := mem[RSP, el]:u64
+00012206: RSP := RSP + 8
+00012209: call #12582351 with noreturn
+
+000195d2: sub sub_180001177(sub_180001177_result)
+0001963e: sub_180001177_result :: out u32 = low:32[RAX]
+
+00012b17:
+00012b19: goto %00011b67
+
+00011b67:
+00011b83: RSP := RSP - 0x28
+00011baa: RSP := RSP - 8
+00011baf: mem := mem with [RSP, el]:u64 <- 0x180001B35
+00011bb1: call @sub_1800010e1 with return %00011bb3
+
+00011bb3:
+00011bbd: RSP := RSP - 8
+00011bc2: mem := mem with [RSP, el]:u64 <- 0x180001B3A
+00011bc4: call @sub_180001096 with return %00011bd1
+
+00011bd1:
+00011bd7: RAX := high:56[RAX].1
+00011bf8: RSP := RSP + 0x28
+00011c24: #12582389 := mem[RSP, el]:u64
+00011c28: RSP := RSP + 8
+00011c2b: call #12582389 with noreturn
+
+000195d3: sub sub_180001181(sub_180001181_result)
+0001963f: sub_180001181_result :: out u32 = low:32[RAX]
+
+00012e03:
+00012e11: goto %00011e07
+
+00011e07:
+00011e23: RSP := RSP - 0x28
+00011e4a: RSP := RSP - 8
+00011e4f: mem := mem with [RSP, el]:u64 <- 0x180001BC9
+00011e51: call @sub_180001087 with return %00011e53
+
+00011e53:
+00011e63: #12582376 := low:32[RAX]
+00011e79: ZF := 0 = #12582376
+00011e80: when ZF goto %00011e7d
+000195d5: goto %00011f5b
+
+00011e7d:
+00011e8c: RSP := RSP - 8
+00011e91: mem := mem with [RSP, el]:u64 <- 0x180001BE2
+00011e93: call @sub_180001032 with return %00011e95
+
+00011e95:
+00011ea5: #12582374 := low:32[RAX]
+00011ebb: ZF := 0 = #12582374
+00011ec2: when ~ZF goto %00011ebf
+000195d4: goto %00011f49
+
+00011f49:
+00011f52: RSP := RSP - 8
+00011f57: mem := mem with [RSP, el]:u64 <- 0x180001BEB
+00011f59: call @sub_180002784 with return %00011ebf
+
+00011ebf:
+00011ee4: RSP := RSP + 0x28
+00011f10: #12582369 := mem[RSP, el]:u64
+00011f14: RSP := RSP + 8
+00011f17: call #12582369 with noreturn
+
+00011f5b:
+00011f5f: RCX := 0x1800081D0
+00011f80: RSP := RSP + 0x28
+00011fa3: goto %00004e0d
+
+00004e0d:
+00004e11: call mem[0x18000A1A8, el]:u64 with noreturn
+
+000195d6: sub sub_180001340(sub_180001340_result)
+00019640: sub_180001340_result :: out u32 = low:32[RAX]
+
+00012b20:
+00012b3f: RSP := RSP - 0x28
+00012b6d: #12582309 := low:32[RDX]
+00012b83: ZF := 0 = #12582309
+00012b8a: when ZF goto %00012b87
+000195e5: goto %00013f69
+
+00012b87:
+00012b9d: #12582307 := R8
+00012bb3: ZF := 0 = #12582307
+00012bbd: RCX := 63:8[RCX].pad:8[~ZF]
+00012bde: RSP := RSP + 0x28
+00012c02: call @sub_180001500 with noreturn
+
+00013f69:
+00013f85: RDX := pad:64[low:32[RDX] - 1]
+00013fa1: ZF := 0 = low:32[RDX]
+00013fa8: when ZF goto %00013fa5
+000195e4: goto %00013ff7
+
+00013fa5:
+00013fb1: RDX := R8
+00013fd2: RSP := RSP + 0x28
+00013ff5: goto %0001396f
+
+0001396f:
+00013979: mem := mem with [RSP + 8, el]:u64 <- RBX
+00013985: mem := mem with [RSP + 0x10, el]:u64 <- RSI
+00013991: mem := mem with [RSP + 0x20, el]:u64 <- RDI
+0001399f: #12582260 := R14
+000139a3: RSP := RSP - 8
+000139a9: mem := mem with [RSP, el]:u64 <- #12582260
+000139c7: RSP := RSP - 0x20
+000139eb: RSI := RDX
+000139f3: R14 := RCX
+000139ff: RCX := 0
+00013a1c: RSP := RSP - 8
+00013a21: mem := mem with [RSP, el]:u64 <- 0x1800013C6
+00013a23: call @sub_180001168 with return %00013a25
+
+00013a25:
+00013a35: #12582256 := low:8[RAX]
+00013a4b: ZF := 0 = #12582256
+00013a52: when ZF goto %00013a4f
+000195e3: goto %00013c2b
+
+00013c2b:
+00013c34: RSP := RSP - 8
+00013c39: mem := mem with [RSP, el]:u64 <- 0x1800013D3
+00013c3b: call @sub_180001154 with return %00013c3d
+
+00013c3d:
+00013c45: RBX := high:56[RBX].low:8[RAX]
+00013c51: mem := mem with [RSP + 0x40] <- low:8[RAX]
+00013c59: RDI := high:56[RDI].1
+00013c71: #12582250 := mem[0x1800081B8, el]:u32
+00013c8d: ZF := 0 = #12582250
+00013c93: when ~ZF goto %00013af5
+000195e2: goto %00013c97
+
+00013af5:
+00013af9: RCX := 7
+00013b04: RSP := RSP - 8
+00013b09: mem := mem with [RSP, el]:u64 <- 0x1800014B8
+00013b0b: call @sub_18000114a with return %00013b0d
+
+00013b0d:
+00013b11: call @interrupt:#3 with noreturn
+
+00013b13:
+00013b15: call @interrupt:#3 with noreturn
+
+00013b17:
+00013b19: call @interrupt:#3 with noreturn
+
+00013b1b:
+00013b1d: call @interrupt:#3 with noreturn
+
+00013b1f:
+00013b21: call @interrupt:#3 with noreturn
+
+00013b23:
+00013b25: call @interrupt:#3 with noreturn
+
+00013b27:
+00013b29: call @interrupt:#3 with noreturn
+
+00013b2b:
+00013b2d: call @interrupt:#3 with noreturn
+
+00013b2f:
+00013b31: call @interrupt:#3 with noreturn
+
+00013b33:
+00013b35: call @interrupt:#3 with noreturn
+
+00013b37:
+00013b39: call @interrupt:#3 with noreturn
+
+00013b3b:
+00013b3d: call @interrupt:#3 with noreturn
+
+00013b3f:
+00013b41: call @interrupt:#3 with noreturn
+
+00013b43:
+00013b45: call @interrupt:#3 with noreturn
+
+00013b47:
+00013b49: call @interrupt:#3 with noreturn
+
+00013b4b:
+00013b4d: call @interrupt:#3 with noreturn
+
+00013b4f:
+00013b51: call @interrupt:#3 with noreturn
+
+00013b53:
+00013b55: call @interrupt:#3 with noreturn
+
+00013b57:
+00013b59: call @interrupt:#3 with noreturn
+
+00013b5b:
+00013b5d: call @interrupt:#3 with noreturn
+
+00013b5f:
+00013b61: call @interrupt:#3 with noreturn
+
+00013b63:
+00013b65: call @interrupt:#3 with noreturn
+
+00013b67:
+00013b69: call @interrupt:#3 with noreturn
+
+00013b6b:
+00013b6d: call @interrupt:#3 with noreturn
+
+00013b6f:
+00013b71: call @interrupt:#3 with noreturn
+
+00013b73:
+00013b75: call @interrupt:#3 with noreturn
+
+00013b77:
+00013b79: call @interrupt:#3 with noreturn
+
+00013b7b:
+00013b7d: call @interrupt:#3 with noreturn
+
+00013b7f:
+00013b81: call @interrupt:#3 with noreturn
+
+00013b83:
+00013b85: call @interrupt:#3 with noreturn
+
+00013b87:
+00013b89: call @interrupt:#3 with noreturn
+
+00013b8b:
+00013b8d: call @interrupt:#3 with noreturn
+
+00013b8f:
+00013b91: call @interrupt:#3 with noreturn
+
+00013b93:
+00013b95: call @interrupt:#3 with noreturn
+
+00013b97:
+00013b99: call @interrupt:#3 with noreturn
+
+00013b9b:
+00013b9d: call @interrupt:#3 with noreturn
+
+00013b9f:
+00013ba1: call @interrupt:#3 with noreturn
+
+00013ba3:
+00013ba5: call @interrupt:#3 with noreturn
+
+00013ba7:
+00013ba9: call @interrupt:#3 with noreturn
+
+00013bab:
+00013bad: call @interrupt:#3 with noreturn
+
+00013baf:
+00013bb1: call @interrupt:#3 with noreturn
+
+00013bb3:
+00013bb5: call @interrupt:#3 with noreturn
+
+00013bb7:
+00013bb9: call @interrupt:#3 with noreturn
+
+00013bbb:
+00013bbd: call @interrupt:#3 with noreturn
+
+00013bbf:
+00013bc1: call @interrupt:#3 with noreturn
+
+00013bc3:
+00013bc5: call @interrupt:#3 with noreturn
+
+00013bc7:
+00013bc9: call @interrupt:#3 with noreturn
+
+00013bcb:
+00013bcd: call @interrupt:#3 with noreturn
+
+00013bcf:
+00013bd1: call @interrupt:#3 with noreturn
+
+00013bd3:
+00013bd5: call @interrupt:#3 with noreturn
+
+00013bd7:
+00013bd9: call @interrupt:#3 with noreturn
+
+00013bdb:
+00013bdd: call @interrupt:#3 with noreturn
+
+00013bdf:
+00013be1: call @interrupt:#3 with noreturn
+
+00013be3:
+00013be5: call @interrupt:#3 with noreturn
+
+00013be7:
+00013be9: call @interrupt:#3 with noreturn
+
+00013beb:
+00013bed: call @interrupt:#3 with noreturn
+
+00013bef:
+00013bf1: call @interrupt:#3 with noreturn
+
+00013bf3:
+00013bf5: call @interrupt:#3 with noreturn
+
+00013bf7:
+00013bf9: call @interrupt:#3 with noreturn
+
+00013bfb:
+00013bfd: call @interrupt:#3 with noreturn
+
+00013bff:
+00013c01: call @interrupt:#3 with noreturn
+
+00013c03:
+00013c05: call @interrupt:#3 with noreturn
+
+00013c07:
+00013c09: call @interrupt:#3 with noreturn
+
+00013c0b:
+00013c0d: call @interrupt:#3 with noreturn
+
+00013c0f:
+00013c11: call @interrupt:#3 with noreturn
+
+00013c13:
+00013c15: call @interrupt:#3 with noreturn
+
+00013c17:
+00013c19: call @interrupt:#3 with noreturn
+
+00013c1b:
+00013c1d: call @interrupt:#3 with noreturn
+
+00013c1f:
+00013c21: call @interrupt:#3 with noreturn
+
+00013c23:
+00013c25: call @interrupt:#3 with noreturn
+
+00013c27:
+00013c29: call @interrupt:#3 with noreturn
+
+00013c97:
+00013c9d: mem := mem with [0x1800081B8, el]:u32 <- 1
+00013ca8: RSP := RSP - 8
+00013cad: mem := mem with [RSP, el]:u64 <- 0x1800013F8
+00013caf: call @sub_180001019 with return %00013cb1
+
+00013cb1:
+00013cc1: #12582248 := low:8[RAX]
+00013cd7: ZF := 0 = #12582248
+00013cde: when ZF goto %00013cdb
+000195e0: goto %00013e5d
+
+00013e5d:
+00013e66: RSP := RSP - 8
+00013e6b: mem := mem with [RSP, el]:u64 <- 0x180001401
+00013e6d: call @sub_1800010cd with return %00013e6f
+
+00013e6f:
+00013e78: RSP := RSP - 8
+00013e7d: mem := mem with [RSP, el]:u64 <- 0x180001406
+00013e7f: call @sub_180001041 with return %00013e81
+
+00013e81:
+00013e8a: RSP := RSP - 8
+00013e8f: mem := mem with [RSP, el]:u64 <- 0x18000140B
+00013e91: call @sub_180001127 with return %00013e93
+
+00013e93:
+00013e97: RDX := 0x180006330
+00013e9d: RCX := 0x180006220
+00013ea8: RSP := RSP - 8
+00013ead: mem := mem with [RSP, el]:u64 <- 0x18000141E
+00013eaf: call @sub_18000274e with return %00013eb1
+
+00013eb1:
+00013ec1: #12582237 := low:32[RAX]
+00013ed7: ZF := 0 = #12582237
+00013edd: when ~ZF goto %00013cdb
+000195df: goto %00013ee1
+
+00013ee1:
+00013eea: RSP := RSP - 8
+00013eef: mem := mem with [RSP, el]:u64 <- 0x180001427
+00013ef1: call @sub_18000113b with return %00013ef3
+
+00013ef3:
+00013f03: #12582235 := low:8[RAX]
+00013f19: ZF := 0 = #12582235
+00013f1f: when ZF goto %00013cdb
+000195de: goto %00013f23
+
+00013f23:
+00013f27: RDX := 0x180006110
+00013f2d: RCX := 0x180006000
+00013f38: RSP := RSP - 8
+00013f3d: mem := mem with [RSP, el]:u64 <- 0x18000143E
+00013f3f: call @sub_180002748 with return %00013f41
+
+00013f41:
+00013f47: mem := mem with [0x1800081B8, el]:u32 <- 2
+00013f55: RDI := 63:8[RDI].0
+000195dd: goto %00013cdb
+
+00013cdb:
+00013ce9: RCX := high:56[RCX].low:8[RBX]
+00013cf4: RSP := RSP - 8
+00013cf9: mem := mem with [RSP, el]:u64 <- 0x180001452
+00013cfb: call @sub_180001140 with return %00013cfd
+
+00013cfd:
+00013d0d: #12582246 := low:8[RDI]
+00013d23: ZF := 0 = #12582246
+00013d29: when ~ZF goto %00013a4f
+000195dc: goto %00013d2d
+
+00013a4f:
+00013a5f: RAX := 0
+000195db: goto %00013a73
+
+00013d2d:
+00013d36: RSP := RSP - 8
+00013d3b: mem := mem with [RSP, el]:u64 <- 0x18000145C
+00013d3d: call @sub_180001109 with return %00013d3f
+
+00013d3f:
+00013d45: RBX := RAX
+00013d63: #12582244 := mem[RAX, el]:u64
+00013d83: ZF := 0 = #12582244
+00013d8a: when ZF goto %00013d87
+000195da: goto %00013dd1
+
+00013dd1:
+00013dd7: RCX := RAX
+00013de2: RSP := RSP - 8
+00013de7: mem := mem with [RSP, el]:u64 <- 0x18000146D
+00013de9: call @sub_18000108c with return %00013deb
+
+00013deb:
+00013dfb: #12582240 := low:8[RAX]
+00013e11: ZF := 0 = #12582240
+00013e17: when ZF goto %00013d87
+000195d9: goto %00013e1b
+
+00013e1b:
+00013e21: R8 := RSI
+00013e27: RDX := 2
+00013e2f: RCX := R14
+00013e39: RAX := mem[RBX, el]:u64
+00013e41: R9 := mem[0x18000B020, el]:u64
+00013e4f: #12582238 := R9
+00013e53: RSP := RSP - 8
+00013e58: mem := mem with [RSP, el]:u64 <- 0x180001489
+00013e5b: call #12582238 with return %00013d87
+
+00013d87:
+00013dab: mem :=
+          mem with [0x180008170, el]:u32 <- mem[0x180008170, el]:u32 + 1
+00013dcb: RAX := 1
+00013dcf: goto %00013a73
+
+00013a73:
+00013a7b: RBX := mem[RSP + 0x30, el]:u64
+00013a85: RSI := mem[RSP + 0x38, el]:u64
+00013a8f: RDI := mem[RSP + 0x48, el]:u64
+00013ab0: RSP := RSP + 0x20
+00013adb: R14 := mem[RSP, el]:u64
+00013adf: RSP := RSP + 8
+00013aec: #12582251 := mem[RSP, el]:u64
+00013af0: RSP := RSP + 8
+00013af3: call #12582251 with noreturn
+
+00013ff7:
+00014013: RDX := pad:64[low:32[RDX] - 1]
+0001402f: ZF := 0 = low:32[RDX]
+00014036: when ZF goto %00014033
+000195d8: goto %000140a7
+
+00014033:
+00014042: RSP := RSP - 8
+00014047: mem := mem with [RSP, el]:u64 <- 0x18000136D
+00014049: call @sub_18000111d with return %0001404b
+
+000140a7:
+000140bd: #12582220 := low:32[RDX] - 1
+000140d9: ZF := 0 = #12582220
+000140e0: when ZF goto %000140dd
+000195d7: goto %000140f9
+
+000140dd:
+000140ec: RSP := RSP - 8
+000140f1: mem := mem with [RSP, el]:u64 <- 0x180001366
+000140f3: call @sub_180001177 with return %000140f5
+
+000140f5:
+000140f7: goto %0001404b
+
+0001404b:
+00014051: RAX := pad:64[low:8[RAX]]
+00014072: RSP := RSP + 0x28
+0001409e: #12582221 := mem[RSP, el]:u64
+000140a2: RSP := RSP + 8
+000140a5: call #12582221 with noreturn
+
+000140f9:
+000140fd: RAX := 1
+0001411e: RSP := RSP + 0x28
+0001414a: #12582215 := mem[RSP, el]:u64
+0001414e: RSP := RSP + 8
+00014151: call #12582215 with noreturn
+
+000195e6: sub sub_180001500(sub_180001500_result)
+00019641: sub_180001500_result :: out u32 = low:32[RAX]
+
+00012c00:
+00012c0d: mem := mem with [RSP + 8, el]:u64 <- RBX
+00012c1b: #12582302 := RDI
+00012c1f: RSP := RSP - 8
+00012c25: mem := mem with [RSP, el]:u64 <- #12582302
+00012c43: RSP := RSP - 0x30
+00012c69: RDI := high:56[RDI].low:8[RCX]
+00012c71: RAX := pad:64[mem[0x180008170, el]:u32]
+00012c83: #12582298 := low:32[RAX]
+00012c95: SF := high:1[#12582298]
+00012c99: ZF := 0 = #12582298
+00012ca8: when ~(ZF | SF) goto %00012ca1
+000195ea: goto %00013901
+
+00012ca1:
+00012cc5: RAX := pad:64[low:32[RAX] - 1]
+00012ce7: mem := mem with [0x180008170, el]:u32 <- low:32[RAX]
+00012cf2: RSP := RSP - 8
+00012cf7: mem := mem with [RSP, el]:u64 <- 0x180001531
+00012cf9: call @sub_180001154 with return %00012cfb
+
+00012cfb:
+00012d03: RBX := high:56[RBX].low:8[RAX]
+00012d0f: mem := mem with [RSP + 0x20] <- low:8[RAX]
+00012d27: #12582294 := mem[0x1800081B8, el]:u32 - 2
+00012d43: ZF := 0 = #12582294
+00012d4a: when ~ZF goto %00012d47
+000195e9: goto %00012dfd
+
+00012d47:
+00012d51: RCX := 7
+00012d5c: RSP := RSP - 8
+00012d61: mem := mem with [RSP, el]:u64 <- 0x180001581
+00012d63: call @sub_18000114a with return %00012d65
+
+00012d65:
+00012d6b: call @interrupt:#3 with noreturn
+
+00012d6d:
+00012d6f: call @interrupt:#3 with noreturn
+
+00012d71:
+00012d73: call @interrupt:#3 with noreturn
+
+00012d75:
+00012d77: call @interrupt:#3 with noreturn
+
+00012d79:
+00012d7b: call @interrupt:#3 with noreturn
+
+00012d7d:
+00012d7f: call @interrupt:#3 with noreturn
+
+00012d81:
+00012d83: call @interrupt:#3 with noreturn
+
+00012d85:
+00012d87: call @interrupt:#3 with noreturn
+
+00012d89:
+00012d8b: call @interrupt:#3 with noreturn
+
+00012d8d:
+00012d8f: call @interrupt:#3 with noreturn
+
+00012d91:
+00012d93: call @interrupt:#3 with noreturn
+
+00012d95:
+00012d97: call @interrupt:#3 with noreturn
+
+00012d99:
+00012d9b: call @interrupt:#3 with noreturn
+
+00012d9d:
+00012d9f: call @interrupt:#3 with noreturn
+
+00012da1:
+00012da3: call @interrupt:#3 with noreturn
+
+00012da5:
+00012da7: call @interrupt:#3 with noreturn
+
+00012da9:
+00012dab: call @interrupt:#3 with noreturn
+
+00012dad:
+00012daf: call @interrupt:#3 with noreturn
+
+00012db1:
+00012db3: call @interrupt:#3 with noreturn
+
+00012db5:
+00012db7: call @interrupt:#3 with noreturn
+
+00012db9:
+00012dbb: call @interrupt:#3 with noreturn
+
+00012dbd:
+00012dbf: call @interrupt:#3 with noreturn
+
+00012dc1:
+00012dc3: call @interrupt:#3 with noreturn
+
+00012dc5:
+00012dc7: call @interrupt:#3 with noreturn
+
+00012dc9:
+00012dcb: call @interrupt:#3 with noreturn
+
+00012dcd:
+00012dcf: call @interrupt:#3 with noreturn
+
+00012dd1:
+00012dd3: call @interrupt:#3 with noreturn
+
+00012dd5:
+00012dd7: call @interrupt:#3 with noreturn
+
+00012dd9:
+00012ddb: call @interrupt:#3 with noreturn
+
+00012ddd:
+00012ddf: call @interrupt:#3 with noreturn
+
+00012de1:
+00012de3: call @interrupt:#3 with noreturn
+
+00012de5:
+00012de7: call @interrupt:#3 with noreturn
+
+00012de9:
+00012deb: call @interrupt:#3 with noreturn
+
+00012ded:
+00012def: call @interrupt:#3 with noreturn
+
+00012df1:
+00012df3: call @interrupt:#3 with noreturn
+
+00012df5:
+00012df7: call @interrupt:#3 with noreturn
+
+00012df9:
+00012dfb: call @interrupt:#3 with noreturn
+
+00012dfd:
+00012e07: RSP := RSP - 8
+00012e0c: mem := mem with [RSP, el]:u64 <- 0x180001545
+00012e0e: call @sub_180001181 with return %0001358f
+
+0001358f:
+00013598: RSP := RSP - 8
+0001359d: mem := mem with [RSP, el]:u64 <- 0x18000154A
+0001359f: call @sub_18000110e with return %000135a1
+
+000135a1:
+000135aa: RSP := RSP - 8
+000135af: mem := mem with [RSP, el]:u64 <- 0x18000154F
+000135b1: call @sub_1800010d7 with return %000135b3
+
+000135b3:
+000135c3: mem := mem with [0x1800081B8, el]:u32 <- 0
+000135e3: RCX := high:56[RCX].low:8[RBX]
+000135ee: RSP := RSP - 8
+000135f3: mem := mem with [RSP, el]:u64 <- 0x18000155D
+000135f5: call @sub_180001140 with return %000135f7
+
+000135f7:
+00013601: RDX := 0
+0001361d: RCX := high:56[RCX].low:8[RDI]
+00013629: RSP := RSP - 8
+0001362e: mem := mem with [RSP, el]:u64 <- 0x180001567
+00013630: call @sub_180001082 with return %000137c3
+
+000137c3:
+000137da: #12582270 := low:8[RAX]
+000137df: RAX := 63:8[RAX].-low:8[RAX]
+000137e3: CF := #12582270 <> 0
+0001381e: #12582268 := low:32[RBX]
+00013822: #12582267 := low:32[RBX]
+00013828: RBX := pad:64[#12582267 - #12582268 + pad:32[CF]]
+0001385d: RBX := pad:64[low:32[RBX] & 1]
+0001387e: RSP := RSP - 8
+00013883: mem := mem with [RSP, el]:u64 <- 0x180001573
+00013885: call @sub_180001118 with return %00013887
+
+00013887:
+0001388d: RAX := pad:64[low:32[RBX]]
+00013892: goto %00013890
+
+00013901:
+0001390b: RAX := 0
+000195e7: goto %00013890
+
+00013890:
+0001389b: RBX := mem[RSP + 0x40, el]:u64
+000138bc: RSP := RSP + 0x30
+000138e7: RDI := mem[RSP, el]:u64
+000138eb: RSP := RSP + 8
+000138f8: #12582261 := mem[RSP, el]:u64
+000138fc: RSP := RSP + 8
+000138ff: call #12582261 with noreturn
+
+000195eb: sub sub_1800015a8(sub_1800015a8_result)
+00019642: sub_1800015a8_result :: out u32 = low:32[RAX]
+
+00004b2f:
+00004b38: RAX := RSP
+00004b44: mem := mem with [RAX + 0x20, el]:u64 <- RBX
+00004b50: mem := mem with [RAX + 0x18, el]:u64 <- R8
+00004b5c: mem := mem with [RAX + 0x10, el]:u32 <- low:32[RDX]
+00004b68: mem := mem with [RAX + 8, el]:u64 <- RCX
+00004b76: #12582902 := RSI
+00004b7a: RSP := RSP - 8
+00004b80: mem := mem with [RSP, el]:u64 <- #12582902
+00004b8e: #12582901 := RDI
+00004b92: RSP := RSP - 8
+00004b98: mem := mem with [RSP, el]:u64 <- #12582901
+00004ba6: #12582900 := R14
+00004baa: RSP := RSP - 8
+00004bb0: mem := mem with [RSP, el]:u64 <- #12582900
+00004bce: RSP := RSP - 0x40
+00004bf2: RSI := R8
+00004bfa: RDI := pad:64[low:32[RDX]]
+00004c02: R14 := RCX
+00004c14: #12582896 := low:32[RDX]
+00004c2a: ZF := 0 = #12582896
+00004c31: when ~ZF goto %00004c2e
+000195fa: goto %00019147
+
+00019147:
+00019162: #12582119 := mem[0x180008170, el]:u32 - low:32[RDX]
+0001916e: OF := high:1[(mem[0x180008170, el]:u32 ^ low:32[RDX]) &
+          (mem[0x180008170, el]:u32 ^ #12582119)]
+0001917d: SF := high:1[#12582119]
+00019181: ZF := 0 = #12582119
+0001918f: when ~(ZF | (SF | OF) & ~(SF & OF)) goto %00004c2e
+000195f9: goto %00019193
+
+00004c2e:
+00004c3a: RAX := pad:64[low:32[RDX - 1]]
+00004c52: #12582894 := low:32[RAX] - 1
+00004c56: CF := low:32[RAX] < 1
+00004c6e: ZF := 0 = #12582894
+00004c77: when ~(CF | ZF) goto %00004c73
+000195f8: goto %00019035
+
+00019035:
+0001903b: RAX := mem[0x180006880, el]:u64
+0001904d: #12582126 := RAX
+00019063: ZF := 0 = #12582126
+0001906a: when ~ZF goto %00019067
+000195f7: goto %00019139
+
+00019067:
+00019079: #12582124 := mem[0x18000B020, el]:u64
+0001907d: RSP := RSP - 8
+00019082: mem := mem with [RSP, el]:u64 <- 0x180001601
+00019085: call #12582124 with return %00019087
+
+00019087:
+0001908d: RBX := pad:64[low:32[RAX]]
+00019099: mem := mem with [RSP + 0x30, el]:u32 <- low:32[RAX]
+000190ab: #12582123 := low:32[RAX]
+000190c1: ZF := 0 = #12582123
+000190c7: when ZF goto %00018bb5
+000195f6: goto %000190cb
+
+00019139:
+00019141: mem := mem with [RSP + 0x30, el]:u32 <- 1
+00019145: goto %000190cb
+
+000190cb:
+000190d1: R8 := RSI
+000190d9: RDX := pad:64[low:32[RDI]]
+000190e1: RCX := R14
+000190ec: RSP := RSP - 8
+000190f1: mem := mem with [RSP, el]:u64 <- 0x18000161C
+000190f3: call @sub_180001340 with return %000190f5
+
+000190f5:
+000190fb: RBX := pad:64[low:32[RAX]]
+00019107: mem := mem with [RSP + 0x30, el]:u32 <- low:32[RAX]
+00019119: #12582121 := low:32[RAX]
+0001912f: ZF := 0 = #12582121
+00019135: when ZF goto %00018bb5
+000195f5: goto %00004c73
+
+00004c73:
+00004c80: R8 := RSI
+00004c88: RDX := pad:64[low:32[RDI]]
+00004c90: RCX := R14
+00004c9c: RSP := RSP - 8
+00004ca1: mem := mem with [RSP, el]:u64 <- 0x180001637
+00004ca3: call @sub_1800010b4 with return %00018acd
+
+00018acd:
+00018ad3: RBX := pad:64[low:32[RAX]]
+00018adf: mem := mem with [RSP + 0x30, el]:u32 <- low:32[RAX]
+00018af7: #12582151 := low:32[RDI] - 1
+00018b13: ZF := 0 = #12582151
+00018b1a: when ~ZF goto %00018b17
+000195f4: goto %00018f01
+
+00018f01:
+00018f11: #12582133 := low:32[RAX]
+00018f27: ZF := 0 = #12582133
+00018f2d: when ~ZF goto %00018b17
+000195f3: goto %00018f31
+
+00018f31:
+00018f37: R8 := RSI
+00018f43: RDX := 0
+00018f5d: RCX := R14
+00018f68: RSP := RSP - 8
+00018f6d: mem := mem with [RSP, el]:u64 <- 0x180001653
+00018f6f: call @sub_1800010b4 with return %00018f71
+
+00018f71:
+00018f81: #12582131 := RSI
+00018f97: ZF := 0 = #12582131
+00018fa1: RCX := 63:8[RCX].pad:8[~ZF]
+00018fac: RSP := RSP - 8
+00018fb1: mem := mem with [RSP, el]:u64 <- 0x18000165E
+00018fb3: call @sub_180001500 with return %00018fb5
+
+00018fb5:
+00018fbb: RAX := mem[0x180006880, el]:u64
+00018fcd: #12582129 := RAX
+00018fe3: ZF := 0 = #12582129
+00018fe9: when ZF goto %00018b17
+000195f2: goto %00018fed
+
+00018fed:
+00018ff3: R8 := RSI
+00018fff: RDX := 0
+00019019: RCX := R14
+00019027: #12582127 := mem[0x18000B020, el]:u64
+0001902b: RSP := RSP - 8
+00019030: mem := mem with [RSP, el]:u64 <- 0x180001678
+00019033: call #12582127 with return %00018b17
+
+00018b17:
+00018b2d: #12582149 := low:32[RDI]
+00018b43: ZF := 0 = #12582149
+00018b4a: when ZF goto %00018b47
+000195f1: goto %00018ec5
+
+00018ec5:
+00018edb: #12582135 := low:32[RDI] - 3
+00018ef7: ZF := 0 = #12582135
+00018efd: when ~ZF goto %00018bb5
+000195f0: goto %00018b47
+
+00018b47:
+00018b53: R8 := RSI
+00018b5b: RDX := pad:64[low:32[RDI]]
+00018b63: RCX := R14
+00018b6e: RSP := RSP - 8
+00018b73: mem := mem with [RSP, el]:u64 <- 0x18000168E
+00018b75: call @sub_180001340 with return %00018b77
+
+00018b77:
+00018b7d: RBX := pad:64[low:32[RAX]]
+00018b89: mem := mem with [RSP + 0x30, el]:u32 <- low:32[RAX]
+00018b9b: #12582147 := low:32[RAX]
+00018bb1: ZF := 0 = #12582147
+00018bb8: when ZF goto %00018bb5
+000195ef: goto %00018e2f
+
+00018e2f:
+00018e35: RAX := mem[0x180006880, el]:u64
+00018e47: #12582138 := RAX
+00018e5d: ZF := 0 = #12582138
+00018e64: when ~ZF goto %00018e61
+000195ee: goto %00018ead
+
+00018e61:
+00018e6d: R8 := RSI
+00018e75: RDX := pad:64[low:32[RDI]]
+00018e7d: RCX := R14
+00018e8b: #12582136 := mem[0x18000B020, el]:u64
+00018e8f: RSP := RSP - 8
+00018e94: mem := mem with [RSP, el]:u64 <- 0x1800016BB
+00018e97: call #12582136 with return %00018e99
+
+00018e99:
+00018e9f: RBX := pad:64[low:32[RAX]]
+00018eab: mem := mem with [RSP + 0x30, el]:u32 <- low:32[RAX]
+000195ed: goto %00018bb5
+
+00018ead:
+00018eb3: RBX := pad:64[low:32[RAX + 1]]
+00018ebf: mem := mem with [RSP + 0x30, el]:u32 <- low:32[RBX]
+00018ec3: goto %00018bb5
+
+00018bb5:
+00018bbe: goto %00018bbc
+
+00018bbc:
+00018bc5: RAX := pad:64[low:32[RBX]]
+000195ec: goto %00018bc7
+
+00019193:
+0001919d: RAX := 0
+000191b3: goto %00018bc7
+
+00018bc7:
+00018bcf: RBX := mem[RSP + 0x78, el]:u64
+00018bf0: RSP := RSP + 0x40
+00018c1b: R14 := mem[RSP, el]:u64
+00018c1f: RSP := RSP + 8
+00018c2b: RDI := mem[RSP, el]:u64
+00018c2f: RSP := RSP + 8
+00018c3b: RSI := mem[RSP, el]:u64
+00018c3f: RSP := RSP + 8
+00018c4c: #12582142 := mem[RSP, el]:u64
+00018c50: RSP := RSP + 8
+00018c53: call #12582142 with noreturn
+
+000195fb: sub sub_180001d24(sub_180001d24_result)
+00019643: sub_180001d24_result :: out u32 = low:32[RAX]
+
+0000d6f6:
+0000d715: RSP := RSP - 0x18
+0000d739: R8 := RCX
+0000d73f: RAX := 0x5A4D
+0000d75c: #12582860 := mem[0x180000000, el]:u16 - 0x5A4D
+0000d77b: ZF := 0 = #12582860
+0000d782: when ~ZF goto %0000d77f
+00019605: goto %0000d8bd
+
+0000d8bd:
+0000d8c3: RCX := extend:64[mem[0x18000003C, el]:u32]
+0000d8c9: RDX := 0x180000000
+0000d8f4: RCX := RCX + 0x180000000
+0000d933: #12582851 := mem[RCX, el]:u32 - 0x4550
+0000d953: ZF := 0 = #12582851
+0000d959: when ~ZF goto %0000d77f
+00019604: goto %0000d95d
+
+0000d95d:
+0000d961: RAX := 0x20B
+0000d984: #12582849 := mem[RCX + 0x18, el]:u16 - 0x20B
+0000d9a7: ZF := 0 = #12582849
+0000d9ad: when ~ZF goto %0000d77f
+00019603: goto %0000d9b1
+
+0000d77f:
+0000d791: RAX := 63:8[RAX].0
+0000d7a8: goto %0000d7a6
+
+0000d9b1:
+0000d9d8: R8 := R8 - 0x180000000
+0000da01: RDX := pad:64[mem[RCX + 0x14, el]:u16]
+0000da22: RDX := RDX + 0x18
+0000da67: #12582840 := RCX
+0000da6c: RDX := RDX + #12582840
+0000da97: RAX := pad:64[mem[RCX + 6, el]:u16]
+0000daa1: RCX := RAX + (RAX << 2)
+0000daab: R9 := RDX + (RCX << 3)
+00019602: goto %0000daad
+
+0000daad:
+0000dab7: mem := mem with [RSP, el]:u64 <- RDX
+0000dad4: #12582838 := RDX - R9
+0000daf3: ZF := 0 = #12582838
+0000dafa: when ZF goto %0000daf7
+00019601: goto %0000dbeb
+
+0000daf7:
+0000db07: RDX := 0
+00019600: goto %0000db1b
+
+0000dbeb:
+0000dbf3: RCX := pad:64[mem[RDX + 0xC, el]:u32]
+0000dc15: CF := R8 < RCX
+0000dc36: when CF goto %0000dc33
+000195ff: goto %0000dc7d
+
+0000dc7d:
+0000dc85: RAX := pad:64[mem[RDX + 8, el]:u32]
+0000dcab: #12582826 := low:32[RCX]
+0000dcb0: RAX := pad:64[low:32[RAX] + #12582826]
+0000dcf3: CF := R8 < RAX
+0000dd13: when CF goto %0000db1b
+000195fe: goto %0000dc33
+
+0000db1b:
+0000db2b: #12582836 := RDX
+0000db41: ZF := 0 = #12582836
+0000db48: when ~ZF goto %0000db45
+000195fd: goto %0000dbc7
+
+0000db45:
+0000db67: #12582834 := mem[RDX + 0x24, el]:u32
+0000db74: OF := high:1[mem[RDX + 0x24, el]:u32 &
+          (mem[RDX + 0x24, el]:u32 ^ #12582834)]
+0000db83: SF := high:1[#12582834]
+0000db94: when ~((SF | OF) & ~(SF & OF)) goto %0000db8e
+000195fc: goto %0000dba3
+
+0000db8e:
+0000db9d: RAX := high:56[RAX].1
+0000dba1: goto %0000d7a6
+
+0000dba3:
+0000dbaf: RAX := 63:8[RAX].0
+0000dbc5: goto %0000d7a6
+
+0000dbc7:
+0000dbd3: RAX := 63:8[RAX].0
+0000dbe9: goto %0000d7a6
+
+0000d7a6:
+0000d7c8: RSP := RSP + 0x18
+0000d7f4: #12582855 := mem[RSP, el]:u64
+0000d7f8: RSP := RSP + 8
+0000d7fb: call #12582855 with noreturn
+
+0000dc33:
+0000dc58: RDX := RDX + 0x28
+0000dc7b: goto %0000daad
+
+00019606: sub sub_180002736(sub_180002736_result)
+00019644: sub_180002736_result :: out u32 = low:32[RAX]
+
+00004dd1:
+00004dd5: call mem[0x18000A0F8, el]:u64 with noreturn
+
+00019607: sub sub_18000273c(sub_18000273c_result)
+00019645: sub_18000273c_result :: out u32 = low:32[RAX]
+
+00004dd7:
+00004ddb: call mem[0x18000A100, el]:u64 with noreturn
+
+00019608: sub sub_180002742(sub_180002742_result)
+00019646: sub_180002742_result :: out u32 = low:32[RAX]
+
+00004ddd:
+00004de1: call mem[0x18000A108, el]:u64 with noreturn
+
+00019609: sub sub_180002748(sub_180002748_result)
+00019647: sub_180002748_result :: out u32 = low:32[RAX]
+
+00004de3:
+00004de7: call mem[0x18000A1A0, el]:u64 with noreturn
+
+0001960a: sub sub_18000274e(sub_18000274e_result)
+00019648: sub_18000274e_result :: out u32 = low:32[RAX]
+
+00004de9:
+00004ded: call mem[0x18000A178, el]:u64 with noreturn
+
+0001960b: sub sub_18000275a(sub_18000275a_result)
+00019649: sub_18000275a_result :: out u32 = low:32[RAX]
+
+00004df5:
+00004df9: call mem[0x18000A188, el]:u64 with noreturn
+
+0001960c: sub sub_180002760(sub_180002760_result)
+0001964a: sub_180002760_result :: out u32 = low:32[RAX]
+
+00004dfb:
+00004dff: call mem[0x18000A190, el]:u64 with noreturn
+
+0001960d: sub sub_180002766(sub_180002766_result)
+0001964b: sub_180002766_result :: out u32 = low:32[RAX]
+
+00004e01:
+00004e05: call mem[0x18000A198, el]:u64 with noreturn
+
+0001960e: sub sub_18000276c(sub_18000276c_result)
+0001964c: sub_18000276c_result :: out u32 = low:32[RAX]
+
+00004e07:
+00004e0b: call mem[0x18000A1D0, el]:u64 with noreturn
+
+0001960f: sub sub_180002778(sub_180002778_result)
+0001964d: sub_180002778_result :: out u32 = low:32[RAX]
+
+00004e13:
+00004e17: call mem[0x18000A1B0, el]:u64 with noreturn
+
+00019610: sub sub_180002784(sub_180002784_result)
+0001964e: sub_180002784_result :: out u32 = low:32[RAX]
+
+00004e1f:
+00004e23: call mem[0x18000A1C0, el]:u64 with noreturn
+
+00019611: sub sub_18000278a(sub_18000278a_result)
+0001964f: sub_18000278a_result :: out u32 = low:32[RAX]
+
+00004e25:
+00004e29: call mem[0x18000A1C8, el]:u64 with noreturn
+
+00019612: sub sub_180002790(sub_180002790_result)
+00019650: sub_180002790_result :: out u32 = low:32[RAX]
+
+00004e2b:
+00004e31: RAX := high:56[RAX].1
+00004e3e: #12582883 := mem[RSP, el]:u64
+00004e42: RSP := RSP + 8
+00004e45: call #12582883 with noreturn
+
+00019613: sub sub_180002794(sub_180002794_result)
+00019651: sub_180002794_result :: out u32 = low:32[RAX]
+
+00004e4b:
+00004e51: RAX := high:56[RAX].1
+00004e5e: #12582882 := mem[RSP, el]:u64
+00004e62: RSP := RSP + 8
+00004e65: call #12582882 with noreturn
+
+00019614: sub sub_180002798(sub_180002798_result)
+00019652: sub_180002798_result :: out u32 = low:32[RAX]
+
+00004e6b:
+00004e71: RAX := high:56[RAX].1
+00004e7e: #12582881 := mem[RSP, el]:u64
+00004e82: RSP := RSP + 8
+00004e85: call #12582881 with noreturn
+
+00019615: sub sub_18000279c(sub_18000279c_result)
+00019653: sub_18000279c_result :: out u32 = low:32[RAX]
+
+00004e8b:
+00004e91: RAX := high:56[RAX].1
+00004e9e: #12582880 := mem[RSP, el]:u64
+00004ea2: RSP := RSP + 8
+00004ea5: call #12582880 with noreturn
+
+00019616: sub sub_1800027a0(sub_1800027a0_result)
+00019654: sub_1800027a0_result :: out u32 = low:32[RAX]
+
+00004eab:
+00004eb1: RAX := high:56[RAX].1
+00004ebe: #12582879 := mem[RSP, el]:u64
+00004ec2: RSP := RSP + 8
+00004ec5: call #12582879 with noreturn
+
+00010e43: sub intrinsic:x86:lock()
+
+
+00010e63: sub intrinsic:x86:unlock()
+
+
+00004d79: sub interrupt:#3(interrupt:#3_result)
+00019655: interrupt:#3_result :: out u32 = low:32[RAX]
+
+0000f688: sub interrupt:#41(interrupt:#41_result)
+00019656: interrupt:#41_result :: out u32 = low:32[RAX]