; LLVM IR from facebook/hermes :: API/hermes_sandbox/external (hermes_sandbox_impl_opt_compiled_0)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%struct.w2c_hermes = type { ptr, ptr, ptr, i32, i32, i32, %struct.wasm_rt_memory_t, %struct.wasm_rt_funcref_table_t }
%struct.wasm_rt_memory_t = type { ptr, i64, i64, i64, i8 }
%struct.wasm_rt_funcref_table_t = type { ptr, i32, i32 }

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_dlfree(ptr noundef, i32 noundef) #0

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: inlinehint nounwind uwtable
declare hidden i32 @i32_load(ptr noundef, i64 noundef) #2

; Function Attrs: inlinehint nounwind uwtable
declare hidden void @i32_store(ptr noundef, i64 noundef, i32 noundef) #2

; Function Attrs: inlinehint nounwind uwtable
declare hidden void @i64_store(ptr noundef, i64 noundef, i64 noundef) #2

; Function Attrs: inlinehint nounwind uwtable
declare hidden i32 @i32_load8_u(ptr noundef, i64 noundef) #2

declare i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef, i32 noundef) #3

; Function Attrs: noreturn
declare void @wasm_rt_trap(i32 noundef) #4

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef) #3

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_0x5F_memset(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #0

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(none)
declare i64 @llvm.expect.i64(i64, i64) #5

; Function Attrs: inlinehint nounwind uwtable
declare hidden i64 @i64_load(ptr noundef, i64 noundef) #2

declare i32 @w2c_hermes_memmove(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

; Function Attrs: inlinehint nounwind uwtable
declare hidden i32 @i32_load16_u(ptr noundef, i64 noundef) #2

; Function Attrs: nounwind uwtable
define dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringTableBuilder0x3A0x3ApackIntoStorage0x28std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x2A0x2C0x20bool0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %3, i32 noundef %4) #0 {
  %6 = alloca ptr, align 8
  %7 = alloca i32, align 4
  %8 = alloca i32, align 4
  %9 = alloca i32, align 4
  %10 = alloca i32, align 4
  %11 = alloca i32, align 4
  %12 = alloca i32, align 4
  %13 = alloca i32, align 4
  %14 = alloca i32, align 4
  %15 = alloca i32, align 4
  %16 = alloca i32, align 4
  %17 = alloca i32, align 4
  %18 = alloca i32, align 4
  %19 = alloca i32, align 4
  %20 = alloca i32, align 4
  %21 = alloca i32, align 4
  %22 = alloca i32, align 4
  %23 = alloca i32, align 4
  %24 = alloca i32, align 4
  %25 = alloca i32, align 4
  %26 = alloca i32, align 4
  %27 = alloca i32, align 4
  %28 = alloca i32, align 4
  %29 = alloca i32, align 4
  %30 = alloca i32, align 4
  %31 = alloca i32, align 4
  %32 = alloca i32, align 4
  %33 = alloca i32, align 4
  %34 = alloca i32, align 4
  %35 = alloca i32, align 4
  %36 = alloca i32, align 4
  %37 = alloca i32, align 4
  %38 = alloca i32, align 4
  %39 = alloca i64, align 8
  %40 = alloca i64, align 8
  %41 = alloca i64, align 8
  %42 = alloca i32, align 4
  %43 = alloca i32, align 4
  %44 = alloca i32, align 4
  %45 = alloca i32, align 4
  %46 = alloca i32, align 4
  %47 = alloca i32, align 4
  %48 = alloca i64, align 8
  %49 = alloca i64, align 8
  %50 = alloca i64, align 8
  %51 = alloca i64, align 8
  store ptr %0, ptr %6, align 8, !tbaa !5
  store i32 %1, ptr %7, align 4, !tbaa !9
  store i32 %2, ptr %8, align 4, !tbaa !9
  store i32 %3, ptr %9, align 4, !tbaa !9
  store i32 %4, ptr %10, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %11) #6
  store i32 0, ptr %11, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %12) #6
  store i32 0, ptr %12, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %13) #6
  store i32 0, ptr %13, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #6
  store i32 0, ptr %14, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #6
  store i32 0, ptr %15, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %16) #6
  store i32 0, ptr %16, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %17) #6
  store i32 0, ptr %17, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %18) #6
  store i32 0, ptr %18, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %19) #6
  store i32 0, ptr %19, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %20) #6
  store i32 0, ptr %20, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %21) #6
  store i32 0, ptr %21, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %22) #6
  store i32 0, ptr %22, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %23) #6
  store i32 0, ptr %23, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #6
  store i32 0, ptr %24, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %25) #6
  store i32 0, ptr %25, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %26) #6
  store i32 0, ptr %26, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %27) #6
  store i32 0, ptr %27, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %28) #6
  store i32 0, ptr %28, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %29) #6
  store i32 0, ptr %29, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %30) #6
  store i32 0, ptr %30, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %31) #6
  store i32 0, ptr %31, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %32) #6
  store i32 0, ptr %32, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %33) #6
  store i32 0, ptr %33, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %34) #6
  store i32 0, ptr %34, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %35) #6
  store i32 0, ptr %35, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %36) #6
  store i32 0, ptr %36, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %37) #6
  store i32 0, ptr %37, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %38) #6
  store i32 0, ptr %38, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %39) #6
  store i64 0, ptr %39, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %40) #6
  store i64 0, ptr %40, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %41) #6
  store i64 0, ptr %41, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr %42) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %43) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %44) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %45) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %46) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %47) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %48) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %49) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %50) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %51) #6
  %52 = load ptr, ptr %6, align 8, !tbaa !5
  %53 = getelementptr inbounds %struct.w2c_hermes, ptr %52, i32 0, i32 3
  %54 = load i32, ptr %53, align 8, !tbaa !13
  store i32 %54, ptr %42, align 4, !tbaa !9
  store i32 32, ptr %43, align 4, !tbaa !9
  %55 = load i32, ptr %43, align 4, !tbaa !9
  %56 = load i32, ptr %42, align 4, !tbaa !9
  %57 = sub i32 %56, %55
  store i32 %57, ptr %42, align 4, !tbaa !9
  %58 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %58, ptr %20, align 4, !tbaa !9
  %59 = load i32, ptr %42, align 4, !tbaa !9
  %60 = load ptr, ptr %6, align 8, !tbaa !5
  %61 = getelementptr inbounds %struct.w2c_hermes, ptr %60, i32 0, i32 3
  store i32 %59, ptr %61, align 8, !tbaa !13
  %62 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %62, ptr %42, align 4, !tbaa !9
  %63 = load i32, ptr %42, align 4, !tbaa !9
  %64 = icmp ne i32 %63, 0
  br i1 %64, label %65, label %273

65:                                               ; preds = %5
  %66 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %66, ptr %42, align 4, !tbaa !9
  %67 = load ptr, ptr %6, align 8, !tbaa !5
  %68 = getelementptr inbounds %struct.w2c_hermes, ptr %67, i32 0, i32 6
  %69 = load i32, ptr %42, align 4, !tbaa !9
  %70 = zext i32 %69 to i64
  %71 = add i64 %70, 28
  %72 = call i32 @i32_load(ptr noundef %68, i64 noundef %71)
  store i32 %72, ptr %42, align 4, !tbaa !9
  %73 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %73, ptr %22, align 4, !tbaa !9
  %74 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %74, ptr %43, align 4, !tbaa !9
  %75 = load ptr, ptr %6, align 8, !tbaa !5
  %76 = getelementptr inbounds %struct.w2c_hermes, ptr %75, i32 0, i32 6
  %77 = load i32, ptr %43, align 4, !tbaa !9
  %78 = zext i32 %77 to i64
  %79 = add i64 %78, 24
  %80 = call i32 @i32_load(ptr noundef %76, i64 noundef %79)
  store i32 %80, ptr %43, align 4, !tbaa !9
  %81 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %81, ptr %30, align 4, !tbaa !9
  %82 = load i32, ptr %43, align 4, !tbaa !9
  %83 = load i32, ptr %42, align 4, !tbaa !9
  %84 = sub i32 %83, %82
  store i32 %84, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %85 = load i32, ptr %43, align 4, !tbaa !9
  %86 = icmp eq i32 %85, 0
  %87 = xor i1 %86, true
  %88 = xor i1 %87, true
  %89 = zext i1 %88 to i32
  %90 = sext i32 %89 to i64
  %91 = call i64 @llvm.expect.i64(i64 %90, i64 0)
  %92 = icmp ne i64 %91, 0
  br i1 %92, label %93, label %95

93:                                               ; preds = %65
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

94:                                               ; No predecessors!
  br label %117

95:                                               ; preds = %65
  %96 = load i32, ptr %42, align 4, !tbaa !9
  %97 = icmp eq i32 %96, -2147483648
  br i1 %97, label %98, label %101

98:                                               ; preds = %95
  %99 = load i32, ptr %43, align 4, !tbaa !9
  %100 = icmp eq i32 %99, -1
  br label %101

101:                                              ; preds = %98, %95
  %102 = phi i1 [ false, %95 ], [ %100, %98 ]
  %103 = xor i1 %102, true
  %104 = xor i1 %103, true
  %105 = zext i1 %104 to i32
  %106 = sext i32 %105 to i64
  %107 = call i64 @llvm.expect.i64(i64 %106, i64 0)
  %108 = icmp ne i64 %107, 0
  br i1 %108, label %109, label %111

109:                                              ; preds = %101
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

110:                                              ; No predecessors!
  br label %115

111:                                              ; preds = %101
  %112 = load i32, ptr %42, align 4, !tbaa !9
  %113 = load i32, ptr %43, align 4, !tbaa !9
  %114 = sdiv i32 %112, %113
  br label %115

115:                                              ; preds = %111, %110
  %116 = phi i32 [ 0, %110 ], [ %114, %111 ]
  br label %117

117:                                              ; preds = %115, %94
  %118 = phi i32 [ 0, %94 ], [ %116, %115 ]
  store i32 %118, ptr %42, align 4, !tbaa !9
  %119 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %119, ptr %28, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %120 = load i32, ptr %42, align 4, !tbaa !9
  %121 = load i32, ptr %43, align 4, !tbaa !9
  %122 = icmp uge i32 %120, %121
  %123 = zext i1 %122 to i32
  store i32 %123, ptr %42, align 4, !tbaa !9
  %124 = load i32, ptr %42, align 4, !tbaa !9
  %125 = icmp ne i32 %124, 0
  br i1 %125, label %126, label %246

126:                                              ; preds = %117
  %127 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %127, ptr %42, align 4, !tbaa !9
  %128 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %128, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %129 = load i32, ptr %44, align 4, !tbaa !9
  %130 = and i32 %129, 31
  %131 = load i32, ptr %43, align 4, !tbaa !9
  %132 = lshr i32 %131, %130
  store i32 %132, ptr %43, align 4, !tbaa !9
  store i32 2147483644, ptr %44, align 4, !tbaa !9
  %133 = load i32, ptr %44, align 4, !tbaa !9
  %134 = load i32, ptr %43, align 4, !tbaa !9
  %135 = and i32 %134, %133
  store i32 %135, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %136 = load i32, ptr %44, align 4, !tbaa !9
  %137 = icmp eq i32 %136, 0
  %138 = xor i1 %137, true
  %139 = xor i1 %138, true
  %140 = zext i1 %139 to i32
  %141 = sext i32 %140 to i64
  %142 = call i64 @llvm.expect.i64(i64 %141, i64 0)
  %143 = icmp ne i64 %142, 0
  br i1 %143, label %144, label %146

144:                                              ; preds = %126
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

145:                                              ; No predecessors!
  br label %150

146:                                              ; preds = %126
  %147 = load i32, ptr %43, align 4, !tbaa !9
  %148 = load i32, ptr %44, align 4, !tbaa !9
  %149 = udiv i32 %147, %148
  br label %150

150:                                              ; preds = %146, %145
  %151 = phi i32 [ 0, %145 ], [ %149, %146 ]
  store i32 %151, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %152 = load i32, ptr %44, align 4, !tbaa !9
  %153 = load i32, ptr %43, align 4, !tbaa !9
  %154 = add i32 %153, %152
  store i32 %154, ptr %43, align 4, !tbaa !9
  %155 = load i32, ptr %43, align 4, !tbaa !9
  %156 = zext i32 %155 to i64
  store i64 %156, ptr %49, align 8, !tbaa !11
  %157 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %157, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %50, align 8, !tbaa !11
  %158 = load i64, ptr %50, align 8, !tbaa !11
  %159 = and i64 %158, 63
  %160 = load i64, ptr %49, align 8, !tbaa !11
  %161 = lshr i64 %160, %159
  store i64 %161, ptr %49, align 8, !tbaa !11
  %162 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %162, ptr %50, align 8, !tbaa !11
  %163 = load i64, ptr %50, align 8, !tbaa !11
  %164 = load i64, ptr %49, align 8, !tbaa !11
  %165 = or i64 %164, %163
  store i64 %165, ptr %49, align 8, !tbaa !11
  %166 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %166, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %50, align 8, !tbaa !11
  %167 = load i64, ptr %50, align 8, !tbaa !11
  %168 = and i64 %167, 63
  %169 = load i64, ptr %49, align 8, !tbaa !11
  %170 = lshr i64 %169, %168
  store i64 %170, ptr %49, align 8, !tbaa !11
  %171 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %171, ptr %50, align 8, !tbaa !11
  %172 = load i64, ptr %50, align 8, !tbaa !11
  %173 = load i64, ptr %49, align 8, !tbaa !11
  %174 = or i64 %173, %172
  store i64 %174, ptr %49, align 8, !tbaa !11
  %175 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %175, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %50, align 8, !tbaa !11
  %176 = load i64, ptr %50, align 8, !tbaa !11
  %177 = and i64 %176, 63
  %178 = load i64, ptr %49, align 8, !tbaa !11
  %179 = lshr i64 %178, %177
  store i64 %179, ptr %49, align 8, !tbaa !11
  %180 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %180, ptr %50, align 8, !tbaa !11
  %181 = load i64, ptr %50, align 8, !tbaa !11
  %182 = load i64, ptr %49, align 8, !tbaa !11
  %183 = or i64 %182, %181
  store i64 %183, ptr %49, align 8, !tbaa !11
  %184 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %184, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %50, align 8, !tbaa !11
  %185 = load i64, ptr %50, align 8, !tbaa !11
  %186 = and i64 %185, 63
  %187 = load i64, ptr %49, align 8, !tbaa !11
  %188 = lshr i64 %187, %186
  store i64 %188, ptr %49, align 8, !tbaa !11
  %189 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %189, ptr %50, align 8, !tbaa !11
  %190 = load i64, ptr %50, align 8, !tbaa !11
  %191 = load i64, ptr %49, align 8, !tbaa !11
  %192 = or i64 %191, %190
  store i64 %192, ptr %49, align 8, !tbaa !11
  %193 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %193, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %50, align 8, !tbaa !11
  %194 = load i64, ptr %50, align 8, !tbaa !11
  %195 = and i64 %194, 63
  %196 = load i64, ptr %49, align 8, !tbaa !11
  %197 = lshr i64 %196, %195
  store i64 %197, ptr %49, align 8, !tbaa !11
  %198 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %198, ptr %50, align 8, !tbaa !11
  %199 = load i64, ptr %50, align 8, !tbaa !11
  %200 = load i64, ptr %49, align 8, !tbaa !11
  %201 = or i64 %200, %199
  store i64 %201, ptr %49, align 8, !tbaa !11
  %202 = load i64, ptr %49, align 8, !tbaa !11
  %203 = trunc i64 %202 to i32
  store i32 %203, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %204 = load i32, ptr %44, align 4, !tbaa !9
  %205 = load i32, ptr %43, align 4, !tbaa !9
  %206 = add i32 %205, %204
  store i32 %206, ptr %43, align 4, !tbaa !9
  %207 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %207, ptr %10, align 4, !tbaa !9
  %208 = load ptr, ptr %6, align 8, !tbaa !5
  %209 = getelementptr inbounds %struct.w2c_hermes, ptr %208, i32 0, i32 6
  %210 = load i32, ptr %42, align 4, !tbaa !9
  %211 = zext i32 %210 to i64
  %212 = add i64 %211, 28
  %213 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %209, i64 noundef %212, i32 noundef %213)
  %214 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %214, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %215 = load i32, ptr %43, align 4, !tbaa !9
  %216 = and i32 %215, 31
  %217 = load i32, ptr %42, align 4, !tbaa !9
  %218 = shl i32 %217, %216
  store i32 %218, ptr %42, align 4, !tbaa !9
  %219 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %219, ptr %10, align 4, !tbaa !9
  %220 = load ptr, ptr %6, align 8, !tbaa !5
  %221 = load i32, ptr %42, align 4, !tbaa !9
  %222 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %220, i32 noundef %221)
  store i32 %222, ptr %42, align 4, !tbaa !9
  %223 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %223, ptr %17, align 4, !tbaa !9
  %224 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %224, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %225 = load ptr, ptr %6, align 8, !tbaa !5
  %226 = getelementptr inbounds %struct.w2c_hermes, ptr %225, i32 0, i32 6
  %227 = load i32, ptr %42, align 4, !tbaa !9
  %228 = zext i32 %227 to i64
  %229 = add i64 %228, 20
  %230 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %226, i64 noundef %229, i64 noundef %230)
  %231 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %231, ptr %42, align 4, !tbaa !9
  %232 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %232, ptr %43, align 4, !tbaa !9
  %233 = load ptr, ptr %6, align 8, !tbaa !5
  %234 = getelementptr inbounds %struct.w2c_hermes, ptr %233, i32 0, i32 6
  %235 = load i32, ptr %42, align 4, !tbaa !9
  %236 = zext i32 %235 to i64
  %237 = add i64 %236, 16
  %238 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %234, i64 noundef %237, i32 noundef %238)
  %239 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %239, ptr %42, align 4, !tbaa !9
  store i32 255, ptr %43, align 4, !tbaa !9
  %240 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %240, ptr %44, align 4, !tbaa !9
  %241 = load ptr, ptr %6, align 8, !tbaa !5
  %242 = load i32, ptr %42, align 4, !tbaa !9
  %243 = load i32, ptr %43, align 4, !tbaa !9
  %244 = load i32, ptr %44, align 4, !tbaa !9
  %245 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %241, i32 noundef %242, i32 noundef %243, i32 noundef %244)
  store i32 %245, ptr %42, align 4, !tbaa !9
  br label %720

246:                                              ; preds = %117
  %247 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %247, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %248 = load ptr, ptr %6, align 8, !tbaa !5
  %249 = getelementptr inbounds %struct.w2c_hermes, ptr %248, i32 0, i32 6
  %250 = load i32, ptr %42, align 4, !tbaa !9
  %251 = zext i32 %250 to i64
  %252 = add i64 %251, 24
  %253 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %249, i64 noundef %252, i64 noundef %253)
  %254 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %254, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %255 = load ptr, ptr %6, align 8, !tbaa !5
  %256 = getelementptr inbounds %struct.w2c_hermes, ptr %255, i32 0, i32 6
  %257 = load i32, ptr %42, align 4, !tbaa !9
  %258 = zext i32 %257 to i64
  %259 = add i64 %258, 16
  %260 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %256, i64 noundef %259, i64 noundef %260)
  %261 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %261, ptr %42, align 4, !tbaa !9
  %262 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %262, ptr %43, align 4, !tbaa !9
  %263 = load i32, ptr %42, align 4, !tbaa !9
  %264 = load i32, ptr %43, align 4, !tbaa !9
  %265 = icmp ne i32 %263, %264
  %266 = zext i1 %265 to i32
  store i32 %266, ptr %42, align 4, !tbaa !9
  %267 = load i32, ptr %42, align 4, !tbaa !9
  %268 = icmp ne i32 %267, 0
  br i1 %268, label %269, label %270

269:                                              ; preds = %246
  br label %720

270:                                              ; preds = %246
  store i32 0, ptr %42, align 4, !tbaa !9
  %271 = load ptr, ptr %6, align 8, !tbaa !5
  %272 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %271, i32 noundef %272)
  br label %7826

273:                                              ; preds = %5
  %274 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %274, ptr %42, align 4, !tbaa !9
  %275 = load ptr, ptr %6, align 8, !tbaa !5
  %276 = getelementptr inbounds %struct.w2c_hermes, ptr %275, i32 0, i32 6
  %277 = load i32, ptr %42, align 4, !tbaa !9
  %278 = zext i32 %277 to i64
  %279 = add i64 %278, 28
  %280 = call i32 @i32_load(ptr noundef %276, i64 noundef %279)
  store i32 %280, ptr %42, align 4, !tbaa !9
  %281 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %281, ptr %11, align 4, !tbaa !9
  %282 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %282, ptr %42, align 4, !tbaa !9
  %283 = load ptr, ptr %6, align 8, !tbaa !5
  %284 = getelementptr inbounds %struct.w2c_hermes, ptr %283, i32 0, i32 6
  %285 = load i32, ptr %42, align 4, !tbaa !9
  %286 = zext i32 %285 to i64
  %287 = add i64 %286, 24
  %288 = call i32 @i32_load(ptr noundef %284, i64 noundef %287)
  store i32 %288, ptr %42, align 4, !tbaa !9
  %289 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %289, ptr %10, align 4, !tbaa !9
  %290 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %290, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %291 = load ptr, ptr %6, align 8, !tbaa !5
  %292 = getelementptr inbounds %struct.w2c_hermes, ptr %291, i32 0, i32 6
  %293 = load i32, ptr %42, align 4, !tbaa !9
  %294 = zext i32 %293 to i64
  %295 = add i64 %294, 24
  %296 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %292, i64 noundef %295, i32 noundef %296)
  %297 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %297, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %298 = load ptr, ptr %6, align 8, !tbaa !5
  %299 = getelementptr inbounds %struct.w2c_hermes, ptr %298, i32 0, i32 6
  %300 = load i32, ptr %42, align 4, !tbaa !9
  %301 = zext i32 %300 to i64
  %302 = add i64 %301, 16
  %303 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %299, i64 noundef %302, i64 noundef %303)
  %304 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %304, ptr %42, align 4, !tbaa !9
  %305 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %305, ptr %43, align 4, !tbaa !9
  %306 = load i32, ptr %42, align 4, !tbaa !9
  %307 = load i32, ptr %43, align 4, !tbaa !9
  %308 = icmp ne i32 %306, %307
  %309 = zext i1 %308 to i32
  store i32 %309, ptr %42, align 4, !tbaa !9
  %310 = load i32, ptr %42, align 4, !tbaa !9
  %311 = icmp ne i32 %310, 0
  br i1 %311, label %312, label %429

312:                                              ; preds = %273
  %313 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %313, ptr %42, align 4, !tbaa !9
  %314 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %314, ptr %43, align 4, !tbaa !9
  %315 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %315, ptr %44, align 4, !tbaa !9
  %316 = load i32, ptr %44, align 4, !tbaa !9
  %317 = load i32, ptr %43, align 4, !tbaa !9
  %318 = sub i32 %317, %316
  store i32 %318, ptr %43, align 4, !tbaa !9
  store i32 52, ptr %44, align 4, !tbaa !9
  %319 = load i32, ptr %44, align 4, !tbaa !9
  %320 = icmp eq i32 %319, 0
  %321 = xor i1 %320, true
  %322 = xor i1 %321, true
  %323 = zext i1 %322 to i32
  %324 = sext i32 %323 to i64
  %325 = call i64 @llvm.expect.i64(i64 %324, i64 0)
  %326 = icmp ne i64 %325, 0
  br i1 %326, label %327, label %329

327:                                              ; preds = %312
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

328:                                              ; No predecessors!
  br label %351

329:                                              ; preds = %312
  %330 = load i32, ptr %43, align 4, !tbaa !9
  %331 = icmp eq i32 %330, -2147483648
  br i1 %331, label %332, label %335

332:                                              ; preds = %329
  %333 = load i32, ptr %44, align 4, !tbaa !9
  %334 = icmp eq i32 %333, -1
  br label %335

335:                                              ; preds = %332, %329
  %336 = phi i1 [ false, %329 ], [ %334, %332 ]
  %337 = xor i1 %336, true
  %338 = xor i1 %337, true
  %339 = zext i1 %338 to i32
  %340 = sext i32 %339 to i64
  %341 = call i64 @llvm.expect.i64(i64 %340, i64 0)
  %342 = icmp ne i64 %341, 0
  br i1 %342, label %343, label %345

343:                                              ; preds = %335
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

344:                                              ; No predecessors!
  br label %349

345:                                              ; preds = %335
  %346 = load i32, ptr %43, align 4, !tbaa !9
  %347 = load i32, ptr %44, align 4, !tbaa !9
  %348 = sdiv i32 %346, %347
  br label %349

349:                                              ; preds = %345, %344
  %350 = phi i32 [ 0, %344 ], [ %348, %345 ]
  br label %351

351:                                              ; preds = %349, %328
  %352 = phi i32 [ 0, %328 ], [ %350, %349 ]
  store i32 %352, ptr %43, align 4, !tbaa !9
  store i32 52, ptr %44, align 4, !tbaa !9
  %353 = load i32, ptr %44, align 4, !tbaa !9
  %354 = load i32, ptr %43, align 4, !tbaa !9
  %355 = mul i32 %354, %353
  store i32 %355, ptr %43, align 4, !tbaa !9
  %356 = load i32, ptr %43, align 4, !tbaa !9
  %357 = load i32, ptr %42, align 4, !tbaa !9
  %358 = add i32 %357, %356
  store i32 %358, ptr %42, align 4, !tbaa !9
  %359 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %359, ptr %12, align 4, !tbaa !9
  br label %360

360:                                              ; preds = %427, %351
  %361 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %361, ptr %42, align 4, !tbaa !9
  %362 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %362, ptr %43, align 4, !tbaa !9
  %363 = load ptr, ptr %6, align 8, !tbaa !5
  %364 = getelementptr inbounds %struct.w2c_hermes, ptr %363, i32 0, i32 6
  %365 = load i32, ptr %43, align 4, !tbaa !9
  %366 = zext i32 %365 to i64
  %367 = add i64 %366, 20
  %368 = call i32 @i32_load(ptr noundef %364, i64 noundef %367)
  store i32 %368, ptr %43, align 4, !tbaa !9
  %369 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %369, ptr %11, align 4, !tbaa !9
  %370 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %370, ptr %44, align 4, !tbaa !9
  %371 = load ptr, ptr %6, align 8, !tbaa !5
  %372 = getelementptr inbounds %struct.w2c_hermes, ptr %371, i32 0, i32 6
  %373 = load i32, ptr %44, align 4, !tbaa !9
  %374 = zext i32 %373 to i64
  %375 = add i64 %374, 16
  %376 = call i32 @i32_load(ptr noundef %372, i64 noundef %375)
  store i32 %376, ptr %44, align 4, !tbaa !9
  %377 = load i32, ptr %44, align 4, !tbaa !9
  %378 = load i32, ptr %43, align 4, !tbaa !9
  %379 = sub i32 %378, %377
  store i32 %379, ptr %43, align 4, !tbaa !9
  %380 = load ptr, ptr %6, align 8, !tbaa !5
  %381 = getelementptr inbounds %struct.w2c_hermes, ptr %380, i32 0, i32 6
  %382 = load i32, ptr %42, align 4, !tbaa !9
  %383 = zext i32 %382 to i64
  %384 = add i64 %383, 12
  %385 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %381, i64 noundef %384, i32 noundef %385)
  %386 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %386, ptr %42, align 4, !tbaa !9
  store i32 16, ptr %43, align 4, !tbaa !9
  %387 = load i32, ptr %43, align 4, !tbaa !9
  %388 = load i32, ptr %42, align 4, !tbaa !9
  %389 = add i32 %388, %387
  store i32 %389, ptr %42, align 4, !tbaa !9
  %390 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %390, ptr %43, align 4, !tbaa !9
  %391 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %391, ptr %44, align 4, !tbaa !9
  %392 = load ptr, ptr %6, align 8, !tbaa !5
  %393 = getelementptr inbounds %struct.w2c_hermes, ptr %392, i32 0, i32 6
  %394 = load i32, ptr %44, align 4, !tbaa !9
  %395 = zext i32 %394 to i64
  %396 = add i64 %395, 4
  %397 = call i32 @i32_load(ptr noundef %393, i64 noundef %396)
  store i32 %397, ptr %44, align 4, !tbaa !9
  %398 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %398, ptr %11, align 4, !tbaa !9
  %399 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %399, ptr %45, align 4, !tbaa !9
  %400 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %400, ptr %46, align 4, !tbaa !9
  %401 = load ptr, ptr %6, align 8, !tbaa !5
  %402 = getelementptr inbounds %struct.w2c_hermes, ptr %401, i32 0, i32 6
  %403 = load i32, ptr %46, align 4, !tbaa !9
  %404 = zext i32 %403 to i64
  %405 = add i64 %404, 8
  %406 = call i32 @i32_load(ptr noundef %402, i64 noundef %405)
  store i32 %406, ptr %46, align 4, !tbaa !9
  %407 = load i32, ptr %46, align 4, !tbaa !9
  %408 = load i32, ptr %45, align 4, !tbaa !9
  %409 = add i32 %408, %407
  store i32 %409, ptr %45, align 4, !tbaa !9
  %410 = load ptr, ptr %6, align 8, !tbaa !5
  %411 = load i32, ptr %42, align 4, !tbaa !9
  %412 = load i32, ptr %43, align 4, !tbaa !9
  %413 = load i32, ptr %44, align 4, !tbaa !9
  %414 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Aenable_if0x3C_0x5Fis_cpp17_forward_iterator0x3Cunsigned0x20char0x20const0x2A0x3E0x3A0x3Avalue0x200x260x260x20is_constructible0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aiterator_traits0x3Cunsigned0x20char0x20const0x2A0x3E0x3A0x3Areference0x3E0x3A0x3Avalue0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cunsigned0x20char0x2A0x3E0x3E0x3A0x3Atype0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x3A0x3Ainsert0x3Cunsigned0x20char0x20const0x2A0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cunsigned0x20char0x20const0x2A0x3E0x2C0x20unsigned0x20char0x20const0x2A0x2C0x20unsigned0x20char0x20const0x2A0x29(ptr noundef %410, i32 noundef %411, i32 noundef %412, i32 noundef %413, i32 noundef %414)
  %415 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %415, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %416 = load i32, ptr %43, align 4, !tbaa !9
  %417 = load i32, ptr %42, align 4, !tbaa !9
  %418 = add i32 %417, %416
  store i32 %418, ptr %42, align 4, !tbaa !9
  %419 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %419, ptr %10, align 4, !tbaa !9
  %420 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %420, ptr %43, align 4, !tbaa !9
  %421 = load i32, ptr %42, align 4, !tbaa !9
  %422 = load i32, ptr %43, align 4, !tbaa !9
  %423 = icmp ne i32 %421, %422
  %424 = zext i1 %423 to i32
  store i32 %424, ptr %42, align 4, !tbaa !9
  %425 = load i32, ptr %42, align 4, !tbaa !9
  %426 = icmp ne i32 %425, 0
  br i1 %426, label %427, label %428

427:                                              ; preds = %360
  br label %360

428:                                              ; preds = %360
  br label %429

429:                                              ; preds = %428, %273
  %430 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %430, ptr %42, align 4, !tbaa !9
  %431 = load ptr, ptr %6, align 8, !tbaa !5
  %432 = getelementptr inbounds %struct.w2c_hermes, ptr %431, i32 0, i32 6
  %433 = load i32, ptr %42, align 4, !tbaa !9
  %434 = zext i32 %433 to i64
  %435 = call i32 @i32_load(ptr noundef %432, i64 noundef %434)
  store i32 %435, ptr %42, align 4, !tbaa !9
  %436 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %436, ptr %10, align 4, !tbaa !9
  %437 = load i32, ptr %42, align 4, !tbaa !9
  %438 = icmp ne i32 %437, 0
  br i1 %438, label %439, label %451

439:                                              ; preds = %429
  %440 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %440, ptr %42, align 4, !tbaa !9
  %441 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %441, ptr %43, align 4, !tbaa !9
  %442 = load ptr, ptr %6, align 8, !tbaa !5
  %443 = getelementptr inbounds %struct.w2c_hermes, ptr %442, i32 0, i32 6
  %444 = load i32, ptr %42, align 4, !tbaa !9
  %445 = zext i32 %444 to i64
  %446 = add i64 %445, 4
  %447 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %443, i64 noundef %446, i32 noundef %447)
  %448 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %448, ptr %42, align 4, !tbaa !9
  %449 = load ptr, ptr %6, align 8, !tbaa !5
  %450 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %449, i32 noundef %450)
  br label %451

451:                                              ; preds = %439, %429
  %452 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %452, ptr %42, align 4, !tbaa !9
  %453 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %453, ptr %43, align 4, !tbaa !9
  %454 = load ptr, ptr %6, align 8, !tbaa !5
  %455 = getelementptr inbounds %struct.w2c_hermes, ptr %454, i32 0, i32 6
  %456 = load i32, ptr %43, align 4, !tbaa !9
  %457 = zext i32 %456 to i64
  %458 = add i64 %457, 16
  %459 = call i32 @i32_load(ptr noundef %455, i64 noundef %458)
  store i32 %459, ptr %43, align 4, !tbaa !9
  %460 = load ptr, ptr %6, align 8, !tbaa !5
  %461 = getelementptr inbounds %struct.w2c_hermes, ptr %460, i32 0, i32 6
  %462 = load i32, ptr %42, align 4, !tbaa !9
  %463 = zext i32 %462 to i64
  %464 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %461, i64 noundef %463, i32 noundef %464)
  %465 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %465, ptr %42, align 4, !tbaa !9
  %466 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %466, ptr %43, align 4, !tbaa !9
  %467 = load ptr, ptr %6, align 8, !tbaa !5
  %468 = getelementptr inbounds %struct.w2c_hermes, ptr %467, i32 0, i32 6
  %469 = load i32, ptr %43, align 4, !tbaa !9
  %470 = zext i32 %469 to i64
  %471 = add i64 %470, 20
  %472 = call i32 @i32_load(ptr noundef %468, i64 noundef %471)
  store i32 %472, ptr %43, align 4, !tbaa !9
  %473 = load ptr, ptr %6, align 8, !tbaa !5
  %474 = getelementptr inbounds %struct.w2c_hermes, ptr %473, i32 0, i32 6
  %475 = load i32, ptr %42, align 4, !tbaa !9
  %476 = zext i32 %475 to i64
  %477 = add i64 %476, 4
  %478 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %474, i64 noundef %477, i32 noundef %478)
  %479 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %479, ptr %42, align 4, !tbaa !9
  %480 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %480, ptr %43, align 4, !tbaa !9
  %481 = load ptr, ptr %6, align 8, !tbaa !5
  %482 = getelementptr inbounds %struct.w2c_hermes, ptr %481, i32 0, i32 6
  %483 = load i32, ptr %43, align 4, !tbaa !9
  %484 = zext i32 %483 to i64
  %485 = add i64 %484, 24
  %486 = call i32 @i32_load(ptr noundef %482, i64 noundef %485)
  store i32 %486, ptr %43, align 4, !tbaa !9
  %487 = load ptr, ptr %6, align 8, !tbaa !5
  %488 = getelementptr inbounds %struct.w2c_hermes, ptr %487, i32 0, i32 6
  %489 = load i32, ptr %42, align 4, !tbaa !9
  %490 = zext i32 %489 to i64
  %491 = add i64 %490, 8
  %492 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %488, i64 noundef %491, i32 noundef %492)
  %493 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %493, ptr %42, align 4, !tbaa !9
  %494 = load ptr, ptr %6, align 8, !tbaa !5
  %495 = getelementptr inbounds %struct.w2c_hermes, ptr %494, i32 0, i32 6
  %496 = load i32, ptr %42, align 4, !tbaa !9
  %497 = zext i32 %496 to i64
  %498 = add i64 %497, 40
  %499 = call i32 @i32_load(ptr noundef %495, i64 noundef %498)
  store i32 %499, ptr %42, align 4, !tbaa !9
  %500 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %500, ptr %8, align 4, !tbaa !9
  %501 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %501, ptr %42, align 4, !tbaa !9
  %502 = load ptr, ptr %6, align 8, !tbaa !5
  %503 = getelementptr inbounds %struct.w2c_hermes, ptr %502, i32 0, i32 6
  %504 = load i32, ptr %42, align 4, !tbaa !9
  %505 = zext i32 %504 to i64
  %506 = add i64 %505, 36
  %507 = call i32 @i32_load(ptr noundef %503, i64 noundef %506)
  store i32 %507, ptr %42, align 4, !tbaa !9
  %508 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %508, ptr %10, align 4, !tbaa !9
  %509 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %509, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %510 = load ptr, ptr %6, align 8, !tbaa !5
  %511 = getelementptr inbounds %struct.w2c_hermes, ptr %510, i32 0, i32 6
  %512 = load i32, ptr %42, align 4, !tbaa !9
  %513 = zext i32 %512 to i64
  %514 = add i64 %513, 24
  %515 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %511, i64 noundef %514, i32 noundef %515)
  %516 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %516, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %517 = load ptr, ptr %6, align 8, !tbaa !5
  %518 = getelementptr inbounds %struct.w2c_hermes, ptr %517, i32 0, i32 6
  %519 = load i32, ptr %42, align 4, !tbaa !9
  %520 = zext i32 %519 to i64
  %521 = add i64 %520, 16
  %522 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %518, i64 noundef %521, i64 noundef %522)
  %523 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %523, ptr %42, align 4, !tbaa !9
  %524 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %524, ptr %43, align 4, !tbaa !9
  %525 = load i32, ptr %42, align 4, !tbaa !9
  %526 = load i32, ptr %43, align 4, !tbaa !9
  %527 = icmp ne i32 %525, %526
  %528 = zext i1 %527 to i32
  store i32 %528, ptr %42, align 4, !tbaa !9
  %529 = load i32, ptr %42, align 4, !tbaa !9
  %530 = icmp ne i32 %529, 0
  br i1 %530, label %531, label %656

531:                                              ; preds = %451
  %532 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %532, ptr %42, align 4, !tbaa !9
  %533 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %533, ptr %43, align 4, !tbaa !9
  %534 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %534, ptr %44, align 4, !tbaa !9
  %535 = load i32, ptr %44, align 4, !tbaa !9
  %536 = load i32, ptr %43, align 4, !tbaa !9
  %537 = sub i32 %536, %535
  store i32 %537, ptr %43, align 4, !tbaa !9
  store i32 52, ptr %44, align 4, !tbaa !9
  %538 = load i32, ptr %44, align 4, !tbaa !9
  %539 = icmp eq i32 %538, 0
  %540 = xor i1 %539, true
  %541 = xor i1 %540, true
  %542 = zext i1 %541 to i32
  %543 = sext i32 %542 to i64
  %544 = call i64 @llvm.expect.i64(i64 %543, i64 0)
  %545 = icmp ne i64 %544, 0
  br i1 %545, label %546, label %548

546:                                              ; preds = %531
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

547:                                              ; No predecessors!
  br label %570

548:                                              ; preds = %531
  %549 = load i32, ptr %43, align 4, !tbaa !9
  %550 = icmp eq i32 %549, -2147483648
  br i1 %550, label %551, label %554

551:                                              ; preds = %548
  %552 = load i32, ptr %44, align 4, !tbaa !9
  %553 = icmp eq i32 %552, -1
  br label %554

554:                                              ; preds = %551, %548
  %555 = phi i1 [ false, %548 ], [ %553, %551 ]
  %556 = xor i1 %555, true
  %557 = xor i1 %556, true
  %558 = zext i1 %557 to i32
  %559 = sext i32 %558 to i64
  %560 = call i64 @llvm.expect.i64(i64 %559, i64 0)
  %561 = icmp ne i64 %560, 0
  br i1 %561, label %562, label %564

562:                                              ; preds = %554
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

563:                                              ; No predecessors!
  br label %568

564:                                              ; preds = %554
  %565 = load i32, ptr %43, align 4, !tbaa !9
  %566 = load i32, ptr %44, align 4, !tbaa !9
  %567 = sdiv i32 %565, %566
  br label %568

568:                                              ; preds = %564, %563
  %569 = phi i32 [ 0, %563 ], [ %567, %564 ]
  br label %570

570:                                              ; preds = %568, %547
  %571 = phi i32 [ 0, %547 ], [ %569, %568 ]
  store i32 %571, ptr %43, align 4, !tbaa !9
  store i32 52, ptr %44, align 4, !tbaa !9
  %572 = load i32, ptr %44, align 4, !tbaa !9
  %573 = load i32, ptr %43, align 4, !tbaa !9
  %574 = mul i32 %573, %572
  store i32 %574, ptr %43, align 4, !tbaa !9
  %575 = load i32, ptr %43, align 4, !tbaa !9
  %576 = load i32, ptr %42, align 4, !tbaa !9
  %577 = add i32 %576, %575
  store i32 %577, ptr %42, align 4, !tbaa !9
  %578 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %578, ptr %8, align 4, !tbaa !9
  br label %579

579:                                              ; preds = %654, %570
  %580 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %580, ptr %42, align 4, !tbaa !9
  %581 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %581, ptr %43, align 4, !tbaa !9
  %582 = load ptr, ptr %6, align 8, !tbaa !5
  %583 = getelementptr inbounds %struct.w2c_hermes, ptr %582, i32 0, i32 6
  %584 = load i32, ptr %43, align 4, !tbaa !9
  %585 = zext i32 %584 to i64
  %586 = add i64 %585, 20
  %587 = call i32 @i32_load(ptr noundef %583, i64 noundef %586)
  store i32 %587, ptr %43, align 4, !tbaa !9
  %588 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %588, ptr %7, align 4, !tbaa !9
  %589 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %589, ptr %44, align 4, !tbaa !9
  %590 = load ptr, ptr %6, align 8, !tbaa !5
  %591 = getelementptr inbounds %struct.w2c_hermes, ptr %590, i32 0, i32 6
  %592 = load i32, ptr %44, align 4, !tbaa !9
  %593 = zext i32 %592 to i64
  %594 = add i64 %593, 16
  %595 = call i32 @i32_load(ptr noundef %591, i64 noundef %594)
  store i32 %595, ptr %44, align 4, !tbaa !9
  %596 = load i32, ptr %44, align 4, !tbaa !9
  %597 = load i32, ptr %43, align 4, !tbaa !9
  %598 = sub i32 %597, %596
  store i32 %598, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %599 = load i32, ptr %43, align 4, !tbaa !9
  %600 = load i32, ptr %44, align 4, !tbaa !9
  %601 = and i32 %600, 31
  %602 = ashr i32 %599, %601
  store i32 %602, ptr %43, align 4, !tbaa !9
  %603 = load ptr, ptr %6, align 8, !tbaa !5
  %604 = getelementptr inbounds %struct.w2c_hermes, ptr %603, i32 0, i32 6
  %605 = load i32, ptr %42, align 4, !tbaa !9
  %606 = zext i32 %605 to i64
  %607 = add i64 %606, 12
  %608 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %604, i64 noundef %607, i32 noundef %608)
  %609 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %609, ptr %42, align 4, !tbaa !9
  store i32 16, ptr %43, align 4, !tbaa !9
  %610 = load i32, ptr %43, align 4, !tbaa !9
  %611 = load i32, ptr %42, align 4, !tbaa !9
  %612 = add i32 %611, %610
  store i32 %612, ptr %42, align 4, !tbaa !9
  %613 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %613, ptr %43, align 4, !tbaa !9
  %614 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %614, ptr %44, align 4, !tbaa !9
  %615 = load ptr, ptr %6, align 8, !tbaa !5
  %616 = getelementptr inbounds %struct.w2c_hermes, ptr %615, i32 0, i32 6
  %617 = load i32, ptr %44, align 4, !tbaa !9
  %618 = zext i32 %617 to i64
  %619 = add i64 %618, 4
  %620 = call i32 @i32_load(ptr noundef %616, i64 noundef %619)
  store i32 %620, ptr %44, align 4, !tbaa !9
  %621 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %621, ptr %7, align 4, !tbaa !9
  %622 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %622, ptr %45, align 4, !tbaa !9
  %623 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %623, ptr %46, align 4, !tbaa !9
  %624 = load ptr, ptr %6, align 8, !tbaa !5
  %625 = getelementptr inbounds %struct.w2c_hermes, ptr %624, i32 0, i32 6
  %626 = load i32, ptr %46, align 4, !tbaa !9
  %627 = zext i32 %626 to i64
  %628 = add i64 %627, 8
  %629 = call i32 @i32_load(ptr noundef %625, i64 noundef %628)
  store i32 %629, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %630 = load i32, ptr %47, align 4, !tbaa !9
  %631 = and i32 %630, 31
  %632 = load i32, ptr %46, align 4, !tbaa !9
  %633 = shl i32 %632, %631
  store i32 %633, ptr %46, align 4, !tbaa !9
  %634 = load i32, ptr %46, align 4, !tbaa !9
  %635 = load i32, ptr %45, align 4, !tbaa !9
  %636 = add i32 %635, %634
  store i32 %636, ptr %45, align 4, !tbaa !9
  %637 = load ptr, ptr %6, align 8, !tbaa !5
  %638 = load i32, ptr %42, align 4, !tbaa !9
  %639 = load i32, ptr %43, align 4, !tbaa !9
  %640 = load i32, ptr %44, align 4, !tbaa !9
  %641 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Aenable_if0x3C_0x5Fis_cpp17_forward_iterator0x3Cchar16_t0x20const0x2A0x3E0x3A0x3Avalue0x200x260x260x20is_constructible0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aiterator_traits0x3Cchar16_t0x20const0x2A0x3E0x3A0x3Areference0x3E0x3A0x3Avalue0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cchar16_t0x2A0x3E0x3E0x3A0x3Atype0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x3A0x3Ainsert0x3Cchar16_t0x20const0x2A0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cchar16_t0x20const0x2A0x3E0x2C0x20char16_t0x20const0x2A0x2C0x20char16_t0x20const0x2A0x29(ptr noundef %637, i32 noundef %638, i32 noundef %639, i32 noundef %640, i32 noundef %641)
  %642 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %642, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %643 = load i32, ptr %43, align 4, !tbaa !9
  %644 = load i32, ptr %42, align 4, !tbaa !9
  %645 = add i32 %644, %643
  store i32 %645, ptr %42, align 4, !tbaa !9
  %646 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %646, ptr %10, align 4, !tbaa !9
  %647 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %647, ptr %43, align 4, !tbaa !9
  %648 = load i32, ptr %42, align 4, !tbaa !9
  %649 = load i32, ptr %43, align 4, !tbaa !9
  %650 = icmp ne i32 %648, %649
  %651 = zext i1 %650 to i32
  store i32 %651, ptr %42, align 4, !tbaa !9
  %652 = load i32, ptr %42, align 4, !tbaa !9
  %653 = icmp ne i32 %652, 0
  br i1 %653, label %654, label %655

654:                                              ; preds = %579
  br label %579

655:                                              ; preds = %579
  br label %656

656:                                              ; preds = %655, %451
  %657 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %657, ptr %42, align 4, !tbaa !9
  %658 = load ptr, ptr %6, align 8, !tbaa !5
  %659 = getelementptr inbounds %struct.w2c_hermes, ptr %658, i32 0, i32 6
  %660 = load i32, ptr %42, align 4, !tbaa !9
  %661 = zext i32 %660 to i64
  %662 = call i32 @i32_load(ptr noundef %659, i64 noundef %661)
  store i32 %662, ptr %42, align 4, !tbaa !9
  %663 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %663, ptr %7, align 4, !tbaa !9
  %664 = load i32, ptr %42, align 4, !tbaa !9
  %665 = icmp ne i32 %664, 0
  br i1 %665, label %666, label %678

666:                                              ; preds = %656
  %667 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %667, ptr %42, align 4, !tbaa !9
  %668 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %668, ptr %43, align 4, !tbaa !9
  %669 = load ptr, ptr %6, align 8, !tbaa !5
  %670 = getelementptr inbounds %struct.w2c_hermes, ptr %669, i32 0, i32 6
  %671 = load i32, ptr %42, align 4, !tbaa !9
  %672 = zext i32 %671 to i64
  %673 = add i64 %672, 4
  %674 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %670, i64 noundef %673, i32 noundef %674)
  %675 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %675, ptr %42, align 4, !tbaa !9
  %676 = load ptr, ptr %6, align 8, !tbaa !5
  %677 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %676, i32 noundef %677)
  br label %678

678:                                              ; preds = %666, %656
  %679 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %679, ptr %42, align 4, !tbaa !9
  %680 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %680, ptr %43, align 4, !tbaa !9
  %681 = load ptr, ptr %6, align 8, !tbaa !5
  %682 = getelementptr inbounds %struct.w2c_hermes, ptr %681, i32 0, i32 6
  %683 = load i32, ptr %43, align 4, !tbaa !9
  %684 = zext i32 %683 to i64
  %685 = add i64 %684, 16
  %686 = call i32 @i32_load(ptr noundef %682, i64 noundef %685)
  store i32 %686, ptr %43, align 4, !tbaa !9
  %687 = load ptr, ptr %6, align 8, !tbaa !5
  %688 = getelementptr inbounds %struct.w2c_hermes, ptr %687, i32 0, i32 6
  %689 = load i32, ptr %42, align 4, !tbaa !9
  %690 = zext i32 %689 to i64
  %691 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %688, i64 noundef %690, i32 noundef %691)
  %692 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %692, ptr %42, align 4, !tbaa !9
  %693 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %693, ptr %43, align 4, !tbaa !9
  %694 = load ptr, ptr %6, align 8, !tbaa !5
  %695 = getelementptr inbounds %struct.w2c_hermes, ptr %694, i32 0, i32 6
  %696 = load i32, ptr %43, align 4, !tbaa !9
  %697 = zext i32 %696 to i64
  %698 = add i64 %697, 20
  %699 = call i32 @i32_load(ptr noundef %695, i64 noundef %698)
  store i32 %699, ptr %43, align 4, !tbaa !9
  %700 = load ptr, ptr %6, align 8, !tbaa !5
  %701 = getelementptr inbounds %struct.w2c_hermes, ptr %700, i32 0, i32 6
  %702 = load i32, ptr %42, align 4, !tbaa !9
  %703 = zext i32 %702 to i64
  %704 = add i64 %703, 4
  %705 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %701, i64 noundef %704, i32 noundef %705)
  %706 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %706, ptr %42, align 4, !tbaa !9
  %707 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %707, ptr %43, align 4, !tbaa !9
  %708 = load ptr, ptr %6, align 8, !tbaa !5
  %709 = getelementptr inbounds %struct.w2c_hermes, ptr %708, i32 0, i32 6
  %710 = load i32, ptr %43, align 4, !tbaa !9
  %711 = zext i32 %710 to i64
  %712 = add i64 %711, 24
  %713 = call i32 @i32_load(ptr noundef %709, i64 noundef %712)
  store i32 %713, ptr %43, align 4, !tbaa !9
  %714 = load ptr, ptr %6, align 8, !tbaa !5
  %715 = getelementptr inbounds %struct.w2c_hermes, ptr %714, i32 0, i32 6
  %716 = load i32, ptr %42, align 4, !tbaa !9
  %717 = zext i32 %716 to i64
  %718 = add i64 %717, 8
  %719 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %715, i64 noundef %718, i32 noundef %719)
  br label %15468

720:                                              ; preds = %269, %150
  %721 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %721, ptr %42, align 4, !tbaa !9
  %722 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %722, ptr %43, align 4, !tbaa !9
  store i32 52, ptr %44, align 4, !tbaa !9
  %723 = load i32, ptr %44, align 4, !tbaa !9
  %724 = load i32, ptr %43, align 4, !tbaa !9
  %725 = mul i32 %724, %723
  store i32 %725, ptr %43, align 4, !tbaa !9
  %726 = load i32, ptr %43, align 4, !tbaa !9
  %727 = load i32, ptr %42, align 4, !tbaa !9
  %728 = add i32 %727, %726
  store i32 %728, ptr %42, align 4, !tbaa !9
  %729 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %729, ptr %38, align 4, !tbaa !9
  %730 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %730, ptr %42, align 4, !tbaa !9
  %731 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %731, ptr %10, align 4, !tbaa !9
  br label %732

732:                                              ; preds = %1613, %720
  %733 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %733, ptr %42, align 4, !tbaa !9
  %734 = load ptr, ptr %6, align 8, !tbaa !5
  %735 = getelementptr inbounds %struct.w2c_hermes, ptr %734, i32 0, i32 6
  %736 = load i32, ptr %42, align 4, !tbaa !9
  %737 = zext i32 %736 to i64
  %738 = add i64 %737, 8
  %739 = call i32 @i32_load(ptr noundef %735, i64 noundef %738)
  store i32 %739, ptr %42, align 4, !tbaa !9
  store i32 3, ptr %43, align 4, !tbaa !9
  %740 = load i32, ptr %42, align 4, !tbaa !9
  %741 = load i32, ptr %43, align 4, !tbaa !9
  %742 = icmp ult i32 %740, %741
  %743 = zext i1 %742 to i32
  store i32 %743, ptr %42, align 4, !tbaa !9
  %744 = load i32, ptr %42, align 4, !tbaa !9
  %745 = icmp ne i32 %744, 0
  br i1 %745, label %746, label %747

746:                                              ; preds = %732
  br label %1600

747:                                              ; preds = %732
  %748 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %748, ptr %42, align 4, !tbaa !9
  %749 = load ptr, ptr %6, align 8, !tbaa !5
  %750 = getelementptr inbounds %struct.w2c_hermes, ptr %749, i32 0, i32 6
  %751 = load i32, ptr %42, align 4, !tbaa !9
  %752 = zext i32 %751 to i64
  %753 = add i64 %752, 4
  %754 = call i32 @i32_load(ptr noundef %750, i64 noundef %753)
  store i32 %754, ptr %42, align 4, !tbaa !9
  %755 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %755, ptr %11, align 4, !tbaa !9
  %756 = load ptr, ptr %6, align 8, !tbaa !5
  %757 = getelementptr inbounds %struct.w2c_hermes, ptr %756, i32 0, i32 6
  %758 = load i32, ptr %42, align 4, !tbaa !9
  %759 = zext i32 %758 to i64
  %760 = add i64 %759, 1
  %761 = call i32 @i32_load8_u(ptr noundef %757, i64 noundef %760)
  store i32 %761, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %762 = load i32, ptr %43, align 4, !tbaa !9
  %763 = and i32 %762, 31
  %764 = load i32, ptr %42, align 4, !tbaa !9
  %765 = shl i32 %764, %763
  store i32 %765, ptr %42, align 4, !tbaa !9
  %766 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %766, ptr %43, align 4, !tbaa !9
  %767 = load ptr, ptr %6, align 8, !tbaa !5
  %768 = getelementptr inbounds %struct.w2c_hermes, ptr %767, i32 0, i32 6
  %769 = load i32, ptr %43, align 4, !tbaa !9
  %770 = zext i32 %769 to i64
  %771 = call i32 @i32_load8_u(ptr noundef %768, i64 noundef %770)
  store i32 %771, ptr %43, align 4, !tbaa !9
  store i32 16, ptr %44, align 4, !tbaa !9
  %772 = load i32, ptr %44, align 4, !tbaa !9
  %773 = and i32 %772, 31
  %774 = load i32, ptr %43, align 4, !tbaa !9
  %775 = shl i32 %774, %773
  store i32 %775, ptr %43, align 4, !tbaa !9
  %776 = load i32, ptr %43, align 4, !tbaa !9
  %777 = load i32, ptr %42, align 4, !tbaa !9
  %778 = or i32 %777, %776
  store i32 %778, ptr %42, align 4, !tbaa !9
  %779 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %779, ptr %43, align 4, !tbaa !9
  %780 = load ptr, ptr %6, align 8, !tbaa !5
  %781 = getelementptr inbounds %struct.w2c_hermes, ptr %780, i32 0, i32 6
  %782 = load i32, ptr %43, align 4, !tbaa !9
  %783 = zext i32 %782 to i64
  %784 = add i64 %783, 2
  %785 = call i32 @i32_load8_u(ptr noundef %781, i64 noundef %784)
  store i32 %785, ptr %43, align 4, !tbaa !9
  %786 = load i32, ptr %43, align 4, !tbaa !9
  %787 = load i32, ptr %42, align 4, !tbaa !9
  %788 = or i32 %787, %786
  store i32 %788, ptr %42, align 4, !tbaa !9
  %789 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %789, ptr %27, align 4, !tbaa !9
  %790 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %790, ptr %42, align 4, !tbaa !9
  %791 = load ptr, ptr %6, align 8, !tbaa !5
  %792 = getelementptr inbounds %struct.w2c_hermes, ptr %791, i32 0, i32 6
  %793 = load i32, ptr %42, align 4, !tbaa !9
  %794 = zext i32 %793 to i64
  %795 = add i64 %794, 28
  %796 = call i32 @i32_load(ptr noundef %792, i64 noundef %795)
  store i32 %796, ptr %42, align 4, !tbaa !9
  %797 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %797, ptr %11, align 4, !tbaa !9
  %798 = load i32, ptr %42, align 4, !tbaa !9
  %799 = icmp ne i32 %798, 0
  %800 = xor i1 %799, true
  %801 = zext i1 %800 to i32
  store i32 %801, ptr %42, align 4, !tbaa !9
  %802 = load i32, ptr %42, align 4, !tbaa !9
  %803 = icmp ne i32 %802, 0
  br i1 %803, label %804, label %806

804:                                              ; preds = %747
  store i32 0, ptr %42, align 4, !tbaa !9
  %805 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %805, ptr %13, align 4, !tbaa !9
  br label %935

806:                                              ; preds = %747
  %807 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %807, ptr %42, align 4, !tbaa !9
  %808 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %808, ptr %43, align 4, !tbaa !9
  %809 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %809, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %810 = load i32, ptr %45, align 4, !tbaa !9
  %811 = load i32, ptr %44, align 4, !tbaa !9
  %812 = sub i32 %811, %810
  store i32 %812, ptr %44, align 4, !tbaa !9
  %813 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %813, ptr %15, align 4, !tbaa !9
  %814 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %814, ptr %45, align 4, !tbaa !9
  store i32 37, ptr %46, align 4, !tbaa !9
  %815 = load i32, ptr %46, align 4, !tbaa !9
  %816 = load i32, ptr %45, align 4, !tbaa !9
  %817 = mul i32 %816, %815
  store i32 %817, ptr %45, align 4, !tbaa !9
  %818 = load i32, ptr %45, align 4, !tbaa !9
  %819 = load i32, ptr %44, align 4, !tbaa !9
  %820 = and i32 %819, %818
  store i32 %820, ptr %44, align 4, !tbaa !9
  %821 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %821, ptr %25, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %822 = load i32, ptr %45, align 4, !tbaa !9
  %823 = and i32 %822, 31
  %824 = load i32, ptr %44, align 4, !tbaa !9
  %825 = shl i32 %824, %823
  store i32 %825, ptr %44, align 4, !tbaa !9
  %826 = load i32, ptr %44, align 4, !tbaa !9
  %827 = load i32, ptr %43, align 4, !tbaa !9
  %828 = add i32 %827, %826
  store i32 %828, ptr %43, align 4, !tbaa !9
  %829 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %829, ptr %16, align 4, !tbaa !9
  %830 = load ptr, ptr %6, align 8, !tbaa !5
  %831 = getelementptr inbounds %struct.w2c_hermes, ptr %830, i32 0, i32 6
  %832 = load i32, ptr %43, align 4, !tbaa !9
  %833 = zext i32 %832 to i64
  %834 = call i32 @i32_load(ptr noundef %831, i64 noundef %833)
  store i32 %834, ptr %43, align 4, !tbaa !9
  %835 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %835, ptr %13, align 4, !tbaa !9
  %836 = load i32, ptr %42, align 4, !tbaa !9
  %837 = load i32, ptr %43, align 4, !tbaa !9
  %838 = icmp eq i32 %836, %837
  %839 = zext i1 %838 to i32
  store i32 %839, ptr %42, align 4, !tbaa !9
  %840 = load i32, ptr %42, align 4, !tbaa !9
  %841 = icmp ne i32 %840, 0
  br i1 %841, label %842, label %843

842:                                              ; preds = %806
  br label %1600

843:                                              ; preds = %806
  store i32 0, ptr %42, align 4, !tbaa !9
  %844 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %844, ptr %26, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %845 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %845, ptr %21, align 4, !tbaa !9
  br label %846

846:                                              ; preds = %933, %843
  %847 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %847, ptr %42, align 4, !tbaa !9
  store i32 -1, ptr %43, align 4, !tbaa !9
  %848 = load i32, ptr %42, align 4, !tbaa !9
  %849 = load i32, ptr %43, align 4, !tbaa !9
  %850 = icmp eq i32 %848, %849
  %851 = zext i1 %850 to i32
  store i32 %851, ptr %42, align 4, !tbaa !9
  %852 = load i32, ptr %42, align 4, !tbaa !9
  %853 = icmp ne i32 %852, 0
  br i1 %853, label %854, label %867

854:                                              ; preds = %846
  %855 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %855, ptr %42, align 4, !tbaa !9
  %856 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %856, ptr %43, align 4, !tbaa !9
  %857 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %857, ptr %44, align 4, !tbaa !9
  %858 = load i32, ptr %44, align 4, !tbaa !9
  %859 = icmp ne i32 %858, 0
  br i1 %859, label %860, label %862

860:                                              ; preds = %854
  %861 = load i32, ptr %42, align 4, !tbaa !9
  br label %864

862:                                              ; preds = %854
  %863 = load i32, ptr %43, align 4, !tbaa !9
  br label %864

864:                                              ; preds = %862, %860
  %865 = phi i32 [ %861, %860 ], [ %863, %862 ]
  store i32 %865, ptr %42, align 4, !tbaa !9
  %866 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %866, ptr %13, align 4, !tbaa !9
  br label %935

867:                                              ; preds = %846
  %868 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %868, ptr %42, align 4, !tbaa !9
  %869 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %869, ptr %43, align 4, !tbaa !9
  %870 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %870, ptr %44, align 4, !tbaa !9
  %871 = load i32, ptr %44, align 4, !tbaa !9
  %872 = icmp ne i32 %871, 0
  br i1 %872, label %873, label %875

873:                                              ; preds = %867
  %874 = load i32, ptr %42, align 4, !tbaa !9
  br label %877

875:                                              ; preds = %867
  %876 = load i32, ptr %43, align 4, !tbaa !9
  br label %877

877:                                              ; preds = %875, %873
  %878 = phi i32 [ %874, %873 ], [ %876, %875 ]
  store i32 %878, ptr %42, align 4, !tbaa !9
  %879 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %879, ptr %43, align 4, !tbaa !9
  %880 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %880, ptr %44, align 4, !tbaa !9
  store i32 -2, ptr %45, align 4, !tbaa !9
  %881 = load i32, ptr %44, align 4, !tbaa !9
  %882 = load i32, ptr %45, align 4, !tbaa !9
  %883 = icmp eq i32 %881, %882
  %884 = zext i1 %883 to i32
  store i32 %884, ptr %44, align 4, !tbaa !9
  %885 = load i32, ptr %44, align 4, !tbaa !9
  %886 = icmp ne i32 %885, 0
  br i1 %886, label %887, label %889

887:                                              ; preds = %877
  %888 = load i32, ptr %42, align 4, !tbaa !9
  br label %891

889:                                              ; preds = %877
  %890 = load i32, ptr %43, align 4, !tbaa !9
  br label %891

891:                                              ; preds = %889, %887
  %892 = phi i32 [ %888, %887 ], [ %890, %889 ]
  store i32 %892, ptr %42, align 4, !tbaa !9
  %893 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %893, ptr %26, align 4, !tbaa !9
  %894 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %894, ptr %42, align 4, !tbaa !9
  %895 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %895, ptr %43, align 4, !tbaa !9
  %896 = load i32, ptr %43, align 4, !tbaa !9
  %897 = load i32, ptr %42, align 4, !tbaa !9
  %898 = add i32 %897, %896
  store i32 %898, ptr %42, align 4, !tbaa !9
  %899 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %899, ptr %12, align 4, !tbaa !9
  %900 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %900, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %901 = load i32, ptr %43, align 4, !tbaa !9
  %902 = load i32, ptr %42, align 4, !tbaa !9
  %903 = add i32 %902, %901
  store i32 %903, ptr %42, align 4, !tbaa !9
  %904 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %904, ptr %21, align 4, !tbaa !9
  %905 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %905, ptr %42, align 4, !tbaa !9
  %906 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %906, ptr %43, align 4, !tbaa !9
  %907 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %907, ptr %44, align 4, !tbaa !9
  %908 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %908, ptr %45, align 4, !tbaa !9
  %909 = load i32, ptr %45, align 4, !tbaa !9
  %910 = load i32, ptr %44, align 4, !tbaa !9
  %911 = and i32 %910, %909
  store i32 %911, ptr %44, align 4, !tbaa !9
  %912 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %912, ptr %25, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %913 = load i32, ptr %45, align 4, !tbaa !9
  %914 = and i32 %913, 31
  %915 = load i32, ptr %44, align 4, !tbaa !9
  %916 = shl i32 %915, %914
  store i32 %916, ptr %44, align 4, !tbaa !9
  %917 = load i32, ptr %44, align 4, !tbaa !9
  %918 = load i32, ptr %43, align 4, !tbaa !9
  %919 = add i32 %918, %917
  store i32 %919, ptr %43, align 4, !tbaa !9
  %920 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %920, ptr %16, align 4, !tbaa !9
  %921 = load ptr, ptr %6, align 8, !tbaa !5
  %922 = getelementptr inbounds %struct.w2c_hermes, ptr %921, i32 0, i32 6
  %923 = load i32, ptr %43, align 4, !tbaa !9
  %924 = zext i32 %923 to i64
  %925 = call i32 @i32_load(ptr noundef %922, i64 noundef %924)
  store i32 %925, ptr %43, align 4, !tbaa !9
  %926 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %926, ptr %13, align 4, !tbaa !9
  %927 = load i32, ptr %42, align 4, !tbaa !9
  %928 = load i32, ptr %43, align 4, !tbaa !9
  %929 = icmp ne i32 %927, %928
  %930 = zext i1 %929 to i32
  store i32 %930, ptr %42, align 4, !tbaa !9
  %931 = load i32, ptr %42, align 4, !tbaa !9
  %932 = icmp ne i32 %931, 0
  br i1 %932, label %933, label %934

933:                                              ; preds = %891
  br label %846

934:                                              ; preds = %891
  br label %1600

935:                                              ; preds = %864, %804
  %936 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %936, ptr %42, align 4, !tbaa !9
  %937 = load ptr, ptr %6, align 8, !tbaa !5
  %938 = getelementptr inbounds %struct.w2c_hermes, ptr %937, i32 0, i32 6
  %939 = load i32, ptr %42, align 4, !tbaa !9
  %940 = zext i32 %939 to i64
  %941 = add i64 %940, 20
  %942 = call i32 @i32_load(ptr noundef %938, i64 noundef %941)
  store i32 %942, ptr %42, align 4, !tbaa !9
  %943 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %943, ptr %12, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %944 = load i32, ptr %43, align 4, !tbaa !9
  %945 = and i32 %944, 31
  %946 = load i32, ptr %42, align 4, !tbaa !9
  %947 = shl i32 %946, %945
  store i32 %947, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %948 = load i32, ptr %43, align 4, !tbaa !9
  %949 = load i32, ptr %42, align 4, !tbaa !9
  %950 = add i32 %949, %948
  store i32 %950, ptr %42, align 4, !tbaa !9
  %951 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %951, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %952 = load i32, ptr %44, align 4, !tbaa !9
  %953 = load i32, ptr %43, align 4, !tbaa !9
  %954 = mul i32 %953, %952
  store i32 %954, ptr %43, align 4, !tbaa !9
  %955 = load i32, ptr %42, align 4, !tbaa !9
  %956 = load i32, ptr %43, align 4, !tbaa !9
  %957 = icmp uge i32 %955, %956
  %958 = zext i1 %957 to i32
  store i32 %958, ptr %42, align 4, !tbaa !9
  %959 = load i32, ptr %42, align 4, !tbaa !9
  %960 = icmp ne i32 %959, 0
  br i1 %960, label %961, label %968

961:                                              ; preds = %935
  %962 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %962, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %963 = load i32, ptr %43, align 4, !tbaa !9
  %964 = and i32 %963, 31
  %965 = load i32, ptr %42, align 4, !tbaa !9
  %966 = shl i32 %965, %964
  store i32 %966, ptr %42, align 4, !tbaa !9
  %967 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %967, ptr %11, align 4, !tbaa !9
  br label %1000

968:                                              ; preds = %935
  %969 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %969, ptr %42, align 4, !tbaa !9
  %970 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %970, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %971 = load i32, ptr %44, align 4, !tbaa !9
  %972 = load i32, ptr %43, align 4, !tbaa !9
  %973 = xor i32 %972, %971
  store i32 %973, ptr %43, align 4, !tbaa !9
  %974 = load i32, ptr %43, align 4, !tbaa !9
  %975 = load i32, ptr %42, align 4, !tbaa !9
  %976 = add i32 %975, %974
  store i32 %976, ptr %42, align 4, !tbaa !9
  %977 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %977, ptr %43, align 4, !tbaa !9
  %978 = load ptr, ptr %6, align 8, !tbaa !5
  %979 = getelementptr inbounds %struct.w2c_hermes, ptr %978, i32 0, i32 6
  %980 = load i32, ptr %43, align 4, !tbaa !9
  %981 = zext i32 %980 to i64
  %982 = add i64 %981, 24
  %983 = call i32 @i32_load(ptr noundef %979, i64 noundef %982)
  store i32 %983, ptr %43, align 4, !tbaa !9
  %984 = load i32, ptr %43, align 4, !tbaa !9
  %985 = load i32, ptr %42, align 4, !tbaa !9
  %986 = sub i32 %985, %984
  store i32 %986, ptr %42, align 4, !tbaa !9
  %987 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %987, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %988 = load i32, ptr %44, align 4, !tbaa !9
  %989 = and i32 %988, 31
  %990 = load i32, ptr %43, align 4, !tbaa !9
  %991 = lshr i32 %990, %989
  store i32 %991, ptr %43, align 4, !tbaa !9
  %992 = load i32, ptr %42, align 4, !tbaa !9
  %993 = load i32, ptr %43, align 4, !tbaa !9
  %994 = icmp ugt i32 %992, %993
  %995 = zext i1 %994 to i32
  store i32 %995, ptr %42, align 4, !tbaa !9
  %996 = load i32, ptr %42, align 4, !tbaa !9
  %997 = icmp ne i32 %996, 0
  br i1 %997, label %998, label %999

998:                                              ; preds = %968
  br label %1544

999:                                              ; preds = %968
  br label %1000

1000:                                             ; preds = %999, %961
  store i32 0, ptr %42, align 4, !tbaa !9
  %1001 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1001, ptr %21, align 4, !tbaa !9
  %1002 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1002, ptr %42, align 4, !tbaa !9
  %1003 = load ptr, ptr %6, align 8, !tbaa !5
  %1004 = getelementptr inbounds %struct.w2c_hermes, ptr %1003, i32 0, i32 6
  %1005 = load i32, ptr %42, align 4, !tbaa !9
  %1006 = zext i32 %1005 to i64
  %1007 = add i64 %1006, 28
  %1008 = call i32 @i32_load(ptr noundef %1004, i64 noundef %1007)
  store i32 %1008, ptr %42, align 4, !tbaa !9
  %1009 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1009, ptr %15, align 4, !tbaa !9
  %1010 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1010, ptr %42, align 4, !tbaa !9
  store i32 64, ptr %43, align 4, !tbaa !9
  %1011 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1011, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %1012 = load i32, ptr %45, align 4, !tbaa !9
  %1013 = load i32, ptr %44, align 4, !tbaa !9
  %1014 = sub i32 %1013, %1012
  store i32 %1014, ptr %44, align 4, !tbaa !9
  %1015 = load i32, ptr %44, align 4, !tbaa !9
  %1016 = zext i32 %1015 to i64
  store i64 %1016, ptr %50, align 8, !tbaa !11
  %1017 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %1017, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %51, align 8, !tbaa !11
  %1018 = load i64, ptr %51, align 8, !tbaa !11
  %1019 = and i64 %1018, 63
  %1020 = load i64, ptr %50, align 8, !tbaa !11
  %1021 = lshr i64 %1020, %1019
  store i64 %1021, ptr %50, align 8, !tbaa !11
  %1022 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1022, ptr %51, align 8, !tbaa !11
  %1023 = load i64, ptr %51, align 8, !tbaa !11
  %1024 = load i64, ptr %50, align 8, !tbaa !11
  %1025 = or i64 %1024, %1023
  store i64 %1025, ptr %50, align 8, !tbaa !11
  %1026 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %1026, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %51, align 8, !tbaa !11
  %1027 = load i64, ptr %51, align 8, !tbaa !11
  %1028 = and i64 %1027, 63
  %1029 = load i64, ptr %50, align 8, !tbaa !11
  %1030 = lshr i64 %1029, %1028
  store i64 %1030, ptr %50, align 8, !tbaa !11
  %1031 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1031, ptr %51, align 8, !tbaa !11
  %1032 = load i64, ptr %51, align 8, !tbaa !11
  %1033 = load i64, ptr %50, align 8, !tbaa !11
  %1034 = or i64 %1033, %1032
  store i64 %1034, ptr %50, align 8, !tbaa !11
  %1035 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %1035, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %51, align 8, !tbaa !11
  %1036 = load i64, ptr %51, align 8, !tbaa !11
  %1037 = and i64 %1036, 63
  %1038 = load i64, ptr %50, align 8, !tbaa !11
  %1039 = lshr i64 %1038, %1037
  store i64 %1039, ptr %50, align 8, !tbaa !11
  %1040 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1040, ptr %51, align 8, !tbaa !11
  %1041 = load i64, ptr %51, align 8, !tbaa !11
  %1042 = load i64, ptr %50, align 8, !tbaa !11
  %1043 = or i64 %1042, %1041
  store i64 %1043, ptr %50, align 8, !tbaa !11
  %1044 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %1044, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %51, align 8, !tbaa !11
  %1045 = load i64, ptr %51, align 8, !tbaa !11
  %1046 = and i64 %1045, 63
  %1047 = load i64, ptr %50, align 8, !tbaa !11
  %1048 = lshr i64 %1047, %1046
  store i64 %1048, ptr %50, align 8, !tbaa !11
  %1049 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1049, ptr %51, align 8, !tbaa !11
  %1050 = load i64, ptr %51, align 8, !tbaa !11
  %1051 = load i64, ptr %50, align 8, !tbaa !11
  %1052 = or i64 %1051, %1050
  store i64 %1052, ptr %50, align 8, !tbaa !11
  %1053 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %1053, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %51, align 8, !tbaa !11
  %1054 = load i64, ptr %51, align 8, !tbaa !11
  %1055 = and i64 %1054, 63
  %1056 = load i64, ptr %50, align 8, !tbaa !11
  %1057 = lshr i64 %1056, %1055
  store i64 %1057, ptr %50, align 8, !tbaa !11
  %1058 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1058, ptr %51, align 8, !tbaa !11
  %1059 = load i64, ptr %51, align 8, !tbaa !11
  %1060 = load i64, ptr %50, align 8, !tbaa !11
  %1061 = or i64 %1060, %1059
  store i64 %1061, ptr %50, align 8, !tbaa !11
  %1062 = load i64, ptr %50, align 8, !tbaa !11
  %1063 = trunc i64 %1062 to i32
  store i32 %1063, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %1064 = load i32, ptr %45, align 4, !tbaa !9
  %1065 = load i32, ptr %44, align 4, !tbaa !9
  %1066 = add i32 %1065, %1064
  store i32 %1066, ptr %44, align 4, !tbaa !9
  %1067 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %1067, ptr %11, align 4, !tbaa !9
  %1068 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1068, ptr %45, align 4, !tbaa !9
  store i32 64, ptr %46, align 4, !tbaa !9
  %1069 = load i32, ptr %45, align 4, !tbaa !9
  %1070 = load i32, ptr %46, align 4, !tbaa !9
  %1071 = icmp ule i32 %1069, %1070
  %1072 = zext i1 %1071 to i32
  store i32 %1072, ptr %45, align 4, !tbaa !9
  %1073 = load i32, ptr %45, align 4, !tbaa !9
  %1074 = icmp ne i32 %1073, 0
  br i1 %1074, label %1075, label %1077

1075:                                             ; preds = %1000
  %1076 = load i32, ptr %43, align 4, !tbaa !9
  br label %1079

1077:                                             ; preds = %1000
  %1078 = load i32, ptr %44, align 4, !tbaa !9
  br label %1079

1079:                                             ; preds = %1077, %1075
  %1080 = phi i32 [ %1076, %1075 ], [ %1078, %1077 ]
  store i32 %1080, ptr %43, align 4, !tbaa !9
  %1081 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1081, ptr %12, align 4, !tbaa !9
  %1082 = load ptr, ptr %6, align 8, !tbaa !5
  %1083 = getelementptr inbounds %struct.w2c_hermes, ptr %1082, i32 0, i32 6
  %1084 = load i32, ptr %42, align 4, !tbaa !9
  %1085 = zext i32 %1084 to i64
  %1086 = add i64 %1085, 28
  %1087 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1083, i64 noundef %1086, i32 noundef %1087)
  %1088 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1088, ptr %42, align 4, !tbaa !9
  %1089 = load ptr, ptr %6, align 8, !tbaa !5
  %1090 = getelementptr inbounds %struct.w2c_hermes, ptr %1089, i32 0, i32 6
  %1091 = load i32, ptr %42, align 4, !tbaa !9
  %1092 = zext i32 %1091 to i64
  %1093 = add i64 %1092, 16
  %1094 = call i32 @i32_load(ptr noundef %1090, i64 noundef %1093)
  store i32 %1094, ptr %42, align 4, !tbaa !9
  %1095 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1095, ptr %11, align 4, !tbaa !9
  %1096 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1096, ptr %42, align 4, !tbaa !9
  %1097 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1097, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %1098 = load i32, ptr %44, align 4, !tbaa !9
  %1099 = and i32 %1098, 31
  %1100 = load i32, ptr %43, align 4, !tbaa !9
  %1101 = shl i32 %1100, %1099
  store i32 %1101, ptr %43, align 4, !tbaa !9
  %1102 = load ptr, ptr %6, align 8, !tbaa !5
  %1103 = load i32, ptr %43, align 4, !tbaa !9
  %1104 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %1102, i32 noundef %1103)
  store i32 %1104, ptr %43, align 4, !tbaa !9
  %1105 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1105, ptr %17, align 4, !tbaa !9
  %1106 = load ptr, ptr %6, align 8, !tbaa !5
  %1107 = getelementptr inbounds %struct.w2c_hermes, ptr %1106, i32 0, i32 6
  %1108 = load i32, ptr %42, align 4, !tbaa !9
  %1109 = zext i32 %1108 to i64
  %1110 = add i64 %1109, 16
  %1111 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1107, i64 noundef %1110, i32 noundef %1111)
  %1112 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1112, ptr %42, align 4, !tbaa !9
  %1113 = load i32, ptr %42, align 4, !tbaa !9
  %1114 = icmp ne i32 %1113, 0
  %1115 = xor i1 %1114, true
  %1116 = zext i1 %1115 to i32
  store i32 %1116, ptr %42, align 4, !tbaa !9
  %1117 = load i32, ptr %42, align 4, !tbaa !9
  %1118 = icmp ne i32 %1117, 0
  br i1 %1118, label %1119, label %1154

1119:                                             ; preds = %1079
  %1120 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1120, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %1121 = load ptr, ptr %6, align 8, !tbaa !5
  %1122 = getelementptr inbounds %struct.w2c_hermes, ptr %1121, i32 0, i32 6
  %1123 = load i32, ptr %42, align 4, !tbaa !9
  %1124 = zext i32 %1123 to i64
  %1125 = add i64 %1124, 20
  %1126 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1122, i64 noundef %1125, i64 noundef %1126)
  %1127 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1127, ptr %42, align 4, !tbaa !9
  %1128 = load ptr, ptr %6, align 8, !tbaa !5
  %1129 = getelementptr inbounds %struct.w2c_hermes, ptr %1128, i32 0, i32 6
  %1130 = load i32, ptr %42, align 4, !tbaa !9
  %1131 = zext i32 %1130 to i64
  %1132 = add i64 %1131, 28
  %1133 = call i32 @i32_load(ptr noundef %1129, i64 noundef %1132)
  store i32 %1133, ptr %42, align 4, !tbaa !9
  %1134 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1134, ptr %11, align 4, !tbaa !9
  %1135 = load i32, ptr %42, align 4, !tbaa !9
  %1136 = icmp ne i32 %1135, 0
  %1137 = xor i1 %1136, true
  %1138 = zext i1 %1137 to i32
  store i32 %1138, ptr %42, align 4, !tbaa !9
  %1139 = load i32, ptr %42, align 4, !tbaa !9
  %1140 = icmp ne i32 %1139, 0
  br i1 %1140, label %1141, label %1142

1141:                                             ; preds = %1119
  br label %1390

1142:                                             ; preds = %1119
  %1143 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1143, ptr %42, align 4, !tbaa !9
  store i32 255, ptr %43, align 4, !tbaa !9
  %1144 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1144, ptr %44, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %1145 = load i32, ptr %45, align 4, !tbaa !9
  %1146 = and i32 %1145, 31
  %1147 = load i32, ptr %44, align 4, !tbaa !9
  %1148 = shl i32 %1147, %1146
  store i32 %1148, ptr %44, align 4, !tbaa !9
  %1149 = load ptr, ptr %6, align 8, !tbaa !5
  %1150 = load i32, ptr %42, align 4, !tbaa !9
  %1151 = load i32, ptr %43, align 4, !tbaa !9
  %1152 = load i32, ptr %44, align 4, !tbaa !9
  %1153 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %1149, i32 noundef %1150, i32 noundef %1151, i32 noundef %1152)
  store i32 %1153, ptr %42, align 4, !tbaa !9
  br label %1390

1154:                                             ; preds = %1079
  %1155 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1155, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %1156 = load ptr, ptr %6, align 8, !tbaa !5
  %1157 = getelementptr inbounds %struct.w2c_hermes, ptr %1156, i32 0, i32 6
  %1158 = load i32, ptr %42, align 4, !tbaa !9
  %1159 = zext i32 %1158 to i64
  %1160 = add i64 %1159, 20
  %1161 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1157, i64 noundef %1160, i64 noundef %1161)
  %1162 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1162, ptr %42, align 4, !tbaa !9
  %1163 = load ptr, ptr %6, align 8, !tbaa !5
  %1164 = getelementptr inbounds %struct.w2c_hermes, ptr %1163, i32 0, i32 6
  %1165 = load i32, ptr %42, align 4, !tbaa !9
  %1166 = zext i32 %1165 to i64
  %1167 = add i64 %1166, 28
  %1168 = call i32 @i32_load(ptr noundef %1164, i64 noundef %1167)
  store i32 %1168, ptr %42, align 4, !tbaa !9
  %1169 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1169, ptr %12, align 4, !tbaa !9
  %1170 = load i32, ptr %42, align 4, !tbaa !9
  %1171 = icmp ne i32 %1170, 0
  br i1 %1171, label %1172, label %1184

1172:                                             ; preds = %1154
  %1173 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1173, ptr %42, align 4, !tbaa !9
  store i32 255, ptr %43, align 4, !tbaa !9
  %1174 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1174, ptr %44, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %1175 = load i32, ptr %45, align 4, !tbaa !9
  %1176 = and i32 %1175, 31
  %1177 = load i32, ptr %44, align 4, !tbaa !9
  %1178 = shl i32 %1177, %1176
  store i32 %1178, ptr %44, align 4, !tbaa !9
  %1179 = load ptr, ptr %6, align 8, !tbaa !5
  %1180 = load i32, ptr %42, align 4, !tbaa !9
  %1181 = load i32, ptr %43, align 4, !tbaa !9
  %1182 = load i32, ptr %44, align 4, !tbaa !9
  %1183 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %1179, i32 noundef %1180, i32 noundef %1181, i32 noundef %1182)
  store i32 %1183, ptr %42, align 4, !tbaa !9
  br label %1184

1184:                                             ; preds = %1172, %1154
  %1185 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1185, ptr %42, align 4, !tbaa !9
  %1186 = load i32, ptr %42, align 4, !tbaa !9
  %1187 = icmp ne i32 %1186, 0
  br i1 %1187, label %1188, label %1386

1188:                                             ; preds = %1184
  %1189 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1189, ptr %42, align 4, !tbaa !9
  %1190 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1190, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %1191 = load i32, ptr %44, align 4, !tbaa !9
  %1192 = and i32 %1191, 31
  %1193 = load i32, ptr %43, align 4, !tbaa !9
  %1194 = shl i32 %1193, %1192
  store i32 %1194, ptr %43, align 4, !tbaa !9
  %1195 = load i32, ptr %43, align 4, !tbaa !9
  %1196 = load i32, ptr %42, align 4, !tbaa !9
  %1197 = add i32 %1196, %1195
  store i32 %1197, ptr %42, align 4, !tbaa !9
  %1198 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1198, ptr %19, align 4, !tbaa !9
  %1199 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1199, ptr %42, align 4, !tbaa !9
  %1200 = load ptr, ptr %6, align 8, !tbaa !5
  %1201 = getelementptr inbounds %struct.w2c_hermes, ptr %1200, i32 0, i32 6
  %1202 = load i32, ptr %42, align 4, !tbaa !9
  %1203 = zext i32 %1202 to i64
  %1204 = add i64 %1203, 28
  %1205 = call i32 @i32_load(ptr noundef %1201, i64 noundef %1204)
  store i32 %1205, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %1206 = load i32, ptr %43, align 4, !tbaa !9
  %1207 = load i32, ptr %42, align 4, !tbaa !9
  %1208 = sub i32 %1207, %1206
  store i32 %1208, ptr %42, align 4, !tbaa !9
  %1209 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1209, ptr %14, align 4, !tbaa !9
  %1210 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1210, ptr %42, align 4, !tbaa !9
  %1211 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1211, ptr %12, align 4, !tbaa !9
  br label %1212

1212:                                             ; preds = %1384, %1188
  %1213 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1213, ptr %42, align 4, !tbaa !9
  %1214 = load ptr, ptr %6, align 8, !tbaa !5
  %1215 = getelementptr inbounds %struct.w2c_hermes, ptr %1214, i32 0, i32 6
  %1216 = load i32, ptr %42, align 4, !tbaa !9
  %1217 = zext i32 %1216 to i64
  %1218 = call i32 @i32_load(ptr noundef %1215, i64 noundef %1217)
  store i32 %1218, ptr %42, align 4, !tbaa !9
  %1219 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1219, ptr %24, align 4, !tbaa !9
  store i32 -3, ptr %43, align 4, !tbaa !9
  %1220 = load i32, ptr %42, align 4, !tbaa !9
  %1221 = load i32, ptr %43, align 4, !tbaa !9
  %1222 = icmp ule i32 %1220, %1221
  %1223 = zext i1 %1222 to i32
  store i32 %1223, ptr %42, align 4, !tbaa !9
  %1224 = load i32, ptr %42, align 4, !tbaa !9
  %1225 = icmp ne i32 %1224, 0
  br i1 %1225, label %1226, label %1371

1226:                                             ; preds = %1212
  %1227 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1227, ptr %42, align 4, !tbaa !9
  %1228 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1228, ptr %43, align 4, !tbaa !9
  %1229 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1229, ptr %44, align 4, !tbaa !9
  %1230 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1230, ptr %45, align 4, !tbaa !9
  store i32 37, ptr %46, align 4, !tbaa !9
  %1231 = load i32, ptr %46, align 4, !tbaa !9
  %1232 = load i32, ptr %45, align 4, !tbaa !9
  %1233 = mul i32 %1232, %1231
  store i32 %1233, ptr %45, align 4, !tbaa !9
  %1234 = load i32, ptr %45, align 4, !tbaa !9
  %1235 = load i32, ptr %44, align 4, !tbaa !9
  %1236 = and i32 %1235, %1234
  store i32 %1236, ptr %44, align 4, !tbaa !9
  %1237 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %1237, ptr %16, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %1238 = load i32, ptr %45, align 4, !tbaa !9
  %1239 = and i32 %1238, 31
  %1240 = load i32, ptr %44, align 4, !tbaa !9
  %1241 = shl i32 %1240, %1239
  store i32 %1241, ptr %44, align 4, !tbaa !9
  %1242 = load i32, ptr %44, align 4, !tbaa !9
  %1243 = load i32, ptr %43, align 4, !tbaa !9
  %1244 = add i32 %1243, %1242
  store i32 %1244, ptr %43, align 4, !tbaa !9
  %1245 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1245, ptr %23, align 4, !tbaa !9
  %1246 = load ptr, ptr %6, align 8, !tbaa !5
  %1247 = getelementptr inbounds %struct.w2c_hermes, ptr %1246, i32 0, i32 6
  %1248 = load i32, ptr %43, align 4, !tbaa !9
  %1249 = zext i32 %1248 to i64
  %1250 = call i32 @i32_load(ptr noundef %1247, i64 noundef %1249)
  store i32 %1250, ptr %43, align 4, !tbaa !9
  %1251 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1251, ptr %18, align 4, !tbaa !9
  %1252 = load i32, ptr %42, align 4, !tbaa !9
  %1253 = load i32, ptr %43, align 4, !tbaa !9
  %1254 = icmp eq i32 %1252, %1253
  %1255 = zext i1 %1254 to i32
  store i32 %1255, ptr %42, align 4, !tbaa !9
  %1256 = load i32, ptr %42, align 4, !tbaa !9
  %1257 = icmp ne i32 %1256, 0
  br i1 %1257, label %1258, label %1259

1258:                                             ; preds = %1226
  br label %1351

1259:                                             ; preds = %1226
  store i32 0, ptr %42, align 4, !tbaa !9
  %1260 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1260, ptr %13, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %1261 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1261, ptr %25, align 4, !tbaa !9
  br label %1262

1262:                                             ; preds = %1349, %1259
  %1263 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1263, ptr %42, align 4, !tbaa !9
  store i32 -1, ptr %43, align 4, !tbaa !9
  %1264 = load i32, ptr %42, align 4, !tbaa !9
  %1265 = load i32, ptr %43, align 4, !tbaa !9
  %1266 = icmp eq i32 %1264, %1265
  %1267 = zext i1 %1266 to i32
  store i32 %1267, ptr %42, align 4, !tbaa !9
  %1268 = load i32, ptr %42, align 4, !tbaa !9
  %1269 = icmp ne i32 %1268, 0
  br i1 %1269, label %1270, label %1283

1270:                                             ; preds = %1262
  %1271 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1271, ptr %42, align 4, !tbaa !9
  %1272 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %1272, ptr %43, align 4, !tbaa !9
  %1273 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1273, ptr %44, align 4, !tbaa !9
  %1274 = load i32, ptr %44, align 4, !tbaa !9
  %1275 = icmp ne i32 %1274, 0
  br i1 %1275, label %1276, label %1278

1276:                                             ; preds = %1270
  %1277 = load i32, ptr %42, align 4, !tbaa !9
  br label %1280

1278:                                             ; preds = %1270
  %1279 = load i32, ptr %43, align 4, !tbaa !9
  br label %1280

1280:                                             ; preds = %1278, %1276
  %1281 = phi i32 [ %1277, %1276 ], [ %1279, %1278 ]
  store i32 %1281, ptr %42, align 4, !tbaa !9
  %1282 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1282, ptr %23, align 4, !tbaa !9
  br label %1351

1283:                                             ; preds = %1262
  %1284 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1284, ptr %42, align 4, !tbaa !9
  %1285 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %1285, ptr %43, align 4, !tbaa !9
  %1286 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1286, ptr %44, align 4, !tbaa !9
  %1287 = load i32, ptr %44, align 4, !tbaa !9
  %1288 = icmp ne i32 %1287, 0
  br i1 %1288, label %1289, label %1291

1289:                                             ; preds = %1283
  %1290 = load i32, ptr %42, align 4, !tbaa !9
  br label %1293

1291:                                             ; preds = %1283
  %1292 = load i32, ptr %43, align 4, !tbaa !9
  br label %1293

1293:                                             ; preds = %1291, %1289
  %1294 = phi i32 [ %1290, %1289 ], [ %1292, %1291 ]
  store i32 %1294, ptr %42, align 4, !tbaa !9
  %1295 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1295, ptr %43, align 4, !tbaa !9
  %1296 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1296, ptr %44, align 4, !tbaa !9
  store i32 -2, ptr %45, align 4, !tbaa !9
  %1297 = load i32, ptr %44, align 4, !tbaa !9
  %1298 = load i32, ptr %45, align 4, !tbaa !9
  %1299 = icmp eq i32 %1297, %1298
  %1300 = zext i1 %1299 to i32
  store i32 %1300, ptr %44, align 4, !tbaa !9
  %1301 = load i32, ptr %44, align 4, !tbaa !9
  %1302 = icmp ne i32 %1301, 0
  br i1 %1302, label %1303, label %1305

1303:                                             ; preds = %1293
  %1304 = load i32, ptr %42, align 4, !tbaa !9
  br label %1307

1305:                                             ; preds = %1293
  %1306 = load i32, ptr %43, align 4, !tbaa !9
  br label %1307

1307:                                             ; preds = %1305, %1303
  %1308 = phi i32 [ %1304, %1303 ], [ %1306, %1305 ]
  store i32 %1308, ptr %42, align 4, !tbaa !9
  %1309 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1309, ptr %13, align 4, !tbaa !9
  %1310 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1310, ptr %42, align 4, !tbaa !9
  %1311 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %1311, ptr %43, align 4, !tbaa !9
  %1312 = load i32, ptr %43, align 4, !tbaa !9
  %1313 = load i32, ptr %42, align 4, !tbaa !9
  %1314 = add i32 %1313, %1312
  store i32 %1314, ptr %42, align 4, !tbaa !9
  %1315 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1315, ptr %15, align 4, !tbaa !9
  %1316 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %1316, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %1317 = load i32, ptr %43, align 4, !tbaa !9
  %1318 = load i32, ptr %42, align 4, !tbaa !9
  %1319 = add i32 %1318, %1317
  store i32 %1319, ptr %42, align 4, !tbaa !9
  %1320 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1320, ptr %25, align 4, !tbaa !9
  %1321 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1321, ptr %42, align 4, !tbaa !9
  %1322 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1322, ptr %43, align 4, !tbaa !9
  %1323 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1323, ptr %44, align 4, !tbaa !9
  %1324 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1324, ptr %45, align 4, !tbaa !9
  %1325 = load i32, ptr %45, align 4, !tbaa !9
  %1326 = load i32, ptr %44, align 4, !tbaa !9
  %1327 = and i32 %1326, %1325
  store i32 %1327, ptr %44, align 4, !tbaa !9
  %1328 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %1328, ptr %16, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %1329 = load i32, ptr %45, align 4, !tbaa !9
  %1330 = and i32 %1329, 31
  %1331 = load i32, ptr %44, align 4, !tbaa !9
  %1332 = shl i32 %1331, %1330
  store i32 %1332, ptr %44, align 4, !tbaa !9
  %1333 = load i32, ptr %44, align 4, !tbaa !9
  %1334 = load i32, ptr %43, align 4, !tbaa !9
  %1335 = add i32 %1334, %1333
  store i32 %1335, ptr %43, align 4, !tbaa !9
  %1336 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1336, ptr %23, align 4, !tbaa !9
  %1337 = load ptr, ptr %6, align 8, !tbaa !5
  %1338 = getelementptr inbounds %struct.w2c_hermes, ptr %1337, i32 0, i32 6
  %1339 = load i32, ptr %43, align 4, !tbaa !9
  %1340 = zext i32 %1339 to i64
  %1341 = call i32 @i32_load(ptr noundef %1338, i64 noundef %1340)
  store i32 %1341, ptr %43, align 4, !tbaa !9
  %1342 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1342, ptr %18, align 4, !tbaa !9
  %1343 = load i32, ptr %42, align 4, !tbaa !9
  %1344 = load i32, ptr %43, align 4, !tbaa !9
  %1345 = icmp ne i32 %1343, %1344
  %1346 = zext i1 %1345 to i32
  store i32 %1346, ptr %42, align 4, !tbaa !9
  %1347 = load i32, ptr %42, align 4, !tbaa !9
  %1348 = icmp ne i32 %1347, 0
  br i1 %1348, label %1349, label %1350

1349:                                             ; preds = %1307
  br label %1262

1350:                                             ; preds = %1307
  br label %1351

1351:                                             ; preds = %1350, %1280, %1258
  %1352 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %1352, ptr %42, align 4, !tbaa !9
  %1353 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1353, ptr %43, align 4, !tbaa !9
  %1354 = load ptr, ptr %6, align 8, !tbaa !5
  %1355 = getelementptr inbounds %struct.w2c_hermes, ptr %1354, i32 0, i32 6
  %1356 = load i32, ptr %42, align 4, !tbaa !9
  %1357 = zext i32 %1356 to i64
  %1358 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1355, i64 noundef %1357, i32 noundef %1358)
  %1359 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1359, ptr %42, align 4, !tbaa !9
  %1360 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1360, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %1361 = load i32, ptr %44, align 4, !tbaa !9
  %1362 = load i32, ptr %43, align 4, !tbaa !9
  %1363 = add i32 %1362, %1361
  store i32 %1363, ptr %43, align 4, !tbaa !9
  %1364 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1364, ptr %21, align 4, !tbaa !9
  %1365 = load ptr, ptr %6, align 8, !tbaa !5
  %1366 = getelementptr inbounds %struct.w2c_hermes, ptr %1365, i32 0, i32 6
  %1367 = load i32, ptr %42, align 4, !tbaa !9
  %1368 = zext i32 %1367 to i64
  %1369 = add i64 %1368, 20
  %1370 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1366, i64 noundef %1369, i32 noundef %1370)
  br label %1371

1371:                                             ; preds = %1351, %1212
  %1372 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1372, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %1373 = load i32, ptr %43, align 4, !tbaa !9
  %1374 = load i32, ptr %42, align 4, !tbaa !9
  %1375 = add i32 %1374, %1373
  store i32 %1375, ptr %42, align 4, !tbaa !9
  %1376 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1376, ptr %12, align 4, !tbaa !9
  %1377 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1377, ptr %43, align 4, !tbaa !9
  %1378 = load i32, ptr %42, align 4, !tbaa !9
  %1379 = load i32, ptr %43, align 4, !tbaa !9
  %1380 = icmp ne i32 %1378, %1379
  %1381 = zext i1 %1380 to i32
  store i32 %1381, ptr %42, align 4, !tbaa !9
  %1382 = load i32, ptr %42, align 4, !tbaa !9
  %1383 = icmp ne i32 %1382, 0
  br i1 %1383, label %1384, label %1385

1384:                                             ; preds = %1371
  br label %1212

1385:                                             ; preds = %1371
  br label %1386

1386:                                             ; preds = %1385, %1184
  %1387 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1387, ptr %42, align 4, !tbaa !9
  %1388 = load ptr, ptr %6, align 8, !tbaa !5
  %1389 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %1388, i32 noundef %1389)
  br label %1390

1390:                                             ; preds = %1386, %1142, %1141
  %1391 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1391, ptr %42, align 4, !tbaa !9
  %1392 = load ptr, ptr %6, align 8, !tbaa !5
  %1393 = getelementptr inbounds %struct.w2c_hermes, ptr %1392, i32 0, i32 6
  %1394 = load i32, ptr %42, align 4, !tbaa !9
  %1395 = zext i32 %1394 to i64
  %1396 = add i64 %1395, 16
  %1397 = call i32 @i32_load(ptr noundef %1393, i64 noundef %1396)
  store i32 %1397, ptr %42, align 4, !tbaa !9
  %1398 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1398, ptr %17, align 4, !tbaa !9
  %1399 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1399, ptr %42, align 4, !tbaa !9
  %1400 = load ptr, ptr %6, align 8, !tbaa !5
  %1401 = getelementptr inbounds %struct.w2c_hermes, ptr %1400, i32 0, i32 6
  %1402 = load i32, ptr %42, align 4, !tbaa !9
  %1403 = zext i32 %1402 to i64
  %1404 = add i64 %1403, 28
  %1405 = call i32 @i32_load(ptr noundef %1401, i64 noundef %1404)
  store i32 %1405, ptr %42, align 4, !tbaa !9
  %1406 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1406, ptr %11, align 4, !tbaa !9
  %1407 = load i32, ptr %42, align 4, !tbaa !9
  %1408 = icmp ne i32 %1407, 0
  %1409 = xor i1 %1408, true
  %1410 = zext i1 %1409 to i32
  store i32 %1410, ptr %42, align 4, !tbaa !9
  %1411 = load i32, ptr %42, align 4, !tbaa !9
  %1412 = icmp ne i32 %1411, 0
  br i1 %1412, label %1413, label %1415

1413:                                             ; preds = %1390
  store i32 0, ptr %42, align 4, !tbaa !9
  %1414 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1414, ptr %13, align 4, !tbaa !9
  br label %1544

1415:                                             ; preds = %1390
  %1416 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1416, ptr %42, align 4, !tbaa !9
  %1417 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1417, ptr %43, align 4, !tbaa !9
  %1418 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1418, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %1419 = load i32, ptr %45, align 4, !tbaa !9
  %1420 = load i32, ptr %44, align 4, !tbaa !9
  %1421 = sub i32 %1420, %1419
  store i32 %1421, ptr %44, align 4, !tbaa !9
  %1422 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %1422, ptr %12, align 4, !tbaa !9
  %1423 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1423, ptr %45, align 4, !tbaa !9
  store i32 37, ptr %46, align 4, !tbaa !9
  %1424 = load i32, ptr %46, align 4, !tbaa !9
  %1425 = load i32, ptr %45, align 4, !tbaa !9
  %1426 = mul i32 %1425, %1424
  store i32 %1426, ptr %45, align 4, !tbaa !9
  %1427 = load i32, ptr %45, align 4, !tbaa !9
  %1428 = load i32, ptr %44, align 4, !tbaa !9
  %1429 = and i32 %1428, %1427
  store i32 %1429, ptr %44, align 4, !tbaa !9
  %1430 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %1430, ptr %16, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %1431 = load i32, ptr %45, align 4, !tbaa !9
  %1432 = and i32 %1431, 31
  %1433 = load i32, ptr %44, align 4, !tbaa !9
  %1434 = shl i32 %1433, %1432
  store i32 %1434, ptr %44, align 4, !tbaa !9
  %1435 = load i32, ptr %44, align 4, !tbaa !9
  %1436 = load i32, ptr %43, align 4, !tbaa !9
  %1437 = add i32 %1436, %1435
  store i32 %1437, ptr %43, align 4, !tbaa !9
  %1438 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1438, ptr %13, align 4, !tbaa !9
  %1439 = load ptr, ptr %6, align 8, !tbaa !5
  %1440 = getelementptr inbounds %struct.w2c_hermes, ptr %1439, i32 0, i32 6
  %1441 = load i32, ptr %43, align 4, !tbaa !9
  %1442 = zext i32 %1441 to i64
  %1443 = call i32 @i32_load(ptr noundef %1440, i64 noundef %1442)
  store i32 %1443, ptr %43, align 4, !tbaa !9
  %1444 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1444, ptr %11, align 4, !tbaa !9
  %1445 = load i32, ptr %42, align 4, !tbaa !9
  %1446 = load i32, ptr %43, align 4, !tbaa !9
  %1447 = icmp eq i32 %1445, %1446
  %1448 = zext i1 %1447 to i32
  store i32 %1448, ptr %42, align 4, !tbaa !9
  %1449 = load i32, ptr %42, align 4, !tbaa !9
  %1450 = icmp ne i32 %1449, 0
  br i1 %1450, label %1451, label %1452

1451:                                             ; preds = %1415
  br label %1544

1452:                                             ; preds = %1415
  store i32 0, ptr %42, align 4, !tbaa !9
  %1453 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1453, ptr %14, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %1454 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1454, ptr %26, align 4, !tbaa !9
  br label %1455

1455:                                             ; preds = %1542, %1452
  %1456 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1456, ptr %42, align 4, !tbaa !9
  store i32 -1, ptr %43, align 4, !tbaa !9
  %1457 = load i32, ptr %42, align 4, !tbaa !9
  %1458 = load i32, ptr %43, align 4, !tbaa !9
  %1459 = icmp eq i32 %1457, %1458
  %1460 = zext i1 %1459 to i32
  store i32 %1460, ptr %42, align 4, !tbaa !9
  %1461 = load i32, ptr %42, align 4, !tbaa !9
  %1462 = icmp ne i32 %1461, 0
  br i1 %1462, label %1463, label %1476

1463:                                             ; preds = %1455
  %1464 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1464, ptr %42, align 4, !tbaa !9
  %1465 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1465, ptr %43, align 4, !tbaa !9
  %1466 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1466, ptr %44, align 4, !tbaa !9
  %1467 = load i32, ptr %44, align 4, !tbaa !9
  %1468 = icmp ne i32 %1467, 0
  br i1 %1468, label %1469, label %1471

1469:                                             ; preds = %1463
  %1470 = load i32, ptr %42, align 4, !tbaa !9
  br label %1473

1471:                                             ; preds = %1463
  %1472 = load i32, ptr %43, align 4, !tbaa !9
  br label %1473

1473:                                             ; preds = %1471, %1469
  %1474 = phi i32 [ %1470, %1469 ], [ %1472, %1471 ]
  store i32 %1474, ptr %42, align 4, !tbaa !9
  %1475 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1475, ptr %13, align 4, !tbaa !9
  br label %1544

1476:                                             ; preds = %1455
  %1477 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1477, ptr %42, align 4, !tbaa !9
  %1478 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1478, ptr %43, align 4, !tbaa !9
  %1479 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1479, ptr %44, align 4, !tbaa !9
  %1480 = load i32, ptr %44, align 4, !tbaa !9
  %1481 = icmp ne i32 %1480, 0
  br i1 %1481, label %1482, label %1484

1482:                                             ; preds = %1476
  %1483 = load i32, ptr %42, align 4, !tbaa !9
  br label %1486

1484:                                             ; preds = %1476
  %1485 = load i32, ptr %43, align 4, !tbaa !9
  br label %1486

1486:                                             ; preds = %1484, %1482
  %1487 = phi i32 [ %1483, %1482 ], [ %1485, %1484 ]
  store i32 %1487, ptr %42, align 4, !tbaa !9
  %1488 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1488, ptr %43, align 4, !tbaa !9
  %1489 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1489, ptr %44, align 4, !tbaa !9
  store i32 -2, ptr %45, align 4, !tbaa !9
  %1490 = load i32, ptr %44, align 4, !tbaa !9
  %1491 = load i32, ptr %45, align 4, !tbaa !9
  %1492 = icmp eq i32 %1490, %1491
  %1493 = zext i1 %1492 to i32
  store i32 %1493, ptr %44, align 4, !tbaa !9
  %1494 = load i32, ptr %44, align 4, !tbaa !9
  %1495 = icmp ne i32 %1494, 0
  br i1 %1495, label %1496, label %1498

1496:                                             ; preds = %1486
  %1497 = load i32, ptr %42, align 4, !tbaa !9
  br label %1500

1498:                                             ; preds = %1486
  %1499 = load i32, ptr %43, align 4, !tbaa !9
  br label %1500

1500:                                             ; preds = %1498, %1496
  %1501 = phi i32 [ %1497, %1496 ], [ %1499, %1498 ]
  store i32 %1501, ptr %42, align 4, !tbaa !9
  %1502 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1502, ptr %14, align 4, !tbaa !9
  %1503 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1503, ptr %42, align 4, !tbaa !9
  %1504 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %1504, ptr %43, align 4, !tbaa !9
  %1505 = load i32, ptr %43, align 4, !tbaa !9
  %1506 = load i32, ptr %42, align 4, !tbaa !9
  %1507 = add i32 %1506, %1505
  store i32 %1507, ptr %42, align 4, !tbaa !9
  %1508 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1508, ptr %11, align 4, !tbaa !9
  %1509 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %1509, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %1510 = load i32, ptr %43, align 4, !tbaa !9
  %1511 = load i32, ptr %42, align 4, !tbaa !9
  %1512 = add i32 %1511, %1510
  store i32 %1512, ptr %42, align 4, !tbaa !9
  %1513 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1513, ptr %26, align 4, !tbaa !9
  %1514 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1514, ptr %42, align 4, !tbaa !9
  %1515 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1515, ptr %43, align 4, !tbaa !9
  %1516 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1516, ptr %44, align 4, !tbaa !9
  %1517 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1517, ptr %45, align 4, !tbaa !9
  %1518 = load i32, ptr %45, align 4, !tbaa !9
  %1519 = load i32, ptr %44, align 4, !tbaa !9
  %1520 = and i32 %1519, %1518
  store i32 %1520, ptr %44, align 4, !tbaa !9
  %1521 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %1521, ptr %16, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %1522 = load i32, ptr %45, align 4, !tbaa !9
  %1523 = and i32 %1522, 31
  %1524 = load i32, ptr %44, align 4, !tbaa !9
  %1525 = shl i32 %1524, %1523
  store i32 %1525, ptr %44, align 4, !tbaa !9
  %1526 = load i32, ptr %44, align 4, !tbaa !9
  %1527 = load i32, ptr %43, align 4, !tbaa !9
  %1528 = add i32 %1527, %1526
  store i32 %1528, ptr %43, align 4, !tbaa !9
  %1529 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1529, ptr %13, align 4, !tbaa !9
  %1530 = load ptr, ptr %6, align 8, !tbaa !5
  %1531 = getelementptr inbounds %struct.w2c_hermes, ptr %1530, i32 0, i32 6
  %1532 = load i32, ptr %43, align 4, !tbaa !9
  %1533 = zext i32 %1532 to i64
  %1534 = call i32 @i32_load(ptr noundef %1531, i64 noundef %1533)
  store i32 %1534, ptr %43, align 4, !tbaa !9
  %1535 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %1535, ptr %11, align 4, !tbaa !9
  %1536 = load i32, ptr %42, align 4, !tbaa !9
  %1537 = load i32, ptr %43, align 4, !tbaa !9
  %1538 = icmp ne i32 %1536, %1537
  %1539 = zext i1 %1538 to i32
  store i32 %1539, ptr %42, align 4, !tbaa !9
  %1540 = load i32, ptr %42, align 4, !tbaa !9
  %1541 = icmp ne i32 %1540, 0
  br i1 %1541, label %1542, label %1543

1542:                                             ; preds = %1500
  br label %1455

1543:                                             ; preds = %1500
  br label %1544

1544:                                             ; preds = %1543, %1473, %1451, %1413, %998
  %1545 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1545, ptr %42, align 4, !tbaa !9
  %1546 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1546, ptr %43, align 4, !tbaa !9
  %1547 = load ptr, ptr %6, align 8, !tbaa !5
  %1548 = getelementptr inbounds %struct.w2c_hermes, ptr %1547, i32 0, i32 6
  %1549 = load i32, ptr %43, align 4, !tbaa !9
  %1550 = zext i32 %1549 to i64
  %1551 = add i64 %1550, 20
  %1552 = call i32 @i32_load(ptr noundef %1548, i64 noundef %1551)
  store i32 %1552, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %1553 = load i32, ptr %44, align 4, !tbaa !9
  %1554 = load i32, ptr %43, align 4, !tbaa !9
  %1555 = add i32 %1554, %1553
  store i32 %1555, ptr %43, align 4, !tbaa !9
  %1556 = load ptr, ptr %6, align 8, !tbaa !5
  %1557 = getelementptr inbounds %struct.w2c_hermes, ptr %1556, i32 0, i32 6
  %1558 = load i32, ptr %42, align 4, !tbaa !9
  %1559 = zext i32 %1558 to i64
  %1560 = add i64 %1559, 20
  %1561 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1557, i64 noundef %1560, i32 noundef %1561)
  %1562 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1562, ptr %42, align 4, !tbaa !9
  %1563 = load ptr, ptr %6, align 8, !tbaa !5
  %1564 = getelementptr inbounds %struct.w2c_hermes, ptr %1563, i32 0, i32 6
  %1565 = load i32, ptr %42, align 4, !tbaa !9
  %1566 = zext i32 %1565 to i64
  %1567 = call i32 @i32_load(ptr noundef %1564, i64 noundef %1566)
  store i32 %1567, ptr %42, align 4, !tbaa !9
  store i32 -1, ptr %43, align 4, !tbaa !9
  %1568 = load i32, ptr %42, align 4, !tbaa !9
  %1569 = load i32, ptr %43, align 4, !tbaa !9
  %1570 = icmp ne i32 %1568, %1569
  %1571 = zext i1 %1570 to i32
  store i32 %1571, ptr %42, align 4, !tbaa !9
  %1572 = load i32, ptr %42, align 4, !tbaa !9
  %1573 = icmp ne i32 %1572, 0
  br i1 %1573, label %1574, label %1592

1574:                                             ; preds = %1544
  %1575 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1575, ptr %42, align 4, !tbaa !9
  %1576 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1576, ptr %43, align 4, !tbaa !9
  %1577 = load ptr, ptr %6, align 8, !tbaa !5
  %1578 = getelementptr inbounds %struct.w2c_hermes, ptr %1577, i32 0, i32 6
  %1579 = load i32, ptr %43, align 4, !tbaa !9
  %1580 = zext i32 %1579 to i64
  %1581 = add i64 %1580, 24
  %1582 = call i32 @i32_load(ptr noundef %1578, i64 noundef %1581)
  store i32 %1582, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %1583 = load i32, ptr %44, align 4, !tbaa !9
  %1584 = load i32, ptr %43, align 4, !tbaa !9
  %1585 = sub i32 %1584, %1583
  store i32 %1585, ptr %43, align 4, !tbaa !9
  %1586 = load ptr, ptr %6, align 8, !tbaa !5
  %1587 = getelementptr inbounds %struct.w2c_hermes, ptr %1586, i32 0, i32 6
  %1588 = load i32, ptr %42, align 4, !tbaa !9
  %1589 = zext i32 %1588 to i64
  %1590 = add i64 %1589, 24
  %1591 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1587, i64 noundef %1590, i32 noundef %1591)
  br label %1592

1592:                                             ; preds = %1574, %1544
  %1593 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1593, ptr %42, align 4, !tbaa !9
  %1594 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1594, ptr %43, align 4, !tbaa !9
  %1595 = load ptr, ptr %6, align 8, !tbaa !5
  %1596 = getelementptr inbounds %struct.w2c_hermes, ptr %1595, i32 0, i32 6
  %1597 = load i32, ptr %42, align 4, !tbaa !9
  %1598 = zext i32 %1597 to i64
  %1599 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1596, i64 noundef %1598, i32 noundef %1599)
  br label %1600

1600:                                             ; preds = %1592, %934, %842, %746
  %1601 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1601, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %1602 = load i32, ptr %43, align 4, !tbaa !9
  %1603 = load i32, ptr %42, align 4, !tbaa !9
  %1604 = add i32 %1603, %1602
  store i32 %1604, ptr %42, align 4, !tbaa !9
  %1605 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1605, ptr %10, align 4, !tbaa !9
  %1606 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %1606, ptr %43, align 4, !tbaa !9
  %1607 = load i32, ptr %42, align 4, !tbaa !9
  %1608 = load i32, ptr %43, align 4, !tbaa !9
  %1609 = icmp ne i32 %1607, %1608
  %1610 = zext i1 %1609 to i32
  store i32 %1610, ptr %42, align 4, !tbaa !9
  %1611 = load i32, ptr %42, align 4, !tbaa !9
  %1612 = icmp ne i32 %1611, 0
  br i1 %1612, label %1613, label %1614

1613:                                             ; preds = %1600
  br label %732

1614:                                             ; preds = %1600
  store i32 0, ptr %42, align 4, !tbaa !9
  %1615 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1615, ptr %15, align 4, !tbaa !9
  %1616 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %1616, ptr %42, align 4, !tbaa !9
  store i32 536870911, ptr %43, align 4, !tbaa !9
  %1617 = load i32, ptr %43, align 4, !tbaa !9
  %1618 = load i32, ptr %42, align 4, !tbaa !9
  %1619 = and i32 %1618, %1617
  store i32 %1619, ptr %42, align 4, !tbaa !9
  %1620 = load i32, ptr %42, align 4, !tbaa !9
  %1621 = icmp ne i32 %1620, 0
  %1622 = xor i1 %1621, true
  %1623 = zext i1 %1622 to i32
  store i32 %1623, ptr %42, align 4, !tbaa !9
  %1624 = load i32, ptr %42, align 4, !tbaa !9
  %1625 = icmp ne i32 %1624, 0
  br i1 %1625, label %1626, label %1629

1626:                                             ; preds = %1614
  store i32 0, ptr %42, align 4, !tbaa !9
  %1627 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1627, ptr %14, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %1628 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1628, ptr %24, align 4, !tbaa !9
  br label %1925

1629:                                             ; preds = %1614
  %1630 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %1630, ptr %42, align 4, !tbaa !9
  store i32 5, ptr %43, align 4, !tbaa !9
  %1631 = load i32, ptr %43, align 4, !tbaa !9
  %1632 = and i32 %1631, 31
  %1633 = load i32, ptr %42, align 4, !tbaa !9
  %1634 = shl i32 %1633, %1632
  store i32 %1634, ptr %42, align 4, !tbaa !9
  store i32 3, ptr %43, align 4, !tbaa !9
  %1635 = load i32, ptr %43, align 4, !tbaa !9
  %1636 = icmp eq i32 %1635, 0
  %1637 = xor i1 %1636, true
  %1638 = xor i1 %1637, true
  %1639 = zext i1 %1638 to i32
  %1640 = sext i32 %1639 to i64
  %1641 = call i64 @llvm.expect.i64(i64 %1640, i64 0)
  %1642 = icmp ne i64 %1641, 0
  br i1 %1642, label %1643, label %1645

1643:                                             ; preds = %1629
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

1644:                                             ; No predecessors!
  br label %1649

1645:                                             ; preds = %1629
  %1646 = load i32, ptr %42, align 4, !tbaa !9
  %1647 = load i32, ptr %43, align 4, !tbaa !9
  %1648 = udiv i32 %1646, %1647
  br label %1649

1649:                                             ; preds = %1645, %1644
  %1650 = phi i32 [ 0, %1644 ], [ %1648, %1645 ]
  store i32 %1650, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %1651 = load i32, ptr %43, align 4, !tbaa !9
  %1652 = load i32, ptr %42, align 4, !tbaa !9
  %1653 = add i32 %1652, %1651
  store i32 %1653, ptr %42, align 4, !tbaa !9
  %1654 = load i32, ptr %42, align 4, !tbaa !9
  %1655 = zext i32 %1654 to i64
  store i64 %1655, ptr %48, align 8, !tbaa !11
  %1656 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %1656, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %49, align 8, !tbaa !11
  %1657 = load i64, ptr %49, align 8, !tbaa !11
  %1658 = and i64 %1657, 63
  %1659 = load i64, ptr %48, align 8, !tbaa !11
  %1660 = lshr i64 %1659, %1658
  store i64 %1660, ptr %48, align 8, !tbaa !11
  %1661 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1661, ptr %49, align 8, !tbaa !11
  %1662 = load i64, ptr %49, align 8, !tbaa !11
  %1663 = load i64, ptr %48, align 8, !tbaa !11
  %1664 = or i64 %1663, %1662
  store i64 %1664, ptr %48, align 8, !tbaa !11
  %1665 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %1665, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %49, align 8, !tbaa !11
  %1666 = load i64, ptr %49, align 8, !tbaa !11
  %1667 = and i64 %1666, 63
  %1668 = load i64, ptr %48, align 8, !tbaa !11
  %1669 = lshr i64 %1668, %1667
  store i64 %1669, ptr %48, align 8, !tbaa !11
  %1670 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1670, ptr %49, align 8, !tbaa !11
  %1671 = load i64, ptr %49, align 8, !tbaa !11
  %1672 = load i64, ptr %48, align 8, !tbaa !11
  %1673 = or i64 %1672, %1671
  store i64 %1673, ptr %48, align 8, !tbaa !11
  %1674 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %1674, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %49, align 8, !tbaa !11
  %1675 = load i64, ptr %49, align 8, !tbaa !11
  %1676 = and i64 %1675, 63
  %1677 = load i64, ptr %48, align 8, !tbaa !11
  %1678 = lshr i64 %1677, %1676
  store i64 %1678, ptr %48, align 8, !tbaa !11
  %1679 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1679, ptr %49, align 8, !tbaa !11
  %1680 = load i64, ptr %49, align 8, !tbaa !11
  %1681 = load i64, ptr %48, align 8, !tbaa !11
  %1682 = or i64 %1681, %1680
  store i64 %1682, ptr %48, align 8, !tbaa !11
  %1683 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %1683, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %49, align 8, !tbaa !11
  %1684 = load i64, ptr %49, align 8, !tbaa !11
  %1685 = and i64 %1684, 63
  %1686 = load i64, ptr %48, align 8, !tbaa !11
  %1687 = lshr i64 %1686, %1685
  store i64 %1687, ptr %48, align 8, !tbaa !11
  %1688 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1688, ptr %49, align 8, !tbaa !11
  %1689 = load i64, ptr %49, align 8, !tbaa !11
  %1690 = load i64, ptr %48, align 8, !tbaa !11
  %1691 = or i64 %1690, %1689
  store i64 %1691, ptr %48, align 8, !tbaa !11
  %1692 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %1692, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %49, align 8, !tbaa !11
  %1693 = load i64, ptr %49, align 8, !tbaa !11
  %1694 = and i64 %1693, 63
  %1695 = load i64, ptr %48, align 8, !tbaa !11
  %1696 = lshr i64 %1695, %1694
  store i64 %1696, ptr %48, align 8, !tbaa !11
  %1697 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1697, ptr %49, align 8, !tbaa !11
  %1698 = load i64, ptr %49, align 8, !tbaa !11
  %1699 = load i64, ptr %48, align 8, !tbaa !11
  %1700 = or i64 %1699, %1698
  store i64 %1700, ptr %48, align 8, !tbaa !11
  %1701 = load i64, ptr %48, align 8, !tbaa !11
  %1702 = trunc i64 %1701 to i32
  store i32 %1702, ptr %42, align 4, !tbaa !9
  %1703 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1703, ptr %13, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %1704 = load i32, ptr %43, align 4, !tbaa !9
  %1705 = load i32, ptr %42, align 4, !tbaa !9
  %1706 = mul i32 %1705, %1704
  store i32 %1706, ptr %42, align 4, !tbaa !9
  %1707 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1707, ptr %19, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %1708 = load i32, ptr %43, align 4, !tbaa !9
  %1709 = load i32, ptr %42, align 4, !tbaa !9
  %1710 = add i32 %1709, %1708
  store i32 %1710, ptr %42, align 4, !tbaa !9
  %1711 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1711, ptr %23, align 4, !tbaa !9
  %1712 = load ptr, ptr %6, align 8, !tbaa !5
  %1713 = load i32, ptr %42, align 4, !tbaa !9
  %1714 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %1712, i32 noundef %1713)
  store i32 %1714, ptr %42, align 4, !tbaa !9
  %1715 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1715, ptr %24, align 4, !tbaa !9
  %1716 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1716, ptr %10, align 4, !tbaa !9
  %1717 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1717, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %1718 = load i32, ptr %43, align 4, !tbaa !9
  %1719 = icmp eq i32 %1718, 0
  %1720 = xor i1 %1719, true
  %1721 = xor i1 %1720, true
  %1722 = zext i1 %1721 to i32
  %1723 = sext i32 %1722 to i64
  %1724 = call i64 @llvm.expect.i64(i64 %1723, i64 0)
  %1725 = icmp ne i64 %1724, 0
  br i1 %1725, label %1726, label %1728

1726:                                             ; preds = %1649
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

1727:                                             ; No predecessors!
  br label %1732

1728:                                             ; preds = %1649
  %1729 = load i32, ptr %42, align 4, !tbaa !9
  %1730 = load i32, ptr %43, align 4, !tbaa !9
  %1731 = udiv i32 %1729, %1730
  br label %1732

1732:                                             ; preds = %1728, %1727
  %1733 = phi i32 [ 0, %1727 ], [ %1731, %1728 ]
  store i32 %1733, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %1734 = load i32, ptr %43, align 4, !tbaa !9
  %1735 = load i32, ptr %42, align 4, !tbaa !9
  %1736 = add i32 %1735, %1734
  store i32 %1736, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %1737 = load i32, ptr %43, align 4, !tbaa !9
  %1738 = load i32, ptr %42, align 4, !tbaa !9
  %1739 = and i32 %1738, %1737
  store i32 %1739, ptr %42, align 4, !tbaa !9
  %1740 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1740, ptr %12, align 4, !tbaa !9
  %1741 = load i32, ptr %42, align 4, !tbaa !9
  %1742 = icmp ne i32 %1741, 0
  br i1 %1742, label %1743, label %1778

1743:                                             ; preds = %1732
  store i32 0, ptr %42, align 4, !tbaa !9
  %1744 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1744, ptr %11, align 4, !tbaa !9
  br label %1745

1745:                                             ; preds = %1776, %1743
  %1746 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1746, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %1747 = load ptr, ptr %6, align 8, !tbaa !5
  %1748 = getelementptr inbounds %struct.w2c_hermes, ptr %1747, i32 0, i32 6
  %1749 = load i32, ptr %42, align 4, !tbaa !9
  %1750 = zext i32 %1749 to i64
  %1751 = add i64 %1750, 8
  %1752 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1748, i64 noundef %1751, i32 noundef %1752)
  %1753 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1753, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %1754 = load ptr, ptr %6, align 8, !tbaa !5
  %1755 = getelementptr inbounds %struct.w2c_hermes, ptr %1754, i32 0, i32 6
  %1756 = load i32, ptr %42, align 4, !tbaa !9
  %1757 = zext i32 %1756 to i64
  %1758 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1755, i64 noundef %1757, i64 noundef %1758)
  %1759 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1759, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %1760 = load i32, ptr %43, align 4, !tbaa !9
  %1761 = load i32, ptr %42, align 4, !tbaa !9
  %1762 = add i32 %1761, %1760
  store i32 %1762, ptr %42, align 4, !tbaa !9
  %1763 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1763, ptr %10, align 4, !tbaa !9
  %1764 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1764, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %1765 = load i32, ptr %43, align 4, !tbaa !9
  %1766 = load i32, ptr %42, align 4, !tbaa !9
  %1767 = add i32 %1766, %1765
  store i32 %1767, ptr %42, align 4, !tbaa !9
  %1768 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1768, ptr %11, align 4, !tbaa !9
  %1769 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1769, ptr %43, align 4, !tbaa !9
  %1770 = load i32, ptr %42, align 4, !tbaa !9
  %1771 = load i32, ptr %43, align 4, !tbaa !9
  %1772 = icmp ne i32 %1770, %1771
  %1773 = zext i1 %1772 to i32
  store i32 %1773, ptr %42, align 4, !tbaa !9
  %1774 = load i32, ptr %42, align 4, !tbaa !9
  %1775 = icmp ne i32 %1774, 0
  br i1 %1775, label %1776, label %1777

1776:                                             ; preds = %1745
  br label %1745

1777:                                             ; preds = %1745
  br label %1778

1778:                                             ; preds = %1777, %1732
  %1779 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1779, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %1780 = load i32, ptr %43, align 4, !tbaa !9
  %1781 = load i32, ptr %42, align 4, !tbaa !9
  %1782 = add i32 %1781, %1780
  store i32 %1782, ptr %42, align 4, !tbaa !9
  %1783 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1783, ptr %14, align 4, !tbaa !9
  %1784 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1784, ptr %42, align 4, !tbaa !9
  store i32 168, ptr %43, align 4, !tbaa !9
  %1785 = load i32, ptr %42, align 4, !tbaa !9
  %1786 = load i32, ptr %43, align 4, !tbaa !9
  %1787 = icmp ult i32 %1785, %1786
  %1788 = zext i1 %1787 to i32
  store i32 %1788, ptr %42, align 4, !tbaa !9
  %1789 = load i32, ptr %42, align 4, !tbaa !9
  %1790 = icmp ne i32 %1789, 0
  br i1 %1790, label %1791, label %1792

1791:                                             ; preds = %1778
  br label %1925

1792:                                             ; preds = %1778
  %1793 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %1793, ptr %42, align 4, !tbaa !9
  %1794 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1794, ptr %43, align 4, !tbaa !9
  %1795 = load i32, ptr %43, align 4, !tbaa !9
  %1796 = load i32, ptr %42, align 4, !tbaa !9
  %1797 = add i32 %1796, %1795
  store i32 %1797, ptr %42, align 4, !tbaa !9
  %1798 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1798, ptr %11, align 4, !tbaa !9
  br label %1799

1799:                                             ; preds = %1923, %1792
  %1800 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1800, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %1801 = load ptr, ptr %6, align 8, !tbaa !5
  %1802 = getelementptr inbounds %struct.w2c_hermes, ptr %1801, i32 0, i32 6
  %1803 = load i32, ptr %42, align 4, !tbaa !9
  %1804 = zext i32 %1803 to i64
  %1805 = add i64 %1804, 168
  %1806 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1802, i64 noundef %1805, i64 noundef %1806)
  %1807 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1807, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %1808 = load ptr, ptr %6, align 8, !tbaa !5
  %1809 = getelementptr inbounds %struct.w2c_hermes, ptr %1808, i32 0, i32 6
  %1810 = load i32, ptr %42, align 4, !tbaa !9
  %1811 = zext i32 %1810 to i64
  %1812 = add i64 %1811, 144
  %1813 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1809, i64 noundef %1812, i64 noundef %1813)
  %1814 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1814, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %1815 = load ptr, ptr %6, align 8, !tbaa !5
  %1816 = getelementptr inbounds %struct.w2c_hermes, ptr %1815, i32 0, i32 6
  %1817 = load i32, ptr %42, align 4, !tbaa !9
  %1818 = zext i32 %1817 to i64
  %1819 = add i64 %1818, 120
  %1820 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1816, i64 noundef %1819, i64 noundef %1820)
  %1821 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1821, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %1822 = load ptr, ptr %6, align 8, !tbaa !5
  %1823 = getelementptr inbounds %struct.w2c_hermes, ptr %1822, i32 0, i32 6
  %1824 = load i32, ptr %42, align 4, !tbaa !9
  %1825 = zext i32 %1824 to i64
  %1826 = add i64 %1825, 96
  %1827 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1823, i64 noundef %1826, i64 noundef %1827)
  %1828 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1828, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %1829 = load ptr, ptr %6, align 8, !tbaa !5
  %1830 = getelementptr inbounds %struct.w2c_hermes, ptr %1829, i32 0, i32 6
  %1831 = load i32, ptr %42, align 4, !tbaa !9
  %1832 = zext i32 %1831 to i64
  %1833 = add i64 %1832, 72
  %1834 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1830, i64 noundef %1833, i64 noundef %1834)
  %1835 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1835, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %1836 = load ptr, ptr %6, align 8, !tbaa !5
  %1837 = getelementptr inbounds %struct.w2c_hermes, ptr %1836, i32 0, i32 6
  %1838 = load i32, ptr %42, align 4, !tbaa !9
  %1839 = zext i32 %1838 to i64
  %1840 = add i64 %1839, 48
  %1841 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1837, i64 noundef %1840, i64 noundef %1841)
  %1842 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1842, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %1843 = load ptr, ptr %6, align 8, !tbaa !5
  %1844 = getelementptr inbounds %struct.w2c_hermes, ptr %1843, i32 0, i32 6
  %1845 = load i32, ptr %42, align 4, !tbaa !9
  %1846 = zext i32 %1845 to i64
  %1847 = add i64 %1846, 24
  %1848 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1844, i64 noundef %1847, i64 noundef %1848)
  %1849 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1849, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %1850 = load ptr, ptr %6, align 8, !tbaa !5
  %1851 = getelementptr inbounds %struct.w2c_hermes, ptr %1850, i32 0, i32 6
  %1852 = load i32, ptr %42, align 4, !tbaa !9
  %1853 = zext i32 %1852 to i64
  %1854 = add i64 %1853, 8
  %1855 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1851, i64 noundef %1854, i32 noundef %1855)
  %1856 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1856, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %1857 = load ptr, ptr %6, align 8, !tbaa !5
  %1858 = getelementptr inbounds %struct.w2c_hermes, ptr %1857, i32 0, i32 6
  %1859 = load i32, ptr %42, align 4, !tbaa !9
  %1860 = zext i32 %1859 to i64
  %1861 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1858, i64 noundef %1860, i64 noundef %1861)
  %1862 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1862, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %1863 = load ptr, ptr %6, align 8, !tbaa !5
  %1864 = getelementptr inbounds %struct.w2c_hermes, ptr %1863, i32 0, i32 6
  %1865 = load i32, ptr %42, align 4, !tbaa !9
  %1866 = zext i32 %1865 to i64
  %1867 = add i64 %1866, 176
  %1868 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1864, i64 noundef %1867, i32 noundef %1868)
  %1869 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1869, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %1870 = load ptr, ptr %6, align 8, !tbaa !5
  %1871 = getelementptr inbounds %struct.w2c_hermes, ptr %1870, i32 0, i32 6
  %1872 = load i32, ptr %42, align 4, !tbaa !9
  %1873 = zext i32 %1872 to i64
  %1874 = add i64 %1873, 152
  %1875 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1871, i64 noundef %1874, i32 noundef %1875)
  %1876 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1876, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %1877 = load ptr, ptr %6, align 8, !tbaa !5
  %1878 = getelementptr inbounds %struct.w2c_hermes, ptr %1877, i32 0, i32 6
  %1879 = load i32, ptr %42, align 4, !tbaa !9
  %1880 = zext i32 %1879 to i64
  %1881 = add i64 %1880, 128
  %1882 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1878, i64 noundef %1881, i32 noundef %1882)
  %1883 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1883, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %1884 = load ptr, ptr %6, align 8, !tbaa !5
  %1885 = getelementptr inbounds %struct.w2c_hermes, ptr %1884, i32 0, i32 6
  %1886 = load i32, ptr %42, align 4, !tbaa !9
  %1887 = zext i32 %1886 to i64
  %1888 = add i64 %1887, 104
  %1889 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1885, i64 noundef %1888, i32 noundef %1889)
  %1890 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1890, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %1891 = load ptr, ptr %6, align 8, !tbaa !5
  %1892 = getelementptr inbounds %struct.w2c_hermes, ptr %1891, i32 0, i32 6
  %1893 = load i32, ptr %42, align 4, !tbaa !9
  %1894 = zext i32 %1893 to i64
  %1895 = add i64 %1894, 80
  %1896 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1892, i64 noundef %1895, i32 noundef %1896)
  %1897 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1897, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %1898 = load ptr, ptr %6, align 8, !tbaa !5
  %1899 = getelementptr inbounds %struct.w2c_hermes, ptr %1898, i32 0, i32 6
  %1900 = load i32, ptr %42, align 4, !tbaa !9
  %1901 = zext i32 %1900 to i64
  %1902 = add i64 %1901, 56
  %1903 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1899, i64 noundef %1902, i32 noundef %1903)
  %1904 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1904, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %1905 = load ptr, ptr %6, align 8, !tbaa !5
  %1906 = getelementptr inbounds %struct.w2c_hermes, ptr %1905, i32 0, i32 6
  %1907 = load i32, ptr %42, align 4, !tbaa !9
  %1908 = zext i32 %1907 to i64
  %1909 = add i64 %1908, 32
  %1910 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1906, i64 noundef %1909, i32 noundef %1910)
  %1911 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1911, ptr %42, align 4, !tbaa !9
  store i32 192, ptr %43, align 4, !tbaa !9
  %1912 = load i32, ptr %43, align 4, !tbaa !9
  %1913 = load i32, ptr %42, align 4, !tbaa !9
  %1914 = add i32 %1913, %1912
  store i32 %1914, ptr %42, align 4, !tbaa !9
  %1915 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1915, ptr %10, align 4, !tbaa !9
  %1916 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1916, ptr %43, align 4, !tbaa !9
  %1917 = load i32, ptr %42, align 4, !tbaa !9
  %1918 = load i32, ptr %43, align 4, !tbaa !9
  %1919 = icmp ne i32 %1917, %1918
  %1920 = zext i1 %1919 to i32
  store i32 %1920, ptr %42, align 4, !tbaa !9
  %1921 = load i32, ptr %42, align 4, !tbaa !9
  %1922 = icmp ne i32 %1921, 0
  br i1 %1922, label %1923, label %1924

1923:                                             ; preds = %1799
  br label %1799

1924:                                             ; preds = %1799
  br label %1925

1925:                                             ; preds = %1924, %1791, %1626
  %1926 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %1926, ptr %42, align 4, !tbaa !9
  %1927 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %1927, ptr %43, align 4, !tbaa !9
  %1928 = load i32, ptr %42, align 4, !tbaa !9
  %1929 = load i32, ptr %43, align 4, !tbaa !9
  %1930 = icmp eq i32 %1928, %1929
  %1931 = zext i1 %1930 to i32
  store i32 %1931, ptr %42, align 4, !tbaa !9
  %1932 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1932, ptr %31, align 4, !tbaa !9
  %1933 = load i32, ptr %42, align 4, !tbaa !9
  %1934 = icmp ne i32 %1933, 0
  br i1 %1934, label %1935, label %1937

1935:                                             ; preds = %1925
  store i32 0, ptr %42, align 4, !tbaa !9
  %1936 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1936, ptr %23, align 4, !tbaa !9
  br label %4790

1937:                                             ; preds = %1925
  %1938 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %1938, ptr %42, align 4, !tbaa !9
  %1939 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1939, ptr %18, align 4, !tbaa !9
  br label %1940

1940:                                             ; preds = %4090, %1937
  %1941 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1941, ptr %42, align 4, !tbaa !9
  %1942 = load ptr, ptr %6, align 8, !tbaa !5
  %1943 = getelementptr inbounds %struct.w2c_hermes, ptr %1942, i32 0, i32 6
  %1944 = load i32, ptr %42, align 4, !tbaa !9
  %1945 = zext i32 %1944 to i64
  %1946 = add i64 %1945, 8
  %1947 = call i32 @i32_load(ptr noundef %1943, i64 noundef %1946)
  store i32 %1947, ptr %42, align 4, !tbaa !9
  %1948 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1948, ptr %25, align 4, !tbaa !9
  store i32 24576, ptr %43, align 4, !tbaa !9
  %1949 = load i32, ptr %42, align 4, !tbaa !9
  %1950 = load i32, ptr %43, align 4, !tbaa !9
  %1951 = icmp ugt i32 %1949, %1950
  %1952 = zext i1 %1951 to i32
  store i32 %1952, ptr %42, align 4, !tbaa !9
  %1953 = load i32, ptr %42, align 4, !tbaa !9
  %1954 = icmp ne i32 %1953, 0
  br i1 %1954, label %1955, label %1956

1955:                                             ; preds = %1940
  br label %4077

1956:                                             ; preds = %1940
  %1957 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %1957, ptr %42, align 4, !tbaa !9
  %1958 = load i32, ptr %42, align 4, !tbaa !9
  %1959 = icmp ne i32 %1958, 0
  %1960 = xor i1 %1959, true
  %1961 = zext i1 %1960 to i32
  store i32 %1961, ptr %42, align 4, !tbaa !9
  %1962 = load i32, ptr %42, align 4, !tbaa !9
  %1963 = icmp ne i32 %1962, 0
  br i1 %1963, label %1964, label %1965

1964:                                             ; preds = %1956
  br label %4077

1965:                                             ; preds = %1956
  %1966 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1966, ptr %42, align 4, !tbaa !9
  %1967 = load ptr, ptr %6, align 8, !tbaa !5
  %1968 = getelementptr inbounds %struct.w2c_hermes, ptr %1967, i32 0, i32 6
  %1969 = load i32, ptr %42, align 4, !tbaa !9
  %1970 = zext i32 %1969 to i64
  %1971 = add i64 %1970, 4
  %1972 = call i32 @i32_load(ptr noundef %1968, i64 noundef %1971)
  store i32 %1972, ptr %42, align 4, !tbaa !9
  %1973 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1973, ptr %33, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %1974 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1974, ptr %16, align 4, !tbaa !9
  %1975 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %1975, ptr %42, align 4, !tbaa !9
  %1976 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1976, ptr %17, align 4, !tbaa !9
  br label %1977

1977:                                             ; preds = %4075, %1965
  %1978 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1978, ptr %42, align 4, !tbaa !9
  %1979 = load ptr, ptr %6, align 8, !tbaa !5
  %1980 = getelementptr inbounds %struct.w2c_hermes, ptr %1979, i32 0, i32 6
  %1981 = load i32, ptr %42, align 4, !tbaa !9
  %1982 = zext i32 %1981 to i64
  %1983 = add i64 %1982, 28
  %1984 = call i32 @i32_load(ptr noundef %1980, i64 noundef %1983)
  store i32 %1984, ptr %42, align 4, !tbaa !9
  %1985 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1985, ptr %23, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %1986 = load i32, ptr %43, align 4, !tbaa !9
  %1987 = load i32, ptr %42, align 4, !tbaa !9
  %1988 = sub i32 %1987, %1986
  store i32 %1988, ptr %42, align 4, !tbaa !9
  %1989 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1989, ptr %28, align 4, !tbaa !9
  %1990 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1990, ptr %42, align 4, !tbaa !9
  %1991 = load ptr, ptr %6, align 8, !tbaa !5
  %1992 = getelementptr inbounds %struct.w2c_hermes, ptr %1991, i32 0, i32 6
  %1993 = load i32, ptr %42, align 4, !tbaa !9
  %1994 = zext i32 %1993 to i64
  %1995 = add i64 %1994, 16
  %1996 = call i32 @i32_load(ptr noundef %1992, i64 noundef %1995)
  store i32 %1996, ptr %42, align 4, !tbaa !9
  %1997 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1997, ptr %21, align 4, !tbaa !9
  %1998 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1998, ptr %42, align 4, !tbaa !9
  %1999 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %1999, ptr %10, align 4, !tbaa !9
  br label %2000

2000:                                             ; preds = %2189, %1977
  %2001 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %2001, ptr %42, align 4, !tbaa !9
  %2002 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %2002, ptr %43, align 4, !tbaa !9
  %2003 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2003, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %2004 = load i32, ptr %45, align 4, !tbaa !9
  %2005 = load i32, ptr %44, align 4, !tbaa !9
  %2006 = sub i32 %2005, %2004
  store i32 %2006, ptr %44, align 4, !tbaa !9
  %2007 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %2007, ptr %17, align 4, !tbaa !9
  %2008 = load i32, ptr %44, align 4, !tbaa !9
  %2009 = load i32, ptr %43, align 4, !tbaa !9
  %2010 = add i32 %2009, %2008
  store i32 %2010, ptr %43, align 4, !tbaa !9
  %2011 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %2011, ptr %19, align 4, !tbaa !9
  %2012 = load ptr, ptr %6, align 8, !tbaa !5
  %2013 = getelementptr inbounds %struct.w2c_hermes, ptr %2012, i32 0, i32 6
  %2014 = load i32, ptr %43, align 4, !tbaa !9
  %2015 = zext i32 %2014 to i64
  %2016 = call i32 @i32_load8_u(ptr noundef %2013, i64 noundef %2015)
  store i32 %2016, ptr %43, align 4, !tbaa !9
  %2017 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %2017, ptr %12, align 4, !tbaa !9
  %2018 = load i32, ptr %43, align 4, !tbaa !9
  %2019 = load i32, ptr %42, align 4, !tbaa !9
  %2020 = add i32 %2019, %2018
  store i32 %2020, ptr %42, align 4, !tbaa !9
  store i32 1025, ptr %43, align 4, !tbaa !9
  %2021 = load i32, ptr %43, align 4, !tbaa !9
  %2022 = load i32, ptr %42, align 4, !tbaa !9
  %2023 = mul i32 %2022, %2021
  store i32 %2023, ptr %42, align 4, !tbaa !9
  %2024 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2024, ptr %11, align 4, !tbaa !9
  store i32 6, ptr %43, align 4, !tbaa !9
  %2025 = load i32, ptr %43, align 4, !tbaa !9
  %2026 = and i32 %2025, 31
  %2027 = load i32, ptr %42, align 4, !tbaa !9
  %2028 = lshr i32 %2027, %2026
  store i32 %2028, ptr %42, align 4, !tbaa !9
  %2029 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2029, ptr %43, align 4, !tbaa !9
  %2030 = load i32, ptr %43, align 4, !tbaa !9
  %2031 = load i32, ptr %42, align 4, !tbaa !9
  %2032 = xor i32 %2031, %2030
  store i32 %2032, ptr %42, align 4, !tbaa !9
  %2033 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2033, ptr %16, align 4, !tbaa !9
  %2034 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2034, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %2035 = load i32, ptr %43, align 4, !tbaa !9
  %2036 = load i32, ptr %42, align 4, !tbaa !9
  %2037 = add i32 %2036, %2035
  store i32 %2037, ptr %42, align 4, !tbaa !9
  %2038 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %2038, ptr %43, align 4, !tbaa !9
  %2039 = load i32, ptr %42, align 4, !tbaa !9
  %2040 = load i32, ptr %43, align 4, !tbaa !9
  %2041 = icmp ugt i32 %2039, %2040
  %2042 = zext i1 %2041 to i32
  store i32 %2042, ptr %42, align 4, !tbaa !9
  %2043 = load i32, ptr %42, align 4, !tbaa !9
  %2044 = icmp ne i32 %2043, 0
  br i1 %2044, label %2045, label %2046

2045:                                             ; preds = %2000
  br label %2171

2046:                                             ; preds = %2000
  %2047 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %2047, ptr %42, align 4, !tbaa !9
  %2048 = load i32, ptr %42, align 4, !tbaa !9
  %2049 = icmp ne i32 %2048, 0
  %2050 = xor i1 %2049, true
  %2051 = zext i1 %2050 to i32
  store i32 %2051, ptr %42, align 4, !tbaa !9
  %2052 = load i32, ptr %42, align 4, !tbaa !9
  %2053 = icmp ne i32 %2052, 0
  br i1 %2053, label %2054, label %2055

2054:                                             ; preds = %2046
  br label %2184

2055:                                             ; preds = %2046
  %2056 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %2056, ptr %42, align 4, !tbaa !9
  %2057 = load ptr, ptr %6, align 8, !tbaa !5
  %2058 = getelementptr inbounds %struct.w2c_hermes, ptr %2057, i32 0, i32 6
  %2059 = load i32, ptr %42, align 4, !tbaa !9
  %2060 = zext i32 %2059 to i64
  %2061 = add i64 %2060, 2
  %2062 = call i32 @i32_load8_u(ptr noundef %2058, i64 noundef %2061)
  store i32 %2062, ptr %42, align 4, !tbaa !9
  %2063 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2063, ptr %43, align 4, !tbaa !9
  %2064 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %2064, ptr %44, align 4, !tbaa !9
  %2065 = load i32, ptr %44, align 4, !tbaa !9
  %2066 = load i32, ptr %43, align 4, !tbaa !9
  %2067 = add i32 %2066, %2065
  store i32 %2067, ptr %43, align 4, !tbaa !9
  %2068 = load ptr, ptr %6, align 8, !tbaa !5
  %2069 = getelementptr inbounds %struct.w2c_hermes, ptr %2068, i32 0, i32 6
  %2070 = load i32, ptr %43, align 4, !tbaa !9
  %2071 = zext i32 %2070 to i64
  %2072 = call i32 @i32_load8_u(ptr noundef %2069, i64 noundef %2071)
  store i32 %2072, ptr %43, align 4, !tbaa !9
  store i32 8, ptr %44, align 4, !tbaa !9
  %2073 = load i32, ptr %44, align 4, !tbaa !9
  %2074 = and i32 %2073, 31
  %2075 = load i32, ptr %43, align 4, !tbaa !9
  %2076 = shl i32 %2075, %2074
  store i32 %2076, ptr %43, align 4, !tbaa !9
  %2077 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2077, ptr %44, align 4, !tbaa !9
  store i32 16, ptr %45, align 4, !tbaa !9
  %2078 = load i32, ptr %45, align 4, !tbaa !9
  %2079 = and i32 %2078, 31
  %2080 = load i32, ptr %44, align 4, !tbaa !9
  %2081 = shl i32 %2080, %2079
  store i32 %2081, ptr %44, align 4, !tbaa !9
  %2082 = load i32, ptr %44, align 4, !tbaa !9
  %2083 = load i32, ptr %43, align 4, !tbaa !9
  %2084 = or i32 %2083, %2082
  store i32 %2084, ptr %43, align 4, !tbaa !9
  %2085 = load i32, ptr %43, align 4, !tbaa !9
  %2086 = load i32, ptr %42, align 4, !tbaa !9
  %2087 = or i32 %2086, %2085
  store i32 %2087, ptr %42, align 4, !tbaa !9
  %2088 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2088, ptr %12, align 4, !tbaa !9
  %2089 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2089, ptr %43, align 4, !tbaa !9
  %2090 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2090, ptr %44, align 4, !tbaa !9
  store i32 37, ptr %45, align 4, !tbaa !9
  %2091 = load i32, ptr %45, align 4, !tbaa !9
  %2092 = load i32, ptr %44, align 4, !tbaa !9
  %2093 = mul i32 %2092, %2091
  store i32 %2093, ptr %44, align 4, !tbaa !9
  %2094 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %2094, ptr %45, align 4, !tbaa !9
  %2095 = load i32, ptr %45, align 4, !tbaa !9
  %2096 = load i32, ptr %44, align 4, !tbaa !9
  %2097 = and i32 %2096, %2095
  store i32 %2097, ptr %44, align 4, !tbaa !9
  %2098 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %2098, ptr %13, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %2099 = load i32, ptr %45, align 4, !tbaa !9
  %2100 = and i32 %2099, 31
  %2101 = load i32, ptr %44, align 4, !tbaa !9
  %2102 = shl i32 %2101, %2100
  store i32 %2102, ptr %44, align 4, !tbaa !9
  %2103 = load i32, ptr %44, align 4, !tbaa !9
  %2104 = load i32, ptr %43, align 4, !tbaa !9
  %2105 = add i32 %2104, %2103
  store i32 %2105, ptr %43, align 4, !tbaa !9
  %2106 = load ptr, ptr %6, align 8, !tbaa !5
  %2107 = getelementptr inbounds %struct.w2c_hermes, ptr %2106, i32 0, i32 6
  %2108 = load i32, ptr %43, align 4, !tbaa !9
  %2109 = zext i32 %2108 to i64
  %2110 = call i32 @i32_load(ptr noundef %2107, i64 noundef %2109)
  store i32 %2110, ptr %43, align 4, !tbaa !9
  %2111 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %2111, ptr %11, align 4, !tbaa !9
  %2112 = load i32, ptr %42, align 4, !tbaa !9
  %2113 = load i32, ptr %43, align 4, !tbaa !9
  %2114 = icmp eq i32 %2112, %2113
  %2115 = zext i1 %2114 to i32
  store i32 %2115, ptr %42, align 4, !tbaa !9
  %2116 = load i32, ptr %42, align 4, !tbaa !9
  %2117 = icmp ne i32 %2116, 0
  br i1 %2117, label %2118, label %2119

2118:                                             ; preds = %2055
  br label %2171

2119:                                             ; preds = %2055
  store i32 1, ptr %42, align 4, !tbaa !9
  %2120 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2120, ptr %22, align 4, !tbaa !9
  br label %2121

2121:                                             ; preds = %2169, %2119
  %2122 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2122, ptr %42, align 4, !tbaa !9
  store i32 -1, ptr %43, align 4, !tbaa !9
  %2123 = load i32, ptr %42, align 4, !tbaa !9
  %2124 = load i32, ptr %43, align 4, !tbaa !9
  %2125 = icmp eq i32 %2123, %2124
  %2126 = zext i1 %2125 to i32
  store i32 %2126, ptr %42, align 4, !tbaa !9
  %2127 = load i32, ptr %42, align 4, !tbaa !9
  %2128 = icmp ne i32 %2127, 0
  br i1 %2128, label %2129, label %2130

2129:                                             ; preds = %2121
  br label %2184

2130:                                             ; preds = %2121
  %2131 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2131, ptr %42, align 4, !tbaa !9
  %2132 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %2132, ptr %43, align 4, !tbaa !9
  %2133 = load i32, ptr %43, align 4, !tbaa !9
  %2134 = load i32, ptr %42, align 4, !tbaa !9
  %2135 = add i32 %2134, %2133
  store i32 %2135, ptr %42, align 4, !tbaa !9
  %2136 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2136, ptr %10, align 4, !tbaa !9
  %2137 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %2137, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2138 = load i32, ptr %43, align 4, !tbaa !9
  %2139 = load i32, ptr %42, align 4, !tbaa !9
  %2140 = add i32 %2139, %2138
  store i32 %2140, ptr %42, align 4, !tbaa !9
  %2141 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2141, ptr %22, align 4, !tbaa !9
  %2142 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2142, ptr %42, align 4, !tbaa !9
  %2143 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2143, ptr %43, align 4, !tbaa !9
  %2144 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2144, ptr %44, align 4, !tbaa !9
  %2145 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %2145, ptr %45, align 4, !tbaa !9
  %2146 = load i32, ptr %45, align 4, !tbaa !9
  %2147 = load i32, ptr %44, align 4, !tbaa !9
  %2148 = and i32 %2147, %2146
  store i32 %2148, ptr %44, align 4, !tbaa !9
  %2149 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %2149, ptr %13, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %2150 = load i32, ptr %45, align 4, !tbaa !9
  %2151 = and i32 %2150, 31
  %2152 = load i32, ptr %44, align 4, !tbaa !9
  %2153 = shl i32 %2152, %2151
  store i32 %2153, ptr %44, align 4, !tbaa !9
  %2154 = load i32, ptr %44, align 4, !tbaa !9
  %2155 = load i32, ptr %43, align 4, !tbaa !9
  %2156 = add i32 %2155, %2154
  store i32 %2156, ptr %43, align 4, !tbaa !9
  %2157 = load ptr, ptr %6, align 8, !tbaa !5
  %2158 = getelementptr inbounds %struct.w2c_hermes, ptr %2157, i32 0, i32 6
  %2159 = load i32, ptr %43, align 4, !tbaa !9
  %2160 = zext i32 %2159 to i64
  %2161 = call i32 @i32_load(ptr noundef %2158, i64 noundef %2160)
  store i32 %2161, ptr %43, align 4, !tbaa !9
  %2162 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %2162, ptr %11, align 4, !tbaa !9
  %2163 = load i32, ptr %42, align 4, !tbaa !9
  %2164 = load i32, ptr %43, align 4, !tbaa !9
  %2165 = icmp ne i32 %2163, %2164
  %2166 = zext i1 %2165 to i32
  store i32 %2166, ptr %42, align 4, !tbaa !9
  %2167 = load i32, ptr %42, align 4, !tbaa !9
  %2168 = icmp ne i32 %2167, 0
  br i1 %2168, label %2169, label %2170

2169:                                             ; preds = %2130
  br label %2121

2170:                                             ; preds = %2130
  br label %2171

2171:                                             ; preds = %2170, %2118, %2045
  %2172 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %2172, ptr %42, align 4, !tbaa !9
  %2173 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2173, ptr %43, align 4, !tbaa !9
  %2174 = load i32, ptr %43, align 4, !tbaa !9
  %2175 = load i32, ptr %42, align 4, !tbaa !9
  %2176 = sub i32 %2175, %2174
  store i32 %2176, ptr %42, align 4, !tbaa !9
  %2177 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2177, ptr %37, align 4, !tbaa !9
  %2178 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2178, ptr %42, align 4, !tbaa !9
  %2179 = load i32, ptr %42, align 4, !tbaa !9
  %2180 = icmp ne i32 %2179, 0
  br i1 %2180, label %2181, label %2182

2181:                                             ; preds = %2171
  br label %2191

2182:                                             ; preds = %2171
  store i32 0, ptr %42, align 4, !tbaa !9
  %2183 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2183, ptr %13, align 4, !tbaa !9
  br label %2469

2184:                                             ; preds = %2129, %2054
  %2185 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2185, ptr %42, align 4, !tbaa !9
  %2186 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2186, ptr %10, align 4, !tbaa !9
  %2187 = load i32, ptr %42, align 4, !tbaa !9
  %2188 = icmp ne i32 %2187, 0
  br i1 %2188, label %2189, label %2190

2189:                                             ; preds = %2184
  br label %2000

2190:                                             ; preds = %2184
  br label %4077

2191:                                             ; preds = %2181
  %2192 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %2192, ptr %42, align 4, !tbaa !9
  %2193 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2193, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %2194 = load i32, ptr %44, align 4, !tbaa !9
  %2195 = load i32, ptr %43, align 4, !tbaa !9
  %2196 = sub i32 %2195, %2194
  store i32 %2196, ptr %43, align 4, !tbaa !9
  %2197 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %2197, ptr %22, align 4, !tbaa !9
  %2198 = load i32, ptr %43, align 4, !tbaa !9
  %2199 = load i32, ptr %42, align 4, !tbaa !9
  %2200 = and i32 %2199, %2198
  store i32 %2200, ptr %42, align 4, !tbaa !9
  %2201 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2201, ptr %21, align 4, !tbaa !9
  %2202 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %2202, ptr %42, align 4, !tbaa !9
  %2203 = load i32, ptr %42, align 4, !tbaa !9
  %2204 = icmp ne i32 %2203, 0
  br i1 %2204, label %2205, label %2341

2205:                                             ; preds = %2191
  %2206 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %2206, ptr %42, align 4, !tbaa !9
  %2207 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %2207, ptr %43, align 4, !tbaa !9
  %2208 = load i32, ptr %43, align 4, !tbaa !9
  %2209 = load i32, ptr %42, align 4, !tbaa !9
  %2210 = add i32 %2209, %2208
  store i32 %2210, ptr %42, align 4, !tbaa !9
  %2211 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2211, ptr %23, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %2212 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2212, ptr %26, align 4, !tbaa !9
  br label %2213

2213:                                             ; preds = %2325, %2205
  %2214 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2214, ptr %42, align 4, !tbaa !9
  %2215 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2215, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %2216 = load i32, ptr %44, align 4, !tbaa !9
  %2217 = load i32, ptr %43, align 4, !tbaa !9
  %2218 = mul i32 %2217, %2216
  store i32 %2218, ptr %43, align 4, !tbaa !9
  %2219 = load i32, ptr %43, align 4, !tbaa !9
  %2220 = load i32, ptr %42, align 4, !tbaa !9
  %2221 = add i32 %2220, %2219
  store i32 %2221, ptr %42, align 4, !tbaa !9
  %2222 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2222, ptr %13, align 4, !tbaa !9
  %2223 = load ptr, ptr %6, align 8, !tbaa !5
  %2224 = getelementptr inbounds %struct.w2c_hermes, ptr %2223, i32 0, i32 6
  %2225 = load i32, ptr %42, align 4, !tbaa !9
  %2226 = zext i32 %2225 to i64
  %2227 = call i64 @i64_load(ptr noundef %2224, i64 noundef %2226)
  store i64 %2227, ptr %48, align 8, !tbaa !11
  %2228 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %2228, ptr %39, align 8, !tbaa !11
  %2229 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2229, ptr %42, align 4, !tbaa !9
  %2230 = load ptr, ptr %6, align 8, !tbaa !5
  %2231 = getelementptr inbounds %struct.w2c_hermes, ptr %2230, i32 0, i32 6
  %2232 = load i32, ptr %42, align 4, !tbaa !9
  %2233 = zext i32 %2232 to i64
  %2234 = add i64 %2233, 8
  %2235 = call i32 @i32_load(ptr noundef %2231, i64 noundef %2234)
  store i32 %2235, ptr %42, align 4, !tbaa !9
  %2236 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2236, ptr %12, align 4, !tbaa !9
  %2237 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %2237, ptr %43, align 4, !tbaa !9
  %2238 = load i32, ptr %42, align 4, !tbaa !9
  %2239 = load i32, ptr %43, align 4, !tbaa !9
  %2240 = icmp ne i32 %2238, %2239
  %2241 = zext i1 %2240 to i32
  store i32 %2241, ptr %42, align 4, !tbaa !9
  %2242 = load i32, ptr %42, align 4, !tbaa !9
  %2243 = icmp ne i32 %2242, 0
  br i1 %2243, label %2244, label %2245

2244:                                             ; preds = %2213
  br label %2308

2245:                                             ; preds = %2213
  %2246 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %2246, ptr %42, align 4, !tbaa !9
  %2247 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2247, ptr %49, align 8, !tbaa !11
  store i64 32, ptr %50, align 8, !tbaa !11
  %2248 = load i64, ptr %50, align 8, !tbaa !11
  %2249 = and i64 %2248, 63
  %2250 = load i64, ptr %49, align 8, !tbaa !11
  %2251 = lshr i64 %2250, %2249
  store i64 %2251, ptr %49, align 8, !tbaa !11
  %2252 = load i64, ptr %49, align 8, !tbaa !11
  %2253 = trunc i64 %2252 to i32
  store i32 %2253, ptr %43, align 4, !tbaa !9
  %2254 = load i32, ptr %42, align 4, !tbaa !9
  %2255 = load i32, ptr %43, align 4, !tbaa !9
  %2256 = icmp ne i32 %2254, %2255
  %2257 = zext i1 %2256 to i32
  store i32 %2257, ptr %42, align 4, !tbaa !9
  %2258 = load i32, ptr %42, align 4, !tbaa !9
  %2259 = icmp ne i32 %2258, 0
  br i1 %2259, label %2260, label %2261

2260:                                             ; preds = %2245
  br label %2308

2261:                                             ; preds = %2245
  %2262 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2262, ptr %48, align 8, !tbaa !11
  %2263 = load i64, ptr %48, align 8, !tbaa !11
  %2264 = trunc i64 %2263 to i32
  store i32 %2264, ptr %42, align 4, !tbaa !9
  %2265 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2265, ptr %10, align 4, !tbaa !9
  %2266 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %2266, ptr %42, align 4, !tbaa !9
  %2267 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2267, ptr %11, align 4, !tbaa !9
  br label %2268

2268:                                             ; preds = %2306, %2261
  %2269 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2269, ptr %42, align 4, !tbaa !9
  %2270 = load ptr, ptr %6, align 8, !tbaa !5
  %2271 = getelementptr inbounds %struct.w2c_hermes, ptr %2270, i32 0, i32 6
  %2272 = load i32, ptr %42, align 4, !tbaa !9
  %2273 = zext i32 %2272 to i64
  %2274 = call i32 @i32_load8_u(ptr noundef %2271, i64 noundef %2273)
  store i32 %2274, ptr %42, align 4, !tbaa !9
  %2275 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2275, ptr %43, align 4, !tbaa !9
  %2276 = load ptr, ptr %6, align 8, !tbaa !5
  %2277 = getelementptr inbounds %struct.w2c_hermes, ptr %2276, i32 0, i32 6
  %2278 = load i32, ptr %43, align 4, !tbaa !9
  %2279 = zext i32 %2278 to i64
  %2280 = call i32 @i32_load8_u(ptr noundef %2277, i64 noundef %2279)
  store i32 %2280, ptr %43, align 4, !tbaa !9
  %2281 = load i32, ptr %42, align 4, !tbaa !9
  %2282 = load i32, ptr %43, align 4, !tbaa !9
  %2283 = icmp ne i32 %2281, %2282
  %2284 = zext i1 %2283 to i32
  store i32 %2284, ptr %42, align 4, !tbaa !9
  %2285 = load i32, ptr %42, align 4, !tbaa !9
  %2286 = icmp ne i32 %2285, 0
  br i1 %2286, label %2287, label %2288

2287:                                             ; preds = %2268
  br label %2308

2288:                                             ; preds = %2268
  %2289 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2289, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2290 = load i32, ptr %43, align 4, !tbaa !9
  %2291 = load i32, ptr %42, align 4, !tbaa !9
  %2292 = add i32 %2291, %2290
  store i32 %2292, ptr %42, align 4, !tbaa !9
  %2293 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2293, ptr %10, align 4, !tbaa !9
  %2294 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2294, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2295 = load i32, ptr %43, align 4, !tbaa !9
  %2296 = load i32, ptr %42, align 4, !tbaa !9
  %2297 = add i32 %2296, %2295
  store i32 %2297, ptr %42, align 4, !tbaa !9
  %2298 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2298, ptr %11, align 4, !tbaa !9
  %2299 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %2299, ptr %43, align 4, !tbaa !9
  %2300 = load i32, ptr %42, align 4, !tbaa !9
  %2301 = load i32, ptr %43, align 4, !tbaa !9
  %2302 = icmp ne i32 %2300, %2301
  %2303 = zext i1 %2302 to i32
  store i32 %2303, ptr %42, align 4, !tbaa !9
  %2304 = load i32, ptr %42, align 4, !tbaa !9
  %2305 = icmp ne i32 %2304, 0
  br i1 %2305, label %2306, label %2307

2306:                                             ; preds = %2288
  br label %2268

2307:                                             ; preds = %2288
  br label %3865

2308:                                             ; preds = %2287, %2260, %2244
  %2309 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2309, ptr %42, align 4, !tbaa !9
  %2310 = load i32, ptr %42, align 4, !tbaa !9
  %2311 = icmp ne i32 %2310, 0
  %2312 = xor i1 %2311, true
  %2313 = zext i1 %2312 to i32
  store i32 %2313, ptr %42, align 4, !tbaa !9
  %2314 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2314, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %2315 = load i64, ptr %49, align 8, !tbaa !11
  %2316 = load i64, ptr %50, align 8, !tbaa !11
  %2317 = icmp ult i64 %2315, %2316
  %2318 = zext i1 %2317 to i32
  store i32 %2318, ptr %43, align 4, !tbaa !9
  %2319 = load i32, ptr %43, align 4, !tbaa !9
  %2320 = load i32, ptr %42, align 4, !tbaa !9
  %2321 = and i32 %2320, %2319
  store i32 %2321, ptr %42, align 4, !tbaa !9
  %2322 = load i32, ptr %42, align 4, !tbaa !9
  %2323 = icmp ne i32 %2322, 0
  br i1 %2323, label %2324, label %2325

2324:                                             ; preds = %2308
  br label %2469

2325:                                             ; preds = %2308
  %2326 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2326, ptr %42, align 4, !tbaa !9
  %2327 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %2327, ptr %43, align 4, !tbaa !9
  %2328 = load i32, ptr %43, align 4, !tbaa !9
  %2329 = load i32, ptr %42, align 4, !tbaa !9
  %2330 = add i32 %2329, %2328
  store i32 %2330, ptr %42, align 4, !tbaa !9
  %2331 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %2331, ptr %43, align 4, !tbaa !9
  %2332 = load i32, ptr %43, align 4, !tbaa !9
  %2333 = load i32, ptr %42, align 4, !tbaa !9
  %2334 = and i32 %2333, %2332
  store i32 %2334, ptr %42, align 4, !tbaa !9
  %2335 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2335, ptr %21, align 4, !tbaa !9
  %2336 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %2336, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2337 = load i32, ptr %43, align 4, !tbaa !9
  %2338 = load i32, ptr %42, align 4, !tbaa !9
  %2339 = add i32 %2338, %2337
  store i32 %2339, ptr %42, align 4, !tbaa !9
  %2340 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2340, ptr %26, align 4, !tbaa !9
  br label %2213

2341:                                             ; preds = %2191
  %2342 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2342, ptr %42, align 4, !tbaa !9
  %2343 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2343, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %2344 = load i32, ptr %44, align 4, !tbaa !9
  %2345 = load i32, ptr %43, align 4, !tbaa !9
  %2346 = mul i32 %2345, %2344
  store i32 %2346, ptr %43, align 4, !tbaa !9
  %2347 = load i32, ptr %43, align 4, !tbaa !9
  %2348 = load i32, ptr %42, align 4, !tbaa !9
  %2349 = add i32 %2348, %2347
  store i32 %2349, ptr %42, align 4, !tbaa !9
  %2350 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2350, ptr %13, align 4, !tbaa !9
  %2351 = load ptr, ptr %6, align 8, !tbaa !5
  %2352 = getelementptr inbounds %struct.w2c_hermes, ptr %2351, i32 0, i32 6
  %2353 = load i32, ptr %42, align 4, !tbaa !9
  %2354 = zext i32 %2353 to i64
  %2355 = call i64 @i64_load(ptr noundef %2352, i64 noundef %2354)
  store i64 %2355, ptr %48, align 8, !tbaa !11
  %2356 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %2356, ptr %39, align 8, !tbaa !11
  %2357 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %2357, ptr %42, align 4, !tbaa !9
  %2358 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2358, ptr %43, align 4, !tbaa !9
  %2359 = load ptr, ptr %6, align 8, !tbaa !5
  %2360 = getelementptr inbounds %struct.w2c_hermes, ptr %2359, i32 0, i32 6
  %2361 = load i32, ptr %43, align 4, !tbaa !9
  %2362 = zext i32 %2361 to i64
  %2363 = add i64 %2362, 8
  %2364 = call i32 @i32_load(ptr noundef %2360, i64 noundef %2363)
  store i32 %2364, ptr %43, align 4, !tbaa !9
  %2365 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %2365, ptr %10, align 4, !tbaa !9
  %2366 = load i32, ptr %42, align 4, !tbaa !9
  %2367 = load i32, ptr %43, align 4, !tbaa !9
  %2368 = icmp eq i32 %2366, %2367
  %2369 = zext i1 %2368 to i32
  store i32 %2369, ptr %42, align 4, !tbaa !9
  %2370 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2370, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %2371 = load i64, ptr %49, align 8, !tbaa !11
  %2372 = load i64, ptr %50, align 8, !tbaa !11
  %2373 = icmp ult i64 %2371, %2372
  %2374 = zext i1 %2373 to i32
  store i32 %2374, ptr %43, align 4, !tbaa !9
  %2375 = load i32, ptr %43, align 4, !tbaa !9
  %2376 = load i32, ptr %42, align 4, !tbaa !9
  %2377 = and i32 %2376, %2375
  store i32 %2377, ptr %42, align 4, !tbaa !9
  %2378 = load i32, ptr %42, align 4, !tbaa !9
  %2379 = icmp ne i32 %2378, 0
  br i1 %2379, label %2380, label %2381

2380:                                             ; preds = %2341
  br label %3865

2381:                                             ; preds = %2341
  store i32 1, ptr %42, align 4, !tbaa !9
  %2382 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2382, ptr %11, align 4, !tbaa !9
  %2383 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2383, ptr %42, align 4, !tbaa !9
  %2384 = load i32, ptr %42, align 4, !tbaa !9
  %2385 = icmp ne i32 %2384, 0
  %2386 = xor i1 %2385, true
  %2387 = zext i1 %2386 to i32
  store i32 %2387, ptr %42, align 4, !tbaa !9
  %2388 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2388, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %2389 = load i64, ptr %49, align 8, !tbaa !11
  %2390 = load i64, ptr %50, align 8, !tbaa !11
  %2391 = icmp ult i64 %2389, %2390
  %2392 = zext i1 %2391 to i32
  store i32 %2392, ptr %43, align 4, !tbaa !9
  %2393 = load i32, ptr %43, align 4, !tbaa !9
  %2394 = load i32, ptr %42, align 4, !tbaa !9
  %2395 = and i32 %2394, %2393
  store i32 %2395, ptr %42, align 4, !tbaa !9
  %2396 = load i32, ptr %42, align 4, !tbaa !9
  %2397 = icmp ne i32 %2396, 0
  br i1 %2397, label %2398, label %2399

2398:                                             ; preds = %2381
  br label %2469

2399:                                             ; preds = %2381
  br label %2400

2400:                                             ; preds = %2467, %2458, %2399
  %2401 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2401, ptr %42, align 4, !tbaa !9
  %2402 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2402, ptr %43, align 4, !tbaa !9
  %2403 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2403, ptr %44, align 4, !tbaa !9
  %2404 = load i32, ptr %44, align 4, !tbaa !9
  %2405 = load i32, ptr %43, align 4, !tbaa !9
  %2406 = add i32 %2405, %2404
  store i32 %2406, ptr %43, align 4, !tbaa !9
  %2407 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %2407, ptr %44, align 4, !tbaa !9
  %2408 = load i32, ptr %44, align 4, !tbaa !9
  %2409 = load i32, ptr %43, align 4, !tbaa !9
  %2410 = and i32 %2409, %2408
  store i32 %2410, ptr %43, align 4, !tbaa !9
  %2411 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %2411, ptr %21, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %2412 = load i32, ptr %44, align 4, !tbaa !9
  %2413 = load i32, ptr %43, align 4, !tbaa !9
  %2414 = mul i32 %2413, %2412
  store i32 %2414, ptr %43, align 4, !tbaa !9
  %2415 = load i32, ptr %43, align 4, !tbaa !9
  %2416 = load i32, ptr %42, align 4, !tbaa !9
  %2417 = add i32 %2416, %2415
  store i32 %2417, ptr %42, align 4, !tbaa !9
  %2418 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2418, ptr %13, align 4, !tbaa !9
  %2419 = load ptr, ptr %6, align 8, !tbaa !5
  %2420 = getelementptr inbounds %struct.w2c_hermes, ptr %2419, i32 0, i32 6
  %2421 = load i32, ptr %42, align 4, !tbaa !9
  %2422 = zext i32 %2421 to i64
  %2423 = call i64 @i64_load(ptr noundef %2420, i64 noundef %2422)
  store i64 %2423, ptr %48, align 8, !tbaa !11
  %2424 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %2424, ptr %39, align 8, !tbaa !11
  %2425 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %2425, ptr %42, align 4, !tbaa !9
  %2426 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2426, ptr %43, align 4, !tbaa !9
  %2427 = load ptr, ptr %6, align 8, !tbaa !5
  %2428 = getelementptr inbounds %struct.w2c_hermes, ptr %2427, i32 0, i32 6
  %2429 = load i32, ptr %43, align 4, !tbaa !9
  %2430 = zext i32 %2429 to i64
  %2431 = add i64 %2430, 8
  %2432 = call i32 @i32_load(ptr noundef %2428, i64 noundef %2431)
  store i32 %2432, ptr %43, align 4, !tbaa !9
  %2433 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %2433, ptr %10, align 4, !tbaa !9
  %2434 = load i32, ptr %42, align 4, !tbaa !9
  %2435 = load i32, ptr %43, align 4, !tbaa !9
  %2436 = icmp eq i32 %2434, %2435
  %2437 = zext i1 %2436 to i32
  store i32 %2437, ptr %42, align 4, !tbaa !9
  %2438 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2438, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %2439 = load i64, ptr %49, align 8, !tbaa !11
  %2440 = load i64, ptr %50, align 8, !tbaa !11
  %2441 = icmp ult i64 %2439, %2440
  %2442 = zext i1 %2441 to i32
  store i32 %2442, ptr %43, align 4, !tbaa !9
  %2443 = load i32, ptr %43, align 4, !tbaa !9
  %2444 = load i32, ptr %42, align 4, !tbaa !9
  %2445 = and i32 %2444, %2443
  store i32 %2445, ptr %42, align 4, !tbaa !9
  %2446 = load i32, ptr %42, align 4, !tbaa !9
  %2447 = icmp ne i32 %2446, 0
  br i1 %2447, label %2448, label %2449

2448:                                             ; preds = %2400
  br label %3865

2449:                                             ; preds = %2400
  %2450 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2450, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2451 = load i32, ptr %43, align 4, !tbaa !9
  %2452 = load i32, ptr %42, align 4, !tbaa !9
  %2453 = add i32 %2452, %2451
  store i32 %2453, ptr %42, align 4, !tbaa !9
  %2454 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2454, ptr %11, align 4, !tbaa !9
  %2455 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2455, ptr %42, align 4, !tbaa !9
  %2456 = load i32, ptr %42, align 4, !tbaa !9
  %2457 = icmp ne i32 %2456, 0
  br i1 %2457, label %2458, label %2459

2458:                                             ; preds = %2449
  br label %2400

2459:                                             ; preds = %2449
  %2460 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2460, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %2461 = load i64, ptr %48, align 8, !tbaa !11
  %2462 = load i64, ptr %49, align 8, !tbaa !11
  %2463 = icmp uge i64 %2461, %2462
  %2464 = zext i1 %2463 to i32
  store i32 %2464, ptr %42, align 4, !tbaa !9
  %2465 = load i32, ptr %42, align 4, !tbaa !9
  %2466 = icmp ne i32 %2465, 0
  br i1 %2466, label %2467, label %2468

2467:                                             ; preds = %2459
  br label %2400

2468:                                             ; preds = %2459
  br label %2469

2469:                                             ; preds = %2468, %2398, %2324, %2182
  %2470 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %2470, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %2471 = load i32, ptr %43, align 4, !tbaa !9
  %2472 = and i32 %2471, 31
  %2473 = load i32, ptr %42, align 4, !tbaa !9
  %2474 = shl i32 %2473, %2472
  store i32 %2474, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %2475 = load i32, ptr %43, align 4, !tbaa !9
  %2476 = load i32, ptr %42, align 4, !tbaa !9
  %2477 = add i32 %2476, %2475
  store i32 %2477, ptr %42, align 4, !tbaa !9
  %2478 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2478, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %2479 = load i32, ptr %44, align 4, !tbaa !9
  %2480 = load i32, ptr %43, align 4, !tbaa !9
  %2481 = mul i32 %2480, %2479
  store i32 %2481, ptr %43, align 4, !tbaa !9
  %2482 = load i32, ptr %42, align 4, !tbaa !9
  %2483 = load i32, ptr %43, align 4, !tbaa !9
  %2484 = icmp uge i32 %2482, %2483
  %2485 = zext i1 %2484 to i32
  store i32 %2485, ptr %42, align 4, !tbaa !9
  %2486 = load i32, ptr %42, align 4, !tbaa !9
  %2487 = icmp ne i32 %2486, 0
  br i1 %2487, label %2488, label %2495

2488:                                             ; preds = %2469
  %2489 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2489, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2490 = load i32, ptr %43, align 4, !tbaa !9
  %2491 = and i32 %2490, 31
  %2492 = load i32, ptr %42, align 4, !tbaa !9
  %2493 = shl i32 %2492, %2491
  store i32 %2493, ptr %42, align 4, !tbaa !9
  %2494 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2494, ptr %10, align 4, !tbaa !9
  br label %2530

2495:                                             ; preds = %2469
  %2496 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2496, ptr %42, align 4, !tbaa !9
  %2497 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2497, ptr %10, align 4, !tbaa !9
  %2498 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %2498, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %2499 = load i32, ptr %44, align 4, !tbaa !9
  %2500 = load i32, ptr %43, align 4, !tbaa !9
  %2501 = xor i32 %2500, %2499
  store i32 %2501, ptr %43, align 4, !tbaa !9
  %2502 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %2502, ptr %44, align 4, !tbaa !9
  %2503 = load i32, ptr %44, align 4, !tbaa !9
  %2504 = load i32, ptr %43, align 4, !tbaa !9
  %2505 = sub i32 %2504, %2503
  store i32 %2505, ptr %43, align 4, !tbaa !9
  %2506 = load i32, ptr %43, align 4, !tbaa !9
  %2507 = load i32, ptr %42, align 4, !tbaa !9
  %2508 = add i32 %2507, %2506
  store i32 %2508, ptr %42, align 4, !tbaa !9
  %2509 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2509, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %2510 = load i32, ptr %44, align 4, !tbaa !9
  %2511 = and i32 %2510, 31
  %2512 = load i32, ptr %43, align 4, !tbaa !9
  %2513 = lshr i32 %2512, %2511
  store i32 %2513, ptr %43, align 4, !tbaa !9
  %2514 = load i32, ptr %42, align 4, !tbaa !9
  %2515 = load i32, ptr %43, align 4, !tbaa !9
  %2516 = icmp ule i32 %2514, %2515
  %2517 = zext i1 %2516 to i32
  store i32 %2517, ptr %42, align 4, !tbaa !9
  %2518 = load i32, ptr %42, align 4, !tbaa !9
  %2519 = icmp ne i32 %2518, 0
  br i1 %2519, label %2520, label %2521

2520:                                             ; preds = %2495
  br label %2530

2521:                                             ; preds = %2495
  %2522 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2522, ptr %42, align 4, !tbaa !9
  %2523 = load ptr, ptr %6, align 8, !tbaa !5
  %2524 = getelementptr inbounds %struct.w2c_hermes, ptr %2523, i32 0, i32 6
  %2525 = load i32, ptr %42, align 4, !tbaa !9
  %2526 = zext i32 %2525 to i64
  %2527 = add i64 %2526, 8
  %2528 = call i32 @i32_load(ptr noundef %2524, i64 noundef %2527)
  store i32 %2528, ptr %42, align 4, !tbaa !9
  %2529 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2529, ptr %10, align 4, !tbaa !9
  br label %3789

2530:                                             ; preds = %2520, %2488
  store i32 64, ptr %42, align 4, !tbaa !9
  %2531 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2531, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %2532 = load i32, ptr %44, align 4, !tbaa !9
  %2533 = load i32, ptr %43, align 4, !tbaa !9
  %2534 = sub i32 %2533, %2532
  store i32 %2534, ptr %43, align 4, !tbaa !9
  %2535 = load i32, ptr %43, align 4, !tbaa !9
  %2536 = zext i32 %2535 to i64
  store i64 %2536, ptr %49, align 8, !tbaa !11
  %2537 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %2537, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %50, align 8, !tbaa !11
  %2538 = load i64, ptr %50, align 8, !tbaa !11
  %2539 = and i64 %2538, 63
  %2540 = load i64, ptr %49, align 8, !tbaa !11
  %2541 = lshr i64 %2540, %2539
  store i64 %2541, ptr %49, align 8, !tbaa !11
  %2542 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2542, ptr %50, align 8, !tbaa !11
  %2543 = load i64, ptr %50, align 8, !tbaa !11
  %2544 = load i64, ptr %49, align 8, !tbaa !11
  %2545 = or i64 %2544, %2543
  store i64 %2545, ptr %49, align 8, !tbaa !11
  %2546 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %2546, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %50, align 8, !tbaa !11
  %2547 = load i64, ptr %50, align 8, !tbaa !11
  %2548 = and i64 %2547, 63
  %2549 = load i64, ptr %49, align 8, !tbaa !11
  %2550 = lshr i64 %2549, %2548
  store i64 %2550, ptr %49, align 8, !tbaa !11
  %2551 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2551, ptr %50, align 8, !tbaa !11
  %2552 = load i64, ptr %50, align 8, !tbaa !11
  %2553 = load i64, ptr %49, align 8, !tbaa !11
  %2554 = or i64 %2553, %2552
  store i64 %2554, ptr %49, align 8, !tbaa !11
  %2555 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %2555, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %50, align 8, !tbaa !11
  %2556 = load i64, ptr %50, align 8, !tbaa !11
  %2557 = and i64 %2556, 63
  %2558 = load i64, ptr %49, align 8, !tbaa !11
  %2559 = lshr i64 %2558, %2557
  store i64 %2559, ptr %49, align 8, !tbaa !11
  %2560 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2560, ptr %50, align 8, !tbaa !11
  %2561 = load i64, ptr %50, align 8, !tbaa !11
  %2562 = load i64, ptr %49, align 8, !tbaa !11
  %2563 = or i64 %2562, %2561
  store i64 %2563, ptr %49, align 8, !tbaa !11
  %2564 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %2564, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %50, align 8, !tbaa !11
  %2565 = load i64, ptr %50, align 8, !tbaa !11
  %2566 = and i64 %2565, 63
  %2567 = load i64, ptr %49, align 8, !tbaa !11
  %2568 = lshr i64 %2567, %2566
  store i64 %2568, ptr %49, align 8, !tbaa !11
  %2569 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2569, ptr %50, align 8, !tbaa !11
  %2570 = load i64, ptr %50, align 8, !tbaa !11
  %2571 = load i64, ptr %49, align 8, !tbaa !11
  %2572 = or i64 %2571, %2570
  store i64 %2572, ptr %49, align 8, !tbaa !11
  %2573 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %2573, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %50, align 8, !tbaa !11
  %2574 = load i64, ptr %50, align 8, !tbaa !11
  %2575 = and i64 %2574, 63
  %2576 = load i64, ptr %49, align 8, !tbaa !11
  %2577 = lshr i64 %2576, %2575
  store i64 %2577, ptr %49, align 8, !tbaa !11
  %2578 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %2578, ptr %50, align 8, !tbaa !11
  %2579 = load i64, ptr %50, align 8, !tbaa !11
  %2580 = load i64, ptr %49, align 8, !tbaa !11
  %2581 = or i64 %2580, %2579
  store i64 %2581, ptr %49, align 8, !tbaa !11
  %2582 = load i64, ptr %49, align 8, !tbaa !11
  %2583 = trunc i64 %2582 to i32
  store i32 %2583, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %2584 = load i32, ptr %44, align 4, !tbaa !9
  %2585 = load i32, ptr %43, align 4, !tbaa !9
  %2586 = add i32 %2585, %2584
  store i32 %2586, ptr %43, align 4, !tbaa !9
  %2587 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %2587, ptr %10, align 4, !tbaa !9
  %2588 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2588, ptr %44, align 4, !tbaa !9
  store i32 64, ptr %45, align 4, !tbaa !9
  %2589 = load i32, ptr %44, align 4, !tbaa !9
  %2590 = load i32, ptr %45, align 4, !tbaa !9
  %2591 = icmp ule i32 %2589, %2590
  %2592 = zext i1 %2591 to i32
  store i32 %2592, ptr %44, align 4, !tbaa !9
  %2593 = load i32, ptr %44, align 4, !tbaa !9
  %2594 = icmp ne i32 %2593, 0
  br i1 %2594, label %2595, label %2597

2595:                                             ; preds = %2530
  %2596 = load i32, ptr %42, align 4, !tbaa !9
  br label %2599

2597:                                             ; preds = %2530
  %2598 = load i32, ptr %43, align 4, !tbaa !9
  br label %2599

2599:                                             ; preds = %2597, %2595
  %2600 = phi i32 [ %2596, %2595 ], [ %2598, %2597 ]
  store i32 %2600, ptr %42, align 4, !tbaa !9
  %2601 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2601, ptr %23, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %2602 = load i32, ptr %43, align 4, !tbaa !9
  %2603 = load i32, ptr %42, align 4, !tbaa !9
  %2604 = mul i32 %2603, %2602
  store i32 %2604, ptr %42, align 4, !tbaa !9
  %2605 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2605, ptr %15, align 4, !tbaa !9
  %2606 = load ptr, ptr %6, align 8, !tbaa !5
  %2607 = load i32, ptr %42, align 4, !tbaa !9
  %2608 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %2606, i32 noundef %2607)
  store i32 %2608, ptr %42, align 4, !tbaa !9
  %2609 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2609, ptr %12, align 4, !tbaa !9
  %2610 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %2610, ptr %43, align 4, !tbaa !9
  %2611 = load i32, ptr %43, align 4, !tbaa !9
  %2612 = load i32, ptr %42, align 4, !tbaa !9
  %2613 = add i32 %2612, %2611
  store i32 %2613, ptr %42, align 4, !tbaa !9
  %2614 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2614, ptr %21, align 4, !tbaa !9
  %2615 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2615, ptr %42, align 4, !tbaa !9
  %2616 = load i32, ptr %42, align 4, !tbaa !9
  %2617 = icmp ne i32 %2616, 0
  br i1 %2617, label %2618, label %2828

2618:                                             ; preds = %2599
  store i32 0, ptr %42, align 4, !tbaa !9
  %2619 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2619, ptr %11, align 4, !tbaa !9
  %2620 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2620, ptr %42, align 4, !tbaa !9
  %2621 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2621, ptr %10, align 4, !tbaa !9
  %2622 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %2622, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %2623 = load i32, ptr %43, align 4, !tbaa !9
  %2624 = load i32, ptr %42, align 4, !tbaa !9
  %2625 = sub i32 %2624, %2623
  store i32 %2625, ptr %42, align 4, !tbaa !9
  %2626 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2626, ptr %13, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %2627 = load i32, ptr %43, align 4, !tbaa !9
  %2628 = icmp eq i32 %2627, 0
  %2629 = xor i1 %2628, true
  %2630 = xor i1 %2629, true
  %2631 = zext i1 %2630 to i32
  %2632 = sext i32 %2631 to i64
  %2633 = call i64 @llvm.expect.i64(i64 %2632, i64 0)
  %2634 = icmp ne i64 %2633, 0
  br i1 %2634, label %2635, label %2637

2635:                                             ; preds = %2618
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

2636:                                             ; No predecessors!
  br label %2641

2637:                                             ; preds = %2618
  %2638 = load i32, ptr %42, align 4, !tbaa !9
  %2639 = load i32, ptr %43, align 4, !tbaa !9
  %2640 = udiv i32 %2638, %2639
  br label %2641

2641:                                             ; preds = %2637, %2636
  %2642 = phi i32 [ 0, %2636 ], [ %2640, %2637 ]
  store i32 %2642, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2643 = load i32, ptr %43, align 4, !tbaa !9
  %2644 = load i32, ptr %42, align 4, !tbaa !9
  %2645 = add i32 %2644, %2643
  store i32 %2645, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %2646 = load i32, ptr %43, align 4, !tbaa !9
  %2647 = load i32, ptr %42, align 4, !tbaa !9
  %2648 = and i32 %2647, %2646
  store i32 %2648, ptr %42, align 4, !tbaa !9
  %2649 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2649, ptr %15, align 4, !tbaa !9
  %2650 = load i32, ptr %42, align 4, !tbaa !9
  %2651 = icmp ne i32 %2650, 0
  br i1 %2651, label %2652, label %2686

2652:                                             ; preds = %2641
  br label %2653

2653:                                             ; preds = %2684, %2652
  %2654 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2654, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2655 = load ptr, ptr %6, align 8, !tbaa !5
  %2656 = getelementptr inbounds %struct.w2c_hermes, ptr %2655, i32 0, i32 6
  %2657 = load i32, ptr %42, align 4, !tbaa !9
  %2658 = zext i32 %2657 to i64
  %2659 = add i64 %2658, 8
  %2660 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2656, i64 noundef %2659, i32 noundef %2660)
  %2661 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2661, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2662 = load ptr, ptr %6, align 8, !tbaa !5
  %2663 = getelementptr inbounds %struct.w2c_hermes, ptr %2662, i32 0, i32 6
  %2664 = load i32, ptr %42, align 4, !tbaa !9
  %2665 = zext i32 %2664 to i64
  %2666 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2663, i64 noundef %2665, i64 noundef %2666)
  %2667 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2667, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %2668 = load i32, ptr %43, align 4, !tbaa !9
  %2669 = load i32, ptr %42, align 4, !tbaa !9
  %2670 = add i32 %2669, %2668
  store i32 %2670, ptr %42, align 4, !tbaa !9
  %2671 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2671, ptr %10, align 4, !tbaa !9
  %2672 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2672, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2673 = load i32, ptr %43, align 4, !tbaa !9
  %2674 = load i32, ptr %42, align 4, !tbaa !9
  %2675 = add i32 %2674, %2673
  store i32 %2675, ptr %42, align 4, !tbaa !9
  %2676 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2676, ptr %11, align 4, !tbaa !9
  %2677 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %2677, ptr %43, align 4, !tbaa !9
  %2678 = load i32, ptr %42, align 4, !tbaa !9
  %2679 = load i32, ptr %43, align 4, !tbaa !9
  %2680 = icmp ne i32 %2678, %2679
  %2681 = zext i1 %2680 to i32
  store i32 %2681, ptr %42, align 4, !tbaa !9
  %2682 = load i32, ptr %42, align 4, !tbaa !9
  %2683 = icmp ne i32 %2682, 0
  br i1 %2683, label %2684, label %2685

2684:                                             ; preds = %2653
  br label %2653

2685:                                             ; preds = %2653
  br label %2686

2686:                                             ; preds = %2685, %2641
  %2687 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2687, ptr %42, align 4, !tbaa !9
  store i32 168, ptr %43, align 4, !tbaa !9
  %2688 = load i32, ptr %42, align 4, !tbaa !9
  %2689 = load i32, ptr %43, align 4, !tbaa !9
  %2690 = icmp uge i32 %2688, %2689
  %2691 = zext i1 %2690 to i32
  store i32 %2691, ptr %42, align 4, !tbaa !9
  %2692 = load i32, ptr %42, align 4, !tbaa !9
  %2693 = icmp ne i32 %2692, 0
  br i1 %2693, label %2694, label %2821

2694:                                             ; preds = %2686
  br label %2695

2695:                                             ; preds = %2819, %2694
  %2696 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2696, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2697 = load ptr, ptr %6, align 8, !tbaa !5
  %2698 = getelementptr inbounds %struct.w2c_hermes, ptr %2697, i32 0, i32 6
  %2699 = load i32, ptr %42, align 4, !tbaa !9
  %2700 = zext i32 %2699 to i64
  %2701 = add i64 %2700, 168
  %2702 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2698, i64 noundef %2701, i64 noundef %2702)
  %2703 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2703, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2704 = load ptr, ptr %6, align 8, !tbaa !5
  %2705 = getelementptr inbounds %struct.w2c_hermes, ptr %2704, i32 0, i32 6
  %2706 = load i32, ptr %42, align 4, !tbaa !9
  %2707 = zext i32 %2706 to i64
  %2708 = add i64 %2707, 144
  %2709 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2705, i64 noundef %2708, i64 noundef %2709)
  %2710 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2710, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2711 = load ptr, ptr %6, align 8, !tbaa !5
  %2712 = getelementptr inbounds %struct.w2c_hermes, ptr %2711, i32 0, i32 6
  %2713 = load i32, ptr %42, align 4, !tbaa !9
  %2714 = zext i32 %2713 to i64
  %2715 = add i64 %2714, 120
  %2716 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2712, i64 noundef %2715, i64 noundef %2716)
  %2717 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2717, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2718 = load ptr, ptr %6, align 8, !tbaa !5
  %2719 = getelementptr inbounds %struct.w2c_hermes, ptr %2718, i32 0, i32 6
  %2720 = load i32, ptr %42, align 4, !tbaa !9
  %2721 = zext i32 %2720 to i64
  %2722 = add i64 %2721, 96
  %2723 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2719, i64 noundef %2722, i64 noundef %2723)
  %2724 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2724, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2725 = load ptr, ptr %6, align 8, !tbaa !5
  %2726 = getelementptr inbounds %struct.w2c_hermes, ptr %2725, i32 0, i32 6
  %2727 = load i32, ptr %42, align 4, !tbaa !9
  %2728 = zext i32 %2727 to i64
  %2729 = add i64 %2728, 72
  %2730 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2726, i64 noundef %2729, i64 noundef %2730)
  %2731 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2731, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2732 = load ptr, ptr %6, align 8, !tbaa !5
  %2733 = getelementptr inbounds %struct.w2c_hermes, ptr %2732, i32 0, i32 6
  %2734 = load i32, ptr %42, align 4, !tbaa !9
  %2735 = zext i32 %2734 to i64
  %2736 = add i64 %2735, 48
  %2737 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2733, i64 noundef %2736, i64 noundef %2737)
  %2738 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2738, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2739 = load ptr, ptr %6, align 8, !tbaa !5
  %2740 = getelementptr inbounds %struct.w2c_hermes, ptr %2739, i32 0, i32 6
  %2741 = load i32, ptr %42, align 4, !tbaa !9
  %2742 = zext i32 %2741 to i64
  %2743 = add i64 %2742, 24
  %2744 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2740, i64 noundef %2743, i64 noundef %2744)
  %2745 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2745, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2746 = load ptr, ptr %6, align 8, !tbaa !5
  %2747 = getelementptr inbounds %struct.w2c_hermes, ptr %2746, i32 0, i32 6
  %2748 = load i32, ptr %42, align 4, !tbaa !9
  %2749 = zext i32 %2748 to i64
  %2750 = add i64 %2749, 8
  %2751 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2747, i64 noundef %2750, i32 noundef %2751)
  %2752 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2752, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2753 = load ptr, ptr %6, align 8, !tbaa !5
  %2754 = getelementptr inbounds %struct.w2c_hermes, ptr %2753, i32 0, i32 6
  %2755 = load i32, ptr %42, align 4, !tbaa !9
  %2756 = zext i32 %2755 to i64
  %2757 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2754, i64 noundef %2756, i64 noundef %2757)
  %2758 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2758, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2759 = load ptr, ptr %6, align 8, !tbaa !5
  %2760 = getelementptr inbounds %struct.w2c_hermes, ptr %2759, i32 0, i32 6
  %2761 = load i32, ptr %42, align 4, !tbaa !9
  %2762 = zext i32 %2761 to i64
  %2763 = add i64 %2762, 176
  %2764 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2760, i64 noundef %2763, i32 noundef %2764)
  %2765 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2765, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2766 = load ptr, ptr %6, align 8, !tbaa !5
  %2767 = getelementptr inbounds %struct.w2c_hermes, ptr %2766, i32 0, i32 6
  %2768 = load i32, ptr %42, align 4, !tbaa !9
  %2769 = zext i32 %2768 to i64
  %2770 = add i64 %2769, 152
  %2771 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2767, i64 noundef %2770, i32 noundef %2771)
  %2772 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2772, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2773 = load ptr, ptr %6, align 8, !tbaa !5
  %2774 = getelementptr inbounds %struct.w2c_hermes, ptr %2773, i32 0, i32 6
  %2775 = load i32, ptr %42, align 4, !tbaa !9
  %2776 = zext i32 %2775 to i64
  %2777 = add i64 %2776, 128
  %2778 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2774, i64 noundef %2777, i32 noundef %2778)
  %2779 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2779, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2780 = load ptr, ptr %6, align 8, !tbaa !5
  %2781 = getelementptr inbounds %struct.w2c_hermes, ptr %2780, i32 0, i32 6
  %2782 = load i32, ptr %42, align 4, !tbaa !9
  %2783 = zext i32 %2782 to i64
  %2784 = add i64 %2783, 104
  %2785 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2781, i64 noundef %2784, i32 noundef %2785)
  %2786 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2786, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2787 = load ptr, ptr %6, align 8, !tbaa !5
  %2788 = getelementptr inbounds %struct.w2c_hermes, ptr %2787, i32 0, i32 6
  %2789 = load i32, ptr %42, align 4, !tbaa !9
  %2790 = zext i32 %2789 to i64
  %2791 = add i64 %2790, 80
  %2792 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2788, i64 noundef %2791, i32 noundef %2792)
  %2793 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2793, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2794 = load ptr, ptr %6, align 8, !tbaa !5
  %2795 = getelementptr inbounds %struct.w2c_hermes, ptr %2794, i32 0, i32 6
  %2796 = load i32, ptr %42, align 4, !tbaa !9
  %2797 = zext i32 %2796 to i64
  %2798 = add i64 %2797, 56
  %2799 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2795, i64 noundef %2798, i32 noundef %2799)
  %2800 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2800, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2801 = load ptr, ptr %6, align 8, !tbaa !5
  %2802 = getelementptr inbounds %struct.w2c_hermes, ptr %2801, i32 0, i32 6
  %2803 = load i32, ptr %42, align 4, !tbaa !9
  %2804 = zext i32 %2803 to i64
  %2805 = add i64 %2804, 32
  %2806 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2802, i64 noundef %2805, i32 noundef %2806)
  %2807 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2807, ptr %42, align 4, !tbaa !9
  store i32 192, ptr %43, align 4, !tbaa !9
  %2808 = load i32, ptr %43, align 4, !tbaa !9
  %2809 = load i32, ptr %42, align 4, !tbaa !9
  %2810 = add i32 %2809, %2808
  store i32 %2810, ptr %42, align 4, !tbaa !9
  %2811 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2811, ptr %10, align 4, !tbaa !9
  %2812 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2812, ptr %43, align 4, !tbaa !9
  %2813 = load i32, ptr %42, align 4, !tbaa !9
  %2814 = load i32, ptr %43, align 4, !tbaa !9
  %2815 = icmp ne i32 %2813, %2814
  %2816 = zext i1 %2815 to i32
  store i32 %2816, ptr %42, align 4, !tbaa !9
  %2817 = load i32, ptr %42, align 4, !tbaa !9
  %2818 = icmp ne i32 %2817, 0
  br i1 %2818, label %2819, label %2820

2819:                                             ; preds = %2695
  br label %2695

2820:                                             ; preds = %2695
  br label %2821

2821:                                             ; preds = %2820, %2686
  %2822 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2822, ptr %42, align 4, !tbaa !9
  %2823 = load i32, ptr %42, align 4, !tbaa !9
  %2824 = icmp ne i32 %2823, 0
  br i1 %2824, label %2825, label %2826

2825:                                             ; preds = %2821
  br label %3033

2826:                                             ; preds = %2821
  store i32 0, ptr %42, align 4, !tbaa !9
  %2827 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2827, ptr %15, align 4, !tbaa !9
  br label %3485

2828:                                             ; preds = %2599
  store i32 0, ptr %42, align 4, !tbaa !9
  %2829 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2829, ptr %11, align 4, !tbaa !9
  %2830 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2830, ptr %42, align 4, !tbaa !9
  %2831 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2831, ptr %10, align 4, !tbaa !9
  %2832 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %2832, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %2833 = load i32, ptr %43, align 4, !tbaa !9
  %2834 = load i32, ptr %42, align 4, !tbaa !9
  %2835 = sub i32 %2834, %2833
  store i32 %2835, ptr %42, align 4, !tbaa !9
  %2836 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2836, ptr %13, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %2837 = load i32, ptr %43, align 4, !tbaa !9
  %2838 = icmp eq i32 %2837, 0
  %2839 = xor i1 %2838, true
  %2840 = xor i1 %2839, true
  %2841 = zext i1 %2840 to i32
  %2842 = sext i32 %2841 to i64
  %2843 = call i64 @llvm.expect.i64(i64 %2842, i64 0)
  %2844 = icmp ne i64 %2843, 0
  br i1 %2844, label %2845, label %2847

2845:                                             ; preds = %2828
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

2846:                                             ; No predecessors!
  br label %2851

2847:                                             ; preds = %2828
  %2848 = load i32, ptr %42, align 4, !tbaa !9
  %2849 = load i32, ptr %43, align 4, !tbaa !9
  %2850 = udiv i32 %2848, %2849
  br label %2851

2851:                                             ; preds = %2847, %2846
  %2852 = phi i32 [ 0, %2846 ], [ %2850, %2847 ]
  store i32 %2852, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2853 = load i32, ptr %43, align 4, !tbaa !9
  %2854 = load i32, ptr %42, align 4, !tbaa !9
  %2855 = add i32 %2854, %2853
  store i32 %2855, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %2856 = load i32, ptr %43, align 4, !tbaa !9
  %2857 = load i32, ptr %42, align 4, !tbaa !9
  %2858 = and i32 %2857, %2856
  store i32 %2858, ptr %42, align 4, !tbaa !9
  %2859 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2859, ptr %15, align 4, !tbaa !9
  %2860 = load i32, ptr %42, align 4, !tbaa !9
  %2861 = icmp ne i32 %2860, 0
  br i1 %2861, label %2862, label %2896

2862:                                             ; preds = %2851
  br label %2863

2863:                                             ; preds = %2894, %2862
  %2864 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2864, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2865 = load ptr, ptr %6, align 8, !tbaa !5
  %2866 = getelementptr inbounds %struct.w2c_hermes, ptr %2865, i32 0, i32 6
  %2867 = load i32, ptr %42, align 4, !tbaa !9
  %2868 = zext i32 %2867 to i64
  %2869 = add i64 %2868, 8
  %2870 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2866, i64 noundef %2869, i32 noundef %2870)
  %2871 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2871, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2872 = load ptr, ptr %6, align 8, !tbaa !5
  %2873 = getelementptr inbounds %struct.w2c_hermes, ptr %2872, i32 0, i32 6
  %2874 = load i32, ptr %42, align 4, !tbaa !9
  %2875 = zext i32 %2874 to i64
  %2876 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2873, i64 noundef %2875, i64 noundef %2876)
  %2877 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2877, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %2878 = load i32, ptr %43, align 4, !tbaa !9
  %2879 = load i32, ptr %42, align 4, !tbaa !9
  %2880 = add i32 %2879, %2878
  store i32 %2880, ptr %42, align 4, !tbaa !9
  %2881 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2881, ptr %10, align 4, !tbaa !9
  %2882 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2882, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %2883 = load i32, ptr %43, align 4, !tbaa !9
  %2884 = load i32, ptr %42, align 4, !tbaa !9
  %2885 = add i32 %2884, %2883
  store i32 %2885, ptr %42, align 4, !tbaa !9
  %2886 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2886, ptr %11, align 4, !tbaa !9
  %2887 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %2887, ptr %43, align 4, !tbaa !9
  %2888 = load i32, ptr %42, align 4, !tbaa !9
  %2889 = load i32, ptr %43, align 4, !tbaa !9
  %2890 = icmp ne i32 %2888, %2889
  %2891 = zext i1 %2890 to i32
  store i32 %2891, ptr %42, align 4, !tbaa !9
  %2892 = load i32, ptr %42, align 4, !tbaa !9
  %2893 = icmp ne i32 %2892, 0
  br i1 %2893, label %2894, label %2895

2894:                                             ; preds = %2863
  br label %2863

2895:                                             ; preds = %2863
  br label %2896

2896:                                             ; preds = %2895, %2851
  store i32 0, ptr %42, align 4, !tbaa !9
  %2897 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %2897, ptr %15, align 4, !tbaa !9
  %2898 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2898, ptr %42, align 4, !tbaa !9
  store i32 168, ptr %43, align 4, !tbaa !9
  %2899 = load i32, ptr %42, align 4, !tbaa !9
  %2900 = load i32, ptr %43, align 4, !tbaa !9
  %2901 = icmp ult i32 %2899, %2900
  %2902 = zext i1 %2901 to i32
  store i32 %2902, ptr %42, align 4, !tbaa !9
  %2903 = load i32, ptr %42, align 4, !tbaa !9
  %2904 = icmp ne i32 %2903, 0
  br i1 %2904, label %2905, label %2906

2905:                                             ; preds = %2896
  br label %3489

2906:                                             ; preds = %2896
  br label %2907

2907:                                             ; preds = %3031, %2906
  %2908 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2908, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2909 = load ptr, ptr %6, align 8, !tbaa !5
  %2910 = getelementptr inbounds %struct.w2c_hermes, ptr %2909, i32 0, i32 6
  %2911 = load i32, ptr %42, align 4, !tbaa !9
  %2912 = zext i32 %2911 to i64
  %2913 = add i64 %2912, 168
  %2914 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2910, i64 noundef %2913, i64 noundef %2914)
  %2915 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2915, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2916 = load ptr, ptr %6, align 8, !tbaa !5
  %2917 = getelementptr inbounds %struct.w2c_hermes, ptr %2916, i32 0, i32 6
  %2918 = load i32, ptr %42, align 4, !tbaa !9
  %2919 = zext i32 %2918 to i64
  %2920 = add i64 %2919, 144
  %2921 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2917, i64 noundef %2920, i64 noundef %2921)
  %2922 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2922, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2923 = load ptr, ptr %6, align 8, !tbaa !5
  %2924 = getelementptr inbounds %struct.w2c_hermes, ptr %2923, i32 0, i32 6
  %2925 = load i32, ptr %42, align 4, !tbaa !9
  %2926 = zext i32 %2925 to i64
  %2927 = add i64 %2926, 120
  %2928 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2924, i64 noundef %2927, i64 noundef %2928)
  %2929 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2929, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2930 = load ptr, ptr %6, align 8, !tbaa !5
  %2931 = getelementptr inbounds %struct.w2c_hermes, ptr %2930, i32 0, i32 6
  %2932 = load i32, ptr %42, align 4, !tbaa !9
  %2933 = zext i32 %2932 to i64
  %2934 = add i64 %2933, 96
  %2935 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2931, i64 noundef %2934, i64 noundef %2935)
  %2936 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2936, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2937 = load ptr, ptr %6, align 8, !tbaa !5
  %2938 = getelementptr inbounds %struct.w2c_hermes, ptr %2937, i32 0, i32 6
  %2939 = load i32, ptr %42, align 4, !tbaa !9
  %2940 = zext i32 %2939 to i64
  %2941 = add i64 %2940, 72
  %2942 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2938, i64 noundef %2941, i64 noundef %2942)
  %2943 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2943, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2944 = load ptr, ptr %6, align 8, !tbaa !5
  %2945 = getelementptr inbounds %struct.w2c_hermes, ptr %2944, i32 0, i32 6
  %2946 = load i32, ptr %42, align 4, !tbaa !9
  %2947 = zext i32 %2946 to i64
  %2948 = add i64 %2947, 48
  %2949 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2945, i64 noundef %2948, i64 noundef %2949)
  %2950 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2950, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2951 = load ptr, ptr %6, align 8, !tbaa !5
  %2952 = getelementptr inbounds %struct.w2c_hermes, ptr %2951, i32 0, i32 6
  %2953 = load i32, ptr %42, align 4, !tbaa !9
  %2954 = zext i32 %2953 to i64
  %2955 = add i64 %2954, 24
  %2956 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2952, i64 noundef %2955, i64 noundef %2956)
  %2957 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2957, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2958 = load ptr, ptr %6, align 8, !tbaa !5
  %2959 = getelementptr inbounds %struct.w2c_hermes, ptr %2958, i32 0, i32 6
  %2960 = load i32, ptr %42, align 4, !tbaa !9
  %2961 = zext i32 %2960 to i64
  %2962 = add i64 %2961, 8
  %2963 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2959, i64 noundef %2962, i32 noundef %2963)
  %2964 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2964, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %2965 = load ptr, ptr %6, align 8, !tbaa !5
  %2966 = getelementptr inbounds %struct.w2c_hermes, ptr %2965, i32 0, i32 6
  %2967 = load i32, ptr %42, align 4, !tbaa !9
  %2968 = zext i32 %2967 to i64
  %2969 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2966, i64 noundef %2968, i64 noundef %2969)
  %2970 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2970, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2971 = load ptr, ptr %6, align 8, !tbaa !5
  %2972 = getelementptr inbounds %struct.w2c_hermes, ptr %2971, i32 0, i32 6
  %2973 = load i32, ptr %42, align 4, !tbaa !9
  %2974 = zext i32 %2973 to i64
  %2975 = add i64 %2974, 176
  %2976 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2972, i64 noundef %2975, i32 noundef %2976)
  %2977 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2977, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2978 = load ptr, ptr %6, align 8, !tbaa !5
  %2979 = getelementptr inbounds %struct.w2c_hermes, ptr %2978, i32 0, i32 6
  %2980 = load i32, ptr %42, align 4, !tbaa !9
  %2981 = zext i32 %2980 to i64
  %2982 = add i64 %2981, 152
  %2983 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2979, i64 noundef %2982, i32 noundef %2983)
  %2984 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2984, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2985 = load ptr, ptr %6, align 8, !tbaa !5
  %2986 = getelementptr inbounds %struct.w2c_hermes, ptr %2985, i32 0, i32 6
  %2987 = load i32, ptr %42, align 4, !tbaa !9
  %2988 = zext i32 %2987 to i64
  %2989 = add i64 %2988, 128
  %2990 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2986, i64 noundef %2989, i32 noundef %2990)
  %2991 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2991, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2992 = load ptr, ptr %6, align 8, !tbaa !5
  %2993 = getelementptr inbounds %struct.w2c_hermes, ptr %2992, i32 0, i32 6
  %2994 = load i32, ptr %42, align 4, !tbaa !9
  %2995 = zext i32 %2994 to i64
  %2996 = add i64 %2995, 104
  %2997 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2993, i64 noundef %2996, i32 noundef %2997)
  %2998 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2998, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %2999 = load ptr, ptr %6, align 8, !tbaa !5
  %3000 = getelementptr inbounds %struct.w2c_hermes, ptr %2999, i32 0, i32 6
  %3001 = load i32, ptr %42, align 4, !tbaa !9
  %3002 = zext i32 %3001 to i64
  %3003 = add i64 %3002, 80
  %3004 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3000, i64 noundef %3003, i32 noundef %3004)
  %3005 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3005, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %3006 = load ptr, ptr %6, align 8, !tbaa !5
  %3007 = getelementptr inbounds %struct.w2c_hermes, ptr %3006, i32 0, i32 6
  %3008 = load i32, ptr %42, align 4, !tbaa !9
  %3009 = zext i32 %3008 to i64
  %3010 = add i64 %3009, 56
  %3011 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3007, i64 noundef %3010, i32 noundef %3011)
  %3012 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3012, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %3013 = load ptr, ptr %6, align 8, !tbaa !5
  %3014 = getelementptr inbounds %struct.w2c_hermes, ptr %3013, i32 0, i32 6
  %3015 = load i32, ptr %42, align 4, !tbaa !9
  %3016 = zext i32 %3015 to i64
  %3017 = add i64 %3016, 32
  %3018 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3014, i64 noundef %3017, i32 noundef %3018)
  %3019 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3019, ptr %42, align 4, !tbaa !9
  store i32 192, ptr %43, align 4, !tbaa !9
  %3020 = load i32, ptr %43, align 4, !tbaa !9
  %3021 = load i32, ptr %42, align 4, !tbaa !9
  %3022 = add i32 %3021, %3020
  store i32 %3022, ptr %42, align 4, !tbaa !9
  %3023 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3023, ptr %10, align 4, !tbaa !9
  %3024 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %3024, ptr %43, align 4, !tbaa !9
  %3025 = load i32, ptr %42, align 4, !tbaa !9
  %3026 = load i32, ptr %43, align 4, !tbaa !9
  %3027 = icmp ne i32 %3025, %3026
  %3028 = zext i1 %3027 to i32
  store i32 %3028, ptr %42, align 4, !tbaa !9
  %3029 = load i32, ptr %42, align 4, !tbaa !9
  %3030 = icmp ne i32 %3029, 0
  br i1 %3030, label %3031, label %3032

3031:                                             ; preds = %2907
  br label %2907

3032:                                             ; preds = %2907
  br label %3489

3033:                                             ; preds = %2825
  %3034 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %3034, ptr %42, align 4, !tbaa !9
  %3035 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3035, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %3036 = load i32, ptr %44, align 4, !tbaa !9
  %3037 = load i32, ptr %43, align 4, !tbaa !9
  %3038 = mul i32 %3037, %3036
  store i32 %3038, ptr %43, align 4, !tbaa !9
  %3039 = load i32, ptr %43, align 4, !tbaa !9
  %3040 = load i32, ptr %42, align 4, !tbaa !9
  %3041 = add i32 %3040, %3039
  store i32 %3041, ptr %42, align 4, !tbaa !9
  %3042 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3042, ptr %27, align 4, !tbaa !9
  %3043 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %3043, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3044 = load i32, ptr %43, align 4, !tbaa !9
  %3045 = load i32, ptr %42, align 4, !tbaa !9
  %3046 = sub i32 %3045, %3044
  store i32 %3046, ptr %42, align 4, !tbaa !9
  %3047 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3047, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %3048 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3048, ptr %15, align 4, !tbaa !9
  %3049 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %3049, ptr %42, align 4, !tbaa !9
  %3050 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3050, ptr %13, align 4, !tbaa !9
  br label %3051

3051:                                             ; preds = %3483, %3033
  %3052 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3052, ptr %42, align 4, !tbaa !9
  %3053 = load ptr, ptr %6, align 8, !tbaa !5
  %3054 = getelementptr inbounds %struct.w2c_hermes, ptr %3053, i32 0, i32 6
  %3055 = load i32, ptr %42, align 4, !tbaa !9
  %3056 = zext i32 %3055 to i64
  %3057 = add i64 %3056, 8
  %3058 = call i32 @i32_load(ptr noundef %3054, i64 noundef %3057)
  store i32 %3058, ptr %42, align 4, !tbaa !9
  %3059 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3059, ptr %35, align 4, !tbaa !9
  %3060 = load i32, ptr %42, align 4, !tbaa !9
  %3061 = icmp ne i32 %3060, 0
  %3062 = xor i1 %3061, true
  %3063 = zext i1 %3062 to i32
  store i32 %3063, ptr %42, align 4, !tbaa !9
  %3064 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3064, ptr %43, align 4, !tbaa !9
  %3065 = load ptr, ptr %6, align 8, !tbaa !5
  %3066 = getelementptr inbounds %struct.w2c_hermes, ptr %3065, i32 0, i32 6
  %3067 = load i32, ptr %43, align 4, !tbaa !9
  %3068 = zext i32 %3067 to i64
  %3069 = call i64 @i64_load(ptr noundef %3066, i64 noundef %3068)
  store i64 %3069, ptr %49, align 8, !tbaa !11
  %3070 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %3070, ptr %39, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %3071 = load i64, ptr %49, align 8, !tbaa !11
  %3072 = load i64, ptr %50, align 8, !tbaa !11
  %3073 = icmp ult i64 %3071, %3072
  %3074 = zext i1 %3073 to i32
  store i32 %3074, ptr %43, align 4, !tbaa !9
  %3075 = load i32, ptr %43, align 4, !tbaa !9
  %3076 = load i32, ptr %42, align 4, !tbaa !9
  %3077 = and i32 %3076, %3075
  store i32 %3077, ptr %42, align 4, !tbaa !9
  %3078 = load i32, ptr %42, align 4, !tbaa !9
  %3079 = icmp ne i32 %3078, 0
  %3080 = xor i1 %3079, true
  %3081 = zext i1 %3080 to i32
  store i32 %3081, ptr %42, align 4, !tbaa !9
  %3082 = load i32, ptr %42, align 4, !tbaa !9
  %3083 = icmp ne i32 %3082, 0
  br i1 %3083, label %3084, label %3470

3084:                                             ; preds = %3051
  %3085 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %3085, ptr %42, align 4, !tbaa !9
  %3086 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3086, ptr %43, align 4, !tbaa !9
  %3087 = load i32, ptr %43, align 4, !tbaa !9
  %3088 = load i32, ptr %42, align 4, !tbaa !9
  %3089 = and i32 %3088, %3087
  store i32 %3089, ptr %42, align 4, !tbaa !9
  %3090 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3090, ptr %26, align 4, !tbaa !9
  %3091 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3091, ptr %48, align 8, !tbaa !11
  store i64 32, ptr %49, align 8, !tbaa !11
  %3092 = load i64, ptr %49, align 8, !tbaa !11
  %3093 = and i64 %3092, 63
  %3094 = load i64, ptr %48, align 8, !tbaa !11
  %3095 = lshr i64 %3094, %3093
  store i64 %3095, ptr %48, align 8, !tbaa !11
  %3096 = load i64, ptr %48, align 8, !tbaa !11
  %3097 = trunc i64 %3096 to i32
  store i32 %3097, ptr %42, align 4, !tbaa !9
  %3098 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3098, ptr %32, align 4, !tbaa !9
  %3099 = load i32, ptr %42, align 4, !tbaa !9
  %3100 = icmp ne i32 %3099, 0
  br i1 %3100, label %3101, label %3240

3101:                                             ; preds = %3084
  %3102 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3102, ptr %48, align 8, !tbaa !11
  %3103 = load i64, ptr %48, align 8, !tbaa !11
  %3104 = trunc i64 %3103 to i32
  store i32 %3104, ptr %42, align 4, !tbaa !9
  %3105 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3105, ptr %21, align 4, !tbaa !9
  %3106 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %3106, ptr %43, align 4, !tbaa !9
  %3107 = load i32, ptr %43, align 4, !tbaa !9
  %3108 = load i32, ptr %42, align 4, !tbaa !9
  %3109 = add i32 %3108, %3107
  store i32 %3109, ptr %42, align 4, !tbaa !9
  %3110 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3110, ptr %28, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %3111 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3111, ptr %34, align 4, !tbaa !9
  br label %3112

3112:                                             ; preds = %3224, %3101
  %3113 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3113, ptr %42, align 4, !tbaa !9
  %3114 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %3114, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %3115 = load i32, ptr %44, align 4, !tbaa !9
  %3116 = load i32, ptr %43, align 4, !tbaa !9
  %3117 = mul i32 %3116, %3115
  store i32 %3117, ptr %43, align 4, !tbaa !9
  %3118 = load i32, ptr %43, align 4, !tbaa !9
  %3119 = load i32, ptr %42, align 4, !tbaa !9
  %3120 = add i32 %3119, %3118
  store i32 %3120, ptr %42, align 4, !tbaa !9
  %3121 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3121, ptr %14, align 4, !tbaa !9
  %3122 = load ptr, ptr %6, align 8, !tbaa !5
  %3123 = getelementptr inbounds %struct.w2c_hermes, ptr %3122, i32 0, i32 6
  %3124 = load i32, ptr %42, align 4, !tbaa !9
  %3125 = zext i32 %3124 to i64
  %3126 = call i64 @i64_load(ptr noundef %3123, i64 noundef %3125)
  store i64 %3126, ptr %48, align 8, !tbaa !11
  %3127 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %3127, ptr %39, align 8, !tbaa !11
  %3128 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3128, ptr %42, align 4, !tbaa !9
  %3129 = load ptr, ptr %6, align 8, !tbaa !5
  %3130 = getelementptr inbounds %struct.w2c_hermes, ptr %3129, i32 0, i32 6
  %3131 = load i32, ptr %42, align 4, !tbaa !9
  %3132 = zext i32 %3131 to i64
  %3133 = add i64 %3132, 8
  %3134 = call i32 @i32_load(ptr noundef %3130, i64 noundef %3133)
  store i32 %3134, ptr %42, align 4, !tbaa !9
  %3135 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3135, ptr %22, align 4, !tbaa !9
  %3136 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %3136, ptr %43, align 4, !tbaa !9
  %3137 = load i32, ptr %42, align 4, !tbaa !9
  %3138 = load i32, ptr %43, align 4, !tbaa !9
  %3139 = icmp ne i32 %3137, %3138
  %3140 = zext i1 %3139 to i32
  store i32 %3140, ptr %42, align 4, !tbaa !9
  %3141 = load i32, ptr %42, align 4, !tbaa !9
  %3142 = icmp ne i32 %3141, 0
  br i1 %3142, label %3143, label %3144

3143:                                             ; preds = %3112
  br label %3207

3144:                                             ; preds = %3112
  %3145 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %3145, ptr %42, align 4, !tbaa !9
  %3146 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3146, ptr %49, align 8, !tbaa !11
  store i64 32, ptr %50, align 8, !tbaa !11
  %3147 = load i64, ptr %50, align 8, !tbaa !11
  %3148 = and i64 %3147, 63
  %3149 = load i64, ptr %49, align 8, !tbaa !11
  %3150 = lshr i64 %3149, %3148
  store i64 %3150, ptr %49, align 8, !tbaa !11
  %3151 = load i64, ptr %49, align 8, !tbaa !11
  %3152 = trunc i64 %3151 to i32
  store i32 %3152, ptr %43, align 4, !tbaa !9
  %3153 = load i32, ptr %42, align 4, !tbaa !9
  %3154 = load i32, ptr %43, align 4, !tbaa !9
  %3155 = icmp ne i32 %3153, %3154
  %3156 = zext i1 %3155 to i32
  store i32 %3156, ptr %42, align 4, !tbaa !9
  %3157 = load i32, ptr %42, align 4, !tbaa !9
  %3158 = icmp ne i32 %3157, 0
  br i1 %3158, label %3159, label %3160

3159:                                             ; preds = %3144
  br label %3207

3160:                                             ; preds = %3144
  %3161 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3161, ptr %48, align 8, !tbaa !11
  %3162 = load i64, ptr %48, align 8, !tbaa !11
  %3163 = trunc i64 %3162 to i32
  store i32 %3163, ptr %42, align 4, !tbaa !9
  %3164 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3164, ptr %10, align 4, !tbaa !9
  %3165 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %3165, ptr %42, align 4, !tbaa !9
  %3166 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3166, ptr %11, align 4, !tbaa !9
  br label %3167

3167:                                             ; preds = %3205, %3160
  %3168 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3168, ptr %42, align 4, !tbaa !9
  %3169 = load ptr, ptr %6, align 8, !tbaa !5
  %3170 = getelementptr inbounds %struct.w2c_hermes, ptr %3169, i32 0, i32 6
  %3171 = load i32, ptr %42, align 4, !tbaa !9
  %3172 = zext i32 %3171 to i64
  %3173 = call i32 @i32_load8_u(ptr noundef %3170, i64 noundef %3172)
  store i32 %3173, ptr %42, align 4, !tbaa !9
  %3174 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3174, ptr %43, align 4, !tbaa !9
  %3175 = load ptr, ptr %6, align 8, !tbaa !5
  %3176 = getelementptr inbounds %struct.w2c_hermes, ptr %3175, i32 0, i32 6
  %3177 = load i32, ptr %43, align 4, !tbaa !9
  %3178 = zext i32 %3177 to i64
  %3179 = call i32 @i32_load8_u(ptr noundef %3176, i64 noundef %3178)
  store i32 %3179, ptr %43, align 4, !tbaa !9
  %3180 = load i32, ptr %42, align 4, !tbaa !9
  %3181 = load i32, ptr %43, align 4, !tbaa !9
  %3182 = icmp ne i32 %3180, %3181
  %3183 = zext i1 %3182 to i32
  store i32 %3183, ptr %42, align 4, !tbaa !9
  %3184 = load i32, ptr %42, align 4, !tbaa !9
  %3185 = icmp ne i32 %3184, 0
  br i1 %3185, label %3186, label %3187

3186:                                             ; preds = %3167
  br label %3207

3187:                                             ; preds = %3167
  %3188 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3188, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3189 = load i32, ptr %43, align 4, !tbaa !9
  %3190 = load i32, ptr %42, align 4, !tbaa !9
  %3191 = add i32 %3190, %3189
  store i32 %3191, ptr %42, align 4, !tbaa !9
  %3192 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3192, ptr %10, align 4, !tbaa !9
  %3193 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3193, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3194 = load i32, ptr %43, align 4, !tbaa !9
  %3195 = load i32, ptr %42, align 4, !tbaa !9
  %3196 = add i32 %3195, %3194
  store i32 %3196, ptr %42, align 4, !tbaa !9
  %3197 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3197, ptr %11, align 4, !tbaa !9
  %3198 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %3198, ptr %43, align 4, !tbaa !9
  %3199 = load i32, ptr %42, align 4, !tbaa !9
  %3200 = load i32, ptr %43, align 4, !tbaa !9
  %3201 = icmp ne i32 %3199, %3200
  %3202 = zext i1 %3201 to i32
  store i32 %3202, ptr %42, align 4, !tbaa !9
  %3203 = load i32, ptr %42, align 4, !tbaa !9
  %3204 = icmp ne i32 %3203, 0
  br i1 %3204, label %3205, label %3206

3205:                                             ; preds = %3187
  br label %3167

3206:                                             ; preds = %3187
  br label %3368

3207:                                             ; preds = %3186, %3159, %3143
  %3208 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %3208, ptr %42, align 4, !tbaa !9
  %3209 = load i32, ptr %42, align 4, !tbaa !9
  %3210 = icmp ne i32 %3209, 0
  %3211 = xor i1 %3210, true
  %3212 = zext i1 %3211 to i32
  store i32 %3212, ptr %42, align 4, !tbaa !9
  %3213 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3213, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %3214 = load i64, ptr %49, align 8, !tbaa !11
  %3215 = load i64, ptr %50, align 8, !tbaa !11
  %3216 = icmp ult i64 %3214, %3215
  %3217 = zext i1 %3216 to i32
  store i32 %3217, ptr %43, align 4, !tbaa !9
  %3218 = load i32, ptr %43, align 4, !tbaa !9
  %3219 = load i32, ptr %42, align 4, !tbaa !9
  %3220 = and i32 %3219, %3218
  store i32 %3220, ptr %42, align 4, !tbaa !9
  %3221 = load i32, ptr %42, align 4, !tbaa !9
  %3222 = icmp ne i32 %3221, 0
  br i1 %3222, label %3223, label %3224

3223:                                             ; preds = %3207
  br label %3368

3224:                                             ; preds = %3207
  %3225 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %3225, ptr %42, align 4, !tbaa !9
  %3226 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %3226, ptr %43, align 4, !tbaa !9
  %3227 = load i32, ptr %43, align 4, !tbaa !9
  %3228 = load i32, ptr %42, align 4, !tbaa !9
  %3229 = add i32 %3228, %3227
  store i32 %3229, ptr %42, align 4, !tbaa !9
  %3230 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3230, ptr %43, align 4, !tbaa !9
  %3231 = load i32, ptr %43, align 4, !tbaa !9
  %3232 = load i32, ptr %42, align 4, !tbaa !9
  %3233 = and i32 %3232, %3231
  store i32 %3233, ptr %42, align 4, !tbaa !9
  %3234 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3234, ptr %26, align 4, !tbaa !9
  %3235 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %3235, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3236 = load i32, ptr %43, align 4, !tbaa !9
  %3237 = load i32, ptr %42, align 4, !tbaa !9
  %3238 = add i32 %3237, %3236
  store i32 %3238, ptr %42, align 4, !tbaa !9
  %3239 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3239, ptr %34, align 4, !tbaa !9
  br label %3112

3240:                                             ; preds = %3084
  %3241 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3241, ptr %42, align 4, !tbaa !9
  %3242 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %3242, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %3243 = load i32, ptr %44, align 4, !tbaa !9
  %3244 = load i32, ptr %43, align 4, !tbaa !9
  %3245 = mul i32 %3244, %3243
  store i32 %3245, ptr %43, align 4, !tbaa !9
  %3246 = load i32, ptr %43, align 4, !tbaa !9
  %3247 = load i32, ptr %42, align 4, !tbaa !9
  %3248 = add i32 %3247, %3246
  store i32 %3248, ptr %42, align 4, !tbaa !9
  %3249 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3249, ptr %14, align 4, !tbaa !9
  %3250 = load ptr, ptr %6, align 8, !tbaa !5
  %3251 = getelementptr inbounds %struct.w2c_hermes, ptr %3250, i32 0, i32 6
  %3252 = load i32, ptr %42, align 4, !tbaa !9
  %3253 = zext i32 %3252 to i64
  %3254 = call i64 @i64_load(ptr noundef %3251, i64 noundef %3253)
  store i64 %3254, ptr %48, align 8, !tbaa !11
  %3255 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %3255, ptr %39, align 8, !tbaa !11
  %3256 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %3256, ptr %42, align 4, !tbaa !9
  %3257 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3257, ptr %43, align 4, !tbaa !9
  %3258 = load ptr, ptr %6, align 8, !tbaa !5
  %3259 = getelementptr inbounds %struct.w2c_hermes, ptr %3258, i32 0, i32 6
  %3260 = load i32, ptr %43, align 4, !tbaa !9
  %3261 = zext i32 %3260 to i64
  %3262 = add i64 %3261, 8
  %3263 = call i32 @i32_load(ptr noundef %3259, i64 noundef %3262)
  store i32 %3263, ptr %43, align 4, !tbaa !9
  %3264 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3264, ptr %10, align 4, !tbaa !9
  %3265 = load i32, ptr %42, align 4, !tbaa !9
  %3266 = load i32, ptr %43, align 4, !tbaa !9
  %3267 = icmp eq i32 %3265, %3266
  %3268 = zext i1 %3267 to i32
  store i32 %3268, ptr %42, align 4, !tbaa !9
  %3269 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3269, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %3270 = load i64, ptr %49, align 8, !tbaa !11
  %3271 = load i64, ptr %50, align 8, !tbaa !11
  %3272 = icmp ult i64 %3270, %3271
  %3273 = zext i1 %3272 to i32
  store i32 %3273, ptr %43, align 4, !tbaa !9
  %3274 = load i32, ptr %43, align 4, !tbaa !9
  %3275 = load i32, ptr %42, align 4, !tbaa !9
  %3276 = and i32 %3275, %3274
  store i32 %3276, ptr %42, align 4, !tbaa !9
  %3277 = load i32, ptr %42, align 4, !tbaa !9
  %3278 = icmp ne i32 %3277, 0
  br i1 %3278, label %3279, label %3280

3279:                                             ; preds = %3240
  br label %3368

3280:                                             ; preds = %3240
  store i32 1, ptr %42, align 4, !tbaa !9
  %3281 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3281, ptr %11, align 4, !tbaa !9
  %3282 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3282, ptr %42, align 4, !tbaa !9
  %3283 = load i32, ptr %42, align 4, !tbaa !9
  %3284 = icmp ne i32 %3283, 0
  %3285 = xor i1 %3284, true
  %3286 = zext i1 %3285 to i32
  store i32 %3286, ptr %42, align 4, !tbaa !9
  %3287 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3287, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %3288 = load i64, ptr %49, align 8, !tbaa !11
  %3289 = load i64, ptr %50, align 8, !tbaa !11
  %3290 = icmp ult i64 %3288, %3289
  %3291 = zext i1 %3290 to i32
  store i32 %3291, ptr %43, align 4, !tbaa !9
  %3292 = load i32, ptr %43, align 4, !tbaa !9
  %3293 = load i32, ptr %42, align 4, !tbaa !9
  %3294 = and i32 %3293, %3292
  store i32 %3294, ptr %42, align 4, !tbaa !9
  %3295 = load i32, ptr %42, align 4, !tbaa !9
  %3296 = icmp ne i32 %3295, 0
  br i1 %3296, label %3297, label %3298

3297:                                             ; preds = %3280
  br label %3368

3298:                                             ; preds = %3280
  br label %3299

3299:                                             ; preds = %3366, %3357, %3298
  %3300 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3300, ptr %42, align 4, !tbaa !9
  %3301 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3301, ptr %43, align 4, !tbaa !9
  %3302 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %3302, ptr %44, align 4, !tbaa !9
  %3303 = load i32, ptr %44, align 4, !tbaa !9
  %3304 = load i32, ptr %43, align 4, !tbaa !9
  %3305 = add i32 %3304, %3303
  store i32 %3305, ptr %43, align 4, !tbaa !9
  %3306 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3306, ptr %44, align 4, !tbaa !9
  %3307 = load i32, ptr %44, align 4, !tbaa !9
  %3308 = load i32, ptr %43, align 4, !tbaa !9
  %3309 = and i32 %3308, %3307
  store i32 %3309, ptr %43, align 4, !tbaa !9
  %3310 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3310, ptr %26, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %3311 = load i32, ptr %44, align 4, !tbaa !9
  %3312 = load i32, ptr %43, align 4, !tbaa !9
  %3313 = mul i32 %3312, %3311
  store i32 %3313, ptr %43, align 4, !tbaa !9
  %3314 = load i32, ptr %43, align 4, !tbaa !9
  %3315 = load i32, ptr %42, align 4, !tbaa !9
  %3316 = add i32 %3315, %3314
  store i32 %3316, ptr %42, align 4, !tbaa !9
  %3317 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3317, ptr %14, align 4, !tbaa !9
  %3318 = load ptr, ptr %6, align 8, !tbaa !5
  %3319 = getelementptr inbounds %struct.w2c_hermes, ptr %3318, i32 0, i32 6
  %3320 = load i32, ptr %42, align 4, !tbaa !9
  %3321 = zext i32 %3320 to i64
  %3322 = call i64 @i64_load(ptr noundef %3319, i64 noundef %3321)
  store i64 %3322, ptr %48, align 8, !tbaa !11
  %3323 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %3323, ptr %39, align 8, !tbaa !11
  %3324 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %3324, ptr %42, align 4, !tbaa !9
  %3325 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3325, ptr %43, align 4, !tbaa !9
  %3326 = load ptr, ptr %6, align 8, !tbaa !5
  %3327 = getelementptr inbounds %struct.w2c_hermes, ptr %3326, i32 0, i32 6
  %3328 = load i32, ptr %43, align 4, !tbaa !9
  %3329 = zext i32 %3328 to i64
  %3330 = add i64 %3329, 8
  %3331 = call i32 @i32_load(ptr noundef %3327, i64 noundef %3330)
  store i32 %3331, ptr %43, align 4, !tbaa !9
  %3332 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3332, ptr %10, align 4, !tbaa !9
  %3333 = load i32, ptr %42, align 4, !tbaa !9
  %3334 = load i32, ptr %43, align 4, !tbaa !9
  %3335 = icmp eq i32 %3333, %3334
  %3336 = zext i1 %3335 to i32
  store i32 %3336, ptr %42, align 4, !tbaa !9
  %3337 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3337, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %3338 = load i64, ptr %49, align 8, !tbaa !11
  %3339 = load i64, ptr %50, align 8, !tbaa !11
  %3340 = icmp ult i64 %3338, %3339
  %3341 = zext i1 %3340 to i32
  store i32 %3341, ptr %43, align 4, !tbaa !9
  %3342 = load i32, ptr %43, align 4, !tbaa !9
  %3343 = load i32, ptr %42, align 4, !tbaa !9
  %3344 = and i32 %3343, %3342
  store i32 %3344, ptr %42, align 4, !tbaa !9
  %3345 = load i32, ptr %42, align 4, !tbaa !9
  %3346 = icmp ne i32 %3345, 0
  br i1 %3346, label %3347, label %3348

3347:                                             ; preds = %3299
  br label %3368

3348:                                             ; preds = %3299
  %3349 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3349, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3350 = load i32, ptr %43, align 4, !tbaa !9
  %3351 = load i32, ptr %42, align 4, !tbaa !9
  %3352 = add i32 %3351, %3350
  store i32 %3352, ptr %42, align 4, !tbaa !9
  %3353 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3353, ptr %11, align 4, !tbaa !9
  %3354 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3354, ptr %42, align 4, !tbaa !9
  %3355 = load i32, ptr %42, align 4, !tbaa !9
  %3356 = icmp ne i32 %3355, 0
  br i1 %3356, label %3357, label %3358

3357:                                             ; preds = %3348
  br label %3299

3358:                                             ; preds = %3348
  %3359 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3359, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %3360 = load i64, ptr %48, align 8, !tbaa !11
  %3361 = load i64, ptr %49, align 8, !tbaa !11
  %3362 = icmp uge i64 %3360, %3361
  %3363 = zext i1 %3362 to i32
  store i32 %3363, ptr %42, align 4, !tbaa !9
  %3364 = load i32, ptr %42, align 4, !tbaa !9
  %3365 = icmp ne i32 %3364, 0
  br i1 %3365, label %3366, label %3367

3366:                                             ; preds = %3358
  br label %3299

3367:                                             ; preds = %3358
  br label %3368

3368:                                             ; preds = %3367, %3347, %3297, %3279, %3223, %3206
  %3369 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3369, ptr %42, align 4, !tbaa !9
  %3370 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3370, ptr %43, align 4, !tbaa !9
  %3371 = load ptr, ptr %6, align 8, !tbaa !5
  %3372 = getelementptr inbounds %struct.w2c_hermes, ptr %3371, i32 0, i32 6
  %3373 = load i32, ptr %43, align 4, !tbaa !9
  %3374 = zext i32 %3373 to i64
  %3375 = call i64 @i64_load(ptr noundef %3372, i64 noundef %3374)
  store i64 %3375, ptr %49, align 8, !tbaa !11
  %3376 = load ptr, ptr %6, align 8, !tbaa !5
  %3377 = getelementptr inbounds %struct.w2c_hermes, ptr %3376, i32 0, i32 6
  %3378 = load i32, ptr %42, align 4, !tbaa !9
  %3379 = zext i32 %3378 to i64
  %3380 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3377, i64 noundef %3379, i64 noundef %3380)
  %3381 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3381, ptr %42, align 4, !tbaa !9
  %3382 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3382, ptr %43, align 4, !tbaa !9
  %3383 = load ptr, ptr %6, align 8, !tbaa !5
  %3384 = getelementptr inbounds %struct.w2c_hermes, ptr %3383, i32 0, i32 6
  %3385 = load i32, ptr %43, align 4, !tbaa !9
  %3386 = zext i32 %3385 to i64
  %3387 = add i64 %3386, 8
  %3388 = call i32 @i32_load(ptr noundef %3384, i64 noundef %3387)
  store i32 %3388, ptr %43, align 4, !tbaa !9
  %3389 = load ptr, ptr %6, align 8, !tbaa !5
  %3390 = getelementptr inbounds %struct.w2c_hermes, ptr %3389, i32 0, i32 6
  %3391 = load i32, ptr %42, align 4, !tbaa !9
  %3392 = zext i32 %3391 to i64
  %3393 = add i64 %3392, 8
  %3394 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3390, i64 noundef %3393, i32 noundef %3394)
  %3395 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3395, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %3396 = load ptr, ptr %6, align 8, !tbaa !5
  %3397 = getelementptr inbounds %struct.w2c_hermes, ptr %3396, i32 0, i32 6
  %3398 = load i32, ptr %42, align 4, !tbaa !9
  %3399 = zext i32 %3398 to i64
  %3400 = add i64 %3399, 20
  %3401 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3397, i64 noundef %3400, i32 noundef %3401)
  %3402 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3402, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %3403 = load ptr, ptr %6, align 8, !tbaa !5
  %3404 = getelementptr inbounds %struct.w2c_hermes, ptr %3403, i32 0, i32 6
  %3405 = load i32, ptr %42, align 4, !tbaa !9
  %3406 = zext i32 %3405 to i64
  %3407 = add i64 %3406, 12
  %3408 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3404, i64 noundef %3407, i64 noundef %3408)
  %3409 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3409, ptr %42, align 4, !tbaa !9
  %3410 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3410, ptr %43, align 4, !tbaa !9
  %3411 = load ptr, ptr %6, align 8, !tbaa !5
  %3412 = getelementptr inbounds %struct.w2c_hermes, ptr %3411, i32 0, i32 6
  %3413 = load i32, ptr %43, align 4, !tbaa !9
  %3414 = zext i32 %3413 to i64
  %3415 = add i64 %3414, 12
  %3416 = call i32 @i32_load(ptr noundef %3412, i64 noundef %3415)
  store i32 %3416, ptr %43, align 4, !tbaa !9
  %3417 = load ptr, ptr %6, align 8, !tbaa !5
  %3418 = getelementptr inbounds %struct.w2c_hermes, ptr %3417, i32 0, i32 6
  %3419 = load i32, ptr %42, align 4, !tbaa !9
  %3420 = zext i32 %3419 to i64
  %3421 = add i64 %3420, 12
  %3422 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3418, i64 noundef %3421, i32 noundef %3422)
  %3423 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3423, ptr %42, align 4, !tbaa !9
  %3424 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3424, ptr %43, align 4, !tbaa !9
  %3425 = load ptr, ptr %6, align 8, !tbaa !5
  %3426 = getelementptr inbounds %struct.w2c_hermes, ptr %3425, i32 0, i32 6
  %3427 = load i32, ptr %43, align 4, !tbaa !9
  %3428 = zext i32 %3427 to i64
  %3429 = add i64 %3428, 16
  %3430 = call i32 @i32_load(ptr noundef %3426, i64 noundef %3429)
  store i32 %3430, ptr %43, align 4, !tbaa !9
  %3431 = load ptr, ptr %6, align 8, !tbaa !5
  %3432 = getelementptr inbounds %struct.w2c_hermes, ptr %3431, i32 0, i32 6
  %3433 = load i32, ptr %42, align 4, !tbaa !9
  %3434 = zext i32 %3433 to i64
  %3435 = add i64 %3434, 16
  %3436 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3432, i64 noundef %3435, i32 noundef %3436)
  %3437 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3437, ptr %42, align 4, !tbaa !9
  %3438 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3438, ptr %43, align 4, !tbaa !9
  %3439 = load ptr, ptr %6, align 8, !tbaa !5
  %3440 = getelementptr inbounds %struct.w2c_hermes, ptr %3439, i32 0, i32 6
  %3441 = load i32, ptr %43, align 4, !tbaa !9
  %3442 = zext i32 %3441 to i64
  %3443 = add i64 %3442, 20
  %3444 = call i32 @i32_load(ptr noundef %3440, i64 noundef %3443)
  store i32 %3444, ptr %43, align 4, !tbaa !9
  %3445 = load ptr, ptr %6, align 8, !tbaa !5
  %3446 = getelementptr inbounds %struct.w2c_hermes, ptr %3445, i32 0, i32 6
  %3447 = load i32, ptr %42, align 4, !tbaa !9
  %3448 = zext i32 %3447 to i64
  %3449 = add i64 %3448, 20
  %3450 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3446, i64 noundef %3449, i32 noundef %3450)
  %3451 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3451, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %3452 = load ptr, ptr %6, align 8, !tbaa !5
  %3453 = getelementptr inbounds %struct.w2c_hermes, ptr %3452, i32 0, i32 6
  %3454 = load i32, ptr %42, align 4, !tbaa !9
  %3455 = zext i32 %3454 to i64
  %3456 = add i64 %3455, 20
  %3457 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3453, i64 noundef %3456, i32 noundef %3457)
  %3458 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3458, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %3459 = load ptr, ptr %6, align 8, !tbaa !5
  %3460 = getelementptr inbounds %struct.w2c_hermes, ptr %3459, i32 0, i32 6
  %3461 = load i32, ptr %42, align 4, !tbaa !9
  %3462 = zext i32 %3461 to i64
  %3463 = add i64 %3462, 12
  %3464 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3460, i64 noundef %3463, i64 noundef %3464)
  %3465 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %3465, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3466 = load i32, ptr %43, align 4, !tbaa !9
  %3467 = load i32, ptr %42, align 4, !tbaa !9
  %3468 = add i32 %3467, %3466
  store i32 %3468, ptr %42, align 4, !tbaa !9
  %3469 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3469, ptr %15, align 4, !tbaa !9
  br label %3470

3470:                                             ; preds = %3368, %3051
  %3471 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3471, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %3472 = load i32, ptr %43, align 4, !tbaa !9
  %3473 = load i32, ptr %42, align 4, !tbaa !9
  %3474 = add i32 %3473, %3472
  store i32 %3474, ptr %42, align 4, !tbaa !9
  %3475 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3475, ptr %13, align 4, !tbaa !9
  %3476 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %3476, ptr %43, align 4, !tbaa !9
  %3477 = load i32, ptr %42, align 4, !tbaa !9
  %3478 = load i32, ptr %43, align 4, !tbaa !9
  %3479 = icmp ne i32 %3477, %3478
  %3480 = zext i1 %3479 to i32
  store i32 %3480, ptr %42, align 4, !tbaa !9
  %3481 = load i32, ptr %42, align 4, !tbaa !9
  %3482 = icmp ne i32 %3481, 0
  br i1 %3482, label %3483, label %3484

3483:                                             ; preds = %3470
  br label %3051

3484:                                             ; preds = %3470
  br label %3485

3485:                                             ; preds = %3484, %2826
  %3486 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %3486, ptr %42, align 4, !tbaa !9
  %3487 = load ptr, ptr %6, align 8, !tbaa !5
  %3488 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %3487, i32 noundef %3488)
  br label %3489

3489:                                             ; preds = %3485, %3032, %2905
  %3490 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %3490, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3491 = load i32, ptr %43, align 4, !tbaa !9
  %3492 = load i32, ptr %42, align 4, !tbaa !9
  %3493 = sub i32 %3492, %3491
  store i32 %3493, ptr %42, align 4, !tbaa !9
  %3494 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3494, ptr %28, align 4, !tbaa !9
  %3495 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %3495, ptr %43, align 4, !tbaa !9
  %3496 = load i32, ptr %43, align 4, !tbaa !9
  %3497 = load i32, ptr %42, align 4, !tbaa !9
  %3498 = and i32 %3497, %3496
  store i32 %3498, ptr %42, align 4, !tbaa !9
  %3499 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3499, ptr %14, align 4, !tbaa !9
  %3500 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %3500, ptr %42, align 4, !tbaa !9
  %3501 = load i32, ptr %42, align 4, !tbaa !9
  %3502 = icmp ne i32 %3501, 0
  br i1 %3502, label %3503, label %3642

3503:                                             ; preds = %3489
  %3504 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3504, ptr %42, align 4, !tbaa !9
  %3505 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %3505, ptr %43, align 4, !tbaa !9
  %3506 = load i32, ptr %43, align 4, !tbaa !9
  %3507 = load i32, ptr %42, align 4, !tbaa !9
  %3508 = add i32 %3507, %3506
  store i32 %3508, ptr %42, align 4, !tbaa !9
  %3509 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3509, ptr %21, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %3510 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3510, ptr %22, align 4, !tbaa !9
  br label %3511

3511:                                             ; preds = %3626, %3503
  %3512 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3512, ptr %42, align 4, !tbaa !9
  %3513 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3513, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %3514 = load i32, ptr %44, align 4, !tbaa !9
  %3515 = load i32, ptr %43, align 4, !tbaa !9
  %3516 = mul i32 %3515, %3514
  store i32 %3516, ptr %43, align 4, !tbaa !9
  %3517 = load i32, ptr %43, align 4, !tbaa !9
  %3518 = load i32, ptr %42, align 4, !tbaa !9
  %3519 = add i32 %3518, %3517
  store i32 %3519, ptr %42, align 4, !tbaa !9
  %3520 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3520, ptr %13, align 4, !tbaa !9
  %3521 = load ptr, ptr %6, align 8, !tbaa !5
  %3522 = getelementptr inbounds %struct.w2c_hermes, ptr %3521, i32 0, i32 6
  %3523 = load i32, ptr %42, align 4, !tbaa !9
  %3524 = zext i32 %3523 to i64
  %3525 = call i64 @i64_load(ptr noundef %3522, i64 noundef %3524)
  store i64 %3525, ptr %48, align 8, !tbaa !11
  %3526 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %3526, ptr %39, align 8, !tbaa !11
  %3527 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3527, ptr %42, align 4, !tbaa !9
  %3528 = load ptr, ptr %6, align 8, !tbaa !5
  %3529 = getelementptr inbounds %struct.w2c_hermes, ptr %3528, i32 0, i32 6
  %3530 = load i32, ptr %42, align 4, !tbaa !9
  %3531 = zext i32 %3530 to i64
  %3532 = add i64 %3531, 8
  %3533 = call i32 @i32_load(ptr noundef %3529, i64 noundef %3532)
  store i32 %3533, ptr %42, align 4, !tbaa !9
  %3534 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3534, ptr %24, align 4, !tbaa !9
  %3535 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %3535, ptr %43, align 4, !tbaa !9
  %3536 = load i32, ptr %42, align 4, !tbaa !9
  %3537 = load i32, ptr %43, align 4, !tbaa !9
  %3538 = icmp ne i32 %3536, %3537
  %3539 = zext i1 %3538 to i32
  store i32 %3539, ptr %42, align 4, !tbaa !9
  %3540 = load i32, ptr %42, align 4, !tbaa !9
  %3541 = icmp ne i32 %3540, 0
  br i1 %3541, label %3542, label %3543

3542:                                             ; preds = %3511
  br label %3607

3543:                                             ; preds = %3511
  %3544 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %3544, ptr %42, align 4, !tbaa !9
  %3545 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3545, ptr %49, align 8, !tbaa !11
  store i64 32, ptr %50, align 8, !tbaa !11
  %3546 = load i64, ptr %50, align 8, !tbaa !11
  %3547 = and i64 %3546, 63
  %3548 = load i64, ptr %49, align 8, !tbaa !11
  %3549 = lshr i64 %3548, %3547
  store i64 %3549, ptr %49, align 8, !tbaa !11
  %3550 = load i64, ptr %49, align 8, !tbaa !11
  %3551 = trunc i64 %3550 to i32
  store i32 %3551, ptr %43, align 4, !tbaa !9
  %3552 = load i32, ptr %42, align 4, !tbaa !9
  %3553 = load i32, ptr %43, align 4, !tbaa !9
  %3554 = icmp ne i32 %3552, %3553
  %3555 = zext i1 %3554 to i32
  store i32 %3555, ptr %42, align 4, !tbaa !9
  %3556 = load i32, ptr %42, align 4, !tbaa !9
  %3557 = icmp ne i32 %3556, 0
  br i1 %3557, label %3558, label %3559

3558:                                             ; preds = %3543
  br label %3607

3559:                                             ; preds = %3543
  %3560 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3560, ptr %48, align 8, !tbaa !11
  %3561 = load i64, ptr %48, align 8, !tbaa !11
  %3562 = trunc i64 %3561 to i32
  store i32 %3562, ptr %42, align 4, !tbaa !9
  %3563 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3563, ptr %10, align 4, !tbaa !9
  %3564 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3564, ptr %42, align 4, !tbaa !9
  %3565 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3565, ptr %11, align 4, !tbaa !9
  br label %3566

3566:                                             ; preds = %3605, %3559
  %3567 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3567, ptr %42, align 4, !tbaa !9
  %3568 = load ptr, ptr %6, align 8, !tbaa !5
  %3569 = getelementptr inbounds %struct.w2c_hermes, ptr %3568, i32 0, i32 6
  %3570 = load i32, ptr %42, align 4, !tbaa !9
  %3571 = zext i32 %3570 to i64
  %3572 = call i32 @i32_load8_u(ptr noundef %3569, i64 noundef %3571)
  store i32 %3572, ptr %42, align 4, !tbaa !9
  %3573 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3573, ptr %43, align 4, !tbaa !9
  %3574 = load ptr, ptr %6, align 8, !tbaa !5
  %3575 = getelementptr inbounds %struct.w2c_hermes, ptr %3574, i32 0, i32 6
  %3576 = load i32, ptr %43, align 4, !tbaa !9
  %3577 = zext i32 %3576 to i64
  %3578 = call i32 @i32_load8_u(ptr noundef %3575, i64 noundef %3577)
  store i32 %3578, ptr %43, align 4, !tbaa !9
  %3579 = load i32, ptr %42, align 4, !tbaa !9
  %3580 = load i32, ptr %43, align 4, !tbaa !9
  %3581 = icmp ne i32 %3579, %3580
  %3582 = zext i1 %3581 to i32
  store i32 %3582, ptr %42, align 4, !tbaa !9
  %3583 = load i32, ptr %42, align 4, !tbaa !9
  %3584 = icmp ne i32 %3583, 0
  br i1 %3584, label %3585, label %3586

3585:                                             ; preds = %3566
  br label %3607

3586:                                             ; preds = %3566
  %3587 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3587, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3588 = load i32, ptr %43, align 4, !tbaa !9
  %3589 = load i32, ptr %42, align 4, !tbaa !9
  %3590 = add i32 %3589, %3588
  store i32 %3590, ptr %42, align 4, !tbaa !9
  %3591 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3591, ptr %10, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %3592 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3592, ptr %29, align 4, !tbaa !9
  %3593 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3593, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3594 = load i32, ptr %43, align 4, !tbaa !9
  %3595 = load i32, ptr %42, align 4, !tbaa !9
  %3596 = add i32 %3595, %3594
  store i32 %3596, ptr %42, align 4, !tbaa !9
  %3597 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3597, ptr %11, align 4, !tbaa !9
  %3598 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %3598, ptr %43, align 4, !tbaa !9
  %3599 = load i32, ptr %42, align 4, !tbaa !9
  %3600 = load i32, ptr %43, align 4, !tbaa !9
  %3601 = icmp ne i32 %3599, %3600
  %3602 = zext i1 %3601 to i32
  store i32 %3602, ptr %42, align 4, !tbaa !9
  %3603 = load i32, ptr %42, align 4, !tbaa !9
  %3604 = icmp ne i32 %3603, 0
  br i1 %3604, label %3605, label %3606

3605:                                             ; preds = %3586
  br label %3566

3606:                                             ; preds = %3586
  br label %3777

3607:                                             ; preds = %3585, %3558, %3542
  %3608 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %3608, ptr %42, align 4, !tbaa !9
  %3609 = load i32, ptr %42, align 4, !tbaa !9
  %3610 = icmp ne i32 %3609, 0
  %3611 = xor i1 %3610, true
  %3612 = zext i1 %3611 to i32
  store i32 %3612, ptr %42, align 4, !tbaa !9
  %3613 = load i32, ptr %42, align 4, !tbaa !9
  %3614 = icmp ne i32 %3613, 0
  br i1 %3614, label %3615, label %3626

3615:                                             ; preds = %3607
  store i32 0, ptr %42, align 4, !tbaa !9
  %3616 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3616, ptr %29, align 4, !tbaa !9
  %3617 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3617, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %3618 = load i64, ptr %48, align 8, !tbaa !11
  %3619 = load i64, ptr %49, align 8, !tbaa !11
  %3620 = icmp ult i64 %3618, %3619
  %3621 = zext i1 %3620 to i32
  store i32 %3621, ptr %42, align 4, !tbaa !9
  %3622 = load i32, ptr %42, align 4, !tbaa !9
  %3623 = icmp ne i32 %3622, 0
  br i1 %3623, label %3624, label %3625

3624:                                             ; preds = %3615
  br label %3784

3625:                                             ; preds = %3615
  br label %3626

3626:                                             ; preds = %3625, %3607
  %3627 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3627, ptr %42, align 4, !tbaa !9
  %3628 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %3628, ptr %43, align 4, !tbaa !9
  %3629 = load i32, ptr %43, align 4, !tbaa !9
  %3630 = load i32, ptr %42, align 4, !tbaa !9
  %3631 = add i32 %3630, %3629
  store i32 %3631, ptr %42, align 4, !tbaa !9
  %3632 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %3632, ptr %43, align 4, !tbaa !9
  %3633 = load i32, ptr %43, align 4, !tbaa !9
  %3634 = load i32, ptr %42, align 4, !tbaa !9
  %3635 = and i32 %3634, %3633
  store i32 %3635, ptr %42, align 4, !tbaa !9
  %3636 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3636, ptr %14, align 4, !tbaa !9
  %3637 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %3637, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3638 = load i32, ptr %43, align 4, !tbaa !9
  %3639 = load i32, ptr %42, align 4, !tbaa !9
  %3640 = add i32 %3639, %3638
  store i32 %3640, ptr %42, align 4, !tbaa !9
  %3641 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3641, ptr %22, align 4, !tbaa !9
  br label %3511

3642:                                             ; preds = %3489
  %3643 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3643, ptr %42, align 4, !tbaa !9
  %3644 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3644, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %3645 = load i32, ptr %44, align 4, !tbaa !9
  %3646 = load i32, ptr %43, align 4, !tbaa !9
  %3647 = mul i32 %3646, %3645
  store i32 %3647, ptr %43, align 4, !tbaa !9
  %3648 = load i32, ptr %43, align 4, !tbaa !9
  %3649 = load i32, ptr %42, align 4, !tbaa !9
  %3650 = add i32 %3649, %3648
  store i32 %3650, ptr %42, align 4, !tbaa !9
  %3651 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3651, ptr %13, align 4, !tbaa !9
  %3652 = load ptr, ptr %6, align 8, !tbaa !5
  %3653 = getelementptr inbounds %struct.w2c_hermes, ptr %3652, i32 0, i32 6
  %3654 = load i32, ptr %42, align 4, !tbaa !9
  %3655 = zext i32 %3654 to i64
  %3656 = call i64 @i64_load(ptr noundef %3653, i64 noundef %3655)
  store i64 %3656, ptr %48, align 8, !tbaa !11
  %3657 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %3657, ptr %39, align 8, !tbaa !11
  %3658 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %3658, ptr %42, align 4, !tbaa !9
  %3659 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3659, ptr %43, align 4, !tbaa !9
  %3660 = load ptr, ptr %6, align 8, !tbaa !5
  %3661 = getelementptr inbounds %struct.w2c_hermes, ptr %3660, i32 0, i32 6
  %3662 = load i32, ptr %43, align 4, !tbaa !9
  %3663 = zext i32 %3662 to i64
  %3664 = add i64 %3663, 8
  %3665 = call i32 @i32_load(ptr noundef %3661, i64 noundef %3664)
  store i32 %3665, ptr %43, align 4, !tbaa !9
  %3666 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3666, ptr %10, align 4, !tbaa !9
  %3667 = load i32, ptr %42, align 4, !tbaa !9
  %3668 = load i32, ptr %43, align 4, !tbaa !9
  %3669 = icmp eq i32 %3667, %3668
  %3670 = zext i1 %3669 to i32
  store i32 %3670, ptr %42, align 4, !tbaa !9
  %3671 = load i32, ptr %42, align 4, !tbaa !9
  %3672 = icmp ne i32 %3671, 0
  br i1 %3672, label %3673, label %3684

3673:                                             ; preds = %3642
  store i32 0, ptr %42, align 4, !tbaa !9
  %3674 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3674, ptr %29, align 4, !tbaa !9
  %3675 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3675, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %3676 = load i64, ptr %48, align 8, !tbaa !11
  %3677 = load i64, ptr %49, align 8, !tbaa !11
  %3678 = icmp ult i64 %3676, %3677
  %3679 = zext i1 %3678 to i32
  store i32 %3679, ptr %42, align 4, !tbaa !9
  %3680 = load i32, ptr %42, align 4, !tbaa !9
  %3681 = icmp ne i32 %3680, 0
  br i1 %3681, label %3682, label %3683

3682:                                             ; preds = %3673
  br label %3777

3683:                                             ; preds = %3673
  br label %3684

3684:                                             ; preds = %3683, %3642
  store i32 1, ptr %42, align 4, !tbaa !9
  %3685 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3685, ptr %11, align 4, !tbaa !9
  %3686 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3686, ptr %42, align 4, !tbaa !9
  %3687 = load i32, ptr %42, align 4, !tbaa !9
  %3688 = icmp ne i32 %3687, 0
  %3689 = xor i1 %3688, true
  %3690 = zext i1 %3689 to i32
  store i32 %3690, ptr %42, align 4, !tbaa !9
  %3691 = load i32, ptr %42, align 4, !tbaa !9
  %3692 = icmp ne i32 %3691, 0
  br i1 %3692, label %3693, label %3704

3693:                                             ; preds = %3684
  store i32 0, ptr %42, align 4, !tbaa !9
  %3694 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3694, ptr %29, align 4, !tbaa !9
  %3695 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3695, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %3696 = load i64, ptr %48, align 8, !tbaa !11
  %3697 = load i64, ptr %49, align 8, !tbaa !11
  %3698 = icmp ult i64 %3696, %3697
  %3699 = zext i1 %3698 to i32
  store i32 %3699, ptr %42, align 4, !tbaa !9
  %3700 = load i32, ptr %42, align 4, !tbaa !9
  %3701 = icmp ne i32 %3700, 0
  br i1 %3701, label %3702, label %3703

3702:                                             ; preds = %3693
  br label %3784

3703:                                             ; preds = %3693
  br label %3704

3704:                                             ; preds = %3703, %3684
  br label %3705

3705:                                             ; preds = %3775, %3765, %3704
  %3706 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3706, ptr %42, align 4, !tbaa !9
  %3707 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3707, ptr %43, align 4, !tbaa !9
  %3708 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3708, ptr %44, align 4, !tbaa !9
  %3709 = load i32, ptr %44, align 4, !tbaa !9
  %3710 = load i32, ptr %43, align 4, !tbaa !9
  %3711 = add i32 %3710, %3709
  store i32 %3711, ptr %43, align 4, !tbaa !9
  %3712 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %3712, ptr %44, align 4, !tbaa !9
  %3713 = load i32, ptr %44, align 4, !tbaa !9
  %3714 = load i32, ptr %43, align 4, !tbaa !9
  %3715 = and i32 %3714, %3713
  store i32 %3715, ptr %43, align 4, !tbaa !9
  %3716 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3716, ptr %14, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %3717 = load i32, ptr %44, align 4, !tbaa !9
  %3718 = load i32, ptr %43, align 4, !tbaa !9
  %3719 = mul i32 %3718, %3717
  store i32 %3719, ptr %43, align 4, !tbaa !9
  %3720 = load i32, ptr %43, align 4, !tbaa !9
  %3721 = load i32, ptr %42, align 4, !tbaa !9
  %3722 = add i32 %3721, %3720
  store i32 %3722, ptr %42, align 4, !tbaa !9
  %3723 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3723, ptr %13, align 4, !tbaa !9
  %3724 = load ptr, ptr %6, align 8, !tbaa !5
  %3725 = getelementptr inbounds %struct.w2c_hermes, ptr %3724, i32 0, i32 6
  %3726 = load i32, ptr %42, align 4, !tbaa !9
  %3727 = zext i32 %3726 to i64
  %3728 = call i64 @i64_load(ptr noundef %3725, i64 noundef %3727)
  store i64 %3728, ptr %48, align 8, !tbaa !11
  %3729 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %3729, ptr %39, align 8, !tbaa !11
  %3730 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %3730, ptr %42, align 4, !tbaa !9
  %3731 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3731, ptr %43, align 4, !tbaa !9
  %3732 = load ptr, ptr %6, align 8, !tbaa !5
  %3733 = getelementptr inbounds %struct.w2c_hermes, ptr %3732, i32 0, i32 6
  %3734 = load i32, ptr %43, align 4, !tbaa !9
  %3735 = zext i32 %3734 to i64
  %3736 = add i64 %3735, 8
  %3737 = call i32 @i32_load(ptr noundef %3733, i64 noundef %3736)
  store i32 %3737, ptr %43, align 4, !tbaa !9
  %3738 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3738, ptr %10, align 4, !tbaa !9
  %3739 = load i32, ptr %42, align 4, !tbaa !9
  %3740 = load i32, ptr %43, align 4, !tbaa !9
  %3741 = icmp eq i32 %3739, %3740
  %3742 = zext i1 %3741 to i32
  store i32 %3742, ptr %42, align 4, !tbaa !9
  %3743 = load i32, ptr %42, align 4, !tbaa !9
  %3744 = icmp ne i32 %3743, 0
  br i1 %3744, label %3745, label %3756

3745:                                             ; preds = %3705
  store i32 0, ptr %42, align 4, !tbaa !9
  %3746 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3746, ptr %29, align 4, !tbaa !9
  %3747 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3747, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %3748 = load i64, ptr %48, align 8, !tbaa !11
  %3749 = load i64, ptr %49, align 8, !tbaa !11
  %3750 = icmp ult i64 %3748, %3749
  %3751 = zext i1 %3750 to i32
  store i32 %3751, ptr %42, align 4, !tbaa !9
  %3752 = load i32, ptr %42, align 4, !tbaa !9
  %3753 = icmp ne i32 %3752, 0
  br i1 %3753, label %3754, label %3755

3754:                                             ; preds = %3745
  br label %3777

3755:                                             ; preds = %3745
  br label %3756

3756:                                             ; preds = %3755, %3705
  %3757 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3757, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3758 = load i32, ptr %43, align 4, !tbaa !9
  %3759 = load i32, ptr %42, align 4, !tbaa !9
  %3760 = add i32 %3759, %3758
  store i32 %3760, ptr %42, align 4, !tbaa !9
  %3761 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3761, ptr %11, align 4, !tbaa !9
  %3762 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3762, ptr %42, align 4, !tbaa !9
  %3763 = load i32, ptr %42, align 4, !tbaa !9
  %3764 = icmp ne i32 %3763, 0
  br i1 %3764, label %3765, label %3766

3765:                                             ; preds = %3756
  br label %3705

3766:                                             ; preds = %3756
  store i32 0, ptr %42, align 4, !tbaa !9
  %3767 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3767, ptr %29, align 4, !tbaa !9
  %3768 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3768, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %3769 = load i64, ptr %48, align 8, !tbaa !11
  %3770 = load i64, ptr %49, align 8, !tbaa !11
  %3771 = icmp uge i64 %3769, %3770
  %3772 = zext i1 %3771 to i32
  store i32 %3772, ptr %42, align 4, !tbaa !9
  %3773 = load i32, ptr %42, align 4, !tbaa !9
  %3774 = icmp ne i32 %3773, 0
  br i1 %3774, label %3775, label %3776

3775:                                             ; preds = %3766
  br label %3705

3776:                                             ; preds = %3766
  br label %3784

3777:                                             ; preds = %3754, %3682, %3606
  %3778 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %3778, ptr %42, align 4, !tbaa !9
  %3779 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3779, ptr %10, align 4, !tbaa !9
  %3780 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %3780, ptr %42, align 4, !tbaa !9
  %3781 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3781, ptr %14, align 4, !tbaa !9
  %3782 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3782, ptr %42, align 4, !tbaa !9
  %3783 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3783, ptr %24, align 4, !tbaa !9
  br label %3789

3784:                                             ; preds = %3776, %3702, %3624
  %3785 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3785, ptr %42, align 4, !tbaa !9
  %3786 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3786, ptr %24, align 4, !tbaa !9
  %3787 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %3787, ptr %42, align 4, !tbaa !9
  %3788 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3788, ptr %14, align 4, !tbaa !9
  br label %3818

3789:                                             ; preds = %3777, %2521
  %3790 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3790, ptr %42, align 4, !tbaa !9
  %3791 = load i32, ptr %42, align 4, !tbaa !9
  %3792 = icmp ne i32 %3791, 0
  %3793 = xor i1 %3792, true
  %3794 = zext i1 %3793 to i32
  store i32 %3794, ptr %42, align 4, !tbaa !9
  %3795 = load i32, ptr %42, align 4, !tbaa !9
  %3796 = icmp ne i32 %3795, 0
  br i1 %3796, label %3797, label %3812

3797:                                             ; preds = %3789
  %3798 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3798, ptr %42, align 4, !tbaa !9
  %3799 = load ptr, ptr %6, align 8, !tbaa !5
  %3800 = getelementptr inbounds %struct.w2c_hermes, ptr %3799, i32 0, i32 6
  %3801 = load i32, ptr %42, align 4, !tbaa !9
  %3802 = zext i32 %3801 to i64
  %3803 = call i64 @i64_load(ptr noundef %3800, i64 noundef %3802)
  store i64 %3803, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %3804 = load i64, ptr %48, align 8, !tbaa !11
  %3805 = load i64, ptr %49, align 8, !tbaa !11
  %3806 = icmp ult i64 %3804, %3805
  %3807 = zext i1 %3806 to i32
  store i32 %3807, ptr %42, align 4, !tbaa !9
  %3808 = load i32, ptr %42, align 4, !tbaa !9
  %3809 = icmp ne i32 %3808, 0
  br i1 %3809, label %3810, label %3811

3810:                                             ; preds = %3797
  br label %3818

3811:                                             ; preds = %3797
  br label %3812

3812:                                             ; preds = %3811, %3789
  %3813 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %3813, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3814 = load i32, ptr %43, align 4, !tbaa !9
  %3815 = load i32, ptr %42, align 4, !tbaa !9
  %3816 = sub i32 %3815, %3814
  store i32 %3816, ptr %42, align 4, !tbaa !9
  %3817 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3817, ptr %29, align 4, !tbaa !9
  br label %3818

3818:                                             ; preds = %3812, %3810, %3784
  %3819 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3819, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %3820 = load ptr, ptr %6, align 8, !tbaa !5
  %3821 = getelementptr inbounds %struct.w2c_hermes, ptr %3820, i32 0, i32 6
  %3822 = load i32, ptr %42, align 4, !tbaa !9
  %3823 = zext i32 %3822 to i64
  %3824 = add i64 %3823, 12
  %3825 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3821, i64 noundef %3824, i64 noundef %3825)
  %3826 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3826, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %3827 = load ptr, ptr %6, align 8, !tbaa !5
  %3828 = getelementptr inbounds %struct.w2c_hermes, ptr %3827, i32 0, i32 6
  %3829 = load i32, ptr %42, align 4, !tbaa !9
  %3830 = zext i32 %3829 to i64
  %3831 = add i64 %3830, 20
  %3832 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3828, i64 noundef %3831, i32 noundef %3832)
  %3833 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3833, ptr %42, align 4, !tbaa !9
  %3834 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %3834, ptr %43, align 4, !tbaa !9
  %3835 = load ptr, ptr %6, align 8, !tbaa !5
  %3836 = getelementptr inbounds %struct.w2c_hermes, ptr %3835, i32 0, i32 6
  %3837 = load i32, ptr %42, align 4, !tbaa !9
  %3838 = zext i32 %3837 to i64
  %3839 = add i64 %3838, 8
  %3840 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3836, i64 noundef %3839, i32 noundef %3840)
  %3841 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3841, ptr %42, align 4, !tbaa !9
  %3842 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3842, ptr %43, align 4, !tbaa !9
  %3843 = load i32, ptr %43, align 4, !tbaa !9
  %3844 = zext i32 %3843 to i64
  store i64 %3844, ptr %49, align 8, !tbaa !11
  %3845 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %3845, ptr %44, align 4, !tbaa !9
  %3846 = load i32, ptr %44, align 4, !tbaa !9
  %3847 = zext i32 %3846 to i64
  store i64 %3847, ptr %50, align 8, !tbaa !11
  store i64 32, ptr %51, align 8, !tbaa !11
  %3848 = load i64, ptr %51, align 8, !tbaa !11
  %3849 = and i64 %3848, 63
  %3850 = load i64, ptr %50, align 8, !tbaa !11
  %3851 = shl i64 %3850, %3849
  store i64 %3851, ptr %50, align 8, !tbaa !11
  %3852 = load i64, ptr %50, align 8, !tbaa !11
  %3853 = load i64, ptr %49, align 8, !tbaa !11
  %3854 = or i64 %3853, %3852
  store i64 %3854, ptr %49, align 8, !tbaa !11
  %3855 = load ptr, ptr %6, align 8, !tbaa !5
  %3856 = getelementptr inbounds %struct.w2c_hermes, ptr %3855, i32 0, i32 6
  %3857 = load i32, ptr %42, align 4, !tbaa !9
  %3858 = zext i32 %3857 to i64
  %3859 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3856, i64 noundef %3858, i64 noundef %3859)
  %3860 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %3860, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3861 = load i32, ptr %43, align 4, !tbaa !9
  %3862 = load i32, ptr %42, align 4, !tbaa !9
  %3863 = add i32 %3862, %3861
  store i32 %3863, ptr %42, align 4, !tbaa !9
  %3864 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3864, ptr %15, align 4, !tbaa !9
  br label %3865

3865:                                             ; preds = %3818, %2448, %2380, %2307
  %3866 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3866, ptr %42, align 4, !tbaa !9
  %3867 = load ptr, ptr %6, align 8, !tbaa !5
  %3868 = getelementptr inbounds %struct.w2c_hermes, ptr %3867, i32 0, i32 6
  %3869 = load i32, ptr %42, align 4, !tbaa !9
  %3870 = zext i32 %3869 to i64
  %3871 = add i64 %3870, 16
  %3872 = call i32 @i32_load(ptr noundef %3868, i64 noundef %3871)
  store i32 %3872, ptr %42, align 4, !tbaa !9
  %3873 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3873, ptr %11, align 4, !tbaa !9
  %3874 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3874, ptr %43, align 4, !tbaa !9
  %3875 = load ptr, ptr %6, align 8, !tbaa !5
  %3876 = getelementptr inbounds %struct.w2c_hermes, ptr %3875, i32 0, i32 6
  %3877 = load i32, ptr %43, align 4, !tbaa !9
  %3878 = zext i32 %3877 to i64
  %3879 = add i64 %3878, 20
  %3880 = call i32 @i32_load(ptr noundef %3876, i64 noundef %3879)
  store i32 %3880, ptr %43, align 4, !tbaa !9
  %3881 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3881, ptr %10, align 4, !tbaa !9
  %3882 = load i32, ptr %42, align 4, !tbaa !9
  %3883 = load i32, ptr %43, align 4, !tbaa !9
  %3884 = icmp ult i32 %3882, %3883
  %3885 = zext i1 %3884 to i32
  store i32 %3885, ptr %42, align 4, !tbaa !9
  %3886 = load i32, ptr %42, align 4, !tbaa !9
  %3887 = icmp ne i32 %3886, 0
  br i1 %3887, label %3888, label %3907

3888:                                             ; preds = %3865
  %3889 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3889, ptr %42, align 4, !tbaa !9
  %3890 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3890, ptr %43, align 4, !tbaa !9
  %3891 = load ptr, ptr %6, align 8, !tbaa !5
  %3892 = getelementptr inbounds %struct.w2c_hermes, ptr %3891, i32 0, i32 6
  %3893 = load i32, ptr %42, align 4, !tbaa !9
  %3894 = zext i32 %3893 to i64
  %3895 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3892, i64 noundef %3894, i32 noundef %3895)
  %3896 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3896, ptr %42, align 4, !tbaa !9
  %3897 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3897, ptr %43, align 4, !tbaa !9
  store i32 4, ptr %44, align 4, !tbaa !9
  %3898 = load i32, ptr %44, align 4, !tbaa !9
  %3899 = load i32, ptr %43, align 4, !tbaa !9
  %3900 = add i32 %3899, %3898
  store i32 %3900, ptr %43, align 4, !tbaa !9
  %3901 = load ptr, ptr %6, align 8, !tbaa !5
  %3902 = getelementptr inbounds %struct.w2c_hermes, ptr %3901, i32 0, i32 6
  %3903 = load i32, ptr %42, align 4, !tbaa !9
  %3904 = zext i32 %3903 to i64
  %3905 = add i64 %3904, 16
  %3906 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3902, i64 noundef %3905, i32 noundef %3906)
  br label %4071

3907:                                             ; preds = %3865
  %3908 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3908, ptr %42, align 4, !tbaa !9
  %3909 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3909, ptr %43, align 4, !tbaa !9
  %3910 = load ptr, ptr %6, align 8, !tbaa !5
  %3911 = getelementptr inbounds %struct.w2c_hermes, ptr %3910, i32 0, i32 6
  %3912 = load i32, ptr %43, align 4, !tbaa !9
  %3913 = zext i32 %3912 to i64
  %3914 = add i64 %3913, 12
  %3915 = call i32 @i32_load(ptr noundef %3911, i64 noundef %3914)
  store i32 %3915, ptr %43, align 4, !tbaa !9
  %3916 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3916, ptr %21, align 4, !tbaa !9
  %3917 = load i32, ptr %43, align 4, !tbaa !9
  %3918 = load i32, ptr %42, align 4, !tbaa !9
  %3919 = sub i32 %3918, %3917
  store i32 %3919, ptr %42, align 4, !tbaa !9
  %3920 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3920, ptr %23, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %3921 = load i32, ptr %42, align 4, !tbaa !9
  %3922 = load i32, ptr %43, align 4, !tbaa !9
  %3923 = and i32 %3922, 31
  %3924 = ashr i32 %3921, %3923
  store i32 %3924, ptr %42, align 4, !tbaa !9
  %3925 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3925, ptr %12, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %3926 = load i32, ptr %43, align 4, !tbaa !9
  %3927 = load i32, ptr %42, align 4, !tbaa !9
  %3928 = add i32 %3927, %3926
  store i32 %3928, ptr %42, align 4, !tbaa !9
  %3929 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3929, ptr %19, align 4, !tbaa !9
  store i32 1073741824, ptr %43, align 4, !tbaa !9
  %3930 = load i32, ptr %42, align 4, !tbaa !9
  %3931 = load i32, ptr %43, align 4, !tbaa !9
  %3932 = icmp uge i32 %3930, %3931
  %3933 = zext i1 %3932 to i32
  store i32 %3933, ptr %42, align 4, !tbaa !9
  %3934 = load i32, ptr %42, align 4, !tbaa !9
  %3935 = icmp ne i32 %3934, 0
  br i1 %3935, label %3936, label %3937

3936:                                             ; preds = %3907
  br label %4092

3937:                                             ; preds = %3907
  store i32 1073741823, ptr %42, align 4, !tbaa !9
  %3938 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3938, ptr %43, align 4, !tbaa !9
  %3939 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %3939, ptr %44, align 4, !tbaa !9
  %3940 = load i32, ptr %44, align 4, !tbaa !9
  %3941 = load i32, ptr %43, align 4, !tbaa !9
  %3942 = sub i32 %3941, %3940
  store i32 %3942, ptr %43, align 4, !tbaa !9
  %3943 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3943, ptr %11, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %3944 = load i32, ptr %43, align 4, !tbaa !9
  %3945 = load i32, ptr %44, align 4, !tbaa !9
  %3946 = and i32 %3945, 31
  %3947 = ashr i32 %3944, %3946
  store i32 %3947, ptr %43, align 4, !tbaa !9
  %3948 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %3948, ptr %10, align 4, !tbaa !9
  %3949 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3949, ptr %44, align 4, !tbaa !9
  %3950 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3950, ptr %45, align 4, !tbaa !9
  %3951 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3951, ptr %46, align 4, !tbaa !9
  %3952 = load i32, ptr %45, align 4, !tbaa !9
  %3953 = load i32, ptr %46, align 4, !tbaa !9
  %3954 = icmp ugt i32 %3952, %3953
  %3955 = zext i1 %3954 to i32
  store i32 %3955, ptr %45, align 4, !tbaa !9
  %3956 = load i32, ptr %45, align 4, !tbaa !9
  %3957 = icmp ne i32 %3956, 0
  br i1 %3957, label %3958, label %3960

3958:                                             ; preds = %3937
  %3959 = load i32, ptr %43, align 4, !tbaa !9
  br label %3962

3960:                                             ; preds = %3937
  %3961 = load i32, ptr %44, align 4, !tbaa !9
  br label %3962

3962:                                             ; preds = %3960, %3958
  %3963 = phi i32 [ %3959, %3958 ], [ %3961, %3960 ]
  store i32 %3963, ptr %43, align 4, !tbaa !9
  %3964 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3964, ptr %44, align 4, !tbaa !9
  store i32 2147483644, ptr %45, align 4, !tbaa !9
  %3965 = load i32, ptr %44, align 4, !tbaa !9
  %3966 = load i32, ptr %45, align 4, !tbaa !9
  %3967 = icmp uge i32 %3965, %3966
  %3968 = zext i1 %3967 to i32
  store i32 %3968, ptr %44, align 4, !tbaa !9
  %3969 = load i32, ptr %44, align 4, !tbaa !9
  %3970 = icmp ne i32 %3969, 0
  br i1 %3970, label %3971, label %3973

3971:                                             ; preds = %3962
  %3972 = load i32, ptr %42, align 4, !tbaa !9
  br label %3975

3973:                                             ; preds = %3962
  %3974 = load i32, ptr %43, align 4, !tbaa !9
  br label %3975

3975:                                             ; preds = %3973, %3971
  %3976 = phi i32 [ %3972, %3971 ], [ %3974, %3973 ]
  store i32 %3976, ptr %42, align 4, !tbaa !9
  %3977 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %3977, ptr %19, align 4, !tbaa !9
  %3978 = load i32, ptr %42, align 4, !tbaa !9
  %3979 = icmp ne i32 %3978, 0
  br i1 %3979, label %3980, label %3998

3980:                                             ; preds = %3975
  %3981 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3981, ptr %42, align 4, !tbaa !9
  store i32 1073741824, ptr %43, align 4, !tbaa !9
  %3982 = load i32, ptr %42, align 4, !tbaa !9
  %3983 = load i32, ptr %43, align 4, !tbaa !9
  %3984 = icmp uge i32 %3982, %3983
  %3985 = zext i1 %3984 to i32
  store i32 %3985, ptr %42, align 4, !tbaa !9
  %3986 = load i32, ptr %42, align 4, !tbaa !9
  %3987 = icmp ne i32 %3986, 0
  br i1 %3987, label %3988, label %3989

3988:                                             ; preds = %3980
  br label %15476

3989:                                             ; preds = %3980
  %3990 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3990, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %3991 = load i32, ptr %43, align 4, !tbaa !9
  %3992 = and i32 %3991, 31
  %3993 = load i32, ptr %42, align 4, !tbaa !9
  %3994 = shl i32 %3993, %3992
  store i32 %3994, ptr %42, align 4, !tbaa !9
  %3995 = load ptr, ptr %6, align 8, !tbaa !5
  %3996 = load i32, ptr %42, align 4, !tbaa !9
  %3997 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %3995, i32 noundef %3996)
  store i32 %3997, ptr %42, align 4, !tbaa !9
  br label %3999

3998:                                             ; preds = %3975
  store i32 0, ptr %42, align 4, !tbaa !9
  br label %3999

3999:                                             ; preds = %3998, %3989
  %4000 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4000, ptr %10, align 4, !tbaa !9
  %4001 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4001, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %4002 = load i32, ptr %44, align 4, !tbaa !9
  %4003 = and i32 %4002, 31
  %4004 = load i32, ptr %43, align 4, !tbaa !9
  %4005 = shl i32 %4004, %4003
  store i32 %4005, ptr %43, align 4, !tbaa !9
  %4006 = load i32, ptr %43, align 4, !tbaa !9
  %4007 = load i32, ptr %42, align 4, !tbaa !9
  %4008 = add i32 %4007, %4006
  store i32 %4008, ptr %42, align 4, !tbaa !9
  %4009 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4009, ptr %11, align 4, !tbaa !9
  %4010 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4010, ptr %43, align 4, !tbaa !9
  %4011 = load ptr, ptr %6, align 8, !tbaa !5
  %4012 = getelementptr inbounds %struct.w2c_hermes, ptr %4011, i32 0, i32 6
  %4013 = load i32, ptr %42, align 4, !tbaa !9
  %4014 = zext i32 %4013 to i64
  %4015 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4012, i64 noundef %4014, i32 noundef %4015)
  %4016 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4016, ptr %42, align 4, !tbaa !9
  %4017 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4017, ptr %43, align 4, !tbaa !9
  %4018 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4018, ptr %44, align 4, !tbaa !9
  %4019 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %4019, ptr %45, align 4, !tbaa !9
  %4020 = load ptr, ptr %6, align 8, !tbaa !5
  %4021 = load i32, ptr %43, align 4, !tbaa !9
  %4022 = load i32, ptr %44, align 4, !tbaa !9
  %4023 = load i32, ptr %45, align 4, !tbaa !9
  %4024 = call i32 @w2c_hermes_memmove(ptr noundef %4020, i32 noundef %4021, i32 noundef %4022, i32 noundef %4023)
  store i32 %4024, ptr %43, align 4, !tbaa !9
  %4025 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %4025, ptr %10, align 4, !tbaa !9
  %4026 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4026, ptr %44, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %4027 = load i32, ptr %45, align 4, !tbaa !9
  %4028 = and i32 %4027, 31
  %4029 = load i32, ptr %44, align 4, !tbaa !9
  %4030 = shl i32 %4029, %4028
  store i32 %4030, ptr %44, align 4, !tbaa !9
  %4031 = load i32, ptr %44, align 4, !tbaa !9
  %4032 = load i32, ptr %43, align 4, !tbaa !9
  %4033 = add i32 %4032, %4031
  store i32 %4033, ptr %43, align 4, !tbaa !9
  %4034 = load ptr, ptr %6, align 8, !tbaa !5
  %4035 = getelementptr inbounds %struct.w2c_hermes, ptr %4034, i32 0, i32 6
  %4036 = load i32, ptr %42, align 4, !tbaa !9
  %4037 = zext i32 %4036 to i64
  %4038 = add i64 %4037, 20
  %4039 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4035, i64 noundef %4038, i32 noundef %4039)
  %4040 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4040, ptr %42, align 4, !tbaa !9
  %4041 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4041, ptr %43, align 4, !tbaa !9
  store i32 4, ptr %44, align 4, !tbaa !9
  %4042 = load i32, ptr %44, align 4, !tbaa !9
  %4043 = load i32, ptr %43, align 4, !tbaa !9
  %4044 = add i32 %4043, %4042
  store i32 %4044, ptr %43, align 4, !tbaa !9
  %4045 = load ptr, ptr %6, align 8, !tbaa !5
  %4046 = getelementptr inbounds %struct.w2c_hermes, ptr %4045, i32 0, i32 6
  %4047 = load i32, ptr %42, align 4, !tbaa !9
  %4048 = zext i32 %4047 to i64
  %4049 = add i64 %4048, 16
  %4050 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4046, i64 noundef %4049, i32 noundef %4050)
  %4051 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4051, ptr %42, align 4, !tbaa !9
  %4052 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4052, ptr %43, align 4, !tbaa !9
  %4053 = load ptr, ptr %6, align 8, !tbaa !5
  %4054 = getelementptr inbounds %struct.w2c_hermes, ptr %4053, i32 0, i32 6
  %4055 = load i32, ptr %42, align 4, !tbaa !9
  %4056 = zext i32 %4055 to i64
  %4057 = add i64 %4056, 12
  %4058 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4054, i64 noundef %4057, i32 noundef %4058)
  %4059 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4059, ptr %42, align 4, !tbaa !9
  %4060 = load i32, ptr %42, align 4, !tbaa !9
  %4061 = icmp ne i32 %4060, 0
  %4062 = xor i1 %4061, true
  %4063 = zext i1 %4062 to i32
  store i32 %4063, ptr %42, align 4, !tbaa !9
  %4064 = load i32, ptr %42, align 4, !tbaa !9
  %4065 = icmp ne i32 %4064, 0
  br i1 %4065, label %4066, label %4067

4066:                                             ; preds = %3999
  br label %4071

4067:                                             ; preds = %3999
  %4068 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4068, ptr %42, align 4, !tbaa !9
  %4069 = load ptr, ptr %6, align 8, !tbaa !5
  %4070 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %4069, i32 noundef %4070)
  br label %4071

4071:                                             ; preds = %4067, %4066, %3888
  %4072 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4072, ptr %42, align 4, !tbaa !9
  %4073 = load i32, ptr %42, align 4, !tbaa !9
  %4074 = icmp ne i32 %4073, 0
  br i1 %4074, label %4075, label %4076

4075:                                             ; preds = %4071
  br label %1977

4076:                                             ; preds = %4071
  br label %4077

4077:                                             ; preds = %4076, %2190, %1964, %1955
  %4078 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %4078, ptr %42, align 4, !tbaa !9
  %4079 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4079, ptr %43, align 4, !tbaa !9
  store i32 52, ptr %44, align 4, !tbaa !9
  %4080 = load i32, ptr %44, align 4, !tbaa !9
  %4081 = load i32, ptr %43, align 4, !tbaa !9
  %4082 = add i32 %4081, %4080
  store i32 %4082, ptr %43, align 4, !tbaa !9
  %4083 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %4083, ptr %18, align 4, !tbaa !9
  %4084 = load i32, ptr %42, align 4, !tbaa !9
  %4085 = load i32, ptr %43, align 4, !tbaa !9
  %4086 = icmp ne i32 %4084, %4085
  %4087 = zext i1 %4086 to i32
  store i32 %4087, ptr %42, align 4, !tbaa !9
  %4088 = load i32, ptr %42, align 4, !tbaa !9
  %4089 = icmp ne i32 %4088, 0
  br i1 %4089, label %4090, label %4091

4090:                                             ; preds = %4077
  br label %1940

4091:                                             ; preds = %4077
  br label %4093

4092:                                             ; preds = %3936
  br label %15476

4093:                                             ; preds = %4091
  %4094 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4094, ptr %42, align 4, !tbaa !9
  %4095 = load i32, ptr %42, align 4, !tbaa !9
  %4096 = icmp ne i32 %4095, 0
  %4097 = xor i1 %4096, true
  %4098 = zext i1 %4097 to i32
  store i32 %4098, ptr %42, align 4, !tbaa !9
  %4099 = load i32, ptr %42, align 4, !tbaa !9
  %4100 = icmp ne i32 %4099, 0
  br i1 %4100, label %4101, label %4104

4101:                                             ; preds = %4093
  store i32 0, ptr %42, align 4, !tbaa !9
  %4102 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4102, ptr %15, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %4103 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4103, ptr %23, align 4, !tbaa !9
  br label %4790

4104:                                             ; preds = %4093
  %4105 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4105, ptr %42, align 4, !tbaa !9
  store i32 214748365, ptr %43, align 4, !tbaa !9
  %4106 = load i32, ptr %42, align 4, !tbaa !9
  %4107 = load i32, ptr %43, align 4, !tbaa !9
  %4108 = icmp uge i32 %4106, %4107
  %4109 = zext i1 %4108 to i32
  store i32 %4109, ptr %42, align 4, !tbaa !9
  %4110 = load i32, ptr %42, align 4, !tbaa !9
  %4111 = icmp ne i32 %4110, 0
  br i1 %4111, label %4112, label %4113

4112:                                             ; preds = %4104
  br label %15476

4113:                                             ; preds = %4104
  %4114 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4114, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %4115 = load i32, ptr %43, align 4, !tbaa !9
  %4116 = load i32, ptr %42, align 4, !tbaa !9
  %4117 = mul i32 %4116, %4115
  store i32 %4117, ptr %42, align 4, !tbaa !9
  %4118 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4118, ptr %10, align 4, !tbaa !9
  %4119 = load ptr, ptr %6, align 8, !tbaa !5
  %4120 = load i32, ptr %42, align 4, !tbaa !9
  %4121 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %4119, i32 noundef %4120)
  store i32 %4121, ptr %42, align 4, !tbaa !9
  %4122 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4122, ptr %15, align 4, !tbaa !9
  %4123 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %4123, ptr %42, align 4, !tbaa !9
  %4124 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4124, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %4125 = load i32, ptr %44, align 4, !tbaa !9
  %4126 = load i32, ptr %43, align 4, !tbaa !9
  %4127 = mul i32 %4126, %4125
  store i32 %4127, ptr %43, align 4, !tbaa !9
  %4128 = load i32, ptr %43, align 4, !tbaa !9
  %4129 = load i32, ptr %42, align 4, !tbaa !9
  %4130 = add i32 %4129, %4128
  store i32 %4130, ptr %42, align 4, !tbaa !9
  %4131 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4131, ptr %16, align 4, !tbaa !9
  %4132 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %4132, ptr %42, align 4, !tbaa !9
  %4133 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4133, ptr %13, align 4, !tbaa !9
  %4134 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4134, ptr %42, align 4, !tbaa !9
  %4135 = load i32, ptr %42, align 4, !tbaa !9
  %4136 = icmp ne i32 %4135, 0
  %4137 = xor i1 %4136, true
  %4138 = zext i1 %4137 to i32
  store i32 %4138, ptr %42, align 4, !tbaa !9
  %4139 = load i32, ptr %42, align 4, !tbaa !9
  %4140 = icmp ne i32 %4139, 0
  br i1 %4140, label %4141, label %4142

4141:                                             ; preds = %4113
  br label %4185

4142:                                             ; preds = %4113
  br label %4143

4143:                                             ; preds = %4181, %4142
  %4144 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4144, ptr %42, align 4, !tbaa !9
  %4145 = load ptr, ptr %6, align 8, !tbaa !5
  %4146 = getelementptr inbounds %struct.w2c_hermes, ptr %4145, i32 0, i32 6
  %4147 = load i32, ptr %42, align 4, !tbaa !9
  %4148 = zext i32 %4147 to i64
  %4149 = add i64 %4148, 8
  %4150 = call i32 @i32_load(ptr noundef %4146, i64 noundef %4149)
  store i32 %4150, ptr %42, align 4, !tbaa !9
  %4151 = load i32, ptr %42, align 4, !tbaa !9
  %4152 = icmp ne i32 %4151, 0
  br i1 %4152, label %4153, label %4154

4153:                                             ; preds = %4143
  br label %4185

4154:                                             ; preds = %4143
  %4155 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4155, ptr %42, align 4, !tbaa !9
  %4156 = load ptr, ptr %6, align 8, !tbaa !5
  %4157 = getelementptr inbounds %struct.w2c_hermes, ptr %4156, i32 0, i32 6
  %4158 = load i32, ptr %42, align 4, !tbaa !9
  %4159 = zext i32 %4158 to i64
  %4160 = call i64 @i64_load(ptr noundef %4157, i64 noundef %4159)
  store i64 %4160, ptr %48, align 8, !tbaa !11
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %4161 = load i64, ptr %48, align 8, !tbaa !11
  %4162 = load i64, ptr %49, align 8, !tbaa !11
  %4163 = icmp ugt i64 %4161, %4162
  %4164 = zext i1 %4163 to i32
  store i32 %4164, ptr %42, align 4, !tbaa !9
  %4165 = load i32, ptr %42, align 4, !tbaa !9
  %4166 = icmp ne i32 %4165, 0
  br i1 %4166, label %4167, label %4168

4167:                                             ; preds = %4154
  br label %4185

4168:                                             ; preds = %4154
  %4169 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4169, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %4170 = load i32, ptr %43, align 4, !tbaa !9
  %4171 = load i32, ptr %42, align 4, !tbaa !9
  %4172 = add i32 %4171, %4170
  store i32 %4172, ptr %42, align 4, !tbaa !9
  %4173 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4173, ptr %13, align 4, !tbaa !9
  %4174 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %4174, ptr %43, align 4, !tbaa !9
  %4175 = load i32, ptr %42, align 4, !tbaa !9
  %4176 = load i32, ptr %43, align 4, !tbaa !9
  %4177 = icmp ne i32 %4175, %4176
  %4178 = zext i1 %4177 to i32
  store i32 %4178, ptr %42, align 4, !tbaa !9
  %4179 = load i32, ptr %42, align 4, !tbaa !9
  %4180 = icmp ne i32 %4179, 0
  br i1 %4180, label %4181, label %4182

4181:                                             ; preds = %4168
  br label %4143

4182:                                             ; preds = %4168
  %4183 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4183, ptr %42, align 4, !tbaa !9
  %4184 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4184, ptr %23, align 4, !tbaa !9
  br label %4738

4185:                                             ; preds = %4167, %4153, %4141
  %4186 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4186, ptr %42, align 4, !tbaa !9
  %4187 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %4187, ptr %43, align 4, !tbaa !9
  %4188 = load i32, ptr %42, align 4, !tbaa !9
  %4189 = load i32, ptr %43, align 4, !tbaa !9
  %4190 = icmp eq i32 %4188, %4189
  %4191 = zext i1 %4190 to i32
  store i32 %4191, ptr %42, align 4, !tbaa !9
  %4192 = load i32, ptr %42, align 4, !tbaa !9
  %4193 = icmp ne i32 %4192, 0
  br i1 %4193, label %4194, label %4197

4194:                                             ; preds = %4185
  %4195 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4195, ptr %42, align 4, !tbaa !9
  %4196 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4196, ptr %23, align 4, !tbaa !9
  br label %4738

4197:                                             ; preds = %4185
  %4198 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4198, ptr %42, align 4, !tbaa !9
  %4199 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4199, ptr %43, align 4, !tbaa !9
  %4200 = load i32, ptr %43, align 4, !tbaa !9
  %4201 = load i32, ptr %42, align 4, !tbaa !9
  %4202 = add i32 %4201, %4200
  store i32 %4202, ptr %42, align 4, !tbaa !9
  %4203 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4203, ptr %18, align 4, !tbaa !9
  %4204 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4204, ptr %42, align 4, !tbaa !9
  %4205 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4205, ptr %12, align 4, !tbaa !9
  br label %4206

4206:                                             ; preds = %4730, %4690, %4675, %4197
  %4207 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4207, ptr %42, align 4, !tbaa !9
  %4208 = load ptr, ptr %6, align 8, !tbaa !5
  %4209 = getelementptr inbounds %struct.w2c_hermes, ptr %4208, i32 0, i32 6
  %4210 = load i32, ptr %42, align 4, !tbaa !9
  %4211 = zext i32 %4210 to i64
  %4212 = add i64 %4211, 20
  %4213 = call i32 @i32_load(ptr noundef %4209, i64 noundef %4212)
  store i32 %4213, ptr %42, align 4, !tbaa !9
  %4214 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4214, ptr %25, align 4, !tbaa !9
  %4215 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4215, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %4216 = load ptr, ptr %6, align 8, !tbaa !5
  %4217 = getelementptr inbounds %struct.w2c_hermes, ptr %4216, i32 0, i32 6
  %4218 = load i32, ptr %42, align 4, !tbaa !9
  %4219 = zext i32 %4218 to i64
  %4220 = add i64 %4219, 20
  %4221 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4217, i64 noundef %4220, i32 noundef %4221)
  %4222 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4222, ptr %42, align 4, !tbaa !9
  %4223 = load ptr, ptr %6, align 8, !tbaa !5
  %4224 = getelementptr inbounds %struct.w2c_hermes, ptr %4223, i32 0, i32 6
  %4225 = load i32, ptr %42, align 4, !tbaa !9
  %4226 = zext i32 %4225 to i64
  %4227 = add i64 %4226, 16
  %4228 = call i32 @i32_load(ptr noundef %4224, i64 noundef %4227)
  store i32 %4228, ptr %42, align 4, !tbaa !9
  %4229 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4229, ptr %21, align 4, !tbaa !9
  %4230 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4230, ptr %42, align 4, !tbaa !9
  %4231 = load ptr, ptr %6, align 8, !tbaa !5
  %4232 = getelementptr inbounds %struct.w2c_hermes, ptr %4231, i32 0, i32 6
  %4233 = load i32, ptr %42, align 4, !tbaa !9
  %4234 = zext i32 %4233 to i64
  %4235 = add i64 %4234, 12
  %4236 = call i32 @i32_load(ptr noundef %4232, i64 noundef %4235)
  store i32 %4236, ptr %42, align 4, !tbaa !9
  %4237 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4237, ptr %17, align 4, !tbaa !9
  %4238 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4238, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %4239 = load ptr, ptr %6, align 8, !tbaa !5
  %4240 = getelementptr inbounds %struct.w2c_hermes, ptr %4239, i32 0, i32 6
  %4241 = load i32, ptr %42, align 4, !tbaa !9
  %4242 = zext i32 %4241 to i64
  %4243 = add i64 %4242, 12
  %4244 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4240, i64 noundef %4243, i64 noundef %4244)
  %4245 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4245, ptr %42, align 4, !tbaa !9
  %4246 = load ptr, ptr %6, align 8, !tbaa !5
  %4247 = getelementptr inbounds %struct.w2c_hermes, ptr %4246, i32 0, i32 6
  %4248 = load i32, ptr %42, align 4, !tbaa !9
  %4249 = zext i32 %4248 to i64
  %4250 = call i64 @i64_load(ptr noundef %4247, i64 noundef %4249)
  store i64 %4250, ptr %48, align 8, !tbaa !11
  %4251 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %4251, ptr %39, align 8, !tbaa !11
  %4252 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4252, ptr %42, align 4, !tbaa !9
  %4253 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4253, ptr %43, align 4, !tbaa !9
  %4254 = load i32, ptr %42, align 4, !tbaa !9
  %4255 = load i32, ptr %43, align 4, !tbaa !9
  %4256 = icmp ult i32 %4254, %4255
  %4257 = zext i1 %4256 to i32
  store i32 %4257, ptr %42, align 4, !tbaa !9
  %4258 = load i32, ptr %42, align 4, !tbaa !9
  %4259 = icmp ne i32 %4258, 0
  br i1 %4259, label %4260, label %4299

4260:                                             ; preds = %4206
  %4261 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4261, ptr %42, align 4, !tbaa !9
  %4262 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4262, ptr %43, align 4, !tbaa !9
  %4263 = load ptr, ptr %6, align 8, !tbaa !5
  %4264 = getelementptr inbounds %struct.w2c_hermes, ptr %4263, i32 0, i32 6
  %4265 = load i32, ptr %42, align 4, !tbaa !9
  %4266 = zext i32 %4265 to i64
  %4267 = add i64 %4266, 8
  %4268 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4264, i64 noundef %4267, i32 noundef %4268)
  %4269 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4269, ptr %42, align 4, !tbaa !9
  %4270 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %4270, ptr %49, align 8, !tbaa !11
  %4271 = load ptr, ptr %6, align 8, !tbaa !5
  %4272 = getelementptr inbounds %struct.w2c_hermes, ptr %4271, i32 0, i32 6
  %4273 = load i32, ptr %42, align 4, !tbaa !9
  %4274 = zext i32 %4273 to i64
  %4275 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4272, i64 noundef %4274, i64 noundef %4275)
  %4276 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4276, ptr %42, align 4, !tbaa !9
  %4277 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %4277, ptr %43, align 4, !tbaa !9
  %4278 = load ptr, ptr %6, align 8, !tbaa !5
  %4279 = getelementptr inbounds %struct.w2c_hermes, ptr %4278, i32 0, i32 6
  %4280 = load i32, ptr %42, align 4, !tbaa !9
  %4281 = zext i32 %4280 to i64
  %4282 = add i64 %4281, 16
  %4283 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4279, i64 noundef %4282, i32 noundef %4283)
  %4284 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4284, ptr %42, align 4, !tbaa !9
  %4285 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4285, ptr %43, align 4, !tbaa !9
  %4286 = load ptr, ptr %6, align 8, !tbaa !5
  %4287 = getelementptr inbounds %struct.w2c_hermes, ptr %4286, i32 0, i32 6
  %4288 = load i32, ptr %42, align 4, !tbaa !9
  %4289 = zext i32 %4288 to i64
  %4290 = add i64 %4289, 12
  %4291 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4287, i64 noundef %4290, i32 noundef %4291)
  %4292 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4292, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %4293 = load i32, ptr %43, align 4, !tbaa !9
  %4294 = load i32, ptr %42, align 4, !tbaa !9
  %4295 = add i32 %4294, %4293
  store i32 %4295, ptr %42, align 4, !tbaa !9
  %4296 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4296, ptr %23, align 4, !tbaa !9
  %4297 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4297, ptr %42, align 4, !tbaa !9
  %4298 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4298, ptr %11, align 4, !tbaa !9
  br label %4643

4299:                                             ; preds = %4206
  %4300 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4300, ptr %42, align 4, !tbaa !9
  %4301 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4301, ptr %43, align 4, !tbaa !9
  %4302 = load i32, ptr %43, align 4, !tbaa !9
  %4303 = load i32, ptr %42, align 4, !tbaa !9
  %4304 = sub i32 %4303, %4302
  store i32 %4304, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %4305 = load i32, ptr %43, align 4, !tbaa !9
  %4306 = icmp eq i32 %4305, 0
  %4307 = xor i1 %4306, true
  %4308 = xor i1 %4307, true
  %4309 = zext i1 %4308 to i32
  %4310 = sext i32 %4309 to i64
  %4311 = call i64 @llvm.expect.i64(i64 %4310, i64 0)
  %4312 = icmp ne i64 %4311, 0
  br i1 %4312, label %4313, label %4315

4313:                                             ; preds = %4299
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

4314:                                             ; No predecessors!
  br label %4337

4315:                                             ; preds = %4299
  %4316 = load i32, ptr %42, align 4, !tbaa !9
  %4317 = icmp eq i32 %4316, -2147483648
  br i1 %4317, label %4318, label %4321

4318:                                             ; preds = %4315
  %4319 = load i32, ptr %43, align 4, !tbaa !9
  %4320 = icmp eq i32 %4319, -1
  br label %4321

4321:                                             ; preds = %4318, %4315
  %4322 = phi i1 [ false, %4315 ], [ %4320, %4318 ]
  %4323 = xor i1 %4322, true
  %4324 = xor i1 %4323, true
  %4325 = zext i1 %4324 to i32
  %4326 = sext i32 %4325 to i64
  %4327 = call i64 @llvm.expect.i64(i64 %4326, i64 0)
  %4328 = icmp ne i64 %4327, 0
  br i1 %4328, label %4329, label %4331

4329:                                             ; preds = %4321
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

4330:                                             ; No predecessors!
  br label %4335

4331:                                             ; preds = %4321
  %4332 = load i32, ptr %42, align 4, !tbaa !9
  %4333 = load i32, ptr %43, align 4, !tbaa !9
  %4334 = sdiv i32 %4332, %4333
  br label %4335

4335:                                             ; preds = %4331, %4330
  %4336 = phi i32 [ 0, %4330 ], [ %4334, %4331 ]
  br label %4337

4337:                                             ; preds = %4335, %4314
  %4338 = phi i32 [ 0, %4314 ], [ %4336, %4335 ]
  store i32 %4338, ptr %42, align 4, !tbaa !9
  %4339 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4339, ptr %19, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %4340 = load i32, ptr %43, align 4, !tbaa !9
  %4341 = load i32, ptr %42, align 4, !tbaa !9
  %4342 = add i32 %4341, %4340
  store i32 %4342, ptr %42, align 4, !tbaa !9
  %4343 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4343, ptr %23, align 4, !tbaa !9
  store i32 214748365, ptr %43, align 4, !tbaa !9
  %4344 = load i32, ptr %42, align 4, !tbaa !9
  %4345 = load i32, ptr %43, align 4, !tbaa !9
  %4346 = icmp uge i32 %4344, %4345
  %4347 = zext i1 %4346 to i32
  store i32 %4347, ptr %42, align 4, !tbaa !9
  %4348 = load i32, ptr %42, align 4, !tbaa !9
  %4349 = icmp ne i32 %4348, 0
  br i1 %4349, label %4350, label %4351

4350:                                             ; preds = %4337
  br label %15476

4351:                                             ; preds = %4337
  store i32 214748364, ptr %42, align 4, !tbaa !9
  %4352 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4352, ptr %43, align 4, !tbaa !9
  %4353 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4353, ptr %44, align 4, !tbaa !9
  %4354 = load i32, ptr %44, align 4, !tbaa !9
  %4355 = load i32, ptr %43, align 4, !tbaa !9
  %4356 = sub i32 %4355, %4354
  store i32 %4356, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %4357 = load i32, ptr %44, align 4, !tbaa !9
  %4358 = icmp eq i32 %4357, 0
  %4359 = xor i1 %4358, true
  %4360 = xor i1 %4359, true
  %4361 = zext i1 %4360 to i32
  %4362 = sext i32 %4361 to i64
  %4363 = call i64 @llvm.expect.i64(i64 %4362, i64 0)
  %4364 = icmp ne i64 %4363, 0
  br i1 %4364, label %4365, label %4367

4365:                                             ; preds = %4351
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

4366:                                             ; No predecessors!
  br label %4389

4367:                                             ; preds = %4351
  %4368 = load i32, ptr %43, align 4, !tbaa !9
  %4369 = icmp eq i32 %4368, -2147483648
  br i1 %4369, label %4370, label %4373

4370:                                             ; preds = %4367
  %4371 = load i32, ptr %44, align 4, !tbaa !9
  %4372 = icmp eq i32 %4371, -1
  br label %4373

4373:                                             ; preds = %4370, %4367
  %4374 = phi i1 [ false, %4367 ], [ %4372, %4370 ]
  %4375 = xor i1 %4374, true
  %4376 = xor i1 %4375, true
  %4377 = zext i1 %4376 to i32
  %4378 = sext i32 %4377 to i64
  %4379 = call i64 @llvm.expect.i64(i64 %4378, i64 0)
  %4380 = icmp ne i64 %4379, 0
  br i1 %4380, label %4381, label %4383

4381:                                             ; preds = %4373
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

4382:                                             ; No predecessors!
  br label %4387

4383:                                             ; preds = %4373
  %4384 = load i32, ptr %43, align 4, !tbaa !9
  %4385 = load i32, ptr %44, align 4, !tbaa !9
  %4386 = sdiv i32 %4384, %4385
  br label %4387

4387:                                             ; preds = %4383, %4382
  %4388 = phi i32 [ 0, %4382 ], [ %4386, %4383 ]
  br label %4389

4389:                                             ; preds = %4387, %4366
  %4390 = phi i32 [ 0, %4366 ], [ %4388, %4387 ]
  store i32 %4390, ptr %43, align 4, !tbaa !9
  %4391 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %4391, ptr %11, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %4392 = load i32, ptr %44, align 4, !tbaa !9
  %4393 = and i32 %4392, 31
  %4394 = load i32, ptr %43, align 4, !tbaa !9
  %4395 = shl i32 %4394, %4393
  store i32 %4395, ptr %43, align 4, !tbaa !9
  %4396 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %4396, ptr %10, align 4, !tbaa !9
  %4397 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %4397, ptr %44, align 4, !tbaa !9
  %4398 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4398, ptr %45, align 4, !tbaa !9
  %4399 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %4399, ptr %46, align 4, !tbaa !9
  %4400 = load i32, ptr %45, align 4, !tbaa !9
  %4401 = load i32, ptr %46, align 4, !tbaa !9
  %4402 = icmp ugt i32 %4400, %4401
  %4403 = zext i1 %4402 to i32
  store i32 %4403, ptr %45, align 4, !tbaa !9
  %4404 = load i32, ptr %45, align 4, !tbaa !9
  %4405 = icmp ne i32 %4404, 0
  br i1 %4405, label %4406, label %4408

4406:                                             ; preds = %4389
  %4407 = load i32, ptr %43, align 4, !tbaa !9
  br label %4410

4408:                                             ; preds = %4389
  %4409 = load i32, ptr %44, align 4, !tbaa !9
  br label %4410

4410:                                             ; preds = %4408, %4406
  %4411 = phi i32 [ %4407, %4406 ], [ %4409, %4408 ]
  store i32 %4411, ptr %43, align 4, !tbaa !9
  %4412 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4412, ptr %44, align 4, !tbaa !9
  store i32 107374182, ptr %45, align 4, !tbaa !9
  %4413 = load i32, ptr %44, align 4, !tbaa !9
  %4414 = load i32, ptr %45, align 4, !tbaa !9
  %4415 = icmp uge i32 %4413, %4414
  %4416 = zext i1 %4415 to i32
  store i32 %4416, ptr %44, align 4, !tbaa !9
  %4417 = load i32, ptr %44, align 4, !tbaa !9
  %4418 = icmp ne i32 %4417, 0
  br i1 %4418, label %4419, label %4421

4419:                                             ; preds = %4410
  %4420 = load i32, ptr %42, align 4, !tbaa !9
  br label %4423

4421:                                             ; preds = %4410
  %4422 = load i32, ptr %43, align 4, !tbaa !9
  br label %4423

4423:                                             ; preds = %4421, %4419
  %4424 = phi i32 [ %4420, %4419 ], [ %4422, %4421 ]
  store i32 %4424, ptr %42, align 4, !tbaa !9
  %4425 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4425, ptr %10, align 4, !tbaa !9
  store i32 214748365, ptr %43, align 4, !tbaa !9
  %4426 = load i32, ptr %42, align 4, !tbaa !9
  %4427 = load i32, ptr %43, align 4, !tbaa !9
  %4428 = icmp uge i32 %4426, %4427
  %4429 = zext i1 %4428 to i32
  store i32 %4429, ptr %42, align 4, !tbaa !9
  %4430 = load i32, ptr %42, align 4, !tbaa !9
  %4431 = icmp ne i32 %4430, 0
  br i1 %4431, label %4432, label %4433

4432:                                             ; preds = %4423
  br label %15476

4433:                                             ; preds = %4423
  %4434 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4434, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %4435 = load i32, ptr %43, align 4, !tbaa !9
  %4436 = load i32, ptr %42, align 4, !tbaa !9
  %4437 = mul i32 %4436, %4435
  store i32 %4437, ptr %42, align 4, !tbaa !9
  %4438 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4438, ptr %23, align 4, !tbaa !9
  %4439 = load ptr, ptr %6, align 8, !tbaa !5
  %4440 = load i32, ptr %42, align 4, !tbaa !9
  %4441 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %4439, i32 noundef %4440)
  store i32 %4441, ptr %42, align 4, !tbaa !9
  %4442 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4442, ptr %10, align 4, !tbaa !9
  %4443 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4443, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %4444 = load i32, ptr %44, align 4, !tbaa !9
  %4445 = load i32, ptr %43, align 4, !tbaa !9
  %4446 = mul i32 %4445, %4444
  store i32 %4446, ptr %43, align 4, !tbaa !9
  %4447 = load i32, ptr %43, align 4, !tbaa !9
  %4448 = load i32, ptr %42, align 4, !tbaa !9
  %4449 = add i32 %4448, %4447
  store i32 %4449, ptr %42, align 4, !tbaa !9
  %4450 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4450, ptr %11, align 4, !tbaa !9
  %4451 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4451, ptr %43, align 4, !tbaa !9
  %4452 = load ptr, ptr %6, align 8, !tbaa !5
  %4453 = getelementptr inbounds %struct.w2c_hermes, ptr %4452, i32 0, i32 6
  %4454 = load i32, ptr %42, align 4, !tbaa !9
  %4455 = zext i32 %4454 to i64
  %4456 = add i64 %4455, 8
  %4457 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4453, i64 noundef %4456, i32 noundef %4457)
  %4458 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4458, ptr %42, align 4, !tbaa !9
  %4459 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %4459, ptr %49, align 8, !tbaa !11
  %4460 = load ptr, ptr %6, align 8, !tbaa !5
  %4461 = getelementptr inbounds %struct.w2c_hermes, ptr %4460, i32 0, i32 6
  %4462 = load i32, ptr %42, align 4, !tbaa !9
  %4463 = zext i32 %4462 to i64
  %4464 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4461, i64 noundef %4463, i64 noundef %4464)
  %4465 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4465, ptr %42, align 4, !tbaa !9
  %4466 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %4466, ptr %43, align 4, !tbaa !9
  %4467 = load ptr, ptr %6, align 8, !tbaa !5
  %4468 = getelementptr inbounds %struct.w2c_hermes, ptr %4467, i32 0, i32 6
  %4469 = load i32, ptr %42, align 4, !tbaa !9
  %4470 = zext i32 %4469 to i64
  %4471 = add i64 %4470, 16
  %4472 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4468, i64 noundef %4471, i32 noundef %4472)
  %4473 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4473, ptr %42, align 4, !tbaa !9
  %4474 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4474, ptr %43, align 4, !tbaa !9
  %4475 = load ptr, ptr %6, align 8, !tbaa !5
  %4476 = getelementptr inbounds %struct.w2c_hermes, ptr %4475, i32 0, i32 6
  %4477 = load i32, ptr %42, align 4, !tbaa !9
  %4478 = zext i32 %4477 to i64
  %4479 = add i64 %4478, 12
  %4480 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4476, i64 noundef %4479, i32 noundef %4480)
  %4481 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4481, ptr %42, align 4, !tbaa !9
  %4482 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %4482, ptr %43, align 4, !tbaa !9
  %4483 = load i32, ptr %43, align 4, !tbaa !9
  %4484 = load i32, ptr %42, align 4, !tbaa !9
  %4485 = add i32 %4484, %4483
  store i32 %4485, ptr %42, align 4, !tbaa !9
  %4486 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4486, ptr %18, align 4, !tbaa !9
  %4487 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4487, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %4488 = load i32, ptr %43, align 4, !tbaa !9
  %4489 = load i32, ptr %42, align 4, !tbaa !9
  %4490 = add i32 %4489, %4488
  store i32 %4490, ptr %42, align 4, !tbaa !9
  %4491 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4491, ptr %23, align 4, !tbaa !9
  %4492 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4492, ptr %42, align 4, !tbaa !9
  %4493 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4493, ptr %10, align 4, !tbaa !9
  %4494 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4494, ptr %43, align 4, !tbaa !9
  %4495 = load i32, ptr %42, align 4, !tbaa !9
  %4496 = load i32, ptr %43, align 4, !tbaa !9
  %4497 = icmp ne i32 %4495, %4496
  %4498 = zext i1 %4497 to i32
  store i32 %4498, ptr %42, align 4, !tbaa !9
  %4499 = load i32, ptr %42, align 4, !tbaa !9
  %4500 = icmp ne i32 %4499, 0
  br i1 %4500, label %4501, label %4639

4501:                                             ; preds = %4433
  br label %4502

4502:                                             ; preds = %4587, %4501
  %4503 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4503, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %4504 = load i32, ptr %43, align 4, !tbaa !9
  %4505 = load i32, ptr %42, align 4, !tbaa !9
  %4506 = sub i32 %4505, %4504
  store i32 %4506, ptr %42, align 4, !tbaa !9
  %4507 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4507, ptr %11, align 4, !tbaa !9
  %4508 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4508, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %4509 = load i32, ptr %44, align 4, !tbaa !9
  %4510 = load i32, ptr %43, align 4, !tbaa !9
  %4511 = sub i32 %4510, %4509
  store i32 %4511, ptr %43, align 4, !tbaa !9
  %4512 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %4512, ptr %10, align 4, !tbaa !9
  %4513 = load ptr, ptr %6, align 8, !tbaa !5
  %4514 = getelementptr inbounds %struct.w2c_hermes, ptr %4513, i32 0, i32 6
  %4515 = load i32, ptr %43, align 4, !tbaa !9
  %4516 = zext i32 %4515 to i64
  %4517 = call i64 @i64_load(ptr noundef %4514, i64 noundef %4516)
  store i64 %4517, ptr %49, align 8, !tbaa !11
  %4518 = load ptr, ptr %6, align 8, !tbaa !5
  %4519 = getelementptr inbounds %struct.w2c_hermes, ptr %4518, i32 0, i32 6
  %4520 = load i32, ptr %42, align 4, !tbaa !9
  %4521 = zext i32 %4520 to i64
  %4522 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4519, i64 noundef %4521, i64 noundef %4522)
  %4523 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4523, ptr %42, align 4, !tbaa !9
  %4524 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4524, ptr %43, align 4, !tbaa !9
  %4525 = load ptr, ptr %6, align 8, !tbaa !5
  %4526 = getelementptr inbounds %struct.w2c_hermes, ptr %4525, i32 0, i32 6
  %4527 = load i32, ptr %43, align 4, !tbaa !9
  %4528 = zext i32 %4527 to i64
  %4529 = add i64 %4528, 8
  %4530 = call i32 @i32_load(ptr noundef %4526, i64 noundef %4529)
  store i32 %4530, ptr %43, align 4, !tbaa !9
  %4531 = load ptr, ptr %6, align 8, !tbaa !5
  %4532 = getelementptr inbounds %struct.w2c_hermes, ptr %4531, i32 0, i32 6
  %4533 = load i32, ptr %42, align 4, !tbaa !9
  %4534 = zext i32 %4533 to i64
  %4535 = add i64 %4534, 8
  %4536 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4532, i64 noundef %4535, i32 noundef %4536)
  %4537 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4537, ptr %42, align 4, !tbaa !9
  %4538 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4538, ptr %43, align 4, !tbaa !9
  %4539 = load ptr, ptr %6, align 8, !tbaa !5
  %4540 = getelementptr inbounds %struct.w2c_hermes, ptr %4539, i32 0, i32 6
  %4541 = load i32, ptr %43, align 4, !tbaa !9
  %4542 = zext i32 %4541 to i64
  %4543 = add i64 %4542, 12
  %4544 = call i32 @i32_load(ptr noundef %4540, i64 noundef %4543)
  store i32 %4544, ptr %43, align 4, !tbaa !9
  %4545 = load ptr, ptr %6, align 8, !tbaa !5
  %4546 = getelementptr inbounds %struct.w2c_hermes, ptr %4545, i32 0, i32 6
  %4547 = load i32, ptr %42, align 4, !tbaa !9
  %4548 = zext i32 %4547 to i64
  %4549 = add i64 %4548, 12
  %4550 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4546, i64 noundef %4549, i32 noundef %4550)
  %4551 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4551, ptr %42, align 4, !tbaa !9
  %4552 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4552, ptr %43, align 4, !tbaa !9
  %4553 = load ptr, ptr %6, align 8, !tbaa !5
  %4554 = getelementptr inbounds %struct.w2c_hermes, ptr %4553, i32 0, i32 6
  %4555 = load i32, ptr %43, align 4, !tbaa !9
  %4556 = zext i32 %4555 to i64
  %4557 = add i64 %4556, 16
  %4558 = call i32 @i32_load(ptr noundef %4554, i64 noundef %4557)
  store i32 %4558, ptr %43, align 4, !tbaa !9
  %4559 = load ptr, ptr %6, align 8, !tbaa !5
  %4560 = getelementptr inbounds %struct.w2c_hermes, ptr %4559, i32 0, i32 6
  %4561 = load i32, ptr %42, align 4, !tbaa !9
  %4562 = zext i32 %4561 to i64
  %4563 = add i64 %4562, 16
  %4564 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4560, i64 noundef %4563, i32 noundef %4564)
  %4565 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4565, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %4566 = load ptr, ptr %6, align 8, !tbaa !5
  %4567 = getelementptr inbounds %struct.w2c_hermes, ptr %4566, i32 0, i32 6
  %4568 = load i32, ptr %42, align 4, !tbaa !9
  %4569 = zext i32 %4568 to i64
  %4570 = add i64 %4569, 16
  %4571 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4567, i64 noundef %4570, i32 noundef %4571)
  %4572 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4572, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %4573 = load ptr, ptr %6, align 8, !tbaa !5
  %4574 = getelementptr inbounds %struct.w2c_hermes, ptr %4573, i32 0, i32 6
  %4575 = load i32, ptr %42, align 4, !tbaa !9
  %4576 = zext i32 %4575 to i64
  %4577 = add i64 %4576, 8
  %4578 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4574, i64 noundef %4577, i64 noundef %4578)
  %4579 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4579, ptr %42, align 4, !tbaa !9
  %4580 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4580, ptr %43, align 4, !tbaa !9
  %4581 = load i32, ptr %42, align 4, !tbaa !9
  %4582 = load i32, ptr %43, align 4, !tbaa !9
  %4583 = icmp ne i32 %4581, %4582
  %4584 = zext i1 %4583 to i32
  store i32 %4584, ptr %42, align 4, !tbaa !9
  %4585 = load i32, ptr %42, align 4, !tbaa !9
  %4586 = icmp ne i32 %4585, 0
  br i1 %4586, label %4587, label %4588

4587:                                             ; preds = %4502
  br label %4502

4588:                                             ; preds = %4502
  br label %4589

4589:                                             ; preds = %4628, %4588
  %4590 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4590, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %4591 = load i32, ptr %43, align 4, !tbaa !9
  %4592 = load i32, ptr %42, align 4, !tbaa !9
  %4593 = sub i32 %4592, %4591
  store i32 %4593, ptr %42, align 4, !tbaa !9
  %4594 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4594, ptr %10, align 4, !tbaa !9
  %4595 = load ptr, ptr %6, align 8, !tbaa !5
  %4596 = getelementptr inbounds %struct.w2c_hermes, ptr %4595, i32 0, i32 6
  %4597 = load i32, ptr %42, align 4, !tbaa !9
  %4598 = zext i32 %4597 to i64
  %4599 = add i64 %4598, 8
  %4600 = call i32 @i32_load(ptr noundef %4596, i64 noundef %4599)
  store i32 %4600, ptr %42, align 4, !tbaa !9
  %4601 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4601, ptr %19, align 4, !tbaa !9
  %4602 = load i32, ptr %42, align 4, !tbaa !9
  %4603 = icmp ne i32 %4602, 0
  br i1 %4603, label %4604, label %4618

4604:                                             ; preds = %4589
  %4605 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4605, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %4606 = load i32, ptr %43, align 4, !tbaa !9
  %4607 = load i32, ptr %42, align 4, !tbaa !9
  %4608 = sub i32 %4607, %4606
  store i32 %4608, ptr %42, align 4, !tbaa !9
  %4609 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4609, ptr %43, align 4, !tbaa !9
  %4610 = load ptr, ptr %6, align 8, !tbaa !5
  %4611 = getelementptr inbounds %struct.w2c_hermes, ptr %4610, i32 0, i32 6
  %4612 = load i32, ptr %42, align 4, !tbaa !9
  %4613 = zext i32 %4612 to i64
  %4614 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4611, i64 noundef %4613, i32 noundef %4614)
  %4615 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4615, ptr %42, align 4, !tbaa !9
  %4616 = load ptr, ptr %6, align 8, !tbaa !5
  %4617 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %4616, i32 noundef %4617)
  br label %4618

4618:                                             ; preds = %4604, %4589
  %4619 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4619, ptr %42, align 4, !tbaa !9
  %4620 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4620, ptr %12, align 4, !tbaa !9
  %4621 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4621, ptr %43, align 4, !tbaa !9
  %4622 = load i32, ptr %42, align 4, !tbaa !9
  %4623 = load i32, ptr %43, align 4, !tbaa !9
  %4624 = icmp ne i32 %4622, %4623
  %4625 = zext i1 %4624 to i32
  store i32 %4625, ptr %42, align 4, !tbaa !9
  %4626 = load i32, ptr %42, align 4, !tbaa !9
  %4627 = icmp ne i32 %4626, 0
  br i1 %4627, label %4628, label %4629

4628:                                             ; preds = %4618
  br label %4589

4629:                                             ; preds = %4618
  %4630 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4630, ptr %42, align 4, !tbaa !9
  %4631 = load i32, ptr %42, align 4, !tbaa !9
  %4632 = icmp ne i32 %4631, 0
  %4633 = xor i1 %4632, true
  %4634 = zext i1 %4633 to i32
  store i32 %4634, ptr %42, align 4, !tbaa !9
  %4635 = load i32, ptr %42, align 4, !tbaa !9
  %4636 = icmp ne i32 %4635, 0
  br i1 %4636, label %4637, label %4638

4637:                                             ; preds = %4629
  br label %4643

4638:                                             ; preds = %4629
  br label %4639

4639:                                             ; preds = %4638, %4433
  %4640 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4640, ptr %42, align 4, !tbaa !9
  %4641 = load ptr, ptr %6, align 8, !tbaa !5
  %4642 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %4641, i32 noundef %4642)
  br label %4643

4643:                                             ; preds = %4639, %4637, %4260
  %4644 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4644, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %4645 = load i32, ptr %43, align 4, !tbaa !9
  %4646 = load i32, ptr %42, align 4, !tbaa !9
  %4647 = add i32 %4646, %4645
  store i32 %4647, ptr %42, align 4, !tbaa !9
  %4648 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4648, ptr %10, align 4, !tbaa !9
  %4649 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %4649, ptr %43, align 4, !tbaa !9
  %4650 = load i32, ptr %42, align 4, !tbaa !9
  %4651 = load i32, ptr %43, align 4, !tbaa !9
  %4652 = icmp eq i32 %4650, %4651
  %4653 = zext i1 %4652 to i32
  store i32 %4653, ptr %42, align 4, !tbaa !9
  %4654 = load i32, ptr %42, align 4, !tbaa !9
  %4655 = icmp ne i32 %4654, 0
  br i1 %4655, label %4656, label %4657

4656:                                             ; preds = %4643
  br label %4735

4657:                                             ; preds = %4643
  %4658 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4658, ptr %42, align 4, !tbaa !9
  %4659 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4659, ptr %19, align 4, !tbaa !9
  %4660 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4660, ptr %42, align 4, !tbaa !9
  %4661 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4661, ptr %15, align 4, !tbaa !9
  %4662 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %4662, ptr %42, align 4, !tbaa !9
  %4663 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4663, ptr %12, align 4, !tbaa !9
  %4664 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4664, ptr %42, align 4, !tbaa !9
  %4665 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4665, ptr %13, align 4, !tbaa !9
  %4666 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4666, ptr %42, align 4, !tbaa !9
  %4667 = load ptr, ptr %6, align 8, !tbaa !5
  %4668 = getelementptr inbounds %struct.w2c_hermes, ptr %4667, i32 0, i32 6
  %4669 = load i32, ptr %42, align 4, !tbaa !9
  %4670 = zext i32 %4669 to i64
  %4671 = add i64 %4670, 32
  %4672 = call i32 @i32_load(ptr noundef %4668, i64 noundef %4671)
  store i32 %4672, ptr %42, align 4, !tbaa !9
  %4673 = load i32, ptr %42, align 4, !tbaa !9
  %4674 = icmp ne i32 %4673, 0
  br i1 %4674, label %4675, label %4676

4675:                                             ; preds = %4657
  br label %4206

4676:                                             ; preds = %4657
  br label %4677

4677:                                             ; preds = %4729, %4676
  %4678 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4678, ptr %42, align 4, !tbaa !9
  %4679 = load ptr, ptr %6, align 8, !tbaa !5
  %4680 = getelementptr inbounds %struct.w2c_hermes, ptr %4679, i32 0, i32 6
  %4681 = load i32, ptr %42, align 4, !tbaa !9
  %4682 = zext i32 %4681 to i64
  %4683 = call i64 @i64_load(ptr noundef %4680, i64 noundef %4682)
  store i64 %4683, ptr %48, align 8, !tbaa !11
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %4684 = load i64, ptr %48, align 8, !tbaa !11
  %4685 = load i64, ptr %49, align 8, !tbaa !11
  %4686 = icmp ugt i64 %4684, %4685
  %4687 = zext i1 %4686 to i32
  store i32 %4687, ptr %42, align 4, !tbaa !9
  %4688 = load i32, ptr %42, align 4, !tbaa !9
  %4689 = icmp ne i32 %4688, 0
  br i1 %4689, label %4690, label %4697

4690:                                             ; preds = %4677
  %4691 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4691, ptr %42, align 4, !tbaa !9
  %4692 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4692, ptr %15, align 4, !tbaa !9
  %4693 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %4693, ptr %42, align 4, !tbaa !9
  %4694 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4694, ptr %12, align 4, !tbaa !9
  %4695 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4695, ptr %42, align 4, !tbaa !9
  %4696 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4696, ptr %13, align 4, !tbaa !9
  br label %4206

4697:                                             ; preds = %4677
  %4698 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4698, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %4699 = load i32, ptr %43, align 4, !tbaa !9
  %4700 = load i32, ptr %42, align 4, !tbaa !9
  %4701 = add i32 %4700, %4699
  store i32 %4701, ptr %42, align 4, !tbaa !9
  %4702 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4702, ptr %13, align 4, !tbaa !9
  %4703 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %4703, ptr %43, align 4, !tbaa !9
  %4704 = load i32, ptr %42, align 4, !tbaa !9
  %4705 = load i32, ptr %43, align 4, !tbaa !9
  %4706 = icmp eq i32 %4704, %4705
  %4707 = zext i1 %4706 to i32
  store i32 %4707, ptr %42, align 4, !tbaa !9
  %4708 = load i32, ptr %42, align 4, !tbaa !9
  %4709 = icmp ne i32 %4708, 0
  br i1 %4709, label %4710, label %4711

4710:                                             ; preds = %4697
  br label %4735

4711:                                             ; preds = %4697
  %4712 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4712, ptr %42, align 4, !tbaa !9
  %4713 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4713, ptr %12, align 4, !tbaa !9
  %4714 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4714, ptr %42, align 4, !tbaa !9
  %4715 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4715, ptr %10, align 4, !tbaa !9
  %4716 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4716, ptr %42, align 4, !tbaa !9
  %4717 = load ptr, ptr %6, align 8, !tbaa !5
  %4718 = getelementptr inbounds %struct.w2c_hermes, ptr %4717, i32 0, i32 6
  %4719 = load i32, ptr %42, align 4, !tbaa !9
  %4720 = zext i32 %4719 to i64
  %4721 = add i64 %4720, 32
  %4722 = call i32 @i32_load(ptr noundef %4718, i64 noundef %4721)
  store i32 %4722, ptr %42, align 4, !tbaa !9
  %4723 = load i32, ptr %42, align 4, !tbaa !9
  %4724 = icmp ne i32 %4723, 0
  %4725 = xor i1 %4724, true
  %4726 = zext i1 %4725 to i32
  store i32 %4726, ptr %42, align 4, !tbaa !9
  %4727 = load i32, ptr %42, align 4, !tbaa !9
  %4728 = icmp ne i32 %4727, 0
  br i1 %4728, label %4729, label %4730

4729:                                             ; preds = %4711
  br label %4677

4730:                                             ; preds = %4711
  %4731 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4731, ptr %42, align 4, !tbaa !9
  %4732 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4732, ptr %15, align 4, !tbaa !9
  %4733 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %4733, ptr %42, align 4, !tbaa !9
  %4734 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4734, ptr %12, align 4, !tbaa !9
  br label %4206

4735:                                             ; preds = %4710, %4656
  %4736 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4736, ptr %42, align 4, !tbaa !9
  %4737 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4737, ptr %15, align 4, !tbaa !9
  br label %4738

4738:                                             ; preds = %4735, %4194, %4182
  %4739 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4739, ptr %42, align 4, !tbaa !9
  %4740 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4740, ptr %43, align 4, !tbaa !9
  %4741 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %4741, ptr %44, align 4, !tbaa !9
  %4742 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4742, ptr %45, align 4, !tbaa !9
  %4743 = load i32, ptr %45, align 4, !tbaa !9
  %4744 = load i32, ptr %44, align 4, !tbaa !9
  %4745 = sub i32 %4744, %4743
  store i32 %4745, ptr %44, align 4, !tbaa !9
  store i32 20, ptr %45, align 4, !tbaa !9
  %4746 = load i32, ptr %45, align 4, !tbaa !9
  %4747 = icmp eq i32 %4746, 0
  %4748 = xor i1 %4747, true
  %4749 = xor i1 %4748, true
  %4750 = zext i1 %4749 to i32
  %4751 = sext i32 %4750 to i64
  %4752 = call i64 @llvm.expect.i64(i64 %4751, i64 0)
  %4753 = icmp ne i64 %4752, 0
  br i1 %4753, label %4754, label %4756

4754:                                             ; preds = %4738
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

4755:                                             ; No predecessors!
  br label %4778

4756:                                             ; preds = %4738
  %4757 = load i32, ptr %44, align 4, !tbaa !9
  %4758 = icmp eq i32 %4757, -2147483648
  br i1 %4758, label %4759, label %4762

4759:                                             ; preds = %4756
  %4760 = load i32, ptr %45, align 4, !tbaa !9
  %4761 = icmp eq i32 %4760, -1
  br label %4762

4762:                                             ; preds = %4759, %4756
  %4763 = phi i1 [ false, %4756 ], [ %4761, %4759 ]
  %4764 = xor i1 %4763, true
  %4765 = xor i1 %4764, true
  %4766 = zext i1 %4765 to i32
  %4767 = sext i32 %4766 to i64
  %4768 = call i64 @llvm.expect.i64(i64 %4767, i64 0)
  %4769 = icmp ne i64 %4768, 0
  br i1 %4769, label %4770, label %4772

4770:                                             ; preds = %4762
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

4771:                                             ; No predecessors!
  br label %4776

4772:                                             ; preds = %4762
  %4773 = load i32, ptr %44, align 4, !tbaa !9
  %4774 = load i32, ptr %45, align 4, !tbaa !9
  %4775 = sdiv i32 %4773, %4774
  br label %4776

4776:                                             ; preds = %4772, %4771
  %4777 = phi i32 [ 0, %4771 ], [ %4775, %4772 ]
  br label %4778

4778:                                             ; preds = %4776, %4755
  %4779 = phi i32 [ 0, %4755 ], [ %4777, %4776 ]
  store i32 %4779, ptr %44, align 4, !tbaa !9
  store i32 20, ptr %45, align 4, !tbaa !9
  %4780 = load i32, ptr %45, align 4, !tbaa !9
  %4781 = load i32, ptr %44, align 4, !tbaa !9
  %4782 = mul i32 %4781, %4780
  store i32 %4782, ptr %44, align 4, !tbaa !9
  %4783 = load i32, ptr %44, align 4, !tbaa !9
  %4784 = load i32, ptr %43, align 4, !tbaa !9
  %4785 = add i32 %4784, %4783
  store i32 %4785, ptr %43, align 4, !tbaa !9
  store i32 0, ptr %44, align 4, !tbaa !9
  %4786 = load ptr, ptr %6, align 8, !tbaa !5
  %4787 = load i32, ptr %42, align 4, !tbaa !9
  %4788 = load i32, ptr %43, align 4, !tbaa !9
  %4789 = load i32, ptr %44, align 4, !tbaa !9
  call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AradixQuicksort0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x200x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x20unsigned0x20long0x29(ptr noundef %4786, i32 noundef %4787, i32 noundef %4788, i32 noundef %4789)
  br label %4790

4790:                                             ; preds = %4778, %4101, %1935
  %4791 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4791, ptr %42, align 4, !tbaa !9
  %4792 = load i32, ptr %42, align 4, !tbaa !9
  %4793 = icmp ne i32 %4792, 0
  br i1 %4793, label %4794, label %4878

4794:                                             ; preds = %4790
  %4795 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %4795, ptr %42, align 4, !tbaa !9
  %4796 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4796, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %4797 = load i32, ptr %44, align 4, !tbaa !9
  %4798 = load i32, ptr %43, align 4, !tbaa !9
  %4799 = mul i32 %4798, %4797
  store i32 %4799, ptr %43, align 4, !tbaa !9
  %4800 = load i32, ptr %43, align 4, !tbaa !9
  %4801 = load i32, ptr %42, align 4, !tbaa !9
  %4802 = add i32 %4801, %4800
  store i32 %4802, ptr %42, align 4, !tbaa !9
  %4803 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4803, ptr %11, align 4, !tbaa !9
  %4804 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %4804, ptr %42, align 4, !tbaa !9
  %4805 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4805, ptr %10, align 4, !tbaa !9
  br label %4806

4806:                                             ; preds = %4876, %4794
  %4807 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4807, ptr %42, align 4, !tbaa !9
  %4808 = load ptr, ptr %6, align 8, !tbaa !5
  %4809 = getelementptr inbounds %struct.w2c_hermes, ptr %4808, i32 0, i32 6
  %4810 = load i32, ptr %42, align 4, !tbaa !9
  %4811 = zext i32 %4810 to i64
  %4812 = add i64 %4811, 8
  %4813 = call i32 @i32_load(ptr noundef %4809, i64 noundef %4812)
  store i32 %4813, ptr %42, align 4, !tbaa !9
  %4814 = load i32, ptr %42, align 4, !tbaa !9
  %4815 = icmp ne i32 %4814, 0
  %4816 = xor i1 %4815, true
  %4817 = zext i1 %4816 to i32
  store i32 %4817, ptr %42, align 4, !tbaa !9
  %4818 = load i32, ptr %42, align 4, !tbaa !9
  %4819 = icmp ne i32 %4818, 0
  br i1 %4819, label %4820, label %4835

4820:                                             ; preds = %4806
  %4821 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4821, ptr %42, align 4, !tbaa !9
  %4822 = load ptr, ptr %6, align 8, !tbaa !5
  %4823 = getelementptr inbounds %struct.w2c_hermes, ptr %4822, i32 0, i32 6
  %4824 = load i32, ptr %42, align 4, !tbaa !9
  %4825 = zext i32 %4824 to i64
  %4826 = call i64 @i64_load(ptr noundef %4823, i64 noundef %4825)
  store i64 %4826, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %4827 = load i64, ptr %48, align 8, !tbaa !11
  %4828 = load i64, ptr %49, align 8, !tbaa !11
  %4829 = icmp ult i64 %4827, %4828
  %4830 = zext i1 %4829 to i32
  store i32 %4830, ptr %42, align 4, !tbaa !9
  %4831 = load i32, ptr %42, align 4, !tbaa !9
  %4832 = icmp ne i32 %4831, 0
  br i1 %4832, label %4833, label %4834

4833:                                             ; preds = %4820
  br label %4863

4834:                                             ; preds = %4820
  br label %4835

4835:                                             ; preds = %4834, %4806
  %4836 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4836, ptr %42, align 4, !tbaa !9
  %4837 = load ptr, ptr %6, align 8, !tbaa !5
  %4838 = getelementptr inbounds %struct.w2c_hermes, ptr %4837, i32 0, i32 6
  %4839 = load i32, ptr %42, align 4, !tbaa !9
  %4840 = zext i32 %4839 to i64
  %4841 = add i64 %4840, 12
  %4842 = call i32 @i32_load(ptr noundef %4838, i64 noundef %4841)
  store i32 %4842, ptr %42, align 4, !tbaa !9
  %4843 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4843, ptr %12, align 4, !tbaa !9
  %4844 = load i32, ptr %42, align 4, !tbaa !9
  %4845 = icmp ne i32 %4844, 0
  %4846 = xor i1 %4845, true
  %4847 = zext i1 %4846 to i32
  store i32 %4847, ptr %42, align 4, !tbaa !9
  %4848 = load i32, ptr %42, align 4, !tbaa !9
  %4849 = icmp ne i32 %4848, 0
  br i1 %4849, label %4850, label %4851

4850:                                             ; preds = %4835
  br label %4863

4851:                                             ; preds = %4835
  %4852 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4852, ptr %42, align 4, !tbaa !9
  %4853 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4853, ptr %43, align 4, !tbaa !9
  %4854 = load ptr, ptr %6, align 8, !tbaa !5
  %4855 = getelementptr inbounds %struct.w2c_hermes, ptr %4854, i32 0, i32 6
  %4856 = load i32, ptr %42, align 4, !tbaa !9
  %4857 = zext i32 %4856 to i64
  %4858 = add i64 %4857, 16
  %4859 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4855, i64 noundef %4858, i32 noundef %4859)
  %4860 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4860, ptr %42, align 4, !tbaa !9
  %4861 = load ptr, ptr %6, align 8, !tbaa !5
  %4862 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %4861, i32 noundef %4862)
  br label %4863

4863:                                             ; preds = %4851, %4850, %4833
  %4864 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4864, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %4865 = load i32, ptr %43, align 4, !tbaa !9
  %4866 = load i32, ptr %42, align 4, !tbaa !9
  %4867 = add i32 %4866, %4865
  store i32 %4867, ptr %42, align 4, !tbaa !9
  %4868 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4868, ptr %10, align 4, !tbaa !9
  %4869 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4869, ptr %43, align 4, !tbaa !9
  %4870 = load i32, ptr %42, align 4, !tbaa !9
  %4871 = load i32, ptr %43, align 4, !tbaa !9
  %4872 = icmp ne i32 %4870, %4871
  %4873 = zext i1 %4872 to i32
  store i32 %4873, ptr %42, align 4, !tbaa !9
  %4874 = load i32, ptr %42, align 4, !tbaa !9
  %4875 = icmp ne i32 %4874, 0
  br i1 %4875, label %4876, label %4877

4876:                                             ; preds = %4863
  br label %4806

4877:                                             ; preds = %4863
  br label %4878

4878:                                             ; preds = %4877, %4790
  %4879 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %4879, ptr %42, align 4, !tbaa !9
  %4880 = load ptr, ptr %6, align 8, !tbaa !5
  %4881 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %4880, i32 noundef %4881)
  %4882 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %4882, ptr %42, align 4, !tbaa !9
  %4883 = load i32, ptr %42, align 4, !tbaa !9
  %4884 = icmp ne i32 %4883, 0
  br i1 %4884, label %4885, label %4886

4885:                                             ; preds = %4878
  br label %7826

4886:                                             ; preds = %4878
  %4887 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4887, ptr %42, align 4, !tbaa !9
  %4888 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %4888, ptr %43, align 4, !tbaa !9
  %4889 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4889, ptr %44, align 4, !tbaa !9
  %4890 = load i32, ptr %44, align 4, !tbaa !9
  %4891 = load i32, ptr %43, align 4, !tbaa !9
  %4892 = sub i32 %4891, %4890
  store i32 %4892, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %4893 = load i32, ptr %44, align 4, !tbaa !9
  %4894 = icmp eq i32 %4893, 0
  %4895 = xor i1 %4894, true
  %4896 = xor i1 %4895, true
  %4897 = zext i1 %4896 to i32
  %4898 = sext i32 %4897 to i64
  %4899 = call i64 @llvm.expect.i64(i64 %4898, i64 0)
  %4900 = icmp ne i64 %4899, 0
  br i1 %4900, label %4901, label %4903

4901:                                             ; preds = %4886
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

4902:                                             ; No predecessors!
  br label %4925

4903:                                             ; preds = %4886
  %4904 = load i32, ptr %43, align 4, !tbaa !9
  %4905 = icmp eq i32 %4904, -2147483648
  br i1 %4905, label %4906, label %4909

4906:                                             ; preds = %4903
  %4907 = load i32, ptr %44, align 4, !tbaa !9
  %4908 = icmp eq i32 %4907, -1
  br label %4909

4909:                                             ; preds = %4906, %4903
  %4910 = phi i1 [ false, %4903 ], [ %4908, %4906 ]
  %4911 = xor i1 %4910, true
  %4912 = xor i1 %4911, true
  %4913 = zext i1 %4912 to i32
  %4914 = sext i32 %4913 to i64
  %4915 = call i64 @llvm.expect.i64(i64 %4914, i64 0)
  %4916 = icmp ne i64 %4915, 0
  br i1 %4916, label %4917, label %4919

4917:                                             ; preds = %4909
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

4918:                                             ; No predecessors!
  br label %4923

4919:                                             ; preds = %4909
  %4920 = load i32, ptr %43, align 4, !tbaa !9
  %4921 = load i32, ptr %44, align 4, !tbaa !9
  %4922 = sdiv i32 %4920, %4921
  br label %4923

4923:                                             ; preds = %4919, %4918
  %4924 = phi i32 [ 0, %4918 ], [ %4922, %4919 ]
  br label %4925

4925:                                             ; preds = %4923, %4902
  %4926 = phi i32 [ 0, %4902 ], [ %4924, %4923 ]
  store i32 %4926, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %4927 = load i32, ptr %44, align 4, !tbaa !9
  %4928 = load i32, ptr %43, align 4, !tbaa !9
  %4929 = mul i32 %4928, %4927
  store i32 %4929, ptr %43, align 4, !tbaa !9
  %4930 = load i32, ptr %43, align 4, !tbaa !9
  %4931 = load i32, ptr %42, align 4, !tbaa !9
  %4932 = add i32 %4931, %4930
  store i32 %4932, ptr %42, align 4, !tbaa !9
  %4933 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4933, ptr %13, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %4934 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4934, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %4935 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4935, ptr %21, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %4936 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4936, ptr %24, align 4, !tbaa !9
  %4937 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %4937, ptr %42, align 4, !tbaa !9
  %4938 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4938, ptr %11, align 4, !tbaa !9
  br label %4939

4939:                                             ; preds = %6298, %4925
  %4940 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4940, ptr %42, align 4, !tbaa !9
  %4941 = load ptr, ptr %6, align 8, !tbaa !5
  %4942 = getelementptr inbounds %struct.w2c_hermes, ptr %4941, i32 0, i32 6
  %4943 = load i32, ptr %42, align 4, !tbaa !9
  %4944 = zext i32 %4943 to i64
  %4945 = add i64 %4944, 8
  %4946 = call i32 @i32_load(ptr noundef %4942, i64 noundef %4945)
  store i32 %4946, ptr %42, align 4, !tbaa !9
  %4947 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4947, ptr %31, align 4, !tbaa !9
  %4948 = load i32, ptr %42, align 4, !tbaa !9
  %4949 = icmp ne i32 %4948, 0
  %4950 = xor i1 %4949, true
  %4951 = zext i1 %4950 to i32
  store i32 %4951, ptr %42, align 4, !tbaa !9
  %4952 = load i32, ptr %42, align 4, !tbaa !9
  %4953 = icmp ne i32 %4952, 0
  br i1 %4953, label %4954, label %4955

4954:                                             ; preds = %4939
  br label %6285

4955:                                             ; preds = %4939
  %4956 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4956, ptr %42, align 4, !tbaa !9
  %4957 = load ptr, ptr %6, align 8, !tbaa !5
  %4958 = getelementptr inbounds %struct.w2c_hermes, ptr %4957, i32 0, i32 6
  %4959 = load i32, ptr %42, align 4, !tbaa !9
  %4960 = zext i32 %4959 to i64
  %4961 = add i64 %4960, 4
  %4962 = call i32 @i32_load(ptr noundef %4958, i64 noundef %4961)
  store i32 %4962, ptr %42, align 4, !tbaa !9
  %4963 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4963, ptr %28, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %4964 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4964, ptr %18, align 4, !tbaa !9
  %4965 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %4965, ptr %42, align 4, !tbaa !9
  %4966 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4966, ptr %25, align 4, !tbaa !9
  %4967 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4967, ptr %42, align 4, !tbaa !9
  %4968 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4968, ptr %14, align 4, !tbaa !9
  br label %4969

4969:                                             ; preds = %6283, %4955
  %4970 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %4970, ptr %42, align 4, !tbaa !9
  %4971 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4971, ptr %43, align 4, !tbaa !9
  %4972 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %4972, ptr %12, align 4, !tbaa !9
  %4973 = load i32, ptr %43, align 4, !tbaa !9
  %4974 = load i32, ptr %42, align 4, !tbaa !9
  %4975 = add i32 %4974, %4973
  store i32 %4975, ptr %42, align 4, !tbaa !9
  %4976 = load ptr, ptr %6, align 8, !tbaa !5
  %4977 = getelementptr inbounds %struct.w2c_hermes, ptr %4976, i32 0, i32 6
  %4978 = load i32, ptr %42, align 4, !tbaa !9
  %4979 = zext i32 %4978 to i64
  %4980 = call i32 @i32_load8_u(ptr noundef %4977, i64 noundef %4979)
  store i32 %4980, ptr %42, align 4, !tbaa !9
  %4981 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %4981, ptr %16, align 4, !tbaa !9
  %4982 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4982, ptr %42, align 4, !tbaa !9
  %4983 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %4983, ptr %43, align 4, !tbaa !9
  %4984 = load i32, ptr %42, align 4, !tbaa !9
  %4985 = load i32, ptr %43, align 4, !tbaa !9
  %4986 = icmp ne i32 %4984, %4985
  %4987 = zext i1 %4986 to i32
  store i32 %4987, ptr %42, align 4, !tbaa !9
  %4988 = load i32, ptr %42, align 4, !tbaa !9
  %4989 = icmp ne i32 %4988, 0
  br i1 %4989, label %4990, label %5106

4990:                                             ; preds = %4969
  %4991 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4991, ptr %42, align 4, !tbaa !9
  %4992 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %4992, ptr %43, align 4, !tbaa !9
  %4993 = load i32, ptr %43, align 4, !tbaa !9
  %4994 = load i32, ptr %42, align 4, !tbaa !9
  %4995 = sub i32 %4994, %4993
  store i32 %4995, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %4996 = load i32, ptr %43, align 4, !tbaa !9
  %4997 = icmp eq i32 %4996, 0
  %4998 = xor i1 %4997, true
  %4999 = xor i1 %4998, true
  %5000 = zext i1 %4999 to i32
  %5001 = sext i32 %5000 to i64
  %5002 = call i64 @llvm.expect.i64(i64 %5001, i64 0)
  %5003 = icmp ne i64 %5002, 0
  br i1 %5003, label %5004, label %5006

5004:                                             ; preds = %4990
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

5005:                                             ; No predecessors!
  br label %5028

5006:                                             ; preds = %4990
  %5007 = load i32, ptr %42, align 4, !tbaa !9
  %5008 = icmp eq i32 %5007, -2147483648
  br i1 %5008, label %5009, label %5012

5009:                                             ; preds = %5006
  %5010 = load i32, ptr %43, align 4, !tbaa !9
  %5011 = icmp eq i32 %5010, -1
  br label %5012

5012:                                             ; preds = %5009, %5006
  %5013 = phi i1 [ false, %5006 ], [ %5011, %5009 ]
  %5014 = xor i1 %5013, true
  %5015 = xor i1 %5014, true
  %5016 = zext i1 %5015 to i32
  %5017 = sext i32 %5016 to i64
  %5018 = call i64 @llvm.expect.i64(i64 %5017, i64 0)
  %5019 = icmp ne i64 %5018, 0
  br i1 %5019, label %5020, label %5022

5020:                                             ; preds = %5012
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

5021:                                             ; No predecessors!
  br label %5026

5022:                                             ; preds = %5012
  %5023 = load i32, ptr %42, align 4, !tbaa !9
  %5024 = load i32, ptr %43, align 4, !tbaa !9
  %5025 = sdiv i32 %5023, %5024
  br label %5026

5026:                                             ; preds = %5022, %5021
  %5027 = phi i32 [ 0, %5021 ], [ %5025, %5022 ]
  br label %5028

5028:                                             ; preds = %5026, %5005
  %5029 = phi i32 [ 0, %5005 ], [ %5027, %5026 ]
  store i32 %5029, ptr %42, align 4, !tbaa !9
  %5030 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5030, ptr %10, align 4, !tbaa !9
  br label %5031

5031:                                             ; preds = %5104, %5028
  %5032 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %5032, ptr %42, align 4, !tbaa !9
  %5033 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5033, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %5034 = load i32, ptr %44, align 4, !tbaa !9
  %5035 = and i32 %5034, 31
  %5036 = load i32, ptr %43, align 4, !tbaa !9
  %5037 = lshr i32 %5036, %5035
  store i32 %5037, ptr %43, align 4, !tbaa !9
  %5038 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5038, ptr %18, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %5039 = load i32, ptr %44, align 4, !tbaa !9
  %5040 = load i32, ptr %43, align 4, !tbaa !9
  %5041 = mul i32 %5040, %5039
  store i32 %5041, ptr %43, align 4, !tbaa !9
  %5042 = load i32, ptr %43, align 4, !tbaa !9
  %5043 = load i32, ptr %42, align 4, !tbaa !9
  %5044 = add i32 %5043, %5042
  store i32 %5044, ptr %42, align 4, !tbaa !9
  %5045 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5045, ptr %17, align 4, !tbaa !9
  %5046 = load ptr, ptr %6, align 8, !tbaa !5
  %5047 = getelementptr inbounds %struct.w2c_hermes, ptr %5046, i32 0, i32 6
  %5048 = load i32, ptr %42, align 4, !tbaa !9
  %5049 = zext i32 %5048 to i64
  %5050 = add i64 %5049, 4
  %5051 = call i32 @i32_load(ptr noundef %5047, i64 noundef %5050)
  store i32 %5051, ptr %42, align 4, !tbaa !9
  %5052 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5052, ptr %43, align 4, !tbaa !9
  %5053 = load i32, ptr %42, align 4, !tbaa !9
  %5054 = load i32, ptr %43, align 4, !tbaa !9
  %5055 = icmp ule i32 %5053, %5054
  %5056 = zext i1 %5055 to i32
  store i32 %5056, ptr %42, align 4, !tbaa !9
  %5057 = load i32, ptr %42, align 4, !tbaa !9
  %5058 = icmp ne i32 %5057, 0
  br i1 %5058, label %5059, label %5060

5059:                                             ; preds = %5031
  br label %5086

5060:                                             ; preds = %5031
  %5061 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5061, ptr %42, align 4, !tbaa !9
  %5062 = load ptr, ptr %6, align 8, !tbaa !5
  %5063 = getelementptr inbounds %struct.w2c_hermes, ptr %5062, i32 0, i32 6
  %5064 = load i32, ptr %42, align 4, !tbaa !9
  %5065 = zext i32 %5064 to i64
  %5066 = call i32 @i32_load(ptr noundef %5063, i64 noundef %5065)
  store i32 %5066, ptr %42, align 4, !tbaa !9
  %5067 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5067, ptr %43, align 4, !tbaa !9
  %5068 = load i32, ptr %43, align 4, !tbaa !9
  %5069 = load i32, ptr %42, align 4, !tbaa !9
  %5070 = add i32 %5069, %5068
  store i32 %5070, ptr %42, align 4, !tbaa !9
  %5071 = load ptr, ptr %6, align 8, !tbaa !5
  %5072 = getelementptr inbounds %struct.w2c_hermes, ptr %5071, i32 0, i32 6
  %5073 = load i32, ptr %42, align 4, !tbaa !9
  %5074 = zext i32 %5073 to i64
  %5075 = call i32 @i32_load8_u(ptr noundef %5072, i64 noundef %5074)
  store i32 %5075, ptr %42, align 4, !tbaa !9
  %5076 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5076, ptr %43, align 4, !tbaa !9
  %5077 = load i32, ptr %42, align 4, !tbaa !9
  %5078 = load i32, ptr %43, align 4, !tbaa !9
  %5079 = icmp ult i32 %5077, %5078
  %5080 = zext i1 %5079 to i32
  store i32 %5080, ptr %42, align 4, !tbaa !9
  %5081 = load i32, ptr %42, align 4, !tbaa !9
  %5082 = icmp ne i32 %5081, 0
  br i1 %5082, label %5083, label %5084

5083:                                             ; preds = %5060
  br label %5086

5084:                                             ; preds = %5060
  %5085 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5085, ptr %42, align 4, !tbaa !9
  br label %5100

5086:                                             ; preds = %5083, %5059
  %5087 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5087, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %5088 = load i32, ptr %43, align 4, !tbaa !9
  %5089 = load i32, ptr %42, align 4, !tbaa !9
  %5090 = add i32 %5089, %5088
  store i32 %5090, ptr %42, align 4, !tbaa !9
  %5091 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5091, ptr %25, align 4, !tbaa !9
  %5092 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5092, ptr %42, align 4, !tbaa !9
  %5093 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5093, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %5094 = load i32, ptr %44, align 4, !tbaa !9
  %5095 = load i32, ptr %43, align 4, !tbaa !9
  %5096 = xor i32 %5095, %5094
  store i32 %5096, ptr %43, align 4, !tbaa !9
  %5097 = load i32, ptr %43, align 4, !tbaa !9
  %5098 = load i32, ptr %42, align 4, !tbaa !9
  %5099 = add i32 %5098, %5097
  store i32 %5099, ptr %42, align 4, !tbaa !9
  br label %5100

5100:                                             ; preds = %5086, %5084
  %5101 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5101, ptr %10, align 4, !tbaa !9
  %5102 = load i32, ptr %42, align 4, !tbaa !9
  %5103 = icmp ne i32 %5102, 0
  br i1 %5103, label %5104, label %5105

5104:                                             ; preds = %5100
  br label %5031

5105:                                             ; preds = %5100
  br label %5106

5106:                                             ; preds = %5105, %4969
  %5107 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5107, ptr %42, align 4, !tbaa !9
  %5108 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %5108, ptr %43, align 4, !tbaa !9
  %5109 = load i32, ptr %42, align 4, !tbaa !9
  %5110 = load i32, ptr %43, align 4, !tbaa !9
  %5111 = icmp ne i32 %5109, %5110
  %5112 = zext i1 %5111 to i32
  store i32 %5112, ptr %42, align 4, !tbaa !9
  %5113 = load i32, ptr %42, align 4, !tbaa !9
  %5114 = icmp ne i32 %5113, 0
  br i1 %5114, label %5115, label %5233

5115:                                             ; preds = %5106
  %5116 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5116, ptr %42, align 4, !tbaa !9
  %5117 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %5117, ptr %43, align 4, !tbaa !9
  %5118 = load i32, ptr %43, align 4, !tbaa !9
  %5119 = load i32, ptr %42, align 4, !tbaa !9
  %5120 = sub i32 %5119, %5118
  store i32 %5120, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %5121 = load i32, ptr %43, align 4, !tbaa !9
  %5122 = icmp eq i32 %5121, 0
  %5123 = xor i1 %5122, true
  %5124 = xor i1 %5123, true
  %5125 = zext i1 %5124 to i32
  %5126 = sext i32 %5125 to i64
  %5127 = call i64 @llvm.expect.i64(i64 %5126, i64 0)
  %5128 = icmp ne i64 %5127, 0
  br i1 %5128, label %5129, label %5131

5129:                                             ; preds = %5115
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

5130:                                             ; No predecessors!
  br label %5153

5131:                                             ; preds = %5115
  %5132 = load i32, ptr %42, align 4, !tbaa !9
  %5133 = icmp eq i32 %5132, -2147483648
  br i1 %5133, label %5134, label %5137

5134:                                             ; preds = %5131
  %5135 = load i32, ptr %43, align 4, !tbaa !9
  %5136 = icmp eq i32 %5135, -1
  br label %5137

5137:                                             ; preds = %5134, %5131
  %5138 = phi i1 [ false, %5131 ], [ %5136, %5134 ]
  %5139 = xor i1 %5138, true
  %5140 = xor i1 %5139, true
  %5141 = zext i1 %5140 to i32
  %5142 = sext i32 %5141 to i64
  %5143 = call i64 @llvm.expect.i64(i64 %5142, i64 0)
  %5144 = icmp ne i64 %5143, 0
  br i1 %5144, label %5145, label %5147

5145:                                             ; preds = %5137
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

5146:                                             ; No predecessors!
  br label %5151

5147:                                             ; preds = %5137
  %5148 = load i32, ptr %42, align 4, !tbaa !9
  %5149 = load i32, ptr %43, align 4, !tbaa !9
  %5150 = sdiv i32 %5148, %5149
  br label %5151

5151:                                             ; preds = %5147, %5146
  %5152 = phi i32 [ 0, %5146 ], [ %5150, %5147 ]
  br label %5153

5153:                                             ; preds = %5151, %5130
  %5154 = phi i32 [ 0, %5130 ], [ %5152, %5151 ]
  store i32 %5154, ptr %42, align 4, !tbaa !9
  %5155 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5155, ptr %10, align 4, !tbaa !9
  %5156 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %5156, ptr %42, align 4, !tbaa !9
  %5157 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5157, ptr %14, align 4, !tbaa !9
  br label %5158

5158:                                             ; preds = %5231, %5153
  %5159 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5159, ptr %42, align 4, !tbaa !9
  %5160 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5160, ptr %43, align 4, !tbaa !9
  %5161 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5161, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %5162 = load i32, ptr %45, align 4, !tbaa !9
  %5163 = and i32 %5162, 31
  %5164 = load i32, ptr %44, align 4, !tbaa !9
  %5165 = lshr i32 %5164, %5163
  store i32 %5165, ptr %44, align 4, !tbaa !9
  %5166 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %5166, ptr %18, align 4, !tbaa !9
  store i32 20, ptr %45, align 4, !tbaa !9
  %5167 = load i32, ptr %45, align 4, !tbaa !9
  %5168 = load i32, ptr %44, align 4, !tbaa !9
  %5169 = mul i32 %5168, %5167
  store i32 %5169, ptr %44, align 4, !tbaa !9
  %5170 = load i32, ptr %44, align 4, !tbaa !9
  %5171 = load i32, ptr %43, align 4, !tbaa !9
  %5172 = add i32 %5171, %5170
  store i32 %5172, ptr %43, align 4, !tbaa !9
  %5173 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5173, ptr %17, align 4, !tbaa !9
  %5174 = load ptr, ptr %6, align 8, !tbaa !5
  %5175 = getelementptr inbounds %struct.w2c_hermes, ptr %5174, i32 0, i32 6
  %5176 = load i32, ptr %43, align 4, !tbaa !9
  %5177 = zext i32 %5176 to i64
  %5178 = add i64 %5177, 4
  %5179 = call i32 @i32_load(ptr noundef %5175, i64 noundef %5178)
  store i32 %5179, ptr %43, align 4, !tbaa !9
  %5180 = load i32, ptr %42, align 4, !tbaa !9
  %5181 = load i32, ptr %43, align 4, !tbaa !9
  %5182 = icmp uge i32 %5180, %5181
  %5183 = zext i1 %5182 to i32
  store i32 %5183, ptr %42, align 4, !tbaa !9
  %5184 = load i32, ptr %42, align 4, !tbaa !9
  %5185 = icmp ne i32 %5184, 0
  br i1 %5185, label %5186, label %5188

5186:                                             ; preds = %5158
  %5187 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5187, ptr %42, align 4, !tbaa !9
  br label %5227

5188:                                             ; preds = %5158
  %5189 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5189, ptr %42, align 4, !tbaa !9
  %5190 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5190, ptr %43, align 4, !tbaa !9
  %5191 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5191, ptr %44, align 4, !tbaa !9
  %5192 = load ptr, ptr %6, align 8, !tbaa !5
  %5193 = getelementptr inbounds %struct.w2c_hermes, ptr %5192, i32 0, i32 6
  %5194 = load i32, ptr %44, align 4, !tbaa !9
  %5195 = zext i32 %5194 to i64
  %5196 = call i32 @i32_load(ptr noundef %5193, i64 noundef %5195)
  store i32 %5196, ptr %44, align 4, !tbaa !9
  %5197 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5197, ptr %45, align 4, !tbaa !9
  %5198 = load i32, ptr %45, align 4, !tbaa !9
  %5199 = load i32, ptr %44, align 4, !tbaa !9
  %5200 = add i32 %5199, %5198
  store i32 %5200, ptr %44, align 4, !tbaa !9
  %5201 = load ptr, ptr %6, align 8, !tbaa !5
  %5202 = getelementptr inbounds %struct.w2c_hermes, ptr %5201, i32 0, i32 6
  %5203 = load i32, ptr %44, align 4, !tbaa !9
  %5204 = zext i32 %5203 to i64
  %5205 = call i32 @i32_load8_u(ptr noundef %5202, i64 noundef %5204)
  store i32 %5205, ptr %44, align 4, !tbaa !9
  %5206 = load i32, ptr %43, align 4, !tbaa !9
  %5207 = load i32, ptr %44, align 4, !tbaa !9
  %5208 = icmp ne i32 %5206, %5207
  %5209 = zext i1 %5208 to i32
  store i32 %5209, ptr %43, align 4, !tbaa !9
  %5210 = load i32, ptr %43, align 4, !tbaa !9
  %5211 = icmp ne i32 %5210, 0
  br i1 %5211, label %5212, label %5213

5212:                                             ; preds = %5188
  br label %5227

5213:                                             ; preds = %5188
  %5214 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5214, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %5215 = load i32, ptr %43, align 4, !tbaa !9
  %5216 = load i32, ptr %42, align 4, !tbaa !9
  %5217 = add i32 %5216, %5215
  store i32 %5217, ptr %42, align 4, !tbaa !9
  %5218 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5218, ptr %14, align 4, !tbaa !9
  %5219 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5219, ptr %42, align 4, !tbaa !9
  %5220 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5220, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %5221 = load i32, ptr %44, align 4, !tbaa !9
  %5222 = load i32, ptr %43, align 4, !tbaa !9
  %5223 = xor i32 %5222, %5221
  store i32 %5223, ptr %43, align 4, !tbaa !9
  %5224 = load i32, ptr %43, align 4, !tbaa !9
  %5225 = load i32, ptr %42, align 4, !tbaa !9
  %5226 = add i32 %5225, %5224
  store i32 %5226, ptr %42, align 4, !tbaa !9
  br label %5227

5227:                                             ; preds = %5213, %5212, %5186
  %5228 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5228, ptr %10, align 4, !tbaa !9
  %5229 = load i32, ptr %42, align 4, !tbaa !9
  %5230 = icmp ne i32 %5229, 0
  br i1 %5230, label %5231, label %5232

5231:                                             ; preds = %5227
  br label %5158

5232:                                             ; preds = %5227
  br label %5233

5233:                                             ; preds = %5232, %5106
  %5234 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5234, ptr %42, align 4, !tbaa !9
  %5235 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %5235, ptr %43, align 4, !tbaa !9
  %5236 = load i32, ptr %42, align 4, !tbaa !9
  %5237 = load i32, ptr %43, align 4, !tbaa !9
  %5238 = icmp eq i32 %5236, %5237
  %5239 = zext i1 %5238 to i32
  store i32 %5239, ptr %42, align 4, !tbaa !9
  %5240 = load i32, ptr %42, align 4, !tbaa !9
  %5241 = icmp ne i32 %5240, 0
  br i1 %5241, label %5242, label %5243

5242:                                             ; preds = %5233
  br label %6285

5243:                                             ; preds = %5233
  %5244 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %5244, ptr %42, align 4, !tbaa !9
  %5245 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5245, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %5246 = load i32, ptr %44, align 4, !tbaa !9
  %5247 = load i32, ptr %43, align 4, !tbaa !9
  %5248 = add i32 %5247, %5246
  store i32 %5248, ptr %43, align 4, !tbaa !9
  %5249 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5249, ptr %18, align 4, !tbaa !9
  %5250 = load i32, ptr %42, align 4, !tbaa !9
  %5251 = load i32, ptr %43, align 4, !tbaa !9
  %5252 = icmp ule i32 %5250, %5251
  %5253 = zext i1 %5252 to i32
  store i32 %5253, ptr %42, align 4, !tbaa !9
  %5254 = load i32, ptr %42, align 4, !tbaa !9
  %5255 = icmp ne i32 %5254, 0
  br i1 %5255, label %5256, label %5403

5256:                                             ; preds = %5243
  %5257 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %5257, ptr %42, align 4, !tbaa !9
  %5258 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5258, ptr %16, align 4, !tbaa !9
  %5259 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5259, ptr %43, align 4, !tbaa !9
  %5260 = load i32, ptr %42, align 4, !tbaa !9
  %5261 = load i32, ptr %43, align 4, !tbaa !9
  %5262 = icmp uge i32 %5260, %5261
  %5263 = zext i1 %5262 to i32
  store i32 %5263, ptr %42, align 4, !tbaa !9
  %5264 = load i32, ptr %42, align 4, !tbaa !9
  %5265 = icmp ne i32 %5264, 0
  br i1 %5265, label %5266, label %5267

5266:                                             ; preds = %5256
  br label %6274

5267:                                             ; preds = %5256
  br label %5268

5268:                                             ; preds = %5401, %5267
  %5269 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5269, ptr %42, align 4, !tbaa !9
  %5270 = load ptr, ptr %6, align 8, !tbaa !5
  %5271 = getelementptr inbounds %struct.w2c_hermes, ptr %5270, i32 0, i32 6
  %5272 = load i32, ptr %42, align 4, !tbaa !9
  %5273 = zext i32 %5272 to i64
  %5274 = add i64 %5273, 8
  %5275 = call i32 @i32_load(ptr noundef %5271, i64 noundef %5274)
  store i32 %5275, ptr %42, align 4, !tbaa !9
  %5276 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5276, ptr %10, align 4, !tbaa !9
  %5277 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5277, ptr %43, align 4, !tbaa !9
  %5278 = load ptr, ptr %6, align 8, !tbaa !5
  %5279 = getelementptr inbounds %struct.w2c_hermes, ptr %5278, i32 0, i32 6
  %5280 = load i32, ptr %43, align 4, !tbaa !9
  %5281 = zext i32 %5280 to i64
  %5282 = add i64 %5281, 12
  %5283 = call i32 @i32_load(ptr noundef %5279, i64 noundef %5282)
  store i32 %5283, ptr %43, align 4, !tbaa !9
  %5284 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5284, ptr %17, align 4, !tbaa !9
  %5285 = load i32, ptr %42, align 4, !tbaa !9
  %5286 = load i32, ptr %43, align 4, !tbaa !9
  %5287 = icmp ne i32 %5285, %5286
  %5288 = zext i1 %5287 to i32
  store i32 %5288, ptr %42, align 4, !tbaa !9
  %5289 = load i32, ptr %42, align 4, !tbaa !9
  %5290 = icmp ne i32 %5289, 0
  br i1 %5290, label %5291, label %5388

5291:                                             ; preds = %5268
  br label %5292

5292:                                             ; preds = %5386, %5291
  %5293 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5293, ptr %42, align 4, !tbaa !9
  %5294 = load ptr, ptr %6, align 8, !tbaa !5
  %5295 = getelementptr inbounds %struct.w2c_hermes, ptr %5294, i32 0, i32 6
  %5296 = load i32, ptr %42, align 4, !tbaa !9
  %5297 = zext i32 %5296 to i64
  %5298 = call i32 @i32_load(ptr noundef %5295, i64 noundef %5297)
  store i32 %5298, ptr %42, align 4, !tbaa !9
  %5299 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5299, ptr %22, align 4, !tbaa !9
  %5300 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5300, ptr %43, align 4, !tbaa !9
  %5301 = load i32, ptr %42, align 4, !tbaa !9
  %5302 = load i32, ptr %43, align 4, !tbaa !9
  %5303 = icmp eq i32 %5301, %5302
  %5304 = zext i1 %5303 to i32
  store i32 %5304, ptr %42, align 4, !tbaa !9
  %5305 = load i32, ptr %42, align 4, !tbaa !9
  %5306 = icmp ne i32 %5305, 0
  br i1 %5306, label %5307, label %5308

5307:                                             ; preds = %5292
  br label %5373

5308:                                             ; preds = %5292
  %5309 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5309, ptr %42, align 4, !tbaa !9
  %5310 = load ptr, ptr %6, align 8, !tbaa !5
  %5311 = getelementptr inbounds %struct.w2c_hermes, ptr %5310, i32 0, i32 6
  %5312 = load i32, ptr %42, align 4, !tbaa !9
  %5313 = zext i32 %5312 to i64
  %5314 = add i64 %5313, 16
  %5315 = call i32 @i32_load(ptr noundef %5311, i64 noundef %5314)
  store i32 %5315, ptr %42, align 4, !tbaa !9
  %5316 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5316, ptr %12, align 4, !tbaa !9
  %5317 = load i32, ptr %42, align 4, !tbaa !9
  %5318 = icmp ne i32 %5317, 0
  br i1 %5318, label %5319, label %5340

5319:                                             ; preds = %5308
  %5320 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5320, ptr %42, align 4, !tbaa !9
  %5321 = load ptr, ptr %6, align 8, !tbaa !5
  %5322 = getelementptr inbounds %struct.w2c_hermes, ptr %5321, i32 0, i32 6
  %5323 = load i32, ptr %42, align 4, !tbaa !9
  %5324 = zext i32 %5323 to i64
  %5325 = call i32 @i32_load(ptr noundef %5322, i64 noundef %5324)
  store i32 %5325, ptr %42, align 4, !tbaa !9
  %5326 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %5326, ptr %43, align 4, !tbaa !9
  %5327 = load ptr, ptr %6, align 8, !tbaa !5
  %5328 = getelementptr inbounds %struct.w2c_hermes, ptr %5327, i32 0, i32 6
  %5329 = load i32, ptr %43, align 4, !tbaa !9
  %5330 = zext i32 %5329 to i64
  %5331 = call i32 @i32_load(ptr noundef %5328, i64 noundef %5330)
  store i32 %5331, ptr %43, align 4, !tbaa !9
  %5332 = load i32, ptr %42, align 4, !tbaa !9
  %5333 = load i32, ptr %43, align 4, !tbaa !9
  %5334 = icmp ult i32 %5332, %5333
  %5335 = zext i1 %5334 to i32
  store i32 %5335, ptr %42, align 4, !tbaa !9
  %5336 = load i32, ptr %42, align 4, !tbaa !9
  %5337 = icmp ne i32 %5336, 0
  br i1 %5337, label %5338, label %5339

5338:                                             ; preds = %5319
  br label %5373

5339:                                             ; preds = %5319
  br label %5340

5340:                                             ; preds = %5339, %5308
  %5341 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5341, ptr %42, align 4, !tbaa !9
  %5342 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %5342, ptr %43, align 4, !tbaa !9
  %5343 = load ptr, ptr %6, align 8, !tbaa !5
  %5344 = getelementptr inbounds %struct.w2c_hermes, ptr %5343, i32 0, i32 6
  %5345 = load i32, ptr %42, align 4, !tbaa !9
  %5346 = zext i32 %5345 to i64
  %5347 = add i64 %5346, 16
  %5348 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5344, i64 noundef %5347, i32 noundef %5348)
  %5349 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5349, ptr %42, align 4, !tbaa !9
  %5350 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %5350, ptr %43, align 4, !tbaa !9
  %5351 = load ptr, ptr %6, align 8, !tbaa !5
  %5352 = getelementptr inbounds %struct.w2c_hermes, ptr %5351, i32 0, i32 6
  %5353 = load i32, ptr %43, align 4, !tbaa !9
  %5354 = zext i32 %5353 to i64
  %5355 = add i64 %5354, 8
  %5356 = call i32 @i32_load(ptr noundef %5352, i64 noundef %5355)
  store i32 %5356, ptr %43, align 4, !tbaa !9
  %5357 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5357, ptr %44, align 4, !tbaa !9
  %5358 = load ptr, ptr %6, align 8, !tbaa !5
  %5359 = getelementptr inbounds %struct.w2c_hermes, ptr %5358, i32 0, i32 6
  %5360 = load i32, ptr %44, align 4, !tbaa !9
  %5361 = zext i32 %5360 to i64
  %5362 = add i64 %5361, 4
  %5363 = call i32 @i32_load(ptr noundef %5359, i64 noundef %5362)
  store i32 %5363, ptr %44, align 4, !tbaa !9
  %5364 = load i32, ptr %44, align 4, !tbaa !9
  %5365 = load i32, ptr %43, align 4, !tbaa !9
  %5366 = sub i32 %5365, %5364
  store i32 %5366, ptr %43, align 4, !tbaa !9
  %5367 = load ptr, ptr %6, align 8, !tbaa !5
  %5368 = getelementptr inbounds %struct.w2c_hermes, ptr %5367, i32 0, i32 6
  %5369 = load i32, ptr %42, align 4, !tbaa !9
  %5370 = zext i32 %5369 to i64
  %5371 = add i64 %5370, 20
  %5372 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5368, i64 noundef %5371, i32 noundef %5372)
  br label %5373

5373:                                             ; preds = %5340, %5338, %5307
  %5374 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5374, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %5375 = load i32, ptr %43, align 4, !tbaa !9
  %5376 = load i32, ptr %42, align 4, !tbaa !9
  %5377 = add i32 %5376, %5375
  store i32 %5377, ptr %42, align 4, !tbaa !9
  %5378 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5378, ptr %10, align 4, !tbaa !9
  %5379 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5379, ptr %43, align 4, !tbaa !9
  %5380 = load i32, ptr %42, align 4, !tbaa !9
  %5381 = load i32, ptr %43, align 4, !tbaa !9
  %5382 = icmp ne i32 %5380, %5381
  %5383 = zext i1 %5382 to i32
  store i32 %5383, ptr %42, align 4, !tbaa !9
  %5384 = load i32, ptr %42, align 4, !tbaa !9
  %5385 = icmp ne i32 %5384, 0
  br i1 %5385, label %5386, label %5387

5386:                                             ; preds = %5373
  br label %5292

5387:                                             ; preds = %5373
  br label %5388

5388:                                             ; preds = %5387, %5268
  %5389 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5389, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %5390 = load i32, ptr %43, align 4, !tbaa !9
  %5391 = load i32, ptr %42, align 4, !tbaa !9
  %5392 = add i32 %5391, %5390
  store i32 %5392, ptr %42, align 4, !tbaa !9
  %5393 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5393, ptr %16, align 4, !tbaa !9
  %5394 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5394, ptr %43, align 4, !tbaa !9
  %5395 = load i32, ptr %42, align 4, !tbaa !9
  %5396 = load i32, ptr %43, align 4, !tbaa !9
  %5397 = icmp ult i32 %5395, %5396
  %5398 = zext i1 %5397 to i32
  store i32 %5398, ptr %42, align 4, !tbaa !9
  %5399 = load i32, ptr %42, align 4, !tbaa !9
  %5400 = icmp ne i32 %5399, 0
  br i1 %5400, label %5401, label %5402

5401:                                             ; preds = %5388
  br label %5268

5402:                                             ; preds = %5388
  br label %6274

5403:                                             ; preds = %5243
  %5404 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %5404, ptr %42, align 4, !tbaa !9
  %5405 = load ptr, ptr %6, align 8, !tbaa !5
  %5406 = getelementptr inbounds %struct.w2c_hermes, ptr %5405, i32 0, i32 6
  %5407 = load i32, ptr %42, align 4, !tbaa !9
  %5408 = zext i32 %5407 to i64
  %5409 = add i64 %5408, 4
  %5410 = call i32 @i32_load(ptr noundef %5406, i64 noundef %5409)
  store i32 %5410, ptr %42, align 4, !tbaa !9
  %5411 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5411, ptr %43, align 4, !tbaa !9
  %5412 = load i32, ptr %42, align 4, !tbaa !9
  %5413 = load i32, ptr %43, align 4, !tbaa !9
  %5414 = icmp ne i32 %5412, %5413
  %5415 = zext i1 %5414 to i32
  store i32 %5415, ptr %42, align 4, !tbaa !9
  %5416 = load i32, ptr %42, align 4, !tbaa !9
  %5417 = icmp ne i32 %5416, 0
  br i1 %5417, label %5418, label %5419

5418:                                             ; preds = %5403
  br label %6274

5419:                                             ; preds = %5403
  %5420 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5420, ptr %42, align 4, !tbaa !9
  %5421 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5421, ptr %43, align 4, !tbaa !9
  %5422 = load i32, ptr %43, align 4, !tbaa !9
  %5423 = load i32, ptr %42, align 4, !tbaa !9
  %5424 = sub i32 %5423, %5422
  store i32 %5424, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %5425 = load i32, ptr %43, align 4, !tbaa !9
  %5426 = icmp eq i32 %5425, 0
  %5427 = xor i1 %5426, true
  %5428 = xor i1 %5427, true
  %5429 = zext i1 %5428 to i32
  %5430 = sext i32 %5429 to i64
  %5431 = call i64 @llvm.expect.i64(i64 %5430, i64 0)
  %5432 = icmp ne i64 %5431, 0
  br i1 %5432, label %5433, label %5435

5433:                                             ; preds = %5419
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

5434:                                             ; No predecessors!
  br label %5457

5435:                                             ; preds = %5419
  %5436 = load i32, ptr %42, align 4, !tbaa !9
  %5437 = icmp eq i32 %5436, -2147483648
  br i1 %5437, label %5438, label %5441

5438:                                             ; preds = %5435
  %5439 = load i32, ptr %43, align 4, !tbaa !9
  %5440 = icmp eq i32 %5439, -1
  br label %5441

5441:                                             ; preds = %5438, %5435
  %5442 = phi i1 [ false, %5435 ], [ %5440, %5438 ]
  %5443 = xor i1 %5442, true
  %5444 = xor i1 %5443, true
  %5445 = zext i1 %5444 to i32
  %5446 = sext i32 %5445 to i64
  %5447 = call i64 @llvm.expect.i64(i64 %5446, i64 0)
  %5448 = icmp ne i64 %5447, 0
  br i1 %5448, label %5449, label %5451

5449:                                             ; preds = %5441
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

5450:                                             ; No predecessors!
  br label %5455

5451:                                             ; preds = %5441
  %5452 = load i32, ptr %42, align 4, !tbaa !9
  %5453 = load i32, ptr %43, align 4, !tbaa !9
  %5454 = sdiv i32 %5452, %5453
  br label %5455

5455:                                             ; preds = %5451, %5450
  %5456 = phi i32 [ 0, %5450 ], [ %5454, %5451 ]
  br label %5457

5457:                                             ; preds = %5455, %5434
  %5458 = phi i32 [ 0, %5434 ], [ %5456, %5455 ]
  store i32 %5458, ptr %42, align 4, !tbaa !9
  %5459 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5459, ptr %27, align 4, !tbaa !9
  %5460 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5460, ptr %43, align 4, !tbaa !9
  %5461 = load i32, ptr %42, align 4, !tbaa !9
  %5462 = load i32, ptr %43, align 4, !tbaa !9
  %5463 = icmp ugt i32 %5461, %5462
  %5464 = zext i1 %5463 to i32
  store i32 %5464, ptr %42, align 4, !tbaa !9
  %5465 = load i32, ptr %42, align 4, !tbaa !9
  %5466 = icmp ne i32 %5465, 0
  br i1 %5466, label %5467, label %5468

5467:                                             ; preds = %5457
  br label %5946

5468:                                             ; preds = %5457
  %5469 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %5469, ptr %42, align 4, !tbaa !9
  %5470 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5470, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %5471 = load i32, ptr %44, align 4, !tbaa !9
  %5472 = load i32, ptr %43, align 4, !tbaa !9
  %5473 = add i32 %5472, %5471
  store i32 %5473, ptr %43, align 4, !tbaa !9
  %5474 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5474, ptr %16, align 4, !tbaa !9
  %5475 = load i32, ptr %42, align 4, !tbaa !9
  %5476 = load i32, ptr %43, align 4, !tbaa !9
  %5477 = icmp ult i32 %5475, %5476
  %5478 = zext i1 %5477 to i32
  store i32 %5478, ptr %42, align 4, !tbaa !9
  %5479 = load i32, ptr %42, align 4, !tbaa !9
  %5480 = icmp ne i32 %5479, 0
  br i1 %5480, label %5481, label %5875

5481:                                             ; preds = %5468
  %5482 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5482, ptr %42, align 4, !tbaa !9
  %5483 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %5483, ptr %43, align 4, !tbaa !9
  %5484 = load i32, ptr %43, align 4, !tbaa !9
  %5485 = load i32, ptr %42, align 4, !tbaa !9
  %5486 = sub i32 %5485, %5484
  store i32 %5486, ptr %42, align 4, !tbaa !9
  %5487 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5487, ptr %17, align 4, !tbaa !9
  %5488 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %5488, ptr %43, align 4, !tbaa !9
  %5489 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5489, ptr %44, align 4, !tbaa !9
  %5490 = load i32, ptr %44, align 4, !tbaa !9
  %5491 = load i32, ptr %43, align 4, !tbaa !9
  %5492 = sub i32 %5491, %5490
  store i32 %5492, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %5493 = load i32, ptr %44, align 4, !tbaa !9
  %5494 = icmp eq i32 %5493, 0
  %5495 = xor i1 %5494, true
  %5496 = xor i1 %5495, true
  %5497 = zext i1 %5496 to i32
  %5498 = sext i32 %5497 to i64
  %5499 = call i64 @llvm.expect.i64(i64 %5498, i64 0)
  %5500 = icmp ne i64 %5499, 0
  br i1 %5500, label %5501, label %5503

5501:                                             ; preds = %5481
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

5502:                                             ; No predecessors!
  br label %5525

5503:                                             ; preds = %5481
  %5504 = load i32, ptr %43, align 4, !tbaa !9
  %5505 = icmp eq i32 %5504, -2147483648
  br i1 %5505, label %5506, label %5509

5506:                                             ; preds = %5503
  %5507 = load i32, ptr %44, align 4, !tbaa !9
  %5508 = icmp eq i32 %5507, -1
  br label %5509

5509:                                             ; preds = %5506, %5503
  %5510 = phi i1 [ false, %5503 ], [ %5508, %5506 ]
  %5511 = xor i1 %5510, true
  %5512 = xor i1 %5511, true
  %5513 = zext i1 %5512 to i32
  %5514 = sext i32 %5513 to i64
  %5515 = call i64 @llvm.expect.i64(i64 %5514, i64 0)
  %5516 = icmp ne i64 %5515, 0
  br i1 %5516, label %5517, label %5519

5517:                                             ; preds = %5509
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

5518:                                             ; No predecessors!
  br label %5523

5519:                                             ; preds = %5509
  %5520 = load i32, ptr %43, align 4, !tbaa !9
  %5521 = load i32, ptr %44, align 4, !tbaa !9
  %5522 = sdiv i32 %5520, %5521
  br label %5523

5523:                                             ; preds = %5519, %5518
  %5524 = phi i32 [ 0, %5518 ], [ %5522, %5519 ]
  br label %5525

5525:                                             ; preds = %5523, %5502
  %5526 = phi i32 [ 0, %5502 ], [ %5524, %5523 ]
  store i32 %5526, ptr %43, align 4, !tbaa !9
  %5527 = load i32, ptr %42, align 4, !tbaa !9
  %5528 = load i32, ptr %43, align 4, !tbaa !9
  %5529 = icmp ule i32 %5527, %5528
  %5530 = zext i1 %5529 to i32
  store i32 %5530, ptr %42, align 4, !tbaa !9
  %5531 = load i32, ptr %42, align 4, !tbaa !9
  %5532 = icmp ne i32 %5531, 0
  br i1 %5532, label %5533, label %5577

5533:                                             ; preds = %5525
  %5534 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5534, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %5535 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5535, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %5536 = load i32, ptr %45, align 4, !tbaa !9
  %5537 = load i32, ptr %44, align 4, !tbaa !9
  %5538 = mul i32 %5537, %5536
  store i32 %5538, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %5539 = load i32, ptr %45, align 4, !tbaa !9
  %5540 = load i32, ptr %44, align 4, !tbaa !9
  %5541 = sub i32 %5540, %5539
  store i32 %5541, ptr %44, align 4, !tbaa !9
  %5542 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %5542, ptr %10, align 4, !tbaa !9
  %5543 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5543, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %5544 = load i32, ptr %46, align 4, !tbaa !9
  %5545 = icmp eq i32 %5544, 0
  %5546 = xor i1 %5545, true
  %5547 = xor i1 %5546, true
  %5548 = zext i1 %5547 to i32
  %5549 = sext i32 %5548 to i64
  %5550 = call i64 @llvm.expect.i64(i64 %5549, i64 0)
  %5551 = icmp ne i64 %5550, 0
  br i1 %5551, label %5552, label %5554

5552:                                             ; preds = %5533
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

5553:                                             ; No predecessors!
  br label %5558

5554:                                             ; preds = %5533
  %5555 = load i32, ptr %45, align 4, !tbaa !9
  %5556 = load i32, ptr %46, align 4, !tbaa !9
  %5557 = urem i32 %5555, %5556
  br label %5558

5558:                                             ; preds = %5554, %5553
  %5559 = phi i32 [ 0, %5553 ], [ %5557, %5554 ]
  store i32 %5559, ptr %45, align 4, !tbaa !9
  %5560 = load i32, ptr %45, align 4, !tbaa !9
  %5561 = load i32, ptr %44, align 4, !tbaa !9
  %5562 = sub i32 %5561, %5560
  store i32 %5562, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %5563 = load i32, ptr %45, align 4, !tbaa !9
  %5564 = load i32, ptr %44, align 4, !tbaa !9
  %5565 = add i32 %5564, %5563
  store i32 %5565, ptr %44, align 4, !tbaa !9
  %5566 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %5566, ptr %10, align 4, !tbaa !9
  %5567 = load ptr, ptr %6, align 8, !tbaa !5
  %5568 = load i32, ptr %42, align 4, !tbaa !9
  %5569 = load i32, ptr %43, align 4, !tbaa !9
  %5570 = load i32, ptr %44, align 4, !tbaa !9
  %5571 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %5567, i32 noundef %5568, i32 noundef %5569, i32 noundef %5570)
  store i32 %5571, ptr %42, align 4, !tbaa !9
  %5572 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5572, ptr %43, align 4, !tbaa !9
  %5573 = load i32, ptr %43, align 4, !tbaa !9
  %5574 = load i32, ptr %42, align 4, !tbaa !9
  %5575 = add i32 %5574, %5573
  store i32 %5575, ptr %42, align 4, !tbaa !9
  %5576 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5576, ptr %19, align 4, !tbaa !9
  br label %5946

5577:                                             ; preds = %5525
  %5578 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5578, ptr %42, align 4, !tbaa !9
  store i32 357913942, ptr %43, align 4, !tbaa !9
  %5579 = load i32, ptr %42, align 4, !tbaa !9
  %5580 = load i32, ptr %43, align 4, !tbaa !9
  %5581 = icmp uge i32 %5579, %5580
  %5582 = zext i1 %5581 to i32
  store i32 %5582, ptr %42, align 4, !tbaa !9
  %5583 = load i32, ptr %42, align 4, !tbaa !9
  %5584 = icmp ne i32 %5583, 0
  br i1 %5584, label %5585, label %5586

5585:                                             ; preds = %5577
  br label %15476

5586:                                             ; preds = %5577
  store i32 357913941, ptr %42, align 4, !tbaa !9
  %5587 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %5587, ptr %43, align 4, !tbaa !9
  %5588 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5588, ptr %44, align 4, !tbaa !9
  %5589 = load i32, ptr %44, align 4, !tbaa !9
  %5590 = load i32, ptr %43, align 4, !tbaa !9
  %5591 = sub i32 %5590, %5589
  store i32 %5591, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %5592 = load i32, ptr %44, align 4, !tbaa !9
  %5593 = icmp eq i32 %5592, 0
  %5594 = xor i1 %5593, true
  %5595 = xor i1 %5594, true
  %5596 = zext i1 %5595 to i32
  %5597 = sext i32 %5596 to i64
  %5598 = call i64 @llvm.expect.i64(i64 %5597, i64 0)
  %5599 = icmp ne i64 %5598, 0
  br i1 %5599, label %5600, label %5602

5600:                                             ; preds = %5586
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

5601:                                             ; No predecessors!
  br label %5624

5602:                                             ; preds = %5586
  %5603 = load i32, ptr %43, align 4, !tbaa !9
  %5604 = icmp eq i32 %5603, -2147483648
  br i1 %5604, label %5605, label %5608

5605:                                             ; preds = %5602
  %5606 = load i32, ptr %44, align 4, !tbaa !9
  %5607 = icmp eq i32 %5606, -1
  br label %5608

5608:                                             ; preds = %5605, %5602
  %5609 = phi i1 [ false, %5602 ], [ %5607, %5605 ]
  %5610 = xor i1 %5609, true
  %5611 = xor i1 %5610, true
  %5612 = zext i1 %5611 to i32
  %5613 = sext i32 %5612 to i64
  %5614 = call i64 @llvm.expect.i64(i64 %5613, i64 0)
  %5615 = icmp ne i64 %5614, 0
  br i1 %5615, label %5616, label %5618

5616:                                             ; preds = %5608
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

5617:                                             ; No predecessors!
  br label %5622

5618:                                             ; preds = %5608
  %5619 = load i32, ptr %43, align 4, !tbaa !9
  %5620 = load i32, ptr %44, align 4, !tbaa !9
  %5621 = sdiv i32 %5619, %5620
  br label %5622

5622:                                             ; preds = %5618, %5617
  %5623 = phi i32 [ 0, %5617 ], [ %5621, %5618 ]
  br label %5624

5624:                                             ; preds = %5622, %5601
  %5625 = phi i32 [ 0, %5601 ], [ %5623, %5622 ]
  store i32 %5625, ptr %43, align 4, !tbaa !9
  %5626 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5626, ptr %12, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %5627 = load i32, ptr %44, align 4, !tbaa !9
  %5628 = and i32 %5627, 31
  %5629 = load i32, ptr %43, align 4, !tbaa !9
  %5630 = shl i32 %5629, %5628
  store i32 %5630, ptr %43, align 4, !tbaa !9
  %5631 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5631, ptr %10, align 4, !tbaa !9
  %5632 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5632, ptr %44, align 4, !tbaa !9
  %5633 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5633, ptr %45, align 4, !tbaa !9
  %5634 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5634, ptr %46, align 4, !tbaa !9
  %5635 = load i32, ptr %45, align 4, !tbaa !9
  %5636 = load i32, ptr %46, align 4, !tbaa !9
  %5637 = icmp ugt i32 %5635, %5636
  %5638 = zext i1 %5637 to i32
  store i32 %5638, ptr %45, align 4, !tbaa !9
  %5639 = load i32, ptr %45, align 4, !tbaa !9
  %5640 = icmp ne i32 %5639, 0
  br i1 %5640, label %5641, label %5643

5641:                                             ; preds = %5624
  %5642 = load i32, ptr %43, align 4, !tbaa !9
  br label %5645

5643:                                             ; preds = %5624
  %5644 = load i32, ptr %44, align 4, !tbaa !9
  br label %5645

5645:                                             ; preds = %5643, %5641
  %5646 = phi i32 [ %5642, %5641 ], [ %5644, %5643 ]
  store i32 %5646, ptr %43, align 4, !tbaa !9
  %5647 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5647, ptr %44, align 4, !tbaa !9
  store i32 178956970, ptr %45, align 4, !tbaa !9
  %5648 = load i32, ptr %44, align 4, !tbaa !9
  %5649 = load i32, ptr %45, align 4, !tbaa !9
  %5650 = icmp uge i32 %5648, %5649
  %5651 = zext i1 %5650 to i32
  store i32 %5651, ptr %44, align 4, !tbaa !9
  %5652 = load i32, ptr %44, align 4, !tbaa !9
  %5653 = icmp ne i32 %5652, 0
  br i1 %5653, label %5654, label %5656

5654:                                             ; preds = %5645
  %5655 = load i32, ptr %42, align 4, !tbaa !9
  br label %5658

5656:                                             ; preds = %5645
  %5657 = load i32, ptr %43, align 4, !tbaa !9
  br label %5658

5658:                                             ; preds = %5656, %5654
  %5659 = phi i32 [ %5655, %5654 ], [ %5657, %5656 ]
  store i32 %5659, ptr %42, align 4, !tbaa !9
  %5660 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5660, ptr %10, align 4, !tbaa !9
  store i32 357913942, ptr %43, align 4, !tbaa !9
  %5661 = load i32, ptr %42, align 4, !tbaa !9
  %5662 = load i32, ptr %43, align 4, !tbaa !9
  %5663 = icmp uge i32 %5661, %5662
  %5664 = zext i1 %5663 to i32
  store i32 %5664, ptr %42, align 4, !tbaa !9
  %5665 = load i32, ptr %42, align 4, !tbaa !9
  %5666 = icmp ne i32 %5665, 0
  br i1 %5666, label %5667, label %5668

5667:                                             ; preds = %5658
  br label %15476

5668:                                             ; preds = %5658
  %5669 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5669, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %5670 = load i32, ptr %43, align 4, !tbaa !9
  %5671 = load i32, ptr %42, align 4, !tbaa !9
  %5672 = mul i32 %5671, %5670
  store i32 %5672, ptr %42, align 4, !tbaa !9
  %5673 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5673, ptr %22, align 4, !tbaa !9
  %5674 = load ptr, ptr %6, align 8, !tbaa !5
  %5675 = load i32, ptr %42, align 4, !tbaa !9
  %5676 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %5674, i32 noundef %5675)
  store i32 %5676, ptr %42, align 4, !tbaa !9
  %5677 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5677, ptr %16, align 4, !tbaa !9
  %5678 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %5678, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %5679 = load i32, ptr %44, align 4, !tbaa !9
  %5680 = load i32, ptr %43, align 4, !tbaa !9
  %5681 = mul i32 %5680, %5679
  store i32 %5681, ptr %43, align 4, !tbaa !9
  %5682 = load i32, ptr %43, align 4, !tbaa !9
  %5683 = load i32, ptr %42, align 4, !tbaa !9
  %5684 = add i32 %5683, %5682
  store i32 %5684, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %5685 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5685, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %5686 = load i32, ptr %45, align 4, !tbaa !9
  %5687 = load i32, ptr %44, align 4, !tbaa !9
  %5688 = mul i32 %5687, %5686
  store i32 %5688, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %5689 = load i32, ptr %45, align 4, !tbaa !9
  %5690 = load i32, ptr %44, align 4, !tbaa !9
  %5691 = sub i32 %5690, %5689
  store i32 %5691, ptr %44, align 4, !tbaa !9
  %5692 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %5692, ptr %10, align 4, !tbaa !9
  %5693 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5693, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %5694 = load i32, ptr %46, align 4, !tbaa !9
  %5695 = icmp eq i32 %5694, 0
  %5696 = xor i1 %5695, true
  %5697 = xor i1 %5696, true
  %5698 = zext i1 %5697 to i32
  %5699 = sext i32 %5698 to i64
  %5700 = call i64 @llvm.expect.i64(i64 %5699, i64 0)
  %5701 = icmp ne i64 %5700, 0
  br i1 %5701, label %5702, label %5704

5702:                                             ; preds = %5668
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

5703:                                             ; No predecessors!
  br label %5708

5704:                                             ; preds = %5668
  %5705 = load i32, ptr %45, align 4, !tbaa !9
  %5706 = load i32, ptr %46, align 4, !tbaa !9
  %5707 = urem i32 %5705, %5706
  br label %5708

5708:                                             ; preds = %5704, %5703
  %5709 = phi i32 [ 0, %5703 ], [ %5707, %5704 ]
  store i32 %5709, ptr %45, align 4, !tbaa !9
  %5710 = load i32, ptr %45, align 4, !tbaa !9
  %5711 = load i32, ptr %44, align 4, !tbaa !9
  %5712 = sub i32 %5711, %5710
  store i32 %5712, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %5713 = load i32, ptr %45, align 4, !tbaa !9
  %5714 = load i32, ptr %44, align 4, !tbaa !9
  %5715 = add i32 %5714, %5713
  store i32 %5715, ptr %44, align 4, !tbaa !9
  %5716 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %5716, ptr %17, align 4, !tbaa !9
  %5717 = load ptr, ptr %6, align 8, !tbaa !5
  %5718 = load i32, ptr %42, align 4, !tbaa !9
  %5719 = load i32, ptr %43, align 4, !tbaa !9
  %5720 = load i32, ptr %44, align 4, !tbaa !9
  %5721 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %5717, i32 noundef %5718, i32 noundef %5719, i32 noundef %5720)
  store i32 %5721, ptr %42, align 4, !tbaa !9
  %5722 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5722, ptr %24, align 4, !tbaa !9
  %5723 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5723, ptr %12, align 4, !tbaa !9
  %5724 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5724, ptr %42, align 4, !tbaa !9
  %5725 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5725, ptr %43, align 4, !tbaa !9
  %5726 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5726, ptr %10, align 4, !tbaa !9
  %5727 = load i32, ptr %42, align 4, !tbaa !9
  %5728 = load i32, ptr %43, align 4, !tbaa !9
  %5729 = icmp ne i32 %5727, %5728
  %5730 = zext i1 %5729 to i32
  store i32 %5730, ptr %42, align 4, !tbaa !9
  %5731 = load i32, ptr %42, align 4, !tbaa !9
  %5732 = icmp ne i32 %5731, 0
  br i1 %5732, label %5733, label %5846

5733:                                             ; preds = %5708
  br label %5734

5734:                                             ; preds = %5804, %5733
  %5735 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5735, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %5736 = load i32, ptr %43, align 4, !tbaa !9
  %5737 = load i32, ptr %42, align 4, !tbaa !9
  %5738 = sub i32 %5737, %5736
  store i32 %5738, ptr %42, align 4, !tbaa !9
  %5739 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5739, ptr %12, align 4, !tbaa !9
  %5740 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5740, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %5741 = load i32, ptr %44, align 4, !tbaa !9
  %5742 = load i32, ptr %43, align 4, !tbaa !9
  %5743 = sub i32 %5742, %5741
  store i32 %5743, ptr %43, align 4, !tbaa !9
  %5744 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5744, ptr %10, align 4, !tbaa !9
  %5745 = load ptr, ptr %6, align 8, !tbaa !5
  %5746 = getelementptr inbounds %struct.w2c_hermes, ptr %5745, i32 0, i32 6
  %5747 = load i32, ptr %43, align 4, !tbaa !9
  %5748 = zext i32 %5747 to i64
  %5749 = call i32 @i32_load(ptr noundef %5746, i64 noundef %5748)
  store i32 %5749, ptr %43, align 4, !tbaa !9
  %5750 = load ptr, ptr %6, align 8, !tbaa !5
  %5751 = getelementptr inbounds %struct.w2c_hermes, ptr %5750, i32 0, i32 6
  %5752 = load i32, ptr %42, align 4, !tbaa !9
  %5753 = zext i32 %5752 to i64
  %5754 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5751, i64 noundef %5753, i32 noundef %5754)
  %5755 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5755, ptr %42, align 4, !tbaa !9
  %5756 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5756, ptr %43, align 4, !tbaa !9
  %5757 = load ptr, ptr %6, align 8, !tbaa !5
  %5758 = getelementptr inbounds %struct.w2c_hermes, ptr %5757, i32 0, i32 6
  %5759 = load i32, ptr %43, align 4, !tbaa !9
  %5760 = zext i32 %5759 to i64
  %5761 = add i64 %5760, 4
  %5762 = call i32 @i32_load(ptr noundef %5758, i64 noundef %5761)
  store i32 %5762, ptr %43, align 4, !tbaa !9
  %5763 = load ptr, ptr %6, align 8, !tbaa !5
  %5764 = getelementptr inbounds %struct.w2c_hermes, ptr %5763, i32 0, i32 6
  %5765 = load i32, ptr %42, align 4, !tbaa !9
  %5766 = zext i32 %5765 to i64
  %5767 = add i64 %5766, 4
  %5768 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5764, i64 noundef %5767, i32 noundef %5768)
  %5769 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5769, ptr %42, align 4, !tbaa !9
  %5770 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5770, ptr %43, align 4, !tbaa !9
  %5771 = load ptr, ptr %6, align 8, !tbaa !5
  %5772 = getelementptr inbounds %struct.w2c_hermes, ptr %5771, i32 0, i32 6
  %5773 = load i32, ptr %43, align 4, !tbaa !9
  %5774 = zext i32 %5773 to i64
  %5775 = add i64 %5774, 8
  %5776 = call i32 @i32_load(ptr noundef %5772, i64 noundef %5775)
  store i32 %5776, ptr %43, align 4, !tbaa !9
  %5777 = load ptr, ptr %6, align 8, !tbaa !5
  %5778 = getelementptr inbounds %struct.w2c_hermes, ptr %5777, i32 0, i32 6
  %5779 = load i32, ptr %42, align 4, !tbaa !9
  %5780 = zext i32 %5779 to i64
  %5781 = add i64 %5780, 8
  %5782 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5778, i64 noundef %5781, i32 noundef %5782)
  %5783 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5783, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %5784 = load ptr, ptr %6, align 8, !tbaa !5
  %5785 = getelementptr inbounds %struct.w2c_hermes, ptr %5784, i32 0, i32 6
  %5786 = load i32, ptr %42, align 4, !tbaa !9
  %5787 = zext i32 %5786 to i64
  %5788 = add i64 %5787, 8
  %5789 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5785, i64 noundef %5788, i32 noundef %5789)
  %5790 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5790, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %5791 = load ptr, ptr %6, align 8, !tbaa !5
  %5792 = getelementptr inbounds %struct.w2c_hermes, ptr %5791, i32 0, i32 6
  %5793 = load i32, ptr %42, align 4, !tbaa !9
  %5794 = zext i32 %5793 to i64
  %5795 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5792, i64 noundef %5794, i64 noundef %5795)
  %5796 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5796, ptr %42, align 4, !tbaa !9
  %5797 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5797, ptr %43, align 4, !tbaa !9
  %5798 = load i32, ptr %42, align 4, !tbaa !9
  %5799 = load i32, ptr %43, align 4, !tbaa !9
  %5800 = icmp ne i32 %5798, %5799
  %5801 = zext i1 %5800 to i32
  store i32 %5801, ptr %42, align 4, !tbaa !9
  %5802 = load i32, ptr %42, align 4, !tbaa !9
  %5803 = icmp ne i32 %5802, 0
  br i1 %5803, label %5804, label %5805

5804:                                             ; preds = %5734
  br label %5734

5805:                                             ; preds = %5734
  br label %5806

5806:                                             ; preds = %5844, %5805
  %5807 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5807, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %5808 = load i32, ptr %43, align 4, !tbaa !9
  %5809 = load i32, ptr %42, align 4, !tbaa !9
  %5810 = sub i32 %5809, %5808
  store i32 %5810, ptr %42, align 4, !tbaa !9
  %5811 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5811, ptr %10, align 4, !tbaa !9
  %5812 = load ptr, ptr %6, align 8, !tbaa !5
  %5813 = getelementptr inbounds %struct.w2c_hermes, ptr %5812, i32 0, i32 6
  %5814 = load i32, ptr %42, align 4, !tbaa !9
  %5815 = zext i32 %5814 to i64
  %5816 = call i32 @i32_load(ptr noundef %5813, i64 noundef %5815)
  store i32 %5816, ptr %42, align 4, !tbaa !9
  %5817 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5817, ptr %27, align 4, !tbaa !9
  %5818 = load i32, ptr %42, align 4, !tbaa !9
  %5819 = icmp ne i32 %5818, 0
  br i1 %5819, label %5820, label %5834

5820:                                             ; preds = %5806
  %5821 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5821, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %5822 = load i32, ptr %43, align 4, !tbaa !9
  %5823 = load i32, ptr %42, align 4, !tbaa !9
  %5824 = sub i32 %5823, %5822
  store i32 %5824, ptr %42, align 4, !tbaa !9
  %5825 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %5825, ptr %43, align 4, !tbaa !9
  %5826 = load ptr, ptr %6, align 8, !tbaa !5
  %5827 = getelementptr inbounds %struct.w2c_hermes, ptr %5826, i32 0, i32 6
  %5828 = load i32, ptr %42, align 4, !tbaa !9
  %5829 = zext i32 %5828 to i64
  %5830 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5827, i64 noundef %5829, i32 noundef %5830)
  %5831 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %5831, ptr %42, align 4, !tbaa !9
  %5832 = load ptr, ptr %6, align 8, !tbaa !5
  %5833 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %5832, i32 noundef %5833)
  br label %5834

5834:                                             ; preds = %5820, %5806
  %5835 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5835, ptr %42, align 4, !tbaa !9
  %5836 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5836, ptr %19, align 4, !tbaa !9
  %5837 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5837, ptr %43, align 4, !tbaa !9
  %5838 = load i32, ptr %42, align 4, !tbaa !9
  %5839 = load i32, ptr %43, align 4, !tbaa !9
  %5840 = icmp ne i32 %5838, %5839
  %5841 = zext i1 %5840 to i32
  store i32 %5841, ptr %42, align 4, !tbaa !9
  %5842 = load i32, ptr %42, align 4, !tbaa !9
  %5843 = icmp ne i32 %5842, 0
  br i1 %5843, label %5844, label %5845

5844:                                             ; preds = %5834
  br label %5806

5845:                                             ; preds = %5834
  br label %5846

5846:                                             ; preds = %5845, %5708
  %5847 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5847, ptr %42, align 4, !tbaa !9
  %5848 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %5848, ptr %43, align 4, !tbaa !9
  %5849 = load i32, ptr %43, align 4, !tbaa !9
  %5850 = load i32, ptr %42, align 4, !tbaa !9
  %5851 = add i32 %5850, %5849
  store i32 %5851, ptr %42, align 4, !tbaa !9
  %5852 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5852, ptr %19, align 4, !tbaa !9
  %5853 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5853, ptr %42, align 4, !tbaa !9
  %5854 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %5854, ptr %43, align 4, !tbaa !9
  %5855 = load i32, ptr %43, align 4, !tbaa !9
  %5856 = load i32, ptr %42, align 4, !tbaa !9
  %5857 = add i32 %5856, %5855
  store i32 %5857, ptr %42, align 4, !tbaa !9
  %5858 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5858, ptr %24, align 4, !tbaa !9
  %5859 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5859, ptr %42, align 4, !tbaa !9
  %5860 = load i32, ptr %42, align 4, !tbaa !9
  %5861 = icmp ne i32 %5860, 0
  %5862 = xor i1 %5861, true
  %5863 = zext i1 %5862 to i32
  store i32 %5863, ptr %42, align 4, !tbaa !9
  %5864 = load i32, ptr %42, align 4, !tbaa !9
  %5865 = icmp ne i32 %5864, 0
  br i1 %5865, label %5866, label %5869

5866:                                             ; preds = %5846
  %5867 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5867, ptr %42, align 4, !tbaa !9
  %5868 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5868, ptr %21, align 4, !tbaa !9
  br label %5946

5869:                                             ; preds = %5846
  %5870 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5870, ptr %42, align 4, !tbaa !9
  %5871 = load ptr, ptr %6, align 8, !tbaa !5
  %5872 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %5871, i32 noundef %5872)
  %5873 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5873, ptr %42, align 4, !tbaa !9
  %5874 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5874, ptr %21, align 4, !tbaa !9
  br label %5946

5875:                                             ; preds = %5468
  %5876 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5876, ptr %42, align 4, !tbaa !9
  %5877 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %5877, ptr %43, align 4, !tbaa !9
  %5878 = load i32, ptr %42, align 4, !tbaa !9
  %5879 = load i32, ptr %43, align 4, !tbaa !9
  %5880 = icmp uge i32 %5878, %5879
  %5881 = zext i1 %5880 to i32
  store i32 %5881, ptr %42, align 4, !tbaa !9
  %5882 = load i32, ptr %42, align 4, !tbaa !9
  %5883 = icmp ne i32 %5882, 0
  br i1 %5883, label %5884, label %5885

5884:                                             ; preds = %5875
  br label %5946

5885:                                             ; preds = %5875
  %5886 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5886, ptr %42, align 4, !tbaa !9
  %5887 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5887, ptr %43, align 4, !tbaa !9
  %5888 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5888, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %5889 = load i32, ptr %45, align 4, !tbaa !9
  %5890 = load i32, ptr %44, align 4, !tbaa !9
  %5891 = mul i32 %5890, %5889
  store i32 %5891, ptr %44, align 4, !tbaa !9
  %5892 = load i32, ptr %44, align 4, !tbaa !9
  %5893 = load i32, ptr %43, align 4, !tbaa !9
  %5894 = add i32 %5893, %5892
  store i32 %5894, ptr %43, align 4, !tbaa !9
  %5895 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5895, ptr %12, align 4, !tbaa !9
  %5896 = load i32, ptr %42, align 4, !tbaa !9
  %5897 = load i32, ptr %43, align 4, !tbaa !9
  %5898 = icmp eq i32 %5896, %5897
  %5899 = zext i1 %5898 to i32
  store i32 %5899, ptr %42, align 4, !tbaa !9
  %5900 = load i32, ptr %42, align 4, !tbaa !9
  %5901 = icmp ne i32 %5900, 0
  br i1 %5901, label %5902, label %5903

5902:                                             ; preds = %5885
  br label %5946

5903:                                             ; preds = %5885
  br label %5904

5904:                                             ; preds = %5942, %5903
  %5905 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5905, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %5906 = load i32, ptr %43, align 4, !tbaa !9
  %5907 = load i32, ptr %42, align 4, !tbaa !9
  %5908 = sub i32 %5907, %5906
  store i32 %5908, ptr %42, align 4, !tbaa !9
  %5909 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5909, ptr %10, align 4, !tbaa !9
  %5910 = load ptr, ptr %6, align 8, !tbaa !5
  %5911 = getelementptr inbounds %struct.w2c_hermes, ptr %5910, i32 0, i32 6
  %5912 = load i32, ptr %42, align 4, !tbaa !9
  %5913 = zext i32 %5912 to i64
  %5914 = call i32 @i32_load(ptr noundef %5911, i64 noundef %5913)
  store i32 %5914, ptr %42, align 4, !tbaa !9
  %5915 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5915, ptr %17, align 4, !tbaa !9
  %5916 = load i32, ptr %42, align 4, !tbaa !9
  %5917 = icmp ne i32 %5916, 0
  br i1 %5917, label %5918, label %5932

5918:                                             ; preds = %5904
  %5919 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5919, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %5920 = load i32, ptr %43, align 4, !tbaa !9
  %5921 = load i32, ptr %42, align 4, !tbaa !9
  %5922 = sub i32 %5921, %5920
  store i32 %5922, ptr %42, align 4, !tbaa !9
  %5923 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5923, ptr %43, align 4, !tbaa !9
  %5924 = load ptr, ptr %6, align 8, !tbaa !5
  %5925 = getelementptr inbounds %struct.w2c_hermes, ptr %5924, i32 0, i32 6
  %5926 = load i32, ptr %42, align 4, !tbaa !9
  %5927 = zext i32 %5926 to i64
  %5928 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5925, i64 noundef %5927, i32 noundef %5928)
  %5929 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5929, ptr %42, align 4, !tbaa !9
  %5930 = load ptr, ptr %6, align 8, !tbaa !5
  %5931 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %5930, i32 noundef %5931)
  br label %5932

5932:                                             ; preds = %5918, %5904
  %5933 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5933, ptr %42, align 4, !tbaa !9
  %5934 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5934, ptr %19, align 4, !tbaa !9
  %5935 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5935, ptr %43, align 4, !tbaa !9
  %5936 = load i32, ptr %42, align 4, !tbaa !9
  %5937 = load i32, ptr %43, align 4, !tbaa !9
  %5938 = icmp ne i32 %5936, %5937
  %5939 = zext i1 %5938 to i32
  store i32 %5939, ptr %42, align 4, !tbaa !9
  %5940 = load i32, ptr %42, align 4, !tbaa !9
  %5941 = icmp ne i32 %5940, 0
  br i1 %5941, label %5942, label %5943

5942:                                             ; preds = %5932
  br label %5904

5943:                                             ; preds = %5932
  %5944 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5944, ptr %42, align 4, !tbaa !9
  %5945 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5945, ptr %19, align 4, !tbaa !9
  br label %5946

5946:                                             ; preds = %5943, %5902, %5884, %5869, %5866, %5558, %5467
  %5947 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %5947, ptr %42, align 4, !tbaa !9
  %5948 = load ptr, ptr %6, align 8, !tbaa !5
  %5949 = getelementptr inbounds %struct.w2c_hermes, ptr %5948, i32 0, i32 6
  %5950 = load i32, ptr %42, align 4, !tbaa !9
  %5951 = zext i32 %5950 to i64
  %5952 = add i64 %5951, 12
  %5953 = call i32 @i32_load(ptr noundef %5949, i64 noundef %5952)
  store i32 %5953, ptr %42, align 4, !tbaa !9
  %5954 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %5954, ptr %43, align 4, !tbaa !9
  %5955 = load ptr, ptr %6, align 8, !tbaa !5
  %5956 = getelementptr inbounds %struct.w2c_hermes, ptr %5955, i32 0, i32 6
  %5957 = load i32, ptr %43, align 4, !tbaa !9
  %5958 = zext i32 %5957 to i64
  %5959 = add i64 %5958, 8
  %5960 = call i32 @i32_load(ptr noundef %5956, i64 noundef %5959)
  store i32 %5960, ptr %43, align 4, !tbaa !9
  %5961 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %5961, ptr %22, align 4, !tbaa !9
  %5962 = load i32, ptr %43, align 4, !tbaa !9
  %5963 = load i32, ptr %42, align 4, !tbaa !9
  %5964 = sub i32 %5963, %5962
  store i32 %5964, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %5965 = load i32, ptr %42, align 4, !tbaa !9
  %5966 = load i32, ptr %43, align 4, !tbaa !9
  %5967 = and i32 %5966, 31
  %5968 = ashr i32 %5965, %5967
  store i32 %5968, ptr %42, align 4, !tbaa !9
  %5969 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5969, ptr %16, align 4, !tbaa !9
  %5970 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5970, ptr %42, align 4, !tbaa !9
  %5971 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5971, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %5972 = load i32, ptr %44, align 4, !tbaa !9
  %5973 = load i32, ptr %43, align 4, !tbaa !9
  %5974 = mul i32 %5973, %5972
  store i32 %5974, ptr %43, align 4, !tbaa !9
  %5975 = load i32, ptr %43, align 4, !tbaa !9
  %5976 = load i32, ptr %42, align 4, !tbaa !9
  %5977 = add i32 %5976, %5975
  store i32 %5977, ptr %42, align 4, !tbaa !9
  %5978 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5978, ptr %33, align 4, !tbaa !9
  %5979 = load ptr, ptr %6, align 8, !tbaa !5
  %5980 = getelementptr inbounds %struct.w2c_hermes, ptr %5979, i32 0, i32 6
  %5981 = load i32, ptr %42, align 4, !tbaa !9
  %5982 = zext i32 %5981 to i64
  %5983 = add i64 %5982, 4
  %5984 = call i32 @i32_load(ptr noundef %5980, i64 noundef %5983)
  store i32 %5984, ptr %42, align 4, !tbaa !9
  %5985 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %5985, ptr %10, align 4, !tbaa !9
  %5986 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %5986, ptr %43, align 4, !tbaa !9
  %5987 = load ptr, ptr %6, align 8, !tbaa !5
  %5988 = getelementptr inbounds %struct.w2c_hermes, ptr %5987, i32 0, i32 6
  %5989 = load i32, ptr %43, align 4, !tbaa !9
  %5990 = zext i32 %5989 to i64
  %5991 = add i64 %5990, 8
  %5992 = call i32 @i32_load(ptr noundef %5988, i64 noundef %5991)
  store i32 %5992, ptr %43, align 4, !tbaa !9
  %5993 = load i32, ptr %42, align 4, !tbaa !9
  %5994 = load i32, ptr %43, align 4, !tbaa !9
  %5995 = icmp ne i32 %5993, %5994
  %5996 = zext i1 %5995 to i32
  store i32 %5996, ptr %42, align 4, !tbaa !9
  %5997 = load i32, ptr %42, align 4, !tbaa !9
  %5998 = icmp ne i32 %5997, 0
  br i1 %5998, label %5999, label %6034

5999:                                             ; preds = %5946
  %6000 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6000, ptr %42, align 4, !tbaa !9
  %6001 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6001, ptr %43, align 4, !tbaa !9
  %6002 = load ptr, ptr %6, align 8, !tbaa !5
  %6003 = getelementptr inbounds %struct.w2c_hermes, ptr %6002, i32 0, i32 6
  %6004 = load i32, ptr %42, align 4, !tbaa !9
  %6005 = zext i32 %6004 to i64
  %6006 = add i64 %6005, 8
  %6007 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6003, i64 noundef %6006, i32 noundef %6007)
  %6008 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6008, ptr %42, align 4, !tbaa !9
  %6009 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %6009, ptr %43, align 4, !tbaa !9
  %6010 = load ptr, ptr %6, align 8, !tbaa !5
  %6011 = getelementptr inbounds %struct.w2c_hermes, ptr %6010, i32 0, i32 6
  %6012 = load i32, ptr %42, align 4, !tbaa !9
  %6013 = zext i32 %6012 to i64
  %6014 = add i64 %6013, 4
  %6015 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6011, i64 noundef %6014, i32 noundef %6015)
  %6016 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6016, ptr %42, align 4, !tbaa !9
  %6017 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6017, ptr %43, align 4, !tbaa !9
  %6018 = load ptr, ptr %6, align 8, !tbaa !5
  %6019 = getelementptr inbounds %struct.w2c_hermes, ptr %6018, i32 0, i32 6
  %6020 = load i32, ptr %42, align 4, !tbaa !9
  %6021 = zext i32 %6020 to i64
  %6022 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6019, i64 noundef %6021, i32 noundef %6022)
  %6023 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %6023, ptr %42, align 4, !tbaa !9
  %6024 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6024, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %6025 = load i32, ptr %44, align 4, !tbaa !9
  %6026 = load i32, ptr %43, align 4, !tbaa !9
  %6027 = add i32 %6026, %6025
  store i32 %6027, ptr %43, align 4, !tbaa !9
  %6028 = load ptr, ptr %6, align 8, !tbaa !5
  %6029 = getelementptr inbounds %struct.w2c_hermes, ptr %6028, i32 0, i32 6
  %6030 = load i32, ptr %42, align 4, !tbaa !9
  %6031 = zext i32 %6030 to i64
  %6032 = add i64 %6031, 4
  %6033 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6029, i64 noundef %6032, i32 noundef %6033)
  br label %6274

6034:                                             ; preds = %5946
  %6035 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6035, ptr %42, align 4, !tbaa !9
  %6036 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %6036, ptr %43, align 4, !tbaa !9
  %6037 = load ptr, ptr %6, align 8, !tbaa !5
  %6038 = getelementptr inbounds %struct.w2c_hermes, ptr %6037, i32 0, i32 6
  %6039 = load i32, ptr %43, align 4, !tbaa !9
  %6040 = zext i32 %6039 to i64
  %6041 = call i32 @i32_load(ptr noundef %6038, i64 noundef %6040)
  store i32 %6041, ptr %43, align 4, !tbaa !9
  %6042 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6042, ptr %32, align 4, !tbaa !9
  %6043 = load i32, ptr %43, align 4, !tbaa !9
  %6044 = load i32, ptr %42, align 4, !tbaa !9
  %6045 = sub i32 %6044, %6043
  store i32 %6045, ptr %42, align 4, !tbaa !9
  %6046 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6046, ptr %17, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %6047 = load i32, ptr %43, align 4, !tbaa !9
  %6048 = icmp eq i32 %6047, 0
  %6049 = xor i1 %6048, true
  %6050 = xor i1 %6049, true
  %6051 = zext i1 %6050 to i32
  %6052 = sext i32 %6051 to i64
  %6053 = call i64 @llvm.expect.i64(i64 %6052, i64 0)
  %6054 = icmp ne i64 %6053, 0
  br i1 %6054, label %6055, label %6057

6055:                                             ; preds = %6034
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

6056:                                             ; No predecessors!
  br label %6079

6057:                                             ; preds = %6034
  %6058 = load i32, ptr %42, align 4, !tbaa !9
  %6059 = icmp eq i32 %6058, -2147483648
  br i1 %6059, label %6060, label %6063

6060:                                             ; preds = %6057
  %6061 = load i32, ptr %43, align 4, !tbaa !9
  %6062 = icmp eq i32 %6061, -1
  br label %6063

6063:                                             ; preds = %6060, %6057
  %6064 = phi i1 [ false, %6057 ], [ %6062, %6060 ]
  %6065 = xor i1 %6064, true
  %6066 = xor i1 %6065, true
  %6067 = zext i1 %6066 to i32
  %6068 = sext i32 %6067 to i64
  %6069 = call i64 @llvm.expect.i64(i64 %6068, i64 0)
  %6070 = icmp ne i64 %6069, 0
  br i1 %6070, label %6071, label %6073

6071:                                             ; preds = %6063
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

6072:                                             ; No predecessors!
  br label %6077

6073:                                             ; preds = %6063
  %6074 = load i32, ptr %42, align 4, !tbaa !9
  %6075 = load i32, ptr %43, align 4, !tbaa !9
  %6076 = sdiv i32 %6074, %6075
  br label %6077

6077:                                             ; preds = %6073, %6072
  %6078 = phi i32 [ 0, %6072 ], [ %6076, %6073 ]
  br label %6079

6079:                                             ; preds = %6077, %6056
  %6080 = phi i32 [ 0, %6056 ], [ %6078, %6077 ]
  store i32 %6080, ptr %42, align 4, !tbaa !9
  %6081 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6081, ptr %27, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %6082 = load i32, ptr %43, align 4, !tbaa !9
  %6083 = load i32, ptr %42, align 4, !tbaa !9
  %6084 = add i32 %6083, %6082
  store i32 %6084, ptr %42, align 4, !tbaa !9
  %6085 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6085, ptr %12, align 4, !tbaa !9
  store i32 357913942, ptr %43, align 4, !tbaa !9
  %6086 = load i32, ptr %42, align 4, !tbaa !9
  %6087 = load i32, ptr %43, align 4, !tbaa !9
  %6088 = icmp ult i32 %6086, %6087
  %6089 = zext i1 %6088 to i32
  store i32 %6089, ptr %42, align 4, !tbaa !9
  %6090 = load i32, ptr %42, align 4, !tbaa !9
  %6091 = icmp ne i32 %6090, 0
  br i1 %6091, label %6092, label %6273

6092:                                             ; preds = %6079
  store i32 357913941, ptr %42, align 4, !tbaa !9
  %6093 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6093, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %6094 = load i32, ptr %44, align 4, !tbaa !9
  %6095 = and i32 %6094, 31
  %6096 = load i32, ptr %43, align 4, !tbaa !9
  %6097 = shl i32 %6096, %6095
  store i32 %6097, ptr %43, align 4, !tbaa !9
  %6098 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6098, ptr %10, align 4, !tbaa !9
  %6099 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6099, ptr %44, align 4, !tbaa !9
  %6100 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6100, ptr %45, align 4, !tbaa !9
  %6101 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6101, ptr %46, align 4, !tbaa !9
  %6102 = load i32, ptr %45, align 4, !tbaa !9
  %6103 = load i32, ptr %46, align 4, !tbaa !9
  %6104 = icmp ugt i32 %6102, %6103
  %6105 = zext i1 %6104 to i32
  store i32 %6105, ptr %45, align 4, !tbaa !9
  %6106 = load i32, ptr %45, align 4, !tbaa !9
  %6107 = icmp ne i32 %6106, 0
  br i1 %6107, label %6108, label %6110

6108:                                             ; preds = %6092
  %6109 = load i32, ptr %43, align 4, !tbaa !9
  br label %6112

6110:                                             ; preds = %6092
  %6111 = load i32, ptr %44, align 4, !tbaa !9
  br label %6112

6112:                                             ; preds = %6110, %6108
  %6113 = phi i32 [ %6109, %6108 ], [ %6111, %6110 ]
  store i32 %6113, ptr %43, align 4, !tbaa !9
  %6114 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6114, ptr %44, align 4, !tbaa !9
  store i32 178956970, ptr %45, align 4, !tbaa !9
  %6115 = load i32, ptr %44, align 4, !tbaa !9
  %6116 = load i32, ptr %45, align 4, !tbaa !9
  %6117 = icmp uge i32 %6115, %6116
  %6118 = zext i1 %6117 to i32
  store i32 %6118, ptr %44, align 4, !tbaa !9
  %6119 = load i32, ptr %44, align 4, !tbaa !9
  %6120 = icmp ne i32 %6119, 0
  br i1 %6120, label %6121, label %6123

6121:                                             ; preds = %6112
  %6122 = load i32, ptr %42, align 4, !tbaa !9
  br label %6125

6123:                                             ; preds = %6112
  %6124 = load i32, ptr %43, align 4, !tbaa !9
  br label %6125

6125:                                             ; preds = %6123, %6121
  %6126 = phi i32 [ %6122, %6121 ], [ %6124, %6123 ]
  store i32 %6126, ptr %42, align 4, !tbaa !9
  %6127 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6127, ptr %12, align 4, !tbaa !9
  %6128 = load i32, ptr %42, align 4, !tbaa !9
  %6129 = icmp ne i32 %6128, 0
  br i1 %6129, label %6130, label %6147

6130:                                             ; preds = %6125
  %6131 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6131, ptr %42, align 4, !tbaa !9
  store i32 357913942, ptr %43, align 4, !tbaa !9
  %6132 = load i32, ptr %42, align 4, !tbaa !9
  %6133 = load i32, ptr %43, align 4, !tbaa !9
  %6134 = icmp uge i32 %6132, %6133
  %6135 = zext i1 %6134 to i32
  store i32 %6135, ptr %42, align 4, !tbaa !9
  %6136 = load i32, ptr %42, align 4, !tbaa !9
  %6137 = icmp ne i32 %6136, 0
  br i1 %6137, label %6138, label %6139

6138:                                             ; preds = %6130
  br label %15476

6139:                                             ; preds = %6130
  %6140 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6140, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %6141 = load i32, ptr %43, align 4, !tbaa !9
  %6142 = load i32, ptr %42, align 4, !tbaa !9
  %6143 = mul i32 %6142, %6141
  store i32 %6143, ptr %42, align 4, !tbaa !9
  %6144 = load ptr, ptr %6, align 8, !tbaa !5
  %6145 = load i32, ptr %42, align 4, !tbaa !9
  %6146 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %6144, i32 noundef %6145)
  store i32 %6146, ptr %42, align 4, !tbaa !9
  br label %6148

6147:                                             ; preds = %6125
  store i32 0, ptr %42, align 4, !tbaa !9
  br label %6148

6148:                                             ; preds = %6147, %6139
  %6149 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6149, ptr %10, align 4, !tbaa !9
  %6150 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6150, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %6151 = load i32, ptr %44, align 4, !tbaa !9
  %6152 = load i32, ptr %43, align 4, !tbaa !9
  %6153 = mul i32 %6152, %6151
  store i32 %6153, ptr %43, align 4, !tbaa !9
  %6154 = load i32, ptr %43, align 4, !tbaa !9
  %6155 = load i32, ptr %42, align 4, !tbaa !9
  %6156 = add i32 %6155, %6154
  store i32 %6156, ptr %42, align 4, !tbaa !9
  %6157 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6157, ptr %27, align 4, !tbaa !9
  %6158 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6158, ptr %43, align 4, !tbaa !9
  %6159 = load ptr, ptr %6, align 8, !tbaa !5
  %6160 = getelementptr inbounds %struct.w2c_hermes, ptr %6159, i32 0, i32 6
  %6161 = load i32, ptr %42, align 4, !tbaa !9
  %6162 = zext i32 %6161 to i64
  %6163 = add i64 %6162, 8
  %6164 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6160, i64 noundef %6163, i32 noundef %6164)
  %6165 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6165, ptr %42, align 4, !tbaa !9
  %6166 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %6166, ptr %43, align 4, !tbaa !9
  %6167 = load ptr, ptr %6, align 8, !tbaa !5
  %6168 = getelementptr inbounds %struct.w2c_hermes, ptr %6167, i32 0, i32 6
  %6169 = load i32, ptr %42, align 4, !tbaa !9
  %6170 = zext i32 %6169 to i64
  %6171 = add i64 %6170, 4
  %6172 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6168, i64 noundef %6171, i32 noundef %6172)
  %6173 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6173, ptr %42, align 4, !tbaa !9
  %6174 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6174, ptr %43, align 4, !tbaa !9
  %6175 = load ptr, ptr %6, align 8, !tbaa !5
  %6176 = getelementptr inbounds %struct.w2c_hermes, ptr %6175, i32 0, i32 6
  %6177 = load i32, ptr %42, align 4, !tbaa !9
  %6178 = zext i32 %6177 to i64
  %6179 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6176, i64 noundef %6178, i32 noundef %6179)
  %6180 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %6180, ptr %42, align 4, !tbaa !9
  %6181 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6181, ptr %43, align 4, !tbaa !9
  %6182 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6182, ptr %44, align 4, !tbaa !9
  store i32 -12, ptr %45, align 4, !tbaa !9
  %6183 = load i32, ptr %45, align 4, !tbaa !9
  %6184 = icmp eq i32 %6183, 0
  %6185 = xor i1 %6184, true
  %6186 = xor i1 %6185, true
  %6187 = zext i1 %6186 to i32
  %6188 = sext i32 %6187 to i64
  %6189 = call i64 @llvm.expect.i64(i64 %6188, i64 0)
  %6190 = icmp ne i64 %6189, 0
  br i1 %6190, label %6191, label %6193

6191:                                             ; preds = %6148
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

6192:                                             ; No predecessors!
  br label %6215

6193:                                             ; preds = %6148
  %6194 = load i32, ptr %44, align 4, !tbaa !9
  %6195 = icmp eq i32 %6194, -2147483648
  br i1 %6195, label %6196, label %6199

6196:                                             ; preds = %6193
  %6197 = load i32, ptr %45, align 4, !tbaa !9
  %6198 = icmp eq i32 %6197, -1
  br label %6199

6199:                                             ; preds = %6196, %6193
  %6200 = phi i1 [ false, %6193 ], [ %6198, %6196 ]
  %6201 = xor i1 %6200, true
  %6202 = xor i1 %6201, true
  %6203 = zext i1 %6202 to i32
  %6204 = sext i32 %6203 to i64
  %6205 = call i64 @llvm.expect.i64(i64 %6204, i64 0)
  %6206 = icmp ne i64 %6205, 0
  br i1 %6206, label %6207, label %6209

6207:                                             ; preds = %6199
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

6208:                                             ; No predecessors!
  br label %6213

6209:                                             ; preds = %6199
  %6210 = load i32, ptr %44, align 4, !tbaa !9
  %6211 = load i32, ptr %45, align 4, !tbaa !9
  %6212 = sdiv i32 %6210, %6211
  br label %6213

6213:                                             ; preds = %6209, %6208
  %6214 = phi i32 [ 0, %6208 ], [ %6212, %6209 ]
  br label %6215

6215:                                             ; preds = %6213, %6192
  %6216 = phi i32 [ 0, %6192 ], [ %6214, %6213 ]
  store i32 %6216, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %6217 = load i32, ptr %45, align 4, !tbaa !9
  %6218 = load i32, ptr %44, align 4, !tbaa !9
  %6219 = mul i32 %6218, %6217
  store i32 %6219, ptr %44, align 4, !tbaa !9
  %6220 = load i32, ptr %44, align 4, !tbaa !9
  %6221 = load i32, ptr %43, align 4, !tbaa !9
  %6222 = add i32 %6221, %6220
  store i32 %6222, ptr %43, align 4, !tbaa !9
  %6223 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %6223, ptr %44, align 4, !tbaa !9
  %6224 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6224, ptr %45, align 4, !tbaa !9
  %6225 = load ptr, ptr %6, align 8, !tbaa !5
  %6226 = load i32, ptr %43, align 4, !tbaa !9
  %6227 = load i32, ptr %44, align 4, !tbaa !9
  %6228 = load i32, ptr %45, align 4, !tbaa !9
  %6229 = call i32 @w2c_hermes_memmove(ptr noundef %6225, i32 noundef %6226, i32 noundef %6227, i32 noundef %6228)
  store i32 %6229, ptr %43, align 4, !tbaa !9
  %6230 = load ptr, ptr %6, align 8, !tbaa !5
  %6231 = getelementptr inbounds %struct.w2c_hermes, ptr %6230, i32 0, i32 6
  %6232 = load i32, ptr %42, align 4, !tbaa !9
  %6233 = zext i32 %6232 to i64
  %6234 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6231, i64 noundef %6233, i32 noundef %6234)
  %6235 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %6235, ptr %42, align 4, !tbaa !9
  %6236 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6236, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %6237 = load i32, ptr %44, align 4, !tbaa !9
  %6238 = load i32, ptr %43, align 4, !tbaa !9
  %6239 = add i32 %6238, %6237
  store i32 %6239, ptr %43, align 4, !tbaa !9
  %6240 = load ptr, ptr %6, align 8, !tbaa !5
  %6241 = getelementptr inbounds %struct.w2c_hermes, ptr %6240, i32 0, i32 6
  %6242 = load i32, ptr %42, align 4, !tbaa !9
  %6243 = zext i32 %6242 to i64
  %6244 = add i64 %6243, 4
  %6245 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6241, i64 noundef %6244, i32 noundef %6245)
  %6246 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %6246, ptr %42, align 4, !tbaa !9
  %6247 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6247, ptr %43, align 4, !tbaa !9
  %6248 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6248, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %6249 = load i32, ptr %45, align 4, !tbaa !9
  %6250 = load i32, ptr %44, align 4, !tbaa !9
  %6251 = mul i32 %6250, %6249
  store i32 %6251, ptr %44, align 4, !tbaa !9
  %6252 = load i32, ptr %44, align 4, !tbaa !9
  %6253 = load i32, ptr %43, align 4, !tbaa !9
  %6254 = add i32 %6253, %6252
  store i32 %6254, ptr %43, align 4, !tbaa !9
  %6255 = load ptr, ptr %6, align 8, !tbaa !5
  %6256 = getelementptr inbounds %struct.w2c_hermes, ptr %6255, i32 0, i32 6
  %6257 = load i32, ptr %42, align 4, !tbaa !9
  %6258 = zext i32 %6257 to i64
  %6259 = add i64 %6258, 8
  %6260 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6256, i64 noundef %6259, i32 noundef %6260)
  %6261 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %6261, ptr %42, align 4, !tbaa !9
  %6262 = load i32, ptr %42, align 4, !tbaa !9
  %6263 = icmp ne i32 %6262, 0
  %6264 = xor i1 %6263, true
  %6265 = zext i1 %6264 to i32
  store i32 %6265, ptr %42, align 4, !tbaa !9
  %6266 = load i32, ptr %42, align 4, !tbaa !9
  %6267 = icmp ne i32 %6266, 0
  br i1 %6267, label %6268, label %6269

6268:                                             ; preds = %6215
  br label %6274

6269:                                             ; preds = %6215
  %6270 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %6270, ptr %42, align 4, !tbaa !9
  %6271 = load ptr, ptr %6, align 8, !tbaa !5
  %6272 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %6271, i32 noundef %6272)
  br label %6274

6273:                                             ; preds = %6079
  br label %15476

6274:                                             ; preds = %6269, %6268, %5999, %5418, %5402, %5266
  %6275 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6275, ptr %42, align 4, !tbaa !9
  %6276 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %6276, ptr %43, align 4, !tbaa !9
  %6277 = load i32, ptr %42, align 4, !tbaa !9
  %6278 = load i32, ptr %43, align 4, !tbaa !9
  %6279 = icmp ne i32 %6277, %6278
  %6280 = zext i1 %6279 to i32
  store i32 %6280, ptr %42, align 4, !tbaa !9
  %6281 = load i32, ptr %42, align 4, !tbaa !9
  %6282 = icmp ne i32 %6281, 0
  br i1 %6282, label %6283, label %6284

6283:                                             ; preds = %6274
  br label %4969

6284:                                             ; preds = %6274
  br label %6285

6285:                                             ; preds = %6284, %5242, %4954
  %6286 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6286, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %6287 = load i32, ptr %43, align 4, !tbaa !9
  %6288 = load i32, ptr %42, align 4, !tbaa !9
  %6289 = add i32 %6288, %6287
  store i32 %6289, ptr %42, align 4, !tbaa !9
  %6290 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6290, ptr %11, align 4, !tbaa !9
  %6291 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %6291, ptr %43, align 4, !tbaa !9
  %6292 = load i32, ptr %42, align 4, !tbaa !9
  %6293 = load i32, ptr %43, align 4, !tbaa !9
  %6294 = icmp ne i32 %6292, %6293
  %6295 = zext i1 %6294 to i32
  store i32 %6295, ptr %42, align 4, !tbaa !9
  %6296 = load i32, ptr %42, align 4, !tbaa !9
  %6297 = icmp ne i32 %6296, 0
  br i1 %6297, label %6298, label %6299

6298:                                             ; preds = %6285
  br label %4939

6299:                                             ; preds = %6285
  %6300 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6300, ptr %42, align 4, !tbaa !9
  %6301 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6301, ptr %43, align 4, !tbaa !9
  %6302 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6302, ptr %12, align 4, !tbaa !9
  %6303 = load i32, ptr %42, align 4, !tbaa !9
  %6304 = load i32, ptr %43, align 4, !tbaa !9
  %6305 = icmp eq i32 %6303, %6304
  %6306 = zext i1 %6305 to i32
  store i32 %6306, ptr %42, align 4, !tbaa !9
  %6307 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6307, ptr %32, align 4, !tbaa !9
  %6308 = load i32, ptr %42, align 4, !tbaa !9
  %6309 = icmp ne i32 %6308, 0
  %6310 = xor i1 %6309, true
  %6311 = zext i1 %6310 to i32
  store i32 %6311, ptr %42, align 4, !tbaa !9
  %6312 = load i32, ptr %42, align 4, !tbaa !9
  %6313 = icmp ne i32 %6312, 0
  br i1 %6313, label %6314, label %7727

6314:                                             ; preds = %6299
  %6315 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6315, ptr %42, align 4, !tbaa !9
  %6316 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6316, ptr %43, align 4, !tbaa !9
  %6317 = load i32, ptr %43, align 4, !tbaa !9
  %6318 = load i32, ptr %42, align 4, !tbaa !9
  %6319 = sub i32 %6318, %6317
  store i32 %6319, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %6320 = load i32, ptr %43, align 4, !tbaa !9
  %6321 = icmp eq i32 %6320, 0
  %6322 = xor i1 %6321, true
  %6323 = xor i1 %6322, true
  %6324 = zext i1 %6323 to i32
  %6325 = sext i32 %6324 to i64
  %6326 = call i64 @llvm.expect.i64(i64 %6325, i64 0)
  %6327 = icmp ne i64 %6326, 0
  br i1 %6327, label %6328, label %6330

6328:                                             ; preds = %6314
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

6329:                                             ; No predecessors!
  br label %6352

6330:                                             ; preds = %6314
  %6331 = load i32, ptr %42, align 4, !tbaa !9
  %6332 = icmp eq i32 %6331, -2147483648
  br i1 %6332, label %6333, label %6336

6333:                                             ; preds = %6330
  %6334 = load i32, ptr %43, align 4, !tbaa !9
  %6335 = icmp eq i32 %6334, -1
  br label %6336

6336:                                             ; preds = %6333, %6330
  %6337 = phi i1 [ false, %6330 ], [ %6335, %6333 ]
  %6338 = xor i1 %6337, true
  %6339 = xor i1 %6338, true
  %6340 = zext i1 %6339 to i32
  %6341 = sext i32 %6340 to i64
  %6342 = call i64 @llvm.expect.i64(i64 %6341, i64 0)
  %6343 = icmp ne i64 %6342, 0
  br i1 %6343, label %6344, label %6346

6344:                                             ; preds = %6336
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

6345:                                             ; No predecessors!
  br label %6350

6346:                                             ; preds = %6336
  %6347 = load i32, ptr %42, align 4, !tbaa !9
  %6348 = load i32, ptr %43, align 4, !tbaa !9
  %6349 = sdiv i32 %6347, %6348
  br label %6350

6350:                                             ; preds = %6346, %6345
  %6351 = phi i32 [ 0, %6345 ], [ %6349, %6346 ]
  br label %6352

6352:                                             ; preds = %6350, %6329
  %6353 = phi i32 [ 0, %6329 ], [ %6351, %6350 ]
  store i32 %6353, ptr %42, align 4, !tbaa !9
  %6354 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6354, ptr %29, align 4, !tbaa !9
  br label %6355

6355:                                             ; preds = %7723, %6352
  %6356 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6356, ptr %42, align 4, !tbaa !9
  %6357 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %6357, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %6358 = load i32, ptr %44, align 4, !tbaa !9
  %6359 = load i32, ptr %43, align 4, !tbaa !9
  %6360 = sub i32 %6359, %6358
  store i32 %6360, ptr %43, align 4, !tbaa !9
  %6361 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6361, ptr %29, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %6362 = load i32, ptr %44, align 4, !tbaa !9
  %6363 = load i32, ptr %43, align 4, !tbaa !9
  %6364 = mul i32 %6363, %6362
  store i32 %6364, ptr %43, align 4, !tbaa !9
  %6365 = load i32, ptr %43, align 4, !tbaa !9
  %6366 = load i32, ptr %42, align 4, !tbaa !9
  %6367 = add i32 %6366, %6365
  store i32 %6367, ptr %42, align 4, !tbaa !9
  %6368 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6368, ptr %10, align 4, !tbaa !9
  %6369 = load ptr, ptr %6, align 8, !tbaa !5
  %6370 = getelementptr inbounds %struct.w2c_hermes, ptr %6369, i32 0, i32 6
  %6371 = load i32, ptr %42, align 4, !tbaa !9
  %6372 = zext i32 %6371 to i64
  %6373 = call i32 @i32_load(ptr noundef %6370, i64 noundef %6372)
  store i32 %6373, ptr %42, align 4, !tbaa !9
  %6374 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6374, ptr %13, align 4, !tbaa !9
  %6375 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6375, ptr %43, align 4, !tbaa !9
  %6376 = load ptr, ptr %6, align 8, !tbaa !5
  %6377 = getelementptr inbounds %struct.w2c_hermes, ptr %6376, i32 0, i32 6
  %6378 = load i32, ptr %43, align 4, !tbaa !9
  %6379 = zext i32 %6378 to i64
  %6380 = add i64 %6379, 4
  %6381 = call i32 @i32_load(ptr noundef %6377, i64 noundef %6380)
  store i32 %6381, ptr %43, align 4, !tbaa !9
  %6382 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6382, ptr %31, align 4, !tbaa !9
  %6383 = load i32, ptr %42, align 4, !tbaa !9
  %6384 = load i32, ptr %43, align 4, !tbaa !9
  %6385 = icmp ne i32 %6383, %6384
  %6386 = zext i1 %6385 to i32
  store i32 %6386, ptr %42, align 4, !tbaa !9
  %6387 = load i32, ptr %42, align 4, !tbaa !9
  %6388 = icmp ne i32 %6387, 0
  br i1 %6388, label %6389, label %7719

6389:                                             ; preds = %6355
  br label %6390

6390:                                             ; preds = %7717, %6389
  %6391 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6391, ptr %42, align 4, !tbaa !9
  %6392 = load ptr, ptr %6, align 8, !tbaa !5
  %6393 = getelementptr inbounds %struct.w2c_hermes, ptr %6392, i32 0, i32 6
  %6394 = load i32, ptr %42, align 4, !tbaa !9
  %6395 = zext i32 %6394 to i64
  %6396 = add i64 %6395, 8
  %6397 = call i32 @i32_load(ptr noundef %6393, i64 noundef %6396)
  store i32 %6397, ptr %42, align 4, !tbaa !9
  %6398 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6398, ptr %12, align 4, !tbaa !9
  %6399 = load ptr, ptr %6, align 8, !tbaa !5
  %6400 = getelementptr inbounds %struct.w2c_hermes, ptr %6399, i32 0, i32 6
  %6401 = load i32, ptr %42, align 4, !tbaa !9
  %6402 = zext i32 %6401 to i64
  %6403 = add i64 %6402, 28
  %6404 = call i32 @i32_load(ptr noundef %6400, i64 noundef %6403)
  store i32 %6404, ptr %42, align 4, !tbaa !9
  %6405 = load i32, ptr %42, align 4, !tbaa !9
  %6406 = icmp ne i32 %6405, 0
  br i1 %6406, label %6407, label %6408

6407:                                             ; preds = %6390
  br label %7704

6408:                                             ; preds = %6390
  %6409 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6409, ptr %42, align 4, !tbaa !9
  %6410 = load ptr, ptr %6, align 8, !tbaa !5
  %6411 = getelementptr inbounds %struct.w2c_hermes, ptr %6410, i32 0, i32 6
  %6412 = load i32, ptr %42, align 4, !tbaa !9
  %6413 = zext i32 %6412 to i64
  %6414 = add i64 %6413, 16
  %6415 = call i32 @i32_load(ptr noundef %6411, i64 noundef %6414)
  store i32 %6415, ptr %42, align 4, !tbaa !9
  %6416 = load i32, ptr %42, align 4, !tbaa !9
  %6417 = icmp ne i32 %6416, 0
  br i1 %6417, label %6418, label %6419

6418:                                             ; preds = %6408
  br label %7704

6419:                                             ; preds = %6408
  %6420 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6420, ptr %42, align 4, !tbaa !9
  %6421 = load ptr, ptr %6, align 8, !tbaa !5
  %6422 = getelementptr inbounds %struct.w2c_hermes, ptr %6421, i32 0, i32 6
  %6423 = load i32, ptr %42, align 4, !tbaa !9
  %6424 = zext i32 %6423 to i64
  %6425 = add i64 %6424, 4
  %6426 = call i32 @i32_load(ptr noundef %6422, i64 noundef %6425)
  store i32 %6426, ptr %42, align 4, !tbaa !9
  %6427 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6427, ptr %11, align 4, !tbaa !9
  %6428 = load i32, ptr %42, align 4, !tbaa !9
  %6429 = icmp ne i32 %6428, 0
  %6430 = xor i1 %6429, true
  %6431 = zext i1 %6430 to i32
  store i32 %6431, ptr %42, align 4, !tbaa !9
  %6432 = load i32, ptr %42, align 4, !tbaa !9
  %6433 = icmp ne i32 %6432, 0
  br i1 %6433, label %6434, label %6435

6434:                                             ; preds = %6419
  br label %7704

6435:                                             ; preds = %6419
  %6436 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6436, ptr %42, align 4, !tbaa !9
  %6437 = load ptr, ptr %6, align 8, !tbaa !5
  %6438 = getelementptr inbounds %struct.w2c_hermes, ptr %6437, i32 0, i32 6
  %6439 = load i32, ptr %42, align 4, !tbaa !9
  %6440 = zext i32 %6439 to i64
  %6441 = call i32 @i32_load(ptr noundef %6438, i64 noundef %6440)
  store i32 %6441, ptr %42, align 4, !tbaa !9
  %6442 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6442, ptr %10, align 4, !tbaa !9
  %6443 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6443, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %6444 = load i32, ptr %44, align 4, !tbaa !9
  %6445 = and i32 %6444, 31
  %6446 = load i32, ptr %43, align 4, !tbaa !9
  %6447 = shl i32 %6446, %6445
  store i32 %6447, ptr %43, align 4, !tbaa !9
  %6448 = load i32, ptr %43, align 4, !tbaa !9
  %6449 = load i32, ptr %42, align 4, !tbaa !9
  %6450 = add i32 %6449, %6448
  store i32 %6450, ptr %42, align 4, !tbaa !9
  %6451 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6451, ptr %28, align 4, !tbaa !9
  %6452 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6452, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %6453 = load i32, ptr %43, align 4, !tbaa !9
  %6454 = and i32 %6453, 31
  %6455 = load i32, ptr %42, align 4, !tbaa !9
  %6456 = lshr i32 %6455, %6454
  store i32 %6456, ptr %42, align 4, !tbaa !9
  %6457 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6457, ptr %43, align 4, !tbaa !9
  store i32 9, ptr %44, align 4, !tbaa !9
  %6458 = load i32, ptr %44, align 4, !tbaa !9
  %6459 = and i32 %6458, 31
  %6460 = load i32, ptr %43, align 4, !tbaa !9
  %6461 = lshr i32 %6460, %6459
  store i32 %6461, ptr %43, align 4, !tbaa !9
  %6462 = load i32, ptr %43, align 4, !tbaa !9
  %6463 = load i32, ptr %42, align 4, !tbaa !9
  %6464 = xor i32 %6463, %6462
  store i32 %6464, ptr %42, align 4, !tbaa !9
  %6465 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6465, ptr %16, align 4, !tbaa !9
  br label %6466

6466:                                             ; preds = %6625, %6435
  %6467 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6467, ptr %42, align 4, !tbaa !9
  %6468 = load ptr, ptr %6, align 8, !tbaa !5
  %6469 = getelementptr inbounds %struct.w2c_hermes, ptr %6468, i32 0, i32 6
  %6470 = load i32, ptr %42, align 4, !tbaa !9
  %6471 = zext i32 %6470 to i64
  %6472 = call i32 @i32_load(ptr noundef %6469, i64 noundef %6471)
  store i32 %6472, ptr %42, align 4, !tbaa !9
  %6473 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6473, ptr %11, align 4, !tbaa !9
  %6474 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6474, ptr %43, align 4, !tbaa !9
  %6475 = load i32, ptr %42, align 4, !tbaa !9
  %6476 = load i32, ptr %43, align 4, !tbaa !9
  %6477 = icmp eq i32 %6475, %6476
  %6478 = zext i1 %6477 to i32
  store i32 %6478, ptr %42, align 4, !tbaa !9
  %6479 = load i32, ptr %42, align 4, !tbaa !9
  %6480 = icmp ne i32 %6479, 0
  br i1 %6480, label %6481, label %6482

6481:                                             ; preds = %6466
  br label %6612

6482:                                             ; preds = %6466
  %6483 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6483, ptr %42, align 4, !tbaa !9
  %6484 = load ptr, ptr %6, align 8, !tbaa !5
  %6485 = getelementptr inbounds %struct.w2c_hermes, ptr %6484, i32 0, i32 6
  %6486 = load i32, ptr %42, align 4, !tbaa !9
  %6487 = zext i32 %6486 to i64
  %6488 = add i64 %6487, 16
  %6489 = call i32 @i32_load(ptr noundef %6485, i64 noundef %6488)
  store i32 %6489, ptr %42, align 4, !tbaa !9
  %6490 = load i32, ptr %42, align 4, !tbaa !9
  %6491 = icmp ne i32 %6490, 0
  br i1 %6491, label %6492, label %6493

6492:                                             ; preds = %6482
  br label %6612

6493:                                             ; preds = %6482
  %6494 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6494, ptr %42, align 4, !tbaa !9
  %6495 = load ptr, ptr %6, align 8, !tbaa !5
  %6496 = getelementptr inbounds %struct.w2c_hermes, ptr %6495, i32 0, i32 6
  %6497 = load i32, ptr %42, align 4, !tbaa !9
  %6498 = zext i32 %6497 to i64
  %6499 = add i64 %6498, 24
  %6500 = call i32 @i32_load(ptr noundef %6496, i64 noundef %6499)
  store i32 %6500, ptr %42, align 4, !tbaa !9
  %6501 = load i32, ptr %42, align 4, !tbaa !9
  %6502 = icmp ne i32 %6501, 0
  br i1 %6502, label %6503, label %6504

6503:                                             ; preds = %6493
  br label %6612

6504:                                             ; preds = %6493
  %6505 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6505, ptr %42, align 4, !tbaa !9
  %6506 = load ptr, ptr %6, align 8, !tbaa !5
  %6507 = getelementptr inbounds %struct.w2c_hermes, ptr %6506, i32 0, i32 6
  %6508 = load i32, ptr %42, align 4, !tbaa !9
  %6509 = zext i32 %6508 to i64
  %6510 = add i64 %6509, 48
  %6511 = call i32 @i32_load(ptr noundef %6507, i64 noundef %6510)
  store i32 %6511, ptr %42, align 4, !tbaa !9
  %6512 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6512, ptr %14, align 4, !tbaa !9
  %6513 = load i32, ptr %42, align 4, !tbaa !9
  %6514 = icmp ne i32 %6513, 0
  %6515 = xor i1 %6514, true
  %6516 = zext i1 %6515 to i32
  store i32 %6516, ptr %42, align 4, !tbaa !9
  %6517 = load i32, ptr %42, align 4, !tbaa !9
  %6518 = icmp ne i32 %6517, 0
  br i1 %6518, label %6519, label %6520

6519:                                             ; preds = %6504
  br label %6627

6520:                                             ; preds = %6504
  %6521 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6521, ptr %42, align 4, !tbaa !9
  %6522 = load ptr, ptr %6, align 8, !tbaa !5
  %6523 = getelementptr inbounds %struct.w2c_hermes, ptr %6522, i32 0, i32 6
  %6524 = load i32, ptr %42, align 4, !tbaa !9
  %6525 = zext i32 %6524 to i64
  %6526 = add i64 %6525, 36
  %6527 = call i32 @i32_load(ptr noundef %6523, i64 noundef %6526)
  store i32 %6527, ptr %42, align 4, !tbaa !9
  %6528 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6528, ptr %17, align 4, !tbaa !9
  %6529 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6529, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %6530 = load i32, ptr %44, align 4, !tbaa !9
  %6531 = load i32, ptr %43, align 4, !tbaa !9
  %6532 = sub i32 %6531, %6530
  store i32 %6532, ptr %43, align 4, !tbaa !9
  %6533 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6533, ptr %24, align 4, !tbaa !9
  %6534 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %6534, ptr %44, align 4, !tbaa !9
  %6535 = load i32, ptr %44, align 4, !tbaa !9
  %6536 = load i32, ptr %43, align 4, !tbaa !9
  %6537 = and i32 %6536, %6535
  store i32 %6537, ptr %43, align 4, !tbaa !9
  %6538 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6538, ptr %18, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %6539 = load i32, ptr %44, align 4, !tbaa !9
  %6540 = and i32 %6539, 31
  %6541 = load i32, ptr %43, align 4, !tbaa !9
  %6542 = shl i32 %6541, %6540
  store i32 %6542, ptr %43, align 4, !tbaa !9
  %6543 = load i32, ptr %43, align 4, !tbaa !9
  %6544 = load i32, ptr %42, align 4, !tbaa !9
  %6545 = add i32 %6544, %6543
  store i32 %6545, ptr %42, align 4, !tbaa !9
  %6546 = load ptr, ptr %6, align 8, !tbaa !5
  %6547 = getelementptr inbounds %struct.w2c_hermes, ptr %6546, i32 0, i32 6
  %6548 = load i32, ptr %42, align 4, !tbaa !9
  %6549 = zext i32 %6548 to i64
  %6550 = call i32 @i32_load(ptr noundef %6547, i64 noundef %6549)
  store i32 %6550, ptr %42, align 4, !tbaa !9
  %6551 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6551, ptr %25, align 4, !tbaa !9
  %6552 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6552, ptr %43, align 4, !tbaa !9
  %6553 = load i32, ptr %42, align 4, !tbaa !9
  %6554 = load i32, ptr %43, align 4, !tbaa !9
  %6555 = icmp eq i32 %6553, %6554
  %6556 = zext i1 %6555 to i32
  store i32 %6556, ptr %42, align 4, !tbaa !9
  %6557 = load i32, ptr %42, align 4, !tbaa !9
  %6558 = icmp ne i32 %6557, 0
  br i1 %6558, label %6559, label %6560

6559:                                             ; preds = %6520
  br label %6612

6560:                                             ; preds = %6520
  store i32 1, ptr %42, align 4, !tbaa !9
  %6561 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6561, ptr %22, align 4, !tbaa !9
  br label %6562

6562:                                             ; preds = %6610, %6560
  %6563 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %6563, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %6564 = load i32, ptr %42, align 4, !tbaa !9
  %6565 = load i32, ptr %43, align 4, !tbaa !9
  %6566 = icmp eq i32 %6564, %6565
  %6567 = zext i1 %6566 to i32
  store i32 %6567, ptr %42, align 4, !tbaa !9
  %6568 = load i32, ptr %42, align 4, !tbaa !9
  %6569 = icmp ne i32 %6568, 0
  br i1 %6569, label %6570, label %6571

6570:                                             ; preds = %6562
  br label %6627

6571:                                             ; preds = %6562
  %6572 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6572, ptr %42, align 4, !tbaa !9
  %6573 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6573, ptr %43, align 4, !tbaa !9
  %6574 = load i32, ptr %43, align 4, !tbaa !9
  %6575 = load i32, ptr %42, align 4, !tbaa !9
  %6576 = add i32 %6575, %6574
  store i32 %6576, ptr %42, align 4, !tbaa !9
  %6577 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6577, ptr %14, align 4, !tbaa !9
  %6578 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6578, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %6579 = load i32, ptr %43, align 4, !tbaa !9
  %6580 = load i32, ptr %42, align 4, !tbaa !9
  %6581 = add i32 %6580, %6579
  store i32 %6581, ptr %42, align 4, !tbaa !9
  %6582 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6582, ptr %22, align 4, !tbaa !9
  %6583 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6583, ptr %42, align 4, !tbaa !9
  %6584 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6584, ptr %43, align 4, !tbaa !9
  %6585 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %6585, ptr %44, align 4, !tbaa !9
  %6586 = load i32, ptr %44, align 4, !tbaa !9
  %6587 = load i32, ptr %43, align 4, !tbaa !9
  %6588 = and i32 %6587, %6586
  store i32 %6588, ptr %43, align 4, !tbaa !9
  %6589 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6589, ptr %18, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %6590 = load i32, ptr %44, align 4, !tbaa !9
  %6591 = and i32 %6590, 31
  %6592 = load i32, ptr %43, align 4, !tbaa !9
  %6593 = shl i32 %6592, %6591
  store i32 %6593, ptr %43, align 4, !tbaa !9
  %6594 = load i32, ptr %43, align 4, !tbaa !9
  %6595 = load i32, ptr %42, align 4, !tbaa !9
  %6596 = add i32 %6595, %6594
  store i32 %6596, ptr %42, align 4, !tbaa !9
  %6597 = load ptr, ptr %6, align 8, !tbaa !5
  %6598 = getelementptr inbounds %struct.w2c_hermes, ptr %6597, i32 0, i32 6
  %6599 = load i32, ptr %42, align 4, !tbaa !9
  %6600 = zext i32 %6599 to i64
  %6601 = call i32 @i32_load(ptr noundef %6598, i64 noundef %6600)
  store i32 %6601, ptr %42, align 4, !tbaa !9
  %6602 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6602, ptr %25, align 4, !tbaa !9
  %6603 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6603, ptr %43, align 4, !tbaa !9
  %6604 = load i32, ptr %42, align 4, !tbaa !9
  %6605 = load i32, ptr %43, align 4, !tbaa !9
  %6606 = icmp ne i32 %6604, %6605
  %6607 = zext i1 %6606 to i32
  store i32 %6607, ptr %42, align 4, !tbaa !9
  %6608 = load i32, ptr %42, align 4, !tbaa !9
  %6609 = icmp ne i32 %6608, 0
  br i1 %6609, label %6610, label %6611

6610:                                             ; preds = %6571
  br label %6562

6611:                                             ; preds = %6571
  br label %6612

6612:                                             ; preds = %6611, %6559, %6503, %6492, %6481
  %6613 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6613, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %6614 = load i32, ptr %43, align 4, !tbaa !9
  %6615 = load i32, ptr %42, align 4, !tbaa !9
  %6616 = add i32 %6615, %6614
  store i32 %6616, ptr %42, align 4, !tbaa !9
  %6617 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6617, ptr %10, align 4, !tbaa !9
  %6618 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %6618, ptr %43, align 4, !tbaa !9
  %6619 = load i32, ptr %42, align 4, !tbaa !9
  %6620 = load i32, ptr %43, align 4, !tbaa !9
  %6621 = icmp ne i32 %6619, %6620
  %6622 = zext i1 %6621 to i32
  store i32 %6622, ptr %42, align 4, !tbaa !9
  %6623 = load i32, ptr %42, align 4, !tbaa !9
  %6624 = icmp ne i32 %6623, 0
  br i1 %6624, label %6625, label %6626

6625:                                             ; preds = %6612
  br label %6466

6626:                                             ; preds = %6612
  br label %7704

6627:                                             ; preds = %6570, %6519
  %6628 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6628, ptr %42, align 4, !tbaa !9
  %6629 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6629, ptr %43, align 4, !tbaa !9
  %6630 = load ptr, ptr %6, align 8, !tbaa !5
  %6631 = getelementptr inbounds %struct.w2c_hermes, ptr %6630, i32 0, i32 6
  %6632 = load i32, ptr %42, align 4, !tbaa !9
  %6633 = zext i32 %6632 to i64
  %6634 = add i64 %6633, 24
  %6635 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6631, i64 noundef %6634, i32 noundef %6635)
  %6636 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6636, ptr %42, align 4, !tbaa !9
  %6637 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %6637, ptr %43, align 4, !tbaa !9
  %6638 = load ptr, ptr %6, align 8, !tbaa !5
  %6639 = getelementptr inbounds %struct.w2c_hermes, ptr %6638, i32 0, i32 6
  %6640 = load i32, ptr %42, align 4, !tbaa !9
  %6641 = zext i32 %6640 to i64
  %6642 = add i64 %6641, 32
  %6643 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6639, i64 noundef %6642, i32 noundef %6643)
  %6644 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6644, ptr %42, align 4, !tbaa !9
  %6645 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6645, ptr %43, align 4, !tbaa !9
  %6646 = load ptr, ptr %6, align 8, !tbaa !5
  %6647 = getelementptr inbounds %struct.w2c_hermes, ptr %6646, i32 0, i32 6
  %6648 = load i32, ptr %42, align 4, !tbaa !9
  %6649 = zext i32 %6648 to i64
  %6650 = add i64 %6649, 28
  %6651 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6647, i64 noundef %6650, i32 noundef %6651)
  br label %6652

6652:                                             ; preds = %6664, %6627
  %6653 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6653, ptr %42, align 4, !tbaa !9
  %6654 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6654, ptr %27, align 4, !tbaa !9
  %6655 = load ptr, ptr %6, align 8, !tbaa !5
  %6656 = getelementptr inbounds %struct.w2c_hermes, ptr %6655, i32 0, i32 6
  %6657 = load i32, ptr %42, align 4, !tbaa !9
  %6658 = zext i32 %6657 to i64
  %6659 = add i64 %6658, 24
  %6660 = call i32 @i32_load(ptr noundef %6656, i64 noundef %6659)
  store i32 %6660, ptr %42, align 4, !tbaa !9
  %6661 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6661, ptr %12, align 4, !tbaa !9
  %6662 = load i32, ptr %42, align 4, !tbaa !9
  %6663 = icmp ne i32 %6662, 0
  br i1 %6663, label %6664, label %6665

6664:                                             ; preds = %6652
  br label %6652

6665:                                             ; preds = %6652
  br label %6666

6666:                                             ; preds = %6678, %6665
  %6667 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6667, ptr %42, align 4, !tbaa !9
  %6668 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6668, ptr %28, align 4, !tbaa !9
  %6669 = load ptr, ptr %6, align 8, !tbaa !5
  %6670 = getelementptr inbounds %struct.w2c_hermes, ptr %6669, i32 0, i32 6
  %6671 = load i32, ptr %42, align 4, !tbaa !9
  %6672 = zext i32 %6671 to i64
  %6673 = add i64 %6672, 28
  %6674 = call i32 @i32_load(ptr noundef %6670, i64 noundef %6673)
  store i32 %6674, ptr %42, align 4, !tbaa !9
  %6675 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6675, ptr %11, align 4, !tbaa !9
  %6676 = load i32, ptr %42, align 4, !tbaa !9
  %6677 = icmp ne i32 %6676, 0
  br i1 %6677, label %6678, label %6679

6678:                                             ; preds = %6666
  br label %6666

6679:                                             ; preds = %6666
  %6680 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6680, ptr %42, align 4, !tbaa !9
  %6681 = load ptr, ptr %6, align 8, !tbaa !5
  %6682 = getelementptr inbounds %struct.w2c_hermes, ptr %6681, i32 0, i32 6
  %6683 = load i32, ptr %42, align 4, !tbaa !9
  %6684 = zext i32 %6683 to i64
  %6685 = add i64 %6684, 36
  %6686 = call i32 @i32_load(ptr noundef %6682, i64 noundef %6685)
  store i32 %6686, ptr %42, align 4, !tbaa !9
  %6687 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6687, ptr %12, align 4, !tbaa !9
  %6688 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6688, ptr %42, align 4, !tbaa !9
  %6689 = load ptr, ptr %6, align 8, !tbaa !5
  %6690 = getelementptr inbounds %struct.w2c_hermes, ptr %6689, i32 0, i32 6
  %6691 = load i32, ptr %42, align 4, !tbaa !9
  %6692 = zext i32 %6691 to i64
  %6693 = add i64 %6692, 48
  %6694 = call i32 @i32_load(ptr noundef %6690, i64 noundef %6693)
  store i32 %6694, ptr %42, align 4, !tbaa !9
  %6695 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6695, ptr %10, align 4, !tbaa !9
  %6696 = load i32, ptr %42, align 4, !tbaa !9
  %6697 = icmp ne i32 %6696, 0
  %6698 = xor i1 %6697, true
  %6699 = zext i1 %6698 to i32
  store i32 %6699, ptr %42, align 4, !tbaa !9
  %6700 = load i32, ptr %42, align 4, !tbaa !9
  %6701 = icmp ne i32 %6700, 0
  br i1 %6701, label %6702, label %6704

6702:                                             ; preds = %6679
  store i32 0, ptr %42, align 4, !tbaa !9
  %6703 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6703, ptr %14, align 4, !tbaa !9
  br label %6842

6704:                                             ; preds = %6679
  %6705 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6705, ptr %42, align 4, !tbaa !9
  %6706 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6706, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %6707 = load i32, ptr %44, align 4, !tbaa !9
  %6708 = load i32, ptr %43, align 4, !tbaa !9
  %6709 = sub i32 %6708, %6707
  store i32 %6709, ptr %43, align 4, !tbaa !9
  %6710 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6710, ptr %17, align 4, !tbaa !9
  %6711 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %6711, ptr %44, align 4, !tbaa !9
  store i32 4, ptr %45, align 4, !tbaa !9
  %6712 = load i32, ptr %45, align 4, !tbaa !9
  %6713 = and i32 %6712, 31
  %6714 = load i32, ptr %44, align 4, !tbaa !9
  %6715 = lshr i32 %6714, %6713
  store i32 %6715, ptr %44, align 4, !tbaa !9
  %6716 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %6716, ptr %45, align 4, !tbaa !9
  store i32 9, ptr %46, align 4, !tbaa !9
  %6717 = load i32, ptr %46, align 4, !tbaa !9
  %6718 = and i32 %6717, 31
  %6719 = load i32, ptr %45, align 4, !tbaa !9
  %6720 = lshr i32 %6719, %6718
  store i32 %6720, ptr %45, align 4, !tbaa !9
  %6721 = load i32, ptr %45, align 4, !tbaa !9
  %6722 = load i32, ptr %44, align 4, !tbaa !9
  %6723 = xor i32 %6722, %6721
  store i32 %6723, ptr %44, align 4, !tbaa !9
  %6724 = load i32, ptr %44, align 4, !tbaa !9
  %6725 = load i32, ptr %43, align 4, !tbaa !9
  %6726 = and i32 %6725, %6724
  store i32 %6726, ptr %43, align 4, !tbaa !9
  %6727 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6727, ptr %26, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %6728 = load i32, ptr %44, align 4, !tbaa !9
  %6729 = and i32 %6728, 31
  %6730 = load i32, ptr %43, align 4, !tbaa !9
  %6731 = shl i32 %6730, %6729
  store i32 %6731, ptr %43, align 4, !tbaa !9
  %6732 = load i32, ptr %43, align 4, !tbaa !9
  %6733 = load i32, ptr %42, align 4, !tbaa !9
  %6734 = add i32 %6733, %6732
  store i32 %6734, ptr %42, align 4, !tbaa !9
  %6735 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6735, ptr %14, align 4, !tbaa !9
  %6736 = load ptr, ptr %6, align 8, !tbaa !5
  %6737 = getelementptr inbounds %struct.w2c_hermes, ptr %6736, i32 0, i32 6
  %6738 = load i32, ptr %42, align 4, !tbaa !9
  %6739 = zext i32 %6738 to i64
  %6740 = call i32 @i32_load(ptr noundef %6737, i64 noundef %6739)
  store i32 %6740, ptr %42, align 4, !tbaa !9
  %6741 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6741, ptr %25, align 4, !tbaa !9
  %6742 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %6742, ptr %43, align 4, !tbaa !9
  %6743 = load i32, ptr %42, align 4, !tbaa !9
  %6744 = load i32, ptr %43, align 4, !tbaa !9
  %6745 = icmp eq i32 %6743, %6744
  %6746 = zext i1 %6745 to i32
  store i32 %6746, ptr %42, align 4, !tbaa !9
  %6747 = load i32, ptr %42, align 4, !tbaa !9
  %6748 = icmp ne i32 %6747, 0
  br i1 %6748, label %6749, label %6750

6749:                                             ; preds = %6704
  br label %7704

6750:                                             ; preds = %6704
  store i32 0, ptr %42, align 4, !tbaa !9
  %6751 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6751, ptr %22, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %6752 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6752, ptr %24, align 4, !tbaa !9
  br label %6753

6753:                                             ; preds = %6840, %6750
  %6754 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %6754, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %6755 = load i32, ptr %42, align 4, !tbaa !9
  %6756 = load i32, ptr %43, align 4, !tbaa !9
  %6757 = icmp eq i32 %6755, %6756
  %6758 = zext i1 %6757 to i32
  store i32 %6758, ptr %42, align 4, !tbaa !9
  %6759 = load i32, ptr %42, align 4, !tbaa !9
  %6760 = icmp ne i32 %6759, 0
  br i1 %6760, label %6761, label %6774

6761:                                             ; preds = %6753
  %6762 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6762, ptr %42, align 4, !tbaa !9
  %6763 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6763, ptr %43, align 4, !tbaa !9
  %6764 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6764, ptr %44, align 4, !tbaa !9
  %6765 = load i32, ptr %44, align 4, !tbaa !9
  %6766 = icmp ne i32 %6765, 0
  br i1 %6766, label %6767, label %6769

6767:                                             ; preds = %6761
  %6768 = load i32, ptr %42, align 4, !tbaa !9
  br label %6771

6769:                                             ; preds = %6761
  %6770 = load i32, ptr %43, align 4, !tbaa !9
  br label %6771

6771:                                             ; preds = %6769, %6767
  %6772 = phi i32 [ %6768, %6767 ], [ %6770, %6769 ]
  store i32 %6772, ptr %42, align 4, !tbaa !9
  %6773 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6773, ptr %14, align 4, !tbaa !9
  br label %6842

6774:                                             ; preds = %6753
  %6775 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6775, ptr %42, align 4, !tbaa !9
  %6776 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6776, ptr %43, align 4, !tbaa !9
  %6777 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6777, ptr %44, align 4, !tbaa !9
  %6778 = load i32, ptr %44, align 4, !tbaa !9
  %6779 = icmp ne i32 %6778, 0
  br i1 %6779, label %6780, label %6782

6780:                                             ; preds = %6774
  %6781 = load i32, ptr %42, align 4, !tbaa !9
  br label %6784

6782:                                             ; preds = %6774
  %6783 = load i32, ptr %43, align 4, !tbaa !9
  br label %6784

6784:                                             ; preds = %6782, %6780
  %6785 = phi i32 [ %6781, %6780 ], [ %6783, %6782 ]
  store i32 %6785, ptr %42, align 4, !tbaa !9
  %6786 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6786, ptr %43, align 4, !tbaa !9
  %6787 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %6787, ptr %44, align 4, !tbaa !9
  store i32 -8, ptr %45, align 4, !tbaa !9
  %6788 = load i32, ptr %44, align 4, !tbaa !9
  %6789 = load i32, ptr %45, align 4, !tbaa !9
  %6790 = icmp eq i32 %6788, %6789
  %6791 = zext i1 %6790 to i32
  store i32 %6791, ptr %44, align 4, !tbaa !9
  %6792 = load i32, ptr %44, align 4, !tbaa !9
  %6793 = icmp ne i32 %6792, 0
  br i1 %6793, label %6794, label %6796

6794:                                             ; preds = %6784
  %6795 = load i32, ptr %42, align 4, !tbaa !9
  br label %6798

6796:                                             ; preds = %6784
  %6797 = load i32, ptr %43, align 4, !tbaa !9
  br label %6798

6798:                                             ; preds = %6796, %6794
  %6799 = phi i32 [ %6795, %6794 ], [ %6797, %6796 ]
  store i32 %6799, ptr %42, align 4, !tbaa !9
  %6800 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6800, ptr %22, align 4, !tbaa !9
  %6801 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %6801, ptr %42, align 4, !tbaa !9
  %6802 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %6802, ptr %43, align 4, !tbaa !9
  %6803 = load i32, ptr %43, align 4, !tbaa !9
  %6804 = load i32, ptr %42, align 4, !tbaa !9
  %6805 = add i32 %6804, %6803
  store i32 %6805, ptr %42, align 4, !tbaa !9
  %6806 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6806, ptr %11, align 4, !tbaa !9
  %6807 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %6807, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %6808 = load i32, ptr %43, align 4, !tbaa !9
  %6809 = load i32, ptr %42, align 4, !tbaa !9
  %6810 = add i32 %6809, %6808
  store i32 %6810, ptr %42, align 4, !tbaa !9
  %6811 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6811, ptr %24, align 4, !tbaa !9
  %6812 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6812, ptr %42, align 4, !tbaa !9
  %6813 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6813, ptr %43, align 4, !tbaa !9
  %6814 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6814, ptr %44, align 4, !tbaa !9
  %6815 = load i32, ptr %44, align 4, !tbaa !9
  %6816 = load i32, ptr %43, align 4, !tbaa !9
  %6817 = and i32 %6816, %6815
  store i32 %6817, ptr %43, align 4, !tbaa !9
  %6818 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6818, ptr %26, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %6819 = load i32, ptr %44, align 4, !tbaa !9
  %6820 = and i32 %6819, 31
  %6821 = load i32, ptr %43, align 4, !tbaa !9
  %6822 = shl i32 %6821, %6820
  store i32 %6822, ptr %43, align 4, !tbaa !9
  %6823 = load i32, ptr %43, align 4, !tbaa !9
  %6824 = load i32, ptr %42, align 4, !tbaa !9
  %6825 = add i32 %6824, %6823
  store i32 %6825, ptr %42, align 4, !tbaa !9
  %6826 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6826, ptr %14, align 4, !tbaa !9
  %6827 = load ptr, ptr %6, align 8, !tbaa !5
  %6828 = getelementptr inbounds %struct.w2c_hermes, ptr %6827, i32 0, i32 6
  %6829 = load i32, ptr %42, align 4, !tbaa !9
  %6830 = zext i32 %6829 to i64
  %6831 = call i32 @i32_load(ptr noundef %6828, i64 noundef %6830)
  store i32 %6831, ptr %42, align 4, !tbaa !9
  %6832 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6832, ptr %25, align 4, !tbaa !9
  %6833 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %6833, ptr %43, align 4, !tbaa !9
  %6834 = load i32, ptr %42, align 4, !tbaa !9
  %6835 = load i32, ptr %43, align 4, !tbaa !9
  %6836 = icmp ne i32 %6834, %6835
  %6837 = zext i1 %6836 to i32
  store i32 %6837, ptr %42, align 4, !tbaa !9
  %6838 = load i32, ptr %42, align 4, !tbaa !9
  %6839 = icmp ne i32 %6838, 0
  br i1 %6839, label %6840, label %6841

6840:                                             ; preds = %6798
  br label %6753

6841:                                             ; preds = %6798
  br label %7704

6842:                                             ; preds = %6771, %6702
  %6843 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6843, ptr %42, align 4, !tbaa !9
  %6844 = load ptr, ptr %6, align 8, !tbaa !5
  %6845 = getelementptr inbounds %struct.w2c_hermes, ptr %6844, i32 0, i32 6
  %6846 = load i32, ptr %42, align 4, !tbaa !9
  %6847 = zext i32 %6846 to i64
  %6848 = add i64 %6847, 40
  %6849 = call i32 @i32_load(ptr noundef %6845, i64 noundef %6848)
  store i32 %6849, ptr %42, align 4, !tbaa !9
  %6850 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6850, ptr %11, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %6851 = load i32, ptr %43, align 4, !tbaa !9
  %6852 = and i32 %6851, 31
  %6853 = load i32, ptr %42, align 4, !tbaa !9
  %6854 = shl i32 %6853, %6852
  store i32 %6854, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %6855 = load i32, ptr %43, align 4, !tbaa !9
  %6856 = load i32, ptr %42, align 4, !tbaa !9
  %6857 = add i32 %6856, %6855
  store i32 %6857, ptr %42, align 4, !tbaa !9
  %6858 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6858, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %6859 = load i32, ptr %44, align 4, !tbaa !9
  %6860 = load i32, ptr %43, align 4, !tbaa !9
  %6861 = mul i32 %6860, %6859
  store i32 %6861, ptr %43, align 4, !tbaa !9
  %6862 = load i32, ptr %42, align 4, !tbaa !9
  %6863 = load i32, ptr %43, align 4, !tbaa !9
  %6864 = icmp uge i32 %6862, %6863
  %6865 = zext i1 %6864 to i32
  store i32 %6865, ptr %42, align 4, !tbaa !9
  %6866 = load i32, ptr %42, align 4, !tbaa !9
  %6867 = icmp ne i32 %6866, 0
  br i1 %6867, label %6868, label %6875

6868:                                             ; preds = %6842
  %6869 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6869, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %6870 = load i32, ptr %43, align 4, !tbaa !9
  %6871 = and i32 %6870, 31
  %6872 = load i32, ptr %42, align 4, !tbaa !9
  %6873 = shl i32 %6872, %6871
  store i32 %6873, ptr %42, align 4, !tbaa !9
  %6874 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6874, ptr %18, align 4, !tbaa !9
  br label %6908

6875:                                             ; preds = %6842
  %6876 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6876, ptr %42, align 4, !tbaa !9
  %6877 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %6877, ptr %18, align 4, !tbaa !9
  %6878 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6878, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %6879 = load i32, ptr %44, align 4, !tbaa !9
  %6880 = load i32, ptr %43, align 4, !tbaa !9
  %6881 = xor i32 %6880, %6879
  store i32 %6881, ptr %43, align 4, !tbaa !9
  %6882 = load i32, ptr %43, align 4, !tbaa !9
  %6883 = load i32, ptr %42, align 4, !tbaa !9
  %6884 = add i32 %6883, %6882
  store i32 %6884, ptr %42, align 4, !tbaa !9
  %6885 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6885, ptr %43, align 4, !tbaa !9
  %6886 = load ptr, ptr %6, align 8, !tbaa !5
  %6887 = getelementptr inbounds %struct.w2c_hermes, ptr %6886, i32 0, i32 6
  %6888 = load i32, ptr %43, align 4, !tbaa !9
  %6889 = zext i32 %6888 to i64
  %6890 = add i64 %6889, 44
  %6891 = call i32 @i32_load(ptr noundef %6887, i64 noundef %6890)
  store i32 %6891, ptr %43, align 4, !tbaa !9
  %6892 = load i32, ptr %43, align 4, !tbaa !9
  %6893 = load i32, ptr %42, align 4, !tbaa !9
  %6894 = sub i32 %6893, %6892
  store i32 %6894, ptr %42, align 4, !tbaa !9
  %6895 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6895, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %6896 = load i32, ptr %44, align 4, !tbaa !9
  %6897 = and i32 %6896, 31
  %6898 = load i32, ptr %43, align 4, !tbaa !9
  %6899 = lshr i32 %6898, %6897
  store i32 %6899, ptr %43, align 4, !tbaa !9
  %6900 = load i32, ptr %42, align 4, !tbaa !9
  %6901 = load i32, ptr %43, align 4, !tbaa !9
  %6902 = icmp ugt i32 %6900, %6901
  %6903 = zext i1 %6902 to i32
  store i32 %6903, ptr %42, align 4, !tbaa !9
  %6904 = load i32, ptr %42, align 4, !tbaa !9
  %6905 = icmp ne i32 %6904, 0
  br i1 %6905, label %6906, label %6907

6906:                                             ; preds = %6875
  br label %7645

6907:                                             ; preds = %6875
  br label %6908

6908:                                             ; preds = %6907, %6868
  %6909 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6909, ptr %42, align 4, !tbaa !9
  store i32 64, ptr %43, align 4, !tbaa !9
  %6910 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6910, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %6911 = load i32, ptr %45, align 4, !tbaa !9
  %6912 = load i32, ptr %44, align 4, !tbaa !9
  %6913 = sub i32 %6912, %6911
  store i32 %6913, ptr %44, align 4, !tbaa !9
  %6914 = load i32, ptr %44, align 4, !tbaa !9
  %6915 = zext i32 %6914 to i64
  store i64 %6915, ptr %50, align 8, !tbaa !11
  %6916 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %6916, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %51, align 8, !tbaa !11
  %6917 = load i64, ptr %51, align 8, !tbaa !11
  %6918 = and i64 %6917, 63
  %6919 = load i64, ptr %50, align 8, !tbaa !11
  %6920 = lshr i64 %6919, %6918
  store i64 %6920, ptr %50, align 8, !tbaa !11
  %6921 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6921, ptr %51, align 8, !tbaa !11
  %6922 = load i64, ptr %51, align 8, !tbaa !11
  %6923 = load i64, ptr %50, align 8, !tbaa !11
  %6924 = or i64 %6923, %6922
  store i64 %6924, ptr %50, align 8, !tbaa !11
  %6925 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %6925, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %51, align 8, !tbaa !11
  %6926 = load i64, ptr %51, align 8, !tbaa !11
  %6927 = and i64 %6926, 63
  %6928 = load i64, ptr %50, align 8, !tbaa !11
  %6929 = lshr i64 %6928, %6927
  store i64 %6929, ptr %50, align 8, !tbaa !11
  %6930 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6930, ptr %51, align 8, !tbaa !11
  %6931 = load i64, ptr %51, align 8, !tbaa !11
  %6932 = load i64, ptr %50, align 8, !tbaa !11
  %6933 = or i64 %6932, %6931
  store i64 %6933, ptr %50, align 8, !tbaa !11
  %6934 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %6934, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %51, align 8, !tbaa !11
  %6935 = load i64, ptr %51, align 8, !tbaa !11
  %6936 = and i64 %6935, 63
  %6937 = load i64, ptr %50, align 8, !tbaa !11
  %6938 = lshr i64 %6937, %6936
  store i64 %6938, ptr %50, align 8, !tbaa !11
  %6939 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6939, ptr %51, align 8, !tbaa !11
  %6940 = load i64, ptr %51, align 8, !tbaa !11
  %6941 = load i64, ptr %50, align 8, !tbaa !11
  %6942 = or i64 %6941, %6940
  store i64 %6942, ptr %50, align 8, !tbaa !11
  %6943 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %6943, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %51, align 8, !tbaa !11
  %6944 = load i64, ptr %51, align 8, !tbaa !11
  %6945 = and i64 %6944, 63
  %6946 = load i64, ptr %50, align 8, !tbaa !11
  %6947 = lshr i64 %6946, %6945
  store i64 %6947, ptr %50, align 8, !tbaa !11
  %6948 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6948, ptr %51, align 8, !tbaa !11
  %6949 = load i64, ptr %51, align 8, !tbaa !11
  %6950 = load i64, ptr %50, align 8, !tbaa !11
  %6951 = or i64 %6950, %6949
  store i64 %6951, ptr %50, align 8, !tbaa !11
  %6952 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %6952, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %51, align 8, !tbaa !11
  %6953 = load i64, ptr %51, align 8, !tbaa !11
  %6954 = and i64 %6953, 63
  %6955 = load i64, ptr %50, align 8, !tbaa !11
  %6956 = lshr i64 %6955, %6954
  store i64 %6956, ptr %50, align 8, !tbaa !11
  %6957 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6957, ptr %51, align 8, !tbaa !11
  %6958 = load i64, ptr %51, align 8, !tbaa !11
  %6959 = load i64, ptr %50, align 8, !tbaa !11
  %6960 = or i64 %6959, %6958
  store i64 %6960, ptr %50, align 8, !tbaa !11
  %6961 = load i64, ptr %50, align 8, !tbaa !11
  %6962 = trunc i64 %6961 to i32
  store i32 %6962, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %6963 = load i32, ptr %45, align 4, !tbaa !9
  %6964 = load i32, ptr %44, align 4, !tbaa !9
  %6965 = add i32 %6964, %6963
  store i32 %6965, ptr %44, align 4, !tbaa !9
  %6966 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %6966, ptr %11, align 4, !tbaa !9
  %6967 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6967, ptr %45, align 4, !tbaa !9
  store i32 64, ptr %46, align 4, !tbaa !9
  %6968 = load i32, ptr %45, align 4, !tbaa !9
  %6969 = load i32, ptr %46, align 4, !tbaa !9
  %6970 = icmp ule i32 %6968, %6969
  %6971 = zext i1 %6970 to i32
  store i32 %6971, ptr %45, align 4, !tbaa !9
  %6972 = load i32, ptr %45, align 4, !tbaa !9
  %6973 = icmp ne i32 %6972, 0
  br i1 %6973, label %6974, label %6976

6974:                                             ; preds = %6908
  %6975 = load i32, ptr %43, align 4, !tbaa !9
  br label %6978

6976:                                             ; preds = %6908
  %6977 = load i32, ptr %44, align 4, !tbaa !9
  br label %6978

6978:                                             ; preds = %6976, %6974
  %6979 = phi i32 [ %6975, %6974 ], [ %6977, %6976 ]
  store i32 %6979, ptr %43, align 4, !tbaa !9
  %6980 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6980, ptr %11, align 4, !tbaa !9
  %6981 = load ptr, ptr %6, align 8, !tbaa !5
  %6982 = getelementptr inbounds %struct.w2c_hermes, ptr %6981, i32 0, i32 6
  %6983 = load i32, ptr %42, align 4, !tbaa !9
  %6984 = zext i32 %6983 to i64
  %6985 = add i64 %6984, 48
  %6986 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6982, i64 noundef %6985, i32 noundef %6986)
  %6987 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %6987, ptr %42, align 4, !tbaa !9
  %6988 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6988, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %6989 = load i32, ptr %44, align 4, !tbaa !9
  %6990 = and i32 %6989, 31
  %6991 = load i32, ptr %43, align 4, !tbaa !9
  %6992 = shl i32 %6991, %6990
  store i32 %6992, ptr %43, align 4, !tbaa !9
  %6993 = load ptr, ptr %6, align 8, !tbaa !5
  %6994 = load i32, ptr %43, align 4, !tbaa !9
  %6995 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %6993, i32 noundef %6994)
  store i32 %6995, ptr %43, align 4, !tbaa !9
  %6996 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %6996, ptr %22, align 4, !tbaa !9
  %6997 = load ptr, ptr %6, align 8, !tbaa !5
  %6998 = getelementptr inbounds %struct.w2c_hermes, ptr %6997, i32 0, i32 6
  %6999 = load i32, ptr %42, align 4, !tbaa !9
  %7000 = zext i32 %6999 to i64
  %7001 = add i64 %7000, 36
  %7002 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6998, i64 noundef %7001, i32 noundef %7002)
  %7003 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7003, ptr %42, align 4, !tbaa !9
  %7004 = load i32, ptr %42, align 4, !tbaa !9
  %7005 = icmp ne i32 %7004, 0
  %7006 = xor i1 %7005, true
  %7007 = zext i1 %7006 to i32
  store i32 %7007, ptr %42, align 4, !tbaa !9
  %7008 = load i32, ptr %42, align 4, !tbaa !9
  %7009 = icmp ne i32 %7008, 0
  br i1 %7009, label %7010, label %7140

7010:                                             ; preds = %6978
  %7011 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7011, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %7012 = load ptr, ptr %6, align 8, !tbaa !5
  %7013 = getelementptr inbounds %struct.w2c_hermes, ptr %7012, i32 0, i32 6
  %7014 = load i32, ptr %42, align 4, !tbaa !9
  %7015 = zext i32 %7014 to i64
  %7016 = add i64 %7015, 40
  %7017 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7013, i64 noundef %7016, i64 noundef %7017)
  %7018 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7018, ptr %42, align 4, !tbaa !9
  %7019 = load ptr, ptr %6, align 8, !tbaa !5
  %7020 = getelementptr inbounds %struct.w2c_hermes, ptr %7019, i32 0, i32 6
  %7021 = load i32, ptr %42, align 4, !tbaa !9
  %7022 = zext i32 %7021 to i64
  %7023 = add i64 %7022, 48
  %7024 = call i32 @i32_load(ptr noundef %7020, i64 noundef %7023)
  store i32 %7024, ptr %42, align 4, !tbaa !9
  %7025 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7025, ptr %18, align 4, !tbaa !9
  %7026 = load i32, ptr %42, align 4, !tbaa !9
  %7027 = icmp ne i32 %7026, 0
  %7028 = xor i1 %7027, true
  %7029 = zext i1 %7028 to i32
  store i32 %7029, ptr %42, align 4, !tbaa !9
  %7030 = load i32, ptr %42, align 4, !tbaa !9
  %7031 = icmp ne i32 %7030, 0
  br i1 %7031, label %7032, label %7034

7032:                                             ; preds = %7010
  store i32 0, ptr %42, align 4, !tbaa !9
  %7033 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7033, ptr %18, align 4, !tbaa !9
  br label %7506

7034:                                             ; preds = %7010
  store i32 0, ptr %42, align 4, !tbaa !9
  %7035 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7035, ptr %17, align 4, !tbaa !9
  %7036 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7036, ptr %42, align 4, !tbaa !9
  %7037 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7037, ptr %11, align 4, !tbaa !9
  %7038 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7038, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %7039 = load i32, ptr %43, align 4, !tbaa !9
  %7040 = load i32, ptr %42, align 4, !tbaa !9
  %7041 = and i32 %7040, %7039
  store i32 %7041, ptr %42, align 4, !tbaa !9
  %7042 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7042, ptr %10, align 4, !tbaa !9
  %7043 = load i32, ptr %42, align 4, !tbaa !9
  %7044 = icmp ne i32 %7043, 0
  br i1 %7044, label %7045, label %7072

7045:                                             ; preds = %7034
  br label %7046

7046:                                             ; preds = %7070, %7045
  %7047 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7047, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %7048 = load ptr, ptr %6, align 8, !tbaa !5
  %7049 = getelementptr inbounds %struct.w2c_hermes, ptr %7048, i32 0, i32 6
  %7050 = load i32, ptr %42, align 4, !tbaa !9
  %7051 = zext i32 %7050 to i64
  %7052 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7049, i64 noundef %7051, i32 noundef %7052)
  %7053 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7053, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %7054 = load i32, ptr %43, align 4, !tbaa !9
  %7055 = load i32, ptr %42, align 4, !tbaa !9
  %7056 = add i32 %7055, %7054
  store i32 %7056, ptr %42, align 4, !tbaa !9
  %7057 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7057, ptr %11, align 4, !tbaa !9
  %7058 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7058, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %7059 = load i32, ptr %43, align 4, !tbaa !9
  %7060 = load i32, ptr %42, align 4, !tbaa !9
  %7061 = add i32 %7060, %7059
  store i32 %7061, ptr %42, align 4, !tbaa !9
  %7062 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7062, ptr %17, align 4, !tbaa !9
  %7063 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7063, ptr %43, align 4, !tbaa !9
  %7064 = load i32, ptr %42, align 4, !tbaa !9
  %7065 = load i32, ptr %43, align 4, !tbaa !9
  %7066 = icmp ne i32 %7064, %7065
  %7067 = zext i1 %7066 to i32
  store i32 %7067, ptr %42, align 4, !tbaa !9
  %7068 = load i32, ptr %42, align 4, !tbaa !9
  %7069 = icmp ne i32 %7068, 0
  br i1 %7069, label %7070, label %7071

7070:                                             ; preds = %7046
  br label %7046

7071:                                             ; preds = %7046
  br label %7072

7072:                                             ; preds = %7071, %7034
  %7073 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7073, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %7074 = load i32, ptr %43, align 4, !tbaa !9
  %7075 = load i32, ptr %42, align 4, !tbaa !9
  %7076 = sub i32 %7075, %7074
  store i32 %7076, ptr %42, align 4, !tbaa !9
  store i32 1073741823, ptr %43, align 4, !tbaa !9
  %7077 = load i32, ptr %43, align 4, !tbaa !9
  %7078 = load i32, ptr %42, align 4, !tbaa !9
  %7079 = and i32 %7078, %7077
  store i32 %7079, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %7080 = load i32, ptr %42, align 4, !tbaa !9
  %7081 = load i32, ptr %43, align 4, !tbaa !9
  %7082 = icmp ult i32 %7080, %7081
  %7083 = zext i1 %7082 to i32
  store i32 %7083, ptr %42, align 4, !tbaa !9
  %7084 = load i32, ptr %42, align 4, !tbaa !9
  %7085 = icmp ne i32 %7084, 0
  br i1 %7085, label %7086, label %7087

7086:                                             ; preds = %7072
  br label %7506

7087:                                             ; preds = %7072
  %7088 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7088, ptr %42, align 4, !tbaa !9
  %7089 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7089, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %7090 = load i32, ptr %44, align 4, !tbaa !9
  %7091 = and i32 %7090, 31
  %7092 = load i32, ptr %43, align 4, !tbaa !9
  %7093 = shl i32 %7092, %7091
  store i32 %7093, ptr %43, align 4, !tbaa !9
  %7094 = load i32, ptr %43, align 4, !tbaa !9
  %7095 = load i32, ptr %42, align 4, !tbaa !9
  %7096 = add i32 %7095, %7094
  store i32 %7096, ptr %42, align 4, !tbaa !9
  %7097 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7097, ptr %10, align 4, !tbaa !9
  br label %7098

7098:                                             ; preds = %7138, %7087
  %7099 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7099, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %7100 = load ptr, ptr %6, align 8, !tbaa !5
  %7101 = getelementptr inbounds %struct.w2c_hermes, ptr %7100, i32 0, i32 6
  %7102 = load i32, ptr %42, align 4, !tbaa !9
  %7103 = zext i32 %7102 to i64
  %7104 = add i64 %7103, 24
  %7105 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7101, i64 noundef %7104, i64 noundef %7105)
  %7106 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7106, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %7107 = load ptr, ptr %6, align 8, !tbaa !5
  %7108 = getelementptr inbounds %struct.w2c_hermes, ptr %7107, i32 0, i32 6
  %7109 = load i32, ptr %42, align 4, !tbaa !9
  %7110 = zext i32 %7109 to i64
  %7111 = add i64 %7110, 16
  %7112 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7108, i64 noundef %7111, i64 noundef %7112)
  %7113 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7113, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %7114 = load ptr, ptr %6, align 8, !tbaa !5
  %7115 = getelementptr inbounds %struct.w2c_hermes, ptr %7114, i32 0, i32 6
  %7116 = load i32, ptr %42, align 4, !tbaa !9
  %7117 = zext i32 %7116 to i64
  %7118 = add i64 %7117, 8
  %7119 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7115, i64 noundef %7118, i64 noundef %7119)
  %7120 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7120, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %7121 = load ptr, ptr %6, align 8, !tbaa !5
  %7122 = getelementptr inbounds %struct.w2c_hermes, ptr %7121, i32 0, i32 6
  %7123 = load i32, ptr %42, align 4, !tbaa !9
  %7124 = zext i32 %7123 to i64
  %7125 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7122, i64 noundef %7124, i64 noundef %7125)
  %7126 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7126, ptr %42, align 4, !tbaa !9
  store i32 32, ptr %43, align 4, !tbaa !9
  %7127 = load i32, ptr %43, align 4, !tbaa !9
  %7128 = load i32, ptr %42, align 4, !tbaa !9
  %7129 = add i32 %7128, %7127
  store i32 %7129, ptr %42, align 4, !tbaa !9
  %7130 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7130, ptr %11, align 4, !tbaa !9
  %7131 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7131, ptr %43, align 4, !tbaa !9
  %7132 = load i32, ptr %42, align 4, !tbaa !9
  %7133 = load i32, ptr %43, align 4, !tbaa !9
  %7134 = icmp ne i32 %7132, %7133
  %7135 = zext i1 %7134 to i32
  store i32 %7135, ptr %42, align 4, !tbaa !9
  %7136 = load i32, ptr %42, align 4, !tbaa !9
  %7137 = icmp ne i32 %7136, 0
  br i1 %7137, label %7138, label %7139

7138:                                             ; preds = %7098
  br label %7098

7139:                                             ; preds = %7098
  br label %7506

7140:                                             ; preds = %6978
  %7141 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7141, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %7142 = load ptr, ptr %6, align 8, !tbaa !5
  %7143 = getelementptr inbounds %struct.w2c_hermes, ptr %7142, i32 0, i32 6
  %7144 = load i32, ptr %42, align 4, !tbaa !9
  %7145 = zext i32 %7144 to i64
  %7146 = add i64 %7145, 40
  %7147 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7143, i64 noundef %7146, i64 noundef %7147)
  %7148 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7148, ptr %42, align 4, !tbaa !9
  %7149 = load ptr, ptr %6, align 8, !tbaa !5
  %7150 = getelementptr inbounds %struct.w2c_hermes, ptr %7149, i32 0, i32 6
  %7151 = load i32, ptr %42, align 4, !tbaa !9
  %7152 = zext i32 %7151 to i64
  %7153 = add i64 %7152, 48
  %7154 = call i32 @i32_load(ptr noundef %7150, i64 noundef %7153)
  store i32 %7154, ptr %42, align 4, !tbaa !9
  %7155 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7155, ptr %24, align 4, !tbaa !9
  %7156 = load i32, ptr %42, align 4, !tbaa !9
  %7157 = icmp ne i32 %7156, 0
  %7158 = xor i1 %7157, true
  %7159 = zext i1 %7158 to i32
  store i32 %7159, ptr %42, align 4, !tbaa !9
  %7160 = load i32, ptr %42, align 4, !tbaa !9
  %7161 = icmp ne i32 %7160, 0
  br i1 %7161, label %7162, label %7163

7162:                                             ; preds = %7140
  br label %7269

7163:                                             ; preds = %7140
  store i32 0, ptr %42, align 4, !tbaa !9
  %7164 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7164, ptr %26, align 4, !tbaa !9
  %7165 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7165, ptr %42, align 4, !tbaa !9
  %7166 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7166, ptr %14, align 4, !tbaa !9
  %7167 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %7167, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %7168 = load i32, ptr %43, align 4, !tbaa !9
  %7169 = load i32, ptr %42, align 4, !tbaa !9
  %7170 = and i32 %7169, %7168
  store i32 %7170, ptr %42, align 4, !tbaa !9
  %7171 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7171, ptr %11, align 4, !tbaa !9
  %7172 = load i32, ptr %42, align 4, !tbaa !9
  %7173 = icmp ne i32 %7172, 0
  br i1 %7173, label %7174, label %7201

7174:                                             ; preds = %7163
  br label %7175

7175:                                             ; preds = %7199, %7174
  %7176 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7176, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %7177 = load ptr, ptr %6, align 8, !tbaa !5
  %7178 = getelementptr inbounds %struct.w2c_hermes, ptr %7177, i32 0, i32 6
  %7179 = load i32, ptr %42, align 4, !tbaa !9
  %7180 = zext i32 %7179 to i64
  %7181 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7178, i64 noundef %7180, i32 noundef %7181)
  %7182 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7182, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %7183 = load i32, ptr %43, align 4, !tbaa !9
  %7184 = load i32, ptr %42, align 4, !tbaa !9
  %7185 = add i32 %7184, %7183
  store i32 %7185, ptr %42, align 4, !tbaa !9
  %7186 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7186, ptr %14, align 4, !tbaa !9
  %7187 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %7187, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %7188 = load i32, ptr %43, align 4, !tbaa !9
  %7189 = load i32, ptr %42, align 4, !tbaa !9
  %7190 = add i32 %7189, %7188
  store i32 %7190, ptr %42, align 4, !tbaa !9
  %7191 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7191, ptr %26, align 4, !tbaa !9
  %7192 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7192, ptr %43, align 4, !tbaa !9
  %7193 = load i32, ptr %42, align 4, !tbaa !9
  %7194 = load i32, ptr %43, align 4, !tbaa !9
  %7195 = icmp ne i32 %7193, %7194
  %7196 = zext i1 %7195 to i32
  store i32 %7196, ptr %42, align 4, !tbaa !9
  %7197 = load i32, ptr %42, align 4, !tbaa !9
  %7198 = icmp ne i32 %7197, 0
  br i1 %7198, label %7199, label %7200

7199:                                             ; preds = %7175
  br label %7175

7200:                                             ; preds = %7175
  br label %7201

7201:                                             ; preds = %7200, %7163
  %7202 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %7202, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %7203 = load i32, ptr %43, align 4, !tbaa !9
  %7204 = load i32, ptr %42, align 4, !tbaa !9
  %7205 = sub i32 %7204, %7203
  store i32 %7205, ptr %42, align 4, !tbaa !9
  store i32 1073741823, ptr %43, align 4, !tbaa !9
  %7206 = load i32, ptr %43, align 4, !tbaa !9
  %7207 = load i32, ptr %42, align 4, !tbaa !9
  %7208 = and i32 %7207, %7206
  store i32 %7208, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %7209 = load i32, ptr %42, align 4, !tbaa !9
  %7210 = load i32, ptr %43, align 4, !tbaa !9
  %7211 = icmp ult i32 %7209, %7210
  %7212 = zext i1 %7211 to i32
  store i32 %7212, ptr %42, align 4, !tbaa !9
  %7213 = load i32, ptr %42, align 4, !tbaa !9
  %7214 = icmp ne i32 %7213, 0
  br i1 %7214, label %7215, label %7216

7215:                                             ; preds = %7201
  br label %7269

7216:                                             ; preds = %7201
  %7217 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7217, ptr %42, align 4, !tbaa !9
  %7218 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %7218, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %7219 = load i32, ptr %44, align 4, !tbaa !9
  %7220 = and i32 %7219, 31
  %7221 = load i32, ptr %43, align 4, !tbaa !9
  %7222 = shl i32 %7221, %7220
  store i32 %7222, ptr %43, align 4, !tbaa !9
  %7223 = load i32, ptr %43, align 4, !tbaa !9
  %7224 = load i32, ptr %42, align 4, !tbaa !9
  %7225 = add i32 %7224, %7223
  store i32 %7225, ptr %42, align 4, !tbaa !9
  %7226 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7226, ptr %11, align 4, !tbaa !9
  br label %7227

7227:                                             ; preds = %7267, %7216
  %7228 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7228, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %7229 = load ptr, ptr %6, align 8, !tbaa !5
  %7230 = getelementptr inbounds %struct.w2c_hermes, ptr %7229, i32 0, i32 6
  %7231 = load i32, ptr %42, align 4, !tbaa !9
  %7232 = zext i32 %7231 to i64
  %7233 = add i64 %7232, 24
  %7234 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7230, i64 noundef %7233, i64 noundef %7234)
  %7235 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7235, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %7236 = load ptr, ptr %6, align 8, !tbaa !5
  %7237 = getelementptr inbounds %struct.w2c_hermes, ptr %7236, i32 0, i32 6
  %7238 = load i32, ptr %42, align 4, !tbaa !9
  %7239 = zext i32 %7238 to i64
  %7240 = add i64 %7239, 16
  %7241 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7237, i64 noundef %7240, i64 noundef %7241)
  %7242 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7242, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %7243 = load ptr, ptr %6, align 8, !tbaa !5
  %7244 = getelementptr inbounds %struct.w2c_hermes, ptr %7243, i32 0, i32 6
  %7245 = load i32, ptr %42, align 4, !tbaa !9
  %7246 = zext i32 %7245 to i64
  %7247 = add i64 %7246, 8
  %7248 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7244, i64 noundef %7247, i64 noundef %7248)
  %7249 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7249, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %7250 = load ptr, ptr %6, align 8, !tbaa !5
  %7251 = getelementptr inbounds %struct.w2c_hermes, ptr %7250, i32 0, i32 6
  %7252 = load i32, ptr %42, align 4, !tbaa !9
  %7253 = zext i32 %7252 to i64
  %7254 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7251, i64 noundef %7253, i64 noundef %7254)
  %7255 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7255, ptr %42, align 4, !tbaa !9
  store i32 32, ptr %43, align 4, !tbaa !9
  %7256 = load i32, ptr %43, align 4, !tbaa !9
  %7257 = load i32, ptr %42, align 4, !tbaa !9
  %7258 = add i32 %7257, %7256
  store i32 %7258, ptr %42, align 4, !tbaa !9
  %7259 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7259, ptr %14, align 4, !tbaa !9
  %7260 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7260, ptr %43, align 4, !tbaa !9
  %7261 = load i32, ptr %42, align 4, !tbaa !9
  %7262 = load i32, ptr %43, align 4, !tbaa !9
  %7263 = icmp ne i32 %7261, %7262
  %7264 = zext i1 %7263 to i32
  store i32 %7264, ptr %42, align 4, !tbaa !9
  %7265 = load i32, ptr %42, align 4, !tbaa !9
  %7266 = icmp ne i32 %7265, 0
  br i1 %7266, label %7267, label %7268

7267:                                             ; preds = %7227
  br label %7227

7268:                                             ; preds = %7227
  br label %7269

7269:                                             ; preds = %7268, %7215, %7162
  %7270 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7270, ptr %42, align 4, !tbaa !9
  %7271 = load i32, ptr %42, align 4, !tbaa !9
  %7272 = icmp ne i32 %7271, 0
  br i1 %7272, label %7273, label %7486

7273:                                             ; preds = %7269
  %7274 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7274, ptr %42, align 4, !tbaa !9
  %7275 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7275, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %7276 = load i32, ptr %44, align 4, !tbaa !9
  %7277 = and i32 %7276, 31
  %7278 = load i32, ptr %43, align 4, !tbaa !9
  %7279 = shl i32 %7278, %7277
  store i32 %7279, ptr %43, align 4, !tbaa !9
  %7280 = load i32, ptr %43, align 4, !tbaa !9
  %7281 = load i32, ptr %42, align 4, !tbaa !9
  %7282 = add i32 %7281, %7280
  store i32 %7282, ptr %42, align 4, !tbaa !9
  %7283 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7283, ptr %17, align 4, !tbaa !9
  %7284 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %7284, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %7285 = load i32, ptr %43, align 4, !tbaa !9
  %7286 = load i32, ptr %42, align 4, !tbaa !9
  %7287 = sub i32 %7286, %7285
  store i32 %7287, ptr %42, align 4, !tbaa !9
  %7288 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7288, ptr %33, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %7289 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7289, ptr %18, align 4, !tbaa !9
  %7290 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7290, ptr %42, align 4, !tbaa !9
  %7291 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7291, ptr %11, align 4, !tbaa !9
  br label %7292

7292:                                             ; preds = %7484, %7273
  %7293 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7293, ptr %42, align 4, !tbaa !9
  %7294 = load ptr, ptr %6, align 8, !tbaa !5
  %7295 = getelementptr inbounds %struct.w2c_hermes, ptr %7294, i32 0, i32 6
  %7296 = load i32, ptr %42, align 4, !tbaa !9
  %7297 = zext i32 %7296 to i64
  %7298 = call i32 @i32_load(ptr noundef %7295, i64 noundef %7297)
  store i32 %7298, ptr %42, align 4, !tbaa !9
  %7299 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7299, ptr %34, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %7300 = load i32, ptr %43, align 4, !tbaa !9
  %7301 = load i32, ptr %42, align 4, !tbaa !9
  %7302 = add i32 %7301, %7300
  store i32 %7302, ptr %42, align 4, !tbaa !9
  %7303 = load i32, ptr %42, align 4, !tbaa !9
  switch i32 %7303, label %7309 [
    i32 0, label %7304
    i32 1, label %7305
    i32 2, label %7306
    i32 3, label %7307
    i32 4, label %7308
  ]

7304:                                             ; preds = %7292
  br label %7471

7305:                                             ; preds = %7292
  br label %7310

7306:                                             ; preds = %7292
  br label %7310

7307:                                             ; preds = %7292
  br label %7310

7308:                                             ; preds = %7292
  br label %7471

7309:                                             ; preds = %7292
  br label %7310

7310:                                             ; preds = %7309, %7307, %7306, %7305
  %7311 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7311, ptr %42, align 4, !tbaa !9
  %7312 = load ptr, ptr %6, align 8, !tbaa !5
  %7313 = getelementptr inbounds %struct.w2c_hermes, ptr %7312, i32 0, i32 6
  %7314 = load i32, ptr %42, align 4, !tbaa !9
  %7315 = zext i32 %7314 to i64
  %7316 = add i64 %7315, 36
  %7317 = call i32 @i32_load(ptr noundef %7313, i64 noundef %7316)
  store i32 %7317, ptr %42, align 4, !tbaa !9
  %7318 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7318, ptr %14, align 4, !tbaa !9
  %7319 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %7319, ptr %43, align 4, !tbaa !9
  store i32 4, ptr %44, align 4, !tbaa !9
  %7320 = load i32, ptr %44, align 4, !tbaa !9
  %7321 = and i32 %7320, 31
  %7322 = load i32, ptr %43, align 4, !tbaa !9
  %7323 = lshr i32 %7322, %7321
  store i32 %7323, ptr %43, align 4, !tbaa !9
  %7324 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %7324, ptr %44, align 4, !tbaa !9
  store i32 9, ptr %45, align 4, !tbaa !9
  %7325 = load i32, ptr %45, align 4, !tbaa !9
  %7326 = and i32 %7325, 31
  %7327 = load i32, ptr %44, align 4, !tbaa !9
  %7328 = lshr i32 %7327, %7326
  store i32 %7328, ptr %44, align 4, !tbaa !9
  %7329 = load i32, ptr %44, align 4, !tbaa !9
  %7330 = load i32, ptr %43, align 4, !tbaa !9
  %7331 = xor i32 %7330, %7329
  store i32 %7331, ptr %43, align 4, !tbaa !9
  %7332 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %7332, ptr %44, align 4, !tbaa !9
  %7333 = load i32, ptr %44, align 4, !tbaa !9
  %7334 = load i32, ptr %43, align 4, !tbaa !9
  %7335 = and i32 %7334, %7333
  store i32 %7335, ptr %43, align 4, !tbaa !9
  %7336 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %7336, ptr %24, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %7337 = load i32, ptr %44, align 4, !tbaa !9
  %7338 = and i32 %7337, 31
  %7339 = load i32, ptr %43, align 4, !tbaa !9
  %7340 = shl i32 %7339, %7338
  store i32 %7340, ptr %43, align 4, !tbaa !9
  %7341 = load i32, ptr %43, align 4, !tbaa !9
  %7342 = load i32, ptr %42, align 4, !tbaa !9
  %7343 = add i32 %7342, %7341
  store i32 %7343, ptr %42, align 4, !tbaa !9
  %7344 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7344, ptr %22, align 4, !tbaa !9
  %7345 = load ptr, ptr %6, align 8, !tbaa !5
  %7346 = getelementptr inbounds %struct.w2c_hermes, ptr %7345, i32 0, i32 6
  %7347 = load i32, ptr %42, align 4, !tbaa !9
  %7348 = zext i32 %7347 to i64
  %7349 = call i32 @i32_load(ptr noundef %7346, i64 noundef %7348)
  store i32 %7349, ptr %42, align 4, !tbaa !9
  %7350 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7350, ptr %26, align 4, !tbaa !9
  %7351 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %7351, ptr %43, align 4, !tbaa !9
  %7352 = load i32, ptr %42, align 4, !tbaa !9
  %7353 = load i32, ptr %43, align 4, !tbaa !9
  %7354 = icmp eq i32 %7352, %7353
  %7355 = zext i1 %7354 to i32
  store i32 %7355, ptr %42, align 4, !tbaa !9
  %7356 = load i32, ptr %42, align 4, !tbaa !9
  %7357 = icmp ne i32 %7356, 0
  br i1 %7357, label %7358, label %7359

7358:                                             ; preds = %7310
  br label %7451

7359:                                             ; preds = %7310
  store i32 0, ptr %42, align 4, !tbaa !9
  %7360 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7360, ptr %25, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %7361 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7361, ptr %16, align 4, !tbaa !9
  br label %7362

7362:                                             ; preds = %7449, %7359
  %7363 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %7363, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %7364 = load i32, ptr %42, align 4, !tbaa !9
  %7365 = load i32, ptr %43, align 4, !tbaa !9
  %7366 = icmp eq i32 %7364, %7365
  %7367 = zext i1 %7366 to i32
  store i32 %7367, ptr %42, align 4, !tbaa !9
  %7368 = load i32, ptr %42, align 4, !tbaa !9
  %7369 = icmp ne i32 %7368, 0
  br i1 %7369, label %7370, label %7383

7370:                                             ; preds = %7362
  %7371 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %7371, ptr %42, align 4, !tbaa !9
  %7372 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7372, ptr %43, align 4, !tbaa !9
  %7373 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %7373, ptr %44, align 4, !tbaa !9
  %7374 = load i32, ptr %44, align 4, !tbaa !9
  %7375 = icmp ne i32 %7374, 0
  br i1 %7375, label %7376, label %7378

7376:                                             ; preds = %7370
  %7377 = load i32, ptr %42, align 4, !tbaa !9
  br label %7380

7378:                                             ; preds = %7370
  %7379 = load i32, ptr %43, align 4, !tbaa !9
  br label %7380

7380:                                             ; preds = %7378, %7376
  %7381 = phi i32 [ %7377, %7376 ], [ %7379, %7378 ]
  store i32 %7381, ptr %42, align 4, !tbaa !9
  %7382 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7382, ptr %22, align 4, !tbaa !9
  br label %7451

7383:                                             ; preds = %7362
  %7384 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %7384, ptr %42, align 4, !tbaa !9
  %7385 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7385, ptr %43, align 4, !tbaa !9
  %7386 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %7386, ptr %44, align 4, !tbaa !9
  %7387 = load i32, ptr %44, align 4, !tbaa !9
  %7388 = icmp ne i32 %7387, 0
  br i1 %7388, label %7389, label %7391

7389:                                             ; preds = %7383
  %7390 = load i32, ptr %42, align 4, !tbaa !9
  br label %7393

7391:                                             ; preds = %7383
  %7392 = load i32, ptr %43, align 4, !tbaa !9
  br label %7393

7393:                                             ; preds = %7391, %7389
  %7394 = phi i32 [ %7390, %7389 ], [ %7392, %7391 ]
  store i32 %7394, ptr %42, align 4, !tbaa !9
  %7395 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %7395, ptr %43, align 4, !tbaa !9
  %7396 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %7396, ptr %44, align 4, !tbaa !9
  store i32 -8, ptr %45, align 4, !tbaa !9
  %7397 = load i32, ptr %44, align 4, !tbaa !9
  %7398 = load i32, ptr %45, align 4, !tbaa !9
  %7399 = icmp eq i32 %7397, %7398
  %7400 = zext i1 %7399 to i32
  store i32 %7400, ptr %44, align 4, !tbaa !9
  %7401 = load i32, ptr %44, align 4, !tbaa !9
  %7402 = icmp ne i32 %7401, 0
  br i1 %7402, label %7403, label %7405

7403:                                             ; preds = %7393
  %7404 = load i32, ptr %42, align 4, !tbaa !9
  br label %7407

7405:                                             ; preds = %7393
  %7406 = load i32, ptr %43, align 4, !tbaa !9
  br label %7407

7407:                                             ; preds = %7405, %7403
  %7408 = phi i32 [ %7404, %7403 ], [ %7406, %7405 ]
  store i32 %7408, ptr %42, align 4, !tbaa !9
  %7409 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7409, ptr %25, align 4, !tbaa !9
  %7410 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %7410, ptr %42, align 4, !tbaa !9
  %7411 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %7411, ptr %43, align 4, !tbaa !9
  %7412 = load i32, ptr %43, align 4, !tbaa !9
  %7413 = load i32, ptr %42, align 4, !tbaa !9
  %7414 = add i32 %7413, %7412
  store i32 %7414, ptr %42, align 4, !tbaa !9
  %7415 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7415, ptr %10, align 4, !tbaa !9
  %7416 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %7416, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %7417 = load i32, ptr %43, align 4, !tbaa !9
  %7418 = load i32, ptr %42, align 4, !tbaa !9
  %7419 = add i32 %7418, %7417
  store i32 %7419, ptr %42, align 4, !tbaa !9
  %7420 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7420, ptr %16, align 4, !tbaa !9
  %7421 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7421, ptr %42, align 4, !tbaa !9
  %7422 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7422, ptr %43, align 4, !tbaa !9
  %7423 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %7423, ptr %44, align 4, !tbaa !9
  %7424 = load i32, ptr %44, align 4, !tbaa !9
  %7425 = load i32, ptr %43, align 4, !tbaa !9
  %7426 = and i32 %7425, %7424
  store i32 %7426, ptr %43, align 4, !tbaa !9
  %7427 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %7427, ptr %24, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %7428 = load i32, ptr %44, align 4, !tbaa !9
  %7429 = and i32 %7428, 31
  %7430 = load i32, ptr %43, align 4, !tbaa !9
  %7431 = shl i32 %7430, %7429
  store i32 %7431, ptr %43, align 4, !tbaa !9
  %7432 = load i32, ptr %43, align 4, !tbaa !9
  %7433 = load i32, ptr %42, align 4, !tbaa !9
  %7434 = add i32 %7433, %7432
  store i32 %7434, ptr %42, align 4, !tbaa !9
  %7435 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7435, ptr %22, align 4, !tbaa !9
  %7436 = load ptr, ptr %6, align 8, !tbaa !5
  %7437 = getelementptr inbounds %struct.w2c_hermes, ptr %7436, i32 0, i32 6
  %7438 = load i32, ptr %42, align 4, !tbaa !9
  %7439 = zext i32 %7438 to i64
  %7440 = call i32 @i32_load(ptr noundef %7437, i64 noundef %7439)
  store i32 %7440, ptr %42, align 4, !tbaa !9
  %7441 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7441, ptr %26, align 4, !tbaa !9
  %7442 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %7442, ptr %43, align 4, !tbaa !9
  %7443 = load i32, ptr %42, align 4, !tbaa !9
  %7444 = load i32, ptr %43, align 4, !tbaa !9
  %7445 = icmp ne i32 %7443, %7444
  %7446 = zext i1 %7445 to i32
  store i32 %7446, ptr %42, align 4, !tbaa !9
  %7447 = load i32, ptr %42, align 4, !tbaa !9
  %7448 = icmp ne i32 %7447, 0
  br i1 %7448, label %7449, label %7450

7449:                                             ; preds = %7407
  br label %7362

7450:                                             ; preds = %7407
  br label %7451

7451:                                             ; preds = %7450, %7380, %7358
  %7452 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7452, ptr %42, align 4, !tbaa !9
  %7453 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %7453, ptr %43, align 4, !tbaa !9
  %7454 = load ptr, ptr %6, align 8, !tbaa !5
  %7455 = getelementptr inbounds %struct.w2c_hermes, ptr %7454, i32 0, i32 6
  %7456 = load i32, ptr %42, align 4, !tbaa !9
  %7457 = zext i32 %7456 to i64
  %7458 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7455, i64 noundef %7457, i32 noundef %7458)
  %7459 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7459, ptr %42, align 4, !tbaa !9
  %7460 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7460, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %7461 = load i32, ptr %44, align 4, !tbaa !9
  %7462 = load i32, ptr %43, align 4, !tbaa !9
  %7463 = add i32 %7462, %7461
  store i32 %7463, ptr %43, align 4, !tbaa !9
  %7464 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %7464, ptr %18, align 4, !tbaa !9
  %7465 = load ptr, ptr %6, align 8, !tbaa !5
  %7466 = getelementptr inbounds %struct.w2c_hermes, ptr %7465, i32 0, i32 6
  %7467 = load i32, ptr %42, align 4, !tbaa !9
  %7468 = zext i32 %7467 to i64
  %7469 = add i64 %7468, 40
  %7470 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7466, i64 noundef %7469, i32 noundef %7470)
  br label %7471

7471:                                             ; preds = %7451, %7308, %7304
  %7472 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7472, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %7473 = load i32, ptr %43, align 4, !tbaa !9
  %7474 = load i32, ptr %42, align 4, !tbaa !9
  %7475 = add i32 %7474, %7473
  store i32 %7475, ptr %42, align 4, !tbaa !9
  %7476 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7476, ptr %11, align 4, !tbaa !9
  %7477 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7477, ptr %43, align 4, !tbaa !9
  %7478 = load i32, ptr %42, align 4, !tbaa !9
  %7479 = load i32, ptr %43, align 4, !tbaa !9
  %7480 = icmp ne i32 %7478, %7479
  %7481 = zext i1 %7480 to i32
  store i32 %7481, ptr %42, align 4, !tbaa !9
  %7482 = load i32, ptr %42, align 4, !tbaa !9
  %7483 = icmp ne i32 %7482, 0
  br i1 %7483, label %7484, label %7485

7484:                                             ; preds = %7471
  br label %7292

7485:                                             ; preds = %7471
  br label %7486

7486:                                             ; preds = %7485, %7269
  %7487 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7487, ptr %42, align 4, !tbaa !9
  %7488 = load ptr, ptr %6, align 8, !tbaa !5
  %7489 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %7488, i32 noundef %7489)
  %7490 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7490, ptr %42, align 4, !tbaa !9
  %7491 = load ptr, ptr %6, align 8, !tbaa !5
  %7492 = getelementptr inbounds %struct.w2c_hermes, ptr %7491, i32 0, i32 6
  %7493 = load i32, ptr %42, align 4, !tbaa !9
  %7494 = zext i32 %7493 to i64
  %7495 = add i64 %7494, 48
  %7496 = call i32 @i32_load(ptr noundef %7492, i64 noundef %7495)
  store i32 %7496, ptr %42, align 4, !tbaa !9
  %7497 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7497, ptr %18, align 4, !tbaa !9
  %7498 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7498, ptr %42, align 4, !tbaa !9
  %7499 = load ptr, ptr %6, align 8, !tbaa !5
  %7500 = getelementptr inbounds %struct.w2c_hermes, ptr %7499, i32 0, i32 6
  %7501 = load i32, ptr %42, align 4, !tbaa !9
  %7502 = zext i32 %7501 to i64
  %7503 = add i64 %7502, 36
  %7504 = call i32 @i32_load(ptr noundef %7500, i64 noundef %7503)
  store i32 %7504, ptr %42, align 4, !tbaa !9
  %7505 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7505, ptr %22, align 4, !tbaa !9
  br label %7506

7506:                                             ; preds = %7486, %7139, %7086, %7032
  %7507 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %7507, ptr %42, align 4, !tbaa !9
  %7508 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7508, ptr %43, align 4, !tbaa !9
  %7509 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7509, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %7510 = load i32, ptr %45, align 4, !tbaa !9
  %7511 = load i32, ptr %44, align 4, !tbaa !9
  %7512 = sub i32 %7511, %7510
  store i32 %7512, ptr %44, align 4, !tbaa !9
  %7513 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %7513, ptr %12, align 4, !tbaa !9
  %7514 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %7514, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %7515 = load i32, ptr %46, align 4, !tbaa !9
  %7516 = and i32 %7515, 31
  %7517 = load i32, ptr %45, align 4, !tbaa !9
  %7518 = lshr i32 %7517, %7516
  store i32 %7518, ptr %45, align 4, !tbaa !9
  %7519 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %7519, ptr %46, align 4, !tbaa !9
  store i32 9, ptr %47, align 4, !tbaa !9
  %7520 = load i32, ptr %47, align 4, !tbaa !9
  %7521 = and i32 %7520, 31
  %7522 = load i32, ptr %46, align 4, !tbaa !9
  %7523 = lshr i32 %7522, %7521
  store i32 %7523, ptr %46, align 4, !tbaa !9
  %7524 = load i32, ptr %46, align 4, !tbaa !9
  %7525 = load i32, ptr %45, align 4, !tbaa !9
  %7526 = xor i32 %7525, %7524
  store i32 %7526, ptr %45, align 4, !tbaa !9
  %7527 = load i32, ptr %45, align 4, !tbaa !9
  %7528 = load i32, ptr %44, align 4, !tbaa !9
  %7529 = and i32 %7528, %7527
  store i32 %7529, ptr %44, align 4, !tbaa !9
  %7530 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %7530, ptr %17, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %7531 = load i32, ptr %45, align 4, !tbaa !9
  %7532 = and i32 %7531, 31
  %7533 = load i32, ptr %44, align 4, !tbaa !9
  %7534 = shl i32 %7533, %7532
  store i32 %7534, ptr %44, align 4, !tbaa !9
  %7535 = load i32, ptr %44, align 4, !tbaa !9
  %7536 = load i32, ptr %43, align 4, !tbaa !9
  %7537 = add i32 %7536, %7535
  store i32 %7537, ptr %43, align 4, !tbaa !9
  %7538 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %7538, ptr %14, align 4, !tbaa !9
  %7539 = load ptr, ptr %6, align 8, !tbaa !5
  %7540 = getelementptr inbounds %struct.w2c_hermes, ptr %7539, i32 0, i32 6
  %7541 = load i32, ptr %43, align 4, !tbaa !9
  %7542 = zext i32 %7541 to i64
  %7543 = call i32 @i32_load(ptr noundef %7540, i64 noundef %7542)
  store i32 %7543, ptr %43, align 4, !tbaa !9
  %7544 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %7544, ptr %11, align 4, !tbaa !9
  %7545 = load i32, ptr %42, align 4, !tbaa !9
  %7546 = load i32, ptr %43, align 4, !tbaa !9
  %7547 = icmp ne i32 %7545, %7546
  %7548 = zext i1 %7547 to i32
  store i32 %7548, ptr %42, align 4, !tbaa !9
  %7549 = load i32, ptr %42, align 4, !tbaa !9
  %7550 = icmp ne i32 %7549, 0
  br i1 %7550, label %7551, label %7643

7551:                                             ; preds = %7506
  store i32 0, ptr %42, align 4, !tbaa !9
  %7552 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7552, ptr %26, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %7553 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7553, ptr %18, align 4, !tbaa !9
  br label %7554

7554:                                             ; preds = %7641, %7551
  %7555 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7555, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %7556 = load i32, ptr %42, align 4, !tbaa !9
  %7557 = load i32, ptr %43, align 4, !tbaa !9
  %7558 = icmp eq i32 %7556, %7557
  %7559 = zext i1 %7558 to i32
  store i32 %7559, ptr %42, align 4, !tbaa !9
  %7560 = load i32, ptr %42, align 4, !tbaa !9
  %7561 = icmp ne i32 %7560, 0
  br i1 %7561, label %7562, label %7575

7562:                                             ; preds = %7554
  %7563 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %7563, ptr %42, align 4, !tbaa !9
  %7564 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7564, ptr %43, align 4, !tbaa !9
  %7565 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %7565, ptr %44, align 4, !tbaa !9
  %7566 = load i32, ptr %44, align 4, !tbaa !9
  %7567 = icmp ne i32 %7566, 0
  br i1 %7567, label %7568, label %7570

7568:                                             ; preds = %7562
  %7569 = load i32, ptr %42, align 4, !tbaa !9
  br label %7572

7570:                                             ; preds = %7562
  %7571 = load i32, ptr %43, align 4, !tbaa !9
  br label %7572

7572:                                             ; preds = %7570, %7568
  %7573 = phi i32 [ %7569, %7568 ], [ %7571, %7570 ]
  store i32 %7573, ptr %42, align 4, !tbaa !9
  %7574 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7574, ptr %14, align 4, !tbaa !9
  br label %7645

7575:                                             ; preds = %7554
  %7576 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %7576, ptr %42, align 4, !tbaa !9
  %7577 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7577, ptr %43, align 4, !tbaa !9
  %7578 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %7578, ptr %44, align 4, !tbaa !9
  %7579 = load i32, ptr %44, align 4, !tbaa !9
  %7580 = icmp ne i32 %7579, 0
  br i1 %7580, label %7581, label %7583

7581:                                             ; preds = %7575
  %7582 = load i32, ptr %42, align 4, !tbaa !9
  br label %7585

7583:                                             ; preds = %7575
  %7584 = load i32, ptr %43, align 4, !tbaa !9
  br label %7585

7585:                                             ; preds = %7583, %7581
  %7586 = phi i32 [ %7582, %7581 ], [ %7584, %7583 ]
  store i32 %7586, ptr %42, align 4, !tbaa !9
  %7587 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %7587, ptr %43, align 4, !tbaa !9
  %7588 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7588, ptr %44, align 4, !tbaa !9
  store i32 -8, ptr %45, align 4, !tbaa !9
  %7589 = load i32, ptr %44, align 4, !tbaa !9
  %7590 = load i32, ptr %45, align 4, !tbaa !9
  %7591 = icmp eq i32 %7589, %7590
  %7592 = zext i1 %7591 to i32
  store i32 %7592, ptr %44, align 4, !tbaa !9
  %7593 = load i32, ptr %44, align 4, !tbaa !9
  %7594 = icmp ne i32 %7593, 0
  br i1 %7594, label %7595, label %7597

7595:                                             ; preds = %7585
  %7596 = load i32, ptr %42, align 4, !tbaa !9
  br label %7599

7597:                                             ; preds = %7585
  %7598 = load i32, ptr %43, align 4, !tbaa !9
  br label %7599

7599:                                             ; preds = %7597, %7595
  %7600 = phi i32 [ %7596, %7595 ], [ %7598, %7597 ]
  store i32 %7600, ptr %42, align 4, !tbaa !9
  %7601 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7601, ptr %26, align 4, !tbaa !9
  %7602 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7602, ptr %42, align 4, !tbaa !9
  %7603 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7603, ptr %43, align 4, !tbaa !9
  %7604 = load i32, ptr %43, align 4, !tbaa !9
  %7605 = load i32, ptr %42, align 4, !tbaa !9
  %7606 = add i32 %7605, %7604
  store i32 %7606, ptr %42, align 4, !tbaa !9
  %7607 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7607, ptr %10, align 4, !tbaa !9
  %7608 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7608, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %7609 = load i32, ptr %43, align 4, !tbaa !9
  %7610 = load i32, ptr %42, align 4, !tbaa !9
  %7611 = add i32 %7610, %7609
  store i32 %7611, ptr %42, align 4, !tbaa !9
  %7612 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7612, ptr %18, align 4, !tbaa !9
  %7613 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7613, ptr %42, align 4, !tbaa !9
  %7614 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7614, ptr %43, align 4, !tbaa !9
  %7615 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7615, ptr %44, align 4, !tbaa !9
  %7616 = load i32, ptr %44, align 4, !tbaa !9
  %7617 = load i32, ptr %43, align 4, !tbaa !9
  %7618 = and i32 %7617, %7616
  store i32 %7618, ptr %43, align 4, !tbaa !9
  %7619 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %7619, ptr %17, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %7620 = load i32, ptr %44, align 4, !tbaa !9
  %7621 = and i32 %7620, 31
  %7622 = load i32, ptr %43, align 4, !tbaa !9
  %7623 = shl i32 %7622, %7621
  store i32 %7623, ptr %43, align 4, !tbaa !9
  %7624 = load i32, ptr %43, align 4, !tbaa !9
  %7625 = load i32, ptr %42, align 4, !tbaa !9
  %7626 = add i32 %7625, %7624
  store i32 %7626, ptr %42, align 4, !tbaa !9
  %7627 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7627, ptr %14, align 4, !tbaa !9
  %7628 = load ptr, ptr %6, align 8, !tbaa !5
  %7629 = getelementptr inbounds %struct.w2c_hermes, ptr %7628, i32 0, i32 6
  %7630 = load i32, ptr %42, align 4, !tbaa !9
  %7631 = zext i32 %7630 to i64
  %7632 = call i32 @i32_load(ptr noundef %7629, i64 noundef %7631)
  store i32 %7632, ptr %42, align 4, !tbaa !9
  %7633 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7633, ptr %11, align 4, !tbaa !9
  %7634 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %7634, ptr %43, align 4, !tbaa !9
  %7635 = load i32, ptr %42, align 4, !tbaa !9
  %7636 = load i32, ptr %43, align 4, !tbaa !9
  %7637 = icmp ne i32 %7635, %7636
  %7638 = zext i1 %7637 to i32
  store i32 %7638, ptr %42, align 4, !tbaa !9
  %7639 = load i32, ptr %42, align 4, !tbaa !9
  %7640 = icmp ne i32 %7639, 0
  br i1 %7640, label %7641, label %7642

7641:                                             ; preds = %7599
  br label %7554

7642:                                             ; preds = %7599
  br label %7643

7643:                                             ; preds = %7642, %7506
  %7644 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %7644, ptr %42, align 4, !tbaa !9
  br label %7652

7645:                                             ; preds = %7572, %6906
  %7646 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7646, ptr %42, align 4, !tbaa !9
  %7647 = load ptr, ptr %6, align 8, !tbaa !5
  %7648 = getelementptr inbounds %struct.w2c_hermes, ptr %7647, i32 0, i32 6
  %7649 = load i32, ptr %42, align 4, !tbaa !9
  %7650 = zext i32 %7649 to i64
  %7651 = call i32 @i32_load(ptr noundef %7648, i64 noundef %7650)
  store i32 %7651, ptr %42, align 4, !tbaa !9
  br label %7652

7652:                                             ; preds = %7645, %7643
  %7653 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7653, ptr %10, align 4, !tbaa !9
  %7654 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7654, ptr %42, align 4, !tbaa !9
  %7655 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7655, ptr %43, align 4, !tbaa !9
  %7656 = load ptr, ptr %6, align 8, !tbaa !5
  %7657 = getelementptr inbounds %struct.w2c_hermes, ptr %7656, i32 0, i32 6
  %7658 = load i32, ptr %43, align 4, !tbaa !9
  %7659 = zext i32 %7658 to i64
  %7660 = add i64 %7659, 40
  %7661 = call i32 @i32_load(ptr noundef %7657, i64 noundef %7660)
  store i32 %7661, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %7662 = load i32, ptr %44, align 4, !tbaa !9
  %7663 = load i32, ptr %43, align 4, !tbaa !9
  %7664 = add i32 %7663, %7662
  store i32 %7664, ptr %43, align 4, !tbaa !9
  %7665 = load ptr, ptr %6, align 8, !tbaa !5
  %7666 = getelementptr inbounds %struct.w2c_hermes, ptr %7665, i32 0, i32 6
  %7667 = load i32, ptr %42, align 4, !tbaa !9
  %7668 = zext i32 %7667 to i64
  %7669 = add i64 %7668, 40
  %7670 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7666, i64 noundef %7669, i32 noundef %7670)
  %7671 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7671, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %7672 = load i32, ptr %42, align 4, !tbaa !9
  %7673 = load i32, ptr %43, align 4, !tbaa !9
  %7674 = icmp ne i32 %7672, %7673
  %7675 = zext i1 %7674 to i32
  store i32 %7675, ptr %42, align 4, !tbaa !9
  %7676 = load i32, ptr %42, align 4, !tbaa !9
  %7677 = icmp ne i32 %7676, 0
  br i1 %7677, label %7678, label %7696

7678:                                             ; preds = %7652
  %7679 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7679, ptr %42, align 4, !tbaa !9
  %7680 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7680, ptr %43, align 4, !tbaa !9
  %7681 = load ptr, ptr %6, align 8, !tbaa !5
  %7682 = getelementptr inbounds %struct.w2c_hermes, ptr %7681, i32 0, i32 6
  %7683 = load i32, ptr %43, align 4, !tbaa !9
  %7684 = zext i32 %7683 to i64
  %7685 = add i64 %7684, 44
  %7686 = call i32 @i32_load(ptr noundef %7682, i64 noundef %7685)
  store i32 %7686, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %7687 = load i32, ptr %44, align 4, !tbaa !9
  %7688 = load i32, ptr %43, align 4, !tbaa !9
  %7689 = sub i32 %7688, %7687
  store i32 %7689, ptr %43, align 4, !tbaa !9
  %7690 = load ptr, ptr %6, align 8, !tbaa !5
  %7691 = getelementptr inbounds %struct.w2c_hermes, ptr %7690, i32 0, i32 6
  %7692 = load i32, ptr %42, align 4, !tbaa !9
  %7693 = zext i32 %7692 to i64
  %7694 = add i64 %7693, 44
  %7695 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7691, i64 noundef %7694, i32 noundef %7695)
  br label %7696

7696:                                             ; preds = %7678, %7652
  %7697 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7697, ptr %42, align 4, !tbaa !9
  %7698 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %7698, ptr %43, align 4, !tbaa !9
  %7699 = load ptr, ptr %6, align 8, !tbaa !5
  %7700 = getelementptr inbounds %struct.w2c_hermes, ptr %7699, i32 0, i32 6
  %7701 = load i32, ptr %42, align 4, !tbaa !9
  %7702 = zext i32 %7701 to i64
  %7703 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7700, i64 noundef %7702, i32 noundef %7703)
  br label %7704

7704:                                             ; preds = %7696, %6841, %6749, %6626, %6434, %6418, %6407
  %7705 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %7705, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %7706 = load i32, ptr %43, align 4, !tbaa !9
  %7707 = load i32, ptr %42, align 4, !tbaa !9
  %7708 = add i32 %7707, %7706
  store i32 %7708, ptr %42, align 4, !tbaa !9
  %7709 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7709, ptr %13, align 4, !tbaa !9
  %7710 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %7710, ptr %43, align 4, !tbaa !9
  %7711 = load i32, ptr %42, align 4, !tbaa !9
  %7712 = load i32, ptr %43, align 4, !tbaa !9
  %7713 = icmp ne i32 %7711, %7712
  %7714 = zext i1 %7713 to i32
  store i32 %7714, ptr %42, align 4, !tbaa !9
  %7715 = load i32, ptr %42, align 4, !tbaa !9
  %7716 = icmp ne i32 %7715, 0
  br i1 %7716, label %7717, label %7718

7717:                                             ; preds = %7704
  br label %6390

7718:                                             ; preds = %7704
  br label %7719

7719:                                             ; preds = %7718, %6355
  %7720 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %7720, ptr %42, align 4, !tbaa !9
  %7721 = load i32, ptr %42, align 4, !tbaa !9
  %7722 = icmp ne i32 %7721, 0
  br i1 %7722, label %7723, label %7724

7723:                                             ; preds = %7719
  br label %6355

7724:                                             ; preds = %7719
  %7725 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7725, ptr %42, align 4, !tbaa !9
  %7726 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7726, ptr %12, align 4, !tbaa !9
  br label %7727

7727:                                             ; preds = %7724, %6299
  %7728 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7728, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %7729 = load ptr, ptr %6, align 8, !tbaa !5
  %7730 = getelementptr inbounds %struct.w2c_hermes, ptr %7729, i32 0, i32 6
  %7731 = load i32, ptr %42, align 4, !tbaa !9
  %7732 = zext i32 %7731 to i64
  %7733 = add i64 %7732, 12
  %7734 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7730, i64 noundef %7733, i32 noundef %7734)
  %7735 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7735, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %7736 = load ptr, ptr %6, align 8, !tbaa !5
  %7737 = getelementptr inbounds %struct.w2c_hermes, ptr %7736, i32 0, i32 6
  %7738 = load i32, ptr %42, align 4, !tbaa !9
  %7739 = zext i32 %7738 to i64
  %7740 = add i64 %7739, 4
  %7741 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7737, i64 noundef %7740, i64 noundef %7741)
  br label %7742

7742:                                             ; preds = %7763, %7727
  %7743 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %7743, ptr %42, align 4, !tbaa !9
  %7744 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7744, ptr %43, align 4, !tbaa !9
  store i32 4, ptr %44, align 4, !tbaa !9
  %7745 = load i32, ptr %44, align 4, !tbaa !9
  %7746 = load i32, ptr %43, align 4, !tbaa !9
  %7747 = add i32 %7746, %7745
  store i32 %7747, ptr %43, align 4, !tbaa !9
  %7748 = load ptr, ptr %6, align 8, !tbaa !5
  %7749 = load i32, ptr %42, align 4, !tbaa !9
  %7750 = load i32, ptr %43, align 4, !tbaa !9
  call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AlayoutIfNeeded0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AStringEntry0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x2A0x29(ptr noundef %7748, i32 noundef %7749, i32 noundef %7750)
  %7751 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %7751, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %7752 = load i32, ptr %43, align 4, !tbaa !9
  %7753 = load i32, ptr %42, align 4, !tbaa !9
  %7754 = add i32 %7753, %7752
  store i32 %7754, ptr %42, align 4, !tbaa !9
  %7755 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7755, ptr %30, align 4, !tbaa !9
  %7756 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %7756, ptr %43, align 4, !tbaa !9
  %7757 = load i32, ptr %42, align 4, !tbaa !9
  %7758 = load i32, ptr %43, align 4, !tbaa !9
  %7759 = icmp ne i32 %7757, %7758
  %7760 = zext i1 %7759 to i32
  store i32 %7760, ptr %42, align 4, !tbaa !9
  %7761 = load i32, ptr %42, align 4, !tbaa !9
  %7762 = icmp ne i32 %7761, 0
  br i1 %7762, label %7763, label %7764

7763:                                             ; preds = %7742
  br label %7742

7764:                                             ; preds = %7742
  %7765 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7765, ptr %42, align 4, !tbaa !9
  %7766 = load i32, ptr %42, align 4, !tbaa !9
  %7767 = icmp ne i32 %7766, 0
  %7768 = xor i1 %7767, true
  %7769 = zext i1 %7768 to i32
  store i32 %7769, ptr %42, align 4, !tbaa !9
  %7770 = load i32, ptr %42, align 4, !tbaa !9
  %7771 = icmp ne i32 %7770, 0
  br i1 %7771, label %7772, label %7773

7772:                                             ; preds = %7764
  br label %7841

7773:                                             ; preds = %7764
  %7774 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %7774, ptr %42, align 4, !tbaa !9
  %7775 = load i32, ptr %42, align 4, !tbaa !9
  %7776 = icmp ne i32 %7775, 0
  %7777 = xor i1 %7776, true
  %7778 = zext i1 %7777 to i32
  store i32 %7778, ptr %42, align 4, !tbaa !9
  %7779 = load i32, ptr %42, align 4, !tbaa !9
  %7780 = icmp ne i32 %7779, 0
  br i1 %7780, label %7781, label %7822

7781:                                             ; preds = %7773
  br label %7782

7782:                                             ; preds = %7820, %7781
  %7783 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7783, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %7784 = load i32, ptr %43, align 4, !tbaa !9
  %7785 = load i32, ptr %42, align 4, !tbaa !9
  %7786 = sub i32 %7785, %7784
  store i32 %7786, ptr %42, align 4, !tbaa !9
  %7787 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7787, ptr %10, align 4, !tbaa !9
  %7788 = load ptr, ptr %6, align 8, !tbaa !5
  %7789 = getelementptr inbounds %struct.w2c_hermes, ptr %7788, i32 0, i32 6
  %7790 = load i32, ptr %42, align 4, !tbaa !9
  %7791 = zext i32 %7790 to i64
  %7792 = call i32 @i32_load(ptr noundef %7789, i64 noundef %7791)
  store i32 %7792, ptr %42, align 4, !tbaa !9
  %7793 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7793, ptr %11, align 4, !tbaa !9
  %7794 = load i32, ptr %42, align 4, !tbaa !9
  %7795 = icmp ne i32 %7794, 0
  br i1 %7795, label %7796, label %7810

7796:                                             ; preds = %7782
  %7797 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7797, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %7798 = load i32, ptr %43, align 4, !tbaa !9
  %7799 = load i32, ptr %42, align 4, !tbaa !9
  %7800 = sub i32 %7799, %7798
  store i32 %7800, ptr %42, align 4, !tbaa !9
  %7801 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7801, ptr %43, align 4, !tbaa !9
  %7802 = load ptr, ptr %6, align 8, !tbaa !5
  %7803 = getelementptr inbounds %struct.w2c_hermes, ptr %7802, i32 0, i32 6
  %7804 = load i32, ptr %42, align 4, !tbaa !9
  %7805 = zext i32 %7804 to i64
  %7806 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7803, i64 noundef %7805, i32 noundef %7806)
  %7807 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7807, ptr %42, align 4, !tbaa !9
  %7808 = load ptr, ptr %6, align 8, !tbaa !5
  %7809 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %7808, i32 noundef %7809)
  br label %7810

7810:                                             ; preds = %7796, %7782
  %7811 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7811, ptr %42, align 4, !tbaa !9
  %7812 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7812, ptr %19, align 4, !tbaa !9
  %7813 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7813, ptr %43, align 4, !tbaa !9
  %7814 = load i32, ptr %42, align 4, !tbaa !9
  %7815 = load i32, ptr %43, align 4, !tbaa !9
  %7816 = icmp ne i32 %7814, %7815
  %7817 = zext i1 %7816 to i32
  store i32 %7817, ptr %42, align 4, !tbaa !9
  %7818 = load i32, ptr %42, align 4, !tbaa !9
  %7819 = icmp ne i32 %7818, 0
  br i1 %7819, label %7820, label %7821

7820:                                             ; preds = %7810
  br label %7782

7821:                                             ; preds = %7810
  br label %7822

7822:                                             ; preds = %7821, %7773
  %7823 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7823, ptr %42, align 4, !tbaa !9
  %7824 = load ptr, ptr %6, align 8, !tbaa !5
  %7825 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %7824, i32 noundef %7825)
  br label %7841

7826:                                             ; preds = %4885, %270
  %7827 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7827, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %7828 = load ptr, ptr %6, align 8, !tbaa !5
  %7829 = getelementptr inbounds %struct.w2c_hermes, ptr %7828, i32 0, i32 6
  %7830 = load i32, ptr %42, align 4, !tbaa !9
  %7831 = zext i32 %7830 to i64
  %7832 = add i64 %7831, 12
  %7833 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7829, i64 noundef %7832, i32 noundef %7833)
  %7834 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7834, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %7835 = load ptr, ptr %6, align 8, !tbaa !5
  %7836 = getelementptr inbounds %struct.w2c_hermes, ptr %7835, i32 0, i32 6
  %7837 = load i32, ptr %42, align 4, !tbaa !9
  %7838 = zext i32 %7837 to i64
  %7839 = add i64 %7838, 4
  %7840 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7836, i64 noundef %7839, i64 noundef %7840)
  br label %7841

7841:                                             ; preds = %7826, %7822, %7772
  %7842 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7842, ptr %42, align 4, !tbaa !9
  %7843 = load i32, ptr %42, align 4, !tbaa !9
  %7844 = icmp ne i32 %7843, 0
  br i1 %7844, label %7845, label %7900

7845:                                             ; preds = %7841
  %7846 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7846, ptr %42, align 4, !tbaa !9
  %7847 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %7847, ptr %43, align 4, !tbaa !9
  %7848 = load i32, ptr %42, align 4, !tbaa !9
  %7849 = load i32, ptr %43, align 4, !tbaa !9
  %7850 = icmp ne i32 %7848, %7849
  %7851 = zext i1 %7850 to i32
  store i32 %7851, ptr %42, align 4, !tbaa !9
  %7852 = load i32, ptr %42, align 4, !tbaa !9
  %7853 = icmp ne i32 %7852, 0
  br i1 %7853, label %7854, label %7896

7854:                                             ; preds = %7845
  br label %7855

7855:                                             ; preds = %7894, %7854
  %7856 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %7856, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %7857 = load i32, ptr %43, align 4, !tbaa !9
  %7858 = load i32, ptr %42, align 4, !tbaa !9
  %7859 = sub i32 %7858, %7857
  store i32 %7859, ptr %42, align 4, !tbaa !9
  %7860 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7860, ptr %10, align 4, !tbaa !9
  %7861 = load ptr, ptr %6, align 8, !tbaa !5
  %7862 = getelementptr inbounds %struct.w2c_hermes, ptr %7861, i32 0, i32 6
  %7863 = load i32, ptr %42, align 4, !tbaa !9
  %7864 = zext i32 %7863 to i64
  %7865 = add i64 %7864, 8
  %7866 = call i32 @i32_load(ptr noundef %7862, i64 noundef %7865)
  store i32 %7866, ptr %42, align 4, !tbaa !9
  %7867 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7867, ptr %11, align 4, !tbaa !9
  %7868 = load i32, ptr %42, align 4, !tbaa !9
  %7869 = icmp ne i32 %7868, 0
  br i1 %7869, label %7870, label %7884

7870:                                             ; preds = %7855
  %7871 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %7871, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %7872 = load i32, ptr %43, align 4, !tbaa !9
  %7873 = load i32, ptr %42, align 4, !tbaa !9
  %7874 = sub i32 %7873, %7872
  store i32 %7874, ptr %42, align 4, !tbaa !9
  %7875 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7875, ptr %43, align 4, !tbaa !9
  %7876 = load ptr, ptr %6, align 8, !tbaa !5
  %7877 = getelementptr inbounds %struct.w2c_hermes, ptr %7876, i32 0, i32 6
  %7878 = load i32, ptr %42, align 4, !tbaa !9
  %7879 = zext i32 %7878 to i64
  %7880 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7877, i64 noundef %7879, i32 noundef %7880)
  %7881 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7881, ptr %42, align 4, !tbaa !9
  %7882 = load ptr, ptr %6, align 8, !tbaa !5
  %7883 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %7882, i32 noundef %7883)
  br label %7884

7884:                                             ; preds = %7870, %7855
  %7885 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7885, ptr %42, align 4, !tbaa !9
  %7886 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7886, ptr %23, align 4, !tbaa !9
  %7887 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7887, ptr %43, align 4, !tbaa !9
  %7888 = load i32, ptr %42, align 4, !tbaa !9
  %7889 = load i32, ptr %43, align 4, !tbaa !9
  %7890 = icmp ne i32 %7888, %7889
  %7891 = zext i1 %7890 to i32
  store i32 %7891, ptr %42, align 4, !tbaa !9
  %7892 = load i32, ptr %42, align 4, !tbaa !9
  %7893 = icmp ne i32 %7892, 0
  br i1 %7893, label %7894, label %7895

7894:                                             ; preds = %7884
  br label %7855

7895:                                             ; preds = %7884
  br label %7896

7896:                                             ; preds = %7895, %7845
  %7897 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7897, ptr %42, align 4, !tbaa !9
  %7898 = load ptr, ptr %6, align 8, !tbaa !5
  %7899 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %7898, i32 noundef %7899)
  br label %7900

7900:                                             ; preds = %7896, %7841
  %7901 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7901, ptr %42, align 4, !tbaa !9
  %7902 = load ptr, ptr %6, align 8, !tbaa !5
  %7903 = getelementptr inbounds %struct.w2c_hermes, ptr %7902, i32 0, i32 6
  %7904 = load i32, ptr %42, align 4, !tbaa !9
  %7905 = zext i32 %7904 to i64
  %7906 = add i64 %7905, 16
  %7907 = call i32 @i32_load(ptr noundef %7903, i64 noundef %7906)
  store i32 %7907, ptr %42, align 4, !tbaa !9
  %7908 = load ptr, ptr %6, align 8, !tbaa !5
  %7909 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %7908, i32 noundef %7909)
  %7910 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7910, ptr %42, align 4, !tbaa !9
  %7911 = load ptr, ptr %6, align 8, !tbaa !5
  %7912 = getelementptr inbounds %struct.w2c_hermes, ptr %7911, i32 0, i32 6
  %7913 = load i32, ptr %42, align 4, !tbaa !9
  %7914 = zext i32 %7913 to i64
  %7915 = call i32 @i32_load(ptr noundef %7912, i64 noundef %7914)
  store i32 %7915, ptr %42, align 4, !tbaa !9
  %7916 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7916, ptr %10, align 4, !tbaa !9
  %7917 = load i32, ptr %42, align 4, !tbaa !9
  %7918 = icmp ne i32 %7917, 0
  br i1 %7918, label %7919, label %7931

7919:                                             ; preds = %7900
  %7920 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7920, ptr %42, align 4, !tbaa !9
  %7921 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7921, ptr %43, align 4, !tbaa !9
  %7922 = load ptr, ptr %6, align 8, !tbaa !5
  %7923 = getelementptr inbounds %struct.w2c_hermes, ptr %7922, i32 0, i32 6
  %7924 = load i32, ptr %42, align 4, !tbaa !9
  %7925 = zext i32 %7924 to i64
  %7926 = add i64 %7925, 4
  %7927 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7923, i64 noundef %7926, i32 noundef %7927)
  %7928 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7928, ptr %42, align 4, !tbaa !9
  %7929 = load ptr, ptr %6, align 8, !tbaa !5
  %7930 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %7929, i32 noundef %7930)
  br label %7931

7931:                                             ; preds = %7919, %7900
  %7932 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7932, ptr %42, align 4, !tbaa !9
  %7933 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7933, ptr %43, align 4, !tbaa !9
  %7934 = load ptr, ptr %6, align 8, !tbaa !5
  %7935 = getelementptr inbounds %struct.w2c_hermes, ptr %7934, i32 0, i32 6
  %7936 = load i32, ptr %43, align 4, !tbaa !9
  %7937 = zext i32 %7936 to i64
  %7938 = add i64 %7937, 4
  %7939 = call i32 @i32_load(ptr noundef %7935, i64 noundef %7938)
  store i32 %7939, ptr %43, align 4, !tbaa !9
  %7940 = load ptr, ptr %6, align 8, !tbaa !5
  %7941 = getelementptr inbounds %struct.w2c_hermes, ptr %7940, i32 0, i32 6
  %7942 = load i32, ptr %42, align 4, !tbaa !9
  %7943 = zext i32 %7942 to i64
  %7944 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7941, i64 noundef %7943, i32 noundef %7944)
  %7945 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7945, ptr %42, align 4, !tbaa !9
  %7946 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7946, ptr %43, align 4, !tbaa !9
  %7947 = load ptr, ptr %6, align 8, !tbaa !5
  %7948 = getelementptr inbounds %struct.w2c_hermes, ptr %7947, i32 0, i32 6
  %7949 = load i32, ptr %43, align 4, !tbaa !9
  %7950 = zext i32 %7949 to i64
  %7951 = add i64 %7950, 8
  %7952 = call i32 @i32_load(ptr noundef %7948, i64 noundef %7951)
  store i32 %7952, ptr %43, align 4, !tbaa !9
  %7953 = load ptr, ptr %6, align 8, !tbaa !5
  %7954 = getelementptr inbounds %struct.w2c_hermes, ptr %7953, i32 0, i32 6
  %7955 = load i32, ptr %42, align 4, !tbaa !9
  %7956 = zext i32 %7955 to i64
  %7957 = add i64 %7956, 4
  %7958 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7954, i64 noundef %7957, i32 noundef %7958)
  %7959 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7959, ptr %42, align 4, !tbaa !9
  %7960 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7960, ptr %43, align 4, !tbaa !9
  %7961 = load ptr, ptr %6, align 8, !tbaa !5
  %7962 = getelementptr inbounds %struct.w2c_hermes, ptr %7961, i32 0, i32 6
  %7963 = load i32, ptr %43, align 4, !tbaa !9
  %7964 = zext i32 %7963 to i64
  %7965 = add i64 %7964, 12
  %7966 = call i32 @i32_load(ptr noundef %7962, i64 noundef %7965)
  store i32 %7966, ptr %43, align 4, !tbaa !9
  %7967 = load ptr, ptr %6, align 8, !tbaa !5
  %7968 = getelementptr inbounds %struct.w2c_hermes, ptr %7967, i32 0, i32 6
  %7969 = load i32, ptr %42, align 4, !tbaa !9
  %7970 = zext i32 %7969 to i64
  %7971 = add i64 %7970, 8
  %7972 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7968, i64 noundef %7971, i32 noundef %7972)
  %7973 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7973, ptr %42, align 4, !tbaa !9
  %7974 = load ptr, ptr %6, align 8, !tbaa !5
  %7975 = getelementptr inbounds %struct.w2c_hermes, ptr %7974, i32 0, i32 6
  %7976 = load i32, ptr %42, align 4, !tbaa !9
  %7977 = zext i32 %7976 to i64
  %7978 = add i64 %7977, 40
  %7979 = call i32 @i32_load(ptr noundef %7975, i64 noundef %7978)
  store i32 %7979, ptr %42, align 4, !tbaa !9
  %7980 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %7980, ptr %21, align 4, !tbaa !9
  %7981 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7981, ptr %43, align 4, !tbaa !9
  %7982 = load ptr, ptr %6, align 8, !tbaa !5
  %7983 = getelementptr inbounds %struct.w2c_hermes, ptr %7982, i32 0, i32 6
  %7984 = load i32, ptr %43, align 4, !tbaa !9
  %7985 = zext i32 %7984 to i64
  %7986 = add i64 %7985, 36
  %7987 = call i32 @i32_load(ptr noundef %7983, i64 noundef %7986)
  store i32 %7987, ptr %43, align 4, !tbaa !9
  %7988 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %7988, ptr %30, align 4, !tbaa !9
  %7989 = load i32, ptr %43, align 4, !tbaa !9
  %7990 = load i32, ptr %42, align 4, !tbaa !9
  %7991 = sub i32 %7990, %7989
  store i32 %7991, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %7992 = load i32, ptr %43, align 4, !tbaa !9
  %7993 = icmp eq i32 %7992, 0
  %7994 = xor i1 %7993, true
  %7995 = xor i1 %7994, true
  %7996 = zext i1 %7995 to i32
  %7997 = sext i32 %7996 to i64
  %7998 = call i64 @llvm.expect.i64(i64 %7997, i64 0)
  %7999 = icmp ne i64 %7998, 0
  br i1 %7999, label %8000, label %8002

8000:                                             ; preds = %7931
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

8001:                                             ; No predecessors!
  br label %8024

8002:                                             ; preds = %7931
  %8003 = load i32, ptr %42, align 4, !tbaa !9
  %8004 = icmp eq i32 %8003, -2147483648
  br i1 %8004, label %8005, label %8008

8005:                                             ; preds = %8002
  %8006 = load i32, ptr %43, align 4, !tbaa !9
  %8007 = icmp eq i32 %8006, -1
  br label %8008

8008:                                             ; preds = %8005, %8002
  %8009 = phi i1 [ false, %8002 ], [ %8007, %8005 ]
  %8010 = xor i1 %8009, true
  %8011 = xor i1 %8010, true
  %8012 = zext i1 %8011 to i32
  %8013 = sext i32 %8012 to i64
  %8014 = call i64 @llvm.expect.i64(i64 %8013, i64 0)
  %8015 = icmp ne i64 %8014, 0
  br i1 %8015, label %8016, label %8018

8016:                                             ; preds = %8008
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

8017:                                             ; No predecessors!
  br label %8022

8018:                                             ; preds = %8008
  %8019 = load i32, ptr %42, align 4, !tbaa !9
  %8020 = load i32, ptr %43, align 4, !tbaa !9
  %8021 = sdiv i32 %8019, %8020
  br label %8022

8022:                                             ; preds = %8018, %8017
  %8023 = phi i32 [ 0, %8017 ], [ %8021, %8018 ]
  br label %8024

8024:                                             ; preds = %8022, %8001
  %8025 = phi i32 [ 0, %8001 ], [ %8023, %8022 ]
  store i32 %8025, ptr %42, align 4, !tbaa !9
  %8026 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8026, ptr %18, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %8027 = load i32, ptr %42, align 4, !tbaa !9
  %8028 = load i32, ptr %43, align 4, !tbaa !9
  %8029 = icmp uge i32 %8027, %8028
  %8030 = zext i1 %8029 to i32
  store i32 %8030, ptr %42, align 4, !tbaa !9
  %8031 = load i32, ptr %42, align 4, !tbaa !9
  %8032 = icmp ne i32 %8031, 0
  br i1 %8032, label %8033, label %8153

8033:                                             ; preds = %8024
  %8034 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8034, ptr %42, align 4, !tbaa !9
  %8035 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8035, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %8036 = load i32, ptr %44, align 4, !tbaa !9
  %8037 = and i32 %8036, 31
  %8038 = load i32, ptr %43, align 4, !tbaa !9
  %8039 = lshr i32 %8038, %8037
  store i32 %8039, ptr %43, align 4, !tbaa !9
  store i32 2147483644, ptr %44, align 4, !tbaa !9
  %8040 = load i32, ptr %44, align 4, !tbaa !9
  %8041 = load i32, ptr %43, align 4, !tbaa !9
  %8042 = and i32 %8041, %8040
  store i32 %8042, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %8043 = load i32, ptr %44, align 4, !tbaa !9
  %8044 = icmp eq i32 %8043, 0
  %8045 = xor i1 %8044, true
  %8046 = xor i1 %8045, true
  %8047 = zext i1 %8046 to i32
  %8048 = sext i32 %8047 to i64
  %8049 = call i64 @llvm.expect.i64(i64 %8048, i64 0)
  %8050 = icmp ne i64 %8049, 0
  br i1 %8050, label %8051, label %8053

8051:                                             ; preds = %8033
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

8052:                                             ; No predecessors!
  br label %8057

8053:                                             ; preds = %8033
  %8054 = load i32, ptr %43, align 4, !tbaa !9
  %8055 = load i32, ptr %44, align 4, !tbaa !9
  %8056 = udiv i32 %8054, %8055
  br label %8057

8057:                                             ; preds = %8053, %8052
  %8058 = phi i32 [ 0, %8052 ], [ %8056, %8053 ]
  store i32 %8058, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %8059 = load i32, ptr %44, align 4, !tbaa !9
  %8060 = load i32, ptr %43, align 4, !tbaa !9
  %8061 = add i32 %8060, %8059
  store i32 %8061, ptr %43, align 4, !tbaa !9
  %8062 = load i32, ptr %43, align 4, !tbaa !9
  %8063 = zext i32 %8062 to i64
  store i64 %8063, ptr %49, align 8, !tbaa !11
  %8064 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8064, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %50, align 8, !tbaa !11
  %8065 = load i64, ptr %50, align 8, !tbaa !11
  %8066 = and i64 %8065, 63
  %8067 = load i64, ptr %49, align 8, !tbaa !11
  %8068 = lshr i64 %8067, %8066
  store i64 %8068, ptr %49, align 8, !tbaa !11
  %8069 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8069, ptr %50, align 8, !tbaa !11
  %8070 = load i64, ptr %50, align 8, !tbaa !11
  %8071 = load i64, ptr %49, align 8, !tbaa !11
  %8072 = or i64 %8071, %8070
  store i64 %8072, ptr %49, align 8, !tbaa !11
  %8073 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8073, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %50, align 8, !tbaa !11
  %8074 = load i64, ptr %50, align 8, !tbaa !11
  %8075 = and i64 %8074, 63
  %8076 = load i64, ptr %49, align 8, !tbaa !11
  %8077 = lshr i64 %8076, %8075
  store i64 %8077, ptr %49, align 8, !tbaa !11
  %8078 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8078, ptr %50, align 8, !tbaa !11
  %8079 = load i64, ptr %50, align 8, !tbaa !11
  %8080 = load i64, ptr %49, align 8, !tbaa !11
  %8081 = or i64 %8080, %8079
  store i64 %8081, ptr %49, align 8, !tbaa !11
  %8082 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8082, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %50, align 8, !tbaa !11
  %8083 = load i64, ptr %50, align 8, !tbaa !11
  %8084 = and i64 %8083, 63
  %8085 = load i64, ptr %49, align 8, !tbaa !11
  %8086 = lshr i64 %8085, %8084
  store i64 %8086, ptr %49, align 8, !tbaa !11
  %8087 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8087, ptr %50, align 8, !tbaa !11
  %8088 = load i64, ptr %50, align 8, !tbaa !11
  %8089 = load i64, ptr %49, align 8, !tbaa !11
  %8090 = or i64 %8089, %8088
  store i64 %8090, ptr %49, align 8, !tbaa !11
  %8091 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8091, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %50, align 8, !tbaa !11
  %8092 = load i64, ptr %50, align 8, !tbaa !11
  %8093 = and i64 %8092, 63
  %8094 = load i64, ptr %49, align 8, !tbaa !11
  %8095 = lshr i64 %8094, %8093
  store i64 %8095, ptr %49, align 8, !tbaa !11
  %8096 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8096, ptr %50, align 8, !tbaa !11
  %8097 = load i64, ptr %50, align 8, !tbaa !11
  %8098 = load i64, ptr %49, align 8, !tbaa !11
  %8099 = or i64 %8098, %8097
  store i64 %8099, ptr %49, align 8, !tbaa !11
  %8100 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8100, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %50, align 8, !tbaa !11
  %8101 = load i64, ptr %50, align 8, !tbaa !11
  %8102 = and i64 %8101, 63
  %8103 = load i64, ptr %49, align 8, !tbaa !11
  %8104 = lshr i64 %8103, %8102
  store i64 %8104, ptr %49, align 8, !tbaa !11
  %8105 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8105, ptr %50, align 8, !tbaa !11
  %8106 = load i64, ptr %50, align 8, !tbaa !11
  %8107 = load i64, ptr %49, align 8, !tbaa !11
  %8108 = or i64 %8107, %8106
  store i64 %8108, ptr %49, align 8, !tbaa !11
  %8109 = load i64, ptr %49, align 8, !tbaa !11
  %8110 = trunc i64 %8109 to i32
  store i32 %8110, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %8111 = load i32, ptr %44, align 4, !tbaa !9
  %8112 = load i32, ptr %43, align 4, !tbaa !9
  %8113 = add i32 %8112, %8111
  store i32 %8113, ptr %43, align 4, !tbaa !9
  %8114 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8114, ptr %12, align 4, !tbaa !9
  %8115 = load ptr, ptr %6, align 8, !tbaa !5
  %8116 = getelementptr inbounds %struct.w2c_hermes, ptr %8115, i32 0, i32 6
  %8117 = load i32, ptr %42, align 4, !tbaa !9
  %8118 = zext i32 %8117 to i64
  %8119 = add i64 %8118, 28
  %8120 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8116, i64 noundef %8119, i32 noundef %8120)
  %8121 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8121, ptr %42, align 4, !tbaa !9
  store i32 3, ptr %43, align 4, !tbaa !9
  %8122 = load i32, ptr %43, align 4, !tbaa !9
  %8123 = and i32 %8122, 31
  %8124 = load i32, ptr %42, align 4, !tbaa !9
  %8125 = shl i32 %8124, %8123
  store i32 %8125, ptr %42, align 4, !tbaa !9
  %8126 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8126, ptr %7, align 4, !tbaa !9
  %8127 = load ptr, ptr %6, align 8, !tbaa !5
  %8128 = load i32, ptr %42, align 4, !tbaa !9
  %8129 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %8127, i32 noundef %8128)
  store i32 %8129, ptr %42, align 4, !tbaa !9
  %8130 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8130, ptr %17, align 4, !tbaa !9
  %8131 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8131, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %8132 = load ptr, ptr %6, align 8, !tbaa !5
  %8133 = getelementptr inbounds %struct.w2c_hermes, ptr %8132, i32 0, i32 6
  %8134 = load i32, ptr %42, align 4, !tbaa !9
  %8135 = zext i32 %8134 to i64
  %8136 = add i64 %8135, 20
  %8137 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8133, i64 noundef %8136, i64 noundef %8137)
  %8138 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8138, ptr %42, align 4, !tbaa !9
  %8139 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8139, ptr %43, align 4, !tbaa !9
  %8140 = load ptr, ptr %6, align 8, !tbaa !5
  %8141 = getelementptr inbounds %struct.w2c_hermes, ptr %8140, i32 0, i32 6
  %8142 = load i32, ptr %42, align 4, !tbaa !9
  %8143 = zext i32 %8142 to i64
  %8144 = add i64 %8143, 16
  %8145 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8141, i64 noundef %8144, i32 noundef %8145)
  %8146 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8146, ptr %42, align 4, !tbaa !9
  store i32 255, ptr %43, align 4, !tbaa !9
  %8147 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8147, ptr %44, align 4, !tbaa !9
  %8148 = load ptr, ptr %6, align 8, !tbaa !5
  %8149 = load i32, ptr %42, align 4, !tbaa !9
  %8150 = load i32, ptr %43, align 4, !tbaa !9
  %8151 = load i32, ptr %44, align 4, !tbaa !9
  %8152 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %8148, i32 noundef %8149, i32 noundef %8150, i32 noundef %8151)
  store i32 %8152, ptr %42, align 4, !tbaa !9
  br label %8184

8153:                                             ; preds = %8024
  %8154 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8154, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %8155 = load ptr, ptr %6, align 8, !tbaa !5
  %8156 = getelementptr inbounds %struct.w2c_hermes, ptr %8155, i32 0, i32 6
  %8157 = load i32, ptr %42, align 4, !tbaa !9
  %8158 = zext i32 %8157 to i64
  %8159 = add i64 %8158, 24
  %8160 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8156, i64 noundef %8159, i64 noundef %8160)
  %8161 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8161, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %8162 = load ptr, ptr %6, align 8, !tbaa !5
  %8163 = getelementptr inbounds %struct.w2c_hermes, ptr %8162, i32 0, i32 6
  %8164 = load i32, ptr %42, align 4, !tbaa !9
  %8165 = zext i32 %8164 to i64
  %8166 = add i64 %8165, 16
  %8167 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8163, i64 noundef %8166, i64 noundef %8167)
  store i32 0, ptr %42, align 4, !tbaa !9
  %8168 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8168, ptr %17, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %8169 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8169, ptr %12, align 4, !tbaa !9
  %8170 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %8170, ptr %42, align 4, !tbaa !9
  %8171 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %8171, ptr %43, align 4, !tbaa !9
  %8172 = load i32, ptr %42, align 4, !tbaa !9
  %8173 = load i32, ptr %43, align 4, !tbaa !9
  %8174 = icmp ne i32 %8172, %8173
  %8175 = zext i1 %8174 to i32
  store i32 %8175, ptr %42, align 4, !tbaa !9
  %8176 = load i32, ptr %42, align 4, !tbaa !9
  %8177 = icmp ne i32 %8176, 0
  br i1 %8177, label %8178, label %8179

8178:                                             ; preds = %8153
  br label %8184

8179:                                             ; preds = %8153
  store i32 0, ptr %42, align 4, !tbaa !9
  %8180 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8180, ptr %15, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %8181 = load ptr, ptr %6, align 8, !tbaa !5
  %8182 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %8181, i32 noundef %8182)
  store i32 0, ptr %42, align 4, !tbaa !9
  %8183 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8183, ptr %23, align 4, !tbaa !9
  br label %15321

8184:                                             ; preds = %8178, %8057
  %8185 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %8185, ptr %42, align 4, !tbaa !9
  %8186 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8186, ptr %43, align 4, !tbaa !9
  store i32 52, ptr %44, align 4, !tbaa !9
  %8187 = load i32, ptr %44, align 4, !tbaa !9
  %8188 = load i32, ptr %43, align 4, !tbaa !9
  %8189 = mul i32 %8188, %8187
  store i32 %8189, ptr %43, align 4, !tbaa !9
  %8190 = load i32, ptr %43, align 4, !tbaa !9
  %8191 = load i32, ptr %42, align 4, !tbaa !9
  %8192 = add i32 %8191, %8190
  store i32 %8192, ptr %42, align 4, !tbaa !9
  %8193 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8193, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %8194 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8194, ptr %13, align 4, !tbaa !9
  %8195 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %8195, ptr %42, align 4, !tbaa !9
  %8196 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8196, ptr %10, align 4, !tbaa !9
  br label %8197

8197:                                             ; preds = %9078, %8184
  %8198 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8198, ptr %42, align 4, !tbaa !9
  %8199 = load ptr, ptr %6, align 8, !tbaa !5
  %8200 = getelementptr inbounds %struct.w2c_hermes, ptr %8199, i32 0, i32 6
  %8201 = load i32, ptr %42, align 4, !tbaa !9
  %8202 = zext i32 %8201 to i64
  %8203 = add i64 %8202, 8
  %8204 = call i32 @i32_load(ptr noundef %8200, i64 noundef %8203)
  store i32 %8204, ptr %42, align 4, !tbaa !9
  store i32 3, ptr %43, align 4, !tbaa !9
  %8205 = load i32, ptr %42, align 4, !tbaa !9
  %8206 = load i32, ptr %43, align 4, !tbaa !9
  %8207 = icmp ult i32 %8205, %8206
  %8208 = zext i1 %8207 to i32
  store i32 %8208, ptr %42, align 4, !tbaa !9
  %8209 = load i32, ptr %42, align 4, !tbaa !9
  %8210 = icmp ne i32 %8209, 0
  br i1 %8210, label %8211, label %8212

8211:                                             ; preds = %8197
  br label %9065

8212:                                             ; preds = %8197
  %8213 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8213, ptr %42, align 4, !tbaa !9
  %8214 = load ptr, ptr %6, align 8, !tbaa !5
  %8215 = getelementptr inbounds %struct.w2c_hermes, ptr %8214, i32 0, i32 6
  %8216 = load i32, ptr %42, align 4, !tbaa !9
  %8217 = zext i32 %8216 to i64
  %8218 = add i64 %8217, 4
  %8219 = call i32 @i32_load(ptr noundef %8215, i64 noundef %8218)
  store i32 %8219, ptr %42, align 4, !tbaa !9
  %8220 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8220, ptr %7, align 4, !tbaa !9
  %8221 = load ptr, ptr %6, align 8, !tbaa !5
  %8222 = getelementptr inbounds %struct.w2c_hermes, ptr %8221, i32 0, i32 6
  %8223 = load i32, ptr %42, align 4, !tbaa !9
  %8224 = zext i32 %8223 to i64
  %8225 = add i64 %8224, 2
  %8226 = call i64 @i64_load16_u(ptr noundef %8222, i64 noundef %8225)
  store i64 %8226, ptr %48, align 8, !tbaa !11
  store i64 16, ptr %49, align 8, !tbaa !11
  %8227 = load i64, ptr %49, align 8, !tbaa !11
  %8228 = and i64 %8227, 63
  %8229 = load i64, ptr %48, align 8, !tbaa !11
  %8230 = shl i64 %8229, %8228
  store i64 %8230, ptr %48, align 8, !tbaa !11
  %8231 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8231, ptr %43, align 4, !tbaa !9
  %8232 = load ptr, ptr %6, align 8, !tbaa !5
  %8233 = getelementptr inbounds %struct.w2c_hermes, ptr %8232, i32 0, i32 6
  %8234 = load i32, ptr %43, align 4, !tbaa !9
  %8235 = zext i32 %8234 to i64
  %8236 = call i64 @i64_load16_u(ptr noundef %8233, i64 noundef %8235)
  store i64 %8236, ptr %49, align 8, !tbaa !11
  store i64 32, ptr %50, align 8, !tbaa !11
  %8237 = load i64, ptr %50, align 8, !tbaa !11
  %8238 = and i64 %8237, 63
  %8239 = load i64, ptr %49, align 8, !tbaa !11
  %8240 = shl i64 %8239, %8238
  store i64 %8240, ptr %49, align 8, !tbaa !11
  %8241 = load i64, ptr %49, align 8, !tbaa !11
  %8242 = load i64, ptr %48, align 8, !tbaa !11
  %8243 = or i64 %8242, %8241
  store i64 %8243, ptr %48, align 8, !tbaa !11
  %8244 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8244, ptr %43, align 4, !tbaa !9
  %8245 = load ptr, ptr %6, align 8, !tbaa !5
  %8246 = getelementptr inbounds %struct.w2c_hermes, ptr %8245, i32 0, i32 6
  %8247 = load i32, ptr %43, align 4, !tbaa !9
  %8248 = zext i32 %8247 to i64
  %8249 = add i64 %8248, 4
  %8250 = call i64 @i64_load16_u(ptr noundef %8246, i64 noundef %8249)
  store i64 %8250, ptr %49, align 8, !tbaa !11
  %8251 = load i64, ptr %49, align 8, !tbaa !11
  %8252 = load i64, ptr %48, align 8, !tbaa !11
  %8253 = or i64 %8252, %8251
  store i64 %8253, ptr %48, align 8, !tbaa !11
  %8254 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %8254, ptr %41, align 8, !tbaa !11
  %8255 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8255, ptr %42, align 4, !tbaa !9
  %8256 = load i32, ptr %42, align 4, !tbaa !9
  %8257 = icmp ne i32 %8256, 0
  %8258 = xor i1 %8257, true
  %8259 = zext i1 %8258 to i32
  store i32 %8259, ptr %42, align 4, !tbaa !9
  %8260 = load i32, ptr %42, align 4, !tbaa !9
  %8261 = icmp ne i32 %8260, 0
  br i1 %8261, label %8262, label %8264

8262:                                             ; preds = %8212
  store i32 0, ptr %42, align 4, !tbaa !9
  %8263 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8263, ptr %11, align 4, !tbaa !9
  br label %8395

8264:                                             ; preds = %8212
  %8265 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %8265, ptr %48, align 8, !tbaa !11
  %8266 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8266, ptr %43, align 4, !tbaa !9
  %8267 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8267, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %8268 = load i32, ptr %45, align 4, !tbaa !9
  %8269 = load i32, ptr %44, align 4, !tbaa !9
  %8270 = sub i32 %8269, %8268
  store i32 %8270, ptr %44, align 4, !tbaa !9
  %8271 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %8271, ptr %8, align 4, !tbaa !9
  %8272 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %8272, ptr %51, align 8, !tbaa !11
  %8273 = load i64, ptr %51, align 8, !tbaa !11
  %8274 = trunc i64 %8273 to i32
  store i32 %8274, ptr %45, align 4, !tbaa !9
  store i32 37, ptr %46, align 4, !tbaa !9
  %8275 = load i32, ptr %46, align 4, !tbaa !9
  %8276 = load i32, ptr %45, align 4, !tbaa !9
  %8277 = mul i32 %8276, %8275
  store i32 %8277, ptr %45, align 4, !tbaa !9
  %8278 = load i32, ptr %45, align 4, !tbaa !9
  %8279 = load i32, ptr %44, align 4, !tbaa !9
  %8280 = and i32 %8279, %8278
  store i32 %8280, ptr %44, align 4, !tbaa !9
  %8281 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %8281, ptr %16, align 4, !tbaa !9
  store i32 3, ptr %45, align 4, !tbaa !9
  %8282 = load i32, ptr %45, align 4, !tbaa !9
  %8283 = and i32 %8282, 31
  %8284 = load i32, ptr %44, align 4, !tbaa !9
  %8285 = shl i32 %8284, %8283
  store i32 %8285, ptr %44, align 4, !tbaa !9
  %8286 = load i32, ptr %44, align 4, !tbaa !9
  %8287 = load i32, ptr %43, align 4, !tbaa !9
  %8288 = add i32 %8287, %8286
  store i32 %8288, ptr %43, align 4, !tbaa !9
  %8289 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8289, ptr %11, align 4, !tbaa !9
  %8290 = load ptr, ptr %6, align 8, !tbaa !5
  %8291 = getelementptr inbounds %struct.w2c_hermes, ptr %8290, i32 0, i32 6
  %8292 = load i32, ptr %43, align 4, !tbaa !9
  %8293 = zext i32 %8292 to i64
  %8294 = call i64 @i64_load(ptr noundef %8291, i64 noundef %8293)
  store i64 %8294, ptr %49, align 8, !tbaa !11
  %8295 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8295, ptr %40, align 8, !tbaa !11
  %8296 = load i64, ptr %48, align 8, !tbaa !11
  %8297 = load i64, ptr %49, align 8, !tbaa !11
  %8298 = icmp eq i64 %8296, %8297
  %8299 = zext i1 %8298 to i32
  store i32 %8299, ptr %42, align 4, !tbaa !9
  %8300 = load i32, ptr %42, align 4, !tbaa !9
  %8301 = icmp ne i32 %8300, 0
  br i1 %8301, label %8302, label %8303

8302:                                             ; preds = %8264
  br label %9065

8303:                                             ; preds = %8264
  store i32 0, ptr %42, align 4, !tbaa !9
  %8304 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8304, ptr %19, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %8305 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8305, ptr %26, align 4, !tbaa !9
  br label %8306

8306:                                             ; preds = %8393, %8303
  %8307 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %8307, ptr %48, align 8, !tbaa !11
  store i64 -1, ptr %49, align 8, !tbaa !11
  %8308 = load i64, ptr %48, align 8, !tbaa !11
  %8309 = load i64, ptr %49, align 8, !tbaa !11
  %8310 = icmp eq i64 %8308, %8309
  %8311 = zext i1 %8310 to i32
  store i32 %8311, ptr %42, align 4, !tbaa !9
  %8312 = load i32, ptr %42, align 4, !tbaa !9
  %8313 = icmp ne i32 %8312, 0
  br i1 %8313, label %8314, label %8327

8314:                                             ; preds = %8306
  %8315 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8315, ptr %42, align 4, !tbaa !9
  %8316 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8316, ptr %43, align 4, !tbaa !9
  %8317 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8317, ptr %44, align 4, !tbaa !9
  %8318 = load i32, ptr %44, align 4, !tbaa !9
  %8319 = icmp ne i32 %8318, 0
  br i1 %8319, label %8320, label %8322

8320:                                             ; preds = %8314
  %8321 = load i32, ptr %42, align 4, !tbaa !9
  br label %8324

8322:                                             ; preds = %8314
  %8323 = load i32, ptr %43, align 4, !tbaa !9
  br label %8324

8324:                                             ; preds = %8322, %8320
  %8325 = phi i32 [ %8321, %8320 ], [ %8323, %8322 ]
  store i32 %8325, ptr %42, align 4, !tbaa !9
  %8326 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8326, ptr %11, align 4, !tbaa !9
  br label %8395

8327:                                             ; preds = %8306
  %8328 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8328, ptr %42, align 4, !tbaa !9
  %8329 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8329, ptr %43, align 4, !tbaa !9
  %8330 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8330, ptr %44, align 4, !tbaa !9
  %8331 = load i32, ptr %44, align 4, !tbaa !9
  %8332 = icmp ne i32 %8331, 0
  br i1 %8332, label %8333, label %8335

8333:                                             ; preds = %8327
  %8334 = load i32, ptr %42, align 4, !tbaa !9
  br label %8337

8335:                                             ; preds = %8327
  %8336 = load i32, ptr %43, align 4, !tbaa !9
  br label %8337

8337:                                             ; preds = %8335, %8333
  %8338 = phi i32 [ %8334, %8333 ], [ %8336, %8335 ]
  store i32 %8338, ptr %42, align 4, !tbaa !9
  %8339 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8339, ptr %43, align 4, !tbaa !9
  %8340 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %8340, ptr %50, align 8, !tbaa !11
  store i64 -2, ptr %51, align 8, !tbaa !11
  %8341 = load i64, ptr %50, align 8, !tbaa !11
  %8342 = load i64, ptr %51, align 8, !tbaa !11
  %8343 = icmp eq i64 %8341, %8342
  %8344 = zext i1 %8343 to i32
  store i32 %8344, ptr %44, align 4, !tbaa !9
  %8345 = load i32, ptr %44, align 4, !tbaa !9
  %8346 = icmp ne i32 %8345, 0
  br i1 %8346, label %8347, label %8349

8347:                                             ; preds = %8337
  %8348 = load i32, ptr %42, align 4, !tbaa !9
  br label %8351

8349:                                             ; preds = %8337
  %8350 = load i32, ptr %43, align 4, !tbaa !9
  br label %8351

8351:                                             ; preds = %8349, %8347
  %8352 = phi i32 [ %8348, %8347 ], [ %8350, %8349 ]
  store i32 %8352, ptr %42, align 4, !tbaa !9
  %8353 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8353, ptr %19, align 4, !tbaa !9
  %8354 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %8354, ptr %42, align 4, !tbaa !9
  %8355 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %8355, ptr %43, align 4, !tbaa !9
  %8356 = load i32, ptr %43, align 4, !tbaa !9
  %8357 = load i32, ptr %42, align 4, !tbaa !9
  %8358 = add i32 %8357, %8356
  store i32 %8358, ptr %42, align 4, !tbaa !9
  %8359 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8359, ptr %7, align 4, !tbaa !9
  %8360 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %8360, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %8361 = load i32, ptr %43, align 4, !tbaa !9
  %8362 = load i32, ptr %42, align 4, !tbaa !9
  %8363 = add i32 %8362, %8361
  store i32 %8363, ptr %42, align 4, !tbaa !9
  %8364 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8364, ptr %26, align 4, !tbaa !9
  %8365 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %8365, ptr %48, align 8, !tbaa !11
  %8366 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8366, ptr %43, align 4, !tbaa !9
  %8367 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8367, ptr %44, align 4, !tbaa !9
  %8368 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8368, ptr %45, align 4, !tbaa !9
  %8369 = load i32, ptr %45, align 4, !tbaa !9
  %8370 = load i32, ptr %44, align 4, !tbaa !9
  %8371 = and i32 %8370, %8369
  store i32 %8371, ptr %44, align 4, !tbaa !9
  %8372 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %8372, ptr %16, align 4, !tbaa !9
  store i32 3, ptr %45, align 4, !tbaa !9
  %8373 = load i32, ptr %45, align 4, !tbaa !9
  %8374 = and i32 %8373, 31
  %8375 = load i32, ptr %44, align 4, !tbaa !9
  %8376 = shl i32 %8375, %8374
  store i32 %8376, ptr %44, align 4, !tbaa !9
  %8377 = load i32, ptr %44, align 4, !tbaa !9
  %8378 = load i32, ptr %43, align 4, !tbaa !9
  %8379 = add i32 %8378, %8377
  store i32 %8379, ptr %43, align 4, !tbaa !9
  %8380 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8380, ptr %11, align 4, !tbaa !9
  %8381 = load ptr, ptr %6, align 8, !tbaa !5
  %8382 = getelementptr inbounds %struct.w2c_hermes, ptr %8381, i32 0, i32 6
  %8383 = load i32, ptr %43, align 4, !tbaa !9
  %8384 = zext i32 %8383 to i64
  %8385 = call i64 @i64_load(ptr noundef %8382, i64 noundef %8384)
  store i64 %8385, ptr %49, align 8, !tbaa !11
  %8386 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8386, ptr %40, align 8, !tbaa !11
  %8387 = load i64, ptr %48, align 8, !tbaa !11
  %8388 = load i64, ptr %49, align 8, !tbaa !11
  %8389 = icmp ne i64 %8387, %8388
  %8390 = zext i1 %8389 to i32
  store i32 %8390, ptr %42, align 4, !tbaa !9
  %8391 = load i32, ptr %42, align 4, !tbaa !9
  %8392 = icmp ne i32 %8391, 0
  br i1 %8392, label %8393, label %8394

8393:                                             ; preds = %8351
  br label %8306

8394:                                             ; preds = %8351
  br label %9065

8395:                                             ; preds = %8324, %8262
  %8396 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8396, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %8397 = load i32, ptr %43, align 4, !tbaa !9
  %8398 = and i32 %8397, 31
  %8399 = load i32, ptr %42, align 4, !tbaa !9
  %8400 = shl i32 %8399, %8398
  store i32 %8400, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %8401 = load i32, ptr %43, align 4, !tbaa !9
  %8402 = load i32, ptr %42, align 4, !tbaa !9
  %8403 = add i32 %8402, %8401
  store i32 %8403, ptr %42, align 4, !tbaa !9
  %8404 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8404, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %8405 = load i32, ptr %44, align 4, !tbaa !9
  %8406 = load i32, ptr %43, align 4, !tbaa !9
  %8407 = mul i32 %8406, %8405
  store i32 %8407, ptr %43, align 4, !tbaa !9
  %8408 = load i32, ptr %42, align 4, !tbaa !9
  %8409 = load i32, ptr %43, align 4, !tbaa !9
  %8410 = icmp uge i32 %8408, %8409
  %8411 = zext i1 %8410 to i32
  store i32 %8411, ptr %42, align 4, !tbaa !9
  %8412 = load i32, ptr %42, align 4, !tbaa !9
  %8413 = icmp ne i32 %8412, 0
  br i1 %8413, label %8414, label %8421

8414:                                             ; preds = %8395
  %8415 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8415, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %8416 = load i32, ptr %43, align 4, !tbaa !9
  %8417 = and i32 %8416, 31
  %8418 = load i32, ptr %42, align 4, !tbaa !9
  %8419 = shl i32 %8418, %8417
  store i32 %8419, ptr %42, align 4, !tbaa !9
  %8420 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8420, ptr %12, align 4, !tbaa !9
  br label %8453

8421:                                             ; preds = %8395
  %8422 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8422, ptr %42, align 4, !tbaa !9
  %8423 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8423, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %8424 = load i32, ptr %44, align 4, !tbaa !9
  %8425 = load i32, ptr %43, align 4, !tbaa !9
  %8426 = xor i32 %8425, %8424
  store i32 %8426, ptr %43, align 4, !tbaa !9
  %8427 = load i32, ptr %43, align 4, !tbaa !9
  %8428 = load i32, ptr %42, align 4, !tbaa !9
  %8429 = add i32 %8428, %8427
  store i32 %8429, ptr %42, align 4, !tbaa !9
  %8430 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8430, ptr %43, align 4, !tbaa !9
  %8431 = load ptr, ptr %6, align 8, !tbaa !5
  %8432 = getelementptr inbounds %struct.w2c_hermes, ptr %8431, i32 0, i32 6
  %8433 = load i32, ptr %43, align 4, !tbaa !9
  %8434 = zext i32 %8433 to i64
  %8435 = add i64 %8434, 24
  %8436 = call i32 @i32_load(ptr noundef %8432, i64 noundef %8435)
  store i32 %8436, ptr %43, align 4, !tbaa !9
  %8437 = load i32, ptr %43, align 4, !tbaa !9
  %8438 = load i32, ptr %42, align 4, !tbaa !9
  %8439 = sub i32 %8438, %8437
  store i32 %8439, ptr %42, align 4, !tbaa !9
  %8440 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8440, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %8441 = load i32, ptr %44, align 4, !tbaa !9
  %8442 = and i32 %8441, 31
  %8443 = load i32, ptr %43, align 4, !tbaa !9
  %8444 = lshr i32 %8443, %8442
  store i32 %8444, ptr %43, align 4, !tbaa !9
  %8445 = load i32, ptr %42, align 4, !tbaa !9
  %8446 = load i32, ptr %43, align 4, !tbaa !9
  %8447 = icmp ugt i32 %8445, %8446
  %8448 = zext i1 %8447 to i32
  store i32 %8448, ptr %42, align 4, !tbaa !9
  %8449 = load i32, ptr %42, align 4, !tbaa !9
  %8450 = icmp ne i32 %8449, 0
  br i1 %8450, label %8451, label %8452

8451:                                             ; preds = %8421
  br label %9010

8452:                                             ; preds = %8421
  br label %8453

8453:                                             ; preds = %8452, %8414
  store i32 0, ptr %42, align 4, !tbaa !9
  %8454 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8454, ptr %14, align 4, !tbaa !9
  %8455 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8455, ptr %42, align 4, !tbaa !9
  %8456 = load ptr, ptr %6, align 8, !tbaa !5
  %8457 = getelementptr inbounds %struct.w2c_hermes, ptr %8456, i32 0, i32 6
  %8458 = load i32, ptr %42, align 4, !tbaa !9
  %8459 = zext i32 %8458 to i64
  %8460 = add i64 %8459, 28
  %8461 = call i32 @i32_load(ptr noundef %8457, i64 noundef %8460)
  store i32 %8461, ptr %42, align 4, !tbaa !9
  %8462 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8462, ptr %11, align 4, !tbaa !9
  %8463 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8463, ptr %42, align 4, !tbaa !9
  store i32 64, ptr %43, align 4, !tbaa !9
  %8464 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8464, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %8465 = load i32, ptr %45, align 4, !tbaa !9
  %8466 = load i32, ptr %44, align 4, !tbaa !9
  %8467 = sub i32 %8466, %8465
  store i32 %8467, ptr %44, align 4, !tbaa !9
  %8468 = load i32, ptr %44, align 4, !tbaa !9
  %8469 = zext i32 %8468 to i64
  store i64 %8469, ptr %50, align 8, !tbaa !11
  %8470 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %8470, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %51, align 8, !tbaa !11
  %8471 = load i64, ptr %51, align 8, !tbaa !11
  %8472 = and i64 %8471, 63
  %8473 = load i64, ptr %50, align 8, !tbaa !11
  %8474 = lshr i64 %8473, %8472
  store i64 %8474, ptr %50, align 8, !tbaa !11
  %8475 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8475, ptr %51, align 8, !tbaa !11
  %8476 = load i64, ptr %51, align 8, !tbaa !11
  %8477 = load i64, ptr %50, align 8, !tbaa !11
  %8478 = or i64 %8477, %8476
  store i64 %8478, ptr %50, align 8, !tbaa !11
  %8479 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %8479, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %51, align 8, !tbaa !11
  %8480 = load i64, ptr %51, align 8, !tbaa !11
  %8481 = and i64 %8480, 63
  %8482 = load i64, ptr %50, align 8, !tbaa !11
  %8483 = lshr i64 %8482, %8481
  store i64 %8483, ptr %50, align 8, !tbaa !11
  %8484 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8484, ptr %51, align 8, !tbaa !11
  %8485 = load i64, ptr %51, align 8, !tbaa !11
  %8486 = load i64, ptr %50, align 8, !tbaa !11
  %8487 = or i64 %8486, %8485
  store i64 %8487, ptr %50, align 8, !tbaa !11
  %8488 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %8488, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %51, align 8, !tbaa !11
  %8489 = load i64, ptr %51, align 8, !tbaa !11
  %8490 = and i64 %8489, 63
  %8491 = load i64, ptr %50, align 8, !tbaa !11
  %8492 = lshr i64 %8491, %8490
  store i64 %8492, ptr %50, align 8, !tbaa !11
  %8493 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8493, ptr %51, align 8, !tbaa !11
  %8494 = load i64, ptr %51, align 8, !tbaa !11
  %8495 = load i64, ptr %50, align 8, !tbaa !11
  %8496 = or i64 %8495, %8494
  store i64 %8496, ptr %50, align 8, !tbaa !11
  %8497 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %8497, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %51, align 8, !tbaa !11
  %8498 = load i64, ptr %51, align 8, !tbaa !11
  %8499 = and i64 %8498, 63
  %8500 = load i64, ptr %50, align 8, !tbaa !11
  %8501 = lshr i64 %8500, %8499
  store i64 %8501, ptr %50, align 8, !tbaa !11
  %8502 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8502, ptr %51, align 8, !tbaa !11
  %8503 = load i64, ptr %51, align 8, !tbaa !11
  %8504 = load i64, ptr %50, align 8, !tbaa !11
  %8505 = or i64 %8504, %8503
  store i64 %8505, ptr %50, align 8, !tbaa !11
  %8506 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %8506, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %51, align 8, !tbaa !11
  %8507 = load i64, ptr %51, align 8, !tbaa !11
  %8508 = and i64 %8507, 63
  %8509 = load i64, ptr %50, align 8, !tbaa !11
  %8510 = lshr i64 %8509, %8508
  store i64 %8510, ptr %50, align 8, !tbaa !11
  %8511 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8511, ptr %51, align 8, !tbaa !11
  %8512 = load i64, ptr %51, align 8, !tbaa !11
  %8513 = load i64, ptr %50, align 8, !tbaa !11
  %8514 = or i64 %8513, %8512
  store i64 %8514, ptr %50, align 8, !tbaa !11
  %8515 = load i64, ptr %50, align 8, !tbaa !11
  %8516 = trunc i64 %8515 to i32
  store i32 %8516, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %8517 = load i32, ptr %45, align 4, !tbaa !9
  %8518 = load i32, ptr %44, align 4, !tbaa !9
  %8519 = add i32 %8518, %8517
  store i32 %8519, ptr %44, align 4, !tbaa !9
  %8520 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %8520, ptr %7, align 4, !tbaa !9
  %8521 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8521, ptr %45, align 4, !tbaa !9
  store i32 64, ptr %46, align 4, !tbaa !9
  %8522 = load i32, ptr %45, align 4, !tbaa !9
  %8523 = load i32, ptr %46, align 4, !tbaa !9
  %8524 = icmp ule i32 %8522, %8523
  %8525 = zext i1 %8524 to i32
  store i32 %8525, ptr %45, align 4, !tbaa !9
  %8526 = load i32, ptr %45, align 4, !tbaa !9
  %8527 = icmp ne i32 %8526, 0
  br i1 %8527, label %8528, label %8530

8528:                                             ; preds = %8453
  %8529 = load i32, ptr %43, align 4, !tbaa !9
  br label %8532

8530:                                             ; preds = %8453
  %8531 = load i32, ptr %44, align 4, !tbaa !9
  br label %8532

8532:                                             ; preds = %8530, %8528
  %8533 = phi i32 [ %8529, %8528 ], [ %8531, %8530 ]
  store i32 %8533, ptr %43, align 4, !tbaa !9
  %8534 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8534, ptr %8, align 4, !tbaa !9
  %8535 = load ptr, ptr %6, align 8, !tbaa !5
  %8536 = getelementptr inbounds %struct.w2c_hermes, ptr %8535, i32 0, i32 6
  %8537 = load i32, ptr %42, align 4, !tbaa !9
  %8538 = zext i32 %8537 to i64
  %8539 = add i64 %8538, 28
  %8540 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8536, i64 noundef %8539, i32 noundef %8540)
  %8541 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8541, ptr %42, align 4, !tbaa !9
  %8542 = load ptr, ptr %6, align 8, !tbaa !5
  %8543 = getelementptr inbounds %struct.w2c_hermes, ptr %8542, i32 0, i32 6
  %8544 = load i32, ptr %42, align 4, !tbaa !9
  %8545 = zext i32 %8544 to i64
  %8546 = add i64 %8545, 16
  %8547 = call i32 @i32_load(ptr noundef %8543, i64 noundef %8546)
  store i32 %8547, ptr %42, align 4, !tbaa !9
  %8548 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8548, ptr %7, align 4, !tbaa !9
  %8549 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8549, ptr %42, align 4, !tbaa !9
  %8550 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8550, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %8551 = load i32, ptr %44, align 4, !tbaa !9
  %8552 = and i32 %8551, 31
  %8553 = load i32, ptr %43, align 4, !tbaa !9
  %8554 = shl i32 %8553, %8552
  store i32 %8554, ptr %43, align 4, !tbaa !9
  %8555 = load ptr, ptr %6, align 8, !tbaa !5
  %8556 = load i32, ptr %43, align 4, !tbaa !9
  %8557 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %8555, i32 noundef %8556)
  store i32 %8557, ptr %43, align 4, !tbaa !9
  %8558 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8558, ptr %19, align 4, !tbaa !9
  %8559 = load ptr, ptr %6, align 8, !tbaa !5
  %8560 = getelementptr inbounds %struct.w2c_hermes, ptr %8559, i32 0, i32 6
  %8561 = load i32, ptr %42, align 4, !tbaa !9
  %8562 = zext i32 %8561 to i64
  %8563 = add i64 %8562, 16
  %8564 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8560, i64 noundef %8563, i32 noundef %8564)
  %8565 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8565, ptr %42, align 4, !tbaa !9
  %8566 = load i32, ptr %42, align 4, !tbaa !9
  %8567 = icmp ne i32 %8566, 0
  %8568 = xor i1 %8567, true
  %8569 = zext i1 %8568 to i32
  store i32 %8569, ptr %42, align 4, !tbaa !9
  %8570 = load i32, ptr %42, align 4, !tbaa !9
  %8571 = icmp ne i32 %8570, 0
  br i1 %8571, label %8572, label %8607

8572:                                             ; preds = %8532
  %8573 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8573, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %8574 = load ptr, ptr %6, align 8, !tbaa !5
  %8575 = getelementptr inbounds %struct.w2c_hermes, ptr %8574, i32 0, i32 6
  %8576 = load i32, ptr %42, align 4, !tbaa !9
  %8577 = zext i32 %8576 to i64
  %8578 = add i64 %8577, 20
  %8579 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8575, i64 noundef %8578, i64 noundef %8579)
  %8580 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8580, ptr %42, align 4, !tbaa !9
  %8581 = load ptr, ptr %6, align 8, !tbaa !5
  %8582 = getelementptr inbounds %struct.w2c_hermes, ptr %8581, i32 0, i32 6
  %8583 = load i32, ptr %42, align 4, !tbaa !9
  %8584 = zext i32 %8583 to i64
  %8585 = add i64 %8584, 28
  %8586 = call i32 @i32_load(ptr noundef %8582, i64 noundef %8585)
  store i32 %8586, ptr %42, align 4, !tbaa !9
  %8587 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8587, ptr %7, align 4, !tbaa !9
  %8588 = load i32, ptr %42, align 4, !tbaa !9
  %8589 = icmp ne i32 %8588, 0
  %8590 = xor i1 %8589, true
  %8591 = zext i1 %8590 to i32
  store i32 %8591, ptr %42, align 4, !tbaa !9
  %8592 = load i32, ptr %42, align 4, !tbaa !9
  %8593 = icmp ne i32 %8592, 0
  br i1 %8593, label %8594, label %8595

8594:                                             ; preds = %8572
  br label %8839

8595:                                             ; preds = %8572
  %8596 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8596, ptr %42, align 4, !tbaa !9
  store i32 255, ptr %43, align 4, !tbaa !9
  %8597 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8597, ptr %44, align 4, !tbaa !9
  store i32 3, ptr %45, align 4, !tbaa !9
  %8598 = load i32, ptr %45, align 4, !tbaa !9
  %8599 = and i32 %8598, 31
  %8600 = load i32, ptr %44, align 4, !tbaa !9
  %8601 = shl i32 %8600, %8599
  store i32 %8601, ptr %44, align 4, !tbaa !9
  %8602 = load ptr, ptr %6, align 8, !tbaa !5
  %8603 = load i32, ptr %42, align 4, !tbaa !9
  %8604 = load i32, ptr %43, align 4, !tbaa !9
  %8605 = load i32, ptr %44, align 4, !tbaa !9
  %8606 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %8602, i32 noundef %8603, i32 noundef %8604, i32 noundef %8605)
  store i32 %8606, ptr %42, align 4, !tbaa !9
  br label %8839

8607:                                             ; preds = %8532
  %8608 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8608, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %8609 = load ptr, ptr %6, align 8, !tbaa !5
  %8610 = getelementptr inbounds %struct.w2c_hermes, ptr %8609, i32 0, i32 6
  %8611 = load i32, ptr %42, align 4, !tbaa !9
  %8612 = zext i32 %8611 to i64
  %8613 = add i64 %8612, 20
  %8614 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8610, i64 noundef %8613, i64 noundef %8614)
  %8615 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8615, ptr %42, align 4, !tbaa !9
  %8616 = load ptr, ptr %6, align 8, !tbaa !5
  %8617 = getelementptr inbounds %struct.w2c_hermes, ptr %8616, i32 0, i32 6
  %8618 = load i32, ptr %42, align 4, !tbaa !9
  %8619 = zext i32 %8618 to i64
  %8620 = add i64 %8619, 28
  %8621 = call i32 @i32_load(ptr noundef %8617, i64 noundef %8620)
  store i32 %8621, ptr %42, align 4, !tbaa !9
  %8622 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8622, ptr %8, align 4, !tbaa !9
  %8623 = load i32, ptr %42, align 4, !tbaa !9
  %8624 = icmp ne i32 %8623, 0
  br i1 %8624, label %8625, label %8637

8625:                                             ; preds = %8607
  %8626 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8626, ptr %42, align 4, !tbaa !9
  store i32 255, ptr %43, align 4, !tbaa !9
  %8627 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8627, ptr %44, align 4, !tbaa !9
  store i32 3, ptr %45, align 4, !tbaa !9
  %8628 = load i32, ptr %45, align 4, !tbaa !9
  %8629 = and i32 %8628, 31
  %8630 = load i32, ptr %44, align 4, !tbaa !9
  %8631 = shl i32 %8630, %8629
  store i32 %8631, ptr %44, align 4, !tbaa !9
  %8632 = load ptr, ptr %6, align 8, !tbaa !5
  %8633 = load i32, ptr %42, align 4, !tbaa !9
  %8634 = load i32, ptr %43, align 4, !tbaa !9
  %8635 = load i32, ptr %44, align 4, !tbaa !9
  %8636 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %8632, i32 noundef %8633, i32 noundef %8634, i32 noundef %8635)
  store i32 %8636, ptr %42, align 4, !tbaa !9
  br label %8637

8637:                                             ; preds = %8625, %8607
  %8638 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8638, ptr %42, align 4, !tbaa !9
  %8639 = load i32, ptr %42, align 4, !tbaa !9
  %8640 = icmp ne i32 %8639, 0
  br i1 %8640, label %8641, label %8835

8641:                                             ; preds = %8637
  %8642 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8642, ptr %42, align 4, !tbaa !9
  %8643 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8643, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %8644 = load i32, ptr %44, align 4, !tbaa !9
  %8645 = and i32 %8644, 31
  %8646 = load i32, ptr %43, align 4, !tbaa !9
  %8647 = shl i32 %8646, %8645
  store i32 %8647, ptr %43, align 4, !tbaa !9
  %8648 = load i32, ptr %43, align 4, !tbaa !9
  %8649 = load i32, ptr %42, align 4, !tbaa !9
  %8650 = add i32 %8649, %8648
  store i32 %8650, ptr %42, align 4, !tbaa !9
  %8651 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8651, ptr %15, align 4, !tbaa !9
  %8652 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8652, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %8653 = load i32, ptr %43, align 4, !tbaa !9
  %8654 = load i32, ptr %42, align 4, !tbaa !9
  %8655 = sub i32 %8654, %8653
  store i32 %8655, ptr %42, align 4, !tbaa !9
  %8656 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8656, ptr %23, align 4, !tbaa !9
  %8657 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8657, ptr %42, align 4, !tbaa !9
  %8658 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8658, ptr %8, align 4, !tbaa !9
  br label %8659

8659:                                             ; preds = %8833, %8641
  %8660 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8660, ptr %42, align 4, !tbaa !9
  %8661 = load ptr, ptr %6, align 8, !tbaa !5
  %8662 = getelementptr inbounds %struct.w2c_hermes, ptr %8661, i32 0, i32 6
  %8663 = load i32, ptr %42, align 4, !tbaa !9
  %8664 = zext i32 %8663 to i64
  %8665 = call i64 @i64_load(ptr noundef %8662, i64 noundef %8664)
  store i64 %8665, ptr %48, align 8, !tbaa !11
  %8666 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %8666, ptr %40, align 8, !tbaa !11
  store i64 -3, ptr %49, align 8, !tbaa !11
  %8667 = load i64, ptr %48, align 8, !tbaa !11
  %8668 = load i64, ptr %49, align 8, !tbaa !11
  %8669 = icmp ule i64 %8667, %8668
  %8670 = zext i1 %8669 to i32
  store i32 %8670, ptr %42, align 4, !tbaa !9
  %8671 = load i32, ptr %42, align 4, !tbaa !9
  %8672 = icmp ne i32 %8671, 0
  br i1 %8672, label %8673, label %8820

8673:                                             ; preds = %8659
  %8674 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %8674, ptr %48, align 8, !tbaa !11
  %8675 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8675, ptr %43, align 4, !tbaa !9
  %8676 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %8676, ptr %50, align 8, !tbaa !11
  %8677 = load i64, ptr %50, align 8, !tbaa !11
  %8678 = trunc i64 %8677 to i32
  store i32 %8678, ptr %44, align 4, !tbaa !9
  store i32 37, ptr %45, align 4, !tbaa !9
  %8679 = load i32, ptr %45, align 4, !tbaa !9
  %8680 = load i32, ptr %44, align 4, !tbaa !9
  %8681 = mul i32 %8680, %8679
  store i32 %8681, ptr %44, align 4, !tbaa !9
  %8682 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8682, ptr %45, align 4, !tbaa !9
  %8683 = load i32, ptr %45, align 4, !tbaa !9
  %8684 = load i32, ptr %44, align 4, !tbaa !9
  %8685 = and i32 %8684, %8683
  store i32 %8685, ptr %44, align 4, !tbaa !9
  %8686 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %8686, ptr %24, align 4, !tbaa !9
  store i32 3, ptr %45, align 4, !tbaa !9
  %8687 = load i32, ptr %45, align 4, !tbaa !9
  %8688 = and i32 %8687, 31
  %8689 = load i32, ptr %44, align 4, !tbaa !9
  %8690 = shl i32 %8689, %8688
  store i32 %8690, ptr %44, align 4, !tbaa !9
  %8691 = load i32, ptr %44, align 4, !tbaa !9
  %8692 = load i32, ptr %43, align 4, !tbaa !9
  %8693 = add i32 %8692, %8691
  store i32 %8693, ptr %43, align 4, !tbaa !9
  %8694 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8694, ptr %12, align 4, !tbaa !9
  %8695 = load ptr, ptr %6, align 8, !tbaa !5
  %8696 = getelementptr inbounds %struct.w2c_hermes, ptr %8695, i32 0, i32 6
  %8697 = load i32, ptr %43, align 4, !tbaa !9
  %8698 = zext i32 %8697 to i64
  %8699 = call i64 @i64_load(ptr noundef %8696, i64 noundef %8698)
  store i64 %8699, ptr %49, align 8, !tbaa !11
  %8700 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8700, ptr %39, align 8, !tbaa !11
  %8701 = load i64, ptr %48, align 8, !tbaa !11
  %8702 = load i64, ptr %49, align 8, !tbaa !11
  %8703 = icmp eq i64 %8701, %8702
  %8704 = zext i1 %8703 to i32
  store i32 %8704, ptr %42, align 4, !tbaa !9
  %8705 = load i32, ptr %42, align 4, !tbaa !9
  %8706 = icmp ne i32 %8705, 0
  br i1 %8706, label %8707, label %8708

8707:                                             ; preds = %8673
  br label %8800

8708:                                             ; preds = %8673
  store i32 0, ptr %42, align 4, !tbaa !9
  %8709 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8709, ptr %11, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %8710 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8710, ptr %13, align 4, !tbaa !9
  br label %8711

8711:                                             ; preds = %8798, %8708
  %8712 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8712, ptr %48, align 8, !tbaa !11
  store i64 -1, ptr %49, align 8, !tbaa !11
  %8713 = load i64, ptr %48, align 8, !tbaa !11
  %8714 = load i64, ptr %49, align 8, !tbaa !11
  %8715 = icmp eq i64 %8713, %8714
  %8716 = zext i1 %8715 to i32
  store i32 %8716, ptr %42, align 4, !tbaa !9
  %8717 = load i32, ptr %42, align 4, !tbaa !9
  %8718 = icmp ne i32 %8717, 0
  br i1 %8718, label %8719, label %8732

8719:                                             ; preds = %8711
  %8720 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8720, ptr %42, align 4, !tbaa !9
  %8721 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8721, ptr %43, align 4, !tbaa !9
  %8722 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8722, ptr %44, align 4, !tbaa !9
  %8723 = load i32, ptr %44, align 4, !tbaa !9
  %8724 = icmp ne i32 %8723, 0
  br i1 %8724, label %8725, label %8727

8725:                                             ; preds = %8719
  %8726 = load i32, ptr %42, align 4, !tbaa !9
  br label %8729

8727:                                             ; preds = %8719
  %8728 = load i32, ptr %43, align 4, !tbaa !9
  br label %8729

8729:                                             ; preds = %8727, %8725
  %8730 = phi i32 [ %8726, %8725 ], [ %8728, %8727 ]
  store i32 %8730, ptr %42, align 4, !tbaa !9
  %8731 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8731, ptr %12, align 4, !tbaa !9
  br label %8800

8732:                                             ; preds = %8711
  %8733 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8733, ptr %42, align 4, !tbaa !9
  %8734 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8734, ptr %43, align 4, !tbaa !9
  %8735 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8735, ptr %44, align 4, !tbaa !9
  %8736 = load i32, ptr %44, align 4, !tbaa !9
  %8737 = icmp ne i32 %8736, 0
  br i1 %8737, label %8738, label %8740

8738:                                             ; preds = %8732
  %8739 = load i32, ptr %42, align 4, !tbaa !9
  br label %8742

8740:                                             ; preds = %8732
  %8741 = load i32, ptr %43, align 4, !tbaa !9
  br label %8742

8742:                                             ; preds = %8740, %8738
  %8743 = phi i32 [ %8739, %8738 ], [ %8741, %8740 ]
  store i32 %8743, ptr %42, align 4, !tbaa !9
  %8744 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8744, ptr %43, align 4, !tbaa !9
  %8745 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8745, ptr %50, align 8, !tbaa !11
  store i64 -2, ptr %51, align 8, !tbaa !11
  %8746 = load i64, ptr %50, align 8, !tbaa !11
  %8747 = load i64, ptr %51, align 8, !tbaa !11
  %8748 = icmp eq i64 %8746, %8747
  %8749 = zext i1 %8748 to i32
  store i32 %8749, ptr %44, align 4, !tbaa !9
  %8750 = load i32, ptr %44, align 4, !tbaa !9
  %8751 = icmp ne i32 %8750, 0
  br i1 %8751, label %8752, label %8754

8752:                                             ; preds = %8742
  %8753 = load i32, ptr %42, align 4, !tbaa !9
  br label %8756

8754:                                             ; preds = %8742
  %8755 = load i32, ptr %43, align 4, !tbaa !9
  br label %8756

8756:                                             ; preds = %8754, %8752
  %8757 = phi i32 [ %8753, %8752 ], [ %8755, %8754 ]
  store i32 %8757, ptr %42, align 4, !tbaa !9
  %8758 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8758, ptr %11, align 4, !tbaa !9
  %8759 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8759, ptr %42, align 4, !tbaa !9
  %8760 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %8760, ptr %43, align 4, !tbaa !9
  %8761 = load i32, ptr %43, align 4, !tbaa !9
  %8762 = load i32, ptr %42, align 4, !tbaa !9
  %8763 = add i32 %8762, %8761
  store i32 %8763, ptr %42, align 4, !tbaa !9
  %8764 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8764, ptr %12, align 4, !tbaa !9
  %8765 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8765, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %8766 = load i32, ptr %43, align 4, !tbaa !9
  %8767 = load i32, ptr %42, align 4, !tbaa !9
  %8768 = add i32 %8767, %8766
  store i32 %8768, ptr %42, align 4, !tbaa !9
  %8769 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8769, ptr %13, align 4, !tbaa !9
  %8770 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %8770, ptr %48, align 8, !tbaa !11
  %8771 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8771, ptr %43, align 4, !tbaa !9
  %8772 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8772, ptr %44, align 4, !tbaa !9
  %8773 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8773, ptr %45, align 4, !tbaa !9
  %8774 = load i32, ptr %45, align 4, !tbaa !9
  %8775 = load i32, ptr %44, align 4, !tbaa !9
  %8776 = and i32 %8775, %8774
  store i32 %8776, ptr %44, align 4, !tbaa !9
  %8777 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %8777, ptr %24, align 4, !tbaa !9
  store i32 3, ptr %45, align 4, !tbaa !9
  %8778 = load i32, ptr %45, align 4, !tbaa !9
  %8779 = and i32 %8778, 31
  %8780 = load i32, ptr %44, align 4, !tbaa !9
  %8781 = shl i32 %8780, %8779
  store i32 %8781, ptr %44, align 4, !tbaa !9
  %8782 = load i32, ptr %44, align 4, !tbaa !9
  %8783 = load i32, ptr %43, align 4, !tbaa !9
  %8784 = add i32 %8783, %8782
  store i32 %8784, ptr %43, align 4, !tbaa !9
  %8785 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8785, ptr %12, align 4, !tbaa !9
  %8786 = load ptr, ptr %6, align 8, !tbaa !5
  %8787 = getelementptr inbounds %struct.w2c_hermes, ptr %8786, i32 0, i32 6
  %8788 = load i32, ptr %43, align 4, !tbaa !9
  %8789 = zext i32 %8788 to i64
  %8790 = call i64 @i64_load(ptr noundef %8787, i64 noundef %8789)
  store i64 %8790, ptr %49, align 8, !tbaa !11
  %8791 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8791, ptr %39, align 8, !tbaa !11
  %8792 = load i64, ptr %48, align 8, !tbaa !11
  %8793 = load i64, ptr %49, align 8, !tbaa !11
  %8794 = icmp ne i64 %8792, %8793
  %8795 = zext i1 %8794 to i32
  store i32 %8795, ptr %42, align 4, !tbaa !9
  %8796 = load i32, ptr %42, align 4, !tbaa !9
  %8797 = icmp ne i32 %8796, 0
  br i1 %8797, label %8798, label %8799

8798:                                             ; preds = %8756
  br label %8711

8799:                                             ; preds = %8756
  br label %8800

8800:                                             ; preds = %8799, %8729, %8707
  %8801 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8801, ptr %42, align 4, !tbaa !9
  %8802 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %8802, ptr %49, align 8, !tbaa !11
  %8803 = load ptr, ptr %6, align 8, !tbaa !5
  %8804 = getelementptr inbounds %struct.w2c_hermes, ptr %8803, i32 0, i32 6
  %8805 = load i32, ptr %42, align 4, !tbaa !9
  %8806 = zext i32 %8805 to i64
  %8807 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8804, i64 noundef %8806, i64 noundef %8807)
  %8808 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8808, ptr %42, align 4, !tbaa !9
  %8809 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8809, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %8810 = load i32, ptr %44, align 4, !tbaa !9
  %8811 = load i32, ptr %43, align 4, !tbaa !9
  %8812 = add i32 %8811, %8810
  store i32 %8812, ptr %43, align 4, !tbaa !9
  %8813 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8813, ptr %14, align 4, !tbaa !9
  %8814 = load ptr, ptr %6, align 8, !tbaa !5
  %8815 = getelementptr inbounds %struct.w2c_hermes, ptr %8814, i32 0, i32 6
  %8816 = load i32, ptr %42, align 4, !tbaa !9
  %8817 = zext i32 %8816 to i64
  %8818 = add i64 %8817, 20
  %8819 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8815, i64 noundef %8818, i32 noundef %8819)
  br label %8820

8820:                                             ; preds = %8800, %8659
  %8821 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8821, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %8822 = load i32, ptr %43, align 4, !tbaa !9
  %8823 = load i32, ptr %42, align 4, !tbaa !9
  %8824 = add i32 %8823, %8822
  store i32 %8824, ptr %42, align 4, !tbaa !9
  %8825 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8825, ptr %8, align 4, !tbaa !9
  %8826 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %8826, ptr %43, align 4, !tbaa !9
  %8827 = load i32, ptr %42, align 4, !tbaa !9
  %8828 = load i32, ptr %43, align 4, !tbaa !9
  %8829 = icmp ne i32 %8827, %8828
  %8830 = zext i1 %8829 to i32
  store i32 %8830, ptr %42, align 4, !tbaa !9
  %8831 = load i32, ptr %42, align 4, !tbaa !9
  %8832 = icmp ne i32 %8831, 0
  br i1 %8832, label %8833, label %8834

8833:                                             ; preds = %8820
  br label %8659

8834:                                             ; preds = %8820
  br label %8835

8835:                                             ; preds = %8834, %8637
  %8836 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8836, ptr %42, align 4, !tbaa !9
  %8837 = load ptr, ptr %6, align 8, !tbaa !5
  %8838 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %8837, i32 noundef %8838)
  br label %8839

8839:                                             ; preds = %8835, %8595, %8594
  %8840 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8840, ptr %42, align 4, !tbaa !9
  %8841 = load ptr, ptr %6, align 8, !tbaa !5
  %8842 = getelementptr inbounds %struct.w2c_hermes, ptr %8841, i32 0, i32 6
  %8843 = load i32, ptr %42, align 4, !tbaa !9
  %8844 = zext i32 %8843 to i64
  %8845 = add i64 %8844, 16
  %8846 = call i32 @i32_load(ptr noundef %8842, i64 noundef %8845)
  store i32 %8846, ptr %42, align 4, !tbaa !9
  %8847 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8847, ptr %17, align 4, !tbaa !9
  %8848 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8848, ptr %43, align 4, !tbaa !9
  %8849 = load ptr, ptr %6, align 8, !tbaa !5
  %8850 = getelementptr inbounds %struct.w2c_hermes, ptr %8849, i32 0, i32 6
  %8851 = load i32, ptr %43, align 4, !tbaa !9
  %8852 = zext i32 %8851 to i64
  %8853 = add i64 %8852, 28
  %8854 = call i32 @i32_load(ptr noundef %8850, i64 noundef %8853)
  store i32 %8854, ptr %43, align 4, !tbaa !9
  %8855 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8855, ptr %12, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %8856 = load i32, ptr %44, align 4, !tbaa !9
  %8857 = load i32, ptr %43, align 4, !tbaa !9
  %8858 = sub i32 %8857, %8856
  store i32 %8858, ptr %43, align 4, !tbaa !9
  %8859 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8859, ptr %8, align 4, !tbaa !9
  %8860 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %8860, ptr %50, align 8, !tbaa !11
  %8861 = load i64, ptr %50, align 8, !tbaa !11
  %8862 = trunc i64 %8861 to i32
  store i32 %8862, ptr %44, align 4, !tbaa !9
  store i32 37, ptr %45, align 4, !tbaa !9
  %8863 = load i32, ptr %45, align 4, !tbaa !9
  %8864 = load i32, ptr %44, align 4, !tbaa !9
  %8865 = mul i32 %8864, %8863
  store i32 %8865, ptr %44, align 4, !tbaa !9
  %8866 = load i32, ptr %44, align 4, !tbaa !9
  %8867 = load i32, ptr %43, align 4, !tbaa !9
  %8868 = and i32 %8867, %8866
  store i32 %8868, ptr %43, align 4, !tbaa !9
  %8869 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8869, ptr %13, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %8870 = load i32, ptr %44, align 4, !tbaa !9
  %8871 = and i32 %8870, 31
  %8872 = load i32, ptr %43, align 4, !tbaa !9
  %8873 = shl i32 %8872, %8871
  store i32 %8873, ptr %43, align 4, !tbaa !9
  %8874 = load i32, ptr %43, align 4, !tbaa !9
  %8875 = load i32, ptr %42, align 4, !tbaa !9
  %8876 = add i32 %8875, %8874
  store i32 %8876, ptr %42, align 4, !tbaa !9
  %8877 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8877, ptr %11, align 4, !tbaa !9
  %8878 = load ptr, ptr %6, align 8, !tbaa !5
  %8879 = getelementptr inbounds %struct.w2c_hermes, ptr %8878, i32 0, i32 6
  %8880 = load i32, ptr %42, align 4, !tbaa !9
  %8881 = zext i32 %8880 to i64
  %8882 = call i64 @i64_load(ptr noundef %8879, i64 noundef %8881)
  store i64 %8882, ptr %48, align 8, !tbaa !11
  %8883 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %8883, ptr %40, align 8, !tbaa !11
  %8884 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %8884, ptr %49, align 8, !tbaa !11
  %8885 = load i64, ptr %48, align 8, !tbaa !11
  %8886 = load i64, ptr %49, align 8, !tbaa !11
  %8887 = icmp ne i64 %8885, %8886
  %8888 = zext i1 %8887 to i32
  store i32 %8888, ptr %42, align 4, !tbaa !9
  %8889 = load i32, ptr %42, align 4, !tbaa !9
  %8890 = icmp ne i32 %8889, 0
  br i1 %8890, label %8891, label %8991

8891:                                             ; preds = %8839
  store i32 0, ptr %42, align 4, !tbaa !9
  %8892 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8892, ptr %25, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %8893 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8893, ptr %19, align 4, !tbaa !9
  br label %8894

8894:                                             ; preds = %8989, %8891
  %8895 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %8895, ptr %48, align 8, !tbaa !11
  store i64 -1, ptr %49, align 8, !tbaa !11
  %8896 = load i64, ptr %48, align 8, !tbaa !11
  %8897 = load i64, ptr %49, align 8, !tbaa !11
  %8898 = icmp eq i64 %8896, %8897
  %8899 = zext i1 %8898 to i32
  store i32 %8899, ptr %42, align 4, !tbaa !9
  %8900 = load i32, ptr %42, align 4, !tbaa !9
  %8901 = icmp ne i32 %8900, 0
  br i1 %8901, label %8902, label %8923

8902:                                             ; preds = %8894
  %8903 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8903, ptr %42, align 4, !tbaa !9
  %8904 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8904, ptr %43, align 4, !tbaa !9
  %8905 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8905, ptr %44, align 4, !tbaa !9
  %8906 = load i32, ptr %44, align 4, !tbaa !9
  %8907 = icmp ne i32 %8906, 0
  br i1 %8907, label %8908, label %8910

8908:                                             ; preds = %8902
  %8909 = load i32, ptr %42, align 4, !tbaa !9
  br label %8912

8910:                                             ; preds = %8902
  %8911 = load i32, ptr %43, align 4, !tbaa !9
  br label %8912

8912:                                             ; preds = %8910, %8908
  %8913 = phi i32 [ %8909, %8908 ], [ %8911, %8910 ]
  store i32 %8913, ptr %42, align 4, !tbaa !9
  %8914 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8914, ptr %11, align 4, !tbaa !9
  %8915 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8915, ptr %42, align 4, !tbaa !9
  %8916 = load ptr, ptr %6, align 8, !tbaa !5
  %8917 = getelementptr inbounds %struct.w2c_hermes, ptr %8916, i32 0, i32 6
  %8918 = load i32, ptr %42, align 4, !tbaa !9
  %8919 = zext i32 %8918 to i64
  %8920 = add i64 %8919, 20
  %8921 = call i32 @i32_load(ptr noundef %8917, i64 noundef %8920)
  store i32 %8921, ptr %42, align 4, !tbaa !9
  %8922 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8922, ptr %13, align 4, !tbaa !9
  br label %9010

8923:                                             ; preds = %8894
  %8924 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8924, ptr %42, align 4, !tbaa !9
  %8925 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8925, ptr %43, align 4, !tbaa !9
  %8926 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8926, ptr %44, align 4, !tbaa !9
  %8927 = load i32, ptr %44, align 4, !tbaa !9
  %8928 = icmp ne i32 %8927, 0
  br i1 %8928, label %8929, label %8931

8929:                                             ; preds = %8923
  %8930 = load i32, ptr %42, align 4, !tbaa !9
  br label %8933

8931:                                             ; preds = %8923
  %8932 = load i32, ptr %43, align 4, !tbaa !9
  br label %8933

8933:                                             ; preds = %8931, %8929
  %8934 = phi i32 [ %8930, %8929 ], [ %8932, %8931 ]
  store i32 %8934, ptr %42, align 4, !tbaa !9
  %8935 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8935, ptr %43, align 4, !tbaa !9
  %8936 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %8936, ptr %50, align 8, !tbaa !11
  store i64 -2, ptr %51, align 8, !tbaa !11
  %8937 = load i64, ptr %50, align 8, !tbaa !11
  %8938 = load i64, ptr %51, align 8, !tbaa !11
  %8939 = icmp eq i64 %8937, %8938
  %8940 = zext i1 %8939 to i32
  store i32 %8940, ptr %44, align 4, !tbaa !9
  %8941 = load i32, ptr %44, align 4, !tbaa !9
  %8942 = icmp ne i32 %8941, 0
  br i1 %8942, label %8943, label %8945

8943:                                             ; preds = %8933
  %8944 = load i32, ptr %42, align 4, !tbaa !9
  br label %8947

8945:                                             ; preds = %8933
  %8946 = load i32, ptr %43, align 4, !tbaa !9
  br label %8947

8947:                                             ; preds = %8945, %8943
  %8948 = phi i32 [ %8944, %8943 ], [ %8946, %8945 ]
  store i32 %8948, ptr %42, align 4, !tbaa !9
  %8949 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8949, ptr %25, align 4, !tbaa !9
  %8950 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8950, ptr %42, align 4, !tbaa !9
  %8951 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8951, ptr %43, align 4, !tbaa !9
  %8952 = load i32, ptr %43, align 4, !tbaa !9
  %8953 = load i32, ptr %42, align 4, !tbaa !9
  %8954 = add i32 %8953, %8952
  store i32 %8954, ptr %42, align 4, !tbaa !9
  %8955 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8955, ptr %7, align 4, !tbaa !9
  %8956 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8956, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %8957 = load i32, ptr %43, align 4, !tbaa !9
  %8958 = load i32, ptr %42, align 4, !tbaa !9
  %8959 = add i32 %8958, %8957
  store i32 %8959, ptr %42, align 4, !tbaa !9
  %8960 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %8960, ptr %19, align 4, !tbaa !9
  %8961 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %8961, ptr %48, align 8, !tbaa !11
  %8962 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8962, ptr %43, align 4, !tbaa !9
  %8963 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8963, ptr %44, align 4, !tbaa !9
  %8964 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8964, ptr %45, align 4, !tbaa !9
  %8965 = load i32, ptr %45, align 4, !tbaa !9
  %8966 = load i32, ptr %44, align 4, !tbaa !9
  %8967 = and i32 %8966, %8965
  store i32 %8967, ptr %44, align 4, !tbaa !9
  %8968 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %8968, ptr %13, align 4, !tbaa !9
  store i32 3, ptr %45, align 4, !tbaa !9
  %8969 = load i32, ptr %45, align 4, !tbaa !9
  %8970 = and i32 %8969, 31
  %8971 = load i32, ptr %44, align 4, !tbaa !9
  %8972 = shl i32 %8971, %8970
  store i32 %8972, ptr %44, align 4, !tbaa !9
  %8973 = load i32, ptr %44, align 4, !tbaa !9
  %8974 = load i32, ptr %43, align 4, !tbaa !9
  %8975 = add i32 %8974, %8973
  store i32 %8975, ptr %43, align 4, !tbaa !9
  %8976 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %8976, ptr %11, align 4, !tbaa !9
  %8977 = load ptr, ptr %6, align 8, !tbaa !5
  %8978 = getelementptr inbounds %struct.w2c_hermes, ptr %8977, i32 0, i32 6
  %8979 = load i32, ptr %43, align 4, !tbaa !9
  %8980 = zext i32 %8979 to i64
  %8981 = call i64 @i64_load(ptr noundef %8978, i64 noundef %8980)
  store i64 %8981, ptr %49, align 8, !tbaa !11
  %8982 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %8982, ptr %40, align 8, !tbaa !11
  %8983 = load i64, ptr %48, align 8, !tbaa !11
  %8984 = load i64, ptr %49, align 8, !tbaa !11
  %8985 = icmp ne i64 %8983, %8984
  %8986 = zext i1 %8985 to i32
  store i32 %8986, ptr %42, align 4, !tbaa !9
  %8987 = load i32, ptr %42, align 4, !tbaa !9
  %8988 = icmp ne i32 %8987, 0
  br i1 %8988, label %8989, label %8990

8989:                                             ; preds = %8947
  br label %8894

8990:                                             ; preds = %8947
  br label %8991

8991:                                             ; preds = %8990, %8839
  %8992 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8992, ptr %42, align 4, !tbaa !9
  %8993 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8993, ptr %43, align 4, !tbaa !9
  %8994 = load ptr, ptr %6, align 8, !tbaa !5
  %8995 = getelementptr inbounds %struct.w2c_hermes, ptr %8994, i32 0, i32 6
  %8996 = load i32, ptr %43, align 4, !tbaa !9
  %8997 = zext i32 %8996 to i64
  %8998 = add i64 %8997, 20
  %8999 = call i32 @i32_load(ptr noundef %8995, i64 noundef %8998)
  store i32 %8999, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %9000 = load i32, ptr %44, align 4, !tbaa !9
  %9001 = load i32, ptr %43, align 4, !tbaa !9
  %9002 = add i32 %9001, %9000
  store i32 %9002, ptr %43, align 4, !tbaa !9
  %9003 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %9003, ptr %13, align 4, !tbaa !9
  %9004 = load ptr, ptr %6, align 8, !tbaa !5
  %9005 = getelementptr inbounds %struct.w2c_hermes, ptr %9004, i32 0, i32 6
  %9006 = load i32, ptr %42, align 4, !tbaa !9
  %9007 = zext i32 %9006 to i64
  %9008 = add i64 %9007, 20
  %9009 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9005, i64 noundef %9008, i32 noundef %9009)
  br label %9039

9010:                                             ; preds = %8912, %8451
  %9011 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9011, ptr %42, align 4, !tbaa !9
  %9012 = load ptr, ptr %6, align 8, !tbaa !5
  %9013 = getelementptr inbounds %struct.w2c_hermes, ptr %9012, i32 0, i32 6
  %9014 = load i32, ptr %42, align 4, !tbaa !9
  %9015 = zext i32 %9014 to i64
  %9016 = call i64 @i64_load(ptr noundef %9013, i64 noundef %9015)
  store i64 %9016, ptr %48, align 8, !tbaa !11
  %9017 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9017, ptr %39, align 8, !tbaa !11
  %9018 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9018, ptr %42, align 4, !tbaa !9
  %9019 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9019, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %9020 = load i32, ptr %44, align 4, !tbaa !9
  %9021 = load i32, ptr %43, align 4, !tbaa !9
  %9022 = add i32 %9021, %9020
  store i32 %9022, ptr %43, align 4, !tbaa !9
  %9023 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %9023, ptr %13, align 4, !tbaa !9
  %9024 = load ptr, ptr %6, align 8, !tbaa !5
  %9025 = getelementptr inbounds %struct.w2c_hermes, ptr %9024, i32 0, i32 6
  %9026 = load i32, ptr %42, align 4, !tbaa !9
  %9027 = zext i32 %9026 to i64
  %9028 = add i64 %9027, 20
  %9029 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9025, i64 noundef %9028, i32 noundef %9029)
  %9030 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9030, ptr %48, align 8, !tbaa !11
  store i64 -1, ptr %49, align 8, !tbaa !11
  %9031 = load i64, ptr %48, align 8, !tbaa !11
  %9032 = load i64, ptr %49, align 8, !tbaa !11
  %9033 = icmp eq i64 %9031, %9032
  %9034 = zext i1 %9033 to i32
  store i32 %9034, ptr %42, align 4, !tbaa !9
  %9035 = load i32, ptr %42, align 4, !tbaa !9
  %9036 = icmp ne i32 %9035, 0
  br i1 %9036, label %9037, label %9038

9037:                                             ; preds = %9010
  br label %9057

9038:                                             ; preds = %9010
  br label %9039

9039:                                             ; preds = %9038, %8991
  %9040 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9040, ptr %42, align 4, !tbaa !9
  %9041 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9041, ptr %43, align 4, !tbaa !9
  %9042 = load ptr, ptr %6, align 8, !tbaa !5
  %9043 = getelementptr inbounds %struct.w2c_hermes, ptr %9042, i32 0, i32 6
  %9044 = load i32, ptr %43, align 4, !tbaa !9
  %9045 = zext i32 %9044 to i64
  %9046 = add i64 %9045, 24
  %9047 = call i32 @i32_load(ptr noundef %9043, i64 noundef %9046)
  store i32 %9047, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %9048 = load i32, ptr %44, align 4, !tbaa !9
  %9049 = load i32, ptr %43, align 4, !tbaa !9
  %9050 = sub i32 %9049, %9048
  store i32 %9050, ptr %43, align 4, !tbaa !9
  %9051 = load ptr, ptr %6, align 8, !tbaa !5
  %9052 = getelementptr inbounds %struct.w2c_hermes, ptr %9051, i32 0, i32 6
  %9053 = load i32, ptr %42, align 4, !tbaa !9
  %9054 = zext i32 %9053 to i64
  %9055 = add i64 %9054, 24
  %9056 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9052, i64 noundef %9055, i32 noundef %9056)
  br label %9057

9057:                                             ; preds = %9039, %9037
  %9058 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9058, ptr %42, align 4, !tbaa !9
  %9059 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %9059, ptr %49, align 8, !tbaa !11
  %9060 = load ptr, ptr %6, align 8, !tbaa !5
  %9061 = getelementptr inbounds %struct.w2c_hermes, ptr %9060, i32 0, i32 6
  %9062 = load i32, ptr %42, align 4, !tbaa !9
  %9063 = zext i32 %9062 to i64
  %9064 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9061, i64 noundef %9063, i64 noundef %9064)
  br label %9065

9065:                                             ; preds = %9057, %8394, %8302, %8211
  %9066 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9066, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %9067 = load i32, ptr %43, align 4, !tbaa !9
  %9068 = load i32, ptr %42, align 4, !tbaa !9
  %9069 = add i32 %9068, %9067
  store i32 %9069, ptr %42, align 4, !tbaa !9
  %9070 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9070, ptr %10, align 4, !tbaa !9
  %9071 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9071, ptr %43, align 4, !tbaa !9
  %9072 = load i32, ptr %42, align 4, !tbaa !9
  %9073 = load i32, ptr %43, align 4, !tbaa !9
  %9074 = icmp ne i32 %9072, %9073
  %9075 = zext i1 %9074 to i32
  store i32 %9075, ptr %42, align 4, !tbaa !9
  %9076 = load i32, ptr %42, align 4, !tbaa !9
  %9077 = icmp ne i32 %9076, 0
  br i1 %9077, label %9078, label %9079

9078:                                             ; preds = %9065
  br label %8197

9079:                                             ; preds = %9065
  store i32 0, ptr %42, align 4, !tbaa !9
  %9080 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9080, ptr %15, align 4, !tbaa !9
  %9081 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9081, ptr %42, align 4, !tbaa !9
  store i32 536870911, ptr %43, align 4, !tbaa !9
  %9082 = load i32, ptr %43, align 4, !tbaa !9
  %9083 = load i32, ptr %42, align 4, !tbaa !9
  %9084 = and i32 %9083, %9082
  store i32 %9084, ptr %42, align 4, !tbaa !9
  %9085 = load i32, ptr %42, align 4, !tbaa !9
  %9086 = icmp ne i32 %9085, 0
  %9087 = xor i1 %9086, true
  %9088 = zext i1 %9087 to i32
  store i32 %9088, ptr %42, align 4, !tbaa !9
  %9089 = load i32, ptr %42, align 4, !tbaa !9
  %9090 = icmp ne i32 %9089, 0
  br i1 %9090, label %9091, label %9094

9091:                                             ; preds = %9079
  store i32 0, ptr %42, align 4, !tbaa !9
  %9092 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9092, ptr %14, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %9093 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9093, ptr %24, align 4, !tbaa !9
  br label %9390

9094:                                             ; preds = %9079
  %9095 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9095, ptr %42, align 4, !tbaa !9
  store i32 5, ptr %43, align 4, !tbaa !9
  %9096 = load i32, ptr %43, align 4, !tbaa !9
  %9097 = and i32 %9096, 31
  %9098 = load i32, ptr %42, align 4, !tbaa !9
  %9099 = shl i32 %9098, %9097
  store i32 %9099, ptr %42, align 4, !tbaa !9
  store i32 3, ptr %43, align 4, !tbaa !9
  %9100 = load i32, ptr %43, align 4, !tbaa !9
  %9101 = icmp eq i32 %9100, 0
  %9102 = xor i1 %9101, true
  %9103 = xor i1 %9102, true
  %9104 = zext i1 %9103 to i32
  %9105 = sext i32 %9104 to i64
  %9106 = call i64 @llvm.expect.i64(i64 %9105, i64 0)
  %9107 = icmp ne i64 %9106, 0
  br i1 %9107, label %9108, label %9110

9108:                                             ; preds = %9094
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

9109:                                             ; No predecessors!
  br label %9114

9110:                                             ; preds = %9094
  %9111 = load i32, ptr %42, align 4, !tbaa !9
  %9112 = load i32, ptr %43, align 4, !tbaa !9
  %9113 = udiv i32 %9111, %9112
  br label %9114

9114:                                             ; preds = %9110, %9109
  %9115 = phi i32 [ 0, %9109 ], [ %9113, %9110 ]
  store i32 %9115, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %9116 = load i32, ptr %43, align 4, !tbaa !9
  %9117 = load i32, ptr %42, align 4, !tbaa !9
  %9118 = add i32 %9117, %9116
  store i32 %9118, ptr %42, align 4, !tbaa !9
  %9119 = load i32, ptr %42, align 4, !tbaa !9
  %9120 = zext i32 %9119 to i64
  store i64 %9120, ptr %48, align 8, !tbaa !11
  %9121 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9121, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %49, align 8, !tbaa !11
  %9122 = load i64, ptr %49, align 8, !tbaa !11
  %9123 = and i64 %9122, 63
  %9124 = load i64, ptr %48, align 8, !tbaa !11
  %9125 = lshr i64 %9124, %9123
  store i64 %9125, ptr %48, align 8, !tbaa !11
  %9126 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9126, ptr %49, align 8, !tbaa !11
  %9127 = load i64, ptr %49, align 8, !tbaa !11
  %9128 = load i64, ptr %48, align 8, !tbaa !11
  %9129 = or i64 %9128, %9127
  store i64 %9129, ptr %48, align 8, !tbaa !11
  %9130 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9130, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %49, align 8, !tbaa !11
  %9131 = load i64, ptr %49, align 8, !tbaa !11
  %9132 = and i64 %9131, 63
  %9133 = load i64, ptr %48, align 8, !tbaa !11
  %9134 = lshr i64 %9133, %9132
  store i64 %9134, ptr %48, align 8, !tbaa !11
  %9135 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9135, ptr %49, align 8, !tbaa !11
  %9136 = load i64, ptr %49, align 8, !tbaa !11
  %9137 = load i64, ptr %48, align 8, !tbaa !11
  %9138 = or i64 %9137, %9136
  store i64 %9138, ptr %48, align 8, !tbaa !11
  %9139 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9139, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %49, align 8, !tbaa !11
  %9140 = load i64, ptr %49, align 8, !tbaa !11
  %9141 = and i64 %9140, 63
  %9142 = load i64, ptr %48, align 8, !tbaa !11
  %9143 = lshr i64 %9142, %9141
  store i64 %9143, ptr %48, align 8, !tbaa !11
  %9144 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9144, ptr %49, align 8, !tbaa !11
  %9145 = load i64, ptr %49, align 8, !tbaa !11
  %9146 = load i64, ptr %48, align 8, !tbaa !11
  %9147 = or i64 %9146, %9145
  store i64 %9147, ptr %48, align 8, !tbaa !11
  %9148 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9148, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %49, align 8, !tbaa !11
  %9149 = load i64, ptr %49, align 8, !tbaa !11
  %9150 = and i64 %9149, 63
  %9151 = load i64, ptr %48, align 8, !tbaa !11
  %9152 = lshr i64 %9151, %9150
  store i64 %9152, ptr %48, align 8, !tbaa !11
  %9153 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9153, ptr %49, align 8, !tbaa !11
  %9154 = load i64, ptr %49, align 8, !tbaa !11
  %9155 = load i64, ptr %48, align 8, !tbaa !11
  %9156 = or i64 %9155, %9154
  store i64 %9156, ptr %48, align 8, !tbaa !11
  %9157 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9157, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %49, align 8, !tbaa !11
  %9158 = load i64, ptr %49, align 8, !tbaa !11
  %9159 = and i64 %9158, 63
  %9160 = load i64, ptr %48, align 8, !tbaa !11
  %9161 = lshr i64 %9160, %9159
  store i64 %9161, ptr %48, align 8, !tbaa !11
  %9162 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9162, ptr %49, align 8, !tbaa !11
  %9163 = load i64, ptr %49, align 8, !tbaa !11
  %9164 = load i64, ptr %48, align 8, !tbaa !11
  %9165 = or i64 %9164, %9163
  store i64 %9165, ptr %48, align 8, !tbaa !11
  %9166 = load i64, ptr %48, align 8, !tbaa !11
  %9167 = trunc i64 %9166 to i32
  store i32 %9167, ptr %42, align 4, !tbaa !9
  %9168 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9168, ptr %12, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %9169 = load i32, ptr %43, align 4, !tbaa !9
  %9170 = load i32, ptr %42, align 4, !tbaa !9
  %9171 = mul i32 %9170, %9169
  store i32 %9171, ptr %42, align 4, !tbaa !9
  %9172 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9172, ptr %23, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %9173 = load i32, ptr %43, align 4, !tbaa !9
  %9174 = load i32, ptr %42, align 4, !tbaa !9
  %9175 = add i32 %9174, %9173
  store i32 %9175, ptr %42, align 4, !tbaa !9
  %9176 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9176, ptr %8, align 4, !tbaa !9
  %9177 = load ptr, ptr %6, align 8, !tbaa !5
  %9178 = load i32, ptr %42, align 4, !tbaa !9
  %9179 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %9177, i32 noundef %9178)
  store i32 %9179, ptr %42, align 4, !tbaa !9
  %9180 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9180, ptr %24, align 4, !tbaa !9
  %9181 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9181, ptr %10, align 4, !tbaa !9
  %9182 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %9182, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %9183 = load i32, ptr %43, align 4, !tbaa !9
  %9184 = icmp eq i32 %9183, 0
  %9185 = xor i1 %9184, true
  %9186 = xor i1 %9185, true
  %9187 = zext i1 %9186 to i32
  %9188 = sext i32 %9187 to i64
  %9189 = call i64 @llvm.expect.i64(i64 %9188, i64 0)
  %9190 = icmp ne i64 %9189, 0
  br i1 %9190, label %9191, label %9193

9191:                                             ; preds = %9114
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

9192:                                             ; No predecessors!
  br label %9197

9193:                                             ; preds = %9114
  %9194 = load i32, ptr %42, align 4, !tbaa !9
  %9195 = load i32, ptr %43, align 4, !tbaa !9
  %9196 = udiv i32 %9194, %9195
  br label %9197

9197:                                             ; preds = %9193, %9192
  %9198 = phi i32 [ 0, %9192 ], [ %9196, %9193 ]
  store i32 %9198, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %9199 = load i32, ptr %43, align 4, !tbaa !9
  %9200 = load i32, ptr %42, align 4, !tbaa !9
  %9201 = add i32 %9200, %9199
  store i32 %9201, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %9202 = load i32, ptr %43, align 4, !tbaa !9
  %9203 = load i32, ptr %42, align 4, !tbaa !9
  %9204 = and i32 %9203, %9202
  store i32 %9204, ptr %42, align 4, !tbaa !9
  %9205 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9205, ptr %7, align 4, !tbaa !9
  %9206 = load i32, ptr %42, align 4, !tbaa !9
  %9207 = icmp ne i32 %9206, 0
  br i1 %9207, label %9208, label %9243

9208:                                             ; preds = %9197
  store i32 0, ptr %42, align 4, !tbaa !9
  %9209 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9209, ptr %11, align 4, !tbaa !9
  br label %9210

9210:                                             ; preds = %9241, %9208
  %9211 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9211, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %9212 = load ptr, ptr %6, align 8, !tbaa !5
  %9213 = getelementptr inbounds %struct.w2c_hermes, ptr %9212, i32 0, i32 6
  %9214 = load i32, ptr %42, align 4, !tbaa !9
  %9215 = zext i32 %9214 to i64
  %9216 = add i64 %9215, 8
  %9217 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9213, i64 noundef %9216, i32 noundef %9217)
  %9218 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9218, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %9219 = load ptr, ptr %6, align 8, !tbaa !5
  %9220 = getelementptr inbounds %struct.w2c_hermes, ptr %9219, i32 0, i32 6
  %9221 = load i32, ptr %42, align 4, !tbaa !9
  %9222 = zext i32 %9221 to i64
  %9223 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9220, i64 noundef %9222, i64 noundef %9223)
  %9224 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9224, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %9225 = load i32, ptr %43, align 4, !tbaa !9
  %9226 = load i32, ptr %42, align 4, !tbaa !9
  %9227 = add i32 %9226, %9225
  store i32 %9227, ptr %42, align 4, !tbaa !9
  %9228 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9228, ptr %10, align 4, !tbaa !9
  %9229 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9229, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %9230 = load i32, ptr %43, align 4, !tbaa !9
  %9231 = load i32, ptr %42, align 4, !tbaa !9
  %9232 = add i32 %9231, %9230
  store i32 %9232, ptr %42, align 4, !tbaa !9
  %9233 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9233, ptr %11, align 4, !tbaa !9
  %9234 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9234, ptr %43, align 4, !tbaa !9
  %9235 = load i32, ptr %42, align 4, !tbaa !9
  %9236 = load i32, ptr %43, align 4, !tbaa !9
  %9237 = icmp ne i32 %9235, %9236
  %9238 = zext i1 %9237 to i32
  store i32 %9238, ptr %42, align 4, !tbaa !9
  %9239 = load i32, ptr %42, align 4, !tbaa !9
  %9240 = icmp ne i32 %9239, 0
  br i1 %9240, label %9241, label %9242

9241:                                             ; preds = %9210
  br label %9210

9242:                                             ; preds = %9210
  br label %9243

9243:                                             ; preds = %9242, %9197
  %9244 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9244, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %9245 = load i32, ptr %43, align 4, !tbaa !9
  %9246 = load i32, ptr %42, align 4, !tbaa !9
  %9247 = add i32 %9246, %9245
  store i32 %9247, ptr %42, align 4, !tbaa !9
  %9248 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9248, ptr %14, align 4, !tbaa !9
  %9249 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %9249, ptr %42, align 4, !tbaa !9
  store i32 168, ptr %43, align 4, !tbaa !9
  %9250 = load i32, ptr %42, align 4, !tbaa !9
  %9251 = load i32, ptr %43, align 4, !tbaa !9
  %9252 = icmp ult i32 %9250, %9251
  %9253 = zext i1 %9252 to i32
  store i32 %9253, ptr %42, align 4, !tbaa !9
  %9254 = load i32, ptr %42, align 4, !tbaa !9
  %9255 = icmp ne i32 %9254, 0
  br i1 %9255, label %9256, label %9257

9256:                                             ; preds = %9243
  br label %9390

9257:                                             ; preds = %9243
  %9258 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9258, ptr %42, align 4, !tbaa !9
  %9259 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %9259, ptr %43, align 4, !tbaa !9
  %9260 = load i32, ptr %43, align 4, !tbaa !9
  %9261 = load i32, ptr %42, align 4, !tbaa !9
  %9262 = add i32 %9261, %9260
  store i32 %9262, ptr %42, align 4, !tbaa !9
  %9263 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9263, ptr %7, align 4, !tbaa !9
  br label %9264

9264:                                             ; preds = %9388, %9257
  %9265 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9265, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %9266 = load ptr, ptr %6, align 8, !tbaa !5
  %9267 = getelementptr inbounds %struct.w2c_hermes, ptr %9266, i32 0, i32 6
  %9268 = load i32, ptr %42, align 4, !tbaa !9
  %9269 = zext i32 %9268 to i64
  %9270 = add i64 %9269, 168
  %9271 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9267, i64 noundef %9270, i64 noundef %9271)
  %9272 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9272, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %9273 = load ptr, ptr %6, align 8, !tbaa !5
  %9274 = getelementptr inbounds %struct.w2c_hermes, ptr %9273, i32 0, i32 6
  %9275 = load i32, ptr %42, align 4, !tbaa !9
  %9276 = zext i32 %9275 to i64
  %9277 = add i64 %9276, 144
  %9278 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9274, i64 noundef %9277, i64 noundef %9278)
  %9279 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9279, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %9280 = load ptr, ptr %6, align 8, !tbaa !5
  %9281 = getelementptr inbounds %struct.w2c_hermes, ptr %9280, i32 0, i32 6
  %9282 = load i32, ptr %42, align 4, !tbaa !9
  %9283 = zext i32 %9282 to i64
  %9284 = add i64 %9283, 120
  %9285 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9281, i64 noundef %9284, i64 noundef %9285)
  %9286 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9286, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %9287 = load ptr, ptr %6, align 8, !tbaa !5
  %9288 = getelementptr inbounds %struct.w2c_hermes, ptr %9287, i32 0, i32 6
  %9289 = load i32, ptr %42, align 4, !tbaa !9
  %9290 = zext i32 %9289 to i64
  %9291 = add i64 %9290, 96
  %9292 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9288, i64 noundef %9291, i64 noundef %9292)
  %9293 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9293, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %9294 = load ptr, ptr %6, align 8, !tbaa !5
  %9295 = getelementptr inbounds %struct.w2c_hermes, ptr %9294, i32 0, i32 6
  %9296 = load i32, ptr %42, align 4, !tbaa !9
  %9297 = zext i32 %9296 to i64
  %9298 = add i64 %9297, 72
  %9299 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9295, i64 noundef %9298, i64 noundef %9299)
  %9300 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9300, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %9301 = load ptr, ptr %6, align 8, !tbaa !5
  %9302 = getelementptr inbounds %struct.w2c_hermes, ptr %9301, i32 0, i32 6
  %9303 = load i32, ptr %42, align 4, !tbaa !9
  %9304 = zext i32 %9303 to i64
  %9305 = add i64 %9304, 48
  %9306 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9302, i64 noundef %9305, i64 noundef %9306)
  %9307 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9307, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %9308 = load ptr, ptr %6, align 8, !tbaa !5
  %9309 = getelementptr inbounds %struct.w2c_hermes, ptr %9308, i32 0, i32 6
  %9310 = load i32, ptr %42, align 4, !tbaa !9
  %9311 = zext i32 %9310 to i64
  %9312 = add i64 %9311, 24
  %9313 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9309, i64 noundef %9312, i64 noundef %9313)
  %9314 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9314, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %9315 = load ptr, ptr %6, align 8, !tbaa !5
  %9316 = getelementptr inbounds %struct.w2c_hermes, ptr %9315, i32 0, i32 6
  %9317 = load i32, ptr %42, align 4, !tbaa !9
  %9318 = zext i32 %9317 to i64
  %9319 = add i64 %9318, 8
  %9320 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9316, i64 noundef %9319, i32 noundef %9320)
  %9321 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9321, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %9322 = load ptr, ptr %6, align 8, !tbaa !5
  %9323 = getelementptr inbounds %struct.w2c_hermes, ptr %9322, i32 0, i32 6
  %9324 = load i32, ptr %42, align 4, !tbaa !9
  %9325 = zext i32 %9324 to i64
  %9326 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9323, i64 noundef %9325, i64 noundef %9326)
  %9327 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9327, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %9328 = load ptr, ptr %6, align 8, !tbaa !5
  %9329 = getelementptr inbounds %struct.w2c_hermes, ptr %9328, i32 0, i32 6
  %9330 = load i32, ptr %42, align 4, !tbaa !9
  %9331 = zext i32 %9330 to i64
  %9332 = add i64 %9331, 176
  %9333 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9329, i64 noundef %9332, i32 noundef %9333)
  %9334 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9334, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %9335 = load ptr, ptr %6, align 8, !tbaa !5
  %9336 = getelementptr inbounds %struct.w2c_hermes, ptr %9335, i32 0, i32 6
  %9337 = load i32, ptr %42, align 4, !tbaa !9
  %9338 = zext i32 %9337 to i64
  %9339 = add i64 %9338, 152
  %9340 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9336, i64 noundef %9339, i32 noundef %9340)
  %9341 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9341, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %9342 = load ptr, ptr %6, align 8, !tbaa !5
  %9343 = getelementptr inbounds %struct.w2c_hermes, ptr %9342, i32 0, i32 6
  %9344 = load i32, ptr %42, align 4, !tbaa !9
  %9345 = zext i32 %9344 to i64
  %9346 = add i64 %9345, 128
  %9347 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9343, i64 noundef %9346, i32 noundef %9347)
  %9348 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9348, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %9349 = load ptr, ptr %6, align 8, !tbaa !5
  %9350 = getelementptr inbounds %struct.w2c_hermes, ptr %9349, i32 0, i32 6
  %9351 = load i32, ptr %42, align 4, !tbaa !9
  %9352 = zext i32 %9351 to i64
  %9353 = add i64 %9352, 104
  %9354 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9350, i64 noundef %9353, i32 noundef %9354)
  %9355 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9355, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %9356 = load ptr, ptr %6, align 8, !tbaa !5
  %9357 = getelementptr inbounds %struct.w2c_hermes, ptr %9356, i32 0, i32 6
  %9358 = load i32, ptr %42, align 4, !tbaa !9
  %9359 = zext i32 %9358 to i64
  %9360 = add i64 %9359, 80
  %9361 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9357, i64 noundef %9360, i32 noundef %9361)
  %9362 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9362, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %9363 = load ptr, ptr %6, align 8, !tbaa !5
  %9364 = getelementptr inbounds %struct.w2c_hermes, ptr %9363, i32 0, i32 6
  %9365 = load i32, ptr %42, align 4, !tbaa !9
  %9366 = zext i32 %9365 to i64
  %9367 = add i64 %9366, 56
  %9368 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9364, i64 noundef %9367, i32 noundef %9368)
  %9369 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9369, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %9370 = load ptr, ptr %6, align 8, !tbaa !5
  %9371 = getelementptr inbounds %struct.w2c_hermes, ptr %9370, i32 0, i32 6
  %9372 = load i32, ptr %42, align 4, !tbaa !9
  %9373 = zext i32 %9372 to i64
  %9374 = add i64 %9373, 32
  %9375 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9371, i64 noundef %9374, i32 noundef %9375)
  %9376 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9376, ptr %42, align 4, !tbaa !9
  store i32 192, ptr %43, align 4, !tbaa !9
  %9377 = load i32, ptr %43, align 4, !tbaa !9
  %9378 = load i32, ptr %42, align 4, !tbaa !9
  %9379 = add i32 %9378, %9377
  store i32 %9379, ptr %42, align 4, !tbaa !9
  %9380 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9380, ptr %10, align 4, !tbaa !9
  %9381 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9381, ptr %43, align 4, !tbaa !9
  %9382 = load i32, ptr %42, align 4, !tbaa !9
  %9383 = load i32, ptr %43, align 4, !tbaa !9
  %9384 = icmp ne i32 %9382, %9383
  %9385 = zext i1 %9384 to i32
  store i32 %9385, ptr %42, align 4, !tbaa !9
  %9386 = load i32, ptr %42, align 4, !tbaa !9
  %9387 = icmp ne i32 %9386, 0
  br i1 %9387, label %9388, label %9389

9388:                                             ; preds = %9264
  br label %9264

9389:                                             ; preds = %9264
  br label %9390

9390:                                             ; preds = %9389, %9256, %9091
  %9391 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9391, ptr %42, align 4, !tbaa !9
  %9392 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %9392, ptr %43, align 4, !tbaa !9
  %9393 = load i32, ptr %42, align 4, !tbaa !9
  %9394 = load i32, ptr %43, align 4, !tbaa !9
  %9395 = icmp eq i32 %9393, %9394
  %9396 = zext i1 %9395 to i32
  store i32 %9396, ptr %42, align 4, !tbaa !9
  %9397 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9397, ptr %27, align 4, !tbaa !9
  %9398 = load i32, ptr %42, align 4, !tbaa !9
  %9399 = icmp ne i32 %9398, 0
  br i1 %9399, label %9400, label %9402

9400:                                             ; preds = %9390
  store i32 0, ptr %42, align 4, !tbaa !9
  %9401 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9401, ptr %23, align 4, !tbaa !9
  br label %12280

9402:                                             ; preds = %9390
  %9403 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %9403, ptr %42, align 4, !tbaa !9
  %9404 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9404, ptr %18, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %9405 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9405, ptr %29, align 4, !tbaa !9
  br label %9406

9406:                                             ; preds = %11580, %9402
  %9407 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9407, ptr %42, align 4, !tbaa !9
  %9408 = load ptr, ptr %6, align 8, !tbaa !5
  %9409 = getelementptr inbounds %struct.w2c_hermes, ptr %9408, i32 0, i32 6
  %9410 = load i32, ptr %42, align 4, !tbaa !9
  %9411 = zext i32 %9410 to i64
  %9412 = add i64 %9411, 8
  %9413 = call i32 @i32_load(ptr noundef %9409, i64 noundef %9412)
  store i32 %9413, ptr %42, align 4, !tbaa !9
  %9414 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9414, ptr %19, align 4, !tbaa !9
  store i32 24576, ptr %43, align 4, !tbaa !9
  %9415 = load i32, ptr %42, align 4, !tbaa !9
  %9416 = load i32, ptr %43, align 4, !tbaa !9
  %9417 = icmp ugt i32 %9415, %9416
  %9418 = zext i1 %9417 to i32
  store i32 %9418, ptr %42, align 4, !tbaa !9
  %9419 = load i32, ptr %42, align 4, !tbaa !9
  %9420 = icmp ne i32 %9419, 0
  br i1 %9420, label %9421, label %9422

9421:                                             ; preds = %9406
  br label %11567

9422:                                             ; preds = %9406
  %9423 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9423, ptr %42, align 4, !tbaa !9
  %9424 = load i32, ptr %42, align 4, !tbaa !9
  %9425 = icmp ne i32 %9424, 0
  %9426 = xor i1 %9425, true
  %9427 = zext i1 %9426 to i32
  store i32 %9427, ptr %42, align 4, !tbaa !9
  %9428 = load i32, ptr %42, align 4, !tbaa !9
  %9429 = icmp ne i32 %9428, 0
  br i1 %9429, label %9430, label %9431

9430:                                             ; preds = %9422
  br label %11567

9431:                                             ; preds = %9422
  %9432 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9432, ptr %42, align 4, !tbaa !9
  %9433 = load ptr, ptr %6, align 8, !tbaa !5
  %9434 = getelementptr inbounds %struct.w2c_hermes, ptr %9433, i32 0, i32 6
  %9435 = load i32, ptr %42, align 4, !tbaa !9
  %9436 = zext i32 %9435 to i64
  %9437 = add i64 %9436, 4
  %9438 = call i32 @i32_load(ptr noundef %9434, i64 noundef %9437)
  store i32 %9438, ptr %42, align 4, !tbaa !9
  %9439 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9439, ptr %32, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %9440 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9440, ptr %16, align 4, !tbaa !9
  %9441 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9441, ptr %42, align 4, !tbaa !9
  %9442 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9442, ptr %17, align 4, !tbaa !9
  br label %9443

9443:                                             ; preds = %11565, %9431
  %9444 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9444, ptr %42, align 4, !tbaa !9
  %9445 = load ptr, ptr %6, align 8, !tbaa !5
  %9446 = getelementptr inbounds %struct.w2c_hermes, ptr %9445, i32 0, i32 6
  %9447 = load i32, ptr %42, align 4, !tbaa !9
  %9448 = zext i32 %9447 to i64
  %9449 = add i64 %9448, 28
  %9450 = call i32 @i32_load(ptr noundef %9446, i64 noundef %9449)
  store i32 %9450, ptr %42, align 4, !tbaa !9
  %9451 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9451, ptr %23, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %9452 = load i32, ptr %43, align 4, !tbaa !9
  %9453 = load i32, ptr %42, align 4, !tbaa !9
  %9454 = sub i32 %9453, %9452
  store i32 %9454, ptr %42, align 4, !tbaa !9
  %9455 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9455, ptr %21, align 4, !tbaa !9
  %9456 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9456, ptr %42, align 4, !tbaa !9
  %9457 = load ptr, ptr %6, align 8, !tbaa !5
  %9458 = getelementptr inbounds %struct.w2c_hermes, ptr %9457, i32 0, i32 6
  %9459 = load i32, ptr %42, align 4, !tbaa !9
  %9460 = zext i32 %9459 to i64
  %9461 = add i64 %9460, 16
  %9462 = call i32 @i32_load(ptr noundef %9458, i64 noundef %9461)
  store i32 %9462, ptr %42, align 4, !tbaa !9
  %9463 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9463, ptr %13, align 4, !tbaa !9
  %9464 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9464, ptr %42, align 4, !tbaa !9
  %9465 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9465, ptr %10, align 4, !tbaa !9
  br label %9466

9466:                                             ; preds = %9667, %9443
  %9467 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %9467, ptr %42, align 4, !tbaa !9
  %9468 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %9468, ptr %43, align 4, !tbaa !9
  %9469 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9469, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %9470 = load i32, ptr %45, align 4, !tbaa !9
  %9471 = load i32, ptr %44, align 4, !tbaa !9
  %9472 = sub i32 %9471, %9470
  store i32 %9472, ptr %44, align 4, !tbaa !9
  %9473 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %9473, ptr %17, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %9474 = load i32, ptr %45, align 4, !tbaa !9
  %9475 = and i32 %9474, 31
  %9476 = load i32, ptr %44, align 4, !tbaa !9
  %9477 = shl i32 %9476, %9475
  store i32 %9477, ptr %44, align 4, !tbaa !9
  %9478 = load i32, ptr %44, align 4, !tbaa !9
  %9479 = load i32, ptr %43, align 4, !tbaa !9
  %9480 = add i32 %9479, %9478
  store i32 %9480, ptr %43, align 4, !tbaa !9
  %9481 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %9481, ptr %12, align 4, !tbaa !9
  %9482 = load ptr, ptr %6, align 8, !tbaa !5
  %9483 = getelementptr inbounds %struct.w2c_hermes, ptr %9482, i32 0, i32 6
  %9484 = load i32, ptr %43, align 4, !tbaa !9
  %9485 = zext i32 %9484 to i64
  %9486 = call i32 @i32_load16_u(ptr noundef %9483, i64 noundef %9485)
  store i32 %9486, ptr %43, align 4, !tbaa !9
  %9487 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %9487, ptr %8, align 4, !tbaa !9
  %9488 = load i32, ptr %43, align 4, !tbaa !9
  %9489 = load i32, ptr %42, align 4, !tbaa !9
  %9490 = add i32 %9489, %9488
  store i32 %9490, ptr %42, align 4, !tbaa !9
  store i32 1025, ptr %43, align 4, !tbaa !9
  %9491 = load i32, ptr %43, align 4, !tbaa !9
  %9492 = load i32, ptr %42, align 4, !tbaa !9
  %9493 = mul i32 %9492, %9491
  store i32 %9493, ptr %42, align 4, !tbaa !9
  %9494 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9494, ptr %7, align 4, !tbaa !9
  store i32 6, ptr %43, align 4, !tbaa !9
  %9495 = load i32, ptr %43, align 4, !tbaa !9
  %9496 = and i32 %9495, 31
  %9497 = load i32, ptr %42, align 4, !tbaa !9
  %9498 = lshr i32 %9497, %9496
  store i32 %9498, ptr %42, align 4, !tbaa !9
  %9499 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9499, ptr %43, align 4, !tbaa !9
  %9500 = load i32, ptr %43, align 4, !tbaa !9
  %9501 = load i32, ptr %42, align 4, !tbaa !9
  %9502 = xor i32 %9501, %9500
  store i32 %9502, ptr %42, align 4, !tbaa !9
  %9503 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9503, ptr %16, align 4, !tbaa !9
  %9504 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9504, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %9505 = load i32, ptr %43, align 4, !tbaa !9
  %9506 = load i32, ptr %42, align 4, !tbaa !9
  %9507 = add i32 %9506, %9505
  store i32 %9507, ptr %42, align 4, !tbaa !9
  %9508 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9508, ptr %43, align 4, !tbaa !9
  %9509 = load i32, ptr %42, align 4, !tbaa !9
  %9510 = load i32, ptr %43, align 4, !tbaa !9
  %9511 = icmp ugt i32 %9509, %9510
  %9512 = zext i1 %9511 to i32
  store i32 %9512, ptr %42, align 4, !tbaa !9
  %9513 = load i32, ptr %42, align 4, !tbaa !9
  %9514 = icmp ne i32 %9513, 0
  br i1 %9514, label %9515, label %9516

9515:                                             ; preds = %9466
  br label %9649

9516:                                             ; preds = %9466
  %9517 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %9517, ptr %42, align 4, !tbaa !9
  %9518 = load i32, ptr %42, align 4, !tbaa !9
  %9519 = icmp ne i32 %9518, 0
  %9520 = xor i1 %9519, true
  %9521 = zext i1 %9520 to i32
  store i32 %9521, ptr %42, align 4, !tbaa !9
  %9522 = load i32, ptr %42, align 4, !tbaa !9
  %9523 = icmp ne i32 %9522, 0
  br i1 %9523, label %9524, label %9525

9524:                                             ; preds = %9516
  br label %9662

9525:                                             ; preds = %9516
  %9526 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9526, ptr %42, align 4, !tbaa !9
  %9527 = load ptr, ptr %6, align 8, !tbaa !5
  %9528 = getelementptr inbounds %struct.w2c_hermes, ptr %9527, i32 0, i32 6
  %9529 = load i32, ptr %42, align 4, !tbaa !9
  %9530 = zext i32 %9529 to i64
  %9531 = add i64 %9530, 4
  %9532 = call i64 @i64_load16_u(ptr noundef %9528, i64 noundef %9531)
  store i64 %9532, ptr %48, align 8, !tbaa !11
  %9533 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %9533, ptr %43, align 4, !tbaa !9
  %9534 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9534, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %9535 = load i32, ptr %45, align 4, !tbaa !9
  %9536 = and i32 %9535, 31
  %9537 = load i32, ptr %44, align 4, !tbaa !9
  %9538 = shl i32 %9537, %9536
  store i32 %9538, ptr %44, align 4, !tbaa !9
  %9539 = load i32, ptr %44, align 4, !tbaa !9
  %9540 = load i32, ptr %43, align 4, !tbaa !9
  %9541 = add i32 %9540, %9539
  store i32 %9541, ptr %43, align 4, !tbaa !9
  %9542 = load ptr, ptr %6, align 8, !tbaa !5
  %9543 = getelementptr inbounds %struct.w2c_hermes, ptr %9542, i32 0, i32 6
  %9544 = load i32, ptr %43, align 4, !tbaa !9
  %9545 = zext i32 %9544 to i64
  %9546 = call i64 @i64_load16_u(ptr noundef %9543, i64 noundef %9545)
  store i64 %9546, ptr %49, align 8, !tbaa !11
  store i64 16, ptr %50, align 8, !tbaa !11
  %9547 = load i64, ptr %50, align 8, !tbaa !11
  %9548 = and i64 %9547, 63
  %9549 = load i64, ptr %49, align 8, !tbaa !11
  %9550 = shl i64 %9549, %9548
  store i64 %9550, ptr %49, align 8, !tbaa !11
  %9551 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9551, ptr %44, align 4, !tbaa !9
  %9552 = load i32, ptr %44, align 4, !tbaa !9
  %9553 = zext i32 %9552 to i64
  store i64 %9553, ptr %50, align 8, !tbaa !11
  store i64 32, ptr %51, align 8, !tbaa !11
  %9554 = load i64, ptr %51, align 8, !tbaa !11
  %9555 = and i64 %9554, 63
  %9556 = load i64, ptr %50, align 8, !tbaa !11
  %9557 = shl i64 %9556, %9555
  store i64 %9557, ptr %50, align 8, !tbaa !11
  %9558 = load i64, ptr %50, align 8, !tbaa !11
  %9559 = load i64, ptr %49, align 8, !tbaa !11
  %9560 = or i64 %9559, %9558
  store i64 %9560, ptr %49, align 8, !tbaa !11
  %9561 = load i64, ptr %49, align 8, !tbaa !11
  %9562 = load i64, ptr %48, align 8, !tbaa !11
  %9563 = or i64 %9562, %9561
  store i64 %9563, ptr %48, align 8, !tbaa !11
  %9564 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9564, ptr %39, align 8, !tbaa !11
  %9565 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9565, ptr %43, align 4, !tbaa !9
  %9566 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9566, ptr %50, align 8, !tbaa !11
  %9567 = load i64, ptr %50, align 8, !tbaa !11
  %9568 = trunc i64 %9567 to i32
  store i32 %9568, ptr %44, align 4, !tbaa !9
  store i32 37, ptr %45, align 4, !tbaa !9
  %9569 = load i32, ptr %45, align 4, !tbaa !9
  %9570 = load i32, ptr %44, align 4, !tbaa !9
  %9571 = mul i32 %9570, %9569
  store i32 %9571, ptr %44, align 4, !tbaa !9
  %9572 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9572, ptr %45, align 4, !tbaa !9
  %9573 = load i32, ptr %45, align 4, !tbaa !9
  %9574 = load i32, ptr %44, align 4, !tbaa !9
  %9575 = and i32 %9574, %9573
  store i32 %9575, ptr %44, align 4, !tbaa !9
  %9576 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %9576, ptr %10, align 4, !tbaa !9
  store i32 3, ptr %45, align 4, !tbaa !9
  %9577 = load i32, ptr %45, align 4, !tbaa !9
  %9578 = and i32 %9577, 31
  %9579 = load i32, ptr %44, align 4, !tbaa !9
  %9580 = shl i32 %9579, %9578
  store i32 %9580, ptr %44, align 4, !tbaa !9
  %9581 = load i32, ptr %44, align 4, !tbaa !9
  %9582 = load i32, ptr %43, align 4, !tbaa !9
  %9583 = add i32 %9582, %9581
  store i32 %9583, ptr %43, align 4, !tbaa !9
  %9584 = load ptr, ptr %6, align 8, !tbaa !5
  %9585 = getelementptr inbounds %struct.w2c_hermes, ptr %9584, i32 0, i32 6
  %9586 = load i32, ptr %43, align 4, !tbaa !9
  %9587 = zext i32 %9586 to i64
  %9588 = call i64 @i64_load(ptr noundef %9585, i64 noundef %9587)
  store i64 %9588, ptr %49, align 8, !tbaa !11
  %9589 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %9589, ptr %40, align 8, !tbaa !11
  %9590 = load i64, ptr %48, align 8, !tbaa !11
  %9591 = load i64, ptr %49, align 8, !tbaa !11
  %9592 = icmp eq i64 %9590, %9591
  %9593 = zext i1 %9592 to i32
  store i32 %9593, ptr %42, align 4, !tbaa !9
  %9594 = load i32, ptr %42, align 4, !tbaa !9
  %9595 = icmp ne i32 %9594, 0
  br i1 %9595, label %9596, label %9597

9596:                                             ; preds = %9525
  br label %9649

9597:                                             ; preds = %9525
  store i32 1, ptr %42, align 4, !tbaa !9
  %9598 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9598, ptr %11, align 4, !tbaa !9
  br label %9599

9599:                                             ; preds = %9647, %9597
  %9600 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %9600, ptr %48, align 8, !tbaa !11
  store i64 -1, ptr %49, align 8, !tbaa !11
  %9601 = load i64, ptr %48, align 8, !tbaa !11
  %9602 = load i64, ptr %49, align 8, !tbaa !11
  %9603 = icmp eq i64 %9601, %9602
  %9604 = zext i1 %9603 to i32
  store i32 %9604, ptr %42, align 4, !tbaa !9
  %9605 = load i32, ptr %42, align 4, !tbaa !9
  %9606 = icmp ne i32 %9605, 0
  br i1 %9606, label %9607, label %9608

9607:                                             ; preds = %9599
  br label %9662

9608:                                             ; preds = %9599
  %9609 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9609, ptr %42, align 4, !tbaa !9
  %9610 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9610, ptr %43, align 4, !tbaa !9
  %9611 = load i32, ptr %43, align 4, !tbaa !9
  %9612 = load i32, ptr %42, align 4, !tbaa !9
  %9613 = add i32 %9612, %9611
  store i32 %9613, ptr %42, align 4, !tbaa !9
  %9614 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9614, ptr %7, align 4, !tbaa !9
  %9615 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9615, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %9616 = load i32, ptr %43, align 4, !tbaa !9
  %9617 = load i32, ptr %42, align 4, !tbaa !9
  %9618 = add i32 %9617, %9616
  store i32 %9618, ptr %42, align 4, !tbaa !9
  %9619 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9619, ptr %11, align 4, !tbaa !9
  %9620 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9620, ptr %48, align 8, !tbaa !11
  %9621 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9621, ptr %43, align 4, !tbaa !9
  %9622 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9622, ptr %44, align 4, !tbaa !9
  %9623 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9623, ptr %45, align 4, !tbaa !9
  %9624 = load i32, ptr %45, align 4, !tbaa !9
  %9625 = load i32, ptr %44, align 4, !tbaa !9
  %9626 = and i32 %9625, %9624
  store i32 %9626, ptr %44, align 4, !tbaa !9
  %9627 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %9627, ptr %10, align 4, !tbaa !9
  store i32 3, ptr %45, align 4, !tbaa !9
  %9628 = load i32, ptr %45, align 4, !tbaa !9
  %9629 = and i32 %9628, 31
  %9630 = load i32, ptr %44, align 4, !tbaa !9
  %9631 = shl i32 %9630, %9629
  store i32 %9631, ptr %44, align 4, !tbaa !9
  %9632 = load i32, ptr %44, align 4, !tbaa !9
  %9633 = load i32, ptr %43, align 4, !tbaa !9
  %9634 = add i32 %9633, %9632
  store i32 %9634, ptr %43, align 4, !tbaa !9
  %9635 = load ptr, ptr %6, align 8, !tbaa !5
  %9636 = getelementptr inbounds %struct.w2c_hermes, ptr %9635, i32 0, i32 6
  %9637 = load i32, ptr %43, align 4, !tbaa !9
  %9638 = zext i32 %9637 to i64
  %9639 = call i64 @i64_load(ptr noundef %9636, i64 noundef %9638)
  store i64 %9639, ptr %49, align 8, !tbaa !11
  %9640 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %9640, ptr %40, align 8, !tbaa !11
  %9641 = load i64, ptr %48, align 8, !tbaa !11
  %9642 = load i64, ptr %49, align 8, !tbaa !11
  %9643 = icmp ne i64 %9641, %9642
  %9644 = zext i1 %9643 to i32
  store i32 %9644, ptr %42, align 4, !tbaa !9
  %9645 = load i32, ptr %42, align 4, !tbaa !9
  %9646 = icmp ne i32 %9645, 0
  br i1 %9646, label %9647, label %9648

9647:                                             ; preds = %9608
  br label %9599

9648:                                             ; preds = %9608
  br label %9649

9649:                                             ; preds = %9648, %9596, %9515
  %9650 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9650, ptr %42, align 4, !tbaa !9
  %9651 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9651, ptr %43, align 4, !tbaa !9
  %9652 = load i32, ptr %43, align 4, !tbaa !9
  %9653 = load i32, ptr %42, align 4, !tbaa !9
  %9654 = sub i32 %9653, %9652
  store i32 %9654, ptr %42, align 4, !tbaa !9
  %9655 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9655, ptr %35, align 4, !tbaa !9
  %9656 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9656, ptr %42, align 4, !tbaa !9
  %9657 = load i32, ptr %42, align 4, !tbaa !9
  %9658 = icmp ne i32 %9657, 0
  br i1 %9658, label %9659, label %9660

9659:                                             ; preds = %9649
  br label %9669

9660:                                             ; preds = %9649
  store i32 0, ptr %42, align 4, !tbaa !9
  %9661 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9661, ptr %13, align 4, !tbaa !9
  br label %9951

9662:                                             ; preds = %9607, %9524
  %9663 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9663, ptr %42, align 4, !tbaa !9
  %9664 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9664, ptr %10, align 4, !tbaa !9
  %9665 = load i32, ptr %42, align 4, !tbaa !9
  %9666 = icmp ne i32 %9665, 0
  br i1 %9666, label %9667, label %9668

9667:                                             ; preds = %9662
  br label %9466

9668:                                             ; preds = %9662
  br label %11567

9669:                                             ; preds = %9659
  %9670 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %9670, ptr %42, align 4, !tbaa !9
  %9671 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9671, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %9672 = load i32, ptr %44, align 4, !tbaa !9
  %9673 = load i32, ptr %43, align 4, !tbaa !9
  %9674 = sub i32 %9673, %9672
  store i32 %9674, ptr %43, align 4, !tbaa !9
  %9675 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %9675, ptr %23, align 4, !tbaa !9
  %9676 = load i32, ptr %43, align 4, !tbaa !9
  %9677 = load i32, ptr %42, align 4, !tbaa !9
  %9678 = and i32 %9677, %9676
  store i32 %9678, ptr %42, align 4, !tbaa !9
  %9679 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9679, ptr %21, align 4, !tbaa !9
  %9680 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %9680, ptr %42, align 4, !tbaa !9
  %9681 = load i32, ptr %42, align 4, !tbaa !9
  %9682 = icmp ne i32 %9681, 0
  br i1 %9682, label %9683, label %9823

9683:                                             ; preds = %9669
  store i32 1, ptr %42, align 4, !tbaa !9
  %9684 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9684, ptr %26, align 4, !tbaa !9
  %9685 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9685, ptr %42, align 4, !tbaa !9
  %9686 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %9686, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %9687 = load i32, ptr %44, align 4, !tbaa !9
  %9688 = and i32 %9687, 31
  %9689 = load i32, ptr %43, align 4, !tbaa !9
  %9690 = shl i32 %9689, %9688
  store i32 %9690, ptr %43, align 4, !tbaa !9
  %9691 = load i32, ptr %43, align 4, !tbaa !9
  %9692 = load i32, ptr %42, align 4, !tbaa !9
  %9693 = add i32 %9692, %9691
  store i32 %9693, ptr %42, align 4, !tbaa !9
  %9694 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9694, ptr %8, align 4, !tbaa !9
  br label %9695

9695:                                             ; preds = %9807, %9683
  %9696 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %9696, ptr %42, align 4, !tbaa !9
  %9697 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9697, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %9698 = load i32, ptr %44, align 4, !tbaa !9
  %9699 = load i32, ptr %43, align 4, !tbaa !9
  %9700 = mul i32 %9699, %9698
  store i32 %9700, ptr %43, align 4, !tbaa !9
  %9701 = load i32, ptr %43, align 4, !tbaa !9
  %9702 = load i32, ptr %42, align 4, !tbaa !9
  %9703 = add i32 %9702, %9701
  store i32 %9703, ptr %42, align 4, !tbaa !9
  %9704 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9704, ptr %13, align 4, !tbaa !9
  %9705 = load ptr, ptr %6, align 8, !tbaa !5
  %9706 = getelementptr inbounds %struct.w2c_hermes, ptr %9705, i32 0, i32 6
  %9707 = load i32, ptr %42, align 4, !tbaa !9
  %9708 = zext i32 %9707 to i64
  %9709 = call i64 @i64_load(ptr noundef %9706, i64 noundef %9708)
  store i64 %9709, ptr %48, align 8, !tbaa !11
  %9710 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9710, ptr %39, align 8, !tbaa !11
  %9711 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9711, ptr %42, align 4, !tbaa !9
  %9712 = load ptr, ptr %6, align 8, !tbaa !5
  %9713 = getelementptr inbounds %struct.w2c_hermes, ptr %9712, i32 0, i32 6
  %9714 = load i32, ptr %42, align 4, !tbaa !9
  %9715 = zext i32 %9714 to i64
  %9716 = add i64 %9715, 8
  %9717 = call i32 @i32_load(ptr noundef %9713, i64 noundef %9716)
  store i32 %9717, ptr %42, align 4, !tbaa !9
  %9718 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9718, ptr %7, align 4, !tbaa !9
  %9719 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %9719, ptr %43, align 4, !tbaa !9
  %9720 = load i32, ptr %42, align 4, !tbaa !9
  %9721 = load i32, ptr %43, align 4, !tbaa !9
  %9722 = icmp ne i32 %9720, %9721
  %9723 = zext i1 %9722 to i32
  store i32 %9723, ptr %42, align 4, !tbaa !9
  %9724 = load i32, ptr %42, align 4, !tbaa !9
  %9725 = icmp ne i32 %9724, 0
  br i1 %9725, label %9726, label %9727

9726:                                             ; preds = %9695
  br label %9790

9727:                                             ; preds = %9695
  %9728 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %9728, ptr %42, align 4, !tbaa !9
  %9729 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9729, ptr %49, align 8, !tbaa !11
  store i64 32, ptr %50, align 8, !tbaa !11
  %9730 = load i64, ptr %50, align 8, !tbaa !11
  %9731 = and i64 %9730, 63
  %9732 = load i64, ptr %49, align 8, !tbaa !11
  %9733 = lshr i64 %9732, %9731
  store i64 %9733, ptr %49, align 8, !tbaa !11
  %9734 = load i64, ptr %49, align 8, !tbaa !11
  %9735 = trunc i64 %9734 to i32
  store i32 %9735, ptr %43, align 4, !tbaa !9
  %9736 = load i32, ptr %42, align 4, !tbaa !9
  %9737 = load i32, ptr %43, align 4, !tbaa !9
  %9738 = icmp ne i32 %9736, %9737
  %9739 = zext i1 %9738 to i32
  store i32 %9739, ptr %42, align 4, !tbaa !9
  %9740 = load i32, ptr %42, align 4, !tbaa !9
  %9741 = icmp ne i32 %9740, 0
  br i1 %9741, label %9742, label %9743

9742:                                             ; preds = %9727
  br label %9790

9743:                                             ; preds = %9727
  %9744 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9744, ptr %48, align 8, !tbaa !11
  %9745 = load i64, ptr %48, align 8, !tbaa !11
  %9746 = trunc i64 %9745 to i32
  store i32 %9746, ptr %42, align 4, !tbaa !9
  %9747 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9747, ptr %10, align 4, !tbaa !9
  %9748 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9748, ptr %42, align 4, !tbaa !9
  %9749 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9749, ptr %11, align 4, !tbaa !9
  br label %9750

9750:                                             ; preds = %9788, %9743
  %9751 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9751, ptr %42, align 4, !tbaa !9
  %9752 = load ptr, ptr %6, align 8, !tbaa !5
  %9753 = getelementptr inbounds %struct.w2c_hermes, ptr %9752, i32 0, i32 6
  %9754 = load i32, ptr %42, align 4, !tbaa !9
  %9755 = zext i32 %9754 to i64
  %9756 = call i32 @i32_load16_u(ptr noundef %9753, i64 noundef %9755)
  store i32 %9756, ptr %42, align 4, !tbaa !9
  %9757 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9757, ptr %43, align 4, !tbaa !9
  %9758 = load ptr, ptr %6, align 8, !tbaa !5
  %9759 = getelementptr inbounds %struct.w2c_hermes, ptr %9758, i32 0, i32 6
  %9760 = load i32, ptr %43, align 4, !tbaa !9
  %9761 = zext i32 %9760 to i64
  %9762 = call i32 @i32_load16_u(ptr noundef %9759, i64 noundef %9761)
  store i32 %9762, ptr %43, align 4, !tbaa !9
  %9763 = load i32, ptr %42, align 4, !tbaa !9
  %9764 = load i32, ptr %43, align 4, !tbaa !9
  %9765 = icmp ne i32 %9763, %9764
  %9766 = zext i1 %9765 to i32
  store i32 %9766, ptr %42, align 4, !tbaa !9
  %9767 = load i32, ptr %42, align 4, !tbaa !9
  %9768 = icmp ne i32 %9767, 0
  br i1 %9768, label %9769, label %9770

9769:                                             ; preds = %9750
  br label %9790

9770:                                             ; preds = %9750
  %9771 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9771, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %9772 = load i32, ptr %43, align 4, !tbaa !9
  %9773 = load i32, ptr %42, align 4, !tbaa !9
  %9774 = add i32 %9773, %9772
  store i32 %9774, ptr %42, align 4, !tbaa !9
  %9775 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9775, ptr %10, align 4, !tbaa !9
  %9776 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9776, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %9777 = load i32, ptr %43, align 4, !tbaa !9
  %9778 = load i32, ptr %42, align 4, !tbaa !9
  %9779 = add i32 %9778, %9777
  store i32 %9779, ptr %42, align 4, !tbaa !9
  %9780 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9780, ptr %11, align 4, !tbaa !9
  %9781 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9781, ptr %43, align 4, !tbaa !9
  %9782 = load i32, ptr %42, align 4, !tbaa !9
  %9783 = load i32, ptr %43, align 4, !tbaa !9
  %9784 = icmp ne i32 %9782, %9783
  %9785 = zext i1 %9784 to i32
  store i32 %9785, ptr %42, align 4, !tbaa !9
  %9786 = load i32, ptr %42, align 4, !tbaa !9
  %9787 = icmp ne i32 %9786, 0
  br i1 %9787, label %9788, label %9789

9788:                                             ; preds = %9770
  br label %9750

9789:                                             ; preds = %9770
  br label %11355

9790:                                             ; preds = %9769, %9742, %9726
  %9791 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9791, ptr %42, align 4, !tbaa !9
  %9792 = load i32, ptr %42, align 4, !tbaa !9
  %9793 = icmp ne i32 %9792, 0
  %9794 = xor i1 %9793, true
  %9795 = zext i1 %9794 to i32
  store i32 %9795, ptr %42, align 4, !tbaa !9
  %9796 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9796, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %9797 = load i64, ptr %49, align 8, !tbaa !11
  %9798 = load i64, ptr %50, align 8, !tbaa !11
  %9799 = icmp ult i64 %9797, %9798
  %9800 = zext i1 %9799 to i32
  store i32 %9800, ptr %43, align 4, !tbaa !9
  %9801 = load i32, ptr %43, align 4, !tbaa !9
  %9802 = load i32, ptr %42, align 4, !tbaa !9
  %9803 = and i32 %9802, %9801
  store i32 %9803, ptr %42, align 4, !tbaa !9
  %9804 = load i32, ptr %42, align 4, !tbaa !9
  %9805 = icmp ne i32 %9804, 0
  br i1 %9805, label %9806, label %9807

9806:                                             ; preds = %9790
  br label %9951

9807:                                             ; preds = %9790
  %9808 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9808, ptr %42, align 4, !tbaa !9
  %9809 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %9809, ptr %43, align 4, !tbaa !9
  %9810 = load i32, ptr %43, align 4, !tbaa !9
  %9811 = load i32, ptr %42, align 4, !tbaa !9
  %9812 = add i32 %9811, %9810
  store i32 %9812, ptr %42, align 4, !tbaa !9
  %9813 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %9813, ptr %43, align 4, !tbaa !9
  %9814 = load i32, ptr %43, align 4, !tbaa !9
  %9815 = load i32, ptr %42, align 4, !tbaa !9
  %9816 = and i32 %9815, %9814
  store i32 %9816, ptr %42, align 4, !tbaa !9
  %9817 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9817, ptr %21, align 4, !tbaa !9
  %9818 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %9818, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %9819 = load i32, ptr %43, align 4, !tbaa !9
  %9820 = load i32, ptr %42, align 4, !tbaa !9
  %9821 = add i32 %9820, %9819
  store i32 %9821, ptr %42, align 4, !tbaa !9
  %9822 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9822, ptr %26, align 4, !tbaa !9
  br label %9695

9823:                                             ; preds = %9669
  %9824 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %9824, ptr %42, align 4, !tbaa !9
  %9825 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9825, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %9826 = load i32, ptr %44, align 4, !tbaa !9
  %9827 = load i32, ptr %43, align 4, !tbaa !9
  %9828 = mul i32 %9827, %9826
  store i32 %9828, ptr %43, align 4, !tbaa !9
  %9829 = load i32, ptr %43, align 4, !tbaa !9
  %9830 = load i32, ptr %42, align 4, !tbaa !9
  %9831 = add i32 %9830, %9829
  store i32 %9831, ptr %42, align 4, !tbaa !9
  %9832 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9832, ptr %13, align 4, !tbaa !9
  %9833 = load ptr, ptr %6, align 8, !tbaa !5
  %9834 = getelementptr inbounds %struct.w2c_hermes, ptr %9833, i32 0, i32 6
  %9835 = load i32, ptr %42, align 4, !tbaa !9
  %9836 = zext i32 %9835 to i64
  %9837 = call i64 @i64_load(ptr noundef %9834, i64 noundef %9836)
  store i64 %9837, ptr %48, align 8, !tbaa !11
  %9838 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9838, ptr %39, align 8, !tbaa !11
  %9839 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %9839, ptr %42, align 4, !tbaa !9
  %9840 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9840, ptr %43, align 4, !tbaa !9
  %9841 = load ptr, ptr %6, align 8, !tbaa !5
  %9842 = getelementptr inbounds %struct.w2c_hermes, ptr %9841, i32 0, i32 6
  %9843 = load i32, ptr %43, align 4, !tbaa !9
  %9844 = zext i32 %9843 to i64
  %9845 = add i64 %9844, 8
  %9846 = call i32 @i32_load(ptr noundef %9842, i64 noundef %9845)
  store i32 %9846, ptr %43, align 4, !tbaa !9
  %9847 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %9847, ptr %7, align 4, !tbaa !9
  %9848 = load i32, ptr %42, align 4, !tbaa !9
  %9849 = load i32, ptr %43, align 4, !tbaa !9
  %9850 = icmp eq i32 %9848, %9849
  %9851 = zext i1 %9850 to i32
  store i32 %9851, ptr %42, align 4, !tbaa !9
  %9852 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9852, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %9853 = load i64, ptr %49, align 8, !tbaa !11
  %9854 = load i64, ptr %50, align 8, !tbaa !11
  %9855 = icmp ult i64 %9853, %9854
  %9856 = zext i1 %9855 to i32
  store i32 %9856, ptr %43, align 4, !tbaa !9
  %9857 = load i32, ptr %43, align 4, !tbaa !9
  %9858 = load i32, ptr %42, align 4, !tbaa !9
  %9859 = and i32 %9858, %9857
  store i32 %9859, ptr %42, align 4, !tbaa !9
  %9860 = load i32, ptr %42, align 4, !tbaa !9
  %9861 = icmp ne i32 %9860, 0
  br i1 %9861, label %9862, label %9863

9862:                                             ; preds = %9823
  br label %11355

9863:                                             ; preds = %9823
  store i32 1, ptr %42, align 4, !tbaa !9
  %9864 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9864, ptr %11, align 4, !tbaa !9
  %9865 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9865, ptr %42, align 4, !tbaa !9
  %9866 = load i32, ptr %42, align 4, !tbaa !9
  %9867 = icmp ne i32 %9866, 0
  %9868 = xor i1 %9867, true
  %9869 = zext i1 %9868 to i32
  store i32 %9869, ptr %42, align 4, !tbaa !9
  %9870 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9870, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %9871 = load i64, ptr %49, align 8, !tbaa !11
  %9872 = load i64, ptr %50, align 8, !tbaa !11
  %9873 = icmp ult i64 %9871, %9872
  %9874 = zext i1 %9873 to i32
  store i32 %9874, ptr %43, align 4, !tbaa !9
  %9875 = load i32, ptr %43, align 4, !tbaa !9
  %9876 = load i32, ptr %42, align 4, !tbaa !9
  %9877 = and i32 %9876, %9875
  store i32 %9877, ptr %42, align 4, !tbaa !9
  %9878 = load i32, ptr %42, align 4, !tbaa !9
  %9879 = icmp ne i32 %9878, 0
  br i1 %9879, label %9880, label %9881

9880:                                             ; preds = %9863
  br label %9951

9881:                                             ; preds = %9863
  br label %9882

9882:                                             ; preds = %9949, %9940, %9881
  %9883 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %9883, ptr %42, align 4, !tbaa !9
  %9884 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9884, ptr %43, align 4, !tbaa !9
  %9885 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9885, ptr %44, align 4, !tbaa !9
  %9886 = load i32, ptr %44, align 4, !tbaa !9
  %9887 = load i32, ptr %43, align 4, !tbaa !9
  %9888 = add i32 %9887, %9886
  store i32 %9888, ptr %43, align 4, !tbaa !9
  %9889 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %9889, ptr %44, align 4, !tbaa !9
  %9890 = load i32, ptr %44, align 4, !tbaa !9
  %9891 = load i32, ptr %43, align 4, !tbaa !9
  %9892 = and i32 %9891, %9890
  store i32 %9892, ptr %43, align 4, !tbaa !9
  %9893 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %9893, ptr %21, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %9894 = load i32, ptr %44, align 4, !tbaa !9
  %9895 = load i32, ptr %43, align 4, !tbaa !9
  %9896 = mul i32 %9895, %9894
  store i32 %9896, ptr %43, align 4, !tbaa !9
  %9897 = load i32, ptr %43, align 4, !tbaa !9
  %9898 = load i32, ptr %42, align 4, !tbaa !9
  %9899 = add i32 %9898, %9897
  store i32 %9899, ptr %42, align 4, !tbaa !9
  %9900 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9900, ptr %13, align 4, !tbaa !9
  %9901 = load ptr, ptr %6, align 8, !tbaa !5
  %9902 = getelementptr inbounds %struct.w2c_hermes, ptr %9901, i32 0, i32 6
  %9903 = load i32, ptr %42, align 4, !tbaa !9
  %9904 = zext i32 %9903 to i64
  %9905 = call i64 @i64_load(ptr noundef %9902, i64 noundef %9904)
  store i64 %9905, ptr %48, align 8, !tbaa !11
  %9906 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %9906, ptr %39, align 8, !tbaa !11
  %9907 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %9907, ptr %42, align 4, !tbaa !9
  %9908 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9908, ptr %43, align 4, !tbaa !9
  %9909 = load ptr, ptr %6, align 8, !tbaa !5
  %9910 = getelementptr inbounds %struct.w2c_hermes, ptr %9909, i32 0, i32 6
  %9911 = load i32, ptr %43, align 4, !tbaa !9
  %9912 = zext i32 %9911 to i64
  %9913 = add i64 %9912, 8
  %9914 = call i32 @i32_load(ptr noundef %9910, i64 noundef %9913)
  store i32 %9914, ptr %43, align 4, !tbaa !9
  %9915 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %9915, ptr %7, align 4, !tbaa !9
  %9916 = load i32, ptr %42, align 4, !tbaa !9
  %9917 = load i32, ptr %43, align 4, !tbaa !9
  %9918 = icmp eq i32 %9916, %9917
  %9919 = zext i1 %9918 to i32
  store i32 %9919, ptr %42, align 4, !tbaa !9
  %9920 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9920, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %9921 = load i64, ptr %49, align 8, !tbaa !11
  %9922 = load i64, ptr %50, align 8, !tbaa !11
  %9923 = icmp ult i64 %9921, %9922
  %9924 = zext i1 %9923 to i32
  store i32 %9924, ptr %43, align 4, !tbaa !9
  %9925 = load i32, ptr %43, align 4, !tbaa !9
  %9926 = load i32, ptr %42, align 4, !tbaa !9
  %9927 = and i32 %9926, %9925
  store i32 %9927, ptr %42, align 4, !tbaa !9
  %9928 = load i32, ptr %42, align 4, !tbaa !9
  %9929 = icmp ne i32 %9928, 0
  br i1 %9929, label %9930, label %9931

9930:                                             ; preds = %9882
  br label %11355

9931:                                             ; preds = %9882
  %9932 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9932, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %9933 = load i32, ptr %43, align 4, !tbaa !9
  %9934 = load i32, ptr %42, align 4, !tbaa !9
  %9935 = add i32 %9934, %9933
  store i32 %9935, ptr %42, align 4, !tbaa !9
  %9936 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9936, ptr %11, align 4, !tbaa !9
  %9937 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9937, ptr %42, align 4, !tbaa !9
  %9938 = load i32, ptr %42, align 4, !tbaa !9
  %9939 = icmp ne i32 %9938, 0
  br i1 %9939, label %9940, label %9941

9940:                                             ; preds = %9931
  br label %9882

9941:                                             ; preds = %9931
  %9942 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9942, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %9943 = load i64, ptr %48, align 8, !tbaa !11
  %9944 = load i64, ptr %49, align 8, !tbaa !11
  %9945 = icmp uge i64 %9943, %9944
  %9946 = zext i1 %9945 to i32
  store i32 %9946, ptr %42, align 4, !tbaa !9
  %9947 = load i32, ptr %42, align 4, !tbaa !9
  %9948 = icmp ne i32 %9947, 0
  br i1 %9948, label %9949, label %9950

9949:                                             ; preds = %9941
  br label %9882

9950:                                             ; preds = %9941
  br label %9951

9951:                                             ; preds = %9950, %9880, %9806, %9660
  %9952 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9952, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %9953 = load i32, ptr %43, align 4, !tbaa !9
  %9954 = and i32 %9953, 31
  %9955 = load i32, ptr %42, align 4, !tbaa !9
  %9956 = shl i32 %9955, %9954
  store i32 %9956, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %9957 = load i32, ptr %43, align 4, !tbaa !9
  %9958 = load i32, ptr %42, align 4, !tbaa !9
  %9959 = add i32 %9958, %9957
  store i32 %9959, ptr %42, align 4, !tbaa !9
  %9960 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9960, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %9961 = load i32, ptr %44, align 4, !tbaa !9
  %9962 = load i32, ptr %43, align 4, !tbaa !9
  %9963 = mul i32 %9962, %9961
  store i32 %9963, ptr %43, align 4, !tbaa !9
  %9964 = load i32, ptr %42, align 4, !tbaa !9
  %9965 = load i32, ptr %43, align 4, !tbaa !9
  %9966 = icmp uge i32 %9964, %9965
  %9967 = zext i1 %9966 to i32
  store i32 %9967, ptr %42, align 4, !tbaa !9
  %9968 = load i32, ptr %42, align 4, !tbaa !9
  %9969 = icmp ne i32 %9968, 0
  br i1 %9969, label %9970, label %9977

9970:                                             ; preds = %9951
  %9971 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9971, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %9972 = load i32, ptr %43, align 4, !tbaa !9
  %9973 = and i32 %9972, 31
  %9974 = load i32, ptr %42, align 4, !tbaa !9
  %9975 = shl i32 %9974, %9973
  store i32 %9975, ptr %42, align 4, !tbaa !9
  %9976 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9976, ptr %10, align 4, !tbaa !9
  br label %10012

9977:                                             ; preds = %9951
  %9978 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9978, ptr %42, align 4, !tbaa !9
  %9979 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %9979, ptr %10, align 4, !tbaa !9
  %9980 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9980, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %9981 = load i32, ptr %44, align 4, !tbaa !9
  %9982 = load i32, ptr %43, align 4, !tbaa !9
  %9983 = xor i32 %9982, %9981
  store i32 %9983, ptr %43, align 4, !tbaa !9
  %9984 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %9984, ptr %44, align 4, !tbaa !9
  %9985 = load i32, ptr %44, align 4, !tbaa !9
  %9986 = load i32, ptr %43, align 4, !tbaa !9
  %9987 = sub i32 %9986, %9985
  store i32 %9987, ptr %43, align 4, !tbaa !9
  %9988 = load i32, ptr %43, align 4, !tbaa !9
  %9989 = load i32, ptr %42, align 4, !tbaa !9
  %9990 = add i32 %9989, %9988
  store i32 %9990, ptr %42, align 4, !tbaa !9
  %9991 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9991, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %9992 = load i32, ptr %44, align 4, !tbaa !9
  %9993 = and i32 %9992, 31
  %9994 = load i32, ptr %43, align 4, !tbaa !9
  %9995 = lshr i32 %9994, %9993
  store i32 %9995, ptr %43, align 4, !tbaa !9
  %9996 = load i32, ptr %42, align 4, !tbaa !9
  %9997 = load i32, ptr %43, align 4, !tbaa !9
  %9998 = icmp ule i32 %9996, %9997
  %9999 = zext i1 %9998 to i32
  store i32 %9999, ptr %42, align 4, !tbaa !9
  %10000 = load i32, ptr %42, align 4, !tbaa !9
  %10001 = icmp ne i32 %10000, 0
  br i1 %10001, label %10002, label %10003

10002:                                            ; preds = %9977
  br label %10012

10003:                                            ; preds = %9977
  %10004 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10004, ptr %42, align 4, !tbaa !9
  %10005 = load ptr, ptr %6, align 8, !tbaa !5
  %10006 = getelementptr inbounds %struct.w2c_hermes, ptr %10005, i32 0, i32 6
  %10007 = load i32, ptr %42, align 4, !tbaa !9
  %10008 = zext i32 %10007 to i64
  %10009 = add i64 %10008, 8
  %10010 = call i32 @i32_load(ptr noundef %10006, i64 noundef %10009)
  store i32 %10010, ptr %42, align 4, !tbaa !9
  %10011 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10011, ptr %10, align 4, !tbaa !9
  br label %11279

10012:                                            ; preds = %10002, %9970
  store i32 64, ptr %42, align 4, !tbaa !9
  %10013 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10013, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %10014 = load i32, ptr %44, align 4, !tbaa !9
  %10015 = load i32, ptr %43, align 4, !tbaa !9
  %10016 = sub i32 %10015, %10014
  store i32 %10016, ptr %43, align 4, !tbaa !9
  %10017 = load i32, ptr %43, align 4, !tbaa !9
  %10018 = zext i32 %10017 to i64
  store i64 %10018, ptr %49, align 8, !tbaa !11
  %10019 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %10019, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %50, align 8, !tbaa !11
  %10020 = load i64, ptr %50, align 8, !tbaa !11
  %10021 = and i64 %10020, 63
  %10022 = load i64, ptr %49, align 8, !tbaa !11
  %10023 = lshr i64 %10022, %10021
  store i64 %10023, ptr %49, align 8, !tbaa !11
  %10024 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10024, ptr %50, align 8, !tbaa !11
  %10025 = load i64, ptr %50, align 8, !tbaa !11
  %10026 = load i64, ptr %49, align 8, !tbaa !11
  %10027 = or i64 %10026, %10025
  store i64 %10027, ptr %49, align 8, !tbaa !11
  %10028 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %10028, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %50, align 8, !tbaa !11
  %10029 = load i64, ptr %50, align 8, !tbaa !11
  %10030 = and i64 %10029, 63
  %10031 = load i64, ptr %49, align 8, !tbaa !11
  %10032 = lshr i64 %10031, %10030
  store i64 %10032, ptr %49, align 8, !tbaa !11
  %10033 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10033, ptr %50, align 8, !tbaa !11
  %10034 = load i64, ptr %50, align 8, !tbaa !11
  %10035 = load i64, ptr %49, align 8, !tbaa !11
  %10036 = or i64 %10035, %10034
  store i64 %10036, ptr %49, align 8, !tbaa !11
  %10037 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %10037, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %50, align 8, !tbaa !11
  %10038 = load i64, ptr %50, align 8, !tbaa !11
  %10039 = and i64 %10038, 63
  %10040 = load i64, ptr %49, align 8, !tbaa !11
  %10041 = lshr i64 %10040, %10039
  store i64 %10041, ptr %49, align 8, !tbaa !11
  %10042 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10042, ptr %50, align 8, !tbaa !11
  %10043 = load i64, ptr %50, align 8, !tbaa !11
  %10044 = load i64, ptr %49, align 8, !tbaa !11
  %10045 = or i64 %10044, %10043
  store i64 %10045, ptr %49, align 8, !tbaa !11
  %10046 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %10046, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %50, align 8, !tbaa !11
  %10047 = load i64, ptr %50, align 8, !tbaa !11
  %10048 = and i64 %10047, 63
  %10049 = load i64, ptr %49, align 8, !tbaa !11
  %10050 = lshr i64 %10049, %10048
  store i64 %10050, ptr %49, align 8, !tbaa !11
  %10051 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10051, ptr %50, align 8, !tbaa !11
  %10052 = load i64, ptr %50, align 8, !tbaa !11
  %10053 = load i64, ptr %49, align 8, !tbaa !11
  %10054 = or i64 %10053, %10052
  store i64 %10054, ptr %49, align 8, !tbaa !11
  %10055 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %10055, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %50, align 8, !tbaa !11
  %10056 = load i64, ptr %50, align 8, !tbaa !11
  %10057 = and i64 %10056, 63
  %10058 = load i64, ptr %49, align 8, !tbaa !11
  %10059 = lshr i64 %10058, %10057
  store i64 %10059, ptr %49, align 8, !tbaa !11
  %10060 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10060, ptr %50, align 8, !tbaa !11
  %10061 = load i64, ptr %50, align 8, !tbaa !11
  %10062 = load i64, ptr %49, align 8, !tbaa !11
  %10063 = or i64 %10062, %10061
  store i64 %10063, ptr %49, align 8, !tbaa !11
  %10064 = load i64, ptr %49, align 8, !tbaa !11
  %10065 = trunc i64 %10064 to i32
  store i32 %10065, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %10066 = load i32, ptr %44, align 4, !tbaa !9
  %10067 = load i32, ptr %43, align 4, !tbaa !9
  %10068 = add i32 %10067, %10066
  store i32 %10068, ptr %43, align 4, !tbaa !9
  %10069 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %10069, ptr %7, align 4, !tbaa !9
  %10070 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10070, ptr %44, align 4, !tbaa !9
  store i32 64, ptr %45, align 4, !tbaa !9
  %10071 = load i32, ptr %44, align 4, !tbaa !9
  %10072 = load i32, ptr %45, align 4, !tbaa !9
  %10073 = icmp ule i32 %10071, %10072
  %10074 = zext i1 %10073 to i32
  store i32 %10074, ptr %44, align 4, !tbaa !9
  %10075 = load i32, ptr %44, align 4, !tbaa !9
  %10076 = icmp ne i32 %10075, 0
  br i1 %10076, label %10077, label %10079

10077:                                            ; preds = %10012
  %10078 = load i32, ptr %42, align 4, !tbaa !9
  br label %10081

10079:                                            ; preds = %10012
  %10080 = load i32, ptr %43, align 4, !tbaa !9
  br label %10081

10081:                                            ; preds = %10079, %10077
  %10082 = phi i32 [ %10078, %10077 ], [ %10080, %10079 ]
  store i32 %10082, ptr %42, align 4, !tbaa !9
  %10083 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10083, ptr %8, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %10084 = load i32, ptr %43, align 4, !tbaa !9
  %10085 = load i32, ptr %42, align 4, !tbaa !9
  %10086 = mul i32 %10085, %10084
  store i32 %10086, ptr %42, align 4, !tbaa !9
  %10087 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10087, ptr %15, align 4, !tbaa !9
  %10088 = load ptr, ptr %6, align 8, !tbaa !5
  %10089 = load i32, ptr %42, align 4, !tbaa !9
  %10090 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %10088, i32 noundef %10089)
  store i32 %10090, ptr %42, align 4, !tbaa !9
  %10091 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10091, ptr %7, align 4, !tbaa !9
  %10092 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10092, ptr %43, align 4, !tbaa !9
  %10093 = load i32, ptr %43, align 4, !tbaa !9
  %10094 = load i32, ptr %42, align 4, !tbaa !9
  %10095 = add i32 %10094, %10093
  store i32 %10095, ptr %42, align 4, !tbaa !9
  %10096 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10096, ptr %13, align 4, !tbaa !9
  %10097 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %10097, ptr %42, align 4, !tbaa !9
  %10098 = load i32, ptr %42, align 4, !tbaa !9
  %10099 = icmp ne i32 %10098, 0
  br i1 %10099, label %10100, label %10310

10100:                                            ; preds = %10081
  store i32 0, ptr %42, align 4, !tbaa !9
  %10101 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10101, ptr %11, align 4, !tbaa !9
  %10102 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10102, ptr %42, align 4, !tbaa !9
  %10103 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10103, ptr %10, align 4, !tbaa !9
  %10104 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10104, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %10105 = load i32, ptr %43, align 4, !tbaa !9
  %10106 = load i32, ptr %42, align 4, !tbaa !9
  %10107 = sub i32 %10106, %10105
  store i32 %10107, ptr %42, align 4, !tbaa !9
  %10108 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10108, ptr %23, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %10109 = load i32, ptr %43, align 4, !tbaa !9
  %10110 = icmp eq i32 %10109, 0
  %10111 = xor i1 %10110, true
  %10112 = xor i1 %10111, true
  %10113 = zext i1 %10112 to i32
  %10114 = sext i32 %10113 to i64
  %10115 = call i64 @llvm.expect.i64(i64 %10114, i64 0)
  %10116 = icmp ne i64 %10115, 0
  br i1 %10116, label %10117, label %10119

10117:                                            ; preds = %10100
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

10118:                                            ; No predecessors!
  br label %10123

10119:                                            ; preds = %10100
  %10120 = load i32, ptr %42, align 4, !tbaa !9
  %10121 = load i32, ptr %43, align 4, !tbaa !9
  %10122 = udiv i32 %10120, %10121
  br label %10123

10123:                                            ; preds = %10119, %10118
  %10124 = phi i32 [ 0, %10118 ], [ %10122, %10119 ]
  store i32 %10124, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %10125 = load i32, ptr %43, align 4, !tbaa !9
  %10126 = load i32, ptr %42, align 4, !tbaa !9
  %10127 = add i32 %10126, %10125
  store i32 %10127, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %10128 = load i32, ptr %43, align 4, !tbaa !9
  %10129 = load i32, ptr %42, align 4, !tbaa !9
  %10130 = and i32 %10129, %10128
  store i32 %10130, ptr %42, align 4, !tbaa !9
  %10131 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10131, ptr %15, align 4, !tbaa !9
  %10132 = load i32, ptr %42, align 4, !tbaa !9
  %10133 = icmp ne i32 %10132, 0
  br i1 %10133, label %10134, label %10168

10134:                                            ; preds = %10123
  br label %10135

10135:                                            ; preds = %10166, %10134
  %10136 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10136, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10137 = load ptr, ptr %6, align 8, !tbaa !5
  %10138 = getelementptr inbounds %struct.w2c_hermes, ptr %10137, i32 0, i32 6
  %10139 = load i32, ptr %42, align 4, !tbaa !9
  %10140 = zext i32 %10139 to i64
  %10141 = add i64 %10140, 8
  %10142 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10138, i64 noundef %10141, i32 noundef %10142)
  %10143 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10143, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10144 = load ptr, ptr %6, align 8, !tbaa !5
  %10145 = getelementptr inbounds %struct.w2c_hermes, ptr %10144, i32 0, i32 6
  %10146 = load i32, ptr %42, align 4, !tbaa !9
  %10147 = zext i32 %10146 to i64
  %10148 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10145, i64 noundef %10147, i64 noundef %10148)
  %10149 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10149, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %10150 = load i32, ptr %43, align 4, !tbaa !9
  %10151 = load i32, ptr %42, align 4, !tbaa !9
  %10152 = add i32 %10151, %10150
  store i32 %10152, ptr %42, align 4, !tbaa !9
  %10153 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10153, ptr %10, align 4, !tbaa !9
  %10154 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10154, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %10155 = load i32, ptr %43, align 4, !tbaa !9
  %10156 = load i32, ptr %42, align 4, !tbaa !9
  %10157 = add i32 %10156, %10155
  store i32 %10157, ptr %42, align 4, !tbaa !9
  %10158 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10158, ptr %11, align 4, !tbaa !9
  %10159 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10159, ptr %43, align 4, !tbaa !9
  %10160 = load i32, ptr %42, align 4, !tbaa !9
  %10161 = load i32, ptr %43, align 4, !tbaa !9
  %10162 = icmp ne i32 %10160, %10161
  %10163 = zext i1 %10162 to i32
  store i32 %10163, ptr %42, align 4, !tbaa !9
  %10164 = load i32, ptr %42, align 4, !tbaa !9
  %10165 = icmp ne i32 %10164, 0
  br i1 %10165, label %10166, label %10167

10166:                                            ; preds = %10135
  br label %10135

10167:                                            ; preds = %10135
  br label %10168

10168:                                            ; preds = %10167, %10123
  %10169 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %10169, ptr %42, align 4, !tbaa !9
  store i32 168, ptr %43, align 4, !tbaa !9
  %10170 = load i32, ptr %42, align 4, !tbaa !9
  %10171 = load i32, ptr %43, align 4, !tbaa !9
  %10172 = icmp uge i32 %10170, %10171
  %10173 = zext i1 %10172 to i32
  store i32 %10173, ptr %42, align 4, !tbaa !9
  %10174 = load i32, ptr %42, align 4, !tbaa !9
  %10175 = icmp ne i32 %10174, 0
  br i1 %10175, label %10176, label %10303

10176:                                            ; preds = %10168
  br label %10177

10177:                                            ; preds = %10301, %10176
  %10178 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10178, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10179 = load ptr, ptr %6, align 8, !tbaa !5
  %10180 = getelementptr inbounds %struct.w2c_hermes, ptr %10179, i32 0, i32 6
  %10181 = load i32, ptr %42, align 4, !tbaa !9
  %10182 = zext i32 %10181 to i64
  %10183 = add i64 %10182, 168
  %10184 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10180, i64 noundef %10183, i64 noundef %10184)
  %10185 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10185, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10186 = load ptr, ptr %6, align 8, !tbaa !5
  %10187 = getelementptr inbounds %struct.w2c_hermes, ptr %10186, i32 0, i32 6
  %10188 = load i32, ptr %42, align 4, !tbaa !9
  %10189 = zext i32 %10188 to i64
  %10190 = add i64 %10189, 144
  %10191 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10187, i64 noundef %10190, i64 noundef %10191)
  %10192 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10192, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10193 = load ptr, ptr %6, align 8, !tbaa !5
  %10194 = getelementptr inbounds %struct.w2c_hermes, ptr %10193, i32 0, i32 6
  %10195 = load i32, ptr %42, align 4, !tbaa !9
  %10196 = zext i32 %10195 to i64
  %10197 = add i64 %10196, 120
  %10198 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10194, i64 noundef %10197, i64 noundef %10198)
  %10199 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10199, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10200 = load ptr, ptr %6, align 8, !tbaa !5
  %10201 = getelementptr inbounds %struct.w2c_hermes, ptr %10200, i32 0, i32 6
  %10202 = load i32, ptr %42, align 4, !tbaa !9
  %10203 = zext i32 %10202 to i64
  %10204 = add i64 %10203, 96
  %10205 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10201, i64 noundef %10204, i64 noundef %10205)
  %10206 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10206, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10207 = load ptr, ptr %6, align 8, !tbaa !5
  %10208 = getelementptr inbounds %struct.w2c_hermes, ptr %10207, i32 0, i32 6
  %10209 = load i32, ptr %42, align 4, !tbaa !9
  %10210 = zext i32 %10209 to i64
  %10211 = add i64 %10210, 72
  %10212 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10208, i64 noundef %10211, i64 noundef %10212)
  %10213 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10213, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10214 = load ptr, ptr %6, align 8, !tbaa !5
  %10215 = getelementptr inbounds %struct.w2c_hermes, ptr %10214, i32 0, i32 6
  %10216 = load i32, ptr %42, align 4, !tbaa !9
  %10217 = zext i32 %10216 to i64
  %10218 = add i64 %10217, 48
  %10219 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10215, i64 noundef %10218, i64 noundef %10219)
  %10220 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10220, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10221 = load ptr, ptr %6, align 8, !tbaa !5
  %10222 = getelementptr inbounds %struct.w2c_hermes, ptr %10221, i32 0, i32 6
  %10223 = load i32, ptr %42, align 4, !tbaa !9
  %10224 = zext i32 %10223 to i64
  %10225 = add i64 %10224, 24
  %10226 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10222, i64 noundef %10225, i64 noundef %10226)
  %10227 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10227, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10228 = load ptr, ptr %6, align 8, !tbaa !5
  %10229 = getelementptr inbounds %struct.w2c_hermes, ptr %10228, i32 0, i32 6
  %10230 = load i32, ptr %42, align 4, !tbaa !9
  %10231 = zext i32 %10230 to i64
  %10232 = add i64 %10231, 8
  %10233 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10229, i64 noundef %10232, i32 noundef %10233)
  %10234 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10234, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10235 = load ptr, ptr %6, align 8, !tbaa !5
  %10236 = getelementptr inbounds %struct.w2c_hermes, ptr %10235, i32 0, i32 6
  %10237 = load i32, ptr %42, align 4, !tbaa !9
  %10238 = zext i32 %10237 to i64
  %10239 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10236, i64 noundef %10238, i64 noundef %10239)
  %10240 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10240, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10241 = load ptr, ptr %6, align 8, !tbaa !5
  %10242 = getelementptr inbounds %struct.w2c_hermes, ptr %10241, i32 0, i32 6
  %10243 = load i32, ptr %42, align 4, !tbaa !9
  %10244 = zext i32 %10243 to i64
  %10245 = add i64 %10244, 176
  %10246 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10242, i64 noundef %10245, i32 noundef %10246)
  %10247 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10247, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10248 = load ptr, ptr %6, align 8, !tbaa !5
  %10249 = getelementptr inbounds %struct.w2c_hermes, ptr %10248, i32 0, i32 6
  %10250 = load i32, ptr %42, align 4, !tbaa !9
  %10251 = zext i32 %10250 to i64
  %10252 = add i64 %10251, 152
  %10253 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10249, i64 noundef %10252, i32 noundef %10253)
  %10254 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10254, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10255 = load ptr, ptr %6, align 8, !tbaa !5
  %10256 = getelementptr inbounds %struct.w2c_hermes, ptr %10255, i32 0, i32 6
  %10257 = load i32, ptr %42, align 4, !tbaa !9
  %10258 = zext i32 %10257 to i64
  %10259 = add i64 %10258, 128
  %10260 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10256, i64 noundef %10259, i32 noundef %10260)
  %10261 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10261, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10262 = load ptr, ptr %6, align 8, !tbaa !5
  %10263 = getelementptr inbounds %struct.w2c_hermes, ptr %10262, i32 0, i32 6
  %10264 = load i32, ptr %42, align 4, !tbaa !9
  %10265 = zext i32 %10264 to i64
  %10266 = add i64 %10265, 104
  %10267 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10263, i64 noundef %10266, i32 noundef %10267)
  %10268 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10268, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10269 = load ptr, ptr %6, align 8, !tbaa !5
  %10270 = getelementptr inbounds %struct.w2c_hermes, ptr %10269, i32 0, i32 6
  %10271 = load i32, ptr %42, align 4, !tbaa !9
  %10272 = zext i32 %10271 to i64
  %10273 = add i64 %10272, 80
  %10274 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10270, i64 noundef %10273, i32 noundef %10274)
  %10275 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10275, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10276 = load ptr, ptr %6, align 8, !tbaa !5
  %10277 = getelementptr inbounds %struct.w2c_hermes, ptr %10276, i32 0, i32 6
  %10278 = load i32, ptr %42, align 4, !tbaa !9
  %10279 = zext i32 %10278 to i64
  %10280 = add i64 %10279, 56
  %10281 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10277, i64 noundef %10280, i32 noundef %10281)
  %10282 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10282, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10283 = load ptr, ptr %6, align 8, !tbaa !5
  %10284 = getelementptr inbounds %struct.w2c_hermes, ptr %10283, i32 0, i32 6
  %10285 = load i32, ptr %42, align 4, !tbaa !9
  %10286 = zext i32 %10285 to i64
  %10287 = add i64 %10286, 32
  %10288 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10284, i64 noundef %10287, i32 noundef %10288)
  %10289 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10289, ptr %42, align 4, !tbaa !9
  store i32 192, ptr %43, align 4, !tbaa !9
  %10290 = load i32, ptr %43, align 4, !tbaa !9
  %10291 = load i32, ptr %42, align 4, !tbaa !9
  %10292 = add i32 %10291, %10290
  store i32 %10292, ptr %42, align 4, !tbaa !9
  %10293 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10293, ptr %10, align 4, !tbaa !9
  %10294 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10294, ptr %43, align 4, !tbaa !9
  %10295 = load i32, ptr %42, align 4, !tbaa !9
  %10296 = load i32, ptr %43, align 4, !tbaa !9
  %10297 = icmp ne i32 %10295, %10296
  %10298 = zext i1 %10297 to i32
  store i32 %10298, ptr %42, align 4, !tbaa !9
  %10299 = load i32, ptr %42, align 4, !tbaa !9
  %10300 = icmp ne i32 %10299, 0
  br i1 %10300, label %10301, label %10302

10301:                                            ; preds = %10177
  br label %10177

10302:                                            ; preds = %10177
  br label %10303

10303:                                            ; preds = %10302, %10168
  %10304 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10304, ptr %42, align 4, !tbaa !9
  %10305 = load i32, ptr %42, align 4, !tbaa !9
  %10306 = icmp ne i32 %10305, 0
  br i1 %10306, label %10307, label %10308

10307:                                            ; preds = %10303
  br label %10515

10308:                                            ; preds = %10303
  store i32 0, ptr %42, align 4, !tbaa !9
  %10309 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10309, ptr %15, align 4, !tbaa !9
  br label %10971

10310:                                            ; preds = %10081
  store i32 0, ptr %42, align 4, !tbaa !9
  %10311 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10311, ptr %11, align 4, !tbaa !9
  %10312 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10312, ptr %42, align 4, !tbaa !9
  %10313 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10313, ptr %10, align 4, !tbaa !9
  %10314 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10314, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %10315 = load i32, ptr %43, align 4, !tbaa !9
  %10316 = load i32, ptr %42, align 4, !tbaa !9
  %10317 = sub i32 %10316, %10315
  store i32 %10317, ptr %42, align 4, !tbaa !9
  %10318 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10318, ptr %23, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %10319 = load i32, ptr %43, align 4, !tbaa !9
  %10320 = icmp eq i32 %10319, 0
  %10321 = xor i1 %10320, true
  %10322 = xor i1 %10321, true
  %10323 = zext i1 %10322 to i32
  %10324 = sext i32 %10323 to i64
  %10325 = call i64 @llvm.expect.i64(i64 %10324, i64 0)
  %10326 = icmp ne i64 %10325, 0
  br i1 %10326, label %10327, label %10329

10327:                                            ; preds = %10310
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

10328:                                            ; No predecessors!
  br label %10333

10329:                                            ; preds = %10310
  %10330 = load i32, ptr %42, align 4, !tbaa !9
  %10331 = load i32, ptr %43, align 4, !tbaa !9
  %10332 = udiv i32 %10330, %10331
  br label %10333

10333:                                            ; preds = %10329, %10328
  %10334 = phi i32 [ 0, %10328 ], [ %10332, %10329 ]
  store i32 %10334, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %10335 = load i32, ptr %43, align 4, !tbaa !9
  %10336 = load i32, ptr %42, align 4, !tbaa !9
  %10337 = add i32 %10336, %10335
  store i32 %10337, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %10338 = load i32, ptr %43, align 4, !tbaa !9
  %10339 = load i32, ptr %42, align 4, !tbaa !9
  %10340 = and i32 %10339, %10338
  store i32 %10340, ptr %42, align 4, !tbaa !9
  %10341 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10341, ptr %15, align 4, !tbaa !9
  %10342 = load i32, ptr %42, align 4, !tbaa !9
  %10343 = icmp ne i32 %10342, 0
  br i1 %10343, label %10344, label %10378

10344:                                            ; preds = %10333
  br label %10345

10345:                                            ; preds = %10376, %10344
  %10346 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10346, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10347 = load ptr, ptr %6, align 8, !tbaa !5
  %10348 = getelementptr inbounds %struct.w2c_hermes, ptr %10347, i32 0, i32 6
  %10349 = load i32, ptr %42, align 4, !tbaa !9
  %10350 = zext i32 %10349 to i64
  %10351 = add i64 %10350, 8
  %10352 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10348, i64 noundef %10351, i32 noundef %10352)
  %10353 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10353, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10354 = load ptr, ptr %6, align 8, !tbaa !5
  %10355 = getelementptr inbounds %struct.w2c_hermes, ptr %10354, i32 0, i32 6
  %10356 = load i32, ptr %42, align 4, !tbaa !9
  %10357 = zext i32 %10356 to i64
  %10358 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10355, i64 noundef %10357, i64 noundef %10358)
  %10359 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10359, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %10360 = load i32, ptr %43, align 4, !tbaa !9
  %10361 = load i32, ptr %42, align 4, !tbaa !9
  %10362 = add i32 %10361, %10360
  store i32 %10362, ptr %42, align 4, !tbaa !9
  %10363 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10363, ptr %10, align 4, !tbaa !9
  %10364 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10364, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %10365 = load i32, ptr %43, align 4, !tbaa !9
  %10366 = load i32, ptr %42, align 4, !tbaa !9
  %10367 = add i32 %10366, %10365
  store i32 %10367, ptr %42, align 4, !tbaa !9
  %10368 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10368, ptr %11, align 4, !tbaa !9
  %10369 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10369, ptr %43, align 4, !tbaa !9
  %10370 = load i32, ptr %42, align 4, !tbaa !9
  %10371 = load i32, ptr %43, align 4, !tbaa !9
  %10372 = icmp ne i32 %10370, %10371
  %10373 = zext i1 %10372 to i32
  store i32 %10373, ptr %42, align 4, !tbaa !9
  %10374 = load i32, ptr %42, align 4, !tbaa !9
  %10375 = icmp ne i32 %10374, 0
  br i1 %10375, label %10376, label %10377

10376:                                            ; preds = %10345
  br label %10345

10377:                                            ; preds = %10345
  br label %10378

10378:                                            ; preds = %10377, %10333
  store i32 0, ptr %42, align 4, !tbaa !9
  %10379 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10379, ptr %15, align 4, !tbaa !9
  %10380 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %10380, ptr %42, align 4, !tbaa !9
  store i32 168, ptr %43, align 4, !tbaa !9
  %10381 = load i32, ptr %42, align 4, !tbaa !9
  %10382 = load i32, ptr %43, align 4, !tbaa !9
  %10383 = icmp ult i32 %10381, %10382
  %10384 = zext i1 %10383 to i32
  store i32 %10384, ptr %42, align 4, !tbaa !9
  %10385 = load i32, ptr %42, align 4, !tbaa !9
  %10386 = icmp ne i32 %10385, 0
  br i1 %10386, label %10387, label %10388

10387:                                            ; preds = %10378
  br label %10975

10388:                                            ; preds = %10378
  br label %10389

10389:                                            ; preds = %10513, %10388
  %10390 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10390, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10391 = load ptr, ptr %6, align 8, !tbaa !5
  %10392 = getelementptr inbounds %struct.w2c_hermes, ptr %10391, i32 0, i32 6
  %10393 = load i32, ptr %42, align 4, !tbaa !9
  %10394 = zext i32 %10393 to i64
  %10395 = add i64 %10394, 168
  %10396 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10392, i64 noundef %10395, i64 noundef %10396)
  %10397 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10397, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10398 = load ptr, ptr %6, align 8, !tbaa !5
  %10399 = getelementptr inbounds %struct.w2c_hermes, ptr %10398, i32 0, i32 6
  %10400 = load i32, ptr %42, align 4, !tbaa !9
  %10401 = zext i32 %10400 to i64
  %10402 = add i64 %10401, 144
  %10403 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10399, i64 noundef %10402, i64 noundef %10403)
  %10404 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10404, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10405 = load ptr, ptr %6, align 8, !tbaa !5
  %10406 = getelementptr inbounds %struct.w2c_hermes, ptr %10405, i32 0, i32 6
  %10407 = load i32, ptr %42, align 4, !tbaa !9
  %10408 = zext i32 %10407 to i64
  %10409 = add i64 %10408, 120
  %10410 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10406, i64 noundef %10409, i64 noundef %10410)
  %10411 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10411, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10412 = load ptr, ptr %6, align 8, !tbaa !5
  %10413 = getelementptr inbounds %struct.w2c_hermes, ptr %10412, i32 0, i32 6
  %10414 = load i32, ptr %42, align 4, !tbaa !9
  %10415 = zext i32 %10414 to i64
  %10416 = add i64 %10415, 96
  %10417 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10413, i64 noundef %10416, i64 noundef %10417)
  %10418 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10418, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10419 = load ptr, ptr %6, align 8, !tbaa !5
  %10420 = getelementptr inbounds %struct.w2c_hermes, ptr %10419, i32 0, i32 6
  %10421 = load i32, ptr %42, align 4, !tbaa !9
  %10422 = zext i32 %10421 to i64
  %10423 = add i64 %10422, 72
  %10424 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10420, i64 noundef %10423, i64 noundef %10424)
  %10425 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10425, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10426 = load ptr, ptr %6, align 8, !tbaa !5
  %10427 = getelementptr inbounds %struct.w2c_hermes, ptr %10426, i32 0, i32 6
  %10428 = load i32, ptr %42, align 4, !tbaa !9
  %10429 = zext i32 %10428 to i64
  %10430 = add i64 %10429, 48
  %10431 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10427, i64 noundef %10430, i64 noundef %10431)
  %10432 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10432, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10433 = load ptr, ptr %6, align 8, !tbaa !5
  %10434 = getelementptr inbounds %struct.w2c_hermes, ptr %10433, i32 0, i32 6
  %10435 = load i32, ptr %42, align 4, !tbaa !9
  %10436 = zext i32 %10435 to i64
  %10437 = add i64 %10436, 24
  %10438 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10434, i64 noundef %10437, i64 noundef %10438)
  %10439 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10439, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10440 = load ptr, ptr %6, align 8, !tbaa !5
  %10441 = getelementptr inbounds %struct.w2c_hermes, ptr %10440, i32 0, i32 6
  %10442 = load i32, ptr %42, align 4, !tbaa !9
  %10443 = zext i32 %10442 to i64
  %10444 = add i64 %10443, 8
  %10445 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10441, i64 noundef %10444, i32 noundef %10445)
  %10446 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10446, ptr %42, align 4, !tbaa !9
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %10447 = load ptr, ptr %6, align 8, !tbaa !5
  %10448 = getelementptr inbounds %struct.w2c_hermes, ptr %10447, i32 0, i32 6
  %10449 = load i32, ptr %42, align 4, !tbaa !9
  %10450 = zext i32 %10449 to i64
  %10451 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10448, i64 noundef %10450, i64 noundef %10451)
  %10452 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10452, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10453 = load ptr, ptr %6, align 8, !tbaa !5
  %10454 = getelementptr inbounds %struct.w2c_hermes, ptr %10453, i32 0, i32 6
  %10455 = load i32, ptr %42, align 4, !tbaa !9
  %10456 = zext i32 %10455 to i64
  %10457 = add i64 %10456, 176
  %10458 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10454, i64 noundef %10457, i32 noundef %10458)
  %10459 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10459, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10460 = load ptr, ptr %6, align 8, !tbaa !5
  %10461 = getelementptr inbounds %struct.w2c_hermes, ptr %10460, i32 0, i32 6
  %10462 = load i32, ptr %42, align 4, !tbaa !9
  %10463 = zext i32 %10462 to i64
  %10464 = add i64 %10463, 152
  %10465 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10461, i64 noundef %10464, i32 noundef %10465)
  %10466 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10466, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10467 = load ptr, ptr %6, align 8, !tbaa !5
  %10468 = getelementptr inbounds %struct.w2c_hermes, ptr %10467, i32 0, i32 6
  %10469 = load i32, ptr %42, align 4, !tbaa !9
  %10470 = zext i32 %10469 to i64
  %10471 = add i64 %10470, 128
  %10472 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10468, i64 noundef %10471, i32 noundef %10472)
  %10473 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10473, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10474 = load ptr, ptr %6, align 8, !tbaa !5
  %10475 = getelementptr inbounds %struct.w2c_hermes, ptr %10474, i32 0, i32 6
  %10476 = load i32, ptr %42, align 4, !tbaa !9
  %10477 = zext i32 %10476 to i64
  %10478 = add i64 %10477, 104
  %10479 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10475, i64 noundef %10478, i32 noundef %10479)
  %10480 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10480, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10481 = load ptr, ptr %6, align 8, !tbaa !5
  %10482 = getelementptr inbounds %struct.w2c_hermes, ptr %10481, i32 0, i32 6
  %10483 = load i32, ptr %42, align 4, !tbaa !9
  %10484 = zext i32 %10483 to i64
  %10485 = add i64 %10484, 80
  %10486 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10482, i64 noundef %10485, i32 noundef %10486)
  %10487 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10487, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10488 = load ptr, ptr %6, align 8, !tbaa !5
  %10489 = getelementptr inbounds %struct.w2c_hermes, ptr %10488, i32 0, i32 6
  %10490 = load i32, ptr %42, align 4, !tbaa !9
  %10491 = zext i32 %10490 to i64
  %10492 = add i64 %10491, 56
  %10493 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10489, i64 noundef %10492, i32 noundef %10493)
  %10494 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10494, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10495 = load ptr, ptr %6, align 8, !tbaa !5
  %10496 = getelementptr inbounds %struct.w2c_hermes, ptr %10495, i32 0, i32 6
  %10497 = load i32, ptr %42, align 4, !tbaa !9
  %10498 = zext i32 %10497 to i64
  %10499 = add i64 %10498, 32
  %10500 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10496, i64 noundef %10499, i32 noundef %10500)
  %10501 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10501, ptr %42, align 4, !tbaa !9
  store i32 192, ptr %43, align 4, !tbaa !9
  %10502 = load i32, ptr %43, align 4, !tbaa !9
  %10503 = load i32, ptr %42, align 4, !tbaa !9
  %10504 = add i32 %10503, %10502
  store i32 %10504, ptr %42, align 4, !tbaa !9
  %10505 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10505, ptr %10, align 4, !tbaa !9
  %10506 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10506, ptr %43, align 4, !tbaa !9
  %10507 = load i32, ptr %42, align 4, !tbaa !9
  %10508 = load i32, ptr %43, align 4, !tbaa !9
  %10509 = icmp ne i32 %10507, %10508
  %10510 = zext i1 %10509 to i32
  store i32 %10510, ptr %42, align 4, !tbaa !9
  %10511 = load i32, ptr %42, align 4, !tbaa !9
  %10512 = icmp ne i32 %10511, 0
  br i1 %10512, label %10513, label %10514

10513:                                            ; preds = %10389
  br label %10389

10514:                                            ; preds = %10389
  br label %10975

10515:                                            ; preds = %10307
  %10516 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %10516, ptr %42, align 4, !tbaa !9
  %10517 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10517, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %10518 = load i32, ptr %44, align 4, !tbaa !9
  %10519 = load i32, ptr %43, align 4, !tbaa !9
  %10520 = mul i32 %10519, %10518
  store i32 %10520, ptr %43, align 4, !tbaa !9
  %10521 = load i32, ptr %43, align 4, !tbaa !9
  %10522 = load i32, ptr %42, align 4, !tbaa !9
  %10523 = add i32 %10522, %10521
  store i32 %10523, ptr %42, align 4, !tbaa !9
  %10524 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10524, ptr %28, align 4, !tbaa !9
  %10525 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10525, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %10526 = load i32, ptr %43, align 4, !tbaa !9
  %10527 = load i32, ptr %42, align 4, !tbaa !9
  %10528 = sub i32 %10527, %10526
  store i32 %10528, ptr %42, align 4, !tbaa !9
  %10529 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10529, ptr %33, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %10530 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10530, ptr %15, align 4, !tbaa !9
  %10531 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %10531, ptr %42, align 4, !tbaa !9
  %10532 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10532, ptr %13, align 4, !tbaa !9
  br label %10533

10533:                                            ; preds = %10969, %10515
  %10534 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10534, ptr %42, align 4, !tbaa !9
  %10535 = load ptr, ptr %6, align 8, !tbaa !5
  %10536 = getelementptr inbounds %struct.w2c_hermes, ptr %10535, i32 0, i32 6
  %10537 = load i32, ptr %42, align 4, !tbaa !9
  %10538 = zext i32 %10537 to i64
  %10539 = add i64 %10538, 8
  %10540 = call i32 @i32_load(ptr noundef %10536, i64 noundef %10539)
  store i32 %10540, ptr %42, align 4, !tbaa !9
  %10541 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10541, ptr %34, align 4, !tbaa !9
  %10542 = load i32, ptr %42, align 4, !tbaa !9
  %10543 = icmp ne i32 %10542, 0
  %10544 = xor i1 %10543, true
  %10545 = zext i1 %10544 to i32
  store i32 %10545, ptr %42, align 4, !tbaa !9
  %10546 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10546, ptr %43, align 4, !tbaa !9
  %10547 = load ptr, ptr %6, align 8, !tbaa !5
  %10548 = getelementptr inbounds %struct.w2c_hermes, ptr %10547, i32 0, i32 6
  %10549 = load i32, ptr %43, align 4, !tbaa !9
  %10550 = zext i32 %10549 to i64
  %10551 = call i64 @i64_load(ptr noundef %10548, i64 noundef %10550)
  store i64 %10551, ptr %49, align 8, !tbaa !11
  %10552 = load i64, ptr %49, align 8, !tbaa !11
  store i64 %10552, ptr %39, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %10553 = load i64, ptr %49, align 8, !tbaa !11
  %10554 = load i64, ptr %50, align 8, !tbaa !11
  %10555 = icmp ult i64 %10553, %10554
  %10556 = zext i1 %10555 to i32
  store i32 %10556, ptr %43, align 4, !tbaa !9
  %10557 = load i32, ptr %43, align 4, !tbaa !9
  %10558 = load i32, ptr %42, align 4, !tbaa !9
  %10559 = and i32 %10558, %10557
  store i32 %10559, ptr %42, align 4, !tbaa !9
  %10560 = load i32, ptr %42, align 4, !tbaa !9
  %10561 = icmp ne i32 %10560, 0
  %10562 = xor i1 %10561, true
  %10563 = zext i1 %10562 to i32
  store i32 %10563, ptr %42, align 4, !tbaa !9
  %10564 = load i32, ptr %42, align 4, !tbaa !9
  %10565 = icmp ne i32 %10564, 0
  br i1 %10565, label %10566, label %10956

10566:                                            ; preds = %10533
  %10567 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %10567, ptr %42, align 4, !tbaa !9
  %10568 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %10568, ptr %43, align 4, !tbaa !9
  %10569 = load i32, ptr %43, align 4, !tbaa !9
  %10570 = load i32, ptr %42, align 4, !tbaa !9
  %10571 = and i32 %10570, %10569
  store i32 %10571, ptr %42, align 4, !tbaa !9
  %10572 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10572, ptr %26, align 4, !tbaa !9
  %10573 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10573, ptr %48, align 8, !tbaa !11
  store i64 32, ptr %49, align 8, !tbaa !11
  %10574 = load i64, ptr %49, align 8, !tbaa !11
  %10575 = and i64 %10574, 63
  %10576 = load i64, ptr %48, align 8, !tbaa !11
  %10577 = lshr i64 %10576, %10575
  store i64 %10577, ptr %48, align 8, !tbaa !11
  %10578 = load i64, ptr %48, align 8, !tbaa !11
  %10579 = trunc i64 %10578 to i32
  store i32 %10579, ptr %42, align 4, !tbaa !9
  %10580 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10580, ptr %31, align 4, !tbaa !9
  %10581 = load i32, ptr %42, align 4, !tbaa !9
  %10582 = icmp ne i32 %10581, 0
  br i1 %10582, label %10583, label %10726

10583:                                            ; preds = %10566
  store i32 1, ptr %42, align 4, !tbaa !9
  %10584 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10584, ptr %25, align 4, !tbaa !9
  %10585 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10585, ptr %48, align 8, !tbaa !11
  %10586 = load i64, ptr %48, align 8, !tbaa !11
  %10587 = trunc i64 %10586 to i32
  store i32 %10587, ptr %42, align 4, !tbaa !9
  %10588 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10588, ptr %23, align 4, !tbaa !9
  %10589 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %10589, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %10590 = load i32, ptr %44, align 4, !tbaa !9
  %10591 = and i32 %10590, 31
  %10592 = load i32, ptr %43, align 4, !tbaa !9
  %10593 = shl i32 %10592, %10591
  store i32 %10593, ptr %43, align 4, !tbaa !9
  %10594 = load i32, ptr %43, align 4, !tbaa !9
  %10595 = load i32, ptr %42, align 4, !tbaa !9
  %10596 = add i32 %10595, %10594
  store i32 %10596, ptr %42, align 4, !tbaa !9
  %10597 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10597, ptr %22, align 4, !tbaa !9
  br label %10598

10598:                                            ; preds = %10710, %10583
  %10599 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10599, ptr %42, align 4, !tbaa !9
  %10600 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %10600, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %10601 = load i32, ptr %44, align 4, !tbaa !9
  %10602 = load i32, ptr %43, align 4, !tbaa !9
  %10603 = mul i32 %10602, %10601
  store i32 %10603, ptr %43, align 4, !tbaa !9
  %10604 = load i32, ptr %43, align 4, !tbaa !9
  %10605 = load i32, ptr %42, align 4, !tbaa !9
  %10606 = add i32 %10605, %10604
  store i32 %10606, ptr %42, align 4, !tbaa !9
  %10607 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10607, ptr %14, align 4, !tbaa !9
  %10608 = load ptr, ptr %6, align 8, !tbaa !5
  %10609 = getelementptr inbounds %struct.w2c_hermes, ptr %10608, i32 0, i32 6
  %10610 = load i32, ptr %42, align 4, !tbaa !9
  %10611 = zext i32 %10610 to i64
  %10612 = call i64 @i64_load(ptr noundef %10609, i64 noundef %10611)
  store i64 %10612, ptr %48, align 8, !tbaa !11
  %10613 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %10613, ptr %39, align 8, !tbaa !11
  %10614 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10614, ptr %42, align 4, !tbaa !9
  %10615 = load ptr, ptr %6, align 8, !tbaa !5
  %10616 = getelementptr inbounds %struct.w2c_hermes, ptr %10615, i32 0, i32 6
  %10617 = load i32, ptr %42, align 4, !tbaa !9
  %10618 = zext i32 %10617 to i64
  %10619 = add i64 %10618, 8
  %10620 = call i32 @i32_load(ptr noundef %10616, i64 noundef %10619)
  store i32 %10620, ptr %42, align 4, !tbaa !9
  %10621 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10621, ptr %21, align 4, !tbaa !9
  %10622 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %10622, ptr %43, align 4, !tbaa !9
  %10623 = load i32, ptr %42, align 4, !tbaa !9
  %10624 = load i32, ptr %43, align 4, !tbaa !9
  %10625 = icmp ne i32 %10623, %10624
  %10626 = zext i1 %10625 to i32
  store i32 %10626, ptr %42, align 4, !tbaa !9
  %10627 = load i32, ptr %42, align 4, !tbaa !9
  %10628 = icmp ne i32 %10627, 0
  br i1 %10628, label %10629, label %10630

10629:                                            ; preds = %10598
  br label %10693

10630:                                            ; preds = %10598
  %10631 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %10631, ptr %42, align 4, !tbaa !9
  %10632 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10632, ptr %49, align 8, !tbaa !11
  store i64 32, ptr %50, align 8, !tbaa !11
  %10633 = load i64, ptr %50, align 8, !tbaa !11
  %10634 = and i64 %10633, 63
  %10635 = load i64, ptr %49, align 8, !tbaa !11
  %10636 = lshr i64 %10635, %10634
  store i64 %10636, ptr %49, align 8, !tbaa !11
  %10637 = load i64, ptr %49, align 8, !tbaa !11
  %10638 = trunc i64 %10637 to i32
  store i32 %10638, ptr %43, align 4, !tbaa !9
  %10639 = load i32, ptr %42, align 4, !tbaa !9
  %10640 = load i32, ptr %43, align 4, !tbaa !9
  %10641 = icmp ne i32 %10639, %10640
  %10642 = zext i1 %10641 to i32
  store i32 %10642, ptr %42, align 4, !tbaa !9
  %10643 = load i32, ptr %42, align 4, !tbaa !9
  %10644 = icmp ne i32 %10643, 0
  br i1 %10644, label %10645, label %10646

10645:                                            ; preds = %10630
  br label %10693

10646:                                            ; preds = %10630
  %10647 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10647, ptr %48, align 8, !tbaa !11
  %10648 = load i64, ptr %48, align 8, !tbaa !11
  %10649 = trunc i64 %10648 to i32
  store i32 %10649, ptr %42, align 4, !tbaa !9
  %10650 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10650, ptr %10, align 4, !tbaa !9
  %10651 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %10651, ptr %42, align 4, !tbaa !9
  %10652 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10652, ptr %11, align 4, !tbaa !9
  br label %10653

10653:                                            ; preds = %10691, %10646
  %10654 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10654, ptr %42, align 4, !tbaa !9
  %10655 = load ptr, ptr %6, align 8, !tbaa !5
  %10656 = getelementptr inbounds %struct.w2c_hermes, ptr %10655, i32 0, i32 6
  %10657 = load i32, ptr %42, align 4, !tbaa !9
  %10658 = zext i32 %10657 to i64
  %10659 = call i32 @i32_load16_u(ptr noundef %10656, i64 noundef %10658)
  store i32 %10659, ptr %42, align 4, !tbaa !9
  %10660 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10660, ptr %43, align 4, !tbaa !9
  %10661 = load ptr, ptr %6, align 8, !tbaa !5
  %10662 = getelementptr inbounds %struct.w2c_hermes, ptr %10661, i32 0, i32 6
  %10663 = load i32, ptr %43, align 4, !tbaa !9
  %10664 = zext i32 %10663 to i64
  %10665 = call i32 @i32_load16_u(ptr noundef %10662, i64 noundef %10664)
  store i32 %10665, ptr %43, align 4, !tbaa !9
  %10666 = load i32, ptr %42, align 4, !tbaa !9
  %10667 = load i32, ptr %43, align 4, !tbaa !9
  %10668 = icmp ne i32 %10666, %10667
  %10669 = zext i1 %10668 to i32
  store i32 %10669, ptr %42, align 4, !tbaa !9
  %10670 = load i32, ptr %42, align 4, !tbaa !9
  %10671 = icmp ne i32 %10670, 0
  br i1 %10671, label %10672, label %10673

10672:                                            ; preds = %10653
  br label %10693

10673:                                            ; preds = %10653
  %10674 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10674, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %10675 = load i32, ptr %43, align 4, !tbaa !9
  %10676 = load i32, ptr %42, align 4, !tbaa !9
  %10677 = add i32 %10676, %10675
  store i32 %10677, ptr %42, align 4, !tbaa !9
  %10678 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10678, ptr %10, align 4, !tbaa !9
  %10679 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10679, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %10680 = load i32, ptr %43, align 4, !tbaa !9
  %10681 = load i32, ptr %42, align 4, !tbaa !9
  %10682 = add i32 %10681, %10680
  store i32 %10682, ptr %42, align 4, !tbaa !9
  %10683 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10683, ptr %11, align 4, !tbaa !9
  %10684 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %10684, ptr %43, align 4, !tbaa !9
  %10685 = load i32, ptr %42, align 4, !tbaa !9
  %10686 = load i32, ptr %43, align 4, !tbaa !9
  %10687 = icmp ne i32 %10685, %10686
  %10688 = zext i1 %10687 to i32
  store i32 %10688, ptr %42, align 4, !tbaa !9
  %10689 = load i32, ptr %42, align 4, !tbaa !9
  %10690 = icmp ne i32 %10689, 0
  br i1 %10690, label %10691, label %10692

10691:                                            ; preds = %10673
  br label %10653

10692:                                            ; preds = %10673
  br label %10854

10693:                                            ; preds = %10672, %10645, %10629
  %10694 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %10694, ptr %42, align 4, !tbaa !9
  %10695 = load i32, ptr %42, align 4, !tbaa !9
  %10696 = icmp ne i32 %10695, 0
  %10697 = xor i1 %10696, true
  %10698 = zext i1 %10697 to i32
  store i32 %10698, ptr %42, align 4, !tbaa !9
  %10699 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10699, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %10700 = load i64, ptr %49, align 8, !tbaa !11
  %10701 = load i64, ptr %50, align 8, !tbaa !11
  %10702 = icmp ult i64 %10700, %10701
  %10703 = zext i1 %10702 to i32
  store i32 %10703, ptr %43, align 4, !tbaa !9
  %10704 = load i32, ptr %43, align 4, !tbaa !9
  %10705 = load i32, ptr %42, align 4, !tbaa !9
  %10706 = and i32 %10705, %10704
  store i32 %10706, ptr %42, align 4, !tbaa !9
  %10707 = load i32, ptr %42, align 4, !tbaa !9
  %10708 = icmp ne i32 %10707, 0
  br i1 %10708, label %10709, label %10710

10709:                                            ; preds = %10693
  br label %10854

10710:                                            ; preds = %10693
  %10711 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10711, ptr %42, align 4, !tbaa !9
  %10712 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %10712, ptr %43, align 4, !tbaa !9
  %10713 = load i32, ptr %43, align 4, !tbaa !9
  %10714 = load i32, ptr %42, align 4, !tbaa !9
  %10715 = add i32 %10714, %10713
  store i32 %10715, ptr %42, align 4, !tbaa !9
  %10716 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %10716, ptr %43, align 4, !tbaa !9
  %10717 = load i32, ptr %43, align 4, !tbaa !9
  %10718 = load i32, ptr %42, align 4, !tbaa !9
  %10719 = and i32 %10718, %10717
  store i32 %10719, ptr %42, align 4, !tbaa !9
  %10720 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10720, ptr %26, align 4, !tbaa !9
  %10721 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10721, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %10722 = load i32, ptr %43, align 4, !tbaa !9
  %10723 = load i32, ptr %42, align 4, !tbaa !9
  %10724 = add i32 %10723, %10722
  store i32 %10724, ptr %42, align 4, !tbaa !9
  %10725 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10725, ptr %25, align 4, !tbaa !9
  br label %10598

10726:                                            ; preds = %10566
  %10727 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10727, ptr %42, align 4, !tbaa !9
  %10728 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %10728, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %10729 = load i32, ptr %44, align 4, !tbaa !9
  %10730 = load i32, ptr %43, align 4, !tbaa !9
  %10731 = mul i32 %10730, %10729
  store i32 %10731, ptr %43, align 4, !tbaa !9
  %10732 = load i32, ptr %43, align 4, !tbaa !9
  %10733 = load i32, ptr %42, align 4, !tbaa !9
  %10734 = add i32 %10733, %10732
  store i32 %10734, ptr %42, align 4, !tbaa !9
  %10735 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10735, ptr %14, align 4, !tbaa !9
  %10736 = load ptr, ptr %6, align 8, !tbaa !5
  %10737 = getelementptr inbounds %struct.w2c_hermes, ptr %10736, i32 0, i32 6
  %10738 = load i32, ptr %42, align 4, !tbaa !9
  %10739 = zext i32 %10738 to i64
  %10740 = call i64 @i64_load(ptr noundef %10737, i64 noundef %10739)
  store i64 %10740, ptr %48, align 8, !tbaa !11
  %10741 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %10741, ptr %39, align 8, !tbaa !11
  %10742 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %10742, ptr %42, align 4, !tbaa !9
  %10743 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10743, ptr %43, align 4, !tbaa !9
  %10744 = load ptr, ptr %6, align 8, !tbaa !5
  %10745 = getelementptr inbounds %struct.w2c_hermes, ptr %10744, i32 0, i32 6
  %10746 = load i32, ptr %43, align 4, !tbaa !9
  %10747 = zext i32 %10746 to i64
  %10748 = add i64 %10747, 8
  %10749 = call i32 @i32_load(ptr noundef %10745, i64 noundef %10748)
  store i32 %10749, ptr %43, align 4, !tbaa !9
  %10750 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %10750, ptr %10, align 4, !tbaa !9
  %10751 = load i32, ptr %42, align 4, !tbaa !9
  %10752 = load i32, ptr %43, align 4, !tbaa !9
  %10753 = icmp eq i32 %10751, %10752
  %10754 = zext i1 %10753 to i32
  store i32 %10754, ptr %42, align 4, !tbaa !9
  %10755 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10755, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %10756 = load i64, ptr %49, align 8, !tbaa !11
  %10757 = load i64, ptr %50, align 8, !tbaa !11
  %10758 = icmp ult i64 %10756, %10757
  %10759 = zext i1 %10758 to i32
  store i32 %10759, ptr %43, align 4, !tbaa !9
  %10760 = load i32, ptr %43, align 4, !tbaa !9
  %10761 = load i32, ptr %42, align 4, !tbaa !9
  %10762 = and i32 %10761, %10760
  store i32 %10762, ptr %42, align 4, !tbaa !9
  %10763 = load i32, ptr %42, align 4, !tbaa !9
  %10764 = icmp ne i32 %10763, 0
  br i1 %10764, label %10765, label %10766

10765:                                            ; preds = %10726
  br label %10854

10766:                                            ; preds = %10726
  store i32 1, ptr %42, align 4, !tbaa !9
  %10767 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10767, ptr %11, align 4, !tbaa !9
  %10768 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10768, ptr %42, align 4, !tbaa !9
  %10769 = load i32, ptr %42, align 4, !tbaa !9
  %10770 = icmp ne i32 %10769, 0
  %10771 = xor i1 %10770, true
  %10772 = zext i1 %10771 to i32
  store i32 %10772, ptr %42, align 4, !tbaa !9
  %10773 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10773, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %10774 = load i64, ptr %49, align 8, !tbaa !11
  %10775 = load i64, ptr %50, align 8, !tbaa !11
  %10776 = icmp ult i64 %10774, %10775
  %10777 = zext i1 %10776 to i32
  store i32 %10777, ptr %43, align 4, !tbaa !9
  %10778 = load i32, ptr %43, align 4, !tbaa !9
  %10779 = load i32, ptr %42, align 4, !tbaa !9
  %10780 = and i32 %10779, %10778
  store i32 %10780, ptr %42, align 4, !tbaa !9
  %10781 = load i32, ptr %42, align 4, !tbaa !9
  %10782 = icmp ne i32 %10781, 0
  br i1 %10782, label %10783, label %10784

10783:                                            ; preds = %10766
  br label %10854

10784:                                            ; preds = %10766
  br label %10785

10785:                                            ; preds = %10852, %10843, %10784
  %10786 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10786, ptr %42, align 4, !tbaa !9
  %10787 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10787, ptr %43, align 4, !tbaa !9
  %10788 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %10788, ptr %44, align 4, !tbaa !9
  %10789 = load i32, ptr %44, align 4, !tbaa !9
  %10790 = load i32, ptr %43, align 4, !tbaa !9
  %10791 = add i32 %10790, %10789
  store i32 %10791, ptr %43, align 4, !tbaa !9
  %10792 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %10792, ptr %44, align 4, !tbaa !9
  %10793 = load i32, ptr %44, align 4, !tbaa !9
  %10794 = load i32, ptr %43, align 4, !tbaa !9
  %10795 = and i32 %10794, %10793
  store i32 %10795, ptr %43, align 4, !tbaa !9
  %10796 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %10796, ptr %26, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %10797 = load i32, ptr %44, align 4, !tbaa !9
  %10798 = load i32, ptr %43, align 4, !tbaa !9
  %10799 = mul i32 %10798, %10797
  store i32 %10799, ptr %43, align 4, !tbaa !9
  %10800 = load i32, ptr %43, align 4, !tbaa !9
  %10801 = load i32, ptr %42, align 4, !tbaa !9
  %10802 = add i32 %10801, %10800
  store i32 %10802, ptr %42, align 4, !tbaa !9
  %10803 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10803, ptr %14, align 4, !tbaa !9
  %10804 = load ptr, ptr %6, align 8, !tbaa !5
  %10805 = getelementptr inbounds %struct.w2c_hermes, ptr %10804, i32 0, i32 6
  %10806 = load i32, ptr %42, align 4, !tbaa !9
  %10807 = zext i32 %10806 to i64
  %10808 = call i64 @i64_load(ptr noundef %10805, i64 noundef %10807)
  store i64 %10808, ptr %48, align 8, !tbaa !11
  %10809 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %10809, ptr %39, align 8, !tbaa !11
  %10810 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %10810, ptr %42, align 4, !tbaa !9
  %10811 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10811, ptr %43, align 4, !tbaa !9
  %10812 = load ptr, ptr %6, align 8, !tbaa !5
  %10813 = getelementptr inbounds %struct.w2c_hermes, ptr %10812, i32 0, i32 6
  %10814 = load i32, ptr %43, align 4, !tbaa !9
  %10815 = zext i32 %10814 to i64
  %10816 = add i64 %10815, 8
  %10817 = call i32 @i32_load(ptr noundef %10813, i64 noundef %10816)
  store i32 %10817, ptr %43, align 4, !tbaa !9
  %10818 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %10818, ptr %10, align 4, !tbaa !9
  %10819 = load i32, ptr %42, align 4, !tbaa !9
  %10820 = load i32, ptr %43, align 4, !tbaa !9
  %10821 = icmp eq i32 %10819, %10820
  %10822 = zext i1 %10821 to i32
  store i32 %10822, ptr %42, align 4, !tbaa !9
  %10823 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10823, ptr %49, align 8, !tbaa !11
  store i64 4294967296, ptr %50, align 8, !tbaa !11
  %10824 = load i64, ptr %49, align 8, !tbaa !11
  %10825 = load i64, ptr %50, align 8, !tbaa !11
  %10826 = icmp ult i64 %10824, %10825
  %10827 = zext i1 %10826 to i32
  store i32 %10827, ptr %43, align 4, !tbaa !9
  %10828 = load i32, ptr %43, align 4, !tbaa !9
  %10829 = load i32, ptr %42, align 4, !tbaa !9
  %10830 = and i32 %10829, %10828
  store i32 %10830, ptr %42, align 4, !tbaa !9
  %10831 = load i32, ptr %42, align 4, !tbaa !9
  %10832 = icmp ne i32 %10831, 0
  br i1 %10832, label %10833, label %10834

10833:                                            ; preds = %10785
  br label %10854

10834:                                            ; preds = %10785
  %10835 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10835, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %10836 = load i32, ptr %43, align 4, !tbaa !9
  %10837 = load i32, ptr %42, align 4, !tbaa !9
  %10838 = add i32 %10837, %10836
  store i32 %10838, ptr %42, align 4, !tbaa !9
  %10839 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10839, ptr %11, align 4, !tbaa !9
  %10840 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10840, ptr %42, align 4, !tbaa !9
  %10841 = load i32, ptr %42, align 4, !tbaa !9
  %10842 = icmp ne i32 %10841, 0
  br i1 %10842, label %10843, label %10844

10843:                                            ; preds = %10834
  br label %10785

10844:                                            ; preds = %10834
  %10845 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10845, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %10846 = load i64, ptr %48, align 8, !tbaa !11
  %10847 = load i64, ptr %49, align 8, !tbaa !11
  %10848 = icmp uge i64 %10846, %10847
  %10849 = zext i1 %10848 to i32
  store i32 %10849, ptr %42, align 4, !tbaa !9
  %10850 = load i32, ptr %42, align 4, !tbaa !9
  %10851 = icmp ne i32 %10850, 0
  br i1 %10851, label %10852, label %10853

10852:                                            ; preds = %10844
  br label %10785

10853:                                            ; preds = %10844
  br label %10854

10854:                                            ; preds = %10853, %10833, %10783, %10765, %10709, %10692
  %10855 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10855, ptr %42, align 4, !tbaa !9
  %10856 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10856, ptr %43, align 4, !tbaa !9
  %10857 = load ptr, ptr %6, align 8, !tbaa !5
  %10858 = getelementptr inbounds %struct.w2c_hermes, ptr %10857, i32 0, i32 6
  %10859 = load i32, ptr %43, align 4, !tbaa !9
  %10860 = zext i32 %10859 to i64
  %10861 = call i64 @i64_load(ptr noundef %10858, i64 noundef %10860)
  store i64 %10861, ptr %49, align 8, !tbaa !11
  %10862 = load ptr, ptr %6, align 8, !tbaa !5
  %10863 = getelementptr inbounds %struct.w2c_hermes, ptr %10862, i32 0, i32 6
  %10864 = load i32, ptr %42, align 4, !tbaa !9
  %10865 = zext i32 %10864 to i64
  %10866 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10863, i64 noundef %10865, i64 noundef %10866)
  %10867 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10867, ptr %42, align 4, !tbaa !9
  %10868 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10868, ptr %43, align 4, !tbaa !9
  %10869 = load ptr, ptr %6, align 8, !tbaa !5
  %10870 = getelementptr inbounds %struct.w2c_hermes, ptr %10869, i32 0, i32 6
  %10871 = load i32, ptr %43, align 4, !tbaa !9
  %10872 = zext i32 %10871 to i64
  %10873 = add i64 %10872, 8
  %10874 = call i32 @i32_load(ptr noundef %10870, i64 noundef %10873)
  store i32 %10874, ptr %43, align 4, !tbaa !9
  %10875 = load ptr, ptr %6, align 8, !tbaa !5
  %10876 = getelementptr inbounds %struct.w2c_hermes, ptr %10875, i32 0, i32 6
  %10877 = load i32, ptr %42, align 4, !tbaa !9
  %10878 = zext i32 %10877 to i64
  %10879 = add i64 %10878, 8
  %10880 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10876, i64 noundef %10879, i32 noundef %10880)
  %10881 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10881, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10882 = load ptr, ptr %6, align 8, !tbaa !5
  %10883 = getelementptr inbounds %struct.w2c_hermes, ptr %10882, i32 0, i32 6
  %10884 = load i32, ptr %42, align 4, !tbaa !9
  %10885 = zext i32 %10884 to i64
  %10886 = add i64 %10885, 20
  %10887 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10883, i64 noundef %10886, i32 noundef %10887)
  %10888 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10888, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %10889 = load ptr, ptr %6, align 8, !tbaa !5
  %10890 = getelementptr inbounds %struct.w2c_hermes, ptr %10889, i32 0, i32 6
  %10891 = load i32, ptr %42, align 4, !tbaa !9
  %10892 = zext i32 %10891 to i64
  %10893 = add i64 %10892, 12
  %10894 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10890, i64 noundef %10893, i64 noundef %10894)
  %10895 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10895, ptr %42, align 4, !tbaa !9
  %10896 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10896, ptr %43, align 4, !tbaa !9
  %10897 = load ptr, ptr %6, align 8, !tbaa !5
  %10898 = getelementptr inbounds %struct.w2c_hermes, ptr %10897, i32 0, i32 6
  %10899 = load i32, ptr %43, align 4, !tbaa !9
  %10900 = zext i32 %10899 to i64
  %10901 = add i64 %10900, 12
  %10902 = call i32 @i32_load(ptr noundef %10898, i64 noundef %10901)
  store i32 %10902, ptr %43, align 4, !tbaa !9
  %10903 = load ptr, ptr %6, align 8, !tbaa !5
  %10904 = getelementptr inbounds %struct.w2c_hermes, ptr %10903, i32 0, i32 6
  %10905 = load i32, ptr %42, align 4, !tbaa !9
  %10906 = zext i32 %10905 to i64
  %10907 = add i64 %10906, 12
  %10908 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10904, i64 noundef %10907, i32 noundef %10908)
  %10909 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10909, ptr %42, align 4, !tbaa !9
  %10910 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10910, ptr %43, align 4, !tbaa !9
  %10911 = load ptr, ptr %6, align 8, !tbaa !5
  %10912 = getelementptr inbounds %struct.w2c_hermes, ptr %10911, i32 0, i32 6
  %10913 = load i32, ptr %43, align 4, !tbaa !9
  %10914 = zext i32 %10913 to i64
  %10915 = add i64 %10914, 16
  %10916 = call i32 @i32_load(ptr noundef %10912, i64 noundef %10915)
  store i32 %10916, ptr %43, align 4, !tbaa !9
  %10917 = load ptr, ptr %6, align 8, !tbaa !5
  %10918 = getelementptr inbounds %struct.w2c_hermes, ptr %10917, i32 0, i32 6
  %10919 = load i32, ptr %42, align 4, !tbaa !9
  %10920 = zext i32 %10919 to i64
  %10921 = add i64 %10920, 16
  %10922 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10918, i64 noundef %10921, i32 noundef %10922)
  %10923 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10923, ptr %42, align 4, !tbaa !9
  %10924 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10924, ptr %43, align 4, !tbaa !9
  %10925 = load ptr, ptr %6, align 8, !tbaa !5
  %10926 = getelementptr inbounds %struct.w2c_hermes, ptr %10925, i32 0, i32 6
  %10927 = load i32, ptr %43, align 4, !tbaa !9
  %10928 = zext i32 %10927 to i64
  %10929 = add i64 %10928, 20
  %10930 = call i32 @i32_load(ptr noundef %10926, i64 noundef %10929)
  store i32 %10930, ptr %43, align 4, !tbaa !9
  %10931 = load ptr, ptr %6, align 8, !tbaa !5
  %10932 = getelementptr inbounds %struct.w2c_hermes, ptr %10931, i32 0, i32 6
  %10933 = load i32, ptr %42, align 4, !tbaa !9
  %10934 = zext i32 %10933 to i64
  %10935 = add i64 %10934, 20
  %10936 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10932, i64 noundef %10935, i32 noundef %10936)
  %10937 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10937, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %10938 = load ptr, ptr %6, align 8, !tbaa !5
  %10939 = getelementptr inbounds %struct.w2c_hermes, ptr %10938, i32 0, i32 6
  %10940 = load i32, ptr %42, align 4, !tbaa !9
  %10941 = zext i32 %10940 to i64
  %10942 = add i64 %10941, 20
  %10943 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10939, i64 noundef %10942, i32 noundef %10943)
  %10944 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10944, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %10945 = load ptr, ptr %6, align 8, !tbaa !5
  %10946 = getelementptr inbounds %struct.w2c_hermes, ptr %10945, i32 0, i32 6
  %10947 = load i32, ptr %42, align 4, !tbaa !9
  %10948 = zext i32 %10947 to i64
  %10949 = add i64 %10948, 12
  %10950 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10946, i64 noundef %10949, i64 noundef %10950)
  %10951 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10951, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %10952 = load i32, ptr %43, align 4, !tbaa !9
  %10953 = load i32, ptr %42, align 4, !tbaa !9
  %10954 = add i32 %10953, %10952
  store i32 %10954, ptr %42, align 4, !tbaa !9
  %10955 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10955, ptr %15, align 4, !tbaa !9
  br label %10956

10956:                                            ; preds = %10854, %10533
  %10957 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10957, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %10958 = load i32, ptr %43, align 4, !tbaa !9
  %10959 = load i32, ptr %42, align 4, !tbaa !9
  %10960 = add i32 %10959, %10958
  store i32 %10960, ptr %42, align 4, !tbaa !9
  %10961 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10961, ptr %13, align 4, !tbaa !9
  %10962 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %10962, ptr %43, align 4, !tbaa !9
  %10963 = load i32, ptr %42, align 4, !tbaa !9
  %10964 = load i32, ptr %43, align 4, !tbaa !9
  %10965 = icmp ne i32 %10963, %10964
  %10966 = zext i1 %10965 to i32
  store i32 %10966, ptr %42, align 4, !tbaa !9
  %10967 = load i32, ptr %42, align 4, !tbaa !9
  %10968 = icmp ne i32 %10967, 0
  br i1 %10968, label %10969, label %10970

10969:                                            ; preds = %10956
  br label %10533

10970:                                            ; preds = %10956
  br label %10971

10971:                                            ; preds = %10970, %10308
  %10972 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %10972, ptr %42, align 4, !tbaa !9
  %10973 = load ptr, ptr %6, align 8, !tbaa !5
  %10974 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %10973, i32 noundef %10974)
  br label %10975

10975:                                            ; preds = %10971, %10514, %10387
  %10976 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10976, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %10977 = load i32, ptr %43, align 4, !tbaa !9
  %10978 = load i32, ptr %42, align 4, !tbaa !9
  %10979 = sub i32 %10978, %10977
  store i32 %10979, ptr %42, align 4, !tbaa !9
  %10980 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10980, ptr %21, align 4, !tbaa !9
  %10981 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %10981, ptr %43, align 4, !tbaa !9
  %10982 = load i32, ptr %43, align 4, !tbaa !9
  %10983 = load i32, ptr %42, align 4, !tbaa !9
  %10984 = and i32 %10983, %10982
  store i32 %10984, ptr %42, align 4, !tbaa !9
  %10985 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10985, ptr %14, align 4, !tbaa !9
  %10986 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %10986, ptr %42, align 4, !tbaa !9
  %10987 = load i32, ptr %42, align 4, !tbaa !9
  %10988 = icmp ne i32 %10987, 0
  br i1 %10988, label %10989, label %11132

10989:                                            ; preds = %10975
  store i32 1, ptr %42, align 4, !tbaa !9
  %10990 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %10990, ptr %22, align 4, !tbaa !9
  %10991 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10991, ptr %42, align 4, !tbaa !9
  %10992 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %10992, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %10993 = load i32, ptr %44, align 4, !tbaa !9
  %10994 = and i32 %10993, 31
  %10995 = load i32, ptr %43, align 4, !tbaa !9
  %10996 = shl i32 %10995, %10994
  store i32 %10996, ptr %43, align 4, !tbaa !9
  %10997 = load i32, ptr %43, align 4, !tbaa !9
  %10998 = load i32, ptr %42, align 4, !tbaa !9
  %10999 = add i32 %10998, %10997
  store i32 %10999, ptr %42, align 4, !tbaa !9
  %11000 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11000, ptr %24, align 4, !tbaa !9
  br label %11001

11001:                                            ; preds = %11116, %10989
  %11002 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11002, ptr %42, align 4, !tbaa !9
  %11003 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11003, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %11004 = load i32, ptr %44, align 4, !tbaa !9
  %11005 = load i32, ptr %43, align 4, !tbaa !9
  %11006 = mul i32 %11005, %11004
  store i32 %11006, ptr %43, align 4, !tbaa !9
  %11007 = load i32, ptr %43, align 4, !tbaa !9
  %11008 = load i32, ptr %42, align 4, !tbaa !9
  %11009 = add i32 %11008, %11007
  store i32 %11009, ptr %42, align 4, !tbaa !9
  %11010 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11010, ptr %13, align 4, !tbaa !9
  %11011 = load ptr, ptr %6, align 8, !tbaa !5
  %11012 = getelementptr inbounds %struct.w2c_hermes, ptr %11011, i32 0, i32 6
  %11013 = load i32, ptr %42, align 4, !tbaa !9
  %11014 = zext i32 %11013 to i64
  %11015 = call i64 @i64_load(ptr noundef %11012, i64 noundef %11014)
  store i64 %11015, ptr %48, align 8, !tbaa !11
  %11016 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %11016, ptr %39, align 8, !tbaa !11
  %11017 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11017, ptr %42, align 4, !tbaa !9
  %11018 = load ptr, ptr %6, align 8, !tbaa !5
  %11019 = getelementptr inbounds %struct.w2c_hermes, ptr %11018, i32 0, i32 6
  %11020 = load i32, ptr %42, align 4, !tbaa !9
  %11021 = zext i32 %11020 to i64
  %11022 = add i64 %11021, 8
  %11023 = call i32 @i32_load(ptr noundef %11019, i64 noundef %11022)
  store i32 %11023, ptr %42, align 4, !tbaa !9
  %11024 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11024, ptr %23, align 4, !tbaa !9
  %11025 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %11025, ptr %43, align 4, !tbaa !9
  %11026 = load i32, ptr %42, align 4, !tbaa !9
  %11027 = load i32, ptr %43, align 4, !tbaa !9
  %11028 = icmp ne i32 %11026, %11027
  %11029 = zext i1 %11028 to i32
  store i32 %11029, ptr %42, align 4, !tbaa !9
  %11030 = load i32, ptr %42, align 4, !tbaa !9
  %11031 = icmp ne i32 %11030, 0
  br i1 %11031, label %11032, label %11033

11032:                                            ; preds = %11001
  br label %11097

11033:                                            ; preds = %11001
  %11034 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %11034, ptr %42, align 4, !tbaa !9
  %11035 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11035, ptr %49, align 8, !tbaa !11
  store i64 32, ptr %50, align 8, !tbaa !11
  %11036 = load i64, ptr %50, align 8, !tbaa !11
  %11037 = and i64 %11036, 63
  %11038 = load i64, ptr %49, align 8, !tbaa !11
  %11039 = lshr i64 %11038, %11037
  store i64 %11039, ptr %49, align 8, !tbaa !11
  %11040 = load i64, ptr %49, align 8, !tbaa !11
  %11041 = trunc i64 %11040 to i32
  store i32 %11041, ptr %43, align 4, !tbaa !9
  %11042 = load i32, ptr %42, align 4, !tbaa !9
  %11043 = load i32, ptr %43, align 4, !tbaa !9
  %11044 = icmp ne i32 %11042, %11043
  %11045 = zext i1 %11044 to i32
  store i32 %11045, ptr %42, align 4, !tbaa !9
  %11046 = load i32, ptr %42, align 4, !tbaa !9
  %11047 = icmp ne i32 %11046, 0
  br i1 %11047, label %11048, label %11049

11048:                                            ; preds = %11033
  br label %11097

11049:                                            ; preds = %11033
  %11050 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11050, ptr %48, align 8, !tbaa !11
  %11051 = load i64, ptr %48, align 8, !tbaa !11
  %11052 = trunc i64 %11051 to i32
  store i32 %11052, ptr %42, align 4, !tbaa !9
  %11053 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11053, ptr %10, align 4, !tbaa !9
  %11054 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11054, ptr %42, align 4, !tbaa !9
  %11055 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11055, ptr %11, align 4, !tbaa !9
  br label %11056

11056:                                            ; preds = %11095, %11049
  %11057 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11057, ptr %42, align 4, !tbaa !9
  %11058 = load ptr, ptr %6, align 8, !tbaa !5
  %11059 = getelementptr inbounds %struct.w2c_hermes, ptr %11058, i32 0, i32 6
  %11060 = load i32, ptr %42, align 4, !tbaa !9
  %11061 = zext i32 %11060 to i64
  %11062 = call i32 @i32_load16_u(ptr noundef %11059, i64 noundef %11061)
  store i32 %11062, ptr %42, align 4, !tbaa !9
  %11063 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11063, ptr %43, align 4, !tbaa !9
  %11064 = load ptr, ptr %6, align 8, !tbaa !5
  %11065 = getelementptr inbounds %struct.w2c_hermes, ptr %11064, i32 0, i32 6
  %11066 = load i32, ptr %43, align 4, !tbaa !9
  %11067 = zext i32 %11066 to i64
  %11068 = call i32 @i32_load16_u(ptr noundef %11065, i64 noundef %11067)
  store i32 %11068, ptr %43, align 4, !tbaa !9
  %11069 = load i32, ptr %42, align 4, !tbaa !9
  %11070 = load i32, ptr %43, align 4, !tbaa !9
  %11071 = icmp ne i32 %11069, %11070
  %11072 = zext i1 %11071 to i32
  store i32 %11072, ptr %42, align 4, !tbaa !9
  %11073 = load i32, ptr %42, align 4, !tbaa !9
  %11074 = icmp ne i32 %11073, 0
  br i1 %11074, label %11075, label %11076

11075:                                            ; preds = %11056
  br label %11097

11076:                                            ; preds = %11056
  %11077 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11077, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %11078 = load i32, ptr %43, align 4, !tbaa !9
  %11079 = load i32, ptr %42, align 4, !tbaa !9
  %11080 = add i32 %11079, %11078
  store i32 %11080, ptr %42, align 4, !tbaa !9
  %11081 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11081, ptr %10, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %11082 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11082, ptr %29, align 4, !tbaa !9
  %11083 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11083, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %11084 = load i32, ptr %43, align 4, !tbaa !9
  %11085 = load i32, ptr %42, align 4, !tbaa !9
  %11086 = add i32 %11085, %11084
  store i32 %11086, ptr %42, align 4, !tbaa !9
  %11087 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11087, ptr %11, align 4, !tbaa !9
  %11088 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %11088, ptr %43, align 4, !tbaa !9
  %11089 = load i32, ptr %42, align 4, !tbaa !9
  %11090 = load i32, ptr %43, align 4, !tbaa !9
  %11091 = icmp ne i32 %11089, %11090
  %11092 = zext i1 %11091 to i32
  store i32 %11092, ptr %42, align 4, !tbaa !9
  %11093 = load i32, ptr %42, align 4, !tbaa !9
  %11094 = icmp ne i32 %11093, 0
  br i1 %11094, label %11095, label %11096

11095:                                            ; preds = %11076
  br label %11056

11096:                                            ; preds = %11076
  br label %11267

11097:                                            ; preds = %11075, %11048, %11032
  %11098 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %11098, ptr %42, align 4, !tbaa !9
  %11099 = load i32, ptr %42, align 4, !tbaa !9
  %11100 = icmp ne i32 %11099, 0
  %11101 = xor i1 %11100, true
  %11102 = zext i1 %11101 to i32
  store i32 %11102, ptr %42, align 4, !tbaa !9
  %11103 = load i32, ptr %42, align 4, !tbaa !9
  %11104 = icmp ne i32 %11103, 0
  br i1 %11104, label %11105, label %11116

11105:                                            ; preds = %11097
  store i32 0, ptr %42, align 4, !tbaa !9
  %11106 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11106, ptr %29, align 4, !tbaa !9
  %11107 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11107, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %11108 = load i64, ptr %48, align 8, !tbaa !11
  %11109 = load i64, ptr %49, align 8, !tbaa !11
  %11110 = icmp ult i64 %11108, %11109
  %11111 = zext i1 %11110 to i32
  store i32 %11111, ptr %42, align 4, !tbaa !9
  %11112 = load i32, ptr %42, align 4, !tbaa !9
  %11113 = icmp ne i32 %11112, 0
  br i1 %11113, label %11114, label %11115

11114:                                            ; preds = %11105
  br label %11274

11115:                                            ; preds = %11105
  br label %11116

11116:                                            ; preds = %11115, %11097
  %11117 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11117, ptr %42, align 4, !tbaa !9
  %11118 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %11118, ptr %43, align 4, !tbaa !9
  %11119 = load i32, ptr %43, align 4, !tbaa !9
  %11120 = load i32, ptr %42, align 4, !tbaa !9
  %11121 = add i32 %11120, %11119
  store i32 %11121, ptr %42, align 4, !tbaa !9
  %11122 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11122, ptr %43, align 4, !tbaa !9
  %11123 = load i32, ptr %43, align 4, !tbaa !9
  %11124 = load i32, ptr %42, align 4, !tbaa !9
  %11125 = and i32 %11124, %11123
  store i32 %11125, ptr %42, align 4, !tbaa !9
  %11126 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11126, ptr %14, align 4, !tbaa !9
  %11127 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %11127, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %11128 = load i32, ptr %43, align 4, !tbaa !9
  %11129 = load i32, ptr %42, align 4, !tbaa !9
  %11130 = add i32 %11129, %11128
  store i32 %11130, ptr %42, align 4, !tbaa !9
  %11131 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11131, ptr %22, align 4, !tbaa !9
  br label %11001

11132:                                            ; preds = %10975
  %11133 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11133, ptr %42, align 4, !tbaa !9
  %11134 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11134, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %11135 = load i32, ptr %44, align 4, !tbaa !9
  %11136 = load i32, ptr %43, align 4, !tbaa !9
  %11137 = mul i32 %11136, %11135
  store i32 %11137, ptr %43, align 4, !tbaa !9
  %11138 = load i32, ptr %43, align 4, !tbaa !9
  %11139 = load i32, ptr %42, align 4, !tbaa !9
  %11140 = add i32 %11139, %11138
  store i32 %11140, ptr %42, align 4, !tbaa !9
  %11141 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11141, ptr %13, align 4, !tbaa !9
  %11142 = load ptr, ptr %6, align 8, !tbaa !5
  %11143 = getelementptr inbounds %struct.w2c_hermes, ptr %11142, i32 0, i32 6
  %11144 = load i32, ptr %42, align 4, !tbaa !9
  %11145 = zext i32 %11144 to i64
  %11146 = call i64 @i64_load(ptr noundef %11143, i64 noundef %11145)
  store i64 %11146, ptr %48, align 8, !tbaa !11
  %11147 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %11147, ptr %39, align 8, !tbaa !11
  %11148 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %11148, ptr %42, align 4, !tbaa !9
  %11149 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11149, ptr %43, align 4, !tbaa !9
  %11150 = load ptr, ptr %6, align 8, !tbaa !5
  %11151 = getelementptr inbounds %struct.w2c_hermes, ptr %11150, i32 0, i32 6
  %11152 = load i32, ptr %43, align 4, !tbaa !9
  %11153 = zext i32 %11152 to i64
  %11154 = add i64 %11153, 8
  %11155 = call i32 @i32_load(ptr noundef %11151, i64 noundef %11154)
  store i32 %11155, ptr %43, align 4, !tbaa !9
  %11156 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11156, ptr %10, align 4, !tbaa !9
  %11157 = load i32, ptr %42, align 4, !tbaa !9
  %11158 = load i32, ptr %43, align 4, !tbaa !9
  %11159 = icmp eq i32 %11157, %11158
  %11160 = zext i1 %11159 to i32
  store i32 %11160, ptr %42, align 4, !tbaa !9
  %11161 = load i32, ptr %42, align 4, !tbaa !9
  %11162 = icmp ne i32 %11161, 0
  br i1 %11162, label %11163, label %11174

11163:                                            ; preds = %11132
  store i32 0, ptr %42, align 4, !tbaa !9
  %11164 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11164, ptr %29, align 4, !tbaa !9
  %11165 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11165, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %11166 = load i64, ptr %48, align 8, !tbaa !11
  %11167 = load i64, ptr %49, align 8, !tbaa !11
  %11168 = icmp ult i64 %11166, %11167
  %11169 = zext i1 %11168 to i32
  store i32 %11169, ptr %42, align 4, !tbaa !9
  %11170 = load i32, ptr %42, align 4, !tbaa !9
  %11171 = icmp ne i32 %11170, 0
  br i1 %11171, label %11172, label %11173

11172:                                            ; preds = %11163
  br label %11267

11173:                                            ; preds = %11163
  br label %11174

11174:                                            ; preds = %11173, %11132
  store i32 1, ptr %42, align 4, !tbaa !9
  %11175 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11175, ptr %11, align 4, !tbaa !9
  %11176 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11176, ptr %42, align 4, !tbaa !9
  %11177 = load i32, ptr %42, align 4, !tbaa !9
  %11178 = icmp ne i32 %11177, 0
  %11179 = xor i1 %11178, true
  %11180 = zext i1 %11179 to i32
  store i32 %11180, ptr %42, align 4, !tbaa !9
  %11181 = load i32, ptr %42, align 4, !tbaa !9
  %11182 = icmp ne i32 %11181, 0
  br i1 %11182, label %11183, label %11194

11183:                                            ; preds = %11174
  store i32 0, ptr %42, align 4, !tbaa !9
  %11184 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11184, ptr %29, align 4, !tbaa !9
  %11185 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11185, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %11186 = load i64, ptr %48, align 8, !tbaa !11
  %11187 = load i64, ptr %49, align 8, !tbaa !11
  %11188 = icmp ult i64 %11186, %11187
  %11189 = zext i1 %11188 to i32
  store i32 %11189, ptr %42, align 4, !tbaa !9
  %11190 = load i32, ptr %42, align 4, !tbaa !9
  %11191 = icmp ne i32 %11190, 0
  br i1 %11191, label %11192, label %11193

11192:                                            ; preds = %11183
  br label %11274

11193:                                            ; preds = %11183
  br label %11194

11194:                                            ; preds = %11193, %11174
  br label %11195

11195:                                            ; preds = %11265, %11255, %11194
  %11196 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11196, ptr %42, align 4, !tbaa !9
  %11197 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11197, ptr %43, align 4, !tbaa !9
  %11198 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11198, ptr %44, align 4, !tbaa !9
  %11199 = load i32, ptr %44, align 4, !tbaa !9
  %11200 = load i32, ptr %43, align 4, !tbaa !9
  %11201 = add i32 %11200, %11199
  store i32 %11201, ptr %43, align 4, !tbaa !9
  %11202 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11202, ptr %44, align 4, !tbaa !9
  %11203 = load i32, ptr %44, align 4, !tbaa !9
  %11204 = load i32, ptr %43, align 4, !tbaa !9
  %11205 = and i32 %11204, %11203
  store i32 %11205, ptr %43, align 4, !tbaa !9
  %11206 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11206, ptr %14, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %11207 = load i32, ptr %44, align 4, !tbaa !9
  %11208 = load i32, ptr %43, align 4, !tbaa !9
  %11209 = mul i32 %11208, %11207
  store i32 %11209, ptr %43, align 4, !tbaa !9
  %11210 = load i32, ptr %43, align 4, !tbaa !9
  %11211 = load i32, ptr %42, align 4, !tbaa !9
  %11212 = add i32 %11211, %11210
  store i32 %11212, ptr %42, align 4, !tbaa !9
  %11213 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11213, ptr %13, align 4, !tbaa !9
  %11214 = load ptr, ptr %6, align 8, !tbaa !5
  %11215 = getelementptr inbounds %struct.w2c_hermes, ptr %11214, i32 0, i32 6
  %11216 = load i32, ptr %42, align 4, !tbaa !9
  %11217 = zext i32 %11216 to i64
  %11218 = call i64 @i64_load(ptr noundef %11215, i64 noundef %11217)
  store i64 %11218, ptr %48, align 8, !tbaa !11
  %11219 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %11219, ptr %39, align 8, !tbaa !11
  %11220 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %11220, ptr %42, align 4, !tbaa !9
  %11221 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11221, ptr %43, align 4, !tbaa !9
  %11222 = load ptr, ptr %6, align 8, !tbaa !5
  %11223 = getelementptr inbounds %struct.w2c_hermes, ptr %11222, i32 0, i32 6
  %11224 = load i32, ptr %43, align 4, !tbaa !9
  %11225 = zext i32 %11224 to i64
  %11226 = add i64 %11225, 8
  %11227 = call i32 @i32_load(ptr noundef %11223, i64 noundef %11226)
  store i32 %11227, ptr %43, align 4, !tbaa !9
  %11228 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11228, ptr %10, align 4, !tbaa !9
  %11229 = load i32, ptr %42, align 4, !tbaa !9
  %11230 = load i32, ptr %43, align 4, !tbaa !9
  %11231 = icmp eq i32 %11229, %11230
  %11232 = zext i1 %11231 to i32
  store i32 %11232, ptr %42, align 4, !tbaa !9
  %11233 = load i32, ptr %42, align 4, !tbaa !9
  %11234 = icmp ne i32 %11233, 0
  br i1 %11234, label %11235, label %11246

11235:                                            ; preds = %11195
  store i32 0, ptr %42, align 4, !tbaa !9
  %11236 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11236, ptr %29, align 4, !tbaa !9
  %11237 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11237, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %11238 = load i64, ptr %48, align 8, !tbaa !11
  %11239 = load i64, ptr %49, align 8, !tbaa !11
  %11240 = icmp ult i64 %11238, %11239
  %11241 = zext i1 %11240 to i32
  store i32 %11241, ptr %42, align 4, !tbaa !9
  %11242 = load i32, ptr %42, align 4, !tbaa !9
  %11243 = icmp ne i32 %11242, 0
  br i1 %11243, label %11244, label %11245

11244:                                            ; preds = %11235
  br label %11267

11245:                                            ; preds = %11235
  br label %11246

11246:                                            ; preds = %11245, %11195
  %11247 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11247, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %11248 = load i32, ptr %43, align 4, !tbaa !9
  %11249 = load i32, ptr %42, align 4, !tbaa !9
  %11250 = add i32 %11249, %11248
  store i32 %11250, ptr %42, align 4, !tbaa !9
  %11251 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11251, ptr %11, align 4, !tbaa !9
  %11252 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11252, ptr %42, align 4, !tbaa !9
  %11253 = load i32, ptr %42, align 4, !tbaa !9
  %11254 = icmp ne i32 %11253, 0
  br i1 %11254, label %11255, label %11256

11255:                                            ; preds = %11246
  br label %11195

11256:                                            ; preds = %11246
  store i32 0, ptr %42, align 4, !tbaa !9
  %11257 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11257, ptr %29, align 4, !tbaa !9
  %11258 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11258, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %11259 = load i64, ptr %48, align 8, !tbaa !11
  %11260 = load i64, ptr %49, align 8, !tbaa !11
  %11261 = icmp uge i64 %11259, %11260
  %11262 = zext i1 %11261 to i32
  store i32 %11262, ptr %42, align 4, !tbaa !9
  %11263 = load i32, ptr %42, align 4, !tbaa !9
  %11264 = icmp ne i32 %11263, 0
  br i1 %11264, label %11265, label %11266

11265:                                            ; preds = %11256
  br label %11195

11266:                                            ; preds = %11256
  br label %11274

11267:                                            ; preds = %11244, %11172, %11096
  %11268 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %11268, ptr %42, align 4, !tbaa !9
  %11269 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11269, ptr %10, align 4, !tbaa !9
  %11270 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11270, ptr %42, align 4, !tbaa !9
  %11271 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11271, ptr %14, align 4, !tbaa !9
  %11272 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11272, ptr %42, align 4, !tbaa !9
  %11273 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11273, ptr %24, align 4, !tbaa !9
  br label %11279

11274:                                            ; preds = %11266, %11192, %11114
  %11275 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11275, ptr %42, align 4, !tbaa !9
  %11276 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11276, ptr %24, align 4, !tbaa !9
  %11277 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11277, ptr %42, align 4, !tbaa !9
  %11278 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11278, ptr %14, align 4, !tbaa !9
  br label %11308

11279:                                            ; preds = %11267, %10003
  %11280 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11280, ptr %42, align 4, !tbaa !9
  %11281 = load i32, ptr %42, align 4, !tbaa !9
  %11282 = icmp ne i32 %11281, 0
  %11283 = xor i1 %11282, true
  %11284 = zext i1 %11283 to i32
  store i32 %11284, ptr %42, align 4, !tbaa !9
  %11285 = load i32, ptr %42, align 4, !tbaa !9
  %11286 = icmp ne i32 %11285, 0
  br i1 %11286, label %11287, label %11302

11287:                                            ; preds = %11279
  %11288 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11288, ptr %42, align 4, !tbaa !9
  %11289 = load ptr, ptr %6, align 8, !tbaa !5
  %11290 = getelementptr inbounds %struct.w2c_hermes, ptr %11289, i32 0, i32 6
  %11291 = load i32, ptr %42, align 4, !tbaa !9
  %11292 = zext i32 %11291 to i64
  %11293 = call i64 @i64_load(ptr noundef %11290, i64 noundef %11292)
  store i64 %11293, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %11294 = load i64, ptr %48, align 8, !tbaa !11
  %11295 = load i64, ptr %49, align 8, !tbaa !11
  %11296 = icmp ult i64 %11294, %11295
  %11297 = zext i1 %11296 to i32
  store i32 %11297, ptr %42, align 4, !tbaa !9
  %11298 = load i32, ptr %42, align 4, !tbaa !9
  %11299 = icmp ne i32 %11298, 0
  br i1 %11299, label %11300, label %11301

11300:                                            ; preds = %11287
  br label %11308

11301:                                            ; preds = %11287
  br label %11302

11302:                                            ; preds = %11301, %11279
  %11303 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %11303, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %11304 = load i32, ptr %43, align 4, !tbaa !9
  %11305 = load i32, ptr %42, align 4, !tbaa !9
  %11306 = sub i32 %11305, %11304
  store i32 %11306, ptr %42, align 4, !tbaa !9
  %11307 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11307, ptr %29, align 4, !tbaa !9
  br label %11308

11308:                                            ; preds = %11302, %11300, %11274
  %11309 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11309, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %11310 = load ptr, ptr %6, align 8, !tbaa !5
  %11311 = getelementptr inbounds %struct.w2c_hermes, ptr %11310, i32 0, i32 6
  %11312 = load i32, ptr %42, align 4, !tbaa !9
  %11313 = zext i32 %11312 to i64
  %11314 = add i64 %11313, 12
  %11315 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11311, i64 noundef %11314, i64 noundef %11315)
  %11316 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11316, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %11317 = load ptr, ptr %6, align 8, !tbaa !5
  %11318 = getelementptr inbounds %struct.w2c_hermes, ptr %11317, i32 0, i32 6
  %11319 = load i32, ptr %42, align 4, !tbaa !9
  %11320 = zext i32 %11319 to i64
  %11321 = add i64 %11320, 20
  %11322 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11318, i64 noundef %11321, i32 noundef %11322)
  %11323 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11323, ptr %42, align 4, !tbaa !9
  %11324 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %11324, ptr %43, align 4, !tbaa !9
  %11325 = load ptr, ptr %6, align 8, !tbaa !5
  %11326 = getelementptr inbounds %struct.w2c_hermes, ptr %11325, i32 0, i32 6
  %11327 = load i32, ptr %42, align 4, !tbaa !9
  %11328 = zext i32 %11327 to i64
  %11329 = add i64 %11328, 8
  %11330 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11326, i64 noundef %11329, i32 noundef %11330)
  %11331 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11331, ptr %42, align 4, !tbaa !9
  %11332 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11332, ptr %43, align 4, !tbaa !9
  %11333 = load i32, ptr %43, align 4, !tbaa !9
  %11334 = zext i32 %11333 to i64
  store i64 %11334, ptr %49, align 8, !tbaa !11
  %11335 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %11335, ptr %44, align 4, !tbaa !9
  %11336 = load i32, ptr %44, align 4, !tbaa !9
  %11337 = zext i32 %11336 to i64
  store i64 %11337, ptr %50, align 8, !tbaa !11
  store i64 32, ptr %51, align 8, !tbaa !11
  %11338 = load i64, ptr %51, align 8, !tbaa !11
  %11339 = and i64 %11338, 63
  %11340 = load i64, ptr %50, align 8, !tbaa !11
  %11341 = shl i64 %11340, %11339
  store i64 %11341, ptr %50, align 8, !tbaa !11
  %11342 = load i64, ptr %50, align 8, !tbaa !11
  %11343 = load i64, ptr %49, align 8, !tbaa !11
  %11344 = or i64 %11343, %11342
  store i64 %11344, ptr %49, align 8, !tbaa !11
  %11345 = load ptr, ptr %6, align 8, !tbaa !5
  %11346 = getelementptr inbounds %struct.w2c_hermes, ptr %11345, i32 0, i32 6
  %11347 = load i32, ptr %42, align 4, !tbaa !9
  %11348 = zext i32 %11347 to i64
  %11349 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11346, i64 noundef %11348, i64 noundef %11349)
  %11350 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11350, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %11351 = load i32, ptr %43, align 4, !tbaa !9
  %11352 = load i32, ptr %42, align 4, !tbaa !9
  %11353 = add i32 %11352, %11351
  store i32 %11353, ptr %42, align 4, !tbaa !9
  %11354 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11354, ptr %15, align 4, !tbaa !9
  br label %11355

11355:                                            ; preds = %11308, %9930, %9862, %9789
  %11356 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11356, ptr %42, align 4, !tbaa !9
  %11357 = load ptr, ptr %6, align 8, !tbaa !5
  %11358 = getelementptr inbounds %struct.w2c_hermes, ptr %11357, i32 0, i32 6
  %11359 = load i32, ptr %42, align 4, !tbaa !9
  %11360 = zext i32 %11359 to i64
  %11361 = add i64 %11360, 16
  %11362 = call i32 @i32_load(ptr noundef %11358, i64 noundef %11361)
  store i32 %11362, ptr %42, align 4, !tbaa !9
  %11363 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11363, ptr %8, align 4, !tbaa !9
  %11364 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11364, ptr %43, align 4, !tbaa !9
  %11365 = load ptr, ptr %6, align 8, !tbaa !5
  %11366 = getelementptr inbounds %struct.w2c_hermes, ptr %11365, i32 0, i32 6
  %11367 = load i32, ptr %43, align 4, !tbaa !9
  %11368 = zext i32 %11367 to i64
  %11369 = add i64 %11368, 20
  %11370 = call i32 @i32_load(ptr noundef %11366, i64 noundef %11369)
  store i32 %11370, ptr %43, align 4, !tbaa !9
  %11371 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11371, ptr %7, align 4, !tbaa !9
  %11372 = load i32, ptr %42, align 4, !tbaa !9
  %11373 = load i32, ptr %43, align 4, !tbaa !9
  %11374 = icmp ult i32 %11372, %11373
  %11375 = zext i1 %11374 to i32
  store i32 %11375, ptr %42, align 4, !tbaa !9
  %11376 = load i32, ptr %42, align 4, !tbaa !9
  %11377 = icmp ne i32 %11376, 0
  br i1 %11377, label %11378, label %11397

11378:                                            ; preds = %11355
  %11379 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11379, ptr %42, align 4, !tbaa !9
  %11380 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11380, ptr %43, align 4, !tbaa !9
  %11381 = load ptr, ptr %6, align 8, !tbaa !5
  %11382 = getelementptr inbounds %struct.w2c_hermes, ptr %11381, i32 0, i32 6
  %11383 = load i32, ptr %42, align 4, !tbaa !9
  %11384 = zext i32 %11383 to i64
  %11385 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11382, i64 noundef %11384, i32 noundef %11385)
  %11386 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11386, ptr %42, align 4, !tbaa !9
  %11387 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11387, ptr %43, align 4, !tbaa !9
  store i32 4, ptr %44, align 4, !tbaa !9
  %11388 = load i32, ptr %44, align 4, !tbaa !9
  %11389 = load i32, ptr %43, align 4, !tbaa !9
  %11390 = add i32 %11389, %11388
  store i32 %11390, ptr %43, align 4, !tbaa !9
  %11391 = load ptr, ptr %6, align 8, !tbaa !5
  %11392 = getelementptr inbounds %struct.w2c_hermes, ptr %11391, i32 0, i32 6
  %11393 = load i32, ptr %42, align 4, !tbaa !9
  %11394 = zext i32 %11393 to i64
  %11395 = add i64 %11394, 16
  %11396 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11392, i64 noundef %11395, i32 noundef %11396)
  br label %11561

11397:                                            ; preds = %11355
  %11398 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11398, ptr %42, align 4, !tbaa !9
  %11399 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11399, ptr %43, align 4, !tbaa !9
  %11400 = load ptr, ptr %6, align 8, !tbaa !5
  %11401 = getelementptr inbounds %struct.w2c_hermes, ptr %11400, i32 0, i32 6
  %11402 = load i32, ptr %43, align 4, !tbaa !9
  %11403 = zext i32 %11402 to i64
  %11404 = add i64 %11403, 12
  %11405 = call i32 @i32_load(ptr noundef %11401, i64 noundef %11404)
  store i32 %11405, ptr %43, align 4, !tbaa !9
  %11406 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11406, ptr %23, align 4, !tbaa !9
  %11407 = load i32, ptr %43, align 4, !tbaa !9
  %11408 = load i32, ptr %42, align 4, !tbaa !9
  %11409 = sub i32 %11408, %11407
  store i32 %11409, ptr %42, align 4, !tbaa !9
  %11410 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11410, ptr %11, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %11411 = load i32, ptr %42, align 4, !tbaa !9
  %11412 = load i32, ptr %43, align 4, !tbaa !9
  %11413 = and i32 %11412, 31
  %11414 = ashr i32 %11411, %11413
  store i32 %11414, ptr %42, align 4, !tbaa !9
  %11415 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11415, ptr %10, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %11416 = load i32, ptr %43, align 4, !tbaa !9
  %11417 = load i32, ptr %42, align 4, !tbaa !9
  %11418 = add i32 %11417, %11416
  store i32 %11418, ptr %42, align 4, !tbaa !9
  %11419 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11419, ptr %12, align 4, !tbaa !9
  store i32 1073741824, ptr %43, align 4, !tbaa !9
  %11420 = load i32, ptr %42, align 4, !tbaa !9
  %11421 = load i32, ptr %43, align 4, !tbaa !9
  %11422 = icmp uge i32 %11420, %11421
  %11423 = zext i1 %11422 to i32
  store i32 %11423, ptr %42, align 4, !tbaa !9
  %11424 = load i32, ptr %42, align 4, !tbaa !9
  %11425 = icmp ne i32 %11424, 0
  br i1 %11425, label %11426, label %11427

11426:                                            ; preds = %11397
  br label %11582

11427:                                            ; preds = %11397
  store i32 1073741823, ptr %42, align 4, !tbaa !9
  %11428 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11428, ptr %43, align 4, !tbaa !9
  %11429 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %11429, ptr %44, align 4, !tbaa !9
  %11430 = load i32, ptr %44, align 4, !tbaa !9
  %11431 = load i32, ptr %43, align 4, !tbaa !9
  %11432 = sub i32 %11431, %11430
  store i32 %11432, ptr %43, align 4, !tbaa !9
  %11433 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11433, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %11434 = load i32, ptr %43, align 4, !tbaa !9
  %11435 = load i32, ptr %44, align 4, !tbaa !9
  %11436 = and i32 %11435, 31
  %11437 = ashr i32 %11434, %11436
  store i32 %11437, ptr %43, align 4, !tbaa !9
  %11438 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11438, ptr %7, align 4, !tbaa !9
  %11439 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11439, ptr %44, align 4, !tbaa !9
  %11440 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11440, ptr %45, align 4, !tbaa !9
  %11441 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11441, ptr %46, align 4, !tbaa !9
  %11442 = load i32, ptr %45, align 4, !tbaa !9
  %11443 = load i32, ptr %46, align 4, !tbaa !9
  %11444 = icmp ugt i32 %11442, %11443
  %11445 = zext i1 %11444 to i32
  store i32 %11445, ptr %45, align 4, !tbaa !9
  %11446 = load i32, ptr %45, align 4, !tbaa !9
  %11447 = icmp ne i32 %11446, 0
  br i1 %11447, label %11448, label %11450

11448:                                            ; preds = %11427
  %11449 = load i32, ptr %43, align 4, !tbaa !9
  br label %11452

11450:                                            ; preds = %11427
  %11451 = load i32, ptr %44, align 4, !tbaa !9
  br label %11452

11452:                                            ; preds = %11450, %11448
  %11453 = phi i32 [ %11449, %11448 ], [ %11451, %11450 ]
  store i32 %11453, ptr %43, align 4, !tbaa !9
  %11454 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11454, ptr %44, align 4, !tbaa !9
  store i32 2147483644, ptr %45, align 4, !tbaa !9
  %11455 = load i32, ptr %44, align 4, !tbaa !9
  %11456 = load i32, ptr %45, align 4, !tbaa !9
  %11457 = icmp uge i32 %11455, %11456
  %11458 = zext i1 %11457 to i32
  store i32 %11458, ptr %44, align 4, !tbaa !9
  %11459 = load i32, ptr %44, align 4, !tbaa !9
  %11460 = icmp ne i32 %11459, 0
  br i1 %11460, label %11461, label %11463

11461:                                            ; preds = %11452
  %11462 = load i32, ptr %42, align 4, !tbaa !9
  br label %11465

11463:                                            ; preds = %11452
  %11464 = load i32, ptr %43, align 4, !tbaa !9
  br label %11465

11465:                                            ; preds = %11463, %11461
  %11466 = phi i32 [ %11462, %11461 ], [ %11464, %11463 ]
  store i32 %11466, ptr %42, align 4, !tbaa !9
  %11467 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11467, ptr %12, align 4, !tbaa !9
  %11468 = load i32, ptr %42, align 4, !tbaa !9
  %11469 = icmp ne i32 %11468, 0
  br i1 %11469, label %11470, label %11488

11470:                                            ; preds = %11465
  %11471 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11471, ptr %42, align 4, !tbaa !9
  store i32 1073741824, ptr %43, align 4, !tbaa !9
  %11472 = load i32, ptr %42, align 4, !tbaa !9
  %11473 = load i32, ptr %43, align 4, !tbaa !9
  %11474 = icmp uge i32 %11472, %11473
  %11475 = zext i1 %11474 to i32
  store i32 %11475, ptr %42, align 4, !tbaa !9
  %11476 = load i32, ptr %42, align 4, !tbaa !9
  %11477 = icmp ne i32 %11476, 0
  br i1 %11477, label %11478, label %11479

11478:                                            ; preds = %11470
  br label %15476

11479:                                            ; preds = %11470
  %11480 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11480, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %11481 = load i32, ptr %43, align 4, !tbaa !9
  %11482 = and i32 %11481, 31
  %11483 = load i32, ptr %42, align 4, !tbaa !9
  %11484 = shl i32 %11483, %11482
  store i32 %11484, ptr %42, align 4, !tbaa !9
  %11485 = load ptr, ptr %6, align 8, !tbaa !5
  %11486 = load i32, ptr %42, align 4, !tbaa !9
  %11487 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11485, i32 noundef %11486)
  store i32 %11487, ptr %42, align 4, !tbaa !9
  br label %11489

11488:                                            ; preds = %11465
  store i32 0, ptr %42, align 4, !tbaa !9
  br label %11489

11489:                                            ; preds = %11488, %11479
  %11490 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11490, ptr %7, align 4, !tbaa !9
  %11491 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11491, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %11492 = load i32, ptr %44, align 4, !tbaa !9
  %11493 = and i32 %11492, 31
  %11494 = load i32, ptr %43, align 4, !tbaa !9
  %11495 = shl i32 %11494, %11493
  store i32 %11495, ptr %43, align 4, !tbaa !9
  %11496 = load i32, ptr %43, align 4, !tbaa !9
  %11497 = load i32, ptr %42, align 4, !tbaa !9
  %11498 = add i32 %11497, %11496
  store i32 %11498, ptr %42, align 4, !tbaa !9
  %11499 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11499, ptr %8, align 4, !tbaa !9
  %11500 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11500, ptr %43, align 4, !tbaa !9
  %11501 = load ptr, ptr %6, align 8, !tbaa !5
  %11502 = getelementptr inbounds %struct.w2c_hermes, ptr %11501, i32 0, i32 6
  %11503 = load i32, ptr %42, align 4, !tbaa !9
  %11504 = zext i32 %11503 to i64
  %11505 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11502, i64 noundef %11504, i32 noundef %11505)
  %11506 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11506, ptr %42, align 4, !tbaa !9
  %11507 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11507, ptr %43, align 4, !tbaa !9
  %11508 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %11508, ptr %44, align 4, !tbaa !9
  %11509 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11509, ptr %45, align 4, !tbaa !9
  %11510 = load ptr, ptr %6, align 8, !tbaa !5
  %11511 = load i32, ptr %43, align 4, !tbaa !9
  %11512 = load i32, ptr %44, align 4, !tbaa !9
  %11513 = load i32, ptr %45, align 4, !tbaa !9
  %11514 = call i32 @w2c_hermes_memmove(ptr noundef %11510, i32 noundef %11511, i32 noundef %11512, i32 noundef %11513)
  store i32 %11514, ptr %43, align 4, !tbaa !9
  %11515 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11515, ptr %7, align 4, !tbaa !9
  %11516 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11516, ptr %44, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %11517 = load i32, ptr %45, align 4, !tbaa !9
  %11518 = and i32 %11517, 31
  %11519 = load i32, ptr %44, align 4, !tbaa !9
  %11520 = shl i32 %11519, %11518
  store i32 %11520, ptr %44, align 4, !tbaa !9
  %11521 = load i32, ptr %44, align 4, !tbaa !9
  %11522 = load i32, ptr %43, align 4, !tbaa !9
  %11523 = add i32 %11522, %11521
  store i32 %11523, ptr %43, align 4, !tbaa !9
  %11524 = load ptr, ptr %6, align 8, !tbaa !5
  %11525 = getelementptr inbounds %struct.w2c_hermes, ptr %11524, i32 0, i32 6
  %11526 = load i32, ptr %42, align 4, !tbaa !9
  %11527 = zext i32 %11526 to i64
  %11528 = add i64 %11527, 20
  %11529 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11525, i64 noundef %11528, i32 noundef %11529)
  %11530 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11530, ptr %42, align 4, !tbaa !9
  %11531 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11531, ptr %43, align 4, !tbaa !9
  store i32 4, ptr %44, align 4, !tbaa !9
  %11532 = load i32, ptr %44, align 4, !tbaa !9
  %11533 = load i32, ptr %43, align 4, !tbaa !9
  %11534 = add i32 %11533, %11532
  store i32 %11534, ptr %43, align 4, !tbaa !9
  %11535 = load ptr, ptr %6, align 8, !tbaa !5
  %11536 = getelementptr inbounds %struct.w2c_hermes, ptr %11535, i32 0, i32 6
  %11537 = load i32, ptr %42, align 4, !tbaa !9
  %11538 = zext i32 %11537 to i64
  %11539 = add i64 %11538, 16
  %11540 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11536, i64 noundef %11539, i32 noundef %11540)
  %11541 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11541, ptr %42, align 4, !tbaa !9
  %11542 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11542, ptr %43, align 4, !tbaa !9
  %11543 = load ptr, ptr %6, align 8, !tbaa !5
  %11544 = getelementptr inbounds %struct.w2c_hermes, ptr %11543, i32 0, i32 6
  %11545 = load i32, ptr %42, align 4, !tbaa !9
  %11546 = zext i32 %11545 to i64
  %11547 = add i64 %11546, 12
  %11548 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11544, i64 noundef %11547, i32 noundef %11548)
  %11549 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %11549, ptr %42, align 4, !tbaa !9
  %11550 = load i32, ptr %42, align 4, !tbaa !9
  %11551 = icmp ne i32 %11550, 0
  %11552 = xor i1 %11551, true
  %11553 = zext i1 %11552 to i32
  store i32 %11553, ptr %42, align 4, !tbaa !9
  %11554 = load i32, ptr %42, align 4, !tbaa !9
  %11555 = icmp ne i32 %11554, 0
  br i1 %11555, label %11556, label %11557

11556:                                            ; preds = %11489
  br label %11561

11557:                                            ; preds = %11489
  %11558 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %11558, ptr %42, align 4, !tbaa !9
  %11559 = load ptr, ptr %6, align 8, !tbaa !5
  %11560 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %11559, i32 noundef %11560)
  br label %11561

11561:                                            ; preds = %11557, %11556, %11378
  %11562 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11562, ptr %42, align 4, !tbaa !9
  %11563 = load i32, ptr %42, align 4, !tbaa !9
  %11564 = icmp ne i32 %11563, 0
  br i1 %11564, label %11565, label %11566

11565:                                            ; preds = %11561
  br label %9443

11566:                                            ; preds = %11561
  br label %11567

11567:                                            ; preds = %11566, %9668, %9430, %9421
  %11568 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11568, ptr %42, align 4, !tbaa !9
  %11569 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11569, ptr %43, align 4, !tbaa !9
  store i32 52, ptr %44, align 4, !tbaa !9
  %11570 = load i32, ptr %44, align 4, !tbaa !9
  %11571 = load i32, ptr %43, align 4, !tbaa !9
  %11572 = add i32 %11571, %11570
  store i32 %11572, ptr %43, align 4, !tbaa !9
  %11573 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11573, ptr %18, align 4, !tbaa !9
  %11574 = load i32, ptr %42, align 4, !tbaa !9
  %11575 = load i32, ptr %43, align 4, !tbaa !9
  %11576 = icmp ne i32 %11574, %11575
  %11577 = zext i1 %11576 to i32
  store i32 %11577, ptr %42, align 4, !tbaa !9
  %11578 = load i32, ptr %42, align 4, !tbaa !9
  %11579 = icmp ne i32 %11578, 0
  br i1 %11579, label %11580, label %11581

11580:                                            ; preds = %11567
  br label %9406

11581:                                            ; preds = %11567
  br label %11583

11582:                                            ; preds = %11426
  br label %15476

11583:                                            ; preds = %11581
  %11584 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11584, ptr %42, align 4, !tbaa !9
  %11585 = load i32, ptr %42, align 4, !tbaa !9
  %11586 = icmp ne i32 %11585, 0
  %11587 = xor i1 %11586, true
  %11588 = zext i1 %11587 to i32
  store i32 %11588, ptr %42, align 4, !tbaa !9
  %11589 = load i32, ptr %42, align 4, !tbaa !9
  %11590 = icmp ne i32 %11589, 0
  br i1 %11590, label %11591, label %11594

11591:                                            ; preds = %11583
  store i32 0, ptr %42, align 4, !tbaa !9
  %11592 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11592, ptr %15, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %11593 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11593, ptr %23, align 4, !tbaa !9
  br label %12280

11594:                                            ; preds = %11583
  %11595 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11595, ptr %42, align 4, !tbaa !9
  store i32 214748365, ptr %43, align 4, !tbaa !9
  %11596 = load i32, ptr %42, align 4, !tbaa !9
  %11597 = load i32, ptr %43, align 4, !tbaa !9
  %11598 = icmp uge i32 %11596, %11597
  %11599 = zext i1 %11598 to i32
  store i32 %11599, ptr %42, align 4, !tbaa !9
  %11600 = load i32, ptr %42, align 4, !tbaa !9
  %11601 = icmp ne i32 %11600, 0
  br i1 %11601, label %11602, label %11603

11602:                                            ; preds = %11594
  br label %15476

11603:                                            ; preds = %11594
  %11604 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11604, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %11605 = load i32, ptr %43, align 4, !tbaa !9
  %11606 = load i32, ptr %42, align 4, !tbaa !9
  %11607 = mul i32 %11606, %11605
  store i32 %11607, ptr %42, align 4, !tbaa !9
  %11608 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11608, ptr %7, align 4, !tbaa !9
  %11609 = load ptr, ptr %6, align 8, !tbaa !5
  %11610 = load i32, ptr %42, align 4, !tbaa !9
  %11611 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11609, i32 noundef %11610)
  store i32 %11611, ptr %42, align 4, !tbaa !9
  %11612 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11612, ptr %15, align 4, !tbaa !9
  %11613 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %11613, ptr %42, align 4, !tbaa !9
  %11614 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11614, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %11615 = load i32, ptr %44, align 4, !tbaa !9
  %11616 = load i32, ptr %43, align 4, !tbaa !9
  %11617 = mul i32 %11616, %11615
  store i32 %11617, ptr %43, align 4, !tbaa !9
  %11618 = load i32, ptr %43, align 4, !tbaa !9
  %11619 = load i32, ptr %42, align 4, !tbaa !9
  %11620 = add i32 %11619, %11618
  store i32 %11620, ptr %42, align 4, !tbaa !9
  %11621 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11621, ptr %21, align 4, !tbaa !9
  %11622 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %11622, ptr %42, align 4, !tbaa !9
  %11623 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11623, ptr %13, align 4, !tbaa !9
  %11624 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11624, ptr %42, align 4, !tbaa !9
  %11625 = load i32, ptr %42, align 4, !tbaa !9
  %11626 = icmp ne i32 %11625, 0
  %11627 = xor i1 %11626, true
  %11628 = zext i1 %11627 to i32
  store i32 %11628, ptr %42, align 4, !tbaa !9
  %11629 = load i32, ptr %42, align 4, !tbaa !9
  %11630 = icmp ne i32 %11629, 0
  br i1 %11630, label %11631, label %11632

11631:                                            ; preds = %11603
  br label %11675

11632:                                            ; preds = %11603
  br label %11633

11633:                                            ; preds = %11671, %11632
  %11634 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11634, ptr %42, align 4, !tbaa !9
  %11635 = load ptr, ptr %6, align 8, !tbaa !5
  %11636 = getelementptr inbounds %struct.w2c_hermes, ptr %11635, i32 0, i32 6
  %11637 = load i32, ptr %42, align 4, !tbaa !9
  %11638 = zext i32 %11637 to i64
  %11639 = add i64 %11638, 8
  %11640 = call i32 @i32_load(ptr noundef %11636, i64 noundef %11639)
  store i32 %11640, ptr %42, align 4, !tbaa !9
  %11641 = load i32, ptr %42, align 4, !tbaa !9
  %11642 = icmp ne i32 %11641, 0
  br i1 %11642, label %11643, label %11644

11643:                                            ; preds = %11633
  br label %11675

11644:                                            ; preds = %11633
  %11645 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11645, ptr %42, align 4, !tbaa !9
  %11646 = load ptr, ptr %6, align 8, !tbaa !5
  %11647 = getelementptr inbounds %struct.w2c_hermes, ptr %11646, i32 0, i32 6
  %11648 = load i32, ptr %42, align 4, !tbaa !9
  %11649 = zext i32 %11648 to i64
  %11650 = call i64 @i64_load(ptr noundef %11647, i64 noundef %11649)
  store i64 %11650, ptr %48, align 8, !tbaa !11
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %11651 = load i64, ptr %48, align 8, !tbaa !11
  %11652 = load i64, ptr %49, align 8, !tbaa !11
  %11653 = icmp ugt i64 %11651, %11652
  %11654 = zext i1 %11653 to i32
  store i32 %11654, ptr %42, align 4, !tbaa !9
  %11655 = load i32, ptr %42, align 4, !tbaa !9
  %11656 = icmp ne i32 %11655, 0
  br i1 %11656, label %11657, label %11658

11657:                                            ; preds = %11644
  br label %11675

11658:                                            ; preds = %11644
  %11659 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11659, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %11660 = load i32, ptr %43, align 4, !tbaa !9
  %11661 = load i32, ptr %42, align 4, !tbaa !9
  %11662 = add i32 %11661, %11660
  store i32 %11662, ptr %42, align 4, !tbaa !9
  %11663 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11663, ptr %13, align 4, !tbaa !9
  %11664 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11664, ptr %43, align 4, !tbaa !9
  %11665 = load i32, ptr %42, align 4, !tbaa !9
  %11666 = load i32, ptr %43, align 4, !tbaa !9
  %11667 = icmp ne i32 %11665, %11666
  %11668 = zext i1 %11667 to i32
  store i32 %11668, ptr %42, align 4, !tbaa !9
  %11669 = load i32, ptr %42, align 4, !tbaa !9
  %11670 = icmp ne i32 %11669, 0
  br i1 %11670, label %11671, label %11672

11671:                                            ; preds = %11658
  br label %11633

11672:                                            ; preds = %11658
  %11673 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11673, ptr %42, align 4, !tbaa !9
  %11674 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11674, ptr %23, align 4, !tbaa !9
  br label %12228

11675:                                            ; preds = %11657, %11643, %11631
  %11676 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11676, ptr %42, align 4, !tbaa !9
  %11677 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11677, ptr %43, align 4, !tbaa !9
  %11678 = load i32, ptr %42, align 4, !tbaa !9
  %11679 = load i32, ptr %43, align 4, !tbaa !9
  %11680 = icmp eq i32 %11678, %11679
  %11681 = zext i1 %11680 to i32
  store i32 %11681, ptr %42, align 4, !tbaa !9
  %11682 = load i32, ptr %42, align 4, !tbaa !9
  %11683 = icmp ne i32 %11682, 0
  br i1 %11683, label %11684, label %11687

11684:                                            ; preds = %11675
  %11685 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11685, ptr %42, align 4, !tbaa !9
  %11686 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11686, ptr %23, align 4, !tbaa !9
  br label %12228

11687:                                            ; preds = %11675
  %11688 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11688, ptr %42, align 4, !tbaa !9
  %11689 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11689, ptr %43, align 4, !tbaa !9
  %11690 = load i32, ptr %43, align 4, !tbaa !9
  %11691 = load i32, ptr %42, align 4, !tbaa !9
  %11692 = add i32 %11691, %11690
  store i32 %11692, ptr %42, align 4, !tbaa !9
  %11693 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11693, ptr %18, align 4, !tbaa !9
  %11694 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11694, ptr %42, align 4, !tbaa !9
  %11695 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11695, ptr %12, align 4, !tbaa !9
  br label %11696

11696:                                            ; preds = %12220, %12180, %12165, %11687
  %11697 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11697, ptr %42, align 4, !tbaa !9
  %11698 = load ptr, ptr %6, align 8, !tbaa !5
  %11699 = getelementptr inbounds %struct.w2c_hermes, ptr %11698, i32 0, i32 6
  %11700 = load i32, ptr %42, align 4, !tbaa !9
  %11701 = zext i32 %11700 to i64
  %11702 = add i64 %11701, 20
  %11703 = call i32 @i32_load(ptr noundef %11699, i64 noundef %11702)
  store i32 %11703, ptr %42, align 4, !tbaa !9
  %11704 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11704, ptr %17, align 4, !tbaa !9
  %11705 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11705, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %11706 = load ptr, ptr %6, align 8, !tbaa !5
  %11707 = getelementptr inbounds %struct.w2c_hermes, ptr %11706, i32 0, i32 6
  %11708 = load i32, ptr %42, align 4, !tbaa !9
  %11709 = zext i32 %11708 to i64
  %11710 = add i64 %11709, 20
  %11711 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11707, i64 noundef %11710, i32 noundef %11711)
  %11712 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11712, ptr %42, align 4, !tbaa !9
  %11713 = load ptr, ptr %6, align 8, !tbaa !5
  %11714 = getelementptr inbounds %struct.w2c_hermes, ptr %11713, i32 0, i32 6
  %11715 = load i32, ptr %42, align 4, !tbaa !9
  %11716 = zext i32 %11715 to i64
  %11717 = add i64 %11716, 16
  %11718 = call i32 @i32_load(ptr noundef %11714, i64 noundef %11717)
  store i32 %11718, ptr %42, align 4, !tbaa !9
  %11719 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11719, ptr %19, align 4, !tbaa !9
  %11720 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11720, ptr %42, align 4, !tbaa !9
  %11721 = load ptr, ptr %6, align 8, !tbaa !5
  %11722 = getelementptr inbounds %struct.w2c_hermes, ptr %11721, i32 0, i32 6
  %11723 = load i32, ptr %42, align 4, !tbaa !9
  %11724 = zext i32 %11723 to i64
  %11725 = add i64 %11724, 12
  %11726 = call i32 @i32_load(ptr noundef %11722, i64 noundef %11725)
  store i32 %11726, ptr %42, align 4, !tbaa !9
  %11727 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11727, ptr %23, align 4, !tbaa !9
  %11728 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11728, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %11729 = load ptr, ptr %6, align 8, !tbaa !5
  %11730 = getelementptr inbounds %struct.w2c_hermes, ptr %11729, i32 0, i32 6
  %11731 = load i32, ptr %42, align 4, !tbaa !9
  %11732 = zext i32 %11731 to i64
  %11733 = add i64 %11732, 12
  %11734 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11730, i64 noundef %11733, i64 noundef %11734)
  %11735 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11735, ptr %42, align 4, !tbaa !9
  %11736 = load ptr, ptr %6, align 8, !tbaa !5
  %11737 = getelementptr inbounds %struct.w2c_hermes, ptr %11736, i32 0, i32 6
  %11738 = load i32, ptr %42, align 4, !tbaa !9
  %11739 = zext i32 %11738 to i64
  %11740 = call i64 @i64_load(ptr noundef %11737, i64 noundef %11739)
  store i64 %11740, ptr %48, align 8, !tbaa !11
  %11741 = load i64, ptr %48, align 8, !tbaa !11
  store i64 %11741, ptr %39, align 8, !tbaa !11
  %11742 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11742, ptr %42, align 4, !tbaa !9
  %11743 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11743, ptr %43, align 4, !tbaa !9
  %11744 = load i32, ptr %42, align 4, !tbaa !9
  %11745 = load i32, ptr %43, align 4, !tbaa !9
  %11746 = icmp ult i32 %11744, %11745
  %11747 = zext i1 %11746 to i32
  store i32 %11747, ptr %42, align 4, !tbaa !9
  %11748 = load i32, ptr %42, align 4, !tbaa !9
  %11749 = icmp ne i32 %11748, 0
  br i1 %11749, label %11750, label %11789

11750:                                            ; preds = %11696
  %11751 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11751, ptr %42, align 4, !tbaa !9
  %11752 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %11752, ptr %43, align 4, !tbaa !9
  %11753 = load ptr, ptr %6, align 8, !tbaa !5
  %11754 = getelementptr inbounds %struct.w2c_hermes, ptr %11753, i32 0, i32 6
  %11755 = load i32, ptr %42, align 4, !tbaa !9
  %11756 = zext i32 %11755 to i64
  %11757 = add i64 %11756, 8
  %11758 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11754, i64 noundef %11757, i32 noundef %11758)
  %11759 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11759, ptr %42, align 4, !tbaa !9
  %11760 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11760, ptr %49, align 8, !tbaa !11
  %11761 = load ptr, ptr %6, align 8, !tbaa !5
  %11762 = getelementptr inbounds %struct.w2c_hermes, ptr %11761, i32 0, i32 6
  %11763 = load i32, ptr %42, align 4, !tbaa !9
  %11764 = zext i32 %11763 to i64
  %11765 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11762, i64 noundef %11764, i64 noundef %11765)
  %11766 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11766, ptr %42, align 4, !tbaa !9
  %11767 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11767, ptr %43, align 4, !tbaa !9
  %11768 = load ptr, ptr %6, align 8, !tbaa !5
  %11769 = getelementptr inbounds %struct.w2c_hermes, ptr %11768, i32 0, i32 6
  %11770 = load i32, ptr %42, align 4, !tbaa !9
  %11771 = zext i32 %11770 to i64
  %11772 = add i64 %11771, 16
  %11773 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11769, i64 noundef %11772, i32 noundef %11773)
  %11774 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11774, ptr %42, align 4, !tbaa !9
  %11775 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11775, ptr %43, align 4, !tbaa !9
  %11776 = load ptr, ptr %6, align 8, !tbaa !5
  %11777 = getelementptr inbounds %struct.w2c_hermes, ptr %11776, i32 0, i32 6
  %11778 = load i32, ptr %42, align 4, !tbaa !9
  %11779 = zext i32 %11778 to i64
  %11780 = add i64 %11779, 12
  %11781 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11777, i64 noundef %11780, i32 noundef %11781)
  %11782 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11782, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %11783 = load i32, ptr %43, align 4, !tbaa !9
  %11784 = load i32, ptr %42, align 4, !tbaa !9
  %11785 = add i32 %11784, %11783
  store i32 %11785, ptr %42, align 4, !tbaa !9
  %11786 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11786, ptr %23, align 4, !tbaa !9
  %11787 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11787, ptr %42, align 4, !tbaa !9
  %11788 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11788, ptr %11, align 4, !tbaa !9
  br label %12133

11789:                                            ; preds = %11696
  %11790 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11790, ptr %42, align 4, !tbaa !9
  %11791 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11791, ptr %43, align 4, !tbaa !9
  %11792 = load i32, ptr %43, align 4, !tbaa !9
  %11793 = load i32, ptr %42, align 4, !tbaa !9
  %11794 = sub i32 %11793, %11792
  store i32 %11794, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %11795 = load i32, ptr %43, align 4, !tbaa !9
  %11796 = icmp eq i32 %11795, 0
  %11797 = xor i1 %11796, true
  %11798 = xor i1 %11797, true
  %11799 = zext i1 %11798 to i32
  %11800 = sext i32 %11799 to i64
  %11801 = call i64 @llvm.expect.i64(i64 %11800, i64 0)
  %11802 = icmp ne i64 %11801, 0
  br i1 %11802, label %11803, label %11805

11803:                                            ; preds = %11789
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

11804:                                            ; No predecessors!
  br label %11827

11805:                                            ; preds = %11789
  %11806 = load i32, ptr %42, align 4, !tbaa !9
  %11807 = icmp eq i32 %11806, -2147483648
  br i1 %11807, label %11808, label %11811

11808:                                            ; preds = %11805
  %11809 = load i32, ptr %43, align 4, !tbaa !9
  %11810 = icmp eq i32 %11809, -1
  br label %11811

11811:                                            ; preds = %11808, %11805
  %11812 = phi i1 [ false, %11805 ], [ %11810, %11808 ]
  %11813 = xor i1 %11812, true
  %11814 = xor i1 %11813, true
  %11815 = zext i1 %11814 to i32
  %11816 = sext i32 %11815 to i64
  %11817 = call i64 @llvm.expect.i64(i64 %11816, i64 0)
  %11818 = icmp ne i64 %11817, 0
  br i1 %11818, label %11819, label %11821

11819:                                            ; preds = %11811
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

11820:                                            ; No predecessors!
  br label %11825

11821:                                            ; preds = %11811
  %11822 = load i32, ptr %42, align 4, !tbaa !9
  %11823 = load i32, ptr %43, align 4, !tbaa !9
  %11824 = sdiv i32 %11822, %11823
  br label %11825

11825:                                            ; preds = %11821, %11820
  %11826 = phi i32 [ 0, %11820 ], [ %11824, %11821 ]
  br label %11827

11827:                                            ; preds = %11825, %11804
  %11828 = phi i32 [ 0, %11804 ], [ %11826, %11825 ]
  store i32 %11828, ptr %42, align 4, !tbaa !9
  %11829 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11829, ptr %10, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %11830 = load i32, ptr %43, align 4, !tbaa !9
  %11831 = load i32, ptr %42, align 4, !tbaa !9
  %11832 = add i32 %11831, %11830
  store i32 %11832, ptr %42, align 4, !tbaa !9
  %11833 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11833, ptr %11, align 4, !tbaa !9
  store i32 214748365, ptr %43, align 4, !tbaa !9
  %11834 = load i32, ptr %42, align 4, !tbaa !9
  %11835 = load i32, ptr %43, align 4, !tbaa !9
  %11836 = icmp uge i32 %11834, %11835
  %11837 = zext i1 %11836 to i32
  store i32 %11837, ptr %42, align 4, !tbaa !9
  %11838 = load i32, ptr %42, align 4, !tbaa !9
  %11839 = icmp ne i32 %11838, 0
  br i1 %11839, label %11840, label %11841

11840:                                            ; preds = %11827
  br label %15476

11841:                                            ; preds = %11827
  store i32 214748364, ptr %42, align 4, !tbaa !9
  %11842 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11842, ptr %43, align 4, !tbaa !9
  %11843 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11843, ptr %44, align 4, !tbaa !9
  %11844 = load i32, ptr %44, align 4, !tbaa !9
  %11845 = load i32, ptr %43, align 4, !tbaa !9
  %11846 = sub i32 %11845, %11844
  store i32 %11846, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %11847 = load i32, ptr %44, align 4, !tbaa !9
  %11848 = icmp eq i32 %11847, 0
  %11849 = xor i1 %11848, true
  %11850 = xor i1 %11849, true
  %11851 = zext i1 %11850 to i32
  %11852 = sext i32 %11851 to i64
  %11853 = call i64 @llvm.expect.i64(i64 %11852, i64 0)
  %11854 = icmp ne i64 %11853, 0
  br i1 %11854, label %11855, label %11857

11855:                                            ; preds = %11841
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

11856:                                            ; No predecessors!
  br label %11879

11857:                                            ; preds = %11841
  %11858 = load i32, ptr %43, align 4, !tbaa !9
  %11859 = icmp eq i32 %11858, -2147483648
  br i1 %11859, label %11860, label %11863

11860:                                            ; preds = %11857
  %11861 = load i32, ptr %44, align 4, !tbaa !9
  %11862 = icmp eq i32 %11861, -1
  br label %11863

11863:                                            ; preds = %11860, %11857
  %11864 = phi i1 [ false, %11857 ], [ %11862, %11860 ]
  %11865 = xor i1 %11864, true
  %11866 = xor i1 %11865, true
  %11867 = zext i1 %11866 to i32
  %11868 = sext i32 %11867 to i64
  %11869 = call i64 @llvm.expect.i64(i64 %11868, i64 0)
  %11870 = icmp ne i64 %11869, 0
  br i1 %11870, label %11871, label %11873

11871:                                            ; preds = %11863
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

11872:                                            ; No predecessors!
  br label %11877

11873:                                            ; preds = %11863
  %11874 = load i32, ptr %43, align 4, !tbaa !9
  %11875 = load i32, ptr %44, align 4, !tbaa !9
  %11876 = sdiv i32 %11874, %11875
  br label %11877

11877:                                            ; preds = %11873, %11872
  %11878 = phi i32 [ 0, %11872 ], [ %11876, %11873 ]
  br label %11879

11879:                                            ; preds = %11877, %11856
  %11880 = phi i32 [ 0, %11856 ], [ %11878, %11877 ]
  store i32 %11880, ptr %43, align 4, !tbaa !9
  %11881 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11881, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %11882 = load i32, ptr %44, align 4, !tbaa !9
  %11883 = and i32 %11882, 31
  %11884 = load i32, ptr %43, align 4, !tbaa !9
  %11885 = shl i32 %11884, %11883
  store i32 %11885, ptr %43, align 4, !tbaa !9
  %11886 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %11886, ptr %7, align 4, !tbaa !9
  %11887 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11887, ptr %44, align 4, !tbaa !9
  %11888 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11888, ptr %45, align 4, !tbaa !9
  %11889 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11889, ptr %46, align 4, !tbaa !9
  %11890 = load i32, ptr %45, align 4, !tbaa !9
  %11891 = load i32, ptr %46, align 4, !tbaa !9
  %11892 = icmp ugt i32 %11890, %11891
  %11893 = zext i1 %11892 to i32
  store i32 %11893, ptr %45, align 4, !tbaa !9
  %11894 = load i32, ptr %45, align 4, !tbaa !9
  %11895 = icmp ne i32 %11894, 0
  br i1 %11895, label %11896, label %11898

11896:                                            ; preds = %11879
  %11897 = load i32, ptr %43, align 4, !tbaa !9
  br label %11900

11898:                                            ; preds = %11879
  %11899 = load i32, ptr %44, align 4, !tbaa !9
  br label %11900

11900:                                            ; preds = %11898, %11896
  %11901 = phi i32 [ %11897, %11896 ], [ %11899, %11898 ]
  store i32 %11901, ptr %43, align 4, !tbaa !9
  %11902 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11902, ptr %44, align 4, !tbaa !9
  store i32 107374182, ptr %45, align 4, !tbaa !9
  %11903 = load i32, ptr %44, align 4, !tbaa !9
  %11904 = load i32, ptr %45, align 4, !tbaa !9
  %11905 = icmp uge i32 %11903, %11904
  %11906 = zext i1 %11905 to i32
  store i32 %11906, ptr %44, align 4, !tbaa !9
  %11907 = load i32, ptr %44, align 4, !tbaa !9
  %11908 = icmp ne i32 %11907, 0
  br i1 %11908, label %11909, label %11911

11909:                                            ; preds = %11900
  %11910 = load i32, ptr %42, align 4, !tbaa !9
  br label %11913

11911:                                            ; preds = %11900
  %11912 = load i32, ptr %43, align 4, !tbaa !9
  br label %11913

11913:                                            ; preds = %11911, %11909
  %11914 = phi i32 [ %11910, %11909 ], [ %11912, %11911 ]
  store i32 %11914, ptr %42, align 4, !tbaa !9
  %11915 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11915, ptr %7, align 4, !tbaa !9
  store i32 214748365, ptr %43, align 4, !tbaa !9
  %11916 = load i32, ptr %42, align 4, !tbaa !9
  %11917 = load i32, ptr %43, align 4, !tbaa !9
  %11918 = icmp uge i32 %11916, %11917
  %11919 = zext i1 %11918 to i32
  store i32 %11919, ptr %42, align 4, !tbaa !9
  %11920 = load i32, ptr %42, align 4, !tbaa !9
  %11921 = icmp ne i32 %11920, 0
  br i1 %11921, label %11922, label %11923

11922:                                            ; preds = %11913
  br label %15476

11923:                                            ; preds = %11913
  %11924 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11924, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %11925 = load i32, ptr %43, align 4, !tbaa !9
  %11926 = load i32, ptr %42, align 4, !tbaa !9
  %11927 = mul i32 %11926, %11925
  store i32 %11927, ptr %42, align 4, !tbaa !9
  %11928 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11928, ptr %8, align 4, !tbaa !9
  %11929 = load ptr, ptr %6, align 8, !tbaa !5
  %11930 = load i32, ptr %42, align 4, !tbaa !9
  %11931 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11929, i32 noundef %11930)
  store i32 %11931, ptr %42, align 4, !tbaa !9
  %11932 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11932, ptr %7, align 4, !tbaa !9
  %11933 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11933, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %11934 = load i32, ptr %44, align 4, !tbaa !9
  %11935 = load i32, ptr %43, align 4, !tbaa !9
  %11936 = mul i32 %11935, %11934
  store i32 %11936, ptr %43, align 4, !tbaa !9
  %11937 = load i32, ptr %43, align 4, !tbaa !9
  %11938 = load i32, ptr %42, align 4, !tbaa !9
  %11939 = add i32 %11938, %11937
  store i32 %11939, ptr %42, align 4, !tbaa !9
  %11940 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11940, ptr %11, align 4, !tbaa !9
  %11941 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %11941, ptr %43, align 4, !tbaa !9
  %11942 = load ptr, ptr %6, align 8, !tbaa !5
  %11943 = getelementptr inbounds %struct.w2c_hermes, ptr %11942, i32 0, i32 6
  %11944 = load i32, ptr %42, align 4, !tbaa !9
  %11945 = zext i32 %11944 to i64
  %11946 = add i64 %11945, 8
  %11947 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11943, i64 noundef %11946, i32 noundef %11947)
  %11948 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11948, ptr %42, align 4, !tbaa !9
  %11949 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11949, ptr %49, align 8, !tbaa !11
  %11950 = load ptr, ptr %6, align 8, !tbaa !5
  %11951 = getelementptr inbounds %struct.w2c_hermes, ptr %11950, i32 0, i32 6
  %11952 = load i32, ptr %42, align 4, !tbaa !9
  %11953 = zext i32 %11952 to i64
  %11954 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11951, i64 noundef %11953, i64 noundef %11954)
  %11955 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11955, ptr %42, align 4, !tbaa !9
  %11956 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11956, ptr %43, align 4, !tbaa !9
  %11957 = load ptr, ptr %6, align 8, !tbaa !5
  %11958 = getelementptr inbounds %struct.w2c_hermes, ptr %11957, i32 0, i32 6
  %11959 = load i32, ptr %42, align 4, !tbaa !9
  %11960 = zext i32 %11959 to i64
  %11961 = add i64 %11960, 16
  %11962 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11958, i64 noundef %11961, i32 noundef %11962)
  %11963 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11963, ptr %42, align 4, !tbaa !9
  %11964 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11964, ptr %43, align 4, !tbaa !9
  %11965 = load ptr, ptr %6, align 8, !tbaa !5
  %11966 = getelementptr inbounds %struct.w2c_hermes, ptr %11965, i32 0, i32 6
  %11967 = load i32, ptr %42, align 4, !tbaa !9
  %11968 = zext i32 %11967 to i64
  %11969 = add i64 %11968, 12
  %11970 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11966, i64 noundef %11969, i32 noundef %11970)
  %11971 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11971, ptr %42, align 4, !tbaa !9
  %11972 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11972, ptr %43, align 4, !tbaa !9
  %11973 = load i32, ptr %43, align 4, !tbaa !9
  %11974 = load i32, ptr %42, align 4, !tbaa !9
  %11975 = add i32 %11974, %11973
  store i32 %11975, ptr %42, align 4, !tbaa !9
  %11976 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11976, ptr %18, align 4, !tbaa !9
  %11977 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11977, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %11978 = load i32, ptr %43, align 4, !tbaa !9
  %11979 = load i32, ptr %42, align 4, !tbaa !9
  %11980 = add i32 %11979, %11978
  store i32 %11980, ptr %42, align 4, !tbaa !9
  %11981 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11981, ptr %23, align 4, !tbaa !9
  %11982 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11982, ptr %42, align 4, !tbaa !9
  %11983 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11983, ptr %10, align 4, !tbaa !9
  %11984 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11984, ptr %43, align 4, !tbaa !9
  %11985 = load i32, ptr %42, align 4, !tbaa !9
  %11986 = load i32, ptr %43, align 4, !tbaa !9
  %11987 = icmp ne i32 %11985, %11986
  %11988 = zext i1 %11987 to i32
  store i32 %11988, ptr %42, align 4, !tbaa !9
  %11989 = load i32, ptr %42, align 4, !tbaa !9
  %11990 = icmp ne i32 %11989, 0
  br i1 %11990, label %11991, label %12129

11991:                                            ; preds = %11923
  br label %11992

11992:                                            ; preds = %12077, %11991
  %11993 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11993, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %11994 = load i32, ptr %43, align 4, !tbaa !9
  %11995 = load i32, ptr %42, align 4, !tbaa !9
  %11996 = sub i32 %11995, %11994
  store i32 %11996, ptr %42, align 4, !tbaa !9
  %11997 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %11997, ptr %11, align 4, !tbaa !9
  %11998 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11998, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %11999 = load i32, ptr %44, align 4, !tbaa !9
  %12000 = load i32, ptr %43, align 4, !tbaa !9
  %12001 = sub i32 %12000, %11999
  store i32 %12001, ptr %43, align 4, !tbaa !9
  %12002 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %12002, ptr %10, align 4, !tbaa !9
  %12003 = load ptr, ptr %6, align 8, !tbaa !5
  %12004 = getelementptr inbounds %struct.w2c_hermes, ptr %12003, i32 0, i32 6
  %12005 = load i32, ptr %43, align 4, !tbaa !9
  %12006 = zext i32 %12005 to i64
  %12007 = call i64 @i64_load(ptr noundef %12004, i64 noundef %12006)
  store i64 %12007, ptr %49, align 8, !tbaa !11
  %12008 = load ptr, ptr %6, align 8, !tbaa !5
  %12009 = getelementptr inbounds %struct.w2c_hermes, ptr %12008, i32 0, i32 6
  %12010 = load i32, ptr %42, align 4, !tbaa !9
  %12011 = zext i32 %12010 to i64
  %12012 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12009, i64 noundef %12011, i64 noundef %12012)
  %12013 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12013, ptr %42, align 4, !tbaa !9
  %12014 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12014, ptr %43, align 4, !tbaa !9
  %12015 = load ptr, ptr %6, align 8, !tbaa !5
  %12016 = getelementptr inbounds %struct.w2c_hermes, ptr %12015, i32 0, i32 6
  %12017 = load i32, ptr %43, align 4, !tbaa !9
  %12018 = zext i32 %12017 to i64
  %12019 = add i64 %12018, 8
  %12020 = call i32 @i32_load(ptr noundef %12016, i64 noundef %12019)
  store i32 %12020, ptr %43, align 4, !tbaa !9
  %12021 = load ptr, ptr %6, align 8, !tbaa !5
  %12022 = getelementptr inbounds %struct.w2c_hermes, ptr %12021, i32 0, i32 6
  %12023 = load i32, ptr %42, align 4, !tbaa !9
  %12024 = zext i32 %12023 to i64
  %12025 = add i64 %12024, 8
  %12026 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12022, i64 noundef %12025, i32 noundef %12026)
  %12027 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12027, ptr %42, align 4, !tbaa !9
  %12028 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12028, ptr %43, align 4, !tbaa !9
  %12029 = load ptr, ptr %6, align 8, !tbaa !5
  %12030 = getelementptr inbounds %struct.w2c_hermes, ptr %12029, i32 0, i32 6
  %12031 = load i32, ptr %43, align 4, !tbaa !9
  %12032 = zext i32 %12031 to i64
  %12033 = add i64 %12032, 12
  %12034 = call i32 @i32_load(ptr noundef %12030, i64 noundef %12033)
  store i32 %12034, ptr %43, align 4, !tbaa !9
  %12035 = load ptr, ptr %6, align 8, !tbaa !5
  %12036 = getelementptr inbounds %struct.w2c_hermes, ptr %12035, i32 0, i32 6
  %12037 = load i32, ptr %42, align 4, !tbaa !9
  %12038 = zext i32 %12037 to i64
  %12039 = add i64 %12038, 12
  %12040 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12036, i64 noundef %12039, i32 noundef %12040)
  %12041 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12041, ptr %42, align 4, !tbaa !9
  %12042 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12042, ptr %43, align 4, !tbaa !9
  %12043 = load ptr, ptr %6, align 8, !tbaa !5
  %12044 = getelementptr inbounds %struct.w2c_hermes, ptr %12043, i32 0, i32 6
  %12045 = load i32, ptr %43, align 4, !tbaa !9
  %12046 = zext i32 %12045 to i64
  %12047 = add i64 %12046, 16
  %12048 = call i32 @i32_load(ptr noundef %12044, i64 noundef %12047)
  store i32 %12048, ptr %43, align 4, !tbaa !9
  %12049 = load ptr, ptr %6, align 8, !tbaa !5
  %12050 = getelementptr inbounds %struct.w2c_hermes, ptr %12049, i32 0, i32 6
  %12051 = load i32, ptr %42, align 4, !tbaa !9
  %12052 = zext i32 %12051 to i64
  %12053 = add i64 %12052, 16
  %12054 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12050, i64 noundef %12053, i32 noundef %12054)
  %12055 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12055, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %12056 = load ptr, ptr %6, align 8, !tbaa !5
  %12057 = getelementptr inbounds %struct.w2c_hermes, ptr %12056, i32 0, i32 6
  %12058 = load i32, ptr %42, align 4, !tbaa !9
  %12059 = zext i32 %12058 to i64
  %12060 = add i64 %12059, 16
  %12061 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12057, i64 noundef %12060, i32 noundef %12061)
  %12062 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12062, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %12063 = load ptr, ptr %6, align 8, !tbaa !5
  %12064 = getelementptr inbounds %struct.w2c_hermes, ptr %12063, i32 0, i32 6
  %12065 = load i32, ptr %42, align 4, !tbaa !9
  %12066 = zext i32 %12065 to i64
  %12067 = add i64 %12066, 8
  %12068 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12064, i64 noundef %12067, i64 noundef %12068)
  %12069 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12069, ptr %42, align 4, !tbaa !9
  %12070 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12070, ptr %43, align 4, !tbaa !9
  %12071 = load i32, ptr %42, align 4, !tbaa !9
  %12072 = load i32, ptr %43, align 4, !tbaa !9
  %12073 = icmp ne i32 %12071, %12072
  %12074 = zext i1 %12073 to i32
  store i32 %12074, ptr %42, align 4, !tbaa !9
  %12075 = load i32, ptr %42, align 4, !tbaa !9
  %12076 = icmp ne i32 %12075, 0
  br i1 %12076, label %12077, label %12078

12077:                                            ; preds = %11992
  br label %11992

12078:                                            ; preds = %11992
  br label %12079

12079:                                            ; preds = %12118, %12078
  %12080 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12080, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %12081 = load i32, ptr %43, align 4, !tbaa !9
  %12082 = load i32, ptr %42, align 4, !tbaa !9
  %12083 = sub i32 %12082, %12081
  store i32 %12083, ptr %42, align 4, !tbaa !9
  %12084 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12084, ptr %7, align 4, !tbaa !9
  %12085 = load ptr, ptr %6, align 8, !tbaa !5
  %12086 = getelementptr inbounds %struct.w2c_hermes, ptr %12085, i32 0, i32 6
  %12087 = load i32, ptr %42, align 4, !tbaa !9
  %12088 = zext i32 %12087 to i64
  %12089 = add i64 %12088, 8
  %12090 = call i32 @i32_load(ptr noundef %12086, i64 noundef %12089)
  store i32 %12090, ptr %42, align 4, !tbaa !9
  %12091 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12091, ptr %8, align 4, !tbaa !9
  %12092 = load i32, ptr %42, align 4, !tbaa !9
  %12093 = icmp ne i32 %12092, 0
  br i1 %12093, label %12094, label %12108

12094:                                            ; preds = %12079
  %12095 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12095, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %12096 = load i32, ptr %43, align 4, !tbaa !9
  %12097 = load i32, ptr %42, align 4, !tbaa !9
  %12098 = sub i32 %12097, %12096
  store i32 %12098, ptr %42, align 4, !tbaa !9
  %12099 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12099, ptr %43, align 4, !tbaa !9
  %12100 = load ptr, ptr %6, align 8, !tbaa !5
  %12101 = getelementptr inbounds %struct.w2c_hermes, ptr %12100, i32 0, i32 6
  %12102 = load i32, ptr %42, align 4, !tbaa !9
  %12103 = zext i32 %12102 to i64
  %12104 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12101, i64 noundef %12103, i32 noundef %12104)
  %12105 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12105, ptr %42, align 4, !tbaa !9
  %12106 = load ptr, ptr %6, align 8, !tbaa !5
  %12107 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %12106, i32 noundef %12107)
  br label %12108

12108:                                            ; preds = %12094, %12079
  %12109 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12109, ptr %42, align 4, !tbaa !9
  %12110 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12110, ptr %12, align 4, !tbaa !9
  %12111 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12111, ptr %43, align 4, !tbaa !9
  %12112 = load i32, ptr %42, align 4, !tbaa !9
  %12113 = load i32, ptr %43, align 4, !tbaa !9
  %12114 = icmp ne i32 %12112, %12113
  %12115 = zext i1 %12114 to i32
  store i32 %12115, ptr %42, align 4, !tbaa !9
  %12116 = load i32, ptr %42, align 4, !tbaa !9
  %12117 = icmp ne i32 %12116, 0
  br i1 %12117, label %12118, label %12119

12118:                                            ; preds = %12108
  br label %12079

12119:                                            ; preds = %12108
  %12120 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12120, ptr %42, align 4, !tbaa !9
  %12121 = load i32, ptr %42, align 4, !tbaa !9
  %12122 = icmp ne i32 %12121, 0
  %12123 = xor i1 %12122, true
  %12124 = zext i1 %12123 to i32
  store i32 %12124, ptr %42, align 4, !tbaa !9
  %12125 = load i32, ptr %42, align 4, !tbaa !9
  %12126 = icmp ne i32 %12125, 0
  br i1 %12126, label %12127, label %12128

12127:                                            ; preds = %12119
  br label %12133

12128:                                            ; preds = %12119
  br label %12129

12129:                                            ; preds = %12128, %11923
  %12130 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12130, ptr %42, align 4, !tbaa !9
  %12131 = load ptr, ptr %6, align 8, !tbaa !5
  %12132 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %12131, i32 noundef %12132)
  br label %12133

12133:                                            ; preds = %12129, %12127, %11750
  %12134 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12134, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %12135 = load i32, ptr %43, align 4, !tbaa !9
  %12136 = load i32, ptr %42, align 4, !tbaa !9
  %12137 = add i32 %12136, %12135
  store i32 %12137, ptr %42, align 4, !tbaa !9
  %12138 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12138, ptr %10, align 4, !tbaa !9
  %12139 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %12139, ptr %43, align 4, !tbaa !9
  %12140 = load i32, ptr %42, align 4, !tbaa !9
  %12141 = load i32, ptr %43, align 4, !tbaa !9
  %12142 = icmp eq i32 %12140, %12141
  %12143 = zext i1 %12142 to i32
  store i32 %12143, ptr %42, align 4, !tbaa !9
  %12144 = load i32, ptr %42, align 4, !tbaa !9
  %12145 = icmp ne i32 %12144, 0
  br i1 %12145, label %12146, label %12147

12146:                                            ; preds = %12133
  br label %12225

12147:                                            ; preds = %12133
  %12148 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12148, ptr %42, align 4, !tbaa !9
  %12149 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12149, ptr %7, align 4, !tbaa !9
  %12150 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12150, ptr %42, align 4, !tbaa !9
  %12151 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12151, ptr %15, align 4, !tbaa !9
  %12152 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12152, ptr %42, align 4, !tbaa !9
  %12153 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12153, ptr %12, align 4, !tbaa !9
  %12154 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12154, ptr %42, align 4, !tbaa !9
  %12155 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12155, ptr %13, align 4, !tbaa !9
  %12156 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12156, ptr %42, align 4, !tbaa !9
  %12157 = load ptr, ptr %6, align 8, !tbaa !5
  %12158 = getelementptr inbounds %struct.w2c_hermes, ptr %12157, i32 0, i32 6
  %12159 = load i32, ptr %42, align 4, !tbaa !9
  %12160 = zext i32 %12159 to i64
  %12161 = add i64 %12160, 32
  %12162 = call i32 @i32_load(ptr noundef %12158, i64 noundef %12161)
  store i32 %12162, ptr %42, align 4, !tbaa !9
  %12163 = load i32, ptr %42, align 4, !tbaa !9
  %12164 = icmp ne i32 %12163, 0
  br i1 %12164, label %12165, label %12166

12165:                                            ; preds = %12147
  br label %11696

12166:                                            ; preds = %12147
  br label %12167

12167:                                            ; preds = %12219, %12166
  %12168 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12168, ptr %42, align 4, !tbaa !9
  %12169 = load ptr, ptr %6, align 8, !tbaa !5
  %12170 = getelementptr inbounds %struct.w2c_hermes, ptr %12169, i32 0, i32 6
  %12171 = load i32, ptr %42, align 4, !tbaa !9
  %12172 = zext i32 %12171 to i64
  %12173 = call i64 @i64_load(ptr noundef %12170, i64 noundef %12172)
  store i64 %12173, ptr %48, align 8, !tbaa !11
  store i64 4294967295, ptr %49, align 8, !tbaa !11
  %12174 = load i64, ptr %48, align 8, !tbaa !11
  %12175 = load i64, ptr %49, align 8, !tbaa !11
  %12176 = icmp ugt i64 %12174, %12175
  %12177 = zext i1 %12176 to i32
  store i32 %12177, ptr %42, align 4, !tbaa !9
  %12178 = load i32, ptr %42, align 4, !tbaa !9
  %12179 = icmp ne i32 %12178, 0
  br i1 %12179, label %12180, label %12187

12180:                                            ; preds = %12167
  %12181 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12181, ptr %42, align 4, !tbaa !9
  %12182 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12182, ptr %15, align 4, !tbaa !9
  %12183 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12183, ptr %42, align 4, !tbaa !9
  %12184 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12184, ptr %12, align 4, !tbaa !9
  %12185 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12185, ptr %42, align 4, !tbaa !9
  %12186 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12186, ptr %13, align 4, !tbaa !9
  br label %11696

12187:                                            ; preds = %12167
  %12188 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12188, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %12189 = load i32, ptr %43, align 4, !tbaa !9
  %12190 = load i32, ptr %42, align 4, !tbaa !9
  %12191 = add i32 %12190, %12189
  store i32 %12191, ptr %42, align 4, !tbaa !9
  %12192 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12192, ptr %13, align 4, !tbaa !9
  %12193 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %12193, ptr %43, align 4, !tbaa !9
  %12194 = load i32, ptr %42, align 4, !tbaa !9
  %12195 = load i32, ptr %43, align 4, !tbaa !9
  %12196 = icmp eq i32 %12194, %12195
  %12197 = zext i1 %12196 to i32
  store i32 %12197, ptr %42, align 4, !tbaa !9
  %12198 = load i32, ptr %42, align 4, !tbaa !9
  %12199 = icmp ne i32 %12198, 0
  br i1 %12199, label %12200, label %12201

12200:                                            ; preds = %12187
  br label %12225

12201:                                            ; preds = %12187
  %12202 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12202, ptr %42, align 4, !tbaa !9
  %12203 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12203, ptr %7, align 4, !tbaa !9
  %12204 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12204, ptr %42, align 4, !tbaa !9
  %12205 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12205, ptr %10, align 4, !tbaa !9
  %12206 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12206, ptr %42, align 4, !tbaa !9
  %12207 = load ptr, ptr %6, align 8, !tbaa !5
  %12208 = getelementptr inbounds %struct.w2c_hermes, ptr %12207, i32 0, i32 6
  %12209 = load i32, ptr %42, align 4, !tbaa !9
  %12210 = zext i32 %12209 to i64
  %12211 = add i64 %12210, 32
  %12212 = call i32 @i32_load(ptr noundef %12208, i64 noundef %12211)
  store i32 %12212, ptr %42, align 4, !tbaa !9
  %12213 = load i32, ptr %42, align 4, !tbaa !9
  %12214 = icmp ne i32 %12213, 0
  %12215 = xor i1 %12214, true
  %12216 = zext i1 %12215 to i32
  store i32 %12216, ptr %42, align 4, !tbaa !9
  %12217 = load i32, ptr %42, align 4, !tbaa !9
  %12218 = icmp ne i32 %12217, 0
  br i1 %12218, label %12219, label %12220

12219:                                            ; preds = %12201
  br label %12167

12220:                                            ; preds = %12201
  %12221 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12221, ptr %42, align 4, !tbaa !9
  %12222 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12222, ptr %15, align 4, !tbaa !9
  %12223 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12223, ptr %42, align 4, !tbaa !9
  %12224 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12224, ptr %12, align 4, !tbaa !9
  br label %11696

12225:                                            ; preds = %12200, %12146
  %12226 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12226, ptr %42, align 4, !tbaa !9
  %12227 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12227, ptr %15, align 4, !tbaa !9
  br label %12228

12228:                                            ; preds = %12225, %11684, %11672
  %12229 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12229, ptr %42, align 4, !tbaa !9
  %12230 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12230, ptr %43, align 4, !tbaa !9
  %12231 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12231, ptr %44, align 4, !tbaa !9
  %12232 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12232, ptr %45, align 4, !tbaa !9
  %12233 = load i32, ptr %45, align 4, !tbaa !9
  %12234 = load i32, ptr %44, align 4, !tbaa !9
  %12235 = sub i32 %12234, %12233
  store i32 %12235, ptr %44, align 4, !tbaa !9
  store i32 20, ptr %45, align 4, !tbaa !9
  %12236 = load i32, ptr %45, align 4, !tbaa !9
  %12237 = icmp eq i32 %12236, 0
  %12238 = xor i1 %12237, true
  %12239 = xor i1 %12238, true
  %12240 = zext i1 %12239 to i32
  %12241 = sext i32 %12240 to i64
  %12242 = call i64 @llvm.expect.i64(i64 %12241, i64 0)
  %12243 = icmp ne i64 %12242, 0
  br i1 %12243, label %12244, label %12246

12244:                                            ; preds = %12228
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

12245:                                            ; No predecessors!
  br label %12268

12246:                                            ; preds = %12228
  %12247 = load i32, ptr %44, align 4, !tbaa !9
  %12248 = icmp eq i32 %12247, -2147483648
  br i1 %12248, label %12249, label %12252

12249:                                            ; preds = %12246
  %12250 = load i32, ptr %45, align 4, !tbaa !9
  %12251 = icmp eq i32 %12250, -1
  br label %12252

12252:                                            ; preds = %12249, %12246
  %12253 = phi i1 [ false, %12246 ], [ %12251, %12249 ]
  %12254 = xor i1 %12253, true
  %12255 = xor i1 %12254, true
  %12256 = zext i1 %12255 to i32
  %12257 = sext i32 %12256 to i64
  %12258 = call i64 @llvm.expect.i64(i64 %12257, i64 0)
  %12259 = icmp ne i64 %12258, 0
  br i1 %12259, label %12260, label %12262

12260:                                            ; preds = %12252
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

12261:                                            ; No predecessors!
  br label %12266

12262:                                            ; preds = %12252
  %12263 = load i32, ptr %44, align 4, !tbaa !9
  %12264 = load i32, ptr %45, align 4, !tbaa !9
  %12265 = sdiv i32 %12263, %12264
  br label %12266

12266:                                            ; preds = %12262, %12261
  %12267 = phi i32 [ 0, %12261 ], [ %12265, %12262 ]
  br label %12268

12268:                                            ; preds = %12266, %12245
  %12269 = phi i32 [ 0, %12245 ], [ %12267, %12266 ]
  store i32 %12269, ptr %44, align 4, !tbaa !9
  store i32 20, ptr %45, align 4, !tbaa !9
  %12270 = load i32, ptr %45, align 4, !tbaa !9
  %12271 = load i32, ptr %44, align 4, !tbaa !9
  %12272 = mul i32 %12271, %12270
  store i32 %12272, ptr %44, align 4, !tbaa !9
  %12273 = load i32, ptr %44, align 4, !tbaa !9
  %12274 = load i32, ptr %43, align 4, !tbaa !9
  %12275 = add i32 %12274, %12273
  store i32 %12275, ptr %43, align 4, !tbaa !9
  store i32 0, ptr %44, align 4, !tbaa !9
  %12276 = load ptr, ptr %6, align 8, !tbaa !5
  %12277 = load i32, ptr %42, align 4, !tbaa !9
  %12278 = load i32, ptr %43, align 4, !tbaa !9
  %12279 = load i32, ptr %44, align 4, !tbaa !9
  call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AradixQuicksort0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x200x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x20unsigned0x20long0x29(ptr noundef %12276, i32 noundef %12277, i32 noundef %12278, i32 noundef %12279)
  br label %12280

12280:                                            ; preds = %12268, %11591, %9400
  %12281 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12281, ptr %42, align 4, !tbaa !9
  %12282 = load i32, ptr %42, align 4, !tbaa !9
  %12283 = icmp ne i32 %12282, 0
  br i1 %12283, label %12284, label %12368

12284:                                            ; preds = %12280
  %12285 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %12285, ptr %42, align 4, !tbaa !9
  %12286 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12286, ptr %43, align 4, !tbaa !9
  store i32 24, ptr %44, align 4, !tbaa !9
  %12287 = load i32, ptr %44, align 4, !tbaa !9
  %12288 = load i32, ptr %43, align 4, !tbaa !9
  %12289 = mul i32 %12288, %12287
  store i32 %12289, ptr %43, align 4, !tbaa !9
  %12290 = load i32, ptr %43, align 4, !tbaa !9
  %12291 = load i32, ptr %42, align 4, !tbaa !9
  %12292 = add i32 %12291, %12290
  store i32 %12292, ptr %42, align 4, !tbaa !9
  %12293 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12293, ptr %7, align 4, !tbaa !9
  %12294 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %12294, ptr %42, align 4, !tbaa !9
  %12295 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12295, ptr %10, align 4, !tbaa !9
  br label %12296

12296:                                            ; preds = %12366, %12284
  %12297 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12297, ptr %42, align 4, !tbaa !9
  %12298 = load ptr, ptr %6, align 8, !tbaa !5
  %12299 = getelementptr inbounds %struct.w2c_hermes, ptr %12298, i32 0, i32 6
  %12300 = load i32, ptr %42, align 4, !tbaa !9
  %12301 = zext i32 %12300 to i64
  %12302 = add i64 %12301, 8
  %12303 = call i32 @i32_load(ptr noundef %12299, i64 noundef %12302)
  store i32 %12303, ptr %42, align 4, !tbaa !9
  %12304 = load i32, ptr %42, align 4, !tbaa !9
  %12305 = icmp ne i32 %12304, 0
  %12306 = xor i1 %12305, true
  %12307 = zext i1 %12306 to i32
  store i32 %12307, ptr %42, align 4, !tbaa !9
  %12308 = load i32, ptr %42, align 4, !tbaa !9
  %12309 = icmp ne i32 %12308, 0
  br i1 %12309, label %12310, label %12325

12310:                                            ; preds = %12296
  %12311 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12311, ptr %42, align 4, !tbaa !9
  %12312 = load ptr, ptr %6, align 8, !tbaa !5
  %12313 = getelementptr inbounds %struct.w2c_hermes, ptr %12312, i32 0, i32 6
  %12314 = load i32, ptr %42, align 4, !tbaa !9
  %12315 = zext i32 %12314 to i64
  %12316 = call i64 @i64_load(ptr noundef %12313, i64 noundef %12315)
  store i64 %12316, ptr %48, align 8, !tbaa !11
  store i64 4294967296, ptr %49, align 8, !tbaa !11
  %12317 = load i64, ptr %48, align 8, !tbaa !11
  %12318 = load i64, ptr %49, align 8, !tbaa !11
  %12319 = icmp ult i64 %12317, %12318
  %12320 = zext i1 %12319 to i32
  store i32 %12320, ptr %42, align 4, !tbaa !9
  %12321 = load i32, ptr %42, align 4, !tbaa !9
  %12322 = icmp ne i32 %12321, 0
  br i1 %12322, label %12323, label %12324

12323:                                            ; preds = %12310
  br label %12353

12324:                                            ; preds = %12310
  br label %12325

12325:                                            ; preds = %12324, %12296
  %12326 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12326, ptr %42, align 4, !tbaa !9
  %12327 = load ptr, ptr %6, align 8, !tbaa !5
  %12328 = getelementptr inbounds %struct.w2c_hermes, ptr %12327, i32 0, i32 6
  %12329 = load i32, ptr %42, align 4, !tbaa !9
  %12330 = zext i32 %12329 to i64
  %12331 = add i64 %12330, 12
  %12332 = call i32 @i32_load(ptr noundef %12328, i64 noundef %12331)
  store i32 %12332, ptr %42, align 4, !tbaa !9
  %12333 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12333, ptr %8, align 4, !tbaa !9
  %12334 = load i32, ptr %42, align 4, !tbaa !9
  %12335 = icmp ne i32 %12334, 0
  %12336 = xor i1 %12335, true
  %12337 = zext i1 %12336 to i32
  store i32 %12337, ptr %42, align 4, !tbaa !9
  %12338 = load i32, ptr %42, align 4, !tbaa !9
  %12339 = icmp ne i32 %12338, 0
  br i1 %12339, label %12340, label %12341

12340:                                            ; preds = %12325
  br label %12353

12341:                                            ; preds = %12325
  %12342 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12342, ptr %42, align 4, !tbaa !9
  %12343 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12343, ptr %43, align 4, !tbaa !9
  %12344 = load ptr, ptr %6, align 8, !tbaa !5
  %12345 = getelementptr inbounds %struct.w2c_hermes, ptr %12344, i32 0, i32 6
  %12346 = load i32, ptr %42, align 4, !tbaa !9
  %12347 = zext i32 %12346 to i64
  %12348 = add i64 %12347, 16
  %12349 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12345, i64 noundef %12348, i32 noundef %12349)
  %12350 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12350, ptr %42, align 4, !tbaa !9
  %12351 = load ptr, ptr %6, align 8, !tbaa !5
  %12352 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %12351, i32 noundef %12352)
  br label %12353

12353:                                            ; preds = %12341, %12340, %12323
  %12354 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12354, ptr %42, align 4, !tbaa !9
  store i32 24, ptr %43, align 4, !tbaa !9
  %12355 = load i32, ptr %43, align 4, !tbaa !9
  %12356 = load i32, ptr %42, align 4, !tbaa !9
  %12357 = add i32 %12356, %12355
  store i32 %12357, ptr %42, align 4, !tbaa !9
  %12358 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12358, ptr %10, align 4, !tbaa !9
  %12359 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12359, ptr %43, align 4, !tbaa !9
  %12360 = load i32, ptr %42, align 4, !tbaa !9
  %12361 = load i32, ptr %43, align 4, !tbaa !9
  %12362 = icmp ne i32 %12360, %12361
  %12363 = zext i1 %12362 to i32
  store i32 %12363, ptr %42, align 4, !tbaa !9
  %12364 = load i32, ptr %42, align 4, !tbaa !9
  %12365 = icmp ne i32 %12364, 0
  br i1 %12365, label %12366, label %12367

12366:                                            ; preds = %12353
  br label %12296

12367:                                            ; preds = %12353
  br label %12368

12368:                                            ; preds = %12367, %12280
  %12369 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %12369, ptr %42, align 4, !tbaa !9
  %12370 = load ptr, ptr %6, align 8, !tbaa !5
  %12371 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %12370, i32 noundef %12371)
  %12372 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %12372, ptr %42, align 4, !tbaa !9
  %12373 = load i32, ptr %42, align 4, !tbaa !9
  %12374 = icmp ne i32 %12373, 0
  br i1 %12374, label %12375, label %12376

12375:                                            ; preds = %12368
  br label %15321

12376:                                            ; preds = %12368
  %12377 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12377, ptr %42, align 4, !tbaa !9
  %12378 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12378, ptr %43, align 4, !tbaa !9
  %12379 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12379, ptr %44, align 4, !tbaa !9
  %12380 = load i32, ptr %44, align 4, !tbaa !9
  %12381 = load i32, ptr %43, align 4, !tbaa !9
  %12382 = sub i32 %12381, %12380
  store i32 %12382, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %12383 = load i32, ptr %44, align 4, !tbaa !9
  %12384 = icmp eq i32 %12383, 0
  %12385 = xor i1 %12384, true
  %12386 = xor i1 %12385, true
  %12387 = zext i1 %12386 to i32
  %12388 = sext i32 %12387 to i64
  %12389 = call i64 @llvm.expect.i64(i64 %12388, i64 0)
  %12390 = icmp ne i64 %12389, 0
  br i1 %12390, label %12391, label %12393

12391:                                            ; preds = %12376
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

12392:                                            ; No predecessors!
  br label %12415

12393:                                            ; preds = %12376
  %12394 = load i32, ptr %43, align 4, !tbaa !9
  %12395 = icmp eq i32 %12394, -2147483648
  br i1 %12395, label %12396, label %12399

12396:                                            ; preds = %12393
  %12397 = load i32, ptr %44, align 4, !tbaa !9
  %12398 = icmp eq i32 %12397, -1
  br label %12399

12399:                                            ; preds = %12396, %12393
  %12400 = phi i1 [ false, %12393 ], [ %12398, %12396 ]
  %12401 = xor i1 %12400, true
  %12402 = xor i1 %12401, true
  %12403 = zext i1 %12402 to i32
  %12404 = sext i32 %12403 to i64
  %12405 = call i64 @llvm.expect.i64(i64 %12404, i64 0)
  %12406 = icmp ne i64 %12405, 0
  br i1 %12406, label %12407, label %12409

12407:                                            ; preds = %12399
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

12408:                                            ; No predecessors!
  br label %12413

12409:                                            ; preds = %12399
  %12410 = load i32, ptr %43, align 4, !tbaa !9
  %12411 = load i32, ptr %44, align 4, !tbaa !9
  %12412 = sdiv i32 %12410, %12411
  br label %12413

12413:                                            ; preds = %12409, %12408
  %12414 = phi i32 [ 0, %12408 ], [ %12412, %12409 ]
  br label %12415

12415:                                            ; preds = %12413, %12392
  %12416 = phi i32 [ 0, %12392 ], [ %12414, %12413 ]
  store i32 %12416, ptr %43, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %12417 = load i32, ptr %44, align 4, !tbaa !9
  %12418 = load i32, ptr %43, align 4, !tbaa !9
  %12419 = mul i32 %12418, %12417
  store i32 %12419, ptr %43, align 4, !tbaa !9
  %12420 = load i32, ptr %43, align 4, !tbaa !9
  %12421 = load i32, ptr %42, align 4, !tbaa !9
  %12422 = add i32 %12421, %12420
  store i32 %12422, ptr %42, align 4, !tbaa !9
  %12423 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12423, ptr %8, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %12424 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12424, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %12425 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12425, ptr %21, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %12426 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12426, ptr %24, align 4, !tbaa !9
  %12427 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %12427, ptr %42, align 4, !tbaa !9
  %12428 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12428, ptr %11, align 4, !tbaa !9
  br label %12429

12429:                                            ; preds = %13793, %12415
  %12430 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12430, ptr %42, align 4, !tbaa !9
  %12431 = load ptr, ptr %6, align 8, !tbaa !5
  %12432 = getelementptr inbounds %struct.w2c_hermes, ptr %12431, i32 0, i32 6
  %12433 = load i32, ptr %42, align 4, !tbaa !9
  %12434 = zext i32 %12433 to i64
  %12435 = add i64 %12434, 8
  %12436 = call i32 @i32_load(ptr noundef %12432, i64 noundef %12435)
  store i32 %12436, ptr %42, align 4, !tbaa !9
  %12437 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12437, ptr %28, align 4, !tbaa !9
  %12438 = load i32, ptr %42, align 4, !tbaa !9
  %12439 = icmp ne i32 %12438, 0
  %12440 = xor i1 %12439, true
  %12441 = zext i1 %12440 to i32
  store i32 %12441, ptr %42, align 4, !tbaa !9
  %12442 = load i32, ptr %42, align 4, !tbaa !9
  %12443 = icmp ne i32 %12442, 0
  br i1 %12443, label %12444, label %12445

12444:                                            ; preds = %12429
  br label %13780

12445:                                            ; preds = %12429
  %12446 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12446, ptr %42, align 4, !tbaa !9
  %12447 = load ptr, ptr %6, align 8, !tbaa !5
  %12448 = getelementptr inbounds %struct.w2c_hermes, ptr %12447, i32 0, i32 6
  %12449 = load i32, ptr %42, align 4, !tbaa !9
  %12450 = zext i32 %12449 to i64
  %12451 = add i64 %12450, 4
  %12452 = call i32 @i32_load(ptr noundef %12448, i64 noundef %12451)
  store i32 %12452, ptr %42, align 4, !tbaa !9
  %12453 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12453, ptr %22, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %12454 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12454, ptr %18, align 4, !tbaa !9
  %12455 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12455, ptr %42, align 4, !tbaa !9
  %12456 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12456, ptr %25, align 4, !tbaa !9
  %12457 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12457, ptr %42, align 4, !tbaa !9
  %12458 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12458, ptr %14, align 4, !tbaa !9
  br label %12459

12459:                                            ; preds = %13778, %12445
  %12460 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %12460, ptr %42, align 4, !tbaa !9
  %12461 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12461, ptr %43, align 4, !tbaa !9
  %12462 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %12462, ptr %7, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %12463 = load i32, ptr %44, align 4, !tbaa !9
  %12464 = and i32 %12463, 31
  %12465 = load i32, ptr %43, align 4, !tbaa !9
  %12466 = shl i32 %12465, %12464
  store i32 %12466, ptr %43, align 4, !tbaa !9
  %12467 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %12467, ptr %18, align 4, !tbaa !9
  %12468 = load i32, ptr %43, align 4, !tbaa !9
  %12469 = load i32, ptr %42, align 4, !tbaa !9
  %12470 = add i32 %12469, %12468
  store i32 %12470, ptr %42, align 4, !tbaa !9
  %12471 = load ptr, ptr %6, align 8, !tbaa !5
  %12472 = getelementptr inbounds %struct.w2c_hermes, ptr %12471, i32 0, i32 6
  %12473 = load i32, ptr %42, align 4, !tbaa !9
  %12474 = zext i32 %12473 to i64
  %12475 = call i32 @i32_load16_u(ptr noundef %12472, i64 noundef %12474)
  store i32 %12475, ptr %42, align 4, !tbaa !9
  %12476 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12476, ptr %17, align 4, !tbaa !9
  %12477 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12477, ptr %42, align 4, !tbaa !9
  %12478 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12478, ptr %43, align 4, !tbaa !9
  %12479 = load i32, ptr %42, align 4, !tbaa !9
  %12480 = load i32, ptr %43, align 4, !tbaa !9
  %12481 = icmp ne i32 %12479, %12480
  %12482 = zext i1 %12481 to i32
  store i32 %12482, ptr %42, align 4, !tbaa !9
  %12483 = load i32, ptr %42, align 4, !tbaa !9
  %12484 = icmp ne i32 %12483, 0
  br i1 %12484, label %12485, label %12601

12485:                                            ; preds = %12459
  %12486 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12486, ptr %42, align 4, !tbaa !9
  %12487 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12487, ptr %43, align 4, !tbaa !9
  %12488 = load i32, ptr %43, align 4, !tbaa !9
  %12489 = load i32, ptr %42, align 4, !tbaa !9
  %12490 = sub i32 %12489, %12488
  store i32 %12490, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %12491 = load i32, ptr %43, align 4, !tbaa !9
  %12492 = icmp eq i32 %12491, 0
  %12493 = xor i1 %12492, true
  %12494 = xor i1 %12493, true
  %12495 = zext i1 %12494 to i32
  %12496 = sext i32 %12495 to i64
  %12497 = call i64 @llvm.expect.i64(i64 %12496, i64 0)
  %12498 = icmp ne i64 %12497, 0
  br i1 %12498, label %12499, label %12501

12499:                                            ; preds = %12485
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

12500:                                            ; No predecessors!
  br label %12523

12501:                                            ; preds = %12485
  %12502 = load i32, ptr %42, align 4, !tbaa !9
  %12503 = icmp eq i32 %12502, -2147483648
  br i1 %12503, label %12504, label %12507

12504:                                            ; preds = %12501
  %12505 = load i32, ptr %43, align 4, !tbaa !9
  %12506 = icmp eq i32 %12505, -1
  br label %12507

12507:                                            ; preds = %12504, %12501
  %12508 = phi i1 [ false, %12501 ], [ %12506, %12504 ]
  %12509 = xor i1 %12508, true
  %12510 = xor i1 %12509, true
  %12511 = zext i1 %12510 to i32
  %12512 = sext i32 %12511 to i64
  %12513 = call i64 @llvm.expect.i64(i64 %12512, i64 0)
  %12514 = icmp ne i64 %12513, 0
  br i1 %12514, label %12515, label %12517

12515:                                            ; preds = %12507
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

12516:                                            ; No predecessors!
  br label %12521

12517:                                            ; preds = %12507
  %12518 = load i32, ptr %42, align 4, !tbaa !9
  %12519 = load i32, ptr %43, align 4, !tbaa !9
  %12520 = sdiv i32 %12518, %12519
  br label %12521

12521:                                            ; preds = %12517, %12516
  %12522 = phi i32 [ 0, %12516 ], [ %12520, %12517 ]
  br label %12523

12523:                                            ; preds = %12521, %12500
  %12524 = phi i32 [ 0, %12500 ], [ %12522, %12521 ]
  store i32 %12524, ptr %42, align 4, !tbaa !9
  %12525 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12525, ptr %10, align 4, !tbaa !9
  br label %12526

12526:                                            ; preds = %12599, %12523
  %12527 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12527, ptr %42, align 4, !tbaa !9
  %12528 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12528, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %12529 = load i32, ptr %44, align 4, !tbaa !9
  %12530 = and i32 %12529, 31
  %12531 = load i32, ptr %43, align 4, !tbaa !9
  %12532 = lshr i32 %12531, %12530
  store i32 %12532, ptr %43, align 4, !tbaa !9
  %12533 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %12533, ptr %13, align 4, !tbaa !9
  store i32 20, ptr %44, align 4, !tbaa !9
  %12534 = load i32, ptr %44, align 4, !tbaa !9
  %12535 = load i32, ptr %43, align 4, !tbaa !9
  %12536 = mul i32 %12535, %12534
  store i32 %12536, ptr %43, align 4, !tbaa !9
  %12537 = load i32, ptr %43, align 4, !tbaa !9
  %12538 = load i32, ptr %42, align 4, !tbaa !9
  %12539 = add i32 %12538, %12537
  store i32 %12539, ptr %42, align 4, !tbaa !9
  %12540 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12540, ptr %12, align 4, !tbaa !9
  %12541 = load ptr, ptr %6, align 8, !tbaa !5
  %12542 = getelementptr inbounds %struct.w2c_hermes, ptr %12541, i32 0, i32 6
  %12543 = load i32, ptr %42, align 4, !tbaa !9
  %12544 = zext i32 %12543 to i64
  %12545 = add i64 %12544, 4
  %12546 = call i32 @i32_load(ptr noundef %12542, i64 noundef %12545)
  store i32 %12546, ptr %42, align 4, !tbaa !9
  %12547 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12547, ptr %43, align 4, !tbaa !9
  %12548 = load i32, ptr %42, align 4, !tbaa !9
  %12549 = load i32, ptr %43, align 4, !tbaa !9
  %12550 = icmp ule i32 %12548, %12549
  %12551 = zext i1 %12550 to i32
  store i32 %12551, ptr %42, align 4, !tbaa !9
  %12552 = load i32, ptr %42, align 4, !tbaa !9
  %12553 = icmp ne i32 %12552, 0
  br i1 %12553, label %12554, label %12555

12554:                                            ; preds = %12526
  br label %12581

12555:                                            ; preds = %12526
  %12556 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12556, ptr %42, align 4, !tbaa !9
  %12557 = load ptr, ptr %6, align 8, !tbaa !5
  %12558 = getelementptr inbounds %struct.w2c_hermes, ptr %12557, i32 0, i32 6
  %12559 = load i32, ptr %42, align 4, !tbaa !9
  %12560 = zext i32 %12559 to i64
  %12561 = call i32 @i32_load(ptr noundef %12558, i64 noundef %12560)
  store i32 %12561, ptr %42, align 4, !tbaa !9
  %12562 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12562, ptr %43, align 4, !tbaa !9
  %12563 = load i32, ptr %43, align 4, !tbaa !9
  %12564 = load i32, ptr %42, align 4, !tbaa !9
  %12565 = add i32 %12564, %12563
  store i32 %12565, ptr %42, align 4, !tbaa !9
  %12566 = load ptr, ptr %6, align 8, !tbaa !5
  %12567 = getelementptr inbounds %struct.w2c_hermes, ptr %12566, i32 0, i32 6
  %12568 = load i32, ptr %42, align 4, !tbaa !9
  %12569 = zext i32 %12568 to i64
  %12570 = call i32 @i32_load16_u(ptr noundef %12567, i64 noundef %12569)
  store i32 %12570, ptr %42, align 4, !tbaa !9
  %12571 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12571, ptr %43, align 4, !tbaa !9
  %12572 = load i32, ptr %42, align 4, !tbaa !9
  %12573 = load i32, ptr %43, align 4, !tbaa !9
  %12574 = icmp ult i32 %12572, %12573
  %12575 = zext i1 %12574 to i32
  store i32 %12575, ptr %42, align 4, !tbaa !9
  %12576 = load i32, ptr %42, align 4, !tbaa !9
  %12577 = icmp ne i32 %12576, 0
  br i1 %12577, label %12578, label %12579

12578:                                            ; preds = %12555
  br label %12581

12579:                                            ; preds = %12555
  %12580 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12580, ptr %42, align 4, !tbaa !9
  br label %12595

12581:                                            ; preds = %12578, %12554
  %12582 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12582, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %12583 = load i32, ptr %43, align 4, !tbaa !9
  %12584 = load i32, ptr %42, align 4, !tbaa !9
  %12585 = add i32 %12584, %12583
  store i32 %12585, ptr %42, align 4, !tbaa !9
  %12586 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12586, ptr %25, align 4, !tbaa !9
  %12587 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12587, ptr %42, align 4, !tbaa !9
  %12588 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12588, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %12589 = load i32, ptr %44, align 4, !tbaa !9
  %12590 = load i32, ptr %43, align 4, !tbaa !9
  %12591 = xor i32 %12590, %12589
  store i32 %12591, ptr %43, align 4, !tbaa !9
  %12592 = load i32, ptr %43, align 4, !tbaa !9
  %12593 = load i32, ptr %42, align 4, !tbaa !9
  %12594 = add i32 %12593, %12592
  store i32 %12594, ptr %42, align 4, !tbaa !9
  br label %12595

12595:                                            ; preds = %12581, %12579
  %12596 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12596, ptr %10, align 4, !tbaa !9
  %12597 = load i32, ptr %42, align 4, !tbaa !9
  %12598 = icmp ne i32 %12597, 0
  br i1 %12598, label %12599, label %12600

12599:                                            ; preds = %12595
  br label %12526

12600:                                            ; preds = %12595
  br label %12601

12601:                                            ; preds = %12600, %12459
  %12602 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12602, ptr %42, align 4, !tbaa !9
  %12603 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12603, ptr %43, align 4, !tbaa !9
  %12604 = load i32, ptr %42, align 4, !tbaa !9
  %12605 = load i32, ptr %43, align 4, !tbaa !9
  %12606 = icmp ne i32 %12604, %12605
  %12607 = zext i1 %12606 to i32
  store i32 %12607, ptr %42, align 4, !tbaa !9
  %12608 = load i32, ptr %42, align 4, !tbaa !9
  %12609 = icmp ne i32 %12608, 0
  br i1 %12609, label %12610, label %12728

12610:                                            ; preds = %12601
  %12611 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12611, ptr %42, align 4, !tbaa !9
  %12612 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12612, ptr %43, align 4, !tbaa !9
  %12613 = load i32, ptr %43, align 4, !tbaa !9
  %12614 = load i32, ptr %42, align 4, !tbaa !9
  %12615 = sub i32 %12614, %12613
  store i32 %12615, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %12616 = load i32, ptr %43, align 4, !tbaa !9
  %12617 = icmp eq i32 %12616, 0
  %12618 = xor i1 %12617, true
  %12619 = xor i1 %12618, true
  %12620 = zext i1 %12619 to i32
  %12621 = sext i32 %12620 to i64
  %12622 = call i64 @llvm.expect.i64(i64 %12621, i64 0)
  %12623 = icmp ne i64 %12622, 0
  br i1 %12623, label %12624, label %12626

12624:                                            ; preds = %12610
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

12625:                                            ; No predecessors!
  br label %12648

12626:                                            ; preds = %12610
  %12627 = load i32, ptr %42, align 4, !tbaa !9
  %12628 = icmp eq i32 %12627, -2147483648
  br i1 %12628, label %12629, label %12632

12629:                                            ; preds = %12626
  %12630 = load i32, ptr %43, align 4, !tbaa !9
  %12631 = icmp eq i32 %12630, -1
  br label %12632

12632:                                            ; preds = %12629, %12626
  %12633 = phi i1 [ false, %12626 ], [ %12631, %12629 ]
  %12634 = xor i1 %12633, true
  %12635 = xor i1 %12634, true
  %12636 = zext i1 %12635 to i32
  %12637 = sext i32 %12636 to i64
  %12638 = call i64 @llvm.expect.i64(i64 %12637, i64 0)
  %12639 = icmp ne i64 %12638, 0
  br i1 %12639, label %12640, label %12642

12640:                                            ; preds = %12632
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

12641:                                            ; No predecessors!
  br label %12646

12642:                                            ; preds = %12632
  %12643 = load i32, ptr %42, align 4, !tbaa !9
  %12644 = load i32, ptr %43, align 4, !tbaa !9
  %12645 = sdiv i32 %12643, %12644
  br label %12646

12646:                                            ; preds = %12642, %12641
  %12647 = phi i32 [ 0, %12641 ], [ %12645, %12642 ]
  br label %12648

12648:                                            ; preds = %12646, %12625
  %12649 = phi i32 [ 0, %12625 ], [ %12647, %12646 ]
  store i32 %12649, ptr %42, align 4, !tbaa !9
  %12650 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12650, ptr %10, align 4, !tbaa !9
  %12651 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12651, ptr %42, align 4, !tbaa !9
  %12652 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12652, ptr %14, align 4, !tbaa !9
  br label %12653

12653:                                            ; preds = %12726, %12648
  %12654 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12654, ptr %42, align 4, !tbaa !9
  %12655 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12655, ptr %43, align 4, !tbaa !9
  %12656 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12656, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %12657 = load i32, ptr %45, align 4, !tbaa !9
  %12658 = and i32 %12657, 31
  %12659 = load i32, ptr %44, align 4, !tbaa !9
  %12660 = lshr i32 %12659, %12658
  store i32 %12660, ptr %44, align 4, !tbaa !9
  %12661 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %12661, ptr %13, align 4, !tbaa !9
  store i32 20, ptr %45, align 4, !tbaa !9
  %12662 = load i32, ptr %45, align 4, !tbaa !9
  %12663 = load i32, ptr %44, align 4, !tbaa !9
  %12664 = mul i32 %12663, %12662
  store i32 %12664, ptr %44, align 4, !tbaa !9
  %12665 = load i32, ptr %44, align 4, !tbaa !9
  %12666 = load i32, ptr %43, align 4, !tbaa !9
  %12667 = add i32 %12666, %12665
  store i32 %12667, ptr %43, align 4, !tbaa !9
  %12668 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %12668, ptr %12, align 4, !tbaa !9
  %12669 = load ptr, ptr %6, align 8, !tbaa !5
  %12670 = getelementptr inbounds %struct.w2c_hermes, ptr %12669, i32 0, i32 6
  %12671 = load i32, ptr %43, align 4, !tbaa !9
  %12672 = zext i32 %12671 to i64
  %12673 = add i64 %12672, 4
  %12674 = call i32 @i32_load(ptr noundef %12670, i64 noundef %12673)
  store i32 %12674, ptr %43, align 4, !tbaa !9
  %12675 = load i32, ptr %42, align 4, !tbaa !9
  %12676 = load i32, ptr %43, align 4, !tbaa !9
  %12677 = icmp uge i32 %12675, %12676
  %12678 = zext i1 %12677 to i32
  store i32 %12678, ptr %42, align 4, !tbaa !9
  %12679 = load i32, ptr %42, align 4, !tbaa !9
  %12680 = icmp ne i32 %12679, 0
  br i1 %12680, label %12681, label %12683

12681:                                            ; preds = %12653
  %12682 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12682, ptr %42, align 4, !tbaa !9
  br label %12722

12683:                                            ; preds = %12653
  %12684 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12684, ptr %42, align 4, !tbaa !9
  %12685 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12685, ptr %43, align 4, !tbaa !9
  %12686 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12686, ptr %44, align 4, !tbaa !9
  %12687 = load ptr, ptr %6, align 8, !tbaa !5
  %12688 = getelementptr inbounds %struct.w2c_hermes, ptr %12687, i32 0, i32 6
  %12689 = load i32, ptr %44, align 4, !tbaa !9
  %12690 = zext i32 %12689 to i64
  %12691 = call i32 @i32_load(ptr noundef %12688, i64 noundef %12690)
  store i32 %12691, ptr %44, align 4, !tbaa !9
  %12692 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12692, ptr %45, align 4, !tbaa !9
  %12693 = load i32, ptr %45, align 4, !tbaa !9
  %12694 = load i32, ptr %44, align 4, !tbaa !9
  %12695 = add i32 %12694, %12693
  store i32 %12695, ptr %44, align 4, !tbaa !9
  %12696 = load ptr, ptr %6, align 8, !tbaa !5
  %12697 = getelementptr inbounds %struct.w2c_hermes, ptr %12696, i32 0, i32 6
  %12698 = load i32, ptr %44, align 4, !tbaa !9
  %12699 = zext i32 %12698 to i64
  %12700 = call i32 @i32_load16_u(ptr noundef %12697, i64 noundef %12699)
  store i32 %12700, ptr %44, align 4, !tbaa !9
  %12701 = load i32, ptr %43, align 4, !tbaa !9
  %12702 = load i32, ptr %44, align 4, !tbaa !9
  %12703 = icmp ne i32 %12701, %12702
  %12704 = zext i1 %12703 to i32
  store i32 %12704, ptr %43, align 4, !tbaa !9
  %12705 = load i32, ptr %43, align 4, !tbaa !9
  %12706 = icmp ne i32 %12705, 0
  br i1 %12706, label %12707, label %12708

12707:                                            ; preds = %12683
  br label %12722

12708:                                            ; preds = %12683
  %12709 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12709, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %12710 = load i32, ptr %43, align 4, !tbaa !9
  %12711 = load i32, ptr %42, align 4, !tbaa !9
  %12712 = add i32 %12711, %12710
  store i32 %12712, ptr %42, align 4, !tbaa !9
  %12713 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12713, ptr %14, align 4, !tbaa !9
  %12714 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12714, ptr %42, align 4, !tbaa !9
  %12715 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12715, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %12716 = load i32, ptr %44, align 4, !tbaa !9
  %12717 = load i32, ptr %43, align 4, !tbaa !9
  %12718 = xor i32 %12717, %12716
  store i32 %12718, ptr %43, align 4, !tbaa !9
  %12719 = load i32, ptr %43, align 4, !tbaa !9
  %12720 = load i32, ptr %42, align 4, !tbaa !9
  %12721 = add i32 %12720, %12719
  store i32 %12721, ptr %42, align 4, !tbaa !9
  br label %12722

12722:                                            ; preds = %12708, %12707, %12681
  %12723 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12723, ptr %10, align 4, !tbaa !9
  %12724 = load i32, ptr %42, align 4, !tbaa !9
  %12725 = icmp ne i32 %12724, 0
  br i1 %12725, label %12726, label %12727

12726:                                            ; preds = %12722
  br label %12653

12727:                                            ; preds = %12722
  br label %12728

12728:                                            ; preds = %12727, %12601
  %12729 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12729, ptr %42, align 4, !tbaa !9
  %12730 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12730, ptr %43, align 4, !tbaa !9
  %12731 = load i32, ptr %42, align 4, !tbaa !9
  %12732 = load i32, ptr %43, align 4, !tbaa !9
  %12733 = icmp eq i32 %12731, %12732
  %12734 = zext i1 %12733 to i32
  store i32 %12734, ptr %42, align 4, !tbaa !9
  %12735 = load i32, ptr %42, align 4, !tbaa !9
  %12736 = icmp ne i32 %12735, 0
  br i1 %12736, label %12737, label %12738

12737:                                            ; preds = %12728
  br label %13780

12738:                                            ; preds = %12728
  %12739 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %12739, ptr %42, align 4, !tbaa !9
  %12740 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12740, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %12741 = load i32, ptr %44, align 4, !tbaa !9
  %12742 = load i32, ptr %43, align 4, !tbaa !9
  %12743 = add i32 %12742, %12741
  store i32 %12743, ptr %43, align 4, !tbaa !9
  %12744 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %12744, ptr %18, align 4, !tbaa !9
  %12745 = load i32, ptr %42, align 4, !tbaa !9
  %12746 = load i32, ptr %43, align 4, !tbaa !9
  %12747 = icmp ule i32 %12745, %12746
  %12748 = zext i1 %12747 to i32
  store i32 %12748, ptr %42, align 4, !tbaa !9
  %12749 = load i32, ptr %42, align 4, !tbaa !9
  %12750 = icmp ne i32 %12749, 0
  br i1 %12750, label %12751, label %12898

12751:                                            ; preds = %12738
  %12752 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12752, ptr %42, align 4, !tbaa !9
  %12753 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12753, ptr %16, align 4, !tbaa !9
  %12754 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12754, ptr %43, align 4, !tbaa !9
  %12755 = load i32, ptr %42, align 4, !tbaa !9
  %12756 = load i32, ptr %43, align 4, !tbaa !9
  %12757 = icmp uge i32 %12755, %12756
  %12758 = zext i1 %12757 to i32
  store i32 %12758, ptr %42, align 4, !tbaa !9
  %12759 = load i32, ptr %42, align 4, !tbaa !9
  %12760 = icmp ne i32 %12759, 0
  br i1 %12760, label %12761, label %12762

12761:                                            ; preds = %12751
  br label %13769

12762:                                            ; preds = %12751
  br label %12763

12763:                                            ; preds = %12896, %12762
  %12764 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12764, ptr %42, align 4, !tbaa !9
  %12765 = load ptr, ptr %6, align 8, !tbaa !5
  %12766 = getelementptr inbounds %struct.w2c_hermes, ptr %12765, i32 0, i32 6
  %12767 = load i32, ptr %42, align 4, !tbaa !9
  %12768 = zext i32 %12767 to i64
  %12769 = add i64 %12768, 8
  %12770 = call i32 @i32_load(ptr noundef %12766, i64 noundef %12769)
  store i32 %12770, ptr %42, align 4, !tbaa !9
  %12771 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12771, ptr %10, align 4, !tbaa !9
  %12772 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12772, ptr %43, align 4, !tbaa !9
  %12773 = load ptr, ptr %6, align 8, !tbaa !5
  %12774 = getelementptr inbounds %struct.w2c_hermes, ptr %12773, i32 0, i32 6
  %12775 = load i32, ptr %43, align 4, !tbaa !9
  %12776 = zext i32 %12775 to i64
  %12777 = add i64 %12776, 12
  %12778 = call i32 @i32_load(ptr noundef %12774, i64 noundef %12777)
  store i32 %12778, ptr %43, align 4, !tbaa !9
  %12779 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %12779, ptr %12, align 4, !tbaa !9
  %12780 = load i32, ptr %42, align 4, !tbaa !9
  %12781 = load i32, ptr %43, align 4, !tbaa !9
  %12782 = icmp ne i32 %12780, %12781
  %12783 = zext i1 %12782 to i32
  store i32 %12783, ptr %42, align 4, !tbaa !9
  %12784 = load i32, ptr %42, align 4, !tbaa !9
  %12785 = icmp ne i32 %12784, 0
  br i1 %12785, label %12786, label %12883

12786:                                            ; preds = %12763
  br label %12787

12787:                                            ; preds = %12881, %12786
  %12788 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12788, ptr %42, align 4, !tbaa !9
  %12789 = load ptr, ptr %6, align 8, !tbaa !5
  %12790 = getelementptr inbounds %struct.w2c_hermes, ptr %12789, i32 0, i32 6
  %12791 = load i32, ptr %42, align 4, !tbaa !9
  %12792 = zext i32 %12791 to i64
  %12793 = call i32 @i32_load(ptr noundef %12790, i64 noundef %12792)
  store i32 %12793, ptr %42, align 4, !tbaa !9
  %12794 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12794, ptr %13, align 4, !tbaa !9
  %12795 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12795, ptr %43, align 4, !tbaa !9
  %12796 = load i32, ptr %42, align 4, !tbaa !9
  %12797 = load i32, ptr %43, align 4, !tbaa !9
  %12798 = icmp eq i32 %12796, %12797
  %12799 = zext i1 %12798 to i32
  store i32 %12799, ptr %42, align 4, !tbaa !9
  %12800 = load i32, ptr %42, align 4, !tbaa !9
  %12801 = icmp ne i32 %12800, 0
  br i1 %12801, label %12802, label %12803

12802:                                            ; preds = %12787
  br label %12868

12803:                                            ; preds = %12787
  %12804 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12804, ptr %42, align 4, !tbaa !9
  %12805 = load ptr, ptr %6, align 8, !tbaa !5
  %12806 = getelementptr inbounds %struct.w2c_hermes, ptr %12805, i32 0, i32 6
  %12807 = load i32, ptr %42, align 4, !tbaa !9
  %12808 = zext i32 %12807 to i64
  %12809 = add i64 %12808, 16
  %12810 = call i32 @i32_load(ptr noundef %12806, i64 noundef %12809)
  store i32 %12810, ptr %42, align 4, !tbaa !9
  %12811 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12811, ptr %7, align 4, !tbaa !9
  %12812 = load i32, ptr %42, align 4, !tbaa !9
  %12813 = icmp ne i32 %12812, 0
  br i1 %12813, label %12814, label %12835

12814:                                            ; preds = %12803
  %12815 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12815, ptr %42, align 4, !tbaa !9
  %12816 = load ptr, ptr %6, align 8, !tbaa !5
  %12817 = getelementptr inbounds %struct.w2c_hermes, ptr %12816, i32 0, i32 6
  %12818 = load i32, ptr %42, align 4, !tbaa !9
  %12819 = zext i32 %12818 to i64
  %12820 = call i32 @i32_load(ptr noundef %12817, i64 noundef %12819)
  store i32 %12820, ptr %42, align 4, !tbaa !9
  %12821 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12821, ptr %43, align 4, !tbaa !9
  %12822 = load ptr, ptr %6, align 8, !tbaa !5
  %12823 = getelementptr inbounds %struct.w2c_hermes, ptr %12822, i32 0, i32 6
  %12824 = load i32, ptr %43, align 4, !tbaa !9
  %12825 = zext i32 %12824 to i64
  %12826 = call i32 @i32_load(ptr noundef %12823, i64 noundef %12825)
  store i32 %12826, ptr %43, align 4, !tbaa !9
  %12827 = load i32, ptr %42, align 4, !tbaa !9
  %12828 = load i32, ptr %43, align 4, !tbaa !9
  %12829 = icmp ult i32 %12827, %12828
  %12830 = zext i1 %12829 to i32
  store i32 %12830, ptr %42, align 4, !tbaa !9
  %12831 = load i32, ptr %42, align 4, !tbaa !9
  %12832 = icmp ne i32 %12831, 0
  br i1 %12832, label %12833, label %12834

12833:                                            ; preds = %12814
  br label %12868

12834:                                            ; preds = %12814
  br label %12835

12835:                                            ; preds = %12834, %12803
  %12836 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12836, ptr %42, align 4, !tbaa !9
  %12837 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12837, ptr %43, align 4, !tbaa !9
  %12838 = load ptr, ptr %6, align 8, !tbaa !5
  %12839 = getelementptr inbounds %struct.w2c_hermes, ptr %12838, i32 0, i32 6
  %12840 = load i32, ptr %42, align 4, !tbaa !9
  %12841 = zext i32 %12840 to i64
  %12842 = add i64 %12841, 16
  %12843 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12839, i64 noundef %12842, i32 noundef %12843)
  %12844 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12844, ptr %42, align 4, !tbaa !9
  %12845 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12845, ptr %43, align 4, !tbaa !9
  %12846 = load ptr, ptr %6, align 8, !tbaa !5
  %12847 = getelementptr inbounds %struct.w2c_hermes, ptr %12846, i32 0, i32 6
  %12848 = load i32, ptr %43, align 4, !tbaa !9
  %12849 = zext i32 %12848 to i64
  %12850 = add i64 %12849, 8
  %12851 = call i32 @i32_load(ptr noundef %12847, i64 noundef %12850)
  store i32 %12851, ptr %43, align 4, !tbaa !9
  %12852 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12852, ptr %44, align 4, !tbaa !9
  %12853 = load ptr, ptr %6, align 8, !tbaa !5
  %12854 = getelementptr inbounds %struct.w2c_hermes, ptr %12853, i32 0, i32 6
  %12855 = load i32, ptr %44, align 4, !tbaa !9
  %12856 = zext i32 %12855 to i64
  %12857 = add i64 %12856, 4
  %12858 = call i32 @i32_load(ptr noundef %12854, i64 noundef %12857)
  store i32 %12858, ptr %44, align 4, !tbaa !9
  %12859 = load i32, ptr %44, align 4, !tbaa !9
  %12860 = load i32, ptr %43, align 4, !tbaa !9
  %12861 = sub i32 %12860, %12859
  store i32 %12861, ptr %43, align 4, !tbaa !9
  %12862 = load ptr, ptr %6, align 8, !tbaa !5
  %12863 = getelementptr inbounds %struct.w2c_hermes, ptr %12862, i32 0, i32 6
  %12864 = load i32, ptr %42, align 4, !tbaa !9
  %12865 = zext i32 %12864 to i64
  %12866 = add i64 %12865, 20
  %12867 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12863, i64 noundef %12866, i32 noundef %12867)
  br label %12868

12868:                                            ; preds = %12835, %12833, %12802
  %12869 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12869, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %12870 = load i32, ptr %43, align 4, !tbaa !9
  %12871 = load i32, ptr %42, align 4, !tbaa !9
  %12872 = add i32 %12871, %12870
  store i32 %12872, ptr %42, align 4, !tbaa !9
  %12873 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12873, ptr %10, align 4, !tbaa !9
  %12874 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12874, ptr %43, align 4, !tbaa !9
  %12875 = load i32, ptr %42, align 4, !tbaa !9
  %12876 = load i32, ptr %43, align 4, !tbaa !9
  %12877 = icmp ne i32 %12875, %12876
  %12878 = zext i1 %12877 to i32
  store i32 %12878, ptr %42, align 4, !tbaa !9
  %12879 = load i32, ptr %42, align 4, !tbaa !9
  %12880 = icmp ne i32 %12879, 0
  br i1 %12880, label %12881, label %12882

12881:                                            ; preds = %12868
  br label %12787

12882:                                            ; preds = %12868
  br label %12883

12883:                                            ; preds = %12882, %12763
  %12884 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12884, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %12885 = load i32, ptr %43, align 4, !tbaa !9
  %12886 = load i32, ptr %42, align 4, !tbaa !9
  %12887 = add i32 %12886, %12885
  store i32 %12887, ptr %42, align 4, !tbaa !9
  %12888 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12888, ptr %16, align 4, !tbaa !9
  %12889 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12889, ptr %43, align 4, !tbaa !9
  %12890 = load i32, ptr %42, align 4, !tbaa !9
  %12891 = load i32, ptr %43, align 4, !tbaa !9
  %12892 = icmp ult i32 %12890, %12891
  %12893 = zext i1 %12892 to i32
  store i32 %12893, ptr %42, align 4, !tbaa !9
  %12894 = load i32, ptr %42, align 4, !tbaa !9
  %12895 = icmp ne i32 %12894, 0
  br i1 %12895, label %12896, label %12897

12896:                                            ; preds = %12883
  br label %12763

12897:                                            ; preds = %12883
  br label %13769

12898:                                            ; preds = %12738
  %12899 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12899, ptr %42, align 4, !tbaa !9
  %12900 = load ptr, ptr %6, align 8, !tbaa !5
  %12901 = getelementptr inbounds %struct.w2c_hermes, ptr %12900, i32 0, i32 6
  %12902 = load i32, ptr %42, align 4, !tbaa !9
  %12903 = zext i32 %12902 to i64
  %12904 = add i64 %12903, 4
  %12905 = call i32 @i32_load(ptr noundef %12901, i64 noundef %12904)
  store i32 %12905, ptr %42, align 4, !tbaa !9
  %12906 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12906, ptr %43, align 4, !tbaa !9
  %12907 = load i32, ptr %42, align 4, !tbaa !9
  %12908 = load i32, ptr %43, align 4, !tbaa !9
  %12909 = icmp ne i32 %12907, %12908
  %12910 = zext i1 %12909 to i32
  store i32 %12910, ptr %42, align 4, !tbaa !9
  %12911 = load i32, ptr %42, align 4, !tbaa !9
  %12912 = icmp ne i32 %12911, 0
  br i1 %12912, label %12913, label %12914

12913:                                            ; preds = %12898
  br label %13769

12914:                                            ; preds = %12898
  %12915 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %12915, ptr %42, align 4, !tbaa !9
  %12916 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %12916, ptr %43, align 4, !tbaa !9
  %12917 = load i32, ptr %43, align 4, !tbaa !9
  %12918 = load i32, ptr %42, align 4, !tbaa !9
  %12919 = sub i32 %12918, %12917
  store i32 %12919, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %12920 = load i32, ptr %43, align 4, !tbaa !9
  %12921 = icmp eq i32 %12920, 0
  %12922 = xor i1 %12921, true
  %12923 = xor i1 %12922, true
  %12924 = zext i1 %12923 to i32
  %12925 = sext i32 %12924 to i64
  %12926 = call i64 @llvm.expect.i64(i64 %12925, i64 0)
  %12927 = icmp ne i64 %12926, 0
  br i1 %12927, label %12928, label %12930

12928:                                            ; preds = %12914
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

12929:                                            ; No predecessors!
  br label %12952

12930:                                            ; preds = %12914
  %12931 = load i32, ptr %42, align 4, !tbaa !9
  %12932 = icmp eq i32 %12931, -2147483648
  br i1 %12932, label %12933, label %12936

12933:                                            ; preds = %12930
  %12934 = load i32, ptr %43, align 4, !tbaa !9
  %12935 = icmp eq i32 %12934, -1
  br label %12936

12936:                                            ; preds = %12933, %12930
  %12937 = phi i1 [ false, %12930 ], [ %12935, %12933 ]
  %12938 = xor i1 %12937, true
  %12939 = xor i1 %12938, true
  %12940 = zext i1 %12939 to i32
  %12941 = sext i32 %12940 to i64
  %12942 = call i64 @llvm.expect.i64(i64 %12941, i64 0)
  %12943 = icmp ne i64 %12942, 0
  br i1 %12943, label %12944, label %12946

12944:                                            ; preds = %12936
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

12945:                                            ; No predecessors!
  br label %12950

12946:                                            ; preds = %12936
  %12947 = load i32, ptr %42, align 4, !tbaa !9
  %12948 = load i32, ptr %43, align 4, !tbaa !9
  %12949 = sdiv i32 %12947, %12948
  br label %12950

12950:                                            ; preds = %12946, %12945
  %12951 = phi i32 [ 0, %12945 ], [ %12949, %12946 ]
  br label %12952

12952:                                            ; preds = %12950, %12929
  %12953 = phi i32 [ 0, %12929 ], [ %12951, %12950 ]
  store i32 %12953, ptr %42, align 4, !tbaa !9
  %12954 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12954, ptr %13, align 4, !tbaa !9
  %12955 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12955, ptr %43, align 4, !tbaa !9
  %12956 = load i32, ptr %42, align 4, !tbaa !9
  %12957 = load i32, ptr %43, align 4, !tbaa !9
  %12958 = icmp ugt i32 %12956, %12957
  %12959 = zext i1 %12958 to i32
  store i32 %12959, ptr %42, align 4, !tbaa !9
  %12960 = load i32, ptr %42, align 4, !tbaa !9
  %12961 = icmp ne i32 %12960, 0
  br i1 %12961, label %12962, label %12963

12962:                                            ; preds = %12952
  br label %13441

12963:                                            ; preds = %12952
  %12964 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12964, ptr %42, align 4, !tbaa !9
  %12965 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12965, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %12966 = load i32, ptr %44, align 4, !tbaa !9
  %12967 = load i32, ptr %43, align 4, !tbaa !9
  %12968 = add i32 %12967, %12966
  store i32 %12968, ptr %43, align 4, !tbaa !9
  %12969 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %12969, ptr %17, align 4, !tbaa !9
  %12970 = load i32, ptr %42, align 4, !tbaa !9
  %12971 = load i32, ptr %43, align 4, !tbaa !9
  %12972 = icmp ult i32 %12970, %12971
  %12973 = zext i1 %12972 to i32
  store i32 %12973, ptr %42, align 4, !tbaa !9
  %12974 = load i32, ptr %42, align 4, !tbaa !9
  %12975 = icmp ne i32 %12974, 0
  br i1 %12975, label %12976, label %13370

12976:                                            ; preds = %12963
  %12977 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12977, ptr %42, align 4, !tbaa !9
  %12978 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12978, ptr %43, align 4, !tbaa !9
  %12979 = load i32, ptr %43, align 4, !tbaa !9
  %12980 = load i32, ptr %42, align 4, !tbaa !9
  %12981 = sub i32 %12980, %12979
  store i32 %12981, ptr %42, align 4, !tbaa !9
  %12982 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %12982, ptr %12, align 4, !tbaa !9
  %12983 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %12983, ptr %43, align 4, !tbaa !9
  %12984 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %12984, ptr %44, align 4, !tbaa !9
  %12985 = load i32, ptr %44, align 4, !tbaa !9
  %12986 = load i32, ptr %43, align 4, !tbaa !9
  %12987 = sub i32 %12986, %12985
  store i32 %12987, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %12988 = load i32, ptr %44, align 4, !tbaa !9
  %12989 = icmp eq i32 %12988, 0
  %12990 = xor i1 %12989, true
  %12991 = xor i1 %12990, true
  %12992 = zext i1 %12991 to i32
  %12993 = sext i32 %12992 to i64
  %12994 = call i64 @llvm.expect.i64(i64 %12993, i64 0)
  %12995 = icmp ne i64 %12994, 0
  br i1 %12995, label %12996, label %12998

12996:                                            ; preds = %12976
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

12997:                                            ; No predecessors!
  br label %13020

12998:                                            ; preds = %12976
  %12999 = load i32, ptr %43, align 4, !tbaa !9
  %13000 = icmp eq i32 %12999, -2147483648
  br i1 %13000, label %13001, label %13004

13001:                                            ; preds = %12998
  %13002 = load i32, ptr %44, align 4, !tbaa !9
  %13003 = icmp eq i32 %13002, -1
  br label %13004

13004:                                            ; preds = %13001, %12998
  %13005 = phi i1 [ false, %12998 ], [ %13003, %13001 ]
  %13006 = xor i1 %13005, true
  %13007 = xor i1 %13006, true
  %13008 = zext i1 %13007 to i32
  %13009 = sext i32 %13008 to i64
  %13010 = call i64 @llvm.expect.i64(i64 %13009, i64 0)
  %13011 = icmp ne i64 %13010, 0
  br i1 %13011, label %13012, label %13014

13012:                                            ; preds = %13004
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

13013:                                            ; No predecessors!
  br label %13018

13014:                                            ; preds = %13004
  %13015 = load i32, ptr %43, align 4, !tbaa !9
  %13016 = load i32, ptr %44, align 4, !tbaa !9
  %13017 = sdiv i32 %13015, %13016
  br label %13018

13018:                                            ; preds = %13014, %13013
  %13019 = phi i32 [ 0, %13013 ], [ %13017, %13014 ]
  br label %13020

13020:                                            ; preds = %13018, %12997
  %13021 = phi i32 [ 0, %12997 ], [ %13019, %13018 ]
  store i32 %13021, ptr %43, align 4, !tbaa !9
  %13022 = load i32, ptr %42, align 4, !tbaa !9
  %13023 = load i32, ptr %43, align 4, !tbaa !9
  %13024 = icmp ule i32 %13022, %13023
  %13025 = zext i1 %13024 to i32
  store i32 %13025, ptr %42, align 4, !tbaa !9
  %13026 = load i32, ptr %42, align 4, !tbaa !9
  %13027 = icmp ne i32 %13026, 0
  br i1 %13027, label %13028, label %13072

13028:                                            ; preds = %13020
  %13029 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13029, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %13030 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13030, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %13031 = load i32, ptr %45, align 4, !tbaa !9
  %13032 = load i32, ptr %44, align 4, !tbaa !9
  %13033 = mul i32 %13032, %13031
  store i32 %13033, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %13034 = load i32, ptr %45, align 4, !tbaa !9
  %13035 = load i32, ptr %44, align 4, !tbaa !9
  %13036 = sub i32 %13035, %13034
  store i32 %13036, ptr %44, align 4, !tbaa !9
  %13037 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %13037, ptr %7, align 4, !tbaa !9
  %13038 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13038, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %13039 = load i32, ptr %46, align 4, !tbaa !9
  %13040 = icmp eq i32 %13039, 0
  %13041 = xor i1 %13040, true
  %13042 = xor i1 %13041, true
  %13043 = zext i1 %13042 to i32
  %13044 = sext i32 %13043 to i64
  %13045 = call i64 @llvm.expect.i64(i64 %13044, i64 0)
  %13046 = icmp ne i64 %13045, 0
  br i1 %13046, label %13047, label %13049

13047:                                            ; preds = %13028
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

13048:                                            ; No predecessors!
  br label %13053

13049:                                            ; preds = %13028
  %13050 = load i32, ptr %45, align 4, !tbaa !9
  %13051 = load i32, ptr %46, align 4, !tbaa !9
  %13052 = urem i32 %13050, %13051
  br label %13053

13053:                                            ; preds = %13049, %13048
  %13054 = phi i32 [ 0, %13048 ], [ %13052, %13049 ]
  store i32 %13054, ptr %45, align 4, !tbaa !9
  %13055 = load i32, ptr %45, align 4, !tbaa !9
  %13056 = load i32, ptr %44, align 4, !tbaa !9
  %13057 = sub i32 %13056, %13055
  store i32 %13057, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %13058 = load i32, ptr %45, align 4, !tbaa !9
  %13059 = load i32, ptr %44, align 4, !tbaa !9
  %13060 = add i32 %13059, %13058
  store i32 %13060, ptr %44, align 4, !tbaa !9
  %13061 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %13061, ptr %7, align 4, !tbaa !9
  %13062 = load ptr, ptr %6, align 8, !tbaa !5
  %13063 = load i32, ptr %42, align 4, !tbaa !9
  %13064 = load i32, ptr %43, align 4, !tbaa !9
  %13065 = load i32, ptr %44, align 4, !tbaa !9
  %13066 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %13062, i32 noundef %13063, i32 noundef %13064, i32 noundef %13065)
  store i32 %13066, ptr %42, align 4, !tbaa !9
  %13067 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13067, ptr %43, align 4, !tbaa !9
  %13068 = load i32, ptr %43, align 4, !tbaa !9
  %13069 = load i32, ptr %42, align 4, !tbaa !9
  %13070 = add i32 %13069, %13068
  store i32 %13070, ptr %42, align 4, !tbaa !9
  %13071 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13071, ptr %19, align 4, !tbaa !9
  br label %13441

13072:                                            ; preds = %13020
  %13073 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13073, ptr %42, align 4, !tbaa !9
  store i32 357913942, ptr %43, align 4, !tbaa !9
  %13074 = load i32, ptr %42, align 4, !tbaa !9
  %13075 = load i32, ptr %43, align 4, !tbaa !9
  %13076 = icmp uge i32 %13074, %13075
  %13077 = zext i1 %13076 to i32
  store i32 %13077, ptr %42, align 4, !tbaa !9
  %13078 = load i32, ptr %42, align 4, !tbaa !9
  %13079 = icmp ne i32 %13078, 0
  br i1 %13079, label %13080, label %13081

13080:                                            ; preds = %13072
  br label %15476

13081:                                            ; preds = %13072
  store i32 357913941, ptr %42, align 4, !tbaa !9
  %13082 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %13082, ptr %43, align 4, !tbaa !9
  %13083 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13083, ptr %44, align 4, !tbaa !9
  %13084 = load i32, ptr %44, align 4, !tbaa !9
  %13085 = load i32, ptr %43, align 4, !tbaa !9
  %13086 = sub i32 %13085, %13084
  store i32 %13086, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %13087 = load i32, ptr %44, align 4, !tbaa !9
  %13088 = icmp eq i32 %13087, 0
  %13089 = xor i1 %13088, true
  %13090 = xor i1 %13089, true
  %13091 = zext i1 %13090 to i32
  %13092 = sext i32 %13091 to i64
  %13093 = call i64 @llvm.expect.i64(i64 %13092, i64 0)
  %13094 = icmp ne i64 %13093, 0
  br i1 %13094, label %13095, label %13097

13095:                                            ; preds = %13081
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

13096:                                            ; No predecessors!
  br label %13119

13097:                                            ; preds = %13081
  %13098 = load i32, ptr %43, align 4, !tbaa !9
  %13099 = icmp eq i32 %13098, -2147483648
  br i1 %13099, label %13100, label %13103

13100:                                            ; preds = %13097
  %13101 = load i32, ptr %44, align 4, !tbaa !9
  %13102 = icmp eq i32 %13101, -1
  br label %13103

13103:                                            ; preds = %13100, %13097
  %13104 = phi i1 [ false, %13097 ], [ %13102, %13100 ]
  %13105 = xor i1 %13104, true
  %13106 = xor i1 %13105, true
  %13107 = zext i1 %13106 to i32
  %13108 = sext i32 %13107 to i64
  %13109 = call i64 @llvm.expect.i64(i64 %13108, i64 0)
  %13110 = icmp ne i64 %13109, 0
  br i1 %13110, label %13111, label %13113

13111:                                            ; preds = %13103
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

13112:                                            ; No predecessors!
  br label %13117

13113:                                            ; preds = %13103
  %13114 = load i32, ptr %43, align 4, !tbaa !9
  %13115 = load i32, ptr %44, align 4, !tbaa !9
  %13116 = sdiv i32 %13114, %13115
  br label %13117

13117:                                            ; preds = %13113, %13112
  %13118 = phi i32 [ 0, %13112 ], [ %13116, %13113 ]
  br label %13119

13119:                                            ; preds = %13117, %13096
  %13120 = phi i32 [ 0, %13096 ], [ %13118, %13117 ]
  store i32 %13120, ptr %43, align 4, !tbaa !9
  %13121 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13121, ptr %10, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %13122 = load i32, ptr %44, align 4, !tbaa !9
  %13123 = and i32 %13122, 31
  %13124 = load i32, ptr %43, align 4, !tbaa !9
  %13125 = shl i32 %13124, %13123
  store i32 %13125, ptr %43, align 4, !tbaa !9
  %13126 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13126, ptr %7, align 4, !tbaa !9
  %13127 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13127, ptr %44, align 4, !tbaa !9
  %13128 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13128, ptr %45, align 4, !tbaa !9
  %13129 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13129, ptr %46, align 4, !tbaa !9
  %13130 = load i32, ptr %45, align 4, !tbaa !9
  %13131 = load i32, ptr %46, align 4, !tbaa !9
  %13132 = icmp ugt i32 %13130, %13131
  %13133 = zext i1 %13132 to i32
  store i32 %13133, ptr %45, align 4, !tbaa !9
  %13134 = load i32, ptr %45, align 4, !tbaa !9
  %13135 = icmp ne i32 %13134, 0
  br i1 %13135, label %13136, label %13138

13136:                                            ; preds = %13119
  %13137 = load i32, ptr %43, align 4, !tbaa !9
  br label %13140

13138:                                            ; preds = %13119
  %13139 = load i32, ptr %44, align 4, !tbaa !9
  br label %13140

13140:                                            ; preds = %13138, %13136
  %13141 = phi i32 [ %13137, %13136 ], [ %13139, %13138 ]
  store i32 %13141, ptr %43, align 4, !tbaa !9
  %13142 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13142, ptr %44, align 4, !tbaa !9
  store i32 178956970, ptr %45, align 4, !tbaa !9
  %13143 = load i32, ptr %44, align 4, !tbaa !9
  %13144 = load i32, ptr %45, align 4, !tbaa !9
  %13145 = icmp uge i32 %13143, %13144
  %13146 = zext i1 %13145 to i32
  store i32 %13146, ptr %44, align 4, !tbaa !9
  %13147 = load i32, ptr %44, align 4, !tbaa !9
  %13148 = icmp ne i32 %13147, 0
  br i1 %13148, label %13149, label %13151

13149:                                            ; preds = %13140
  %13150 = load i32, ptr %42, align 4, !tbaa !9
  br label %13153

13151:                                            ; preds = %13140
  %13152 = load i32, ptr %43, align 4, !tbaa !9
  br label %13153

13153:                                            ; preds = %13151, %13149
  %13154 = phi i32 [ %13150, %13149 ], [ %13152, %13151 ]
  store i32 %13154, ptr %42, align 4, !tbaa !9
  %13155 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13155, ptr %7, align 4, !tbaa !9
  store i32 357913942, ptr %43, align 4, !tbaa !9
  %13156 = load i32, ptr %42, align 4, !tbaa !9
  %13157 = load i32, ptr %43, align 4, !tbaa !9
  %13158 = icmp uge i32 %13156, %13157
  %13159 = zext i1 %13158 to i32
  store i32 %13159, ptr %42, align 4, !tbaa !9
  %13160 = load i32, ptr %42, align 4, !tbaa !9
  %13161 = icmp ne i32 %13160, 0
  br i1 %13161, label %13162, label %13163

13162:                                            ; preds = %13153
  br label %15476

13163:                                            ; preds = %13153
  %13164 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13164, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %13165 = load i32, ptr %43, align 4, !tbaa !9
  %13166 = load i32, ptr %42, align 4, !tbaa !9
  %13167 = mul i32 %13166, %13165
  store i32 %13167, ptr %42, align 4, !tbaa !9
  %13168 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13168, ptr %16, align 4, !tbaa !9
  %13169 = load ptr, ptr %6, align 8, !tbaa !5
  %13170 = load i32, ptr %42, align 4, !tbaa !9
  %13171 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %13169, i32 noundef %13170)
  store i32 %13171, ptr %42, align 4, !tbaa !9
  %13172 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13172, ptr %17, align 4, !tbaa !9
  %13173 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13173, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %13174 = load i32, ptr %44, align 4, !tbaa !9
  %13175 = load i32, ptr %43, align 4, !tbaa !9
  %13176 = mul i32 %13175, %13174
  store i32 %13176, ptr %43, align 4, !tbaa !9
  %13177 = load i32, ptr %43, align 4, !tbaa !9
  %13178 = load i32, ptr %42, align 4, !tbaa !9
  %13179 = add i32 %13178, %13177
  store i32 %13179, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %13180 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13180, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %13181 = load i32, ptr %45, align 4, !tbaa !9
  %13182 = load i32, ptr %44, align 4, !tbaa !9
  %13183 = mul i32 %13182, %13181
  store i32 %13183, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %13184 = load i32, ptr %45, align 4, !tbaa !9
  %13185 = load i32, ptr %44, align 4, !tbaa !9
  %13186 = sub i32 %13185, %13184
  store i32 %13186, ptr %44, align 4, !tbaa !9
  %13187 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %13187, ptr %7, align 4, !tbaa !9
  %13188 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13188, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %13189 = load i32, ptr %46, align 4, !tbaa !9
  %13190 = icmp eq i32 %13189, 0
  %13191 = xor i1 %13190, true
  %13192 = xor i1 %13191, true
  %13193 = zext i1 %13192 to i32
  %13194 = sext i32 %13193 to i64
  %13195 = call i64 @llvm.expect.i64(i64 %13194, i64 0)
  %13196 = icmp ne i64 %13195, 0
  br i1 %13196, label %13197, label %13199

13197:                                            ; preds = %13163
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

13198:                                            ; No predecessors!
  br label %13203

13199:                                            ; preds = %13163
  %13200 = load i32, ptr %45, align 4, !tbaa !9
  %13201 = load i32, ptr %46, align 4, !tbaa !9
  %13202 = urem i32 %13200, %13201
  br label %13203

13203:                                            ; preds = %13199, %13198
  %13204 = phi i32 [ 0, %13198 ], [ %13202, %13199 ]
  store i32 %13204, ptr %45, align 4, !tbaa !9
  %13205 = load i32, ptr %45, align 4, !tbaa !9
  %13206 = load i32, ptr %44, align 4, !tbaa !9
  %13207 = sub i32 %13206, %13205
  store i32 %13207, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %13208 = load i32, ptr %45, align 4, !tbaa !9
  %13209 = load i32, ptr %44, align 4, !tbaa !9
  %13210 = add i32 %13209, %13208
  store i32 %13210, ptr %44, align 4, !tbaa !9
  %13211 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %13211, ptr %24, align 4, !tbaa !9
  %13212 = load ptr, ptr %6, align 8, !tbaa !5
  %13213 = load i32, ptr %42, align 4, !tbaa !9
  %13214 = load i32, ptr %43, align 4, !tbaa !9
  %13215 = load i32, ptr %44, align 4, !tbaa !9
  %13216 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %13212, i32 noundef %13213, i32 noundef %13214, i32 noundef %13215)
  store i32 %13216, ptr %42, align 4, !tbaa !9
  %13217 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13217, ptr %13, align 4, !tbaa !9
  %13218 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13218, ptr %12, align 4, !tbaa !9
  %13219 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13219, ptr %42, align 4, !tbaa !9
  %13220 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13220, ptr %43, align 4, !tbaa !9
  %13221 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13221, ptr %10, align 4, !tbaa !9
  %13222 = load i32, ptr %42, align 4, !tbaa !9
  %13223 = load i32, ptr %43, align 4, !tbaa !9
  %13224 = icmp ne i32 %13222, %13223
  %13225 = zext i1 %13224 to i32
  store i32 %13225, ptr %42, align 4, !tbaa !9
  %13226 = load i32, ptr %42, align 4, !tbaa !9
  %13227 = icmp ne i32 %13226, 0
  br i1 %13227, label %13228, label %13341

13228:                                            ; preds = %13203
  br label %13229

13229:                                            ; preds = %13299, %13228
  %13230 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13230, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %13231 = load i32, ptr %43, align 4, !tbaa !9
  %13232 = load i32, ptr %42, align 4, !tbaa !9
  %13233 = sub i32 %13232, %13231
  store i32 %13233, ptr %42, align 4, !tbaa !9
  %13234 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13234, ptr %12, align 4, !tbaa !9
  %13235 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13235, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %13236 = load i32, ptr %44, align 4, !tbaa !9
  %13237 = load i32, ptr %43, align 4, !tbaa !9
  %13238 = sub i32 %13237, %13236
  store i32 %13238, ptr %43, align 4, !tbaa !9
  %13239 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13239, ptr %10, align 4, !tbaa !9
  %13240 = load ptr, ptr %6, align 8, !tbaa !5
  %13241 = getelementptr inbounds %struct.w2c_hermes, ptr %13240, i32 0, i32 6
  %13242 = load i32, ptr %43, align 4, !tbaa !9
  %13243 = zext i32 %13242 to i64
  %13244 = call i32 @i32_load(ptr noundef %13241, i64 noundef %13243)
  store i32 %13244, ptr %43, align 4, !tbaa !9
  %13245 = load ptr, ptr %6, align 8, !tbaa !5
  %13246 = getelementptr inbounds %struct.w2c_hermes, ptr %13245, i32 0, i32 6
  %13247 = load i32, ptr %42, align 4, !tbaa !9
  %13248 = zext i32 %13247 to i64
  %13249 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13246, i64 noundef %13248, i32 noundef %13249)
  %13250 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13250, ptr %42, align 4, !tbaa !9
  %13251 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13251, ptr %43, align 4, !tbaa !9
  %13252 = load ptr, ptr %6, align 8, !tbaa !5
  %13253 = getelementptr inbounds %struct.w2c_hermes, ptr %13252, i32 0, i32 6
  %13254 = load i32, ptr %43, align 4, !tbaa !9
  %13255 = zext i32 %13254 to i64
  %13256 = add i64 %13255, 4
  %13257 = call i32 @i32_load(ptr noundef %13253, i64 noundef %13256)
  store i32 %13257, ptr %43, align 4, !tbaa !9
  %13258 = load ptr, ptr %6, align 8, !tbaa !5
  %13259 = getelementptr inbounds %struct.w2c_hermes, ptr %13258, i32 0, i32 6
  %13260 = load i32, ptr %42, align 4, !tbaa !9
  %13261 = zext i32 %13260 to i64
  %13262 = add i64 %13261, 4
  %13263 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13259, i64 noundef %13262, i32 noundef %13263)
  %13264 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13264, ptr %42, align 4, !tbaa !9
  %13265 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13265, ptr %43, align 4, !tbaa !9
  %13266 = load ptr, ptr %6, align 8, !tbaa !5
  %13267 = getelementptr inbounds %struct.w2c_hermes, ptr %13266, i32 0, i32 6
  %13268 = load i32, ptr %43, align 4, !tbaa !9
  %13269 = zext i32 %13268 to i64
  %13270 = add i64 %13269, 8
  %13271 = call i32 @i32_load(ptr noundef %13267, i64 noundef %13270)
  store i32 %13271, ptr %43, align 4, !tbaa !9
  %13272 = load ptr, ptr %6, align 8, !tbaa !5
  %13273 = getelementptr inbounds %struct.w2c_hermes, ptr %13272, i32 0, i32 6
  %13274 = load i32, ptr %42, align 4, !tbaa !9
  %13275 = zext i32 %13274 to i64
  %13276 = add i64 %13275, 8
  %13277 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13273, i64 noundef %13276, i32 noundef %13277)
  %13278 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13278, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %13279 = load ptr, ptr %6, align 8, !tbaa !5
  %13280 = getelementptr inbounds %struct.w2c_hermes, ptr %13279, i32 0, i32 6
  %13281 = load i32, ptr %42, align 4, !tbaa !9
  %13282 = zext i32 %13281 to i64
  %13283 = add i64 %13282, 8
  %13284 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13280, i64 noundef %13283, i32 noundef %13284)
  %13285 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13285, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %13286 = load ptr, ptr %6, align 8, !tbaa !5
  %13287 = getelementptr inbounds %struct.w2c_hermes, ptr %13286, i32 0, i32 6
  %13288 = load i32, ptr %42, align 4, !tbaa !9
  %13289 = zext i32 %13288 to i64
  %13290 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13287, i64 noundef %13289, i64 noundef %13290)
  %13291 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13291, ptr %42, align 4, !tbaa !9
  %13292 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13292, ptr %43, align 4, !tbaa !9
  %13293 = load i32, ptr %42, align 4, !tbaa !9
  %13294 = load i32, ptr %43, align 4, !tbaa !9
  %13295 = icmp ne i32 %13293, %13294
  %13296 = zext i1 %13295 to i32
  store i32 %13296, ptr %42, align 4, !tbaa !9
  %13297 = load i32, ptr %42, align 4, !tbaa !9
  %13298 = icmp ne i32 %13297, 0
  br i1 %13298, label %13299, label %13300

13299:                                            ; preds = %13229
  br label %13229

13300:                                            ; preds = %13229
  br label %13301

13301:                                            ; preds = %13339, %13300
  %13302 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13302, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %13303 = load i32, ptr %43, align 4, !tbaa !9
  %13304 = load i32, ptr %42, align 4, !tbaa !9
  %13305 = sub i32 %13304, %13303
  store i32 %13305, ptr %42, align 4, !tbaa !9
  %13306 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13306, ptr %7, align 4, !tbaa !9
  %13307 = load ptr, ptr %6, align 8, !tbaa !5
  %13308 = getelementptr inbounds %struct.w2c_hermes, ptr %13307, i32 0, i32 6
  %13309 = load i32, ptr %42, align 4, !tbaa !9
  %13310 = zext i32 %13309 to i64
  %13311 = call i32 @i32_load(ptr noundef %13308, i64 noundef %13310)
  store i32 %13311, ptr %42, align 4, !tbaa !9
  %13312 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13312, ptr %10, align 4, !tbaa !9
  %13313 = load i32, ptr %42, align 4, !tbaa !9
  %13314 = icmp ne i32 %13313, 0
  br i1 %13314, label %13315, label %13329

13315:                                            ; preds = %13301
  %13316 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13316, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %13317 = load i32, ptr %43, align 4, !tbaa !9
  %13318 = load i32, ptr %42, align 4, !tbaa !9
  %13319 = sub i32 %13318, %13317
  store i32 %13319, ptr %42, align 4, !tbaa !9
  %13320 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13320, ptr %43, align 4, !tbaa !9
  %13321 = load ptr, ptr %6, align 8, !tbaa !5
  %13322 = getelementptr inbounds %struct.w2c_hermes, ptr %13321, i32 0, i32 6
  %13323 = load i32, ptr %42, align 4, !tbaa !9
  %13324 = zext i32 %13323 to i64
  %13325 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13322, i64 noundef %13324, i32 noundef %13325)
  %13326 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13326, ptr %42, align 4, !tbaa !9
  %13327 = load ptr, ptr %6, align 8, !tbaa !5
  %13328 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %13327, i32 noundef %13328)
  br label %13329

13329:                                            ; preds = %13315, %13301
  %13330 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13330, ptr %42, align 4, !tbaa !9
  %13331 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13331, ptr %19, align 4, !tbaa !9
  %13332 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13332, ptr %43, align 4, !tbaa !9
  %13333 = load i32, ptr %42, align 4, !tbaa !9
  %13334 = load i32, ptr %43, align 4, !tbaa !9
  %13335 = icmp ne i32 %13333, %13334
  %13336 = zext i1 %13335 to i32
  store i32 %13336, ptr %42, align 4, !tbaa !9
  %13337 = load i32, ptr %42, align 4, !tbaa !9
  %13338 = icmp ne i32 %13337, 0
  br i1 %13338, label %13339, label %13340

13339:                                            ; preds = %13329
  br label %13301

13340:                                            ; preds = %13329
  br label %13341

13341:                                            ; preds = %13340, %13203
  %13342 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13342, ptr %42, align 4, !tbaa !9
  %13343 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %13343, ptr %43, align 4, !tbaa !9
  %13344 = load i32, ptr %43, align 4, !tbaa !9
  %13345 = load i32, ptr %42, align 4, !tbaa !9
  %13346 = add i32 %13345, %13344
  store i32 %13346, ptr %42, align 4, !tbaa !9
  %13347 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13347, ptr %19, align 4, !tbaa !9
  %13348 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13348, ptr %42, align 4, !tbaa !9
  %13349 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13349, ptr %43, align 4, !tbaa !9
  %13350 = load i32, ptr %43, align 4, !tbaa !9
  %13351 = load i32, ptr %42, align 4, !tbaa !9
  %13352 = add i32 %13351, %13350
  store i32 %13352, ptr %42, align 4, !tbaa !9
  %13353 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13353, ptr %24, align 4, !tbaa !9
  %13354 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13354, ptr %42, align 4, !tbaa !9
  %13355 = load i32, ptr %42, align 4, !tbaa !9
  %13356 = icmp ne i32 %13355, 0
  %13357 = xor i1 %13356, true
  %13358 = zext i1 %13357 to i32
  store i32 %13358, ptr %42, align 4, !tbaa !9
  %13359 = load i32, ptr %42, align 4, !tbaa !9
  %13360 = icmp ne i32 %13359, 0
  br i1 %13360, label %13361, label %13364

13361:                                            ; preds = %13341
  %13362 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13362, ptr %42, align 4, !tbaa !9
  %13363 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13363, ptr %21, align 4, !tbaa !9
  br label %13441

13364:                                            ; preds = %13341
  %13365 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13365, ptr %42, align 4, !tbaa !9
  %13366 = load ptr, ptr %6, align 8, !tbaa !5
  %13367 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %13366, i32 noundef %13367)
  %13368 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13368, ptr %42, align 4, !tbaa !9
  %13369 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13369, ptr %21, align 4, !tbaa !9
  br label %13441

13370:                                            ; preds = %12963
  %13371 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13371, ptr %42, align 4, !tbaa !9
  %13372 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13372, ptr %43, align 4, !tbaa !9
  %13373 = load i32, ptr %42, align 4, !tbaa !9
  %13374 = load i32, ptr %43, align 4, !tbaa !9
  %13375 = icmp ule i32 %13373, %13374
  %13376 = zext i1 %13375 to i32
  store i32 %13376, ptr %42, align 4, !tbaa !9
  %13377 = load i32, ptr %42, align 4, !tbaa !9
  %13378 = icmp ne i32 %13377, 0
  br i1 %13378, label %13379, label %13380

13379:                                            ; preds = %13370
  br label %13441

13380:                                            ; preds = %13370
  %13381 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13381, ptr %42, align 4, !tbaa !9
  %13382 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13382, ptr %43, align 4, !tbaa !9
  %13383 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13383, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %13384 = load i32, ptr %45, align 4, !tbaa !9
  %13385 = load i32, ptr %44, align 4, !tbaa !9
  %13386 = mul i32 %13385, %13384
  store i32 %13386, ptr %44, align 4, !tbaa !9
  %13387 = load i32, ptr %44, align 4, !tbaa !9
  %13388 = load i32, ptr %43, align 4, !tbaa !9
  %13389 = add i32 %13388, %13387
  store i32 %13389, ptr %43, align 4, !tbaa !9
  %13390 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13390, ptr %10, align 4, !tbaa !9
  %13391 = load i32, ptr %42, align 4, !tbaa !9
  %13392 = load i32, ptr %43, align 4, !tbaa !9
  %13393 = icmp eq i32 %13391, %13392
  %13394 = zext i1 %13393 to i32
  store i32 %13394, ptr %42, align 4, !tbaa !9
  %13395 = load i32, ptr %42, align 4, !tbaa !9
  %13396 = icmp ne i32 %13395, 0
  br i1 %13396, label %13397, label %13398

13397:                                            ; preds = %13380
  br label %13441

13398:                                            ; preds = %13380
  br label %13399

13399:                                            ; preds = %13437, %13398
  %13400 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13400, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %13401 = load i32, ptr %43, align 4, !tbaa !9
  %13402 = load i32, ptr %42, align 4, !tbaa !9
  %13403 = sub i32 %13402, %13401
  store i32 %13403, ptr %42, align 4, !tbaa !9
  %13404 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13404, ptr %7, align 4, !tbaa !9
  %13405 = load ptr, ptr %6, align 8, !tbaa !5
  %13406 = getelementptr inbounds %struct.w2c_hermes, ptr %13405, i32 0, i32 6
  %13407 = load i32, ptr %42, align 4, !tbaa !9
  %13408 = zext i32 %13407 to i64
  %13409 = call i32 @i32_load(ptr noundef %13406, i64 noundef %13408)
  store i32 %13409, ptr %42, align 4, !tbaa !9
  %13410 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13410, ptr %12, align 4, !tbaa !9
  %13411 = load i32, ptr %42, align 4, !tbaa !9
  %13412 = icmp ne i32 %13411, 0
  br i1 %13412, label %13413, label %13427

13413:                                            ; preds = %13399
  %13414 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13414, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %13415 = load i32, ptr %43, align 4, !tbaa !9
  %13416 = load i32, ptr %42, align 4, !tbaa !9
  %13417 = sub i32 %13416, %13415
  store i32 %13417, ptr %42, align 4, !tbaa !9
  %13418 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13418, ptr %43, align 4, !tbaa !9
  %13419 = load ptr, ptr %6, align 8, !tbaa !5
  %13420 = getelementptr inbounds %struct.w2c_hermes, ptr %13419, i32 0, i32 6
  %13421 = load i32, ptr %42, align 4, !tbaa !9
  %13422 = zext i32 %13421 to i64
  %13423 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13420, i64 noundef %13422, i32 noundef %13423)
  %13424 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13424, ptr %42, align 4, !tbaa !9
  %13425 = load ptr, ptr %6, align 8, !tbaa !5
  %13426 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %13425, i32 noundef %13426)
  br label %13427

13427:                                            ; preds = %13413, %13399
  %13428 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13428, ptr %42, align 4, !tbaa !9
  %13429 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13429, ptr %19, align 4, !tbaa !9
  %13430 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13430, ptr %43, align 4, !tbaa !9
  %13431 = load i32, ptr %42, align 4, !tbaa !9
  %13432 = load i32, ptr %43, align 4, !tbaa !9
  %13433 = icmp ne i32 %13431, %13432
  %13434 = zext i1 %13433 to i32
  store i32 %13434, ptr %42, align 4, !tbaa !9
  %13435 = load i32, ptr %42, align 4, !tbaa !9
  %13436 = icmp ne i32 %13435, 0
  br i1 %13436, label %13437, label %13438

13437:                                            ; preds = %13427
  br label %13399

13438:                                            ; preds = %13427
  %13439 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13439, ptr %42, align 4, !tbaa !9
  %13440 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13440, ptr %19, align 4, !tbaa !9
  br label %13441

13441:                                            ; preds = %13438, %13397, %13379, %13364, %13361, %13053, %12962
  %13442 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %13442, ptr %42, align 4, !tbaa !9
  %13443 = load ptr, ptr %6, align 8, !tbaa !5
  %13444 = getelementptr inbounds %struct.w2c_hermes, ptr %13443, i32 0, i32 6
  %13445 = load i32, ptr %42, align 4, !tbaa !9
  %13446 = zext i32 %13445 to i64
  %13447 = add i64 %13446, 12
  %13448 = call i32 @i32_load(ptr noundef %13444, i64 noundef %13447)
  store i32 %13448, ptr %42, align 4, !tbaa !9
  %13449 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %13449, ptr %43, align 4, !tbaa !9
  %13450 = load ptr, ptr %6, align 8, !tbaa !5
  %13451 = getelementptr inbounds %struct.w2c_hermes, ptr %13450, i32 0, i32 6
  %13452 = load i32, ptr %43, align 4, !tbaa !9
  %13453 = zext i32 %13452 to i64
  %13454 = add i64 %13453, 8
  %13455 = call i32 @i32_load(ptr noundef %13451, i64 noundef %13454)
  store i32 %13455, ptr %43, align 4, !tbaa !9
  %13456 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13456, ptr %17, align 4, !tbaa !9
  %13457 = load i32, ptr %43, align 4, !tbaa !9
  %13458 = load i32, ptr %42, align 4, !tbaa !9
  %13459 = sub i32 %13458, %13457
  store i32 %13459, ptr %42, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %13460 = load i32, ptr %42, align 4, !tbaa !9
  %13461 = load i32, ptr %43, align 4, !tbaa !9
  %13462 = and i32 %13461, 31
  %13463 = ashr i32 %13460, %13462
  store i32 %13463, ptr %42, align 4, !tbaa !9
  %13464 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13464, ptr %13, align 4, !tbaa !9
  %13465 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13465, ptr %42, align 4, !tbaa !9
  %13466 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %13466, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %13467 = load i32, ptr %44, align 4, !tbaa !9
  %13468 = load i32, ptr %43, align 4, !tbaa !9
  %13469 = mul i32 %13468, %13467
  store i32 %13469, ptr %43, align 4, !tbaa !9
  %13470 = load i32, ptr %43, align 4, !tbaa !9
  %13471 = load i32, ptr %42, align 4, !tbaa !9
  %13472 = add i32 %13471, %13470
  store i32 %13472, ptr %42, align 4, !tbaa !9
  %13473 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13473, ptr %31, align 4, !tbaa !9
  %13474 = load ptr, ptr %6, align 8, !tbaa !5
  %13475 = getelementptr inbounds %struct.w2c_hermes, ptr %13474, i32 0, i32 6
  %13476 = load i32, ptr %42, align 4, !tbaa !9
  %13477 = zext i32 %13476 to i64
  %13478 = add i64 %13477, 4
  %13479 = call i32 @i32_load(ptr noundef %13475, i64 noundef %13478)
  store i32 %13479, ptr %42, align 4, !tbaa !9
  %13480 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13480, ptr %7, align 4, !tbaa !9
  %13481 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %13481, ptr %43, align 4, !tbaa !9
  %13482 = load ptr, ptr %6, align 8, !tbaa !5
  %13483 = getelementptr inbounds %struct.w2c_hermes, ptr %13482, i32 0, i32 6
  %13484 = load i32, ptr %43, align 4, !tbaa !9
  %13485 = zext i32 %13484 to i64
  %13486 = add i64 %13485, 8
  %13487 = call i32 @i32_load(ptr noundef %13483, i64 noundef %13486)
  store i32 %13487, ptr %43, align 4, !tbaa !9
  %13488 = load i32, ptr %42, align 4, !tbaa !9
  %13489 = load i32, ptr %43, align 4, !tbaa !9
  %13490 = icmp ne i32 %13488, %13489
  %13491 = zext i1 %13490 to i32
  store i32 %13491, ptr %42, align 4, !tbaa !9
  %13492 = load i32, ptr %42, align 4, !tbaa !9
  %13493 = icmp ne i32 %13492, 0
  br i1 %13493, label %13494, label %13529

13494:                                            ; preds = %13441
  %13495 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13495, ptr %42, align 4, !tbaa !9
  %13496 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13496, ptr %43, align 4, !tbaa !9
  %13497 = load ptr, ptr %6, align 8, !tbaa !5
  %13498 = getelementptr inbounds %struct.w2c_hermes, ptr %13497, i32 0, i32 6
  %13499 = load i32, ptr %42, align 4, !tbaa !9
  %13500 = zext i32 %13499 to i64
  %13501 = add i64 %13500, 8
  %13502 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13498, i64 noundef %13501, i32 noundef %13502)
  %13503 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13503, ptr %42, align 4, !tbaa !9
  %13504 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13504, ptr %43, align 4, !tbaa !9
  %13505 = load ptr, ptr %6, align 8, !tbaa !5
  %13506 = getelementptr inbounds %struct.w2c_hermes, ptr %13505, i32 0, i32 6
  %13507 = load i32, ptr %42, align 4, !tbaa !9
  %13508 = zext i32 %13507 to i64
  %13509 = add i64 %13508, 4
  %13510 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13506, i64 noundef %13509, i32 noundef %13510)
  %13511 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13511, ptr %42, align 4, !tbaa !9
  %13512 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13512, ptr %43, align 4, !tbaa !9
  %13513 = load ptr, ptr %6, align 8, !tbaa !5
  %13514 = getelementptr inbounds %struct.w2c_hermes, ptr %13513, i32 0, i32 6
  %13515 = load i32, ptr %42, align 4, !tbaa !9
  %13516 = zext i32 %13515 to i64
  %13517 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13514, i64 noundef %13516, i32 noundef %13517)
  %13518 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %13518, ptr %42, align 4, !tbaa !9
  %13519 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13519, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %13520 = load i32, ptr %44, align 4, !tbaa !9
  %13521 = load i32, ptr %43, align 4, !tbaa !9
  %13522 = add i32 %13521, %13520
  store i32 %13522, ptr %43, align 4, !tbaa !9
  %13523 = load ptr, ptr %6, align 8, !tbaa !5
  %13524 = getelementptr inbounds %struct.w2c_hermes, ptr %13523, i32 0, i32 6
  %13525 = load i32, ptr %42, align 4, !tbaa !9
  %13526 = zext i32 %13525 to i64
  %13527 = add i64 %13526, 4
  %13528 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13524, i64 noundef %13527, i32 noundef %13528)
  br label %13769

13529:                                            ; preds = %13441
  %13530 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13530, ptr %42, align 4, !tbaa !9
  %13531 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %13531, ptr %43, align 4, !tbaa !9
  %13532 = load ptr, ptr %6, align 8, !tbaa !5
  %13533 = getelementptr inbounds %struct.w2c_hermes, ptr %13532, i32 0, i32 6
  %13534 = load i32, ptr %43, align 4, !tbaa !9
  %13535 = zext i32 %13534 to i64
  %13536 = call i32 @i32_load(ptr noundef %13533, i64 noundef %13535)
  store i32 %13536, ptr %43, align 4, !tbaa !9
  %13537 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13537, ptr %27, align 4, !tbaa !9
  %13538 = load i32, ptr %43, align 4, !tbaa !9
  %13539 = load i32, ptr %42, align 4, !tbaa !9
  %13540 = sub i32 %13539, %13538
  store i32 %13540, ptr %42, align 4, !tbaa !9
  %13541 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13541, ptr %12, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %13542 = load i32, ptr %43, align 4, !tbaa !9
  %13543 = icmp eq i32 %13542, 0
  %13544 = xor i1 %13543, true
  %13545 = xor i1 %13544, true
  %13546 = zext i1 %13545 to i32
  %13547 = sext i32 %13546 to i64
  %13548 = call i64 @llvm.expect.i64(i64 %13547, i64 0)
  %13549 = icmp ne i64 %13548, 0
  br i1 %13549, label %13550, label %13552

13550:                                            ; preds = %13529
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

13551:                                            ; No predecessors!
  br label %13574

13552:                                            ; preds = %13529
  %13553 = load i32, ptr %42, align 4, !tbaa !9
  %13554 = icmp eq i32 %13553, -2147483648
  br i1 %13554, label %13555, label %13558

13555:                                            ; preds = %13552
  %13556 = load i32, ptr %43, align 4, !tbaa !9
  %13557 = icmp eq i32 %13556, -1
  br label %13558

13558:                                            ; preds = %13555, %13552
  %13559 = phi i1 [ false, %13552 ], [ %13557, %13555 ]
  %13560 = xor i1 %13559, true
  %13561 = xor i1 %13560, true
  %13562 = zext i1 %13561 to i32
  %13563 = sext i32 %13562 to i64
  %13564 = call i64 @llvm.expect.i64(i64 %13563, i64 0)
  %13565 = icmp ne i64 %13564, 0
  br i1 %13565, label %13566, label %13568

13566:                                            ; preds = %13558
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

13567:                                            ; No predecessors!
  br label %13572

13568:                                            ; preds = %13558
  %13569 = load i32, ptr %42, align 4, !tbaa !9
  %13570 = load i32, ptr %43, align 4, !tbaa !9
  %13571 = sdiv i32 %13569, %13570
  br label %13572

13572:                                            ; preds = %13568, %13567
  %13573 = phi i32 [ 0, %13567 ], [ %13571, %13568 ]
  br label %13574

13574:                                            ; preds = %13572, %13551
  %13575 = phi i32 [ 0, %13551 ], [ %13573, %13572 ]
  store i32 %13575, ptr %42, align 4, !tbaa !9
  %13576 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13576, ptr %16, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %13577 = load i32, ptr %43, align 4, !tbaa !9
  %13578 = load i32, ptr %42, align 4, !tbaa !9
  %13579 = add i32 %13578, %13577
  store i32 %13579, ptr %42, align 4, !tbaa !9
  %13580 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13580, ptr %10, align 4, !tbaa !9
  store i32 357913942, ptr %43, align 4, !tbaa !9
  %13581 = load i32, ptr %42, align 4, !tbaa !9
  %13582 = load i32, ptr %43, align 4, !tbaa !9
  %13583 = icmp ult i32 %13581, %13582
  %13584 = zext i1 %13583 to i32
  store i32 %13584, ptr %42, align 4, !tbaa !9
  %13585 = load i32, ptr %42, align 4, !tbaa !9
  %13586 = icmp ne i32 %13585, 0
  br i1 %13586, label %13587, label %13768

13587:                                            ; preds = %13574
  store i32 357913941, ptr %42, align 4, !tbaa !9
  %13588 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13588, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %13589 = load i32, ptr %44, align 4, !tbaa !9
  %13590 = and i32 %13589, 31
  %13591 = load i32, ptr %43, align 4, !tbaa !9
  %13592 = shl i32 %13591, %13590
  store i32 %13592, ptr %43, align 4, !tbaa !9
  %13593 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13593, ptr %7, align 4, !tbaa !9
  %13594 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13594, ptr %44, align 4, !tbaa !9
  %13595 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13595, ptr %45, align 4, !tbaa !9
  %13596 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13596, ptr %46, align 4, !tbaa !9
  %13597 = load i32, ptr %45, align 4, !tbaa !9
  %13598 = load i32, ptr %46, align 4, !tbaa !9
  %13599 = icmp ugt i32 %13597, %13598
  %13600 = zext i1 %13599 to i32
  store i32 %13600, ptr %45, align 4, !tbaa !9
  %13601 = load i32, ptr %45, align 4, !tbaa !9
  %13602 = icmp ne i32 %13601, 0
  br i1 %13602, label %13603, label %13605

13603:                                            ; preds = %13587
  %13604 = load i32, ptr %43, align 4, !tbaa !9
  br label %13607

13605:                                            ; preds = %13587
  %13606 = load i32, ptr %44, align 4, !tbaa !9
  br label %13607

13607:                                            ; preds = %13605, %13603
  %13608 = phi i32 [ %13604, %13603 ], [ %13606, %13605 ]
  store i32 %13608, ptr %43, align 4, !tbaa !9
  %13609 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13609, ptr %44, align 4, !tbaa !9
  store i32 178956970, ptr %45, align 4, !tbaa !9
  %13610 = load i32, ptr %44, align 4, !tbaa !9
  %13611 = load i32, ptr %45, align 4, !tbaa !9
  %13612 = icmp uge i32 %13610, %13611
  %13613 = zext i1 %13612 to i32
  store i32 %13613, ptr %44, align 4, !tbaa !9
  %13614 = load i32, ptr %44, align 4, !tbaa !9
  %13615 = icmp ne i32 %13614, 0
  br i1 %13615, label %13616, label %13618

13616:                                            ; preds = %13607
  %13617 = load i32, ptr %42, align 4, !tbaa !9
  br label %13620

13618:                                            ; preds = %13607
  %13619 = load i32, ptr %43, align 4, !tbaa !9
  br label %13620

13620:                                            ; preds = %13618, %13616
  %13621 = phi i32 [ %13617, %13616 ], [ %13619, %13618 ]
  store i32 %13621, ptr %42, align 4, !tbaa !9
  %13622 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13622, ptr %10, align 4, !tbaa !9
  %13623 = load i32, ptr %42, align 4, !tbaa !9
  %13624 = icmp ne i32 %13623, 0
  br i1 %13624, label %13625, label %13642

13625:                                            ; preds = %13620
  %13626 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13626, ptr %42, align 4, !tbaa !9
  store i32 357913942, ptr %43, align 4, !tbaa !9
  %13627 = load i32, ptr %42, align 4, !tbaa !9
  %13628 = load i32, ptr %43, align 4, !tbaa !9
  %13629 = icmp uge i32 %13627, %13628
  %13630 = zext i1 %13629 to i32
  store i32 %13630, ptr %42, align 4, !tbaa !9
  %13631 = load i32, ptr %42, align 4, !tbaa !9
  %13632 = icmp ne i32 %13631, 0
  br i1 %13632, label %13633, label %13634

13633:                                            ; preds = %13625
  br label %15476

13634:                                            ; preds = %13625
  %13635 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13635, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %13636 = load i32, ptr %43, align 4, !tbaa !9
  %13637 = load i32, ptr %42, align 4, !tbaa !9
  %13638 = mul i32 %13637, %13636
  store i32 %13638, ptr %42, align 4, !tbaa !9
  %13639 = load ptr, ptr %6, align 8, !tbaa !5
  %13640 = load i32, ptr %42, align 4, !tbaa !9
  %13641 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %13639, i32 noundef %13640)
  store i32 %13641, ptr %42, align 4, !tbaa !9
  br label %13643

13642:                                            ; preds = %13620
  store i32 0, ptr %42, align 4, !tbaa !9
  br label %13643

13643:                                            ; preds = %13642, %13634
  %13644 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13644, ptr %7, align 4, !tbaa !9
  %13645 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13645, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %13646 = load i32, ptr %44, align 4, !tbaa !9
  %13647 = load i32, ptr %43, align 4, !tbaa !9
  %13648 = mul i32 %13647, %13646
  store i32 %13648, ptr %43, align 4, !tbaa !9
  %13649 = load i32, ptr %43, align 4, !tbaa !9
  %13650 = load i32, ptr %42, align 4, !tbaa !9
  %13651 = add i32 %13650, %13649
  store i32 %13651, ptr %42, align 4, !tbaa !9
  %13652 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13652, ptr %16, align 4, !tbaa !9
  %13653 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13653, ptr %43, align 4, !tbaa !9
  %13654 = load ptr, ptr %6, align 8, !tbaa !5
  %13655 = getelementptr inbounds %struct.w2c_hermes, ptr %13654, i32 0, i32 6
  %13656 = load i32, ptr %42, align 4, !tbaa !9
  %13657 = zext i32 %13656 to i64
  %13658 = add i64 %13657, 8
  %13659 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13655, i64 noundef %13658, i32 noundef %13659)
  %13660 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13660, ptr %42, align 4, !tbaa !9
  %13661 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13661, ptr %43, align 4, !tbaa !9
  %13662 = load ptr, ptr %6, align 8, !tbaa !5
  %13663 = getelementptr inbounds %struct.w2c_hermes, ptr %13662, i32 0, i32 6
  %13664 = load i32, ptr %42, align 4, !tbaa !9
  %13665 = zext i32 %13664 to i64
  %13666 = add i64 %13665, 4
  %13667 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13663, i64 noundef %13666, i32 noundef %13667)
  %13668 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13668, ptr %42, align 4, !tbaa !9
  %13669 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13669, ptr %43, align 4, !tbaa !9
  %13670 = load ptr, ptr %6, align 8, !tbaa !5
  %13671 = getelementptr inbounds %struct.w2c_hermes, ptr %13670, i32 0, i32 6
  %13672 = load i32, ptr %42, align 4, !tbaa !9
  %13673 = zext i32 %13672 to i64
  %13674 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13671, i64 noundef %13673, i32 noundef %13674)
  %13675 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %13675, ptr %42, align 4, !tbaa !9
  %13676 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13676, ptr %43, align 4, !tbaa !9
  %13677 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13677, ptr %44, align 4, !tbaa !9
  store i32 -12, ptr %45, align 4, !tbaa !9
  %13678 = load i32, ptr %45, align 4, !tbaa !9
  %13679 = icmp eq i32 %13678, 0
  %13680 = xor i1 %13679, true
  %13681 = xor i1 %13680, true
  %13682 = zext i1 %13681 to i32
  %13683 = sext i32 %13682 to i64
  %13684 = call i64 @llvm.expect.i64(i64 %13683, i64 0)
  %13685 = icmp ne i64 %13684, 0
  br i1 %13685, label %13686, label %13688

13686:                                            ; preds = %13643
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

13687:                                            ; No predecessors!
  br label %13710

13688:                                            ; preds = %13643
  %13689 = load i32, ptr %44, align 4, !tbaa !9
  %13690 = icmp eq i32 %13689, -2147483648
  br i1 %13690, label %13691, label %13694

13691:                                            ; preds = %13688
  %13692 = load i32, ptr %45, align 4, !tbaa !9
  %13693 = icmp eq i32 %13692, -1
  br label %13694

13694:                                            ; preds = %13691, %13688
  %13695 = phi i1 [ false, %13688 ], [ %13693, %13691 ]
  %13696 = xor i1 %13695, true
  %13697 = xor i1 %13696, true
  %13698 = zext i1 %13697 to i32
  %13699 = sext i32 %13698 to i64
  %13700 = call i64 @llvm.expect.i64(i64 %13699, i64 0)
  %13701 = icmp ne i64 %13700, 0
  br i1 %13701, label %13702, label %13704

13702:                                            ; preds = %13694
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

13703:                                            ; No predecessors!
  br label %13708

13704:                                            ; preds = %13694
  %13705 = load i32, ptr %44, align 4, !tbaa !9
  %13706 = load i32, ptr %45, align 4, !tbaa !9
  %13707 = sdiv i32 %13705, %13706
  br label %13708

13708:                                            ; preds = %13704, %13703
  %13709 = phi i32 [ 0, %13703 ], [ %13707, %13704 ]
  br label %13710

13710:                                            ; preds = %13708, %13687
  %13711 = phi i32 [ 0, %13687 ], [ %13709, %13708 ]
  store i32 %13711, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %13712 = load i32, ptr %45, align 4, !tbaa !9
  %13713 = load i32, ptr %44, align 4, !tbaa !9
  %13714 = mul i32 %13713, %13712
  store i32 %13714, ptr %44, align 4, !tbaa !9
  %13715 = load i32, ptr %44, align 4, !tbaa !9
  %13716 = load i32, ptr %43, align 4, !tbaa !9
  %13717 = add i32 %13716, %13715
  store i32 %13717, ptr %43, align 4, !tbaa !9
  %13718 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %13718, ptr %44, align 4, !tbaa !9
  %13719 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13719, ptr %45, align 4, !tbaa !9
  %13720 = load ptr, ptr %6, align 8, !tbaa !5
  %13721 = load i32, ptr %43, align 4, !tbaa !9
  %13722 = load i32, ptr %44, align 4, !tbaa !9
  %13723 = load i32, ptr %45, align 4, !tbaa !9
  %13724 = call i32 @w2c_hermes_memmove(ptr noundef %13720, i32 noundef %13721, i32 noundef %13722, i32 noundef %13723)
  store i32 %13724, ptr %43, align 4, !tbaa !9
  %13725 = load ptr, ptr %6, align 8, !tbaa !5
  %13726 = getelementptr inbounds %struct.w2c_hermes, ptr %13725, i32 0, i32 6
  %13727 = load i32, ptr %42, align 4, !tbaa !9
  %13728 = zext i32 %13727 to i64
  %13729 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13726, i64 noundef %13728, i32 noundef %13729)
  %13730 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %13730, ptr %42, align 4, !tbaa !9
  %13731 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13731, ptr %43, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %13732 = load i32, ptr %44, align 4, !tbaa !9
  %13733 = load i32, ptr %43, align 4, !tbaa !9
  %13734 = add i32 %13733, %13732
  store i32 %13734, ptr %43, align 4, !tbaa !9
  %13735 = load ptr, ptr %6, align 8, !tbaa !5
  %13736 = getelementptr inbounds %struct.w2c_hermes, ptr %13735, i32 0, i32 6
  %13737 = load i32, ptr %42, align 4, !tbaa !9
  %13738 = zext i32 %13737 to i64
  %13739 = add i64 %13738, 4
  %13740 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13736, i64 noundef %13739, i32 noundef %13740)
  %13741 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %13741, ptr %42, align 4, !tbaa !9
  %13742 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13742, ptr %43, align 4, !tbaa !9
  %13743 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13743, ptr %44, align 4, !tbaa !9
  store i32 12, ptr %45, align 4, !tbaa !9
  %13744 = load i32, ptr %45, align 4, !tbaa !9
  %13745 = load i32, ptr %44, align 4, !tbaa !9
  %13746 = mul i32 %13745, %13744
  store i32 %13746, ptr %44, align 4, !tbaa !9
  %13747 = load i32, ptr %44, align 4, !tbaa !9
  %13748 = load i32, ptr %43, align 4, !tbaa !9
  %13749 = add i32 %13748, %13747
  store i32 %13749, ptr %43, align 4, !tbaa !9
  %13750 = load ptr, ptr %6, align 8, !tbaa !5
  %13751 = getelementptr inbounds %struct.w2c_hermes, ptr %13750, i32 0, i32 6
  %13752 = load i32, ptr %42, align 4, !tbaa !9
  %13753 = zext i32 %13752 to i64
  %13754 = add i64 %13753, 8
  %13755 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13751, i64 noundef %13754, i32 noundef %13755)
  %13756 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %13756, ptr %42, align 4, !tbaa !9
  %13757 = load i32, ptr %42, align 4, !tbaa !9
  %13758 = icmp ne i32 %13757, 0
  %13759 = xor i1 %13758, true
  %13760 = zext i1 %13759 to i32
  store i32 %13760, ptr %42, align 4, !tbaa !9
  %13761 = load i32, ptr %42, align 4, !tbaa !9
  %13762 = icmp ne i32 %13761, 0
  br i1 %13762, label %13763, label %13764

13763:                                            ; preds = %13710
  br label %13769

13764:                                            ; preds = %13710
  %13765 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %13765, ptr %42, align 4, !tbaa !9
  %13766 = load ptr, ptr %6, align 8, !tbaa !5
  %13767 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %13766, i32 noundef %13767)
  br label %13769

13768:                                            ; preds = %13574
  br label %15476

13769:                                            ; preds = %13764, %13763, %13494, %12913, %12897, %12761
  %13770 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %13770, ptr %42, align 4, !tbaa !9
  %13771 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %13771, ptr %43, align 4, !tbaa !9
  %13772 = load i32, ptr %42, align 4, !tbaa !9
  %13773 = load i32, ptr %43, align 4, !tbaa !9
  %13774 = icmp ne i32 %13772, %13773
  %13775 = zext i1 %13774 to i32
  store i32 %13775, ptr %42, align 4, !tbaa !9
  %13776 = load i32, ptr %42, align 4, !tbaa !9
  %13777 = icmp ne i32 %13776, 0
  br i1 %13777, label %13778, label %13779

13778:                                            ; preds = %13769
  br label %12459

13779:                                            ; preds = %13769
  br label %13780

13780:                                            ; preds = %13779, %12737, %12444
  %13781 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13781, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %13782 = load i32, ptr %43, align 4, !tbaa !9
  %13783 = load i32, ptr %42, align 4, !tbaa !9
  %13784 = add i32 %13783, %13782
  store i32 %13784, ptr %42, align 4, !tbaa !9
  %13785 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13785, ptr %11, align 4, !tbaa !9
  %13786 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %13786, ptr %43, align 4, !tbaa !9
  %13787 = load i32, ptr %42, align 4, !tbaa !9
  %13788 = load i32, ptr %43, align 4, !tbaa !9
  %13789 = icmp ne i32 %13787, %13788
  %13790 = zext i1 %13789 to i32
  store i32 %13790, ptr %42, align 4, !tbaa !9
  %13791 = load i32, ptr %42, align 4, !tbaa !9
  %13792 = icmp ne i32 %13791, 0
  br i1 %13792, label %13793, label %13794

13793:                                            ; preds = %13780
  br label %12429

13794:                                            ; preds = %13780
  %13795 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13795, ptr %42, align 4, !tbaa !9
  %13796 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13796, ptr %43, align 4, !tbaa !9
  %13797 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13797, ptr %12, align 4, !tbaa !9
  %13798 = load i32, ptr %42, align 4, !tbaa !9
  %13799 = load i32, ptr %43, align 4, !tbaa !9
  %13800 = icmp eq i32 %13798, %13799
  %13801 = zext i1 %13800 to i32
  store i32 %13801, ptr %42, align 4, !tbaa !9
  %13802 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13802, ptr %27, align 4, !tbaa !9
  %13803 = load i32, ptr %42, align 4, !tbaa !9
  %13804 = icmp ne i32 %13803, 0
  %13805 = xor i1 %13804, true
  %13806 = zext i1 %13805 to i32
  store i32 %13806, ptr %42, align 4, !tbaa !9
  %13807 = load i32, ptr %42, align 4, !tbaa !9
  %13808 = icmp ne i32 %13807, 0
  br i1 %13808, label %13809, label %15222

13809:                                            ; preds = %13794
  %13810 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13810, ptr %42, align 4, !tbaa !9
  %13811 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13811, ptr %43, align 4, !tbaa !9
  %13812 = load i32, ptr %43, align 4, !tbaa !9
  %13813 = load i32, ptr %42, align 4, !tbaa !9
  %13814 = sub i32 %13813, %13812
  store i32 %13814, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %13815 = load i32, ptr %43, align 4, !tbaa !9
  %13816 = icmp eq i32 %13815, 0
  %13817 = xor i1 %13816, true
  %13818 = xor i1 %13817, true
  %13819 = zext i1 %13818 to i32
  %13820 = sext i32 %13819 to i64
  %13821 = call i64 @llvm.expect.i64(i64 %13820, i64 0)
  %13822 = icmp ne i64 %13821, 0
  br i1 %13822, label %13823, label %13825

13823:                                            ; preds = %13809
  call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

13824:                                            ; No predecessors!
  br label %13847

13825:                                            ; preds = %13809
  %13826 = load i32, ptr %42, align 4, !tbaa !9
  %13827 = icmp eq i32 %13826, -2147483648
  br i1 %13827, label %13828, label %13831

13828:                                            ; preds = %13825
  %13829 = load i32, ptr %43, align 4, !tbaa !9
  %13830 = icmp eq i32 %13829, -1
  br label %13831

13831:                                            ; preds = %13828, %13825
  %13832 = phi i1 [ false, %13825 ], [ %13830, %13828 ]
  %13833 = xor i1 %13832, true
  %13834 = xor i1 %13833, true
  %13835 = zext i1 %13834 to i32
  %13836 = sext i32 %13835 to i64
  %13837 = call i64 @llvm.expect.i64(i64 %13836, i64 0)
  %13838 = icmp ne i64 %13837, 0
  br i1 %13838, label %13839, label %13841

13839:                                            ; preds = %13831
  call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

13840:                                            ; No predecessors!
  br label %13845

13841:                                            ; preds = %13831
  %13842 = load i32, ptr %42, align 4, !tbaa !9
  %13843 = load i32, ptr %43, align 4, !tbaa !9
  %13844 = sdiv i32 %13842, %13843
  br label %13845

13845:                                            ; preds = %13841, %13840
  %13846 = phi i32 [ 0, %13840 ], [ %13844, %13841 ]
  br label %13847

13847:                                            ; preds = %13845, %13824
  %13848 = phi i32 [ 0, %13824 ], [ %13846, %13845 ]
  store i32 %13848, ptr %42, align 4, !tbaa !9
  %13849 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13849, ptr %29, align 4, !tbaa !9
  br label %13850

13850:                                            ; preds = %15218, %13847
  %13851 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %13851, ptr %42, align 4, !tbaa !9
  %13852 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %13852, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %13853 = load i32, ptr %44, align 4, !tbaa !9
  %13854 = load i32, ptr %43, align 4, !tbaa !9
  %13855 = sub i32 %13854, %13853
  store i32 %13855, ptr %43, align 4, !tbaa !9
  %13856 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13856, ptr %29, align 4, !tbaa !9
  store i32 12, ptr %44, align 4, !tbaa !9
  %13857 = load i32, ptr %44, align 4, !tbaa !9
  %13858 = load i32, ptr %43, align 4, !tbaa !9
  %13859 = mul i32 %13858, %13857
  store i32 %13859, ptr %43, align 4, !tbaa !9
  %13860 = load i32, ptr %43, align 4, !tbaa !9
  %13861 = load i32, ptr %42, align 4, !tbaa !9
  %13862 = add i32 %13861, %13860
  store i32 %13862, ptr %42, align 4, !tbaa !9
  %13863 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13863, ptr %7, align 4, !tbaa !9
  %13864 = load ptr, ptr %6, align 8, !tbaa !5
  %13865 = getelementptr inbounds %struct.w2c_hermes, ptr %13864, i32 0, i32 6
  %13866 = load i32, ptr %42, align 4, !tbaa !9
  %13867 = zext i32 %13866 to i64
  %13868 = call i32 @i32_load(ptr noundef %13865, i64 noundef %13867)
  store i32 %13868, ptr %42, align 4, !tbaa !9
  %13869 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13869, ptr %13, align 4, !tbaa !9
  %13870 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13870, ptr %43, align 4, !tbaa !9
  %13871 = load ptr, ptr %6, align 8, !tbaa !5
  %13872 = getelementptr inbounds %struct.w2c_hermes, ptr %13871, i32 0, i32 6
  %13873 = load i32, ptr %43, align 4, !tbaa !9
  %13874 = zext i32 %13873 to i64
  %13875 = add i64 %13874, 4
  %13876 = call i32 @i32_load(ptr noundef %13872, i64 noundef %13875)
  store i32 %13876, ptr %43, align 4, !tbaa !9
  %13877 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %13877, ptr %28, align 4, !tbaa !9
  %13878 = load i32, ptr %42, align 4, !tbaa !9
  %13879 = load i32, ptr %43, align 4, !tbaa !9
  %13880 = icmp ne i32 %13878, %13879
  %13881 = zext i1 %13880 to i32
  store i32 %13881, ptr %42, align 4, !tbaa !9
  %13882 = load i32, ptr %42, align 4, !tbaa !9
  %13883 = icmp ne i32 %13882, 0
  br i1 %13883, label %13884, label %15214

13884:                                            ; preds = %13850
  br label %13885

13885:                                            ; preds = %15212, %13884
  %13886 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13886, ptr %42, align 4, !tbaa !9
  %13887 = load ptr, ptr %6, align 8, !tbaa !5
  %13888 = getelementptr inbounds %struct.w2c_hermes, ptr %13887, i32 0, i32 6
  %13889 = load i32, ptr %42, align 4, !tbaa !9
  %13890 = zext i32 %13889 to i64
  %13891 = add i64 %13890, 8
  %13892 = call i32 @i32_load(ptr noundef %13888, i64 noundef %13891)
  store i32 %13892, ptr %42, align 4, !tbaa !9
  %13893 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13893, ptr %12, align 4, !tbaa !9
  %13894 = load ptr, ptr %6, align 8, !tbaa !5
  %13895 = getelementptr inbounds %struct.w2c_hermes, ptr %13894, i32 0, i32 6
  %13896 = load i32, ptr %42, align 4, !tbaa !9
  %13897 = zext i32 %13896 to i64
  %13898 = add i64 %13897, 28
  %13899 = call i32 @i32_load(ptr noundef %13895, i64 noundef %13898)
  store i32 %13899, ptr %42, align 4, !tbaa !9
  %13900 = load i32, ptr %42, align 4, !tbaa !9
  %13901 = icmp ne i32 %13900, 0
  br i1 %13901, label %13902, label %13903

13902:                                            ; preds = %13885
  br label %15199

13903:                                            ; preds = %13885
  %13904 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13904, ptr %42, align 4, !tbaa !9
  %13905 = load ptr, ptr %6, align 8, !tbaa !5
  %13906 = getelementptr inbounds %struct.w2c_hermes, ptr %13905, i32 0, i32 6
  %13907 = load i32, ptr %42, align 4, !tbaa !9
  %13908 = zext i32 %13907 to i64
  %13909 = add i64 %13908, 16
  %13910 = call i32 @i32_load(ptr noundef %13906, i64 noundef %13909)
  store i32 %13910, ptr %42, align 4, !tbaa !9
  %13911 = load i32, ptr %42, align 4, !tbaa !9
  %13912 = icmp ne i32 %13911, 0
  br i1 %13912, label %13913, label %13914

13913:                                            ; preds = %13903
  br label %15199

13914:                                            ; preds = %13903
  %13915 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13915, ptr %42, align 4, !tbaa !9
  %13916 = load ptr, ptr %6, align 8, !tbaa !5
  %13917 = getelementptr inbounds %struct.w2c_hermes, ptr %13916, i32 0, i32 6
  %13918 = load i32, ptr %42, align 4, !tbaa !9
  %13919 = zext i32 %13918 to i64
  %13920 = add i64 %13919, 4
  %13921 = call i32 @i32_load(ptr noundef %13917, i64 noundef %13920)
  store i32 %13921, ptr %42, align 4, !tbaa !9
  %13922 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13922, ptr %7, align 4, !tbaa !9
  %13923 = load i32, ptr %42, align 4, !tbaa !9
  %13924 = icmp ne i32 %13923, 0
  %13925 = xor i1 %13924, true
  %13926 = zext i1 %13925 to i32
  store i32 %13926, ptr %42, align 4, !tbaa !9
  %13927 = load i32, ptr %42, align 4, !tbaa !9
  %13928 = icmp ne i32 %13927, 0
  br i1 %13928, label %13929, label %13930

13929:                                            ; preds = %13914
  br label %15199

13930:                                            ; preds = %13914
  %13931 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13931, ptr %42, align 4, !tbaa !9
  %13932 = load ptr, ptr %6, align 8, !tbaa !5
  %13933 = getelementptr inbounds %struct.w2c_hermes, ptr %13932, i32 0, i32 6
  %13934 = load i32, ptr %42, align 4, !tbaa !9
  %13935 = zext i32 %13934 to i64
  %13936 = call i32 @i32_load(ptr noundef %13933, i64 noundef %13935)
  store i32 %13936, ptr %42, align 4, !tbaa !9
  %13937 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13937, ptr %10, align 4, !tbaa !9
  %13938 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13938, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %13939 = load i32, ptr %44, align 4, !tbaa !9
  %13940 = and i32 %13939, 31
  %13941 = load i32, ptr %43, align 4, !tbaa !9
  %13942 = shl i32 %13941, %13940
  store i32 %13942, ptr %43, align 4, !tbaa !9
  %13943 = load i32, ptr %43, align 4, !tbaa !9
  %13944 = load i32, ptr %42, align 4, !tbaa !9
  %13945 = add i32 %13944, %13943
  store i32 %13945, ptr %42, align 4, !tbaa !9
  %13946 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13946, ptr %17, align 4, !tbaa !9
  %13947 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13947, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %13948 = load i32, ptr %43, align 4, !tbaa !9
  %13949 = and i32 %13948, 31
  %13950 = load i32, ptr %42, align 4, !tbaa !9
  %13951 = lshr i32 %13950, %13949
  store i32 %13951, ptr %42, align 4, !tbaa !9
  %13952 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13952, ptr %43, align 4, !tbaa !9
  store i32 9, ptr %44, align 4, !tbaa !9
  %13953 = load i32, ptr %44, align 4, !tbaa !9
  %13954 = and i32 %13953, 31
  %13955 = load i32, ptr %43, align 4, !tbaa !9
  %13956 = lshr i32 %13955, %13954
  store i32 %13956, ptr %43, align 4, !tbaa !9
  %13957 = load i32, ptr %43, align 4, !tbaa !9
  %13958 = load i32, ptr %42, align 4, !tbaa !9
  %13959 = xor i32 %13958, %13957
  store i32 %13959, ptr %42, align 4, !tbaa !9
  %13960 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13960, ptr %24, align 4, !tbaa !9
  br label %13961

13961:                                            ; preds = %14120, %13930
  %13962 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13962, ptr %42, align 4, !tbaa !9
  %13963 = load ptr, ptr %6, align 8, !tbaa !5
  %13964 = getelementptr inbounds %struct.w2c_hermes, ptr %13963, i32 0, i32 6
  %13965 = load i32, ptr %42, align 4, !tbaa !9
  %13966 = zext i32 %13965 to i64
  %13967 = call i32 @i32_load(ptr noundef %13964, i64 noundef %13966)
  store i32 %13967, ptr %42, align 4, !tbaa !9
  %13968 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %13968, ptr %11, align 4, !tbaa !9
  %13969 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13969, ptr %43, align 4, !tbaa !9
  %13970 = load i32, ptr %42, align 4, !tbaa !9
  %13971 = load i32, ptr %43, align 4, !tbaa !9
  %13972 = icmp eq i32 %13970, %13971
  %13973 = zext i1 %13972 to i32
  store i32 %13973, ptr %42, align 4, !tbaa !9
  %13974 = load i32, ptr %42, align 4, !tbaa !9
  %13975 = icmp ne i32 %13974, 0
  br i1 %13975, label %13976, label %13977

13976:                                            ; preds = %13961
  br label %14107

13977:                                            ; preds = %13961
  %13978 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13978, ptr %42, align 4, !tbaa !9
  %13979 = load ptr, ptr %6, align 8, !tbaa !5
  %13980 = getelementptr inbounds %struct.w2c_hermes, ptr %13979, i32 0, i32 6
  %13981 = load i32, ptr %42, align 4, !tbaa !9
  %13982 = zext i32 %13981 to i64
  %13983 = add i64 %13982, 16
  %13984 = call i32 @i32_load(ptr noundef %13980, i64 noundef %13983)
  store i32 %13984, ptr %42, align 4, !tbaa !9
  %13985 = load i32, ptr %42, align 4, !tbaa !9
  %13986 = icmp ne i32 %13985, 0
  br i1 %13986, label %13987, label %13988

13987:                                            ; preds = %13977
  br label %14107

13988:                                            ; preds = %13977
  %13989 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13989, ptr %42, align 4, !tbaa !9
  %13990 = load ptr, ptr %6, align 8, !tbaa !5
  %13991 = getelementptr inbounds %struct.w2c_hermes, ptr %13990, i32 0, i32 6
  %13992 = load i32, ptr %42, align 4, !tbaa !9
  %13993 = zext i32 %13992 to i64
  %13994 = add i64 %13993, 24
  %13995 = call i32 @i32_load(ptr noundef %13991, i64 noundef %13994)
  store i32 %13995, ptr %42, align 4, !tbaa !9
  %13996 = load i32, ptr %42, align 4, !tbaa !9
  %13997 = icmp ne i32 %13996, 0
  br i1 %13997, label %13998, label %13999

13998:                                            ; preds = %13988
  br label %14107

13999:                                            ; preds = %13988
  %14000 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14000, ptr %42, align 4, !tbaa !9
  %14001 = load ptr, ptr %6, align 8, !tbaa !5
  %14002 = getelementptr inbounds %struct.w2c_hermes, ptr %14001, i32 0, i32 6
  %14003 = load i32, ptr %42, align 4, !tbaa !9
  %14004 = zext i32 %14003 to i64
  %14005 = add i64 %14004, 48
  %14006 = call i32 @i32_load(ptr noundef %14002, i64 noundef %14005)
  store i32 %14006, ptr %42, align 4, !tbaa !9
  %14007 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14007, ptr %7, align 4, !tbaa !9
  %14008 = load i32, ptr %42, align 4, !tbaa !9
  %14009 = icmp ne i32 %14008, 0
  %14010 = xor i1 %14009, true
  %14011 = zext i1 %14010 to i32
  store i32 %14011, ptr %42, align 4, !tbaa !9
  %14012 = load i32, ptr %42, align 4, !tbaa !9
  %14013 = icmp ne i32 %14012, 0
  br i1 %14013, label %14014, label %14015

14014:                                            ; preds = %13999
  br label %14122

14015:                                            ; preds = %13999
  %14016 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14016, ptr %42, align 4, !tbaa !9
  %14017 = load ptr, ptr %6, align 8, !tbaa !5
  %14018 = getelementptr inbounds %struct.w2c_hermes, ptr %14017, i32 0, i32 6
  %14019 = load i32, ptr %42, align 4, !tbaa !9
  %14020 = zext i32 %14019 to i64
  %14021 = add i64 %14020, 36
  %14022 = call i32 @i32_load(ptr noundef %14018, i64 noundef %14021)
  store i32 %14022, ptr %42, align 4, !tbaa !9
  %14023 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14023, ptr %14, align 4, !tbaa !9
  %14024 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14024, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %14025 = load i32, ptr %44, align 4, !tbaa !9
  %14026 = load i32, ptr %43, align 4, !tbaa !9
  %14027 = sub i32 %14026, %14025
  store i32 %14027, ptr %43, align 4, !tbaa !9
  %14028 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14028, ptr %8, align 4, !tbaa !9
  %14029 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %14029, ptr %44, align 4, !tbaa !9
  %14030 = load i32, ptr %44, align 4, !tbaa !9
  %14031 = load i32, ptr %43, align 4, !tbaa !9
  %14032 = and i32 %14031, %14030
  store i32 %14032, ptr %43, align 4, !tbaa !9
  %14033 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14033, ptr %18, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14034 = load i32, ptr %44, align 4, !tbaa !9
  %14035 = and i32 %14034, 31
  %14036 = load i32, ptr %43, align 4, !tbaa !9
  %14037 = shl i32 %14036, %14035
  store i32 %14037, ptr %43, align 4, !tbaa !9
  %14038 = load i32, ptr %43, align 4, !tbaa !9
  %14039 = load i32, ptr %42, align 4, !tbaa !9
  %14040 = add i32 %14039, %14038
  store i32 %14040, ptr %42, align 4, !tbaa !9
  %14041 = load ptr, ptr %6, align 8, !tbaa !5
  %14042 = getelementptr inbounds %struct.w2c_hermes, ptr %14041, i32 0, i32 6
  %14043 = load i32, ptr %42, align 4, !tbaa !9
  %14044 = zext i32 %14043 to i64
  %14045 = call i32 @i32_load(ptr noundef %14042, i64 noundef %14044)
  store i32 %14045, ptr %42, align 4, !tbaa !9
  %14046 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14046, ptr %25, align 4, !tbaa !9
  %14047 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14047, ptr %43, align 4, !tbaa !9
  %14048 = load i32, ptr %42, align 4, !tbaa !9
  %14049 = load i32, ptr %43, align 4, !tbaa !9
  %14050 = icmp eq i32 %14048, %14049
  %14051 = zext i1 %14050 to i32
  store i32 %14051, ptr %42, align 4, !tbaa !9
  %14052 = load i32, ptr %42, align 4, !tbaa !9
  %14053 = icmp ne i32 %14052, 0
  br i1 %14053, label %14054, label %14055

14054:                                            ; preds = %14015
  br label %14107

14055:                                            ; preds = %14015
  store i32 1, ptr %42, align 4, !tbaa !9
  %14056 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14056, ptr %22, align 4, !tbaa !9
  br label %14057

14057:                                            ; preds = %14105, %14055
  %14058 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %14058, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %14059 = load i32, ptr %42, align 4, !tbaa !9
  %14060 = load i32, ptr %43, align 4, !tbaa !9
  %14061 = icmp eq i32 %14059, %14060
  %14062 = zext i1 %14061 to i32
  store i32 %14062, ptr %42, align 4, !tbaa !9
  %14063 = load i32, ptr %42, align 4, !tbaa !9
  %14064 = icmp ne i32 %14063, 0
  br i1 %14064, label %14065, label %14066

14065:                                            ; preds = %14057
  br label %14122

14066:                                            ; preds = %14057
  %14067 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %14067, ptr %42, align 4, !tbaa !9
  %14068 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14068, ptr %43, align 4, !tbaa !9
  %14069 = load i32, ptr %43, align 4, !tbaa !9
  %14070 = load i32, ptr %42, align 4, !tbaa !9
  %14071 = add i32 %14070, %14069
  store i32 %14071, ptr %42, align 4, !tbaa !9
  %14072 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14072, ptr %7, align 4, !tbaa !9
  %14073 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14073, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %14074 = load i32, ptr %43, align 4, !tbaa !9
  %14075 = load i32, ptr %42, align 4, !tbaa !9
  %14076 = add i32 %14075, %14074
  store i32 %14076, ptr %42, align 4, !tbaa !9
  %14077 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14077, ptr %22, align 4, !tbaa !9
  %14078 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14078, ptr %42, align 4, !tbaa !9
  %14079 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14079, ptr %43, align 4, !tbaa !9
  %14080 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14080, ptr %44, align 4, !tbaa !9
  %14081 = load i32, ptr %44, align 4, !tbaa !9
  %14082 = load i32, ptr %43, align 4, !tbaa !9
  %14083 = and i32 %14082, %14081
  store i32 %14083, ptr %43, align 4, !tbaa !9
  %14084 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14084, ptr %18, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14085 = load i32, ptr %44, align 4, !tbaa !9
  %14086 = and i32 %14085, 31
  %14087 = load i32, ptr %43, align 4, !tbaa !9
  %14088 = shl i32 %14087, %14086
  store i32 %14088, ptr %43, align 4, !tbaa !9
  %14089 = load i32, ptr %43, align 4, !tbaa !9
  %14090 = load i32, ptr %42, align 4, !tbaa !9
  %14091 = add i32 %14090, %14089
  store i32 %14091, ptr %42, align 4, !tbaa !9
  %14092 = load ptr, ptr %6, align 8, !tbaa !5
  %14093 = getelementptr inbounds %struct.w2c_hermes, ptr %14092, i32 0, i32 6
  %14094 = load i32, ptr %42, align 4, !tbaa !9
  %14095 = zext i32 %14094 to i64
  %14096 = call i32 @i32_load(ptr noundef %14093, i64 noundef %14095)
  store i32 %14096, ptr %42, align 4, !tbaa !9
  %14097 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14097, ptr %25, align 4, !tbaa !9
  %14098 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14098, ptr %43, align 4, !tbaa !9
  %14099 = load i32, ptr %42, align 4, !tbaa !9
  %14100 = load i32, ptr %43, align 4, !tbaa !9
  %14101 = icmp ne i32 %14099, %14100
  %14102 = zext i1 %14101 to i32
  store i32 %14102, ptr %42, align 4, !tbaa !9
  %14103 = load i32, ptr %42, align 4, !tbaa !9
  %14104 = icmp ne i32 %14103, 0
  br i1 %14104, label %14105, label %14106

14105:                                            ; preds = %14066
  br label %14057

14106:                                            ; preds = %14066
  br label %14107

14107:                                            ; preds = %14106, %14054, %13998, %13987, %13976
  %14108 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14108, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %14109 = load i32, ptr %43, align 4, !tbaa !9
  %14110 = load i32, ptr %42, align 4, !tbaa !9
  %14111 = add i32 %14110, %14109
  store i32 %14111, ptr %42, align 4, !tbaa !9
  %14112 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14112, ptr %10, align 4, !tbaa !9
  %14113 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %14113, ptr %43, align 4, !tbaa !9
  %14114 = load i32, ptr %42, align 4, !tbaa !9
  %14115 = load i32, ptr %43, align 4, !tbaa !9
  %14116 = icmp ne i32 %14114, %14115
  %14117 = zext i1 %14116 to i32
  store i32 %14117, ptr %42, align 4, !tbaa !9
  %14118 = load i32, ptr %42, align 4, !tbaa !9
  %14119 = icmp ne i32 %14118, 0
  br i1 %14119, label %14120, label %14121

14120:                                            ; preds = %14107
  br label %13961

14121:                                            ; preds = %14107
  br label %15199

14122:                                            ; preds = %14065, %14014
  %14123 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14123, ptr %42, align 4, !tbaa !9
  %14124 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14124, ptr %43, align 4, !tbaa !9
  %14125 = load ptr, ptr %6, align 8, !tbaa !5
  %14126 = getelementptr inbounds %struct.w2c_hermes, ptr %14125, i32 0, i32 6
  %14127 = load i32, ptr %42, align 4, !tbaa !9
  %14128 = zext i32 %14127 to i64
  %14129 = add i64 %14128, 24
  %14130 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14126, i64 noundef %14129, i32 noundef %14130)
  %14131 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14131, ptr %42, align 4, !tbaa !9
  %14132 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %14132, ptr %43, align 4, !tbaa !9
  %14133 = load ptr, ptr %6, align 8, !tbaa !5
  %14134 = getelementptr inbounds %struct.w2c_hermes, ptr %14133, i32 0, i32 6
  %14135 = load i32, ptr %42, align 4, !tbaa !9
  %14136 = zext i32 %14135 to i64
  %14137 = add i64 %14136, 32
  %14138 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14134, i64 noundef %14137, i32 noundef %14138)
  %14139 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14139, ptr %42, align 4, !tbaa !9
  %14140 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14140, ptr %43, align 4, !tbaa !9
  %14141 = load ptr, ptr %6, align 8, !tbaa !5
  %14142 = getelementptr inbounds %struct.w2c_hermes, ptr %14141, i32 0, i32 6
  %14143 = load i32, ptr %42, align 4, !tbaa !9
  %14144 = zext i32 %14143 to i64
  %14145 = add i64 %14144, 28
  %14146 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14142, i64 noundef %14145, i32 noundef %14146)
  br label %14147

14147:                                            ; preds = %14159, %14122
  %14148 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14148, ptr %42, align 4, !tbaa !9
  %14149 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14149, ptr %16, align 4, !tbaa !9
  %14150 = load ptr, ptr %6, align 8, !tbaa !5
  %14151 = getelementptr inbounds %struct.w2c_hermes, ptr %14150, i32 0, i32 6
  %14152 = load i32, ptr %42, align 4, !tbaa !9
  %14153 = zext i32 %14152 to i64
  %14154 = add i64 %14153, 24
  %14155 = call i32 @i32_load(ptr noundef %14151, i64 noundef %14154)
  store i32 %14155, ptr %42, align 4, !tbaa !9
  %14156 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14156, ptr %12, align 4, !tbaa !9
  %14157 = load i32, ptr %42, align 4, !tbaa !9
  %14158 = icmp ne i32 %14157, 0
  br i1 %14158, label %14159, label %14160

14159:                                            ; preds = %14147
  br label %14147

14160:                                            ; preds = %14147
  br label %14161

14161:                                            ; preds = %14173, %14160
  %14162 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14162, ptr %42, align 4, !tbaa !9
  %14163 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14163, ptr %10, align 4, !tbaa !9
  %14164 = load ptr, ptr %6, align 8, !tbaa !5
  %14165 = getelementptr inbounds %struct.w2c_hermes, ptr %14164, i32 0, i32 6
  %14166 = load i32, ptr %42, align 4, !tbaa !9
  %14167 = zext i32 %14166 to i64
  %14168 = add i64 %14167, 28
  %14169 = call i32 @i32_load(ptr noundef %14165, i64 noundef %14168)
  store i32 %14169, ptr %42, align 4, !tbaa !9
  %14170 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14170, ptr %11, align 4, !tbaa !9
  %14171 = load i32, ptr %42, align 4, !tbaa !9
  %14172 = icmp ne i32 %14171, 0
  br i1 %14172, label %14173, label %14174

14173:                                            ; preds = %14161
  br label %14161

14174:                                            ; preds = %14161
  %14175 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14175, ptr %42, align 4, !tbaa !9
  %14176 = load ptr, ptr %6, align 8, !tbaa !5
  %14177 = getelementptr inbounds %struct.w2c_hermes, ptr %14176, i32 0, i32 6
  %14178 = load i32, ptr %42, align 4, !tbaa !9
  %14179 = zext i32 %14178 to i64
  %14180 = add i64 %14179, 36
  %14181 = call i32 @i32_load(ptr noundef %14177, i64 noundef %14180)
  store i32 %14181, ptr %42, align 4, !tbaa !9
  %14182 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14182, ptr %8, align 4, !tbaa !9
  %14183 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14183, ptr %42, align 4, !tbaa !9
  %14184 = load ptr, ptr %6, align 8, !tbaa !5
  %14185 = getelementptr inbounds %struct.w2c_hermes, ptr %14184, i32 0, i32 6
  %14186 = load i32, ptr %42, align 4, !tbaa !9
  %14187 = zext i32 %14186 to i64
  %14188 = add i64 %14187, 48
  %14189 = call i32 @i32_load(ptr noundef %14185, i64 noundef %14188)
  store i32 %14189, ptr %42, align 4, !tbaa !9
  %14190 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14190, ptr %7, align 4, !tbaa !9
  %14191 = load i32, ptr %42, align 4, !tbaa !9
  %14192 = icmp ne i32 %14191, 0
  %14193 = xor i1 %14192, true
  %14194 = zext i1 %14193 to i32
  store i32 %14194, ptr %42, align 4, !tbaa !9
  %14195 = load i32, ptr %42, align 4, !tbaa !9
  %14196 = icmp ne i32 %14195, 0
  br i1 %14196, label %14197, label %14199

14197:                                            ; preds = %14174
  store i32 0, ptr %42, align 4, !tbaa !9
  %14198 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14198, ptr %14, align 4, !tbaa !9
  br label %14337

14199:                                            ; preds = %14174
  %14200 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14200, ptr %42, align 4, !tbaa !9
  %14201 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14201, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %14202 = load i32, ptr %44, align 4, !tbaa !9
  %14203 = load i32, ptr %43, align 4, !tbaa !9
  %14204 = sub i32 %14203, %14202
  store i32 %14204, ptr %43, align 4, !tbaa !9
  %14205 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14205, ptr %12, align 4, !tbaa !9
  %14206 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14206, ptr %44, align 4, !tbaa !9
  store i32 4, ptr %45, align 4, !tbaa !9
  %14207 = load i32, ptr %45, align 4, !tbaa !9
  %14208 = and i32 %14207, 31
  %14209 = load i32, ptr %44, align 4, !tbaa !9
  %14210 = lshr i32 %14209, %14208
  store i32 %14210, ptr %44, align 4, !tbaa !9
  %14211 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14211, ptr %45, align 4, !tbaa !9
  store i32 9, ptr %46, align 4, !tbaa !9
  %14212 = load i32, ptr %46, align 4, !tbaa !9
  %14213 = and i32 %14212, 31
  %14214 = load i32, ptr %45, align 4, !tbaa !9
  %14215 = lshr i32 %14214, %14213
  store i32 %14215, ptr %45, align 4, !tbaa !9
  %14216 = load i32, ptr %45, align 4, !tbaa !9
  %14217 = load i32, ptr %44, align 4, !tbaa !9
  %14218 = xor i32 %14217, %14216
  store i32 %14218, ptr %44, align 4, !tbaa !9
  %14219 = load i32, ptr %44, align 4, !tbaa !9
  %14220 = load i32, ptr %43, align 4, !tbaa !9
  %14221 = and i32 %14220, %14219
  store i32 %14221, ptr %43, align 4, !tbaa !9
  %14222 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14222, ptr %26, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14223 = load i32, ptr %44, align 4, !tbaa !9
  %14224 = and i32 %14223, 31
  %14225 = load i32, ptr %43, align 4, !tbaa !9
  %14226 = shl i32 %14225, %14224
  store i32 %14226, ptr %43, align 4, !tbaa !9
  %14227 = load i32, ptr %43, align 4, !tbaa !9
  %14228 = load i32, ptr %42, align 4, !tbaa !9
  %14229 = add i32 %14228, %14227
  store i32 %14229, ptr %42, align 4, !tbaa !9
  %14230 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14230, ptr %14, align 4, !tbaa !9
  %14231 = load ptr, ptr %6, align 8, !tbaa !5
  %14232 = getelementptr inbounds %struct.w2c_hermes, ptr %14231, i32 0, i32 6
  %14233 = load i32, ptr %42, align 4, !tbaa !9
  %14234 = zext i32 %14233 to i64
  %14235 = call i32 @i32_load(ptr noundef %14232, i64 noundef %14234)
  store i32 %14235, ptr %42, align 4, !tbaa !9
  %14236 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14236, ptr %25, align 4, !tbaa !9
  %14237 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14237, ptr %43, align 4, !tbaa !9
  %14238 = load i32, ptr %42, align 4, !tbaa !9
  %14239 = load i32, ptr %43, align 4, !tbaa !9
  %14240 = icmp eq i32 %14238, %14239
  %14241 = zext i1 %14240 to i32
  store i32 %14241, ptr %42, align 4, !tbaa !9
  %14242 = load i32, ptr %42, align 4, !tbaa !9
  %14243 = icmp ne i32 %14242, 0
  br i1 %14243, label %14244, label %14245

14244:                                            ; preds = %14199
  br label %15199

14245:                                            ; preds = %14199
  store i32 0, ptr %42, align 4, !tbaa !9
  %14246 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14246, ptr %22, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %14247 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14247, ptr %24, align 4, !tbaa !9
  br label %14248

14248:                                            ; preds = %14335, %14245
  %14249 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %14249, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %14250 = load i32, ptr %42, align 4, !tbaa !9
  %14251 = load i32, ptr %43, align 4, !tbaa !9
  %14252 = icmp eq i32 %14250, %14251
  %14253 = zext i1 %14252 to i32
  store i32 %14253, ptr %42, align 4, !tbaa !9
  %14254 = load i32, ptr %42, align 4, !tbaa !9
  %14255 = icmp ne i32 %14254, 0
  br i1 %14255, label %14256, label %14269

14256:                                            ; preds = %14248
  %14257 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14257, ptr %42, align 4, !tbaa !9
  %14258 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14258, ptr %43, align 4, !tbaa !9
  %14259 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14259, ptr %44, align 4, !tbaa !9
  %14260 = load i32, ptr %44, align 4, !tbaa !9
  %14261 = icmp ne i32 %14260, 0
  br i1 %14261, label %14262, label %14264

14262:                                            ; preds = %14256
  %14263 = load i32, ptr %42, align 4, !tbaa !9
  br label %14266

14264:                                            ; preds = %14256
  %14265 = load i32, ptr %43, align 4, !tbaa !9
  br label %14266

14266:                                            ; preds = %14264, %14262
  %14267 = phi i32 [ %14263, %14262 ], [ %14265, %14264 ]
  store i32 %14267, ptr %42, align 4, !tbaa !9
  %14268 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14268, ptr %14, align 4, !tbaa !9
  br label %14337

14269:                                            ; preds = %14248
  %14270 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14270, ptr %42, align 4, !tbaa !9
  %14271 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14271, ptr %43, align 4, !tbaa !9
  %14272 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14272, ptr %44, align 4, !tbaa !9
  %14273 = load i32, ptr %44, align 4, !tbaa !9
  %14274 = icmp ne i32 %14273, 0
  br i1 %14274, label %14275, label %14277

14275:                                            ; preds = %14269
  %14276 = load i32, ptr %42, align 4, !tbaa !9
  br label %14279

14277:                                            ; preds = %14269
  %14278 = load i32, ptr %43, align 4, !tbaa !9
  br label %14279

14279:                                            ; preds = %14277, %14275
  %14280 = phi i32 [ %14276, %14275 ], [ %14278, %14277 ]
  store i32 %14280, ptr %42, align 4, !tbaa !9
  %14281 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14281, ptr %43, align 4, !tbaa !9
  %14282 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %14282, ptr %44, align 4, !tbaa !9
  store i32 -8, ptr %45, align 4, !tbaa !9
  %14283 = load i32, ptr %44, align 4, !tbaa !9
  %14284 = load i32, ptr %45, align 4, !tbaa !9
  %14285 = icmp eq i32 %14283, %14284
  %14286 = zext i1 %14285 to i32
  store i32 %14286, ptr %44, align 4, !tbaa !9
  %14287 = load i32, ptr %44, align 4, !tbaa !9
  %14288 = icmp ne i32 %14287, 0
  br i1 %14288, label %14289, label %14291

14289:                                            ; preds = %14279
  %14290 = load i32, ptr %42, align 4, !tbaa !9
  br label %14293

14291:                                            ; preds = %14279
  %14292 = load i32, ptr %43, align 4, !tbaa !9
  br label %14293

14293:                                            ; preds = %14291, %14289
  %14294 = phi i32 [ %14290, %14289 ], [ %14292, %14291 ]
  store i32 %14294, ptr %42, align 4, !tbaa !9
  %14295 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14295, ptr %22, align 4, !tbaa !9
  %14296 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %14296, ptr %42, align 4, !tbaa !9
  %14297 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %14297, ptr %43, align 4, !tbaa !9
  %14298 = load i32, ptr %43, align 4, !tbaa !9
  %14299 = load i32, ptr %42, align 4, !tbaa !9
  %14300 = add i32 %14299, %14298
  store i32 %14300, ptr %42, align 4, !tbaa !9
  %14301 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14301, ptr %11, align 4, !tbaa !9
  %14302 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %14302, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %14303 = load i32, ptr %43, align 4, !tbaa !9
  %14304 = load i32, ptr %42, align 4, !tbaa !9
  %14305 = add i32 %14304, %14303
  store i32 %14305, ptr %42, align 4, !tbaa !9
  %14306 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14306, ptr %24, align 4, !tbaa !9
  %14307 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14307, ptr %42, align 4, !tbaa !9
  %14308 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14308, ptr %43, align 4, !tbaa !9
  %14309 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14309, ptr %44, align 4, !tbaa !9
  %14310 = load i32, ptr %44, align 4, !tbaa !9
  %14311 = load i32, ptr %43, align 4, !tbaa !9
  %14312 = and i32 %14311, %14310
  store i32 %14312, ptr %43, align 4, !tbaa !9
  %14313 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14313, ptr %26, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14314 = load i32, ptr %44, align 4, !tbaa !9
  %14315 = and i32 %14314, 31
  %14316 = load i32, ptr %43, align 4, !tbaa !9
  %14317 = shl i32 %14316, %14315
  store i32 %14317, ptr %43, align 4, !tbaa !9
  %14318 = load i32, ptr %43, align 4, !tbaa !9
  %14319 = load i32, ptr %42, align 4, !tbaa !9
  %14320 = add i32 %14319, %14318
  store i32 %14320, ptr %42, align 4, !tbaa !9
  %14321 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14321, ptr %14, align 4, !tbaa !9
  %14322 = load ptr, ptr %6, align 8, !tbaa !5
  %14323 = getelementptr inbounds %struct.w2c_hermes, ptr %14322, i32 0, i32 6
  %14324 = load i32, ptr %42, align 4, !tbaa !9
  %14325 = zext i32 %14324 to i64
  %14326 = call i32 @i32_load(ptr noundef %14323, i64 noundef %14325)
  store i32 %14326, ptr %42, align 4, !tbaa !9
  %14327 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14327, ptr %25, align 4, !tbaa !9
  %14328 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14328, ptr %43, align 4, !tbaa !9
  %14329 = load i32, ptr %42, align 4, !tbaa !9
  %14330 = load i32, ptr %43, align 4, !tbaa !9
  %14331 = icmp ne i32 %14329, %14330
  %14332 = zext i1 %14331 to i32
  store i32 %14332, ptr %42, align 4, !tbaa !9
  %14333 = load i32, ptr %42, align 4, !tbaa !9
  %14334 = icmp ne i32 %14333, 0
  br i1 %14334, label %14335, label %14336

14335:                                            ; preds = %14293
  br label %14248

14336:                                            ; preds = %14293
  br label %15199

14337:                                            ; preds = %14266, %14197
  %14338 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14338, ptr %42, align 4, !tbaa !9
  %14339 = load ptr, ptr %6, align 8, !tbaa !5
  %14340 = getelementptr inbounds %struct.w2c_hermes, ptr %14339, i32 0, i32 6
  %14341 = load i32, ptr %42, align 4, !tbaa !9
  %14342 = zext i32 %14341 to i64
  %14343 = add i64 %14342, 40
  %14344 = call i32 @i32_load(ptr noundef %14340, i64 noundef %14343)
  store i32 %14344, ptr %42, align 4, !tbaa !9
  %14345 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14345, ptr %11, align 4, !tbaa !9
  store i32 2, ptr %43, align 4, !tbaa !9
  %14346 = load i32, ptr %43, align 4, !tbaa !9
  %14347 = and i32 %14346, 31
  %14348 = load i32, ptr %42, align 4, !tbaa !9
  %14349 = shl i32 %14348, %14347
  store i32 %14349, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %14350 = load i32, ptr %43, align 4, !tbaa !9
  %14351 = load i32, ptr %42, align 4, !tbaa !9
  %14352 = add i32 %14351, %14350
  store i32 %14352, ptr %42, align 4, !tbaa !9
  %14353 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14353, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %14354 = load i32, ptr %44, align 4, !tbaa !9
  %14355 = load i32, ptr %43, align 4, !tbaa !9
  %14356 = mul i32 %14355, %14354
  store i32 %14356, ptr %43, align 4, !tbaa !9
  %14357 = load i32, ptr %42, align 4, !tbaa !9
  %14358 = load i32, ptr %43, align 4, !tbaa !9
  %14359 = icmp uge i32 %14357, %14358
  %14360 = zext i1 %14359 to i32
  store i32 %14360, ptr %42, align 4, !tbaa !9
  %14361 = load i32, ptr %42, align 4, !tbaa !9
  %14362 = icmp ne i32 %14361, 0
  br i1 %14362, label %14363, label %14370

14363:                                            ; preds = %14337
  %14364 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14364, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %14365 = load i32, ptr %43, align 4, !tbaa !9
  %14366 = and i32 %14365, 31
  %14367 = load i32, ptr %42, align 4, !tbaa !9
  %14368 = shl i32 %14367, %14366
  store i32 %14368, ptr %42, align 4, !tbaa !9
  %14369 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14369, ptr %18, align 4, !tbaa !9
  br label %14403

14370:                                            ; preds = %14337
  %14371 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14371, ptr %42, align 4, !tbaa !9
  %14372 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14372, ptr %18, align 4, !tbaa !9
  %14373 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14373, ptr %43, align 4, !tbaa !9
  store i32 -1, ptr %44, align 4, !tbaa !9
  %14374 = load i32, ptr %44, align 4, !tbaa !9
  %14375 = load i32, ptr %43, align 4, !tbaa !9
  %14376 = xor i32 %14375, %14374
  store i32 %14376, ptr %43, align 4, !tbaa !9
  %14377 = load i32, ptr %43, align 4, !tbaa !9
  %14378 = load i32, ptr %42, align 4, !tbaa !9
  %14379 = add i32 %14378, %14377
  store i32 %14379, ptr %42, align 4, !tbaa !9
  %14380 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14380, ptr %43, align 4, !tbaa !9
  %14381 = load ptr, ptr %6, align 8, !tbaa !5
  %14382 = getelementptr inbounds %struct.w2c_hermes, ptr %14381, i32 0, i32 6
  %14383 = load i32, ptr %43, align 4, !tbaa !9
  %14384 = zext i32 %14383 to i64
  %14385 = add i64 %14384, 44
  %14386 = call i32 @i32_load(ptr noundef %14382, i64 noundef %14385)
  store i32 %14386, ptr %43, align 4, !tbaa !9
  %14387 = load i32, ptr %43, align 4, !tbaa !9
  %14388 = load i32, ptr %42, align 4, !tbaa !9
  %14389 = sub i32 %14388, %14387
  store i32 %14389, ptr %42, align 4, !tbaa !9
  %14390 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14390, ptr %43, align 4, !tbaa !9
  store i32 3, ptr %44, align 4, !tbaa !9
  %14391 = load i32, ptr %44, align 4, !tbaa !9
  %14392 = and i32 %14391, 31
  %14393 = load i32, ptr %43, align 4, !tbaa !9
  %14394 = lshr i32 %14393, %14392
  store i32 %14394, ptr %43, align 4, !tbaa !9
  %14395 = load i32, ptr %42, align 4, !tbaa !9
  %14396 = load i32, ptr %43, align 4, !tbaa !9
  %14397 = icmp ugt i32 %14395, %14396
  %14398 = zext i1 %14397 to i32
  store i32 %14398, ptr %42, align 4, !tbaa !9
  %14399 = load i32, ptr %42, align 4, !tbaa !9
  %14400 = icmp ne i32 %14399, 0
  br i1 %14400, label %14401, label %14402

14401:                                            ; preds = %14370
  br label %15140

14402:                                            ; preds = %14370
  br label %14403

14403:                                            ; preds = %14402, %14363
  %14404 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14404, ptr %42, align 4, !tbaa !9
  store i32 64, ptr %43, align 4, !tbaa !9
  %14405 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %14405, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %14406 = load i32, ptr %45, align 4, !tbaa !9
  %14407 = load i32, ptr %44, align 4, !tbaa !9
  %14408 = sub i32 %14407, %14406
  store i32 %14408, ptr %44, align 4, !tbaa !9
  %14409 = load i32, ptr %44, align 4, !tbaa !9
  %14410 = zext i32 %14409 to i64
  store i64 %14410, ptr %50, align 8, !tbaa !11
  %14411 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %14411, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %51, align 8, !tbaa !11
  %14412 = load i64, ptr %51, align 8, !tbaa !11
  %14413 = and i64 %14412, 63
  %14414 = load i64, ptr %50, align 8, !tbaa !11
  %14415 = lshr i64 %14414, %14413
  store i64 %14415, ptr %50, align 8, !tbaa !11
  %14416 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %14416, ptr %51, align 8, !tbaa !11
  %14417 = load i64, ptr %51, align 8, !tbaa !11
  %14418 = load i64, ptr %50, align 8, !tbaa !11
  %14419 = or i64 %14418, %14417
  store i64 %14419, ptr %50, align 8, !tbaa !11
  %14420 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %14420, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %51, align 8, !tbaa !11
  %14421 = load i64, ptr %51, align 8, !tbaa !11
  %14422 = and i64 %14421, 63
  %14423 = load i64, ptr %50, align 8, !tbaa !11
  %14424 = lshr i64 %14423, %14422
  store i64 %14424, ptr %50, align 8, !tbaa !11
  %14425 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %14425, ptr %51, align 8, !tbaa !11
  %14426 = load i64, ptr %51, align 8, !tbaa !11
  %14427 = load i64, ptr %50, align 8, !tbaa !11
  %14428 = or i64 %14427, %14426
  store i64 %14428, ptr %50, align 8, !tbaa !11
  %14429 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %14429, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %51, align 8, !tbaa !11
  %14430 = load i64, ptr %51, align 8, !tbaa !11
  %14431 = and i64 %14430, 63
  %14432 = load i64, ptr %50, align 8, !tbaa !11
  %14433 = lshr i64 %14432, %14431
  store i64 %14433, ptr %50, align 8, !tbaa !11
  %14434 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %14434, ptr %51, align 8, !tbaa !11
  %14435 = load i64, ptr %51, align 8, !tbaa !11
  %14436 = load i64, ptr %50, align 8, !tbaa !11
  %14437 = or i64 %14436, %14435
  store i64 %14437, ptr %50, align 8, !tbaa !11
  %14438 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %14438, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %51, align 8, !tbaa !11
  %14439 = load i64, ptr %51, align 8, !tbaa !11
  %14440 = and i64 %14439, 63
  %14441 = load i64, ptr %50, align 8, !tbaa !11
  %14442 = lshr i64 %14441, %14440
  store i64 %14442, ptr %50, align 8, !tbaa !11
  %14443 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %14443, ptr %51, align 8, !tbaa !11
  %14444 = load i64, ptr %51, align 8, !tbaa !11
  %14445 = load i64, ptr %50, align 8, !tbaa !11
  %14446 = or i64 %14445, %14444
  store i64 %14446, ptr %50, align 8, !tbaa !11
  %14447 = load i64, ptr %50, align 8, !tbaa !11
  store i64 %14447, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %51, align 8, !tbaa !11
  %14448 = load i64, ptr %51, align 8, !tbaa !11
  %14449 = and i64 %14448, 63
  %14450 = load i64, ptr %50, align 8, !tbaa !11
  %14451 = lshr i64 %14450, %14449
  store i64 %14451, ptr %50, align 8, !tbaa !11
  %14452 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %14452, ptr %51, align 8, !tbaa !11
  %14453 = load i64, ptr %51, align 8, !tbaa !11
  %14454 = load i64, ptr %50, align 8, !tbaa !11
  %14455 = or i64 %14454, %14453
  store i64 %14455, ptr %50, align 8, !tbaa !11
  %14456 = load i64, ptr %50, align 8, !tbaa !11
  %14457 = trunc i64 %14456 to i32
  store i32 %14457, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %14458 = load i32, ptr %45, align 4, !tbaa !9
  %14459 = load i32, ptr %44, align 4, !tbaa !9
  %14460 = add i32 %14459, %14458
  store i32 %14460, ptr %44, align 4, !tbaa !9
  %14461 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %14461, ptr %11, align 4, !tbaa !9
  %14462 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14462, ptr %45, align 4, !tbaa !9
  store i32 64, ptr %46, align 4, !tbaa !9
  %14463 = load i32, ptr %45, align 4, !tbaa !9
  %14464 = load i32, ptr %46, align 4, !tbaa !9
  %14465 = icmp ule i32 %14463, %14464
  %14466 = zext i1 %14465 to i32
  store i32 %14466, ptr %45, align 4, !tbaa !9
  %14467 = load i32, ptr %45, align 4, !tbaa !9
  %14468 = icmp ne i32 %14467, 0
  br i1 %14468, label %14469, label %14471

14469:                                            ; preds = %14403
  %14470 = load i32, ptr %43, align 4, !tbaa !9
  br label %14473

14471:                                            ; preds = %14403
  %14472 = load i32, ptr %44, align 4, !tbaa !9
  br label %14473

14473:                                            ; preds = %14471, %14469
  %14474 = phi i32 [ %14470, %14469 ], [ %14472, %14471 ]
  store i32 %14474, ptr %43, align 4, !tbaa !9
  %14475 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14475, ptr %11, align 4, !tbaa !9
  %14476 = load ptr, ptr %6, align 8, !tbaa !5
  %14477 = getelementptr inbounds %struct.w2c_hermes, ptr %14476, i32 0, i32 6
  %14478 = load i32, ptr %42, align 4, !tbaa !9
  %14479 = zext i32 %14478 to i64
  %14480 = add i64 %14479, 48
  %14481 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14477, i64 noundef %14480, i32 noundef %14481)
  %14482 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14482, ptr %42, align 4, !tbaa !9
  %14483 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14483, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14484 = load i32, ptr %44, align 4, !tbaa !9
  %14485 = and i32 %14484, 31
  %14486 = load i32, ptr %43, align 4, !tbaa !9
  %14487 = shl i32 %14486, %14485
  store i32 %14487, ptr %43, align 4, !tbaa !9
  %14488 = load ptr, ptr %6, align 8, !tbaa !5
  %14489 = load i32, ptr %43, align 4, !tbaa !9
  %14490 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %14488, i32 noundef %14489)
  store i32 %14490, ptr %43, align 4, !tbaa !9
  %14491 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14491, ptr %22, align 4, !tbaa !9
  %14492 = load ptr, ptr %6, align 8, !tbaa !5
  %14493 = getelementptr inbounds %struct.w2c_hermes, ptr %14492, i32 0, i32 6
  %14494 = load i32, ptr %42, align 4, !tbaa !9
  %14495 = zext i32 %14494 to i64
  %14496 = add i64 %14495, 36
  %14497 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14493, i64 noundef %14496, i32 noundef %14497)
  %14498 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14498, ptr %42, align 4, !tbaa !9
  %14499 = load i32, ptr %42, align 4, !tbaa !9
  %14500 = icmp ne i32 %14499, 0
  %14501 = xor i1 %14500, true
  %14502 = zext i1 %14501 to i32
  store i32 %14502, ptr %42, align 4, !tbaa !9
  %14503 = load i32, ptr %42, align 4, !tbaa !9
  %14504 = icmp ne i32 %14503, 0
  br i1 %14504, label %14505, label %14635

14505:                                            ; preds = %14473
  %14506 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14506, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %14507 = load ptr, ptr %6, align 8, !tbaa !5
  %14508 = getelementptr inbounds %struct.w2c_hermes, ptr %14507, i32 0, i32 6
  %14509 = load i32, ptr %42, align 4, !tbaa !9
  %14510 = zext i32 %14509 to i64
  %14511 = add i64 %14510, 40
  %14512 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14508, i64 noundef %14511, i64 noundef %14512)
  %14513 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14513, ptr %42, align 4, !tbaa !9
  %14514 = load ptr, ptr %6, align 8, !tbaa !5
  %14515 = getelementptr inbounds %struct.w2c_hermes, ptr %14514, i32 0, i32 6
  %14516 = load i32, ptr %42, align 4, !tbaa !9
  %14517 = zext i32 %14516 to i64
  %14518 = add i64 %14517, 48
  %14519 = call i32 @i32_load(ptr noundef %14515, i64 noundef %14518)
  store i32 %14519, ptr %42, align 4, !tbaa !9
  %14520 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14520, ptr %18, align 4, !tbaa !9
  %14521 = load i32, ptr %42, align 4, !tbaa !9
  %14522 = icmp ne i32 %14521, 0
  %14523 = xor i1 %14522, true
  %14524 = zext i1 %14523 to i32
  store i32 %14524, ptr %42, align 4, !tbaa !9
  %14525 = load i32, ptr %42, align 4, !tbaa !9
  %14526 = icmp ne i32 %14525, 0
  br i1 %14526, label %14527, label %14529

14527:                                            ; preds = %14505
  store i32 0, ptr %42, align 4, !tbaa !9
  %14528 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14528, ptr %18, align 4, !tbaa !9
  br label %15001

14529:                                            ; preds = %14505
  store i32 0, ptr %42, align 4, !tbaa !9
  %14530 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14530, ptr %17, align 4, !tbaa !9
  %14531 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14531, ptr %42, align 4, !tbaa !9
  %14532 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14532, ptr %11, align 4, !tbaa !9
  %14533 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %14533, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %14534 = load i32, ptr %43, align 4, !tbaa !9
  %14535 = load i32, ptr %42, align 4, !tbaa !9
  %14536 = and i32 %14535, %14534
  store i32 %14536, ptr %42, align 4, !tbaa !9
  %14537 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14537, ptr %7, align 4, !tbaa !9
  %14538 = load i32, ptr %42, align 4, !tbaa !9
  %14539 = icmp ne i32 %14538, 0
  br i1 %14539, label %14540, label %14567

14540:                                            ; preds = %14529
  br label %14541

14541:                                            ; preds = %14565, %14540
  %14542 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14542, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %14543 = load ptr, ptr %6, align 8, !tbaa !5
  %14544 = getelementptr inbounds %struct.w2c_hermes, ptr %14543, i32 0, i32 6
  %14545 = load i32, ptr %42, align 4, !tbaa !9
  %14546 = zext i32 %14545 to i64
  %14547 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14544, i64 noundef %14546, i32 noundef %14547)
  %14548 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14548, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %14549 = load i32, ptr %43, align 4, !tbaa !9
  %14550 = load i32, ptr %42, align 4, !tbaa !9
  %14551 = add i32 %14550, %14549
  store i32 %14551, ptr %42, align 4, !tbaa !9
  %14552 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14552, ptr %11, align 4, !tbaa !9
  %14553 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %14553, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %14554 = load i32, ptr %43, align 4, !tbaa !9
  %14555 = load i32, ptr %42, align 4, !tbaa !9
  %14556 = add i32 %14555, %14554
  store i32 %14556, ptr %42, align 4, !tbaa !9
  %14557 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14557, ptr %17, align 4, !tbaa !9
  %14558 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14558, ptr %43, align 4, !tbaa !9
  %14559 = load i32, ptr %42, align 4, !tbaa !9
  %14560 = load i32, ptr %43, align 4, !tbaa !9
  %14561 = icmp ne i32 %14559, %14560
  %14562 = zext i1 %14561 to i32
  store i32 %14562, ptr %42, align 4, !tbaa !9
  %14563 = load i32, ptr %42, align 4, !tbaa !9
  %14564 = icmp ne i32 %14563, 0
  br i1 %14564, label %14565, label %14566

14565:                                            ; preds = %14541
  br label %14541

14566:                                            ; preds = %14541
  br label %14567

14567:                                            ; preds = %14566, %14529
  %14568 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %14568, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %14569 = load i32, ptr %43, align 4, !tbaa !9
  %14570 = load i32, ptr %42, align 4, !tbaa !9
  %14571 = sub i32 %14570, %14569
  store i32 %14571, ptr %42, align 4, !tbaa !9
  store i32 1073741823, ptr %43, align 4, !tbaa !9
  %14572 = load i32, ptr %43, align 4, !tbaa !9
  %14573 = load i32, ptr %42, align 4, !tbaa !9
  %14574 = and i32 %14573, %14572
  store i32 %14574, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %14575 = load i32, ptr %42, align 4, !tbaa !9
  %14576 = load i32, ptr %43, align 4, !tbaa !9
  %14577 = icmp ult i32 %14575, %14576
  %14578 = zext i1 %14577 to i32
  store i32 %14578, ptr %42, align 4, !tbaa !9
  %14579 = load i32, ptr %42, align 4, !tbaa !9
  %14580 = icmp ne i32 %14579, 0
  br i1 %14580, label %14581, label %14582

14581:                                            ; preds = %14567
  br label %15001

14582:                                            ; preds = %14567
  %14583 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14583, ptr %42, align 4, !tbaa !9
  %14584 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %14584, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14585 = load i32, ptr %44, align 4, !tbaa !9
  %14586 = and i32 %14585, 31
  %14587 = load i32, ptr %43, align 4, !tbaa !9
  %14588 = shl i32 %14587, %14586
  store i32 %14588, ptr %43, align 4, !tbaa !9
  %14589 = load i32, ptr %43, align 4, !tbaa !9
  %14590 = load i32, ptr %42, align 4, !tbaa !9
  %14591 = add i32 %14590, %14589
  store i32 %14591, ptr %42, align 4, !tbaa !9
  %14592 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14592, ptr %7, align 4, !tbaa !9
  br label %14593

14593:                                            ; preds = %14633, %14582
  %14594 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14594, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %14595 = load ptr, ptr %6, align 8, !tbaa !5
  %14596 = getelementptr inbounds %struct.w2c_hermes, ptr %14595, i32 0, i32 6
  %14597 = load i32, ptr %42, align 4, !tbaa !9
  %14598 = zext i32 %14597 to i64
  %14599 = add i64 %14598, 24
  %14600 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14596, i64 noundef %14599, i64 noundef %14600)
  %14601 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14601, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %14602 = load ptr, ptr %6, align 8, !tbaa !5
  %14603 = getelementptr inbounds %struct.w2c_hermes, ptr %14602, i32 0, i32 6
  %14604 = load i32, ptr %42, align 4, !tbaa !9
  %14605 = zext i32 %14604 to i64
  %14606 = add i64 %14605, 16
  %14607 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14603, i64 noundef %14606, i64 noundef %14607)
  %14608 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14608, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %14609 = load ptr, ptr %6, align 8, !tbaa !5
  %14610 = getelementptr inbounds %struct.w2c_hermes, ptr %14609, i32 0, i32 6
  %14611 = load i32, ptr %42, align 4, !tbaa !9
  %14612 = zext i32 %14611 to i64
  %14613 = add i64 %14612, 8
  %14614 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14610, i64 noundef %14613, i64 noundef %14614)
  %14615 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14615, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %14616 = load ptr, ptr %6, align 8, !tbaa !5
  %14617 = getelementptr inbounds %struct.w2c_hermes, ptr %14616, i32 0, i32 6
  %14618 = load i32, ptr %42, align 4, !tbaa !9
  %14619 = zext i32 %14618 to i64
  %14620 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14617, i64 noundef %14619, i64 noundef %14620)
  %14621 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14621, ptr %42, align 4, !tbaa !9
  store i32 32, ptr %43, align 4, !tbaa !9
  %14622 = load i32, ptr %43, align 4, !tbaa !9
  %14623 = load i32, ptr %42, align 4, !tbaa !9
  %14624 = add i32 %14623, %14622
  store i32 %14624, ptr %42, align 4, !tbaa !9
  %14625 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14625, ptr %11, align 4, !tbaa !9
  %14626 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14626, ptr %43, align 4, !tbaa !9
  %14627 = load i32, ptr %42, align 4, !tbaa !9
  %14628 = load i32, ptr %43, align 4, !tbaa !9
  %14629 = icmp ne i32 %14627, %14628
  %14630 = zext i1 %14629 to i32
  store i32 %14630, ptr %42, align 4, !tbaa !9
  %14631 = load i32, ptr %42, align 4, !tbaa !9
  %14632 = icmp ne i32 %14631, 0
  br i1 %14632, label %14633, label %14634

14633:                                            ; preds = %14593
  br label %14593

14634:                                            ; preds = %14593
  br label %15001

14635:                                            ; preds = %14473
  %14636 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14636, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %14637 = load ptr, ptr %6, align 8, !tbaa !5
  %14638 = getelementptr inbounds %struct.w2c_hermes, ptr %14637, i32 0, i32 6
  %14639 = load i32, ptr %42, align 4, !tbaa !9
  %14640 = zext i32 %14639 to i64
  %14641 = add i64 %14640, 40
  %14642 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14638, i64 noundef %14641, i64 noundef %14642)
  %14643 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14643, ptr %42, align 4, !tbaa !9
  %14644 = load ptr, ptr %6, align 8, !tbaa !5
  %14645 = getelementptr inbounds %struct.w2c_hermes, ptr %14644, i32 0, i32 6
  %14646 = load i32, ptr %42, align 4, !tbaa !9
  %14647 = zext i32 %14646 to i64
  %14648 = add i64 %14647, 48
  %14649 = call i32 @i32_load(ptr noundef %14645, i64 noundef %14648)
  store i32 %14649, ptr %42, align 4, !tbaa !9
  %14650 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14650, ptr %12, align 4, !tbaa !9
  %14651 = load i32, ptr %42, align 4, !tbaa !9
  %14652 = icmp ne i32 %14651, 0
  %14653 = xor i1 %14652, true
  %14654 = zext i1 %14653 to i32
  store i32 %14654, ptr %42, align 4, !tbaa !9
  %14655 = load i32, ptr %42, align 4, !tbaa !9
  %14656 = icmp ne i32 %14655, 0
  br i1 %14656, label %14657, label %14658

14657:                                            ; preds = %14635
  br label %14764

14658:                                            ; preds = %14635
  store i32 0, ptr %42, align 4, !tbaa !9
  %14659 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14659, ptr %26, align 4, !tbaa !9
  %14660 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14660, ptr %42, align 4, !tbaa !9
  %14661 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14661, ptr %14, align 4, !tbaa !9
  %14662 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14662, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %14663 = load i32, ptr %43, align 4, !tbaa !9
  %14664 = load i32, ptr %42, align 4, !tbaa !9
  %14665 = and i32 %14664, %14663
  store i32 %14665, ptr %42, align 4, !tbaa !9
  %14666 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14666, ptr %11, align 4, !tbaa !9
  %14667 = load i32, ptr %42, align 4, !tbaa !9
  %14668 = icmp ne i32 %14667, 0
  br i1 %14668, label %14669, label %14696

14669:                                            ; preds = %14658
  br label %14670

14670:                                            ; preds = %14694, %14669
  %14671 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14671, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %14672 = load ptr, ptr %6, align 8, !tbaa !5
  %14673 = getelementptr inbounds %struct.w2c_hermes, ptr %14672, i32 0, i32 6
  %14674 = load i32, ptr %42, align 4, !tbaa !9
  %14675 = zext i32 %14674 to i64
  %14676 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14673, i64 noundef %14675, i32 noundef %14676)
  %14677 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14677, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %14678 = load i32, ptr %43, align 4, !tbaa !9
  %14679 = load i32, ptr %42, align 4, !tbaa !9
  %14680 = add i32 %14679, %14678
  store i32 %14680, ptr %42, align 4, !tbaa !9
  %14681 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14681, ptr %14, align 4, !tbaa !9
  %14682 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %14682, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %14683 = load i32, ptr %43, align 4, !tbaa !9
  %14684 = load i32, ptr %42, align 4, !tbaa !9
  %14685 = add i32 %14684, %14683
  store i32 %14685, ptr %42, align 4, !tbaa !9
  %14686 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14686, ptr %26, align 4, !tbaa !9
  %14687 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14687, ptr %43, align 4, !tbaa !9
  %14688 = load i32, ptr %42, align 4, !tbaa !9
  %14689 = load i32, ptr %43, align 4, !tbaa !9
  %14690 = icmp ne i32 %14688, %14689
  %14691 = zext i1 %14690 to i32
  store i32 %14691, ptr %42, align 4, !tbaa !9
  %14692 = load i32, ptr %42, align 4, !tbaa !9
  %14693 = icmp ne i32 %14692, 0
  br i1 %14693, label %14694, label %14695

14694:                                            ; preds = %14670
  br label %14670

14695:                                            ; preds = %14670
  br label %14696

14696:                                            ; preds = %14695, %14658
  %14697 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14697, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %14698 = load i32, ptr %43, align 4, !tbaa !9
  %14699 = load i32, ptr %42, align 4, !tbaa !9
  %14700 = sub i32 %14699, %14698
  store i32 %14700, ptr %42, align 4, !tbaa !9
  store i32 1073741823, ptr %43, align 4, !tbaa !9
  %14701 = load i32, ptr %43, align 4, !tbaa !9
  %14702 = load i32, ptr %42, align 4, !tbaa !9
  %14703 = and i32 %14702, %14701
  store i32 %14703, ptr %42, align 4, !tbaa !9
  store i32 7, ptr %43, align 4, !tbaa !9
  %14704 = load i32, ptr %42, align 4, !tbaa !9
  %14705 = load i32, ptr %43, align 4, !tbaa !9
  %14706 = icmp ult i32 %14704, %14705
  %14707 = zext i1 %14706 to i32
  store i32 %14707, ptr %42, align 4, !tbaa !9
  %14708 = load i32, ptr %42, align 4, !tbaa !9
  %14709 = icmp ne i32 %14708, 0
  br i1 %14709, label %14710, label %14711

14710:                                            ; preds = %14696
  br label %14764

14711:                                            ; preds = %14696
  %14712 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14712, ptr %42, align 4, !tbaa !9
  %14713 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14713, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14714 = load i32, ptr %44, align 4, !tbaa !9
  %14715 = and i32 %14714, 31
  %14716 = load i32, ptr %43, align 4, !tbaa !9
  %14717 = shl i32 %14716, %14715
  store i32 %14717, ptr %43, align 4, !tbaa !9
  %14718 = load i32, ptr %43, align 4, !tbaa !9
  %14719 = load i32, ptr %42, align 4, !tbaa !9
  %14720 = add i32 %14719, %14718
  store i32 %14720, ptr %42, align 4, !tbaa !9
  %14721 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14721, ptr %11, align 4, !tbaa !9
  br label %14722

14722:                                            ; preds = %14762, %14711
  %14723 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14723, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %14724 = load ptr, ptr %6, align 8, !tbaa !5
  %14725 = getelementptr inbounds %struct.w2c_hermes, ptr %14724, i32 0, i32 6
  %14726 = load i32, ptr %42, align 4, !tbaa !9
  %14727 = zext i32 %14726 to i64
  %14728 = add i64 %14727, 24
  %14729 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14725, i64 noundef %14728, i64 noundef %14729)
  %14730 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14730, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %14731 = load ptr, ptr %6, align 8, !tbaa !5
  %14732 = getelementptr inbounds %struct.w2c_hermes, ptr %14731, i32 0, i32 6
  %14733 = load i32, ptr %42, align 4, !tbaa !9
  %14734 = zext i32 %14733 to i64
  %14735 = add i64 %14734, 16
  %14736 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14732, i64 noundef %14735, i64 noundef %14736)
  %14737 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14737, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %14738 = load ptr, ptr %6, align 8, !tbaa !5
  %14739 = getelementptr inbounds %struct.w2c_hermes, ptr %14738, i32 0, i32 6
  %14740 = load i32, ptr %42, align 4, !tbaa !9
  %14741 = zext i32 %14740 to i64
  %14742 = add i64 %14741, 8
  %14743 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14739, i64 noundef %14742, i64 noundef %14743)
  %14744 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14744, ptr %42, align 4, !tbaa !9
  store i64 -12884901892, ptr %49, align 8, !tbaa !11
  %14745 = load ptr, ptr %6, align 8, !tbaa !5
  %14746 = getelementptr inbounds %struct.w2c_hermes, ptr %14745, i32 0, i32 6
  %14747 = load i32, ptr %42, align 4, !tbaa !9
  %14748 = zext i32 %14747 to i64
  %14749 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14746, i64 noundef %14748, i64 noundef %14749)
  %14750 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14750, ptr %42, align 4, !tbaa !9
  store i32 32, ptr %43, align 4, !tbaa !9
  %14751 = load i32, ptr %43, align 4, !tbaa !9
  %14752 = load i32, ptr %42, align 4, !tbaa !9
  %14753 = add i32 %14752, %14751
  store i32 %14753, ptr %42, align 4, !tbaa !9
  %14754 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14754, ptr %14, align 4, !tbaa !9
  %14755 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14755, ptr %43, align 4, !tbaa !9
  %14756 = load i32, ptr %42, align 4, !tbaa !9
  %14757 = load i32, ptr %43, align 4, !tbaa !9
  %14758 = icmp ne i32 %14756, %14757
  %14759 = zext i1 %14758 to i32
  store i32 %14759, ptr %42, align 4, !tbaa !9
  %14760 = load i32, ptr %42, align 4, !tbaa !9
  %14761 = icmp ne i32 %14760, 0
  br i1 %14761, label %14762, label %14763

14762:                                            ; preds = %14722
  br label %14722

14763:                                            ; preds = %14722
  br label %14764

14764:                                            ; preds = %14763, %14710, %14657
  %14765 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14765, ptr %42, align 4, !tbaa !9
  %14766 = load i32, ptr %42, align 4, !tbaa !9
  %14767 = icmp ne i32 %14766, 0
  br i1 %14767, label %14768, label %14981

14768:                                            ; preds = %14764
  %14769 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14769, ptr %42, align 4, !tbaa !9
  %14770 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14770, ptr %43, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14771 = load i32, ptr %44, align 4, !tbaa !9
  %14772 = and i32 %14771, 31
  %14773 = load i32, ptr %43, align 4, !tbaa !9
  %14774 = shl i32 %14773, %14772
  store i32 %14774, ptr %43, align 4, !tbaa !9
  %14775 = load i32, ptr %43, align 4, !tbaa !9
  %14776 = load i32, ptr %42, align 4, !tbaa !9
  %14777 = add i32 %14776, %14775
  store i32 %14777, ptr %42, align 4, !tbaa !9
  %14778 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14778, ptr %25, align 4, !tbaa !9
  %14779 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14779, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %14780 = load i32, ptr %43, align 4, !tbaa !9
  %14781 = load i32, ptr %42, align 4, !tbaa !9
  %14782 = sub i32 %14781, %14780
  store i32 %14782, ptr %42, align 4, !tbaa !9
  %14783 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14783, ptr %31, align 4, !tbaa !9
  store i32 0, ptr %42, align 4, !tbaa !9
  %14784 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14784, ptr %18, align 4, !tbaa !9
  %14785 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14785, ptr %42, align 4, !tbaa !9
  %14786 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14786, ptr %11, align 4, !tbaa !9
  br label %14787

14787:                                            ; preds = %14979, %14768
  %14788 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14788, ptr %42, align 4, !tbaa !9
  %14789 = load ptr, ptr %6, align 8, !tbaa !5
  %14790 = getelementptr inbounds %struct.w2c_hermes, ptr %14789, i32 0, i32 6
  %14791 = load i32, ptr %42, align 4, !tbaa !9
  %14792 = zext i32 %14791 to i64
  %14793 = call i32 @i32_load(ptr noundef %14790, i64 noundef %14792)
  store i32 %14793, ptr %42, align 4, !tbaa !9
  %14794 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14794, ptr %32, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %14795 = load i32, ptr %43, align 4, !tbaa !9
  %14796 = load i32, ptr %42, align 4, !tbaa !9
  %14797 = add i32 %14796, %14795
  store i32 %14797, ptr %42, align 4, !tbaa !9
  %14798 = load i32, ptr %42, align 4, !tbaa !9
  switch i32 %14798, label %14804 [
    i32 0, label %14799
    i32 1, label %14800
    i32 2, label %14801
    i32 3, label %14802
    i32 4, label %14803
  ]

14799:                                            ; preds = %14787
  br label %14966

14800:                                            ; preds = %14787
  br label %14805

14801:                                            ; preds = %14787
  br label %14805

14802:                                            ; preds = %14787
  br label %14805

14803:                                            ; preds = %14787
  br label %14966

14804:                                            ; preds = %14787
  br label %14805

14805:                                            ; preds = %14804, %14802, %14801, %14800
  %14806 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14806, ptr %42, align 4, !tbaa !9
  %14807 = load ptr, ptr %6, align 8, !tbaa !5
  %14808 = getelementptr inbounds %struct.w2c_hermes, ptr %14807, i32 0, i32 6
  %14809 = load i32, ptr %42, align 4, !tbaa !9
  %14810 = zext i32 %14809 to i64
  %14811 = add i64 %14810, 36
  %14812 = call i32 @i32_load(ptr noundef %14808, i64 noundef %14811)
  store i32 %14812, ptr %42, align 4, !tbaa !9
  %14813 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14813, ptr %17, align 4, !tbaa !9
  %14814 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %14814, ptr %43, align 4, !tbaa !9
  store i32 4, ptr %44, align 4, !tbaa !9
  %14815 = load i32, ptr %44, align 4, !tbaa !9
  %14816 = and i32 %14815, 31
  %14817 = load i32, ptr %43, align 4, !tbaa !9
  %14818 = lshr i32 %14817, %14816
  store i32 %14818, ptr %43, align 4, !tbaa !9
  %14819 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %14819, ptr %44, align 4, !tbaa !9
  store i32 9, ptr %45, align 4, !tbaa !9
  %14820 = load i32, ptr %45, align 4, !tbaa !9
  %14821 = and i32 %14820, 31
  %14822 = load i32, ptr %44, align 4, !tbaa !9
  %14823 = lshr i32 %14822, %14821
  store i32 %14823, ptr %44, align 4, !tbaa !9
  %14824 = load i32, ptr %44, align 4, !tbaa !9
  %14825 = load i32, ptr %43, align 4, !tbaa !9
  %14826 = xor i32 %14825, %14824
  store i32 %14826, ptr %43, align 4, !tbaa !9
  %14827 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %14827, ptr %44, align 4, !tbaa !9
  %14828 = load i32, ptr %44, align 4, !tbaa !9
  %14829 = load i32, ptr %43, align 4, !tbaa !9
  %14830 = and i32 %14829, %14828
  store i32 %14830, ptr %43, align 4, !tbaa !9
  %14831 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14831, ptr %24, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14832 = load i32, ptr %44, align 4, !tbaa !9
  %14833 = and i32 %14832, 31
  %14834 = load i32, ptr %43, align 4, !tbaa !9
  %14835 = shl i32 %14834, %14833
  store i32 %14835, ptr %43, align 4, !tbaa !9
  %14836 = load i32, ptr %43, align 4, !tbaa !9
  %14837 = load i32, ptr %42, align 4, !tbaa !9
  %14838 = add i32 %14837, %14836
  store i32 %14838, ptr %42, align 4, !tbaa !9
  %14839 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14839, ptr %22, align 4, !tbaa !9
  %14840 = load ptr, ptr %6, align 8, !tbaa !5
  %14841 = getelementptr inbounds %struct.w2c_hermes, ptr %14840, i32 0, i32 6
  %14842 = load i32, ptr %42, align 4, !tbaa !9
  %14843 = zext i32 %14842 to i64
  %14844 = call i32 @i32_load(ptr noundef %14841, i64 noundef %14843)
  store i32 %14844, ptr %42, align 4, !tbaa !9
  %14845 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14845, ptr %26, align 4, !tbaa !9
  %14846 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %14846, ptr %43, align 4, !tbaa !9
  %14847 = load i32, ptr %42, align 4, !tbaa !9
  %14848 = load i32, ptr %43, align 4, !tbaa !9
  %14849 = icmp eq i32 %14847, %14848
  %14850 = zext i1 %14849 to i32
  store i32 %14850, ptr %42, align 4, !tbaa !9
  %14851 = load i32, ptr %42, align 4, !tbaa !9
  %14852 = icmp ne i32 %14851, 0
  br i1 %14852, label %14853, label %14854

14853:                                            ; preds = %14805
  br label %14946

14854:                                            ; preds = %14805
  store i32 0, ptr %42, align 4, !tbaa !9
  %14855 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14855, ptr %14, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %14856 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14856, ptr %7, align 4, !tbaa !9
  br label %14857

14857:                                            ; preds = %14944, %14854
  %14858 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %14858, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %14859 = load i32, ptr %42, align 4, !tbaa !9
  %14860 = load i32, ptr %43, align 4, !tbaa !9
  %14861 = icmp eq i32 %14859, %14860
  %14862 = zext i1 %14861 to i32
  store i32 %14862, ptr %42, align 4, !tbaa !9
  %14863 = load i32, ptr %42, align 4, !tbaa !9
  %14864 = icmp ne i32 %14863, 0
  br i1 %14864, label %14865, label %14878

14865:                                            ; preds = %14857
  %14866 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14866, ptr %42, align 4, !tbaa !9
  %14867 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14867, ptr %43, align 4, !tbaa !9
  %14868 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14868, ptr %44, align 4, !tbaa !9
  %14869 = load i32, ptr %44, align 4, !tbaa !9
  %14870 = icmp ne i32 %14869, 0
  br i1 %14870, label %14871, label %14873

14871:                                            ; preds = %14865
  %14872 = load i32, ptr %42, align 4, !tbaa !9
  br label %14875

14873:                                            ; preds = %14865
  %14874 = load i32, ptr %43, align 4, !tbaa !9
  br label %14875

14875:                                            ; preds = %14873, %14871
  %14876 = phi i32 [ %14872, %14871 ], [ %14874, %14873 ]
  store i32 %14876, ptr %42, align 4, !tbaa !9
  %14877 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14877, ptr %22, align 4, !tbaa !9
  br label %14946

14878:                                            ; preds = %14857
  %14879 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14879, ptr %42, align 4, !tbaa !9
  %14880 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14880, ptr %43, align 4, !tbaa !9
  %14881 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14881, ptr %44, align 4, !tbaa !9
  %14882 = load i32, ptr %44, align 4, !tbaa !9
  %14883 = icmp ne i32 %14882, 0
  br i1 %14883, label %14884, label %14886

14884:                                            ; preds = %14878
  %14885 = load i32, ptr %42, align 4, !tbaa !9
  br label %14888

14886:                                            ; preds = %14878
  %14887 = load i32, ptr %43, align 4, !tbaa !9
  br label %14888

14888:                                            ; preds = %14886, %14884
  %14889 = phi i32 [ %14885, %14884 ], [ %14887, %14886 ]
  store i32 %14889, ptr %42, align 4, !tbaa !9
  %14890 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14890, ptr %43, align 4, !tbaa !9
  %14891 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %14891, ptr %44, align 4, !tbaa !9
  store i32 -8, ptr %45, align 4, !tbaa !9
  %14892 = load i32, ptr %44, align 4, !tbaa !9
  %14893 = load i32, ptr %45, align 4, !tbaa !9
  %14894 = icmp eq i32 %14892, %14893
  %14895 = zext i1 %14894 to i32
  store i32 %14895, ptr %44, align 4, !tbaa !9
  %14896 = load i32, ptr %44, align 4, !tbaa !9
  %14897 = icmp ne i32 %14896, 0
  br i1 %14897, label %14898, label %14900

14898:                                            ; preds = %14888
  %14899 = load i32, ptr %42, align 4, !tbaa !9
  br label %14902

14900:                                            ; preds = %14888
  %14901 = load i32, ptr %43, align 4, !tbaa !9
  br label %14902

14902:                                            ; preds = %14900, %14898
  %14903 = phi i32 [ %14899, %14898 ], [ %14901, %14900 ]
  store i32 %14903, ptr %42, align 4, !tbaa !9
  %14904 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14904, ptr %14, align 4, !tbaa !9
  %14905 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14905, ptr %42, align 4, !tbaa !9
  %14906 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %14906, ptr %43, align 4, !tbaa !9
  %14907 = load i32, ptr %43, align 4, !tbaa !9
  %14908 = load i32, ptr %42, align 4, !tbaa !9
  %14909 = add i32 %14908, %14907
  store i32 %14909, ptr %42, align 4, !tbaa !9
  %14910 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14910, ptr %12, align 4, !tbaa !9
  %14911 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14911, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %14912 = load i32, ptr %43, align 4, !tbaa !9
  %14913 = load i32, ptr %42, align 4, !tbaa !9
  %14914 = add i32 %14913, %14912
  store i32 %14914, ptr %42, align 4, !tbaa !9
  %14915 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14915, ptr %7, align 4, !tbaa !9
  %14916 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %14916, ptr %42, align 4, !tbaa !9
  %14917 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14917, ptr %43, align 4, !tbaa !9
  %14918 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %14918, ptr %44, align 4, !tbaa !9
  %14919 = load i32, ptr %44, align 4, !tbaa !9
  %14920 = load i32, ptr %43, align 4, !tbaa !9
  %14921 = and i32 %14920, %14919
  store i32 %14921, ptr %43, align 4, !tbaa !9
  %14922 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14922, ptr %24, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %14923 = load i32, ptr %44, align 4, !tbaa !9
  %14924 = and i32 %14923, 31
  %14925 = load i32, ptr %43, align 4, !tbaa !9
  %14926 = shl i32 %14925, %14924
  store i32 %14926, ptr %43, align 4, !tbaa !9
  %14927 = load i32, ptr %43, align 4, !tbaa !9
  %14928 = load i32, ptr %42, align 4, !tbaa !9
  %14929 = add i32 %14928, %14927
  store i32 %14929, ptr %42, align 4, !tbaa !9
  %14930 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14930, ptr %22, align 4, !tbaa !9
  %14931 = load ptr, ptr %6, align 8, !tbaa !5
  %14932 = getelementptr inbounds %struct.w2c_hermes, ptr %14931, i32 0, i32 6
  %14933 = load i32, ptr %42, align 4, !tbaa !9
  %14934 = zext i32 %14933 to i64
  %14935 = call i32 @i32_load(ptr noundef %14932, i64 noundef %14934)
  store i32 %14935, ptr %42, align 4, !tbaa !9
  %14936 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14936, ptr %26, align 4, !tbaa !9
  %14937 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %14937, ptr %43, align 4, !tbaa !9
  %14938 = load i32, ptr %42, align 4, !tbaa !9
  %14939 = load i32, ptr %43, align 4, !tbaa !9
  %14940 = icmp ne i32 %14938, %14939
  %14941 = zext i1 %14940 to i32
  store i32 %14941, ptr %42, align 4, !tbaa !9
  %14942 = load i32, ptr %42, align 4, !tbaa !9
  %14943 = icmp ne i32 %14942, 0
  br i1 %14943, label %14944, label %14945

14944:                                            ; preds = %14902
  br label %14857

14945:                                            ; preds = %14902
  br label %14946

14946:                                            ; preds = %14945, %14875, %14853
  %14947 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %14947, ptr %42, align 4, !tbaa !9
  %14948 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %14948, ptr %43, align 4, !tbaa !9
  %14949 = load ptr, ptr %6, align 8, !tbaa !5
  %14950 = getelementptr inbounds %struct.w2c_hermes, ptr %14949, i32 0, i32 6
  %14951 = load i32, ptr %42, align 4, !tbaa !9
  %14952 = zext i32 %14951 to i64
  %14953 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14950, i64 noundef %14952, i32 noundef %14953)
  %14954 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14954, ptr %42, align 4, !tbaa !9
  %14955 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %14955, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %14956 = load i32, ptr %44, align 4, !tbaa !9
  %14957 = load i32, ptr %43, align 4, !tbaa !9
  %14958 = add i32 %14957, %14956
  store i32 %14958, ptr %43, align 4, !tbaa !9
  %14959 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %14959, ptr %18, align 4, !tbaa !9
  %14960 = load ptr, ptr %6, align 8, !tbaa !5
  %14961 = getelementptr inbounds %struct.w2c_hermes, ptr %14960, i32 0, i32 6
  %14962 = load i32, ptr %42, align 4, !tbaa !9
  %14963 = zext i32 %14962 to i64
  %14964 = add i64 %14963, 40
  %14965 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14961, i64 noundef %14964, i32 noundef %14965)
  br label %14966

14966:                                            ; preds = %14946, %14803, %14799
  %14967 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14967, ptr %42, align 4, !tbaa !9
  store i32 4, ptr %43, align 4, !tbaa !9
  %14968 = load i32, ptr %43, align 4, !tbaa !9
  %14969 = load i32, ptr %42, align 4, !tbaa !9
  %14970 = add i32 %14969, %14968
  store i32 %14970, ptr %42, align 4, !tbaa !9
  %14971 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14971, ptr %11, align 4, !tbaa !9
  %14972 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %14972, ptr %43, align 4, !tbaa !9
  %14973 = load i32, ptr %42, align 4, !tbaa !9
  %14974 = load i32, ptr %43, align 4, !tbaa !9
  %14975 = icmp ne i32 %14973, %14974
  %14976 = zext i1 %14975 to i32
  store i32 %14976, ptr %42, align 4, !tbaa !9
  %14977 = load i32, ptr %42, align 4, !tbaa !9
  %14978 = icmp ne i32 %14977, 0
  br i1 %14978, label %14979, label %14980

14979:                                            ; preds = %14966
  br label %14787

14980:                                            ; preds = %14966
  br label %14981

14981:                                            ; preds = %14980, %14764
  %14982 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14982, ptr %42, align 4, !tbaa !9
  %14983 = load ptr, ptr %6, align 8, !tbaa !5
  %14984 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %14983, i32 noundef %14984)
  %14985 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14985, ptr %42, align 4, !tbaa !9
  %14986 = load ptr, ptr %6, align 8, !tbaa !5
  %14987 = getelementptr inbounds %struct.w2c_hermes, ptr %14986, i32 0, i32 6
  %14988 = load i32, ptr %42, align 4, !tbaa !9
  %14989 = zext i32 %14988 to i64
  %14990 = add i64 %14989, 48
  %14991 = call i32 @i32_load(ptr noundef %14987, i64 noundef %14990)
  store i32 %14991, ptr %42, align 4, !tbaa !9
  %14992 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %14992, ptr %18, align 4, !tbaa !9
  %14993 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %14993, ptr %42, align 4, !tbaa !9
  %14994 = load ptr, ptr %6, align 8, !tbaa !5
  %14995 = getelementptr inbounds %struct.w2c_hermes, ptr %14994, i32 0, i32 6
  %14996 = load i32, ptr %42, align 4, !tbaa !9
  %14997 = zext i32 %14996 to i64
  %14998 = add i64 %14997, 36
  %14999 = call i32 @i32_load(ptr noundef %14995, i64 noundef %14998)
  store i32 %14999, ptr %42, align 4, !tbaa !9
  %15000 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15000, ptr %22, align 4, !tbaa !9
  br label %15001

15001:                                            ; preds = %14981, %14634, %14581, %14527
  %15002 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15002, ptr %42, align 4, !tbaa !9
  %15003 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %15003, ptr %43, align 4, !tbaa !9
  %15004 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %15004, ptr %44, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %15005 = load i32, ptr %45, align 4, !tbaa !9
  %15006 = load i32, ptr %44, align 4, !tbaa !9
  %15007 = sub i32 %15006, %15005
  store i32 %15007, ptr %44, align 4, !tbaa !9
  %15008 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %15008, ptr %8, align 4, !tbaa !9
  %15009 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15009, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %15010 = load i32, ptr %46, align 4, !tbaa !9
  %15011 = and i32 %15010, 31
  %15012 = load i32, ptr %45, align 4, !tbaa !9
  %15013 = lshr i32 %15012, %15011
  store i32 %15013, ptr %45, align 4, !tbaa !9
  %15014 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15014, ptr %46, align 4, !tbaa !9
  store i32 9, ptr %47, align 4, !tbaa !9
  %15015 = load i32, ptr %47, align 4, !tbaa !9
  %15016 = and i32 %15015, 31
  %15017 = load i32, ptr %46, align 4, !tbaa !9
  %15018 = lshr i32 %15017, %15016
  store i32 %15018, ptr %46, align 4, !tbaa !9
  %15019 = load i32, ptr %46, align 4, !tbaa !9
  %15020 = load i32, ptr %45, align 4, !tbaa !9
  %15021 = xor i32 %15020, %15019
  store i32 %15021, ptr %45, align 4, !tbaa !9
  %15022 = load i32, ptr %45, align 4, !tbaa !9
  %15023 = load i32, ptr %44, align 4, !tbaa !9
  %15024 = and i32 %15023, %15022
  store i32 %15024, ptr %44, align 4, !tbaa !9
  %15025 = load i32, ptr %44, align 4, !tbaa !9
  store i32 %15025, ptr %17, align 4, !tbaa !9
  store i32 2, ptr %45, align 4, !tbaa !9
  %15026 = load i32, ptr %45, align 4, !tbaa !9
  %15027 = and i32 %15026, 31
  %15028 = load i32, ptr %44, align 4, !tbaa !9
  %15029 = shl i32 %15028, %15027
  store i32 %15029, ptr %44, align 4, !tbaa !9
  %15030 = load i32, ptr %44, align 4, !tbaa !9
  %15031 = load i32, ptr %43, align 4, !tbaa !9
  %15032 = add i32 %15031, %15030
  store i32 %15032, ptr %43, align 4, !tbaa !9
  %15033 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %15033, ptr %14, align 4, !tbaa !9
  %15034 = load ptr, ptr %6, align 8, !tbaa !5
  %15035 = getelementptr inbounds %struct.w2c_hermes, ptr %15034, i32 0, i32 6
  %15036 = load i32, ptr %43, align 4, !tbaa !9
  %15037 = zext i32 %15036 to i64
  %15038 = call i32 @i32_load(ptr noundef %15035, i64 noundef %15037)
  store i32 %15038, ptr %43, align 4, !tbaa !9
  %15039 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %15039, ptr %11, align 4, !tbaa !9
  %15040 = load i32, ptr %42, align 4, !tbaa !9
  %15041 = load i32, ptr %43, align 4, !tbaa !9
  %15042 = icmp ne i32 %15040, %15041
  %15043 = zext i1 %15042 to i32
  store i32 %15043, ptr %42, align 4, !tbaa !9
  %15044 = load i32, ptr %42, align 4, !tbaa !9
  %15045 = icmp ne i32 %15044, 0
  br i1 %15045, label %15046, label %15138

15046:                                            ; preds = %15001
  store i32 0, ptr %42, align 4, !tbaa !9
  %15047 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15047, ptr %26, align 4, !tbaa !9
  store i32 1, ptr %42, align 4, !tbaa !9
  %15048 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15048, ptr %18, align 4, !tbaa !9
  br label %15049

15049:                                            ; preds = %15136, %15046
  %15050 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15050, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %15051 = load i32, ptr %42, align 4, !tbaa !9
  %15052 = load i32, ptr %43, align 4, !tbaa !9
  %15053 = icmp eq i32 %15051, %15052
  %15054 = zext i1 %15053 to i32
  store i32 %15054, ptr %42, align 4, !tbaa !9
  %15055 = load i32, ptr %42, align 4, !tbaa !9
  %15056 = icmp ne i32 %15055, 0
  br i1 %15056, label %15057, label %15070

15057:                                            ; preds = %15049
  %15058 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %15058, ptr %42, align 4, !tbaa !9
  %15059 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15059, ptr %43, align 4, !tbaa !9
  %15060 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %15060, ptr %44, align 4, !tbaa !9
  %15061 = load i32, ptr %44, align 4, !tbaa !9
  %15062 = icmp ne i32 %15061, 0
  br i1 %15062, label %15063, label %15065

15063:                                            ; preds = %15057
  %15064 = load i32, ptr %42, align 4, !tbaa !9
  br label %15067

15065:                                            ; preds = %15057
  %15066 = load i32, ptr %43, align 4, !tbaa !9
  br label %15067

15067:                                            ; preds = %15065, %15063
  %15068 = phi i32 [ %15064, %15063 ], [ %15066, %15065 ]
  store i32 %15068, ptr %42, align 4, !tbaa !9
  %15069 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15069, ptr %14, align 4, !tbaa !9
  br label %15140

15070:                                            ; preds = %15049
  %15071 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %15071, ptr %42, align 4, !tbaa !9
  %15072 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15072, ptr %43, align 4, !tbaa !9
  %15073 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %15073, ptr %44, align 4, !tbaa !9
  %15074 = load i32, ptr %44, align 4, !tbaa !9
  %15075 = icmp ne i32 %15074, 0
  br i1 %15075, label %15076, label %15078

15076:                                            ; preds = %15070
  %15077 = load i32, ptr %42, align 4, !tbaa !9
  br label %15080

15078:                                            ; preds = %15070
  %15079 = load i32, ptr %43, align 4, !tbaa !9
  br label %15080

15080:                                            ; preds = %15078, %15076
  %15081 = phi i32 [ %15077, %15076 ], [ %15079, %15078 ]
  store i32 %15081, ptr %42, align 4, !tbaa !9
  %15082 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %15082, ptr %43, align 4, !tbaa !9
  %15083 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15083, ptr %44, align 4, !tbaa !9
  store i32 -8, ptr %45, align 4, !tbaa !9
  %15084 = load i32, ptr %44, align 4, !tbaa !9
  %15085 = load i32, ptr %45, align 4, !tbaa !9
  %15086 = icmp eq i32 %15084, %15085
  %15087 = zext i1 %15086 to i32
  store i32 %15087, ptr %44, align 4, !tbaa !9
  %15088 = load i32, ptr %44, align 4, !tbaa !9
  %15089 = icmp ne i32 %15088, 0
  br i1 %15089, label %15090, label %15092

15090:                                            ; preds = %15080
  %15091 = load i32, ptr %42, align 4, !tbaa !9
  br label %15094

15092:                                            ; preds = %15080
  %15093 = load i32, ptr %43, align 4, !tbaa !9
  br label %15094

15094:                                            ; preds = %15092, %15090
  %15095 = phi i32 [ %15091, %15090 ], [ %15093, %15092 ]
  store i32 %15095, ptr %42, align 4, !tbaa !9
  %15096 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15096, ptr %26, align 4, !tbaa !9
  %15097 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %15097, ptr %42, align 4, !tbaa !9
  %15098 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %15098, ptr %43, align 4, !tbaa !9
  %15099 = load i32, ptr %43, align 4, !tbaa !9
  %15100 = load i32, ptr %42, align 4, !tbaa !9
  %15101 = add i32 %15100, %15099
  store i32 %15101, ptr %42, align 4, !tbaa !9
  %15102 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15102, ptr %7, align 4, !tbaa !9
  %15103 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %15103, ptr %42, align 4, !tbaa !9
  store i32 1, ptr %43, align 4, !tbaa !9
  %15104 = load i32, ptr %43, align 4, !tbaa !9
  %15105 = load i32, ptr %42, align 4, !tbaa !9
  %15106 = add i32 %15105, %15104
  store i32 %15106, ptr %42, align 4, !tbaa !9
  %15107 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15107, ptr %18, align 4, !tbaa !9
  %15108 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %15108, ptr %42, align 4, !tbaa !9
  %15109 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15109, ptr %43, align 4, !tbaa !9
  %15110 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15110, ptr %44, align 4, !tbaa !9
  %15111 = load i32, ptr %44, align 4, !tbaa !9
  %15112 = load i32, ptr %43, align 4, !tbaa !9
  %15113 = and i32 %15112, %15111
  store i32 %15113, ptr %43, align 4, !tbaa !9
  %15114 = load i32, ptr %43, align 4, !tbaa !9
  store i32 %15114, ptr %17, align 4, !tbaa !9
  store i32 2, ptr %44, align 4, !tbaa !9
  %15115 = load i32, ptr %44, align 4, !tbaa !9
  %15116 = and i32 %15115, 31
  %15117 = load i32, ptr %43, align 4, !tbaa !9
  %15118 = shl i32 %15117, %15116
  store i32 %15118, ptr %43, align 4, !tbaa !9
  %15119 = load i32, ptr %43, align 4, !tbaa !9
  %15120 = load i32, ptr %42, align 4, !tbaa !9
  %15121 = add i32 %15120, %15119
  store i32 %15121, ptr %42, align 4, !tbaa !9
  %15122 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15122, ptr %14, align 4, !tbaa !9
  %15123 = load ptr, ptr %6, align 8, !tbaa !5
  %15124 = getelementptr inbounds %struct.w2c_hermes, ptr %15123, i32 0, i32 6
  %15125 = load i32, ptr %42, align 4, !tbaa !9
  %15126 = zext i32 %15125 to i64
  %15127 = call i32 @i32_load(ptr noundef %15124, i64 noundef %15126)
  store i32 %15127, ptr %42, align 4, !tbaa !9
  %15128 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15128, ptr %11, align 4, !tbaa !9
  %15129 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15129, ptr %43, align 4, !tbaa !9
  %15130 = load i32, ptr %42, align 4, !tbaa !9
  %15131 = load i32, ptr %43, align 4, !tbaa !9
  %15132 = icmp ne i32 %15130, %15131
  %15133 = zext i1 %15132 to i32
  store i32 %15133, ptr %42, align 4, !tbaa !9
  %15134 = load i32, ptr %42, align 4, !tbaa !9
  %15135 = icmp ne i32 %15134, 0
  br i1 %15135, label %15136, label %15137

15136:                                            ; preds = %15094
  br label %15049

15137:                                            ; preds = %15094
  br label %15138

15138:                                            ; preds = %15137, %15001
  %15139 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15139, ptr %42, align 4, !tbaa !9
  br label %15147

15140:                                            ; preds = %15067, %14401
  %15141 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15141, ptr %42, align 4, !tbaa !9
  %15142 = load ptr, ptr %6, align 8, !tbaa !5
  %15143 = getelementptr inbounds %struct.w2c_hermes, ptr %15142, i32 0, i32 6
  %15144 = load i32, ptr %42, align 4, !tbaa !9
  %15145 = zext i32 %15144 to i64
  %15146 = call i32 @i32_load(ptr noundef %15143, i64 noundef %15145)
  store i32 %15146, ptr %42, align 4, !tbaa !9
  br label %15147

15147:                                            ; preds = %15140, %15138
  %15148 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15148, ptr %7, align 4, !tbaa !9
  %15149 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %15149, ptr %42, align 4, !tbaa !9
  %15150 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %15150, ptr %43, align 4, !tbaa !9
  %15151 = load ptr, ptr %6, align 8, !tbaa !5
  %15152 = getelementptr inbounds %struct.w2c_hermes, ptr %15151, i32 0, i32 6
  %15153 = load i32, ptr %43, align 4, !tbaa !9
  %15154 = zext i32 %15153 to i64
  %15155 = add i64 %15154, 40
  %15156 = call i32 @i32_load(ptr noundef %15152, i64 noundef %15155)
  store i32 %15156, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %15157 = load i32, ptr %44, align 4, !tbaa !9
  %15158 = load i32, ptr %43, align 4, !tbaa !9
  %15159 = add i32 %15158, %15157
  store i32 %15159, ptr %43, align 4, !tbaa !9
  %15160 = load ptr, ptr %6, align 8, !tbaa !5
  %15161 = getelementptr inbounds %struct.w2c_hermes, ptr %15160, i32 0, i32 6
  %15162 = load i32, ptr %42, align 4, !tbaa !9
  %15163 = zext i32 %15162 to i64
  %15164 = add i64 %15163, 40
  %15165 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15161, i64 noundef %15164, i32 noundef %15165)
  %15166 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15166, ptr %42, align 4, !tbaa !9
  store i32 -4, ptr %43, align 4, !tbaa !9
  %15167 = load i32, ptr %42, align 4, !tbaa !9
  %15168 = load i32, ptr %43, align 4, !tbaa !9
  %15169 = icmp ne i32 %15167, %15168
  %15170 = zext i1 %15169 to i32
  store i32 %15170, ptr %42, align 4, !tbaa !9
  %15171 = load i32, ptr %42, align 4, !tbaa !9
  %15172 = icmp ne i32 %15171, 0
  br i1 %15172, label %15173, label %15191

15173:                                            ; preds = %15147
  %15174 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %15174, ptr %42, align 4, !tbaa !9
  %15175 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %15175, ptr %43, align 4, !tbaa !9
  %15176 = load ptr, ptr %6, align 8, !tbaa !5
  %15177 = getelementptr inbounds %struct.w2c_hermes, ptr %15176, i32 0, i32 6
  %15178 = load i32, ptr %43, align 4, !tbaa !9
  %15179 = zext i32 %15178 to i64
  %15180 = add i64 %15179, 44
  %15181 = call i32 @i32_load(ptr noundef %15177, i64 noundef %15180)
  store i32 %15181, ptr %43, align 4, !tbaa !9
  store i32 1, ptr %44, align 4, !tbaa !9
  %15182 = load i32, ptr %44, align 4, !tbaa !9
  %15183 = load i32, ptr %43, align 4, !tbaa !9
  %15184 = sub i32 %15183, %15182
  store i32 %15184, ptr %43, align 4, !tbaa !9
  %15185 = load ptr, ptr %6, align 8, !tbaa !5
  %15186 = getelementptr inbounds %struct.w2c_hermes, ptr %15185, i32 0, i32 6
  %15187 = load i32, ptr %42, align 4, !tbaa !9
  %15188 = zext i32 %15187 to i64
  %15189 = add i64 %15188, 44
  %15190 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15186, i64 noundef %15189, i32 noundef %15190)
  br label %15191

15191:                                            ; preds = %15173, %15147
  %15192 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15192, ptr %42, align 4, !tbaa !9
  %15193 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15193, ptr %43, align 4, !tbaa !9
  %15194 = load ptr, ptr %6, align 8, !tbaa !5
  %15195 = getelementptr inbounds %struct.w2c_hermes, ptr %15194, i32 0, i32 6
  %15196 = load i32, ptr %42, align 4, !tbaa !9
  %15197 = zext i32 %15196 to i64
  %15198 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15195, i64 noundef %15197, i32 noundef %15198)
  br label %15199

15199:                                            ; preds = %15191, %14336, %14244, %14121, %13929, %13913, %13902
  %15200 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %15200, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %15201 = load i32, ptr %43, align 4, !tbaa !9
  %15202 = load i32, ptr %42, align 4, !tbaa !9
  %15203 = add i32 %15202, %15201
  store i32 %15203, ptr %42, align 4, !tbaa !9
  %15204 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15204, ptr %13, align 4, !tbaa !9
  %15205 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %15205, ptr %43, align 4, !tbaa !9
  %15206 = load i32, ptr %42, align 4, !tbaa !9
  %15207 = load i32, ptr %43, align 4, !tbaa !9
  %15208 = icmp ne i32 %15206, %15207
  %15209 = zext i1 %15208 to i32
  store i32 %15209, ptr %42, align 4, !tbaa !9
  %15210 = load i32, ptr %42, align 4, !tbaa !9
  %15211 = icmp ne i32 %15210, 0
  br i1 %15211, label %15212, label %15213

15212:                                            ; preds = %15199
  br label %13885

15213:                                            ; preds = %15199
  br label %15214

15214:                                            ; preds = %15213, %13850
  %15215 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %15215, ptr %42, align 4, !tbaa !9
  %15216 = load i32, ptr %42, align 4, !tbaa !9
  %15217 = icmp ne i32 %15216, 0
  br i1 %15217, label %15218, label %15219

15218:                                            ; preds = %15214
  br label %13850

15219:                                            ; preds = %15214
  %15220 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %15220, ptr %42, align 4, !tbaa !9
  %15221 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15221, ptr %12, align 4, !tbaa !9
  br label %15222

15222:                                            ; preds = %15219, %13794
  %15223 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15223, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %15224 = load ptr, ptr %6, align 8, !tbaa !5
  %15225 = getelementptr inbounds %struct.w2c_hermes, ptr %15224, i32 0, i32 6
  %15226 = load i32, ptr %42, align 4, !tbaa !9
  %15227 = zext i32 %15226 to i64
  %15228 = add i64 %15227, 12
  %15229 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15225, i64 noundef %15228, i32 noundef %15229)
  %15230 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15230, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %15231 = load ptr, ptr %6, align 8, !tbaa !5
  %15232 = getelementptr inbounds %struct.w2c_hermes, ptr %15231, i32 0, i32 6
  %15233 = load i32, ptr %42, align 4, !tbaa !9
  %15234 = zext i32 %15233 to i64
  %15235 = add i64 %15234, 4
  %15236 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15232, i64 noundef %15235, i64 noundef %15236)
  br label %15237

15237:                                            ; preds = %15258, %15222
  %15238 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %15238, ptr %42, align 4, !tbaa !9
  %15239 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15239, ptr %43, align 4, !tbaa !9
  store i32 4, ptr %44, align 4, !tbaa !9
  %15240 = load i32, ptr %44, align 4, !tbaa !9
  %15241 = load i32, ptr %43, align 4, !tbaa !9
  %15242 = add i32 %15241, %15240
  store i32 %15242, ptr %43, align 4, !tbaa !9
  %15243 = load ptr, ptr %6, align 8, !tbaa !5
  %15244 = load i32, ptr %42, align 4, !tbaa !9
  %15245 = load i32, ptr %43, align 4, !tbaa !9
  call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AlayoutIfNeeded0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AStringEntry0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x2A0x29(ptr noundef %15243, i32 noundef %15244, i32 noundef %15245)
  %15246 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %15246, ptr %42, align 4, !tbaa !9
  store i32 52, ptr %43, align 4, !tbaa !9
  %15247 = load i32, ptr %43, align 4, !tbaa !9
  %15248 = load i32, ptr %42, align 4, !tbaa !9
  %15249 = add i32 %15248, %15247
  store i32 %15249, ptr %42, align 4, !tbaa !9
  %15250 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15250, ptr %30, align 4, !tbaa !9
  %15251 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %15251, ptr %43, align 4, !tbaa !9
  %15252 = load i32, ptr %42, align 4, !tbaa !9
  %15253 = load i32, ptr %43, align 4, !tbaa !9
  %15254 = icmp ne i32 %15252, %15253
  %15255 = zext i1 %15254 to i32
  store i32 %15255, ptr %42, align 4, !tbaa !9
  %15256 = load i32, ptr %42, align 4, !tbaa !9
  %15257 = icmp ne i32 %15256, 0
  br i1 %15257, label %15258, label %15259

15258:                                            ; preds = %15237
  br label %15237

15259:                                            ; preds = %15237
  %15260 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15260, ptr %42, align 4, !tbaa !9
  %15261 = load i32, ptr %42, align 4, !tbaa !9
  %15262 = icmp ne i32 %15261, 0
  %15263 = xor i1 %15262, true
  %15264 = zext i1 %15263 to i32
  store i32 %15264, ptr %42, align 4, !tbaa !9
  %15265 = load i32, ptr %42, align 4, !tbaa !9
  %15266 = icmp ne i32 %15265, 0
  br i1 %15266, label %15267, label %15268

15267:                                            ; preds = %15259
  br label %15336

15268:                                            ; preds = %15259
  %15269 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %15269, ptr %42, align 4, !tbaa !9
  %15270 = load i32, ptr %42, align 4, !tbaa !9
  %15271 = icmp ne i32 %15270, 0
  %15272 = xor i1 %15271, true
  %15273 = zext i1 %15272 to i32
  store i32 %15273, ptr %42, align 4, !tbaa !9
  %15274 = load i32, ptr %42, align 4, !tbaa !9
  %15275 = icmp ne i32 %15274, 0
  br i1 %15275, label %15276, label %15317

15276:                                            ; preds = %15268
  br label %15277

15277:                                            ; preds = %15315, %15276
  %15278 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %15278, ptr %42, align 4, !tbaa !9
  store i32 12, ptr %43, align 4, !tbaa !9
  %15279 = load i32, ptr %43, align 4, !tbaa !9
  %15280 = load i32, ptr %42, align 4, !tbaa !9
  %15281 = sub i32 %15280, %15279
  store i32 %15281, ptr %42, align 4, !tbaa !9
  %15282 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15282, ptr %7, align 4, !tbaa !9
  %15283 = load ptr, ptr %6, align 8, !tbaa !5
  %15284 = getelementptr inbounds %struct.w2c_hermes, ptr %15283, i32 0, i32 6
  %15285 = load i32, ptr %42, align 4, !tbaa !9
  %15286 = zext i32 %15285 to i64
  %15287 = call i32 @i32_load(ptr noundef %15284, i64 noundef %15286)
  store i32 %15287, ptr %42, align 4, !tbaa !9
  %15288 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15288, ptr %8, align 4, !tbaa !9
  %15289 = load i32, ptr %42, align 4, !tbaa !9
  %15290 = icmp ne i32 %15289, 0
  br i1 %15290, label %15291, label %15305

15291:                                            ; preds = %15277
  %15292 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %15292, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %15293 = load i32, ptr %43, align 4, !tbaa !9
  %15294 = load i32, ptr %42, align 4, !tbaa !9
  %15295 = sub i32 %15294, %15293
  store i32 %15295, ptr %42, align 4, !tbaa !9
  %15296 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15296, ptr %43, align 4, !tbaa !9
  %15297 = load ptr, ptr %6, align 8, !tbaa !5
  %15298 = getelementptr inbounds %struct.w2c_hermes, ptr %15297, i32 0, i32 6
  %15299 = load i32, ptr %42, align 4, !tbaa !9
  %15300 = zext i32 %15299 to i64
  %15301 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15298, i64 noundef %15300, i32 noundef %15301)
  %15302 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15302, ptr %42, align 4, !tbaa !9
  %15303 = load ptr, ptr %6, align 8, !tbaa !5
  %15304 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %15303, i32 noundef %15304)
  br label %15305

15305:                                            ; preds = %15291, %15277
  %15306 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15306, ptr %42, align 4, !tbaa !9
  %15307 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15307, ptr %19, align 4, !tbaa !9
  %15308 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15308, ptr %43, align 4, !tbaa !9
  %15309 = load i32, ptr %42, align 4, !tbaa !9
  %15310 = load i32, ptr %43, align 4, !tbaa !9
  %15311 = icmp ne i32 %15309, %15310
  %15312 = zext i1 %15311 to i32
  store i32 %15312, ptr %42, align 4, !tbaa !9
  %15313 = load i32, ptr %42, align 4, !tbaa !9
  %15314 = icmp ne i32 %15313, 0
  br i1 %15314, label %15315, label %15316

15315:                                            ; preds = %15305
  br label %15277

15316:                                            ; preds = %15305
  br label %15317

15317:                                            ; preds = %15316, %15268
  %15318 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15318, ptr %42, align 4, !tbaa !9
  %15319 = load ptr, ptr %6, align 8, !tbaa !5
  %15320 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %15319, i32 noundef %15320)
  br label %15336

15321:                                            ; preds = %12375, %8179
  %15322 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15322, ptr %42, align 4, !tbaa !9
  store i32 0, ptr %43, align 4, !tbaa !9
  %15323 = load ptr, ptr %6, align 8, !tbaa !5
  %15324 = getelementptr inbounds %struct.w2c_hermes, ptr %15323, i32 0, i32 6
  %15325 = load i32, ptr %42, align 4, !tbaa !9
  %15326 = zext i32 %15325 to i64
  %15327 = add i64 %15326, 12
  %15328 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15324, i64 noundef %15327, i32 noundef %15328)
  %15329 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15329, ptr %42, align 4, !tbaa !9
  store i64 0, ptr %49, align 8, !tbaa !11
  %15330 = load ptr, ptr %6, align 8, !tbaa !5
  %15331 = getelementptr inbounds %struct.w2c_hermes, ptr %15330, i32 0, i32 6
  %15332 = load i32, ptr %42, align 4, !tbaa !9
  %15333 = zext i32 %15332 to i64
  %15334 = add i64 %15333, 4
  %15335 = load i64, ptr %49, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15331, i64 noundef %15334, i64 noundef %15335)
  br label %15336

15336:                                            ; preds = %15321, %15317, %15267
  %15337 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %15337, ptr %42, align 4, !tbaa !9
  %15338 = load i32, ptr %42, align 4, !tbaa !9
  %15339 = icmp ne i32 %15338, 0
  br i1 %15339, label %15340, label %15395

15340:                                            ; preds = %15336
  %15341 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %15341, ptr %42, align 4, !tbaa !9
  %15342 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %15342, ptr %43, align 4, !tbaa !9
  %15343 = load i32, ptr %42, align 4, !tbaa !9
  %15344 = load i32, ptr %43, align 4, !tbaa !9
  %15345 = icmp ne i32 %15343, %15344
  %15346 = zext i1 %15345 to i32
  store i32 %15346, ptr %42, align 4, !tbaa !9
  %15347 = load i32, ptr %42, align 4, !tbaa !9
  %15348 = icmp ne i32 %15347, 0
  br i1 %15348, label %15349, label %15391

15349:                                            ; preds = %15340
  br label %15350

15350:                                            ; preds = %15389, %15349
  %15351 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %15351, ptr %42, align 4, !tbaa !9
  store i32 20, ptr %43, align 4, !tbaa !9
  %15352 = load i32, ptr %43, align 4, !tbaa !9
  %15353 = load i32, ptr %42, align 4, !tbaa !9
  %15354 = sub i32 %15353, %15352
  store i32 %15354, ptr %42, align 4, !tbaa !9
  %15355 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15355, ptr %7, align 4, !tbaa !9
  %15356 = load ptr, ptr %6, align 8, !tbaa !5
  %15357 = getelementptr inbounds %struct.w2c_hermes, ptr %15356, i32 0, i32 6
  %15358 = load i32, ptr %42, align 4, !tbaa !9
  %15359 = zext i32 %15358 to i64
  %15360 = add i64 %15359, 8
  %15361 = call i32 @i32_load(ptr noundef %15357, i64 noundef %15360)
  store i32 %15361, ptr %42, align 4, !tbaa !9
  %15362 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15362, ptr %8, align 4, !tbaa !9
  %15363 = load i32, ptr %42, align 4, !tbaa !9
  %15364 = icmp ne i32 %15363, 0
  br i1 %15364, label %15365, label %15379

15365:                                            ; preds = %15350
  %15366 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %15366, ptr %42, align 4, !tbaa !9
  store i32 8, ptr %43, align 4, !tbaa !9
  %15367 = load i32, ptr %43, align 4, !tbaa !9
  %15368 = load i32, ptr %42, align 4, !tbaa !9
  %15369 = sub i32 %15368, %15367
  store i32 %15369, ptr %42, align 4, !tbaa !9
  %15370 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15370, ptr %43, align 4, !tbaa !9
  %15371 = load ptr, ptr %6, align 8, !tbaa !5
  %15372 = getelementptr inbounds %struct.w2c_hermes, ptr %15371, i32 0, i32 6
  %15373 = load i32, ptr %42, align 4, !tbaa !9
  %15374 = zext i32 %15373 to i64
  %15375 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15372, i64 noundef %15374, i32 noundef %15375)
  %15376 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15376, ptr %42, align 4, !tbaa !9
  %15377 = load ptr, ptr %6, align 8, !tbaa !5
  %15378 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %15377, i32 noundef %15378)
  br label %15379

15379:                                            ; preds = %15365, %15350
  %15380 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15380, ptr %42, align 4, !tbaa !9
  %15381 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15381, ptr %23, align 4, !tbaa !9
  %15382 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %15382, ptr %43, align 4, !tbaa !9
  %15383 = load i32, ptr %42, align 4, !tbaa !9
  %15384 = load i32, ptr %43, align 4, !tbaa !9
  %15385 = icmp ne i32 %15383, %15384
  %15386 = zext i1 %15385 to i32
  store i32 %15386, ptr %42, align 4, !tbaa !9
  %15387 = load i32, ptr %42, align 4, !tbaa !9
  %15388 = icmp ne i32 %15387, 0
  br i1 %15388, label %15389, label %15390

15389:                                            ; preds = %15379
  br label %15350

15390:                                            ; preds = %15379
  br label %15391

15391:                                            ; preds = %15390, %15340
  %15392 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %15392, ptr %42, align 4, !tbaa !9
  %15393 = load ptr, ptr %6, align 8, !tbaa !5
  %15394 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %15393, i32 noundef %15394)
  br label %15395

15395:                                            ; preds = %15391, %15336
  %15396 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15396, ptr %42, align 4, !tbaa !9
  %15397 = load ptr, ptr %6, align 8, !tbaa !5
  %15398 = getelementptr inbounds %struct.w2c_hermes, ptr %15397, i32 0, i32 6
  %15399 = load i32, ptr %42, align 4, !tbaa !9
  %15400 = zext i32 %15399 to i64
  %15401 = add i64 %15400, 16
  %15402 = call i32 @i32_load(ptr noundef %15398, i64 noundef %15401)
  store i32 %15402, ptr %42, align 4, !tbaa !9
  %15403 = load ptr, ptr %6, align 8, !tbaa !5
  %15404 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %15403, i32 noundef %15404)
  %15405 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15405, ptr %42, align 4, !tbaa !9
  %15406 = load ptr, ptr %6, align 8, !tbaa !5
  %15407 = getelementptr inbounds %struct.w2c_hermes, ptr %15406, i32 0, i32 6
  %15408 = load i32, ptr %42, align 4, !tbaa !9
  %15409 = zext i32 %15408 to i64
  %15410 = call i32 @i32_load(ptr noundef %15407, i64 noundef %15409)
  store i32 %15410, ptr %42, align 4, !tbaa !9
  %15411 = load i32, ptr %42, align 4, !tbaa !9
  store i32 %15411, ptr %7, align 4, !tbaa !9
  %15412 = load i32, ptr %42, align 4, !tbaa !9
  %15413 = icmp ne i32 %15412, 0
  br i1 %15413, label %15414, label %15426

15414:                                            ; preds = %15395
  %15415 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15415, ptr %42, align 4, !tbaa !9
  %15416 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15416, ptr %43, align 4, !tbaa !9
  %15417 = load ptr, ptr %6, align 8, !tbaa !5
  %15418 = getelementptr inbounds %struct.w2c_hermes, ptr %15417, i32 0, i32 6
  %15419 = load i32, ptr %42, align 4, !tbaa !9
  %15420 = zext i32 %15419 to i64
  %15421 = add i64 %15420, 4
  %15422 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15418, i64 noundef %15421, i32 noundef %15422)
  %15423 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15423, ptr %42, align 4, !tbaa !9
  %15424 = load ptr, ptr %6, align 8, !tbaa !5
  %15425 = load i32, ptr %42, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %15424, i32 noundef %15425)
  br label %15426

15426:                                            ; preds = %15414, %15395
  %15427 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15427, ptr %42, align 4, !tbaa !9
  %15428 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15428, ptr %43, align 4, !tbaa !9
  %15429 = load ptr, ptr %6, align 8, !tbaa !5
  %15430 = getelementptr inbounds %struct.w2c_hermes, ptr %15429, i32 0, i32 6
  %15431 = load i32, ptr %43, align 4, !tbaa !9
  %15432 = zext i32 %15431 to i64
  %15433 = add i64 %15432, 4
  %15434 = call i32 @i32_load(ptr noundef %15430, i64 noundef %15433)
  store i32 %15434, ptr %43, align 4, !tbaa !9
  %15435 = load ptr, ptr %6, align 8, !tbaa !5
  %15436 = getelementptr inbounds %struct.w2c_hermes, ptr %15435, i32 0, i32 6
  %15437 = load i32, ptr %42, align 4, !tbaa !9
  %15438 = zext i32 %15437 to i64
  %15439 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15436, i64 noundef %15438, i32 noundef %15439)
  %15440 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15440, ptr %42, align 4, !tbaa !9
  %15441 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15441, ptr %43, align 4, !tbaa !9
  %15442 = load ptr, ptr %6, align 8, !tbaa !5
  %15443 = getelementptr inbounds %struct.w2c_hermes, ptr %15442, i32 0, i32 6
  %15444 = load i32, ptr %43, align 4, !tbaa !9
  %15445 = zext i32 %15444 to i64
  %15446 = add i64 %15445, 8
  %15447 = call i32 @i32_load(ptr noundef %15443, i64 noundef %15446)
  store i32 %15447, ptr %43, align 4, !tbaa !9
  %15448 = load ptr, ptr %6, align 8, !tbaa !5
  %15449 = getelementptr inbounds %struct.w2c_hermes, ptr %15448, i32 0, i32 6
  %15450 = load i32, ptr %42, align 4, !tbaa !9
  %15451 = zext i32 %15450 to i64
  %15452 = add i64 %15451, 4
  %15453 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15449, i64 noundef %15452, i32 noundef %15453)
  %15454 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15454, ptr %42, align 4, !tbaa !9
  %15455 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15455, ptr %43, align 4, !tbaa !9
  %15456 = load ptr, ptr %6, align 8, !tbaa !5
  %15457 = getelementptr inbounds %struct.w2c_hermes, ptr %15456, i32 0, i32 6
  %15458 = load i32, ptr %43, align 4, !tbaa !9
  %15459 = zext i32 %15458 to i64
  %15460 = add i64 %15459, 12
  %15461 = call i32 @i32_load(ptr noundef %15457, i64 noundef %15460)
  store i32 %15461, ptr %43, align 4, !tbaa !9
  %15462 = load ptr, ptr %6, align 8, !tbaa !5
  %15463 = getelementptr inbounds %struct.w2c_hermes, ptr %15462, i32 0, i32 6
  %15464 = load i32, ptr %42, align 4, !tbaa !9
  %15465 = zext i32 %15464 to i64
  %15466 = add i64 %15465, 8
  %15467 = load i32, ptr %43, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15463, i64 noundef %15466, i32 noundef %15467)
  br label %15468

15468:                                            ; preds = %15426, %678
  %15469 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15469, ptr %42, align 4, !tbaa !9
  store i32 32, ptr %43, align 4, !tbaa !9
  %15470 = load i32, ptr %43, align 4, !tbaa !9
  %15471 = load i32, ptr %42, align 4, !tbaa !9
  %15472 = add i32 %15471, %15470
  store i32 %15472, ptr %42, align 4, !tbaa !9
  %15473 = load i32, ptr %42, align 4, !tbaa !9
  %15474 = load ptr, ptr %6, align 8, !tbaa !5
  %15475 = getelementptr inbounds %struct.w2c_hermes, ptr %15474, i32 0, i32 3
  store i32 %15473, ptr %15475, align 8, !tbaa !13
  br label %15478

15476:                                            ; preds = %13768, %13633, %13162, %13080, %11922, %11840, %11602, %11582, %11478, %6273, %6138, %5667, %5585, %4432, %4350, %4112, %4092, %3988
  %15477 = load ptr, ptr %6, align 8, !tbaa !5
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef %15477)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

15478:                                            ; preds = %15468
  call void @llvm.lifetime.end.p0(i64 8, ptr %51) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %50) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %49) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %48) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %47) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %45) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %43) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %42) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %40) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %39) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %38) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %37) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %32) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %30) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %28) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %27) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %25) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %23) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %21) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %20) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %19) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %18) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %17) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %16) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %12) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #6
  ret void
}

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Aenable_if0x3C_0x5Fis_cpp17_forward_iterator0x3Cunsigned0x20char0x20const0x2A0x3E0x3A0x3Avalue0x200x260x260x20is_constructible0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aiterator_traits0x3Cunsigned0x20char0x20const0x2A0x3E0x3A0x3Areference0x3E0x3A0x3Avalue0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cunsigned0x20char0x2A0x3E0x3E0x3A0x3Atype0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x3A0x3Ainsert0x3Cunsigned0x20char0x20const0x2A0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cunsigned0x20char0x20const0x2A0x3E0x2C0x20unsigned0x20char0x20const0x2A0x2C0x20unsigned0x20char0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Aenable_if0x3C_0x5Fis_cpp17_forward_iterator0x3Cchar16_t0x20const0x2A0x3E0x3A0x3Avalue0x200x260x260x20is_constructible0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aiterator_traits0x3Cchar16_t0x20const0x2A0x3E0x3A0x3Areference0x3E0x3A0x3Avalue0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cchar16_t0x2A0x3E0x3E0x3A0x3Atype0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x3A0x3Ainsert0x3Cchar16_t0x20const0x2A0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cchar16_t0x20const0x2A0x3E0x2C0x20char16_t0x20const0x2A0x2C0x20char16_t0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AradixQuicksort0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x200x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x20unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #0

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AlayoutIfNeeded0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AStringEntry0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #0

; Function Attrs: inlinehint nounwind uwtable
declare hidden i64 @i64_load16_u(ptr noundef, i64 noundef) #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AradixQuicksort0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x200x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x20unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #0

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AlayoutIfNeeded0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AStringEntry0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #0

attributes #0 = { nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { inlinehint nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { noreturn "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { nocallback nofree nosync nounwind willreturn memory(none) }
attributes #6 = { nounwind }
attributes #7 = { noreturn }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"long", !7, i64 0}
!13 = !{!14, !10, i64 24}
!14 = !{!"w2c_hermes", !6, i64 0, !6, i64 8, !6, i64 16, !10, i64 24, !10, i64 28, !10, i64 32, !15, i64 40, !17, i64 80}
!15 = !{!"", !6, i64 0, !12, i64 8, !12, i64 16, !12, i64 24, !16, i64 32}
!16 = !{!"_Bool", !7, i64 0}
!17 = !{!"", !6, i64 0, !10, i64 8, !10, i64 12}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_dlfree(ptr noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: inlinehint nounwind uwtable
declare hidden i32 @i32_load(ptr noundef, i64 noundef) local_unnamed_addr #1

; Function Attrs: inlinehint nounwind uwtable
declare hidden void @i32_store(ptr noundef, i64 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: inlinehint nounwind uwtable
declare hidden void @i64_store(ptr noundef, i64 noundef, i64 noundef) local_unnamed_addr #1

; Function Attrs: inlinehint nounwind uwtable
declare hidden i32 @i32_load8_u(ptr noundef, i64 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: noreturn
declare void @wasm_rt_trap(i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_0x5F_memset(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: inlinehint nounwind uwtable
declare hidden i64 @i64_load(ptr noundef, i64 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_memmove(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: inlinehint nounwind uwtable
declare hidden i32 @i32_load16_u(ptr noundef, i64 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
define dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringTableBuilder0x3A0x3ApackIntoStorage0x28std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x2A0x2C0x20bool0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %3, i32 noundef %4) local_unnamed_addr #0 {
  %6 = getelementptr inbounds i8, ptr %0, i64 24
  %7 = load i32, ptr %6, align 8, !tbaa !5
  %8 = add i32 %7, -32
  store i32 %8, ptr %6, align 8, !tbaa !5
  %.not = icmp eq i32 %4, 0
  %9 = getelementptr inbounds i8, ptr %0, i64 40
  %10 = zext i32 %1 to i64
  %11 = add nuw nsw i64 %10, 28
  %12 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %11)
  %13 = add nuw nsw i64 %10, 24
  %14 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %13)
  br i1 %.not, label %49, label %15

15:                                               ; preds = %5
  %16 = sub i32 %12, %14
  %17 = sdiv i32 %16, 52
  %18 = icmp ugt i32 %17, 7
  br i1 %18, label %19, label %44

19:                                               ; preds = %15
  %20 = lshr i32 %17, 1
  %21 = and i32 %20, 2147483644
  %22 = udiv i32 %21, 3
  %23 = add nuw nsw i32 %22, 1
  %24 = zext nneg i32 %23 to i64
  %25 = lshr i64 %24, 1
  %26 = or i64 %25, %24
  %27 = lshr i64 %26, 2
  %28 = or i64 %27, %26
  %29 = lshr i64 %28, 4
  %30 = or i64 %29, %28
  %31 = lshr i64 %30, 8
  %32 = or i64 %31, %30
  %33 = lshr i64 %32, 16
  %34 = or i64 %33, %32
  %35 = trunc nuw nsw i64 %34 to i32
  %36 = add nuw nsw i32 %35, 1
  %37 = zext i32 %8 to i64
  %38 = add nuw nsw i64 %37, 28
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %38, i32 noundef %36)
  %39 = shl i32 %36, 2
  %40 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %39) #5
  %41 = add nuw nsw i64 %37, 20
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %41, i64 noundef 0)
  %42 = add nuw nsw i64 %37, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %42, i32 noundef %40)
  %43 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef nonnull %0, i32 noundef %40, i32 noundef 255, i32 noundef %39)
  %.pre = add nuw nsw i64 %37, 24
  br label %107

44:                                               ; preds = %15
  %45 = zext i32 %8 to i64
  %46 = add nuw nsw i64 %45, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %46, i64 noundef 0)
  %47 = add nuw nsw i64 %45, 16
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %47, i64 noundef 0)
  %.not8946 = icmp eq i32 %12, %14
  br i1 %.not8946, label %48, label %._crit_edge9831

._crit_edge9831:                                  ; preds = %44
  %.pre9836 = add nuw nsw i64 %45, 28
  %.pre9838 = add nuw nsw i64 %45, 20
  br label %107

48:                                               ; preds = %44
  tail call void @w2c_hermes_dlfree(ptr noundef nonnull %0, i32 noundef 0)
  br label %1277

49:                                               ; preds = %5
  %50 = zext i32 %8 to i64
  %51 = add nuw nsw i64 %50, 24
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %51, i32 noundef 0)
  %52 = add nuw nsw i64 %50, 16
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %52, i64 noundef 0)
  %.not8939 = icmp eq i32 %14, %12
  br i1 %.not8939, label %.loopexit9307, label %53

53:                                               ; preds = %49
  %54 = sub i32 %12, %14
  %.fr = freeze i32 %54
  %55 = srem i32 %.fr, 52
  %56 = add i32 %.fr, %14
  %57 = sub i32 %56, %55
  %58 = add nuw nsw i64 %50, 20
  %59 = add i32 %7, -16
  br label %60

60:                                               ; preds = %60, %53
  %.08698 = phi i32 [ %14, %53 ], [ %71, %60 ]
  %61 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %58)
  %62 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %52)
  %63 = sub i32 %61, %62
  %64 = zext i32 %.08698 to i64
  %65 = add nuw nsw i64 %64, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %65, i32 noundef %63)
  %66 = add nuw nsw i64 %64, 4
  %67 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %66)
  %68 = add nuw nsw i64 %64, 8
  %69 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %68)
  %70 = add i32 %69, %67
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Aenable_if0x3C_0x5Fis_cpp17_forward_iterator0x3Cunsigned0x20char0x20const0x2A0x3E0x3A0x3Avalue0x200x260x260x20is_constructible0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aiterator_traits0x3Cunsigned0x20char0x20const0x2A0x3E0x3A0x3Areference0x3E0x3A0x3Avalue0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cunsigned0x20char0x2A0x3E0x3E0x3A0x3Atype0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x3A0x3Ainsert0x3Cunsigned0x20char0x20const0x2A0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cunsigned0x20char0x20const0x2A0x3E0x2C0x20unsigned0x20char0x20const0x2A0x2C0x20unsigned0x20char0x20const0x2A0x29(ptr noundef %0, i32 noundef %59, i32 noundef %61, i32 noundef %67, i32 noundef %70) #5
  %71 = add i32 %.08698, 52
  %.not8940 = icmp eq i32 %71, %57
  br i1 %.not8940, label %.loopexit9307, label %60

.loopexit9307:                                    ; preds = %60, %49
  %72 = zext i32 %2 to i64
  %73 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %72)
  %.not8941 = icmp eq i32 %73, 0
  %.pre9832 = add nuw nsw i64 %72, 4
  br i1 %.not8941, label %.loopexit9307._crit_edge, label %74

74:                                               ; preds = %.loopexit9307
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre9832, i32 noundef %73)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %73)
  br label %.loopexit9307._crit_edge

.loopexit9307._crit_edge:                         ; preds = %.loopexit9307, %74
  %75 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %52)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %72, i32 noundef %75)
  %76 = add nuw nsw i64 %50, 20
  %77 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %76)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre9832, i32 noundef %77)
  %78 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %51)
  %79 = add nuw nsw i64 %72, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %79, i32 noundef %78)
  %80 = add nuw nsw i64 %10, 40
  %81 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %80)
  %82 = add nuw nsw i64 %10, 36
  %83 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %82)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %51, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %52, i64 noundef 0)
  %.not8942 = icmp eq i32 %81, %83
  br i1 %.not8942, label %.loopexit, label %84

84:                                               ; preds = %.loopexit9307._crit_edge
  %85 = sub i32 %81, %83
  %.fr8943 = freeze i32 %85
  %86 = srem i32 %.fr8943, 52
  %87 = add i32 %.fr8943, %83
  %88 = sub i32 %87, %86
  %89 = add i32 %7, -16
  br label %90

90:                                               ; preds = %90, %84
  %.18699 = phi i32 [ %83, %84 ], [ %103, %90 ]
  %91 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %76)
  %92 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %52)
  %93 = sub i32 %91, %92
  %94 = ashr i32 %93, 1
  %95 = zext i32 %.18699 to i64
  %96 = add nuw nsw i64 %95, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %96, i32 noundef %94)
  %97 = add nuw nsw i64 %95, 4
  %98 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %97)
  %99 = add nuw nsw i64 %95, 8
  %100 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %99)
  %101 = shl i32 %100, 1
  %102 = add i32 %101, %98
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Aenable_if0x3C_0x5Fis_cpp17_forward_iterator0x3Cchar16_t0x20const0x2A0x3E0x3A0x3Avalue0x200x260x260x20is_constructible0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aiterator_traits0x3Cchar16_t0x20const0x2A0x3E0x3A0x3Areference0x3E0x3A0x3Avalue0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cchar16_t0x2A0x3E0x3E0x3A0x3Atype0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x3A0x3Ainsert0x3Cchar16_t0x20const0x2A0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cchar16_t0x20const0x2A0x3E0x2C0x20char16_t0x20const0x2A0x2C0x20char16_t0x20const0x2A0x29(ptr noundef %0, i32 noundef %89, i32 noundef %91, i32 noundef %98, i32 noundef %102) #5
  %103 = add i32 %.18699, 52
  %.not8944 = icmp eq i32 %103, %88
  br i1 %.not8944, label %.loopexit, label %90

.loopexit:                                        ; preds = %90, %.loopexit9307._crit_edge
  %104 = zext i32 %3 to i64
  %105 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %104)
  %.not8945 = icmp eq i32 %105, 0
  %.pre9834 = add nuw nsw i64 %104, 4
  br i1 %.not8945, label %.loopexit._crit_edge, label %106

106:                                              ; preds = %.loopexit
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre9834, i32 noundef %105)
  br label %.loopexit._crit_edge.sink.split

107:                                              ; preds = %._crit_edge9831, %19
  %.pre-phi9839 = phi i64 [ %.pre9838, %._crit_edge9831 ], [ %41, %19 ]
  %.pre-phi9837 = phi i64 [ %.pre9836, %._crit_edge9831 ], [ %38, %19 ]
  %.pre-phi9798 = phi i64 [ %47, %._crit_edge9831 ], [ %42, %19 ]
  %.pre-phi9797 = phi i64 [ %46, %._crit_edge9831 ], [ %.pre, %19 ]
  %.pre-phi = phi i64 [ %45, %._crit_edge9831 ], [ %37, %19 ]
  %.08503 = phi i32 [ 0, %._crit_edge9831 ], [ %40, %19 ]
  %108 = mul nsw i32 %17, 52
  %109 = add i32 %108, %14
  br label %110

110:                                              ; preds = %.loopexit9495, %107
  %.28700 = phi i32 [ %14, %107 ], [ %265, %.loopexit9495 ]
  %.18504 = phi i32 [ %.08503, %107 ], [ %.38506, %.loopexit9495 ]
  %111 = zext i32 %.28700 to i64
  %112 = add nuw nsw i64 %111, 8
  %113 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %112)
  %114 = icmp ult i32 %113, 3
  br i1 %114, label %.loopexit9495, label %115

115:                                              ; preds = %110
  %116 = add nuw nsw i64 %111, 4
  %117 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %116)
  %118 = zext i32 %117 to i64
  %119 = add nuw nsw i64 %118, 1
  %120 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %119)
  %121 = shl i32 %120, 8
  %122 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %118)
  %123 = shl i32 %122, 16
  %124 = or i32 %123, %121
  %125 = add nuw nsw i64 %118, 2
  %126 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %125)
  %127 = or i32 %124, %126
  %128 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9837)
  %.not8947 = icmp eq i32 %128, 0
  br i1 %.not8947, label %152, label %129

129:                                              ; preds = %115
  %130 = add i32 %128, -1
  %131 = mul i32 %127, 37
  %132 = and i32 %131, %130
  %133 = shl i32 %132, 2
  %134 = add i32 %133, %.18504
  %135 = zext i32 %134 to i64
  %136 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %135)
  %137 = icmp eq i32 %127, %136
  br i1 %137, label %.loopexit9495, label %.preheader9494

.preheader9494:                                   ; preds = %129, %141
  %.08591 = phi i32 [ %151, %141 ], [ %136, %129 ]
  %.08519 = phi i32 [ %149, %141 ], [ %134, %129 ]
  %.08447 = phi i32 [ %146, %141 ], [ 1, %129 ]
  %.08385 = phi i32 [ %147, %141 ], [ %132, %129 ]
  %.08368 = phi i32 [ %144, %141 ], [ 0, %129 ]
  %138 = icmp eq i32 %.08591, -1
  %.not8950 = icmp eq i32 %.08368, 0
  br i1 %138, label %139, label %141

139:                                              ; preds = %.preheader9494
  %140 = select i1 %.not8950, i32 %.08519, i32 %.08368
  br label %152

141:                                              ; preds = %.preheader9494
  %142 = icmp eq i32 %.08591, -2
  %143 = select i1 %142, i1 %.not8950, i1 false
  %144 = select i1 %143, i32 %.08519, i32 %.08368
  %145 = add i32 %.08385, %.08447
  %146 = add i32 %.08447, 1
  %147 = and i32 %145, %130
  %148 = shl i32 %147, 2
  %149 = add i32 %148, %.18504
  %150 = zext i32 %149 to i64
  %151 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %150)
  %.not8949 = icmp eq i32 %127, %151
  br i1 %.not8949, label %.loopexit9495, label %.preheader9494

152:                                              ; preds = %115, %139
  %.18592 = phi i32 [ %140, %139 ], [ 0, %115 ]
  %153 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9839)
  %154 = shl i32 %153, 2
  %155 = add i32 %154, 4
  %156 = mul i32 %128, 3
  %.not8951 = icmp ult i32 %155, %156
  br i1 %.not8951, label %159, label %157

157:                                              ; preds = %152
  %158 = shl i32 %128, 1
  br label %166

159:                                              ; preds = %152
  %160 = xor i32 %153, -1
  %161 = add i32 %128, %160
  %162 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9797)
  %163 = sub i32 %161, %162
  %164 = lshr i32 %128, 3
  %165 = icmp ugt i32 %163, %164
  br i1 %165, label %.loopexit9492, label %166

166:                                              ; preds = %159, %157
  %.08648 = phi i32 [ %158, %157 ], [ %128, %159 ]
  %167 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9837)
  %168 = add i32 %.08648, -1
  %169 = zext i32 %168 to i64
  %170 = lshr i64 %169, 1
  %171 = or i64 %170, %169
  %172 = lshr i64 %171, 2
  %173 = or i64 %172, %171
  %174 = lshr i64 %173, 4
  %175 = or i64 %174, %173
  %176 = lshr i64 %175, 8
  %177 = or i64 %176, %175
  %178 = lshr i64 %177, 16
  %179 = or i64 %178, %177
  %180 = trunc nuw i64 %179 to i32
  %181 = add i32 %180, 1
  %182 = icmp ult i32 %181, 65
  %183 = select i1 %182, i32 64, i32 %181
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9837, i32 noundef %183)
  %184 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9798)
  %185 = shl i32 %183, 2
  %186 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %185) #5
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9798, i32 noundef %186)
  %.not8952 = icmp eq i32 %184, 0
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9839, i64 noundef 0)
  %187 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9837)
  %.not8959 = icmp eq i32 %187, 0
  br i1 %.not8952, label %188, label %192

188:                                              ; preds = %166
  br i1 %.not8959, label %231, label %189

189:                                              ; preds = %188
  %190 = shl i32 %187, 2
  %191 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %186, i32 noundef 255, i32 noundef %190)
  br label %231

192:                                              ; preds = %166
  br i1 %.not8959, label %196, label %193

193:                                              ; preds = %192
  %194 = shl i32 %187, 2
  %195 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %186, i32 noundef 255, i32 noundef %194)
  br label %196

196:                                              ; preds = %193, %192
  %.not8954 = icmp eq i32 %167, 0
  br i1 %.not8954, label %.loopexit9493, label %197

197:                                              ; preds = %196
  %198 = shl i32 %167, 2
  %199 = add i32 %184, %198
  %200 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9837)
  %201 = add i32 %200, -1
  br label %202

202:                                              ; preds = %229, %197
  %.08626 = phi i32 [ %184, %197 ], [ %230, %229 ]
  %.18448 = phi i32 [ 0, %197 ], [ %.28449, %229 ]
  %203 = zext i32 %.08626 to i64
  %204 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %203)
  %205 = icmp ult i32 %204, -2
  br i1 %205, label %206, label %229

206:                                              ; preds = %202
  %207 = mul i32 %204, 37
  %208 = and i32 %207, %201
  %209 = shl i32 %208, 2
  %210 = add i32 %209, %186
  %211 = zext i32 %210 to i64
  %212 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %211)
  %213 = icmp eq i32 %204, %212
  br i1 %213, label %.loopexit9490, label %.preheader9489

.preheader9489:                                   ; preds = %206, %217
  %.28593 = phi i32 [ %220, %217 ], [ 0, %206 ]
  %.18520 = phi i32 [ %223, %217 ], [ %208, %206 ]
  %.08482 = phi i32 [ %227, %217 ], [ %212, %206 ]
  %.08420 = phi i32 [ %225, %217 ], [ %210, %206 ]
  %.18386 = phi i32 [ %222, %217 ], [ 1, %206 ]
  %214 = icmp eq i32 %.08482, -1
  %.not8957 = icmp eq i32 %.28593, 0
  br i1 %214, label %215, label %217

215:                                              ; preds = %.preheader9489
  %216 = select i1 %.not8957, i32 %.08420, i32 %.28593
  %.pre9821 = zext i32 %216 to i64
  br label %.loopexit9490

217:                                              ; preds = %.preheader9489
  %218 = icmp eq i32 %.08482, -2
  %219 = select i1 %218, i1 %.not8957, i1 false
  %220 = select i1 %219, i32 %.08420, i32 %.28593
  %221 = add i32 %.18386, %.18520
  %222 = add i32 %.18386, 1
  %223 = and i32 %221, %201
  %224 = shl i32 %223, 2
  %225 = add i32 %224, %186
  %226 = zext i32 %225 to i64
  %227 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %226)
  %.not8956 = icmp eq i32 %204, %227
  br i1 %.not8956, label %.loopexit9490, label %.preheader9489

.loopexit9490:                                    ; preds = %217, %206, %215
  %.pre-phi9822 = phi i64 [ %211, %206 ], [ %.pre9821, %215 ], [ %226, %217 ]
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9822, i32 noundef %204)
  %228 = add i32 %.18448, 1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9839, i32 noundef %228)
  br label %229

229:                                              ; preds = %.loopexit9490, %202
  %.28449 = phi i32 [ %228, %.loopexit9490 ], [ %.18448, %202 ]
  %230 = add i32 %.08626, 4
  %.not8958 = icmp eq i32 %230, %199
  br i1 %.not8958, label %.loopexit9493, label %202

.loopexit9493:                                    ; preds = %229, %196
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %184)
  br label %231

231:                                              ; preds = %188, %.loopexit9493, %189
  %232 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9798)
  %233 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9837)
  %.not8960 = icmp eq i32 %233, 0
  br i1 %.not8960, label %.loopexit9492, label %234

234:                                              ; preds = %231
  %235 = add i32 %233, -1
  %236 = mul i32 %127, 37
  %237 = and i32 %235, %236
  %238 = shl i32 %237, 2
  %239 = add i32 %238, %232
  %240 = zext i32 %239 to i64
  %241 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %240)
  %242 = icmp eq i32 %127, %241
  br i1 %242, label %.loopexit9492, label %.preheader9491

.preheader9491:                                   ; preds = %234, %246
  %.18649 = phi i32 [ %256, %246 ], [ %241, %234 ]
  %.38594 = phi i32 [ %254, %246 ], [ %239, %234 ]
  %.08560 = phi i32 [ %249, %246 ], [ 0, %234 ]
  %.28521 = phi i32 [ %252, %246 ], [ %237, %234 ]
  %.18369 = phi i32 [ %251, %246 ], [ 1, %234 ]
  %243 = icmp eq i32 %.18649, -1
  %.not8963 = icmp eq i32 %.08560, 0
  br i1 %243, label %244, label %246

244:                                              ; preds = %.preheader9491
  %245 = select i1 %.not8963, i32 %.38594, i32 %.08560
  br label %.loopexit9492

246:                                              ; preds = %.preheader9491
  %247 = icmp eq i32 %.18649, -2
  %248 = select i1 %247, i1 %.not8963, i1 false
  %249 = select i1 %248, i32 %.38594, i32 %.08560
  %250 = add i32 %.18369, %.28521
  %251 = add i32 %.18369, 1
  %252 = and i32 %250, %235
  %253 = shl i32 %252, 2
  %254 = add i32 %253, %232
  %255 = zext i32 %254 to i64
  %256 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %255)
  %.not8962 = icmp eq i32 %127, %256
  br i1 %.not8962, label %.loopexit9492, label %.preheader9491

.loopexit9492:                                    ; preds = %246, %231, %234, %159, %244
  %.48595 = phi i32 [ %239, %234 ], [ %245, %244 ], [ %.18592, %159 ], [ 0, %231 ], [ %254, %246 ]
  %.28505 = phi i32 [ %232, %234 ], [ %232, %244 ], [ %.18504, %159 ], [ %232, %231 ], [ %232, %246 ]
  %257 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9839)
  %258 = add i32 %257, 1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9839, i32 noundef %258)
  %259 = zext i32 %.48595 to i64
  %260 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %259)
  %.not8964 = icmp eq i32 %260, -1
  br i1 %.not8964, label %264, label %261

261:                                              ; preds = %.loopexit9492
  %262 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9797)
  %263 = add i32 %262, -1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9797, i32 noundef %263)
  br label %264

264:                                              ; preds = %261, %.loopexit9492
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %259, i32 noundef %127)
  br label %.loopexit9495

.loopexit9495:                                    ; preds = %141, %129, %110, %264
  %.38506 = phi i32 [ %.18504, %110 ], [ %.28505, %264 ], [ %.18504, %129 ], [ %.18504, %141 ]
  %265 = add i32 %.28700, 52
  %.not8965 = icmp eq i32 %265, %109
  br i1 %.not8965, label %266, label %110

266:                                              ; preds = %.loopexit9495
  %267 = and i32 %17, 536870911
  %.not8966 = icmp eq i32 %267, 0
  br i1 %.not8966, label %.loopexit9486, label %268

268:                                              ; preds = %266
  %269 = shl nsw i32 %17, 5
  %270 = udiv i32 %269, 3
  %271 = add nuw nsw i32 %270, 1
  %272 = zext nneg i32 %271 to i64
  %273 = lshr i64 %272, 1
  %274 = or i64 %273, %272
  %275 = lshr i64 %274, 2
  %276 = or i64 %275, %274
  %277 = lshr i64 %276, 4
  %278 = or i64 %277, %276
  %279 = lshr i64 %278, 8
  %280 = or i64 %279, %278
  %281 = lshr i64 %280, 16
  %282 = or i64 %281, %280
  %283 = trunc nuw nsw i64 %282 to i32
  %284 = mul i32 %283, 24
  %285 = add i32 %284, 24
  %286 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %285) #5
  %287 = udiv i32 %284, 24
  %288 = add nuw nsw i32 %287, 1
  %289 = and i32 %288, 7
  %.not8967 = icmp eq i32 %289, 0
  br i1 %.not8967, label %.loopexit9488, label %.preheader9487

.preheader9487:                                   ; preds = %268, %.preheader9487
  %.38701 = phi i32 [ %292, %.preheader9487 ], [ %286, %268 ]
  %.28650 = phi i32 [ %293, %.preheader9487 ], [ 0, %268 ]
  %290 = zext i32 %.38701 to i64
  %291 = add nuw nsw i64 %290, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %291, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %290, i64 noundef 4294967295)
  %292 = add i32 %.38701, 24
  %293 = add nuw nsw i32 %.28650, 1
  %.not8968 = icmp eq i32 %293, %289
  br i1 %.not8968, label %.loopexit9488, label %.preheader9487

.loopexit9488:                                    ; preds = %.preheader9487, %268
  %.48702 = phi i32 [ %286, %268 ], [ %292, %.preheader9487 ]
  %294 = add nuw i32 %283, 1
  %295 = icmp ult i32 %284, 168
  br i1 %295, label %.loopexit9486, label %296

296:                                              ; preds = %.loopexit9488
  %297 = add i32 %286, %285
  br label %298

298:                                              ; preds = %298, %296
  %.58703 = phi i32 [ %.48702, %296 ], [ %315, %298 ]
  %299 = zext i32 %.58703 to i64
  %300 = add nuw nsw i64 %299, 168
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %300, i64 noundef 4294967295)
  %301 = add nuw nsw i64 %299, 144
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %301, i64 noundef 4294967295)
  %302 = add nuw nsw i64 %299, 120
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %302, i64 noundef 4294967295)
  %303 = add nuw nsw i64 %299, 96
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %303, i64 noundef 4294967295)
  %304 = add nuw nsw i64 %299, 72
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %304, i64 noundef 4294967295)
  %305 = add nuw nsw i64 %299, 48
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %305, i64 noundef 4294967295)
  %306 = add nuw nsw i64 %299, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %306, i64 noundef 4294967295)
  %307 = add nuw nsw i64 %299, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %307, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %299, i64 noundef 4294967295)
  %308 = add nuw nsw i64 %299, 176
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %308, i32 noundef 0)
  %309 = add nuw nsw i64 %299, 152
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %309, i32 noundef 0)
  %310 = add nuw nsw i64 %299, 128
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %310, i32 noundef 0)
  %311 = add nuw nsw i64 %299, 104
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %311, i32 noundef 0)
  %312 = add nuw nsw i64 %299, 80
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %312, i32 noundef 0)
  %313 = add nuw nsw i64 %299, 56
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %313, i32 noundef 0)
  %314 = add nuw nsw i64 %299, 32
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %314, i32 noundef 0)
  %315 = add i32 %.58703, 192
  %.not8969 = icmp eq i32 %315, %297
  br i1 %.not8969, label %.loopexit9486, label %298

.loopexit9486:                                    ; preds = %298, %266, %.loopexit9488
  %.18561 = phi i32 [ %294, %.loopexit9488 ], [ 0, %266 ], [ %294, %298 ]
  %.08402 = phi i32 [ %286, %.loopexit9488 ], [ 0, %266 ], [ %286, %298 ]
  %316 = icmp eq i32 %12, %14
  br i1 %316, label %779, label %.preheader9485

.preheader9485:                                   ; preds = %.loopexit9486, %.loopexit9482
  %.28562 = phi i32 [ %.108570, %.loopexit9482 ], [ %.18561, %.loopexit9486 ]
  %.08530 = phi i32 [ %.98539, %.loopexit9482 ], [ 0, %.loopexit9486 ]
  %.18483 = phi i32 [ %680, %.loopexit9482 ], [ %14, %.loopexit9486 ]
  %.18403 = phi i32 [ %.68408, %.loopexit9482 ], [ %.08402, %.loopexit9486 ]
  %.08358 = phi i32 [ %.78365, %.loopexit9482 ], [ 0, %.loopexit9486 ]
  %317 = zext i32 %.18483 to i64
  %318 = add nuw nsw i64 %317, 8
  %319 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %318)
  %320 = add i32 %319, -24577
  %or.cond = icmp ult i32 %320, -24576
  br i1 %or.cond, label %.loopexit9482, label %321

321:                                              ; preds = %.preheader9485
  %322 = add nuw nsw i64 %317, 4
  %323 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %322)
  %324 = add i32 %323, %319
  br label %325

325:                                              ; preds = %679, %321
  %.38563 = phi i32 [ %.28562, %321 ], [ %.98569, %679 ]
  %.18531 = phi i32 [ %.08530, %321 ], [ %.88538, %679 ]
  %.38522 = phi i32 [ 0, %321 ], [ %337, %679 ]
  %.48507 = phi i32 [ %319, %321 ], [ %645, %679 ]
  %.28404 = phi i32 [ %.18403, %321 ], [ %.58407, %679 ]
  %.18359 = phi i32 [ %.08358, %321 ], [ %.68364, %679 ]
  %326 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9837)
  %327 = add i32 %326, -1
  %328 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9798)
  %.not8971 = icmp eq i32 %326, 0
  br label %329

329:                                              ; preds = %.loopexit9462, %325
  %.68704 = phi i32 [ %.48507, %325 ], [ %330, %.loopexit9462 ]
  %.48523 = phi i32 [ %.38522, %325 ], [ %337, %.loopexit9462 ]
  %330 = add i32 %.68704, -1
  %331 = add i32 %330, %323
  %332 = zext i32 %331 to i64
  %333 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %332)
  %334 = add i32 %333, %.48523
  %335 = mul i32 %334, 1025
  %336 = lshr i32 %335, 6
  %337 = xor i32 %336, %335
  %338 = add i32 %.68704, 2
  %339 = icmp ugt i32 %338, %319
  br i1 %339, label %.loopexit9463, label %340

340:                                              ; preds = %329
  br i1 %.not8971, label %.loopexit9462, label %341

341:                                              ; preds = %340
  %342 = add nuw nsw i64 %332, 2
  %343 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %342)
  %344 = add i32 %.68704, %323
  %345 = zext i32 %344 to i64
  %346 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %345)
  %347 = shl i32 %346, 8
  %348 = shl i32 %333, 16
  %349 = or i32 %343, %348
  %350 = or i32 %349, %347
  %351 = mul i32 %350, 37
  %352 = and i32 %351, %327
  %353 = shl i32 %352, 2
  %354 = add i32 %353, %328
  %355 = zext i32 %354 to i64
  %356 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %355)
  %357 = icmp eq i32 %350, %356
  br i1 %357, label %.loopexit9463, label %.preheader9461

.preheader9461:                                   ; preds = %341, %359
  %.38651 = phi i32 [ %366, %359 ], [ %356, %341 ]
  %.58596 = phi i32 [ %362, %359 ], [ %352, %341 ]
  %.08434 = phi i32 [ %361, %359 ], [ 1, %341 ]
  %358 = icmp eq i32 %.38651, -1
  br i1 %358, label %.loopexit9462, label %359

359:                                              ; preds = %.preheader9461
  %360 = add i32 %.08434, %.58596
  %361 = add i32 %.08434, 1
  %362 = and i32 %360, %327
  %363 = shl i32 %362, 2
  %364 = add i32 %363, %328
  %365 = zext i32 %364 to i64
  %366 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %365)
  %.not8972 = icmp eq i32 %350, %366
  br i1 %.not8972, label %.loopexit9463, label %.preheader9461

.loopexit9463:                                    ; preds = %341, %329, %359
  %367 = sub i32 %319, %330
  %.not8974 = icmp eq i32 %.38563, 0
  br i1 %.not8974, label %.loopexit9479, label %368

.loopexit9462:                                    ; preds = %.preheader9461, %340
  %.not8973 = icmp eq i32 %330, 0
  br i1 %.not8973, label %.loopexit9482, label %329

368:                                              ; preds = %.loopexit9463
  %369 = add i32 %.38563, -1
  %370 = and i32 %337, %369
  %.not8975 = icmp eq i32 %319, %330
  br i1 %.not8975, label %395, label %.preheader9655

.preheader9655:                                   ; preds = %368, %391
  %.38450 = phi i32 [ %393, %391 ], [ %370, %368 ]
  %.28370 = phi i32 [ %394, %391 ], [ 1, %368 ]
  %371 = mul i32 %.38450, 24
  %372 = add i32 %371, %.28404
  %373 = zext i32 %372 to i64
  %374 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %373)
  %375 = add nuw nsw i64 %373, 8
  %376 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %375)
  %.not8978 = icmp eq i32 %376, %337
  %377 = lshr i64 %374, 32
  %378 = trunc nuw i64 %377 to i32
  %.not8979 = icmp eq i32 %367, %378
  %or.cond9272 = select i1 %.not8978, i1 %.not8979, i1 false
  br i1 %or.cond9272, label %379, label %.loopexit9459

379:                                              ; preds = %.preheader9655
  %380 = trunc i64 %374 to i32
  br label %381

381:                                              ; preds = %386, %379
  %.78705 = phi i32 [ %380, %379 ], [ %387, %386 ]
  %.48652 = phi i32 [ %331, %379 ], [ %388, %386 ]
  %382 = zext i32 %.48652 to i64
  %383 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %382)
  %384 = zext i32 %.78705 to i64
  %385 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %384)
  %.not8980 = icmp eq i32 %383, %385
  br i1 %.not8980, label %386, label %.loopexit9459

386:                                              ; preds = %381
  %387 = add i32 %.78705, 1
  %388 = add i32 %.48652, 1
  %.not8981 = icmp eq i32 %388, %324
  br i1 %.not8981, label %.loopexit9460, label %381

.loopexit9459:                                    ; preds = %381, %.preheader9655
  %.not8982 = icmp eq i32 %376, 0
  %389 = icmp ult i64 %374, 4294967296
  %390 = and i1 %389, %.not8982
  br i1 %390, label %.loopexit9479, label %391

391:                                              ; preds = %.loopexit9459
  %392 = add i32 %.28370, %.38450
  %393 = and i32 %392, %369
  %394 = add i32 %.28370, 1
  br label %.preheader9655

395:                                              ; preds = %368
  %396 = mul i32 %370, 24
  %397 = add i32 %396, %.28404
  %398 = zext i32 %397 to i64
  %399 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %398)
  %400 = add nuw nsw i64 %398, 8
  %401 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %400)
  %402 = icmp eq i32 %337, %401
  %403 = icmp ult i64 %399, 4294967296
  %404 = and i1 %403, %402
  br i1 %404, label %.loopexit9460, label %405

405:                                              ; preds = %395
  %.not8976 = icmp eq i32 %401, 0
  %406 = and i1 %403, %.not8976
  br i1 %406, label %.loopexit9479, label %.preheader9477

.preheader9477:                                   ; preds = %405, %418
  %.58653 = phi i32 [ %419, %418 ], [ 1, %405 ]
  %.48451 = phi i32 [ %408, %418 ], [ %370, %405 ]
  %407 = add i32 %.48451, %.58653
  %408 = and i32 %407, %369
  %409 = mul i32 %408, 24
  %410 = add i32 %409, %.28404
  %411 = zext i32 %410 to i64
  %412 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %411)
  %413 = add nuw nsw i64 %411, 8
  %414 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %413)
  %415 = icmp eq i32 %337, %414
  %416 = icmp ult i64 %412, 4294967296
  %417 = and i1 %416, %415
  br i1 %417, label %.loopexit9460, label %418

418:                                              ; preds = %.preheader9477
  %419 = add i32 %.58653, 1
  %.not8977 = icmp ne i32 %414, 0
  %420 = icmp ugt i64 %412, 4294967295
  %or.cond9273 = select i1 %.not8977, i1 true, i1 %420
  br i1 %or.cond9273, label %.preheader9477, label %.loopexit9479

.loopexit9479:                                    ; preds = %.loopexit9459, %418, %.loopexit9463, %405
  %.68597 = phi i32 [ %397, %405 ], [ 0, %.loopexit9463 ], [ %410, %418 ], [ %372, %.loopexit9459 ]
  %421 = shl i32 %.18531, 2
  %422 = add i32 %421, 4
  %423 = mul i32 %.38563, 3
  %.not8983 = icmp ult i32 %422, %423
  br i1 %.not8983, label %426, label %424

424:                                              ; preds = %.loopexit9479
  %425 = shl i32 %.38563, 1
  br label %435

426:                                              ; preds = %.loopexit9479
  %427 = xor i32 %.18531, -1
  %428 = add i32 %.38563, %427
  %429 = sub i32 %428, %.18359
  %430 = lshr i32 %.38563, 3
  %.not8984 = icmp ugt i32 %429, %430
  br i1 %.not8984, label %431, label %435

431:                                              ; preds = %426
  %432 = zext i32 %.68597 to i64
  %433 = add nuw nsw i64 %432, 8
  %434 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %433)
  br label %.loopexit9455

435:                                              ; preds = %426, %424
  %.88706 = phi i32 [ %425, %424 ], [ %.38563, %426 ]
  %436 = add i32 %.88706, -1
  %437 = zext i32 %436 to i64
  %438 = lshr i64 %437, 1
  %439 = or i64 %438, %437
  %440 = lshr i64 %439, 2
  %441 = or i64 %440, %439
  %442 = lshr i64 %441, 4
  %443 = or i64 %442, %441
  %444 = lshr i64 %443, 8
  %445 = or i64 %444, %443
  %446 = lshr i64 %445, 16
  %447 = or i64 %446, %445
  %448 = trunc nuw i64 %447 to i32
  %449 = add i32 %448, 1
  %450 = icmp ult i32 %449, 65
  %451 = select i1 %450, i32 64, i32 %449
  %452 = mul i32 %451, 24
  %453 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %452) #5
  %454 = add i32 %452, %453
  %.not8985 = icmp eq i32 %.28404, 0
  %455 = add i32 %452, -24
  %456 = udiv i32 %455, 24
  %457 = add nuw nsw i32 %456, 1
  %458 = and i32 %457, 7
  %.not8986 = icmp eq i32 %458, 0
  br i1 %.not8985, label %482, label %459

459:                                              ; preds = %435
  br i1 %.not8986, label %.loopexit9476, label %.preheader9475

.preheader9475:                                   ; preds = %459, %.preheader9475
  %.98707 = phi i32 [ %462, %.preheader9475 ], [ %453, %459 ]
  %.68654 = phi i32 [ %463, %.preheader9475 ], [ 0, %459 ]
  %460 = zext i32 %.98707 to i64
  %461 = add nuw nsw i64 %460, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %461, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %460, i64 noundef 4294967295)
  %462 = add i32 %.98707, 24
  %463 = add nuw nsw i32 %.68654, 1
  %.not8990 = icmp eq i32 %463, %458
  br i1 %.not8990, label %.loopexit9476, label %.preheader9475

.loopexit9476:                                    ; preds = %.preheader9475, %459
  %.108708 = phi i32 [ %453, %459 ], [ %462, %.preheader9475 ]
  %464 = icmp ugt i32 %455, 167
  br i1 %464, label %.preheader9473, label %.loopexit9474

.preheader9473:                                   ; preds = %.loopexit9476, %.preheader9473
  %.118709 = phi i32 [ %481, %.preheader9473 ], [ %.108708, %.loopexit9476 ]
  %465 = zext i32 %.118709 to i64
  %466 = add nuw nsw i64 %465, 168
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %466, i64 noundef 4294967295)
  %467 = add nuw nsw i64 %465, 144
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %467, i64 noundef 4294967295)
  %468 = add nuw nsw i64 %465, 120
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %468, i64 noundef 4294967295)
  %469 = add nuw nsw i64 %465, 96
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %469, i64 noundef 4294967295)
  %470 = add nuw nsw i64 %465, 72
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %470, i64 noundef 4294967295)
  %471 = add nuw nsw i64 %465, 48
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %471, i64 noundef 4294967295)
  %472 = add nuw nsw i64 %465, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %472, i64 noundef 4294967295)
  %473 = add nuw nsw i64 %465, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %473, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %465, i64 noundef 4294967295)
  %474 = add nuw nsw i64 %465, 176
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %474, i32 noundef 0)
  %475 = add nuw nsw i64 %465, 152
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %475, i32 noundef 0)
  %476 = add nuw nsw i64 %465, 128
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %476, i32 noundef 0)
  %477 = add nuw nsw i64 %465, 104
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %477, i32 noundef 0)
  %478 = add nuw nsw i64 %465, 80
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %478, i32 noundef 0)
  %479 = add nuw nsw i64 %465, 56
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %479, i32 noundef 0)
  %480 = add nuw nsw i64 %465, 32
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %480, i32 noundef 0)
  %481 = add i32 %.118709, 192
  %.not8991 = icmp eq i32 %481, %454
  br i1 %.not8991, label %.loopexit9474, label %.preheader9473

.loopexit9474:                                    ; preds = %.preheader9473, %.loopexit9476
  br i1 %.not8974, label %.loopexit9472, label %505

482:                                              ; preds = %435
  br i1 %.not8986, label %.loopexit9471, label %.preheader9470

.preheader9470:                                   ; preds = %482, %.preheader9470
  %.128710 = phi i32 [ %485, %.preheader9470 ], [ %453, %482 ]
  %.78655 = phi i32 [ %486, %.preheader9470 ], [ 0, %482 ]
  %483 = zext i32 %.128710 to i64
  %484 = add nuw nsw i64 %483, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %484, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %483, i64 noundef 4294967295)
  %485 = add i32 %.128710, 24
  %486 = add nuw nsw i32 %.78655, 1
  %.not8987 = icmp eq i32 %486, %458
  br i1 %.not8987, label %.loopexit9471, label %.preheader9470

.loopexit9471:                                    ; preds = %.preheader9470, %482
  %.138711 = phi i32 [ %453, %482 ], [ %485, %.preheader9470 ]
  %487 = icmp ult i32 %455, 168
  br i1 %487, label %.loopexit9469, label %.preheader9468

.preheader9468:                                   ; preds = %.loopexit9471, %.preheader9468
  %.148712 = phi i32 [ %504, %.preheader9468 ], [ %.138711, %.loopexit9471 ]
  %488 = zext i32 %.148712 to i64
  %489 = add nuw nsw i64 %488, 168
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %489, i64 noundef 4294967295)
  %490 = add nuw nsw i64 %488, 144
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %490, i64 noundef 4294967295)
  %491 = add nuw nsw i64 %488, 120
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %491, i64 noundef 4294967295)
  %492 = add nuw nsw i64 %488, 96
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %492, i64 noundef 4294967295)
  %493 = add nuw nsw i64 %488, 72
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %493, i64 noundef 4294967295)
  %494 = add nuw nsw i64 %488, 48
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %494, i64 noundef 4294967295)
  %495 = add nuw nsw i64 %488, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %495, i64 noundef 4294967295)
  %496 = add nuw nsw i64 %488, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %496, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %488, i64 noundef 4294967295)
  %497 = add nuw nsw i64 %488, 176
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %497, i32 noundef 0)
  %498 = add nuw nsw i64 %488, 152
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %498, i32 noundef 0)
  %499 = add nuw nsw i64 %488, 128
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %499, i32 noundef 0)
  %500 = add nuw nsw i64 %488, 104
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %500, i32 noundef 0)
  %501 = add nuw nsw i64 %488, 80
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %501, i32 noundef 0)
  %502 = add nuw nsw i64 %488, 56
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %502, i32 noundef 0)
  %503 = add nuw nsw i64 %488, 32
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %503, i32 noundef 0)
  %504 = add i32 %.148712, 192
  %.not8988 = icmp eq i32 %504, %454
  br i1 %.not8988, label %.loopexit9469, label %.preheader9468

505:                                              ; preds = %.loopexit9474
  %506 = mul i32 %.38563, 24
  %507 = add i32 %.28404, %506
  %508 = add i32 %451, -1
  br label %509

509:                                              ; preds = %582, %505
  %.78598 = phi i32 [ %.28404, %505 ], [ %583, %582 ]
  %.28532 = phi i32 [ 0, %505 ], [ %.38533, %582 ]
  %510 = zext i32 %.78598 to i64
  %511 = add nuw nsw i64 %510, 8
  %512 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %511)
  %.not8992 = icmp ne i32 %512, 0
  %513 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %510)
  %514 = icmp ugt i64 %513, 4294967295
  %.not8994 = or i1 %.not8992, %514
  br i1 %.not8994, label %515, label %582

515:                                              ; preds = %509
  %516 = and i32 %512, %508
  %517 = lshr i64 %513, 32
  %.not8995 = icmp ult i64 %513, 4294967296
  br i1 %.not8995, label %546, label %518

518:                                              ; preds = %515
  %519 = trunc nuw i64 %517 to i32
  %520 = trunc i64 %513 to i32
  %521 = add i32 %519, %520
  br label %522

522:                                              ; preds = %542, %518
  %.38371 = phi i32 [ %516, %518 ], [ %544, %542 ]
  %.08355 = phi i32 [ 1, %518 ], [ %545, %542 ]
  %523 = mul i32 %.38371, 24
  %524 = add i32 %523, %453
  %525 = zext i32 %524 to i64
  %526 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %525)
  %527 = add nuw nsw i64 %525, 8
  %528 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %527)
  %.not8998 = icmp eq i32 %528, %512
  %529 = lshr i64 %526, 32
  %.not8999 = icmp eq i64 %517, %529
  %or.cond9274 = select i1 %.not8998, i1 %.not8999, i1 false
  br i1 %or.cond9274, label %530, label %.loopexit9452

530:                                              ; preds = %522
  %531 = trunc i64 %526 to i32
  br label %532

532:                                              ; preds = %537, %530
  %.158713 = phi i32 [ %531, %530 ], [ %538, %537 ]
  %.88656 = phi i32 [ %520, %530 ], [ %539, %537 ]
  %533 = zext i32 %.88656 to i64
  %534 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %533)
  %535 = zext i32 %.158713 to i64
  %536 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %535)
  %.not9000 = icmp eq i32 %534, %536
  br i1 %.not9000, label %537, label %.loopexit9452

537:                                              ; preds = %532
  %538 = add i32 %.158713, 1
  %539 = add i32 %.88656, 1
  %.not9001 = icmp eq i32 %539, %521
  br i1 %.not9001, label %.loopexit9453, label %532

.loopexit9452:                                    ; preds = %532, %522
  %.not9002 = icmp eq i32 %528, 0
  %540 = icmp ult i64 %526, 4294967296
  %541 = and i1 %540, %.not9002
  br i1 %541, label %.loopexit9453, label %542

542:                                              ; preds = %.loopexit9452
  %543 = add i32 %.08355, %.38371
  %544 = and i32 %543, %508
  %545 = add i32 %.08355, 1
  br label %522

546:                                              ; preds = %515
  %547 = mul i32 %516, 24
  %548 = add i32 %547, %453
  %549 = zext i32 %548 to i64
  %550 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %549)
  %551 = add nuw nsw i64 %549, 8
  %552 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %551)
  %553 = icmp eq i32 %512, %552
  %554 = icmp ult i64 %550, 4294967296
  %.not8996 = icmp eq i32 %552, 0
  %555 = or i1 %553, %.not8996
  %or.cond9275 = and i1 %554, %555
  br i1 %or.cond9275, label %.loopexit9453, label %.preheader9456

.preheader9456:                                   ; preds = %546, %567
  %.98657 = phi i32 [ %568, %567 ], [ 1, %546 ]
  %.48372 = phi i32 [ %557, %567 ], [ %516, %546 ]
  %556 = add i32 %.48372, %.98657
  %557 = and i32 %556, %508
  %558 = mul i32 %557, 24
  %559 = add i32 %558, %453
  %560 = zext i32 %559 to i64
  %561 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %560)
  %562 = add nuw nsw i64 %560, 8
  %563 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %562)
  %564 = icmp eq i32 %512, %563
  %565 = icmp ult i64 %561, 4294967296
  %566 = and i1 %565, %564
  br i1 %566, label %.loopexit9453, label %567

567:                                              ; preds = %.preheader9456
  %568 = add i32 %.98657, 1
  %.not8997 = icmp ne i32 %563, 0
  %569 = icmp ugt i64 %561, 4294967295
  %or.cond9276 = select i1 %.not8997, i1 true, i1 %569
  br i1 %or.cond9276, label %.preheader9456, label %.loopexit9453

.loopexit9453:                                    ; preds = %.loopexit9452, %567, %.preheader9456, %537, %546
  %.pre-phi9820 = phi i64 [ %551, %546 ], [ %527, %537 ], [ %562, %.preheader9456 ], [ %562, %567 ], [ %527, %.loopexit9452 ]
  %.pre-phi9819 = phi i64 [ %549, %546 ], [ %525, %537 ], [ %560, %.preheader9456 ], [ %560, %567 ], [ %525, %.loopexit9452 ]
  %570 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %510)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9819, i64 noundef %570)
  %571 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %511)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9820, i32 noundef %571)
  %572 = add nuw nsw i64 %.pre-phi9819, 20
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %572, i32 noundef 0)
  %573 = add nuw nsw i64 %.pre-phi9819, 12
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %573, i64 noundef 0)
  %574 = add nuw nsw i64 %510, 12
  %575 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %574)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %573, i32 noundef %575)
  %576 = add nuw nsw i64 %510, 16
  %577 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %576)
  %578 = add nuw nsw i64 %.pre-phi9819, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %578, i32 noundef %577)
  %579 = add nuw nsw i64 %510, 20
  %580 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %579)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %572, i32 noundef %580)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %579, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %574, i64 noundef 0)
  %581 = add i32 %.28532, 1
  br label %582

582:                                              ; preds = %.loopexit9453, %509
  %.38533 = phi i32 [ %581, %.loopexit9453 ], [ %.28532, %509 ]
  %583 = add i32 %.78598, 24
  %.not9003 = icmp eq i32 %583, %507
  br i1 %.not9003, label %.loopexit9472, label %509

.loopexit9472:                                    ; preds = %582, %.loopexit9474
  %.48534 = phi i32 [ 0, %.loopexit9474 ], [ %.38533, %582 ]
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.28404)
  br label %.loopexit9469

.loopexit9469:                                    ; preds = %.preheader9468, %.loopexit9471, %.loopexit9472
  %.58535 = phi i32 [ %.48534, %.loopexit9472 ], [ 0, %.loopexit9471 ], [ 0, %.preheader9468 ]
  %584 = add i32 %451, -1
  %585 = and i32 %584, %337
  %.not9004 = icmp eq i32 %319, %330
  br i1 %.not9004, label %609, label %.preheader9652

.preheader9652:                                   ; preds = %.loopexit9469, %605
  %.58565 = phi i32 [ %607, %605 ], [ %585, %.loopexit9469 ]
  %.18435 = phi i32 [ %608, %605 ], [ 1, %.loopexit9469 ]
  %586 = mul i32 %.58565, 24
  %587 = add i32 %586, %453
  %588 = zext i32 %587 to i64
  %589 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %588)
  %590 = add nuw nsw i64 %588, 8
  %591 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %590)
  %.not9007 = icmp eq i32 %591, %337
  %592 = lshr i64 %589, 32
  %593 = trunc nuw i64 %592 to i32
  %.not9008 = icmp eq i32 %367, %593
  %or.cond9278 = select i1 %.not9007, i1 %.not9008, i1 false
  br i1 %or.cond9278, label %594, label %.loopexit9454

594:                                              ; preds = %.preheader9652
  %595 = trunc i64 %589 to i32
  br label %596

596:                                              ; preds = %601, %594
  %.168714 = phi i32 [ %595, %594 ], [ %602, %601 ]
  %.108658 = phi i32 [ %331, %594 ], [ %603, %601 ]
  %597 = zext i32 %.108658 to i64
  %598 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %597)
  %599 = zext i32 %.168714 to i64
  %600 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %599)
  %.not9009 = icmp eq i32 %598, %600
  br i1 %.not9009, label %601, label %.loopexit9454

601:                                              ; preds = %596
  %602 = add i32 %.168714, 1
  %603 = add i32 %.108658, 1
  %.not9010 = icmp eq i32 %603, %324
  br i1 %.not9010, label %.loopexit9455, label %596

.loopexit9454:                                    ; preds = %596, %.preheader9652
  %.not9012 = icmp eq i32 %591, 0
  %604 = icmp ult i64 %589, 4294967296
  %or.cond9279 = select i1 %.not9012, i1 %604, i1 false
  br i1 %or.cond9279, label %.loopexit9466, label %605

605:                                              ; preds = %.loopexit9454
  %606 = add i32 %.18435, %.58565
  %607 = and i32 %606, %584
  %608 = add i32 %.18435, 1
  br label %.preheader9652

609:                                              ; preds = %.loopexit9469
  %610 = mul i32 %585, 24
  %611 = add i32 %610, %453
  %612 = zext i32 %611 to i64
  %613 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %612)
  %614 = add nuw nsw i64 %612, 8
  %615 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %614)
  %616 = icmp eq i32 %337, %615
  %617 = icmp ult i64 %613, 4294967296
  %or.cond9280 = select i1 %616, i1 %617, i1 false
  br i1 %or.cond9280, label %.loopexit9455, label %618

618:                                              ; preds = %609
  %.not9005 = icmp eq i32 %615, 0
  %or.cond9281 = select i1 %.not9005, i1 %617, i1 false
  br i1 %or.cond9281, label %.loopexit9466, label %.preheader9464

.preheader9464:                                   ; preds = %618, %629
  %.118659 = phi i32 [ %630, %629 ], [ 1, %618 ]
  %.68566 = phi i32 [ %620, %629 ], [ %585, %618 ]
  %619 = add i32 %.68566, %.118659
  %620 = and i32 %619, %584
  %621 = mul i32 %620, 24
  %622 = add i32 %621, %453
  %623 = zext i32 %622 to i64
  %624 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %623)
  %625 = add nuw nsw i64 %623, 8
  %626 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %625)
  %627 = icmp eq i32 %337, %626
  %628 = icmp ult i64 %624, 4294967296
  %or.cond9282 = select i1 %627, i1 %628, i1 false
  br i1 %or.cond9282, label %.loopexit9455, label %629

629:                                              ; preds = %.preheader9464
  %630 = add i32 %.118659, 1
  %.not9006 = icmp ne i32 %626, 0
  %631 = icmp ugt i64 %624, 4294967295
  %or.cond9283 = select i1 %.not9006, i1 true, i1 %631
  br i1 %or.cond9283, label %.preheader9464, label %.loopexit9466

.loopexit9455:                                    ; preds = %.preheader9464, %601, %609, %431
  %.178715 = phi i32 [ %434, %431 ], [ %337, %609 ], [ %337, %601 ], [ %337, %.preheader9464 ]
  %.108601 = phi i32 [ %.68597, %431 ], [ %611, %609 ], [ %587, %601 ], [ %622, %.preheader9464 ]
  %.78567 = phi i32 [ %.38563, %431 ], [ %451, %609 ], [ %451, %601 ], [ %451, %.preheader9464 ]
  %.68536 = phi i32 [ %.18531, %431 ], [ %.58535, %609 ], [ %.58535, %601 ], [ %.58535, %.preheader9464 ]
  %.38405 = phi i32 [ %.28404, %431 ], [ %453, %609 ], [ %453, %601 ], [ %453, %.preheader9464 ]
  %.48362 = phi i32 [ %.18359, %431 ], [ 0, %609 ], [ 0, %601 ], [ 0, %.preheader9464 ]
  %.not9011 = icmp eq i32 %.178715, 0
  %632 = zext i32 %.108601 to i64
  br i1 %.not9011, label %633, label %.loopexit9455._crit_edge

633:                                              ; preds = %.loopexit9455
  %634 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %632)
  %635 = icmp ult i64 %634, 4294967296
  br i1 %635, label %.loopexit9466, label %.loopexit9455._crit_edge

.loopexit9455._crit_edge:                         ; preds = %.loopexit9455, %633
  %636 = add i32 %.48362, -1
  br label %.loopexit9466

.loopexit9466:                                    ; preds = %.loopexit9454, %629, %618, %633, %.loopexit9455._crit_edge
  %.pre-phi9817 = phi i64 [ %612, %618 ], [ %632, %633 ], [ %632, %.loopexit9455._crit_edge ], [ %623, %629 ], [ %588, %.loopexit9454 ]
  %637 = phi i32 [ %319, %618 ], [ %330, %633 ], [ %330, %.loopexit9455._crit_edge ], [ %319, %629 ], [ %330, %.loopexit9454 ]
  %.88568 = phi i32 [ %451, %618 ], [ %.78567, %633 ], [ %.78567, %.loopexit9455._crit_edge ], [ %451, %629 ], [ %451, %.loopexit9454 ]
  %.78537 = phi i32 [ %.58535, %618 ], [ %.68536, %633 ], [ %.68536, %.loopexit9455._crit_edge ], [ %.58535, %629 ], [ %.58535, %.loopexit9454 ]
  %.48406 = phi i32 [ %453, %618 ], [ %.38405, %633 ], [ %.38405, %.loopexit9455._crit_edge ], [ %453, %629 ], [ %453, %.loopexit9454 ]
  %.58363 = phi i32 [ 0, %618 ], [ %.48362, %633 ], [ %636, %.loopexit9455._crit_edge ], [ 0, %629 ], [ 0, %.loopexit9454 ]
  %638 = add nuw nsw i64 %.pre-phi9817, 12
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %638, i64 noundef 0)
  %639 = add nuw nsw i64 %.pre-phi9817, 20
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %639, i32 noundef 0)
  %640 = add nuw nsw i64 %.pre-phi9817, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %640, i32 noundef %337)
  %641 = zext i32 %367 to i64
  %642 = shl nuw i64 %641, 32
  %643 = or disjoint i64 %642, %332
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9817, i64 noundef %643)
  %644 = add i32 %.78537, 1
  br label %.loopexit9460

.loopexit9460:                                    ; preds = %.preheader9477, %386, %395, %.loopexit9466
  %.pre-phi9818 = phi i64 [ %398, %395 ], [ %.pre-phi9817, %.loopexit9466 ], [ %373, %386 ], [ %411, %.preheader9477 ]
  %645 = phi i32 [ %319, %395 ], [ %637, %.loopexit9466 ], [ %330, %386 ], [ %319, %.preheader9477 ]
  %.98569 = phi i32 [ %.38563, %395 ], [ %.88568, %.loopexit9466 ], [ %.38563, %386 ], [ %.38563, %.preheader9477 ]
  %.88538 = phi i32 [ %.18531, %395 ], [ %644, %.loopexit9466 ], [ %.18531, %386 ], [ %.18531, %.preheader9477 ]
  %.58407 = phi i32 [ %.28404, %395 ], [ %.48406, %.loopexit9466 ], [ %.28404, %386 ], [ %.28404, %.preheader9477 ]
  %.68364 = phi i32 [ %.18359, %395 ], [ %.58363, %.loopexit9466 ], [ %.18359, %386 ], [ %.18359, %.preheader9477 ]
  %646 = add nuw nsw i64 %.pre-phi9818, 16
  %647 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %646)
  %648 = add nuw nsw i64 %.pre-phi9818, 20
  %649 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %648)
  %650 = icmp ult i32 %647, %649
  br i1 %650, label %651, label %654

651:                                              ; preds = %.loopexit9460
  %652 = zext i32 %647 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %652, i32 noundef %.18483)
  %653 = add i32 %647, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %646, i32 noundef %653)
  br label %679

654:                                              ; preds = %.loopexit9460
  %655 = add nuw nsw i64 %.pre-phi9818, 12
  %656 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %655)
  %657 = sub i32 %647, %656
  %658 = ashr i32 %657, 2
  %659 = add nsw i32 %658, 1
  %660 = icmp ugt i32 %659, 1073741823
  br i1 %660, label %.loopexit9345, label %661

661:                                              ; preds = %654
  %662 = sub i32 %649, %656
  %663 = ashr i32 %662, 1
  %664 = tail call i32 @llvm.umax.i32(i32 %663, i32 %659)
  %665 = icmp ugt i32 %662, 2147483643
  %666 = select i1 %665, i32 1073741823, i32 %664
  %.not9013 = icmp eq i32 %666, 0
  br i1 %.not9013, label %._crit_edge, label %667

667:                                              ; preds = %661
  %668 = icmp ugt i32 %666, 1073741823
  br i1 %668, label %.loopexit9345, label %669

669:                                              ; preds = %667
  %670 = shl nuw i32 %666, 2
  %671 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %670) #5
  br label %._crit_edge

._crit_edge:                                      ; preds = %661, %669
  %.pre-phi9860 = phi i32 [ %670, %669 ], [ 0, %661 ]
  %.0 = phi i32 [ %671, %669 ], [ 0, %661 ]
  %672 = and i32 %657, -4
  %673 = add i32 %.0, %672
  %674 = zext i32 %673 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %674, i32 noundef %.18483)
  %675 = tail call i32 @w2c_hermes_memmove(ptr noundef %0, i32 noundef %.0, i32 noundef %656, i32 noundef %657) #5
  %676 = add i32 %675, %.pre-phi9860
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %648, i32 noundef %676)
  %677 = add i32 %673, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %646, i32 noundef %677)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %655, i32 noundef %675)
  %.not9014 = icmp eq i32 %656, 0
  br i1 %.not9014, label %679, label %678

678:                                              ; preds = %._crit_edge
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %656)
  br label %679

679:                                              ; preds = %._crit_edge, %678, %651
  %.not9015 = icmp eq i32 %645, 0
  br i1 %.not9015, label %.loopexit9482, label %325

.loopexit9482:                                    ; preds = %679, %.loopexit9462, %.preheader9485
  %.108570 = phi i32 [ %.28562, %.preheader9485 ], [ %.38563, %.loopexit9462 ], [ %.98569, %679 ]
  %.98539 = phi i32 [ %.08530, %.preheader9485 ], [ %.18531, %.loopexit9462 ], [ %.88538, %679 ]
  %.68408 = phi i32 [ %.18403, %.preheader9485 ], [ %.28404, %.loopexit9462 ], [ %.58407, %679 ]
  %.78365 = phi i32 [ %.08358, %.preheader9485 ], [ %.18359, %.loopexit9462 ], [ %.68364, %679 ]
  %680 = add i32 %.18483, 52
  %.not9016 = icmp eq i32 %109, %680
  br i1 %.not9016, label %681, label %.preheader9485

681:                                              ; preds = %.loopexit9482
  %.not9017 = icmp eq i32 %.98539, 0
  br i1 %.not9017, label %779, label %682

682:                                              ; preds = %681
  %683 = icmp ugt i32 %.98539, 214748364
  br i1 %683, label %.loopexit9345, label %684

684:                                              ; preds = %682
  %685 = mul nuw i32 %.98539, 20
  %686 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %685) #5
  %687 = mul i32 %.108570, 24
  %688 = add i32 %.68408, %687
  %.not9018 = icmp eq i32 %.108570, 0
  br i1 %.not9018, label %.loopexit9450, label %.preheader9449

.preheader9449:                                   ; preds = %684, %695
  %.138604 = phi i32 [ %696, %695 ], [ %.68408, %684 ]
  %689 = zext i32 %.138604 to i64
  %690 = add nuw nsw i64 %689, 8
  %691 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %690)
  %.not9019 = icmp eq i32 %691, 0
  br i1 %.not9019, label %692, label %.loopexit9450

692:                                              ; preds = %.preheader9449
  %693 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %689)
  %694 = icmp ugt i64 %693, 4294967295
  br i1 %694, label %.loopexit9450, label %695

695:                                              ; preds = %692
  %696 = add i32 %.138604, 24
  %.not9020 = icmp eq i32 %696, %688
  br i1 %.not9020, label %.loopexit9443, label %.preheader9449

.loopexit9450:                                    ; preds = %692, %.preheader9449, %684
  %.148605 = phi i32 [ %.68408, %684 ], [ %.138604, %.preheader9449 ], [ %.138604, %692 ]
  %697 = icmp eq i32 %.148605, %688
  br i1 %697, label %.loopexit9443, label %698

698:                                              ; preds = %.loopexit9450
  %699 = add i32 %686, %685
  br label %.backedge9448

.backedge9448:                                    ; preds = %.backedge9448.backedge, %698
  %.18627 = phi i32 [ %686, %698 ], [ %.28422, %.backedge9448.backedge ]
  %.158606 = phi i32 [ %.148605, %698 ], [ %.158606.be, %.backedge9448.backedge ]
  %.108540 = phi i32 [ %686, %698 ], [ %.148662, %.backedge9448.backedge ]
  %.28484 = phi i32 [ %699, %698 ], [ %.38485, %.backedge9448.backedge ]
  %700 = zext i32 %.158606 to i64
  %701 = add nuw nsw i64 %700, 20
  %702 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %701)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %701, i32 noundef 0)
  %703 = add nuw nsw i64 %700, 16
  %704 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %703)
  %705 = add nuw nsw i64 %700, 12
  %706 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %705)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %705, i64 noundef 0)
  %707 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %700)
  %708 = icmp ult i32 %.18627, %.28484
  br i1 %708, label %709, label %714

709:                                              ; preds = %.backedge9448
  %710 = zext i32 %.18627 to i64
  %711 = add nuw nsw i64 %710, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %711, i32 noundef %706)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %710, i64 noundef %707)
  %712 = add nuw nsw i64 %710, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %712, i32 noundef %702)
  %713 = add nuw nsw i64 %710, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %713, i32 noundef %704)
  br label %761

714:                                              ; preds = %.backedge9448
  %715 = sub i32 %.18627, %.108540
  %716 = sdiv i32 %715, 20
  %717 = add nsw i32 %716, 1
  %718 = icmp ugt i32 %717, 214748364
  br i1 %718, label %.loopexit9345, label %719

719:                                              ; preds = %714
  %720 = sub i32 %.28484, %.108540
  %721 = sdiv i32 %720, 20
  %722 = shl nsw i32 %721, 1
  %723 = tail call i32 @llvm.umax.i32(i32 %722, i32 %717)
  %724 = icmp ugt i32 %721, 107374181
  %725 = select i1 %724, i32 214748364, i32 %723
  %726 = icmp ugt i32 %725, 214748364
  br i1 %726, label %.loopexit9345, label %727

727:                                              ; preds = %719
  %728 = mul nuw i32 %725, 20
  %729 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %728) #5
  %730 = mul nsw i32 %716, 20
  %731 = add i32 %729, %730
  %732 = zext i32 %731 to i64
  %733 = add nuw nsw i64 %732, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %733, i32 noundef %706)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %732, i64 noundef %707)
  %734 = add nuw nsw i64 %732, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %734, i32 noundef %702)
  %735 = add nuw nsw i64 %732, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %735, i32 noundef %704)
  %736 = add i32 %729, %728
  %.not9021 = icmp eq i32 %.18627, %.108540
  br i1 %.not9021, label %760, label %.preheader9445

.preheader9445:                                   ; preds = %727, %.preheader9445
  %.188716 = phi i32 [ %738, %.preheader9445 ], [ %.18627, %727 ]
  %.128660 = phi i32 [ %737, %.preheader9445 ], [ %731, %727 ]
  %737 = add i32 %.128660, -20
  %738 = add i32 %.188716, -20
  %739 = zext i32 %738 to i64
  %740 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %739)
  %741 = zext i32 %737 to i64
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %741, i64 noundef %740)
  %742 = add nuw nsw i64 %739, 8
  %743 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %742)
  %744 = add nuw nsw i64 %741, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %744, i32 noundef %743)
  %745 = add nuw nsw i64 %739, 12
  %746 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %745)
  %747 = add nuw nsw i64 %741, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %747, i32 noundef %746)
  %748 = add nuw nsw i64 %739, 16
  %749 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %748)
  %750 = add nuw nsw i64 %741, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %750, i32 noundef %749)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %748, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %742, i64 noundef 0)
  %.not9022 = icmp eq i32 %738, %.108540
  br i1 %.not9022, label %.preheader9444, label %.preheader9445

.preheader9444:                                   ; preds = %.preheader9445, %758
  %.28628 = phi i32 [ %751, %758 ], [ %.18627, %.preheader9445 ]
  %751 = add i32 %.28628, -20
  %752 = zext i32 %751 to i64
  %753 = add nuw nsw i64 %752, 8
  %754 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %753)
  %.not9023 = icmp eq i32 %754, 0
  br i1 %.not9023, label %758, label %755

755:                                              ; preds = %.preheader9444
  %756 = add i32 %.28628, -8
  %757 = zext i32 %756 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %757, i32 noundef %754)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %754)
  br label %758

758:                                              ; preds = %755, %.preheader9444
  %.not9024 = icmp eq i32 %751, %.108540
  br i1 %.not9024, label %759, label %.preheader9444

759:                                              ; preds = %758
  %.not9025 = icmp eq i32 %.108540, 0
  br i1 %.not9025, label %761, label %760

760:                                              ; preds = %759, %727
  %.138661 = phi i32 [ %737, %759 ], [ %731, %727 ]
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.108540)
  br label %761

761:                                              ; preds = %759, %760, %709
  %.148662 = phi i32 [ %.108540, %709 ], [ %737, %759 ], [ %.138661, %760 ]
  %.38485 = phi i32 [ %.28484, %709 ], [ %736, %759 ], [ %736, %760 ]
  %.28422.in = phi i32 [ %.18627, %709 ], [ %731, %759 ], [ %731, %760 ]
  %.28422 = add i32 %.28422.in, 20
  %762 = add i32 %.158606, 24
  %763 = icmp eq i32 %762, %688
  br i1 %763, label %.loopexit9443, label %764

764:                                              ; preds = %761
  %765 = add nuw nsw i64 %700, 32
  %766 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %765)
  %.not9026 = icmp eq i32 %766, 0
  br i1 %.not9026, label %.preheader9441, label %.backedge9448.backedge

.backedge9448.backedge:                           ; preds = %.preheader9441, %773, %764
  %.158606.be = phi i32 [ %762, %764 ], [ %.198717, %.preheader9441 ], [ %771, %773 ]
  br label %.backedge9448

.preheader9441:                                   ; preds = %764, %773
  %.198717 = phi i32 [ %771, %773 ], [ %762, %764 ]
  %767 = zext i32 %.198717 to i64
  %768 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %767)
  %769 = icmp ugt i64 %768, 4294967295
  br i1 %769, label %.backedge9448.backedge, label %770

770:                                              ; preds = %.preheader9441
  %771 = add i32 %.198717, 24
  %772 = icmp eq i32 %771, %688
  br i1 %772, label %.loopexit9443, label %773

773:                                              ; preds = %770
  %774 = add nuw nsw i64 %767, 32
  %775 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %774)
  %.not9027 = icmp eq i32 %775, 0
  br i1 %.not9027, label %.preheader9441, label %.backedge9448.backedge

.loopexit9443:                                    ; preds = %695, %761, %770, %.loopexit9450
  %.118541 = phi i32 [ %686, %.loopexit9450 ], [ %.148662, %770 ], [ %.148662, %761 ], [ %686, %695 ]
  %.38423 = phi i32 [ %686, %.loopexit9450 ], [ %.28422, %770 ], [ %.28422, %761 ], [ %686, %695 ]
  %.38423.fr = freeze i32 %.38423
  %776 = sub i32 %.38423.fr, %.118541
  %777 = srem i32 %776, 20
  %778 = sub i32 %.38423.fr, %777
  tail call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AradixQuicksort0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x200x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %.118541, i32 noundef %778, i32 noundef 0)
  br label %779

779:                                              ; preds = %681, %.loopexit9486, %.loopexit9443
  %.118571 = phi i32 [ %.108570, %.loopexit9443 ], [ %.18561, %.loopexit9486 ], [ %.108570, %681 ]
  %.128542 = phi i32 [ %.118541, %.loopexit9443 ], [ 0, %.loopexit9486 ], [ 0, %681 ]
  %.48424 = phi i32 [ %.38423.fr, %.loopexit9443 ], [ 0, %.loopexit9486 ], [ 0, %681 ]
  %.78409 = phi i32 [ %.68408, %.loopexit9443 ], [ %.08402, %.loopexit9486 ], [ %.68408, %681 ]
  %.not9029 = icmp eq i32 %.118571, 0
  br i1 %.not9029, label %.loopexit9440, label %780

780:                                              ; preds = %779
  %781 = mul i32 %.118571, 24
  %782 = add i32 %.78409, %781
  br label %783

783:                                              ; preds = %795, %780
  %.208718 = phi i32 [ %.78409, %780 ], [ %796, %795 ]
  %784 = zext i32 %.208718 to i64
  %785 = add nuw nsw i64 %784, 8
  %786 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %785)
  %.not9030 = icmp eq i32 %786, 0
  br i1 %.not9030, label %787, label %790

787:                                              ; preds = %783
  %788 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %784)
  %789 = icmp ult i64 %788, 4294967296
  br i1 %789, label %795, label %790

790:                                              ; preds = %787, %783
  %791 = add nuw nsw i64 %784, 12
  %792 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %791)
  %.not9031 = icmp eq i32 %792, 0
  br i1 %.not9031, label %795, label %793

793:                                              ; preds = %790
  %794 = add nuw nsw i64 %784, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %794, i32 noundef %792)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %792)
  br label %795

795:                                              ; preds = %790, %787, %793
  %796 = add i32 %.208718, 24
  %.not9032 = icmp eq i32 %796, %782
  br i1 %.not9032, label %.loopexit9440, label %783

.loopexit9440:                                    ; preds = %795, %779
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.78409)
  br i1 %316, label %1277, label %797

797:                                              ; preds = %.loopexit9440
  %798 = sub i32 %.48424, %.128542
  %799 = srem i32 %798, 20
  %800 = sub i32 %.48424, %799
  br label %801

801:                                              ; preds = %.loopexit9438, %797
  %.158663 = phi i32 [ %14, %797 ], [ %1015, %.loopexit9438 ]
  %.08464 = phi i32 [ 0, %797 ], [ %.68470, %.loopexit9438 ]
  %.58452 = phi i32 [ 0, %797 ], [ %.98456, %.loopexit9438 ]
  %.88410 = phi i32 [ 0, %797 ], [ %.128414, %.loopexit9438 ]
  %802 = zext i32 %.158663 to i64
  %803 = add nuw nsw i64 %802, 8
  %804 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %803)
  %.not9034 = icmp eq i32 %804, 0
  br i1 %.not9034, label %.loopexit9438, label %805

805:                                              ; preds = %801
  %806 = add nuw nsw i64 %802, 4
  %807 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %806)
  %808 = add nuw nsw i64 %802, 16
  %809 = add nuw nsw i64 %802, 20
  %810 = zext i32 %804 to i64
  br label %811

811:                                              ; preds = %.loopexit9435, %805
  %indvars.iv = phi i64 [ %indvars.iv.next, %.loopexit9435 ], [ 0, %805 ]
  %.128572 = phi i32 [ %.158575, %.loopexit9435 ], [ %800, %805 ]
  %.18465 = phi i32 [ %.58469, %.loopexit9435 ], [ %.08464, %805 ]
  %.68453 = phi i32 [ %.88455, %.loopexit9435 ], [ %.58452, %805 ]
  %.98411 = phi i32 [ %.118413, %.loopexit9435 ], [ %.88410, %805 ]
  %.28387 = phi i32 [ %.58390, %.loopexit9435 ], [ %.128542, %805 ]
  %812 = trunc nuw i64 %indvars.iv to i32
  %813 = add i32 %807, %812
  %814 = zext i32 %813 to i64
  %815 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %814)
  %.not9035 = icmp eq i32 %.128572, %.28387
  br i1 %.not9035, label %.loopexit9437, label %816

816:                                              ; preds = %811
  %817 = sub i32 %.128572, %.28387
  %818 = sdiv i32 %817, 20
  br label %819

819:                                              ; preds = %837, %816
  %.218719 = phi i32 [ %818, %816 ], [ %.1, %837 ]
  %.38388 = phi i32 [ %.28387, %816 ], [ %.48389, %837 ]
  %820 = lshr i32 %.218719, 1
  %821 = mul i32 %820, 20
  %822 = add i32 %821, %.38388
  %823 = zext i32 %822 to i64
  %824 = add nuw nsw i64 %823, 4
  %825 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %824)
  %826 = zext i32 %825 to i64
  %.not9036 = icmp ult i64 %indvars.iv, %826
  br i1 %.not9036, label %827, label %833

827:                                              ; preds = %819
  %828 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %823)
  %829 = add i32 %828, %812
  %830 = zext i32 %829 to i64
  %831 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %830)
  %832 = icmp ult i32 %831, %815
  br i1 %832, label %833, label %837

833:                                              ; preds = %827, %819
  %834 = add i32 %822, 20
  %835 = xor i32 %820, -1
  %836 = add i32 %.218719, %835
  br label %837

837:                                              ; preds = %827, %833
  %.48389 = phi i32 [ %834, %833 ], [ %.38388, %827 ]
  %.1 = phi i32 [ %836, %833 ], [ %820, %827 ]
  %.not9037 = icmp eq i32 %.1, 0
  br i1 %.not9037, label %.loopexit9437, label %819

.loopexit9437:                                    ; preds = %837, %811
  %.58390 = phi i32 [ %.128572, %811 ], [ %.48389, %837 ]
  %.not9038 = icmp eq i32 %.128572, %.58390
  br i1 %.not9038, label %.loopexit9436, label %838

838:                                              ; preds = %.loopexit9437
  %839 = sub i32 %.128572, %.58390
  %840 = sdiv i32 %839, 20
  br label %841

841:                                              ; preds = %858, %838
  %.228720 = phi i32 [ %840, %838 ], [ %.2, %858 ]
  %.138573 = phi i32 [ %.58390, %838 ], [ %.148574, %858 ]
  %842 = lshr i32 %.228720, 1
  %843 = mul i32 %842, 20
  %844 = add i32 %843, %.138573
  %845 = zext i32 %844 to i64
  %846 = add nuw nsw i64 %845, 4
  %847 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %846)
  %848 = zext i32 %847 to i64
  %.not9039 = icmp ult i64 %indvars.iv, %848
  br i1 %.not9039, label %849, label %858

849:                                              ; preds = %841
  %850 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %845)
  %851 = add i32 %850, %812
  %852 = zext i32 %851 to i64
  %853 = tail call i32 @i32_load8_u(ptr noundef nonnull %9, i64 noundef %852)
  %.not9040 = icmp eq i32 %815, %853
  br i1 %.not9040, label %854, label %858

854:                                              ; preds = %849
  %855 = add i32 %844, 20
  %856 = xor i32 %842, -1
  %857 = add i32 %.228720, %856
  br label %858

858:                                              ; preds = %841, %849, %854
  %.148574 = phi i32 [ %.138573, %849 ], [ %855, %854 ], [ %.138573, %841 ]
  %.2 = phi i32 [ %842, %849 ], [ %857, %854 ], [ %842, %841 ]
  %.not9041 = icmp eq i32 %.2, 0
  br i1 %.not9041, label %.loopexit9436, label %841

.loopexit9436:                                    ; preds = %858, %.loopexit9437
  %.158575 = phi i32 [ %.128572, %.loopexit9437 ], [ %.148574, %858 ]
  %859 = icmp eq i32 %.158575, %.58390
  br i1 %859, label %.loopexit9438, label %860

860:                                              ; preds = %.loopexit9436
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %.not9042 = icmp ult i64 %indvars.iv.next, %810
  br i1 %.not9042, label %889, label %861

861:                                              ; preds = %860
  %.not9057 = icmp ult i32 %.58390, %.158575
  br i1 %.not9057, label %.preheader9434, label %.loopexit9435

.preheader9434:                                   ; preds = %861, %.loopexit9428
  %.58524 = phi i32 [ %887, %.loopexit9428 ], [ %.58390, %861 ]
  %862 = zext i32 %.58524 to i64
  %863 = add nuw nsw i64 %862, 8
  %864 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %863)
  %865 = add nuw nsw i64 %862, 12
  %866 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %865)
  %.not9058 = icmp eq i32 %864, %866
  br i1 %.not9058, label %.loopexit9428, label %.preheader9427

.preheader9427:                                   ; preds = %.preheader9434
  %867 = add nuw nsw i64 %862, 4
  br label %868

868:                                              ; preds = %.preheader9427, %885
  %.238721 = phi i32 [ %886, %885 ], [ %864, %.preheader9427 ]
  %869 = zext i32 %.238721 to i64
  %870 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %869)
  %871 = icmp eq i32 %870, %.158663
  br i1 %871, label %885, label %872

872:                                              ; preds = %868
  %873 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %808)
  %.not9059 = icmp eq i32 %873, 0
  br i1 %.not9059, label %._crit_edge9823, label %874

._crit_edge9823:                                  ; preds = %872
  %.pre9857 = zext i32 %870 to i64
  br label %880

874:                                              ; preds = %872
  %875 = zext i32 %873 to i64
  %876 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %875)
  %877 = zext i32 %870 to i64
  %878 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %877)
  %879 = icmp ult i32 %876, %878
  br i1 %879, label %885, label %880

880:                                              ; preds = %._crit_edge9823, %874
  %.pre-phi9858 = phi i64 [ %.pre9857, %._crit_edge9823 ], [ %877, %874 ]
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %808, i32 noundef %870)
  %881 = add nuw nsw i64 %.pre-phi9858, 8
  %882 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %881)
  %883 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %867)
  %884 = sub i32 %882, %883
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %809, i32 noundef %884)
  br label %885

885:                                              ; preds = %874, %868, %880
  %886 = add i32 %.238721, 4
  %.not9060 = icmp eq i32 %886, %866
  br i1 %.not9060, label %.loopexit9428, label %868

.loopexit9428:                                    ; preds = %885, %.preheader9434
  %887 = add i32 %.58524, 20
  %888 = icmp ult i32 %887, %.158575
  br i1 %888, label %.preheader9434, label %.loopexit9435

889:                                              ; preds = %860
  %890 = zext i32 %.58390 to i64
  %891 = add nuw nsw i64 %890, 4
  %892 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %891)
  %893 = zext i32 %892 to i64
  %.not9043 = icmp eq i64 %indvars.iv.next, %893
  br i1 %.not9043, label %894, label %.loopexit9435

894:                                              ; preds = %889
  %895 = sub i32 %.18465, %.68453
  %896 = sdiv i32 %895, 12
  %897 = zext i32 %896 to i64
  %898 = icmp ult i64 %indvars.iv.next, %897
  br i1 %898, label %.loopexit9433, label %899

899:                                              ; preds = %894
  %900 = add i32 %812, 2
  %901 = icmp ult i32 %896, %900
  br i1 %901, label %902, label %956

902:                                              ; preds = %899
  %903 = sub i32 %900, %896
  %904 = sub i32 %.98411, %.18465
  %905 = sdiv i32 %904, 12
  %.not9047 = icmp ugt i32 %903, %905
  br i1 %.not9047, label %914, label %906

906:                                              ; preds = %902
  %907 = mul i32 %903, 12
  %908 = add i32 %907, -12
  %909 = urem i32 %908, 12
  %910 = sub i32 %908, %909
  %911 = add i32 %910, 12
  %912 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %.18465, i32 noundef 0, i32 noundef %911)
  %913 = add i32 %912, %911
  br label %.loopexit9433

914:                                              ; preds = %902
  %915 = icmp ugt i32 %900, 357913941
  br i1 %915, label %.loopexit9345, label %916

916:                                              ; preds = %914
  %917 = sub i32 %.98411, %.68453
  %918 = sdiv i32 %917, 12
  %919 = shl nsw i32 %918, 1
  %920 = tail call i32 @llvm.umax.i32(i32 %919, i32 %900)
  %921 = icmp ugt i32 %918, 178956969
  %922 = select i1 %921, i32 357913941, i32 %920
  %923 = icmp ugt i32 %922, 357913941
  br i1 %923, label %.loopexit9345, label %924

924:                                              ; preds = %916
  %925 = mul nuw i32 %922, 12
  %926 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %925) #5
  %927 = mul i32 %903, 12
  %928 = add i32 %927, -12
  %929 = mul nsw i32 %896, 12
  %930 = add i32 %926, %929
  %931 = urem i32 %928, 12
  %932 = sub i32 %928, %931
  %933 = add i32 %932, 12
  %934 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %930, i32 noundef 0, i32 noundef %933)
  %.not9048 = icmp eq i32 %.68453, %.18465
  br i1 %.not9048, label %.loopexit9430, label %.preheader9431

.preheader9431:                                   ; preds = %924, %.preheader9431
  %.248722 = phi i32 [ %936, %.preheader9431 ], [ %.18465, %924 ]
  %.38629 = phi i32 [ %935, %.preheader9431 ], [ %934, %924 ]
  %935 = add i32 %.38629, -12
  %936 = add i32 %.248722, -12
  %937 = zext i32 %936 to i64
  %938 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %937)
  %939 = zext i32 %935 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %939, i32 noundef %938)
  %940 = add nuw nsw i64 %937, 4
  %941 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %940)
  %942 = add nuw nsw i64 %939, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %942, i32 noundef %941)
  %943 = add nuw nsw i64 %937, 8
  %944 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %943)
  %945 = add nuw nsw i64 %939, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %945, i32 noundef %944)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %943, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %937, i64 noundef 0)
  %.not9049 = icmp eq i32 %936, %.68453
  br i1 %.not9049, label %.preheader9429, label %.preheader9431

.preheader9429:                                   ; preds = %.preheader9431, %952
  %.28466 = phi i32 [ %946, %952 ], [ %.18465, %.preheader9431 ]
  %946 = add i32 %.28466, -12
  %947 = zext i32 %946 to i64
  %948 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %947)
  %.not9050 = icmp eq i32 %948, 0
  br i1 %.not9050, label %952, label %949

949:                                              ; preds = %.preheader9429
  %950 = add i32 %.28466, -8
  %951 = zext i32 %950 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %951, i32 noundef %948)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %948)
  br label %952

952:                                              ; preds = %949, %.preheader9429
  %.not9051 = icmp eq i32 %946, %.68453
  br i1 %.not9051, label %.loopexit9430, label %.preheader9429

.loopexit9430:                                    ; preds = %952, %924
  %.48630 = phi i32 [ %934, %924 ], [ %935, %952 ]
  %953 = add i32 %934, %933
  %954 = add i32 %926, %925
  %.not9052 = icmp eq i32 %.68453, 0
  br i1 %.not9052, label %.loopexit9433, label %955

955:                                              ; preds = %.loopexit9430
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.68453)
  br label %.loopexit9433

956:                                              ; preds = %899
  %.not9044 = icmp ult i32 %900, %896
  br i1 %.not9044, label %957, label %.loopexit9433

957:                                              ; preds = %956
  %958 = mul i32 %900, 12
  %959 = add i32 %.68453, %958
  %960 = icmp eq i32 %.18465, %959
  br i1 %960, label %.loopexit9433, label %.preheader9432

.preheader9432:                                   ; preds = %957, %967
  %.38467 = phi i32 [ %961, %967 ], [ %.18465, %957 ]
  %961 = add i32 %.38467, -12
  %962 = zext i32 %961 to i64
  %963 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %962)
  %.not9045 = icmp eq i32 %963, 0
  br i1 %.not9045, label %967, label %964

964:                                              ; preds = %.preheader9432
  %965 = add i32 %.38467, -8
  %966 = zext i32 %965 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %966, i32 noundef %963)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %963)
  br label %967

967:                                              ; preds = %964, %.preheader9432
  %.not9046 = icmp eq i32 %961, %959
  br i1 %.not9046, label %.loopexit9433, label %.preheader9432

.loopexit9433:                                    ; preds = %967, %.loopexit9430, %957, %956, %894, %955, %906
  %.48468 = phi i32 [ %.18465, %894 ], [ %913, %906 ], [ %953, %955 ], [ %.18465, %956 ], [ %.18465, %957 ], [ %953, %.loopexit9430 ], [ %959, %967 ]
  %.78454 = phi i32 [ %.68453, %894 ], [ %.68453, %906 ], [ %.48630, %955 ], [ %.68453, %956 ], [ %.68453, %957 ], [ %.48630, %.loopexit9430 ], [ %.68453, %967 ]
  %.108412 = phi i32 [ %.98411, %894 ], [ %.98411, %906 ], [ %954, %955 ], [ %.98411, %956 ], [ %.98411, %957 ], [ %954, %.loopexit9430 ], [ %.98411, %967 ]
  %968 = add nuw nsw i64 %890, 12
  %969 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %968)
  %970 = add nuw nsw i64 %890, 8
  %971 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %970)
  %972 = sub i32 %969, %971
  %973 = ashr i32 %972, 2
  %974 = trunc nuw i64 %indvars.iv.next to i32
  %975 = mul i32 %974, 12
  %976 = add i32 %.78454, %975
  %977 = zext i32 %976 to i64
  %978 = add nuw nsw i64 %977, 4
  %979 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %978)
  %980 = add nuw nsw i64 %977, 8
  %981 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %980)
  %.not9053 = icmp eq i32 %979, %981
  br i1 %.not9053, label %987, label %982

982:                                              ; preds = %.loopexit9433
  %983 = zext i32 %979 to i64
  %984 = add nuw nsw i64 %983, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %984, i32 noundef %.158663)
  %985 = add nuw nsw i64 %983, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %985, i32 noundef %973)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %983, i32 noundef %971)
  %986 = add i32 %979, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %978, i32 noundef %986)
  br label %.loopexit9435

987:                                              ; preds = %.loopexit9433
  %988 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %977)
  %989 = sub i32 %979, %988
  %.fr9055 = freeze i32 %989
  %990 = sdiv i32 %.fr9055, 12
  %991 = srem i32 %.fr9055, 12
  %992 = add nsw i32 %990, 1
  %993 = icmp ult i32 %992, 357913942
  br i1 %993, label %994, label %.loopexit9345

994:                                              ; preds = %987
  %995 = shl nuw nsw i32 %990, 1
  %996 = tail call i32 @llvm.umax.i32(i32 %995, i32 %992)
  %997 = icmp ugt i32 %990, 178956969
  %998 = select i1 %997, i32 357913941, i32 %996
  %.not9054 = icmp eq i32 %998, 0
  br i1 %.not9054, label %._crit_edge9824, label %999

999:                                              ; preds = %994
  %1000 = icmp ugt i32 %998, 357913941
  br i1 %1000, label %.loopexit9345, label %1001

1001:                                             ; preds = %999
  %1002 = mul nuw i32 %998, 12
  %1003 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1002) #5
  br label %._crit_edge9824

._crit_edge9824:                                  ; preds = %994, %1001
  %.pre-phi9856 = phi i32 [ %1002, %1001 ], [ 0, %994 ]
  %.3 = phi i32 [ %1003, %1001 ], [ 0, %994 ]
  %1004 = mul nsw i32 %990, 12
  %1005 = add i32 %.3, %1004
  %1006 = zext i32 %1005 to i64
  %1007 = add nuw nsw i64 %1006, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1007, i32 noundef %.158663)
  %1008 = add nuw nsw i64 %1006, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1008, i32 noundef %973)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1006, i32 noundef %971)
  %1009 = sub i32 %991, %.fr9055
  %1010 = add i32 %1009, %1005
  %1011 = tail call i32 @w2c_hermes_memmove(ptr noundef %0, i32 noundef %1010, i32 noundef %988, i32 noundef %.fr9055) #5
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %977, i32 noundef %1011)
  %1012 = add i32 %1005, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %978, i32 noundef %1012)
  %1013 = add i32 %.3, %.pre-phi9856
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %980, i32 noundef %1013)
  %.not9056 = icmp eq i32 %988, 0
  br i1 %.not9056, label %.loopexit9435, label %1014

1014:                                             ; preds = %._crit_edge9824
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %988)
  br label %.loopexit9435

.loopexit9435:                                    ; preds = %.loopexit9428, %._crit_edge9824, %889, %861, %1014, %982
  %.58469 = phi i32 [ %.18465, %861 ], [ %.18465, %889 ], [ %.48468, %982 ], [ %.48468, %._crit_edge9824 ], [ %.48468, %1014 ], [ %.18465, %.loopexit9428 ]
  %.88455 = phi i32 [ %.68453, %861 ], [ %.68453, %889 ], [ %.78454, %982 ], [ %.78454, %._crit_edge9824 ], [ %.78454, %1014 ], [ %.68453, %.loopexit9428 ]
  %.118413 = phi i32 [ %.98411, %861 ], [ %.98411, %889 ], [ %.108412, %982 ], [ %.108412, %._crit_edge9824 ], [ %.108412, %1014 ], [ %.98411, %.loopexit9428 ]
  %.not9061 = icmp eq i64 %indvars.iv.next, %810
  br i1 %.not9061, label %.loopexit9438, label %811

.loopexit9438:                                    ; preds = %.loopexit9435, %.loopexit9436, %801
  %.68470 = phi i32 [ %.08464, %801 ], [ %.58469, %.loopexit9435 ], [ %.18465, %.loopexit9436 ]
  %.98456 = phi i32 [ %.58452, %801 ], [ %.88455, %.loopexit9435 ], [ %.68453, %.loopexit9436 ]
  %.128414 = phi i32 [ %.88410, %801 ], [ %.118413, %.loopexit9435 ], [ %.98411, %.loopexit9436 ]
  %1015 = add i32 %.158663, 52
  %.not9062 = icmp eq i32 %1015, %109
  br i1 %.not9062, label %1016, label %801

1016:                                             ; preds = %.loopexit9438
  %.not9063 = icmp eq i32 %.98456, %.68470
  br i1 %.not9063, label %.loopexit9426, label %1017

1017:                                             ; preds = %1016
  %1018 = sub i32 %.68470, %.98456
  %1019 = sdiv i32 %1018, 12
  br label %1020

1020:                                             ; preds = %.loopexit9425, %1017
  %.88366 = phi i32 [ %1019, %1017 ], [ %1021, %.loopexit9425 ]
  %1021 = add i32 %.88366, -1
  %1022 = mul i32 %1021, 12
  %1023 = add i32 %1022, %.98456
  %1024 = zext i32 %1023 to i64
  %1025 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1024)
  %1026 = add nuw nsw i64 %1024, 4
  %1027 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1026)
  %.not9064 = icmp eq i32 %1025, %1027
  br i1 %.not9064, label %.loopexit9425, label %.preheader9424

.preheader9424:                                   ; preds = %1020, %.loopexit9420
  %.168607 = phi i32 [ %1262, %.loopexit9420 ], [ %1025, %1020 ]
  %1028 = zext i32 %.168607 to i64
  %1029 = add nuw nsw i64 %1028, 8
  %1030 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1029)
  %1031 = zext i32 %1030 to i64
  %1032 = add nuw nsw i64 %1031, 28
  %1033 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1032)
  %.not9065 = icmp eq i32 %1033, 0
  br i1 %.not9065, label %1034, label %.loopexit9420

1034:                                             ; preds = %.preheader9424
  %1035 = add nuw nsw i64 %1031, 16
  %1036 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1035)
  %.not9066 = icmp eq i32 %1036, 0
  br i1 %.not9066, label %1037, label %.loopexit9420

1037:                                             ; preds = %1034
  %1038 = add nuw nsw i64 %1028, 4
  %1039 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1038)
  %.not9067 = icmp eq i32 %1039, 0
  br i1 %.not9067, label %.loopexit9420, label %1040

1040:                                             ; preds = %1037
  %1041 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1028)
  %1042 = shl i32 %1039, 2
  %1043 = add i32 %1041, %1042
  %1044 = lshr i32 %1030, 4
  %1045 = lshr i32 %1030, 9
  %1046 = xor i32 %1044, %1045
  br label %1047

1047:                                             ; preds = %.loopexit9409, %1040
  %.258723 = phi i32 [ %1041, %1040 ], [ %1080, %.loopexit9409 ]
  %1048 = zext i32 %.258723 to i64
  %1049 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1048)
  %1050 = icmp eq i32 %1049, %1030
  br i1 %1050, label %.loopexit9409, label %1051

1051:                                             ; preds = %1047
  %1052 = zext i32 %1049 to i64
  %1053 = add nuw nsw i64 %1052, 16
  %1054 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1053)
  %.not9068 = icmp eq i32 %1054, 0
  br i1 %.not9068, label %1055, label %.loopexit9409

1055:                                             ; preds = %1051
  %1056 = add nuw nsw i64 %1052, 24
  %1057 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1056)
  %.not9069 = icmp eq i32 %1057, 0
  br i1 %.not9069, label %1058, label %.loopexit9409

1058:                                             ; preds = %1055
  %1059 = add nuw nsw i64 %1052, 48
  %1060 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1059)
  %.not9070 = icmp eq i32 %1060, 0
  br i1 %.not9070, label %.loopexit9408, label %1061

1061:                                             ; preds = %1058
  %1062 = add nuw nsw i64 %1052, 36
  %1063 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1062)
  %1064 = add i32 %1060, -1
  %1065 = and i32 %1064, %1046
  %1066 = shl nuw nsw i32 %1065, 2
  %1067 = add i32 %1063, %1066
  %1068 = zext i32 %1067 to i64
  %1069 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1068)
  %1070 = icmp eq i32 %1069, %1030
  br i1 %1070, label %.loopexit9409, label %.preheader9407

.preheader9407:                                   ; preds = %1061, %1072
  %.58487 = phi i32 [ %1075, %1072 ], [ %1065, %1061 ]
  %.28436 = phi i32 [ %1074, %1072 ], [ 1, %1061 ]
  %.68391 = phi i32 [ %1079, %1072 ], [ %1069, %1061 ]
  %1071 = icmp eq i32 %.68391, -4
  br i1 %1071, label %.loopexit9408, label %1072

1072:                                             ; preds = %.preheader9407
  %1073 = add i32 %.28436, %.58487
  %1074 = add i32 %.28436, 1
  %1075 = and i32 %1073, %1064
  %1076 = shl i32 %1075, 2
  %1077 = add i32 %1076, %1063
  %1078 = zext i32 %1077 to i64
  %1079 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1078)
  %.not9071 = icmp eq i32 %1079, %1030
  br i1 %.not9071, label %.loopexit9409, label %.preheader9407

.loopexit9409:                                    ; preds = %1072, %1061, %1055, %1051, %1047
  %1080 = add i32 %.258723, 4
  %.not9097 = icmp eq i32 %1080, %1043
  br i1 %.not9097, label %.loopexit9420, label %1047

.loopexit9408:                                    ; preds = %1058, %.preheader9407
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1056, i32 noundef %1030)
  %1081 = add nuw nsw i64 %1031, 32
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1081, i32 noundef %1021)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1032, i32 noundef %1049)
  br label %1082

1082:                                             ; preds = %1082, %.loopexit9408
  %.58631 = phi i32 [ %1030, %.loopexit9408 ], [ %1085, %1082 ]
  %1083 = zext i32 %.58631 to i64
  %1084 = add nuw nsw i64 %1083, 24
  %1085 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1084)
  %.not9072 = icmp eq i32 %1085, 0
  br i1 %.not9072, label %.preheader9421, label %1082

.preheader9421:                                   ; preds = %1082, %.preheader9421
  %.168664 = phi i32 [ %1088, %.preheader9421 ], [ %1049, %1082 ]
  %1086 = zext i32 %.168664 to i64
  %1087 = add nuw nsw i64 %1086, 28
  %1088 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1087)
  %.not9073 = icmp eq i32 %1088, 0
  br i1 %.not9073, label %1089, label %.preheader9421

1089:                                             ; preds = %.preheader9421
  %1090 = add nuw nsw i64 %1083, 36
  %1091 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1090)
  %1092 = add nuw nsw i64 %1083, 48
  %1093 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1092)
  %.not9074 = icmp eq i32 %1093, 0
  br i1 %.not9074, label %1119, label %1094

1094:                                             ; preds = %1089
  %1095 = add i32 %1093, -1
  %1096 = lshr i32 %.168664, 4
  %1097 = lshr i32 %.168664, 9
  %1098 = xor i32 %1096, %1097
  %1099 = and i32 %1095, %1098
  %1100 = shl nuw nsw i32 %1099, 2
  %1101 = add i32 %1100, %1091
  %1102 = zext i32 %1101 to i64
  %1103 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1102)
  %1104 = icmp eq i32 %1103, %.168664
  br i1 %1104, label %.loopexit9420, label %.preheader9419

.preheader9419:                                   ; preds = %1094, %1108
  %.168576 = phi i32 [ %1116, %1108 ], [ %1101, %1094 ]
  %.38437 = phi i32 [ %1111, %1108 ], [ 0, %1094 ]
  %.138415 = phi i32 [ %1113, %1108 ], [ 1, %1094 ]
  %.78392 = phi i32 [ %1118, %1108 ], [ %1103, %1094 ]
  %.58373 = phi i32 [ %1114, %1108 ], [ %1099, %1094 ]
  %1105 = icmp eq i32 %.78392, -4
  %.not9077 = icmp eq i32 %.38437, 0
  br i1 %1105, label %1106, label %1108

1106:                                             ; preds = %.preheader9419
  %1107 = select i1 %.not9077, i32 %.168576, i32 %.38437
  br label %1119

1108:                                             ; preds = %.preheader9419
  %1109 = icmp eq i32 %.78392, -8
  %1110 = select i1 %1109, i1 %.not9077, i1 false
  %1111 = select i1 %1110, i32 %.168576, i32 %.38437
  %1112 = add i32 %.58373, %.138415
  %1113 = add i32 %.138415, 1
  %1114 = and i32 %1112, %1095
  %1115 = shl i32 %1114, 2
  %1116 = add i32 %1115, %1091
  %1117 = zext i32 %1116 to i64
  %1118 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1117)
  %.not9076 = icmp eq i32 %1118, %.168664
  br i1 %.not9076, label %.loopexit9420, label %.preheader9419

1119:                                             ; preds = %1089, %1106
  %.178577 = phi i32 [ %1107, %1106 ], [ 0, %1089 ]
  %1120 = add nuw nsw i64 %1083, 40
  %1121 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1120)
  %1122 = shl i32 %1121, 2
  %1123 = add i32 %1122, 4
  %1124 = mul i32 %1093, 3
  %.not9078 = icmp ult i32 %1123, %1124
  br i1 %.not9078, label %1127, label %1125

1125:                                             ; preds = %1119
  %1126 = shl i32 %1093, 1
  br label %1135

1127:                                             ; preds = %1119
  %1128 = xor i32 %1121, -1
  %1129 = add i32 %1093, %1128
  %1130 = add nuw nsw i64 %1083, 44
  %1131 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1130)
  %1132 = sub i32 %1129, %1131
  %1133 = lshr i32 %1093, 3
  %1134 = icmp ugt i32 %1132, %1133
  br i1 %1134, label %1251, label %1135

1135:                                             ; preds = %1127, %1125
  %.68488 = phi i32 [ %1126, %1125 ], [ %1093, %1127 ]
  %1136 = add i32 %.68488, -1
  %1137 = zext i32 %1136 to i64
  %1138 = lshr i64 %1137, 1
  %1139 = or i64 %1138, %1137
  %1140 = lshr i64 %1139, 2
  %1141 = or i64 %1140, %1139
  %1142 = lshr i64 %1141, 4
  %1143 = or i64 %1142, %1141
  %1144 = lshr i64 %1143, 8
  %1145 = or i64 %1144, %1143
  %1146 = lshr i64 %1145, 16
  %1147 = or i64 %1146, %1145
  %1148 = trunc nuw i64 %1147 to i32
  %1149 = add i32 %1148, 1
  %1150 = icmp ult i32 %1149, 65
  %1151 = select i1 %1150, i32 64, i32 %1149
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1092, i32 noundef %1151)
  %1152 = shl i32 %1151, 2
  %1153 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1152) #5
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1090, i32 noundef %1153)
  %.not9079 = icmp eq i32 %1091, 0
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1120, i64 noundef 0)
  %1154 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1092)
  %.not9088 = icmp eq i32 %1154, 0
  br i1 %.not9079, label %1155, label %1173

1155:                                             ; preds = %1135
  br i1 %.not9088, label %.loopexit9412, label %1156

1156:                                             ; preds = %1155
  %1157 = and i32 %1154, 7
  %.not9089 = icmp eq i32 %1157, 0
  br i1 %.not9089, label %.loopexit9414, label %.preheader9413

.preheader9413:                                   ; preds = %1156, %.preheader9413
  %.178665 = phi i32 [ %1159, %.preheader9413 ], [ %1153, %1156 ]
  %.58508 = phi i32 [ %1160, %.preheader9413 ], [ 0, %1156 ]
  %1158 = zext i32 %.178665 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1158, i32 noundef -4)
  %1159 = add i32 %.178665, 4
  %1160 = add nuw nsw i32 %.58508, 1
  %.not9090 = icmp eq i32 %1160, %1157
  br i1 %.not9090, label %.loopexit9414, label %.preheader9413

.loopexit9414:                                    ; preds = %.preheader9413, %1156
  %.188666 = phi i32 [ %1153, %1156 ], [ %1159, %.preheader9413 ]
  %1161 = add i32 %1154, 1073741823
  %1162 = and i32 %1161, 1073741823
  %1163 = icmp ult i32 %1162, 7
  br i1 %1163, label %.loopexit9412, label %1164

1164:                                             ; preds = %.loopexit9414
  %1165 = shl i32 %1154, 2
  %1166 = add i32 %1165, %1153
  br label %1167

1167:                                             ; preds = %1167, %1164
  %.198667 = phi i32 [ %.188666, %1164 ], [ %1172, %1167 ]
  %1168 = zext i32 %.198667 to i64
  %1169 = add nuw nsw i64 %1168, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1169, i64 noundef -12884901892)
  %1170 = add nuw nsw i64 %1168, 16
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1170, i64 noundef -12884901892)
  %1171 = add nuw nsw i64 %1168, 8
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1171, i64 noundef -12884901892)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1168, i64 noundef -12884901892)
  %1172 = add i32 %.198667, 32
  %.not9091 = icmp eq i32 %1172, %1166
  br i1 %.not9091, label %.loopexit9412, label %1167

1173:                                             ; preds = %1135
  br i1 %.not9088, label %.loopexit9416, label %1174

1174:                                             ; preds = %1173
  %1175 = and i32 %1154, 7
  %.not9081 = icmp eq i32 %1175, 0
  br i1 %.not9081, label %.loopexit9418, label %.preheader9417

.preheader9417:                                   ; preds = %1174, %.preheader9417
  %.188578 = phi i32 [ %1177, %.preheader9417 ], [ %1153, %1174 ]
  %.68374 = phi i32 [ %1178, %.preheader9417 ], [ 0, %1174 ]
  %1176 = zext i32 %.188578 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1176, i32 noundef -4)
  %1177 = add i32 %.188578, 4
  %1178 = add nuw nsw i32 %.68374, 1
  %.not9082 = icmp eq i32 %1178, %1175
  br i1 %.not9082, label %.loopexit9418, label %.preheader9417

.loopexit9418:                                    ; preds = %.preheader9417, %1174
  %.198579 = phi i32 [ %1153, %1174 ], [ %1177, %.preheader9417 ]
  %1179 = add i32 %1154, 1073741823
  %1180 = and i32 %1179, 1073741823
  %1181 = icmp ult i32 %1180, 7
  br i1 %1181, label %.loopexit9416, label %1182

1182:                                             ; preds = %.loopexit9418
  %1183 = shl i32 %1154, 2
  %1184 = add i32 %1183, %1153
  br label %1185

1185:                                             ; preds = %1185, %1182
  %.208580 = phi i32 [ %.198579, %1182 ], [ %1190, %1185 ]
  %1186 = zext i32 %.208580 to i64
  %1187 = add nuw nsw i64 %1186, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1187, i64 noundef -12884901892)
  %1188 = add nuw nsw i64 %1186, 16
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1188, i64 noundef -12884901892)
  %1189 = add nuw nsw i64 %1186, 8
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1189, i64 noundef -12884901892)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1186, i64 noundef -12884901892)
  %1190 = add i32 %.208580, 32
  %.not9083 = icmp eq i32 %1190, %1184
  br i1 %.not9083, label %.loopexit9416, label %1185

.loopexit9416:                                    ; preds = %1185, %.loopexit9418, %1173
  br i1 %.not9074, label %.loopexit9415, label %1191

1191:                                             ; preds = %.loopexit9416
  %1192 = shl i32 %1093, 2
  %1193 = add i32 %1192, %1091
  %1194 = add i32 %1154, -1
  br label %1195

1195:                                             ; preds = %1224, %1191
  %.208668 = phi i32 [ %1091, %1191 ], [ %1225, %1224 ]
  %.78489 = phi i32 [ 0, %1191 ], [ %.88490, %1224 ]
  %1196 = zext i32 %.208668 to i64
  %1197 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1196)
  switch i32 %1197, label %1198 [
    i32 -8, label %1224
    i32 -4, label %1224
  ]

1198:                                             ; preds = %1195
  %1199 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1090)
  %1200 = lshr i32 %1197, 4
  %1201 = lshr i32 %1197, 9
  %1202 = xor i32 %1200, %1201
  %1203 = and i32 %1202, %1194
  %1204 = shl nuw nsw i32 %1203, 2
  %1205 = add i32 %1199, %1204
  %1206 = zext i32 %1205 to i64
  %1207 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1206)
  %1208 = icmp eq i32 %1207, %1197
  br i1 %1208, label %.loopexit9406, label %.preheader9405

.preheader9405:                                   ; preds = %1198, %1212
  %.68525 = phi i32 [ %1217, %1212 ], [ 1, %1198 ]
  %.48438 = phi i32 [ %1220, %1212 ], [ %1205, %1198 ]
  %.148416 = phi i32 [ %1218, %1212 ], [ %1203, %1198 ]
  %.88393 = phi i32 [ %1215, %1212 ], [ 0, %1198 ]
  %.78375 = phi i32 [ %1222, %1212 ], [ %1207, %1198 ]
  %1209 = icmp eq i32 %.78375, -4
  %.not9086 = icmp eq i32 %.88393, 0
  br i1 %1209, label %1210, label %1212

1210:                                             ; preds = %.preheader9405
  %1211 = select i1 %.not9086, i32 %.48438, i32 %.88393
  %.pre9814 = zext i32 %1211 to i64
  br label %.loopexit9406

1212:                                             ; preds = %.preheader9405
  %1213 = icmp eq i32 %.78375, -8
  %1214 = select i1 %1213, i1 %.not9086, i1 false
  %1215 = select i1 %1214, i32 %.48438, i32 %.88393
  %1216 = add i32 %.148416, %.68525
  %1217 = add i32 %.68525, 1
  %1218 = and i32 %1216, %1194
  %1219 = shl i32 %1218, 2
  %1220 = add i32 %1219, %1199
  %1221 = zext i32 %1220 to i64
  %1222 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1221)
  %.not9085 = icmp eq i32 %1222, %1197
  br i1 %.not9085, label %.loopexit9406, label %.preheader9405

.loopexit9406:                                    ; preds = %1212, %1198, %1210
  %.pre-phi9815 = phi i64 [ %1206, %1198 ], [ %.pre9814, %1210 ], [ %1221, %1212 ]
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9815, i32 noundef %1197)
  %1223 = add i32 %.78489, 1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1120, i32 noundef %1223)
  br label %1224

1224:                                             ; preds = %1195, %1195, %.loopexit9406
  %.88490 = phi i32 [ %1223, %.loopexit9406 ], [ %.78489, %1195 ], [ %.78489, %1195 ]
  %1225 = add i32 %.208668, 4
  %.not9087 = icmp eq i32 %1225, %1193
  br i1 %.not9087, label %.loopexit9415, label %1195

.loopexit9415:                                    ; preds = %1224, %.loopexit9416
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1091)
  %1226 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1092)
  %1227 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1090)
  br label %.loopexit9412

.loopexit9412:                                    ; preds = %1167, %1155, %.loopexit9414, %.loopexit9415
  %.98491 = phi i32 [ %1154, %.loopexit9414 ], [ %1226, %.loopexit9415 ], [ 0, %1155 ], [ %1154, %1167 ]
  %.68440 = phi i32 [ %1153, %.loopexit9414 ], [ %1227, %.loopexit9415 ], [ %1153, %1155 ], [ %1153, %1167 ]
  %1228 = add i32 %.98491, -1
  %1229 = lshr i32 %.168664, 4
  %1230 = lshr i32 %.168664, 9
  %1231 = xor i32 %1229, %1230
  %1232 = and i32 %1228, %1231
  %1233 = shl nuw nsw i32 %1232, 2
  %1234 = add i32 %1233, %.68440
  %1235 = zext i32 %1234 to i64
  %1236 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1235)
  %.not9092 = icmp eq i32 %.168664, %1236
  br i1 %.not9092, label %.loopexit9411, label %.preheader9410

.preheader9410:                                   ; preds = %.loopexit9412, %1240
  %.218669 = phi i32 [ %1250, %1240 ], [ %1236, %.loopexit9412 ]
  %.218581 = phi i32 [ %1248, %1240 ], [ %1234, %.loopexit9412 ]
  %.68509 = phi i32 [ %1246, %1240 ], [ %1232, %.loopexit9412 ]
  %.108492 = phi i32 [ %1245, %1240 ], [ 1, %.loopexit9412 ]
  %.88376 = phi i32 [ %1243, %1240 ], [ 0, %.loopexit9412 ]
  %1237 = icmp eq i32 %.218669, -4
  %.not9095 = icmp eq i32 %.88376, 0
  br i1 %1237, label %1238, label %1240

1238:                                             ; preds = %.preheader9410
  %1239 = select i1 %.not9095, i32 %.218581, i32 %.88376
  br label %1251

1240:                                             ; preds = %.preheader9410
  %1241 = icmp eq i32 %.218669, -8
  %1242 = select i1 %1241, i1 %.not9095, i1 false
  %1243 = select i1 %1242, i32 %.218581, i32 %.88376
  %1244 = add i32 %.108492, %.68509
  %1245 = add i32 %.108492, 1
  %1246 = and i32 %1244, %1228
  %1247 = shl i32 %1246, 2
  %1248 = add i32 %1247, %.68440
  %1249 = zext i32 %1248 to i64
  %1250 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1249)
  %.not9094 = icmp eq i32 %1250, %.168664
  br i1 %.not9094, label %.loopexit9411, label %.preheader9410

1251:                                             ; preds = %1127, %1238
  %.238583 = phi i32 [ %1239, %1238 ], [ %.178577, %1127 ]
  %1252 = zext i32 %.238583 to i64
  %1253 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1252)
  br label %.loopexit9411

.loopexit9411:                                    ; preds = %1240, %.loopexit9412, %1251
  %.248584 = phi i32 [ %.238583, %1251 ], [ %1234, %.loopexit9412 ], [ %1248, %1240 ]
  %.4 = phi i32 [ %1253, %1251 ], [ %.168664, %.loopexit9412 ], [ %.168664, %1240 ]
  %1254 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1120)
  %1255 = add i32 %1254, 1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1120, i32 noundef %1255)
  %.not9096 = icmp eq i32 %.4, -4
  br i1 %.not9096, label %1260, label %1256

1256:                                             ; preds = %.loopexit9411
  %1257 = add nuw nsw i64 %1083, 44
  %1258 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1257)
  %1259 = add i32 %1258, -1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1257, i32 noundef %1259)
  br label %1260

1260:                                             ; preds = %1256, %.loopexit9411
  %1261 = zext i32 %.248584 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1261, i32 noundef %.168664)
  br label %.loopexit9420

.loopexit9420:                                    ; preds = %.loopexit9409, %1108, %1094, %1037, %1034, %.preheader9424, %1260
  %1262 = add i32 %.168607, 12
  %.not9098 = icmp eq i32 %1262, %1027
  br i1 %.not9098, label %.loopexit9425, label %.preheader9424

.loopexit9425:                                    ; preds = %.loopexit9420, %1020
  %.not9099 = icmp eq i32 %1021, 0
  br i1 %.not9099, label %.loopexit9426, label %1020

.loopexit9426:                                    ; preds = %.loopexit9425, %1016
  %.68632 = phi i32 [ %.68470, %1016 ], [ %.98456, %.loopexit9425 ]
  %1263 = add nuw nsw i64 %.pre-phi, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1263, i32 noundef 0)
  %1264 = add nuw nsw i64 %.pre-phi, 4
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1264, i64 noundef 0)
  %1265 = add i32 %7, -28
  br label %1266

1266:                                             ; preds = %1266, %.loopexit9426
  %.08356 = phi i32 [ %14, %.loopexit9426 ], [ %1267, %1266 ]
  tail call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AlayoutIfNeeded0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AStringEntry0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x2A0x29(ptr noundef %0, i32 noundef %.08356, i32 noundef %1265)
  %1267 = add i32 %.08356, 52
  %.not9100 = icmp eq i32 %1267, %109
  br i1 %.not9100, label %1268, label %1266

1268:                                             ; preds = %1266
  %.not9101 = icmp eq i32 %.68632, 0
  br i1 %.not9101, label %1280, label %1269

1269:                                             ; preds = %1268
  br i1 %.not9063, label %.loopexit9404, label %.preheader9403

.preheader9403:                                   ; preds = %1269, %1276
  %.78471 = phi i32 [ %1270, %1276 ], [ %.68470, %1269 ]
  %1270 = add i32 %.78471, -12
  %1271 = zext i32 %1270 to i64
  %1272 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1271)
  %.not9102 = icmp eq i32 %1272, 0
  br i1 %.not9102, label %1276, label %1273

1273:                                             ; preds = %.preheader9403
  %1274 = add i32 %.78471, -8
  %1275 = zext i32 %1274 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1275, i32 noundef %1272)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1272)
  br label %1276

1276:                                             ; preds = %1273, %.preheader9403
  %.not9103 = icmp eq i32 %1270, %.68632
  br i1 %.not9103, label %.loopexit9404, label %.preheader9403

.loopexit9404:                                    ; preds = %1276, %1269
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.68632)
  br label %1280

1277:                                             ; preds = %.loopexit9440, %48
  %.pre-phi9799 = phi i64 [ %.pre-phi, %.loopexit9440 ], [ %45, %48 ]
  %.138543 = phi i32 [ %.128542, %.loopexit9440 ], [ 0, %48 ]
  %.58425 = phi i32 [ %.48424, %.loopexit9440 ], [ 0, %48 ]
  %1278 = add nuw nsw i64 %.pre-phi9799, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1278, i32 noundef 0)
  %1279 = add nuw nsw i64 %.pre-phi9799, 4
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1279, i64 noundef 0)
  br label %1280

1280:                                             ; preds = %1268, %1277, %.loopexit9404
  %.148544 = phi i32 [ %.138543, %1277 ], [ %.128542, %1268 ], [ %.128542, %.loopexit9404 ]
  %.68426 = phi i32 [ %.58425, %1277 ], [ %.48424, %1268 ], [ %.48424, %.loopexit9404 ]
  %.not9104 = icmp eq i32 %.148544, 0
  br i1 %.not9104, label %1290, label %1281

1281:                                             ; preds = %1280
  %.not9105 = icmp eq i32 %.148544, %.68426
  br i1 %.not9105, label %.loopexit9402, label %.preheader9401

.preheader9401:                                   ; preds = %1281, %1289
  %.78427 = phi i32 [ %1282, %1289 ], [ %.68426, %1281 ]
  %1282 = add i32 %.78427, -20
  %1283 = zext i32 %1282 to i64
  %1284 = add nuw nsw i64 %1283, 8
  %1285 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1284)
  %.not9106 = icmp eq i32 %1285, 0
  br i1 %.not9106, label %1289, label %1286

1286:                                             ; preds = %.preheader9401
  %1287 = add i32 %.78427, -8
  %1288 = zext i32 %1287 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1288, i32 noundef %1285)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1285)
  br label %1289

1289:                                             ; preds = %1286, %.preheader9401
  %.not9107 = icmp eq i32 %1282, %.148544
  br i1 %.not9107, label %.loopexit9402, label %.preheader9401

.loopexit9402:                                    ; preds = %1289, %1281
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.148544)
  br label %1290

1290:                                             ; preds = %.loopexit9402, %1280
  %1291 = zext i32 %8 to i64
  %1292 = add nuw nsw i64 %1291, 16
  %1293 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1292)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1293)
  %1294 = zext i32 %2 to i64
  %1295 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1294)
  %.not9108 = icmp eq i32 %1295, 0
  %.pre9840 = add nuw nsw i64 %1294, 4
  br i1 %.not9108, label %._crit_edge9830, label %1296

1296:                                             ; preds = %1290
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre9840, i32 noundef %1295)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1295)
  br label %._crit_edge9830

._crit_edge9830:                                  ; preds = %1290, %1296
  %1297 = add nuw nsw i64 %1291, 4
  %1298 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1297)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1294, i32 noundef %1298)
  %1299 = add nuw nsw i64 %1291, 8
  %1300 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1299)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre9840, i32 noundef %1300)
  %1301 = add nuw nsw i64 %1291, 12
  %1302 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1301)
  %1303 = add nuw nsw i64 %1294, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1303, i32 noundef %1302)
  %1304 = add nuw nsw i64 %10, 40
  %1305 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1304)
  %1306 = add nuw nsw i64 %10, 36
  %1307 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1306)
  %1308 = sub i32 %1305, %1307
  %1309 = sdiv i32 %1308, 52
  %1310 = icmp ugt i32 %1309, 7
  br i1 %1310, label %1311, label %1334

1311:                                             ; preds = %._crit_edge9830
  %1312 = lshr i32 %1309, 1
  %1313 = and i32 %1312, 2147483644
  %1314 = udiv i32 %1313, 3
  %1315 = add nuw nsw i32 %1314, 1
  %1316 = zext nneg i32 %1315 to i64
  %1317 = lshr i64 %1316, 1
  %1318 = or i64 %1317, %1316
  %1319 = lshr i64 %1318, 2
  %1320 = or i64 %1319, %1318
  %1321 = lshr i64 %1320, 4
  %1322 = or i64 %1321, %1320
  %1323 = lshr i64 %1322, 8
  %1324 = or i64 %1323, %1322
  %1325 = lshr i64 %1324, 16
  %1326 = or i64 %1325, %1324
  %1327 = trunc nuw nsw i64 %1326 to i32
  %1328 = add nuw nsw i32 %1327, 1
  %1329 = add nuw nsw i64 %1291, 28
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1329, i32 noundef %1328)
  %1330 = shl i32 %1328, 3
  %1331 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1330) #5
  %1332 = add nuw nsw i64 %1291, 20
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1332, i64 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1292, i32 noundef %1331)
  %1333 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %1331, i32 noundef 255, i32 noundef %1330)
  %.pre9800 = add nuw nsw i64 %1291, 24
  br label %1337

1334:                                             ; preds = %._crit_edge9830
  %1335 = add nuw nsw i64 %1291, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1335, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1292, i64 noundef 0)
  %.not9109 = icmp eq i32 %1305, %1307
  br i1 %.not9109, label %1336, label %._crit_edge9829

._crit_edge9829:                                  ; preds = %1334
  %.pre9842 = add nuw nsw i64 %1291, 28
  %.pre9844 = add nuw nsw i64 %1291, 20
  br label %1337

1336:                                             ; preds = %1334
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef 0)
  br label %2516

1337:                                             ; preds = %._crit_edge9829, %1311
  %.pre-phi9845 = phi i64 [ %.pre9844, %._crit_edge9829 ], [ %1332, %1311 ]
  %.pre-phi9843 = phi i64 [ %.pre9842, %._crit_edge9829 ], [ %1329, %1311 ]
  %.pre-phi9801 = phi i64 [ %1335, %._crit_edge9829 ], [ %.pre9800, %1311 ]
  %.78633 = phi i32 [ 0, %._crit_edge9829 ], [ %1328, %1311 ]
  %.78510 = phi i32 [ 0, %._crit_edge9829 ], [ %1331, %1311 ]
  %1338 = mul nsw i32 %1309, 52
  %1339 = add i32 %1338, %1307
  br label %1340

1340:                                             ; preds = %.loopexit9400, %1337
  %.268724 = phi i32 [ %1307, %1337 ], [ %1497, %.loopexit9400 ]
  %.88634 = phi i32 [ %.78633, %1337 ], [ %.158641, %.loopexit9400 ]
  %.178608 = phi i32 [ 0, %1337 ], [ %.238614, %.loopexit9400 ]
  %.88511 = phi i32 [ %.78510, %1337 ], [ %.128515, %.loopexit9400 ]
  %1341 = zext i32 %.268724 to i64
  %1342 = add nuw nsw i64 %1341, 8
  %1343 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1342)
  %1344 = icmp ult i32 %1343, 3
  br i1 %1344, label %.loopexit9400, label %1345

1345:                                             ; preds = %1340
  %1346 = add nuw nsw i64 %1341, 4
  %1347 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1346)
  %1348 = zext i32 %1347 to i64
  %1349 = add nuw nsw i64 %1348, 2
  %1350 = tail call i64 @i64_load16_u(ptr noundef nonnull %9, i64 noundef %1349)
  %1351 = shl i64 %1350, 16
  %1352 = tail call i64 @i64_load16_u(ptr noundef nonnull %9, i64 noundef %1348)
  %1353 = shl i64 %1352, 32
  %1354 = or i64 %1353, %1351
  %1355 = add nuw nsw i64 %1348, 4
  %1356 = tail call i64 @i64_load16_u(ptr noundef nonnull %9, i64 noundef %1355)
  %1357 = or i64 %1354, %1356
  %.not9110 = icmp eq i32 %.88634, 0
  br i1 %.not9110, label %1382, label %1358

1358:                                             ; preds = %1345
  %1359 = add i32 %.88634, -1
  %1360 = trunc i64 %1357 to i32
  %1361 = mul i32 %1360, 37
  %1362 = and i32 %1361, %1359
  %1363 = shl i32 %1362, 3
  %1364 = add i32 %1363, %.88511
  %1365 = zext i32 %1364 to i64
  %1366 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1365)
  %1367 = icmp eq i64 %1357, %1366
  br i1 %1367, label %.loopexit9400, label %.preheader9399

.preheader9399:                                   ; preds = %1358, %1371
  %.228670 = phi i32 [ %1379, %1371 ], [ %1364, %1358 ]
  %.78526 = phi i32 [ %1377, %1371 ], [ %1362, %1358 ]
  %.88472 = phi i32 [ %1374, %1371 ], [ 0, %1358 ]
  %.98377 = phi i32 [ %1376, %1371 ], [ 1, %1358 ]
  %.08351 = phi i64 [ %1381, %1371 ], [ %1366, %1358 ]
  %1368 = icmp eq i64 %.08351, -1
  %.not9113 = icmp eq i32 %.88472, 0
  br i1 %1368, label %1369, label %1371

1369:                                             ; preds = %.preheader9399
  %1370 = select i1 %.not9113, i32 %.228670, i32 %.88472
  br label %1382

1371:                                             ; preds = %.preheader9399
  %1372 = icmp eq i64 %.08351, -2
  %1373 = select i1 %1372, i1 %.not9113, i1 false
  %1374 = select i1 %1373, i32 %.228670, i32 %.88472
  %1375 = add i32 %.98377, %.78526
  %1376 = add i32 %.98377, 1
  %1377 = and i32 %1375, %1359
  %1378 = shl i32 %1377, 3
  %1379 = add i32 %1378, %.88511
  %1380 = zext i32 %1379 to i64
  %1381 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1380)
  %.not9112 = icmp eq i64 %1357, %1381
  br i1 %.not9112, label %.loopexit9400, label %.preheader9399

1382:                                             ; preds = %1345, %1369
  %.238671 = phi i32 [ %1370, %1369 ], [ 0, %1345 ]
  %1383 = shl i32 %.178608, 2
  %1384 = add i32 %1383, 4
  %1385 = mul i32 %.88634, 3
  %.not9114 = icmp ult i32 %1384, %1385
  br i1 %.not9114, label %1388, label %1386

1386:                                             ; preds = %1382
  %1387 = shl i32 %.88634, 1
  br label %1395

1388:                                             ; preds = %1382
  %1389 = xor i32 %.178608, -1
  %1390 = add i32 %.88634, %1389
  %1391 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9801)
  %1392 = sub i32 %1390, %1391
  %1393 = lshr i32 %.88634, 3
  %1394 = icmp ugt i32 %1392, %1393
  br i1 %1394, label %1488, label %1395

1395:                                             ; preds = %1388, %1386
  %.98635 = phi i32 [ %1387, %1386 ], [ %.88634, %1388 ]
  %1396 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9843)
  %1397 = add i32 %.98635, -1
  %1398 = zext i32 %1397 to i64
  %1399 = lshr i64 %1398, 1
  %1400 = or i64 %1399, %1398
  %1401 = lshr i64 %1400, 2
  %1402 = or i64 %1401, %1400
  %1403 = lshr i64 %1402, 4
  %1404 = or i64 %1403, %1402
  %1405 = lshr i64 %1404, 8
  %1406 = or i64 %1405, %1404
  %1407 = lshr i64 %1406, 16
  %1408 = or i64 %1407, %1406
  %1409 = trunc nuw i64 %1408 to i32
  %1410 = add i32 %1409, 1
  %1411 = icmp ult i32 %1410, 65
  %1412 = select i1 %1411, i32 64, i32 %1410
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9843, i32 noundef %1412)
  %1413 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1292)
  %1414 = shl i32 %1412, 3
  %1415 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1414) #5
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1292, i32 noundef %1415)
  %.not9115 = icmp eq i32 %1413, 0
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9845, i64 noundef 0)
  %1416 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9843)
  %.not9122 = icmp eq i32 %1416, 0
  br i1 %.not9115, label %1417, label %1421

1417:                                             ; preds = %1395
  br i1 %.not9122, label %1460, label %1418

1418:                                             ; preds = %1417
  %1419 = shl i32 %1416, 3
  %1420 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %1415, i32 noundef 255, i32 noundef %1419)
  br label %1460

1421:                                             ; preds = %1395
  br i1 %.not9122, label %1425, label %1422

1422:                                             ; preds = %1421
  %1423 = shl i32 %1416, 3
  %1424 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %1415, i32 noundef 255, i32 noundef %1423)
  br label %1425

1425:                                             ; preds = %1422, %1421
  %.not9117 = icmp eq i32 %1396, 0
  br i1 %.not9117, label %.loopexit9398, label %1426

1426:                                             ; preds = %1425
  %1427 = shl i32 %1396, 3
  %1428 = add i32 %1413, %1427
  %1429 = add i32 %1416, -1
  br label %1430

1430:                                             ; preds = %1458, %1426
  %.08750 = phi i32 [ %1413, %1426 ], [ %1459, %1458 ]
  %.258585 = phi i32 [ 0, %1426 ], [ %.268586, %1458 ]
  %1431 = zext i32 %.08750 to i64
  %1432 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1431)
  %1433 = icmp ult i64 %1432, -2
  br i1 %1433, label %1434, label %1458

1434:                                             ; preds = %1430
  %1435 = trunc i64 %1432 to i32
  %1436 = mul i32 %1435, 37
  %1437 = and i32 %1436, %1429
  %1438 = shl i32 %1437, 3
  %1439 = add i32 %1438, %1415
  %1440 = zext i32 %1439 to i64
  %1441 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1440)
  %1442 = icmp eq i64 %1432, %1441
  br i1 %1442, label %.loopexit9395, label %.preheader9394

.preheader9394:                                   ; preds = %1434, %1446
  %.248672 = phi i32 [ %1449, %1446 ], [ 0, %1434 ]
  %.108636 = phi i32 [ %1454, %1446 ], [ %1439, %1434 ]
  %.188609 = phi i32 [ %1451, %1446 ], [ 1, %1434 ]
  %.158417 = phi i32 [ %1452, %1446 ], [ %1437, %1434 ]
  %.08354 = phi i64 [ %1456, %1446 ], [ %1441, %1434 ]
  %1443 = icmp eq i64 %.08354, -1
  %.not9120 = icmp eq i32 %.248672, 0
  br i1 %1443, label %1444, label %1446

1444:                                             ; preds = %.preheader9394
  %1445 = select i1 %.not9120, i32 %.108636, i32 %.248672
  %.pre9812 = zext i32 %1445 to i64
  br label %.loopexit9395

1446:                                             ; preds = %.preheader9394
  %1447 = icmp eq i64 %.08354, -2
  %1448 = select i1 %1447, i1 %.not9120, i1 false
  %1449 = select i1 %1448, i32 %.108636, i32 %.248672
  %1450 = add i32 %.158417, %.188609
  %1451 = add i32 %.188609, 1
  %1452 = and i32 %1450, %1429
  %1453 = shl i32 %1452, 3
  %1454 = add i32 %1453, %1415
  %1455 = zext i32 %1454 to i64
  %1456 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1455)
  %.not9119 = icmp eq i64 %1432, %1456
  br i1 %.not9119, label %.loopexit9395, label %.preheader9394

.loopexit9395:                                    ; preds = %1446, %1434, %1444
  %.pre-phi9813 = phi i64 [ %1440, %1434 ], [ %.pre9812, %1444 ], [ %1455, %1446 ]
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9813, i64 noundef %1432)
  %1457 = add i32 %.258585, 1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9845, i32 noundef %1457)
  br label %1458

1458:                                             ; preds = %.loopexit9395, %1430
  %.268586 = phi i32 [ %1457, %.loopexit9395 ], [ %.258585, %1430 ]
  %1459 = add i32 %.08750, 8
  %.not9121 = icmp eq i32 %1459, %1428
  br i1 %.not9121, label %.loopexit9398, label %1430

.loopexit9398:                                    ; preds = %1458, %1425
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1413)
  br label %1460

1460:                                             ; preds = %1417, %.loopexit9398, %1418
  %1461 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1292)
  %1462 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9843)
  %1463 = add i32 %1462, -1
  %1464 = trunc i64 %1357 to i32
  %1465 = mul i32 %1464, 37
  %1466 = and i32 %1463, %1465
  %1467 = shl i32 %1466, 3
  %1468 = add i32 %1467, %1461
  %1469 = zext i32 %1468 to i64
  %1470 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1469)
  %.not9123 = icmp eq i64 %1470, %1357
  br i1 %.not9123, label %.loopexit9397, label %.preheader9396

.preheader9396:                                   ; preds = %1460, %1475
  %.258673 = phi i32 [ %1483, %1475 ], [ %1468, %1460 ]
  %.198610 = phi i32 [ %1481, %1475 ], [ %1466, %1460 ]
  %.98473 = phi i32 [ %1480, %1475 ], [ 1, %1460 ]
  %.98394 = phi i32 [ %1478, %1475 ], [ 0, %1460 ]
  %.18352 = phi i64 [ %1485, %1475 ], [ %1470, %1460 ]
  %1471 = icmp eq i64 %.18352, -1
  %.not9126 = icmp eq i32 %.98394, 0
  br i1 %1471, label %1472, label %1475

1472:                                             ; preds = %.preheader9396
  %1473 = select i1 %.not9126, i32 %.258673, i32 %.98394
  %1474 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9845)
  br label %1488

1475:                                             ; preds = %.preheader9396
  %1476 = icmp eq i64 %.18352, -2
  %1477 = select i1 %1476, i1 %.not9126, i1 false
  %1478 = select i1 %1477, i32 %.258673, i32 %.98394
  %1479 = add i32 %.98473, %.198610
  %1480 = add i32 %.98473, 1
  %1481 = and i32 %1479, %1463
  %1482 = shl i32 %1481, 3
  %1483 = add i32 %1482, %1461
  %1484 = zext i32 %1483 to i64
  %1485 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1484)
  %.not9125 = icmp eq i64 %1357, %1485
  br i1 %.not9125, label %.loopexit9397, label %.preheader9396

.loopexit9397:                                    ; preds = %1475, %1460
  %.pre9811.pre-phi = phi i64 [ %1469, %1460 ], [ %1484, %1475 ]
  %1486 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9845)
  %1487 = add i32 %1486, 1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9845, i32 noundef %1487)
  br label %1493

1488:                                             ; preds = %1388, %1472
  %.278675 = phi i32 [ %1473, %1472 ], [ %.238671, %1388 ]
  %.128638 = phi i32 [ %1462, %1472 ], [ %.88634, %1388 ]
  %.208611 = phi i32 [ %1474, %1472 ], [ %.178608, %1388 ]
  %.98512 = phi i32 [ %1461, %1472 ], [ %.88511, %1388 ]
  %1489 = zext i32 %.278675 to i64
  %1490 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1489)
  %1491 = add i32 %.208611, 1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9845, i32 noundef %1491)
  %1492 = icmp eq i64 %1490, -1
  br i1 %1492, label %1496, label %1493

1493:                                             ; preds = %1488, %.loopexit9397
  %.pre9809.pre-phi = phi i64 [ %1489, %1488 ], [ %.pre9811.pre-phi, %.loopexit9397 ]
  %.138639 = phi i32 [ %.128638, %1488 ], [ %1462, %.loopexit9397 ]
  %.218612 = phi i32 [ %1491, %1488 ], [ %1487, %.loopexit9397 ]
  %.108513 = phi i32 [ %.98512, %1488 ], [ %1461, %.loopexit9397 ]
  %1494 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9801)
  %1495 = add i32 %1494, -1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9801, i32 noundef %1495)
  br label %1496

1496:                                             ; preds = %1488, %1493
  %.pre-phi9810 = phi i64 [ %1489, %1488 ], [ %.pre9809.pre-phi, %1493 ]
  %.148640 = phi i32 [ %.128638, %1488 ], [ %.138639, %1493 ]
  %.228613 = phi i32 [ %1491, %1488 ], [ %.218612, %1493 ]
  %.118514 = phi i32 [ %.98512, %1488 ], [ %.108513, %1493 ]
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9810, i64 noundef %1357)
  br label %.loopexit9400

.loopexit9400:                                    ; preds = %1371, %1358, %1340, %1496
  %.158641 = phi i32 [ %.88634, %1340 ], [ %.148640, %1496 ], [ %.88634, %1358 ], [ %.88634, %1371 ]
  %.238614 = phi i32 [ %.178608, %1340 ], [ %.228613, %1496 ], [ %.178608, %1358 ], [ %.178608, %1371 ]
  %.128515 = phi i32 [ %.88511, %1340 ], [ %.118514, %1496 ], [ %.88511, %1358 ], [ %.88511, %1371 ]
  %1497 = add i32 %.268724, 52
  %.not9127 = icmp eq i32 %1497, %1339
  br i1 %.not9127, label %1498, label %1340

1498:                                             ; preds = %.loopexit9400
  %1499 = and i32 %1309, 536870911
  %.not9128 = icmp eq i32 %1499, 0
  br i1 %.not9128, label %.loopexit9391, label %1500

1500:                                             ; preds = %1498
  %1501 = shl nsw i32 %1309, 5
  %1502 = udiv i32 %1501, 3
  %1503 = add nuw nsw i32 %1502, 1
  %1504 = zext nneg i32 %1503 to i64
  %1505 = lshr i64 %1504, 1
  %1506 = or i64 %1505, %1504
  %1507 = lshr i64 %1506, 2
  %1508 = or i64 %1507, %1506
  %1509 = lshr i64 %1508, 4
  %1510 = or i64 %1509, %1508
  %1511 = lshr i64 %1510, 8
  %1512 = or i64 %1511, %1510
  %1513 = lshr i64 %1512, 16
  %1514 = or i64 %1513, %1512
  %1515 = trunc nuw nsw i64 %1514 to i32
  %1516 = mul i32 %1515, 24
  %1517 = add i32 %1516, 24
  %1518 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1517) #5
  %1519 = udiv i32 %1516, 24
  %1520 = add nuw nsw i32 %1519, 1
  %1521 = and i32 %1520, 7
  %.not9129 = icmp eq i32 %1521, 0
  br i1 %.not9129, label %.loopexit9393, label %.preheader9392

.preheader9392:                                   ; preds = %1500, %.preheader9392
  %.278725 = phi i32 [ %1524, %.preheader9392 ], [ %1518, %1500 ]
  %.308678 = phi i32 [ %1525, %.preheader9392 ], [ 0, %1500 ]
  %1522 = zext i32 %.278725 to i64
  %1523 = add nuw nsw i64 %1522, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1523, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1522, i64 noundef 4294967295)
  %1524 = add i32 %.278725, 24
  %1525 = add nuw nsw i32 %.308678, 1
  %.not9130 = icmp eq i32 %1525, %1521
  br i1 %.not9130, label %.loopexit9393, label %.preheader9392

.loopexit9393:                                    ; preds = %.preheader9392, %1500
  %.288726 = phi i32 [ %1518, %1500 ], [ %1524, %.preheader9392 ]
  %1526 = add nuw i32 %1515, 1
  %1527 = icmp ult i32 %1516, 168
  br i1 %1527, label %.loopexit9391, label %1528

1528:                                             ; preds = %.loopexit9393
  %1529 = add i32 %1518, %1517
  br label %1530

1530:                                             ; preds = %1530, %1528
  %.298727 = phi i32 [ %.288726, %1528 ], [ %1547, %1530 ]
  %1531 = zext i32 %.298727 to i64
  %1532 = add nuw nsw i64 %1531, 168
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1532, i64 noundef 4294967295)
  %1533 = add nuw nsw i64 %1531, 144
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1533, i64 noundef 4294967295)
  %1534 = add nuw nsw i64 %1531, 120
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1534, i64 noundef 4294967295)
  %1535 = add nuw nsw i64 %1531, 96
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1535, i64 noundef 4294967295)
  %1536 = add nuw nsw i64 %1531, 72
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1536, i64 noundef 4294967295)
  %1537 = add nuw nsw i64 %1531, 48
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1537, i64 noundef 4294967295)
  %1538 = add nuw nsw i64 %1531, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1538, i64 noundef 4294967295)
  %1539 = add nuw nsw i64 %1531, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1539, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1531, i64 noundef 4294967295)
  %1540 = add nuw nsw i64 %1531, 176
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1540, i32 noundef 0)
  %1541 = add nuw nsw i64 %1531, 152
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1541, i32 noundef 0)
  %1542 = add nuw nsw i64 %1531, 128
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1542, i32 noundef 0)
  %1543 = add nuw nsw i64 %1531, 104
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1543, i32 noundef 0)
  %1544 = add nuw nsw i64 %1531, 80
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1544, i32 noundef 0)
  %1545 = add nuw nsw i64 %1531, 56
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1545, i32 noundef 0)
  %1546 = add nuw nsw i64 %1531, 32
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1546, i32 noundef 0)
  %1547 = add i32 %.298727, 192
  %.not9131 = icmp eq i32 %1547, %1529
  br i1 %.not9131, label %.loopexit9391, label %1530

.loopexit9391:                                    ; preds = %1530, %1498, %.loopexit9393
  %.278587 = phi i32 [ %1526, %.loopexit9393 ], [ 0, %1498 ], [ %1526, %1530 ]
  %.168418 = phi i32 [ %1518, %.loopexit9393 ], [ 0, %1498 ], [ %1518, %1530 ]
  %1548 = icmp eq i32 %1305, %1307
  br i1 %1548, label %2019, label %.preheader9390

.preheader9390:                                   ; preds = %.loopexit9391, %.loopexit9387
  %.288588 = phi i32 [ %.36, %.loopexit9387 ], [ %.278587, %.loopexit9391 ]
  %.158545 = phi i32 [ %.248554, %.loopexit9387 ], [ 0, %.loopexit9391 ]
  %.118493 = phi i32 [ %1920, %.loopexit9387 ], [ %1307, %.loopexit9391 ]
  %.178419 = phi i32 [ %.22, %.loopexit9387 ], [ %.168418, %.loopexit9391 ]
  %.98367 = phi i32 [ %.16, %.loopexit9387 ], [ 0, %.loopexit9391 ]
  %1549 = zext i32 %.118493 to i64
  %1550 = add nuw nsw i64 %1549, 8
  %1551 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1550)
  %1552 = add i32 %1551, -24577
  %or.cond9284 = icmp ult i32 %1552, -24576
  br i1 %or.cond9284, label %.loopexit9387, label %1553

1553:                                             ; preds = %.preheader9390
  %1554 = add nuw nsw i64 %1549, 4
  %1555 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1554)
  %1556 = shl nuw nsw i32 %1551, 1
  %1557 = add i32 %1556, %1555
  %1558 = shl nuw nsw i32 %1551, 1
  %1559 = add i32 %1558, %1555
  br label %1560

1560:                                             ; preds = %1919, %1553
  %.298589 = phi i32 [ %.288588, %1553 ], [ %.35, %1919 ]
  %.168546 = phi i32 [ %.158545, %1553 ], [ %.238553, %1919 ]
  %.88527 = phi i32 [ 0, %1553 ], [ %1573, %1919 ]
  %.138516 = phi i32 [ %1551, %1553 ], [ %1885, %1919 ]
  %.18 = phi i32 [ %.178419, %1553 ], [ %.21, %1919 ]
  %.10 = phi i32 [ %.98367, %1553 ], [ %.15, %1919 ]
  %1561 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.pre-phi9843)
  %1562 = add i32 %1561, -1
  %1563 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1292)
  %.not9133 = icmp eq i32 %1561, 0
  br label %1564

1564:                                             ; preds = %.loopexit9367, %1560
  %.308728 = phi i32 [ %.138516, %1560 ], [ %1565, %.loopexit9367 ]
  %.98528 = phi i32 [ %.88527, %1560 ], [ %1573, %.loopexit9367 ]
  %1565 = add i32 %.308728, -1
  %1566 = shl i32 %1565, 1
  %1567 = add i32 %1566, %1555
  %1568 = zext i32 %1567 to i64
  %1569 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %1568)
  %1570 = add i32 %1569, %.98528
  %1571 = mul i32 %1570, 1025
  %1572 = lshr i32 %1571, 6
  %1573 = xor i32 %1572, %1571
  %1574 = add i32 %.308728, 2
  %1575 = icmp ugt i32 %1574, %1551
  br i1 %1575, label %.loopexit9368, label %1576

1576:                                             ; preds = %1564
  br i1 %.not9133, label %.loopexit9367, label %1577

1577:                                             ; preds = %1576
  %1578 = add nuw nsw i64 %1568, 4
  %1579 = tail call i64 @i64_load16_u(ptr noundef nonnull %9, i64 noundef %1578)
  %1580 = shl i32 %.308728, 1
  %1581 = add i32 %1580, %1555
  %1582 = zext i32 %1581 to i64
  %1583 = tail call i64 @i64_load16_u(ptr noundef nonnull %9, i64 noundef %1582)
  %1584 = shl i64 %1583, 16
  %1585 = zext i32 %1569 to i64
  %1586 = shl nuw i64 %1585, 32
  %1587 = or i64 %1579, %1586
  %1588 = or i64 %1587, %1584
  %1589 = trunc i64 %1588 to i32
  %1590 = mul i32 %1589, 37
  %1591 = and i32 %1590, %1562
  %1592 = shl i32 %1591, 3
  %1593 = add i32 %1592, %1563
  %1594 = zext i32 %1593 to i64
  %1595 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1594)
  %1596 = icmp eq i64 %1588, %1595
  br i1 %1596, label %.loopexit9368, label %.preheader9366

.preheader9366:                                   ; preds = %1577, %1598
  %.318729 = phi i32 [ %1601, %1598 ], [ %1591, %1577 ]
  %.318679 = phi i32 [ %1600, %1598 ], [ 1, %1577 ]
  %.28353 = phi i64 [ %1605, %1598 ], [ %1595, %1577 ]
  %1597 = icmp eq i64 %.28353, -1
  br i1 %1597, label %.loopexit9367, label %1598

1598:                                             ; preds = %.preheader9366
  %1599 = add i32 %.318679, %.318729
  %1600 = add i32 %.318679, 1
  %1601 = and i32 %1599, %1562
  %1602 = shl i32 %1601, 3
  %1603 = add i32 %1602, %1563
  %1604 = zext i32 %1603 to i64
  %1605 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1604)
  %.not9134 = icmp eq i64 %1588, %1605
  br i1 %.not9134, label %.loopexit9368, label %.preheader9366

.loopexit9368:                                    ; preds = %1577, %1564, %1598
  %1606 = sub i32 %1551, %1565
  %.not9136 = icmp eq i32 %.298589, 0
  br i1 %.not9136, label %.loopexit9384, label %1607

.loopexit9367:                                    ; preds = %.preheader9366, %1576
  %.not9135 = icmp eq i32 %1565, 0
  br i1 %.not9135, label %.loopexit9387, label %1564

1607:                                             ; preds = %.loopexit9368
  %1608 = add i32 %.298589, -1
  %1609 = and i32 %1573, %1608
  %.not9137 = icmp eq i32 %1551, %1565
  br i1 %.not9137, label %1634, label %.preheader10065

.preheader10065:                                  ; preds = %1607, %1630
  %.108457 = phi i32 [ %1632, %1630 ], [ %1609, %1607 ]
  %.108378 = phi i32 [ %1633, %1630 ], [ 1, %1607 ]
  %1610 = mul i32 %.108457, 24
  %1611 = add i32 %1610, %.18
  %1612 = zext i32 %1611 to i64
  %1613 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1612)
  %1614 = add nuw nsw i64 %1612, 8
  %1615 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1614)
  %.not9140 = icmp eq i32 %1615, %1573
  %1616 = lshr i64 %1613, 32
  %1617 = trunc nuw i64 %1616 to i32
  %.not9141 = icmp eq i32 %1606, %1617
  %or.cond9286 = select i1 %.not9140, i1 %.not9141, i1 false
  br i1 %or.cond9286, label %1618, label %.loopexit9364

1618:                                             ; preds = %.preheader10065
  %1619 = trunc i64 %1613 to i32
  br label %1620

1620:                                             ; preds = %1625, %1618
  %.328730 = phi i32 [ %1619, %1618 ], [ %1626, %1625 ]
  %.328680 = phi i32 [ %1567, %1618 ], [ %1627, %1625 ]
  %1621 = zext i32 %.328680 to i64
  %1622 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %1621)
  %1623 = zext i32 %.328730 to i64
  %1624 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %1623)
  %.not9142 = icmp eq i32 %1622, %1624
  br i1 %.not9142, label %1625, label %.loopexit9364

1625:                                             ; preds = %1620
  %1626 = add i32 %.328730, 2
  %1627 = add i32 %.328680, 2
  %.not9143 = icmp eq i32 %1627, %1557
  br i1 %.not9143, label %.loopexit9365, label %1620

.loopexit9364:                                    ; preds = %1620, %.preheader10065
  %.not9144 = icmp eq i32 %1615, 0
  %1628 = icmp ult i64 %1613, 4294967296
  %1629 = and i1 %1628, %.not9144
  br i1 %1629, label %.loopexit9384, label %1630

1630:                                             ; preds = %.loopexit9364
  %1631 = add i32 %.108378, %.108457
  %1632 = and i32 %1631, %1608
  %1633 = add i32 %.108378, 1
  br label %.preheader10065

1634:                                             ; preds = %1607
  %1635 = mul i32 %1609, 24
  %1636 = add i32 %1635, %.18
  %1637 = zext i32 %1636 to i64
  %1638 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1637)
  %1639 = add nuw nsw i64 %1637, 8
  %1640 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1639)
  %1641 = icmp eq i32 %1573, %1640
  %1642 = icmp ult i64 %1638, 4294967296
  %1643 = and i1 %1642, %1641
  br i1 %1643, label %.loopexit9365, label %1644

1644:                                             ; preds = %1634
  %.not9138 = icmp eq i32 %1640, 0
  %1645 = and i1 %1642, %.not9138
  br i1 %1645, label %.loopexit9384, label %.preheader9382

.preheader9382:                                   ; preds = %1644, %1657
  %.338681 = phi i32 [ %1658, %1657 ], [ 1, %1644 ]
  %.118458 = phi i32 [ %1647, %1657 ], [ %1609, %1644 ]
  %1646 = add i32 %.118458, %.338681
  %1647 = and i32 %1646, %1608
  %1648 = mul i32 %1647, 24
  %1649 = add i32 %1648, %.18
  %1650 = zext i32 %1649 to i64
  %1651 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1650)
  %1652 = add nuw nsw i64 %1650, 8
  %1653 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1652)
  %1654 = icmp eq i32 %1573, %1653
  %1655 = icmp ult i64 %1651, 4294967296
  %1656 = and i1 %1655, %1654
  br i1 %1656, label %.loopexit9365, label %1657

1657:                                             ; preds = %.preheader9382
  %1658 = add i32 %.338681, 1
  %.not9139 = icmp ne i32 %1653, 0
  %1659 = icmp ugt i64 %1651, 4294967295
  %or.cond9287 = select i1 %.not9139, i1 true, i1 %1659
  br i1 %or.cond9287, label %.preheader9382, label %.loopexit9384

.loopexit9384:                                    ; preds = %.loopexit9364, %1657, %.loopexit9368, %1644
  %.248615 = phi i32 [ %1636, %1644 ], [ 0, %.loopexit9368 ], [ %1649, %1657 ], [ %1611, %.loopexit9364 ]
  %1660 = shl i32 %.168546, 2
  %1661 = add i32 %1660, 4
  %1662 = mul i32 %.298589, 3
  %.not9145 = icmp ult i32 %1661, %1662
  br i1 %.not9145, label %1665, label %1663

1663:                                             ; preds = %.loopexit9384
  %1664 = shl i32 %.298589, 1
  br label %1674

1665:                                             ; preds = %.loopexit9384
  %1666 = xor i32 %.168546, -1
  %1667 = add i32 %.298589, %1666
  %1668 = sub i32 %1667, %.10
  %1669 = lshr i32 %.298589, 3
  %.not9146 = icmp ugt i32 %1668, %1669
  br i1 %.not9146, label %1670, label %1674

1670:                                             ; preds = %1665
  %1671 = zext i32 %.248615 to i64
  %1672 = add nuw nsw i64 %1671, 8
  %1673 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1672)
  br label %.loopexit9360

1674:                                             ; preds = %1665, %1663
  %.338731 = phi i32 [ %1664, %1663 ], [ %.298589, %1665 ]
  %1675 = add i32 %.338731, -1
  %1676 = zext i32 %1675 to i64
  %1677 = lshr i64 %1676, 1
  %1678 = or i64 %1677, %1676
  %1679 = lshr i64 %1678, 2
  %1680 = or i64 %1679, %1678
  %1681 = lshr i64 %1680, 4
  %1682 = or i64 %1681, %1680
  %1683 = lshr i64 %1682, 8
  %1684 = or i64 %1683, %1682
  %1685 = lshr i64 %1684, 16
  %1686 = or i64 %1685, %1684
  %1687 = trunc nuw i64 %1686 to i32
  %1688 = add i32 %1687, 1
  %1689 = icmp ult i32 %1688, 65
  %1690 = select i1 %1689, i32 64, i32 %1688
  %1691 = mul i32 %1690, 24
  %1692 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1691) #5
  %1693 = add i32 %1691, %1692
  %.not9147 = icmp eq i32 %.18, 0
  %1694 = add i32 %1691, -24
  %1695 = udiv i32 %1694, 24
  %1696 = add nuw nsw i32 %1695, 1
  %1697 = and i32 %1696, 7
  %.not9148 = icmp eq i32 %1697, 0
  br i1 %.not9147, label %1721, label %1698

1698:                                             ; preds = %1674
  br i1 %.not9148, label %.loopexit9381, label %.preheader9380

.preheader9380:                                   ; preds = %1698, %.preheader9380
  %.348732 = phi i32 [ %1701, %.preheader9380 ], [ %1692, %1698 ]
  %.348682 = phi i32 [ %1702, %.preheader9380 ], [ 0, %1698 ]
  %1699 = zext i32 %.348732 to i64
  %1700 = add nuw nsw i64 %1699, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1700, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1699, i64 noundef 4294967295)
  %1701 = add i32 %.348732, 24
  %1702 = add nuw nsw i32 %.348682, 1
  %.not9152 = icmp eq i32 %1702, %1697
  br i1 %.not9152, label %.loopexit9381, label %.preheader9380

.loopexit9381:                                    ; preds = %.preheader9380, %1698
  %.358733 = phi i32 [ %1692, %1698 ], [ %1701, %.preheader9380 ]
  %1703 = icmp ugt i32 %1694, 167
  br i1 %1703, label %.preheader9378, label %.loopexit9379

.preheader9378:                                   ; preds = %.loopexit9381, %.preheader9378
  %.368734 = phi i32 [ %1720, %.preheader9378 ], [ %.358733, %.loopexit9381 ]
  %1704 = zext i32 %.368734 to i64
  %1705 = add nuw nsw i64 %1704, 168
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1705, i64 noundef 4294967295)
  %1706 = add nuw nsw i64 %1704, 144
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1706, i64 noundef 4294967295)
  %1707 = add nuw nsw i64 %1704, 120
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1707, i64 noundef 4294967295)
  %1708 = add nuw nsw i64 %1704, 96
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1708, i64 noundef 4294967295)
  %1709 = add nuw nsw i64 %1704, 72
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1709, i64 noundef 4294967295)
  %1710 = add nuw nsw i64 %1704, 48
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1710, i64 noundef 4294967295)
  %1711 = add nuw nsw i64 %1704, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1711, i64 noundef 4294967295)
  %1712 = add nuw nsw i64 %1704, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1712, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1704, i64 noundef 4294967295)
  %1713 = add nuw nsw i64 %1704, 176
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1713, i32 noundef 0)
  %1714 = add nuw nsw i64 %1704, 152
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1714, i32 noundef 0)
  %1715 = add nuw nsw i64 %1704, 128
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1715, i32 noundef 0)
  %1716 = add nuw nsw i64 %1704, 104
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1716, i32 noundef 0)
  %1717 = add nuw nsw i64 %1704, 80
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1717, i32 noundef 0)
  %1718 = add nuw nsw i64 %1704, 56
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1718, i32 noundef 0)
  %1719 = add nuw nsw i64 %1704, 32
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1719, i32 noundef 0)
  %1720 = add i32 %.368734, 192
  %.not9153 = icmp eq i32 %1720, %1693
  br i1 %.not9153, label %.loopexit9379, label %.preheader9378

.loopexit9379:                                    ; preds = %.preheader9378, %.loopexit9381
  br i1 %.not9136, label %.loopexit9377, label %1744

1721:                                             ; preds = %1674
  br i1 %.not9148, label %.loopexit9376, label %.preheader9375

.preheader9375:                                   ; preds = %1721, %.preheader9375
  %.378735 = phi i32 [ %1724, %.preheader9375 ], [ %1692, %1721 ]
  %.358683 = phi i32 [ %1725, %.preheader9375 ], [ 0, %1721 ]
  %1722 = zext i32 %.378735 to i64
  %1723 = add nuw nsw i64 %1722, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1723, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1722, i64 noundef 4294967295)
  %1724 = add i32 %.378735, 24
  %1725 = add nuw nsw i32 %.358683, 1
  %.not9149 = icmp eq i32 %1725, %1697
  br i1 %.not9149, label %.loopexit9376, label %.preheader9375

.loopexit9376:                                    ; preds = %.preheader9375, %1721
  %.388736 = phi i32 [ %1692, %1721 ], [ %1724, %.preheader9375 ]
  %1726 = icmp ult i32 %1694, 168
  br i1 %1726, label %.loopexit9374, label %.preheader9373

.preheader9373:                                   ; preds = %.loopexit9376, %.preheader9373
  %.398737 = phi i32 [ %1743, %.preheader9373 ], [ %.388736, %.loopexit9376 ]
  %1727 = zext i32 %.398737 to i64
  %1728 = add nuw nsw i64 %1727, 168
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1728, i64 noundef 4294967295)
  %1729 = add nuw nsw i64 %1727, 144
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1729, i64 noundef 4294967295)
  %1730 = add nuw nsw i64 %1727, 120
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1730, i64 noundef 4294967295)
  %1731 = add nuw nsw i64 %1727, 96
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1731, i64 noundef 4294967295)
  %1732 = add nuw nsw i64 %1727, 72
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1732, i64 noundef 4294967295)
  %1733 = add nuw nsw i64 %1727, 48
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1733, i64 noundef 4294967295)
  %1734 = add nuw nsw i64 %1727, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1734, i64 noundef 4294967295)
  %1735 = add nuw nsw i64 %1727, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1735, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1727, i64 noundef 4294967295)
  %1736 = add nuw nsw i64 %1727, 176
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1736, i32 noundef 0)
  %1737 = add nuw nsw i64 %1727, 152
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1737, i32 noundef 0)
  %1738 = add nuw nsw i64 %1727, 128
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1738, i32 noundef 0)
  %1739 = add nuw nsw i64 %1727, 104
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1739, i32 noundef 0)
  %1740 = add nuw nsw i64 %1727, 80
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1740, i32 noundef 0)
  %1741 = add nuw nsw i64 %1727, 56
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1741, i32 noundef 0)
  %1742 = add nuw nsw i64 %1727, 32
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1742, i32 noundef 0)
  %1743 = add i32 %.398737, 192
  %.not9150 = icmp eq i32 %1743, %1693
  br i1 %.not9150, label %.loopexit9374, label %.preheader9373

1744:                                             ; preds = %.loopexit9379
  %1745 = mul i32 %.298589, 24
  %1746 = add i32 %.18, %1745
  %1747 = add i32 %1690, -1
  br label %1748

1748:                                             ; preds = %1822, %1744
  %.258616 = phi i32 [ %.18, %1744 ], [ %1823, %1822 ]
  %.178547 = phi i32 [ 0, %1744 ], [ %.188548, %1822 ]
  %1749 = zext i32 %.258616 to i64
  %1750 = add nuw nsw i64 %1749, 8
  %1751 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1750)
  %.not9154 = icmp ne i32 %1751, 0
  %1752 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1749)
  %1753 = icmp ugt i64 %1752, 4294967295
  %.not9156 = or i1 %.not9154, %1753
  br i1 %.not9156, label %1754, label %1822

1754:                                             ; preds = %1748
  %1755 = and i32 %1751, %1747
  %1756 = lshr i64 %1752, 32
  %.not9157 = icmp ult i64 %1752, 4294967296
  br i1 %.not9157, label %1786, label %1757

1757:                                             ; preds = %1754
  %1758 = trunc nuw i64 %1756 to i32
  %1759 = trunc i64 %1752 to i32
  %1760 = shl i32 %1758, 1
  %1761 = add i32 %1760, %1759
  br label %1762

1762:                                             ; preds = %1782, %1757
  %.108395 = phi i32 [ 1, %1757 ], [ %1785, %1782 ]
  %.118379 = phi i32 [ %1755, %1757 ], [ %1784, %1782 ]
  %1763 = mul i32 %.118379, 24
  %1764 = add i32 %1763, %1692
  %1765 = zext i32 %1764 to i64
  %1766 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1765)
  %1767 = add nuw nsw i64 %1765, 8
  %1768 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1767)
  %.not9160 = icmp eq i32 %1768, %1751
  %1769 = lshr i64 %1766, 32
  %.not9161 = icmp eq i64 %1756, %1769
  %or.cond9288 = select i1 %.not9160, i1 %.not9161, i1 false
  br i1 %or.cond9288, label %1770, label %.loopexit9357

1770:                                             ; preds = %1762
  %1771 = trunc i64 %1766 to i32
  br label %1772

1772:                                             ; preds = %1777, %1770
  %.408738 = phi i32 [ %1771, %1770 ], [ %1778, %1777 ]
  %.368684 = phi i32 [ %1759, %1770 ], [ %1779, %1777 ]
  %1773 = zext i32 %.368684 to i64
  %1774 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %1773)
  %1775 = zext i32 %.408738 to i64
  %1776 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %1775)
  %.not9162 = icmp eq i32 %1774, %1776
  br i1 %.not9162, label %1777, label %.loopexit9357

1777:                                             ; preds = %1772
  %1778 = add i32 %.408738, 2
  %1779 = add i32 %.368684, 2
  %.not9163 = icmp eq i32 %1779, %1761
  br i1 %.not9163, label %.loopexit9358, label %1772

.loopexit9357:                                    ; preds = %1772, %1762
  %.not9164 = icmp eq i32 %1768, 0
  %1780 = icmp ult i64 %1766, 4294967296
  %1781 = and i1 %1780, %.not9164
  br i1 %1781, label %.loopexit9358, label %1782

1782:                                             ; preds = %.loopexit9357
  %1783 = add i32 %.118379, %.108395
  %1784 = and i32 %1783, %1747
  %1785 = add i32 %.108395, 1
  br label %1762

1786:                                             ; preds = %1754
  %1787 = mul i32 %1755, 24
  %1788 = add i32 %1787, %1692
  %1789 = zext i32 %1788 to i64
  %1790 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1789)
  %1791 = add nuw nsw i64 %1789, 8
  %1792 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1791)
  %1793 = icmp eq i32 %1751, %1792
  %1794 = icmp ult i64 %1790, 4294967296
  %.not9158 = icmp eq i32 %1792, 0
  %1795 = or i1 %1793, %.not9158
  %or.cond9289 = and i1 %1794, %1795
  br i1 %or.cond9289, label %.loopexit9358, label %.preheader9361

.preheader9361:                                   ; preds = %1786, %1807
  %.378685 = phi i32 [ %1808, %1807 ], [ 1, %1786 ]
  %.128380 = phi i32 [ %1797, %1807 ], [ %1755, %1786 ]
  %1796 = add i32 %.128380, %.378685
  %1797 = and i32 %1796, %1747
  %1798 = mul i32 %1797, 24
  %1799 = add i32 %1798, %1692
  %1800 = zext i32 %1799 to i64
  %1801 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1800)
  %1802 = add nuw nsw i64 %1800, 8
  %1803 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1802)
  %1804 = icmp eq i32 %1751, %1803
  %1805 = icmp ult i64 %1801, 4294967296
  %1806 = and i1 %1805, %1804
  br i1 %1806, label %.loopexit9358, label %1807

1807:                                             ; preds = %.preheader9361
  %1808 = add i32 %.378685, 1
  %.not9159 = icmp ne i32 %1803, 0
  %1809 = icmp ugt i64 %1801, 4294967295
  %or.cond9290 = select i1 %.not9159, i1 true, i1 %1809
  br i1 %or.cond9290, label %.preheader9361, label %.loopexit9358

.loopexit9358:                                    ; preds = %.loopexit9357, %1807, %.preheader9361, %1777, %1786
  %.pre-phi9808 = phi i64 [ %1791, %1786 ], [ %1767, %1777 ], [ %1802, %.preheader9361 ], [ %1802, %1807 ], [ %1767, %.loopexit9357 ]
  %.pre-phi9807 = phi i64 [ %1789, %1786 ], [ %1765, %1777 ], [ %1800, %.preheader9361 ], [ %1800, %1807 ], [ %1765, %.loopexit9357 ]
  %1810 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1749)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9807, i64 noundef %1810)
  %1811 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1750)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9808, i32 noundef %1811)
  %1812 = add nuw nsw i64 %.pre-phi9807, 20
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1812, i32 noundef 0)
  %1813 = add nuw nsw i64 %.pre-phi9807, 12
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1813, i64 noundef 0)
  %1814 = add nuw nsw i64 %1749, 12
  %1815 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1814)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1813, i32 noundef %1815)
  %1816 = add nuw nsw i64 %1749, 16
  %1817 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1816)
  %1818 = add nuw nsw i64 %.pre-phi9807, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1818, i32 noundef %1817)
  %1819 = add nuw nsw i64 %1749, 20
  %1820 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1819)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1812, i32 noundef %1820)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1819, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1814, i64 noundef 0)
  %1821 = add i32 %.178547, 1
  br label %1822

1822:                                             ; preds = %.loopexit9358, %1748
  %.188548 = phi i32 [ %1821, %.loopexit9358 ], [ %.178547, %1748 ]
  %1823 = add i32 %.258616, 24
  %.not9165 = icmp eq i32 %1823, %1746
  br i1 %.not9165, label %.loopexit9377, label %1748

.loopexit9377:                                    ; preds = %1822, %.loopexit9379
  %.198549 = phi i32 [ 0, %.loopexit9379 ], [ %.188548, %1822 ]
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.18)
  br label %.loopexit9374

.loopexit9374:                                    ; preds = %.preheader9373, %.loopexit9376, %.loopexit9377
  %.208550 = phi i32 [ %.198549, %.loopexit9377 ], [ 0, %.loopexit9376 ], [ 0, %.preheader9373 ]
  %1824 = add i32 %1690, -1
  %1825 = and i32 %1824, %1573
  %.not9166 = icmp eq i32 %1551, %1565
  br i1 %.not9166, label %1849, label %.preheader10062

.preheader10062:                                  ; preds = %.loopexit9374, %1845
  %.31 = phi i32 [ %1847, %1845 ], [ %1825, %.loopexit9374 ]
  %.78441 = phi i32 [ %1848, %1845 ], [ 1, %.loopexit9374 ]
  %1826 = mul i32 %.31, 24
  %1827 = add i32 %1826, %1692
  %1828 = zext i32 %1827 to i64
  %1829 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1828)
  %1830 = add nuw nsw i64 %1828, 8
  %1831 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1830)
  %.not9169 = icmp eq i32 %1831, %1573
  %1832 = lshr i64 %1829, 32
  %1833 = trunc nuw i64 %1832 to i32
  %.not9170 = icmp eq i32 %1606, %1833
  %or.cond9292 = select i1 %.not9169, i1 %.not9170, i1 false
  br i1 %or.cond9292, label %1834, label %.loopexit9359

1834:                                             ; preds = %.preheader10062
  %1835 = trunc i64 %1829 to i32
  br label %1836

1836:                                             ; preds = %1841, %1834
  %.418739 = phi i32 [ %1835, %1834 ], [ %1842, %1841 ]
  %.388686 = phi i32 [ %1567, %1834 ], [ %1843, %1841 ]
  %1837 = zext i32 %.388686 to i64
  %1838 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %1837)
  %1839 = zext i32 %.418739 to i64
  %1840 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %1839)
  %.not9171 = icmp eq i32 %1838, %1840
  br i1 %.not9171, label %1841, label %.loopexit9359

1841:                                             ; preds = %1836
  %1842 = add i32 %.418739, 2
  %1843 = add i32 %.388686, 2
  %.not9172 = icmp eq i32 %1843, %1559
  br i1 %.not9172, label %.loopexit9360, label %1836

.loopexit9359:                                    ; preds = %1836, %.preheader10062
  %.not9174 = icmp eq i32 %1831, 0
  %1844 = icmp ult i64 %1829, 4294967296
  %or.cond9293 = select i1 %.not9174, i1 %1844, i1 false
  br i1 %or.cond9293, label %.loopexit9371, label %1845

1845:                                             ; preds = %.loopexit9359
  %1846 = add i32 %.78441, %.31
  %1847 = and i32 %1846, %1824
  %1848 = add i32 %.78441, 1
  br label %.preheader10062

1849:                                             ; preds = %.loopexit9374
  %1850 = mul i32 %1825, 24
  %1851 = add i32 %1850, %1692
  %1852 = zext i32 %1851 to i64
  %1853 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1852)
  %1854 = add nuw nsw i64 %1852, 8
  %1855 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1854)
  %1856 = icmp eq i32 %1573, %1855
  %1857 = icmp ult i64 %1853, 4294967296
  %or.cond9294 = select i1 %1856, i1 %1857, i1 false
  br i1 %or.cond9294, label %.loopexit9360, label %1858

1858:                                             ; preds = %1849
  %.not9167 = icmp eq i32 %1855, 0
  %or.cond9295 = select i1 %.not9167, i1 %1857, i1 false
  br i1 %or.cond9295, label %.loopexit9371, label %.preheader9369

.preheader9369:                                   ; preds = %1858, %1869
  %.398687 = phi i32 [ %1870, %1869 ], [ 1, %1858 ]
  %.32 = phi i32 [ %1860, %1869 ], [ %1825, %1858 ]
  %1859 = add i32 %.32, %.398687
  %1860 = and i32 %1859, %1824
  %1861 = mul i32 %1860, 24
  %1862 = add i32 %1861, %1692
  %1863 = zext i32 %1862 to i64
  %1864 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1863)
  %1865 = add nuw nsw i64 %1863, 8
  %1866 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1865)
  %1867 = icmp eq i32 %1573, %1866
  %1868 = icmp ult i64 %1864, 4294967296
  %or.cond9296 = select i1 %1867, i1 %1868, i1 false
  br i1 %or.cond9296, label %.loopexit9360, label %1869

1869:                                             ; preds = %.preheader9369
  %1870 = add i32 %.398687, 1
  %.not9168 = icmp ne i32 %1866, 0
  %1871 = icmp ugt i64 %1864, 4294967295
  %or.cond9297 = select i1 %.not9168, i1 true, i1 %1871
  br i1 %or.cond9297, label %.preheader9369, label %.loopexit9371

.loopexit9360:                                    ; preds = %.preheader9369, %1841, %1849, %1670
  %.428740 = phi i32 [ %1673, %1670 ], [ %1573, %1849 ], [ %1573, %1841 ], [ %1573, %.preheader9369 ]
  %.288619 = phi i32 [ %.248615, %1670 ], [ %1851, %1849 ], [ %1827, %1841 ], [ %1862, %.preheader9369 ]
  %.33 = phi i32 [ %.298589, %1670 ], [ %1690, %1849 ], [ %1690, %1841 ], [ %1690, %.preheader9369 ]
  %.218551 = phi i32 [ %.168546, %1670 ], [ %.208550, %1849 ], [ %.208550, %1841 ], [ %.208550, %.preheader9369 ]
  %.19 = phi i32 [ %.18, %1670 ], [ %1692, %1849 ], [ %1692, %1841 ], [ %1692, %.preheader9369 ]
  %.13 = phi i32 [ %.10, %1670 ], [ 0, %1849 ], [ 0, %1841 ], [ 0, %.preheader9369 ]
  %.not9173 = icmp eq i32 %.428740, 0
  %1872 = zext i32 %.288619 to i64
  br i1 %.not9173, label %1873, label %.loopexit9360._crit_edge

1873:                                             ; preds = %.loopexit9360
  %1874 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1872)
  %1875 = icmp ult i64 %1874, 4294967296
  br i1 %1875, label %.loopexit9371, label %.loopexit9360._crit_edge

.loopexit9360._crit_edge:                         ; preds = %.loopexit9360, %1873
  %1876 = add i32 %.13, -1
  br label %.loopexit9371

.loopexit9371:                                    ; preds = %.loopexit9359, %1869, %1858, %1873, %.loopexit9360._crit_edge
  %.pre-phi9805 = phi i64 [ %1852, %1858 ], [ %1872, %1873 ], [ %1872, %.loopexit9360._crit_edge ], [ %1863, %1869 ], [ %1828, %.loopexit9359 ]
  %1877 = phi i32 [ %1551, %1858 ], [ %1565, %1873 ], [ %1565, %.loopexit9360._crit_edge ], [ %1551, %1869 ], [ %1565, %.loopexit9359 ]
  %.34 = phi i32 [ %1690, %1858 ], [ %.33, %1873 ], [ %.33, %.loopexit9360._crit_edge ], [ %1690, %1869 ], [ %1690, %.loopexit9359 ]
  %.228552 = phi i32 [ %.208550, %1858 ], [ %.218551, %1873 ], [ %.218551, %.loopexit9360._crit_edge ], [ %.208550, %1869 ], [ %.208550, %.loopexit9359 ]
  %.20 = phi i32 [ %1692, %1858 ], [ %.19, %1873 ], [ %.19, %.loopexit9360._crit_edge ], [ %1692, %1869 ], [ %1692, %.loopexit9359 ]
  %.14 = phi i32 [ 0, %1858 ], [ %.13, %1873 ], [ %1876, %.loopexit9360._crit_edge ], [ 0, %1869 ], [ 0, %.loopexit9359 ]
  %1878 = add nuw nsw i64 %.pre-phi9805, 12
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1878, i64 noundef 0)
  %1879 = add nuw nsw i64 %.pre-phi9805, 20
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1879, i32 noundef 0)
  %1880 = add nuw nsw i64 %.pre-phi9805, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1880, i32 noundef %1573)
  %1881 = zext i32 %1606 to i64
  %1882 = shl nuw i64 %1881, 32
  %1883 = or disjoint i64 %1882, %1568
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9805, i64 noundef %1883)
  %1884 = add i32 %.228552, 1
  br label %.loopexit9365

.loopexit9365:                                    ; preds = %.preheader9382, %1625, %1634, %.loopexit9371
  %.pre-phi9806 = phi i64 [ %1637, %1634 ], [ %.pre-phi9805, %.loopexit9371 ], [ %1612, %1625 ], [ %1650, %.preheader9382 ]
  %1885 = phi i32 [ %1551, %1634 ], [ %1877, %.loopexit9371 ], [ %1565, %1625 ], [ %1551, %.preheader9382 ]
  %.35 = phi i32 [ %.298589, %1634 ], [ %.34, %.loopexit9371 ], [ %.298589, %1625 ], [ %.298589, %.preheader9382 ]
  %.238553 = phi i32 [ %.168546, %1634 ], [ %1884, %.loopexit9371 ], [ %.168546, %1625 ], [ %.168546, %.preheader9382 ]
  %.21 = phi i32 [ %.18, %1634 ], [ %.20, %.loopexit9371 ], [ %.18, %1625 ], [ %.18, %.preheader9382 ]
  %.15 = phi i32 [ %.10, %1634 ], [ %.14, %.loopexit9371 ], [ %.10, %1625 ], [ %.10, %.preheader9382 ]
  %1886 = add nuw nsw i64 %.pre-phi9806, 16
  %1887 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1886)
  %1888 = add nuw nsw i64 %.pre-phi9806, 20
  %1889 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1888)
  %1890 = icmp ult i32 %1887, %1889
  br i1 %1890, label %1891, label %1894

1891:                                             ; preds = %.loopexit9365
  %1892 = zext i32 %1887 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1892, i32 noundef %.118493)
  %1893 = add i32 %1887, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1886, i32 noundef %1893)
  br label %1919

1894:                                             ; preds = %.loopexit9365
  %1895 = add nuw nsw i64 %.pre-phi9806, 12
  %1896 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1895)
  %1897 = sub i32 %1887, %1896
  %1898 = ashr i32 %1897, 2
  %1899 = add nsw i32 %1898, 1
  %1900 = icmp ugt i32 %1899, 1073741823
  br i1 %1900, label %.loopexit9345, label %1901

1901:                                             ; preds = %1894
  %1902 = sub i32 %1889, %1896
  %1903 = ashr i32 %1902, 1
  %1904 = tail call i32 @llvm.umax.i32(i32 %1903, i32 %1899)
  %1905 = icmp ugt i32 %1902, 2147483643
  %1906 = select i1 %1905, i32 1073741823, i32 %1904
  %.not9175 = icmp eq i32 %1906, 0
  br i1 %.not9175, label %._crit_edge9825, label %1907

1907:                                             ; preds = %1901
  %1908 = icmp ugt i32 %1906, 1073741823
  br i1 %1908, label %.loopexit9345, label %1909

1909:                                             ; preds = %1907
  %1910 = shl nuw i32 %1906, 2
  %1911 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1910) #5
  br label %._crit_edge9825

._crit_edge9825:                                  ; preds = %1901, %1909
  %.pre-phi9853 = phi i32 [ %1910, %1909 ], [ 0, %1901 ]
  %.5 = phi i32 [ %1911, %1909 ], [ 0, %1901 ]
  %1912 = and i32 %1897, -4
  %1913 = add i32 %.5, %1912
  %1914 = zext i32 %1913 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1914, i32 noundef %.118493)
  %1915 = tail call i32 @w2c_hermes_memmove(ptr noundef %0, i32 noundef %.5, i32 noundef %1896, i32 noundef %1897) #5
  %1916 = add i32 %1915, %.pre-phi9853
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1888, i32 noundef %1916)
  %1917 = add i32 %1913, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1886, i32 noundef %1917)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1895, i32 noundef %1915)
  %.not9176 = icmp eq i32 %1896, 0
  br i1 %.not9176, label %1919, label %1918

1918:                                             ; preds = %._crit_edge9825
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1896)
  br label %1919

1919:                                             ; preds = %._crit_edge9825, %1918, %1891
  %.not9177 = icmp eq i32 %1885, 0
  br i1 %.not9177, label %.loopexit9387, label %1560

.loopexit9387:                                    ; preds = %1919, %.loopexit9367, %.preheader9390
  %.36 = phi i32 [ %.288588, %.preheader9390 ], [ %.298589, %.loopexit9367 ], [ %.35, %1919 ]
  %.248554 = phi i32 [ %.158545, %.preheader9390 ], [ %.168546, %.loopexit9367 ], [ %.238553, %1919 ]
  %.22 = phi i32 [ %.178419, %.preheader9390 ], [ %.18, %.loopexit9367 ], [ %.21, %1919 ]
  %.16 = phi i32 [ %.98367, %.preheader9390 ], [ %.10, %.loopexit9367 ], [ %.15, %1919 ]
  %1920 = add i32 %.118493, 52
  %.not9178 = icmp eq i32 %1339, %1920
  br i1 %.not9178, label %1921, label %.preheader9390

1921:                                             ; preds = %.loopexit9387
  %.not9179 = icmp eq i32 %.248554, 0
  br i1 %.not9179, label %2019, label %1922

1922:                                             ; preds = %1921
  %1923 = icmp ugt i32 %.248554, 214748364
  br i1 %1923, label %.loopexit9345, label %1924

1924:                                             ; preds = %1922
  %1925 = mul nuw i32 %.248554, 20
  %1926 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1925) #5
  %1927 = mul i32 %.36, 24
  %1928 = add i32 %.22, %1927
  %.not9180 = icmp eq i32 %.36, 0
  br i1 %.not9180, label %.loopexit9355, label %.preheader9354

.preheader9354:                                   ; preds = %1924, %1935
  %.318622 = phi i32 [ %1936, %1935 ], [ %.22, %1924 ]
  %1929 = zext i32 %.318622 to i64
  %1930 = add nuw nsw i64 %1929, 8
  %1931 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1930)
  %.not9181 = icmp eq i32 %1931, 0
  br i1 %.not9181, label %1932, label %.loopexit9355

1932:                                             ; preds = %.preheader9354
  %1933 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1929)
  %1934 = icmp ugt i64 %1933, 4294967295
  br i1 %1934, label %.loopexit9355, label %1935

1935:                                             ; preds = %1932
  %1936 = add i32 %.318622, 24
  %.not9182 = icmp eq i32 %1936, %1928
  br i1 %.not9182, label %.loopexit9349, label %.preheader9354

.loopexit9355:                                    ; preds = %1932, %.preheader9354, %1924
  %.328623 = phi i32 [ %.22, %1924 ], [ %.318622, %.preheader9354 ], [ %.318622, %1932 ]
  %1937 = icmp eq i32 %.328623, %1928
  br i1 %1937, label %.loopexit9349, label %1938

1938:                                             ; preds = %.loopexit9355
  %1939 = add i32 %1926, %1925
  br label %.backedge

.backedge:                                        ; preds = %.backedge.backedge, %1938
  %.168642 = phi i32 [ %1926, %1938 ], [ %.88428, %.backedge.backedge ]
  %.338624 = phi i32 [ %.328623, %1938 ], [ %.338624.be, %.backedge.backedge ]
  %.258555 = phi i32 [ %1926, %1938 ], [ %.428690, %.backedge.backedge ]
  %.128494 = phi i32 [ %1939, %1938 ], [ %.138495, %.backedge.backedge ]
  %1940 = zext i32 %.338624 to i64
  %1941 = add nuw nsw i64 %1940, 20
  %1942 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1941)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1941, i32 noundef 0)
  %1943 = add nuw nsw i64 %1940, 16
  %1944 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1943)
  %1945 = add nuw nsw i64 %1940, 12
  %1946 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1945)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1945, i64 noundef 0)
  %1947 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1940)
  %1948 = icmp ult i32 %.168642, %.128494
  br i1 %1948, label %1949, label %1954

1949:                                             ; preds = %.backedge
  %1950 = zext i32 %.168642 to i64
  %1951 = add nuw nsw i64 %1950, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1951, i32 noundef %1946)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1950, i64 noundef %1947)
  %1952 = add nuw nsw i64 %1950, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1952, i32 noundef %1942)
  %1953 = add nuw nsw i64 %1950, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1953, i32 noundef %1944)
  br label %2001

1954:                                             ; preds = %.backedge
  %1955 = sub i32 %.168642, %.258555
  %1956 = sdiv i32 %1955, 20
  %1957 = add nsw i32 %1956, 1
  %1958 = icmp ugt i32 %1957, 214748364
  br i1 %1958, label %.loopexit9345, label %1959

1959:                                             ; preds = %1954
  %1960 = sub i32 %.128494, %.258555
  %1961 = sdiv i32 %1960, 20
  %1962 = shl nsw i32 %1961, 1
  %1963 = tail call i32 @llvm.umax.i32(i32 %1962, i32 %1957)
  %1964 = icmp ugt i32 %1961, 107374181
  %1965 = select i1 %1964, i32 214748364, i32 %1963
  %1966 = icmp ugt i32 %1965, 214748364
  br i1 %1966, label %.loopexit9345, label %1967

1967:                                             ; preds = %1959
  %1968 = mul nuw i32 %1965, 20
  %1969 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1968) #5
  %1970 = mul nsw i32 %1956, 20
  %1971 = add i32 %1969, %1970
  %1972 = zext i32 %1971 to i64
  %1973 = add nuw nsw i64 %1972, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1973, i32 noundef %1946)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1972, i64 noundef %1947)
  %1974 = add nuw nsw i64 %1972, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1974, i32 noundef %1942)
  %1975 = add nuw nsw i64 %1972, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1975, i32 noundef %1944)
  %1976 = add i32 %1969, %1968
  %.not9183 = icmp eq i32 %.168642, %.258555
  br i1 %.not9183, label %2000, label %.preheader9351

.preheader9351:                                   ; preds = %1967, %.preheader9351
  %.438741 = phi i32 [ %1978, %.preheader9351 ], [ %.168642, %1967 ]
  %.408688 = phi i32 [ %1977, %.preheader9351 ], [ %1971, %1967 ]
  %1977 = add i32 %.408688, -20
  %1978 = add i32 %.438741, -20
  %1979 = zext i32 %1978 to i64
  %1980 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %1979)
  %1981 = zext i32 %1977 to i64
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1981, i64 noundef %1980)
  %1982 = add nuw nsw i64 %1979, 8
  %1983 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1982)
  %1984 = add nuw nsw i64 %1981, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1984, i32 noundef %1983)
  %1985 = add nuw nsw i64 %1979, 12
  %1986 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1985)
  %1987 = add nuw nsw i64 %1981, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1987, i32 noundef %1986)
  %1988 = add nuw nsw i64 %1979, 16
  %1989 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1988)
  %1990 = add nuw nsw i64 %1981, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1990, i32 noundef %1989)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1988, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1982, i64 noundef 0)
  %.not9184 = icmp eq i32 %1978, %.258555
  br i1 %.not9184, label %.preheader9350, label %.preheader9351

.preheader9350:                                   ; preds = %.preheader9351, %1998
  %.178643 = phi i32 [ %1991, %1998 ], [ %.168642, %.preheader9351 ]
  %1991 = add i32 %.178643, -20
  %1992 = zext i32 %1991 to i64
  %1993 = add nuw nsw i64 %1992, 8
  %1994 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1993)
  %.not9185 = icmp eq i32 %1994, 0
  br i1 %.not9185, label %1998, label %1995

1995:                                             ; preds = %.preheader9350
  %1996 = add i32 %.178643, -8
  %1997 = zext i32 %1996 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1997, i32 noundef %1994)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1994)
  br label %1998

1998:                                             ; preds = %1995, %.preheader9350
  %.not9186 = icmp eq i32 %1991, %.258555
  br i1 %.not9186, label %1999, label %.preheader9350

1999:                                             ; preds = %1998
  %.not9187 = icmp eq i32 %.258555, 0
  br i1 %.not9187, label %2001, label %2000

2000:                                             ; preds = %1999, %1967
  %.418689 = phi i32 [ %1977, %1999 ], [ %1971, %1967 ]
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.258555)
  br label %2001

2001:                                             ; preds = %1999, %2000, %1949
  %.428690 = phi i32 [ %.258555, %1949 ], [ %1977, %1999 ], [ %.418689, %2000 ]
  %.138495 = phi i32 [ %.128494, %1949 ], [ %1976, %1999 ], [ %1976, %2000 ]
  %.88428.in = phi i32 [ %.168642, %1949 ], [ %1971, %1999 ], [ %1971, %2000 ]
  %.88428 = add i32 %.88428.in, 20
  %2002 = add i32 %.338624, 24
  %2003 = icmp eq i32 %2002, %1928
  br i1 %2003, label %.loopexit9349, label %2004

2004:                                             ; preds = %2001
  %2005 = add nuw nsw i64 %1940, 32
  %2006 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2005)
  %.not9188 = icmp eq i32 %2006, 0
  br i1 %.not9188, label %.preheader9347, label %.backedge.backedge

.backedge.backedge:                               ; preds = %.preheader9347, %2013, %2004
  %.338624.be = phi i32 [ %2002, %2004 ], [ %.448742, %.preheader9347 ], [ %2011, %2013 ]
  br label %.backedge

.preheader9347:                                   ; preds = %2004, %2013
  %.448742 = phi i32 [ %2011, %2013 ], [ %2002, %2004 ]
  %2007 = zext i32 %.448742 to i64
  %2008 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %2007)
  %2009 = icmp ugt i64 %2008, 4294967295
  br i1 %2009, label %.backedge.backedge, label %2010

2010:                                             ; preds = %.preheader9347
  %2011 = add i32 %.448742, 24
  %2012 = icmp eq i32 %2011, %1928
  br i1 %2012, label %.loopexit9349, label %2013

2013:                                             ; preds = %2010
  %2014 = add nuw nsw i64 %2007, 32
  %2015 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2014)
  %.not9189 = icmp eq i32 %2015, 0
  br i1 %.not9189, label %.preheader9347, label %.backedge.backedge

.loopexit9349:                                    ; preds = %1935, %2001, %2010, %.loopexit9355
  %.268556 = phi i32 [ %1926, %.loopexit9355 ], [ %.428690, %2010 ], [ %.428690, %2001 ], [ %1926, %1935 ]
  %.98429 = phi i32 [ %1926, %.loopexit9355 ], [ %.88428, %2010 ], [ %.88428, %2001 ], [ %1926, %1935 ]
  %.98429.fr = freeze i32 %.98429
  %2016 = sub i32 %.98429.fr, %.268556
  %2017 = srem i32 %2016, 20
  %2018 = sub i32 %.98429.fr, %2017
  tail call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AradixQuicksort0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x200x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %.268556, i32 noundef %2018, i32 noundef 0)
  br label %2019

2019:                                             ; preds = %1921, %.loopexit9391, %.loopexit9349
  %.37 = phi i32 [ %.36, %.loopexit9349 ], [ %.278587, %.loopexit9391 ], [ %.36, %1921 ]
  %.278557 = phi i32 [ %.268556, %.loopexit9349 ], [ 0, %.loopexit9391 ], [ 0, %1921 ]
  %.108430 = phi i32 [ %.98429.fr, %.loopexit9349 ], [ 0, %.loopexit9391 ], [ 0, %1921 ]
  %.23 = phi i32 [ %.22, %.loopexit9349 ], [ %.168418, %.loopexit9391 ], [ %.22, %1921 ]
  %.not9191 = icmp eq i32 %.37, 0
  br i1 %.not9191, label %.loopexit9346, label %2020

2020:                                             ; preds = %2019
  %2021 = mul i32 %.37, 24
  %2022 = add i32 %.23, %2021
  br label %2023

2023:                                             ; preds = %2035, %2020
  %.458743 = phi i32 [ %.23, %2020 ], [ %2036, %2035 ]
  %2024 = zext i32 %.458743 to i64
  %2025 = add nuw nsw i64 %2024, 8
  %2026 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2025)
  %.not9192 = icmp eq i32 %2026, 0
  br i1 %.not9192, label %2027, label %2030

2027:                                             ; preds = %2023
  %2028 = tail call i64 @i64_load(ptr noundef nonnull %9, i64 noundef %2024)
  %2029 = icmp ult i64 %2028, 4294967296
  br i1 %2029, label %2035, label %2030

2030:                                             ; preds = %2027, %2023
  %2031 = add nuw nsw i64 %2024, 12
  %2032 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2031)
  %.not9193 = icmp eq i32 %2032, 0
  br i1 %.not9193, label %2035, label %2033

2033:                                             ; preds = %2030
  %2034 = add nuw nsw i64 %2024, 16
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2034, i32 noundef %2032)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2032)
  br label %2035

2035:                                             ; preds = %2030, %2027, %2033
  %2036 = add i32 %.458743, 24
  %.not9194 = icmp eq i32 %2036, %2022
  br i1 %.not9194, label %.loopexit9346, label %2023

.loopexit9346:                                    ; preds = %2035, %2019
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.23)
  br i1 %1548, label %2516, label %2037

2037:                                             ; preds = %.loopexit9346
  %2038 = sub i32 %.108430, %.278557
  %2039 = srem i32 %2038, 20
  %2040 = sub i32 %.108430, %2039
  br label %2041

2041:                                             ; preds = %.loopexit9344, %2037
  %.438691 = phi i32 [ %1307, %2037 ], [ %2256, %.loopexit9344 ]
  %.108474 = phi i32 [ 0, %2037 ], [ %.168480, %.loopexit9344 ]
  %.128459 = phi i32 [ 0, %2037 ], [ %.168463, %.loopexit9344 ]
  %.24 = phi i32 [ 0, %2037 ], [ %.28, %.loopexit9344 ]
  %2042 = zext i32 %.438691 to i64
  %2043 = add nuw nsw i64 %2042, 8
  %2044 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2043)
  %.not9196 = icmp eq i32 %2044, 0
  br i1 %.not9196, label %.loopexit9344, label %2045

2045:                                             ; preds = %2041
  %2046 = add nuw nsw i64 %2042, 4
  %2047 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2046)
  %2048 = add nuw nsw i64 %2042, 16
  %2049 = add nuw nsw i64 %2042, 20
  %2050 = zext i32 %2044 to i64
  br label %2051

2051:                                             ; preds = %.loopexit9341, %2045
  %indvars.iv9794 = phi i64 [ %indvars.iv.next9795, %.loopexit9341 ], [ 0, %2045 ]
  %.38 = phi i32 [ %.41, %.loopexit9341 ], [ %2040, %2045 ]
  %.118475 = phi i32 [ %.158479, %.loopexit9341 ], [ %.108474, %2045 ]
  %.138460 = phi i32 [ %.158462, %.loopexit9341 ], [ %.128459, %2045 ]
  %.25 = phi i32 [ %.27, %.loopexit9341 ], [ %.24, %2045 ]
  %.118396 = phi i32 [ %.148399, %.loopexit9341 ], [ %.278557, %2045 ]
  %2052 = trunc nuw i64 %indvars.iv9794 to i32
  %2053 = shl i32 %2052, 1
  %2054 = add i32 %2053, %2047
  %2055 = zext i32 %2054 to i64
  %2056 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %2055)
  %.not9197 = icmp eq i32 %.38, %.118396
  br i1 %.not9197, label %.loopexit9343, label %2057

2057:                                             ; preds = %2051
  %2058 = sub i32 %.38, %.118396
  %2059 = sdiv i32 %2058, 20
  br label %2060

2060:                                             ; preds = %2078, %2057
  %.468744 = phi i32 [ %2059, %2057 ], [ %.6, %2078 ]
  %.128397 = phi i32 [ %.118396, %2057 ], [ %.138398, %2078 ]
  %2061 = lshr i32 %.468744, 1
  %2062 = mul i32 %2061, 20
  %2063 = add i32 %2062, %.128397
  %2064 = zext i32 %2063 to i64
  %2065 = add nuw nsw i64 %2064, 4
  %2066 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2065)
  %2067 = zext i32 %2066 to i64
  %.not9198 = icmp ult i64 %indvars.iv9794, %2067
  br i1 %.not9198, label %2068, label %2074

2068:                                             ; preds = %2060
  %2069 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2064)
  %2070 = add i32 %2069, %2053
  %2071 = zext i32 %2070 to i64
  %2072 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %2071)
  %2073 = icmp ult i32 %2072, %2056
  br i1 %2073, label %2074, label %2078

2074:                                             ; preds = %2068, %2060
  %2075 = add i32 %2063, 20
  %2076 = xor i32 %2061, -1
  %2077 = add i32 %.468744, %2076
  br label %2078

2078:                                             ; preds = %2068, %2074
  %.138398 = phi i32 [ %2075, %2074 ], [ %.128397, %2068 ]
  %.6 = phi i32 [ %2077, %2074 ], [ %2061, %2068 ]
  %.not9199 = icmp eq i32 %.6, 0
  br i1 %.not9199, label %.loopexit9343, label %2060

.loopexit9343:                                    ; preds = %2078, %2051
  %.148399 = phi i32 [ %.38, %2051 ], [ %.138398, %2078 ]
  %.not9200 = icmp eq i32 %.38, %.148399
  br i1 %.not9200, label %.loopexit9342, label %2079

2079:                                             ; preds = %.loopexit9343
  %2080 = sub i32 %.38, %.148399
  %2081 = sdiv i32 %2080, 20
  br label %2082

2082:                                             ; preds = %2099, %2079
  %.478745 = phi i32 [ %2081, %2079 ], [ %.7, %2099 ]
  %.39 = phi i32 [ %.148399, %2079 ], [ %.40, %2099 ]
  %2083 = lshr i32 %.478745, 1
  %2084 = mul i32 %2083, 20
  %2085 = add i32 %2084, %.39
  %2086 = zext i32 %2085 to i64
  %2087 = add nuw nsw i64 %2086, 4
  %2088 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2087)
  %2089 = zext i32 %2088 to i64
  %.not9201 = icmp ult i64 %indvars.iv9794, %2089
  br i1 %.not9201, label %2090, label %2099

2090:                                             ; preds = %2082
  %2091 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2086)
  %2092 = add i32 %2091, %2053
  %2093 = zext i32 %2092 to i64
  %2094 = tail call i32 @i32_load16_u(ptr noundef nonnull %9, i64 noundef %2093)
  %.not9202 = icmp eq i32 %2056, %2094
  br i1 %.not9202, label %2095, label %2099

2095:                                             ; preds = %2090
  %2096 = add i32 %2085, 20
  %2097 = xor i32 %2083, -1
  %2098 = add i32 %.478745, %2097
  br label %2099

2099:                                             ; preds = %2082, %2090, %2095
  %.40 = phi i32 [ %.39, %2090 ], [ %2096, %2095 ], [ %.39, %2082 ]
  %.7 = phi i32 [ %2083, %2090 ], [ %2098, %2095 ], [ %2083, %2082 ]
  %.not9203 = icmp eq i32 %.7, 0
  br i1 %.not9203, label %.loopexit9342, label %2082

.loopexit9342:                                    ; preds = %2099, %.loopexit9343
  %.41 = phi i32 [ %.38, %.loopexit9343 ], [ %.40, %2099 ]
  %2100 = icmp eq i32 %.41, %.148399
  br i1 %2100, label %.loopexit9344, label %2101

2101:                                             ; preds = %.loopexit9342
  %indvars.iv.next9795 = add nuw nsw i64 %indvars.iv9794, 1
  %.not9204 = icmp ult i64 %indvars.iv.next9795, %2050
  br i1 %.not9204, label %2130, label %2102

2102:                                             ; preds = %2101
  %.not9219 = icmp ult i32 %.148399, %.41
  br i1 %.not9219, label %.preheader9340, label %.loopexit9341

.preheader9340:                                   ; preds = %2102, %.loopexit9334
  %.108529 = phi i32 [ %2128, %.loopexit9334 ], [ %.148399, %2102 ]
  %2103 = zext i32 %.108529 to i64
  %2104 = add nuw nsw i64 %2103, 8
  %2105 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2104)
  %2106 = add nuw nsw i64 %2103, 12
  %2107 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2106)
  %.not9220 = icmp eq i32 %2105, %2107
  br i1 %.not9220, label %.loopexit9334, label %.preheader9333

.preheader9333:                                   ; preds = %.preheader9340
  %2108 = add nuw nsw i64 %2103, 4
  br label %2109

2109:                                             ; preds = %.preheader9333, %2126
  %.488746 = phi i32 [ %2127, %2126 ], [ %2105, %.preheader9333 ]
  %2110 = zext i32 %.488746 to i64
  %2111 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2110)
  %2112 = icmp eq i32 %2111, %.438691
  br i1 %2112, label %2126, label %2113

2113:                                             ; preds = %2109
  %2114 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2048)
  %.not9221 = icmp eq i32 %2114, 0
  br i1 %.not9221, label %._crit_edge9826, label %2115

._crit_edge9826:                                  ; preds = %2113
  %.pre9850 = zext i32 %2111 to i64
  br label %2121

2115:                                             ; preds = %2113
  %2116 = zext i32 %2114 to i64
  %2117 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2116)
  %2118 = zext i32 %2111 to i64
  %2119 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2118)
  %2120 = icmp ult i32 %2117, %2119
  br i1 %2120, label %2126, label %2121

2121:                                             ; preds = %._crit_edge9826, %2115
  %.pre-phi9851 = phi i64 [ %.pre9850, %._crit_edge9826 ], [ %2118, %2115 ]
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2048, i32 noundef %2111)
  %2122 = add nuw nsw i64 %.pre-phi9851, 8
  %2123 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2122)
  %2124 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2108)
  %2125 = sub i32 %2123, %2124
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2049, i32 noundef %2125)
  br label %2126

2126:                                             ; preds = %2115, %2109, %2121
  %2127 = add i32 %.488746, 4
  %.not9222 = icmp eq i32 %2127, %2107
  br i1 %.not9222, label %.loopexit9334, label %2109

.loopexit9334:                                    ; preds = %2126, %.preheader9340
  %2128 = add i32 %.108529, 20
  %2129 = icmp ult i32 %2128, %.41
  br i1 %2129, label %.preheader9340, label %.loopexit9341

2130:                                             ; preds = %2101
  %2131 = zext i32 %.148399 to i64
  %2132 = add nuw nsw i64 %2131, 4
  %2133 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2132)
  %2134 = zext i32 %2133 to i64
  %.not9205 = icmp eq i64 %indvars.iv.next9795, %2134
  br i1 %.not9205, label %2135, label %.loopexit9341

2135:                                             ; preds = %2130
  %2136 = sub i32 %.118475, %.138460
  %2137 = sdiv i32 %2136, 12
  %2138 = zext i32 %2137 to i64
  %2139 = icmp ult i64 %indvars.iv.next9795, %2138
  br i1 %2139, label %.loopexit9339, label %2140

2140:                                             ; preds = %2135
  %2141 = add i32 %2052, 2
  %2142 = icmp ult i32 %2137, %2141
  br i1 %2142, label %2143, label %2197

2143:                                             ; preds = %2140
  %2144 = sub i32 %2141, %2137
  %2145 = sub i32 %.25, %.118475
  %2146 = sdiv i32 %2145, 12
  %.not9209 = icmp ugt i32 %2144, %2146
  br i1 %.not9209, label %2155, label %2147

2147:                                             ; preds = %2143
  %2148 = mul i32 %2144, 12
  %2149 = add i32 %2148, -12
  %2150 = urem i32 %2149, 12
  %2151 = sub i32 %2149, %2150
  %2152 = add i32 %2151, 12
  %2153 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %.118475, i32 noundef 0, i32 noundef %2152)
  %2154 = add i32 %2153, %2152
  br label %.loopexit9339

2155:                                             ; preds = %2143
  %2156 = icmp ugt i32 %2141, 357913941
  br i1 %2156, label %.loopexit9345, label %2157

2157:                                             ; preds = %2155
  %2158 = sub i32 %.25, %.138460
  %2159 = sdiv i32 %2158, 12
  %2160 = shl nsw i32 %2159, 1
  %2161 = tail call i32 @llvm.umax.i32(i32 %2160, i32 %2141)
  %2162 = icmp ugt i32 %2159, 178956969
  %2163 = select i1 %2162, i32 357913941, i32 %2161
  %2164 = icmp ugt i32 %2163, 357913941
  br i1 %2164, label %.loopexit9345, label %2165

2165:                                             ; preds = %2157
  %2166 = mul nuw i32 %2163, 12
  %2167 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %2166) #5
  %2168 = mul i32 %2144, 12
  %2169 = add i32 %2168, -12
  %2170 = mul nsw i32 %2137, 12
  %2171 = add i32 %2167, %2170
  %2172 = urem i32 %2169, 12
  %2173 = sub i32 %2169, %2172
  %2174 = add i32 %2173, 12
  %2175 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %2171, i32 noundef 0, i32 noundef %2174)
  %.not9210 = icmp eq i32 %.138460, %.118475
  br i1 %.not9210, label %.loopexit9336, label %.preheader9337

.preheader9337:                                   ; preds = %2165, %.preheader9337
  %.498747 = phi i32 [ %2177, %.preheader9337 ], [ %.118475, %2165 ]
  %.188644 = phi i32 [ %2176, %.preheader9337 ], [ %2175, %2165 ]
  %2176 = add i32 %.188644, -12
  %2177 = add i32 %.498747, -12
  %2178 = zext i32 %2177 to i64
  %2179 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2178)
  %2180 = zext i32 %2176 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2180, i32 noundef %2179)
  %2181 = add nuw nsw i64 %2178, 4
  %2182 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2181)
  %2183 = add nuw nsw i64 %2180, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2183, i32 noundef %2182)
  %2184 = add nuw nsw i64 %2178, 8
  %2185 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2184)
  %2186 = add nuw nsw i64 %2180, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2186, i32 noundef %2185)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2184, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2178, i64 noundef 0)
  %.not9211 = icmp eq i32 %2177, %.138460
  br i1 %.not9211, label %.preheader9335, label %.preheader9337

.preheader9335:                                   ; preds = %.preheader9337, %2193
  %.128476 = phi i32 [ %2187, %2193 ], [ %.118475, %.preheader9337 ]
  %2187 = add i32 %.128476, -12
  %2188 = zext i32 %2187 to i64
  %2189 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2188)
  %.not9212 = icmp eq i32 %2189, 0
  br i1 %.not9212, label %2193, label %2190

2190:                                             ; preds = %.preheader9335
  %2191 = add i32 %.128476, -8
  %2192 = zext i32 %2191 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2192, i32 noundef %2189)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2189)
  br label %2193

2193:                                             ; preds = %2190, %.preheader9335
  %.not9213 = icmp eq i32 %2187, %.138460
  br i1 %.not9213, label %.loopexit9336, label %.preheader9335

.loopexit9336:                                    ; preds = %2193, %2165
  %.198645 = phi i32 [ %2175, %2165 ], [ %2176, %2193 ]
  %2194 = add i32 %2175, %2174
  %2195 = add i32 %2167, %2166
  %.not9214 = icmp eq i32 %.138460, 0
  br i1 %.not9214, label %.loopexit9339, label %2196

2196:                                             ; preds = %.loopexit9336
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.138460)
  br label %.loopexit9339

2197:                                             ; preds = %2140
  %.not9206 = icmp ugt i32 %2137, %2141
  br i1 %.not9206, label %2198, label %.loopexit9339

2198:                                             ; preds = %2197
  %2199 = mul i32 %2141, 12
  %2200 = add i32 %.138460, %2199
  %2201 = icmp eq i32 %.118475, %2200
  br i1 %2201, label %.loopexit9339, label %.preheader9338

.preheader9338:                                   ; preds = %2198, %2208
  %.138477 = phi i32 [ %2202, %2208 ], [ %.118475, %2198 ]
  %2202 = add i32 %.138477, -12
  %2203 = zext i32 %2202 to i64
  %2204 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2203)
  %.not9207 = icmp eq i32 %2204, 0
  br i1 %.not9207, label %2208, label %2205

2205:                                             ; preds = %.preheader9338
  %2206 = add i32 %.138477, -8
  %2207 = zext i32 %2206 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2207, i32 noundef %2204)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2204)
  br label %2208

2208:                                             ; preds = %2205, %.preheader9338
  %.not9208 = icmp eq i32 %2202, %2200
  br i1 %.not9208, label %.loopexit9339, label %.preheader9338

.loopexit9339:                                    ; preds = %2208, %.loopexit9336, %2198, %2197, %2135, %2196, %2147
  %.148478 = phi i32 [ %.118475, %2135 ], [ %2154, %2147 ], [ %2194, %2196 ], [ %.118475, %2197 ], [ %.118475, %2198 ], [ %2194, %.loopexit9336 ], [ %2200, %2208 ]
  %.148461 = phi i32 [ %.138460, %2135 ], [ %.138460, %2147 ], [ %.198645, %2196 ], [ %.138460, %2197 ], [ %.138460, %2198 ], [ %.198645, %.loopexit9336 ], [ %.138460, %2208 ]
  %.26 = phi i32 [ %.25, %2135 ], [ %.25, %2147 ], [ %2195, %2196 ], [ %.25, %2197 ], [ %.25, %2198 ], [ %2195, %.loopexit9336 ], [ %.25, %2208 ]
  %2209 = add nuw nsw i64 %2131, 12
  %2210 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2209)
  %2211 = add nuw nsw i64 %2131, 8
  %2212 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2211)
  %2213 = sub i32 %2210, %2212
  %2214 = ashr i32 %2213, 2
  %2215 = trunc nuw i64 %indvars.iv.next9795 to i32
  %2216 = mul i32 %2215, 12
  %2217 = add i32 %.148461, %2216
  %2218 = zext i32 %2217 to i64
  %2219 = add nuw nsw i64 %2218, 4
  %2220 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2219)
  %2221 = add nuw nsw i64 %2218, 8
  %2222 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2221)
  %.not9215 = icmp eq i32 %2220, %2222
  br i1 %.not9215, label %2228, label %2223

2223:                                             ; preds = %.loopexit9339
  %2224 = zext i32 %2220 to i64
  %2225 = add nuw nsw i64 %2224, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2225, i32 noundef %.438691)
  %2226 = add nuw nsw i64 %2224, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2226, i32 noundef %2214)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2224, i32 noundef %2212)
  %2227 = add i32 %2220, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2219, i32 noundef %2227)
  br label %.loopexit9341

2228:                                             ; preds = %.loopexit9339
  %2229 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2218)
  %2230 = sub i32 %2220, %2229
  %.fr9217 = freeze i32 %2230
  %2231 = sdiv i32 %.fr9217, 12
  %2232 = srem i32 %.fr9217, 12
  %2233 = add nsw i32 %2231, 1
  %2234 = icmp ult i32 %2233, 357913942
  br i1 %2234, label %2235, label %.loopexit9345

2235:                                             ; preds = %2228
  %2236 = shl nuw nsw i32 %2231, 1
  %2237 = tail call i32 @llvm.umax.i32(i32 %2236, i32 %2233)
  %2238 = icmp ugt i32 %2231, 178956969
  %2239 = select i1 %2238, i32 357913941, i32 %2237
  %.not9216 = icmp eq i32 %2239, 0
  br i1 %.not9216, label %._crit_edge9827, label %2240

2240:                                             ; preds = %2235
  %2241 = icmp ugt i32 %2239, 357913941
  br i1 %2241, label %.loopexit9345, label %2242

2242:                                             ; preds = %2240
  %2243 = mul nuw i32 %2239, 12
  %2244 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %2243) #5
  br label %._crit_edge9827

._crit_edge9827:                                  ; preds = %2235, %2242
  %.pre-phi9849 = phi i32 [ %2243, %2242 ], [ 0, %2235 ]
  %.8 = phi i32 [ %2244, %2242 ], [ 0, %2235 ]
  %2245 = mul nsw i32 %2231, 12
  %2246 = add i32 %.8, %2245
  %2247 = zext i32 %2246 to i64
  %2248 = add nuw nsw i64 %2247, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2248, i32 noundef %.438691)
  %2249 = add nuw nsw i64 %2247, 4
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2249, i32 noundef %2214)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2247, i32 noundef %2212)
  %2250 = sub i32 %2232, %.fr9217
  %2251 = add i32 %2250, %2246
  %2252 = tail call i32 @w2c_hermes_memmove(ptr noundef %0, i32 noundef %2251, i32 noundef %2229, i32 noundef %.fr9217) #5
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2218, i32 noundef %2252)
  %2253 = add i32 %2246, 12
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2219, i32 noundef %2253)
  %2254 = add i32 %.8, %.pre-phi9849
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2221, i32 noundef %2254)
  %.not9218 = icmp eq i32 %2229, 0
  br i1 %.not9218, label %.loopexit9341, label %2255

2255:                                             ; preds = %._crit_edge9827
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2229)
  br label %.loopexit9341

.loopexit9341:                                    ; preds = %.loopexit9334, %._crit_edge9827, %2130, %2102, %2255, %2223
  %.158479 = phi i32 [ %.118475, %2102 ], [ %.118475, %2130 ], [ %.148478, %2223 ], [ %.148478, %._crit_edge9827 ], [ %.148478, %2255 ], [ %.118475, %.loopexit9334 ]
  %.158462 = phi i32 [ %.138460, %2102 ], [ %.138460, %2130 ], [ %.148461, %2223 ], [ %.148461, %._crit_edge9827 ], [ %.148461, %2255 ], [ %.138460, %.loopexit9334 ]
  %.27 = phi i32 [ %.25, %2102 ], [ %.25, %2130 ], [ %.26, %2223 ], [ %.26, %._crit_edge9827 ], [ %.26, %2255 ], [ %.25, %.loopexit9334 ]
  %.not9223 = icmp eq i64 %indvars.iv.next9795, %2050
  br i1 %.not9223, label %.loopexit9344, label %2051

.loopexit9344:                                    ; preds = %.loopexit9341, %.loopexit9342, %2041
  %.168480 = phi i32 [ %.108474, %2041 ], [ %.158479, %.loopexit9341 ], [ %.118475, %.loopexit9342 ]
  %.168463 = phi i32 [ %.128459, %2041 ], [ %.158462, %.loopexit9341 ], [ %.138460, %.loopexit9342 ]
  %.28 = phi i32 [ %.24, %2041 ], [ %.27, %.loopexit9341 ], [ %.25, %.loopexit9342 ]
  %2256 = add i32 %.438691, 52
  %.not9224 = icmp eq i32 %2256, %1339
  br i1 %.not9224, label %2257, label %2041

2257:                                             ; preds = %.loopexit9344
  %.not9225 = icmp eq i32 %.168463, %.168480
  br i1 %.not9225, label %.loopexit9332, label %2258

2258:                                             ; preds = %2257
  %2259 = sub i32 %.168480, %.168463
  %2260 = sdiv i32 %2259, 12
  br label %2261

2261:                                             ; preds = %.loopexit9331, %2258
  %.17 = phi i32 [ %2260, %2258 ], [ %2262, %.loopexit9331 ]
  %2262 = add i32 %.17, -1
  %2263 = mul i32 %2262, 12
  %2264 = add i32 %2263, %.168463
  %2265 = zext i32 %2264 to i64
  %2266 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2265)
  %2267 = add nuw nsw i64 %2265, 4
  %2268 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2267)
  %.not9226 = icmp eq i32 %2266, %2268
  br i1 %.not9226, label %.loopexit9331, label %.preheader9330

.preheader9330:                                   ; preds = %2261, %.loopexit9326
  %.348625 = phi i32 [ %2503, %.loopexit9326 ], [ %2266, %2261 ]
  %2269 = zext i32 %.348625 to i64
  %2270 = add nuw nsw i64 %2269, 8
  %2271 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2270)
  %2272 = zext i32 %2271 to i64
  %2273 = add nuw nsw i64 %2272, 28
  %2274 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2273)
  %.not9227 = icmp eq i32 %2274, 0
  br i1 %.not9227, label %2275, label %.loopexit9326

2275:                                             ; preds = %.preheader9330
  %2276 = add nuw nsw i64 %2272, 16
  %2277 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2276)
  %.not9228 = icmp eq i32 %2277, 0
  br i1 %.not9228, label %2278, label %.loopexit9326

2278:                                             ; preds = %2275
  %2279 = add nuw nsw i64 %2269, 4
  %2280 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2279)
  %.not9229 = icmp eq i32 %2280, 0
  br i1 %.not9229, label %.loopexit9326, label %2281

2281:                                             ; preds = %2278
  %2282 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2269)
  %2283 = shl i32 %2280, 2
  %2284 = add i32 %2282, %2283
  %2285 = lshr i32 %2271, 4
  %2286 = lshr i32 %2271, 9
  %2287 = xor i32 %2285, %2286
  br label %2288

2288:                                             ; preds = %.loopexit9315, %2281
  %.508748 = phi i32 [ %2282, %2281 ], [ %2321, %.loopexit9315 ]
  %2289 = zext i32 %.508748 to i64
  %2290 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2289)
  %2291 = icmp eq i32 %2290, %2271
  br i1 %2291, label %.loopexit9315, label %2292

2292:                                             ; preds = %2288
  %2293 = zext i32 %2290 to i64
  %2294 = add nuw nsw i64 %2293, 16
  %2295 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2294)
  %.not9230 = icmp eq i32 %2295, 0
  br i1 %.not9230, label %2296, label %.loopexit9315

2296:                                             ; preds = %2292
  %2297 = add nuw nsw i64 %2293, 24
  %2298 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2297)
  %.not9231 = icmp eq i32 %2298, 0
  br i1 %.not9231, label %2299, label %.loopexit9315

2299:                                             ; preds = %2296
  %2300 = add nuw nsw i64 %2293, 48
  %2301 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2300)
  %.not9232 = icmp eq i32 %2301, 0
  br i1 %.not9232, label %.loopexit9314, label %2302

2302:                                             ; preds = %2299
  %2303 = add nuw nsw i64 %2293, 36
  %2304 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2303)
  %2305 = add i32 %2301, -1
  %2306 = and i32 %2305, %2287
  %2307 = shl nuw nsw i32 %2306, 2
  %2308 = add i32 %2304, %2307
  %2309 = zext i32 %2308 to i64
  %2310 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2309)
  %2311 = icmp eq i32 %2310, %2271
  br i1 %2311, label %.loopexit9315, label %.preheader9313

.preheader9313:                                   ; preds = %2302, %2313
  %.158497 = phi i32 [ %2316, %2313 ], [ %2306, %2302 ]
  %.88442 = phi i32 [ %2315, %2313 ], [ 1, %2302 ]
  %.158400 = phi i32 [ %2320, %2313 ], [ %2310, %2302 ]
  %2312 = icmp eq i32 %.158400, -4
  br i1 %2312, label %.loopexit9314, label %2313

2313:                                             ; preds = %.preheader9313
  %2314 = add i32 %.88442, %.158497
  %2315 = add i32 %.88442, 1
  %2316 = and i32 %2314, %2305
  %2317 = shl i32 %2316, 2
  %2318 = add i32 %2317, %2304
  %2319 = zext i32 %2318 to i64
  %2320 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2319)
  %.not9233 = icmp eq i32 %2320, %2271
  br i1 %.not9233, label %.loopexit9315, label %.preheader9313

.loopexit9315:                                    ; preds = %2313, %2302, %2296, %2292, %2288
  %2321 = add i32 %.508748, 4
  %.not9259 = icmp eq i32 %2321, %2284
  br i1 %.not9259, label %.loopexit9326, label %2288

.loopexit9314:                                    ; preds = %2299, %.preheader9313
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2297, i32 noundef %2271)
  %2322 = add nuw nsw i64 %2272, 32
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2322, i32 noundef %2262)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2273, i32 noundef %2290)
  br label %2323

2323:                                             ; preds = %2323, %.loopexit9314
  %.208646 = phi i32 [ %2271, %.loopexit9314 ], [ %2326, %2323 ]
  %2324 = zext i32 %.208646 to i64
  %2325 = add nuw nsw i64 %2324, 24
  %2326 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2325)
  %.not9234 = icmp eq i32 %2326, 0
  br i1 %.not9234, label %.preheader9327, label %2323

.preheader9327:                                   ; preds = %2323, %.preheader9327
  %.448692 = phi i32 [ %2329, %.preheader9327 ], [ %2290, %2323 ]
  %2327 = zext i32 %.448692 to i64
  %2328 = add nuw nsw i64 %2327, 28
  %2329 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2328)
  %.not9235 = icmp eq i32 %2329, 0
  br i1 %.not9235, label %2330, label %.preheader9327

2330:                                             ; preds = %.preheader9327
  %2331 = add nuw nsw i64 %2324, 36
  %2332 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2331)
  %2333 = add nuw nsw i64 %2324, 48
  %2334 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2333)
  %.not9236 = icmp eq i32 %2334, 0
  br i1 %.not9236, label %2360, label %2335

2335:                                             ; preds = %2330
  %2336 = add i32 %2334, -1
  %2337 = lshr i32 %.448692, 4
  %2338 = lshr i32 %.448692, 9
  %2339 = xor i32 %2337, %2338
  %2340 = and i32 %2336, %2339
  %2341 = shl nuw nsw i32 %2340, 2
  %2342 = add i32 %2341, %2332
  %2343 = zext i32 %2342 to i64
  %2344 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2343)
  %2345 = icmp eq i32 %2344, %.448692
  br i1 %2345, label %.loopexit9326, label %.preheader9325

.preheader9325:                                   ; preds = %2335, %2349
  %.42 = phi i32 [ %2357, %2349 ], [ %2342, %2335 ]
  %.98443 = phi i32 [ %2352, %2349 ], [ 0, %2335 ]
  %.29 = phi i32 [ %2354, %2349 ], [ 1, %2335 ]
  %.168401 = phi i32 [ %2359, %2349 ], [ %2344, %2335 ]
  %.138381 = phi i32 [ %2355, %2349 ], [ %2340, %2335 ]
  %2346 = icmp eq i32 %.168401, -4
  %.not9239 = icmp eq i32 %.98443, 0
  br i1 %2346, label %2347, label %2349

2347:                                             ; preds = %.preheader9325
  %2348 = select i1 %.not9239, i32 %.42, i32 %.98443
  br label %2360

2349:                                             ; preds = %.preheader9325
  %2350 = icmp eq i32 %.168401, -8
  %2351 = select i1 %2350, i1 %.not9239, i1 false
  %2352 = select i1 %2351, i32 %.42, i32 %.98443
  %2353 = add i32 %.138381, %.29
  %2354 = add i32 %.29, 1
  %2355 = and i32 %2353, %2336
  %2356 = shl i32 %2355, 2
  %2357 = add i32 %2356, %2332
  %2358 = zext i32 %2357 to i64
  %2359 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2358)
  %.not9238 = icmp eq i32 %2359, %.448692
  br i1 %.not9238, label %.loopexit9326, label %.preheader9325

2360:                                             ; preds = %2330, %2347
  %.43 = phi i32 [ %2348, %2347 ], [ 0, %2330 ]
  %2361 = add nuw nsw i64 %2324, 40
  %2362 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2361)
  %2363 = shl i32 %2362, 2
  %2364 = add i32 %2363, 4
  %2365 = mul i32 %2334, 3
  %.not9240 = icmp ult i32 %2364, %2365
  br i1 %.not9240, label %2368, label %2366

2366:                                             ; preds = %2360
  %2367 = shl i32 %2334, 1
  br label %2376

2368:                                             ; preds = %2360
  %2369 = xor i32 %2362, -1
  %2370 = add i32 %2334, %2369
  %2371 = add nuw nsw i64 %2324, 44
  %2372 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2371)
  %2373 = sub i32 %2370, %2372
  %2374 = lshr i32 %2334, 3
  %2375 = icmp ugt i32 %2373, %2374
  br i1 %2375, label %2492, label %2376

2376:                                             ; preds = %2368, %2366
  %.168498 = phi i32 [ %2367, %2366 ], [ %2334, %2368 ]
  %2377 = add i32 %.168498, -1
  %2378 = zext i32 %2377 to i64
  %2379 = lshr i64 %2378, 1
  %2380 = or i64 %2379, %2378
  %2381 = lshr i64 %2380, 2
  %2382 = or i64 %2381, %2380
  %2383 = lshr i64 %2382, 4
  %2384 = or i64 %2383, %2382
  %2385 = lshr i64 %2384, 8
  %2386 = or i64 %2385, %2384
  %2387 = lshr i64 %2386, 16
  %2388 = or i64 %2387, %2386
  %2389 = trunc nuw i64 %2388 to i32
  %2390 = add i32 %2389, 1
  %2391 = icmp ult i32 %2390, 65
  %2392 = select i1 %2391, i32 64, i32 %2390
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2333, i32 noundef %2392)
  %2393 = shl i32 %2392, 2
  %2394 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %2393) #5
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2331, i32 noundef %2394)
  %.not9241 = icmp eq i32 %2332, 0
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2361, i64 noundef 0)
  %2395 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2333)
  %.not9250 = icmp eq i32 %2395, 0
  br i1 %.not9241, label %2396, label %2414

2396:                                             ; preds = %2376
  br i1 %.not9250, label %.loopexit9318, label %2397

2397:                                             ; preds = %2396
  %2398 = and i32 %2395, 7
  %.not9251 = icmp eq i32 %2398, 0
  br i1 %.not9251, label %.loopexit9320, label %.preheader9319

.preheader9319:                                   ; preds = %2397, %.preheader9319
  %.458693 = phi i32 [ %2400, %.preheader9319 ], [ %2394, %2397 ]
  %.148517 = phi i32 [ %2401, %.preheader9319 ], [ 0, %2397 ]
  %2399 = zext i32 %.458693 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2399, i32 noundef -4)
  %2400 = add i32 %.458693, 4
  %2401 = add nuw nsw i32 %.148517, 1
  %.not9252 = icmp eq i32 %2401, %2398
  br i1 %.not9252, label %.loopexit9320, label %.preheader9319

.loopexit9320:                                    ; preds = %.preheader9319, %2397
  %.468694 = phi i32 [ %2394, %2397 ], [ %2400, %.preheader9319 ]
  %2402 = add i32 %2395, 1073741823
  %2403 = and i32 %2402, 1073741823
  %2404 = icmp ult i32 %2403, 7
  br i1 %2404, label %.loopexit9318, label %2405

2405:                                             ; preds = %.loopexit9320
  %2406 = shl i32 %2395, 2
  %2407 = add i32 %2406, %2394
  br label %2408

2408:                                             ; preds = %2408, %2405
  %.478695 = phi i32 [ %.468694, %2405 ], [ %2413, %2408 ]
  %2409 = zext i32 %.478695 to i64
  %2410 = add nuw nsw i64 %2409, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2410, i64 noundef -12884901892)
  %2411 = add nuw nsw i64 %2409, 16
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2411, i64 noundef -12884901892)
  %2412 = add nuw nsw i64 %2409, 8
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2412, i64 noundef -12884901892)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2409, i64 noundef -12884901892)
  %2413 = add i32 %.478695, 32
  %.not9253 = icmp eq i32 %2413, %2407
  br i1 %.not9253, label %.loopexit9318, label %2408

2414:                                             ; preds = %2376
  br i1 %.not9250, label %.loopexit9322, label %2415

2415:                                             ; preds = %2414
  %2416 = and i32 %2395, 7
  %.not9243 = icmp eq i32 %2416, 0
  br i1 %.not9243, label %.loopexit9324, label %.preheader9323

.preheader9323:                                   ; preds = %2415, %.preheader9323
  %.44 = phi i32 [ %2418, %.preheader9323 ], [ %2394, %2415 ]
  %.148382 = phi i32 [ %2419, %.preheader9323 ], [ 0, %2415 ]
  %2417 = zext i32 %.44 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2417, i32 noundef -4)
  %2418 = add i32 %.44, 4
  %2419 = add nuw nsw i32 %.148382, 1
  %.not9244 = icmp eq i32 %2419, %2416
  br i1 %.not9244, label %.loopexit9324, label %.preheader9323

.loopexit9324:                                    ; preds = %.preheader9323, %2415
  %.45 = phi i32 [ %2394, %2415 ], [ %2418, %.preheader9323 ]
  %2420 = add i32 %2395, 1073741823
  %2421 = and i32 %2420, 1073741823
  %2422 = icmp ult i32 %2421, 7
  br i1 %2422, label %.loopexit9322, label %2423

2423:                                             ; preds = %.loopexit9324
  %2424 = shl i32 %2395, 2
  %2425 = add i32 %2424, %2394
  br label %2426

2426:                                             ; preds = %2426, %2423
  %.46 = phi i32 [ %.45, %2423 ], [ %2431, %2426 ]
  %2427 = zext i32 %.46 to i64
  %2428 = add nuw nsw i64 %2427, 24
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2428, i64 noundef -12884901892)
  %2429 = add nuw nsw i64 %2427, 16
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2429, i64 noundef -12884901892)
  %2430 = add nuw nsw i64 %2427, 8
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2430, i64 noundef -12884901892)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %2427, i64 noundef -12884901892)
  %2431 = add i32 %.46, 32
  %.not9245 = icmp eq i32 %2431, %2425
  br i1 %.not9245, label %.loopexit9322, label %2426

.loopexit9322:                                    ; preds = %2426, %.loopexit9324, %2414
  br i1 %.not9236, label %.loopexit9321, label %2432

2432:                                             ; preds = %.loopexit9322
  %2433 = shl i32 %2334, 2
  %2434 = add i32 %2433, %2332
  %2435 = add i32 %2395, -1
  br label %2436

2436:                                             ; preds = %2465, %2432
  %.488696 = phi i32 [ %2332, %2432 ], [ %2466, %2465 ]
  %.178499 = phi i32 [ 0, %2432 ], [ %.188500, %2465 ]
  %2437 = zext i32 %.488696 to i64
  %2438 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2437)
  switch i32 %2438, label %2439 [
    i32 -8, label %2465
    i32 -4, label %2465
  ]

2439:                                             ; preds = %2436
  %2440 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2331)
  %2441 = lshr i32 %2438, 4
  %2442 = lshr i32 %2438, 9
  %2443 = xor i32 %2441, %2442
  %2444 = and i32 %2443, %2435
  %2445 = shl nuw nsw i32 %2444, 2
  %2446 = add i32 %2440, %2445
  %2447 = zext i32 %2446 to i64
  %2448 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2447)
  %2449 = icmp eq i32 %2448, %2438
  br i1 %2449, label %.loopexit9312, label %.preheader9311

.preheader9311:                                   ; preds = %2439, %2453
  %.08749 = phi i32 [ %2458, %2453 ], [ 1, %2439 ]
  %.47 = phi i32 [ %2456, %2453 ], [ 0, %2439 ]
  %.108444 = phi i32 [ %2461, %2453 ], [ %2446, %2439 ]
  %.30 = phi i32 [ %2459, %2453 ], [ %2444, %2439 ]
  %.158383 = phi i32 [ %2463, %2453 ], [ %2448, %2439 ]
  %2450 = icmp eq i32 %.158383, -4
  %.not9248 = icmp eq i32 %.47, 0
  br i1 %2450, label %2451, label %2453

2451:                                             ; preds = %.preheader9311
  %2452 = select i1 %.not9248, i32 %.108444, i32 %.47
  %.pre9802 = zext i32 %2452 to i64
  br label %.loopexit9312

2453:                                             ; preds = %.preheader9311
  %2454 = icmp eq i32 %.158383, -8
  %2455 = select i1 %2454, i1 %.not9248, i1 false
  %2456 = select i1 %2455, i32 %.108444, i32 %.47
  %2457 = add i32 %.30, %.08749
  %2458 = add i32 %.08749, 1
  %2459 = and i32 %2457, %2435
  %2460 = shl i32 %2459, 2
  %2461 = add i32 %2460, %2440
  %2462 = zext i32 %2461 to i64
  %2463 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2462)
  %.not9247 = icmp eq i32 %2463, %2438
  br i1 %.not9247, label %.loopexit9312, label %.preheader9311

.loopexit9312:                                    ; preds = %2453, %2439, %2451
  %.pre-phi9803 = phi i64 [ %2447, %2439 ], [ %.pre9802, %2451 ], [ %2462, %2453 ]
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre-phi9803, i32 noundef %2438)
  %2464 = add i32 %.178499, 1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2361, i32 noundef %2464)
  br label %2465

2465:                                             ; preds = %2436, %2436, %.loopexit9312
  %.188500 = phi i32 [ %2464, %.loopexit9312 ], [ %.178499, %2436 ], [ %.178499, %2436 ]
  %2466 = add i32 %.488696, 4
  %.not9249 = icmp eq i32 %2466, %2434
  br i1 %.not9249, label %.loopexit9321, label %2436

.loopexit9321:                                    ; preds = %2465, %.loopexit9322
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2332)
  %2467 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2333)
  %2468 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2331)
  br label %.loopexit9318

.loopexit9318:                                    ; preds = %2408, %2396, %.loopexit9320, %.loopexit9321
  %.198501 = phi i32 [ %2395, %.loopexit9320 ], [ %2467, %.loopexit9321 ], [ 0, %2396 ], [ %2395, %2408 ]
  %.128446 = phi i32 [ %2394, %.loopexit9320 ], [ %2468, %.loopexit9321 ], [ %2394, %2396 ], [ %2394, %2408 ]
  %2469 = add i32 %.198501, -1
  %2470 = lshr i32 %.448692, 4
  %2471 = lshr i32 %.448692, 9
  %2472 = xor i32 %2470, %2471
  %2473 = and i32 %2469, %2472
  %2474 = shl nuw nsw i32 %2473, 2
  %2475 = add i32 %2474, %.128446
  %2476 = zext i32 %2475 to i64
  %2477 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2476)
  %.not9254 = icmp eq i32 %.448692, %2477
  br i1 %.not9254, label %.loopexit9317, label %.preheader9316

.preheader9316:                                   ; preds = %.loopexit9318, %2481
  %.498697 = phi i32 [ %2491, %2481 ], [ %2477, %.loopexit9318 ]
  %.48 = phi i32 [ %2489, %2481 ], [ %2475, %.loopexit9318 ]
  %.158518 = phi i32 [ %2487, %2481 ], [ %2473, %.loopexit9318 ]
  %.208502 = phi i32 [ %2486, %2481 ], [ 1, %.loopexit9318 ]
  %.168384 = phi i32 [ %2484, %2481 ], [ 0, %.loopexit9318 ]
  %2478 = icmp eq i32 %.498697, -4
  %.not9257 = icmp eq i32 %.168384, 0
  br i1 %2478, label %2479, label %2481

2479:                                             ; preds = %.preheader9316
  %2480 = select i1 %.not9257, i32 %.48, i32 %.168384
  br label %2492

2481:                                             ; preds = %.preheader9316
  %2482 = icmp eq i32 %.498697, -8
  %2483 = select i1 %2482, i1 %.not9257, i1 false
  %2484 = select i1 %2483, i32 %.48, i32 %.168384
  %2485 = add i32 %.208502, %.158518
  %2486 = add i32 %.208502, 1
  %2487 = and i32 %2485, %2469
  %2488 = shl i32 %2487, 2
  %2489 = add i32 %2488, %.128446
  %2490 = zext i32 %2489 to i64
  %2491 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2490)
  %.not9256 = icmp eq i32 %2491, %.448692
  br i1 %.not9256, label %.loopexit9317, label %.preheader9316

2492:                                             ; preds = %2368, %2479
  %.50 = phi i32 [ %2480, %2479 ], [ %.43, %2368 ]
  %2493 = zext i32 %.50 to i64
  %2494 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2493)
  br label %.loopexit9317

.loopexit9317:                                    ; preds = %2481, %.loopexit9318, %2492
  %.51 = phi i32 [ %.50, %2492 ], [ %2475, %.loopexit9318 ], [ %2489, %2481 ]
  %.9 = phi i32 [ %2494, %2492 ], [ %.448692, %.loopexit9318 ], [ %.448692, %2481 ]
  %2495 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2361)
  %2496 = add i32 %2495, 1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2361, i32 noundef %2496)
  %.not9258 = icmp eq i32 %.9, -4
  br i1 %.not9258, label %2501, label %2497

2497:                                             ; preds = %.loopexit9317
  %2498 = add nuw nsw i64 %2324, 44
  %2499 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2498)
  %2500 = add i32 %2499, -1
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2498, i32 noundef %2500)
  br label %2501

2501:                                             ; preds = %2497, %.loopexit9317
  %2502 = zext i32 %.51 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2502, i32 noundef %.448692)
  br label %.loopexit9326

.loopexit9326:                                    ; preds = %.loopexit9315, %2349, %2335, %2278, %2275, %.preheader9330, %2501
  %2503 = add i32 %.348625, 12
  %.not9260 = icmp eq i32 %2503, %2268
  br i1 %.not9260, label %.loopexit9331, label %.preheader9330

.loopexit9331:                                    ; preds = %.loopexit9326, %2261
  %.not9261 = icmp eq i32 %2262, 0
  br i1 %.not9261, label %.loopexit9332, label %2261

.loopexit9332:                                    ; preds = %.loopexit9331, %2257
  %.218647 = phi i32 [ %.168480, %2257 ], [ %.168463, %.loopexit9331 ]
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1301, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1297, i64 noundef 0)
  %2504 = add i32 %7, -28
  br label %2505

2505:                                             ; preds = %2505, %.loopexit9332
  %.18357 = phi i32 [ %1307, %.loopexit9332 ], [ %2506, %2505 ]
  tail call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AlayoutIfNeeded0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AStringEntry0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x2A0x29(ptr noundef %0, i32 noundef %.18357, i32 noundef %2504)
  %2506 = add i32 %.18357, 52
  %.not9262 = icmp eq i32 %2506, %1339
  br i1 %.not9262, label %2507, label %2505

2507:                                             ; preds = %2505
  %.not9263 = icmp eq i32 %.218647, 0
  br i1 %.not9263, label %2517, label %2508

2508:                                             ; preds = %2507
  br i1 %.not9225, label %.loopexit9310, label %.preheader9309

.preheader9309:                                   ; preds = %2508, %2515
  %.178481 = phi i32 [ %2509, %2515 ], [ %.168480, %2508 ]
  %2509 = add i32 %.178481, -12
  %2510 = zext i32 %2509 to i64
  %2511 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2510)
  %.not9264 = icmp eq i32 %2511, 0
  br i1 %.not9264, label %2515, label %2512

2512:                                             ; preds = %.preheader9309
  %2513 = add i32 %.178481, -8
  %2514 = zext i32 %2513 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2514, i32 noundef %2511)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2511)
  br label %2515

2515:                                             ; preds = %2512, %.preheader9309
  %.not9265 = icmp eq i32 %2509, %.218647
  br i1 %.not9265, label %.loopexit9310, label %.preheader9309

.loopexit9310:                                    ; preds = %2515, %2508
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.218647)
  br label %2517

2516:                                             ; preds = %.loopexit9346, %1336
  %.288558 = phi i32 [ %.278557, %.loopexit9346 ], [ 0, %1336 ]
  %.118431 = phi i32 [ %.108430, %.loopexit9346 ], [ 0, %1336 ]
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %1301, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %9, i64 noundef %1297, i64 noundef 0)
  br label %2517

2517:                                             ; preds = %2507, %2516, %.loopexit9310
  %.298559 = phi i32 [ %.288558, %2516 ], [ %.278557, %2507 ], [ %.278557, %.loopexit9310 ]
  %.128432 = phi i32 [ %.118431, %2516 ], [ %.108430, %2507 ], [ %.108430, %.loopexit9310 ]
  %.not9266 = icmp eq i32 %.298559, 0
  br i1 %.not9266, label %2527, label %2518

2518:                                             ; preds = %2517
  %.not9267 = icmp eq i32 %.298559, %.128432
  br i1 %.not9267, label %.loopexit9308, label %.preheader

.preheader:                                       ; preds = %2518, %2526
  %.138433 = phi i32 [ %2519, %2526 ], [ %.128432, %2518 ]
  %2519 = add i32 %.138433, -20
  %2520 = zext i32 %2519 to i64
  %2521 = add nuw nsw i64 %2520, 8
  %2522 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2521)
  %.not9268 = icmp eq i32 %2522, 0
  br i1 %.not9268, label %2526, label %2523

2523:                                             ; preds = %.preheader
  %2524 = add i32 %.138433, -8
  %2525 = zext i32 %2524 to i64
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2525, i32 noundef %2522)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2522)
  br label %2526

2526:                                             ; preds = %2523, %.preheader
  %.not9269 = icmp eq i32 %2519, %.298559
  br i1 %.not9269, label %.loopexit9308, label %.preheader

.loopexit9308:                                    ; preds = %2526, %2518
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.298559)
  br label %2527

2527:                                             ; preds = %.loopexit9308, %2517
  %2528 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %1292)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2528)
  %2529 = zext i32 %3 to i64
  %2530 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %2529)
  %.not9270 = icmp eq i32 %2530, 0
  %.pre9846 = add nuw nsw i64 %2529, 4
  br i1 %.not9270, label %.loopexit._crit_edge, label %2531

2531:                                             ; preds = %2527
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre9846, i32 noundef %2530)
  br label %.loopexit._crit_edge.sink.split

.loopexit._crit_edge.sink.split:                  ; preds = %106, %2531
  %.sink10053 = phi i32 [ %2530, %2531 ], [ %105, %106 ]
  %.sink10052.ph = phi i64 [ %1297, %2531 ], [ %52, %106 ]
  %.sink10050.ph = phi i64 [ %2529, %2531 ], [ %104, %106 ]
  %.sink10049.ph = phi i64 [ %1299, %2531 ], [ %76, %106 ]
  %.pre9846.sink.ph = phi i64 [ %.pre9846, %2531 ], [ %.pre9834, %106 ]
  %.sink.ph = phi i64 [ %1301, %2531 ], [ %51, %106 ]
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.sink10053)
  br label %.loopexit._crit_edge

.loopexit._crit_edge:                             ; preds = %.loopexit._crit_edge.sink.split, %2527, %.loopexit
  %.sink10052 = phi i64 [ %52, %.loopexit ], [ %1297, %2527 ], [ %.sink10052.ph, %.loopexit._crit_edge.sink.split ]
  %.sink10050 = phi i64 [ %104, %.loopexit ], [ %2529, %2527 ], [ %.sink10050.ph, %.loopexit._crit_edge.sink.split ]
  %.sink10049 = phi i64 [ %76, %.loopexit ], [ %1299, %2527 ], [ %.sink10049.ph, %.loopexit._crit_edge.sink.split ]
  %.pre9846.sink = phi i64 [ %.pre9834, %.loopexit ], [ %.pre9846, %2527 ], [ %.pre9846.sink.ph, %.loopexit._crit_edge.sink.split ]
  %.sink = phi i64 [ %51, %.loopexit ], [ %1301, %2527 ], [ %.sink.ph, %.loopexit._crit_edge.sink.split ]
  %2532 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.sink10052)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.sink10050, i32 noundef %2532)
  %2533 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.sink10049)
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %.pre9846.sink, i32 noundef %2533)
  %2534 = tail call i32 @i32_load(ptr noundef nonnull %9, i64 noundef %.sink)
  %2535 = add nuw nsw i64 %.sink10050, 8
  tail call void @i32_store(ptr noundef nonnull %9, i64 noundef %2535, i32 noundef %2534)
  store i32 %7, ptr %6, align 8, !tbaa !5
  ret void

.loopexit9345:                                    ; preds = %654, %667, %719, %714, %987, %999, %916, %914, %1894, %1907, %1959, %1954, %2228, %2240, %2157, %2155, %1922, %682
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef %0) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable
}

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Aenable_if0x3C_0x5Fis_cpp17_forward_iterator0x3Cunsigned0x20char0x20const0x2A0x3E0x3A0x3Avalue0x200x260x260x20is_constructible0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aiterator_traits0x3Cunsigned0x20char0x20const0x2A0x3E0x3A0x3Areference0x3E0x3A0x3Avalue0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cunsigned0x20char0x2A0x3E0x3E0x3A0x3Atype0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x3A0x3Ainsert0x3Cunsigned0x20char0x20const0x2A0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cunsigned0x20char0x20const0x2A0x3E0x2C0x20unsigned0x20char0x20const0x2A0x2C0x20unsigned0x20char0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Aenable_if0x3C_0x5Fis_cpp17_forward_iterator0x3Cchar16_t0x20const0x2A0x3E0x3A0x3Avalue0x200x260x260x20is_constructible0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aiterator_traits0x3Cchar16_t0x20const0x2A0x3E0x3A0x3Areference0x3E0x3A0x3Avalue0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cchar16_t0x2A0x3E0x3E0x3A0x3Atype0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x3A0x3Ainsert0x3Cchar16_t0x20const0x2A0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fwrap_iter0x3Cchar16_t0x20const0x2A0x3E0x2C0x20char16_t0x20const0x2A0x2C0x20char16_t0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AradixQuicksort0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x200x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x20unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AlayoutIfNeeded0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cunsigned0x20char0x3E0x3A0x3AStringEntry0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: inlinehint nounwind uwtable
declare hidden i64 @i64_load16_u(ptr noundef, i64 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AradixQuicksort0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x200x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3ASuffixArrayEntry0x2A0x2C0x20unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AlayoutIfNeeded0x280x28anonymous0x20namespace0x290x3A0x3AStringPacker0x3Cchar16_t0x3E0x3A0x3AStringEntry0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cchar16_t0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar16_t0x3E0x3E0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i32 @llvm.umax.i32(i32, i32) #4

attributes #0 = { nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { inlinehint nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { noreturn "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #5 = { nounwind }
attributes #6 = { noreturn nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !10, i64 24}
!6 = !{!"w2c_hermes", !7, i64 0, !7, i64 8, !7, i64 16, !10, i64 24, !10, i64 28, !10, i64 32, !11, i64 40, !14, i64 80}
!7 = !{!"any pointer", !8, i64 0}
!8 = !{!"omnipotent char", !9, i64 0}
!9 = !{!"Simple C/C++ TBAA"}
!10 = !{!"int", !8, i64 0}
!11 = !{!"", !7, i64 0, !12, i64 8, !12, i64 16, !12, i64 24, !13, i64 32}
!12 = !{!"long", !8, i64 0}
!13 = !{!"_Bool", !8, i64 0}
!14 = !{!"", !7, i64 0, !10, i64 8, !10, i64 12}


; Effective O3 passes: ADCEPass,BDCEPass,CorrelatedValuePropagationPass,DivRemPairsPass,EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopInstSimplifyPass,LoopSimplifyPass,LoopUnrollPass,LowerExpectIntrinsicPass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass