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

; 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 }
%struct.wasm_rt_funcref_t = type { ptr, ptr, ptr }

@w2c_hermes_t0 = external constant ptr, align 8
@w2c_hermes_t3 = external constant ptr, align 8

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

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

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

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

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

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

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

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

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

declare void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #2

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

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

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

declare void @w2c_hermes_dlfree(ptr noundef, i32 noundef) #2

; Function Attrs: nounwind uwtable
define dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %3) #3 {
  %5 = alloca ptr, align 8
  %6 = alloca i32, align 4
  %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 i64, align 8
  %32 = alloca i64, align 8
  %33 = alloca i64, align 8
  %34 = alloca i64, align 8
  %35 = alloca i64, align 8
  %36 = alloca i64, align 8
  %37 = alloca i64, align 8
  %38 = alloca i64, align 8
  %39 = alloca i64, align 8
  %40 = alloca i64, align 8
  %41 = alloca i64, align 8
  %42 = alloca i64, align 8
  %43 = alloca i64, align 8
  %44 = alloca i64, align 8
  %45 = alloca i64, align 8
  %46 = alloca float, align 4
  %47 = alloca float, align 4
  %48 = alloca i32, align 4
  %49 = alloca i32, align 4
  %50 = alloca i32, align 4
  %51 = alloca i32, align 4
  %52 = alloca i32, align 4
  %53 = alloca i32, align 4
  %54 = alloca i32, align 4
  %55 = alloca i32, align 4
  %56 = alloca i32, align 4
  %57 = alloca i32, align 4
  %58 = alloca i64, align 8
  %59 = alloca i64, align 8
  %60 = alloca i64, align 8
  %61 = alloca i64, align 8
  %62 = alloca i64, align 8
  %63 = alloca i64, align 8
  %64 = alloca i64, align 8
  %65 = alloca float, align 4
  %66 = alloca float, align 4
  %67 = alloca float, align 4
  %68 = alloca float, align 4
  %69 = alloca float, align 4
  %70 = alloca double, align 8
  %71 = alloca double, align 8
  store ptr %0, ptr %5, align 8, !tbaa !5
  store i32 %1, ptr %6, align 4, !tbaa !9
  store i32 %2, ptr %7, align 4, !tbaa !9
  store i32 %3, ptr %8, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %9) #7
  store i32 0, ptr %9, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %10) #7
  store i32 0, ptr %10, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %11) #7
  store i32 0, ptr %11, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %12) #7
  store i32 0, ptr %12, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %13) #7
  store i32 0, ptr %13, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #7
  store i32 0, ptr %14, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #7
  store i32 0, ptr %15, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %16) #7
  store i32 0, ptr %16, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %17) #7
  store i32 0, ptr %17, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %18) #7
  store i32 0, ptr %18, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %19) #7
  store i32 0, ptr %19, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %20) #7
  store i32 0, ptr %20, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %21) #7
  store i32 0, ptr %21, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %22) #7
  store i32 0, ptr %22, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %23) #7
  store i32 0, ptr %23, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #7
  store i32 0, ptr %24, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %25) #7
  store i32 0, ptr %25, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %26) #7
  store i32 0, ptr %26, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %27) #7
  store i32 0, ptr %27, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %28) #7
  store i32 0, ptr %28, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %29) #7
  store i32 0, ptr %29, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %30) #7
  store i32 0, ptr %30, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %31) #7
  store i64 0, ptr %31, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %32) #7
  store i64 0, ptr %32, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %33) #7
  store i64 0, ptr %33, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %34) #7
  store i64 0, ptr %34, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %35) #7
  store i64 0, ptr %35, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %36) #7
  store i64 0, ptr %36, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %37) #7
  store i64 0, ptr %37, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %38) #7
  store i64 0, ptr %38, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %39) #7
  store i64 0, ptr %39, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %40) #7
  store i64 0, ptr %40, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %41) #7
  store i64 0, ptr %41, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %42) #7
  store i64 0, ptr %42, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %43) #7
  store i64 0, ptr %43, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %44) #7
  store i64 0, ptr %44, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %45) #7
  store i64 0, ptr %45, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr %46) #7
  store float 0.000000e+00, ptr %46, align 4, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 4, ptr %47) #7
  store float 0.000000e+00, ptr %47, align 4, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 4, ptr %48) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %49) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %50) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %51) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %52) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %53) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %54) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %55) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %56) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %57) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %58) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %59) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %60) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %61) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %62) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %63) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %64) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %65) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %66) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %67) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %68) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %69) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %70) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %71) #7
  %72 = load ptr, ptr %5, align 8, !tbaa !5
  %73 = getelementptr inbounds %struct.w2c_hermes, ptr %72, i32 0, i32 3
  %74 = load i32, ptr %73, align 8, !tbaa !15
  store i32 %74, ptr %48, align 4, !tbaa !9
  store i32 48, ptr %49, align 4, !tbaa !9
  %75 = load i32, ptr %49, align 4, !tbaa !9
  %76 = load i32, ptr %48, align 4, !tbaa !9
  %77 = sub i32 %76, %75
  store i32 %77, ptr %48, align 4, !tbaa !9
  %78 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %78, ptr %21, align 4, !tbaa !9
  %79 = load i32, ptr %48, align 4, !tbaa !9
  %80 = load ptr, ptr %5, align 8, !tbaa !5
  %81 = getelementptr inbounds %struct.w2c_hermes, ptr %80, i32 0, i32 3
  store i32 %79, ptr %81, align 8, !tbaa !15
  %82 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %82, ptr %48, align 4, !tbaa !9
  %83 = load ptr, ptr %5, align 8, !tbaa !5
  %84 = getelementptr inbounds %struct.w2c_hermes, ptr %83, i32 0, i32 6
  %85 = load i32, ptr %48, align 4, !tbaa !9
  %86 = zext i32 %85 to i64
  %87 = add i64 %86, 16
  %88 = call i32 @i32_load(ptr noundef %84, i64 noundef %87)
  store i32 %88, ptr %48, align 4, !tbaa !9
  %89 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %89, ptr %29, align 4, !tbaa !9
  %90 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %90, ptr %48, align 4, !tbaa !9
  %91 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %91, ptr %49, align 4, !tbaa !9
  %92 = load ptr, ptr %5, align 8, !tbaa !5
  %93 = getelementptr inbounds %struct.w2c_hermes, ptr %92, i32 0, i32 6
  %94 = load i32, ptr %49, align 4, !tbaa !9
  %95 = zext i32 %94 to i64
  %96 = add i64 %95, 24
  %97 = call i32 @i32_load(ptr noundef %93, i64 noundef %96)
  store i32 %97, ptr %49, align 4, !tbaa !9
  %98 = load ptr, ptr %5, align 8, !tbaa !5
  %99 = getelementptr inbounds %struct.w2c_hermes, ptr %98, i32 0, i32 6
  %100 = load i32, ptr %48, align 4, !tbaa !9
  %101 = zext i32 %100 to i64
  %102 = add i64 %101, 16
  %103 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %99, i64 noundef %102, i32 noundef %103)
  %104 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %104, ptr %48, align 4, !tbaa !9
  %105 = load ptr, ptr %5, align 8, !tbaa !5
  %106 = getelementptr inbounds %struct.w2c_hermes, ptr %105, i32 0, i32 6
  %107 = load i32, ptr %48, align 4, !tbaa !9
  %108 = zext i32 %107 to i64
  %109 = add i64 %108, 8
  %110 = call i32 @i32_load(ptr noundef %106, i64 noundef %109)
  store i32 %110, ptr %48, align 4, !tbaa !9
  %111 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %111, ptr %9, align 4, !tbaa !9
  %112 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %112, ptr %48, align 4, !tbaa !9
  %113 = load i32, ptr %48, align 4, !tbaa !9
  %114 = icmp ne i32 %113, 0
  %115 = xor i1 %114, true
  %116 = zext i1 %115 to i32
  store i32 %116, ptr %48, align 4, !tbaa !9
  %117 = load i32, ptr %48, align 4, !tbaa !9
  %118 = icmp ne i32 %117, 0
  br i1 %118, label %119, label %120

119:                                              ; preds = %4
  br label %137

120:                                              ; preds = %4
  %121 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %121, ptr %48, align 4, !tbaa !9
  store i32 62, ptr %49, align 4, !tbaa !9
  %122 = load i32, ptr %48, align 4, !tbaa !9
  %123 = load i32, ptr %49, align 4, !tbaa !9
  %124 = icmp ne i32 %122, %123
  %125 = zext i1 %124 to i32
  store i32 %125, ptr %48, align 4, !tbaa !9
  %126 = load i32, ptr %48, align 4, !tbaa !9
  %127 = icmp ne i32 %126, 0
  br i1 %127, label %128, label %129

128:                                              ; preds = %120
  br label %137

129:                                              ; preds = %120
  %130 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %130, ptr %48, align 4, !tbaa !9
  %131 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %131, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %132 = load ptr, ptr %5, align 8, !tbaa !5
  %133 = load i32, ptr %48, align 4, !tbaa !9
  %134 = load i32, ptr %49, align 4, !tbaa !9
  %135 = load i32, ptr %50, align 4, !tbaa !9
  %136 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenIdentifierExpression0x28hermes0x3A0x3AESTree0x3A0x3AIdentifierNode0x2A0x2C0x20bool0x29(ptr noundef %132, i32 noundef %133, i32 noundef %134, i32 noundef %135)
  store i32 %136, ptr %48, align 4, !tbaa !9
  br label %22463

137:                                              ; preds = %128, %119
  %138 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %138, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %139 = load i32, ptr %49, align 4, !tbaa !9
  %140 = load i32, ptr %48, align 4, !tbaa !9
  %141 = add i32 %140, %139
  store i32 %141, ptr %48, align 4, !tbaa !9
  %142 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %142, ptr %11, align 4, !tbaa !9
  %143 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %143, ptr %48, align 4, !tbaa !9
  store i32 30, ptr %49, align 4, !tbaa !9
  %144 = load i32, ptr %48, align 4, !tbaa !9
  %145 = load i32, ptr %49, align 4, !tbaa !9
  %146 = icmp eq i32 %144, %145
  %147 = zext i1 %146 to i32
  store i32 %147, ptr %48, align 4, !tbaa !9
  %148 = load i32, ptr %48, align 4, !tbaa !9
  %149 = icmp ne i32 %148, 0
  br i1 %149, label %150, label %160

150:                                              ; preds = %137
  %151 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %151, ptr %48, align 4, !tbaa !9
  %152 = load ptr, ptr %5, align 8, !tbaa !5
  %153 = getelementptr inbounds %struct.w2c_hermes, ptr %152, i32 0, i32 6
  %154 = load i32, ptr %48, align 4, !tbaa !9
  %155 = zext i32 %154 to i64
  %156 = call i32 @i32_load(ptr noundef %153, i64 noundef %155)
  store i32 %156, ptr %48, align 4, !tbaa !9
  store i32 296, ptr %49, align 4, !tbaa !9
  %157 = load i32, ptr %49, align 4, !tbaa !9
  %158 = load i32, ptr %48, align 4, !tbaa !9
  %159 = add i32 %158, %157
  store i32 %159, ptr %48, align 4, !tbaa !9
  br label %22463

160:                                              ; preds = %137
  %161 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %161, ptr %48, align 4, !tbaa !9
  %162 = load i32, ptr %48, align 4, !tbaa !9
  %163 = icmp ne i32 %162, 0
  %164 = xor i1 %163, true
  %165 = zext i1 %164 to i32
  store i32 %165, ptr %48, align 4, !tbaa !9
  %166 = load i32, ptr %48, align 4, !tbaa !9
  %167 = icmp ne i32 %166, 0
  br i1 %167, label %168, label %169

168:                                              ; preds = %160
  br label %216

169:                                              ; preds = %160
  %170 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %170, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %171 = load i32, ptr %48, align 4, !tbaa !9
  %172 = load i32, ptr %49, align 4, !tbaa !9
  %173 = icmp ne i32 %171, %172
  %174 = zext i1 %173 to i32
  store i32 %174, ptr %48, align 4, !tbaa !9
  %175 = load i32, ptr %48, align 4, !tbaa !9
  %176 = icmp ne i32 %175, 0
  br i1 %176, label %177, label %178

177:                                              ; preds = %169
  br label %216

178:                                              ; preds = %169
  %179 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %179, ptr %48, align 4, !tbaa !9
  %180 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %180, ptr %49, align 4, !tbaa !9
  %181 = load ptr, ptr %5, align 8, !tbaa !5
  %182 = getelementptr inbounds %struct.w2c_hermes, ptr %181, i32 0, i32 6
  %183 = load i32, ptr %49, align 4, !tbaa !9
  %184 = zext i32 %183 to i64
  %185 = add i64 %184, 28
  %186 = call i32 @i32_load(ptr noundef %182, i64 noundef %185)
  store i32 %186, ptr %49, align 4, !tbaa !9
  %187 = load ptr, ptr %5, align 8, !tbaa !5
  %188 = getelementptr inbounds %struct.w2c_hermes, ptr %187, i32 0, i32 6
  %189 = load i32, ptr %49, align 4, !tbaa !9
  %190 = zext i32 %189 to i64
  %191 = call i64 @i64_load(ptr noundef %188, i64 noundef %190)
  store i64 %191, ptr %59, align 8, !tbaa !11
  %192 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %192, ptr %31, align 8, !tbaa !11
  %193 = load ptr, ptr %5, align 8, !tbaa !5
  %194 = getelementptr inbounds %struct.w2c_hermes, ptr %193, i32 0, i32 6
  %195 = load i32, ptr %48, align 4, !tbaa !9
  %196 = zext i32 %195 to i64
  %197 = add i64 %196, 8
  %198 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %194, i64 noundef %197, i64 noundef %198)
  %199 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %199, ptr %48, align 4, !tbaa !9
  %200 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %200, ptr %59, align 8, !tbaa !11
  %201 = load ptr, ptr %5, align 8, !tbaa !5
  %202 = getelementptr inbounds %struct.w2c_hermes, ptr %201, i32 0, i32 6
  %203 = load i32, ptr %48, align 4, !tbaa !9
  %204 = zext i32 %203 to i64
  %205 = add i64 %204, 32
  %206 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %202, i64 noundef %205, i64 noundef %206)
  %207 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %207, ptr %48, align 4, !tbaa !9
  %208 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %208, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %209 = load i32, ptr %50, align 4, !tbaa !9
  %210 = load i32, ptr %49, align 4, !tbaa !9
  %211 = add i32 %210, %209
  store i32 %211, ptr %49, align 4, !tbaa !9
  %212 = load ptr, ptr %5, align 8, !tbaa !5
  %213 = load i32, ptr %48, align 4, !tbaa !9
  %214 = load i32, ptr %49, align 4, !tbaa !9
  %215 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %212, i32 noundef %213, i32 noundef %214)
  store i32 %215, ptr %48, align 4, !tbaa !9
  br label %22463

216:                                              ; preds = %177, %168
  %217 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %217, ptr %48, align 4, !tbaa !9
  %218 = load i32, ptr %48, align 4, !tbaa !9
  %219 = icmp ne i32 %218, 0
  %220 = xor i1 %219, true
  %221 = zext i1 %220 to i32
  store i32 %221, ptr %48, align 4, !tbaa !9
  %222 = load i32, ptr %48, align 4, !tbaa !9
  %223 = icmp ne i32 %222, 0
  br i1 %223, label %224, label %225

224:                                              ; preds = %216
  br label %1607

225:                                              ; preds = %216
  %226 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %226, ptr %48, align 4, !tbaa !9
  store i32 34, ptr %49, align 4, !tbaa !9
  %227 = load i32, ptr %48, align 4, !tbaa !9
  %228 = load i32, ptr %49, align 4, !tbaa !9
  %229 = icmp ne i32 %227, %228
  %230 = zext i1 %229 to i32
  store i32 %230, ptr %48, align 4, !tbaa !9
  %231 = load i32, ptr %48, align 4, !tbaa !9
  %232 = icmp ne i32 %231, 0
  br i1 %232, label %233, label %234

233:                                              ; preds = %225
  br label %1607

234:                                              ; preds = %225
  %235 = load ptr, ptr %5, align 8, !tbaa !5
  %236 = getelementptr inbounds %struct.w2c_hermes, ptr %235, i32 0, i32 3
  %237 = load i32, ptr %236, align 8, !tbaa !15
  store i32 %237, ptr %48, align 4, !tbaa !9
  store i32 176, ptr %49, align 4, !tbaa !9
  %238 = load i32, ptr %49, align 4, !tbaa !9
  %239 = load i32, ptr %48, align 4, !tbaa !9
  %240 = sub i32 %239, %238
  store i32 %240, ptr %48, align 4, !tbaa !9
  %241 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %241, ptr %12, align 4, !tbaa !9
  %242 = load i32, ptr %48, align 4, !tbaa !9
  %243 = load ptr, ptr %5, align 8, !tbaa !5
  %244 = getelementptr inbounds %struct.w2c_hermes, ptr %243, i32 0, i32 3
  store i32 %242, ptr %244, align 8, !tbaa !15
  %245 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %245, ptr %48, align 4, !tbaa !9
  %246 = load ptr, ptr %5, align 8, !tbaa !5
  %247 = getelementptr inbounds %struct.w2c_hermes, ptr %246, i32 0, i32 6
  %248 = load i32, ptr %48, align 4, !tbaa !9
  %249 = zext i32 %248 to i64
  %250 = add i64 %249, 28
  %251 = call i32 @i32_load(ptr noundef %247, i64 noundef %250)
  store i32 %251, ptr %48, align 4, !tbaa !9
  %252 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %252, ptr %8, align 4, !tbaa !9
  %253 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %253, ptr %48, align 4, !tbaa !9
  %254 = load ptr, ptr %5, align 8, !tbaa !5
  %255 = getelementptr inbounds %struct.w2c_hermes, ptr %254, i32 0, i32 6
  %256 = load i32, ptr %48, align 4, !tbaa !9
  %257 = zext i32 %256 to i64
  %258 = add i64 %257, 32
  %259 = call i32 @i32_load(ptr noundef %255, i64 noundef %258)
  store i32 %259, ptr %48, align 4, !tbaa !9
  %260 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %260, ptr %11, align 4, !tbaa !9
  store i32 80, ptr %48, align 4, !tbaa !9
  %261 = load ptr, ptr %5, align 8, !tbaa !5
  %262 = load i32, ptr %48, align 4, !tbaa !9
  %263 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %261, i32 noundef %262)
  store i32 %263, ptr %48, align 4, !tbaa !9
  %264 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %264, ptr %9, align 4, !tbaa !9
  %265 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %265, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %266 = load i32, ptr %49, align 4, !tbaa !9
  %267 = load i32, ptr %48, align 4, !tbaa !9
  %268 = add i32 %267, %266
  store i32 %268, ptr %48, align 4, !tbaa !9
  %269 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %269, ptr %15, align 4, !tbaa !9
  %270 = load ptr, ptr %5, align 8, !tbaa !5
  %271 = getelementptr inbounds %struct.w2c_hermes, ptr %270, i32 0, i32 6
  %272 = load i32, ptr %48, align 4, !tbaa !9
  %273 = zext i32 %272 to i64
  %274 = call i32 @i32_load(ptr noundef %271, i64 noundef %273)
  store i32 %274, ptr %48, align 4, !tbaa !9
  %275 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %275, ptr %49, align 4, !tbaa !9
  %276 = load ptr, ptr %5, align 8, !tbaa !5
  %277 = load i32, ptr %48, align 4, !tbaa !9
  %278 = load i32, ptr %49, align 4, !tbaa !9
  %279 = call i32 @w2c_hermes_hermes0x3A0x3AModule0x3A0x3AgetLiteralString0x28hermes0x3A0x3AIdentifier0x29(ptr noundef %276, i32 noundef %277, i32 noundef %278)
  store i32 %279, ptr %48, align 4, !tbaa !9
  %280 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %280, ptr %8, align 4, !tbaa !9
  %281 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %281, ptr %48, align 4, !tbaa !9
  %282 = load ptr, ptr %5, align 8, !tbaa !5
  %283 = getelementptr inbounds %struct.w2c_hermes, ptr %282, i32 0, i32 6
  %284 = load i32, ptr %48, align 4, !tbaa !9
  %285 = zext i32 %284 to i64
  %286 = call i32 @i32_load(ptr noundef %283, i64 noundef %285)
  store i32 %286, ptr %48, align 4, !tbaa !9
  %287 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %287, ptr %49, align 4, !tbaa !9
  %288 = load ptr, ptr %5, align 8, !tbaa !5
  %289 = load i32, ptr %48, align 4, !tbaa !9
  %290 = load i32, ptr %49, align 4, !tbaa !9
  %291 = call i32 @w2c_hermes_hermes0x3A0x3AModule0x3A0x3AgetLiteralString0x28hermes0x3A0x3AIdentifier0x29(ptr noundef %288, i32 noundef %289, i32 noundef %290)
  store i32 %291, ptr %48, align 4, !tbaa !9
  %292 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %292, ptr %11, align 4, !tbaa !9
  %293 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %293, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %294 = load ptr, ptr %5, align 8, !tbaa !5
  %295 = getelementptr inbounds %struct.w2c_hermes, ptr %294, i32 0, i32 6
  %296 = load i32, ptr %48, align 4, !tbaa !9
  %297 = zext i32 %296 to i64
  %298 = add i64 %297, 20
  %299 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %295, i64 noundef %298, i64 noundef %299)
  %300 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %300, ptr %48, align 4, !tbaa !9
  %301 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %301, ptr %49, align 4, !tbaa !9
  store i32 28, ptr %50, align 4, !tbaa !9
  %302 = load i32, ptr %50, align 4, !tbaa !9
  %303 = load i32, ptr %49, align 4, !tbaa !9
  %304 = add i32 %303, %302
  store i32 %304, ptr %49, align 4, !tbaa !9
  %305 = load ptr, ptr %5, align 8, !tbaa !5
  %306 = getelementptr inbounds %struct.w2c_hermes, ptr %305, i32 0, i32 6
  %307 = load i32, ptr %48, align 4, !tbaa !9
  %308 = zext i32 %307 to i64
  %309 = add i64 %308, 16
  %310 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %306, i64 noundef %309, i32 noundef %310)
  %311 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %311, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %312 = load ptr, ptr %5, align 8, !tbaa !5
  %313 = getelementptr inbounds %struct.w2c_hermes, ptr %312, i32 0, i32 6
  %314 = load i32, ptr %48, align 4, !tbaa !9
  %315 = zext i32 %314 to i64
  %316 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %313, i64 noundef %315, i64 noundef %316)
  %317 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %317, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %318 = load ptr, ptr %5, align 8, !tbaa !5
  %319 = getelementptr inbounds %struct.w2c_hermes, ptr %318, i32 0, i32 6
  %320 = load i32, ptr %48, align 4, !tbaa !9
  %321 = zext i32 %320 to i64
  %322 = add i64 %321, 68
  %323 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %319, i64 noundef %322, i64 noundef %323)
  %324 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %324, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %325 = load ptr, ptr %5, align 8, !tbaa !5
  %326 = getelementptr inbounds %struct.w2c_hermes, ptr %325, i32 0, i32 6
  %327 = load i32, ptr %48, align 4, !tbaa !9
  %328 = zext i32 %327 to i64
  %329 = add i64 %328, 44
  %330 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %326, i64 noundef %329, i64 noundef %330)
  %331 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %331, ptr %48, align 4, !tbaa !9
  %332 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %332, ptr %49, align 4, !tbaa !9
  store i32 52, ptr %50, align 4, !tbaa !9
  %333 = load i32, ptr %50, align 4, !tbaa !9
  %334 = load i32, ptr %49, align 4, !tbaa !9
  %335 = add i32 %334, %333
  store i32 %335, ptr %49, align 4, !tbaa !9
  %336 = load ptr, ptr %5, align 8, !tbaa !5
  %337 = getelementptr inbounds %struct.w2c_hermes, ptr %336, i32 0, i32 6
  %338 = load i32, ptr %48, align 4, !tbaa !9
  %339 = zext i32 %338 to i64
  %340 = add i64 %339, 40
  %341 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %337, i64 noundef %340, i32 noundef %341)
  %342 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %342, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %343 = load ptr, ptr %5, align 8, !tbaa !5
  %344 = getelementptr inbounds %struct.w2c_hermes, ptr %343, i32 0, i32 6
  %345 = load i32, ptr %48, align 4, !tbaa !9
  %346 = zext i32 %345 to i64
  %347 = add i64 %346, 36
  %348 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %344, i64 noundef %347, i32 noundef %348)
  %349 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %349, ptr %48, align 4, !tbaa !9
  store i32 59, ptr %49, align 4, !tbaa !9
  %350 = load ptr, ptr %5, align 8, !tbaa !5
  %351 = getelementptr inbounds %struct.w2c_hermes, ptr %350, i32 0, i32 6
  %352 = load i32, ptr %48, align 4, !tbaa !9
  %353 = zext i32 %352 to i64
  %354 = add i64 %353, 8
  %355 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %351, i64 noundef %354, i32 noundef %355)
  %356 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %356, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %357 = load ptr, ptr %5, align 8, !tbaa !5
  %358 = getelementptr inbounds %struct.w2c_hermes, ptr %357, i32 0, i32 6
  %359 = load i32, ptr %48, align 4, !tbaa !9
  %360 = zext i32 %359 to i64
  %361 = add i64 %360, 76
  %362 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %358, i64 noundef %361, i32 noundef %362)
  %363 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %363, ptr %48, align 4, !tbaa !9
  store i32 459264, ptr %49, align 4, !tbaa !9
  %364 = load ptr, ptr %5, align 8, !tbaa !5
  %365 = getelementptr inbounds %struct.w2c_hermes, ptr %364, i32 0, i32 6
  %366 = load i32, ptr %48, align 4, !tbaa !9
  %367 = zext i32 %366 to i64
  %368 = add i64 %367, 10
  %369 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %365, i64 noundef %368, i32 noundef %369)
  %370 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %370, ptr %48, align 4, !tbaa !9
  %371 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %371, ptr %49, align 4, !tbaa !9
  %372 = load ptr, ptr %5, align 8, !tbaa !5
  %373 = load i32, ptr %48, align 4, !tbaa !9
  %374 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %372, i32 noundef %373, i32 noundef %374)
  %375 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %375, ptr %48, align 4, !tbaa !9
  %376 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %376, ptr %49, align 4, !tbaa !9
  %377 = load ptr, ptr %5, align 8, !tbaa !5
  %378 = load i32, ptr %48, align 4, !tbaa !9
  %379 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %377, i32 noundef %378, i32 noundef %379)
  %380 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %380, ptr %48, align 4, !tbaa !9
  %381 = load ptr, ptr %5, align 8, !tbaa !5
  %382 = getelementptr inbounds %struct.w2c_hermes, ptr %381, i32 0, i32 6
  %383 = load i32, ptr %48, align 4, !tbaa !9
  %384 = zext i32 %383 to i64
  %385 = add i64 %384, 8
  %386 = call i32 @i32_load(ptr noundef %382, i64 noundef %385)
  store i32 %386, ptr %48, align 4, !tbaa !9
  %387 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %387, ptr %10, align 4, !tbaa !9
  %388 = load ptr, ptr %5, align 8, !tbaa !5
  %389 = getelementptr inbounds %struct.w2c_hermes, ptr %388, i32 0, i32 6
  %390 = load i32, ptr %48, align 4, !tbaa !9
  %391 = zext i32 %390 to i64
  %392 = add i64 %391, 44
  %393 = call i32 @i32_load(ptr noundef %389, i64 noundef %392)
  store i32 %393, ptr %48, align 4, !tbaa !9
  %394 = load ptr, ptr %5, align 8, !tbaa !5
  %395 = getelementptr inbounds %struct.w2c_hermes, ptr %394, i32 0, i32 6
  %396 = load i32, ptr %48, align 4, !tbaa !9
  %397 = zext i32 %396 to i64
  %398 = add i64 %397, 136
  %399 = call i64 @i64_load(ptr noundef %395, i64 noundef %398)
  store i64 %399, ptr %58, align 8, !tbaa !11
  %400 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %400, ptr %31, align 8, !tbaa !11
  store i64 1095216660480, ptr %59, align 8, !tbaa !11
  %401 = load i64, ptr %59, align 8, !tbaa !11
  %402 = load i64, ptr %58, align 8, !tbaa !11
  %403 = and i64 %402, %401
  store i64 %403, ptr %58, align 8, !tbaa !11
  store i64 0, ptr %59, align 8, !tbaa !11
  %404 = load i64, ptr %58, align 8, !tbaa !11
  %405 = load i64, ptr %59, align 8, !tbaa !11
  %406 = icmp ne i64 %404, %405
  %407 = zext i1 %406 to i32
  store i32 %407, ptr %48, align 4, !tbaa !9
  %408 = load i32, ptr %48, align 4, !tbaa !9
  %409 = icmp ne i32 %408, 0
  br i1 %409, label %410, label %423

410:                                              ; preds = %234
  %411 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %411, ptr %48, align 4, !tbaa !9
  %412 = load ptr, ptr %5, align 8, !tbaa !5
  %413 = getelementptr inbounds %struct.w2c_hermes, ptr %412, i32 0, i32 6
  %414 = load i32, ptr %48, align 4, !tbaa !9
  %415 = zext i32 %414 to i64
  %416 = add i64 %415, 4
  %417 = call i32 @i32_load(ptr noundef %413, i64 noundef %416)
  store i32 %417, ptr %48, align 4, !tbaa !9
  %418 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %418, ptr %8, align 4, !tbaa !9
  %419 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %419, ptr %58, align 8, !tbaa !11
  %420 = load i64, ptr %58, align 8, !tbaa !11
  %421 = trunc i64 %420 to i32
  store i32 %421, ptr %48, align 4, !tbaa !9
  %422 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %422, ptr %14, align 4, !tbaa !9
  br label %455

423:                                              ; preds = %234
  %424 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %424, ptr %48, align 4, !tbaa !9
  %425 = load ptr, ptr %5, align 8, !tbaa !5
  %426 = getelementptr inbounds %struct.w2c_hermes, ptr %425, i32 0, i32 6
  %427 = load i32, ptr %48, align 4, !tbaa !9
  %428 = zext i32 %427 to i64
  %429 = add i64 %428, 4
  %430 = call i32 @i32_load(ptr noundef %426, i64 noundef %429)
  store i32 %430, ptr %48, align 4, !tbaa !9
  %431 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %431, ptr %11, align 4, !tbaa !9
  %432 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %432, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %433 = load i32, ptr %50, align 4, !tbaa !9
  %434 = load i32, ptr %49, align 4, !tbaa !9
  %435 = add i32 %434, %433
  store i32 %435, ptr %49, align 4, !tbaa !9
  %436 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %436, ptr %8, align 4, !tbaa !9
  %437 = load i32, ptr %48, align 4, !tbaa !9
  %438 = load i32, ptr %49, align 4, !tbaa !9
  %439 = icmp eq i32 %437, %438
  %440 = zext i1 %439 to i32
  store i32 %440, ptr %48, align 4, !tbaa !9
  %441 = load i32, ptr %48, align 4, !tbaa !9
  %442 = icmp ne i32 %441, 0
  br i1 %442, label %443, label %444

443:                                              ; preds = %423
  br label %455

444:                                              ; preds = %423
  %445 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %445, ptr %48, align 4, !tbaa !9
  %446 = load ptr, ptr %5, align 8, !tbaa !5
  %447 = getelementptr inbounds %struct.w2c_hermes, ptr %446, i32 0, i32 6
  %448 = load i32, ptr %48, align 4, !tbaa !9
  %449 = zext i32 %448 to i64
  %450 = add i64 %449, 76
  %451 = call i32 @i32_load(ptr noundef %447, i64 noundef %450)
  store i32 %451, ptr %48, align 4, !tbaa !9
  %452 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %452, ptr %14, align 4, !tbaa !9
  %453 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %453, ptr %48, align 4, !tbaa !9
  %454 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %454, ptr %8, align 4, !tbaa !9
  br label %455

455:                                              ; preds = %444, %443, %410
  %456 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %456, ptr %48, align 4, !tbaa !9
  %457 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %457, ptr %49, align 4, !tbaa !9
  %458 = load ptr, ptr %5, align 8, !tbaa !5
  %459 = getelementptr inbounds %struct.w2c_hermes, ptr %458, i32 0, i32 6
  %460 = load i32, ptr %48, align 4, !tbaa !9
  %461 = zext i32 %460 to i64
  %462 = add i64 %461, 76
  %463 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %459, i64 noundef %462, i32 noundef %463)
  %464 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %464, ptr %48, align 4, !tbaa !9
  %465 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %465, ptr %49, align 4, !tbaa !9
  %466 = load ptr, ptr %5, align 8, !tbaa !5
  %467 = getelementptr inbounds %struct.w2c_hermes, ptr %466, i32 0, i32 6
  %468 = load i32, ptr %49, align 4, !tbaa !9
  %469 = zext i32 %468 to i64
  %470 = add i64 %469, 12
  %471 = call i32 @i32_load(ptr noundef %467, i64 noundef %470)
  store i32 %471, ptr %49, align 4, !tbaa !9
  %472 = load ptr, ptr %5, align 8, !tbaa !5
  %473 = getelementptr inbounds %struct.w2c_hermes, ptr %472, i32 0, i32 6
  %474 = load i32, ptr %48, align 4, !tbaa !9
  %475 = zext i32 %474 to i64
  %476 = add i64 %475, 72
  %477 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %473, i64 noundef %476, i32 noundef %477)
  %478 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %478, ptr %48, align 4, !tbaa !9
  %479 = load ptr, ptr %5, align 8, !tbaa !5
  %480 = getelementptr inbounds %struct.w2c_hermes, ptr %479, i32 0, i32 6
  %481 = load i32, ptr %48, align 4, !tbaa !9
  %482 = zext i32 %481 to i64
  %483 = add i64 %482, 16
  %484 = call i32 @i32_load(ptr noundef %480, i64 noundef %483)
  store i32 %484, ptr %48, align 4, !tbaa !9
  %485 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %485, ptr %11, align 4, !tbaa !9
  %486 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %486, ptr %48, align 4, !tbaa !9
  %487 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %487, ptr %49, align 4, !tbaa !9
  %488 = load ptr, ptr %5, align 8, !tbaa !5
  %489 = getelementptr inbounds %struct.w2c_hermes, ptr %488, i32 0, i32 6
  %490 = load i32, ptr %48, align 4, !tbaa !9
  %491 = zext i32 %490 to i64
  %492 = add i64 %491, 36
  %493 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %489, i64 noundef %492, i32 noundef %493)
  %494 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %494, ptr %48, align 4, !tbaa !9
  %495 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %495, ptr %49, align 4, !tbaa !9
  %496 = load ptr, ptr %5, align 8, !tbaa !5
  %497 = getelementptr inbounds %struct.w2c_hermes, ptr %496, i32 0, i32 6
  %498 = load i32, ptr %48, align 4, !tbaa !9
  %499 = zext i32 %498 to i64
  %500 = add i64 %499, 68
  %501 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %497, i64 noundef %500, i32 noundef %501)
  %502 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %502, ptr %48, align 4, !tbaa !9
  %503 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %503, ptr %49, align 4, !tbaa !9
  %504 = load ptr, ptr %5, align 8, !tbaa !5
  %505 = getelementptr inbounds %struct.w2c_hermes, ptr %504, i32 0, i32 6
  %506 = load i32, ptr %49, align 4, !tbaa !9
  %507 = zext i32 %506 to i64
  %508 = call i32 @i32_load(ptr noundef %505, i64 noundef %507)
  store i32 %508, ptr %49, align 4, !tbaa !9
  %509 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %509, ptr %11, align 4, !tbaa !9
  %510 = load ptr, ptr %5, align 8, !tbaa !5
  %511 = getelementptr inbounds %struct.w2c_hermes, ptr %510, i32 0, i32 6
  %512 = load i32, ptr %48, align 4, !tbaa !9
  %513 = zext i32 %512 to i64
  %514 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %511, i64 noundef %513, i32 noundef %514)
  %515 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %515, ptr %48, align 4, !tbaa !9
  %516 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %516, ptr %49, align 4, !tbaa !9
  %517 = load ptr, ptr %5, align 8, !tbaa !5
  %518 = getelementptr inbounds %struct.w2c_hermes, ptr %517, i32 0, i32 6
  %519 = load i32, ptr %48, align 4, !tbaa !9
  %520 = zext i32 %519 to i64
  %521 = add i64 %520, 4
  %522 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %518, i64 noundef %521, i32 noundef %522)
  %523 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %523, ptr %48, align 4, !tbaa !9
  %524 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %524, ptr %49, align 4, !tbaa !9
  %525 = load ptr, ptr %5, align 8, !tbaa !5
  %526 = getelementptr inbounds %struct.w2c_hermes, ptr %525, i32 0, i32 6
  %527 = load i32, ptr %48, align 4, !tbaa !9
  %528 = zext i32 %527 to i64
  %529 = add i64 %528, 4
  %530 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %526, i64 noundef %529, i32 noundef %530)
  %531 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %531, ptr %48, align 4, !tbaa !9
  %532 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %532, ptr %49, align 4, !tbaa !9
  %533 = load ptr, ptr %5, align 8, !tbaa !5
  %534 = getelementptr inbounds %struct.w2c_hermes, ptr %533, i32 0, i32 6
  %535 = load i32, ptr %48, align 4, !tbaa !9
  %536 = zext i32 %535 to i64
  %537 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %534, i64 noundef %536, i32 noundef %537)
  %538 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %538, ptr %48, align 4, !tbaa !9
  %539 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %539, ptr %10, align 4, !tbaa !9
  %540 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %540, ptr %48, align 4, !tbaa !9
  %541 = load ptr, ptr %5, align 8, !tbaa !5
  %542 = getelementptr inbounds %struct.w2c_hermes, ptr %541, i32 0, i32 6
  %543 = load i32, ptr %48, align 4, !tbaa !9
  %544 = zext i32 %543 to i64
  %545 = add i64 %544, 4
  %546 = call i32 @i32_load(ptr noundef %542, i64 noundef %545)
  store i32 %546, ptr %48, align 4, !tbaa !9
  %547 = load ptr, ptr %5, align 8, !tbaa !5
  %548 = getelementptr inbounds %struct.w2c_hermes, ptr %547, i32 0, i32 6
  %549 = load i32, ptr %48, align 4, !tbaa !9
  %550 = zext i32 %549 to i64
  %551 = add i64 %550, 28
  %552 = call i32 @i32_load(ptr noundef %548, i64 noundef %551)
  store i32 %552, ptr %48, align 4, !tbaa !9
  store i32 60, ptr %49, align 4, !tbaa !9
  %553 = load i32, ptr %49, align 4, !tbaa !9
  %554 = load i32, ptr %48, align 4, !tbaa !9
  %555 = add i32 %554, %553
  store i32 %555, ptr %48, align 4, !tbaa !9
  %556 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %556, ptr %8, align 4, !tbaa !9
  %557 = load ptr, ptr %5, align 8, !tbaa !5
  %558 = getelementptr inbounds %struct.w2c_hermes, ptr %557, i32 0, i32 6
  %559 = load i32, ptr %48, align 4, !tbaa !9
  %560 = zext i32 %559 to i64
  %561 = call i32 @i32_load(ptr noundef %558, i64 noundef %560)
  store i32 %561, ptr %48, align 4, !tbaa !9
  %562 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %562, ptr %9, align 4, !tbaa !9
  %563 = load i32, ptr %48, align 4, !tbaa !9
  %564 = icmp ne i32 %563, 0
  %565 = xor i1 %564, true
  %566 = zext i1 %565 to i32
  store i32 %566, ptr %48, align 4, !tbaa !9
  %567 = load i32, ptr %48, align 4, !tbaa !9
  %568 = icmp ne i32 %567, 0
  br i1 %568, label %569, label %570

569:                                              ; preds = %455
  br label %729

570:                                              ; preds = %455
  %571 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %571, ptr %48, align 4, !tbaa !9
  %572 = load ptr, ptr %5, align 8, !tbaa !5
  %573 = getelementptr inbounds %struct.w2c_hermes, ptr %572, i32 0, i32 6
  %574 = load i32, ptr %48, align 4, !tbaa !9
  %575 = zext i32 %574 to i64
  %576 = add i64 %575, 32
  %577 = call i32 @i32_load(ptr noundef %573, i64 noundef %576)
  store i32 %577, ptr %48, align 4, !tbaa !9
  %578 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %578, ptr %13, align 4, !tbaa !9
  %579 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %579, ptr %48, align 4, !tbaa !9
  %580 = load ptr, ptr %5, align 8, !tbaa !5
  %581 = getelementptr inbounds %struct.w2c_hermes, ptr %580, i32 0, i32 6
  %582 = load i32, ptr %48, align 4, !tbaa !9
  %583 = zext i32 %582 to i64
  %584 = add i64 %583, 28
  %585 = call i32 @i32_load(ptr noundef %581, i64 noundef %584)
  store i32 %585, ptr %48, align 4, !tbaa !9
  %586 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %586, ptr %14, align 4, !tbaa !9
  %587 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %587, ptr %48, align 4, !tbaa !9
  %588 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %588, ptr %7, align 4, !tbaa !9
  br label %589

589:                                              ; preds = %674, %570
  %590 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %590, ptr %48, align 4, !tbaa !9
  %591 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %591, ptr %49, align 4, !tbaa !9
  %592 = load ptr, ptr %5, align 8, !tbaa !5
  %593 = getelementptr inbounds %struct.w2c_hermes, ptr %592, i32 0, i32 6
  %594 = load i32, ptr %49, align 4, !tbaa !9
  %595 = zext i32 %594 to i64
  %596 = add i64 %595, 16
  %597 = call i32 @i32_load(ptr noundef %593, i64 noundef %596)
  store i32 %597, ptr %49, align 4, !tbaa !9
  %598 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %598, ptr %11, align 4, !tbaa !9
  %599 = load i32, ptr %48, align 4, !tbaa !9
  %600 = load i32, ptr %49, align 4, !tbaa !9
  %601 = icmp ugt i32 %599, %600
  %602 = zext i1 %601 to i32
  store i32 %602, ptr %48, align 4, !tbaa !9
  %603 = load i32, ptr %48, align 4, !tbaa !9
  %604 = icmp ne i32 %603, 0
  br i1 %604, label %605, label %611

605:                                              ; preds = %589
  %606 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %606, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %607 = load i32, ptr %49, align 4, !tbaa !9
  %608 = load i32, ptr %48, align 4, !tbaa !9
  %609 = add i32 %608, %607
  store i32 %609, ptr %48, align 4, !tbaa !9
  %610 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %610, ptr %11, align 4, !tbaa !9
  br label %664

611:                                              ; preds = %589
  %612 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %612, ptr %48, align 4, !tbaa !9
  %613 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %613, ptr %49, align 4, !tbaa !9
  %614 = load i32, ptr %48, align 4, !tbaa !9
  %615 = load i32, ptr %49, align 4, !tbaa !9
  %616 = icmp ugt i32 %614, %615
  %617 = zext i1 %616 to i32
  store i32 %617, ptr %48, align 4, !tbaa !9
  %618 = load i32, ptr %48, align 4, !tbaa !9
  %619 = icmp ne i32 %618, 0
  br i1 %619, label %620, label %624

620:                                              ; preds = %611
  %621 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %621, ptr %48, align 4, !tbaa !9
  %622 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %622, ptr %11, align 4, !tbaa !9
  %623 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %623, ptr %7, align 4, !tbaa !9
  br label %664

624:                                              ; preds = %611
  %625 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %625, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %626 = load i32, ptr %49, align 4, !tbaa !9
  %627 = load i32, ptr %48, align 4, !tbaa !9
  %628 = add i32 %627, %626
  store i32 %628, ptr %48, align 4, !tbaa !9
  %629 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %629, ptr %49, align 4, !tbaa !9
  %630 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %630, ptr %50, align 4, !tbaa !9
  %631 = load ptr, ptr %5, align 8, !tbaa !5
  %632 = getelementptr inbounds %struct.w2c_hermes, ptr %631, i32 0, i32 6
  %633 = load i32, ptr %50, align 4, !tbaa !9
  %634 = zext i32 %633 to i64
  %635 = add i64 %634, 20
  %636 = call i32 @i32_load(ptr noundef %632, i64 noundef %635)
  store i32 %636, ptr %50, align 4, !tbaa !9
  %637 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %637, ptr %51, align 4, !tbaa !9
  %638 = load i32, ptr %50, align 4, !tbaa !9
  %639 = load i32, ptr %51, align 4, !tbaa !9
  %640 = icmp ult i32 %638, %639
  %641 = zext i1 %640 to i32
  store i32 %641, ptr %50, align 4, !tbaa !9
  %642 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %642, ptr %16, align 4, !tbaa !9
  %643 = load i32, ptr %50, align 4, !tbaa !9
  %644 = icmp ne i32 %643, 0
  br i1 %644, label %645, label %647

645:                                              ; preds = %624
  %646 = load i32, ptr %48, align 4, !tbaa !9
  br label %649

647:                                              ; preds = %624
  %648 = load i32, ptr %49, align 4, !tbaa !9
  br label %649

649:                                              ; preds = %647, %645
  %650 = phi i32 [ %646, %645 ], [ %648, %647 ]
  store i32 %650, ptr %48, align 4, !tbaa !9
  %651 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %651, ptr %11, align 4, !tbaa !9
  %652 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %652, ptr %48, align 4, !tbaa !9
  %653 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %653, ptr %49, align 4, !tbaa !9
  %654 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %654, ptr %50, align 4, !tbaa !9
  %655 = load i32, ptr %50, align 4, !tbaa !9
  %656 = icmp ne i32 %655, 0
  br i1 %656, label %657, label %659

657:                                              ; preds = %649
  %658 = load i32, ptr %48, align 4, !tbaa !9
  br label %661

659:                                              ; preds = %649
  %660 = load i32, ptr %49, align 4, !tbaa !9
  br label %661

661:                                              ; preds = %659, %657
  %662 = phi i32 [ %658, %657 ], [ %660, %659 ]
  store i32 %662, ptr %48, align 4, !tbaa !9
  %663 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %663, ptr %7, align 4, !tbaa !9
  br label %664

664:                                              ; preds = %661, %620, %605
  %665 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %665, ptr %48, align 4, !tbaa !9
  %666 = load ptr, ptr %5, align 8, !tbaa !5
  %667 = getelementptr inbounds %struct.w2c_hermes, ptr %666, i32 0, i32 6
  %668 = load i32, ptr %48, align 4, !tbaa !9
  %669 = zext i32 %668 to i64
  %670 = call i32 @i32_load(ptr noundef %667, i64 noundef %669)
  store i32 %670, ptr %48, align 4, !tbaa !9
  %671 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %671, ptr %9, align 4, !tbaa !9
  %672 = load i32, ptr %48, align 4, !tbaa !9
  %673 = icmp ne i32 %672, 0
  br i1 %673, label %674, label %675

674:                                              ; preds = %664
  br label %589

675:                                              ; preds = %664
  %676 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %676, ptr %48, align 4, !tbaa !9
  %677 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %677, ptr %49, align 4, !tbaa !9
  %678 = load i32, ptr %48, align 4, !tbaa !9
  %679 = load i32, ptr %49, align 4, !tbaa !9
  %680 = icmp eq i32 %678, %679
  %681 = zext i1 %680 to i32
  store i32 %681, ptr %48, align 4, !tbaa !9
  %682 = load i32, ptr %48, align 4, !tbaa !9
  %683 = icmp ne i32 %682, 0
  br i1 %683, label %684, label %685

684:                                              ; preds = %675
  br label %729

685:                                              ; preds = %675
  %686 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %686, ptr %48, align 4, !tbaa !9
  %687 = load ptr, ptr %5, align 8, !tbaa !5
  %688 = getelementptr inbounds %struct.w2c_hermes, ptr %687, i32 0, i32 6
  %689 = load i32, ptr %48, align 4, !tbaa !9
  %690 = zext i32 %689 to i64
  %691 = add i64 %690, 16
  %692 = call i32 @i32_load(ptr noundef %688, i64 noundef %691)
  store i32 %692, ptr %48, align 4, !tbaa !9
  %693 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %693, ptr %9, align 4, !tbaa !9
  %694 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %694, ptr %49, align 4, !tbaa !9
  %695 = load i32, ptr %48, align 4, !tbaa !9
  %696 = load i32, ptr %49, align 4, !tbaa !9
  %697 = icmp ugt i32 %695, %696
  %698 = zext i1 %697 to i32
  store i32 %698, ptr %48, align 4, !tbaa !9
  %699 = load i32, ptr %48, align 4, !tbaa !9
  %700 = icmp ne i32 %699, 0
  br i1 %700, label %701, label %702

701:                                              ; preds = %685
  br label %729

702:                                              ; preds = %685
  %703 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %703, ptr %48, align 4, !tbaa !9
  %704 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %704, ptr %49, align 4, !tbaa !9
  %705 = load i32, ptr %48, align 4, !tbaa !9
  %706 = load i32, ptr %49, align 4, !tbaa !9
  %707 = icmp ult i32 %705, %706
  %708 = zext i1 %707 to i32
  store i32 %708, ptr %48, align 4, !tbaa !9
  %709 = load i32, ptr %48, align 4, !tbaa !9
  %710 = icmp ne i32 %709, 0
  br i1 %710, label %711, label %712

711:                                              ; preds = %702
  br label %732

712:                                              ; preds = %702
  %713 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %713, ptr %48, align 4, !tbaa !9
  %714 = load ptr, ptr %5, align 8, !tbaa !5
  %715 = getelementptr inbounds %struct.w2c_hermes, ptr %714, i32 0, i32 6
  %716 = load i32, ptr %48, align 4, !tbaa !9
  %717 = zext i32 %716 to i64
  %718 = add i64 %717, 20
  %719 = call i32 @i32_load(ptr noundef %715, i64 noundef %718)
  store i32 %719, ptr %48, align 4, !tbaa !9
  %720 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %720, ptr %49, align 4, !tbaa !9
  %721 = load i32, ptr %48, align 4, !tbaa !9
  %722 = load i32, ptr %49, align 4, !tbaa !9
  %723 = icmp ule i32 %721, %722
  %724 = zext i1 %723 to i32
  store i32 %724, ptr %48, align 4, !tbaa !9
  %725 = load i32, ptr %48, align 4, !tbaa !9
  %726 = icmp ne i32 %725, 0
  br i1 %726, label %727, label %728

727:                                              ; preds = %712
  br label %732

728:                                              ; preds = %712
  br label %729

729:                                              ; preds = %728, %701, %684, %569
  %730 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %730, ptr %48, align 4, !tbaa !9
  %731 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %731, ptr %7, align 4, !tbaa !9
  br label %732

732:                                              ; preds = %729, %727, %711
  %733 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %733, ptr %48, align 4, !tbaa !9
  %734 = load ptr, ptr %5, align 8, !tbaa !5
  %735 = getelementptr inbounds %struct.w2c_hermes, ptr %734, i32 0, i32 6
  %736 = load i32, ptr %48, align 4, !tbaa !9
  %737 = zext i32 %736 to i64
  %738 = add i64 %737, 88
  %739 = call i32 @i32_load(ptr noundef %735, i64 noundef %738)
  store i32 %739, ptr %48, align 4, !tbaa !9
  %740 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %740, ptr %11, align 4, !tbaa !9
  %741 = load i32, ptr %48, align 4, !tbaa !9
  %742 = icmp ne i32 %741, 0
  %743 = xor i1 %742, true
  %744 = zext i1 %743 to i32
  store i32 %744, ptr %48, align 4, !tbaa !9
  %745 = load i32, ptr %48, align 4, !tbaa !9
  %746 = icmp ne i32 %745, 0
  br i1 %746, label %747, label %748

747:                                              ; preds = %732
  br label %1586

748:                                              ; preds = %732
  %749 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %749, ptr %48, align 4, !tbaa !9
  store i64 17179869184, ptr %59, align 8, !tbaa !11
  %750 = load ptr, ptr %5, align 8, !tbaa !5
  %751 = getelementptr inbounds %struct.w2c_hermes, ptr %750, i32 0, i32 6
  %752 = load i32, ptr %48, align 4, !tbaa !9
  %753 = zext i32 %752 to i64
  %754 = add i64 %753, 132
  %755 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %751, i64 noundef %754, i64 noundef %755)
  %756 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %756, ptr %48, align 4, !tbaa !9
  %757 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %757, ptr %49, align 4, !tbaa !9
  store i32 140, ptr %50, align 4, !tbaa !9
  %758 = load i32, ptr %50, align 4, !tbaa !9
  %759 = load i32, ptr %49, align 4, !tbaa !9
  %760 = add i32 %759, %758
  store i32 %760, ptr %49, align 4, !tbaa !9
  %761 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %761, ptr %14, align 4, !tbaa !9
  %762 = load ptr, ptr %5, align 8, !tbaa !5
  %763 = getelementptr inbounds %struct.w2c_hermes, ptr %762, i32 0, i32 6
  %764 = load i32, ptr %48, align 4, !tbaa !9
  %765 = zext i32 %764 to i64
  %766 = add i64 %765, 128
  %767 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %763, i64 noundef %766, i32 noundef %767)
  %768 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %768, ptr %48, align 4, !tbaa !9
  %769 = load ptr, ptr %5, align 8, !tbaa !5
  %770 = getelementptr inbounds %struct.w2c_hermes, ptr %769, i32 0, i32 6
  %771 = load i32, ptr %48, align 4, !tbaa !9
  %772 = zext i32 %771 to i64
  %773 = add i64 %772, 76
  %774 = call i32 @i32_load(ptr noundef %770, i64 noundef %773)
  store i32 %774, ptr %48, align 4, !tbaa !9
  %775 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %775, ptr %13, align 4, !tbaa !9
  store i32 170, ptr %49, align 4, !tbaa !9
  %776 = load i32, ptr %49, align 4, !tbaa !9
  %777 = icmp eq i32 %776, 0
  %778 = xor i1 %777, true
  %779 = xor i1 %778, true
  %780 = zext i1 %779 to i32
  %781 = sext i32 %780 to i64
  %782 = call i64 @llvm.expect.i64(i64 %781, i64 0)
  %783 = icmp ne i64 %782, 0
  br i1 %783, label %784, label %786

784:                                              ; preds = %748
  call void @wasm_rt_trap(i32 noundef 3) #8
  unreachable

785:                                              ; No predecessors!
  br label %790

786:                                              ; preds = %748
  %787 = load i32, ptr %48, align 4, !tbaa !9
  %788 = load i32, ptr %49, align 4, !tbaa !9
  %789 = udiv i32 %787, %788
  br label %790

790:                                              ; preds = %786, %785
  %791 = phi i32 [ 0, %785 ], [ %789, %786 ]
  store i32 %791, ptr %48, align 4, !tbaa !9
  %792 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %792, ptr %9, align 4, !tbaa !9
  %793 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %793, ptr %48, align 4, !tbaa !9
  store i32 -64, ptr %49, align 4, !tbaa !9
  %794 = load i32, ptr %49, align 4, !tbaa !9
  %795 = load i32, ptr %48, align 4, !tbaa !9
  %796 = sub i32 %795, %794
  store i32 %796, ptr %48, align 4, !tbaa !9
  %797 = load ptr, ptr %5, align 8, !tbaa !5
  %798 = getelementptr inbounds %struct.w2c_hermes, ptr %797, i32 0, i32 6
  %799 = load i32, ptr %48, align 4, !tbaa !9
  %800 = zext i32 %799 to i64
  %801 = call i32 @i32_load(ptr noundef %798, i64 noundef %800)
  store i32 %801, ptr %48, align 4, !tbaa !9
  %802 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %802, ptr %16, align 4, !tbaa !9
  %803 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %803, ptr %49, align 4, !tbaa !9
  %804 = load ptr, ptr %5, align 8, !tbaa !5
  %805 = getelementptr inbounds %struct.w2c_hermes, ptr %804, i32 0, i32 6
  %806 = load i32, ptr %49, align 4, !tbaa !9
  %807 = zext i32 %806 to i64
  %808 = add i64 %807, 68
  %809 = call i32 @i32_load(ptr noundef %805, i64 noundef %808)
  store i32 %809, ptr %49, align 4, !tbaa !9
  %810 = load i32, ptr %48, align 4, !tbaa !9
  %811 = load i32, ptr %49, align 4, !tbaa !9
  %812 = icmp eq i32 %810, %811
  %813 = zext i1 %812 to i32
  store i32 %813, ptr %48, align 4, !tbaa !9
  %814 = load i32, ptr %48, align 4, !tbaa !9
  %815 = icmp ne i32 %814, 0
  br i1 %815, label %816, label %817

816:                                              ; preds = %790
  br label %1431

817:                                              ; preds = %790
  %818 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %818, ptr %48, align 4, !tbaa !9
  %819 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %819, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %820 = load i32, ptr %50, align 4, !tbaa !9
  %821 = and i32 %820, 31
  %822 = load i32, ptr %49, align 4, !tbaa !9
  %823 = shl i32 %822, %821
  store i32 %823, ptr %49, align 4, !tbaa !9
  %824 = load i32, ptr %49, align 4, !tbaa !9
  %825 = load i32, ptr %48, align 4, !tbaa !9
  %826 = add i32 %825, %824
  store i32 %826, ptr %48, align 4, !tbaa !9
  %827 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %827, ptr %8, align 4, !tbaa !9
  %828 = load ptr, ptr %5, align 8, !tbaa !5
  %829 = getelementptr inbounds %struct.w2c_hermes, ptr %828, i32 0, i32 6
  %830 = load i32, ptr %48, align 4, !tbaa !9
  %831 = zext i32 %830 to i64
  %832 = call i32 @i32_load(ptr noundef %829, i64 noundef %831)
  store i32 %832, ptr %48, align 4, !tbaa !9
  %833 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %833, ptr %49, align 4, !tbaa !9
  %834 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %834, ptr %50, align 4, !tbaa !9
  store i32 170, ptr %51, align 4, !tbaa !9
  %835 = load i32, ptr %51, align 4, !tbaa !9
  %836 = load i32, ptr %50, align 4, !tbaa !9
  %837 = mul i32 %836, %835
  store i32 %837, ptr %50, align 4, !tbaa !9
  %838 = load i32, ptr %50, align 4, !tbaa !9
  %839 = load i32, ptr %49, align 4, !tbaa !9
  %840 = sub i32 %839, %838
  store i32 %840, ptr %49, align 4, !tbaa !9
  store i32 24, ptr %50, align 4, !tbaa !9
  %841 = load i32, ptr %50, align 4, !tbaa !9
  %842 = load i32, ptr %49, align 4, !tbaa !9
  %843 = mul i32 %842, %841
  store i32 %843, ptr %49, align 4, !tbaa !9
  %844 = load i32, ptr %49, align 4, !tbaa !9
  %845 = load i32, ptr %48, align 4, !tbaa !9
  %846 = add i32 %845, %844
  store i32 %846, ptr %48, align 4, !tbaa !9
  %847 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %847, ptr %9, align 4, !tbaa !9
  %848 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %848, ptr %49, align 4, !tbaa !9
  %849 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %849, ptr %50, align 4, !tbaa !9
  %850 = load ptr, ptr %5, align 8, !tbaa !5
  %851 = getelementptr inbounds %struct.w2c_hermes, ptr %850, i32 0, i32 6
  %852 = load i32, ptr %50, align 4, !tbaa !9
  %853 = zext i32 %852 to i64
  %854 = add i64 %853, 80
  %855 = call i32 @i32_load(ptr noundef %851, i64 noundef %854)
  store i32 %855, ptr %50, align 4, !tbaa !9
  %856 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %856, ptr %51, align 4, !tbaa !9
  %857 = load i32, ptr %51, align 4, !tbaa !9
  %858 = load i32, ptr %50, align 4, !tbaa !9
  %859 = add i32 %858, %857
  store i32 %859, ptr %50, align 4, !tbaa !9
  %860 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %860, ptr %13, align 4, !tbaa !9
  store i32 170, ptr %51, align 4, !tbaa !9
  %861 = load i32, ptr %51, align 4, !tbaa !9
  %862 = icmp eq i32 %861, 0
  %863 = xor i1 %862, true
  %864 = xor i1 %863, true
  %865 = zext i1 %864 to i32
  %866 = sext i32 %865 to i64
  %867 = call i64 @llvm.expect.i64(i64 %866, i64 0)
  %868 = icmp ne i64 %867, 0
  br i1 %868, label %869, label %871

869:                                              ; preds = %817
  call void @wasm_rt_trap(i32 noundef 3) #8
  unreachable

870:                                              ; No predecessors!
  br label %875

871:                                              ; preds = %817
  %872 = load i32, ptr %50, align 4, !tbaa !9
  %873 = load i32, ptr %51, align 4, !tbaa !9
  %874 = udiv i32 %872, %873
  br label %875

875:                                              ; preds = %871, %870
  %876 = phi i32 [ 0, %870 ], [ %874, %871 ]
  store i32 %876, ptr %50, align 4, !tbaa !9
  %877 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %877, ptr %17, align 4, !tbaa !9
  store i32 2, ptr %51, align 4, !tbaa !9
  %878 = load i32, ptr %51, align 4, !tbaa !9
  %879 = and i32 %878, 31
  %880 = load i32, ptr %50, align 4, !tbaa !9
  %881 = shl i32 %880, %879
  store i32 %881, ptr %50, align 4, !tbaa !9
  %882 = load i32, ptr %50, align 4, !tbaa !9
  %883 = load i32, ptr %49, align 4, !tbaa !9
  %884 = add i32 %883, %882
  store i32 %884, ptr %49, align 4, !tbaa !9
  %885 = load ptr, ptr %5, align 8, !tbaa !5
  %886 = getelementptr inbounds %struct.w2c_hermes, ptr %885, i32 0, i32 6
  %887 = load i32, ptr %49, align 4, !tbaa !9
  %888 = zext i32 %887 to i64
  %889 = call i32 @i32_load(ptr noundef %886, i64 noundef %888)
  store i32 %889, ptr %49, align 4, !tbaa !9
  %890 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %890, ptr %50, align 4, !tbaa !9
  %891 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %891, ptr %51, align 4, !tbaa !9
  store i32 170, ptr %52, align 4, !tbaa !9
  %892 = load i32, ptr %52, align 4, !tbaa !9
  %893 = load i32, ptr %51, align 4, !tbaa !9
  %894 = mul i32 %893, %892
  store i32 %894, ptr %51, align 4, !tbaa !9
  %895 = load i32, ptr %51, align 4, !tbaa !9
  %896 = load i32, ptr %50, align 4, !tbaa !9
  %897 = sub i32 %896, %895
  store i32 %897, ptr %50, align 4, !tbaa !9
  store i32 24, ptr %51, align 4, !tbaa !9
  %898 = load i32, ptr %51, align 4, !tbaa !9
  %899 = load i32, ptr %50, align 4, !tbaa !9
  %900 = mul i32 %899, %898
  store i32 %900, ptr %50, align 4, !tbaa !9
  %901 = load i32, ptr %50, align 4, !tbaa !9
  %902 = load i32, ptr %49, align 4, !tbaa !9
  %903 = add i32 %902, %901
  store i32 %903, ptr %49, align 4, !tbaa !9
  %904 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %904, ptr %13, align 4, !tbaa !9
  %905 = load i32, ptr %48, align 4, !tbaa !9
  %906 = load i32, ptr %49, align 4, !tbaa !9
  %907 = icmp eq i32 %905, %906
  %908 = zext i1 %907 to i32
  store i32 %908, ptr %48, align 4, !tbaa !9
  %909 = load i32, ptr %48, align 4, !tbaa !9
  %910 = icmp ne i32 %909, 0
  br i1 %910, label %911, label %912

911:                                              ; preds = %875
  br label %1431

912:                                              ; preds = %875
  %913 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %913, ptr %48, align 4, !tbaa !9
  store i32 84, ptr %49, align 4, !tbaa !9
  %914 = load i32, ptr %49, align 4, !tbaa !9
  %915 = load i32, ptr %48, align 4, !tbaa !9
  %916 = add i32 %915, %914
  store i32 %916, ptr %48, align 4, !tbaa !9
  %917 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %917, ptr %16, align 4, !tbaa !9
  br label %918

918:                                              ; preds = %1314, %912
  %919 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %919, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %920 = load ptr, ptr %5, align 8, !tbaa !5
  %921 = getelementptr inbounds %struct.w2c_hermes, ptr %920, i32 0, i32 6
  %922 = load i32, ptr %48, align 4, !tbaa !9
  %923 = zext i32 %922 to i64
  %924 = add i64 %923, 120
  %925 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %921, i64 noundef %924, i32 noundef %925)
  %926 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %926, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %927 = load ptr, ptr %5, align 8, !tbaa !5
  %928 = getelementptr inbounds %struct.w2c_hermes, ptr %927, i32 0, i32 6
  %929 = load i32, ptr %48, align 4, !tbaa !9
  %930 = zext i32 %929 to i64
  %931 = add i64 %930, 112
  %932 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %928, i64 noundef %931, i64 noundef %932)
  %933 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %933, ptr %48, align 4, !tbaa !9
  %934 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %934, ptr %49, align 4, !tbaa !9
  %935 = load ptr, ptr %5, align 8, !tbaa !5
  %936 = getelementptr inbounds %struct.w2c_hermes, ptr %935, i32 0, i32 6
  %937 = load i32, ptr %49, align 4, !tbaa !9
  %938 = zext i32 %937 to i64
  %939 = call i32 @i32_load(ptr noundef %936, i64 noundef %938)
  store i32 %939, ptr %49, align 4, !tbaa !9
  %940 = load ptr, ptr %5, align 8, !tbaa !5
  %941 = getelementptr inbounds %struct.w2c_hermes, ptr %940, i32 0, i32 6
  %942 = load i32, ptr %48, align 4, !tbaa !9
  %943 = zext i32 %942 to i64
  %944 = add i64 %943, 104
  %945 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %941, i64 noundef %944, i32 noundef %945)
  %946 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %946, ptr %48, align 4, !tbaa !9
  %947 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %947, ptr %49, align 4, !tbaa !9
  %948 = load ptr, ptr %5, align 8, !tbaa !5
  %949 = getelementptr inbounds %struct.w2c_hermes, ptr %948, i32 0, i32 6
  %950 = load i32, ptr %49, align 4, !tbaa !9
  %951 = zext i32 %950 to i64
  %952 = add i64 %951, 4
  %953 = call i32 @i32_load(ptr noundef %949, i64 noundef %952)
  store i32 %953, ptr %49, align 4, !tbaa !9
  %954 = load ptr, ptr %5, align 8, !tbaa !5
  %955 = getelementptr inbounds %struct.w2c_hermes, ptr %954, i32 0, i32 6
  %956 = load i32, ptr %48, align 4, !tbaa !9
  %957 = zext i32 %956 to i64
  %958 = add i64 %957, 108
  %959 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %955, i64 noundef %958, i32 noundef %959)
  %960 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %960, ptr %48, align 4, !tbaa !9
  %961 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %961, ptr %49, align 4, !tbaa !9
  %962 = load ptr, ptr %5, align 8, !tbaa !5
  %963 = getelementptr inbounds %struct.w2c_hermes, ptr %962, i32 0, i32 6
  %964 = load i32, ptr %49, align 4, !tbaa !9
  %965 = zext i32 %964 to i64
  %966 = add i64 %965, 104
  %967 = call i64 @i64_load(ptr noundef %963, i64 noundef %966)
  store i64 %967, ptr %59, align 8, !tbaa !11
  %968 = load ptr, ptr %5, align 8, !tbaa !5
  %969 = getelementptr inbounds %struct.w2c_hermes, ptr %968, i32 0, i32 6
  %970 = load i32, ptr %48, align 4, !tbaa !9
  %971 = zext i32 %970 to i64
  %972 = add i64 %971, 24
  %973 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %969, i64 noundef %972, i64 noundef %973)
  %974 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %974, ptr %48, align 4, !tbaa !9
  store i32 112, ptr %49, align 4, !tbaa !9
  %975 = load i32, ptr %49, align 4, !tbaa !9
  %976 = load i32, ptr %48, align 4, !tbaa !9
  %977 = add i32 %976, %975
  store i32 %977, ptr %48, align 4, !tbaa !9
  %978 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %978, ptr %11, align 4, !tbaa !9
  %979 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %979, ptr %49, align 4, !tbaa !9
  store i32 24, ptr %50, align 4, !tbaa !9
  %980 = load i32, ptr %50, align 4, !tbaa !9
  %981 = load i32, ptr %49, align 4, !tbaa !9
  %982 = add i32 %981, %980
  store i32 %982, ptr %49, align 4, !tbaa !9
  %983 = load ptr, ptr %5, align 8, !tbaa !5
  %984 = load i32, ptr %48, align 4, !tbaa !9
  %985 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AconvertUTF16ToUTF8WithSingleSurrogates0x28std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x29(ptr noundef %983, i32 noundef %984, i32 noundef %985)
  %986 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %986, ptr %48, align 4, !tbaa !9
  %987 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %987, ptr %49, align 4, !tbaa !9
  %988 = load ptr, ptr %5, align 8, !tbaa !5
  %989 = getelementptr inbounds %struct.w2c_hermes, ptr %988, i32 0, i32 6
  %990 = load i32, ptr %49, align 4, !tbaa !9
  %991 = zext i32 %990 to i64
  %992 = add i64 %991, 112
  %993 = call i32 @i32_load(ptr noundef %989, i64 noundef %992)
  store i32 %993, ptr %49, align 4, !tbaa !9
  %994 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %994, ptr %50, align 4, !tbaa !9
  %995 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %995, ptr %51, align 4, !tbaa !9
  %996 = load ptr, ptr %5, align 8, !tbaa !5
  %997 = getelementptr inbounds %struct.w2c_hermes, ptr %996, i32 0, i32 6
  %998 = load i32, ptr %51, align 4, !tbaa !9
  %999 = zext i32 %998 to i64
  %1000 = add i64 %999, 123
  %1001 = call i32 @i32_load8_u(ptr noundef %997, i64 noundef %1000)
  store i32 %1001, ptr %51, align 4, !tbaa !9
  %1002 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %1002, ptr %11, align 4, !tbaa !9
  %1003 = load i32, ptr %51, align 4, !tbaa !9
  %1004 = trunc i32 %1003 to i8
  %1005 = sext i8 %1004 to i32
  store i32 %1005, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %1006 = load i32, ptr %51, align 4, !tbaa !9
  %1007 = load i32, ptr %52, align 4, !tbaa !9
  %1008 = icmp slt i32 %1006, %1007
  %1009 = zext i1 %1008 to i32
  store i32 %1009, ptr %51, align 4, !tbaa !9
  %1010 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %1010, ptr %17, align 4, !tbaa !9
  %1011 = load i32, ptr %51, align 4, !tbaa !9
  %1012 = icmp ne i32 %1011, 0
  br i1 %1012, label %1013, label %1015

1013:                                             ; preds = %918
  %1014 = load i32, ptr %49, align 4, !tbaa !9
  br label %1017

1015:                                             ; preds = %918
  %1016 = load i32, ptr %50, align 4, !tbaa !9
  br label %1017

1017:                                             ; preds = %1015, %1013
  %1018 = phi i32 [ %1014, %1013 ], [ %1016, %1015 ]
  store i32 %1018, ptr %49, align 4, !tbaa !9
  %1019 = load ptr, ptr %5, align 8, !tbaa !5
  %1020 = getelementptr inbounds %struct.w2c_hermes, ptr %1019, i32 0, i32 6
  %1021 = load i32, ptr %48, align 4, !tbaa !9
  %1022 = zext i32 %1021 to i64
  %1023 = add i64 %1022, 96
  %1024 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1020, i64 noundef %1023, i32 noundef %1024)
  %1025 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1025, ptr %48, align 4, !tbaa !9
  %1026 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1026, ptr %49, align 4, !tbaa !9
  %1027 = load ptr, ptr %5, align 8, !tbaa !5
  %1028 = getelementptr inbounds %struct.w2c_hermes, ptr %1027, i32 0, i32 6
  %1029 = load i32, ptr %49, align 4, !tbaa !9
  %1030 = zext i32 %1029 to i64
  %1031 = add i64 %1030, 116
  %1032 = call i32 @i32_load(ptr noundef %1028, i64 noundef %1031)
  store i32 %1032, ptr %49, align 4, !tbaa !9
  %1033 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1033, ptr %50, align 4, !tbaa !9
  %1034 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1034, ptr %51, align 4, !tbaa !9
  %1035 = load i32, ptr %51, align 4, !tbaa !9
  %1036 = icmp ne i32 %1035, 0
  br i1 %1036, label %1037, label %1039

1037:                                             ; preds = %1017
  %1038 = load i32, ptr %49, align 4, !tbaa !9
  br label %1041

1039:                                             ; preds = %1017
  %1040 = load i32, ptr %50, align 4, !tbaa !9
  br label %1041

1041:                                             ; preds = %1039, %1037
  %1042 = phi i32 [ %1038, %1037 ], [ %1040, %1039 ]
  store i32 %1042, ptr %49, align 4, !tbaa !9
  %1043 = load ptr, ptr %5, align 8, !tbaa !5
  %1044 = getelementptr inbounds %struct.w2c_hermes, ptr %1043, i32 0, i32 6
  %1045 = load i32, ptr %48, align 4, !tbaa !9
  %1046 = zext i32 %1045 to i64
  %1047 = add i64 %1046, 100
  %1048 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1044, i64 noundef %1047, i32 noundef %1048)
  %1049 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1049, ptr %48, align 4, !tbaa !9
  %1050 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1050, ptr %49, align 4, !tbaa !9
  %1051 = load ptr, ptr %5, align 8, !tbaa !5
  %1052 = getelementptr inbounds %struct.w2c_hermes, ptr %1051, i32 0, i32 6
  %1053 = load i32, ptr %49, align 4, !tbaa !9
  %1054 = zext i32 %1053 to i64
  %1055 = add i64 %1054, 96
  %1056 = call i64 @i64_load(ptr noundef %1052, i64 noundef %1055)
  store i64 %1056, ptr %59, align 8, !tbaa !11
  %1057 = load ptr, ptr %5, align 8, !tbaa !5
  %1058 = getelementptr inbounds %struct.w2c_hermes, ptr %1057, i32 0, i32 6
  %1059 = load i32, ptr %48, align 4, !tbaa !9
  %1060 = zext i32 %1059 to i64
  %1061 = add i64 %1060, 16
  %1062 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1058, i64 noundef %1061, i64 noundef %1062)
  %1063 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1063, ptr %48, align 4, !tbaa !9
  %1064 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1064, ptr %49, align 4, !tbaa !9
  store i32 16, ptr %50, align 4, !tbaa !9
  %1065 = load i32, ptr %50, align 4, !tbaa !9
  %1066 = load i32, ptr %49, align 4, !tbaa !9
  %1067 = add i32 %1066, %1065
  store i32 %1067, ptr %49, align 4, !tbaa !9
  %1068 = load ptr, ptr %5, align 8, !tbaa !5
  %1069 = load i32, ptr %48, align 4, !tbaa !9
  %1070 = load i32, ptr %49, align 4, !tbaa !9
  %1071 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %1068, i32 noundef %1069, i32 noundef %1070)
  store i32 %1071, ptr %48, align 4, !tbaa !9
  %1072 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1072, ptr %17, align 4, !tbaa !9
  %1073 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1073, ptr %48, align 4, !tbaa !9
  %1074 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1074, ptr %49, align 4, !tbaa !9
  %1075 = load ptr, ptr %5, align 8, !tbaa !5
  %1076 = getelementptr inbounds %struct.w2c_hermes, ptr %1075, i32 0, i32 6
  %1077 = load i32, ptr %49, align 4, !tbaa !9
  %1078 = zext i32 %1077 to i64
  %1079 = call i32 @i32_load(ptr noundef %1076, i64 noundef %1078)
  store i32 %1079, ptr %49, align 4, !tbaa !9
  %1080 = load ptr, ptr %5, align 8, !tbaa !5
  %1081 = getelementptr inbounds %struct.w2c_hermes, ptr %1080, i32 0, i32 6
  %1082 = load i32, ptr %48, align 4, !tbaa !9
  %1083 = zext i32 %1082 to i64
  %1084 = add i64 %1083, 88
  %1085 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1081, i64 noundef %1084, i32 noundef %1085)
  %1086 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1086, ptr %48, align 4, !tbaa !9
  %1087 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1087, ptr %49, align 4, !tbaa !9
  %1088 = load ptr, ptr %5, align 8, !tbaa !5
  %1089 = getelementptr inbounds %struct.w2c_hermes, ptr %1088, i32 0, i32 6
  %1090 = load i32, ptr %49, align 4, !tbaa !9
  %1091 = zext i32 %1090 to i64
  %1092 = add i64 %1091, 4
  %1093 = call i32 @i32_load(ptr noundef %1089, i64 noundef %1092)
  store i32 %1093, ptr %49, align 4, !tbaa !9
  %1094 = load ptr, ptr %5, align 8, !tbaa !5
  %1095 = getelementptr inbounds %struct.w2c_hermes, ptr %1094, i32 0, i32 6
  %1096 = load i32, ptr %48, align 4, !tbaa !9
  %1097 = zext i32 %1096 to i64
  %1098 = add i64 %1097, 92
  %1099 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1095, i64 noundef %1098, i32 noundef %1099)
  %1100 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1100, ptr %48, align 4, !tbaa !9
  %1101 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1101, ptr %49, align 4, !tbaa !9
  store i32 88, ptr %50, align 4, !tbaa !9
  %1102 = load i32, ptr %50, align 4, !tbaa !9
  %1103 = load i32, ptr %49, align 4, !tbaa !9
  %1104 = add i32 %1103, %1102
  store i32 %1104, ptr %49, align 4, !tbaa !9
  %1105 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1105, ptr %50, align 4, !tbaa !9
  store i32 172, ptr %51, align 4, !tbaa !9
  %1106 = load i32, ptr %51, align 4, !tbaa !9
  %1107 = load i32, ptr %50, align 4, !tbaa !9
  %1108 = add i32 %1107, %1106
  store i32 %1108, ptr %50, align 4, !tbaa !9
  %1109 = load ptr, ptr %5, align 8, !tbaa !5
  %1110 = load i32, ptr %48, align 4, !tbaa !9
  %1111 = load i32, ptr %49, align 4, !tbaa !9
  %1112 = load i32, ptr %50, align 4, !tbaa !9
  %1113 = call i32 @w2c_hermes_bool0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x3E0x2C0x20llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x3E0x3A0x3ALookupBucketFor0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x28llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x20const0x2A0x260x290x20const(ptr noundef %1109, i32 noundef %1110, i32 noundef %1111, i32 noundef %1112)
  store i32 %1113, ptr %48, align 4, !tbaa !9
  %1114 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1114, ptr %11, align 4, !tbaa !9
  %1115 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1115, ptr %48, align 4, !tbaa !9
  %1116 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1116, ptr %49, align 4, !tbaa !9
  %1117 = load ptr, ptr %5, align 8, !tbaa !5
  %1118 = getelementptr inbounds %struct.w2c_hermes, ptr %1117, i32 0, i32 6
  %1119 = load i32, ptr %49, align 4, !tbaa !9
  %1120 = zext i32 %1119 to i64
  %1121 = add i64 %1120, 172
  %1122 = call i32 @i32_load(ptr noundef %1118, i64 noundef %1121)
  store i32 %1122, ptr %49, align 4, !tbaa !9
  %1123 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1123, ptr %50, align 4, !tbaa !9
  %1124 = load ptr, ptr %5, align 8, !tbaa !5
  %1125 = getelementptr inbounds %struct.w2c_hermes, ptr %1124, i32 0, i32 6
  %1126 = load i32, ptr %50, align 4, !tbaa !9
  %1127 = zext i32 %1126 to i64
  %1128 = add i64 %1127, 84
  %1129 = call i32 @i32_load(ptr noundef %1125, i64 noundef %1128)
  store i32 %1129, ptr %50, align 4, !tbaa !9
  %1130 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1130, ptr %51, align 4, !tbaa !9
  %1131 = load ptr, ptr %5, align 8, !tbaa !5
  %1132 = getelementptr inbounds %struct.w2c_hermes, ptr %1131, i32 0, i32 6
  %1133 = load i32, ptr %51, align 4, !tbaa !9
  %1134 = zext i32 %1133 to i64
  %1135 = add i64 %1134, 96
  %1136 = call i32 @i32_load(ptr noundef %1132, i64 noundef %1135)
  store i32 %1136, ptr %51, align 4, !tbaa !9
  store i32 12, ptr %52, align 4, !tbaa !9
  %1137 = load i32, ptr %52, align 4, !tbaa !9
  %1138 = load i32, ptr %51, align 4, !tbaa !9
  %1139 = mul i32 %1138, %1137
  store i32 %1139, ptr %51, align 4, !tbaa !9
  %1140 = load i32, ptr %51, align 4, !tbaa !9
  %1141 = load i32, ptr %50, align 4, !tbaa !9
  %1142 = add i32 %1141, %1140
  store i32 %1142, ptr %50, align 4, !tbaa !9
  %1143 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1143, ptr %51, align 4, !tbaa !9
  %1144 = load i32, ptr %51, align 4, !tbaa !9
  %1145 = icmp ne i32 %1144, 0
  br i1 %1145, label %1146, label %1148

1146:                                             ; preds = %1041
  %1147 = load i32, ptr %49, align 4, !tbaa !9
  br label %1150

1148:                                             ; preds = %1041
  %1149 = load i32, ptr %50, align 4, !tbaa !9
  br label %1150

1150:                                             ; preds = %1148, %1146
  %1151 = phi i32 [ %1147, %1146 ], [ %1149, %1148 ]
  store i32 %1151, ptr %49, align 4, !tbaa !9
  %1152 = load ptr, ptr %5, align 8, !tbaa !5
  %1153 = getelementptr inbounds %struct.w2c_hermes, ptr %1152, i32 0, i32 6
  %1154 = load i32, ptr %49, align 4, !tbaa !9
  %1155 = zext i32 %1154 to i64
  %1156 = add i64 %1155, 8
  %1157 = call i32 @i32_load(ptr noundef %1153, i64 noundef %1156)
  store i32 %1157, ptr %49, align 4, !tbaa !9
  %1158 = load i32, ptr %49, align 4, !tbaa !9
  %1159 = uitofp i32 %1158 to double
  store double %1159, ptr %71, align 8, !tbaa !20
  %1160 = load ptr, ptr %5, align 8, !tbaa !5
  %1161 = load i32, ptr %48, align 4, !tbaa !9
  %1162 = load double, ptr %71, align 8, !tbaa !20
  %1163 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralNumber0x28double0x29(ptr noundef %1160, i32 noundef %1161, double noundef %1162)
  store i32 %1163, ptr %48, align 4, !tbaa !9
  %1164 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1164, ptr %18, align 4, !tbaa !9
  %1165 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1165, ptr %48, align 4, !tbaa !9
  %1166 = load ptr, ptr %5, align 8, !tbaa !5
  %1167 = getelementptr inbounds %struct.w2c_hermes, ptr %1166, i32 0, i32 6
  %1168 = load i32, ptr %48, align 4, !tbaa !9
  %1169 = zext i32 %1168 to i64
  %1170 = add i64 %1169, 132
  %1171 = call i32 @i32_load(ptr noundef %1167, i64 noundef %1170)
  store i32 %1171, ptr %48, align 4, !tbaa !9
  %1172 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1172, ptr %11, align 4, !tbaa !9
  %1173 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1173, ptr %49, align 4, !tbaa !9
  %1174 = load ptr, ptr %5, align 8, !tbaa !5
  %1175 = getelementptr inbounds %struct.w2c_hermes, ptr %1174, i32 0, i32 6
  %1176 = load i32, ptr %49, align 4, !tbaa !9
  %1177 = zext i32 %1176 to i64
  %1178 = add i64 %1177, 136
  %1179 = call i32 @i32_load(ptr noundef %1175, i64 noundef %1178)
  store i32 %1179, ptr %49, align 4, !tbaa !9
  %1180 = load i32, ptr %48, align 4, !tbaa !9
  %1181 = load i32, ptr %49, align 4, !tbaa !9
  %1182 = icmp uge i32 %1180, %1181
  %1183 = zext i1 %1182 to i32
  store i32 %1183, ptr %48, align 4, !tbaa !9
  %1184 = load i32, ptr %48, align 4, !tbaa !9
  %1185 = icmp ne i32 %1184, 0
  br i1 %1185, label %1186, label %1205

1186:                                             ; preds = %1150
  %1187 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1187, ptr %48, align 4, !tbaa !9
  store i32 128, ptr %49, align 4, !tbaa !9
  %1188 = load i32, ptr %49, align 4, !tbaa !9
  %1189 = load i32, ptr %48, align 4, !tbaa !9
  %1190 = add i32 %1189, %1188
  store i32 %1190, ptr %48, align 4, !tbaa !9
  %1191 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1191, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %1192 = load ptr, ptr %5, align 8, !tbaa !5
  %1193 = load i32, ptr %48, align 4, !tbaa !9
  %1194 = load i32, ptr %49, align 4, !tbaa !9
  %1195 = load i32, ptr %50, align 4, !tbaa !9
  %1196 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %1192, i32 noundef %1193, i32 noundef %1194, i32 noundef %1195, i32 noundef %1196)
  %1197 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1197, ptr %48, align 4, !tbaa !9
  %1198 = load ptr, ptr %5, align 8, !tbaa !5
  %1199 = getelementptr inbounds %struct.w2c_hermes, ptr %1198, i32 0, i32 6
  %1200 = load i32, ptr %48, align 4, !tbaa !9
  %1201 = zext i32 %1200 to i64
  %1202 = add i64 %1201, 132
  %1203 = call i32 @i32_load(ptr noundef %1199, i64 noundef %1202)
  store i32 %1203, ptr %48, align 4, !tbaa !9
  %1204 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1204, ptr %11, align 4, !tbaa !9
  br label %1205

1205:                                             ; preds = %1186, %1150
  %1206 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1206, ptr %48, align 4, !tbaa !9
  %1207 = load ptr, ptr %5, align 8, !tbaa !5
  %1208 = getelementptr inbounds %struct.w2c_hermes, ptr %1207, i32 0, i32 6
  %1209 = load i32, ptr %48, align 4, !tbaa !9
  %1210 = zext i32 %1209 to i64
  %1211 = add i64 %1210, 128
  %1212 = call i32 @i32_load(ptr noundef %1208, i64 noundef %1211)
  store i32 %1212, ptr %48, align 4, !tbaa !9
  %1213 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1213, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %1214 = load i32, ptr %50, align 4, !tbaa !9
  %1215 = and i32 %1214, 31
  %1216 = load i32, ptr %49, align 4, !tbaa !9
  %1217 = shl i32 %1216, %1215
  store i32 %1217, ptr %49, align 4, !tbaa !9
  %1218 = load i32, ptr %49, align 4, !tbaa !9
  %1219 = load i32, ptr %48, align 4, !tbaa !9
  %1220 = add i32 %1219, %1218
  store i32 %1220, ptr %48, align 4, !tbaa !9
  %1221 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1221, ptr %19, align 4, !tbaa !9
  %1222 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1222, ptr %49, align 4, !tbaa !9
  %1223 = load ptr, ptr %5, align 8, !tbaa !5
  %1224 = getelementptr inbounds %struct.w2c_hermes, ptr %1223, i32 0, i32 6
  %1225 = load i32, ptr %48, align 4, !tbaa !9
  %1226 = zext i32 %1225 to i64
  %1227 = add i64 %1226, 4
  %1228 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1224, i64 noundef %1227, i32 noundef %1228)
  %1229 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1229, ptr %48, align 4, !tbaa !9
  %1230 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1230, ptr %49, align 4, !tbaa !9
  %1231 = load ptr, ptr %5, align 8, !tbaa !5
  %1232 = getelementptr inbounds %struct.w2c_hermes, ptr %1231, i32 0, i32 6
  %1233 = load i32, ptr %48, align 4, !tbaa !9
  %1234 = zext i32 %1233 to i64
  %1235 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1232, i64 noundef %1234, i32 noundef %1235)
  %1236 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1236, ptr %48, align 4, !tbaa !9
  %1237 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1237, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %1238 = load i32, ptr %50, align 4, !tbaa !9
  %1239 = load i32, ptr %49, align 4, !tbaa !9
  %1240 = add i32 %1239, %1238
  store i32 %1240, ptr %49, align 4, !tbaa !9
  %1241 = load ptr, ptr %5, align 8, !tbaa !5
  %1242 = getelementptr inbounds %struct.w2c_hermes, ptr %1241, i32 0, i32 6
  %1243 = load i32, ptr %48, align 4, !tbaa !9
  %1244 = zext i32 %1243 to i64
  %1245 = add i64 %1244, 132
  %1246 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1242, i64 noundef %1245, i32 noundef %1246)
  %1247 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1247, ptr %48, align 4, !tbaa !9
  %1248 = load ptr, ptr %5, align 8, !tbaa !5
  %1249 = getelementptr inbounds %struct.w2c_hermes, ptr %1248, i32 0, i32 6
  %1250 = load i32, ptr %48, align 4, !tbaa !9
  %1251 = zext i32 %1250 to i64
  %1252 = add i64 %1251, 123
  %1253 = call i32 @i32_load8_s(ptr noundef %1249, i64 noundef %1252)
  store i32 %1253, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %1254 = load i32, ptr %48, align 4, !tbaa !9
  %1255 = load i32, ptr %49, align 4, !tbaa !9
  %1256 = icmp slt i32 %1254, %1255
  %1257 = zext i1 %1256 to i32
  store i32 %1257, ptr %48, align 4, !tbaa !9
  %1258 = load i32, ptr %48, align 4, !tbaa !9
  %1259 = icmp ne i32 %1258, 0
  br i1 %1259, label %1260, label %1270

1260:                                             ; preds = %1205
  %1261 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1261, ptr %48, align 4, !tbaa !9
  %1262 = load ptr, ptr %5, align 8, !tbaa !5
  %1263 = getelementptr inbounds %struct.w2c_hermes, ptr %1262, i32 0, i32 6
  %1264 = load i32, ptr %48, align 4, !tbaa !9
  %1265 = zext i32 %1264 to i64
  %1266 = add i64 %1265, 112
  %1267 = call i32 @i32_load(ptr noundef %1263, i64 noundef %1266)
  store i32 %1267, ptr %48, align 4, !tbaa !9
  %1268 = load ptr, ptr %5, align 8, !tbaa !5
  %1269 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %1268, i32 noundef %1269)
  br label %1270

1270:                                             ; preds = %1260, %1205
  %1271 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1271, ptr %48, align 4, !tbaa !9
  store i32 24, ptr %49, align 4, !tbaa !9
  %1272 = load i32, ptr %49, align 4, !tbaa !9
  %1273 = load i32, ptr %48, align 4, !tbaa !9
  %1274 = add i32 %1273, %1272
  store i32 %1274, ptr %48, align 4, !tbaa !9
  %1275 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1275, ptr %9, align 4, !tbaa !9
  %1276 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1276, ptr %49, align 4, !tbaa !9
  %1277 = load ptr, ptr %5, align 8, !tbaa !5
  %1278 = getelementptr inbounds %struct.w2c_hermes, ptr %1277, i32 0, i32 6
  %1279 = load i32, ptr %49, align 4, !tbaa !9
  %1280 = zext i32 %1279 to i64
  %1281 = call i32 @i32_load(ptr noundef %1278, i64 noundef %1280)
  store i32 %1281, ptr %49, align 4, !tbaa !9
  %1282 = load i32, ptr %49, align 4, !tbaa !9
  %1283 = load i32, ptr %48, align 4, !tbaa !9
  %1284 = sub i32 %1283, %1282
  store i32 %1284, ptr %48, align 4, !tbaa !9
  store i32 4080, ptr %49, align 4, !tbaa !9
  %1285 = load i32, ptr %48, align 4, !tbaa !9
  %1286 = load i32, ptr %49, align 4, !tbaa !9
  %1287 = icmp eq i32 %1285, %1286
  %1288 = zext i1 %1287 to i32
  store i32 %1288, ptr %48, align 4, !tbaa !9
  %1289 = load i32, ptr %48, align 4, !tbaa !9
  %1290 = icmp ne i32 %1289, 0
  br i1 %1290, label %1291, label %1305

1291:                                             ; preds = %1270
  %1292 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1292, ptr %48, align 4, !tbaa !9
  %1293 = load ptr, ptr %5, align 8, !tbaa !5
  %1294 = getelementptr inbounds %struct.w2c_hermes, ptr %1293, i32 0, i32 6
  %1295 = load i32, ptr %48, align 4, !tbaa !9
  %1296 = zext i32 %1295 to i64
  %1297 = add i64 %1296, 4
  %1298 = call i32 @i32_load(ptr noundef %1294, i64 noundef %1297)
  store i32 %1298, ptr %48, align 4, !tbaa !9
  %1299 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1299, ptr %9, align 4, !tbaa !9
  %1300 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1300, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %1301 = load i32, ptr %49, align 4, !tbaa !9
  %1302 = load i32, ptr %48, align 4, !tbaa !9
  %1303 = add i32 %1302, %1301
  store i32 %1303, ptr %48, align 4, !tbaa !9
  %1304 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1304, ptr %8, align 4, !tbaa !9
  br label %1305

1305:                                             ; preds = %1291, %1270
  %1306 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1306, ptr %48, align 4, !tbaa !9
  %1307 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1307, ptr %49, align 4, !tbaa !9
  %1308 = load i32, ptr %48, align 4, !tbaa !9
  %1309 = load i32, ptr %49, align 4, !tbaa !9
  %1310 = icmp ne i32 %1308, %1309
  %1311 = zext i1 %1310 to i32
  store i32 %1311, ptr %48, align 4, !tbaa !9
  %1312 = load i32, ptr %48, align 4, !tbaa !9
  %1313 = icmp ne i32 %1312, 0
  br i1 %1313, label %1314, label %1315

1314:                                             ; preds = %1305
  br label %918

1315:                                             ; preds = %1305
  %1316 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1316, ptr %48, align 4, !tbaa !9
  %1317 = load ptr, ptr %5, align 8, !tbaa !5
  %1318 = getelementptr inbounds %struct.w2c_hermes, ptr %1317, i32 0, i32 6
  %1319 = load i32, ptr %48, align 4, !tbaa !9
  %1320 = zext i32 %1319 to i64
  %1321 = add i64 %1320, 88
  %1322 = call i32 @i32_load(ptr noundef %1318, i64 noundef %1321)
  store i32 %1322, ptr %48, align 4, !tbaa !9
  %1323 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1323, ptr %11, align 4, !tbaa !9
  %1324 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1324, ptr %48, align 4, !tbaa !9
  store i64 17179869184, ptr %59, align 8, !tbaa !11
  %1325 = load ptr, ptr %5, align 8, !tbaa !5
  %1326 = getelementptr inbounds %struct.w2c_hermes, ptr %1325, i32 0, i32 6
  %1327 = load i32, ptr %48, align 4, !tbaa !9
  %1328 = zext i32 %1327 to i64
  %1329 = add i64 %1328, 48
  %1330 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1326, i64 noundef %1329, i64 noundef %1330)
  %1331 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1331, ptr %48, align 4, !tbaa !9
  %1332 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1332, ptr %49, align 4, !tbaa !9
  store i32 56, ptr %50, align 4, !tbaa !9
  %1333 = load i32, ptr %50, align 4, !tbaa !9
  %1334 = load i32, ptr %49, align 4, !tbaa !9
  %1335 = add i32 %1334, %1333
  store i32 %1335, ptr %49, align 4, !tbaa !9
  %1336 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %1336, ptr %7, align 4, !tbaa !9
  %1337 = load ptr, ptr %5, align 8, !tbaa !5
  %1338 = getelementptr inbounds %struct.w2c_hermes, ptr %1337, i32 0, i32 6
  %1339 = load i32, ptr %48, align 4, !tbaa !9
  %1340 = zext i32 %1339 to i64
  %1341 = add i64 %1340, 44
  %1342 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1338, i64 noundef %1341, i32 noundef %1342)
  %1343 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1343, ptr %48, align 4, !tbaa !9
  %1344 = load ptr, ptr %5, align 8, !tbaa !5
  %1345 = getelementptr inbounds %struct.w2c_hermes, ptr %1344, i32 0, i32 6
  %1346 = load i32, ptr %48, align 4, !tbaa !9
  %1347 = zext i32 %1346 to i64
  %1348 = add i64 %1347, 132
  %1349 = call i32 @i32_load(ptr noundef %1345, i64 noundef %1348)
  store i32 %1349, ptr %48, align 4, !tbaa !9
  %1350 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1350, ptr %9, align 4, !tbaa !9
  %1351 = load i32, ptr %48, align 4, !tbaa !9
  %1352 = icmp ne i32 %1351, 0
  %1353 = xor i1 %1352, true
  %1354 = zext i1 %1353 to i32
  store i32 %1354, ptr %48, align 4, !tbaa !9
  %1355 = load i32, ptr %48, align 4, !tbaa !9
  %1356 = icmp ne i32 %1355, 0
  br i1 %1356, label %1357, label %1358

1357:                                             ; preds = %1315
  br label %1451

1358:                                             ; preds = %1315
  %1359 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1359, ptr %48, align 4, !tbaa !9
  %1360 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1360, ptr %8, align 4, !tbaa !9
  store i32 5, ptr %49, align 4, !tbaa !9
  %1361 = load i32, ptr %48, align 4, !tbaa !9
  %1362 = load i32, ptr %49, align 4, !tbaa !9
  %1363 = icmp uge i32 %1361, %1362
  %1364 = zext i1 %1363 to i32
  store i32 %1364, ptr %48, align 4, !tbaa !9
  %1365 = load i32, ptr %48, align 4, !tbaa !9
  %1366 = icmp ne i32 %1365, 0
  br i1 %1366, label %1367, label %1402

1367:                                             ; preds = %1358
  %1368 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1368, ptr %48, align 4, !tbaa !9
  store i32 44, ptr %49, align 4, !tbaa !9
  %1369 = load i32, ptr %49, align 4, !tbaa !9
  %1370 = load i32, ptr %48, align 4, !tbaa !9
  %1371 = add i32 %1370, %1369
  store i32 %1371, ptr %48, align 4, !tbaa !9
  %1372 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1372, ptr %49, align 4, !tbaa !9
  %1373 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1373, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %1374 = load ptr, ptr %5, align 8, !tbaa !5
  %1375 = load i32, ptr %48, align 4, !tbaa !9
  %1376 = load i32, ptr %49, align 4, !tbaa !9
  %1377 = load i32, ptr %50, align 4, !tbaa !9
  %1378 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %1374, i32 noundef %1375, i32 noundef %1376, i32 noundef %1377, i32 noundef %1378)
  %1379 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1379, ptr %48, align 4, !tbaa !9
  %1380 = load ptr, ptr %5, align 8, !tbaa !5
  %1381 = getelementptr inbounds %struct.w2c_hermes, ptr %1380, i32 0, i32 6
  %1382 = load i32, ptr %48, align 4, !tbaa !9
  %1383 = zext i32 %1382 to i64
  %1384 = add i64 %1383, 132
  %1385 = call i32 @i32_load(ptr noundef %1381, i64 noundef %1384)
  store i32 %1385, ptr %48, align 4, !tbaa !9
  %1386 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1386, ptr %8, align 4, !tbaa !9
  %1387 = load i32, ptr %48, align 4, !tbaa !9
  %1388 = icmp ne i32 %1387, 0
  %1389 = xor i1 %1388, true
  %1390 = zext i1 %1389 to i32
  store i32 %1390, ptr %48, align 4, !tbaa !9
  %1391 = load i32, ptr %48, align 4, !tbaa !9
  %1392 = icmp ne i32 %1391, 0
  br i1 %1392, label %1393, label %1394

1393:                                             ; preds = %1367
  br label %1422

1394:                                             ; preds = %1367
  %1395 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1395, ptr %48, align 4, !tbaa !9
  %1396 = load ptr, ptr %5, align 8, !tbaa !5
  %1397 = getelementptr inbounds %struct.w2c_hermes, ptr %1396, i32 0, i32 6
  %1398 = load i32, ptr %48, align 4, !tbaa !9
  %1399 = zext i32 %1398 to i64
  %1400 = add i64 %1399, 44
  %1401 = call i32 @i32_load(ptr noundef %1397, i64 noundef %1400)
  store i32 %1401, ptr %48, align 4, !tbaa !9
  br label %1404

1402:                                             ; preds = %1358
  %1403 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1403, ptr %48, align 4, !tbaa !9
  br label %1404

1404:                                             ; preds = %1402, %1394
  %1405 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1405, ptr %49, align 4, !tbaa !9
  %1406 = load ptr, ptr %5, align 8, !tbaa !5
  %1407 = getelementptr inbounds %struct.w2c_hermes, ptr %1406, i32 0, i32 6
  %1408 = load i32, ptr %49, align 4, !tbaa !9
  %1409 = zext i32 %1408 to i64
  %1410 = add i64 %1409, 128
  %1411 = call i32 @i32_load(ptr noundef %1407, i64 noundef %1410)
  store i32 %1411, ptr %49, align 4, !tbaa !9
  %1412 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1412, ptr %50, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %1413 = load i32, ptr %51, align 4, !tbaa !9
  %1414 = and i32 %1413, 31
  %1415 = load i32, ptr %50, align 4, !tbaa !9
  %1416 = shl i32 %1415, %1414
  store i32 %1416, ptr %50, align 4, !tbaa !9
  %1417 = load ptr, ptr %5, align 8, !tbaa !5
  %1418 = load i32, ptr %48, align 4, !tbaa !9
  %1419 = load i32, ptr %49, align 4, !tbaa !9
  %1420 = load i32, ptr %50, align 4, !tbaa !9
  %1421 = call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %1417, i32 noundef %1418, i32 noundef %1419, i32 noundef %1420)
  store i32 %1421, ptr %48, align 4, !tbaa !9
  br label %1422

1422:                                             ; preds = %1404, %1393
  %1423 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1423, ptr %48, align 4, !tbaa !9
  %1424 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1424, ptr %49, align 4, !tbaa !9
  %1425 = load ptr, ptr %5, align 8, !tbaa !5
  %1426 = getelementptr inbounds %struct.w2c_hermes, ptr %1425, i32 0, i32 6
  %1427 = load i32, ptr %48, align 4, !tbaa !9
  %1428 = zext i32 %1427 to i64
  %1429 = add i64 %1428, 48
  %1430 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1426, i64 noundef %1429, i32 noundef %1430)
  br label %1451

1431:                                             ; preds = %911, %816
  %1432 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1432, ptr %48, align 4, !tbaa !9
  store i64 17179869184, ptr %59, align 8, !tbaa !11
  %1433 = load ptr, ptr %5, align 8, !tbaa !5
  %1434 = getelementptr inbounds %struct.w2c_hermes, ptr %1433, i32 0, i32 6
  %1435 = load i32, ptr %48, align 4, !tbaa !9
  %1436 = zext i32 %1435 to i64
  %1437 = add i64 %1436, 48
  %1438 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1434, i64 noundef %1437, i64 noundef %1438)
  %1439 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1439, ptr %48, align 4, !tbaa !9
  %1440 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1440, ptr %49, align 4, !tbaa !9
  store i32 56, ptr %50, align 4, !tbaa !9
  %1441 = load i32, ptr %50, align 4, !tbaa !9
  %1442 = load i32, ptr %49, align 4, !tbaa !9
  %1443 = add i32 %1442, %1441
  store i32 %1443, ptr %49, align 4, !tbaa !9
  %1444 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %1444, ptr %7, align 4, !tbaa !9
  %1445 = load ptr, ptr %5, align 8, !tbaa !5
  %1446 = getelementptr inbounds %struct.w2c_hermes, ptr %1445, i32 0, i32 6
  %1447 = load i32, ptr %48, align 4, !tbaa !9
  %1448 = zext i32 %1447 to i64
  %1449 = add i64 %1448, 44
  %1450 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1446, i64 noundef %1449, i32 noundef %1450)
  br label %1451

1451:                                             ; preds = %1431, %1422, %1357
  %1452 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1452, ptr %48, align 4, !tbaa !9
  %1453 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1453, ptr %49, align 4, !tbaa !9
  store i32 44, ptr %50, align 4, !tbaa !9
  %1454 = load i32, ptr %50, align 4, !tbaa !9
  %1455 = load i32, ptr %49, align 4, !tbaa !9
  %1456 = add i32 %1455, %1454
  store i32 %1456, ptr %49, align 4, !tbaa !9
  %1457 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1457, ptr %50, align 4, !tbaa !9
  %1458 = load ptr, ptr %5, align 8, !tbaa !5
  %1459 = load i32, ptr %48, align 4, !tbaa !9
  %1460 = load i32, ptr %49, align 4, !tbaa !9
  %1461 = load i32, ptr %50, align 4, !tbaa !9
  %1462 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateHBCAllocObjectFromBufferInst0x28llvh0x3A0x3ASmallVector0x3Cstd0x3A0x3A_0x5F20x3A0x3Apair0x3Chermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x3E0x2C0x204u0x3E0x2C0x20unsigned0x20int0x29(ptr noundef %1458, i32 noundef %1459, i32 noundef %1460, i32 noundef %1461)
  store i32 %1462, ptr %48, align 4, !tbaa !9
  %1463 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1463, ptr %8, align 4, !tbaa !9
  %1464 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1464, ptr %48, align 4, !tbaa !9
  %1465 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1465, ptr %49, align 4, !tbaa !9
  %1466 = load ptr, ptr %5, align 8, !tbaa !5
  %1467 = getelementptr inbounds %struct.w2c_hermes, ptr %1466, i32 0, i32 6
  %1468 = load i32, ptr %49, align 4, !tbaa !9
  %1469 = zext i32 %1468 to i64
  %1470 = add i64 %1469, 44
  %1471 = call i32 @i32_load(ptr noundef %1467, i64 noundef %1470)
  store i32 %1471, ptr %49, align 4, !tbaa !9
  %1472 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %1472, ptr %9, align 4, !tbaa !9
  %1473 = load i32, ptr %48, align 4, !tbaa !9
  %1474 = load i32, ptr %49, align 4, !tbaa !9
  %1475 = icmp ne i32 %1473, %1474
  %1476 = zext i1 %1475 to i32
  store i32 %1476, ptr %48, align 4, !tbaa !9
  %1477 = load i32, ptr %48, align 4, !tbaa !9
  %1478 = icmp ne i32 %1477, 0
  br i1 %1478, label %1479, label %1483

1479:                                             ; preds = %1451
  %1480 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1480, ptr %48, align 4, !tbaa !9
  %1481 = load ptr, ptr %5, align 8, !tbaa !5
  %1482 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %1481, i32 noundef %1482)
  br label %1483

1483:                                             ; preds = %1479, %1451
  %1484 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1484, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %1485 = load ptr, ptr %5, align 8, !tbaa !5
  %1486 = getelementptr inbounds %struct.w2c_hermes, ptr %1485, i32 0, i32 6
  %1487 = load i32, ptr %48, align 4, !tbaa !9
  %1488 = zext i32 %1487 to i64
  %1489 = add i64 %1488, 40
  %1490 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1486, i64 noundef %1489, i32 noundef %1490)
  %1491 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1491, ptr %48, align 4, !tbaa !9
  %1492 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1492, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %1493 = load i32, ptr %50, align 4, !tbaa !9
  %1494 = load i32, ptr %49, align 4, !tbaa !9
  %1495 = add i32 %1494, %1493
  store i32 %1495, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %1496 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1496, ptr %51, align 4, !tbaa !9
  %1497 = load i32, ptr %51, align 4, !tbaa !9
  %1498 = icmp ne i32 %1497, 0
  br i1 %1498, label %1499, label %1501

1499:                                             ; preds = %1483
  %1500 = load i32, ptr %49, align 4, !tbaa !9
  br label %1503

1501:                                             ; preds = %1483
  %1502 = load i32, ptr %50, align 4, !tbaa !9
  br label %1503

1503:                                             ; preds = %1501, %1499
  %1504 = phi i32 [ %1500, %1499 ], [ %1502, %1501 ]
  store i32 %1504, ptr %49, align 4, !tbaa !9
  %1505 = load ptr, ptr %5, align 8, !tbaa !5
  %1506 = getelementptr inbounds %struct.w2c_hermes, ptr %1505, i32 0, i32 6
  %1507 = load i32, ptr %48, align 4, !tbaa !9
  %1508 = zext i32 %1507 to i64
  %1509 = add i64 %1508, 116
  %1510 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1506, i64 noundef %1509, i32 noundef %1510)
  %1511 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1511, ptr %48, align 4, !tbaa !9
  %1512 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1512, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %1513 = load i32, ptr %50, align 4, !tbaa !9
  %1514 = load i32, ptr %49, align 4, !tbaa !9
  %1515 = add i32 %1514, %1513
  store i32 %1515, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %1516 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1516, ptr %51, align 4, !tbaa !9
  %1517 = load i32, ptr %51, align 4, !tbaa !9
  %1518 = icmp ne i32 %1517, 0
  br i1 %1518, label %1519, label %1521

1519:                                             ; preds = %1503
  %1520 = load i32, ptr %49, align 4, !tbaa !9
  br label %1523

1521:                                             ; preds = %1503
  %1522 = load i32, ptr %50, align 4, !tbaa !9
  br label %1523

1523:                                             ; preds = %1521, %1519
  %1524 = phi i32 [ %1520, %1519 ], [ %1522, %1521 ]
  store i32 %1524, ptr %49, align 4, !tbaa !9
  %1525 = load ptr, ptr %5, align 8, !tbaa !5
  %1526 = getelementptr inbounds %struct.w2c_hermes, ptr %1525, i32 0, i32 6
  %1527 = load i32, ptr %48, align 4, !tbaa !9
  %1528 = zext i32 %1527 to i64
  %1529 = add i64 %1528, 112
  %1530 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1526, i64 noundef %1529, i32 noundef %1530)
  %1531 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1531, ptr %48, align 4, !tbaa !9
  %1532 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1532, ptr %49, align 4, !tbaa !9
  store i32 112, ptr %50, align 4, !tbaa !9
  %1533 = load i32, ptr %50, align 4, !tbaa !9
  %1534 = load i32, ptr %49, align 4, !tbaa !9
  %1535 = add i32 %1534, %1533
  store i32 %1535, ptr %49, align 4, !tbaa !9
  %1536 = load ptr, ptr %5, align 8, !tbaa !5
  %1537 = getelementptr inbounds %struct.w2c_hermes, ptr %1536, i32 0, i32 6
  %1538 = load i32, ptr %48, align 4, !tbaa !9
  %1539 = zext i32 %1538 to i64
  %1540 = add i64 %1539, 36
  %1541 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1537, i64 noundef %1540, i32 noundef %1541)
  %1542 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1542, ptr %48, align 4, !tbaa !9
  %1543 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1543, ptr %49, align 4, !tbaa !9
  %1544 = load ptr, ptr %5, align 8, !tbaa !5
  %1545 = getelementptr inbounds %struct.w2c_hermes, ptr %1544, i32 0, i32 6
  %1546 = load i32, ptr %49, align 4, !tbaa !9
  %1547 = zext i32 %1546 to i64
  %1548 = add i64 %1547, 36
  %1549 = call i64 @i64_load(ptr noundef %1545, i64 noundef %1548)
  store i64 %1549, ptr %59, align 8, !tbaa !11
  %1550 = load ptr, ptr %5, align 8, !tbaa !5
  %1551 = getelementptr inbounds %struct.w2c_hermes, ptr %1550, i32 0, i32 6
  %1552 = load i32, ptr %48, align 4, !tbaa !9
  %1553 = zext i32 %1552 to i64
  %1554 = add i64 %1553, 8
  %1555 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1551, i64 noundef %1554, i64 noundef %1555)
  %1556 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1556, ptr %48, align 4, !tbaa !9
  store i32 50, ptr %49, align 4, !tbaa !9
  %1557 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1557, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %1558 = load i32, ptr %51, align 4, !tbaa !9
  %1559 = load i32, ptr %50, align 4, !tbaa !9
  %1560 = add i32 %1559, %1558
  store i32 %1560, ptr %50, align 4, !tbaa !9
  %1561 = load ptr, ptr %5, align 8, !tbaa !5
  %1562 = load i32, ptr %48, align 4, !tbaa !9
  %1563 = load i32, ptr %49, align 4, !tbaa !9
  %1564 = load i32, ptr %50, align 4, !tbaa !9
  %1565 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %1561, i32 noundef %1562, i32 noundef %1563, i32 noundef %1564)
  store i32 %1565, ptr %48, align 4, !tbaa !9
  %1566 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1566, ptr %48, align 4, !tbaa !9
  %1567 = load ptr, ptr %5, align 8, !tbaa !5
  %1568 = getelementptr inbounds %struct.w2c_hermes, ptr %1567, i32 0, i32 6
  %1569 = load i32, ptr %48, align 4, !tbaa !9
  %1570 = zext i32 %1569 to i64
  %1571 = add i64 %1570, 128
  %1572 = call i32 @i32_load(ptr noundef %1568, i64 noundef %1571)
  store i32 %1572, ptr %48, align 4, !tbaa !9
  %1573 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1573, ptr %7, align 4, !tbaa !9
  %1574 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1574, ptr %49, align 4, !tbaa !9
  %1575 = load i32, ptr %48, align 4, !tbaa !9
  %1576 = load i32, ptr %49, align 4, !tbaa !9
  %1577 = icmp eq i32 %1575, %1576
  %1578 = zext i1 %1577 to i32
  store i32 %1578, ptr %48, align 4, !tbaa !9
  %1579 = load i32, ptr %48, align 4, !tbaa !9
  %1580 = icmp ne i32 %1579, 0
  br i1 %1580, label %1581, label %1582

1581:                                             ; preds = %1523
  br label %1586

1582:                                             ; preds = %1523
  %1583 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1583, ptr %48, align 4, !tbaa !9
  %1584 = load ptr, ptr %5, align 8, !tbaa !5
  %1585 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %1584, i32 noundef %1585)
  br label %1586

1586:                                             ; preds = %1582, %1581, %747
  %1587 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1587, ptr %48, align 4, !tbaa !9
  store i32 176, ptr %49, align 4, !tbaa !9
  %1588 = load i32, ptr %49, align 4, !tbaa !9
  %1589 = load i32, ptr %48, align 4, !tbaa !9
  %1590 = add i32 %1589, %1588
  store i32 %1590, ptr %48, align 4, !tbaa !9
  %1591 = load i32, ptr %48, align 4, !tbaa !9
  %1592 = load ptr, ptr %5, align 8, !tbaa !5
  %1593 = getelementptr inbounds %struct.w2c_hermes, ptr %1592, i32 0, i32 3
  store i32 %1591, ptr %1593, align 8, !tbaa !15
  %1594 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1594, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %1595 = load i32, ptr %49, align 4, !tbaa !9
  %1596 = load i32, ptr %48, align 4, !tbaa !9
  %1597 = add i32 %1596, %1595
  store i32 %1597, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %1598 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1598, ptr %50, align 4, !tbaa !9
  %1599 = load i32, ptr %50, align 4, !tbaa !9
  %1600 = icmp ne i32 %1599, 0
  br i1 %1600, label %1601, label %1603

1601:                                             ; preds = %1586
  %1602 = load i32, ptr %48, align 4, !tbaa !9
  br label %1605

1603:                                             ; preds = %1586
  %1604 = load i32, ptr %49, align 4, !tbaa !9
  br label %1605

1605:                                             ; preds = %1603, %1601
  %1606 = phi i32 [ %1602, %1601 ], [ %1604, %1603 ]
  store i32 %1606, ptr %48, align 4, !tbaa !9
  br label %22463

1607:                                             ; preds = %233, %224
  %1608 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1608, ptr %48, align 4, !tbaa !9
  %1609 = load i32, ptr %48, align 4, !tbaa !9
  %1610 = icmp ne i32 %1609, 0
  %1611 = xor i1 %1610, true
  %1612 = zext i1 %1611 to i32
  store i32 %1612, ptr %48, align 4, !tbaa !9
  %1613 = load i32, ptr %48, align 4, !tbaa !9
  %1614 = icmp ne i32 %1613, 0
  br i1 %1614, label %1615, label %1616

1615:                                             ; preds = %1607
  br label %1650

1616:                                             ; preds = %1607
  %1617 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1617, ptr %48, align 4, !tbaa !9
  store i32 31, ptr %49, align 4, !tbaa !9
  %1618 = load i32, ptr %48, align 4, !tbaa !9
  %1619 = load i32, ptr %49, align 4, !tbaa !9
  %1620 = icmp ne i32 %1618, %1619
  %1621 = zext i1 %1620 to i32
  store i32 %1621, ptr %48, align 4, !tbaa !9
  %1622 = load i32, ptr %48, align 4, !tbaa !9
  %1623 = icmp ne i32 %1622, 0
  br i1 %1623, label %1624, label %1625

1624:                                             ; preds = %1616
  br label %1650

1625:                                             ; preds = %1616
  %1626 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1626, ptr %48, align 4, !tbaa !9
  %1627 = load ptr, ptr %5, align 8, !tbaa !5
  %1628 = getelementptr inbounds %struct.w2c_hermes, ptr %1627, i32 0, i32 6
  %1629 = load i32, ptr %48, align 4, !tbaa !9
  %1630 = zext i32 %1629 to i64
  %1631 = call i32 @i32_load(ptr noundef %1628, i64 noundef %1630)
  store i32 %1631, ptr %48, align 4, !tbaa !9
  store i32 356, ptr %49, align 4, !tbaa !9
  store i32 324, ptr %50, align 4, !tbaa !9
  %1632 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1632, ptr %51, align 4, !tbaa !9
  %1633 = load ptr, ptr %5, align 8, !tbaa !5
  %1634 = getelementptr inbounds %struct.w2c_hermes, ptr %1633, i32 0, i32 6
  %1635 = load i32, ptr %51, align 4, !tbaa !9
  %1636 = zext i32 %1635 to i64
  %1637 = add i64 %1636, 28
  %1638 = call i32 @i32_load8_u(ptr noundef %1634, i64 noundef %1637)
  store i32 %1638, ptr %51, align 4, !tbaa !9
  %1639 = load i32, ptr %51, align 4, !tbaa !9
  %1640 = icmp ne i32 %1639, 0
  br i1 %1640, label %1641, label %1643

1641:                                             ; preds = %1625
  %1642 = load i32, ptr %49, align 4, !tbaa !9
  br label %1645

1643:                                             ; preds = %1625
  %1644 = load i32, ptr %50, align 4, !tbaa !9
  br label %1645

1645:                                             ; preds = %1643, %1641
  %1646 = phi i32 [ %1642, %1641 ], [ %1644, %1643 ]
  store i32 %1646, ptr %49, align 4, !tbaa !9
  %1647 = load i32, ptr %49, align 4, !tbaa !9
  %1648 = load i32, ptr %48, align 4, !tbaa !9
  %1649 = add i32 %1648, %1647
  store i32 %1649, ptr %48, align 4, !tbaa !9
  br label %22463

1650:                                             ; preds = %1624, %1615
  %1651 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1651, ptr %48, align 4, !tbaa !9
  %1652 = load i32, ptr %48, align 4, !tbaa !9
  %1653 = icmp ne i32 %1652, 0
  %1654 = xor i1 %1653, true
  %1655 = zext i1 %1654 to i32
  store i32 %1655, ptr %48, align 4, !tbaa !9
  %1656 = load i32, ptr %48, align 4, !tbaa !9
  %1657 = icmp ne i32 %1656, 0
  br i1 %1657, label %1658, label %1659

1658:                                             ; preds = %1650
  br label %1681

1659:                                             ; preds = %1650
  %1660 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1660, ptr %48, align 4, !tbaa !9
  store i32 33, ptr %49, align 4, !tbaa !9
  %1661 = load i32, ptr %48, align 4, !tbaa !9
  %1662 = load i32, ptr %49, align 4, !tbaa !9
  %1663 = icmp ne i32 %1661, %1662
  %1664 = zext i1 %1663 to i32
  store i32 %1664, ptr %48, align 4, !tbaa !9
  %1665 = load i32, ptr %48, align 4, !tbaa !9
  %1666 = icmp ne i32 %1665, 0
  br i1 %1666, label %1667, label %1668

1667:                                             ; preds = %1659
  br label %1681

1668:                                             ; preds = %1659
  %1669 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1669, ptr %48, align 4, !tbaa !9
  %1670 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1670, ptr %49, align 4, !tbaa !9
  %1671 = load ptr, ptr %5, align 8, !tbaa !5
  %1672 = getelementptr inbounds %struct.w2c_hermes, ptr %1671, i32 0, i32 6
  %1673 = load i32, ptr %49, align 4, !tbaa !9
  %1674 = zext i32 %1673 to i64
  %1675 = add i64 %1674, 32
  %1676 = call double @f64_load(ptr noundef %1672, i64 noundef %1675)
  store double %1676, ptr %71, align 8, !tbaa !20
  %1677 = load ptr, ptr %5, align 8, !tbaa !5
  %1678 = load i32, ptr %48, align 4, !tbaa !9
  %1679 = load double, ptr %71, align 8, !tbaa !20
  %1680 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralNumber0x28double0x29(ptr noundef %1677, i32 noundef %1678, double noundef %1679)
  store i32 %1680, ptr %48, align 4, !tbaa !9
  br label %22463

1681:                                             ; preds = %1667, %1658
  %1682 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1682, ptr %48, align 4, !tbaa !9
  %1683 = load i32, ptr %48, align 4, !tbaa !9
  %1684 = icmp ne i32 %1683, 0
  %1685 = xor i1 %1684, true
  %1686 = zext i1 %1685 to i32
  store i32 %1686, ptr %48, align 4, !tbaa !9
  %1687 = load i32, ptr %48, align 4, !tbaa !9
  %1688 = icmp ne i32 %1687, 0
  br i1 %1688, label %1689, label %1690

1689:                                             ; preds = %1681
  br label %1874

1690:                                             ; preds = %1681
  %1691 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1691, ptr %48, align 4, !tbaa !9
  store i32 35, ptr %49, align 4, !tbaa !9
  %1692 = load i32, ptr %48, align 4, !tbaa !9
  %1693 = load i32, ptr %49, align 4, !tbaa !9
  %1694 = icmp ne i32 %1692, %1693
  %1695 = zext i1 %1694 to i32
  store i32 %1695, ptr %48, align 4, !tbaa !9
  %1696 = load i32, ptr %48, align 4, !tbaa !9
  %1697 = icmp ne i32 %1696, 0
  br i1 %1697, label %1698, label %1699

1698:                                             ; preds = %1690
  br label %1874

1699:                                             ; preds = %1690
  %1700 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1700, ptr %48, align 4, !tbaa !9
  %1701 = load ptr, ptr %5, align 8, !tbaa !5
  %1702 = getelementptr inbounds %struct.w2c_hermes, ptr %1701, i32 0, i32 6
  %1703 = load i32, ptr %48, align 4, !tbaa !9
  %1704 = zext i32 %1703 to i64
  %1705 = add i64 %1704, 28
  %1706 = call i32 @i32_load(ptr noundef %1702, i64 noundef %1705)
  store i32 %1706, ptr %48, align 4, !tbaa !9
  %1707 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1707, ptr %9, align 4, !tbaa !9
  %1708 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1708, ptr %48, align 4, !tbaa !9
  %1709 = load ptr, ptr %5, align 8, !tbaa !5
  %1710 = getelementptr inbounds %struct.w2c_hermes, ptr %1709, i32 0, i32 6
  %1711 = load i32, ptr %48, align 4, !tbaa !9
  %1712 = zext i32 %1711 to i64
  %1713 = call i32 @i32_load(ptr noundef %1710, i64 noundef %1712)
  store i32 %1713, ptr %48, align 4, !tbaa !9
  %1714 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1714, ptr %8, align 4, !tbaa !9
  %1715 = load ptr, ptr %5, align 8, !tbaa !5
  %1716 = getelementptr inbounds %struct.w2c_hermes, ptr %1715, i32 0, i32 3
  %1717 = load i32, ptr %1716, align 8, !tbaa !15
  store i32 %1717, ptr %48, align 4, !tbaa !9
  store i32 144, ptr %49, align 4, !tbaa !9
  %1718 = load i32, ptr %49, align 4, !tbaa !9
  %1719 = load i32, ptr %48, align 4, !tbaa !9
  %1720 = sub i32 %1719, %1718
  store i32 %1720, ptr %48, align 4, !tbaa !9
  %1721 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1721, ptr %7, align 4, !tbaa !9
  %1722 = load i32, ptr %48, align 4, !tbaa !9
  %1723 = load ptr, ptr %5, align 8, !tbaa !5
  %1724 = getelementptr inbounds %struct.w2c_hermes, ptr %1723, i32 0, i32 3
  store i32 %1722, ptr %1724, align 8, !tbaa !15
  %1725 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1725, ptr %48, align 4, !tbaa !9
  store i64 137438953472, ptr %59, align 8, !tbaa !11
  %1726 = load ptr, ptr %5, align 8, !tbaa !5
  %1727 = getelementptr inbounds %struct.w2c_hermes, ptr %1726, i32 0, i32 6
  %1728 = load i32, ptr %48, align 4, !tbaa !9
  %1729 = zext i32 %1728 to i64
  %1730 = add i64 %1729, 8
  %1731 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1727, i64 noundef %1730, i64 noundef %1731)
  %1732 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1732, ptr %48, align 4, !tbaa !9
  %1733 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1733, ptr %49, align 4, !tbaa !9
  store i32 16, ptr %50, align 4, !tbaa !9
  %1734 = load i32, ptr %50, align 4, !tbaa !9
  %1735 = load i32, ptr %49, align 4, !tbaa !9
  %1736 = add i32 %1735, %1734
  store i32 %1736, ptr %49, align 4, !tbaa !9
  %1737 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %1737, ptr %11, align 4, !tbaa !9
  %1738 = load ptr, ptr %5, align 8, !tbaa !5
  %1739 = getelementptr inbounds %struct.w2c_hermes, ptr %1738, i32 0, i32 6
  %1740 = load i32, ptr %48, align 4, !tbaa !9
  %1741 = zext i32 %1740 to i64
  %1742 = add i64 %1741, 4
  %1743 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1739, i64 noundef %1742, i32 noundef %1743)
  %1744 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1744, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %1745 = load i32, ptr %49, align 4, !tbaa !9
  %1746 = load i32, ptr %48, align 4, !tbaa !9
  %1747 = add i32 %1746, %1745
  store i32 %1747, ptr %48, align 4, !tbaa !9
  %1748 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1748, ptr %10, align 4, !tbaa !9
  %1749 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1749, ptr %49, align 4, !tbaa !9
  %1750 = load ptr, ptr %5, align 8, !tbaa !5
  %1751 = load i32, ptr %48, align 4, !tbaa !9
  %1752 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3AFoldingSetNodeID0x3A0x3AAddPointer0x28void0x20const0x2A0x29(ptr noundef %1750, i32 noundef %1751, i32 noundef %1752)
  %1753 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1753, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %1754 = load ptr, ptr %5, align 8, !tbaa !5
  %1755 = getelementptr inbounds %struct.w2c_hermes, ptr %1754, i32 0, i32 6
  %1756 = load i32, ptr %48, align 4, !tbaa !9
  %1757 = zext i32 %1756 to i64
  %1758 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1755, i64 noundef %1757, i32 noundef %1758)
  %1759 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1759, ptr %48, align 4, !tbaa !9
  store i32 432, ptr %49, align 4, !tbaa !9
  %1760 = load i32, ptr %49, align 4, !tbaa !9
  %1761 = load i32, ptr %48, align 4, !tbaa !9
  %1762 = add i32 %1761, %1760
  store i32 %1762, ptr %48, align 4, !tbaa !9
  %1763 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1763, ptr %12, align 4, !tbaa !9
  %1764 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1764, ptr %49, align 4, !tbaa !9
  %1765 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1765, ptr %50, align 4, !tbaa !9
  %1766 = load ptr, ptr %5, align 8, !tbaa !5
  %1767 = load i32, ptr %48, align 4, !tbaa !9
  %1768 = load i32, ptr %49, align 4, !tbaa !9
  %1769 = load i32, ptr %50, align 4, !tbaa !9
  %1770 = call i32 @w2c_hermes_llvh0x3A0x3AFoldingSetBase0x3A0x3AFindNodeOrInsertPos0x28llvh0x3A0x3AFoldingSetNodeID0x20const0x260x2C0x20void0x2A0x260x29(ptr noundef %1766, i32 noundef %1767, i32 noundef %1768, i32 noundef %1769)
  store i32 %1770, ptr %48, align 4, !tbaa !9
  %1771 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1771, ptr %8, align 4, !tbaa !9
  %1772 = load i32, ptr %48, align 4, !tbaa !9
  %1773 = icmp ne i32 %1772, 0
  br i1 %1773, label %1774, label %1780

1774:                                             ; preds = %1699
  %1775 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1775, ptr %48, align 4, !tbaa !9
  store i32 28, ptr %49, align 4, !tbaa !9
  %1776 = load i32, ptr %49, align 4, !tbaa !9
  %1777 = load i32, ptr %48, align 4, !tbaa !9
  %1778 = sub i32 %1777, %1776
  store i32 %1778, ptr %48, align 4, !tbaa !9
  %1779 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1779, ptr %8, align 4, !tbaa !9
  br label %1845

1780:                                             ; preds = %1699
  store i32 36, ptr %48, align 4, !tbaa !9
  %1781 = load ptr, ptr %5, align 8, !tbaa !5
  %1782 = load i32, ptr %48, align 4, !tbaa !9
  %1783 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %1781, i32 noundef %1782)
  store i32 %1783, ptr %48, align 4, !tbaa !9
  %1784 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1784, ptr %8, align 4, !tbaa !9
  %1785 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1785, ptr %49, align 4, !tbaa !9
  %1786 = load ptr, ptr %5, align 8, !tbaa !5
  %1787 = getelementptr inbounds %struct.w2c_hermes, ptr %1786, i32 0, i32 6
  %1788 = load i32, ptr %48, align 4, !tbaa !9
  %1789 = zext i32 %1788 to i64
  %1790 = add i64 %1789, 32
  %1791 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1787, i64 noundef %1790, i32 noundef %1791)
  %1792 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1792, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %1793 = load ptr, ptr %5, align 8, !tbaa !5
  %1794 = getelementptr inbounds %struct.w2c_hermes, ptr %1793, i32 0, i32 6
  %1795 = load i32, ptr %48, align 4, !tbaa !9
  %1796 = zext i32 %1795 to i64
  %1797 = add i64 %1796, 28
  %1798 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1794, i64 noundef %1797, i32 noundef %1798)
  %1799 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1799, ptr %48, align 4, !tbaa !9
  store i32 115, ptr %49, align 4, !tbaa !9
  %1800 = load ptr, ptr %5, align 8, !tbaa !5
  %1801 = getelementptr inbounds %struct.w2c_hermes, ptr %1800, i32 0, i32 6
  %1802 = load i32, ptr %48, align 4, !tbaa !9
  %1803 = zext i32 %1802 to i64
  %1804 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %1801, i64 noundef %1803, i32 noundef %1804)
  %1805 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1805, ptr %48, align 4, !tbaa !9
  store i32 458816, ptr %49, align 4, !tbaa !9
  %1806 = load ptr, ptr %5, align 8, !tbaa !5
  %1807 = getelementptr inbounds %struct.w2c_hermes, ptr %1806, i32 0, i32 6
  %1808 = load i32, ptr %48, align 4, !tbaa !9
  %1809 = zext i32 %1808 to i64
  %1810 = add i64 %1809, 2
  %1811 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1807, i64 noundef %1810, i32 noundef %1811)
  %1812 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1812, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %1813 = load ptr, ptr %5, align 8, !tbaa !5
  %1814 = getelementptr inbounds %struct.w2c_hermes, ptr %1813, i32 0, i32 6
  %1815 = load i32, ptr %48, align 4, !tbaa !9
  %1816 = zext i32 %1815 to i64
  %1817 = add i64 %1816, 12
  %1818 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1814, i64 noundef %1817, i64 noundef %1818)
  %1819 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1819, ptr %48, align 4, !tbaa !9
  %1820 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1820, ptr %49, align 4, !tbaa !9
  store i32 20, ptr %50, align 4, !tbaa !9
  %1821 = load i32, ptr %50, align 4, !tbaa !9
  %1822 = load i32, ptr %49, align 4, !tbaa !9
  %1823 = add i32 %1822, %1821
  store i32 %1823, ptr %49, align 4, !tbaa !9
  %1824 = load ptr, ptr %5, align 8, !tbaa !5
  %1825 = getelementptr inbounds %struct.w2c_hermes, ptr %1824, i32 0, i32 6
  %1826 = load i32, ptr %48, align 4, !tbaa !9
  %1827 = zext i32 %1826 to i64
  %1828 = add i64 %1827, 8
  %1829 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1825, i64 noundef %1828, i32 noundef %1829)
  %1830 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1830, ptr %48, align 4, !tbaa !9
  %1831 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1831, ptr %49, align 4, !tbaa !9
  store i32 28, ptr %50, align 4, !tbaa !9
  %1832 = load i32, ptr %50, align 4, !tbaa !9
  %1833 = load i32, ptr %49, align 4, !tbaa !9
  %1834 = add i32 %1833, %1832
  store i32 %1834, ptr %49, align 4, !tbaa !9
  %1835 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1835, ptr %50, align 4, !tbaa !9
  %1836 = load ptr, ptr %5, align 8, !tbaa !5
  %1837 = getelementptr inbounds %struct.w2c_hermes, ptr %1836, i32 0, i32 6
  %1838 = load i32, ptr %50, align 4, !tbaa !9
  %1839 = zext i32 %1838 to i64
  %1840 = call i32 @i32_load(ptr noundef %1837, i64 noundef %1839)
  store i32 %1840, ptr %50, align 4, !tbaa !9
  %1841 = load ptr, ptr %5, align 8, !tbaa !5
  %1842 = load i32, ptr %48, align 4, !tbaa !9
  %1843 = load i32, ptr %49, align 4, !tbaa !9
  %1844 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3AFoldingSetBase0x3A0x3AInsertNode0x28llvh0x3A0x3AFoldingSetBase0x3A0x3ANode0x2A0x2C0x20void0x2A0x29(ptr noundef %1841, i32 noundef %1842, i32 noundef %1843, i32 noundef %1844)
  br label %1845

1845:                                             ; preds = %1780, %1774
  %1846 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1846, ptr %48, align 4, !tbaa !9
  %1847 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1847, ptr %49, align 4, !tbaa !9
  %1848 = load ptr, ptr %5, align 8, !tbaa !5
  %1849 = getelementptr inbounds %struct.w2c_hermes, ptr %1848, i32 0, i32 6
  %1850 = load i32, ptr %49, align 4, !tbaa !9
  %1851 = zext i32 %1850 to i64
  %1852 = add i64 %1851, 4
  %1853 = call i32 @i32_load(ptr noundef %1849, i64 noundef %1852)
  store i32 %1853, ptr %49, align 4, !tbaa !9
  %1854 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %1854, ptr %9, align 4, !tbaa !9
  %1855 = load i32, ptr %48, align 4, !tbaa !9
  %1856 = load i32, ptr %49, align 4, !tbaa !9
  %1857 = icmp ne i32 %1855, %1856
  %1858 = zext i1 %1857 to i32
  store i32 %1858, ptr %48, align 4, !tbaa !9
  %1859 = load i32, ptr %48, align 4, !tbaa !9
  %1860 = icmp ne i32 %1859, 0
  br i1 %1860, label %1861, label %1865

1861:                                             ; preds = %1845
  %1862 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1862, ptr %48, align 4, !tbaa !9
  %1863 = load ptr, ptr %5, align 8, !tbaa !5
  %1864 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %1863, i32 noundef %1864)
  br label %1865

1865:                                             ; preds = %1861, %1845
  %1866 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1866, ptr %48, align 4, !tbaa !9
  store i32 144, ptr %49, align 4, !tbaa !9
  %1867 = load i32, ptr %49, align 4, !tbaa !9
  %1868 = load i32, ptr %48, align 4, !tbaa !9
  %1869 = add i32 %1868, %1867
  store i32 %1869, ptr %48, align 4, !tbaa !9
  %1870 = load i32, ptr %48, align 4, !tbaa !9
  %1871 = load ptr, ptr %5, align 8, !tbaa !5
  %1872 = getelementptr inbounds %struct.w2c_hermes, ptr %1871, i32 0, i32 3
  store i32 %1870, ptr %1872, align 8, !tbaa !15
  %1873 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1873, ptr %48, align 4, !tbaa !9
  br label %22463

1874:                                             ; preds = %1698, %1689
  %1875 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1875, ptr %48, align 4, !tbaa !9
  %1876 = load i32, ptr %48, align 4, !tbaa !9
  %1877 = icmp ne i32 %1876, 0
  %1878 = xor i1 %1877, true
  %1879 = zext i1 %1878 to i32
  store i32 %1879, ptr %48, align 4, !tbaa !9
  %1880 = load i32, ptr %48, align 4, !tbaa !9
  %1881 = icmp ne i32 %1880, 0
  br i1 %1881, label %1882, label %1883

1882:                                             ; preds = %1874
  br label %4236

1883:                                             ; preds = %1874
  %1884 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %1884, ptr %48, align 4, !tbaa !9
  store i32 50, ptr %49, align 4, !tbaa !9
  %1885 = load i32, ptr %48, align 4, !tbaa !9
  %1886 = load i32, ptr %49, align 4, !tbaa !9
  %1887 = icmp ne i32 %1885, %1886
  %1888 = zext i1 %1887 to i32
  store i32 %1888, ptr %48, align 4, !tbaa !9
  %1889 = load i32, ptr %48, align 4, !tbaa !9
  %1890 = icmp ne i32 %1889, 0
  br i1 %1890, label %1891, label %1892

1891:                                             ; preds = %1883
  br label %4236

1892:                                             ; preds = %1883
  store i32 0, ptr %48, align 4, !tbaa !9
  %1893 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1893, ptr %11, align 4, !tbaa !9
  %1894 = load ptr, ptr %5, align 8, !tbaa !5
  %1895 = getelementptr inbounds %struct.w2c_hermes, ptr %1894, i32 0, i32 3
  %1896 = load i32, ptr %1895, align 8, !tbaa !15
  store i32 %1896, ptr %48, align 4, !tbaa !9
  store i32 128, ptr %49, align 4, !tbaa !9
  %1897 = load i32, ptr %49, align 4, !tbaa !9
  %1898 = load i32, ptr %48, align 4, !tbaa !9
  %1899 = sub i32 %1898, %1897
  store i32 %1899, ptr %48, align 4, !tbaa !9
  %1900 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1900, ptr %10, align 4, !tbaa !9
  %1901 = load i32, ptr %48, align 4, !tbaa !9
  %1902 = load ptr, ptr %5, align 8, !tbaa !5
  %1903 = getelementptr inbounds %struct.w2c_hermes, ptr %1902, i32 0, i32 3
  store i32 %1901, ptr %1903, align 8, !tbaa !15
  %1904 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1904, ptr %48, align 4, !tbaa !9
  %1905 = load ptr, ptr %5, align 8, !tbaa !5
  %1906 = getelementptr inbounds %struct.w2c_hermes, ptr %1905, i32 0, i32 6
  %1907 = load i32, ptr %48, align 4, !tbaa !9
  %1908 = zext i32 %1907 to i64
  %1909 = add i64 %1908, 28
  %1910 = call i32 @i32_load(ptr noundef %1906, i64 noundef %1909)
  store i32 %1910, ptr %48, align 4, !tbaa !9
  %1911 = load ptr, ptr %5, align 8, !tbaa !5
  %1912 = getelementptr inbounds %struct.w2c_hermes, ptr %1911, i32 0, i32 6
  %1913 = load i32, ptr %48, align 4, !tbaa !9
  %1914 = zext i32 %1913 to i64
  %1915 = call i64 @i64_load(ptr noundef %1912, i64 noundef %1914)
  store i64 %1915, ptr %58, align 8, !tbaa !11
  %1916 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %1916, ptr %31, align 8, !tbaa !11
  store i64 -4294967296, ptr %59, align 8, !tbaa !11
  %1917 = load i64, ptr %59, align 8, !tbaa !11
  %1918 = load i64, ptr %58, align 8, !tbaa !11
  %1919 = and i64 %1918, %1917
  store i64 %1919, ptr %58, align 8, !tbaa !11
  store i64 4294967296, ptr %59, align 8, !tbaa !11
  %1920 = load i64, ptr %58, align 8, !tbaa !11
  %1921 = load i64, ptr %59, align 8, !tbaa !11
  %1922 = icmp ne i64 %1920, %1921
  %1923 = zext i1 %1922 to i32
  store i32 %1923, ptr %48, align 4, !tbaa !9
  %1924 = load i32, ptr %48, align 4, !tbaa !9
  %1925 = icmp ne i32 %1924, 0
  br i1 %1925, label %1926, label %1927

1926:                                             ; preds = %1892
  br label %2572

1927:                                             ; preds = %1892
  %1928 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %1928, ptr %58, align 8, !tbaa !11
  %1929 = load i64, ptr %58, align 8, !tbaa !11
  %1930 = trunc i64 %1929 to i32
  store i32 %1930, ptr %48, align 4, !tbaa !9
  %1931 = load ptr, ptr %5, align 8, !tbaa !5
  %1932 = getelementptr inbounds %struct.w2c_hermes, ptr %1931, i32 0, i32 6
  %1933 = load i32, ptr %48, align 4, !tbaa !9
  %1934 = zext i32 %1933 to i64
  %1935 = call i32 @i32_load8_u(ptr noundef %1932, i64 noundef %1934)
  store i32 %1935, ptr %48, align 4, !tbaa !9
  store i32 61, ptr %49, align 4, !tbaa !9
  %1936 = load i32, ptr %48, align 4, !tbaa !9
  %1937 = load i32, ptr %49, align 4, !tbaa !9
  %1938 = icmp ne i32 %1936, %1937
  %1939 = zext i1 %1938 to i32
  store i32 %1939, ptr %48, align 4, !tbaa !9
  %1940 = load i32, ptr %48, align 4, !tbaa !9
  %1941 = icmp ne i32 %1940, 0
  br i1 %1941, label %1942, label %1943

1942:                                             ; preds = %1927
  br label %2572

1943:                                             ; preds = %1927
  %1944 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1944, ptr %48, align 4, !tbaa !9
  store i64 4294967297, ptr %59, align 8, !tbaa !11
  %1945 = load ptr, ptr %5, align 8, !tbaa !5
  %1946 = getelementptr inbounds %struct.w2c_hermes, ptr %1945, i32 0, i32 6
  %1947 = load i32, ptr %48, align 4, !tbaa !9
  %1948 = zext i32 %1947 to i64
  %1949 = add i64 %1948, 116
  %1950 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1946, i64 noundef %1949, i64 noundef %1950)
  %1951 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1951, ptr %48, align 4, !tbaa !9
  %1952 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1952, ptr %49, align 4, !tbaa !9
  store i32 124, ptr %50, align 4, !tbaa !9
  %1953 = load i32, ptr %50, align 4, !tbaa !9
  %1954 = load i32, ptr %49, align 4, !tbaa !9
  %1955 = add i32 %1954, %1953
  store i32 %1955, ptr %49, align 4, !tbaa !9
  %1956 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %1956, ptr %8, align 4, !tbaa !9
  %1957 = load ptr, ptr %5, align 8, !tbaa !5
  %1958 = getelementptr inbounds %struct.w2c_hermes, ptr %1957, i32 0, i32 6
  %1959 = load i32, ptr %48, align 4, !tbaa !9
  %1960 = zext i32 %1959 to i64
  %1961 = add i64 %1960, 112
  %1962 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1958, i64 noundef %1961, i32 noundef %1962)
  %1963 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1963, ptr %48, align 4, !tbaa !9
  %1964 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1964, ptr %49, align 4, !tbaa !9
  %1965 = load ptr, ptr %5, align 8, !tbaa !5
  %1966 = getelementptr inbounds %struct.w2c_hermes, ptr %1965, i32 0, i32 6
  %1967 = load i32, ptr %48, align 4, !tbaa !9
  %1968 = zext i32 %1967 to i64
  %1969 = add i64 %1968, 124
  %1970 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1966, i64 noundef %1969, i32 noundef %1970)
  %1971 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1971, ptr %48, align 4, !tbaa !9
  %1972 = load ptr, ptr %5, align 8, !tbaa !5
  %1973 = getelementptr inbounds %struct.w2c_hermes, ptr %1972, i32 0, i32 6
  %1974 = load i32, ptr %48, align 4, !tbaa !9
  %1975 = zext i32 %1974 to i64
  %1976 = add i64 %1975, 36
  %1977 = call i32 @i32_load(ptr noundef %1973, i64 noundef %1976)
  store i32 %1977, ptr %48, align 4, !tbaa !9
  %1978 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %1978, ptr %7, align 4, !tbaa !9
  %1979 = load i32, ptr %48, align 4, !tbaa !9
  %1980 = icmp ne i32 %1979, 0
  %1981 = xor i1 %1980, true
  %1982 = zext i1 %1981 to i32
  store i32 %1982, ptr %48, align 4, !tbaa !9
  %1983 = load i32, ptr %48, align 4, !tbaa !9
  %1984 = icmp ne i32 %1983, 0
  br i1 %1984, label %1985, label %1986

1985:                                             ; preds = %1943
  br label %2223

1986:                                             ; preds = %1943
  %1987 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1987, ptr %48, align 4, !tbaa !9
  %1988 = load ptr, ptr %5, align 8, !tbaa !5
  %1989 = getelementptr inbounds %struct.w2c_hermes, ptr %1988, i32 0, i32 6
  %1990 = load i32, ptr %48, align 4, !tbaa !9
  %1991 = zext i32 %1990 to i64
  %1992 = add i64 %1991, 8
  %1993 = call i32 @i32_load(ptr noundef %1989, i64 noundef %1992)
  store i32 %1993, ptr %48, align 4, !tbaa !9
  store i32 50, ptr %49, align 4, !tbaa !9
  %1994 = load i32, ptr %48, align 4, !tbaa !9
  %1995 = load i32, ptr %49, align 4, !tbaa !9
  %1996 = icmp ne i32 %1994, %1995
  %1997 = zext i1 %1996 to i32
  store i32 %1997, ptr %48, align 4, !tbaa !9
  %1998 = load i32, ptr %48, align 4, !tbaa !9
  %1999 = icmp ne i32 %1998, 0
  br i1 %1999, label %2000, label %2001

2000:                                             ; preds = %1986
  br label %2223

2001:                                             ; preds = %1986
  store i32 1, ptr %48, align 4, !tbaa !9
  %2002 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2002, ptr %9, align 4, !tbaa !9
  br label %2003

2003:                                             ; preds = %2148, %2001
  %2004 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2004, ptr %48, align 4, !tbaa !9
  %2005 = load ptr, ptr %5, align 8, !tbaa !5
  %2006 = getelementptr inbounds %struct.w2c_hermes, ptr %2005, i32 0, i32 6
  %2007 = load i32, ptr %48, align 4, !tbaa !9
  %2008 = zext i32 %2007 to i64
  %2009 = add i64 %2008, 28
  %2010 = call i32 @i32_load(ptr noundef %2006, i64 noundef %2009)
  store i32 %2010, ptr %48, align 4, !tbaa !9
  %2011 = load ptr, ptr %5, align 8, !tbaa !5
  %2012 = getelementptr inbounds %struct.w2c_hermes, ptr %2011, i32 0, i32 6
  %2013 = load i32, ptr %48, align 4, !tbaa !9
  %2014 = zext i32 %2013 to i64
  %2015 = call i64 @i64_load(ptr noundef %2012, i64 noundef %2014)
  store i64 %2015, ptr %58, align 8, !tbaa !11
  %2016 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %2016, ptr %31, align 8, !tbaa !11
  store i64 32, ptr %59, align 8, !tbaa !11
  %2017 = load i64, ptr %59, align 8, !tbaa !11
  %2018 = and i64 %2017, 63
  %2019 = load i64, ptr %58, align 8, !tbaa !11
  %2020 = lshr i64 %2019, %2018
  store i64 %2020, ptr %58, align 8, !tbaa !11
  %2021 = load i64, ptr %58, align 8, !tbaa !11
  %2022 = trunc i64 %2021 to i32
  store i32 %2022, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %2023 = load i32, ptr %49, align 4, !tbaa !9
  %2024 = load i32, ptr %48, align 4, !tbaa !9
  %2025 = sub i32 %2024, %2023
  store i32 %2025, ptr %48, align 4, !tbaa !9
  %2026 = load i32, ptr %48, align 4, !tbaa !9
  %2027 = icmp ne i32 %2026, 0
  br i1 %2027, label %2028, label %2029

2028:                                             ; preds = %2003
  br label %2150

2029:                                             ; preds = %2003
  %2030 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %2030, ptr %58, align 8, !tbaa !11
  %2031 = load i64, ptr %58, align 8, !tbaa !11
  %2032 = trunc i64 %2031 to i32
  store i32 %2032, ptr %48, align 4, !tbaa !9
  %2033 = load ptr, ptr %5, align 8, !tbaa !5
  %2034 = getelementptr inbounds %struct.w2c_hermes, ptr %2033, i32 0, i32 6
  %2035 = load i32, ptr %48, align 4, !tbaa !9
  %2036 = zext i32 %2035 to i64
  %2037 = call i32 @i32_load8_u(ptr noundef %2034, i64 noundef %2036)
  store i32 %2037, ptr %48, align 4, !tbaa !9
  store i32 61, ptr %49, align 4, !tbaa !9
  %2038 = load i32, ptr %48, align 4, !tbaa !9
  %2039 = load i32, ptr %49, align 4, !tbaa !9
  %2040 = icmp ne i32 %2038, %2039
  %2041 = zext i1 %2040 to i32
  store i32 %2041, ptr %48, align 4, !tbaa !9
  %2042 = load i32, ptr %48, align 4, !tbaa !9
  %2043 = icmp ne i32 %2042, 0
  br i1 %2043, label %2044, label %2045

2044:                                             ; preds = %2029
  br label %2150

2045:                                             ; preds = %2029
  %2046 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2046, ptr %48, align 4, !tbaa !9
  %2047 = load ptr, ptr %5, align 8, !tbaa !5
  %2048 = getelementptr inbounds %struct.w2c_hermes, ptr %2047, i32 0, i32 6
  %2049 = load i32, ptr %48, align 4, !tbaa !9
  %2050 = zext i32 %2049 to i64
  %2051 = add i64 %2050, 120
  %2052 = call i32 @i32_load(ptr noundef %2048, i64 noundef %2051)
  store i32 %2052, ptr %48, align 4, !tbaa !9
  %2053 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2053, ptr %49, align 4, !tbaa !9
  %2054 = load i32, ptr %48, align 4, !tbaa !9
  %2055 = load i32, ptr %49, align 4, !tbaa !9
  %2056 = icmp ule i32 %2054, %2055
  %2057 = zext i1 %2056 to i32
  store i32 %2057, ptr %48, align 4, !tbaa !9
  %2058 = load i32, ptr %48, align 4, !tbaa !9
  %2059 = icmp ne i32 %2058, 0
  br i1 %2059, label %2060, label %2079

2060:                                             ; preds = %2045
  %2061 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2061, ptr %48, align 4, !tbaa !9
  store i32 112, ptr %49, align 4, !tbaa !9
  %2062 = load i32, ptr %49, align 4, !tbaa !9
  %2063 = load i32, ptr %48, align 4, !tbaa !9
  %2064 = add i32 %2063, %2062
  store i32 %2064, ptr %48, align 4, !tbaa !9
  %2065 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2065, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %2066 = load ptr, ptr %5, align 8, !tbaa !5
  %2067 = load i32, ptr %48, align 4, !tbaa !9
  %2068 = load i32, ptr %49, align 4, !tbaa !9
  %2069 = load i32, ptr %50, align 4, !tbaa !9
  %2070 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %2066, i32 noundef %2067, i32 noundef %2068, i32 noundef %2069, i32 noundef %2070)
  %2071 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2071, ptr %48, align 4, !tbaa !9
  %2072 = load ptr, ptr %5, align 8, !tbaa !5
  %2073 = getelementptr inbounds %struct.w2c_hermes, ptr %2072, i32 0, i32 6
  %2074 = load i32, ptr %48, align 4, !tbaa !9
  %2075 = zext i32 %2074 to i64
  %2076 = add i64 %2075, 116
  %2077 = call i32 @i32_load(ptr noundef %2073, i64 noundef %2076)
  store i32 %2077, ptr %48, align 4, !tbaa !9
  %2078 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2078, ptr %9, align 4, !tbaa !9
  br label %2079

2079:                                             ; preds = %2060, %2045
  %2080 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2080, ptr %48, align 4, !tbaa !9
  %2081 = load ptr, ptr %5, align 8, !tbaa !5
  %2082 = getelementptr inbounds %struct.w2c_hermes, ptr %2081, i32 0, i32 6
  %2083 = load i32, ptr %48, align 4, !tbaa !9
  %2084 = zext i32 %2083 to i64
  %2085 = add i64 %2084, 112
  %2086 = call i32 @i32_load(ptr noundef %2082, i64 noundef %2085)
  store i32 %2086, ptr %48, align 4, !tbaa !9
  %2087 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2087, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %2088 = load i32, ptr %50, align 4, !tbaa !9
  %2089 = and i32 %2088, 31
  %2090 = load i32, ptr %49, align 4, !tbaa !9
  %2091 = shl i32 %2090, %2089
  store i32 %2091, ptr %49, align 4, !tbaa !9
  %2092 = load i32, ptr %49, align 4, !tbaa !9
  %2093 = load i32, ptr %48, align 4, !tbaa !9
  %2094 = add i32 %2093, %2092
  store i32 %2094, ptr %48, align 4, !tbaa !9
  %2095 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2095, ptr %49, align 4, !tbaa !9
  %2096 = load ptr, ptr %5, align 8, !tbaa !5
  %2097 = getelementptr inbounds %struct.w2c_hermes, ptr %2096, i32 0, i32 6
  %2098 = load i32, ptr %48, align 4, !tbaa !9
  %2099 = zext i32 %2098 to i64
  %2100 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2097, i64 noundef %2099, i32 noundef %2100)
  %2101 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2101, ptr %48, align 4, !tbaa !9
  %2102 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2102, ptr %49, align 4, !tbaa !9
  %2103 = load ptr, ptr %5, align 8, !tbaa !5
  %2104 = getelementptr inbounds %struct.w2c_hermes, ptr %2103, i32 0, i32 6
  %2105 = load i32, ptr %49, align 4, !tbaa !9
  %2106 = zext i32 %2105 to i64
  %2107 = add i64 %2106, 116
  %2108 = call i32 @i32_load(ptr noundef %2104, i64 noundef %2107)
  store i32 %2108, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %2109 = load i32, ptr %50, align 4, !tbaa !9
  %2110 = load i32, ptr %49, align 4, !tbaa !9
  %2111 = add i32 %2110, %2109
  store i32 %2111, ptr %49, align 4, !tbaa !9
  %2112 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %2112, ptr %9, align 4, !tbaa !9
  %2113 = load ptr, ptr %5, align 8, !tbaa !5
  %2114 = getelementptr inbounds %struct.w2c_hermes, ptr %2113, i32 0, i32 6
  %2115 = load i32, ptr %48, align 4, !tbaa !9
  %2116 = zext i32 %2115 to i64
  %2117 = add i64 %2116, 116
  %2118 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2114, i64 noundef %2117, i32 noundef %2118)
  %2119 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2119, ptr %48, align 4, !tbaa !9
  %2120 = load ptr, ptr %5, align 8, !tbaa !5
  %2121 = getelementptr inbounds %struct.w2c_hermes, ptr %2120, i32 0, i32 6
  %2122 = load i32, ptr %48, align 4, !tbaa !9
  %2123 = zext i32 %2122 to i64
  %2124 = add i64 %2123, 36
  %2125 = call i32 @i32_load(ptr noundef %2121, i64 noundef %2124)
  store i32 %2125, ptr %48, align 4, !tbaa !9
  %2126 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2126, ptr %7, align 4, !tbaa !9
  %2127 = load i32, ptr %48, align 4, !tbaa !9
  %2128 = icmp ne i32 %2127, 0
  %2129 = xor i1 %2128, true
  %2130 = zext i1 %2129 to i32
  store i32 %2130, ptr %48, align 4, !tbaa !9
  %2131 = load i32, ptr %48, align 4, !tbaa !9
  %2132 = icmp ne i32 %2131, 0
  br i1 %2132, label %2133, label %2134

2133:                                             ; preds = %2079
  br label %2150

2134:                                             ; preds = %2079
  %2135 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2135, ptr %48, align 4, !tbaa !9
  %2136 = load ptr, ptr %5, align 8, !tbaa !5
  %2137 = getelementptr inbounds %struct.w2c_hermes, ptr %2136, i32 0, i32 6
  %2138 = load i32, ptr %48, align 4, !tbaa !9
  %2139 = zext i32 %2138 to i64
  %2140 = add i64 %2139, 8
  %2141 = call i32 @i32_load(ptr noundef %2137, i64 noundef %2140)
  store i32 %2141, ptr %48, align 4, !tbaa !9
  store i32 50, ptr %49, align 4, !tbaa !9
  %2142 = load i32, ptr %48, align 4, !tbaa !9
  %2143 = load i32, ptr %49, align 4, !tbaa !9
  %2144 = icmp eq i32 %2142, %2143
  %2145 = zext i1 %2144 to i32
  store i32 %2145, ptr %48, align 4, !tbaa !9
  %2146 = load i32, ptr %48, align 4, !tbaa !9
  %2147 = icmp ne i32 %2146, 0
  br i1 %2147, label %2148, label %2149

2148:                                             ; preds = %2134
  br label %2003

2149:                                             ; preds = %2134
  br label %2150

2150:                                             ; preds = %2149, %2133, %2044, %2028
  %2151 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2151, ptr %48, align 4, !tbaa !9
  store i64 4294967296, ptr %59, align 8, !tbaa !11
  %2152 = load ptr, ptr %5, align 8, !tbaa !5
  %2153 = getelementptr inbounds %struct.w2c_hermes, ptr %2152, i32 0, i32 6
  %2154 = load i32, ptr %48, align 4, !tbaa !9
  %2155 = zext i32 %2154 to i64
  %2156 = add i64 %2155, 80
  %2157 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2153, i64 noundef %2156, i64 noundef %2157)
  %2158 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2158, ptr %48, align 4, !tbaa !9
  %2159 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2159, ptr %49, align 4, !tbaa !9
  store i32 88, ptr %50, align 4, !tbaa !9
  %2160 = load i32, ptr %50, align 4, !tbaa !9
  %2161 = load i32, ptr %49, align 4, !tbaa !9
  %2162 = add i32 %2161, %2160
  store i32 %2162, ptr %49, align 4, !tbaa !9
  %2163 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %2163, ptr %12, align 4, !tbaa !9
  %2164 = load ptr, ptr %5, align 8, !tbaa !5
  %2165 = getelementptr inbounds %struct.w2c_hermes, ptr %2164, i32 0, i32 6
  %2166 = load i32, ptr %48, align 4, !tbaa !9
  %2167 = zext i32 %2166 to i64
  %2168 = add i64 %2167, 76
  %2169 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2165, i64 noundef %2168, i32 noundef %2169)
  %2170 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2170, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %2171 = load i32, ptr %48, align 4, !tbaa !9
  %2172 = load i32, ptr %49, align 4, !tbaa !9
  %2173 = icmp uge i32 %2171, %2172
  %2174 = zext i1 %2173 to i32
  store i32 %2174, ptr %48, align 4, !tbaa !9
  %2175 = load i32, ptr %48, align 4, !tbaa !9
  %2176 = icmp ne i32 %2175, 0
  br i1 %2176, label %2177, label %2197

2177:                                             ; preds = %2150
  %2178 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2178, ptr %48, align 4, !tbaa !9
  store i32 76, ptr %49, align 4, !tbaa !9
  %2179 = load i32, ptr %49, align 4, !tbaa !9
  %2180 = load i32, ptr %48, align 4, !tbaa !9
  %2181 = add i32 %2180, %2179
  store i32 %2181, ptr %48, align 4, !tbaa !9
  %2182 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2182, ptr %49, align 4, !tbaa !9
  %2183 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2183, ptr %50, align 4, !tbaa !9
  store i32 24, ptr %51, align 4, !tbaa !9
  %2184 = load ptr, ptr %5, align 8, !tbaa !5
  %2185 = load i32, ptr %48, align 4, !tbaa !9
  %2186 = load i32, ptr %49, align 4, !tbaa !9
  %2187 = load i32, ptr %50, align 4, !tbaa !9
  %2188 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %2184, i32 noundef %2185, i32 noundef %2186, i32 noundef %2187, i32 noundef %2188)
  %2189 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2189, ptr %48, align 4, !tbaa !9
  %2190 = load ptr, ptr %5, align 8, !tbaa !5
  %2191 = getelementptr inbounds %struct.w2c_hermes, ptr %2190, i32 0, i32 6
  %2192 = load i32, ptr %48, align 4, !tbaa !9
  %2193 = zext i32 %2192 to i64
  %2194 = add i64 %2193, 116
  %2195 = call i32 @i32_load(ptr noundef %2191, i64 noundef %2194)
  store i32 %2195, ptr %48, align 4, !tbaa !9
  %2196 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2196, ptr %9, align 4, !tbaa !9
  br label %2197

2197:                                             ; preds = %2177, %2150
  %2198 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2198, ptr %48, align 4, !tbaa !9
  %2199 = load i32, ptr %48, align 4, !tbaa !9
  %2200 = icmp ne i32 %2199, 0
  %2201 = xor i1 %2200, true
  %2202 = zext i1 %2201 to i32
  store i32 %2202, ptr %48, align 4, !tbaa !9
  %2203 = load i32, ptr %48, align 4, !tbaa !9
  %2204 = icmp ne i32 %2203, 0
  br i1 %2204, label %2205, label %2206

2205:                                             ; preds = %2197
  br label %2418

2206:                                             ; preds = %2197
  %2207 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2207, ptr %48, align 4, !tbaa !9
  %2208 = load ptr, ptr %5, align 8, !tbaa !5
  %2209 = getelementptr inbounds %struct.w2c_hermes, ptr %2208, i32 0, i32 6
  %2210 = load i32, ptr %48, align 4, !tbaa !9
  %2211 = zext i32 %2210 to i64
  %2212 = add i64 %2211, 112
  %2213 = call i32 @i32_load(ptr noundef %2209, i64 noundef %2212)
  store i32 %2213, ptr %48, align 4, !tbaa !9
  %2214 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2214, ptr %7, align 4, !tbaa !9
  %2215 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2215, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %2216 = load i32, ptr %50, align 4, !tbaa !9
  %2217 = and i32 %2216, 31
  %2218 = load i32, ptr %49, align 4, !tbaa !9
  %2219 = shl i32 %2218, %2217
  store i32 %2219, ptr %49, align 4, !tbaa !9
  %2220 = load i32, ptr %49, align 4, !tbaa !9
  %2221 = load i32, ptr %48, align 4, !tbaa !9
  %2222 = add i32 %2221, %2220
  store i32 %2222, ptr %48, align 4, !tbaa !9
  br label %2254

2223:                                             ; preds = %2000, %1985
  %2224 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2224, ptr %48, align 4, !tbaa !9
  store i64 4294967296, ptr %59, align 8, !tbaa !11
  %2225 = load ptr, ptr %5, align 8, !tbaa !5
  %2226 = getelementptr inbounds %struct.w2c_hermes, ptr %2225, i32 0, i32 6
  %2227 = load i32, ptr %48, align 4, !tbaa !9
  %2228 = zext i32 %2227 to i64
  %2229 = add i64 %2228, 80
  %2230 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2226, i64 noundef %2229, i64 noundef %2230)
  %2231 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2231, ptr %48, align 4, !tbaa !9
  %2232 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2232, ptr %49, align 4, !tbaa !9
  store i32 88, ptr %50, align 4, !tbaa !9
  %2233 = load i32, ptr %50, align 4, !tbaa !9
  %2234 = load i32, ptr %49, align 4, !tbaa !9
  %2235 = add i32 %2234, %2233
  store i32 %2235, ptr %49, align 4, !tbaa !9
  %2236 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %2236, ptr %12, align 4, !tbaa !9
  %2237 = load ptr, ptr %5, align 8, !tbaa !5
  %2238 = getelementptr inbounds %struct.w2c_hermes, ptr %2237, i32 0, i32 6
  %2239 = load i32, ptr %48, align 4, !tbaa !9
  %2240 = zext i32 %2239 to i64
  %2241 = add i64 %2240, 76
  %2242 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2238, i64 noundef %2241, i32 noundef %2242)
  %2243 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2243, ptr %48, align 4, !tbaa !9
  %2244 = load ptr, ptr %5, align 8, !tbaa !5
  %2245 = getelementptr inbounds %struct.w2c_hermes, ptr %2244, i32 0, i32 6
  %2246 = load i32, ptr %48, align 4, !tbaa !9
  %2247 = zext i32 %2246 to i64
  %2248 = add i64 %2247, 112
  %2249 = call i32 @i32_load(ptr noundef %2245, i64 noundef %2248)
  store i32 %2249, ptr %48, align 4, !tbaa !9
  %2250 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2250, ptr %7, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %2251 = load i32, ptr %49, align 4, !tbaa !9
  %2252 = load i32, ptr %48, align 4, !tbaa !9
  %2253 = add i32 %2252, %2251
  store i32 %2253, ptr %48, align 4, !tbaa !9
  br label %2254

2254:                                             ; preds = %2223, %2206
  %2255 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2255, ptr %11, align 4, !tbaa !9
  br label %2256

2256:                                             ; preds = %2404, %2254
  %2257 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2257, ptr %48, align 4, !tbaa !9
  store i32 52, ptr %49, align 4, !tbaa !9
  %2258 = load i32, ptr %49, align 4, !tbaa !9
  %2259 = load i32, ptr %48, align 4, !tbaa !9
  %2260 = add i32 %2259, %2258
  store i32 %2260, ptr %48, align 4, !tbaa !9
  %2261 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %2261, ptr %49, align 4, !tbaa !9
  %2262 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2262, ptr %50, align 4, !tbaa !9
  %2263 = load ptr, ptr %5, align 8, !tbaa !5
  %2264 = getelementptr inbounds %struct.w2c_hermes, ptr %2263, i32 0, i32 6
  %2265 = load i32, ptr %50, align 4, !tbaa !9
  %2266 = zext i32 %2265 to i64
  %2267 = call i32 @i32_load(ptr noundef %2264, i64 noundef %2266)
  store i32 %2267, ptr %50, align 4, !tbaa !9
  %2268 = load ptr, ptr %5, align 8, !tbaa !5
  %2269 = getelementptr inbounds %struct.w2c_hermes, ptr %2268, i32 0, i32 6
  %2270 = load i32, ptr %50, align 4, !tbaa !9
  %2271 = zext i32 %2270 to i64
  %2272 = add i64 %2271, 32
  %2273 = call i32 @i32_load(ptr noundef %2269, i64 noundef %2272)
  store i32 %2273, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %2274 = load ptr, ptr %5, align 8, !tbaa !5
  %2275 = load i32, ptr %48, align 4, !tbaa !9
  %2276 = load i32, ptr %49, align 4, !tbaa !9
  %2277 = load i32, ptr %50, align 4, !tbaa !9
  %2278 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AcreateLRef0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20bool0x29(ptr noundef %2274, i32 noundef %2275, i32 noundef %2276, i32 noundef %2277, i32 noundef %2278)
  %2279 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2279, ptr %48, align 4, !tbaa !9
  %2280 = load ptr, ptr %5, align 8, !tbaa !5
  %2281 = getelementptr inbounds %struct.w2c_hermes, ptr %2280, i32 0, i32 6
  %2282 = load i32, ptr %48, align 4, !tbaa !9
  %2283 = zext i32 %2282 to i64
  %2284 = add i64 %2283, 80
  %2285 = call i32 @i32_load(ptr noundef %2281, i64 noundef %2284)
  store i32 %2285, ptr %48, align 4, !tbaa !9
  %2286 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2286, ptr %9, align 4, !tbaa !9
  %2287 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2287, ptr %49, align 4, !tbaa !9
  %2288 = load ptr, ptr %5, align 8, !tbaa !5
  %2289 = getelementptr inbounds %struct.w2c_hermes, ptr %2288, i32 0, i32 6
  %2290 = load i32, ptr %49, align 4, !tbaa !9
  %2291 = zext i32 %2290 to i64
  %2292 = add i64 %2291, 84
  %2293 = call i32 @i32_load(ptr noundef %2289, i64 noundef %2292)
  store i32 %2293, ptr %49, align 4, !tbaa !9
  %2294 = load i32, ptr %48, align 4, !tbaa !9
  %2295 = load i32, ptr %49, align 4, !tbaa !9
  %2296 = icmp uge i32 %2294, %2295
  %2297 = zext i1 %2296 to i32
  store i32 %2297, ptr %48, align 4, !tbaa !9
  %2298 = load i32, ptr %48, align 4, !tbaa !9
  %2299 = icmp ne i32 %2298, 0
  br i1 %2299, label %2300, label %2319

2300:                                             ; preds = %2256
  %2301 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2301, ptr %48, align 4, !tbaa !9
  store i32 76, ptr %49, align 4, !tbaa !9
  %2302 = load i32, ptr %49, align 4, !tbaa !9
  %2303 = load i32, ptr %48, align 4, !tbaa !9
  %2304 = add i32 %2303, %2302
  store i32 %2304, ptr %48, align 4, !tbaa !9
  %2305 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2305, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 24, ptr %51, align 4, !tbaa !9
  %2306 = load ptr, ptr %5, align 8, !tbaa !5
  %2307 = load i32, ptr %48, align 4, !tbaa !9
  %2308 = load i32, ptr %49, align 4, !tbaa !9
  %2309 = load i32, ptr %50, align 4, !tbaa !9
  %2310 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %2306, i32 noundef %2307, i32 noundef %2308, i32 noundef %2309, i32 noundef %2310)
  %2311 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2311, ptr %48, align 4, !tbaa !9
  %2312 = load ptr, ptr %5, align 8, !tbaa !5
  %2313 = getelementptr inbounds %struct.w2c_hermes, ptr %2312, i32 0, i32 6
  %2314 = load i32, ptr %48, align 4, !tbaa !9
  %2315 = zext i32 %2314 to i64
  %2316 = add i64 %2315, 80
  %2317 = call i32 @i32_load(ptr noundef %2313, i64 noundef %2316)
  store i32 %2317, ptr %48, align 4, !tbaa !9
  %2318 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2318, ptr %9, align 4, !tbaa !9
  br label %2319

2319:                                             ; preds = %2300, %2256
  %2320 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2320, ptr %48, align 4, !tbaa !9
  %2321 = load ptr, ptr %5, align 8, !tbaa !5
  %2322 = getelementptr inbounds %struct.w2c_hermes, ptr %2321, i32 0, i32 6
  %2323 = load i32, ptr %48, align 4, !tbaa !9
  %2324 = zext i32 %2323 to i64
  %2325 = add i64 %2324, 76
  %2326 = call i32 @i32_load(ptr noundef %2322, i64 noundef %2325)
  store i32 %2326, ptr %48, align 4, !tbaa !9
  %2327 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2327, ptr %49, align 4, !tbaa !9
  store i32 24, ptr %50, align 4, !tbaa !9
  %2328 = load i32, ptr %50, align 4, !tbaa !9
  %2329 = load i32, ptr %49, align 4, !tbaa !9
  %2330 = mul i32 %2329, %2328
  store i32 %2330, ptr %49, align 4, !tbaa !9
  %2331 = load i32, ptr %49, align 4, !tbaa !9
  %2332 = load i32, ptr %48, align 4, !tbaa !9
  %2333 = add i32 %2332, %2331
  store i32 %2333, ptr %48, align 4, !tbaa !9
  %2334 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2334, ptr %9, align 4, !tbaa !9
  %2335 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2335, ptr %49, align 4, !tbaa !9
  %2336 = load ptr, ptr %5, align 8, !tbaa !5
  %2337 = getelementptr inbounds %struct.w2c_hermes, ptr %2336, i32 0, i32 6
  %2338 = load i32, ptr %49, align 4, !tbaa !9
  %2339 = zext i32 %2338 to i64
  %2340 = add i64 %2339, 52
  %2341 = call i64 @i64_load(ptr noundef %2337, i64 noundef %2340)
  store i64 %2341, ptr %59, align 8, !tbaa !11
  %2342 = load ptr, ptr %5, align 8, !tbaa !5
  %2343 = getelementptr inbounds %struct.w2c_hermes, ptr %2342, i32 0, i32 6
  %2344 = load i32, ptr %48, align 4, !tbaa !9
  %2345 = zext i32 %2344 to i64
  %2346 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2343, i64 noundef %2345, i64 noundef %2346)
  %2347 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2347, ptr %48, align 4, !tbaa !9
  %2348 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2348, ptr %49, align 4, !tbaa !9
  %2349 = load ptr, ptr %5, align 8, !tbaa !5
  %2350 = getelementptr inbounds %struct.w2c_hermes, ptr %2349, i32 0, i32 6
  %2351 = load i32, ptr %49, align 4, !tbaa !9
  %2352 = zext i32 %2351 to i64
  %2353 = add i64 %2352, 68
  %2354 = call i64 @i64_load(ptr noundef %2350, i64 noundef %2353)
  store i64 %2354, ptr %59, align 8, !tbaa !11
  %2355 = load ptr, ptr %5, align 8, !tbaa !5
  %2356 = getelementptr inbounds %struct.w2c_hermes, ptr %2355, i32 0, i32 6
  %2357 = load i32, ptr %48, align 4, !tbaa !9
  %2358 = zext i32 %2357 to i64
  %2359 = add i64 %2358, 16
  %2360 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2356, i64 noundef %2359, i64 noundef %2360)
  %2361 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2361, ptr %48, align 4, !tbaa !9
  %2362 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2362, ptr %49, align 4, !tbaa !9
  %2363 = load ptr, ptr %5, align 8, !tbaa !5
  %2364 = getelementptr inbounds %struct.w2c_hermes, ptr %2363, i32 0, i32 6
  %2365 = load i32, ptr %49, align 4, !tbaa !9
  %2366 = zext i32 %2365 to i64
  %2367 = add i64 %2366, 60
  %2368 = call i64 @i64_load(ptr noundef %2364, i64 noundef %2367)
  store i64 %2368, ptr %59, align 8, !tbaa !11
  %2369 = load ptr, ptr %5, align 8, !tbaa !5
  %2370 = getelementptr inbounds %struct.w2c_hermes, ptr %2369, i32 0, i32 6
  %2371 = load i32, ptr %48, align 4, !tbaa !9
  %2372 = zext i32 %2371 to i64
  %2373 = add i64 %2372, 8
  %2374 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2370, i64 noundef %2373, i64 noundef %2374)
  %2375 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2375, ptr %48, align 4, !tbaa !9
  %2376 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2376, ptr %49, align 4, !tbaa !9
  %2377 = load ptr, ptr %5, align 8, !tbaa !5
  %2378 = getelementptr inbounds %struct.w2c_hermes, ptr %2377, i32 0, i32 6
  %2379 = load i32, ptr %49, align 4, !tbaa !9
  %2380 = zext i32 %2379 to i64
  %2381 = add i64 %2380, 80
  %2382 = call i32 @i32_load(ptr noundef %2378, i64 noundef %2381)
  store i32 %2382, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %2383 = load i32, ptr %50, align 4, !tbaa !9
  %2384 = load i32, ptr %49, align 4, !tbaa !9
  %2385 = add i32 %2384, %2383
  store i32 %2385, ptr %49, align 4, !tbaa !9
  %2386 = load ptr, ptr %5, align 8, !tbaa !5
  %2387 = getelementptr inbounds %struct.w2c_hermes, ptr %2386, i32 0, i32 6
  %2388 = load i32, ptr %48, align 4, !tbaa !9
  %2389 = zext i32 %2388 to i64
  %2390 = add i64 %2389, 80
  %2391 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2387, i64 noundef %2390, i32 noundef %2391)
  %2392 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2392, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %2393 = load i32, ptr %49, align 4, !tbaa !9
  %2394 = load i32, ptr %48, align 4, !tbaa !9
  %2395 = add i32 %2394, %2393
  store i32 %2395, ptr %48, align 4, !tbaa !9
  %2396 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2396, ptr %7, align 4, !tbaa !9
  %2397 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2397, ptr %49, align 4, !tbaa !9
  %2398 = load i32, ptr %48, align 4, !tbaa !9
  %2399 = load i32, ptr %49, align 4, !tbaa !9
  %2400 = icmp ne i32 %2398, %2399
  %2401 = zext i1 %2400 to i32
  store i32 %2401, ptr %48, align 4, !tbaa !9
  %2402 = load i32, ptr %48, align 4, !tbaa !9
  %2403 = icmp ne i32 %2402, 0
  br i1 %2403, label %2404, label %2405

2404:                                             ; preds = %2319
  br label %2256

2405:                                             ; preds = %2319
  %2406 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2406, ptr %48, align 4, !tbaa !9
  %2407 = load ptr, ptr %5, align 8, !tbaa !5
  %2408 = getelementptr inbounds %struct.w2c_hermes, ptr %2407, i32 0, i32 6
  %2409 = load i32, ptr %48, align 4, !tbaa !9
  %2410 = zext i32 %2409 to i64
  %2411 = add i64 %2410, 116
  %2412 = call i32 @i32_load(ptr noundef %2408, i64 noundef %2411)
  store i32 %2412, ptr %48, align 4, !tbaa !9
  %2413 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2413, ptr %9, align 4, !tbaa !9
  %2414 = load i32, ptr %48, align 4, !tbaa !9
  %2415 = icmp ne i32 %2414, 0
  br i1 %2415, label %2416, label %2417

2416:                                             ; preds = %2405
  br label %2420

2417:                                             ; preds = %2405
  br label %2418

2418:                                             ; preds = %2417, %2205
  store i32 0, ptr %48, align 4, !tbaa !9
  %2419 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2419, ptr %11, align 4, !tbaa !9
  br label %4186

2420:                                             ; preds = %2416
  %2421 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2421, ptr %48, align 4, !tbaa !9
  %2422 = load ptr, ptr %5, align 8, !tbaa !5
  %2423 = getelementptr inbounds %struct.w2c_hermes, ptr %2422, i32 0, i32 6
  %2424 = load i32, ptr %48, align 4, !tbaa !9
  %2425 = zext i32 %2424 to i64
  %2426 = add i64 %2425, 76
  %2427 = call i32 @i32_load(ptr noundef %2423, i64 noundef %2426)
  store i32 %2427, ptr %48, align 4, !tbaa !9
  %2428 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2428, ptr %49, align 4, !tbaa !9
  %2429 = load ptr, ptr %5, align 8, !tbaa !5
  %2430 = getelementptr inbounds %struct.w2c_hermes, ptr %2429, i32 0, i32 6
  %2431 = load i32, ptr %49, align 4, !tbaa !9
  %2432 = zext i32 %2431 to i64
  %2433 = add i64 %2432, 80
  %2434 = call i32 @i32_load(ptr noundef %2430, i64 noundef %2433)
  store i32 %2434, ptr %49, align 4, !tbaa !9
  store i32 24, ptr %50, align 4, !tbaa !9
  %2435 = load i32, ptr %50, align 4, !tbaa !9
  %2436 = load i32, ptr %49, align 4, !tbaa !9
  %2437 = mul i32 %2436, %2435
  store i32 %2437, ptr %49, align 4, !tbaa !9
  %2438 = load i32, ptr %49, align 4, !tbaa !9
  %2439 = load i32, ptr %48, align 4, !tbaa !9
  %2440 = add i32 %2439, %2438
  store i32 %2440, ptr %48, align 4, !tbaa !9
  %2441 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2441, ptr %7, align 4, !tbaa !9
  %2442 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2442, ptr %48, align 4, !tbaa !9
  %2443 = load ptr, ptr %5, align 8, !tbaa !5
  %2444 = getelementptr inbounds %struct.w2c_hermes, ptr %2443, i32 0, i32 6
  %2445 = load i32, ptr %48, align 4, !tbaa !9
  %2446 = zext i32 %2445 to i64
  %2447 = add i64 %2446, 112
  %2448 = call i32 @i32_load(ptr noundef %2444, i64 noundef %2447)
  store i32 %2448, ptr %48, align 4, !tbaa !9
  %2449 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2449, ptr %15, align 4, !tbaa !9
  %2450 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2450, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %2451 = load i32, ptr %50, align 4, !tbaa !9
  %2452 = and i32 %2451, 31
  %2453 = load i32, ptr %49, align 4, !tbaa !9
  %2454 = shl i32 %2453, %2452
  store i32 %2454, ptr %49, align 4, !tbaa !9
  %2455 = load i32, ptr %49, align 4, !tbaa !9
  %2456 = load i32, ptr %48, align 4, !tbaa !9
  %2457 = add i32 %2456, %2455
  store i32 %2457, ptr %48, align 4, !tbaa !9
  %2458 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2458, ptr %9, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %2459 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2459, ptr %11, align 4, !tbaa !9
  br label %2460

2460:                                             ; preds = %2570, %2420
  %2461 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2461, ptr %48, align 4, !tbaa !9
  store i32 24, ptr %49, align 4, !tbaa !9
  %2462 = load i32, ptr %49, align 4, !tbaa !9
  %2463 = load i32, ptr %48, align 4, !tbaa !9
  %2464 = sub i32 %2463, %2462
  store i32 %2464, ptr %48, align 4, !tbaa !9
  %2465 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2465, ptr %7, align 4, !tbaa !9
  %2466 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2466, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %2467 = load i32, ptr %49, align 4, !tbaa !9
  %2468 = load i32, ptr %48, align 4, !tbaa !9
  %2469 = sub i32 %2468, %2467
  store i32 %2469, ptr %48, align 4, !tbaa !9
  %2470 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2470, ptr %9, align 4, !tbaa !9
  %2471 = load ptr, ptr %5, align 8, !tbaa !5
  %2472 = getelementptr inbounds %struct.w2c_hermes, ptr %2471, i32 0, i32 6
  %2473 = load i32, ptr %48, align 4, !tbaa !9
  %2474 = zext i32 %2473 to i64
  %2475 = call i32 @i32_load(ptr noundef %2472, i64 noundef %2474)
  store i32 %2475, ptr %48, align 4, !tbaa !9
  %2476 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2476, ptr %14, align 4, !tbaa !9
  %2477 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2477, ptr %48, align 4, !tbaa !9
  %2478 = load i32, ptr %48, align 4, !tbaa !9
  %2479 = icmp ne i32 %2478, 0
  %2480 = xor i1 %2479, true
  %2481 = zext i1 %2480 to i32
  store i32 %2481, ptr %48, align 4, !tbaa !9
  %2482 = load i32, ptr %48, align 4, !tbaa !9
  %2483 = icmp ne i32 %2482, 0
  br i1 %2483, label %2484, label %2542

2484:                                             ; preds = %2460
  %2485 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %2485, ptr %48, align 4, !tbaa !9
  %2486 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2486, ptr %49, align 4, !tbaa !9
  %2487 = load ptr, ptr %5, align 8, !tbaa !5
  %2488 = getelementptr inbounds %struct.w2c_hermes, ptr %2487, i32 0, i32 6
  %2489 = load i32, ptr %49, align 4, !tbaa !9
  %2490 = zext i32 %2489 to i64
  %2491 = add i64 %2490, 36
  %2492 = call i32 @i32_load(ptr noundef %2488, i64 noundef %2491)
  store i32 %2492, ptr %49, align 4, !tbaa !9
  %2493 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2493, ptr %50, align 4, !tbaa !9
  %2494 = load ptr, ptr %5, align 8, !tbaa !5
  %2495 = load i32, ptr %50, align 4, !tbaa !9
  %2496 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsVariable0x280x290x20const(ptr noundef %2494, i32 noundef %2495)
  store i32 %2496, ptr %50, align 4, !tbaa !9
  %2497 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %2497, ptr %11, align 4, !tbaa !9
  %2498 = load i32, ptr %50, align 4, !tbaa !9
  %2499 = icmp ne i32 %2498, 0
  br i1 %2499, label %2500, label %2505

2500:                                             ; preds = %2484
  %2501 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2501, ptr %50, align 4, !tbaa !9
  store i32 32, ptr %51, align 4, !tbaa !9
  %2502 = load i32, ptr %51, align 4, !tbaa !9
  %2503 = load i32, ptr %50, align 4, !tbaa !9
  %2504 = add i32 %2503, %2502
  store i32 %2504, ptr %50, align 4, !tbaa !9
  br label %2529

2505:                                             ; preds = %2484
  store i32 0, ptr %50, align 4, !tbaa !9
  %2506 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2506, ptr %51, align 4, !tbaa !9
  %2507 = load ptr, ptr %5, align 8, !tbaa !5
  %2508 = load i32, ptr %51, align 4, !tbaa !9
  %2509 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsGlobalObjectProperty0x280x290x20const(ptr noundef %2507, i32 noundef %2508)
  store i32 %2509, ptr %51, align 4, !tbaa !9
  %2510 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %2510, ptr %11, align 4, !tbaa !9
  %2511 = load i32, ptr %51, align 4, !tbaa !9
  %2512 = icmp ne i32 %2511, 0
  %2513 = xor i1 %2512, true
  %2514 = zext i1 %2513 to i32
  store i32 %2514, ptr %51, align 4, !tbaa !9
  %2515 = load i32, ptr %51, align 4, !tbaa !9
  %2516 = icmp ne i32 %2515, 0
  br i1 %2516, label %2517, label %2518

2517:                                             ; preds = %2505
  br label %2535

2518:                                             ; preds = %2505
  %2519 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2519, ptr %50, align 4, !tbaa !9
  %2520 = load ptr, ptr %5, align 8, !tbaa !5
  %2521 = getelementptr inbounds %struct.w2c_hermes, ptr %2520, i32 0, i32 6
  %2522 = load i32, ptr %50, align 4, !tbaa !9
  %2523 = zext i32 %2522 to i64
  %2524 = add i64 %2523, 32
  %2525 = call i32 @i32_load(ptr noundef %2521, i64 noundef %2524)
  store i32 %2525, ptr %50, align 4, !tbaa !9
  store i32 32, ptr %51, align 4, !tbaa !9
  %2526 = load i32, ptr %51, align 4, !tbaa !9
  %2527 = load i32, ptr %50, align 4, !tbaa !9
  %2528 = add i32 %2527, %2526
  store i32 %2528, ptr %50, align 4, !tbaa !9
  br label %2529

2529:                                             ; preds = %2518, %2500
  %2530 = load ptr, ptr %5, align 8, !tbaa !5
  %2531 = getelementptr inbounds %struct.w2c_hermes, ptr %2530, i32 0, i32 6
  %2532 = load i32, ptr %50, align 4, !tbaa !9
  %2533 = zext i32 %2532 to i64
  %2534 = call i32 @i32_load(ptr noundef %2531, i64 noundef %2533)
  store i32 %2534, ptr %50, align 4, !tbaa !9
  br label %2535

2535:                                             ; preds = %2529, %2517
  %2536 = load ptr, ptr %5, align 8, !tbaa !5
  %2537 = load i32, ptr %48, align 4, !tbaa !9
  %2538 = load i32, ptr %49, align 4, !tbaa !9
  %2539 = load i32, ptr %50, align 4, !tbaa !9
  %2540 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %2536, i32 noundef %2537, i32 noundef %2538, i32 noundef %2539)
  store i32 %2540, ptr %48, align 4, !tbaa !9
  %2541 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2541, ptr %11, align 4, !tbaa !9
  br label %2542

2542:                                             ; preds = %2535, %2460
  %2543 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %2543, ptr %48, align 4, !tbaa !9
  %2544 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2544, ptr %49, align 4, !tbaa !9
  %2545 = load ptr, ptr %5, align 8, !tbaa !5
  %2546 = getelementptr inbounds %struct.w2c_hermes, ptr %2545, i32 0, i32 6
  %2547 = load i32, ptr %49, align 4, !tbaa !9
  %2548 = zext i32 %2547 to i64
  %2549 = add i64 %2548, 24
  %2550 = call i32 @i32_load(ptr noundef %2546, i64 noundef %2549)
  store i32 %2550, ptr %49, align 4, !tbaa !9
  %2551 = load ptr, ptr %5, align 8, !tbaa !5
  %2552 = getelementptr inbounds %struct.w2c_hermes, ptr %2551, i32 0, i32 6
  %2553 = load i32, ptr %48, align 4, !tbaa !9
  %2554 = zext i32 %2553 to i64
  %2555 = add i64 %2554, 16
  %2556 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2552, i64 noundef %2555, i32 noundef %2556)
  %2557 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2557, ptr %48, align 4, !tbaa !9
  %2558 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2558, ptr %49, align 4, !tbaa !9
  %2559 = load ptr, ptr %5, align 8, !tbaa !5
  %2560 = load i32, ptr %48, align 4, !tbaa !9
  %2561 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %2559, i32 noundef %2560, i32 noundef %2561)
  %2562 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2562, ptr %48, align 4, !tbaa !9
  %2563 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %2563, ptr %49, align 4, !tbaa !9
  %2564 = load i32, ptr %48, align 4, !tbaa !9
  %2565 = load i32, ptr %49, align 4, !tbaa !9
  %2566 = icmp ne i32 %2564, %2565
  %2567 = zext i1 %2566 to i32
  store i32 %2567, ptr %48, align 4, !tbaa !9
  %2568 = load i32, ptr %48, align 4, !tbaa !9
  %2569 = icmp ne i32 %2568, 0
  br i1 %2569, label %2570, label %2571

2570:                                             ; preds = %2542
  br label %2460

2571:                                             ; preds = %2542
  br label %4186

2572:                                             ; preds = %1942, %1926
  %2573 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2573, ptr %48, align 4, !tbaa !9
  %2574 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %2574, ptr %59, align 8, !tbaa !11
  %2575 = load ptr, ptr %5, align 8, !tbaa !5
  %2576 = getelementptr inbounds %struct.w2c_hermes, ptr %2575, i32 0, i32 6
  %2577 = load i32, ptr %48, align 4, !tbaa !9
  %2578 = zext i32 %2577 to i64
  %2579 = add i64 %2578, 32
  %2580 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2576, i64 noundef %2579, i64 noundef %2580)
  %2581 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2581, ptr %48, align 4, !tbaa !9
  %2582 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %2582, ptr %59, align 8, !tbaa !11
  %2583 = load ptr, ptr %5, align 8, !tbaa !5
  %2584 = getelementptr inbounds %struct.w2c_hermes, ptr %2583, i32 0, i32 6
  %2585 = load i32, ptr %48, align 4, !tbaa !9
  %2586 = zext i32 %2585 to i64
  %2587 = add i64 %2586, 40
  %2588 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2584, i64 noundef %2587, i64 noundef %2588)
  store i32 0, ptr %48, align 4, !tbaa !9
  %2589 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2589, ptr %8, align 4, !tbaa !9
  %2590 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2590, ptr %48, align 4, !tbaa !9
  %2591 = load ptr, ptr %5, align 8, !tbaa !5
  %2592 = getelementptr inbounds %struct.w2c_hermes, ptr %2591, i32 0, i32 6
  %2593 = load i32, ptr %48, align 4, !tbaa !9
  %2594 = zext i32 %2593 to i64
  %2595 = add i64 %2594, 32
  %2596 = call i64 @i64_load(ptr noundef %2592, i64 noundef %2595)
  store i64 %2596, ptr %58, align 8, !tbaa !11
  %2597 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %2597, ptr %31, align 8, !tbaa !11
  store i64 32, ptr %59, align 8, !tbaa !11
  %2598 = load i64, ptr %59, align 8, !tbaa !11
  %2599 = and i64 %2598, 63
  %2600 = load i64, ptr %58, align 8, !tbaa !11
  %2601 = lshr i64 %2600, %2599
  store i64 %2601, ptr %58, align 8, !tbaa !11
  %2602 = load i64, ptr %58, align 8, !tbaa !11
  %2603 = trunc i64 %2602 to i32
  store i32 %2603, ptr %48, align 4, !tbaa !9
  %2604 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2604, ptr %12, align 4, !tbaa !9
  %2605 = load i32, ptr %48, align 4, !tbaa !9
  %2606 = icmp ne i32 %2605, 0
  br i1 %2606, label %2607, label %2674

2607:                                             ; preds = %2572
  %2608 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %2608, ptr %58, align 8, !tbaa !11
  %2609 = load i64, ptr %58, align 8, !tbaa !11
  %2610 = trunc i64 %2609 to i32
  store i32 %2610, ptr %48, align 4, !tbaa !9
  %2611 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2611, ptr %14, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %2612 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2612, ptr %9, align 4, !tbaa !9
  br label %2613

2613:                                             ; preds = %2672, %2607
  %2614 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2614, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %2615 = load i32, ptr %49, align 4, !tbaa !9
  %2616 = and i32 %2615, 31
  %2617 = load i32, ptr %48, align 4, !tbaa !9
  %2618 = shl i32 %2617, %2616
  store i32 %2618, ptr %48, align 4, !tbaa !9
  store i32 111376, ptr %49, align 4, !tbaa !9
  %2619 = load i32, ptr %49, align 4, !tbaa !9
  %2620 = load i32, ptr %48, align 4, !tbaa !9
  %2621 = add i32 %2620, %2619
  store i32 %2621, ptr %48, align 4, !tbaa !9
  %2622 = load ptr, ptr %5, align 8, !tbaa !5
  %2623 = getelementptr inbounds %struct.w2c_hermes, ptr %2622, i32 0, i32 6
  %2624 = load i32, ptr %48, align 4, !tbaa !9
  %2625 = zext i32 %2624 to i64
  %2626 = call i32 @i32_load(ptr noundef %2623, i64 noundef %2625)
  store i32 %2626, ptr %48, align 4, !tbaa !9
  %2627 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2627, ptr %8, align 4, !tbaa !9
  %2628 = load i32, ptr %48, align 4, !tbaa !9
  %2629 = icmp ne i32 %2628, 0
  br i1 %2629, label %2630, label %2635

2630:                                             ; preds = %2613
  %2631 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2631, ptr %48, align 4, !tbaa !9
  %2632 = load ptr, ptr %5, align 8, !tbaa !5
  %2633 = load i32, ptr %48, align 4, !tbaa !9
  %2634 = call i32 @w2c_hermes_strlen(ptr noundef %2632, i32 noundef %2633)
  store i32 %2634, ptr %48, align 4, !tbaa !9
  br label %2636

2635:                                             ; preds = %2613
  store i32 0, ptr %48, align 4, !tbaa !9
  br label %2636

2636:                                             ; preds = %2635, %2630
  %2637 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2637, ptr %49, align 4, !tbaa !9
  %2638 = load i32, ptr %48, align 4, !tbaa !9
  %2639 = load i32, ptr %49, align 4, !tbaa !9
  %2640 = icmp ne i32 %2638, %2639
  %2641 = zext i1 %2640 to i32
  store i32 %2641, ptr %48, align 4, !tbaa !9
  %2642 = load i32, ptr %48, align 4, !tbaa !9
  %2643 = icmp ne i32 %2642, 0
  br i1 %2643, label %2644, label %2645

2644:                                             ; preds = %2636
  br label %2659

2645:                                             ; preds = %2636
  %2646 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2646, ptr %48, align 4, !tbaa !9
  %2647 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2647, ptr %49, align 4, !tbaa !9
  %2648 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2648, ptr %50, align 4, !tbaa !9
  %2649 = load ptr, ptr %5, align 8, !tbaa !5
  %2650 = load i32, ptr %48, align 4, !tbaa !9
  %2651 = load i32, ptr %49, align 4, !tbaa !9
  %2652 = load i32, ptr %50, align 4, !tbaa !9
  %2653 = call i32 @w2c_hermes_memcmp(ptr noundef %2649, i32 noundef %2650, i32 noundef %2651, i32 noundef %2652)
  store i32 %2653, ptr %48, align 4, !tbaa !9
  %2654 = load i32, ptr %48, align 4, !tbaa !9
  %2655 = icmp ne i32 %2654, 0
  br i1 %2655, label %2656, label %2657

2656:                                             ; preds = %2645
  br label %2659

2657:                                             ; preds = %2645
  %2658 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2658, ptr %48, align 4, !tbaa !9
  br label %3429

2659:                                             ; preds = %2656, %2644
  store i32 26, ptr %48, align 4, !tbaa !9
  %2660 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2660, ptr %8, align 4, !tbaa !9
  %2661 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2661, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %2662 = load i32, ptr %49, align 4, !tbaa !9
  %2663 = load i32, ptr %48, align 4, !tbaa !9
  %2664 = add i32 %2663, %2662
  store i32 %2664, ptr %48, align 4, !tbaa !9
  %2665 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2665, ptr %9, align 4, !tbaa !9
  store i32 26, ptr %49, align 4, !tbaa !9
  %2666 = load i32, ptr %48, align 4, !tbaa !9
  %2667 = load i32, ptr %49, align 4, !tbaa !9
  %2668 = icmp ne i32 %2666, %2667
  %2669 = zext i1 %2668 to i32
  store i32 %2669, ptr %48, align 4, !tbaa !9
  %2670 = load i32, ptr %48, align 4, !tbaa !9
  %2671 = icmp ne i32 %2670, 0
  br i1 %2671, label %2672, label %2673

2672:                                             ; preds = %2659
  br label %2613

2673:                                             ; preds = %2659
  br label %3427

2674:                                             ; preds = %2572
  store i32 111376, ptr %48, align 4, !tbaa !9
  %2675 = load ptr, ptr %5, align 8, !tbaa !5
  %2676 = getelementptr inbounds %struct.w2c_hermes, ptr %2675, i32 0, i32 6
  %2677 = load i32, ptr %48, align 4, !tbaa !9
  %2678 = zext i32 %2677 to i64
  %2679 = call i32 @i32_load(ptr noundef %2676, i64 noundef %2678)
  store i32 %2679, ptr %48, align 4, !tbaa !9
  %2680 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2680, ptr %9, align 4, !tbaa !9
  %2681 = load i32, ptr %48, align 4, !tbaa !9
  %2682 = icmp ne i32 %2681, 0
  %2683 = xor i1 %2682, true
  %2684 = zext i1 %2683 to i32
  store i32 %2684, ptr %48, align 4, !tbaa !9
  %2685 = load i32, ptr %48, align 4, !tbaa !9
  %2686 = icmp ne i32 %2685, 0
  br i1 %2686, label %2687, label %2688

2687:                                             ; preds = %2674
  br label %3427

2688:                                             ; preds = %2674
  %2689 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2689, ptr %48, align 4, !tbaa !9
  %2690 = load ptr, ptr %5, align 8, !tbaa !5
  %2691 = getelementptr inbounds %struct.w2c_hermes, ptr %2690, i32 0, i32 6
  %2692 = load i32, ptr %48, align 4, !tbaa !9
  %2693 = zext i32 %2692 to i64
  %2694 = call i32 @i32_load8_u(ptr noundef %2691, i64 noundef %2693)
  store i32 %2694, ptr %48, align 4, !tbaa !9
  %2695 = load i32, ptr %48, align 4, !tbaa !9
  %2696 = icmp ne i32 %2695, 0
  %2697 = xor i1 %2696, true
  %2698 = zext i1 %2697 to i32
  store i32 %2698, ptr %48, align 4, !tbaa !9
  %2699 = load i32, ptr %48, align 4, !tbaa !9
  %2700 = icmp ne i32 %2699, 0
  br i1 %2700, label %2701, label %2702

2701:                                             ; preds = %2688
  br label %3427

2702:                                             ; preds = %2688
  store i32 1, ptr %48, align 4, !tbaa !9
  %2703 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2703, ptr %8, align 4, !tbaa !9
  store i32 111380, ptr %48, align 4, !tbaa !9
  %2704 = load ptr, ptr %5, align 8, !tbaa !5
  %2705 = getelementptr inbounds %struct.w2c_hermes, ptr %2704, i32 0, i32 6
  %2706 = load i32, ptr %48, align 4, !tbaa !9
  %2707 = zext i32 %2706 to i64
  %2708 = call i32 @i32_load(ptr noundef %2705, i64 noundef %2707)
  store i32 %2708, ptr %48, align 4, !tbaa !9
  %2709 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2709, ptr %9, align 4, !tbaa !9
  %2710 = load i32, ptr %48, align 4, !tbaa !9
  %2711 = icmp ne i32 %2710, 0
  %2712 = xor i1 %2711, true
  %2713 = zext i1 %2712 to i32
  store i32 %2713, ptr %48, align 4, !tbaa !9
  %2714 = load i32, ptr %48, align 4, !tbaa !9
  %2715 = icmp ne i32 %2714, 0
  br i1 %2715, label %2716, label %2717

2716:                                             ; preds = %2702
  br label %3427

2717:                                             ; preds = %2702
  %2718 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2718, ptr %48, align 4, !tbaa !9
  %2719 = load ptr, ptr %5, align 8, !tbaa !5
  %2720 = getelementptr inbounds %struct.w2c_hermes, ptr %2719, i32 0, i32 6
  %2721 = load i32, ptr %48, align 4, !tbaa !9
  %2722 = zext i32 %2721 to i64
  %2723 = call i32 @i32_load8_u(ptr noundef %2720, i64 noundef %2722)
  store i32 %2723, ptr %48, align 4, !tbaa !9
  %2724 = load i32, ptr %48, align 4, !tbaa !9
  %2725 = icmp ne i32 %2724, 0
  %2726 = xor i1 %2725, true
  %2727 = zext i1 %2726 to i32
  store i32 %2727, ptr %48, align 4, !tbaa !9
  %2728 = load i32, ptr %48, align 4, !tbaa !9
  %2729 = icmp ne i32 %2728, 0
  br i1 %2729, label %2730, label %2731

2730:                                             ; preds = %2717
  br label %3427

2731:                                             ; preds = %2717
  store i32 2, ptr %48, align 4, !tbaa !9
  %2732 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2732, ptr %8, align 4, !tbaa !9
  store i32 111384, ptr %48, align 4, !tbaa !9
  %2733 = load ptr, ptr %5, align 8, !tbaa !5
  %2734 = getelementptr inbounds %struct.w2c_hermes, ptr %2733, i32 0, i32 6
  %2735 = load i32, ptr %48, align 4, !tbaa !9
  %2736 = zext i32 %2735 to i64
  %2737 = call i32 @i32_load(ptr noundef %2734, i64 noundef %2736)
  store i32 %2737, ptr %48, align 4, !tbaa !9
  %2738 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2738, ptr %9, align 4, !tbaa !9
  %2739 = load i32, ptr %48, align 4, !tbaa !9
  %2740 = icmp ne i32 %2739, 0
  %2741 = xor i1 %2740, true
  %2742 = zext i1 %2741 to i32
  store i32 %2742, ptr %48, align 4, !tbaa !9
  %2743 = load i32, ptr %48, align 4, !tbaa !9
  %2744 = icmp ne i32 %2743, 0
  br i1 %2744, label %2745, label %2746

2745:                                             ; preds = %2731
  br label %3427

2746:                                             ; preds = %2731
  %2747 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2747, ptr %48, align 4, !tbaa !9
  %2748 = load ptr, ptr %5, align 8, !tbaa !5
  %2749 = getelementptr inbounds %struct.w2c_hermes, ptr %2748, i32 0, i32 6
  %2750 = load i32, ptr %48, align 4, !tbaa !9
  %2751 = zext i32 %2750 to i64
  %2752 = call i32 @i32_load8_u(ptr noundef %2749, i64 noundef %2751)
  store i32 %2752, ptr %48, align 4, !tbaa !9
  %2753 = load i32, ptr %48, align 4, !tbaa !9
  %2754 = icmp ne i32 %2753, 0
  %2755 = xor i1 %2754, true
  %2756 = zext i1 %2755 to i32
  store i32 %2756, ptr %48, align 4, !tbaa !9
  %2757 = load i32, ptr %48, align 4, !tbaa !9
  %2758 = icmp ne i32 %2757, 0
  br i1 %2758, label %2759, label %2760

2759:                                             ; preds = %2746
  br label %3427

2760:                                             ; preds = %2746
  store i32 3, ptr %48, align 4, !tbaa !9
  %2761 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2761, ptr %8, align 4, !tbaa !9
  store i32 111388, ptr %48, align 4, !tbaa !9
  %2762 = load ptr, ptr %5, align 8, !tbaa !5
  %2763 = getelementptr inbounds %struct.w2c_hermes, ptr %2762, i32 0, i32 6
  %2764 = load i32, ptr %48, align 4, !tbaa !9
  %2765 = zext i32 %2764 to i64
  %2766 = call i32 @i32_load(ptr noundef %2763, i64 noundef %2765)
  store i32 %2766, ptr %48, align 4, !tbaa !9
  %2767 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2767, ptr %9, align 4, !tbaa !9
  %2768 = load i32, ptr %48, align 4, !tbaa !9
  %2769 = icmp ne i32 %2768, 0
  %2770 = xor i1 %2769, true
  %2771 = zext i1 %2770 to i32
  store i32 %2771, ptr %48, align 4, !tbaa !9
  %2772 = load i32, ptr %48, align 4, !tbaa !9
  %2773 = icmp ne i32 %2772, 0
  br i1 %2773, label %2774, label %2775

2774:                                             ; preds = %2760
  br label %3427

2775:                                             ; preds = %2760
  %2776 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2776, ptr %48, align 4, !tbaa !9
  %2777 = load ptr, ptr %5, align 8, !tbaa !5
  %2778 = getelementptr inbounds %struct.w2c_hermes, ptr %2777, i32 0, i32 6
  %2779 = load i32, ptr %48, align 4, !tbaa !9
  %2780 = zext i32 %2779 to i64
  %2781 = call i32 @i32_load8_u(ptr noundef %2778, i64 noundef %2780)
  store i32 %2781, ptr %48, align 4, !tbaa !9
  %2782 = load i32, ptr %48, align 4, !tbaa !9
  %2783 = icmp ne i32 %2782, 0
  %2784 = xor i1 %2783, true
  %2785 = zext i1 %2784 to i32
  store i32 %2785, ptr %48, align 4, !tbaa !9
  %2786 = load i32, ptr %48, align 4, !tbaa !9
  %2787 = icmp ne i32 %2786, 0
  br i1 %2787, label %2788, label %2789

2788:                                             ; preds = %2775
  br label %3427

2789:                                             ; preds = %2775
  store i32 4, ptr %48, align 4, !tbaa !9
  %2790 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2790, ptr %8, align 4, !tbaa !9
  store i32 111392, ptr %48, align 4, !tbaa !9
  %2791 = load ptr, ptr %5, align 8, !tbaa !5
  %2792 = getelementptr inbounds %struct.w2c_hermes, ptr %2791, i32 0, i32 6
  %2793 = load i32, ptr %48, align 4, !tbaa !9
  %2794 = zext i32 %2793 to i64
  %2795 = call i32 @i32_load(ptr noundef %2792, i64 noundef %2794)
  store i32 %2795, ptr %48, align 4, !tbaa !9
  %2796 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2796, ptr %9, align 4, !tbaa !9
  %2797 = load i32, ptr %48, align 4, !tbaa !9
  %2798 = icmp ne i32 %2797, 0
  %2799 = xor i1 %2798, true
  %2800 = zext i1 %2799 to i32
  store i32 %2800, ptr %48, align 4, !tbaa !9
  %2801 = load i32, ptr %48, align 4, !tbaa !9
  %2802 = icmp ne i32 %2801, 0
  br i1 %2802, label %2803, label %2804

2803:                                             ; preds = %2789
  br label %3427

2804:                                             ; preds = %2789
  %2805 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2805, ptr %48, align 4, !tbaa !9
  %2806 = load ptr, ptr %5, align 8, !tbaa !5
  %2807 = getelementptr inbounds %struct.w2c_hermes, ptr %2806, i32 0, i32 6
  %2808 = load i32, ptr %48, align 4, !tbaa !9
  %2809 = zext i32 %2808 to i64
  %2810 = call i32 @i32_load8_u(ptr noundef %2807, i64 noundef %2809)
  store i32 %2810, ptr %48, align 4, !tbaa !9
  %2811 = load i32, ptr %48, align 4, !tbaa !9
  %2812 = icmp ne i32 %2811, 0
  %2813 = xor i1 %2812, true
  %2814 = zext i1 %2813 to i32
  store i32 %2814, ptr %48, align 4, !tbaa !9
  %2815 = load i32, ptr %48, align 4, !tbaa !9
  %2816 = icmp ne i32 %2815, 0
  br i1 %2816, label %2817, label %2818

2817:                                             ; preds = %2804
  br label %3427

2818:                                             ; preds = %2804
  store i32 5, ptr %48, align 4, !tbaa !9
  %2819 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2819, ptr %8, align 4, !tbaa !9
  store i32 111396, ptr %48, align 4, !tbaa !9
  %2820 = load ptr, ptr %5, align 8, !tbaa !5
  %2821 = getelementptr inbounds %struct.w2c_hermes, ptr %2820, i32 0, i32 6
  %2822 = load i32, ptr %48, align 4, !tbaa !9
  %2823 = zext i32 %2822 to i64
  %2824 = call i32 @i32_load(ptr noundef %2821, i64 noundef %2823)
  store i32 %2824, ptr %48, align 4, !tbaa !9
  %2825 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2825, ptr %9, align 4, !tbaa !9
  %2826 = load i32, ptr %48, align 4, !tbaa !9
  %2827 = icmp ne i32 %2826, 0
  %2828 = xor i1 %2827, true
  %2829 = zext i1 %2828 to i32
  store i32 %2829, ptr %48, align 4, !tbaa !9
  %2830 = load i32, ptr %48, align 4, !tbaa !9
  %2831 = icmp ne i32 %2830, 0
  br i1 %2831, label %2832, label %2833

2832:                                             ; preds = %2818
  br label %3427

2833:                                             ; preds = %2818
  %2834 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2834, ptr %48, align 4, !tbaa !9
  %2835 = load ptr, ptr %5, align 8, !tbaa !5
  %2836 = getelementptr inbounds %struct.w2c_hermes, ptr %2835, i32 0, i32 6
  %2837 = load i32, ptr %48, align 4, !tbaa !9
  %2838 = zext i32 %2837 to i64
  %2839 = call i32 @i32_load8_u(ptr noundef %2836, i64 noundef %2838)
  store i32 %2839, ptr %48, align 4, !tbaa !9
  %2840 = load i32, ptr %48, align 4, !tbaa !9
  %2841 = icmp ne i32 %2840, 0
  %2842 = xor i1 %2841, true
  %2843 = zext i1 %2842 to i32
  store i32 %2843, ptr %48, align 4, !tbaa !9
  %2844 = load i32, ptr %48, align 4, !tbaa !9
  %2845 = icmp ne i32 %2844, 0
  br i1 %2845, label %2846, label %2847

2846:                                             ; preds = %2833
  br label %3427

2847:                                             ; preds = %2833
  store i32 6, ptr %48, align 4, !tbaa !9
  %2848 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2848, ptr %8, align 4, !tbaa !9
  store i32 111400, ptr %48, align 4, !tbaa !9
  %2849 = load ptr, ptr %5, align 8, !tbaa !5
  %2850 = getelementptr inbounds %struct.w2c_hermes, ptr %2849, i32 0, i32 6
  %2851 = load i32, ptr %48, align 4, !tbaa !9
  %2852 = zext i32 %2851 to i64
  %2853 = call i32 @i32_load(ptr noundef %2850, i64 noundef %2852)
  store i32 %2853, ptr %48, align 4, !tbaa !9
  %2854 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2854, ptr %9, align 4, !tbaa !9
  %2855 = load i32, ptr %48, align 4, !tbaa !9
  %2856 = icmp ne i32 %2855, 0
  %2857 = xor i1 %2856, true
  %2858 = zext i1 %2857 to i32
  store i32 %2858, ptr %48, align 4, !tbaa !9
  %2859 = load i32, ptr %48, align 4, !tbaa !9
  %2860 = icmp ne i32 %2859, 0
  br i1 %2860, label %2861, label %2862

2861:                                             ; preds = %2847
  br label %3427

2862:                                             ; preds = %2847
  %2863 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2863, ptr %48, align 4, !tbaa !9
  %2864 = load ptr, ptr %5, align 8, !tbaa !5
  %2865 = getelementptr inbounds %struct.w2c_hermes, ptr %2864, i32 0, i32 6
  %2866 = load i32, ptr %48, align 4, !tbaa !9
  %2867 = zext i32 %2866 to i64
  %2868 = call i32 @i32_load8_u(ptr noundef %2865, i64 noundef %2867)
  store i32 %2868, ptr %48, align 4, !tbaa !9
  %2869 = load i32, ptr %48, align 4, !tbaa !9
  %2870 = icmp ne i32 %2869, 0
  %2871 = xor i1 %2870, true
  %2872 = zext i1 %2871 to i32
  store i32 %2872, ptr %48, align 4, !tbaa !9
  %2873 = load i32, ptr %48, align 4, !tbaa !9
  %2874 = icmp ne i32 %2873, 0
  br i1 %2874, label %2875, label %2876

2875:                                             ; preds = %2862
  br label %3427

2876:                                             ; preds = %2862
  store i32 7, ptr %48, align 4, !tbaa !9
  %2877 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2877, ptr %8, align 4, !tbaa !9
  store i32 111404, ptr %48, align 4, !tbaa !9
  %2878 = load ptr, ptr %5, align 8, !tbaa !5
  %2879 = getelementptr inbounds %struct.w2c_hermes, ptr %2878, i32 0, i32 6
  %2880 = load i32, ptr %48, align 4, !tbaa !9
  %2881 = zext i32 %2880 to i64
  %2882 = call i32 @i32_load(ptr noundef %2879, i64 noundef %2881)
  store i32 %2882, ptr %48, align 4, !tbaa !9
  %2883 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2883, ptr %9, align 4, !tbaa !9
  %2884 = load i32, ptr %48, align 4, !tbaa !9
  %2885 = icmp ne i32 %2884, 0
  %2886 = xor i1 %2885, true
  %2887 = zext i1 %2886 to i32
  store i32 %2887, ptr %48, align 4, !tbaa !9
  %2888 = load i32, ptr %48, align 4, !tbaa !9
  %2889 = icmp ne i32 %2888, 0
  br i1 %2889, label %2890, label %2891

2890:                                             ; preds = %2876
  br label %3427

2891:                                             ; preds = %2876
  %2892 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2892, ptr %48, align 4, !tbaa !9
  %2893 = load ptr, ptr %5, align 8, !tbaa !5
  %2894 = getelementptr inbounds %struct.w2c_hermes, ptr %2893, i32 0, i32 6
  %2895 = load i32, ptr %48, align 4, !tbaa !9
  %2896 = zext i32 %2895 to i64
  %2897 = call i32 @i32_load8_u(ptr noundef %2894, i64 noundef %2896)
  store i32 %2897, ptr %48, align 4, !tbaa !9
  %2898 = load i32, ptr %48, align 4, !tbaa !9
  %2899 = icmp ne i32 %2898, 0
  %2900 = xor i1 %2899, true
  %2901 = zext i1 %2900 to i32
  store i32 %2901, ptr %48, align 4, !tbaa !9
  %2902 = load i32, ptr %48, align 4, !tbaa !9
  %2903 = icmp ne i32 %2902, 0
  br i1 %2903, label %2904, label %2905

2904:                                             ; preds = %2891
  br label %3427

2905:                                             ; preds = %2891
  store i32 8, ptr %48, align 4, !tbaa !9
  %2906 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2906, ptr %8, align 4, !tbaa !9
  store i32 111408, ptr %48, align 4, !tbaa !9
  %2907 = load ptr, ptr %5, align 8, !tbaa !5
  %2908 = getelementptr inbounds %struct.w2c_hermes, ptr %2907, i32 0, i32 6
  %2909 = load i32, ptr %48, align 4, !tbaa !9
  %2910 = zext i32 %2909 to i64
  %2911 = call i32 @i32_load(ptr noundef %2908, i64 noundef %2910)
  store i32 %2911, ptr %48, align 4, !tbaa !9
  %2912 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2912, ptr %9, align 4, !tbaa !9
  %2913 = load i32, ptr %48, align 4, !tbaa !9
  %2914 = icmp ne i32 %2913, 0
  %2915 = xor i1 %2914, true
  %2916 = zext i1 %2915 to i32
  store i32 %2916, ptr %48, align 4, !tbaa !9
  %2917 = load i32, ptr %48, align 4, !tbaa !9
  %2918 = icmp ne i32 %2917, 0
  br i1 %2918, label %2919, label %2920

2919:                                             ; preds = %2905
  br label %3427

2920:                                             ; preds = %2905
  %2921 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2921, ptr %48, align 4, !tbaa !9
  %2922 = load ptr, ptr %5, align 8, !tbaa !5
  %2923 = getelementptr inbounds %struct.w2c_hermes, ptr %2922, i32 0, i32 6
  %2924 = load i32, ptr %48, align 4, !tbaa !9
  %2925 = zext i32 %2924 to i64
  %2926 = call i32 @i32_load8_u(ptr noundef %2923, i64 noundef %2925)
  store i32 %2926, ptr %48, align 4, !tbaa !9
  %2927 = load i32, ptr %48, align 4, !tbaa !9
  %2928 = icmp ne i32 %2927, 0
  %2929 = xor i1 %2928, true
  %2930 = zext i1 %2929 to i32
  store i32 %2930, ptr %48, align 4, !tbaa !9
  %2931 = load i32, ptr %48, align 4, !tbaa !9
  %2932 = icmp ne i32 %2931, 0
  br i1 %2932, label %2933, label %2934

2933:                                             ; preds = %2920
  br label %3427

2934:                                             ; preds = %2920
  store i32 9, ptr %48, align 4, !tbaa !9
  %2935 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2935, ptr %8, align 4, !tbaa !9
  store i32 111412, ptr %48, align 4, !tbaa !9
  %2936 = load ptr, ptr %5, align 8, !tbaa !5
  %2937 = getelementptr inbounds %struct.w2c_hermes, ptr %2936, i32 0, i32 6
  %2938 = load i32, ptr %48, align 4, !tbaa !9
  %2939 = zext i32 %2938 to i64
  %2940 = call i32 @i32_load(ptr noundef %2937, i64 noundef %2939)
  store i32 %2940, ptr %48, align 4, !tbaa !9
  %2941 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2941, ptr %9, align 4, !tbaa !9
  %2942 = load i32, ptr %48, align 4, !tbaa !9
  %2943 = icmp ne i32 %2942, 0
  %2944 = xor i1 %2943, true
  %2945 = zext i1 %2944 to i32
  store i32 %2945, ptr %48, align 4, !tbaa !9
  %2946 = load i32, ptr %48, align 4, !tbaa !9
  %2947 = icmp ne i32 %2946, 0
  br i1 %2947, label %2948, label %2949

2948:                                             ; preds = %2934
  br label %3427

2949:                                             ; preds = %2934
  %2950 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2950, ptr %48, align 4, !tbaa !9
  %2951 = load ptr, ptr %5, align 8, !tbaa !5
  %2952 = getelementptr inbounds %struct.w2c_hermes, ptr %2951, i32 0, i32 6
  %2953 = load i32, ptr %48, align 4, !tbaa !9
  %2954 = zext i32 %2953 to i64
  %2955 = call i32 @i32_load8_u(ptr noundef %2952, i64 noundef %2954)
  store i32 %2955, ptr %48, align 4, !tbaa !9
  %2956 = load i32, ptr %48, align 4, !tbaa !9
  %2957 = icmp ne i32 %2956, 0
  %2958 = xor i1 %2957, true
  %2959 = zext i1 %2958 to i32
  store i32 %2959, ptr %48, align 4, !tbaa !9
  %2960 = load i32, ptr %48, align 4, !tbaa !9
  %2961 = icmp ne i32 %2960, 0
  br i1 %2961, label %2962, label %2963

2962:                                             ; preds = %2949
  br label %3427

2963:                                             ; preds = %2949
  store i32 10, ptr %48, align 4, !tbaa !9
  %2964 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2964, ptr %8, align 4, !tbaa !9
  store i32 111416, ptr %48, align 4, !tbaa !9
  %2965 = load ptr, ptr %5, align 8, !tbaa !5
  %2966 = getelementptr inbounds %struct.w2c_hermes, ptr %2965, i32 0, i32 6
  %2967 = load i32, ptr %48, align 4, !tbaa !9
  %2968 = zext i32 %2967 to i64
  %2969 = call i32 @i32_load(ptr noundef %2966, i64 noundef %2968)
  store i32 %2969, ptr %48, align 4, !tbaa !9
  %2970 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2970, ptr %9, align 4, !tbaa !9
  %2971 = load i32, ptr %48, align 4, !tbaa !9
  %2972 = icmp ne i32 %2971, 0
  %2973 = xor i1 %2972, true
  %2974 = zext i1 %2973 to i32
  store i32 %2974, ptr %48, align 4, !tbaa !9
  %2975 = load i32, ptr %48, align 4, !tbaa !9
  %2976 = icmp ne i32 %2975, 0
  br i1 %2976, label %2977, label %2978

2977:                                             ; preds = %2963
  br label %3427

2978:                                             ; preds = %2963
  %2979 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2979, ptr %48, align 4, !tbaa !9
  %2980 = load ptr, ptr %5, align 8, !tbaa !5
  %2981 = getelementptr inbounds %struct.w2c_hermes, ptr %2980, i32 0, i32 6
  %2982 = load i32, ptr %48, align 4, !tbaa !9
  %2983 = zext i32 %2982 to i64
  %2984 = call i32 @i32_load8_u(ptr noundef %2981, i64 noundef %2983)
  store i32 %2984, ptr %48, align 4, !tbaa !9
  %2985 = load i32, ptr %48, align 4, !tbaa !9
  %2986 = icmp ne i32 %2985, 0
  %2987 = xor i1 %2986, true
  %2988 = zext i1 %2987 to i32
  store i32 %2988, ptr %48, align 4, !tbaa !9
  %2989 = load i32, ptr %48, align 4, !tbaa !9
  %2990 = icmp ne i32 %2989, 0
  br i1 %2990, label %2991, label %2992

2991:                                             ; preds = %2978
  br label %3427

2992:                                             ; preds = %2978
  store i32 11, ptr %48, align 4, !tbaa !9
  %2993 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2993, ptr %8, align 4, !tbaa !9
  store i32 111420, ptr %48, align 4, !tbaa !9
  %2994 = load ptr, ptr %5, align 8, !tbaa !5
  %2995 = getelementptr inbounds %struct.w2c_hermes, ptr %2994, i32 0, i32 6
  %2996 = load i32, ptr %48, align 4, !tbaa !9
  %2997 = zext i32 %2996 to i64
  %2998 = call i32 @i32_load(ptr noundef %2995, i64 noundef %2997)
  store i32 %2998, ptr %48, align 4, !tbaa !9
  %2999 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %2999, ptr %9, align 4, !tbaa !9
  %3000 = load i32, ptr %48, align 4, !tbaa !9
  %3001 = icmp ne i32 %3000, 0
  %3002 = xor i1 %3001, true
  %3003 = zext i1 %3002 to i32
  store i32 %3003, ptr %48, align 4, !tbaa !9
  %3004 = load i32, ptr %48, align 4, !tbaa !9
  %3005 = icmp ne i32 %3004, 0
  br i1 %3005, label %3006, label %3007

3006:                                             ; preds = %2992
  br label %3427

3007:                                             ; preds = %2992
  %3008 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3008, ptr %48, align 4, !tbaa !9
  %3009 = load ptr, ptr %5, align 8, !tbaa !5
  %3010 = getelementptr inbounds %struct.w2c_hermes, ptr %3009, i32 0, i32 6
  %3011 = load i32, ptr %48, align 4, !tbaa !9
  %3012 = zext i32 %3011 to i64
  %3013 = call i32 @i32_load8_u(ptr noundef %3010, i64 noundef %3012)
  store i32 %3013, ptr %48, align 4, !tbaa !9
  %3014 = load i32, ptr %48, align 4, !tbaa !9
  %3015 = icmp ne i32 %3014, 0
  %3016 = xor i1 %3015, true
  %3017 = zext i1 %3016 to i32
  store i32 %3017, ptr %48, align 4, !tbaa !9
  %3018 = load i32, ptr %48, align 4, !tbaa !9
  %3019 = icmp ne i32 %3018, 0
  br i1 %3019, label %3020, label %3021

3020:                                             ; preds = %3007
  br label %3427

3021:                                             ; preds = %3007
  store i32 12, ptr %48, align 4, !tbaa !9
  %3022 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3022, ptr %8, align 4, !tbaa !9
  store i32 111424, ptr %48, align 4, !tbaa !9
  %3023 = load ptr, ptr %5, align 8, !tbaa !5
  %3024 = getelementptr inbounds %struct.w2c_hermes, ptr %3023, i32 0, i32 6
  %3025 = load i32, ptr %48, align 4, !tbaa !9
  %3026 = zext i32 %3025 to i64
  %3027 = call i32 @i32_load(ptr noundef %3024, i64 noundef %3026)
  store i32 %3027, ptr %48, align 4, !tbaa !9
  %3028 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3028, ptr %9, align 4, !tbaa !9
  %3029 = load i32, ptr %48, align 4, !tbaa !9
  %3030 = icmp ne i32 %3029, 0
  %3031 = xor i1 %3030, true
  %3032 = zext i1 %3031 to i32
  store i32 %3032, ptr %48, align 4, !tbaa !9
  %3033 = load i32, ptr %48, align 4, !tbaa !9
  %3034 = icmp ne i32 %3033, 0
  br i1 %3034, label %3035, label %3036

3035:                                             ; preds = %3021
  br label %3427

3036:                                             ; preds = %3021
  %3037 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3037, ptr %48, align 4, !tbaa !9
  %3038 = load ptr, ptr %5, align 8, !tbaa !5
  %3039 = getelementptr inbounds %struct.w2c_hermes, ptr %3038, i32 0, i32 6
  %3040 = load i32, ptr %48, align 4, !tbaa !9
  %3041 = zext i32 %3040 to i64
  %3042 = call i32 @i32_load8_u(ptr noundef %3039, i64 noundef %3041)
  store i32 %3042, ptr %48, align 4, !tbaa !9
  %3043 = load i32, ptr %48, align 4, !tbaa !9
  %3044 = icmp ne i32 %3043, 0
  %3045 = xor i1 %3044, true
  %3046 = zext i1 %3045 to i32
  store i32 %3046, ptr %48, align 4, !tbaa !9
  %3047 = load i32, ptr %48, align 4, !tbaa !9
  %3048 = icmp ne i32 %3047, 0
  br i1 %3048, label %3049, label %3050

3049:                                             ; preds = %3036
  br label %3427

3050:                                             ; preds = %3036
  store i32 13, ptr %48, align 4, !tbaa !9
  %3051 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3051, ptr %8, align 4, !tbaa !9
  store i32 111428, ptr %48, align 4, !tbaa !9
  %3052 = load ptr, ptr %5, align 8, !tbaa !5
  %3053 = getelementptr inbounds %struct.w2c_hermes, ptr %3052, i32 0, i32 6
  %3054 = load i32, ptr %48, align 4, !tbaa !9
  %3055 = zext i32 %3054 to i64
  %3056 = call i32 @i32_load(ptr noundef %3053, i64 noundef %3055)
  store i32 %3056, ptr %48, align 4, !tbaa !9
  %3057 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3057, ptr %9, align 4, !tbaa !9
  %3058 = load i32, ptr %48, align 4, !tbaa !9
  %3059 = icmp ne i32 %3058, 0
  %3060 = xor i1 %3059, true
  %3061 = zext i1 %3060 to i32
  store i32 %3061, ptr %48, align 4, !tbaa !9
  %3062 = load i32, ptr %48, align 4, !tbaa !9
  %3063 = icmp ne i32 %3062, 0
  br i1 %3063, label %3064, label %3065

3064:                                             ; preds = %3050
  br label %3427

3065:                                             ; preds = %3050
  %3066 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3066, ptr %48, align 4, !tbaa !9
  %3067 = load ptr, ptr %5, align 8, !tbaa !5
  %3068 = getelementptr inbounds %struct.w2c_hermes, ptr %3067, i32 0, i32 6
  %3069 = load i32, ptr %48, align 4, !tbaa !9
  %3070 = zext i32 %3069 to i64
  %3071 = call i32 @i32_load8_u(ptr noundef %3068, i64 noundef %3070)
  store i32 %3071, ptr %48, align 4, !tbaa !9
  %3072 = load i32, ptr %48, align 4, !tbaa !9
  %3073 = icmp ne i32 %3072, 0
  %3074 = xor i1 %3073, true
  %3075 = zext i1 %3074 to i32
  store i32 %3075, ptr %48, align 4, !tbaa !9
  %3076 = load i32, ptr %48, align 4, !tbaa !9
  %3077 = icmp ne i32 %3076, 0
  br i1 %3077, label %3078, label %3079

3078:                                             ; preds = %3065
  br label %3427

3079:                                             ; preds = %3065
  store i32 14, ptr %48, align 4, !tbaa !9
  %3080 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3080, ptr %8, align 4, !tbaa !9
  store i32 111432, ptr %48, align 4, !tbaa !9
  %3081 = load ptr, ptr %5, align 8, !tbaa !5
  %3082 = getelementptr inbounds %struct.w2c_hermes, ptr %3081, i32 0, i32 6
  %3083 = load i32, ptr %48, align 4, !tbaa !9
  %3084 = zext i32 %3083 to i64
  %3085 = call i32 @i32_load(ptr noundef %3082, i64 noundef %3084)
  store i32 %3085, ptr %48, align 4, !tbaa !9
  %3086 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3086, ptr %9, align 4, !tbaa !9
  %3087 = load i32, ptr %48, align 4, !tbaa !9
  %3088 = icmp ne i32 %3087, 0
  %3089 = xor i1 %3088, true
  %3090 = zext i1 %3089 to i32
  store i32 %3090, ptr %48, align 4, !tbaa !9
  %3091 = load i32, ptr %48, align 4, !tbaa !9
  %3092 = icmp ne i32 %3091, 0
  br i1 %3092, label %3093, label %3094

3093:                                             ; preds = %3079
  br label %3427

3094:                                             ; preds = %3079
  %3095 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3095, ptr %48, align 4, !tbaa !9
  %3096 = load ptr, ptr %5, align 8, !tbaa !5
  %3097 = getelementptr inbounds %struct.w2c_hermes, ptr %3096, i32 0, i32 6
  %3098 = load i32, ptr %48, align 4, !tbaa !9
  %3099 = zext i32 %3098 to i64
  %3100 = call i32 @i32_load8_u(ptr noundef %3097, i64 noundef %3099)
  store i32 %3100, ptr %48, align 4, !tbaa !9
  %3101 = load i32, ptr %48, align 4, !tbaa !9
  %3102 = icmp ne i32 %3101, 0
  %3103 = xor i1 %3102, true
  %3104 = zext i1 %3103 to i32
  store i32 %3104, ptr %48, align 4, !tbaa !9
  %3105 = load i32, ptr %48, align 4, !tbaa !9
  %3106 = icmp ne i32 %3105, 0
  br i1 %3106, label %3107, label %3108

3107:                                             ; preds = %3094
  br label %3427

3108:                                             ; preds = %3094
  store i32 15, ptr %48, align 4, !tbaa !9
  %3109 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3109, ptr %8, align 4, !tbaa !9
  store i32 111436, ptr %48, align 4, !tbaa !9
  %3110 = load ptr, ptr %5, align 8, !tbaa !5
  %3111 = getelementptr inbounds %struct.w2c_hermes, ptr %3110, i32 0, i32 6
  %3112 = load i32, ptr %48, align 4, !tbaa !9
  %3113 = zext i32 %3112 to i64
  %3114 = call i32 @i32_load(ptr noundef %3111, i64 noundef %3113)
  store i32 %3114, ptr %48, align 4, !tbaa !9
  %3115 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3115, ptr %9, align 4, !tbaa !9
  %3116 = load i32, ptr %48, align 4, !tbaa !9
  %3117 = icmp ne i32 %3116, 0
  %3118 = xor i1 %3117, true
  %3119 = zext i1 %3118 to i32
  store i32 %3119, ptr %48, align 4, !tbaa !9
  %3120 = load i32, ptr %48, align 4, !tbaa !9
  %3121 = icmp ne i32 %3120, 0
  br i1 %3121, label %3122, label %3123

3122:                                             ; preds = %3108
  br label %3427

3123:                                             ; preds = %3108
  %3124 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3124, ptr %48, align 4, !tbaa !9
  %3125 = load ptr, ptr %5, align 8, !tbaa !5
  %3126 = getelementptr inbounds %struct.w2c_hermes, ptr %3125, i32 0, i32 6
  %3127 = load i32, ptr %48, align 4, !tbaa !9
  %3128 = zext i32 %3127 to i64
  %3129 = call i32 @i32_load8_u(ptr noundef %3126, i64 noundef %3128)
  store i32 %3129, ptr %48, align 4, !tbaa !9
  %3130 = load i32, ptr %48, align 4, !tbaa !9
  %3131 = icmp ne i32 %3130, 0
  %3132 = xor i1 %3131, true
  %3133 = zext i1 %3132 to i32
  store i32 %3133, ptr %48, align 4, !tbaa !9
  %3134 = load i32, ptr %48, align 4, !tbaa !9
  %3135 = icmp ne i32 %3134, 0
  br i1 %3135, label %3136, label %3137

3136:                                             ; preds = %3123
  br label %3427

3137:                                             ; preds = %3123
  store i32 16, ptr %48, align 4, !tbaa !9
  %3138 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3138, ptr %8, align 4, !tbaa !9
  store i32 111440, ptr %48, align 4, !tbaa !9
  %3139 = load ptr, ptr %5, align 8, !tbaa !5
  %3140 = getelementptr inbounds %struct.w2c_hermes, ptr %3139, i32 0, i32 6
  %3141 = load i32, ptr %48, align 4, !tbaa !9
  %3142 = zext i32 %3141 to i64
  %3143 = call i32 @i32_load(ptr noundef %3140, i64 noundef %3142)
  store i32 %3143, ptr %48, align 4, !tbaa !9
  %3144 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3144, ptr %9, align 4, !tbaa !9
  %3145 = load i32, ptr %48, align 4, !tbaa !9
  %3146 = icmp ne i32 %3145, 0
  %3147 = xor i1 %3146, true
  %3148 = zext i1 %3147 to i32
  store i32 %3148, ptr %48, align 4, !tbaa !9
  %3149 = load i32, ptr %48, align 4, !tbaa !9
  %3150 = icmp ne i32 %3149, 0
  br i1 %3150, label %3151, label %3152

3151:                                             ; preds = %3137
  br label %3427

3152:                                             ; preds = %3137
  %3153 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3153, ptr %48, align 4, !tbaa !9
  %3154 = load ptr, ptr %5, align 8, !tbaa !5
  %3155 = getelementptr inbounds %struct.w2c_hermes, ptr %3154, i32 0, i32 6
  %3156 = load i32, ptr %48, align 4, !tbaa !9
  %3157 = zext i32 %3156 to i64
  %3158 = call i32 @i32_load8_u(ptr noundef %3155, i64 noundef %3157)
  store i32 %3158, ptr %48, align 4, !tbaa !9
  %3159 = load i32, ptr %48, align 4, !tbaa !9
  %3160 = icmp ne i32 %3159, 0
  %3161 = xor i1 %3160, true
  %3162 = zext i1 %3161 to i32
  store i32 %3162, ptr %48, align 4, !tbaa !9
  %3163 = load i32, ptr %48, align 4, !tbaa !9
  %3164 = icmp ne i32 %3163, 0
  br i1 %3164, label %3165, label %3166

3165:                                             ; preds = %3152
  br label %3427

3166:                                             ; preds = %3152
  store i32 17, ptr %48, align 4, !tbaa !9
  %3167 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3167, ptr %8, align 4, !tbaa !9
  store i32 111444, ptr %48, align 4, !tbaa !9
  %3168 = load ptr, ptr %5, align 8, !tbaa !5
  %3169 = getelementptr inbounds %struct.w2c_hermes, ptr %3168, i32 0, i32 6
  %3170 = load i32, ptr %48, align 4, !tbaa !9
  %3171 = zext i32 %3170 to i64
  %3172 = call i32 @i32_load(ptr noundef %3169, i64 noundef %3171)
  store i32 %3172, ptr %48, align 4, !tbaa !9
  %3173 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3173, ptr %9, align 4, !tbaa !9
  %3174 = load i32, ptr %48, align 4, !tbaa !9
  %3175 = icmp ne i32 %3174, 0
  %3176 = xor i1 %3175, true
  %3177 = zext i1 %3176 to i32
  store i32 %3177, ptr %48, align 4, !tbaa !9
  %3178 = load i32, ptr %48, align 4, !tbaa !9
  %3179 = icmp ne i32 %3178, 0
  br i1 %3179, label %3180, label %3181

3180:                                             ; preds = %3166
  br label %3427

3181:                                             ; preds = %3166
  %3182 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3182, ptr %48, align 4, !tbaa !9
  %3183 = load ptr, ptr %5, align 8, !tbaa !5
  %3184 = getelementptr inbounds %struct.w2c_hermes, ptr %3183, i32 0, i32 6
  %3185 = load i32, ptr %48, align 4, !tbaa !9
  %3186 = zext i32 %3185 to i64
  %3187 = call i32 @i32_load8_u(ptr noundef %3184, i64 noundef %3186)
  store i32 %3187, ptr %48, align 4, !tbaa !9
  %3188 = load i32, ptr %48, align 4, !tbaa !9
  %3189 = icmp ne i32 %3188, 0
  %3190 = xor i1 %3189, true
  %3191 = zext i1 %3190 to i32
  store i32 %3191, ptr %48, align 4, !tbaa !9
  %3192 = load i32, ptr %48, align 4, !tbaa !9
  %3193 = icmp ne i32 %3192, 0
  br i1 %3193, label %3194, label %3195

3194:                                             ; preds = %3181
  br label %3427

3195:                                             ; preds = %3181
  store i32 18, ptr %48, align 4, !tbaa !9
  %3196 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3196, ptr %8, align 4, !tbaa !9
  store i32 111448, ptr %48, align 4, !tbaa !9
  %3197 = load ptr, ptr %5, align 8, !tbaa !5
  %3198 = getelementptr inbounds %struct.w2c_hermes, ptr %3197, i32 0, i32 6
  %3199 = load i32, ptr %48, align 4, !tbaa !9
  %3200 = zext i32 %3199 to i64
  %3201 = call i32 @i32_load(ptr noundef %3198, i64 noundef %3200)
  store i32 %3201, ptr %48, align 4, !tbaa !9
  %3202 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3202, ptr %9, align 4, !tbaa !9
  %3203 = load i32, ptr %48, align 4, !tbaa !9
  %3204 = icmp ne i32 %3203, 0
  %3205 = xor i1 %3204, true
  %3206 = zext i1 %3205 to i32
  store i32 %3206, ptr %48, align 4, !tbaa !9
  %3207 = load i32, ptr %48, align 4, !tbaa !9
  %3208 = icmp ne i32 %3207, 0
  br i1 %3208, label %3209, label %3210

3209:                                             ; preds = %3195
  br label %3427

3210:                                             ; preds = %3195
  %3211 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3211, ptr %48, align 4, !tbaa !9
  %3212 = load ptr, ptr %5, align 8, !tbaa !5
  %3213 = getelementptr inbounds %struct.w2c_hermes, ptr %3212, i32 0, i32 6
  %3214 = load i32, ptr %48, align 4, !tbaa !9
  %3215 = zext i32 %3214 to i64
  %3216 = call i32 @i32_load8_u(ptr noundef %3213, i64 noundef %3215)
  store i32 %3216, ptr %48, align 4, !tbaa !9
  %3217 = load i32, ptr %48, align 4, !tbaa !9
  %3218 = icmp ne i32 %3217, 0
  %3219 = xor i1 %3218, true
  %3220 = zext i1 %3219 to i32
  store i32 %3220, ptr %48, align 4, !tbaa !9
  %3221 = load i32, ptr %48, align 4, !tbaa !9
  %3222 = icmp ne i32 %3221, 0
  br i1 %3222, label %3223, label %3224

3223:                                             ; preds = %3210
  br label %3427

3224:                                             ; preds = %3210
  store i32 19, ptr %48, align 4, !tbaa !9
  %3225 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3225, ptr %8, align 4, !tbaa !9
  store i32 111452, ptr %48, align 4, !tbaa !9
  %3226 = load ptr, ptr %5, align 8, !tbaa !5
  %3227 = getelementptr inbounds %struct.w2c_hermes, ptr %3226, i32 0, i32 6
  %3228 = load i32, ptr %48, align 4, !tbaa !9
  %3229 = zext i32 %3228 to i64
  %3230 = call i32 @i32_load(ptr noundef %3227, i64 noundef %3229)
  store i32 %3230, ptr %48, align 4, !tbaa !9
  %3231 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3231, ptr %9, align 4, !tbaa !9
  %3232 = load i32, ptr %48, align 4, !tbaa !9
  %3233 = icmp ne i32 %3232, 0
  %3234 = xor i1 %3233, true
  %3235 = zext i1 %3234 to i32
  store i32 %3235, ptr %48, align 4, !tbaa !9
  %3236 = load i32, ptr %48, align 4, !tbaa !9
  %3237 = icmp ne i32 %3236, 0
  br i1 %3237, label %3238, label %3239

3238:                                             ; preds = %3224
  br label %3427

3239:                                             ; preds = %3224
  %3240 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3240, ptr %48, align 4, !tbaa !9
  %3241 = load ptr, ptr %5, align 8, !tbaa !5
  %3242 = getelementptr inbounds %struct.w2c_hermes, ptr %3241, i32 0, i32 6
  %3243 = load i32, ptr %48, align 4, !tbaa !9
  %3244 = zext i32 %3243 to i64
  %3245 = call i32 @i32_load8_u(ptr noundef %3242, i64 noundef %3244)
  store i32 %3245, ptr %48, align 4, !tbaa !9
  %3246 = load i32, ptr %48, align 4, !tbaa !9
  %3247 = icmp ne i32 %3246, 0
  %3248 = xor i1 %3247, true
  %3249 = zext i1 %3248 to i32
  store i32 %3249, ptr %48, align 4, !tbaa !9
  %3250 = load i32, ptr %48, align 4, !tbaa !9
  %3251 = icmp ne i32 %3250, 0
  br i1 %3251, label %3252, label %3253

3252:                                             ; preds = %3239
  br label %3427

3253:                                             ; preds = %3239
  store i32 20, ptr %48, align 4, !tbaa !9
  %3254 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3254, ptr %8, align 4, !tbaa !9
  store i32 111456, ptr %48, align 4, !tbaa !9
  %3255 = load ptr, ptr %5, align 8, !tbaa !5
  %3256 = getelementptr inbounds %struct.w2c_hermes, ptr %3255, i32 0, i32 6
  %3257 = load i32, ptr %48, align 4, !tbaa !9
  %3258 = zext i32 %3257 to i64
  %3259 = call i32 @i32_load(ptr noundef %3256, i64 noundef %3258)
  store i32 %3259, ptr %48, align 4, !tbaa !9
  %3260 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3260, ptr %9, align 4, !tbaa !9
  %3261 = load i32, ptr %48, align 4, !tbaa !9
  %3262 = icmp ne i32 %3261, 0
  %3263 = xor i1 %3262, true
  %3264 = zext i1 %3263 to i32
  store i32 %3264, ptr %48, align 4, !tbaa !9
  %3265 = load i32, ptr %48, align 4, !tbaa !9
  %3266 = icmp ne i32 %3265, 0
  br i1 %3266, label %3267, label %3268

3267:                                             ; preds = %3253
  br label %3427

3268:                                             ; preds = %3253
  %3269 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3269, ptr %48, align 4, !tbaa !9
  %3270 = load ptr, ptr %5, align 8, !tbaa !5
  %3271 = getelementptr inbounds %struct.w2c_hermes, ptr %3270, i32 0, i32 6
  %3272 = load i32, ptr %48, align 4, !tbaa !9
  %3273 = zext i32 %3272 to i64
  %3274 = call i32 @i32_load8_u(ptr noundef %3271, i64 noundef %3273)
  store i32 %3274, ptr %48, align 4, !tbaa !9
  %3275 = load i32, ptr %48, align 4, !tbaa !9
  %3276 = icmp ne i32 %3275, 0
  %3277 = xor i1 %3276, true
  %3278 = zext i1 %3277 to i32
  store i32 %3278, ptr %48, align 4, !tbaa !9
  %3279 = load i32, ptr %48, align 4, !tbaa !9
  %3280 = icmp ne i32 %3279, 0
  br i1 %3280, label %3281, label %3282

3281:                                             ; preds = %3268
  br label %3427

3282:                                             ; preds = %3268
  store i32 21, ptr %48, align 4, !tbaa !9
  %3283 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3283, ptr %8, align 4, !tbaa !9
  store i32 111460, ptr %48, align 4, !tbaa !9
  %3284 = load ptr, ptr %5, align 8, !tbaa !5
  %3285 = getelementptr inbounds %struct.w2c_hermes, ptr %3284, i32 0, i32 6
  %3286 = load i32, ptr %48, align 4, !tbaa !9
  %3287 = zext i32 %3286 to i64
  %3288 = call i32 @i32_load(ptr noundef %3285, i64 noundef %3287)
  store i32 %3288, ptr %48, align 4, !tbaa !9
  %3289 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3289, ptr %9, align 4, !tbaa !9
  %3290 = load i32, ptr %48, align 4, !tbaa !9
  %3291 = icmp ne i32 %3290, 0
  %3292 = xor i1 %3291, true
  %3293 = zext i1 %3292 to i32
  store i32 %3293, ptr %48, align 4, !tbaa !9
  %3294 = load i32, ptr %48, align 4, !tbaa !9
  %3295 = icmp ne i32 %3294, 0
  br i1 %3295, label %3296, label %3297

3296:                                             ; preds = %3282
  br label %3427

3297:                                             ; preds = %3282
  %3298 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3298, ptr %48, align 4, !tbaa !9
  %3299 = load ptr, ptr %5, align 8, !tbaa !5
  %3300 = getelementptr inbounds %struct.w2c_hermes, ptr %3299, i32 0, i32 6
  %3301 = load i32, ptr %48, align 4, !tbaa !9
  %3302 = zext i32 %3301 to i64
  %3303 = call i32 @i32_load8_u(ptr noundef %3300, i64 noundef %3302)
  store i32 %3303, ptr %48, align 4, !tbaa !9
  %3304 = load i32, ptr %48, align 4, !tbaa !9
  %3305 = icmp ne i32 %3304, 0
  %3306 = xor i1 %3305, true
  %3307 = zext i1 %3306 to i32
  store i32 %3307, ptr %48, align 4, !tbaa !9
  %3308 = load i32, ptr %48, align 4, !tbaa !9
  %3309 = icmp ne i32 %3308, 0
  br i1 %3309, label %3310, label %3311

3310:                                             ; preds = %3297
  br label %3427

3311:                                             ; preds = %3297
  store i32 22, ptr %48, align 4, !tbaa !9
  %3312 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3312, ptr %8, align 4, !tbaa !9
  store i32 111464, ptr %48, align 4, !tbaa !9
  %3313 = load ptr, ptr %5, align 8, !tbaa !5
  %3314 = getelementptr inbounds %struct.w2c_hermes, ptr %3313, i32 0, i32 6
  %3315 = load i32, ptr %48, align 4, !tbaa !9
  %3316 = zext i32 %3315 to i64
  %3317 = call i32 @i32_load(ptr noundef %3314, i64 noundef %3316)
  store i32 %3317, ptr %48, align 4, !tbaa !9
  %3318 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3318, ptr %9, align 4, !tbaa !9
  %3319 = load i32, ptr %48, align 4, !tbaa !9
  %3320 = icmp ne i32 %3319, 0
  %3321 = xor i1 %3320, true
  %3322 = zext i1 %3321 to i32
  store i32 %3322, ptr %48, align 4, !tbaa !9
  %3323 = load i32, ptr %48, align 4, !tbaa !9
  %3324 = icmp ne i32 %3323, 0
  br i1 %3324, label %3325, label %3326

3325:                                             ; preds = %3311
  br label %3427

3326:                                             ; preds = %3311
  %3327 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3327, ptr %48, align 4, !tbaa !9
  %3328 = load ptr, ptr %5, align 8, !tbaa !5
  %3329 = getelementptr inbounds %struct.w2c_hermes, ptr %3328, i32 0, i32 6
  %3330 = load i32, ptr %48, align 4, !tbaa !9
  %3331 = zext i32 %3330 to i64
  %3332 = call i32 @i32_load8_u(ptr noundef %3329, i64 noundef %3331)
  store i32 %3332, ptr %48, align 4, !tbaa !9
  %3333 = load i32, ptr %48, align 4, !tbaa !9
  %3334 = icmp ne i32 %3333, 0
  %3335 = xor i1 %3334, true
  %3336 = zext i1 %3335 to i32
  store i32 %3336, ptr %48, align 4, !tbaa !9
  %3337 = load i32, ptr %48, align 4, !tbaa !9
  %3338 = icmp ne i32 %3337, 0
  br i1 %3338, label %3339, label %3340

3339:                                             ; preds = %3326
  br label %3427

3340:                                             ; preds = %3326
  store i32 23, ptr %48, align 4, !tbaa !9
  %3341 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3341, ptr %8, align 4, !tbaa !9
  store i32 111468, ptr %48, align 4, !tbaa !9
  %3342 = load ptr, ptr %5, align 8, !tbaa !5
  %3343 = getelementptr inbounds %struct.w2c_hermes, ptr %3342, i32 0, i32 6
  %3344 = load i32, ptr %48, align 4, !tbaa !9
  %3345 = zext i32 %3344 to i64
  %3346 = call i32 @i32_load(ptr noundef %3343, i64 noundef %3345)
  store i32 %3346, ptr %48, align 4, !tbaa !9
  %3347 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3347, ptr %9, align 4, !tbaa !9
  %3348 = load i32, ptr %48, align 4, !tbaa !9
  %3349 = icmp ne i32 %3348, 0
  %3350 = xor i1 %3349, true
  %3351 = zext i1 %3350 to i32
  store i32 %3351, ptr %48, align 4, !tbaa !9
  %3352 = load i32, ptr %48, align 4, !tbaa !9
  %3353 = icmp ne i32 %3352, 0
  br i1 %3353, label %3354, label %3355

3354:                                             ; preds = %3340
  br label %3427

3355:                                             ; preds = %3340
  %3356 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3356, ptr %48, align 4, !tbaa !9
  %3357 = load ptr, ptr %5, align 8, !tbaa !5
  %3358 = getelementptr inbounds %struct.w2c_hermes, ptr %3357, i32 0, i32 6
  %3359 = load i32, ptr %48, align 4, !tbaa !9
  %3360 = zext i32 %3359 to i64
  %3361 = call i32 @i32_load8_u(ptr noundef %3358, i64 noundef %3360)
  store i32 %3361, ptr %48, align 4, !tbaa !9
  %3362 = load i32, ptr %48, align 4, !tbaa !9
  %3363 = icmp ne i32 %3362, 0
  %3364 = xor i1 %3363, true
  %3365 = zext i1 %3364 to i32
  store i32 %3365, ptr %48, align 4, !tbaa !9
  %3366 = load i32, ptr %48, align 4, !tbaa !9
  %3367 = icmp ne i32 %3366, 0
  br i1 %3367, label %3368, label %3369

3368:                                             ; preds = %3355
  br label %3427

3369:                                             ; preds = %3355
  store i32 24, ptr %48, align 4, !tbaa !9
  %3370 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3370, ptr %8, align 4, !tbaa !9
  store i32 111472, ptr %48, align 4, !tbaa !9
  %3371 = load ptr, ptr %5, align 8, !tbaa !5
  %3372 = getelementptr inbounds %struct.w2c_hermes, ptr %3371, i32 0, i32 6
  %3373 = load i32, ptr %48, align 4, !tbaa !9
  %3374 = zext i32 %3373 to i64
  %3375 = call i32 @i32_load(ptr noundef %3372, i64 noundef %3374)
  store i32 %3375, ptr %48, align 4, !tbaa !9
  %3376 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3376, ptr %9, align 4, !tbaa !9
  %3377 = load i32, ptr %48, align 4, !tbaa !9
  %3378 = icmp ne i32 %3377, 0
  %3379 = xor i1 %3378, true
  %3380 = zext i1 %3379 to i32
  store i32 %3380, ptr %48, align 4, !tbaa !9
  %3381 = load i32, ptr %48, align 4, !tbaa !9
  %3382 = icmp ne i32 %3381, 0
  br i1 %3382, label %3383, label %3384

3383:                                             ; preds = %3369
  br label %3427

3384:                                             ; preds = %3369
  %3385 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3385, ptr %48, align 4, !tbaa !9
  %3386 = load ptr, ptr %5, align 8, !tbaa !5
  %3387 = getelementptr inbounds %struct.w2c_hermes, ptr %3386, i32 0, i32 6
  %3388 = load i32, ptr %48, align 4, !tbaa !9
  %3389 = zext i32 %3388 to i64
  %3390 = call i32 @i32_load8_u(ptr noundef %3387, i64 noundef %3389)
  store i32 %3390, ptr %48, align 4, !tbaa !9
  %3391 = load i32, ptr %48, align 4, !tbaa !9
  %3392 = icmp ne i32 %3391, 0
  %3393 = xor i1 %3392, true
  %3394 = zext i1 %3393 to i32
  store i32 %3394, ptr %48, align 4, !tbaa !9
  %3395 = load i32, ptr %48, align 4, !tbaa !9
  %3396 = icmp ne i32 %3395, 0
  br i1 %3396, label %3397, label %3398

3397:                                             ; preds = %3384
  br label %3427

3398:                                             ; preds = %3384
  store i32 25, ptr %48, align 4, !tbaa !9
  store i32 111476, ptr %49, align 4, !tbaa !9
  %3399 = load ptr, ptr %5, align 8, !tbaa !5
  %3400 = getelementptr inbounds %struct.w2c_hermes, ptr %3399, i32 0, i32 6
  %3401 = load i32, ptr %49, align 4, !tbaa !9
  %3402 = zext i32 %3401 to i64
  %3403 = call i32 @i32_load(ptr noundef %3400, i64 noundef %3402)
  store i32 %3403, ptr %49, align 4, !tbaa !9
  %3404 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %3404, ptr %8, align 4, !tbaa !9
  %3405 = load i32, ptr %49, align 4, !tbaa !9
  %3406 = icmp ne i32 %3405, 0
  %3407 = xor i1 %3406, true
  %3408 = zext i1 %3407 to i32
  store i32 %3408, ptr %49, align 4, !tbaa !9
  %3409 = load i32, ptr %49, align 4, !tbaa !9
  %3410 = icmp ne i32 %3409, 0
  br i1 %3410, label %3411, label %3412

3411:                                             ; preds = %3398
  br label %3429

3412:                                             ; preds = %3398
  store i32 26, ptr %48, align 4, !tbaa !9
  store i32 25, ptr %49, align 4, !tbaa !9
  %3413 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3413, ptr %50, align 4, !tbaa !9
  %3414 = load ptr, ptr %5, align 8, !tbaa !5
  %3415 = getelementptr inbounds %struct.w2c_hermes, ptr %3414, i32 0, i32 6
  %3416 = load i32, ptr %50, align 4, !tbaa !9
  %3417 = zext i32 %3416 to i64
  %3418 = call i32 @i32_load8_u(ptr noundef %3415, i64 noundef %3417)
  store i32 %3418, ptr %50, align 4, !tbaa !9
  %3419 = load i32, ptr %50, align 4, !tbaa !9
  %3420 = icmp ne i32 %3419, 0
  br i1 %3420, label %3421, label %3423

3421:                                             ; preds = %3412
  %3422 = load i32, ptr %48, align 4, !tbaa !9
  br label %3425

3423:                                             ; preds = %3412
  %3424 = load i32, ptr %49, align 4, !tbaa !9
  br label %3425

3425:                                             ; preds = %3423, %3421
  %3426 = phi i32 [ %3422, %3421 ], [ %3424, %3423 ]
  store i32 %3426, ptr %48, align 4, !tbaa !9
  br label %3429

3427:                                             ; preds = %3397, %3383, %3368, %3354, %3339, %3325, %3310, %3296, %3281, %3267, %3252, %3238, %3223, %3209, %3194, %3180, %3165, %3151, %3136, %3122, %3107, %3093, %3078, %3064, %3049, %3035, %3020, %3006, %2991, %2977, %2962, %2948, %2933, %2919, %2904, %2890, %2875, %2861, %2846, %2832, %2817, %2803, %2788, %2774, %2759, %2745, %2730, %2716, %2701, %2687, %2673
  %3428 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3428, ptr %48, align 4, !tbaa !9
  br label %3429

3429:                                             ; preds = %3427, %3425, %3411, %2657
  %3430 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3430, ptr %13, align 4, !tbaa !9
  %3431 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3431, ptr %48, align 4, !tbaa !9
  store i32 76, ptr %49, align 4, !tbaa !9
  %3432 = load i32, ptr %49, align 4, !tbaa !9
  %3433 = load i32, ptr %48, align 4, !tbaa !9
  %3434 = add i32 %3433, %3432
  store i32 %3434, ptr %48, align 4, !tbaa !9
  %3435 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3435, ptr %8, align 4, !tbaa !9
  %3436 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3436, ptr %49, align 4, !tbaa !9
  %3437 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3437, ptr %50, align 4, !tbaa !9
  %3438 = load ptr, ptr %5, align 8, !tbaa !5
  %3439 = getelementptr inbounds %struct.w2c_hermes, ptr %3438, i32 0, i32 6
  %3440 = load i32, ptr %50, align 4, !tbaa !9
  %3441 = zext i32 %3440 to i64
  %3442 = add i64 %3441, 32
  %3443 = call i32 @i32_load(ptr noundef %3439, i64 noundef %3442)
  store i32 %3443, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %3444 = load ptr, ptr %5, align 8, !tbaa !5
  %3445 = load i32, ptr %48, align 4, !tbaa !9
  %3446 = load i32, ptr %49, align 4, !tbaa !9
  %3447 = load i32, ptr %50, align 4, !tbaa !9
  %3448 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AcreateLRef0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20bool0x29(ptr noundef %3444, i32 noundef %3445, i32 noundef %3446, i32 noundef %3447, i32 noundef %3448)
  %3449 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3449, ptr %48, align 4, !tbaa !9
  %3450 = load ptr, ptr %5, align 8, !tbaa !5
  %3451 = load i32, ptr %48, align 4, !tbaa !9
  %3452 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsVariable0x280x290x20const(ptr noundef %3450, i32 noundef %3451)
  store i32 %3452, ptr %48, align 4, !tbaa !9
  %3453 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3453, ptr %8, align 4, !tbaa !9
  %3454 = load i32, ptr %48, align 4, !tbaa !9
  %3455 = icmp ne i32 %3454, 0
  br i1 %3455, label %3456, label %3461

3456:                                             ; preds = %3429
  %3457 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3457, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %3458 = load i32, ptr %49, align 4, !tbaa !9
  %3459 = load i32, ptr %48, align 4, !tbaa !9
  %3460 = add i32 %3459, %3458
  store i32 %3460, ptr %48, align 4, !tbaa !9
  br label %3488

3461:                                             ; preds = %3429
  %3462 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3462, ptr %48, align 4, !tbaa !9
  store i32 76, ptr %49, align 4, !tbaa !9
  %3463 = load i32, ptr %49, align 4, !tbaa !9
  %3464 = load i32, ptr %48, align 4, !tbaa !9
  %3465 = add i32 %3464, %3463
  store i32 %3465, ptr %48, align 4, !tbaa !9
  %3466 = load ptr, ptr %5, align 8, !tbaa !5
  %3467 = load i32, ptr %48, align 4, !tbaa !9
  %3468 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsGlobalObjectProperty0x280x290x20const(ptr noundef %3466, i32 noundef %3467)
  store i32 %3468, ptr %48, align 4, !tbaa !9
  %3469 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3469, ptr %8, align 4, !tbaa !9
  %3470 = load i32, ptr %48, align 4, !tbaa !9
  %3471 = icmp ne i32 %3470, 0
  %3472 = xor i1 %3471, true
  %3473 = zext i1 %3472 to i32
  store i32 %3473, ptr %48, align 4, !tbaa !9
  %3474 = load i32, ptr %48, align 4, !tbaa !9
  %3475 = icmp ne i32 %3474, 0
  br i1 %3475, label %3476, label %3477

3476:                                             ; preds = %3461
  br label %3495

3477:                                             ; preds = %3461
  %3478 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3478, ptr %48, align 4, !tbaa !9
  %3479 = load ptr, ptr %5, align 8, !tbaa !5
  %3480 = getelementptr inbounds %struct.w2c_hermes, ptr %3479, i32 0, i32 6
  %3481 = load i32, ptr %48, align 4, !tbaa !9
  %3482 = zext i32 %3481 to i64
  %3483 = add i64 %3482, 32
  %3484 = call i32 @i32_load(ptr noundef %3480, i64 noundef %3483)
  store i32 %3484, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %3485 = load i32, ptr %49, align 4, !tbaa !9
  %3486 = load i32, ptr %48, align 4, !tbaa !9
  %3487 = add i32 %3486, %3485
  store i32 %3487, ptr %48, align 4, !tbaa !9
  br label %3488

3488:                                             ; preds = %3477, %3456
  %3489 = load ptr, ptr %5, align 8, !tbaa !5
  %3490 = getelementptr inbounds %struct.w2c_hermes, ptr %3489, i32 0, i32 6
  %3491 = load i32, ptr %48, align 4, !tbaa !9
  %3492 = zext i32 %3491 to i64
  %3493 = call i32 @i32_load(ptr noundef %3490, i64 noundef %3492)
  store i32 %3493, ptr %48, align 4, !tbaa !9
  %3494 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3494, ptr %11, align 4, !tbaa !9
  br label %3495

3495:                                             ; preds = %3488, %3476
  %3496 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3496, ptr %48, align 4, !tbaa !9
  store i32 21, ptr %49, align 4, !tbaa !9
  %3497 = load i32, ptr %49, align 4, !tbaa !9
  %3498 = load i32, ptr %48, align 4, !tbaa !9
  %3499 = sub i32 %3498, %3497
  store i32 %3499, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %3500 = load i32, ptr %48, align 4, !tbaa !9
  %3501 = load i32, ptr %49, align 4, !tbaa !9
  %3502 = icmp ule i32 %3500, %3501
  %3503 = zext i1 %3502 to i32
  store i32 %3503, ptr %48, align 4, !tbaa !9
  %3504 = load i32, ptr %48, align 4, !tbaa !9
  %3505 = icmp ne i32 %3504, 0
  br i1 %3505, label %3506, label %4134

3506:                                             ; preds = %3495
  %3507 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3507, ptr %48, align 4, !tbaa !9
  %3508 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3508, ptr %49, align 4, !tbaa !9
  %3509 = load ptr, ptr %5, align 8, !tbaa !5
  %3510 = getelementptr inbounds %struct.w2c_hermes, ptr %3509, i32 0, i32 6
  %3511 = load i32, ptr %49, align 4, !tbaa !9
  %3512 = zext i32 %3511 to i64
  %3513 = add i64 %3512, 92
  %3514 = call i64 @i64_load(ptr noundef %3510, i64 noundef %3513)
  store i64 %3514, ptr %59, align 8, !tbaa !11
  %3515 = load ptr, ptr %5, align 8, !tbaa !5
  %3516 = getelementptr inbounds %struct.w2c_hermes, ptr %3515, i32 0, i32 6
  %3517 = load i32, ptr %48, align 4, !tbaa !9
  %3518 = zext i32 %3517 to i64
  %3519 = add i64 %3518, 24
  %3520 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3516, i64 noundef %3519, i64 noundef %3520)
  %3521 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3521, ptr %48, align 4, !tbaa !9
  %3522 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3522, ptr %49, align 4, !tbaa !9
  %3523 = load ptr, ptr %5, align 8, !tbaa !5
  %3524 = getelementptr inbounds %struct.w2c_hermes, ptr %3523, i32 0, i32 6
  %3525 = load i32, ptr %49, align 4, !tbaa !9
  %3526 = zext i32 %3525 to i64
  %3527 = add i64 %3526, 84
  %3528 = call i64 @i64_load(ptr noundef %3524, i64 noundef %3527)
  store i64 %3528, ptr %59, align 8, !tbaa !11
  %3529 = load ptr, ptr %5, align 8, !tbaa !5
  %3530 = getelementptr inbounds %struct.w2c_hermes, ptr %3529, i32 0, i32 6
  %3531 = load i32, ptr %48, align 4, !tbaa !9
  %3532 = zext i32 %3531 to i64
  %3533 = add i64 %3532, 16
  %3534 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3530, i64 noundef %3533, i64 noundef %3534)
  %3535 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3535, ptr %48, align 4, !tbaa !9
  %3536 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3536, ptr %49, align 4, !tbaa !9
  %3537 = load ptr, ptr %5, align 8, !tbaa !5
  %3538 = getelementptr inbounds %struct.w2c_hermes, ptr %3537, i32 0, i32 6
  %3539 = load i32, ptr %49, align 4, !tbaa !9
  %3540 = zext i32 %3539 to i64
  %3541 = add i64 %3540, 76
  %3542 = call i64 @i64_load(ptr noundef %3538, i64 noundef %3541)
  store i64 %3542, ptr %59, align 8, !tbaa !11
  %3543 = load ptr, ptr %5, align 8, !tbaa !5
  %3544 = getelementptr inbounds %struct.w2c_hermes, ptr %3543, i32 0, i32 6
  %3545 = load i32, ptr %48, align 4, !tbaa !9
  %3546 = zext i32 %3545 to i64
  %3547 = add i64 %3546, 8
  %3548 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3544, i64 noundef %3547, i64 noundef %3548)
  %3549 = load ptr, ptr %5, align 8, !tbaa !5
  %3550 = getelementptr inbounds %struct.w2c_hermes, ptr %3549, i32 0, i32 3
  %3551 = load i32, ptr %3550, align 8, !tbaa !15
  store i32 %3551, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %3552 = load i32, ptr %49, align 4, !tbaa !9
  %3553 = load i32, ptr %48, align 4, !tbaa !9
  %3554 = sub i32 %3553, %3552
  store i32 %3554, ptr %48, align 4, !tbaa !9
  %3555 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3555, ptr %8, align 4, !tbaa !9
  %3556 = load i32, ptr %48, align 4, !tbaa !9
  %3557 = load ptr, ptr %5, align 8, !tbaa !5
  %3558 = getelementptr inbounds %struct.w2c_hermes, ptr %3557, i32 0, i32 3
  store i32 %3556, ptr %3558, align 8, !tbaa !15
  %3559 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3559, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %3560 = load i32, ptr %49, align 4, !tbaa !9
  %3561 = load i32, ptr %48, align 4, !tbaa !9
  %3562 = add i32 %3561, %3560
  store i32 %3562, ptr %48, align 4, !tbaa !9
  %3563 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3563, ptr %9, align 4, !tbaa !9
  %3564 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3564, ptr %49, align 4, !tbaa !9
  %3565 = load ptr, ptr %5, align 8, !tbaa !5
  %3566 = getelementptr inbounds %struct.w2c_hermes, ptr %3565, i32 0, i32 6
  %3567 = load i32, ptr %49, align 4, !tbaa !9
  %3568 = zext i32 %3567 to i64
  %3569 = add i64 %3568, 12
  %3570 = call i32 @i32_load(ptr noundef %3566, i64 noundef %3569)
  store i32 %3570, ptr %49, align 4, !tbaa !9
  %3571 = load ptr, ptr %5, align 8, !tbaa !5
  %3572 = getelementptr inbounds %struct.w2c_hermes, ptr %3571, i32 0, i32 6
  %3573 = load i32, ptr %49, align 4, !tbaa !9
  %3574 = zext i32 %3573 to i64
  %3575 = add i64 %3574, 44
  %3576 = call i32 @i32_load(ptr noundef %3572, i64 noundef %3575)
  store i32 %3576, ptr %49, align 4, !tbaa !9
  %3577 = load ptr, ptr %5, align 8, !tbaa !5
  %3578 = load i32, ptr %48, align 4, !tbaa !9
  %3579 = load i32, ptr %49, align 4, !tbaa !9
  %3580 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %3577, i32 noundef %3578, i32 noundef %3579)
  store i32 %3580, ptr %48, align 4, !tbaa !9
  %3581 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3581, ptr %14, align 4, !tbaa !9
  %3582 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3582, ptr %48, align 4, !tbaa !9
  %3583 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3583, ptr %49, align 4, !tbaa !9
  %3584 = load ptr, ptr %5, align 8, !tbaa !5
  %3585 = getelementptr inbounds %struct.w2c_hermes, ptr %3584, i32 0, i32 6
  %3586 = load i32, ptr %49, align 4, !tbaa !9
  %3587 = zext i32 %3586 to i64
  %3588 = add i64 %3587, 12
  %3589 = call i32 @i32_load(ptr noundef %3585, i64 noundef %3588)
  store i32 %3589, ptr %49, align 4, !tbaa !9
  %3590 = load ptr, ptr %5, align 8, !tbaa !5
  %3591 = getelementptr inbounds %struct.w2c_hermes, ptr %3590, i32 0, i32 6
  %3592 = load i32, ptr %49, align 4, !tbaa !9
  %3593 = zext i32 %3592 to i64
  %3594 = add i64 %3593, 44
  %3595 = call i32 @i32_load(ptr noundef %3591, i64 noundef %3594)
  store i32 %3595, ptr %49, align 4, !tbaa !9
  %3596 = load ptr, ptr %5, align 8, !tbaa !5
  %3597 = load i32, ptr %48, align 4, !tbaa !9
  %3598 = load i32, ptr %49, align 4, !tbaa !9
  %3599 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %3596, i32 noundef %3597, i32 noundef %3598)
  store i32 %3599, ptr %48, align 4, !tbaa !9
  %3600 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3600, ptr %12, align 4, !tbaa !9
  %3601 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3601, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %3602 = load i32, ptr %49, align 4, !tbaa !9
  %3603 = load i32, ptr %48, align 4, !tbaa !9
  %3604 = add i32 %3603, %3602
  store i32 %3604, ptr %48, align 4, !tbaa !9
  %3605 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3605, ptr %19, align 4, !tbaa !9
  %3606 = load ptr, ptr %5, align 8, !tbaa !5
  %3607 = load i32, ptr %48, align 4, !tbaa !9
  %3608 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitLoad0x280x29(ptr noundef %3606, i32 noundef %3607)
  store i32 %3608, ptr %48, align 4, !tbaa !9
  %3609 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3609, ptr %15, align 4, !tbaa !9
  %3610 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3610, ptr %48, align 4, !tbaa !9
  store i64 34359738369, ptr %59, align 8, !tbaa !11
  %3611 = load ptr, ptr %5, align 8, !tbaa !5
  %3612 = getelementptr inbounds %struct.w2c_hermes, ptr %3611, i32 0, i32 6
  %3613 = load i32, ptr %48, align 4, !tbaa !9
  %3614 = zext i32 %3613 to i64
  %3615 = add i64 %3614, 56
  %3616 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3612, i64 noundef %3615, i64 noundef %3616)
  %3617 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3617, ptr %48, align 4, !tbaa !9
  %3618 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3618, ptr %49, align 4, !tbaa !9
  store i32 -64, ptr %50, align 4, !tbaa !9
  %3619 = load i32, ptr %50, align 4, !tbaa !9
  %3620 = load i32, ptr %49, align 4, !tbaa !9
  %3621 = sub i32 %3620, %3619
  store i32 %3621, ptr %49, align 4, !tbaa !9
  %3622 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %3622, ptr %18, align 4, !tbaa !9
  %3623 = load ptr, ptr %5, align 8, !tbaa !5
  %3624 = getelementptr inbounds %struct.w2c_hermes, ptr %3623, i32 0, i32 6
  %3625 = load i32, ptr %48, align 4, !tbaa !9
  %3626 = zext i32 %3625 to i64
  %3627 = add i64 %3626, 52
  %3628 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3624, i64 noundef %3627, i32 noundef %3628)
  %3629 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3629, ptr %48, align 4, !tbaa !9
  %3630 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %3630, ptr %49, align 4, !tbaa !9
  %3631 = load ptr, ptr %5, align 8, !tbaa !5
  %3632 = getelementptr inbounds %struct.w2c_hermes, ptr %3631, i32 0, i32 6
  %3633 = load i32, ptr %48, align 4, !tbaa !9
  %3634 = zext i32 %3633 to i64
  %3635 = add i64 %3634, 64
  %3636 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3632, i64 noundef %3635, i32 noundef %3636)
  %3637 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3637, ptr %48, align 4, !tbaa !9
  store i64 34359738368, ptr %59, align 8, !tbaa !11
  %3638 = load ptr, ptr %5, align 8, !tbaa !5
  %3639 = getelementptr inbounds %struct.w2c_hermes, ptr %3638, i32 0, i32 6
  %3640 = load i32, ptr %48, align 4, !tbaa !9
  %3641 = zext i32 %3640 to i64
  %3642 = add i64 %3641, 12
  %3643 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3639, i64 noundef %3642, i64 noundef %3643)
  %3644 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3644, ptr %48, align 4, !tbaa !9
  %3645 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3645, ptr %49, align 4, !tbaa !9
  store i32 20, ptr %50, align 4, !tbaa !9
  %3646 = load i32, ptr %50, align 4, !tbaa !9
  %3647 = load i32, ptr %49, align 4, !tbaa !9
  %3648 = add i32 %3647, %3646
  store i32 %3648, ptr %49, align 4, !tbaa !9
  %3649 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %3649, ptr %16, align 4, !tbaa !9
  %3650 = load ptr, ptr %5, align 8, !tbaa !5
  %3651 = getelementptr inbounds %struct.w2c_hermes, ptr %3650, i32 0, i32 6
  %3652 = load i32, ptr %48, align 4, !tbaa !9
  %3653 = zext i32 %3652 to i64
  %3654 = add i64 %3653, 8
  %3655 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3651, i64 noundef %3654, i32 noundef %3655)
  %3656 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3656, ptr %48, align 4, !tbaa !9
  %3657 = load ptr, ptr %5, align 8, !tbaa !5
  %3658 = getelementptr inbounds %struct.w2c_hermes, ptr %3657, i32 0, i32 6
  %3659 = load i32, ptr %48, align 4, !tbaa !9
  %3660 = zext i32 %3659 to i64
  %3661 = add i64 %3660, 8
  %3662 = call i32 @i32_load(ptr noundef %3658, i64 noundef %3661)
  store i32 %3662, ptr %48, align 4, !tbaa !9
  %3663 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3663, ptr %20, align 4, !tbaa !9
  %3664 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3664, ptr %48, align 4, !tbaa !9
  %3665 = load ptr, ptr %5, align 8, !tbaa !5
  %3666 = getelementptr inbounds %struct.w2c_hermes, ptr %3665, i32 0, i32 6
  %3667 = load i32, ptr %48, align 4, !tbaa !9
  %3668 = zext i32 %3667 to i64
  %3669 = add i64 %3668, 12
  %3670 = call i32 @i32_load(ptr noundef %3666, i64 noundef %3669)
  store i32 %3670, ptr %48, align 4, !tbaa !9
  %3671 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3671, ptr %17, align 4, !tbaa !9
  %3672 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3672, ptr %49, align 4, !tbaa !9
  %3673 = load ptr, ptr %5, align 8, !tbaa !5
  %3674 = getelementptr inbounds %struct.w2c_hermes, ptr %3673, i32 0, i32 6
  %3675 = load i32, ptr %49, align 4, !tbaa !9
  %3676 = zext i32 %3675 to i64
  %3677 = add i64 %3676, 16
  %3678 = call i32 @i32_load(ptr noundef %3674, i64 noundef %3677)
  store i32 %3678, ptr %49, align 4, !tbaa !9
  %3679 = load i32, ptr %48, align 4, !tbaa !9
  %3680 = load i32, ptr %49, align 4, !tbaa !9
  %3681 = icmp uge i32 %3679, %3680
  %3682 = zext i1 %3681 to i32
  store i32 %3682, ptr %48, align 4, !tbaa !9
  %3683 = load i32, ptr %48, align 4, !tbaa !9
  %3684 = icmp ne i32 %3683, 0
  br i1 %3684, label %3685, label %3704

3685:                                             ; preds = %3506
  %3686 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3686, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %3687 = load i32, ptr %49, align 4, !tbaa !9
  %3688 = load i32, ptr %48, align 4, !tbaa !9
  %3689 = add i32 %3688, %3687
  store i32 %3689, ptr %48, align 4, !tbaa !9
  %3690 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %3690, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %3691 = load ptr, ptr %5, align 8, !tbaa !5
  %3692 = load i32, ptr %48, align 4, !tbaa !9
  %3693 = load i32, ptr %49, align 4, !tbaa !9
  %3694 = load i32, ptr %50, align 4, !tbaa !9
  %3695 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %3691, i32 noundef %3692, i32 noundef %3693, i32 noundef %3694, i32 noundef %3695)
  %3696 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3696, ptr %48, align 4, !tbaa !9
  %3697 = load ptr, ptr %5, align 8, !tbaa !5
  %3698 = getelementptr inbounds %struct.w2c_hermes, ptr %3697, i32 0, i32 6
  %3699 = load i32, ptr %48, align 4, !tbaa !9
  %3700 = zext i32 %3699 to i64
  %3701 = add i64 %3700, 12
  %3702 = call i32 @i32_load(ptr noundef %3698, i64 noundef %3701)
  store i32 %3702, ptr %48, align 4, !tbaa !9
  %3703 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3703, ptr %17, align 4, !tbaa !9
  br label %3704

3704:                                             ; preds = %3685, %3506
  %3705 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3705, ptr %48, align 4, !tbaa !9
  %3706 = load ptr, ptr %5, align 8, !tbaa !5
  %3707 = getelementptr inbounds %struct.w2c_hermes, ptr %3706, i32 0, i32 6
  %3708 = load i32, ptr %48, align 4, !tbaa !9
  %3709 = zext i32 %3708 to i64
  %3710 = add i64 %3709, 8
  %3711 = call i32 @i32_load(ptr noundef %3707, i64 noundef %3710)
  store i32 %3711, ptr %48, align 4, !tbaa !9
  %3712 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3712, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %3713 = load i32, ptr %50, align 4, !tbaa !9
  %3714 = and i32 %3713, 31
  %3715 = load i32, ptr %49, align 4, !tbaa !9
  %3716 = shl i32 %3715, %3714
  store i32 %3716, ptr %49, align 4, !tbaa !9
  %3717 = load i32, ptr %49, align 4, !tbaa !9
  %3718 = load i32, ptr %48, align 4, !tbaa !9
  %3719 = add i32 %3718, %3717
  store i32 %3719, ptr %48, align 4, !tbaa !9
  %3720 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %3720, ptr %49, align 4, !tbaa !9
  %3721 = load ptr, ptr %5, align 8, !tbaa !5
  %3722 = getelementptr inbounds %struct.w2c_hermes, ptr %3721, i32 0, i32 6
  %3723 = load i32, ptr %48, align 4, !tbaa !9
  %3724 = zext i32 %3723 to i64
  %3725 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3722, i64 noundef %3724, i32 noundef %3725)
  %3726 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3726, ptr %48, align 4, !tbaa !9
  %3727 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3727, ptr %49, align 4, !tbaa !9
  %3728 = load ptr, ptr %5, align 8, !tbaa !5
  %3729 = getelementptr inbounds %struct.w2c_hermes, ptr %3728, i32 0, i32 6
  %3730 = load i32, ptr %49, align 4, !tbaa !9
  %3731 = zext i32 %3730 to i64
  %3732 = add i64 %3731, 12
  %3733 = call i32 @i32_load(ptr noundef %3729, i64 noundef %3732)
  store i32 %3733, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %3734 = load i32, ptr %50, align 4, !tbaa !9
  %3735 = load i32, ptr %49, align 4, !tbaa !9
  %3736 = add i32 %3735, %3734
  store i32 %3736, ptr %49, align 4, !tbaa !9
  %3737 = load ptr, ptr %5, align 8, !tbaa !5
  %3738 = getelementptr inbounds %struct.w2c_hermes, ptr %3737, i32 0, i32 6
  %3739 = load i32, ptr %48, align 4, !tbaa !9
  %3740 = zext i32 %3739 to i64
  %3741 = add i64 %3740, 12
  %3742 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3738, i64 noundef %3741, i32 noundef %3742)
  %3743 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3743, ptr %48, align 4, !tbaa !9
  store i32 22, ptr %49, align 4, !tbaa !9
  %3744 = load i32, ptr %49, align 4, !tbaa !9
  %3745 = load i32, ptr %48, align 4, !tbaa !9
  %3746 = sub i32 %3745, %3744
  store i32 %3746, ptr %48, align 4, !tbaa !9
  %3747 = load i32, ptr %48, align 4, !tbaa !9
  switch i32 %3747, label %3750 [
    i32 0, label %3748
    i32 1, label %3749
  ]

3748:                                             ; preds = %3704
  br label %3761

3749:                                             ; preds = %3704
  br label %3771

3750:                                             ; preds = %3704
  br label %3751

3751:                                             ; preds = %3750
  %3752 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3752, ptr %48, align 4, !tbaa !9
  %3753 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %3753, ptr %49, align 4, !tbaa !9
  %3754 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3754, ptr %50, align 4, !tbaa !9
  %3755 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3755, ptr %51, align 4, !tbaa !9
  %3756 = load ptr, ptr %5, align 8, !tbaa !5
  %3757 = load i32, ptr %48, align 4, !tbaa !9
  %3758 = load i32, ptr %49, align 4, !tbaa !9
  %3759 = load i32, ptr %50, align 4, !tbaa !9
  %3760 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %3756, i32 noundef %3757, i32 noundef %3758, i32 noundef %3759, i32 noundef %3760)
  br label %3810

3761:                                             ; preds = %3748
  %3762 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3762, ptr %48, align 4, !tbaa !9
  %3763 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %3763, ptr %49, align 4, !tbaa !9
  %3764 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3764, ptr %50, align 4, !tbaa !9
  %3765 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3765, ptr %51, align 4, !tbaa !9
  %3766 = load ptr, ptr %5, align 8, !tbaa !5
  %3767 = load i32, ptr %48, align 4, !tbaa !9
  %3768 = load i32, ptr %49, align 4, !tbaa !9
  %3769 = load i32, ptr %50, align 4, !tbaa !9
  %3770 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %3766, i32 noundef %3767, i32 noundef %3768, i32 noundef %3769, i32 noundef %3770)
  br label %3810

3771:                                             ; preds = %3749
  %3772 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3772, ptr %48, align 4, !tbaa !9
  %3773 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3773, ptr %49, align 4, !tbaa !9
  %3774 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %3774, ptr %50, align 4, !tbaa !9
  %3775 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3775, ptr %51, align 4, !tbaa !9
  %3776 = load ptr, ptr %5, align 8, !tbaa !5
  %3777 = getelementptr inbounds %struct.w2c_hermes, ptr %3776, i32 0, i32 6
  %3778 = load i32, ptr %51, align 4, !tbaa !9
  %3779 = zext i32 %3778 to i64
  %3780 = call i32 @i32_load(ptr noundef %3777, i64 noundef %3779)
  store i32 %3780, ptr %51, align 4, !tbaa !9
  store i32 296, ptr %52, align 4, !tbaa !9
  %3781 = load i32, ptr %52, align 4, !tbaa !9
  %3782 = load i32, ptr %51, align 4, !tbaa !9
  %3783 = add i32 %3782, %3781
  store i32 %3783, ptr %51, align 4, !tbaa !9
  store i32 1, ptr %52, align 4, !tbaa !9
  %3784 = load ptr, ptr %5, align 8, !tbaa !5
  %3785 = load i32, ptr %49, align 4, !tbaa !9
  %3786 = load i32, ptr %50, align 4, !tbaa !9
  %3787 = load i32, ptr %51, align 4, !tbaa !9
  %3788 = load i32, ptr %52, align 4, !tbaa !9
  %3789 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %3784, i32 noundef %3785, i32 noundef %3786, i32 noundef %3787, i32 noundef %3788)
  store i32 %3789, ptr %49, align 4, !tbaa !9
  %3790 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %3790, ptr %15, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %3791 = load i32, ptr %50, align 4, !tbaa !9
  %3792 = load i32, ptr %49, align 4, !tbaa !9
  %3793 = add i32 %3792, %3791
  store i32 %3793, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %3794 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %3794, ptr %51, align 4, !tbaa !9
  %3795 = load i32, ptr %51, align 4, !tbaa !9
  %3796 = icmp ne i32 %3795, 0
  br i1 %3796, label %3797, label %3799

3797:                                             ; preds = %3771
  %3798 = load i32, ptr %49, align 4, !tbaa !9
  br label %3801

3799:                                             ; preds = %3771
  %3800 = load i32, ptr %50, align 4, !tbaa !9
  br label %3801

3801:                                             ; preds = %3799, %3797
  %3802 = phi i32 [ %3798, %3797 ], [ %3800, %3799 ]
  store i32 %3802, ptr %49, align 4, !tbaa !9
  %3803 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3803, ptr %50, align 4, !tbaa !9
  %3804 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %3804, ptr %51, align 4, !tbaa !9
  %3805 = load ptr, ptr %5, align 8, !tbaa !5
  %3806 = load i32, ptr %48, align 4, !tbaa !9
  %3807 = load i32, ptr %49, align 4, !tbaa !9
  %3808 = load i32, ptr %50, align 4, !tbaa !9
  %3809 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %3805, i32 noundef %3806, i32 noundef %3807, i32 noundef %3808, i32 noundef %3809)
  br label %3810

3810:                                             ; preds = %3801, %3761, %3751
  %3811 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3811, ptr %48, align 4, !tbaa !9
  %3812 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3812, ptr %49, align 4, !tbaa !9
  %3813 = load ptr, ptr %5, align 8, !tbaa !5
  %3814 = getelementptr inbounds %struct.w2c_hermes, ptr %3813, i32 0, i32 6
  %3815 = load i32, ptr %48, align 4, !tbaa !9
  %3816 = zext i32 %3815 to i64
  %3817 = add i64 %3816, 8
  %3818 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3814, i64 noundef %3817, i32 noundef %3818)
  %3819 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3819, ptr %48, align 4, !tbaa !9
  %3820 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3820, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %3821 = load i32, ptr %50, align 4, !tbaa !9
  %3822 = load i32, ptr %49, align 4, !tbaa !9
  %3823 = add i32 %3822, %3821
  store i32 %3823, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %3824 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %3824, ptr %51, align 4, !tbaa !9
  %3825 = load i32, ptr %51, align 4, !tbaa !9
  %3826 = icmp ne i32 %3825, 0
  br i1 %3826, label %3827, label %3829

3827:                                             ; preds = %3810
  %3828 = load i32, ptr %49, align 4, !tbaa !9
  br label %3831

3829:                                             ; preds = %3810
  %3830 = load i32, ptr %50, align 4, !tbaa !9
  br label %3831

3831:                                             ; preds = %3829, %3827
  %3832 = phi i32 [ %3828, %3827 ], [ %3830, %3829 ]
  store i32 %3832, ptr %49, align 4, !tbaa !9
  %3833 = load ptr, ptr %5, align 8, !tbaa !5
  %3834 = getelementptr inbounds %struct.w2c_hermes, ptr %3833, i32 0, i32 6
  %3835 = load i32, ptr %48, align 4, !tbaa !9
  %3836 = zext i32 %3835 to i64
  %3837 = add i64 %3836, 4
  %3838 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3834, i64 noundef %3837, i32 noundef %3838)
  %3839 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3839, ptr %48, align 4, !tbaa !9
  %3840 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3840, ptr %49, align 4, !tbaa !9
  %3841 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3841, ptr %50, align 4, !tbaa !9
  %3842 = load ptr, ptr %5, align 8, !tbaa !5
  %3843 = getelementptr inbounds %struct.w2c_hermes, ptr %3842, i32 0, i32 6
  %3844 = load i32, ptr %50, align 4, !tbaa !9
  %3845 = zext i32 %3844 to i64
  %3846 = add i64 %3845, 36
  %3847 = call i32 @i32_load(ptr noundef %3843, i64 noundef %3846)
  store i32 %3847, ptr %50, align 4, !tbaa !9
  %3848 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3848, ptr %51, align 4, !tbaa !9
  %3849 = load ptr, ptr %5, align 8, !tbaa !5
  %3850 = load i32, ptr %49, align 4, !tbaa !9
  %3851 = load i32, ptr %50, align 4, !tbaa !9
  %3852 = load i32, ptr %51, align 4, !tbaa !9
  %3853 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %3849, i32 noundef %3850, i32 noundef %3851, i32 noundef %3852)
  store i32 %3853, ptr %49, align 4, !tbaa !9
  %3854 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %3854, ptr %11, align 4, !tbaa !9
  %3855 = load ptr, ptr %5, align 8, !tbaa !5
  %3856 = load i32, ptr %48, align 4, !tbaa !9
  %3857 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %3855, i32 noundef %3856, i32 noundef %3857)
  %3858 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3858, ptr %48, align 4, !tbaa !9
  %3859 = load ptr, ptr %5, align 8, !tbaa !5
  %3860 = getelementptr inbounds %struct.w2c_hermes, ptr %3859, i32 0, i32 6
  %3861 = load i32, ptr %48, align 4, !tbaa !9
  %3862 = zext i32 %3861 to i64
  %3863 = add i64 %3862, 56
  %3864 = call i32 @i32_load(ptr noundef %3860, i64 noundef %3863)
  store i32 %3864, ptr %48, align 4, !tbaa !9
  %3865 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3865, ptr %7, align 4, !tbaa !9
  %3866 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3866, ptr %49, align 4, !tbaa !9
  %3867 = load ptr, ptr %5, align 8, !tbaa !5
  %3868 = getelementptr inbounds %struct.w2c_hermes, ptr %3867, i32 0, i32 6
  %3869 = load i32, ptr %49, align 4, !tbaa !9
  %3870 = zext i32 %3869 to i64
  %3871 = add i64 %3870, 60
  %3872 = call i32 @i32_load(ptr noundef %3868, i64 noundef %3871)
  store i32 %3872, ptr %49, align 4, !tbaa !9
  %3873 = load i32, ptr %48, align 4, !tbaa !9
  %3874 = load i32, ptr %49, align 4, !tbaa !9
  %3875 = icmp uge i32 %3873, %3874
  %3876 = zext i1 %3875 to i32
  store i32 %3876, ptr %48, align 4, !tbaa !9
  %3877 = load i32, ptr %48, align 4, !tbaa !9
  %3878 = icmp ne i32 %3877, 0
  br i1 %3878, label %3879, label %3898

3879:                                             ; preds = %3831
  %3880 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3880, ptr %48, align 4, !tbaa !9
  store i32 52, ptr %49, align 4, !tbaa !9
  %3881 = load i32, ptr %49, align 4, !tbaa !9
  %3882 = load i32, ptr %48, align 4, !tbaa !9
  %3883 = add i32 %3882, %3881
  store i32 %3883, ptr %48, align 4, !tbaa !9
  %3884 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3884, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %3885 = load ptr, ptr %5, align 8, !tbaa !5
  %3886 = load i32, ptr %48, align 4, !tbaa !9
  %3887 = load i32, ptr %49, align 4, !tbaa !9
  %3888 = load i32, ptr %50, align 4, !tbaa !9
  %3889 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %3885, i32 noundef %3886, i32 noundef %3887, i32 noundef %3888, i32 noundef %3889)
  %3890 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3890, ptr %48, align 4, !tbaa !9
  %3891 = load ptr, ptr %5, align 8, !tbaa !5
  %3892 = getelementptr inbounds %struct.w2c_hermes, ptr %3891, i32 0, i32 6
  %3893 = load i32, ptr %48, align 4, !tbaa !9
  %3894 = zext i32 %3893 to i64
  %3895 = add i64 %3894, 56
  %3896 = call i32 @i32_load(ptr noundef %3892, i64 noundef %3895)
  store i32 %3896, ptr %48, align 4, !tbaa !9
  %3897 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3897, ptr %7, align 4, !tbaa !9
  br label %3898

3898:                                             ; preds = %3879, %3831
  %3899 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3899, ptr %48, align 4, !tbaa !9
  %3900 = load ptr, ptr %5, align 8, !tbaa !5
  %3901 = getelementptr inbounds %struct.w2c_hermes, ptr %3900, i32 0, i32 6
  %3902 = load i32, ptr %48, align 4, !tbaa !9
  %3903 = zext i32 %3902 to i64
  %3904 = add i64 %3903, 52
  %3905 = call i32 @i32_load(ptr noundef %3901, i64 noundef %3904)
  store i32 %3905, ptr %48, align 4, !tbaa !9
  %3906 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3906, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %3907 = load i32, ptr %50, align 4, !tbaa !9
  %3908 = and i32 %3907, 31
  %3909 = load i32, ptr %49, align 4, !tbaa !9
  %3910 = shl i32 %3909, %3908
  store i32 %3910, ptr %49, align 4, !tbaa !9
  %3911 = load i32, ptr %49, align 4, !tbaa !9
  %3912 = load i32, ptr %48, align 4, !tbaa !9
  %3913 = add i32 %3912, %3911
  store i32 %3913, ptr %48, align 4, !tbaa !9
  %3914 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3914, ptr %49, align 4, !tbaa !9
  %3915 = load ptr, ptr %5, align 8, !tbaa !5
  %3916 = getelementptr inbounds %struct.w2c_hermes, ptr %3915, i32 0, i32 6
  %3917 = load i32, ptr %48, align 4, !tbaa !9
  %3918 = zext i32 %3917 to i64
  %3919 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3916, i64 noundef %3918, i32 noundef %3919)
  %3920 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3920, ptr %48, align 4, !tbaa !9
  %3921 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3921, ptr %49, align 4, !tbaa !9
  %3922 = load ptr, ptr %5, align 8, !tbaa !5
  %3923 = getelementptr inbounds %struct.w2c_hermes, ptr %3922, i32 0, i32 6
  %3924 = load i32, ptr %49, align 4, !tbaa !9
  %3925 = zext i32 %3924 to i64
  %3926 = add i64 %3925, 56
  %3927 = call i32 @i32_load(ptr noundef %3923, i64 noundef %3926)
  store i32 %3927, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %3928 = load i32, ptr %50, align 4, !tbaa !9
  %3929 = load i32, ptr %49, align 4, !tbaa !9
  %3930 = add i32 %3929, %3928
  store i32 %3930, ptr %49, align 4, !tbaa !9
  %3931 = load ptr, ptr %5, align 8, !tbaa !5
  %3932 = getelementptr inbounds %struct.w2c_hermes, ptr %3931, i32 0, i32 6
  %3933 = load i32, ptr %48, align 4, !tbaa !9
  %3934 = zext i32 %3933 to i64
  %3935 = add i64 %3934, 56
  %3936 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3932, i64 noundef %3935, i32 noundef %3936)
  %3937 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3937, ptr %48, align 4, !tbaa !9
  %3938 = load ptr, ptr %5, align 8, !tbaa !5
  %3939 = getelementptr inbounds %struct.w2c_hermes, ptr %3938, i32 0, i32 6
  %3940 = load i32, ptr %48, align 4, !tbaa !9
  %3941 = zext i32 %3940 to i64
  %3942 = add i64 %3941, 8
  %3943 = call i32 @i32_load(ptr noundef %3939, i64 noundef %3942)
  store i32 %3943, ptr %48, align 4, !tbaa !9
  %3944 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3944, ptr %11, align 4, !tbaa !9
  %3945 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3945, ptr %48, align 4, !tbaa !9
  %3946 = load ptr, ptr %5, align 8, !tbaa !5
  %3947 = getelementptr inbounds %struct.w2c_hermes, ptr %3946, i32 0, i32 6
  %3948 = load i32, ptr %48, align 4, !tbaa !9
  %3949 = zext i32 %3948 to i64
  %3950 = add i64 %3949, 12
  %3951 = call i32 @i32_load(ptr noundef %3947, i64 noundef %3950)
  store i32 %3951, ptr %48, align 4, !tbaa !9
  %3952 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3952, ptr %7, align 4, !tbaa !9
  %3953 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3953, ptr %49, align 4, !tbaa !9
  %3954 = load ptr, ptr %5, align 8, !tbaa !5
  %3955 = getelementptr inbounds %struct.w2c_hermes, ptr %3954, i32 0, i32 6
  %3956 = load i32, ptr %49, align 4, !tbaa !9
  %3957 = zext i32 %3956 to i64
  %3958 = add i64 %3957, 16
  %3959 = call i32 @i32_load(ptr noundef %3955, i64 noundef %3958)
  store i32 %3959, ptr %49, align 4, !tbaa !9
  %3960 = load i32, ptr %48, align 4, !tbaa !9
  %3961 = load i32, ptr %49, align 4, !tbaa !9
  %3962 = icmp uge i32 %3960, %3961
  %3963 = zext i1 %3962 to i32
  store i32 %3963, ptr %48, align 4, !tbaa !9
  %3964 = load i32, ptr %48, align 4, !tbaa !9
  %3965 = icmp ne i32 %3964, 0
  br i1 %3965, label %3966, label %3985

3966:                                             ; preds = %3898
  %3967 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3967, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %3968 = load i32, ptr %49, align 4, !tbaa !9
  %3969 = load i32, ptr %48, align 4, !tbaa !9
  %3970 = add i32 %3969, %3968
  store i32 %3970, ptr %48, align 4, !tbaa !9
  %3971 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %3971, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %3972 = load ptr, ptr %5, align 8, !tbaa !5
  %3973 = load i32, ptr %48, align 4, !tbaa !9
  %3974 = load i32, ptr %49, align 4, !tbaa !9
  %3975 = load i32, ptr %50, align 4, !tbaa !9
  %3976 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %3972, i32 noundef %3973, i32 noundef %3974, i32 noundef %3975, i32 noundef %3976)
  %3977 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3977, ptr %48, align 4, !tbaa !9
  %3978 = load ptr, ptr %5, align 8, !tbaa !5
  %3979 = getelementptr inbounds %struct.w2c_hermes, ptr %3978, i32 0, i32 6
  %3980 = load i32, ptr %48, align 4, !tbaa !9
  %3981 = zext i32 %3980 to i64
  %3982 = add i64 %3981, 12
  %3983 = call i32 @i32_load(ptr noundef %3979, i64 noundef %3982)
  store i32 %3983, ptr %48, align 4, !tbaa !9
  %3984 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %3984, ptr %7, align 4, !tbaa !9
  br label %3985

3985:                                             ; preds = %3966, %3898
  %3986 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %3986, ptr %48, align 4, !tbaa !9
  %3987 = load ptr, ptr %5, align 8, !tbaa !5
  %3988 = getelementptr inbounds %struct.w2c_hermes, ptr %3987, i32 0, i32 6
  %3989 = load i32, ptr %48, align 4, !tbaa !9
  %3990 = zext i32 %3989 to i64
  %3991 = add i64 %3990, 8
  %3992 = call i32 @i32_load(ptr noundef %3988, i64 noundef %3991)
  store i32 %3992, ptr %48, align 4, !tbaa !9
  %3993 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3993, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %3994 = load i32, ptr %50, align 4, !tbaa !9
  %3995 = and i32 %3994, 31
  %3996 = load i32, ptr %49, align 4, !tbaa !9
  %3997 = shl i32 %3996, %3995
  store i32 %3997, ptr %49, align 4, !tbaa !9
  %3998 = load i32, ptr %49, align 4, !tbaa !9
  %3999 = load i32, ptr %48, align 4, !tbaa !9
  %4000 = add i32 %3999, %3998
  store i32 %4000, ptr %48, align 4, !tbaa !9
  %4001 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4001, ptr %49, align 4, !tbaa !9
  %4002 = load ptr, ptr %5, align 8, !tbaa !5
  %4003 = getelementptr inbounds %struct.w2c_hermes, ptr %4002, i32 0, i32 6
  %4004 = load i32, ptr %48, align 4, !tbaa !9
  %4005 = zext i32 %4004 to i64
  %4006 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4003, i64 noundef %4005, i32 noundef %4006)
  %4007 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4007, ptr %48, align 4, !tbaa !9
  %4008 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4008, ptr %49, align 4, !tbaa !9
  %4009 = load ptr, ptr %5, align 8, !tbaa !5
  %4010 = getelementptr inbounds %struct.w2c_hermes, ptr %4009, i32 0, i32 6
  %4011 = load i32, ptr %49, align 4, !tbaa !9
  %4012 = zext i32 %4011 to i64
  %4013 = add i64 %4012, 12
  %4014 = call i32 @i32_load(ptr noundef %4010, i64 noundef %4013)
  store i32 %4014, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %4015 = load i32, ptr %50, align 4, !tbaa !9
  %4016 = load i32, ptr %49, align 4, !tbaa !9
  %4017 = add i32 %4016, %4015
  store i32 %4017, ptr %49, align 4, !tbaa !9
  %4018 = load ptr, ptr %5, align 8, !tbaa !5
  %4019 = getelementptr inbounds %struct.w2c_hermes, ptr %4018, i32 0, i32 6
  %4020 = load i32, ptr %48, align 4, !tbaa !9
  %4021 = zext i32 %4020 to i64
  %4022 = add i64 %4021, 12
  %4023 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4019, i64 noundef %4022, i32 noundef %4023)
  %4024 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4024, ptr %48, align 4, !tbaa !9
  %4025 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4025, ptr %49, align 4, !tbaa !9
  %4026 = load ptr, ptr %5, align 8, !tbaa !5
  %4027 = load i32, ptr %48, align 4, !tbaa !9
  %4028 = load i32, ptr %49, align 4, !tbaa !9
  %4029 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %4026, i32 noundef %4027, i32 noundef %4028)
  store i32 %4029, ptr %48, align 4, !tbaa !9
  %4030 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4030, ptr %48, align 4, !tbaa !9
  %4031 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4031, ptr %49, align 4, !tbaa !9
  %4032 = load ptr, ptr %5, align 8, !tbaa !5
  %4033 = getelementptr inbounds %struct.w2c_hermes, ptr %4032, i32 0, i32 6
  %4034 = load i32, ptr %48, align 4, !tbaa !9
  %4035 = zext i32 %4034 to i64
  %4036 = add i64 %4035, 8
  %4037 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4033, i64 noundef %4036, i32 noundef %4037)
  %4038 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4038, ptr %48, align 4, !tbaa !9
  %4039 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4039, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %4040 = load i32, ptr %50, align 4, !tbaa !9
  %4041 = load i32, ptr %49, align 4, !tbaa !9
  %4042 = add i32 %4041, %4040
  store i32 %4042, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %4043 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4043, ptr %51, align 4, !tbaa !9
  %4044 = load i32, ptr %51, align 4, !tbaa !9
  %4045 = icmp ne i32 %4044, 0
  br i1 %4045, label %4046, label %4048

4046:                                             ; preds = %3985
  %4047 = load i32, ptr %49, align 4, !tbaa !9
  br label %4050

4048:                                             ; preds = %3985
  %4049 = load i32, ptr %50, align 4, !tbaa !9
  br label %4050

4050:                                             ; preds = %4048, %4046
  %4051 = phi i32 [ %4047, %4046 ], [ %4049, %4048 ]
  store i32 %4051, ptr %49, align 4, !tbaa !9
  %4052 = load ptr, ptr %5, align 8, !tbaa !5
  %4053 = getelementptr inbounds %struct.w2c_hermes, ptr %4052, i32 0, i32 6
  %4054 = load i32, ptr %48, align 4, !tbaa !9
  %4055 = zext i32 %4054 to i64
  %4056 = add i64 %4055, 4
  %4057 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4053, i64 noundef %4056, i32 noundef %4057)
  %4058 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4058, ptr %48, align 4, !tbaa !9
  %4059 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4059, ptr %49, align 4, !tbaa !9
  store i32 52, ptr %50, align 4, !tbaa !9
  %4060 = load i32, ptr %50, align 4, !tbaa !9
  %4061 = load i32, ptr %49, align 4, !tbaa !9
  %4062 = add i32 %4061, %4060
  store i32 %4062, ptr %49, align 4, !tbaa !9
  %4063 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4063, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %4064 = load i32, ptr %51, align 4, !tbaa !9
  %4065 = load i32, ptr %50, align 4, !tbaa !9
  %4066 = add i32 %4065, %4064
  store i32 %4066, ptr %50, align 4, !tbaa !9
  %4067 = load ptr, ptr %5, align 8, !tbaa !5
  %4068 = load i32, ptr %48, align 4, !tbaa !9
  %4069 = load i32, ptr %49, align 4, !tbaa !9
  %4070 = load i32, ptr %50, align 4, !tbaa !9
  %4071 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreatePhiInst0x28llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3AValue0x2A0x2C0x208u0x3E0x20const0x260x2C0x20llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3ABasicBlock0x2A0x2C0x208u0x3E0x20const0x260x29(ptr noundef %4067, i32 noundef %4068, i32 noundef %4069, i32 noundef %4070)
  store i32 %4071, ptr %48, align 4, !tbaa !9
  %4072 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %4072, ptr %7, align 4, !tbaa !9
  %4073 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %4073, ptr %48, align 4, !tbaa !9
  %4074 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4074, ptr %49, align 4, !tbaa !9
  %4075 = load ptr, ptr %5, align 8, !tbaa !5
  %4076 = getelementptr inbounds %struct.w2c_hermes, ptr %4075, i32 0, i32 6
  %4077 = load i32, ptr %49, align 4, !tbaa !9
  %4078 = zext i32 %4077 to i64
  %4079 = add i64 %4078, 8
  %4080 = call i32 @i32_load(ptr noundef %4076, i64 noundef %4079)
  store i32 %4080, ptr %49, align 4, !tbaa !9
  %4081 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %4081, ptr %9, align 4, !tbaa !9
  %4082 = load i32, ptr %48, align 4, !tbaa !9
  %4083 = load i32, ptr %49, align 4, !tbaa !9
  %4084 = icmp ne i32 %4082, %4083
  %4085 = zext i1 %4084 to i32
  store i32 %4085, ptr %48, align 4, !tbaa !9
  %4086 = load i32, ptr %48, align 4, !tbaa !9
  %4087 = icmp ne i32 %4086, 0
  br i1 %4087, label %4088, label %4092

4088:                                             ; preds = %4050
  %4089 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4089, ptr %48, align 4, !tbaa !9
  %4090 = load ptr, ptr %5, align 8, !tbaa !5
  %4091 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %4090, i32 noundef %4091)
  br label %4092

4092:                                             ; preds = %4088, %4050
  %4093 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4093, ptr %48, align 4, !tbaa !9
  %4094 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4094, ptr %49, align 4, !tbaa !9
  %4095 = load ptr, ptr %5, align 8, !tbaa !5
  %4096 = getelementptr inbounds %struct.w2c_hermes, ptr %4095, i32 0, i32 6
  %4097 = load i32, ptr %49, align 4, !tbaa !9
  %4098 = zext i32 %4097 to i64
  %4099 = add i64 %4098, 52
  %4100 = call i32 @i32_load(ptr noundef %4096, i64 noundef %4099)
  store i32 %4100, ptr %49, align 4, !tbaa !9
  %4101 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %4101, ptr %9, align 4, !tbaa !9
  %4102 = load i32, ptr %48, align 4, !tbaa !9
  %4103 = load i32, ptr %49, align 4, !tbaa !9
  %4104 = icmp ne i32 %4102, %4103
  %4105 = zext i1 %4104 to i32
  store i32 %4105, ptr %48, align 4, !tbaa !9
  %4106 = load i32, ptr %48, align 4, !tbaa !9
  %4107 = icmp ne i32 %4106, 0
  br i1 %4107, label %4108, label %4112

4108:                                             ; preds = %4092
  %4109 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4109, ptr %48, align 4, !tbaa !9
  %4110 = load ptr, ptr %5, align 8, !tbaa !5
  %4111 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %4110, i32 noundef %4111)
  br label %4112

4112:                                             ; preds = %4108, %4092
  %4113 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4113, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %4114 = load i32, ptr %49, align 4, !tbaa !9
  %4115 = load i32, ptr %48, align 4, !tbaa !9
  %4116 = add i32 %4115, %4114
  store i32 %4116, ptr %48, align 4, !tbaa !9
  %4117 = load i32, ptr %48, align 4, !tbaa !9
  %4118 = load ptr, ptr %5, align 8, !tbaa !5
  %4119 = getelementptr inbounds %struct.w2c_hermes, ptr %4118, i32 0, i32 3
  store i32 %4117, ptr %4119, align 8, !tbaa !15
  %4120 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4120, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %4121 = load i32, ptr %49, align 4, !tbaa !9
  %4122 = load i32, ptr %48, align 4, !tbaa !9
  %4123 = add i32 %4122, %4121
  store i32 %4123, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %4124 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4124, ptr %50, align 4, !tbaa !9
  %4125 = load i32, ptr %50, align 4, !tbaa !9
  %4126 = icmp ne i32 %4125, 0
  br i1 %4126, label %4127, label %4129

4127:                                             ; preds = %4112
  %4128 = load i32, ptr %48, align 4, !tbaa !9
  br label %4131

4129:                                             ; preds = %4112
  %4130 = load i32, ptr %49, align 4, !tbaa !9
  br label %4131

4131:                                             ; preds = %4129, %4127
  %4132 = phi i32 [ %4128, %4127 ], [ %4130, %4129 ]
  store i32 %4132, ptr %48, align 4, !tbaa !9
  %4133 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %4133, ptr %11, align 4, !tbaa !9
  br label %4227

4134:                                             ; preds = %3495
  %4135 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4135, ptr %48, align 4, !tbaa !9
  store i32 76, ptr %49, align 4, !tbaa !9
  %4136 = load i32, ptr %49, align 4, !tbaa !9
  %4137 = load i32, ptr %48, align 4, !tbaa !9
  %4138 = add i32 %4137, %4136
  store i32 %4138, ptr %48, align 4, !tbaa !9
  %4139 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %4139, ptr %8, align 4, !tbaa !9
  %4140 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4140, ptr %49, align 4, !tbaa !9
  store i32 4, ptr %50, align 4, !tbaa !9
  %4141 = load i32, ptr %50, align 4, !tbaa !9
  %4142 = load i32, ptr %49, align 4, !tbaa !9
  %4143 = add i32 %4142, %4141
  store i32 %4143, ptr %49, align 4, !tbaa !9
  %4144 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4144, ptr %50, align 4, !tbaa !9
  %4145 = load ptr, ptr %5, align 8, !tbaa !5
  %4146 = load i32, ptr %50, align 4, !tbaa !9
  %4147 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitLoad0x280x29(ptr noundef %4145, i32 noundef %4146)
  store i32 %4147, ptr %50, align 4, !tbaa !9
  %4148 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4148, ptr %51, align 4, !tbaa !9
  %4149 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4149, ptr %52, align 4, !tbaa !9
  %4150 = load ptr, ptr %5, align 8, !tbaa !5
  %4151 = getelementptr inbounds %struct.w2c_hermes, ptr %4150, i32 0, i32 6
  %4152 = load i32, ptr %52, align 4, !tbaa !9
  %4153 = zext i32 %4152 to i64
  %4154 = add i64 %4153, 36
  %4155 = call i32 @i32_load(ptr noundef %4151, i64 noundef %4154)
  store i32 %4155, ptr %52, align 4, !tbaa !9
  %4156 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4156, ptr %53, align 4, !tbaa !9
  %4157 = load ptr, ptr %5, align 8, !tbaa !5
  %4158 = load i32, ptr %51, align 4, !tbaa !9
  %4159 = load i32, ptr %52, align 4, !tbaa !9
  %4160 = load i32, ptr %53, align 4, !tbaa !9
  %4161 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %4157, i32 noundef %4158, i32 noundef %4159, i32 noundef %4160)
  store i32 %4161, ptr %51, align 4, !tbaa !9
  %4162 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4162, ptr %52, align 4, !tbaa !9
  %4163 = load ptr, ptr %5, align 8, !tbaa !5
  %4164 = load i32, ptr %49, align 4, !tbaa !9
  %4165 = load i32, ptr %50, align 4, !tbaa !9
  %4166 = load i32, ptr %51, align 4, !tbaa !9
  %4167 = load i32, ptr %52, align 4, !tbaa !9
  %4168 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %4163, i32 noundef %4164, i32 noundef %4165, i32 noundef %4166, i32 noundef %4167)
  store i32 %4168, ptr %49, align 4, !tbaa !9
  %4169 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %4169, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %4170 = load i32, ptr %50, align 4, !tbaa !9
  %4171 = load i32, ptr %49, align 4, !tbaa !9
  %4172 = add i32 %4171, %4170
  store i32 %4172, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %4173 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4173, ptr %51, align 4, !tbaa !9
  %4174 = load i32, ptr %51, align 4, !tbaa !9
  %4175 = icmp ne i32 %4174, 0
  br i1 %4175, label %4176, label %4178

4176:                                             ; preds = %4134
  %4177 = load i32, ptr %49, align 4, !tbaa !9
  br label %4180

4178:                                             ; preds = %4134
  %4179 = load i32, ptr %50, align 4, !tbaa !9
  br label %4180

4180:                                             ; preds = %4178, %4176
  %4181 = phi i32 [ %4177, %4176 ], [ %4179, %4178 ]
  store i32 %4181, ptr %49, align 4, !tbaa !9
  %4182 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %4182, ptr %11, align 4, !tbaa !9
  %4183 = load ptr, ptr %5, align 8, !tbaa !5
  %4184 = load i32, ptr %48, align 4, !tbaa !9
  %4185 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %4183, i32 noundef %4184, i32 noundef %4185)
  br label %4227

4186:                                             ; preds = %2571, %2418
  %4187 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4187, ptr %48, align 4, !tbaa !9
  %4188 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4188, ptr %49, align 4, !tbaa !9
  %4189 = load ptr, ptr %5, align 8, !tbaa !5
  %4190 = getelementptr inbounds %struct.w2c_hermes, ptr %4189, i32 0, i32 6
  %4191 = load i32, ptr %49, align 4, !tbaa !9
  %4192 = zext i32 %4191 to i64
  %4193 = add i64 %4192, 76
  %4194 = call i32 @i32_load(ptr noundef %4190, i64 noundef %4193)
  store i32 %4194, ptr %49, align 4, !tbaa !9
  %4195 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %4195, ptr %7, align 4, !tbaa !9
  %4196 = load i32, ptr %48, align 4, !tbaa !9
  %4197 = load i32, ptr %49, align 4, !tbaa !9
  %4198 = icmp ne i32 %4196, %4197
  %4199 = zext i1 %4198 to i32
  store i32 %4199, ptr %48, align 4, !tbaa !9
  %4200 = load i32, ptr %48, align 4, !tbaa !9
  %4201 = icmp ne i32 %4200, 0
  br i1 %4201, label %4202, label %4206

4202:                                             ; preds = %4186
  %4203 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4203, ptr %48, align 4, !tbaa !9
  %4204 = load ptr, ptr %5, align 8, !tbaa !5
  %4205 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %4204, i32 noundef %4205)
  br label %4206

4206:                                             ; preds = %4202, %4186
  %4207 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4207, ptr %48, align 4, !tbaa !9
  %4208 = load ptr, ptr %5, align 8, !tbaa !5
  %4209 = getelementptr inbounds %struct.w2c_hermes, ptr %4208, i32 0, i32 6
  %4210 = load i32, ptr %48, align 4, !tbaa !9
  %4211 = zext i32 %4210 to i64
  %4212 = add i64 %4211, 112
  %4213 = call i32 @i32_load(ptr noundef %4209, i64 noundef %4212)
  store i32 %4213, ptr %48, align 4, !tbaa !9
  %4214 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %4214, ptr %7, align 4, !tbaa !9
  %4215 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4215, ptr %49, align 4, !tbaa !9
  %4216 = load i32, ptr %48, align 4, !tbaa !9
  %4217 = load i32, ptr %49, align 4, !tbaa !9
  %4218 = icmp eq i32 %4216, %4217
  %4219 = zext i1 %4218 to i32
  store i32 %4219, ptr %48, align 4, !tbaa !9
  %4220 = load i32, ptr %48, align 4, !tbaa !9
  %4221 = icmp ne i32 %4220, 0
  br i1 %4221, label %4222, label %4223

4222:                                             ; preds = %4206
  br label %4227

4223:                                             ; preds = %4206
  %4224 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4224, ptr %48, align 4, !tbaa !9
  %4225 = load ptr, ptr %5, align 8, !tbaa !5
  %4226 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %4225, i32 noundef %4226)
  br label %4227

4227:                                             ; preds = %4223, %4222, %4180, %4131
  %4228 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4228, ptr %48, align 4, !tbaa !9
  store i32 128, ptr %49, align 4, !tbaa !9
  %4229 = load i32, ptr %49, align 4, !tbaa !9
  %4230 = load i32, ptr %48, align 4, !tbaa !9
  %4231 = add i32 %4230, %4229
  store i32 %4231, ptr %48, align 4, !tbaa !9
  %4232 = load i32, ptr %48, align 4, !tbaa !9
  %4233 = load ptr, ptr %5, align 8, !tbaa !5
  %4234 = getelementptr inbounds %struct.w2c_hermes, ptr %4233, i32 0, i32 3
  store i32 %4232, ptr %4234, align 8, !tbaa !15
  %4235 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4235, ptr %48, align 4, !tbaa !9
  br label %22463

4236:                                             ; preds = %1891, %1882
  %4237 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4237, ptr %48, align 4, !tbaa !9
  %4238 = load i32, ptr %48, align 4, !tbaa !9
  %4239 = icmp ne i32 %4238, 0
  %4240 = xor i1 %4239, true
  %4241 = zext i1 %4240 to i32
  store i32 %4241, ptr %48, align 4, !tbaa !9
  %4242 = load i32, ptr %48, align 4, !tbaa !9
  %4243 = icmp ne i32 %4242, 0
  br i1 %4243, label %4244, label %4245

4244:                                             ; preds = %4236
  br label %5403

4245:                                             ; preds = %4236
  %4246 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4246, ptr %48, align 4, !tbaa !9
  store i32 47, ptr %49, align 4, !tbaa !9
  %4247 = load i32, ptr %48, align 4, !tbaa !9
  %4248 = load i32, ptr %49, align 4, !tbaa !9
  %4249 = icmp ne i32 %4247, %4248
  %4250 = zext i1 %4249 to i32
  store i32 %4250, ptr %48, align 4, !tbaa !9
  %4251 = load i32, ptr %48, align 4, !tbaa !9
  %4252 = icmp ne i32 %4251, 0
  br i1 %4252, label %4253, label %4254

4253:                                             ; preds = %4245
  br label %5403

4254:                                             ; preds = %4245
  %4255 = load ptr, ptr %5, align 8, !tbaa !5
  %4256 = getelementptr inbounds %struct.w2c_hermes, ptr %4255, i32 0, i32 3
  %4257 = load i32, ptr %4256, align 8, !tbaa !15
  store i32 %4257, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %4258 = load i32, ptr %49, align 4, !tbaa !9
  %4259 = load i32, ptr %48, align 4, !tbaa !9
  %4260 = sub i32 %4259, %4258
  store i32 %4260, ptr %48, align 4, !tbaa !9
  %4261 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %4261, ptr %15, align 4, !tbaa !9
  %4262 = load i32, ptr %48, align 4, !tbaa !9
  %4263 = load ptr, ptr %5, align 8, !tbaa !5
  %4264 = getelementptr inbounds %struct.w2c_hermes, ptr %4263, i32 0, i32 3
  store i32 %4262, ptr %4264, align 8, !tbaa !15
  %4265 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4265, ptr %48, align 4, !tbaa !9
  %4266 = load ptr, ptr %5, align 8, !tbaa !5
  %4267 = getelementptr inbounds %struct.w2c_hermes, ptr %4266, i32 0, i32 6
  %4268 = load i32, ptr %48, align 4, !tbaa !9
  %4269 = zext i32 %4268 to i64
  %4270 = add i64 %4269, 28
  %4271 = call i32 @i32_load(ptr noundef %4267, i64 noundef %4270)
  store i32 %4271, ptr %48, align 4, !tbaa !9
  %4272 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %4272, ptr %8, align 4, !tbaa !9
  %4273 = load ptr, ptr %5, align 8, !tbaa !5
  %4274 = getelementptr inbounds %struct.w2c_hermes, ptr %4273, i32 0, i32 6
  %4275 = load i32, ptr %48, align 4, !tbaa !9
  %4276 = zext i32 %4275 to i64
  %4277 = add i64 %4276, 8
  %4278 = call i32 @i32_load(ptr noundef %4274, i64 noundef %4277)
  store i32 %4278, ptr %48, align 4, !tbaa !9
  %4279 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %4279, ptr %16, align 4, !tbaa !9
  %4280 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4280, ptr %48, align 4, !tbaa !9
  %4281 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4281, ptr %49, align 4, !tbaa !9
  %4282 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4282, ptr %50, align 4, !tbaa !9
  %4283 = load i32, ptr %50, align 4, !tbaa !9
  %4284 = icmp ne i32 %4283, 0
  %4285 = xor i1 %4284, true
  %4286 = zext i1 %4285 to i32
  store i32 %4286, ptr %50, align 4, !tbaa !9
  %4287 = load i32, ptr %50, align 4, !tbaa !9
  %4288 = icmp ne i32 %4287, 0
  br i1 %4288, label %4289, label %4290

4289:                                             ; preds = %4254
  br label %5253

4290:                                             ; preds = %4254
  %4291 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %4291, ptr %50, align 4, !tbaa !9
  store i32 62, ptr %51, align 4, !tbaa !9
  %4292 = load i32, ptr %50, align 4, !tbaa !9
  %4293 = load i32, ptr %51, align 4, !tbaa !9
  %4294 = icmp ne i32 %4292, %4293
  %4295 = zext i1 %4294 to i32
  store i32 %4295, ptr %50, align 4, !tbaa !9
  %4296 = load i32, ptr %50, align 4, !tbaa !9
  %4297 = icmp ne i32 %4296, 0
  br i1 %4297, label %4298, label %4299

4298:                                             ; preds = %4290
  br label %5253

4299:                                             ; preds = %4290
  %4300 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4300, ptr %50, align 4, !tbaa !9
  %4301 = load ptr, ptr %5, align 8, !tbaa !5
  %4302 = getelementptr inbounds %struct.w2c_hermes, ptr %4301, i32 0, i32 6
  %4303 = load i32, ptr %50, align 4, !tbaa !9
  %4304 = zext i32 %4303 to i64
  %4305 = add i64 %4304, 28
  %4306 = call i32 @i32_load(ptr noundef %4302, i64 noundef %4305)
  store i32 %4306, ptr %50, align 4, !tbaa !9
  %4307 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4307, ptr %9, align 4, !tbaa !9
  %4308 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4308, ptr %51, align 4, !tbaa !9
  %4309 = load ptr, ptr %5, align 8, !tbaa !5
  %4310 = getelementptr inbounds %struct.w2c_hermes, ptr %4309, i32 0, i32 6
  %4311 = load i32, ptr %51, align 4, !tbaa !9
  %4312 = zext i32 %4311 to i64
  %4313 = add i64 %4312, 72
  %4314 = call i32 @i32_load(ptr noundef %4310, i64 noundef %4313)
  store i32 %4314, ptr %51, align 4, !tbaa !9
  %4315 = load i32, ptr %50, align 4, !tbaa !9
  %4316 = load i32, ptr %51, align 4, !tbaa !9
  %4317 = icmp ne i32 %4315, %4316
  %4318 = zext i1 %4317 to i32
  store i32 %4318, ptr %50, align 4, !tbaa !9
  %4319 = load i32, ptr %50, align 4, !tbaa !9
  %4320 = icmp ne i32 %4319, 0
  br i1 %4320, label %4321, label %4322

4321:                                             ; preds = %4299
  br label %5360

4322:                                             ; preds = %4299
  %4323 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4323, ptr %50, align 4, !tbaa !9
  %4324 = load ptr, ptr %5, align 8, !tbaa !5
  %4325 = getelementptr inbounds %struct.w2c_hermes, ptr %4324, i32 0, i32 6
  %4326 = load i32, ptr %50, align 4, !tbaa !9
  %4327 = zext i32 %4326 to i64
  %4328 = add i64 %4327, 44
  %4329 = call i32 @i32_load(ptr noundef %4325, i64 noundef %4328)
  store i32 %4329, ptr %50, align 4, !tbaa !9
  %4330 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4330, ptr %11, align 4, !tbaa !9
  %4331 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4331, ptr %50, align 4, !tbaa !9
  %4332 = load ptr, ptr %5, align 8, !tbaa !5
  %4333 = getelementptr inbounds %struct.w2c_hermes, ptr %4332, i32 0, i32 6
  %4334 = load i32, ptr %50, align 4, !tbaa !9
  %4335 = zext i32 %4334 to i64
  %4336 = add i64 %4335, 56
  %4337 = call i32 @i32_load(ptr noundef %4333, i64 noundef %4336)
  store i32 %4337, ptr %50, align 4, !tbaa !9
  %4338 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4338, ptr %17, align 4, !tbaa !9
  %4339 = load i32, ptr %50, align 4, !tbaa !9
  %4340 = icmp ne i32 %4339, 0
  %4341 = xor i1 %4340, true
  %4342 = zext i1 %4341 to i32
  store i32 %4342, ptr %50, align 4, !tbaa !9
  %4343 = load i32, ptr %50, align 4, !tbaa !9
  %4344 = icmp ne i32 %4343, 0
  br i1 %4344, label %4345, label %4346

4345:                                             ; preds = %4322
  br label %4445

4346:                                             ; preds = %4322
  %4347 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4347, ptr %50, align 4, !tbaa !9
  %4348 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4348, ptr %51, align 4, !tbaa !9
  %4349 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4349, ptr %52, align 4, !tbaa !9
  store i32 1, ptr %53, align 4, !tbaa !9
  %4350 = load i32, ptr %53, align 4, !tbaa !9
  %4351 = load i32, ptr %52, align 4, !tbaa !9
  %4352 = sub i32 %4351, %4350
  store i32 %4352, ptr %52, align 4, !tbaa !9
  %4353 = load i32, ptr %52, align 4, !tbaa !9
  store i32 %4353, ptr %18, align 4, !tbaa !9
  %4354 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4354, ptr %53, align 4, !tbaa !9
  store i32 4, ptr %54, align 4, !tbaa !9
  %4355 = load i32, ptr %54, align 4, !tbaa !9
  %4356 = and i32 %4355, 31
  %4357 = load i32, ptr %53, align 4, !tbaa !9
  %4358 = lshr i32 %4357, %4356
  store i32 %4358, ptr %53, align 4, !tbaa !9
  %4359 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4359, ptr %54, align 4, !tbaa !9
  store i32 9, ptr %55, align 4, !tbaa !9
  %4360 = load i32, ptr %55, align 4, !tbaa !9
  %4361 = and i32 %4360, 31
  %4362 = load i32, ptr %54, align 4, !tbaa !9
  %4363 = lshr i32 %4362, %4361
  store i32 %4363, ptr %54, align 4, !tbaa !9
  %4364 = load i32, ptr %54, align 4, !tbaa !9
  %4365 = load i32, ptr %53, align 4, !tbaa !9
  %4366 = xor i32 %4365, %4364
  store i32 %4366, ptr %53, align 4, !tbaa !9
  %4367 = load i32, ptr %53, align 4, !tbaa !9
  %4368 = load i32, ptr %52, align 4, !tbaa !9
  %4369 = and i32 %4368, %4367
  store i32 %4369, ptr %52, align 4, !tbaa !9
  %4370 = load i32, ptr %52, align 4, !tbaa !9
  store i32 %4370, ptr %10, align 4, !tbaa !9
  store i32 3, ptr %53, align 4, !tbaa !9
  %4371 = load i32, ptr %53, align 4, !tbaa !9
  %4372 = and i32 %4371, 31
  %4373 = load i32, ptr %52, align 4, !tbaa !9
  %4374 = shl i32 %4373, %4372
  store i32 %4374, ptr %52, align 4, !tbaa !9
  %4375 = load i32, ptr %52, align 4, !tbaa !9
  %4376 = load i32, ptr %51, align 4, !tbaa !9
  %4377 = add i32 %4376, %4375
  store i32 %4377, ptr %51, align 4, !tbaa !9
  %4378 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %4378, ptr %14, align 4, !tbaa !9
  %4379 = load ptr, ptr %5, align 8, !tbaa !5
  %4380 = getelementptr inbounds %struct.w2c_hermes, ptr %4379, i32 0, i32 6
  %4381 = load i32, ptr %51, align 4, !tbaa !9
  %4382 = zext i32 %4381 to i64
  %4383 = call i32 @i32_load(ptr noundef %4380, i64 noundef %4382)
  store i32 %4383, ptr %51, align 4, !tbaa !9
  %4384 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %4384, ptr %12, align 4, !tbaa !9
  %4385 = load i32, ptr %50, align 4, !tbaa !9
  %4386 = load i32, ptr %51, align 4, !tbaa !9
  %4387 = icmp eq i32 %4385, %4386
  %4388 = zext i1 %4387 to i32
  store i32 %4388, ptr %50, align 4, !tbaa !9
  %4389 = load i32, ptr %50, align 4, !tbaa !9
  %4390 = icmp ne i32 %4389, 0
  br i1 %4390, label %4391, label %4392

4391:                                             ; preds = %4346
  br label %4456

4392:                                             ; preds = %4346
  store i32 1, ptr %50, align 4, !tbaa !9
  %4393 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4393, ptr %13, align 4, !tbaa !9
  br label %4394

4394:                                             ; preds = %4443, %4392
  %4395 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4395, ptr %50, align 4, !tbaa !9
  store i32 -4, ptr %51, align 4, !tbaa !9
  %4396 = load i32, ptr %50, align 4, !tbaa !9
  %4397 = load i32, ptr %51, align 4, !tbaa !9
  %4398 = icmp eq i32 %4396, %4397
  %4399 = zext i1 %4398 to i32
  store i32 %4399, ptr %50, align 4, !tbaa !9
  %4400 = load i32, ptr %50, align 4, !tbaa !9
  %4401 = icmp ne i32 %4400, 0
  br i1 %4401, label %4402, label %4403

4402:                                             ; preds = %4394
  br label %4445

4403:                                             ; preds = %4394
  %4404 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4404, ptr %50, align 4, !tbaa !9
  %4405 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4405, ptr %51, align 4, !tbaa !9
  %4406 = load i32, ptr %51, align 4, !tbaa !9
  %4407 = load i32, ptr %50, align 4, !tbaa !9
  %4408 = add i32 %4407, %4406
  store i32 %4408, ptr %50, align 4, !tbaa !9
  %4409 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4409, ptr %10, align 4, !tbaa !9
  %4410 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %4410, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %4411 = load i32, ptr %51, align 4, !tbaa !9
  %4412 = load i32, ptr %50, align 4, !tbaa !9
  %4413 = add i32 %4412, %4411
  store i32 %4413, ptr %50, align 4, !tbaa !9
  %4414 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4414, ptr %13, align 4, !tbaa !9
  %4415 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4415, ptr %50, align 4, !tbaa !9
  %4416 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4416, ptr %51, align 4, !tbaa !9
  %4417 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4417, ptr %52, align 4, !tbaa !9
  %4418 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4418, ptr %53, align 4, !tbaa !9
  %4419 = load i32, ptr %53, align 4, !tbaa !9
  %4420 = load i32, ptr %52, align 4, !tbaa !9
  %4421 = and i32 %4420, %4419
  store i32 %4421, ptr %52, align 4, !tbaa !9
  %4422 = load i32, ptr %52, align 4, !tbaa !9
  store i32 %4422, ptr %10, align 4, !tbaa !9
  store i32 3, ptr %53, align 4, !tbaa !9
  %4423 = load i32, ptr %53, align 4, !tbaa !9
  %4424 = and i32 %4423, 31
  %4425 = load i32, ptr %52, align 4, !tbaa !9
  %4426 = shl i32 %4425, %4424
  store i32 %4426, ptr %52, align 4, !tbaa !9
  %4427 = load i32, ptr %52, align 4, !tbaa !9
  %4428 = load i32, ptr %51, align 4, !tbaa !9
  %4429 = add i32 %4428, %4427
  store i32 %4429, ptr %51, align 4, !tbaa !9
  %4430 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %4430, ptr %14, align 4, !tbaa !9
  %4431 = load ptr, ptr %5, align 8, !tbaa !5
  %4432 = getelementptr inbounds %struct.w2c_hermes, ptr %4431, i32 0, i32 6
  %4433 = load i32, ptr %51, align 4, !tbaa !9
  %4434 = zext i32 %4433 to i64
  %4435 = call i32 @i32_load(ptr noundef %4432, i64 noundef %4434)
  store i32 %4435, ptr %51, align 4, !tbaa !9
  %4436 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %4436, ptr %12, align 4, !tbaa !9
  %4437 = load i32, ptr %50, align 4, !tbaa !9
  %4438 = load i32, ptr %51, align 4, !tbaa !9
  %4439 = icmp ne i32 %4437, %4438
  %4440 = zext i1 %4439 to i32
  store i32 %4440, ptr %50, align 4, !tbaa !9
  %4441 = load i32, ptr %50, align 4, !tbaa !9
  %4442 = icmp ne i32 %4441, 0
  br i1 %4442, label %4443, label %4444

4443:                                             ; preds = %4403
  br label %4394

4444:                                             ; preds = %4403
  br label %4456

4445:                                             ; preds = %4402, %4345
  %4446 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4446, ptr %50, align 4, !tbaa !9
  %4447 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4447, ptr %51, align 4, !tbaa !9
  store i32 3, ptr %52, align 4, !tbaa !9
  %4448 = load i32, ptr %52, align 4, !tbaa !9
  %4449 = and i32 %4448, 31
  %4450 = load i32, ptr %51, align 4, !tbaa !9
  %4451 = shl i32 %4450, %4449
  store i32 %4451, ptr %51, align 4, !tbaa !9
  %4452 = load i32, ptr %51, align 4, !tbaa !9
  %4453 = load i32, ptr %50, align 4, !tbaa !9
  %4454 = add i32 %4453, %4452
  store i32 %4454, ptr %50, align 4, !tbaa !9
  %4455 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4455, ptr %14, align 4, !tbaa !9
  br label %4456

4456:                                             ; preds = %4445, %4444, %4391
  %4457 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4457, ptr %50, align 4, !tbaa !9
  %4458 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4458, ptr %51, align 4, !tbaa !9
  %4459 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4459, ptr %52, align 4, !tbaa !9
  store i32 3, ptr %53, align 4, !tbaa !9
  %4460 = load i32, ptr %53, align 4, !tbaa !9
  %4461 = and i32 %4460, 31
  %4462 = load i32, ptr %52, align 4, !tbaa !9
  %4463 = shl i32 %4462, %4461
  store i32 %4463, ptr %52, align 4, !tbaa !9
  %4464 = load i32, ptr %52, align 4, !tbaa !9
  %4465 = load i32, ptr %51, align 4, !tbaa !9
  %4466 = add i32 %4465, %4464
  store i32 %4466, ptr %51, align 4, !tbaa !9
  %4467 = load i32, ptr %50, align 4, !tbaa !9
  %4468 = load i32, ptr %51, align 4, !tbaa !9
  %4469 = icmp eq i32 %4467, %4468
  %4470 = zext i1 %4469 to i32
  store i32 %4470, ptr %50, align 4, !tbaa !9
  %4471 = load i32, ptr %50, align 4, !tbaa !9
  %4472 = icmp ne i32 %4471, 0
  br i1 %4472, label %4473, label %4474

4473:                                             ; preds = %4456
  br label %4511

4474:                                             ; preds = %4456
  %4475 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4475, ptr %50, align 4, !tbaa !9
  %4476 = load ptr, ptr %5, align 8, !tbaa !5
  %4477 = getelementptr inbounds %struct.w2c_hermes, ptr %4476, i32 0, i32 6
  %4478 = load i32, ptr %50, align 4, !tbaa !9
  %4479 = zext i32 %4478 to i64
  %4480 = add i64 %4479, 4
  %4481 = call i32 @i32_load(ptr noundef %4477, i64 noundef %4480)
  store i32 %4481, ptr %50, align 4, !tbaa !9
  %4482 = load ptr, ptr %5, align 8, !tbaa !5
  %4483 = getelementptr inbounds %struct.w2c_hermes, ptr %4482, i32 0, i32 6
  %4484 = load i32, ptr %50, align 4, !tbaa !9
  %4485 = zext i32 %4484 to i64
  %4486 = add i64 %4485, 4
  %4487 = call i32 @i32_load(ptr noundef %4483, i64 noundef %4486)
  store i32 %4487, ptr %50, align 4, !tbaa !9
  %4488 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4488, ptr %9, align 4, !tbaa !9
  %4489 = load i32, ptr %50, align 4, !tbaa !9
  %4490 = icmp ne i32 %4489, 0
  %4491 = xor i1 %4490, true
  %4492 = zext i1 %4491 to i32
  store i32 %4492, ptr %50, align 4, !tbaa !9
  %4493 = load i32, ptr %50, align 4, !tbaa !9
  %4494 = icmp ne i32 %4493, 0
  br i1 %4494, label %4495, label %4496

4495:                                             ; preds = %4474
  br label %4511

4496:                                             ; preds = %4474
  %4497 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4497, ptr %50, align 4, !tbaa !9
  %4498 = load ptr, ptr %5, align 8, !tbaa !5
  %4499 = getelementptr inbounds %struct.w2c_hermes, ptr %4498, i32 0, i32 6
  %4500 = load i32, ptr %50, align 4, !tbaa !9
  %4501 = zext i32 %4500 to i64
  %4502 = call i32 @i32_load8_u(ptr noundef %4499, i64 noundef %4501)
  store i32 %4502, ptr %50, align 4, !tbaa !9
  store i32 123, ptr %51, align 4, !tbaa !9
  %4503 = load i32, ptr %50, align 4, !tbaa !9
  %4504 = load i32, ptr %51, align 4, !tbaa !9
  %4505 = icmp ne i32 %4503, %4504
  %4506 = zext i1 %4505 to i32
  store i32 %4506, ptr %50, align 4, !tbaa !9
  %4507 = load i32, ptr %50, align 4, !tbaa !9
  %4508 = icmp ne i32 %4507, 0
  br i1 %4508, label %4509, label %4510

4509:                                             ; preds = %4496
  br label %5253

4510:                                             ; preds = %4496
  br label %4511

4511:                                             ; preds = %4510, %4495, %4473
  %4512 = load ptr, ptr %5, align 8, !tbaa !5
  %4513 = getelementptr inbounds %struct.w2c_hermes, ptr %4512, i32 0, i32 3
  %4514 = load i32, ptr %4513, align 8, !tbaa !15
  store i32 %4514, ptr %50, align 4, !tbaa !9
  store i32 -64, ptr %51, align 4, !tbaa !9
  %4515 = load i32, ptr %51, align 4, !tbaa !9
  %4516 = load i32, ptr %50, align 4, !tbaa !9
  %4517 = add i32 %4516, %4515
  store i32 %4517, ptr %50, align 4, !tbaa !9
  %4518 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4518, ptr %9, align 4, !tbaa !9
  %4519 = load i32, ptr %50, align 4, !tbaa !9
  %4520 = load ptr, ptr %5, align 8, !tbaa !5
  %4521 = getelementptr inbounds %struct.w2c_hermes, ptr %4520, i32 0, i32 3
  store i32 %4519, ptr %4521, align 8, !tbaa !15
  %4522 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4522, ptr %50, align 4, !tbaa !9
  %4523 = load ptr, ptr %5, align 8, !tbaa !5
  %4524 = getelementptr inbounds %struct.w2c_hermes, ptr %4523, i32 0, i32 6
  %4525 = load i32, ptr %50, align 4, !tbaa !9
  %4526 = zext i32 %4525 to i64
  %4527 = add i64 %4526, 16
  %4528 = call i64 @i64_load(ptr noundef %4524, i64 noundef %4527)
  store i64 %4528, ptr %60, align 8, !tbaa !11
  %4529 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %4529, ptr %31, align 8, !tbaa !11
  %4530 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4530, ptr %50, align 4, !tbaa !9
  %4531 = load ptr, ptr %5, align 8, !tbaa !5
  %4532 = getelementptr inbounds %struct.w2c_hermes, ptr %4531, i32 0, i32 6
  %4533 = load i32, ptr %50, align 4, !tbaa !9
  %4534 = zext i32 %4533 to i64
  %4535 = call i32 @i32_load(ptr noundef %4532, i64 noundef %4534)
  store i32 %4535, ptr %50, align 4, !tbaa !9
  %4536 = load ptr, ptr %5, align 8, !tbaa !5
  %4537 = getelementptr inbounds %struct.w2c_hermes, ptr %4536, i32 0, i32 6
  %4538 = load i32, ptr %50, align 4, !tbaa !9
  %4539 = zext i32 %4538 to i64
  %4540 = add i64 %4539, 28
  %4541 = call i32 @i32_load(ptr noundef %4537, i64 noundef %4540)
  store i32 %4541, ptr %50, align 4, !tbaa !9
  %4542 = load ptr, ptr %5, align 8, !tbaa !5
  %4543 = getelementptr inbounds %struct.w2c_hermes, ptr %4542, i32 0, i32 6
  %4544 = load i32, ptr %50, align 4, !tbaa !9
  %4545 = zext i32 %4544 to i64
  %4546 = add i64 %4545, 72
  %4547 = call i32 @i32_load(ptr noundef %4543, i64 noundef %4546)
  store i32 %4547, ptr %50, align 4, !tbaa !9
  %4548 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4548, ptr %8, align 4, !tbaa !9
  %4549 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4549, ptr %50, align 4, !tbaa !9
  store i32 36, ptr %51, align 4, !tbaa !9
  %4550 = load i32, ptr %51, align 4, !tbaa !9
  %4551 = load i32, ptr %50, align 4, !tbaa !9
  %4552 = add i32 %4551, %4550
  store i32 %4552, ptr %50, align 4, !tbaa !9
  %4553 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4553, ptr %11, align 4, !tbaa !9
  %4554 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4554, ptr %51, align 4, !tbaa !9
  %4555 = load ptr, ptr %5, align 8, !tbaa !5
  %4556 = getelementptr inbounds %struct.w2c_hermes, ptr %4555, i32 0, i32 6
  %4557 = load i32, ptr %51, align 4, !tbaa !9
  %4558 = zext i32 %4557 to i64
  %4559 = add i64 %4558, 36
  %4560 = call i32 @i32_load(ptr noundef %4556, i64 noundef %4559)
  store i32 %4560, ptr %51, align 4, !tbaa !9
  %4561 = load i32, ptr %50, align 4, !tbaa !9
  %4562 = load i32, ptr %51, align 4, !tbaa !9
  %4563 = icmp eq i32 %4561, %4562
  %4564 = zext i1 %4563 to i32
  store i32 %4564, ptr %50, align 4, !tbaa !9
  %4565 = load i32, ptr %50, align 4, !tbaa !9
  %4566 = icmp ne i32 %4565, 0
  br i1 %4566, label %4567, label %4624

4567:                                             ; preds = %4511
  %4568 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4568, ptr %50, align 4, !tbaa !9
  store i32 259, ptr %51, align 4, !tbaa !9
  %4569 = load ptr, ptr %5, align 8, !tbaa !5
  %4570 = getelementptr inbounds %struct.w2c_hermes, ptr %4569, i32 0, i32 6
  %4571 = load i32, ptr %50, align 4, !tbaa !9
  %4572 = zext i32 %4571 to i64
  %4573 = add i64 %4572, 48
  %4574 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %4570, i64 noundef %4573, i32 noundef %4574)
  %4575 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4575, ptr %50, align 4, !tbaa !9
  store i32 54441, ptr %51, align 4, !tbaa !9
  %4576 = load ptr, ptr %5, align 8, !tbaa !5
  %4577 = getelementptr inbounds %struct.w2c_hermes, ptr %4576, i32 0, i32 6
  %4578 = load i32, ptr %50, align 4, !tbaa !9
  %4579 = zext i32 %4578 to i64
  %4580 = add i64 %4579, 40
  %4581 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4577, i64 noundef %4580, i32 noundef %4581)
  %4582 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4582, ptr %50, align 4, !tbaa !9
  %4583 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %4583, ptr %61, align 8, !tbaa !11
  %4584 = load ptr, ptr %5, align 8, !tbaa !5
  %4585 = getelementptr inbounds %struct.w2c_hermes, ptr %4584, i32 0, i32 6
  %4586 = load i32, ptr %50, align 4, !tbaa !9
  %4587 = zext i32 %4586 to i64
  %4588 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4585, i64 noundef %4587, i64 noundef %4588)
  %4589 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4589, ptr %50, align 4, !tbaa !9
  %4590 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %4590, ptr %61, align 8, !tbaa !11
  %4591 = load ptr, ptr %5, align 8, !tbaa !5
  %4592 = getelementptr inbounds %struct.w2c_hermes, ptr %4591, i32 0, i32 6
  %4593 = load i32, ptr %50, align 4, !tbaa !9
  %4594 = zext i32 %4593 to i64
  %4595 = add i64 %4594, 24
  %4596 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4592, i64 noundef %4595, i64 noundef %4596)
  %4597 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4597, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %4598 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %4598, ptr %62, align 8, !tbaa !11
  %4599 = load i64, ptr %62, align 8, !tbaa !11
  %4600 = trunc i64 %4599 to i32
  store i32 %4600, ptr %52, align 4, !tbaa !9
  %4601 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4601, ptr %53, align 4, !tbaa !9
  %4602 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4602, ptr %54, align 4, !tbaa !9
  store i32 40, ptr %55, align 4, !tbaa !9
  %4603 = load i32, ptr %55, align 4, !tbaa !9
  %4604 = load i32, ptr %54, align 4, !tbaa !9
  %4605 = add i32 %4604, %4603
  store i32 %4605, ptr %54, align 4, !tbaa !9
  store i32 4, ptr %55, align 4, !tbaa !9
  store i32 0, ptr %56, align 4, !tbaa !9
  %4606 = load ptr, ptr %5, align 8, !tbaa !5
  %4607 = load i32, ptr %50, align 4, !tbaa !9
  %4608 = load i32, ptr %51, align 4, !tbaa !9
  %4609 = load i32, ptr %52, align 4, !tbaa !9
  %4610 = load i32, ptr %53, align 4, !tbaa !9
  %4611 = load i32, ptr %54, align 4, !tbaa !9
  %4612 = load i32, ptr %55, align 4, !tbaa !9
  %4613 = load i32, ptr %56, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3AWarning0x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %4606, i32 noundef %4607, i32 noundef %4608, i32 noundef %4609, i32 noundef %4610, i32 noundef %4611, i32 noundef %4612, i32 noundef %4613)
  %4614 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4614, ptr %50, align 4, !tbaa !9
  %4615 = load ptr, ptr %5, align 8, !tbaa !5
  %4616 = getelementptr inbounds %struct.w2c_hermes, ptr %4615, i32 0, i32 6
  %4617 = load i32, ptr %50, align 4, !tbaa !9
  %4618 = zext i32 %4617 to i64
  %4619 = add i64 %4618, 4
  %4620 = call i32 @i32_load(ptr noundef %4616, i64 noundef %4619)
  store i32 %4620, ptr %50, align 4, !tbaa !9
  store i32 268, ptr %51, align 4, !tbaa !9
  %4621 = load i32, ptr %51, align 4, !tbaa !9
  %4622 = load i32, ptr %50, align 4, !tbaa !9
  %4623 = add i32 %4622, %4621
  store i32 %4623, ptr %50, align 4, !tbaa !9
  br label %5242

4624:                                             ; preds = %4511
  %4625 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4625, ptr %50, align 4, !tbaa !9
  store i32 259, ptr %51, align 4, !tbaa !9
  %4626 = load ptr, ptr %5, align 8, !tbaa !5
  %4627 = getelementptr inbounds %struct.w2c_hermes, ptr %4626, i32 0, i32 6
  %4628 = load i32, ptr %50, align 4, !tbaa !9
  %4629 = zext i32 %4628 to i64
  %4630 = add i64 %4629, 48
  %4631 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %4627, i64 noundef %4630, i32 noundef %4631)
  %4632 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4632, ptr %50, align 4, !tbaa !9
  store i32 58661, ptr %51, align 4, !tbaa !9
  %4633 = load ptr, ptr %5, align 8, !tbaa !5
  %4634 = getelementptr inbounds %struct.w2c_hermes, ptr %4633, i32 0, i32 6
  %4635 = load i32, ptr %50, align 4, !tbaa !9
  %4636 = zext i32 %4635 to i64
  %4637 = add i64 %4636, 40
  %4638 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4634, i64 noundef %4637, i32 noundef %4638)
  %4639 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4639, ptr %50, align 4, !tbaa !9
  %4640 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %4640, ptr %61, align 8, !tbaa !11
  %4641 = load ptr, ptr %5, align 8, !tbaa !5
  %4642 = getelementptr inbounds %struct.w2c_hermes, ptr %4641, i32 0, i32 6
  %4643 = load i32, ptr %50, align 4, !tbaa !9
  %4644 = zext i32 %4643 to i64
  %4645 = add i64 %4644, 16
  %4646 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4642, i64 noundef %4645, i64 noundef %4646)
  %4647 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4647, ptr %50, align 4, !tbaa !9
  %4648 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %4648, ptr %61, align 8, !tbaa !11
  %4649 = load ptr, ptr %5, align 8, !tbaa !5
  %4650 = getelementptr inbounds %struct.w2c_hermes, ptr %4649, i32 0, i32 6
  %4651 = load i32, ptr %50, align 4, !tbaa !9
  %4652 = zext i32 %4651 to i64
  %4653 = add i64 %4652, 24
  %4654 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4650, i64 noundef %4653, i64 noundef %4654)
  %4655 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4655, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %4656 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %4656, ptr %62, align 8, !tbaa !11
  %4657 = load i64, ptr %62, align 8, !tbaa !11
  %4658 = trunc i64 %4657 to i32
  store i32 %4658, ptr %52, align 4, !tbaa !9
  %4659 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4659, ptr %53, align 4, !tbaa !9
  store i32 16, ptr %54, align 4, !tbaa !9
  %4660 = load i32, ptr %54, align 4, !tbaa !9
  %4661 = load i32, ptr %53, align 4, !tbaa !9
  %4662 = add i32 %4661, %4660
  store i32 %4662, ptr %53, align 4, !tbaa !9
  %4663 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4663, ptr %54, align 4, !tbaa !9
  store i32 40, ptr %55, align 4, !tbaa !9
  %4664 = load i32, ptr %55, align 4, !tbaa !9
  %4665 = load i32, ptr %54, align 4, !tbaa !9
  %4666 = add i32 %4665, %4664
  store i32 %4666, ptr %54, align 4, !tbaa !9
  store i32 2, ptr %55, align 4, !tbaa !9
  store i32 0, ptr %56, align 4, !tbaa !9
  %4667 = load ptr, ptr %5, align 8, !tbaa !5
  %4668 = load i32, ptr %50, align 4, !tbaa !9
  %4669 = load i32, ptr %51, align 4, !tbaa !9
  %4670 = load i32, ptr %52, align 4, !tbaa !9
  %4671 = load i32, ptr %53, align 4, !tbaa !9
  %4672 = load i32, ptr %54, align 4, !tbaa !9
  %4673 = load i32, ptr %55, align 4, !tbaa !9
  %4674 = load i32, ptr %56, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3AWarning0x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %4667, i32 noundef %4668, i32 noundef %4669, i32 noundef %4670, i32 noundef %4671, i32 noundef %4672, i32 noundef %4673, i32 noundef %4674)
  %4675 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4675, ptr %50, align 4, !tbaa !9
  store i64 4294967296, ptr %61, align 8, !tbaa !11
  %4676 = load ptr, ptr %5, align 8, !tbaa !5
  %4677 = getelementptr inbounds %struct.w2c_hermes, ptr %4676, i32 0, i32 6
  %4678 = load i32, ptr %50, align 4, !tbaa !9
  %4679 = zext i32 %4678 to i64
  %4680 = add i64 %4679, 44
  %4681 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4677, i64 noundef %4680, i64 noundef %4681)
  %4682 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4682, ptr %50, align 4, !tbaa !9
  %4683 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4683, ptr %51, align 4, !tbaa !9
  store i32 52, ptr %52, align 4, !tbaa !9
  %4684 = load i32, ptr %52, align 4, !tbaa !9
  %4685 = load i32, ptr %51, align 4, !tbaa !9
  %4686 = add i32 %4685, %4684
  store i32 %4686, ptr %51, align 4, !tbaa !9
  %4687 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %4687, ptr %14, align 4, !tbaa !9
  %4688 = load ptr, ptr %5, align 8, !tbaa !5
  %4689 = getelementptr inbounds %struct.w2c_hermes, ptr %4688, i32 0, i32 6
  %4690 = load i32, ptr %50, align 4, !tbaa !9
  %4691 = zext i32 %4690 to i64
  %4692 = add i64 %4691, 40
  %4693 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4689, i64 noundef %4692, i32 noundef %4693)
  %4694 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4694, ptr %50, align 4, !tbaa !9
  %4695 = load ptr, ptr %5, align 8, !tbaa !5
  %4696 = getelementptr inbounds %struct.w2c_hermes, ptr %4695, i32 0, i32 6
  %4697 = load i32, ptr %50, align 4, !tbaa !9
  %4698 = zext i32 %4697 to i64
  %4699 = add i64 %4698, 40
  %4700 = call i32 @i32_load(ptr noundef %4696, i64 noundef %4699)
  store i32 %4700, ptr %50, align 4, !tbaa !9
  %4701 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4701, ptr %8, align 4, !tbaa !9
  %4702 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4702, ptr %51, align 4, !tbaa !9
  %4703 = load i32, ptr %50, align 4, !tbaa !9
  %4704 = load i32, ptr %51, align 4, !tbaa !9
  %4705 = icmp eq i32 %4703, %4704
  %4706 = zext i1 %4705 to i32
  store i32 %4706, ptr %50, align 4, !tbaa !9
  %4707 = load i32, ptr %50, align 4, !tbaa !9
  %4708 = icmp ne i32 %4707, 0
  br i1 %4708, label %4709, label %4710

4709:                                             ; preds = %4624
  br label %4903

4710:                                             ; preds = %4624
  br label %4711

4711:                                             ; preds = %4815, %4710
  %4712 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4712, ptr %50, align 4, !tbaa !9
  %4713 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4713, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %4714 = load ptr, ptr %5, align 8, !tbaa !5
  %4715 = load i32, ptr %50, align 4, !tbaa !9
  %4716 = load i32, ptr %51, align 4, !tbaa !9
  %4717 = load i32, ptr %52, align 4, !tbaa !9
  %4718 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %4714, i32 noundef %4715, i32 noundef %4716, i32 noundef %4717)
  store i32 %4718, ptr %50, align 4, !tbaa !9
  %4719 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4719, ptr %12, align 4, !tbaa !9
  %4720 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4720, ptr %50, align 4, !tbaa !9
  %4721 = load ptr, ptr %5, align 8, !tbaa !5
  %4722 = getelementptr inbounds %struct.w2c_hermes, ptr %4721, i32 0, i32 6
  %4723 = load i32, ptr %50, align 4, !tbaa !9
  %4724 = zext i32 %4723 to i64
  %4725 = add i64 %4724, 44
  %4726 = call i32 @i32_load(ptr noundef %4722, i64 noundef %4725)
  store i32 %4726, ptr %50, align 4, !tbaa !9
  %4727 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4727, ptr %10, align 4, !tbaa !9
  %4728 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4728, ptr %51, align 4, !tbaa !9
  %4729 = load ptr, ptr %5, align 8, !tbaa !5
  %4730 = getelementptr inbounds %struct.w2c_hermes, ptr %4729, i32 0, i32 6
  %4731 = load i32, ptr %51, align 4, !tbaa !9
  %4732 = zext i32 %4731 to i64
  %4733 = add i64 %4732, 48
  %4734 = call i32 @i32_load(ptr noundef %4730, i64 noundef %4733)
  store i32 %4734, ptr %51, align 4, !tbaa !9
  %4735 = load i32, ptr %50, align 4, !tbaa !9
  %4736 = load i32, ptr %51, align 4, !tbaa !9
  %4737 = icmp uge i32 %4735, %4736
  %4738 = zext i1 %4737 to i32
  store i32 %4738, ptr %50, align 4, !tbaa !9
  %4739 = load i32, ptr %50, align 4, !tbaa !9
  %4740 = icmp ne i32 %4739, 0
  br i1 %4740, label %4741, label %4760

4741:                                             ; preds = %4711
  %4742 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4742, ptr %50, align 4, !tbaa !9
  store i32 40, ptr %51, align 4, !tbaa !9
  %4743 = load i32, ptr %51, align 4, !tbaa !9
  %4744 = load i32, ptr %50, align 4, !tbaa !9
  %4745 = add i32 %4744, %4743
  store i32 %4745, ptr %50, align 4, !tbaa !9
  %4746 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4746, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  store i32 4, ptr %53, align 4, !tbaa !9
  %4747 = load ptr, ptr %5, align 8, !tbaa !5
  %4748 = load i32, ptr %50, align 4, !tbaa !9
  %4749 = load i32, ptr %51, align 4, !tbaa !9
  %4750 = load i32, ptr %52, align 4, !tbaa !9
  %4751 = load i32, ptr %53, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %4747, i32 noundef %4748, i32 noundef %4749, i32 noundef %4750, i32 noundef %4751)
  %4752 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4752, ptr %50, align 4, !tbaa !9
  %4753 = load ptr, ptr %5, align 8, !tbaa !5
  %4754 = getelementptr inbounds %struct.w2c_hermes, ptr %4753, i32 0, i32 6
  %4755 = load i32, ptr %50, align 4, !tbaa !9
  %4756 = zext i32 %4755 to i64
  %4757 = add i64 %4756, 44
  %4758 = call i32 @i32_load(ptr noundef %4754, i64 noundef %4757)
  store i32 %4758, ptr %50, align 4, !tbaa !9
  %4759 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4759, ptr %10, align 4, !tbaa !9
  br label %4760

4760:                                             ; preds = %4741, %4711
  %4761 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4761, ptr %50, align 4, !tbaa !9
  %4762 = load ptr, ptr %5, align 8, !tbaa !5
  %4763 = getelementptr inbounds %struct.w2c_hermes, ptr %4762, i32 0, i32 6
  %4764 = load i32, ptr %50, align 4, !tbaa !9
  %4765 = zext i32 %4764 to i64
  %4766 = add i64 %4765, 40
  %4767 = call i32 @i32_load(ptr noundef %4763, i64 noundef %4766)
  store i32 %4767, ptr %50, align 4, !tbaa !9
  %4768 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4768, ptr %51, align 4, !tbaa !9
  store i32 2, ptr %52, align 4, !tbaa !9
  %4769 = load i32, ptr %52, align 4, !tbaa !9
  %4770 = and i32 %4769, 31
  %4771 = load i32, ptr %51, align 4, !tbaa !9
  %4772 = shl i32 %4771, %4770
  store i32 %4772, ptr %51, align 4, !tbaa !9
  %4773 = load i32, ptr %51, align 4, !tbaa !9
  %4774 = load i32, ptr %50, align 4, !tbaa !9
  %4775 = add i32 %4774, %4773
  store i32 %4775, ptr %50, align 4, !tbaa !9
  %4776 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4776, ptr %51, align 4, !tbaa !9
  %4777 = load ptr, ptr %5, align 8, !tbaa !5
  %4778 = getelementptr inbounds %struct.w2c_hermes, ptr %4777, i32 0, i32 6
  %4779 = load i32, ptr %50, align 4, !tbaa !9
  %4780 = zext i32 %4779 to i64
  %4781 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4778, i64 noundef %4780, i32 noundef %4781)
  %4782 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4782, ptr %50, align 4, !tbaa !9
  %4783 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4783, ptr %51, align 4, !tbaa !9
  %4784 = load ptr, ptr %5, align 8, !tbaa !5
  %4785 = getelementptr inbounds %struct.w2c_hermes, ptr %4784, i32 0, i32 6
  %4786 = load i32, ptr %51, align 4, !tbaa !9
  %4787 = zext i32 %4786 to i64
  %4788 = add i64 %4787, 44
  %4789 = call i32 @i32_load(ptr noundef %4785, i64 noundef %4788)
  store i32 %4789, ptr %51, align 4, !tbaa !9
  store i32 1, ptr %52, align 4, !tbaa !9
  %4790 = load i32, ptr %52, align 4, !tbaa !9
  %4791 = load i32, ptr %51, align 4, !tbaa !9
  %4792 = add i32 %4791, %4790
  store i32 %4792, ptr %51, align 4, !tbaa !9
  %4793 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %4793, ptr %10, align 4, !tbaa !9
  %4794 = load ptr, ptr %5, align 8, !tbaa !5
  %4795 = getelementptr inbounds %struct.w2c_hermes, ptr %4794, i32 0, i32 6
  %4796 = load i32, ptr %50, align 4, !tbaa !9
  %4797 = zext i32 %4796 to i64
  %4798 = add i64 %4797, 44
  %4799 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4795, i64 noundef %4798, i32 noundef %4799)
  %4800 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4800, ptr %50, align 4, !tbaa !9
  %4801 = load ptr, ptr %5, align 8, !tbaa !5
  %4802 = getelementptr inbounds %struct.w2c_hermes, ptr %4801, i32 0, i32 6
  %4803 = load i32, ptr %50, align 4, !tbaa !9
  %4804 = zext i32 %4803 to i64
  %4805 = add i64 %4804, 4
  %4806 = call i32 @i32_load(ptr noundef %4802, i64 noundef %4805)
  store i32 %4806, ptr %50, align 4, !tbaa !9
  %4807 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4807, ptr %8, align 4, !tbaa !9
  %4808 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4808, ptr %51, align 4, !tbaa !9
  %4809 = load i32, ptr %50, align 4, !tbaa !9
  %4810 = load i32, ptr %51, align 4, !tbaa !9
  %4811 = icmp ne i32 %4809, %4810
  %4812 = zext i1 %4811 to i32
  store i32 %4812, ptr %50, align 4, !tbaa !9
  %4813 = load i32, ptr %50, align 4, !tbaa !9
  %4814 = icmp ne i32 %4813, 0
  br i1 %4814, label %4815, label %4816

4815:                                             ; preds = %4760
  br label %4711

4816:                                             ; preds = %4760
  %4817 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4817, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %4818 = load i32, ptr %50, align 4, !tbaa !9
  %4819 = load i32, ptr %51, align 4, !tbaa !9
  %4820 = icmp ule i32 %4818, %4819
  %4821 = zext i1 %4820 to i32
  store i32 %4821, ptr %50, align 4, !tbaa !9
  %4822 = load i32, ptr %50, align 4, !tbaa !9
  %4823 = icmp ne i32 %4822, 0
  br i1 %4823, label %4824, label %4825

4824:                                             ; preds = %4816
  br label %4903

4825:                                             ; preds = %4816
  %4826 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4826, ptr %50, align 4, !tbaa !9
  %4827 = load ptr, ptr %5, align 8, !tbaa !5
  %4828 = getelementptr inbounds %struct.w2c_hermes, ptr %4827, i32 0, i32 6
  %4829 = load i32, ptr %50, align 4, !tbaa !9
  %4830 = zext i32 %4829 to i64
  %4831 = call i32 @i32_load(ptr noundef %4828, i64 noundef %4830)
  store i32 %4831, ptr %50, align 4, !tbaa !9
  %4832 = load ptr, ptr %5, align 8, !tbaa !5
  %4833 = getelementptr inbounds %struct.w2c_hermes, ptr %4832, i32 0, i32 6
  %4834 = load i32, ptr %50, align 4, !tbaa !9
  %4835 = zext i32 %4834 to i64
  %4836 = add i64 %4835, 28
  %4837 = call i32 @i32_load(ptr noundef %4833, i64 noundef %4836)
  store i32 %4837, ptr %50, align 4, !tbaa !9
  %4838 = load ptr, ptr %5, align 8, !tbaa !5
  %4839 = getelementptr inbounds %struct.w2c_hermes, ptr %4838, i32 0, i32 6
  %4840 = load i32, ptr %50, align 4, !tbaa !9
  %4841 = zext i32 %4840 to i64
  %4842 = add i64 %4841, 72
  %4843 = call i32 @i32_load(ptr noundef %4839, i64 noundef %4842)
  store i32 %4843, ptr %50, align 4, !tbaa !9
  %4844 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4844, ptr %8, align 4, !tbaa !9
  %4845 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4845, ptr %50, align 4, !tbaa !9
  %4846 = load ptr, ptr %5, align 8, !tbaa !5
  %4847 = getelementptr inbounds %struct.w2c_hermes, ptr %4846, i32 0, i32 6
  %4848 = load i32, ptr %50, align 4, !tbaa !9
  %4849 = zext i32 %4848 to i64
  %4850 = add i64 %4849, 16
  %4851 = call i64 @i64_load(ptr noundef %4847, i64 noundef %4850)
  store i64 %4851, ptr %60, align 8, !tbaa !11
  %4852 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %4852, ptr %31, align 8, !tbaa !11
  %4853 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4853, ptr %50, align 4, !tbaa !9
  store i32 54047, ptr %51, align 4, !tbaa !9
  %4854 = load ptr, ptr %5, align 8, !tbaa !5
  %4855 = getelementptr inbounds %struct.w2c_hermes, ptr %4854, i32 0, i32 6
  %4856 = load i32, ptr %50, align 4, !tbaa !9
  %4857 = zext i32 %4856 to i64
  %4858 = add i64 %4857, 24
  %4859 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4855, i64 noundef %4858, i32 noundef %4859)
  %4860 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4860, ptr %50, align 4, !tbaa !9
  store i32 259, ptr %51, align 4, !tbaa !9
  %4861 = load ptr, ptr %5, align 8, !tbaa !5
  %4862 = getelementptr inbounds %struct.w2c_hermes, ptr %4861, i32 0, i32 6
  %4863 = load i32, ptr %50, align 4, !tbaa !9
  %4864 = zext i32 %4863 to i64
  %4865 = add i64 %4864, 32
  %4866 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %4862, i64 noundef %4865, i32 noundef %4866)
  %4867 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4867, ptr %50, align 4, !tbaa !9
  %4868 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %4868, ptr %61, align 8, !tbaa !11
  %4869 = load ptr, ptr %5, align 8, !tbaa !5
  %4870 = getelementptr inbounds %struct.w2c_hermes, ptr %4869, i32 0, i32 6
  %4871 = load i32, ptr %50, align 4, !tbaa !9
  %4872 = zext i32 %4871 to i64
  %4873 = add i64 %4872, 8
  %4874 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4870, i64 noundef %4873, i64 noundef %4874)
  %4875 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4875, ptr %50, align 4, !tbaa !9
  %4876 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %4876, ptr %61, align 8, !tbaa !11
  %4877 = load ptr, ptr %5, align 8, !tbaa !5
  %4878 = getelementptr inbounds %struct.w2c_hermes, ptr %4877, i32 0, i32 6
  %4879 = load i32, ptr %50, align 4, !tbaa !9
  %4880 = zext i32 %4879 to i64
  %4881 = add i64 %4880, 56
  %4882 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4878, i64 noundef %4881, i64 noundef %4882)
  %4883 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4883, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %4884 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %4884, ptr %62, align 8, !tbaa !11
  %4885 = load i64, ptr %62, align 8, !tbaa !11
  %4886 = trunc i64 %4885 to i32
  store i32 %4886, ptr %52, align 4, !tbaa !9
  %4887 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4887, ptr %53, align 4, !tbaa !9
  store i32 8, ptr %54, align 4, !tbaa !9
  %4888 = load i32, ptr %54, align 4, !tbaa !9
  %4889 = load i32, ptr %53, align 4, !tbaa !9
  %4890 = add i32 %4889, %4888
  store i32 %4890, ptr %53, align 4, !tbaa !9
  %4891 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4891, ptr %54, align 4, !tbaa !9
  store i32 24, ptr %55, align 4, !tbaa !9
  %4892 = load i32, ptr %55, align 4, !tbaa !9
  %4893 = load i32, ptr %54, align 4, !tbaa !9
  %4894 = add i32 %4893, %4892
  store i32 %4894, ptr %54, align 4, !tbaa !9
  store i32 4, ptr %55, align 4, !tbaa !9
  store i32 0, ptr %56, align 4, !tbaa !9
  %4895 = load ptr, ptr %5, align 8, !tbaa !5
  %4896 = load i32, ptr %50, align 4, !tbaa !9
  %4897 = load i32, ptr %51, align 4, !tbaa !9
  %4898 = load i32, ptr %52, align 4, !tbaa !9
  %4899 = load i32, ptr %53, align 4, !tbaa !9
  %4900 = load i32, ptr %54, align 4, !tbaa !9
  %4901 = load i32, ptr %55, align 4, !tbaa !9
  %4902 = load i32, ptr %56, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3AWarning0x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %4895, i32 noundef %4896, i32 noundef %4897, i32 noundef %4898, i32 noundef %4899, i32 noundef %4900, i32 noundef %4901, i32 noundef %4902)
  br label %4903

4903:                                             ; preds = %4825, %4824, %4709
  %4904 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4904, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %4905 = load i32, ptr %51, align 4, !tbaa !9
  %4906 = load i32, ptr %50, align 4, !tbaa !9
  %4907 = add i32 %4906, %4905
  store i32 %4907, ptr %50, align 4, !tbaa !9
  %4908 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4908, ptr %12, align 4, !tbaa !9
  %4909 = load ptr, ptr %5, align 8, !tbaa !5
  %4910 = getelementptr inbounds %struct.w2c_hermes, ptr %4909, i32 0, i32 6
  %4911 = load i32, ptr %50, align 4, !tbaa !9
  %4912 = zext i32 %4911 to i64
  %4913 = add i64 %4912, 8
  %4914 = call i32 @i32_load(ptr noundef %4910, i64 noundef %4913)
  store i32 %4914, ptr %50, align 4, !tbaa !9
  %4915 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4915, ptr %7, align 4, !tbaa !9
  %4916 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4916, ptr %50, align 4, !tbaa !9
  %4917 = load ptr, ptr %5, align 8, !tbaa !5
  %4918 = getelementptr inbounds %struct.w2c_hermes, ptr %4917, i32 0, i32 6
  %4919 = load i32, ptr %50, align 4, !tbaa !9
  %4920 = zext i32 %4919 to i64
  %4921 = add i64 %4920, 40
  %4922 = call i32 @i32_load(ptr noundef %4918, i64 noundef %4921)
  store i32 %4922, ptr %50, align 4, !tbaa !9
  %4923 = load ptr, ptr %5, align 8, !tbaa !5
  %4924 = getelementptr inbounds %struct.w2c_hermes, ptr %4923, i32 0, i32 6
  %4925 = load i32, ptr %50, align 4, !tbaa !9
  %4926 = zext i32 %4925 to i64
  %4927 = call i32 @i32_load(ptr noundef %4924, i64 noundef %4926)
  store i32 %4927, ptr %50, align 4, !tbaa !9
  %4928 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4928, ptr %8, align 4, !tbaa !9
  %4929 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4929, ptr %50, align 4, !tbaa !9
  %4930 = load ptr, ptr %5, align 8, !tbaa !5
  %4931 = getelementptr inbounds %struct.w2c_hermes, ptr %4930, i32 0, i32 6
  %4932 = load i32, ptr %50, align 4, !tbaa !9
  %4933 = zext i32 %4932 to i64
  %4934 = call i32 @i32_load(ptr noundef %4931, i64 noundef %4933)
  store i32 %4934, ptr %50, align 4, !tbaa !9
  store i32 356, ptr %51, align 4, !tbaa !9
  store i32 324, ptr %52, align 4, !tbaa !9
  %4935 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4935, ptr %53, align 4, !tbaa !9
  %4936 = load ptr, ptr %5, align 8, !tbaa !5
  %4937 = getelementptr inbounds %struct.w2c_hermes, ptr %4936, i32 0, i32 6
  %4938 = load i32, ptr %53, align 4, !tbaa !9
  %4939 = zext i32 %4938 to i64
  %4940 = add i64 %4939, 44
  %4941 = call i32 @i32_load(ptr noundef %4937, i64 noundef %4940)
  store i32 %4941, ptr %53, align 4, !tbaa !9
  %4942 = load ptr, ptr %5, align 8, !tbaa !5
  %4943 = getelementptr inbounds %struct.w2c_hermes, ptr %4942, i32 0, i32 6
  %4944 = load i32, ptr %53, align 4, !tbaa !9
  %4945 = zext i32 %4944 to i64
  %4946 = add i64 %4945, 108
  %4947 = call i32 @i32_load8_u(ptr noundef %4943, i64 noundef %4946)
  store i32 %4947, ptr %53, align 4, !tbaa !9
  %4948 = load i32, ptr %53, align 4, !tbaa !9
  %4949 = icmp ne i32 %4948, 0
  br i1 %4949, label %4950, label %4952

4950:                                             ; preds = %4903
  %4951 = load i32, ptr %51, align 4, !tbaa !9
  br label %4954

4952:                                             ; preds = %4903
  %4953 = load i32, ptr %52, align 4, !tbaa !9
  br label %4954

4954:                                             ; preds = %4952, %4950
  %4955 = phi i32 [ %4951, %4950 ], [ %4953, %4952 ]
  store i32 %4955, ptr %51, align 4, !tbaa !9
  %4956 = load i32, ptr %51, align 4, !tbaa !9
  %4957 = load i32, ptr %50, align 4, !tbaa !9
  %4958 = add i32 %4957, %4956
  store i32 %4958, ptr %50, align 4, !tbaa !9
  %4959 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4959, ptr %7, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %4960 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4960, ptr %10, align 4, !tbaa !9
  store i32 80, ptr %50, align 4, !tbaa !9
  %4961 = load ptr, ptr %5, align 8, !tbaa !5
  %4962 = load i32, ptr %50, align 4, !tbaa !9
  %4963 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %4961, i32 noundef %4962)
  store i32 %4963, ptr %50, align 4, !tbaa !9
  %4964 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %4964, ptr %11, align 4, !tbaa !9
  store i64 8589934592, ptr %61, align 8, !tbaa !11
  %4965 = load ptr, ptr %5, align 8, !tbaa !5
  %4966 = getelementptr inbounds %struct.w2c_hermes, ptr %4965, i32 0, i32 6
  %4967 = load i32, ptr %50, align 4, !tbaa !9
  %4968 = zext i32 %4967 to i64
  %4969 = add i64 %4968, 20
  %4970 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4966, i64 noundef %4969, i64 noundef %4970)
  %4971 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4971, ptr %50, align 4, !tbaa !9
  store i64 0, ptr %61, align 8, !tbaa !11
  %4972 = load ptr, ptr %5, align 8, !tbaa !5
  %4973 = getelementptr inbounds %struct.w2c_hermes, ptr %4972, i32 0, i32 6
  %4974 = load i32, ptr %50, align 4, !tbaa !9
  %4975 = zext i32 %4974 to i64
  %4976 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4973, i64 noundef %4975, i64 noundef %4976)
  %4977 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4977, ptr %50, align 4, !tbaa !9
  store i64 0, ptr %61, align 8, !tbaa !11
  %4978 = load ptr, ptr %5, align 8, !tbaa !5
  %4979 = getelementptr inbounds %struct.w2c_hermes, ptr %4978, i32 0, i32 6
  %4980 = load i32, ptr %50, align 4, !tbaa !9
  %4981 = zext i32 %4980 to i64
  %4982 = add i64 %4981, 68
  %4983 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4979, i64 noundef %4982, i64 noundef %4983)
  %4984 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4984, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %4985 = load ptr, ptr %5, align 8, !tbaa !5
  %4986 = getelementptr inbounds %struct.w2c_hermes, ptr %4985, i32 0, i32 6
  %4987 = load i32, ptr %50, align 4, !tbaa !9
  %4988 = zext i32 %4987 to i64
  %4989 = add i64 %4988, 36
  %4990 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4986, i64 noundef %4989, i32 noundef %4990)
  %4991 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4991, ptr %50, align 4, !tbaa !9
  store i32 58, ptr %51, align 4, !tbaa !9
  %4992 = load ptr, ptr %5, align 8, !tbaa !5
  %4993 = getelementptr inbounds %struct.w2c_hermes, ptr %4992, i32 0, i32 6
  %4994 = load i32, ptr %50, align 4, !tbaa !9
  %4995 = zext i32 %4994 to i64
  %4996 = add i64 %4995, 8
  %4997 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %4993, i64 noundef %4996, i32 noundef %4997)
  %4998 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4998, ptr %50, align 4, !tbaa !9
  store i32 459775, ptr %51, align 4, !tbaa !9
  %4999 = load ptr, ptr %5, align 8, !tbaa !5
  %5000 = getelementptr inbounds %struct.w2c_hermes, ptr %4999, i32 0, i32 6
  %5001 = load i32, ptr %50, align 4, !tbaa !9
  %5002 = zext i32 %5001 to i64
  %5003 = add i64 %5002, 10
  %5004 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5000, i64 noundef %5003, i32 noundef %5004)
  %5005 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5005, ptr %50, align 4, !tbaa !9
  %5006 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5006, ptr %51, align 4, !tbaa !9
  store i32 28, ptr %52, align 4, !tbaa !9
  %5007 = load i32, ptr %52, align 4, !tbaa !9
  %5008 = load i32, ptr %51, align 4, !tbaa !9
  %5009 = add i32 %5008, %5007
  store i32 %5009, ptr %51, align 4, !tbaa !9
  %5010 = load ptr, ptr %5, align 8, !tbaa !5
  %5011 = getelementptr inbounds %struct.w2c_hermes, ptr %5010, i32 0, i32 6
  %5012 = load i32, ptr %50, align 4, !tbaa !9
  %5013 = zext i32 %5012 to i64
  %5014 = add i64 %5013, 16
  %5015 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5011, i64 noundef %5014, i32 noundef %5015)
  %5016 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5016, ptr %50, align 4, !tbaa !9
  store i64 8589934592, ptr %61, align 8, !tbaa !11
  %5017 = load ptr, ptr %5, align 8, !tbaa !5
  %5018 = getelementptr inbounds %struct.w2c_hermes, ptr %5017, i32 0, i32 6
  %5019 = load i32, ptr %50, align 4, !tbaa !9
  %5020 = zext i32 %5019 to i64
  %5021 = add i64 %5020, 44
  %5022 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5018, i64 noundef %5021, i64 noundef %5022)
  %5023 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5023, ptr %50, align 4, !tbaa !9
  %5024 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5024, ptr %51, align 4, !tbaa !9
  store i32 52, ptr %52, align 4, !tbaa !9
  %5025 = load i32, ptr %52, align 4, !tbaa !9
  %5026 = load i32, ptr %51, align 4, !tbaa !9
  %5027 = add i32 %5026, %5025
  store i32 %5027, ptr %51, align 4, !tbaa !9
  %5028 = load ptr, ptr %5, align 8, !tbaa !5
  %5029 = getelementptr inbounds %struct.w2c_hermes, ptr %5028, i32 0, i32 6
  %5030 = load i32, ptr %50, align 4, !tbaa !9
  %5031 = zext i32 %5030 to i64
  %5032 = add i64 %5031, 40
  %5033 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5029, i64 noundef %5032, i32 noundef %5033)
  %5034 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5034, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %5035 = load ptr, ptr %5, align 8, !tbaa !5
  %5036 = getelementptr inbounds %struct.w2c_hermes, ptr %5035, i32 0, i32 6
  %5037 = load i32, ptr %50, align 4, !tbaa !9
  %5038 = zext i32 %5037 to i64
  %5039 = add i64 %5038, 76
  %5040 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5036, i64 noundef %5039, i32 noundef %5040)
  %5041 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5041, ptr %50, align 4, !tbaa !9
  %5042 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5042, ptr %51, align 4, !tbaa !9
  %5043 = load ptr, ptr %5, align 8, !tbaa !5
  %5044 = load i32, ptr %50, align 4, !tbaa !9
  %5045 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %5043, i32 noundef %5044, i32 noundef %5045)
  %5046 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5046, ptr %50, align 4, !tbaa !9
  %5047 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5047, ptr %51, align 4, !tbaa !9
  %5048 = load ptr, ptr %5, align 8, !tbaa !5
  %5049 = load i32, ptr %50, align 4, !tbaa !9
  %5050 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %5048, i32 noundef %5049, i32 noundef %5050)
  %5051 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5051, ptr %50, align 4, !tbaa !9
  %5052 = load ptr, ptr %5, align 8, !tbaa !5
  %5053 = getelementptr inbounds %struct.w2c_hermes, ptr %5052, i32 0, i32 6
  %5054 = load i32, ptr %50, align 4, !tbaa !9
  %5055 = zext i32 %5054 to i64
  %5056 = add i64 %5055, 8
  %5057 = call i32 @i32_load(ptr noundef %5053, i64 noundef %5056)
  store i32 %5057, ptr %50, align 4, !tbaa !9
  %5058 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5058, ptr %13, align 4, !tbaa !9
  %5059 = load ptr, ptr %5, align 8, !tbaa !5
  %5060 = getelementptr inbounds %struct.w2c_hermes, ptr %5059, i32 0, i32 6
  %5061 = load i32, ptr %50, align 4, !tbaa !9
  %5062 = zext i32 %5061 to i64
  %5063 = add i64 %5062, 44
  %5064 = call i32 @i32_load(ptr noundef %5060, i64 noundef %5063)
  store i32 %5064, ptr %50, align 4, !tbaa !9
  %5065 = load ptr, ptr %5, align 8, !tbaa !5
  %5066 = getelementptr inbounds %struct.w2c_hermes, ptr %5065, i32 0, i32 6
  %5067 = load i32, ptr %50, align 4, !tbaa !9
  %5068 = zext i32 %5067 to i64
  %5069 = add i64 %5068, 136
  %5070 = call i64 @i64_load(ptr noundef %5066, i64 noundef %5069)
  store i64 %5070, ptr %60, align 8, !tbaa !11
  %5071 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %5071, ptr %31, align 8, !tbaa !11
  store i64 1095216660480, ptr %61, align 8, !tbaa !11
  %5072 = load i64, ptr %61, align 8, !tbaa !11
  %5073 = load i64, ptr %60, align 8, !tbaa !11
  %5074 = and i64 %5073, %5072
  store i64 %5074, ptr %60, align 8, !tbaa !11
  store i64 0, ptr %61, align 8, !tbaa !11
  %5075 = load i64, ptr %60, align 8, !tbaa !11
  %5076 = load i64, ptr %61, align 8, !tbaa !11
  %5077 = icmp ne i64 %5075, %5076
  %5078 = zext i1 %5077 to i32
  store i32 %5078, ptr %50, align 4, !tbaa !9
  %5079 = load i32, ptr %50, align 4, !tbaa !9
  %5080 = icmp ne i32 %5079, 0
  br i1 %5080, label %5081, label %5094

5081:                                             ; preds = %4954
  %5082 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5082, ptr %50, align 4, !tbaa !9
  %5083 = load ptr, ptr %5, align 8, !tbaa !5
  %5084 = getelementptr inbounds %struct.w2c_hermes, ptr %5083, i32 0, i32 6
  %5085 = load i32, ptr %50, align 4, !tbaa !9
  %5086 = zext i32 %5085 to i64
  %5087 = add i64 %5086, 4
  %5088 = call i32 @i32_load(ptr noundef %5084, i64 noundef %5087)
  store i32 %5088, ptr %50, align 4, !tbaa !9
  %5089 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5089, ptr %8, align 4, !tbaa !9
  %5090 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %5090, ptr %60, align 8, !tbaa !11
  %5091 = load i64, ptr %60, align 8, !tbaa !11
  %5092 = trunc i64 %5091 to i32
  store i32 %5092, ptr %50, align 4, !tbaa !9
  %5093 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5093, ptr %10, align 4, !tbaa !9
  br label %5126

5094:                                             ; preds = %4954
  %5095 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5095, ptr %50, align 4, !tbaa !9
  %5096 = load ptr, ptr %5, align 8, !tbaa !5
  %5097 = getelementptr inbounds %struct.w2c_hermes, ptr %5096, i32 0, i32 6
  %5098 = load i32, ptr %50, align 4, !tbaa !9
  %5099 = zext i32 %5098 to i64
  %5100 = add i64 %5099, 4
  %5101 = call i32 @i32_load(ptr noundef %5097, i64 noundef %5100)
  store i32 %5101, ptr %50, align 4, !tbaa !9
  %5102 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5102, ptr %7, align 4, !tbaa !9
  %5103 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5103, ptr %51, align 4, !tbaa !9
  store i32 36, ptr %52, align 4, !tbaa !9
  %5104 = load i32, ptr %52, align 4, !tbaa !9
  %5105 = load i32, ptr %51, align 4, !tbaa !9
  %5106 = add i32 %5105, %5104
  store i32 %5106, ptr %51, align 4, !tbaa !9
  %5107 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %5107, ptr %8, align 4, !tbaa !9
  %5108 = load i32, ptr %50, align 4, !tbaa !9
  %5109 = load i32, ptr %51, align 4, !tbaa !9
  %5110 = icmp eq i32 %5108, %5109
  %5111 = zext i1 %5110 to i32
  store i32 %5111, ptr %50, align 4, !tbaa !9
  %5112 = load i32, ptr %50, align 4, !tbaa !9
  %5113 = icmp ne i32 %5112, 0
  br i1 %5113, label %5114, label %5115

5114:                                             ; preds = %5094
  br label %5126

5115:                                             ; preds = %5094
  %5116 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5116, ptr %50, align 4, !tbaa !9
  %5117 = load ptr, ptr %5, align 8, !tbaa !5
  %5118 = getelementptr inbounds %struct.w2c_hermes, ptr %5117, i32 0, i32 6
  %5119 = load i32, ptr %50, align 4, !tbaa !9
  %5120 = zext i32 %5119 to i64
  %5121 = add i64 %5120, 76
  %5122 = call i32 @i32_load(ptr noundef %5118, i64 noundef %5121)
  store i32 %5122, ptr %50, align 4, !tbaa !9
  %5123 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5123, ptr %10, align 4, !tbaa !9
  %5124 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5124, ptr %50, align 4, !tbaa !9
  %5125 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5125, ptr %8, align 4, !tbaa !9
  br label %5126

5126:                                             ; preds = %5115, %5114, %5081
  %5127 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5127, ptr %50, align 4, !tbaa !9
  %5128 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5128, ptr %51, align 4, !tbaa !9
  %5129 = load ptr, ptr %5, align 8, !tbaa !5
  %5130 = getelementptr inbounds %struct.w2c_hermes, ptr %5129, i32 0, i32 6
  %5131 = load i32, ptr %50, align 4, !tbaa !9
  %5132 = zext i32 %5131 to i64
  %5133 = add i64 %5132, 76
  %5134 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5130, i64 noundef %5133, i32 noundef %5134)
  %5135 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5135, ptr %50, align 4, !tbaa !9
  %5136 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5136, ptr %51, align 4, !tbaa !9
  %5137 = load ptr, ptr %5, align 8, !tbaa !5
  %5138 = getelementptr inbounds %struct.w2c_hermes, ptr %5137, i32 0, i32 6
  %5139 = load i32, ptr %51, align 4, !tbaa !9
  %5140 = zext i32 %5139 to i64
  %5141 = add i64 %5140, 12
  %5142 = call i32 @i32_load(ptr noundef %5138, i64 noundef %5141)
  store i32 %5142, ptr %51, align 4, !tbaa !9
  %5143 = load ptr, ptr %5, align 8, !tbaa !5
  %5144 = getelementptr inbounds %struct.w2c_hermes, ptr %5143, i32 0, i32 6
  %5145 = load i32, ptr %50, align 4, !tbaa !9
  %5146 = zext i32 %5145 to i64
  %5147 = add i64 %5146, 72
  %5148 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5144, i64 noundef %5147, i32 noundef %5148)
  %5149 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5149, ptr %50, align 4, !tbaa !9
  %5150 = load ptr, ptr %5, align 8, !tbaa !5
  %5151 = getelementptr inbounds %struct.w2c_hermes, ptr %5150, i32 0, i32 6
  %5152 = load i32, ptr %50, align 4, !tbaa !9
  %5153 = zext i32 %5152 to i64
  %5154 = add i64 %5153, 16
  %5155 = call i32 @i32_load(ptr noundef %5151, i64 noundef %5154)
  store i32 %5155, ptr %50, align 4, !tbaa !9
  %5156 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5156, ptr %7, align 4, !tbaa !9
  %5157 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5157, ptr %50, align 4, !tbaa !9
  %5158 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5158, ptr %51, align 4, !tbaa !9
  %5159 = load ptr, ptr %5, align 8, !tbaa !5
  %5160 = getelementptr inbounds %struct.w2c_hermes, ptr %5159, i32 0, i32 6
  %5161 = load i32, ptr %50, align 4, !tbaa !9
  %5162 = zext i32 %5161 to i64
  %5163 = add i64 %5162, 36
  %5164 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5160, i64 noundef %5163, i32 noundef %5164)
  %5165 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5165, ptr %50, align 4, !tbaa !9
  %5166 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5166, ptr %51, align 4, !tbaa !9
  %5167 = load ptr, ptr %5, align 8, !tbaa !5
  %5168 = getelementptr inbounds %struct.w2c_hermes, ptr %5167, i32 0, i32 6
  %5169 = load i32, ptr %50, align 4, !tbaa !9
  %5170 = zext i32 %5169 to i64
  %5171 = add i64 %5170, 68
  %5172 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5168, i64 noundef %5171, i32 noundef %5172)
  %5173 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5173, ptr %50, align 4, !tbaa !9
  %5174 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5174, ptr %51, align 4, !tbaa !9
  %5175 = load ptr, ptr %5, align 8, !tbaa !5
  %5176 = getelementptr inbounds %struct.w2c_hermes, ptr %5175, i32 0, i32 6
  %5177 = load i32, ptr %51, align 4, !tbaa !9
  %5178 = zext i32 %5177 to i64
  %5179 = call i32 @i32_load(ptr noundef %5176, i64 noundef %5178)
  store i32 %5179, ptr %51, align 4, !tbaa !9
  %5180 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %5180, ptr %7, align 4, !tbaa !9
  %5181 = load ptr, ptr %5, align 8, !tbaa !5
  %5182 = getelementptr inbounds %struct.w2c_hermes, ptr %5181, i32 0, i32 6
  %5183 = load i32, ptr %50, align 4, !tbaa !9
  %5184 = zext i32 %5183 to i64
  %5185 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5182, i64 noundef %5184, i32 noundef %5185)
  %5186 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5186, ptr %50, align 4, !tbaa !9
  %5187 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5187, ptr %51, align 4, !tbaa !9
  %5188 = load ptr, ptr %5, align 8, !tbaa !5
  %5189 = getelementptr inbounds %struct.w2c_hermes, ptr %5188, i32 0, i32 6
  %5190 = load i32, ptr %50, align 4, !tbaa !9
  %5191 = zext i32 %5190 to i64
  %5192 = add i64 %5191, 4
  %5193 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5189, i64 noundef %5192, i32 noundef %5193)
  %5194 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5194, ptr %50, align 4, !tbaa !9
  %5195 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5195, ptr %51, align 4, !tbaa !9
  %5196 = load ptr, ptr %5, align 8, !tbaa !5
  %5197 = getelementptr inbounds %struct.w2c_hermes, ptr %5196, i32 0, i32 6
  %5198 = load i32, ptr %50, align 4, !tbaa !9
  %5199 = zext i32 %5198 to i64
  %5200 = add i64 %5199, 4
  %5201 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5197, i64 noundef %5200, i32 noundef %5201)
  %5202 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5202, ptr %50, align 4, !tbaa !9
  %5203 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5203, ptr %51, align 4, !tbaa !9
  %5204 = load ptr, ptr %5, align 8, !tbaa !5
  %5205 = getelementptr inbounds %struct.w2c_hermes, ptr %5204, i32 0, i32 6
  %5206 = load i32, ptr %50, align 4, !tbaa !9
  %5207 = zext i32 %5206 to i64
  %5208 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5205, i64 noundef %5207, i32 noundef %5208)
  %5209 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5209, ptr %50, align 4, !tbaa !9
  %5210 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5210, ptr %51, align 4, !tbaa !9
  %5211 = load ptr, ptr %5, align 8, !tbaa !5
  %5212 = getelementptr inbounds %struct.w2c_hermes, ptr %5211, i32 0, i32 6
  %5213 = load i32, ptr %51, align 4, !tbaa !9
  %5214 = zext i32 %5213 to i64
  %5215 = add i64 %5214, 40
  %5216 = call i32 @i32_load(ptr noundef %5212, i64 noundef %5215)
  store i32 %5216, ptr %51, align 4, !tbaa !9
  %5217 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %5217, ptr %7, align 4, !tbaa !9
  %5218 = load i32, ptr %50, align 4, !tbaa !9
  %5219 = load i32, ptr %51, align 4, !tbaa !9
  %5220 = icmp ne i32 %5218, %5219
  %5221 = zext i1 %5220 to i32
  store i32 %5221, ptr %50, align 4, !tbaa !9
  %5222 = load i32, ptr %50, align 4, !tbaa !9
  %5223 = icmp ne i32 %5222, 0
  br i1 %5223, label %5224, label %5228

5224:                                             ; preds = %5126
  %5225 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5225, ptr %50, align 4, !tbaa !9
  %5226 = load ptr, ptr %5, align 8, !tbaa !5
  %5227 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %5226, i32 noundef %5227)
  br label %5228

5228:                                             ; preds = %5224, %5126
  %5229 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5229, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %5230 = load i32, ptr %51, align 4, !tbaa !9
  %5231 = load i32, ptr %50, align 4, !tbaa !9
  %5232 = add i32 %5231, %5230
  store i32 %5232, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %5233 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5233, ptr %52, align 4, !tbaa !9
  %5234 = load i32, ptr %52, align 4, !tbaa !9
  %5235 = icmp ne i32 %5234, 0
  br i1 %5235, label %5236, label %5238

5236:                                             ; preds = %5228
  %5237 = load i32, ptr %50, align 4, !tbaa !9
  br label %5240

5238:                                             ; preds = %5228
  %5239 = load i32, ptr %51, align 4, !tbaa !9
  br label %5240

5240:                                             ; preds = %5238, %5236
  %5241 = phi i32 [ %5237, %5236 ], [ %5239, %5238 ]
  store i32 %5241, ptr %50, align 4, !tbaa !9
  br label %5242

5242:                                             ; preds = %5240, %4567
  %5243 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5243, ptr %7, align 4, !tbaa !9
  %5244 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5244, ptr %50, align 4, !tbaa !9
  store i32 -64, ptr %51, align 4, !tbaa !9
  %5245 = load i32, ptr %51, align 4, !tbaa !9
  %5246 = load i32, ptr %50, align 4, !tbaa !9
  %5247 = sub i32 %5246, %5245
  store i32 %5247, ptr %50, align 4, !tbaa !9
  %5248 = load i32, ptr %50, align 4, !tbaa !9
  %5249 = load ptr, ptr %5, align 8, !tbaa !5
  %5250 = getelementptr inbounds %struct.w2c_hermes, ptr %5249, i32 0, i32 3
  store i32 %5248, ptr %5250, align 8, !tbaa !15
  %5251 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5251, ptr %50, align 4, !tbaa !9
  %5252 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5252, ptr %48, align 4, !tbaa !9
  br label %5393

5253:                                             ; preds = %4509, %4298, %4289
  %5254 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5254, ptr %50, align 4, !tbaa !9
  %5255 = load i32, ptr %50, align 4, !tbaa !9
  %5256 = icmp ne i32 %5255, 0
  %5257 = xor i1 %5256, true
  %5258 = zext i1 %5257 to i32
  store i32 %5258, ptr %50, align 4, !tbaa !9
  %5259 = load i32, ptr %50, align 4, !tbaa !9
  %5260 = icmp ne i32 %5259, 0
  br i1 %5260, label %5261, label %5262

5261:                                             ; preds = %5253
  br label %5314

5262:                                             ; preds = %5253
  %5263 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5263, ptr %50, align 4, !tbaa !9
  store i32 54, ptr %51, align 4, !tbaa !9
  %5264 = load i32, ptr %50, align 4, !tbaa !9
  %5265 = load i32, ptr %51, align 4, !tbaa !9
  %5266 = icmp ne i32 %5264, %5265
  %5267 = zext i1 %5266 to i32
  store i32 %5267, ptr %50, align 4, !tbaa !9
  %5268 = load i32, ptr %50, align 4, !tbaa !9
  %5269 = icmp ne i32 %5268, 0
  br i1 %5269, label %5270, label %5271

5270:                                             ; preds = %5262
  br label %5314

5271:                                             ; preds = %5262
  %5272 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5272, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %5273 = load i32, ptr %51, align 4, !tbaa !9
  %5274 = load i32, ptr %50, align 4, !tbaa !9
  %5275 = add i32 %5274, %5273
  store i32 %5275, ptr %50, align 4, !tbaa !9
  %5276 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5276, ptr %51, align 4, !tbaa !9
  %5277 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5277, ptr %52, align 4, !tbaa !9
  %5278 = load ptr, ptr %5, align 8, !tbaa !5
  %5279 = getelementptr inbounds %struct.w2c_hermes, ptr %5278, i32 0, i32 6
  %5280 = load i32, ptr %52, align 4, !tbaa !9
  %5281 = zext i32 %5280 to i64
  %5282 = add i64 %5281, 28
  %5283 = call i32 @i32_load(ptr noundef %5279, i64 noundef %5282)
  store i32 %5283, ptr %52, align 4, !tbaa !9
  store i32 0, ptr %53, align 4, !tbaa !9
  %5284 = load ptr, ptr %5, align 8, !tbaa !5
  %5285 = load i32, ptr %51, align 4, !tbaa !9
  %5286 = load i32, ptr %52, align 4, !tbaa !9
  %5287 = load i32, ptr %53, align 4, !tbaa !9
  %5288 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %5284, i32 noundef %5285, i32 noundef %5286, i32 noundef %5287)
  store i32 %5288, ptr %51, align 4, !tbaa !9
  %5289 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %5289, ptr %11, align 4, !tbaa !9
  %5290 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5290, ptr %52, align 4, !tbaa !9
  %5291 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5291, ptr %53, align 4, !tbaa !9
  %5292 = load ptr, ptr %5, align 8, !tbaa !5
  %5293 = load i32, ptr %52, align 4, !tbaa !9
  %5294 = load i32, ptr %53, align 4, !tbaa !9
  %5295 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenMemberExpressionProperty0x28hermes0x3A0x3AESTree0x3A0x3AMemberExpressionLikeNode0x2A0x29(ptr noundef %5292, i32 noundef %5293, i32 noundef %5294)
  store i32 %5295, ptr %52, align 4, !tbaa !9
  %5296 = load ptr, ptr %5, align 8, !tbaa !5
  %5297 = load i32, ptr %50, align 4, !tbaa !9
  %5298 = load i32, ptr %51, align 4, !tbaa !9
  %5299 = load i32, ptr %52, align 4, !tbaa !9
  %5300 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %5296, i32 noundef %5297, i32 noundef %5298, i32 noundef %5299)
  store i32 %5300, ptr %50, align 4, !tbaa !9
  %5301 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5301, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %5302 = load i32, ptr %51, align 4, !tbaa !9
  %5303 = load i32, ptr %50, align 4, !tbaa !9
  %5304 = add i32 %5303, %5302
  store i32 %5304, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %5305 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5305, ptr %52, align 4, !tbaa !9
  %5306 = load i32, ptr %52, align 4, !tbaa !9
  %5307 = icmp ne i32 %5306, 0
  br i1 %5307, label %5308, label %5310

5308:                                             ; preds = %5271
  %5309 = load i32, ptr %50, align 4, !tbaa !9
  br label %5312

5310:                                             ; preds = %5271
  %5311 = load i32, ptr %51, align 4, !tbaa !9
  br label %5312

5312:                                             ; preds = %5310, %5308
  %5313 = phi i32 [ %5309, %5308 ], [ %5311, %5310 ]
  store i32 %5313, ptr %50, align 4, !tbaa !9
  br label %5385

5314:                                             ; preds = %5270, %5261
  %5315 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5315, ptr %50, align 4, !tbaa !9
  %5316 = load i32, ptr %50, align 4, !tbaa !9
  %5317 = icmp ne i32 %5316, 0
  %5318 = xor i1 %5317, true
  %5319 = zext i1 %5318 to i32
  store i32 %5319, ptr %50, align 4, !tbaa !9
  %5320 = load i32, ptr %50, align 4, !tbaa !9
  %5321 = icmp ne i32 %5320, 0
  br i1 %5321, label %5322, label %5323

5322:                                             ; preds = %5314
  br label %5360

5323:                                             ; preds = %5314
  %5324 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %5324, ptr %50, align 4, !tbaa !9
  store i32 55, ptr %51, align 4, !tbaa !9
  %5325 = load i32, ptr %50, align 4, !tbaa !9
  %5326 = load i32, ptr %51, align 4, !tbaa !9
  %5327 = icmp ne i32 %5325, %5326
  %5328 = zext i1 %5327 to i32
  store i32 %5328, ptr %50, align 4, !tbaa !9
  %5329 = load i32, ptr %50, align 4, !tbaa !9
  %5330 = icmp ne i32 %5329, 0
  br i1 %5330, label %5331, label %5332

5331:                                             ; preds = %5323
  br label %5360

5332:                                             ; preds = %5323
  %5333 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %5333, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %5334 = load i32, ptr %51, align 4, !tbaa !9
  %5335 = load i32, ptr %50, align 4, !tbaa !9
  %5336 = add i32 %5335, %5334
  store i32 %5336, ptr %50, align 4, !tbaa !9
  %5337 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5337, ptr %51, align 4, !tbaa !9
  %5338 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5338, ptr %52, align 4, !tbaa !9
  store i32 0, ptr %53, align 4, !tbaa !9
  store i32 0, ptr %54, align 4, !tbaa !9
  %5339 = load ptr, ptr %5, align 8, !tbaa !5
  %5340 = load i32, ptr %50, align 4, !tbaa !9
  %5341 = load i32, ptr %51, align 4, !tbaa !9
  %5342 = load i32, ptr %52, align 4, !tbaa !9
  %5343 = load i32, ptr %53, align 4, !tbaa !9
  %5344 = load i32, ptr %54, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalMemberExpression0x28hermes0x3A0x3AESTree0x3A0x3AOptionalMemberExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AMemberExpressionOperation0x29(ptr noundef %5339, i32 noundef %5340, i32 noundef %5341, i32 noundef %5342, i32 noundef %5343, i32 noundef %5344)
  %5345 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %5345, ptr %50, align 4, !tbaa !9
  %5346 = load ptr, ptr %5, align 8, !tbaa !5
  %5347 = getelementptr inbounds %struct.w2c_hermes, ptr %5346, i32 0, i32 6
  %5348 = load i32, ptr %50, align 4, !tbaa !9
  %5349 = zext i32 %5348 to i64
  %5350 = add i64 %5349, 12
  %5351 = call i32 @i32_load(ptr noundef %5347, i64 noundef %5350)
  store i32 %5351, ptr %50, align 4, !tbaa !9
  %5352 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5352, ptr %11, align 4, !tbaa !9
  %5353 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %5353, ptr %50, align 4, !tbaa !9
  %5354 = load ptr, ptr %5, align 8, !tbaa !5
  %5355 = getelementptr inbounds %struct.w2c_hermes, ptr %5354, i32 0, i32 6
  %5356 = load i32, ptr %50, align 4, !tbaa !9
  %5357 = zext i32 %5356 to i64
  %5358 = add i64 %5357, 8
  %5359 = call i32 @i32_load(ptr noundef %5355, i64 noundef %5358)
  store i32 %5359, ptr %50, align 4, !tbaa !9
  br label %5385

5360:                                             ; preds = %5331, %5322, %4321
  %5361 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5361, ptr %50, align 4, !tbaa !9
  %5362 = load ptr, ptr %5, align 8, !tbaa !5
  %5363 = getelementptr inbounds %struct.w2c_hermes, ptr %5362, i32 0, i32 6
  %5364 = load i32, ptr %50, align 4, !tbaa !9
  %5365 = zext i32 %5364 to i64
  %5366 = add i64 %5365, 4
  %5367 = call i32 @i32_load(ptr noundef %5363, i64 noundef %5366)
  store i32 %5367, ptr %50, align 4, !tbaa !9
  store i32 268, ptr %51, align 4, !tbaa !9
  %5368 = load i32, ptr %51, align 4, !tbaa !9
  %5369 = load i32, ptr %50, align 4, !tbaa !9
  %5370 = add i32 %5369, %5368
  store i32 %5370, ptr %50, align 4, !tbaa !9
  %5371 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %5371, ptr %11, align 4, !tbaa !9
  %5372 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5372, ptr %50, align 4, !tbaa !9
  %5373 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5373, ptr %51, align 4, !tbaa !9
  %5374 = load ptr, ptr %5, align 8, !tbaa !5
  %5375 = getelementptr inbounds %struct.w2c_hermes, ptr %5374, i32 0, i32 6
  %5376 = load i32, ptr %51, align 4, !tbaa !9
  %5377 = zext i32 %5376 to i64
  %5378 = add i64 %5377, 28
  %5379 = call i32 @i32_load(ptr noundef %5375, i64 noundef %5378)
  store i32 %5379, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %5380 = load ptr, ptr %5, align 8, !tbaa !5
  %5381 = load i32, ptr %50, align 4, !tbaa !9
  %5382 = load i32, ptr %51, align 4, !tbaa !9
  %5383 = load i32, ptr %52, align 4, !tbaa !9
  %5384 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %5380, i32 noundef %5381, i32 noundef %5382, i32 noundef %5383)
  store i32 %5384, ptr %50, align 4, !tbaa !9
  br label %5385

5385:                                             ; preds = %5360, %5332, %5312
  %5386 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5386, ptr %51, align 4, !tbaa !9
  %5387 = load ptr, ptr %5, align 8, !tbaa !5
  %5388 = load i32, ptr %48, align 4, !tbaa !9
  %5389 = load i32, ptr %49, align 4, !tbaa !9
  %5390 = load i32, ptr %50, align 4, !tbaa !9
  %5391 = load i32, ptr %51, align 4, !tbaa !9
  %5392 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitCall0x28hermes0x3A0x3AESTree0x3A0x3ACallExpressionLikeNode0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %5387, i32 noundef %5388, i32 noundef %5389, i32 noundef %5390, i32 noundef %5391)
  store i32 %5392, ptr %48, align 4, !tbaa !9
  br label %5393

5393:                                             ; preds = %5385, %5242
  %5394 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5394, ptr %7, align 4, !tbaa !9
  %5395 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %5395, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %5396 = load i32, ptr %49, align 4, !tbaa !9
  %5397 = load i32, ptr %48, align 4, !tbaa !9
  %5398 = add i32 %5397, %5396
  store i32 %5398, ptr %48, align 4, !tbaa !9
  %5399 = load i32, ptr %48, align 4, !tbaa !9
  %5400 = load ptr, ptr %5, align 8, !tbaa !5
  %5401 = getelementptr inbounds %struct.w2c_hermes, ptr %5400, i32 0, i32 3
  store i32 %5399, ptr %5401, align 8, !tbaa !15
  %5402 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5402, ptr %48, align 4, !tbaa !9
  br label %22463

5403:                                             ; preds = %4253, %4244
  %5404 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5404, ptr %48, align 4, !tbaa !9
  %5405 = load i32, ptr %48, align 4, !tbaa !9
  %5406 = icmp ne i32 %5405, 0
  %5407 = xor i1 %5406, true
  %5408 = zext i1 %5407 to i32
  store i32 %5408, ptr %48, align 4, !tbaa !9
  %5409 = load i32, ptr %48, align 4, !tbaa !9
  %5410 = icmp ne i32 %5409, 0
  br i1 %5410, label %5411, label %5412

5411:                                             ; preds = %5403
  br label %5429

5412:                                             ; preds = %5403
  %5413 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5413, ptr %48, align 4, !tbaa !9
  store i32 48, ptr %49, align 4, !tbaa !9
  %5414 = load i32, ptr %48, align 4, !tbaa !9
  %5415 = load i32, ptr %49, align 4, !tbaa !9
  %5416 = icmp ne i32 %5414, %5415
  %5417 = zext i1 %5416 to i32
  store i32 %5417, ptr %48, align 4, !tbaa !9
  %5418 = load i32, ptr %48, align 4, !tbaa !9
  %5419 = icmp ne i32 %5418, 0
  br i1 %5419, label %5420, label %5421

5420:                                             ; preds = %5412
  br label %5429

5421:                                             ; preds = %5412
  %5422 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5422, ptr %48, align 4, !tbaa !9
  %5423 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5423, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %5424 = load ptr, ptr %5, align 8, !tbaa !5
  %5425 = load i32, ptr %48, align 4, !tbaa !9
  %5426 = load i32, ptr %49, align 4, !tbaa !9
  %5427 = load i32, ptr %50, align 4, !tbaa !9
  %5428 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalCallExpr0x28hermes0x3A0x3AESTree0x3A0x3AOptionalCallExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %5424, i32 noundef %5425, i32 noundef %5426, i32 noundef %5427)
  store i32 %5428, ptr %48, align 4, !tbaa !9
  br label %22463

5429:                                             ; preds = %5420, %5411
  %5430 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5430, ptr %48, align 4, !tbaa !9
  %5431 = load i32, ptr %48, align 4, !tbaa !9
  %5432 = icmp ne i32 %5431, 0
  %5433 = xor i1 %5432, true
  %5434 = zext i1 %5433 to i32
  store i32 %5434, ptr %48, align 4, !tbaa !9
  %5435 = load i32, ptr %48, align 4, !tbaa !9
  %5436 = icmp ne i32 %5435, 0
  br i1 %5436, label %5437, label %5438

5437:                                             ; preds = %5429
  br label %6174

5438:                                             ; preds = %5429
  %5439 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5439, ptr %48, align 4, !tbaa !9
  store i32 42, ptr %49, align 4, !tbaa !9
  %5440 = load i32, ptr %48, align 4, !tbaa !9
  %5441 = load i32, ptr %49, align 4, !tbaa !9
  %5442 = icmp ne i32 %5440, %5441
  %5443 = zext i1 %5442 to i32
  store i32 %5443, ptr %48, align 4, !tbaa !9
  %5444 = load i32, ptr %48, align 4, !tbaa !9
  %5445 = icmp ne i32 %5444, 0
  br i1 %5445, label %5446, label %5447

5446:                                             ; preds = %5438
  br label %6174

5447:                                             ; preds = %5438
  %5448 = load ptr, ptr %5, align 8, !tbaa !5
  %5449 = getelementptr inbounds %struct.w2c_hermes, ptr %5448, i32 0, i32 3
  %5450 = load i32, ptr %5449, align 8, !tbaa !15
  store i32 %5450, ptr %48, align 4, !tbaa !9
  store i32 -64, ptr %49, align 4, !tbaa !9
  %5451 = load i32, ptr %49, align 4, !tbaa !9
  %5452 = load i32, ptr %48, align 4, !tbaa !9
  %5453 = add i32 %5452, %5451
  store i32 %5453, ptr %48, align 4, !tbaa !9
  %5454 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5454, ptr %11, align 4, !tbaa !9
  %5455 = load i32, ptr %48, align 4, !tbaa !9
  %5456 = load ptr, ptr %5, align 8, !tbaa !5
  %5457 = getelementptr inbounds %struct.w2c_hermes, ptr %5456, i32 0, i32 3
  store i32 %5455, ptr %5457, align 8, !tbaa !15
  %5458 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5458, ptr %48, align 4, !tbaa !9
  %5459 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5459, ptr %49, align 4, !tbaa !9
  %5460 = load ptr, ptr %5, align 8, !tbaa !5
  %5461 = getelementptr inbounds %struct.w2c_hermes, ptr %5460, i32 0, i32 6
  %5462 = load i32, ptr %49, align 4, !tbaa !9
  %5463 = zext i32 %5462 to i64
  %5464 = add i64 %5463, 28
  %5465 = call i32 @i32_load(ptr noundef %5461, i64 noundef %5464)
  store i32 %5465, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %5466 = load ptr, ptr %5, align 8, !tbaa !5
  %5467 = load i32, ptr %48, align 4, !tbaa !9
  %5468 = load i32, ptr %49, align 4, !tbaa !9
  %5469 = load i32, ptr %50, align 4, !tbaa !9
  %5470 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %5466, i32 noundef %5467, i32 noundef %5468, i32 noundef %5469)
  store i32 %5470, ptr %48, align 4, !tbaa !9
  %5471 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5471, ptr %10, align 4, !tbaa !9
  %5472 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5472, ptr %48, align 4, !tbaa !9
  %5473 = load ptr, ptr %5, align 8, !tbaa !5
  %5474 = getelementptr inbounds %struct.w2c_hermes, ptr %5473, i32 0, i32 6
  %5475 = load i32, ptr %48, align 4, !tbaa !9
  %5476 = zext i32 %5475 to i64
  %5477 = add i64 %5476, 40
  %5478 = call i32 @i32_load(ptr noundef %5474, i64 noundef %5477)
  store i32 %5478, ptr %48, align 4, !tbaa !9
  %5479 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5479, ptr %8, align 4, !tbaa !9
  %5480 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5480, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %5481 = load i32, ptr %50, align 4, !tbaa !9
  %5482 = load i32, ptr %49, align 4, !tbaa !9
  %5483 = add i32 %5482, %5481
  store i32 %5483, ptr %49, align 4, !tbaa !9
  %5484 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %5484, ptr %9, align 4, !tbaa !9
  %5485 = load i32, ptr %48, align 4, !tbaa !9
  %5486 = load i32, ptr %49, align 4, !tbaa !9
  %5487 = icmp ne i32 %5485, %5486
  %5488 = zext i1 %5487 to i32
  store i32 %5488, ptr %48, align 4, !tbaa !9
  %5489 = load i32, ptr %48, align 4, !tbaa !9
  %5490 = icmp ne i32 %5489, 0
  br i1 %5490, label %5491, label %5740

5491:                                             ; preds = %5447
  %5492 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5492, ptr %48, align 4, !tbaa !9
  %5493 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5493, ptr %7, align 4, !tbaa !9
  br label %5494

5494:                                             ; preds = %5526, %5491
  %5495 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5495, ptr %48, align 4, !tbaa !9
  %5496 = load ptr, ptr %5, align 8, !tbaa !5
  %5497 = getelementptr inbounds %struct.w2c_hermes, ptr %5496, i32 0, i32 6
  %5498 = load i32, ptr %48, align 4, !tbaa !9
  %5499 = zext i32 %5498 to i64
  %5500 = add i64 %5499, 8
  %5501 = call i32 @i32_load(ptr noundef %5497, i64 noundef %5500)
  store i32 %5501, ptr %48, align 4, !tbaa !9
  store i32 41, ptr %49, align 4, !tbaa !9
  %5502 = load i32, ptr %48, align 4, !tbaa !9
  %5503 = load i32, ptr %49, align 4, !tbaa !9
  %5504 = icmp eq i32 %5502, %5503
  %5505 = zext i1 %5504 to i32
  store i32 %5505, ptr %48, align 4, !tbaa !9
  %5506 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5506, ptr %49, align 4, !tbaa !9
  %5507 = load i32, ptr %49, align 4, !tbaa !9
  %5508 = load i32, ptr %48, align 4, !tbaa !9
  %5509 = or i32 %5508, %5507
  store i32 %5509, ptr %48, align 4, !tbaa !9
  %5510 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5510, ptr %12, align 4, !tbaa !9
  %5511 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5511, ptr %48, align 4, !tbaa !9
  %5512 = load ptr, ptr %5, align 8, !tbaa !5
  %5513 = getelementptr inbounds %struct.w2c_hermes, ptr %5512, i32 0, i32 6
  %5514 = load i32, ptr %48, align 4, !tbaa !9
  %5515 = zext i32 %5514 to i64
  %5516 = add i64 %5515, 4
  %5517 = call i32 @i32_load(ptr noundef %5513, i64 noundef %5516)
  store i32 %5517, ptr %48, align 4, !tbaa !9
  %5518 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5518, ptr %7, align 4, !tbaa !9
  %5519 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5519, ptr %49, align 4, !tbaa !9
  %5520 = load i32, ptr %48, align 4, !tbaa !9
  %5521 = load i32, ptr %49, align 4, !tbaa !9
  %5522 = icmp ne i32 %5520, %5521
  %5523 = zext i1 %5522 to i32
  store i32 %5523, ptr %48, align 4, !tbaa !9
  %5524 = load i32, ptr %48, align 4, !tbaa !9
  %5525 = icmp ne i32 %5524, 0
  br i1 %5525, label %5526, label %5527

5526:                                             ; preds = %5494
  br label %5494

5527:                                             ; preds = %5494
  %5528 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5528, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %5529 = load i32, ptr %49, align 4, !tbaa !9
  %5530 = load i32, ptr %48, align 4, !tbaa !9
  %5531 = and i32 %5530, %5529
  store i32 %5531, ptr %48, align 4, !tbaa !9
  %5532 = load i32, ptr %48, align 4, !tbaa !9
  %5533 = icmp ne i32 %5532, 0
  %5534 = xor i1 %5533, true
  %5535 = zext i1 %5534 to i32
  store i32 %5535, ptr %48, align 4, !tbaa !9
  %5536 = load i32, ptr %48, align 4, !tbaa !9
  %5537 = icmp ne i32 %5536, 0
  br i1 %5537, label %5538, label %5674

5538:                                             ; preds = %5527
  %5539 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5539, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %5540 = load ptr, ptr %5, align 8, !tbaa !5
  %5541 = getelementptr inbounds %struct.w2c_hermes, ptr %5540, i32 0, i32 6
  %5542 = load i32, ptr %48, align 4, !tbaa !9
  %5543 = zext i32 %5542 to i64
  %5544 = add i64 %5543, 48
  %5545 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5541, i64 noundef %5544, i64 noundef %5545)
  %5546 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5546, ptr %48, align 4, !tbaa !9
  %5547 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5547, ptr %49, align 4, !tbaa !9
  store i32 56, ptr %50, align 4, !tbaa !9
  %5548 = load i32, ptr %50, align 4, !tbaa !9
  %5549 = load i32, ptr %49, align 4, !tbaa !9
  %5550 = add i32 %5549, %5548
  store i32 %5550, ptr %49, align 4, !tbaa !9
  %5551 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %5551, ptr %12, align 4, !tbaa !9
  %5552 = load ptr, ptr %5, align 8, !tbaa !5
  %5553 = getelementptr inbounds %struct.w2c_hermes, ptr %5552, i32 0, i32 6
  %5554 = load i32, ptr %48, align 4, !tbaa !9
  %5555 = zext i32 %5554 to i64
  %5556 = add i64 %5555, 44
  %5557 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5553, i64 noundef %5556, i32 noundef %5557)
  %5558 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5558, ptr %48, align 4, !tbaa !9
  %5559 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5559, ptr %49, align 4, !tbaa !9
  %5560 = load i32, ptr %48, align 4, !tbaa !9
  %5561 = load i32, ptr %49, align 4, !tbaa !9
  %5562 = icmp eq i32 %5560, %5561
  %5563 = zext i1 %5562 to i32
  store i32 %5563, ptr %48, align 4, !tbaa !9
  %5564 = load i32, ptr %48, align 4, !tbaa !9
  %5565 = icmp ne i32 %5564, 0
  br i1 %5565, label %5566, label %5567

5566:                                             ; preds = %5538
  br label %5768

5567:                                             ; preds = %5538
  br label %5568

5568:                                             ; preds = %5672, %5567
  %5569 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5569, ptr %48, align 4, !tbaa !9
  %5570 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5570, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %5571 = load ptr, ptr %5, align 8, !tbaa !5
  %5572 = load i32, ptr %48, align 4, !tbaa !9
  %5573 = load i32, ptr %49, align 4, !tbaa !9
  %5574 = load i32, ptr %50, align 4, !tbaa !9
  %5575 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %5571, i32 noundef %5572, i32 noundef %5573, i32 noundef %5574)
  store i32 %5575, ptr %48, align 4, !tbaa !9
  %5576 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5576, ptr %14, align 4, !tbaa !9
  %5577 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5577, ptr %48, align 4, !tbaa !9
  %5578 = load ptr, ptr %5, align 8, !tbaa !5
  %5579 = getelementptr inbounds %struct.w2c_hermes, ptr %5578, i32 0, i32 6
  %5580 = load i32, ptr %48, align 4, !tbaa !9
  %5581 = zext i32 %5580 to i64
  %5582 = add i64 %5581, 48
  %5583 = call i32 @i32_load(ptr noundef %5579, i64 noundef %5582)
  store i32 %5583, ptr %48, align 4, !tbaa !9
  %5584 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5584, ptr %7, align 4, !tbaa !9
  %5585 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5585, ptr %49, align 4, !tbaa !9
  %5586 = load ptr, ptr %5, align 8, !tbaa !5
  %5587 = getelementptr inbounds %struct.w2c_hermes, ptr %5586, i32 0, i32 6
  %5588 = load i32, ptr %49, align 4, !tbaa !9
  %5589 = zext i32 %5588 to i64
  %5590 = add i64 %5589, 52
  %5591 = call i32 @i32_load(ptr noundef %5587, i64 noundef %5590)
  store i32 %5591, ptr %49, align 4, !tbaa !9
  %5592 = load i32, ptr %48, align 4, !tbaa !9
  %5593 = load i32, ptr %49, align 4, !tbaa !9
  %5594 = icmp uge i32 %5592, %5593
  %5595 = zext i1 %5594 to i32
  store i32 %5595, ptr %48, align 4, !tbaa !9
  %5596 = load i32, ptr %48, align 4, !tbaa !9
  %5597 = icmp ne i32 %5596, 0
  br i1 %5597, label %5598, label %5617

5598:                                             ; preds = %5568
  %5599 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5599, ptr %48, align 4, !tbaa !9
  store i32 44, ptr %49, align 4, !tbaa !9
  %5600 = load i32, ptr %49, align 4, !tbaa !9
  %5601 = load i32, ptr %48, align 4, !tbaa !9
  %5602 = add i32 %5601, %5600
  store i32 %5602, ptr %48, align 4, !tbaa !9
  %5603 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5603, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %5604 = load ptr, ptr %5, align 8, !tbaa !5
  %5605 = load i32, ptr %48, align 4, !tbaa !9
  %5606 = load i32, ptr %49, align 4, !tbaa !9
  %5607 = load i32, ptr %50, align 4, !tbaa !9
  %5608 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %5604, i32 noundef %5605, i32 noundef %5606, i32 noundef %5607, i32 noundef %5608)
  %5609 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5609, ptr %48, align 4, !tbaa !9
  %5610 = load ptr, ptr %5, align 8, !tbaa !5
  %5611 = getelementptr inbounds %struct.w2c_hermes, ptr %5610, i32 0, i32 6
  %5612 = load i32, ptr %48, align 4, !tbaa !9
  %5613 = zext i32 %5612 to i64
  %5614 = add i64 %5613, 48
  %5615 = call i32 @i32_load(ptr noundef %5611, i64 noundef %5614)
  store i32 %5615, ptr %48, align 4, !tbaa !9
  %5616 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5616, ptr %7, align 4, !tbaa !9
  br label %5617

5617:                                             ; preds = %5598, %5568
  %5618 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5618, ptr %48, align 4, !tbaa !9
  %5619 = load ptr, ptr %5, align 8, !tbaa !5
  %5620 = getelementptr inbounds %struct.w2c_hermes, ptr %5619, i32 0, i32 6
  %5621 = load i32, ptr %48, align 4, !tbaa !9
  %5622 = zext i32 %5621 to i64
  %5623 = add i64 %5622, 44
  %5624 = call i32 @i32_load(ptr noundef %5620, i64 noundef %5623)
  store i32 %5624, ptr %48, align 4, !tbaa !9
  %5625 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5625, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %5626 = load i32, ptr %50, align 4, !tbaa !9
  %5627 = and i32 %5626, 31
  %5628 = load i32, ptr %49, align 4, !tbaa !9
  %5629 = shl i32 %5628, %5627
  store i32 %5629, ptr %49, align 4, !tbaa !9
  %5630 = load i32, ptr %49, align 4, !tbaa !9
  %5631 = load i32, ptr %48, align 4, !tbaa !9
  %5632 = add i32 %5631, %5630
  store i32 %5632, ptr %48, align 4, !tbaa !9
  %5633 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5633, ptr %49, align 4, !tbaa !9
  %5634 = load ptr, ptr %5, align 8, !tbaa !5
  %5635 = getelementptr inbounds %struct.w2c_hermes, ptr %5634, i32 0, i32 6
  %5636 = load i32, ptr %48, align 4, !tbaa !9
  %5637 = zext i32 %5636 to i64
  %5638 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5635, i64 noundef %5637, i32 noundef %5638)
  %5639 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5639, ptr %48, align 4, !tbaa !9
  %5640 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5640, ptr %49, align 4, !tbaa !9
  %5641 = load ptr, ptr %5, align 8, !tbaa !5
  %5642 = getelementptr inbounds %struct.w2c_hermes, ptr %5641, i32 0, i32 6
  %5643 = load i32, ptr %49, align 4, !tbaa !9
  %5644 = zext i32 %5643 to i64
  %5645 = add i64 %5644, 48
  %5646 = call i32 @i32_load(ptr noundef %5642, i64 noundef %5645)
  store i32 %5646, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %5647 = load i32, ptr %50, align 4, !tbaa !9
  %5648 = load i32, ptr %49, align 4, !tbaa !9
  %5649 = add i32 %5648, %5647
  store i32 %5649, ptr %49, align 4, !tbaa !9
  %5650 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %5650, ptr %7, align 4, !tbaa !9
  %5651 = load ptr, ptr %5, align 8, !tbaa !5
  %5652 = getelementptr inbounds %struct.w2c_hermes, ptr %5651, i32 0, i32 6
  %5653 = load i32, ptr %48, align 4, !tbaa !9
  %5654 = zext i32 %5653 to i64
  %5655 = add i64 %5654, 48
  %5656 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5652, i64 noundef %5655, i32 noundef %5656)
  %5657 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5657, ptr %48, align 4, !tbaa !9
  %5658 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5658, ptr %49, align 4, !tbaa !9
  %5659 = load ptr, ptr %5, align 8, !tbaa !5
  %5660 = getelementptr inbounds %struct.w2c_hermes, ptr %5659, i32 0, i32 6
  %5661 = load i32, ptr %49, align 4, !tbaa !9
  %5662 = zext i32 %5661 to i64
  %5663 = add i64 %5662, 4
  %5664 = call i32 @i32_load(ptr noundef %5660, i64 noundef %5663)
  store i32 %5664, ptr %49, align 4, !tbaa !9
  %5665 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %5665, ptr %8, align 4, !tbaa !9
  %5666 = load i32, ptr %48, align 4, !tbaa !9
  %5667 = load i32, ptr %49, align 4, !tbaa !9
  %5668 = icmp ne i32 %5666, %5667
  %5669 = zext i1 %5668 to i32
  store i32 %5669, ptr %48, align 4, !tbaa !9
  %5670 = load i32, ptr %48, align 4, !tbaa !9
  %5671 = icmp ne i32 %5670, 0
  br i1 %5671, label %5672, label %5673

5672:                                             ; preds = %5617
  br label %5568

5673:                                             ; preds = %5617
  br label %5760

5674:                                             ; preds = %5527
  %5675 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5675, ptr %48, align 4, !tbaa !9
  %5676 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5676, ptr %49, align 4, !tbaa !9
  %5677 = load ptr, ptr %5, align 8, !tbaa !5
  %5678 = load i32, ptr %48, align 4, !tbaa !9
  %5679 = load i32, ptr %49, align 4, !tbaa !9
  %5680 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenArrayFromElements0x28llvh0x3A0x3Asimple_ilist0x3Chermes0x3A0x3AESTree0x3A0x3ANode0x3E0x260x29(ptr noundef %5677, i32 noundef %5678, i32 noundef %5679)
  store i32 %5680, ptr %48, align 4, !tbaa !9
  %5681 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5681, ptr %7, align 4, !tbaa !9
  %5682 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5682, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %5683 = load ptr, ptr %5, align 8, !tbaa !5
  %5684 = getelementptr inbounds %struct.w2c_hermes, ptr %5683, i32 0, i32 6
  %5685 = load i32, ptr %48, align 4, !tbaa !9
  %5686 = zext i32 %5685 to i64
  %5687 = add i64 %5686, 32
  %5688 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5684, i64 noundef %5687, i32 noundef %5688)
  %5689 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5689, ptr %48, align 4, !tbaa !9
  %5690 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5690, ptr %49, align 4, !tbaa !9
  %5691 = load ptr, ptr %5, align 8, !tbaa !5
  %5692 = getelementptr inbounds %struct.w2c_hermes, ptr %5691, i32 0, i32 6
  %5693 = load i32, ptr %48, align 4, !tbaa !9
  %5694 = zext i32 %5693 to i64
  %5695 = add i64 %5694, 48
  %5696 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5692, i64 noundef %5695, i32 noundef %5696)
  %5697 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5697, ptr %48, align 4, !tbaa !9
  %5698 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5698, ptr %49, align 4, !tbaa !9
  %5699 = load ptr, ptr %5, align 8, !tbaa !5
  %5700 = getelementptr inbounds %struct.w2c_hermes, ptr %5699, i32 0, i32 6
  %5701 = load i32, ptr %48, align 4, !tbaa !9
  %5702 = zext i32 %5701 to i64
  %5703 = add i64 %5702, 44
  %5704 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5700, i64 noundef %5703, i32 noundef %5704)
  %5705 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5705, ptr %48, align 4, !tbaa !9
  %5706 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5706, ptr %49, align 4, !tbaa !9
  store i32 44, ptr %50, align 4, !tbaa !9
  %5707 = load i32, ptr %50, align 4, !tbaa !9
  %5708 = load i32, ptr %49, align 4, !tbaa !9
  %5709 = add i32 %5708, %5707
  store i32 %5709, ptr %49, align 4, !tbaa !9
  %5710 = load ptr, ptr %5, align 8, !tbaa !5
  %5711 = getelementptr inbounds %struct.w2c_hermes, ptr %5710, i32 0, i32 6
  %5712 = load i32, ptr %48, align 4, !tbaa !9
  %5713 = zext i32 %5712 to i64
  %5714 = add i64 %5713, 28
  %5715 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5711, i64 noundef %5714, i32 noundef %5715)
  %5716 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5716, ptr %48, align 4, !tbaa !9
  %5717 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5717, ptr %49, align 4, !tbaa !9
  %5718 = load ptr, ptr %5, align 8, !tbaa !5
  %5719 = getelementptr inbounds %struct.w2c_hermes, ptr %5718, i32 0, i32 6
  %5720 = load i32, ptr %49, align 4, !tbaa !9
  %5721 = zext i32 %5720 to i64
  %5722 = add i64 %5721, 28
  %5723 = call i64 @i64_load(ptr noundef %5719, i64 noundef %5722)
  store i64 %5723, ptr %59, align 8, !tbaa !11
  %5724 = load ptr, ptr %5, align 8, !tbaa !5
  %5725 = getelementptr inbounds %struct.w2c_hermes, ptr %5724, i32 0, i32 6
  %5726 = load i32, ptr %48, align 4, !tbaa !9
  %5727 = zext i32 %5726 to i64
  %5728 = add i64 %5727, 16
  %5729 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5725, i64 noundef %5728, i64 noundef %5729)
  %5730 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5730, ptr %48, align 4, !tbaa !9
  store i32 47, ptr %49, align 4, !tbaa !9
  %5731 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5731, ptr %50, align 4, !tbaa !9
  store i32 16, ptr %51, align 4, !tbaa !9
  %5732 = load i32, ptr %51, align 4, !tbaa !9
  %5733 = load i32, ptr %50, align 4, !tbaa !9
  %5734 = add i32 %5733, %5732
  store i32 %5734, ptr %50, align 4, !tbaa !9
  %5735 = load ptr, ptr %5, align 8, !tbaa !5
  %5736 = load i32, ptr %48, align 4, !tbaa !9
  %5737 = load i32, ptr %49, align 4, !tbaa !9
  %5738 = load i32, ptr %50, align 4, !tbaa !9
  %5739 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %5735, i32 noundef %5736, i32 noundef %5737, i32 noundef %5738)
  store i32 %5739, ptr %48, align 4, !tbaa !9
  br label %6164

5740:                                             ; preds = %5447
  %5741 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5741, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %5742 = load ptr, ptr %5, align 8, !tbaa !5
  %5743 = getelementptr inbounds %struct.w2c_hermes, ptr %5742, i32 0, i32 6
  %5744 = load i32, ptr %48, align 4, !tbaa !9
  %5745 = zext i32 %5744 to i64
  %5746 = add i64 %5745, 48
  %5747 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5743, i64 noundef %5746, i64 noundef %5747)
  %5748 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5748, ptr %48, align 4, !tbaa !9
  %5749 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5749, ptr %49, align 4, !tbaa !9
  store i32 56, ptr %50, align 4, !tbaa !9
  %5750 = load i32, ptr %50, align 4, !tbaa !9
  %5751 = load i32, ptr %49, align 4, !tbaa !9
  %5752 = add i32 %5751, %5750
  store i32 %5752, ptr %49, align 4, !tbaa !9
  %5753 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %5753, ptr %12, align 4, !tbaa !9
  %5754 = load ptr, ptr %5, align 8, !tbaa !5
  %5755 = getelementptr inbounds %struct.w2c_hermes, ptr %5754, i32 0, i32 6
  %5756 = load i32, ptr %48, align 4, !tbaa !9
  %5757 = zext i32 %5756 to i64
  %5758 = add i64 %5757, 44
  %5759 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5755, i64 noundef %5758, i32 noundef %5759)
  br label %5768

5760:                                             ; preds = %5673
  %5761 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5761, ptr %48, align 4, !tbaa !9
  %5762 = load ptr, ptr %5, align 8, !tbaa !5
  %5763 = getelementptr inbounds %struct.w2c_hermes, ptr %5762, i32 0, i32 6
  %5764 = load i32, ptr %48, align 4, !tbaa !9
  %5765 = zext i32 %5764 to i64
  %5766 = add i64 %5765, 44
  %5767 = call i32 @i32_load(ptr noundef %5763, i64 noundef %5766)
  store i32 %5767, ptr %48, align 4, !tbaa !9
  br label %5771

5768:                                             ; preds = %5740, %5566
  store i32 0, ptr %48, align 4, !tbaa !9
  %5769 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5769, ptr %7, align 4, !tbaa !9
  %5770 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5770, ptr %48, align 4, !tbaa !9
  br label %5771

5771:                                             ; preds = %5768, %5760
  %5772 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5772, ptr %8, align 4, !tbaa !9
  %5773 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5773, ptr %48, align 4, !tbaa !9
  %5774 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5774, ptr %49, align 4, !tbaa !9
  %5775 = load ptr, ptr %5, align 8, !tbaa !5
  %5776 = getelementptr inbounds %struct.w2c_hermes, ptr %5775, i32 0, i32 6
  %5777 = load i32, ptr %48, align 4, !tbaa !9
  %5778 = zext i32 %5777 to i64
  %5779 = add i64 %5778, 40
  %5780 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5776, i64 noundef %5779, i32 noundef %5780)
  %5781 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5781, ptr %48, align 4, !tbaa !9
  %5782 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5782, ptr %49, align 4, !tbaa !9
  %5783 = load ptr, ptr %5, align 8, !tbaa !5
  %5784 = getelementptr inbounds %struct.w2c_hermes, ptr %5783, i32 0, i32 6
  %5785 = load i32, ptr %48, align 4, !tbaa !9
  %5786 = zext i32 %5785 to i64
  %5787 = add i64 %5786, 36
  %5788 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5784, i64 noundef %5787, i32 noundef %5788)
  %5789 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5789, ptr %48, align 4, !tbaa !9
  %5790 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5790, ptr %49, align 4, !tbaa !9
  %5791 = load ptr, ptr %5, align 8, !tbaa !5
  %5792 = getelementptr inbounds %struct.w2c_hermes, ptr %5791, i32 0, i32 6
  %5793 = load i32, ptr %49, align 4, !tbaa !9
  %5794 = zext i32 %5793 to i64
  %5795 = add i64 %5794, 36
  %5796 = call i64 @i64_load(ptr noundef %5792, i64 noundef %5795)
  store i64 %5796, ptr %59, align 8, !tbaa !11
  %5797 = load ptr, ptr %5, align 8, !tbaa !5
  %5798 = getelementptr inbounds %struct.w2c_hermes, ptr %5797, i32 0, i32 6
  %5799 = load i32, ptr %48, align 4, !tbaa !9
  %5800 = zext i32 %5799 to i64
  %5801 = add i64 %5800, 8
  %5802 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5798, i64 noundef %5801, i64 noundef %5802)
  %5803 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5803, ptr %48, align 4, !tbaa !9
  %5804 = load ptr, ptr %5, align 8, !tbaa !5
  %5805 = getelementptr inbounds %struct.w2c_hermes, ptr %5804, i32 0, i32 6
  %5806 = load i32, ptr %48, align 4, !tbaa !9
  %5807 = zext i32 %5806 to i64
  %5808 = add i64 %5807, 4
  %5809 = call i32 @i32_load(ptr noundef %5805, i64 noundef %5808)
  store i32 %5809, ptr %48, align 4, !tbaa !9
  %5810 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5810, ptr %7, align 4, !tbaa !9
  store i32 84, ptr %48, align 4, !tbaa !9
  %5811 = load ptr, ptr %5, align 8, !tbaa !5
  %5812 = load i32, ptr %48, align 4, !tbaa !9
  %5813 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %5811, i32 noundef %5812)
  store i32 %5813, ptr %48, align 4, !tbaa !9
  %5814 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5814, ptr %8, align 4, !tbaa !9
  %5815 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5815, ptr %48, align 4, !tbaa !9
  %5816 = load ptr, ptr %5, align 8, !tbaa !5
  %5817 = getelementptr inbounds %struct.w2c_hermes, ptr %5816, i32 0, i32 6
  %5818 = load i32, ptr %48, align 4, !tbaa !9
  %5819 = zext i32 %5818 to i64
  %5820 = add i64 %5819, 8
  %5821 = call i64 @i64_load(ptr noundef %5817, i64 noundef %5820)
  store i64 %5821, ptr %58, align 8, !tbaa !11
  %5822 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %5822, ptr %31, align 8, !tbaa !11
  %5823 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5823, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %5824 = load ptr, ptr %5, align 8, !tbaa !5
  %5825 = getelementptr inbounds %struct.w2c_hermes, ptr %5824, i32 0, i32 6
  %5826 = load i32, ptr %48, align 4, !tbaa !9
  %5827 = zext i32 %5826 to i64
  %5828 = add i64 %5827, 20
  %5829 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5825, i64 noundef %5828, i64 noundef %5829)
  %5830 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5830, ptr %48, align 4, !tbaa !9
  %5831 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5831, ptr %49, align 4, !tbaa !9
  store i32 28, ptr %50, align 4, !tbaa !9
  %5832 = load i32, ptr %50, align 4, !tbaa !9
  %5833 = load i32, ptr %49, align 4, !tbaa !9
  %5834 = add i32 %5833, %5832
  store i32 %5834, ptr %49, align 4, !tbaa !9
  %5835 = load ptr, ptr %5, align 8, !tbaa !5
  %5836 = getelementptr inbounds %struct.w2c_hermes, ptr %5835, i32 0, i32 6
  %5837 = load i32, ptr %48, align 4, !tbaa !9
  %5838 = zext i32 %5837 to i64
  %5839 = add i64 %5838, 16
  %5840 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5836, i64 noundef %5839, i32 noundef %5840)
  %5841 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5841, ptr %48, align 4, !tbaa !9
  store i32 459775, ptr %49, align 4, !tbaa !9
  %5842 = load ptr, ptr %5, align 8, !tbaa !5
  %5843 = getelementptr inbounds %struct.w2c_hermes, ptr %5842, i32 0, i32 6
  %5844 = load i32, ptr %48, align 4, !tbaa !9
  %5845 = zext i32 %5844 to i64
  %5846 = add i64 %5845, 10
  %5847 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5843, i64 noundef %5846, i32 noundef %5847)
  %5848 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5848, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %5849 = load ptr, ptr %5, align 8, !tbaa !5
  %5850 = getelementptr inbounds %struct.w2c_hermes, ptr %5849, i32 0, i32 6
  %5851 = load i32, ptr %48, align 4, !tbaa !9
  %5852 = zext i32 %5851 to i64
  %5853 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5850, i64 noundef %5852, i64 noundef %5853)
  %5854 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5854, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %5855 = load ptr, ptr %5, align 8, !tbaa !5
  %5856 = getelementptr inbounds %struct.w2c_hermes, ptr %5855, i32 0, i32 6
  %5857 = load i32, ptr %48, align 4, !tbaa !9
  %5858 = zext i32 %5857 to i64
  %5859 = add i64 %5858, 68
  %5860 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5856, i64 noundef %5859, i64 noundef %5860)
  %5861 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5861, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %5862 = load ptr, ptr %5, align 8, !tbaa !5
  %5863 = getelementptr inbounds %struct.w2c_hermes, ptr %5862, i32 0, i32 6
  %5864 = load i32, ptr %48, align 4, !tbaa !9
  %5865 = zext i32 %5864 to i64
  %5866 = add i64 %5865, 44
  %5867 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5863, i64 noundef %5866, i64 noundef %5867)
  %5868 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5868, ptr %48, align 4, !tbaa !9
  %5869 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5869, ptr %49, align 4, !tbaa !9
  store i32 52, ptr %50, align 4, !tbaa !9
  %5870 = load i32, ptr %50, align 4, !tbaa !9
  %5871 = load i32, ptr %49, align 4, !tbaa !9
  %5872 = add i32 %5871, %5870
  store i32 %5872, ptr %49, align 4, !tbaa !9
  %5873 = load ptr, ptr %5, align 8, !tbaa !5
  %5874 = getelementptr inbounds %struct.w2c_hermes, ptr %5873, i32 0, i32 6
  %5875 = load i32, ptr %48, align 4, !tbaa !9
  %5876 = zext i32 %5875 to i64
  %5877 = add i64 %5876, 40
  %5878 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5874, i64 noundef %5877, i32 noundef %5878)
  %5879 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5879, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %5880 = load ptr, ptr %5, align 8, !tbaa !5
  %5881 = getelementptr inbounds %struct.w2c_hermes, ptr %5880, i32 0, i32 6
  %5882 = load i32, ptr %48, align 4, !tbaa !9
  %5883 = zext i32 %5882 to i64
  %5884 = add i64 %5883, 36
  %5885 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5881, i64 noundef %5884, i32 noundef %5885)
  %5886 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5886, ptr %48, align 4, !tbaa !9
  store i32 92, ptr %49, align 4, !tbaa !9
  %5887 = load ptr, ptr %5, align 8, !tbaa !5
  %5888 = getelementptr inbounds %struct.w2c_hermes, ptr %5887, i32 0, i32 6
  %5889 = load i32, ptr %48, align 4, !tbaa !9
  %5890 = zext i32 %5889 to i64
  %5891 = add i64 %5890, 8
  %5892 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %5888, i64 noundef %5891, i32 noundef %5892)
  %5893 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5893, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %5894 = load ptr, ptr %5, align 8, !tbaa !5
  %5895 = getelementptr inbounds %struct.w2c_hermes, ptr %5894, i32 0, i32 6
  %5896 = load i32, ptr %48, align 4, !tbaa !9
  %5897 = zext i32 %5896 to i64
  %5898 = add i64 %5897, 76
  %5899 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5895, i64 noundef %5898, i64 noundef %5899)
  %5900 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5900, ptr %48, align 4, !tbaa !9
  %5901 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5901, ptr %49, align 4, !tbaa !9
  %5902 = load ptr, ptr %5, align 8, !tbaa !5
  %5903 = load i32, ptr %48, align 4, !tbaa !9
  %5904 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %5902, i32 noundef %5903, i32 noundef %5904)
  %5905 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5905, ptr %48, align 4, !tbaa !9
  %5906 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5906, ptr %49, align 4, !tbaa !9
  %5907 = load ptr, ptr %5, align 8, !tbaa !5
  %5908 = load i32, ptr %48, align 4, !tbaa !9
  %5909 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %5907, i32 noundef %5908, i32 noundef %5909)
  %5910 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5910, ptr %48, align 4, !tbaa !9
  %5911 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5911, ptr %49, align 4, !tbaa !9
  store i32 268, ptr %50, align 4, !tbaa !9
  %5912 = load i32, ptr %50, align 4, !tbaa !9
  %5913 = load i32, ptr %49, align 4, !tbaa !9
  %5914 = add i32 %5913, %5912
  store i32 %5914, ptr %49, align 4, !tbaa !9
  %5915 = load ptr, ptr %5, align 8, !tbaa !5
  %5916 = load i32, ptr %48, align 4, !tbaa !9
  %5917 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %5915, i32 noundef %5916, i32 noundef %5917)
  %5918 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %5918, ptr %58, align 8, !tbaa !11
  store i64 32, ptr %59, align 8, !tbaa !11
  %5919 = load i64, ptr %59, align 8, !tbaa !11
  %5920 = and i64 %5919, 63
  %5921 = load i64, ptr %58, align 8, !tbaa !11
  %5922 = lshr i64 %5921, %5920
  store i64 %5922, ptr %58, align 8, !tbaa !11
  %5923 = load i64, ptr %58, align 8, !tbaa !11
  %5924 = trunc i64 %5923 to i32
  store i32 %5924, ptr %48, align 4, !tbaa !9
  %5925 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5925, ptr %9, align 4, !tbaa !9
  %5926 = load i32, ptr %48, align 4, !tbaa !9
  %5927 = icmp ne i32 %5926, 0
  br i1 %5927, label %5928, label %5967

5928:                                             ; preds = %5771
  %5929 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %5929, ptr %58, align 8, !tbaa !11
  %5930 = load i64, ptr %58, align 8, !tbaa !11
  %5931 = trunc i64 %5930 to i32
  store i32 %5931, ptr %48, align 4, !tbaa !9
  %5932 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5932, ptr %7, align 4, !tbaa !9
  %5933 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5933, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %5934 = load i32, ptr %50, align 4, !tbaa !9
  %5935 = and i32 %5934, 31
  %5936 = load i32, ptr %49, align 4, !tbaa !9
  %5937 = shl i32 %5936, %5935
  store i32 %5937, ptr %49, align 4, !tbaa !9
  %5938 = load i32, ptr %49, align 4, !tbaa !9
  %5939 = load i32, ptr %48, align 4, !tbaa !9
  %5940 = add i32 %5939, %5938
  store i32 %5940, ptr %48, align 4, !tbaa !9
  %5941 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5941, ptr %9, align 4, !tbaa !9
  br label %5942

5942:                                             ; preds = %5965, %5928
  %5943 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5943, ptr %48, align 4, !tbaa !9
  %5944 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5944, ptr %49, align 4, !tbaa !9
  %5945 = load ptr, ptr %5, align 8, !tbaa !5
  %5946 = getelementptr inbounds %struct.w2c_hermes, ptr %5945, i32 0, i32 6
  %5947 = load i32, ptr %49, align 4, !tbaa !9
  %5948 = zext i32 %5947 to i64
  %5949 = call i32 @i32_load(ptr noundef %5946, i64 noundef %5948)
  store i32 %5949, ptr %49, align 4, !tbaa !9
  %5950 = load ptr, ptr %5, align 8, !tbaa !5
  %5951 = load i32, ptr %48, align 4, !tbaa !9
  %5952 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %5950, i32 noundef %5951, i32 noundef %5952)
  %5953 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5953, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %5954 = load i32, ptr %49, align 4, !tbaa !9
  %5955 = load i32, ptr %48, align 4, !tbaa !9
  %5956 = add i32 %5955, %5954
  store i32 %5956, ptr %48, align 4, !tbaa !9
  %5957 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %5957, ptr %7, align 4, !tbaa !9
  %5958 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5958, ptr %49, align 4, !tbaa !9
  %5959 = load i32, ptr %48, align 4, !tbaa !9
  %5960 = load i32, ptr %49, align 4, !tbaa !9
  %5961 = icmp ne i32 %5959, %5960
  %5962 = zext i1 %5961 to i32
  store i32 %5962, ptr %48, align 4, !tbaa !9
  %5963 = load i32, ptr %48, align 4, !tbaa !9
  %5964 = icmp ne i32 %5963, 0
  br i1 %5964, label %5965, label %5966

5965:                                             ; preds = %5942
  br label %5942

5966:                                             ; preds = %5942
  br label %5967

5967:                                             ; preds = %5966, %5771
  %5968 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5968, ptr %48, align 4, !tbaa !9
  store i32 458880, ptr %49, align 4, !tbaa !9
  %5969 = load ptr, ptr %5, align 8, !tbaa !5
  %5970 = getelementptr inbounds %struct.w2c_hermes, ptr %5969, i32 0, i32 6
  %5971 = load i32, ptr %48, align 4, !tbaa !9
  %5972 = zext i32 %5971 to i64
  %5973 = add i64 %5972, 10
  %5974 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5970, i64 noundef %5973, i32 noundef %5974)
  %5975 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5975, ptr %48, align 4, !tbaa !9
  %5976 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5976, ptr %49, align 4, !tbaa !9
  %5977 = load ptr, ptr %5, align 8, !tbaa !5
  %5978 = getelementptr inbounds %struct.w2c_hermes, ptr %5977, i32 0, i32 6
  %5979 = load i32, ptr %49, align 4, !tbaa !9
  %5980 = zext i32 %5979 to i64
  %5981 = add i64 %5980, 12
  %5982 = call i32 @i32_load(ptr noundef %5978, i64 noundef %5981)
  store i32 %5982, ptr %49, align 4, !tbaa !9
  %5983 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %5983, ptr %10, align 4, !tbaa !9
  %5984 = load ptr, ptr %5, align 8, !tbaa !5
  %5985 = getelementptr inbounds %struct.w2c_hermes, ptr %5984, i32 0, i32 6
  %5986 = load i32, ptr %49, align 4, !tbaa !9
  %5987 = zext i32 %5986 to i64
  %5988 = add i64 %5987, 44
  %5989 = call i32 @i32_load(ptr noundef %5985, i64 noundef %5988)
  store i32 %5989, ptr %49, align 4, !tbaa !9
  %5990 = load ptr, ptr %5, align 8, !tbaa !5
  %5991 = getelementptr inbounds %struct.w2c_hermes, ptr %5990, i32 0, i32 6
  %5992 = load i32, ptr %49, align 4, !tbaa !9
  %5993 = zext i32 %5992 to i64
  %5994 = add i64 %5993, 136
  %5995 = call i64 @i64_load(ptr noundef %5991, i64 noundef %5994)
  store i64 %5995, ptr %59, align 8, !tbaa !11
  %5996 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %5996, ptr %31, align 8, !tbaa !11
  store i64 1095216660480, ptr %60, align 8, !tbaa !11
  %5997 = load i64, ptr %60, align 8, !tbaa !11
  %5998 = load i64, ptr %59, align 8, !tbaa !11
  %5999 = and i64 %5998, %5997
  store i64 %5999, ptr %59, align 8, !tbaa !11
  store i64 0, ptr %60, align 8, !tbaa !11
  %6000 = load i64, ptr %59, align 8, !tbaa !11
  %6001 = load i64, ptr %60, align 8, !tbaa !11
  %6002 = icmp ne i64 %6000, %6001
  %6003 = zext i1 %6002 to i32
  store i32 %6003, ptr %49, align 4, !tbaa !9
  %6004 = load i32, ptr %49, align 4, !tbaa !9
  %6005 = icmp ne i32 %6004, 0
  br i1 %6005, label %6006, label %6018

6006:                                             ; preds = %5967
  %6007 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6007, ptr %49, align 4, !tbaa !9
  %6008 = load ptr, ptr %5, align 8, !tbaa !5
  %6009 = getelementptr inbounds %struct.w2c_hermes, ptr %6008, i32 0, i32 6
  %6010 = load i32, ptr %49, align 4, !tbaa !9
  %6011 = zext i32 %6010 to i64
  %6012 = add i64 %6011, 8
  %6013 = call i32 @i32_load(ptr noundef %6009, i64 noundef %6012)
  store i32 %6013, ptr %49, align 4, !tbaa !9
  %6014 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %6014, ptr %7, align 4, !tbaa !9
  %6015 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %6015, ptr %59, align 8, !tbaa !11
  %6016 = load i64, ptr %59, align 8, !tbaa !11
  %6017 = trunc i64 %6016 to i32
  store i32 %6017, ptr %49, align 4, !tbaa !9
  br label %6048

6018:                                             ; preds = %5967
  store i32 0, ptr %49, align 4, !tbaa !9
  %6019 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6019, ptr %50, align 4, !tbaa !9
  %6020 = load ptr, ptr %5, align 8, !tbaa !5
  %6021 = getelementptr inbounds %struct.w2c_hermes, ptr %6020, i32 0, i32 6
  %6022 = load i32, ptr %50, align 4, !tbaa !9
  %6023 = zext i32 %6022 to i64
  %6024 = add i64 %6023, 8
  %6025 = call i32 @i32_load(ptr noundef %6021, i64 noundef %6024)
  store i32 %6025, ptr %50, align 4, !tbaa !9
  %6026 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %6026, ptr %9, align 4, !tbaa !9
  %6027 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6027, ptr %51, align 4, !tbaa !9
  store i32 36, ptr %52, align 4, !tbaa !9
  %6028 = load i32, ptr %52, align 4, !tbaa !9
  %6029 = load i32, ptr %51, align 4, !tbaa !9
  %6030 = add i32 %6029, %6028
  store i32 %6030, ptr %51, align 4, !tbaa !9
  %6031 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %6031, ptr %7, align 4, !tbaa !9
  %6032 = load i32, ptr %50, align 4, !tbaa !9
  %6033 = load i32, ptr %51, align 4, !tbaa !9
  %6034 = icmp eq i32 %6032, %6033
  %6035 = zext i1 %6034 to i32
  store i32 %6035, ptr %50, align 4, !tbaa !9
  %6036 = load i32, ptr %50, align 4, !tbaa !9
  %6037 = icmp ne i32 %6036, 0
  br i1 %6037, label %6038, label %6039

6038:                                             ; preds = %6018
  br label %6048

6039:                                             ; preds = %6018
  %6040 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6040, ptr %49, align 4, !tbaa !9
  %6041 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %6041, ptr %7, align 4, !tbaa !9
  %6042 = load ptr, ptr %5, align 8, !tbaa !5
  %6043 = getelementptr inbounds %struct.w2c_hermes, ptr %6042, i32 0, i32 6
  %6044 = load i32, ptr %49, align 4, !tbaa !9
  %6045 = zext i32 %6044 to i64
  %6046 = add i64 %6045, 76
  %6047 = call i32 @i32_load(ptr noundef %6043, i64 noundef %6046)
  store i32 %6047, ptr %49, align 4, !tbaa !9
  br label %6048

6048:                                             ; preds = %6039, %6038, %6006
  %6049 = load ptr, ptr %5, align 8, !tbaa !5
  %6050 = getelementptr inbounds %struct.w2c_hermes, ptr %6049, i32 0, i32 6
  %6051 = load i32, ptr %48, align 4, !tbaa !9
  %6052 = zext i32 %6051 to i64
  %6053 = add i64 %6052, 76
  %6054 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6050, i64 noundef %6053, i32 noundef %6054)
  %6055 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6055, ptr %48, align 4, !tbaa !9
  %6056 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6056, ptr %49, align 4, !tbaa !9
  %6057 = load ptr, ptr %5, align 8, !tbaa !5
  %6058 = getelementptr inbounds %struct.w2c_hermes, ptr %6057, i32 0, i32 6
  %6059 = load i32, ptr %49, align 4, !tbaa !9
  %6060 = zext i32 %6059 to i64
  %6061 = add i64 %6060, 16
  %6062 = call i32 @i32_load(ptr noundef %6058, i64 noundef %6061)
  store i32 %6062, ptr %49, align 4, !tbaa !9
  %6063 = load ptr, ptr %5, align 8, !tbaa !5
  %6064 = getelementptr inbounds %struct.w2c_hermes, ptr %6063, i32 0, i32 6
  %6065 = load i32, ptr %48, align 4, !tbaa !9
  %6066 = zext i32 %6065 to i64
  %6067 = add i64 %6066, 72
  %6068 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6064, i64 noundef %6067, i32 noundef %6068)
  %6069 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6069, ptr %48, align 4, !tbaa !9
  %6070 = load ptr, ptr %5, align 8, !tbaa !5
  %6071 = getelementptr inbounds %struct.w2c_hermes, ptr %6070, i32 0, i32 6
  %6072 = load i32, ptr %48, align 4, !tbaa !9
  %6073 = zext i32 %6072 to i64
  %6074 = add i64 %6073, 20
  %6075 = call i32 @i32_load(ptr noundef %6071, i64 noundef %6074)
  store i32 %6075, ptr %48, align 4, !tbaa !9
  %6076 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6076, ptr %9, align 4, !tbaa !9
  %6077 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6077, ptr %48, align 4, !tbaa !9
  %6078 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6078, ptr %49, align 4, !tbaa !9
  %6079 = load ptr, ptr %5, align 8, !tbaa !5
  %6080 = getelementptr inbounds %struct.w2c_hermes, ptr %6079, i32 0, i32 6
  %6081 = load i32, ptr %48, align 4, !tbaa !9
  %6082 = zext i32 %6081 to i64
  %6083 = add i64 %6082, 36
  %6084 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6080, i64 noundef %6083, i32 noundef %6084)
  %6085 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6085, ptr %48, align 4, !tbaa !9
  %6086 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6086, ptr %49, align 4, !tbaa !9
  %6087 = load ptr, ptr %5, align 8, !tbaa !5
  %6088 = getelementptr inbounds %struct.w2c_hermes, ptr %6087, i32 0, i32 6
  %6089 = load i32, ptr %48, align 4, !tbaa !9
  %6090 = zext i32 %6089 to i64
  %6091 = add i64 %6090, 68
  %6092 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6088, i64 noundef %6091, i32 noundef %6092)
  %6093 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6093, ptr %48, align 4, !tbaa !9
  %6094 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6094, ptr %49, align 4, !tbaa !9
  %6095 = load ptr, ptr %5, align 8, !tbaa !5
  %6096 = getelementptr inbounds %struct.w2c_hermes, ptr %6095, i32 0, i32 6
  %6097 = load i32, ptr %49, align 4, !tbaa !9
  %6098 = zext i32 %6097 to i64
  %6099 = call i32 @i32_load(ptr noundef %6096, i64 noundef %6098)
  store i32 %6099, ptr %49, align 4, !tbaa !9
  %6100 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %6100, ptr %9, align 4, !tbaa !9
  %6101 = load ptr, ptr %5, align 8, !tbaa !5
  %6102 = getelementptr inbounds %struct.w2c_hermes, ptr %6101, i32 0, i32 6
  %6103 = load i32, ptr %48, align 4, !tbaa !9
  %6104 = zext i32 %6103 to i64
  %6105 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6102, i64 noundef %6104, i32 noundef %6105)
  %6106 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6106, ptr %48, align 4, !tbaa !9
  %6107 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6107, ptr %49, align 4, !tbaa !9
  %6108 = load ptr, ptr %5, align 8, !tbaa !5
  %6109 = getelementptr inbounds %struct.w2c_hermes, ptr %6108, i32 0, i32 6
  %6110 = load i32, ptr %48, align 4, !tbaa !9
  %6111 = zext i32 %6110 to i64
  %6112 = add i64 %6111, 4
  %6113 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6109, i64 noundef %6112, i32 noundef %6113)
  %6114 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6114, ptr %48, align 4, !tbaa !9
  %6115 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6115, ptr %49, align 4, !tbaa !9
  %6116 = load ptr, ptr %5, align 8, !tbaa !5
  %6117 = getelementptr inbounds %struct.w2c_hermes, ptr %6116, i32 0, i32 6
  %6118 = load i32, ptr %48, align 4, !tbaa !9
  %6119 = zext i32 %6118 to i64
  %6120 = add i64 %6119, 4
  %6121 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6117, i64 noundef %6120, i32 noundef %6121)
  %6122 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6122, ptr %48, align 4, !tbaa !9
  %6123 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6123, ptr %49, align 4, !tbaa !9
  %6124 = load ptr, ptr %5, align 8, !tbaa !5
  %6125 = getelementptr inbounds %struct.w2c_hermes, ptr %6124, i32 0, i32 6
  %6126 = load i32, ptr %48, align 4, !tbaa !9
  %6127 = zext i32 %6126 to i64
  %6128 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6125, i64 noundef %6127, i32 noundef %6128)
  %6129 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6129, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %6130 = load i32, ptr %49, align 4, !tbaa !9
  %6131 = load i32, ptr %48, align 4, !tbaa !9
  %6132 = add i32 %6131, %6130
  store i32 %6132, ptr %48, align 4, !tbaa !9
  %6133 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6133, ptr %7, align 4, !tbaa !9
  %6134 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6134, ptr %48, align 4, !tbaa !9
  %6135 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6135, ptr %49, align 4, !tbaa !9
  %6136 = load ptr, ptr %5, align 8, !tbaa !5
  %6137 = getelementptr inbounds %struct.w2c_hermes, ptr %6136, i32 0, i32 6
  %6138 = load i32, ptr %49, align 4, !tbaa !9
  %6139 = zext i32 %6138 to i64
  %6140 = add i64 %6139, 44
  %6141 = call i32 @i32_load(ptr noundef %6137, i64 noundef %6140)
  store i32 %6141, ptr %49, align 4, !tbaa !9
  %6142 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %6142, ptr %9, align 4, !tbaa !9
  %6143 = load i32, ptr %48, align 4, !tbaa !9
  %6144 = load i32, ptr %49, align 4, !tbaa !9
  %6145 = icmp ne i32 %6143, %6144
  %6146 = zext i1 %6145 to i32
  store i32 %6146, ptr %48, align 4, !tbaa !9
  %6147 = load i32, ptr %48, align 4, !tbaa !9
  %6148 = icmp ne i32 %6147, 0
  br i1 %6148, label %6149, label %6153

6149:                                             ; preds = %6048
  %6150 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6150, ptr %48, align 4, !tbaa !9
  %6151 = load ptr, ptr %5, align 8, !tbaa !5
  %6152 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %6151, i32 noundef %6152)
  br label %6153

6153:                                             ; preds = %6149, %6048
  %6154 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6154, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %6155 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6155, ptr %50, align 4, !tbaa !9
  %6156 = load i32, ptr %50, align 4, !tbaa !9
  %6157 = icmp ne i32 %6156, 0
  br i1 %6157, label %6158, label %6160

6158:                                             ; preds = %6153
  %6159 = load i32, ptr %48, align 4, !tbaa !9
  br label %6162

6160:                                             ; preds = %6153
  %6161 = load i32, ptr %49, align 4, !tbaa !9
  br label %6162

6162:                                             ; preds = %6160, %6158
  %6163 = phi i32 [ %6159, %6158 ], [ %6161, %6160 ]
  store i32 %6163, ptr %48, align 4, !tbaa !9
  br label %6164

6164:                                             ; preds = %6162, %5674
  %6165 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6165, ptr %7, align 4, !tbaa !9
  %6166 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6166, ptr %48, align 4, !tbaa !9
  store i32 -64, ptr %49, align 4, !tbaa !9
  %6167 = load i32, ptr %49, align 4, !tbaa !9
  %6168 = load i32, ptr %48, align 4, !tbaa !9
  %6169 = sub i32 %6168, %6167
  store i32 %6169, ptr %48, align 4, !tbaa !9
  %6170 = load i32, ptr %48, align 4, !tbaa !9
  %6171 = load ptr, ptr %5, align 8, !tbaa !5
  %6172 = getelementptr inbounds %struct.w2c_hermes, ptr %6171, i32 0, i32 3
  store i32 %6170, ptr %6172, align 8, !tbaa !15
  %6173 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6173, ptr %48, align 4, !tbaa !9
  br label %22463

6174:                                             ; preds = %5446, %5437
  %6175 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6175, ptr %48, align 4, !tbaa !9
  %6176 = load i32, ptr %48, align 4, !tbaa !9
  %6177 = icmp ne i32 %6176, 0
  %6178 = xor i1 %6177, true
  %6179 = zext i1 %6178 to i32
  store i32 %6179, ptr %48, align 4, !tbaa !9
  %6180 = load i32, ptr %48, align 4, !tbaa !9
  %6181 = icmp ne i32 %6180, 0
  br i1 %6181, label %6182, label %6183

6182:                                             ; preds = %6174
  br label %6258

6183:                                             ; preds = %6174
  %6184 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6184, ptr %48, align 4, !tbaa !9
  store i32 54, ptr %49, align 4, !tbaa !9
  %6185 = load i32, ptr %48, align 4, !tbaa !9
  %6186 = load i32, ptr %49, align 4, !tbaa !9
  %6187 = icmp ne i32 %6185, %6186
  %6188 = zext i1 %6187 to i32
  store i32 %6188, ptr %48, align 4, !tbaa !9
  %6189 = load i32, ptr %48, align 4, !tbaa !9
  %6190 = icmp ne i32 %6189, 0
  br i1 %6190, label %6191, label %6192

6191:                                             ; preds = %6183
  br label %6258

6192:                                             ; preds = %6183
  %6193 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6193, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %6194 = load i32, ptr %49, align 4, !tbaa !9
  %6195 = load i32, ptr %48, align 4, !tbaa !9
  %6196 = add i32 %6195, %6194
  store i32 %6196, ptr %48, align 4, !tbaa !9
  %6197 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6197, ptr %49, align 4, !tbaa !9
  %6198 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6198, ptr %50, align 4, !tbaa !9
  %6199 = load ptr, ptr %5, align 8, !tbaa !5
  %6200 = getelementptr inbounds %struct.w2c_hermes, ptr %6199, i32 0, i32 6
  %6201 = load i32, ptr %50, align 4, !tbaa !9
  %6202 = zext i32 %6201 to i64
  %6203 = add i64 %6202, 28
  %6204 = call i32 @i32_load(ptr noundef %6200, i64 noundef %6203)
  store i32 %6204, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %6205 = load ptr, ptr %5, align 8, !tbaa !5
  %6206 = load i32, ptr %49, align 4, !tbaa !9
  %6207 = load i32, ptr %50, align 4, !tbaa !9
  %6208 = load i32, ptr %51, align 4, !tbaa !9
  %6209 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %6205, i32 noundef %6206, i32 noundef %6207, i32 noundef %6208)
  store i32 %6209, ptr %49, align 4, !tbaa !9
  %6210 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %6210, ptr %8, align 4, !tbaa !9
  %6211 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6211, ptr %50, align 4, !tbaa !9
  %6212 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6212, ptr %51, align 4, !tbaa !9
  %6213 = load ptr, ptr %5, align 8, !tbaa !5
  %6214 = load i32, ptr %50, align 4, !tbaa !9
  %6215 = load i32, ptr %51, align 4, !tbaa !9
  %6216 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenMemberExpressionProperty0x28hermes0x3A0x3AESTree0x3A0x3AMemberExpressionLikeNode0x2A0x29(ptr noundef %6213, i32 noundef %6214, i32 noundef %6215)
  store i32 %6216, ptr %50, align 4, !tbaa !9
  %6217 = load ptr, ptr %5, align 8, !tbaa !5
  %6218 = load i32, ptr %48, align 4, !tbaa !9
  %6219 = load i32, ptr %49, align 4, !tbaa !9
  %6220 = load i32, ptr %50, align 4, !tbaa !9
  %6221 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %6217, i32 noundef %6218, i32 noundef %6219, i32 noundef %6220)
  store i32 %6221, ptr %48, align 4, !tbaa !9
  %6222 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6222, ptr %7, align 4, !tbaa !9
  %6223 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6223, ptr %48, align 4, !tbaa !9
  %6224 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6224, ptr %49, align 4, !tbaa !9
  %6225 = load ptr, ptr %5, align 8, !tbaa !5
  %6226 = getelementptr inbounds %struct.w2c_hermes, ptr %6225, i32 0, i32 6
  %6227 = load i32, ptr %48, align 4, !tbaa !9
  %6228 = zext i32 %6227 to i64
  %6229 = add i64 %6228, 24
  %6230 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6226, i64 noundef %6229, i32 noundef %6230)
  %6231 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6231, ptr %48, align 4, !tbaa !9
  %6232 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6232, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %6233 = load i32, ptr %50, align 4, !tbaa !9
  %6234 = load i32, ptr %49, align 4, !tbaa !9
  %6235 = add i32 %6234, %6233
  store i32 %6235, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %6236 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6236, ptr %51, align 4, !tbaa !9
  %6237 = load i32, ptr %51, align 4, !tbaa !9
  %6238 = icmp ne i32 %6237, 0
  br i1 %6238, label %6239, label %6241

6239:                                             ; preds = %6192
  %6240 = load i32, ptr %49, align 4, !tbaa !9
  br label %6243

6241:                                             ; preds = %6192
  %6242 = load i32, ptr %50, align 4, !tbaa !9
  br label %6243

6243:                                             ; preds = %6241, %6239
  %6244 = phi i32 [ %6240, %6239 ], [ %6242, %6241 ]
  store i32 %6244, ptr %49, align 4, !tbaa !9
  %6245 = load ptr, ptr %5, align 8, !tbaa !5
  %6246 = getelementptr inbounds %struct.w2c_hermes, ptr %6245, i32 0, i32 6
  %6247 = load i32, ptr %48, align 4, !tbaa !9
  %6248 = zext i32 %6247 to i64
  %6249 = add i64 %6248, 20
  %6250 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6246, i64 noundef %6249, i32 noundef %6250)
  %6251 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6251, ptr %48, align 4, !tbaa !9
  %6252 = load ptr, ptr %5, align 8, !tbaa !5
  %6253 = getelementptr inbounds %struct.w2c_hermes, ptr %6252, i32 0, i32 6
  %6254 = load i32, ptr %48, align 4, !tbaa !9
  %6255 = zext i32 %6254 to i64
  %6256 = add i64 %6255, 20
  %6257 = call i32 @i32_load(ptr noundef %6253, i64 noundef %6256)
  store i32 %6257, ptr %48, align 4, !tbaa !9
  br label %22463

6258:                                             ; preds = %6191, %6182
  %6259 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6259, ptr %48, align 4, !tbaa !9
  %6260 = load i32, ptr %48, align 4, !tbaa !9
  %6261 = icmp ne i32 %6260, 0
  %6262 = xor i1 %6261, true
  %6263 = zext i1 %6262 to i32
  store i32 %6263, ptr %48, align 4, !tbaa !9
  %6264 = load i32, ptr %48, align 4, !tbaa !9
  %6265 = icmp ne i32 %6264, 0
  br i1 %6265, label %6266, label %6267

6266:                                             ; preds = %6258
  br label %6296

6267:                                             ; preds = %6258
  %6268 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6268, ptr %48, align 4, !tbaa !9
  store i32 55, ptr %49, align 4, !tbaa !9
  %6269 = load i32, ptr %48, align 4, !tbaa !9
  %6270 = load i32, ptr %49, align 4, !tbaa !9
  %6271 = icmp ne i32 %6269, %6270
  %6272 = zext i1 %6271 to i32
  store i32 %6272, ptr %48, align 4, !tbaa !9
  %6273 = load i32, ptr %48, align 4, !tbaa !9
  %6274 = icmp ne i32 %6273, 0
  br i1 %6274, label %6275, label %6276

6275:                                             ; preds = %6267
  br label %6296

6276:                                             ; preds = %6267
  %6277 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6277, ptr %48, align 4, !tbaa !9
  store i32 20, ptr %49, align 4, !tbaa !9
  %6278 = load i32, ptr %49, align 4, !tbaa !9
  %6279 = load i32, ptr %48, align 4, !tbaa !9
  %6280 = add i32 %6279, %6278
  store i32 %6280, ptr %48, align 4, !tbaa !9
  %6281 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6281, ptr %49, align 4, !tbaa !9
  %6282 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6282, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %6283 = load ptr, ptr %5, align 8, !tbaa !5
  %6284 = load i32, ptr %48, align 4, !tbaa !9
  %6285 = load i32, ptr %49, align 4, !tbaa !9
  %6286 = load i32, ptr %50, align 4, !tbaa !9
  %6287 = load i32, ptr %51, align 4, !tbaa !9
  %6288 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalMemberExpression0x28hermes0x3A0x3AESTree0x3A0x3AOptionalMemberExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AMemberExpressionOperation0x29(ptr noundef %6283, i32 noundef %6284, i32 noundef %6285, i32 noundef %6286, i32 noundef %6287, i32 noundef %6288)
  %6289 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6289, ptr %48, align 4, !tbaa !9
  %6290 = load ptr, ptr %5, align 8, !tbaa !5
  %6291 = getelementptr inbounds %struct.w2c_hermes, ptr %6290, i32 0, i32 6
  %6292 = load i32, ptr %48, align 4, !tbaa !9
  %6293 = zext i32 %6292 to i64
  %6294 = add i64 %6293, 20
  %6295 = call i32 @i32_load(ptr noundef %6291, i64 noundef %6294)
  store i32 %6295, ptr %48, align 4, !tbaa !9
  br label %22463

6296:                                             ; preds = %6275, %6266
  %6297 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6297, ptr %48, align 4, !tbaa !9
  %6298 = load i32, ptr %48, align 4, !tbaa !9
  %6299 = icmp ne i32 %6298, 0
  %6300 = xor i1 %6299, true
  %6301 = zext i1 %6300 to i32
  store i32 %6301, ptr %48, align 4, !tbaa !9
  %6302 = load i32, ptr %48, align 4, !tbaa !9
  %6303 = icmp ne i32 %6302, 0
  br i1 %6303, label %6304, label %6305

6304:                                             ; preds = %6296
  br label %6324

6305:                                             ; preds = %6296
  %6306 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6306, ptr %48, align 4, !tbaa !9
  store i32 40, ptr %49, align 4, !tbaa !9
  %6307 = load i32, ptr %48, align 4, !tbaa !9
  %6308 = load i32, ptr %49, align 4, !tbaa !9
  %6309 = icmp ne i32 %6307, %6308
  %6310 = zext i1 %6309 to i32
  store i32 %6310, ptr %48, align 4, !tbaa !9
  %6311 = load i32, ptr %48, align 4, !tbaa !9
  %6312 = icmp ne i32 %6311, 0
  br i1 %6312, label %6313, label %6314

6313:                                             ; preds = %6305
  br label %6324

6314:                                             ; preds = %6305
  %6315 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6315, ptr %48, align 4, !tbaa !9
  %6316 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6316, ptr %49, align 4, !tbaa !9
  store i32 28, ptr %50, align 4, !tbaa !9
  %6317 = load i32, ptr %50, align 4, !tbaa !9
  %6318 = load i32, ptr %49, align 4, !tbaa !9
  %6319 = add i32 %6318, %6317
  store i32 %6319, ptr %49, align 4, !tbaa !9
  %6320 = load ptr, ptr %5, align 8, !tbaa !5
  %6321 = load i32, ptr %48, align 4, !tbaa !9
  %6322 = load i32, ptr %49, align 4, !tbaa !9
  %6323 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenArrayFromElements0x28llvh0x3A0x3Asimple_ilist0x3Chermes0x3A0x3AESTree0x3A0x3ANode0x3E0x260x29(ptr noundef %6320, i32 noundef %6321, i32 noundef %6322)
  store i32 %6323, ptr %48, align 4, !tbaa !9
  br label %22463

6324:                                             ; preds = %6313, %6304
  %6325 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6325, ptr %48, align 4, !tbaa !9
  %6326 = load i32, ptr %48, align 4, !tbaa !9
  %6327 = icmp ne i32 %6326, 0
  %6328 = xor i1 %6327, true
  %6329 = zext i1 %6328 to i32
  store i32 %6329, ptr %48, align 4, !tbaa !9
  %6330 = load i32, ptr %48, align 4, !tbaa !9
  %6331 = icmp ne i32 %6330, 0
  br i1 %6331, label %6332, label %6333

6332:                                             ; preds = %6324
  br label %9888

6333:                                             ; preds = %6324
  %6334 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6334, ptr %48, align 4, !tbaa !9
  store i32 39, ptr %49, align 4, !tbaa !9
  %6335 = load i32, ptr %48, align 4, !tbaa !9
  %6336 = load i32, ptr %49, align 4, !tbaa !9
  %6337 = icmp ne i32 %6335, %6336
  %6338 = zext i1 %6337 to i32
  store i32 %6338, ptr %48, align 4, !tbaa !9
  %6339 = load i32, ptr %48, align 4, !tbaa !9
  %6340 = icmp ne i32 %6339, 0
  br i1 %6340, label %6341, label %6342

6341:                                             ; preds = %6333
  br label %9888

6342:                                             ; preds = %6333
  store i32 0, ptr %48, align 4, !tbaa !9
  %6343 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6343, ptr %11, align 4, !tbaa !9
  %6344 = load ptr, ptr %5, align 8, !tbaa !5
  %6345 = getelementptr inbounds %struct.w2c_hermes, ptr %6344, i32 0, i32 3
  %6346 = load i32, ptr %6345, align 8, !tbaa !15
  store i32 %6346, ptr %48, align 4, !tbaa !9
  store i32 320, ptr %49, align 4, !tbaa !9
  %6347 = load i32, ptr %49, align 4, !tbaa !9
  %6348 = load i32, ptr %48, align 4, !tbaa !9
  %6349 = sub i32 %6348, %6347
  store i32 %6349, ptr %48, align 4, !tbaa !9
  %6350 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6350, ptr %10, align 4, !tbaa !9
  %6351 = load i32, ptr %48, align 4, !tbaa !9
  %6352 = load ptr, ptr %5, align 8, !tbaa !5
  %6353 = getelementptr inbounds %struct.w2c_hermes, ptr %6352, i32 0, i32 3
  store i32 %6351, ptr %6353, align 8, !tbaa !15
  %6354 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6354, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %6355 = load ptr, ptr %5, align 8, !tbaa !5
  %6356 = getelementptr inbounds %struct.w2c_hermes, ptr %6355, i32 0, i32 6
  %6357 = load i32, ptr %48, align 4, !tbaa !9
  %6358 = zext i32 %6357 to i64
  %6359 = add i64 %6358, 296
  %6360 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6356, i64 noundef %6359, i64 noundef %6360)
  %6361 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6361, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %6362 = load ptr, ptr %5, align 8, !tbaa !5
  %6363 = getelementptr inbounds %struct.w2c_hermes, ptr %6362, i32 0, i32 6
  %6364 = load i32, ptr %48, align 4, !tbaa !9
  %6365 = zext i32 %6364 to i64
  %6366 = add i64 %6365, 288
  %6367 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6363, i64 noundef %6366, i64 noundef %6367)
  %6368 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6368, ptr %48, align 4, !tbaa !9
  store i32 24, ptr %49, align 4, !tbaa !9
  %6369 = load ptr, ptr %5, align 8, !tbaa !5
  %6370 = getelementptr inbounds %struct.w2c_hermes, ptr %6369, i32 0, i32 6
  %6371 = load i32, ptr %48, align 4, !tbaa !9
  %6372 = zext i32 %6371 to i64
  %6373 = add i64 %6372, 304
  %6374 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6370, i64 noundef %6373, i32 noundef %6374)
  %6375 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6375, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %6376 = load ptr, ptr %5, align 8, !tbaa !5
  %6377 = getelementptr inbounds %struct.w2c_hermes, ptr %6376, i32 0, i32 6
  %6378 = load i32, ptr %48, align 4, !tbaa !9
  %6379 = zext i32 %6378 to i64
  %6380 = add i64 %6379, 272
  %6381 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6377, i64 noundef %6380, i64 noundef %6381)
  %6382 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6382, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %6383 = load ptr, ptr %5, align 8, !tbaa !5
  %6384 = getelementptr inbounds %struct.w2c_hermes, ptr %6383, i32 0, i32 6
  %6385 = load i32, ptr %48, align 4, !tbaa !9
  %6386 = zext i32 %6385 to i64
  %6387 = add i64 %6386, 264
  %6388 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6384, i64 noundef %6387, i64 noundef %6388)
  %6389 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6389, ptr %48, align 4, !tbaa !9
  store i32 12, ptr %49, align 4, !tbaa !9
  %6390 = load ptr, ptr %5, align 8, !tbaa !5
  %6391 = getelementptr inbounds %struct.w2c_hermes, ptr %6390, i32 0, i32 6
  %6392 = load i32, ptr %48, align 4, !tbaa !9
  %6393 = zext i32 %6392 to i64
  %6394 = add i64 %6393, 280
  %6395 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6391, i64 noundef %6394, i32 noundef %6395)
  %6396 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6396, ptr %48, align 4, !tbaa !9
  store i64 137438953472, ptr %59, align 8, !tbaa !11
  %6397 = load ptr, ptr %5, align 8, !tbaa !5
  %6398 = getelementptr inbounds %struct.w2c_hermes, ptr %6397, i32 0, i32 6
  %6399 = load i32, ptr %48, align 4, !tbaa !9
  %6400 = zext i32 %6399 to i64
  %6401 = add i64 %6400, 224
  %6402 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6398, i64 noundef %6401, i64 noundef %6402)
  %6403 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6403, ptr %48, align 4, !tbaa !9
  %6404 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6404, ptr %49, align 4, !tbaa !9
  store i32 232, ptr %50, align 4, !tbaa !9
  %6405 = load i32, ptr %50, align 4, !tbaa !9
  %6406 = load i32, ptr %49, align 4, !tbaa !9
  %6407 = add i32 %6406, %6405
  store i32 %6407, ptr %49, align 4, !tbaa !9
  %6408 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %6408, ptr %23, align 4, !tbaa !9
  %6409 = load ptr, ptr %5, align 8, !tbaa !5
  %6410 = getelementptr inbounds %struct.w2c_hermes, ptr %6409, i32 0, i32 6
  %6411 = load i32, ptr %48, align 4, !tbaa !9
  %6412 = zext i32 %6411 to i64
  %6413 = add i64 %6412, 220
  %6414 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6410, i64 noundef %6413, i32 noundef %6414)
  %6415 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6415, ptr %48, align 4, !tbaa !9
  %6416 = load ptr, ptr %5, align 8, !tbaa !5
  %6417 = getelementptr inbounds %struct.w2c_hermes, ptr %6416, i32 0, i32 6
  %6418 = load i32, ptr %48, align 4, !tbaa !9
  %6419 = zext i32 %6418 to i64
  %6420 = add i64 %6419, 32
  %6421 = call i32 @i32_load(ptr noundef %6417, i64 noundef %6420)
  store i32 %6421, ptr %48, align 4, !tbaa !9
  %6422 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6422, ptr %9, align 4, !tbaa !9
  %6423 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6423, ptr %49, align 4, !tbaa !9
  store i32 28, ptr %50, align 4, !tbaa !9
  %6424 = load i32, ptr %50, align 4, !tbaa !9
  %6425 = load i32, ptr %49, align 4, !tbaa !9
  %6426 = add i32 %6425, %6424
  store i32 %6426, ptr %49, align 4, !tbaa !9
  %6427 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %6427, ptr %24, align 4, !tbaa !9
  %6428 = load i32, ptr %48, align 4, !tbaa !9
  %6429 = load i32, ptr %49, align 4, !tbaa !9
  %6430 = icmp eq i32 %6428, %6429
  %6431 = zext i1 %6430 to i32
  store i32 %6431, ptr %48, align 4, !tbaa !9
  %6432 = load i32, ptr %48, align 4, !tbaa !9
  %6433 = icmp ne i32 %6432, 0
  br i1 %6433, label %6434, label %6435

6434:                                             ; preds = %6342
  br label %7873

6435:                                             ; preds = %6342
  br label %6436

6436:                                             ; preds = %7807, %6435
  %6437 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6437, ptr %48, align 4, !tbaa !9
  %6438 = load ptr, ptr %5, align 8, !tbaa !5
  %6439 = getelementptr inbounds %struct.w2c_hermes, ptr %6438, i32 0, i32 6
  %6440 = load i32, ptr %48, align 4, !tbaa !9
  %6441 = zext i32 %6440 to i64
  %6442 = add i64 %6441, 8
  %6443 = call i32 @i32_load(ptr noundef %6439, i64 noundef %6442)
  store i32 %6443, ptr %48, align 4, !tbaa !9
  store i32 41, ptr %49, align 4, !tbaa !9
  %6444 = load i32, ptr %48, align 4, !tbaa !9
  %6445 = load i32, ptr %49, align 4, !tbaa !9
  %6446 = icmp eq i32 %6444, %6445
  %6447 = zext i1 %6446 to i32
  store i32 %6447, ptr %48, align 4, !tbaa !9
  %6448 = load i32, ptr %48, align 4, !tbaa !9
  %6449 = icmp ne i32 %6448, 0
  br i1 %6449, label %6450, label %6451

6450:                                             ; preds = %6436
  br label %7791

6451:                                             ; preds = %6436
  %6452 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6452, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %6453 = load ptr, ptr %5, align 8, !tbaa !5
  %6454 = getelementptr inbounds %struct.w2c_hermes, ptr %6453, i32 0, i32 6
  %6455 = load i32, ptr %48, align 4, !tbaa !9
  %6456 = zext i32 %6455 to i64
  %6457 = add i64 %6456, 224
  %6458 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6454, i64 noundef %6457, i32 noundef %6458)
  %6459 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6459, ptr %48, align 4, !tbaa !9
  %6460 = load ptr, ptr %5, align 8, !tbaa !5
  %6461 = getelementptr inbounds %struct.w2c_hermes, ptr %6460, i32 0, i32 6
  %6462 = load i32, ptr %48, align 4, !tbaa !9
  %6463 = zext i32 %6462 to i64
  %6464 = add i64 %6463, 40
  %6465 = call i32 @i32_load8_u(ptr noundef %6461, i64 noundef %6464)
  store i32 %6465, ptr %48, align 4, !tbaa !9
  %6466 = load i32, ptr %48, align 4, !tbaa !9
  %6467 = icmp ne i32 %6466, 0
  br i1 %6467, label %6468, label %6474

6468:                                             ; preds = %6451
  %6469 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6469, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %6470 = load i32, ptr %49, align 4, !tbaa !9
  %6471 = load i32, ptr %48, align 4, !tbaa !9
  %6472 = add i32 %6471, %6470
  store i32 %6472, ptr %48, align 4, !tbaa !9
  %6473 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6473, ptr %13, align 4, !tbaa !9
  br label %7791

6474:                                             ; preds = %6451
  %6475 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6475, ptr %48, align 4, !tbaa !9
  %6476 = load ptr, ptr %5, align 8, !tbaa !5
  %6477 = getelementptr inbounds %struct.w2c_hermes, ptr %6476, i32 0, i32 6
  %6478 = load i32, ptr %48, align 4, !tbaa !9
  %6479 = zext i32 %6478 to i64
  %6480 = add i64 %6479, 28
  %6481 = call i32 @i32_load(ptr noundef %6477, i64 noundef %6480)
  store i32 %6481, ptr %48, align 4, !tbaa !9
  %6482 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6482, ptr %8, align 4, !tbaa !9
  %6483 = load ptr, ptr %5, align 8, !tbaa !5
  %6484 = getelementptr inbounds %struct.w2c_hermes, ptr %6483, i32 0, i32 6
  %6485 = load i32, ptr %48, align 4, !tbaa !9
  %6486 = zext i32 %6485 to i64
  %6487 = add i64 %6486, 8
  %6488 = call i32 @i32_load(ptr noundef %6484, i64 noundef %6487)
  store i32 %6488, ptr %48, align 4, !tbaa !9
  %6489 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6489, ptr %12, align 4, !tbaa !9
  %6490 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6490, ptr %48, align 4, !tbaa !9
  %6491 = load i32, ptr %48, align 4, !tbaa !9
  %6492 = icmp ne i32 %6491, 0
  %6493 = xor i1 %6492, true
  %6494 = zext i1 %6493 to i32
  store i32 %6494, ptr %48, align 4, !tbaa !9
  %6495 = load i32, ptr %48, align 4, !tbaa !9
  %6496 = icmp ne i32 %6495, 0
  br i1 %6496, label %6497, label %6498

6497:                                             ; preds = %6474
  br label %6527

6498:                                             ; preds = %6474
  %6499 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6499, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %6500 = load i32, ptr %48, align 4, !tbaa !9
  %6501 = load i32, ptr %49, align 4, !tbaa !9
  %6502 = icmp ne i32 %6500, %6501
  %6503 = zext i1 %6502 to i32
  store i32 %6503, ptr %48, align 4, !tbaa !9
  %6504 = load i32, ptr %48, align 4, !tbaa !9
  %6505 = icmp ne i32 %6504, 0
  br i1 %6505, label %6506, label %6507

6506:                                             ; preds = %6498
  br label %6527

6507:                                             ; preds = %6498
  %6508 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6508, ptr %48, align 4, !tbaa !9
  %6509 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6509, ptr %49, align 4, !tbaa !9
  %6510 = load ptr, ptr %5, align 8, !tbaa !5
  %6511 = getelementptr inbounds %struct.w2c_hermes, ptr %6510, i32 0, i32 6
  %6512 = load i32, ptr %49, align 4, !tbaa !9
  %6513 = zext i32 %6512 to i64
  %6514 = add i64 %6513, 28
  %6515 = call i32 @i32_load(ptr noundef %6511, i64 noundef %6514)
  store i32 %6515, ptr %49, align 4, !tbaa !9
  %6516 = load ptr, ptr %5, align 8, !tbaa !5
  %6517 = getelementptr inbounds %struct.w2c_hermes, ptr %6516, i32 0, i32 6
  %6518 = load i32, ptr %49, align 4, !tbaa !9
  %6519 = zext i32 %6518 to i64
  %6520 = call i64 @i64_load(ptr noundef %6517, i64 noundef %6519)
  store i64 %6520, ptr %59, align 8, !tbaa !11
  %6521 = load ptr, ptr %5, align 8, !tbaa !5
  %6522 = getelementptr inbounds %struct.w2c_hermes, ptr %6521, i32 0, i32 6
  %6523 = load i32, ptr %48, align 4, !tbaa !9
  %6524 = zext i32 %6523 to i64
  %6525 = add i64 %6524, 208
  %6526 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6522, i64 noundef %6525, i64 noundef %6526)
  br label %6693

6527:                                             ; preds = %6506, %6497
  %6528 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6528, ptr %48, align 4, !tbaa !9
  %6529 = load i32, ptr %48, align 4, !tbaa !9
  %6530 = icmp ne i32 %6529, 0
  %6531 = xor i1 %6530, true
  %6532 = zext i1 %6531 to i32
  store i32 %6532, ptr %48, align 4, !tbaa !9
  %6533 = load i32, ptr %48, align 4, !tbaa !9
  %6534 = icmp ne i32 %6533, 0
  br i1 %6534, label %6535, label %6536

6535:                                             ; preds = %6527
  br label %6565

6536:                                             ; preds = %6527
  %6537 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6537, ptr %48, align 4, !tbaa !9
  store i32 62, ptr %49, align 4, !tbaa !9
  %6538 = load i32, ptr %48, align 4, !tbaa !9
  %6539 = load i32, ptr %49, align 4, !tbaa !9
  %6540 = icmp ne i32 %6538, %6539
  %6541 = zext i1 %6540 to i32
  store i32 %6541, ptr %48, align 4, !tbaa !9
  %6542 = load i32, ptr %48, align 4, !tbaa !9
  %6543 = icmp ne i32 %6542, 0
  br i1 %6543, label %6544, label %6545

6544:                                             ; preds = %6536
  br label %6565

6545:                                             ; preds = %6536
  %6546 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6546, ptr %48, align 4, !tbaa !9
  %6547 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6547, ptr %49, align 4, !tbaa !9
  %6548 = load ptr, ptr %5, align 8, !tbaa !5
  %6549 = getelementptr inbounds %struct.w2c_hermes, ptr %6548, i32 0, i32 6
  %6550 = load i32, ptr %49, align 4, !tbaa !9
  %6551 = zext i32 %6550 to i64
  %6552 = add i64 %6551, 28
  %6553 = call i32 @i32_load(ptr noundef %6549, i64 noundef %6552)
  store i32 %6553, ptr %49, align 4, !tbaa !9
  %6554 = load ptr, ptr %5, align 8, !tbaa !5
  %6555 = getelementptr inbounds %struct.w2c_hermes, ptr %6554, i32 0, i32 6
  %6556 = load i32, ptr %49, align 4, !tbaa !9
  %6557 = zext i32 %6556 to i64
  %6558 = call i64 @i64_load(ptr noundef %6555, i64 noundef %6557)
  store i64 %6558, ptr %59, align 8, !tbaa !11
  %6559 = load ptr, ptr %5, align 8, !tbaa !5
  %6560 = getelementptr inbounds %struct.w2c_hermes, ptr %6559, i32 0, i32 6
  %6561 = load i32, ptr %48, align 4, !tbaa !9
  %6562 = zext i32 %6561 to i64
  %6563 = add i64 %6562, 208
  %6564 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6560, i64 noundef %6563, i64 noundef %6564)
  br label %6693

6565:                                             ; preds = %6544, %6535
  %6566 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6566, ptr %48, align 4, !tbaa !9
  %6567 = load i32, ptr %48, align 4, !tbaa !9
  %6568 = icmp ne i32 %6567, 0
  %6569 = xor i1 %6568, true
  %6570 = zext i1 %6569 to i32
  store i32 %6570, ptr %48, align 4, !tbaa !9
  %6571 = load i32, ptr %48, align 4, !tbaa !9
  %6572 = icmp ne i32 %6571, 0
  br i1 %6572, label %6573, label %6574

6573:                                             ; preds = %6565
  br label %6693

6574:                                             ; preds = %6565
  %6575 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6575, ptr %48, align 4, !tbaa !9
  store i32 33, ptr %49, align 4, !tbaa !9
  %6576 = load i32, ptr %48, align 4, !tbaa !9
  %6577 = load i32, ptr %49, align 4, !tbaa !9
  %6578 = icmp ne i32 %6576, %6577
  %6579 = zext i1 %6578 to i32
  store i32 %6579, ptr %48, align 4, !tbaa !9
  %6580 = load i32, ptr %48, align 4, !tbaa !9
  %6581 = icmp ne i32 %6580, 0
  br i1 %6581, label %6582, label %6583

6582:                                             ; preds = %6574
  br label %6693

6583:                                             ; preds = %6574
  store i32 0, ptr %48, align 4, !tbaa !9
  %6584 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6584, ptr %15, align 4, !tbaa !9
  %6585 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6585, ptr %48, align 4, !tbaa !9
  %6586 = load ptr, ptr %5, align 8, !tbaa !5
  %6587 = getelementptr inbounds %struct.w2c_hermes, ptr %6586, i32 0, i32 6
  %6588 = load i32, ptr %48, align 4, !tbaa !9
  %6589 = zext i32 %6588 to i64
  %6590 = add i64 %6589, 228
  %6591 = call i32 @i32_load(ptr noundef %6587, i64 noundef %6590)
  store i32 %6591, ptr %48, align 4, !tbaa !9
  store i32 31, ptr %49, align 4, !tbaa !9
  %6592 = load i32, ptr %48, align 4, !tbaa !9
  %6593 = load i32, ptr %49, align 4, !tbaa !9
  %6594 = icmp ule i32 %6592, %6593
  %6595 = zext i1 %6594 to i32
  store i32 %6595, ptr %48, align 4, !tbaa !9
  %6596 = load i32, ptr %48, align 4, !tbaa !9
  %6597 = icmp ne i32 %6596, 0
  br i1 %6597, label %6598, label %6625

6598:                                             ; preds = %6583
  %6599 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6599, ptr %48, align 4, !tbaa !9
  store i32 220, ptr %49, align 4, !tbaa !9
  %6600 = load i32, ptr %49, align 4, !tbaa !9
  %6601 = load i32, ptr %48, align 4, !tbaa !9
  %6602 = add i32 %6601, %6600
  store i32 %6602, ptr %48, align 4, !tbaa !9
  %6603 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %6603, ptr %49, align 4, !tbaa !9
  store i32 32, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %6604 = load ptr, ptr %5, align 8, !tbaa !5
  %6605 = load i32, ptr %48, align 4, !tbaa !9
  %6606 = load i32, ptr %49, align 4, !tbaa !9
  %6607 = load i32, ptr %50, align 4, !tbaa !9
  %6608 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %6604, i32 noundef %6605, i32 noundef %6606, i32 noundef %6607, i32 noundef %6608)
  %6609 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6609, ptr %48, align 4, !tbaa !9
  %6610 = load ptr, ptr %5, align 8, !tbaa !5
  %6611 = getelementptr inbounds %struct.w2c_hermes, ptr %6610, i32 0, i32 6
  %6612 = load i32, ptr %48, align 4, !tbaa !9
  %6613 = zext i32 %6612 to i64
  %6614 = add i64 %6613, 224
  %6615 = call i32 @i32_load(ptr noundef %6611, i64 noundef %6614)
  store i32 %6615, ptr %48, align 4, !tbaa !9
  %6616 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6616, ptr %15, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %6617 = load i32, ptr %48, align 4, !tbaa !9
  %6618 = load i32, ptr %49, align 4, !tbaa !9
  %6619 = icmp eq i32 %6617, %6618
  %6620 = zext i1 %6619 to i32
  store i32 %6620, ptr %48, align 4, !tbaa !9
  %6621 = load i32, ptr %48, align 4, !tbaa !9
  %6622 = icmp ne i32 %6621, 0
  br i1 %6622, label %6623, label %6624

6623:                                             ; preds = %6598
  br label %6646

6624:                                             ; preds = %6598
  br label %6625

6625:                                             ; preds = %6624, %6583
  %6626 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6626, ptr %48, align 4, !tbaa !9
  %6627 = load ptr, ptr %5, align 8, !tbaa !5
  %6628 = getelementptr inbounds %struct.w2c_hermes, ptr %6627, i32 0, i32 6
  %6629 = load i32, ptr %48, align 4, !tbaa !9
  %6630 = zext i32 %6629 to i64
  %6631 = add i64 %6630, 220
  %6632 = call i32 @i32_load(ptr noundef %6628, i64 noundef %6631)
  store i32 %6632, ptr %48, align 4, !tbaa !9
  %6633 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6633, ptr %49, align 4, !tbaa !9
  %6634 = load i32, ptr %49, align 4, !tbaa !9
  %6635 = load i32, ptr %48, align 4, !tbaa !9
  %6636 = add i32 %6635, %6634
  store i32 %6636, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  store i32 32, ptr %50, align 4, !tbaa !9
  %6637 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6637, ptr %51, align 4, !tbaa !9
  %6638 = load i32, ptr %51, align 4, !tbaa !9
  %6639 = load i32, ptr %50, align 4, !tbaa !9
  %6640 = sub i32 %6639, %6638
  store i32 %6640, ptr %50, align 4, !tbaa !9
  %6641 = load ptr, ptr %5, align 8, !tbaa !5
  %6642 = load i32, ptr %48, align 4, !tbaa !9
  %6643 = load i32, ptr %49, align 4, !tbaa !9
  %6644 = load i32, ptr %50, align 4, !tbaa !9
  %6645 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %6641, i32 noundef %6642, i32 noundef %6643, i32 noundef %6644)
  store i32 %6645, ptr %48, align 4, !tbaa !9
  br label %6646

6646:                                             ; preds = %6625, %6623
  %6647 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6647, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %6648 = load ptr, ptr %5, align 8, !tbaa !5
  %6649 = getelementptr inbounds %struct.w2c_hermes, ptr %6648, i32 0, i32 6
  %6650 = load i32, ptr %48, align 4, !tbaa !9
  %6651 = zext i32 %6650 to i64
  %6652 = add i64 %6651, 224
  %6653 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6649, i64 noundef %6652, i32 noundef %6653)
  %6654 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6654, ptr %48, align 4, !tbaa !9
  %6655 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6655, ptr %49, align 4, !tbaa !9
  %6656 = load ptr, ptr %5, align 8, !tbaa !5
  %6657 = getelementptr inbounds %struct.w2c_hermes, ptr %6656, i32 0, i32 6
  %6658 = load i32, ptr %49, align 4, !tbaa !9
  %6659 = zext i32 %6658 to i64
  %6660 = add i64 %6659, 32
  %6661 = call double @f64_load(ptr noundef %6657, i64 noundef %6660)
  store double %6661, ptr %71, align 8, !tbaa !20
  %6662 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6662, ptr %50, align 4, !tbaa !9
  %6663 = load ptr, ptr %5, align 8, !tbaa !5
  %6664 = getelementptr inbounds %struct.w2c_hermes, ptr %6663, i32 0, i32 6
  %6665 = load i32, ptr %50, align 4, !tbaa !9
  %6666 = zext i32 %6665 to i64
  %6667 = add i64 %6666, 220
  %6668 = call i32 @i32_load(ptr noundef %6664, i64 noundef %6667)
  store i32 %6668, ptr %50, align 4, !tbaa !9
  %6669 = load ptr, ptr %5, align 8, !tbaa !5
  %6670 = load double, ptr %71, align 8, !tbaa !20
  %6671 = load i32, ptr %50, align 4, !tbaa !9
  %6672 = call i32 @w2c_hermes_hermes0x3A0x3AnumberToString0x28double0x2C0x20char0x2A0x2C0x20unsigned0x20long0x29(ptr noundef %6669, double noundef %6670, i32 noundef %6671)
  store i32 %6672, ptr %49, align 4, !tbaa !9
  %6673 = load ptr, ptr %5, align 8, !tbaa !5
  %6674 = getelementptr inbounds %struct.w2c_hermes, ptr %6673, i32 0, i32 6
  %6675 = load i32, ptr %48, align 4, !tbaa !9
  %6676 = zext i32 %6675 to i64
  %6677 = add i64 %6676, 212
  %6678 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6674, i64 noundef %6677, i32 noundef %6678)
  %6679 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6679, ptr %48, align 4, !tbaa !9
  %6680 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6680, ptr %49, align 4, !tbaa !9
  %6681 = load ptr, ptr %5, align 8, !tbaa !5
  %6682 = getelementptr inbounds %struct.w2c_hermes, ptr %6681, i32 0, i32 6
  %6683 = load i32, ptr %49, align 4, !tbaa !9
  %6684 = zext i32 %6683 to i64
  %6685 = add i64 %6684, 220
  %6686 = call i32 @i32_load(ptr noundef %6682, i64 noundef %6685)
  store i32 %6686, ptr %49, align 4, !tbaa !9
  %6687 = load ptr, ptr %5, align 8, !tbaa !5
  %6688 = getelementptr inbounds %struct.w2c_hermes, ptr %6687, i32 0, i32 6
  %6689 = load i32, ptr %48, align 4, !tbaa !9
  %6690 = zext i32 %6689 to i64
  %6691 = add i64 %6690, 208
  %6692 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6688, i64 noundef %6691, i32 noundef %6692)
  br label %6693

6693:                                             ; preds = %6646, %6582, %6573, %6545, %6507
  %6694 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6694, ptr %48, align 4, !tbaa !9
  %6695 = load ptr, ptr %5, align 8, !tbaa !5
  %6696 = getelementptr inbounds %struct.w2c_hermes, ptr %6695, i32 0, i32 6
  %6697 = load i32, ptr %48, align 4, !tbaa !9
  %6698 = zext i32 %6697 to i64
  %6699 = add i64 %6698, 36
  %6700 = call i32 @i32_load(ptr noundef %6696, i64 noundef %6699)
  store i32 %6700, ptr %48, align 4, !tbaa !9
  %6701 = load ptr, ptr %5, align 8, !tbaa !5
  %6702 = getelementptr inbounds %struct.w2c_hermes, ptr %6701, i32 0, i32 6
  %6703 = load i32, ptr %48, align 4, !tbaa !9
  %6704 = zext i32 %6703 to i64
  %6705 = call i64 @i64_load(ptr noundef %6702, i64 noundef %6704)
  store i64 %6705, ptr %58, align 8, !tbaa !11
  %6706 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %6706, ptr %31, align 8, !tbaa !11
  store i64 -4294967296, ptr %59, align 8, !tbaa !11
  %6707 = load i64, ptr %59, align 8, !tbaa !11
  %6708 = load i64, ptr %58, align 8, !tbaa !11
  %6709 = and i64 %6708, %6707
  store i64 %6709, ptr %58, align 8, !tbaa !11
  store i64 17179869184, ptr %59, align 8, !tbaa !11
  %6710 = load i64, ptr %58, align 8, !tbaa !11
  %6711 = load i64, ptr %59, align 8, !tbaa !11
  %6712 = icmp ne i64 %6710, %6711
  %6713 = zext i1 %6712 to i32
  store i32 %6713, ptr %48, align 4, !tbaa !9
  %6714 = load i32, ptr %48, align 4, !tbaa !9
  %6715 = icmp ne i32 %6714, 0
  br i1 %6715, label %6716, label %6717

6716:                                             ; preds = %6693
  br label %6941

6717:                                             ; preds = %6693
  %6718 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %6718, ptr %58, align 8, !tbaa !11
  %6719 = load i64, ptr %58, align 8, !tbaa !11
  %6720 = trunc i64 %6719 to i32
  store i32 %6720, ptr %48, align 4, !tbaa !9
  %6721 = load ptr, ptr %5, align 8, !tbaa !5
  %6722 = getelementptr inbounds %struct.w2c_hermes, ptr %6721, i32 0, i32 6
  %6723 = load i32, ptr %48, align 4, !tbaa !9
  %6724 = zext i32 %6723 to i64
  %6725 = call i32 @i32_load(ptr noundef %6722, i64 noundef %6724)
  store i32 %6725, ptr %48, align 4, !tbaa !9
  store i32 1953066601, ptr %49, align 4, !tbaa !9
  %6726 = load i32, ptr %48, align 4, !tbaa !9
  %6727 = load i32, ptr %49, align 4, !tbaa !9
  %6728 = icmp ne i32 %6726, %6727
  %6729 = zext i1 %6728 to i32
  store i32 %6729, ptr %48, align 4, !tbaa !9
  %6730 = load i32, ptr %48, align 4, !tbaa !9
  %6731 = icmp ne i32 %6730, 0
  br i1 %6731, label %6732, label %6733

6732:                                             ; preds = %6717
  br label %6941

6733:                                             ; preds = %6717
  %6734 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6734, ptr %48, align 4, !tbaa !9
  %6735 = load ptr, ptr %5, align 8, !tbaa !5
  %6736 = getelementptr inbounds %struct.w2c_hermes, ptr %6735, i32 0, i32 6
  %6737 = load i32, ptr %48, align 4, !tbaa !9
  %6738 = zext i32 %6737 to i64
  %6739 = add i64 %6738, 208
  %6740 = call i64 @i64_load(ptr noundef %6736, i64 noundef %6739)
  store i64 %6740, ptr %58, align 8, !tbaa !11
  %6741 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %6741, ptr %31, align 8, !tbaa !11
  store i64 -4294967296, ptr %59, align 8, !tbaa !11
  %6742 = load i64, ptr %59, align 8, !tbaa !11
  %6743 = load i64, ptr %58, align 8, !tbaa !11
  %6744 = and i64 %6743, %6742
  store i64 %6744, ptr %58, align 8, !tbaa !11
  store i64 38654705664, ptr %59, align 8, !tbaa !11
  %6745 = load i64, ptr %58, align 8, !tbaa !11
  %6746 = load i64, ptr %59, align 8, !tbaa !11
  %6747 = icmp ne i64 %6745, %6746
  %6748 = zext i1 %6747 to i32
  store i32 %6748, ptr %48, align 4, !tbaa !9
  %6749 = load i32, ptr %48, align 4, !tbaa !9
  %6750 = icmp ne i32 %6749, 0
  br i1 %6750, label %6751, label %6752

6751:                                             ; preds = %6733
  br label %6941

6752:                                             ; preds = %6733
  %6753 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %6753, ptr %58, align 8, !tbaa !11
  %6754 = load i64, ptr %58, align 8, !tbaa !11
  %6755 = trunc i64 %6754 to i32
  store i32 %6755, ptr %48, align 4, !tbaa !9
  store i32 55858, ptr %49, align 4, !tbaa !9
  store i32 9, ptr %50, align 4, !tbaa !9
  %6756 = load ptr, ptr %5, align 8, !tbaa !5
  %6757 = load i32, ptr %48, align 4, !tbaa !9
  %6758 = load i32, ptr %49, align 4, !tbaa !9
  %6759 = load i32, ptr %50, align 4, !tbaa !9
  %6760 = call i32 @w2c_hermes_memcmp(ptr noundef %6756, i32 noundef %6757, i32 noundef %6758, i32 noundef %6759)
  store i32 %6760, ptr %48, align 4, !tbaa !9
  %6761 = load i32, ptr %48, align 4, !tbaa !9
  %6762 = icmp ne i32 %6761, 0
  br i1 %6762, label %6763, label %6764

6763:                                             ; preds = %6752
  br label %6941

6764:                                             ; preds = %6752
  %6765 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6765, ptr %48, align 4, !tbaa !9
  %6766 = load ptr, ptr %5, align 8, !tbaa !5
  %6767 = getelementptr inbounds %struct.w2c_hermes, ptr %6766, i32 0, i32 6
  %6768 = load i32, ptr %48, align 4, !tbaa !9
  %6769 = zext i32 %6768 to i64
  %6770 = add i64 %6769, 41
  %6771 = call i32 @i32_load8_u(ptr noundef %6767, i64 noundef %6770)
  store i32 %6771, ptr %48, align 4, !tbaa !9
  %6772 = load i32, ptr %48, align 4, !tbaa !9
  %6773 = icmp ne i32 %6772, 0
  br i1 %6773, label %6774, label %6775

6774:                                             ; preds = %6764
  br label %6941

6775:                                             ; preds = %6764
  %6776 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6776, ptr %48, align 4, !tbaa !9
  %6777 = load ptr, ptr %5, align 8, !tbaa !5
  %6778 = getelementptr inbounds %struct.w2c_hermes, ptr %6777, i32 0, i32 6
  %6779 = load i32, ptr %48, align 4, !tbaa !9
  %6780 = zext i32 %6779 to i64
  %6781 = add i64 %6780, 42
  %6782 = call i32 @i32_load8_u(ptr noundef %6778, i64 noundef %6781)
  store i32 %6782, ptr %48, align 4, !tbaa !9
  %6783 = load i32, ptr %48, align 4, !tbaa !9
  %6784 = icmp ne i32 %6783, 0
  br i1 %6784, label %6785, label %6786

6785:                                             ; preds = %6775
  br label %6941

6786:                                             ; preds = %6775
  %6787 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6787, ptr %48, align 4, !tbaa !9
  %6788 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6788, ptr %49, align 4, !tbaa !9
  %6789 = load i32, ptr %49, align 4, !tbaa !9
  %6790 = icmp ne i32 %6789, 0
  %6791 = xor i1 %6790, true
  %6792 = zext i1 %6791 to i32
  store i32 %6792, ptr %49, align 4, !tbaa !9
  %6793 = load i32, ptr %49, align 4, !tbaa !9
  %6794 = icmp ne i32 %6793, 0
  br i1 %6794, label %6795, label %6796

6795:                                             ; preds = %6786
  br label %7789

6796:                                             ; preds = %6786
  %6797 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6797, ptr %48, align 4, !tbaa !9
  %6798 = load ptr, ptr %5, align 8, !tbaa !5
  %6799 = getelementptr inbounds %struct.w2c_hermes, ptr %6798, i32 0, i32 6
  %6800 = load i32, ptr %48, align 4, !tbaa !9
  %6801 = zext i32 %6800 to i64
  %6802 = add i64 %6801, 4
  %6803 = call i32 @i32_load(ptr noundef %6799, i64 noundef %6802)
  store i32 %6803, ptr %48, align 4, !tbaa !9
  %6804 = load ptr, ptr %5, align 8, !tbaa !5
  %6805 = getelementptr inbounds %struct.w2c_hermes, ptr %6804, i32 0, i32 6
  %6806 = load i32, ptr %48, align 4, !tbaa !9
  %6807 = zext i32 %6806 to i64
  %6808 = add i64 %6807, 28
  %6809 = call i32 @i32_load(ptr noundef %6805, i64 noundef %6808)
  store i32 %6809, ptr %48, align 4, !tbaa !9
  %6810 = load ptr, ptr %5, align 8, !tbaa !5
  %6811 = getelementptr inbounds %struct.w2c_hermes, ptr %6810, i32 0, i32 6
  %6812 = load i32, ptr %48, align 4, !tbaa !9
  %6813 = zext i32 %6812 to i64
  %6814 = add i64 %6813, 72
  %6815 = call i32 @i32_load(ptr noundef %6811, i64 noundef %6814)
  store i32 %6815, ptr %48, align 4, !tbaa !9
  %6816 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6816, ptr %8, align 4, !tbaa !9
  %6817 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6817, ptr %48, align 4, !tbaa !9
  %6818 = load ptr, ptr %5, align 8, !tbaa !5
  %6819 = getelementptr inbounds %struct.w2c_hermes, ptr %6818, i32 0, i32 6
  %6820 = load i32, ptr %48, align 4, !tbaa !9
  %6821 = zext i32 %6820 to i64
  %6822 = add i64 %6821, 16
  %6823 = call i64 @i64_load(ptr noundef %6819, i64 noundef %6822)
  store i64 %6823, ptr %58, align 8, !tbaa !11
  %6824 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %6824, ptr %31, align 8, !tbaa !11
  %6825 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6825, ptr %48, align 4, !tbaa !9
  store i32 57723, ptr %49, align 4, !tbaa !9
  %6826 = load ptr, ptr %5, align 8, !tbaa !5
  %6827 = getelementptr inbounds %struct.w2c_hermes, ptr %6826, i32 0, i32 6
  %6828 = load i32, ptr %48, align 4, !tbaa !9
  %6829 = zext i32 %6828 to i64
  %6830 = add i64 %6829, 192
  %6831 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6827, i64 noundef %6830, i32 noundef %6831)
  %6832 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6832, ptr %48, align 4, !tbaa !9
  store i32 259, ptr %49, align 4, !tbaa !9
  %6833 = load ptr, ptr %5, align 8, !tbaa !5
  %6834 = getelementptr inbounds %struct.w2c_hermes, ptr %6833, i32 0, i32 6
  %6835 = load i32, ptr %48, align 4, !tbaa !9
  %6836 = zext i32 %6835 to i64
  %6837 = add i64 %6836, 200
  %6838 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %6834, i64 noundef %6837, i32 noundef %6838)
  %6839 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6839, ptr %48, align 4, !tbaa !9
  %6840 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %6840, ptr %59, align 8, !tbaa !11
  %6841 = load ptr, ptr %5, align 8, !tbaa !5
  %6842 = getelementptr inbounds %struct.w2c_hermes, ptr %6841, i32 0, i32 6
  %6843 = load i32, ptr %48, align 4, !tbaa !9
  %6844 = zext i32 %6843 to i64
  %6845 = add i64 %6844, 64
  %6846 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6842, i64 noundef %6845, i64 noundef %6846)
  %6847 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6847, ptr %48, align 4, !tbaa !9
  %6848 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %6848, ptr %59, align 8, !tbaa !11
  %6849 = load ptr, ptr %5, align 8, !tbaa !5
  %6850 = getelementptr inbounds %struct.w2c_hermes, ptr %6849, i32 0, i32 6
  %6851 = load i32, ptr %48, align 4, !tbaa !9
  %6852 = zext i32 %6851 to i64
  %6853 = add i64 %6852, 176
  %6854 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6850, i64 noundef %6853, i64 noundef %6854)
  %6855 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6855, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %6856 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6856, ptr %50, align 4, !tbaa !9
  store i32 -64, ptr %51, align 4, !tbaa !9
  %6857 = load i32, ptr %51, align 4, !tbaa !9
  %6858 = load i32, ptr %50, align 4, !tbaa !9
  %6859 = sub i32 %6858, %6857
  store i32 %6859, ptr %50, align 4, !tbaa !9
  %6860 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6860, ptr %51, align 4, !tbaa !9
  store i32 192, ptr %52, align 4, !tbaa !9
  %6861 = load i32, ptr %52, align 4, !tbaa !9
  %6862 = load i32, ptr %51, align 4, !tbaa !9
  %6863 = add i32 %6862, %6861
  store i32 %6863, ptr %51, align 4, !tbaa !9
  %6864 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %6864, ptr %8, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %6865 = load ptr, ptr %5, align 8, !tbaa !5
  %6866 = load i32, ptr %48, align 4, !tbaa !9
  %6867 = load i32, ptr %49, align 4, !tbaa !9
  %6868 = load i32, ptr %50, align 4, !tbaa !9
  %6869 = load i32, ptr %51, align 4, !tbaa !9
  %6870 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %6865, i32 noundef %6866, i32 noundef %6867, i32 noundef %6868, i32 noundef %6869, i32 noundef %6870)
  %6871 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6871, ptr %48, align 4, !tbaa !9
  %6872 = load ptr, ptr %5, align 8, !tbaa !5
  %6873 = getelementptr inbounds %struct.w2c_hermes, ptr %6872, i32 0, i32 6
  %6874 = load i32, ptr %48, align 4, !tbaa !9
  %6875 = zext i32 %6874 to i64
  %6876 = add i64 %6875, 4
  %6877 = call i32 @i32_load(ptr noundef %6873, i64 noundef %6876)
  store i32 %6877, ptr %48, align 4, !tbaa !9
  %6878 = load ptr, ptr %5, align 8, !tbaa !5
  %6879 = getelementptr inbounds %struct.w2c_hermes, ptr %6878, i32 0, i32 6
  %6880 = load i32, ptr %48, align 4, !tbaa !9
  %6881 = zext i32 %6880 to i64
  %6882 = add i64 %6881, 28
  %6883 = call i32 @i32_load(ptr noundef %6879, i64 noundef %6882)
  store i32 %6883, ptr %48, align 4, !tbaa !9
  %6884 = load ptr, ptr %5, align 8, !tbaa !5
  %6885 = getelementptr inbounds %struct.w2c_hermes, ptr %6884, i32 0, i32 6
  %6886 = load i32, ptr %48, align 4, !tbaa !9
  %6887 = zext i32 %6886 to i64
  %6888 = add i64 %6887, 72
  %6889 = call i32 @i32_load(ptr noundef %6885, i64 noundef %6888)
  store i32 %6889, ptr %48, align 4, !tbaa !9
  %6890 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6890, ptr %12, align 4, !tbaa !9
  %6891 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6891, ptr %48, align 4, !tbaa !9
  %6892 = load ptr, ptr %5, align 8, !tbaa !5
  %6893 = getelementptr inbounds %struct.w2c_hermes, ptr %6892, i32 0, i32 6
  %6894 = load i32, ptr %48, align 4, !tbaa !9
  %6895 = zext i32 %6894 to i64
  %6896 = add i64 %6895, 16
  %6897 = call i64 @i64_load(ptr noundef %6893, i64 noundef %6896)
  store i64 %6897, ptr %58, align 8, !tbaa !11
  %6898 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %6898, ptr %31, align 8, !tbaa !11
  %6899 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6899, ptr %48, align 4, !tbaa !9
  store i32 58340, ptr %49, align 4, !tbaa !9
  %6900 = load ptr, ptr %5, align 8, !tbaa !5
  %6901 = getelementptr inbounds %struct.w2c_hermes, ptr %6900, i32 0, i32 6
  %6902 = load i32, ptr %48, align 4, !tbaa !9
  %6903 = zext i32 %6902 to i64
  %6904 = add i64 %6903, 192
  %6905 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6901, i64 noundef %6904, i32 noundef %6905)
  %6906 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6906, ptr %48, align 4, !tbaa !9
  store i32 259, ptr %49, align 4, !tbaa !9
  %6907 = load ptr, ptr %5, align 8, !tbaa !5
  %6908 = getelementptr inbounds %struct.w2c_hermes, ptr %6907, i32 0, i32 6
  %6909 = load i32, ptr %48, align 4, !tbaa !9
  %6910 = zext i32 %6909 to i64
  %6911 = add i64 %6910, 200
  %6912 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %6908, i64 noundef %6911, i32 noundef %6912)
  %6913 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6913, ptr %48, align 4, !tbaa !9
  %6914 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %6914, ptr %59, align 8, !tbaa !11
  %6915 = load ptr, ptr %5, align 8, !tbaa !5
  %6916 = getelementptr inbounds %struct.w2c_hermes, ptr %6915, i32 0, i32 6
  %6917 = load i32, ptr %48, align 4, !tbaa !9
  %6918 = zext i32 %6917 to i64
  %6919 = add i64 %6918, 56
  %6920 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6916, i64 noundef %6919, i64 noundef %6920)
  %6921 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6921, ptr %48, align 4, !tbaa !9
  %6922 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %6922, ptr %59, align 8, !tbaa !11
  %6923 = load ptr, ptr %5, align 8, !tbaa !5
  %6924 = getelementptr inbounds %struct.w2c_hermes, ptr %6923, i32 0, i32 6
  %6925 = load i32, ptr %48, align 4, !tbaa !9
  %6926 = zext i32 %6925 to i64
  %6927 = add i64 %6926, 176
  %6928 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6924, i64 noundef %6927, i64 noundef %6928)
  %6929 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6929, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %6930 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6930, ptr %50, align 4, !tbaa !9
  store i32 56, ptr %51, align 4, !tbaa !9
  %6931 = load i32, ptr %51, align 4, !tbaa !9
  %6932 = load i32, ptr %50, align 4, !tbaa !9
  %6933 = add i32 %6932, %6931
  store i32 %6933, ptr %50, align 4, !tbaa !9
  %6934 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6934, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %6935 = load ptr, ptr %5, align 8, !tbaa !5
  %6936 = load i32, ptr %48, align 4, !tbaa !9
  %6937 = load i32, ptr %49, align 4, !tbaa !9
  %6938 = load i32, ptr %50, align 4, !tbaa !9
  %6939 = load i32, ptr %51, align 4, !tbaa !9
  %6940 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %6935, i32 noundef %6936, i32 noundef %6937, i32 noundef %6938, i32 noundef %6939, i32 noundef %6940)
  br label %7787

6941:                                             ; preds = %6785, %6774, %6763, %6751, %6732, %6716
  %6942 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6942, ptr %48, align 4, !tbaa !9
  store i32 288, ptr %49, align 4, !tbaa !9
  %6943 = load i32, ptr %49, align 4, !tbaa !9
  %6944 = load i32, ptr %48, align 4, !tbaa !9
  %6945 = add i32 %6944, %6943
  store i32 %6945, ptr %48, align 4, !tbaa !9
  %6946 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6946, ptr %49, align 4, !tbaa !9
  %6947 = load ptr, ptr %5, align 8, !tbaa !5
  %6948 = getelementptr inbounds %struct.w2c_hermes, ptr %6947, i32 0, i32 6
  %6949 = load i32, ptr %49, align 4, !tbaa !9
  %6950 = zext i32 %6949 to i64
  %6951 = add i64 %6950, 208
  %6952 = call i64 @i64_load(ptr noundef %6948, i64 noundef %6951)
  store i64 %6952, ptr %59, align 8, !tbaa !11
  %6953 = load ptr, ptr %5, align 8, !tbaa !5
  %6954 = load i32, ptr %48, align 4, !tbaa !9
  %6955 = load i64, ptr %59, align 8, !tbaa !11
  %6956 = call i32 @w2c_hermes_llvh0x3A0x3AStringMap0x3Chermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenObjectExpr0x28hermes0x3A0x3AESTree0x3A0x3AObjectExpressionNode0x2A0x290x3A0x3APropertyValue0x2C0x20llvh0x3A0x3AMallocAllocator0x3E0x3A0x3Aoperator0x5B0x5D0x28llvh0x3A0x3AStringRef0x29(ptr noundef %6953, i32 noundef %6954, i64 noundef %6955)
  store i32 %6956, ptr %48, align 4, !tbaa !9
  %6957 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6957, ptr %8, align 4, !tbaa !9
  %6958 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6958, ptr %48, align 4, !tbaa !9
  %6959 = load ptr, ptr %5, align 8, !tbaa !5
  %6960 = getelementptr inbounds %struct.w2c_hermes, ptr %6959, i32 0, i32 6
  %6961 = load i32, ptr %48, align 4, !tbaa !9
  %6962 = zext i32 %6961 to i64
  %6963 = add i64 %6962, 36
  %6964 = call i32 @i32_load(ptr noundef %6960, i64 noundef %6963)
  store i32 %6964, ptr %48, align 4, !tbaa !9
  %6965 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6965, ptr %12, align 4, !tbaa !9
  %6966 = load ptr, ptr %5, align 8, !tbaa !5
  %6967 = getelementptr inbounds %struct.w2c_hermes, ptr %6966, i32 0, i32 6
  %6968 = load i32, ptr %48, align 4, !tbaa !9
  %6969 = zext i32 %6968 to i64
  %6970 = call i64 @i64_load(ptr noundef %6967, i64 noundef %6969)
  store i64 %6970, ptr %58, align 8, !tbaa !11
  %6971 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %6971, ptr %31, align 8, !tbaa !11
  store i64 -4294967296, ptr %59, align 8, !tbaa !11
  %6972 = load i64, ptr %59, align 8, !tbaa !11
  %6973 = load i64, ptr %58, align 8, !tbaa !11
  %6974 = and i64 %6973, %6972
  store i64 %6974, ptr %58, align 8, !tbaa !11
  store i64 12884901888, ptr %59, align 8, !tbaa !11
  %6975 = load i64, ptr %58, align 8, !tbaa !11
  %6976 = load i64, ptr %59, align 8, !tbaa !11
  %6977 = icmp ne i64 %6975, %6976
  %6978 = zext i1 %6977 to i32
  store i32 %6978, ptr %48, align 4, !tbaa !9
  %6979 = load i32, ptr %48, align 4, !tbaa !9
  %6980 = icmp ne i32 %6979, 0
  br i1 %6980, label %6981, label %6982

6981:                                             ; preds = %6941
  br label %7103

6982:                                             ; preds = %6941
  %6983 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %6983, ptr %58, align 8, !tbaa !11
  %6984 = load i64, ptr %58, align 8, !tbaa !11
  %6985 = trunc i64 %6984 to i32
  store i32 %6985, ptr %48, align 4, !tbaa !9
  %6986 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %6986, ptr %15, align 4, !tbaa !9
  store i32 29638, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %6987 = load ptr, ptr %5, align 8, !tbaa !5
  %6988 = load i32, ptr %48, align 4, !tbaa !9
  %6989 = load i32, ptr %49, align 4, !tbaa !9
  %6990 = load i32, ptr %50, align 4, !tbaa !9
  %6991 = call i32 @w2c_hermes_memcmp(ptr noundef %6987, i32 noundef %6988, i32 noundef %6989, i32 noundef %6990)
  store i32 %6991, ptr %48, align 4, !tbaa !9
  %6992 = load i32, ptr %48, align 4, !tbaa !9
  %6993 = icmp ne i32 %6992, 0
  %6994 = xor i1 %6993, true
  %6995 = zext i1 %6994 to i32
  store i32 %6995, ptr %48, align 4, !tbaa !9
  %6996 = load i32, ptr %48, align 4, !tbaa !9
  %6997 = icmp ne i32 %6996, 0
  br i1 %6997, label %6998, label %7049

6998:                                             ; preds = %6982
  %6999 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6999, ptr %48, align 4, !tbaa !9
  %7000 = load ptr, ptr %5, align 8, !tbaa !5
  %7001 = getelementptr inbounds %struct.w2c_hermes, ptr %7000, i32 0, i32 6
  %7002 = load i32, ptr %48, align 4, !tbaa !9
  %7003 = zext i32 %7002 to i64
  %7004 = add i64 %7003, 32
  %7005 = call i32 @i32_load(ptr noundef %7001, i64 noundef %7004)
  store i32 %7005, ptr %48, align 4, !tbaa !9
  %7006 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7006, ptr %15, align 4, !tbaa !9
  %7007 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7007, ptr %48, align 4, !tbaa !9
  %7008 = load ptr, ptr %5, align 8, !tbaa !5
  %7009 = getelementptr inbounds %struct.w2c_hermes, ptr %7008, i32 0, i32 6
  %7010 = load i32, ptr %48, align 4, !tbaa !9
  %7011 = zext i32 %7010 to i64
  %7012 = call i32 @i32_load8_u(ptr noundef %7009, i64 noundef %7011)
  store i32 %7012, ptr %48, align 4, !tbaa !9
  %7013 = load i32, ptr %48, align 4, !tbaa !9
  %7014 = icmp ne i32 %7013, 0
  %7015 = xor i1 %7014, true
  %7016 = zext i1 %7015 to i32
  store i32 %7016, ptr %48, align 4, !tbaa !9
  %7017 = load i32, ptr %48, align 4, !tbaa !9
  %7018 = icmp ne i32 %7017, 0
  br i1 %7018, label %7019, label %7040

7019:                                             ; preds = %6998
  %7020 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7020, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %7021 = load ptr, ptr %5, align 8, !tbaa !5
  %7022 = getelementptr inbounds %struct.w2c_hermes, ptr %7021, i32 0, i32 6
  %7023 = load i32, ptr %48, align 4, !tbaa !9
  %7024 = zext i32 %7023 to i64
  %7025 = add i64 %7024, 16
  %7026 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7022, i64 noundef %7025, i32 noundef %7026)
  %7027 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7027, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %7028 = load ptr, ptr %5, align 8, !tbaa !5
  %7029 = getelementptr inbounds %struct.w2c_hermes, ptr %7028, i32 0, i32 6
  %7030 = load i32, ptr %48, align 4, !tbaa !9
  %7031 = zext i32 %7030 to i64
  %7032 = add i64 %7031, 8
  %7033 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7029, i64 noundef %7032, i32 noundef %7033)
  %7034 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7034, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %7035 = load ptr, ptr %5, align 8, !tbaa !5
  %7036 = getelementptr inbounds %struct.w2c_hermes, ptr %7035, i32 0, i32 6
  %7037 = load i32, ptr %48, align 4, !tbaa !9
  %7038 = zext i32 %7037 to i64
  %7039 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %7036, i64 noundef %7038, i32 noundef %7039)
  br label %7040

7040:                                             ; preds = %7019, %6998
  %7041 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7041, ptr %48, align 4, !tbaa !9
  %7042 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7042, ptr %49, align 4, !tbaa !9
  %7043 = load ptr, ptr %5, align 8, !tbaa !5
  %7044 = getelementptr inbounds %struct.w2c_hermes, ptr %7043, i32 0, i32 6
  %7045 = load i32, ptr %48, align 4, !tbaa !9
  %7046 = zext i32 %7045 to i64
  %7047 = add i64 %7046, 12
  %7048 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7044, i64 noundef %7047, i32 noundef %7048)
  br label %7131

7049:                                             ; preds = %6982
  %7050 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7050, ptr %48, align 4, !tbaa !9
  store i32 28913, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %7051 = load ptr, ptr %5, align 8, !tbaa !5
  %7052 = load i32, ptr %48, align 4, !tbaa !9
  %7053 = load i32, ptr %49, align 4, !tbaa !9
  %7054 = load i32, ptr %50, align 4, !tbaa !9
  %7055 = call i32 @w2c_hermes_memcmp(ptr noundef %7051, i32 noundef %7052, i32 noundef %7053, i32 noundef %7054)
  store i32 %7055, ptr %48, align 4, !tbaa !9
  %7056 = load i32, ptr %48, align 4, !tbaa !9
  %7057 = icmp ne i32 %7056, 0
  br i1 %7057, label %7058, label %7059

7058:                                             ; preds = %7049
  br label %7103

7059:                                             ; preds = %7049
  %7060 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7060, ptr %48, align 4, !tbaa !9
  %7061 = load ptr, ptr %5, align 8, !tbaa !5
  %7062 = getelementptr inbounds %struct.w2c_hermes, ptr %7061, i32 0, i32 6
  %7063 = load i32, ptr %48, align 4, !tbaa !9
  %7064 = zext i32 %7063 to i64
  %7065 = add i64 %7064, 32
  %7066 = call i32 @i32_load(ptr noundef %7062, i64 noundef %7065)
  store i32 %7066, ptr %48, align 4, !tbaa !9
  %7067 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7067, ptr %15, align 4, !tbaa !9
  %7068 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7068, ptr %48, align 4, !tbaa !9
  %7069 = load ptr, ptr %5, align 8, !tbaa !5
  %7070 = getelementptr inbounds %struct.w2c_hermes, ptr %7069, i32 0, i32 6
  %7071 = load i32, ptr %48, align 4, !tbaa !9
  %7072 = zext i32 %7071 to i64
  %7073 = call i32 @i32_load8_u(ptr noundef %7070, i64 noundef %7072)
  store i32 %7073, ptr %48, align 4, !tbaa !9
  %7074 = load i32, ptr %48, align 4, !tbaa !9
  %7075 = icmp ne i32 %7074, 0
  %7076 = xor i1 %7075, true
  %7077 = zext i1 %7076 to i32
  store i32 %7077, ptr %48, align 4, !tbaa !9
  %7078 = load i32, ptr %48, align 4, !tbaa !9
  %7079 = icmp ne i32 %7078, 0
  br i1 %7079, label %7080, label %7094

7080:                                             ; preds = %7059
  %7081 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7081, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %7082 = load ptr, ptr %5, align 8, !tbaa !5
  %7083 = getelementptr inbounds %struct.w2c_hermes, ptr %7082, i32 0, i32 6
  %7084 = load i32, ptr %48, align 4, !tbaa !9
  %7085 = zext i32 %7084 to i64
  %7086 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %7083, i64 noundef %7085, i32 noundef %7086)
  %7087 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7087, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %7088 = load ptr, ptr %5, align 8, !tbaa !5
  %7089 = getelementptr inbounds %struct.w2c_hermes, ptr %7088, i32 0, i32 6
  %7090 = load i32, ptr %48, align 4, !tbaa !9
  %7091 = zext i32 %7090 to i64
  %7092 = add i64 %7091, 8
  %7093 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7089, i64 noundef %7092, i64 noundef %7093)
  br label %7094

7094:                                             ; preds = %7080, %7059
  %7095 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7095, ptr %48, align 4, !tbaa !9
  %7096 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7096, ptr %49, align 4, !tbaa !9
  %7097 = load ptr, ptr %5, align 8, !tbaa !5
  %7098 = getelementptr inbounds %struct.w2c_hermes, ptr %7097, i32 0, i32 6
  %7099 = load i32, ptr %48, align 4, !tbaa !9
  %7100 = zext i32 %7099 to i64
  %7101 = add i64 %7100, 16
  %7102 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7098, i64 noundef %7101, i32 noundef %7102)
  br label %7131

7103:                                             ; preds = %7058, %6981
  %7104 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7104, ptr %48, align 4, !tbaa !9
  %7105 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7105, ptr %49, align 4, !tbaa !9
  %7106 = load ptr, ptr %5, align 8, !tbaa !5
  %7107 = getelementptr inbounds %struct.w2c_hermes, ptr %7106, i32 0, i32 6
  %7108 = load i32, ptr %49, align 4, !tbaa !9
  %7109 = zext i32 %7108 to i64
  %7110 = add i64 %7109, 32
  %7111 = call i32 @i32_load(ptr noundef %7107, i64 noundef %7110)
  store i32 %7111, ptr %49, align 4, !tbaa !9
  %7112 = load ptr, ptr %5, align 8, !tbaa !5
  %7113 = getelementptr inbounds %struct.w2c_hermes, ptr %7112, i32 0, i32 6
  %7114 = load i32, ptr %48, align 4, !tbaa !9
  %7115 = zext i32 %7114 to i64
  %7116 = add i64 %7115, 8
  %7117 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7113, i64 noundef %7116, i32 noundef %7117)
  %7118 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7118, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %7119 = load ptr, ptr %5, align 8, !tbaa !5
  %7120 = getelementptr inbounds %struct.w2c_hermes, ptr %7119, i32 0, i32 6
  %7121 = load i32, ptr %48, align 4, !tbaa !9
  %7122 = zext i32 %7121 to i64
  %7123 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %7120, i64 noundef %7122, i32 noundef %7123)
  %7124 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7124, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %7125 = load ptr, ptr %5, align 8, !tbaa !5
  %7126 = getelementptr inbounds %struct.w2c_hermes, ptr %7125, i32 0, i32 6
  %7127 = load i32, ptr %48, align 4, !tbaa !9
  %7128 = zext i32 %7127 to i64
  %7129 = add i64 %7128, 12
  %7130 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7126, i64 noundef %7129, i64 noundef %7130)
  br label %7131

7131:                                             ; preds = %7103, %7094, %7040
  %7132 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7132, ptr %48, align 4, !tbaa !9
  store i32 1285, ptr %49, align 4, !tbaa !9
  %7133 = load ptr, ptr %5, align 8, !tbaa !5
  %7134 = getelementptr inbounds %struct.w2c_hermes, ptr %7133, i32 0, i32 6
  %7135 = load i32, ptr %48, align 4, !tbaa !9
  %7136 = zext i32 %7135 to i64
  %7137 = add i64 %7136, 184
  %7138 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %7134, i64 noundef %7137, i32 noundef %7138)
  %7139 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7139, ptr %48, align 4, !tbaa !9
  %7140 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7140, ptr %49, align 4, !tbaa !9
  %7141 = load ptr, ptr %5, align 8, !tbaa !5
  %7142 = getelementptr inbounds %struct.w2c_hermes, ptr %7141, i32 0, i32 6
  %7143 = load i32, ptr %48, align 4, !tbaa !9
  %7144 = zext i32 %7143 to i64
  %7145 = add i64 %7144, 176
  %7146 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7142, i64 noundef %7145, i32 noundef %7146)
  %7147 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7147, ptr %48, align 4, !tbaa !9
  %7148 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7148, ptr %49, align 4, !tbaa !9
  store i32 208, ptr %50, align 4, !tbaa !9
  %7149 = load i32, ptr %50, align 4, !tbaa !9
  %7150 = load i32, ptr %49, align 4, !tbaa !9
  %7151 = add i32 %7150, %7149
  store i32 %7151, ptr %49, align 4, !tbaa !9
  %7152 = load ptr, ptr %5, align 8, !tbaa !5
  %7153 = getelementptr inbounds %struct.w2c_hermes, ptr %7152, i32 0, i32 6
  %7154 = load i32, ptr %48, align 4, !tbaa !9
  %7155 = zext i32 %7154 to i64
  %7156 = add i64 %7155, 180
  %7157 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7153, i64 noundef %7156, i32 noundef %7157)
  %7158 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7158, ptr %48, align 4, !tbaa !9
  store i32 192, ptr %49, align 4, !tbaa !9
  %7159 = load i32, ptr %49, align 4, !tbaa !9
  %7160 = load i32, ptr %48, align 4, !tbaa !9
  %7161 = add i32 %7160, %7159
  store i32 %7161, ptr %48, align 4, !tbaa !9
  %7162 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7162, ptr %8, align 4, !tbaa !9
  %7163 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7163, ptr %49, align 4, !tbaa !9
  store i32 176, ptr %50, align 4, !tbaa !9
  %7164 = load i32, ptr %50, align 4, !tbaa !9
  %7165 = load i32, ptr %49, align 4, !tbaa !9
  %7166 = add i32 %7165, %7164
  store i32 %7166, ptr %49, align 4, !tbaa !9
  %7167 = load ptr, ptr %5, align 8, !tbaa !5
  %7168 = load i32, ptr %48, align 4, !tbaa !9
  %7169 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ATwine0x3A0x3Astr0x280x290x20const(ptr noundef %7167, i32 noundef %7168, i32 noundef %7169)
  %7170 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7170, ptr %48, align 4, !tbaa !9
  %7171 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7171, ptr %49, align 4, !tbaa !9
  %7172 = load ptr, ptr %5, align 8, !tbaa !5
  %7173 = getelementptr inbounds %struct.w2c_hermes, ptr %7172, i32 0, i32 6
  %7174 = load i32, ptr %49, align 4, !tbaa !9
  %7175 = zext i32 %7174 to i64
  %7176 = add i64 %7175, 192
  %7177 = call i32 @i32_load(ptr noundef %7173, i64 noundef %7176)
  store i32 %7177, ptr %49, align 4, !tbaa !9
  %7178 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7178, ptr %50, align 4, !tbaa !9
  %7179 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7179, ptr %51, align 4, !tbaa !9
  %7180 = load ptr, ptr %5, align 8, !tbaa !5
  %7181 = getelementptr inbounds %struct.w2c_hermes, ptr %7180, i32 0, i32 6
  %7182 = load i32, ptr %51, align 4, !tbaa !9
  %7183 = zext i32 %7182 to i64
  %7184 = add i64 %7183, 203
  %7185 = call i32 @i32_load8_s(ptr noundef %7181, i64 noundef %7184)
  store i32 %7185, ptr %51, align 4, !tbaa !9
  %7186 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %7186, ptr %8, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %7187 = load i32, ptr %51, align 4, !tbaa !9
  %7188 = load i32, ptr %52, align 4, !tbaa !9
  %7189 = icmp slt i32 %7187, %7188
  %7190 = zext i1 %7189 to i32
  store i32 %7190, ptr %51, align 4, !tbaa !9
  %7191 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %7191, ptr %12, align 4, !tbaa !9
  %7192 = load i32, ptr %51, align 4, !tbaa !9
  %7193 = icmp ne i32 %7192, 0
  br i1 %7193, label %7194, label %7196

7194:                                             ; preds = %7131
  %7195 = load i32, ptr %49, align 4, !tbaa !9
  br label %7198

7196:                                             ; preds = %7131
  %7197 = load i32, ptr %50, align 4, !tbaa !9
  br label %7198

7198:                                             ; preds = %7196, %7194
  %7199 = phi i32 [ %7195, %7194 ], [ %7197, %7196 ]
  store i32 %7199, ptr %49, align 4, !tbaa !9
  %7200 = load ptr, ptr %5, align 8, !tbaa !5
  %7201 = getelementptr inbounds %struct.w2c_hermes, ptr %7200, i32 0, i32 6
  %7202 = load i32, ptr %48, align 4, !tbaa !9
  %7203 = zext i32 %7202 to i64
  %7204 = add i64 %7203, 160
  %7205 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7201, i64 noundef %7204, i32 noundef %7205)
  %7206 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7206, ptr %48, align 4, !tbaa !9
  %7207 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7207, ptr %49, align 4, !tbaa !9
  %7208 = load ptr, ptr %5, align 8, !tbaa !5
  %7209 = getelementptr inbounds %struct.w2c_hermes, ptr %7208, i32 0, i32 6
  %7210 = load i32, ptr %49, align 4, !tbaa !9
  %7211 = zext i32 %7210 to i64
  %7212 = add i64 %7211, 196
  %7213 = call i32 @i32_load(ptr noundef %7209, i64 noundef %7212)
  store i32 %7213, ptr %49, align 4, !tbaa !9
  %7214 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7214, ptr %50, align 4, !tbaa !9
  store i32 255, ptr %51, align 4, !tbaa !9
  %7215 = load i32, ptr %51, align 4, !tbaa !9
  %7216 = load i32, ptr %50, align 4, !tbaa !9
  %7217 = and i32 %7216, %7215
  store i32 %7217, ptr %50, align 4, !tbaa !9
  %7218 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7218, ptr %51, align 4, !tbaa !9
  %7219 = load i32, ptr %51, align 4, !tbaa !9
  %7220 = icmp ne i32 %7219, 0
  br i1 %7220, label %7221, label %7223

7221:                                             ; preds = %7198
  %7222 = load i32, ptr %49, align 4, !tbaa !9
  br label %7225

7223:                                             ; preds = %7198
  %7224 = load i32, ptr %50, align 4, !tbaa !9
  br label %7225

7225:                                             ; preds = %7223, %7221
  %7226 = phi i32 [ %7222, %7221 ], [ %7224, %7223 ]
  store i32 %7226, ptr %49, align 4, !tbaa !9
  %7227 = load ptr, ptr %5, align 8, !tbaa !5
  %7228 = getelementptr inbounds %struct.w2c_hermes, ptr %7227, i32 0, i32 6
  %7229 = load i32, ptr %48, align 4, !tbaa !9
  %7230 = zext i32 %7229 to i64
  %7231 = add i64 %7230, 164
  %7232 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7228, i64 noundef %7231, i32 noundef %7232)
  %7233 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7233, ptr %48, align 4, !tbaa !9
  %7234 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7234, ptr %49, align 4, !tbaa !9
  %7235 = load ptr, ptr %5, align 8, !tbaa !5
  %7236 = getelementptr inbounds %struct.w2c_hermes, ptr %7235, i32 0, i32 6
  %7237 = load i32, ptr %49, align 4, !tbaa !9
  %7238 = zext i32 %7237 to i64
  %7239 = add i64 %7238, 16
  %7240 = call i64 @i64_load(ptr noundef %7236, i64 noundef %7239)
  store i64 %7240, ptr %59, align 8, !tbaa !11
  %7241 = load ptr, ptr %5, align 8, !tbaa !5
  %7242 = getelementptr inbounds %struct.w2c_hermes, ptr %7241, i32 0, i32 6
  %7243 = load i32, ptr %48, align 4, !tbaa !9
  %7244 = zext i32 %7243 to i64
  %7245 = add i64 %7244, 176
  %7246 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7242, i64 noundef %7245, i64 noundef %7246)
  %7247 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7247, ptr %48, align 4, !tbaa !9
  %7248 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7248, ptr %49, align 4, !tbaa !9
  %7249 = load ptr, ptr %5, align 8, !tbaa !5
  %7250 = getelementptr inbounds %struct.w2c_hermes, ptr %7249, i32 0, i32 6
  %7251 = load i32, ptr %49, align 4, !tbaa !9
  %7252 = zext i32 %7251 to i64
  %7253 = add i64 %7252, 160
  %7254 = call i64 @i64_load(ptr noundef %7250, i64 noundef %7253)
  store i64 %7254, ptr %59, align 8, !tbaa !11
  %7255 = load ptr, ptr %5, align 8, !tbaa !5
  %7256 = getelementptr inbounds %struct.w2c_hermes, ptr %7255, i32 0, i32 6
  %7257 = load i32, ptr %48, align 4, !tbaa !9
  %7258 = zext i32 %7257 to i64
  %7259 = add i64 %7258, 88
  %7260 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7256, i64 noundef %7259, i64 noundef %7260)
  %7261 = load ptr, ptr %5, align 8, !tbaa !5
  %7262 = getelementptr inbounds %struct.w2c_hermes, ptr %7261, i32 0, i32 3
  %7263 = load i32, ptr %7262, align 8, !tbaa !15
  store i32 %7263, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %7264 = load i32, ptr %49, align 4, !tbaa !9
  %7265 = load i32, ptr %48, align 4, !tbaa !9
  %7266 = sub i32 %7265, %7264
  store i32 %7266, ptr %48, align 4, !tbaa !9
  %7267 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7267, ptr %18, align 4, !tbaa !9
  %7268 = load i32, ptr %48, align 4, !tbaa !9
  %7269 = load ptr, ptr %5, align 8, !tbaa !5
  %7270 = getelementptr inbounds %struct.w2c_hermes, ptr %7269, i32 0, i32 3
  store i32 %7268, ptr %7270, align 8, !tbaa !15
  %7271 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7271, ptr %48, align 4, !tbaa !9
  %7272 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7272, ptr %49, align 4, !tbaa !9
  %7273 = load ptr, ptr %5, align 8, !tbaa !5
  %7274 = getelementptr inbounds %struct.w2c_hermes, ptr %7273, i32 0, i32 6
  %7275 = load i32, ptr %49, align 4, !tbaa !9
  %7276 = zext i32 %7275 to i64
  %7277 = add i64 %7276, 88
  %7278 = call i64 @i64_load(ptr noundef %7274, i64 noundef %7277)
  store i64 %7278, ptr %59, align 8, !tbaa !11
  %7279 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %7279, ptr %31, align 8, !tbaa !11
  %7280 = load ptr, ptr %5, align 8, !tbaa !5
  %7281 = getelementptr inbounds %struct.w2c_hermes, ptr %7280, i32 0, i32 6
  %7282 = load i32, ptr %48, align 4, !tbaa !9
  %7283 = zext i32 %7282 to i64
  %7284 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7281, i64 noundef %7283, i64 noundef %7284)
  %7285 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7285, ptr %48, align 4, !tbaa !9
  %7286 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %7286, ptr %59, align 8, !tbaa !11
  %7287 = load ptr, ptr %5, align 8, !tbaa !5
  %7288 = getelementptr inbounds %struct.w2c_hermes, ptr %7287, i32 0, i32 6
  %7289 = load i32, ptr %48, align 4, !tbaa !9
  %7290 = zext i32 %7289 to i64
  %7291 = add i64 %7290, 8
  %7292 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7288, i64 noundef %7291, i64 noundef %7292)
  %7293 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7293, ptr %48, align 4, !tbaa !9
  store i32 264, ptr %49, align 4, !tbaa !9
  %7294 = load i32, ptr %49, align 4, !tbaa !9
  %7295 = load i32, ptr %48, align 4, !tbaa !9
  %7296 = add i32 %7295, %7294
  store i32 %7296, ptr %48, align 4, !tbaa !9
  %7297 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7297, ptr %15, align 4, !tbaa !9
  %7298 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7298, ptr %49, align 4, !tbaa !9
  %7299 = load ptr, ptr %5, align 8, !tbaa !5
  %7300 = load i32, ptr %48, align 4, !tbaa !9
  %7301 = load i32, ptr %49, align 4, !tbaa !9
  %7302 = call i32 @w2c_hermes_llvh0x3A0x3AStringMapImpl0x3A0x3ALookupBucketFor0x28llvh0x3A0x3AStringRef0x29(ptr noundef %7299, i32 noundef %7300, i32 noundef %7301)
  store i32 %7302, ptr %48, align 4, !tbaa !9
  %7303 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7303, ptr %19, align 4, !tbaa !9
  %7304 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7304, ptr %48, align 4, !tbaa !9
  %7305 = load ptr, ptr %5, align 8, !tbaa !5
  %7306 = getelementptr inbounds %struct.w2c_hermes, ptr %7305, i32 0, i32 6
  %7307 = load i32, ptr %48, align 4, !tbaa !9
  %7308 = zext i32 %7307 to i64
  %7309 = call i32 @i32_load(ptr noundef %7306, i64 noundef %7308)
  store i32 %7309, ptr %48, align 4, !tbaa !9
  %7310 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7310, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %7311 = load i32, ptr %50, align 4, !tbaa !9
  %7312 = and i32 %7311, 31
  %7313 = load i32, ptr %49, align 4, !tbaa !9
  %7314 = shl i32 %7313, %7312
  store i32 %7314, ptr %49, align 4, !tbaa !9
  %7315 = load i32, ptr %49, align 4, !tbaa !9
  %7316 = load i32, ptr %48, align 4, !tbaa !9
  %7317 = add i32 %7316, %7315
  store i32 %7317, ptr %48, align 4, !tbaa !9
  %7318 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7318, ptr %12, align 4, !tbaa !9
  %7319 = load ptr, ptr %5, align 8, !tbaa !5
  %7320 = getelementptr inbounds %struct.w2c_hermes, ptr %7319, i32 0, i32 6
  %7321 = load i32, ptr %48, align 4, !tbaa !9
  %7322 = zext i32 %7321 to i64
  %7323 = call i32 @i32_load(ptr noundef %7320, i64 noundef %7322)
  store i32 %7323, ptr %48, align 4, !tbaa !9
  %7324 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7324, ptr %17, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %7325 = load i32, ptr %49, align 4, !tbaa !9
  %7326 = load i32, ptr %48, align 4, !tbaa !9
  %7327 = add i32 %7326, %7325
  store i32 %7327, ptr %48, align 4, !tbaa !9
  %7328 = load i32, ptr %48, align 4, !tbaa !9
  switch i32 %7328, label %7334 [
    i32 0, label %7329
    i32 1, label %7330
    i32 2, label %7331
    i32 3, label %7332
    i32 4, label %7333
  ]

7329:                                             ; preds = %7225
  br label %7363

7330:                                             ; preds = %7225
  br label %7335

7331:                                             ; preds = %7225
  br label %7335

7332:                                             ; preds = %7225
  br label %7335

7333:                                             ; preds = %7225
  br label %7381

7334:                                             ; preds = %7225
  br label %7335

7335:                                             ; preds = %7334, %7332, %7331, %7330
  br label %7336

7336:                                             ; preds = %7349, %7335
  store i32 0, ptr %48, align 4, !tbaa !9
  %7337 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7337, ptr %8, align 4, !tbaa !9
  %7338 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7338, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %7339 = load i32, ptr %49, align 4, !tbaa !9
  %7340 = load i32, ptr %48, align 4, !tbaa !9
  %7341 = add i32 %7340, %7339
  store i32 %7341, ptr %48, align 4, !tbaa !9
  %7342 = load i32, ptr %48, align 4, !tbaa !9
  switch i32 %7342, label %7348 [
    i32 0, label %7343
    i32 1, label %7344
    i32 2, label %7345
    i32 3, label %7346
    i32 4, label %7347
  ]

7343:                                             ; preds = %7336
  br label %7349

7344:                                             ; preds = %7336
  br label %7528

7345:                                             ; preds = %7336
  br label %7528

7346:                                             ; preds = %7336
  br label %7528

7347:                                             ; preds = %7336
  br label %7349

7348:                                             ; preds = %7336
  br label %7528

7349:                                             ; preds = %7347, %7343
  %7350 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7350, ptr %48, align 4, !tbaa !9
  %7351 = load ptr, ptr %5, align 8, !tbaa !5
  %7352 = getelementptr inbounds %struct.w2c_hermes, ptr %7351, i32 0, i32 6
  %7353 = load i32, ptr %48, align 4, !tbaa !9
  %7354 = zext i32 %7353 to i64
  %7355 = add i64 %7354, 4
  %7356 = call i32 @i32_load(ptr noundef %7352, i64 noundef %7355)
  store i32 %7356, ptr %48, align 4, !tbaa !9
  %7357 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7357, ptr %17, align 4, !tbaa !9
  %7358 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7358, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %7359 = load i32, ptr %49, align 4, !tbaa !9
  %7360 = load i32, ptr %48, align 4, !tbaa !9
  %7361 = add i32 %7360, %7359
  store i32 %7361, ptr %48, align 4, !tbaa !9
  %7362 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7362, ptr %12, align 4, !tbaa !9
  br label %7336

7363:                                             ; preds = %7329
  %7364 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7364, ptr %48, align 4, !tbaa !9
  %7365 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7365, ptr %49, align 4, !tbaa !9
  %7366 = load ptr, ptr %5, align 8, !tbaa !5
  %7367 = getelementptr inbounds %struct.w2c_hermes, ptr %7366, i32 0, i32 6
  %7368 = load i32, ptr %49, align 4, !tbaa !9
  %7369 = zext i32 %7368 to i64
  %7370 = add i64 %7369, 12
  %7371 = call i32 @i32_load(ptr noundef %7367, i64 noundef %7370)
  store i32 %7371, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %7372 = load i32, ptr %50, align 4, !tbaa !9
  %7373 = load i32, ptr %49, align 4, !tbaa !9
  %7374 = sub i32 %7373, %7372
  store i32 %7374, ptr %49, align 4, !tbaa !9
  %7375 = load ptr, ptr %5, align 8, !tbaa !5
  %7376 = getelementptr inbounds %struct.w2c_hermes, ptr %7375, i32 0, i32 6
  %7377 = load i32, ptr %48, align 4, !tbaa !9
  %7378 = zext i32 %7377 to i64
  %7379 = add i64 %7378, 12
  %7380 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7376, i64 noundef %7379, i32 noundef %7380)
  br label %7381

7381:                                             ; preds = %7363, %7333
  %7382 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %7382, ptr %58, align 8, !tbaa !11
  store i64 32, ptr %59, align 8, !tbaa !11
  %7383 = load i64, ptr %59, align 8, !tbaa !11
  %7384 = and i64 %7383, 63
  %7385 = load i64, ptr %58, align 8, !tbaa !11
  %7386 = lshr i64 %7385, %7384
  store i64 %7386, ptr %58, align 8, !tbaa !11
  %7387 = load i64, ptr %58, align 8, !tbaa !11
  %7388 = trunc i64 %7387 to i32
  store i32 %7388, ptr %48, align 4, !tbaa !9
  %7389 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7389, ptr %8, align 4, !tbaa !9
  store i32 13, ptr %49, align 4, !tbaa !9
  %7390 = load i32, ptr %49, align 4, !tbaa !9
  %7391 = load i32, ptr %48, align 4, !tbaa !9
  %7392 = add i32 %7391, %7390
  store i32 %7392, ptr %48, align 4, !tbaa !9
  %7393 = load ptr, ptr %5, align 8, !tbaa !5
  %7394 = load i32, ptr %48, align 4, !tbaa !9
  %7395 = call i32 @w2c_hermes_dlmalloc(ptr noundef %7393, i32 noundef %7394)
  store i32 %7395, ptr %48, align 4, !tbaa !9
  %7396 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7396, ptr %17, align 4, !tbaa !9
  %7397 = load i32, ptr %48, align 4, !tbaa !9
  %7398 = icmp ne i32 %7397, 0
  %7399 = xor i1 %7398, true
  %7400 = zext i1 %7399 to i32
  store i32 %7400, ptr %48, align 4, !tbaa !9
  %7401 = load i32, ptr %48, align 4, !tbaa !9
  %7402 = icmp ne i32 %7401, 0
  br i1 %7402, label %7403, label %7406

7403:                                             ; preds = %7381
  store i32 54663, ptr %48, align 4, !tbaa !9
  %7404 = load ptr, ptr %5, align 8, !tbaa !5
  %7405 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3Areport_bad_alloc_error0x28char0x20const0x2A0x2C0x20bool0x29(ptr noundef %7404, i32 noundef %7405)
  br label %7406

7406:                                             ; preds = %7403, %7381
  %7407 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7407, ptr %48, align 4, !tbaa !9
  %7408 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7408, ptr %49, align 4, !tbaa !9
  %7409 = load ptr, ptr %5, align 8, !tbaa !5
  %7410 = getelementptr inbounds %struct.w2c_hermes, ptr %7409, i32 0, i32 6
  %7411 = load i32, ptr %48, align 4, !tbaa !9
  %7412 = zext i32 %7411 to i64
  %7413 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7410, i64 noundef %7412, i32 noundef %7413)
  %7414 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7414, ptr %48, align 4, !tbaa !9
  %7415 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7415, ptr %49, align 4, !tbaa !9
  %7416 = load ptr, ptr %5, align 8, !tbaa !5
  %7417 = getelementptr inbounds %struct.w2c_hermes, ptr %7416, i32 0, i32 6
  %7418 = load i32, ptr %49, align 4, !tbaa !9
  %7419 = zext i32 %7418 to i64
  %7420 = add i64 %7419, 176
  %7421 = call i64 @i64_load(ptr noundef %7417, i64 noundef %7420)
  store i64 %7421, ptr %59, align 8, !tbaa !11
  %7422 = load ptr, ptr %5, align 8, !tbaa !5
  %7423 = getelementptr inbounds %struct.w2c_hermes, ptr %7422, i32 0, i32 6
  %7424 = load i32, ptr %48, align 4, !tbaa !9
  %7425 = zext i32 %7424 to i64
  %7426 = add i64 %7425, 4
  %7427 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7423, i64 noundef %7426, i64 noundef %7427)
  %7428 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7428, ptr %48, align 4, !tbaa !9
  store i32 12, ptr %49, align 4, !tbaa !9
  %7429 = load i32, ptr %49, align 4, !tbaa !9
  %7430 = load i32, ptr %48, align 4, !tbaa !9
  %7431 = add i32 %7430, %7429
  store i32 %7431, ptr %48, align 4, !tbaa !9
  %7432 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7432, ptr %20, align 4, !tbaa !9
  %7433 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7433, ptr %48, align 4, !tbaa !9
  %7434 = load i32, ptr %48, align 4, !tbaa !9
  %7435 = icmp ne i32 %7434, 0
  br i1 %7435, label %7436, label %7447

7436:                                             ; preds = %7406
  %7437 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7437, ptr %48, align 4, !tbaa !9
  %7438 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %7438, ptr %59, align 8, !tbaa !11
  %7439 = load i64, ptr %59, align 8, !tbaa !11
  %7440 = trunc i64 %7439 to i32
  store i32 %7440, ptr %49, align 4, !tbaa !9
  %7441 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7441, ptr %50, align 4, !tbaa !9
  %7442 = load ptr, ptr %5, align 8, !tbaa !5
  %7443 = load i32, ptr %48, align 4, !tbaa !9
  %7444 = load i32, ptr %49, align 4, !tbaa !9
  %7445 = load i32, ptr %50, align 4, !tbaa !9
  %7446 = call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %7442, i32 noundef %7443, i32 noundef %7444, i32 noundef %7445)
  store i32 %7446, ptr %48, align 4, !tbaa !9
  br label %7447

7447:                                             ; preds = %7436, %7406
  %7448 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7448, ptr %48, align 4, !tbaa !9
  %7449 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7449, ptr %49, align 4, !tbaa !9
  %7450 = load i32, ptr %49, align 4, !tbaa !9
  %7451 = load i32, ptr %48, align 4, !tbaa !9
  %7452 = add i32 %7451, %7450
  store i32 %7452, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %7453 = load ptr, ptr %5, align 8, !tbaa !5
  %7454 = getelementptr inbounds %struct.w2c_hermes, ptr %7453, i32 0, i32 6
  %7455 = load i32, ptr %48, align 4, !tbaa !9
  %7456 = zext i32 %7455 to i64
  %7457 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %7454, i64 noundef %7456, i32 noundef %7457)
  %7458 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7458, ptr %48, align 4, !tbaa !9
  %7459 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7459, ptr %49, align 4, !tbaa !9
  %7460 = load ptr, ptr %5, align 8, !tbaa !5
  %7461 = getelementptr inbounds %struct.w2c_hermes, ptr %7460, i32 0, i32 6
  %7462 = load i32, ptr %48, align 4, !tbaa !9
  %7463 = zext i32 %7462 to i64
  %7464 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7461, i64 noundef %7463, i32 noundef %7464)
  store i32 1, ptr %48, align 4, !tbaa !9
  %7465 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7465, ptr %8, align 4, !tbaa !9
  %7466 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7466, ptr %48, align 4, !tbaa !9
  %7467 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7467, ptr %49, align 4, !tbaa !9
  %7468 = load ptr, ptr %5, align 8, !tbaa !5
  %7469 = getelementptr inbounds %struct.w2c_hermes, ptr %7468, i32 0, i32 6
  %7470 = load i32, ptr %49, align 4, !tbaa !9
  %7471 = zext i32 %7470 to i64
  %7472 = add i64 %7471, 8
  %7473 = call i32 @i32_load(ptr noundef %7469, i64 noundef %7472)
  store i32 %7473, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %7474 = load i32, ptr %50, align 4, !tbaa !9
  %7475 = load i32, ptr %49, align 4, !tbaa !9
  %7476 = add i32 %7475, %7474
  store i32 %7476, ptr %49, align 4, !tbaa !9
  %7477 = load ptr, ptr %5, align 8, !tbaa !5
  %7478 = getelementptr inbounds %struct.w2c_hermes, ptr %7477, i32 0, i32 6
  %7479 = load i32, ptr %48, align 4, !tbaa !9
  %7480 = zext i32 %7479 to i64
  %7481 = add i64 %7480, 8
  %7482 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7478, i64 noundef %7481, i32 noundef %7482)
  %7483 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7483, ptr %48, align 4, !tbaa !9
  %7484 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7484, ptr %49, align 4, !tbaa !9
  %7485 = load ptr, ptr %5, align 8, !tbaa !5
  %7486 = load i32, ptr %48, align 4, !tbaa !9
  %7487 = load i32, ptr %49, align 4, !tbaa !9
  %7488 = call i32 @w2c_hermes_llvh0x3A0x3AStringMapImpl0x3A0x3ARehashTable0x28unsigned0x20int0x29(ptr noundef %7485, i32 noundef %7486, i32 noundef %7487)
  store i32 %7488, ptr %48, align 4, !tbaa !9
  %7489 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7489, ptr %12, align 4, !tbaa !9
  %7490 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7490, ptr %48, align 4, !tbaa !9
  %7491 = load ptr, ptr %5, align 8, !tbaa !5
  %7492 = getelementptr inbounds %struct.w2c_hermes, ptr %7491, i32 0, i32 6
  %7493 = load i32, ptr %48, align 4, !tbaa !9
  %7494 = zext i32 %7493 to i64
  %7495 = call i32 @i32_load(ptr noundef %7492, i64 noundef %7494)
  store i32 %7495, ptr %48, align 4, !tbaa !9
  %7496 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7496, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %7497 = load i32, ptr %50, align 4, !tbaa !9
  %7498 = and i32 %7497, 31
  %7499 = load i32, ptr %49, align 4, !tbaa !9
  %7500 = shl i32 %7499, %7498
  store i32 %7500, ptr %49, align 4, !tbaa !9
  %7501 = load i32, ptr %49, align 4, !tbaa !9
  %7502 = load i32, ptr %48, align 4, !tbaa !9
  %7503 = add i32 %7502, %7501
  store i32 %7503, ptr %48, align 4, !tbaa !9
  %7504 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7504, ptr %12, align 4, !tbaa !9
  br label %7505

7505:                                             ; preds = %7522, %7447
  %7506 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7506, ptr %48, align 4, !tbaa !9
  %7507 = load ptr, ptr %5, align 8, !tbaa !5
  %7508 = getelementptr inbounds %struct.w2c_hermes, ptr %7507, i32 0, i32 6
  %7509 = load i32, ptr %48, align 4, !tbaa !9
  %7510 = zext i32 %7509 to i64
  %7511 = call i32 @i32_load(ptr noundef %7508, i64 noundef %7510)
  store i32 %7511, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %7512 = load i32, ptr %49, align 4, !tbaa !9
  %7513 = load i32, ptr %48, align 4, !tbaa !9
  %7514 = add i32 %7513, %7512
  store i32 %7514, ptr %48, align 4, !tbaa !9
  %7515 = load i32, ptr %48, align 4, !tbaa !9
  switch i32 %7515, label %7521 [
    i32 0, label %7516
    i32 1, label %7517
    i32 2, label %7518
    i32 3, label %7519
    i32 4, label %7520
  ]

7516:                                             ; preds = %7505
  br label %7522

7517:                                             ; preds = %7505
  br label %7528

7518:                                             ; preds = %7505
  br label %7528

7519:                                             ; preds = %7505
  br label %7528

7520:                                             ; preds = %7505
  br label %7522

7521:                                             ; preds = %7505
  br label %7528

7522:                                             ; preds = %7520, %7516
  %7523 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7523, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %7524 = load i32, ptr %49, align 4, !tbaa !9
  %7525 = load i32, ptr %48, align 4, !tbaa !9
  %7526 = add i32 %7525, %7524
  store i32 %7526, ptr %48, align 4, !tbaa !9
  %7527 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7527, ptr %12, align 4, !tbaa !9
  br label %7505

7528:                                             ; preds = %7521, %7519, %7518, %7517, %7348, %7346, %7345, %7344
  %7529 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7529, ptr %48, align 4, !tbaa !9
  %7530 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7530, ptr %49, align 4, !tbaa !9
  %7531 = load ptr, ptr %5, align 8, !tbaa !5
  %7532 = getelementptr inbounds %struct.w2c_hermes, ptr %7531, i32 0, i32 6
  %7533 = load i32, ptr %48, align 4, !tbaa !9
  %7534 = zext i32 %7533 to i64
  %7535 = add i64 %7534, 172
  %7536 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %7532, i64 noundef %7535, i32 noundef %7536)
  %7537 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7537, ptr %48, align 4, !tbaa !9
  %7538 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7538, ptr %49, align 4, !tbaa !9
  %7539 = load ptr, ptr %5, align 8, !tbaa !5
  %7540 = getelementptr inbounds %struct.w2c_hermes, ptr %7539, i32 0, i32 6
  %7541 = load i32, ptr %48, align 4, !tbaa !9
  %7542 = zext i32 %7541 to i64
  %7543 = add i64 %7542, 168
  %7544 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7540, i64 noundef %7543, i32 noundef %7544)
  %7545 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7545, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %7546 = load i32, ptr %49, align 4, !tbaa !9
  %7547 = load i32, ptr %48, align 4, !tbaa !9
  %7548 = add i32 %7547, %7546
  store i32 %7548, ptr %48, align 4, !tbaa !9
  %7549 = load i32, ptr %48, align 4, !tbaa !9
  %7550 = load ptr, ptr %5, align 8, !tbaa !5
  %7551 = getelementptr inbounds %struct.w2c_hermes, ptr %7550, i32 0, i32 3
  store i32 %7549, ptr %7551, align 8, !tbaa !15
  %7552 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7552, ptr %48, align 4, !tbaa !9
  %7553 = load ptr, ptr %5, align 8, !tbaa !5
  %7554 = getelementptr inbounds %struct.w2c_hermes, ptr %7553, i32 0, i32 6
  %7555 = load i32, ptr %48, align 4, !tbaa !9
  %7556 = zext i32 %7555 to i64
  %7557 = add i64 %7556, 172
  %7558 = call i32 @i32_load8_u(ptr noundef %7554, i64 noundef %7557)
  store i32 %7558, ptr %48, align 4, !tbaa !9
  %7559 = load i32, ptr %48, align 4, !tbaa !9
  %7560 = icmp ne i32 %7559, 0
  %7561 = xor i1 %7560, true
  %7562 = zext i1 %7561 to i32
  store i32 %7562, ptr %48, align 4, !tbaa !9
  %7563 = load i32, ptr %48, align 4, !tbaa !9
  %7564 = icmp ne i32 %7563, 0
  br i1 %7564, label %7565, label %7762

7565:                                             ; preds = %7528
  %7566 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7566, ptr %48, align 4, !tbaa !9
  %7567 = load ptr, ptr %5, align 8, !tbaa !5
  %7568 = getelementptr inbounds %struct.w2c_hermes, ptr %7567, i32 0, i32 6
  %7569 = load i32, ptr %48, align 4, !tbaa !9
  %7570 = zext i32 %7569 to i64
  %7571 = add i64 %7570, 4
  %7572 = call i32 @i32_load(ptr noundef %7568, i64 noundef %7571)
  store i32 %7572, ptr %48, align 4, !tbaa !9
  %7573 = load ptr, ptr %5, align 8, !tbaa !5
  %7574 = getelementptr inbounds %struct.w2c_hermes, ptr %7573, i32 0, i32 6
  %7575 = load i32, ptr %48, align 4, !tbaa !9
  %7576 = zext i32 %7575 to i64
  %7577 = add i64 %7576, 28
  %7578 = call i32 @i32_load(ptr noundef %7574, i64 noundef %7577)
  store i32 %7578, ptr %48, align 4, !tbaa !9
  %7579 = load ptr, ptr %5, align 8, !tbaa !5
  %7580 = getelementptr inbounds %struct.w2c_hermes, ptr %7579, i32 0, i32 6
  %7581 = load i32, ptr %48, align 4, !tbaa !9
  %7582 = zext i32 %7581 to i64
  %7583 = add i64 %7582, 72
  %7584 = call i32 @i32_load(ptr noundef %7580, i64 noundef %7583)
  store i32 %7584, ptr %48, align 4, !tbaa !9
  %7585 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7585, ptr %8, align 4, !tbaa !9
  %7586 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7586, ptr %48, align 4, !tbaa !9
  %7587 = load ptr, ptr %5, align 8, !tbaa !5
  %7588 = getelementptr inbounds %struct.w2c_hermes, ptr %7587, i32 0, i32 6
  %7589 = load i32, ptr %48, align 4, !tbaa !9
  %7590 = zext i32 %7589 to i64
  %7591 = add i64 %7590, 16
  %7592 = call i64 @i64_load(ptr noundef %7588, i64 noundef %7591)
  store i64 %7592, ptr %58, align 8, !tbaa !11
  %7593 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %7593, ptr %31, align 8, !tbaa !11
  %7594 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7594, ptr %48, align 4, !tbaa !9
  store i32 770, ptr %49, align 4, !tbaa !9
  %7595 = load ptr, ptr %5, align 8, !tbaa !5
  %7596 = getelementptr inbounds %struct.w2c_hermes, ptr %7595, i32 0, i32 6
  %7597 = load i32, ptr %48, align 4, !tbaa !9
  %7598 = zext i32 %7597 to i64
  %7599 = add i64 %7598, 184
  %7600 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %7596, i64 noundef %7599, i32 noundef %7600)
  %7601 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7601, ptr %48, align 4, !tbaa !9
  store i32 57782, ptr %49, align 4, !tbaa !9
  %7602 = load ptr, ptr %5, align 8, !tbaa !5
  %7603 = getelementptr inbounds %struct.w2c_hermes, ptr %7602, i32 0, i32 6
  %7604 = load i32, ptr %48, align 4, !tbaa !9
  %7605 = zext i32 %7604 to i64
  %7606 = add i64 %7605, 180
  %7607 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7603, i64 noundef %7606, i32 noundef %7607)
  %7608 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7608, ptr %48, align 4, !tbaa !9
  store i32 1283, ptr %49, align 4, !tbaa !9
  %7609 = load ptr, ptr %5, align 8, !tbaa !5
  %7610 = getelementptr inbounds %struct.w2c_hermes, ptr %7609, i32 0, i32 6
  %7611 = load i32, ptr %48, align 4, !tbaa !9
  %7612 = zext i32 %7611 to i64
  %7613 = add i64 %7612, 152
  %7614 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %7610, i64 noundef %7613, i32 noundef %7614)
  %7615 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7615, ptr %48, align 4, !tbaa !9
  store i32 61497, ptr %49, align 4, !tbaa !9
  %7616 = load ptr, ptr %5, align 8, !tbaa !5
  %7617 = getelementptr inbounds %struct.w2c_hermes, ptr %7616, i32 0, i32 6
  %7618 = load i32, ptr %48, align 4, !tbaa !9
  %7619 = zext i32 %7618 to i64
  %7620 = add i64 %7619, 144
  %7621 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7617, i64 noundef %7620, i32 noundef %7621)
  %7622 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7622, ptr %48, align 4, !tbaa !9
  %7623 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %7623, ptr %59, align 8, !tbaa !11
  %7624 = load ptr, ptr %5, align 8, !tbaa !5
  %7625 = getelementptr inbounds %struct.w2c_hermes, ptr %7624, i32 0, i32 6
  %7626 = load i32, ptr %48, align 4, !tbaa !9
  %7627 = zext i32 %7626 to i64
  %7628 = add i64 %7627, 80
  %7629 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7625, i64 noundef %7628, i64 noundef %7629)
  %7630 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7630, ptr %48, align 4, !tbaa !9
  %7631 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7631, ptr %49, align 4, !tbaa !9
  store i32 144, ptr %50, align 4, !tbaa !9
  %7632 = load i32, ptr %50, align 4, !tbaa !9
  %7633 = load i32, ptr %49, align 4, !tbaa !9
  %7634 = add i32 %7633, %7632
  store i32 %7634, ptr %49, align 4, !tbaa !9
  %7635 = load ptr, ptr %5, align 8, !tbaa !5
  %7636 = getelementptr inbounds %struct.w2c_hermes, ptr %7635, i32 0, i32 6
  %7637 = load i32, ptr %48, align 4, !tbaa !9
  %7638 = zext i32 %7637 to i64
  %7639 = add i64 %7638, 176
  %7640 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7636, i64 noundef %7639, i32 noundef %7640)
  %7641 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7641, ptr %48, align 4, !tbaa !9
  %7642 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7642, ptr %49, align 4, !tbaa !9
  store i32 208, ptr %50, align 4, !tbaa !9
  %7643 = load i32, ptr %50, align 4, !tbaa !9
  %7644 = load i32, ptr %49, align 4, !tbaa !9
  %7645 = add i32 %7644, %7643
  store i32 %7645, ptr %49, align 4, !tbaa !9
  %7646 = load ptr, ptr %5, align 8, !tbaa !5
  %7647 = getelementptr inbounds %struct.w2c_hermes, ptr %7646, i32 0, i32 6
  %7648 = load i32, ptr %48, align 4, !tbaa !9
  %7649 = zext i32 %7648 to i64
  %7650 = add i64 %7649, 148
  %7651 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7647, i64 noundef %7650, i32 noundef %7651)
  %7652 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7652, ptr %48, align 4, !tbaa !9
  %7653 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %7653, ptr %59, align 8, !tbaa !11
  %7654 = load ptr, ptr %5, align 8, !tbaa !5
  %7655 = getelementptr inbounds %struct.w2c_hermes, ptr %7654, i32 0, i32 6
  %7656 = load i32, ptr %48, align 4, !tbaa !9
  %7657 = zext i32 %7656 to i64
  %7658 = add i64 %7657, 312
  %7659 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7655, i64 noundef %7658, i64 noundef %7659)
  %7660 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7660, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %7661 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %7661, ptr %60, align 8, !tbaa !11
  %7662 = load i64, ptr %60, align 8, !tbaa !11
  %7663 = trunc i64 %7662 to i32
  store i32 %7663, ptr %50, align 4, !tbaa !9
  %7664 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7664, ptr %51, align 4, !tbaa !9
  store i32 80, ptr %52, align 4, !tbaa !9
  %7665 = load i32, ptr %52, align 4, !tbaa !9
  %7666 = load i32, ptr %51, align 4, !tbaa !9
  %7667 = add i32 %7666, %7665
  store i32 %7667, ptr %51, align 4, !tbaa !9
  %7668 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7668, ptr %52, align 4, !tbaa !9
  store i32 176, ptr %53, align 4, !tbaa !9
  %7669 = load i32, ptr %53, align 4, !tbaa !9
  %7670 = load i32, ptr %52, align 4, !tbaa !9
  %7671 = add i32 %7670, %7669
  store i32 %7671, ptr %52, align 4, !tbaa !9
  %7672 = load i32, ptr %52, align 4, !tbaa !9
  store i32 %7672, ptr %8, align 4, !tbaa !9
  store i32 4, ptr %53, align 4, !tbaa !9
  store i32 0, ptr %54, align 4, !tbaa !9
  %7673 = load ptr, ptr %5, align 8, !tbaa !5
  %7674 = load i32, ptr %48, align 4, !tbaa !9
  %7675 = load i32, ptr %49, align 4, !tbaa !9
  %7676 = load i32, ptr %50, align 4, !tbaa !9
  %7677 = load i32, ptr %51, align 4, !tbaa !9
  %7678 = load i32, ptr %52, align 4, !tbaa !9
  %7679 = load i32, ptr %53, align 4, !tbaa !9
  %7680 = load i32, ptr %54, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3AWarning0x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %7673, i32 noundef %7674, i32 noundef %7675, i32 noundef %7676, i32 noundef %7677, i32 noundef %7678, i32 noundef %7679, i32 noundef %7680)
  %7681 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7681, ptr %48, align 4, !tbaa !9
  %7682 = load ptr, ptr %5, align 8, !tbaa !5
  %7683 = getelementptr inbounds %struct.w2c_hermes, ptr %7682, i32 0, i32 6
  %7684 = load i32, ptr %48, align 4, !tbaa !9
  %7685 = zext i32 %7684 to i64
  %7686 = add i64 %7685, 4
  %7687 = call i32 @i32_load(ptr noundef %7683, i64 noundef %7686)
  store i32 %7687, ptr %48, align 4, !tbaa !9
  %7688 = load ptr, ptr %5, align 8, !tbaa !5
  %7689 = getelementptr inbounds %struct.w2c_hermes, ptr %7688, i32 0, i32 6
  %7690 = load i32, ptr %48, align 4, !tbaa !9
  %7691 = zext i32 %7690 to i64
  %7692 = add i64 %7691, 28
  %7693 = call i32 @i32_load(ptr noundef %7689, i64 noundef %7692)
  store i32 %7693, ptr %48, align 4, !tbaa !9
  %7694 = load ptr, ptr %5, align 8, !tbaa !5
  %7695 = getelementptr inbounds %struct.w2c_hermes, ptr %7694, i32 0, i32 6
  %7696 = load i32, ptr %48, align 4, !tbaa !9
  %7697 = zext i32 %7696 to i64
  %7698 = add i64 %7697, 72
  %7699 = call i32 @i32_load(ptr noundef %7695, i64 noundef %7698)
  store i32 %7699, ptr %48, align 4, !tbaa !9
  %7700 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7700, ptr %12, align 4, !tbaa !9
  %7701 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7701, ptr %48, align 4, !tbaa !9
  %7702 = load ptr, ptr %5, align 8, !tbaa !5
  %7703 = getelementptr inbounds %struct.w2c_hermes, ptr %7702, i32 0, i32 6
  %7704 = load i32, ptr %48, align 4, !tbaa !9
  %7705 = zext i32 %7704 to i64
  %7706 = add i64 %7705, 168
  %7707 = call i32 @i32_load(ptr noundef %7703, i64 noundef %7706)
  store i32 %7707, ptr %48, align 4, !tbaa !9
  %7708 = load ptr, ptr %5, align 8, !tbaa !5
  %7709 = getelementptr inbounds %struct.w2c_hermes, ptr %7708, i32 0, i32 6
  %7710 = load i32, ptr %48, align 4, !tbaa !9
  %7711 = zext i32 %7710 to i64
  %7712 = call i32 @i32_load(ptr noundef %7709, i64 noundef %7711)
  store i32 %7712, ptr %48, align 4, !tbaa !9
  %7713 = load ptr, ptr %5, align 8, !tbaa !5
  %7714 = getelementptr inbounds %struct.w2c_hermes, ptr %7713, i32 0, i32 6
  %7715 = load i32, ptr %48, align 4, !tbaa !9
  %7716 = zext i32 %7715 to i64
  %7717 = add i64 %7716, 4
  %7718 = call i64 @i64_load(ptr noundef %7714, i64 noundef %7717)
  store i64 %7718, ptr %58, align 8, !tbaa !11
  %7719 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %7719, ptr %31, align 8, !tbaa !11
  %7720 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7720, ptr %48, align 4, !tbaa !9
  store i32 58340, ptr %49, align 4, !tbaa !9
  %7721 = load ptr, ptr %5, align 8, !tbaa !5
  %7722 = getelementptr inbounds %struct.w2c_hermes, ptr %7721, i32 0, i32 6
  %7723 = load i32, ptr %48, align 4, !tbaa !9
  %7724 = zext i32 %7723 to i64
  %7725 = add i64 %7724, 176
  %7726 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7722, i64 noundef %7725, i32 noundef %7726)
  %7727 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7727, ptr %48, align 4, !tbaa !9
  store i32 259, ptr %49, align 4, !tbaa !9
  %7728 = load ptr, ptr %5, align 8, !tbaa !5
  %7729 = getelementptr inbounds %struct.w2c_hermes, ptr %7728, i32 0, i32 6
  %7730 = load i32, ptr %48, align 4, !tbaa !9
  %7731 = zext i32 %7730 to i64
  %7732 = add i64 %7731, 184
  %7733 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %7729, i64 noundef %7732, i32 noundef %7733)
  %7734 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7734, ptr %48, align 4, !tbaa !9
  %7735 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %7735, ptr %59, align 8, !tbaa !11
  %7736 = load ptr, ptr %5, align 8, !tbaa !5
  %7737 = getelementptr inbounds %struct.w2c_hermes, ptr %7736, i32 0, i32 6
  %7738 = load i32, ptr %48, align 4, !tbaa !9
  %7739 = zext i32 %7738 to i64
  %7740 = add i64 %7739, 72
  %7741 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7737, i64 noundef %7740, i64 noundef %7741)
  %7742 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7742, ptr %48, align 4, !tbaa !9
  %7743 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %7743, ptr %59, align 8, !tbaa !11
  %7744 = load ptr, ptr %5, align 8, !tbaa !5
  %7745 = getelementptr inbounds %struct.w2c_hermes, ptr %7744, i32 0, i32 6
  %7746 = load i32, ptr %48, align 4, !tbaa !9
  %7747 = zext i32 %7746 to i64
  %7748 = add i64 %7747, 144
  %7749 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7745, i64 noundef %7748, i64 noundef %7749)
  %7750 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7750, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %7751 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7751, ptr %50, align 4, !tbaa !9
  store i32 72, ptr %51, align 4, !tbaa !9
  %7752 = load i32, ptr %51, align 4, !tbaa !9
  %7753 = load i32, ptr %50, align 4, !tbaa !9
  %7754 = add i32 %7753, %7752
  store i32 %7754, ptr %50, align 4, !tbaa !9
  %7755 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7755, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %7756 = load ptr, ptr %5, align 8, !tbaa !5
  %7757 = load i32, ptr %48, align 4, !tbaa !9
  %7758 = load i32, ptr %49, align 4, !tbaa !9
  %7759 = load i32, ptr %50, align 4, !tbaa !9
  %7760 = load i32, ptr %51, align 4, !tbaa !9
  %7761 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %7756, i32 noundef %7757, i32 noundef %7758, i32 noundef %7759, i32 noundef %7760, i32 noundef %7761)
  br label %7762

7762:                                             ; preds = %7565, %7528
  %7763 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7763, ptr %48, align 4, !tbaa !9
  %7764 = load ptr, ptr %5, align 8, !tbaa !5
  %7765 = getelementptr inbounds %struct.w2c_hermes, ptr %7764, i32 0, i32 6
  %7766 = load i32, ptr %48, align 4, !tbaa !9
  %7767 = zext i32 %7766 to i64
  %7768 = add i64 %7767, 203
  %7769 = call i32 @i32_load8_s(ptr noundef %7765, i64 noundef %7768)
  store i32 %7769, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %7770 = load i32, ptr %48, align 4, !tbaa !9
  %7771 = load i32, ptr %49, align 4, !tbaa !9
  %7772 = icmp sge i32 %7770, %7771
  %7773 = zext i1 %7772 to i32
  store i32 %7773, ptr %48, align 4, !tbaa !9
  %7774 = load i32, ptr %48, align 4, !tbaa !9
  %7775 = icmp ne i32 %7774, 0
  br i1 %7775, label %7776, label %7777

7776:                                             ; preds = %7762
  br label %7787

7777:                                             ; preds = %7762
  %7778 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7778, ptr %48, align 4, !tbaa !9
  %7779 = load ptr, ptr %5, align 8, !tbaa !5
  %7780 = getelementptr inbounds %struct.w2c_hermes, ptr %7779, i32 0, i32 6
  %7781 = load i32, ptr %48, align 4, !tbaa !9
  %7782 = zext i32 %7781 to i64
  %7783 = add i64 %7782, 192
  %7784 = call i32 @i32_load(ptr noundef %7780, i64 noundef %7783)
  store i32 %7784, ptr %48, align 4, !tbaa !9
  %7785 = load ptr, ptr %5, align 8, !tbaa !5
  %7786 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %7785, i32 noundef %7786)
  br label %7787

7787:                                             ; preds = %7777, %7776, %6796
  %7788 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7788, ptr %48, align 4, !tbaa !9
  br label %7789

7789:                                             ; preds = %7787, %6795
  %7790 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7790, ptr %14, align 4, !tbaa !9
  br label %7791

7791:                                             ; preds = %7789, %6468, %6450
  %7792 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7792, ptr %48, align 4, !tbaa !9
  %7793 = load ptr, ptr %5, align 8, !tbaa !5
  %7794 = getelementptr inbounds %struct.w2c_hermes, ptr %7793, i32 0, i32 6
  %7795 = load i32, ptr %48, align 4, !tbaa !9
  %7796 = zext i32 %7795 to i64
  %7797 = add i64 %7796, 4
  %7798 = call i32 @i32_load(ptr noundef %7794, i64 noundef %7797)
  store i32 %7798, ptr %48, align 4, !tbaa !9
  %7799 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7799, ptr %9, align 4, !tbaa !9
  %7800 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %7800, ptr %49, align 4, !tbaa !9
  %7801 = load i32, ptr %48, align 4, !tbaa !9
  %7802 = load i32, ptr %49, align 4, !tbaa !9
  %7803 = icmp ne i32 %7801, %7802
  %7804 = zext i1 %7803 to i32
  store i32 %7804, ptr %48, align 4, !tbaa !9
  %7805 = load i32, ptr %48, align 4, !tbaa !9
  %7806 = icmp ne i32 %7805, 0
  br i1 %7806, label %7807, label %7808

7807:                                             ; preds = %7791
  br label %6436

7808:                                             ; preds = %7791
  %7809 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7809, ptr %48, align 4, !tbaa !9
  %7810 = load i32, ptr %48, align 4, !tbaa !9
  %7811 = icmp ne i32 %7810, 0
  %7812 = xor i1 %7811, true
  %7813 = zext i1 %7812 to i32
  store i32 %7813, ptr %48, align 4, !tbaa !9
  %7814 = load i32, ptr %48, align 4, !tbaa !9
  %7815 = icmp ne i32 %7814, 0
  br i1 %7815, label %7816, label %7818

7816:                                             ; preds = %7808
  store i32 0, ptr %48, align 4, !tbaa !9
  %7817 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7817, ptr %14, align 4, !tbaa !9
  br label %7873

7818:                                             ; preds = %7808
  %7819 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7819, ptr %48, align 4, !tbaa !9
  %7820 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7820, ptr %49, align 4, !tbaa !9
  %7821 = load ptr, ptr %5, align 8, !tbaa !5
  %7822 = getelementptr inbounds %struct.w2c_hermes, ptr %7821, i32 0, i32 6
  %7823 = load i32, ptr %49, align 4, !tbaa !9
  %7824 = zext i32 %7823 to i64
  %7825 = add i64 %7824, 32
  %7826 = call i32 @i32_load(ptr noundef %7822, i64 noundef %7825)
  store i32 %7826, ptr %49, align 4, !tbaa !9
  %7827 = load i32, ptr %48, align 4, !tbaa !9
  %7828 = load i32, ptr %49, align 4, !tbaa !9
  %7829 = icmp ne i32 %7827, %7828
  %7830 = zext i1 %7829 to i32
  store i32 %7830, ptr %48, align 4, !tbaa !9
  %7831 = load i32, ptr %48, align 4, !tbaa !9
  %7832 = icmp ne i32 %7831, 0
  br i1 %7832, label %7833, label %7858

7833:                                             ; preds = %7818
  %7834 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7834, ptr %48, align 4, !tbaa !9
  %7835 = load ptr, ptr %5, align 8, !tbaa !5
  %7836 = getelementptr inbounds %struct.w2c_hermes, ptr %7835, i32 0, i32 6
  %7837 = load i32, ptr %48, align 4, !tbaa !9
  %7838 = zext i32 %7837 to i64
  %7839 = add i64 %7838, 32
  %7840 = call i32 @i32_load(ptr noundef %7836, i64 noundef %7839)
  store i32 %7840, ptr %48, align 4, !tbaa !9
  %7841 = load ptr, ptr %5, align 8, !tbaa !5
  %7842 = getelementptr inbounds %struct.w2c_hermes, ptr %7841, i32 0, i32 6
  %7843 = load i32, ptr %48, align 4, !tbaa !9
  %7844 = zext i32 %7843 to i64
  %7845 = add i64 %7844, 8
  %7846 = call i32 @i32_load(ptr noundef %7842, i64 noundef %7845)
  store i32 %7846, ptr %48, align 4, !tbaa !9
  store i32 30, ptr %49, align 4, !tbaa !9
  %7847 = load i32, ptr %49, align 4, !tbaa !9
  %7848 = load i32, ptr %48, align 4, !tbaa !9
  %7849 = sub i32 %7848, %7847
  store i32 %7849, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %7850 = load i32, ptr %48, align 4, !tbaa !9
  %7851 = load i32, ptr %49, align 4, !tbaa !9
  %7852 = icmp uge i32 %7850, %7851
  %7853 = zext i1 %7852 to i32
  store i32 %7853, ptr %48, align 4, !tbaa !9
  %7854 = load i32, ptr %48, align 4, !tbaa !9
  %7855 = icmp ne i32 %7854, 0
  br i1 %7855, label %7856, label %7857

7856:                                             ; preds = %7833
  br label %7873

7857:                                             ; preds = %7833
  br label %7858

7858:                                             ; preds = %7857, %7818
  %7859 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7859, ptr %48, align 4, !tbaa !9
  %7860 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7860, ptr %49, align 4, !tbaa !9
  %7861 = load ptr, ptr %5, align 8, !tbaa !5
  %7862 = getelementptr inbounds %struct.w2c_hermes, ptr %7861, i32 0, i32 6
  %7863 = load i32, ptr %49, align 4, !tbaa !9
  %7864 = zext i32 %7863 to i64
  %7865 = add i64 %7864, 32
  %7866 = call i32 @i32_load(ptr noundef %7862, i64 noundef %7865)
  store i32 %7866, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %7867 = load ptr, ptr %5, align 8, !tbaa !5
  %7868 = load i32, ptr %48, align 4, !tbaa !9
  %7869 = load i32, ptr %49, align 4, !tbaa !9
  %7870 = load i32, ptr %50, align 4, !tbaa !9
  %7871 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %7867, i32 noundef %7868, i32 noundef %7869, i32 noundef %7870)
  store i32 %7871, ptr %48, align 4, !tbaa !9
  %7872 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7872, ptr %25, align 4, !tbaa !9
  br label %7873

7873:                                             ; preds = %7858, %7856, %7816, %6434
  %7874 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7874, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %7875 = load i32, ptr %49, align 4, !tbaa !9
  %7876 = load i32, ptr %48, align 4, !tbaa !9
  %7877 = add i32 %7876, %7875
  store i32 %7877, ptr %48, align 4, !tbaa !9
  %7878 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7878, ptr %8, align 4, !tbaa !9
  %7879 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7879, ptr %49, align 4, !tbaa !9
  %7880 = load ptr, ptr %5, align 8, !tbaa !5
  %7881 = getelementptr inbounds %struct.w2c_hermes, ptr %7880, i32 0, i32 6
  %7882 = load i32, ptr %49, align 4, !tbaa !9
  %7883 = zext i32 %7882 to i64
  %7884 = add i64 %7883, 296
  %7885 = call i32 @i32_load(ptr noundef %7881, i64 noundef %7884)
  store i32 %7885, ptr %49, align 4, !tbaa !9
  %7886 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %7886, ptr %50, align 4, !tbaa !9
  %7887 = load i32, ptr %50, align 4, !tbaa !9
  %7888 = load i32, ptr %49, align 4, !tbaa !9
  %7889 = add i32 %7888, %7887
  store i32 %7889, ptr %49, align 4, !tbaa !9
  %7890 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %7890, ptr %50, align 4, !tbaa !9
  %7891 = load ptr, ptr %5, align 8, !tbaa !5
  %7892 = load i32, ptr %48, align 4, !tbaa !9
  %7893 = load i32, ptr %49, align 4, !tbaa !9
  %7894 = load i32, ptr %50, align 4, !tbaa !9
  %7895 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocObjectInst0x28unsigned0x20int0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %7891, i32 noundef %7892, i32 noundef %7893, i32 noundef %7894)
  store i32 %7895, ptr %48, align 4, !tbaa !9
  %7896 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7896, ptr %20, align 4, !tbaa !9
  %7897 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7897, ptr %48, align 4, !tbaa !9
  %7898 = load ptr, ptr %5, align 8, !tbaa !5
  %7899 = getelementptr inbounds %struct.w2c_hermes, ptr %7898, i32 0, i32 6
  %7900 = load i32, ptr %48, align 4, !tbaa !9
  %7901 = zext i32 %7900 to i64
  %7902 = add i64 %7901, 32
  %7903 = call i32 @i32_load(ptr noundef %7899, i64 noundef %7902)
  store i32 %7903, ptr %48, align 4, !tbaa !9
  %7904 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7904, ptr %9, align 4, !tbaa !9
  %7905 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %7905, ptr %49, align 4, !tbaa !9
  %7906 = load i32, ptr %48, align 4, !tbaa !9
  %7907 = load i32, ptr %49, align 4, !tbaa !9
  %7908 = icmp eq i32 %7906, %7907
  %7909 = zext i1 %7908 to i32
  store i32 %7909, ptr %48, align 4, !tbaa !9
  %7910 = load i32, ptr %48, align 4, !tbaa !9
  %7911 = icmp ne i32 %7910, 0
  br i1 %7911, label %7912, label %7913

7912:                                             ; preds = %7873
  br label %9661

7913:                                             ; preds = %7873
  %7914 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7914, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %7915 = load i32, ptr %49, align 4, !tbaa !9
  %7916 = load i32, ptr %48, align 4, !tbaa !9
  %7917 = add i32 %7916, %7915
  store i32 %7917, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %7918 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7918, ptr %50, align 4, !tbaa !9
  %7919 = load i32, ptr %50, align 4, !tbaa !9
  %7920 = icmp ne i32 %7919, 0
  br i1 %7920, label %7921, label %7923

7921:                                             ; preds = %7913
  %7922 = load i32, ptr %48, align 4, !tbaa !9
  br label %7925

7923:                                             ; preds = %7913
  %7924 = load i32, ptr %49, align 4, !tbaa !9
  br label %7925

7925:                                             ; preds = %7923, %7921
  %7926 = phi i32 [ %7922, %7921 ], [ %7924, %7923 ]
  store i32 %7926, ptr %48, align 4, !tbaa !9
  %7927 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7927, ptr %7, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %7928 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7928, ptr %15, align 4, !tbaa !9
  br label %7929

7929:                                             ; preds = %9657, %7925
  %7930 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7930, ptr %48, align 4, !tbaa !9
  %7931 = load i32, ptr %48, align 4, !tbaa !9
  %7932 = icmp ne i32 %7931, 0
  %7933 = xor i1 %7932, true
  %7934 = zext i1 %7933 to i32
  store i32 %7934, ptr %48, align 4, !tbaa !9
  %7935 = load i32, ptr %48, align 4, !tbaa !9
  %7936 = icmp ne i32 %7935, 0
  br i1 %7936, label %7937, label %7938

7937:                                             ; preds = %7929
  br label %8027

7938:                                             ; preds = %7929
  %7939 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7939, ptr %48, align 4, !tbaa !9
  %7940 = load ptr, ptr %5, align 8, !tbaa !5
  %7941 = getelementptr inbounds %struct.w2c_hermes, ptr %7940, i32 0, i32 6
  %7942 = load i32, ptr %48, align 4, !tbaa !9
  %7943 = zext i32 %7942 to i64
  %7944 = add i64 %7943, 8
  %7945 = call i32 @i32_load(ptr noundef %7941, i64 noundef %7944)
  store i32 %7945, ptr %48, align 4, !tbaa !9
  store i32 41, ptr %49, align 4, !tbaa !9
  %7946 = load i32, ptr %48, align 4, !tbaa !9
  %7947 = load i32, ptr %49, align 4, !tbaa !9
  %7948 = icmp ne i32 %7946, %7947
  %7949 = zext i1 %7948 to i32
  store i32 %7949, ptr %48, align 4, !tbaa !9
  %7950 = load i32, ptr %48, align 4, !tbaa !9
  %7951 = icmp ne i32 %7950, 0
  br i1 %7951, label %7952, label %7953

7952:                                             ; preds = %7938
  br label %8027

7953:                                             ; preds = %7938
  %7954 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7954, ptr %48, align 4, !tbaa !9
  %7955 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7955, ptr %49, align 4, !tbaa !9
  %7956 = load ptr, ptr %5, align 8, !tbaa !5
  %7957 = getelementptr inbounds %struct.w2c_hermes, ptr %7956, i32 0, i32 6
  %7958 = load i32, ptr %48, align 4, !tbaa !9
  %7959 = zext i32 %7958 to i64
  %7960 = add i64 %7959, 192
  %7961 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7957, i64 noundef %7960, i32 noundef %7961)
  %7962 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7962, ptr %48, align 4, !tbaa !9
  %7963 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7963, ptr %49, align 4, !tbaa !9
  %7964 = load ptr, ptr %5, align 8, !tbaa !5
  %7965 = getelementptr inbounds %struct.w2c_hermes, ptr %7964, i32 0, i32 6
  %7966 = load i32, ptr %49, align 4, !tbaa !9
  %7967 = zext i32 %7966 to i64
  %7968 = add i64 %7967, 28
  %7969 = call i32 @i32_load(ptr noundef %7965, i64 noundef %7968)
  store i32 %7969, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %7970 = load ptr, ptr %5, align 8, !tbaa !5
  %7971 = load i32, ptr %48, align 4, !tbaa !9
  %7972 = load i32, ptr %49, align 4, !tbaa !9
  %7973 = load i32, ptr %50, align 4, !tbaa !9
  %7974 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %7970, i32 noundef %7971, i32 noundef %7972, i32 noundef %7973)
  store i32 %7974, ptr %48, align 4, !tbaa !9
  %7975 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %7975, ptr %12, align 4, !tbaa !9
  %7976 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7976, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %7977 = load ptr, ptr %5, align 8, !tbaa !5
  %7978 = getelementptr inbounds %struct.w2c_hermes, ptr %7977, i32 0, i32 6
  %7979 = load i32, ptr %48, align 4, !tbaa !9
  %7980 = zext i32 %7979 to i64
  %7981 = add i64 %7980, 140
  %7982 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7978, i64 noundef %7981, i32 noundef %7982)
  %7983 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7983, ptr %48, align 4, !tbaa !9
  %7984 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7984, ptr %49, align 4, !tbaa !9
  %7985 = load ptr, ptr %5, align 8, !tbaa !5
  %7986 = getelementptr inbounds %struct.w2c_hermes, ptr %7985, i32 0, i32 6
  %7987 = load i32, ptr %48, align 4, !tbaa !9
  %7988 = zext i32 %7987 to i64
  %7989 = add i64 %7988, 196
  %7990 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7986, i64 noundef %7989, i32 noundef %7990)
  %7991 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7991, ptr %48, align 4, !tbaa !9
  %7992 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7992, ptr %49, align 4, !tbaa !9
  store i32 192, ptr %50, align 4, !tbaa !9
  %7993 = load i32, ptr %50, align 4, !tbaa !9
  %7994 = load i32, ptr %49, align 4, !tbaa !9
  %7995 = add i32 %7994, %7993
  store i32 %7995, ptr %49, align 4, !tbaa !9
  %7996 = load ptr, ptr %5, align 8, !tbaa !5
  %7997 = getelementptr inbounds %struct.w2c_hermes, ptr %7996, i32 0, i32 6
  %7998 = load i32, ptr %48, align 4, !tbaa !9
  %7999 = zext i32 %7998 to i64
  %8000 = add i64 %7999, 136
  %8001 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7997, i64 noundef %8000, i32 noundef %8001)
  %8002 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8002, ptr %48, align 4, !tbaa !9
  %8003 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8003, ptr %49, align 4, !tbaa !9
  %8004 = load ptr, ptr %5, align 8, !tbaa !5
  %8005 = getelementptr inbounds %struct.w2c_hermes, ptr %8004, i32 0, i32 6
  %8006 = load i32, ptr %49, align 4, !tbaa !9
  %8007 = zext i32 %8006 to i64
  %8008 = add i64 %8007, 136
  %8009 = call i64 @i64_load(ptr noundef %8005, i64 noundef %8008)
  store i64 %8009, ptr %59, align 8, !tbaa !11
  %8010 = load ptr, ptr %5, align 8, !tbaa !5
  %8011 = getelementptr inbounds %struct.w2c_hermes, ptr %8010, i32 0, i32 6
  %8012 = load i32, ptr %48, align 4, !tbaa !9
  %8013 = zext i32 %8012 to i64
  %8014 = add i64 %8013, 48
  %8015 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8011, i64 noundef %8014, i64 noundef %8015)
  %8016 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8016, ptr %48, align 4, !tbaa !9
  store i32 44, ptr %49, align 4, !tbaa !9
  %8017 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8017, ptr %50, align 4, !tbaa !9
  store i32 48, ptr %51, align 4, !tbaa !9
  %8018 = load i32, ptr %51, align 4, !tbaa !9
  %8019 = load i32, ptr %50, align 4, !tbaa !9
  %8020 = add i32 %8019, %8018
  store i32 %8020, ptr %50, align 4, !tbaa !9
  %8021 = load ptr, ptr %5, align 8, !tbaa !5
  %8022 = load i32, ptr %48, align 4, !tbaa !9
  %8023 = load i32, ptr %49, align 4, !tbaa !9
  %8024 = load i32, ptr %50, align 4, !tbaa !9
  %8025 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %8021, i32 noundef %8022, i32 noundef %8023, i32 noundef %8024)
  store i32 %8025, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %8026 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8026, ptr %15, align 4, !tbaa !9
  br label %9641

8027:                                             ; preds = %7952, %7937
  %8028 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8028, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %8029 = load ptr, ptr %5, align 8, !tbaa !5
  %8030 = getelementptr inbounds %struct.w2c_hermes, ptr %8029, i32 0, i32 6
  %8031 = load i32, ptr %48, align 4, !tbaa !9
  %8032 = zext i32 %8031 to i64
  %8033 = add i64 %8032, 224
  %8034 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8030, i64 noundef %8033, i32 noundef %8034)
  %8035 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8035, ptr %48, align 4, !tbaa !9
  %8036 = load ptr, ptr %5, align 8, !tbaa !5
  %8037 = getelementptr inbounds %struct.w2c_hermes, ptr %8036, i32 0, i32 6
  %8038 = load i32, ptr %48, align 4, !tbaa !9
  %8039 = zext i32 %8038 to i64
  %8040 = add i64 %8039, 28
  %8041 = call i32 @i32_load(ptr noundef %8037, i64 noundef %8040)
  store i32 %8041, ptr %48, align 4, !tbaa !9
  %8042 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8042, ptr %12, align 4, !tbaa !9
  %8043 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8043, ptr %48, align 4, !tbaa !9
  %8044 = load ptr, ptr %5, align 8, !tbaa !5
  %8045 = getelementptr inbounds %struct.w2c_hermes, ptr %8044, i32 0, i32 6
  %8046 = load i32, ptr %48, align 4, !tbaa !9
  %8047 = zext i32 %8046 to i64
  %8048 = add i64 %8047, 40
  %8049 = call i32 @i32_load8_u(ptr noundef %8045, i64 noundef %8048)
  store i32 %8049, ptr %48, align 4, !tbaa !9
  %8050 = load i32, ptr %48, align 4, !tbaa !9
  %8051 = icmp ne i32 %8050, 0
  br i1 %8051, label %8052, label %8177

8052:                                             ; preds = %8027
  %8053 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8053, ptr %48, align 4, !tbaa !9
  %8054 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8054, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %8055 = load ptr, ptr %5, align 8, !tbaa !5
  %8056 = load i32, ptr %48, align 4, !tbaa !9
  %8057 = load i32, ptr %49, align 4, !tbaa !9
  %8058 = load i32, ptr %50, align 4, !tbaa !9
  %8059 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %8055, i32 noundef %8056, i32 noundef %8057, i32 noundef %8058)
  store i32 %8059, ptr %48, align 4, !tbaa !9
  %8060 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8060, ptr %12, align 4, !tbaa !9
  %8061 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8061, ptr %48, align 4, !tbaa !9
  %8062 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8062, ptr %49, align 4, !tbaa !9
  %8063 = load ptr, ptr %5, align 8, !tbaa !5
  %8064 = getelementptr inbounds %struct.w2c_hermes, ptr %8063, i32 0, i32 6
  %8065 = load i32, ptr %49, align 4, !tbaa !9
  %8066 = zext i32 %8065 to i64
  %8067 = add i64 %8066, 32
  %8068 = call i32 @i32_load(ptr noundef %8064, i64 noundef %8067)
  store i32 %8068, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %8069 = load ptr, ptr %5, align 8, !tbaa !5
  %8070 = load i32, ptr %48, align 4, !tbaa !9
  %8071 = load i32, ptr %49, align 4, !tbaa !9
  %8072 = load i32, ptr %50, align 4, !tbaa !9
  %8073 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %8069, i32 noundef %8070, i32 noundef %8071, i32 noundef %8072)
  store i32 %8073, ptr %48, align 4, !tbaa !9
  %8074 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8074, ptr %13, align 4, !tbaa !9
  %8075 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8075, ptr %48, align 4, !tbaa !9
  %8076 = load ptr, ptr %5, align 8, !tbaa !5
  %8077 = getelementptr inbounds %struct.w2c_hermes, ptr %8076, i32 0, i32 6
  %8078 = load i32, ptr %48, align 4, !tbaa !9
  %8079 = zext i32 %8078 to i64
  %8080 = add i64 %8079, 36
  %8081 = call i32 @i32_load(ptr noundef %8077, i64 noundef %8080)
  store i32 %8081, ptr %48, align 4, !tbaa !9
  %8082 = load ptr, ptr %5, align 8, !tbaa !5
  %8083 = getelementptr inbounds %struct.w2c_hermes, ptr %8082, i32 0, i32 6
  %8084 = load i32, ptr %48, align 4, !tbaa !9
  %8085 = zext i32 %8084 to i64
  %8086 = call i64 @i64_load(ptr noundef %8083, i64 noundef %8085)
  store i64 %8086, ptr %58, align 8, !tbaa !11
  %8087 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %8087, ptr %31, align 8, !tbaa !11
  store i64 -4294967296, ptr %59, align 8, !tbaa !11
  %8088 = load i64, ptr %59, align 8, !tbaa !11
  %8089 = load i64, ptr %58, align 8, !tbaa !11
  %8090 = and i64 %8089, %8088
  store i64 %8090, ptr %58, align 8, !tbaa !11
  store i64 12884901888, ptr %59, align 8, !tbaa !11
  %8091 = load i64, ptr %58, align 8, !tbaa !11
  %8092 = load i64, ptr %59, align 8, !tbaa !11
  %8093 = icmp ne i64 %8091, %8092
  %8094 = zext i1 %8093 to i32
  store i32 %8094, ptr %48, align 4, !tbaa !9
  %8095 = load i32, ptr %48, align 4, !tbaa !9
  %8096 = icmp ne i32 %8095, 0
  br i1 %8096, label %8097, label %8098

8097:                                             ; preds = %8052
  br label %8166

8098:                                             ; preds = %8052
  %8099 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %8099, ptr %58, align 8, !tbaa !11
  %8100 = load i64, ptr %58, align 8, !tbaa !11
  %8101 = trunc i64 %8100 to i32
  store i32 %8101, ptr %48, align 4, !tbaa !9
  %8102 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8102, ptr %15, align 4, !tbaa !9
  store i32 29638, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %8103 = load ptr, ptr %5, align 8, !tbaa !5
  %8104 = load i32, ptr %48, align 4, !tbaa !9
  %8105 = load i32, ptr %49, align 4, !tbaa !9
  %8106 = load i32, ptr %50, align 4, !tbaa !9
  %8107 = call i32 @w2c_hermes_memcmp(ptr noundef %8103, i32 noundef %8104, i32 noundef %8105, i32 noundef %8106)
  store i32 %8107, ptr %48, align 4, !tbaa !9
  %8108 = load i32, ptr %48, align 4, !tbaa !9
  %8109 = icmp ne i32 %8108, 0
  %8110 = xor i1 %8109, true
  %8111 = zext i1 %8110 to i32
  store i32 %8111, ptr %48, align 4, !tbaa !9
  %8112 = load i32, ptr %48, align 4, !tbaa !9
  %8113 = icmp ne i32 %8112, 0
  br i1 %8113, label %8114, label %8135

8114:                                             ; preds = %8098
  store i32 1, ptr %48, align 4, !tbaa !9
  %8115 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8115, ptr %15, align 4, !tbaa !9
  %8116 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8116, ptr %48, align 4, !tbaa !9
  %8117 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8117, ptr %49, align 4, !tbaa !9
  %8118 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8118, ptr %50, align 4, !tbaa !9
  %8119 = load ptr, ptr %5, align 8, !tbaa !5
  %8120 = getelementptr inbounds %struct.w2c_hermes, ptr %8119, i32 0, i32 6
  %8121 = load i32, ptr %50, align 4, !tbaa !9
  %8122 = zext i32 %8121 to i64
  %8123 = call i32 @i32_load(ptr noundef %8120, i64 noundef %8122)
  store i32 %8123, ptr %50, align 4, !tbaa !9
  store i32 268, ptr %51, align 4, !tbaa !9
  %8124 = load i32, ptr %51, align 4, !tbaa !9
  %8125 = load i32, ptr %50, align 4, !tbaa !9
  %8126 = add i32 %8125, %8124
  store i32 %8126, ptr %50, align 4, !tbaa !9
  %8127 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8127, ptr %51, align 4, !tbaa !9
  %8128 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8128, ptr %52, align 4, !tbaa !9
  %8129 = load ptr, ptr %5, align 8, !tbaa !5
  %8130 = load i32, ptr %48, align 4, !tbaa !9
  %8131 = load i32, ptr %49, align 4, !tbaa !9
  %8132 = load i32, ptr %50, align 4, !tbaa !9
  %8133 = load i32, ptr %51, align 4, !tbaa !9
  %8134 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreGetterSetterInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %8129, i32 noundef %8130, i32 noundef %8131, i32 noundef %8132, i32 noundef %8133, i32 noundef %8134)
  br label %9641

8135:                                             ; preds = %8098
  %8136 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %8136, ptr %48, align 4, !tbaa !9
  store i32 28913, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %8137 = load ptr, ptr %5, align 8, !tbaa !5
  %8138 = load i32, ptr %48, align 4, !tbaa !9
  %8139 = load i32, ptr %49, align 4, !tbaa !9
  %8140 = load i32, ptr %50, align 4, !tbaa !9
  %8141 = call i32 @w2c_hermes_memcmp(ptr noundef %8137, i32 noundef %8138, i32 noundef %8139, i32 noundef %8140)
  store i32 %8141, ptr %48, align 4, !tbaa !9
  %8142 = load i32, ptr %48, align 4, !tbaa !9
  %8143 = icmp ne i32 %8142, 0
  br i1 %8143, label %8144, label %8145

8144:                                             ; preds = %8135
  br label %8166

8145:                                             ; preds = %8135
  store i32 1, ptr %48, align 4, !tbaa !9
  %8146 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8146, ptr %15, align 4, !tbaa !9
  %8147 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8147, ptr %48, align 4, !tbaa !9
  %8148 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8148, ptr %49, align 4, !tbaa !9
  %8149 = load ptr, ptr %5, align 8, !tbaa !5
  %8150 = getelementptr inbounds %struct.w2c_hermes, ptr %8149, i32 0, i32 6
  %8151 = load i32, ptr %49, align 4, !tbaa !9
  %8152 = zext i32 %8151 to i64
  %8153 = call i32 @i32_load(ptr noundef %8150, i64 noundef %8152)
  store i32 %8153, ptr %49, align 4, !tbaa !9
  store i32 268, ptr %50, align 4, !tbaa !9
  %8154 = load i32, ptr %50, align 4, !tbaa !9
  %8155 = load i32, ptr %49, align 4, !tbaa !9
  %8156 = add i32 %8155, %8154
  store i32 %8156, ptr %49, align 4, !tbaa !9
  %8157 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8157, ptr %50, align 4, !tbaa !9
  %8158 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8158, ptr %51, align 4, !tbaa !9
  %8159 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8159, ptr %52, align 4, !tbaa !9
  %8160 = load ptr, ptr %5, align 8, !tbaa !5
  %8161 = load i32, ptr %48, align 4, !tbaa !9
  %8162 = load i32, ptr %49, align 4, !tbaa !9
  %8163 = load i32, ptr %50, align 4, !tbaa !9
  %8164 = load i32, ptr %51, align 4, !tbaa !9
  %8165 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreGetterSetterInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %8160, i32 noundef %8161, i32 noundef %8162, i32 noundef %8163, i32 noundef %8164, i32 noundef %8165)
  br label %9641

8166:                                             ; preds = %8144, %8097
  store i32 1, ptr %48, align 4, !tbaa !9
  %8167 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8167, ptr %15, align 4, !tbaa !9
  %8168 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8168, ptr %48, align 4, !tbaa !9
  %8169 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8169, ptr %49, align 4, !tbaa !9
  %8170 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8170, ptr %50, align 4, !tbaa !9
  %8171 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8171, ptr %51, align 4, !tbaa !9
  %8172 = load ptr, ptr %5, align 8, !tbaa !5
  %8173 = load i32, ptr %48, align 4, !tbaa !9
  %8174 = load i32, ptr %49, align 4, !tbaa !9
  %8175 = load i32, ptr %50, align 4, !tbaa !9
  %8176 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %8172, i32 noundef %8173, i32 noundef %8174, i32 noundef %8175, i32 noundef %8176)
  br label %9641

8177:                                             ; preds = %8027
  %8178 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8178, ptr %48, align 4, !tbaa !9
  %8179 = load ptr, ptr %5, align 8, !tbaa !5
  %8180 = getelementptr inbounds %struct.w2c_hermes, ptr %8179, i32 0, i32 6
  %8181 = load i32, ptr %48, align 4, !tbaa !9
  %8182 = zext i32 %8181 to i64
  %8183 = add i64 %8182, 8
  %8184 = call i32 @i32_load(ptr noundef %8180, i64 noundef %8183)
  store i32 %8184, ptr %48, align 4, !tbaa !9
  %8185 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8185, ptr %13, align 4, !tbaa !9
  %8186 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8186, ptr %48, align 4, !tbaa !9
  %8187 = load i32, ptr %48, align 4, !tbaa !9
  %8188 = icmp ne i32 %8187, 0
  %8189 = xor i1 %8188, true
  %8190 = zext i1 %8189 to i32
  store i32 %8190, ptr %48, align 4, !tbaa !9
  %8191 = load i32, ptr %48, align 4, !tbaa !9
  %8192 = icmp ne i32 %8191, 0
  br i1 %8192, label %8193, label %8194

8193:                                             ; preds = %8177
  br label %8226

8194:                                             ; preds = %8177
  %8195 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8195, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %8196 = load i32, ptr %48, align 4, !tbaa !9
  %8197 = load i32, ptr %49, align 4, !tbaa !9
  %8198 = icmp ne i32 %8196, %8197
  %8199 = zext i1 %8198 to i32
  store i32 %8199, ptr %48, align 4, !tbaa !9
  %8200 = load i32, ptr %48, align 4, !tbaa !9
  %8201 = icmp ne i32 %8200, 0
  br i1 %8201, label %8202, label %8203

8202:                                             ; preds = %8194
  br label %8226

8203:                                             ; preds = %8194
  %8204 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8204, ptr %48, align 4, !tbaa !9
  %8205 = load ptr, ptr %5, align 8, !tbaa !5
  %8206 = getelementptr inbounds %struct.w2c_hermes, ptr %8205, i32 0, i32 6
  %8207 = load i32, ptr %48, align 4, !tbaa !9
  %8208 = zext i32 %8207 to i64
  %8209 = add i64 %8208, 28
  %8210 = call i32 @i32_load(ptr noundef %8206, i64 noundef %8209)
  store i32 %8210, ptr %48, align 4, !tbaa !9
  %8211 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8211, ptr %11, align 4, !tbaa !9
  %8212 = load ptr, ptr %5, align 8, !tbaa !5
  %8213 = getelementptr inbounds %struct.w2c_hermes, ptr %8212, i32 0, i32 6
  %8214 = load i32, ptr %48, align 4, !tbaa !9
  %8215 = zext i32 %8214 to i64
  %8216 = call i32 @i32_load(ptr noundef %8213, i64 noundef %8215)
  store i32 %8216, ptr %48, align 4, !tbaa !9
  %8217 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8217, ptr %16, align 4, !tbaa !9
  %8218 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8218, ptr %48, align 4, !tbaa !9
  %8219 = load ptr, ptr %5, align 8, !tbaa !5
  %8220 = getelementptr inbounds %struct.w2c_hermes, ptr %8219, i32 0, i32 6
  %8221 = load i32, ptr %48, align 4, !tbaa !9
  %8222 = zext i32 %8221 to i64
  %8223 = add i64 %8222, 4
  %8224 = call i32 @i32_load(ptr noundef %8220, i64 noundef %8223)
  store i32 %8224, ptr %48, align 4, !tbaa !9
  %8225 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8225, ptr %11, align 4, !tbaa !9
  br label %8383

8226:                                             ; preds = %8202, %8193
  %8227 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8227, ptr %48, align 4, !tbaa !9
  %8228 = load i32, ptr %48, align 4, !tbaa !9
  %8229 = icmp ne i32 %8228, 0
  %8230 = xor i1 %8229, true
  %8231 = zext i1 %8230 to i32
  store i32 %8231, ptr %48, align 4, !tbaa !9
  %8232 = load i32, ptr %48, align 4, !tbaa !9
  %8233 = icmp ne i32 %8232, 0
  br i1 %8233, label %8234, label %8235

8234:                                             ; preds = %8226
  br label %8267

8235:                                             ; preds = %8226
  %8236 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8236, ptr %48, align 4, !tbaa !9
  store i32 62, ptr %49, align 4, !tbaa !9
  %8237 = load i32, ptr %48, align 4, !tbaa !9
  %8238 = load i32, ptr %49, align 4, !tbaa !9
  %8239 = icmp ne i32 %8237, %8238
  %8240 = zext i1 %8239 to i32
  store i32 %8240, ptr %48, align 4, !tbaa !9
  %8241 = load i32, ptr %48, align 4, !tbaa !9
  %8242 = icmp ne i32 %8241, 0
  br i1 %8242, label %8243, label %8244

8243:                                             ; preds = %8235
  br label %8267

8244:                                             ; preds = %8235
  %8245 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8245, ptr %48, align 4, !tbaa !9
  %8246 = load ptr, ptr %5, align 8, !tbaa !5
  %8247 = getelementptr inbounds %struct.w2c_hermes, ptr %8246, i32 0, i32 6
  %8248 = load i32, ptr %48, align 4, !tbaa !9
  %8249 = zext i32 %8248 to i64
  %8250 = add i64 %8249, 28
  %8251 = call i32 @i32_load(ptr noundef %8247, i64 noundef %8250)
  store i32 %8251, ptr %48, align 4, !tbaa !9
  %8252 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8252, ptr %11, align 4, !tbaa !9
  %8253 = load ptr, ptr %5, align 8, !tbaa !5
  %8254 = getelementptr inbounds %struct.w2c_hermes, ptr %8253, i32 0, i32 6
  %8255 = load i32, ptr %48, align 4, !tbaa !9
  %8256 = zext i32 %8255 to i64
  %8257 = call i32 @i32_load(ptr noundef %8254, i64 noundef %8256)
  store i32 %8257, ptr %48, align 4, !tbaa !9
  %8258 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8258, ptr %16, align 4, !tbaa !9
  %8259 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8259, ptr %48, align 4, !tbaa !9
  %8260 = load ptr, ptr %5, align 8, !tbaa !5
  %8261 = getelementptr inbounds %struct.w2c_hermes, ptr %8260, i32 0, i32 6
  %8262 = load i32, ptr %48, align 4, !tbaa !9
  %8263 = zext i32 %8262 to i64
  %8264 = add i64 %8263, 4
  %8265 = call i32 @i32_load(ptr noundef %8261, i64 noundef %8264)
  store i32 %8265, ptr %48, align 4, !tbaa !9
  %8266 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8266, ptr %11, align 4, !tbaa !9
  br label %8383

8267:                                             ; preds = %8243, %8234
  %8268 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8268, ptr %48, align 4, !tbaa !9
  %8269 = load i32, ptr %48, align 4, !tbaa !9
  %8270 = icmp ne i32 %8269, 0
  %8271 = xor i1 %8270, true
  %8272 = zext i1 %8271 to i32
  store i32 %8272, ptr %48, align 4, !tbaa !9
  %8273 = load i32, ptr %48, align 4, !tbaa !9
  %8274 = icmp ne i32 %8273, 0
  br i1 %8274, label %8275, label %8276

8275:                                             ; preds = %8267
  br label %8383

8276:                                             ; preds = %8267
  %8277 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8277, ptr %48, align 4, !tbaa !9
  store i32 33, ptr %49, align 4, !tbaa !9
  %8278 = load i32, ptr %48, align 4, !tbaa !9
  %8279 = load i32, ptr %49, align 4, !tbaa !9
  %8280 = icmp ne i32 %8278, %8279
  %8281 = zext i1 %8280 to i32
  store i32 %8281, ptr %48, align 4, !tbaa !9
  %8282 = load i32, ptr %48, align 4, !tbaa !9
  %8283 = icmp ne i32 %8282, 0
  br i1 %8283, label %8284, label %8285

8284:                                             ; preds = %8276
  br label %8383

8285:                                             ; preds = %8276
  store i32 0, ptr %48, align 4, !tbaa !9
  %8286 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8286, ptr %11, align 4, !tbaa !9
  %8287 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8287, ptr %48, align 4, !tbaa !9
  %8288 = load ptr, ptr %5, align 8, !tbaa !5
  %8289 = getelementptr inbounds %struct.w2c_hermes, ptr %8288, i32 0, i32 6
  %8290 = load i32, ptr %48, align 4, !tbaa !9
  %8291 = zext i32 %8290 to i64
  %8292 = add i64 %8291, 228
  %8293 = call i32 @i32_load(ptr noundef %8289, i64 noundef %8292)
  store i32 %8293, ptr %48, align 4, !tbaa !9
  store i32 31, ptr %49, align 4, !tbaa !9
  %8294 = load i32, ptr %48, align 4, !tbaa !9
  %8295 = load i32, ptr %49, align 4, !tbaa !9
  %8296 = icmp ule i32 %8294, %8295
  %8297 = zext i1 %8296 to i32
  store i32 %8297, ptr %48, align 4, !tbaa !9
  %8298 = load i32, ptr %48, align 4, !tbaa !9
  %8299 = icmp ne i32 %8298, 0
  br i1 %8299, label %8300, label %8327

8300:                                             ; preds = %8285
  %8301 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8301, ptr %48, align 4, !tbaa !9
  store i32 220, ptr %49, align 4, !tbaa !9
  %8302 = load i32, ptr %49, align 4, !tbaa !9
  %8303 = load i32, ptr %48, align 4, !tbaa !9
  %8304 = add i32 %8303, %8302
  store i32 %8304, ptr %48, align 4, !tbaa !9
  %8305 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8305, ptr %49, align 4, !tbaa !9
  store i32 32, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %8306 = load ptr, ptr %5, align 8, !tbaa !5
  %8307 = load i32, ptr %48, align 4, !tbaa !9
  %8308 = load i32, ptr %49, align 4, !tbaa !9
  %8309 = load i32, ptr %50, align 4, !tbaa !9
  %8310 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %8306, i32 noundef %8307, i32 noundef %8308, i32 noundef %8309, i32 noundef %8310)
  %8311 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8311, ptr %48, align 4, !tbaa !9
  %8312 = load ptr, ptr %5, align 8, !tbaa !5
  %8313 = getelementptr inbounds %struct.w2c_hermes, ptr %8312, i32 0, i32 6
  %8314 = load i32, ptr %48, align 4, !tbaa !9
  %8315 = zext i32 %8314 to i64
  %8316 = add i64 %8315, 224
  %8317 = call i32 @i32_load(ptr noundef %8313, i64 noundef %8316)
  store i32 %8317, ptr %48, align 4, !tbaa !9
  %8318 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8318, ptr %11, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %8319 = load i32, ptr %48, align 4, !tbaa !9
  %8320 = load i32, ptr %49, align 4, !tbaa !9
  %8321 = icmp eq i32 %8319, %8320
  %8322 = zext i1 %8321 to i32
  store i32 %8322, ptr %48, align 4, !tbaa !9
  %8323 = load i32, ptr %48, align 4, !tbaa !9
  %8324 = icmp ne i32 %8323, 0
  br i1 %8324, label %8325, label %8326

8325:                                             ; preds = %8300
  br label %8348

8326:                                             ; preds = %8300
  br label %8327

8327:                                             ; preds = %8326, %8285
  %8328 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8328, ptr %48, align 4, !tbaa !9
  %8329 = load ptr, ptr %5, align 8, !tbaa !5
  %8330 = getelementptr inbounds %struct.w2c_hermes, ptr %8329, i32 0, i32 6
  %8331 = load i32, ptr %48, align 4, !tbaa !9
  %8332 = zext i32 %8331 to i64
  %8333 = add i64 %8332, 220
  %8334 = call i32 @i32_load(ptr noundef %8330, i64 noundef %8333)
  store i32 %8334, ptr %48, align 4, !tbaa !9
  %8335 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8335, ptr %49, align 4, !tbaa !9
  %8336 = load i32, ptr %49, align 4, !tbaa !9
  %8337 = load i32, ptr %48, align 4, !tbaa !9
  %8338 = add i32 %8337, %8336
  store i32 %8338, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  store i32 32, ptr %50, align 4, !tbaa !9
  %8339 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8339, ptr %51, align 4, !tbaa !9
  %8340 = load i32, ptr %51, align 4, !tbaa !9
  %8341 = load i32, ptr %50, align 4, !tbaa !9
  %8342 = sub i32 %8341, %8340
  store i32 %8342, ptr %50, align 4, !tbaa !9
  %8343 = load ptr, ptr %5, align 8, !tbaa !5
  %8344 = load i32, ptr %48, align 4, !tbaa !9
  %8345 = load i32, ptr %49, align 4, !tbaa !9
  %8346 = load i32, ptr %50, align 4, !tbaa !9
  %8347 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %8343, i32 noundef %8344, i32 noundef %8345, i32 noundef %8346)
  store i32 %8347, ptr %48, align 4, !tbaa !9
  br label %8348

8348:                                             ; preds = %8327, %8325
  %8349 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8349, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %8350 = load ptr, ptr %5, align 8, !tbaa !5
  %8351 = getelementptr inbounds %struct.w2c_hermes, ptr %8350, i32 0, i32 6
  %8352 = load i32, ptr %48, align 4, !tbaa !9
  %8353 = zext i32 %8352 to i64
  %8354 = add i64 %8353, 224
  %8355 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8351, i64 noundef %8354, i32 noundef %8355)
  %8356 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8356, ptr %48, align 4, !tbaa !9
  %8357 = load ptr, ptr %5, align 8, !tbaa !5
  %8358 = getelementptr inbounds %struct.w2c_hermes, ptr %8357, i32 0, i32 6
  %8359 = load i32, ptr %48, align 4, !tbaa !9
  %8360 = zext i32 %8359 to i64
  %8361 = add i64 %8360, 32
  %8362 = call double @f64_load(ptr noundef %8358, i64 noundef %8361)
  store double %8362, ptr %70, align 8, !tbaa !20
  %8363 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8363, ptr %49, align 4, !tbaa !9
  %8364 = load ptr, ptr %5, align 8, !tbaa !5
  %8365 = getelementptr inbounds %struct.w2c_hermes, ptr %8364, i32 0, i32 6
  %8366 = load i32, ptr %49, align 4, !tbaa !9
  %8367 = zext i32 %8366 to i64
  %8368 = add i64 %8367, 220
  %8369 = call i32 @i32_load(ptr noundef %8365, i64 noundef %8368)
  store i32 %8369, ptr %49, align 4, !tbaa !9
  %8370 = load ptr, ptr %5, align 8, !tbaa !5
  %8371 = load double, ptr %70, align 8, !tbaa !20
  %8372 = load i32, ptr %49, align 4, !tbaa !9
  %8373 = call i32 @w2c_hermes_hermes0x3A0x3AnumberToString0x28double0x2C0x20char0x2A0x2C0x20unsigned0x20long0x29(ptr noundef %8370, double noundef %8371, i32 noundef %8372)
  store i32 %8373, ptr %48, align 4, !tbaa !9
  %8374 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8374, ptr %11, align 4, !tbaa !9
  %8375 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8375, ptr %48, align 4, !tbaa !9
  %8376 = load ptr, ptr %5, align 8, !tbaa !5
  %8377 = getelementptr inbounds %struct.w2c_hermes, ptr %8376, i32 0, i32 6
  %8378 = load i32, ptr %48, align 4, !tbaa !9
  %8379 = zext i32 %8378 to i64
  %8380 = add i64 %8379, 220
  %8381 = call i32 @i32_load(ptr noundef %8377, i64 noundef %8380)
  store i32 %8381, ptr %48, align 4, !tbaa !9
  %8382 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8382, ptr %16, align 4, !tbaa !9
  br label %8383

8383:                                             ; preds = %8348, %8284, %8275, %8244, %8203
  %8384 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8384, ptr %48, align 4, !tbaa !9
  %8385 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8385, ptr %49, align 4, !tbaa !9
  %8386 = load i32, ptr %48, align 4, !tbaa !9
  %8387 = load i32, ptr %49, align 4, !tbaa !9
  %8388 = icmp eq i32 %8386, %8387
  %8389 = zext i1 %8388 to i32
  store i32 %8389, ptr %48, align 4, !tbaa !9
  %8390 = load i32, ptr %48, align 4, !tbaa !9
  %8391 = icmp ne i32 %8390, 0
  br i1 %8391, label %8392, label %8549

8392:                                             ; preds = %8383
  %8393 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8393, ptr %48, align 4, !tbaa !9
  %8394 = load i32, ptr %48, align 4, !tbaa !9
  %8395 = icmp ne i32 %8394, 0
  br i1 %8395, label %8396, label %8397

8396:                                             ; preds = %8392
  br label %9641

8397:                                             ; preds = %8392
  %8398 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8398, ptr %48, align 4, !tbaa !9
  %8399 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8399, ptr %49, align 4, !tbaa !9
  %8400 = load ptr, ptr %5, align 8, !tbaa !5
  %8401 = getelementptr inbounds %struct.w2c_hermes, ptr %8400, i32 0, i32 6
  %8402 = load i32, ptr %49, align 4, !tbaa !9
  %8403 = zext i32 %8402 to i64
  %8404 = add i64 %8403, 32
  %8405 = call i32 @i32_load(ptr noundef %8401, i64 noundef %8404)
  store i32 %8405, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %8406 = load ptr, ptr %5, align 8, !tbaa !5
  %8407 = load i32, ptr %48, align 4, !tbaa !9
  %8408 = load i32, ptr %49, align 4, !tbaa !9
  %8409 = load i32, ptr %50, align 4, !tbaa !9
  %8410 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %8406, i32 noundef %8407, i32 noundef %8408, i32 noundef %8409)
  store i32 %8410, ptr %48, align 4, !tbaa !9
  %8411 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8411, ptr %13, align 4, !tbaa !9
  %8412 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8412, ptr %48, align 4, !tbaa !9
  %8413 = load ptr, ptr %5, align 8, !tbaa !5
  %8414 = getelementptr inbounds %struct.w2c_hermes, ptr %8413, i32 0, i32 6
  %8415 = load i32, ptr %48, align 4, !tbaa !9
  %8416 = zext i32 %8415 to i64
  %8417 = add i64 %8416, 8
  %8418 = call i32 @i32_load(ptr noundef %8414, i64 noundef %8417)
  store i32 %8418, ptr %48, align 4, !tbaa !9
  %8419 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8419, ptr %12, align 4, !tbaa !9
  %8420 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8420, ptr %48, align 4, !tbaa !9
  %8421 = load ptr, ptr %5, align 8, !tbaa !5
  %8422 = getelementptr inbounds %struct.w2c_hermes, ptr %8421, i32 0, i32 6
  %8423 = load i32, ptr %48, align 4, !tbaa !9
  %8424 = zext i32 %8423 to i64
  %8425 = add i64 %8424, 16
  %8426 = call i32 @i32_load(ptr noundef %8422, i64 noundef %8425)
  store i32 %8426, ptr %48, align 4, !tbaa !9
  %8427 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8427, ptr %17, align 4, !tbaa !9
  %8428 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8428, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %8429 = load ptr, ptr %5, align 8, !tbaa !5
  %8430 = getelementptr inbounds %struct.w2c_hermes, ptr %8429, i32 0, i32 6
  %8431 = load i32, ptr %48, align 4, !tbaa !9
  %8432 = zext i32 %8431 to i64
  %8433 = add i64 %8432, 16
  %8434 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8430, i64 noundef %8433, i32 noundef %8434)
  %8435 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8435, ptr %48, align 4, !tbaa !9
  %8436 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8436, ptr %49, align 4, !tbaa !9
  %8437 = load ptr, ptr %5, align 8, !tbaa !5
  %8438 = getelementptr inbounds %struct.w2c_hermes, ptr %8437, i32 0, i32 6
  %8439 = load i32, ptr %49, align 4, !tbaa !9
  %8440 = zext i32 %8439 to i64
  %8441 = add i64 %8440, 28
  %8442 = call i32 @i32_load(ptr noundef %8438, i64 noundef %8441)
  store i32 %8442, ptr %49, align 4, !tbaa !9
  %8443 = load ptr, ptr %5, align 8, !tbaa !5
  %8444 = getelementptr inbounds %struct.w2c_hermes, ptr %8443, i32 0, i32 6
  %8445 = load i32, ptr %49, align 4, !tbaa !9
  %8446 = zext i32 %8445 to i64
  %8447 = add i64 %8446, 24
  %8448 = call i32 @i32_load(ptr noundef %8444, i64 noundef %8447)
  store i32 %8448, ptr %49, align 4, !tbaa !9
  %8449 = load ptr, ptr %5, align 8, !tbaa !5
  %8450 = getelementptr inbounds %struct.w2c_hermes, ptr %8449, i32 0, i32 6
  %8451 = load i32, ptr %48, align 4, !tbaa !9
  %8452 = zext i32 %8451 to i64
  %8453 = add i64 %8452, 16
  %8454 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8450, i64 noundef %8453, i32 noundef %8454)
  %8455 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8455, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %8456 = load ptr, ptr %5, align 8, !tbaa !5
  %8457 = getelementptr inbounds %struct.w2c_hermes, ptr %8456, i32 0, i32 6
  %8458 = load i32, ptr %48, align 4, !tbaa !9
  %8459 = zext i32 %8458 to i64
  %8460 = add i64 %8459, 132
  %8461 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8457, i64 noundef %8460, i32 noundef %8461)
  %8462 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8462, ptr %48, align 4, !tbaa !9
  %8463 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8463, ptr %49, align 4, !tbaa !9
  %8464 = load ptr, ptr %5, align 8, !tbaa !5
  %8465 = getelementptr inbounds %struct.w2c_hermes, ptr %8464, i32 0, i32 6
  %8466 = load i32, ptr %48, align 4, !tbaa !9
  %8467 = zext i32 %8466 to i64
  %8468 = add i64 %8467, 196
  %8469 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8465, i64 noundef %8468, i32 noundef %8469)
  %8470 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8470, ptr %48, align 4, !tbaa !9
  %8471 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8471, ptr %49, align 4, !tbaa !9
  %8472 = load ptr, ptr %5, align 8, !tbaa !5
  %8473 = getelementptr inbounds %struct.w2c_hermes, ptr %8472, i32 0, i32 6
  %8474 = load i32, ptr %48, align 4, !tbaa !9
  %8475 = zext i32 %8474 to i64
  %8476 = add i64 %8475, 192
  %8477 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8473, i64 noundef %8476, i32 noundef %8477)
  %8478 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8478, ptr %48, align 4, !tbaa !9
  %8479 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8479, ptr %49, align 4, !tbaa !9
  store i32 192, ptr %50, align 4, !tbaa !9
  %8480 = load i32, ptr %50, align 4, !tbaa !9
  %8481 = load i32, ptr %49, align 4, !tbaa !9
  %8482 = add i32 %8481, %8480
  store i32 %8482, ptr %49, align 4, !tbaa !9
  %8483 = load ptr, ptr %5, align 8, !tbaa !5
  %8484 = getelementptr inbounds %struct.w2c_hermes, ptr %8483, i32 0, i32 6
  %8485 = load i32, ptr %48, align 4, !tbaa !9
  %8486 = zext i32 %8485 to i64
  %8487 = add i64 %8486, 128
  %8488 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8484, i64 noundef %8487, i32 noundef %8488)
  %8489 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8489, ptr %48, align 4, !tbaa !9
  %8490 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8490, ptr %49, align 4, !tbaa !9
  %8491 = load ptr, ptr %5, align 8, !tbaa !5
  %8492 = getelementptr inbounds %struct.w2c_hermes, ptr %8491, i32 0, i32 6
  %8493 = load i32, ptr %49, align 4, !tbaa !9
  %8494 = zext i32 %8493 to i64
  %8495 = add i64 %8494, 128
  %8496 = call i64 @i64_load(ptr noundef %8492, i64 noundef %8495)
  store i64 %8496, ptr %59, align 8, !tbaa !11
  %8497 = load ptr, ptr %5, align 8, !tbaa !5
  %8498 = getelementptr inbounds %struct.w2c_hermes, ptr %8497, i32 0, i32 6
  %8499 = load i32, ptr %48, align 4, !tbaa !9
  %8500 = zext i32 %8499 to i64
  %8501 = add i64 %8500, 8
  %8502 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8498, i64 noundef %8501, i64 noundef %8502)
  %8503 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8503, ptr %48, align 4, !tbaa !9
  store i32 37, ptr %49, align 4, !tbaa !9
  %8504 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8504, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %8505 = load i32, ptr %51, align 4, !tbaa !9
  %8506 = load i32, ptr %50, align 4, !tbaa !9
  %8507 = add i32 %8506, %8505
  store i32 %8507, ptr %50, align 4, !tbaa !9
  %8508 = load ptr, ptr %5, align 8, !tbaa !5
  %8509 = load i32, ptr %48, align 4, !tbaa !9
  %8510 = load i32, ptr %49, align 4, !tbaa !9
  %8511 = load i32, ptr %50, align 4, !tbaa !9
  %8512 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %8508, i32 noundef %8509, i32 noundef %8510, i32 noundef %8511)
  store i32 %8512, ptr %48, align 4, !tbaa !9
  %8513 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8513, ptr %48, align 4, !tbaa !9
  %8514 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8514, ptr %49, align 4, !tbaa !9
  %8515 = load ptr, ptr %5, align 8, !tbaa !5
  %8516 = getelementptr inbounds %struct.w2c_hermes, ptr %8515, i32 0, i32 6
  %8517 = load i32, ptr %48, align 4, !tbaa !9
  %8518 = zext i32 %8517 to i64
  %8519 = add i64 %8518, 8
  %8520 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8516, i64 noundef %8519, i32 noundef %8520)
  %8521 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8521, ptr %48, align 4, !tbaa !9
  %8522 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8522, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %8523 = load i32, ptr %50, align 4, !tbaa !9
  %8524 = load i32, ptr %49, align 4, !tbaa !9
  %8525 = add i32 %8524, %8523
  store i32 %8525, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %8526 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8526, ptr %51, align 4, !tbaa !9
  %8527 = load i32, ptr %51, align 4, !tbaa !9
  %8528 = icmp ne i32 %8527, 0
  br i1 %8528, label %8529, label %8531

8529:                                             ; preds = %8397
  %8530 = load i32, ptr %49, align 4, !tbaa !9
  br label %8533

8531:                                             ; preds = %8397
  %8532 = load i32, ptr %50, align 4, !tbaa !9
  br label %8533

8533:                                             ; preds = %8531, %8529
  %8534 = phi i32 [ %8530, %8529 ], [ %8532, %8531 ]
  store i32 %8534, ptr %49, align 4, !tbaa !9
  %8535 = load ptr, ptr %5, align 8, !tbaa !5
  %8536 = getelementptr inbounds %struct.w2c_hermes, ptr %8535, i32 0, i32 6
  %8537 = load i32, ptr %48, align 4, !tbaa !9
  %8538 = zext i32 %8537 to i64
  %8539 = add i64 %8538, 4
  %8540 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8536, i64 noundef %8539, i32 noundef %8540)
  %8541 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8541, ptr %48, align 4, !tbaa !9
  %8542 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8542, ptr %49, align 4, !tbaa !9
  %8543 = load ptr, ptr %5, align 8, !tbaa !5
  %8544 = getelementptr inbounds %struct.w2c_hermes, ptr %8543, i32 0, i32 6
  %8545 = load i32, ptr %48, align 4, !tbaa !9
  %8546 = zext i32 %8545 to i64
  %8547 = add i64 %8546, 16
  %8548 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8544, i64 noundef %8547, i32 noundef %8548)
  br label %9641

8549:                                             ; preds = %8383
  %8550 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8550, ptr %48, align 4, !tbaa !9
  store i32 288, ptr %49, align 4, !tbaa !9
  %8551 = load i32, ptr %49, align 4, !tbaa !9
  %8552 = load i32, ptr %48, align 4, !tbaa !9
  %8553 = add i32 %8552, %8551
  store i32 %8553, ptr %48, align 4, !tbaa !9
  %8554 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %8554, ptr %49, align 4, !tbaa !9
  %8555 = load i32, ptr %49, align 4, !tbaa !9
  %8556 = zext i32 %8555 to i64
  store i64 %8556, ptr %59, align 8, !tbaa !11
  %8557 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8557, ptr %50, align 4, !tbaa !9
  %8558 = load i32, ptr %50, align 4, !tbaa !9
  %8559 = zext i32 %8558 to i64
  store i64 %8559, ptr %60, align 8, !tbaa !11
  store i64 32, ptr %61, align 8, !tbaa !11
  %8560 = load i64, ptr %61, align 8, !tbaa !11
  %8561 = and i64 %8560, 63
  %8562 = load i64, ptr %60, align 8, !tbaa !11
  %8563 = shl i64 %8562, %8561
  store i64 %8563, ptr %60, align 8, !tbaa !11
  %8564 = load i64, ptr %60, align 8, !tbaa !11
  %8565 = load i64, ptr %59, align 8, !tbaa !11
  %8566 = or i64 %8565, %8564
  store i64 %8566, ptr %59, align 8, !tbaa !11
  %8567 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %8567, ptr %31, align 8, !tbaa !11
  %8568 = load ptr, ptr %5, align 8, !tbaa !5
  %8569 = load i32, ptr %48, align 4, !tbaa !9
  %8570 = load i64, ptr %59, align 8, !tbaa !11
  %8571 = call i32 @w2c_hermes_llvh0x3A0x3AStringMap0x3Chermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenObjectExpr0x28hermes0x3A0x3AESTree0x3A0x3AObjectExpressionNode0x2A0x290x3A0x3APropertyValue0x2C0x20llvh0x3A0x3AMallocAllocator0x3E0x3A0x3Aoperator0x5B0x5D0x28llvh0x3A0x3AStringRef0x29(ptr noundef %8568, i32 noundef %8569, i64 noundef %8570)
  store i32 %8571, ptr %48, align 4, !tbaa !9
  %8572 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8572, ptr %17, align 4, !tbaa !9
  %8573 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8573, ptr %48, align 4, !tbaa !9
  %8574 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8574, ptr %49, align 4, !tbaa !9
  %8575 = load ptr, ptr %5, align 8, !tbaa !5
  %8576 = getelementptr inbounds %struct.w2c_hermes, ptr %8575, i32 0, i32 6
  %8577 = load i32, ptr %48, align 4, !tbaa !9
  %8578 = zext i32 %8577 to i64
  %8579 = add i64 %8578, 124
  %8580 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8576, i64 noundef %8579, i32 noundef %8580)
  %8581 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8581, ptr %48, align 4, !tbaa !9
  %8582 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %8582, ptr %49, align 4, !tbaa !9
  %8583 = load ptr, ptr %5, align 8, !tbaa !5
  %8584 = getelementptr inbounds %struct.w2c_hermes, ptr %8583, i32 0, i32 6
  %8585 = load i32, ptr %48, align 4, !tbaa !9
  %8586 = zext i32 %8585 to i64
  %8587 = add i64 %8586, 120
  %8588 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8584, i64 noundef %8587, i32 noundef %8588)
  %8589 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8589, ptr %48, align 4, !tbaa !9
  %8590 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8590, ptr %49, align 4, !tbaa !9
  %8591 = load ptr, ptr %5, align 8, !tbaa !5
  %8592 = getelementptr inbounds %struct.w2c_hermes, ptr %8591, i32 0, i32 6
  %8593 = load i32, ptr %49, align 4, !tbaa !9
  %8594 = zext i32 %8593 to i64
  %8595 = add i64 %8594, 120
  %8596 = call i64 @i64_load(ptr noundef %8592, i64 noundef %8595)
  store i64 %8596, ptr %59, align 8, !tbaa !11
  %8597 = load ptr, ptr %5, align 8, !tbaa !5
  %8598 = getelementptr inbounds %struct.w2c_hermes, ptr %8597, i32 0, i32 6
  %8599 = load i32, ptr %48, align 4, !tbaa !9
  %8600 = zext i32 %8599 to i64
  %8601 = add i64 %8600, 40
  %8602 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8598, i64 noundef %8601, i64 noundef %8602)
  %8603 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8603, ptr %48, align 4, !tbaa !9
  %8604 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8604, ptr %49, align 4, !tbaa !9
  store i32 40, ptr %50, align 4, !tbaa !9
  %8605 = load i32, ptr %50, align 4, !tbaa !9
  %8606 = load i32, ptr %49, align 4, !tbaa !9
  %8607 = add i32 %8606, %8605
  store i32 %8607, ptr %49, align 4, !tbaa !9
  %8608 = load ptr, ptr %5, align 8, !tbaa !5
  %8609 = load i32, ptr %48, align 4, !tbaa !9
  %8610 = load i32, ptr %49, align 4, !tbaa !9
  %8611 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %8608, i32 noundef %8609, i32 noundef %8610)
  store i32 %8611, ptr %48, align 4, !tbaa !9
  %8612 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8612, ptr %18, align 4, !tbaa !9
  %8613 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8613, ptr %48, align 4, !tbaa !9
  %8614 = load ptr, ptr %5, align 8, !tbaa !5
  %8615 = getelementptr inbounds %struct.w2c_hermes, ptr %8614, i32 0, i32 6
  %8616 = load i32, ptr %48, align 4, !tbaa !9
  %8617 = zext i32 %8616 to i64
  %8618 = add i64 %8617, 36
  %8619 = call i32 @i32_load(ptr noundef %8615, i64 noundef %8618)
  store i32 %8619, ptr %48, align 4, !tbaa !9
  %8620 = load ptr, ptr %5, align 8, !tbaa !5
  %8621 = getelementptr inbounds %struct.w2c_hermes, ptr %8620, i32 0, i32 6
  %8622 = load i32, ptr %48, align 4, !tbaa !9
  %8623 = zext i32 %8622 to i64
  %8624 = call i64 @i64_load(ptr noundef %8621, i64 noundef %8623)
  store i64 %8624, ptr %58, align 8, !tbaa !11
  %8625 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %8625, ptr %32, align 8, !tbaa !11
  store i64 -4294967296, ptr %59, align 8, !tbaa !11
  %8626 = load i64, ptr %59, align 8, !tbaa !11
  %8627 = load i64, ptr %58, align 8, !tbaa !11
  %8628 = and i64 %8627, %8626
  store i64 %8628, ptr %58, align 8, !tbaa !11
  store i64 12884901888, ptr %59, align 8, !tbaa !11
  %8629 = load i64, ptr %58, align 8, !tbaa !11
  %8630 = load i64, ptr %59, align 8, !tbaa !11
  %8631 = icmp ne i64 %8629, %8630
  %8632 = zext i1 %8631 to i32
  store i32 %8632, ptr %48, align 4, !tbaa !9
  %8633 = load i32, ptr %48, align 4, !tbaa !9
  %8634 = icmp ne i32 %8633, 0
  br i1 %8634, label %8635, label %8636

8635:                                             ; preds = %8549
  br label %9440

8636:                                             ; preds = %8549
  %8637 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %8637, ptr %58, align 8, !tbaa !11
  %8638 = load i64, ptr %58, align 8, !tbaa !11
  %8639 = trunc i64 %8638 to i32
  store i32 %8639, ptr %48, align 4, !tbaa !9
  %8640 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8640, ptr %12, align 4, !tbaa !9
  store i32 29638, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %8641 = load ptr, ptr %5, align 8, !tbaa !5
  %8642 = load i32, ptr %48, align 4, !tbaa !9
  %8643 = load i32, ptr %49, align 4, !tbaa !9
  %8644 = load i32, ptr %50, align 4, !tbaa !9
  %8645 = call i32 @w2c_hermes_memcmp(ptr noundef %8641, i32 noundef %8642, i32 noundef %8643, i32 noundef %8644)
  store i32 %8645, ptr %48, align 4, !tbaa !9
  %8646 = load i32, ptr %48, align 4, !tbaa !9
  %8647 = icmp ne i32 %8646, 0
  br i1 %8647, label %8648, label %8659

8648:                                             ; preds = %8636
  %8649 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8649, ptr %48, align 4, !tbaa !9
  store i32 28913, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %8650 = load ptr, ptr %5, align 8, !tbaa !5
  %8651 = load i32, ptr %48, align 4, !tbaa !9
  %8652 = load i32, ptr %49, align 4, !tbaa !9
  %8653 = load i32, ptr %50, align 4, !tbaa !9
  %8654 = call i32 @w2c_hermes_memcmp(ptr noundef %8650, i32 noundef %8651, i32 noundef %8652, i32 noundef %8653)
  store i32 %8654, ptr %48, align 4, !tbaa !9
  %8655 = load i32, ptr %48, align 4, !tbaa !9
  %8656 = icmp ne i32 %8655, 0
  br i1 %8656, label %8657, label %8658

8657:                                             ; preds = %8648
  br label %9440

8658:                                             ; preds = %8648
  br label %8659

8659:                                             ; preds = %8658, %8636
  %8660 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8660, ptr %48, align 4, !tbaa !9
  %8661 = load ptr, ptr %5, align 8, !tbaa !5
  %8662 = getelementptr inbounds %struct.w2c_hermes, ptr %8661, i32 0, i32 6
  %8663 = load i32, ptr %48, align 4, !tbaa !9
  %8664 = zext i32 %8663 to i64
  %8665 = add i64 %8664, 4
  %8666 = call i32 @i32_load(ptr noundef %8662, i64 noundef %8665)
  store i32 %8666, ptr %48, align 4, !tbaa !9
  %8667 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8667, ptr %12, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %8668 = load i32, ptr %48, align 4, !tbaa !9
  %8669 = load i32, ptr %49, align 4, !tbaa !9
  %8670 = icmp eq i32 %8668, %8669
  %8671 = zext i1 %8670 to i32
  store i32 %8671, ptr %48, align 4, !tbaa !9
  %8672 = load i32, ptr %48, align 4, !tbaa !9
  %8673 = icmp ne i32 %8672, 0
  br i1 %8673, label %8674, label %8675

8674:                                             ; preds = %8659
  br label %9641

8675:                                             ; preds = %8659
  %8676 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8676, ptr %48, align 4, !tbaa !9
  %8677 = load ptr, ptr %5, align 8, !tbaa !5
  %8678 = getelementptr inbounds %struct.w2c_hermes, ptr %8677, i32 0, i32 6
  %8679 = load i32, ptr %48, align 4, !tbaa !9
  %8680 = zext i32 %8679 to i64
  %8681 = call i32 @i32_load8_u(ptr noundef %8678, i64 noundef %8680)
  store i32 %8681, ptr %48, align 4, !tbaa !9
  %8682 = load i32, ptr %48, align 4, !tbaa !9
  %8683 = icmp ne i32 %8682, 0
  %8684 = xor i1 %8683, true
  %8685 = zext i1 %8684 to i32
  store i32 %8685, ptr %48, align 4, !tbaa !9
  %8686 = load i32, ptr %48, align 4, !tbaa !9
  %8687 = icmp ne i32 %8686, 0
  br i1 %8687, label %8688, label %8730

8688:                                             ; preds = %8675
  %8689 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8689, ptr %48, align 4, !tbaa !9
  %8690 = load i32, ptr %48, align 4, !tbaa !9
  %8691 = icmp ne i32 %8690, 0
  br i1 %8691, label %8692, label %8693

8692:                                             ; preds = %8688
  br label %9641

8693:                                             ; preds = %8688
  %8694 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8694, ptr %48, align 4, !tbaa !9
  %8695 = load ptr, ptr %5, align 8, !tbaa !5
  %8696 = getelementptr inbounds %struct.w2c_hermes, ptr %8695, i32 0, i32 6
  %8697 = load i32, ptr %48, align 4, !tbaa !9
  %8698 = zext i32 %8697 to i64
  %8699 = call i32 @i32_load(ptr noundef %8696, i64 noundef %8698)
  store i32 %8699, ptr %48, align 4, !tbaa !9
  store i32 296, ptr %49, align 4, !tbaa !9
  %8700 = load i32, ptr %49, align 4, !tbaa !9
  %8701 = load i32, ptr %48, align 4, !tbaa !9
  %8702 = add i32 %8701, %8700
  store i32 %8702, ptr %48, align 4, !tbaa !9
  %8703 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8703, ptr %12, align 4, !tbaa !9
  %8704 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %8704, ptr %48, align 4, !tbaa !9
  store i32 255, ptr %49, align 4, !tbaa !9
  %8705 = load i32, ptr %49, align 4, !tbaa !9
  %8706 = load i32, ptr %48, align 4, !tbaa !9
  %8707 = and i32 %8706, %8705
  store i32 %8707, ptr %48, align 4, !tbaa !9
  %8708 = load i32, ptr %48, align 4, !tbaa !9
  %8709 = icmp ne i32 %8708, 0
  br i1 %8709, label %8710, label %8720

8710:                                             ; preds = %8693
  %8711 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8711, ptr %48, align 4, !tbaa !9
  %8712 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8712, ptr %49, align 4, !tbaa !9
  %8713 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8713, ptr %50, align 4, !tbaa !9
  %8714 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8714, ptr %51, align 4, !tbaa !9
  %8715 = load ptr, ptr %5, align 8, !tbaa !5
  %8716 = load i32, ptr %48, align 4, !tbaa !9
  %8717 = load i32, ptr %49, align 4, !tbaa !9
  %8718 = load i32, ptr %50, align 4, !tbaa !9
  %8719 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %8715, i32 noundef %8716, i32 noundef %8717, i32 noundef %8718, i32 noundef %8719)
  br label %9633

8720:                                             ; preds = %8693
  %8721 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8721, ptr %48, align 4, !tbaa !9
  %8722 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8722, ptr %49, align 4, !tbaa !9
  %8723 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8723, ptr %50, align 4, !tbaa !9
  %8724 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8724, ptr %51, align 4, !tbaa !9
  %8725 = load ptr, ptr %5, align 8, !tbaa !5
  %8726 = load i32, ptr %48, align 4, !tbaa !9
  %8727 = load i32, ptr %49, align 4, !tbaa !9
  %8728 = load i32, ptr %50, align 4, !tbaa !9
  %8729 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreNewOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %8725, i32 noundef %8726, i32 noundef %8727, i32 noundef %8728, i32 noundef %8729)
  br label %9633

8730:                                             ; preds = %8675
  %8731 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8731, ptr %48, align 4, !tbaa !9
  %8732 = load ptr, ptr %5, align 8, !tbaa !5
  %8733 = getelementptr inbounds %struct.w2c_hermes, ptr %8732, i32 0, i32 6
  %8734 = load i32, ptr %48, align 4, !tbaa !9
  %8735 = zext i32 %8734 to i64
  %8736 = call i32 @i32_load(ptr noundef %8733, i64 noundef %8735)
  store i32 %8736, ptr %48, align 4, !tbaa !9
  store i32 268, ptr %49, align 4, !tbaa !9
  %8737 = load i32, ptr %49, align 4, !tbaa !9
  %8738 = load i32, ptr %48, align 4, !tbaa !9
  %8739 = add i32 %8738, %8737
  store i32 %8739, ptr %48, align 4, !tbaa !9
  %8740 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8740, ptr %13, align 4, !tbaa !9
  %8741 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8741, ptr %12, align 4, !tbaa !9
  %8742 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8742, ptr %48, align 4, !tbaa !9
  %8743 = load ptr, ptr %5, align 8, !tbaa !5
  %8744 = getelementptr inbounds %struct.w2c_hermes, ptr %8743, i32 0, i32 6
  %8745 = load i32, ptr %48, align 4, !tbaa !9
  %8746 = zext i32 %8745 to i64
  %8747 = add i64 %8746, 12
  %8748 = call i32 @i32_load(ptr noundef %8744, i64 noundef %8747)
  store i32 %8748, ptr %48, align 4, !tbaa !9
  %8749 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8749, ptr %22, align 4, !tbaa !9
  %8750 = load i32, ptr %48, align 4, !tbaa !9
  %8751 = icmp ne i32 %8750, 0
  %8752 = xor i1 %8751, true
  %8753 = zext i1 %8752 to i32
  store i32 %8753, ptr %48, align 4, !tbaa !9
  %8754 = load i32, ptr %48, align 4, !tbaa !9
  %8755 = icmp ne i32 %8754, 0
  br i1 %8755, label %8756, label %8757

8756:                                             ; preds = %8730
  br label %9081

8757:                                             ; preds = %8730
  %8758 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %8758, ptr %48, align 4, !tbaa !9
  %8759 = load i32, ptr %48, align 4, !tbaa !9
  %8760 = icmp ne i32 %8759, 0
  %8761 = xor i1 %8760, true
  %8762 = zext i1 %8761 to i32
  store i32 %8762, ptr %48, align 4, !tbaa !9
  %8763 = load i32, ptr %48, align 4, !tbaa !9
  %8764 = icmp ne i32 %8763, 0
  br i1 %8764, label %8765, label %8780

8765:                                             ; preds = %8757
  %8766 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8766, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %8767 = load ptr, ptr %5, align 8, !tbaa !5
  %8768 = getelementptr inbounds %struct.w2c_hermes, ptr %8767, i32 0, i32 6
  %8769 = load i32, ptr %48, align 4, !tbaa !9
  %8770 = zext i32 %8769 to i64
  %8771 = add i64 %8770, 184
  %8772 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8768, i64 noundef %8771, i32 noundef %8772)
  %8773 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8773, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %8774 = load ptr, ptr %5, align 8, !tbaa !5
  %8775 = getelementptr inbounds %struct.w2c_hermes, ptr %8774, i32 0, i32 6
  %8776 = load i32, ptr %48, align 4, !tbaa !9
  %8777 = zext i32 %8776 to i64
  %8778 = add i64 %8777, 176
  %8779 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8775, i64 noundef %8778, i64 noundef %8779)
  br label %8887

8780:                                             ; preds = %8757
  %8781 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8781, ptr %48, align 4, !tbaa !9
  store i32 2147483632, ptr %49, align 4, !tbaa !9
  %8782 = load i32, ptr %48, align 4, !tbaa !9
  %8783 = load i32, ptr %49, align 4, !tbaa !9
  %8784 = icmp uge i32 %8782, %8783
  %8785 = zext i1 %8784 to i32
  store i32 %8785, ptr %48, align 4, !tbaa !9
  %8786 = load i32, ptr %48, align 4, !tbaa !9
  %8787 = icmp ne i32 %8786, 0
  br i1 %8787, label %8788, label %8789

8788:                                             ; preds = %8780
  br label %9659

8789:                                             ; preds = %8780
  %8790 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8790, ptr %48, align 4, !tbaa !9
  store i32 11, ptr %49, align 4, !tbaa !9
  %8791 = load i32, ptr %48, align 4, !tbaa !9
  %8792 = load i32, ptr %49, align 4, !tbaa !9
  %8793 = icmp uge i32 %8791, %8792
  %8794 = zext i1 %8793 to i32
  store i32 %8794, ptr %48, align 4, !tbaa !9
  %8795 = load i32, ptr %48, align 4, !tbaa !9
  %8796 = icmp ne i32 %8795, 0
  br i1 %8796, label %8797, label %8843

8797:                                             ; preds = %8789
  %8798 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8798, ptr %48, align 4, !tbaa !9
  store i32 15, ptr %49, align 4, !tbaa !9
  %8799 = load i32, ptr %49, align 4, !tbaa !9
  %8800 = load i32, ptr %48, align 4, !tbaa !9
  %8801 = or i32 %8800, %8799
  store i32 %8801, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %8802 = load i32, ptr %49, align 4, !tbaa !9
  %8803 = load i32, ptr %48, align 4, !tbaa !9
  %8804 = add i32 %8803, %8802
  store i32 %8804, ptr %48, align 4, !tbaa !9
  %8805 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8805, ptr %19, align 4, !tbaa !9
  %8806 = load ptr, ptr %5, align 8, !tbaa !5
  %8807 = load i32, ptr %48, align 4, !tbaa !9
  %8808 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %8806, i32 noundef %8807)
  store i32 %8808, ptr %48, align 4, !tbaa !9
  %8809 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8809, ptr %12, align 4, !tbaa !9
  %8810 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8810, ptr %48, align 4, !tbaa !9
  %8811 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8811, ptr %49, align 4, !tbaa !9
  store i32 -2147483648, ptr %50, align 4, !tbaa !9
  %8812 = load i32, ptr %50, align 4, !tbaa !9
  %8813 = load i32, ptr %49, align 4, !tbaa !9
  %8814 = or i32 %8813, %8812
  store i32 %8814, ptr %49, align 4, !tbaa !9
  %8815 = load ptr, ptr %5, align 8, !tbaa !5
  %8816 = getelementptr inbounds %struct.w2c_hermes, ptr %8815, i32 0, i32 6
  %8817 = load i32, ptr %48, align 4, !tbaa !9
  %8818 = zext i32 %8817 to i64
  %8819 = add i64 %8818, 184
  %8820 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8816, i64 noundef %8819, i32 noundef %8820)
  %8821 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8821, ptr %48, align 4, !tbaa !9
  %8822 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8822, ptr %49, align 4, !tbaa !9
  %8823 = load ptr, ptr %5, align 8, !tbaa !5
  %8824 = getelementptr inbounds %struct.w2c_hermes, ptr %8823, i32 0, i32 6
  %8825 = load i32, ptr %48, align 4, !tbaa !9
  %8826 = zext i32 %8825 to i64
  %8827 = add i64 %8826, 176
  %8828 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8824, i64 noundef %8827, i32 noundef %8828)
  %8829 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8829, ptr %48, align 4, !tbaa !9
  %8830 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8830, ptr %49, align 4, !tbaa !9
  %8831 = load ptr, ptr %5, align 8, !tbaa !5
  %8832 = getelementptr inbounds %struct.w2c_hermes, ptr %8831, i32 0, i32 6
  %8833 = load i32, ptr %48, align 4, !tbaa !9
  %8834 = zext i32 %8833 to i64
  %8835 = add i64 %8834, 180
  %8836 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8832, i64 noundef %8835, i32 noundef %8836)
  %8837 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8837, ptr %48, align 4, !tbaa !9
  %8838 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8838, ptr %49, align 4, !tbaa !9
  %8839 = load i32, ptr %49, align 4, !tbaa !9
  %8840 = load i32, ptr %48, align 4, !tbaa !9
  %8841 = add i32 %8840, %8839
  store i32 %8841, ptr %48, align 4, !tbaa !9
  %8842 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8842, ptr %19, align 4, !tbaa !9
  br label %8871

8843:                                             ; preds = %8789
  %8844 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8844, ptr %48, align 4, !tbaa !9
  %8845 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8845, ptr %49, align 4, !tbaa !9
  %8846 = load ptr, ptr %5, align 8, !tbaa !5
  %8847 = getelementptr inbounds %struct.w2c_hermes, ptr %8846, i32 0, i32 6
  %8848 = load i32, ptr %48, align 4, !tbaa !9
  %8849 = zext i32 %8848 to i64
  %8850 = add i64 %8849, 187
  %8851 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %8847, i64 noundef %8850, i32 noundef %8851)
  %8852 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8852, ptr %48, align 4, !tbaa !9
  store i32 176, ptr %49, align 4, !tbaa !9
  %8853 = load i32, ptr %49, align 4, !tbaa !9
  %8854 = load i32, ptr %48, align 4, !tbaa !9
  %8855 = add i32 %8854, %8853
  store i32 %8855, ptr %48, align 4, !tbaa !9
  %8856 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8856, ptr %12, align 4, !tbaa !9
  %8857 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8857, ptr %49, align 4, !tbaa !9
  %8858 = load i32, ptr %49, align 4, !tbaa !9
  %8859 = load i32, ptr %48, align 4, !tbaa !9
  %8860 = add i32 %8859, %8858
  store i32 %8860, ptr %48, align 4, !tbaa !9
  %8861 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %8861, ptr %19, align 4, !tbaa !9
  %8862 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8862, ptr %48, align 4, !tbaa !9
  %8863 = load i32, ptr %48, align 4, !tbaa !9
  %8864 = icmp ne i32 %8863, 0
  %8865 = xor i1 %8864, true
  %8866 = zext i1 %8865 to i32
  store i32 %8866, ptr %48, align 4, !tbaa !9
  %8867 = load i32, ptr %48, align 4, !tbaa !9
  %8868 = icmp ne i32 %8867, 0
  br i1 %8868, label %8869, label %8870

8869:                                             ; preds = %8843
  br label %8880

8870:                                             ; preds = %8843
  br label %8871

8871:                                             ; preds = %8870, %8797
  %8872 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8872, ptr %48, align 4, !tbaa !9
  %8873 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %8873, ptr %49, align 4, !tbaa !9
  %8874 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8874, ptr %50, align 4, !tbaa !9
  %8875 = load ptr, ptr %5, align 8, !tbaa !5
  %8876 = load i32, ptr %48, align 4, !tbaa !9
  %8877 = load i32, ptr %49, align 4, !tbaa !9
  %8878 = load i32, ptr %50, align 4, !tbaa !9
  %8879 = call i32 @w2c_hermes_memmove(ptr noundef %8875, i32 noundef %8876, i32 noundef %8877, i32 noundef %8878)
  store i32 %8879, ptr %48, align 4, !tbaa !9
  br label %8880

8880:                                             ; preds = %8871, %8869
  %8881 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8881, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %8882 = load ptr, ptr %5, align 8, !tbaa !5
  %8883 = getelementptr inbounds %struct.w2c_hermes, ptr %8882, i32 0, i32 6
  %8884 = load i32, ptr %48, align 4, !tbaa !9
  %8885 = zext i32 %8884 to i64
  %8886 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %8883, i64 noundef %8885, i32 noundef %8886)
  br label %8887

8887:                                             ; preds = %8880, %8765
  %8888 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8888, ptr %48, align 4, !tbaa !9
  %8889 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8889, ptr %49, align 4, !tbaa !9
  store i32 176, ptr %50, align 4, !tbaa !9
  %8890 = load i32, ptr %50, align 4, !tbaa !9
  %8891 = load i32, ptr %49, align 4, !tbaa !9
  %8892 = add i32 %8891, %8890
  store i32 %8892, ptr %49, align 4, !tbaa !9
  store i32 61994, ptr %50, align 4, !tbaa !9
  %8893 = load ptr, ptr %5, align 8, !tbaa !5
  %8894 = load i32, ptr %49, align 4, !tbaa !9
  %8895 = load i32, ptr %50, align 4, !tbaa !9
  %8896 = call i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3A0x3Ainsert0x28unsigned0x20long0x2C0x20char0x20const0x2A0x29(ptr noundef %8893, i32 noundef %8894, i32 noundef %8895)
  store i32 %8896, ptr %49, align 4, !tbaa !9
  %8897 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %8897, ptr %12, align 4, !tbaa !9
  %8898 = load ptr, ptr %5, align 8, !tbaa !5
  %8899 = getelementptr inbounds %struct.w2c_hermes, ptr %8898, i32 0, i32 6
  %8900 = load i32, ptr %49, align 4, !tbaa !9
  %8901 = zext i32 %8900 to i64
  %8902 = add i64 %8901, 8
  %8903 = call i32 @i32_load(ptr noundef %8899, i64 noundef %8902)
  store i32 %8903, ptr %49, align 4, !tbaa !9
  %8904 = load ptr, ptr %5, align 8, !tbaa !5
  %8905 = getelementptr inbounds %struct.w2c_hermes, ptr %8904, i32 0, i32 6
  %8906 = load i32, ptr %48, align 4, !tbaa !9
  %8907 = zext i32 %8906 to i64
  %8908 = add i64 %8907, 200
  %8909 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8905, i64 noundef %8908, i32 noundef %8909)
  %8910 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8910, ptr %48, align 4, !tbaa !9
  %8911 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8911, ptr %49, align 4, !tbaa !9
  %8912 = load ptr, ptr %5, align 8, !tbaa !5
  %8913 = getelementptr inbounds %struct.w2c_hermes, ptr %8912, i32 0, i32 6
  %8914 = load i32, ptr %49, align 4, !tbaa !9
  %8915 = zext i32 %8914 to i64
  %8916 = call i64 @i64_load(ptr noundef %8913, i64 noundef %8915)
  store i64 %8916, ptr %59, align 8, !tbaa !11
  %8917 = load ptr, ptr %5, align 8, !tbaa !5
  %8918 = getelementptr inbounds %struct.w2c_hermes, ptr %8917, i32 0, i32 6
  %8919 = load i32, ptr %48, align 4, !tbaa !9
  %8920 = zext i32 %8919 to i64
  %8921 = add i64 %8920, 192
  %8922 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8918, i64 noundef %8921, i64 noundef %8922)
  %8923 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8923, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %8924 = load ptr, ptr %5, align 8, !tbaa !5
  %8925 = getelementptr inbounds %struct.w2c_hermes, ptr %8924, i32 0, i32 6
  %8926 = load i32, ptr %48, align 4, !tbaa !9
  %8927 = zext i32 %8926 to i64
  %8928 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8925, i64 noundef %8927, i64 noundef %8928)
  %8929 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8929, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %8930 = load ptr, ptr %5, align 8, !tbaa !5
  %8931 = getelementptr inbounds %struct.w2c_hermes, ptr %8930, i32 0, i32 6
  %8932 = load i32, ptr %48, align 4, !tbaa !9
  %8933 = zext i32 %8932 to i64
  %8934 = add i64 %8933, 8
  %8935 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8931, i64 noundef %8934, i32 noundef %8935)
  %8936 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8936, ptr %48, align 4, !tbaa !9
  %8937 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8937, ptr %49, align 4, !tbaa !9
  %8938 = load ptr, ptr %5, align 8, !tbaa !5
  %8939 = getelementptr inbounds %struct.w2c_hermes, ptr %8938, i32 0, i32 6
  %8940 = load i32, ptr %49, align 4, !tbaa !9
  %8941 = zext i32 %8940 to i64
  %8942 = add i64 %8941, 192
  %8943 = call i32 @i32_load(ptr noundef %8939, i64 noundef %8942)
  store i32 %8943, ptr %49, align 4, !tbaa !9
  %8944 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8944, ptr %50, align 4, !tbaa !9
  store i32 192, ptr %51, align 4, !tbaa !9
  %8945 = load i32, ptr %51, align 4, !tbaa !9
  %8946 = load i32, ptr %50, align 4, !tbaa !9
  %8947 = add i32 %8946, %8945
  store i32 %8947, ptr %50, align 4, !tbaa !9
  %8948 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8948, ptr %51, align 4, !tbaa !9
  %8949 = load ptr, ptr %5, align 8, !tbaa !5
  %8950 = getelementptr inbounds %struct.w2c_hermes, ptr %8949, i32 0, i32 6
  %8951 = load i32, ptr %51, align 4, !tbaa !9
  %8952 = zext i32 %8951 to i64
  %8953 = add i64 %8952, 203
  %8954 = call i32 @i32_load8_u(ptr noundef %8950, i64 noundef %8953)
  store i32 %8954, ptr %51, align 4, !tbaa !9
  %8955 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %8955, ptr %12, align 4, !tbaa !9
  %8956 = load i32, ptr %51, align 4, !tbaa !9
  %8957 = trunc i32 %8956 to i8
  %8958 = sext i8 %8957 to i32
  store i32 %8958, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %8959 = load i32, ptr %51, align 4, !tbaa !9
  %8960 = load i32, ptr %52, align 4, !tbaa !9
  %8961 = icmp slt i32 %8959, %8960
  %8962 = zext i1 %8961 to i32
  store i32 %8962, ptr %51, align 4, !tbaa !9
  %8963 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %8963, ptr %19, align 4, !tbaa !9
  %8964 = load i32, ptr %51, align 4, !tbaa !9
  %8965 = icmp ne i32 %8964, 0
  br i1 %8965, label %8966, label %8968

8966:                                             ; preds = %8887
  %8967 = load i32, ptr %49, align 4, !tbaa !9
  br label %8970

8968:                                             ; preds = %8887
  %8969 = load i32, ptr %50, align 4, !tbaa !9
  br label %8970

8970:                                             ; preds = %8968, %8966
  %8971 = phi i32 [ %8967, %8966 ], [ %8969, %8968 ]
  store i32 %8971, ptr %49, align 4, !tbaa !9
  %8972 = load ptr, ptr %5, align 8, !tbaa !5
  %8973 = getelementptr inbounds %struct.w2c_hermes, ptr %8972, i32 0, i32 6
  %8974 = load i32, ptr %48, align 4, !tbaa !9
  %8975 = zext i32 %8974 to i64
  %8976 = add i64 %8975, 112
  %8977 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8973, i64 noundef %8976, i32 noundef %8977)
  %8978 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8978, ptr %48, align 4, !tbaa !9
  %8979 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8979, ptr %49, align 4, !tbaa !9
  %8980 = load ptr, ptr %5, align 8, !tbaa !5
  %8981 = getelementptr inbounds %struct.w2c_hermes, ptr %8980, i32 0, i32 6
  %8982 = load i32, ptr %49, align 4, !tbaa !9
  %8983 = zext i32 %8982 to i64
  %8984 = add i64 %8983, 196
  %8985 = call i32 @i32_load(ptr noundef %8981, i64 noundef %8984)
  store i32 %8985, ptr %49, align 4, !tbaa !9
  %8986 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8986, ptr %50, align 4, !tbaa !9
  %8987 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8987, ptr %51, align 4, !tbaa !9
  %8988 = load i32, ptr %51, align 4, !tbaa !9
  %8989 = icmp ne i32 %8988, 0
  br i1 %8989, label %8990, label %8992

8990:                                             ; preds = %8970
  %8991 = load i32, ptr %49, align 4, !tbaa !9
  br label %8994

8992:                                             ; preds = %8970
  %8993 = load i32, ptr %50, align 4, !tbaa !9
  br label %8994

8994:                                             ; preds = %8992, %8990
  %8995 = phi i32 [ %8991, %8990 ], [ %8993, %8992 ]
  store i32 %8995, ptr %49, align 4, !tbaa !9
  %8996 = load ptr, ptr %5, align 8, !tbaa !5
  %8997 = getelementptr inbounds %struct.w2c_hermes, ptr %8996, i32 0, i32 6
  %8998 = load i32, ptr %48, align 4, !tbaa !9
  %8999 = zext i32 %8998 to i64
  %9000 = add i64 %8999, 116
  %9001 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8997, i64 noundef %9000, i32 noundef %9001)
  %9002 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9002, ptr %48, align 4, !tbaa !9
  %9003 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9003, ptr %49, align 4, !tbaa !9
  %9004 = load ptr, ptr %5, align 8, !tbaa !5
  %9005 = getelementptr inbounds %struct.w2c_hermes, ptr %9004, i32 0, i32 6
  %9006 = load i32, ptr %49, align 4, !tbaa !9
  %9007 = zext i32 %9006 to i64
  %9008 = add i64 %9007, 112
  %9009 = call i64 @i64_load(ptr noundef %9005, i64 noundef %9008)
  store i64 %9009, ptr %59, align 8, !tbaa !11
  %9010 = load ptr, ptr %5, align 8, !tbaa !5
  %9011 = getelementptr inbounds %struct.w2c_hermes, ptr %9010, i32 0, i32 6
  %9012 = load i32, ptr %48, align 4, !tbaa !9
  %9013 = zext i32 %9012 to i64
  %9014 = add i64 %9013, 24
  %9015 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9011, i64 noundef %9014, i64 noundef %9015)
  %9016 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9016, ptr %48, align 4, !tbaa !9
  %9017 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %9017, ptr %49, align 4, !tbaa !9
  %9018 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9018, ptr %50, align 4, !tbaa !9
  %9019 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9019, ptr %51, align 4, !tbaa !9
  store i32 24, ptr %52, align 4, !tbaa !9
  %9020 = load i32, ptr %52, align 4, !tbaa !9
  %9021 = load i32, ptr %51, align 4, !tbaa !9
  %9022 = add i32 %9021, %9020
  store i32 %9022, ptr %51, align 4, !tbaa !9
  %9023 = load ptr, ptr %5, align 8, !tbaa !5
  %9024 = load i32, ptr %50, align 4, !tbaa !9
  %9025 = load i32, ptr %51, align 4, !tbaa !9
  %9026 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateIdentifier0x28llvh0x3A0x3AStringRef0x29(ptr noundef %9023, i32 noundef %9024, i32 noundef %9025)
  store i32 %9026, ptr %50, align 4, !tbaa !9
  %9027 = load ptr, ptr %5, align 8, !tbaa !5
  %9028 = load i32, ptr %48, align 4, !tbaa !9
  %9029 = load i32, ptr %49, align 4, !tbaa !9
  %9030 = load i32, ptr %50, align 4, !tbaa !9
  %9031 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %9027, i32 noundef %9028, i32 noundef %9029, i32 noundef %9030)
  store i32 %9031, ptr %48, align 4, !tbaa !9
  %9032 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9032, ptr %12, align 4, !tbaa !9
  %9033 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9033, ptr %48, align 4, !tbaa !9
  %9034 = load ptr, ptr %5, align 8, !tbaa !5
  %9035 = getelementptr inbounds %struct.w2c_hermes, ptr %9034, i32 0, i32 6
  %9036 = load i32, ptr %48, align 4, !tbaa !9
  %9037 = zext i32 %9036 to i64
  %9038 = add i64 %9037, 203
  %9039 = call i32 @i32_load8_s(ptr noundef %9035, i64 noundef %9038)
  store i32 %9039, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %9040 = load i32, ptr %48, align 4, !tbaa !9
  %9041 = load i32, ptr %49, align 4, !tbaa !9
  %9042 = icmp slt i32 %9040, %9041
  %9043 = zext i1 %9042 to i32
  store i32 %9043, ptr %48, align 4, !tbaa !9
  %9044 = load i32, ptr %48, align 4, !tbaa !9
  %9045 = icmp ne i32 %9044, 0
  br i1 %9045, label %9046, label %9056

9046:                                             ; preds = %8994
  %9047 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9047, ptr %48, align 4, !tbaa !9
  %9048 = load ptr, ptr %5, align 8, !tbaa !5
  %9049 = getelementptr inbounds %struct.w2c_hermes, ptr %9048, i32 0, i32 6
  %9050 = load i32, ptr %48, align 4, !tbaa !9
  %9051 = zext i32 %9050 to i64
  %9052 = add i64 %9051, 192
  %9053 = call i32 @i32_load(ptr noundef %9049, i64 noundef %9052)
  store i32 %9053, ptr %48, align 4, !tbaa !9
  %9054 = load ptr, ptr %5, align 8, !tbaa !5
  %9055 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %9054, i32 noundef %9055)
  br label %9056

9056:                                             ; preds = %9046, %8994
  %9057 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9057, ptr %48, align 4, !tbaa !9
  %9058 = load ptr, ptr %5, align 8, !tbaa !5
  %9059 = getelementptr inbounds %struct.w2c_hermes, ptr %9058, i32 0, i32 6
  %9060 = load i32, ptr %48, align 4, !tbaa !9
  %9061 = zext i32 %9060 to i64
  %9062 = add i64 %9061, 187
  %9063 = call i32 @i32_load8_s(ptr noundef %9059, i64 noundef %9062)
  store i32 %9063, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %9064 = load i32, ptr %48, align 4, !tbaa !9
  %9065 = load i32, ptr %49, align 4, !tbaa !9
  %9066 = icmp sge i32 %9064, %9065
  %9067 = zext i1 %9066 to i32
  store i32 %9067, ptr %48, align 4, !tbaa !9
  %9068 = load i32, ptr %48, align 4, !tbaa !9
  %9069 = icmp ne i32 %9068, 0
  br i1 %9069, label %9070, label %9071

9070:                                             ; preds = %9056
  br label %9081

9071:                                             ; preds = %9056
  %9072 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9072, ptr %48, align 4, !tbaa !9
  %9073 = load ptr, ptr %5, align 8, !tbaa !5
  %9074 = getelementptr inbounds %struct.w2c_hermes, ptr %9073, i32 0, i32 6
  %9075 = load i32, ptr %48, align 4, !tbaa !9
  %9076 = zext i32 %9075 to i64
  %9077 = add i64 %9076, 176
  %9078 = call i32 @i32_load(ptr noundef %9074, i64 noundef %9077)
  store i32 %9078, ptr %48, align 4, !tbaa !9
  %9079 = load ptr, ptr %5, align 8, !tbaa !5
  %9080 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %9079, i32 noundef %9080)
  br label %9081

9081:                                             ; preds = %9071, %9070, %8756
  %9082 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9082, ptr %48, align 4, !tbaa !9
  %9083 = load ptr, ptr %5, align 8, !tbaa !5
  %9084 = getelementptr inbounds %struct.w2c_hermes, ptr %9083, i32 0, i32 6
  %9085 = load i32, ptr %48, align 4, !tbaa !9
  %9086 = zext i32 %9085 to i64
  %9087 = add i64 %9086, 16
  %9088 = call i32 @i32_load(ptr noundef %9084, i64 noundef %9087)
  store i32 %9088, ptr %48, align 4, !tbaa !9
  %9089 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9089, ptr %22, align 4, !tbaa !9
  %9090 = load i32, ptr %48, align 4, !tbaa !9
  %9091 = icmp ne i32 %9090, 0
  %9092 = xor i1 %9091, true
  %9093 = zext i1 %9092 to i32
  store i32 %9093, ptr %48, align 4, !tbaa !9
  %9094 = load i32, ptr %48, align 4, !tbaa !9
  %9095 = icmp ne i32 %9094, 0
  br i1 %9095, label %9096, label %9097

9096:                                             ; preds = %9081
  br label %9421

9097:                                             ; preds = %9081
  %9098 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %9098, ptr %48, align 4, !tbaa !9
  %9099 = load i32, ptr %48, align 4, !tbaa !9
  %9100 = icmp ne i32 %9099, 0
  %9101 = xor i1 %9100, true
  %9102 = zext i1 %9101 to i32
  store i32 %9102, ptr %48, align 4, !tbaa !9
  %9103 = load i32, ptr %48, align 4, !tbaa !9
  %9104 = icmp ne i32 %9103, 0
  br i1 %9104, label %9105, label %9120

9105:                                             ; preds = %9097
  %9106 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9106, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %9107 = load ptr, ptr %5, align 8, !tbaa !5
  %9108 = getelementptr inbounds %struct.w2c_hermes, ptr %9107, i32 0, i32 6
  %9109 = load i32, ptr %48, align 4, !tbaa !9
  %9110 = zext i32 %9109 to i64
  %9111 = add i64 %9110, 184
  %9112 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9108, i64 noundef %9111, i32 noundef %9112)
  %9113 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9113, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %9114 = load ptr, ptr %5, align 8, !tbaa !5
  %9115 = getelementptr inbounds %struct.w2c_hermes, ptr %9114, i32 0, i32 6
  %9116 = load i32, ptr %48, align 4, !tbaa !9
  %9117 = zext i32 %9116 to i64
  %9118 = add i64 %9117, 176
  %9119 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9115, i64 noundef %9118, i64 noundef %9119)
  br label %9227

9120:                                             ; preds = %9097
  %9121 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9121, ptr %48, align 4, !tbaa !9
  store i32 2147483632, ptr %49, align 4, !tbaa !9
  %9122 = load i32, ptr %48, align 4, !tbaa !9
  %9123 = load i32, ptr %49, align 4, !tbaa !9
  %9124 = icmp uge i32 %9122, %9123
  %9125 = zext i1 %9124 to i32
  store i32 %9125, ptr %48, align 4, !tbaa !9
  %9126 = load i32, ptr %48, align 4, !tbaa !9
  %9127 = icmp ne i32 %9126, 0
  br i1 %9127, label %9128, label %9129

9128:                                             ; preds = %9120
  br label %9659

9129:                                             ; preds = %9120
  %9130 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9130, ptr %48, align 4, !tbaa !9
  store i32 11, ptr %49, align 4, !tbaa !9
  %9131 = load i32, ptr %48, align 4, !tbaa !9
  %9132 = load i32, ptr %49, align 4, !tbaa !9
  %9133 = icmp uge i32 %9131, %9132
  %9134 = zext i1 %9133 to i32
  store i32 %9134, ptr %48, align 4, !tbaa !9
  %9135 = load i32, ptr %48, align 4, !tbaa !9
  %9136 = icmp ne i32 %9135, 0
  br i1 %9136, label %9137, label %9183

9137:                                             ; preds = %9129
  %9138 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9138, ptr %48, align 4, !tbaa !9
  store i32 15, ptr %49, align 4, !tbaa !9
  %9139 = load i32, ptr %49, align 4, !tbaa !9
  %9140 = load i32, ptr %48, align 4, !tbaa !9
  %9141 = or i32 %9140, %9139
  store i32 %9141, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %9142 = load i32, ptr %49, align 4, !tbaa !9
  %9143 = load i32, ptr %48, align 4, !tbaa !9
  %9144 = add i32 %9143, %9142
  store i32 %9144, ptr %48, align 4, !tbaa !9
  %9145 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9145, ptr %19, align 4, !tbaa !9
  %9146 = load ptr, ptr %5, align 8, !tbaa !5
  %9147 = load i32, ptr %48, align 4, !tbaa !9
  %9148 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %9146, i32 noundef %9147)
  store i32 %9148, ptr %48, align 4, !tbaa !9
  %9149 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9149, ptr %13, align 4, !tbaa !9
  %9150 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9150, ptr %48, align 4, !tbaa !9
  %9151 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9151, ptr %49, align 4, !tbaa !9
  store i32 -2147483648, ptr %50, align 4, !tbaa !9
  %9152 = load i32, ptr %50, align 4, !tbaa !9
  %9153 = load i32, ptr %49, align 4, !tbaa !9
  %9154 = or i32 %9153, %9152
  store i32 %9154, ptr %49, align 4, !tbaa !9
  %9155 = load ptr, ptr %5, align 8, !tbaa !5
  %9156 = getelementptr inbounds %struct.w2c_hermes, ptr %9155, i32 0, i32 6
  %9157 = load i32, ptr %48, align 4, !tbaa !9
  %9158 = zext i32 %9157 to i64
  %9159 = add i64 %9158, 184
  %9160 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9156, i64 noundef %9159, i32 noundef %9160)
  %9161 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9161, ptr %48, align 4, !tbaa !9
  %9162 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9162, ptr %49, align 4, !tbaa !9
  %9163 = load ptr, ptr %5, align 8, !tbaa !5
  %9164 = getelementptr inbounds %struct.w2c_hermes, ptr %9163, i32 0, i32 6
  %9165 = load i32, ptr %48, align 4, !tbaa !9
  %9166 = zext i32 %9165 to i64
  %9167 = add i64 %9166, 176
  %9168 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9164, i64 noundef %9167, i32 noundef %9168)
  %9169 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9169, ptr %48, align 4, !tbaa !9
  %9170 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9170, ptr %49, align 4, !tbaa !9
  %9171 = load ptr, ptr %5, align 8, !tbaa !5
  %9172 = getelementptr inbounds %struct.w2c_hermes, ptr %9171, i32 0, i32 6
  %9173 = load i32, ptr %48, align 4, !tbaa !9
  %9174 = zext i32 %9173 to i64
  %9175 = add i64 %9174, 180
  %9176 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9172, i64 noundef %9175, i32 noundef %9176)
  %9177 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9177, ptr %48, align 4, !tbaa !9
  %9178 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9178, ptr %49, align 4, !tbaa !9
  %9179 = load i32, ptr %49, align 4, !tbaa !9
  %9180 = load i32, ptr %48, align 4, !tbaa !9
  %9181 = add i32 %9180, %9179
  store i32 %9181, ptr %48, align 4, !tbaa !9
  %9182 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9182, ptr %19, align 4, !tbaa !9
  br label %9211

9183:                                             ; preds = %9129
  %9184 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9184, ptr %48, align 4, !tbaa !9
  %9185 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9185, ptr %49, align 4, !tbaa !9
  %9186 = load ptr, ptr %5, align 8, !tbaa !5
  %9187 = getelementptr inbounds %struct.w2c_hermes, ptr %9186, i32 0, i32 6
  %9188 = load i32, ptr %48, align 4, !tbaa !9
  %9189 = zext i32 %9188 to i64
  %9190 = add i64 %9189, 187
  %9191 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %9187, i64 noundef %9190, i32 noundef %9191)
  %9192 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9192, ptr %48, align 4, !tbaa !9
  store i32 176, ptr %49, align 4, !tbaa !9
  %9193 = load i32, ptr %49, align 4, !tbaa !9
  %9194 = load i32, ptr %48, align 4, !tbaa !9
  %9195 = add i32 %9194, %9193
  store i32 %9195, ptr %48, align 4, !tbaa !9
  %9196 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9196, ptr %13, align 4, !tbaa !9
  %9197 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9197, ptr %49, align 4, !tbaa !9
  %9198 = load i32, ptr %49, align 4, !tbaa !9
  %9199 = load i32, ptr %48, align 4, !tbaa !9
  %9200 = add i32 %9199, %9198
  store i32 %9200, ptr %48, align 4, !tbaa !9
  %9201 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9201, ptr %19, align 4, !tbaa !9
  %9202 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9202, ptr %48, align 4, !tbaa !9
  %9203 = load i32, ptr %48, align 4, !tbaa !9
  %9204 = icmp ne i32 %9203, 0
  %9205 = xor i1 %9204, true
  %9206 = zext i1 %9205 to i32
  store i32 %9206, ptr %48, align 4, !tbaa !9
  %9207 = load i32, ptr %48, align 4, !tbaa !9
  %9208 = icmp ne i32 %9207, 0
  br i1 %9208, label %9209, label %9210

9209:                                             ; preds = %9183
  br label %9220

9210:                                             ; preds = %9183
  br label %9211

9211:                                             ; preds = %9210, %9137
  %9212 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9212, ptr %48, align 4, !tbaa !9
  %9213 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %9213, ptr %49, align 4, !tbaa !9
  %9214 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9214, ptr %50, align 4, !tbaa !9
  %9215 = load ptr, ptr %5, align 8, !tbaa !5
  %9216 = load i32, ptr %48, align 4, !tbaa !9
  %9217 = load i32, ptr %49, align 4, !tbaa !9
  %9218 = load i32, ptr %50, align 4, !tbaa !9
  %9219 = call i32 @w2c_hermes_memmove(ptr noundef %9215, i32 noundef %9216, i32 noundef %9217, i32 noundef %9218)
  store i32 %9219, ptr %48, align 4, !tbaa !9
  br label %9220

9220:                                             ; preds = %9211, %9209
  %9221 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9221, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %9222 = load ptr, ptr %5, align 8, !tbaa !5
  %9223 = getelementptr inbounds %struct.w2c_hermes, ptr %9222, i32 0, i32 6
  %9224 = load i32, ptr %48, align 4, !tbaa !9
  %9225 = zext i32 %9224 to i64
  %9226 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %9223, i64 noundef %9225, i32 noundef %9226)
  br label %9227

9227:                                             ; preds = %9220, %9105
  %9228 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9228, ptr %48, align 4, !tbaa !9
  %9229 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9229, ptr %49, align 4, !tbaa !9
  store i32 176, ptr %50, align 4, !tbaa !9
  %9230 = load i32, ptr %50, align 4, !tbaa !9
  %9231 = load i32, ptr %49, align 4, !tbaa !9
  %9232 = add i32 %9231, %9230
  store i32 %9232, ptr %49, align 4, !tbaa !9
  store i32 61989, ptr %50, align 4, !tbaa !9
  %9233 = load ptr, ptr %5, align 8, !tbaa !5
  %9234 = load i32, ptr %49, align 4, !tbaa !9
  %9235 = load i32, ptr %50, align 4, !tbaa !9
  %9236 = call i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3A0x3Ainsert0x28unsigned0x20long0x2C0x20char0x20const0x2A0x29(ptr noundef %9233, i32 noundef %9234, i32 noundef %9235)
  store i32 %9236, ptr %49, align 4, !tbaa !9
  %9237 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %9237, ptr %13, align 4, !tbaa !9
  %9238 = load ptr, ptr %5, align 8, !tbaa !5
  %9239 = getelementptr inbounds %struct.w2c_hermes, ptr %9238, i32 0, i32 6
  %9240 = load i32, ptr %49, align 4, !tbaa !9
  %9241 = zext i32 %9240 to i64
  %9242 = add i64 %9241, 8
  %9243 = call i32 @i32_load(ptr noundef %9239, i64 noundef %9242)
  store i32 %9243, ptr %49, align 4, !tbaa !9
  %9244 = load ptr, ptr %5, align 8, !tbaa !5
  %9245 = getelementptr inbounds %struct.w2c_hermes, ptr %9244, i32 0, i32 6
  %9246 = load i32, ptr %48, align 4, !tbaa !9
  %9247 = zext i32 %9246 to i64
  %9248 = add i64 %9247, 200
  %9249 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9245, i64 noundef %9248, i32 noundef %9249)
  %9250 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9250, ptr %48, align 4, !tbaa !9
  %9251 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9251, ptr %49, align 4, !tbaa !9
  %9252 = load ptr, ptr %5, align 8, !tbaa !5
  %9253 = getelementptr inbounds %struct.w2c_hermes, ptr %9252, i32 0, i32 6
  %9254 = load i32, ptr %49, align 4, !tbaa !9
  %9255 = zext i32 %9254 to i64
  %9256 = call i64 @i64_load(ptr noundef %9253, i64 noundef %9255)
  store i64 %9256, ptr %59, align 8, !tbaa !11
  %9257 = load ptr, ptr %5, align 8, !tbaa !5
  %9258 = getelementptr inbounds %struct.w2c_hermes, ptr %9257, i32 0, i32 6
  %9259 = load i32, ptr %48, align 4, !tbaa !9
  %9260 = zext i32 %9259 to i64
  %9261 = add i64 %9260, 192
  %9262 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9258, i64 noundef %9261, i64 noundef %9262)
  %9263 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9263, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %9264 = load ptr, ptr %5, align 8, !tbaa !5
  %9265 = getelementptr inbounds %struct.w2c_hermes, ptr %9264, i32 0, i32 6
  %9266 = load i32, ptr %48, align 4, !tbaa !9
  %9267 = zext i32 %9266 to i64
  %9268 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9265, i64 noundef %9267, i64 noundef %9268)
  %9269 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9269, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %9270 = load ptr, ptr %5, align 8, !tbaa !5
  %9271 = getelementptr inbounds %struct.w2c_hermes, ptr %9270, i32 0, i32 6
  %9272 = load i32, ptr %48, align 4, !tbaa !9
  %9273 = zext i32 %9272 to i64
  %9274 = add i64 %9273, 8
  %9275 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9271, i64 noundef %9274, i32 noundef %9275)
  %9276 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9276, ptr %48, align 4, !tbaa !9
  %9277 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9277, ptr %49, align 4, !tbaa !9
  %9278 = load ptr, ptr %5, align 8, !tbaa !5
  %9279 = getelementptr inbounds %struct.w2c_hermes, ptr %9278, i32 0, i32 6
  %9280 = load i32, ptr %49, align 4, !tbaa !9
  %9281 = zext i32 %9280 to i64
  %9282 = add i64 %9281, 192
  %9283 = call i32 @i32_load(ptr noundef %9279, i64 noundef %9282)
  store i32 %9283, ptr %49, align 4, !tbaa !9
  %9284 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9284, ptr %50, align 4, !tbaa !9
  store i32 192, ptr %51, align 4, !tbaa !9
  %9285 = load i32, ptr %51, align 4, !tbaa !9
  %9286 = load i32, ptr %50, align 4, !tbaa !9
  %9287 = add i32 %9286, %9285
  store i32 %9287, ptr %50, align 4, !tbaa !9
  %9288 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9288, ptr %51, align 4, !tbaa !9
  %9289 = load ptr, ptr %5, align 8, !tbaa !5
  %9290 = getelementptr inbounds %struct.w2c_hermes, ptr %9289, i32 0, i32 6
  %9291 = load i32, ptr %51, align 4, !tbaa !9
  %9292 = zext i32 %9291 to i64
  %9293 = add i64 %9292, 203
  %9294 = call i32 @i32_load8_u(ptr noundef %9290, i64 noundef %9293)
  store i32 %9294, ptr %51, align 4, !tbaa !9
  %9295 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %9295, ptr %13, align 4, !tbaa !9
  %9296 = load i32, ptr %51, align 4, !tbaa !9
  %9297 = trunc i32 %9296 to i8
  %9298 = sext i8 %9297 to i32
  store i32 %9298, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %9299 = load i32, ptr %51, align 4, !tbaa !9
  %9300 = load i32, ptr %52, align 4, !tbaa !9
  %9301 = icmp slt i32 %9299, %9300
  %9302 = zext i1 %9301 to i32
  store i32 %9302, ptr %51, align 4, !tbaa !9
  %9303 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %9303, ptr %19, align 4, !tbaa !9
  %9304 = load i32, ptr %51, align 4, !tbaa !9
  %9305 = icmp ne i32 %9304, 0
  br i1 %9305, label %9306, label %9308

9306:                                             ; preds = %9227
  %9307 = load i32, ptr %49, align 4, !tbaa !9
  br label %9310

9308:                                             ; preds = %9227
  %9309 = load i32, ptr %50, align 4, !tbaa !9
  br label %9310

9310:                                             ; preds = %9308, %9306
  %9311 = phi i32 [ %9307, %9306 ], [ %9309, %9308 ]
  store i32 %9311, ptr %49, align 4, !tbaa !9
  %9312 = load ptr, ptr %5, align 8, !tbaa !5
  %9313 = getelementptr inbounds %struct.w2c_hermes, ptr %9312, i32 0, i32 6
  %9314 = load i32, ptr %48, align 4, !tbaa !9
  %9315 = zext i32 %9314 to i64
  %9316 = add i64 %9315, 104
  %9317 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9313, i64 noundef %9316, i32 noundef %9317)
  %9318 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9318, ptr %48, align 4, !tbaa !9
  %9319 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9319, ptr %49, align 4, !tbaa !9
  %9320 = load ptr, ptr %5, align 8, !tbaa !5
  %9321 = getelementptr inbounds %struct.w2c_hermes, ptr %9320, i32 0, i32 6
  %9322 = load i32, ptr %49, align 4, !tbaa !9
  %9323 = zext i32 %9322 to i64
  %9324 = add i64 %9323, 196
  %9325 = call i32 @i32_load(ptr noundef %9321, i64 noundef %9324)
  store i32 %9325, ptr %49, align 4, !tbaa !9
  %9326 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9326, ptr %50, align 4, !tbaa !9
  %9327 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9327, ptr %51, align 4, !tbaa !9
  %9328 = load i32, ptr %51, align 4, !tbaa !9
  %9329 = icmp ne i32 %9328, 0
  br i1 %9329, label %9330, label %9332

9330:                                             ; preds = %9310
  %9331 = load i32, ptr %49, align 4, !tbaa !9
  br label %9334

9332:                                             ; preds = %9310
  %9333 = load i32, ptr %50, align 4, !tbaa !9
  br label %9334

9334:                                             ; preds = %9332, %9330
  %9335 = phi i32 [ %9331, %9330 ], [ %9333, %9332 ]
  store i32 %9335, ptr %49, align 4, !tbaa !9
  %9336 = load ptr, ptr %5, align 8, !tbaa !5
  %9337 = getelementptr inbounds %struct.w2c_hermes, ptr %9336, i32 0, i32 6
  %9338 = load i32, ptr %48, align 4, !tbaa !9
  %9339 = zext i32 %9338 to i64
  %9340 = add i64 %9339, 108
  %9341 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9337, i64 noundef %9340, i32 noundef %9341)
  %9342 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9342, ptr %48, align 4, !tbaa !9
  %9343 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9343, ptr %49, align 4, !tbaa !9
  %9344 = load ptr, ptr %5, align 8, !tbaa !5
  %9345 = getelementptr inbounds %struct.w2c_hermes, ptr %9344, i32 0, i32 6
  %9346 = load i32, ptr %49, align 4, !tbaa !9
  %9347 = zext i32 %9346 to i64
  %9348 = add i64 %9347, 104
  %9349 = call i64 @i64_load(ptr noundef %9345, i64 noundef %9348)
  store i64 %9349, ptr %59, align 8, !tbaa !11
  %9350 = load ptr, ptr %5, align 8, !tbaa !5
  %9351 = getelementptr inbounds %struct.w2c_hermes, ptr %9350, i32 0, i32 6
  %9352 = load i32, ptr %48, align 4, !tbaa !9
  %9353 = zext i32 %9352 to i64
  %9354 = add i64 %9353, 16
  %9355 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9351, i64 noundef %9354, i64 noundef %9355)
  %9356 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9356, ptr %48, align 4, !tbaa !9
  %9357 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %9357, ptr %49, align 4, !tbaa !9
  %9358 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9358, ptr %50, align 4, !tbaa !9
  %9359 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9359, ptr %51, align 4, !tbaa !9
  store i32 16, ptr %52, align 4, !tbaa !9
  %9360 = load i32, ptr %52, align 4, !tbaa !9
  %9361 = load i32, ptr %51, align 4, !tbaa !9
  %9362 = add i32 %9361, %9360
  store i32 %9362, ptr %51, align 4, !tbaa !9
  %9363 = load ptr, ptr %5, align 8, !tbaa !5
  %9364 = load i32, ptr %50, align 4, !tbaa !9
  %9365 = load i32, ptr %51, align 4, !tbaa !9
  %9366 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateIdentifier0x28llvh0x3A0x3AStringRef0x29(ptr noundef %9363, i32 noundef %9364, i32 noundef %9365)
  store i32 %9366, ptr %50, align 4, !tbaa !9
  %9367 = load ptr, ptr %5, align 8, !tbaa !5
  %9368 = load i32, ptr %48, align 4, !tbaa !9
  %9369 = load i32, ptr %49, align 4, !tbaa !9
  %9370 = load i32, ptr %50, align 4, !tbaa !9
  %9371 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %9367, i32 noundef %9368, i32 noundef %9369, i32 noundef %9370)
  store i32 %9371, ptr %48, align 4, !tbaa !9
  %9372 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9372, ptr %13, align 4, !tbaa !9
  %9373 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9373, ptr %48, align 4, !tbaa !9
  %9374 = load ptr, ptr %5, align 8, !tbaa !5
  %9375 = getelementptr inbounds %struct.w2c_hermes, ptr %9374, i32 0, i32 6
  %9376 = load i32, ptr %48, align 4, !tbaa !9
  %9377 = zext i32 %9376 to i64
  %9378 = add i64 %9377, 203
  %9379 = call i32 @i32_load8_s(ptr noundef %9375, i64 noundef %9378)
  store i32 %9379, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %9380 = load i32, ptr %48, align 4, !tbaa !9
  %9381 = load i32, ptr %49, align 4, !tbaa !9
  %9382 = icmp slt i32 %9380, %9381
  %9383 = zext i1 %9382 to i32
  store i32 %9383, ptr %48, align 4, !tbaa !9
  %9384 = load i32, ptr %48, align 4, !tbaa !9
  %9385 = icmp ne i32 %9384, 0
  br i1 %9385, label %9386, label %9396

9386:                                             ; preds = %9334
  %9387 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9387, ptr %48, align 4, !tbaa !9
  %9388 = load ptr, ptr %5, align 8, !tbaa !5
  %9389 = getelementptr inbounds %struct.w2c_hermes, ptr %9388, i32 0, i32 6
  %9390 = load i32, ptr %48, align 4, !tbaa !9
  %9391 = zext i32 %9390 to i64
  %9392 = add i64 %9391, 192
  %9393 = call i32 @i32_load(ptr noundef %9389, i64 noundef %9392)
  store i32 %9393, ptr %48, align 4, !tbaa !9
  %9394 = load ptr, ptr %5, align 8, !tbaa !5
  %9395 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %9394, i32 noundef %9395)
  br label %9396

9396:                                             ; preds = %9386, %9334
  %9397 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9397, ptr %48, align 4, !tbaa !9
  %9398 = load ptr, ptr %5, align 8, !tbaa !5
  %9399 = getelementptr inbounds %struct.w2c_hermes, ptr %9398, i32 0, i32 6
  %9400 = load i32, ptr %48, align 4, !tbaa !9
  %9401 = zext i32 %9400 to i64
  %9402 = add i64 %9401, 187
  %9403 = call i32 @i32_load8_s(ptr noundef %9399, i64 noundef %9402)
  store i32 %9403, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %9404 = load i32, ptr %48, align 4, !tbaa !9
  %9405 = load i32, ptr %49, align 4, !tbaa !9
  %9406 = icmp sge i32 %9404, %9405
  %9407 = zext i1 %9406 to i32
  store i32 %9407, ptr %48, align 4, !tbaa !9
  %9408 = load i32, ptr %48, align 4, !tbaa !9
  %9409 = icmp ne i32 %9408, 0
  br i1 %9409, label %9410, label %9411

9410:                                             ; preds = %9396
  br label %9421

9411:                                             ; preds = %9396
  %9412 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9412, ptr %48, align 4, !tbaa !9
  %9413 = load ptr, ptr %5, align 8, !tbaa !5
  %9414 = getelementptr inbounds %struct.w2c_hermes, ptr %9413, i32 0, i32 6
  %9415 = load i32, ptr %48, align 4, !tbaa !9
  %9416 = zext i32 %9415 to i64
  %9417 = add i64 %9416, 176
  %9418 = call i32 @i32_load(ptr noundef %9414, i64 noundef %9417)
  store i32 %9418, ptr %48, align 4, !tbaa !9
  %9419 = load ptr, ptr %5, align 8, !tbaa !5
  %9420 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %9419, i32 noundef %9420)
  br label %9421

9421:                                             ; preds = %9411, %9410, %9096
  %9422 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9422, ptr %48, align 4, !tbaa !9
  %9423 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9423, ptr %49, align 4, !tbaa !9
  %9424 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9424, ptr %50, align 4, !tbaa !9
  %9425 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9425, ptr %51, align 4, !tbaa !9
  %9426 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9426, ptr %52, align 4, !tbaa !9
  %9427 = load ptr, ptr %5, align 8, !tbaa !5
  %9428 = load i32, ptr %48, align 4, !tbaa !9
  %9429 = load i32, ptr %49, align 4, !tbaa !9
  %9430 = load i32, ptr %50, align 4, !tbaa !9
  %9431 = load i32, ptr %51, align 4, !tbaa !9
  %9432 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreGetterSetterInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %9427, i32 noundef %9428, i32 noundef %9429, i32 noundef %9430, i32 noundef %9431, i32 noundef %9432)
  %9433 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9433, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %9434 = load ptr, ptr %5, align 8, !tbaa !5
  %9435 = getelementptr inbounds %struct.w2c_hermes, ptr %9434, i32 0, i32 6
  %9436 = load i32, ptr %48, align 4, !tbaa !9
  %9437 = zext i32 %9436 to i64
  %9438 = add i64 %9437, 4
  %9439 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9435, i64 noundef %9438, i32 noundef %9439)
  br label %9641

9440:                                             ; preds = %8657, %8635
  %9441 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %9441, ptr %48, align 4, !tbaa !9
  %9442 = load ptr, ptr %5, align 8, !tbaa !5
  %9443 = getelementptr inbounds %struct.w2c_hermes, ptr %9442, i32 0, i32 6
  %9444 = load i32, ptr %48, align 4, !tbaa !9
  %9445 = zext i32 %9444 to i64
  %9446 = add i64 %9445, 32
  %9447 = call i32 @i32_load(ptr noundef %9443, i64 noundef %9446)
  store i32 %9447, ptr %48, align 4, !tbaa !9
  %9448 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9448, ptr %12, align 4, !tbaa !9
  %9449 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9449, ptr %48, align 4, !tbaa !9
  %9450 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9450, ptr %49, align 4, !tbaa !9
  %9451 = load ptr, ptr %5, align 8, !tbaa !5
  %9452 = getelementptr inbounds %struct.w2c_hermes, ptr %9451, i32 0, i32 6
  %9453 = load i32, ptr %48, align 4, !tbaa !9
  %9454 = zext i32 %9453 to i64
  %9455 = add i64 %9454, 100
  %9456 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9452, i64 noundef %9455, i32 noundef %9456)
  %9457 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9457, ptr %48, align 4, !tbaa !9
  %9458 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %9458, ptr %49, align 4, !tbaa !9
  %9459 = load ptr, ptr %5, align 8, !tbaa !5
  %9460 = getelementptr inbounds %struct.w2c_hermes, ptr %9459, i32 0, i32 6
  %9461 = load i32, ptr %48, align 4, !tbaa !9
  %9462 = zext i32 %9461 to i64
  %9463 = add i64 %9462, 96
  %9464 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9460, i64 noundef %9463, i32 noundef %9464)
  %9465 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9465, ptr %48, align 4, !tbaa !9
  %9466 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9466, ptr %49, align 4, !tbaa !9
  %9467 = load ptr, ptr %5, align 8, !tbaa !5
  %9468 = getelementptr inbounds %struct.w2c_hermes, ptr %9467, i32 0, i32 6
  %9469 = load i32, ptr %49, align 4, !tbaa !9
  %9470 = zext i32 %9469 to i64
  %9471 = add i64 %9470, 96
  %9472 = call i64 @i64_load(ptr noundef %9468, i64 noundef %9471)
  store i64 %9472, ptr %59, align 8, !tbaa !11
  %9473 = load ptr, ptr %5, align 8, !tbaa !5
  %9474 = getelementptr inbounds %struct.w2c_hermes, ptr %9473, i32 0, i32 6
  %9475 = load i32, ptr %48, align 4, !tbaa !9
  %9476 = zext i32 %9475 to i64
  %9477 = add i64 %9476, 32
  %9478 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9474, i64 noundef %9477, i64 noundef %9478)
  %9479 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9479, ptr %48, align 4, !tbaa !9
  %9480 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9480, ptr %49, align 4, !tbaa !9
  %9481 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9481, ptr %50, align 4, !tbaa !9
  %9482 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9482, ptr %51, align 4, !tbaa !9
  store i32 32, ptr %52, align 4, !tbaa !9
  %9483 = load i32, ptr %52, align 4, !tbaa !9
  %9484 = load i32, ptr %51, align 4, !tbaa !9
  %9485 = add i32 %9484, %9483
  store i32 %9485, ptr %51, align 4, !tbaa !9
  %9486 = load ptr, ptr %5, align 8, !tbaa !5
  %9487 = load i32, ptr %50, align 4, !tbaa !9
  %9488 = load i32, ptr %51, align 4, !tbaa !9
  %9489 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateIdentifier0x28llvh0x3A0x3AStringRef0x29(ptr noundef %9486, i32 noundef %9487, i32 noundef %9488)
  store i32 %9489, ptr %50, align 4, !tbaa !9
  %9490 = load ptr, ptr %5, align 8, !tbaa !5
  %9491 = load i32, ptr %48, align 4, !tbaa !9
  %9492 = load i32, ptr %49, align 4, !tbaa !9
  %9493 = load i32, ptr %50, align 4, !tbaa !9
  %9494 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %9490, i32 noundef %9491, i32 noundef %9492, i32 noundef %9493)
  store i32 %9494, ptr %48, align 4, !tbaa !9
  %9495 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9495, ptr %12, align 4, !tbaa !9
  %9496 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9496, ptr %48, align 4, !tbaa !9
  store i32 288, ptr %49, align 4, !tbaa !9
  %9497 = load i32, ptr %49, align 4, !tbaa !9
  %9498 = load i32, ptr %48, align 4, !tbaa !9
  %9499 = add i32 %9498, %9497
  store i32 %9499, ptr %48, align 4, !tbaa !9
  %9500 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %9500, ptr %59, align 8, !tbaa !11
  %9501 = load ptr, ptr %5, align 8, !tbaa !5
  %9502 = load i32, ptr %48, align 4, !tbaa !9
  %9503 = load i64, ptr %59, align 8, !tbaa !11
  %9504 = call i32 @w2c_hermes_llvh0x3A0x3AStringMap0x3Chermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenObjectExpr0x28hermes0x3A0x3AESTree0x3A0x3AObjectExpressionNode0x2A0x290x3A0x3APropertyValue0x2C0x20llvh0x3A0x3AMallocAllocator0x3E0x3A0x3Aoperator0x5B0x5D0x28llvh0x3A0x3AStringRef0x29(ptr noundef %9501, i32 noundef %9502, i64 noundef %9503)
  store i32 %9504, ptr %48, align 4, !tbaa !9
  %9505 = load ptr, ptr %5, align 8, !tbaa !5
  %9506 = getelementptr inbounds %struct.w2c_hermes, ptr %9505, i32 0, i32 6
  %9507 = load i32, ptr %48, align 4, !tbaa !9
  %9508 = zext i32 %9507 to i64
  %9509 = add i64 %9508, 8
  %9510 = call i32 @i32_load(ptr noundef %9506, i64 noundef %9509)
  store i32 %9510, ptr %48, align 4, !tbaa !9
  %9511 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %9511, ptr %49, align 4, !tbaa !9
  %9512 = load ptr, ptr %5, align 8, !tbaa !5
  %9513 = getelementptr inbounds %struct.w2c_hermes, ptr %9512, i32 0, i32 6
  %9514 = load i32, ptr %49, align 4, !tbaa !9
  %9515 = zext i32 %9514 to i64
  %9516 = add i64 %9515, 32
  %9517 = call i32 @i32_load(ptr noundef %9513, i64 noundef %9516)
  store i32 %9517, ptr %49, align 4, !tbaa !9
  %9518 = load i32, ptr %48, align 4, !tbaa !9
  %9519 = load i32, ptr %49, align 4, !tbaa !9
  %9520 = icmp eq i32 %9518, %9519
  %9521 = zext i1 %9520 to i32
  store i32 %9521, ptr %48, align 4, !tbaa !9
  %9522 = load i32, ptr %48, align 4, !tbaa !9
  %9523 = icmp ne i32 %9522, 0
  br i1 %9523, label %9524, label %9585

9524:                                             ; preds = %9440
  %9525 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9525, ptr %48, align 4, !tbaa !9
  store i32 255, ptr %49, align 4, !tbaa !9
  %9526 = load i32, ptr %49, align 4, !tbaa !9
  %9527 = load i32, ptr %48, align 4, !tbaa !9
  %9528 = and i32 %9527, %9526
  store i32 %9528, ptr %48, align 4, !tbaa !9
  %9529 = load i32, ptr %48, align 4, !tbaa !9
  %9530 = icmp ne i32 %9529, 0
  %9531 = xor i1 %9530, true
  %9532 = zext i1 %9531 to i32
  store i32 %9532, ptr %48, align 4, !tbaa !9
  %9533 = load i32, ptr %48, align 4, !tbaa !9
  %9534 = icmp ne i32 %9533, 0
  br i1 %9534, label %9535, label %9551

9535:                                             ; preds = %9524
  %9536 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9536, ptr %48, align 4, !tbaa !9
  %9537 = load ptr, ptr %5, align 8, !tbaa !5
  %9538 = getelementptr inbounds %struct.w2c_hermes, ptr %9537, i32 0, i32 6
  %9539 = load i32, ptr %48, align 4, !tbaa !9
  %9540 = zext i32 %9539 to i64
  %9541 = add i64 %9540, 4
  %9542 = call i32 @i32_load(ptr noundef %9538, i64 noundef %9541)
  store i32 %9542, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %9543 = load i32, ptr %48, align 4, !tbaa !9
  %9544 = load i32, ptr %49, align 4, !tbaa !9
  %9545 = icmp ne i32 %9543, %9544
  %9546 = zext i1 %9545 to i32
  store i32 %9546, ptr %48, align 4, !tbaa !9
  %9547 = load i32, ptr %48, align 4, !tbaa !9
  %9548 = icmp ne i32 %9547, 0
  br i1 %9548, label %9549, label %9550

9549:                                             ; preds = %9535
  br label %9568

9550:                                             ; preds = %9535
  br label %9551

9551:                                             ; preds = %9550, %9524
  %9552 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9552, ptr %48, align 4, !tbaa !9
  %9553 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9553, ptr %49, align 4, !tbaa !9
  %9554 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9554, ptr %50, align 4, !tbaa !9
  %9555 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9555, ptr %51, align 4, !tbaa !9
  %9556 = load ptr, ptr %5, align 8, !tbaa !5
  %9557 = load i32, ptr %48, align 4, !tbaa !9
  %9558 = load i32, ptr %49, align 4, !tbaa !9
  %9559 = load i32, ptr %50, align 4, !tbaa !9
  %9560 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %9556, i32 noundef %9557, i32 noundef %9558, i32 noundef %9559, i32 noundef %9560)
  %9561 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9561, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %9562 = load ptr, ptr %5, align 8, !tbaa !5
  %9563 = getelementptr inbounds %struct.w2c_hermes, ptr %9562, i32 0, i32 6
  %9564 = load i32, ptr %48, align 4, !tbaa !9
  %9565 = zext i32 %9564 to i64
  %9566 = add i64 %9565, 4
  %9567 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9563, i64 noundef %9566, i32 noundef %9567)
  br label %9641

9568:                                             ; preds = %9549
  %9569 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9569, ptr %48, align 4, !tbaa !9
  %9570 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9570, ptr %49, align 4, !tbaa !9
  %9571 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9571, ptr %50, align 4, !tbaa !9
  %9572 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9572, ptr %51, align 4, !tbaa !9
  %9573 = load ptr, ptr %5, align 8, !tbaa !5
  %9574 = load i32, ptr %48, align 4, !tbaa !9
  %9575 = load i32, ptr %49, align 4, !tbaa !9
  %9576 = load i32, ptr %50, align 4, !tbaa !9
  %9577 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreNewOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %9573, i32 noundef %9574, i32 noundef %9575, i32 noundef %9576, i32 noundef %9577)
  %9578 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9578, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %9579 = load ptr, ptr %5, align 8, !tbaa !5
  %9580 = getelementptr inbounds %struct.w2c_hermes, ptr %9579, i32 0, i32 6
  %9581 = load i32, ptr %48, align 4, !tbaa !9
  %9582 = zext i32 %9581 to i64
  %9583 = add i64 %9582, 4
  %9584 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9580, i64 noundef %9583, i32 noundef %9584)
  br label %9641

9585:                                             ; preds = %9440
  %9586 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9586, ptr %48, align 4, !tbaa !9
  %9587 = load ptr, ptr %5, align 8, !tbaa !5
  %9588 = getelementptr inbounds %struct.w2c_hermes, ptr %9587, i32 0, i32 6
  %9589 = load i32, ptr %48, align 4, !tbaa !9
  %9590 = zext i32 %9589 to i64
  %9591 = add i64 %9590, 4
  %9592 = call i32 @i32_load(ptr noundef %9588, i64 noundef %9591)
  store i32 %9592, ptr %48, align 4, !tbaa !9
  %9593 = load i32, ptr %48, align 4, !tbaa !9
  %9594 = icmp ne i32 %9593, 0
  br i1 %9594, label %9595, label %9596

9595:                                             ; preds = %9585
  br label %9641

9596:                                             ; preds = %9585
  %9597 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9597, ptr %48, align 4, !tbaa !9
  %9598 = load ptr, ptr %5, align 8, !tbaa !5
  %9599 = getelementptr inbounds %struct.w2c_hermes, ptr %9598, i32 0, i32 6
  %9600 = load i32, ptr %48, align 4, !tbaa !9
  %9601 = zext i32 %9600 to i64
  %9602 = call i32 @i32_load(ptr noundef %9599, i64 noundef %9601)
  store i32 %9602, ptr %48, align 4, !tbaa !9
  store i32 296, ptr %49, align 4, !tbaa !9
  %9603 = load i32, ptr %49, align 4, !tbaa !9
  %9604 = load i32, ptr %48, align 4, !tbaa !9
  %9605 = add i32 %9604, %9603
  store i32 %9605, ptr %48, align 4, !tbaa !9
  %9606 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9606, ptr %12, align 4, !tbaa !9
  %9607 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9607, ptr %48, align 4, !tbaa !9
  store i32 255, ptr %49, align 4, !tbaa !9
  %9608 = load i32, ptr %49, align 4, !tbaa !9
  %9609 = load i32, ptr %48, align 4, !tbaa !9
  %9610 = and i32 %9609, %9608
  store i32 %9610, ptr %48, align 4, !tbaa !9
  %9611 = load i32, ptr %48, align 4, !tbaa !9
  %9612 = icmp ne i32 %9611, 0
  br i1 %9612, label %9613, label %9623

9613:                                             ; preds = %9596
  %9614 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9614, ptr %48, align 4, !tbaa !9
  %9615 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9615, ptr %49, align 4, !tbaa !9
  %9616 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9616, ptr %50, align 4, !tbaa !9
  %9617 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9617, ptr %51, align 4, !tbaa !9
  %9618 = load ptr, ptr %5, align 8, !tbaa !5
  %9619 = load i32, ptr %48, align 4, !tbaa !9
  %9620 = load i32, ptr %49, align 4, !tbaa !9
  %9621 = load i32, ptr %50, align 4, !tbaa !9
  %9622 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %9618, i32 noundef %9619, i32 noundef %9620, i32 noundef %9621, i32 noundef %9622)
  br label %9633

9623:                                             ; preds = %9596
  %9624 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9624, ptr %48, align 4, !tbaa !9
  %9625 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9625, ptr %49, align 4, !tbaa !9
  %9626 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9626, ptr %50, align 4, !tbaa !9
  %9627 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9627, ptr %51, align 4, !tbaa !9
  %9628 = load ptr, ptr %5, align 8, !tbaa !5
  %9629 = load i32, ptr %48, align 4, !tbaa !9
  %9630 = load i32, ptr %49, align 4, !tbaa !9
  %9631 = load i32, ptr %50, align 4, !tbaa !9
  %9632 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreNewOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %9628, i32 noundef %9629, i32 noundef %9630, i32 noundef %9631, i32 noundef %9632)
  br label %9633

9633:                                             ; preds = %9623, %9613, %8720, %8710
  %9634 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9634, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %9635 = load ptr, ptr %5, align 8, !tbaa !5
  %9636 = getelementptr inbounds %struct.w2c_hermes, ptr %9635, i32 0, i32 6
  %9637 = load i32, ptr %48, align 4, !tbaa !9
  %9638 = zext i32 %9637 to i64
  %9639 = add i64 %9638, 4
  %9640 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9636, i64 noundef %9639, i32 noundef %9640)
  br label %9641

9641:                                             ; preds = %9633, %9595, %9568, %9551, %9421, %8692, %8674, %8533, %8396, %8166, %8145, %8114, %7953
  %9642 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %9642, ptr %48, align 4, !tbaa !9
  %9643 = load ptr, ptr %5, align 8, !tbaa !5
  %9644 = getelementptr inbounds %struct.w2c_hermes, ptr %9643, i32 0, i32 6
  %9645 = load i32, ptr %48, align 4, !tbaa !9
  %9646 = zext i32 %9645 to i64
  %9647 = add i64 %9646, 4
  %9648 = call i32 @i32_load(ptr noundef %9644, i64 noundef %9647)
  store i32 %9648, ptr %48, align 4, !tbaa !9
  %9649 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9649, ptr %9, align 4, !tbaa !9
  %9650 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %9650, ptr %49, align 4, !tbaa !9
  %9651 = load i32, ptr %48, align 4, !tbaa !9
  %9652 = load i32, ptr %49, align 4, !tbaa !9
  %9653 = icmp ne i32 %9651, %9652
  %9654 = zext i1 %9653 to i32
  store i32 %9654, ptr %48, align 4, !tbaa !9
  %9655 = load i32, ptr %48, align 4, !tbaa !9
  %9656 = icmp ne i32 %9655, 0
  br i1 %9656, label %9657, label %9658

9657:                                             ; preds = %9641
  br label %7929

9658:                                             ; preds = %9641
  br label %9661

9659:                                             ; preds = %9128, %8788
  %9660 = load ptr, ptr %5, align 8, !tbaa !5
  call void @w2c_hermes_abort(ptr noundef %9660)
  call void @wasm_rt_trap(i32 noundef 5) #8
  unreachable

9661:                                             ; preds = %9658, %7912
  %9662 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %9662, ptr %48, align 4, !tbaa !9
  %9663 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9663, ptr %49, align 4, !tbaa !9
  %9664 = load ptr, ptr %5, align 8, !tbaa !5
  %9665 = getelementptr inbounds %struct.w2c_hermes, ptr %9664, i32 0, i32 6
  %9666 = load i32, ptr %49, align 4, !tbaa !9
  %9667 = zext i32 %9666 to i64
  %9668 = add i64 %9667, 220
  %9669 = call i32 @i32_load(ptr noundef %9665, i64 noundef %9668)
  store i32 %9669, ptr %49, align 4, !tbaa !9
  %9670 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %9670, ptr %7, align 4, !tbaa !9
  %9671 = load i32, ptr %48, align 4, !tbaa !9
  %9672 = load i32, ptr %49, align 4, !tbaa !9
  %9673 = icmp ne i32 %9671, %9672
  %9674 = zext i1 %9673 to i32
  store i32 %9674, ptr %48, align 4, !tbaa !9
  %9675 = load i32, ptr %48, align 4, !tbaa !9
  %9676 = icmp ne i32 %9675, 0
  br i1 %9676, label %9677, label %9681

9677:                                             ; preds = %9661
  %9678 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9678, ptr %48, align 4, !tbaa !9
  %9679 = load ptr, ptr %5, align 8, !tbaa !5
  %9680 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %9679, i32 noundef %9680)
  br label %9681

9681:                                             ; preds = %9677, %9661
  %9682 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9682, ptr %48, align 4, !tbaa !9
  %9683 = load ptr, ptr %5, align 8, !tbaa !5
  %9684 = getelementptr inbounds %struct.w2c_hermes, ptr %9683, i32 0, i32 6
  %9685 = load i32, ptr %48, align 4, !tbaa !9
  %9686 = zext i32 %9685 to i64
  %9687 = add i64 %9686, 272
  %9688 = call i32 @i32_load(ptr noundef %9684, i64 noundef %9687)
  store i32 %9688, ptr %48, align 4, !tbaa !9
  %9689 = load i32, ptr %48, align 4, !tbaa !9
  %9690 = icmp ne i32 %9689, 0
  %9691 = xor i1 %9690, true
  %9692 = zext i1 %9691 to i32
  store i32 %9692, ptr %48, align 4, !tbaa !9
  %9693 = load i32, ptr %48, align 4, !tbaa !9
  %9694 = icmp ne i32 %9693, 0
  br i1 %9694, label %9695, label %9696

9695:                                             ; preds = %9681
  br label %9765

9696:                                             ; preds = %9681
  %9697 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9697, ptr %48, align 4, !tbaa !9
  %9698 = load ptr, ptr %5, align 8, !tbaa !5
  %9699 = getelementptr inbounds %struct.w2c_hermes, ptr %9698, i32 0, i32 6
  %9700 = load i32, ptr %48, align 4, !tbaa !9
  %9701 = zext i32 %9700 to i64
  %9702 = add i64 %9701, 268
  %9703 = call i32 @i32_load(ptr noundef %9699, i64 noundef %9702)
  store i32 %9703, ptr %48, align 4, !tbaa !9
  %9704 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9704, ptr %7, align 4, !tbaa !9
  %9705 = load i32, ptr %48, align 4, !tbaa !9
  %9706 = icmp ne i32 %9705, 0
  %9707 = xor i1 %9706, true
  %9708 = zext i1 %9707 to i32
  store i32 %9708, ptr %48, align 4, !tbaa !9
  %9709 = load i32, ptr %48, align 4, !tbaa !9
  %9710 = icmp ne i32 %9709, 0
  br i1 %9710, label %9711, label %9712

9711:                                             ; preds = %9696
  br label %9765

9712:                                             ; preds = %9696
  store i32 0, ptr %48, align 4, !tbaa !9
  %9713 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9713, ptr %9, align 4, !tbaa !9
  br label %9714

9714:                                             ; preds = %9763, %9712
  %9715 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9715, ptr %48, align 4, !tbaa !9
  %9716 = load ptr, ptr %5, align 8, !tbaa !5
  %9717 = getelementptr inbounds %struct.w2c_hermes, ptr %9716, i32 0, i32 6
  %9718 = load i32, ptr %48, align 4, !tbaa !9
  %9719 = zext i32 %9718 to i64
  %9720 = add i64 %9719, 264
  %9721 = call i32 @i32_load(ptr noundef %9717, i64 noundef %9720)
  store i32 %9721, ptr %48, align 4, !tbaa !9
  %9722 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %9722, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %9723 = load i32, ptr %50, align 4, !tbaa !9
  %9724 = and i32 %9723, 31
  %9725 = load i32, ptr %49, align 4, !tbaa !9
  %9726 = shl i32 %9725, %9724
  store i32 %9726, ptr %49, align 4, !tbaa !9
  %9727 = load i32, ptr %49, align 4, !tbaa !9
  %9728 = load i32, ptr %48, align 4, !tbaa !9
  %9729 = add i32 %9728, %9727
  store i32 %9729, ptr %48, align 4, !tbaa !9
  %9730 = load ptr, ptr %5, align 8, !tbaa !5
  %9731 = getelementptr inbounds %struct.w2c_hermes, ptr %9730, i32 0, i32 6
  %9732 = load i32, ptr %48, align 4, !tbaa !9
  %9733 = zext i32 %9732 to i64
  %9734 = call i32 @i32_load(ptr noundef %9731, i64 noundef %9733)
  store i32 %9734, ptr %48, align 4, !tbaa !9
  %9735 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9735, ptr %8, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %9736 = load i32, ptr %49, align 4, !tbaa !9
  %9737 = load i32, ptr %48, align 4, !tbaa !9
  %9738 = add i32 %9737, %9736
  store i32 %9738, ptr %48, align 4, !tbaa !9
  %9739 = load i32, ptr %48, align 4, !tbaa !9
  switch i32 %9739, label %9745 [
    i32 0, label %9740
    i32 1, label %9741
    i32 2, label %9742
    i32 3, label %9743
    i32 4, label %9744
  ]

9740:                                             ; preds = %9714
  br label %9750

9741:                                             ; preds = %9714
  br label %9746

9742:                                             ; preds = %9714
  br label %9746

9743:                                             ; preds = %9714
  br label %9746

9744:                                             ; preds = %9714
  br label %9750

9745:                                             ; preds = %9714
  br label %9746

9746:                                             ; preds = %9745, %9743, %9742, %9741
  %9747 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9747, ptr %48, align 4, !tbaa !9
  %9748 = load ptr, ptr %5, align 8, !tbaa !5
  %9749 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %9748, i32 noundef %9749)
  br label %9750

9750:                                             ; preds = %9746, %9744, %9740
  %9751 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %9751, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %9752 = load i32, ptr %49, align 4, !tbaa !9
  %9753 = load i32, ptr %48, align 4, !tbaa !9
  %9754 = add i32 %9753, %9752
  store i32 %9754, ptr %48, align 4, !tbaa !9
  %9755 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9755, ptr %9, align 4, !tbaa !9
  %9756 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9756, ptr %49, align 4, !tbaa !9
  %9757 = load i32, ptr %48, align 4, !tbaa !9
  %9758 = load i32, ptr %49, align 4, !tbaa !9
  %9759 = icmp ne i32 %9757, %9758
  %9760 = zext i1 %9759 to i32
  store i32 %9760, ptr %48, align 4, !tbaa !9
  %9761 = load i32, ptr %48, align 4, !tbaa !9
  %9762 = icmp ne i32 %9761, 0
  br i1 %9762, label %9763, label %9764

9763:                                             ; preds = %9750
  br label %9714

9764:                                             ; preds = %9750
  br label %9765

9765:                                             ; preds = %9764, %9711, %9695
  %9766 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9766, ptr %48, align 4, !tbaa !9
  %9767 = load ptr, ptr %5, align 8, !tbaa !5
  %9768 = getelementptr inbounds %struct.w2c_hermes, ptr %9767, i32 0, i32 6
  %9769 = load i32, ptr %48, align 4, !tbaa !9
  %9770 = zext i32 %9769 to i64
  %9771 = add i64 %9770, 264
  %9772 = call i32 @i32_load(ptr noundef %9768, i64 noundef %9771)
  store i32 %9772, ptr %48, align 4, !tbaa !9
  %9773 = load ptr, ptr %5, align 8, !tbaa !5
  %9774 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %9773, i32 noundef %9774)
  %9775 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9775, ptr %48, align 4, !tbaa !9
  %9776 = load ptr, ptr %5, align 8, !tbaa !5
  %9777 = getelementptr inbounds %struct.w2c_hermes, ptr %9776, i32 0, i32 6
  %9778 = load i32, ptr %48, align 4, !tbaa !9
  %9779 = zext i32 %9778 to i64
  %9780 = add i64 %9779, 296
  %9781 = call i32 @i32_load(ptr noundef %9777, i64 noundef %9780)
  store i32 %9781, ptr %48, align 4, !tbaa !9
  %9782 = load i32, ptr %48, align 4, !tbaa !9
  %9783 = icmp ne i32 %9782, 0
  %9784 = xor i1 %9783, true
  %9785 = zext i1 %9784 to i32
  store i32 %9785, ptr %48, align 4, !tbaa !9
  %9786 = load i32, ptr %48, align 4, !tbaa !9
  %9787 = icmp ne i32 %9786, 0
  br i1 %9787, label %9788, label %9789

9788:                                             ; preds = %9765
  br label %9858

9789:                                             ; preds = %9765
  %9790 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9790, ptr %48, align 4, !tbaa !9
  %9791 = load ptr, ptr %5, align 8, !tbaa !5
  %9792 = getelementptr inbounds %struct.w2c_hermes, ptr %9791, i32 0, i32 6
  %9793 = load i32, ptr %48, align 4, !tbaa !9
  %9794 = zext i32 %9793 to i64
  %9795 = add i64 %9794, 292
  %9796 = call i32 @i32_load(ptr noundef %9792, i64 noundef %9795)
  store i32 %9796, ptr %48, align 4, !tbaa !9
  %9797 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9797, ptr %7, align 4, !tbaa !9
  %9798 = load i32, ptr %48, align 4, !tbaa !9
  %9799 = icmp ne i32 %9798, 0
  %9800 = xor i1 %9799, true
  %9801 = zext i1 %9800 to i32
  store i32 %9801, ptr %48, align 4, !tbaa !9
  %9802 = load i32, ptr %48, align 4, !tbaa !9
  %9803 = icmp ne i32 %9802, 0
  br i1 %9803, label %9804, label %9805

9804:                                             ; preds = %9789
  br label %9858

9805:                                             ; preds = %9789
  store i32 0, ptr %48, align 4, !tbaa !9
  %9806 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9806, ptr %9, align 4, !tbaa !9
  br label %9807

9807:                                             ; preds = %9856, %9805
  %9808 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9808, ptr %48, align 4, !tbaa !9
  %9809 = load ptr, ptr %5, align 8, !tbaa !5
  %9810 = getelementptr inbounds %struct.w2c_hermes, ptr %9809, i32 0, i32 6
  %9811 = load i32, ptr %48, align 4, !tbaa !9
  %9812 = zext i32 %9811 to i64
  %9813 = add i64 %9812, 288
  %9814 = call i32 @i32_load(ptr noundef %9810, i64 noundef %9813)
  store i32 %9814, ptr %48, align 4, !tbaa !9
  %9815 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %9815, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %9816 = load i32, ptr %50, align 4, !tbaa !9
  %9817 = and i32 %9816, 31
  %9818 = load i32, ptr %49, align 4, !tbaa !9
  %9819 = shl i32 %9818, %9817
  store i32 %9819, ptr %49, align 4, !tbaa !9
  %9820 = load i32, ptr %49, align 4, !tbaa !9
  %9821 = load i32, ptr %48, align 4, !tbaa !9
  %9822 = add i32 %9821, %9820
  store i32 %9822, ptr %48, align 4, !tbaa !9
  %9823 = load ptr, ptr %5, align 8, !tbaa !5
  %9824 = getelementptr inbounds %struct.w2c_hermes, ptr %9823, i32 0, i32 6
  %9825 = load i32, ptr %48, align 4, !tbaa !9
  %9826 = zext i32 %9825 to i64
  %9827 = call i32 @i32_load(ptr noundef %9824, i64 noundef %9826)
  store i32 %9827, ptr %48, align 4, !tbaa !9
  %9828 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9828, ptr %8, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %9829 = load i32, ptr %49, align 4, !tbaa !9
  %9830 = load i32, ptr %48, align 4, !tbaa !9
  %9831 = add i32 %9830, %9829
  store i32 %9831, ptr %48, align 4, !tbaa !9
  %9832 = load i32, ptr %48, align 4, !tbaa !9
  switch i32 %9832, label %9838 [
    i32 0, label %9833
    i32 1, label %9834
    i32 2, label %9835
    i32 3, label %9836
    i32 4, label %9837
  ]

9833:                                             ; preds = %9807
  br label %9843

9834:                                             ; preds = %9807
  br label %9839

9835:                                             ; preds = %9807
  br label %9839

9836:                                             ; preds = %9807
  br label %9839

9837:                                             ; preds = %9807
  br label %9843

9838:                                             ; preds = %9807
  br label %9839

9839:                                             ; preds = %9838, %9836, %9835, %9834
  %9840 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9840, ptr %48, align 4, !tbaa !9
  %9841 = load ptr, ptr %5, align 8, !tbaa !5
  %9842 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %9841, i32 noundef %9842)
  br label %9843

9843:                                             ; preds = %9839, %9837, %9833
  %9844 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %9844, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %9845 = load i32, ptr %49, align 4, !tbaa !9
  %9846 = load i32, ptr %48, align 4, !tbaa !9
  %9847 = add i32 %9846, %9845
  store i32 %9847, ptr %48, align 4, !tbaa !9
  %9848 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9848, ptr %9, align 4, !tbaa !9
  %9849 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9849, ptr %49, align 4, !tbaa !9
  %9850 = load i32, ptr %48, align 4, !tbaa !9
  %9851 = load i32, ptr %49, align 4, !tbaa !9
  %9852 = icmp ne i32 %9850, %9851
  %9853 = zext i1 %9852 to i32
  store i32 %9853, ptr %48, align 4, !tbaa !9
  %9854 = load i32, ptr %48, align 4, !tbaa !9
  %9855 = icmp ne i32 %9854, 0
  br i1 %9855, label %9856, label %9857

9856:                                             ; preds = %9843
  br label %9807

9857:                                             ; preds = %9843
  br label %9858

9858:                                             ; preds = %9857, %9804, %9788
  %9859 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9859, ptr %48, align 4, !tbaa !9
  %9860 = load ptr, ptr %5, align 8, !tbaa !5
  %9861 = getelementptr inbounds %struct.w2c_hermes, ptr %9860, i32 0, i32 6
  %9862 = load i32, ptr %48, align 4, !tbaa !9
  %9863 = zext i32 %9862 to i64
  %9864 = add i64 %9863, 288
  %9865 = call i32 @i32_load(ptr noundef %9861, i64 noundef %9864)
  store i32 %9865, ptr %48, align 4, !tbaa !9
  %9866 = load ptr, ptr %5, align 8, !tbaa !5
  %9867 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %9866, i32 noundef %9867)
  %9868 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9868, ptr %48, align 4, !tbaa !9
  store i32 320, ptr %49, align 4, !tbaa !9
  %9869 = load i32, ptr %49, align 4, !tbaa !9
  %9870 = load i32, ptr %48, align 4, !tbaa !9
  %9871 = add i32 %9870, %9869
  store i32 %9871, ptr %48, align 4, !tbaa !9
  %9872 = load i32, ptr %48, align 4, !tbaa !9
  %9873 = load ptr, ptr %5, align 8, !tbaa !5
  %9874 = getelementptr inbounds %struct.w2c_hermes, ptr %9873, i32 0, i32 3
  store i32 %9872, ptr %9874, align 8, !tbaa !15
  %9875 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9875, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %9876 = load i32, ptr %49, align 4, !tbaa !9
  %9877 = load i32, ptr %48, align 4, !tbaa !9
  %9878 = add i32 %9877, %9876
  store i32 %9878, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %9879 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9879, ptr %50, align 4, !tbaa !9
  %9880 = load i32, ptr %50, align 4, !tbaa !9
  %9881 = icmp ne i32 %9880, 0
  br i1 %9881, label %9882, label %9884

9882:                                             ; preds = %9858
  %9883 = load i32, ptr %48, align 4, !tbaa !9
  br label %9886

9884:                                             ; preds = %9858
  %9885 = load i32, ptr %49, align 4, !tbaa !9
  br label %9886

9886:                                             ; preds = %9884, %9882
  %9887 = phi i32 [ %9883, %9882 ], [ %9885, %9884 ]
  store i32 %9887, ptr %48, align 4, !tbaa !9
  br label %22463

9888:                                             ; preds = %6341, %6332
  %9889 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9889, ptr %48, align 4, !tbaa !9
  %9890 = load i32, ptr %48, align 4, !tbaa !9
  %9891 = icmp ne i32 %9890, 0
  %9892 = xor i1 %9891, true
  %9893 = zext i1 %9892 to i32
  store i32 %9893, ptr %48, align 4, !tbaa !9
  %9894 = load i32, ptr %48, align 4, !tbaa !9
  %9895 = icmp ne i32 %9894, 0
  br i1 %9895, label %9896, label %9897

9896:                                             ; preds = %9888
  br label %10250

9897:                                             ; preds = %9888
  %9898 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %9898, ptr %48, align 4, !tbaa !9
  store i32 57, ptr %49, align 4, !tbaa !9
  %9899 = load i32, ptr %48, align 4, !tbaa !9
  %9900 = load i32, ptr %49, align 4, !tbaa !9
  %9901 = icmp ne i32 %9899, %9900
  %9902 = zext i1 %9901 to i32
  store i32 %9902, ptr %48, align 4, !tbaa !9
  %9903 = load i32, ptr %48, align 4, !tbaa !9
  %9904 = icmp ne i32 %9903, 0
  br i1 %9904, label %9905, label %9906

9905:                                             ; preds = %9897
  br label %10250

9906:                                             ; preds = %9897
  %9907 = load ptr, ptr %5, align 8, !tbaa !5
  %9908 = getelementptr inbounds %struct.w2c_hermes, ptr %9907, i32 0, i32 3
  %9909 = load i32, ptr %9908, align 8, !tbaa !15
  store i32 %9909, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %9910 = load i32, ptr %49, align 4, !tbaa !9
  %9911 = load i32, ptr %48, align 4, !tbaa !9
  %9912 = sub i32 %9911, %9910
  store i32 %9912, ptr %48, align 4, !tbaa !9
  %9913 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9913, ptr %11, align 4, !tbaa !9
  %9914 = load i32, ptr %48, align 4, !tbaa !9
  %9915 = load ptr, ptr %5, align 8, !tbaa !5
  %9916 = getelementptr inbounds %struct.w2c_hermes, ptr %9915, i32 0, i32 3
  store i32 %9914, ptr %9916, align 8, !tbaa !15
  %9917 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9917, ptr %48, align 4, !tbaa !9
  %9918 = load ptr, ptr %5, align 8, !tbaa !5
  %9919 = getelementptr inbounds %struct.w2c_hermes, ptr %9918, i32 0, i32 6
  %9920 = load i32, ptr %48, align 4, !tbaa !9
  %9921 = zext i32 %9920 to i64
  %9922 = add i64 %9921, 36
  %9923 = call i32 @i32_load(ptr noundef %9919, i64 noundef %9922)
  store i32 %9923, ptr %48, align 4, !tbaa !9
  %9924 = load ptr, ptr %5, align 8, !tbaa !5
  %9925 = getelementptr inbounds %struct.w2c_hermes, ptr %9924, i32 0, i32 6
  %9926 = load i32, ptr %48, align 4, !tbaa !9
  %9927 = zext i32 %9926 to i64
  %9928 = call i64 @i64_load(ptr noundef %9925, i64 noundef %9927)
  store i64 %9928, ptr %58, align 8, !tbaa !11
  %9929 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %9929, ptr %31, align 8, !tbaa !11
  store i64 -4294967296, ptr %59, align 8, !tbaa !11
  %9930 = load i64, ptr %59, align 8, !tbaa !11
  %9931 = load i64, ptr %58, align 8, !tbaa !11
  %9932 = and i64 %9931, %9930
  store i64 %9932, ptr %58, align 8, !tbaa !11
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %9933 = load i64, ptr %58, align 8, !tbaa !11
  %9934 = load i64, ptr %59, align 8, !tbaa !11
  %9935 = icmp ne i64 %9933, %9934
  %9936 = zext i1 %9935 to i32
  store i32 %9936, ptr %48, align 4, !tbaa !9
  %9937 = load i32, ptr %48, align 4, !tbaa !9
  %9938 = icmp ne i32 %9937, 0
  br i1 %9938, label %9939, label %9940

9939:                                             ; preds = %9906
  br label %9972

9940:                                             ; preds = %9906
  store i32 0, ptr %48, align 4, !tbaa !9
  %9941 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %9941, ptr %59, align 8, !tbaa !11
  %9942 = load i64, ptr %59, align 8, !tbaa !11
  %9943 = trunc i64 %9942 to i32
  store i32 %9943, ptr %49, align 4, !tbaa !9
  %9944 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %9944, ptr %8, align 4, !tbaa !9
  %9945 = load ptr, ptr %5, align 8, !tbaa !5
  %9946 = getelementptr inbounds %struct.w2c_hermes, ptr %9945, i32 0, i32 6
  %9947 = load i32, ptr %49, align 4, !tbaa !9
  %9948 = zext i32 %9947 to i64
  %9949 = call i32 @i32_load16_u(ptr noundef %9946, i64 noundef %9948)
  store i32 %9949, ptr %49, align 4, !tbaa !9
  store i32 9766, ptr %50, align 4, !tbaa !9
  %9950 = load i32, ptr %49, align 4, !tbaa !9
  %9951 = load i32, ptr %50, align 4, !tbaa !9
  %9952 = icmp eq i32 %9950, %9951
  %9953 = zext i1 %9952 to i32
  store i32 %9953, ptr %49, align 4, !tbaa !9
  %9954 = load i32, ptr %49, align 4, !tbaa !9
  %9955 = icmp ne i32 %9954, 0
  br i1 %9955, label %9956, label %9957

9956:                                             ; preds = %9940
  br label %9973

9957:                                             ; preds = %9940
  %9958 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9958, ptr %48, align 4, !tbaa !9
  %9959 = load ptr, ptr %5, align 8, !tbaa !5
  %9960 = getelementptr inbounds %struct.w2c_hermes, ptr %9959, i32 0, i32 6
  %9961 = load i32, ptr %48, align 4, !tbaa !9
  %9962 = zext i32 %9961 to i64
  %9963 = call i32 @i32_load16_u(ptr noundef %9960, i64 noundef %9962)
  store i32 %9963, ptr %48, align 4, !tbaa !9
  store i32 31868, ptr %49, align 4, !tbaa !9
  %9964 = load i32, ptr %48, align 4, !tbaa !9
  %9965 = load i32, ptr %49, align 4, !tbaa !9
  %9966 = icmp ne i32 %9964, %9965
  %9967 = zext i1 %9966 to i32
  store i32 %9967, ptr %48, align 4, !tbaa !9
  %9968 = load i32, ptr %48, align 4, !tbaa !9
  %9969 = icmp ne i32 %9968, 0
  br i1 %9969, label %9970, label %9971

9970:                                             ; preds = %9957
  br label %9972

9971:                                             ; preds = %9957
  store i32 1, ptr %48, align 4, !tbaa !9
  br label %9973

9972:                                             ; preds = %9970, %9939
  store i32 2, ptr %48, align 4, !tbaa !9
  br label %9973

9973:                                             ; preds = %9972, %9971, %9956
  %9974 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9974, ptr %15, align 4, !tbaa !9
  %9975 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9975, ptr %48, align 4, !tbaa !9
  %9976 = load ptr, ptr %5, align 8, !tbaa !5
  %9977 = getelementptr inbounds %struct.w2c_hermes, ptr %9976, i32 0, i32 6
  %9978 = load i32, ptr %48, align 4, !tbaa !9
  %9979 = zext i32 %9978 to i64
  %9980 = add i64 %9979, 40
  %9981 = call i32 @i32_load(ptr noundef %9977, i64 noundef %9980)
  store i32 %9981, ptr %48, align 4, !tbaa !9
  %9982 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %9982, ptr %8, align 4, !tbaa !9
  %9983 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9983, ptr %48, align 4, !tbaa !9
  store i32 7, ptr %49, align 4, !tbaa !9
  %9984 = load ptr, ptr %5, align 8, !tbaa !5
  %9985 = getelementptr inbounds %struct.w2c_hermes, ptr %9984, i32 0, i32 6
  %9986 = load i32, ptr %48, align 4, !tbaa !9
  %9987 = zext i32 %9986 to i64
  %9988 = add i64 %9987, 12
  %9989 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9985, i64 noundef %9988, i32 noundef %9989)
  %9990 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9990, ptr %48, align 4, !tbaa !9
  store i32 44242, ptr %49, align 4, !tbaa !9
  %9991 = load ptr, ptr %5, align 8, !tbaa !5
  %9992 = getelementptr inbounds %struct.w2c_hermes, ptr %9991, i32 0, i32 6
  %9993 = load i32, ptr %48, align 4, !tbaa !9
  %9994 = zext i32 %9993 to i64
  %9995 = add i64 %9994, 8
  %9996 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9992, i64 noundef %9995, i32 noundef %9996)
  %9997 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9997, ptr %48, align 4, !tbaa !9
  %9998 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9998, ptr %49, align 4, !tbaa !9
  %9999 = load ptr, ptr %5, align 8, !tbaa !5
  %10000 = getelementptr inbounds %struct.w2c_hermes, ptr %9999, i32 0, i32 6
  %10001 = load i32, ptr %49, align 4, !tbaa !9
  %10002 = zext i32 %10001 to i64
  %10003 = add i64 %10002, 8
  %10004 = call i64 @i64_load(ptr noundef %10000, i64 noundef %10003)
  store i64 %10004, ptr %59, align 8, !tbaa !11
  %10005 = load ptr, ptr %5, align 8, !tbaa !5
  %10006 = getelementptr inbounds %struct.w2c_hermes, ptr %10005, i32 0, i32 6
  %10007 = load i32, ptr %48, align 4, !tbaa !9
  %10008 = zext i32 %10007 to i64
  %10009 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10006, i64 noundef %10008, i64 noundef %10009)
  %10010 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10010, ptr %48, align 4, !tbaa !9
  %10011 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10011, ptr %49, align 4, !tbaa !9
  %10012 = load ptr, ptr %5, align 8, !tbaa !5
  %10013 = load i32, ptr %48, align 4, !tbaa !9
  %10014 = load i32, ptr %49, align 4, !tbaa !9
  %10015 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AgenAnonymousLabelName0x28llvh0x3A0x3AStringRef0x29(ptr noundef %10012, i32 noundef %10013, i32 noundef %10014)
  store i32 %10015, ptr %48, align 4, !tbaa !9
  %10016 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10016, ptr %10, align 4, !tbaa !9
  %10017 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10017, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %10018 = load i32, ptr %49, align 4, !tbaa !9
  %10019 = load i32, ptr %48, align 4, !tbaa !9
  %10020 = add i32 %10019, %10018
  store i32 %10020, ptr %48, align 4, !tbaa !9
  %10021 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10021, ptr %8, align 4, !tbaa !9
  %10022 = load ptr, ptr %5, align 8, !tbaa !5
  %10023 = getelementptr inbounds %struct.w2c_hermes, ptr %10022, i32 0, i32 6
  %10024 = load i32, ptr %48, align 4, !tbaa !9
  %10025 = zext i32 %10024 to i64
  %10026 = add i64 %10025, 8
  %10027 = call i32 @i32_load(ptr noundef %10023, i64 noundef %10026)
  store i32 %10027, ptr %48, align 4, !tbaa !9
  %10028 = load ptr, ptr %5, align 8, !tbaa !5
  %10029 = getelementptr inbounds %struct.w2c_hermes, ptr %10028, i32 0, i32 6
  %10030 = load i32, ptr %48, align 4, !tbaa !9
  %10031 = zext i32 %10030 to i64
  %10032 = add i64 %10031, 44
  %10033 = call i32 @i32_load(ptr noundef %10029, i64 noundef %10032)
  store i32 %10033, ptr %48, align 4, !tbaa !9
  %10034 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10034, ptr %9, align 4, !tbaa !9
  %10035 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10035, ptr %48, align 4, !tbaa !9
  %10036 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10036, ptr %49, align 4, !tbaa !9
  %10037 = load ptr, ptr %5, align 8, !tbaa !5
  %10038 = load i32, ptr %48, align 4, !tbaa !9
  %10039 = load i32, ptr %49, align 4, !tbaa !9
  %10040 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef %10037, i32 noundef %10038, i32 noundef %10039)
  store i32 %10040, ptr %48, align 4, !tbaa !9
  %10041 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10041, ptr %12, align 4, !tbaa !9
  %10042 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10042, ptr %48, align 4, !tbaa !9
  %10043 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10043, ptr %49, align 4, !tbaa !9
  %10044 = load ptr, ptr %5, align 8, !tbaa !5
  %10045 = load i32, ptr %48, align 4, !tbaa !9
  %10046 = load i32, ptr %49, align 4, !tbaa !9
  %10047 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %10044, i32 noundef %10045, i32 noundef %10046)
  store i32 %10047, ptr %48, align 4, !tbaa !9
  %10048 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10048, ptr %10, align 4, !tbaa !9
  %10049 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10049, ptr %48, align 4, !tbaa !9
  %10050 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10050, ptr %49, align 4, !tbaa !9
  %10051 = load ptr, ptr %5, align 8, !tbaa !5
  %10052 = load i32, ptr %48, align 4, !tbaa !9
  %10053 = load i32, ptr %49, align 4, !tbaa !9
  %10054 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %10051, i32 noundef %10052, i32 noundef %10053)
  store i32 %10054, ptr %48, align 4, !tbaa !9
  %10055 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10055, ptr %9, align 4, !tbaa !9
  %10056 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10056, ptr %48, align 4, !tbaa !9
  %10057 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10057, ptr %49, align 4, !tbaa !9
  %10058 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10058, ptr %50, align 4, !tbaa !9
  %10059 = load ptr, ptr %5, align 8, !tbaa !5
  %10060 = getelementptr inbounds %struct.w2c_hermes, ptr %10059, i32 0, i32 6
  %10061 = load i32, ptr %50, align 4, !tbaa !9
  %10062 = zext i32 %10061 to i64
  %10063 = add i64 %10062, 28
  %10064 = call i32 @i32_load(ptr noundef %10060, i64 noundef %10063)
  store i32 %10064, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %10065 = load ptr, ptr %5, align 8, !tbaa !5
  %10066 = load i32, ptr %49, align 4, !tbaa !9
  %10067 = load i32, ptr %50, align 4, !tbaa !9
  %10068 = load i32, ptr %51, align 4, !tbaa !9
  %10069 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %10065, i32 noundef %10066, i32 noundef %10067, i32 noundef %10068)
  store i32 %10069, ptr %49, align 4, !tbaa !9
  %10070 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %10070, ptr %14, align 4, !tbaa !9
  %10071 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10071, ptr %50, align 4, !tbaa !9
  %10072 = load ptr, ptr %5, align 8, !tbaa !5
  %10073 = load i32, ptr %48, align 4, !tbaa !9
  %10074 = load i32, ptr %49, align 4, !tbaa !9
  %10075 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef %10072, i32 noundef %10073, i32 noundef %10074, i32 noundef %10075)
  %10076 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10076, ptr %48, align 4, !tbaa !9
  %10077 = load i32, ptr %48, align 4, !tbaa !9
  switch i32 %10077, label %10081 [
    i32 0, label %10078
    i32 1, label %10079
    i32 2, label %10080
  ]

10078:                                            ; preds = %9973
  br label %10082

10079:                                            ; preds = %9973
  br label %10092

10080:                                            ; preds = %9973
  br label %10102

10081:                                            ; preds = %9973
  br label %10141

10082:                                            ; preds = %10078
  %10083 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10083, ptr %48, align 4, !tbaa !9
  %10084 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10084, ptr %49, align 4, !tbaa !9
  %10085 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10085, ptr %50, align 4, !tbaa !9
  %10086 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10086, ptr %51, align 4, !tbaa !9
  %10087 = load ptr, ptr %5, align 8, !tbaa !5
  %10088 = load i32, ptr %48, align 4, !tbaa !9
  %10089 = load i32, ptr %49, align 4, !tbaa !9
  %10090 = load i32, ptr %50, align 4, !tbaa !9
  %10091 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %10087, i32 noundef %10088, i32 noundef %10089, i32 noundef %10090, i32 noundef %10091)
  br label %10141

10092:                                            ; preds = %10079
  %10093 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10093, ptr %48, align 4, !tbaa !9
  %10094 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10094, ptr %49, align 4, !tbaa !9
  %10095 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10095, ptr %50, align 4, !tbaa !9
  %10096 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10096, ptr %51, align 4, !tbaa !9
  %10097 = load ptr, ptr %5, align 8, !tbaa !5
  %10098 = load i32, ptr %48, align 4, !tbaa !9
  %10099 = load i32, ptr %49, align 4, !tbaa !9
  %10100 = load i32, ptr %50, align 4, !tbaa !9
  %10101 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %10097, i32 noundef %10098, i32 noundef %10099, i32 noundef %10100, i32 noundef %10101)
  br label %10141

10102:                                            ; preds = %10080
  %10103 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10103, ptr %48, align 4, !tbaa !9
  %10104 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10104, ptr %49, align 4, !tbaa !9
  %10105 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10105, ptr %50, align 4, !tbaa !9
  %10106 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10106, ptr %51, align 4, !tbaa !9
  %10107 = load ptr, ptr %5, align 8, !tbaa !5
  %10108 = getelementptr inbounds %struct.w2c_hermes, ptr %10107, i32 0, i32 6
  %10109 = load i32, ptr %51, align 4, !tbaa !9
  %10110 = zext i32 %10109 to i64
  %10111 = call i32 @i32_load(ptr noundef %10108, i64 noundef %10110)
  store i32 %10111, ptr %51, align 4, !tbaa !9
  store i32 296, ptr %52, align 4, !tbaa !9
  %10112 = load i32, ptr %52, align 4, !tbaa !9
  %10113 = load i32, ptr %51, align 4, !tbaa !9
  %10114 = add i32 %10113, %10112
  store i32 %10114, ptr %51, align 4, !tbaa !9
  store i32 1, ptr %52, align 4, !tbaa !9
  %10115 = load ptr, ptr %5, align 8, !tbaa !5
  %10116 = load i32, ptr %49, align 4, !tbaa !9
  %10117 = load i32, ptr %50, align 4, !tbaa !9
  %10118 = load i32, ptr %51, align 4, !tbaa !9
  %10119 = load i32, ptr %52, align 4, !tbaa !9
  %10120 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %10115, i32 noundef %10116, i32 noundef %10117, i32 noundef %10118, i32 noundef %10119)
  store i32 %10120, ptr %49, align 4, !tbaa !9
  %10121 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %10121, ptr %14, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %10122 = load i32, ptr %50, align 4, !tbaa !9
  %10123 = load i32, ptr %49, align 4, !tbaa !9
  %10124 = add i32 %10123, %10122
  store i32 %10124, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %10125 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10125, ptr %51, align 4, !tbaa !9
  %10126 = load i32, ptr %51, align 4, !tbaa !9
  %10127 = icmp ne i32 %10126, 0
  br i1 %10127, label %10128, label %10130

10128:                                            ; preds = %10102
  %10129 = load i32, ptr %49, align 4, !tbaa !9
  br label %10132

10130:                                            ; preds = %10102
  %10131 = load i32, ptr %50, align 4, !tbaa !9
  br label %10132

10132:                                            ; preds = %10130, %10128
  %10133 = phi i32 [ %10129, %10128 ], [ %10131, %10130 ]
  store i32 %10133, ptr %49, align 4, !tbaa !9
  %10134 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10134, ptr %50, align 4, !tbaa !9
  %10135 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10135, ptr %51, align 4, !tbaa !9
  %10136 = load ptr, ptr %5, align 8, !tbaa !5
  %10137 = load i32, ptr %48, align 4, !tbaa !9
  %10138 = load i32, ptr %49, align 4, !tbaa !9
  %10139 = load i32, ptr %50, align 4, !tbaa !9
  %10140 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %10136, i32 noundef %10137, i32 noundef %10138, i32 noundef %10139, i32 noundef %10140)
  br label %10141

10141:                                            ; preds = %10132, %10092, %10082, %10081
  %10142 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10142, ptr %48, align 4, !tbaa !9
  %10143 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10143, ptr %49, align 4, !tbaa !9
  %10144 = load ptr, ptr %5, align 8, !tbaa !5
  %10145 = getelementptr inbounds %struct.w2c_hermes, ptr %10144, i32 0, i32 6
  %10146 = load i32, ptr %48, align 4, !tbaa !9
  %10147 = zext i32 %10146 to i64
  %10148 = add i64 %10147, 8
  %10149 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10145, i64 noundef %10148, i32 noundef %10149)
  %10150 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10150, ptr %48, align 4, !tbaa !9
  %10151 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10151, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %10152 = load i32, ptr %50, align 4, !tbaa !9
  %10153 = load i32, ptr %49, align 4, !tbaa !9
  %10154 = add i32 %10153, %10152
  store i32 %10154, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %10155 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10155, ptr %51, align 4, !tbaa !9
  %10156 = load i32, ptr %51, align 4, !tbaa !9
  %10157 = icmp ne i32 %10156, 0
  br i1 %10157, label %10158, label %10160

10158:                                            ; preds = %10141
  %10159 = load i32, ptr %49, align 4, !tbaa !9
  br label %10162

10160:                                            ; preds = %10141
  %10161 = load i32, ptr %50, align 4, !tbaa !9
  br label %10162

10162:                                            ; preds = %10160, %10158
  %10163 = phi i32 [ %10159, %10158 ], [ %10161, %10160 ]
  store i32 %10163, ptr %49, align 4, !tbaa !9
  %10164 = load ptr, ptr %5, align 8, !tbaa !5
  %10165 = getelementptr inbounds %struct.w2c_hermes, ptr %10164, i32 0, i32 6
  %10166 = load i32, ptr %48, align 4, !tbaa !9
  %10167 = zext i32 %10166 to i64
  %10168 = add i64 %10167, 4
  %10169 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10165, i64 noundef %10168, i32 noundef %10169)
  %10170 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10170, ptr %48, align 4, !tbaa !9
  %10171 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10171, ptr %49, align 4, !tbaa !9
  %10172 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10172, ptr %50, align 4, !tbaa !9
  %10173 = load ptr, ptr %5, align 8, !tbaa !5
  %10174 = getelementptr inbounds %struct.w2c_hermes, ptr %10173, i32 0, i32 6
  %10175 = load i32, ptr %50, align 4, !tbaa !9
  %10176 = zext i32 %10175 to i64
  %10177 = add i64 %10176, 32
  %10178 = call i32 @i32_load(ptr noundef %10174, i64 noundef %10177)
  store i32 %10178, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %10179 = load ptr, ptr %5, align 8, !tbaa !5
  %10180 = load i32, ptr %49, align 4, !tbaa !9
  %10181 = load i32, ptr %50, align 4, !tbaa !9
  %10182 = load i32, ptr %51, align 4, !tbaa !9
  %10183 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %10179, i32 noundef %10180, i32 noundef %10181, i32 noundef %10182)
  store i32 %10183, ptr %49, align 4, !tbaa !9
  %10184 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10184, ptr %50, align 4, !tbaa !9
  %10185 = load ptr, ptr %5, align 8, !tbaa !5
  %10186 = load i32, ptr %48, align 4, !tbaa !9
  %10187 = load i32, ptr %49, align 4, !tbaa !9
  %10188 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef %10185, i32 noundef %10186, i32 noundef %10187, i32 noundef %10188)
  %10189 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10189, ptr %48, align 4, !tbaa !9
  %10190 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10190, ptr %49, align 4, !tbaa !9
  %10191 = load ptr, ptr %5, align 8, !tbaa !5
  %10192 = load i32, ptr %48, align 4, !tbaa !9
  %10193 = load i32, ptr %49, align 4, !tbaa !9
  %10194 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %10191, i32 noundef %10192, i32 noundef %10193)
  store i32 %10194, ptr %48, align 4, !tbaa !9
  %10195 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10195, ptr %48, align 4, !tbaa !9
  %10196 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10196, ptr %49, align 4, !tbaa !9
  %10197 = load ptr, ptr %5, align 8, !tbaa !5
  %10198 = getelementptr inbounds %struct.w2c_hermes, ptr %10197, i32 0, i32 6
  %10199 = load i32, ptr %48, align 4, !tbaa !9
  %10200 = zext i32 %10199 to i64
  %10201 = add i64 %10200, 8
  %10202 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10198, i64 noundef %10201, i32 noundef %10202)
  %10203 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10203, ptr %48, align 4, !tbaa !9
  %10204 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10204, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %10205 = load i32, ptr %50, align 4, !tbaa !9
  %10206 = load i32, ptr %49, align 4, !tbaa !9
  %10207 = add i32 %10206, %10205
  store i32 %10207, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %10208 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10208, ptr %51, align 4, !tbaa !9
  %10209 = load i32, ptr %51, align 4, !tbaa !9
  %10210 = icmp ne i32 %10209, 0
  br i1 %10210, label %10211, label %10213

10211:                                            ; preds = %10162
  %10212 = load i32, ptr %49, align 4, !tbaa !9
  br label %10215

10213:                                            ; preds = %10162
  %10214 = load i32, ptr %50, align 4, !tbaa !9
  br label %10215

10215:                                            ; preds = %10213, %10211
  %10216 = phi i32 [ %10212, %10211 ], [ %10214, %10213 ]
  store i32 %10216, ptr %49, align 4, !tbaa !9
  %10217 = load ptr, ptr %5, align 8, !tbaa !5
  %10218 = getelementptr inbounds %struct.w2c_hermes, ptr %10217, i32 0, i32 6
  %10219 = load i32, ptr %48, align 4, !tbaa !9
  %10220 = zext i32 %10219 to i64
  %10221 = add i64 %10220, 4
  %10222 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10218, i64 noundef %10221, i32 noundef %10222)
  %10223 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10223, ptr %48, align 4, !tbaa !9
  %10224 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10224, ptr %49, align 4, !tbaa !9
  %10225 = load ptr, ptr %5, align 8, !tbaa !5
  %10226 = load i32, ptr %48, align 4, !tbaa !9
  %10227 = load i32, ptr %49, align 4, !tbaa !9
  %10228 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadStackInst0x28hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef %10225, i32 noundef %10226, i32 noundef %10227)
  store i32 %10228, ptr %48, align 4, !tbaa !9
  %10229 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10229, ptr %7, align 4, !tbaa !9
  %10230 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10230, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %10231 = load i32, ptr %49, align 4, !tbaa !9
  %10232 = load i32, ptr %48, align 4, !tbaa !9
  %10233 = add i32 %10232, %10231
  store i32 %10233, ptr %48, align 4, !tbaa !9
  %10234 = load i32, ptr %48, align 4, !tbaa !9
  %10235 = load ptr, ptr %5, align 8, !tbaa !5
  %10236 = getelementptr inbounds %struct.w2c_hermes, ptr %10235, i32 0, i32 3
  store i32 %10234, ptr %10236, align 8, !tbaa !15
  %10237 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10237, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %10238 = load i32, ptr %49, align 4, !tbaa !9
  %10239 = load i32, ptr %48, align 4, !tbaa !9
  %10240 = add i32 %10239, %10238
  store i32 %10240, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %10241 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10241, ptr %50, align 4, !tbaa !9
  %10242 = load i32, ptr %50, align 4, !tbaa !9
  %10243 = icmp ne i32 %10242, 0
  br i1 %10243, label %10244, label %10246

10244:                                            ; preds = %10215
  %10245 = load i32, ptr %48, align 4, !tbaa !9
  br label %10248

10246:                                            ; preds = %10215
  %10247 = load i32, ptr %49, align 4, !tbaa !9
  br label %10248

10248:                                            ; preds = %10246, %10244
  %10249 = phi i32 [ %10245, %10244 ], [ %10247, %10246 ]
  store i32 %10249, ptr %48, align 4, !tbaa !9
  br label %22463

10250:                                            ; preds = %9905, %9896
  %10251 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10251, ptr %48, align 4, !tbaa !9
  %10252 = load i32, ptr %48, align 4, !tbaa !9
  %10253 = icmp ne i32 %10252, 0
  %10254 = xor i1 %10253, true
  %10255 = zext i1 %10254 to i32
  store i32 %10255, ptr %48, align 4, !tbaa !9
  %10256 = load i32, ptr %48, align 4, !tbaa !9
  %10257 = icmp ne i32 %10256, 0
  br i1 %10257, label %10258, label %10259

10258:                                            ; preds = %10250
  br label %10912

10259:                                            ; preds = %10250
  %10260 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10260, ptr %48, align 4, !tbaa !9
  store i32 59, ptr %49, align 4, !tbaa !9
  %10261 = load i32, ptr %48, align 4, !tbaa !9
  %10262 = load i32, ptr %49, align 4, !tbaa !9
  %10263 = icmp ne i32 %10261, %10262
  %10264 = zext i1 %10263 to i32
  store i32 %10264, ptr %48, align 4, !tbaa !9
  %10265 = load i32, ptr %48, align 4, !tbaa !9
  %10266 = icmp ne i32 %10265, 0
  br i1 %10266, label %10267, label %10268

10267:                                            ; preds = %10259
  br label %10912

10268:                                            ; preds = %10259
  %10269 = load ptr, ptr %5, align 8, !tbaa !5
  %10270 = getelementptr inbounds %struct.w2c_hermes, ptr %10269, i32 0, i32 3
  %10271 = load i32, ptr %10270, align 8, !tbaa !15
  store i32 %10271, ptr %48, align 4, !tbaa !9
  store i32 48, ptr %49, align 4, !tbaa !9
  %10272 = load i32, ptr %49, align 4, !tbaa !9
  %10273 = load i32, ptr %48, align 4, !tbaa !9
  %10274 = sub i32 %10273, %10272
  store i32 %10274, ptr %48, align 4, !tbaa !9
  %10275 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10275, ptr %8, align 4, !tbaa !9
  %10276 = load i32, ptr %48, align 4, !tbaa !9
  %10277 = load ptr, ptr %5, align 8, !tbaa !5
  %10278 = getelementptr inbounds %struct.w2c_hermes, ptr %10277, i32 0, i32 3
  store i32 %10276, ptr %10278, align 8, !tbaa !15
  %10279 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10279, ptr %48, align 4, !tbaa !9
  %10280 = load ptr, ptr %5, align 8, !tbaa !5
  %10281 = getelementptr inbounds %struct.w2c_hermes, ptr %10280, i32 0, i32 6
  %10282 = load i32, ptr %48, align 4, !tbaa !9
  %10283 = zext i32 %10282 to i64
  %10284 = add i64 %10283, 36
  %10285 = call i32 @i32_load(ptr noundef %10281, i64 noundef %10284)
  store i32 %10285, ptr %48, align 4, !tbaa !9
  %10286 = load ptr, ptr %5, align 8, !tbaa !5
  %10287 = getelementptr inbounds %struct.w2c_hermes, ptr %10286, i32 0, i32 6
  %10288 = load i32, ptr %48, align 4, !tbaa !9
  %10289 = zext i32 %10288 to i64
  %10290 = call i64 @i64_load(ptr noundef %10287, i64 noundef %10289)
  store i64 %10290, ptr %58, align 8, !tbaa !11
  %10291 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %10291, ptr %31, align 8, !tbaa !11
  store i64 -4294967296, ptr %59, align 8, !tbaa !11
  %10292 = load i64, ptr %59, align 8, !tbaa !11
  %10293 = load i64, ptr %58, align 8, !tbaa !11
  %10294 = and i64 %10293, %10292
  store i64 %10294, ptr %58, align 8, !tbaa !11
  store i64 4294967296, ptr %59, align 8, !tbaa !11
  %10295 = load i64, ptr %58, align 8, !tbaa !11
  %10296 = load i64, ptr %59, align 8, !tbaa !11
  %10297 = icmp ne i64 %10295, %10296
  %10298 = zext i1 %10297 to i32
  store i32 %10298, ptr %48, align 4, !tbaa !9
  %10299 = load i32, ptr %48, align 4, !tbaa !9
  %10300 = icmp ne i32 %10299, 0
  br i1 %10300, label %10301, label %10302

10301:                                            ; preds = %10268
  br label %10817

10302:                                            ; preds = %10268
  %10303 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %10303, ptr %58, align 8, !tbaa !11
  %10304 = load i64, ptr %58, align 8, !tbaa !11
  %10305 = trunc i64 %10304 to i32
  store i32 %10305, ptr %48, align 4, !tbaa !9
  %10306 = load ptr, ptr %5, align 8, !tbaa !5
  %10307 = getelementptr inbounds %struct.w2c_hermes, ptr %10306, i32 0, i32 6
  %10308 = load i32, ptr %48, align 4, !tbaa !9
  %10309 = zext i32 %10308 to i64
  %10310 = call i32 @i32_load8_u(ptr noundef %10307, i64 noundef %10309)
  store i32 %10310, ptr %48, align 4, !tbaa !9
  store i32 43, ptr %49, align 4, !tbaa !9
  %10311 = load i32, ptr %49, align 4, !tbaa !9
  %10312 = load i32, ptr %48, align 4, !tbaa !9
  %10313 = sub i32 %10312, %10311
  store i32 %10313, ptr %48, align 4, !tbaa !9
  %10314 = load i32, ptr %48, align 4, !tbaa !9
  switch i32 %10314, label %10318 [
    i32 0, label %10315
    i32 1, label %10316
    i32 2, label %10317
  ]

10315:                                            ; preds = %10302
  br label %10319

10316:                                            ; preds = %10302
  br label %10817

10317:                                            ; preds = %10302
  br label %10319

10318:                                            ; preds = %10302
  br label %10817

10319:                                            ; preds = %10317, %10315
  %10320 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10320, ptr %48, align 4, !tbaa !9
  store i64 4294967297, ptr %59, align 8, !tbaa !11
  %10321 = load ptr, ptr %5, align 8, !tbaa !5
  %10322 = getelementptr inbounds %struct.w2c_hermes, ptr %10321, i32 0, i32 6
  %10323 = load i32, ptr %48, align 4, !tbaa !9
  %10324 = zext i32 %10323 to i64
  %10325 = add i64 %10324, 36
  %10326 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10322, i64 noundef %10325, i64 noundef %10326)
  %10327 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10327, ptr %48, align 4, !tbaa !9
  %10328 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10328, ptr %49, align 4, !tbaa !9
  store i32 44, ptr %50, align 4, !tbaa !9
  %10329 = load i32, ptr %50, align 4, !tbaa !9
  %10330 = load i32, ptr %49, align 4, !tbaa !9
  %10331 = add i32 %10330, %10329
  store i32 %10331, ptr %49, align 4, !tbaa !9
  %10332 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %10332, ptr %11, align 4, !tbaa !9
  %10333 = load ptr, ptr %5, align 8, !tbaa !5
  %10334 = getelementptr inbounds %struct.w2c_hermes, ptr %10333, i32 0, i32 6
  %10335 = load i32, ptr %48, align 4, !tbaa !9
  %10336 = zext i32 %10335 to i64
  %10337 = add i64 %10336, 32
  %10338 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10334, i64 noundef %10337, i32 noundef %10338)
  %10339 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10339, ptr %48, align 4, !tbaa !9
  %10340 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10340, ptr %49, align 4, !tbaa !9
  %10341 = load ptr, ptr %5, align 8, !tbaa !5
  %10342 = getelementptr inbounds %struct.w2c_hermes, ptr %10341, i32 0, i32 6
  %10343 = load i32, ptr %48, align 4, !tbaa !9
  %10344 = zext i32 %10343 to i64
  %10345 = add i64 %10344, 44
  %10346 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10342, i64 noundef %10345, i32 noundef %10346)
  store i32 1, ptr %48, align 4, !tbaa !9
  %10347 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10347, ptr %9, align 4, !tbaa !9
  %10348 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10348, ptr %48, align 4, !tbaa !9
  %10349 = load ptr, ptr %5, align 8, !tbaa !5
  %10350 = getelementptr inbounds %struct.w2c_hermes, ptr %10349, i32 0, i32 6
  %10351 = load i32, ptr %48, align 4, !tbaa !9
  %10352 = zext i32 %10351 to i64
  %10353 = add i64 %10352, 28
  %10354 = call i32 @i32_load(ptr noundef %10350, i64 noundef %10353)
  store i32 %10354, ptr %48, align 4, !tbaa !9
  %10355 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10355, ptr %7, align 4, !tbaa !9
  %10356 = load i32, ptr %48, align 4, !tbaa !9
  %10357 = icmp ne i32 %10356, 0
  %10358 = xor i1 %10357, true
  %10359 = zext i1 %10358 to i32
  store i32 %10359, ptr %48, align 4, !tbaa !9
  %10360 = load i32, ptr %48, align 4, !tbaa !9
  %10361 = icmp ne i32 %10360, 0
  br i1 %10361, label %10362, label %10363

10362:                                            ; preds = %10319
  br label %10541

10363:                                            ; preds = %10319
  %10364 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10364, ptr %48, align 4, !tbaa !9
  %10365 = load ptr, ptr %5, align 8, !tbaa !5
  %10366 = getelementptr inbounds %struct.w2c_hermes, ptr %10365, i32 0, i32 6
  %10367 = load i32, ptr %48, align 4, !tbaa !9
  %10368 = zext i32 %10367 to i64
  %10369 = add i64 %10368, 8
  %10370 = call i32 @i32_load(ptr noundef %10366, i64 noundef %10369)
  store i32 %10370, ptr %48, align 4, !tbaa !9
  store i32 59, ptr %49, align 4, !tbaa !9
  %10371 = load i32, ptr %48, align 4, !tbaa !9
  %10372 = load i32, ptr %49, align 4, !tbaa !9
  %10373 = icmp ne i32 %10371, %10372
  %10374 = zext i1 %10373 to i32
  store i32 %10374, ptr %48, align 4, !tbaa !9
  %10375 = load i32, ptr %48, align 4, !tbaa !9
  %10376 = icmp ne i32 %10375, 0
  br i1 %10376, label %10377, label %10378

10377:                                            ; preds = %10363
  br label %10541

10378:                                            ; preds = %10363
  br label %10379

10379:                                            ; preds = %10539, %10378
  %10380 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10380, ptr %48, align 4, !tbaa !9
  %10381 = load ptr, ptr %5, align 8, !tbaa !5
  %10382 = getelementptr inbounds %struct.w2c_hermes, ptr %10381, i32 0, i32 6
  %10383 = load i32, ptr %48, align 4, !tbaa !9
  %10384 = zext i32 %10383 to i64
  %10385 = add i64 %10384, 36
  %10386 = call i32 @i32_load(ptr noundef %10382, i64 noundef %10385)
  store i32 %10386, ptr %48, align 4, !tbaa !9
  %10387 = load ptr, ptr %5, align 8, !tbaa !5
  %10388 = getelementptr inbounds %struct.w2c_hermes, ptr %10387, i32 0, i32 6
  %10389 = load i32, ptr %48, align 4, !tbaa !9
  %10390 = zext i32 %10389 to i64
  %10391 = call i64 @i64_load(ptr noundef %10388, i64 noundef %10390)
  store i64 %10391, ptr %58, align 8, !tbaa !11
  %10392 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %10392, ptr %31, align 8, !tbaa !11
  store i64 32, ptr %59, align 8, !tbaa !11
  %10393 = load i64, ptr %59, align 8, !tbaa !11
  %10394 = and i64 %10393, 63
  %10395 = load i64, ptr %58, align 8, !tbaa !11
  %10396 = lshr i64 %10395, %10394
  store i64 %10396, ptr %58, align 8, !tbaa !11
  %10397 = load i64, ptr %58, align 8, !tbaa !11
  %10398 = trunc i64 %10397 to i32
  store i32 %10398, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %10399 = load i32, ptr %49, align 4, !tbaa !9
  %10400 = load i32, ptr %48, align 4, !tbaa !9
  %10401 = sub i32 %10400, %10399
  store i32 %10401, ptr %48, align 4, !tbaa !9
  %10402 = load i32, ptr %48, align 4, !tbaa !9
  %10403 = icmp ne i32 %10402, 0
  br i1 %10403, label %10404, label %10405

10404:                                            ; preds = %10379
  br label %10541

10405:                                            ; preds = %10379
  %10406 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %10406, ptr %58, align 8, !tbaa !11
  %10407 = load i64, ptr %58, align 8, !tbaa !11
  %10408 = trunc i64 %10407 to i32
  store i32 %10408, ptr %48, align 4, !tbaa !9
  %10409 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10409, ptr %10, align 4, !tbaa !9
  %10410 = load ptr, ptr %5, align 8, !tbaa !5
  %10411 = getelementptr inbounds %struct.w2c_hermes, ptr %10410, i32 0, i32 6
  %10412 = load i32, ptr %48, align 4, !tbaa !9
  %10413 = zext i32 %10412 to i64
  %10414 = call i32 @i32_load8_u(ptr noundef %10411, i64 noundef %10413)
  store i32 %10414, ptr %48, align 4, !tbaa !9
  store i32 43, ptr %49, align 4, !tbaa !9
  %10415 = load i32, ptr %48, align 4, !tbaa !9
  %10416 = load i32, ptr %49, align 4, !tbaa !9
  %10417 = icmp ne i32 %10415, %10416
  %10418 = zext i1 %10417 to i32
  store i32 %10418, ptr %48, align 4, !tbaa !9
  %10419 = load i32, ptr %48, align 4, !tbaa !9
  %10420 = icmp ne i32 %10419, 0
  br i1 %10420, label %10421, label %10436

10421:                                            ; preds = %10405
  %10422 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10422, ptr %48, align 4, !tbaa !9
  %10423 = load ptr, ptr %5, align 8, !tbaa !5
  %10424 = getelementptr inbounds %struct.w2c_hermes, ptr %10423, i32 0, i32 6
  %10425 = load i32, ptr %48, align 4, !tbaa !9
  %10426 = zext i32 %10425 to i64
  %10427 = call i32 @i32_load8_u(ptr noundef %10424, i64 noundef %10426)
  store i32 %10427, ptr %48, align 4, !tbaa !9
  store i32 45, ptr %49, align 4, !tbaa !9
  %10428 = load i32, ptr %48, align 4, !tbaa !9
  %10429 = load i32, ptr %49, align 4, !tbaa !9
  %10430 = icmp ne i32 %10428, %10429
  %10431 = zext i1 %10430 to i32
  store i32 %10431, ptr %48, align 4, !tbaa !9
  %10432 = load i32, ptr %48, align 4, !tbaa !9
  %10433 = icmp ne i32 %10432, 0
  br i1 %10433, label %10434, label %10435

10434:                                            ; preds = %10421
  br label %10541

10435:                                            ; preds = %10421
  br label %10436

10436:                                            ; preds = %10435, %10405
  %10437 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10437, ptr %48, align 4, !tbaa !9
  %10438 = load ptr, ptr %5, align 8, !tbaa !5
  %10439 = getelementptr inbounds %struct.w2c_hermes, ptr %10438, i32 0, i32 6
  %10440 = load i32, ptr %48, align 4, !tbaa !9
  %10441 = zext i32 %10440 to i64
  %10442 = add i64 %10441, 40
  %10443 = call i32 @i32_load(ptr noundef %10439, i64 noundef %10442)
  store i32 %10443, ptr %48, align 4, !tbaa !9
  %10444 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10444, ptr %49, align 4, !tbaa !9
  %10445 = load i32, ptr %48, align 4, !tbaa !9
  %10446 = load i32, ptr %49, align 4, !tbaa !9
  %10447 = icmp ule i32 %10445, %10446
  %10448 = zext i1 %10447 to i32
  store i32 %10448, ptr %48, align 4, !tbaa !9
  %10449 = load i32, ptr %48, align 4, !tbaa !9
  %10450 = icmp ne i32 %10449, 0
  br i1 %10450, label %10451, label %10470

10451:                                            ; preds = %10436
  %10452 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10452, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %10453 = load i32, ptr %49, align 4, !tbaa !9
  %10454 = load i32, ptr %48, align 4, !tbaa !9
  %10455 = add i32 %10454, %10453
  store i32 %10455, ptr %48, align 4, !tbaa !9
  %10456 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10456, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %10457 = load ptr, ptr %5, align 8, !tbaa !5
  %10458 = load i32, ptr %48, align 4, !tbaa !9
  %10459 = load i32, ptr %49, align 4, !tbaa !9
  %10460 = load i32, ptr %50, align 4, !tbaa !9
  %10461 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %10457, i32 noundef %10458, i32 noundef %10459, i32 noundef %10460, i32 noundef %10461)
  %10462 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10462, ptr %48, align 4, !tbaa !9
  %10463 = load ptr, ptr %5, align 8, !tbaa !5
  %10464 = getelementptr inbounds %struct.w2c_hermes, ptr %10463, i32 0, i32 6
  %10465 = load i32, ptr %48, align 4, !tbaa !9
  %10466 = zext i32 %10465 to i64
  %10467 = add i64 %10466, 36
  %10468 = call i32 @i32_load(ptr noundef %10464, i64 noundef %10467)
  store i32 %10468, ptr %48, align 4, !tbaa !9
  %10469 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10469, ptr %9, align 4, !tbaa !9
  br label %10470

10470:                                            ; preds = %10451, %10436
  %10471 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10471, ptr %48, align 4, !tbaa !9
  %10472 = load ptr, ptr %5, align 8, !tbaa !5
  %10473 = getelementptr inbounds %struct.w2c_hermes, ptr %10472, i32 0, i32 6
  %10474 = load i32, ptr %48, align 4, !tbaa !9
  %10475 = zext i32 %10474 to i64
  %10476 = add i64 %10475, 32
  %10477 = call i32 @i32_load(ptr noundef %10473, i64 noundef %10476)
  store i32 %10477, ptr %48, align 4, !tbaa !9
  %10478 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10478, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %10479 = load i32, ptr %50, align 4, !tbaa !9
  %10480 = and i32 %10479, 31
  %10481 = load i32, ptr %49, align 4, !tbaa !9
  %10482 = shl i32 %10481, %10480
  store i32 %10482, ptr %49, align 4, !tbaa !9
  %10483 = load i32, ptr %49, align 4, !tbaa !9
  %10484 = load i32, ptr %48, align 4, !tbaa !9
  %10485 = add i32 %10484, %10483
  store i32 %10485, ptr %48, align 4, !tbaa !9
  %10486 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10486, ptr %49, align 4, !tbaa !9
  %10487 = load ptr, ptr %5, align 8, !tbaa !5
  %10488 = getelementptr inbounds %struct.w2c_hermes, ptr %10487, i32 0, i32 6
  %10489 = load i32, ptr %48, align 4, !tbaa !9
  %10490 = zext i32 %10489 to i64
  %10491 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10488, i64 noundef %10490, i32 noundef %10491)
  %10492 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10492, ptr %48, align 4, !tbaa !9
  %10493 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10493, ptr %49, align 4, !tbaa !9
  %10494 = load ptr, ptr %5, align 8, !tbaa !5
  %10495 = getelementptr inbounds %struct.w2c_hermes, ptr %10494, i32 0, i32 6
  %10496 = load i32, ptr %49, align 4, !tbaa !9
  %10497 = zext i32 %10496 to i64
  %10498 = add i64 %10497, 36
  %10499 = call i32 @i32_load(ptr noundef %10495, i64 noundef %10498)
  store i32 %10499, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %10500 = load i32, ptr %50, align 4, !tbaa !9
  %10501 = load i32, ptr %49, align 4, !tbaa !9
  %10502 = add i32 %10501, %10500
  store i32 %10502, ptr %49, align 4, !tbaa !9
  %10503 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %10503, ptr %9, align 4, !tbaa !9
  %10504 = load ptr, ptr %5, align 8, !tbaa !5
  %10505 = getelementptr inbounds %struct.w2c_hermes, ptr %10504, i32 0, i32 6
  %10506 = load i32, ptr %48, align 4, !tbaa !9
  %10507 = zext i32 %10506 to i64
  %10508 = add i64 %10507, 36
  %10509 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10505, i64 noundef %10508, i32 noundef %10509)
  %10510 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10510, ptr %48, align 4, !tbaa !9
  %10511 = load ptr, ptr %5, align 8, !tbaa !5
  %10512 = getelementptr inbounds %struct.w2c_hermes, ptr %10511, i32 0, i32 6
  %10513 = load i32, ptr %48, align 4, !tbaa !9
  %10514 = zext i32 %10513 to i64
  %10515 = add i64 %10514, 28
  %10516 = call i32 @i32_load(ptr noundef %10512, i64 noundef %10515)
  store i32 %10516, ptr %48, align 4, !tbaa !9
  %10517 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10517, ptr %7, align 4, !tbaa !9
  %10518 = load i32, ptr %48, align 4, !tbaa !9
  %10519 = icmp ne i32 %10518, 0
  %10520 = xor i1 %10519, true
  %10521 = zext i1 %10520 to i32
  store i32 %10521, ptr %48, align 4, !tbaa !9
  %10522 = load i32, ptr %48, align 4, !tbaa !9
  %10523 = icmp ne i32 %10522, 0
  br i1 %10523, label %10524, label %10525

10524:                                            ; preds = %10470
  br label %10541

10525:                                            ; preds = %10470
  %10526 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10526, ptr %48, align 4, !tbaa !9
  %10527 = load ptr, ptr %5, align 8, !tbaa !5
  %10528 = getelementptr inbounds %struct.w2c_hermes, ptr %10527, i32 0, i32 6
  %10529 = load i32, ptr %48, align 4, !tbaa !9
  %10530 = zext i32 %10529 to i64
  %10531 = add i64 %10530, 8
  %10532 = call i32 @i32_load(ptr noundef %10528, i64 noundef %10531)
  store i32 %10532, ptr %48, align 4, !tbaa !9
  store i32 59, ptr %49, align 4, !tbaa !9
  %10533 = load i32, ptr %48, align 4, !tbaa !9
  %10534 = load i32, ptr %49, align 4, !tbaa !9
  %10535 = icmp eq i32 %10533, %10534
  %10536 = zext i1 %10535 to i32
  store i32 %10536, ptr %48, align 4, !tbaa !9
  %10537 = load i32, ptr %48, align 4, !tbaa !9
  %10538 = icmp ne i32 %10537, 0
  br i1 %10538, label %10539, label %10540

10539:                                            ; preds = %10525
  br label %10379

10540:                                            ; preds = %10525
  br label %10541

10541:                                            ; preds = %10540, %10524, %10434, %10404, %10377, %10362
  %10542 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10542, ptr %48, align 4, !tbaa !9
  %10543 = load ptr, ptr %5, align 8, !tbaa !5
  %10544 = getelementptr inbounds %struct.w2c_hermes, ptr %10543, i32 0, i32 6
  %10545 = load i32, ptr %48, align 4, !tbaa !9
  %10546 = zext i32 %10545 to i64
  %10547 = add i64 %10546, 32
  %10548 = call i32 @i32_load(ptr noundef %10544, i64 noundef %10547)
  store i32 %10548, ptr %48, align 4, !tbaa !9
  %10549 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10549, ptr %7, align 4, !tbaa !9
  %10550 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10550, ptr %48, align 4, !tbaa !9
  %10551 = load i32, ptr %48, align 4, !tbaa !9
  %10552 = icmp ne i32 %10551, 0
  %10553 = xor i1 %10552, true
  %10554 = zext i1 %10553 to i32
  store i32 %10554, ptr %48, align 4, !tbaa !9
  %10555 = load i32, ptr %48, align 4, !tbaa !9
  %10556 = icmp ne i32 %10555, 0
  br i1 %10556, label %10557, label %10558

10557:                                            ; preds = %10541
  br label %10634

10558:                                            ; preds = %10541
  %10559 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10559, ptr %48, align 4, !tbaa !9
  %10560 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10560, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %10561 = load i32, ptr %50, align 4, !tbaa !9
  %10562 = and i32 %10561, 31
  %10563 = load i32, ptr %49, align 4, !tbaa !9
  %10564 = shl i32 %10563, %10562
  store i32 %10564, ptr %49, align 4, !tbaa !9
  %10565 = load i32, ptr %49, align 4, !tbaa !9
  %10566 = load i32, ptr %48, align 4, !tbaa !9
  %10567 = add i32 %10566, %10565
  store i32 %10567, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %10568 = load i32, ptr %49, align 4, !tbaa !9
  %10569 = load i32, ptr %48, align 4, !tbaa !9
  %10570 = sub i32 %10569, %10568
  store i32 %10570, ptr %48, align 4, !tbaa !9
  %10571 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10571, ptr %9, align 4, !tbaa !9
  %10572 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10572, ptr %49, align 4, !tbaa !9
  %10573 = load i32, ptr %48, align 4, !tbaa !9
  %10574 = load i32, ptr %49, align 4, !tbaa !9
  %10575 = icmp ule i32 %10573, %10574
  %10576 = zext i1 %10575 to i32
  store i32 %10576, ptr %48, align 4, !tbaa !9
  %10577 = load i32, ptr %48, align 4, !tbaa !9
  %10578 = icmp ne i32 %10577, 0
  br i1 %10578, label %10579, label %10580

10579:                                            ; preds = %10558
  br label %10634

10580:                                            ; preds = %10558
  br label %10581

10581:                                            ; preds = %10624, %10580
  %10582 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10582, ptr %48, align 4, !tbaa !9
  %10583 = load ptr, ptr %5, align 8, !tbaa !5
  %10584 = getelementptr inbounds %struct.w2c_hermes, ptr %10583, i32 0, i32 6
  %10585 = load i32, ptr %48, align 4, !tbaa !9
  %10586 = zext i32 %10585 to i64
  %10587 = call i32 @i32_load(ptr noundef %10584, i64 noundef %10586)
  store i32 %10587, ptr %48, align 4, !tbaa !9
  %10588 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10588, ptr %10, align 4, !tbaa !9
  %10589 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10589, ptr %48, align 4, !tbaa !9
  %10590 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10590, ptr %49, align 4, !tbaa !9
  %10591 = load ptr, ptr %5, align 8, !tbaa !5
  %10592 = getelementptr inbounds %struct.w2c_hermes, ptr %10591, i32 0, i32 6
  %10593 = load i32, ptr %49, align 4, !tbaa !9
  %10594 = zext i32 %10593 to i64
  %10595 = call i32 @i32_load(ptr noundef %10592, i64 noundef %10594)
  store i32 %10595, ptr %49, align 4, !tbaa !9
  %10596 = load ptr, ptr %5, align 8, !tbaa !5
  %10597 = getelementptr inbounds %struct.w2c_hermes, ptr %10596, i32 0, i32 6
  %10598 = load i32, ptr %48, align 4, !tbaa !9
  %10599 = zext i32 %10598 to i64
  %10600 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10597, i64 noundef %10599, i32 noundef %10600)
  %10601 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10601, ptr %48, align 4, !tbaa !9
  %10602 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10602, ptr %49, align 4, !tbaa !9
  %10603 = load ptr, ptr %5, align 8, !tbaa !5
  %10604 = getelementptr inbounds %struct.w2c_hermes, ptr %10603, i32 0, i32 6
  %10605 = load i32, ptr %48, align 4, !tbaa !9
  %10606 = zext i32 %10605 to i64
  %10607 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10604, i64 noundef %10606, i32 noundef %10607)
  %10608 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10608, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %10609 = load i32, ptr %49, align 4, !tbaa !9
  %10610 = load i32, ptr %48, align 4, !tbaa !9
  %10611 = add i32 %10610, %10609
  store i32 %10611, ptr %48, align 4, !tbaa !9
  %10612 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10612, ptr %7, align 4, !tbaa !9
  %10613 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10613, ptr %49, align 4, !tbaa !9
  store i32 4, ptr %50, align 4, !tbaa !9
  %10614 = load i32, ptr %50, align 4, !tbaa !9
  %10615 = load i32, ptr %49, align 4, !tbaa !9
  %10616 = sub i32 %10615, %10614
  store i32 %10616, ptr %49, align 4, !tbaa !9
  %10617 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %10617, ptr %9, align 4, !tbaa !9
  %10618 = load i32, ptr %48, align 4, !tbaa !9
  %10619 = load i32, ptr %49, align 4, !tbaa !9
  %10620 = icmp ult i32 %10618, %10619
  %10621 = zext i1 %10620 to i32
  store i32 %10621, ptr %48, align 4, !tbaa !9
  %10622 = load i32, ptr %48, align 4, !tbaa !9
  %10623 = icmp ne i32 %10622, 0
  br i1 %10623, label %10624, label %10625

10624:                                            ; preds = %10581
  br label %10581

10625:                                            ; preds = %10581
  %10626 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10626, ptr %48, align 4, !tbaa !9
  %10627 = load ptr, ptr %5, align 8, !tbaa !5
  %10628 = getelementptr inbounds %struct.w2c_hermes, ptr %10627, i32 0, i32 6
  %10629 = load i32, ptr %48, align 4, !tbaa !9
  %10630 = zext i32 %10629 to i64
  %10631 = add i64 %10630, 32
  %10632 = call i32 @i32_load(ptr noundef %10628, i64 noundef %10631)
  store i32 %10632, ptr %48, align 4, !tbaa !9
  %10633 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10633, ptr %7, align 4, !tbaa !9
  br label %10634

10634:                                            ; preds = %10625, %10579, %10557
  %10635 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10635, ptr %48, align 4, !tbaa !9
  %10636 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10636, ptr %49, align 4, !tbaa !9
  %10637 = load ptr, ptr %5, align 8, !tbaa !5
  %10638 = getelementptr inbounds %struct.w2c_hermes, ptr %10637, i32 0, i32 6
  %10639 = load i32, ptr %49, align 4, !tbaa !9
  %10640 = zext i32 %10639 to i64
  %10641 = call i32 @i32_load(ptr noundef %10638, i64 noundef %10640)
  store i32 %10641, ptr %49, align 4, !tbaa !9
  %10642 = load ptr, ptr %5, align 8, !tbaa !5
  %10643 = getelementptr inbounds %struct.w2c_hermes, ptr %10642, i32 0, i32 6
  %10644 = load i32, ptr %49, align 4, !tbaa !9
  %10645 = zext i32 %10644 to i64
  %10646 = add i64 %10645, 28
  %10647 = call i32 @i32_load(ptr noundef %10643, i64 noundef %10646)
  store i32 %10647, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %10648 = load ptr, ptr %5, align 8, !tbaa !5
  %10649 = load i32, ptr %48, align 4, !tbaa !9
  %10650 = load i32, ptr %49, align 4, !tbaa !9
  %10651 = load i32, ptr %50, align 4, !tbaa !9
  %10652 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %10648, i32 noundef %10649, i32 noundef %10650, i32 noundef %10651)
  store i32 %10652, ptr %48, align 4, !tbaa !9
  %10653 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10653, ptr %9, align 4, !tbaa !9
  %10654 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10654, ptr %48, align 4, !tbaa !9
  %10655 = load ptr, ptr %5, align 8, !tbaa !5
  %10656 = getelementptr inbounds %struct.w2c_hermes, ptr %10655, i32 0, i32 6
  %10657 = load i32, ptr %48, align 4, !tbaa !9
  %10658 = zext i32 %10657 to i64
  %10659 = add i64 %10658, 32
  %10660 = call i32 @i32_load(ptr noundef %10656, i64 noundef %10659)
  store i32 %10660, ptr %48, align 4, !tbaa !9
  %10661 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10661, ptr %7, align 4, !tbaa !9
  %10662 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10662, ptr %48, align 4, !tbaa !9
  %10663 = load ptr, ptr %5, align 8, !tbaa !5
  %10664 = getelementptr inbounds %struct.w2c_hermes, ptr %10663, i32 0, i32 6
  %10665 = load i32, ptr %48, align 4, !tbaa !9
  %10666 = zext i32 %10665 to i64
  %10667 = add i64 %10666, 36
  %10668 = call i32 @i32_load(ptr noundef %10664, i64 noundef %10667)
  store i32 %10668, ptr %48, align 4, !tbaa !9
  %10669 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10669, ptr %10, align 4, !tbaa !9
  %10670 = load i32, ptr %48, align 4, !tbaa !9
  %10671 = icmp ne i32 %10670, 0
  br i1 %10671, label %10672, label %10803

10672:                                            ; preds = %10634
  %10673 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10673, ptr %48, align 4, !tbaa !9
  %10674 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10674, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %10675 = load i32, ptr %50, align 4, !tbaa !9
  %10676 = and i32 %10675, 31
  %10677 = load i32, ptr %49, align 4, !tbaa !9
  %10678 = shl i32 %10677, %10676
  store i32 %10678, ptr %49, align 4, !tbaa !9
  %10679 = load i32, ptr %49, align 4, !tbaa !9
  %10680 = load i32, ptr %48, align 4, !tbaa !9
  %10681 = add i32 %10680, %10679
  store i32 %10681, ptr %48, align 4, !tbaa !9
  %10682 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10682, ptr %12, align 4, !tbaa !9
  %10683 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10683, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %10684 = load i32, ptr %49, align 4, !tbaa !9
  %10685 = load i32, ptr %48, align 4, !tbaa !9
  %10686 = add i32 %10685, %10684
  store i32 %10686, ptr %48, align 4, !tbaa !9
  %10687 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10687, ptr %14, align 4, !tbaa !9
  br label %10688

10688:                                            ; preds = %10793, %10672
  %10689 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10689, ptr %48, align 4, !tbaa !9
  %10690 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10690, ptr %49, align 4, !tbaa !9
  %10691 = load ptr, ptr %5, align 8, !tbaa !5
  %10692 = getelementptr inbounds %struct.w2c_hermes, ptr %10691, i32 0, i32 6
  %10693 = load i32, ptr %49, align 4, !tbaa !9
  %10694 = zext i32 %10693 to i64
  %10695 = call i32 @i32_load(ptr noundef %10692, i64 noundef %10694)
  store i32 %10695, ptr %49, align 4, !tbaa !9
  %10696 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %10696, ptr %10, align 4, !tbaa !9
  %10697 = load ptr, ptr %5, align 8, !tbaa !5
  %10698 = getelementptr inbounds %struct.w2c_hermes, ptr %10697, i32 0, i32 6
  %10699 = load i32, ptr %49, align 4, !tbaa !9
  %10700 = zext i32 %10699 to i64
  %10701 = add i64 %10700, 32
  %10702 = call i32 @i32_load(ptr noundef %10698, i64 noundef %10701)
  store i32 %10702, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %10703 = load ptr, ptr %5, align 8, !tbaa !5
  %10704 = load i32, ptr %48, align 4, !tbaa !9
  %10705 = load i32, ptr %49, align 4, !tbaa !9
  %10706 = load i32, ptr %50, align 4, !tbaa !9
  %10707 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %10703, i32 noundef %10704, i32 noundef %10705, i32 noundef %10706)
  store i32 %10707, ptr %48, align 4, !tbaa !9
  %10708 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10708, ptr %15, align 4, !tbaa !9
  %10709 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10709, ptr %48, align 4, !tbaa !9
  %10710 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10710, ptr %49, align 4, !tbaa !9
  %10711 = load ptr, ptr %5, align 8, !tbaa !5
  %10712 = getelementptr inbounds %struct.w2c_hermes, ptr %10711, i32 0, i32 6
  %10713 = load i32, ptr %49, align 4, !tbaa !9
  %10714 = zext i32 %10713 to i64
  %10715 = add i64 %10714, 24
  %10716 = call i32 @i32_load(ptr noundef %10712, i64 noundef %10715)
  store i32 %10716, ptr %49, align 4, !tbaa !9
  %10717 = load ptr, ptr %5, align 8, !tbaa !5
  %10718 = getelementptr inbounds %struct.w2c_hermes, ptr %10717, i32 0, i32 6
  %10719 = load i32, ptr %48, align 4, !tbaa !9
  %10720 = zext i32 %10719 to i64
  %10721 = add i64 %10720, 16
  %10722 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10718, i64 noundef %10721, i32 noundef %10722)
  %10723 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10723, ptr %48, align 4, !tbaa !9
  %10724 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10724, ptr %49, align 4, !tbaa !9
  %10725 = load ptr, ptr %5, align 8, !tbaa !5
  %10726 = getelementptr inbounds %struct.w2c_hermes, ptr %10725, i32 0, i32 6
  %10727 = load i32, ptr %49, align 4, !tbaa !9
  %10728 = zext i32 %10727 to i64
  %10729 = add i64 %10728, 36
  %10730 = call i32 @i32_load(ptr noundef %10726, i64 noundef %10729)
  store i32 %10730, ptr %49, align 4, !tbaa !9
  %10731 = load ptr, ptr %5, align 8, !tbaa !5
  %10732 = getelementptr inbounds %struct.w2c_hermes, ptr %10731, i32 0, i32 6
  %10733 = load i32, ptr %49, align 4, !tbaa !9
  %10734 = zext i32 %10733 to i64
  %10735 = call i64 @i64_load(ptr noundef %10732, i64 noundef %10734)
  store i64 %10735, ptr %59, align 8, !tbaa !11
  %10736 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %10736, ptr %31, align 8, !tbaa !11
  %10737 = load ptr, ptr %5, align 8, !tbaa !5
  %10738 = getelementptr inbounds %struct.w2c_hermes, ptr %10737, i32 0, i32 6
  %10739 = load i32, ptr %48, align 4, !tbaa !9
  %10740 = zext i32 %10739 to i64
  %10741 = add i64 %10740, 8
  %10742 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10738, i64 noundef %10741, i64 noundef %10742)
  %10743 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10743, ptr %48, align 4, !tbaa !9
  %10744 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %10744, ptr %59, align 8, !tbaa !11
  %10745 = load ptr, ptr %5, align 8, !tbaa !5
  %10746 = getelementptr inbounds %struct.w2c_hermes, ptr %10745, i32 0, i32 6
  %10747 = load i32, ptr %48, align 4, !tbaa !9
  %10748 = zext i32 %10747 to i64
  %10749 = add i64 %10748, 24
  %10750 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10746, i64 noundef %10749, i64 noundef %10750)
  %10751 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10751, ptr %48, align 4, !tbaa !9
  %10752 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10752, ptr %49, align 4, !tbaa !9
  %10753 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10753, ptr %50, align 4, !tbaa !9
  %10754 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10754, ptr %51, align 4, !tbaa !9
  store i32 8, ptr %52, align 4, !tbaa !9
  %10755 = load i32, ptr %52, align 4, !tbaa !9
  %10756 = load i32, ptr %51, align 4, !tbaa !9
  %10757 = add i32 %10756, %10755
  store i32 %10757, ptr %51, align 4, !tbaa !9
  %10758 = load ptr, ptr %5, align 8, !tbaa !5
  %10759 = load i32, ptr %51, align 4, !tbaa !9
  %10760 = call i32 @w2c_hermes_hermes0x3A0x3ABinaryOperatorInst0x3A0x3AparseOperator0x28llvh0x3A0x3AStringRef0x29(ptr noundef %10758, i32 noundef %10759)
  store i32 %10760, ptr %51, align 4, !tbaa !9
  %10761 = load ptr, ptr %5, align 8, !tbaa !5
  %10762 = load i32, ptr %48, align 4, !tbaa !9
  %10763 = load i32, ptr %49, align 4, !tbaa !9
  %10764 = load i32, ptr %50, align 4, !tbaa !9
  %10765 = load i32, ptr %51, align 4, !tbaa !9
  %10766 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %10761, i32 noundef %10762, i32 noundef %10763, i32 noundef %10764, i32 noundef %10765)
  store i32 %10766, ptr %48, align 4, !tbaa !9
  %10767 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10767, ptr %9, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %10768 = load i32, ptr %49, align 4, !tbaa !9
  %10769 = load i32, ptr %48, align 4, !tbaa !9
  %10770 = add i32 %10769, %10768
  store i32 %10770, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %10771 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10771, ptr %50, align 4, !tbaa !9
  %10772 = load i32, ptr %50, align 4, !tbaa !9
  %10773 = icmp ne i32 %10772, 0
  br i1 %10773, label %10774, label %10776

10774:                                            ; preds = %10688
  %10775 = load i32, ptr %48, align 4, !tbaa !9
  br label %10778

10776:                                            ; preds = %10688
  %10777 = load i32, ptr %49, align 4, !tbaa !9
  br label %10778

10778:                                            ; preds = %10776, %10774
  %10779 = phi i32 [ %10775, %10774 ], [ %10777, %10776 ]
  store i32 %10779, ptr %48, align 4, !tbaa !9
  %10780 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10780, ptr %9, align 4, !tbaa !9
  %10781 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10781, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %10782 = load i32, ptr %49, align 4, !tbaa !9
  %10783 = load i32, ptr %48, align 4, !tbaa !9
  %10784 = add i32 %10783, %10782
  store i32 %10784, ptr %48, align 4, !tbaa !9
  %10785 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10785, ptr %7, align 4, !tbaa !9
  %10786 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10786, ptr %49, align 4, !tbaa !9
  %10787 = load i32, ptr %48, align 4, !tbaa !9
  %10788 = load i32, ptr %49, align 4, !tbaa !9
  %10789 = icmp ne i32 %10787, %10788
  %10790 = zext i1 %10789 to i32
  store i32 %10790, ptr %48, align 4, !tbaa !9
  %10791 = load i32, ptr %48, align 4, !tbaa !9
  %10792 = icmp ne i32 %10791, 0
  br i1 %10792, label %10793, label %10794

10793:                                            ; preds = %10778
  br label %10688

10794:                                            ; preds = %10778
  %10795 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10795, ptr %48, align 4, !tbaa !9
  %10796 = load ptr, ptr %5, align 8, !tbaa !5
  %10797 = getelementptr inbounds %struct.w2c_hermes, ptr %10796, i32 0, i32 6
  %10798 = load i32, ptr %48, align 4, !tbaa !9
  %10799 = zext i32 %10798 to i64
  %10800 = add i64 %10799, 32
  %10801 = call i32 @i32_load(ptr noundef %10797, i64 noundef %10800)
  store i32 %10801, ptr %48, align 4, !tbaa !9
  %10802 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10802, ptr %7, align 4, !tbaa !9
  br label %10803

10803:                                            ; preds = %10794, %10634
  %10804 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10804, ptr %48, align 4, !tbaa !9
  %10805 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10805, ptr %49, align 4, !tbaa !9
  %10806 = load i32, ptr %48, align 4, !tbaa !9
  %10807 = load i32, ptr %49, align 4, !tbaa !9
  %10808 = icmp eq i32 %10806, %10807
  %10809 = zext i1 %10808 to i32
  store i32 %10809, ptr %48, align 4, !tbaa !9
  %10810 = load i32, ptr %48, align 4, !tbaa !9
  %10811 = icmp ne i32 %10810, 0
  br i1 %10811, label %10812, label %10813

10812:                                            ; preds = %10803
  br label %10903

10813:                                            ; preds = %10803
  %10814 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10814, ptr %48, align 4, !tbaa !9
  %10815 = load ptr, ptr %5, align 8, !tbaa !5
  %10816 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %10815, i32 noundef %10816)
  br label %10903

10817:                                            ; preds = %10318, %10316, %10301
  %10818 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10818, ptr %48, align 4, !tbaa !9
  %10819 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10819, ptr %49, align 4, !tbaa !9
  %10820 = load ptr, ptr %5, align 8, !tbaa !5
  %10821 = getelementptr inbounds %struct.w2c_hermes, ptr %10820, i32 0, i32 6
  %10822 = load i32, ptr %49, align 4, !tbaa !9
  %10823 = zext i32 %10822 to i64
  %10824 = add i64 %10823, 28
  %10825 = call i32 @i32_load(ptr noundef %10821, i64 noundef %10824)
  store i32 %10825, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %10826 = load ptr, ptr %5, align 8, !tbaa !5
  %10827 = load i32, ptr %48, align 4, !tbaa !9
  %10828 = load i32, ptr %49, align 4, !tbaa !9
  %10829 = load i32, ptr %50, align 4, !tbaa !9
  %10830 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %10826, i32 noundef %10827, i32 noundef %10828, i32 noundef %10829)
  store i32 %10830, ptr %48, align 4, !tbaa !9
  %10831 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10831, ptr %9, align 4, !tbaa !9
  %10832 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10832, ptr %48, align 4, !tbaa !9
  %10833 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10833, ptr %49, align 4, !tbaa !9
  %10834 = load ptr, ptr %5, align 8, !tbaa !5
  %10835 = getelementptr inbounds %struct.w2c_hermes, ptr %10834, i32 0, i32 6
  %10836 = load i32, ptr %49, align 4, !tbaa !9
  %10837 = zext i32 %10836 to i64
  %10838 = add i64 %10837, 32
  %10839 = call i32 @i32_load(ptr noundef %10835, i64 noundef %10838)
  store i32 %10839, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %10840 = load ptr, ptr %5, align 8, !tbaa !5
  %10841 = load i32, ptr %48, align 4, !tbaa !9
  %10842 = load i32, ptr %49, align 4, !tbaa !9
  %10843 = load i32, ptr %50, align 4, !tbaa !9
  %10844 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %10840, i32 noundef %10841, i32 noundef %10842, i32 noundef %10843)
  store i32 %10844, ptr %48, align 4, !tbaa !9
  %10845 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10845, ptr %11, align 4, !tbaa !9
  %10846 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10846, ptr %48, align 4, !tbaa !9
  %10847 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10847, ptr %49, align 4, !tbaa !9
  %10848 = load ptr, ptr %5, align 8, !tbaa !5
  %10849 = getelementptr inbounds %struct.w2c_hermes, ptr %10848, i32 0, i32 6
  %10850 = load i32, ptr %49, align 4, !tbaa !9
  %10851 = zext i32 %10850 to i64
  %10852 = add i64 %10851, 36
  %10853 = call i32 @i32_load(ptr noundef %10849, i64 noundef %10852)
  store i32 %10853, ptr %49, align 4, !tbaa !9
  %10854 = load ptr, ptr %5, align 8, !tbaa !5
  %10855 = getelementptr inbounds %struct.w2c_hermes, ptr %10854, i32 0, i32 6
  %10856 = load i32, ptr %49, align 4, !tbaa !9
  %10857 = zext i32 %10856 to i64
  %10858 = call i64 @i64_load(ptr noundef %10855, i64 noundef %10857)
  store i64 %10858, ptr %59, align 8, !tbaa !11
  %10859 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %10859, ptr %31, align 8, !tbaa !11
  %10860 = load ptr, ptr %5, align 8, !tbaa !5
  %10861 = getelementptr inbounds %struct.w2c_hermes, ptr %10860, i32 0, i32 6
  %10862 = load i32, ptr %48, align 4, !tbaa !9
  %10863 = zext i32 %10862 to i64
  %10864 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10861, i64 noundef %10863, i64 noundef %10864)
  %10865 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10865, ptr %48, align 4, !tbaa !9
  %10866 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %10866, ptr %59, align 8, !tbaa !11
  %10867 = load ptr, ptr %5, align 8, !tbaa !5
  %10868 = getelementptr inbounds %struct.w2c_hermes, ptr %10867, i32 0, i32 6
  %10869 = load i32, ptr %48, align 4, !tbaa !9
  %10870 = zext i32 %10869 to i64
  %10871 = add i64 %10870, 16
  %10872 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10868, i64 noundef %10871, i64 noundef %10872)
  %10873 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10873, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %10874 = load i32, ptr %49, align 4, !tbaa !9
  %10875 = load i32, ptr %48, align 4, !tbaa !9
  %10876 = add i32 %10875, %10874
  store i32 %10876, ptr %48, align 4, !tbaa !9
  %10877 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10877, ptr %49, align 4, !tbaa !9
  %10878 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10878, ptr %50, align 4, !tbaa !9
  %10879 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10879, ptr %51, align 4, !tbaa !9
  %10880 = load ptr, ptr %5, align 8, !tbaa !5
  %10881 = load i32, ptr %51, align 4, !tbaa !9
  %10882 = call i32 @w2c_hermes_hermes0x3A0x3ABinaryOperatorInst0x3A0x3AparseOperator0x28llvh0x3A0x3AStringRef0x29(ptr noundef %10880, i32 noundef %10881)
  store i32 %10882, ptr %51, align 4, !tbaa !9
  %10883 = load ptr, ptr %5, align 8, !tbaa !5
  %10884 = load i32, ptr %48, align 4, !tbaa !9
  %10885 = load i32, ptr %49, align 4, !tbaa !9
  %10886 = load i32, ptr %50, align 4, !tbaa !9
  %10887 = load i32, ptr %51, align 4, !tbaa !9
  %10888 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %10883, i32 noundef %10884, i32 noundef %10885, i32 noundef %10886, i32 noundef %10887)
  store i32 %10888, ptr %48, align 4, !tbaa !9
  %10889 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10889, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %10890 = load i32, ptr %49, align 4, !tbaa !9
  %10891 = load i32, ptr %48, align 4, !tbaa !9
  %10892 = add i32 %10891, %10890
  store i32 %10892, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %10893 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10893, ptr %50, align 4, !tbaa !9
  %10894 = load i32, ptr %50, align 4, !tbaa !9
  %10895 = icmp ne i32 %10894, 0
  br i1 %10895, label %10896, label %10898

10896:                                            ; preds = %10817
  %10897 = load i32, ptr %48, align 4, !tbaa !9
  br label %10900

10898:                                            ; preds = %10817
  %10899 = load i32, ptr %49, align 4, !tbaa !9
  br label %10900

10900:                                            ; preds = %10898, %10896
  %10901 = phi i32 [ %10897, %10896 ], [ %10899, %10898 ]
  store i32 %10901, ptr %48, align 4, !tbaa !9
  %10902 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10902, ptr %9, align 4, !tbaa !9
  br label %10903

10903:                                            ; preds = %10900, %10813, %10812
  %10904 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10904, ptr %48, align 4, !tbaa !9
  store i32 48, ptr %49, align 4, !tbaa !9
  %10905 = load i32, ptr %49, align 4, !tbaa !9
  %10906 = load i32, ptr %48, align 4, !tbaa !9
  %10907 = add i32 %10906, %10905
  store i32 %10907, ptr %48, align 4, !tbaa !9
  %10908 = load i32, ptr %48, align 4, !tbaa !9
  %10909 = load ptr, ptr %5, align 8, !tbaa !5
  %10910 = getelementptr inbounds %struct.w2c_hermes, ptr %10909, i32 0, i32 3
  store i32 %10908, ptr %10910, align 8, !tbaa !15
  %10911 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10911, ptr %48, align 4, !tbaa !9
  br label %22463

10912:                                            ; preds = %10267, %10258
  %10913 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10913, ptr %48, align 4, !tbaa !9
  %10914 = load i32, ptr %48, align 4, !tbaa !9
  %10915 = icmp ne i32 %10914, 0
  %10916 = xor i1 %10915, true
  %10917 = zext i1 %10916 to i32
  store i32 %10917, ptr %48, align 4, !tbaa !9
  %10918 = load i32, ptr %48, align 4, !tbaa !9
  %10919 = icmp ne i32 %10918, 0
  br i1 %10919, label %10920, label %10921

10920:                                            ; preds = %10912
  br label %11767

10921:                                            ; preds = %10912
  %10922 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10922, ptr %48, align 4, !tbaa !9
  store i32 51, ptr %49, align 4, !tbaa !9
  %10923 = load i32, ptr %48, align 4, !tbaa !9
  %10924 = load i32, ptr %49, align 4, !tbaa !9
  %10925 = icmp ne i32 %10923, %10924
  %10926 = zext i1 %10925 to i32
  store i32 %10926, ptr %48, align 4, !tbaa !9
  %10927 = load i32, ptr %48, align 4, !tbaa !9
  %10928 = icmp ne i32 %10927, 0
  br i1 %10928, label %10929, label %10930

10929:                                            ; preds = %10921
  br label %11767

10930:                                            ; preds = %10921
  %10931 = load ptr, ptr %5, align 8, !tbaa !5
  %10932 = getelementptr inbounds %struct.w2c_hermes, ptr %10931, i32 0, i32 3
  %10933 = load i32, ptr %10932, align 8, !tbaa !15
  store i32 %10933, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %10934 = load i32, ptr %49, align 4, !tbaa !9
  %10935 = load i32, ptr %48, align 4, !tbaa !9
  %10936 = sub i32 %10935, %10934
  store i32 %10936, ptr %48, align 4, !tbaa !9
  %10937 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10937, ptr %10, align 4, !tbaa !9
  %10938 = load i32, ptr %48, align 4, !tbaa !9
  %10939 = load ptr, ptr %5, align 8, !tbaa !5
  %10940 = getelementptr inbounds %struct.w2c_hermes, ptr %10939, i32 0, i32 3
  store i32 %10938, ptr %10940, align 8, !tbaa !15
  %10941 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10941, ptr %48, align 4, !tbaa !9
  %10942 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10942, ptr %49, align 4, !tbaa !9
  %10943 = load ptr, ptr %5, align 8, !tbaa !5
  %10944 = getelementptr inbounds %struct.w2c_hermes, ptr %10943, i32 0, i32 6
  %10945 = load i32, ptr %49, align 4, !tbaa !9
  %10946 = zext i32 %10945 to i64
  %10947 = add i64 %10946, 28
  %10948 = call i32 @i32_load(ptr noundef %10944, i64 noundef %10947)
  store i32 %10948, ptr %49, align 4, !tbaa !9
  %10949 = load ptr, ptr %5, align 8, !tbaa !5
  %10950 = getelementptr inbounds %struct.w2c_hermes, ptr %10949, i32 0, i32 6
  %10951 = load i32, ptr %49, align 4, !tbaa !9
  %10952 = zext i32 %10951 to i64
  %10953 = call i64 @i64_load(ptr noundef %10950, i64 noundef %10952)
  store i64 %10953, ptr %59, align 8, !tbaa !11
  %10954 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %10954, ptr %31, align 8, !tbaa !11
  %10955 = load ptr, ptr %5, align 8, !tbaa !5
  %10956 = getelementptr inbounds %struct.w2c_hermes, ptr %10955, i32 0, i32 6
  %10957 = load i32, ptr %48, align 4, !tbaa !9
  %10958 = zext i32 %10957 to i64
  %10959 = add i64 %10958, 8
  %10960 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10956, i64 noundef %10959, i64 noundef %10960)
  %10961 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10961, ptr %48, align 4, !tbaa !9
  %10962 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %10962, ptr %59, align 8, !tbaa !11
  %10963 = load ptr, ptr %5, align 8, !tbaa !5
  %10964 = getelementptr inbounds %struct.w2c_hermes, ptr %10963, i32 0, i32 6
  %10965 = load i32, ptr %48, align 4, !tbaa !9
  %10966 = zext i32 %10965 to i64
  %10967 = add i64 %10966, 24
  %10968 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10964, i64 noundef %10967, i64 noundef %10968)
  %10969 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10969, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %10970 = load i32, ptr %49, align 4, !tbaa !9
  %10971 = load i32, ptr %48, align 4, !tbaa !9
  %10972 = add i32 %10971, %10970
  store i32 %10972, ptr %48, align 4, !tbaa !9
  %10973 = load ptr, ptr %5, align 8, !tbaa !5
  %10974 = load i32, ptr %48, align 4, !tbaa !9
  %10975 = call i32 @w2c_hermes_hermes0x3A0x3AUnaryOperatorInst0x3A0x3AparseOperator0x28llvh0x3A0x3AStringRef0x29(ptr noundef %10973, i32 noundef %10974)
  store i32 %10975, ptr %48, align 4, !tbaa !9
  %10976 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10976, ptr %8, align 4, !tbaa !9
  %10977 = load i32, ptr %48, align 4, !tbaa !9
  switch i32 %10977, label %10981 [
    i32 0, label %10978
    i32 1, label %10979
    i32 2, label %10980
  ]

10978:                                            ; preds = %10930
  br label %10982

10979:                                            ; preds = %10930
  br label %11444

10980:                                            ; preds = %10930
  br label %11378

10981:                                            ; preds = %10930
  br label %11444

10982:                                            ; preds = %10978
  %10983 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10983, ptr %48, align 4, !tbaa !9
  %10984 = load ptr, ptr %5, align 8, !tbaa !5
  %10985 = getelementptr inbounds %struct.w2c_hermes, ptr %10984, i32 0, i32 6
  %10986 = load i32, ptr %48, align 4, !tbaa !9
  %10987 = zext i32 %10986 to i64
  %10988 = add i64 %10987, 32
  %10989 = call i32 @i32_load(ptr noundef %10985, i64 noundef %10988)
  store i32 %10989, ptr %48, align 4, !tbaa !9
  %10990 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10990, ptr %7, align 4, !tbaa !9
  %10991 = load ptr, ptr %5, align 8, !tbaa !5
  %10992 = getelementptr inbounds %struct.w2c_hermes, ptr %10991, i32 0, i32 6
  %10993 = load i32, ptr %48, align 4, !tbaa !9
  %10994 = zext i32 %10993 to i64
  %10995 = add i64 %10994, 8
  %10996 = call i32 @i32_load(ptr noundef %10992, i64 noundef %10995)
  store i32 %10996, ptr %48, align 4, !tbaa !9
  %10997 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %10997, ptr %8, align 4, !tbaa !9
  %10998 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10998, ptr %48, align 4, !tbaa !9
  %10999 = load i32, ptr %48, align 4, !tbaa !9
  %11000 = icmp ne i32 %10999, 0
  %11001 = xor i1 %11000, true
  %11002 = zext i1 %11001 to i32
  store i32 %11002, ptr %48, align 4, !tbaa !9
  %11003 = load i32, ptr %48, align 4, !tbaa !9
  %11004 = icmp ne i32 %11003, 0
  br i1 %11004, label %11005, label %11006

11005:                                            ; preds = %10982
  br label %11057

11006:                                            ; preds = %10982
  %11007 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11007, ptr %48, align 4, !tbaa !9
  store i32 54, ptr %49, align 4, !tbaa !9
  %11008 = load i32, ptr %48, align 4, !tbaa !9
  %11009 = load i32, ptr %49, align 4, !tbaa !9
  %11010 = icmp ne i32 %11008, %11009
  %11011 = zext i1 %11010 to i32
  store i32 %11011, ptr %48, align 4, !tbaa !9
  %11012 = load i32, ptr %48, align 4, !tbaa !9
  %11013 = icmp ne i32 %11012, 0
  br i1 %11013, label %11014, label %11015

11014:                                            ; preds = %11006
  br label %11057

11015:                                            ; preds = %11006
  %11016 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11016, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %11017 = load i32, ptr %49, align 4, !tbaa !9
  %11018 = load i32, ptr %48, align 4, !tbaa !9
  %11019 = add i32 %11018, %11017
  store i32 %11019, ptr %48, align 4, !tbaa !9
  %11020 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11020, ptr %49, align 4, !tbaa !9
  %11021 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11021, ptr %50, align 4, !tbaa !9
  %11022 = load ptr, ptr %5, align 8, !tbaa !5
  %11023 = getelementptr inbounds %struct.w2c_hermes, ptr %11022, i32 0, i32 6
  %11024 = load i32, ptr %50, align 4, !tbaa !9
  %11025 = zext i32 %11024 to i64
  %11026 = add i64 %11025, 28
  %11027 = call i32 @i32_load(ptr noundef %11023, i64 noundef %11026)
  store i32 %11027, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %11028 = load ptr, ptr %5, align 8, !tbaa !5
  %11029 = load i32, ptr %49, align 4, !tbaa !9
  %11030 = load i32, ptr %50, align 4, !tbaa !9
  %11031 = load i32, ptr %51, align 4, !tbaa !9
  %11032 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %11028, i32 noundef %11029, i32 noundef %11030, i32 noundef %11031)
  store i32 %11032, ptr %49, align 4, !tbaa !9
  %11033 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11033, ptr %50, align 4, !tbaa !9
  %11034 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11034, ptr %51, align 4, !tbaa !9
  %11035 = load ptr, ptr %5, align 8, !tbaa !5
  %11036 = load i32, ptr %50, align 4, !tbaa !9
  %11037 = load i32, ptr %51, align 4, !tbaa !9
  %11038 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenMemberExpressionProperty0x28hermes0x3A0x3AESTree0x3A0x3AMemberExpressionLikeNode0x2A0x29(ptr noundef %11035, i32 noundef %11036, i32 noundef %11037)
  store i32 %11038, ptr %50, align 4, !tbaa !9
  %11039 = load ptr, ptr %5, align 8, !tbaa !5
  %11040 = load i32, ptr %48, align 4, !tbaa !9
  %11041 = load i32, ptr %49, align 4, !tbaa !9
  %11042 = load i32, ptr %50, align 4, !tbaa !9
  %11043 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateDeletePropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %11039, i32 noundef %11040, i32 noundef %11041, i32 noundef %11042)
  store i32 %11043, ptr %48, align 4, !tbaa !9
  %11044 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11044, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %11045 = load i32, ptr %49, align 4, !tbaa !9
  %11046 = load i32, ptr %48, align 4, !tbaa !9
  %11047 = add i32 %11046, %11045
  store i32 %11047, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11048 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11048, ptr %50, align 4, !tbaa !9
  %11049 = load i32, ptr %50, align 4, !tbaa !9
  %11050 = icmp ne i32 %11049, 0
  br i1 %11050, label %11051, label %11053

11051:                                            ; preds = %11015
  %11052 = load i32, ptr %48, align 4, !tbaa !9
  br label %11055

11053:                                            ; preds = %11015
  %11054 = load i32, ptr %49, align 4, !tbaa !9
  br label %11055

11055:                                            ; preds = %11053, %11051
  %11056 = phi i32 [ %11052, %11051 ], [ %11054, %11053 ]
  store i32 %11056, ptr %48, align 4, !tbaa !9
  br label %11757

11057:                                            ; preds = %11014, %11005
  %11058 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11058, ptr %48, align 4, !tbaa !9
  %11059 = load i32, ptr %48, align 4, !tbaa !9
  %11060 = icmp ne i32 %11059, 0
  %11061 = xor i1 %11060, true
  %11062 = zext i1 %11061 to i32
  store i32 %11062, ptr %48, align 4, !tbaa !9
  %11063 = load i32, ptr %48, align 4, !tbaa !9
  %11064 = icmp ne i32 %11063, 0
  br i1 %11064, label %11065, label %11066

11065:                                            ; preds = %11057
  br label %11095

11066:                                            ; preds = %11057
  %11067 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11067, ptr %48, align 4, !tbaa !9
  store i32 55, ptr %49, align 4, !tbaa !9
  %11068 = load i32, ptr %48, align 4, !tbaa !9
  %11069 = load i32, ptr %49, align 4, !tbaa !9
  %11070 = icmp ne i32 %11068, %11069
  %11071 = zext i1 %11070 to i32
  store i32 %11071, ptr %48, align 4, !tbaa !9
  %11072 = load i32, ptr %48, align 4, !tbaa !9
  %11073 = icmp ne i32 %11072, 0
  br i1 %11073, label %11074, label %11075

11074:                                            ; preds = %11066
  br label %11095

11075:                                            ; preds = %11066
  %11076 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11076, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %11077 = load i32, ptr %49, align 4, !tbaa !9
  %11078 = load i32, ptr %48, align 4, !tbaa !9
  %11079 = add i32 %11078, %11077
  store i32 %11079, ptr %48, align 4, !tbaa !9
  %11080 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11080, ptr %49, align 4, !tbaa !9
  %11081 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11081, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  store i32 1, ptr %52, align 4, !tbaa !9
  %11082 = load ptr, ptr %5, align 8, !tbaa !5
  %11083 = load i32, ptr %48, align 4, !tbaa !9
  %11084 = load i32, ptr %49, align 4, !tbaa !9
  %11085 = load i32, ptr %50, align 4, !tbaa !9
  %11086 = load i32, ptr %51, align 4, !tbaa !9
  %11087 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalMemberExpression0x28hermes0x3A0x3AESTree0x3A0x3AOptionalMemberExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AMemberExpressionOperation0x29(ptr noundef %11082, i32 noundef %11083, i32 noundef %11084, i32 noundef %11085, i32 noundef %11086, i32 noundef %11087)
  %11088 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11088, ptr %48, align 4, !tbaa !9
  %11089 = load ptr, ptr %5, align 8, !tbaa !5
  %11090 = getelementptr inbounds %struct.w2c_hermes, ptr %11089, i32 0, i32 6
  %11091 = load i32, ptr %48, align 4, !tbaa !9
  %11092 = zext i32 %11091 to i64
  %11093 = add i64 %11092, 16
  %11094 = call i32 @i32_load(ptr noundef %11090, i64 noundef %11093)
  store i32 %11094, ptr %48, align 4, !tbaa !9
  br label %11757

11095:                                            ; preds = %11074, %11065
  %11096 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11096, ptr %48, align 4, !tbaa !9
  %11097 = load i32, ptr %48, align 4, !tbaa !9
  %11098 = icmp ne i32 %11097, 0
  %11099 = xor i1 %11098, true
  %11100 = zext i1 %11099 to i32
  store i32 %11100, ptr %48, align 4, !tbaa !9
  %11101 = load i32, ptr %48, align 4, !tbaa !9
  %11102 = icmp ne i32 %11101, 0
  br i1 %11102, label %11103, label %11104

11103:                                            ; preds = %11095
  br label %11360

11104:                                            ; preds = %11095
  %11105 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11105, ptr %48, align 4, !tbaa !9
  store i32 62, ptr %49, align 4, !tbaa !9
  %11106 = load i32, ptr %48, align 4, !tbaa !9
  %11107 = load i32, ptr %49, align 4, !tbaa !9
  %11108 = icmp ne i32 %11106, %11107
  %11109 = zext i1 %11108 to i32
  store i32 %11109, ptr %48, align 4, !tbaa !9
  %11110 = load i32, ptr %48, align 4, !tbaa !9
  %11111 = icmp ne i32 %11110, 0
  br i1 %11111, label %11112, label %11113

11112:                                            ; preds = %11104
  br label %11360

11113:                                            ; preds = %11104
  %11114 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11114, ptr %48, align 4, !tbaa !9
  %11115 = load ptr, ptr %5, align 8, !tbaa !5
  %11116 = getelementptr inbounds %struct.w2c_hermes, ptr %11115, i32 0, i32 6
  %11117 = load i32, ptr %48, align 4, !tbaa !9
  %11118 = zext i32 %11117 to i64
  %11119 = add i64 %11118, 44
  %11120 = call i32 @i32_load(ptr noundef %11116, i64 noundef %11119)
  store i32 %11120, ptr %48, align 4, !tbaa !9
  %11121 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11121, ptr %8, align 4, !tbaa !9
  %11122 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11122, ptr %48, align 4, !tbaa !9
  %11123 = load ptr, ptr %5, align 8, !tbaa !5
  %11124 = getelementptr inbounds %struct.w2c_hermes, ptr %11123, i32 0, i32 6
  %11125 = load i32, ptr %48, align 4, !tbaa !9
  %11126 = zext i32 %11125 to i64
  %11127 = add i64 %11126, 28
  %11128 = call i32 @i32_load(ptr noundef %11124, i64 noundef %11127)
  store i32 %11128, ptr %48, align 4, !tbaa !9
  %11129 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11129, ptr %7, align 4, !tbaa !9
  %11130 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11130, ptr %48, align 4, !tbaa !9
  %11131 = load ptr, ptr %5, align 8, !tbaa !5
  %11132 = getelementptr inbounds %struct.w2c_hermes, ptr %11131, i32 0, i32 6
  %11133 = load i32, ptr %48, align 4, !tbaa !9
  %11134 = zext i32 %11133 to i64
  %11135 = add i64 %11134, 56
  %11136 = call i32 @i32_load(ptr noundef %11132, i64 noundef %11135)
  store i32 %11136, ptr %48, align 4, !tbaa !9
  %11137 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11137, ptr %9, align 4, !tbaa !9
  %11138 = load i32, ptr %48, align 4, !tbaa !9
  %11139 = icmp ne i32 %11138, 0
  %11140 = xor i1 %11139, true
  %11141 = zext i1 %11140 to i32
  store i32 %11141, ptr %48, align 4, !tbaa !9
  %11142 = load i32, ptr %48, align 4, !tbaa !9
  %11143 = icmp ne i32 %11142, 0
  br i1 %11143, label %11144, label %11145

11144:                                            ; preds = %11113
  br label %11244

11145:                                            ; preds = %11113
  %11146 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11146, ptr %48, align 4, !tbaa !9
  %11147 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11147, ptr %49, align 4, !tbaa !9
  %11148 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11148, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %11149 = load i32, ptr %51, align 4, !tbaa !9
  %11150 = load i32, ptr %50, align 4, !tbaa !9
  %11151 = sub i32 %11150, %11149
  store i32 %11151, ptr %50, align 4, !tbaa !9
  %11152 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %11152, ptr %12, align 4, !tbaa !9
  %11153 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11153, ptr %51, align 4, !tbaa !9
  store i32 4, ptr %52, align 4, !tbaa !9
  %11154 = load i32, ptr %52, align 4, !tbaa !9
  %11155 = and i32 %11154, 31
  %11156 = load i32, ptr %51, align 4, !tbaa !9
  %11157 = lshr i32 %11156, %11155
  store i32 %11157, ptr %51, align 4, !tbaa !9
  %11158 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11158, ptr %52, align 4, !tbaa !9
  store i32 9, ptr %53, align 4, !tbaa !9
  %11159 = load i32, ptr %53, align 4, !tbaa !9
  %11160 = and i32 %11159, 31
  %11161 = load i32, ptr %52, align 4, !tbaa !9
  %11162 = lshr i32 %11161, %11160
  store i32 %11162, ptr %52, align 4, !tbaa !9
  %11163 = load i32, ptr %52, align 4, !tbaa !9
  %11164 = load i32, ptr %51, align 4, !tbaa !9
  %11165 = xor i32 %11164, %11163
  store i32 %11165, ptr %51, align 4, !tbaa !9
  %11166 = load i32, ptr %51, align 4, !tbaa !9
  %11167 = load i32, ptr %50, align 4, !tbaa !9
  %11168 = and i32 %11167, %11166
  store i32 %11168, ptr %50, align 4, !tbaa !9
  %11169 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %11169, ptr %15, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %11170 = load i32, ptr %51, align 4, !tbaa !9
  %11171 = and i32 %11170, 31
  %11172 = load i32, ptr %50, align 4, !tbaa !9
  %11173 = shl i32 %11172, %11171
  store i32 %11173, ptr %50, align 4, !tbaa !9
  %11174 = load i32, ptr %50, align 4, !tbaa !9
  %11175 = load i32, ptr %49, align 4, !tbaa !9
  %11176 = add i32 %11175, %11174
  store i32 %11176, ptr %49, align 4, !tbaa !9
  %11177 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %11177, ptr %11, align 4, !tbaa !9
  %11178 = load ptr, ptr %5, align 8, !tbaa !5
  %11179 = getelementptr inbounds %struct.w2c_hermes, ptr %11178, i32 0, i32 6
  %11180 = load i32, ptr %49, align 4, !tbaa !9
  %11181 = zext i32 %11180 to i64
  %11182 = call i32 @i32_load(ptr noundef %11179, i64 noundef %11181)
  store i32 %11182, ptr %49, align 4, !tbaa !9
  %11183 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %11183, ptr %16, align 4, !tbaa !9
  %11184 = load i32, ptr %48, align 4, !tbaa !9
  %11185 = load i32, ptr %49, align 4, !tbaa !9
  %11186 = icmp eq i32 %11184, %11185
  %11187 = zext i1 %11186 to i32
  store i32 %11187, ptr %48, align 4, !tbaa !9
  %11188 = load i32, ptr %48, align 4, !tbaa !9
  %11189 = icmp ne i32 %11188, 0
  br i1 %11189, label %11190, label %11191

11190:                                            ; preds = %11145
  br label %11255

11191:                                            ; preds = %11145
  store i32 1, ptr %48, align 4, !tbaa !9
  %11192 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11192, ptr %14, align 4, !tbaa !9
  br label %11193

11193:                                            ; preds = %11242, %11191
  %11194 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %11194, ptr %48, align 4, !tbaa !9
  store i32 -4, ptr %49, align 4, !tbaa !9
  %11195 = load i32, ptr %48, align 4, !tbaa !9
  %11196 = load i32, ptr %49, align 4, !tbaa !9
  %11197 = icmp eq i32 %11195, %11196
  %11198 = zext i1 %11197 to i32
  store i32 %11198, ptr %48, align 4, !tbaa !9
  %11199 = load i32, ptr %48, align 4, !tbaa !9
  %11200 = icmp ne i32 %11199, 0
  br i1 %11200, label %11201, label %11202

11201:                                            ; preds = %11193
  br label %11244

11202:                                            ; preds = %11193
  %11203 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11203, ptr %48, align 4, !tbaa !9
  %11204 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11204, ptr %49, align 4, !tbaa !9
  %11205 = load i32, ptr %49, align 4, !tbaa !9
  %11206 = load i32, ptr %48, align 4, !tbaa !9
  %11207 = add i32 %11206, %11205
  store i32 %11207, ptr %48, align 4, !tbaa !9
  %11208 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11208, ptr %11, align 4, !tbaa !9
  %11209 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11209, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %11210 = load i32, ptr %49, align 4, !tbaa !9
  %11211 = load i32, ptr %48, align 4, !tbaa !9
  %11212 = add i32 %11211, %11210
  store i32 %11212, ptr %48, align 4, !tbaa !9
  %11213 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11213, ptr %14, align 4, !tbaa !9
  %11214 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11214, ptr %48, align 4, !tbaa !9
  %11215 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11215, ptr %49, align 4, !tbaa !9
  %11216 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11216, ptr %50, align 4, !tbaa !9
  %11217 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11217, ptr %51, align 4, !tbaa !9
  %11218 = load i32, ptr %51, align 4, !tbaa !9
  %11219 = load i32, ptr %50, align 4, !tbaa !9
  %11220 = and i32 %11219, %11218
  store i32 %11220, ptr %50, align 4, !tbaa !9
  %11221 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %11221, ptr %15, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %11222 = load i32, ptr %51, align 4, !tbaa !9
  %11223 = and i32 %11222, 31
  %11224 = load i32, ptr %50, align 4, !tbaa !9
  %11225 = shl i32 %11224, %11223
  store i32 %11225, ptr %50, align 4, !tbaa !9
  %11226 = load i32, ptr %50, align 4, !tbaa !9
  %11227 = load i32, ptr %49, align 4, !tbaa !9
  %11228 = add i32 %11227, %11226
  store i32 %11228, ptr %49, align 4, !tbaa !9
  %11229 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %11229, ptr %11, align 4, !tbaa !9
  %11230 = load ptr, ptr %5, align 8, !tbaa !5
  %11231 = getelementptr inbounds %struct.w2c_hermes, ptr %11230, i32 0, i32 6
  %11232 = load i32, ptr %49, align 4, !tbaa !9
  %11233 = zext i32 %11232 to i64
  %11234 = call i32 @i32_load(ptr noundef %11231, i64 noundef %11233)
  store i32 %11234, ptr %49, align 4, !tbaa !9
  %11235 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %11235, ptr %16, align 4, !tbaa !9
  %11236 = load i32, ptr %48, align 4, !tbaa !9
  %11237 = load i32, ptr %49, align 4, !tbaa !9
  %11238 = icmp ne i32 %11236, %11237
  %11239 = zext i1 %11238 to i32
  store i32 %11239, ptr %48, align 4, !tbaa !9
  %11240 = load i32, ptr %48, align 4, !tbaa !9
  %11241 = icmp ne i32 %11240, 0
  br i1 %11241, label %11242, label %11243

11242:                                            ; preds = %11202
  br label %11193

11243:                                            ; preds = %11202
  br label %11255

11244:                                            ; preds = %11201, %11144
  %11245 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11245, ptr %48, align 4, !tbaa !9
  %11246 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11246, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %11247 = load i32, ptr %50, align 4, !tbaa !9
  %11248 = and i32 %11247, 31
  %11249 = load i32, ptr %49, align 4, !tbaa !9
  %11250 = shl i32 %11249, %11248
  store i32 %11250, ptr %49, align 4, !tbaa !9
  %11251 = load i32, ptr %49, align 4, !tbaa !9
  %11252 = load i32, ptr %48, align 4, !tbaa !9
  %11253 = add i32 %11252, %11251
  store i32 %11253, ptr %48, align 4, !tbaa !9
  %11254 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11254, ptr %11, align 4, !tbaa !9
  br label %11255

11255:                                            ; preds = %11244, %11243, %11190
  %11256 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11256, ptr %48, align 4, !tbaa !9
  %11257 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11257, ptr %49, align 4, !tbaa !9
  %11258 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11258, ptr %50, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %11259 = load i32, ptr %51, align 4, !tbaa !9
  %11260 = and i32 %11259, 31
  %11261 = load i32, ptr %50, align 4, !tbaa !9
  %11262 = shl i32 %11261, %11260
  store i32 %11262, ptr %50, align 4, !tbaa !9
  %11263 = load i32, ptr %50, align 4, !tbaa !9
  %11264 = load i32, ptr %49, align 4, !tbaa !9
  %11265 = add i32 %11264, %11263
  store i32 %11265, ptr %49, align 4, !tbaa !9
  %11266 = load i32, ptr %48, align 4, !tbaa !9
  %11267 = load i32, ptr %49, align 4, !tbaa !9
  %11268 = icmp eq i32 %11266, %11267
  %11269 = zext i1 %11268 to i32
  store i32 %11269, ptr %48, align 4, !tbaa !9
  %11270 = load i32, ptr %48, align 4, !tbaa !9
  %11271 = icmp ne i32 %11270, 0
  br i1 %11271, label %11272, label %11273

11272:                                            ; preds = %11255
  br label %11310

11273:                                            ; preds = %11255
  %11274 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11274, ptr %48, align 4, !tbaa !9
  %11275 = load ptr, ptr %5, align 8, !tbaa !5
  %11276 = getelementptr inbounds %struct.w2c_hermes, ptr %11275, i32 0, i32 6
  %11277 = load i32, ptr %48, align 4, !tbaa !9
  %11278 = zext i32 %11277 to i64
  %11279 = add i64 %11278, 4
  %11280 = call i32 @i32_load(ptr noundef %11276, i64 noundef %11279)
  store i32 %11280, ptr %48, align 4, !tbaa !9
  %11281 = load ptr, ptr %5, align 8, !tbaa !5
  %11282 = getelementptr inbounds %struct.w2c_hermes, ptr %11281, i32 0, i32 6
  %11283 = load i32, ptr %48, align 4, !tbaa !9
  %11284 = zext i32 %11283 to i64
  %11285 = add i64 %11284, 4
  %11286 = call i32 @i32_load(ptr noundef %11282, i64 noundef %11285)
  store i32 %11286, ptr %48, align 4, !tbaa !9
  %11287 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11287, ptr %8, align 4, !tbaa !9
  %11288 = load i32, ptr %48, align 4, !tbaa !9
  %11289 = icmp ne i32 %11288, 0
  %11290 = xor i1 %11289, true
  %11291 = zext i1 %11290 to i32
  store i32 %11291, ptr %48, align 4, !tbaa !9
  %11292 = load i32, ptr %48, align 4, !tbaa !9
  %11293 = icmp ne i32 %11292, 0
  br i1 %11293, label %11294, label %11295

11294:                                            ; preds = %11273
  br label %11310

11295:                                            ; preds = %11273
  %11296 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11296, ptr %48, align 4, !tbaa !9
  %11297 = load ptr, ptr %5, align 8, !tbaa !5
  %11298 = getelementptr inbounds %struct.w2c_hermes, ptr %11297, i32 0, i32 6
  %11299 = load i32, ptr %48, align 4, !tbaa !9
  %11300 = zext i32 %11299 to i64
  %11301 = call i32 @i32_load8_u(ptr noundef %11298, i64 noundef %11300)
  store i32 %11301, ptr %48, align 4, !tbaa !9
  store i32 123, ptr %49, align 4, !tbaa !9
  %11302 = load i32, ptr %48, align 4, !tbaa !9
  %11303 = load i32, ptr %49, align 4, !tbaa !9
  %11304 = icmp ne i32 %11302, %11303
  %11305 = zext i1 %11304 to i32
  store i32 %11305, ptr %48, align 4, !tbaa !9
  %11306 = load i32, ptr %48, align 4, !tbaa !9
  %11307 = icmp ne i32 %11306, 0
  br i1 %11307, label %11308, label %11309

11308:                                            ; preds = %11295
  br label %11349

11309:                                            ; preds = %11295
  br label %11310

11310:                                            ; preds = %11309, %11294, %11272
  %11311 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11311, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %11312 = load i32, ptr %49, align 4, !tbaa !9
  %11313 = load i32, ptr %48, align 4, !tbaa !9
  %11314 = add i32 %11313, %11312
  store i32 %11314, ptr %48, align 4, !tbaa !9
  %11315 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11315, ptr %8, align 4, !tbaa !9
  %11316 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11316, ptr %49, align 4, !tbaa !9
  %11317 = load ptr, ptr %5, align 8, !tbaa !5
  %11318 = getelementptr inbounds %struct.w2c_hermes, ptr %11317, i32 0, i32 6
  %11319 = load i32, ptr %49, align 4, !tbaa !9
  %11320 = zext i32 %11319 to i64
  %11321 = call i32 @i32_load(ptr noundef %11318, i64 noundef %11320)
  store i32 %11321, ptr %49, align 4, !tbaa !9
  store i32 212, ptr %50, align 4, !tbaa !9
  %11322 = load i32, ptr %50, align 4, !tbaa !9
  %11323 = load i32, ptr %49, align 4, !tbaa !9
  %11324 = add i32 %11323, %11322
  store i32 %11324, ptr %49, align 4, !tbaa !9
  %11325 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11325, ptr %50, align 4, !tbaa !9
  %11326 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11326, ptr %51, align 4, !tbaa !9
  %11327 = load ptr, ptr %5, align 8, !tbaa !5
  %11328 = load i32, ptr %50, align 4, !tbaa !9
  %11329 = load i32, ptr %51, align 4, !tbaa !9
  %11330 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28hermes0x3A0x3AIdentifier0x29(ptr noundef %11327, i32 noundef %11328, i32 noundef %11329)
  store i32 %11330, ptr %50, align 4, !tbaa !9
  %11331 = load ptr, ptr %5, align 8, !tbaa !5
  %11332 = load i32, ptr %48, align 4, !tbaa !9
  %11333 = load i32, ptr %49, align 4, !tbaa !9
  %11334 = load i32, ptr %50, align 4, !tbaa !9
  %11335 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateDeletePropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %11331, i32 noundef %11332, i32 noundef %11333, i32 noundef %11334)
  store i32 %11335, ptr %48, align 4, !tbaa !9
  %11336 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11336, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %11337 = load i32, ptr %49, align 4, !tbaa !9
  %11338 = load i32, ptr %48, align 4, !tbaa !9
  %11339 = add i32 %11338, %11337
  store i32 %11339, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11340 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11340, ptr %50, align 4, !tbaa !9
  %11341 = load i32, ptr %50, align 4, !tbaa !9
  %11342 = icmp ne i32 %11341, 0
  br i1 %11342, label %11343, label %11345

11343:                                            ; preds = %11310
  %11344 = load i32, ptr %48, align 4, !tbaa !9
  br label %11347

11345:                                            ; preds = %11310
  %11346 = load i32, ptr %49, align 4, !tbaa !9
  br label %11347

11347:                                            ; preds = %11345, %11343
  %11348 = phi i32 [ %11344, %11343 ], [ %11346, %11345 ]
  store i32 %11348, ptr %48, align 4, !tbaa !9
  br label %11757

11349:                                            ; preds = %11308
  %11350 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11350, ptr %48, align 4, !tbaa !9
  %11351 = load ptr, ptr %5, align 8, !tbaa !5
  %11352 = getelementptr inbounds %struct.w2c_hermes, ptr %11351, i32 0, i32 6
  %11353 = load i32, ptr %48, align 4, !tbaa !9
  %11354 = zext i32 %11353 to i64
  %11355 = add i64 %11354, 4
  %11356 = call i32 @i32_load(ptr noundef %11352, i64 noundef %11355)
  store i32 %11356, ptr %48, align 4, !tbaa !9
  store i32 324, ptr %49, align 4, !tbaa !9
  %11357 = load i32, ptr %49, align 4, !tbaa !9
  %11358 = load i32, ptr %48, align 4, !tbaa !9
  %11359 = add i32 %11358, %11357
  store i32 %11359, ptr %48, align 4, !tbaa !9
  br label %11757

11360:                                            ; preds = %11112, %11103
  %11361 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11361, ptr %48, align 4, !tbaa !9
  %11362 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11362, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %11363 = load ptr, ptr %5, align 8, !tbaa !5
  %11364 = load i32, ptr %48, align 4, !tbaa !9
  %11365 = load i32, ptr %49, align 4, !tbaa !9
  %11366 = load i32, ptr %50, align 4, !tbaa !9
  %11367 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %11363, i32 noundef %11364, i32 noundef %11365, i32 noundef %11366)
  store i32 %11367, ptr %48, align 4, !tbaa !9
  %11368 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11368, ptr %48, align 4, !tbaa !9
  %11369 = load ptr, ptr %5, align 8, !tbaa !5
  %11370 = getelementptr inbounds %struct.w2c_hermes, ptr %11369, i32 0, i32 6
  %11371 = load i32, ptr %48, align 4, !tbaa !9
  %11372 = zext i32 %11371 to i64
  %11373 = add i64 %11372, 4
  %11374 = call i32 @i32_load(ptr noundef %11370, i64 noundef %11373)
  store i32 %11374, ptr %48, align 4, !tbaa !9
  store i32 356, ptr %49, align 4, !tbaa !9
  %11375 = load i32, ptr %49, align 4, !tbaa !9
  %11376 = load i32, ptr %48, align 4, !tbaa !9
  %11377 = add i32 %11376, %11375
  store i32 %11377, ptr %48, align 4, !tbaa !9
  br label %11757

11378:                                            ; preds = %10980
  %11379 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11379, ptr %48, align 4, !tbaa !9
  %11380 = load ptr, ptr %5, align 8, !tbaa !5
  %11381 = getelementptr inbounds %struct.w2c_hermes, ptr %11380, i32 0, i32 6
  %11382 = load i32, ptr %48, align 4, !tbaa !9
  %11383 = zext i32 %11382 to i64
  %11384 = add i64 %11383, 32
  %11385 = call i32 @i32_load(ptr noundef %11381, i64 noundef %11384)
  store i32 %11385, ptr %48, align 4, !tbaa !9
  %11386 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11386, ptr %7, align 4, !tbaa !9
  %11387 = load i32, ptr %48, align 4, !tbaa !9
  %11388 = icmp ne i32 %11387, 0
  br i1 %11388, label %11389, label %11405

11389:                                            ; preds = %11378
  %11390 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11390, ptr %48, align 4, !tbaa !9
  %11391 = load ptr, ptr %5, align 8, !tbaa !5
  %11392 = getelementptr inbounds %struct.w2c_hermes, ptr %11391, i32 0, i32 6
  %11393 = load i32, ptr %48, align 4, !tbaa !9
  %11394 = zext i32 %11393 to i64
  %11395 = add i64 %11394, 8
  %11396 = call i32 @i32_load(ptr noundef %11392, i64 noundef %11395)
  store i32 %11396, ptr %48, align 4, !tbaa !9
  store i32 62, ptr %49, align 4, !tbaa !9
  %11397 = load i32, ptr %48, align 4, !tbaa !9
  %11398 = load i32, ptr %49, align 4, !tbaa !9
  %11399 = icmp eq i32 %11397, %11398
  %11400 = zext i1 %11399 to i32
  store i32 %11400, ptr %48, align 4, !tbaa !9
  %11401 = load i32, ptr %48, align 4, !tbaa !9
  %11402 = icmp ne i32 %11401, 0
  br i1 %11402, label %11403, label %11404

11403:                                            ; preds = %11389
  br label %11414

11404:                                            ; preds = %11389
  br label %11405

11405:                                            ; preds = %11404, %11378
  %11406 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11406, ptr %48, align 4, !tbaa !9
  %11407 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11407, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %11408 = load ptr, ptr %5, align 8, !tbaa !5
  %11409 = load i32, ptr %48, align 4, !tbaa !9
  %11410 = load i32, ptr %49, align 4, !tbaa !9
  %11411 = load i32, ptr %50, align 4, !tbaa !9
  %11412 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %11408, i32 noundef %11409, i32 noundef %11410, i32 noundef %11411)
  store i32 %11412, ptr %48, align 4, !tbaa !9
  %11413 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11413, ptr %7, align 4, !tbaa !9
  br label %11732

11414:                                            ; preds = %11403
  %11415 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11415, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %11416 = load i32, ptr %49, align 4, !tbaa !9
  %11417 = load i32, ptr %48, align 4, !tbaa !9
  %11418 = add i32 %11417, %11416
  store i32 %11418, ptr %48, align 4, !tbaa !9
  %11419 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11419, ptr %49, align 4, !tbaa !9
  %11420 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11420, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %11421 = load ptr, ptr %5, align 8, !tbaa !5
  %11422 = load i32, ptr %49, align 4, !tbaa !9
  %11423 = load i32, ptr %50, align 4, !tbaa !9
  %11424 = load i32, ptr %51, align 4, !tbaa !9
  %11425 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenIdentifierExpression0x28hermes0x3A0x3AESTree0x3A0x3AIdentifierNode0x2A0x2C0x20bool0x29(ptr noundef %11421, i32 noundef %11422, i32 noundef %11423, i32 noundef %11424)
  store i32 %11425, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %11426 = load ptr, ptr %5, align 8, !tbaa !5
  %11427 = load i32, ptr %48, align 4, !tbaa !9
  %11428 = load i32, ptr %49, align 4, !tbaa !9
  %11429 = load i32, ptr %50, align 4, !tbaa !9
  %11430 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateUnaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AUnaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %11426, i32 noundef %11427, i32 noundef %11428, i32 noundef %11429)
  store i32 %11430, ptr %48, align 4, !tbaa !9
  %11431 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11431, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %11432 = load i32, ptr %49, align 4, !tbaa !9
  %11433 = load i32, ptr %48, align 4, !tbaa !9
  %11434 = add i32 %11433, %11432
  store i32 %11434, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11435 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11435, ptr %50, align 4, !tbaa !9
  %11436 = load i32, ptr %50, align 4, !tbaa !9
  %11437 = icmp ne i32 %11436, 0
  br i1 %11437, label %11438, label %11440

11438:                                            ; preds = %11414
  %11439 = load i32, ptr %48, align 4, !tbaa !9
  br label %11442

11440:                                            ; preds = %11414
  %11441 = load i32, ptr %49, align 4, !tbaa !9
  br label %11442

11442:                                            ; preds = %11440, %11438
  %11443 = phi i32 [ %11439, %11438 ], [ %11441, %11440 ]
  store i32 %11443, ptr %48, align 4, !tbaa !9
  br label %11757

11444:                                            ; preds = %10981, %10979
  %11445 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11445, ptr %48, align 4, !tbaa !9
  %11446 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11446, ptr %49, align 4, !tbaa !9
  %11447 = load ptr, ptr %5, align 8, !tbaa !5
  %11448 = getelementptr inbounds %struct.w2c_hermes, ptr %11447, i32 0, i32 6
  %11449 = load i32, ptr %49, align 4, !tbaa !9
  %11450 = zext i32 %11449 to i64
  %11451 = add i64 %11450, 32
  %11452 = call i32 @i32_load(ptr noundef %11448, i64 noundef %11451)
  store i32 %11452, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %11453 = load ptr, ptr %5, align 8, !tbaa !5
  %11454 = load i32, ptr %48, align 4, !tbaa !9
  %11455 = load i32, ptr %49, align 4, !tbaa !9
  %11456 = load i32, ptr %50, align 4, !tbaa !9
  %11457 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %11453, i32 noundef %11454, i32 noundef %11455, i32 noundef %11456)
  store i32 %11457, ptr %48, align 4, !tbaa !9
  %11458 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11458, ptr %7, align 4, !tbaa !9
  %11459 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11459, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %11460 = load i32, ptr %48, align 4, !tbaa !9
  %11461 = load i32, ptr %49, align 4, !tbaa !9
  %11462 = icmp ne i32 %11460, %11461
  %11463 = zext i1 %11462 to i32
  store i32 %11463, ptr %48, align 4, !tbaa !9
  %11464 = load i32, ptr %48, align 4, !tbaa !9
  %11465 = icmp ne i32 %11464, 0
  br i1 %11465, label %11466, label %11467

11466:                                            ; preds = %11444
  br label %11732

11467:                                            ; preds = %11444
  store i32 0, ptr %48, align 4, !tbaa !9
  %11468 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11468, ptr %11, align 4, !tbaa !9
  store i32 80, ptr %48, align 4, !tbaa !9
  %11469 = load ptr, ptr %5, align 8, !tbaa !5
  %11470 = load i32, ptr %48, align 4, !tbaa !9
  %11471 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11469, i32 noundef %11470)
  store i32 %11471, ptr %48, align 4, !tbaa !9
  %11472 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11472, ptr %9, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %11473 = load ptr, ptr %5, align 8, !tbaa !5
  %11474 = getelementptr inbounds %struct.w2c_hermes, ptr %11473, i32 0, i32 6
  %11475 = load i32, ptr %48, align 4, !tbaa !9
  %11476 = zext i32 %11475 to i64
  %11477 = add i64 %11476, 20
  %11478 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11474, i64 noundef %11477, i64 noundef %11478)
  %11479 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11479, ptr %48, align 4, !tbaa !9
  store i32 459775, ptr %49, align 4, !tbaa !9
  %11480 = load ptr, ptr %5, align 8, !tbaa !5
  %11481 = getelementptr inbounds %struct.w2c_hermes, ptr %11480, i32 0, i32 6
  %11482 = load i32, ptr %48, align 4, !tbaa !9
  %11483 = zext i32 %11482 to i64
  %11484 = add i64 %11483, 10
  %11485 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11481, i64 noundef %11484, i32 noundef %11485)
  %11486 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11486, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %11487 = load ptr, ptr %5, align 8, !tbaa !5
  %11488 = getelementptr inbounds %struct.w2c_hermes, ptr %11487, i32 0, i32 6
  %11489 = load i32, ptr %48, align 4, !tbaa !9
  %11490 = zext i32 %11489 to i64
  %11491 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11488, i64 noundef %11490, i64 noundef %11491)
  %11492 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11492, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %11493 = load ptr, ptr %5, align 8, !tbaa !5
  %11494 = getelementptr inbounds %struct.w2c_hermes, ptr %11493, i32 0, i32 6
  %11495 = load i32, ptr %48, align 4, !tbaa !9
  %11496 = zext i32 %11495 to i64
  %11497 = add i64 %11496, 68
  %11498 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11494, i64 noundef %11497, i64 noundef %11498)
  %11499 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11499, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11500 = load ptr, ptr %5, align 8, !tbaa !5
  %11501 = getelementptr inbounds %struct.w2c_hermes, ptr %11500, i32 0, i32 6
  %11502 = load i32, ptr %48, align 4, !tbaa !9
  %11503 = zext i32 %11502 to i64
  %11504 = add i64 %11503, 36
  %11505 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11501, i64 noundef %11504, i32 noundef %11505)
  %11506 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11506, ptr %48, align 4, !tbaa !9
  store i32 19, ptr %49, align 4, !tbaa !9
  %11507 = load ptr, ptr %5, align 8, !tbaa !5
  %11508 = getelementptr inbounds %struct.w2c_hermes, ptr %11507, i32 0, i32 6
  %11509 = load i32, ptr %48, align 4, !tbaa !9
  %11510 = zext i32 %11509 to i64
  %11511 = add i64 %11510, 8
  %11512 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %11508, i64 noundef %11511, i32 noundef %11512)
  %11513 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11513, ptr %48, align 4, !tbaa !9
  %11514 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11514, ptr %49, align 4, !tbaa !9
  store i32 28, ptr %50, align 4, !tbaa !9
  %11515 = load i32, ptr %50, align 4, !tbaa !9
  %11516 = load i32, ptr %49, align 4, !tbaa !9
  %11517 = add i32 %11516, %11515
  store i32 %11517, ptr %49, align 4, !tbaa !9
  %11518 = load ptr, ptr %5, align 8, !tbaa !5
  %11519 = getelementptr inbounds %struct.w2c_hermes, ptr %11518, i32 0, i32 6
  %11520 = load i32, ptr %48, align 4, !tbaa !9
  %11521 = zext i32 %11520 to i64
  %11522 = add i64 %11521, 16
  %11523 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11519, i64 noundef %11522, i32 noundef %11523)
  %11524 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11524, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %11525 = load ptr, ptr %5, align 8, !tbaa !5
  %11526 = getelementptr inbounds %struct.w2c_hermes, ptr %11525, i32 0, i32 6
  %11527 = load i32, ptr %48, align 4, !tbaa !9
  %11528 = zext i32 %11527 to i64
  %11529 = add i64 %11528, 44
  %11530 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11526, i64 noundef %11529, i64 noundef %11530)
  %11531 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11531, ptr %48, align 4, !tbaa !9
  %11532 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11532, ptr %49, align 4, !tbaa !9
  store i32 52, ptr %50, align 4, !tbaa !9
  %11533 = load i32, ptr %50, align 4, !tbaa !9
  %11534 = load i32, ptr %49, align 4, !tbaa !9
  %11535 = add i32 %11534, %11533
  store i32 %11535, ptr %49, align 4, !tbaa !9
  %11536 = load ptr, ptr %5, align 8, !tbaa !5
  %11537 = getelementptr inbounds %struct.w2c_hermes, ptr %11536, i32 0, i32 6
  %11538 = load i32, ptr %48, align 4, !tbaa !9
  %11539 = zext i32 %11538 to i64
  %11540 = add i64 %11539, 40
  %11541 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11537, i64 noundef %11540, i32 noundef %11541)
  %11542 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11542, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11543 = load ptr, ptr %5, align 8, !tbaa !5
  %11544 = getelementptr inbounds %struct.w2c_hermes, ptr %11543, i32 0, i32 6
  %11545 = load i32, ptr %48, align 4, !tbaa !9
  %11546 = zext i32 %11545 to i64
  %11547 = add i64 %11546, 76
  %11548 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11544, i64 noundef %11547, i32 noundef %11548)
  %11549 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11549, ptr %48, align 4, !tbaa !9
  %11550 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11550, ptr %49, align 4, !tbaa !9
  %11551 = load ptr, ptr %5, align 8, !tbaa !5
  %11552 = load i32, ptr %48, align 4, !tbaa !9
  %11553 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %11551, i32 noundef %11552, i32 noundef %11553)
  %11554 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11554, ptr %48, align 4, !tbaa !9
  store i32 458784, ptr %49, align 4, !tbaa !9
  %11555 = load ptr, ptr %5, align 8, !tbaa !5
  %11556 = getelementptr inbounds %struct.w2c_hermes, ptr %11555, i32 0, i32 6
  %11557 = load i32, ptr %48, align 4, !tbaa !9
  %11558 = zext i32 %11557 to i64
  %11559 = add i64 %11558, 10
  %11560 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11556, i64 noundef %11559, i32 noundef %11560)
  %11561 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11561, ptr %48, align 4, !tbaa !9
  %11562 = load ptr, ptr %5, align 8, !tbaa !5
  %11563 = getelementptr inbounds %struct.w2c_hermes, ptr %11562, i32 0, i32 6
  %11564 = load i32, ptr %48, align 4, !tbaa !9
  %11565 = zext i32 %11564 to i64
  %11566 = add i64 %11565, 12
  %11567 = call i32 @i32_load(ptr noundef %11563, i64 noundef %11566)
  store i32 %11567, ptr %48, align 4, !tbaa !9
  %11568 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11568, ptr %12, align 4, !tbaa !9
  %11569 = load ptr, ptr %5, align 8, !tbaa !5
  %11570 = getelementptr inbounds %struct.w2c_hermes, ptr %11569, i32 0, i32 6
  %11571 = load i32, ptr %48, align 4, !tbaa !9
  %11572 = zext i32 %11571 to i64
  %11573 = add i64 %11572, 44
  %11574 = call i32 @i32_load(ptr noundef %11570, i64 noundef %11573)
  store i32 %11574, ptr %48, align 4, !tbaa !9
  %11575 = load ptr, ptr %5, align 8, !tbaa !5
  %11576 = getelementptr inbounds %struct.w2c_hermes, ptr %11575, i32 0, i32 6
  %11577 = load i32, ptr %48, align 4, !tbaa !9
  %11578 = zext i32 %11577 to i64
  %11579 = add i64 %11578, 136
  %11580 = call i64 @i64_load(ptr noundef %11576, i64 noundef %11579)
  store i64 %11580, ptr %58, align 8, !tbaa !11
  %11581 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %11581, ptr %31, align 8, !tbaa !11
  store i64 1095216660480, ptr %59, align 8, !tbaa !11
  %11582 = load i64, ptr %59, align 8, !tbaa !11
  %11583 = load i64, ptr %58, align 8, !tbaa !11
  %11584 = and i64 %11583, %11582
  store i64 %11584, ptr %58, align 8, !tbaa !11
  store i64 0, ptr %59, align 8, !tbaa !11
  %11585 = load i64, ptr %58, align 8, !tbaa !11
  %11586 = load i64, ptr %59, align 8, !tbaa !11
  %11587 = icmp ne i64 %11585, %11586
  %11588 = zext i1 %11587 to i32
  store i32 %11588, ptr %48, align 4, !tbaa !9
  %11589 = load i32, ptr %48, align 4, !tbaa !9
  %11590 = icmp ne i32 %11589, 0
  br i1 %11590, label %11591, label %11604

11591:                                            ; preds = %11467
  %11592 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11592, ptr %48, align 4, !tbaa !9
  %11593 = load ptr, ptr %5, align 8, !tbaa !5
  %11594 = getelementptr inbounds %struct.w2c_hermes, ptr %11593, i32 0, i32 6
  %11595 = load i32, ptr %48, align 4, !tbaa !9
  %11596 = zext i32 %11595 to i64
  %11597 = add i64 %11596, 8
  %11598 = call i32 @i32_load(ptr noundef %11594, i64 noundef %11597)
  store i32 %11598, ptr %48, align 4, !tbaa !9
  %11599 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11599, ptr %7, align 4, !tbaa !9
  %11600 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %11600, ptr %58, align 8, !tbaa !11
  %11601 = load i64, ptr %58, align 8, !tbaa !11
  %11602 = trunc i64 %11601 to i32
  store i32 %11602, ptr %48, align 4, !tbaa !9
  %11603 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11603, ptr %11, align 4, !tbaa !9
  br label %11636

11604:                                            ; preds = %11467
  %11605 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11605, ptr %48, align 4, !tbaa !9
  %11606 = load ptr, ptr %5, align 8, !tbaa !5
  %11607 = getelementptr inbounds %struct.w2c_hermes, ptr %11606, i32 0, i32 6
  %11608 = load i32, ptr %48, align 4, !tbaa !9
  %11609 = zext i32 %11608 to i64
  %11610 = add i64 %11609, 8
  %11611 = call i32 @i32_load(ptr noundef %11607, i64 noundef %11610)
  store i32 %11611, ptr %48, align 4, !tbaa !9
  %11612 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11612, ptr %8, align 4, !tbaa !9
  %11613 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11613, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %11614 = load i32, ptr %50, align 4, !tbaa !9
  %11615 = load i32, ptr %49, align 4, !tbaa !9
  %11616 = add i32 %11615, %11614
  store i32 %11616, ptr %49, align 4, !tbaa !9
  %11617 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %11617, ptr %7, align 4, !tbaa !9
  %11618 = load i32, ptr %48, align 4, !tbaa !9
  %11619 = load i32, ptr %49, align 4, !tbaa !9
  %11620 = icmp eq i32 %11618, %11619
  %11621 = zext i1 %11620 to i32
  store i32 %11621, ptr %48, align 4, !tbaa !9
  %11622 = load i32, ptr %48, align 4, !tbaa !9
  %11623 = icmp ne i32 %11622, 0
  br i1 %11623, label %11624, label %11625

11624:                                            ; preds = %11604
  br label %11636

11625:                                            ; preds = %11604
  %11626 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11626, ptr %48, align 4, !tbaa !9
  %11627 = load ptr, ptr %5, align 8, !tbaa !5
  %11628 = getelementptr inbounds %struct.w2c_hermes, ptr %11627, i32 0, i32 6
  %11629 = load i32, ptr %48, align 4, !tbaa !9
  %11630 = zext i32 %11629 to i64
  %11631 = add i64 %11630, 76
  %11632 = call i32 @i32_load(ptr noundef %11628, i64 noundef %11631)
  store i32 %11632, ptr %48, align 4, !tbaa !9
  %11633 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11633, ptr %11, align 4, !tbaa !9
  %11634 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11634, ptr %48, align 4, !tbaa !9
  %11635 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11635, ptr %7, align 4, !tbaa !9
  br label %11636

11636:                                            ; preds = %11625, %11624, %11591
  %11637 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11637, ptr %48, align 4, !tbaa !9
  %11638 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11638, ptr %49, align 4, !tbaa !9
  %11639 = load ptr, ptr %5, align 8, !tbaa !5
  %11640 = getelementptr inbounds %struct.w2c_hermes, ptr %11639, i32 0, i32 6
  %11641 = load i32, ptr %48, align 4, !tbaa !9
  %11642 = zext i32 %11641 to i64
  %11643 = add i64 %11642, 76
  %11644 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11640, i64 noundef %11643, i32 noundef %11644)
  %11645 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11645, ptr %48, align 4, !tbaa !9
  %11646 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11646, ptr %49, align 4, !tbaa !9
  %11647 = load ptr, ptr %5, align 8, !tbaa !5
  %11648 = getelementptr inbounds %struct.w2c_hermes, ptr %11647, i32 0, i32 6
  %11649 = load i32, ptr %49, align 4, !tbaa !9
  %11650 = zext i32 %11649 to i64
  %11651 = add i64 %11650, 16
  %11652 = call i32 @i32_load(ptr noundef %11648, i64 noundef %11651)
  store i32 %11652, ptr %49, align 4, !tbaa !9
  %11653 = load ptr, ptr %5, align 8, !tbaa !5
  %11654 = getelementptr inbounds %struct.w2c_hermes, ptr %11653, i32 0, i32 6
  %11655 = load i32, ptr %48, align 4, !tbaa !9
  %11656 = zext i32 %11655 to i64
  %11657 = add i64 %11656, 72
  %11658 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11654, i64 noundef %11657, i32 noundef %11658)
  %11659 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11659, ptr %48, align 4, !tbaa !9
  %11660 = load ptr, ptr %5, align 8, !tbaa !5
  %11661 = getelementptr inbounds %struct.w2c_hermes, ptr %11660, i32 0, i32 6
  %11662 = load i32, ptr %48, align 4, !tbaa !9
  %11663 = zext i32 %11662 to i64
  %11664 = add i64 %11663, 20
  %11665 = call i32 @i32_load(ptr noundef %11661, i64 noundef %11664)
  store i32 %11665, ptr %48, align 4, !tbaa !9
  %11666 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11666, ptr %8, align 4, !tbaa !9
  %11667 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11667, ptr %48, align 4, !tbaa !9
  %11668 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11668, ptr %49, align 4, !tbaa !9
  %11669 = load ptr, ptr %5, align 8, !tbaa !5
  %11670 = getelementptr inbounds %struct.w2c_hermes, ptr %11669, i32 0, i32 6
  %11671 = load i32, ptr %48, align 4, !tbaa !9
  %11672 = zext i32 %11671 to i64
  %11673 = add i64 %11672, 36
  %11674 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11670, i64 noundef %11673, i32 noundef %11674)
  %11675 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11675, ptr %48, align 4, !tbaa !9
  %11676 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11676, ptr %49, align 4, !tbaa !9
  %11677 = load ptr, ptr %5, align 8, !tbaa !5
  %11678 = getelementptr inbounds %struct.w2c_hermes, ptr %11677, i32 0, i32 6
  %11679 = load i32, ptr %48, align 4, !tbaa !9
  %11680 = zext i32 %11679 to i64
  %11681 = add i64 %11680, 68
  %11682 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11678, i64 noundef %11681, i32 noundef %11682)
  %11683 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11683, ptr %48, align 4, !tbaa !9
  %11684 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11684, ptr %49, align 4, !tbaa !9
  %11685 = load ptr, ptr %5, align 8, !tbaa !5
  %11686 = getelementptr inbounds %struct.w2c_hermes, ptr %11685, i32 0, i32 6
  %11687 = load i32, ptr %49, align 4, !tbaa !9
  %11688 = zext i32 %11687 to i64
  %11689 = call i32 @i32_load(ptr noundef %11686, i64 noundef %11688)
  store i32 %11689, ptr %49, align 4, !tbaa !9
  %11690 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %11690, ptr %8, align 4, !tbaa !9
  %11691 = load ptr, ptr %5, align 8, !tbaa !5
  %11692 = getelementptr inbounds %struct.w2c_hermes, ptr %11691, i32 0, i32 6
  %11693 = load i32, ptr %48, align 4, !tbaa !9
  %11694 = zext i32 %11693 to i64
  %11695 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11692, i64 noundef %11694, i32 noundef %11695)
  %11696 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11696, ptr %48, align 4, !tbaa !9
  %11697 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11697, ptr %49, align 4, !tbaa !9
  %11698 = load ptr, ptr %5, align 8, !tbaa !5
  %11699 = getelementptr inbounds %struct.w2c_hermes, ptr %11698, i32 0, i32 6
  %11700 = load i32, ptr %48, align 4, !tbaa !9
  %11701 = zext i32 %11700 to i64
  %11702 = add i64 %11701, 4
  %11703 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11699, i64 noundef %11702, i32 noundef %11703)
  %11704 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11704, ptr %48, align 4, !tbaa !9
  %11705 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11705, ptr %49, align 4, !tbaa !9
  %11706 = load ptr, ptr %5, align 8, !tbaa !5
  %11707 = getelementptr inbounds %struct.w2c_hermes, ptr %11706, i32 0, i32 6
  %11708 = load i32, ptr %48, align 4, !tbaa !9
  %11709 = zext i32 %11708 to i64
  %11710 = add i64 %11709, 4
  %11711 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11707, i64 noundef %11710, i32 noundef %11711)
  %11712 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11712, ptr %48, align 4, !tbaa !9
  %11713 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11713, ptr %49, align 4, !tbaa !9
  %11714 = load ptr, ptr %5, align 8, !tbaa !5
  %11715 = getelementptr inbounds %struct.w2c_hermes, ptr %11714, i32 0, i32 6
  %11716 = load i32, ptr %48, align 4, !tbaa !9
  %11717 = zext i32 %11716 to i64
  %11718 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11715, i64 noundef %11717, i32 noundef %11718)
  %11719 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11719, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %11720 = load i32, ptr %49, align 4, !tbaa !9
  %11721 = load i32, ptr %48, align 4, !tbaa !9
  %11722 = add i32 %11721, %11720
  store i32 %11722, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11723 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11723, ptr %50, align 4, !tbaa !9
  %11724 = load i32, ptr %50, align 4, !tbaa !9
  %11725 = icmp ne i32 %11724, 0
  br i1 %11725, label %11726, label %11728

11726:                                            ; preds = %11636
  %11727 = load i32, ptr %48, align 4, !tbaa !9
  br label %11730

11728:                                            ; preds = %11636
  %11729 = load i32, ptr %49, align 4, !tbaa !9
  br label %11730

11730:                                            ; preds = %11728, %11726
  %11731 = phi i32 [ %11727, %11726 ], [ %11729, %11728 ]
  store i32 %11731, ptr %48, align 4, !tbaa !9
  br label %11757

11732:                                            ; preds = %11466, %11405
  %11733 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11733, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %11734 = load i32, ptr %49, align 4, !tbaa !9
  %11735 = load i32, ptr %48, align 4, !tbaa !9
  %11736 = add i32 %11735, %11734
  store i32 %11736, ptr %48, align 4, !tbaa !9
  %11737 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11737, ptr %49, align 4, !tbaa !9
  %11738 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11738, ptr %50, align 4, !tbaa !9
  %11739 = load ptr, ptr %5, align 8, !tbaa !5
  %11740 = load i32, ptr %48, align 4, !tbaa !9
  %11741 = load i32, ptr %49, align 4, !tbaa !9
  %11742 = load i32, ptr %50, align 4, !tbaa !9
  %11743 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateUnaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AUnaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %11739, i32 noundef %11740, i32 noundef %11741, i32 noundef %11742)
  store i32 %11743, ptr %48, align 4, !tbaa !9
  %11744 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11744, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %11745 = load i32, ptr %49, align 4, !tbaa !9
  %11746 = load i32, ptr %48, align 4, !tbaa !9
  %11747 = add i32 %11746, %11745
  store i32 %11747, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11748 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11748, ptr %50, align 4, !tbaa !9
  %11749 = load i32, ptr %50, align 4, !tbaa !9
  %11750 = icmp ne i32 %11749, 0
  br i1 %11750, label %11751, label %11753

11751:                                            ; preds = %11732
  %11752 = load i32, ptr %48, align 4, !tbaa !9
  br label %11755

11753:                                            ; preds = %11732
  %11754 = load i32, ptr %49, align 4, !tbaa !9
  br label %11755

11755:                                            ; preds = %11753, %11751
  %11756 = phi i32 [ %11752, %11751 ], [ %11754, %11753 ]
  store i32 %11756, ptr %48, align 4, !tbaa !9
  br label %11757

11757:                                            ; preds = %11755, %11730, %11442, %11360, %11349, %11347, %11075, %11055
  %11758 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11758, ptr %7, align 4, !tbaa !9
  %11759 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11759, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %11760 = load i32, ptr %49, align 4, !tbaa !9
  %11761 = load i32, ptr %48, align 4, !tbaa !9
  %11762 = add i32 %11761, %11760
  store i32 %11762, ptr %48, align 4, !tbaa !9
  %11763 = load i32, ptr %48, align 4, !tbaa !9
  %11764 = load ptr, ptr %5, align 8, !tbaa !5
  %11765 = getelementptr inbounds %struct.w2c_hermes, ptr %11764, i32 0, i32 3
  store i32 %11763, ptr %11765, align 8, !tbaa !15
  %11766 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11766, ptr %48, align 4, !tbaa !9
  br label %22463

11767:                                            ; preds = %10929, %10920
  %11768 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11768, ptr %48, align 4, !tbaa !9
  store i32 36, ptr %49, align 4, !tbaa !9
  %11769 = load i32, ptr %48, align 4, !tbaa !9
  %11770 = load i32, ptr %49, align 4, !tbaa !9
  %11771 = icmp eq i32 %11769, %11770
  %11772 = zext i1 %11771 to i32
  store i32 %11772, ptr %48, align 4, !tbaa !9
  %11773 = load i32, ptr %48, align 4, !tbaa !9
  %11774 = icmp ne i32 %11773, 0
  br i1 %11774, label %11775, label %11845

11775:                                            ; preds = %11767
  %11776 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11776, ptr %48, align 4, !tbaa !9
  %11777 = load ptr, ptr %5, align 8, !tbaa !5
  %11778 = getelementptr inbounds %struct.w2c_hermes, ptr %11777, i32 0, i32 6
  %11779 = load i32, ptr %48, align 4, !tbaa !9
  %11780 = zext i32 %11779 to i64
  %11781 = add i64 %11780, 40
  %11782 = call i32 @i32_load(ptr noundef %11778, i64 noundef %11781)
  store i32 %11782, ptr %48, align 4, !tbaa !9
  %11783 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11783, ptr %7, align 4, !tbaa !9
  %11784 = load ptr, ptr %5, align 8, !tbaa !5
  %11785 = getelementptr inbounds %struct.w2c_hermes, ptr %11784, i32 0, i32 6
  %11786 = load i32, ptr %48, align 4, !tbaa !9
  %11787 = zext i32 %11786 to i64
  %11788 = add i64 %11787, 60
  %11789 = call i32 @i32_load(ptr noundef %11785, i64 noundef %11788)
  store i32 %11789, ptr %48, align 4, !tbaa !9
  %11790 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11790, ptr %8, align 4, !tbaa !9
  %11791 = load ptr, ptr %5, align 8, !tbaa !5
  %11792 = getelementptr inbounds %struct.w2c_hermes, ptr %11791, i32 0, i32 6
  %11793 = load i32, ptr %48, align 4, !tbaa !9
  %11794 = zext i32 %11793 to i64
  %11795 = add i64 %11794, 104
  %11796 = call i32 @i32_load(ptr noundef %11792, i64 noundef %11795)
  store i32 %11796, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %11797 = load i32, ptr %48, align 4, !tbaa !9
  %11798 = load i32, ptr %49, align 4, !tbaa !9
  %11799 = icmp eq i32 %11797, %11798
  %11800 = zext i1 %11799 to i32
  store i32 %11800, ptr %48, align 4, !tbaa !9
  %11801 = load i32, ptr %48, align 4, !tbaa !9
  %11802 = icmp ne i32 %11801, 0
  br i1 %11802, label %11803, label %11837

11803:                                            ; preds = %11775
  %11804 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11804, ptr %48, align 4, !tbaa !9
  %11805 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11805, ptr %49, align 4, !tbaa !9
  %11806 = load ptr, ptr %5, align 8, !tbaa !5
  %11807 = getelementptr inbounds %struct.w2c_hermes, ptr %11806, i32 0, i32 6
  %11808 = load i32, ptr %49, align 4, !tbaa !9
  %11809 = zext i32 %11808 to i64
  %11810 = add i64 %11809, 92
  %11811 = call i32 @i32_load(ptr noundef %11807, i64 noundef %11810)
  store i32 %11811, ptr %49, align 4, !tbaa !9
  %11812 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11812, ptr %50, align 4, !tbaa !9
  %11813 = load ptr, ptr %5, align 8, !tbaa !5
  %11814 = getelementptr inbounds %struct.w2c_hermes, ptr %11813, i32 0, i32 6
  %11815 = load i32, ptr %50, align 4, !tbaa !9
  %11816 = zext i32 %11815 to i64
  %11817 = add i64 %11816, 88
  %11818 = call i32 @i32_load(ptr noundef %11814, i64 noundef %11817)
  store i32 %11818, ptr %50, align 4, !tbaa !9
  %11819 = load ptr, ptr %5, align 8, !tbaa !5
  %11820 = load i32, ptr %48, align 4, !tbaa !9
  %11821 = load i32, ptr %49, align 4, !tbaa !9
  %11822 = load i32, ptr %50, align 4, !tbaa !9
  %11823 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadFrameInst0x28hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef %11819, i32 noundef %11820, i32 noundef %11821, i32 noundef %11822)
  store i32 %11823, ptr %48, align 4, !tbaa !9
  %11824 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11824, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %11825 = load i32, ptr %49, align 4, !tbaa !9
  %11826 = load i32, ptr %48, align 4, !tbaa !9
  %11827 = add i32 %11826, %11825
  store i32 %11827, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11828 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11828, ptr %50, align 4, !tbaa !9
  %11829 = load i32, ptr %50, align 4, !tbaa !9
  %11830 = icmp ne i32 %11829, 0
  br i1 %11830, label %11831, label %11833

11831:                                            ; preds = %11803
  %11832 = load i32, ptr %48, align 4, !tbaa !9
  br label %11835

11833:                                            ; preds = %11803
  %11834 = load i32, ptr %49, align 4, !tbaa !9
  br label %11835

11835:                                            ; preds = %11833, %11831
  %11836 = phi i32 [ %11832, %11831 ], [ %11834, %11833 ]
  store i32 %11836, ptr %48, align 4, !tbaa !9
  br label %22463

11837:                                            ; preds = %11775
  %11838 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11838, ptr %48, align 4, !tbaa !9
  %11839 = load ptr, ptr %5, align 8, !tbaa !5
  %11840 = getelementptr inbounds %struct.w2c_hermes, ptr %11839, i32 0, i32 6
  %11841 = load i32, ptr %48, align 4, !tbaa !9
  %11842 = zext i32 %11841 to i64
  %11843 = add i64 %11842, 128
  %11844 = call i32 @i32_load(ptr noundef %11840, i64 noundef %11843)
  store i32 %11844, ptr %48, align 4, !tbaa !9
  br label %22463

11845:                                            ; preds = %11767
  %11846 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11846, ptr %48, align 4, !tbaa !9
  %11847 = load i32, ptr %48, align 4, !tbaa !9
  %11848 = icmp ne i32 %11847, 0
  %11849 = xor i1 %11848, true
  %11850 = zext i1 %11849 to i32
  store i32 %11850, ptr %48, align 4, !tbaa !9
  %11851 = load i32, ptr %48, align 4, !tbaa !9
  %11852 = icmp ne i32 %11851, 0
  br i1 %11852, label %11853, label %11854

11853:                                            ; preds = %11845
  br label %11969

11854:                                            ; preds = %11845
  %11855 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11855, ptr %48, align 4, !tbaa !9
  store i32 64, ptr %49, align 4, !tbaa !9
  %11856 = load i32, ptr %48, align 4, !tbaa !9
  %11857 = load i32, ptr %49, align 4, !tbaa !9
  %11858 = icmp ne i32 %11856, %11857
  %11859 = zext i1 %11858 to i32
  store i32 %11859, ptr %48, align 4, !tbaa !9
  %11860 = load i32, ptr %48, align 4, !tbaa !9
  %11861 = icmp ne i32 %11860, 0
  br i1 %11861, label %11862, label %11863

11862:                                            ; preds = %11854
  br label %11969

11863:                                            ; preds = %11854
  %11864 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11864, ptr %48, align 4, !tbaa !9
  %11865 = load ptr, ptr %5, align 8, !tbaa !5
  %11866 = getelementptr inbounds %struct.w2c_hermes, ptr %11865, i32 0, i32 6
  %11867 = load i32, ptr %48, align 4, !tbaa !9
  %11868 = zext i32 %11867 to i64
  %11869 = add i64 %11868, 40
  %11870 = call i32 @i32_load(ptr noundef %11866, i64 noundef %11869)
  store i32 %11870, ptr %48, align 4, !tbaa !9
  %11871 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11871, ptr %7, align 4, !tbaa !9
  %11872 = load ptr, ptr %5, align 8, !tbaa !5
  %11873 = getelementptr inbounds %struct.w2c_hermes, ptr %11872, i32 0, i32 6
  %11874 = load i32, ptr %48, align 4, !tbaa !9
  %11875 = zext i32 %11874 to i64
  %11876 = add i64 %11875, 60
  %11877 = call i32 @i32_load(ptr noundef %11873, i64 noundef %11876)
  store i32 %11877, ptr %48, align 4, !tbaa !9
  %11878 = load ptr, ptr %5, align 8, !tbaa !5
  %11879 = getelementptr inbounds %struct.w2c_hermes, ptr %11878, i32 0, i32 6
  %11880 = load i32, ptr %48, align 4, !tbaa !9
  %11881 = zext i32 %11880 to i64
  %11882 = add i64 %11881, 104
  %11883 = call i32 @i32_load(ptr noundef %11879, i64 noundef %11882)
  store i32 %11883, ptr %48, align 4, !tbaa !9
  store i32 -2, ptr %49, align 4, !tbaa !9
  %11884 = load i32, ptr %49, align 4, !tbaa !9
  %11885 = load i32, ptr %48, align 4, !tbaa !9
  %11886 = and i32 %11885, %11884
  store i32 %11886, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %11887 = load i32, ptr %48, align 4, !tbaa !9
  %11888 = load i32, ptr %49, align 4, !tbaa !9
  %11889 = icmp eq i32 %11887, %11888
  %11890 = zext i1 %11889 to i32
  store i32 %11890, ptr %48, align 4, !tbaa !9
  %11891 = load i32, ptr %48, align 4, !tbaa !9
  %11892 = icmp ne i32 %11891, 0
  br i1 %11892, label %11893, label %11901

11893:                                            ; preds = %11863
  %11894 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11894, ptr %48, align 4, !tbaa !9
  %11895 = load ptr, ptr %5, align 8, !tbaa !5
  %11896 = getelementptr inbounds %struct.w2c_hermes, ptr %11895, i32 0, i32 6
  %11897 = load i32, ptr %48, align 4, !tbaa !9
  %11898 = zext i32 %11897 to i64
  %11899 = add i64 %11898, 96
  %11900 = call i32 @i32_load(ptr noundef %11896, i64 noundef %11899)
  store i32 %11900, ptr %48, align 4, !tbaa !9
  br label %11922

11901:                                            ; preds = %11863
  %11902 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11902, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %11903 = load i32, ptr %49, align 4, !tbaa !9
  %11904 = load i32, ptr %48, align 4, !tbaa !9
  %11905 = add i32 %11904, %11903
  store i32 %11905, ptr %48, align 4, !tbaa !9
  %11906 = load ptr, ptr %5, align 8, !tbaa !5
  %11907 = load i32, ptr %48, align 4, !tbaa !9
  %11908 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateGetNewTargetInst0x280x29(ptr noundef %11906, i32 noundef %11907)
  store i32 %11908, ptr %48, align 4, !tbaa !9
  %11909 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11909, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %11910 = load i32, ptr %49, align 4, !tbaa !9
  %11911 = load i32, ptr %48, align 4, !tbaa !9
  %11912 = add i32 %11911, %11910
  store i32 %11912, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11913 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11913, ptr %50, align 4, !tbaa !9
  %11914 = load i32, ptr %50, align 4, !tbaa !9
  %11915 = icmp ne i32 %11914, 0
  br i1 %11915, label %11916, label %11918

11916:                                            ; preds = %11901
  %11917 = load i32, ptr %48, align 4, !tbaa !9
  br label %11920

11918:                                            ; preds = %11901
  %11919 = load i32, ptr %49, align 4, !tbaa !9
  br label %11920

11920:                                            ; preds = %11918, %11916
  %11921 = phi i32 [ %11917, %11916 ], [ %11919, %11918 ]
  store i32 %11921, ptr %48, align 4, !tbaa !9
  br label %11922

11922:                                            ; preds = %11920, %11893
  %11923 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11923, ptr %7, align 4, !tbaa !9
  %11924 = load ptr, ptr %5, align 8, !tbaa !5
  %11925 = getelementptr inbounds %struct.w2c_hermes, ptr %11924, i32 0, i32 6
  %11926 = load i32, ptr %48, align 4, !tbaa !9
  %11927 = zext i32 %11926 to i64
  %11928 = call i32 @i32_load8_u(ptr noundef %11925, i64 noundef %11927)
  store i32 %11928, ptr %48, align 4, !tbaa !9
  store i32 124, ptr %49, align 4, !tbaa !9
  %11929 = load i32, ptr %48, align 4, !tbaa !9
  %11930 = load i32, ptr %49, align 4, !tbaa !9
  %11931 = icmp eq i32 %11929, %11930
  %11932 = zext i1 %11931 to i32
  store i32 %11932, ptr %48, align 4, !tbaa !9
  %11933 = load i32, ptr %48, align 4, !tbaa !9
  %11934 = icmp ne i32 %11933, 0
  br i1 %11934, label %11935, label %11966

11935:                                            ; preds = %11922
  %11936 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11936, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %11937 = load i32, ptr %49, align 4, !tbaa !9
  %11938 = load i32, ptr %48, align 4, !tbaa !9
  %11939 = add i32 %11938, %11937
  store i32 %11939, ptr %48, align 4, !tbaa !9
  %11940 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11940, ptr %49, align 4, !tbaa !9
  %11941 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11941, ptr %50, align 4, !tbaa !9
  %11942 = load ptr, ptr %5, align 8, !tbaa !5
  %11943 = getelementptr inbounds %struct.w2c_hermes, ptr %11942, i32 0, i32 6
  %11944 = load i32, ptr %50, align 4, !tbaa !9
  %11945 = zext i32 %11944 to i64
  %11946 = add i64 %11945, 88
  %11947 = call i32 @i32_load(ptr noundef %11943, i64 noundef %11946)
  store i32 %11947, ptr %50, align 4, !tbaa !9
  %11948 = load ptr, ptr %5, align 8, !tbaa !5
  %11949 = load i32, ptr %48, align 4, !tbaa !9
  %11950 = load i32, ptr %49, align 4, !tbaa !9
  %11951 = load i32, ptr %50, align 4, !tbaa !9
  %11952 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadFrameInst0x28hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef %11948, i32 noundef %11949, i32 noundef %11950, i32 noundef %11951)
  store i32 %11952, ptr %48, align 4, !tbaa !9
  %11953 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11953, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %11954 = load i32, ptr %49, align 4, !tbaa !9
  %11955 = load i32, ptr %48, align 4, !tbaa !9
  %11956 = add i32 %11955, %11954
  store i32 %11956, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %11957 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11957, ptr %50, align 4, !tbaa !9
  %11958 = load i32, ptr %50, align 4, !tbaa !9
  %11959 = icmp ne i32 %11958, 0
  br i1 %11959, label %11960, label %11962

11960:                                            ; preds = %11935
  %11961 = load i32, ptr %48, align 4, !tbaa !9
  br label %11964

11962:                                            ; preds = %11935
  %11963 = load i32, ptr %49, align 4, !tbaa !9
  br label %11964

11964:                                            ; preds = %11962, %11960
  %11965 = phi i32 [ %11961, %11960 ], [ %11963, %11962 ]
  store i32 %11965, ptr %48, align 4, !tbaa !9
  br label %11968

11966:                                            ; preds = %11922
  %11967 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11967, ptr %48, align 4, !tbaa !9
  br label %11968

11968:                                            ; preds = %11966, %11964
  br label %22463

11969:                                            ; preds = %11862, %11853
  %11970 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11970, ptr %48, align 4, !tbaa !9
  %11971 = load i32, ptr %48, align 4, !tbaa !9
  %11972 = icmp ne i32 %11971, 0
  %11973 = xor i1 %11972, true
  %11974 = zext i1 %11973 to i32
  store i32 %11974, ptr %48, align 4, !tbaa !9
  %11975 = load i32, ptr %48, align 4, !tbaa !9
  %11976 = icmp ne i32 %11975, 0
  br i1 %11976, label %11977, label %11978

11977:                                            ; preds = %11969
  br label %13515

11978:                                            ; preds = %11969
  %11979 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11979, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %11980 = load i32, ptr %48, align 4, !tbaa !9
  %11981 = load i32, ptr %49, align 4, !tbaa !9
  %11982 = icmp ne i32 %11980, %11981
  %11983 = zext i1 %11982 to i32
  store i32 %11983, ptr %48, align 4, !tbaa !9
  %11984 = load i32, ptr %48, align 4, !tbaa !9
  %11985 = icmp ne i32 %11984, 0
  br i1 %11985, label %11986, label %11987

11986:                                            ; preds = %11978
  br label %13515

11987:                                            ; preds = %11978
  %11988 = load ptr, ptr %5, align 8, !tbaa !5
  %11989 = getelementptr inbounds %struct.w2c_hermes, ptr %11988, i32 0, i32 3
  %11990 = load i32, ptr %11989, align 8, !tbaa !15
  store i32 %11990, ptr %48, align 4, !tbaa !9
  store i32 -64, ptr %49, align 4, !tbaa !9
  %11991 = load i32, ptr %49, align 4, !tbaa !9
  %11992 = load i32, ptr %48, align 4, !tbaa !9
  %11993 = add i32 %11992, %11991
  store i32 %11993, ptr %48, align 4, !tbaa !9
  %11994 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %11994, ptr %9, align 4, !tbaa !9
  %11995 = load i32, ptr %48, align 4, !tbaa !9
  %11996 = load ptr, ptr %5, align 8, !tbaa !5
  %11997 = getelementptr inbounds %struct.w2c_hermes, ptr %11996, i32 0, i32 3
  store i32 %11995, ptr %11997, align 8, !tbaa !15
  %11998 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11998, ptr %48, align 4, !tbaa !9
  %11999 = load ptr, ptr %5, align 8, !tbaa !5
  %12000 = getelementptr inbounds %struct.w2c_hermes, ptr %11999, i32 0, i32 6
  %12001 = load i32, ptr %48, align 4, !tbaa !9
  %12002 = zext i32 %12001 to i64
  %12003 = call i32 @i32_load(ptr noundef %12000, i64 noundef %12002)
  store i32 %12003, ptr %48, align 4, !tbaa !9
  %12004 = load ptr, ptr %5, align 8, !tbaa !5
  %12005 = getelementptr inbounds %struct.w2c_hermes, ptr %12004, i32 0, i32 6
  %12006 = load i32, ptr %48, align 4, !tbaa !9
  %12007 = zext i32 %12006 to i64
  %12008 = add i64 %12007, 28
  %12009 = call i32 @i32_load(ptr noundef %12005, i64 noundef %12008)
  store i32 %12009, ptr %48, align 4, !tbaa !9
  %12010 = load ptr, ptr %5, align 8, !tbaa !5
  %12011 = getelementptr inbounds %struct.w2c_hermes, ptr %12010, i32 0, i32 6
  %12012 = load i32, ptr %48, align 4, !tbaa !9
  %12013 = zext i32 %12012 to i64
  %12014 = add i64 %12013, 137
  %12015 = call i32 @i32_load8_u(ptr noundef %12011, i64 noundef %12014)
  store i32 %12015, ptr %48, align 4, !tbaa !9
  %12016 = load i32, ptr %48, align 4, !tbaa !9
  %12017 = icmp ne i32 %12016, 0
  %12018 = xor i1 %12017, true
  %12019 = zext i1 %12018 to i32
  store i32 %12019, ptr %48, align 4, !tbaa !9
  %12020 = load i32, ptr %48, align 4, !tbaa !9
  %12021 = icmp ne i32 %12020, 0
  br i1 %12021, label %12022, label %12096

12022:                                            ; preds = %11987
  %12023 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12023, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %12024 = load ptr, ptr %5, align 8, !tbaa !5
  %12025 = getelementptr inbounds %struct.w2c_hermes, ptr %12024, i32 0, i32 6
  %12026 = load i32, ptr %48, align 4, !tbaa !9
  %12027 = zext i32 %12026 to i64
  %12028 = add i64 %12027, 24
  %12029 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12025, i64 noundef %12028, i32 noundef %12029)
  %12030 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12030, ptr %48, align 4, !tbaa !9
  %12031 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12031, ptr %49, align 4, !tbaa !9
  store i32 44, ptr %50, align 4, !tbaa !9
  %12032 = load i32, ptr %50, align 4, !tbaa !9
  %12033 = load i32, ptr %49, align 4, !tbaa !9
  %12034 = add i32 %12033, %12032
  store i32 %12034, ptr %49, align 4, !tbaa !9
  %12035 = load ptr, ptr %5, align 8, !tbaa !5
  %12036 = getelementptr inbounds %struct.w2c_hermes, ptr %12035, i32 0, i32 6
  %12037 = load i32, ptr %48, align 4, !tbaa !9
  %12038 = zext i32 %12037 to i64
  %12039 = add i64 %12038, 32
  %12040 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12036, i64 noundef %12039, i32 noundef %12040)
  %12041 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12041, ptr %48, align 4, !tbaa !9
  %12042 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12042, ptr %49, align 4, !tbaa !9
  %12043 = load ptr, ptr %5, align 8, !tbaa !5
  %12044 = getelementptr inbounds %struct.w2c_hermes, ptr %12043, i32 0, i32 6
  %12045 = load i32, ptr %49, align 4, !tbaa !9
  %12046 = zext i32 %12045 to i64
  %12047 = add i64 %12046, 60
  %12048 = call i32 @i32_load(ptr noundef %12044, i64 noundef %12047)
  store i32 %12048, ptr %49, align 4, !tbaa !9
  %12049 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12049, ptr %11, align 4, !tbaa !9
  %12050 = load ptr, ptr %5, align 8, !tbaa !5
  %12051 = getelementptr inbounds %struct.w2c_hermes, ptr %12050, i32 0, i32 6
  %12052 = load i32, ptr %48, align 4, !tbaa !9
  %12053 = zext i32 %12052 to i64
  %12054 = add i64 %12053, 28
  %12055 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12051, i64 noundef %12054, i32 noundef %12055)
  %12056 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12056, ptr %48, align 4, !tbaa !9
  %12057 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12057, ptr %49, align 4, !tbaa !9
  %12058 = load i32, ptr %49, align 4, !tbaa !9
  %12059 = icmp ne i32 %12058, 0
  br i1 %12059, label %12060, label %12070

12060:                                            ; preds = %12022
  %12061 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12061, ptr %49, align 4, !tbaa !9
  %12062 = load ptr, ptr %5, align 8, !tbaa !5
  %12063 = getelementptr inbounds %struct.w2c_hermes, ptr %12062, i32 0, i32 6
  %12064 = load i32, ptr %49, align 4, !tbaa !9
  %12065 = zext i32 %12064 to i64
  %12066 = call i32 @i32_load(ptr noundef %12063, i64 noundef %12065)
  store i32 %12066, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %12067 = load i32, ptr %50, align 4, !tbaa !9
  %12068 = load i32, ptr %49, align 4, !tbaa !9
  %12069 = add i32 %12068, %12067
  store i32 %12069, ptr %49, align 4, !tbaa !9
  br label %12071

12070:                                            ; preds = %12022
  store i32 0, ptr %49, align 4, !tbaa !9
  br label %12071

12071:                                            ; preds = %12070, %12060
  %12072 = load ptr, ptr %5, align 8, !tbaa !5
  %12073 = getelementptr inbounds %struct.w2c_hermes, ptr %12072, i32 0, i32 6
  %12074 = load i32, ptr %48, align 4, !tbaa !9
  %12075 = zext i32 %12074 to i64
  %12076 = add i64 %12075, 20
  %12077 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12073, i64 noundef %12076, i32 noundef %12077)
  %12078 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12078, ptr %48, align 4, !tbaa !9
  %12079 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12079, ptr %49, align 4, !tbaa !9
  store i32 20, ptr %50, align 4, !tbaa !9
  %12080 = load i32, ptr %50, align 4, !tbaa !9
  %12081 = load i32, ptr %49, align 4, !tbaa !9
  %12082 = add i32 %12081, %12080
  store i32 %12082, ptr %49, align 4, !tbaa !9
  %12083 = load ptr, ptr %5, align 8, !tbaa !5
  %12084 = getelementptr inbounds %struct.w2c_hermes, ptr %12083, i32 0, i32 6
  %12085 = load i32, ptr %48, align 4, !tbaa !9
  %12086 = zext i32 %12085 to i64
  %12087 = add i64 %12086, 60
  %12088 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12084, i64 noundef %12087, i32 noundef %12088)
  %12089 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12089, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %12090 = load ptr, ptr %5, align 8, !tbaa !5
  %12091 = getelementptr inbounds %struct.w2c_hermes, ptr %12090, i32 0, i32 6
  %12092 = load i32, ptr %48, align 4, !tbaa !9
  %12093 = zext i32 %12092 to i64
  %12094 = add i64 %12093, 52
  %12095 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %12091, i64 noundef %12094, i32 noundef %12095)
  br label %12247

12096:                                            ; preds = %11987
  %12097 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12097, ptr %48, align 4, !tbaa !9
  %12098 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12098, ptr %49, align 4, !tbaa !9
  %12099 = load ptr, ptr %5, align 8, !tbaa !5
  %12100 = getelementptr inbounds %struct.w2c_hermes, ptr %12099, i32 0, i32 6
  %12101 = load i32, ptr %49, align 4, !tbaa !9
  %12102 = zext i32 %12101 to i64
  %12103 = add i64 %12102, 40
  %12104 = call i32 @i32_load(ptr noundef %12100, i64 noundef %12103)
  store i32 %12104, ptr %49, align 4, !tbaa !9
  %12105 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12105, ptr %10, align 4, !tbaa !9
  %12106 = load ptr, ptr %5, align 8, !tbaa !5
  %12107 = getelementptr inbounds %struct.w2c_hermes, ptr %12106, i32 0, i32 6
  %12108 = load i32, ptr %48, align 4, !tbaa !9
  %12109 = zext i32 %12108 to i64
  %12110 = add i64 %12109, 20
  %12111 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12107, i64 noundef %12110, i32 noundef %12111)
  %12112 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12112, ptr %48, align 4, !tbaa !9
  %12113 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12113, ptr %49, align 4, !tbaa !9
  %12114 = load ptr, ptr %5, align 8, !tbaa !5
  %12115 = getelementptr inbounds %struct.w2c_hermes, ptr %12114, i32 0, i32 6
  %12116 = load i32, ptr %49, align 4, !tbaa !9
  %12117 = zext i32 %12116 to i64
  %12118 = call i32 @i32_load(ptr noundef %12115, i64 noundef %12117)
  store i32 %12118, ptr %49, align 4, !tbaa !9
  %12119 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12119, ptr %11, align 4, !tbaa !9
  %12120 = load ptr, ptr %5, align 8, !tbaa !5
  %12121 = getelementptr inbounds %struct.w2c_hermes, ptr %12120, i32 0, i32 6
  %12122 = load i32, ptr %49, align 4, !tbaa !9
  %12123 = zext i32 %12122 to i64
  %12124 = add i64 %12123, 84
  %12125 = call i32 @i32_load(ptr noundef %12121, i64 noundef %12124)
  store i32 %12125, ptr %49, align 4, !tbaa !9
  %12126 = load ptr, ptr %5, align 8, !tbaa !5
  %12127 = getelementptr inbounds %struct.w2c_hermes, ptr %12126, i32 0, i32 6
  %12128 = load i32, ptr %48, align 4, !tbaa !9
  %12129 = zext i32 %12128 to i64
  %12130 = add i64 %12129, 24
  %12131 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12127, i64 noundef %12130, i32 noundef %12131)
  %12132 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12132, ptr %48, align 4, !tbaa !9
  %12133 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12133, ptr %49, align 4, !tbaa !9
  %12134 = load ptr, ptr %5, align 8, !tbaa !5
  %12135 = getelementptr inbounds %struct.w2c_hermes, ptr %12134, i32 0, i32 6
  %12136 = load i32, ptr %49, align 4, !tbaa !9
  %12137 = zext i32 %12136 to i64
  %12138 = add i64 %12137, 88
  %12139 = call i32 @i32_load(ptr noundef %12135, i64 noundef %12138)
  store i32 %12139, ptr %49, align 4, !tbaa !9
  %12140 = load ptr, ptr %5, align 8, !tbaa !5
  %12141 = getelementptr inbounds %struct.w2c_hermes, ptr %12140, i32 0, i32 6
  %12142 = load i32, ptr %48, align 4, !tbaa !9
  %12143 = zext i32 %12142 to i64
  %12144 = add i64 %12143, 28
  %12145 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12141, i64 noundef %12144, i32 noundef %12145)
  %12146 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12146, ptr %48, align 4, !tbaa !9
  %12147 = load ptr, ptr %5, align 8, !tbaa !5
  %12148 = getelementptr inbounds %struct.w2c_hermes, ptr %12147, i32 0, i32 6
  %12149 = load i32, ptr %48, align 4, !tbaa !9
  %12150 = zext i32 %12149 to i64
  %12151 = add i64 %12150, 72
  %12152 = call i32 @i32_load(ptr noundef %12148, i64 noundef %12151)
  store i32 %12152, ptr %48, align 4, !tbaa !9
  %12153 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12153, ptr %14, align 4, !tbaa !9
  %12154 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12154, ptr %48, align 4, !tbaa !9
  %12155 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12155, ptr %49, align 4, !tbaa !9
  store i32 44, ptr %50, align 4, !tbaa !9
  %12156 = load i32, ptr %50, align 4, !tbaa !9
  %12157 = load i32, ptr %49, align 4, !tbaa !9
  %12158 = add i32 %12157, %12156
  store i32 %12158, ptr %49, align 4, !tbaa !9
  %12159 = load ptr, ptr %5, align 8, !tbaa !5
  %12160 = getelementptr inbounds %struct.w2c_hermes, ptr %12159, i32 0, i32 6
  %12161 = load i32, ptr %48, align 4, !tbaa !9
  %12162 = zext i32 %12161 to i64
  %12163 = add i64 %12162, 48
  %12164 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12160, i64 noundef %12163, i32 noundef %12164)
  %12165 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12165, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %12166 = load ptr, ptr %5, align 8, !tbaa !5
  %12167 = getelementptr inbounds %struct.w2c_hermes, ptr %12166, i32 0, i32 6
  %12168 = load i32, ptr %48, align 4, !tbaa !9
  %12169 = zext i32 %12168 to i64
  %12170 = add i64 %12169, 40
  %12171 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12167, i64 noundef %12170, i32 noundef %12171)
  %12172 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12172, ptr %48, align 4, !tbaa !9
  %12173 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12173, ptr %49, align 4, !tbaa !9
  %12174 = load ptr, ptr %5, align 8, !tbaa !5
  %12175 = getelementptr inbounds %struct.w2c_hermes, ptr %12174, i32 0, i32 6
  %12176 = load i32, ptr %48, align 4, !tbaa !9
  %12177 = zext i32 %12176 to i64
  %12178 = add i64 %12177, 32
  %12179 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12175, i64 noundef %12178, i32 noundef %12179)
  %12180 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12180, ptr %48, align 4, !tbaa !9
  %12181 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12181, ptr %49, align 4, !tbaa !9
  %12182 = load ptr, ptr %5, align 8, !tbaa !5
  %12183 = getelementptr inbounds %struct.w2c_hermes, ptr %12182, i32 0, i32 6
  %12184 = load i32, ptr %49, align 4, !tbaa !9
  %12185 = zext i32 %12184 to i64
  %12186 = add i64 %12185, 60
  %12187 = call i32 @i32_load(ptr noundef %12183, i64 noundef %12186)
  store i32 %12187, ptr %49, align 4, !tbaa !9
  %12188 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12188, ptr %14, align 4, !tbaa !9
  %12189 = load ptr, ptr %5, align 8, !tbaa !5
  %12190 = getelementptr inbounds %struct.w2c_hermes, ptr %12189, i32 0, i32 6
  %12191 = load i32, ptr %48, align 4, !tbaa !9
  %12192 = zext i32 %12191 to i64
  %12193 = add i64 %12192, 44
  %12194 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12190, i64 noundef %12193, i32 noundef %12194)
  %12195 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12195, ptr %48, align 4, !tbaa !9
  %12196 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12196, ptr %49, align 4, !tbaa !9
  %12197 = load i32, ptr %49, align 4, !tbaa !9
  %12198 = icmp ne i32 %12197, 0
  br i1 %12198, label %12199, label %12209

12199:                                            ; preds = %12096
  %12200 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12200, ptr %49, align 4, !tbaa !9
  %12201 = load ptr, ptr %5, align 8, !tbaa !5
  %12202 = getelementptr inbounds %struct.w2c_hermes, ptr %12201, i32 0, i32 6
  %12203 = load i32, ptr %49, align 4, !tbaa !9
  %12204 = zext i32 %12203 to i64
  %12205 = call i32 @i32_load(ptr noundef %12202, i64 noundef %12204)
  store i32 %12205, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %12206 = load i32, ptr %50, align 4, !tbaa !9
  %12207 = load i32, ptr %49, align 4, !tbaa !9
  %12208 = add i32 %12207, %12206
  store i32 %12208, ptr %49, align 4, !tbaa !9
  br label %12210

12209:                                            ; preds = %12096
  store i32 0, ptr %49, align 4, !tbaa !9
  br label %12210

12210:                                            ; preds = %12209, %12199
  %12211 = load ptr, ptr %5, align 8, !tbaa !5
  %12212 = getelementptr inbounds %struct.w2c_hermes, ptr %12211, i32 0, i32 6
  %12213 = load i32, ptr %48, align 4, !tbaa !9
  %12214 = zext i32 %12213 to i64
  %12215 = add i64 %12214, 36
  %12216 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12212, i64 noundef %12215, i32 noundef %12216)
  %12217 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12217, ptr %48, align 4, !tbaa !9
  %12218 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12218, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %12219 = load i32, ptr %50, align 4, !tbaa !9
  %12220 = load i32, ptr %49, align 4, !tbaa !9
  %12221 = add i32 %12220, %12219
  store i32 %12221, ptr %49, align 4, !tbaa !9
  %12222 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12222, ptr %11, align 4, !tbaa !9
  %12223 = load ptr, ptr %5, align 8, !tbaa !5
  %12224 = getelementptr inbounds %struct.w2c_hermes, ptr %12223, i32 0, i32 6
  %12225 = load i32, ptr %48, align 4, !tbaa !9
  %12226 = zext i32 %12225 to i64
  %12227 = add i64 %12226, 60
  %12228 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12224, i64 noundef %12227, i32 noundef %12228)
  %12229 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12229, ptr %48, align 4, !tbaa !9
  %12230 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12230, ptr %49, align 4, !tbaa !9
  %12231 = load ptr, ptr %5, align 8, !tbaa !5
  %12232 = getelementptr inbounds %struct.w2c_hermes, ptr %12231, i32 0, i32 6
  %12233 = load i32, ptr %48, align 4, !tbaa !9
  %12234 = zext i32 %12233 to i64
  %12235 = add i64 %12234, 72
  %12236 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12232, i64 noundef %12235, i32 noundef %12236)
  %12237 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12237, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %12238 = load ptr, ptr %5, align 8, !tbaa !5
  %12239 = getelementptr inbounds %struct.w2c_hermes, ptr %12238, i32 0, i32 6
  %12240 = load i32, ptr %48, align 4, !tbaa !9
  %12241 = zext i32 %12240 to i64
  %12242 = add i64 %12241, 52
  %12243 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %12239, i64 noundef %12242, i32 noundef %12243)
  %12244 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12244, ptr %48, align 4, !tbaa !9
  %12245 = load ptr, ptr %5, align 8, !tbaa !5
  %12246 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AnewDeclarativeEnvironment0x280x29(ptr noundef %12245, i32 noundef %12246)
  br label %12247

12247:                                            ; preds = %12210, %12071
  %12248 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12248, ptr %48, align 4, !tbaa !9
  %12249 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12249, ptr %49, align 4, !tbaa !9
  %12250 = load ptr, ptr %5, align 8, !tbaa !5
  %12251 = getelementptr inbounds %struct.w2c_hermes, ptr %12250, i32 0, i32 6
  %12252 = load i32, ptr %48, align 4, !tbaa !9
  %12253 = zext i32 %12252 to i64
  %12254 = add i64 %12253, 16
  %12255 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12251, i64 noundef %12254, i32 noundef %12255)
  %12256 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12256, ptr %48, align 4, !tbaa !9
  %12257 = load ptr, ptr %5, align 8, !tbaa !5
  %12258 = getelementptr inbounds %struct.w2c_hermes, ptr %12257, i32 0, i32 6
  %12259 = load i32, ptr %48, align 4, !tbaa !9
  %12260 = zext i32 %12259 to i64
  %12261 = add i64 %12260, 44
  %12262 = call i32 @i32_load(ptr noundef %12258, i64 noundef %12261)
  store i32 %12262, ptr %48, align 4, !tbaa !9
  %12263 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12263, ptr %11, align 4, !tbaa !9
  %12264 = load i32, ptr %48, align 4, !tbaa !9
  %12265 = icmp ne i32 %12264, 0
  %12266 = xor i1 %12265, true
  %12267 = zext i1 %12266 to i32
  store i32 %12267, ptr %48, align 4, !tbaa !9
  %12268 = load i32, ptr %48, align 4, !tbaa !9
  %12269 = icmp ne i32 %12268, 0
  br i1 %12269, label %12270, label %12271

12270:                                            ; preds = %12247
  br label %13310

12271:                                            ; preds = %12247
  %12272 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12272, ptr %48, align 4, !tbaa !9
  %12273 = load ptr, ptr %5, align 8, !tbaa !5
  %12274 = getelementptr inbounds %struct.w2c_hermes, ptr %12273, i32 0, i32 6
  %12275 = load i32, ptr %48, align 4, !tbaa !9
  %12276 = zext i32 %12275 to i64
  %12277 = call i32 @i32_load(ptr noundef %12274, i64 noundef %12276)
  store i32 %12277, ptr %48, align 4, !tbaa !9
  %12278 = load ptr, ptr %5, align 8, !tbaa !5
  %12279 = getelementptr inbounds %struct.w2c_hermes, ptr %12278, i32 0, i32 6
  %12280 = load i32, ptr %48, align 4, !tbaa !9
  %12281 = zext i32 %12280 to i64
  %12282 = add i64 %12281, 28
  %12283 = call i32 @i32_load(ptr noundef %12279, i64 noundef %12282)
  store i32 %12283, ptr %48, align 4, !tbaa !9
  %12284 = load ptr, ptr %5, align 8, !tbaa !5
  %12285 = getelementptr inbounds %struct.w2c_hermes, ptr %12284, i32 0, i32 6
  %12286 = load i32, ptr %48, align 4, !tbaa !9
  %12287 = zext i32 %12286 to i64
  %12288 = add i64 %12287, 137
  %12289 = call i32 @i32_load8_u(ptr noundef %12285, i64 noundef %12288)
  store i32 %12289, ptr %48, align 4, !tbaa !9
  %12290 = load i32, ptr %48, align 4, !tbaa !9
  %12291 = icmp ne i32 %12290, 0
  %12292 = xor i1 %12291, true
  %12293 = zext i1 %12292 to i32
  store i32 %12293, ptr %48, align 4, !tbaa !9
  %12294 = load i32, ptr %48, align 4, !tbaa !9
  %12295 = icmp ne i32 %12294, 0
  br i1 %12295, label %12296, label %12567

12296:                                            ; preds = %12271
  %12297 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12297, ptr %48, align 4, !tbaa !9
  %12298 = load ptr, ptr %5, align 8, !tbaa !5
  %12299 = getelementptr inbounds %struct.w2c_hermes, ptr %12298, i32 0, i32 6
  %12300 = load i32, ptr %48, align 4, !tbaa !9
  %12301 = zext i32 %12300 to i64
  %12302 = add i64 %12301, 40
  %12303 = call i32 @i32_load(ptr noundef %12299, i64 noundef %12302)
  store i32 %12303, ptr %48, align 4, !tbaa !9
  %12304 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12304, ptr %8, align 4, !tbaa !9
  %12305 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12305, ptr %48, align 4, !tbaa !9
  store i32 7, ptr %49, align 4, !tbaa !9
  %12306 = load ptr, ptr %5, align 8, !tbaa !5
  %12307 = getelementptr inbounds %struct.w2c_hermes, ptr %12306, i32 0, i32 6
  %12308 = load i32, ptr %48, align 4, !tbaa !9
  %12309 = zext i32 %12308 to i64
  %12310 = add i64 %12309, 60
  %12311 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12307, i64 noundef %12310, i32 noundef %12311)
  %12312 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12312, ptr %48, align 4, !tbaa !9
  store i32 47413, ptr %49, align 4, !tbaa !9
  %12313 = load ptr, ptr %5, align 8, !tbaa !5
  %12314 = getelementptr inbounds %struct.w2c_hermes, ptr %12313, i32 0, i32 6
  %12315 = load i32, ptr %48, align 4, !tbaa !9
  %12316 = zext i32 %12315 to i64
  %12317 = add i64 %12316, 56
  %12318 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12314, i64 noundef %12317, i32 noundef %12318)
  %12319 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12319, ptr %48, align 4, !tbaa !9
  %12320 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12320, ptr %49, align 4, !tbaa !9
  %12321 = load ptr, ptr %5, align 8, !tbaa !5
  %12322 = getelementptr inbounds %struct.w2c_hermes, ptr %12321, i32 0, i32 6
  %12323 = load i32, ptr %49, align 4, !tbaa !9
  %12324 = zext i32 %12323 to i64
  %12325 = add i64 %12324, 56
  %12326 = call i64 @i64_load(ptr noundef %12322, i64 noundef %12325)
  store i64 %12326, ptr %59, align 8, !tbaa !11
  %12327 = load ptr, ptr %5, align 8, !tbaa !5
  %12328 = getelementptr inbounds %struct.w2c_hermes, ptr %12327, i32 0, i32 6
  %12329 = load i32, ptr %48, align 4, !tbaa !9
  %12330 = zext i32 %12329 to i64
  %12331 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12328, i64 noundef %12330, i64 noundef %12331)
  %12332 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12332, ptr %48, align 4, !tbaa !9
  store i32 80, ptr %49, align 4, !tbaa !9
  %12333 = load i32, ptr %49, align 4, !tbaa !9
  %12334 = load i32, ptr %48, align 4, !tbaa !9
  %12335 = add i32 %12334, %12333
  store i32 %12335, ptr %48, align 4, !tbaa !9
  %12336 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12336, ptr %49, align 4, !tbaa !9
  %12337 = load ptr, ptr %5, align 8, !tbaa !5
  %12338 = load i32, ptr %48, align 4, !tbaa !9
  %12339 = load i32, ptr %49, align 4, !tbaa !9
  %12340 = call i32 @w2c_hermes_hermes0x3A0x3AInternalIdentifierMaker0x3A0x3Anext0x28llvh0x3A0x3AStringRef0x29(ptr noundef %12337, i32 noundef %12338, i32 noundef %12339)
  store i32 %12340, ptr %48, align 4, !tbaa !9
  %12341 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12341, ptr %8, align 4, !tbaa !9
  %12342 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12342, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %12343 = load i32, ptr %49, align 4, !tbaa !9
  %12344 = load i32, ptr %48, align 4, !tbaa !9
  %12345 = add i32 %12344, %12343
  store i32 %12345, ptr %48, align 4, !tbaa !9
  %12346 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12346, ptr %49, align 4, !tbaa !9
  %12347 = load ptr, ptr %5, align 8, !tbaa !5
  %12348 = getelementptr inbounds %struct.w2c_hermes, ptr %12347, i32 0, i32 6
  %12349 = load i32, ptr %49, align 4, !tbaa !9
  %12350 = zext i32 %12349 to i64
  %12351 = add i64 %12350, 40
  %12352 = call i32 @i32_load(ptr noundef %12348, i64 noundef %12351)
  store i32 %12352, ptr %49, align 4, !tbaa !9
  %12353 = load ptr, ptr %5, align 8, !tbaa !5
  %12354 = getelementptr inbounds %struct.w2c_hermes, ptr %12353, i32 0, i32 6
  %12355 = load i32, ptr %49, align 4, !tbaa !9
  %12356 = zext i32 %12355 to i64
  %12357 = add i64 %12356, 60
  %12358 = call i32 @i32_load(ptr noundef %12354, i64 noundef %12357)
  store i32 %12358, ptr %49, align 4, !tbaa !9
  %12359 = load ptr, ptr %5, align 8, !tbaa !5
  %12360 = getelementptr inbounds %struct.w2c_hermes, ptr %12359, i32 0, i32 6
  %12361 = load i32, ptr %49, align 4, !tbaa !9
  %12362 = zext i32 %12361 to i64
  %12363 = add i64 %12362, 44
  %12364 = call i32 @i32_load(ptr noundef %12360, i64 noundef %12363)
  store i32 %12364, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %12365 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12365, ptr %51, align 4, !tbaa !9
  %12366 = load ptr, ptr %5, align 8, !tbaa !5
  %12367 = load i32, ptr %48, align 4, !tbaa !9
  %12368 = load i32, ptr %49, align 4, !tbaa !9
  %12369 = load i32, ptr %50, align 4, !tbaa !9
  %12370 = load i32, ptr %51, align 4, !tbaa !9
  %12371 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateVariable0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20hermes0x3A0x3AJavaScriptDeclKind0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %12366, i32 noundef %12367, i32 noundef %12368, i32 noundef %12369, i32 noundef %12370)
  store i32 %12371, ptr %48, align 4, !tbaa !9
  %12372 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12372, ptr %16, align 4, !tbaa !9
  %12373 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12373, ptr %48, align 4, !tbaa !9
  %12374 = load ptr, ptr %5, align 8, !tbaa !5
  %12375 = getelementptr inbounds %struct.w2c_hermes, ptr %12374, i32 0, i32 6
  %12376 = load i32, ptr %48, align 4, !tbaa !9
  %12377 = zext i32 %12376 to i64
  %12378 = add i64 %12377, 40
  %12379 = call i32 @i32_load(ptr noundef %12375, i64 noundef %12378)
  store i32 %12379, ptr %48, align 4, !tbaa !9
  %12380 = load ptr, ptr %5, align 8, !tbaa !5
  %12381 = getelementptr inbounds %struct.w2c_hermes, ptr %12380, i32 0, i32 6
  %12382 = load i32, ptr %48, align 4, !tbaa !9
  %12383 = zext i32 %12382 to i64
  %12384 = add i64 %12383, 68
  %12385 = call i32 @i32_load(ptr noundef %12381, i64 noundef %12384)
  store i32 %12385, ptr %48, align 4, !tbaa !9
  %12386 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12386, ptr %17, align 4, !tbaa !9
  %12387 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12387, ptr %48, align 4, !tbaa !9
  %12388 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12388, ptr %49, align 4, !tbaa !9
  %12389 = load ptr, ptr %5, align 8, !tbaa !5
  %12390 = getelementptr inbounds %struct.w2c_hermes, ptr %12389, i32 0, i32 6
  %12391 = load i32, ptr %49, align 4, !tbaa !9
  %12392 = zext i32 %12391 to i64
  %12393 = add i64 %12392, 32
  %12394 = call i32 @i32_load(ptr noundef %12390, i64 noundef %12393)
  store i32 %12394, ptr %49, align 4, !tbaa !9
  %12395 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12395, ptr %14, align 4, !tbaa !9
  %12396 = load ptr, ptr %5, align 8, !tbaa !5
  %12397 = getelementptr inbounds %struct.w2c_hermes, ptr %12396, i32 0, i32 6
  %12398 = load i32, ptr %48, align 4, !tbaa !9
  %12399 = zext i32 %12398 to i64
  %12400 = add i64 %12399, 56
  %12401 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12397, i64 noundef %12400, i32 noundef %12401)
  %12402 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12402, ptr %48, align 4, !tbaa !9
  store i32 44, ptr %49, align 4, !tbaa !9
  %12403 = load i32, ptr %49, align 4, !tbaa !9
  %12404 = load i32, ptr %48, align 4, !tbaa !9
  %12405 = add i32 %12404, %12403
  store i32 %12405, ptr %48, align 4, !tbaa !9
  %12406 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12406, ptr %18, align 4, !tbaa !9
  %12407 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12407, ptr %48, align 4, !tbaa !9
  %12408 = load ptr, ptr %5, align 8, !tbaa !5
  %12409 = getelementptr inbounds %struct.w2c_hermes, ptr %12408, i32 0, i32 6
  %12410 = load i32, ptr %48, align 4, !tbaa !9
  %12411 = zext i32 %12410 to i64
  %12412 = add i64 %12411, 56
  %12413 = call i32 @i32_load(ptr noundef %12409, i64 noundef %12412)
  store i32 %12413, ptr %48, align 4, !tbaa !9
  %12414 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12414, ptr %11, align 4, !tbaa !9
  %12415 = load i32, ptr %48, align 4, !tbaa !9
  %12416 = icmp ne i32 %12415, 0
  %12417 = xor i1 %12416, true
  %12418 = zext i1 %12417 to i32
  store i32 %12418, ptr %48, align 4, !tbaa !9
  %12419 = load i32, ptr %48, align 4, !tbaa !9
  %12420 = icmp ne i32 %12419, 0
  br i1 %12420, label %12421, label %12423

12421:                                            ; preds = %12296
  store i32 0, ptr %48, align 4, !tbaa !9
  %12422 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12422, ptr %8, align 4, !tbaa !9
  br label %12925

12423:                                            ; preds = %12296
  %12424 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12424, ptr %48, align 4, !tbaa !9
  %12425 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12425, ptr %49, align 4, !tbaa !9
  %12426 = load ptr, ptr %5, align 8, !tbaa !5
  %12427 = getelementptr inbounds %struct.w2c_hermes, ptr %12426, i32 0, i32 6
  %12428 = load i32, ptr %49, align 4, !tbaa !9
  %12429 = zext i32 %12428 to i64
  %12430 = add i64 %12429, 44
  %12431 = call i32 @i32_load(ptr noundef %12427, i64 noundef %12430)
  store i32 %12431, ptr %49, align 4, !tbaa !9
  %12432 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12432, ptr %19, align 4, !tbaa !9
  %12433 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12433, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %12434 = load i32, ptr %51, align 4, !tbaa !9
  %12435 = load i32, ptr %50, align 4, !tbaa !9
  %12436 = sub i32 %12435, %12434
  store i32 %12436, ptr %50, align 4, !tbaa !9
  %12437 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %12437, ptr %20, align 4, !tbaa !9
  %12438 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12438, ptr %51, align 4, !tbaa !9
  store i32 4, ptr %52, align 4, !tbaa !9
  %12439 = load i32, ptr %52, align 4, !tbaa !9
  %12440 = and i32 %12439, 31
  %12441 = load i32, ptr %51, align 4, !tbaa !9
  %12442 = lshr i32 %12441, %12440
  store i32 %12442, ptr %51, align 4, !tbaa !9
  %12443 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12443, ptr %52, align 4, !tbaa !9
  store i32 9, ptr %53, align 4, !tbaa !9
  %12444 = load i32, ptr %53, align 4, !tbaa !9
  %12445 = and i32 %12444, 31
  %12446 = load i32, ptr %52, align 4, !tbaa !9
  %12447 = lshr i32 %12446, %12445
  store i32 %12447, ptr %52, align 4, !tbaa !9
  %12448 = load i32, ptr %52, align 4, !tbaa !9
  %12449 = load i32, ptr %51, align 4, !tbaa !9
  %12450 = xor i32 %12449, %12448
  store i32 %12450, ptr %51, align 4, !tbaa !9
  %12451 = load i32, ptr %51, align 4, !tbaa !9
  %12452 = load i32, ptr %50, align 4, !tbaa !9
  %12453 = and i32 %12452, %12451
  store i32 %12453, ptr %50, align 4, !tbaa !9
  %12454 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %12454, ptr %13, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %12455 = load i32, ptr %51, align 4, !tbaa !9
  %12456 = and i32 %12455, 31
  %12457 = load i32, ptr %50, align 4, !tbaa !9
  %12458 = shl i32 %12457, %12456
  store i32 %12458, ptr %50, align 4, !tbaa !9
  %12459 = load i32, ptr %50, align 4, !tbaa !9
  %12460 = load i32, ptr %49, align 4, !tbaa !9
  %12461 = add i32 %12460, %12459
  store i32 %12461, ptr %49, align 4, !tbaa !9
  %12462 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12462, ptr %15, align 4, !tbaa !9
  %12463 = load ptr, ptr %5, align 8, !tbaa !5
  %12464 = getelementptr inbounds %struct.w2c_hermes, ptr %12463, i32 0, i32 6
  %12465 = load i32, ptr %49, align 4, !tbaa !9
  %12466 = zext i32 %12465 to i64
  %12467 = call i32 @i32_load(ptr noundef %12464, i64 noundef %12466)
  store i32 %12467, ptr %49, align 4, !tbaa !9
  %12468 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12468, ptr %8, align 4, !tbaa !9
  %12469 = load i32, ptr %48, align 4, !tbaa !9
  %12470 = load i32, ptr %49, align 4, !tbaa !9
  %12471 = icmp eq i32 %12469, %12470
  %12472 = zext i1 %12471 to i32
  store i32 %12472, ptr %48, align 4, !tbaa !9
  %12473 = load i32, ptr %48, align 4, !tbaa !9
  %12474 = icmp ne i32 %12473, 0
  br i1 %12474, label %12475, label %12476

12475:                                            ; preds = %12423
  br label %12954

12476:                                            ; preds = %12423
  store i32 1, ptr %48, align 4, !tbaa !9
  %12477 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12477, ptr %10, align 4, !tbaa !9
  br label %12478

12478:                                            ; preds = %12565, %12476
  %12479 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12479, ptr %48, align 4, !tbaa !9
  store i32 -4, ptr %49, align 4, !tbaa !9
  %12480 = load i32, ptr %48, align 4, !tbaa !9
  %12481 = load i32, ptr %49, align 4, !tbaa !9
  %12482 = icmp eq i32 %12480, %12481
  %12483 = zext i1 %12482 to i32
  store i32 %12483, ptr %48, align 4, !tbaa !9
  %12484 = load i32, ptr %48, align 4, !tbaa !9
  %12485 = icmp ne i32 %12484, 0
  br i1 %12485, label %12486, label %12499

12486:                                            ; preds = %12478
  %12487 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12487, ptr %48, align 4, !tbaa !9
  %12488 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12488, ptr %49, align 4, !tbaa !9
  %12489 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12489, ptr %50, align 4, !tbaa !9
  %12490 = load i32, ptr %50, align 4, !tbaa !9
  %12491 = icmp ne i32 %12490, 0
  br i1 %12491, label %12492, label %12494

12492:                                            ; preds = %12486
  %12493 = load i32, ptr %48, align 4, !tbaa !9
  br label %12496

12494:                                            ; preds = %12486
  %12495 = load i32, ptr %49, align 4, !tbaa !9
  br label %12496

12496:                                            ; preds = %12494, %12492
  %12497 = phi i32 [ %12493, %12492 ], [ %12495, %12494 ]
  store i32 %12497, ptr %48, align 4, !tbaa !9
  %12498 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12498, ptr %8, align 4, !tbaa !9
  br label %12925

12499:                                            ; preds = %12478
  %12500 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12500, ptr %48, align 4, !tbaa !9
  %12501 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12501, ptr %49, align 4, !tbaa !9
  %12502 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12502, ptr %50, align 4, !tbaa !9
  %12503 = load i32, ptr %50, align 4, !tbaa !9
  %12504 = icmp ne i32 %12503, 0
  br i1 %12504, label %12505, label %12507

12505:                                            ; preds = %12499
  %12506 = load i32, ptr %48, align 4, !tbaa !9
  br label %12509

12507:                                            ; preds = %12499
  %12508 = load i32, ptr %49, align 4, !tbaa !9
  br label %12509

12509:                                            ; preds = %12507, %12505
  %12510 = phi i32 [ %12506, %12505 ], [ %12508, %12507 ]
  store i32 %12510, ptr %48, align 4, !tbaa !9
  %12511 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12511, ptr %49, align 4, !tbaa !9
  %12512 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12512, ptr %50, align 4, !tbaa !9
  store i32 -8, ptr %51, align 4, !tbaa !9
  %12513 = load i32, ptr %50, align 4, !tbaa !9
  %12514 = load i32, ptr %51, align 4, !tbaa !9
  %12515 = icmp eq i32 %12513, %12514
  %12516 = zext i1 %12515 to i32
  store i32 %12516, ptr %50, align 4, !tbaa !9
  %12517 = load i32, ptr %50, align 4, !tbaa !9
  %12518 = icmp ne i32 %12517, 0
  br i1 %12518, label %12519, label %12521

12519:                                            ; preds = %12509
  %12520 = load i32, ptr %48, align 4, !tbaa !9
  br label %12523

12521:                                            ; preds = %12509
  %12522 = load i32, ptr %49, align 4, !tbaa !9
  br label %12523

12523:                                            ; preds = %12521, %12519
  %12524 = phi i32 [ %12520, %12519 ], [ %12522, %12521 ]
  store i32 %12524, ptr %48, align 4, !tbaa !9
  %12525 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12525, ptr %12, align 4, !tbaa !9
  %12526 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12526, ptr %48, align 4, !tbaa !9
  %12527 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12527, ptr %49, align 4, !tbaa !9
  %12528 = load i32, ptr %49, align 4, !tbaa !9
  %12529 = load i32, ptr %48, align 4, !tbaa !9
  %12530 = add i32 %12529, %12528
  store i32 %12530, ptr %48, align 4, !tbaa !9
  %12531 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12531, ptr %8, align 4, !tbaa !9
  %12532 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12532, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %12533 = load i32, ptr %49, align 4, !tbaa !9
  %12534 = load i32, ptr %48, align 4, !tbaa !9
  %12535 = add i32 %12534, %12533
  store i32 %12535, ptr %48, align 4, !tbaa !9
  %12536 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12536, ptr %10, align 4, !tbaa !9
  %12537 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12537, ptr %48, align 4, !tbaa !9
  %12538 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %12538, ptr %49, align 4, !tbaa !9
  %12539 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12539, ptr %50, align 4, !tbaa !9
  %12540 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %12540, ptr %51, align 4, !tbaa !9
  %12541 = load i32, ptr %51, align 4, !tbaa !9
  %12542 = load i32, ptr %50, align 4, !tbaa !9
  %12543 = and i32 %12542, %12541
  store i32 %12543, ptr %50, align 4, !tbaa !9
  %12544 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %12544, ptr %13, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %12545 = load i32, ptr %51, align 4, !tbaa !9
  %12546 = and i32 %12545, 31
  %12547 = load i32, ptr %50, align 4, !tbaa !9
  %12548 = shl i32 %12547, %12546
  store i32 %12548, ptr %50, align 4, !tbaa !9
  %12549 = load i32, ptr %50, align 4, !tbaa !9
  %12550 = load i32, ptr %49, align 4, !tbaa !9
  %12551 = add i32 %12550, %12549
  store i32 %12551, ptr %49, align 4, !tbaa !9
  %12552 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12552, ptr %15, align 4, !tbaa !9
  %12553 = load ptr, ptr %5, align 8, !tbaa !5
  %12554 = getelementptr inbounds %struct.w2c_hermes, ptr %12553, i32 0, i32 6
  %12555 = load i32, ptr %49, align 4, !tbaa !9
  %12556 = zext i32 %12555 to i64
  %12557 = call i32 @i32_load(ptr noundef %12554, i64 noundef %12556)
  store i32 %12557, ptr %49, align 4, !tbaa !9
  %12558 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12558, ptr %8, align 4, !tbaa !9
  %12559 = load i32, ptr %48, align 4, !tbaa !9
  %12560 = load i32, ptr %49, align 4, !tbaa !9
  %12561 = icmp ne i32 %12559, %12560
  %12562 = zext i1 %12561 to i32
  store i32 %12562, ptr %48, align 4, !tbaa !9
  %12563 = load i32, ptr %48, align 4, !tbaa !9
  %12564 = icmp ne i32 %12563, 0
  br i1 %12564, label %12565, label %12566

12565:                                            ; preds = %12523
  br label %12478

12566:                                            ; preds = %12523
  br label %12954

12567:                                            ; preds = %12271
  %12568 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12568, ptr %48, align 4, !tbaa !9
  %12569 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12569, ptr %49, align 4, !tbaa !9
  %12570 = load ptr, ptr %5, align 8, !tbaa !5
  %12571 = getelementptr inbounds %struct.w2c_hermes, ptr %12570, i32 0, i32 6
  %12572 = load i32, ptr %49, align 4, !tbaa !9
  %12573 = zext i32 %12572 to i64
  %12574 = add i64 %12573, 28
  %12575 = call i32 @i32_load(ptr noundef %12571, i64 noundef %12574)
  store i32 %12575, ptr %49, align 4, !tbaa !9
  %12576 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12576, ptr %8, align 4, !tbaa !9
  %12577 = load ptr, ptr %5, align 8, !tbaa !5
  %12578 = getelementptr inbounds %struct.w2c_hermes, ptr %12577, i32 0, i32 6
  %12579 = load i32, ptr %48, align 4, !tbaa !9
  %12580 = zext i32 %12579 to i64
  %12581 = add i64 %12580, 16
  %12582 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12578, i64 noundef %12581, i32 noundef %12582)
  %12583 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12583, ptr %48, align 4, !tbaa !9
  %12584 = load ptr, ptr %5, align 8, !tbaa !5
  %12585 = getelementptr inbounds %struct.w2c_hermes, ptr %12584, i32 0, i32 6
  %12586 = load i32, ptr %48, align 4, !tbaa !9
  %12587 = zext i32 %12586 to i64
  %12588 = add i64 %12587, 40
  %12589 = call i32 @i32_load(ptr noundef %12585, i64 noundef %12588)
  store i32 %12589, ptr %48, align 4, !tbaa !9
  %12590 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12590, ptr %11, align 4, !tbaa !9
  %12591 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12591, ptr %48, align 4, !tbaa !9
  %12592 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12592, ptr %49, align 4, !tbaa !9
  %12593 = load ptr, ptr %5, align 8, !tbaa !5
  %12594 = getelementptr inbounds %struct.w2c_hermes, ptr %12593, i32 0, i32 6
  %12595 = load i32, ptr %49, align 4, !tbaa !9
  %12596 = zext i32 %12595 to i64
  %12597 = call i64 @i64_load(ptr noundef %12594, i64 noundef %12596)
  store i64 %12597, ptr %59, align 8, !tbaa !11
  %12598 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %12598, ptr %31, align 8, !tbaa !11
  %12599 = load ptr, ptr %5, align 8, !tbaa !5
  %12600 = getelementptr inbounds %struct.w2c_hermes, ptr %12599, i32 0, i32 6
  %12601 = load i32, ptr %48, align 4, !tbaa !9
  %12602 = zext i32 %12601 to i64
  %12603 = add i64 %12602, 8
  %12604 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12600, i64 noundef %12603, i64 noundef %12604)
  %12605 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12605, ptr %48, align 4, !tbaa !9
  %12606 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %12606, ptr %59, align 8, !tbaa !11
  %12607 = load ptr, ptr %5, align 8, !tbaa !5
  %12608 = getelementptr inbounds %struct.w2c_hermes, ptr %12607, i32 0, i32 6
  %12609 = load i32, ptr %48, align 4, !tbaa !9
  %12610 = zext i32 %12609 to i64
  %12611 = add i64 %12610, 56
  %12612 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12608, i64 noundef %12611, i64 noundef %12612)
  %12613 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12613, ptr %48, align 4, !tbaa !9
  store i32 80, ptr %49, align 4, !tbaa !9
  %12614 = load i32, ptr %49, align 4, !tbaa !9
  %12615 = load i32, ptr %48, align 4, !tbaa !9
  %12616 = add i32 %12615, %12614
  store i32 %12616, ptr %48, align 4, !tbaa !9
  %12617 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12617, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %12618 = load i32, ptr %50, align 4, !tbaa !9
  %12619 = load i32, ptr %49, align 4, !tbaa !9
  %12620 = add i32 %12619, %12618
  store i32 %12620, ptr %49, align 4, !tbaa !9
  %12621 = load ptr, ptr %5, align 8, !tbaa !5
  %12622 = load i32, ptr %48, align 4, !tbaa !9
  %12623 = load i32, ptr %49, align 4, !tbaa !9
  %12624 = call i32 @w2c_hermes_hermes0x3A0x3AInternalIdentifierMaker0x3A0x3Anext0x28llvh0x3A0x3AStringRef0x29(ptr noundef %12621, i32 noundef %12622, i32 noundef %12623)
  store i32 %12624, ptr %48, align 4, !tbaa !9
  %12625 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12625, ptr %10, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %12626 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12626, ptr %11, align 4, !tbaa !9
  %12627 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12627, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %12628 = load i32, ptr %49, align 4, !tbaa !9
  %12629 = load i32, ptr %48, align 4, !tbaa !9
  %12630 = add i32 %12629, %12628
  store i32 %12630, ptr %48, align 4, !tbaa !9
  %12631 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12631, ptr %49, align 4, !tbaa !9
  %12632 = load ptr, ptr %5, align 8, !tbaa !5
  %12633 = getelementptr inbounds %struct.w2c_hermes, ptr %12632, i32 0, i32 6
  %12634 = load i32, ptr %49, align 4, !tbaa !9
  %12635 = zext i32 %12634 to i64
  %12636 = add i64 %12635, 84
  %12637 = call i32 @i32_load(ptr noundef %12633, i64 noundef %12636)
  store i32 %12637, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %12638 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12638, ptr %51, align 4, !tbaa !9
  %12639 = load ptr, ptr %5, align 8, !tbaa !5
  %12640 = load i32, ptr %48, align 4, !tbaa !9
  %12641 = load i32, ptr %49, align 4, !tbaa !9
  %12642 = load i32, ptr %50, align 4, !tbaa !9
  %12643 = load i32, ptr %51, align 4, !tbaa !9
  %12644 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateVariable0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20hermes0x3A0x3AJavaScriptDeclKind0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %12639, i32 noundef %12640, i32 noundef %12641, i32 noundef %12642, i32 noundef %12643)
  store i32 %12644, ptr %48, align 4, !tbaa !9
  %12645 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12645, ptr %16, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %12646 = load ptr, ptr %5, align 8, !tbaa !5
  %12647 = getelementptr inbounds %struct.w2c_hermes, ptr %12646, i32 0, i32 6
  %12648 = load i32, ptr %48, align 4, !tbaa !9
  %12649 = zext i32 %12648 to i64
  %12650 = add i64 %12649, 40
  %12651 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %12647, i64 noundef %12650, i32 noundef %12651)
  %12652 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12652, ptr %48, align 4, !tbaa !9
  %12653 = load ptr, ptr %5, align 8, !tbaa !5
  %12654 = getelementptr inbounds %struct.w2c_hermes, ptr %12653, i32 0, i32 6
  %12655 = load i32, ptr %48, align 4, !tbaa !9
  %12656 = zext i32 %12655 to i64
  %12657 = add i64 %12656, 40
  %12658 = call i32 @i32_load(ptr noundef %12654, i64 noundef %12657)
  store i32 %12658, ptr %48, align 4, !tbaa !9
  %12659 = load ptr, ptr %5, align 8, !tbaa !5
  %12660 = getelementptr inbounds %struct.w2c_hermes, ptr %12659, i32 0, i32 6
  %12661 = load i32, ptr %48, align 4, !tbaa !9
  %12662 = zext i32 %12661 to i64
  %12663 = add i64 %12662, 72
  %12664 = call i32 @i32_load(ptr noundef %12660, i64 noundef %12663)
  store i32 %12664, ptr %48, align 4, !tbaa !9
  %12665 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12665, ptr %17, align 4, !tbaa !9
  %12666 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12666, ptr %48, align 4, !tbaa !9
  %12667 = load ptr, ptr %5, align 8, !tbaa !5
  %12668 = getelementptr inbounds %struct.w2c_hermes, ptr %12667, i32 0, i32 6
  %12669 = load i32, ptr %48, align 4, !tbaa !9
  %12670 = zext i32 %12669 to i64
  %12671 = add i64 %12670, 56
  %12672 = call i32 @i32_load(ptr noundef %12668, i64 noundef %12671)
  store i32 %12672, ptr %48, align 4, !tbaa !9
  %12673 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12673, ptr %10, align 4, !tbaa !9
  %12674 = load i32, ptr %48, align 4, !tbaa !9
  %12675 = icmp ne i32 %12674, 0
  %12676 = xor i1 %12675, true
  %12677 = zext i1 %12676 to i32
  store i32 %12677, ptr %48, align 4, !tbaa !9
  %12678 = load i32, ptr %48, align 4, !tbaa !9
  %12679 = icmp ne i32 %12678, 0
  br i1 %12679, label %12680, label %12681

12680:                                            ; preds = %12567
  br label %12825

12681:                                            ; preds = %12567
  %12682 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12682, ptr %48, align 4, !tbaa !9
  %12683 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12683, ptr %49, align 4, !tbaa !9
  %12684 = load ptr, ptr %5, align 8, !tbaa !5
  %12685 = getelementptr inbounds %struct.w2c_hermes, ptr %12684, i32 0, i32 6
  %12686 = load i32, ptr %49, align 4, !tbaa !9
  %12687 = zext i32 %12686 to i64
  %12688 = add i64 %12687, 44
  %12689 = call i32 @i32_load(ptr noundef %12685, i64 noundef %12688)
  store i32 %12689, ptr %49, align 4, !tbaa !9
  %12690 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12690, ptr %18, align 4, !tbaa !9
  %12691 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12691, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %12692 = load i32, ptr %51, align 4, !tbaa !9
  %12693 = load i32, ptr %50, align 4, !tbaa !9
  %12694 = sub i32 %12693, %12692
  store i32 %12694, ptr %50, align 4, !tbaa !9
  %12695 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %12695, ptr %10, align 4, !tbaa !9
  %12696 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12696, ptr %51, align 4, !tbaa !9
  store i32 4, ptr %52, align 4, !tbaa !9
  %12697 = load i32, ptr %52, align 4, !tbaa !9
  %12698 = and i32 %12697, 31
  %12699 = load i32, ptr %51, align 4, !tbaa !9
  %12700 = lshr i32 %12699, %12698
  store i32 %12700, ptr %51, align 4, !tbaa !9
  %12701 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12701, ptr %52, align 4, !tbaa !9
  store i32 9, ptr %53, align 4, !tbaa !9
  %12702 = load i32, ptr %53, align 4, !tbaa !9
  %12703 = and i32 %12702, 31
  %12704 = load i32, ptr %52, align 4, !tbaa !9
  %12705 = lshr i32 %12704, %12703
  store i32 %12705, ptr %52, align 4, !tbaa !9
  %12706 = load i32, ptr %52, align 4, !tbaa !9
  %12707 = load i32, ptr %51, align 4, !tbaa !9
  %12708 = xor i32 %12707, %12706
  store i32 %12708, ptr %51, align 4, !tbaa !9
  %12709 = load i32, ptr %51, align 4, !tbaa !9
  %12710 = load i32, ptr %50, align 4, !tbaa !9
  %12711 = and i32 %12710, %12709
  store i32 %12711, ptr %50, align 4, !tbaa !9
  %12712 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %12712, ptr %15, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %12713 = load i32, ptr %51, align 4, !tbaa !9
  %12714 = and i32 %12713, 31
  %12715 = load i32, ptr %50, align 4, !tbaa !9
  %12716 = shl i32 %12715, %12714
  store i32 %12716, ptr %50, align 4, !tbaa !9
  %12717 = load i32, ptr %50, align 4, !tbaa !9
  %12718 = load i32, ptr %49, align 4, !tbaa !9
  %12719 = add i32 %12718, %12717
  store i32 %12719, ptr %49, align 4, !tbaa !9
  %12720 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12720, ptr %11, align 4, !tbaa !9
  %12721 = load ptr, ptr %5, align 8, !tbaa !5
  %12722 = getelementptr inbounds %struct.w2c_hermes, ptr %12721, i32 0, i32 6
  %12723 = load i32, ptr %49, align 4, !tbaa !9
  %12724 = zext i32 %12723 to i64
  %12725 = call i32 @i32_load(ptr noundef %12722, i64 noundef %12724)
  store i32 %12725, ptr %49, align 4, !tbaa !9
  %12726 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12726, ptr %14, align 4, !tbaa !9
  %12727 = load i32, ptr %48, align 4, !tbaa !9
  %12728 = load i32, ptr %49, align 4, !tbaa !9
  %12729 = icmp eq i32 %12727, %12728
  %12730 = zext i1 %12729 to i32
  store i32 %12730, ptr %48, align 4, !tbaa !9
  %12731 = load i32, ptr %48, align 4, !tbaa !9
  %12732 = icmp ne i32 %12731, 0
  br i1 %12732, label %12733, label %12734

12733:                                            ; preds = %12681
  br label %12849

12734:                                            ; preds = %12681
  store i32 1, ptr %48, align 4, !tbaa !9
  %12735 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12735, ptr %13, align 4, !tbaa !9
  br label %12736

12736:                                            ; preds = %12823, %12734
  %12737 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12737, ptr %48, align 4, !tbaa !9
  store i32 -4, ptr %49, align 4, !tbaa !9
  %12738 = load i32, ptr %48, align 4, !tbaa !9
  %12739 = load i32, ptr %49, align 4, !tbaa !9
  %12740 = icmp eq i32 %12738, %12739
  %12741 = zext i1 %12740 to i32
  store i32 %12741, ptr %48, align 4, !tbaa !9
  %12742 = load i32, ptr %48, align 4, !tbaa !9
  %12743 = icmp ne i32 %12742, 0
  br i1 %12743, label %12744, label %12757

12744:                                            ; preds = %12736
  %12745 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12745, ptr %48, align 4, !tbaa !9
  %12746 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12746, ptr %49, align 4, !tbaa !9
  %12747 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12747, ptr %50, align 4, !tbaa !9
  %12748 = load i32, ptr %50, align 4, !tbaa !9
  %12749 = icmp ne i32 %12748, 0
  br i1 %12749, label %12750, label %12752

12750:                                            ; preds = %12744
  %12751 = load i32, ptr %48, align 4, !tbaa !9
  br label %12754

12752:                                            ; preds = %12744
  %12753 = load i32, ptr %49, align 4, !tbaa !9
  br label %12754

12754:                                            ; preds = %12752, %12750
  %12755 = phi i32 [ %12751, %12750 ], [ %12753, %12752 ]
  store i32 %12755, ptr %48, align 4, !tbaa !9
  %12756 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12756, ptr %11, align 4, !tbaa !9
  br label %12825

12757:                                            ; preds = %12736
  %12758 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12758, ptr %48, align 4, !tbaa !9
  %12759 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12759, ptr %49, align 4, !tbaa !9
  %12760 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12760, ptr %50, align 4, !tbaa !9
  %12761 = load i32, ptr %50, align 4, !tbaa !9
  %12762 = icmp ne i32 %12761, 0
  br i1 %12762, label %12763, label %12765

12763:                                            ; preds = %12757
  %12764 = load i32, ptr %48, align 4, !tbaa !9
  br label %12767

12765:                                            ; preds = %12757
  %12766 = load i32, ptr %49, align 4, !tbaa !9
  br label %12767

12767:                                            ; preds = %12765, %12763
  %12768 = phi i32 [ %12764, %12763 ], [ %12766, %12765 ]
  store i32 %12768, ptr %48, align 4, !tbaa !9
  %12769 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12769, ptr %49, align 4, !tbaa !9
  %12770 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12770, ptr %50, align 4, !tbaa !9
  store i32 -8, ptr %51, align 4, !tbaa !9
  %12771 = load i32, ptr %50, align 4, !tbaa !9
  %12772 = load i32, ptr %51, align 4, !tbaa !9
  %12773 = icmp eq i32 %12771, %12772
  %12774 = zext i1 %12773 to i32
  store i32 %12774, ptr %50, align 4, !tbaa !9
  %12775 = load i32, ptr %50, align 4, !tbaa !9
  %12776 = icmp ne i32 %12775, 0
  br i1 %12776, label %12777, label %12779

12777:                                            ; preds = %12767
  %12778 = load i32, ptr %48, align 4, !tbaa !9
  br label %12781

12779:                                            ; preds = %12767
  %12780 = load i32, ptr %49, align 4, !tbaa !9
  br label %12781

12781:                                            ; preds = %12779, %12777
  %12782 = phi i32 [ %12778, %12777 ], [ %12780, %12779 ]
  store i32 %12782, ptr %48, align 4, !tbaa !9
  %12783 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12783, ptr %12, align 4, !tbaa !9
  %12784 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12784, ptr %48, align 4, !tbaa !9
  %12785 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12785, ptr %49, align 4, !tbaa !9
  %12786 = load i32, ptr %49, align 4, !tbaa !9
  %12787 = load i32, ptr %48, align 4, !tbaa !9
  %12788 = add i32 %12787, %12786
  store i32 %12788, ptr %48, align 4, !tbaa !9
  %12789 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12789, ptr %11, align 4, !tbaa !9
  %12790 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12790, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %12791 = load i32, ptr %49, align 4, !tbaa !9
  %12792 = load i32, ptr %48, align 4, !tbaa !9
  %12793 = add i32 %12792, %12791
  store i32 %12793, ptr %48, align 4, !tbaa !9
  %12794 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12794, ptr %13, align 4, !tbaa !9
  %12795 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12795, ptr %48, align 4, !tbaa !9
  %12796 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12796, ptr %49, align 4, !tbaa !9
  %12797 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12797, ptr %50, align 4, !tbaa !9
  %12798 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12798, ptr %51, align 4, !tbaa !9
  %12799 = load i32, ptr %51, align 4, !tbaa !9
  %12800 = load i32, ptr %50, align 4, !tbaa !9
  %12801 = and i32 %12800, %12799
  store i32 %12801, ptr %50, align 4, !tbaa !9
  %12802 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %12802, ptr %15, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %12803 = load i32, ptr %51, align 4, !tbaa !9
  %12804 = and i32 %12803, 31
  %12805 = load i32, ptr %50, align 4, !tbaa !9
  %12806 = shl i32 %12805, %12804
  store i32 %12806, ptr %50, align 4, !tbaa !9
  %12807 = load i32, ptr %50, align 4, !tbaa !9
  %12808 = load i32, ptr %49, align 4, !tbaa !9
  %12809 = add i32 %12808, %12807
  store i32 %12809, ptr %49, align 4, !tbaa !9
  %12810 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12810, ptr %11, align 4, !tbaa !9
  %12811 = load ptr, ptr %5, align 8, !tbaa !5
  %12812 = getelementptr inbounds %struct.w2c_hermes, ptr %12811, i32 0, i32 6
  %12813 = load i32, ptr %49, align 4, !tbaa !9
  %12814 = zext i32 %12813 to i64
  %12815 = call i32 @i32_load(ptr noundef %12812, i64 noundef %12814)
  store i32 %12815, ptr %49, align 4, !tbaa !9
  %12816 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %12816, ptr %14, align 4, !tbaa !9
  %12817 = load i32, ptr %48, align 4, !tbaa !9
  %12818 = load i32, ptr %49, align 4, !tbaa !9
  %12819 = icmp ne i32 %12817, %12818
  %12820 = zext i1 %12819 to i32
  store i32 %12820, ptr %48, align 4, !tbaa !9
  %12821 = load i32, ptr %48, align 4, !tbaa !9
  %12822 = icmp ne i32 %12821, 0
  br i1 %12822, label %12823, label %12824

12823:                                            ; preds = %12781
  br label %12736

12824:                                            ; preds = %12781
  br label %12849

12825:                                            ; preds = %12754, %12680
  %12826 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12826, ptr %48, align 4, !tbaa !9
  store i32 44, ptr %49, align 4, !tbaa !9
  %12827 = load i32, ptr %49, align 4, !tbaa !9
  %12828 = load i32, ptr %48, align 4, !tbaa !9
  %12829 = add i32 %12828, %12827
  store i32 %12829, ptr %48, align 4, !tbaa !9
  %12830 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12830, ptr %49, align 4, !tbaa !9
  %12831 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12831, ptr %50, align 4, !tbaa !9
  store i32 16, ptr %51, align 4, !tbaa !9
  %12832 = load i32, ptr %51, align 4, !tbaa !9
  %12833 = load i32, ptr %50, align 4, !tbaa !9
  %12834 = add i32 %12833, %12832
  store i32 %12834, ptr %50, align 4, !tbaa !9
  %12835 = load ptr, ptr %5, align 8, !tbaa !5
  %12836 = load i32, ptr %48, align 4, !tbaa !9
  %12837 = load i32, ptr %49, align 4, !tbaa !9
  %12838 = load i32, ptr %50, align 4, !tbaa !9
  %12839 = call i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AIdentifier0x20const0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AIdentifier0x20const0x260x29(ptr noundef %12835, i32 noundef %12836, i32 noundef %12837, i32 noundef %12838)
  store i32 %12839, ptr %48, align 4, !tbaa !9
  %12840 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12840, ptr %11, align 4, !tbaa !9
  %12841 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12841, ptr %48, align 4, !tbaa !9
  %12842 = load ptr, ptr %5, align 8, !tbaa !5
  %12843 = getelementptr inbounds %struct.w2c_hermes, ptr %12842, i32 0, i32 6
  %12844 = load i32, ptr %48, align 4, !tbaa !9
  %12845 = zext i32 %12844 to i64
  %12846 = add i64 %12845, 16
  %12847 = call i32 @i32_load(ptr noundef %12843, i64 noundef %12846)
  store i32 %12847, ptr %48, align 4, !tbaa !9
  %12848 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12848, ptr %8, align 4, !tbaa !9
  br label %12849

12849:                                            ; preds = %12825, %12824, %12733
  store i32 20, ptr %48, align 4, !tbaa !9
  %12850 = load ptr, ptr %5, align 8, !tbaa !5
  %12851 = load i32, ptr %48, align 4, !tbaa !9
  %12852 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %12850, i32 noundef %12851)
  store i32 %12852, ptr %48, align 4, !tbaa !9
  %12853 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12853, ptr %10, align 4, !tbaa !9
  %12854 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12854, ptr %49, align 4, !tbaa !9
  %12855 = load ptr, ptr %5, align 8, !tbaa !5
  %12856 = getelementptr inbounds %struct.w2c_hermes, ptr %12855, i32 0, i32 6
  %12857 = load i32, ptr %49, align 4, !tbaa !9
  %12858 = zext i32 %12857 to i64
  %12859 = call i32 @i32_load(ptr noundef %12856, i64 noundef %12858)
  store i32 %12859, ptr %49, align 4, !tbaa !9
  %12860 = load ptr, ptr %5, align 8, !tbaa !5
  %12861 = getelementptr inbounds %struct.w2c_hermes, ptr %12860, i32 0, i32 6
  %12862 = load i32, ptr %48, align 4, !tbaa !9
  %12863 = zext i32 %12862 to i64
  %12864 = add i64 %12863, 16
  %12865 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12861, i64 noundef %12864, i32 noundef %12865)
  %12866 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12866, ptr %48, align 4, !tbaa !9
  %12867 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12867, ptr %49, align 4, !tbaa !9
  %12868 = load ptr, ptr %5, align 8, !tbaa !5
  %12869 = getelementptr inbounds %struct.w2c_hermes, ptr %12868, i32 0, i32 6
  %12870 = load i32, ptr %48, align 4, !tbaa !9
  %12871 = zext i32 %12870 to i64
  %12872 = add i64 %12871, 4
  %12873 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12869, i64 noundef %12872, i32 noundef %12873)
  %12874 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12874, ptr %48, align 4, !tbaa !9
  %12875 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12875, ptr %49, align 4, !tbaa !9
  %12876 = load ptr, ptr %5, align 8, !tbaa !5
  %12877 = getelementptr inbounds %struct.w2c_hermes, ptr %12876, i32 0, i32 6
  %12878 = load i32, ptr %48, align 4, !tbaa !9
  %12879 = zext i32 %12878 to i64
  %12880 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12877, i64 noundef %12879, i32 noundef %12880)
  %12881 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12881, ptr %48, align 4, !tbaa !9
  %12882 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12882, ptr %49, align 4, !tbaa !9
  %12883 = load ptr, ptr %5, align 8, !tbaa !5
  %12884 = getelementptr inbounds %struct.w2c_hermes, ptr %12883, i32 0, i32 6
  %12885 = load i32, ptr %49, align 4, !tbaa !9
  %12886 = zext i32 %12885 to i64
  %12887 = add i64 %12886, 4
  %12888 = call i32 @i32_load(ptr noundef %12884, i64 noundef %12887)
  store i32 %12888, ptr %49, align 4, !tbaa !9
  %12889 = load ptr, ptr %5, align 8, !tbaa !5
  %12890 = getelementptr inbounds %struct.w2c_hermes, ptr %12889, i32 0, i32 6
  %12891 = load i32, ptr %48, align 4, !tbaa !9
  %12892 = zext i32 %12891 to i64
  %12893 = add i64 %12892, 8
  %12894 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12890, i64 noundef %12893, i32 noundef %12894)
  %12895 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12895, ptr %48, align 4, !tbaa !9
  %12896 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12896, ptr %49, align 4, !tbaa !9
  %12897 = load ptr, ptr %5, align 8, !tbaa !5
  %12898 = getelementptr inbounds %struct.w2c_hermes, ptr %12897, i32 0, i32 6
  %12899 = load i32, ptr %49, align 4, !tbaa !9
  %12900 = zext i32 %12899 to i64
  %12901 = add i64 %12900, 4
  %12902 = call i32 @i32_load(ptr noundef %12898, i64 noundef %12901)
  store i32 %12902, ptr %49, align 4, !tbaa !9
  %12903 = load ptr, ptr %5, align 8, !tbaa !5
  %12904 = getelementptr inbounds %struct.w2c_hermes, ptr %12903, i32 0, i32 6
  %12905 = load i32, ptr %48, align 4, !tbaa !9
  %12906 = zext i32 %12905 to i64
  %12907 = add i64 %12906, 12
  %12908 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12904, i64 noundef %12907, i32 noundef %12908)
  %12909 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12909, ptr %48, align 4, !tbaa !9
  %12910 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12910, ptr %49, align 4, !tbaa !9
  %12911 = load ptr, ptr %5, align 8, !tbaa !5
  %12912 = getelementptr inbounds %struct.w2c_hermes, ptr %12911, i32 0, i32 6
  %12913 = load i32, ptr %48, align 4, !tbaa !9
  %12914 = zext i32 %12913 to i64
  %12915 = add i64 %12914, 4
  %12916 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12912, i64 noundef %12915, i32 noundef %12916)
  %12917 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12917, ptr %48, align 4, !tbaa !9
  %12918 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12918, ptr %49, align 4, !tbaa !9
  %12919 = load ptr, ptr %5, align 8, !tbaa !5
  %12920 = getelementptr inbounds %struct.w2c_hermes, ptr %12919, i32 0, i32 6
  %12921 = load i32, ptr %48, align 4, !tbaa !9
  %12922 = zext i32 %12921 to i64
  %12923 = add i64 %12922, 4
  %12924 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12920, i64 noundef %12923, i32 noundef %12924)
  br label %13310

12925:                                            ; preds = %12496, %12421
  %12926 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12926, ptr %48, align 4, !tbaa !9
  %12927 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12927, ptr %49, align 4, !tbaa !9
  %12928 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12928, ptr %50, align 4, !tbaa !9
  store i32 56, ptr %51, align 4, !tbaa !9
  %12929 = load i32, ptr %51, align 4, !tbaa !9
  %12930 = load i32, ptr %50, align 4, !tbaa !9
  %12931 = add i32 %12930, %12929
  store i32 %12931, ptr %50, align 4, !tbaa !9
  %12932 = load ptr, ptr %5, align 8, !tbaa !5
  %12933 = load i32, ptr %48, align 4, !tbaa !9
  %12934 = load i32, ptr %49, align 4, !tbaa !9
  %12935 = load i32, ptr %50, align 4, !tbaa !9
  %12936 = call i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AIdentifier0x20const0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AIdentifier0x20const0x260x29(ptr noundef %12932, i32 noundef %12933, i32 noundef %12934, i32 noundef %12935)
  store i32 %12936, ptr %48, align 4, !tbaa !9
  %12937 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12937, ptr %15, align 4, !tbaa !9
  %12938 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12938, ptr %48, align 4, !tbaa !9
  %12939 = load ptr, ptr %5, align 8, !tbaa !5
  %12940 = getelementptr inbounds %struct.w2c_hermes, ptr %12939, i32 0, i32 6
  %12941 = load i32, ptr %48, align 4, !tbaa !9
  %12942 = zext i32 %12941 to i64
  %12943 = add i64 %12942, 56
  %12944 = call i32 @i32_load(ptr noundef %12940, i64 noundef %12943)
  store i32 %12944, ptr %48, align 4, !tbaa !9
  %12945 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12945, ptr %11, align 4, !tbaa !9
  %12946 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12946, ptr %48, align 4, !tbaa !9
  %12947 = load ptr, ptr %5, align 8, !tbaa !5
  %12948 = getelementptr inbounds %struct.w2c_hermes, ptr %12947, i32 0, i32 6
  %12949 = load i32, ptr %48, align 4, !tbaa !9
  %12950 = zext i32 %12949 to i64
  %12951 = add i64 %12950, 56
  %12952 = call i32 @i32_load(ptr noundef %12948, i64 noundef %12951)
  store i32 %12952, ptr %48, align 4, !tbaa !9
  %12953 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12953, ptr %14, align 4, !tbaa !9
  br label %12954

12954:                                            ; preds = %12925, %12566, %12475
  store i32 20, ptr %48, align 4, !tbaa !9
  %12955 = load ptr, ptr %5, align 8, !tbaa !5
  %12956 = load i32, ptr %48, align 4, !tbaa !9
  %12957 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %12955, i32 noundef %12956)
  store i32 %12957, ptr %48, align 4, !tbaa !9
  %12958 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %12958, ptr %8, align 4, !tbaa !9
  %12959 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12959, ptr %49, align 4, !tbaa !9
  %12960 = load ptr, ptr %5, align 8, !tbaa !5
  %12961 = getelementptr inbounds %struct.w2c_hermes, ptr %12960, i32 0, i32 6
  %12962 = load i32, ptr %49, align 4, !tbaa !9
  %12963 = zext i32 %12962 to i64
  %12964 = call i32 @i32_load(ptr noundef %12961, i64 noundef %12963)
  store i32 %12964, ptr %49, align 4, !tbaa !9
  %12965 = load ptr, ptr %5, align 8, !tbaa !5
  %12966 = getelementptr inbounds %struct.w2c_hermes, ptr %12965, i32 0, i32 6
  %12967 = load i32, ptr %48, align 4, !tbaa !9
  %12968 = zext i32 %12967 to i64
  %12969 = add i64 %12968, 16
  %12970 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12966, i64 noundef %12969, i32 noundef %12970)
  %12971 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12971, ptr %48, align 4, !tbaa !9
  %12972 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12972, ptr %49, align 4, !tbaa !9
  %12973 = load ptr, ptr %5, align 8, !tbaa !5
  %12974 = getelementptr inbounds %struct.w2c_hermes, ptr %12973, i32 0, i32 6
  %12975 = load i32, ptr %48, align 4, !tbaa !9
  %12976 = zext i32 %12975 to i64
  %12977 = add i64 %12976, 4
  %12978 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12974, i64 noundef %12977, i32 noundef %12978)
  %12979 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12979, ptr %48, align 4, !tbaa !9
  %12980 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12980, ptr %49, align 4, !tbaa !9
  %12981 = load ptr, ptr %5, align 8, !tbaa !5
  %12982 = getelementptr inbounds %struct.w2c_hermes, ptr %12981, i32 0, i32 6
  %12983 = load i32, ptr %48, align 4, !tbaa !9
  %12984 = zext i32 %12983 to i64
  %12985 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12982, i64 noundef %12984, i32 noundef %12985)
  %12986 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12986, ptr %48, align 4, !tbaa !9
  %12987 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12987, ptr %49, align 4, !tbaa !9
  %12988 = load ptr, ptr %5, align 8, !tbaa !5
  %12989 = getelementptr inbounds %struct.w2c_hermes, ptr %12988, i32 0, i32 6
  %12990 = load i32, ptr %49, align 4, !tbaa !9
  %12991 = zext i32 %12990 to i64
  %12992 = add i64 %12991, 4
  %12993 = call i32 @i32_load(ptr noundef %12989, i64 noundef %12992)
  store i32 %12993, ptr %49, align 4, !tbaa !9
  %12994 = load ptr, ptr %5, align 8, !tbaa !5
  %12995 = getelementptr inbounds %struct.w2c_hermes, ptr %12994, i32 0, i32 6
  %12996 = load i32, ptr %48, align 4, !tbaa !9
  %12997 = zext i32 %12996 to i64
  %12998 = add i64 %12997, 8
  %12999 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12995, i64 noundef %12998, i32 noundef %12999)
  %13000 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13000, ptr %48, align 4, !tbaa !9
  %13001 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13001, ptr %49, align 4, !tbaa !9
  %13002 = load ptr, ptr %5, align 8, !tbaa !5
  %13003 = getelementptr inbounds %struct.w2c_hermes, ptr %13002, i32 0, i32 6
  %13004 = load i32, ptr %49, align 4, !tbaa !9
  %13005 = zext i32 %13004 to i64
  %13006 = add i64 %13005, 4
  %13007 = call i32 @i32_load(ptr noundef %13003, i64 noundef %13006)
  store i32 %13007, ptr %49, align 4, !tbaa !9
  %13008 = load ptr, ptr %5, align 8, !tbaa !5
  %13009 = getelementptr inbounds %struct.w2c_hermes, ptr %13008, i32 0, i32 6
  %13010 = load i32, ptr %48, align 4, !tbaa !9
  %13011 = zext i32 %13010 to i64
  %13012 = add i64 %13011, 12
  %13013 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13009, i64 noundef %13012, i32 noundef %13013)
  %13014 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13014, ptr %48, align 4, !tbaa !9
  %13015 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13015, ptr %49, align 4, !tbaa !9
  %13016 = load ptr, ptr %5, align 8, !tbaa !5
  %13017 = getelementptr inbounds %struct.w2c_hermes, ptr %13016, i32 0, i32 6
  %13018 = load i32, ptr %48, align 4, !tbaa !9
  %13019 = zext i32 %13018 to i64
  %13020 = add i64 %13019, 4
  %13021 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13017, i64 noundef %13020, i32 noundef %13021)
  %13022 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %13022, ptr %48, align 4, !tbaa !9
  %13023 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13023, ptr %49, align 4, !tbaa !9
  %13024 = load ptr, ptr %5, align 8, !tbaa !5
  %13025 = getelementptr inbounds %struct.w2c_hermes, ptr %13024, i32 0, i32 6
  %13026 = load i32, ptr %48, align 4, !tbaa !9
  %13027 = zext i32 %13026 to i64
  %13028 = add i64 %13027, 4
  %13029 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13025, i64 noundef %13028, i32 noundef %13029)
  %13030 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13030, ptr %48, align 4, !tbaa !9
  %13031 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13031, ptr %49, align 4, !tbaa !9
  %13032 = load ptr, ptr %5, align 8, !tbaa !5
  %13033 = getelementptr inbounds %struct.w2c_hermes, ptr %13032, i32 0, i32 6
  %13034 = load i32, ptr %49, align 4, !tbaa !9
  %13035 = zext i32 %13034 to i64
  %13036 = add i64 %13035, 44
  %13037 = call i32 @i32_load(ptr noundef %13033, i64 noundef %13036)
  store i32 %13037, ptr %49, align 4, !tbaa !9
  %13038 = load ptr, ptr %5, align 8, !tbaa !5
  %13039 = getelementptr inbounds %struct.w2c_hermes, ptr %13038, i32 0, i32 6
  %13040 = load i32, ptr %49, align 4, !tbaa !9
  %13041 = zext i32 %13040 to i64
  %13042 = add i64 %13041, 28
  %13043 = call i32 @i32_load(ptr noundef %13039, i64 noundef %13042)
  store i32 %13043, ptr %49, align 4, !tbaa !9
  %13044 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %13044, ptr %8, align 4, !tbaa !9
  %13045 = load ptr, ptr %5, align 8, !tbaa !5
  %13046 = getelementptr inbounds %struct.w2c_hermes, ptr %13045, i32 0, i32 6
  %13047 = load i32, ptr %48, align 4, !tbaa !9
  %13048 = zext i32 %13047 to i64
  %13049 = add i64 %13048, 16
  %13050 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13046, i64 noundef %13049, i32 noundef %13050)
  %13051 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13051, ptr %48, align 4, !tbaa !9
  %13052 = load ptr, ptr %5, align 8, !tbaa !5
  %13053 = getelementptr inbounds %struct.w2c_hermes, ptr %13052, i32 0, i32 6
  %13054 = load i32, ptr %48, align 4, !tbaa !9
  %13055 = zext i32 %13054 to i64
  %13056 = add i64 %13055, 60
  %13057 = call i32 @i32_load(ptr noundef %13053, i64 noundef %13056)
  store i32 %13057, ptr %48, align 4, !tbaa !9
  %13058 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13058, ptr %17, align 4, !tbaa !9
  %13059 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13059, ptr %48, align 4, !tbaa !9
  %13060 = load i32, ptr %48, align 4, !tbaa !9
  %13061 = icmp ne i32 %13060, 0
  %13062 = xor i1 %13061, true
  %13063 = zext i1 %13062 to i32
  store i32 %13063, ptr %48, align 4, !tbaa !9
  %13064 = load i32, ptr %48, align 4, !tbaa !9
  %13065 = icmp ne i32 %13064, 0
  br i1 %13065, label %13066, label %13068

13066:                                            ; preds = %12954
  store i32 0, ptr %48, align 4, !tbaa !9
  %13067 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13067, ptr %8, align 4, !tbaa !9
  br label %13213

13068:                                            ; preds = %12954
  %13069 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13069, ptr %48, align 4, !tbaa !9
  %13070 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13070, ptr %49, align 4, !tbaa !9
  %13071 = load ptr, ptr %5, align 8, !tbaa !5
  %13072 = getelementptr inbounds %struct.w2c_hermes, ptr %13071, i32 0, i32 6
  %13073 = load i32, ptr %49, align 4, !tbaa !9
  %13074 = zext i32 %13073 to i64
  %13075 = add i64 %13074, 44
  %13076 = call i32 @i32_load(ptr noundef %13072, i64 noundef %13075)
  store i32 %13076, ptr %49, align 4, !tbaa !9
  %13077 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %13077, ptr %10, align 4, !tbaa !9
  %13078 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13078, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %13079 = load i32, ptr %51, align 4, !tbaa !9
  %13080 = load i32, ptr %50, align 4, !tbaa !9
  %13081 = sub i32 %13080, %13079
  store i32 %13081, ptr %50, align 4, !tbaa !9
  %13082 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %13082, ptr %19, align 4, !tbaa !9
  %13083 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13083, ptr %51, align 4, !tbaa !9
  store i32 4, ptr %52, align 4, !tbaa !9
  %13084 = load i32, ptr %52, align 4, !tbaa !9
  %13085 = and i32 %13084, 31
  %13086 = load i32, ptr %51, align 4, !tbaa !9
  %13087 = lshr i32 %13086, %13085
  store i32 %13087, ptr %51, align 4, !tbaa !9
  %13088 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13088, ptr %52, align 4, !tbaa !9
  store i32 9, ptr %53, align 4, !tbaa !9
  %13089 = load i32, ptr %53, align 4, !tbaa !9
  %13090 = and i32 %13089, 31
  %13091 = load i32, ptr %52, align 4, !tbaa !9
  %13092 = lshr i32 %13091, %13090
  store i32 %13092, ptr %52, align 4, !tbaa !9
  %13093 = load i32, ptr %52, align 4, !tbaa !9
  %13094 = load i32, ptr %51, align 4, !tbaa !9
  %13095 = xor i32 %13094, %13093
  store i32 %13095, ptr %51, align 4, !tbaa !9
  %13096 = load i32, ptr %51, align 4, !tbaa !9
  %13097 = load i32, ptr %50, align 4, !tbaa !9
  %13098 = and i32 %13097, %13096
  store i32 %13098, ptr %50, align 4, !tbaa !9
  %13099 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %13099, ptr %15, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %13100 = load i32, ptr %51, align 4, !tbaa !9
  %13101 = and i32 %13100, 31
  %13102 = load i32, ptr %50, align 4, !tbaa !9
  %13103 = shl i32 %13102, %13101
  store i32 %13103, ptr %50, align 4, !tbaa !9
  %13104 = load i32, ptr %50, align 4, !tbaa !9
  %13105 = load i32, ptr %49, align 4, !tbaa !9
  %13106 = add i32 %13105, %13104
  store i32 %13106, ptr %49, align 4, !tbaa !9
  %13107 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %13107, ptr %11, align 4, !tbaa !9
  %13108 = load ptr, ptr %5, align 8, !tbaa !5
  %13109 = getelementptr inbounds %struct.w2c_hermes, ptr %13108, i32 0, i32 6
  %13110 = load i32, ptr %49, align 4, !tbaa !9
  %13111 = zext i32 %13110 to i64
  %13112 = call i32 @i32_load(ptr noundef %13109, i64 noundef %13111)
  store i32 %13112, ptr %49, align 4, !tbaa !9
  %13113 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %13113, ptr %14, align 4, !tbaa !9
  %13114 = load i32, ptr %48, align 4, !tbaa !9
  %13115 = load i32, ptr %49, align 4, !tbaa !9
  %13116 = icmp eq i32 %13114, %13115
  %13117 = zext i1 %13116 to i32
  store i32 %13117, ptr %48, align 4, !tbaa !9
  %13118 = load i32, ptr %48, align 4, !tbaa !9
  %13119 = icmp ne i32 %13118, 0
  br i1 %13119, label %13120, label %13121

13120:                                            ; preds = %13068
  br label %13234

13121:                                            ; preds = %13068
  store i32 1, ptr %48, align 4, !tbaa !9
  %13122 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13122, ptr %12, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %13123 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13123, ptr %13, align 4, !tbaa !9
  br label %13124

13124:                                            ; preds = %13211, %13121
  %13125 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %13125, ptr %48, align 4, !tbaa !9
  store i32 -4, ptr %49, align 4, !tbaa !9
  %13126 = load i32, ptr %48, align 4, !tbaa !9
  %13127 = load i32, ptr %49, align 4, !tbaa !9
  %13128 = icmp eq i32 %13126, %13127
  %13129 = zext i1 %13128 to i32
  store i32 %13129, ptr %48, align 4, !tbaa !9
  %13130 = load i32, ptr %48, align 4, !tbaa !9
  %13131 = icmp ne i32 %13130, 0
  br i1 %13131, label %13132, label %13145

13132:                                            ; preds = %13124
  %13133 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13133, ptr %48, align 4, !tbaa !9
  %13134 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13134, ptr %49, align 4, !tbaa !9
  %13135 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13135, ptr %50, align 4, !tbaa !9
  %13136 = load i32, ptr %50, align 4, !tbaa !9
  %13137 = icmp ne i32 %13136, 0
  br i1 %13137, label %13138, label %13140

13138:                                            ; preds = %13132
  %13139 = load i32, ptr %48, align 4, !tbaa !9
  br label %13142

13140:                                            ; preds = %13132
  %13141 = load i32, ptr %49, align 4, !tbaa !9
  br label %13142

13142:                                            ; preds = %13140, %13138
  %13143 = phi i32 [ %13139, %13138 ], [ %13141, %13140 ]
  store i32 %13143, ptr %48, align 4, !tbaa !9
  %13144 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13144, ptr %8, align 4, !tbaa !9
  br label %13213

13145:                                            ; preds = %13124
  %13146 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13146, ptr %48, align 4, !tbaa !9
  %13147 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13147, ptr %49, align 4, !tbaa !9
  %13148 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13148, ptr %50, align 4, !tbaa !9
  %13149 = load i32, ptr %50, align 4, !tbaa !9
  %13150 = icmp ne i32 %13149, 0
  br i1 %13150, label %13151, label %13153

13151:                                            ; preds = %13145
  %13152 = load i32, ptr %48, align 4, !tbaa !9
  br label %13155

13153:                                            ; preds = %13145
  %13154 = load i32, ptr %49, align 4, !tbaa !9
  br label %13155

13155:                                            ; preds = %13153, %13151
  %13156 = phi i32 [ %13152, %13151 ], [ %13154, %13153 ]
  store i32 %13156, ptr %48, align 4, !tbaa !9
  %13157 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13157, ptr %49, align 4, !tbaa !9
  %13158 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %13158, ptr %50, align 4, !tbaa !9
  store i32 -8, ptr %51, align 4, !tbaa !9
  %13159 = load i32, ptr %50, align 4, !tbaa !9
  %13160 = load i32, ptr %51, align 4, !tbaa !9
  %13161 = icmp eq i32 %13159, %13160
  %13162 = zext i1 %13161 to i32
  store i32 %13162, ptr %50, align 4, !tbaa !9
  %13163 = load i32, ptr %50, align 4, !tbaa !9
  %13164 = icmp ne i32 %13163, 0
  br i1 %13164, label %13165, label %13167

13165:                                            ; preds = %13155
  %13166 = load i32, ptr %48, align 4, !tbaa !9
  br label %13169

13167:                                            ; preds = %13155
  %13168 = load i32, ptr %49, align 4, !tbaa !9
  br label %13169

13169:                                            ; preds = %13167, %13165
  %13170 = phi i32 [ %13166, %13165 ], [ %13168, %13167 ]
  store i32 %13170, ptr %48, align 4, !tbaa !9
  %13171 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13171, ptr %13, align 4, !tbaa !9
  %13172 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13172, ptr %48, align 4, !tbaa !9
  %13173 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %13173, ptr %49, align 4, !tbaa !9
  %13174 = load i32, ptr %49, align 4, !tbaa !9
  %13175 = load i32, ptr %48, align 4, !tbaa !9
  %13176 = add i32 %13175, %13174
  store i32 %13176, ptr %48, align 4, !tbaa !9
  %13177 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13177, ptr %11, align 4, !tbaa !9
  %13178 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13178, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %13179 = load i32, ptr %49, align 4, !tbaa !9
  %13180 = load i32, ptr %48, align 4, !tbaa !9
  %13181 = add i32 %13180, %13179
  store i32 %13181, ptr %48, align 4, !tbaa !9
  %13182 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13182, ptr %12, align 4, !tbaa !9
  %13183 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13183, ptr %48, align 4, !tbaa !9
  %13184 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13184, ptr %49, align 4, !tbaa !9
  %13185 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13185, ptr %50, align 4, !tbaa !9
  %13186 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13186, ptr %51, align 4, !tbaa !9
  %13187 = load i32, ptr %51, align 4, !tbaa !9
  %13188 = load i32, ptr %50, align 4, !tbaa !9
  %13189 = and i32 %13188, %13187
  store i32 %13189, ptr %50, align 4, !tbaa !9
  %13190 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %13190, ptr %15, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %13191 = load i32, ptr %51, align 4, !tbaa !9
  %13192 = and i32 %13191, 31
  %13193 = load i32, ptr %50, align 4, !tbaa !9
  %13194 = shl i32 %13193, %13192
  store i32 %13194, ptr %50, align 4, !tbaa !9
  %13195 = load i32, ptr %50, align 4, !tbaa !9
  %13196 = load i32, ptr %49, align 4, !tbaa !9
  %13197 = add i32 %13196, %13195
  store i32 %13197, ptr %49, align 4, !tbaa !9
  %13198 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %13198, ptr %11, align 4, !tbaa !9
  %13199 = load ptr, ptr %5, align 8, !tbaa !5
  %13200 = getelementptr inbounds %struct.w2c_hermes, ptr %13199, i32 0, i32 6
  %13201 = load i32, ptr %49, align 4, !tbaa !9
  %13202 = zext i32 %13201 to i64
  %13203 = call i32 @i32_load(ptr noundef %13200, i64 noundef %13202)
  store i32 %13203, ptr %49, align 4, !tbaa !9
  %13204 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %13204, ptr %14, align 4, !tbaa !9
  %13205 = load i32, ptr %48, align 4, !tbaa !9
  %13206 = load i32, ptr %49, align 4, !tbaa !9
  %13207 = icmp ne i32 %13205, %13206
  %13208 = zext i1 %13207 to i32
  store i32 %13208, ptr %48, align 4, !tbaa !9
  %13209 = load i32, ptr %48, align 4, !tbaa !9
  %13210 = icmp ne i32 %13209, 0
  br i1 %13210, label %13211, label %13212

13211:                                            ; preds = %13169
  br label %13124

13212:                                            ; preds = %13169
  br label %13234

13213:                                            ; preds = %13142, %13066
  %13214 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %13214, ptr %48, align 4, !tbaa !9
  %13215 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13215, ptr %49, align 4, !tbaa !9
  %13216 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13216, ptr %50, align 4, !tbaa !9
  store i32 16, ptr %51, align 4, !tbaa !9
  %13217 = load i32, ptr %51, align 4, !tbaa !9
  %13218 = load i32, ptr %50, align 4, !tbaa !9
  %13219 = add i32 %13218, %13217
  store i32 %13219, ptr %50, align 4, !tbaa !9
  %13220 = load ptr, ptr %5, align 8, !tbaa !5
  %13221 = load i32, ptr %48, align 4, !tbaa !9
  %13222 = load i32, ptr %49, align 4, !tbaa !9
  %13223 = load i32, ptr %50, align 4, !tbaa !9
  %13224 = call i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AIdentifier0x20const0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AIdentifier0x20const0x260x29(ptr noundef %13220, i32 noundef %13221, i32 noundef %13222, i32 noundef %13223)
  store i32 %13224, ptr %48, align 4, !tbaa !9
  %13225 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13225, ptr %11, align 4, !tbaa !9
  %13226 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13226, ptr %48, align 4, !tbaa !9
  %13227 = load ptr, ptr %5, align 8, !tbaa !5
  %13228 = getelementptr inbounds %struct.w2c_hermes, ptr %13227, i32 0, i32 6
  %13229 = load i32, ptr %48, align 4, !tbaa !9
  %13230 = zext i32 %13229 to i64
  %13231 = add i64 %13230, 16
  %13232 = call i32 @i32_load(ptr noundef %13228, i64 noundef %13231)
  store i32 %13232, ptr %48, align 4, !tbaa !9
  %13233 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13233, ptr %8, align 4, !tbaa !9
  br label %13234

13234:                                            ; preds = %13213, %13212, %13120
  store i32 20, ptr %48, align 4, !tbaa !9
  %13235 = load ptr, ptr %5, align 8, !tbaa !5
  %13236 = load i32, ptr %48, align 4, !tbaa !9
  %13237 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %13235, i32 noundef %13236)
  store i32 %13237, ptr %48, align 4, !tbaa !9
  %13238 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13238, ptr %10, align 4, !tbaa !9
  %13239 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13239, ptr %49, align 4, !tbaa !9
  %13240 = load ptr, ptr %5, align 8, !tbaa !5
  %13241 = getelementptr inbounds %struct.w2c_hermes, ptr %13240, i32 0, i32 6
  %13242 = load i32, ptr %49, 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 %49, align 4, !tbaa !9
  %13245 = load ptr, ptr %5, align 8, !tbaa !5
  %13246 = getelementptr inbounds %struct.w2c_hermes, ptr %13245, i32 0, i32 6
  %13247 = load i32, ptr %48, align 4, !tbaa !9
  %13248 = zext i32 %13247 to i64
  %13249 = add i64 %13248, 16
  %13250 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13246, i64 noundef %13249, i32 noundef %13250)
  %13251 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13251, ptr %48, align 4, !tbaa !9
  %13252 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13252, ptr %49, align 4, !tbaa !9
  %13253 = load ptr, ptr %5, align 8, !tbaa !5
  %13254 = getelementptr inbounds %struct.w2c_hermes, ptr %13253, i32 0, i32 6
  %13255 = load i32, ptr %48, align 4, !tbaa !9
  %13256 = zext i32 %13255 to i64
  %13257 = add i64 %13256, 4
  %13258 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13254, i64 noundef %13257, i32 noundef %13258)
  %13259 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13259, ptr %48, align 4, !tbaa !9
  %13260 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13260, ptr %49, align 4, !tbaa !9
  %13261 = load ptr, ptr %5, align 8, !tbaa !5
  %13262 = getelementptr inbounds %struct.w2c_hermes, ptr %13261, i32 0, i32 6
  %13263 = load i32, ptr %48, align 4, !tbaa !9
  %13264 = zext i32 %13263 to i64
  %13265 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13262, i64 noundef %13264, i32 noundef %13265)
  %13266 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13266, ptr %48, align 4, !tbaa !9
  %13267 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13267, ptr %49, align 4, !tbaa !9
  %13268 = load ptr, ptr %5, align 8, !tbaa !5
  %13269 = getelementptr inbounds %struct.w2c_hermes, ptr %13268, i32 0, i32 6
  %13270 = load i32, ptr %49, align 4, !tbaa !9
  %13271 = zext i32 %13270 to i64
  %13272 = add i64 %13271, 4
  %13273 = call i32 @i32_load(ptr noundef %13269, i64 noundef %13272)
  store i32 %13273, ptr %49, align 4, !tbaa !9
  %13274 = load ptr, ptr %5, align 8, !tbaa !5
  %13275 = getelementptr inbounds %struct.w2c_hermes, ptr %13274, i32 0, i32 6
  %13276 = load i32, ptr %48, align 4, !tbaa !9
  %13277 = zext i32 %13276 to i64
  %13278 = add i64 %13277, 8
  %13279 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13275, i64 noundef %13278, i32 noundef %13279)
  %13280 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13280, ptr %48, align 4, !tbaa !9
  %13281 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13281, ptr %49, align 4, !tbaa !9
  %13282 = load ptr, ptr %5, align 8, !tbaa !5
  %13283 = getelementptr inbounds %struct.w2c_hermes, ptr %13282, i32 0, i32 6
  %13284 = load i32, ptr %49, align 4, !tbaa !9
  %13285 = zext i32 %13284 to i64
  %13286 = add i64 %13285, 4
  %13287 = call i32 @i32_load(ptr noundef %13283, i64 noundef %13286)
  store i32 %13287, ptr %49, align 4, !tbaa !9
  %13288 = load ptr, ptr %5, align 8, !tbaa !5
  %13289 = getelementptr inbounds %struct.w2c_hermes, ptr %13288, i32 0, i32 6
  %13290 = load i32, ptr %48, align 4, !tbaa !9
  %13291 = zext i32 %13290 to i64
  %13292 = add i64 %13291, 12
  %13293 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13289, i64 noundef %13292, i32 noundef %13293)
  %13294 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13294, ptr %48, align 4, !tbaa !9
  %13295 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13295, ptr %49, align 4, !tbaa !9
  %13296 = load ptr, ptr %5, align 8, !tbaa !5
  %13297 = getelementptr inbounds %struct.w2c_hermes, ptr %13296, i32 0, i32 6
  %13298 = load i32, ptr %48, align 4, !tbaa !9
  %13299 = zext i32 %13298 to i64
  %13300 = add i64 %13299, 4
  %13301 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13297, i64 noundef %13300, i32 noundef %13301)
  %13302 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13302, ptr %48, align 4, !tbaa !9
  %13303 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13303, ptr %49, align 4, !tbaa !9
  %13304 = load ptr, ptr %5, align 8, !tbaa !5
  %13305 = getelementptr inbounds %struct.w2c_hermes, ptr %13304, i32 0, i32 6
  %13306 = load i32, ptr %48, align 4, !tbaa !9
  %13307 = zext i32 %13306 to i64
  %13308 = add i64 %13307, 4
  %13309 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13305, i64 noundef %13308, i32 noundef %13309)
  br label %13310

13310:                                            ; preds = %13234, %12849, %12270
  %13311 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13311, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %13312 = load i32, ptr %49, align 4, !tbaa !9
  %13313 = load i32, ptr %48, align 4, !tbaa !9
  %13314 = add i32 %13313, %13312
  store i32 %13314, ptr %48, align 4, !tbaa !9
  %13315 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13315, ptr %49, align 4, !tbaa !9
  %13316 = load ptr, ptr %5, align 8, !tbaa !5
  %13317 = getelementptr inbounds %struct.w2c_hermes, ptr %13316, i32 0, i32 6
  %13318 = load i32, ptr %49, align 4, !tbaa !9
  %13319 = zext i32 %13318 to i64
  %13320 = add i64 %13319, 73
  %13321 = call i32 @i32_load8_u(ptr noundef %13317, i64 noundef %13320)
  store i32 %13321, ptr %49, align 4, !tbaa !9
  %13322 = load i32, ptr %49, align 4, !tbaa !9
  %13323 = icmp ne i32 %13322, 0
  br i1 %13323, label %13324, label %13335

13324:                                            ; preds = %13310
  %13325 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13325, ptr %49, align 4, !tbaa !9
  %13326 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13326, ptr %50, align 4, !tbaa !9
  %13327 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13327, ptr %51, align 4, !tbaa !9
  %13328 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13328, ptr %52, align 4, !tbaa !9
  %13329 = load ptr, ptr %5, align 8, !tbaa !5
  %13330 = load i32, ptr %49, align 4, !tbaa !9
  %13331 = load i32, ptr %50, align 4, !tbaa !9
  %13332 = load i32, ptr %51, align 4, !tbaa !9
  %13333 = load i32, ptr %52, align 4, !tbaa !9
  %13334 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenAsyncFunction0x28hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x29(ptr noundef %13329, i32 noundef %13330, i32 noundef %13331, i32 noundef %13332, i32 noundef %13333)
  store i32 %13334, ptr %49, align 4, !tbaa !9
  br label %13368

13335:                                            ; preds = %13310
  %13336 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13336, ptr %49, align 4, !tbaa !9
  %13337 = load ptr, ptr %5, align 8, !tbaa !5
  %13338 = getelementptr inbounds %struct.w2c_hermes, ptr %13337, i32 0, i32 6
  %13339 = load i32, ptr %49, align 4, !tbaa !9
  %13340 = zext i32 %13339 to i64
  %13341 = add i64 %13340, 72
  %13342 = call i32 @i32_load8_u(ptr noundef %13338, i64 noundef %13341)
  store i32 %13342, ptr %49, align 4, !tbaa !9
  %13343 = load i32, ptr %49, align 4, !tbaa !9
  %13344 = icmp ne i32 %13343, 0
  br i1 %13344, label %13345, label %13356

13345:                                            ; preds = %13335
  %13346 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13346, ptr %49, align 4, !tbaa !9
  %13347 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13347, ptr %50, align 4, !tbaa !9
  %13348 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13348, ptr %51, align 4, !tbaa !9
  %13349 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13349, ptr %52, align 4, !tbaa !9
  %13350 = load ptr, ptr %5, align 8, !tbaa !5
  %13351 = load i32, ptr %49, align 4, !tbaa !9
  %13352 = load i32, ptr %50, align 4, !tbaa !9
  %13353 = load i32, ptr %51, align 4, !tbaa !9
  %13354 = load i32, ptr %52, align 4, !tbaa !9
  %13355 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenGeneratorFunction0x28hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x29(ptr noundef %13350, i32 noundef %13351, i32 noundef %13352, i32 noundef %13353, i32 noundef %13354)
  store i32 %13355, ptr %49, align 4, !tbaa !9
  br label %13368

13356:                                            ; preds = %13335
  %13357 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13357, ptr %49, align 4, !tbaa !9
  %13358 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13358, ptr %50, align 4, !tbaa !9
  %13359 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13359, ptr %51, align 4, !tbaa !9
  %13360 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13360, ptr %52, align 4, !tbaa !9
  store i32 0, ptr %53, align 4, !tbaa !9
  %13361 = load ptr, ptr %5, align 8, !tbaa !5
  %13362 = load i32, ptr %49, align 4, !tbaa !9
  %13363 = load i32, ptr %50, align 4, !tbaa !9
  %13364 = load i32, ptr %51, align 4, !tbaa !9
  %13365 = load i32, ptr %52, align 4, !tbaa !9
  %13366 = load i32, ptr %53, align 4, !tbaa !9
  %13367 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenES5Function0x28hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x2C0x20bool0x29(ptr noundef %13361, i32 noundef %13362, i32 noundef %13363, i32 noundef %13364, i32 noundef %13365, i32 noundef %13366)
  store i32 %13367, ptr %49, align 4, !tbaa !9
  br label %13368

13368:                                            ; preds = %13356, %13345, %13324
  %13369 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13369, ptr %50, align 4, !tbaa !9
  %13370 = load ptr, ptr %5, align 8, !tbaa !5
  %13371 = getelementptr inbounds %struct.w2c_hermes, ptr %13370, i32 0, i32 6
  %13372 = load i32, ptr %50, align 4, !tbaa !9
  %13373 = zext i32 %13372 to i64
  %13374 = add i64 %13373, 88
  %13375 = call i32 @i32_load(ptr noundef %13371, i64 noundef %13374)
  store i32 %13375, ptr %50, align 4, !tbaa !9
  %13376 = load ptr, ptr %5, align 8, !tbaa !5
  %13377 = load i32, ptr %48, align 4, !tbaa !9
  %13378 = load i32, ptr %49, align 4, !tbaa !9
  %13379 = load i32, ptr %50, align 4, !tbaa !9
  %13380 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCreateFunctionInst0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef %13376, i32 noundef %13377, i32 noundef %13378, i32 noundef %13379)
  store i32 %13380, ptr %48, align 4, !tbaa !9
  %13381 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13381, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %13382 = load i32, ptr %49, align 4, !tbaa !9
  %13383 = load i32, ptr %48, align 4, !tbaa !9
  %13384 = add i32 %13383, %13382
  store i32 %13384, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %13385 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13385, ptr %50, align 4, !tbaa !9
  %13386 = load i32, ptr %50, align 4, !tbaa !9
  %13387 = icmp ne i32 %13386, 0
  br i1 %13387, label %13388, label %13390

13388:                                            ; preds = %13368
  %13389 = load i32, ptr %48, align 4, !tbaa !9
  br label %13392

13390:                                            ; preds = %13368
  %13391 = load i32, ptr %49, align 4, !tbaa !9
  br label %13392

13392:                                            ; preds = %13390, %13388
  %13393 = phi i32 [ %13389, %13388 ], [ %13391, %13390 ]
  store i32 %13393, ptr %48, align 4, !tbaa !9
  %13394 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13394, ptr %7, align 4, !tbaa !9
  %13395 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13395, ptr %48, align 4, !tbaa !9
  %13396 = load i32, ptr %48, align 4, !tbaa !9
  %13397 = icmp ne i32 %13396, 0
  br i1 %13397, label %13398, label %13407

13398:                                            ; preds = %13392
  %13399 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13399, ptr %48, align 4, !tbaa !9
  %13400 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13400, ptr %49, align 4, !tbaa !9
  %13401 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %13401, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %13402 = load ptr, ptr %5, align 8, !tbaa !5
  %13403 = load i32, ptr %48, align 4, !tbaa !9
  %13404 = load i32, ptr %49, align 4, !tbaa !9
  %13405 = load i32, ptr %50, align 4, !tbaa !9
  %13406 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20bool0x29(ptr noundef %13402, i32 noundef %13403, i32 noundef %13404, i32 noundef %13405, i32 noundef %13406)
  br label %13407

13407:                                            ; preds = %13398, %13392
  %13408 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13408, ptr %48, align 4, !tbaa !9
  %13409 = load ptr, ptr %5, align 8, !tbaa !5
  %13410 = getelementptr inbounds %struct.w2c_hermes, ptr %13409, i32 0, i32 6
  %13411 = load i32, ptr %48, align 4, !tbaa !9
  %13412 = zext i32 %13411 to i64
  %13413 = add i64 %13412, 52
  %13414 = call i32 @i32_load8_u(ptr noundef %13410, i64 noundef %13413)
  store i32 %13414, ptr %48, align 4, !tbaa !9
  %13415 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13415, ptr %8, align 4, !tbaa !9
  store i32 255, ptr %49, align 4, !tbaa !9
  %13416 = load i32, ptr %48, align 4, !tbaa !9
  %13417 = load i32, ptr %49, align 4, !tbaa !9
  %13418 = icmp ne i32 %13416, %13417
  %13419 = zext i1 %13418 to i32
  store i32 %13419, ptr %48, align 4, !tbaa !9
  %13420 = load i32, ptr %48, align 4, !tbaa !9
  %13421 = icmp ne i32 %13420, 0
  br i1 %13421, label %13422, label %13506

13422:                                            ; preds = %13407
  %13423 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13423, ptr %48, align 4, !tbaa !9
  store i32 56, ptr %49, align 4, !tbaa !9
  %13424 = load i32, ptr %49, align 4, !tbaa !9
  %13425 = load i32, ptr %48, align 4, !tbaa !9
  %13426 = add i32 %13425, %13424
  store i32 %13426, ptr %48, align 4, !tbaa !9
  %13427 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13427, ptr %49, align 4, !tbaa !9
  store i32 20, ptr %50, align 4, !tbaa !9
  %13428 = load i32, ptr %50, align 4, !tbaa !9
  %13429 = load i32, ptr %49, align 4, !tbaa !9
  %13430 = add i32 %13429, %13428
  store i32 %13430, ptr %49, align 4, !tbaa !9
  %13431 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13431, ptr %50, align 4, !tbaa !9
  store i32 2, ptr %51, align 4, !tbaa !9
  %13432 = load i32, ptr %51, align 4, !tbaa !9
  %13433 = and i32 %13432, 31
  %13434 = load i32, ptr %50, align 4, !tbaa !9
  %13435 = shl i32 %13434, %13433
  store i32 %13435, ptr %50, align 4, !tbaa !9
  store i32 111696, ptr %51, align 4, !tbaa !9
  %13436 = load i32, ptr %51, align 4, !tbaa !9
  %13437 = load i32, ptr %50, align 4, !tbaa !9
  %13438 = add i32 %13437, %13436
  store i32 %13438, ptr %50, align 4, !tbaa !9
  %13439 = load ptr, ptr %5, align 8, !tbaa !5
  %13440 = getelementptr inbounds %struct.w2c_hermes, ptr %13439, i32 0, i32 6
  %13441 = load i32, ptr %50, align 4, !tbaa !9
  %13442 = zext i32 %13441 to i64
  %13443 = call i32 @i32_load(ptr noundef %13440, i64 noundef %13442)
  store i32 %13443, ptr %50, align 4, !tbaa !9
  %13444 = load i32, ptr %50, align 4, !tbaa !9
  %13445 = load ptr, ptr %5, align 8, !tbaa !5
  %13446 = getelementptr inbounds %struct.w2c_hermes, ptr %13445, i32 0, i32 7
  %13447 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %13446, i32 0, i32 2
  %13448 = load i32, ptr %13447, align 4, !tbaa !22
  %13449 = icmp ult i32 %13444, %13448
  br i1 %13449, label %13450, label %13473

13450:                                            ; preds = %13422
  %13451 = load ptr, ptr %5, align 8, !tbaa !5
  %13452 = getelementptr inbounds %struct.w2c_hermes, ptr %13451, i32 0, i32 7
  %13453 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %13452, i32 0, i32 0
  %13454 = load ptr, ptr %13453, align 8, !tbaa !23
  %13455 = load i32, ptr %50, align 4, !tbaa !9
  %13456 = zext i32 %13455 to i64
  %13457 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13454, i64 %13456
  %13458 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13457, i32 0, i32 1
  %13459 = load ptr, ptr %13458, align 8, !tbaa !24
  %13460 = icmp ne ptr %13459, null
  br i1 %13460, label %13461, label %13473

13461:                                            ; preds = %13450
  %13462 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !5
  %13463 = load ptr, ptr %5, align 8, !tbaa !5
  %13464 = getelementptr inbounds %struct.w2c_hermes, ptr %13463, i32 0, i32 7
  %13465 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %13464, i32 0, i32 0
  %13466 = load ptr, ptr %13465, align 8, !tbaa !23
  %13467 = load i32, ptr %50, align 4, !tbaa !9
  %13468 = zext i32 %13467 to i64
  %13469 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13466, i64 %13468
  %13470 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13469, i32 0, i32 0
  %13471 = load ptr, ptr %13470, align 8, !tbaa !26
  %13472 = call zeroext i1 @func_types_eq(ptr noundef %13462, ptr noundef %13471)
  br label %13473

13473:                                            ; preds = %13461, %13450, %13422
  %13474 = phi i1 [ false, %13450 ], [ false, %13422 ], [ %13472, %13461 ]
  %13475 = xor i1 %13474, true
  %13476 = xor i1 %13475, true
  %13477 = zext i1 %13476 to i32
  %13478 = sext i32 %13477 to i64
  %13479 = call i64 @llvm.expect.i64(i64 %13478, i64 1)
  %13480 = icmp ne i64 %13479, 0
  br i1 %13480, label %13483, label %13481

13481:                                            ; preds = %13473
  call void @wasm_rt_trap(i32 noundef 6) #8
  unreachable

13482:                                            ; No predecessors!
  br label %13483

13483:                                            ; preds = %13482, %13473
  %13484 = phi i1 [ true, %13473 ], [ false, %13482 ]
  %13485 = zext i1 %13484 to i32
  %13486 = load ptr, ptr %5, align 8, !tbaa !5
  %13487 = getelementptr inbounds %struct.w2c_hermes, ptr %13486, i32 0, i32 7
  %13488 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %13487, i32 0, i32 0
  %13489 = load ptr, ptr %13488, align 8, !tbaa !23
  %13490 = load i32, ptr %50, align 4, !tbaa !9
  %13491 = zext i32 %13490 to i64
  %13492 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13489, i64 %13491
  %13493 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13492, i32 0, i32 1
  %13494 = load ptr, ptr %13493, align 8, !tbaa !24
  %13495 = load ptr, ptr %5, align 8, !tbaa !5
  %13496 = getelementptr inbounds %struct.w2c_hermes, ptr %13495, i32 0, i32 7
  %13497 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %13496, i32 0, i32 0
  %13498 = load ptr, ptr %13497, align 8, !tbaa !23
  %13499 = load i32, ptr %50, align 4, !tbaa !9
  %13500 = zext i32 %13499 to i64
  %13501 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13498, i64 %13500
  %13502 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13501, i32 0, i32 2
  %13503 = load ptr, ptr %13502, align 8, !tbaa !27
  %13504 = load i32, ptr %48, align 4, !tbaa !9
  %13505 = load i32, ptr %49, align 4, !tbaa !9
  call void %13494(ptr noundef %13503, i32 noundef %13504, i32 noundef %13505)
  br label %13506

13506:                                            ; preds = %13483, %13407
  %13507 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13507, ptr %48, align 4, !tbaa !9
  store i32 -64, ptr %49, align 4, !tbaa !9
  %13508 = load i32, ptr %49, align 4, !tbaa !9
  %13509 = load i32, ptr %48, align 4, !tbaa !9
  %13510 = sub i32 %13509, %13508
  store i32 %13510, ptr %48, align 4, !tbaa !9
  %13511 = load i32, ptr %48, align 4, !tbaa !9
  %13512 = load ptr, ptr %5, align 8, !tbaa !5
  %13513 = getelementptr inbounds %struct.w2c_hermes, ptr %13512, i32 0, i32 3
  store i32 %13511, ptr %13513, align 8, !tbaa !15
  %13514 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13514, ptr %48, align 4, !tbaa !9
  br label %22463

13515:                                            ; preds = %11986, %11977
  %13516 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13516, ptr %48, align 4, !tbaa !9
  %13517 = load i32, ptr %48, align 4, !tbaa !9
  %13518 = icmp ne i32 %13517, 0
  %13519 = xor i1 %13518, true
  %13520 = zext i1 %13519 to i32
  store i32 %13520, ptr %48, align 4, !tbaa !9
  %13521 = load i32, ptr %48, align 4, !tbaa !9
  %13522 = icmp ne i32 %13521, 0
  br i1 %13522, label %13523, label %13524

13523:                                            ; preds = %13515
  br label %14204

13524:                                            ; preds = %13515
  %13525 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13525, ptr %48, align 4, !tbaa !9
  store i32 5, ptr %49, align 4, !tbaa !9
  %13526 = load i32, ptr %48, align 4, !tbaa !9
  %13527 = load i32, ptr %49, align 4, !tbaa !9
  %13528 = icmp ne i32 %13526, %13527
  %13529 = zext i1 %13528 to i32
  store i32 %13529, ptr %48, align 4, !tbaa !9
  %13530 = load i32, ptr %48, align 4, !tbaa !9
  %13531 = icmp ne i32 %13530, 0
  br i1 %13531, label %13532, label %13533

13532:                                            ; preds = %13524
  br label %14204

13533:                                            ; preds = %13524
  %13534 = load ptr, ptr %5, align 8, !tbaa !5
  %13535 = getelementptr inbounds %struct.w2c_hermes, ptr %13534, i32 0, i32 3
  %13536 = load i32, ptr %13535, align 8, !tbaa !15
  store i32 %13536, ptr %48, align 4, !tbaa !9
  store i32 288, ptr %49, align 4, !tbaa !9
  %13537 = load i32, ptr %49, align 4, !tbaa !9
  %13538 = load i32, ptr %48, align 4, !tbaa !9
  %13539 = sub i32 %13538, %13537
  store i32 %13539, ptr %48, align 4, !tbaa !9
  %13540 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13540, ptr %11, align 4, !tbaa !9
  %13541 = load i32, ptr %48, align 4, !tbaa !9
  %13542 = load ptr, ptr %5, align 8, !tbaa !5
  %13543 = getelementptr inbounds %struct.w2c_hermes, ptr %13542, i32 0, i32 3
  store i32 %13541, ptr %13543, align 8, !tbaa !15
  %13544 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13544, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %13545 = load i32, ptr %49, align 4, !tbaa !9
  %13546 = load i32, ptr %48, align 4, !tbaa !9
  %13547 = add i32 %13546, %13545
  store i32 %13547, ptr %48, align 4, !tbaa !9
  %13548 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13548, ptr %12, align 4, !tbaa !9
  %13549 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13549, ptr %48, align 4, !tbaa !9
  %13550 = load ptr, ptr %5, align 8, !tbaa !5
  %13551 = getelementptr inbounds %struct.w2c_hermes, ptr %13550, i32 0, i32 6
  %13552 = load i32, ptr %48, align 4, !tbaa !9
  %13553 = zext i32 %13552 to i64
  %13554 = add i64 %13553, 73
  %13555 = call i32 @i32_load8_u(ptr noundef %13551, i64 noundef %13554)
  store i32 %13555, ptr %48, align 4, !tbaa !9
  %13556 = load i32, ptr %48, align 4, !tbaa !9
  %13557 = icmp ne i32 %13556, 0
  br i1 %13557, label %13558, label %13640

13558:                                            ; preds = %13533
  %13559 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13559, ptr %48, align 4, !tbaa !9
  %13560 = load ptr, ptr %5, align 8, !tbaa !5
  %13561 = getelementptr inbounds %struct.w2c_hermes, ptr %13560, i32 0, i32 6
  %13562 = load i32, ptr %48, align 4, !tbaa !9
  %13563 = zext i32 %13562 to i64
  %13564 = call i32 @i32_load(ptr noundef %13561, i64 noundef %13563)
  store i32 %13564, ptr %48, align 4, !tbaa !9
  %13565 = load ptr, ptr %5, align 8, !tbaa !5
  %13566 = getelementptr inbounds %struct.w2c_hermes, ptr %13565, i32 0, i32 6
  %13567 = load i32, ptr %48, align 4, !tbaa !9
  %13568 = zext i32 %13567 to i64
  %13569 = add i64 %13568, 28
  %13570 = call i32 @i32_load(ptr noundef %13566, i64 noundef %13569)
  store i32 %13570, ptr %48, align 4, !tbaa !9
  %13571 = load ptr, ptr %5, align 8, !tbaa !5
  %13572 = getelementptr inbounds %struct.w2c_hermes, ptr %13571, i32 0, i32 6
  %13573 = load i32, ptr %48, align 4, !tbaa !9
  %13574 = zext i32 %13573 to i64
  %13575 = add i64 %13574, 72
  %13576 = call i32 @i32_load(ptr noundef %13572, i64 noundef %13575)
  store i32 %13576, ptr %48, align 4, !tbaa !9
  %13577 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13577, ptr %8, align 4, !tbaa !9
  %13578 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13578, ptr %48, align 4, !tbaa !9
  %13579 = load ptr, ptr %5, align 8, !tbaa !5
  %13580 = getelementptr inbounds %struct.w2c_hermes, ptr %13579, i32 0, i32 6
  %13581 = load i32, ptr %48, align 4, !tbaa !9
  %13582 = zext i32 %13581 to i64
  %13583 = add i64 %13582, 16
  %13584 = call i64 @i64_load(ptr noundef %13580, i64 noundef %13583)
  store i64 %13584, ptr %58, align 8, !tbaa !11
  %13585 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %13585, ptr %31, align 8, !tbaa !11
  %13586 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13586, ptr %48, align 4, !tbaa !9
  store i32 53515, ptr %49, align 4, !tbaa !9
  %13587 = load ptr, ptr %5, align 8, !tbaa !5
  %13588 = getelementptr inbounds %struct.w2c_hermes, ptr %13587, i32 0, i32 6
  %13589 = load i32, ptr %48, align 4, !tbaa !9
  %13590 = zext i32 %13589 to i64
  %13591 = add i64 %13590, 28
  %13592 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13588, i64 noundef %13591, i32 noundef %13592)
  %13593 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13593, ptr %48, align 4, !tbaa !9
  store i32 259, ptr %49, align 4, !tbaa !9
  %13594 = load ptr, ptr %5, align 8, !tbaa !5
  %13595 = getelementptr inbounds %struct.w2c_hermes, ptr %13594, i32 0, i32 6
  %13596 = load i32, ptr %48, align 4, !tbaa !9
  %13597 = zext i32 %13596 to i64
  %13598 = add i64 %13597, 36
  %13599 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %13595, i64 noundef %13598, i32 noundef %13599)
  %13600 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13600, ptr %48, align 4, !tbaa !9
  %13601 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %13601, ptr %59, align 8, !tbaa !11
  %13602 = load ptr, ptr %5, align 8, !tbaa !5
  %13603 = getelementptr inbounds %struct.w2c_hermes, ptr %13602, i32 0, i32 6
  %13604 = load i32, ptr %48, align 4, !tbaa !9
  %13605 = zext i32 %13604 to i64
  %13606 = add i64 %13605, 16
  %13607 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13603, i64 noundef %13606, i64 noundef %13607)
  %13608 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13608, ptr %48, align 4, !tbaa !9
  %13609 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %13609, ptr %59, align 8, !tbaa !11
  %13610 = load ptr, ptr %5, align 8, !tbaa !5
  %13611 = getelementptr inbounds %struct.w2c_hermes, ptr %13610, i32 0, i32 6
  %13612 = load i32, ptr %48, align 4, !tbaa !9
  %13613 = zext i32 %13612 to i64
  %13614 = add i64 %13613, 280
  %13615 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13611, i64 noundef %13614, i64 noundef %13615)
  %13616 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13616, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %13617 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13617, ptr %50, align 4, !tbaa !9
  store i32 16, ptr %51, align 4, !tbaa !9
  %13618 = load i32, ptr %51, align 4, !tbaa !9
  %13619 = load i32, ptr %50, align 4, !tbaa !9
  %13620 = add i32 %13619, %13618
  store i32 %13620, ptr %50, align 4, !tbaa !9
  %13621 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13621, ptr %51, align 4, !tbaa !9
  store i32 28, ptr %52, align 4, !tbaa !9
  %13622 = load i32, ptr %52, align 4, !tbaa !9
  %13623 = load i32, ptr %51, align 4, !tbaa !9
  %13624 = add i32 %13623, %13622
  store i32 %13624, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %13625 = load ptr, ptr %5, align 8, !tbaa !5
  %13626 = load i32, ptr %48, align 4, !tbaa !9
  %13627 = load i32, ptr %49, align 4, !tbaa !9
  %13628 = load i32, ptr %50, align 4, !tbaa !9
  %13629 = load i32, ptr %51, align 4, !tbaa !9
  %13630 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %13625, i32 noundef %13626, i32 noundef %13627, i32 noundef %13628, i32 noundef %13629, i32 noundef %13630)
  %13631 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13631, ptr %48, align 4, !tbaa !9
  %13632 = load ptr, ptr %5, align 8, !tbaa !5
  %13633 = getelementptr inbounds %struct.w2c_hermes, ptr %13632, i32 0, i32 6
  %13634 = load i32, ptr %48, align 4, !tbaa !9
  %13635 = zext i32 %13634 to i64
  %13636 = call i32 @i32_load(ptr noundef %13633, i64 noundef %13635)
  store i32 %13636, ptr %48, align 4, !tbaa !9
  store i32 268, ptr %49, align 4, !tbaa !9
  %13637 = load i32, ptr %49, align 4, !tbaa !9
  %13638 = load i32, ptr %48, align 4, !tbaa !9
  %13639 = add i32 %13638, %13637
  store i32 %13639, ptr %48, align 4, !tbaa !9
  br label %14194

13640:                                            ; preds = %13533
  %13641 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13641, ptr %48, align 4, !tbaa !9
  %13642 = load ptr, ptr %5, align 8, !tbaa !5
  %13643 = getelementptr inbounds %struct.w2c_hermes, ptr %13642, i32 0, i32 6
  %13644 = load i32, ptr %48, align 4, !tbaa !9
  %13645 = zext i32 %13644 to i64
  %13646 = add i64 %13645, 84
  %13647 = call i32 @i32_load(ptr noundef %13643, i64 noundef %13646)
  store i32 %13647, ptr %48, align 4, !tbaa !9
  %13648 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13648, ptr %10, align 4, !tbaa !9
  store i32 136, ptr %48, align 4, !tbaa !9
  %13649 = load ptr, ptr %5, align 8, !tbaa !5
  %13650 = load i32, ptr %48, align 4, !tbaa !9
  %13651 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %13649, i32 noundef %13650)
  store i32 %13651, ptr %48, align 4, !tbaa !9
  %13652 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13652, ptr %9, align 4, !tbaa !9
  store i32 459775, ptr %49, align 4, !tbaa !9
  %13653 = load ptr, ptr %5, align 8, !tbaa !5
  %13654 = getelementptr inbounds %struct.w2c_hermes, ptr %13653, i32 0, i32 6
  %13655 = load i32, ptr %48, align 4, !tbaa !9
  %13656 = zext i32 %13655 to i64
  %13657 = add i64 %13656, 2
  %13658 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13654, i64 noundef %13657, i32 noundef %13658)
  %13659 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13659, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %13660 = load ptr, ptr %5, align 8, !tbaa !5
  %13661 = getelementptr inbounds %struct.w2c_hermes, ptr %13660, i32 0, i32 6
  %13662 = load i32, ptr %48, align 4, !tbaa !9
  %13663 = zext i32 %13662 to i64
  %13664 = add i64 %13663, 132
  %13665 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %13661, i64 noundef %13664, i32 noundef %13665)
  %13666 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13666, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %13667 = load ptr, ptr %5, align 8, !tbaa !5
  %13668 = getelementptr inbounds %struct.w2c_hermes, ptr %13667, i32 0, i32 6
  %13669 = load i32, ptr %48, align 4, !tbaa !9
  %13670 = zext i32 %13669 to i64
  %13671 = add i64 %13670, 84
  %13672 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13668, i64 noundef %13671, i32 noundef %13672)
  %13673 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13673, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %13674 = load ptr, ptr %5, align 8, !tbaa !5
  %13675 = getelementptr inbounds %struct.w2c_hermes, ptr %13674, i32 0, i32 6
  %13676 = load i32, ptr %48, align 4, !tbaa !9
  %13677 = zext i32 %13676 to i64
  %13678 = add i64 %13677, 76
  %13679 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13675, i64 noundef %13678, i64 noundef %13679)
  %13680 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13680, ptr %48, align 4, !tbaa !9
  %13681 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13681, ptr %49, align 4, !tbaa !9
  %13682 = load ptr, ptr %5, align 8, !tbaa !5
  %13683 = getelementptr inbounds %struct.w2c_hermes, ptr %13682, i32 0, i32 6
  %13684 = load i32, ptr %48, align 4, !tbaa !9
  %13685 = zext i32 %13684 to i64
  %13686 = add i64 %13685, 28
  %13687 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13683, i64 noundef %13686, i32 noundef %13687)
  %13688 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13688, ptr %48, align 4, !tbaa !9
  store i32 120, ptr %49, align 4, !tbaa !9
  %13689 = load ptr, ptr %5, align 8, !tbaa !5
  %13690 = getelementptr inbounds %struct.w2c_hermes, ptr %13689, i32 0, i32 6
  %13691 = load i32, ptr %48, align 4, !tbaa !9
  %13692 = zext i32 %13691 to i64
  %13693 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %13690, i64 noundef %13692, i32 noundef %13693)
  %13694 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13694, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %13695 = load ptr, ptr %5, align 8, !tbaa !5
  %13696 = getelementptr inbounds %struct.w2c_hermes, ptr %13695, i32 0, i32 6
  %13697 = load i32, ptr %48, align 4, !tbaa !9
  %13698 = zext i32 %13697 to i64
  %13699 = add i64 %13698, 12
  %13700 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13696, i64 noundef %13699, i64 noundef %13700)
  %13701 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13701, ptr %48, align 4, !tbaa !9
  %13702 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13702, ptr %49, align 4, !tbaa !9
  store i32 20, ptr %50, align 4, !tbaa !9
  %13703 = load i32, ptr %50, align 4, !tbaa !9
  %13704 = load i32, ptr %49, align 4, !tbaa !9
  %13705 = add i32 %13704, %13703
  store i32 %13705, ptr %49, align 4, !tbaa !9
  %13706 = load ptr, ptr %5, align 8, !tbaa !5
  %13707 = getelementptr inbounds %struct.w2c_hermes, ptr %13706, i32 0, i32 6
  %13708 = load i32, ptr %48, align 4, !tbaa !9
  %13709 = zext i32 %13708 to i64
  %13710 = add i64 %13709, 8
  %13711 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13707, i64 noundef %13710, i32 noundef %13711)
  %13712 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13712, ptr %48, align 4, !tbaa !9
  store i64 34359738368, ptr %59, align 8, !tbaa !11
  %13713 = load ptr, ptr %5, align 8, !tbaa !5
  %13714 = getelementptr inbounds %struct.w2c_hermes, ptr %13713, i32 0, i32 6
  %13715 = load i32, ptr %48, align 4, !tbaa !9
  %13716 = zext i32 %13715 to i64
  %13717 = add i64 %13716, 92
  %13718 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13714, i64 noundef %13717, i64 noundef %13718)
  %13719 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13719, ptr %48, align 4, !tbaa !9
  %13720 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13720, ptr %49, align 4, !tbaa !9
  store i32 100, ptr %50, align 4, !tbaa !9
  %13721 = load i32, ptr %50, align 4, !tbaa !9
  %13722 = load i32, ptr %49, align 4, !tbaa !9
  %13723 = add i32 %13722, %13721
  store i32 %13723, ptr %49, align 4, !tbaa !9
  %13724 = load ptr, ptr %5, align 8, !tbaa !5
  %13725 = getelementptr inbounds %struct.w2c_hermes, ptr %13724, i32 0, i32 6
  %13726 = load i32, ptr %48, align 4, !tbaa !9
  %13727 = zext i32 %13726 to i64
  %13728 = add i64 %13727, 88
  %13729 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13725, i64 noundef %13728, i32 noundef %13729)
  %13730 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13730, ptr %48, align 4, !tbaa !9
  store i64 34359738368, ptr %59, align 8, !tbaa !11
  %13731 = load ptr, ptr %5, align 8, !tbaa !5
  %13732 = getelementptr inbounds %struct.w2c_hermes, ptr %13731, i32 0, i32 6
  %13733 = load i32, ptr %48, align 4, !tbaa !9
  %13734 = zext i32 %13733 to i64
  %13735 = add i64 %13734, 36
  %13736 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13732, i64 noundef %13735, i64 noundef %13736)
  %13737 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13737, ptr %48, align 4, !tbaa !9
  %13738 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13738, ptr %49, align 4, !tbaa !9
  store i32 44, ptr %50, align 4, !tbaa !9
  %13739 = load i32, ptr %50, align 4, !tbaa !9
  %13740 = load i32, ptr %49, align 4, !tbaa !9
  %13741 = add i32 %13740, %13739
  store i32 %13741, ptr %49, align 4, !tbaa !9
  %13742 = load ptr, ptr %5, align 8, !tbaa !5
  %13743 = getelementptr inbounds %struct.w2c_hermes, ptr %13742, i32 0, i32 6
  %13744 = load i32, ptr %48, align 4, !tbaa !9
  %13745 = zext i32 %13744 to i64
  %13746 = add i64 %13745, 32
  %13747 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13743, i64 noundef %13746, i32 noundef %13747)
  %13748 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13748, ptr %48, align 4, !tbaa !9
  %13749 = load ptr, ptr %5, align 8, !tbaa !5
  %13750 = getelementptr inbounds %struct.w2c_hermes, ptr %13749, i32 0, i32 6
  %13751 = load i32, ptr %48, align 4, !tbaa !9
  %13752 = zext i32 %13751 to i64
  %13753 = add i64 %13752, 36
  %13754 = call i32 @i32_load(ptr noundef %13750, i64 noundef %13753)
  store i32 %13754, ptr %48, align 4, !tbaa !9
  %13755 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13755, ptr %15, align 4, !tbaa !9
  %13756 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13756, ptr %49, align 4, !tbaa !9
  %13757 = load ptr, ptr %5, align 8, !tbaa !5
  %13758 = getelementptr inbounds %struct.w2c_hermes, ptr %13757, i32 0, i32 6
  %13759 = load i32, ptr %49, align 4, !tbaa !9
  %13760 = zext i32 %13759 to i64
  %13761 = add i64 %13760, 40
  %13762 = call i32 @i32_load(ptr noundef %13758, i64 noundef %13761)
  store i32 %13762, ptr %49, align 4, !tbaa !9
  %13763 = load i32, ptr %48, align 4, !tbaa !9
  %13764 = load i32, ptr %49, align 4, !tbaa !9
  %13765 = icmp uge i32 %13763, %13764
  %13766 = zext i1 %13765 to i32
  store i32 %13766, ptr %48, align 4, !tbaa !9
  %13767 = load i32, ptr %48, align 4, !tbaa !9
  %13768 = icmp ne i32 %13767, 0
  br i1 %13768, label %13769, label %13791

13769:                                            ; preds = %13640
  %13770 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13770, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %13771 = load i32, ptr %49, align 4, !tbaa !9
  %13772 = load i32, ptr %48, align 4, !tbaa !9
  %13773 = add i32 %13772, %13771
  store i32 %13773, ptr %48, align 4, !tbaa !9
  %13774 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13774, ptr %49, align 4, !tbaa !9
  store i32 44, ptr %50, align 4, !tbaa !9
  %13775 = load i32, ptr %50, align 4, !tbaa !9
  %13776 = load i32, ptr %49, align 4, !tbaa !9
  %13777 = add i32 %13776, %13775
  store i32 %13777, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %13778 = load ptr, ptr %5, align 8, !tbaa !5
  %13779 = load i32, ptr %48, align 4, !tbaa !9
  %13780 = load i32, ptr %49, align 4, !tbaa !9
  %13781 = load i32, ptr %50, align 4, !tbaa !9
  %13782 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %13778, i32 noundef %13779, i32 noundef %13780, i32 noundef %13781, i32 noundef %13782)
  %13783 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13783, ptr %48, align 4, !tbaa !9
  %13784 = load ptr, ptr %5, align 8, !tbaa !5
  %13785 = getelementptr inbounds %struct.w2c_hermes, ptr %13784, i32 0, i32 6
  %13786 = load i32, ptr %48, align 4, !tbaa !9
  %13787 = zext i32 %13786 to i64
  %13788 = add i64 %13787, 36
  %13789 = call i32 @i32_load(ptr noundef %13785, i64 noundef %13788)
  store i32 %13789, ptr %48, align 4, !tbaa !9
  %13790 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13790, ptr %15, align 4, !tbaa !9
  br label %13791

13791:                                            ; preds = %13769, %13640
  %13792 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13792, ptr %48, align 4, !tbaa !9
  %13793 = load ptr, ptr %5, align 8, !tbaa !5
  %13794 = getelementptr inbounds %struct.w2c_hermes, ptr %13793, i32 0, i32 6
  %13795 = load i32, ptr %48, align 4, !tbaa !9
  %13796 = zext i32 %13795 to i64
  %13797 = add i64 %13796, 32
  %13798 = call i32 @i32_load(ptr noundef %13794, i64 noundef %13797)
  store i32 %13798, ptr %48, align 4, !tbaa !9
  %13799 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %13799, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %13800 = load i32, ptr %50, align 4, !tbaa !9
  %13801 = and i32 %13800, 31
  %13802 = load i32, ptr %49, align 4, !tbaa !9
  %13803 = shl i32 %13802, %13801
  store i32 %13803, ptr %49, align 4, !tbaa !9
  %13804 = load i32, ptr %49, align 4, !tbaa !9
  %13805 = load i32, ptr %48, align 4, !tbaa !9
  %13806 = add i32 %13805, %13804
  store i32 %13806, ptr %48, align 4, !tbaa !9
  %13807 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13807, ptr %49, align 4, !tbaa !9
  %13808 = load ptr, ptr %5, align 8, !tbaa !5
  %13809 = getelementptr inbounds %struct.w2c_hermes, ptr %13808, i32 0, i32 6
  %13810 = load i32, ptr %48, align 4, !tbaa !9
  %13811 = zext i32 %13810 to i64
  %13812 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13809, i64 noundef %13811, i32 noundef %13812)
  %13813 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13813, ptr %48, align 4, !tbaa !9
  %13814 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %13814, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %13815 = load i32, ptr %50, align 4, !tbaa !9
  %13816 = load i32, ptr %49, align 4, !tbaa !9
  %13817 = add i32 %13816, %13815
  store i32 %13817, ptr %49, align 4, !tbaa !9
  %13818 = load ptr, ptr %5, align 8, !tbaa !5
  %13819 = getelementptr inbounds %struct.w2c_hermes, ptr %13818, i32 0, i32 6
  %13820 = load i32, ptr %48, align 4, !tbaa !9
  %13821 = zext i32 %13820 to i64
  %13822 = add i64 %13821, 36
  %13823 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13819, i64 noundef %13822, i32 noundef %13823)
  %13824 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13824, ptr %48, align 4, !tbaa !9
  %13825 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13825, ptr %49, align 4, !tbaa !9
  %13826 = load ptr, ptr %5, align 8, !tbaa !5
  %13827 = load i32, ptr %48, align 4, !tbaa !9
  %13828 = load i32, ptr %49, align 4, !tbaa !9
  %13829 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenAnonymousFunctionNameIfNeeded0x28hermes0x3A0x3AIdentifier0x29(ptr noundef %13826, i32 noundef %13827, i32 noundef %13828)
  store i32 %13829, ptr %48, align 4, !tbaa !9
  %13830 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13830, ptr %8, align 4, !tbaa !9
  %13831 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13831, ptr %48, align 4, !tbaa !9
  %13832 = load ptr, ptr %5, align 8, !tbaa !5
  %13833 = getelementptr inbounds %struct.w2c_hermes, ptr %13832, i32 0, i32 6
  %13834 = load i32, ptr %48, align 4, !tbaa !9
  %13835 = zext i32 %13834 to i64
  %13836 = add i64 %13835, 36
  %13837 = call i32 @i32_load(ptr noundef %13833, i64 noundef %13836)
  store i32 %13837, ptr %48, align 4, !tbaa !9
  %13838 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13838, ptr %10, align 4, !tbaa !9
  %13839 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13839, ptr %48, align 4, !tbaa !9
  %13840 = load ptr, ptr %5, align 8, !tbaa !5
  %13841 = getelementptr inbounds %struct.w2c_hermes, ptr %13840, i32 0, i32 6
  %13842 = load i32, ptr %48, align 4, !tbaa !9
  %13843 = zext i32 %13842 to i64
  %13844 = add i64 %13843, 32
  %13845 = call i32 @i32_load(ptr noundef %13841, i64 noundef %13844)
  store i32 %13845, ptr %48, align 4, !tbaa !9
  %13846 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13846, ptr %14, align 4, !tbaa !9
  %13847 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13847, ptr %48, align 4, !tbaa !9
  %13848 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13848, ptr %49, align 4, !tbaa !9
  %13849 = load ptr, ptr %5, align 8, !tbaa !5
  %13850 = getelementptr inbounds %struct.w2c_hermes, ptr %13849, i32 0, i32 6
  %13851 = load i32, ptr %49, align 4, !tbaa !9
  %13852 = zext i32 %13851 to i64
  %13853 = add i64 %13852, 16
  %13854 = call i64 @i64_load(ptr noundef %13850, i64 noundef %13853)
  store i64 %13854, ptr %59, align 8, !tbaa !11
  %13855 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %13855, ptr %31, align 8, !tbaa !11
  %13856 = load ptr, ptr %5, align 8, !tbaa !5
  %13857 = getelementptr inbounds %struct.w2c_hermes, ptr %13856, i32 0, i32 6
  %13858 = load i32, ptr %48, align 4, !tbaa !9
  %13859 = zext i32 %13858 to i64
  %13860 = add i64 %13859, 8
  %13861 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13857, i64 noundef %13860, i64 noundef %13861)
  %13862 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13862, ptr %48, align 4, !tbaa !9
  %13863 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %13863, ptr %59, align 8, !tbaa !11
  %13864 = load ptr, ptr %5, align 8, !tbaa !5
  %13865 = getelementptr inbounds %struct.w2c_hermes, ptr %13864, i32 0, i32 6
  %13866 = load i32, ptr %48, align 4, !tbaa !9
  %13867 = zext i32 %13866 to i64
  %13868 = add i64 %13867, 272
  %13869 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13865, i64 noundef %13868, i64 noundef %13869)
  %13870 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13870, ptr %48, align 4, !tbaa !9
  store i32 28, ptr %49, align 4, !tbaa !9
  %13871 = load i32, ptr %49, align 4, !tbaa !9
  %13872 = load i32, ptr %48, align 4, !tbaa !9
  %13873 = add i32 %13872, %13871
  store i32 %13873, ptr %48, align 4, !tbaa !9
  %13874 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13874, ptr %49, align 4, !tbaa !9
  %13875 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13875, ptr %50, align 4, !tbaa !9
  %13876 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13876, ptr %51, align 4, !tbaa !9
  %13877 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13877, ptr %52, align 4, !tbaa !9
  store i32 2, ptr %53, align 4, !tbaa !9
  %13878 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %13878, ptr %54, align 4, !tbaa !9
  store i32 2, ptr %55, align 4, !tbaa !9
  %13879 = load i32, ptr %54, align 4, !tbaa !9
  %13880 = load i32, ptr %55, align 4, !tbaa !9
  %13881 = icmp eq i32 %13879, %13880
  %13882 = zext i1 %13881 to i32
  store i32 %13882, ptr %54, align 4, !tbaa !9
  %13883 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13883, ptr %55, align 4, !tbaa !9
  %13884 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13884, ptr %56, align 4, !tbaa !9
  store i32 8, ptr %57, align 4, !tbaa !9
  %13885 = load i32, ptr %57, align 4, !tbaa !9
  %13886 = load i32, ptr %56, align 4, !tbaa !9
  %13887 = add i32 %13886, %13885
  store i32 %13887, ptr %56, align 4, !tbaa !9
  %13888 = load ptr, ptr %5, align 8, !tbaa !5
  %13889 = load i32, ptr %50, align 4, !tbaa !9
  %13890 = load i32, ptr %51, align 4, !tbaa !9
  %13891 = load i32, ptr %52, align 4, !tbaa !9
  %13892 = load i32, ptr %53, align 4, !tbaa !9
  %13893 = load i32, ptr %54, align 4, !tbaa !9
  %13894 = load i32, ptr %55, align 4, !tbaa !9
  %13895 = load i32, ptr %56, align 4, !tbaa !9
  %13896 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateFunction0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AFunction0x3A0x3ADefinitionKind0x2C0x20bool0x2C0x20hermes0x3A0x3ASourceVisibility0x2C0x20llvh0x3A0x3ASMRange0x2C0x20bool0x2C0x20hermes0x3A0x3AFunction0x2A0x29(ptr noundef %13888, i32 noundef %13889, i32 noundef %13890, i32 noundef %13891, i32 noundef %13892, i32 noundef %13893, i32 noundef %13894, i32 noundef %13895)
  store i32 %13896, ptr %50, align 4, !tbaa !9
  %13897 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %13897, ptr %9, align 4, !tbaa !9
  %13898 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13898, ptr %51, align 4, !tbaa !9
  %13899 = load ptr, ptr %5, align 8, !tbaa !5
  %13900 = getelementptr inbounds %struct.w2c_hermes, ptr %13899, i32 0, i32 6
  %13901 = load i32, ptr %51, align 4, !tbaa !9
  %13902 = zext i32 %13901 to i64
  %13903 = add i64 %13902, 28
  %13904 = call i32 @i32_load(ptr noundef %13900, i64 noundef %13903)
  store i32 %13904, ptr %51, align 4, !tbaa !9
  %13905 = load ptr, ptr %5, align 8, !tbaa !5
  %13906 = load i32, ptr %48, align 4, !tbaa !9
  %13907 = load i32, ptr %49, align 4, !tbaa !9
  %13908 = load i32, ptr %50, align 4, !tbaa !9
  %13909 = load i32, ptr %51, align 4, !tbaa !9
  %13910 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AFunctionContext0x28hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x2A0x2C0x20hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3Asem0x3A0x3AFunctionInfo0x2A0x29(ptr noundef %13905, i32 noundef %13906, i32 noundef %13907, i32 noundef %13908, i32 noundef %13909)
  store i32 %13910, ptr %48, align 4, !tbaa !9
  %13911 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13911, ptr %14, align 4, !tbaa !9
  %13912 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13912, ptr %48, align 4, !tbaa !9
  %13913 = load ptr, ptr %5, align 8, !tbaa !5
  %13914 = getelementptr inbounds %struct.w2c_hermes, ptr %13913, i32 0, i32 6
  %13915 = load i32, ptr %48, align 4, !tbaa !9
  %13916 = zext i32 %13915 to i64
  %13917 = add i64 %13916, 40
  %13918 = call i32 @i32_load(ptr noundef %13914, i64 noundef %13917)
  store i32 %13918, ptr %48, align 4, !tbaa !9
  %13919 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %13919, ptr %8, align 4, !tbaa !9
  %13920 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13920, ptr %49, align 4, !tbaa !9
  %13921 = load ptr, ptr %5, align 8, !tbaa !5
  %13922 = getelementptr inbounds %struct.w2c_hermes, ptr %13921, i32 0, i32 6
  %13923 = load i32, ptr %49, align 4, !tbaa !9
  %13924 = zext i32 %13923 to i64
  %13925 = add i64 %13924, 8
  %13926 = call i32 @i32_load(ptr noundef %13922, i64 noundef %13925)
  store i32 %13926, ptr %49, align 4, !tbaa !9
  %13927 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %13927, ptr %10, align 4, !tbaa !9
  %13928 = load ptr, ptr %5, align 8, !tbaa !5
  %13929 = getelementptr inbounds %struct.w2c_hermes, ptr %13928, i32 0, i32 6
  %13930 = load i32, ptr %49, align 4, !tbaa !9
  %13931 = zext i32 %13930 to i64
  %13932 = add i64 %13931, 92
  %13933 = call i32 @i32_load(ptr noundef %13929, i64 noundef %13932)
  store i32 %13933, ptr %49, align 4, !tbaa !9
  %13934 = load ptr, ptr %5, align 8, !tbaa !5
  %13935 = getelementptr inbounds %struct.w2c_hermes, ptr %13934, i32 0, i32 6
  %13936 = load i32, ptr %48, align 4, !tbaa !9
  %13937 = zext i32 %13936 to i64
  %13938 = add i64 %13937, 92
  %13939 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13935, i64 noundef %13938, i32 noundef %13939)
  %13940 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13940, ptr %48, align 4, !tbaa !9
  %13941 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13941, ptr %49, align 4, !tbaa !9
  %13942 = load ptr, ptr %5, align 8, !tbaa !5
  %13943 = getelementptr inbounds %struct.w2c_hermes, ptr %13942, i32 0, i32 6
  %13944 = load i32, ptr %49, align 4, !tbaa !9
  %13945 = zext i32 %13944 to i64
  %13946 = add i64 %13945, 96
  %13947 = call i32 @i32_load(ptr noundef %13943, i64 noundef %13946)
  store i32 %13947, ptr %49, align 4, !tbaa !9
  %13948 = load ptr, ptr %5, align 8, !tbaa !5
  %13949 = getelementptr inbounds %struct.w2c_hermes, ptr %13948, i32 0, i32 6
  %13950 = load i32, ptr %48, align 4, !tbaa !9
  %13951 = zext i32 %13950 to i64
  %13952 = add i64 %13951, 96
  %13953 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13949, i64 noundef %13952, i32 noundef %13953)
  %13954 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13954, ptr %48, align 4, !tbaa !9
  %13955 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13955, ptr %49, align 4, !tbaa !9
  %13956 = load ptr, ptr %5, align 8, !tbaa !5
  %13957 = getelementptr inbounds %struct.w2c_hermes, ptr %13956, i32 0, i32 6
  %13958 = load i32, ptr %49, align 4, !tbaa !9
  %13959 = zext i32 %13958 to i64
  %13960 = add i64 %13959, 100
  %13961 = call i32 @i32_load(ptr noundef %13957, i64 noundef %13960)
  store i32 %13961, ptr %49, align 4, !tbaa !9
  %13962 = load ptr, ptr %5, align 8, !tbaa !5
  %13963 = getelementptr inbounds %struct.w2c_hermes, ptr %13962, i32 0, i32 6
  %13964 = load i32, ptr %48, align 4, !tbaa !9
  %13965 = zext i32 %13964 to i64
  %13966 = add i64 %13965, 100
  %13967 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13963, i64 noundef %13966, i32 noundef %13967)
  %13968 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13968, ptr %48, align 4, !tbaa !9
  %13969 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13969, ptr %49, align 4, !tbaa !9
  %13970 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13970, ptr %50, align 4, !tbaa !9
  %13971 = load ptr, ptr %5, align 8, !tbaa !5
  %13972 = load i32, ptr %49, align 4, !tbaa !9
  %13973 = load i32, ptr %50, align 4, !tbaa !9
  %13974 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %13971, i32 noundef %13972, i32 noundef %13973)
  store i32 %13974, ptr %49, align 4, !tbaa !9
  %13975 = load ptr, ptr %5, align 8, !tbaa !5
  %13976 = load i32, ptr %48, align 4, !tbaa !9
  %13977 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitFunctionPreamble0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %13975, i32 noundef %13976, i32 noundef %13977)
  %13978 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13978, ptr %48, align 4, !tbaa !9
  %13979 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13979, ptr %49, align 4, !tbaa !9
  %13980 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13980, ptr %50, align 4, !tbaa !9
  %13981 = load ptr, ptr %5, align 8, !tbaa !5
  %13982 = getelementptr inbounds %struct.w2c_hermes, ptr %13981, i32 0, i32 6
  %13983 = load i32, ptr %50, align 4, !tbaa !9
  %13984 = zext i32 %13983 to i64
  %13985 = add i64 %13984, 56
  %13986 = call i32 @i32_load(ptr noundef %13982, i64 noundef %13985)
  store i32 %13986, ptr %50, align 4, !tbaa !9
  store i32 2, ptr %51, align 4, !tbaa !9
  %13987 = load ptr, ptr %5, align 8, !tbaa !5
  %13988 = load i32, ptr %48, align 4, !tbaa !9
  %13989 = load i32, ptr %49, align 4, !tbaa !9
  %13990 = load i32, ptr %50, align 4, !tbaa !9
  %13991 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitTopLevelDeclarations0x28hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3ADoEmitParameters0x29(ptr noundef %13987, i32 noundef %13988, i32 noundef %13989, i32 noundef %13990, i32 noundef %13991)
  %13992 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13992, ptr %48, align 4, !tbaa !9
  %13993 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13993, ptr %49, align 4, !tbaa !9
  %13994 = load ptr, ptr %5, align 8, !tbaa !5
  %13995 = getelementptr inbounds %struct.w2c_hermes, ptr %13994, i32 0, i32 6
  %13996 = load i32, ptr %49, align 4, !tbaa !9
  %13997 = zext i32 %13996 to i64
  %13998 = add i64 %13997, 56
  %13999 = call i32 @i32_load(ptr noundef %13995, i64 noundef %13998)
  store i32 %13999, ptr %49, align 4, !tbaa !9
  %14000 = load ptr, ptr %5, align 8, !tbaa !5
  %14001 = load i32, ptr %48, align 4, !tbaa !9
  %14002 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenFunctionBody0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x29(ptr noundef %14000, i32 noundef %14001, i32 noundef %14002)
  %14003 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14003, ptr %48, align 4, !tbaa !9
  %14004 = load ptr, ptr %5, align 8, !tbaa !5
  %14005 = getelementptr inbounds %struct.w2c_hermes, ptr %14004, i32 0, i32 6
  %14006 = load i32, ptr %48, align 4, !tbaa !9
  %14007 = zext i32 %14006 to i64
  %14008 = call i32 @i32_load(ptr noundef %14005, i64 noundef %14007)
  store i32 %14008, ptr %48, align 4, !tbaa !9
  store i32 268, ptr %49, align 4, !tbaa !9
  %14009 = load i32, ptr %49, align 4, !tbaa !9
  %14010 = load i32, ptr %48, align 4, !tbaa !9
  %14011 = add i32 %14010, %14009
  store i32 %14011, ptr %48, align 4, !tbaa !9
  %14012 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14012, ptr %7, align 4, !tbaa !9
  %14013 = load i32, ptr %48, align 4, !tbaa !9
  %14014 = icmp ne i32 %14013, 0
  br i1 %14014, label %14015, label %14094

14015:                                            ; preds = %13791
  %14016 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14016, ptr %48, align 4, !tbaa !9
  %14017 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14017, ptr %49, align 4, !tbaa !9
  %14018 = load ptr, ptr %5, align 8, !tbaa !5
  %14019 = getelementptr inbounds %struct.w2c_hermes, ptr %14018, i32 0, i32 6
  %14020 = load i32, ptr %49, align 4, !tbaa !9
  %14021 = zext i32 %14020 to i64
  %14022 = add i64 %14021, 12
  %14023 = call i32 @i32_load(ptr noundef %14019, i64 noundef %14022)
  store i32 %14023, ptr %49, align 4, !tbaa !9
  %14024 = load ptr, ptr %5, align 8, !tbaa !5
  %14025 = getelementptr inbounds %struct.w2c_hermes, ptr %14024, i32 0, i32 6
  %14026 = load i32, ptr %49, align 4, !tbaa !9
  %14027 = zext i32 %14026 to i64
  %14028 = add i64 %14027, 44
  %14029 = call i32 @i32_load(ptr noundef %14025, i64 noundef %14028)
  store i32 %14029, ptr %49, align 4, !tbaa !9
  %14030 = load ptr, ptr %5, align 8, !tbaa !5
  %14031 = getelementptr inbounds %struct.w2c_hermes, ptr %14030, i32 0, i32 6
  %14032 = load i32, ptr %49, align 4, !tbaa !9
  %14033 = zext i32 %14032 to i64
  %14034 = add i64 %14033, 112
  %14035 = call i64 @i64_load(ptr noundef %14031, i64 noundef %14034)
  store i64 %14035, ptr %59, align 8, !tbaa !11
  %14036 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %14036, ptr %31, align 8, !tbaa !11
  %14037 = load ptr, ptr %5, align 8, !tbaa !5
  %14038 = getelementptr inbounds %struct.w2c_hermes, ptr %14037, i32 0, i32 6
  %14039 = load i32, ptr %48, align 4, !tbaa !9
  %14040 = zext i32 %14039 to i64
  %14041 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14038, i64 noundef %14040, i64 noundef %14041)
  %14042 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14042, ptr %48, align 4, !tbaa !9
  %14043 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %14043, ptr %59, align 8, !tbaa !11
  %14044 = load ptr, ptr %5, align 8, !tbaa !5
  %14045 = getelementptr inbounds %struct.w2c_hermes, ptr %14044, i32 0, i32 6
  %14046 = load i32, ptr %48, align 4, !tbaa !9
  %14047 = zext i32 %14046 to i64
  %14048 = add i64 %14047, 280
  %14049 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14045, i64 noundef %14048, i64 noundef %14049)
  %14050 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14050, ptr %48, align 4, !tbaa !9
  %14051 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14051, ptr %49, align 4, !tbaa !9
  %14052 = load ptr, ptr %5, align 8, !tbaa !5
  %14053 = getelementptr inbounds %struct.w2c_hermes, ptr %14052, i32 0, i32 6
  %14054 = load i32, ptr %49, align 4, !tbaa !9
  %14055 = zext i32 %14054 to i64
  %14056 = call i32 @i32_load(ptr noundef %14053, i64 noundef %14055)
  store i32 %14056, ptr %49, align 4, !tbaa !9
  %14057 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %14057, ptr %8, align 4, !tbaa !9
  %14058 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14058, ptr %50, align 4, !tbaa !9
  %14059 = load ptr, ptr %5, align 8, !tbaa !5
  %14060 = getelementptr inbounds %struct.w2c_hermes, ptr %14059, i32 0, i32 6
  %14061 = load i32, ptr %50, align 4, !tbaa !9
  %14062 = zext i32 %14061 to i64
  %14063 = add i64 %14062, 4
  %14064 = call i32 @i32_load(ptr noundef %14060, i64 noundef %14063)
  store i32 %14064, ptr %50, align 4, !tbaa !9
  %14065 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14065, ptr %10, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %14066 = load i32, ptr %51, align 4, !tbaa !9
  %14067 = load i32, ptr %50, align 4, !tbaa !9
  %14068 = sub i32 %14067, %14066
  store i32 %14068, ptr %50, align 4, !tbaa !9
  %14069 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14069, ptr %51, align 4, !tbaa !9
  %14070 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14070, ptr %52, align 4, !tbaa !9
  %14071 = load i32, ptr %51, align 4, !tbaa !9
  %14072 = load i32, ptr %52, align 4, !tbaa !9
  %14073 = icmp eq i32 %14071, %14072
  %14074 = zext i1 %14073 to i32
  store i32 %14074, ptr %51, align 4, !tbaa !9
  %14075 = load i32, ptr %51, align 4, !tbaa !9
  %14076 = icmp ne i32 %14075, 0
  br i1 %14076, label %14077, label %14079

14077:                                            ; preds = %14015
  %14078 = load i32, ptr %49, align 4, !tbaa !9
  br label %14081

14079:                                            ; preds = %14015
  %14080 = load i32, ptr %50, align 4, !tbaa !9
  br label %14081

14081:                                            ; preds = %14079, %14077
  %14082 = phi i32 [ %14078, %14077 ], [ %14080, %14079 ]
  store i32 %14082, ptr %49, align 4, !tbaa !9
  %14083 = load ptr, ptr %5, align 8, !tbaa !5
  %14084 = getelementptr inbounds %struct.w2c_hermes, ptr %14083, i32 0, i32 6
  %14085 = load i32, ptr %48, align 4, !tbaa !9
  %14086 = zext i32 %14085 to i64
  %14087 = add i64 %14086, 16
  %14088 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14084, i64 noundef %14087, i32 noundef %14088)
  %14089 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14089, ptr %48, align 4, !tbaa !9
  %14090 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14090, ptr %49, align 4, !tbaa !9
  %14091 = load ptr, ptr %5, align 8, !tbaa !5
  %14092 = load i32, ptr %48, align 4, !tbaa !9
  %14093 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateReturnInst0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %14091, i32 noundef %14092, i32 noundef %14093)
  br label %14094

14094:                                            ; preds = %14081, %13791
  %14095 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14095, ptr %48, align 4, !tbaa !9
  %14096 = load ptr, ptr %5, align 8, !tbaa !5
  %14097 = getelementptr inbounds %struct.w2c_hermes, ptr %14096, i32 0, i32 6
  %14098 = load i32, ptr %48, align 4, !tbaa !9
  %14099 = zext i32 %14098 to i64
  %14100 = add i64 %14099, 40
  %14101 = call i32 @i32_load(ptr noundef %14097, i64 noundef %14100)
  store i32 %14101, ptr %48, align 4, !tbaa !9
  %14102 = load ptr, ptr %5, align 8, !tbaa !5
  %14103 = getelementptr inbounds %struct.w2c_hermes, ptr %14102, i32 0, i32 6
  %14104 = load i32, ptr %48, align 4, !tbaa !9
  %14105 = zext i32 %14104 to i64
  %14106 = add i64 %14105, 88
  %14107 = call i32 @i32_load(ptr noundef %14103, i64 noundef %14106)
  store i32 %14107, ptr %48, align 4, !tbaa !9
  %14108 = load ptr, ptr %5, align 8, !tbaa !5
  %14109 = getelementptr inbounds %struct.w2c_hermes, ptr %14108, i32 0, i32 6
  %14110 = load i32, ptr %48, align 4, !tbaa !9
  %14111 = zext i32 %14110 to i64
  %14112 = add i64 %14111, 20
  %14113 = call i32 @i32_load(ptr noundef %14109, i64 noundef %14112)
  store i32 %14113, ptr %48, align 4, !tbaa !9
  %14114 = load i32, ptr %48, align 4, !tbaa !9
  %14115 = icmp ne i32 %14114, 0
  %14116 = xor i1 %14115, true
  %14117 = zext i1 %14116 to i32
  store i32 %14117, ptr %48, align 4, !tbaa !9
  %14118 = load i32, ptr %48, align 4, !tbaa !9
  %14119 = icmp ne i32 %14118, 0
  br i1 %14119, label %14120, label %14136

14120:                                            ; preds = %14094
  %14121 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14121, ptr %48, align 4, !tbaa !9
  %14122 = load ptr, ptr %5, align 8, !tbaa !5
  %14123 = getelementptr inbounds %struct.w2c_hermes, ptr %14122, i32 0, i32 6
  %14124 = load i32, ptr %48, align 4, !tbaa !9
  %14125 = zext i32 %14124 to i64
  %14126 = add i64 %14125, 40
  %14127 = call i32 @i32_load(ptr noundef %14123, i64 noundef %14126)
  store i32 %14127, ptr %48, align 4, !tbaa !9
  %14128 = load ptr, ptr %5, align 8, !tbaa !5
  %14129 = getelementptr inbounds %struct.w2c_hermes, ptr %14128, i32 0, i32 6
  %14130 = load i32, ptr %48, align 4, !tbaa !9
  %14131 = zext i32 %14130 to i64
  %14132 = add i64 %14131, 88
  %14133 = call i32 @i32_load(ptr noundef %14129, i64 noundef %14132)
  store i32 %14133, ptr %48, align 4, !tbaa !9
  %14134 = load ptr, ptr %5, align 8, !tbaa !5
  %14135 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AeraseFromParent0x280x29(ptr noundef %14134, i32 noundef %14135)
  br label %14136

14136:                                            ; preds = %14120, %14094
  %14137 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14137, ptr %48, align 4, !tbaa !9
  %14138 = load ptr, ptr %5, align 8, !tbaa !5
  %14139 = getelementptr inbounds %struct.w2c_hermes, ptr %14138, i32 0, i32 6
  %14140 = load i32, ptr %48, align 4, !tbaa !9
  %14141 = zext i32 %14140 to i64
  %14142 = add i64 %14141, 40
  %14143 = call i32 @i32_load(ptr noundef %14139, i64 noundef %14142)
  store i32 %14143, ptr %48, align 4, !tbaa !9
  %14144 = load ptr, ptr %5, align 8, !tbaa !5
  %14145 = getelementptr inbounds %struct.w2c_hermes, ptr %14144, i32 0, i32 6
  %14146 = load i32, ptr %48, align 4, !tbaa !9
  %14147 = zext i32 %14146 to i64
  %14148 = add i64 %14147, 60
  %14149 = call i32 @i32_load(ptr noundef %14145, i64 noundef %14148)
  store i32 %14149, ptr %48, align 4, !tbaa !9
  %14150 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14150, ptr %7, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %14151 = load ptr, ptr %5, align 8, !tbaa !5
  %14152 = getelementptr inbounds %struct.w2c_hermes, ptr %14151, i32 0, i32 6
  %14153 = load i32, ptr %48, align 4, !tbaa !9
  %14154 = zext i32 %14153 to i64
  %14155 = add i64 %14154, 136
  %14156 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14152, i64 noundef %14155, i32 noundef %14156)
  %14157 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14157, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %14158 = load ptr, ptr %5, align 8, !tbaa !5
  %14159 = getelementptr inbounds %struct.w2c_hermes, ptr %14158, i32 0, i32 6
  %14160 = load i32, ptr %48, align 4, !tbaa !9
  %14161 = zext i32 %14160 to i64
  %14162 = add i64 %14161, 140
  %14163 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %14159, i64 noundef %14162, i32 noundef %14163)
  %14164 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14164, ptr %48, align 4, !tbaa !9
  %14165 = load ptr, ptr %5, align 8, !tbaa !5
  %14166 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3A0x7EFunctionContext0x280x29(ptr noundef %14165, i32 noundef %14166)
  %14167 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14167, ptr %48, align 4, !tbaa !9
  %14168 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14168, ptr %49, align 4, !tbaa !9
  %14169 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14169, ptr %50, align 4, !tbaa !9
  %14170 = load ptr, ptr %5, align 8, !tbaa !5
  %14171 = getelementptr inbounds %struct.w2c_hermes, ptr %14170, i32 0, i32 6
  %14172 = load i32, ptr %50, align 4, !tbaa !9
  %14173 = zext i32 %14172 to i64
  %14174 = add i64 %14173, 88
  %14175 = call i32 @i32_load(ptr noundef %14171, i64 noundef %14174)
  store i32 %14175, ptr %50, align 4, !tbaa !9
  %14176 = load ptr, ptr %5, align 8, !tbaa !5
  %14177 = load i32, ptr %48, align 4, !tbaa !9
  %14178 = load i32, ptr %49, align 4, !tbaa !9
  %14179 = load i32, ptr %50, align 4, !tbaa !9
  %14180 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCreateFunctionInst0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef %14176, i32 noundef %14177, i32 noundef %14178, i32 noundef %14179)
  store i32 %14180, ptr %48, align 4, !tbaa !9
  %14181 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14181, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %14182 = load i32, ptr %49, align 4, !tbaa !9
  %14183 = load i32, ptr %48, align 4, !tbaa !9
  %14184 = add i32 %14183, %14182
  store i32 %14184, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %14185 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14185, ptr %50, align 4, !tbaa !9
  %14186 = load i32, ptr %50, align 4, !tbaa !9
  %14187 = icmp ne i32 %14186, 0
  br i1 %14187, label %14188, label %14190

14188:                                            ; preds = %14136
  %14189 = load i32, ptr %48, align 4, !tbaa !9
  br label %14192

14190:                                            ; preds = %14136
  %14191 = load i32, ptr %49, align 4, !tbaa !9
  br label %14192

14192:                                            ; preds = %14190, %14188
  %14193 = phi i32 [ %14189, %14188 ], [ %14191, %14190 ]
  store i32 %14193, ptr %48, align 4, !tbaa !9
  br label %14194

14194:                                            ; preds = %14192, %13558
  %14195 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14195, ptr %7, align 4, !tbaa !9
  %14196 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14196, ptr %48, align 4, !tbaa !9
  store i32 288, ptr %49, align 4, !tbaa !9
  %14197 = load i32, ptr %49, align 4, !tbaa !9
  %14198 = load i32, ptr %48, align 4, !tbaa !9
  %14199 = add i32 %14198, %14197
  store i32 %14199, ptr %48, align 4, !tbaa !9
  %14200 = load i32, ptr %48, align 4, !tbaa !9
  %14201 = load ptr, ptr %5, align 8, !tbaa !5
  %14202 = getelementptr inbounds %struct.w2c_hermes, ptr %14201, i32 0, i32 3
  store i32 %14200, ptr %14202, align 8, !tbaa !15
  %14203 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14203, ptr %48, align 4, !tbaa !9
  br label %22463

14204:                                            ; preds = %13532, %13523
  %14205 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14205, ptr %48, align 4, !tbaa !9
  %14206 = load i32, ptr %48, align 4, !tbaa !9
  %14207 = icmp ne i32 %14206, 0
  %14208 = xor i1 %14207, true
  %14209 = zext i1 %14208 to i32
  store i32 %14209, ptr %48, align 4, !tbaa !9
  %14210 = load i32, ptr %48, align 4, !tbaa !9
  %14211 = icmp ne i32 %14210, 0
  br i1 %14211, label %14212, label %14213

14212:                                            ; preds = %14204
  br label %14633

14213:                                            ; preds = %14204
  %14214 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14214, ptr %48, align 4, !tbaa !9
  store i32 52, ptr %49, align 4, !tbaa !9
  %14215 = load i32, ptr %48, align 4, !tbaa !9
  %14216 = load i32, ptr %49, align 4, !tbaa !9
  %14217 = icmp ne i32 %14215, %14216
  %14218 = zext i1 %14217 to i32
  store i32 %14218, ptr %48, align 4, !tbaa !9
  %14219 = load i32, ptr %48, align 4, !tbaa !9
  %14220 = icmp ne i32 %14219, 0
  br i1 %14220, label %14221, label %14222

14221:                                            ; preds = %14213
  br label %14633

14222:                                            ; preds = %14213
  %14223 = load ptr, ptr %5, align 8, !tbaa !5
  %14224 = getelementptr inbounds %struct.w2c_hermes, ptr %14223, i32 0, i32 3
  %14225 = load i32, ptr %14224, align 8, !tbaa !15
  store i32 %14225, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %14226 = load i32, ptr %49, align 4, !tbaa !9
  %14227 = load i32, ptr %48, align 4, !tbaa !9
  %14228 = sub i32 %14227, %14226
  store i32 %14228, ptr %48, align 4, !tbaa !9
  %14229 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14229, ptr %11, align 4, !tbaa !9
  %14230 = load i32, ptr %48, align 4, !tbaa !9
  %14231 = load ptr, ptr %5, align 8, !tbaa !5
  %14232 = getelementptr inbounds %struct.w2c_hermes, ptr %14231, i32 0, i32 3
  store i32 %14230, ptr %14232, align 8, !tbaa !15
  %14233 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14233, ptr %48, align 4, !tbaa !9
  %14234 = load ptr, ptr %5, align 8, !tbaa !5
  %14235 = getelementptr inbounds %struct.w2c_hermes, ptr %14234, i32 0, i32 6
  %14236 = load i32, ptr %48, align 4, !tbaa !9
  %14237 = zext i32 %14236 to i64
  %14238 = add i64 %14237, 36
  %14239 = call i32 @i32_load8_u(ptr noundef %14235, i64 noundef %14238)
  store i32 %14239, ptr %48, align 4, !tbaa !9
  %14240 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14240, ptr %12, align 4, !tbaa !9
  %14241 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14241, ptr %48, align 4, !tbaa !9
  %14242 = load ptr, ptr %5, align 8, !tbaa !5
  %14243 = getelementptr inbounds %struct.w2c_hermes, ptr %14242, i32 0, i32 6
  %14244 = load i32, ptr %48, align 4, !tbaa !9
  %14245 = zext i32 %14244 to i64
  %14246 = add i64 %14245, 28
  %14247 = call i32 @i32_load(ptr noundef %14243, i64 noundef %14246)
  store i32 %14247, ptr %48, align 4, !tbaa !9
  %14248 = load ptr, ptr %5, align 8, !tbaa !5
  %14249 = getelementptr inbounds %struct.w2c_hermes, ptr %14248, i32 0, i32 6
  %14250 = load i32, ptr %48, align 4, !tbaa !9
  %14251 = zext i32 %14250 to i64
  %14252 = call i64 @i64_load(ptr noundef %14249, i64 noundef %14251)
  store i64 %14252, ptr %58, align 8, !tbaa !11
  %14253 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %14253, ptr %31, align 8, !tbaa !11
  store i64 -4294967296, ptr %59, align 8, !tbaa !11
  %14254 = load i64, ptr %59, align 8, !tbaa !11
  %14255 = load i64, ptr %58, align 8, !tbaa !11
  %14256 = and i64 %14255, %14254
  store i64 %14256, ptr %58, align 8, !tbaa !11
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %14257 = load i64, ptr %58, align 8, !tbaa !11
  %14258 = load i64, ptr %59, align 8, !tbaa !11
  %14259 = icmp ne i64 %14257, %14258
  %14260 = zext i1 %14259 to i32
  store i32 %14260, ptr %48, align 4, !tbaa !9
  %14261 = load i32, ptr %48, align 4, !tbaa !9
  %14262 = icmp ne i32 %14261, 0
  br i1 %14262, label %14263, label %14264

14263:                                            ; preds = %14222
  br label %14281

14264:                                            ; preds = %14222
  %14265 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %14265, ptr %58, align 8, !tbaa !11
  %14266 = load i64, ptr %58, align 8, !tbaa !11
  %14267 = trunc i64 %14266 to i32
  store i32 %14267, ptr %48, align 4, !tbaa !9
  %14268 = load ptr, ptr %5, align 8, !tbaa !5
  %14269 = getelementptr inbounds %struct.w2c_hermes, ptr %14268, i32 0, i32 6
  %14270 = load i32, ptr %48, align 4, !tbaa !9
  %14271 = zext i32 %14270 to i64
  %14272 = call i32 @i32_load16_u(ptr noundef %14269, i64 noundef %14271)
  store i32 %14272, ptr %48, align 4, !tbaa !9
  store i32 11051, ptr %49, align 4, !tbaa !9
  %14273 = load i32, ptr %48, align 4, !tbaa !9
  %14274 = load i32, ptr %49, align 4, !tbaa !9
  %14275 = icmp ne i32 %14273, %14274
  %14276 = zext i1 %14275 to i32
  store i32 %14276, ptr %48, align 4, !tbaa !9
  %14277 = load i32, ptr %48, align 4, !tbaa !9
  %14278 = icmp ne i32 %14277, 0
  br i1 %14278, label %14279, label %14280

14279:                                            ; preds = %14264
  br label %14281

14280:                                            ; preds = %14264
  store i32 7, ptr %48, align 4, !tbaa !9
  br label %14282

14281:                                            ; preds = %14279, %14263
  store i32 8, ptr %48, align 4, !tbaa !9
  br label %14282

14282:                                            ; preds = %14281, %14280
  %14283 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14283, ptr %15, align 4, !tbaa !9
  %14284 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14284, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %14285 = load i32, ptr %49, align 4, !tbaa !9
  %14286 = load i32, ptr %48, align 4, !tbaa !9
  %14287 = add i32 %14286, %14285
  store i32 %14287, ptr %48, align 4, !tbaa !9
  %14288 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14288, ptr %8, align 4, !tbaa !9
  %14289 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14289, ptr %49, align 4, !tbaa !9
  %14290 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14290, ptr %50, align 4, !tbaa !9
  %14291 = load ptr, ptr %5, align 8, !tbaa !5
  %14292 = getelementptr inbounds %struct.w2c_hermes, ptr %14291, i32 0, i32 6
  %14293 = load i32, ptr %50, align 4, !tbaa !9
  %14294 = zext i32 %14293 to i64
  %14295 = add i64 %14294, 32
  %14296 = call i32 @i32_load(ptr noundef %14292, i64 noundef %14295)
  store i32 %14296, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %14297 = load ptr, ptr %5, align 8, !tbaa !5
  %14298 = load i32, ptr %48, align 4, !tbaa !9
  %14299 = load i32, ptr %49, align 4, !tbaa !9
  %14300 = load i32, ptr %50, align 4, !tbaa !9
  %14301 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AcreateLRef0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20bool0x29(ptr noundef %14297, i32 noundef %14298, i32 noundef %14299, i32 noundef %14300, i32 noundef %14301)
  %14302 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14302, ptr %48, align 4, !tbaa !9
  %14303 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14303, ptr %49, align 4, !tbaa !9
  store i32 4, ptr %50, align 4, !tbaa !9
  %14304 = load i32, ptr %50, align 4, !tbaa !9
  %14305 = load i32, ptr %49, align 4, !tbaa !9
  %14306 = add i32 %14305, %14304
  store i32 %14306, ptr %49, align 4, !tbaa !9
  %14307 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14307, ptr %50, align 4, !tbaa !9
  %14308 = load i32, ptr %50, align 4, !tbaa !9
  %14309 = icmp ne i32 %14308, 0
  br i1 %14309, label %14310, label %14318

14310:                                            ; preds = %14282
  %14311 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14311, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %14312 = load i32, ptr %51, align 4, !tbaa !9
  %14313 = load i32, ptr %50, align 4, !tbaa !9
  %14314 = add i32 %14313, %14312
  store i32 %14314, ptr %50, align 4, !tbaa !9
  %14315 = load ptr, ptr %5, align 8, !tbaa !5
  %14316 = load i32, ptr %50, align 4, !tbaa !9
  %14317 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitLoad0x280x29(ptr noundef %14315, i32 noundef %14316)
  store i32 %14317, ptr %50, align 4, !tbaa !9
  br label %14590

14318:                                            ; preds = %14282
  %14319 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14319, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %14320 = load i32, ptr %51, align 4, !tbaa !9
  %14321 = load i32, ptr %50, align 4, !tbaa !9
  %14322 = add i32 %14321, %14320
  store i32 %14322, ptr %50, align 4, !tbaa !9
  %14323 = load ptr, ptr %5, align 8, !tbaa !5
  %14324 = load i32, ptr %50, align 4, !tbaa !9
  %14325 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitLoad0x280x29(ptr noundef %14323, i32 noundef %14324)
  store i32 %14325, ptr %50, align 4, !tbaa !9
  %14326 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14326, ptr %7, align 4, !tbaa !9
  store i32 80, ptr %50, align 4, !tbaa !9
  %14327 = load ptr, ptr %5, align 8, !tbaa !5
  %14328 = load i32, ptr %50, align 4, !tbaa !9
  %14329 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %14327, i32 noundef %14328)
  store i32 %14329, ptr %50, align 4, !tbaa !9
  %14330 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14330, ptr %9, align 4, !tbaa !9
  store i64 8589934592, ptr %61, align 8, !tbaa !11
  %14331 = load ptr, ptr %5, align 8, !tbaa !5
  %14332 = getelementptr inbounds %struct.w2c_hermes, ptr %14331, i32 0, i32 6
  %14333 = load i32, ptr %50, align 4, !tbaa !9
  %14334 = zext i32 %14333 to i64
  %14335 = add i64 %14334, 20
  %14336 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14332, i64 noundef %14335, i64 noundef %14336)
  %14337 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14337, ptr %50, align 4, !tbaa !9
  store i32 459775, ptr %51, align 4, !tbaa !9
  %14338 = load ptr, ptr %5, align 8, !tbaa !5
  %14339 = getelementptr inbounds %struct.w2c_hermes, ptr %14338, i32 0, i32 6
  %14340 = load i32, ptr %50, align 4, !tbaa !9
  %14341 = zext i32 %14340 to i64
  %14342 = add i64 %14341, 10
  %14343 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14339, i64 noundef %14342, i32 noundef %14343)
  %14344 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14344, ptr %50, align 4, !tbaa !9
  store i64 0, ptr %61, align 8, !tbaa !11
  %14345 = load ptr, ptr %5, align 8, !tbaa !5
  %14346 = getelementptr inbounds %struct.w2c_hermes, ptr %14345, i32 0, i32 6
  %14347 = load i32, ptr %50, align 4, !tbaa !9
  %14348 = zext i32 %14347 to i64
  %14349 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14346, i64 noundef %14348, i64 noundef %14349)
  %14350 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14350, ptr %50, align 4, !tbaa !9
  store i64 0, ptr %61, align 8, !tbaa !11
  %14351 = load ptr, ptr %5, align 8, !tbaa !5
  %14352 = getelementptr inbounds %struct.w2c_hermes, ptr %14351, i32 0, i32 6
  %14353 = load i32, ptr %50, align 4, !tbaa !9
  %14354 = zext i32 %14353 to i64
  %14355 = add i64 %14354, 68
  %14356 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14352, i64 noundef %14355, i64 noundef %14356)
  %14357 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14357, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %14358 = load ptr, ptr %5, align 8, !tbaa !5
  %14359 = getelementptr inbounds %struct.w2c_hermes, ptr %14358, i32 0, i32 6
  %14360 = load i32, ptr %50, align 4, !tbaa !9
  %14361 = zext i32 %14360 to i64
  %14362 = add i64 %14361, 36
  %14363 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14359, i64 noundef %14362, i32 noundef %14363)
  %14364 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14364, ptr %50, align 4, !tbaa !9
  store i32 20, ptr %51, align 4, !tbaa !9
  %14365 = load ptr, ptr %5, align 8, !tbaa !5
  %14366 = getelementptr inbounds %struct.w2c_hermes, ptr %14365, i32 0, i32 6
  %14367 = load i32, ptr %50, align 4, !tbaa !9
  %14368 = zext i32 %14367 to i64
  %14369 = add i64 %14368, 8
  %14370 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %14366, i64 noundef %14369, i32 noundef %14370)
  %14371 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14371, ptr %50, align 4, !tbaa !9
  %14372 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14372, ptr %51, align 4, !tbaa !9
  store i32 28, ptr %52, align 4, !tbaa !9
  %14373 = load i32, ptr %52, align 4, !tbaa !9
  %14374 = load i32, ptr %51, align 4, !tbaa !9
  %14375 = add i32 %14374, %14373
  store i32 %14375, ptr %51, align 4, !tbaa !9
  %14376 = load ptr, ptr %5, align 8, !tbaa !5
  %14377 = getelementptr inbounds %struct.w2c_hermes, ptr %14376, i32 0, i32 6
  %14378 = load i32, ptr %50, align 4, !tbaa !9
  %14379 = zext i32 %14378 to i64
  %14380 = add i64 %14379, 16
  %14381 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14377, i64 noundef %14380, i32 noundef %14381)
  %14382 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14382, ptr %50, align 4, !tbaa !9
  store i64 8589934592, ptr %61, align 8, !tbaa !11
  %14383 = load ptr, ptr %5, align 8, !tbaa !5
  %14384 = getelementptr inbounds %struct.w2c_hermes, ptr %14383, i32 0, i32 6
  %14385 = load i32, ptr %50, align 4, !tbaa !9
  %14386 = zext i32 %14385 to i64
  %14387 = add i64 %14386, 44
  %14388 = load i64, ptr %61, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14384, i64 noundef %14387, i64 noundef %14388)
  %14389 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14389, ptr %50, align 4, !tbaa !9
  %14390 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14390, ptr %51, align 4, !tbaa !9
  store i32 52, ptr %52, align 4, !tbaa !9
  %14391 = load i32, ptr %52, align 4, !tbaa !9
  %14392 = load i32, ptr %51, align 4, !tbaa !9
  %14393 = add i32 %14392, %14391
  store i32 %14393, ptr %51, align 4, !tbaa !9
  %14394 = load ptr, ptr %5, align 8, !tbaa !5
  %14395 = getelementptr inbounds %struct.w2c_hermes, ptr %14394, i32 0, i32 6
  %14396 = load i32, ptr %50, align 4, !tbaa !9
  %14397 = zext i32 %14396 to i64
  %14398 = add i64 %14397, 40
  %14399 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14395, i64 noundef %14398, i32 noundef %14399)
  %14400 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14400, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %14401 = load ptr, ptr %5, align 8, !tbaa !5
  %14402 = getelementptr inbounds %struct.w2c_hermes, ptr %14401, i32 0, i32 6
  %14403 = load i32, ptr %50, align 4, !tbaa !9
  %14404 = zext i32 %14403 to i64
  %14405 = add i64 %14404, 76
  %14406 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14402, i64 noundef %14405, i32 noundef %14406)
  %14407 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14407, ptr %50, align 4, !tbaa !9
  %14408 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14408, ptr %51, align 4, !tbaa !9
  %14409 = load ptr, ptr %5, align 8, !tbaa !5
  %14410 = load i32, ptr %50, align 4, !tbaa !9
  %14411 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %14409, i32 noundef %14410, i32 noundef %14411)
  %14412 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14412, ptr %50, align 4, !tbaa !9
  store i32 458848, ptr %51, align 4, !tbaa !9
  %14413 = load ptr, ptr %5, align 8, !tbaa !5
  %14414 = getelementptr inbounds %struct.w2c_hermes, ptr %14413, i32 0, i32 6
  %14415 = load i32, ptr %50, align 4, !tbaa !9
  %14416 = zext i32 %14415 to i64
  %14417 = add i64 %14416, 10
  %14418 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14414, i64 noundef %14417, i32 noundef %14418)
  %14419 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14419, ptr %50, align 4, !tbaa !9
  %14420 = load ptr, ptr %5, align 8, !tbaa !5
  %14421 = getelementptr inbounds %struct.w2c_hermes, ptr %14420, i32 0, i32 6
  %14422 = load i32, ptr %50, align 4, !tbaa !9
  %14423 = zext i32 %14422 to i64
  %14424 = add i64 %14423, 12
  %14425 = call i32 @i32_load(ptr noundef %14421, i64 noundef %14424)
  store i32 %14425, ptr %50, align 4, !tbaa !9
  %14426 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14426, ptr %14, align 4, !tbaa !9
  %14427 = load ptr, ptr %5, align 8, !tbaa !5
  %14428 = getelementptr inbounds %struct.w2c_hermes, ptr %14427, i32 0, i32 6
  %14429 = load i32, ptr %50, align 4, !tbaa !9
  %14430 = zext i32 %14429 to i64
  %14431 = add i64 %14430, 44
  %14432 = call i32 @i32_load(ptr noundef %14428, i64 noundef %14431)
  store i32 %14432, ptr %50, align 4, !tbaa !9
  %14433 = load ptr, ptr %5, align 8, !tbaa !5
  %14434 = getelementptr inbounds %struct.w2c_hermes, ptr %14433, i32 0, i32 6
  %14435 = load i32, ptr %50, align 4, !tbaa !9
  %14436 = zext i32 %14435 to i64
  %14437 = add i64 %14436, 136
  %14438 = call i64 @i64_load(ptr noundef %14434, i64 noundef %14437)
  store i64 %14438, ptr %60, align 8, !tbaa !11
  %14439 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %14439, ptr %31, align 8, !tbaa !11
  store i64 1095216660480, ptr %61, align 8, !tbaa !11
  %14440 = load i64, ptr %61, align 8, !tbaa !11
  %14441 = load i64, ptr %60, align 8, !tbaa !11
  %14442 = and i64 %14441, %14440
  store i64 %14442, ptr %60, align 8, !tbaa !11
  store i64 0, ptr %61, align 8, !tbaa !11
  %14443 = load i64, ptr %60, align 8, !tbaa !11
  %14444 = load i64, ptr %61, align 8, !tbaa !11
  %14445 = icmp ne i64 %14443, %14444
  %14446 = zext i1 %14445 to i32
  store i32 %14446, ptr %50, align 4, !tbaa !9
  %14447 = load i32, ptr %50, align 4, !tbaa !9
  %14448 = icmp ne i32 %14447, 0
  br i1 %14448, label %14449, label %14462

14449:                                            ; preds = %14318
  %14450 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14450, ptr %50, align 4, !tbaa !9
  %14451 = load ptr, ptr %5, align 8, !tbaa !5
  %14452 = getelementptr inbounds %struct.w2c_hermes, ptr %14451, i32 0, i32 6
  %14453 = load i32, ptr %50, align 4, !tbaa !9
  %14454 = zext i32 %14453 to i64
  %14455 = add i64 %14454, 8
  %14456 = call i32 @i32_load(ptr noundef %14452, i64 noundef %14455)
  store i32 %14456, ptr %50, align 4, !tbaa !9
  %14457 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14457, ptr %7, align 4, !tbaa !9
  %14458 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %14458, ptr %60, align 8, !tbaa !11
  %14459 = load i64, ptr %60, align 8, !tbaa !11
  %14460 = trunc i64 %14459 to i32
  store i32 %14460, ptr %50, align 4, !tbaa !9
  %14461 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14461, ptr %10, align 4, !tbaa !9
  br label %14494

14462:                                            ; preds = %14318
  %14463 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14463, ptr %50, align 4, !tbaa !9
  %14464 = load ptr, ptr %5, align 8, !tbaa !5
  %14465 = getelementptr inbounds %struct.w2c_hermes, ptr %14464, i32 0, i32 6
  %14466 = load i32, ptr %50, align 4, !tbaa !9
  %14467 = zext i32 %14466 to i64
  %14468 = add i64 %14467, 8
  %14469 = call i32 @i32_load(ptr noundef %14465, i64 noundef %14468)
  store i32 %14469, ptr %50, align 4, !tbaa !9
  %14470 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14470, ptr %8, align 4, !tbaa !9
  %14471 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14471, ptr %51, align 4, !tbaa !9
  store i32 36, ptr %52, align 4, !tbaa !9
  %14472 = load i32, ptr %52, align 4, !tbaa !9
  %14473 = load i32, ptr %51, align 4, !tbaa !9
  %14474 = add i32 %14473, %14472
  store i32 %14474, ptr %51, align 4, !tbaa !9
  %14475 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %14475, ptr %7, align 4, !tbaa !9
  %14476 = load i32, ptr %50, align 4, !tbaa !9
  %14477 = load i32, ptr %51, align 4, !tbaa !9
  %14478 = icmp eq i32 %14476, %14477
  %14479 = zext i1 %14478 to i32
  store i32 %14479, ptr %50, align 4, !tbaa !9
  %14480 = load i32, ptr %50, align 4, !tbaa !9
  %14481 = icmp ne i32 %14480, 0
  br i1 %14481, label %14482, label %14483

14482:                                            ; preds = %14462
  br label %14494

14483:                                            ; preds = %14462
  %14484 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14484, ptr %50, align 4, !tbaa !9
  %14485 = load ptr, ptr %5, align 8, !tbaa !5
  %14486 = getelementptr inbounds %struct.w2c_hermes, ptr %14485, i32 0, i32 6
  %14487 = load i32, ptr %50, align 4, !tbaa !9
  %14488 = zext i32 %14487 to i64
  %14489 = add i64 %14488, 76
  %14490 = call i32 @i32_load(ptr noundef %14486, i64 noundef %14489)
  store i32 %14490, ptr %50, align 4, !tbaa !9
  %14491 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14491, ptr %10, align 4, !tbaa !9
  %14492 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14492, ptr %50, align 4, !tbaa !9
  %14493 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14493, ptr %7, align 4, !tbaa !9
  br label %14494

14494:                                            ; preds = %14483, %14482, %14449
  %14495 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14495, ptr %50, align 4, !tbaa !9
  %14496 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14496, ptr %51, align 4, !tbaa !9
  %14497 = load ptr, ptr %5, align 8, !tbaa !5
  %14498 = getelementptr inbounds %struct.w2c_hermes, ptr %14497, i32 0, i32 6
  %14499 = load i32, ptr %50, align 4, !tbaa !9
  %14500 = zext i32 %14499 to i64
  %14501 = add i64 %14500, 76
  %14502 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14498, i64 noundef %14501, i32 noundef %14502)
  %14503 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14503, ptr %50, align 4, !tbaa !9
  %14504 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14504, ptr %51, align 4, !tbaa !9
  %14505 = load ptr, ptr %5, align 8, !tbaa !5
  %14506 = getelementptr inbounds %struct.w2c_hermes, ptr %14505, i32 0, i32 6
  %14507 = load i32, ptr %51, align 4, !tbaa !9
  %14508 = zext i32 %14507 to i64
  %14509 = add i64 %14508, 16
  %14510 = call i32 @i32_load(ptr noundef %14506, i64 noundef %14509)
  store i32 %14510, ptr %51, align 4, !tbaa !9
  %14511 = load ptr, ptr %5, align 8, !tbaa !5
  %14512 = getelementptr inbounds %struct.w2c_hermes, ptr %14511, i32 0, i32 6
  %14513 = load i32, ptr %50, align 4, !tbaa !9
  %14514 = zext i32 %14513 to i64
  %14515 = add i64 %14514, 72
  %14516 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14512, i64 noundef %14515, i32 noundef %14516)
  %14517 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14517, ptr %50, align 4, !tbaa !9
  %14518 = load ptr, ptr %5, align 8, !tbaa !5
  %14519 = getelementptr inbounds %struct.w2c_hermes, ptr %14518, i32 0, i32 6
  %14520 = load i32, ptr %50, align 4, !tbaa !9
  %14521 = zext i32 %14520 to i64
  %14522 = add i64 %14521, 20
  %14523 = call i32 @i32_load(ptr noundef %14519, i64 noundef %14522)
  store i32 %14523, ptr %50, align 4, !tbaa !9
  %14524 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14524, ptr %8, align 4, !tbaa !9
  %14525 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14525, ptr %50, align 4, !tbaa !9
  %14526 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14526, ptr %51, align 4, !tbaa !9
  %14527 = load ptr, ptr %5, align 8, !tbaa !5
  %14528 = getelementptr inbounds %struct.w2c_hermes, ptr %14527, i32 0, i32 6
  %14529 = load i32, ptr %50, align 4, !tbaa !9
  %14530 = zext i32 %14529 to i64
  %14531 = add i64 %14530, 36
  %14532 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14528, i64 noundef %14531, i32 noundef %14532)
  %14533 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14533, ptr %50, align 4, !tbaa !9
  %14534 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14534, ptr %51, align 4, !tbaa !9
  %14535 = load ptr, ptr %5, align 8, !tbaa !5
  %14536 = getelementptr inbounds %struct.w2c_hermes, ptr %14535, i32 0, i32 6
  %14537 = load i32, ptr %50, align 4, !tbaa !9
  %14538 = zext i32 %14537 to i64
  %14539 = add i64 %14538, 68
  %14540 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14536, i64 noundef %14539, i32 noundef %14540)
  %14541 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14541, ptr %50, align 4, !tbaa !9
  %14542 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14542, ptr %51, align 4, !tbaa !9
  %14543 = load ptr, ptr %5, align 8, !tbaa !5
  %14544 = getelementptr inbounds %struct.w2c_hermes, ptr %14543, i32 0, i32 6
  %14545 = load i32, ptr %51, align 4, !tbaa !9
  %14546 = zext i32 %14545 to i64
  %14547 = call i32 @i32_load(ptr noundef %14544, i64 noundef %14546)
  store i32 %14547, ptr %51, align 4, !tbaa !9
  %14548 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %14548, ptr %8, align 4, !tbaa !9
  %14549 = load ptr, ptr %5, align 8, !tbaa !5
  %14550 = getelementptr inbounds %struct.w2c_hermes, ptr %14549, i32 0, i32 6
  %14551 = load i32, ptr %50, align 4, !tbaa !9
  %14552 = zext i32 %14551 to i64
  %14553 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14550, i64 noundef %14552, i32 noundef %14553)
  %14554 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14554, ptr %50, align 4, !tbaa !9
  %14555 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14555, ptr %51, align 4, !tbaa !9
  %14556 = load ptr, ptr %5, align 8, !tbaa !5
  %14557 = getelementptr inbounds %struct.w2c_hermes, ptr %14556, i32 0, i32 6
  %14558 = load i32, ptr %50, align 4, !tbaa !9
  %14559 = zext i32 %14558 to i64
  %14560 = add i64 %14559, 4
  %14561 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14557, i64 noundef %14560, i32 noundef %14561)
  %14562 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14562, ptr %50, align 4, !tbaa !9
  %14563 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14563, ptr %51, align 4, !tbaa !9
  %14564 = load ptr, ptr %5, align 8, !tbaa !5
  %14565 = getelementptr inbounds %struct.w2c_hermes, ptr %14564, i32 0, i32 6
  %14566 = load i32, ptr %50, align 4, !tbaa !9
  %14567 = zext i32 %14566 to i64
  %14568 = add i64 %14567, 4
  %14569 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14565, i64 noundef %14568, i32 noundef %14569)
  %14570 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14570, ptr %50, align 4, !tbaa !9
  %14571 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14571, ptr %51, align 4, !tbaa !9
  %14572 = load ptr, ptr %5, align 8, !tbaa !5
  %14573 = getelementptr inbounds %struct.w2c_hermes, ptr %14572, i32 0, i32 6
  %14574 = load i32, ptr %50, align 4, !tbaa !9
  %14575 = zext i32 %14574 to i64
  %14576 = load i32, ptr %51, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14573, i64 noundef %14575, i32 noundef %14576)
  %14577 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14577, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %14578 = load i32, ptr %51, align 4, !tbaa !9
  %14579 = load i32, ptr %50, align 4, !tbaa !9
  %14580 = add i32 %14579, %14578
  store i32 %14580, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %14581 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14581, ptr %52, align 4, !tbaa !9
  %14582 = load i32, ptr %52, align 4, !tbaa !9
  %14583 = icmp ne i32 %14582, 0
  br i1 %14583, label %14584, label %14586

14584:                                            ; preds = %14494
  %14585 = load i32, ptr %50, align 4, !tbaa !9
  br label %14588

14586:                                            ; preds = %14494
  %14587 = load i32, ptr %51, align 4, !tbaa !9
  br label %14588

14588:                                            ; preds = %14586, %14584
  %14589 = phi i32 [ %14585, %14584 ], [ %14587, %14586 ]
  store i32 %14589, ptr %50, align 4, !tbaa !9
  br label %14590

14590:                                            ; preds = %14588, %14310
  %14591 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %14591, ptr %7, align 4, !tbaa !9
  %14592 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %14592, ptr %51, align 4, !tbaa !9
  %14593 = load ptr, ptr %5, align 8, !tbaa !5
  %14594 = load i32, ptr %49, align 4, !tbaa !9
  %14595 = load i32, ptr %50, align 4, !tbaa !9
  %14596 = load i32, ptr %51, align 4, !tbaa !9
  %14597 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateUnaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AUnaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %14593, i32 noundef %14594, i32 noundef %14595, i32 noundef %14596)
  store i32 %14597, ptr %49, align 4, !tbaa !9
  %14598 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %14598, ptr %8, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %14599 = load i32, ptr %50, align 4, !tbaa !9
  %14600 = load i32, ptr %49, align 4, !tbaa !9
  %14601 = add i32 %14600, %14599
  store i32 %14601, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %14602 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14602, ptr %51, align 4, !tbaa !9
  %14603 = load i32, ptr %51, align 4, !tbaa !9
  %14604 = icmp ne i32 %14603, 0
  br i1 %14604, label %14605, label %14607

14605:                                            ; preds = %14590
  %14606 = load i32, ptr %49, align 4, !tbaa !9
  br label %14609

14607:                                            ; preds = %14590
  %14608 = load i32, ptr %50, align 4, !tbaa !9
  br label %14609

14609:                                            ; preds = %14607, %14605
  %14610 = phi i32 [ %14606, %14605 ], [ %14608, %14607 ]
  store i32 %14610, ptr %49, align 4, !tbaa !9
  %14611 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %14611, ptr %8, align 4, !tbaa !9
  %14612 = load ptr, ptr %5, align 8, !tbaa !5
  %14613 = load i32, ptr %48, align 4, !tbaa !9
  %14614 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %14612, i32 noundef %14613, i32 noundef %14614)
  %14615 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14615, ptr %48, align 4, !tbaa !9
  store i32 32, ptr %49, align 4, !tbaa !9
  %14616 = load i32, ptr %49, align 4, !tbaa !9
  %14617 = load i32, ptr %48, align 4, !tbaa !9
  %14618 = add i32 %14617, %14616
  store i32 %14618, ptr %48, align 4, !tbaa !9
  %14619 = load i32, ptr %48, align 4, !tbaa !9
  %14620 = load ptr, ptr %5, align 8, !tbaa !5
  %14621 = getelementptr inbounds %struct.w2c_hermes, ptr %14620, i32 0, i32 3
  store i32 %14619, ptr %14621, align 8, !tbaa !15
  %14622 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14622, ptr %48, align 4, !tbaa !9
  %14623 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14623, ptr %49, align 4, !tbaa !9
  %14624 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14624, ptr %50, align 4, !tbaa !9
  %14625 = load i32, ptr %50, align 4, !tbaa !9
  %14626 = icmp ne i32 %14625, 0
  br i1 %14626, label %14627, label %14629

14627:                                            ; preds = %14609
  %14628 = load i32, ptr %48, align 4, !tbaa !9
  br label %14631

14629:                                            ; preds = %14609
  %14630 = load i32, ptr %49, align 4, !tbaa !9
  br label %14631

14631:                                            ; preds = %14629, %14627
  %14632 = phi i32 [ %14628, %14627 ], [ %14630, %14629 ]
  store i32 %14632, ptr %48, align 4, !tbaa !9
  br label %22463

14633:                                            ; preds = %14221, %14212
  %14634 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14634, ptr %48, align 4, !tbaa !9
  %14635 = load i32, ptr %48, align 4, !tbaa !9
  %14636 = icmp ne i32 %14635, 0
  %14637 = xor i1 %14636, true
  %14638 = zext i1 %14637 to i32
  store i32 %14638, ptr %48, align 4, !tbaa !9
  %14639 = load i32, ptr %48, align 4, !tbaa !9
  %14640 = icmp ne i32 %14639, 0
  br i1 %14640, label %14641, label %14642

14641:                                            ; preds = %14633
  br label %15286

14642:                                            ; preds = %14633
  %14643 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14643, ptr %48, align 4, !tbaa !9
  store i32 58, ptr %49, align 4, !tbaa !9
  %14644 = load i32, ptr %48, align 4, !tbaa !9
  %14645 = load i32, ptr %49, align 4, !tbaa !9
  %14646 = icmp ne i32 %14644, %14645
  %14647 = zext i1 %14646 to i32
  store i32 %14647, ptr %48, align 4, !tbaa !9
  %14648 = load i32, ptr %48, align 4, !tbaa !9
  %14649 = icmp ne i32 %14648, 0
  br i1 %14649, label %14650, label %14651

14650:                                            ; preds = %14642
  br label %15286

14651:                                            ; preds = %14642
  %14652 = load ptr, ptr %5, align 8, !tbaa !5
  %14653 = getelementptr inbounds %struct.w2c_hermes, ptr %14652, i32 0, i32 3
  %14654 = load i32, ptr %14653, align 8, !tbaa !15
  store i32 %14654, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %14655 = load i32, ptr %49, align 4, !tbaa !9
  %14656 = load i32, ptr %48, align 4, !tbaa !9
  %14657 = sub i32 %14656, %14655
  store i32 %14657, ptr %48, align 4, !tbaa !9
  %14658 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14658, ptr %8, align 4, !tbaa !9
  %14659 = load i32, ptr %48, align 4, !tbaa !9
  %14660 = load ptr, ptr %5, align 8, !tbaa !5
  %14661 = getelementptr inbounds %struct.w2c_hermes, ptr %14660, i32 0, i32 3
  store i32 %14659, ptr %14661, align 8, !tbaa !15
  %14662 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14662, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %14663 = load i32, ptr %49, align 4, !tbaa !9
  %14664 = load i32, ptr %48, align 4, !tbaa !9
  %14665 = add i32 %14664, %14663
  store i32 %14665, ptr %48, align 4, !tbaa !9
  %14666 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14666, ptr %9, align 4, !tbaa !9
  %14667 = load ptr, ptr %5, align 8, !tbaa !5
  %14668 = getelementptr inbounds %struct.w2c_hermes, ptr %14667, i32 0, i32 6
  %14669 = load i32, ptr %48, align 4, !tbaa !9
  %14670 = zext i32 %14669 to i64
  %14671 = add i64 %14670, 8
  %14672 = call i32 @i32_load(ptr noundef %14668, i64 noundef %14671)
  store i32 %14672, ptr %48, align 4, !tbaa !9
  %14673 = load ptr, ptr %5, align 8, !tbaa !5
  %14674 = getelementptr inbounds %struct.w2c_hermes, ptr %14673, i32 0, i32 6
  %14675 = load i32, ptr %48, align 4, !tbaa !9
  %14676 = zext i32 %14675 to i64
  %14677 = add i64 %14676, 44
  %14678 = call i32 @i32_load(ptr noundef %14674, i64 noundef %14677)
  store i32 %14678, ptr %48, align 4, !tbaa !9
  %14679 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14679, ptr %10, align 4, !tbaa !9
  %14680 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14680, ptr %48, align 4, !tbaa !9
  store i64 34359738368, ptr %59, align 8, !tbaa !11
  %14681 = load ptr, ptr %5, align 8, !tbaa !5
  %14682 = getelementptr inbounds %struct.w2c_hermes, ptr %14681, i32 0, i32 6
  %14683 = load i32, ptr %48, align 4, !tbaa !9
  %14684 = zext i32 %14683 to i64
  %14685 = add i64 %14684, 56
  %14686 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14682, i64 noundef %14685, i64 noundef %14686)
  %14687 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14687, ptr %48, align 4, !tbaa !9
  %14688 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14688, ptr %49, align 4, !tbaa !9
  store i32 -64, ptr %50, align 4, !tbaa !9
  %14689 = load i32, ptr %50, align 4, !tbaa !9
  %14690 = load i32, ptr %49, align 4, !tbaa !9
  %14691 = sub i32 %14690, %14689
  store i32 %14691, ptr %49, align 4, !tbaa !9
  %14692 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %14692, ptr %14, align 4, !tbaa !9
  %14693 = load ptr, ptr %5, align 8, !tbaa !5
  %14694 = getelementptr inbounds %struct.w2c_hermes, ptr %14693, i32 0, i32 6
  %14695 = load i32, ptr %48, align 4, !tbaa !9
  %14696 = zext i32 %14695 to i64
  %14697 = add i64 %14696, 52
  %14698 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14694, i64 noundef %14697, i32 noundef %14698)
  %14699 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14699, ptr %48, align 4, !tbaa !9
  store i64 34359738368, ptr %59, align 8, !tbaa !11
  %14700 = load ptr, ptr %5, align 8, !tbaa !5
  %14701 = getelementptr inbounds %struct.w2c_hermes, ptr %14700, i32 0, i32 6
  %14702 = load i32, ptr %48, align 4, !tbaa !9
  %14703 = zext i32 %14702 to i64
  %14704 = add i64 %14703, 12
  %14705 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14701, i64 noundef %14704, i64 noundef %14705)
  %14706 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14706, ptr %48, align 4, !tbaa !9
  %14707 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14707, ptr %49, align 4, !tbaa !9
  store i32 20, ptr %50, align 4, !tbaa !9
  %14708 = load i32, ptr %50, align 4, !tbaa !9
  %14709 = load i32, ptr %49, align 4, !tbaa !9
  %14710 = add i32 %14709, %14708
  store i32 %14710, ptr %49, align 4, !tbaa !9
  %14711 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %14711, ptr %15, align 4, !tbaa !9
  %14712 = load ptr, ptr %5, align 8, !tbaa !5
  %14713 = getelementptr inbounds %struct.w2c_hermes, ptr %14712, i32 0, i32 6
  %14714 = load i32, ptr %48, align 4, !tbaa !9
  %14715 = zext i32 %14714 to i64
  %14716 = add i64 %14715, 8
  %14717 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14713, i64 noundef %14716, i32 noundef %14717)
  %14718 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14718, ptr %48, align 4, !tbaa !9
  %14719 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14719, ptr %49, align 4, !tbaa !9
  %14720 = load ptr, ptr %5, align 8, !tbaa !5
  %14721 = load i32, ptr %48, align 4, !tbaa !9
  %14722 = load i32, ptr %49, align 4, !tbaa !9
  %14723 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %14720, i32 noundef %14721, i32 noundef %14722)
  store i32 %14723, ptr %48, align 4, !tbaa !9
  %14724 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14724, ptr %12, align 4, !tbaa !9
  %14725 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14725, ptr %48, align 4, !tbaa !9
  %14726 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14726, ptr %49, align 4, !tbaa !9
  %14727 = load ptr, ptr %5, align 8, !tbaa !5
  %14728 = load i32, ptr %48, align 4, !tbaa !9
  %14729 = load i32, ptr %49, align 4, !tbaa !9
  %14730 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %14727, i32 noundef %14728, i32 noundef %14729)
  store i32 %14730, ptr %48, align 4, !tbaa !9
  %14731 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14731, ptr %11, align 4, !tbaa !9
  %14732 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14732, ptr %48, align 4, !tbaa !9
  %14733 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14733, ptr %49, align 4, !tbaa !9
  %14734 = load ptr, ptr %5, align 8, !tbaa !5
  %14735 = load i32, ptr %48, align 4, !tbaa !9
  %14736 = load i32, ptr %49, align 4, !tbaa !9
  %14737 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %14734, i32 noundef %14735, i32 noundef %14736)
  store i32 %14737, ptr %48, align 4, !tbaa !9
  %14738 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14738, ptr %10, align 4, !tbaa !9
  %14739 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14739, ptr %48, align 4, !tbaa !9
  %14740 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14740, ptr %49, align 4, !tbaa !9
  %14741 = load ptr, ptr %5, align 8, !tbaa !5
  %14742 = getelementptr inbounds %struct.w2c_hermes, ptr %14741, i32 0, i32 6
  %14743 = load i32, ptr %49, align 4, !tbaa !9
  %14744 = zext i32 %14743 to i64
  %14745 = add i64 %14744, 28
  %14746 = call i32 @i32_load(ptr noundef %14742, i64 noundef %14745)
  store i32 %14746, ptr %49, align 4, !tbaa !9
  %14747 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14747, ptr %50, align 4, !tbaa !9
  %14748 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14748, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %14749 = load ptr, ptr %5, align 8, !tbaa !5
  %14750 = load i32, ptr %48, align 4, !tbaa !9
  %14751 = load i32, ptr %49, align 4, !tbaa !9
  %14752 = load i32, ptr %50, align 4, !tbaa !9
  %14753 = load i32, ptr %51, align 4, !tbaa !9
  %14754 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpressionBranch0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %14749, i32 noundef %14750, i32 noundef %14751, i32 noundef %14752, i32 noundef %14753, i32 noundef %14754)
  %14755 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14755, ptr %48, align 4, !tbaa !9
  %14756 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14756, ptr %49, align 4, !tbaa !9
  %14757 = load ptr, ptr %5, align 8, !tbaa !5
  %14758 = getelementptr inbounds %struct.w2c_hermes, ptr %14757, i32 0, i32 6
  %14759 = load i32, ptr %48, align 4, !tbaa !9
  %14760 = zext i32 %14759 to i64
  %14761 = add i64 %14760, 8
  %14762 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14758, i64 noundef %14761, i32 noundef %14762)
  %14763 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14763, ptr %48, align 4, !tbaa !9
  %14764 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14764, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %14765 = load i32, ptr %50, align 4, !tbaa !9
  %14766 = load i32, ptr %49, align 4, !tbaa !9
  %14767 = add i32 %14766, %14765
  store i32 %14767, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %14768 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14768, ptr %51, align 4, !tbaa !9
  %14769 = load i32, ptr %51, align 4, !tbaa !9
  %14770 = icmp ne i32 %14769, 0
  br i1 %14770, label %14771, label %14773

14771:                                            ; preds = %14651
  %14772 = load i32, ptr %49, align 4, !tbaa !9
  br label %14775

14773:                                            ; preds = %14651
  %14774 = load i32, ptr %50, align 4, !tbaa !9
  br label %14775

14775:                                            ; preds = %14773, %14771
  %14776 = phi i32 [ %14772, %14771 ], [ %14774, %14773 ]
  store i32 %14776, ptr %49, align 4, !tbaa !9
  %14777 = load ptr, ptr %5, align 8, !tbaa !5
  %14778 = getelementptr inbounds %struct.w2c_hermes, ptr %14777, i32 0, i32 6
  %14779 = load i32, ptr %48, align 4, !tbaa !9
  %14780 = zext i32 %14779 to i64
  %14781 = add i64 %14780, 4
  %14782 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14778, i64 noundef %14781, i32 noundef %14782)
  %14783 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14783, ptr %48, align 4, !tbaa !9
  %14784 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14784, ptr %49, align 4, !tbaa !9
  %14785 = load ptr, ptr %5, align 8, !tbaa !5
  %14786 = getelementptr inbounds %struct.w2c_hermes, ptr %14785, i32 0, i32 6
  %14787 = load i32, ptr %49, align 4, !tbaa !9
  %14788 = zext i32 %14787 to i64
  %14789 = add i64 %14788, 36
  %14790 = call i32 @i32_load(ptr noundef %14786, i64 noundef %14789)
  store i32 %14790, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %14791 = load ptr, ptr %5, align 8, !tbaa !5
  %14792 = load i32, ptr %48, align 4, !tbaa !9
  %14793 = load i32, ptr %49, align 4, !tbaa !9
  %14794 = load i32, ptr %50, align 4, !tbaa !9
  %14795 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %14791, i32 noundef %14792, i32 noundef %14793, i32 noundef %14794)
  store i32 %14795, ptr %48, align 4, !tbaa !9
  %14796 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14796, ptr %13, align 4, !tbaa !9
  %14797 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14797, ptr %48, align 4, !tbaa !9
  %14798 = load ptr, ptr %5, align 8, !tbaa !5
  %14799 = getelementptr inbounds %struct.w2c_hermes, ptr %14798, i32 0, i32 6
  %14800 = load i32, ptr %48, align 4, !tbaa !9
  %14801 = zext i32 %14800 to i64
  %14802 = add i64 %14801, 56
  %14803 = call i32 @i32_load(ptr noundef %14799, i64 noundef %14802)
  store i32 %14803, ptr %48, align 4, !tbaa !9
  %14804 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14804, ptr %11, align 4, !tbaa !9
  %14805 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14805, ptr %49, align 4, !tbaa !9
  %14806 = load ptr, ptr %5, align 8, !tbaa !5
  %14807 = getelementptr inbounds %struct.w2c_hermes, ptr %14806, i32 0, i32 6
  %14808 = load i32, ptr %49, align 4, !tbaa !9
  %14809 = zext i32 %14808 to i64
  %14810 = add i64 %14809, 60
  %14811 = call i32 @i32_load(ptr noundef %14807, i64 noundef %14810)
  store i32 %14811, ptr %49, align 4, !tbaa !9
  %14812 = load i32, ptr %48, align 4, !tbaa !9
  %14813 = load i32, ptr %49, align 4, !tbaa !9
  %14814 = icmp uge i32 %14812, %14813
  %14815 = zext i1 %14814 to i32
  store i32 %14815, ptr %48, align 4, !tbaa !9
  %14816 = load i32, ptr %48, align 4, !tbaa !9
  %14817 = icmp ne i32 %14816, 0
  br i1 %14817, label %14818, label %14837

14818:                                            ; preds = %14775
  %14819 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14819, ptr %48, align 4, !tbaa !9
  store i32 52, ptr %49, align 4, !tbaa !9
  %14820 = load i32, ptr %49, align 4, !tbaa !9
  %14821 = load i32, ptr %48, align 4, !tbaa !9
  %14822 = add i32 %14821, %14820
  store i32 %14822, ptr %48, align 4, !tbaa !9
  %14823 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14823, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %14824 = load ptr, ptr %5, align 8, !tbaa !5
  %14825 = load i32, ptr %48, align 4, !tbaa !9
  %14826 = load i32, ptr %49, align 4, !tbaa !9
  %14827 = load i32, ptr %50, align 4, !tbaa !9
  %14828 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %14824, i32 noundef %14825, i32 noundef %14826, i32 noundef %14827, i32 noundef %14828)
  %14829 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14829, ptr %48, align 4, !tbaa !9
  %14830 = load ptr, ptr %5, align 8, !tbaa !5
  %14831 = getelementptr inbounds %struct.w2c_hermes, ptr %14830, i32 0, i32 6
  %14832 = load i32, ptr %48, align 4, !tbaa !9
  %14833 = zext i32 %14832 to i64
  %14834 = add i64 %14833, 56
  %14835 = call i32 @i32_load(ptr noundef %14831, i64 noundef %14834)
  store i32 %14835, ptr %48, align 4, !tbaa !9
  %14836 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14836, ptr %11, align 4, !tbaa !9
  br label %14837

14837:                                            ; preds = %14818, %14775
  %14838 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14838, ptr %48, align 4, !tbaa !9
  %14839 = load ptr, ptr %5, align 8, !tbaa !5
  %14840 = getelementptr inbounds %struct.w2c_hermes, ptr %14839, i32 0, i32 6
  %14841 = load i32, ptr %48, align 4, !tbaa !9
  %14842 = zext i32 %14841 to i64
  %14843 = add i64 %14842, 52
  %14844 = call i32 @i32_load(ptr noundef %14840, i64 noundef %14843)
  store i32 %14844, ptr %48, align 4, !tbaa !9
  %14845 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14845, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %14846 = load i32, ptr %50, align 4, !tbaa !9
  %14847 = and i32 %14846, 31
  %14848 = load i32, ptr %49, align 4, !tbaa !9
  %14849 = shl i32 %14848, %14847
  store i32 %14849, ptr %49, align 4, !tbaa !9
  %14850 = load i32, ptr %49, align 4, !tbaa !9
  %14851 = load i32, ptr %48, align 4, !tbaa !9
  %14852 = add i32 %14851, %14850
  store i32 %14852, ptr %48, align 4, !tbaa !9
  %14853 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %14853, ptr %49, align 4, !tbaa !9
  %14854 = load ptr, ptr %5, align 8, !tbaa !5
  %14855 = getelementptr inbounds %struct.w2c_hermes, ptr %14854, i32 0, i32 6
  %14856 = load i32, ptr %48, align 4, !tbaa !9
  %14857 = zext i32 %14856 to i64
  %14858 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14855, i64 noundef %14857, i32 noundef %14858)
  %14859 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14859, ptr %48, align 4, !tbaa !9
  %14860 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14860, ptr %49, align 4, !tbaa !9
  %14861 = load ptr, ptr %5, align 8, !tbaa !5
  %14862 = getelementptr inbounds %struct.w2c_hermes, ptr %14861, i32 0, i32 6
  %14863 = load i32, ptr %49, align 4, !tbaa !9
  %14864 = zext i32 %14863 to i64
  %14865 = add i64 %14864, 56
  %14866 = call i32 @i32_load(ptr noundef %14862, i64 noundef %14865)
  store i32 %14866, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %14867 = load i32, ptr %50, align 4, !tbaa !9
  %14868 = load i32, ptr %49, align 4, !tbaa !9
  %14869 = add i32 %14868, %14867
  store i32 %14869, ptr %49, align 4, !tbaa !9
  %14870 = load ptr, ptr %5, align 8, !tbaa !5
  %14871 = getelementptr inbounds %struct.w2c_hermes, ptr %14870, i32 0, i32 6
  %14872 = load i32, ptr %48, align 4, !tbaa !9
  %14873 = zext i32 %14872 to i64
  %14874 = add i64 %14873, 56
  %14875 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14871, i64 noundef %14874, i32 noundef %14875)
  %14876 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14876, ptr %48, align 4, !tbaa !9
  %14877 = load ptr, ptr %5, align 8, !tbaa !5
  %14878 = getelementptr inbounds %struct.w2c_hermes, ptr %14877, i32 0, i32 6
  %14879 = load i32, ptr %48, align 4, !tbaa !9
  %14880 = zext i32 %14879 to i64
  %14881 = add i64 %14880, 8
  %14882 = call i32 @i32_load(ptr noundef %14878, i64 noundef %14881)
  store i32 %14882, ptr %48, align 4, !tbaa !9
  %14883 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14883, ptr %13, align 4, !tbaa !9
  %14884 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14884, ptr %48, align 4, !tbaa !9
  %14885 = load ptr, ptr %5, align 8, !tbaa !5
  %14886 = getelementptr inbounds %struct.w2c_hermes, ptr %14885, i32 0, i32 6
  %14887 = load i32, ptr %48, align 4, !tbaa !9
  %14888 = zext i32 %14887 to i64
  %14889 = add i64 %14888, 12
  %14890 = call i32 @i32_load(ptr noundef %14886, i64 noundef %14889)
  store i32 %14890, ptr %48, align 4, !tbaa !9
  %14891 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14891, ptr %11, align 4, !tbaa !9
  %14892 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14892, ptr %49, align 4, !tbaa !9
  %14893 = load ptr, ptr %5, align 8, !tbaa !5
  %14894 = getelementptr inbounds %struct.w2c_hermes, ptr %14893, i32 0, i32 6
  %14895 = load i32, ptr %49, align 4, !tbaa !9
  %14896 = zext i32 %14895 to i64
  %14897 = add i64 %14896, 16
  %14898 = call i32 @i32_load(ptr noundef %14894, i64 noundef %14897)
  store i32 %14898, ptr %49, align 4, !tbaa !9
  %14899 = load i32, ptr %48, align 4, !tbaa !9
  %14900 = load i32, ptr %49, align 4, !tbaa !9
  %14901 = icmp uge i32 %14899, %14900
  %14902 = zext i1 %14901 to i32
  store i32 %14902, ptr %48, align 4, !tbaa !9
  %14903 = load i32, ptr %48, align 4, !tbaa !9
  %14904 = icmp ne i32 %14903, 0
  br i1 %14904, label %14905, label %14924

14905:                                            ; preds = %14837
  %14906 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14906, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %14907 = load i32, ptr %49, align 4, !tbaa !9
  %14908 = load i32, ptr %48, align 4, !tbaa !9
  %14909 = add i32 %14908, %14907
  store i32 %14909, ptr %48, align 4, !tbaa !9
  %14910 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %14910, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %14911 = load ptr, ptr %5, align 8, !tbaa !5
  %14912 = load i32, ptr %48, align 4, !tbaa !9
  %14913 = load i32, ptr %49, align 4, !tbaa !9
  %14914 = load i32, ptr %50, align 4, !tbaa !9
  %14915 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %14911, i32 noundef %14912, i32 noundef %14913, i32 noundef %14914, i32 noundef %14915)
  %14916 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14916, ptr %48, align 4, !tbaa !9
  %14917 = load ptr, ptr %5, align 8, !tbaa !5
  %14918 = getelementptr inbounds %struct.w2c_hermes, ptr %14917, i32 0, i32 6
  %14919 = load i32, ptr %48, align 4, !tbaa !9
  %14920 = zext i32 %14919 to i64
  %14921 = add i64 %14920, 12
  %14922 = call i32 @i32_load(ptr noundef %14918, i64 noundef %14921)
  store i32 %14922, ptr %48, align 4, !tbaa !9
  %14923 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %14923, ptr %11, align 4, !tbaa !9
  br label %14924

14924:                                            ; preds = %14905, %14837
  %14925 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14925, ptr %48, align 4, !tbaa !9
  %14926 = load ptr, ptr %5, align 8, !tbaa !5
  %14927 = getelementptr inbounds %struct.w2c_hermes, ptr %14926, i32 0, i32 6
  %14928 = load i32, ptr %48, align 4, !tbaa !9
  %14929 = zext i32 %14928 to i64
  %14930 = add i64 %14929, 8
  %14931 = call i32 @i32_load(ptr noundef %14927, i64 noundef %14930)
  store i32 %14931, ptr %48, align 4, !tbaa !9
  %14932 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14932, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %14933 = load i32, ptr %50, align 4, !tbaa !9
  %14934 = and i32 %14933, 31
  %14935 = load i32, ptr %49, align 4, !tbaa !9
  %14936 = shl i32 %14935, %14934
  store i32 %14936, ptr %49, align 4, !tbaa !9
  %14937 = load i32, ptr %49, align 4, !tbaa !9
  %14938 = load i32, ptr %48, align 4, !tbaa !9
  %14939 = add i32 %14938, %14937
  store i32 %14939, ptr %48, align 4, !tbaa !9
  %14940 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %14940, ptr %49, align 4, !tbaa !9
  %14941 = load ptr, ptr %5, align 8, !tbaa !5
  %14942 = getelementptr inbounds %struct.w2c_hermes, ptr %14941, i32 0, i32 6
  %14943 = load i32, ptr %48, align 4, !tbaa !9
  %14944 = zext i32 %14943 to i64
  %14945 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14942, i64 noundef %14944, i32 noundef %14945)
  %14946 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14946, ptr %48, align 4, !tbaa !9
  %14947 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14947, ptr %49, align 4, !tbaa !9
  %14948 = load ptr, ptr %5, align 8, !tbaa !5
  %14949 = getelementptr inbounds %struct.w2c_hermes, ptr %14948, i32 0, i32 6
  %14950 = load i32, ptr %49, align 4, !tbaa !9
  %14951 = zext i32 %14950 to i64
  %14952 = add i64 %14951, 12
  %14953 = call i32 @i32_load(ptr noundef %14949, i64 noundef %14952)
  store i32 %14953, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %14954 = load i32, ptr %50, align 4, !tbaa !9
  %14955 = load i32, ptr %49, align 4, !tbaa !9
  %14956 = add i32 %14955, %14954
  store i32 %14956, ptr %49, align 4, !tbaa !9
  %14957 = load ptr, ptr %5, align 8, !tbaa !5
  %14958 = getelementptr inbounds %struct.w2c_hermes, ptr %14957, i32 0, i32 6
  %14959 = load i32, ptr %48, align 4, !tbaa !9
  %14960 = zext i32 %14959 to i64
  %14961 = add i64 %14960, 12
  %14962 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14958, i64 noundef %14961, i32 noundef %14962)
  %14963 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14963, ptr %48, align 4, !tbaa !9
  %14964 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14964, ptr %49, align 4, !tbaa !9
  %14965 = load ptr, ptr %5, align 8, !tbaa !5
  %14966 = load i32, ptr %48, align 4, !tbaa !9
  %14967 = load i32, ptr %49, align 4, !tbaa !9
  %14968 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %14965, i32 noundef %14966, i32 noundef %14967)
  store i32 %14968, ptr %48, align 4, !tbaa !9
  %14969 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14969, ptr %48, align 4, !tbaa !9
  %14970 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14970, ptr %49, align 4, !tbaa !9
  %14971 = load ptr, ptr %5, align 8, !tbaa !5
  %14972 = getelementptr inbounds %struct.w2c_hermes, ptr %14971, i32 0, i32 6
  %14973 = load i32, ptr %48, align 4, !tbaa !9
  %14974 = zext i32 %14973 to i64
  %14975 = add i64 %14974, 8
  %14976 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14972, i64 noundef %14975, i32 noundef %14976)
  %14977 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14977, ptr %48, align 4, !tbaa !9
  %14978 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14978, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %14979 = load i32, ptr %50, align 4, !tbaa !9
  %14980 = load i32, ptr %49, align 4, !tbaa !9
  %14981 = add i32 %14980, %14979
  store i32 %14981, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %14982 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14982, ptr %51, align 4, !tbaa !9
  %14983 = load i32, ptr %51, align 4, !tbaa !9
  %14984 = icmp ne i32 %14983, 0
  br i1 %14984, label %14985, label %14987

14985:                                            ; preds = %14924
  %14986 = load i32, ptr %49, align 4, !tbaa !9
  br label %14989

14987:                                            ; preds = %14924
  %14988 = load i32, ptr %50, align 4, !tbaa !9
  br label %14989

14989:                                            ; preds = %14987, %14985
  %14990 = phi i32 [ %14986, %14985 ], [ %14988, %14987 ]
  store i32 %14990, ptr %49, align 4, !tbaa !9
  %14991 = load ptr, ptr %5, align 8, !tbaa !5
  %14992 = getelementptr inbounds %struct.w2c_hermes, ptr %14991, i32 0, i32 6
  %14993 = load i32, ptr %48, align 4, !tbaa !9
  %14994 = zext i32 %14993 to i64
  %14995 = add i64 %14994, 4
  %14996 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14992, i64 noundef %14995, i32 noundef %14996)
  %14997 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14997, ptr %48, align 4, !tbaa !9
  %14998 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14998, ptr %49, align 4, !tbaa !9
  %14999 = load ptr, ptr %5, align 8, !tbaa !5
  %15000 = getelementptr inbounds %struct.w2c_hermes, ptr %14999, i32 0, i32 6
  %15001 = load i32, ptr %49, align 4, !tbaa !9
  %15002 = zext i32 %15001 to i64
  %15003 = add i64 %15002, 32
  %15004 = call i32 @i32_load(ptr noundef %15000, i64 noundef %15003)
  store i32 %15004, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %15005 = load ptr, ptr %5, align 8, !tbaa !5
  %15006 = load i32, ptr %48, align 4, !tbaa !9
  %15007 = load i32, ptr %49, align 4, !tbaa !9
  %15008 = load i32, ptr %50, align 4, !tbaa !9
  %15009 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %15005, i32 noundef %15006, i32 noundef %15007, i32 noundef %15008)
  store i32 %15009, ptr %48, align 4, !tbaa !9
  %15010 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15010, ptr %11, align 4, !tbaa !9
  %15011 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15011, ptr %48, align 4, !tbaa !9
  %15012 = load ptr, ptr %5, align 8, !tbaa !5
  %15013 = getelementptr inbounds %struct.w2c_hermes, ptr %15012, i32 0, i32 6
  %15014 = load i32, ptr %48, align 4, !tbaa !9
  %15015 = zext i32 %15014 to i64
  %15016 = add i64 %15015, 56
  %15017 = call i32 @i32_load(ptr noundef %15013, i64 noundef %15016)
  store i32 %15017, ptr %48, align 4, !tbaa !9
  %15018 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15018, ptr %7, align 4, !tbaa !9
  %15019 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15019, ptr %49, align 4, !tbaa !9
  %15020 = load ptr, ptr %5, align 8, !tbaa !5
  %15021 = getelementptr inbounds %struct.w2c_hermes, ptr %15020, i32 0, i32 6
  %15022 = load i32, ptr %49, align 4, !tbaa !9
  %15023 = zext i32 %15022 to i64
  %15024 = add i64 %15023, 60
  %15025 = call i32 @i32_load(ptr noundef %15021, i64 noundef %15024)
  store i32 %15025, ptr %49, align 4, !tbaa !9
  %15026 = load i32, ptr %48, align 4, !tbaa !9
  %15027 = load i32, ptr %49, align 4, !tbaa !9
  %15028 = icmp uge i32 %15026, %15027
  %15029 = zext i1 %15028 to i32
  store i32 %15029, ptr %48, align 4, !tbaa !9
  %15030 = load i32, ptr %48, align 4, !tbaa !9
  %15031 = icmp ne i32 %15030, 0
  br i1 %15031, label %15032, label %15051

15032:                                            ; preds = %14989
  %15033 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15033, ptr %48, align 4, !tbaa !9
  store i32 52, ptr %49, align 4, !tbaa !9
  %15034 = load i32, ptr %49, align 4, !tbaa !9
  %15035 = load i32, ptr %48, align 4, !tbaa !9
  %15036 = add i32 %15035, %15034
  store i32 %15036, ptr %48, align 4, !tbaa !9
  %15037 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15037, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %15038 = load ptr, ptr %5, align 8, !tbaa !5
  %15039 = load i32, ptr %48, align 4, !tbaa !9
  %15040 = load i32, ptr %49, align 4, !tbaa !9
  %15041 = load i32, ptr %50, align 4, !tbaa !9
  %15042 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %15038, i32 noundef %15039, i32 noundef %15040, i32 noundef %15041, i32 noundef %15042)
  %15043 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15043, ptr %48, align 4, !tbaa !9
  %15044 = load ptr, ptr %5, align 8, !tbaa !5
  %15045 = getelementptr inbounds %struct.w2c_hermes, ptr %15044, i32 0, i32 6
  %15046 = load i32, ptr %48, align 4, !tbaa !9
  %15047 = zext i32 %15046 to i64
  %15048 = add i64 %15047, 56
  %15049 = call i32 @i32_load(ptr noundef %15045, i64 noundef %15048)
  store i32 %15049, ptr %48, align 4, !tbaa !9
  %15050 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15050, ptr %7, align 4, !tbaa !9
  br label %15051

15051:                                            ; preds = %15032, %14989
  %15052 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15052, ptr %48, align 4, !tbaa !9
  %15053 = load ptr, ptr %5, align 8, !tbaa !5
  %15054 = getelementptr inbounds %struct.w2c_hermes, ptr %15053, i32 0, i32 6
  %15055 = load i32, ptr %48, align 4, !tbaa !9
  %15056 = zext i32 %15055 to i64
  %15057 = add i64 %15056, 52
  %15058 = call i32 @i32_load(ptr noundef %15054, i64 noundef %15057)
  store i32 %15058, ptr %48, align 4, !tbaa !9
  %15059 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15059, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %15060 = load i32, ptr %50, align 4, !tbaa !9
  %15061 = and i32 %15060, 31
  %15062 = load i32, ptr %49, align 4, !tbaa !9
  %15063 = shl i32 %15062, %15061
  store i32 %15063, ptr %49, align 4, !tbaa !9
  %15064 = load i32, ptr %49, align 4, !tbaa !9
  %15065 = load i32, ptr %48, align 4, !tbaa !9
  %15066 = add i32 %15065, %15064
  store i32 %15066, ptr %48, align 4, !tbaa !9
  %15067 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15067, ptr %49, align 4, !tbaa !9
  %15068 = load ptr, ptr %5, align 8, !tbaa !5
  %15069 = getelementptr inbounds %struct.w2c_hermes, ptr %15068, i32 0, i32 6
  %15070 = load i32, ptr %48, align 4, !tbaa !9
  %15071 = zext i32 %15070 to i64
  %15072 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15069, i64 noundef %15071, i32 noundef %15072)
  %15073 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15073, ptr %48, align 4, !tbaa !9
  %15074 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15074, ptr %49, align 4, !tbaa !9
  %15075 = load ptr, ptr %5, align 8, !tbaa !5
  %15076 = getelementptr inbounds %struct.w2c_hermes, ptr %15075, i32 0, i32 6
  %15077 = load i32, ptr %49, align 4, !tbaa !9
  %15078 = zext i32 %15077 to i64
  %15079 = add i64 %15078, 56
  %15080 = call i32 @i32_load(ptr noundef %15076, i64 noundef %15079)
  store i32 %15080, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %15081 = load i32, ptr %50, align 4, !tbaa !9
  %15082 = load i32, ptr %49, align 4, !tbaa !9
  %15083 = add i32 %15082, %15081
  store i32 %15083, ptr %49, align 4, !tbaa !9
  %15084 = load ptr, ptr %5, align 8, !tbaa !5
  %15085 = getelementptr inbounds %struct.w2c_hermes, ptr %15084, i32 0, i32 6
  %15086 = load i32, ptr %48, align 4, !tbaa !9
  %15087 = zext i32 %15086 to i64
  %15088 = add i64 %15087, 56
  %15089 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15085, i64 noundef %15088, i32 noundef %15089)
  %15090 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15090, ptr %48, align 4, !tbaa !9
  %15091 = load ptr, ptr %5, align 8, !tbaa !5
  %15092 = getelementptr inbounds %struct.w2c_hermes, ptr %15091, i32 0, i32 6
  %15093 = load i32, ptr %48, align 4, !tbaa !9
  %15094 = zext i32 %15093 to i64
  %15095 = add i64 %15094, 8
  %15096 = call i32 @i32_load(ptr noundef %15092, i64 noundef %15095)
  store i32 %15096, ptr %48, align 4, !tbaa !9
  %15097 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15097, ptr %11, align 4, !tbaa !9
  %15098 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15098, ptr %48, align 4, !tbaa !9
  %15099 = load ptr, ptr %5, align 8, !tbaa !5
  %15100 = getelementptr inbounds %struct.w2c_hermes, ptr %15099, i32 0, i32 6
  %15101 = load i32, ptr %48, align 4, !tbaa !9
  %15102 = zext i32 %15101 to i64
  %15103 = add i64 %15102, 12
  %15104 = call i32 @i32_load(ptr noundef %15100, i64 noundef %15103)
  store i32 %15104, ptr %48, align 4, !tbaa !9
  %15105 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15105, ptr %7, align 4, !tbaa !9
  %15106 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15106, ptr %49, align 4, !tbaa !9
  %15107 = load ptr, ptr %5, align 8, !tbaa !5
  %15108 = getelementptr inbounds %struct.w2c_hermes, ptr %15107, i32 0, i32 6
  %15109 = load i32, ptr %49, align 4, !tbaa !9
  %15110 = zext i32 %15109 to i64
  %15111 = add i64 %15110, 16
  %15112 = call i32 @i32_load(ptr noundef %15108, i64 noundef %15111)
  store i32 %15112, ptr %49, align 4, !tbaa !9
  %15113 = load i32, ptr %48, align 4, !tbaa !9
  %15114 = load i32, ptr %49, align 4, !tbaa !9
  %15115 = icmp uge i32 %15113, %15114
  %15116 = zext i1 %15115 to i32
  store i32 %15116, ptr %48, align 4, !tbaa !9
  %15117 = load i32, ptr %48, align 4, !tbaa !9
  %15118 = icmp ne i32 %15117, 0
  br i1 %15118, label %15119, label %15138

15119:                                            ; preds = %15051
  %15120 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15120, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %15121 = load i32, ptr %49, align 4, !tbaa !9
  %15122 = load i32, ptr %48, align 4, !tbaa !9
  %15123 = add i32 %15122, %15121
  store i32 %15123, ptr %48, align 4, !tbaa !9
  %15124 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %15124, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %15125 = load ptr, ptr %5, align 8, !tbaa !5
  %15126 = load i32, ptr %48, align 4, !tbaa !9
  %15127 = load i32, ptr %49, align 4, !tbaa !9
  %15128 = load i32, ptr %50, align 4, !tbaa !9
  %15129 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %15125, i32 noundef %15126, i32 noundef %15127, i32 noundef %15128, i32 noundef %15129)
  %15130 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15130, ptr %48, align 4, !tbaa !9
  %15131 = load ptr, ptr %5, align 8, !tbaa !5
  %15132 = getelementptr inbounds %struct.w2c_hermes, ptr %15131, i32 0, i32 6
  %15133 = load i32, ptr %48, align 4, !tbaa !9
  %15134 = zext i32 %15133 to i64
  %15135 = add i64 %15134, 12
  %15136 = call i32 @i32_load(ptr noundef %15132, i64 noundef %15135)
  store i32 %15136, ptr %48, align 4, !tbaa !9
  %15137 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15137, ptr %7, align 4, !tbaa !9
  br label %15138

15138:                                            ; preds = %15119, %15051
  %15139 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15139, ptr %48, align 4, !tbaa !9
  %15140 = load ptr, ptr %5, align 8, !tbaa !5
  %15141 = getelementptr inbounds %struct.w2c_hermes, ptr %15140, i32 0, i32 6
  %15142 = load i32, ptr %48, align 4, !tbaa !9
  %15143 = zext i32 %15142 to i64
  %15144 = add i64 %15143, 8
  %15145 = call i32 @i32_load(ptr noundef %15141, i64 noundef %15144)
  store i32 %15145, ptr %48, align 4, !tbaa !9
  %15146 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15146, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %15147 = load i32, ptr %50, align 4, !tbaa !9
  %15148 = and i32 %15147, 31
  %15149 = load i32, ptr %49, align 4, !tbaa !9
  %15150 = shl i32 %15149, %15148
  store i32 %15150, ptr %49, align 4, !tbaa !9
  %15151 = load i32, ptr %49, align 4, !tbaa !9
  %15152 = load i32, ptr %48, align 4, !tbaa !9
  %15153 = add i32 %15152, %15151
  store i32 %15153, ptr %48, align 4, !tbaa !9
  %15154 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15154, ptr %49, align 4, !tbaa !9
  %15155 = load ptr, ptr %5, align 8, !tbaa !5
  %15156 = getelementptr inbounds %struct.w2c_hermes, ptr %15155, i32 0, i32 6
  %15157 = load i32, ptr %48, align 4, !tbaa !9
  %15158 = zext i32 %15157 to i64
  %15159 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15156, i64 noundef %15158, i32 noundef %15159)
  %15160 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15160, ptr %48, align 4, !tbaa !9
  %15161 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15161, ptr %49, align 4, !tbaa !9
  %15162 = load ptr, ptr %5, align 8, !tbaa !5
  %15163 = getelementptr inbounds %struct.w2c_hermes, ptr %15162, i32 0, i32 6
  %15164 = load i32, ptr %49, align 4, !tbaa !9
  %15165 = zext i32 %15164 to i64
  %15166 = add i64 %15165, 12
  %15167 = call i32 @i32_load(ptr noundef %15163, i64 noundef %15166)
  store i32 %15167, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %15168 = load i32, ptr %50, align 4, !tbaa !9
  %15169 = load i32, ptr %49, align 4, !tbaa !9
  %15170 = add i32 %15169, %15168
  store i32 %15170, ptr %49, align 4, !tbaa !9
  %15171 = load ptr, ptr %5, align 8, !tbaa !5
  %15172 = getelementptr inbounds %struct.w2c_hermes, ptr %15171, i32 0, i32 6
  %15173 = load i32, ptr %48, align 4, !tbaa !9
  %15174 = zext i32 %15173 to i64
  %15175 = add i64 %15174, 12
  %15176 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15172, i64 noundef %15175, i32 noundef %15176)
  %15177 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15177, ptr %48, align 4, !tbaa !9
  %15178 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15178, ptr %49, align 4, !tbaa !9
  %15179 = load ptr, ptr %5, align 8, !tbaa !5
  %15180 = load i32, ptr %48, align 4, !tbaa !9
  %15181 = load i32, ptr %49, align 4, !tbaa !9
  %15182 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %15179, i32 noundef %15180, i32 noundef %15181)
  store i32 %15182, ptr %48, align 4, !tbaa !9
  %15183 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15183, ptr %48, align 4, !tbaa !9
  %15184 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15184, ptr %49, align 4, !tbaa !9
  %15185 = load ptr, ptr %5, align 8, !tbaa !5
  %15186 = getelementptr inbounds %struct.w2c_hermes, ptr %15185, i32 0, i32 6
  %15187 = load i32, ptr %48, align 4, !tbaa !9
  %15188 = zext i32 %15187 to i64
  %15189 = add i64 %15188, 8
  %15190 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15186, i64 noundef %15189, i32 noundef %15190)
  %15191 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15191, ptr %48, align 4, !tbaa !9
  %15192 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15192, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %15193 = load i32, ptr %50, align 4, !tbaa !9
  %15194 = load i32, ptr %49, align 4, !tbaa !9
  %15195 = add i32 %15194, %15193
  store i32 %15195, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %15196 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15196, ptr %51, align 4, !tbaa !9
  %15197 = load i32, ptr %51, align 4, !tbaa !9
  %15198 = icmp ne i32 %15197, 0
  br i1 %15198, label %15199, label %15201

15199:                                            ; preds = %15138
  %15200 = load i32, ptr %49, align 4, !tbaa !9
  br label %15203

15201:                                            ; preds = %15138
  %15202 = load i32, ptr %50, align 4, !tbaa !9
  br label %15203

15203:                                            ; preds = %15201, %15199
  %15204 = phi i32 [ %15200, %15199 ], [ %15202, %15201 ]
  store i32 %15204, ptr %49, align 4, !tbaa !9
  %15205 = load ptr, ptr %5, align 8, !tbaa !5
  %15206 = getelementptr inbounds %struct.w2c_hermes, ptr %15205, i32 0, i32 6
  %15207 = load i32, ptr %48, align 4, !tbaa !9
  %15208 = zext i32 %15207 to i64
  %15209 = add i64 %15208, 4
  %15210 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15206, i64 noundef %15209, i32 noundef %15210)
  %15211 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15211, ptr %48, align 4, !tbaa !9
  %15212 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15212, ptr %49, align 4, !tbaa !9
  store i32 52, ptr %50, align 4, !tbaa !9
  %15213 = load i32, ptr %50, align 4, !tbaa !9
  %15214 = load i32, ptr %49, align 4, !tbaa !9
  %15215 = add i32 %15214, %15213
  store i32 %15215, ptr %49, align 4, !tbaa !9
  %15216 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15216, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %15217 = load i32, ptr %51, align 4, !tbaa !9
  %15218 = load i32, ptr %50, align 4, !tbaa !9
  %15219 = add i32 %15218, %15217
  store i32 %15219, ptr %50, align 4, !tbaa !9
  %15220 = load ptr, ptr %5, align 8, !tbaa !5
  %15221 = load i32, ptr %48, align 4, !tbaa !9
  %15222 = load i32, ptr %49, align 4, !tbaa !9
  %15223 = load i32, ptr %50, align 4, !tbaa !9
  %15224 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreatePhiInst0x28llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3AValue0x2A0x2C0x208u0x3E0x20const0x260x2C0x20llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3ABasicBlock0x2A0x2C0x208u0x3E0x20const0x260x29(ptr noundef %15220, i32 noundef %15221, i32 noundef %15222, i32 noundef %15223)
  store i32 %15224, ptr %48, align 4, !tbaa !9
  %15225 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15225, ptr %7, align 4, !tbaa !9
  %15226 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %15226, ptr %48, align 4, !tbaa !9
  %15227 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15227, ptr %49, align 4, !tbaa !9
  %15228 = load ptr, ptr %5, align 8, !tbaa !5
  %15229 = getelementptr inbounds %struct.w2c_hermes, ptr %15228, i32 0, i32 6
  %15230 = load i32, ptr %49, align 4, !tbaa !9
  %15231 = zext i32 %15230 to i64
  %15232 = add i64 %15231, 8
  %15233 = call i32 @i32_load(ptr noundef %15229, i64 noundef %15232)
  store i32 %15233, ptr %49, align 4, !tbaa !9
  %15234 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %15234, ptr %9, align 4, !tbaa !9
  %15235 = load i32, ptr %48, align 4, !tbaa !9
  %15236 = load i32, ptr %49, align 4, !tbaa !9
  %15237 = icmp ne i32 %15235, %15236
  %15238 = zext i1 %15237 to i32
  store i32 %15238, ptr %48, align 4, !tbaa !9
  %15239 = load i32, ptr %48, align 4, !tbaa !9
  %15240 = icmp ne i32 %15239, 0
  br i1 %15240, label %15241, label %15245

15241:                                            ; preds = %15203
  %15242 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15242, ptr %48, align 4, !tbaa !9
  %15243 = load ptr, ptr %5, align 8, !tbaa !5
  %15244 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %15243, i32 noundef %15244)
  br label %15245

15245:                                            ; preds = %15241, %15203
  %15246 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15246, ptr %48, align 4, !tbaa !9
  %15247 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15247, ptr %49, align 4, !tbaa !9
  %15248 = load ptr, ptr %5, align 8, !tbaa !5
  %15249 = getelementptr inbounds %struct.w2c_hermes, ptr %15248, i32 0, i32 6
  %15250 = load i32, ptr %49, align 4, !tbaa !9
  %15251 = zext i32 %15250 to i64
  %15252 = add i64 %15251, 52
  %15253 = call i32 @i32_load(ptr noundef %15249, i64 noundef %15252)
  store i32 %15253, ptr %49, align 4, !tbaa !9
  %15254 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %15254, ptr %9, align 4, !tbaa !9
  %15255 = load i32, ptr %48, align 4, !tbaa !9
  %15256 = load i32, ptr %49, align 4, !tbaa !9
  %15257 = icmp ne i32 %15255, %15256
  %15258 = zext i1 %15257 to i32
  store i32 %15258, ptr %48, align 4, !tbaa !9
  %15259 = load i32, ptr %48, align 4, !tbaa !9
  %15260 = icmp ne i32 %15259, 0
  br i1 %15260, label %15261, label %15265

15261:                                            ; preds = %15245
  %15262 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15262, ptr %48, align 4, !tbaa !9
  %15263 = load ptr, ptr %5, align 8, !tbaa !5
  %15264 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %15263, i32 noundef %15264)
  br label %15265

15265:                                            ; preds = %15261, %15245
  %15266 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15266, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %15267 = load i32, ptr %49, align 4, !tbaa !9
  %15268 = load i32, ptr %48, align 4, !tbaa !9
  %15269 = add i32 %15268, %15267
  store i32 %15269, ptr %48, align 4, !tbaa !9
  %15270 = load i32, ptr %48, align 4, !tbaa !9
  %15271 = load ptr, ptr %5, align 8, !tbaa !5
  %15272 = getelementptr inbounds %struct.w2c_hermes, ptr %15271, i32 0, i32 3
  store i32 %15270, ptr %15272, align 8, !tbaa !15
  %15273 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15273, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %15274 = load i32, ptr %49, align 4, !tbaa !9
  %15275 = load i32, ptr %48, align 4, !tbaa !9
  %15276 = add i32 %15275, %15274
  store i32 %15276, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %15277 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15277, ptr %50, align 4, !tbaa !9
  %15278 = load i32, ptr %50, align 4, !tbaa !9
  %15279 = icmp ne i32 %15278, 0
  br i1 %15279, label %15280, label %15282

15280:                                            ; preds = %15265
  %15281 = load i32, ptr %48, align 4, !tbaa !9
  br label %15284

15282:                                            ; preds = %15265
  %15283 = load i32, ptr %49, align 4, !tbaa !9
  br label %15284

15284:                                            ; preds = %15282, %15280
  %15285 = phi i32 [ %15281, %15280 ], [ %15283, %15282 ]
  store i32 %15285, ptr %48, align 4, !tbaa !9
  br label %22463

15286:                                            ; preds = %14650, %14641
  %15287 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15287, ptr %48, align 4, !tbaa !9
  %15288 = load i32, ptr %48, align 4, !tbaa !9
  %15289 = icmp ne i32 %15288, 0
  %15290 = xor i1 %15289, true
  %15291 = zext i1 %15290 to i32
  store i32 %15291, ptr %48, align 4, !tbaa !9
  %15292 = load i32, ptr %48, align 4, !tbaa !9
  %15293 = icmp ne i32 %15292, 0
  br i1 %15293, label %15294, label %15295

15294:                                            ; preds = %15286
  br label %15364

15295:                                            ; preds = %15286
  %15296 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15296, ptr %48, align 4, !tbaa !9
  store i32 38, ptr %49, align 4, !tbaa !9
  %15297 = load i32, ptr %48, align 4, !tbaa !9
  %15298 = load i32, ptr %49, align 4, !tbaa !9
  %15299 = icmp ne i32 %15297, %15298
  %15300 = zext i1 %15299 to i32
  store i32 %15300, ptr %48, align 4, !tbaa !9
  %15301 = load i32, ptr %48, align 4, !tbaa !9
  %15302 = icmp ne i32 %15301, 0
  br i1 %15302, label %15303, label %15304

15303:                                            ; preds = %15295
  br label %15364

15304:                                            ; preds = %15295
  %15305 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15305, ptr %48, align 4, !tbaa !9
  %15306 = load ptr, ptr %5, align 8, !tbaa !5
  %15307 = getelementptr inbounds %struct.w2c_hermes, ptr %15306, i32 0, i32 6
  %15308 = load i32, ptr %48, align 4, !tbaa !9
  %15309 = zext i32 %15308 to i64
  %15310 = add i64 %15309, 4
  %15311 = call i32 @i32_load(ptr noundef %15307, i64 noundef %15310)
  store i32 %15311, ptr %48, align 4, !tbaa !9
  store i32 268, ptr %49, align 4, !tbaa !9
  %15312 = load i32, ptr %49, align 4, !tbaa !9
  %15313 = load i32, ptr %48, align 4, !tbaa !9
  %15314 = add i32 %15313, %15312
  store i32 %15314, ptr %48, align 4, !tbaa !9
  %15315 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15315, ptr %9, align 4, !tbaa !9
  %15316 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15316, ptr %48, align 4, !tbaa !9
  %15317 = load ptr, ptr %5, align 8, !tbaa !5
  %15318 = getelementptr inbounds %struct.w2c_hermes, ptr %15317, i32 0, i32 6
  %15319 = load i32, ptr %48, align 4, !tbaa !9
  %15320 = zext i32 %15319 to i64
  %15321 = add i64 %15320, 32
  %15322 = call i32 @i32_load(ptr noundef %15318, i64 noundef %15321)
  store i32 %15322, ptr %48, align 4, !tbaa !9
  %15323 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15323, ptr %8, align 4, !tbaa !9
  %15324 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15324, ptr %49, align 4, !tbaa !9
  store i32 28, ptr %50, align 4, !tbaa !9
  %15325 = load i32, ptr %50, align 4, !tbaa !9
  %15326 = load i32, ptr %49, align 4, !tbaa !9
  %15327 = add i32 %15326, %15325
  store i32 %15327, ptr %49, align 4, !tbaa !9
  %15328 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %15328, ptr %7, align 4, !tbaa !9
  %15329 = load i32, ptr %48, align 4, !tbaa !9
  %15330 = load i32, ptr %49, align 4, !tbaa !9
  %15331 = icmp ne i32 %15329, %15330
  %15332 = zext i1 %15331 to i32
  store i32 %15332, ptr %48, align 4, !tbaa !9
  %15333 = load i32, ptr %48, align 4, !tbaa !9
  %15334 = icmp ne i32 %15333, 0
  br i1 %15334, label %15335, label %15362

15335:                                            ; preds = %15304
  br label %15336

15336:                                            ; preds = %15360, %15335
  %15337 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15337, ptr %48, align 4, !tbaa !9
  %15338 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15338, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %15339 = load ptr, ptr %5, align 8, !tbaa !5
  %15340 = load i32, ptr %48, align 4, !tbaa !9
  %15341 = load i32, ptr %49, align 4, !tbaa !9
  %15342 = load i32, ptr %50, align 4, !tbaa !9
  %15343 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %15339, i32 noundef %15340, i32 noundef %15341, i32 noundef %15342)
  store i32 %15343, ptr %48, align 4, !tbaa !9
  %15344 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15344, ptr %9, align 4, !tbaa !9
  %15345 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15345, ptr %48, align 4, !tbaa !9
  %15346 = load ptr, ptr %5, align 8, !tbaa !5
  %15347 = getelementptr inbounds %struct.w2c_hermes, ptr %15346, i32 0, i32 6
  %15348 = load i32, ptr %48, align 4, !tbaa !9
  %15349 = zext i32 %15348 to i64
  %15350 = add i64 %15349, 4
  %15351 = call i32 @i32_load(ptr noundef %15347, i64 noundef %15350)
  store i32 %15351, ptr %48, align 4, !tbaa !9
  %15352 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15352, ptr %8, align 4, !tbaa !9
  %15353 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15353, ptr %49, align 4, !tbaa !9
  %15354 = load i32, ptr %48, align 4, !tbaa !9
  %15355 = load i32, ptr %49, align 4, !tbaa !9
  %15356 = icmp ne i32 %15354, %15355
  %15357 = zext i1 %15356 to i32
  store i32 %15357, ptr %48, align 4, !tbaa !9
  %15358 = load i32, ptr %48, align 4, !tbaa !9
  %15359 = icmp ne i32 %15358, 0
  br i1 %15359, label %15360, label %15361

15360:                                            ; preds = %15336
  br label %15336

15361:                                            ; preds = %15336
  br label %15362

15362:                                            ; preds = %15361, %15304
  %15363 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15363, ptr %48, align 4, !tbaa !9
  br label %22463

15364:                                            ; preds = %15303, %15294
  %15365 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15365, ptr %48, align 4, !tbaa !9
  %15366 = load i32, ptr %48, align 4, !tbaa !9
  %15367 = icmp ne i32 %15366, 0
  %15368 = xor i1 %15367, true
  %15369 = zext i1 %15368 to i32
  store i32 %15369, ptr %48, align 4, !tbaa !9
  %15370 = load i32, ptr %48, align 4, !tbaa !9
  %15371 = icmp ne i32 %15370, 0
  br i1 %15371, label %15372, label %15373

15372:                                            ; preds = %15364
  br label %15990

15373:                                            ; preds = %15364
  %15374 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15374, ptr %48, align 4, !tbaa !9
  store i32 69, ptr %49, align 4, !tbaa !9
  %15375 = load i32, ptr %48, align 4, !tbaa !9
  %15376 = load i32, ptr %49, align 4, !tbaa !9
  %15377 = icmp ne i32 %15375, %15376
  %15378 = zext i1 %15377 to i32
  store i32 %15378, ptr %48, align 4, !tbaa !9
  %15379 = load i32, ptr %48, align 4, !tbaa !9
  %15380 = icmp ne i32 %15379, 0
  br i1 %15380, label %15381, label %15382

15381:                                            ; preds = %15373
  br label %15990

15382:                                            ; preds = %15373
  %15383 = load ptr, ptr %5, align 8, !tbaa !5
  %15384 = getelementptr inbounds %struct.w2c_hermes, ptr %15383, i32 0, i32 3
  %15385 = load i32, ptr %15384, align 8, !tbaa !15
  store i32 %15385, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %15386 = load i32, ptr %49, align 4, !tbaa !9
  %15387 = load i32, ptr %48, align 4, !tbaa !9
  %15388 = sub i32 %15387, %15386
  store i32 %15388, ptr %48, align 4, !tbaa !9
  %15389 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15389, ptr %8, align 4, !tbaa !9
  %15390 = load i32, ptr %48, align 4, !tbaa !9
  %15391 = load ptr, ptr %5, align 8, !tbaa !5
  %15392 = getelementptr inbounds %struct.w2c_hermes, ptr %15391, i32 0, i32 3
  store i32 %15390, ptr %15392, align 8, !tbaa !15
  %15393 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15393, ptr %48, align 4, !tbaa !9
  %15394 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15394, ptr %49, align 4, !tbaa !9
  %15395 = load ptr, ptr %5, align 8, !tbaa !5
  %15396 = getelementptr inbounds %struct.w2c_hermes, ptr %15395, i32 0, i32 6
  %15397 = load i32, ptr %49, align 4, !tbaa !9
  %15398 = zext i32 %15397 to i64
  %15399 = add i64 %15398, 32
  %15400 = call i32 @i32_load(ptr noundef %15396, i64 noundef %15399)
  store i32 %15400, ptr %49, align 4, !tbaa !9
  %15401 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %15401, ptr %11, align 4, !tbaa !9
  %15402 = load ptr, ptr %5, align 8, !tbaa !5
  %15403 = getelementptr inbounds %struct.w2c_hermes, ptr %15402, i32 0, i32 6
  %15404 = load i32, ptr %49, align 4, !tbaa !9
  %15405 = zext i32 %15404 to i64
  %15406 = add i64 %15405, 32
  %15407 = call i32 @i32_load(ptr noundef %15403, i64 noundef %15406)
  store i32 %15407, ptr %49, align 4, !tbaa !9
  %15408 = load ptr, ptr %5, align 8, !tbaa !5
  %15409 = getelementptr inbounds %struct.w2c_hermes, ptr %15408, i32 0, i32 6
  %15410 = load i32, ptr %49, align 4, !tbaa !9
  %15411 = zext i32 %15410 to i64
  %15412 = call i64 @i64_load(ptr noundef %15409, i64 noundef %15411)
  store i64 %15412, ptr %59, align 8, !tbaa !11
  %15413 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %15413, ptr %31, align 8, !tbaa !11
  %15414 = load ptr, ptr %5, align 8, !tbaa !5
  %15415 = getelementptr inbounds %struct.w2c_hermes, ptr %15414, i32 0, i32 6
  %15416 = load i32, ptr %48, align 4, !tbaa !9
  %15417 = zext i32 %15416 to i64
  %15418 = add i64 %15417, 32
  %15419 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15415, i64 noundef %15418, i64 noundef %15419)
  %15420 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15420, ptr %48, align 4, !tbaa !9
  %15421 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %15421, ptr %59, align 8, !tbaa !11
  %15422 = load ptr, ptr %5, align 8, !tbaa !5
  %15423 = getelementptr inbounds %struct.w2c_hermes, ptr %15422, i32 0, i32 6
  %15424 = load i32, ptr %48, align 4, !tbaa !9
  %15425 = zext i32 %15424 to i64
  %15426 = add i64 %15425, 88
  %15427 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15423, i64 noundef %15426, i64 noundef %15427)
  %15428 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15428, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %15429 = load i32, ptr %49, align 4, !tbaa !9
  %15430 = load i32, ptr %48, align 4, !tbaa !9
  %15431 = add i32 %15430, %15429
  store i32 %15431, ptr %48, align 4, !tbaa !9
  %15432 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15432, ptr %12, align 4, !tbaa !9
  %15433 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15433, ptr %49, align 4, !tbaa !9
  store i32 32, ptr %50, align 4, !tbaa !9
  %15434 = load i32, ptr %50, align 4, !tbaa !9
  %15435 = load i32, ptr %49, align 4, !tbaa !9
  %15436 = add i32 %15435, %15434
  store i32 %15436, ptr %49, align 4, !tbaa !9
  %15437 = load ptr, ptr %5, align 8, !tbaa !5
  %15438 = load i32, ptr %48, align 4, !tbaa !9
  %15439 = load i32, ptr %49, align 4, !tbaa !9
  %15440 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %15437, i32 noundef %15438, i32 noundef %15439)
  store i32 %15440, ptr %48, align 4, !tbaa !9
  %15441 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15441, ptr %9, align 4, !tbaa !9
  %15442 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15442, ptr %48, align 4, !tbaa !9
  %15443 = load ptr, ptr %5, align 8, !tbaa !5
  %15444 = getelementptr inbounds %struct.w2c_hermes, ptr %15443, i32 0, i32 6
  %15445 = load i32, ptr %48, align 4, !tbaa !9
  %15446 = zext i32 %15445 to i64
  %15447 = add i64 %15446, 4
  %15448 = call i32 @i32_load(ptr noundef %15444, i64 noundef %15447)
  store i32 %15448, ptr %48, align 4, !tbaa !9
  %15449 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15449, ptr %11, align 4, !tbaa !9
  %15450 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15450, ptr %49, align 4, !tbaa !9
  store i32 28, ptr %50, align 4, !tbaa !9
  %15451 = load i32, ptr %50, align 4, !tbaa !9
  %15452 = load i32, ptr %49, align 4, !tbaa !9
  %15453 = add i32 %15452, %15451
  store i32 %15453, ptr %49, align 4, !tbaa !9
  %15454 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %15454, ptr %15, align 4, !tbaa !9
  %15455 = load i32, ptr %48, align 4, !tbaa !9
  %15456 = load i32, ptr %49, align 4, !tbaa !9
  %15457 = icmp eq i32 %15455, %15456
  %15458 = zext i1 %15457 to i32
  store i32 %15458, ptr %48, align 4, !tbaa !9
  %15459 = load i32, ptr %48, align 4, !tbaa !9
  %15460 = icmp ne i32 %15459, 0
  br i1 %15460, label %15461, label %15462

15461:                                            ; preds = %15382
  br label %15981

15462:                                            ; preds = %15382
  %15463 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15463, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %15464 = load ptr, ptr %5, align 8, !tbaa !5
  %15465 = getelementptr inbounds %struct.w2c_hermes, ptr %15464, i32 0, i32 6
  %15466 = load i32, ptr %48, align 4, !tbaa !9
  %15467 = zext i32 %15466 to i64
  %15468 = add i64 %15467, 72
  %15469 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15465, i64 noundef %15468, i64 noundef %15469)
  %15470 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15470, ptr %48, align 4, !tbaa !9
  %15471 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15471, ptr %49, align 4, !tbaa !9
  store i32 80, ptr %50, align 4, !tbaa !9
  %15472 = load i32, ptr %50, align 4, !tbaa !9
  %15473 = load i32, ptr %49, align 4, !tbaa !9
  %15474 = add i32 %15473, %15472
  store i32 %15474, ptr %49, align 4, !tbaa !9
  %15475 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %15475, ptr %10, align 4, !tbaa !9
  %15476 = load ptr, ptr %5, align 8, !tbaa !5
  %15477 = getelementptr inbounds %struct.w2c_hermes, ptr %15476, i32 0, i32 6
  %15478 = load i32, ptr %48, align 4, !tbaa !9
  %15479 = zext i32 %15478 to i64
  %15480 = add i64 %15479, 68
  %15481 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15477, i64 noundef %15480, i32 noundef %15481)
  %15482 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15482, ptr %48, align 4, !tbaa !9
  store i32 40, ptr %49, align 4, !tbaa !9
  %15483 = load i32, ptr %49, align 4, !tbaa !9
  %15484 = load i32, ptr %48, align 4, !tbaa !9
  %15485 = add i32 %15484, %15483
  store i32 %15485, ptr %48, align 4, !tbaa !9
  %15486 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15486, ptr %7, align 4, !tbaa !9
  br label %15487

15487:                                            ; preds = %15729, %15462
  %15488 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15488, ptr %48, align 4, !tbaa !9
  %15489 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15489, ptr %49, align 4, !tbaa !9
  %15490 = load ptr, ptr %5, align 8, !tbaa !5
  %15491 = getelementptr inbounds %struct.w2c_hermes, ptr %15490, i32 0, i32 6
  %15492 = load i32, ptr %49, align 4, !tbaa !9
  %15493 = zext i32 %15492 to i64
  %15494 = call i32 @i32_load(ptr noundef %15491, i64 noundef %15493)
  store i32 %15494, ptr %49, align 4, !tbaa !9
  %15495 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %15495, ptr %13, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %15496 = load ptr, ptr %5, align 8, !tbaa !5
  %15497 = load i32, ptr %48, align 4, !tbaa !9
  %15498 = load i32, ptr %49, align 4, !tbaa !9
  %15499 = load i32, ptr %50, align 4, !tbaa !9
  %15500 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %15496, i32 noundef %15497, i32 noundef %15498, i32 noundef %15499)
  store i32 %15500, ptr %48, align 4, !tbaa !9
  %15501 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15501, ptr %14, align 4, !tbaa !9
  %15502 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15502, ptr %48, align 4, !tbaa !9
  %15503 = load ptr, ptr %5, align 8, !tbaa !5
  %15504 = getelementptr inbounds %struct.w2c_hermes, ptr %15503, i32 0, i32 6
  %15505 = load i32, ptr %48, align 4, !tbaa !9
  %15506 = zext i32 %15505 to i64
  %15507 = add i64 %15506, 72
  %15508 = call i32 @i32_load(ptr noundef %15504, i64 noundef %15507)
  store i32 %15508, ptr %48, align 4, !tbaa !9
  %15509 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15509, ptr %7, align 4, !tbaa !9
  %15510 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15510, ptr %49, align 4, !tbaa !9
  %15511 = load ptr, ptr %5, align 8, !tbaa !5
  %15512 = getelementptr inbounds %struct.w2c_hermes, ptr %15511, i32 0, i32 6
  %15513 = load i32, ptr %49, align 4, !tbaa !9
  %15514 = zext i32 %15513 to i64
  %15515 = add i64 %15514, 76
  %15516 = call i32 @i32_load(ptr noundef %15512, i64 noundef %15515)
  store i32 %15516, ptr %49, align 4, !tbaa !9
  %15517 = load i32, ptr %48, align 4, !tbaa !9
  %15518 = load i32, ptr %49, align 4, !tbaa !9
  %15519 = icmp uge i32 %15517, %15518
  %15520 = zext i1 %15519 to i32
  store i32 %15520, ptr %48, align 4, !tbaa !9
  %15521 = load i32, ptr %48, align 4, !tbaa !9
  %15522 = icmp ne i32 %15521, 0
  br i1 %15522, label %15523, label %15542

15523:                                            ; preds = %15487
  %15524 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15524, ptr %48, align 4, !tbaa !9
  store i32 68, ptr %49, align 4, !tbaa !9
  %15525 = load i32, ptr %49, align 4, !tbaa !9
  %15526 = load i32, ptr %48, align 4, !tbaa !9
  %15527 = add i32 %15526, %15525
  store i32 %15527, ptr %48, align 4, !tbaa !9
  %15528 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15528, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %15529 = load ptr, ptr %5, align 8, !tbaa !5
  %15530 = load i32, ptr %48, align 4, !tbaa !9
  %15531 = load i32, ptr %49, align 4, !tbaa !9
  %15532 = load i32, ptr %50, align 4, !tbaa !9
  %15533 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %15529, i32 noundef %15530, i32 noundef %15531, i32 noundef %15532, i32 noundef %15533)
  %15534 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15534, ptr %48, align 4, !tbaa !9
  %15535 = load ptr, ptr %5, align 8, !tbaa !5
  %15536 = getelementptr inbounds %struct.w2c_hermes, ptr %15535, i32 0, i32 6
  %15537 = load i32, ptr %48, align 4, !tbaa !9
  %15538 = zext i32 %15537 to i64
  %15539 = add i64 %15538, 72
  %15540 = call i32 @i32_load(ptr noundef %15536, i64 noundef %15539)
  store i32 %15540, ptr %48, align 4, !tbaa !9
  %15541 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15541, ptr %7, align 4, !tbaa !9
  br label %15542

15542:                                            ; preds = %15523, %15487
  %15543 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15543, ptr %48, align 4, !tbaa !9
  %15544 = load ptr, ptr %5, align 8, !tbaa !5
  %15545 = getelementptr inbounds %struct.w2c_hermes, ptr %15544, i32 0, i32 6
  %15546 = load i32, ptr %48, align 4, !tbaa !9
  %15547 = zext i32 %15546 to i64
  %15548 = add i64 %15547, 68
  %15549 = call i32 @i32_load(ptr noundef %15545, i64 noundef %15548)
  store i32 %15549, ptr %48, align 4, !tbaa !9
  %15550 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15550, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %15551 = load i32, ptr %50, align 4, !tbaa !9
  %15552 = and i32 %15551, 31
  %15553 = load i32, ptr %49, align 4, !tbaa !9
  %15554 = shl i32 %15553, %15552
  store i32 %15554, ptr %49, align 4, !tbaa !9
  %15555 = load i32, ptr %49, align 4, !tbaa !9
  %15556 = load i32, ptr %48, align 4, !tbaa !9
  %15557 = add i32 %15556, %15555
  store i32 %15557, ptr %48, align 4, !tbaa !9
  %15558 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15558, ptr %49, align 4, !tbaa !9
  %15559 = load ptr, ptr %5, align 8, !tbaa !5
  %15560 = getelementptr inbounds %struct.w2c_hermes, ptr %15559, i32 0, i32 6
  %15561 = load i32, ptr %48, align 4, !tbaa !9
  %15562 = zext i32 %15561 to i64
  %15563 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15560, i64 noundef %15562, i32 noundef %15563)
  %15564 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15564, ptr %48, align 4, !tbaa !9
  %15565 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15565, ptr %49, align 4, !tbaa !9
  %15566 = load ptr, ptr %5, align 8, !tbaa !5
  %15567 = getelementptr inbounds %struct.w2c_hermes, ptr %15566, i32 0, i32 6
  %15568 = load i32, ptr %49, align 4, !tbaa !9
  %15569 = zext i32 %15568 to i64
  %15570 = add i64 %15569, 72
  %15571 = call i32 @i32_load(ptr noundef %15567, i64 noundef %15570)
  store i32 %15571, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %15572 = load i32, ptr %50, align 4, !tbaa !9
  %15573 = load i32, ptr %49, align 4, !tbaa !9
  %15574 = add i32 %15573, %15572
  store i32 %15574, ptr %49, align 4, !tbaa !9
  %15575 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %15575, ptr %14, align 4, !tbaa !9
  %15576 = load ptr, ptr %5, align 8, !tbaa !5
  %15577 = getelementptr inbounds %struct.w2c_hermes, ptr %15576, i32 0, i32 6
  %15578 = load i32, ptr %48, align 4, !tbaa !9
  %15579 = zext i32 %15578 to i64
  %15580 = add i64 %15579, 72
  %15581 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15577, i64 noundef %15580, i32 noundef %15581)
  %15582 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15582, ptr %48, align 4, !tbaa !9
  %15583 = load ptr, ptr %5, align 8, !tbaa !5
  %15584 = getelementptr inbounds %struct.w2c_hermes, ptr %15583, i32 0, i32 6
  %15585 = load i32, ptr %48, align 4, !tbaa !9
  %15586 = zext i32 %15585 to i64
  %15587 = add i64 %15586, 32
  %15588 = call i32 @i32_load(ptr noundef %15584, i64 noundef %15587)
  store i32 %15588, ptr %48, align 4, !tbaa !9
  %15589 = load ptr, ptr %5, align 8, !tbaa !5
  %15590 = getelementptr inbounds %struct.w2c_hermes, ptr %15589, i32 0, i32 6
  %15591 = load i32, ptr %48, align 4, !tbaa !9
  %15592 = zext i32 %15591 to i64
  %15593 = call i64 @i64_load(ptr noundef %15590, i64 noundef %15592)
  store i64 %15593, ptr %58, align 8, !tbaa !11
  %15594 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %15594, ptr %31, align 8, !tbaa !11
  store i64 4294967296, ptr %59, align 8, !tbaa !11
  %15595 = load i64, ptr %58, align 8, !tbaa !11
  %15596 = load i64, ptr %59, align 8, !tbaa !11
  %15597 = icmp uge i64 %15595, %15596
  %15598 = zext i1 %15597 to i32
  store i32 %15598, ptr %48, align 4, !tbaa !9
  %15599 = load i32, ptr %48, align 4, !tbaa !9
  %15600 = icmp ne i32 %15599, 0
  br i1 %15600, label %15601, label %15708

15601:                                            ; preds = %15542
  %15602 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15602, ptr %48, align 4, !tbaa !9
  %15603 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %15603, ptr %59, align 8, !tbaa !11
  %15604 = load ptr, ptr %5, align 8, !tbaa !5
  %15605 = getelementptr inbounds %struct.w2c_hermes, ptr %15604, i32 0, i32 6
  %15606 = load i32, ptr %48, align 4, !tbaa !9
  %15607 = zext i32 %15606 to i64
  %15608 = add i64 %15607, 24
  %15609 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15605, i64 noundef %15608, i64 noundef %15609)
  %15610 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15610, ptr %48, align 4, !tbaa !9
  %15611 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %15611, ptr %59, align 8, !tbaa !11
  %15612 = load ptr, ptr %5, align 8, !tbaa !5
  %15613 = getelementptr inbounds %struct.w2c_hermes, ptr %15612, i32 0, i32 6
  %15614 = load i32, ptr %48, align 4, !tbaa !9
  %15615 = zext i32 %15614 to i64
  %15616 = add i64 %15615, 56
  %15617 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15613, i64 noundef %15616, i64 noundef %15617)
  %15618 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15618, ptr %48, align 4, !tbaa !9
  %15619 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15619, ptr %49, align 4, !tbaa !9
  store i32 24, ptr %50, align 4, !tbaa !9
  %15620 = load i32, ptr %50, align 4, !tbaa !9
  %15621 = load i32, ptr %49, align 4, !tbaa !9
  %15622 = add i32 %15621, %15620
  store i32 %15622, ptr %49, align 4, !tbaa !9
  %15623 = load ptr, ptr %5, align 8, !tbaa !5
  %15624 = load i32, ptr %48, align 4, !tbaa !9
  %15625 = load i32, ptr %49, align 4, !tbaa !9
  %15626 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %15623, i32 noundef %15624, i32 noundef %15625)
  store i32 %15626, ptr %48, align 4, !tbaa !9
  %15627 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15627, ptr %14, align 4, !tbaa !9
  %15628 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15628, ptr %48, align 4, !tbaa !9
  %15629 = load ptr, ptr %5, align 8, !tbaa !5
  %15630 = getelementptr inbounds %struct.w2c_hermes, ptr %15629, i32 0, i32 6
  %15631 = load i32, ptr %48, align 4, !tbaa !9
  %15632 = zext i32 %15631 to i64
  %15633 = add i64 %15632, 72
  %15634 = call i32 @i32_load(ptr noundef %15630, i64 noundef %15633)
  store i32 %15634, ptr %48, align 4, !tbaa !9
  %15635 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15635, ptr %7, align 4, !tbaa !9
  %15636 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15636, ptr %49, align 4, !tbaa !9
  %15637 = load ptr, ptr %5, align 8, !tbaa !5
  %15638 = getelementptr inbounds %struct.w2c_hermes, ptr %15637, i32 0, i32 6
  %15639 = load i32, ptr %49, align 4, !tbaa !9
  %15640 = zext i32 %15639 to i64
  %15641 = add i64 %15640, 76
  %15642 = call i32 @i32_load(ptr noundef %15638, i64 noundef %15641)
  store i32 %15642, ptr %49, align 4, !tbaa !9
  %15643 = load i32, ptr %48, align 4, !tbaa !9
  %15644 = load i32, ptr %49, align 4, !tbaa !9
  %15645 = icmp uge i32 %15643, %15644
  %15646 = zext i1 %15645 to i32
  store i32 %15646, ptr %48, align 4, !tbaa !9
  %15647 = load i32, ptr %48, align 4, !tbaa !9
  %15648 = icmp ne i32 %15647, 0
  br i1 %15648, label %15649, label %15668

15649:                                            ; preds = %15601
  %15650 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15650, ptr %48, align 4, !tbaa !9
  store i32 68, ptr %49, align 4, !tbaa !9
  %15651 = load i32, ptr %49, align 4, !tbaa !9
  %15652 = load i32, ptr %48, align 4, !tbaa !9
  %15653 = add i32 %15652, %15651
  store i32 %15653, ptr %48, align 4, !tbaa !9
  %15654 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15654, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %15655 = load ptr, ptr %5, align 8, !tbaa !5
  %15656 = load i32, ptr %48, align 4, !tbaa !9
  %15657 = load i32, ptr %49, align 4, !tbaa !9
  %15658 = load i32, ptr %50, align 4, !tbaa !9
  %15659 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %15655, i32 noundef %15656, i32 noundef %15657, i32 noundef %15658, i32 noundef %15659)
  %15660 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15660, ptr %48, align 4, !tbaa !9
  %15661 = load ptr, ptr %5, align 8, !tbaa !5
  %15662 = getelementptr inbounds %struct.w2c_hermes, ptr %15661, i32 0, i32 6
  %15663 = load i32, ptr %48, align 4, !tbaa !9
  %15664 = zext i32 %15663 to i64
  %15665 = add i64 %15664, 72
  %15666 = call i32 @i32_load(ptr noundef %15662, i64 noundef %15665)
  store i32 %15666, ptr %48, align 4, !tbaa !9
  %15667 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15667, ptr %7, align 4, !tbaa !9
  br label %15668

15668:                                            ; preds = %15649, %15601
  %15669 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15669, ptr %48, align 4, !tbaa !9
  %15670 = load ptr, ptr %5, align 8, !tbaa !5
  %15671 = getelementptr inbounds %struct.w2c_hermes, ptr %15670, i32 0, i32 6
  %15672 = load i32, ptr %48, align 4, !tbaa !9
  %15673 = zext i32 %15672 to i64
  %15674 = add i64 %15673, 68
  %15675 = call i32 @i32_load(ptr noundef %15671, i64 noundef %15674)
  store i32 %15675, ptr %48, align 4, !tbaa !9
  %15676 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15676, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %15677 = load i32, ptr %50, align 4, !tbaa !9
  %15678 = and i32 %15677, 31
  %15679 = load i32, ptr %49, align 4, !tbaa !9
  %15680 = shl i32 %15679, %15678
  store i32 %15680, ptr %49, align 4, !tbaa !9
  %15681 = load i32, ptr %49, align 4, !tbaa !9
  %15682 = load i32, ptr %48, align 4, !tbaa !9
  %15683 = add i32 %15682, %15681
  store i32 %15683, ptr %48, align 4, !tbaa !9
  %15684 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15684, ptr %49, align 4, !tbaa !9
  %15685 = load ptr, ptr %5, align 8, !tbaa !5
  %15686 = getelementptr inbounds %struct.w2c_hermes, ptr %15685, i32 0, i32 6
  %15687 = load i32, ptr %48, align 4, !tbaa !9
  %15688 = zext i32 %15687 to i64
  %15689 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15686, i64 noundef %15688, i32 noundef %15689)
  %15690 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15690, ptr %48, align 4, !tbaa !9
  %15691 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15691, ptr %49, align 4, !tbaa !9
  %15692 = load ptr, ptr %5, align 8, !tbaa !5
  %15693 = getelementptr inbounds %struct.w2c_hermes, ptr %15692, i32 0, i32 6
  %15694 = load i32, ptr %49, align 4, !tbaa !9
  %15695 = zext i32 %15694 to i64
  %15696 = add i64 %15695, 72
  %15697 = call i32 @i32_load(ptr noundef %15693, i64 noundef %15696)
  store i32 %15697, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %15698 = load i32, ptr %50, align 4, !tbaa !9
  %15699 = load i32, ptr %49, align 4, !tbaa !9
  %15700 = add i32 %15699, %15698
  store i32 %15700, ptr %49, align 4, !tbaa !9
  %15701 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %15701, ptr %14, align 4, !tbaa !9
  %15702 = load ptr, ptr %5, align 8, !tbaa !5
  %15703 = getelementptr inbounds %struct.w2c_hermes, ptr %15702, i32 0, i32 6
  %15704 = load i32, ptr %48, align 4, !tbaa !9
  %15705 = zext i32 %15704 to i64
  %15706 = add i64 %15705, 72
  %15707 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15703, i64 noundef %15706, i32 noundef %15707)
  br label %15708

15708:                                            ; preds = %15668, %15542
  %15709 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %15709, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %15710 = load i32, ptr %49, align 4, !tbaa !9
  %15711 = load i32, ptr %48, align 4, !tbaa !9
  %15712 = add i32 %15711, %15710
  store i32 %15712, ptr %48, align 4, !tbaa !9
  %15713 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15713, ptr %7, align 4, !tbaa !9
  %15714 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15714, ptr %48, align 4, !tbaa !9
  %15715 = load ptr, ptr %5, align 8, !tbaa !5
  %15716 = getelementptr inbounds %struct.w2c_hermes, ptr %15715, i32 0, i32 6
  %15717 = load i32, ptr %48, align 4, !tbaa !9
  %15718 = zext i32 %15717 to i64
  %15719 = add i64 %15718, 4
  %15720 = call i32 @i32_load(ptr noundef %15716, i64 noundef %15719)
  store i32 %15720, ptr %48, align 4, !tbaa !9
  %15721 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15721, ptr %11, align 4, !tbaa !9
  %15722 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %15722, ptr %49, align 4, !tbaa !9
  %15723 = load i32, ptr %48, align 4, !tbaa !9
  %15724 = load i32, ptr %49, align 4, !tbaa !9
  %15725 = icmp ne i32 %15723, %15724
  %15726 = zext i1 %15725 to i32
  store i32 %15726, ptr %48, align 4, !tbaa !9
  %15727 = load i32, ptr %48, align 4, !tbaa !9
  %15728 = icmp ne i32 %15727, 0
  br i1 %15728, label %15729, label %15730

15729:                                            ; preds = %15708
  br label %15487

15730:                                            ; preds = %15708
  %15731 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15731, ptr %48, align 4, !tbaa !9
  %15732 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15732, ptr %49, align 4, !tbaa !9
  %15733 = load ptr, ptr %5, align 8, !tbaa !5
  %15734 = getelementptr inbounds %struct.w2c_hermes, ptr %15733, i32 0, i32 6
  %15735 = load i32, ptr %48, align 4, !tbaa !9
  %15736 = zext i32 %15735 to i64
  %15737 = add i64 %15736, 44
  %15738 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15734, i64 noundef %15737, i32 noundef %15738)
  %15739 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15739, ptr %48, align 4, !tbaa !9
  %15740 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15740, ptr %49, align 4, !tbaa !9
  %15741 = load ptr, ptr %5, align 8, !tbaa !5
  %15742 = getelementptr inbounds %struct.w2c_hermes, ptr %15741, i32 0, i32 6
  %15743 = load i32, ptr %49, align 4, !tbaa !9
  %15744 = zext i32 %15743 to i64
  %15745 = add i64 %15744, 68
  %15746 = call i32 @i32_load(ptr noundef %15742, i64 noundef %15745)
  store i32 %15746, ptr %49, align 4, !tbaa !9
  %15747 = load ptr, ptr %5, align 8, !tbaa !5
  %15748 = getelementptr inbounds %struct.w2c_hermes, ptr %15747, i32 0, i32 6
  %15749 = load i32, ptr %48, align 4, !tbaa !9
  %15750 = zext i32 %15749 to i64
  %15751 = add i64 %15750, 40
  %15752 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15748, i64 noundef %15751, i32 noundef %15752)
  %15753 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15753, ptr %48, align 4, !tbaa !9
  store i32 6, ptr %49, align 4, !tbaa !9
  %15754 = load ptr, ptr %5, align 8, !tbaa !5
  %15755 = getelementptr inbounds %struct.w2c_hermes, ptr %15754, i32 0, i32 6
  %15756 = load i32, ptr %48, align 4, !tbaa !9
  %15757 = zext i32 %15756 to i64
  %15758 = add i64 %15757, 52
  %15759 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15755, i64 noundef %15758, i32 noundef %15759)
  %15760 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15760, ptr %48, align 4, !tbaa !9
  store i32 33106, ptr %49, align 4, !tbaa !9
  %15761 = load ptr, ptr %5, align 8, !tbaa !5
  %15762 = getelementptr inbounds %struct.w2c_hermes, ptr %15761, i32 0, i32 6
  %15763 = load i32, ptr %48, align 4, !tbaa !9
  %15764 = zext i32 %15763 to i64
  %15765 = add i64 %15764, 48
  %15766 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15762, i64 noundef %15765, i32 noundef %15766)
  %15767 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15767, ptr %48, align 4, !tbaa !9
  %15768 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15768, ptr %49, align 4, !tbaa !9
  %15769 = load ptr, ptr %5, align 8, !tbaa !5
  %15770 = getelementptr inbounds %struct.w2c_hermes, ptr %15769, i32 0, i32 6
  %15771 = load i32, ptr %49, align 4, !tbaa !9
  %15772 = zext i32 %15771 to i64
  %15773 = add i64 %15772, 40
  %15774 = call i64 @i64_load(ptr noundef %15770, i64 noundef %15773)
  store i64 %15774, ptr %59, align 8, !tbaa !11
  %15775 = load ptr, ptr %5, align 8, !tbaa !5
  %15776 = getelementptr inbounds %struct.w2c_hermes, ptr %15775, i32 0, i32 6
  %15777 = load i32, ptr %48, align 4, !tbaa !9
  %15778 = zext i32 %15777 to i64
  %15779 = add i64 %15778, 8
  %15780 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15776, i64 noundef %15779, i64 noundef %15780)
  %15781 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15781, ptr %48, align 4, !tbaa !9
  %15782 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15782, ptr %49, align 4, !tbaa !9
  %15783 = load ptr, ptr %5, align 8, !tbaa !5
  %15784 = getelementptr inbounds %struct.w2c_hermes, ptr %15783, i32 0, i32 6
  %15785 = load i32, ptr %49, align 4, !tbaa !9
  %15786 = zext i32 %15785 to i64
  %15787 = add i64 %15786, 48
  %15788 = call i64 @i64_load(ptr noundef %15784, i64 noundef %15787)
  store i64 %15788, ptr %59, align 8, !tbaa !11
  %15789 = load ptr, ptr %5, align 8, !tbaa !5
  %15790 = getelementptr inbounds %struct.w2c_hermes, ptr %15789, i32 0, i32 6
  %15791 = load i32, ptr %48, align 4, !tbaa !9
  %15792 = zext i32 %15791 to i64
  %15793 = add i64 %15792, 16
  %15794 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15790, i64 noundef %15793, i64 noundef %15794)
  %15795 = load ptr, ptr %5, align 8, !tbaa !5
  %15796 = getelementptr inbounds %struct.w2c_hermes, ptr %15795, i32 0, i32 3
  %15797 = load i32, ptr %15796, align 8, !tbaa !15
  store i32 %15797, ptr %48, align 4, !tbaa !9
  store i32 48, ptr %49, align 4, !tbaa !9
  %15798 = load i32, ptr %49, align 4, !tbaa !9
  %15799 = load i32, ptr %48, align 4, !tbaa !9
  %15800 = sub i32 %15799, %15798
  store i32 %15800, ptr %48, align 4, !tbaa !9
  %15801 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15801, ptr %7, align 4, !tbaa !9
  %15802 = load i32, ptr %48, align 4, !tbaa !9
  %15803 = load ptr, ptr %5, align 8, !tbaa !5
  %15804 = getelementptr inbounds %struct.w2c_hermes, ptr %15803, i32 0, i32 3
  store i32 %15802, ptr %15804, align 8, !tbaa !15
  %15805 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15805, ptr %48, align 4, !tbaa !9
  store i32 14, ptr %49, align 4, !tbaa !9
  %15806 = load ptr, ptr %5, align 8, !tbaa !5
  %15807 = getelementptr inbounds %struct.w2c_hermes, ptr %15806, i32 0, i32 6
  %15808 = load i32, ptr %48, align 4, !tbaa !9
  %15809 = zext i32 %15808 to i64
  %15810 = add i64 %15809, 44
  %15811 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15807, i64 noundef %15810, i32 noundef %15811)
  %15812 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15812, ptr %48, align 4, !tbaa !9
  store i32 44147, ptr %49, align 4, !tbaa !9
  %15813 = load ptr, ptr %5, align 8, !tbaa !5
  %15814 = getelementptr inbounds %struct.w2c_hermes, ptr %15813, i32 0, i32 6
  %15815 = load i32, ptr %48, align 4, !tbaa !9
  %15816 = zext i32 %15815 to i64
  %15817 = add i64 %15816, 40
  %15818 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15814, i64 noundef %15817, i32 noundef %15818)
  %15819 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15819, ptr %48, align 4, !tbaa !9
  %15820 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15820, ptr %49, align 4, !tbaa !9
  %15821 = load ptr, ptr %5, align 8, !tbaa !5
  %15822 = getelementptr inbounds %struct.w2c_hermes, ptr %15821, i32 0, i32 6
  %15823 = load i32, ptr %49, align 4, !tbaa !9
  %15824 = zext i32 %15823 to i64
  %15825 = add i64 %15824, 40
  %15826 = call i64 @i64_load(ptr noundef %15822, i64 noundef %15825)
  store i64 %15826, ptr %59, align 8, !tbaa !11
  %15827 = load ptr, ptr %5, align 8, !tbaa !5
  %15828 = getelementptr inbounds %struct.w2c_hermes, ptr %15827, i32 0, i32 6
  %15829 = load i32, ptr %48, align 4, !tbaa !9
  %15830 = zext i32 %15829 to i64
  %15831 = add i64 %15830, 16
  %15832 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15828, i64 noundef %15831, i64 noundef %15832)
  %15833 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15833, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %15834 = load i32, ptr %49, align 4, !tbaa !9
  %15835 = load i32, ptr %48, align 4, !tbaa !9
  %15836 = add i32 %15835, %15834
  store i32 %15836, ptr %48, align 4, !tbaa !9
  %15837 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15837, ptr %11, align 4, !tbaa !9
  %15838 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15838, ptr %49, align 4, !tbaa !9
  store i32 16, ptr %50, align 4, !tbaa !9
  %15839 = load i32, ptr %50, align 4, !tbaa !9
  %15840 = load i32, ptr %49, align 4, !tbaa !9
  %15841 = add i32 %15840, %15839
  store i32 %15841, ptr %49, align 4, !tbaa !9
  %15842 = load ptr, ptr %5, align 8, !tbaa !5
  %15843 = load i32, ptr %48, align 4, !tbaa !9
  %15844 = load i32, ptr %49, align 4, !tbaa !9
  %15845 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryLoadGlobalPropertyInst0x28llvh0x3A0x3AStringRef0x29(ptr noundef %15842, i32 noundef %15843, i32 noundef %15844)
  store i32 %15845, ptr %48, align 4, !tbaa !9
  %15846 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15846, ptr %12, align 4, !tbaa !9
  %15847 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15847, ptr %48, align 4, !tbaa !9
  %15848 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15848, ptr %49, align 4, !tbaa !9
  %15849 = load ptr, ptr %5, align 8, !tbaa !5
  %15850 = getelementptr inbounds %struct.w2c_hermes, ptr %15849, i32 0, i32 6
  %15851 = load i32, ptr %49, align 4, !tbaa !9
  %15852 = zext i32 %15851 to i64
  %15853 = add i64 %15852, 16
  %15854 = call i64 @i64_load(ptr noundef %15850, i64 noundef %15853)
  store i64 %15854, ptr %59, align 8, !tbaa !11
  %15855 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %15855, ptr %31, align 8, !tbaa !11
  %15856 = load ptr, ptr %5, align 8, !tbaa !5
  %15857 = getelementptr inbounds %struct.w2c_hermes, ptr %15856, i32 0, i32 6
  %15858 = load i32, ptr %48, align 4, !tbaa !9
  %15859 = zext i32 %15858 to i64
  %15860 = add i64 %15859, 8
  %15861 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15857, i64 noundef %15860, i64 noundef %15861)
  %15862 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15862, ptr %48, align 4, !tbaa !9
  %15863 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %15863, ptr %59, align 8, !tbaa !11
  %15864 = load ptr, ptr %5, align 8, !tbaa !5
  %15865 = getelementptr inbounds %struct.w2c_hermes, ptr %15864, i32 0, i32 6
  %15866 = load i32, ptr %48, align 4, !tbaa !9
  %15867 = zext i32 %15866 to i64
  %15868 = add i64 %15867, 32
  %15869 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15865, i64 noundef %15868, i64 noundef %15869)
  %15870 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15870, ptr %48, align 4, !tbaa !9
  %15871 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15871, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %15872 = load i32, ptr %50, align 4, !tbaa !9
  %15873 = load i32, ptr %49, align 4, !tbaa !9
  %15874 = add i32 %15873, %15872
  store i32 %15874, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %15875 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15875, ptr %51, align 4, !tbaa !9
  %15876 = load i32, ptr %51, align 4, !tbaa !9
  %15877 = icmp ne i32 %15876, 0
  br i1 %15877, label %15878, label %15880

15878:                                            ; preds = %15730
  %15879 = load i32, ptr %49, align 4, !tbaa !9
  br label %15882

15880:                                            ; preds = %15730
  %15881 = load i32, ptr %50, align 4, !tbaa !9
  br label %15882

15882:                                            ; preds = %15880, %15878
  %15883 = phi i32 [ %15879, %15878 ], [ %15881, %15880 ]
  store i32 %15883, ptr %49, align 4, !tbaa !9
  %15884 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15884, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %15885 = load i32, ptr %51, align 4, !tbaa !9
  %15886 = load i32, ptr %50, align 4, !tbaa !9
  %15887 = add i32 %15886, %15885
  store i32 %15887, ptr %50, align 4, !tbaa !9
  %15888 = load ptr, ptr %5, align 8, !tbaa !5
  %15889 = load i32, ptr %48, align 4, !tbaa !9
  %15890 = load i32, ptr %49, align 4, !tbaa !9
  %15891 = load i32, ptr %50, align 4, !tbaa !9
  %15892 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef %15888, i32 noundef %15889, i32 noundef %15890, i32 noundef %15891)
  store i32 %15892, ptr %48, align 4, !tbaa !9
  %15893 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15893, ptr %12, align 4, !tbaa !9
  %15894 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15894, ptr %48, align 4, !tbaa !9
  %15895 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15895, ptr %49, align 4, !tbaa !9
  %15896 = load ptr, ptr %5, align 8, !tbaa !5
  %15897 = getelementptr inbounds %struct.w2c_hermes, ptr %15896, i32 0, i32 6
  %15898 = load i32, ptr %49, align 4, !tbaa !9
  %15899 = zext i32 %15898 to i64
  %15900 = add i64 %15899, 8
  %15901 = call i64 @i64_load(ptr noundef %15897, i64 noundef %15900)
  store i64 %15901, ptr %59, align 8, !tbaa !11
  %15902 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %15902, ptr %31, align 8, !tbaa !11
  %15903 = load ptr, ptr %5, align 8, !tbaa !5
  %15904 = getelementptr inbounds %struct.w2c_hermes, ptr %15903, i32 0, i32 6
  %15905 = load i32, ptr %48, align 4, !tbaa !9
  %15906 = zext i32 %15905 to i64
  %15907 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15904, i64 noundef %15906, i64 noundef %15907)
  %15908 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15908, ptr %48, align 4, !tbaa !9
  %15909 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %15909, ptr %59, align 8, !tbaa !11
  %15910 = load ptr, ptr %5, align 8, !tbaa !5
  %15911 = getelementptr inbounds %struct.w2c_hermes, ptr %15910, i32 0, i32 6
  %15912 = load i32, ptr %48, align 4, !tbaa !9
  %15913 = zext i32 %15912 to i64
  %15914 = add i64 %15913, 24
  %15915 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15911, i64 noundef %15914, i64 noundef %15915)
  %15916 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15916, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %15917 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15917, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %15918 = load i32, ptr %51, align 4, !tbaa !9
  %15919 = load i32, ptr %50, align 4, !tbaa !9
  %15920 = add i32 %15919, %15918
  store i32 %15920, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %15921 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15921, ptr %52, align 4, !tbaa !9
  %15922 = load i32, ptr %52, align 4, !tbaa !9
  %15923 = icmp ne i32 %15922, 0
  br i1 %15923, label %15924, label %15926

15924:                                            ; preds = %15882
  %15925 = load i32, ptr %50, align 4, !tbaa !9
  br label %15928

15926:                                            ; preds = %15882
  %15927 = load i32, ptr %51, align 4, !tbaa !9
  br label %15928

15928:                                            ; preds = %15926, %15924
  %15929 = phi i32 [ %15925, %15924 ], [ %15927, %15926 ]
  store i32 %15929, ptr %50, align 4, !tbaa !9
  %15930 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15930, ptr %51, align 4, !tbaa !9
  %15931 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15931, ptr %52, align 4, !tbaa !9
  %15932 = load ptr, ptr %5, align 8, !tbaa !5
  %15933 = load i32, ptr %48, align 4, !tbaa !9
  %15934 = load i32, ptr %49, align 4, !tbaa !9
  %15935 = load i32, ptr %50, align 4, !tbaa !9
  %15936 = load i32, ptr %51, align 4, !tbaa !9
  %15937 = load i32, ptr %52, align 4, !tbaa !9
  %15938 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %15932, i32 noundef %15933, i32 noundef %15934, i32 noundef %15935, i32 noundef %15936, i32 noundef %15937)
  store i32 %15938, ptr %48, align 4, !tbaa !9
  %15939 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15939, ptr %9, align 4, !tbaa !9
  %15940 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15940, ptr %48, align 4, !tbaa !9
  store i32 48, ptr %49, align 4, !tbaa !9
  %15941 = load i32, ptr %49, align 4, !tbaa !9
  %15942 = load i32, ptr %48, align 4, !tbaa !9
  %15943 = add i32 %15942, %15941
  store i32 %15943, ptr %48, align 4, !tbaa !9
  %15944 = load i32, ptr %48, align 4, !tbaa !9
  %15945 = load ptr, ptr %5, align 8, !tbaa !5
  %15946 = getelementptr inbounds %struct.w2c_hermes, ptr %15945, i32 0, i32 3
  store i32 %15944, ptr %15946, align 8, !tbaa !15
  %15947 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15947, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %15948 = load i32, ptr %49, align 4, !tbaa !9
  %15949 = load i32, ptr %48, align 4, !tbaa !9
  %15950 = add i32 %15949, %15948
  store i32 %15950, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %15951 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15951, ptr %50, align 4, !tbaa !9
  %15952 = load i32, ptr %50, align 4, !tbaa !9
  %15953 = icmp ne i32 %15952, 0
  br i1 %15953, label %15954, label %15956

15954:                                            ; preds = %15928
  %15955 = load i32, ptr %48, align 4, !tbaa !9
  br label %15958

15956:                                            ; preds = %15928
  %15957 = load i32, ptr %49, align 4, !tbaa !9
  br label %15958

15958:                                            ; preds = %15956, %15954
  %15959 = phi i32 [ %15955, %15954 ], [ %15957, %15956 ]
  store i32 %15959, ptr %48, align 4, !tbaa !9
  %15960 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15960, ptr %9, align 4, !tbaa !9
  %15961 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15961, ptr %48, align 4, !tbaa !9
  %15962 = load ptr, ptr %5, align 8, !tbaa !5
  %15963 = getelementptr inbounds %struct.w2c_hermes, ptr %15962, i32 0, i32 6
  %15964 = load i32, ptr %48, align 4, !tbaa !9
  %15965 = zext i32 %15964 to i64
  %15966 = add i64 %15965, 68
  %15967 = call i32 @i32_load(ptr noundef %15963, i64 noundef %15966)
  store i32 %15967, ptr %48, align 4, !tbaa !9
  %15968 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %15968, ptr %7, align 4, !tbaa !9
  %15969 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15969, ptr %49, align 4, !tbaa !9
  %15970 = load i32, ptr %48, align 4, !tbaa !9
  %15971 = load i32, ptr %49, align 4, !tbaa !9
  %15972 = icmp eq i32 %15970, %15971
  %15973 = zext i1 %15972 to i32
  store i32 %15973, ptr %48, align 4, !tbaa !9
  %15974 = load i32, ptr %48, align 4, !tbaa !9
  %15975 = icmp ne i32 %15974, 0
  br i1 %15975, label %15976, label %15977

15976:                                            ; preds = %15958
  br label %15981

15977:                                            ; preds = %15958
  %15978 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15978, ptr %48, align 4, !tbaa !9
  %15979 = load ptr, ptr %5, align 8, !tbaa !5
  %15980 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %15979, i32 noundef %15980)
  br label %15981

15981:                                            ; preds = %15977, %15976, %15461
  %15982 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15982, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %15983 = load i32, ptr %49, align 4, !tbaa !9
  %15984 = load i32, ptr %48, align 4, !tbaa !9
  %15985 = add i32 %15984, %15983
  store i32 %15985, ptr %48, align 4, !tbaa !9
  %15986 = load i32, ptr %48, align 4, !tbaa !9
  %15987 = load ptr, ptr %5, align 8, !tbaa !5
  %15988 = getelementptr inbounds %struct.w2c_hermes, ptr %15987, i32 0, i32 3
  store i32 %15986, ptr %15988, align 8, !tbaa !15
  %15989 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15989, ptr %48, align 4, !tbaa !9
  br label %22463

15990:                                            ; preds = %15381, %15372
  %15991 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15991, ptr %48, align 4, !tbaa !9
  %15992 = load i32, ptr %48, align 4, !tbaa !9
  %15993 = icmp ne i32 %15992, 0
  %15994 = xor i1 %15993, true
  %15995 = zext i1 %15994 to i32
  store i32 %15995, ptr %48, align 4, !tbaa !9
  %15996 = load i32, ptr %48, align 4, !tbaa !9
  %15997 = icmp ne i32 %15996, 0
  br i1 %15997, label %15998, label %15999

15998:                                            ; preds = %15990
  br label %19917

15999:                                            ; preds = %15990
  %16000 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16000, ptr %48, align 4, !tbaa !9
  store i32 70, ptr %49, align 4, !tbaa !9
  %16001 = load i32, ptr %48, align 4, !tbaa !9
  %16002 = load i32, ptr %49, align 4, !tbaa !9
  %16003 = icmp ne i32 %16001, %16002
  %16004 = zext i1 %16003 to i32
  store i32 %16004, ptr %48, align 4, !tbaa !9
  %16005 = load i32, ptr %48, align 4, !tbaa !9
  %16006 = icmp ne i32 %16005, 0
  br i1 %16006, label %16007, label %16008

16007:                                            ; preds = %15999
  br label %19917

16008:                                            ; preds = %15999
  %16009 = load ptr, ptr %5, align 8, !tbaa !5
  %16010 = getelementptr inbounds %struct.w2c_hermes, ptr %16009, i32 0, i32 3
  %16011 = load i32, ptr %16010, align 8, !tbaa !15
  store i32 %16011, ptr %48, align 4, !tbaa !9
  store i32 144, ptr %49, align 4, !tbaa !9
  %16012 = load i32, ptr %49, align 4, !tbaa !9
  %16013 = load i32, ptr %48, align 4, !tbaa !9
  %16014 = sub i32 %16013, %16012
  store i32 %16014, ptr %48, align 4, !tbaa !9
  %16015 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16015, ptr %13, align 4, !tbaa !9
  %16016 = load i32, ptr %48, align 4, !tbaa !9
  %16017 = load ptr, ptr %5, align 8, !tbaa !5
  %16018 = getelementptr inbounds %struct.w2c_hermes, ptr %16017, i32 0, i32 3
  store i32 %16016, ptr %16018, align 8, !tbaa !15
  %16019 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16019, ptr %48, align 4, !tbaa !9
  %16020 = load ptr, ptr %5, align 8, !tbaa !5
  %16021 = getelementptr inbounds %struct.w2c_hermes, ptr %16020, i32 0, i32 6
  %16022 = load i32, ptr %48, align 4, !tbaa !9
  %16023 = zext i32 %16022 to i64
  %16024 = add i64 %16023, 32
  %16025 = call i32 @i32_load(ptr noundef %16021, i64 noundef %16024)
  store i32 %16025, ptr %48, align 4, !tbaa !9
  %16026 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16026, ptr %20, align 4, !tbaa !9
  %16027 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16027, ptr %48, align 4, !tbaa !9
  store i64 8589934592, ptr %59, align 8, !tbaa !11
  %16028 = load ptr, ptr %5, align 8, !tbaa !5
  %16029 = getelementptr inbounds %struct.w2c_hermes, ptr %16028, i32 0, i32 6
  %16030 = load i32, ptr %48, align 4, !tbaa !9
  %16031 = zext i32 %16030 to i64
  %16032 = add i64 %16031, 128
  %16033 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16029, i64 noundef %16032, i64 noundef %16033)
  %16034 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16034, ptr %48, align 4, !tbaa !9
  %16035 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16035, ptr %49, align 4, !tbaa !9
  store i32 136, ptr %50, align 4, !tbaa !9
  %16036 = load i32, ptr %50, align 4, !tbaa !9
  %16037 = load i32, ptr %49, align 4, !tbaa !9
  %16038 = add i32 %16037, %16036
  store i32 %16038, ptr %49, align 4, !tbaa !9
  %16039 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16039, ptr %23, align 4, !tbaa !9
  %16040 = load ptr, ptr %5, align 8, !tbaa !5
  %16041 = getelementptr inbounds %struct.w2c_hermes, ptr %16040, i32 0, i32 6
  %16042 = load i32, ptr %48, align 4, !tbaa !9
  %16043 = zext i32 %16042 to i64
  %16044 = add i64 %16043, 124
  %16045 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16041, i64 noundef %16044, i32 noundef %16045)
  %16046 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16046, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %16047 = load ptr, ptr %5, align 8, !tbaa !5
  %16048 = getelementptr inbounds %struct.w2c_hermes, ptr %16047, i32 0, i32 6
  %16049 = load i32, ptr %48, align 4, !tbaa !9
  %16050 = zext i32 %16049 to i64
  %16051 = add i64 %16050, 120
  %16052 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16048, i64 noundef %16051, i32 noundef %16052)
  %16053 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16053, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %16054 = load ptr, ptr %5, align 8, !tbaa !5
  %16055 = getelementptr inbounds %struct.w2c_hermes, ptr %16054, i32 0, i32 6
  %16056 = load i32, ptr %48, align 4, !tbaa !9
  %16057 = zext i32 %16056 to i64
  %16058 = add i64 %16057, 112
  %16059 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16055, i64 noundef %16058, i64 noundef %16059)
  %16060 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %16060, ptr %48, align 4, !tbaa !9
  %16061 = load ptr, ptr %5, align 8, !tbaa !5
  %16062 = getelementptr inbounds %struct.w2c_hermes, ptr %16061, i32 0, i32 6
  %16063 = load i32, ptr %48, align 4, !tbaa !9
  %16064 = zext i32 %16063 to i64
  %16065 = add i64 %16064, 32
  %16066 = call i32 @i32_load(ptr noundef %16062, i64 noundef %16065)
  store i32 %16066, ptr %48, align 4, !tbaa !9
  %16067 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16067, ptr %9, align 4, !tbaa !9
  %16068 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %16068, ptr %49, align 4, !tbaa !9
  store i32 28, ptr %50, align 4, !tbaa !9
  %16069 = load i32, ptr %50, align 4, !tbaa !9
  %16070 = load i32, ptr %49, align 4, !tbaa !9
  %16071 = add i32 %16070, %16069
  store i32 %16071, ptr %49, align 4, !tbaa !9
  %16072 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16072, ptr %24, align 4, !tbaa !9
  %16073 = load i32, ptr %48, align 4, !tbaa !9
  %16074 = load i32, ptr %49, align 4, !tbaa !9
  %16075 = icmp eq i32 %16073, %16074
  %16076 = zext i1 %16075 to i32
  store i32 %16076, ptr %48, align 4, !tbaa !9
  %16077 = load i32, ptr %48, align 4, !tbaa !9
  %16078 = icmp ne i32 %16077, 0
  br i1 %16078, label %16079, label %16080

16079:                                            ; preds = %16008
  br label %16352

16080:                                            ; preds = %16008
  %16081 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16081, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %16082 = load i32, ptr %49, align 4, !tbaa !9
  %16083 = load i32, ptr %48, align 4, !tbaa !9
  %16084 = add i32 %16083, %16082
  store i32 %16084, ptr %48, align 4, !tbaa !9
  %16085 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16085, ptr %12, align 4, !tbaa !9
  br label %16086

16086:                                            ; preds = %16346, %16080
  %16087 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16087, ptr %48, align 4, !tbaa !9
  %16088 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16088, ptr %49, align 4, !tbaa !9
  %16089 = load ptr, ptr %5, align 8, !tbaa !5
  %16090 = getelementptr inbounds %struct.w2c_hermes, ptr %16089, i32 0, i32 6
  %16091 = load i32, ptr %49, align 4, !tbaa !9
  %16092 = zext i32 %16091 to i64
  %16093 = add i64 %16092, 36
  %16094 = call i32 @i32_load(ptr noundef %16090, i64 noundef %16093)
  store i32 %16094, ptr %49, align 4, !tbaa !9
  %16095 = load ptr, ptr %5, align 8, !tbaa !5
  %16096 = getelementptr inbounds %struct.w2c_hermes, ptr %16095, i32 0, i32 6
  %16097 = load i32, ptr %49, align 4, !tbaa !9
  %16098 = zext i32 %16097 to i64
  %16099 = call i64 @i64_load(ptr noundef %16096, i64 noundef %16098)
  store i64 %16099, ptr %59, align 8, !tbaa !11
  %16100 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %16100, ptr %31, align 8, !tbaa !11
  %16101 = load ptr, ptr %5, align 8, !tbaa !5
  %16102 = getelementptr inbounds %struct.w2c_hermes, ptr %16101, i32 0, i32 6
  %16103 = load i32, ptr %48, align 4, !tbaa !9
  %16104 = zext i32 %16103 to i64
  %16105 = add i64 %16104, 40
  %16106 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16102, i64 noundef %16105, i64 noundef %16106)
  %16107 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16107, ptr %48, align 4, !tbaa !9
  %16108 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %16108, ptr %59, align 8, !tbaa !11
  %16109 = load ptr, ptr %5, align 8, !tbaa !5
  %16110 = getelementptr inbounds %struct.w2c_hermes, ptr %16109, i32 0, i32 6
  %16111 = load i32, ptr %48, align 4, !tbaa !9
  %16112 = zext i32 %16111 to i64
  %16113 = add i64 %16112, 104
  %16114 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16110, i64 noundef %16113, i64 noundef %16114)
  %16115 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %16115, ptr %48, align 4, !tbaa !9
  %16116 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16116, ptr %49, align 4, !tbaa !9
  store i32 40, ptr %50, align 4, !tbaa !9
  %16117 = load i32, ptr %50, align 4, !tbaa !9
  %16118 = load i32, ptr %49, align 4, !tbaa !9
  %16119 = add i32 %16118, %16117
  store i32 %16119, ptr %49, align 4, !tbaa !9
  %16120 = load ptr, ptr %5, align 8, !tbaa !5
  %16121 = load i32, ptr %48, align 4, !tbaa !9
  %16122 = load i32, ptr %49, align 4, !tbaa !9
  %16123 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %16120, i32 noundef %16121, i32 noundef %16122)
  store i32 %16123, ptr %48, align 4, !tbaa !9
  %16124 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16124, ptr %10, align 4, !tbaa !9
  %16125 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16125, ptr %48, align 4, !tbaa !9
  %16126 = load ptr, ptr %5, align 8, !tbaa !5
  %16127 = getelementptr inbounds %struct.w2c_hermes, ptr %16126, i32 0, i32 6
  %16128 = load i32, ptr %48, align 4, !tbaa !9
  %16129 = zext i32 %16128 to i64
  %16130 = add i64 %16129, 116
  %16131 = call i32 @i32_load(ptr noundef %16127, i64 noundef %16130)
  store i32 %16131, ptr %48, align 4, !tbaa !9
  %16132 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16132, ptr %8, align 4, !tbaa !9
  %16133 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16133, ptr %49, align 4, !tbaa !9
  %16134 = load ptr, ptr %5, align 8, !tbaa !5
  %16135 = getelementptr inbounds %struct.w2c_hermes, ptr %16134, i32 0, i32 6
  %16136 = load i32, ptr %49, align 4, !tbaa !9
  %16137 = zext i32 %16136 to i64
  %16138 = add i64 %16137, 120
  %16139 = call i32 @i32_load(ptr noundef %16135, i64 noundef %16138)
  store i32 %16139, ptr %49, align 4, !tbaa !9
  %16140 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16140, ptr %14, align 4, !tbaa !9
  %16141 = load i32, ptr %48, align 4, !tbaa !9
  %16142 = load i32, ptr %49, align 4, !tbaa !9
  %16143 = icmp ult i32 %16141, %16142
  %16144 = zext i1 %16143 to i32
  store i32 %16144, ptr %48, align 4, !tbaa !9
  %16145 = load i32, ptr %48, align 4, !tbaa !9
  %16146 = icmp ne i32 %16145, 0
  br i1 %16146, label %16147, label %16166

16147:                                            ; preds = %16086
  %16148 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16148, ptr %48, align 4, !tbaa !9
  %16149 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16149, ptr %49, align 4, !tbaa !9
  %16150 = load ptr, ptr %5, align 8, !tbaa !5
  %16151 = getelementptr inbounds %struct.w2c_hermes, ptr %16150, i32 0, i32 6
  %16152 = load i32, ptr %48, align 4, !tbaa !9
  %16153 = zext i32 %16152 to i64
  %16154 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16151, i64 noundef %16153, i32 noundef %16154)
  %16155 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16155, ptr %48, align 4, !tbaa !9
  %16156 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16156, ptr %49, align 4, !tbaa !9
  store i32 4, ptr %50, align 4, !tbaa !9
  %16157 = load i32, ptr %50, align 4, !tbaa !9
  %16158 = load i32, ptr %49, align 4, !tbaa !9
  %16159 = add i32 %16158, %16157
  store i32 %16159, ptr %49, align 4, !tbaa !9
  %16160 = load ptr, ptr %5, align 8, !tbaa !5
  %16161 = getelementptr inbounds %struct.w2c_hermes, ptr %16160, i32 0, i32 6
  %16162 = load i32, ptr %48, align 4, !tbaa !9
  %16163 = zext i32 %16162 to i64
  %16164 = add i64 %16163, 116
  %16165 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16161, i64 noundef %16164, i32 noundef %16165)
  br label %16330

16166:                                            ; preds = %16086
  %16167 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16167, ptr %48, align 4, !tbaa !9
  %16168 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16168, ptr %49, align 4, !tbaa !9
  %16169 = load ptr, ptr %5, align 8, !tbaa !5
  %16170 = getelementptr inbounds %struct.w2c_hermes, ptr %16169, i32 0, i32 6
  %16171 = load i32, ptr %49, align 4, !tbaa !9
  %16172 = zext i32 %16171 to i64
  %16173 = add i64 %16172, 112
  %16174 = call i32 @i32_load(ptr noundef %16170, i64 noundef %16173)
  store i32 %16174, ptr %49, align 4, !tbaa !9
  %16175 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16175, ptr %8, align 4, !tbaa !9
  %16176 = load i32, ptr %49, align 4, !tbaa !9
  %16177 = load i32, ptr %48, align 4, !tbaa !9
  %16178 = sub i32 %16177, %16176
  store i32 %16178, ptr %48, align 4, !tbaa !9
  %16179 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16179, ptr %15, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %16180 = load i32, ptr %48, align 4, !tbaa !9
  %16181 = load i32, ptr %49, align 4, !tbaa !9
  %16182 = and i32 %16181, 31
  %16183 = ashr i32 %16180, %16182
  store i32 %16183, ptr %48, align 4, !tbaa !9
  %16184 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16184, ptr %16, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %16185 = load i32, ptr %49, align 4, !tbaa !9
  %16186 = load i32, ptr %48, align 4, !tbaa !9
  %16187 = add i32 %16186, %16185
  store i32 %16187, ptr %48, align 4, !tbaa !9
  %16188 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16188, ptr %11, align 4, !tbaa !9
  store i32 1073741824, ptr %49, align 4, !tbaa !9
  %16189 = load i32, ptr %48, align 4, !tbaa !9
  %16190 = load i32, ptr %49, align 4, !tbaa !9
  %16191 = icmp uge i32 %16189, %16190
  %16192 = zext i1 %16191 to i32
  store i32 %16192, ptr %48, align 4, !tbaa !9
  %16193 = load i32, ptr %48, align 4, !tbaa !9
  %16194 = icmp ne i32 %16193, 0
  br i1 %16194, label %16195, label %16196

16195:                                            ; preds = %16166
  br label %16348

16196:                                            ; preds = %16166
  store i32 1073741823, ptr %48, align 4, !tbaa !9
  %16197 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16197, ptr %49, align 4, !tbaa !9
  %16198 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16198, ptr %50, align 4, !tbaa !9
  %16199 = load i32, ptr %50, align 4, !tbaa !9
  %16200 = load i32, ptr %49, align 4, !tbaa !9
  %16201 = sub i32 %16200, %16199
  store i32 %16201, ptr %49, align 4, !tbaa !9
  %16202 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16202, ptr %14, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %16203 = load i32, ptr %49, align 4, !tbaa !9
  %16204 = load i32, ptr %50, align 4, !tbaa !9
  %16205 = and i32 %16204, 31
  %16206 = ashr i32 %16203, %16205
  store i32 %16206, ptr %49, align 4, !tbaa !9
  %16207 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16207, ptr %17, align 4, !tbaa !9
  %16208 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16208, ptr %50, align 4, !tbaa !9
  %16209 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16209, ptr %51, align 4, !tbaa !9
  %16210 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %16210, ptr %52, align 4, !tbaa !9
  %16211 = load i32, ptr %51, align 4, !tbaa !9
  %16212 = load i32, ptr %52, align 4, !tbaa !9
  %16213 = icmp ult i32 %16211, %16212
  %16214 = zext i1 %16213 to i32
  store i32 %16214, ptr %51, align 4, !tbaa !9
  %16215 = load i32, ptr %51, align 4, !tbaa !9
  %16216 = icmp ne i32 %16215, 0
  br i1 %16216, label %16217, label %16219

16217:                                            ; preds = %16196
  %16218 = load i32, ptr %49, align 4, !tbaa !9
  br label %16221

16219:                                            ; preds = %16196
  %16220 = load i32, ptr %50, align 4, !tbaa !9
  br label %16221

16221:                                            ; preds = %16219, %16217
  %16222 = phi i32 [ %16218, %16217 ], [ %16220, %16219 ]
  store i32 %16222, ptr %49, align 4, !tbaa !9
  %16223 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16223, ptr %50, align 4, !tbaa !9
  store i32 2147483644, ptr %51, align 4, !tbaa !9
  %16224 = load i32, ptr %50, align 4, !tbaa !9
  %16225 = load i32, ptr %51, align 4, !tbaa !9
  %16226 = icmp uge i32 %16224, %16225
  %16227 = zext i1 %16226 to i32
  store i32 %16227, ptr %50, align 4, !tbaa !9
  %16228 = load i32, ptr %50, align 4, !tbaa !9
  %16229 = icmp ne i32 %16228, 0
  br i1 %16229, label %16230, label %16232

16230:                                            ; preds = %16221
  %16231 = load i32, ptr %48, align 4, !tbaa !9
  br label %16234

16232:                                            ; preds = %16221
  %16233 = load i32, ptr %49, align 4, !tbaa !9
  br label %16234

16234:                                            ; preds = %16232, %16230
  %16235 = phi i32 [ %16231, %16230 ], [ %16233, %16232 ]
  store i32 %16235, ptr %48, align 4, !tbaa !9
  %16236 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16236, ptr %11, align 4, !tbaa !9
  %16237 = load i32, ptr %48, align 4, !tbaa !9
  %16238 = icmp ne i32 %16237, 0
  br i1 %16238, label %16239, label %16257

16239:                                            ; preds = %16234
  %16240 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16240, ptr %48, align 4, !tbaa !9
  store i32 1073741824, ptr %49, align 4, !tbaa !9
  %16241 = load i32, ptr %48, align 4, !tbaa !9
  %16242 = load i32, ptr %49, align 4, !tbaa !9
  %16243 = icmp uge i32 %16241, %16242
  %16244 = zext i1 %16243 to i32
  store i32 %16244, ptr %48, align 4, !tbaa !9
  %16245 = load i32, ptr %48, align 4, !tbaa !9
  %16246 = icmp ne i32 %16245, 0
  br i1 %16246, label %16247, label %16248

16247:                                            ; preds = %16239
  br label %16350

16248:                                            ; preds = %16239
  %16249 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16249, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %16250 = load i32, ptr %49, align 4, !tbaa !9
  %16251 = and i32 %16250, 31
  %16252 = load i32, ptr %48, align 4, !tbaa !9
  %16253 = shl i32 %16252, %16251
  store i32 %16253, ptr %48, align 4, !tbaa !9
  %16254 = load ptr, ptr %5, align 8, !tbaa !5
  %16255 = load i32, ptr %48, align 4, !tbaa !9
  %16256 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %16254, i32 noundef %16255)
  store i32 %16256, ptr %48, align 4, !tbaa !9
  br label %16258

16257:                                            ; preds = %16234
  store i32 0, ptr %48, align 4, !tbaa !9
  br label %16258

16258:                                            ; preds = %16257, %16248
  %16259 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16259, ptr %14, align 4, !tbaa !9
  %16260 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %16260, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %16261 = load i32, ptr %50, align 4, !tbaa !9
  %16262 = and i32 %16261, 31
  %16263 = load i32, ptr %49, align 4, !tbaa !9
  %16264 = shl i32 %16263, %16262
  store i32 %16264, ptr %49, align 4, !tbaa !9
  %16265 = load i32, ptr %49, align 4, !tbaa !9
  %16266 = load i32, ptr %48, align 4, !tbaa !9
  %16267 = add i32 %16266, %16265
  store i32 %16267, ptr %48, align 4, !tbaa !9
  %16268 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16268, ptr %16, align 4, !tbaa !9
  %16269 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16269, ptr %49, align 4, !tbaa !9
  %16270 = load ptr, ptr %5, align 8, !tbaa !5
  %16271 = getelementptr inbounds %struct.w2c_hermes, ptr %16270, i32 0, i32 6
  %16272 = load i32, ptr %48, align 4, !tbaa !9
  %16273 = zext i32 %16272 to i64
  %16274 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16271, i64 noundef %16273, i32 noundef %16274)
  %16275 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16275, ptr %48, align 4, !tbaa !9
  %16276 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16276, ptr %49, align 4, !tbaa !9
  %16277 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16277, ptr %50, align 4, !tbaa !9
  %16278 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %16278, ptr %51, align 4, !tbaa !9
  %16279 = load ptr, ptr %5, align 8, !tbaa !5
  %16280 = load i32, ptr %49, align 4, !tbaa !9
  %16281 = load i32, ptr %50, align 4, !tbaa !9
  %16282 = load i32, ptr %51, align 4, !tbaa !9
  %16283 = call i32 @w2c_hermes_memmove(ptr noundef %16279, i32 noundef %16280, i32 noundef %16281, i32 noundef %16282)
  store i32 %16283, ptr %49, align 4, !tbaa !9
  %16284 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16284, ptr %10, align 4, !tbaa !9
  %16285 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16285, ptr %50, align 4, !tbaa !9
  store i32 2, ptr %51, align 4, !tbaa !9
  %16286 = load i32, ptr %51, align 4, !tbaa !9
  %16287 = and i32 %16286, 31
  %16288 = load i32, ptr %50, align 4, !tbaa !9
  %16289 = shl i32 %16288, %16287
  store i32 %16289, ptr %50, align 4, !tbaa !9
  %16290 = load i32, ptr %50, align 4, !tbaa !9
  %16291 = load i32, ptr %49, align 4, !tbaa !9
  %16292 = add i32 %16291, %16290
  store i32 %16292, ptr %49, align 4, !tbaa !9
  %16293 = load ptr, ptr %5, align 8, !tbaa !5
  %16294 = getelementptr inbounds %struct.w2c_hermes, ptr %16293, i32 0, i32 6
  %16295 = load i32, ptr %48, align 4, !tbaa !9
  %16296 = zext i32 %16295 to i64
  %16297 = add i64 %16296, 120
  %16298 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16294, i64 noundef %16297, i32 noundef %16298)
  %16299 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16299, ptr %48, align 4, !tbaa !9
  %16300 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %16300, ptr %49, align 4, !tbaa !9
  store i32 4, ptr %50, align 4, !tbaa !9
  %16301 = load i32, ptr %50, align 4, !tbaa !9
  %16302 = load i32, ptr %49, align 4, !tbaa !9
  %16303 = add i32 %16302, %16301
  store i32 %16303, ptr %49, align 4, !tbaa !9
  %16304 = load ptr, ptr %5, align 8, !tbaa !5
  %16305 = getelementptr inbounds %struct.w2c_hermes, ptr %16304, i32 0, i32 6
  %16306 = load i32, ptr %48, align 4, !tbaa !9
  %16307 = zext i32 %16306 to i64
  %16308 = add i64 %16307, 116
  %16309 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16305, i64 noundef %16308, i32 noundef %16309)
  %16310 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16310, ptr %48, align 4, !tbaa !9
  %16311 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16311, ptr %49, align 4, !tbaa !9
  %16312 = load ptr, ptr %5, align 8, !tbaa !5
  %16313 = getelementptr inbounds %struct.w2c_hermes, ptr %16312, i32 0, i32 6
  %16314 = load i32, ptr %48, align 4, !tbaa !9
  %16315 = zext i32 %16314 to i64
  %16316 = add i64 %16315, 112
  %16317 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16313, i64 noundef %16316, i32 noundef %16317)
  %16318 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16318, ptr %48, align 4, !tbaa !9
  %16319 = load i32, ptr %48, align 4, !tbaa !9
  %16320 = icmp ne i32 %16319, 0
  %16321 = xor i1 %16320, true
  %16322 = zext i1 %16321 to i32
  store i32 %16322, ptr %48, align 4, !tbaa !9
  %16323 = load i32, ptr %48, align 4, !tbaa !9
  %16324 = icmp ne i32 %16323, 0
  br i1 %16324, label %16325, label %16326

16325:                                            ; preds = %16258
  br label %16330

16326:                                            ; preds = %16258
  %16327 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16327, ptr %48, align 4, !tbaa !9
  %16328 = load ptr, ptr %5, align 8, !tbaa !5
  %16329 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %16328, i32 noundef %16329)
  br label %16330

16330:                                            ; preds = %16326, %16325, %16147
  %16331 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16331, ptr %48, align 4, !tbaa !9
  %16332 = load ptr, ptr %5, align 8, !tbaa !5
  %16333 = getelementptr inbounds %struct.w2c_hermes, ptr %16332, i32 0, i32 6
  %16334 = load i32, ptr %48, align 4, !tbaa !9
  %16335 = zext i32 %16334 to i64
  %16336 = add i64 %16335, 4
  %16337 = call i32 @i32_load(ptr noundef %16333, i64 noundef %16336)
  store i32 %16337, ptr %48, align 4, !tbaa !9
  %16338 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16338, ptr %9, align 4, !tbaa !9
  %16339 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %16339, ptr %49, align 4, !tbaa !9
  %16340 = load i32, ptr %48, align 4, !tbaa !9
  %16341 = load i32, ptr %49, align 4, !tbaa !9
  %16342 = icmp ne i32 %16340, %16341
  %16343 = zext i1 %16342 to i32
  store i32 %16343, ptr %48, align 4, !tbaa !9
  %16344 = load i32, ptr %48, align 4, !tbaa !9
  %16345 = icmp ne i32 %16344, 0
  br i1 %16345, label %16346, label %16347

16346:                                            ; preds = %16330
  br label %16086

16347:                                            ; preds = %16330
  br label %16352

16348:                                            ; preds = %16195
  %16349 = load ptr, ptr %5, align 8, !tbaa !5
  call void @w2c_hermes_abort(ptr noundef %16349)
  call void @wasm_rt_trap(i32 noundef 5) #8
  unreachable

16350:                                            ; preds = %16247
  %16351 = load ptr, ptr %5, align 8, !tbaa !5
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef %16351)
  call void @wasm_rt_trap(i32 noundef 5) #8
  unreachable

16352:                                            ; preds = %16347, %16079
  %16353 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16353, ptr %48, align 4, !tbaa !9
  %16354 = load ptr, ptr %5, align 8, !tbaa !5
  %16355 = getelementptr inbounds %struct.w2c_hermes, ptr %16354, i32 0, i32 6
  %16356 = load i32, ptr %48, align 4, !tbaa !9
  %16357 = zext i32 %16356 to i64
  %16358 = call i32 @i32_load(ptr noundef %16355, i64 noundef %16357)
  store i32 %16358, ptr %48, align 4, !tbaa !9
  %16359 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16359, ptr %27, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %16360 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16360, ptr %14, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %16361 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16361, ptr %10, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %16362 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16362, ptr %15, align 4, !tbaa !9
  %16363 = load ptr, ptr %5, align 8, !tbaa !5
  %16364 = getelementptr inbounds %struct.w2c_hermes, ptr %16363, i32 0, i32 3
  %16365 = load i32, ptr %16364, align 8, !tbaa !15
  store i32 %16365, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %16366 = load i32, ptr %49, align 4, !tbaa !9
  %16367 = load i32, ptr %48, align 4, !tbaa !9
  %16368 = sub i32 %16367, %16366
  store i32 %16368, ptr %48, align 4, !tbaa !9
  %16369 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16369, ptr %18, align 4, !tbaa !9
  %16370 = load i32, ptr %48, align 4, !tbaa !9
  %16371 = load ptr, ptr %5, align 8, !tbaa !5
  %16372 = getelementptr inbounds %struct.w2c_hermes, ptr %16371, i32 0, i32 3
  store i32 %16370, ptr %16372, align 8, !tbaa !15
  %16373 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %16373, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %16374 = load ptr, ptr %5, align 8, !tbaa !5
  %16375 = getelementptr inbounds %struct.w2c_hermes, ptr %16374, i32 0, i32 6
  %16376 = load i32, ptr %48, align 4, !tbaa !9
  %16377 = zext i32 %16376 to i64
  %16378 = add i64 %16377, 4
  %16379 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16375, i64 noundef %16378, i32 noundef %16379)
  %16380 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16380, ptr %48, align 4, !tbaa !9
  store i32 112, ptr %49, align 4, !tbaa !9
  %16381 = load i32, ptr %49, align 4, !tbaa !9
  %16382 = load i32, ptr %48, align 4, !tbaa !9
  %16383 = add i32 %16382, %16381
  store i32 %16383, ptr %48, align 4, !tbaa !9
  %16384 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16384, ptr %8, align 4, !tbaa !9
  %16385 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16385, ptr %19, align 4, !tbaa !9
  %16386 = load ptr, ptr %5, align 8, !tbaa !5
  %16387 = getelementptr inbounds %struct.w2c_hermes, ptr %16386, i32 0, i32 6
  %16388 = load i32, ptr %48, align 4, !tbaa !9
  %16389 = zext i32 %16388 to i64
  %16390 = call i32 @i32_load(ptr noundef %16387, i64 noundef %16389)
  store i32 %16390, ptr %48, align 4, !tbaa !9
  %16391 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16391, ptr %16, align 4, !tbaa !9
  %16392 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16392, ptr %48, align 4, !tbaa !9
  %16393 = load ptr, ptr %5, align 8, !tbaa !5
  %16394 = getelementptr inbounds %struct.w2c_hermes, ptr %16393, i32 0, i32 6
  %16395 = load i32, ptr %48, align 4, !tbaa !9
  %16396 = zext i32 %16395 to i64
  %16397 = add i64 %16396, 4
  %16398 = call i32 @i32_load(ptr noundef %16394, i64 noundef %16397)
  store i32 %16398, ptr %48, align 4, !tbaa !9
  %16399 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16399, ptr %25, align 4, !tbaa !9
  %16400 = load ptr, ptr %5, align 8, !tbaa !5
  %16401 = getelementptr inbounds %struct.w2c_hermes, ptr %16400, i32 0, i32 3
  %16402 = load i32, ptr %16401, align 8, !tbaa !15
  store i32 %16402, ptr %48, align 4, !tbaa !9
  store i32 -64, ptr %49, align 4, !tbaa !9
  %16403 = load i32, ptr %49, align 4, !tbaa !9
  %16404 = load i32, ptr %48, align 4, !tbaa !9
  %16405 = add i32 %16404, %16403
  store i32 %16405, ptr %48, align 4, !tbaa !9
  %16406 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16406, ptr %11, align 4, !tbaa !9
  %16407 = load i32, ptr %48, align 4, !tbaa !9
  %16408 = load ptr, ptr %5, align 8, !tbaa !5
  %16409 = getelementptr inbounds %struct.w2c_hermes, ptr %16408, i32 0, i32 3
  store i32 %16407, ptr %16409, align 8, !tbaa !15
  store i32 138544, ptr %48, align 4, !tbaa !9
  %16410 = load ptr, ptr %5, align 8, !tbaa !5
  %16411 = getelementptr inbounds %struct.w2c_hermes, ptr %16410, i32 0, i32 6
  %16412 = load i32, ptr %48, align 4, !tbaa !9
  %16413 = zext i32 %16412 to i64
  %16414 = call i32 @i32_load8_u(ptr noundef %16411, i64 noundef %16413)
  store i32 %16414, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %16415 = load i32, ptr %49, align 4, !tbaa !9
  %16416 = load i32, ptr %48, align 4, !tbaa !9
  %16417 = and i32 %16416, %16415
  store i32 %16417, ptr %48, align 4, !tbaa !9
  %16418 = load i32, ptr %48, align 4, !tbaa !9
  %16419 = icmp ne i32 %16418, 0
  br i1 %16419, label %16420, label %16427

16420:                                            ; preds = %16352
  store i32 138536, ptr %48, align 4, !tbaa !9
  %16421 = load ptr, ptr %5, align 8, !tbaa !5
  %16422 = getelementptr inbounds %struct.w2c_hermes, ptr %16421, i32 0, i32 6
  %16423 = load i32, ptr %48, align 4, !tbaa !9
  %16424 = zext i32 %16423 to i64
  %16425 = call i64 @i64_load(ptr noundef %16422, i64 noundef %16424)
  store i64 %16425, ptr %58, align 8, !tbaa !11
  %16426 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16426, ptr %33, align 8, !tbaa !11
  br label %16458

16427:                                            ; preds = %16352
  store i32 138544, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %16428 = load ptr, ptr %5, align 8, !tbaa !5
  %16429 = getelementptr inbounds %struct.w2c_hermes, ptr %16428, i32 0, i32 6
  %16430 = load i32, ptr %48, align 4, !tbaa !9
  %16431 = zext i32 %16430 to i64
  %16432 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %16429, i64 noundef %16431, i32 noundef %16432)
  store i32 138536, ptr %48, align 4, !tbaa !9
  store i64 -49064778989728563, ptr %59, align 8, !tbaa !11
  store i32 131088, ptr %50, align 4, !tbaa !9
  %16433 = load ptr, ptr %5, align 8, !tbaa !5
  %16434 = getelementptr inbounds %struct.w2c_hermes, ptr %16433, i32 0, i32 6
  %16435 = load i32, ptr %50, align 4, !tbaa !9
  %16436 = zext i32 %16435 to i64
  %16437 = call i64 @i64_load(ptr noundef %16434, i64 noundef %16436)
  store i64 %16437, ptr %60, align 8, !tbaa !11
  %16438 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %16438, ptr %31, align 8, !tbaa !11
  %16439 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %16439, ptr %61, align 8, !tbaa !11
  %16440 = load i64, ptr %61, align 8, !tbaa !11
  %16441 = icmp ne i64 %16440, 0
  %16442 = xor i1 %16441, true
  %16443 = zext i1 %16442 to i32
  store i32 %16443, ptr %51, align 4, !tbaa !9
  %16444 = load i32, ptr %51, align 4, !tbaa !9
  %16445 = icmp ne i32 %16444, 0
  br i1 %16445, label %16446, label %16448

16446:                                            ; preds = %16427
  %16447 = load i64, ptr %59, align 8, !tbaa !11
  br label %16450

16448:                                            ; preds = %16427
  %16449 = load i64, ptr %60, align 8, !tbaa !11
  br label %16450

16450:                                            ; preds = %16448, %16446
  %16451 = phi i64 [ %16447, %16446 ], [ %16449, %16448 ]
  store i64 %16451, ptr %59, align 8, !tbaa !11
  %16452 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %16452, ptr %33, align 8, !tbaa !11
  %16453 = load ptr, ptr %5, align 8, !tbaa !5
  %16454 = getelementptr inbounds %struct.w2c_hermes, ptr %16453, i32 0, i32 6
  %16455 = load i32, ptr %48, align 4, !tbaa !9
  %16456 = zext i32 %16455 to i64
  %16457 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16454, i64 noundef %16456, i64 noundef %16457)
  br label %16458

16458:                                            ; preds = %16450, %16420
  %16459 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %16459, ptr %48, align 4, !tbaa !9
  %16460 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %16460, ptr %49, align 4, !tbaa !9
  %16461 = load i32, ptr %48, align 4, !tbaa !9
  %16462 = load i32, ptr %49, align 4, !tbaa !9
  %16463 = icmp eq i32 %16461, %16462
  %16464 = zext i1 %16463 to i32
  store i32 %16464, ptr %48, align 4, !tbaa !9
  %16465 = load i32, ptr %48, align 4, !tbaa !9
  %16466 = icmp ne i32 %16465, 0
  br i1 %16466, label %16467, label %16468

16467:                                            ; preds = %16458
  br label %16522

16468:                                            ; preds = %16458
  %16469 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16469, ptr %48, align 4, !tbaa !9
  %16470 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16470, ptr %9, align 4, !tbaa !9
  br label %16471

16471:                                            ; preds = %16520, %16468
  %16472 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16472, ptr %48, align 4, !tbaa !9
  %16473 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %16473, ptr %49, align 4, !tbaa !9
  %16474 = load ptr, ptr %5, align 8, !tbaa !5
  %16475 = getelementptr inbounds %struct.w2c_hermes, ptr %16474, i32 0, i32 6
  %16476 = load i32, ptr %49, align 4, !tbaa !9
  %16477 = zext i32 %16476 to i64
  %16478 = call i32 @i32_load(ptr noundef %16475, i64 noundef %16477)
  store i32 %16478, ptr %49, align 4, !tbaa !9
  %16479 = load ptr, ptr %5, align 8, !tbaa !5
  %16480 = getelementptr inbounds %struct.w2c_hermes, ptr %16479, i32 0, i32 6
  %16481 = load i32, ptr %48, align 4, !tbaa !9
  %16482 = zext i32 %16481 to i64
  %16483 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16480, i64 noundef %16482, i32 noundef %16483)
  %16484 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16484, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %16485 = load i32, ptr %49, align 4, !tbaa !9
  %16486 = load i32, ptr %48, align 4, !tbaa !9
  %16487 = add i32 %16486, %16485
  store i32 %16487, ptr %48, align 4, !tbaa !9
  %16488 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16488, ptr %10, align 4, !tbaa !9
  %16489 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %16489, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %16490 = load i32, ptr %49, align 4, !tbaa !9
  %16491 = load i32, ptr %48, align 4, !tbaa !9
  %16492 = add i32 %16491, %16490
  store i32 %16492, ptr %48, align 4, !tbaa !9
  %16493 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16493, ptr %16, align 4, !tbaa !9
  %16494 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %16494, ptr %49, align 4, !tbaa !9
  %16495 = load i32, ptr %48, align 4, !tbaa !9
  %16496 = load i32, ptr %49, align 4, !tbaa !9
  %16497 = icmp eq i32 %16495, %16496
  %16498 = zext i1 %16497 to i32
  store i32 %16498, ptr %48, align 4, !tbaa !9
  %16499 = load i32, ptr %48, align 4, !tbaa !9
  %16500 = icmp ne i32 %16499, 0
  br i1 %16500, label %16501, label %16502

16501:                                            ; preds = %16471
  br label %16522

16502:                                            ; preds = %16471
  %16503 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16503, ptr %48, align 4, !tbaa !9
  %16504 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16504, ptr %49, align 4, !tbaa !9
  %16505 = load i32, ptr %49, align 4, !tbaa !9
  %16506 = load i32, ptr %48, align 4, !tbaa !9
  %16507 = add i32 %16506, %16505
  store i32 %16507, ptr %48, align 4, !tbaa !9
  %16508 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16508, ptr %9, align 4, !tbaa !9
  %16509 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16509, ptr %48, align 4, !tbaa !9
  store i32 57, ptr %49, align 4, !tbaa !9
  %16510 = load i32, ptr %48, align 4, !tbaa !9
  %16511 = load i32, ptr %49, align 4, !tbaa !9
  %16512 = icmp ult i32 %16510, %16511
  %16513 = zext i1 %16512 to i32
  store i32 %16513, ptr %48, align 4, !tbaa !9
  %16514 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16514, ptr %8, align 4, !tbaa !9
  %16515 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16515, ptr %48, align 4, !tbaa !9
  %16516 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16516, ptr %14, align 4, !tbaa !9
  %16517 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16517, ptr %48, align 4, !tbaa !9
  %16518 = load i32, ptr %48, align 4, !tbaa !9
  %16519 = icmp ne i32 %16518, 0
  br i1 %16519, label %16520, label %16521

16520:                                            ; preds = %16502
  br label %16471

16521:                                            ; preds = %16502
  br label %16522

16522:                                            ; preds = %16521, %16501, %16467
  %16523 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %16523, ptr %48, align 4, !tbaa !9
  %16524 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %16524, ptr %49, align 4, !tbaa !9
  %16525 = load i32, ptr %48, align 4, !tbaa !9
  %16526 = load i32, ptr %49, align 4, !tbaa !9
  %16527 = icmp eq i32 %16525, %16526
  %16528 = zext i1 %16527 to i32
  store i32 %16528, ptr %48, align 4, !tbaa !9
  %16529 = load i32, ptr %48, align 4, !tbaa !9
  %16530 = icmp ne i32 %16529, 0
  br i1 %16530, label %16531, label %16542

16531:                                            ; preds = %16522
  %16532 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16532, ptr %48, align 4, !tbaa !9
  %16533 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16533, ptr %49, align 4, !tbaa !9
  %16534 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %16534, ptr %60, align 8, !tbaa !11
  %16535 = load ptr, ptr %5, align 8, !tbaa !5
  %16536 = load i32, ptr %48, align 4, !tbaa !9
  %16537 = load i32, ptr %49, align 4, !tbaa !9
  %16538 = load i64, ptr %60, align 8, !tbaa !11
  %16539 = call i64 @w2c_hermes_llvh0x3A0x3Ahashing0x3A0x3Adetail0x3A0x3Ahash_short0x28char0x20const0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x20long0x29(ptr noundef %16535, i32 noundef %16536, i32 noundef %16537, i64 noundef %16538)
  store i64 %16539, ptr %58, align 8, !tbaa !11
  %16540 = load i64, ptr %58, align 8, !tbaa !11
  %16541 = trunc i64 %16540 to i32
  store i32 %16541, ptr %48, align 4, !tbaa !9
  br label %17632

16542:                                            ; preds = %16522
  %16543 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16543, ptr %48, align 4, !tbaa !9
  store i32 -64, ptr %49, align 4, !tbaa !9
  %16544 = load i32, ptr %49, align 4, !tbaa !9
  %16545 = load i32, ptr %48, align 4, !tbaa !9
  %16546 = sub i32 %16545, %16544
  store i32 %16546, ptr %48, align 4, !tbaa !9
  %16547 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16547, ptr %26, align 4, !tbaa !9
  %16548 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16548, ptr %48, align 4, !tbaa !9
  %16549 = load ptr, ptr %5, align 8, !tbaa !5
  %16550 = getelementptr inbounds %struct.w2c_hermes, ptr %16549, i32 0, i32 6
  %16551 = load i32, ptr %48, align 4, !tbaa !9
  %16552 = zext i32 %16551 to i64
  %16553 = add i64 %16552, 32
  %16554 = call i64 @i64_load(ptr noundef %16550, i64 noundef %16553)
  store i64 %16554, ptr %58, align 8, !tbaa !11
  %16555 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %16555, ptr %59, align 8, !tbaa !11
  store i64 47, ptr %60, align 8, !tbaa !11
  %16556 = load i64, ptr %60, align 8, !tbaa !11
  %16557 = and i64 %16556, 63
  %16558 = load i64, ptr %59, align 8, !tbaa !11
  %16559 = lshr i64 %16558, %16557
  store i64 %16559, ptr %59, align 8, !tbaa !11
  %16560 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %16560, ptr %60, align 8, !tbaa !11
  %16561 = load i64, ptr %60, align 8, !tbaa !11
  %16562 = load i64, ptr %59, align 8, !tbaa !11
  %16563 = xor i64 %16562, %16561
  store i64 %16563, ptr %59, align 8, !tbaa !11
  %16564 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %16564, ptr %38, align 8, !tbaa !11
  %16565 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %16565, ptr %60, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %61, align 8, !tbaa !11
  %16566 = load i64, ptr %61, align 8, !tbaa !11
  %16567 = load i64, ptr %60, align 8, !tbaa !11
  %16568 = xor i64 %16567, %16566
  store i64 %16568, ptr %60, align 8, !tbaa !11
  %16569 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %16569, ptr %31, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %61, align 8, !tbaa !11
  %16570 = load i64, ptr %61, align 8, !tbaa !11
  %16571 = load i64, ptr %60, align 8, !tbaa !11
  %16572 = mul i64 %16571, %16570
  store i64 %16572, ptr %60, align 8, !tbaa !11
  %16573 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %16573, ptr %32, align 8, !tbaa !11
  %16574 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %16574, ptr %61, align 8, !tbaa !11
  store i64 47, ptr %62, align 8, !tbaa !11
  %16575 = load i64, ptr %62, align 8, !tbaa !11
  %16576 = and i64 %16575, 63
  %16577 = load i64, ptr %61, align 8, !tbaa !11
  %16578 = lshr i64 %16577, %16576
  store i64 %16578, ptr %61, align 8, !tbaa !11
  %16579 = load i64, ptr %61, align 8, !tbaa !11
  %16580 = load i64, ptr %60, align 8, !tbaa !11
  %16581 = xor i64 %16580, %16579
  store i64 %16581, ptr %60, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %61, align 8, !tbaa !11
  %16582 = load i64, ptr %61, align 8, !tbaa !11
  %16583 = load i64, ptr %60, align 8, !tbaa !11
  %16584 = xor i64 %16583, %16582
  store i64 %16584, ptr %60, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %61, align 8, !tbaa !11
  %16585 = load i64, ptr %61, align 8, !tbaa !11
  %16586 = load i64, ptr %60, align 8, !tbaa !11
  %16587 = mul i64 %16586, %16585
  store i64 %16587, ptr %60, align 8, !tbaa !11
  %16588 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %16588, ptr %32, align 8, !tbaa !11
  store i64 47, ptr %61, align 8, !tbaa !11
  %16589 = load i64, ptr %61, align 8, !tbaa !11
  %16590 = and i64 %16589, 63
  %16591 = load i64, ptr %60, align 8, !tbaa !11
  %16592 = lshr i64 %16591, %16590
  store i64 %16592, ptr %60, align 8, !tbaa !11
  %16593 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %16593, ptr %61, align 8, !tbaa !11
  %16594 = load i64, ptr %61, align 8, !tbaa !11
  %16595 = load i64, ptr %60, align 8, !tbaa !11
  %16596 = xor i64 %16595, %16594
  store i64 %16596, ptr %60, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %61, align 8, !tbaa !11
  %16597 = load i64, ptr %61, align 8, !tbaa !11
  %16598 = load i64, ptr %60, align 8, !tbaa !11
  %16599 = mul i64 %16598, %16597
  store i64 %16599, ptr %60, align 8, !tbaa !11
  %16600 = load i64, ptr %60, align 8, !tbaa !11
  %16601 = load i64, ptr %59, align 8, !tbaa !11
  %16602 = add i64 %16601, %16600
  store i64 %16602, ptr %59, align 8, !tbaa !11
  store i64 31, ptr %60, align 8, !tbaa !11
  %16603 = load i64, ptr %59, align 8, !tbaa !11
  %16604 = load i64, ptr %60, align 8, !tbaa !11
  %16605 = and i64 %16604, 63
  %16606 = shl i64 %16603, %16605
  %16607 = load i64, ptr %59, align 8, !tbaa !11
  %16608 = load i64, ptr %60, align 8, !tbaa !11
  %16609 = sub i64 63, %16608
  %16610 = add i64 %16609, 1
  %16611 = and i64 %16610, 63
  %16612 = lshr i64 %16607, %16611
  %16613 = or i64 %16606, %16612
  store i64 %16613, ptr %59, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %60, align 8, !tbaa !11
  %16614 = load i64, ptr %60, align 8, !tbaa !11
  %16615 = load i64, ptr %59, align 8, !tbaa !11
  %16616 = mul i64 %16615, %16614
  store i64 %16616, ptr %59, align 8, !tbaa !11
  %16617 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %16617, ptr %41, align 8, !tbaa !11
  %16618 = load i64, ptr %38, align 8, !tbaa !11
  store i64 %16618, ptr %60, align 8, !tbaa !11
  %16619 = load i64, ptr %38, align 8, !tbaa !11
  store i64 %16619, ptr %61, align 8, !tbaa !11
  %16620 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %16620, ptr %62, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %63, align 8, !tbaa !11
  %16621 = load i64, ptr %63, align 8, !tbaa !11
  %16622 = load i64, ptr %62, align 8, !tbaa !11
  %16623 = mul i64 %16622, %16621
  store i64 %16623, ptr %62, align 8, !tbaa !11
  %16624 = load i64, ptr %62, align 8, !tbaa !11
  %16625 = load i64, ptr %61, align 8, !tbaa !11
  %16626 = xor i64 %16625, %16624
  store i64 %16626, ptr %61, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %62, align 8, !tbaa !11
  %16627 = load i64, ptr %62, align 8, !tbaa !11
  %16628 = load i64, ptr %61, align 8, !tbaa !11
  %16629 = mul i64 %16628, %16627
  store i64 %16629, ptr %61, align 8, !tbaa !11
  %16630 = load i64, ptr %61, align 8, !tbaa !11
  store i64 %16630, ptr %32, align 8, !tbaa !11
  store i64 47, ptr %62, align 8, !tbaa !11
  %16631 = load i64, ptr %62, align 8, !tbaa !11
  %16632 = and i64 %16631, 63
  %16633 = load i64, ptr %61, align 8, !tbaa !11
  %16634 = lshr i64 %16633, %16632
  store i64 %16634, ptr %61, align 8, !tbaa !11
  %16635 = load i64, ptr %61, align 8, !tbaa !11
  %16636 = load i64, ptr %60, align 8, !tbaa !11
  %16637 = xor i64 %16636, %16635
  store i64 %16637, ptr %60, align 8, !tbaa !11
  %16638 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %16638, ptr %61, align 8, !tbaa !11
  %16639 = load i64, ptr %61, align 8, !tbaa !11
  %16640 = load i64, ptr %60, align 8, !tbaa !11
  %16641 = xor i64 %16640, %16639
  store i64 %16641, ptr %60, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %61, align 8, !tbaa !11
  %16642 = load i64, ptr %61, align 8, !tbaa !11
  %16643 = load i64, ptr %60, align 8, !tbaa !11
  %16644 = mul i64 %16643, %16642
  store i64 %16644, ptr %60, align 8, !tbaa !11
  %16645 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %16645, ptr %32, align 8, !tbaa !11
  store i64 47, ptr %61, align 8, !tbaa !11
  %16646 = load i64, ptr %61, align 8, !tbaa !11
  %16647 = and i64 %16646, 63
  %16648 = load i64, ptr %60, align 8, !tbaa !11
  %16649 = lshr i64 %16648, %16647
  store i64 %16649, ptr %60, align 8, !tbaa !11
  %16650 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %16650, ptr %61, align 8, !tbaa !11
  %16651 = load i64, ptr %61, align 8, !tbaa !11
  %16652 = load i64, ptr %60, align 8, !tbaa !11
  %16653 = xor i64 %16652, %16651
  store i64 %16653, ptr %60, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %61, align 8, !tbaa !11
  %16654 = load i64, ptr %61, align 8, !tbaa !11
  %16655 = load i64, ptr %60, align 8, !tbaa !11
  %16656 = mul i64 %16655, %16654
  store i64 %16656, ptr %60, align 8, !tbaa !11
  %16657 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %16657, ptr %42, align 8, !tbaa !11
  %16658 = load i64, ptr %60, align 8, !tbaa !11
  %16659 = load i64, ptr %59, align 8, !tbaa !11
  %16660 = add i64 %16659, %16658
  store i64 %16660, ptr %59, align 8, !tbaa !11
  %16661 = load i64, ptr %59, align 8, !tbaa !11
  %16662 = load i64, ptr %58, align 8, !tbaa !11
  %16663 = add i64 %16662, %16661
  store i64 %16663, ptr %58, align 8, !tbaa !11
  %16664 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16664, ptr %32, align 8, !tbaa !11
  %16665 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16665, ptr %49, align 4, !tbaa !9
  %16666 = load ptr, ptr %5, align 8, !tbaa !5
  %16667 = getelementptr inbounds %struct.w2c_hermes, ptr %16666, i32 0, i32 6
  %16668 = load i32, ptr %49, align 4, !tbaa !9
  %16669 = zext i32 %16668 to i64
  %16670 = add i64 %16669, 40
  %16671 = call i64 @i64_load(ptr noundef %16667, i64 noundef %16670)
  store i64 %16671, ptr %59, align 8, !tbaa !11
  %16672 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %16672, ptr %36, align 8, !tbaa !11
  %16673 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16673, ptr %50, align 4, !tbaa !9
  %16674 = load ptr, ptr %5, align 8, !tbaa !5
  %16675 = getelementptr inbounds %struct.w2c_hermes, ptr %16674, i32 0, i32 6
  %16676 = load i32, ptr %50, align 4, !tbaa !9
  %16677 = zext i32 %16676 to i64
  %16678 = add i64 %16677, 48
  %16679 = call i64 @i64_load(ptr noundef %16675, i64 noundef %16678)
  store i64 %16679, ptr %60, align 8, !tbaa !11
  %16680 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %16680, ptr %37, align 8, !tbaa !11
  %16681 = load i64, ptr %60, align 8, !tbaa !11
  %16682 = load i64, ptr %59, align 8, !tbaa !11
  %16683 = add i64 %16682, %16681
  store i64 %16683, ptr %59, align 8, !tbaa !11
  %16684 = load i64, ptr %59, align 8, !tbaa !11
  %16685 = load i64, ptr %58, align 8, !tbaa !11
  %16686 = add i64 %16685, %16684
  store i64 %16686, ptr %58, align 8, !tbaa !11
  %16687 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16687, ptr %35, align 8, !tbaa !11
  store i64 20, ptr %59, align 8, !tbaa !11
  %16688 = load i64, ptr %58, align 8, !tbaa !11
  %16689 = load i64, ptr %59, align 8, !tbaa !11
  %16690 = and i64 %16689, 63
  %16691 = shl i64 %16688, %16690
  %16692 = load i64, ptr %58, align 8, !tbaa !11
  %16693 = load i64, ptr %59, align 8, !tbaa !11
  %16694 = sub i64 63, %16693
  %16695 = add i64 %16694, 1
  %16696 = and i64 %16695, 63
  %16697 = lshr i64 %16692, %16696
  %16698 = or i64 %16691, %16697
  store i64 %16698, ptr %58, align 8, !tbaa !11
  %16699 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %16699, ptr %59, align 8, !tbaa !11
  %16700 = load i64, ptr %59, align 8, !tbaa !11
  %16701 = load i64, ptr %58, align 8, !tbaa !11
  %16702 = add i64 %16701, %16700
  store i64 %16702, ptr %58, align 8, !tbaa !11
  %16703 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16703, ptr %49, align 4, !tbaa !9
  %16704 = load ptr, ptr %5, align 8, !tbaa !5
  %16705 = getelementptr inbounds %struct.w2c_hermes, ptr %16704, i32 0, i32 6
  %16706 = load i32, ptr %49, align 4, !tbaa !9
  %16707 = zext i32 %16706 to i64
  %16708 = add i64 %16707, 56
  %16709 = call i64 @i64_load(ptr noundef %16705, i64 noundef %16708)
  store i64 %16709, ptr %59, align 8, !tbaa !11
  %16710 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %16710, ptr %34, align 8, !tbaa !11
  %16711 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %16711, ptr %60, align 8, !tbaa !11
  %16712 = load i64, ptr %36, align 8, !tbaa !11
  store i64 %16712, ptr %61, align 8, !tbaa !11
  %16713 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %16713, ptr %62, align 8, !tbaa !11
  store i64 15, ptr %63, align 8, !tbaa !11
  %16714 = load i64, ptr %62, align 8, !tbaa !11
  %16715 = load i64, ptr %63, align 8, !tbaa !11
  %16716 = and i64 %16715, 63
  %16717 = shl i64 %16714, %16716
  %16718 = load i64, ptr %62, align 8, !tbaa !11
  %16719 = load i64, ptr %63, align 8, !tbaa !11
  %16720 = sub i64 63, %16719
  %16721 = add i64 %16720, 1
  %16722 = and i64 %16721, 63
  %16723 = lshr i64 %16718, %16722
  %16724 = or i64 %16717, %16723
  store i64 %16724, ptr %62, align 8, !tbaa !11
  %16725 = load i64, ptr %62, align 8, !tbaa !11
  store i64 %16725, ptr %43, align 8, !tbaa !11
  %16726 = load i64, ptr %62, align 8, !tbaa !11
  %16727 = load i64, ptr %61, align 8, !tbaa !11
  %16728 = add i64 %16727, %16726
  store i64 %16728, ptr %61, align 8, !tbaa !11
  %16729 = load i64, ptr %37, align 8, !tbaa !11
  store i64 %16729, ptr %62, align 8, !tbaa !11
  %16730 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %16730, ptr %63, align 8, !tbaa !11
  store i64 -5435081209227447692, ptr %64, align 8, !tbaa !11
  %16731 = load i64, ptr %64, align 8, !tbaa !11
  %16732 = load i64, ptr %63, align 8, !tbaa !11
  %16733 = mul i64 %16732, %16731
  store i64 %16733, ptr %63, align 8, !tbaa !11
  %16734 = load i64, ptr %63, align 8, !tbaa !11
  %16735 = load i64, ptr %62, align 8, !tbaa !11
  %16736 = add i64 %16735, %16734
  store i64 %16736, ptr %62, align 8, !tbaa !11
  store i64 22, ptr %63, align 8, !tbaa !11
  %16737 = load i64, ptr %62, align 8, !tbaa !11
  %16738 = load i64, ptr %63, align 8, !tbaa !11
  %16739 = and i64 %16738, 63
  %16740 = shl i64 %16737, %16739
  %16741 = load i64, ptr %62, align 8, !tbaa !11
  %16742 = load i64, ptr %63, align 8, !tbaa !11
  %16743 = sub i64 63, %16742
  %16744 = add i64 %16743, 1
  %16745 = and i64 %16744, 63
  %16746 = lshr i64 %16741, %16745
  %16747 = or i64 %16740, %16746
  store i64 %16747, ptr %62, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %63, align 8, !tbaa !11
  %16748 = load i64, ptr %63, align 8, !tbaa !11
  %16749 = load i64, ptr %62, align 8, !tbaa !11
  %16750 = mul i64 %16749, %16748
  store i64 %16750, ptr %62, align 8, !tbaa !11
  %16751 = load i64, ptr %62, align 8, !tbaa !11
  %16752 = load i64, ptr %61, align 8, !tbaa !11
  %16753 = add i64 %16752, %16751
  store i64 %16753, ptr %61, align 8, !tbaa !11
  %16754 = load i64, ptr %61, align 8, !tbaa !11
  store i64 %16754, ptr %31, align 8, !tbaa !11
  %16755 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16755, ptr %52, align 4, !tbaa !9
  %16756 = load ptr, ptr %5, align 8, !tbaa !5
  %16757 = getelementptr inbounds %struct.w2c_hermes, ptr %16756, i32 0, i32 6
  %16758 = load i32, ptr %52, align 4, !tbaa !9
  %16759 = zext i32 %16758 to i64
  %16760 = add i64 %16759, 16
  %16761 = call i64 @i64_load(ptr noundef %16757, i64 noundef %16760)
  store i64 %16761, ptr %62, align 8, !tbaa !11
  %16762 = load i64, ptr %62, align 8, !tbaa !11
  store i64 %16762, ptr %39, align 8, !tbaa !11
  %16763 = load i64, ptr %62, align 8, !tbaa !11
  %16764 = load i64, ptr %61, align 8, !tbaa !11
  %16765 = add i64 %16764, %16763
  store i64 %16765, ptr %61, align 8, !tbaa !11
  %16766 = load i64, ptr %61, align 8, !tbaa !11
  %16767 = load i64, ptr %60, align 8, !tbaa !11
  %16768 = add i64 %16767, %16766
  store i64 %16768, ptr %60, align 8, !tbaa !11
  %16769 = load i64, ptr %60, align 8, !tbaa !11
  %16770 = load i64, ptr %59, align 8, !tbaa !11
  %16771 = add i64 %16770, %16769
  store i64 %16771, ptr %59, align 8, !tbaa !11
  store i64 43, ptr %60, align 8, !tbaa !11
  %16772 = load i64, ptr %59, align 8, !tbaa !11
  %16773 = load i64, ptr %60, align 8, !tbaa !11
  %16774 = and i64 %16773, 63
  %16775 = shl i64 %16772, %16774
  %16776 = load i64, ptr %59, align 8, !tbaa !11
  %16777 = load i64, ptr %60, align 8, !tbaa !11
  %16778 = sub i64 63, %16777
  %16779 = add i64 %16778, 1
  %16780 = and i64 %16779, 63
  %16781 = lshr i64 %16776, %16780
  %16782 = or i64 %16775, %16781
  store i64 %16782, ptr %59, align 8, !tbaa !11
  %16783 = load i64, ptr %59, align 8, !tbaa !11
  %16784 = load i64, ptr %58, align 8, !tbaa !11
  %16785 = add i64 %16784, %16783
  store i64 %16785, ptr %58, align 8, !tbaa !11
  %16786 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16786, ptr %32, align 8, !tbaa !11
  %16787 = load i64, ptr %34, align 8, !tbaa !11
  store i64 %16787, ptr %58, align 8, !tbaa !11
  %16788 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %16788, ptr %59, align 8, !tbaa !11
  %16789 = load i64, ptr %59, align 8, !tbaa !11
  %16790 = load i64, ptr %58, align 8, !tbaa !11
  %16791 = add i64 %16790, %16789
  store i64 %16791, ptr %58, align 8, !tbaa !11
  %16792 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16792, ptr %37, align 8, !tbaa !11
  %16793 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %16793, ptr %58, align 8, !tbaa !11
  %16794 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16794, ptr %49, align 4, !tbaa !9
  %16795 = load ptr, ptr %5, align 8, !tbaa !5
  %16796 = getelementptr inbounds %struct.w2c_hermes, ptr %16795, i32 0, i32 6
  %16797 = load i32, ptr %49, align 4, !tbaa !9
  %16798 = zext i32 %16797 to i64
  %16799 = call i64 @i64_load(ptr noundef %16796, i64 noundef %16798)
  store i64 %16799, ptr %59, align 8, !tbaa !11
  %16800 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %16800, ptr %60, align 8, !tbaa !11
  store i64 -7894485801551159383, ptr %61, align 8, !tbaa !11
  %16801 = load i64, ptr %61, align 8, !tbaa !11
  %16802 = load i64, ptr %60, align 8, !tbaa !11
  %16803 = mul i64 %16802, %16801
  store i64 %16803, ptr %60, align 8, !tbaa !11
  %16804 = load i64, ptr %60, align 8, !tbaa !11
  %16805 = load i64, ptr %59, align 8, !tbaa !11
  %16806 = add i64 %16805, %16804
  store i64 %16806, ptr %59, align 8, !tbaa !11
  %16807 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %16807, ptr %36, align 8, !tbaa !11
  %16808 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16808, ptr %50, align 4, !tbaa !9
  %16809 = load ptr, ptr %5, align 8, !tbaa !5
  %16810 = getelementptr inbounds %struct.w2c_hermes, ptr %16809, i32 0, i32 6
  %16811 = load i32, ptr %50, align 4, !tbaa !9
  %16812 = zext i32 %16811 to i64
  %16813 = add i64 %16812, 8
  %16814 = call i64 @i64_load(ptr noundef %16810, i64 noundef %16813)
  store i64 %16814, ptr %60, align 8, !tbaa !11
  %16815 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %16815, ptr %35, align 8, !tbaa !11
  %16816 = load i64, ptr %60, align 8, !tbaa !11
  %16817 = load i64, ptr %59, align 8, !tbaa !11
  %16818 = add i64 %16817, %16816
  store i64 %16818, ptr %59, align 8, !tbaa !11
  %16819 = load i64, ptr %59, align 8, !tbaa !11
  %16820 = load i64, ptr %58, align 8, !tbaa !11
  %16821 = add i64 %16820, %16819
  store i64 %16821, ptr %58, align 8, !tbaa !11
  %16822 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16822, ptr %39, align 8, !tbaa !11
  store i64 20, ptr %59, align 8, !tbaa !11
  %16823 = load i64, ptr %58, align 8, !tbaa !11
  %16824 = load i64, ptr %59, align 8, !tbaa !11
  %16825 = and i64 %16824, 63
  %16826 = shl i64 %16823, %16825
  %16827 = load i64, ptr %58, align 8, !tbaa !11
  %16828 = load i64, ptr %59, align 8, !tbaa !11
  %16829 = sub i64 63, %16828
  %16830 = add i64 %16829, 1
  %16831 = and i64 %16830, 63
  %16832 = lshr i64 %16827, %16831
  %16833 = or i64 %16826, %16832
  store i64 %16833, ptr %58, align 8, !tbaa !11
  %16834 = load i64, ptr %36, align 8, !tbaa !11
  store i64 %16834, ptr %59, align 8, !tbaa !11
  %16835 = load i64, ptr %59, align 8, !tbaa !11
  %16836 = load i64, ptr %58, align 8, !tbaa !11
  %16837 = add i64 %16836, %16835
  store i64 %16837, ptr %58, align 8, !tbaa !11
  %16838 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16838, ptr %49, align 4, !tbaa !9
  %16839 = load ptr, ptr %5, align 8, !tbaa !5
  %16840 = getelementptr inbounds %struct.w2c_hermes, ptr %16839, i32 0, i32 6
  %16841 = load i32, ptr %49, align 4, !tbaa !9
  %16842 = zext i32 %16841 to i64
  %16843 = add i64 %16842, 24
  %16844 = call i64 @i64_load(ptr noundef %16840, i64 noundef %16843)
  store i64 %16844, ptr %59, align 8, !tbaa !11
  %16845 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %16845, ptr %40, align 8, !tbaa !11
  %16846 = load i64, ptr %36, align 8, !tbaa !11
  store i64 %16846, ptr %60, align 8, !tbaa !11
  %16847 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %16847, ptr %61, align 8, !tbaa !11
  %16848 = load i64, ptr %43, align 8, !tbaa !11
  store i64 %16848, ptr %62, align 8, !tbaa !11
  %16849 = load i64, ptr %62, align 8, !tbaa !11
  %16850 = load i64, ptr %61, align 8, !tbaa !11
  %16851 = add i64 %16850, %16849
  store i64 %16851, ptr %61, align 8, !tbaa !11
  %16852 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %16852, ptr %62, align 8, !tbaa !11
  %16853 = load i64, ptr %62, align 8, !tbaa !11
  %16854 = load i64, ptr %61, align 8, !tbaa !11
  %16855 = add i64 %16854, %16853
  store i64 %16855, ptr %61, align 8, !tbaa !11
  store i64 27, ptr %62, align 8, !tbaa !11
  %16856 = load i64, ptr %61, align 8, !tbaa !11
  %16857 = load i64, ptr %62, align 8, !tbaa !11
  %16858 = and i64 %16857, 63
  %16859 = shl i64 %16856, %16858
  %16860 = load i64, ptr %61, align 8, !tbaa !11
  %16861 = load i64, ptr %62, align 8, !tbaa !11
  %16862 = sub i64 63, %16861
  %16863 = add i64 %16862, 1
  %16864 = and i64 %16863, 63
  %16865 = lshr i64 %16860, %16864
  %16866 = or i64 %16859, %16865
  store i64 %16866, ptr %61, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %62, align 8, !tbaa !11
  %16867 = load i64, ptr %62, align 8, !tbaa !11
  %16868 = load i64, ptr %61, align 8, !tbaa !11
  %16869 = mul i64 %16868, %16867
  store i64 %16869, ptr %61, align 8, !tbaa !11
  %16870 = load i64, ptr %42, align 8, !tbaa !11
  store i64 %16870, ptr %62, align 8, !tbaa !11
  %16871 = load i64, ptr %62, align 8, !tbaa !11
  %16872 = load i64, ptr %61, align 8, !tbaa !11
  %16873 = xor i64 %16872, %16871
  store i64 %16873, ptr %61, align 8, !tbaa !11
  %16874 = load i64, ptr %61, align 8, !tbaa !11
  store i64 %16874, ptr %34, align 8, !tbaa !11
  %16875 = load i64, ptr %38, align 8, !tbaa !11
  store i64 %16875, ptr %62, align 8, !tbaa !11
  %16876 = load i64, ptr %62, align 8, !tbaa !11
  %16877 = load i64, ptr %61, align 8, !tbaa !11
  %16878 = add i64 %16877, %16876
  store i64 %16878, ptr %61, align 8, !tbaa !11
  %16879 = load i64, ptr %61, align 8, !tbaa !11
  %16880 = load i64, ptr %60, align 8, !tbaa !11
  %16881 = add i64 %16880, %16879
  store i64 %16881, ptr %60, align 8, !tbaa !11
  %16882 = load i64, ptr %60, align 8, !tbaa !11
  %16883 = load i64, ptr %59, align 8, !tbaa !11
  %16884 = add i64 %16883, %16882
  store i64 %16884, ptr %59, align 8, !tbaa !11
  store i64 43, ptr %60, align 8, !tbaa !11
  %16885 = load i64, ptr %59, align 8, !tbaa !11
  %16886 = load i64, ptr %60, align 8, !tbaa !11
  %16887 = and i64 %16886, 63
  %16888 = shl i64 %16885, %16887
  %16889 = load i64, ptr %59, align 8, !tbaa !11
  %16890 = load i64, ptr %60, align 8, !tbaa !11
  %16891 = sub i64 63, %16890
  %16892 = add i64 %16891, 1
  %16893 = and i64 %16892, 63
  %16894 = lshr i64 %16889, %16893
  %16895 = or i64 %16888, %16894
  store i64 %16895, ptr %59, align 8, !tbaa !11
  %16896 = load i64, ptr %59, align 8, !tbaa !11
  %16897 = load i64, ptr %58, align 8, !tbaa !11
  %16898 = add i64 %16897, %16896
  store i64 %16898, ptr %58, align 8, !tbaa !11
  %16899 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16899, ptr %33, align 8, !tbaa !11
  %16900 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %16900, ptr %58, align 8, !tbaa !11
  %16901 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %16901, ptr %59, align 8, !tbaa !11
  %16902 = load i64, ptr %59, align 8, !tbaa !11
  %16903 = load i64, ptr %58, align 8, !tbaa !11
  %16904 = add i64 %16903, %16902
  store i64 %16904, ptr %58, align 8, !tbaa !11
  %16905 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16905, ptr %35, align 8, !tbaa !11
  store i32 64, ptr %48, align 4, !tbaa !9
  %16906 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16906, ptr %22, align 4, !tbaa !9
  br label %16907

16907:                                            ; preds = %17489, %16542
  %16908 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %16908, ptr %58, align 8, !tbaa !11
  %16909 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16909, ptr %38, align 8, !tbaa !11
  %16910 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %16910, ptr %58, align 8, !tbaa !11
  %16911 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16911, ptr %36, align 8, !tbaa !11
  %16912 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %16912, ptr %58, align 8, !tbaa !11
  %16913 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %16913, ptr %42, align 8, !tbaa !11
  store i32 0, ptr %48, align 4, !tbaa !9
  %16914 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16914, ptr %10, align 4, !tbaa !9
  %16915 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16915, ptr %48, align 4, !tbaa !9
  %16916 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16916, ptr %14, align 4, !tbaa !9
  br label %16917

16917:                                            ; preds = %16962, %16907
  %16918 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16918, ptr %48, align 4, !tbaa !9
  %16919 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %16919, ptr %49, align 4, !tbaa !9
  %16920 = load ptr, ptr %5, align 8, !tbaa !5
  %16921 = getelementptr inbounds %struct.w2c_hermes, ptr %16920, i32 0, i32 6
  %16922 = load i32, ptr %49, align 4, !tbaa !9
  %16923 = zext i32 %16922 to i64
  %16924 = call i32 @i32_load(ptr noundef %16921, i64 noundef %16923)
  store i32 %16924, ptr %49, align 4, !tbaa !9
  %16925 = load ptr, ptr %5, align 8, !tbaa !5
  %16926 = getelementptr inbounds %struct.w2c_hermes, ptr %16925, i32 0, i32 6
  %16927 = load i32, ptr %48, align 4, !tbaa !9
  %16928 = zext i32 %16927 to i64
  %16929 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16926, i64 noundef %16928, i32 noundef %16929)
  %16930 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16930, ptr %48, align 4, !tbaa !9
  %16931 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16931, ptr %49, align 4, !tbaa !9
  %16932 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16932, ptr %9, align 4, !tbaa !9
  store i32 4, ptr %50, align 4, !tbaa !9
  %16933 = load i32, ptr %50, align 4, !tbaa !9
  %16934 = load i32, ptr %49, align 4, !tbaa !9
  %16935 = add i32 %16934, %16933
  store i32 %16935, ptr %49, align 4, !tbaa !9
  %16936 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16936, ptr %10, align 4, !tbaa !9
  %16937 = load i32, ptr %49, align 4, !tbaa !9
  %16938 = load i32, ptr %48, align 4, !tbaa !9
  %16939 = add i32 %16938, %16937
  store i32 %16939, ptr %48, align 4, !tbaa !9
  %16940 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16940, ptr %14, align 4, !tbaa !9
  %16941 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %16941, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %16942 = load i32, ptr %49, align 4, !tbaa !9
  %16943 = load i32, ptr %48, align 4, !tbaa !9
  %16944 = add i32 %16943, %16942
  store i32 %16944, ptr %48, align 4, !tbaa !9
  %16945 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16945, ptr %16, align 4, !tbaa !9
  %16946 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %16946, ptr %49, align 4, !tbaa !9
  %16947 = load i32, ptr %48, align 4, !tbaa !9
  %16948 = load i32, ptr %49, align 4, !tbaa !9
  %16949 = icmp eq i32 %16947, %16948
  %16950 = zext i1 %16949 to i32
  store i32 %16950, ptr %48, align 4, !tbaa !9
  %16951 = load i32, ptr %48, align 4, !tbaa !9
  %16952 = icmp ne i32 %16951, 0
  br i1 %16952, label %16953, label %16954

16953:                                            ; preds = %16917
  br label %16964

16954:                                            ; preds = %16917
  %16955 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16955, ptr %48, align 4, !tbaa !9
  store i32 57, ptr %49, align 4, !tbaa !9
  %16956 = load i32, ptr %48, align 4, !tbaa !9
  %16957 = load i32, ptr %49, align 4, !tbaa !9
  %16958 = icmp ult i32 %16956, %16957
  %16959 = zext i1 %16958 to i32
  store i32 %16959, ptr %48, align 4, !tbaa !9
  %16960 = load i32, ptr %48, align 4, !tbaa !9
  %16961 = icmp ne i32 %16960, 0
  br i1 %16961, label %16962, label %16963

16962:                                            ; preds = %16954
  br label %16917

16963:                                            ; preds = %16954
  br label %16964

16964:                                            ; preds = %16963, %16953
  %16965 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16965, ptr %48, align 4, !tbaa !9
  store i32 2147483580, ptr %49, align 4, !tbaa !9
  %16966 = load i32, ptr %49, align 4, !tbaa !9
  %16967 = load i32, ptr %48, align 4, !tbaa !9
  %16968 = and i32 %16967, %16966
  store i32 %16968, ptr %48, align 4, !tbaa !9
  %16969 = load i32, ptr %48, align 4, !tbaa !9
  %16970 = icmp ne i32 %16969, 0
  %16971 = xor i1 %16970, true
  %16972 = zext i1 %16971 to i32
  store i32 %16972, ptr %48, align 4, !tbaa !9
  %16973 = load i32, ptr %48, align 4, !tbaa !9
  %16974 = icmp ne i32 %16973, 0
  br i1 %16974, label %16975, label %16976

16975:                                            ; preds = %16964
  br label %17204

16976:                                            ; preds = %16964
  %16977 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16977, ptr %48, align 4, !tbaa !9
  %16978 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16978, ptr %12, align 4, !tbaa !9
  %16979 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16979, ptr %48, align 4, !tbaa !9
  %16980 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %16980, ptr %8, align 4, !tbaa !9
  store i32 60, ptr %49, align 4, !tbaa !9
  %16981 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16981, ptr %50, align 4, !tbaa !9
  %16982 = load i32, ptr %50, align 4, !tbaa !9
  %16983 = load i32, ptr %49, align 4, !tbaa !9
  %16984 = sub i32 %16983, %16982
  store i32 %16984, ptr %49, align 4, !tbaa !9
  %16985 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %16985, ptr %9, align 4, !tbaa !9
  %16986 = load i32, ptr %48, align 4, !tbaa !9
  %16987 = load i32, ptr %49, align 4, !tbaa !9
  %16988 = icmp eq i32 %16986, %16987
  %16989 = zext i1 %16988 to i32
  store i32 %16989, ptr %48, align 4, !tbaa !9
  %16990 = load i32, ptr %48, align 4, !tbaa !9
  %16991 = icmp ne i32 %16990, 0
  br i1 %16991, label %16992, label %17052

16992:                                            ; preds = %16976
  br label %16993

16993:                                            ; preds = %17050, %16992
  %16994 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %16994, ptr %48, align 4, !tbaa !9
  %16995 = load ptr, ptr %5, align 8, !tbaa !5
  %16996 = getelementptr inbounds %struct.w2c_hermes, ptr %16995, i32 0, i32 6
  %16997 = load i32, ptr %48, align 4, !tbaa !9
  %16998 = zext i32 %16997 to i64
  %16999 = call i32 @i32_load8_u(ptr noundef %16996, i64 noundef %16998)
  store i32 %16999, ptr %48, align 4, !tbaa !9
  %17000 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17000, ptr %9, align 4, !tbaa !9
  %17001 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17001, ptr %48, align 4, !tbaa !9
  %17002 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17002, ptr %49, align 4, !tbaa !9
  %17003 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17003, ptr %50, align 4, !tbaa !9
  %17004 = load i32, ptr %50, align 4, !tbaa !9
  %17005 = load i32, ptr %49, align 4, !tbaa !9
  %17006 = add i32 %17005, %17004
  store i32 %17006, ptr %49, align 4, !tbaa !9
  %17007 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %17007, ptr %30, align 4, !tbaa !9
  %17008 = load ptr, ptr %5, align 8, !tbaa !5
  %17009 = getelementptr inbounds %struct.w2c_hermes, ptr %17008, i32 0, i32 6
  %17010 = load i32, ptr %49, align 4, !tbaa !9
  %17011 = zext i32 %17010 to i64
  %17012 = call i32 @i32_load8_u(ptr noundef %17009, i64 noundef %17011)
  store i32 %17012, ptr %49, align 4, !tbaa !9
  %17013 = load ptr, ptr %5, align 8, !tbaa !5
  %17014 = getelementptr inbounds %struct.w2c_hermes, ptr %17013, i32 0, i32 6
  %17015 = load i32, ptr %48, align 4, !tbaa !9
  %17016 = zext i32 %17015 to i64
  %17017 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %17014, i64 noundef %17016, i32 noundef %17017)
  %17018 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %17018, ptr %48, align 4, !tbaa !9
  %17019 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17019, ptr %49, align 4, !tbaa !9
  %17020 = load ptr, ptr %5, align 8, !tbaa !5
  %17021 = getelementptr inbounds %struct.w2c_hermes, ptr %17020, i32 0, i32 6
  %17022 = load i32, ptr %48, align 4, !tbaa !9
  %17023 = zext i32 %17022 to i64
  %17024 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %17021, i64 noundef %17023, i32 noundef %17024)
  %17025 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17025, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %17026 = load i32, ptr %49, align 4, !tbaa !9
  %17027 = load i32, ptr %48, align 4, !tbaa !9
  %17028 = add i32 %17027, %17026
  store i32 %17028, ptr %48, align 4, !tbaa !9
  %17029 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17029, ptr %12, align 4, !tbaa !9
  %17030 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17030, ptr %49, align 4, !tbaa !9
  %17031 = load i32, ptr %48, align 4, !tbaa !9
  %17032 = load i32, ptr %49, align 4, !tbaa !9
  %17033 = icmp eq i32 %17031, %17032
  %17034 = zext i1 %17033 to i32
  store i32 %17034, ptr %48, align 4, !tbaa !9
  %17035 = load i32, ptr %48, align 4, !tbaa !9
  %17036 = icmp ne i32 %17035, 0
  br i1 %17036, label %17037, label %17038

17037:                                            ; preds = %16993
  br label %17204

17038:                                            ; preds = %16993
  %17039 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17039, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %17040 = load i32, ptr %49, align 4, !tbaa !9
  %17041 = load i32, ptr %48, align 4, !tbaa !9
  %17042 = add i32 %17041, %17040
  store i32 %17042, ptr %48, align 4, !tbaa !9
  %17043 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17043, ptr %8, align 4, !tbaa !9
  store i32 64, ptr %49, align 4, !tbaa !9
  %17044 = load i32, ptr %48, align 4, !tbaa !9
  %17045 = load i32, ptr %49, align 4, !tbaa !9
  %17046 = icmp ne i32 %17044, %17045
  %17047 = zext i1 %17046 to i32
  store i32 %17047, ptr %48, align 4, !tbaa !9
  %17048 = load i32, ptr %48, align 4, !tbaa !9
  %17049 = icmp ne i32 %17048, 0
  br i1 %17049, label %17050, label %17051

17050:                                            ; preds = %17038
  br label %16993

17051:                                            ; preds = %17038
  br label %17204

17052:                                            ; preds = %16976
  br label %17053

17053:                                            ; preds = %17093, %17052
  %17054 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17054, ptr %48, align 4, !tbaa !9
  %17055 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17055, ptr %49, align 4, !tbaa !9
  %17056 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %17056, ptr %8, align 4, !tbaa !9
  %17057 = load i32, ptr %49, align 4, !tbaa !9
  %17058 = icmp eq i32 %17057, 0
  %17059 = xor i1 %17058, true
  %17060 = xor i1 %17059, true
  %17061 = zext i1 %17060 to i32
  %17062 = sext i32 %17061 to i64
  %17063 = call i64 @llvm.expect.i64(i64 %17062, i64 0)
  %17064 = icmp ne i64 %17063, 0
  br i1 %17064, label %17065, label %17067

17065:                                            ; preds = %17053
  call void @wasm_rt_trap(i32 noundef 3) #8
  unreachable

17066:                                            ; No predecessors!
  br label %17088

17067:                                            ; preds = %17053
  %17068 = load i32, ptr %48, align 4, !tbaa !9
  %17069 = icmp eq i32 %17068, -2147483648
  br i1 %17069, label %17070, label %17073

17070:                                            ; preds = %17067
  %17071 = load i32, ptr %49, align 4, !tbaa !9
  %17072 = icmp eq i32 %17071, -1
  br label %17073

17073:                                            ; preds = %17070, %17067
  %17074 = phi i1 [ false, %17067 ], [ %17072, %17070 ]
  %17075 = xor i1 %17074, true
  %17076 = xor i1 %17075, true
  %17077 = zext i1 %17076 to i32
  %17078 = sext i32 %17077 to i64
  %17079 = call i64 @llvm.expect.i64(i64 %17078, i64 0)
  %17080 = icmp ne i64 %17079, 0
  br i1 %17080, label %17081, label %17082

17081:                                            ; preds = %17073
  br label %17086

17082:                                            ; preds = %17073
  %17083 = load i32, ptr %48, align 4, !tbaa !9
  %17084 = load i32, ptr %49, align 4, !tbaa !9
  %17085 = srem i32 %17083, %17084
  br label %17086

17086:                                            ; preds = %17082, %17081
  %17087 = phi i32 [ 0, %17081 ], [ %17085, %17082 ]
  br label %17088

17088:                                            ; preds = %17086, %17066
  %17089 = phi i32 [ 0, %17066 ], [ %17087, %17086 ]
  store i32 %17089, ptr %48, align 4, !tbaa !9
  %17090 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17090, ptr %9, align 4, !tbaa !9
  %17091 = load i32, ptr %48, align 4, !tbaa !9
  %17092 = icmp ne i32 %17091, 0
  br i1 %17092, label %17093, label %17094

17093:                                            ; preds = %17088
  br label %17053

17094:                                            ; preds = %17088
  %17095 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17095, ptr %48, align 4, !tbaa !9
  %17096 = load i32, ptr %48, align 4, !tbaa !9
  %17097 = icmp ne i32 %17096, 0
  %17098 = xor i1 %17097, true
  %17099 = zext i1 %17098 to i32
  store i32 %17099, ptr %48, align 4, !tbaa !9
  %17100 = load i32, ptr %48, align 4, !tbaa !9
  %17101 = icmp ne i32 %17100, 0
  br i1 %17101, label %17102, label %17103

17102:                                            ; preds = %17094
  br label %17204

17103:                                            ; preds = %17094
  %17104 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17104, ptr %48, align 4, !tbaa !9
  %17105 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17105, ptr %49, align 4, !tbaa !9
  %17106 = load i32, ptr %49, align 4, !tbaa !9
  %17107 = load i32, ptr %48, align 4, !tbaa !9
  %17108 = add i32 %17107, %17106
  store i32 %17108, ptr %48, align 4, !tbaa !9
  %17109 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17109, ptr %8, align 4, !tbaa !9
  br label %17110

17110:                                            ; preds = %17202, %17103
  %17111 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17111, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %17112 = load i32, ptr %49, align 4, !tbaa !9
  %17113 = load i32, ptr %48, align 4, !tbaa !9
  %17114 = sub i32 %17113, %17112
  store i32 %17114, ptr %48, align 4, !tbaa !9
  %17115 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17115, ptr %8, align 4, !tbaa !9
  %17116 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17116, ptr %49, align 4, !tbaa !9
  %17117 = load i32, ptr %49, align 4, !tbaa !9
  %17118 = load i32, ptr %48, align 4, !tbaa !9
  %17119 = add i32 %17118, %17117
  store i32 %17119, ptr %48, align 4, !tbaa !9
  %17120 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17120, ptr %9, align 4, !tbaa !9
  %17121 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17121, ptr %48, align 4, !tbaa !9
  %17122 = load ptr, ptr %5, align 8, !tbaa !5
  %17123 = getelementptr inbounds %struct.w2c_hermes, ptr %17122, i32 0, i32 6
  %17124 = load i32, ptr %48, align 4, !tbaa !9
  %17125 = zext i32 %17124 to i64
  %17126 = call i32 @i32_load8_u(ptr noundef %17123, i64 noundef %17125)
  store i32 %17126, ptr %48, align 4, !tbaa !9
  %17127 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17127, ptr %14, align 4, !tbaa !9
  %17128 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17128, ptr %48, align 4, !tbaa !9
  %17129 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17129, ptr %12, align 4, !tbaa !9
  br label %17130

17130:                                            ; preds = %17185, %17110
  %17131 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17131, ptr %48, align 4, !tbaa !9
  %17132 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17132, ptr %49, align 4, !tbaa !9
  %17133 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %17133, ptr %12, align 4, !tbaa !9
  %17134 = load ptr, ptr %5, align 8, !tbaa !5
  %17135 = getelementptr inbounds %struct.w2c_hermes, ptr %17134, i32 0, i32 6
  %17136 = load i32, ptr %49, align 4, !tbaa !9
  %17137 = zext i32 %17136 to i64
  %17138 = call i32 @i32_load8_u(ptr noundef %17135, i64 noundef %17137)
  store i32 %17138, ptr %49, align 4, !tbaa !9
  %17139 = load ptr, ptr %5, align 8, !tbaa !5
  %17140 = getelementptr inbounds %struct.w2c_hermes, ptr %17139, i32 0, i32 6
  %17141 = load i32, ptr %48, align 4, !tbaa !9
  %17142 = zext i32 %17141 to i64
  %17143 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %17140, i64 noundef %17142, i32 noundef %17143)
  %17144 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17144, ptr %48, align 4, !tbaa !9
  %17145 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17145, ptr %49, align 4, !tbaa !9
  %17146 = load i32, ptr %49, align 4, !tbaa !9
  %17147 = load i32, ptr %48, align 4, !tbaa !9
  %17148 = add i32 %17147, %17146
  store i32 %17148, ptr %48, align 4, !tbaa !9
  %17149 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17149, ptr %49, align 4, !tbaa !9
  %17150 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17150, ptr %50, align 4, !tbaa !9
  %17151 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %17151, ptr %51, align 4, !tbaa !9
  %17152 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17152, ptr %52, align 4, !tbaa !9
  %17153 = load i32, ptr %52, align 4, !tbaa !9
  %17154 = load i32, ptr %51, align 4, !tbaa !9
  %17155 = sub i32 %17154, %17153
  store i32 %17155, ptr %51, align 4, !tbaa !9
  %17156 = load i32, ptr %51, align 4, !tbaa !9
  store i32 %17156, ptr %9, align 4, !tbaa !9
  %17157 = load i32, ptr %51, align 4, !tbaa !9
  %17158 = load i32, ptr %50, align 4, !tbaa !9
  %17159 = sub i32 %17158, %17157
  store i32 %17159, ptr %50, align 4, !tbaa !9
  %17160 = load i32, ptr %50, align 4, !tbaa !9
  %17161 = load i32, ptr %49, align 4, !tbaa !9
  %17162 = add i32 %17161, %17160
  store i32 %17162, ptr %49, align 4, !tbaa !9
  %17163 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17163, ptr %50, align 4, !tbaa !9
  %17164 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17164, ptr %51, align 4, !tbaa !9
  %17165 = load i32, ptr %50, align 4, !tbaa !9
  %17166 = load i32, ptr %51, align 4, !tbaa !9
  %17167 = icmp sgt i32 %17165, %17166
  %17168 = zext i1 %17167 to i32
  store i32 %17168, ptr %50, align 4, !tbaa !9
  %17169 = load i32, ptr %50, align 4, !tbaa !9
  %17170 = icmp ne i32 %17169, 0
  br i1 %17170, label %17171, label %17173

17171:                                            ; preds = %17130
  %17172 = load i32, ptr %48, align 4, !tbaa !9
  br label %17175

17173:                                            ; preds = %17130
  %17174 = load i32, ptr %49, align 4, !tbaa !9
  br label %17175

17175:                                            ; preds = %17173, %17171
  %17176 = phi i32 [ %17172, %17171 ], [ %17174, %17173 ]
  store i32 %17176, ptr %48, align 4, !tbaa !9
  %17177 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17177, ptr %9, align 4, !tbaa !9
  %17178 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17178, ptr %49, align 4, !tbaa !9
  %17179 = load i32, ptr %48, align 4, !tbaa !9
  %17180 = load i32, ptr %49, align 4, !tbaa !9
  %17181 = icmp ne i32 %17179, %17180
  %17182 = zext i1 %17181 to i32
  store i32 %17182, ptr %48, align 4, !tbaa !9
  %17183 = load i32, ptr %48, align 4, !tbaa !9
  %17184 = icmp ne i32 %17183, 0
  br i1 %17184, label %17185, label %17186

17185:                                            ; preds = %17175
  br label %17130

17186:                                            ; preds = %17175
  %17187 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17187, ptr %48, align 4, !tbaa !9
  %17188 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17188, ptr %49, align 4, !tbaa !9
  %17189 = load ptr, ptr %5, align 8, !tbaa !5
  %17190 = getelementptr inbounds %struct.w2c_hermes, ptr %17189, i32 0, i32 6
  %17191 = load i32, ptr %48, align 4, !tbaa !9
  %17192 = zext i32 %17191 to i64
  %17193 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %17190, i64 noundef %17192, i32 noundef %17193)
  %17194 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17194, ptr %48, align 4, !tbaa !9
  %17195 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17195, ptr %49, align 4, !tbaa !9
  %17196 = load i32, ptr %48, align 4, !tbaa !9
  %17197 = load i32, ptr %49, align 4, !tbaa !9
  %17198 = icmp ne i32 %17196, %17197
  %17199 = zext i1 %17198 to i32
  store i32 %17199, ptr %48, align 4, !tbaa !9
  %17200 = load i32, ptr %48, align 4, !tbaa !9
  %17201 = icmp ne i32 %17200, 0
  br i1 %17201, label %17202, label %17203

17202:                                            ; preds = %17186
  br label %17110

17203:                                            ; preds = %17186
  br label %17204

17204:                                            ; preds = %17203, %17102, %17051, %17037, %16975
  %17205 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17205, ptr %48, align 4, !tbaa !9
  %17206 = load ptr, ptr %5, align 8, !tbaa !5
  %17207 = getelementptr inbounds %struct.w2c_hermes, ptr %17206, i32 0, i32 6
  %17208 = load i32, ptr %48, align 4, !tbaa !9
  %17209 = zext i32 %17208 to i64
  %17210 = add i64 %17209, 56
  %17211 = call i64 @i64_load(ptr noundef %17207, i64 noundef %17210)
  store i64 %17211, ptr %58, align 8, !tbaa !11
  %17212 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %17212, ptr %43, align 8, !tbaa !11
  %17213 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17213, ptr %49, align 4, !tbaa !9
  %17214 = load ptr, ptr %5, align 8, !tbaa !5
  %17215 = getelementptr inbounds %struct.w2c_hermes, ptr %17214, i32 0, i32 6
  %17216 = load i32, ptr %49, align 4, !tbaa !9
  %17217 = zext i32 %17216 to i64
  %17218 = add i64 %17217, 32
  %17219 = call i64 @i64_load(ptr noundef %17215, i64 noundef %17218)
  store i64 %17219, ptr %59, align 8, !tbaa !11
  %17220 = load i64, ptr %34, align 8, !tbaa !11
  store i64 %17220, ptr %60, align 8, !tbaa !11
  %17221 = load i64, ptr %37, align 8, !tbaa !11
  store i64 %17221, ptr %61, align 8, !tbaa !11
  %17222 = load i64, ptr %61, align 8, !tbaa !11
  %17223 = load i64, ptr %60, align 8, !tbaa !11
  %17224 = add i64 %17223, %17222
  store i64 %17224, ptr %60, align 8, !tbaa !11
  store i64 31, ptr %61, align 8, !tbaa !11
  %17225 = load i64, ptr %60, align 8, !tbaa !11
  %17226 = load i64, ptr %61, align 8, !tbaa !11
  %17227 = and i64 %17226, 63
  %17228 = shl i64 %17225, %17227
  %17229 = load i64, ptr %60, align 8, !tbaa !11
  %17230 = load i64, ptr %61, align 8, !tbaa !11
  %17231 = sub i64 63, %17230
  %17232 = add i64 %17231, 1
  %17233 = and i64 %17232, 63
  %17234 = lshr i64 %17229, %17233
  %17235 = or i64 %17228, %17234
  store i64 %17235, ptr %60, align 8, !tbaa !11
  %17236 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %17236, ptr %39, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %61, align 8, !tbaa !11
  %17237 = load i64, ptr %61, align 8, !tbaa !11
  %17238 = load i64, ptr %60, align 8, !tbaa !11
  %17239 = mul i64 %17238, %17237
  store i64 %17239, ptr %60, align 8, !tbaa !11
  %17240 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %17240, ptr %41, align 8, !tbaa !11
  %17241 = load i64, ptr %38, align 8, !tbaa !11
  store i64 %17241, ptr %61, align 8, !tbaa !11
  %17242 = load i64, ptr %61, align 8, !tbaa !11
  %17243 = load i64, ptr %60, align 8, !tbaa !11
  %17244 = add i64 %17243, %17242
  store i64 %17244, ptr %60, align 8, !tbaa !11
  %17245 = load i64, ptr %60, align 8, !tbaa !11
  %17246 = load i64, ptr %59, align 8, !tbaa !11
  %17247 = add i64 %17246, %17245
  store i64 %17247, ptr %59, align 8, !tbaa !11
  %17248 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %17248, ptr %32, align 8, !tbaa !11
  %17249 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17249, ptr %50, align 4, !tbaa !9
  %17250 = load ptr, ptr %5, align 8, !tbaa !5
  %17251 = getelementptr inbounds %struct.w2c_hermes, ptr %17250, i32 0, i32 6
  %17252 = load i32, ptr %50, align 4, !tbaa !9
  %17253 = zext i32 %17252 to i64
  %17254 = add i64 %17253, 40
  %17255 = call i64 @i64_load(ptr noundef %17251, i64 noundef %17254)
  store i64 %17255, ptr %60, align 8, !tbaa !11
  %17256 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %17256, ptr %34, align 8, !tbaa !11
  %17257 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %17257, ptr %61, align 8, !tbaa !11
  %17258 = load i64, ptr %61, align 8, !tbaa !11
  %17259 = load i64, ptr %60, align 8, !tbaa !11
  %17260 = add i64 %17259, %17258
  store i64 %17260, ptr %60, align 8, !tbaa !11
  %17261 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17261, ptr %51, align 4, !tbaa !9
  %17262 = load ptr, ptr %5, align 8, !tbaa !5
  %17263 = getelementptr inbounds %struct.w2c_hermes, ptr %17262, i32 0, i32 6
  %17264 = load i32, ptr %51, align 4, !tbaa !9
  %17265 = zext i32 %17264 to i64
  %17266 = add i64 %17265, 48
  %17267 = call i64 @i64_load(ptr noundef %17263, i64 noundef %17266)
  store i64 %17267, ptr %61, align 8, !tbaa !11
  %17268 = load i64, ptr %61, align 8, !tbaa !11
  store i64 %17268, ptr %40, align 8, !tbaa !11
  %17269 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %17269, ptr %62, align 8, !tbaa !11
  %17270 = load i64, ptr %36, align 8, !tbaa !11
  store i64 %17270, ptr %63, align 8, !tbaa !11
  %17271 = load i64, ptr %63, align 8, !tbaa !11
  %17272 = load i64, ptr %62, align 8, !tbaa !11
  %17273 = add i64 %17272, %17271
  store i64 %17273, ptr %62, align 8, !tbaa !11
  %17274 = load i64, ptr %62, align 8, !tbaa !11
  %17275 = load i64, ptr %61, align 8, !tbaa !11
  %17276 = add i64 %17275, %17274
  store i64 %17276, ptr %61, align 8, !tbaa !11
  store i64 22, ptr %62, align 8, !tbaa !11
  %17277 = load i64, ptr %61, align 8, !tbaa !11
  %17278 = load i64, ptr %62, align 8, !tbaa !11
  %17279 = and i64 %17278, 63
  %17280 = shl i64 %17277, %17279
  %17281 = load i64, ptr %61, align 8, !tbaa !11
  %17282 = load i64, ptr %62, align 8, !tbaa !11
  %17283 = sub i64 63, %17282
  %17284 = add i64 %17283, 1
  %17285 = and i64 %17284, 63
  %17286 = lshr i64 %17281, %17285
  %17287 = or i64 %17280, %17286
  store i64 %17287, ptr %61, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %62, align 8, !tbaa !11
  %17288 = load i64, ptr %62, align 8, !tbaa !11
  %17289 = load i64, ptr %61, align 8, !tbaa !11
  %17290 = mul i64 %17289, %17288
  store i64 %17290, ptr %61, align 8, !tbaa !11
  %17291 = load i64, ptr %61, align 8, !tbaa !11
  %17292 = load i64, ptr %60, align 8, !tbaa !11
  %17293 = add i64 %17292, %17291
  store i64 %17293, ptr %60, align 8, !tbaa !11
  %17294 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %17294, ptr %31, align 8, !tbaa !11
  %17295 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17295, ptr %51, align 4, !tbaa !9
  %17296 = load ptr, ptr %5, align 8, !tbaa !5
  %17297 = getelementptr inbounds %struct.w2c_hermes, ptr %17296, i32 0, i32 6
  %17298 = load i32, ptr %51, align 4, !tbaa !9
  %17299 = zext i32 %17298 to i64
  %17300 = add i64 %17299, 16
  %17301 = call i64 @i64_load(ptr noundef %17297, i64 noundef %17300)
  store i64 %17301, ptr %61, align 8, !tbaa !11
  %17302 = load i64, ptr %61, align 8, !tbaa !11
  store i64 %17302, ptr %44, align 8, !tbaa !11
  %17303 = load i64, ptr %61, align 8, !tbaa !11
  %17304 = load i64, ptr %60, align 8, !tbaa !11
  %17305 = add i64 %17304, %17303
  store i64 %17305, ptr %60, align 8, !tbaa !11
  %17306 = load i64, ptr %60, align 8, !tbaa !11
  %17307 = load i64, ptr %59, align 8, !tbaa !11
  %17308 = add i64 %17307, %17306
  store i64 %17308, ptr %59, align 8, !tbaa !11
  %17309 = load i64, ptr %59, align 8, !tbaa !11
  %17310 = load i64, ptr %58, align 8, !tbaa !11
  %17311 = add i64 %17310, %17309
  store i64 %17311, ptr %58, align 8, !tbaa !11
  store i64 43, ptr %59, align 8, !tbaa !11
  %17312 = load i64, ptr %58, align 8, !tbaa !11
  %17313 = load i64, ptr %59, align 8, !tbaa !11
  %17314 = and i64 %17313, 63
  %17315 = shl i64 %17312, %17314
  %17316 = load i64, ptr %58, align 8, !tbaa !11
  %17317 = load i64, ptr %59, align 8, !tbaa !11
  %17318 = sub i64 63, %17317
  %17319 = add i64 %17318, 1
  %17320 = and i64 %17319, 63
  %17321 = lshr i64 %17316, %17320
  %17322 = or i64 %17315, %17321
  store i64 %17322, ptr %58, align 8, !tbaa !11
  %17323 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %17323, ptr %59, align 8, !tbaa !11
  %17324 = load i64, ptr %59, align 8, !tbaa !11
  %17325 = load i64, ptr %58, align 8, !tbaa !11
  %17326 = add i64 %17325, %17324
  store i64 %17326, ptr %58, align 8, !tbaa !11
  %17327 = load i64, ptr %34, align 8, !tbaa !11
  store i64 %17327, ptr %59, align 8, !tbaa !11
  %17328 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %17328, ptr %60, align 8, !tbaa !11
  %17329 = load i64, ptr %60, align 8, !tbaa !11
  %17330 = load i64, ptr %59, align 8, !tbaa !11
  %17331 = add i64 %17330, %17329
  store i64 %17331, ptr %59, align 8, !tbaa !11
  %17332 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %17332, ptr %60, align 8, !tbaa !11
  %17333 = load i64, ptr %60, align 8, !tbaa !11
  %17334 = load i64, ptr %59, align 8, !tbaa !11
  %17335 = add i64 %17334, %17333
  store i64 %17335, ptr %59, align 8, !tbaa !11
  %17336 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %17336, ptr %40, align 8, !tbaa !11
  store i64 20, ptr %60, align 8, !tbaa !11
  %17337 = load i64, ptr %59, align 8, !tbaa !11
  %17338 = load i64, ptr %60, align 8, !tbaa !11
  %17339 = and i64 %17338, 63
  %17340 = shl i64 %17337, %17339
  %17341 = load i64, ptr %59, align 8, !tbaa !11
  %17342 = load i64, ptr %60, align 8, !tbaa !11
  %17343 = sub i64 63, %17342
  %17344 = add i64 %17343, 1
  %17345 = and i64 %17344, 63
  %17346 = lshr i64 %17341, %17345
  %17347 = or i64 %17340, %17346
  store i64 %17347, ptr %59, align 8, !tbaa !11
  %17348 = load i64, ptr %59, align 8, !tbaa !11
  %17349 = load i64, ptr %58, align 8, !tbaa !11
  %17350 = add i64 %17349, %17348
  store i64 %17350, ptr %58, align 8, !tbaa !11
  %17351 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %17351, ptr %32, align 8, !tbaa !11
  %17352 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17352, ptr %48, align 4, !tbaa !9
  %17353 = load ptr, ptr %5, align 8, !tbaa !5
  %17354 = getelementptr inbounds %struct.w2c_hermes, ptr %17353, i32 0, i32 6
  %17355 = load i32, ptr %48, align 4, !tbaa !9
  %17356 = zext i32 %17355 to i64
  %17357 = call i64 @i64_load(ptr noundef %17354, i64 noundef %17356)
  store i64 %17357, ptr %58, align 8, !tbaa !11
  %17358 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %17358, ptr %59, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %60, align 8, !tbaa !11
  %17359 = load i64, ptr %60, align 8, !tbaa !11
  %17360 = load i64, ptr %59, align 8, !tbaa !11
  %17361 = mul i64 %17360, %17359
  store i64 %17361, ptr %59, align 8, !tbaa !11
  %17362 = load i64, ptr %59, align 8, !tbaa !11
  %17363 = load i64, ptr %58, align 8, !tbaa !11
  %17364 = add i64 %17363, %17362
  store i64 %17364, ptr %58, align 8, !tbaa !11
  %17365 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %17365, ptr %33, align 8, !tbaa !11
  %17366 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17366, ptr %49, align 4, !tbaa !9
  %17367 = load ptr, ptr %5, align 8, !tbaa !5
  %17368 = getelementptr inbounds %struct.w2c_hermes, ptr %17367, i32 0, i32 6
  %17369 = load i32, ptr %49, align 4, !tbaa !9
  %17370 = zext i32 %17369 to i64
  %17371 = add i64 %17370, 8
  %17372 = call i64 @i64_load(ptr noundef %17368, i64 noundef %17371)
  store i64 %17372, ptr %59, align 8, !tbaa !11
  %17373 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %17373, ptr %34, align 8, !tbaa !11
  %17374 = load i64, ptr %59, align 8, !tbaa !11
  %17375 = load i64, ptr %58, align 8, !tbaa !11
  %17376 = add i64 %17375, %17374
  store i64 %17376, ptr %58, align 8, !tbaa !11
  %17377 = load i64, ptr %44, align 8, !tbaa !11
  store i64 %17377, ptr %59, align 8, !tbaa !11
  %17378 = load i64, ptr %59, align 8, !tbaa !11
  %17379 = load i64, ptr %58, align 8, !tbaa !11
  %17380 = add i64 %17379, %17378
  store i64 %17380, ptr %58, align 8, !tbaa !11
  %17381 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %17381, ptr %44, align 8, !tbaa !11
  store i64 20, ptr %59, align 8, !tbaa !11
  %17382 = load i64, ptr %58, align 8, !tbaa !11
  %17383 = load i64, ptr %59, align 8, !tbaa !11
  %17384 = and i64 %17383, 63
  %17385 = shl i64 %17382, %17384
  %17386 = load i64, ptr %58, align 8, !tbaa !11
  %17387 = load i64, ptr %59, align 8, !tbaa !11
  %17388 = sub i64 63, %17387
  %17389 = add i64 %17388, 1
  %17390 = and i64 %17389, 63
  %17391 = lshr i64 %17386, %17390
  %17392 = or i64 %17385, %17391
  store i64 %17392, ptr %58, align 8, !tbaa !11
  %17393 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %17393, ptr %59, align 8, !tbaa !11
  %17394 = load i64, ptr %59, align 8, !tbaa !11
  %17395 = load i64, ptr %58, align 8, !tbaa !11
  %17396 = add i64 %17395, %17394
  store i64 %17396, ptr %58, align 8, !tbaa !11
  %17397 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17397, ptr %49, align 4, !tbaa !9
  %17398 = load ptr, ptr %5, align 8, !tbaa !5
  %17399 = getelementptr inbounds %struct.w2c_hermes, ptr %17398, i32 0, i32 6
  %17400 = load i32, ptr %49, align 4, !tbaa !9
  %17401 = zext i32 %17400 to i64
  %17402 = add i64 %17401, 24
  %17403 = call i64 @i64_load(ptr noundef %17399, i64 noundef %17402)
  store i64 %17403, ptr %59, align 8, !tbaa !11
  %17404 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %17404, ptr %45, align 8, !tbaa !11
  %17405 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %17405, ptr %60, align 8, !tbaa !11
  %17406 = load i64, ptr %36, align 8, !tbaa !11
  store i64 %17406, ptr %61, align 8, !tbaa !11
  %17407 = load i64, ptr %61, align 8, !tbaa !11
  %17408 = load i64, ptr %60, align 8, !tbaa !11
  %17409 = add i64 %17408, %17407
  store i64 %17409, ptr %60, align 8, !tbaa !11
  %17410 = load i64, ptr %42, align 8, !tbaa !11
  store i64 %17410, ptr %61, align 8, !tbaa !11
  %17411 = load i64, ptr %61, align 8, !tbaa !11
  %17412 = load i64, ptr %60, align 8, !tbaa !11
  %17413 = add i64 %17412, %17411
  store i64 %17413, ptr %60, align 8, !tbaa !11
  %17414 = load i64, ptr %34, align 8, !tbaa !11
  store i64 %17414, ptr %61, align 8, !tbaa !11
  %17415 = load i64, ptr %61, align 8, !tbaa !11
  %17416 = load i64, ptr %60, align 8, !tbaa !11
  %17417 = add i64 %17416, %17415
  store i64 %17417, ptr %60, align 8, !tbaa !11
  store i64 27, ptr %61, align 8, !tbaa !11
  %17418 = load i64, ptr %60, align 8, !tbaa !11
  %17419 = load i64, ptr %61, align 8, !tbaa !11
  %17420 = and i64 %17419, 63
  %17421 = shl i64 %17418, %17420
  %17422 = load i64, ptr %60, align 8, !tbaa !11
  %17423 = load i64, ptr %61, align 8, !tbaa !11
  %17424 = sub i64 63, %17423
  %17425 = add i64 %17424, 1
  %17426 = and i64 %17425, 63
  %17427 = lshr i64 %17422, %17426
  %17428 = or i64 %17421, %17427
  store i64 %17428, ptr %60, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %61, align 8, !tbaa !11
  %17429 = load i64, ptr %61, align 8, !tbaa !11
  %17430 = load i64, ptr %60, align 8, !tbaa !11
  %17431 = mul i64 %17430, %17429
  store i64 %17431, ptr %60, align 8, !tbaa !11
  %17432 = load i64, ptr %38, align 8, !tbaa !11
  store i64 %17432, ptr %61, align 8, !tbaa !11
  %17433 = load i64, ptr %61, align 8, !tbaa !11
  %17434 = load i64, ptr %60, align 8, !tbaa !11
  %17435 = xor i64 %17434, %17433
  store i64 %17435, ptr %60, align 8, !tbaa !11
  %17436 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %17436, ptr %34, align 8, !tbaa !11
  %17437 = load i64, ptr %37, align 8, !tbaa !11
  store i64 %17437, ptr %61, align 8, !tbaa !11
  %17438 = load i64, ptr %61, align 8, !tbaa !11
  %17439 = load i64, ptr %60, align 8, !tbaa !11
  %17440 = add i64 %17439, %17438
  store i64 %17440, ptr %60, align 8, !tbaa !11
  %17441 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %17441, ptr %61, align 8, !tbaa !11
  %17442 = load i64, ptr %61, align 8, !tbaa !11
  %17443 = load i64, ptr %60, align 8, !tbaa !11
  %17444 = add i64 %17443, %17442
  store i64 %17444, ptr %60, align 8, !tbaa !11
  %17445 = load i64, ptr %60, align 8, !tbaa !11
  %17446 = load i64, ptr %59, align 8, !tbaa !11
  %17447 = add i64 %17446, %17445
  store i64 %17447, ptr %59, align 8, !tbaa !11
  store i64 43, ptr %60, align 8, !tbaa !11
  %17448 = load i64, ptr %59, align 8, !tbaa !11
  %17449 = load i64, ptr %60, align 8, !tbaa !11
  %17450 = and i64 %17449, 63
  %17451 = shl i64 %17448, %17450
  %17452 = load i64, ptr %59, align 8, !tbaa !11
  %17453 = load i64, ptr %60, align 8, !tbaa !11
  %17454 = sub i64 63, %17453
  %17455 = add i64 %17454, 1
  %17456 = and i64 %17455, 63
  %17457 = lshr i64 %17452, %17456
  %17458 = or i64 %17451, %17457
  store i64 %17458, ptr %59, align 8, !tbaa !11
  %17459 = load i64, ptr %59, align 8, !tbaa !11
  %17460 = load i64, ptr %58, align 8, !tbaa !11
  %17461 = add i64 %17460, %17459
  store i64 %17461, ptr %58, align 8, !tbaa !11
  %17462 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %17462, ptr %33, align 8, !tbaa !11
  %17463 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %17463, ptr %58, align 8, !tbaa !11
  %17464 = load i64, ptr %43, align 8, !tbaa !11
  store i64 %17464, ptr %59, align 8, !tbaa !11
  %17465 = load i64, ptr %59, align 8, !tbaa !11
  %17466 = load i64, ptr %58, align 8, !tbaa !11
  %17467 = add i64 %17466, %17465
  store i64 %17467, ptr %58, align 8, !tbaa !11
  %17468 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %17468, ptr %37, align 8, !tbaa !11
  %17469 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17469, ptr %48, align 4, !tbaa !9
  %17470 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %17470, ptr %49, align 4, !tbaa !9
  %17471 = load i32, ptr %49, align 4, !tbaa !9
  %17472 = load i32, ptr %48, align 4, !tbaa !9
  %17473 = add i32 %17472, %17471
  store i32 %17473, ptr %48, align 4, !tbaa !9
  %17474 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17474, ptr %22, align 4, !tbaa !9
  %17475 = load i64, ptr %44, align 8, !tbaa !11
  store i64 %17475, ptr %58, align 8, !tbaa !11
  %17476 = load i64, ptr %45, align 8, !tbaa !11
  store i64 %17476, ptr %59, align 8, !tbaa !11
  %17477 = load i64, ptr %59, align 8, !tbaa !11
  %17478 = load i64, ptr %58, align 8, !tbaa !11
  %17479 = add i64 %17478, %17477
  store i64 %17479, ptr %58, align 8, !tbaa !11
  %17480 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %17480, ptr %35, align 8, !tbaa !11
  %17481 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17481, ptr %48, align 4, !tbaa !9
  %17482 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %17482, ptr %49, align 4, !tbaa !9
  %17483 = load i32, ptr %48, align 4, !tbaa !9
  %17484 = load i32, ptr %49, align 4, !tbaa !9
  %17485 = icmp ne i32 %17483, %17484
  %17486 = zext i1 %17485 to i32
  store i32 %17486, ptr %48, align 4, !tbaa !9
  %17487 = load i32, ptr %48, align 4, !tbaa !9
  %17488 = icmp ne i32 %17487, 0
  br i1 %17488, label %17489, label %17490

17489:                                            ; preds = %17204
  br label %16907

17490:                                            ; preds = %17204
  %17491 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17491, ptr %58, align 8, !tbaa !11
  %17492 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %17492, ptr %49, align 4, !tbaa !9
  %17493 = load i32, ptr %49, align 4, !tbaa !9
  %17494 = zext i32 %17493 to i64
  store i64 %17494, ptr %59, align 8, !tbaa !11
  %17495 = load i64, ptr %59, align 8, !tbaa !11
  %17496 = load i64, ptr %58, align 8, !tbaa !11
  %17497 = add i64 %17496, %17495
  store i64 %17497, ptr %58, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %59, align 8, !tbaa !11
  %17498 = load i64, ptr %59, align 8, !tbaa !11
  %17499 = load i64, ptr %58, align 8, !tbaa !11
  %17500 = mul i64 %17499, %17498
  store i64 %17500, ptr %58, align 8, !tbaa !11
  %17501 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %17501, ptr %59, align 8, !tbaa !11
  %17502 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %17502, ptr %60, align 8, !tbaa !11
  %17503 = load i64, ptr %33, align 8, !tbaa !11
  store i64 %17503, ptr %61, align 8, !tbaa !11
  %17504 = load i64, ptr %61, align 8, !tbaa !11
  %17505 = load i64, ptr %60, align 8, !tbaa !11
  %17506 = xor i64 %17505, %17504
  store i64 %17506, ptr %60, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %61, align 8, !tbaa !11
  %17507 = load i64, ptr %61, align 8, !tbaa !11
  %17508 = load i64, ptr %60, align 8, !tbaa !11
  %17509 = mul i64 %17508, %17507
  store i64 %17509, ptr %60, align 8, !tbaa !11
  %17510 = load i64, ptr %60, align 8, !tbaa !11
  store i64 %17510, ptr %41, align 8, !tbaa !11
  store i64 47, ptr %61, align 8, !tbaa !11
  %17511 = load i64, ptr %61, align 8, !tbaa !11
  %17512 = and i64 %17511, 63
  %17513 = load i64, ptr %60, align 8, !tbaa !11
  %17514 = lshr i64 %17513, %17512
  store i64 %17514, ptr %60, align 8, !tbaa !11
  %17515 = load i64, ptr %60, align 8, !tbaa !11
  %17516 = load i64, ptr %59, align 8, !tbaa !11
  %17517 = xor i64 %17516, %17515
  store i64 %17517, ptr %59, align 8, !tbaa !11
  %17518 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %17518, ptr %60, align 8, !tbaa !11
  %17519 = load i64, ptr %60, align 8, !tbaa !11
  %17520 = load i64, ptr %59, align 8, !tbaa !11
  %17521 = xor i64 %17520, %17519
  store i64 %17521, ptr %59, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %60, align 8, !tbaa !11
  %17522 = load i64, ptr %60, align 8, !tbaa !11
  %17523 = load i64, ptr %59, align 8, !tbaa !11
  %17524 = mul i64 %17523, %17522
  store i64 %17524, ptr %59, align 8, !tbaa !11
  %17525 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %17525, ptr %32, align 8, !tbaa !11
  store i64 47, ptr %60, align 8, !tbaa !11
  %17526 = load i64, ptr %60, align 8, !tbaa !11
  %17527 = and i64 %17526, 63
  %17528 = load i64, ptr %59, align 8, !tbaa !11
  %17529 = lshr i64 %17528, %17527
  store i64 %17529, ptr %59, align 8, !tbaa !11
  %17530 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %17530, ptr %60, align 8, !tbaa !11
  %17531 = load i64, ptr %60, align 8, !tbaa !11
  %17532 = load i64, ptr %59, align 8, !tbaa !11
  %17533 = xor i64 %17532, %17531
  store i64 %17533, ptr %59, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %60, align 8, !tbaa !11
  %17534 = load i64, ptr %60, align 8, !tbaa !11
  %17535 = load i64, ptr %59, align 8, !tbaa !11
  %17536 = mul i64 %17535, %17534
  store i64 %17536, ptr %59, align 8, !tbaa !11
  %17537 = load i64, ptr %59, align 8, !tbaa !11
  %17538 = load i64, ptr %58, align 8, !tbaa !11
  %17539 = add i64 %17538, %17537
  store i64 %17539, ptr %58, align 8, !tbaa !11
  %17540 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %17540, ptr %32, align 8, !tbaa !11
  %17541 = load i64, ptr %32, align 8, !tbaa !11
  store i64 %17541, ptr %59, align 8, !tbaa !11
  %17542 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %17542, ptr %60, align 8, !tbaa !11
  store i64 47, ptr %61, align 8, !tbaa !11
  %17543 = load i64, ptr %61, align 8, !tbaa !11
  %17544 = and i64 %17543, 63
  %17545 = load i64, ptr %60, align 8, !tbaa !11
  %17546 = lshr i64 %17545, %17544
  store i64 %17546, ptr %60, align 8, !tbaa !11
  %17547 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %17547, ptr %61, align 8, !tbaa !11
  %17548 = load i64, ptr %61, align 8, !tbaa !11
  %17549 = load i64, ptr %60, align 8, !tbaa !11
  %17550 = xor i64 %17549, %17548
  store i64 %17550, ptr %60, align 8, !tbaa !11
  store i64 -5435081209227447693, ptr %61, align 8, !tbaa !11
  %17551 = load i64, ptr %61, align 8, !tbaa !11
  %17552 = load i64, ptr %60, align 8, !tbaa !11
  %17553 = mul i64 %17552, %17551
  store i64 %17553, ptr %60, align 8, !tbaa !11
  %17554 = load i64, ptr %34, align 8, !tbaa !11
  store i64 %17554, ptr %61, align 8, !tbaa !11
  %17555 = load i64, ptr %61, align 8, !tbaa !11
  %17556 = load i64, ptr %60, align 8, !tbaa !11
  %17557 = add i64 %17556, %17555
  store i64 %17557, ptr %60, align 8, !tbaa !11
  %17558 = load i64, ptr %37, align 8, !tbaa !11
  store i64 %17558, ptr %61, align 8, !tbaa !11
  %17559 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %17559, ptr %62, align 8, !tbaa !11
  %17560 = load i64, ptr %37, align 8, !tbaa !11
  store i64 %17560, ptr %63, align 8, !tbaa !11
  %17561 = load i64, ptr %63, align 8, !tbaa !11
  %17562 = load i64, ptr %62, align 8, !tbaa !11
  %17563 = xor i64 %17562, %17561
  store i64 %17563, ptr %62, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %63, align 8, !tbaa !11
  %17564 = load i64, ptr %63, align 8, !tbaa !11
  %17565 = load i64, ptr %62, align 8, !tbaa !11
  %17566 = mul i64 %17565, %17564
  store i64 %17566, ptr %62, align 8, !tbaa !11
  %17567 = load i64, ptr %62, align 8, !tbaa !11
  store i64 %17567, ptr %31, align 8, !tbaa !11
  store i64 47, ptr %63, align 8, !tbaa !11
  %17568 = load i64, ptr %63, align 8, !tbaa !11
  %17569 = and i64 %17568, 63
  %17570 = load i64, ptr %62, align 8, !tbaa !11
  %17571 = lshr i64 %17570, %17569
  store i64 %17571, ptr %62, align 8, !tbaa !11
  %17572 = load i64, ptr %62, align 8, !tbaa !11
  %17573 = load i64, ptr %61, align 8, !tbaa !11
  %17574 = xor i64 %17573, %17572
  store i64 %17574, ptr %61, align 8, !tbaa !11
  %17575 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %17575, ptr %62, align 8, !tbaa !11
  %17576 = load i64, ptr %62, align 8, !tbaa !11
  %17577 = load i64, ptr %61, align 8, !tbaa !11
  %17578 = xor i64 %17577, %17576
  store i64 %17578, ptr %61, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %62, align 8, !tbaa !11
  %17579 = load i64, ptr %62, align 8, !tbaa !11
  %17580 = load i64, ptr %61, align 8, !tbaa !11
  %17581 = mul i64 %17580, %17579
  store i64 %17581, ptr %61, align 8, !tbaa !11
  %17582 = load i64, ptr %61, align 8, !tbaa !11
  store i64 %17582, ptr %31, align 8, !tbaa !11
  store i64 47, ptr %62, align 8, !tbaa !11
  %17583 = load i64, ptr %62, align 8, !tbaa !11
  %17584 = and i64 %17583, 63
  %17585 = load i64, ptr %61, align 8, !tbaa !11
  %17586 = lshr i64 %17585, %17584
  store i64 %17586, ptr %61, align 8, !tbaa !11
  %17587 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %17587, ptr %62, align 8, !tbaa !11
  %17588 = load i64, ptr %62, align 8, !tbaa !11
  %17589 = load i64, ptr %61, align 8, !tbaa !11
  %17590 = xor i64 %17589, %17588
  store i64 %17590, ptr %61, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %62, align 8, !tbaa !11
  %17591 = load i64, ptr %62, align 8, !tbaa !11
  %17592 = load i64, ptr %61, align 8, !tbaa !11
  %17593 = mul i64 %17592, %17591
  store i64 %17593, ptr %61, align 8, !tbaa !11
  %17594 = load i64, ptr %61, align 8, !tbaa !11
  %17595 = load i64, ptr %60, align 8, !tbaa !11
  %17596 = add i64 %17595, %17594
  store i64 %17596, ptr %60, align 8, !tbaa !11
  %17597 = load i64, ptr %60, align 8, !tbaa !11
  %17598 = load i64, ptr %59, align 8, !tbaa !11
  %17599 = xor i64 %17598, %17597
  store i64 %17599, ptr %59, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %60, align 8, !tbaa !11
  %17600 = load i64, ptr %60, align 8, !tbaa !11
  %17601 = load i64, ptr %59, align 8, !tbaa !11
  %17602 = mul i64 %17601, %17600
  store i64 %17602, ptr %59, align 8, !tbaa !11
  %17603 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %17603, ptr %31, align 8, !tbaa !11
  store i64 47, ptr %60, align 8, !tbaa !11
  %17604 = load i64, ptr %60, align 8, !tbaa !11
  %17605 = and i64 %17604, 63
  %17606 = load i64, ptr %59, align 8, !tbaa !11
  %17607 = lshr i64 %17606, %17605
  store i64 %17607, ptr %59, align 8, !tbaa !11
  %17608 = load i64, ptr %59, align 8, !tbaa !11
  %17609 = load i64, ptr %58, align 8, !tbaa !11
  %17610 = xor i64 %17609, %17608
  store i64 %17610, ptr %58, align 8, !tbaa !11
  %17611 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %17611, ptr %59, align 8, !tbaa !11
  %17612 = load i64, ptr %59, align 8, !tbaa !11
  %17613 = load i64, ptr %58, align 8, !tbaa !11
  %17614 = xor i64 %17613, %17612
  store i64 %17614, ptr %58, align 8, !tbaa !11
  store i64 -7070675565921424023, ptr %59, align 8, !tbaa !11
  %17615 = load i64, ptr %59, align 8, !tbaa !11
  %17616 = load i64, ptr %58, align 8, !tbaa !11
  %17617 = mul i64 %17616, %17615
  store i64 %17617, ptr %58, align 8, !tbaa !11
  %17618 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %17618, ptr %31, align 8, !tbaa !11
  store i64 47, ptr %59, align 8, !tbaa !11
  %17619 = load i64, ptr %59, align 8, !tbaa !11
  %17620 = and i64 %17619, 63
  %17621 = load i64, ptr %58, align 8, !tbaa !11
  %17622 = lshr i64 %17621, %17620
  store i64 %17622, ptr %58, align 8, !tbaa !11
  %17623 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %17623, ptr %59, align 8, !tbaa !11
  %17624 = load i64, ptr %59, align 8, !tbaa !11
  %17625 = load i64, ptr %58, align 8, !tbaa !11
  %17626 = xor i64 %17625, %17624
  store i64 %17626, ptr %58, align 8, !tbaa !11
  %17627 = load i64, ptr %58, align 8, !tbaa !11
  %17628 = trunc i64 %17627 to i32
  store i32 %17628, ptr %48, align 4, !tbaa !9
  store i32 -348639895, ptr %49, align 4, !tbaa !9
  %17629 = load i32, ptr %49, align 4, !tbaa !9
  %17630 = load i32, ptr %48, align 4, !tbaa !9
  %17631 = mul i32 %17630, %17629
  store i32 %17631, ptr %48, align 4, !tbaa !9
  br label %17632

17632:                                            ; preds = %17490, %16531
  %17633 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17633, ptr %8, align 4, !tbaa !9
  %17634 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17634, ptr %48, align 4, !tbaa !9
  store i32 -64, ptr %49, align 4, !tbaa !9
  %17635 = load i32, ptr %49, align 4, !tbaa !9
  %17636 = load i32, ptr %48, align 4, !tbaa !9
  %17637 = sub i32 %17636, %17635
  store i32 %17637, ptr %48, align 4, !tbaa !9
  %17638 = load i32, ptr %48, align 4, !tbaa !9
  %17639 = load ptr, ptr %5, align 8, !tbaa !5
  %17640 = getelementptr inbounds %struct.w2c_hermes, ptr %17639, i32 0, i32 3
  store i32 %17638, ptr %17640, align 8, !tbaa !15
  %17641 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17641, ptr %48, align 4, !tbaa !9
  %17642 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17642, ptr %11, align 4, !tbaa !9
  %17643 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %17643, ptr %48, align 4, !tbaa !9
  store i32 576, ptr %49, align 4, !tbaa !9
  %17644 = load i32, ptr %49, align 4, !tbaa !9
  %17645 = load i32, ptr %48, align 4, !tbaa !9
  %17646 = add i32 %17645, %17644
  store i32 %17646, ptr %48, align 4, !tbaa !9
  %17647 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17647, ptr %16, align 4, !tbaa !9
  %17648 = load ptr, ptr %5, align 8, !tbaa !5
  %17649 = getelementptr inbounds %struct.w2c_hermes, ptr %17648, i32 0, i32 6
  %17650 = load i32, ptr %48, align 4, !tbaa !9
  %17651 = zext i32 %17650 to i64
  %17652 = add i64 %17651, 4
  %17653 = call i32 @i32_load(ptr noundef %17649, i64 noundef %17652)
  store i32 %17653, ptr %48, align 4, !tbaa !9
  %17654 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17654, ptr %9, align 4, !tbaa !9
  %17655 = load i32, ptr %48, align 4, !tbaa !9
  %17656 = icmp ne i32 %17655, 0
  %17657 = xor i1 %17656, true
  %17658 = zext i1 %17657 to i32
  store i32 %17658, ptr %48, align 4, !tbaa !9
  %17659 = load i32, ptr %48, align 4, !tbaa !9
  %17660 = icmp ne i32 %17659, 0
  br i1 %17660, label %17661, label %17662

17661:                                            ; preds = %17632
  br label %18060

17662:                                            ; preds = %17632
  %17663 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17663, ptr %48, align 4, !tbaa !9
  %17664 = load ptr, ptr %5, align 8, !tbaa !5
  %17665 = getelementptr inbounds %struct.w2c_hermes, ptr %17664, i32 0, i32 6
  %17666 = load i32, ptr %48, align 4, !tbaa !9
  %17667 = zext i32 %17666 to i64
  %17668 = call i32 @i32_load(ptr noundef %17665, i64 noundef %17667)
  store i32 %17668, ptr %48, align 4, !tbaa !9
  %17669 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17669, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %17670 = load i32, ptr %50, align 4, !tbaa !9
  %17671 = load i32, ptr %49, align 4, !tbaa !9
  %17672 = sub i32 %17671, %17670
  store i32 %17672, ptr %49, align 4, !tbaa !9
  %17673 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17673, ptr %50, align 4, !tbaa !9
  %17674 = load i32, ptr %50, align 4, !tbaa !9
  %17675 = load i32, ptr %49, align 4, !tbaa !9
  %17676 = and i32 %17675, %17674
  store i32 %17676, ptr %49, align 4, !tbaa !9
  %17677 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17677, ptr %50, align 4, !tbaa !9
  %17678 = load i32, ptr %50, align 4, !tbaa !9
  %17679 = call i32 @llvm.ctpop.i32(i32 %17678)
  store i32 %17679, ptr %50, align 4, !tbaa !9
  %17680 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %17680, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %17681 = load i32, ptr %50, align 4, !tbaa !9
  %17682 = load i32, ptr %51, align 4, !tbaa !9
  %17683 = icmp ule i32 %17681, %17682
  %17684 = zext i1 %17683 to i32
  store i32 %17684, ptr %50, align 4, !tbaa !9
  %17685 = load i32, ptr %50, align 4, !tbaa !9
  %17686 = icmp ne i32 %17685, 0
  br i1 %17686, label %17687, label %17688

17687:                                            ; preds = %17662
  br label %17718

17688:                                            ; preds = %17662
  %17689 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17689, ptr %49, align 4, !tbaa !9
  %17690 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17690, ptr %50, align 4, !tbaa !9
  %17691 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17691, ptr %51, align 4, !tbaa !9
  %17692 = load i32, ptr %50, align 4, !tbaa !9
  %17693 = load i32, ptr %51, align 4, !tbaa !9
  %17694 = icmp ugt i32 %17692, %17693
  %17695 = zext i1 %17694 to i32
  store i32 %17695, ptr %50, align 4, !tbaa !9
  %17696 = load i32, ptr %50, align 4, !tbaa !9
  %17697 = icmp ne i32 %17696, 0
  br i1 %17697, label %17698, label %17699

17698:                                            ; preds = %17688
  br label %17718

17699:                                            ; preds = %17688
  %17700 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17700, ptr %49, align 4, !tbaa !9
  %17701 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17701, ptr %50, align 4, !tbaa !9
  %17702 = load i32, ptr %50, align 4, !tbaa !9
  %17703 = icmp eq i32 %17702, 0
  %17704 = xor i1 %17703, true
  %17705 = xor i1 %17704, true
  %17706 = zext i1 %17705 to i32
  %17707 = sext i32 %17706 to i64
  %17708 = call i64 @llvm.expect.i64(i64 %17707, i64 0)
  %17709 = icmp ne i64 %17708, 0
  br i1 %17709, label %17710, label %17712

17710:                                            ; preds = %17699
  call void @wasm_rt_trap(i32 noundef 3) #8
  unreachable

17711:                                            ; No predecessors!
  br label %17716

17712:                                            ; preds = %17699
  %17713 = load i32, ptr %49, align 4, !tbaa !9
  %17714 = load i32, ptr %50, align 4, !tbaa !9
  %17715 = urem i32 %17713, %17714
  br label %17716

17716:                                            ; preds = %17712, %17711
  %17717 = phi i32 [ 0, %17711 ], [ %17715, %17712 ]
  store i32 %17717, ptr %49, align 4, !tbaa !9
  br label %17718

17718:                                            ; preds = %17716, %17698, %17687
  %17719 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %17719, ptr %15, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %17720 = load i32, ptr %50, align 4, !tbaa !9
  %17721 = and i32 %17720, 31
  %17722 = load i32, ptr %49, align 4, !tbaa !9
  %17723 = shl i32 %17722, %17721
  store i32 %17723, ptr %49, align 4, !tbaa !9
  %17724 = load i32, ptr %49, align 4, !tbaa !9
  %17725 = load i32, ptr %48, align 4, !tbaa !9
  %17726 = add i32 %17725, %17724
  store i32 %17726, ptr %48, align 4, !tbaa !9
  %17727 = load ptr, ptr %5, align 8, !tbaa !5
  %17728 = getelementptr inbounds %struct.w2c_hermes, ptr %17727, i32 0, i32 6
  %17729 = load i32, ptr %48, align 4, !tbaa !9
  %17730 = zext i32 %17729 to i64
  %17731 = call i32 @i32_load(ptr noundef %17728, i64 noundef %17730)
  store i32 %17731, ptr %48, align 4, !tbaa !9
  %17732 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17732, ptr %10, align 4, !tbaa !9
  %17733 = load i32, ptr %48, align 4, !tbaa !9
  %17734 = icmp ne i32 %17733, 0
  %17735 = xor i1 %17734, true
  %17736 = zext i1 %17735 to i32
  store i32 %17736, ptr %48, align 4, !tbaa !9
  %17737 = load i32, ptr %48, align 4, !tbaa !9
  %17738 = icmp ne i32 %17737, 0
  br i1 %17738, label %17739, label %17740

17739:                                            ; preds = %17718
  br label %18060

17740:                                            ; preds = %17718
  %17741 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17741, ptr %48, align 4, !tbaa !9
  %17742 = load ptr, ptr %5, align 8, !tbaa !5
  %17743 = getelementptr inbounds %struct.w2c_hermes, ptr %17742, i32 0, i32 6
  %17744 = load i32, ptr %48, align 4, !tbaa !9
  %17745 = zext i32 %17744 to i64
  %17746 = call i32 @i32_load(ptr noundef %17743, i64 noundef %17745)
  store i32 %17746, ptr %48, align 4, !tbaa !9
  %17747 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17747, ptr %14, align 4, !tbaa !9
  %17748 = load i32, ptr %48, align 4, !tbaa !9
  %17749 = icmp ne i32 %17748, 0
  %17750 = xor i1 %17749, true
  %17751 = zext i1 %17750 to i32
  store i32 %17751, ptr %48, align 4, !tbaa !9
  %17752 = load i32, ptr %48, align 4, !tbaa !9
  %17753 = icmp ne i32 %17752, 0
  br i1 %17753, label %17754, label %17755

17754:                                            ; preds = %17740
  br label %18060

17755:                                            ; preds = %17740
  %17756 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %17756, ptr %48, align 4, !tbaa !9
  %17757 = load ptr, ptr %5, align 8, !tbaa !5
  %17758 = getelementptr inbounds %struct.w2c_hermes, ptr %17757, i32 0, i32 6
  %17759 = load i32, ptr %48, align 4, !tbaa !9
  %17760 = zext i32 %17759 to i64
  %17761 = add i64 %17760, 4
  %17762 = call i32 @i32_load(ptr noundef %17758, i64 noundef %17761)
  store i32 %17762, ptr %48, align 4, !tbaa !9
  %17763 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %17763, ptr %49, align 4, !tbaa !9
  %17764 = load ptr, ptr %5, align 8, !tbaa !5
  %17765 = getelementptr inbounds %struct.w2c_hermes, ptr %17764, i32 0, i32 6
  %17766 = load i32, ptr %49, align 4, !tbaa !9
  %17767 = zext i32 %17766 to i64
  %17768 = call i32 @i32_load(ptr noundef %17765, i64 noundef %17767)
  store i32 %17768, ptr %49, align 4, !tbaa !9
  %17769 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %17769, ptr %12, align 4, !tbaa !9
  %17770 = load i32, ptr %49, align 4, !tbaa !9
  %17771 = load i32, ptr %48, align 4, !tbaa !9
  %17772 = sub i32 %17771, %17770
  store i32 %17772, ptr %48, align 4, !tbaa !9
  %17773 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17773, ptr %25, align 4, !tbaa !9
  %17774 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17774, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %17775 = load i32, ptr %48, align 4, !tbaa !9
  %17776 = load i32, ptr %49, align 4, !tbaa !9
  %17777 = icmp ule i32 %17775, %17776
  %17778 = zext i1 %17777 to i32
  store i32 %17778, ptr %48, align 4, !tbaa !9
  %17779 = load i32, ptr %48, align 4, !tbaa !9
  %17780 = icmp ne i32 %17779, 0
  br i1 %17780, label %17781, label %17910

17781:                                            ; preds = %17755
  %17782 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17782, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %17783 = load i32, ptr %49, align 4, !tbaa !9
  %17784 = load i32, ptr %48, align 4, !tbaa !9
  %17785 = sub i32 %17784, %17783
  store i32 %17785, ptr %48, align 4, !tbaa !9
  %17786 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17786, ptr %26, align 4, !tbaa !9
  br label %17787

17787:                                            ; preds = %17908, %17781
  %17788 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17788, ptr %48, align 4, !tbaa !9
  %17789 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17789, ptr %49, align 4, !tbaa !9
  %17790 = load ptr, ptr %5, align 8, !tbaa !5
  %17791 = getelementptr inbounds %struct.w2c_hermes, ptr %17790, i32 0, i32 6
  %17792 = load i32, ptr %49, align 4, !tbaa !9
  %17793 = zext i32 %17792 to i64
  %17794 = add i64 %17793, 4
  %17795 = call i32 @i32_load(ptr noundef %17791, i64 noundef %17794)
  store i32 %17795, ptr %49, align 4, !tbaa !9
  %17796 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %17796, ptr %8, align 4, !tbaa !9
  %17797 = load i32, ptr %48, align 4, !tbaa !9
  %17798 = load i32, ptr %49, align 4, !tbaa !9
  %17799 = icmp ne i32 %17797, %17798
  %17800 = zext i1 %17799 to i32
  store i32 %17800, ptr %48, align 4, !tbaa !9
  %17801 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17801, ptr %49, align 4, !tbaa !9
  %17802 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %17802, ptr %50, align 4, !tbaa !9
  %17803 = load i32, ptr %50, align 4, !tbaa !9
  %17804 = load i32, ptr %49, align 4, !tbaa !9
  %17805 = and i32 %17804, %17803
  store i32 %17805, ptr %49, align 4, !tbaa !9
  %17806 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17806, ptr %50, align 4, !tbaa !9
  %17807 = load i32, ptr %49, align 4, !tbaa !9
  %17808 = load i32, ptr %50, align 4, !tbaa !9
  %17809 = icmp ne i32 %17807, %17808
  %17810 = zext i1 %17809 to i32
  store i32 %17810, ptr %49, align 4, !tbaa !9
  %17811 = load i32, ptr %49, align 4, !tbaa !9
  %17812 = load i32, ptr %48, align 4, !tbaa !9
  %17813 = and i32 %17812, %17811
  store i32 %17813, ptr %48, align 4, !tbaa !9
  %17814 = load i32, ptr %48, align 4, !tbaa !9
  %17815 = icmp ne i32 %17814, 0
  br i1 %17815, label %17816, label %17817

17816:                                            ; preds = %17787
  br label %18060

17817:                                            ; preds = %17787
  %17818 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17818, ptr %48, align 4, !tbaa !9
  %17819 = load ptr, ptr %5, align 8, !tbaa !5
  %17820 = getelementptr inbounds %struct.w2c_hermes, ptr %17819, i32 0, i32 6
  %17821 = load i32, ptr %48, align 4, !tbaa !9
  %17822 = zext i32 %17821 to i64
  %17823 = add i64 %17822, 12
  %17824 = call i32 @i32_load(ptr noundef %17820, i64 noundef %17823)
  store i32 %17824, ptr %48, align 4, !tbaa !9
  %17825 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17825, ptr %22, align 4, !tbaa !9
  %17826 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17826, ptr %49, align 4, !tbaa !9
  %17827 = load ptr, ptr %5, align 8, !tbaa !5
  %17828 = getelementptr inbounds %struct.w2c_hermes, ptr %17827, i32 0, i32 6
  %17829 = load i32, ptr %49, align 4, !tbaa !9
  %17830 = zext i32 %17829 to i64
  %17831 = add i64 %17830, 8
  %17832 = call i32 @i32_load(ptr noundef %17828, i64 noundef %17831)
  store i32 %17832, ptr %49, align 4, !tbaa !9
  %17833 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %17833, ptr %8, align 4, !tbaa !9
  %17834 = load i32, ptr %49, align 4, !tbaa !9
  %17835 = load i32, ptr %48, align 4, !tbaa !9
  %17836 = sub i32 %17835, %17834
  store i32 %17836, ptr %48, align 4, !tbaa !9
  %17837 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %17837, ptr %49, align 4, !tbaa !9
  %17838 = load i32, ptr %48, align 4, !tbaa !9
  %17839 = load i32, ptr %49, align 4, !tbaa !9
  %17840 = icmp ne i32 %17838, %17839
  %17841 = zext i1 %17840 to i32
  store i32 %17841, ptr %48, align 4, !tbaa !9
  %17842 = load i32, ptr %48, align 4, !tbaa !9
  %17843 = icmp ne i32 %17842, 0
  br i1 %17843, label %17844, label %17845

17844:                                            ; preds = %17817
  br label %17898

17845:                                            ; preds = %17817
  %17846 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17846, ptr %48, align 4, !tbaa !9
  %17847 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17847, ptr %10, align 4, !tbaa !9
  %17848 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17848, ptr %48, align 4, !tbaa !9
  %17849 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %17849, ptr %49, align 4, !tbaa !9
  %17850 = load i32, ptr %48, align 4, !tbaa !9
  %17851 = load i32, ptr %49, align 4, !tbaa !9
  %17852 = icmp eq i32 %17850, %17851
  %17853 = zext i1 %17852 to i32
  store i32 %17853, ptr %48, align 4, !tbaa !9
  %17854 = load i32, ptr %48, align 4, !tbaa !9
  %17855 = icmp ne i32 %17854, 0
  br i1 %17855, label %17856, label %17857

17856:                                            ; preds = %17845
  br label %18780

17857:                                            ; preds = %17845
  br label %17858

17858:                                            ; preds = %17896, %17857
  %17859 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17859, ptr %48, align 4, !tbaa !9
  %17860 = load ptr, ptr %5, align 8, !tbaa !5
  %17861 = getelementptr inbounds %struct.w2c_hermes, ptr %17860, i32 0, i32 6
  %17862 = load i32, ptr %48, align 4, !tbaa !9
  %17863 = zext i32 %17862 to i64
  %17864 = call i32 @i32_load(ptr noundef %17861, i64 noundef %17863)
  store i32 %17864, ptr %48, align 4, !tbaa !9
  %17865 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17865, ptr %49, align 4, !tbaa !9
  %17866 = load ptr, ptr %5, align 8, !tbaa !5
  %17867 = getelementptr inbounds %struct.w2c_hermes, ptr %17866, i32 0, i32 6
  %17868 = load i32, ptr %49, align 4, !tbaa !9
  %17869 = zext i32 %17868 to i64
  %17870 = call i32 @i32_load(ptr noundef %17867, i64 noundef %17869)
  store i32 %17870, ptr %49, align 4, !tbaa !9
  %17871 = load i32, ptr %48, align 4, !tbaa !9
  %17872 = load i32, ptr %49, align 4, !tbaa !9
  %17873 = icmp ne i32 %17871, %17872
  %17874 = zext i1 %17873 to i32
  store i32 %17874, ptr %48, align 4, !tbaa !9
  %17875 = load i32, ptr %48, align 4, !tbaa !9
  %17876 = icmp ne i32 %17875, 0
  br i1 %17876, label %17877, label %17878

17877:                                            ; preds = %17858
  br label %17898

17878:                                            ; preds = %17858
  %17879 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17879, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %17880 = load i32, ptr %49, align 4, !tbaa !9
  %17881 = load i32, ptr %48, align 4, !tbaa !9
  %17882 = add i32 %17881, %17880
  store i32 %17882, ptr %48, align 4, !tbaa !9
  %17883 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17883, ptr %10, align 4, !tbaa !9
  %17884 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17884, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %17885 = load i32, ptr %49, align 4, !tbaa !9
  %17886 = load i32, ptr %48, align 4, !tbaa !9
  %17887 = add i32 %17886, %17885
  store i32 %17887, ptr %48, align 4, !tbaa !9
  %17888 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17888, ptr %8, align 4, !tbaa !9
  %17889 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %17889, ptr %49, align 4, !tbaa !9
  %17890 = load i32, ptr %48, align 4, !tbaa !9
  %17891 = load i32, ptr %49, align 4, !tbaa !9
  %17892 = icmp ne i32 %17890, %17891
  %17893 = zext i1 %17892 to i32
  store i32 %17893, ptr %48, align 4, !tbaa !9
  %17894 = load i32, ptr %48, align 4, !tbaa !9
  %17895 = icmp ne i32 %17894, 0
  br i1 %17895, label %17896, label %17897

17896:                                            ; preds = %17878
  br label %17858

17897:                                            ; preds = %17878
  br label %18780

17898:                                            ; preds = %17877, %17844
  %17899 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17899, ptr %48, align 4, !tbaa !9
  %17900 = load ptr, ptr %5, align 8, !tbaa !5
  %17901 = getelementptr inbounds %struct.w2c_hermes, ptr %17900, i32 0, i32 6
  %17902 = load i32, ptr %48, align 4, !tbaa !9
  %17903 = zext i32 %17902 to i64
  %17904 = call i32 @i32_load(ptr noundef %17901, i64 noundef %17903)
  store i32 %17904, ptr %48, align 4, !tbaa !9
  %17905 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17905, ptr %14, align 4, !tbaa !9
  %17906 = load i32, ptr %48, align 4, !tbaa !9
  %17907 = icmp ne i32 %17906, 0
  br i1 %17907, label %17908, label %17909

17908:                                            ; preds = %17898
  br label %17787

17909:                                            ; preds = %17898
  br label %18060

17910:                                            ; preds = %17755
  br label %17911

17911:                                            ; preds = %18058, %17910
  %17912 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17912, ptr %48, align 4, !tbaa !9
  %17913 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17913, ptr %49, align 4, !tbaa !9
  %17914 = load ptr, ptr %5, align 8, !tbaa !5
  %17915 = getelementptr inbounds %struct.w2c_hermes, ptr %17914, i32 0, i32 6
  %17916 = load i32, ptr %49, align 4, !tbaa !9
  %17917 = zext i32 %17916 to i64
  %17918 = add i64 %17917, 4
  %17919 = call i32 @i32_load(ptr noundef %17915, i64 noundef %17918)
  store i32 %17919, ptr %49, align 4, !tbaa !9
  %17920 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %17920, ptr %8, align 4, !tbaa !9
  %17921 = load i32, ptr %48, align 4, !tbaa !9
  %17922 = load i32, ptr %49, align 4, !tbaa !9
  %17923 = icmp ne i32 %17921, %17922
  %17924 = zext i1 %17923 to i32
  store i32 %17924, ptr %48, align 4, !tbaa !9
  %17925 = load i32, ptr %48, align 4, !tbaa !9
  %17926 = icmp ne i32 %17925, 0
  br i1 %17926, label %17927, label %17967

17927:                                            ; preds = %17911
  %17928 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17928, ptr %48, align 4, !tbaa !9
  %17929 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17929, ptr %49, align 4, !tbaa !9
  %17930 = load i32, ptr %48, align 4, !tbaa !9
  %17931 = load i32, ptr %49, align 4, !tbaa !9
  %17932 = icmp uge i32 %17930, %17931
  %17933 = zext i1 %17932 to i32
  store i32 %17933, ptr %48, align 4, !tbaa !9
  %17934 = load i32, ptr %48, align 4, !tbaa !9
  %17935 = icmp ne i32 %17934, 0
  br i1 %17935, label %17936, label %17955

17936:                                            ; preds = %17927
  %17937 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17937, ptr %48, align 4, !tbaa !9
  %17938 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17938, ptr %49, align 4, !tbaa !9
  %17939 = load i32, ptr %49, align 4, !tbaa !9
  %17940 = icmp eq i32 %17939, 0
  %17941 = xor i1 %17940, true
  %17942 = xor i1 %17941, true
  %17943 = zext i1 %17942 to i32
  %17944 = sext i32 %17943 to i64
  %17945 = call i64 @llvm.expect.i64(i64 %17944, i64 0)
  %17946 = icmp ne i64 %17945, 0
  br i1 %17946, label %17947, label %17949

17947:                                            ; preds = %17936
  call void @wasm_rt_trap(i32 noundef 3) #8
  unreachable

17948:                                            ; No predecessors!
  br label %17953

17949:                                            ; preds = %17936
  %17950 = load i32, ptr %48, align 4, !tbaa !9
  %17951 = load i32, ptr %49, align 4, !tbaa !9
  %17952 = urem i32 %17950, %17951
  br label %17953

17953:                                            ; preds = %17949, %17948
  %17954 = phi i32 [ 0, %17948 ], [ %17952, %17949 ]
  store i32 %17954, ptr %48, align 4, !tbaa !9
  br label %17957

17955:                                            ; preds = %17927
  %17956 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17956, ptr %48, align 4, !tbaa !9
  br label %17957

17957:                                            ; preds = %17955, %17953
  %17958 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17958, ptr %49, align 4, !tbaa !9
  %17959 = load i32, ptr %48, align 4, !tbaa !9
  %17960 = load i32, ptr %49, align 4, !tbaa !9
  %17961 = icmp ne i32 %17959, %17960
  %17962 = zext i1 %17961 to i32
  store i32 %17962, ptr %48, align 4, !tbaa !9
  %17963 = load i32, ptr %48, align 4, !tbaa !9
  %17964 = icmp ne i32 %17963, 0
  br i1 %17964, label %17965, label %17966

17965:                                            ; preds = %17957
  br label %18060

17966:                                            ; preds = %17957
  br label %17967

17967:                                            ; preds = %17966, %17911
  %17968 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17968, ptr %48, align 4, !tbaa !9
  %17969 = load ptr, ptr %5, align 8, !tbaa !5
  %17970 = getelementptr inbounds %struct.w2c_hermes, ptr %17969, i32 0, i32 6
  %17971 = load i32, ptr %48, align 4, !tbaa !9
  %17972 = zext i32 %17971 to i64
  %17973 = add i64 %17972, 12
  %17974 = call i32 @i32_load(ptr noundef %17970, i64 noundef %17973)
  store i32 %17974, ptr %48, align 4, !tbaa !9
  %17975 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17975, ptr %22, align 4, !tbaa !9
  %17976 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17976, ptr %49, align 4, !tbaa !9
  %17977 = load ptr, ptr %5, align 8, !tbaa !5
  %17978 = getelementptr inbounds %struct.w2c_hermes, ptr %17977, i32 0, i32 6
  %17979 = load i32, ptr %49, align 4, !tbaa !9
  %17980 = zext i32 %17979 to i64
  %17981 = add i64 %17980, 8
  %17982 = call i32 @i32_load(ptr noundef %17978, i64 noundef %17981)
  store i32 %17982, ptr %49, align 4, !tbaa !9
  %17983 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %17983, ptr %8, align 4, !tbaa !9
  %17984 = load i32, ptr %49, align 4, !tbaa !9
  %17985 = load i32, ptr %48, align 4, !tbaa !9
  %17986 = sub i32 %17985, %17984
  store i32 %17986, ptr %48, align 4, !tbaa !9
  %17987 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %17987, ptr %49, align 4, !tbaa !9
  %17988 = load i32, ptr %48, align 4, !tbaa !9
  %17989 = load i32, ptr %49, align 4, !tbaa !9
  %17990 = icmp ne i32 %17988, %17989
  %17991 = zext i1 %17990 to i32
  store i32 %17991, ptr %48, align 4, !tbaa !9
  %17992 = load i32, ptr %48, align 4, !tbaa !9
  %17993 = icmp ne i32 %17992, 0
  br i1 %17993, label %17994, label %17995

17994:                                            ; preds = %17967
  br label %18048

17995:                                            ; preds = %17967
  %17996 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17996, ptr %48, align 4, !tbaa !9
  %17997 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %17997, ptr %10, align 4, !tbaa !9
  %17998 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17998, ptr %48, align 4, !tbaa !9
  %17999 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %17999, ptr %49, align 4, !tbaa !9
  %18000 = load i32, ptr %48, align 4, !tbaa !9
  %18001 = load i32, ptr %49, align 4, !tbaa !9
  %18002 = icmp eq i32 %18000, %18001
  %18003 = zext i1 %18002 to i32
  store i32 %18003, ptr %48, align 4, !tbaa !9
  %18004 = load i32, ptr %48, align 4, !tbaa !9
  %18005 = icmp ne i32 %18004, 0
  br i1 %18005, label %18006, label %18007

18006:                                            ; preds = %17995
  br label %18780

18007:                                            ; preds = %17995
  br label %18008

18008:                                            ; preds = %18046, %18007
  %18009 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18009, ptr %48, align 4, !tbaa !9
  %18010 = load ptr, ptr %5, align 8, !tbaa !5
  %18011 = getelementptr inbounds %struct.w2c_hermes, ptr %18010, i32 0, i32 6
  %18012 = load i32, ptr %48, align 4, !tbaa !9
  %18013 = zext i32 %18012 to i64
  %18014 = call i32 @i32_load(ptr noundef %18011, i64 noundef %18013)
  store i32 %18014, ptr %48, align 4, !tbaa !9
  %18015 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18015, ptr %49, align 4, !tbaa !9
  %18016 = load ptr, ptr %5, align 8, !tbaa !5
  %18017 = getelementptr inbounds %struct.w2c_hermes, ptr %18016, i32 0, i32 6
  %18018 = load i32, ptr %49, align 4, !tbaa !9
  %18019 = zext i32 %18018 to i64
  %18020 = call i32 @i32_load(ptr noundef %18017, i64 noundef %18019)
  store i32 %18020, ptr %49, align 4, !tbaa !9
  %18021 = load i32, ptr %48, align 4, !tbaa !9
  %18022 = load i32, ptr %49, align 4, !tbaa !9
  %18023 = icmp ne i32 %18021, %18022
  %18024 = zext i1 %18023 to i32
  store i32 %18024, ptr %48, align 4, !tbaa !9
  %18025 = load i32, ptr %48, align 4, !tbaa !9
  %18026 = icmp ne i32 %18025, 0
  br i1 %18026, label %18027, label %18028

18027:                                            ; preds = %18008
  br label %18048

18028:                                            ; preds = %18008
  %18029 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18029, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %18030 = load i32, ptr %49, align 4, !tbaa !9
  %18031 = load i32, ptr %48, align 4, !tbaa !9
  %18032 = add i32 %18031, %18030
  store i32 %18032, ptr %48, align 4, !tbaa !9
  %18033 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18033, ptr %10, align 4, !tbaa !9
  %18034 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18034, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %18035 = load i32, ptr %49, align 4, !tbaa !9
  %18036 = load i32, ptr %48, align 4, !tbaa !9
  %18037 = add i32 %18036, %18035
  store i32 %18037, ptr %48, align 4, !tbaa !9
  %18038 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18038, ptr %8, align 4, !tbaa !9
  %18039 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %18039, ptr %49, align 4, !tbaa !9
  %18040 = load i32, ptr %48, align 4, !tbaa !9
  %18041 = load i32, ptr %49, align 4, !tbaa !9
  %18042 = icmp ne i32 %18040, %18041
  %18043 = zext i1 %18042 to i32
  store i32 %18043, ptr %48, align 4, !tbaa !9
  %18044 = load i32, ptr %48, align 4, !tbaa !9
  %18045 = icmp ne i32 %18044, 0
  br i1 %18045, label %18046, label %18047

18046:                                            ; preds = %18028
  br label %18008

18047:                                            ; preds = %18028
  br label %18780

18048:                                            ; preds = %18027, %17994
  %18049 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18049, ptr %48, align 4, !tbaa !9
  %18050 = load ptr, ptr %5, align 8, !tbaa !5
  %18051 = getelementptr inbounds %struct.w2c_hermes, ptr %18050, i32 0, i32 6
  %18052 = load i32, ptr %48, align 4, !tbaa !9
  %18053 = zext i32 %18052 to i64
  %18054 = call i32 @i32_load(ptr noundef %18051, i64 noundef %18053)
  store i32 %18054, ptr %48, align 4, !tbaa !9
  %18055 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18055, ptr %14, align 4, !tbaa !9
  %18056 = load i32, ptr %48, align 4, !tbaa !9
  %18057 = icmp ne i32 %18056, 0
  br i1 %18057, label %18058, label %18059

18058:                                            ; preds = %18048
  br label %17911

18059:                                            ; preds = %18048
  br label %18060

18060:                                            ; preds = %18059, %17965, %17909, %17816, %17754, %17739, %17661
  store i32 24, ptr %48, align 4, !tbaa !9
  %18061 = load ptr, ptr %5, align 8, !tbaa !5
  %18062 = load i32, ptr %48, align 4, !tbaa !9
  %18063 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %18061, i32 noundef %18062)
  store i32 %18063, ptr %48, align 4, !tbaa !9
  %18064 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18064, ptr %14, align 4, !tbaa !9
  %18065 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %18065, ptr %49, align 4, !tbaa !9
  %18066 = load ptr, ptr %5, align 8, !tbaa !5
  %18067 = getelementptr inbounds %struct.w2c_hermes, ptr %18066, i32 0, i32 6
  %18068 = load i32, ptr %49, align 4, !tbaa !9
  %18069 = zext i32 %18068 to i64
  %18070 = call i32 @i32_load(ptr noundef %18067, i64 noundef %18069)
  store i32 %18070, ptr %49, align 4, !tbaa !9
  %18071 = load ptr, ptr %5, align 8, !tbaa !5
  %18072 = getelementptr inbounds %struct.w2c_hermes, ptr %18071, i32 0, i32 6
  %18073 = load i32, ptr %48, align 4, !tbaa !9
  %18074 = zext i32 %18073 to i64
  %18075 = add i64 %18074, 8
  %18076 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18072, i64 noundef %18075, i32 noundef %18076)
  %18077 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18077, ptr %48, align 4, !tbaa !9
  %18078 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %18078, ptr %49, align 4, !tbaa !9
  %18079 = load ptr, ptr %5, align 8, !tbaa !5
  %18080 = getelementptr inbounds %struct.w2c_hermes, ptr %18079, i32 0, i32 6
  %18081 = load i32, ptr %49, align 4, !tbaa !9
  %18082 = zext i32 %18081 to i64
  %18083 = add i64 %18082, 4
  %18084 = call i32 @i32_load(ptr noundef %18080, i64 noundef %18083)
  store i32 %18084, ptr %49, align 4, !tbaa !9
  %18085 = load ptr, ptr %5, align 8, !tbaa !5
  %18086 = getelementptr inbounds %struct.w2c_hermes, ptr %18085, i32 0, i32 6
  %18087 = load i32, ptr %48, align 4, !tbaa !9
  %18088 = zext i32 %18087 to i64
  %18089 = add i64 %18088, 12
  %18090 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18086, i64 noundef %18089, i32 noundef %18090)
  %18091 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18091, ptr %48, align 4, !tbaa !9
  %18092 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %18092, ptr %49, align 4, !tbaa !9
  %18093 = load ptr, ptr %5, align 8, !tbaa !5
  %18094 = getelementptr inbounds %struct.w2c_hermes, ptr %18093, i32 0, i32 6
  %18095 = load i32, ptr %49, align 4, !tbaa !9
  %18096 = zext i32 %18095 to i64
  %18097 = add i64 %18096, 8
  %18098 = call i32 @i32_load(ptr noundef %18094, i64 noundef %18097)
  store i32 %18098, ptr %49, align 4, !tbaa !9
  %18099 = load ptr, ptr %5, align 8, !tbaa !5
  %18100 = getelementptr inbounds %struct.w2c_hermes, ptr %18099, i32 0, i32 6
  %18101 = load i32, ptr %48, align 4, !tbaa !9
  %18102 = zext i32 %18101 to i64
  %18103 = add i64 %18102, 16
  %18104 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18100, i64 noundef %18103, i32 noundef %18104)
  %18105 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %18105, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %18106 = load ptr, ptr %5, align 8, !tbaa !5
  %18107 = getelementptr inbounds %struct.w2c_hermes, ptr %18106, i32 0, i32 6
  %18108 = load i32, ptr %48, align 4, !tbaa !9
  %18109 = zext i32 %18108 to i64
  %18110 = add i64 %18109, 8
  %18111 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18107, i64 noundef %18110, i32 noundef %18111)
  %18112 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %18112, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %18113 = load ptr, ptr %5, align 8, !tbaa !5
  %18114 = getelementptr inbounds %struct.w2c_hermes, ptr %18113, i32 0, i32 6
  %18115 = load i32, ptr %48, align 4, !tbaa !9
  %18116 = zext i32 %18115 to i64
  %18117 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18114, i64 noundef %18116, i64 noundef %18117)
  %18118 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18118, ptr %48, align 4, !tbaa !9
  %18119 = load ptr, ptr %5, align 8, !tbaa !5
  %18120 = getelementptr inbounds %struct.w2c_hermes, ptr %18119, i32 0, i32 6
  %18121 = load i32, ptr %48, align 4, !tbaa !9
  %18122 = zext i32 %18121 to i64
  %18123 = add i64 %18122, 4
  %18124 = call i32 @i32_load(ptr noundef %18120, i64 noundef %18123)
  store i32 %18124, ptr %48, align 4, !tbaa !9
  %18125 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18125, ptr %8, align 4, !tbaa !9
  %18126 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18126, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %18127 = load ptr, ptr %5, align 8, !tbaa !5
  %18128 = getelementptr inbounds %struct.w2c_hermes, ptr %18127, i32 0, i32 6
  %18129 = load i32, ptr %48, align 4, !tbaa !9
  %18130 = zext i32 %18129 to i64
  %18131 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18128, i64 noundef %18130, i32 noundef %18131)
  %18132 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18132, ptr %48, align 4, !tbaa !9
  %18133 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18133, ptr %49, align 4, !tbaa !9
  %18134 = load ptr, ptr %5, align 8, !tbaa !5
  %18135 = getelementptr inbounds %struct.w2c_hermes, ptr %18134, i32 0, i32 6
  %18136 = load i32, ptr %48, align 4, !tbaa !9
  %18137 = zext i32 %18136 to i64
  %18138 = add i64 %18137, 4
  %18139 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18135, i64 noundef %18138, i32 noundef %18139)
  %18140 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18140, ptr %48, align 4, !tbaa !9
  %18141 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18141, ptr %49, align 4, !tbaa !9
  %18142 = load ptr, ptr %5, align 8, !tbaa !5
  %18143 = getelementptr inbounds %struct.w2c_hermes, ptr %18142, i32 0, i32 6
  %18144 = load i32, ptr %48, align 4, !tbaa !9
  %18145 = zext i32 %18144 to i64
  %18146 = add i64 %18145, 20
  %18147 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18143, i64 noundef %18146, i32 noundef %18147)
  store i32 0, ptr %48, align 4, !tbaa !9
  %18148 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18148, ptr %49, align 4, !tbaa !9
  %18149 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18149, ptr %50, align 4, !tbaa !9
  %18150 = load ptr, ptr %5, align 8, !tbaa !5
  %18151 = getelementptr inbounds %struct.w2c_hermes, ptr %18150, i32 0, i32 6
  %18152 = load i32, ptr %50, align 4, !tbaa !9
  %18153 = zext i32 %18152 to i64
  %18154 = add i64 %18153, 12
  %18155 = call i32 @i32_load(ptr noundef %18151, i64 noundef %18154)
  store i32 %18155, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %18156 = load i32, ptr %51, align 4, !tbaa !9
  %18157 = load i32, ptr %50, align 4, !tbaa !9
  %18158 = add i32 %18157, %18156
  store i32 %18158, ptr %50, align 4, !tbaa !9
  %18159 = load i32, ptr %50, align 4, !tbaa !9
  %18160 = uitofp i32 %18159 to float
  store float %18160, ptr %67, align 4, !tbaa !13
  %18161 = load float, ptr %67, align 4, !tbaa !13
  store float %18161, ptr %46, align 4, !tbaa !13
  %18162 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18162, ptr %51, align 4, !tbaa !9
  %18163 = load ptr, ptr %5, align 8, !tbaa !5
  %18164 = getelementptr inbounds %struct.w2c_hermes, ptr %18163, i32 0, i32 6
  %18165 = load i32, ptr %51, align 4, !tbaa !9
  %18166 = zext i32 %18165 to i64
  %18167 = add i64 %18166, 16
  %18168 = call float @f32_load(ptr noundef %18164, i64 noundef %18167)
  store float %18168, ptr %68, align 4, !tbaa !13
  %18169 = load float, ptr %68, align 4, !tbaa !13
  store float %18169, ptr %47, align 4, !tbaa !13
  %18170 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18170, ptr %52, align 4, !tbaa !9
  %18171 = load i32, ptr %52, align 4, !tbaa !9
  %18172 = uitofp i32 %18171 to float
  store float %18172, ptr %69, align 4, !tbaa !13
  %18173 = load float, ptr %69, align 4, !tbaa !13
  %18174 = load float, ptr %68, align 4, !tbaa !13
  %18175 = fmul float %18174, %18173
  store float %18175, ptr %68, align 4, !tbaa !13
  %18176 = load float, ptr %67, align 4, !tbaa !13
  %18177 = load float, ptr %68, align 4, !tbaa !13
  %18178 = fcmp ogt float %18176, %18177
  %18179 = zext i1 %18178 to i32
  store i32 %18179, ptr %50, align 4, !tbaa !9
  %18180 = load i32, ptr %50, align 4, !tbaa !9
  %18181 = icmp ne i32 %18180, 0
  br i1 %18181, label %18182, label %18184

18182:                                            ; preds = %18060
  %18183 = load i32, ptr %48, align 4, !tbaa !9
  br label %18186

18184:                                            ; preds = %18060
  %18185 = load i32, ptr %49, align 4, !tbaa !9
  br label %18186

18186:                                            ; preds = %18184, %18182
  %18187 = phi i32 [ %18183, %18182 ], [ %18185, %18184 ]
  store i32 %18187, ptr %48, align 4, !tbaa !9
  %18188 = load i32, ptr %48, align 4, !tbaa !9
  %18189 = icmp ne i32 %18188, 0
  br i1 %18189, label %18190, label %18191

18190:                                            ; preds = %18186
  br label %18589

18191:                                            ; preds = %18186
  store i32 2, ptr %48, align 4, !tbaa !9
  %18192 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18192, ptr %8, align 4, !tbaa !9
  %18193 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18193, ptr %48, align 4, !tbaa !9
  %18194 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18194, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %18195 = load i32, ptr %50, align 4, !tbaa !9
  %18196 = load i32, ptr %49, align 4, !tbaa !9
  %18197 = sub i32 %18196, %18195
  store i32 %18197, ptr %49, align 4, !tbaa !9
  %18198 = load i32, ptr %49, align 4, !tbaa !9
  %18199 = load i32, ptr %48, align 4, !tbaa !9
  %18200 = and i32 %18199, %18198
  store i32 %18200, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %18201 = load i32, ptr %48, align 4, !tbaa !9
  %18202 = load i32, ptr %49, align 4, !tbaa !9
  %18203 = icmp ne i32 %18201, %18202
  %18204 = zext i1 %18203 to i32
  store i32 %18204, ptr %48, align 4, !tbaa !9
  %18205 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18205, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %18206 = load i32, ptr %49, align 4, !tbaa !9
  %18207 = load i32, ptr %50, align 4, !tbaa !9
  %18208 = icmp ult i32 %18206, %18207
  %18209 = zext i1 %18208 to i32
  store i32 %18209, ptr %49, align 4, !tbaa !9
  %18210 = load i32, ptr %49, align 4, !tbaa !9
  %18211 = load i32, ptr %48, align 4, !tbaa !9
  %18212 = or i32 %18211, %18210
  store i32 %18212, ptr %48, align 4, !tbaa !9
  %18213 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18213, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %18214 = load i32, ptr %50, align 4, !tbaa !9
  %18215 = and i32 %18214, 31
  %18216 = load i32, ptr %49, align 4, !tbaa !9
  %18217 = shl i32 %18216, %18215
  store i32 %18217, ptr %49, align 4, !tbaa !9
  %18218 = load i32, ptr %49, align 4, !tbaa !9
  %18219 = load i32, ptr %48, align 4, !tbaa !9
  %18220 = or i32 %18219, %18218
  store i32 %18220, ptr %48, align 4, !tbaa !9
  %18221 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18221, ptr %10, align 4, !tbaa !9
  %18222 = load float, ptr %46, align 4, !tbaa !13
  store float %18222, ptr %66, align 4, !tbaa !13
  %18223 = load float, ptr %47, align 4, !tbaa !13
  store float %18223, ptr %67, align 4, !tbaa !13
  %18224 = load float, ptr %67, align 4, !tbaa !13
  %18225 = load float, ptr %66, align 4, !tbaa !13
  %18226 = fdiv float %18225, %18224
  store float %18226, ptr %66, align 4, !tbaa !13
  %18227 = load float, ptr %66, align 4, !tbaa !13
  %18228 = call float @wasm_ceilf(float noundef %18227)
  store float %18228, ptr %66, align 4, !tbaa !13
  %18229 = load float, ptr %66, align 4, !tbaa !13
  store float %18229, ptr %46, align 4, !tbaa !13
  store float 0x41F0000000000000, ptr %67, align 4, !tbaa !13
  %18230 = load float, ptr %66, align 4, !tbaa !13
  %18231 = load float, ptr %67, align 4, !tbaa !13
  %18232 = fcmp olt float %18230, %18231
  %18233 = zext i1 %18232 to i32
  store i32 %18233, ptr %49, align 4, !tbaa !9
  %18234 = load float, ptr %46, align 4, !tbaa !13
  store float %18234, ptr %67, align 4, !tbaa !13
  store float 0.000000e+00, ptr %68, align 4, !tbaa !13
  %18235 = load float, ptr %67, align 4, !tbaa !13
  %18236 = load float, ptr %68, align 4, !tbaa !13
  %18237 = fcmp oge float %18235, %18236
  %18238 = zext i1 %18237 to i32
  store i32 %18238, ptr %50, align 4, !tbaa !9
  %18239 = load i32, ptr %50, align 4, !tbaa !9
  %18240 = load i32, ptr %49, align 4, !tbaa !9
  %18241 = and i32 %18240, %18239
  store i32 %18241, ptr %49, align 4, !tbaa !9
  %18242 = load i32, ptr %49, align 4, !tbaa !9
  %18243 = icmp ne i32 %18242, 0
  br i1 %18243, label %18244, label %18281

18244:                                            ; preds = %18191
  %18245 = load float, ptr %46, align 4, !tbaa !13
  store float %18245, ptr %66, align 4, !tbaa !13
  %18246 = load float, ptr %66, align 4, !tbaa !13
  %18247 = load float, ptr %66, align 4, !tbaa !13
  %18248 = fcmp une float %18246, %18247
  %18249 = xor i1 %18248, true
  %18250 = xor i1 %18249, true
  %18251 = zext i1 %18250 to i32
  %18252 = sext i32 %18251 to i64
  %18253 = call i64 @llvm.expect.i64(i64 %18252, i64 0)
  %18254 = icmp ne i64 %18253, 0
  br i1 %18254, label %18255, label %18257

18255:                                            ; preds = %18244
  call void @wasm_rt_trap(i32 noundef 4) #8
  unreachable

18256:                                            ; No predecessors!
  br label %18279

18257:                                            ; preds = %18244
  %18258 = load float, ptr %66, align 4, !tbaa !13
  %18259 = fcmp ogt float %18258, -1.000000e+00
  br i1 %18259, label %18260, label %18263

18260:                                            ; preds = %18257
  %18261 = load float, ptr %66, align 4, !tbaa !13
  %18262 = fcmp olt float %18261, 0x41F0000000000000
  br label %18263

18263:                                            ; preds = %18260, %18257
  %18264 = phi i1 [ false, %18257 ], [ %18262, %18260 ]
  %18265 = xor i1 %18264, true
  %18266 = xor i1 %18265, true
  %18267 = xor i1 %18266, true
  %18268 = zext i1 %18267 to i32
  %18269 = sext i32 %18268 to i64
  %18270 = call i64 @llvm.expect.i64(i64 %18269, i64 0)
  %18271 = icmp ne i64 %18270, 0
  br i1 %18271, label %18272, label %18274

18272:                                            ; preds = %18263
  call void @wasm_rt_trap(i32 noundef 2) #8
  unreachable

18273:                                            ; No predecessors!
  br label %18277

18274:                                            ; preds = %18263
  %18275 = load float, ptr %66, align 4, !tbaa !13
  %18276 = fptoui float %18275 to i32
  br label %18277

18277:                                            ; preds = %18274, %18273
  %18278 = phi i32 [ 0, %18273 ], [ %18276, %18274 ]
  br label %18279

18279:                                            ; preds = %18277, %18256
  %18280 = phi i32 [ 0, %18256 ], [ %18278, %18277 ]
  store i32 %18280, ptr %49, align 4, !tbaa !9
  br label %18282

18281:                                            ; preds = %18191
  store i32 0, ptr %49, align 4, !tbaa !9
  br label %18282

18282:                                            ; preds = %18281, %18279
  %18283 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %18283, ptr %12, align 4, !tbaa !9
  %18284 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18284, ptr %50, align 4, !tbaa !9
  %18285 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %18285, ptr %51, align 4, !tbaa !9
  %18286 = load i32, ptr %50, align 4, !tbaa !9
  %18287 = load i32, ptr %51, align 4, !tbaa !9
  %18288 = icmp ugt i32 %18286, %18287
  %18289 = zext i1 %18288 to i32
  store i32 %18289, ptr %50, align 4, !tbaa !9
  %18290 = load i32, ptr %50, align 4, !tbaa !9
  %18291 = icmp ne i32 %18290, 0
  br i1 %18291, label %18292, label %18294

18292:                                            ; preds = %18282
  %18293 = load i32, ptr %48, align 4, !tbaa !9
  br label %18296

18294:                                            ; preds = %18282
  %18295 = load i32, ptr %49, align 4, !tbaa !9
  br label %18296

18296:                                            ; preds = %18294, %18292
  %18297 = phi i32 [ %18293, %18292 ], [ %18295, %18294 ]
  store i32 %18297, ptr %48, align 4, !tbaa !9
  %18298 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18298, ptr %10, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %18299 = load i32, ptr %48, align 4, !tbaa !9
  %18300 = load i32, ptr %49, align 4, !tbaa !9
  %18301 = icmp eq i32 %18299, %18300
  %18302 = zext i1 %18301 to i32
  store i32 %18302, ptr %48, align 4, !tbaa !9
  %18303 = load i32, ptr %48, align 4, !tbaa !9
  %18304 = icmp ne i32 %18303, 0
  br i1 %18304, label %18305, label %18306

18305:                                            ; preds = %18296
  br label %18338

18306:                                            ; preds = %18296
  %18307 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18307, ptr %48, align 4, !tbaa !9
  %18308 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18308, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %18309 = load i32, ptr %50, align 4, !tbaa !9
  %18310 = load i32, ptr %49, align 4, !tbaa !9
  %18311 = sub i32 %18310, %18309
  store i32 %18311, ptr %49, align 4, !tbaa !9
  %18312 = load i32, ptr %49, align 4, !tbaa !9
  %18313 = load i32, ptr %48, align 4, !tbaa !9
  %18314 = and i32 %18313, %18312
  store i32 %18314, ptr %48, align 4, !tbaa !9
  %18315 = load i32, ptr %48, align 4, !tbaa !9
  %18316 = icmp ne i32 %18315, 0
  %18317 = xor i1 %18316, true
  %18318 = zext i1 %18317 to i32
  store i32 %18318, ptr %48, align 4, !tbaa !9
  %18319 = load i32, ptr %48, align 4, !tbaa !9
  %18320 = icmp ne i32 %18319, 0
  br i1 %18320, label %18321, label %18324

18321:                                            ; preds = %18306
  %18322 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18322, ptr %48, align 4, !tbaa !9
  %18323 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18323, ptr %8, align 4, !tbaa !9
  br label %18338

18324:                                            ; preds = %18306
  %18325 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18325, ptr %48, align 4, !tbaa !9
  %18326 = load ptr, ptr %5, align 8, !tbaa !5
  %18327 = load i32, ptr %48, align 4, !tbaa !9
  %18328 = call i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fnext_prime0x28unsigned0x20long0x29(ptr noundef %18326, i32 noundef %18327)
  store i32 %18328, ptr %48, align 4, !tbaa !9
  %18329 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18329, ptr %8, align 4, !tbaa !9
  %18330 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18330, ptr %48, align 4, !tbaa !9
  %18331 = load ptr, ptr %5, align 8, !tbaa !5
  %18332 = getelementptr inbounds %struct.w2c_hermes, ptr %18331, i32 0, i32 6
  %18333 = load i32, ptr %48, align 4, !tbaa !9
  %18334 = zext i32 %18333 to i64
  %18335 = add i64 %18334, 4
  %18336 = call i32 @i32_load(ptr noundef %18332, i64 noundef %18335)
  store i32 %18336, ptr %48, align 4, !tbaa !9
  %18337 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18337, ptr %9, align 4, !tbaa !9
  br label %18338

18338:                                            ; preds = %18324, %18321, %18305
  %18339 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18339, ptr %48, align 4, !tbaa !9
  %18340 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18340, ptr %49, align 4, !tbaa !9
  %18341 = load i32, ptr %48, align 4, !tbaa !9
  %18342 = load i32, ptr %49, align 4, !tbaa !9
  %18343 = icmp ule i32 %18341, %18342
  %18344 = zext i1 %18343 to i32
  store i32 %18344, ptr %48, align 4, !tbaa !9
  %18345 = load i32, ptr %48, align 4, !tbaa !9
  %18346 = icmp ne i32 %18345, 0
  br i1 %18346, label %18347, label %18521

18347:                                            ; preds = %18338
  %18348 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18348, ptr %48, align 4, !tbaa !9
  %18349 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18349, ptr %49, align 4, !tbaa !9
  %18350 = load i32, ptr %48, align 4, !tbaa !9
  %18351 = load i32, ptr %49, align 4, !tbaa !9
  %18352 = icmp uge i32 %18350, %18351
  %18353 = zext i1 %18352 to i32
  store i32 %18353, ptr %48, align 4, !tbaa !9
  %18354 = load i32, ptr %48, align 4, !tbaa !9
  %18355 = icmp ne i32 %18354, 0
  br i1 %18355, label %18356, label %18357

18356:                                            ; preds = %18347
  br label %18527

18357:                                            ; preds = %18347
  %18358 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18358, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %18359 = load i32, ptr %48, align 4, !tbaa !9
  %18360 = load i32, ptr %49, align 4, !tbaa !9
  %18361 = icmp ult i32 %18359, %18360
  %18362 = zext i1 %18361 to i32
  store i32 %18362, ptr %48, align 4, !tbaa !9
  %18363 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18363, ptr %12, align 4, !tbaa !9
  %18364 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18364, ptr %48, align 4, !tbaa !9
  %18365 = load ptr, ptr %5, align 8, !tbaa !5
  %18366 = getelementptr inbounds %struct.w2c_hermes, ptr %18365, i32 0, i32 6
  %18367 = load i32, ptr %48, align 4, !tbaa !9
  %18368 = zext i32 %18367 to i64
  %18369 = add i64 %18368, 12
  %18370 = call i32 @i32_load(ptr noundef %18366, i64 noundef %18369)
  store i32 %18370, ptr %48, align 4, !tbaa !9
  %18371 = load i32, ptr %48, align 4, !tbaa !9
  %18372 = uitofp i32 %18371 to float
  store float %18372, ptr %65, align 4, !tbaa !13
  %18373 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18373, ptr %49, align 4, !tbaa !9
  %18374 = load ptr, ptr %5, align 8, !tbaa !5
  %18375 = getelementptr inbounds %struct.w2c_hermes, ptr %18374, i32 0, i32 6
  %18376 = load i32, ptr %49, align 4, !tbaa !9
  %18377 = zext i32 %18376 to i64
  %18378 = add i64 %18377, 16
  %18379 = call float @f32_load(ptr noundef %18375, i64 noundef %18378)
  store float %18379, ptr %66, align 4, !tbaa !13
  %18380 = load float, ptr %66, align 4, !tbaa !13
  %18381 = load float, ptr %65, align 4, !tbaa !13
  %18382 = fdiv float %18381, %18380
  store float %18382, ptr %65, align 4, !tbaa !13
  %18383 = load float, ptr %65, align 4, !tbaa !13
  %18384 = call float @wasm_ceilf(float noundef %18383)
  store float %18384, ptr %65, align 4, !tbaa !13
  %18385 = load float, ptr %65, align 4, !tbaa !13
  store float %18385, ptr %46, align 4, !tbaa !13
  store float 0x41F0000000000000, ptr %66, align 4, !tbaa !13
  %18386 = load float, ptr %65, align 4, !tbaa !13
  %18387 = load float, ptr %66, align 4, !tbaa !13
  %18388 = fcmp olt float %18386, %18387
  %18389 = zext i1 %18388 to i32
  store i32 %18389, ptr %48, align 4, !tbaa !9
  %18390 = load float, ptr %46, align 4, !tbaa !13
  store float %18390, ptr %66, align 4, !tbaa !13
  store float 0.000000e+00, ptr %67, align 4, !tbaa !13
  %18391 = load float, ptr %66, align 4, !tbaa !13
  %18392 = load float, ptr %67, align 4, !tbaa !13
  %18393 = fcmp oge float %18391, %18392
  %18394 = zext i1 %18393 to i32
  store i32 %18394, ptr %49, align 4, !tbaa !9
  %18395 = load i32, ptr %49, align 4, !tbaa !9
  %18396 = load i32, ptr %48, align 4, !tbaa !9
  %18397 = and i32 %18396, %18395
  store i32 %18397, ptr %48, align 4, !tbaa !9
  %18398 = load i32, ptr %48, align 4, !tbaa !9
  %18399 = icmp ne i32 %18398, 0
  br i1 %18399, label %18400, label %18437

18400:                                            ; preds = %18357
  %18401 = load float, ptr %46, align 4, !tbaa !13
  store float %18401, ptr %65, align 4, !tbaa !13
  %18402 = load float, ptr %65, align 4, !tbaa !13
  %18403 = load float, ptr %65, align 4, !tbaa !13
  %18404 = fcmp une float %18402, %18403
  %18405 = xor i1 %18404, true
  %18406 = xor i1 %18405, true
  %18407 = zext i1 %18406 to i32
  %18408 = sext i32 %18407 to i64
  %18409 = call i64 @llvm.expect.i64(i64 %18408, i64 0)
  %18410 = icmp ne i64 %18409, 0
  br i1 %18410, label %18411, label %18413

18411:                                            ; preds = %18400
  call void @wasm_rt_trap(i32 noundef 4) #8
  unreachable

18412:                                            ; No predecessors!
  br label %18435

18413:                                            ; preds = %18400
  %18414 = load float, ptr %65, align 4, !tbaa !13
  %18415 = fcmp ogt float %18414, -1.000000e+00
  br i1 %18415, label %18416, label %18419

18416:                                            ; preds = %18413
  %18417 = load float, ptr %65, align 4, !tbaa !13
  %18418 = fcmp olt float %18417, 0x41F0000000000000
  br label %18419

18419:                                            ; preds = %18416, %18413
  %18420 = phi i1 [ false, %18413 ], [ %18418, %18416 ]
  %18421 = xor i1 %18420, true
  %18422 = xor i1 %18421, true
  %18423 = xor i1 %18422, true
  %18424 = zext i1 %18423 to i32
  %18425 = sext i32 %18424 to i64
  %18426 = call i64 @llvm.expect.i64(i64 %18425, i64 0)
  %18427 = icmp ne i64 %18426, 0
  br i1 %18427, label %18428, label %18430

18428:                                            ; preds = %18419
  call void @wasm_rt_trap(i32 noundef 2) #8
  unreachable

18429:                                            ; No predecessors!
  br label %18433

18430:                                            ; preds = %18419
  %18431 = load float, ptr %65, align 4, !tbaa !13
  %18432 = fptoui float %18431 to i32
  br label %18433

18433:                                            ; preds = %18430, %18429
  %18434 = phi i32 [ 0, %18429 ], [ %18432, %18430 ]
  br label %18435

18435:                                            ; preds = %18433, %18412
  %18436 = phi i32 [ 0, %18412 ], [ %18434, %18433 ]
  store i32 %18436, ptr %48, align 4, !tbaa !9
  br label %18438

18437:                                            ; preds = %18357
  store i32 0, ptr %48, align 4, !tbaa !9
  br label %18438

18438:                                            ; preds = %18437, %18435
  %18439 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18439, ptr %10, align 4, !tbaa !9
  %18440 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18440, ptr %48, align 4, !tbaa !9
  %18441 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18441, ptr %49, align 4, !tbaa !9
  %18442 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %18442, ptr %50, align 4, !tbaa !9
  %18443 = load i32, ptr %50, align 4, !tbaa !9
  %18444 = icmp ne i32 %18443, 0
  br i1 %18444, label %18445, label %18446

18445:                                            ; preds = %18438
  br label %18491

18446:                                            ; preds = %18438
  %18447 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18447, ptr %50, align 4, !tbaa !9
  %18448 = load i32, ptr %50, align 4, !tbaa !9
  %18449 = call i32 @llvm.ctpop.i32(i32 %18448)
  store i32 %18449, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  %18450 = load i32, ptr %50, align 4, !tbaa !9
  %18451 = load i32, ptr %51, align 4, !tbaa !9
  %18452 = icmp ugt i32 %18450, %18451
  %18453 = zext i1 %18452 to i32
  store i32 %18453, ptr %50, align 4, !tbaa !9
  %18454 = load i32, ptr %50, align 4, !tbaa !9
  %18455 = icmp ne i32 %18454, 0
  br i1 %18455, label %18456, label %18457

18456:                                            ; preds = %18446
  br label %18491

18457:                                            ; preds = %18446
  %18458 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18458, ptr %50, align 4, !tbaa !9
  store i32 1, ptr %51, align 4, !tbaa !9
  store i32 32, ptr %52, align 4, !tbaa !9
  %18459 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18459, ptr %53, align 4, !tbaa !9
  store i32 1, ptr %54, align 4, !tbaa !9
  %18460 = load i32, ptr %54, align 4, !tbaa !9
  %18461 = load i32, ptr %53, align 4, !tbaa !9
  %18462 = sub i32 %18461, %18460
  store i32 %18462, ptr %53, align 4, !tbaa !9
  %18463 = load i32, ptr %53, align 4, !tbaa !9
  %18464 = icmp ne i32 %18463, 0
  br i1 %18464, label %18465, label %18468

18465:                                            ; preds = %18457
  %18466 = load i32, ptr %53, align 4, !tbaa !9
  %18467 = call i32 @llvm.ctlz.i32(i32 %18466, i1 true)
  br label %18469

18468:                                            ; preds = %18457
  br label %18469

18469:                                            ; preds = %18468, %18465
  %18470 = phi i32 [ %18467, %18465 ], [ 32, %18468 ]
  store i32 %18470, ptr %53, align 4, !tbaa !9
  %18471 = load i32, ptr %53, align 4, !tbaa !9
  %18472 = load i32, ptr %52, align 4, !tbaa !9
  %18473 = sub i32 %18472, %18471
  store i32 %18473, ptr %52, align 4, !tbaa !9
  %18474 = load i32, ptr %52, align 4, !tbaa !9
  %18475 = and i32 %18474, 31
  %18476 = load i32, ptr %51, align 4, !tbaa !9
  %18477 = shl i32 %18476, %18475
  store i32 %18477, ptr %51, align 4, !tbaa !9
  %18478 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18478, ptr %52, align 4, !tbaa !9
  store i32 2, ptr %53, align 4, !tbaa !9
  %18479 = load i32, ptr %52, align 4, !tbaa !9
  %18480 = load i32, ptr %53, align 4, !tbaa !9
  %18481 = icmp ult i32 %18479, %18480
  %18482 = zext i1 %18481 to i32
  store i32 %18482, ptr %52, align 4, !tbaa !9
  %18483 = load i32, ptr %52, align 4, !tbaa !9
  %18484 = icmp ne i32 %18483, 0
  br i1 %18484, label %18485, label %18487

18485:                                            ; preds = %18469
  %18486 = load i32, ptr %50, align 4, !tbaa !9
  br label %18489

18487:                                            ; preds = %18469
  %18488 = load i32, ptr %51, align 4, !tbaa !9
  br label %18489

18489:                                            ; preds = %18487, %18485
  %18490 = phi i32 [ %18486, %18485 ], [ %18488, %18487 ]
  store i32 %18490, ptr %50, align 4, !tbaa !9
  br label %18496

18491:                                            ; preds = %18456, %18445
  %18492 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18492, ptr %50, align 4, !tbaa !9
  %18493 = load ptr, ptr %5, align 8, !tbaa !5
  %18494 = load i32, ptr %50, align 4, !tbaa !9
  %18495 = call i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fnext_prime0x28unsigned0x20long0x29(ptr noundef %18493, i32 noundef %18494)
  store i32 %18495, ptr %50, align 4, !tbaa !9
  br label %18496

18496:                                            ; preds = %18491, %18489
  %18497 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %18497, ptr %9, align 4, !tbaa !9
  %18498 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18498, ptr %51, align 4, !tbaa !9
  %18499 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18499, ptr %52, align 4, !tbaa !9
  %18500 = load i32, ptr %51, align 4, !tbaa !9
  %18501 = load i32, ptr %52, align 4, !tbaa !9
  %18502 = icmp ugt i32 %18500, %18501
  %18503 = zext i1 %18502 to i32
  store i32 %18503, ptr %51, align 4, !tbaa !9
  %18504 = load i32, ptr %51, align 4, !tbaa !9
  %18505 = icmp ne i32 %18504, 0
  br i1 %18505, label %18506, label %18508

18506:                                            ; preds = %18496
  %18507 = load i32, ptr %49, align 4, !tbaa !9
  br label %18510

18508:                                            ; preds = %18496
  %18509 = load i32, ptr %50, align 4, !tbaa !9
  br label %18510

18510:                                            ; preds = %18508, %18506
  %18511 = phi i32 [ %18507, %18506 ], [ %18509, %18508 ]
  store i32 %18511, ptr %49, align 4, !tbaa !9
  %18512 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %18512, ptr %8, align 4, !tbaa !9
  %18513 = load i32, ptr %48, align 4, !tbaa !9
  %18514 = load i32, ptr %49, align 4, !tbaa !9
  %18515 = icmp ule i32 %18513, %18514
  %18516 = zext i1 %18515 to i32
  store i32 %18516, ptr %48, align 4, !tbaa !9
  %18517 = load i32, ptr %48, align 4, !tbaa !9
  %18518 = icmp ne i32 %18517, 0
  br i1 %18518, label %18519, label %18520

18519:                                            ; preds = %18510
  br label %18527

18520:                                            ; preds = %18510
  br label %18521

18521:                                            ; preds = %18520, %18338
  %18522 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18522, ptr %48, align 4, !tbaa !9
  %18523 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18523, ptr %49, align 4, !tbaa !9
  %18524 = load ptr, ptr %5, align 8, !tbaa !5
  %18525 = load i32, ptr %48, align 4, !tbaa !9
  %18526 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_void0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_table0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Funordered_map_hasher0x3Chermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Ahash0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aequal_to0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20true0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Funordered_map_equal0x3Chermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aequal_to0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Ahash0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20true0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x3E0x3E0x3A0x3A_0x5Fdo_rehash0x3Ctrue0x3E0x28unsigned0x20long0x29(ptr noundef %18524, i32 noundef %18525, i32 noundef %18526)
  br label %18527

18527:                                            ; preds = %18521, %18519, %18356
  %18528 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18528, ptr %48, align 4, !tbaa !9
  %18529 = load ptr, ptr %5, align 8, !tbaa !5
  %18530 = getelementptr inbounds %struct.w2c_hermes, ptr %18529, i32 0, i32 6
  %18531 = load i32, ptr %48, align 4, !tbaa !9
  %18532 = zext i32 %18531 to i64
  %18533 = add i64 %18532, 4
  %18534 = call i32 @i32_load(ptr noundef %18530, i64 noundef %18533)
  store i32 %18534, ptr %48, align 4, !tbaa !9
  %18535 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18535, ptr %9, align 4, !tbaa !9
  %18536 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18536, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %18537 = load i32, ptr %50, align 4, !tbaa !9
  %18538 = load i32, ptr %49, align 4, !tbaa !9
  %18539 = sub i32 %18538, %18537
  store i32 %18539, ptr %49, align 4, !tbaa !9
  %18540 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %18540, ptr %8, align 4, !tbaa !9
  %18541 = load i32, ptr %49, align 4, !tbaa !9
  %18542 = load i32, ptr %48, align 4, !tbaa !9
  %18543 = and i32 %18542, %18541
  store i32 %18543, ptr %48, align 4, !tbaa !9
  %18544 = load i32, ptr %48, align 4, !tbaa !9
  %18545 = icmp ne i32 %18544, 0
  %18546 = xor i1 %18545, true
  %18547 = zext i1 %18546 to i32
  store i32 %18547, ptr %48, align 4, !tbaa !9
  %18548 = load i32, ptr %48, align 4, !tbaa !9
  %18549 = icmp ne i32 %18548, 0
  br i1 %18549, label %18550, label %18557

18550:                                            ; preds = %18527
  %18551 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18551, ptr %48, align 4, !tbaa !9
  %18552 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18552, ptr %49, align 4, !tbaa !9
  %18553 = load i32, ptr %49, align 4, !tbaa !9
  %18554 = load i32, ptr %48, align 4, !tbaa !9
  %18555 = and i32 %18554, %18553
  store i32 %18555, ptr %48, align 4, !tbaa !9
  %18556 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18556, ptr %15, align 4, !tbaa !9
  br label %18589

18557:                                            ; preds = %18527
  %18558 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18558, ptr %48, align 4, !tbaa !9
  %18559 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18559, ptr %49, align 4, !tbaa !9
  %18560 = load i32, ptr %48, align 4, !tbaa !9
  %18561 = load i32, ptr %49, align 4, !tbaa !9
  %18562 = icmp ugt i32 %18560, %18561
  %18563 = zext i1 %18562 to i32
  store i32 %18563, ptr %48, align 4, !tbaa !9
  %18564 = load i32, ptr %48, align 4, !tbaa !9
  %18565 = icmp ne i32 %18564, 0
  br i1 %18565, label %18566, label %18569

18566:                                            ; preds = %18557
  %18567 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18567, ptr %48, align 4, !tbaa !9
  %18568 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18568, ptr %15, align 4, !tbaa !9
  br label %18589

18569:                                            ; preds = %18557
  %18570 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18570, ptr %48, align 4, !tbaa !9
  %18571 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18571, ptr %49, align 4, !tbaa !9
  %18572 = load i32, ptr %49, align 4, !tbaa !9
  %18573 = icmp eq i32 %18572, 0
  %18574 = xor i1 %18573, true
  %18575 = xor i1 %18574, true
  %18576 = zext i1 %18575 to i32
  %18577 = sext i32 %18576 to i64
  %18578 = call i64 @llvm.expect.i64(i64 %18577, i64 0)
  %18579 = icmp ne i64 %18578, 0
  br i1 %18579, label %18580, label %18582

18580:                                            ; preds = %18569
  call void @wasm_rt_trap(i32 noundef 3) #8
  unreachable

18581:                                            ; No predecessors!
  br label %18586

18582:                                            ; preds = %18569
  %18583 = load i32, ptr %48, align 4, !tbaa !9
  %18584 = load i32, ptr %49, align 4, !tbaa !9
  %18585 = urem i32 %18583, %18584
  br label %18586

18586:                                            ; preds = %18582, %18581
  %18587 = phi i32 [ 0, %18581 ], [ %18585, %18582 ]
  store i32 %18587, ptr %48, align 4, !tbaa !9
  %18588 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18588, ptr %15, align 4, !tbaa !9
  br label %18589

18589:                                            ; preds = %18586, %18566, %18550, %18190
  %18590 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18590, ptr %48, align 4, !tbaa !9
  %18591 = load ptr, ptr %5, align 8, !tbaa !5
  %18592 = getelementptr inbounds %struct.w2c_hermes, ptr %18591, i32 0, i32 6
  %18593 = load i32, ptr %48, align 4, !tbaa !9
  %18594 = zext i32 %18593 to i64
  %18595 = call i32 @i32_load(ptr noundef %18592, i64 noundef %18594)
  store i32 %18595, ptr %48, align 4, !tbaa !9
  %18596 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %18596, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %18597 = load i32, ptr %50, align 4, !tbaa !9
  %18598 = and i32 %18597, 31
  %18599 = load i32, ptr %49, align 4, !tbaa !9
  %18600 = shl i32 %18599, %18598
  store i32 %18600, ptr %49, align 4, !tbaa !9
  %18601 = load i32, ptr %49, align 4, !tbaa !9
  %18602 = load i32, ptr %48, align 4, !tbaa !9
  %18603 = add i32 %18602, %18601
  store i32 %18603, ptr %48, align 4, !tbaa !9
  %18604 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18604, ptr %11, align 4, !tbaa !9
  %18605 = load ptr, ptr %5, align 8, !tbaa !5
  %18606 = getelementptr inbounds %struct.w2c_hermes, ptr %18605, i32 0, i32 6
  %18607 = load i32, ptr %48, align 4, !tbaa !9
  %18608 = zext i32 %18607 to i64
  %18609 = call i32 @i32_load(ptr noundef %18606, i64 noundef %18608)
  store i32 %18609, ptr %48, align 4, !tbaa !9
  %18610 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18610, ptr %8, align 4, !tbaa !9
  %18611 = load i32, ptr %48, align 4, !tbaa !9
  %18612 = icmp ne i32 %18611, 0
  %18613 = xor i1 %18612, true
  %18614 = zext i1 %18613 to i32
  store i32 %18614, ptr %48, align 4, !tbaa !9
  %18615 = load i32, ptr %48, align 4, !tbaa !9
  %18616 = icmp ne i32 %18615, 0
  br i1 %18616, label %18617, label %18740

18617:                                            ; preds = %18589
  %18618 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18618, ptr %48, align 4, !tbaa !9
  %18619 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18619, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %18620 = load i32, ptr %50, align 4, !tbaa !9
  %18621 = load i32, ptr %49, align 4, !tbaa !9
  %18622 = add i32 %18621, %18620
  store i32 %18622, ptr %49, align 4, !tbaa !9
  %18623 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %18623, ptr %8, align 4, !tbaa !9
  %18624 = load ptr, ptr %5, align 8, !tbaa !5
  %18625 = getelementptr inbounds %struct.w2c_hermes, ptr %18624, i32 0, i32 6
  %18626 = load i32, ptr %49, align 4, !tbaa !9
  %18627 = zext i32 %18626 to i64
  %18628 = call i32 @i32_load(ptr noundef %18625, i64 noundef %18627)
  store i32 %18628, ptr %49, align 4, !tbaa !9
  %18629 = load ptr, ptr %5, align 8, !tbaa !5
  %18630 = getelementptr inbounds %struct.w2c_hermes, ptr %18629, i32 0, i32 6
  %18631 = load i32, ptr %48, align 4, !tbaa !9
  %18632 = zext i32 %18631 to i64
  %18633 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18630, i64 noundef %18632, i32 noundef %18633)
  %18634 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18634, ptr %48, align 4, !tbaa !9
  %18635 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18635, ptr %49, align 4, !tbaa !9
  %18636 = load ptr, ptr %5, align 8, !tbaa !5
  %18637 = getelementptr inbounds %struct.w2c_hermes, ptr %18636, i32 0, i32 6
  %18638 = load i32, ptr %48, align 4, !tbaa !9
  %18639 = zext i32 %18638 to i64
  %18640 = add i64 %18639, 8
  %18641 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18637, i64 noundef %18640, i32 noundef %18641)
  %18642 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18642, ptr %48, align 4, !tbaa !9
  %18643 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18643, ptr %49, align 4, !tbaa !9
  %18644 = load ptr, ptr %5, align 8, !tbaa !5
  %18645 = getelementptr inbounds %struct.w2c_hermes, ptr %18644, i32 0, i32 6
  %18646 = load i32, ptr %48, align 4, !tbaa !9
  %18647 = zext i32 %18646 to i64
  %18648 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18645, i64 noundef %18647, i32 noundef %18648)
  %18649 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18649, ptr %48, align 4, !tbaa !9
  %18650 = load ptr, ptr %5, align 8, !tbaa !5
  %18651 = getelementptr inbounds %struct.w2c_hermes, ptr %18650, i32 0, i32 6
  %18652 = load i32, ptr %48, align 4, !tbaa !9
  %18653 = zext i32 %18652 to i64
  %18654 = call i32 @i32_load(ptr noundef %18651, i64 noundef %18653)
  store i32 %18654, ptr %48, align 4, !tbaa !9
  %18655 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18655, ptr %8, align 4, !tbaa !9
  %18656 = load i32, ptr %48, align 4, !tbaa !9
  %18657 = icmp ne i32 %18656, 0
  %18658 = xor i1 %18657, true
  %18659 = zext i1 %18658 to i32
  store i32 %18659, ptr %48, align 4, !tbaa !9
  %18660 = load i32, ptr %48, align 4, !tbaa !9
  %18661 = icmp ne i32 %18660, 0
  br i1 %18661, label %18662, label %18663

18662:                                            ; preds = %18617
  br label %18761

18663:                                            ; preds = %18617
  %18664 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18664, ptr %48, align 4, !tbaa !9
  %18665 = load ptr, ptr %5, align 8, !tbaa !5
  %18666 = getelementptr inbounds %struct.w2c_hermes, ptr %18665, i32 0, i32 6
  %18667 = load i32, ptr %48, align 4, !tbaa !9
  %18668 = zext i32 %18667 to i64
  %18669 = add i64 %18668, 4
  %18670 = call i32 @i32_load(ptr noundef %18666, i64 noundef %18669)
  store i32 %18670, ptr %48, align 4, !tbaa !9
  %18671 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18671, ptr %8, align 4, !tbaa !9
  %18672 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18672, ptr %48, align 4, !tbaa !9
  %18673 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18673, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %18674 = load i32, ptr %50, align 4, !tbaa !9
  %18675 = load i32, ptr %49, align 4, !tbaa !9
  %18676 = sub i32 %18675, %18674
  store i32 %18676, ptr %49, align 4, !tbaa !9
  %18677 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %18677, ptr %11, align 4, !tbaa !9
  %18678 = load i32, ptr %49, align 4, !tbaa !9
  %18679 = load i32, ptr %48, align 4, !tbaa !9
  %18680 = and i32 %18679, %18678
  store i32 %18680, ptr %48, align 4, !tbaa !9
  %18681 = load i32, ptr %48, align 4, !tbaa !9
  %18682 = icmp ne i32 %18681, 0
  %18683 = xor i1 %18682, true
  %18684 = zext i1 %18683 to i32
  store i32 %18684, ptr %48, align 4, !tbaa !9
  %18685 = load i32, ptr %48, align 4, !tbaa !9
  %18686 = icmp ne i32 %18685, 0
  br i1 %18686, label %18687, label %18694

18687:                                            ; preds = %18663
  %18688 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18688, ptr %48, align 4, !tbaa !9
  %18689 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18689, ptr %49, align 4, !tbaa !9
  %18690 = load i32, ptr %49, align 4, !tbaa !9
  %18691 = load i32, ptr %48, align 4, !tbaa !9
  %18692 = and i32 %18691, %18690
  store i32 %18692, ptr %48, align 4, !tbaa !9
  %18693 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18693, ptr %8, align 4, !tbaa !9
  br label %18724

18694:                                            ; preds = %18663
  %18695 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18695, ptr %48, align 4, !tbaa !9
  %18696 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18696, ptr %49, align 4, !tbaa !9
  %18697 = load i32, ptr %48, align 4, !tbaa !9
  %18698 = load i32, ptr %49, align 4, !tbaa !9
  %18699 = icmp ult i32 %18697, %18698
  %18700 = zext i1 %18699 to i32
  store i32 %18700, ptr %48, align 4, !tbaa !9
  %18701 = load i32, ptr %48, align 4, !tbaa !9
  %18702 = icmp ne i32 %18701, 0
  br i1 %18702, label %18703, label %18704

18703:                                            ; preds = %18694
  br label %18724

18704:                                            ; preds = %18694
  %18705 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18705, ptr %48, align 4, !tbaa !9
  %18706 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18706, ptr %49, align 4, !tbaa !9
  %18707 = load i32, ptr %49, align 4, !tbaa !9
  %18708 = icmp eq i32 %18707, 0
  %18709 = xor i1 %18708, true
  %18710 = xor i1 %18709, true
  %18711 = zext i1 %18710 to i32
  %18712 = sext i32 %18711 to i64
  %18713 = call i64 @llvm.expect.i64(i64 %18712, i64 0)
  %18714 = icmp ne i64 %18713, 0
  br i1 %18714, label %18715, label %18717

18715:                                            ; preds = %18704
  call void @wasm_rt_trap(i32 noundef 3) #8
  unreachable

18716:                                            ; No predecessors!
  br label %18721

18717:                                            ; preds = %18704
  %18718 = load i32, ptr %48, align 4, !tbaa !9
  %18719 = load i32, ptr %49, align 4, !tbaa !9
  %18720 = urem i32 %18718, %18719
  br label %18721

18721:                                            ; preds = %18717, %18716
  %18722 = phi i32 [ 0, %18716 ], [ %18720, %18717 ]
  store i32 %18722, ptr %48, align 4, !tbaa !9
  %18723 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18723, ptr %8, align 4, !tbaa !9
  br label %18724

18724:                                            ; preds = %18721, %18703, %18687
  %18725 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18725, ptr %48, align 4, !tbaa !9
  %18726 = load ptr, ptr %5, align 8, !tbaa !5
  %18727 = getelementptr inbounds %struct.w2c_hermes, ptr %18726, i32 0, i32 6
  %18728 = load i32, ptr %48, align 4, !tbaa !9
  %18729 = zext i32 %18728 to i64
  %18730 = call i32 @i32_load(ptr noundef %18727, i64 noundef %18729)
  store i32 %18730, ptr %48, align 4, !tbaa !9
  %18731 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18731, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %18732 = load i32, ptr %50, align 4, !tbaa !9
  %18733 = and i32 %18732, 31
  %18734 = load i32, ptr %49, align 4, !tbaa !9
  %18735 = shl i32 %18734, %18733
  store i32 %18735, ptr %49, align 4, !tbaa !9
  %18736 = load i32, ptr %49, align 4, !tbaa !9
  %18737 = load i32, ptr %48, align 4, !tbaa !9
  %18738 = add i32 %18737, %18736
  store i32 %18738, ptr %48, align 4, !tbaa !9
  %18739 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18739, ptr %8, align 4, !tbaa !9
  br label %18753

18740:                                            ; preds = %18589
  %18741 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18741, ptr %48, align 4, !tbaa !9
  %18742 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18742, ptr %49, align 4, !tbaa !9
  %18743 = load ptr, ptr %5, align 8, !tbaa !5
  %18744 = getelementptr inbounds %struct.w2c_hermes, ptr %18743, i32 0, i32 6
  %18745 = load i32, ptr %49, align 4, !tbaa !9
  %18746 = zext i32 %18745 to i64
  %18747 = call i32 @i32_load(ptr noundef %18744, i64 noundef %18746)
  store i32 %18747, ptr %49, align 4, !tbaa !9
  %18748 = load ptr, ptr %5, align 8, !tbaa !5
  %18749 = getelementptr inbounds %struct.w2c_hermes, ptr %18748, i32 0, i32 6
  %18750 = load i32, ptr %48, align 4, !tbaa !9
  %18751 = zext i32 %18750 to i64
  %18752 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18749, i64 noundef %18751, i32 noundef %18752)
  br label %18753

18753:                                            ; preds = %18740, %18724
  %18754 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18754, ptr %48, align 4, !tbaa !9
  %18755 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18755, ptr %49, align 4, !tbaa !9
  %18756 = load ptr, ptr %5, align 8, !tbaa !5
  %18757 = getelementptr inbounds %struct.w2c_hermes, ptr %18756, i32 0, i32 6
  %18758 = load i32, ptr %48, align 4, !tbaa !9
  %18759 = zext i32 %18758 to i64
  %18760 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18757, i64 noundef %18759, i32 noundef %18760)
  br label %18761

18761:                                            ; preds = %18753, %18662
  store i32 1, ptr %48, align 4, !tbaa !9
  %18762 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18762, ptr %28, align 4, !tbaa !9
  %18763 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18763, ptr %48, align 4, !tbaa !9
  %18764 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18764, ptr %49, align 4, !tbaa !9
  %18765 = load ptr, ptr %5, align 8, !tbaa !5
  %18766 = getelementptr inbounds %struct.w2c_hermes, ptr %18765, i32 0, i32 6
  %18767 = load i32, ptr %49, align 4, !tbaa !9
  %18768 = zext i32 %18767 to i64
  %18769 = add i64 %18768, 12
  %18770 = call i32 @i32_load(ptr noundef %18766, i64 noundef %18769)
  store i32 %18770, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %18771 = load i32, ptr %50, align 4, !tbaa !9
  %18772 = load i32, ptr %49, align 4, !tbaa !9
  %18773 = add i32 %18772, %18771
  store i32 %18773, ptr %49, align 4, !tbaa !9
  %18774 = load ptr, ptr %5, align 8, !tbaa !5
  %18775 = getelementptr inbounds %struct.w2c_hermes, ptr %18774, i32 0, i32 6
  %18776 = load i32, ptr %48, align 4, !tbaa !9
  %18777 = zext i32 %18776 to i64
  %18778 = add i64 %18777, 12
  %18779 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18775, i64 noundef %18778, i32 noundef %18779)
  br label %18780

18780:                                            ; preds = %18761, %18047, %18006, %17897, %17856
  %18781 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18781, ptr %48, align 4, !tbaa !9
  %18782 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %18782, ptr %49, align 4, !tbaa !9
  %18783 = load ptr, ptr %5, align 8, !tbaa !5
  %18784 = getelementptr inbounds %struct.w2c_hermes, ptr %18783, i32 0, i32 6
  %18785 = load i32, ptr %48, align 4, !tbaa !9
  %18786 = zext i32 %18785 to i64
  %18787 = add i64 %18786, 12
  %18788 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %18784, i64 noundef %18787, i32 noundef %18788)
  %18789 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18789, ptr %48, align 4, !tbaa !9
  %18790 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18790, ptr %49, align 4, !tbaa !9
  %18791 = load ptr, ptr %5, align 8, !tbaa !5
  %18792 = getelementptr inbounds %struct.w2c_hermes, ptr %18791, i32 0, i32 6
  %18793 = load i32, ptr %48, align 4, !tbaa !9
  %18794 = zext i32 %18793 to i64
  %18795 = add i64 %18794, 8
  %18796 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18792, i64 noundef %18795, i32 noundef %18796)
  %18797 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18797, ptr %48, align 4, !tbaa !9
  %18798 = load ptr, ptr %5, align 8, !tbaa !5
  %18799 = getelementptr inbounds %struct.w2c_hermes, ptr %18798, i32 0, i32 6
  %18800 = load i32, ptr %48, align 4, !tbaa !9
  %18801 = zext i32 %18800 to i64
  %18802 = add i64 %18801, 8
  %18803 = call i32 @i32_load(ptr noundef %18799, i64 noundef %18802)
  store i32 %18803, ptr %48, align 4, !tbaa !9
  %18804 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18804, ptr %8, align 4, !tbaa !9
  %18805 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18805, ptr %48, align 4, !tbaa !9
  %18806 = load ptr, ptr %5, align 8, !tbaa !5
  %18807 = getelementptr inbounds %struct.w2c_hermes, ptr %18806, i32 0, i32 6
  %18808 = load i32, ptr %48, align 4, !tbaa !9
  %18809 = zext i32 %18808 to i64
  %18810 = add i64 %18809, 12
  %18811 = call i32 @i32_load8_u(ptr noundef %18807, i64 noundef %18810)
  store i32 %18811, ptr %48, align 4, !tbaa !9
  %18812 = load i32, ptr %48, align 4, !tbaa !9
  %18813 = icmp ne i32 %18812, 0
  %18814 = xor i1 %18813, true
  %18815 = zext i1 %18814 to i32
  store i32 %18815, ptr %48, align 4, !tbaa !9
  %18816 = load i32, ptr %48, align 4, !tbaa !9
  %18817 = icmp ne i32 %18816, 0
  br i1 %18817, label %18818, label %18827

18818:                                            ; preds = %18780
  %18819 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18819, ptr %48, align 4, !tbaa !9
  %18820 = load ptr, ptr %5, align 8, !tbaa !5
  %18821 = getelementptr inbounds %struct.w2c_hermes, ptr %18820, i32 0, i32 6
  %18822 = load i32, ptr %48, align 4, !tbaa !9
  %18823 = zext i32 %18822 to i64
  %18824 = add i64 %18823, 20
  %18825 = call i32 @i32_load(ptr noundef %18821, i64 noundef %18824)
  store i32 %18825, ptr %48, align 4, !tbaa !9
  %18826 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18826, ptr %10, align 4, !tbaa !9
  br label %18846

18827:                                            ; preds = %18780
  %18828 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18828, ptr %48, align 4, !tbaa !9
  %18829 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %18829, ptr %49, align 4, !tbaa !9
  %18830 = load ptr, ptr %5, align 8, !tbaa !5
  %18831 = getelementptr inbounds %struct.w2c_hermes, ptr %18830, i32 0, i32 6
  %18832 = load i32, ptr %49, align 4, !tbaa !9
  %18833 = zext i32 %18832 to i64
  %18834 = add i64 %18833, 588
  %18835 = call i32 @i32_load(ptr noundef %18831, i64 noundef %18834)
  store i32 %18835, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %18836 = load i32, ptr %50, align 4, !tbaa !9
  %18837 = load i32, ptr %49, align 4, !tbaa !9
  %18838 = sub i32 %18837, %18836
  store i32 %18838, ptr %49, align 4, !tbaa !9
  %18839 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %18839, ptr %10, align 4, !tbaa !9
  %18840 = load ptr, ptr %5, align 8, !tbaa !5
  %18841 = getelementptr inbounds %struct.w2c_hermes, ptr %18840, i32 0, i32 6
  %18842 = load i32, ptr %48, align 4, !tbaa !9
  %18843 = zext i32 %18842 to i64
  %18844 = add i64 %18843, 20
  %18845 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18841, i64 noundef %18844, i32 noundef %18845)
  br label %18846

18846:                                            ; preds = %18827, %18818
  %18847 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18847, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %18848 = load i32, ptr %49, align 4, !tbaa !9
  %18849 = load i32, ptr %48, align 4, !tbaa !9
  %18850 = add i32 %18849, %18848
  store i32 %18850, ptr %48, align 4, !tbaa !9
  %18851 = load i32, ptr %48, align 4, !tbaa !9
  %18852 = load ptr, ptr %5, align 8, !tbaa !5
  %18853 = getelementptr inbounds %struct.w2c_hermes, ptr %18852, i32 0, i32 3
  store i32 %18851, ptr %18853, align 8, !tbaa !15
  %18854 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18854, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %18855 = load i32, ptr %49, align 4, !tbaa !9
  %18856 = load i32, ptr %48, align 4, !tbaa !9
  %18857 = add i32 %18856, %18855
  store i32 %18857, ptr %48, align 4, !tbaa !9
  %18858 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18858, ptr %17, align 4, !tbaa !9
  %18859 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18859, ptr %49, align 4, !tbaa !9
  %18860 = load i32, ptr %49, align 4, !tbaa !9
  %18861 = uitofp i32 %18860 to double
  store double %18861, ptr %71, align 8, !tbaa !20
  %18862 = load ptr, ptr %5, align 8, !tbaa !5
  %18863 = load i32, ptr %48, align 4, !tbaa !9
  %18864 = load double, ptr %71, align 8, !tbaa !20
  %18865 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralNumber0x28double0x29(ptr noundef %18862, i32 noundef %18863, double noundef %18864)
  store i32 %18865, ptr %48, align 4, !tbaa !9
  %18866 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18866, ptr %8, align 4, !tbaa !9
  %18867 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18867, ptr %48, align 4, !tbaa !9
  %18868 = load ptr, ptr %5, align 8, !tbaa !5
  %18869 = getelementptr inbounds %struct.w2c_hermes, ptr %18868, i32 0, i32 6
  %18870 = load i32, ptr %48, align 4, !tbaa !9
  %18871 = zext i32 %18870 to i64
  %18872 = add i64 %18871, 128
  %18873 = call i32 @i32_load(ptr noundef %18869, i64 noundef %18872)
  store i32 %18873, ptr %48, align 4, !tbaa !9
  %18874 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18874, ptr %9, align 4, !tbaa !9
  %18875 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18875, ptr %49, align 4, !tbaa !9
  %18876 = load ptr, ptr %5, align 8, !tbaa !5
  %18877 = getelementptr inbounds %struct.w2c_hermes, ptr %18876, i32 0, i32 6
  %18878 = load i32, ptr %49, align 4, !tbaa !9
  %18879 = zext i32 %18878 to i64
  %18880 = add i64 %18879, 132
  %18881 = call i32 @i32_load(ptr noundef %18877, i64 noundef %18880)
  store i32 %18881, ptr %49, align 4, !tbaa !9
  %18882 = load i32, ptr %48, align 4, !tbaa !9
  %18883 = load i32, ptr %49, align 4, !tbaa !9
  %18884 = icmp uge i32 %18882, %18883
  %18885 = zext i1 %18884 to i32
  store i32 %18885, ptr %48, align 4, !tbaa !9
  %18886 = load i32, ptr %48, align 4, !tbaa !9
  %18887 = icmp ne i32 %18886, 0
  br i1 %18887, label %18888, label %18907

18888:                                            ; preds = %18846
  %18889 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18889, ptr %48, align 4, !tbaa !9
  store i32 124, ptr %49, align 4, !tbaa !9
  %18890 = load i32, ptr %49, align 4, !tbaa !9
  %18891 = load i32, ptr %48, align 4, !tbaa !9
  %18892 = add i32 %18891, %18890
  store i32 %18892, ptr %48, align 4, !tbaa !9
  %18893 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %18893, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %18894 = load ptr, ptr %5, align 8, !tbaa !5
  %18895 = load i32, ptr %48, align 4, !tbaa !9
  %18896 = load i32, ptr %49, align 4, !tbaa !9
  %18897 = load i32, ptr %50, align 4, !tbaa !9
  %18898 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %18894, i32 noundef %18895, i32 noundef %18896, i32 noundef %18897, i32 noundef %18898)
  %18899 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18899, ptr %48, align 4, !tbaa !9
  %18900 = load ptr, ptr %5, align 8, !tbaa !5
  %18901 = getelementptr inbounds %struct.w2c_hermes, ptr %18900, i32 0, i32 6
  %18902 = load i32, ptr %48, align 4, !tbaa !9
  %18903 = zext i32 %18902 to i64
  %18904 = add i64 %18903, 128
  %18905 = call i32 @i32_load(ptr noundef %18901, i64 noundef %18904)
  store i32 %18905, ptr %48, align 4, !tbaa !9
  %18906 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18906, ptr %9, align 4, !tbaa !9
  br label %18907

18907:                                            ; preds = %18888, %18846
  %18908 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18908, ptr %48, align 4, !tbaa !9
  %18909 = load ptr, ptr %5, align 8, !tbaa !5
  %18910 = getelementptr inbounds %struct.w2c_hermes, ptr %18909, i32 0, i32 6
  %18911 = load i32, ptr %48, align 4, !tbaa !9
  %18912 = zext i32 %18911 to i64
  %18913 = add i64 %18912, 124
  %18914 = call i32 @i32_load(ptr noundef %18910, i64 noundef %18913)
  store i32 %18914, ptr %48, align 4, !tbaa !9
  %18915 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18915, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %18916 = load i32, ptr %50, align 4, !tbaa !9
  %18917 = and i32 %18916, 31
  %18918 = load i32, ptr %49, align 4, !tbaa !9
  %18919 = shl i32 %18918, %18917
  store i32 %18919, ptr %49, align 4, !tbaa !9
  %18920 = load i32, ptr %49, align 4, !tbaa !9
  %18921 = load i32, ptr %48, align 4, !tbaa !9
  %18922 = add i32 %18921, %18920
  store i32 %18922, ptr %48, align 4, !tbaa !9
  %18923 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18923, ptr %49, align 4, !tbaa !9
  %18924 = load ptr, ptr %5, align 8, !tbaa !5
  %18925 = getelementptr inbounds %struct.w2c_hermes, ptr %18924, i32 0, i32 6
  %18926 = load i32, ptr %48, align 4, !tbaa !9
  %18927 = zext i32 %18926 to i64
  %18928 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18925, i64 noundef %18927, i32 noundef %18928)
  store i32 1, ptr %48, align 4, !tbaa !9
  %18929 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18929, ptr %11, align 4, !tbaa !9
  %18930 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18930, ptr %48, align 4, !tbaa !9
  %18931 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18931, ptr %49, align 4, !tbaa !9
  %18932 = load ptr, ptr %5, align 8, !tbaa !5
  %18933 = getelementptr inbounds %struct.w2c_hermes, ptr %18932, i32 0, i32 6
  %18934 = load i32, ptr %49, align 4, !tbaa !9
  %18935 = zext i32 %18934 to i64
  %18936 = add i64 %18935, 128
  %18937 = call i32 @i32_load(ptr noundef %18933, i64 noundef %18936)
  store i32 %18937, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %18938 = load i32, ptr %50, align 4, !tbaa !9
  %18939 = load i32, ptr %49, align 4, !tbaa !9
  %18940 = add i32 %18939, %18938
  store i32 %18940, ptr %49, align 4, !tbaa !9
  %18941 = load ptr, ptr %5, align 8, !tbaa !5
  %18942 = getelementptr inbounds %struct.w2c_hermes, ptr %18941, i32 0, i32 6
  %18943 = load i32, ptr %48, align 4, !tbaa !9
  %18944 = zext i32 %18943 to i64
  %18945 = add i64 %18944, 128
  %18946 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18942, i64 noundef %18945, i32 noundef %18946)
  %18947 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %18947, ptr %48, align 4, !tbaa !9
  %18948 = load ptr, ptr %5, align 8, !tbaa !5
  %18949 = getelementptr inbounds %struct.w2c_hermes, ptr %18948, i32 0, i32 6
  %18950 = load i32, ptr %48, align 4, !tbaa !9
  %18951 = zext i32 %18950 to i64
  %18952 = call i32 @i32_load(ptr noundef %18949, i64 noundef %18951)
  store i32 %18952, ptr %48, align 4, !tbaa !9
  store i32 356, ptr %49, align 4, !tbaa !9
  %18953 = load i32, ptr %49, align 4, !tbaa !9
  %18954 = load i32, ptr %48, align 4, !tbaa !9
  %18955 = add i32 %18954, %18953
  store i32 %18955, ptr %48, align 4, !tbaa !9
  %18956 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18956, ptr %8, align 4, !tbaa !9
  %18957 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18957, ptr %48, align 4, !tbaa !9
  %18958 = load ptr, ptr %5, align 8, !tbaa !5
  %18959 = getelementptr inbounds %struct.w2c_hermes, ptr %18958, i32 0, i32 6
  %18960 = load i32, ptr %48, align 4, !tbaa !9
  %18961 = zext i32 %18960 to i64
  %18962 = add i64 %18961, 128
  %18963 = call i32 @i32_load(ptr noundef %18959, i64 noundef %18962)
  store i32 %18963, ptr %48, align 4, !tbaa !9
  %18964 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18964, ptr %9, align 4, !tbaa !9
  %18965 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18965, ptr %49, align 4, !tbaa !9
  %18966 = load ptr, ptr %5, align 8, !tbaa !5
  %18967 = getelementptr inbounds %struct.w2c_hermes, ptr %18966, i32 0, i32 6
  %18968 = load i32, ptr %49, align 4, !tbaa !9
  %18969 = zext i32 %18968 to i64
  %18970 = add i64 %18969, 132
  %18971 = call i32 @i32_load(ptr noundef %18967, i64 noundef %18970)
  store i32 %18971, ptr %49, align 4, !tbaa !9
  %18972 = load i32, ptr %48, align 4, !tbaa !9
  %18973 = load i32, ptr %49, align 4, !tbaa !9
  %18974 = icmp uge i32 %18972, %18973
  %18975 = zext i1 %18974 to i32
  store i32 %18975, ptr %48, align 4, !tbaa !9
  %18976 = load i32, ptr %48, align 4, !tbaa !9
  %18977 = icmp ne i32 %18976, 0
  br i1 %18977, label %18978, label %18997

18978:                                            ; preds = %18907
  %18979 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18979, ptr %48, align 4, !tbaa !9
  store i32 124, ptr %49, align 4, !tbaa !9
  %18980 = load i32, ptr %49, align 4, !tbaa !9
  %18981 = load i32, ptr %48, align 4, !tbaa !9
  %18982 = add i32 %18981, %18980
  store i32 %18982, ptr %48, align 4, !tbaa !9
  %18983 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %18983, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %18984 = load ptr, ptr %5, align 8, !tbaa !5
  %18985 = load i32, ptr %48, align 4, !tbaa !9
  %18986 = load i32, ptr %49, align 4, !tbaa !9
  %18987 = load i32, ptr %50, align 4, !tbaa !9
  %18988 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %18984, i32 noundef %18985, i32 noundef %18986, i32 noundef %18987, i32 noundef %18988)
  %18989 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18989, ptr %48, align 4, !tbaa !9
  %18990 = load ptr, ptr %5, align 8, !tbaa !5
  %18991 = getelementptr inbounds %struct.w2c_hermes, ptr %18990, i32 0, i32 6
  %18992 = load i32, ptr %48, align 4, !tbaa !9
  %18993 = zext i32 %18992 to i64
  %18994 = add i64 %18993, 128
  %18995 = call i32 @i32_load(ptr noundef %18991, i64 noundef %18994)
  store i32 %18995, ptr %48, align 4, !tbaa !9
  %18996 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %18996, ptr %9, align 4, !tbaa !9
  br label %18997

18997:                                            ; preds = %18978, %18907
  %18998 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18998, ptr %48, align 4, !tbaa !9
  %18999 = load ptr, ptr %5, align 8, !tbaa !5
  %19000 = getelementptr inbounds %struct.w2c_hermes, ptr %18999, i32 0, i32 6
  %19001 = load i32, ptr %48, align 4, !tbaa !9
  %19002 = zext i32 %19001 to i64
  %19003 = add i64 %19002, 124
  %19004 = call i32 @i32_load(ptr noundef %19000, i64 noundef %19003)
  store i32 %19004, ptr %48, align 4, !tbaa !9
  %19005 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19005, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %19006 = load i32, ptr %50, align 4, !tbaa !9
  %19007 = and i32 %19006, 31
  %19008 = load i32, ptr %49, align 4, !tbaa !9
  %19009 = shl i32 %19008, %19007
  store i32 %19009, ptr %49, align 4, !tbaa !9
  %19010 = load i32, ptr %49, align 4, !tbaa !9
  %19011 = load i32, ptr %48, align 4, !tbaa !9
  %19012 = add i32 %19011, %19010
  store i32 %19012, ptr %48, align 4, !tbaa !9
  %19013 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19013, ptr %49, align 4, !tbaa !9
  %19014 = load ptr, ptr %5, align 8, !tbaa !5
  %19015 = getelementptr inbounds %struct.w2c_hermes, ptr %19014, i32 0, i32 6
  %19016 = load i32, ptr %48, align 4, !tbaa !9
  %19017 = zext i32 %19016 to i64
  %19018 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19015, i64 noundef %19017, i32 noundef %19018)
  %19019 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19019, ptr %48, align 4, !tbaa !9
  %19020 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19020, ptr %49, align 4, !tbaa !9
  %19021 = load ptr, ptr %5, align 8, !tbaa !5
  %19022 = getelementptr inbounds %struct.w2c_hermes, ptr %19021, i32 0, i32 6
  %19023 = load i32, ptr %49, align 4, !tbaa !9
  %19024 = zext i32 %19023 to i64
  %19025 = add i64 %19024, 128
  %19026 = call i32 @i32_load(ptr noundef %19022, i64 noundef %19025)
  store i32 %19026, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %19027 = load i32, ptr %50, align 4, !tbaa !9
  %19028 = load i32, ptr %49, align 4, !tbaa !9
  %19029 = add i32 %19028, %19027
  store i32 %19029, ptr %49, align 4, !tbaa !9
  %19030 = load ptr, ptr %5, align 8, !tbaa !5
  %19031 = getelementptr inbounds %struct.w2c_hermes, ptr %19030, i32 0, i32 6
  %19032 = load i32, ptr %48, align 4, !tbaa !9
  %19033 = zext i32 %19032 to i64
  %19034 = add i64 %19033, 128
  %19035 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19031, i64 noundef %19034, i32 noundef %19035)
  %19036 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %19036, ptr %48, align 4, !tbaa !9
  %19037 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %19037, ptr %49, align 4, !tbaa !9
  %19038 = load ptr, ptr %5, align 8, !tbaa !5
  %19039 = getelementptr inbounds %struct.w2c_hermes, ptr %19038, i32 0, i32 6
  %19040 = load i32, ptr %49, align 4, !tbaa !9
  %19041 = zext i32 %19040 to i64
  %19042 = add i64 %19041, 32
  %19043 = call i32 @i32_load(ptr noundef %19039, i64 noundef %19042)
  store i32 %19043, ptr %49, align 4, !tbaa !9
  %19044 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %19044, ptr %9, align 4, !tbaa !9
  %19045 = load i32, ptr %48, align 4, !tbaa !9
  %19046 = load i32, ptr %49, align 4, !tbaa !9
  %19047 = icmp ne i32 %19045, %19046
  %19048 = zext i1 %19047 to i32
  store i32 %19048, ptr %48, align 4, !tbaa !9
  %19049 = load i32, ptr %48, align 4, !tbaa !9
  %19050 = icmp ne i32 %19049, 0
  br i1 %19050, label %19051, label %19477

19051:                                            ; preds = %18997
  br label %19052

19052:                                            ; preds = %19205, %19051
  %19053 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19053, ptr %48, align 4, !tbaa !9
  %19054 = load ptr, ptr %5, align 8, !tbaa !5
  %19055 = getelementptr inbounds %struct.w2c_hermes, ptr %19054, i32 0, i32 6
  %19056 = load i32, ptr %48, align 4, !tbaa !9
  %19057 = zext i32 %19056 to i64
  %19058 = add i64 %19057, 32
  %19059 = call i32 @i32_load(ptr noundef %19055, i64 noundef %19058)
  store i32 %19059, ptr %48, align 4, !tbaa !9
  %19060 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19060, ptr %8, align 4, !tbaa !9
  %19061 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19061, ptr %48, align 4, !tbaa !9
  %19062 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19062, ptr %49, align 4, !tbaa !9
  %19063 = load ptr, ptr %5, align 8, !tbaa !5
  %19064 = getelementptr inbounds %struct.w2c_hermes, ptr %19063, i32 0, i32 6
  %19065 = load i32, ptr %49, align 4, !tbaa !9
  %19066 = zext i32 %19065 to i64
  %19067 = add i64 %19066, 36
  %19068 = call i32 @i32_load(ptr noundef %19064, i64 noundef %19067)
  store i32 %19068, ptr %49, align 4, !tbaa !9
  %19069 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %19069, ptr %10, align 4, !tbaa !9
  %19070 = load ptr, ptr %5, align 8, !tbaa !5
  %19071 = getelementptr inbounds %struct.w2c_hermes, ptr %19070, i32 0, i32 6
  %19072 = load i32, ptr %49, align 4, !tbaa !9
  %19073 = zext i32 %19072 to i64
  %19074 = call i64 @i64_load(ptr noundef %19071, i64 noundef %19073)
  store i64 %19074, ptr %59, align 8, !tbaa !11
  %19075 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %19075, ptr %31, align 8, !tbaa !11
  %19076 = load ptr, ptr %5, align 8, !tbaa !5
  %19077 = getelementptr inbounds %struct.w2c_hermes, ptr %19076, i32 0, i32 6
  %19078 = load i32, ptr %48, align 4, !tbaa !9
  %19079 = zext i32 %19078 to i64
  %19080 = add i64 %19079, 32
  %19081 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19077, i64 noundef %19080, i64 noundef %19081)
  %19082 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19082, ptr %48, align 4, !tbaa !9
  %19083 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %19083, ptr %59, align 8, !tbaa !11
  %19084 = load ptr, ptr %5, align 8, !tbaa !5
  %19085 = getelementptr inbounds %struct.w2c_hermes, ptr %19084, i32 0, i32 6
  %19086 = load i32, ptr %48, align 4, !tbaa !9
  %19087 = zext i32 %19086 to i64
  %19088 = add i64 %19087, 96
  %19089 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19085, i64 noundef %19088, i64 noundef %19089)
  %19090 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %19090, ptr %48, align 4, !tbaa !9
  %19091 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19091, ptr %49, align 4, !tbaa !9
  store i32 32, ptr %50, align 4, !tbaa !9
  %19092 = load i32, ptr %50, align 4, !tbaa !9
  %19093 = load i32, ptr %49, align 4, !tbaa !9
  %19094 = add i32 %19093, %19092
  store i32 %19094, ptr %49, align 4, !tbaa !9
  %19095 = load ptr, ptr %5, align 8, !tbaa !5
  %19096 = load i32, ptr %48, align 4, !tbaa !9
  %19097 = load i32, ptr %49, align 4, !tbaa !9
  %19098 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %19095, i32 noundef %19096, i32 noundef %19097)
  store i32 %19098, ptr %48, align 4, !tbaa !9
  %19099 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19099, ptr %14, align 4, !tbaa !9
  %19100 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19100, ptr %48, align 4, !tbaa !9
  %19101 = load ptr, ptr %5, align 8, !tbaa !5
  %19102 = getelementptr inbounds %struct.w2c_hermes, ptr %19101, i32 0, i32 6
  %19103 = load i32, ptr %48, align 4, !tbaa !9
  %19104 = zext i32 %19103 to i64
  %19105 = add i64 %19104, 128
  %19106 = call i32 @i32_load(ptr noundef %19102, i64 noundef %19105)
  store i32 %19106, ptr %48, align 4, !tbaa !9
  %19107 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19107, ptr %12, align 4, !tbaa !9
  %19108 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19108, ptr %49, align 4, !tbaa !9
  %19109 = load ptr, ptr %5, align 8, !tbaa !5
  %19110 = getelementptr inbounds %struct.w2c_hermes, ptr %19109, i32 0, i32 6
  %19111 = load i32, ptr %49, align 4, !tbaa !9
  %19112 = zext i32 %19111 to i64
  %19113 = add i64 %19112, 132
  %19114 = call i32 @i32_load(ptr noundef %19110, i64 noundef %19113)
  store i32 %19114, ptr %49, align 4, !tbaa !9
  %19115 = load i32, ptr %48, align 4, !tbaa !9
  %19116 = load i32, ptr %49, align 4, !tbaa !9
  %19117 = icmp uge i32 %19115, %19116
  %19118 = zext i1 %19117 to i32
  store i32 %19118, ptr %48, align 4, !tbaa !9
  %19119 = load i32, ptr %48, align 4, !tbaa !9
  %19120 = icmp ne i32 %19119, 0
  br i1 %19120, label %19121, label %19140

19121:                                            ; preds = %19052
  %19122 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19122, ptr %48, align 4, !tbaa !9
  store i32 124, ptr %49, align 4, !tbaa !9
  %19123 = load i32, ptr %49, align 4, !tbaa !9
  %19124 = load i32, ptr %48, align 4, !tbaa !9
  %19125 = add i32 %19124, %19123
  store i32 %19125, ptr %48, align 4, !tbaa !9
  %19126 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %19126, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %19127 = load ptr, ptr %5, align 8, !tbaa !5
  %19128 = load i32, ptr %48, align 4, !tbaa !9
  %19129 = load i32, ptr %49, align 4, !tbaa !9
  %19130 = load i32, ptr %50, align 4, !tbaa !9
  %19131 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %19127, i32 noundef %19128, i32 noundef %19129, i32 noundef %19130, i32 noundef %19131)
  %19132 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19132, ptr %48, align 4, !tbaa !9
  %19133 = load ptr, ptr %5, align 8, !tbaa !5
  %19134 = getelementptr inbounds %struct.w2c_hermes, ptr %19133, i32 0, i32 6
  %19135 = load i32, ptr %48, align 4, !tbaa !9
  %19136 = zext i32 %19135 to i64
  %19137 = add i64 %19136, 128
  %19138 = call i32 @i32_load(ptr noundef %19134, i64 noundef %19137)
  store i32 %19138, ptr %48, align 4, !tbaa !9
  %19139 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19139, ptr %12, align 4, !tbaa !9
  br label %19140

19140:                                            ; preds = %19121, %19052
  %19141 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19141, ptr %48, align 4, !tbaa !9
  %19142 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19142, ptr %49, align 4, !tbaa !9
  %19143 = load i32, ptr %48, align 4, !tbaa !9
  %19144 = load i32, ptr %49, align 4, !tbaa !9
  %19145 = icmp eq i32 %19143, %19144
  %19146 = zext i1 %19145 to i32
  store i32 %19146, ptr %48, align 4, !tbaa !9
  %19147 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19147, ptr %49, align 4, !tbaa !9
  %19148 = load i32, ptr %49, align 4, !tbaa !9
  %19149 = load i32, ptr %48, align 4, !tbaa !9
  %19150 = and i32 %19149, %19148
  store i32 %19150, ptr %48, align 4, !tbaa !9
  %19151 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19151, ptr %11, align 4, !tbaa !9
  %19152 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19152, ptr %48, align 4, !tbaa !9
  %19153 = load ptr, ptr %5, align 8, !tbaa !5
  %19154 = getelementptr inbounds %struct.w2c_hermes, ptr %19153, i32 0, i32 6
  %19155 = load i32, ptr %48, align 4, !tbaa !9
  %19156 = zext i32 %19155 to i64
  %19157 = add i64 %19156, 124
  %19158 = call i32 @i32_load(ptr noundef %19154, i64 noundef %19157)
  store i32 %19158, ptr %48, align 4, !tbaa !9
  %19159 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %19159, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %19160 = load i32, ptr %50, align 4, !tbaa !9
  %19161 = and i32 %19160, 31
  %19162 = load i32, ptr %49, align 4, !tbaa !9
  %19163 = shl i32 %19162, %19161
  store i32 %19163, ptr %49, align 4, !tbaa !9
  %19164 = load i32, ptr %49, align 4, !tbaa !9
  %19165 = load i32, ptr %48, align 4, !tbaa !9
  %19166 = add i32 %19165, %19164
  store i32 %19166, ptr %48, align 4, !tbaa !9
  %19167 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %19167, ptr %49, align 4, !tbaa !9
  %19168 = load ptr, ptr %5, align 8, !tbaa !5
  %19169 = getelementptr inbounds %struct.w2c_hermes, ptr %19168, i32 0, i32 6
  %19170 = load i32, ptr %48, align 4, !tbaa !9
  %19171 = zext i32 %19170 to i64
  %19172 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19169, i64 noundef %19171, i32 noundef %19172)
  %19173 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19173, ptr %48, align 4, !tbaa !9
  %19174 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19174, ptr %49, align 4, !tbaa !9
  %19175 = load ptr, ptr %5, align 8, !tbaa !5
  %19176 = getelementptr inbounds %struct.w2c_hermes, ptr %19175, i32 0, i32 6
  %19177 = load i32, ptr %49, align 4, !tbaa !9
  %19178 = zext i32 %19177 to i64
  %19179 = add i64 %19178, 128
  %19180 = call i32 @i32_load(ptr noundef %19176, i64 noundef %19179)
  store i32 %19180, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %19181 = load i32, ptr %50, align 4, !tbaa !9
  %19182 = load i32, ptr %49, align 4, !tbaa !9
  %19183 = add i32 %19182, %19181
  store i32 %19183, ptr %49, align 4, !tbaa !9
  %19184 = load ptr, ptr %5, align 8, !tbaa !5
  %19185 = getelementptr inbounds %struct.w2c_hermes, ptr %19184, i32 0, i32 6
  %19186 = load i32, ptr %48, align 4, !tbaa !9
  %19187 = zext i32 %19186 to i64
  %19188 = add i64 %19187, 128
  %19189 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19185, i64 noundef %19188, i32 noundef %19189)
  %19190 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19190, ptr %48, align 4, !tbaa !9
  %19191 = load ptr, ptr %5, align 8, !tbaa !5
  %19192 = getelementptr inbounds %struct.w2c_hermes, ptr %19191, i32 0, i32 6
  %19193 = load i32, ptr %48, align 4, !tbaa !9
  %19194 = zext i32 %19193 to i64
  %19195 = add i64 %19194, 4
  %19196 = call i32 @i32_load(ptr noundef %19192, i64 noundef %19195)
  store i32 %19196, ptr %48, align 4, !tbaa !9
  %19197 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19197, ptr %9, align 4, !tbaa !9
  %19198 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %19198, ptr %49, align 4, !tbaa !9
  %19199 = load i32, ptr %48, align 4, !tbaa !9
  %19200 = load i32, ptr %49, align 4, !tbaa !9
  %19201 = icmp ne i32 %19199, %19200
  %19202 = zext i1 %19201 to i32
  store i32 %19202, ptr %48, align 4, !tbaa !9
  %19203 = load i32, ptr %48, align 4, !tbaa !9
  %19204 = icmp ne i32 %19203, 0
  br i1 %19204, label %19205, label %19206

19205:                                            ; preds = %19140
  br label %19052

19206:                                            ; preds = %19140
  %19207 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19207, ptr %48, align 4, !tbaa !9
  %19208 = load ptr, ptr %5, align 8, !tbaa !5
  %19209 = getelementptr inbounds %struct.w2c_hermes, ptr %19208, i32 0, i32 6
  %19210 = load i32, ptr %48, align 4, !tbaa !9
  %19211 = zext i32 %19210 to i64
  %19212 = add i64 %19211, 124
  %19213 = call i32 @i32_load(ptr noundef %19209, i64 noundef %19212)
  store i32 %19213, ptr %48, align 4, !tbaa !9
  %19214 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19214, ptr %12, align 4, !tbaa !9
  %19215 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %19215, ptr %49, align 4, !tbaa !9
  %19216 = load ptr, ptr %5, align 8, !tbaa !5
  %19217 = getelementptr inbounds %struct.w2c_hermes, ptr %19216, i32 0, i32 6
  %19218 = load i32, ptr %49, align 4, !tbaa !9
  %19219 = zext i32 %19218 to i64
  %19220 = call i32 @i32_load(ptr noundef %19217, i64 noundef %19219)
  store i32 %19220, ptr %49, align 4, !tbaa !9
  store i32 356, ptr %50, align 4, !tbaa !9
  store i32 324, ptr %51, align 4, !tbaa !9
  %19221 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19221, ptr %52, align 4, !tbaa !9
  %19222 = load i32, ptr %52, align 4, !tbaa !9
  %19223 = icmp ne i32 %19222, 0
  br i1 %19223, label %19224, label %19226

19224:                                            ; preds = %19206
  %19225 = load i32, ptr %50, align 4, !tbaa !9
  br label %19228

19226:                                            ; preds = %19206
  %19227 = load i32, ptr %51, align 4, !tbaa !9
  br label %19228

19228:                                            ; preds = %19226, %19224
  %19229 = phi i32 [ %19225, %19224 ], [ %19227, %19226 ]
  store i32 %19229, ptr %50, align 4, !tbaa !9
  %19230 = load i32, ptr %50, align 4, !tbaa !9
  %19231 = load i32, ptr %49, align 4, !tbaa !9
  %19232 = add i32 %19231, %19230
  store i32 %19232, ptr %49, align 4, !tbaa !9
  %19233 = load ptr, ptr %5, align 8, !tbaa !5
  %19234 = getelementptr inbounds %struct.w2c_hermes, ptr %19233, i32 0, i32 6
  %19235 = load i32, ptr %48, align 4, !tbaa !9
  %19236 = zext i32 %19235 to i64
  %19237 = add i64 %19236, 4
  %19238 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19234, i64 noundef %19237, i32 noundef %19238)
  %19239 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19239, ptr %48, align 4, !tbaa !9
  %19240 = load i32, ptr %48, align 4, !tbaa !9
  %19241 = icmp ne i32 %19240, 0
  br i1 %19241, label %19242, label %19243

19242:                                            ; preds = %19228
  br label %19501

19243:                                            ; preds = %19228
  %19244 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %19244, ptr %48, align 4, !tbaa !9
  %19245 = load ptr, ptr %5, align 8, !tbaa !5
  %19246 = getelementptr inbounds %struct.w2c_hermes, ptr %19245, i32 0, i32 6
  %19247 = load i32, ptr %48, align 4, !tbaa !9
  %19248 = zext i32 %19247 to i64
  %19249 = add i64 %19248, 32
  %19250 = call i32 @i32_load(ptr noundef %19246, i64 noundef %19249)
  store i32 %19250, ptr %48, align 4, !tbaa !9
  %19251 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19251, ptr %9, align 4, !tbaa !9
  %19252 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %19252, ptr %49, align 4, !tbaa !9
  %19253 = load i32, ptr %48, align 4, !tbaa !9
  %19254 = load i32, ptr %49, align 4, !tbaa !9
  %19255 = icmp eq i32 %19253, %19254
  %19256 = zext i1 %19255 to i32
  store i32 %19256, ptr %48, align 4, !tbaa !9
  %19257 = load i32, ptr %48, align 4, !tbaa !9
  %19258 = icmp ne i32 %19257, 0
  br i1 %19258, label %19259, label %19260

19259:                                            ; preds = %19243
  br label %19501

19260:                                            ; preds = %19243
  br label %19261

19261:                                            ; preds = %19467, %19260
  %19262 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19262, ptr %48, align 4, !tbaa !9
  %19263 = load ptr, ptr %5, align 8, !tbaa !5
  %19264 = getelementptr inbounds %struct.w2c_hermes, ptr %19263, i32 0, i32 6
  %19265 = load i32, ptr %48, align 4, !tbaa !9
  %19266 = zext i32 %19265 to i64
  %19267 = add i64 %19266, 32
  %19268 = call i32 @i32_load(ptr noundef %19264, i64 noundef %19267)
  store i32 %19268, ptr %48, align 4, !tbaa !9
  %19269 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19269, ptr %8, align 4, !tbaa !9
  %19270 = load i32, ptr %48, align 4, !tbaa !9
  %19271 = icmp ne i32 %19270, 0
  br i1 %19271, label %19272, label %19361

19272:                                            ; preds = %19261
  %19273 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19273, ptr %48, align 4, !tbaa !9
  %19274 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19274, ptr %49, align 4, !tbaa !9
  %19275 = load ptr, ptr %5, align 8, !tbaa !5
  %19276 = getelementptr inbounds %struct.w2c_hermes, ptr %19275, i32 0, i32 6
  %19277 = load i32, ptr %49, align 4, !tbaa !9
  %19278 = zext i32 %19277 to i64
  %19279 = call i64 @i64_load(ptr noundef %19276, i64 noundef %19278)
  store i64 %19279, ptr %59, align 8, !tbaa !11
  %19280 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %19280, ptr %31, align 8, !tbaa !11
  %19281 = load ptr, ptr %5, align 8, !tbaa !5
  %19282 = getelementptr inbounds %struct.w2c_hermes, ptr %19281, i32 0, i32 6
  %19283 = load i32, ptr %48, align 4, !tbaa !9
  %19284 = zext i32 %19283 to i64
  %19285 = add i64 %19284, 24
  %19286 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19282, i64 noundef %19285, i64 noundef %19286)
  %19287 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19287, ptr %48, align 4, !tbaa !9
  %19288 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %19288, ptr %59, align 8, !tbaa !11
  %19289 = load ptr, ptr %5, align 8, !tbaa !5
  %19290 = getelementptr inbounds %struct.w2c_hermes, ptr %19289, i32 0, i32 6
  %19291 = load i32, ptr %48, align 4, !tbaa !9
  %19292 = zext i32 %19291 to i64
  %19293 = add i64 %19292, 88
  %19294 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19290, i64 noundef %19293, i64 noundef %19294)
  %19295 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %19295, ptr %48, align 4, !tbaa !9
  %19296 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19296, ptr %49, align 4, !tbaa !9
  store i32 24, ptr %50, align 4, !tbaa !9
  %19297 = load i32, ptr %50, align 4, !tbaa !9
  %19298 = load i32, ptr %49, align 4, !tbaa !9
  %19299 = add i32 %19298, %19297
  store i32 %19299, ptr %49, align 4, !tbaa !9
  %19300 = load ptr, ptr %5, align 8, !tbaa !5
  %19301 = load i32, ptr %48, align 4, !tbaa !9
  %19302 = load i32, ptr %49, align 4, !tbaa !9
  %19303 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %19300, i32 noundef %19301, i32 noundef %19302)
  store i32 %19303, ptr %48, align 4, !tbaa !9
  %19304 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19304, ptr %11, align 4, !tbaa !9
  %19305 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19305, ptr %48, align 4, !tbaa !9
  %19306 = load ptr, ptr %5, align 8, !tbaa !5
  %19307 = getelementptr inbounds %struct.w2c_hermes, ptr %19306, i32 0, i32 6
  %19308 = load i32, ptr %48, align 4, !tbaa !9
  %19309 = zext i32 %19308 to i64
  %19310 = add i64 %19309, 128
  %19311 = call i32 @i32_load(ptr noundef %19307, i64 noundef %19310)
  store i32 %19311, ptr %48, align 4, !tbaa !9
  %19312 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19312, ptr %12, align 4, !tbaa !9
  %19313 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19313, ptr %49, align 4, !tbaa !9
  %19314 = load ptr, ptr %5, align 8, !tbaa !5
  %19315 = getelementptr inbounds %struct.w2c_hermes, ptr %19314, i32 0, i32 6
  %19316 = load i32, ptr %49, align 4, !tbaa !9
  %19317 = zext i32 %19316 to i64
  %19318 = add i64 %19317, 132
  %19319 = call i32 @i32_load(ptr noundef %19315, i64 noundef %19318)
  store i32 %19319, ptr %49, align 4, !tbaa !9
  %19320 = load i32, ptr %48, align 4, !tbaa !9
  %19321 = load i32, ptr %49, align 4, !tbaa !9
  %19322 = icmp uge i32 %19320, %19321
  %19323 = zext i1 %19322 to i32
  store i32 %19323, ptr %48, align 4, !tbaa !9
  %19324 = load i32, ptr %48, align 4, !tbaa !9
  %19325 = icmp ne i32 %19324, 0
  br i1 %19325, label %19326, label %19345

19326:                                            ; preds = %19272
  %19327 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19327, ptr %48, align 4, !tbaa !9
  store i32 124, ptr %49, align 4, !tbaa !9
  %19328 = load i32, ptr %49, align 4, !tbaa !9
  %19329 = load i32, ptr %48, align 4, !tbaa !9
  %19330 = add i32 %19329, %19328
  store i32 %19330, ptr %48, align 4, !tbaa !9
  %19331 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %19331, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %19332 = load ptr, ptr %5, align 8, !tbaa !5
  %19333 = load i32, ptr %48, align 4, !tbaa !9
  %19334 = load i32, ptr %49, align 4, !tbaa !9
  %19335 = load i32, ptr %50, align 4, !tbaa !9
  %19336 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %19332, i32 noundef %19333, i32 noundef %19334, i32 noundef %19335, i32 noundef %19336)
  %19337 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19337, ptr %48, align 4, !tbaa !9
  %19338 = load ptr, ptr %5, align 8, !tbaa !5
  %19339 = getelementptr inbounds %struct.w2c_hermes, ptr %19338, i32 0, i32 6
  %19340 = load i32, ptr %48, align 4, !tbaa !9
  %19341 = zext i32 %19340 to i64
  %19342 = add i64 %19341, 128
  %19343 = call i32 @i32_load(ptr noundef %19339, i64 noundef %19342)
  store i32 %19343, ptr %48, align 4, !tbaa !9
  %19344 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19344, ptr %12, align 4, !tbaa !9
  br label %19345

19345:                                            ; preds = %19326, %19272
  %19346 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19346, ptr %48, align 4, !tbaa !9
  %19347 = load ptr, ptr %5, align 8, !tbaa !5
  %19348 = getelementptr inbounds %struct.w2c_hermes, ptr %19347, i32 0, i32 6
  %19349 = load i32, ptr %48, align 4, !tbaa !9
  %19350 = zext i32 %19349 to i64
  %19351 = add i64 %19350, 124
  %19352 = call i32 @i32_load(ptr noundef %19348, i64 noundef %19351)
  store i32 %19352, ptr %48, align 4, !tbaa !9
  %19353 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %19353, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %19354 = load i32, ptr %50, align 4, !tbaa !9
  %19355 = and i32 %19354, 31
  %19356 = load i32, ptr %49, align 4, !tbaa !9
  %19357 = shl i32 %19356, %19355
  store i32 %19357, ptr %49, align 4, !tbaa !9
  %19358 = load i32, ptr %49, align 4, !tbaa !9
  %19359 = load i32, ptr %48, align 4, !tbaa !9
  %19360 = add i32 %19359, %19358
  store i32 %19360, ptr %48, align 4, !tbaa !9
  br label %19428

19361:                                            ; preds = %19261
  %19362 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %19362, ptr %48, align 4, !tbaa !9
  %19363 = load ptr, ptr %5, align 8, !tbaa !5
  %19364 = getelementptr inbounds %struct.w2c_hermes, ptr %19363, i32 0, i32 6
  %19365 = load i32, ptr %48, align 4, !tbaa !9
  %19366 = zext i32 %19365 to i64
  %19367 = call i32 @i32_load(ptr noundef %19364, i64 noundef %19366)
  store i32 %19367, ptr %48, align 4, !tbaa !9
  store i32 268, ptr %49, align 4, !tbaa !9
  %19368 = load i32, ptr %49, align 4, !tbaa !9
  %19369 = load i32, ptr %48, align 4, !tbaa !9
  %19370 = add i32 %19369, %19368
  store i32 %19370, ptr %48, align 4, !tbaa !9
  %19371 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19371, ptr %11, align 4, !tbaa !9
  %19372 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19372, ptr %48, align 4, !tbaa !9
  %19373 = load ptr, ptr %5, align 8, !tbaa !5
  %19374 = getelementptr inbounds %struct.w2c_hermes, ptr %19373, i32 0, i32 6
  %19375 = load i32, ptr %48, align 4, !tbaa !9
  %19376 = zext i32 %19375 to i64
  %19377 = add i64 %19376, 128
  %19378 = call i32 @i32_load(ptr noundef %19374, i64 noundef %19377)
  store i32 %19378, ptr %48, align 4, !tbaa !9
  %19379 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19379, ptr %12, align 4, !tbaa !9
  %19380 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19380, ptr %49, align 4, !tbaa !9
  %19381 = load ptr, ptr %5, align 8, !tbaa !5
  %19382 = getelementptr inbounds %struct.w2c_hermes, ptr %19381, i32 0, i32 6
  %19383 = load i32, ptr %49, align 4, !tbaa !9
  %19384 = zext i32 %19383 to i64
  %19385 = add i64 %19384, 132
  %19386 = call i32 @i32_load(ptr noundef %19382, i64 noundef %19385)
  store i32 %19386, ptr %49, align 4, !tbaa !9
  %19387 = load i32, ptr %48, align 4, !tbaa !9
  %19388 = load i32, ptr %49, align 4, !tbaa !9
  %19389 = icmp uge i32 %19387, %19388
  %19390 = zext i1 %19389 to i32
  store i32 %19390, ptr %48, align 4, !tbaa !9
  %19391 = load i32, ptr %48, align 4, !tbaa !9
  %19392 = icmp ne i32 %19391, 0
  br i1 %19392, label %19393, label %19412

19393:                                            ; preds = %19361
  %19394 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19394, ptr %48, align 4, !tbaa !9
  store i32 124, ptr %49, align 4, !tbaa !9
  %19395 = load i32, ptr %49, align 4, !tbaa !9
  %19396 = load i32, ptr %48, align 4, !tbaa !9
  %19397 = add i32 %19396, %19395
  store i32 %19397, ptr %48, align 4, !tbaa !9
  %19398 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %19398, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %19399 = load ptr, ptr %5, align 8, !tbaa !5
  %19400 = load i32, ptr %48, align 4, !tbaa !9
  %19401 = load i32, ptr %49, align 4, !tbaa !9
  %19402 = load i32, ptr %50, align 4, !tbaa !9
  %19403 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %19399, i32 noundef %19400, i32 noundef %19401, i32 noundef %19402, i32 noundef %19403)
  %19404 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19404, ptr %48, align 4, !tbaa !9
  %19405 = load ptr, ptr %5, align 8, !tbaa !5
  %19406 = getelementptr inbounds %struct.w2c_hermes, ptr %19405, i32 0, i32 6
  %19407 = load i32, ptr %48, align 4, !tbaa !9
  %19408 = zext i32 %19407 to i64
  %19409 = add i64 %19408, 128
  %19410 = call i32 @i32_load(ptr noundef %19406, i64 noundef %19409)
  store i32 %19410, ptr %48, align 4, !tbaa !9
  %19411 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19411, ptr %12, align 4, !tbaa !9
  br label %19412

19412:                                            ; preds = %19393, %19361
  %19413 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19413, ptr %48, align 4, !tbaa !9
  %19414 = load ptr, ptr %5, align 8, !tbaa !5
  %19415 = getelementptr inbounds %struct.w2c_hermes, ptr %19414, i32 0, i32 6
  %19416 = load i32, ptr %48, align 4, !tbaa !9
  %19417 = zext i32 %19416 to i64
  %19418 = add i64 %19417, 124
  %19419 = call i32 @i32_load(ptr noundef %19415, i64 noundef %19418)
  store i32 %19419, ptr %48, align 4, !tbaa !9
  %19420 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %19420, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %19421 = load i32, ptr %50, align 4, !tbaa !9
  %19422 = and i32 %19421, 31
  %19423 = load i32, ptr %49, align 4, !tbaa !9
  %19424 = shl i32 %19423, %19422
  store i32 %19424, ptr %49, align 4, !tbaa !9
  %19425 = load i32, ptr %49, align 4, !tbaa !9
  %19426 = load i32, ptr %48, align 4, !tbaa !9
  %19427 = add i32 %19426, %19425
  store i32 %19427, ptr %48, align 4, !tbaa !9
  br label %19428

19428:                                            ; preds = %19412, %19345
  %19429 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19429, ptr %49, align 4, !tbaa !9
  %19430 = load ptr, ptr %5, align 8, !tbaa !5
  %19431 = getelementptr inbounds %struct.w2c_hermes, ptr %19430, i32 0, i32 6
  %19432 = load i32, ptr %48, align 4, !tbaa !9
  %19433 = zext i32 %19432 to i64
  %19434 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19431, i64 noundef %19433, i32 noundef %19434)
  %19435 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19435, ptr %48, align 4, !tbaa !9
  %19436 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19436, ptr %49, align 4, !tbaa !9
  %19437 = load ptr, ptr %5, align 8, !tbaa !5
  %19438 = getelementptr inbounds %struct.w2c_hermes, ptr %19437, i32 0, i32 6
  %19439 = load i32, ptr %49, align 4, !tbaa !9
  %19440 = zext i32 %19439 to i64
  %19441 = add i64 %19440, 128
  %19442 = call i32 @i32_load(ptr noundef %19438, i64 noundef %19441)
  store i32 %19442, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %19443 = load i32, ptr %50, align 4, !tbaa !9
  %19444 = load i32, ptr %49, align 4, !tbaa !9
  %19445 = add i32 %19444, %19443
  store i32 %19445, ptr %49, align 4, !tbaa !9
  %19446 = load ptr, ptr %5, align 8, !tbaa !5
  %19447 = getelementptr inbounds %struct.w2c_hermes, ptr %19446, i32 0, i32 6
  %19448 = load i32, ptr %48, align 4, !tbaa !9
  %19449 = zext i32 %19448 to i64
  %19450 = add i64 %19449, 128
  %19451 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19447, i64 noundef %19450, i32 noundef %19451)
  %19452 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19452, ptr %48, align 4, !tbaa !9
  %19453 = load ptr, ptr %5, align 8, !tbaa !5
  %19454 = getelementptr inbounds %struct.w2c_hermes, ptr %19453, i32 0, i32 6
  %19455 = load i32, ptr %48, align 4, !tbaa !9
  %19456 = zext i32 %19455 to i64
  %19457 = add i64 %19456, 4
  %19458 = call i32 @i32_load(ptr noundef %19454, i64 noundef %19457)
  store i32 %19458, ptr %48, align 4, !tbaa !9
  %19459 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19459, ptr %9, align 4, !tbaa !9
  %19460 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %19460, ptr %49, align 4, !tbaa !9
  %19461 = load i32, ptr %48, align 4, !tbaa !9
  %19462 = load i32, ptr %49, align 4, !tbaa !9
  %19463 = icmp ne i32 %19461, %19462
  %19464 = zext i1 %19463 to i32
  store i32 %19464, ptr %48, align 4, !tbaa !9
  %19465 = load i32, ptr %48, align 4, !tbaa !9
  %19466 = icmp ne i32 %19465, 0
  br i1 %19466, label %19467, label %19468

19467:                                            ; preds = %19428
  br label %19261

19468:                                            ; preds = %19428
  %19469 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19469, ptr %48, align 4, !tbaa !9
  %19470 = load ptr, ptr %5, align 8, !tbaa !5
  %19471 = getelementptr inbounds %struct.w2c_hermes, ptr %19470, i32 0, i32 6
  %19472 = load i32, ptr %48, align 4, !tbaa !9
  %19473 = zext i32 %19472 to i64
  %19474 = add i64 %19473, 124
  %19475 = call i32 @i32_load(ptr noundef %19471, i64 noundef %19474)
  store i32 %19475, ptr %48, align 4, !tbaa !9
  %19476 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19476, ptr %12, align 4, !tbaa !9
  br label %19501

19477:                                            ; preds = %18997
  %19478 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19478, ptr %48, align 4, !tbaa !9
  %19479 = load ptr, ptr %5, align 8, !tbaa !5
  %19480 = getelementptr inbounds %struct.w2c_hermes, ptr %19479, i32 0, i32 6
  %19481 = load i32, ptr %48, align 4, !tbaa !9
  %19482 = zext i32 %19481 to i64
  %19483 = add i64 %19482, 124
  %19484 = call i32 @i32_load(ptr noundef %19480, i64 noundef %19483)
  store i32 %19484, ptr %48, align 4, !tbaa !9
  %19485 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19485, ptr %12, align 4, !tbaa !9
  %19486 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %19486, ptr %49, align 4, !tbaa !9
  %19487 = load ptr, ptr %5, align 8, !tbaa !5
  %19488 = getelementptr inbounds %struct.w2c_hermes, ptr %19487, i32 0, i32 6
  %19489 = load i32, ptr %49, align 4, !tbaa !9
  %19490 = zext i32 %19489 to i64
  %19491 = call i32 @i32_load(ptr noundef %19488, i64 noundef %19490)
  store i32 %19491, ptr %49, align 4, !tbaa !9
  store i32 356, ptr %50, align 4, !tbaa !9
  %19492 = load i32, ptr %50, align 4, !tbaa !9
  %19493 = load i32, ptr %49, align 4, !tbaa !9
  %19494 = add i32 %19493, %19492
  store i32 %19494, ptr %49, align 4, !tbaa !9
  %19495 = load ptr, ptr %5, align 8, !tbaa !5
  %19496 = getelementptr inbounds %struct.w2c_hermes, ptr %19495, i32 0, i32 6
  %19497 = load i32, ptr %48, align 4, !tbaa !9
  %19498 = zext i32 %19497 to i64
  %19499 = add i64 %19498, 4
  %19500 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19496, i64 noundef %19499, i32 noundef %19500)
  br label %19501

19501:                                            ; preds = %19477, %19468, %19259, %19242
  %19502 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19502, ptr %48, align 4, !tbaa !9
  %19503 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %19503, ptr %49, align 4, !tbaa !9
  %19504 = load ptr, ptr %5, align 8, !tbaa !5
  %19505 = getelementptr inbounds %struct.w2c_hermes, ptr %19504, i32 0, i32 6
  %19506 = load i32, ptr %48, align 4, !tbaa !9
  %19507 = zext i32 %19506 to i64
  %19508 = add i64 %19507, 80
  %19509 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19505, i64 noundef %19508, i32 noundef %19509)
  %19510 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19510, ptr %48, align 4, !tbaa !9
  %19511 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19511, ptr %49, align 4, !tbaa !9
  %19512 = load ptr, ptr %5, align 8, !tbaa !5
  %19513 = getelementptr inbounds %struct.w2c_hermes, ptr %19512, i32 0, i32 6
  %19514 = load i32, ptr %49, align 4, !tbaa !9
  %19515 = zext i32 %19514 to i64
  %19516 = add i64 %19515, 128
  %19517 = call i32 @i32_load(ptr noundef %19513, i64 noundef %19516)
  store i32 %19517, ptr %49, align 4, !tbaa !9
  %19518 = load ptr, ptr %5, align 8, !tbaa !5
  %19519 = getelementptr inbounds %struct.w2c_hermes, ptr %19518, i32 0, i32 6
  %19520 = load i32, ptr %48, align 4, !tbaa !9
  %19521 = zext i32 %19520 to i64
  %19522 = add i64 %19521, 84
  %19523 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19519, i64 noundef %19522, i32 noundef %19523)
  %19524 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19524, ptr %48, align 4, !tbaa !9
  %19525 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19525, ptr %49, align 4, !tbaa !9
  %19526 = load ptr, ptr %5, align 8, !tbaa !5
  %19527 = getelementptr inbounds %struct.w2c_hermes, ptr %19526, i32 0, i32 6
  %19528 = load i32, ptr %49, align 4, !tbaa !9
  %19529 = zext i32 %19528 to i64
  %19530 = add i64 %19529, 80
  %19531 = call i64 @i64_load(ptr noundef %19527, i64 noundef %19530)
  store i64 %19531, ptr %59, align 8, !tbaa !11
  %19532 = load ptr, ptr %5, align 8, !tbaa !5
  %19533 = getelementptr inbounds %struct.w2c_hermes, ptr %19532, i32 0, i32 6
  %19534 = load i32, ptr %48, align 4, !tbaa !9
  %19535 = zext i32 %19534 to i64
  %19536 = add i64 %19535, 16
  %19537 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19533, i64 noundef %19536, i64 noundef %19537)
  %19538 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19538, ptr %48, align 4, !tbaa !9
  %19539 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19539, ptr %49, align 4, !tbaa !9
  store i32 39, ptr %50, align 4, !tbaa !9
  %19540 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19540, ptr %51, align 4, !tbaa !9
  store i32 16, ptr %52, align 4, !tbaa !9
  %19541 = load i32, ptr %52, align 4, !tbaa !9
  %19542 = load i32, ptr %51, align 4, !tbaa !9
  %19543 = add i32 %19542, %19541
  store i32 %19543, ptr %51, align 4, !tbaa !9
  %19544 = load ptr, ptr %5, align 8, !tbaa !5
  %19545 = load i32, ptr %49, align 4, !tbaa !9
  %19546 = load i32, ptr %50, align 4, !tbaa !9
  %19547 = load i32, ptr %51, align 4, !tbaa !9
  %19548 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %19544, i32 noundef %19545, i32 noundef %19546, i32 noundef %19547)
  store i32 %19548, ptr %49, align 4, !tbaa !9
  %19549 = load ptr, ptr %5, align 8, !tbaa !5
  %19550 = getelementptr inbounds %struct.w2c_hermes, ptr %19549, i32 0, i32 6
  %19551 = load i32, ptr %48, align 4, !tbaa !9
  %19552 = zext i32 %19551 to i64
  %19553 = add i64 %19552, 72
  %19554 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19550, i64 noundef %19553, i32 noundef %19554)
  %19555 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19555, ptr %48, align 4, !tbaa !9
  %19556 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19556, ptr %49, align 4, !tbaa !9
  store i32 72, ptr %50, align 4, !tbaa !9
  %19557 = load i32, ptr %50, align 4, !tbaa !9
  %19558 = load i32, ptr %49, align 4, !tbaa !9
  %19559 = add i32 %19558, %19557
  store i32 %19559, ptr %49, align 4, !tbaa !9
  %19560 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %19560, ptr %10, align 4, !tbaa !9
  %19561 = load ptr, ptr %5, align 8, !tbaa !5
  %19562 = getelementptr inbounds %struct.w2c_hermes, ptr %19561, i32 0, i32 6
  %19563 = load i32, ptr %48, align 4, !tbaa !9
  %19564 = zext i32 %19563 to i64
  %19565 = add i64 %19564, 60
  %19566 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19562, i64 noundef %19565, i32 noundef %19566)
  %19567 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19567, ptr %48, align 4, !tbaa !9
  store i64 8589934593, ptr %59, align 8, !tbaa !11
  %19568 = load ptr, ptr %5, align 8, !tbaa !5
  %19569 = getelementptr inbounds %struct.w2c_hermes, ptr %19568, i32 0, i32 6
  %19570 = load i32, ptr %48, align 4, !tbaa !9
  %19571 = zext i32 %19570 to i64
  %19572 = add i64 %19571, 64
  %19573 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19569, i64 noundef %19572, i64 noundef %19573)
  %19574 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %19574, ptr %48, align 4, !tbaa !9
  %19575 = load ptr, ptr %5, align 8, !tbaa !5
  %19576 = getelementptr inbounds %struct.w2c_hermes, ptr %19575, i32 0, i32 6
  %19577 = load i32, ptr %48, align 4, !tbaa !9
  %19578 = zext i32 %19577 to i64
  %19579 = add i64 %19578, 40
  %19580 = call i32 @i32_load(ptr noundef %19576, i64 noundef %19579)
  store i32 %19580, ptr %48, align 4, !tbaa !9
  %19581 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19581, ptr %9, align 4, !tbaa !9
  %19582 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %19582, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %19583 = load i32, ptr %50, align 4, !tbaa !9
  %19584 = load i32, ptr %49, align 4, !tbaa !9
  %19585 = add i32 %19584, %19583
  store i32 %19585, ptr %49, align 4, !tbaa !9
  %19586 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %19586, ptr %8, align 4, !tbaa !9
  %19587 = load i32, ptr %48, align 4, !tbaa !9
  %19588 = load i32, ptr %49, align 4, !tbaa !9
  %19589 = icmp ne i32 %19587, %19588
  %19590 = zext i1 %19589 to i32
  store i32 %19590, ptr %48, align 4, !tbaa !9
  %19591 = load i32, ptr %48, align 4, !tbaa !9
  %19592 = icmp ne i32 %19591, 0
  br i1 %19592, label %19593, label %19699

19593:                                            ; preds = %19501
  br label %19594

19594:                                            ; preds = %19697, %19593
  %19595 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19595, ptr %48, align 4, !tbaa !9
  %19596 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19596, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %19597 = load ptr, ptr %5, align 8, !tbaa !5
  %19598 = load i32, ptr %48, align 4, !tbaa !9
  %19599 = load i32, ptr %49, align 4, !tbaa !9
  %19600 = load i32, ptr %50, align 4, !tbaa !9
  %19601 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %19597, i32 noundef %19598, i32 noundef %19599, i32 noundef %19600)
  store i32 %19601, ptr %48, align 4, !tbaa !9
  %19602 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19602, ptr %12, align 4, !tbaa !9
  %19603 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19603, ptr %48, align 4, !tbaa !9
  %19604 = load ptr, ptr %5, align 8, !tbaa !5
  %19605 = getelementptr inbounds %struct.w2c_hermes, ptr %19604, i32 0, i32 6
  %19606 = load i32, ptr %48, align 4, !tbaa !9
  %19607 = zext i32 %19606 to i64
  %19608 = add i64 %19607, 64
  %19609 = call i32 @i32_load(ptr noundef %19605, i64 noundef %19608)
  store i32 %19609, ptr %48, align 4, !tbaa !9
  %19610 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19610, ptr %11, align 4, !tbaa !9
  %19611 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19611, ptr %49, align 4, !tbaa !9
  %19612 = load ptr, ptr %5, align 8, !tbaa !5
  %19613 = getelementptr inbounds %struct.w2c_hermes, ptr %19612, i32 0, i32 6
  %19614 = load i32, ptr %49, align 4, !tbaa !9
  %19615 = zext i32 %19614 to i64
  %19616 = add i64 %19615, 68
  %19617 = call i32 @i32_load(ptr noundef %19613, i64 noundef %19616)
  store i32 %19617, ptr %49, align 4, !tbaa !9
  %19618 = load i32, ptr %48, align 4, !tbaa !9
  %19619 = load i32, ptr %49, align 4, !tbaa !9
  %19620 = icmp uge i32 %19618, %19619
  %19621 = zext i1 %19620 to i32
  store i32 %19621, ptr %48, align 4, !tbaa !9
  %19622 = load i32, ptr %48, align 4, !tbaa !9
  %19623 = icmp ne i32 %19622, 0
  br i1 %19623, label %19624, label %19643

19624:                                            ; preds = %19594
  %19625 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19625, ptr %48, align 4, !tbaa !9
  store i32 60, ptr %49, align 4, !tbaa !9
  %19626 = load i32, ptr %49, align 4, !tbaa !9
  %19627 = load i32, ptr %48, align 4, !tbaa !9
  %19628 = add i32 %19627, %19626
  store i32 %19628, ptr %48, align 4, !tbaa !9
  %19629 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19629, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %19630 = load ptr, ptr %5, align 8, !tbaa !5
  %19631 = load i32, ptr %48, align 4, !tbaa !9
  %19632 = load i32, ptr %49, align 4, !tbaa !9
  %19633 = load i32, ptr %50, align 4, !tbaa !9
  %19634 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %19630, i32 noundef %19631, i32 noundef %19632, i32 noundef %19633, i32 noundef %19634)
  %19635 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19635, ptr %48, align 4, !tbaa !9
  %19636 = load ptr, ptr %5, align 8, !tbaa !5
  %19637 = getelementptr inbounds %struct.w2c_hermes, ptr %19636, i32 0, i32 6
  %19638 = load i32, ptr %48, align 4, !tbaa !9
  %19639 = zext i32 %19638 to i64
  %19640 = add i64 %19639, 64
  %19641 = call i32 @i32_load(ptr noundef %19637, i64 noundef %19640)
  store i32 %19641, ptr %48, align 4, !tbaa !9
  %19642 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19642, ptr %11, align 4, !tbaa !9
  br label %19643

19643:                                            ; preds = %19624, %19594
  %19644 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19644, ptr %48, align 4, !tbaa !9
  %19645 = load ptr, ptr %5, align 8, !tbaa !5
  %19646 = getelementptr inbounds %struct.w2c_hermes, ptr %19645, i32 0, i32 6
  %19647 = load i32, ptr %48, align 4, !tbaa !9
  %19648 = zext i32 %19647 to i64
  %19649 = add i64 %19648, 60
  %19650 = call i32 @i32_load(ptr noundef %19646, i64 noundef %19649)
  store i32 %19650, ptr %48, align 4, !tbaa !9
  %19651 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19651, ptr %49, align 4, !tbaa !9
  store i32 2, ptr %50, align 4, !tbaa !9
  %19652 = load i32, ptr %50, align 4, !tbaa !9
  %19653 = and i32 %19652, 31
  %19654 = load i32, ptr %49, align 4, !tbaa !9
  %19655 = shl i32 %19654, %19653
  store i32 %19655, ptr %49, align 4, !tbaa !9
  %19656 = load i32, ptr %49, align 4, !tbaa !9
  %19657 = load i32, ptr %48, align 4, !tbaa !9
  %19658 = add i32 %19657, %19656
  store i32 %19658, ptr %48, align 4, !tbaa !9
  %19659 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %19659, ptr %49, align 4, !tbaa !9
  %19660 = load ptr, ptr %5, align 8, !tbaa !5
  %19661 = getelementptr inbounds %struct.w2c_hermes, ptr %19660, i32 0, i32 6
  %19662 = load i32, ptr %48, align 4, !tbaa !9
  %19663 = zext i32 %19662 to i64
  %19664 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19661, i64 noundef %19663, i32 noundef %19664)
  %19665 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19665, ptr %48, align 4, !tbaa !9
  %19666 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19666, ptr %49, align 4, !tbaa !9
  %19667 = load ptr, ptr %5, align 8, !tbaa !5
  %19668 = getelementptr inbounds %struct.w2c_hermes, ptr %19667, i32 0, i32 6
  %19669 = load i32, ptr %49, align 4, !tbaa !9
  %19670 = zext i32 %19669 to i64
  %19671 = add i64 %19670, 64
  %19672 = call i32 @i32_load(ptr noundef %19668, i64 noundef %19671)
  store i32 %19672, ptr %49, align 4, !tbaa !9
  store i32 1, ptr %50, align 4, !tbaa !9
  %19673 = load i32, ptr %50, align 4, !tbaa !9
  %19674 = load i32, ptr %49, align 4, !tbaa !9
  %19675 = add i32 %19674, %19673
  store i32 %19675, ptr %49, align 4, !tbaa !9
  %19676 = load ptr, ptr %5, align 8, !tbaa !5
  %19677 = getelementptr inbounds %struct.w2c_hermes, ptr %19676, i32 0, i32 6
  %19678 = load i32, ptr %48, align 4, !tbaa !9
  %19679 = zext i32 %19678 to i64
  %19680 = add i64 %19679, 64
  %19681 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19677, i64 noundef %19680, i32 noundef %19681)
  %19682 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19682, ptr %48, align 4, !tbaa !9
  %19683 = load ptr, ptr %5, align 8, !tbaa !5
  %19684 = getelementptr inbounds %struct.w2c_hermes, ptr %19683, i32 0, i32 6
  %19685 = load i32, ptr %48, align 4, !tbaa !9
  %19686 = zext i32 %19685 to i64
  %19687 = add i64 %19686, 4
  %19688 = call i32 @i32_load(ptr noundef %19684, i64 noundef %19687)
  store i32 %19688, ptr %48, align 4, !tbaa !9
  %19689 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19689, ptr %9, align 4, !tbaa !9
  %19690 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19690, ptr %49, align 4, !tbaa !9
  %19691 = load i32, ptr %48, align 4, !tbaa !9
  %19692 = load i32, ptr %49, align 4, !tbaa !9
  %19693 = icmp ne i32 %19691, %19692
  %19694 = zext i1 %19693 to i32
  store i32 %19694, ptr %48, align 4, !tbaa !9
  %19695 = load i32, ptr %48, align 4, !tbaa !9
  %19696 = icmp ne i32 %19695, 0
  br i1 %19696, label %19697, label %19698

19697:                                            ; preds = %19643
  br label %19594

19698:                                            ; preds = %19643
  br label %19699

19699:                                            ; preds = %19698, %19501
  %19700 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19700, ptr %48, align 4, !tbaa !9
  %19701 = load ptr, ptr %5, align 8, !tbaa !5
  %19702 = getelementptr inbounds %struct.w2c_hermes, ptr %19701, i32 0, i32 6
  %19703 = load i32, ptr %48, align 4, !tbaa !9
  %19704 = zext i32 %19703 to i64
  %19705 = add i64 %19704, 28
  %19706 = call i32 @i32_load(ptr noundef %19702, i64 noundef %19705)
  store i32 %19706, ptr %48, align 4, !tbaa !9
  %19707 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19707, ptr %8, align 4, !tbaa !9
  %19708 = load i32, ptr %48, align 4, !tbaa !9
  %19709 = icmp ne i32 %19708, 0
  %19710 = xor i1 %19709, true
  %19711 = zext i1 %19710 to i32
  store i32 %19711, ptr %48, align 4, !tbaa !9
  %19712 = load i32, ptr %48, align 4, !tbaa !9
  %19713 = icmp ne i32 %19712, 0
  br i1 %19713, label %19714, label %19715

19714:                                            ; preds = %19699
  br label %19770

19715:                                            ; preds = %19699
  %19716 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19716, ptr %48, align 4, !tbaa !9
  %19717 = load ptr, ptr %5, align 8, !tbaa !5
  %19718 = getelementptr inbounds %struct.w2c_hermes, ptr %19717, i32 0, i32 6
  %19719 = load i32, ptr %48, align 4, !tbaa !9
  %19720 = zext i32 %19719 to i64
  %19721 = add i64 %19720, 8
  %19722 = call i32 @i32_load(ptr noundef %19718, i64 noundef %19721)
  store i32 %19722, ptr %48, align 4, !tbaa !9
  store i32 54, ptr %49, align 4, !tbaa !9
  %19723 = load i32, ptr %48, align 4, !tbaa !9
  %19724 = load i32, ptr %49, align 4, !tbaa !9
  %19725 = icmp ne i32 %19723, %19724
  %19726 = zext i1 %19725 to i32
  store i32 %19726, ptr %48, align 4, !tbaa !9
  %19727 = load i32, ptr %48, align 4, !tbaa !9
  %19728 = icmp ne i32 %19727, 0
  br i1 %19728, label %19729, label %19730

19729:                                            ; preds = %19715
  br label %19770

19730:                                            ; preds = %19715
  %19731 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %19731, ptr %48, align 4, !tbaa !9
  %19732 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19732, ptr %49, align 4, !tbaa !9
  %19733 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19733, ptr %50, align 4, !tbaa !9
  %19734 = load ptr, ptr %5, align 8, !tbaa !5
  %19735 = getelementptr inbounds %struct.w2c_hermes, ptr %19734, i32 0, i32 6
  %19736 = load i32, ptr %50, align 4, !tbaa !9
  %19737 = zext i32 %19736 to i64
  %19738 = add i64 %19737, 28
  %19739 = call i32 @i32_load(ptr noundef %19735, i64 noundef %19738)
  store i32 %19739, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %19740 = load ptr, ptr %5, align 8, !tbaa !5
  %19741 = load i32, ptr %49, align 4, !tbaa !9
  %19742 = load i32, ptr %50, align 4, !tbaa !9
  %19743 = load i32, ptr %51, align 4, !tbaa !9
  %19744 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %19740, i32 noundef %19741, i32 noundef %19742, i32 noundef %19743)
  store i32 %19744, ptr %49, align 4, !tbaa !9
  %19745 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %19745, ptr %11, align 4, !tbaa !9
  %19746 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19746, ptr %50, align 4, !tbaa !9
  %19747 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19747, ptr %51, align 4, !tbaa !9
  %19748 = load ptr, ptr %5, align 8, !tbaa !5
  %19749 = load i32, ptr %50, align 4, !tbaa !9
  %19750 = load i32, ptr %51, align 4, !tbaa !9
  %19751 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenMemberExpressionProperty0x28hermes0x3A0x3AESTree0x3A0x3AMemberExpressionLikeNode0x2A0x29(ptr noundef %19748, i32 noundef %19749, i32 noundef %19750)
  store i32 %19751, ptr %50, align 4, !tbaa !9
  %19752 = load ptr, ptr %5, align 8, !tbaa !5
  %19753 = load i32, ptr %48, align 4, !tbaa !9
  %19754 = load i32, ptr %49, align 4, !tbaa !9
  %19755 = load i32, ptr %50, align 4, !tbaa !9
  %19756 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %19752, i32 noundef %19753, i32 noundef %19754, i32 noundef %19755)
  store i32 %19756, ptr %48, align 4, !tbaa !9
  %19757 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19757, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %19758 = load i32, ptr %49, align 4, !tbaa !9
  %19759 = load i32, ptr %48, align 4, !tbaa !9
  %19760 = add i32 %19759, %19758
  store i32 %19760, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %19761 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19761, ptr %50, align 4, !tbaa !9
  %19762 = load i32, ptr %50, align 4, !tbaa !9
  %19763 = icmp ne i32 %19762, 0
  br i1 %19763, label %19764, label %19766

19764:                                            ; preds = %19730
  %19765 = load i32, ptr %48, align 4, !tbaa !9
  br label %19768

19766:                                            ; preds = %19730
  %19767 = load i32, ptr %49, align 4, !tbaa !9
  br label %19768

19768:                                            ; preds = %19766, %19764
  %19769 = phi i32 [ %19765, %19764 ], [ %19767, %19766 ]
  store i32 %19769, ptr %48, align 4, !tbaa !9
  br label %19794

19770:                                            ; preds = %19729, %19714
  %19771 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %19771, ptr %48, align 4, !tbaa !9
  %19772 = load ptr, ptr %5, align 8, !tbaa !5
  %19773 = getelementptr inbounds %struct.w2c_hermes, ptr %19772, i32 0, i32 6
  %19774 = load i32, ptr %48, align 4, !tbaa !9
  %19775 = zext i32 %19774 to i64
  %19776 = call i32 @i32_load(ptr noundef %19773, i64 noundef %19775)
  store i32 %19776, ptr %48, align 4, !tbaa !9
  store i32 268, ptr %49, align 4, !tbaa !9
  %19777 = load i32, ptr %49, align 4, !tbaa !9
  %19778 = load i32, ptr %48, align 4, !tbaa !9
  %19779 = add i32 %19778, %19777
  store i32 %19779, ptr %48, align 4, !tbaa !9
  %19780 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19780, ptr %11, align 4, !tbaa !9
  %19781 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19781, ptr %48, align 4, !tbaa !9
  %19782 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19782, ptr %49, align 4, !tbaa !9
  %19783 = load ptr, ptr %5, align 8, !tbaa !5
  %19784 = getelementptr inbounds %struct.w2c_hermes, ptr %19783, i32 0, i32 6
  %19785 = load i32, ptr %49, align 4, !tbaa !9
  %19786 = zext i32 %19785 to i64
  %19787 = add i64 %19786, 28
  %19788 = call i32 @i32_load(ptr noundef %19784, i64 noundef %19787)
  store i32 %19788, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %19789 = load ptr, ptr %5, align 8, !tbaa !5
  %19790 = load i32, ptr %48, align 4, !tbaa !9
  %19791 = load i32, ptr %49, align 4, !tbaa !9
  %19792 = load i32, ptr %50, align 4, !tbaa !9
  %19793 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %19789, i32 noundef %19790, i32 noundef %19791, i32 noundef %19792)
  store i32 %19793, ptr %48, align 4, !tbaa !9
  br label %19794

19794:                                            ; preds = %19770, %19768
  %19795 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19795, ptr %7, align 4, !tbaa !9
  %19796 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19796, ptr %48, align 4, !tbaa !9
  %19797 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19797, ptr %49, align 4, !tbaa !9
  %19798 = load ptr, ptr %5, align 8, !tbaa !5
  %19799 = getelementptr inbounds %struct.w2c_hermes, ptr %19798, i32 0, i32 6
  %19800 = load i32, ptr %49, align 4, !tbaa !9
  %19801 = zext i32 %19800 to i64
  %19802 = add i64 %19801, 60
  %19803 = call i64 @i64_load(ptr noundef %19799, i64 noundef %19802)
  store i64 %19803, ptr %59, align 8, !tbaa !11
  %19804 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %19804, ptr %31, align 8, !tbaa !11
  %19805 = load ptr, ptr %5, align 8, !tbaa !5
  %19806 = getelementptr inbounds %struct.w2c_hermes, ptr %19805, i32 0, i32 6
  %19807 = load i32, ptr %48, align 4, !tbaa !9
  %19808 = zext i32 %19807 to i64
  %19809 = add i64 %19808, 52
  %19810 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19806, i64 noundef %19809, i64 noundef %19810)
  %19811 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19811, ptr %48, align 4, !tbaa !9
  %19812 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %19812, ptr %59, align 8, !tbaa !11
  %19813 = load ptr, ptr %5, align 8, !tbaa !5
  %19814 = getelementptr inbounds %struct.w2c_hermes, ptr %19813, i32 0, i32 6
  %19815 = load i32, ptr %48, align 4, !tbaa !9
  %19816 = zext i32 %19815 to i64
  %19817 = add i64 %19816, 8
  %19818 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19814, i64 noundef %19817, i64 noundef %19818)
  %19819 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %19819, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %19820 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19820, ptr %50, align 4, !tbaa !9
  %19821 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19821, ptr %51, align 4, !tbaa !9
  %19822 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19822, ptr %52, align 4, !tbaa !9
  store i32 8, ptr %53, align 4, !tbaa !9
  %19823 = load i32, ptr %53, align 4, !tbaa !9
  %19824 = load i32, ptr %52, align 4, !tbaa !9
  %19825 = add i32 %19824, %19823
  store i32 %19825, ptr %52, align 4, !tbaa !9
  %19826 = load ptr, ptr %5, align 8, !tbaa !5
  %19827 = load i32, ptr %48, align 4, !tbaa !9
  %19828 = load i32, ptr %49, align 4, !tbaa !9
  %19829 = load i32, ptr %50, align 4, !tbaa !9
  %19830 = load i32, ptr %51, align 4, !tbaa !9
  %19831 = load i32, ptr %52, align 4, !tbaa !9
  %19832 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %19826, i32 noundef %19827, i32 noundef %19828, i32 noundef %19829, i32 noundef %19830, i32 noundef %19831)
  store i32 %19832, ptr %48, align 4, !tbaa !9
  %19833 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19833, ptr %7, align 4, !tbaa !9
  %19834 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19834, ptr %48, align 4, !tbaa !9
  %19835 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19835, ptr %49, align 4, !tbaa !9
  %19836 = load ptr, ptr %5, align 8, !tbaa !5
  %19837 = getelementptr inbounds %struct.w2c_hermes, ptr %19836, i32 0, i32 6
  %19838 = load i32, ptr %49, align 4, !tbaa !9
  %19839 = zext i32 %19838 to i64
  %19840 = add i64 %19839, 60
  %19841 = call i32 @i32_load(ptr noundef %19837, i64 noundef %19840)
  store i32 %19841, ptr %49, align 4, !tbaa !9
  %19842 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %19842, ptr %8, align 4, !tbaa !9
  %19843 = load i32, ptr %48, align 4, !tbaa !9
  %19844 = load i32, ptr %49, align 4, !tbaa !9
  %19845 = icmp ne i32 %19843, %19844
  %19846 = zext i1 %19845 to i32
  store i32 %19846, ptr %48, align 4, !tbaa !9
  %19847 = load i32, ptr %48, align 4, !tbaa !9
  %19848 = icmp ne i32 %19847, 0
  br i1 %19848, label %19849, label %19853

19849:                                            ; preds = %19794
  %19850 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19850, ptr %48, align 4, !tbaa !9
  %19851 = load ptr, ptr %5, align 8, !tbaa !5
  %19852 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %19851, i32 noundef %19852)
  br label %19853

19853:                                            ; preds = %19849, %19794
  %19854 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19854, ptr %48, align 4, !tbaa !9
  %19855 = load ptr, ptr %5, align 8, !tbaa !5
  %19856 = getelementptr inbounds %struct.w2c_hermes, ptr %19855, i32 0, i32 6
  %19857 = load i32, ptr %48, align 4, !tbaa !9
  %19858 = zext i32 %19857 to i64
  %19859 = add i64 %19858, 112
  %19860 = call i32 @i32_load(ptr noundef %19856, i64 noundef %19859)
  store i32 %19860, ptr %48, align 4, !tbaa !9
  %19861 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19861, ptr %8, align 4, !tbaa !9
  %19862 = load i32, ptr %48, align 4, !tbaa !9
  %19863 = icmp ne i32 %19862, 0
  br i1 %19863, label %19864, label %19876

19864:                                            ; preds = %19853
  %19865 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19865, ptr %48, align 4, !tbaa !9
  %19866 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19866, ptr %49, align 4, !tbaa !9
  %19867 = load ptr, ptr %5, align 8, !tbaa !5
  %19868 = getelementptr inbounds %struct.w2c_hermes, ptr %19867, i32 0, i32 6
  %19869 = load i32, ptr %48, align 4, !tbaa !9
  %19870 = zext i32 %19869 to i64
  %19871 = add i64 %19870, 116
  %19872 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19868, i64 noundef %19871, i32 noundef %19872)
  %19873 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19873, ptr %48, align 4, !tbaa !9
  %19874 = load ptr, ptr %5, align 8, !tbaa !5
  %19875 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %19874, i32 noundef %19875)
  br label %19876

19876:                                            ; preds = %19864, %19853
  %19877 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %19877, ptr %48, align 4, !tbaa !9
  %19878 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19878, ptr %49, align 4, !tbaa !9
  %19879 = load ptr, ptr %5, align 8, !tbaa !5
  %19880 = getelementptr inbounds %struct.w2c_hermes, ptr %19879, i32 0, i32 6
  %19881 = load i32, ptr %49, align 4, !tbaa !9
  %19882 = zext i32 %19881 to i64
  %19883 = add i64 %19882, 124
  %19884 = call i32 @i32_load(ptr noundef %19880, i64 noundef %19883)
  store i32 %19884, ptr %49, align 4, !tbaa !9
  %19885 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %19885, ptr %8, align 4, !tbaa !9
  %19886 = load i32, ptr %48, align 4, !tbaa !9
  %19887 = load i32, ptr %49, align 4, !tbaa !9
  %19888 = icmp ne i32 %19886, %19887
  %19889 = zext i1 %19888 to i32
  store i32 %19889, ptr %48, align 4, !tbaa !9
  %19890 = load i32, ptr %48, align 4, !tbaa !9
  %19891 = icmp ne i32 %19890, 0
  br i1 %19891, label %19892, label %19896

19892:                                            ; preds = %19876
  %19893 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19893, ptr %48, align 4, !tbaa !9
  %19894 = load ptr, ptr %5, align 8, !tbaa !5
  %19895 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %19894, i32 noundef %19895)
  br label %19896

19896:                                            ; preds = %19892, %19876
  %19897 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19897, ptr %48, align 4, !tbaa !9
  store i32 144, ptr %49, align 4, !tbaa !9
  %19898 = load i32, ptr %49, align 4, !tbaa !9
  %19899 = load i32, ptr %48, align 4, !tbaa !9
  %19900 = add i32 %19899, %19898
  store i32 %19900, ptr %48, align 4, !tbaa !9
  %19901 = load i32, ptr %48, align 4, !tbaa !9
  %19902 = load ptr, ptr %5, align 8, !tbaa !5
  %19903 = getelementptr inbounds %struct.w2c_hermes, ptr %19902, i32 0, i32 3
  store i32 %19901, ptr %19903, align 8, !tbaa !15
  %19904 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19904, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %19905 = load i32, ptr %49, align 4, !tbaa !9
  %19906 = load i32, ptr %48, align 4, !tbaa !9
  %19907 = add i32 %19906, %19905
  store i32 %19907, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %19908 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19908, ptr %50, align 4, !tbaa !9
  %19909 = load i32, ptr %50, align 4, !tbaa !9
  %19910 = icmp ne i32 %19909, 0
  br i1 %19910, label %19911, label %19913

19911:                                            ; preds = %19896
  %19912 = load i32, ptr %48, align 4, !tbaa !9
  br label %19915

19913:                                            ; preds = %19896
  %19914 = load i32, ptr %49, align 4, !tbaa !9
  br label %19915

19915:                                            ; preds = %19913, %19911
  %19916 = phi i32 [ %19912, %19911 ], [ %19914, %19913 ]
  store i32 %19916, ptr %48, align 4, !tbaa !9
  br label %22463

19917:                                            ; preds = %16007, %15998
  %19918 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19918, ptr %48, align 4, !tbaa !9
  %19919 = load i32, ptr %48, align 4, !tbaa !9
  %19920 = icmp ne i32 %19919, 0
  %19921 = xor i1 %19920, true
  %19922 = zext i1 %19921 to i32
  store i32 %19922, ptr %48, align 4, !tbaa !9
  %19923 = load i32, ptr %48, align 4, !tbaa !9
  %19924 = icmp ne i32 %19923, 0
  br i1 %19924, label %19925, label %19926

19925:                                            ; preds = %19917
  br label %22348

19926:                                            ; preds = %19917
  %19927 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19927, ptr %48, align 4, !tbaa !9
  store i32 43, ptr %49, align 4, !tbaa !9
  %19928 = load i32, ptr %48, align 4, !tbaa !9
  %19929 = load i32, ptr %49, align 4, !tbaa !9
  %19930 = icmp ne i32 %19928, %19929
  %19931 = zext i1 %19930 to i32
  store i32 %19931, ptr %48, align 4, !tbaa !9
  %19932 = load i32, ptr %48, align 4, !tbaa !9
  %19933 = icmp ne i32 %19932, 0
  br i1 %19933, label %19934, label %19935

19934:                                            ; preds = %19926
  br label %22348

19935:                                            ; preds = %19926
  %19936 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19936, ptr %48, align 4, !tbaa !9
  %19937 = load ptr, ptr %5, align 8, !tbaa !5
  %19938 = getelementptr inbounds %struct.w2c_hermes, ptr %19937, i32 0, i32 6
  %19939 = load i32, ptr %48, align 4, !tbaa !9
  %19940 = zext i32 %19939 to i64
  %19941 = add i64 %19940, 32
  %19942 = call i32 @i32_load8_u(ptr noundef %19938, i64 noundef %19941)
  store i32 %19942, ptr %48, align 4, !tbaa !9
  %19943 = load i32, ptr %48, align 4, !tbaa !9
  %19944 = icmp ne i32 %19943, 0
  br i1 %19944, label %19945, label %22307

19945:                                            ; preds = %19935
  %19946 = load ptr, ptr %5, align 8, !tbaa !5
  %19947 = getelementptr inbounds %struct.w2c_hermes, ptr %19946, i32 0, i32 3
  %19948 = load i32, ptr %19947, align 8, !tbaa !15
  store i32 %19948, ptr %48, align 4, !tbaa !9
  store i32 240, ptr %49, align 4, !tbaa !9
  %19949 = load i32, ptr %49, align 4, !tbaa !9
  %19950 = load i32, ptr %48, align 4, !tbaa !9
  %19951 = sub i32 %19950, %19949
  store i32 %19951, ptr %48, align 4, !tbaa !9
  %19952 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19952, ptr %11, align 4, !tbaa !9
  %19953 = load i32, ptr %48, align 4, !tbaa !9
  %19954 = load ptr, ptr %5, align 8, !tbaa !5
  %19955 = getelementptr inbounds %struct.w2c_hermes, ptr %19954, i32 0, i32 3
  store i32 %19953, ptr %19955, align 8, !tbaa !15
  %19956 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19956, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %19957 = load i32, ptr %49, align 4, !tbaa !9
  %19958 = load i32, ptr %48, align 4, !tbaa !9
  %19959 = add i32 %19958, %19957
  store i32 %19959, ptr %48, align 4, !tbaa !9
  %19960 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19960, ptr %10, align 4, !tbaa !9
  %19961 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19961, ptr %49, align 4, !tbaa !9
  %19962 = load ptr, ptr %5, align 8, !tbaa !5
  %19963 = getelementptr inbounds %struct.w2c_hermes, ptr %19962, i32 0, i32 6
  %19964 = load i32, ptr %49, align 4, !tbaa !9
  %19965 = zext i32 %19964 to i64
  %19966 = add i64 %19965, 8
  %19967 = call i32 @i32_load(ptr noundef %19963, i64 noundef %19966)
  store i32 %19967, ptr %49, align 4, !tbaa !9
  %19968 = load ptr, ptr %5, align 8, !tbaa !5
  %19969 = getelementptr inbounds %struct.w2c_hermes, ptr %19968, i32 0, i32 6
  %19970 = load i32, ptr %49, align 4, !tbaa !9
  %19971 = zext i32 %19970 to i64
  %19972 = add i64 %19971, 44
  %19973 = call i32 @i32_load(ptr noundef %19969, i64 noundef %19972)
  store i32 %19973, ptr %49, align 4, !tbaa !9
  %19974 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %19974, ptr %9, align 4, !tbaa !9
  %19975 = load ptr, ptr %5, align 8, !tbaa !5
  %19976 = load i32, ptr %48, align 4, !tbaa !9
  %19977 = load i32, ptr %49, align 4, !tbaa !9
  %19978 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %19975, i32 noundef %19976, i32 noundef %19977)
  store i32 %19978, ptr %48, align 4, !tbaa !9
  %19979 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19979, ptr %8, align 4, !tbaa !9
  %19980 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19980, ptr %48, align 4, !tbaa !9
  %19981 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19981, ptr %49, align 4, !tbaa !9
  %19982 = load ptr, ptr %5, align 8, !tbaa !5
  %19983 = load i32, ptr %48, align 4, !tbaa !9
  %19984 = load i32, ptr %49, align 4, !tbaa !9
  %19985 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %19982, i32 noundef %19983, i32 noundef %19984)
  store i32 %19985, ptr %48, align 4, !tbaa !9
  %19986 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19986, ptr %15, align 4, !tbaa !9
  %19987 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19987, ptr %48, align 4, !tbaa !9
  %19988 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19988, ptr %49, align 4, !tbaa !9
  %19989 = load ptr, ptr %5, align 8, !tbaa !5
  %19990 = load i32, ptr %48, align 4, !tbaa !9
  %19991 = load i32, ptr %49, align 4, !tbaa !9
  %19992 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %19989, i32 noundef %19990, i32 noundef %19991)
  store i32 %19992, ptr %48, align 4, !tbaa !9
  %19993 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %19993, ptr %14, align 4, !tbaa !9
  %19994 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19994, ptr %48, align 4, !tbaa !9
  %19995 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19995, ptr %49, align 4, !tbaa !9
  %19996 = load ptr, ptr %5, align 8, !tbaa !5
  %19997 = load i32, ptr %48, align 4, !tbaa !9
  %19998 = load i32, ptr %49, align 4, !tbaa !9
  %19999 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %19996, i32 noundef %19997, i32 noundef %19998)
  store i32 %19999, ptr %48, align 4, !tbaa !9
  %20000 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20000, ptr %12, align 4, !tbaa !9
  %20001 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20001, ptr %48, align 4, !tbaa !9
  %20002 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %20002, ptr %49, align 4, !tbaa !9
  %20003 = load ptr, ptr %5, align 8, !tbaa !5
  %20004 = getelementptr inbounds %struct.w2c_hermes, ptr %20003, i32 0, i32 6
  %20005 = load i32, ptr %49, align 4, !tbaa !9
  %20006 = zext i32 %20005 to i64
  %20007 = add i64 %20006, 28
  %20008 = call i32 @i32_load(ptr noundef %20004, i64 noundef %20007)
  store i32 %20008, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %20009 = load ptr, ptr %5, align 8, !tbaa !5
  %20010 = load i32, ptr %48, align 4, !tbaa !9
  %20011 = load i32, ptr %49, align 4, !tbaa !9
  %20012 = load i32, ptr %50, align 4, !tbaa !9
  %20013 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %20009, i32 noundef %20010, i32 noundef %20011, i32 noundef %20012)
  store i32 %20013, ptr %48, align 4, !tbaa !9
  %20014 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20014, ptr %13, align 4, !tbaa !9
  %20015 = load ptr, ptr %5, align 8, !tbaa !5
  %20016 = getelementptr inbounds %struct.w2c_hermes, ptr %20015, i32 0, i32 3
  %20017 = load i32, ptr %20016, align 8, !tbaa !15
  store i32 %20017, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %20018 = load i32, ptr %49, align 4, !tbaa !9
  %20019 = load i32, ptr %48, align 4, !tbaa !9
  %20020 = sub i32 %20019, %20018
  store i32 %20020, ptr %48, align 4, !tbaa !9
  %20021 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20021, ptr %9, align 4, !tbaa !9
  %20022 = load i32, ptr %48, align 4, !tbaa !9
  %20023 = load ptr, ptr %5, align 8, !tbaa !5
  %20024 = getelementptr inbounds %struct.w2c_hermes, ptr %20023, i32 0, i32 3
  store i32 %20022, ptr %20024, align 8, !tbaa !15
  %20025 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20025, ptr %48, align 4, !tbaa !9
  store i32 6, ptr %49, align 4, !tbaa !9
  %20026 = load ptr, ptr %5, align 8, !tbaa !5
  %20027 = getelementptr inbounds %struct.w2c_hermes, ptr %20026, i32 0, i32 6
  %20028 = load i32, ptr %48, align 4, !tbaa !9
  %20029 = zext i32 %20028 to i64
  %20030 = add i64 %20029, 92
  %20031 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20027, i64 noundef %20030, i32 noundef %20031)
  %20032 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20032, ptr %48, align 4, !tbaa !9
  store i32 43324, ptr %49, align 4, !tbaa !9
  %20033 = load ptr, ptr %5, align 8, !tbaa !5
  %20034 = getelementptr inbounds %struct.w2c_hermes, ptr %20033, i32 0, i32 6
  %20035 = load i32, ptr %48, align 4, !tbaa !9
  %20036 = zext i32 %20035 to i64
  %20037 = add i64 %20036, 88
  %20038 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20034, i64 noundef %20037, i32 noundef %20038)
  %20039 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20039, ptr %48, align 4, !tbaa !9
  %20040 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20040, ptr %49, align 4, !tbaa !9
  %20041 = load ptr, ptr %5, align 8, !tbaa !5
  %20042 = getelementptr inbounds %struct.w2c_hermes, ptr %20041, i32 0, i32 6
  %20043 = load i32, ptr %49, align 4, !tbaa !9
  %20044 = zext i32 %20043 to i64
  %20045 = add i64 %20044, 88
  %20046 = call i64 @i64_load(ptr noundef %20042, i64 noundef %20045)
  store i64 %20046, ptr %59, align 8, !tbaa !11
  %20047 = load ptr, ptr %5, align 8, !tbaa !5
  %20048 = getelementptr inbounds %struct.w2c_hermes, ptr %20047, i32 0, i32 6
  %20049 = load i32, ptr %48, align 4, !tbaa !9
  %20050 = zext i32 %20049 to i64
  %20051 = add i64 %20050, 48
  %20052 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20048, i64 noundef %20051, i64 noundef %20052)
  %20053 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20053, ptr %48, align 4, !tbaa !9
  %20054 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20054, ptr %49, align 4, !tbaa !9
  store i32 48, ptr %50, align 4, !tbaa !9
  %20055 = load i32, ptr %50, align 4, !tbaa !9
  %20056 = load i32, ptr %49, align 4, !tbaa !9
  %20057 = add i32 %20056, %20055
  store i32 %20057, ptr %49, align 4, !tbaa !9
  %20058 = load ptr, ptr %5, align 8, !tbaa !5
  %20059 = load i32, ptr %48, align 4, !tbaa !9
  %20060 = load i32, ptr %49, align 4, !tbaa !9
  %20061 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryLoadGlobalPropertyInst0x28llvh0x3A0x3AStringRef0x29(ptr noundef %20058, i32 noundef %20059, i32 noundef %20060)
  store i32 %20061, ptr %48, align 4, !tbaa !9
  %20062 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20062, ptr %16, align 4, !tbaa !9
  %20063 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20063, ptr %48, align 4, !tbaa !9
  store i32 36863, ptr %49, align 4, !tbaa !9
  %20064 = load ptr, ptr %5, align 8, !tbaa !5
  %20065 = getelementptr inbounds %struct.w2c_hermes, ptr %20064, i32 0, i32 6
  %20066 = load i32, ptr %48, align 4, !tbaa !9
  %20067 = zext i32 %20066 to i64
  %20068 = add i64 %20067, 80
  %20069 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20065, i64 noundef %20068, i32 noundef %20069)
  %20070 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20070, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %20071 = load ptr, ptr %5, align 8, !tbaa !5
  %20072 = getelementptr inbounds %struct.w2c_hermes, ptr %20071, i32 0, i32 6
  %20073 = load i32, ptr %48, align 4, !tbaa !9
  %20074 = zext i32 %20073 to i64
  %20075 = add i64 %20074, 84
  %20076 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20072, i64 noundef %20075, i32 noundef %20076)
  %20077 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20077, ptr %48, align 4, !tbaa !9
  %20078 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20078, ptr %49, align 4, !tbaa !9
  %20079 = load ptr, ptr %5, align 8, !tbaa !5
  %20080 = getelementptr inbounds %struct.w2c_hermes, ptr %20079, i32 0, i32 6
  %20081 = load i32, ptr %49, align 4, !tbaa !9
  %20082 = zext i32 %20081 to i64
  %20083 = add i64 %20082, 80
  %20084 = call i64 @i64_load(ptr noundef %20080, i64 noundef %20083)
  store i64 %20084, ptr %59, align 8, !tbaa !11
  %20085 = load ptr, ptr %5, align 8, !tbaa !5
  %20086 = getelementptr inbounds %struct.w2c_hermes, ptr %20085, i32 0, i32 6
  %20087 = load i32, ptr %48, align 4, !tbaa !9
  %20088 = zext i32 %20087 to i64
  %20089 = add i64 %20088, 40
  %20090 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20086, i64 noundef %20089, i64 noundef %20090)
  %20091 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20091, ptr %48, align 4, !tbaa !9
  %20092 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %20092, ptr %49, align 4, !tbaa !9
  %20093 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20093, ptr %50, align 4, !tbaa !9
  %20094 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %20094, ptr %51, align 4, !tbaa !9
  store i32 8, ptr %52, align 4, !tbaa !9
  %20095 = load i32, ptr %52, align 4, !tbaa !9
  %20096 = load i32, ptr %51, align 4, !tbaa !9
  %20097 = add i32 %20096, %20095
  store i32 %20097, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %20098 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %20098, ptr %53, align 4, !tbaa !9
  %20099 = load i32, ptr %53, align 4, !tbaa !9
  %20100 = icmp ne i32 %20099, 0
  br i1 %20100, label %20101, label %20103

20101:                                            ; preds = %19945
  %20102 = load i32, ptr %51, align 4, !tbaa !9
  br label %20105

20103:                                            ; preds = %19945
  %20104 = load i32, ptr %52, align 4, !tbaa !9
  br label %20105

20105:                                            ; preds = %20103, %20101
  %20106 = phi i32 [ %20102, %20101 ], [ %20104, %20103 ]
  store i32 %20106, ptr %51, align 4, !tbaa !9
  %20107 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20107, ptr %52, align 4, !tbaa !9
  store i32 40, ptr %53, align 4, !tbaa !9
  %20108 = load i32, ptr %53, align 4, !tbaa !9
  %20109 = load i32, ptr %52, align 4, !tbaa !9
  %20110 = add i32 %20109, %20108
  store i32 %20110, ptr %52, align 4, !tbaa !9
  %20111 = load ptr, ptr %5, align 8, !tbaa !5
  %20112 = load i32, ptr %50, align 4, !tbaa !9
  %20113 = load i32, ptr %51, align 4, !tbaa !9
  %20114 = load i32, ptr %52, align 4, !tbaa !9
  %20115 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef %20111, i32 noundef %20112, i32 noundef %20113, i32 noundef %20114)
  store i32 %20115, ptr %50, align 4, !tbaa !9
  %20116 = load i32, ptr %50, align 4, !tbaa !9
  store i32 %20116, ptr %16, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %20117 = load i32, ptr %51, align 4, !tbaa !9
  %20118 = load i32, ptr %50, align 4, !tbaa !9
  %20119 = add i32 %20118, %20117
  store i32 %20119, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %20120 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %20120, ptr %52, align 4, !tbaa !9
  %20121 = load i32, ptr %52, align 4, !tbaa !9
  %20122 = icmp ne i32 %20121, 0
  br i1 %20122, label %20123, label %20125

20123:                                            ; preds = %20105
  %20124 = load i32, ptr %50, align 4, !tbaa !9
  br label %20127

20125:                                            ; preds = %20105
  %20126 = load i32, ptr %51, align 4, !tbaa !9
  br label %20127

20127:                                            ; preds = %20125, %20123
  %20128 = phi i32 [ %20124, %20123 ], [ %20126, %20125 ]
  store i32 %20128, ptr %50, align 4, !tbaa !9
  %20129 = load ptr, ptr %5, align 8, !tbaa !5
  %20130 = load i32, ptr %48, align 4, !tbaa !9
  %20131 = load i32, ptr %49, align 4, !tbaa !9
  %20132 = load i32, ptr %50, align 4, !tbaa !9
  %20133 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %20129, i32 noundef %20130, i32 noundef %20131, i32 noundef %20132)
  store i32 %20133, ptr %48, align 4, !tbaa !9
  %20134 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20134, ptr %16, align 4, !tbaa !9
  %20135 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20135, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %20136 = load ptr, ptr %5, align 8, !tbaa !5
  %20137 = getelementptr inbounds %struct.w2c_hermes, ptr %20136, i32 0, i32 6
  %20138 = load i32, ptr %48, align 4, !tbaa !9
  %20139 = zext i32 %20138 to i64
  %20140 = add i64 %20139, 32
  %20141 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20137, i64 noundef %20140, i64 noundef %20141)
  %20142 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20142, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %20143 = load ptr, ptr %5, align 8, !tbaa !5
  %20144 = getelementptr inbounds %struct.w2c_hermes, ptr %20143, i32 0, i32 6
  %20145 = load i32, ptr %48, align 4, !tbaa !9
  %20146 = zext i32 %20145 to i64
  %20147 = add i64 %20146, 64
  %20148 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20144, i64 noundef %20147, i64 noundef %20148)
  %20149 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20149, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %20150 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %20150, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %20151 = load i32, ptr %51, align 4, !tbaa !9
  %20152 = load i32, ptr %50, align 4, !tbaa !9
  %20153 = add i32 %20152, %20151
  store i32 %20153, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %20154 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %20154, ptr %52, align 4, !tbaa !9
  %20155 = load i32, ptr %52, align 4, !tbaa !9
  %20156 = icmp ne i32 %20155, 0
  br i1 %20156, label %20157, label %20159

20157:                                            ; preds = %20127
  %20158 = load i32, ptr %50, align 4, !tbaa !9
  br label %20161

20159:                                            ; preds = %20127
  %20160 = load i32, ptr %51, align 4, !tbaa !9
  br label %20161

20161:                                            ; preds = %20159, %20157
  %20162 = phi i32 [ %20158, %20157 ], [ %20160, %20159 ]
  store i32 %20162, ptr %50, align 4, !tbaa !9
  %20163 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %20163, ptr %51, align 4, !tbaa !9
  %20164 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20164, ptr %52, align 4, !tbaa !9
  store i32 32, ptr %53, align 4, !tbaa !9
  %20165 = load i32, ptr %53, align 4, !tbaa !9
  %20166 = load i32, ptr %52, align 4, !tbaa !9
  %20167 = add i32 %20166, %20165
  store i32 %20167, ptr %52, align 4, !tbaa !9
  %20168 = load ptr, ptr %5, align 8, !tbaa !5
  %20169 = load i32, ptr %48, align 4, !tbaa !9
  %20170 = load i32, ptr %49, align 4, !tbaa !9
  %20171 = load i32, ptr %50, align 4, !tbaa !9
  %20172 = load i32, ptr %51, align 4, !tbaa !9
  %20173 = load i32, ptr %52, align 4, !tbaa !9
  %20174 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %20168, i32 noundef %20169, i32 noundef %20170, i32 noundef %20171, i32 noundef %20172, i32 noundef %20173)
  store i32 %20174, ptr %48, align 4, !tbaa !9
  %20175 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20175, ptr %13, align 4, !tbaa !9
  %20176 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20176, ptr %48, align 4, !tbaa !9
  store i32 25, ptr %49, align 4, !tbaa !9
  %20177 = load ptr, ptr %5, align 8, !tbaa !5
  %20178 = getelementptr inbounds %struct.w2c_hermes, ptr %20177, i32 0, i32 6
  %20179 = load i32, ptr %48, align 4, !tbaa !9
  %20180 = zext i32 %20179 to i64
  %20181 = add i64 %20180, 76
  %20182 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20178, i64 noundef %20181, i32 noundef %20182)
  %20183 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20183, ptr %48, align 4, !tbaa !9
  store i32 31264, ptr %49, align 4, !tbaa !9
  %20184 = load ptr, ptr %5, align 8, !tbaa !5
  %20185 = getelementptr inbounds %struct.w2c_hermes, ptr %20184, i32 0, i32 6
  %20186 = load i32, ptr %48, align 4, !tbaa !9
  %20187 = zext i32 %20186 to i64
  %20188 = add i64 %20187, 72
  %20189 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20185, i64 noundef %20188, i32 noundef %20189)
  %20190 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20190, ptr %48, align 4, !tbaa !9
  %20191 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %20191, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %20192 = load i32, ptr %50, align 4, !tbaa !9
  %20193 = load i32, ptr %49, align 4, !tbaa !9
  %20194 = add i32 %20193, %20192
  store i32 %20194, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %20195 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %20195, ptr %51, align 4, !tbaa !9
  %20196 = load i32, ptr %51, align 4, !tbaa !9
  %20197 = icmp ne i32 %20196, 0
  br i1 %20197, label %20198, label %20200

20198:                                            ; preds = %20161
  %20199 = load i32, ptr %49, align 4, !tbaa !9
  br label %20202

20200:                                            ; preds = %20161
  %20201 = load i32, ptr %50, align 4, !tbaa !9
  br label %20202

20202:                                            ; preds = %20200, %20198
  %20203 = phi i32 [ %20199, %20198 ], [ %20201, %20200 ]
  store i32 %20203, ptr %49, align 4, !tbaa !9
  %20204 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %20204, ptr %13, align 4, !tbaa !9
  %20205 = load ptr, ptr %5, align 8, !tbaa !5
  %20206 = getelementptr inbounds %struct.w2c_hermes, ptr %20205, i32 0, i32 6
  %20207 = load i32, ptr %48, align 4, !tbaa !9
  %20208 = zext i32 %20207 to i64
  %20209 = add i64 %20208, 80
  %20210 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20206, i64 noundef %20209, i32 noundef %20210)
  %20211 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20211, ptr %48, align 4, !tbaa !9
  %20212 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20212, ptr %49, align 4, !tbaa !9
  %20213 = load ptr, ptr %5, align 8, !tbaa !5
  %20214 = getelementptr inbounds %struct.w2c_hermes, ptr %20213, i32 0, i32 6
  %20215 = load i32, ptr %49, align 4, !tbaa !9
  %20216 = zext i32 %20215 to i64
  %20217 = add i64 %20216, 72
  %20218 = call i64 @i64_load(ptr noundef %20214, i64 noundef %20217)
  store i64 %20218, ptr %59, align 8, !tbaa !11
  %20219 = load ptr, ptr %5, align 8, !tbaa !5
  %20220 = getelementptr inbounds %struct.w2c_hermes, ptr %20219, i32 0, i32 6
  %20221 = load i32, ptr %48, align 4, !tbaa !9
  %20222 = zext i32 %20221 to i64
  %20223 = add i64 %20222, 24
  %20224 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20220, i64 noundef %20223, i64 noundef %20224)
  %20225 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20225, ptr %48, align 4, !tbaa !9
  %20226 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20226, ptr %49, align 4, !tbaa !9
  %20227 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20227, ptr %50, align 4, !tbaa !9
  store i32 24, ptr %51, align 4, !tbaa !9
  %20228 = load i32, ptr %51, align 4, !tbaa !9
  %20229 = load i32, ptr %50, align 4, !tbaa !9
  %20230 = add i32 %20229, %20228
  store i32 %20230, ptr %50, align 4, !tbaa !9
  %20231 = load ptr, ptr %5, align 8, !tbaa !5
  %20232 = load i32, ptr %49, align 4, !tbaa !9
  %20233 = load i32, ptr %50, align 4, !tbaa !9
  %20234 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %20231, i32 noundef %20232, i32 noundef %20233)
  store i32 %20234, ptr %49, align 4, !tbaa !9
  %20235 = load ptr, ptr %5, align 8, !tbaa !5
  %20236 = getelementptr inbounds %struct.w2c_hermes, ptr %20235, i32 0, i32 6
  %20237 = load i32, ptr %48, align 4, !tbaa !9
  %20238 = zext i32 %20237 to i64
  %20239 = add i64 %20238, 84
  %20240 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20236, i64 noundef %20239, i32 noundef %20240)
  %20241 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20241, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %20242 = load ptr, ptr %5, align 8, !tbaa !5
  %20243 = getelementptr inbounds %struct.w2c_hermes, ptr %20242, i32 0, i32 6
  %20244 = load i32, ptr %48, align 4, !tbaa !9
  %20245 = zext i32 %20244 to i64
  %20246 = add i64 %20245, 92
  %20247 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20243, i64 noundef %20246, i32 noundef %20247)
  %20248 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20248, ptr %48, align 4, !tbaa !9
  %20249 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20249, ptr %49, align 4, !tbaa !9
  store i32 80, ptr %50, align 4, !tbaa !9
  %20250 = load i32, ptr %50, align 4, !tbaa !9
  %20251 = load i32, ptr %49, align 4, !tbaa !9
  %20252 = add i32 %20251, %20250
  store i32 %20252, ptr %49, align 4, !tbaa !9
  %20253 = load ptr, ptr %5, align 8, !tbaa !5
  %20254 = getelementptr inbounds %struct.w2c_hermes, ptr %20253, i32 0, i32 6
  %20255 = load i32, ptr %48, align 4, !tbaa !9
  %20256 = zext i32 %20255 to i64
  %20257 = add i64 %20256, 88
  %20258 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20254, i64 noundef %20257, i32 noundef %20258)
  %20259 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20259, ptr %48, align 4, !tbaa !9
  %20260 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20260, ptr %49, align 4, !tbaa !9
  %20261 = load ptr, ptr %5, align 8, !tbaa !5
  %20262 = getelementptr inbounds %struct.w2c_hermes, ptr %20261, i32 0, i32 6
  %20263 = load i32, ptr %49, align 4, !tbaa !9
  %20264 = zext i32 %20263 to i64
  %20265 = add i64 %20264, 88
  %20266 = call i64 @i64_load(ptr noundef %20262, i64 noundef %20265)
  store i64 %20266, ptr %59, align 8, !tbaa !11
  %20267 = load ptr, ptr %5, align 8, !tbaa !5
  %20268 = getelementptr inbounds %struct.w2c_hermes, ptr %20267, i32 0, i32 6
  %20269 = load i32, ptr %48, align 4, !tbaa !9
  %20270 = zext i32 %20269 to i64
  %20271 = add i64 %20270, 16
  %20272 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20268, i64 noundef %20271, i64 noundef %20272)
  %20273 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20273, ptr %48, align 4, !tbaa !9
  store i32 40, ptr %49, align 4, !tbaa !9
  %20274 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20274, ptr %50, align 4, !tbaa !9
  store i32 16, ptr %51, align 4, !tbaa !9
  %20275 = load i32, ptr %51, align 4, !tbaa !9
  %20276 = load i32, ptr %50, align 4, !tbaa !9
  %20277 = add i32 %20276, %20275
  store i32 %20277, ptr %50, align 4, !tbaa !9
  %20278 = load ptr, ptr %5, align 8, !tbaa !5
  %20279 = load i32, ptr %48, align 4, !tbaa !9
  %20280 = load i32, ptr %49, align 4, !tbaa !9
  %20281 = load i32, ptr %50, align 4, !tbaa !9
  %20282 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %20278, i32 noundef %20279, i32 noundef %20280, i32 noundef %20281)
  store i32 %20282, ptr %48, align 4, !tbaa !9
  %20283 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20283, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %20284 = load ptr, ptr %5, align 8, !tbaa !5
  %20285 = getelementptr inbounds %struct.w2c_hermes, ptr %20284, i32 0, i32 6
  %20286 = load i32, ptr %48, align 4, !tbaa !9
  %20287 = zext i32 %20286 to i64
  %20288 = add i64 %20287, 60
  %20289 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20285, i64 noundef %20288, i32 noundef %20289)
  %20290 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20290, ptr %48, align 4, !tbaa !9
  store i32 18703, ptr %49, align 4, !tbaa !9
  %20291 = load ptr, ptr %5, align 8, !tbaa !5
  %20292 = getelementptr inbounds %struct.w2c_hermes, ptr %20291, i32 0, i32 6
  %20293 = load i32, ptr %48, align 4, !tbaa !9
  %20294 = zext i32 %20293 to i64
  %20295 = add i64 %20294, 56
  %20296 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20292, i64 noundef %20295, i32 noundef %20296)
  %20297 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20297, ptr %48, align 4, !tbaa !9
  %20298 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20298, ptr %49, align 4, !tbaa !9
  %20299 = load ptr, ptr %5, align 8, !tbaa !5
  %20300 = getelementptr inbounds %struct.w2c_hermes, ptr %20299, i32 0, i32 6
  %20301 = load i32, ptr %49, align 4, !tbaa !9
  %20302 = zext i32 %20301 to i64
  %20303 = add i64 %20302, 56
  %20304 = call i64 @i64_load(ptr noundef %20300, i64 noundef %20303)
  store i64 %20304, ptr %59, align 8, !tbaa !11
  %20305 = load ptr, ptr %5, align 8, !tbaa !5
  %20306 = getelementptr inbounds %struct.w2c_hermes, ptr %20305, i32 0, i32 6
  %20307 = load i32, ptr %48, align 4, !tbaa !9
  %20308 = zext i32 %20307 to i64
  %20309 = add i64 %20308, 8
  %20310 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20306, i64 noundef %20309, i64 noundef %20310)
  %20311 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20311, ptr %48, align 4, !tbaa !9
  %20312 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %20312, ptr %49, align 4, !tbaa !9
  %20313 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20313, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %20314 = load i32, ptr %51, align 4, !tbaa !9
  %20315 = load i32, ptr %50, align 4, !tbaa !9
  %20316 = add i32 %20315, %20314
  store i32 %20316, ptr %50, align 4, !tbaa !9
  %20317 = load ptr, ptr %5, align 8, !tbaa !5
  %20318 = load i32, ptr %48, align 4, !tbaa !9
  %20319 = load i32, ptr %49, align 4, !tbaa !9
  %20320 = load i32, ptr %50, align 4, !tbaa !9
  %20321 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef %20317, i32 noundef %20318, i32 noundef %20319, i32 noundef %20320)
  store i32 %20321, ptr %48, align 4, !tbaa !9
  %20322 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20322, ptr %16, align 4, !tbaa !9
  %20323 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20323, ptr %48, align 4, !tbaa !9
  %20324 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %20324, ptr %49, align 4, !tbaa !9
  %20325 = load ptr, ptr %5, align 8, !tbaa !5
  %20326 = getelementptr inbounds %struct.w2c_hermes, ptr %20325, i32 0, i32 6
  %20327 = load i32, ptr %48, align 4, !tbaa !9
  %20328 = zext i32 %20327 to i64
  %20329 = add i64 %20328, 128
  %20330 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20326, i64 noundef %20329, i32 noundef %20330)
  %20331 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20331, ptr %48, align 4, !tbaa !9
  %20332 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %20332, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %20333 = load i32, ptr %50, align 4, !tbaa !9
  %20334 = load i32, ptr %49, align 4, !tbaa !9
  %20335 = add i32 %20334, %20333
  store i32 %20335, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %20336 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %20336, ptr %51, align 4, !tbaa !9
  %20337 = load i32, ptr %51, align 4, !tbaa !9
  %20338 = icmp ne i32 %20337, 0
  br i1 %20338, label %20339, label %20341

20339:                                            ; preds = %20202
  %20340 = load i32, ptr %49, align 4, !tbaa !9
  br label %20343

20341:                                            ; preds = %20202
  %20342 = load i32, ptr %50, align 4, !tbaa !9
  br label %20343

20343:                                            ; preds = %20341, %20339
  %20344 = phi i32 [ %20340, %20339 ], [ %20342, %20341 ]
  store i32 %20344, ptr %49, align 4, !tbaa !9
  %20345 = load ptr, ptr %5, align 8, !tbaa !5
  %20346 = getelementptr inbounds %struct.w2c_hermes, ptr %20345, i32 0, i32 6
  %20347 = load i32, ptr %48, align 4, !tbaa !9
  %20348 = zext i32 %20347 to i64
  %20349 = add i64 %20348, 132
  %20350 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20346, i64 noundef %20349, i32 noundef %20350)
  %20351 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20351, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %20352 = load i32, ptr %49, align 4, !tbaa !9
  %20353 = load i32, ptr %48, align 4, !tbaa !9
  %20354 = add i32 %20353, %20352
  store i32 %20354, ptr %48, align 4, !tbaa !9
  %20355 = load i32, ptr %48, align 4, !tbaa !9
  %20356 = load ptr, ptr %5, align 8, !tbaa !5
  %20357 = getelementptr inbounds %struct.w2c_hermes, ptr %20356, i32 0, i32 3
  store i32 %20355, ptr %20357, align 8, !tbaa !15
  %20358 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20358, ptr %48, align 4, !tbaa !9
  %20359 = load ptr, ptr %5, align 8, !tbaa !5
  %20360 = getelementptr inbounds %struct.w2c_hermes, ptr %20359, i32 0, i32 6
  %20361 = load i32, ptr %48, align 4, !tbaa !9
  %20362 = zext i32 %20361 to i64
  %20363 = add i64 %20362, 40
  %20364 = call i32 @i32_load(ptr noundef %20360, i64 noundef %20363)
  store i32 %20364, ptr %48, align 4, !tbaa !9
  %20365 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20365, ptr %9, align 4, !tbaa !9
  %20366 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20366, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %20367 = load ptr, ptr %5, align 8, !tbaa !5
  %20368 = getelementptr inbounds %struct.w2c_hermes, ptr %20367, i32 0, i32 6
  %20369 = load i32, ptr %48, align 4, !tbaa !9
  %20370 = zext i32 %20369 to i64
  %20371 = add i64 %20370, 140
  %20372 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20368, i64 noundef %20371, i32 noundef %20372)
  %20373 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20373, ptr %48, align 4, !tbaa !9
  store i32 53243, ptr %49, align 4, !tbaa !9
  %20374 = load ptr, ptr %5, align 8, !tbaa !5
  %20375 = getelementptr inbounds %struct.w2c_hermes, ptr %20374, i32 0, i32 6
  %20376 = load i32, ptr %48, align 4, !tbaa !9
  %20377 = zext i32 %20376 to i64
  %20378 = add i64 %20377, 136
  %20379 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20375, i64 noundef %20378, i32 noundef %20379)
  %20380 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20380, ptr %48, align 4, !tbaa !9
  %20381 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20381, ptr %49, align 4, !tbaa !9
  %20382 = load ptr, ptr %5, align 8, !tbaa !5
  %20383 = getelementptr inbounds %struct.w2c_hermes, ptr %20382, i32 0, i32 6
  %20384 = load i32, ptr %49, align 4, !tbaa !9
  %20385 = zext i32 %20384 to i64
  %20386 = add i64 %20385, 136
  %20387 = call i64 @i64_load(ptr noundef %20383, i64 noundef %20386)
  store i64 %20387, ptr %59, align 8, !tbaa !11
  %20388 = load ptr, ptr %5, align 8, !tbaa !5
  %20389 = getelementptr inbounds %struct.w2c_hermes, ptr %20388, i32 0, i32 6
  %20390 = load i32, ptr %48, align 4, !tbaa !9
  %20391 = zext i32 %20390 to i64
  %20392 = add i64 %20391, 104
  %20393 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20389, i64 noundef %20392, i64 noundef %20393)
  %20394 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20394, ptr %48, align 4, !tbaa !9
  %20395 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20395, ptr %49, align 4, !tbaa !9
  %20396 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20396, ptr %50, align 4, !tbaa !9
  store i32 104, ptr %51, align 4, !tbaa !9
  %20397 = load i32, ptr %51, align 4, !tbaa !9
  %20398 = load i32, ptr %50, align 4, !tbaa !9
  %20399 = add i32 %20398, %20397
  store i32 %20399, ptr %50, align 4, !tbaa !9
  %20400 = load ptr, ptr %5, align 8, !tbaa !5
  %20401 = load i32, ptr %49, align 4, !tbaa !9
  %20402 = load i32, ptr %50, align 4, !tbaa !9
  %20403 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AgenAnonymousLabelName0x28llvh0x3A0x3AStringRef0x29(ptr noundef %20400, i32 noundef %20401, i32 noundef %20402)
  store i32 %20403, ptr %49, align 4, !tbaa !9
  %20404 = load ptr, ptr %5, align 8, !tbaa !5
  %20405 = load i32, ptr %48, align 4, !tbaa !9
  %20406 = load i32, ptr %49, align 4, !tbaa !9
  %20407 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef %20404, i32 noundef %20405, i32 noundef %20406)
  store i32 %20407, ptr %48, align 4, !tbaa !9
  %20408 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20408, ptr %13, align 4, !tbaa !9
  %20409 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20409, ptr %48, align 4, !tbaa !9
  %20410 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20410, ptr %49, align 4, !tbaa !9
  %20411 = load ptr, ptr %5, align 8, !tbaa !5
  %20412 = getelementptr inbounds %struct.w2c_hermes, ptr %20411, i32 0, i32 6
  %20413 = load i32, ptr %49, align 4, !tbaa !9
  %20414 = zext i32 %20413 to i64
  %20415 = call i32 @i32_load(ptr noundef %20412, i64 noundef %20414)
  store i32 %20415, ptr %49, align 4, !tbaa !9
  store i32 268, ptr %50, align 4, !tbaa !9
  %20416 = load i32, ptr %50, align 4, !tbaa !9
  %20417 = load i32, ptr %49, align 4, !tbaa !9
  %20418 = add i32 %20417, %20416
  store i32 %20418, ptr %49, align 4, !tbaa !9
  %20419 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %20419, ptr %50, align 4, !tbaa !9
  %20420 = load ptr, ptr %5, align 8, !tbaa !5
  %20421 = load i32, ptr %48, align 4, !tbaa !9
  %20422 = load i32, ptr %49, align 4, !tbaa !9
  %20423 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef %20420, i32 noundef %20421, i32 noundef %20422, i32 noundef %20423)
  %20424 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20424, ptr %48, align 4, !tbaa !9
  %20425 = load ptr, ptr %5, align 8, !tbaa !5
  %20426 = getelementptr inbounds %struct.w2c_hermes, ptr %20425, i32 0, i32 6
  %20427 = load i32, ptr %48, align 4, !tbaa !9
  %20428 = zext i32 %20427 to i64
  %20429 = add i64 %20428, 40
  %20430 = call i32 @i32_load(ptr noundef %20426, i64 noundef %20429)
  store i32 %20430, ptr %48, align 4, !tbaa !9
  %20431 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20431, ptr %9, align 4, !tbaa !9
  %20432 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20432, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %20433 = load ptr, ptr %5, align 8, !tbaa !5
  %20434 = getelementptr inbounds %struct.w2c_hermes, ptr %20433, i32 0, i32 6
  %20435 = load i32, ptr %48, align 4, !tbaa !9
  %20436 = zext i32 %20435 to i64
  %20437 = add i64 %20436, 140
  %20438 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20434, i64 noundef %20437, i32 noundef %20438)
  %20439 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20439, ptr %48, align 4, !tbaa !9
  store i32 40450, ptr %49, align 4, !tbaa !9
  %20440 = load ptr, ptr %5, align 8, !tbaa !5
  %20441 = getelementptr inbounds %struct.w2c_hermes, ptr %20440, i32 0, i32 6
  %20442 = load i32, ptr %48, align 4, !tbaa !9
  %20443 = zext i32 %20442 to i64
  %20444 = add i64 %20443, 136
  %20445 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20441, i64 noundef %20444, i32 noundef %20445)
  %20446 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20446, ptr %48, align 4, !tbaa !9
  %20447 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20447, ptr %49, align 4, !tbaa !9
  %20448 = load ptr, ptr %5, align 8, !tbaa !5
  %20449 = getelementptr inbounds %struct.w2c_hermes, ptr %20448, i32 0, i32 6
  %20450 = load i32, ptr %49, align 4, !tbaa !9
  %20451 = zext i32 %20450 to i64
  %20452 = add i64 %20451, 136
  %20453 = call i64 @i64_load(ptr noundef %20449, i64 noundef %20452)
  store i64 %20453, ptr %59, align 8, !tbaa !11
  %20454 = load ptr, ptr %5, align 8, !tbaa !5
  %20455 = getelementptr inbounds %struct.w2c_hermes, ptr %20454, i32 0, i32 6
  %20456 = load i32, ptr %48, align 4, !tbaa !9
  %20457 = zext i32 %20456 to i64
  %20458 = add i64 %20457, 96
  %20459 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20455, i64 noundef %20458, i64 noundef %20459)
  %20460 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20460, ptr %48, align 4, !tbaa !9
  %20461 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20461, ptr %49, align 4, !tbaa !9
  %20462 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20462, ptr %50, align 4, !tbaa !9
  store i32 96, ptr %51, align 4, !tbaa !9
  %20463 = load i32, ptr %51, align 4, !tbaa !9
  %20464 = load i32, ptr %50, align 4, !tbaa !9
  %20465 = add i32 %20464, %20463
  store i32 %20465, ptr %50, align 4, !tbaa !9
  %20466 = load ptr, ptr %5, align 8, !tbaa !5
  %20467 = load i32, ptr %49, align 4, !tbaa !9
  %20468 = load i32, ptr %50, align 4, !tbaa !9
  %20469 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AgenAnonymousLabelName0x28llvh0x3A0x3AStringRef0x29(ptr noundef %20466, i32 noundef %20467, i32 noundef %20468)
  store i32 %20469, ptr %49, align 4, !tbaa !9
  %20470 = load ptr, ptr %5, align 8, !tbaa !5
  %20471 = load i32, ptr %48, align 4, !tbaa !9
  %20472 = load i32, ptr %49, align 4, !tbaa !9
  %20473 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef %20470, i32 noundef %20471, i32 noundef %20472)
  store i32 %20473, ptr %48, align 4, !tbaa !9
  %20474 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20474, ptr %23, align 4, !tbaa !9
  %20475 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20475, ptr %48, align 4, !tbaa !9
  %20476 = load ptr, ptr %5, align 8, !tbaa !5
  %20477 = getelementptr inbounds %struct.w2c_hermes, ptr %20476, i32 0, i32 6
  %20478 = load i32, ptr %48, align 4, !tbaa !9
  %20479 = zext i32 %20478 to i64
  %20480 = add i64 %20479, 40
  %20481 = call i32 @i32_load(ptr noundef %20477, i64 noundef %20480)
  store i32 %20481, ptr %48, align 4, !tbaa !9
  %20482 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20482, ptr %9, align 4, !tbaa !9
  %20483 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20483, ptr %48, align 4, !tbaa !9
  store i32 6, ptr %49, align 4, !tbaa !9
  %20484 = load ptr, ptr %5, align 8, !tbaa !5
  %20485 = getelementptr inbounds %struct.w2c_hermes, ptr %20484, i32 0, i32 6
  %20486 = load i32, ptr %48, align 4, !tbaa !9
  %20487 = zext i32 %20486 to i64
  %20488 = add i64 %20487, 140
  %20489 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20485, i64 noundef %20488, i32 noundef %20489)
  %20490 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20490, ptr %48, align 4, !tbaa !9
  store i32 22347, ptr %49, align 4, !tbaa !9
  %20491 = load ptr, ptr %5, align 8, !tbaa !5
  %20492 = getelementptr inbounds %struct.w2c_hermes, ptr %20491, i32 0, i32 6
  %20493 = load i32, ptr %48, align 4, !tbaa !9
  %20494 = zext i32 %20493 to i64
  %20495 = add i64 %20494, 136
  %20496 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20492, i64 noundef %20495, i32 noundef %20496)
  %20497 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20497, ptr %48, align 4, !tbaa !9
  %20498 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20498, ptr %49, align 4, !tbaa !9
  %20499 = load ptr, ptr %5, align 8, !tbaa !5
  %20500 = getelementptr inbounds %struct.w2c_hermes, ptr %20499, i32 0, i32 6
  %20501 = load i32, ptr %49, align 4, !tbaa !9
  %20502 = zext i32 %20501 to i64
  %20503 = add i64 %20502, 136
  %20504 = call i64 @i64_load(ptr noundef %20500, i64 noundef %20503)
  store i64 %20504, ptr %59, align 8, !tbaa !11
  %20505 = load ptr, ptr %5, align 8, !tbaa !5
  %20506 = getelementptr inbounds %struct.w2c_hermes, ptr %20505, i32 0, i32 6
  %20507 = load i32, ptr %48, align 4, !tbaa !9
  %20508 = zext i32 %20507 to i64
  %20509 = add i64 %20508, 88
  %20510 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20506, i64 noundef %20509, i64 noundef %20510)
  %20511 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20511, ptr %48, align 4, !tbaa !9
  %20512 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20512, ptr %49, align 4, !tbaa !9
  %20513 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20513, ptr %50, align 4, !tbaa !9
  store i32 88, ptr %51, align 4, !tbaa !9
  %20514 = load i32, ptr %51, align 4, !tbaa !9
  %20515 = load i32, ptr %50, align 4, !tbaa !9
  %20516 = add i32 %20515, %20514
  store i32 %20516, ptr %50, align 4, !tbaa !9
  %20517 = load ptr, ptr %5, align 8, !tbaa !5
  %20518 = load i32, ptr %49, align 4, !tbaa !9
  %20519 = load i32, ptr %50, align 4, !tbaa !9
  %20520 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AgenAnonymousLabelName0x28llvh0x3A0x3AStringRef0x29(ptr noundef %20517, i32 noundef %20518, i32 noundef %20519)
  store i32 %20520, ptr %49, align 4, !tbaa !9
  %20521 = load ptr, ptr %5, align 8, !tbaa !5
  %20522 = load i32, ptr %48, align 4, !tbaa !9
  %20523 = load i32, ptr %49, align 4, !tbaa !9
  %20524 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef %20521, i32 noundef %20522, i32 noundef %20523)
  store i32 %20524, ptr %48, align 4, !tbaa !9
  %20525 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20525, ptr %17, align 4, !tbaa !9
  %20526 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20526, ptr %48, align 4, !tbaa !9
  %20527 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %20527, ptr %49, align 4, !tbaa !9
  %20528 = load ptr, ptr %5, align 8, !tbaa !5
  %20529 = load i32, ptr %48, align 4, !tbaa !9
  %20530 = load i32, ptr %49, align 4, !tbaa !9
  %20531 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %20528, i32 noundef %20529, i32 noundef %20530)
  store i32 %20531, ptr %48, align 4, !tbaa !9
  %20532 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20532, ptr %48, align 4, !tbaa !9
  %20533 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %20533, ptr %49, align 4, !tbaa !9
  %20534 = load ptr, ptr %5, align 8, !tbaa !5
  %20535 = getelementptr inbounds %struct.w2c_hermes, ptr %20534, i32 0, i32 6
  %20536 = load i32, ptr %48, align 4, !tbaa !9
  %20537 = zext i32 %20536 to i64
  %20538 = add i64 %20537, 8
  %20539 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20535, i64 noundef %20538, i32 noundef %20539)
  %20540 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20540, ptr %48, align 4, !tbaa !9
  %20541 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %20541, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %20542 = load i32, ptr %50, align 4, !tbaa !9
  %20543 = load i32, ptr %49, align 4, !tbaa !9
  %20544 = add i32 %20543, %20542
  store i32 %20544, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %20545 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %20545, ptr %51, align 4, !tbaa !9
  %20546 = load i32, ptr %51, align 4, !tbaa !9
  %20547 = icmp ne i32 %20546, 0
  br i1 %20547, label %20548, label %20550

20548:                                            ; preds = %20343
  %20549 = load i32, ptr %49, align 4, !tbaa !9
  br label %20552

20550:                                            ; preds = %20343
  %20551 = load i32, ptr %50, align 4, !tbaa !9
  br label %20552

20552:                                            ; preds = %20550, %20548
  %20553 = phi i32 [ %20549, %20548 ], [ %20551, %20550 ]
  store i32 %20553, ptr %49, align 4, !tbaa !9
  %20554 = load ptr, ptr %5, align 8, !tbaa !5
  %20555 = getelementptr inbounds %struct.w2c_hermes, ptr %20554, i32 0, i32 6
  %20556 = load i32, ptr %48, align 4, !tbaa !9
  %20557 = zext i32 %20556 to i64
  %20558 = add i64 %20557, 4
  %20559 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20555, i64 noundef %20558, i32 noundef %20559)
  %20560 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20560, ptr %48, align 4, !tbaa !9
  %20561 = load ptr, ptr %5, align 8, !tbaa !5
  %20562 = getelementptr inbounds %struct.w2c_hermes, ptr %20561, i32 0, i32 6
  %20563 = load i32, ptr %48, align 4, !tbaa !9
  %20564 = zext i32 %20563 to i64
  %20565 = add i64 %20564, 128
  %20566 = call i32 @i32_load(ptr noundef %20562, i64 noundef %20565)
  store i32 %20566, ptr %48, align 4, !tbaa !9
  %20567 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20567, ptr %16, align 4, !tbaa !9
  %20568 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20568, ptr %48, align 4, !tbaa !9
  %20569 = load ptr, ptr %5, align 8, !tbaa !5
  %20570 = getelementptr inbounds %struct.w2c_hermes, ptr %20569, i32 0, i32 6
  %20571 = load i32, ptr %48, align 4, !tbaa !9
  %20572 = zext i32 %20571 to i64
  %20573 = add i64 %20572, 132
  %20574 = call i32 @i32_load(ptr noundef %20570, i64 noundef %20573)
  store i32 %20574, ptr %48, align 4, !tbaa !9
  %20575 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20575, ptr %18, align 4, !tbaa !9
  %20576 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20576, ptr %48, align 4, !tbaa !9
  %20577 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %20577, ptr %49, align 4, !tbaa !9
  %20578 = load ptr, ptr %5, align 8, !tbaa !5
  %20579 = load i32, ptr %48, align 4, !tbaa !9
  %20580 = load i32, ptr %49, align 4, !tbaa !9
  %20581 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadStackInst0x28hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef %20578, i32 noundef %20579, i32 noundef %20580)
  store i32 %20581, ptr %48, align 4, !tbaa !9
  %20582 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20582, ptr %9, align 4, !tbaa !9
  %20583 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20583, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %20584 = load ptr, ptr %5, align 8, !tbaa !5
  %20585 = getelementptr inbounds %struct.w2c_hermes, ptr %20584, i32 0, i32 6
  %20586 = load i32, ptr %48, align 4, !tbaa !9
  %20587 = zext i32 %20586 to i64
  %20588 = add i64 %20587, 124
  %20589 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20585, i64 noundef %20588, i32 noundef %20589)
  %20590 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20590, ptr %48, align 4, !tbaa !9
  %20591 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20591, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %20592 = load i32, ptr %50, align 4, !tbaa !9
  %20593 = load i32, ptr %49, align 4, !tbaa !9
  %20594 = add i32 %20593, %20592
  store i32 %20594, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %20595 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20595, ptr %51, align 4, !tbaa !9
  %20596 = load i32, ptr %51, align 4, !tbaa !9
  %20597 = icmp ne i32 %20596, 0
  br i1 %20597, label %20598, label %20600

20598:                                            ; preds = %20552
  %20599 = load i32, ptr %49, align 4, !tbaa !9
  br label %20602

20600:                                            ; preds = %20552
  %20601 = load i32, ptr %50, align 4, !tbaa !9
  br label %20602

20602:                                            ; preds = %20600, %20598
  %20603 = phi i32 [ %20599, %20598 ], [ %20601, %20600 ]
  store i32 %20603, ptr %49, align 4, !tbaa !9
  %20604 = load ptr, ptr %5, align 8, !tbaa !5
  %20605 = getelementptr inbounds %struct.w2c_hermes, ptr %20604, i32 0, i32 6
  %20606 = load i32, ptr %48, align 4, !tbaa !9
  %20607 = zext i32 %20606 to i64
  %20608 = add i64 %20607, 136
  %20609 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20605, i64 noundef %20608, i32 noundef %20609)
  %20610 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20610, ptr %48, align 4, !tbaa !9
  %20611 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20611, ptr %49, align 4, !tbaa !9
  store i32 136, ptr %50, align 4, !tbaa !9
  %20612 = load i32, ptr %50, align 4, !tbaa !9
  %20613 = load i32, ptr %49, align 4, !tbaa !9
  %20614 = add i32 %20613, %20612
  store i32 %20614, ptr %49, align 4, !tbaa !9
  %20615 = load ptr, ptr %5, align 8, !tbaa !5
  %20616 = getelementptr inbounds %struct.w2c_hermes, ptr %20615, i32 0, i32 6
  %20617 = load i32, ptr %48, align 4, !tbaa !9
  %20618 = zext i32 %20617 to i64
  %20619 = add i64 %20618, 120
  %20620 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20616, i64 noundef %20619, i32 noundef %20620)
  %20621 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20621, ptr %48, align 4, !tbaa !9
  %20622 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20622, ptr %49, align 4, !tbaa !9
  %20623 = load ptr, ptr %5, align 8, !tbaa !5
  %20624 = getelementptr inbounds %struct.w2c_hermes, ptr %20623, i32 0, i32 6
  %20625 = load i32, ptr %49, align 4, !tbaa !9
  %20626 = zext i32 %20625 to i64
  %20627 = add i64 %20626, 120
  %20628 = call i64 @i64_load(ptr noundef %20624, i64 noundef %20627)
  store i64 %20628, ptr %59, align 8, !tbaa !11
  %20629 = load ptr, ptr %5, align 8, !tbaa !5
  %20630 = getelementptr inbounds %struct.w2c_hermes, ptr %20629, i32 0, i32 6
  %20631 = load i32, ptr %48, align 4, !tbaa !9
  %20632 = zext i32 %20631 to i64
  %20633 = add i64 %20632, 80
  %20634 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20630, i64 noundef %20633, i64 noundef %20634)
  %20635 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20635, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %20636 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %20636, ptr %50, align 4, !tbaa !9
  %20637 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %20637, ptr %51, align 4, !tbaa !9
  %20638 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20638, ptr %52, align 4, !tbaa !9
  store i32 80, ptr %53, align 4, !tbaa !9
  %20639 = load i32, ptr %53, align 4, !tbaa !9
  %20640 = load i32, ptr %52, align 4, !tbaa !9
  %20641 = add i32 %20640, %20639
  store i32 %20641, ptr %52, align 4, !tbaa !9
  %20642 = load ptr, ptr %5, align 8, !tbaa !5
  %20643 = load i32, ptr %48, align 4, !tbaa !9
  %20644 = load i32, ptr %49, align 4, !tbaa !9
  %20645 = load i32, ptr %50, align 4, !tbaa !9
  %20646 = load i32, ptr %51, align 4, !tbaa !9
  %20647 = load i32, ptr %52, align 4, !tbaa !9
  %20648 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %20642, i32 noundef %20643, i32 noundef %20644, i32 noundef %20645, i32 noundef %20646, i32 noundef %20647)
  store i32 %20648, ptr %48, align 4, !tbaa !9
  %20649 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20649, ptr %9, align 4, !tbaa !9
  %20650 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20650, ptr %48, align 4, !tbaa !9
  store i32 40, ptr %49, align 4, !tbaa !9
  %20651 = load ptr, ptr %5, align 8, !tbaa !5
  %20652 = getelementptr inbounds %struct.w2c_hermes, ptr %20651, i32 0, i32 6
  %20653 = load i32, ptr %48, align 4, !tbaa !9
  %20654 = zext i32 %20653 to i64
  %20655 = add i64 %20654, 116
  %20656 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20652, i64 noundef %20655, i32 noundef %20656)
  %20657 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20657, ptr %48, align 4, !tbaa !9
  store i32 31418, ptr %49, align 4, !tbaa !9
  %20658 = load ptr, ptr %5, align 8, !tbaa !5
  %20659 = getelementptr inbounds %struct.w2c_hermes, ptr %20658, i32 0, i32 6
  %20660 = load i32, ptr %48, align 4, !tbaa !9
  %20661 = zext i32 %20660 to i64
  %20662 = add i64 %20661, 112
  %20663 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20659, i64 noundef %20662, i32 noundef %20663)
  %20664 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20664, ptr %48, align 4, !tbaa !9
  %20665 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20665, ptr %49, align 4, !tbaa !9
  %20666 = load ptr, ptr %5, align 8, !tbaa !5
  %20667 = getelementptr inbounds %struct.w2c_hermes, ptr %20666, i32 0, i32 6
  %20668 = load i32, ptr %49, align 4, !tbaa !9
  %20669 = zext i32 %20668 to i64
  %20670 = add i64 %20669, 112
  %20671 = call i64 @i64_load(ptr noundef %20667, i64 noundef %20670)
  store i64 %20671, ptr %59, align 8, !tbaa !11
  %20672 = load ptr, ptr %5, align 8, !tbaa !5
  %20673 = getelementptr inbounds %struct.w2c_hermes, ptr %20672, i32 0, i32 6
  %20674 = load i32, ptr %48, align 4, !tbaa !9
  %20675 = zext i32 %20674 to i64
  %20676 = add i64 %20675, 72
  %20677 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20673, i64 noundef %20676, i64 noundef %20677)
  %20678 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20678, ptr %48, align 4, !tbaa !9
  %20679 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20679, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %20680 = load i32, ptr %50, align 4, !tbaa !9
  %20681 = load i32, ptr %49, align 4, !tbaa !9
  %20682 = add i32 %20681, %20680
  store i32 %20682, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %20683 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20683, ptr %51, align 4, !tbaa !9
  %20684 = load i32, ptr %51, align 4, !tbaa !9
  %20685 = icmp ne i32 %20684, 0
  br i1 %20685, label %20686, label %20688

20686:                                            ; preds = %20602
  %20687 = load i32, ptr %49, align 4, !tbaa !9
  br label %20690

20688:                                            ; preds = %20602
  %20689 = load i32, ptr %50, align 4, !tbaa !9
  br label %20690

20690:                                            ; preds = %20688, %20686
  %20691 = phi i32 [ %20687, %20686 ], [ %20689, %20688 ]
  store i32 %20691, ptr %49, align 4, !tbaa !9
  %20692 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %20692, ptr %18, align 4, !tbaa !9
  %20693 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20693, ptr %50, align 4, !tbaa !9
  store i32 72, ptr %51, align 4, !tbaa !9
  %20694 = load i32, ptr %51, align 4, !tbaa !9
  %20695 = load i32, ptr %50, align 4, !tbaa !9
  %20696 = add i32 %20695, %20694
  store i32 %20696, ptr %50, align 4, !tbaa !9
  %20697 = load ptr, ptr %5, align 8, !tbaa !5
  %20698 = load i32, ptr %48, align 4, !tbaa !9
  %20699 = load i32, ptr %49, align 4, !tbaa !9
  %20700 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitEnsureObject0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef %20697, i32 noundef %20698, i32 noundef %20699, i32 noundef %20700)
  %20701 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20701, ptr %48, align 4, !tbaa !9
  %20702 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %20702, ptr %49, align 4, !tbaa !9
  %20703 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %20703, ptr %50, align 4, !tbaa !9
  %20704 = load ptr, ptr %5, align 8, !tbaa !5
  %20705 = load i32, ptr %48, align 4, !tbaa !9
  %20706 = load i32, ptr %49, align 4, !tbaa !9
  %20707 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef %20704, i32 noundef %20705, i32 noundef %20706, i32 noundef %20707)
  %20708 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20708, ptr %48, align 4, !tbaa !9
  %20709 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20709, ptr %49, align 4, !tbaa !9
  %20710 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %20710, ptr %50, align 4, !tbaa !9
  %20711 = load ptr, ptr %5, align 8, !tbaa !5
  %20712 = load i32, ptr %49, align 4, !tbaa !9
  %20713 = load i32, ptr %50, align 4, !tbaa !9
  %20714 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitIteratorCompleteSlow0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %20711, i32 noundef %20712, i32 noundef %20713)
  store i32 %20714, ptr %49, align 4, !tbaa !9
  %20715 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %20715, ptr %50, align 4, !tbaa !9
  %20716 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20716, ptr %51, align 4, !tbaa !9
  %20717 = load ptr, ptr %5, align 8, !tbaa !5
  %20718 = load i32, ptr %48, align 4, !tbaa !9
  %20719 = load i32, ptr %49, align 4, !tbaa !9
  %20720 = load i32, ptr %50, align 4, !tbaa !9
  %20721 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %20717, i32 noundef %20718, i32 noundef %20719, i32 noundef %20720, i32 noundef %20721)
  %20722 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20722, ptr %48, align 4, !tbaa !9
  %20723 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20723, ptr %49, align 4, !tbaa !9
  %20724 = load ptr, ptr %5, align 8, !tbaa !5
  %20725 = getelementptr inbounds %struct.w2c_hermes, ptr %20724, i32 0, i32 6
  %20726 = load i32, ptr %48, align 4, !tbaa !9
  %20727 = zext i32 %20726 to i64
  %20728 = add i64 %20727, 8
  %20729 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20725, i64 noundef %20728, i32 noundef %20729)
  %20730 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20730, ptr %48, align 4, !tbaa !9
  %20731 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20731, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %20732 = load i32, ptr %50, align 4, !tbaa !9
  %20733 = load i32, ptr %49, align 4, !tbaa !9
  %20734 = add i32 %20733, %20732
  store i32 %20734, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %20735 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20735, ptr %51, align 4, !tbaa !9
  %20736 = load i32, ptr %51, align 4, !tbaa !9
  %20737 = icmp ne i32 %20736, 0
  br i1 %20737, label %20738, label %20740

20738:                                            ; preds = %20690
  %20739 = load i32, ptr %49, align 4, !tbaa !9
  br label %20742

20740:                                            ; preds = %20690
  %20741 = load i32, ptr %50, align 4, !tbaa !9
  br label %20742

20742:                                            ; preds = %20740, %20738
  %20743 = phi i32 [ %20739, %20738 ], [ %20741, %20740 ]
  store i32 %20743, ptr %49, align 4, !tbaa !9
  %20744 = load ptr, ptr %5, align 8, !tbaa !5
  %20745 = getelementptr inbounds %struct.w2c_hermes, ptr %20744, i32 0, i32 6
  %20746 = load i32, ptr %48, align 4, !tbaa !9
  %20747 = zext i32 %20746 to i64
  %20748 = add i64 %20747, 4
  %20749 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20745, i64 noundef %20748, i32 noundef %20749)
  %20750 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20750, ptr %48, align 4, !tbaa !9
  %20751 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20751, ptr %49, align 4, !tbaa !9
  %20752 = load ptr, ptr %5, align 8, !tbaa !5
  %20753 = getelementptr inbounds %struct.w2c_hermes, ptr %20752, i32 0, i32 6
  %20754 = load i32, ptr %49, align 4, !tbaa !9
  %20755 = zext i32 %20754 to i64
  %20756 = add i64 %20755, 12
  %20757 = call i32 @i32_load(ptr noundef %20753, i64 noundef %20756)
  store i32 %20757, ptr %49, align 4, !tbaa !9
  %20758 = load ptr, ptr %5, align 8, !tbaa !5
  %20759 = getelementptr inbounds %struct.w2c_hermes, ptr %20758, i32 0, i32 6
  %20760 = load i32, ptr %49, align 4, !tbaa !9
  %20761 = zext i32 %20760 to i64
  %20762 = add i64 %20761, 44
  %20763 = call i32 @i32_load(ptr noundef %20759, i64 noundef %20762)
  store i32 %20763, ptr %49, align 4, !tbaa !9
  %20764 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %20764, ptr %19, align 4, !tbaa !9
  %20765 = load ptr, ptr %5, align 8, !tbaa !5
  %20766 = load i32, ptr %48, align 4, !tbaa !9
  %20767 = load i32, ptr %49, align 4, !tbaa !9
  %20768 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %20765, i32 noundef %20766, i32 noundef %20767)
  store i32 %20768, ptr %48, align 4, !tbaa !9
  %20769 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20769, ptr %16, align 4, !tbaa !9
  %20770 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %20770, ptr %48, align 4, !tbaa !9
  %20771 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20771, ptr %9, align 4, !tbaa !9
  %20772 = load i32, ptr %48, align 4, !tbaa !9
  %20773 = icmp ne i32 %20772, 0
  %20774 = xor i1 %20773, true
  %20775 = zext i1 %20774 to i32
  store i32 %20775, ptr %48, align 4, !tbaa !9
  %20776 = load i32, ptr %48, align 4, !tbaa !9
  %20777 = icmp ne i32 %20776, 0
  br i1 %20777, label %20778, label %20786

20778:                                            ; preds = %20742
  %20779 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20779, ptr %48, align 4, !tbaa !9
  %20780 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %20780, ptr %49, align 4, !tbaa !9
  %20781 = load ptr, ptr %5, align 8, !tbaa !5
  %20782 = load i32, ptr %48, align 4, !tbaa !9
  %20783 = load i32, ptr %49, align 4, !tbaa !9
  %20784 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %20781, i32 noundef %20782, i32 noundef %20783)
  store i32 %20784, ptr %48, align 4, !tbaa !9
  %20785 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20785, ptr %9, align 4, !tbaa !9
  br label %20786

20786:                                            ; preds = %20778, %20742
  %20787 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20787, ptr %48, align 4, !tbaa !9
  %20788 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20788, ptr %49, align 4, !tbaa !9
  %20789 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %20789, ptr %50, align 4, !tbaa !9
  %20790 = load ptr, ptr %5, align 8, !tbaa !5
  %20791 = load i32, ptr %49, align 4, !tbaa !9
  %20792 = load i32, ptr %50, align 4, !tbaa !9
  %20793 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %20790, i32 noundef %20791, i32 noundef %20792)
  store i32 %20793, ptr %49, align 4, !tbaa !9
  %20794 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %20794, ptr %15, align 4, !tbaa !9
  %20795 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %20795, ptr %50, align 4, !tbaa !9
  %20796 = load ptr, ptr %5, align 8, !tbaa !5
  %20797 = load i32, ptr %48, align 4, !tbaa !9
  %20798 = load i32, ptr %49, align 4, !tbaa !9
  %20799 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryStartInst0x28hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %20796, i32 noundef %20797, i32 noundef %20798, i32 noundef %20799)
  %20800 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20800, ptr %48, align 4, !tbaa !9
  %20801 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20801, ptr %49, align 4, !tbaa !9
  %20802 = load ptr, ptr %5, align 8, !tbaa !5
  %20803 = getelementptr inbounds %struct.w2c_hermes, ptr %20802, i32 0, i32 6
  %20804 = load i32, ptr %48, align 4, !tbaa !9
  %20805 = zext i32 %20804 to i64
  %20806 = add i64 %20805, 8
  %20807 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20803, i64 noundef %20806, i32 noundef %20807)
  %20808 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20808, ptr %48, align 4, !tbaa !9
  %20809 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20809, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %20810 = load i32, ptr %50, align 4, !tbaa !9
  %20811 = load i32, ptr %49, align 4, !tbaa !9
  %20812 = add i32 %20811, %20810
  store i32 %20812, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %20813 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20813, ptr %51, align 4, !tbaa !9
  %20814 = load i32, ptr %51, align 4, !tbaa !9
  %20815 = icmp ne i32 %20814, 0
  br i1 %20815, label %20816, label %20818

20816:                                            ; preds = %20786
  %20817 = load i32, ptr %49, align 4, !tbaa !9
  br label %20820

20818:                                            ; preds = %20786
  %20819 = load i32, ptr %50, align 4, !tbaa !9
  br label %20820

20820:                                            ; preds = %20818, %20816
  %20821 = phi i32 [ %20817, %20816 ], [ %20819, %20818 ]
  store i32 %20821, ptr %49, align 4, !tbaa !9
  %20822 = load ptr, ptr %5, align 8, !tbaa !5
  %20823 = getelementptr inbounds %struct.w2c_hermes, ptr %20822, i32 0, i32 6
  %20824 = load i32, ptr %48, align 4, !tbaa !9
  %20825 = zext i32 %20824 to i64
  %20826 = add i64 %20825, 4
  %20827 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20823, i64 noundef %20826, i32 noundef %20827)
  %20828 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20828, ptr %48, align 4, !tbaa !9
  %20829 = load ptr, ptr %5, align 8, !tbaa !5
  %20830 = getelementptr inbounds %struct.w2c_hermes, ptr %20829, i32 0, i32 6
  %20831 = load i32, ptr %48, align 4, !tbaa !9
  %20832 = zext i32 %20831 to i64
  %20833 = add i64 %20832, 40
  %20834 = call i32 @i32_load(ptr noundef %20830, i64 noundef %20833)
  store i32 %20834, ptr %48, align 4, !tbaa !9
  %20835 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20835, ptr %20, align 4, !tbaa !9
  store i32 20, ptr %48, align 4, !tbaa !9
  %20836 = load ptr, ptr %5, align 8, !tbaa !5
  %20837 = load i32, ptr %48, align 4, !tbaa !9
  %20838 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %20836, i32 noundef %20837)
  store i32 %20838, ptr %48, align 4, !tbaa !9
  %20839 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20839, ptr %15, align 4, !tbaa !9
  %20840 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20840, ptr %49, align 4, !tbaa !9
  %20841 = load ptr, ptr %5, align 8, !tbaa !5
  %20842 = getelementptr inbounds %struct.w2c_hermes, ptr %20841, i32 0, i32 6
  %20843 = load i32, ptr %48, align 4, !tbaa !9
  %20844 = zext i32 %20843 to i64
  %20845 = add i64 %20844, 4
  %20846 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20842, i64 noundef %20845, i32 noundef %20846)
  %20847 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20847, ptr %48, align 4, !tbaa !9
  store i32 111668, ptr %49, align 4, !tbaa !9
  %20848 = load ptr, ptr %5, align 8, !tbaa !5
  %20849 = getelementptr inbounds %struct.w2c_hermes, ptr %20848, i32 0, i32 6
  %20850 = load i32, ptr %48, align 4, !tbaa !9
  %20851 = zext i32 %20850 to i64
  %20852 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20849, i64 noundef %20851, i32 noundef %20852)
  %20853 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20853, ptr %48, align 4, !tbaa !9
  %20854 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %20854, ptr %49, align 4, !tbaa !9
  %20855 = load ptr, ptr %5, align 8, !tbaa !5
  %20856 = getelementptr inbounds %struct.w2c_hermes, ptr %20855, i32 0, i32 6
  %20857 = load i32, ptr %48, align 4, !tbaa !9
  %20858 = zext i32 %20857 to i64
  %20859 = add i64 %20858, 12
  %20860 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20856, i64 noundef %20859, i32 noundef %20860)
  %20861 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20861, ptr %48, align 4, !tbaa !9
  %20862 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %20862, ptr %49, align 4, !tbaa !9
  %20863 = load ptr, ptr %5, align 8, !tbaa !5
  %20864 = getelementptr inbounds %struct.w2c_hermes, ptr %20863, i32 0, i32 6
  %20865 = load i32, ptr %48, align 4, !tbaa !9
  %20866 = zext i32 %20865 to i64
  %20867 = add i64 %20866, 8
  %20868 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20864, i64 noundef %20867, i32 noundef %20868)
  %20869 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20869, ptr %48, align 4, !tbaa !9
  %20870 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20870, ptr %49, align 4, !tbaa !9
  store i32 128, ptr %50, align 4, !tbaa !9
  %20871 = load i32, ptr %50, align 4, !tbaa !9
  %20872 = load i32, ptr %49, align 4, !tbaa !9
  %20873 = add i32 %20872, %20871
  store i32 %20873, ptr %49, align 4, !tbaa !9
  %20874 = load ptr, ptr %5, align 8, !tbaa !5
  %20875 = getelementptr inbounds %struct.w2c_hermes, ptr %20874, i32 0, i32 6
  %20876 = load i32, ptr %48, align 4, !tbaa !9
  %20877 = zext i32 %20876 to i64
  %20878 = add i64 %20877, 16
  %20879 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20875, i64 noundef %20878, i32 noundef %20879)
  %20880 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20880, ptr %48, align 4, !tbaa !9
  %20881 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %20881, ptr %49, align 4, !tbaa !9
  %20882 = load ptr, ptr %5, align 8, !tbaa !5
  %20883 = getelementptr inbounds %struct.w2c_hermes, ptr %20882, i32 0, i32 6
  %20884 = load i32, ptr %48, align 4, !tbaa !9
  %20885 = zext i32 %20884 to i64
  %20886 = add i64 %20885, 136
  %20887 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20883, i64 noundef %20886, i32 noundef %20887)
  %20888 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %20888, ptr %48, align 4, !tbaa !9
  %20889 = load ptr, ptr %5, align 8, !tbaa !5
  %20890 = getelementptr inbounds %struct.w2c_hermes, ptr %20889, i32 0, i32 6
  %20891 = load i32, ptr %48, align 4, !tbaa !9
  %20892 = zext i32 %20891 to i64
  %20893 = add i64 %20892, 64
  %20894 = call i32 @i32_load(ptr noundef %20890, i64 noundef %20893)
  store i32 %20894, ptr %48, align 4, !tbaa !9
  %20895 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %20895, ptr %24, align 4, !tbaa !9
  %20896 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20896, ptr %48, align 4, !tbaa !9
  %20897 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %20897, ptr %49, align 4, !tbaa !9
  %20898 = load ptr, ptr %5, align 8, !tbaa !5
  %20899 = getelementptr inbounds %struct.w2c_hermes, ptr %20898, i32 0, i32 6
  %20900 = load i32, ptr %48, align 4, !tbaa !9
  %20901 = zext i32 %20900 to i64
  %20902 = add i64 %20901, 168
  %20903 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20899, i64 noundef %20902, i32 noundef %20903)
  %20904 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20904, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %20905 = load ptr, ptr %5, align 8, !tbaa !5
  %20906 = getelementptr inbounds %struct.w2c_hermes, ptr %20905, i32 0, i32 6
  %20907 = load i32, ptr %48, align 4, !tbaa !9
  %20908 = zext i32 %20907 to i64
  %20909 = add i64 %20908, 148
  %20910 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20906, i64 noundef %20909, i32 noundef %20910)
  %20911 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20911, ptr %48, align 4, !tbaa !9
  %20912 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %20912, ptr %49, align 4, !tbaa !9
  %20913 = load ptr, ptr %5, align 8, !tbaa !5
  %20914 = getelementptr inbounds %struct.w2c_hermes, ptr %20913, i32 0, i32 6
  %20915 = load i32, ptr %48, align 4, !tbaa !9
  %20916 = zext i32 %20915 to i64
  %20917 = add i64 %20916, 144
  %20918 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20914, i64 noundef %20917, i32 noundef %20918)
  %20919 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20919, ptr %48, align 4, !tbaa !9
  %20920 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %20920, ptr %49, align 4, !tbaa !9
  %20921 = load ptr, ptr %5, align 8, !tbaa !5
  %20922 = getelementptr inbounds %struct.w2c_hermes, ptr %20921, i32 0, i32 6
  %20923 = load i32, ptr %48, align 4, !tbaa !9
  %20924 = zext i32 %20923 to i64
  %20925 = add i64 %20924, 140
  %20926 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20922, i64 noundef %20925, i32 noundef %20926)
  %20927 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %20927, ptr %48, align 4, !tbaa !9
  %20928 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20928, ptr %49, align 4, !tbaa !9
  store i32 136, ptr %50, align 4, !tbaa !9
  %20929 = load i32, ptr %50, align 4, !tbaa !9
  %20930 = load i32, ptr %49, align 4, !tbaa !9
  %20931 = add i32 %20930, %20929
  store i32 %20931, ptr %49, align 4, !tbaa !9
  %20932 = load ptr, ptr %5, align 8, !tbaa !5
  %20933 = getelementptr inbounds %struct.w2c_hermes, ptr %20932, i32 0, i32 6
  %20934 = load i32, ptr %48, align 4, !tbaa !9
  %20935 = zext i32 %20934 to i64
  %20936 = add i64 %20935, 64
  %20937 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20933, i64 noundef %20936, i32 noundef %20937)
  %20938 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20938, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %20939 = load ptr, ptr %5, align 8, !tbaa !5
  %20940 = getelementptr inbounds %struct.w2c_hermes, ptr %20939, i32 0, i32 6
  %20941 = load i32, ptr %48, align 4, !tbaa !9
  %20942 = zext i32 %20941 to i64
  %20943 = add i64 %20942, 64
  %20944 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20940, i64 noundef %20943, i64 noundef %20944)
  %20945 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20945, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %20946 = load ptr, ptr %5, align 8, !tbaa !5
  %20947 = getelementptr inbounds %struct.w2c_hermes, ptr %20946, i32 0, i32 6
  %20948 = load i32, ptr %48, align 4, !tbaa !9
  %20949 = zext i32 %20948 to i64
  %20950 = add i64 %20949, 232
  %20951 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20947, i64 noundef %20950, i64 noundef %20951)
  %20952 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20952, ptr %48, align 4, !tbaa !9
  store i32 43, ptr %49, align 4, !tbaa !9
  %20953 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20953, ptr %50, align 4, !tbaa !9
  store i32 -64, ptr %51, align 4, !tbaa !9
  %20954 = load i32, ptr %51, align 4, !tbaa !9
  %20955 = load i32, ptr %50, align 4, !tbaa !9
  %20956 = sub i32 %20955, %20954
  store i32 %20956, ptr %50, align 4, !tbaa !9
  %20957 = load ptr, ptr %5, align 8, !tbaa !5
  %20958 = load i32, ptr %48, align 4, !tbaa !9
  %20959 = load i32, ptr %49, align 4, !tbaa !9
  %20960 = load i32, ptr %50, align 4, !tbaa !9
  %20961 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %20957, i32 noundef %20958, i32 noundef %20959, i32 noundef %20960)
  store i32 %20961, ptr %48, align 4, !tbaa !9
  %20962 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20962, ptr %48, align 4, !tbaa !9
  %20963 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %20963, ptr %49, align 4, !tbaa !9
  %20964 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %20964, ptr %50, align 4, !tbaa !9
  %20965 = load ptr, ptr %5, align 8, !tbaa !5
  %20966 = load i32, ptr %48, align 4, !tbaa !9
  %20967 = load i32, ptr %49, align 4, !tbaa !9
  %20968 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateSaveAndYieldInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %20965, i32 noundef %20966, i32 noundef %20967, i32 noundef %20968)
  %20969 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20969, ptr %48, align 4, !tbaa !9
  %20970 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %20970, ptr %49, align 4, !tbaa !9
  %20971 = load ptr, ptr %5, align 8, !tbaa !5
  %20972 = getelementptr inbounds %struct.w2c_hermes, ptr %20971, i32 0, i32 6
  %20973 = load i32, ptr %48, align 4, !tbaa !9
  %20974 = zext i32 %20973 to i64
  %20975 = add i64 %20974, 8
  %20976 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20972, i64 noundef %20975, i32 noundef %20976)
  %20977 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20977, ptr %48, align 4, !tbaa !9
  %20978 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %20978, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %20979 = load i32, ptr %50, align 4, !tbaa !9
  %20980 = load i32, ptr %49, align 4, !tbaa !9
  %20981 = add i32 %20980, %20979
  store i32 %20981, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %20982 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %20982, ptr %51, align 4, !tbaa !9
  %20983 = load i32, ptr %51, align 4, !tbaa !9
  %20984 = icmp ne i32 %20983, 0
  br i1 %20984, label %20985, label %20987

20985:                                            ; preds = %20820
  %20986 = load i32, ptr %49, align 4, !tbaa !9
  br label %20989

20987:                                            ; preds = %20820
  %20988 = load i32, ptr %50, align 4, !tbaa !9
  br label %20989

20989:                                            ; preds = %20987, %20985
  %20990 = phi i32 [ %20986, %20985 ], [ %20988, %20987 ]
  store i32 %20990, ptr %49, align 4, !tbaa !9
  %20991 = load ptr, ptr %5, align 8, !tbaa !5
  %20992 = getelementptr inbounds %struct.w2c_hermes, ptr %20991, i32 0, i32 6
  %20993 = load i32, ptr %48, align 4, !tbaa !9
  %20994 = zext i32 %20993 to i64
  %20995 = add i64 %20994, 4
  %20996 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20992, i64 noundef %20995, i32 noundef %20996)
  %20997 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20997, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %20998 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %20998, ptr %50, align 4, !tbaa !9
  %20999 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %20999, ptr %51, align 4, !tbaa !9
  %21000 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %21000, ptr %52, align 4, !tbaa !9
  %21001 = load ptr, ptr %5, align 8, !tbaa !5
  %21002 = load i32, ptr %48, align 4, !tbaa !9
  %21003 = load i32, ptr %49, align 4, !tbaa !9
  %21004 = load i32, ptr %50, align 4, !tbaa !9
  %21005 = load i32, ptr %51, align 4, !tbaa !9
  %21006 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenResumeGenerator0x28hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AGenFinally0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef %21001, i32 noundef %21002, i32 noundef %21003, i32 noundef %21004, i32 noundef %21005, i32 noundef %21006)
  %21007 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21007, ptr %48, align 4, !tbaa !9
  %21008 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21008, ptr %49, align 4, !tbaa !9
  %21009 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21009, ptr %50, align 4, !tbaa !9
  %21010 = load ptr, ptr %5, align 8, !tbaa !5
  %21011 = getelementptr inbounds %struct.w2c_hermes, ptr %21010, i32 0, i32 6
  %21012 = load i32, ptr %50, align 4, !tbaa !9
  %21013 = zext i32 %21012 to i64
  %21014 = add i64 %21013, 12
  %21015 = call i32 @i32_load(ptr noundef %21011, i64 noundef %21014)
  store i32 %21015, ptr %50, align 4, !tbaa !9
  %21016 = load ptr, ptr %5, align 8, !tbaa !5
  %21017 = getelementptr inbounds %struct.w2c_hermes, ptr %21016, i32 0, i32 6
  %21018 = load i32, ptr %50, align 4, !tbaa !9
  %21019 = zext i32 %21018 to i64
  %21020 = add i64 %21019, 44
  %21021 = call i32 @i32_load(ptr noundef %21017, i64 noundef %21020)
  store i32 %21021, ptr %50, align 4, !tbaa !9
  %21022 = load ptr, ptr %5, align 8, !tbaa !5
  %21023 = load i32, ptr %49, align 4, !tbaa !9
  %21024 = load i32, ptr %50, align 4, !tbaa !9
  %21025 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %21022, i32 noundef %21023, i32 noundef %21024)
  store i32 %21025, ptr %49, align 4, !tbaa !9
  %21026 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %21026, ptr %7, align 4, !tbaa !9
  %21027 = load ptr, ptr %5, align 8, !tbaa !5
  %21028 = getelementptr inbounds %struct.w2c_hermes, ptr %21027, i32 0, i32 6
  %21029 = load i32, ptr %48, align 4, !tbaa !9
  %21030 = zext i32 %21029 to i64
  %21031 = add i64 %21030, 8
  %21032 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21028, i64 noundef %21031, i32 noundef %21032)
  %21033 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21033, ptr %48, align 4, !tbaa !9
  %21034 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21034, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %21035 = load i32, ptr %50, align 4, !tbaa !9
  %21036 = load i32, ptr %49, align 4, !tbaa !9
  %21037 = add i32 %21036, %21035
  store i32 %21037, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21038 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21038, ptr %51, align 4, !tbaa !9
  %21039 = load i32, ptr %51, align 4, !tbaa !9
  %21040 = icmp ne i32 %21039, 0
  br i1 %21040, label %21041, label %21043

21041:                                            ; preds = %20989
  %21042 = load i32, ptr %49, align 4, !tbaa !9
  br label %21045

21043:                                            ; preds = %20989
  %21044 = load i32, ptr %50, align 4, !tbaa !9
  br label %21045

21045:                                            ; preds = %21043, %21041
  %21046 = phi i32 [ %21042, %21041 ], [ %21044, %21043 ]
  store i32 %21046, ptr %49, align 4, !tbaa !9
  %21047 = load ptr, ptr %5, align 8, !tbaa !5
  %21048 = getelementptr inbounds %struct.w2c_hermes, ptr %21047, i32 0, i32 6
  %21049 = load i32, ptr %48, align 4, !tbaa !9
  %21050 = zext i32 %21049 to i64
  %21051 = add i64 %21050, 4
  %21052 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21048, i64 noundef %21051, i32 noundef %21052)
  %21053 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21053, ptr %48, align 4, !tbaa !9
  %21054 = load ptr, ptr %5, align 8, !tbaa !5
  %21055 = getelementptr inbounds %struct.w2c_hermes, ptr %21054, i32 0, i32 6
  %21056 = load i32, ptr %48, align 4, !tbaa !9
  %21057 = zext i32 %21056 to i64
  %21058 = add i64 %21057, 136
  %21059 = call i32 @i32_load(ptr noundef %21055, i64 noundef %21058)
  store i32 %21059, ptr %48, align 4, !tbaa !9
  %21060 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21060, ptr %49, align 4, !tbaa !9
  %21061 = load ptr, ptr %5, align 8, !tbaa !5
  %21062 = getelementptr inbounds %struct.w2c_hermes, ptr %21061, i32 0, i32 6
  %21063 = load i32, ptr %49, align 4, !tbaa !9
  %21064 = zext i32 %21063 to i64
  %21065 = add i64 %21064, 140
  %21066 = call i32 @i32_load(ptr noundef %21062, i64 noundef %21065)
  store i32 %21066, ptr %49, align 4, !tbaa !9
  %21067 = load ptr, ptr %5, align 8, !tbaa !5
  %21068 = getelementptr inbounds %struct.w2c_hermes, ptr %21067, i32 0, i32 6
  %21069 = load i32, ptr %48, align 4, !tbaa !9
  %21070 = zext i32 %21069 to i64
  %21071 = add i64 %21070, 64
  %21072 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21068, i64 noundef %21071, i32 noundef %21072)
  %21073 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21073, ptr %48, align 4, !tbaa !9
  %21074 = load ptr, ptr %5, align 8, !tbaa !5
  %21075 = getelementptr inbounds %struct.w2c_hermes, ptr %21074, i32 0, i32 6
  %21076 = load i32, ptr %48, align 4, !tbaa !9
  %21077 = zext i32 %21076 to i64
  %21078 = add i64 %21077, 168
  %21079 = call i32 @i32_load(ptr noundef %21075, i64 noundef %21078)
  store i32 %21079, ptr %48, align 4, !tbaa !9
  %21080 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21080, ptr %7, align 4, !tbaa !9
  %21081 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21081, ptr %49, align 4, !tbaa !9
  store i32 152, ptr %50, align 4, !tbaa !9
  %21082 = load i32, ptr %50, align 4, !tbaa !9
  %21083 = load i32, ptr %49, align 4, !tbaa !9
  %21084 = add i32 %21083, %21082
  store i32 %21084, ptr %49, align 4, !tbaa !9
  %21085 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %21085, ptr %8, align 4, !tbaa !9
  %21086 = load i32, ptr %48, align 4, !tbaa !9
  %21087 = load i32, ptr %49, align 4, !tbaa !9
  %21088 = icmp eq i32 %21086, %21087
  %21089 = zext i1 %21088 to i32
  store i32 %21089, ptr %48, align 4, !tbaa !9
  %21090 = load i32, ptr %48, align 4, !tbaa !9
  %21091 = icmp ne i32 %21090, 0
  br i1 %21091, label %21092, label %21103

21092:                                            ; preds = %21045
  %21093 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21093, ptr %48, align 4, !tbaa !9
  %21094 = load ptr, ptr %5, align 8, !tbaa !5
  %21095 = getelementptr inbounds %struct.w2c_hermes, ptr %21094, i32 0, i32 6
  %21096 = load i32, ptr %48, align 4, !tbaa !9
  %21097 = zext i32 %21096 to i64
  %21098 = add i64 %21097, 152
  %21099 = call i32 @i32_load(ptr noundef %21095, i64 noundef %21098)
  store i32 %21099, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %21100 = load i32, ptr %49, align 4, !tbaa !9
  %21101 = load i32, ptr %48, align 4, !tbaa !9
  %21102 = add i32 %21101, %21100
  store i32 %21102, ptr %48, align 4, !tbaa !9
  br label %21123

21103:                                            ; preds = %21045
  %21104 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21104, ptr %48, align 4, !tbaa !9
  %21105 = load i32, ptr %48, align 4, !tbaa !9
  %21106 = icmp ne i32 %21105, 0
  %21107 = xor i1 %21106, true
  %21108 = zext i1 %21107 to i32
  store i32 %21108, ptr %48, align 4, !tbaa !9
  %21109 = load i32, ptr %48, align 4, !tbaa !9
  %21110 = icmp ne i32 %21109, 0
  br i1 %21110, label %21111, label %21112

21111:                                            ; preds = %21103
  br label %21193

21112:                                            ; preds = %21103
  %21113 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21113, ptr %48, align 4, !tbaa !9
  %21114 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21114, ptr %8, align 4, !tbaa !9
  %21115 = load ptr, ptr %5, align 8, !tbaa !5
  %21116 = getelementptr inbounds %struct.w2c_hermes, ptr %21115, i32 0, i32 6
  %21117 = load i32, ptr %48, align 4, !tbaa !9
  %21118 = zext i32 %21117 to i64
  %21119 = call i32 @i32_load(ptr noundef %21116, i64 noundef %21118)
  store i32 %21119, ptr %48, align 4, !tbaa !9
  store i32 20, ptr %49, align 4, !tbaa !9
  %21120 = load i32, ptr %49, align 4, !tbaa !9
  %21121 = load i32, ptr %48, align 4, !tbaa !9
  %21122 = add i32 %21121, %21120
  store i32 %21122, ptr %48, align 4, !tbaa !9
  br label %21123

21123:                                            ; preds = %21112, %21092
  %21124 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21124, ptr %7, align 4, !tbaa !9
  %21125 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21125, ptr %48, align 4, !tbaa !9
  %21126 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21126, ptr %49, align 4, !tbaa !9
  %21127 = load ptr, ptr %5, align 8, !tbaa !5
  %21128 = getelementptr inbounds %struct.w2c_hermes, ptr %21127, i32 0, i32 6
  %21129 = load i32, ptr %49, align 4, !tbaa !9
  %21130 = zext i32 %21129 to i64
  %21131 = call i32 @i32_load(ptr noundef %21128, i64 noundef %21130)
  store i32 %21131, ptr %49, align 4, !tbaa !9
  %21132 = load i32, ptr %49, align 4, !tbaa !9
  %21133 = load ptr, ptr %5, align 8, !tbaa !5
  %21134 = getelementptr inbounds %struct.w2c_hermes, ptr %21133, i32 0, i32 7
  %21135 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21134, i32 0, i32 2
  %21136 = load i32, ptr %21135, align 4, !tbaa !22
  %21137 = icmp ult i32 %21132, %21136
  br i1 %21137, label %21138, label %21161

21138:                                            ; preds = %21123
  %21139 = load ptr, ptr %5, align 8, !tbaa !5
  %21140 = getelementptr inbounds %struct.w2c_hermes, ptr %21139, i32 0, i32 7
  %21141 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21140, i32 0, i32 0
  %21142 = load ptr, ptr %21141, align 8, !tbaa !23
  %21143 = load i32, ptr %49, align 4, !tbaa !9
  %21144 = zext i32 %21143 to i64
  %21145 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21142, i64 %21144
  %21146 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21145, i32 0, i32 1
  %21147 = load ptr, ptr %21146, align 8, !tbaa !24
  %21148 = icmp ne ptr %21147, null
  br i1 %21148, label %21149, label %21161

21149:                                            ; preds = %21138
  %21150 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %21151 = load ptr, ptr %5, align 8, !tbaa !5
  %21152 = getelementptr inbounds %struct.w2c_hermes, ptr %21151, i32 0, i32 7
  %21153 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21152, i32 0, i32 0
  %21154 = load ptr, ptr %21153, align 8, !tbaa !23
  %21155 = load i32, ptr %49, align 4, !tbaa !9
  %21156 = zext i32 %21155 to i64
  %21157 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21154, i64 %21156
  %21158 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21157, i32 0, i32 0
  %21159 = load ptr, ptr %21158, align 8, !tbaa !26
  %21160 = call zeroext i1 @func_types_eq(ptr noundef %21150, ptr noundef %21159)
  br label %21161

21161:                                            ; preds = %21149, %21138, %21123
  %21162 = phi i1 [ false, %21138 ], [ false, %21123 ], [ %21160, %21149 ]
  %21163 = xor i1 %21162, true
  %21164 = xor i1 %21163, true
  %21165 = zext i1 %21164 to i32
  %21166 = sext i32 %21165 to i64
  %21167 = call i64 @llvm.expect.i64(i64 %21166, i64 1)
  %21168 = icmp ne i64 %21167, 0
  br i1 %21168, label %21171, label %21169

21169:                                            ; preds = %21161
  call void @wasm_rt_trap(i32 noundef 6) #8
  unreachable

21170:                                            ; No predecessors!
  br label %21171

21171:                                            ; preds = %21170, %21161
  %21172 = phi i1 [ true, %21161 ], [ false, %21170 ]
  %21173 = zext i1 %21172 to i32
  %21174 = load ptr, ptr %5, align 8, !tbaa !5
  %21175 = getelementptr inbounds %struct.w2c_hermes, ptr %21174, i32 0, i32 7
  %21176 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21175, i32 0, i32 0
  %21177 = load ptr, ptr %21176, align 8, !tbaa !23
  %21178 = load i32, ptr %49, align 4, !tbaa !9
  %21179 = zext i32 %21178 to i64
  %21180 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21177, i64 %21179
  %21181 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21180, i32 0, i32 1
  %21182 = load ptr, ptr %21181, align 8, !tbaa !24
  %21183 = load ptr, ptr %5, align 8, !tbaa !5
  %21184 = getelementptr inbounds %struct.w2c_hermes, ptr %21183, i32 0, i32 7
  %21185 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21184, i32 0, i32 0
  %21186 = load ptr, ptr %21185, align 8, !tbaa !23
  %21187 = load i32, ptr %49, align 4, !tbaa !9
  %21188 = zext i32 %21187 to i64
  %21189 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21186, i64 %21188
  %21190 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21189, i32 0, i32 2
  %21191 = load ptr, ptr %21190, align 8, !tbaa !27
  %21192 = load i32, ptr %48, align 4, !tbaa !9
  call void %21182(ptr noundef %21191, i32 noundef %21192)
  br label %21193

21193:                                            ; preds = %21171, %21111
  %21194 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21194, ptr %48, align 4, !tbaa !9
  %21195 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21195, ptr %49, align 4, !tbaa !9
  %21196 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %21196, ptr %50, align 4, !tbaa !9
  %21197 = load ptr, ptr %5, align 8, !tbaa !5
  %21198 = load i32, ptr %49, align 4, !tbaa !9
  %21199 = load i32, ptr %50, align 4, !tbaa !9
  %21200 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %21197, i32 noundef %21198, i32 noundef %21199)
  store i32 %21200, ptr %49, align 4, !tbaa !9
  %21201 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %21201, ptr %7, align 4, !tbaa !9
  %21202 = load ptr, ptr %5, align 8, !tbaa !5
  %21203 = load i32, ptr %48, align 4, !tbaa !9
  %21204 = load i32, ptr %49, align 4, !tbaa !9
  %21205 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %21202, i32 noundef %21203, i32 noundef %21204)
  store i32 %21205, ptr %48, align 4, !tbaa !9
  %21206 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21206, ptr %48, align 4, !tbaa !9
  %21207 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21207, ptr %49, align 4, !tbaa !9
  %21208 = load ptr, ptr %5, align 8, !tbaa !5
  %21209 = getelementptr inbounds %struct.w2c_hermes, ptr %21208, i32 0, i32 6
  %21210 = load i32, ptr %48, align 4, !tbaa !9
  %21211 = zext i32 %21210 to i64
  %21212 = add i64 %21211, 8
  %21213 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21209, i64 noundef %21212, i32 noundef %21213)
  %21214 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21214, ptr %48, align 4, !tbaa !9
  %21215 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21215, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %21216 = load i32, ptr %50, align 4, !tbaa !9
  %21217 = load i32, ptr %49, align 4, !tbaa !9
  %21218 = add i32 %21217, %21216
  store i32 %21218, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21219 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21219, ptr %51, align 4, !tbaa !9
  %21220 = load i32, ptr %51, align 4, !tbaa !9
  %21221 = icmp ne i32 %21220, 0
  br i1 %21221, label %21222, label %21224

21222:                                            ; preds = %21193
  %21223 = load i32, ptr %49, align 4, !tbaa !9
  br label %21226

21224:                                            ; preds = %21193
  %21225 = load i32, ptr %50, align 4, !tbaa !9
  br label %21226

21226:                                            ; preds = %21224, %21222
  %21227 = phi i32 [ %21223, %21222 ], [ %21225, %21224 ]
  store i32 %21227, ptr %49, align 4, !tbaa !9
  %21228 = load ptr, ptr %5, align 8, !tbaa !5
  %21229 = getelementptr inbounds %struct.w2c_hermes, ptr %21228, i32 0, i32 6
  %21230 = load i32, ptr %48, align 4, !tbaa !9
  %21231 = zext i32 %21230 to i64
  %21232 = add i64 %21231, 4
  %21233 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21229, i64 noundef %21232, i32 noundef %21233)
  %21234 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21234, ptr %48, align 4, !tbaa !9
  %21235 = load ptr, ptr %5, align 8, !tbaa !5
  %21236 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryEndInst0x280x29(ptr noundef %21235, i32 noundef %21236)
  %21237 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21237, ptr %48, align 4, !tbaa !9
  %21238 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21238, ptr %49, align 4, !tbaa !9
  %21239 = load ptr, ptr %5, align 8, !tbaa !5
  %21240 = load i32, ptr %48, align 4, !tbaa !9
  %21241 = load i32, ptr %49, align 4, !tbaa !9
  %21242 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %21239, i32 noundef %21240, i32 noundef %21241)
  store i32 %21242, ptr %48, align 4, !tbaa !9
  %21243 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21243, ptr %48, align 4, !tbaa !9
  %21244 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21244, ptr %49, align 4, !tbaa !9
  %21245 = load ptr, ptr %5, align 8, !tbaa !5
  %21246 = getelementptr inbounds %struct.w2c_hermes, ptr %21245, i32 0, i32 6
  %21247 = load i32, ptr %48, align 4, !tbaa !9
  %21248 = zext i32 %21247 to i64
  %21249 = add i64 %21248, 8
  %21250 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21246, i64 noundef %21249, i32 noundef %21250)
  %21251 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21251, ptr %48, align 4, !tbaa !9
  %21252 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21252, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %21253 = load i32, ptr %50, align 4, !tbaa !9
  %21254 = load i32, ptr %49, align 4, !tbaa !9
  %21255 = add i32 %21254, %21253
  store i32 %21255, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21256 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21256, ptr %51, align 4, !tbaa !9
  %21257 = load i32, ptr %51, align 4, !tbaa !9
  %21258 = icmp ne i32 %21257, 0
  br i1 %21258, label %21259, label %21261

21259:                                            ; preds = %21226
  %21260 = load i32, ptr %49, align 4, !tbaa !9
  br label %21263

21261:                                            ; preds = %21226
  %21262 = load i32, ptr %50, align 4, !tbaa !9
  br label %21263

21263:                                            ; preds = %21261, %21259
  %21264 = phi i32 [ %21260, %21259 ], [ %21262, %21261 ]
  store i32 %21264, ptr %49, align 4, !tbaa !9
  %21265 = load ptr, ptr %5, align 8, !tbaa !5
  %21266 = getelementptr inbounds %struct.w2c_hermes, ptr %21265, i32 0, i32 6
  %21267 = load i32, ptr %48, align 4, !tbaa !9
  %21268 = zext i32 %21267 to i64
  %21269 = add i64 %21268, 4
  %21270 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21266, i64 noundef %21269, i32 noundef %21270)
  %21271 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21271, ptr %48, align 4, !tbaa !9
  %21272 = load ptr, ptr %5, align 8, !tbaa !5
  %21273 = load i32, ptr %48, align 4, !tbaa !9
  %21274 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCatchInst0x280x29(ptr noundef %21272, i32 noundef %21273)
  store i32 %21274, ptr %48, align 4, !tbaa !9
  %21275 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21275, ptr %13, align 4, !tbaa !9
  %21276 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21276, ptr %48, align 4, !tbaa !9
  %21277 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21277, ptr %49, align 4, !tbaa !9
  %21278 = load ptr, ptr %5, align 8, !tbaa !5
  %21279 = getelementptr inbounds %struct.w2c_hermes, ptr %21278, i32 0, i32 6
  %21280 = load i32, ptr %49, align 4, !tbaa !9
  %21281 = zext i32 %21280 to i64
  %21282 = add i64 %21281, 12
  %21283 = call i32 @i32_load(ptr noundef %21279, i64 noundef %21282)
  store i32 %21283, ptr %49, align 4, !tbaa !9
  %21284 = load ptr, ptr %5, align 8, !tbaa !5
  %21285 = getelementptr inbounds %struct.w2c_hermes, ptr %21284, i32 0, i32 6
  %21286 = load i32, ptr %49, align 4, !tbaa !9
  %21287 = zext i32 %21286 to i64
  %21288 = add i64 %21287, 44
  %21289 = call i32 @i32_load(ptr noundef %21285, i64 noundef %21288)
  store i32 %21289, ptr %49, align 4, !tbaa !9
  %21290 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %21290, ptr %15, align 4, !tbaa !9
  %21291 = load ptr, ptr %5, align 8, !tbaa !5
  %21292 = load i32, ptr %48, align 4, !tbaa !9
  %21293 = load i32, ptr %49, align 4, !tbaa !9
  %21294 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %21291, i32 noundef %21292, i32 noundef %21293)
  store i32 %21294, ptr %48, align 4, !tbaa !9
  %21295 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21295, ptr %7, align 4, !tbaa !9
  %21296 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21296, ptr %48, align 4, !tbaa !9
  %21297 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %21297, ptr %49, align 4, !tbaa !9
  %21298 = load ptr, ptr %5, align 8, !tbaa !5
  %21299 = load i32, ptr %48, align 4, !tbaa !9
  %21300 = load i32, ptr %49, align 4, !tbaa !9
  %21301 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %21298, i32 noundef %21299, i32 noundef %21300)
  store i32 %21301, ptr %48, align 4, !tbaa !9
  %21302 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21302, ptr %8, align 4, !tbaa !9
  %21303 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21303, ptr %48, align 4, !tbaa !9
  %21304 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %21304, ptr %49, align 4, !tbaa !9
  %21305 = load ptr, ptr %5, align 8, !tbaa !5
  %21306 = load i32, ptr %48, align 4, !tbaa !9
  %21307 = load i32, ptr %49, align 4, !tbaa !9
  %21308 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %21305, i32 noundef %21306, i32 noundef %21307)
  store i32 %21308, ptr %48, align 4, !tbaa !9
  %21309 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21309, ptr %9, align 4, !tbaa !9
  %21310 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21310, ptr %48, align 4, !tbaa !9
  %21311 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %21311, ptr %49, align 4, !tbaa !9
  %21312 = load ptr, ptr %5, align 8, !tbaa !5
  %21313 = load i32, ptr %48, align 4, !tbaa !9
  %21314 = load i32, ptr %49, align 4, !tbaa !9
  %21315 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %21312, i32 noundef %21313, i32 noundef %21314)
  store i32 %21315, ptr %48, align 4, !tbaa !9
  %21316 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21316, ptr %15, align 4, !tbaa !9
  %21317 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21317, ptr %48, align 4, !tbaa !9
  store i32 5, ptr %49, align 4, !tbaa !9
  %21318 = load ptr, ptr %5, align 8, !tbaa !5
  %21319 = getelementptr inbounds %struct.w2c_hermes, ptr %21318, i32 0, i32 6
  %21320 = load i32, ptr %48, align 4, !tbaa !9
  %21321 = zext i32 %21320 to i64
  %21322 = add i64 %21321, 228
  %21323 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21319, i64 noundef %21322, i32 noundef %21323)
  %21324 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21324, ptr %48, align 4, !tbaa !9
  store i32 18189, ptr %49, align 4, !tbaa !9
  %21325 = load ptr, ptr %5, align 8, !tbaa !5
  %21326 = getelementptr inbounds %struct.w2c_hermes, ptr %21325, i32 0, i32 6
  %21327 = load i32, ptr %48, align 4, !tbaa !9
  %21328 = zext i32 %21327 to i64
  %21329 = add i64 %21328, 224
  %21330 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21326, i64 noundef %21329, i32 noundef %21330)
  %21331 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21331, ptr %48, align 4, !tbaa !9
  %21332 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21332, ptr %49, align 4, !tbaa !9
  %21333 = load ptr, ptr %5, align 8, !tbaa !5
  %21334 = getelementptr inbounds %struct.w2c_hermes, ptr %21333, i32 0, i32 6
  %21335 = load i32, ptr %49, align 4, !tbaa !9
  %21336 = zext i32 %21335 to i64
  %21337 = add i64 %21336, 128
  %21338 = call i32 @i32_load(ptr noundef %21334, i64 noundef %21337)
  store i32 %21338, ptr %49, align 4, !tbaa !9
  %21339 = load ptr, ptr %5, align 8, !tbaa !5
  %21340 = getelementptr inbounds %struct.w2c_hermes, ptr %21339, i32 0, i32 6
  %21341 = load i32, ptr %48, align 4, !tbaa !9
  %21342 = zext i32 %21341 to i64
  %21343 = add i64 %21342, 232
  %21344 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21340, i64 noundef %21343, i32 noundef %21344)
  %21345 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21345, ptr %48, align 4, !tbaa !9
  %21346 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21346, ptr %49, align 4, !tbaa !9
  %21347 = load ptr, ptr %5, align 8, !tbaa !5
  %21348 = getelementptr inbounds %struct.w2c_hermes, ptr %21347, i32 0, i32 6
  %21349 = load i32, ptr %49, align 4, !tbaa !9
  %21350 = zext i32 %21349 to i64
  %21351 = add i64 %21350, 224
  %21352 = call i64 @i64_load(ptr noundef %21348, i64 noundef %21351)
  store i64 %21352, ptr %59, align 8, !tbaa !11
  %21353 = load ptr, ptr %5, align 8, !tbaa !5
  %21354 = getelementptr inbounds %struct.w2c_hermes, ptr %21353, i32 0, i32 6
  %21355 = load i32, ptr %48, align 4, !tbaa !9
  %21356 = zext i32 %21355 to i64
  %21357 = add i64 %21356, 56
  %21358 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21354, i64 noundef %21357, i64 noundef %21358)
  %21359 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21359, ptr %48, align 4, !tbaa !9
  %21360 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21360, ptr %49, align 4, !tbaa !9
  store i32 56, ptr %50, align 4, !tbaa !9
  %21361 = load i32, ptr %50, align 4, !tbaa !9
  %21362 = load i32, ptr %49, align 4, !tbaa !9
  %21363 = add i32 %21362, %21361
  store i32 %21363, ptr %49, align 4, !tbaa !9
  %21364 = load ptr, ptr %5, align 8, !tbaa !5
  %21365 = load i32, ptr %48, align 4, !tbaa !9
  %21366 = load i32, ptr %49, align 4, !tbaa !9
  %21367 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %21364, i32 noundef %21365, i32 noundef %21366)
  store i32 %21367, ptr %48, align 4, !tbaa !9
  %21368 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21368, ptr %16, align 4, !tbaa !9
  %21369 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21369, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %21370 = load ptr, ptr %5, align 8, !tbaa !5
  %21371 = getelementptr inbounds %struct.w2c_hermes, ptr %21370, i32 0, i32 6
  %21372 = load i32, ptr %48, align 4, !tbaa !9
  %21373 = zext i32 %21372 to i64
  %21374 = add i64 %21373, 140
  %21375 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21371, i64 noundef %21374, i32 noundef %21375)
  %21376 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21376, ptr %48, align 4, !tbaa !9
  %21377 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21377, ptr %49, align 4, !tbaa !9
  %21378 = load ptr, ptr %5, align 8, !tbaa !5
  %21379 = getelementptr inbounds %struct.w2c_hermes, ptr %21378, i32 0, i32 6
  %21380 = load i32, ptr %48, align 4, !tbaa !9
  %21381 = zext i32 %21380 to i64
  %21382 = add i64 %21381, 236
  %21383 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21379, i64 noundef %21382, i32 noundef %21383)
  %21384 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21384, ptr %48, align 4, !tbaa !9
  %21385 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21385, ptr %49, align 4, !tbaa !9
  store i32 232, ptr %50, align 4, !tbaa !9
  %21386 = load i32, ptr %50, align 4, !tbaa !9
  %21387 = load i32, ptr %49, align 4, !tbaa !9
  %21388 = add i32 %21387, %21386
  store i32 %21388, ptr %49, align 4, !tbaa !9
  %21389 = load ptr, ptr %5, align 8, !tbaa !5
  %21390 = getelementptr inbounds %struct.w2c_hermes, ptr %21389, i32 0, i32 6
  %21391 = load i32, ptr %48, align 4, !tbaa !9
  %21392 = zext i32 %21391 to i64
  %21393 = add i64 %21392, 136
  %21394 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21390, i64 noundef %21393, i32 noundef %21394)
  %21395 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21395, ptr %48, align 4, !tbaa !9
  %21396 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21396, ptr %49, align 4, !tbaa !9
  %21397 = load ptr, ptr %5, align 8, !tbaa !5
  %21398 = getelementptr inbounds %struct.w2c_hermes, ptr %21397, i32 0, i32 6
  %21399 = load i32, ptr %49, align 4, !tbaa !9
  %21400 = zext i32 %21399 to i64
  %21401 = add i64 %21400, 136
  %21402 = call i64 @i64_load(ptr noundef %21398, i64 noundef %21401)
  store i64 %21402, ptr %59, align 8, !tbaa !11
  %21403 = load ptr, ptr %5, align 8, !tbaa !5
  %21404 = getelementptr inbounds %struct.w2c_hermes, ptr %21403, i32 0, i32 6
  %21405 = load i32, ptr %48, align 4, !tbaa !9
  %21406 = zext i32 %21405 to i64
  %21407 = add i64 %21406, 48
  %21408 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21404, i64 noundef %21407, i64 noundef %21408)
  %21409 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21409, ptr %48, align 4, !tbaa !9
  %21410 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21410, ptr %49, align 4, !tbaa !9
  store i32 41, ptr %50, align 4, !tbaa !9
  %21411 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21411, ptr %51, align 4, !tbaa !9
  store i32 48, ptr %52, align 4, !tbaa !9
  %21412 = load i32, ptr %52, align 4, !tbaa !9
  %21413 = load i32, ptr %51, align 4, !tbaa !9
  %21414 = add i32 %21413, %21412
  store i32 %21414, ptr %51, align 4, !tbaa !9
  %21415 = load ptr, ptr %5, align 8, !tbaa !5
  %21416 = load i32, ptr %49, align 4, !tbaa !9
  %21417 = load i32, ptr %50, align 4, !tbaa !9
  %21418 = load i32, ptr %51, align 4, !tbaa !9
  %21419 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %21415, i32 noundef %21416, i32 noundef %21417, i32 noundef %21418)
  store i32 %21419, ptr %49, align 4, !tbaa !9
  %21420 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %21420, ptr %16, align 4, !tbaa !9
  %21421 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21421, ptr %50, align 4, !tbaa !9
  %21422 = load ptr, ptr %5, align 8, !tbaa !5
  %21423 = getelementptr inbounds %struct.w2c_hermes, ptr %21422, i32 0, i32 6
  %21424 = load i32, ptr %50, align 4, !tbaa !9
  %21425 = zext i32 %21424 to i64
  %21426 = call i32 @i32_load(ptr noundef %21423, i64 noundef %21425)
  store i32 %21426, ptr %50, align 4, !tbaa !9
  store i32 268, ptr %51, align 4, !tbaa !9
  %21427 = load i32, ptr %51, align 4, !tbaa !9
  %21428 = load i32, ptr %50, align 4, !tbaa !9
  %21429 = add i32 %21428, %21427
  store i32 %21429, ptr %50, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %21430 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21430, ptr %52, align 4, !tbaa !9
  %21431 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21431, ptr %53, align 4, !tbaa !9
  %21432 = load ptr, ptr %5, align 8, !tbaa !5
  %21433 = load i32, ptr %48, align 4, !tbaa !9
  %21434 = load i32, ptr %49, align 4, !tbaa !9
  %21435 = load i32, ptr %50, align 4, !tbaa !9
  %21436 = load i32, ptr %51, align 4, !tbaa !9
  %21437 = load i32, ptr %52, align 4, !tbaa !9
  %21438 = load i32, ptr %53, align 4, !tbaa !9
  %21439 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCompareBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %21432, i32 noundef %21433, i32 noundef %21434, i32 noundef %21435, i32 noundef %21436, i32 noundef %21437, i32 noundef %21438)
  store i32 %21439, ptr %48, align 4, !tbaa !9
  %21440 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21440, ptr %48, align 4, !tbaa !9
  %21441 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21441, ptr %49, align 4, !tbaa !9
  %21442 = load ptr, ptr %5, align 8, !tbaa !5
  %21443 = getelementptr inbounds %struct.w2c_hermes, ptr %21442, i32 0, i32 6
  %21444 = load i32, ptr %48, align 4, !tbaa !9
  %21445 = zext i32 %21444 to i64
  %21446 = add i64 %21445, 8
  %21447 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21443, i64 noundef %21446, i32 noundef %21447)
  %21448 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21448, ptr %48, align 4, !tbaa !9
  %21449 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21449, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %21450 = load i32, ptr %50, align 4, !tbaa !9
  %21451 = load i32, ptr %49, align 4, !tbaa !9
  %21452 = add i32 %21451, %21450
  store i32 %21452, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21453 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21453, ptr %51, align 4, !tbaa !9
  %21454 = load i32, ptr %51, align 4, !tbaa !9
  %21455 = icmp ne i32 %21454, 0
  br i1 %21455, label %21456, label %21458

21456:                                            ; preds = %21263
  %21457 = load i32, ptr %49, align 4, !tbaa !9
  br label %21460

21458:                                            ; preds = %21263
  %21459 = load i32, ptr %50, align 4, !tbaa !9
  br label %21460

21460:                                            ; preds = %21458, %21456
  %21461 = phi i32 [ %21457, %21456 ], [ %21459, %21458 ]
  store i32 %21461, ptr %49, align 4, !tbaa !9
  %21462 = load ptr, ptr %5, align 8, !tbaa !5
  %21463 = getelementptr inbounds %struct.w2c_hermes, ptr %21462, i32 0, i32 6
  %21464 = load i32, ptr %48, align 4, !tbaa !9
  %21465 = zext i32 %21464 to i64
  %21466 = add i64 %21465, 4
  %21467 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21463, i64 noundef %21466, i32 noundef %21467)
  %21468 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21468, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %21469 = load ptr, ptr %5, align 8, !tbaa !5
  %21470 = getelementptr inbounds %struct.w2c_hermes, ptr %21469, i32 0, i32 6
  %21471 = load i32, ptr %48, align 4, !tbaa !9
  %21472 = zext i32 %21471 to i64
  %21473 = add i64 %21472, 236
  %21474 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21470, i64 noundef %21473, i32 noundef %21474)
  %21475 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21475, ptr %48, align 4, !tbaa !9
  %21476 = load ptr, ptr %5, align 8, !tbaa !5
  %21477 = getelementptr inbounds %struct.w2c_hermes, ptr %21476, i32 0, i32 6
  %21478 = load i32, ptr %48, align 4, !tbaa !9
  %21479 = zext i32 %21478 to i64
  %21480 = add i64 %21479, 128
  %21481 = call i32 @i32_load(ptr noundef %21477, i64 noundef %21480)
  store i32 %21481, ptr %48, align 4, !tbaa !9
  %21482 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21482, ptr %7, align 4, !tbaa !9
  %21483 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21483, ptr %48, align 4, !tbaa !9
  %21484 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %21484, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %21485 = load i32, ptr %50, align 4, !tbaa !9
  %21486 = load i32, ptr %49, align 4, !tbaa !9
  %21487 = add i32 %21486, %21485
  store i32 %21487, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21488 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %21488, ptr %51, align 4, !tbaa !9
  %21489 = load i32, ptr %51, align 4, !tbaa !9
  %21490 = icmp ne i32 %21489, 0
  br i1 %21490, label %21491, label %21493

21491:                                            ; preds = %21460
  %21492 = load i32, ptr %49, align 4, !tbaa !9
  br label %21495

21493:                                            ; preds = %21460
  %21494 = load i32, ptr %50, align 4, !tbaa !9
  br label %21495

21495:                                            ; preds = %21493, %21491
  %21496 = phi i32 [ %21492, %21491 ], [ %21494, %21493 ]
  store i32 %21496, ptr %49, align 4, !tbaa !9
  %21497 = load ptr, ptr %5, align 8, !tbaa !5
  %21498 = getelementptr inbounds %struct.w2c_hermes, ptr %21497, i32 0, i32 6
  %21499 = load i32, ptr %48, align 4, !tbaa !9
  %21500 = zext i32 %21499 to i64
  %21501 = add i64 %21500, 208
  %21502 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21498, i64 noundef %21501, i32 noundef %21502)
  %21503 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21503, ptr %48, align 4, !tbaa !9
  %21504 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21504, ptr %49, align 4, !tbaa !9
  store i32 208, ptr %50, align 4, !tbaa !9
  %21505 = load i32, ptr %50, align 4, !tbaa !9
  %21506 = load i32, ptr %49, align 4, !tbaa !9
  %21507 = add i32 %21506, %21505
  store i32 %21507, ptr %49, align 4, !tbaa !9
  %21508 = load ptr, ptr %5, align 8, !tbaa !5
  %21509 = getelementptr inbounds %struct.w2c_hermes, ptr %21508, i32 0, i32 6
  %21510 = load i32, ptr %48, align 4, !tbaa !9
  %21511 = zext i32 %21510 to i64
  %21512 = add i64 %21511, 232
  %21513 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21509, i64 noundef %21512, i32 noundef %21513)
  %21514 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21514, ptr %48, align 4, !tbaa !9
  %21515 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21515, ptr %49, align 4, !tbaa !9
  %21516 = load ptr, ptr %5, align 8, !tbaa !5
  %21517 = getelementptr inbounds %struct.w2c_hermes, ptr %21516, i32 0, i32 6
  %21518 = load i32, ptr %49, align 4, !tbaa !9
  %21519 = zext i32 %21518 to i64
  %21520 = add i64 %21519, 232
  %21521 = call i64 @i64_load(ptr noundef %21517, i64 noundef %21520)
  store i64 %21521, ptr %59, align 8, !tbaa !11
  %21522 = load ptr, ptr %5, align 8, !tbaa !5
  %21523 = getelementptr inbounds %struct.w2c_hermes, ptr %21522, i32 0, i32 6
  %21524 = load i32, ptr %48, align 4, !tbaa !9
  %21525 = zext i32 %21524 to i64
  %21526 = add i64 %21525, 40
  %21527 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21523, i64 noundef %21526, i64 noundef %21527)
  %21528 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21528, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %21529 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21529, ptr %50, align 4, !tbaa !9
  %21530 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21530, ptr %51, align 4, !tbaa !9
  %21531 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21531, ptr %52, align 4, !tbaa !9
  store i32 40, ptr %53, align 4, !tbaa !9
  %21532 = load i32, ptr %53, align 4, !tbaa !9
  %21533 = load i32, ptr %52, align 4, !tbaa !9
  %21534 = add i32 %21533, %21532
  store i32 %21534, ptr %52, align 4, !tbaa !9
  %21535 = load ptr, ptr %5, align 8, !tbaa !5
  %21536 = load i32, ptr %48, align 4, !tbaa !9
  %21537 = load i32, ptr %49, align 4, !tbaa !9
  %21538 = load i32, ptr %50, align 4, !tbaa !9
  %21539 = load i32, ptr %51, align 4, !tbaa !9
  %21540 = load i32, ptr %52, align 4, !tbaa !9
  %21541 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %21535, i32 noundef %21536, i32 noundef %21537, i32 noundef %21538, i32 noundef %21539, i32 noundef %21540)
  store i32 %21541, ptr %48, align 4, !tbaa !9
  %21542 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21542, ptr %7, align 4, !tbaa !9
  %21543 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21543, ptr %48, align 4, !tbaa !9
  store i32 41, ptr %49, align 4, !tbaa !9
  %21544 = load ptr, ptr %5, align 8, !tbaa !5
  %21545 = getelementptr inbounds %struct.w2c_hermes, ptr %21544, i32 0, i32 6
  %21546 = load i32, ptr %48, align 4, !tbaa !9
  %21547 = zext i32 %21546 to i64
  %21548 = add i64 %21547, 220
  %21549 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21545, i64 noundef %21548, i32 noundef %21549)
  %21550 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21550, ptr %48, align 4, !tbaa !9
  store i32 31376, ptr %49, align 4, !tbaa !9
  %21551 = load ptr, ptr %5, align 8, !tbaa !5
  %21552 = getelementptr inbounds %struct.w2c_hermes, ptr %21551, i32 0, i32 6
  %21553 = load i32, ptr %48, align 4, !tbaa !9
  %21554 = zext i32 %21553 to i64
  %21555 = add i64 %21554, 216
  %21556 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21552, i64 noundef %21555, i32 noundef %21556)
  %21557 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21557, ptr %48, align 4, !tbaa !9
  %21558 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21558, ptr %49, align 4, !tbaa !9
  %21559 = load ptr, ptr %5, align 8, !tbaa !5
  %21560 = getelementptr inbounds %struct.w2c_hermes, ptr %21559, i32 0, i32 6
  %21561 = load i32, ptr %49, align 4, !tbaa !9
  %21562 = zext i32 %21561 to i64
  %21563 = add i64 %21562, 216
  %21564 = call i64 @i64_load(ptr noundef %21560, i64 noundef %21563)
  store i64 %21564, ptr %59, align 8, !tbaa !11
  %21565 = load ptr, ptr %5, align 8, !tbaa !5
  %21566 = getelementptr inbounds %struct.w2c_hermes, ptr %21565, i32 0, i32 6
  %21567 = load i32, ptr %48, align 4, !tbaa !9
  %21568 = zext i32 %21567 to i64
  %21569 = add i64 %21568, 32
  %21570 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21566, i64 noundef %21569, i64 noundef %21570)
  %21571 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21571, ptr %48, align 4, !tbaa !9
  %21572 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21572, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %21573 = load i32, ptr %50, align 4, !tbaa !9
  %21574 = load i32, ptr %49, align 4, !tbaa !9
  %21575 = add i32 %21574, %21573
  store i32 %21575, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21576 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21576, ptr %51, align 4, !tbaa !9
  %21577 = load i32, ptr %51, align 4, !tbaa !9
  %21578 = icmp ne i32 %21577, 0
  br i1 %21578, label %21579, label %21581

21579:                                            ; preds = %21495
  %21580 = load i32, ptr %49, align 4, !tbaa !9
  br label %21583

21581:                                            ; preds = %21495
  %21582 = load i32, ptr %50, align 4, !tbaa !9
  br label %21583

21583:                                            ; preds = %21581, %21579
  %21584 = phi i32 [ %21580, %21579 ], [ %21582, %21581 ]
  store i32 %21584, ptr %49, align 4, !tbaa !9
  %21585 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %21585, ptr %7, align 4, !tbaa !9
  %21586 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21586, ptr %50, align 4, !tbaa !9
  store i32 32, ptr %51, align 4, !tbaa !9
  %21587 = load i32, ptr %51, align 4, !tbaa !9
  %21588 = load i32, ptr %50, align 4, !tbaa !9
  %21589 = add i32 %21588, %21587
  store i32 %21589, ptr %50, align 4, !tbaa !9
  %21590 = load ptr, ptr %5, align 8, !tbaa !5
  %21591 = load i32, ptr %48, align 4, !tbaa !9
  %21592 = load i32, ptr %49, align 4, !tbaa !9
  %21593 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitEnsureObject0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef %21590, i32 noundef %21591, i32 noundef %21592, i32 noundef %21593)
  %21594 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21594, ptr %48, align 4, !tbaa !9
  %21595 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21595, ptr %49, align 4, !tbaa !9
  %21596 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21596, ptr %50, align 4, !tbaa !9
  %21597 = load ptr, ptr %5, align 8, !tbaa !5
  %21598 = load i32, ptr %49, align 4, !tbaa !9
  %21599 = load i32, ptr %50, align 4, !tbaa !9
  %21600 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitIteratorCompleteSlow0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %21597, i32 noundef %21598, i32 noundef %21599)
  store i32 %21600, ptr %49, align 4, !tbaa !9
  %21601 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21601, ptr %50, align 4, !tbaa !9
  %21602 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %21602, ptr %51, align 4, !tbaa !9
  %21603 = load ptr, ptr %5, align 8, !tbaa !5
  %21604 = load i32, ptr %48, align 4, !tbaa !9
  %21605 = load i32, ptr %49, align 4, !tbaa !9
  %21606 = load i32, ptr %50, align 4, !tbaa !9
  %21607 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %21603, i32 noundef %21604, i32 noundef %21605, i32 noundef %21606, i32 noundef %21607)
  %21608 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21608, ptr %48, align 4, !tbaa !9
  %21609 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21609, ptr %49, align 4, !tbaa !9
  %21610 = load ptr, ptr %5, align 8, !tbaa !5
  %21611 = getelementptr inbounds %struct.w2c_hermes, ptr %21610, i32 0, i32 6
  %21612 = load i32, ptr %48, align 4, !tbaa !9
  %21613 = zext i32 %21612 to i64
  %21614 = add i64 %21613, 8
  %21615 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21611, i64 noundef %21614, i32 noundef %21615)
  %21616 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21616, ptr %48, align 4, !tbaa !9
  %21617 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21617, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %21618 = load i32, ptr %50, align 4, !tbaa !9
  %21619 = load i32, ptr %49, align 4, !tbaa !9
  %21620 = add i32 %21619, %21618
  store i32 %21620, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21621 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21621, ptr %51, align 4, !tbaa !9
  %21622 = load i32, ptr %51, align 4, !tbaa !9
  %21623 = icmp ne i32 %21622, 0
  br i1 %21623, label %21624, label %21626

21624:                                            ; preds = %21583
  %21625 = load i32, ptr %49, align 4, !tbaa !9
  br label %21628

21626:                                            ; preds = %21583
  %21627 = load i32, ptr %50, align 4, !tbaa !9
  br label %21628

21628:                                            ; preds = %21626, %21624
  %21629 = phi i32 [ %21625, %21624 ], [ %21627, %21626 ]
  store i32 %21629, ptr %49, align 4, !tbaa !9
  %21630 = load ptr, ptr %5, align 8, !tbaa !5
  %21631 = getelementptr inbounds %struct.w2c_hermes, ptr %21630, i32 0, i32 6
  %21632 = load i32, ptr %48, align 4, !tbaa !9
  %21633 = zext i32 %21632 to i64
  %21634 = add i64 %21633, 4
  %21635 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21631, i64 noundef %21634, i32 noundef %21635)
  %21636 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21636, ptr %48, align 4, !tbaa !9
  %21637 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21637, ptr %49, align 4, !tbaa !9
  %21638 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %21638, ptr %50, align 4, !tbaa !9
  %21639 = load ptr, ptr %5, align 8, !tbaa !5
  %21640 = load i32, ptr %48, align 4, !tbaa !9
  %21641 = load i32, ptr %49, align 4, !tbaa !9
  %21642 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef %21639, i32 noundef %21640, i32 noundef %21641, i32 noundef %21642)
  %21643 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21643, ptr %48, align 4, !tbaa !9
  %21644 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %21644, ptr %49, align 4, !tbaa !9
  %21645 = load ptr, ptr %5, align 8, !tbaa !5
  %21646 = load i32, ptr %48, align 4, !tbaa !9
  %21647 = load i32, ptr %49, align 4, !tbaa !9
  %21648 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %21645, i32 noundef %21646, i32 noundef %21647)
  store i32 %21648, ptr %48, align 4, !tbaa !9
  %21649 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21649, ptr %48, align 4, !tbaa !9
  %21650 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %21650, ptr %49, align 4, !tbaa !9
  %21651 = load ptr, ptr %5, align 8, !tbaa !5
  %21652 = getelementptr inbounds %struct.w2c_hermes, ptr %21651, i32 0, i32 6
  %21653 = load i32, ptr %48, align 4, !tbaa !9
  %21654 = zext i32 %21653 to i64
  %21655 = add i64 %21654, 8
  %21656 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21652, i64 noundef %21655, i32 noundef %21656)
  %21657 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21657, ptr %48, align 4, !tbaa !9
  %21658 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %21658, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %21659 = load i32, ptr %50, align 4, !tbaa !9
  %21660 = load i32, ptr %49, align 4, !tbaa !9
  %21661 = add i32 %21660, %21659
  store i32 %21661, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21662 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %21662, ptr %51, align 4, !tbaa !9
  %21663 = load i32, ptr %51, align 4, !tbaa !9
  %21664 = icmp ne i32 %21663, 0
  br i1 %21664, label %21665, label %21667

21665:                                            ; preds = %21628
  %21666 = load i32, ptr %49, align 4, !tbaa !9
  br label %21669

21667:                                            ; preds = %21628
  %21668 = load i32, ptr %50, align 4, !tbaa !9
  br label %21669

21669:                                            ; preds = %21667, %21665
  %21670 = phi i32 [ %21666, %21665 ], [ %21668, %21667 ]
  store i32 %21670, ptr %49, align 4, !tbaa !9
  %21671 = load ptr, ptr %5, align 8, !tbaa !5
  %21672 = getelementptr inbounds %struct.w2c_hermes, ptr %21671, i32 0, i32 6
  %21673 = load i32, ptr %48, align 4, !tbaa !9
  %21674 = zext i32 %21673 to i64
  %21675 = add i64 %21674, 4
  %21676 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21672, i64 noundef %21675, i32 noundef %21676)
  %21677 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21677, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %21678 = load ptr, ptr %5, align 8, !tbaa !5
  %21679 = getelementptr inbounds %struct.w2c_hermes, ptr %21678, i32 0, i32 6
  %21680 = load i32, ptr %48, align 4, !tbaa !9
  %21681 = zext i32 %21680 to i64
  %21682 = add i64 %21681, 24
  %21683 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21679, i64 noundef %21682, i64 noundef %21683)
  %21684 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21684, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %21685 = load ptr, ptr %5, align 8, !tbaa !5
  %21686 = getelementptr inbounds %struct.w2c_hermes, ptr %21685, i32 0, i32 6
  %21687 = load i32, ptr %48, align 4, !tbaa !9
  %21688 = zext i32 %21687 to i64
  %21689 = add i64 %21688, 208
  %21690 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21686, i64 noundef %21689, i64 noundef %21690)
  %21691 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21691, ptr %48, align 4, !tbaa !9
  store i32 43, ptr %49, align 4, !tbaa !9
  %21692 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21692, ptr %50, align 4, !tbaa !9
  store i32 24, ptr %51, align 4, !tbaa !9
  %21693 = load i32, ptr %51, align 4, !tbaa !9
  %21694 = load i32, ptr %50, align 4, !tbaa !9
  %21695 = add i32 %21694, %21693
  store i32 %21695, ptr %50, align 4, !tbaa !9
  %21696 = load ptr, ptr %5, align 8, !tbaa !5
  %21697 = load i32, ptr %48, align 4, !tbaa !9
  %21698 = load i32, ptr %49, align 4, !tbaa !9
  %21699 = load i32, ptr %50, align 4, !tbaa !9
  %21700 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %21696, i32 noundef %21697, i32 noundef %21698, i32 noundef %21699)
  store i32 %21700, ptr %48, align 4, !tbaa !9
  %21701 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21701, ptr %48, align 4, !tbaa !9
  %21702 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21702, ptr %49, align 4, !tbaa !9
  %21703 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %21703, ptr %50, align 4, !tbaa !9
  %21704 = load ptr, ptr %5, align 8, !tbaa !5
  %21705 = load i32, ptr %48, align 4, !tbaa !9
  %21706 = load i32, ptr %49, align 4, !tbaa !9
  %21707 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateSaveAndYieldInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %21704, i32 noundef %21705, i32 noundef %21706, i32 noundef %21707)
  %21708 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21708, ptr %48, align 4, !tbaa !9
  %21709 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21709, ptr %49, align 4, !tbaa !9
  %21710 = load ptr, ptr %5, align 8, !tbaa !5
  %21711 = getelementptr inbounds %struct.w2c_hermes, ptr %21710, i32 0, i32 6
  %21712 = load i32, ptr %48, align 4, !tbaa !9
  %21713 = zext i32 %21712 to i64
  %21714 = add i64 %21713, 8
  %21715 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21711, i64 noundef %21714, i32 noundef %21715)
  %21716 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21716, ptr %48, align 4, !tbaa !9
  %21717 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21717, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %21718 = load i32, ptr %50, align 4, !tbaa !9
  %21719 = load i32, ptr %49, align 4, !tbaa !9
  %21720 = add i32 %21719, %21718
  store i32 %21720, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21721 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21721, ptr %51, align 4, !tbaa !9
  %21722 = load i32, ptr %51, align 4, !tbaa !9
  %21723 = icmp ne i32 %21722, 0
  br i1 %21723, label %21724, label %21726

21724:                                            ; preds = %21669
  %21725 = load i32, ptr %49, align 4, !tbaa !9
  br label %21728

21726:                                            ; preds = %21669
  %21727 = load i32, ptr %50, align 4, !tbaa !9
  br label %21728

21728:                                            ; preds = %21726, %21724
  %21729 = phi i32 [ %21725, %21724 ], [ %21727, %21726 ]
  store i32 %21729, ptr %49, align 4, !tbaa !9
  %21730 = load ptr, ptr %5, align 8, !tbaa !5
  %21731 = getelementptr inbounds %struct.w2c_hermes, ptr %21730, i32 0, i32 6
  %21732 = load i32, ptr %48, align 4, !tbaa !9
  %21733 = zext i32 %21732 to i64
  %21734 = add i64 %21733, 4
  %21735 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21731, i64 noundef %21734, i32 noundef %21735)
  %21736 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21736, ptr %48, align 4, !tbaa !9
  %21737 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21737, ptr %49, align 4, !tbaa !9
  %21738 = load ptr, ptr %5, align 8, !tbaa !5
  %21739 = getelementptr inbounds %struct.w2c_hermes, ptr %21738, i32 0, i32 6
  %21740 = load i32, ptr %49, align 4, !tbaa !9
  %21741 = zext i32 %21740 to i64
  %21742 = add i64 %21741, 128
  %21743 = call i64 @i64_load(ptr noundef %21739, i64 noundef %21742)
  store i64 %21743, ptr %59, align 8, !tbaa !11
  %21744 = load i64, ptr %59, align 8, !tbaa !11
  store i64 %21744, ptr %31, align 8, !tbaa !11
  %21745 = load ptr, ptr %5, align 8, !tbaa !5
  %21746 = getelementptr inbounds %struct.w2c_hermes, ptr %21745, i32 0, i32 6
  %21747 = load i32, ptr %48, align 4, !tbaa !9
  %21748 = zext i32 %21747 to i64
  %21749 = add i64 %21748, 200
  %21750 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21746, i64 noundef %21749, i64 noundef %21750)
  %21751 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21751, ptr %48, align 4, !tbaa !9
  %21752 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %21752, ptr %59, align 8, !tbaa !11
  %21753 = load ptr, ptr %5, align 8, !tbaa !5
  %21754 = getelementptr inbounds %struct.w2c_hermes, ptr %21753, i32 0, i32 6
  %21755 = load i32, ptr %48, align 4, !tbaa !9
  %21756 = zext i32 %21755 to i64
  %21757 = add i64 %21756, 16
  %21758 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21754, i64 noundef %21757, i64 noundef %21758)
  %21759 = load ptr, ptr %5, align 8, !tbaa !5
  %21760 = getelementptr inbounds %struct.w2c_hermes, ptr %21759, i32 0, i32 3
  %21761 = load i32, ptr %21760, align 8, !tbaa !15
  store i32 %21761, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %21762 = load i32, ptr %49, align 4, !tbaa !9
  %21763 = load i32, ptr %48, align 4, !tbaa !9
  %21764 = sub i32 %21763, %21762
  store i32 %21764, ptr %48, align 4, !tbaa !9
  %21765 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21765, ptr %7, align 4, !tbaa !9
  %21766 = load i32, ptr %48, align 4, !tbaa !9
  %21767 = load ptr, ptr %5, align 8, !tbaa !5
  %21768 = getelementptr inbounds %struct.w2c_hermes, ptr %21767, i32 0, i32 3
  store i32 %21766, ptr %21768, align 8, !tbaa !15
  %21769 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21769, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %21770 = load i32, ptr %49, align 4, !tbaa !9
  %21771 = load i32, ptr %48, align 4, !tbaa !9
  %21772 = add i32 %21771, %21770
  store i32 %21772, ptr %48, align 4, !tbaa !9
  %21773 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21773, ptr %8, align 4, !tbaa !9
  %21774 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21774, ptr %49, align 4, !tbaa !9
  %21775 = load ptr, ptr %5, align 8, !tbaa !5
  %21776 = getelementptr inbounds %struct.w2c_hermes, ptr %21775, i32 0, i32 6
  %21777 = load i32, ptr %49, align 4, !tbaa !9
  %21778 = zext i32 %21777 to i64
  %21779 = add i64 %21778, 12
  %21780 = call i32 @i32_load(ptr noundef %21776, i64 noundef %21779)
  store i32 %21780, ptr %49, align 4, !tbaa !9
  %21781 = load ptr, ptr %5, align 8, !tbaa !5
  %21782 = getelementptr inbounds %struct.w2c_hermes, ptr %21781, i32 0, i32 6
  %21783 = load i32, ptr %49, align 4, !tbaa !9
  %21784 = zext i32 %21783 to i64
  %21785 = add i64 %21784, 44
  %21786 = call i32 @i32_load(ptr noundef %21782, i64 noundef %21785)
  store i32 %21786, ptr %49, align 4, !tbaa !9
  %21787 = load ptr, ptr %5, align 8, !tbaa !5
  %21788 = load i32, ptr %48, align 4, !tbaa !9
  %21789 = load i32, ptr %49, align 4, !tbaa !9
  %21790 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %21787, i32 noundef %21788, i32 noundef %21789)
  store i32 %21790, ptr %48, align 4, !tbaa !9
  %21791 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21791, ptr %12, align 4, !tbaa !9
  %21792 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21792, ptr %48, align 4, !tbaa !9
  %21793 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21793, ptr %49, align 4, !tbaa !9
  %21794 = load ptr, ptr %5, align 8, !tbaa !5
  %21795 = getelementptr inbounds %struct.w2c_hermes, ptr %21794, i32 0, i32 6
  %21796 = load i32, ptr %49, align 4, !tbaa !9
  %21797 = zext i32 %21796 to i64
  %21798 = add i64 %21797, 12
  %21799 = call i32 @i32_load(ptr noundef %21795, i64 noundef %21798)
  store i32 %21799, ptr %49, align 4, !tbaa !9
  %21800 = load ptr, ptr %5, align 8, !tbaa !5
  %21801 = getelementptr inbounds %struct.w2c_hermes, ptr %21800, i32 0, i32 6
  %21802 = load i32, ptr %49, align 4, !tbaa !9
  %21803 = zext i32 %21802 to i64
  %21804 = add i64 %21803, 44
  %21805 = call i32 @i32_load(ptr noundef %21801, i64 noundef %21804)
  store i32 %21805, ptr %49, align 4, !tbaa !9
  %21806 = load ptr, ptr %5, align 8, !tbaa !5
  %21807 = load i32, ptr %48, align 4, !tbaa !9
  %21808 = load i32, ptr %49, align 4, !tbaa !9
  %21809 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %21806, i32 noundef %21807, i32 noundef %21808)
  store i32 %21809, ptr %48, align 4, !tbaa !9
  %21810 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21810, ptr %9, align 4, !tbaa !9
  %21811 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21811, ptr %48, align 4, !tbaa !9
  %21812 = load ptr, ptr %5, align 8, !tbaa !5
  %21813 = getelementptr inbounds %struct.w2c_hermes, ptr %21812, i32 0, i32 6
  %21814 = load i32, ptr %48, align 4, !tbaa !9
  %21815 = zext i32 %21814 to i64
  %21816 = add i64 %21815, 16
  %21817 = call i32 @i32_load(ptr noundef %21813, i64 noundef %21816)
  store i32 %21817, ptr %48, align 4, !tbaa !9
  %21818 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %21818, ptr %15, align 4, !tbaa !9
  %21819 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21819, ptr %48, align 4, !tbaa !9
  store i32 6, ptr %49, align 4, !tbaa !9
  %21820 = load ptr, ptr %5, align 8, !tbaa !5
  %21821 = getelementptr inbounds %struct.w2c_hermes, ptr %21820, i32 0, i32 6
  %21822 = load i32, ptr %48, align 4, !tbaa !9
  %21823 = zext i32 %21822 to i64
  %21824 = add i64 %21823, 68
  %21825 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21821, i64 noundef %21824, i32 noundef %21825)
  %21826 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21826, ptr %48, align 4, !tbaa !9
  store i32 40443, ptr %49, align 4, !tbaa !9
  %21827 = load ptr, ptr %5, align 8, !tbaa !5
  %21828 = getelementptr inbounds %struct.w2c_hermes, ptr %21827, i32 0, i32 6
  %21829 = load i32, ptr %48, align 4, !tbaa !9
  %21830 = zext i32 %21829 to i64
  %21831 = add i64 %21830, 64
  %21832 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21828, i64 noundef %21831, i32 noundef %21832)
  %21833 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21833, ptr %48, align 4, !tbaa !9
  %21834 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %21834, ptr %49, align 4, !tbaa !9
  %21835 = load ptr, ptr %5, align 8, !tbaa !5
  %21836 = getelementptr inbounds %struct.w2c_hermes, ptr %21835, i32 0, i32 6
  %21837 = load i32, ptr %48, align 4, !tbaa !9
  %21838 = zext i32 %21837 to i64
  %21839 = add i64 %21838, 80
  %21840 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21836, i64 noundef %21839, i32 noundef %21840)
  %21841 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21841, ptr %48, align 4, !tbaa !9
  %21842 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21842, ptr %49, align 4, !tbaa !9
  %21843 = load ptr, ptr %5, align 8, !tbaa !5
  %21844 = getelementptr inbounds %struct.w2c_hermes, ptr %21843, i32 0, i32 6
  %21845 = load i32, ptr %49, align 4, !tbaa !9
  %21846 = zext i32 %21845 to i64
  %21847 = add i64 %21846, 64
  %21848 = call i64 @i64_load(ptr noundef %21844, i64 noundef %21847)
  store i64 %21848, ptr %59, align 8, !tbaa !11
  %21849 = load ptr, ptr %5, align 8, !tbaa !5
  %21850 = getelementptr inbounds %struct.w2c_hermes, ptr %21849, i32 0, i32 6
  %21851 = load i32, ptr %48, align 4, !tbaa !9
  %21852 = zext i32 %21851 to i64
  %21853 = add i64 %21852, 48
  %21854 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21850, i64 noundef %21853, i64 noundef %21854)
  %21855 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21855, ptr %48, align 4, !tbaa !9
  %21856 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21856, ptr %49, align 4, !tbaa !9
  %21857 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21857, ptr %50, align 4, !tbaa !9
  store i32 48, ptr %51, align 4, !tbaa !9
  %21858 = load i32, ptr %51, align 4, !tbaa !9
  %21859 = load i32, ptr %50, align 4, !tbaa !9
  %21860 = add i32 %21859, %21858
  store i32 %21860, ptr %50, align 4, !tbaa !9
  %21861 = load ptr, ptr %5, align 8, !tbaa !5
  %21862 = load i32, ptr %49, align 4, !tbaa !9
  %21863 = load i32, ptr %50, align 4, !tbaa !9
  %21864 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %21861, i32 noundef %21862, i32 noundef %21863)
  store i32 %21864, ptr %49, align 4, !tbaa !9
  %21865 = load ptr, ptr %5, align 8, !tbaa !5
  %21866 = getelementptr inbounds %struct.w2c_hermes, ptr %21865, i32 0, i32 6
  %21867 = load i32, ptr %48, align 4, !tbaa !9
  %21868 = zext i32 %21867 to i64
  %21869 = add i64 %21868, 84
  %21870 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21866, i64 noundef %21869, i32 noundef %21870)
  %21871 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21871, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %21872 = load ptr, ptr %5, align 8, !tbaa !5
  %21873 = getelementptr inbounds %struct.w2c_hermes, ptr %21872, i32 0, i32 6
  %21874 = load i32, ptr %48, align 4, !tbaa !9
  %21875 = zext i32 %21874 to i64
  %21876 = add i64 %21875, 92
  %21877 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21873, i64 noundef %21876, i32 noundef %21877)
  %21878 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21878, ptr %48, align 4, !tbaa !9
  %21879 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21879, ptr %49, align 4, !tbaa !9
  store i32 80, ptr %50, align 4, !tbaa !9
  %21880 = load i32, ptr %50, align 4, !tbaa !9
  %21881 = load i32, ptr %49, align 4, !tbaa !9
  %21882 = add i32 %21881, %21880
  store i32 %21882, ptr %49, align 4, !tbaa !9
  %21883 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %21883, ptr %13, align 4, !tbaa !9
  %21884 = load ptr, ptr %5, align 8, !tbaa !5
  %21885 = getelementptr inbounds %struct.w2c_hermes, ptr %21884, i32 0, i32 6
  %21886 = load i32, ptr %48, align 4, !tbaa !9
  %21887 = zext i32 %21886 to i64
  %21888 = add i64 %21887, 88
  %21889 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21885, i64 noundef %21888, i32 noundef %21889)
  %21890 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21890, ptr %48, align 4, !tbaa !9
  %21891 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21891, ptr %49, align 4, !tbaa !9
  %21892 = load ptr, ptr %5, align 8, !tbaa !5
  %21893 = getelementptr inbounds %struct.w2c_hermes, ptr %21892, i32 0, i32 6
  %21894 = load i32, ptr %49, align 4, !tbaa !9
  %21895 = zext i32 %21894 to i64
  %21896 = add i64 %21895, 88
  %21897 = call i64 @i64_load(ptr noundef %21893, i64 noundef %21896)
  store i64 %21897, ptr %59, align 8, !tbaa !11
  %21898 = load ptr, ptr %5, align 8, !tbaa !5
  %21899 = getelementptr inbounds %struct.w2c_hermes, ptr %21898, i32 0, i32 6
  %21900 = load i32, ptr %48, align 4, !tbaa !9
  %21901 = zext i32 %21900 to i64
  %21902 = add i64 %21901, 40
  %21903 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21899, i64 noundef %21902, i64 noundef %21903)
  %21904 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21904, ptr %48, align 4, !tbaa !9
  %21905 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21905, ptr %49, align 4, !tbaa !9
  store i32 41, ptr %50, align 4, !tbaa !9
  %21906 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21906, ptr %51, align 4, !tbaa !9
  store i32 40, ptr %52, align 4, !tbaa !9
  %21907 = load i32, ptr %52, align 4, !tbaa !9
  %21908 = load i32, ptr %51, align 4, !tbaa !9
  %21909 = add i32 %21908, %21907
  store i32 %21909, ptr %51, align 4, !tbaa !9
  %21910 = load ptr, ptr %5, align 8, !tbaa !5
  %21911 = load i32, ptr %49, align 4, !tbaa !9
  %21912 = load i32, ptr %50, align 4, !tbaa !9
  %21913 = load i32, ptr %51, align 4, !tbaa !9
  %21914 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %21910, i32 noundef %21911, i32 noundef %21912, i32 noundef %21913)
  store i32 %21914, ptr %49, align 4, !tbaa !9
  %21915 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %21915, ptr %16, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %21916 = load i32, ptr %50, align 4, !tbaa !9
  %21917 = load i32, ptr %49, align 4, !tbaa !9
  %21918 = add i32 %21917, %21916
  store i32 %21918, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21919 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21919, ptr %51, align 4, !tbaa !9
  %21920 = load i32, ptr %51, align 4, !tbaa !9
  %21921 = icmp ne i32 %21920, 0
  br i1 %21921, label %21922, label %21924

21922:                                            ; preds = %21728
  %21923 = load i32, ptr %49, align 4, !tbaa !9
  br label %21926

21924:                                            ; preds = %21728
  %21925 = load i32, ptr %50, align 4, !tbaa !9
  br label %21926

21926:                                            ; preds = %21924, %21922
  %21927 = phi i32 [ %21923, %21922 ], [ %21925, %21924 ]
  store i32 %21927, ptr %49, align 4, !tbaa !9
  %21928 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %21928, ptr %16, align 4, !tbaa !9
  %21929 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21929, ptr %50, align 4, !tbaa !9
  %21930 = load ptr, ptr %5, align 8, !tbaa !5
  %21931 = getelementptr inbounds %struct.w2c_hermes, ptr %21930, i32 0, i32 6
  %21932 = load i32, ptr %50, align 4, !tbaa !9
  %21933 = zext i32 %21932 to i64
  %21934 = call i32 @i32_load(ptr noundef %21931, i64 noundef %21933)
  store i32 %21934, ptr %50, align 4, !tbaa !9
  store i32 268, ptr %51, align 4, !tbaa !9
  %21935 = load i32, ptr %51, align 4, !tbaa !9
  %21936 = load i32, ptr %50, align 4, !tbaa !9
  %21937 = add i32 %21936, %21935
  store i32 %21937, ptr %50, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %21938 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21938, ptr %52, align 4, !tbaa !9
  %21939 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %21939, ptr %53, align 4, !tbaa !9
  %21940 = load ptr, ptr %5, align 8, !tbaa !5
  %21941 = load i32, ptr %48, align 4, !tbaa !9
  %21942 = load i32, ptr %49, align 4, !tbaa !9
  %21943 = load i32, ptr %50, align 4, !tbaa !9
  %21944 = load i32, ptr %51, align 4, !tbaa !9
  %21945 = load i32, ptr %52, align 4, !tbaa !9
  %21946 = load i32, ptr %53, align 4, !tbaa !9
  %21947 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCompareBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %21940, i32 noundef %21941, i32 noundef %21942, i32 noundef %21943, i32 noundef %21944, i32 noundef %21945, i32 noundef %21946)
  store i32 %21947, ptr %48, align 4, !tbaa !9
  %21948 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21948, ptr %48, align 4, !tbaa !9
  %21949 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %21949, ptr %49, align 4, !tbaa !9
  %21950 = load ptr, ptr %5, align 8, !tbaa !5
  %21951 = getelementptr inbounds %struct.w2c_hermes, ptr %21950, i32 0, i32 6
  %21952 = load i32, ptr %48, align 4, !tbaa !9
  %21953 = zext i32 %21952 to i64
  %21954 = add i64 %21953, 8
  %21955 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21951, i64 noundef %21954, i32 noundef %21955)
  %21956 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21956, ptr %48, align 4, !tbaa !9
  %21957 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %21957, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %21958 = load i32, ptr %50, align 4, !tbaa !9
  %21959 = load i32, ptr %49, align 4, !tbaa !9
  %21960 = add i32 %21959, %21958
  store i32 %21960, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %21961 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %21961, ptr %51, align 4, !tbaa !9
  %21962 = load i32, ptr %51, align 4, !tbaa !9
  %21963 = icmp ne i32 %21962, 0
  br i1 %21963, label %21964, label %21966

21964:                                            ; preds = %21926
  %21965 = load i32, ptr %49, align 4, !tbaa !9
  br label %21968

21966:                                            ; preds = %21926
  %21967 = load i32, ptr %50, align 4, !tbaa !9
  br label %21968

21968:                                            ; preds = %21966, %21964
  %21969 = phi i32 [ %21965, %21964 ], [ %21967, %21966 ]
  store i32 %21969, ptr %49, align 4, !tbaa !9
  %21970 = load ptr, ptr %5, align 8, !tbaa !5
  %21971 = getelementptr inbounds %struct.w2c_hermes, ptr %21970, i32 0, i32 6
  %21972 = load i32, ptr %48, align 4, !tbaa !9
  %21973 = zext i32 %21972 to i64
  %21974 = add i64 %21973, 4
  %21975 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21971, i64 noundef %21974, i32 noundef %21975)
  %21976 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21976, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %21977 = load ptr, ptr %5, align 8, !tbaa !5
  %21978 = getelementptr inbounds %struct.w2c_hermes, ptr %21977, i32 0, i32 6
  %21979 = load i32, ptr %48, align 4, !tbaa !9
  %21980 = zext i32 %21979 to i64
  %21981 = add i64 %21980, 32
  %21982 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21978, i64 noundef %21981, i64 noundef %21982)
  %21983 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21983, ptr %48, align 4, !tbaa !9
  store i64 0, ptr %59, align 8, !tbaa !11
  %21984 = load ptr, ptr %5, align 8, !tbaa !5
  %21985 = getelementptr inbounds %struct.w2c_hermes, ptr %21984, i32 0, i32 6
  %21986 = load i32, ptr %48, align 4, !tbaa !9
  %21987 = zext i32 %21986 to i64
  %21988 = add i64 %21987, 56
  %21989 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21985, i64 noundef %21988, i64 noundef %21989)
  %21990 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %21990, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %21991 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21991, ptr %50, align 4, !tbaa !9
  %21992 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %21992, ptr %51, align 4, !tbaa !9
  %21993 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21993, ptr %52, align 4, !tbaa !9
  store i32 32, ptr %53, align 4, !tbaa !9
  %21994 = load i32, ptr %53, align 4, !tbaa !9
  %21995 = load i32, ptr %52, align 4, !tbaa !9
  %21996 = add i32 %21995, %21994
  store i32 %21996, ptr %52, align 4, !tbaa !9
  %21997 = load ptr, ptr %5, align 8, !tbaa !5
  %21998 = load i32, ptr %48, align 4, !tbaa !9
  %21999 = load i32, ptr %49, align 4, !tbaa !9
  %22000 = load i32, ptr %50, align 4, !tbaa !9
  %22001 = load i32, ptr %51, align 4, !tbaa !9
  %22002 = load i32, ptr %52, align 4, !tbaa !9
  %22003 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %21997, i32 noundef %21998, i32 noundef %21999, i32 noundef %22000, i32 noundef %22001, i32 noundef %22002)
  store i32 %22003, ptr %48, align 4, !tbaa !9
  %22004 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %22004, ptr %12, align 4, !tbaa !9
  %22005 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22005, ptr %48, align 4, !tbaa !9
  store i32 42, ptr %49, align 4, !tbaa !9
  %22006 = load ptr, ptr %5, align 8, !tbaa !5
  %22007 = getelementptr inbounds %struct.w2c_hermes, ptr %22006, i32 0, i32 6
  %22008 = load i32, ptr %48, align 4, !tbaa !9
  %22009 = zext i32 %22008 to i64
  %22010 = add i64 %22009, 76
  %22011 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22007, i64 noundef %22010, i32 noundef %22011)
  %22012 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22012, ptr %48, align 4, !tbaa !9
  store i32 31459, ptr %49, align 4, !tbaa !9
  %22013 = load ptr, ptr %5, align 8, !tbaa !5
  %22014 = getelementptr inbounds %struct.w2c_hermes, ptr %22013, i32 0, i32 6
  %22015 = load i32, ptr %48, align 4, !tbaa !9
  %22016 = zext i32 %22015 to i64
  %22017 = add i64 %22016, 72
  %22018 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22014, i64 noundef %22017, i32 noundef %22018)
  %22019 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22019, ptr %48, align 4, !tbaa !9
  %22020 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %22020, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %22021 = load i32, ptr %50, align 4, !tbaa !9
  %22022 = load i32, ptr %49, align 4, !tbaa !9
  %22023 = add i32 %22022, %22021
  store i32 %22023, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %22024 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %22024, ptr %51, align 4, !tbaa !9
  %22025 = load i32, ptr %51, align 4, !tbaa !9
  %22026 = icmp ne i32 %22025, 0
  br i1 %22026, label %22027, label %22029

22027:                                            ; preds = %21968
  %22028 = load i32, ptr %49, align 4, !tbaa !9
  br label %22031

22029:                                            ; preds = %21968
  %22030 = load i32, ptr %50, align 4, !tbaa !9
  br label %22031

22031:                                            ; preds = %22029, %22027
  %22032 = phi i32 [ %22028, %22027 ], [ %22030, %22029 ]
  store i32 %22032, ptr %49, align 4, !tbaa !9
  %22033 = load ptr, ptr %5, align 8, !tbaa !5
  %22034 = getelementptr inbounds %struct.w2c_hermes, ptr %22033, i32 0, i32 6
  %22035 = load i32, ptr %48, align 4, !tbaa !9
  %22036 = zext i32 %22035 to i64
  %22037 = add i64 %22036, 80
  %22038 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22034, i64 noundef %22037, i32 noundef %22038)
  %22039 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22039, ptr %48, align 4, !tbaa !9
  %22040 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22040, ptr %49, align 4, !tbaa !9
  %22041 = load ptr, ptr %5, align 8, !tbaa !5
  %22042 = getelementptr inbounds %struct.w2c_hermes, ptr %22041, i32 0, i32 6
  %22043 = load i32, ptr %49, align 4, !tbaa !9
  %22044 = zext i32 %22043 to i64
  %22045 = add i64 %22044, 72
  %22046 = call i64 @i64_load(ptr noundef %22042, i64 noundef %22045)
  store i64 %22046, ptr %59, align 8, !tbaa !11
  %22047 = load ptr, ptr %5, align 8, !tbaa !5
  %22048 = getelementptr inbounds %struct.w2c_hermes, ptr %22047, i32 0, i32 6
  %22049 = load i32, ptr %48, align 4, !tbaa !9
  %22050 = zext i32 %22049 to i64
  %22051 = add i64 %22050, 24
  %22052 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22048, i64 noundef %22051, i64 noundef %22052)
  %22053 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22053, ptr %48, align 4, !tbaa !9
  %22054 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22054, ptr %49, align 4, !tbaa !9
  %22055 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22055, ptr %50, align 4, !tbaa !9
  store i32 24, ptr %51, align 4, !tbaa !9
  %22056 = load i32, ptr %51, align 4, !tbaa !9
  %22057 = load i32, ptr %50, align 4, !tbaa !9
  %22058 = add i32 %22057, %22056
  store i32 %22058, ptr %50, align 4, !tbaa !9
  %22059 = load ptr, ptr %5, align 8, !tbaa !5
  %22060 = load i32, ptr %49, align 4, !tbaa !9
  %22061 = load i32, ptr %50, align 4, !tbaa !9
  %22062 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %22059, i32 noundef %22060, i32 noundef %22061)
  store i32 %22062, ptr %49, align 4, !tbaa !9
  %22063 = load ptr, ptr %5, align 8, !tbaa !5
  %22064 = getelementptr inbounds %struct.w2c_hermes, ptr %22063, i32 0, i32 6
  %22065 = load i32, ptr %48, align 4, !tbaa !9
  %22066 = zext i32 %22065 to i64
  %22067 = add i64 %22066, 84
  %22068 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22064, i64 noundef %22067, i32 noundef %22068)
  %22069 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22069, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %22070 = load ptr, ptr %5, align 8, !tbaa !5
  %22071 = getelementptr inbounds %struct.w2c_hermes, ptr %22070, i32 0, i32 6
  %22072 = load i32, ptr %48, align 4, !tbaa !9
  %22073 = zext i32 %22072 to i64
  %22074 = add i64 %22073, 92
  %22075 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22071, i64 noundef %22074, i32 noundef %22075)
  %22076 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22076, ptr %48, align 4, !tbaa !9
  %22077 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22077, ptr %49, align 4, !tbaa !9
  %22078 = load ptr, ptr %5, align 8, !tbaa !5
  %22079 = getelementptr inbounds %struct.w2c_hermes, ptr %22078, i32 0, i32 6
  %22080 = load i32, ptr %48, align 4, !tbaa !9
  %22081 = zext i32 %22080 to i64
  %22082 = add i64 %22081, 88
  %22083 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22079, i64 noundef %22082, i32 noundef %22083)
  %22084 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22084, ptr %48, align 4, !tbaa !9
  %22085 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22085, ptr %49, align 4, !tbaa !9
  %22086 = load ptr, ptr %5, align 8, !tbaa !5
  %22087 = getelementptr inbounds %struct.w2c_hermes, ptr %22086, i32 0, i32 6
  %22088 = load i32, ptr %49, align 4, !tbaa !9
  %22089 = zext i32 %22088 to i64
  %22090 = add i64 %22089, 88
  %22091 = call i64 @i64_load(ptr noundef %22087, i64 noundef %22090)
  store i64 %22091, ptr %59, align 8, !tbaa !11
  %22092 = load ptr, ptr %5, align 8, !tbaa !5
  %22093 = getelementptr inbounds %struct.w2c_hermes, ptr %22092, i32 0, i32 6
  %22094 = load i32, ptr %48, align 4, !tbaa !9
  %22095 = zext i32 %22094 to i64
  %22096 = add i64 %22095, 16
  %22097 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22093, i64 noundef %22096, i64 noundef %22097)
  %22098 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22098, ptr %48, align 4, !tbaa !9
  store i32 40, ptr %49, align 4, !tbaa !9
  %22099 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22099, ptr %50, align 4, !tbaa !9
  store i32 16, ptr %51, align 4, !tbaa !9
  %22100 = load i32, ptr %51, align 4, !tbaa !9
  %22101 = load i32, ptr %50, align 4, !tbaa !9
  %22102 = add i32 %22101, %22100
  store i32 %22102, ptr %50, align 4, !tbaa !9
  %22103 = load ptr, ptr %5, align 8, !tbaa !5
  %22104 = load i32, ptr %48, align 4, !tbaa !9
  %22105 = load i32, ptr %49, align 4, !tbaa !9
  %22106 = load i32, ptr %50, align 4, !tbaa !9
  %22107 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %22103, i32 noundef %22104, i32 noundef %22105, i32 noundef %22106)
  store i32 %22107, ptr %48, align 4, !tbaa !9
  %22108 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22108, ptr %48, align 4, !tbaa !9
  %22109 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22109, ptr %49, align 4, !tbaa !9
  %22110 = load ptr, ptr %5, align 8, !tbaa !5
  %22111 = load i32, ptr %48, align 4, !tbaa !9
  %22112 = load i32, ptr %49, align 4, !tbaa !9
  %22113 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef %22110, i32 noundef %22111, i32 noundef %22112)
  store i32 %22113, ptr %48, align 4, !tbaa !9
  %22114 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22114, ptr %48, align 4, !tbaa !9
  %22115 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22115, ptr %49, align 4, !tbaa !9
  %22116 = load ptr, ptr %5, align 8, !tbaa !5
  %22117 = getelementptr inbounds %struct.w2c_hermes, ptr %22116, i32 0, i32 6
  %22118 = load i32, ptr %48, align 4, !tbaa !9
  %22119 = zext i32 %22118 to i64
  %22120 = add i64 %22119, 8
  %22121 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22117, i64 noundef %22120, i32 noundef %22121)
  %22122 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22122, ptr %48, align 4, !tbaa !9
  %22123 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22123, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %22124 = load i32, ptr %50, align 4, !tbaa !9
  %22125 = load i32, ptr %49, align 4, !tbaa !9
  %22126 = add i32 %22125, %22124
  store i32 %22126, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %22127 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22127, ptr %51, align 4, !tbaa !9
  %22128 = load i32, ptr %51, align 4, !tbaa !9
  %22129 = icmp ne i32 %22128, 0
  br i1 %22129, label %22130, label %22132

22130:                                            ; preds = %22031
  %22131 = load i32, ptr %49, align 4, !tbaa !9
  br label %22134

22132:                                            ; preds = %22031
  %22133 = load i32, ptr %50, align 4, !tbaa !9
  br label %22134

22134:                                            ; preds = %22132, %22130
  %22135 = phi i32 [ %22131, %22130 ], [ %22133, %22132 ]
  store i32 %22135, ptr %49, align 4, !tbaa !9
  %22136 = load ptr, ptr %5, align 8, !tbaa !5
  %22137 = getelementptr inbounds %struct.w2c_hermes, ptr %22136, i32 0, i32 6
  %22138 = load i32, ptr %48, align 4, !tbaa !9
  %22139 = zext i32 %22138 to i64
  %22140 = add i64 %22139, 4
  %22141 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22137, i64 noundef %22140, i32 noundef %22141)
  %22142 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22142, ptr %48, align 4, !tbaa !9
  store i32 96, ptr %49, align 4, !tbaa !9
  %22143 = load i32, ptr %49, align 4, !tbaa !9
  %22144 = load i32, ptr %48, align 4, !tbaa !9
  %22145 = add i32 %22144, %22143
  store i32 %22145, ptr %48, align 4, !tbaa !9
  %22146 = load i32, ptr %48, align 4, !tbaa !9
  %22147 = load ptr, ptr %5, align 8, !tbaa !5
  %22148 = getelementptr inbounds %struct.w2c_hermes, ptr %22147, i32 0, i32 3
  store i32 %22146, ptr %22148, align 8, !tbaa !15
  %22149 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22149, ptr %48, align 4, !tbaa !9
  store i32 43, ptr %49, align 4, !tbaa !9
  %22150 = load ptr, ptr %5, align 8, !tbaa !5
  %22151 = getelementptr inbounds %struct.w2c_hermes, ptr %22150, i32 0, i32 6
  %22152 = load i32, ptr %48, align 4, !tbaa !9
  %22153 = zext i32 %22152 to i64
  %22154 = add i64 %22153, 184
  %22155 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22151, i64 noundef %22154, i32 noundef %22155)
  %22156 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22156, ptr %48, align 4, !tbaa !9
  store i32 52878, ptr %49, align 4, !tbaa !9
  %22157 = load ptr, ptr %5, align 8, !tbaa !5
  %22158 = getelementptr inbounds %struct.w2c_hermes, ptr %22157, i32 0, i32 6
  %22159 = load i32, ptr %48, align 4, !tbaa !9
  %22160 = zext i32 %22159 to i64
  %22161 = add i64 %22160, 180
  %22162 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22158, i64 noundef %22161, i32 noundef %22162)
  %22163 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22163, ptr %48, align 4, !tbaa !9
  %22164 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22164, ptr %49, align 4, !tbaa !9
  %22165 = load ptr, ptr %5, align 8, !tbaa !5
  %22166 = getelementptr inbounds %struct.w2c_hermes, ptr %22165, i32 0, i32 6
  %22167 = load i32, ptr %49, align 4, !tbaa !9
  %22168 = zext i32 %22167 to i64
  %22169 = add i64 %22168, 180
  %22170 = call i64 @i64_load(ptr noundef %22166, i64 noundef %22169)
  store i64 %22170, ptr %59, align 8, !tbaa !11
  %22171 = load ptr, ptr %5, align 8, !tbaa !5
  %22172 = getelementptr inbounds %struct.w2c_hermes, ptr %22171, i32 0, i32 6
  %22173 = load i32, ptr %48, align 4, !tbaa !9
  %22174 = zext i32 %22173 to i64
  %22175 = add i64 %22174, 8
  %22176 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22172, i64 noundef %22175, i64 noundef %22176)
  %22177 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22177, ptr %48, align 4, !tbaa !9
  %22178 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22178, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %22179 = load i32, ptr %50, align 4, !tbaa !9
  %22180 = load i32, ptr %49, align 4, !tbaa !9
  %22181 = add i32 %22180, %22179
  store i32 %22181, ptr %49, align 4, !tbaa !9
  %22182 = load ptr, ptr %5, align 8, !tbaa !5
  %22183 = load i32, ptr %48, align 4, !tbaa !9
  %22184 = load i32, ptr %49, align 4, !tbaa !9
  %22185 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %22182, i32 noundef %22183, i32 noundef %22184)
  store i32 %22185, ptr %48, align 4, !tbaa !9
  %22186 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %22186, ptr %7, align 4, !tbaa !9
  %22187 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22187, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %22188 = load ptr, ptr %5, align 8, !tbaa !5
  %22189 = getelementptr inbounds %struct.w2c_hermes, ptr %22188, i32 0, i32 6
  %22190 = load i32, ptr %48, align 4, !tbaa !9
  %22191 = zext i32 %22190 to i64
  %22192 = add i64 %22191, 196
  %22193 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22189, i64 noundef %22192, i32 noundef %22193)
  %22194 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22194, ptr %48, align 4, !tbaa !9
  %22195 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22195, ptr %49, align 4, !tbaa !9
  %22196 = load ptr, ptr %5, align 8, !tbaa !5
  %22197 = getelementptr inbounds %struct.w2c_hermes, ptr %22196, i32 0, i32 6
  %22198 = load i32, ptr %48, align 4, !tbaa !9
  %22199 = zext i32 %22198 to i64
  %22200 = add i64 %22199, 188
  %22201 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22197, i64 noundef %22200, i32 noundef %22201)
  %22202 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22202, ptr %48, align 4, !tbaa !9
  %22203 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22203, ptr %49, align 4, !tbaa !9
  store i32 188, ptr %50, align 4, !tbaa !9
  %22204 = load i32, ptr %50, align 4, !tbaa !9
  %22205 = load i32, ptr %49, align 4, !tbaa !9
  %22206 = add i32 %22205, %22204
  store i32 %22206, ptr %49, align 4, !tbaa !9
  %22207 = load ptr, ptr %5, align 8, !tbaa !5
  %22208 = getelementptr inbounds %struct.w2c_hermes, ptr %22207, i32 0, i32 6
  %22209 = load i32, ptr %48, align 4, !tbaa !9
  %22210 = zext i32 %22209 to i64
  %22211 = add i64 %22210, 192
  %22212 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22208, i64 noundef %22211, i32 noundef %22212)
  %22213 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22213, ptr %48, align 4, !tbaa !9
  %22214 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22214, ptr %49, align 4, !tbaa !9
  %22215 = load ptr, ptr %5, align 8, !tbaa !5
  %22216 = getelementptr inbounds %struct.w2c_hermes, ptr %22215, i32 0, i32 6
  %22217 = load i32, ptr %49, align 4, !tbaa !9
  %22218 = zext i32 %22217 to i64
  %22219 = add i64 %22218, 192
  %22220 = call i64 @i64_load(ptr noundef %22216, i64 noundef %22219)
  store i64 %22220, ptr %59, align 8, !tbaa !11
  %22221 = load ptr, ptr %5, align 8, !tbaa !5
  %22222 = getelementptr inbounds %struct.w2c_hermes, ptr %22221, i32 0, i32 6
  %22223 = load i32, ptr %48, align 4, !tbaa !9
  %22224 = zext i32 %22223 to i64
  %22225 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22222, i64 noundef %22224, i64 noundef %22225)
  %22226 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22226, ptr %48, align 4, !tbaa !9
  store i32 42, ptr %49, align 4, !tbaa !9
  %22227 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22227, ptr %50, align 4, !tbaa !9
  %22228 = load ptr, ptr %5, align 8, !tbaa !5
  %22229 = load i32, ptr %48, align 4, !tbaa !9
  %22230 = load i32, ptr %49, align 4, !tbaa !9
  %22231 = load i32, ptr %50, align 4, !tbaa !9
  %22232 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %22228, i32 noundef %22229, i32 noundef %22230, i32 noundef %22231)
  store i32 %22232, ptr %48, align 4, !tbaa !9
  %22233 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22233, ptr %48, align 4, !tbaa !9
  %22234 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22234, ptr %49, align 4, !tbaa !9
  %22235 = load ptr, ptr %5, align 8, !tbaa !5
  %22236 = getelementptr inbounds %struct.w2c_hermes, ptr %22235, i32 0, i32 6
  %22237 = load i32, ptr %49, align 4, !tbaa !9
  %22238 = zext i32 %22237 to i64
  %22239 = call i32 @i32_load(ptr noundef %22236, i64 noundef %22238)
  store i32 %22239, ptr %49, align 4, !tbaa !9
  store i32 268, ptr %50, align 4, !tbaa !9
  %22240 = load i32, ptr %50, align 4, !tbaa !9
  %22241 = load i32, ptr %49, align 4, !tbaa !9
  %22242 = add i32 %22241, %22240
  store i32 %22242, ptr %49, align 4, !tbaa !9
  %22243 = load ptr, ptr %5, align 8, !tbaa !5
  %22244 = load i32, ptr %48, align 4, !tbaa !9
  %22245 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateThrowInst0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %22243, i32 noundef %22244, i32 noundef %22245)
  %22246 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22246, ptr %48, align 4, !tbaa !9
  %22247 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %22247, ptr %49, align 4, !tbaa !9
  %22248 = load ptr, ptr %5, align 8, !tbaa !5
  %22249 = getelementptr inbounds %struct.w2c_hermes, ptr %22248, i32 0, i32 6
  %22250 = load i32, ptr %48, align 4, !tbaa !9
  %22251 = zext i32 %22250 to i64
  %22252 = add i64 %22251, 8
  %22253 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22249, i64 noundef %22252, i32 noundef %22253)
  %22254 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22254, ptr %48, align 4, !tbaa !9
  %22255 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %22255, ptr %49, align 4, !tbaa !9
  store i32 36, ptr %50, align 4, !tbaa !9
  %22256 = load i32, ptr %50, align 4, !tbaa !9
  %22257 = load i32, ptr %49, align 4, !tbaa !9
  %22258 = add i32 %22257, %22256
  store i32 %22258, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %22259 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %22259, ptr %51, align 4, !tbaa !9
  %22260 = load i32, ptr %51, align 4, !tbaa !9
  %22261 = icmp ne i32 %22260, 0
  br i1 %22261, label %22262, label %22264

22262:                                            ; preds = %22134
  %22263 = load i32, ptr %49, align 4, !tbaa !9
  br label %22266

22264:                                            ; preds = %22134
  %22265 = load i32, ptr %50, align 4, !tbaa !9
  br label %22266

22266:                                            ; preds = %22264, %22262
  %22267 = phi i32 [ %22263, %22262 ], [ %22265, %22264 ]
  store i32 %22267, ptr %49, align 4, !tbaa !9
  %22268 = load ptr, ptr %5, align 8, !tbaa !5
  %22269 = getelementptr inbounds %struct.w2c_hermes, ptr %22268, i32 0, i32 6
  %22270 = load i32, ptr %48, align 4, !tbaa !9
  %22271 = zext i32 %22270 to i64
  %22272 = add i64 %22271, 4
  %22273 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22269, i64 noundef %22272, i32 noundef %22273)
  %22274 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22274, ptr %48, align 4, !tbaa !9
  %22275 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22275, ptr %49, align 4, !tbaa !9
  %22276 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %22276, ptr %50, align 4, !tbaa !9
  %22277 = load ptr, ptr %5, align 8, !tbaa !5
  %22278 = load i32, ptr %49, align 4, !tbaa !9
  %22279 = load i32, ptr %50, align 4, !tbaa !9
  %22280 = call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadStackInst0x28hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef %22277, i32 noundef %22278, i32 noundef %22279)
  store i32 %22280, ptr %49, align 4, !tbaa !9
  %22281 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %22281, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %22282 = load i32, ptr %50, align 4, !tbaa !9
  %22283 = load i32, ptr %49, align 4, !tbaa !9
  %22284 = add i32 %22283, %22282
  store i32 %22284, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %22285 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22285, ptr %51, align 4, !tbaa !9
  %22286 = load i32, ptr %51, align 4, !tbaa !9
  %22287 = icmp ne i32 %22286, 0
  br i1 %22287, label %22288, label %22290

22288:                                            ; preds = %22266
  %22289 = load i32, ptr %49, align 4, !tbaa !9
  br label %22292

22290:                                            ; preds = %22266
  %22291 = load i32, ptr %50, align 4, !tbaa !9
  br label %22292

22292:                                            ; preds = %22290, %22288
  %22293 = phi i32 [ %22289, %22288 ], [ %22291, %22290 ]
  store i32 %22293, ptr %49, align 4, !tbaa !9
  %22294 = load ptr, ptr %5, align 8, !tbaa !5
  %22295 = load i32, ptr %48, align 4, !tbaa !9
  %22296 = load i32, ptr %49, align 4, !tbaa !9
  %22297 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitIteratorValueSlow0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %22294, i32 noundef %22295, i32 noundef %22296)
  store i32 %22297, ptr %48, align 4, !tbaa !9
  %22298 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %22298, ptr %7, align 4, !tbaa !9
  %22299 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22299, ptr %48, align 4, !tbaa !9
  store i32 240, ptr %49, align 4, !tbaa !9
  %22300 = load i32, ptr %49, align 4, !tbaa !9
  %22301 = load i32, ptr %48, align 4, !tbaa !9
  %22302 = add i32 %22301, %22300
  store i32 %22302, ptr %48, align 4, !tbaa !9
  %22303 = load i32, ptr %48, align 4, !tbaa !9
  %22304 = load ptr, ptr %5, align 8, !tbaa !5
  %22305 = getelementptr inbounds %struct.w2c_hermes, ptr %22304, i32 0, i32 3
  store i32 %22303, ptr %22305, align 8, !tbaa !15
  %22306 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22306, ptr %48, align 4, !tbaa !9
  br label %22463

22307:                                            ; preds = %19935
  %22308 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22308, ptr %48, align 4, !tbaa !9
  %22309 = load ptr, ptr %5, align 8, !tbaa !5
  %22310 = getelementptr inbounds %struct.w2c_hermes, ptr %22309, i32 0, i32 6
  %22311 = load i32, ptr %48, align 4, !tbaa !9
  %22312 = zext i32 %22311 to i64
  %22313 = add i64 %22312, 28
  %22314 = call i32 @i32_load(ptr noundef %22310, i64 noundef %22313)
  store i32 %22314, ptr %48, align 4, !tbaa !9
  %22315 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %22315, ptr %7, align 4, !tbaa !9
  %22316 = load i32, ptr %48, align 4, !tbaa !9
  %22317 = icmp ne i32 %22316, 0
  br i1 %22317, label %22318, label %22331

22318:                                            ; preds = %22307
  %22319 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22319, ptr %48, align 4, !tbaa !9
  %22320 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22320, ptr %49, align 4, !tbaa !9
  %22321 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22321, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %22322 = load ptr, ptr %5, align 8, !tbaa !5
  %22323 = load i32, ptr %49, align 4, !tbaa !9
  %22324 = load i32, ptr %50, align 4, !tbaa !9
  %22325 = load i32, ptr %51, align 4, !tbaa !9
  %22326 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %22322, i32 noundef %22323, i32 noundef %22324, i32 noundef %22325)
  store i32 %22326, ptr %49, align 4, !tbaa !9
  %22327 = load ptr, ptr %5, align 8, !tbaa !5
  %22328 = load i32, ptr %48, align 4, !tbaa !9
  %22329 = load i32, ptr %49, align 4, !tbaa !9
  %22330 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenYieldOrAwaitExpr0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %22327, i32 noundef %22328, i32 noundef %22329)
  store i32 %22330, ptr %48, align 4, !tbaa !9
  br label %22347

22331:                                            ; preds = %22307
  %22332 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22332, ptr %48, align 4, !tbaa !9
  %22333 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22333, ptr %49, align 4, !tbaa !9
  %22334 = load ptr, ptr %5, align 8, !tbaa !5
  %22335 = getelementptr inbounds %struct.w2c_hermes, ptr %22334, i32 0, i32 6
  %22336 = load i32, ptr %49, align 4, !tbaa !9
  %22337 = zext i32 %22336 to i64
  %22338 = add i64 %22337, 4
  %22339 = call i32 @i32_load(ptr noundef %22335, i64 noundef %22338)
  store i32 %22339, ptr %49, align 4, !tbaa !9
  store i32 268, ptr %50, align 4, !tbaa !9
  %22340 = load i32, ptr %50, align 4, !tbaa !9
  %22341 = load i32, ptr %49, align 4, !tbaa !9
  %22342 = add i32 %22341, %22340
  store i32 %22342, ptr %49, align 4, !tbaa !9
  %22343 = load ptr, ptr %5, align 8, !tbaa !5
  %22344 = load i32, ptr %48, align 4, !tbaa !9
  %22345 = load i32, ptr %49, align 4, !tbaa !9
  %22346 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenYieldOrAwaitExpr0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %22343, i32 noundef %22344, i32 noundef %22345)
  store i32 %22346, ptr %48, align 4, !tbaa !9
  br label %22347

22347:                                            ; preds = %22331, %22318
  br label %22463

22348:                                            ; preds = %19934, %19925
  %22349 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22349, ptr %48, align 4, !tbaa !9
  %22350 = load i32, ptr %48, align 4, !tbaa !9
  %22351 = icmp ne i32 %22350, 0
  %22352 = xor i1 %22351, true
  %22353 = zext i1 %22352 to i32
  store i32 %22353, ptr %48, align 4, !tbaa !9
  %22354 = load i32, ptr %48, align 4, !tbaa !9
  %22355 = icmp ne i32 %22354, 0
  br i1 %22355, label %22356, label %22357

22356:                                            ; preds = %22348
  br label %22385

22357:                                            ; preds = %22348
  %22358 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22358, ptr %48, align 4, !tbaa !9
  store i32 44, ptr %49, align 4, !tbaa !9
  %22359 = load i32, ptr %48, align 4, !tbaa !9
  %22360 = load i32, ptr %49, align 4, !tbaa !9
  %22361 = icmp ne i32 %22359, %22360
  %22362 = zext i1 %22361 to i32
  store i32 %22362, ptr %48, align 4, !tbaa !9
  %22363 = load i32, ptr %48, align 4, !tbaa !9
  %22364 = icmp ne i32 %22363, 0
  br i1 %22364, label %22365, label %22366

22365:                                            ; preds = %22357
  br label %22385

22366:                                            ; preds = %22357
  %22367 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22367, ptr %48, align 4, !tbaa !9
  %22368 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22368, ptr %49, align 4, !tbaa !9
  %22369 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22369, ptr %50, align 4, !tbaa !9
  %22370 = load ptr, ptr %5, align 8, !tbaa !5
  %22371 = getelementptr inbounds %struct.w2c_hermes, ptr %22370, i32 0, i32 6
  %22372 = load i32, ptr %50, align 4, !tbaa !9
  %22373 = zext i32 %22372 to i64
  %22374 = add i64 %22373, 28
  %22375 = call i32 @i32_load(ptr noundef %22371, i64 noundef %22374)
  store i32 %22375, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %22376 = load ptr, ptr %5, align 8, !tbaa !5
  %22377 = load i32, ptr %49, align 4, !tbaa !9
  %22378 = load i32, ptr %50, align 4, !tbaa !9
  %22379 = load i32, ptr %51, align 4, !tbaa !9
  %22380 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %22376, i32 noundef %22377, i32 noundef %22378, i32 noundef %22379)
  store i32 %22380, ptr %49, align 4, !tbaa !9
  %22381 = load ptr, ptr %5, align 8, !tbaa !5
  %22382 = load i32, ptr %48, align 4, !tbaa !9
  %22383 = load i32, ptr %49, align 4, !tbaa !9
  %22384 = call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenYieldOrAwaitExpr0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %22381, i32 noundef %22382, i32 noundef %22383)
  store i32 %22384, ptr %48, align 4, !tbaa !9
  br label %22463

22385:                                            ; preds = %22365, %22356
  %22386 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22386, ptr %48, align 4, !tbaa !9
  %22387 = load ptr, ptr %5, align 8, !tbaa !5
  %22388 = getelementptr inbounds %struct.w2c_hermes, ptr %22387, i32 0, i32 6
  %22389 = load i32, ptr %48, align 4, !tbaa !9
  %22390 = zext i32 %22389 to i64
  %22391 = call i32 @i32_load(ptr noundef %22388, i64 noundef %22390)
  store i32 %22391, ptr %48, align 4, !tbaa !9
  %22392 = load ptr, ptr %5, align 8, !tbaa !5
  %22393 = getelementptr inbounds %struct.w2c_hermes, ptr %22392, i32 0, i32 6
  %22394 = load i32, ptr %48, align 4, !tbaa !9
  %22395 = zext i32 %22394 to i64
  %22396 = add i64 %22395, 28
  %22397 = call i32 @i32_load(ptr noundef %22393, i64 noundef %22396)
  store i32 %22397, ptr %48, align 4, !tbaa !9
  %22398 = load ptr, ptr %5, align 8, !tbaa !5
  %22399 = getelementptr inbounds %struct.w2c_hermes, ptr %22398, i32 0, i32 6
  %22400 = load i32, ptr %48, align 4, !tbaa !9
  %22401 = zext i32 %22400 to i64
  %22402 = add i64 %22401, 72
  %22403 = call i32 @i32_load(ptr noundef %22399, i64 noundef %22402)
  store i32 %22403, ptr %48, align 4, !tbaa !9
  %22404 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %22404, ptr %8, align 4, !tbaa !9
  %22405 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22405, ptr %48, align 4, !tbaa !9
  %22406 = load ptr, ptr %5, align 8, !tbaa !5
  %22407 = getelementptr inbounds %struct.w2c_hermes, ptr %22406, i32 0, i32 6
  %22408 = load i32, ptr %48, align 4, !tbaa !9
  %22409 = zext i32 %22408 to i64
  %22410 = add i64 %22409, 16
  %22411 = call i64 @i64_load(ptr noundef %22407, i64 noundef %22410)
  store i64 %22411, ptr %58, align 8, !tbaa !11
  %22412 = load i64, ptr %58, align 8, !tbaa !11
  store i64 %22412, ptr %31, align 8, !tbaa !11
  %22413 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %22413, ptr %48, align 4, !tbaa !9
  store i32 54169, ptr %49, align 4, !tbaa !9
  %22414 = load ptr, ptr %5, align 8, !tbaa !5
  %22415 = getelementptr inbounds %struct.w2c_hermes, ptr %22414, i32 0, i32 6
  %22416 = load i32, ptr %48, align 4, !tbaa !9
  %22417 = zext i32 %22416 to i64
  %22418 = add i64 %22417, 20
  %22419 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22415, i64 noundef %22418, i32 noundef %22419)
  %22420 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %22420, ptr %48, align 4, !tbaa !9
  store i32 259, ptr %49, align 4, !tbaa !9
  %22421 = load ptr, ptr %5, align 8, !tbaa !5
  %22422 = getelementptr inbounds %struct.w2c_hermes, ptr %22421, i32 0, i32 6
  %22423 = load i32, ptr %48, align 4, !tbaa !9
  %22424 = zext i32 %22423 to i64
  %22425 = add i64 %22424, 28
  %22426 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %22422, i64 noundef %22425, i32 noundef %22426)
  %22427 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %22427, ptr %48, align 4, !tbaa !9
  %22428 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %22428, ptr %59, align 8, !tbaa !11
  %22429 = load ptr, ptr %5, align 8, !tbaa !5
  %22430 = getelementptr inbounds %struct.w2c_hermes, ptr %22429, i32 0, i32 6
  %22431 = load i32, ptr %48, align 4, !tbaa !9
  %22432 = zext i32 %22431 to i64
  %22433 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22430, i64 noundef %22432, i64 noundef %22433)
  %22434 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %22434, ptr %48, align 4, !tbaa !9
  %22435 = load i64, ptr %31, align 8, !tbaa !11
  store i64 %22435, ptr %59, align 8, !tbaa !11
  %22436 = load ptr, ptr %5, align 8, !tbaa !5
  %22437 = getelementptr inbounds %struct.w2c_hermes, ptr %22436, i32 0, i32 6
  %22438 = load i32, ptr %48, align 4, !tbaa !9
  %22439 = zext i32 %22438 to i64
  %22440 = add i64 %22439, 40
  %22441 = load i64, ptr %59, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22437, i64 noundef %22440, i64 noundef %22441)
  %22442 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22442, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %22443 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %22443, ptr %50, align 4, !tbaa !9
  %22444 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %22444, ptr %51, align 4, !tbaa !9
  store i32 20, ptr %52, align 4, !tbaa !9
  %22445 = load i32, ptr %52, align 4, !tbaa !9
  %22446 = load i32, ptr %51, align 4, !tbaa !9
  %22447 = add i32 %22446, %22445
  store i32 %22447, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %22448 = load ptr, ptr %5, align 8, !tbaa !5
  %22449 = load i32, ptr %48, align 4, !tbaa !9
  %22450 = load i32, ptr %49, align 4, !tbaa !9
  %22451 = load i32, ptr %50, align 4, !tbaa !9
  %22452 = load i32, ptr %51, align 4, !tbaa !9
  %22453 = load i32, ptr %52, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %22448, i32 noundef %22449, i32 noundef %22450, i32 noundef %22451, i32 noundef %22452, i32 noundef %22453)
  %22454 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22454, ptr %48, align 4, !tbaa !9
  %22455 = load ptr, ptr %5, align 8, !tbaa !5
  %22456 = getelementptr inbounds %struct.w2c_hermes, ptr %22455, i32 0, i32 6
  %22457 = load i32, ptr %48, align 4, !tbaa !9
  %22458 = zext i32 %22457 to i64
  %22459 = call i32 @i32_load(ptr noundef %22456, i64 noundef %22458)
  store i32 %22459, ptr %48, align 4, !tbaa !9
  store i32 268, ptr %49, align 4, !tbaa !9
  %22460 = load i32, ptr %49, align 4, !tbaa !9
  %22461 = load i32, ptr %48, align 4, !tbaa !9
  %22462 = add i32 %22461, %22460
  store i32 %22462, ptr %48, align 4, !tbaa !9
  br label %22463

22463:                                            ; preds = %22385, %22366, %22347, %22292, %19915, %15981, %15362, %15284, %14631, %14194, %13506, %11968, %11837, %11835, %11757, %10903, %10248, %9886, %6314, %6276, %6243, %6164, %5421, %5393, %4227, %1865, %1668, %1645, %1605, %178, %150, %129
  %22464 = load i32, ptr %48, align 4, !tbaa !9
  store i32 %22464, ptr %7, align 4, !tbaa !9
  %22465 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22465, ptr %48, align 4, !tbaa !9
  %22466 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %22466, ptr %49, align 4, !tbaa !9
  %22467 = load ptr, ptr %5, align 8, !tbaa !5
  %22468 = getelementptr inbounds %struct.w2c_hermes, ptr %22467, i32 0, i32 6
  %22469 = load i32, ptr %48, align 4, !tbaa !9
  %22470 = zext i32 %22469 to i64
  %22471 = add i64 %22470, 16
  %22472 = load i32, ptr %49, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22468, i64 noundef %22471, i32 noundef %22472)
  %22473 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %22473, ptr %48, align 4, !tbaa !9
  store i32 48, ptr %49, align 4, !tbaa !9
  %22474 = load i32, ptr %49, align 4, !tbaa !9
  %22475 = load i32, ptr %48, align 4, !tbaa !9
  %22476 = add i32 %22475, %22474
  store i32 %22476, ptr %48, align 4, !tbaa !9
  %22477 = load i32, ptr %48, align 4, !tbaa !9
  %22478 = load ptr, ptr %5, align 8, !tbaa !5
  %22479 = getelementptr inbounds %struct.w2c_hermes, ptr %22478, i32 0, i32 3
  store i32 %22477, ptr %22479, align 8, !tbaa !15
  %22480 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22480, ptr %48, align 4, !tbaa !9
  %22481 = load i32, ptr %48, align 4, !tbaa !9
  call void @llvm.lifetime.end.p0(i64 8, ptr %71) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %70) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %69) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %68) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %67) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %66) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %65) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %64) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %63) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %62) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %61) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %60) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %58) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %57) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %56) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %55) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %54) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %53) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %52) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %51) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %50) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %49) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %48) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %47) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %44) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %40) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %39) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %38) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %37) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %36) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %35) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %33) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %32) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %30) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %28) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %27) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %25) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %23) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %21) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %20) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %19) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %18) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %17) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %16) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %12) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %10) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %9) #7
  ret i32 %22481
}

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

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

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

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

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

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

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

declare i32 @w2c_hermes_bool0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x3E0x2C0x20llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x3E0x3A0x3ALookupBucketFor0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x28llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x20const0x2A0x260x290x20const(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralNumber0x28double0x29(ptr noundef, i32 noundef, double noundef) #3

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

declare i32 @w2c_hermes_0x5F_memcpy(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateHBCAllocObjectFromBufferInst0x28llvh0x3A0x3ASmallVector0x3Cstd0x3A0x3A_0x5F20x3A0x3Apair0x3Chermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x3E0x2C0x204u0x3E0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

; Function Attrs: inlinehint nounwind uwtable
declare hidden double @f64_load(ptr noundef, i64 noundef) #1

declare void @w2c_hermes_llvh0x3A0x3AFoldingSetNodeID0x3A0x3AAddPointer0x28void0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_llvh0x3A0x3AFoldingSetBase0x3A0x3AFindNodeOrInsertPos0x28llvh0x3A0x3AFoldingSetNodeID0x20const0x260x2C0x20void0x2A0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare void @w2c_hermes_llvh0x3A0x3AFoldingSetBase0x3A0x3AInsertNode0x28llvh0x3A0x3AFoldingSetBase0x3A0x3ANode0x2A0x2C0x20void0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

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

declare i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsVariable0x280x290x20const(ptr noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsGlobalObjectProperty0x280x290x20const(ptr noundef, i32 noundef) #2

declare void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_strlen(ptr noundef, i32 noundef) #2

declare i32 @w2c_hermes_memcmp(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitLoad0x280x29(ptr noundef, i32 noundef) #2

declare void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #2

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

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

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

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

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

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

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

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

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

declare i32 @w2c_hermes_0x5F_memset(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AnumberToString0x28double0x2C0x20char0x2A0x2C0x20unsigned0x20long0x29(ptr noundef, double noundef, i32 noundef) #2

declare i32 @w2c_hermes_llvh0x3A0x3AStringMap0x3Chermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenObjectExpr0x28hermes0x3A0x3AESTree0x3A0x3AObjectExpressionNode0x2A0x290x3A0x3APropertyValue0x2C0x20llvh0x3A0x3AMallocAllocator0x3E0x3A0x3Aoperator0x5B0x5D0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i64 noundef) #2

declare void @w2c_hermes_llvh0x3A0x3ATwine0x3A0x3Astr0x280x290x20const(ptr noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_llvh0x3A0x3AStringMapImpl0x3A0x3ALookupBucketFor0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_dlmalloc(ptr noundef, i32 noundef) #2

declare void @w2c_hermes_llvh0x3A0x3Areport_bad_alloc_error0x28char0x20const0x2A0x2C0x20bool0x29(ptr noundef, i32 noundef) #2

declare i32 @w2c_hermes_llvh0x3A0x3AStringMapImpl0x3A0x3ARehashTable0x28unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocObjectInst0x28unsigned0x20int0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

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

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

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

declare i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3A0x3Ainsert0x28unsigned0x20long0x2C0x20char0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateIdentifier0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) #2

declare void @w2c_hermes_abort(ptr noundef) #2

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

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

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef, i32 noundef, i32 noundef) #2

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

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadStackInst0x28hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3ABinaryOperatorInst0x3A0x3AparseOperator0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef) #2

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

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateDeletePropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

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

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

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadFrameInst0x28hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateGetNewTargetInst0x280x29(ptr noundef, i32 noundef) #2

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

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

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

declare i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AIdentifier0x20const0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AIdentifier0x20const0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

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

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

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

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCreateFunctionInst0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

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

; Function Attrs: inlinehint nounwind uwtable
declare hidden zeroext i1 @func_types_eq(ptr noundef, ptr noundef) #1

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

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateFunction0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AFunction0x3A0x3ADefinitionKind0x2C0x20bool0x2C0x20hermes0x3A0x3ASourceVisibility0x2C0x20llvh0x3A0x3ASMRange0x2C0x20bool0x2C0x20hermes0x3A0x3AFunction0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #2

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

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

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

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

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

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

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

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

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

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #2

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef) #2

declare i64 @w2c_hermes_llvh0x3A0x3Ahashing0x3A0x3Adetail0x3A0x3Ahash_short0x28char0x20const0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x20long0x29(ptr noundef, i32 noundef, i32 noundef, i64 noundef) #2

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i32 @llvm.ctpop.i32(i32) #6

; Function Attrs: inlinehint nounwind uwtable
declare hidden float @f32_load(ptr noundef, i64 noundef) #1

; Function Attrs: nounwind uwtable
declare hidden float @wasm_ceilf(float noundef) #3

declare i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fnext_prime0x28unsigned0x20long0x29(ptr noundef, i32 noundef) #2

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i32 @llvm.ctlz.i32(i32, i1 immarg) #6

declare void @w2c_hermes_void0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_table0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Funordered_map_hasher0x3Chermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Ahash0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aequal_to0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20true0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Funordered_map_equal0x3Chermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aequal_to0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Ahash0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20true0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x3E0x3E0x3A0x3A_0x5Fdo_rehash0x3Ctrue0x3E0x28unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef) #2

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

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

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

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

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

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

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCatchInst0x280x29(ptr noundef, i32 noundef) #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCompareBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #2

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

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

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

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
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 = { 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 #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 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #7 = { nounwind }
attributes #8 = { 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, !14, i64 0}
!14 = !{!"float", !7, i64 0}
!15 = !{!16, !10, i64 24}
!16 = !{!"w2c_hermes", !6, i64 0, !6, i64 8, !6, i64 16, !10, i64 24, !10, i64 28, !10, i64 32, !17, i64 40, !19, i64 80}
!17 = !{!"", !6, i64 0, !12, i64 8, !12, i64 16, !12, i64 24, !18, i64 32}
!18 = !{!"_Bool", !7, i64 0}
!19 = !{!"", !6, i64 0, !10, i64 8, !10, i64 12}
!20 = !{!21, !21, i64 0}
!21 = !{!"double", !7, i64 0}
!22 = !{!16, !10, i64 92}
!23 = !{!16, !6, i64 80}
!24 = !{!25, !6, i64 8}
!25 = !{!"", !6, i64 0, !6, i64 8, !6, i64 16}
!26 = !{!25, !6, i64 0}
!27 = !{!25, !6, i64 16}


; 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"

%struct.wasm_rt_funcref_t = type { ptr, ptr, ptr }

@w2c_hermes_t0 = external local_unnamed_addr constant ptr, align 8
@w2c_hermes_t3 = external local_unnamed_addr constant ptr, align 8

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

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

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

declare i32 @w2c_hermes_memmove(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: inlinehint nounwind uwtable
declare hidden void @i32_store8(ptr noundef, i64 noundef, i32 noundef) local_unnamed_addr #0

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

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3AWarning0x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 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_dlfree(ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
define dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %3) local_unnamed_addr #2 {
  %5 = getelementptr inbounds i8, ptr %0, i64 24
  %6 = load i32, ptr %5, align 8, !tbaa !5
  %7 = add i32 %6, -48
  store i32 %7, ptr %5, align 8, !tbaa !5
  %8 = getelementptr inbounds i8, ptr %0, i64 40
  %9 = zext i32 %1 to i64
  %10 = add nuw nsw i64 %9, 16
  %11 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %10)
  %12 = zext i32 %2 to i64
  %13 = add nuw nsw i64 %12, 24
  %14 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %13)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %10, i32 noundef %14)
  %15 = add nuw nsw i64 %12, 8
  %16 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %15)
  %.not = icmp ne i32 %2, 0
  %.not12841 = icmp eq i32 %16, 62
  %or.cond = select i1 %.not, i1 %.not12841, i1 false
  br i1 %or.cond, label %17, label %19

17:                                               ; preds = %4
  %18 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenIdentifierExpression0x28hermes0x3A0x3AESTree0x3A0x3AIdentifierNode0x2A0x2C0x20bool0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %2, i32 noundef 0)
  br label %.loopexit13356

19:                                               ; preds = %4
  %20 = add i32 %1, 4
  %21 = icmp eq i32 %16, 30
  br i1 %21, label %22, label %26

22:                                               ; preds = %19
  %23 = zext i32 %20 to i64
  %24 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %23)
  %25 = add i32 %24, 296
  br label %.loopexit13356

26:                                               ; preds = %19
  %.not12842 = icmp eq i32 %16, 32
  %or.cond13245 = select i1 %.not, i1 %.not12842, i1 false
  br i1 %or.cond13245, label %27, label %37

27:                                               ; preds = %26
  %28 = add nuw nsw i64 %12, 28
  %29 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %28)
  %30 = zext i32 %29 to i64
  %31 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %30)
  %32 = zext i32 %7 to i64
  %33 = add nuw nsw i64 %32, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %33, i64 noundef %31)
  %34 = add nuw nsw i64 %32, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %34, i64 noundef %31)
  %35 = add i32 %6, -40
  %36 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %35)
  br label %.loopexit13356

37:                                               ; preds = %26
  %.not12843 = icmp eq i32 %16, 34
  %or.cond13247 = select i1 %.not, i1 %.not12843, i1 false
  br i1 %or.cond13247, label %38, label %297

38:                                               ; preds = %37
  %39 = load i32, ptr %5, align 8, !tbaa !5
  %40 = add i32 %39, -176
  store i32 %40, ptr %5, align 8, !tbaa !5
  %41 = add nuw nsw i64 %12, 28
  %42 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %41)
  %43 = add nuw nsw i64 %12, 32
  %44 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %43)
  %45 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 80) #6
  %46 = zext i32 %20 to i64
  %47 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %46)
  %48 = tail call i32 @w2c_hermes_hermes0x3A0x3AModule0x3A0x3AgetLiteralString0x28hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %47, i32 noundef %42)
  %49 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %46)
  %50 = tail call i32 @w2c_hermes_hermes0x3A0x3AModule0x3A0x3AgetLiteralString0x28hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %49, i32 noundef %44)
  %51 = zext i32 %45 to i64
  %52 = add nuw nsw i64 %51, 20
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %52, i64 noundef 8589934592)
  %53 = add i32 %45, 28
  %54 = add nuw nsw i64 %51, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %54, i32 noundef %53)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %51, i64 noundef 0)
  %55 = add nuw nsw i64 %51, 68
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %55, i64 noundef 0)
  %56 = add nuw nsw i64 %51, 44
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %56, i64 noundef 8589934592)
  %57 = add i32 %45, 52
  %58 = add nuw nsw i64 %51, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %58, i32 noundef %57)
  %59 = add nuw nsw i64 %51, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %59, i32 noundef 0)
  %60 = add nuw nsw i64 %51, 8
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %60, i32 noundef 59)
  %61 = add nuw nsw i64 %51, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %61, i32 noundef 0)
  %62 = add nuw nsw i64 %51, 10
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 459264)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %45, i32 noundef %48)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %45, i32 noundef %50)
  %63 = add nuw nsw i64 %46, 8
  %64 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %63)
  %65 = zext i32 %64 to i64
  %66 = add nuw nsw i64 %65, 44
  %67 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %66)
  %68 = zext i32 %67 to i64
  %69 = add nuw nsw i64 %68, 136
  %70 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %69)
  %71 = and i64 %70, 1095216660480
  %.not12844 = icmp eq i64 %71, 0
  %72 = add nuw nsw i64 %46, 4
  %73 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %72)
  br i1 %.not12844, label %76, label %74

74:                                               ; preds = %38
  %75 = trunc i64 %70 to i32
  br label %83

76:                                               ; preds = %38
  %77 = add i32 %64, 36
  %78 = icmp eq i32 %73, %77
  br i1 %78, label %83, label %79

79:                                               ; preds = %76
  %80 = zext i32 %73 to i64
  %81 = add nuw nsw i64 %80, 76
  %82 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %81)
  br label %83

83:                                               ; preds = %76, %79, %74
  %.012600 = phi i32 [ %75, %74 ], [ 0, %76 ], [ %82, %79 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %61, i32 noundef %.012600)
  %84 = add nuw nsw i64 %46, 12
  %85 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %84)
  %86 = add nuw nsw i64 %51, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %86, i32 noundef %85)
  %87 = add nuw nsw i64 %46, 16
  %88 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %87)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %59, i32 noundef %64)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %55, i32 noundef %88)
  %89 = zext i32 %73 to i64
  %90 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %89)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %51, i32 noundef %90)
  %91 = add nuw nsw i64 %51, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %91, i32 noundef %73)
  %92 = zext i32 %90 to i64
  %93 = add nuw nsw i64 %92, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %93, i32 noundef %45)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %89, i32 noundef %45)
  %94 = add nuw nsw i64 %9, 4
  %95 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %94)
  %96 = zext i32 %95 to i64
  %97 = add nuw nsw i64 %96, 28
  %98 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %97)
  %99 = add i32 %98, 60
  %100 = zext i32 %99 to i64
  %101 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %100)
  %.not12845 = icmp eq i32 %101, 0
  br i1 %.not12845, label %136, label %102

102:                                              ; preds = %83
  %103 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %43)
  %104 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %41)
  br label %105

105:                                              ; preds = %121, %102
  %.012491 = phi i32 [ %101, %102 ], [ %123, %121 ]
  %.0 = phi i32 [ %99, %102 ], [ %.1, %121 ]
  %106 = zext i32 %.012491 to i64
  %107 = add nuw nsw i64 %106, 16
  %108 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %107)
  %109 = icmp ugt i32 %104, %108
  br i1 %109, label %110, label %112

110:                                              ; preds = %105
  %111 = add i32 %.012491, 4
  br label %121

112:                                              ; preds = %105
  %113 = icmp ugt i32 %108, %104
  br i1 %113, label %121, label %114

114:                                              ; preds = %112
  %115 = add i32 %.012491, 4
  %116 = add nuw nsw i64 %106, 20
  %117 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %116)
  %118 = icmp ult i32 %117, %103
  %119 = select i1 %118, i32 %115, i32 %.012491
  %120 = select i1 %118, i32 %.0, i32 %.012491
  br label %121

121:                                              ; preds = %112, %114, %110
  %.012645 = phi i32 [ %111, %110 ], [ %119, %114 ], [ %.012491, %112 ]
  %.1 = phi i32 [ %.0, %110 ], [ %120, %114 ], [ %.012491, %112 ]
  %122 = zext i32 %.012645 to i64
  %123 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %122)
  %.not12846 = icmp eq i32 %123, 0
  br i1 %.not12846, label %124, label %105

124:                                              ; preds = %121
  %125 = icmp eq i32 %.1, %99
  br i1 %125, label %136, label %126

126:                                              ; preds = %124
  %127 = zext i32 %.1 to i64
  %128 = add nuw nsw i64 %127, 16
  %129 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %128)
  %130 = icmp ugt i32 %129, %104
  br i1 %130, label %136, label %131

131:                                              ; preds = %126
  %132 = icmp ult i32 %129, %104
  br i1 %132, label %137, label %133

133:                                              ; preds = %131
  %134 = add nuw nsw i64 %127, 20
  %135 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %134)
  %.not12847 = icmp ugt i32 %135, %103
  br i1 %.not12847, label %136, label %137

136:                                              ; preds = %133, %126, %124, %83
  br label %137

137:                                              ; preds = %133, %131, %136
  %.pre-phi = phi i64 [ %127, %133 ], [ %127, %131 ], [ %100, %136 ]
  %.2 = phi i32 [ %.1, %133 ], [ %.1, %131 ], [ %99, %136 ]
  %138 = add nuw nsw i64 %.pre-phi, 88
  %139 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %138)
  %.not12848 = icmp eq i32 %139, 0
  br i1 %.not12848, label %._crit_edge13494, label %140

._crit_edge13494:                                 ; preds = %137
  %.pre13495 = add i32 %45, 8
  br label %295

140:                                              ; preds = %137
  %141 = zext i32 %40 to i64
  %142 = add nuw nsw i64 %141, 132
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %142, i64 noundef 17179869184)
  %143 = add i32 %39, -36
  %144 = add nuw nsw i64 %141, 128
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %144, i32 noundef %143)
  %145 = add nuw nsw i64 %.pre-phi, 76
  %146 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %145)
  %147 = add i32 %.2, 64
  %148 = zext i32 %147 to i64
  %149 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %148)
  %150 = add nuw nsw i64 %.pre-phi, 68
  %151 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %150)
  %152 = icmp eq i32 %149, %151
  br i1 %152, label %269, label %153

153:                                              ; preds = %140
  %154 = udiv i32 %146, 170
  %155 = shl nuw nsw i32 %154, 2
  %156 = add i32 %155, %149
  %157 = zext i32 %156 to i64
  %158 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %157)
  %.neg = mul i32 %154, -170
  %159 = add i32 %.neg, %146
  %160 = mul i32 %159, 24
  %161 = add i32 %158, %160
  %162 = add nuw nsw i64 %.pre-phi, 80
  %163 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %162)
  %164 = add i32 %163, %146
  %165 = udiv i32 %164, 170
  %166 = shl nuw nsw i32 %165, 2
  %167 = add i32 %166, %149
  %168 = zext i32 %167 to i64
  %169 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %168)
  %.neg12849 = mul i32 %165, -170
  %170 = add i32 %.neg12849, %164
  %171 = mul i32 %170, 24
  %172 = add i32 %171, %169
  %173 = icmp eq i32 %161, %172
  br i1 %173, label %269, label %174

174:                                              ; preds = %153
  %175 = add i32 %.2, 84
  %176 = add nuw nsw i64 %141, 120
  %177 = add nuw nsw i64 %141, 112
  %178 = add nuw nsw i64 %141, 104
  %179 = add nuw nsw i64 %141, 108
  %180 = add nuw nsw i64 %141, 24
  %181 = add i32 %39, -64
  %182 = add i32 %39, -152
  %183 = add nuw nsw i64 %141, 123
  %184 = add nuw nsw i64 %141, 96
  %185 = add nuw nsw i64 %141, 116
  %186 = add nuw nsw i64 %141, 100
  %187 = add nuw nsw i64 %141, 16
  %188 = add i32 %39, -160
  %189 = add nuw nsw i64 %141, 88
  %190 = add nuw nsw i64 %141, 92
  %191 = add i32 %39, -88
  %192 = add i32 %39, -4
  %193 = add nuw nsw i64 %141, 172
  %194 = add nuw nsw i64 %.pre-phi, 84
  %195 = add nuw nsw i64 %.pre-phi, 96
  %196 = add nuw nsw i64 %141, 136
  %197 = add i32 %39, -48
  br label %198

198:                                              ; preds = %250, %174
  %.112492 = phi i32 [ %161, %174 ], [ %.212493, %250 ]
  %.112465 = phi i32 [ %156, %174 ], [ %.212466, %250 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %176, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %177, i64 noundef 0)
  %199 = zext i32 %.112492 to i64
  %200 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %199)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %178, i32 noundef %200)
  %201 = add nuw nsw i64 %199, 4
  %202 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %201)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %179, i32 noundef %202)
  %203 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %178)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %180, i64 noundef %203)
  tail call void @w2c_hermes_hermes0x3A0x3AconvertUTF16ToUTF8WithSingleSurrogates0x28std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x29(ptr noundef %0, i32 noundef %181, i32 noundef %182)
  %204 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %177)
  %205 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %183)
  %sext.mask = and i32 %205, 128
  %.not12850 = icmp eq i32 %sext.mask, 0
  %206 = select i1 %.not12850, i32 %181, i32 %204
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %184, i32 noundef %206)
  %207 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %185)
  %208 = select i1 %.not12850, i32 %205, i32 %207
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %186, i32 noundef %208)
  %209 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %184)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %187, i64 noundef %209)
  %210 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %188)
  %211 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %199)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %189, i32 noundef %211)
  %212 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %201)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %190, i32 noundef %212)
  %213 = tail call i32 @w2c_hermes_bool0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x3E0x2C0x20llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x3E0x3A0x3ALookupBucketFor0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x28llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x20const0x2A0x260x290x20const(ptr noundef %0, i32 noundef %175, i32 noundef %191, i32 noundef %192) #6
  %214 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %193)
  %215 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %194)
  %216 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %195)
  %217 = mul i32 %216, 12
  %218 = add i32 %217, %215
  %.not12851 = icmp eq i32 %213, 0
  %219 = select i1 %.not12851, i32 %218, i32 %214
  %220 = zext i32 %219 to i64
  %221 = add nuw nsw i64 %220, 8
  %222 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %221)
  %223 = uitofp i32 %222 to double
  %224 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralNumber0x28double0x29(ptr noundef %0, i32 noundef %20, double noundef %223)
  %225 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %142)
  %226 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %196)
  %.not12852 = icmp ult i32 %225, %226
  br i1 %.not12852, label %229, label %227

227:                                              ; preds = %198
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %197, i32 noundef %143, i32 noundef 0, i32 noundef 8) #6
  %228 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %142)
  br label %229

229:                                              ; preds = %227, %198
  %.112646 = phi i32 [ %228, %227 ], [ %225, %198 ]
  %230 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %144)
  %231 = shl i32 %.112646, 3
  %232 = add i32 %230, %231
  %233 = zext i32 %232 to i64
  %234 = add nuw nsw i64 %233, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %234, i32 noundef %224)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %233, i32 noundef %210)
  %235 = add i32 %.112646, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %142, i32 noundef %235)
  %236 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %183)
  %237 = icmp slt i32 %236, 0
  br i1 %237, label %238, label %240

238:                                              ; preds = %229
  %239 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %177)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %239) #6
  br label %240

240:                                              ; preds = %238, %229
  %241 = add i32 %.112492, 24
  %242 = zext i32 %.112465 to i64
  %243 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %242)
  %244 = sub i32 %241, %243
  %245 = icmp eq i32 %244, 4080
  br i1 %245, label %246, label %250

246:                                              ; preds = %240
  %247 = add nuw nsw i64 %242, 4
  %248 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %247)
  %249 = add i32 %.112465, 4
  br label %250

250:                                              ; preds = %246, %240
  %.212493 = phi i32 [ %248, %246 ], [ %241, %240 ]
  %.212466 = phi i32 [ %249, %246 ], [ %.112465, %240 ]
  %.not12853 = icmp eq i32 %.212493, %172
  br i1 %.not12853, label %251, label %198

251:                                              ; preds = %250
  %252 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %138)
  %253 = add nuw nsw i64 %141, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %253, i64 noundef 17179869184)
  %254 = add i32 %39, -120
  %255 = add nuw nsw i64 %141, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %255, i32 noundef %254)
  %256 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %142)
  %.not12854 = icmp eq i32 %256, 0
  br i1 %.not12854, label %273, label %257

257:                                              ; preds = %251
  %258 = icmp ugt i32 %256, 4
  br i1 %258, label %259, label %264

259:                                              ; preds = %257
  %260 = add i32 %39, -132
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %260, i32 noundef %254, i32 noundef %256, i32 noundef 8) #6
  %261 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %142)
  %.not12855 = icmp eq i32 %261, 0
  br i1 %.not12855, label %268, label %262

262:                                              ; preds = %259
  %263 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %255)
  br label %264

264:                                              ; preds = %257, %262
  %.012541 = phi i32 [ %263, %262 ], [ %254, %257 ]
  %.312467 = phi i32 [ %261, %262 ], [ %256, %257 ]
  %265 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %144)
  %266 = shl i32 %.312467, 3
  %267 = tail call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %0, i32 noundef %.012541, i32 noundef %265, i32 noundef %266) #6
  br label %268

268:                                              ; preds = %259, %264
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %253, i32 noundef %256)
  br label %273

269:                                              ; preds = %153, %140
  %270 = add nuw nsw i64 %141, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %270, i64 noundef 17179869184)
  %271 = add i32 %39, -120
  %272 = add nuw nsw i64 %141, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %272, i32 noundef %271)
  br label %273

273:                                              ; preds = %251, %269, %268
  %.pre-phi13471 = phi i64 [ %255, %251 ], [ %272, %269 ], [ %255, %268 ]
  %.212647 = phi i32 [ %252, %251 ], [ %139, %269 ], [ %252, %268 ]
  %.3 = phi i32 [ %254, %251 ], [ %271, %269 ], [ %254, %268 ]
  %274 = add i32 %39, -132
  %275 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateHBCAllocObjectFromBufferInst0x28llvh0x3A0x3ASmallVector0x3Cstd0x3A0x3A_0x5F20x3A0x3Apair0x3Chermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x3E0x2C0x204u0x3E0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %20, i32 noundef %274, i32 noundef %.212647) #6
  %276 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi13471)
  %.not12856 = icmp eq i32 %.3, %276
  br i1 %.not12856, label %278, label %277

277:                                              ; preds = %273
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %276) #6
  br label %278

278:                                              ; preds = %277, %273
  %279 = add nuw nsw i64 %141, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %279, i32 noundef 2)
  %280 = add i32 %275, 8
  %.not12857 = icmp eq i32 %275, 0
  %281 = select i1 %.not12857, i32 0, i32 %280
  %282 = add nuw nsw i64 %141, 116
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %282, i32 noundef %281)
  %283 = add i32 %45, 8
  %.not12858 = icmp eq i32 %45, 0
  %284 = select i1 %.not12858, i32 0, i32 %283
  %285 = add nuw nsw i64 %141, 112
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %285, i32 noundef %284)
  %286 = add i32 %39, -64
  %287 = add nuw nsw i64 %141, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %287, i32 noundef %286)
  %288 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %287)
  %289 = add nuw nsw i64 %141, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %289, i64 noundef %288)
  %290 = add i32 %39, -168
  %291 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %0, i32 noundef %20, i32 noundef 50, i32 noundef %290) #6
  %292 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %144)
  %293 = icmp eq i32 %292, %143
  br i1 %293, label %295, label %294

294:                                              ; preds = %278
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %292) #6
  br label %295

295:                                              ; preds = %._crit_edge13494, %278, %294
  %.pre-phi13496 = phi i32 [ %.pre13495, %._crit_edge13494 ], [ %283, %278 ], [ %283, %294 ]
  store i32 %39, ptr %5, align 8, !tbaa !5
  %.not12859 = icmp eq i32 %45, 0
  %296 = select i1 %.not12859, i32 0, i32 %.pre-phi13496
  br label %.loopexit13356

297:                                              ; preds = %37
  %.not12860 = icmp eq i32 %16, 31
  %or.cond13249 = select i1 %.not, i1 %.not12860, i1 false
  br i1 %or.cond13249, label %298, label %305

298:                                              ; preds = %297
  %299 = zext i32 %20 to i64
  %300 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %299)
  %301 = add nuw nsw i64 %12, 28
  %302 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %301)
  %.not12861 = icmp eq i32 %302, 0
  %303 = select i1 %.not12861, i32 324, i32 356
  %304 = add i32 %303, %300
  br label %.loopexit13356

305:                                              ; preds = %297
  %.not12862 = icmp eq i32 %16, 33
  %or.cond13251 = select i1 %.not, i1 %.not12862, i1 false
  br i1 %or.cond13251, label %306, label %310

306:                                              ; preds = %305
  %307 = add nuw nsw i64 %12, 32
  %308 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %307)
  %309 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralNumber0x28double0x29(ptr noundef nonnull %0, i32 noundef %20, double noundef %308)
  br label %.loopexit13356

310:                                              ; preds = %305
  %.not12863 = icmp eq i32 %16, 35
  %or.cond13253 = select i1 %.not, i1 %.not12863, i1 false
  br i1 %or.cond13253, label %311, label %342

311:                                              ; preds = %310
  %312 = add nuw nsw i64 %12, 28
  %313 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %312)
  %314 = zext i32 %20 to i64
  %315 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %314)
  %316 = load i32, ptr %5, align 8, !tbaa !5
  %317 = add i32 %316, -144
  store i32 %317, ptr %5, align 8, !tbaa !5
  %318 = zext i32 %317 to i64
  %319 = add nuw nsw i64 %318, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %319, i64 noundef 137438953472)
  %320 = add i32 %316, -128
  %321 = add nuw nsw i64 %318, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %321, i32 noundef %320)
  %322 = add i32 %316, -140
  tail call void @w2c_hermes_llvh0x3A0x3AFoldingSetNodeID0x3A0x3AAddPointer0x28void0x20const0x2A0x29(ptr noundef nonnull %0, i32 noundef %322, i32 noundef %313) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %318, i32 noundef 0)
  %323 = add i32 %315, 432
  %324 = tail call i32 @w2c_hermes_llvh0x3A0x3AFoldingSetBase0x3A0x3AFindNodeOrInsertPos0x28llvh0x3A0x3AFoldingSetNodeID0x20const0x260x2C0x20void0x2A0x260x29(ptr noundef nonnull %0, i32 noundef %323, i32 noundef %322, i32 noundef %317) #6
  %.not12864 = icmp eq i32 %324, 0
  br i1 %.not12864, label %327, label %325

325:                                              ; preds = %311
  %326 = add i32 %324, -28
  br label %338

327:                                              ; preds = %311
  %328 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 36) #6
  %329 = zext i32 %328 to i64
  %330 = add nuw nsw i64 %329, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %330, i32 noundef %313)
  %331 = add nuw nsw i64 %329, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %331, i32 noundef 0)
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %329, i32 noundef 115)
  %332 = add nuw nsw i64 %329, 2
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %332, i32 noundef 458816)
  %333 = add nuw nsw i64 %329, 12
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %333, i64 noundef 8589934592)
  %334 = add i32 %328, 20
  %335 = add nuw nsw i64 %329, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %335, i32 noundef %334)
  %336 = add i32 %328, 28
  %337 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %318)
  tail call void @w2c_hermes_llvh0x3A0x3AFoldingSetBase0x3A0x3AInsertNode0x28llvh0x3A0x3AFoldingSetBase0x3A0x3ANode0x2A0x2C0x20void0x2A0x29(ptr noundef nonnull %0, i32 noundef %323, i32 noundef %336, i32 noundef %337) #6
  br label %338

338:                                              ; preds = %327, %325
  %.412468 = phi i32 [ %326, %325 ], [ %328, %327 ]
  %339 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %321)
  %.not12865 = icmp eq i32 %320, %339
  br i1 %.not12865, label %341, label %340

340:                                              ; preds = %338
  tail call void @w2c_hermes_dlfree(ptr noundef nonnull %0, i32 noundef %339) #6
  br label %341

341:                                              ; preds = %340, %338
  store i32 %316, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

342:                                              ; preds = %310
  %.not12866 = icmp eq i32 %16, 50
  %or.cond13255 = select i1 %.not, i1 %.not12866, i1 false
  br i1 %or.cond13255, label %343, label %760

343:                                              ; preds = %342
  %344 = load i32, ptr %5, align 8, !tbaa !5
  %345 = add i32 %344, -128
  store i32 %345, ptr %5, align 8, !tbaa !5
  %346 = add nuw nsw i64 %12, 28
  %347 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %346)
  %348 = zext i32 %347 to i64
  %349 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %348)
  %350 = and i64 %349, -4294967296
  %.not12867 = icmp eq i64 %350, 4294967296
  br i1 %.not12867, label %351, label %477

351:                                              ; preds = %343
  %352 = and i64 %349, 4294967295
  %353 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %352)
  %.not12868 = icmp eq i32 %353, 61
  br i1 %.not12868, label %354, label %477

354:                                              ; preds = %351
  %355 = zext i32 %345 to i64
  %356 = add nuw nsw i64 %355, 116
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %356, i64 noundef 4294967297)
  %357 = add i32 %344, -4
  %358 = add nuw nsw i64 %355, 112
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %358, i32 noundef %357)
  %359 = add nuw nsw i64 %355, 124
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %359, i32 noundef %2)
  %360 = add nuw nsw i64 %12, 36
  %361 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %360)
  %.not12869 = icmp eq i32 %361, 0
  br i1 %.not12869, label %408, label %362

362:                                              ; preds = %354
  %363 = zext i32 %361 to i64
  %364 = add nuw nsw i64 %363, 8
  %365 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %364)
  %.not12870 = icmp eq i32 %365, 50
  br i1 %.not12870, label %.preheader, label %408

.preheader:                                       ; preds = %362
  %366 = add nuw nsw i64 %355, 120
  %367 = add i32 %344, -16
  br label %368

368:                                              ; preds = %.preheader, %390
  %.312494 = phi i32 [ %387, %390 ], [ 1, %.preheader ]
  %.4 = phi i32 [ %389, %390 ], [ %361, %.preheader ]
  %369 = zext i32 %.4 to i64
  %370 = add nuw nsw i64 %369, 28
  %371 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %370)
  %372 = zext i32 %371 to i64
  %373 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %372)
  %.mask = and i64 %373, -4294967296
  %.not12871 = icmp eq i64 %.mask, 4294967296
  br i1 %.not12871, label %374, label %395

374:                                              ; preds = %368
  %375 = and i64 %373, 4294967295
  %376 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %375)
  %.not12872 = icmp eq i32 %376, 61
  br i1 %.not12872, label %377, label %395

377:                                              ; preds = %374
  %378 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %366)
  %.not12873 = icmp ugt i32 %378, %.312494
  br i1 %.not12873, label %381, label %379

379:                                              ; preds = %377
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %367, i32 noundef %357, i32 noundef 0, i32 noundef 4) #6
  %380 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %356)
  br label %381

381:                                              ; preds = %379, %377
  %.412495 = phi i32 [ %380, %379 ], [ %.312494, %377 ]
  %382 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %358)
  %383 = shl i32 %.412495, 2
  %384 = add i32 %382, %383
  %385 = zext i32 %384 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %385, i32 noundef %.4)
  %386 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %356)
  %387 = add i32 %386, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %356, i32 noundef %387)
  %388 = add nuw nsw i64 %369, 36
  %389 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %388)
  %.not12874 = icmp eq i32 %389, 0
  br i1 %.not12874, label %395, label %390

390:                                              ; preds = %381
  %391 = zext i32 %389 to i64
  %392 = add nuw nsw i64 %391, 8
  %393 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %392)
  %394 = icmp eq i32 %393, 50
  br i1 %394, label %368, label %395

395:                                              ; preds = %390, %381, %374, %368
  %.512496 = phi i32 [ %.312494, %368 ], [ %.312494, %374 ], [ %387, %381 ], [ %387, %390 ]
  %396 = add nuw nsw i64 %355, 80
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %396, i64 noundef 4294967296)
  %397 = add i32 %344, -40
  %398 = add nuw nsw i64 %355, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %398, i32 noundef %397)
  %399 = icmp ugt i32 %.512496, 1
  br i1 %399, label %400, label %403

400:                                              ; preds = %395
  %401 = add i32 %344, -52
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %401, i32 noundef %397, i32 noundef %.512496, i32 noundef 24) #6
  %402 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %356)
  br label %403

403:                                              ; preds = %400, %395
  %.612497 = phi i32 [ %402, %400 ], [ %.512496, %395 ]
  %.not12875 = icmp eq i32 %.612497, 0
  br i1 %.not12875, label %.loopexit, label %404

404:                                              ; preds = %403
  %405 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %358)
  %406 = shl i32 %.612497, 2
  %407 = add i32 %405, %406
  br label %414

408:                                              ; preds = %362, %354
  %409 = add nuw nsw i64 %355, 80
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %409, i64 noundef 4294967296)
  %410 = add i32 %344, -40
  %411 = add nuw nsw i64 %355, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %411, i32 noundef %410)
  %412 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %358)
  %413 = add i32 %412, 4
  br label %414

414:                                              ; preds = %408, %404
  %.pre-phi13473 = phi i64 [ %411, %408 ], [ %398, %404 ]
  %.pre-phi13472 = phi i64 [ %409, %408 ], [ %396, %404 ]
  %.012624 = phi i32 [ %410, %408 ], [ %397, %404 ]
  %.112542 = phi i32 [ %413, %408 ], [ %407, %404 ]
  %.5 = phi i32 [ %412, %408 ], [ %405, %404 ]
  %415 = add i32 %344, -76
  %416 = add nuw nsw i64 %355, 84
  %417 = add i32 %344, -52
  %418 = add nuw nsw i64 %355, 52
  %419 = add nuw nsw i64 %355, 68
  %420 = add nuw nsw i64 %355, 60
  br label %421

421:                                              ; preds = %431, %414
  %.6 = phi i32 [ %.5, %414 ], [ %443, %431 ]
  %422 = zext i32 %.6 to i64
  %423 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %422)
  %424 = zext i32 %423 to i64
  %425 = add nuw nsw i64 %424, 32
  %426 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %425)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AcreateLRef0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20bool0x29(ptr noundef %0, i32 noundef %415, i32 noundef %1, i32 noundef %426, i32 noundef 0)
  %427 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi13472)
  %428 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %416)
  %.not12876 = icmp ult i32 %427, %428
  br i1 %.not12876, label %431, label %429

429:                                              ; preds = %421
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %417, i32 noundef %.012624, i32 noundef 0, i32 noundef 24) #6
  %430 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi13472)
  br label %431

431:                                              ; preds = %429, %421
  %.712498 = phi i32 [ %430, %429 ], [ %427, %421 ]
  %432 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi13473)
  %433 = mul i32 %.712498, 24
  %434 = add i32 %432, %433
  %435 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %418)
  %436 = zext i32 %434 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %436, i64 noundef %435)
  %437 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %419)
  %438 = add nuw nsw i64 %436, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %438, i64 noundef %437)
  %439 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %420)
  %440 = add nuw nsw i64 %436, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %440, i64 noundef %439)
  %441 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi13472)
  %442 = add i32 %441, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi13472, i32 noundef %442)
  %443 = add i32 %.6, 4
  %.not12877 = icmp eq i32 %443, %.112542
  br i1 %.not12877, label %444, label %421

444:                                              ; preds = %431
  %445 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %356)
  %.not12878 = icmp eq i32 %445, 0
  br i1 %.not12878, label %.loopexit, label %446

446:                                              ; preds = %444
  %447 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi13473)
  %448 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi13472)
  %449 = mul i32 %448, 24
  %450 = add i32 %449, %447
  %451 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %358)
  %452 = shl i32 %445, 2
  %453 = add i32 %451, %452
  br label %454

454:                                              ; preds = %._crit_edge13493, %446
  %.312648 = phi i32 [ 0, %446 ], [ %.412649, %._crit_edge13493 ]
  %.812499 = phi i32 [ %453, %446 ], [ %456, %._crit_edge13493 ]
  %.7 = phi i32 [ %450, %446 ], [ %455, %._crit_edge13493 ]
  %455 = add i32 %.7, -24
  %456 = add i32 %.812499, -4
  %457 = zext i32 %456 to i64
  %458 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %457)
  %.not12879 = icmp eq i32 %.312648, 0
  %459 = zext i32 %458 to i64
  br i1 %.not12879, label %460, label %._crit_edge13493

460:                                              ; preds = %454
  %461 = add nuw nsw i64 %459, 36
  %462 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %461)
  %463 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsVariable0x280x290x20const(ptr noundef %0, i32 noundef %455) #6
  %.not12880 = icmp eq i32 %463, 0
  br i1 %.not12880, label %464, label %470

464:                                              ; preds = %460
  %465 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsGlobalObjectProperty0x280x290x20const(ptr noundef %0, i32 noundef %455) #6
  %.not12881 = icmp eq i32 %465, 0
  br i1 %.not12881, label %473, label %466

466:                                              ; preds = %464
  %467 = zext i32 %465 to i64
  %468 = add nuw nsw i64 %467, 32
  %469 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %468)
  br label %470

470:                                              ; preds = %460, %466
  %.012529.in = phi i32 [ %469, %466 ], [ %463, %460 ]
  %.012529 = add i32 %.012529.in, 32
  %471 = zext i32 %.012529 to i64
  %472 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %471)
  br label %473

473:                                              ; preds = %464, %470
  %.112530 = phi i32 [ %472, %470 ], [ 0, %464 ]
  %474 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %462, i32 noundef %.112530)
  br label %._crit_edge13493

._crit_edge13493:                                 ; preds = %454, %473
  %.412649 = phi i32 [ %474, %473 ], [ %.312648, %454 ]
  %475 = add nuw nsw i64 %459, 24
  %476 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %475)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %10, i32 noundef %476)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %455, i32 noundef %.412649) #6
  %.not12882 = icmp eq i32 %456, %451
  br i1 %.not12882, label %.loopexit, label %454

477:                                              ; preds = %351, %343
  %478 = zext i32 %345 to i64
  %479 = add nuw nsw i64 %478, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %479, i64 noundef %349)
  %480 = add nuw nsw i64 %478, 40
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %480, i64 noundef %349)
  %481 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %479)
  %482 = lshr i64 %481, 32
  %483 = trunc nuw i64 %482 to i32
  %.not12884 = icmp ult i64 %481, 4294967296
  br i1 %.not12884, label %496, label %484

484:                                              ; preds = %477
  %485 = trunc i64 %481 to i32
  br label %486

486:                                              ; preds = %495, %484
  %indvars.iv13468 = phi i64 [ %indvars.iv.next13469, %495 ], [ 0, %484 ]
  %487 = shl i64 %indvars.iv13468, 2
  %488 = add nuw nsw i64 %487, 111376
  %489 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %488)
  %.not12937 = icmp eq i32 %489, 0
  br i1 %.not12937, label %492, label %490

490:                                              ; preds = %486
  %491 = tail call i32 @w2c_hermes_strlen(ptr noundef %0, i32 noundef %489) #6
  br label %492

492:                                              ; preds = %486, %490
  %.212543 = phi i32 [ %491, %490 ], [ 0, %486 ]
  %.not12938 = icmp eq i32 %.212543, %483
  br i1 %.not12938, label %493, label %495

493:                                              ; preds = %492
  %494 = tail call i32 @w2c_hermes_memcmp(ptr noundef %0, i32 noundef %485, i32 noundef %489, i32 noundef %483) #6
  %.not12939 = icmp eq i32 %494, 0
  br i1 %.not12939, label %.loopexit13327.loopexit.split.loop.exit, label %495

495:                                              ; preds = %493, %492
  %indvars.iv.next13469 = add nuw nsw i64 %indvars.iv13468, 1
  %.not12940 = icmp eq i64 %indvars.iv.next13469, 26
  br i1 %.not12940, label %.loopexit13327, label %486

496:                                              ; preds = %477
  %497 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111376)
  %.not12885 = icmp eq i32 %497, 0
  br i1 %.not12885, label %.loopexit13327, label %498

498:                                              ; preds = %496
  %499 = zext i32 %497 to i64
  %500 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %499)
  %.not12886 = icmp eq i32 %500, 0
  br i1 %.not12886, label %.loopexit13327, label %501

501:                                              ; preds = %498
  %502 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111380)
  %.not12887 = icmp eq i32 %502, 0
  br i1 %.not12887, label %.loopexit13327, label %503

503:                                              ; preds = %501
  %504 = zext i32 %502 to i64
  %505 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %504)
  %.not12888 = icmp eq i32 %505, 0
  br i1 %.not12888, label %.loopexit13327, label %506

506:                                              ; preds = %503
  %507 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111384)
  %.not12889 = icmp eq i32 %507, 0
  br i1 %.not12889, label %.loopexit13327, label %508

508:                                              ; preds = %506
  %509 = zext i32 %507 to i64
  %510 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %509)
  %.not12890 = icmp eq i32 %510, 0
  br i1 %.not12890, label %.loopexit13327, label %511

511:                                              ; preds = %508
  %512 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111388)
  %.not12891 = icmp eq i32 %512, 0
  br i1 %.not12891, label %.loopexit13327, label %513

513:                                              ; preds = %511
  %514 = zext i32 %512 to i64
  %515 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %514)
  %.not12892 = icmp eq i32 %515, 0
  br i1 %.not12892, label %.loopexit13327, label %516

516:                                              ; preds = %513
  %517 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111392)
  %.not12893 = icmp eq i32 %517, 0
  br i1 %.not12893, label %.loopexit13327, label %518

518:                                              ; preds = %516
  %519 = zext i32 %517 to i64
  %520 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %519)
  %.not12894 = icmp eq i32 %520, 0
  br i1 %.not12894, label %.loopexit13327, label %521

521:                                              ; preds = %518
  %522 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111396)
  %.not12895 = icmp eq i32 %522, 0
  br i1 %.not12895, label %.loopexit13327, label %523

523:                                              ; preds = %521
  %524 = zext i32 %522 to i64
  %525 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %524)
  %.not12896 = icmp eq i32 %525, 0
  br i1 %.not12896, label %.loopexit13327, label %526

526:                                              ; preds = %523
  %527 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111400)
  %.not12897 = icmp eq i32 %527, 0
  br i1 %.not12897, label %.loopexit13327, label %528

528:                                              ; preds = %526
  %529 = zext i32 %527 to i64
  %530 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %529)
  %.not12898 = icmp eq i32 %530, 0
  br i1 %.not12898, label %.loopexit13327, label %531

531:                                              ; preds = %528
  %532 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111404)
  %.not12899 = icmp eq i32 %532, 0
  br i1 %.not12899, label %.loopexit13327, label %533

533:                                              ; preds = %531
  %534 = zext i32 %532 to i64
  %535 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %534)
  %.not12900 = icmp eq i32 %535, 0
  br i1 %.not12900, label %.loopexit13327, label %536

536:                                              ; preds = %533
  %537 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111408)
  %.not12901 = icmp eq i32 %537, 0
  br i1 %.not12901, label %.loopexit13327, label %538

538:                                              ; preds = %536
  %539 = zext i32 %537 to i64
  %540 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %539)
  %.not12902 = icmp eq i32 %540, 0
  br i1 %.not12902, label %.loopexit13327, label %541

541:                                              ; preds = %538
  %542 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111412)
  %.not12903 = icmp eq i32 %542, 0
  br i1 %.not12903, label %.loopexit13327, label %543

543:                                              ; preds = %541
  %544 = zext i32 %542 to i64
  %545 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %544)
  %.not12904 = icmp eq i32 %545, 0
  br i1 %.not12904, label %.loopexit13327, label %546

546:                                              ; preds = %543
  %547 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111416)
  %.not12905 = icmp eq i32 %547, 0
  br i1 %.not12905, label %.loopexit13327, label %548

548:                                              ; preds = %546
  %549 = zext i32 %547 to i64
  %550 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %549)
  %.not12906 = icmp eq i32 %550, 0
  br i1 %.not12906, label %.loopexit13327, label %551

551:                                              ; preds = %548
  %552 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111420)
  %.not12907 = icmp eq i32 %552, 0
  br i1 %.not12907, label %.loopexit13327, label %553

553:                                              ; preds = %551
  %554 = zext i32 %552 to i64
  %555 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %554)
  %.not12908 = icmp eq i32 %555, 0
  br i1 %.not12908, label %.loopexit13327, label %556

556:                                              ; preds = %553
  %557 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111424)
  %.not12909 = icmp eq i32 %557, 0
  br i1 %.not12909, label %.loopexit13327, label %558

558:                                              ; preds = %556
  %559 = zext i32 %557 to i64
  %560 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %559)
  %.not12910 = icmp eq i32 %560, 0
  br i1 %.not12910, label %.loopexit13327, label %561

561:                                              ; preds = %558
  %562 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111428)
  %.not12911 = icmp eq i32 %562, 0
  br i1 %.not12911, label %.loopexit13327, label %563

563:                                              ; preds = %561
  %564 = zext i32 %562 to i64
  %565 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %564)
  %.not12912 = icmp eq i32 %565, 0
  br i1 %.not12912, label %.loopexit13327, label %566

566:                                              ; preds = %563
  %567 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111432)
  %.not12913 = icmp eq i32 %567, 0
  br i1 %.not12913, label %.loopexit13327, label %568

568:                                              ; preds = %566
  %569 = zext i32 %567 to i64
  %570 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %569)
  %.not12914 = icmp eq i32 %570, 0
  br i1 %.not12914, label %.loopexit13327, label %571

571:                                              ; preds = %568
  %572 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111436)
  %.not12915 = icmp eq i32 %572, 0
  br i1 %.not12915, label %.loopexit13327, label %573

573:                                              ; preds = %571
  %574 = zext i32 %572 to i64
  %575 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %574)
  %.not12916 = icmp eq i32 %575, 0
  br i1 %.not12916, label %.loopexit13327, label %576

576:                                              ; preds = %573
  %577 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111440)
  %.not12917 = icmp eq i32 %577, 0
  br i1 %.not12917, label %.loopexit13327, label %578

578:                                              ; preds = %576
  %579 = zext i32 %577 to i64
  %580 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %579)
  %.not12918 = icmp eq i32 %580, 0
  br i1 %.not12918, label %.loopexit13327, label %581

581:                                              ; preds = %578
  %582 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111444)
  %.not12919 = icmp eq i32 %582, 0
  br i1 %.not12919, label %.loopexit13327, label %583

583:                                              ; preds = %581
  %584 = zext i32 %582 to i64
  %585 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %584)
  %.not12920 = icmp eq i32 %585, 0
  br i1 %.not12920, label %.loopexit13327, label %586

586:                                              ; preds = %583
  %587 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111448)
  %.not12921 = icmp eq i32 %587, 0
  br i1 %.not12921, label %.loopexit13327, label %588

588:                                              ; preds = %586
  %589 = zext i32 %587 to i64
  %590 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %589)
  %.not12922 = icmp eq i32 %590, 0
  br i1 %.not12922, label %.loopexit13327, label %591

591:                                              ; preds = %588
  %592 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111452)
  %.not12923 = icmp eq i32 %592, 0
  br i1 %.not12923, label %.loopexit13327, label %593

593:                                              ; preds = %591
  %594 = zext i32 %592 to i64
  %595 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %594)
  %.not12924 = icmp eq i32 %595, 0
  br i1 %.not12924, label %.loopexit13327, label %596

596:                                              ; preds = %593
  %597 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111456)
  %.not12925 = icmp eq i32 %597, 0
  br i1 %.not12925, label %.loopexit13327, label %598

598:                                              ; preds = %596
  %599 = zext i32 %597 to i64
  %600 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %599)
  %.not12926 = icmp eq i32 %600, 0
  br i1 %.not12926, label %.loopexit13327, label %601

601:                                              ; preds = %598
  %602 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111460)
  %.not12927 = icmp eq i32 %602, 0
  br i1 %.not12927, label %.loopexit13327, label %603

603:                                              ; preds = %601
  %604 = zext i32 %602 to i64
  %605 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %604)
  %.not12928 = icmp eq i32 %605, 0
  br i1 %.not12928, label %.loopexit13327, label %606

606:                                              ; preds = %603
  %607 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111464)
  %.not12929 = icmp eq i32 %607, 0
  br i1 %.not12929, label %.loopexit13327, label %608

608:                                              ; preds = %606
  %609 = zext i32 %607 to i64
  %610 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %609)
  %.not12930 = icmp eq i32 %610, 0
  br i1 %.not12930, label %.loopexit13327, label %611

611:                                              ; preds = %608
  %612 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111468)
  %.not12931 = icmp eq i32 %612, 0
  br i1 %.not12931, label %.loopexit13327, label %613

613:                                              ; preds = %611
  %614 = zext i32 %612 to i64
  %615 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %614)
  %.not12932 = icmp eq i32 %615, 0
  br i1 %.not12932, label %.loopexit13327, label %616

616:                                              ; preds = %613
  %617 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111472)
  %.not12933 = icmp eq i32 %617, 0
  br i1 %.not12933, label %.loopexit13327, label %618

618:                                              ; preds = %616
  %619 = zext i32 %617 to i64
  %620 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %619)
  %.not12934 = icmp eq i32 %620, 0
  br i1 %.not12934, label %.loopexit13327, label %621

621:                                              ; preds = %618
  %622 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef 111476)
  %.not12935 = icmp eq i32 %622, 0
  br i1 %.not12935, label %.loopexit13327, label %623

623:                                              ; preds = %621
  %624 = zext i32 %622 to i64
  %625 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %624)
  %.not12936 = icmp eq i32 %625, 0
  %626 = select i1 %.not12936, i32 25, i32 26
  br label %.loopexit13327

.loopexit13327.loopexit.split.loop.exit:          ; preds = %493
  %627 = trunc nuw nsw i64 %indvars.iv13468 to i32
  br label %.loopexit13327

.loopexit13327:                                   ; preds = %495, %.loopexit13327.loopexit.split.loop.exit, %496, %498, %501, %503, %506, %508, %511, %513, %516, %518, %521, %523, %526, %528, %531, %533, %536, %538, %541, %543, %546, %548, %551, %553, %556, %558, %561, %563, %566, %568, %571, %573, %576, %578, %581, %583, %586, %588, %591, %593, %596, %598, %601, %603, %606, %608, %611, %613, %616, %618, %621, %623
  %.312544 = phi i32 [ 25, %621 ], [ %626, %623 ], [ 0, %496 ], [ 0, %498 ], [ 1, %501 ], [ 1, %503 ], [ 2, %506 ], [ 2, %508 ], [ 3, %511 ], [ 3, %513 ], [ 4, %516 ], [ 4, %518 ], [ 5, %521 ], [ 5, %523 ], [ 6, %526 ], [ 6, %528 ], [ 7, %531 ], [ 7, %533 ], [ 8, %536 ], [ 8, %538 ], [ 9, %541 ], [ 9, %543 ], [ 10, %546 ], [ 10, %548 ], [ 11, %551 ], [ 11, %553 ], [ 12, %556 ], [ 12, %558 ], [ 13, %561 ], [ 13, %563 ], [ 14, %566 ], [ 14, %568 ], [ 15, %571 ], [ 15, %573 ], [ 16, %576 ], [ 16, %578 ], [ 17, %581 ], [ 17, %583 ], [ 18, %586 ], [ 18, %588 ], [ 19, %591 ], [ 19, %593 ], [ 20, %596 ], [ 20, %598 ], [ 21, %601 ], [ 21, %603 ], [ 22, %606 ], [ 22, %608 ], [ 23, %611 ], [ 23, %613 ], [ 24, %616 ], [ 24, %618 ], [ %627, %.loopexit13327.loopexit.split.loop.exit ], [ 26, %495 ]
  %628 = add i32 %344, -52
  %629 = add nuw nsw i64 %12, 32
  %630 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %629)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AcreateLRef0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20bool0x29(ptr noundef %0, i32 noundef %628, i32 noundef %1, i32 noundef %630, i32 noundef 0)
  %631 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsVariable0x280x290x20const(ptr noundef %0, i32 noundef %628) #6
  %.not12941 = icmp eq i32 %631, 0
  br i1 %.not12941, label %632, label %638

632:                                              ; preds = %.loopexit13327
  %633 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsGlobalObjectProperty0x280x290x20const(ptr noundef %0, i32 noundef %628) #6
  %.not12942 = icmp eq i32 %633, 0
  br i1 %.not12942, label %641, label %634

634:                                              ; preds = %632
  %635 = zext i32 %633 to i64
  %636 = add nuw nsw i64 %635, 32
  %637 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %636)
  br label %638

638:                                              ; preds = %.loopexit13327, %634
  %.412545.in = phi i32 [ %637, %634 ], [ %631, %.loopexit13327 ]
  %.412545 = add i32 %.412545.in, 32
  %639 = zext i32 %.412545 to i64
  %640 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %639)
  br label %641

641:                                              ; preds = %632, %638
  %.512650 = phi i32 [ %640, %638 ], [ 0, %632 ]
  %642 = add i32 %.312544, -21
  %643 = icmp ult i32 %642, 3
  br i1 %643, label %644, label %745

644:                                              ; preds = %641
  %645 = add nuw nsw i64 %478, 92
  %646 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %645)
  %647 = add nuw nsw i64 %478, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %647, i64 noundef %646)
  %648 = add nuw nsw i64 %478, 84
  %649 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %648)
  %650 = add nuw nsw i64 %478, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %650, i64 noundef %649)
  %651 = add nuw nsw i64 %478, 76
  %652 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %651)
  %653 = add nuw nsw i64 %478, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %653, i64 noundef %652)
  %654 = load i32, ptr %5, align 8, !tbaa !5
  %655 = add i32 %654, -96
  store i32 %655, ptr %5, align 8, !tbaa !5
  %656 = add nuw nsw i64 %9, 12
  %657 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %656)
  %658 = zext i32 %657 to i64
  %659 = add nuw nsw i64 %658, 44
  %660 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %659)
  %661 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %0, i32 noundef %20, i32 noundef %660) #6
  %662 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %656)
  %663 = zext i32 %662 to i64
  %664 = add nuw nsw i64 %663, 44
  %665 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %664)
  %666 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %0, i32 noundef %20, i32 noundef %665) #6
  %667 = add i32 %344, -120
  %668 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitLoad0x280x29(ptr noundef %0, i32 noundef %667) #6
  %669 = zext i32 %655 to i64
  %670 = add nuw nsw i64 %669, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %670, i64 noundef 34359738369)
  %671 = add i32 %654, -32
  %672 = add nuw nsw i64 %669, 52
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %672, i32 noundef %671)
  %673 = add nuw nsw i64 %669, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %673, i32 noundef %668)
  %674 = add nuw nsw i64 %669, 12
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %674, i64 noundef 34359738368)
  %675 = add i32 %654, -76
  %676 = add nuw nsw i64 %669, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %676, i32 noundef %675)
  %677 = zext i32 %20 to i64
  %678 = add nuw nsw i64 %677, 8
  %679 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %678)
  %680 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %674)
  %681 = add nuw nsw i64 %669, 16
  %682 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %681)
  %.not12944 = icmp ult i32 %680, %682
  br i1 %.not12944, label %686, label %683

683:                                              ; preds = %644
  %684 = add i32 %654, -88
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %684, i32 noundef %675, i32 noundef 0, i32 noundef 4) #6
  %685 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %674)
  br label %686

686:                                              ; preds = %683, %644
  %.012578 = phi i32 [ %685, %683 ], [ %680, %644 ]
  %687 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %676)
  %688 = shl i32 %.012578, 2
  %689 = add i32 %687, %688
  %690 = zext i32 %689 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %690, i32 noundef %679)
  %691 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %674)
  %692 = add i32 %691, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %674, i32 noundef %692)
  switch i32 %.312544, label %693 [
    i32 22, label %694
    i32 23, label %695
  ]

693:                                              ; preds = %686
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %668, i32 noundef %666, i32 noundef %661) #6
  br label %701

694:                                              ; preds = %686
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %668, i32 noundef %661, i32 noundef %666) #6
  br label %701

695:                                              ; preds = %686
  %696 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %677)
  %697 = add i32 %696, 296
  %698 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %668, i32 noundef %697, i32 noundef 1) #6
  %699 = add i32 %698, 8
  %.not12945 = icmp eq i32 %698, 0
  %700 = select i1 %.not12945, i32 0, i32 %699
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %700, i32 noundef %661, i32 noundef %666) #6
  br label %701

701:                                              ; preds = %695, %694, %693
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %678, i32 noundef %661)
  %702 = add i32 %661, 36
  %.not12946 = icmp eq i32 %661, 0
  %703 = select i1 %.not12946, i32 0, i32 %702
  %704 = add nuw nsw i64 %677, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %704, i32 noundef %703)
  %705 = add nuw nsw i64 %12, 36
  %706 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %705)
  %707 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %706, i32 noundef %.512650)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %667, i32 noundef %707) #6
  %708 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %670)
  %709 = add nuw nsw i64 %669, 60
  %710 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %709)
  %.not12947 = icmp ult i32 %708, %710
  br i1 %.not12947, label %714, label %711

711:                                              ; preds = %701
  %712 = add i32 %654, -44
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %712, i32 noundef %671, i32 noundef 0, i32 noundef 4) #6
  %713 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %670)
  br label %714

714:                                              ; preds = %711, %701
  %.8 = phi i32 [ %713, %711 ], [ %708, %701 ]
  %715 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %672)
  %716 = shl i32 %.8, 2
  %717 = add i32 %715, %716
  %718 = zext i32 %717 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %718, i32 noundef %707)
  %719 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %670)
  %720 = add i32 %719, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %670, i32 noundef %720)
  %721 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %678)
  %722 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %674)
  %723 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %681)
  %.not12948 = icmp ult i32 %722, %723
  %.pre13499 = add i32 %654, -88
  br i1 %.not12948, label %._crit_edge13492, label %724

724:                                              ; preds = %714
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %.pre13499, i32 noundef %675, i32 noundef 0, i32 noundef 4) #6
  %725 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %674)
  br label %._crit_edge13492

._crit_edge13492:                                 ; preds = %714, %724
  %.9 = phi i32 [ %725, %724 ], [ %722, %714 ]
  %726 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %676)
  %727 = shl i32 %.9, 2
  %728 = add i32 %726, %727
  %729 = zext i32 %728 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %729, i32 noundef %721)
  %730 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %674)
  %731 = add i32 %730, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %674, i32 noundef %731)
  %732 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %666) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %678, i32 noundef %666)
  %733 = add i32 %666, 36
  %.not12949 = icmp eq i32 %666, 0
  %734 = select i1 %.not12949, i32 0, i32 %733
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %704, i32 noundef %734)
  %735 = add i32 %654, -44
  %736 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreatePhiInst0x28llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3AValue0x2A0x2C0x208u0x3E0x20const0x260x2C0x20llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3ABasicBlock0x2A0x2C0x208u0x3E0x20const0x260x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %735, i32 noundef %.pre13499)
  %737 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %676)
  %.not12950 = icmp eq i32 %675, %737
  br i1 %.not12950, label %739, label %738

738:                                              ; preds = %._crit_edge13492
  tail call void @w2c_hermes_dlfree(ptr noundef nonnull %0, i32 noundef %737) #6
  br label %739

739:                                              ; preds = %738, %._crit_edge13492
  %740 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %672)
  %.not12951 = icmp eq i32 %671, %740
  br i1 %.not12951, label %742, label %741

741:                                              ; preds = %739
  tail call void @w2c_hermes_dlfree(ptr noundef nonnull %0, i32 noundef %740) #6
  br label %742

742:                                              ; preds = %741, %739
  %743 = add i32 %736, 8
  %.not12952 = icmp eq i32 %736, 0
  %744 = select i1 %.not12952, i32 0, i32 %743
  br label %759

745:                                              ; preds = %641
  %746 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitLoad0x280x29(ptr noundef %0, i32 noundef %628) #6
  %747 = add nuw nsw i64 %12, 36
  %748 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %747)
  %749 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %748, i32 noundef %.512650)
  %750 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %0, i32 noundef %20, i32 noundef %746, i32 noundef %749, i32 noundef %.312544) #6
  %751 = add i32 %750, 8
  %.not12943 = icmp eq i32 %750, 0
  %752 = select i1 %.not12943, i32 0, i32 %751
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %628, i32 noundef %752) #6
  br label %759

.loopexit:                                        ; preds = %._crit_edge13493, %403, %444
  %.pre-phi13474 = phi i64 [ %398, %403 ], [ %.pre-phi13473, %444 ], [ %.pre-phi13473, %._crit_edge13493 ]
  %.612651 = phi i32 [ 0, %403 ], [ 0, %444 ], [ %.412649, %._crit_edge13493 ]
  %.212626 = phi i32 [ %397, %403 ], [ %.012624, %444 ], [ %.012624, %._crit_edge13493 ]
  %753 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi13474)
  %.not12883 = icmp eq i32 %.212626, %753
  br i1 %.not12883, label %755, label %754

754:                                              ; preds = %.loopexit
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %753) #6
  br label %755

755:                                              ; preds = %754, %.loopexit
  %756 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %358)
  %757 = icmp eq i32 %756, %357
  br i1 %757, label %759, label %758

758:                                              ; preds = %755
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %756) #6
  br label %759

759:                                              ; preds = %755, %758, %745, %742
  %.712652 = phi i32 [ %744, %742 ], [ %752, %745 ], [ %.612651, %755 ], [ %.612651, %758 ]
  store i32 %344, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

760:                                              ; preds = %342
  %.not12953 = icmp eq i32 %16, 47
  %or.cond13257 = select i1 %.not, i1 %.not12953, i1 false
  br i1 %or.cond13257, label %761, label %973

761:                                              ; preds = %760
  %762 = load i32, ptr %5, align 8, !tbaa !5
  %763 = add i32 %762, -16
  store i32 %763, ptr %5, align 8, !tbaa !5
  %764 = add nuw nsw i64 %12, 28
  %765 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %764)
  %766 = zext i32 %765 to i64
  %767 = add nuw nsw i64 %766, 8
  %768 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %767)
  %.not12954 = icmp ne i32 %765, 0
  %.not12955 = icmp eq i32 %768, 62
  %or.cond13258 = select i1 %.not12954, i1 %.not12955, i1 false
  br i1 %or.cond13258, label %769, label %947

769:                                              ; preds = %761
  %770 = add nuw nsw i64 %766, 28
  %771 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %770)
  %772 = add nuw nsw i64 %9, 72
  %773 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %772)
  %.not12956 = icmp eq i32 %771, %773
  br i1 %.not12956, label %774, label %964

774:                                              ; preds = %769
  %775 = add nuw nsw i64 %9, 44
  %776 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %775)
  %777 = add nuw nsw i64 %9, 56
  %778 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %777)
  %.not12957 = icmp eq i32 %778, 0
  br i1 %.not12957, label %.loopexit13330, label %779

779:                                              ; preds = %774
  %780 = add i32 %778, -1
  %781 = lshr i32 %771, 4
  %782 = lshr i32 %771, 9
  %783 = xor i32 %781, %782
  %784 = and i32 %780, %783
  %785 = shl nuw nsw i32 %784, 3
  %786 = add i32 %785, %776
  %787 = zext i32 %786 to i64
  %788 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %787)
  %789 = icmp eq i32 %771, %788
  br i1 %789, label %.loopexit13331, label %.preheader13329

.preheader13329:                                  ; preds = %779, %791
  %.312627 = phi i32 [ %798, %791 ], [ %788, %779 ]
  %.012615 = phi i32 [ %793, %791 ], [ 1, %779 ]
  %.012519 = phi i32 [ %794, %791 ], [ %784, %779 ]
  %790 = icmp eq i32 %.312627, -4
  br i1 %790, label %.loopexit13330, label %791

791:                                              ; preds = %.preheader13329
  %792 = add i32 %.012519, %.012615
  %793 = add i32 %.012615, 1
  %794 = and i32 %792, %780
  %795 = shl i32 %794, 3
  %796 = add i32 %795, %776
  %797 = zext i32 %796 to i64
  %798 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %797)
  %.not12958 = icmp eq i32 %771, %798
  br i1 %.not12958, label %.loopexit13331, label %.preheader13329

.loopexit13330:                                   ; preds = %.preheader13329, %774
  %799 = shl i32 %778, 3
  %800 = add i32 %799, %776
  br label %.loopexit13331

.loopexit13331:                                   ; preds = %791, %779, %.loopexit13330
  %.112601 = phi i32 [ %800, %.loopexit13330 ], [ %786, %779 ], [ %796, %791 ]
  %801 = shl i32 %778, 3
  %802 = add i32 %801, %776
  %803 = icmp eq i32 %.112601, %802
  br i1 %803, label %814, label %804

804:                                              ; preds = %.loopexit13331
  %805 = zext i32 %.112601 to i64
  %806 = add nuw nsw i64 %805, 4
  %807 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %806)
  %808 = zext i32 %807 to i64
  %809 = add nuw nsw i64 %808, 4
  %810 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %809)
  %.not12959 = icmp eq i32 %810, 0
  br i1 %.not12959, label %814, label %811

811:                                              ; preds = %804
  %812 = zext i32 %810 to i64
  %813 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %812)
  %.not12960 = icmp eq i32 %813, 123
  br i1 %.not12960, label %814, label %947

814:                                              ; preds = %811, %804, %.loopexit13331
  %815 = load i32, ptr %5, align 8, !tbaa !5
  %816 = add i32 %815, -64
  store i32 %816, ptr %5, align 8, !tbaa !5
  %817 = add nuw nsw i64 %12, 16
  %818 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %817)
  %819 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %9)
  %820 = zext i32 %819 to i64
  %821 = add nuw nsw i64 %820, 28
  %822 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %821)
  %823 = zext i32 %822 to i64
  %824 = add nuw nsw i64 %823, 72
  %825 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %824)
  %826 = add i32 %2, 36
  %827 = add nuw nsw i64 %12, 36
  %828 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %827)
  %829 = icmp eq i32 %826, %828
  %830 = zext i32 %816 to i64
  %831 = add nuw nsw i64 %830, 48
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %831, i32 noundef 259)
  %832 = add nuw nsw i64 %830, 40
  br i1 %829, label %833, label %840

833:                                              ; preds = %814
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %832, i32 noundef 54441)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %830, i64 noundef %818)
  %834 = add nuw nsw i64 %830, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %834, i64 noundef %818)
  %835 = trunc i64 %818 to i32
  %836 = add i32 %815, -24
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3AWarning0x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef nonnull %0, i32 noundef %825, i32 noundef 1, i32 noundef %835, i32 noundef %816, i32 noundef %836, i32 noundef 4, i32 noundef 0)
  %837 = add nuw nsw i64 %9, 4
  %838 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %837)
  %839 = add i32 %838, 268
  br label %972

840:                                              ; preds = %814
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %832, i32 noundef 58661)
  %841 = add nuw nsw i64 %830, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %841, i64 noundef %818)
  %842 = add nuw nsw i64 %830, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %842, i64 noundef %818)
  %843 = trunc i64 %818 to i32
  %844 = add i32 %815, -48
  %845 = add i32 %815, -24
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3AWarning0x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef nonnull %0, i32 noundef %825, i32 noundef 1, i32 noundef %843, i32 noundef %844, i32 noundef %845, i32 noundef 2, i32 noundef 0)
  %846 = add nuw nsw i64 %830, 44
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %846, i64 noundef 4294967296)
  %847 = add i32 %815, -12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %832, i32 noundef %847)
  %848 = add nuw nsw i64 %12, 40
  %849 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %848)
  %850 = icmp eq i32 %849, %826
  br i1 %850, label %883, label %.preheader13328

.preheader13328:                                  ; preds = %840, %856
  %.612470 = phi i32 [ %865, %856 ], [ %849, %840 ]
  %851 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %.612470, i32 noundef 0)
  %852 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %846)
  %853 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %831)
  %.not12961 = icmp ult i32 %852, %853
  br i1 %.not12961, label %856, label %854

854:                                              ; preds = %.preheader13328
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %845, i32 noundef %847, i32 noundef 0, i32 noundef 4) #6
  %855 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %846)
  br label %856

856:                                              ; preds = %854, %.preheader13328
  %.112520 = phi i32 [ %855, %854 ], [ %852, %.preheader13328 ]
  %857 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %832)
  %858 = shl i32 %.112520, 2
  %859 = add i32 %857, %858
  %860 = zext i32 %859 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %860, i32 noundef %851)
  %861 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %846)
  %862 = add i32 %861, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %846, i32 noundef %862)
  %863 = zext i32 %.612470 to i64
  %864 = add nuw nsw i64 %863, 4
  %865 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %864)
  %.not12962 = icmp eq i32 %865, %826
  br i1 %.not12962, label %866, label %.preheader13328

866:                                              ; preds = %856
  %867 = icmp ult i32 %862, 2
  br i1 %867, label %883, label %868

868:                                              ; preds = %866
  %869 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %9)
  %870 = zext i32 %869 to i64
  %871 = add nuw nsw i64 %870, 28
  %872 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %871)
  %873 = zext i32 %872 to i64
  %874 = add nuw nsw i64 %873, 72
  %875 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %874)
  %876 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %817)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %842, i32 noundef 54047)
  %877 = add nuw nsw i64 %830, 32
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %877, i32 noundef 259)
  %878 = add nuw nsw i64 %830, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %878, i64 noundef %876)
  %879 = add nuw nsw i64 %830, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %879, i64 noundef %876)
  %880 = trunc i64 %876 to i32
  %881 = add i32 %815, -56
  %882 = add i32 %815, -40
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3AWarning0x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %0, i32 noundef %875, i32 noundef 1, i32 noundef %880, i32 noundef %881, i32 noundef %882, i32 noundef 4, i32 noundef 0)
  br label %883

883:                                              ; preds = %866, %840, %868
  %884 = zext i32 %20 to i64
  %885 = add nuw nsw i64 %884, 8
  %886 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %885)
  %887 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %832)
  %888 = zext i32 %887 to i64
  %889 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %888)
  %890 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %884)
  %891 = zext i32 %886 to i64
  %892 = add nuw nsw i64 %891, 44
  %893 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %892)
  %894 = zext i32 %893 to i64
  %895 = add nuw nsw i64 %894, 108
  %896 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %895)
  %.not12963 = icmp eq i32 %896, 0
  %897 = select i1 %.not12963, i32 324, i32 356
  %898 = add i32 %897, %890
  %899 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 80) #6
  %900 = zext i32 %899 to i64
  %901 = add nuw nsw i64 %900, 20
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %901, i64 noundef 8589934592)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %900, i64 noundef 0)
  %902 = add nuw nsw i64 %900, 68
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %902, i64 noundef 0)
  %903 = add nuw nsw i64 %900, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %903, i32 noundef 0)
  %904 = add nuw nsw i64 %900, 8
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %904, i32 noundef 58)
  %905 = add nuw nsw i64 %900, 10
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %905, i32 noundef 459775)
  %906 = add i32 %899, 28
  %907 = add nuw nsw i64 %900, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %907, i32 noundef %906)
  %908 = add nuw nsw i64 %900, 44
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %908, i64 noundef 8589934592)
  %909 = add i32 %899, 52
  %910 = add nuw nsw i64 %900, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %910, i32 noundef %909)
  %911 = add nuw nsw i64 %900, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %911, i32 noundef 0)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %899, i32 noundef %889)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %899, i32 noundef %898)
  %912 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %885)
  %913 = zext i32 %912 to i64
  %914 = add nuw nsw i64 %913, 44
  %915 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %914)
  %916 = zext i32 %915 to i64
  %917 = add nuw nsw i64 %916, 136
  %918 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %917)
  %919 = and i64 %918, 1095216660480
  %.not12964 = icmp eq i64 %919, 0
  %920 = add nuw nsw i64 %884, 4
  %921 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %920)
  br i1 %.not12964, label %924, label %922

922:                                              ; preds = %883
  %923 = trunc i64 %918 to i32
  br label %931

924:                                              ; preds = %883
  %925 = add i32 %912, 36
  %926 = icmp eq i32 %921, %925
  br i1 %926, label %931, label %927

927:                                              ; preds = %924
  %928 = zext i32 %921 to i64
  %929 = add nuw nsw i64 %928, 76
  %930 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %929)
  br label %931

931:                                              ; preds = %924, %927, %922
  %.212521 = phi i32 [ %923, %922 ], [ 0, %924 ], [ %930, %927 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %911, i32 noundef %.212521)
  %932 = add nuw nsw i64 %884, 12
  %933 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %932)
  %934 = add nuw nsw i64 %900, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %934, i32 noundef %933)
  %935 = add nuw nsw i64 %884, 16
  %936 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %935)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %903, i32 noundef %912)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %902, i32 noundef %936)
  %937 = zext i32 %921 to i64
  %938 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %937)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %900, i32 noundef %938)
  %939 = add nuw nsw i64 %900, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %939, i32 noundef %921)
  %940 = zext i32 %938 to i64
  %941 = add nuw nsw i64 %940, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %941, i32 noundef %899)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %937, i32 noundef %899)
  %942 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %832)
  %.not12965 = icmp eq i32 %847, %942
  br i1 %.not12965, label %944, label %943

943:                                              ; preds = %931
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %942) #6
  br label %944

944:                                              ; preds = %943, %931
  %945 = add i32 %899, 8
  %.not12966 = icmp eq i32 %899, 0
  %946 = select i1 %.not12966, i32 0, i32 %945
  br label %972

947:                                              ; preds = %811, %761
  %.not12967 = icmp eq i32 %768, 54
  %or.cond13260 = select i1 %.not12954, i1 %.not12967, i1 false
  br i1 %or.cond13260, label %948, label %956

948:                                              ; preds = %947
  %949 = add nuw nsw i64 %766, 28
  %950 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %949)
  %951 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %950, i32 noundef 0)
  %952 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenMemberExpressionProperty0x28hermes0x3A0x3AESTree0x3A0x3AMemberExpressionLikeNode0x2A0x29(ptr noundef %0, i32 noundef %1, i32 noundef %765)
  %953 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %20, i32 noundef %951, i32 noundef %952) #6
  %954 = add i32 %953, 8
  %.not12968 = icmp eq i32 %953, 0
  %955 = select i1 %.not12968, i32 0, i32 %954
  br label %970

956:                                              ; preds = %947
  %.not12969 = icmp eq i32 %768, 55
  %or.cond13262 = select i1 %.not12954, i1 %.not12969, i1 false
  br i1 %or.cond13262, label %957, label %964

957:                                              ; preds = %956
  %958 = add i32 %762, -8
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalMemberExpression0x28hermes0x3A0x3AESTree0x3A0x3AOptionalMemberExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AMemberExpressionOperation0x29(ptr noundef %0, i32 noundef %958, i32 noundef %1, i32 noundef %765, i32 noundef 0, i32 noundef 0)
  %959 = zext i32 %763 to i64
  %960 = add nuw nsw i64 %959, 12
  %961 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %960)
  %962 = add nuw nsw i64 %959, 8
  %963 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %962)
  br label %970

964:                                              ; preds = %956, %769
  %965 = add nuw nsw i64 %9, 4
  %966 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %965)
  %967 = add i32 %966, 268
  %968 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %764)
  %969 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %968, i32 noundef 0)
  br label %970

970:                                              ; preds = %964, %957, %948
  %.812653 = phi i32 [ %967, %964 ], [ %961, %957 ], [ %951, %948 ]
  %.312532 = phi i32 [ %969, %964 ], [ %963, %957 ], [ %955, %948 ]
  %971 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitCall0x28hermes0x3A0x3AESTree0x3A0x3ACallExpressionLikeNode0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %.312532, i32 noundef %.812653)
  br label %972

972:                                              ; preds = %833, %944, %970
  %.512546 = phi i32 [ %971, %970 ], [ %839, %833 ], [ %946, %944 ]
  store i32 %762, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

973:                                              ; preds = %760
  %.not12970 = icmp eq i32 %16, 48
  %or.cond13264 = select i1 %.not, i1 %.not12970, i1 false
  br i1 %or.cond13264, label %974, label %976

974:                                              ; preds = %973
  %975 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalCallExpr0x28hermes0x3A0x3AESTree0x3A0x3AOptionalCallExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %2, i32 noundef 0)
  br label %.loopexit13356

976:                                              ; preds = %973
  %.not12971 = icmp eq i32 %16, 42
  %or.cond13266 = select i1 %.not, i1 %.not12971, i1 false
  br i1 %or.cond13266, label %977, label %1104

977:                                              ; preds = %976
  %978 = load i32, ptr %5, align 8, !tbaa !5
  %979 = add i32 %978, -64
  store i32 %979, ptr %5, align 8, !tbaa !5
  %980 = add nuw nsw i64 %12, 28
  %981 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %980)
  %982 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %981, i32 noundef 0)
  %983 = add nuw nsw i64 %12, 40
  %984 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %983)
  %985 = add i32 %2, 36
  %.not12972 = icmp eq i32 %984, %985
  br i1 %.not12972, label %1030, label %.preheader13334

.preheader13334:                                  ; preds = %977, %.preheader13334
  %.412628 = phi i32 [ %991, %.preheader13334 ], [ 0, %977 ]
  %.10 = phi i32 [ %993, %.preheader13334 ], [ %984, %977 ]
  %986 = zext i32 %.10 to i64
  %987 = add nuw nsw i64 %986, 8
  %988 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %987)
  %989 = icmp eq i32 %988, 41
  %990 = zext i1 %989 to i32
  %991 = or i32 %.412628, %990
  %992 = add nuw nsw i64 %986, 4
  %993 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %992)
  %.not12973 = icmp eq i32 %993, %985
  br i1 %.not12973, label %994, label %.preheader13334

994:                                              ; preds = %.preheader13334
  %995 = and i32 %991, 1
  %.not12974 = icmp eq i32 %995, 0
  br i1 %.not12974, label %.preheader13333, label %1018

.preheader13333:                                  ; preds = %994
  %996 = zext i32 %979 to i64
  %997 = add nuw nsw i64 %996, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %997, i64 noundef 8589934592)
  %998 = add i32 %978, -8
  %999 = add nuw nsw i64 %996, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %999, i32 noundef %998)
  %1000 = add nuw nsw i64 %996, 52
  %1001 = add i32 %978, -20
  br label %1002

1002:                                             ; preds = %.preheader13333, %1008
  %.812472 = phi i32 [ %1017, %1008 ], [ %984, %.preheader13333 ]
  %1003 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %.812472, i32 noundef 0)
  %1004 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %997)
  %1005 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1000)
  %.not12975 = icmp ult i32 %1004, %1005
  br i1 %.not12975, label %1008, label %1006

1006:                                             ; preds = %1002
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %1001, i32 noundef %998, i32 noundef 0, i32 noundef 4) #6
  %1007 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %997)
  br label %1008

1008:                                             ; preds = %1006, %1002
  %.11 = phi i32 [ %1007, %1006 ], [ %1004, %1002 ]
  %1009 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %999)
  %1010 = shl i32 %.11, 2
  %1011 = add i32 %1009, %1010
  %1012 = zext i32 %1011 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1012, i32 noundef %1003)
  %1013 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %997)
  %1014 = add i32 %1013, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %997, i32 noundef %1014)
  %1015 = zext i32 %.812472 to i64
  %1016 = add nuw nsw i64 %1015, 4
  %1017 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1016)
  %.not12976 = icmp eq i32 %985, %1017
  br i1 %.not12976, label %1035, label %1002

1018:                                             ; preds = %994
  %1019 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenArrayFromElements0x28llvh0x3A0x3Asimple_ilist0x3Chermes0x3A0x3AESTree0x3A0x3ANode0x3E0x260x29(ptr noundef %0, i32 noundef %1, i32 noundef %985)
  %1020 = zext i32 %979 to i64
  %1021 = add nuw nsw i64 %1020, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1021, i32 noundef 2)
  %1022 = add nuw nsw i64 %1020, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1022, i32 noundef %1019)
  %1023 = add nuw nsw i64 %1020, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1023, i32 noundef %982)
  %1024 = add i32 %978, -20
  %1025 = add nuw nsw i64 %1020, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1025, i32 noundef %1024)
  %1026 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1025)
  %1027 = add nuw nsw i64 %1020, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1027, i64 noundef %1026)
  %1028 = add i32 %978, -48
  %1029 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %0, i32 noundef %1, i32 noundef 47, i32 noundef %1028)
  br label %1103

1030:                                             ; preds = %977
  %1031 = zext i32 %979 to i64
  %1032 = add nuw nsw i64 %1031, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1032, i64 noundef 8589934592)
  %1033 = add i32 %978, -8
  %1034 = add nuw nsw i64 %1031, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1034, i32 noundef %1033)
  br label %1037

1035:                                             ; preds = %1008
  %1036 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %999)
  br label %1037

1037:                                             ; preds = %1030, %1035
  %.pre-phi13475 = phi i64 [ %1031, %1030 ], [ %996, %1035 ]
  %.612630 = phi i32 [ %1033, %1030 ], [ %998, %1035 ]
  %.612547 = phi i32 [ %1033, %1030 ], [ %1036, %1035 ]
  %.12 = phi i32 [ 0, %1030 ], [ %1014, %1035 ]
  %1038 = add nuw nsw i64 %.pre-phi13475, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1038, i32 noundef %.12)
  %1039 = add nuw nsw i64 %.pre-phi13475, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1039, i32 noundef %.612547)
  %1040 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1039)
  %1041 = add nuw nsw i64 %.pre-phi13475, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1041, i64 noundef %1040)
  %1042 = add nuw nsw i64 %9, 4
  %1043 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1042)
  %1044 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 84) #6
  %1045 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1041)
  %1046 = zext i32 %1044 to i64
  %1047 = add nuw nsw i64 %1046, 20
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1047, i64 noundef 8589934592)
  %1048 = add i32 %1044, 28
  %1049 = add nuw nsw i64 %1046, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1049, i32 noundef %1048)
  %1050 = add nuw nsw i64 %1046, 10
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1050, i32 noundef 459775)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1046, i64 noundef 0)
  %1051 = add nuw nsw i64 %1046, 68
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1051, i64 noundef 0)
  %1052 = add nuw nsw i64 %1046, 44
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1052, i64 noundef 8589934592)
  %1053 = add i32 %1044, 52
  %1054 = add nuw nsw i64 %1046, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1054, i32 noundef %1053)
  %1055 = add nuw nsw i64 %1046, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1055, i32 noundef 0)
  %1056 = add nuw nsw i64 %1046, 8
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1056, i32 noundef 92)
  %1057 = add nuw nsw i64 %1046, 76
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1057, i64 noundef 0)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %1044, i32 noundef %982)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %1044, i32 noundef %982)
  %1058 = add i32 %1043, 268
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %1044, i32 noundef %1058)
  %.not12977 = icmp ult i64 %1045, 4294967296
  br i1 %.not12977, label %.loopexit13332, label %1059

1059:                                             ; preds = %1037
  %1060 = trunc i64 %1045 to i32
  %sh.diff = lshr i64 %1045, 30
  %tr.sh.diff = trunc i64 %sh.diff to i32
  %1061 = and i32 %tr.sh.diff, -4
  %1062 = add i32 %1061, %1060
  br label %1063

1063:                                             ; preds = %1063, %1059
  %.13 = phi i32 [ %1060, %1059 ], [ %1066, %1063 ]
  %1064 = zext i32 %.13 to i64
  %1065 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1064)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %1044, i32 noundef %1065)
  %1066 = add i32 %.13, 4
  %.not12978 = icmp eq i32 %1066, %1062
  br i1 %.not12978, label %.loopexit13332, label %1063

.loopexit13332:                                   ; preds = %1063, %1037
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1050, i32 noundef 458880)
  %1067 = add nuw nsw i64 %9, 12
  %1068 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1067)
  %1069 = zext i32 %1068 to i64
  %1070 = add nuw nsw i64 %1069, 44
  %1071 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1070)
  %1072 = zext i32 %1071 to i64
  %1073 = add nuw nsw i64 %1072, 136
  %1074 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1073)
  %1075 = and i64 %1074, 1095216660480
  %.not12979 = icmp eq i64 %1075, 0
  %1076 = add nuw nsw i64 %9, 8
  %1077 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1076)
  br i1 %.not12979, label %1080, label %1078

1078:                                             ; preds = %.loopexit13332
  %1079 = trunc i64 %1074 to i32
  br label %1087

1080:                                             ; preds = %.loopexit13332
  %1081 = add i32 %1068, 36
  %1082 = icmp eq i32 %1077, %1081
  br i1 %1082, label %1087, label %1083

1083:                                             ; preds = %1080
  %1084 = zext i32 %1077 to i64
  %1085 = add nuw nsw i64 %1084, 76
  %1086 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1085)
  br label %1087

1087:                                             ; preds = %1080, %1083, %1078
  %.012535 = phi i32 [ %1079, %1078 ], [ 0, %1080 ], [ %1086, %1083 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1057, i32 noundef %.012535)
  %1088 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %10)
  %1089 = add nuw nsw i64 %1046, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1089, i32 noundef %1088)
  %1090 = add nuw nsw i64 %9, 20
  %1091 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1090)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1055, i32 noundef %1068)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1051, i32 noundef %1091)
  %1092 = zext i32 %1077 to i64
  %1093 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1092)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1046, i32 noundef %1093)
  %1094 = add nuw nsw i64 %1046, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1094, i32 noundef %1077)
  %1095 = zext i32 %1093 to i64
  %1096 = add nuw nsw i64 %1095, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1096, i32 noundef %1044)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1092, i32 noundef %1044)
  %1097 = add i32 %1044, 8
  %1098 = add nuw nsw i64 %.pre-phi13475, 44
  %1099 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1098)
  %.not12980 = icmp eq i32 %.612630, %1099
  br i1 %.not12980, label %1101, label %1100

1100:                                             ; preds = %1087
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1099) #6
  br label %1101

1101:                                             ; preds = %1100, %1087
  %.not12981 = icmp eq i32 %1044, 0
  %1102 = select i1 %.not12981, i32 0, i32 %1097
  br label %1103

1103:                                             ; preds = %1101, %1018
  %.712548 = phi i32 [ %1102, %1101 ], [ %1029, %1018 ]
  store i32 %978, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

1104:                                             ; preds = %976
  %.not12982 = icmp eq i32 %16, 54
  %or.cond13268 = select i1 %.not, i1 %.not12982, i1 false
  br i1 %or.cond13268, label %1105, label %1117

1105:                                             ; preds = %1104
  %1106 = add nuw nsw i64 %12, 28
  %1107 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1106)
  %1108 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1107, i32 noundef 0)
  %1109 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenMemberExpressionProperty0x28hermes0x3A0x3AESTree0x3A0x3AMemberExpressionLikeNode0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %2)
  %1110 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1108, i32 noundef %1109) #6
  %1111 = zext i32 %7 to i64
  %1112 = add nuw nsw i64 %1111, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1112, i32 noundef %1108)
  %1113 = add i32 %1110, 8
  %.not12983 = icmp eq i32 %1110, 0
  %1114 = select i1 %.not12983, i32 0, i32 %1113
  %1115 = add nuw nsw i64 %1111, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1115, i32 noundef %1114)
  %1116 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1115)
  br label %.loopexit13356

1117:                                             ; preds = %1104
  %.not12984 = icmp eq i32 %16, 55
  %or.cond13270 = select i1 %.not, i1 %.not12984, i1 false
  br i1 %or.cond13270, label %1118, label %1123

1118:                                             ; preds = %1117
  %1119 = add i32 %6, -28
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalMemberExpression0x28hermes0x3A0x3AESTree0x3A0x3AOptionalMemberExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AMemberExpressionOperation0x29(ptr noundef nonnull %0, i32 noundef %1119, i32 noundef %1, i32 noundef %2, i32 noundef 0, i32 noundef 0)
  %1120 = zext i32 %7 to i64
  %1121 = add nuw nsw i64 %1120, 20
  %1122 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1121)
  br label %.loopexit13356

1123:                                             ; preds = %1117
  %.not12985 = icmp eq i32 %16, 40
  %or.cond13272 = select i1 %.not, i1 %.not12985, i1 false
  br i1 %or.cond13272, label %1124, label %1127

1124:                                             ; preds = %1123
  %1125 = add i32 %2, 28
  %1126 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenArrayFromElements0x28llvh0x3A0x3Asimple_ilist0x3Chermes0x3A0x3AESTree0x3A0x3ANode0x3E0x260x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1125)
  br label %.loopexit13356

1127:                                             ; preds = %1123
  %.not12986 = icmp eq i32 %16, 39
  %or.cond13274 = select i1 %.not, i1 %.not12986, i1 false
  br i1 %or.cond13274, label %1128, label %1738

1128:                                             ; preds = %1127
  %1129 = load i32, ptr %5, align 8, !tbaa !5
  %1130 = add i32 %1129, -320
  store i32 %1130, ptr %5, align 8, !tbaa !5
  %1131 = zext i32 %1130 to i64
  %1132 = add nuw nsw i64 %1131, 296
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1132, i64 noundef 0)
  %1133 = add nuw nsw i64 %1131, 288
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1133, i64 noundef 0)
  %1134 = add nuw nsw i64 %1131, 304
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1134, i32 noundef 24)
  %1135 = add nuw nsw i64 %1131, 272
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1135, i64 noundef 0)
  %1136 = add nuw nsw i64 %1131, 264
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1136, i64 noundef 0)
  %1137 = add nuw nsw i64 %1131, 280
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1137, i32 noundef 12)
  %1138 = add nuw nsw i64 %1131, 224
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1138, i64 noundef 137438953472)
  %1139 = add i32 %1129, -88
  %1140 = add nuw nsw i64 %1131, 220
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1140, i32 noundef %1139)
  %1141 = add nuw nsw i64 %12, 32
  %1142 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1141)
  %1143 = add i32 %2, 28
  %1144 = icmp eq i32 %1142, %1143
  br i1 %1144, label %1409, label %.preheader13343

.preheader13343:                                  ; preds = %1128
  %1145 = add nuw nsw i64 %1131, 228
  %1146 = add i32 %1129, -100
  %1147 = add nuw nsw i64 %1131, 212
  %1148 = add nuw nsw i64 %1131, 208
  %1149 = add i32 %1129, -32
  %1150 = add nuw nsw i64 %1131, 184
  %1151 = add nuw nsw i64 %1131, 176
  %1152 = add i32 %1129, -112
  %1153 = add nuw nsw i64 %1131, 180
  %1154 = add i32 %1129, -128
  %1155 = add i32 %1129, -144
  %1156 = add nuw nsw i64 %1131, 192
  %1157 = add nuw nsw i64 %1131, 203
  %1158 = add nuw nsw i64 %1131, 160
  %1159 = add nuw nsw i64 %1131, 196
  %1160 = add nuw nsw i64 %1131, 164
  %1161 = add nuw nsw i64 %1131, 88
  %1162 = add i32 %1129, -56
  %1163 = zext i32 %1162 to i64
  %1164 = add nuw nsw i64 %1163, 12
  %1165 = add nuw nsw i64 %1163, 8
  %1166 = add nuw nsw i64 %1131, 172
  %1167 = add nuw nsw i64 %1131, 168
  %1168 = add nuw nsw i64 %9, 4
  %1169 = add nuw nsw i64 %1131, 152
  %1170 = add nuw nsw i64 %1131, 144
  %1171 = add nuw nsw i64 %1131, 80
  %1172 = add i32 %1129, -176
  %1173 = add nuw nsw i64 %1131, 148
  %1174 = add nuw nsw i64 %1131, 312
  %1175 = add i32 %1129, -240
  %1176 = add nuw nsw i64 %1131, 72
  %1177 = add i32 %1129, -248
  %1178 = add nuw nsw i64 %1131, 200
  %1179 = add nuw nsw i64 %1131, 64
  %1180 = add i32 %1129, -256
  %1181 = add nuw nsw i64 %1131, 56
  %1182 = add i32 %1129, -264
  br label %1183

1183:                                             ; preds = %.preheader13343, %1394
  %.112616 = phi i32 [ %.212617, %1394 ], [ 0, %.preheader13343 ]
  %.212602 = phi i32 [ %.312603, %1394 ], [ 0, %.preheader13343 ]
  %.1012501 = phi i32 [ %1396, %1394 ], [ %1142, %.preheader13343 ]
  %1184 = zext i32 %.1012501 to i64
  %1185 = add nuw nsw i64 %1184, 8
  %1186 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1185)
  %1187 = icmp eq i32 %1186, 41
  br i1 %1187, label %1394, label %1188

1188:                                             ; preds = %1183
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1138, i32 noundef 0)
  %1189 = add nuw nsw i64 %1184, 40
  %1190 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1189)
  %.not12987 = icmp eq i32 %1190, 0
  br i1 %.not12987, label %1193, label %1191

1191:                                             ; preds = %1188
  %1192 = add i32 %.112616, 1
  br label %1394

1193:                                             ; preds = %1188
  %1194 = add nuw nsw i64 %1184, 28
  %1195 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1194)
  %1196 = zext i32 %1195 to i64
  %1197 = add nuw nsw i64 %1196, 8
  %1198 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1197)
  %.not12988 = icmp ne i32 %1195, 0
  %.not12989 = icmp eq i32 %1198, 32
  %or.cond13275 = select i1 %.not12988, i1 %.not12989, i1 false
  br i1 %or.cond13275, label %1199, label %1204

1199:                                             ; preds = %1193
  %1200 = add nuw nsw i64 %1196, 28
  %1201 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1200)
  %1202 = zext i32 %1201 to i64
  %1203 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1202)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1148, i64 noundef %1203)
  br label %1228

1204:                                             ; preds = %1193
  %.not12990 = icmp eq i32 %1198, 62
  %or.cond13277 = select i1 %.not12988, i1 %.not12990, i1 false
  br i1 %or.cond13277, label %1205, label %1210

1205:                                             ; preds = %1204
  %1206 = add nuw nsw i64 %1196, 28
  %1207 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1206)
  %1208 = zext i32 %1207 to i64
  %1209 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1208)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1148, i64 noundef %1209)
  br label %1228

1210:                                             ; preds = %1204
  %.not12991 = icmp eq i32 %1198, 33
  %or.cond13279 = select i1 %.not12988, i1 %.not12991, i1 false
  br i1 %or.cond13279, label %1211, label %1228

1211:                                             ; preds = %1210
  %1212 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1145)
  %1213 = icmp ult i32 %1212, 32
  br i1 %1213, label %1214, label %1217

1214:                                             ; preds = %1211
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %1146, i32 noundef %1139, i32 noundef 32, i32 noundef 1) #6
  %1215 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1138)
  %1216 = icmp eq i32 %1215, 32
  br i1 %1216, label %1222, label %1217

1217:                                             ; preds = %1214, %1211
  %.012589 = phi i32 [ %1215, %1214 ], [ 0, %1211 ]
  %1218 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1140)
  %1219 = add i32 %1218, %.012589
  %1220 = sub i32 32, %.012589
  %1221 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %1219, i32 noundef 0, i32 noundef %1220) #6
  br label %1222

1222:                                             ; preds = %1214, %1217
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1138, i32 noundef 32)
  %1223 = add nuw nsw i64 %1196, 32
  %1224 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %1223)
  %1225 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1140)
  %1226 = tail call i32 @w2c_hermes_hermes0x3A0x3AnumberToString0x28double0x2C0x20char0x2A0x2C0x20unsigned0x20long0x29(ptr noundef %0, double noundef %1224, i32 noundef %1225) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1147, i32 noundef %1226)
  %1227 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1140)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1148, i32 noundef %1227)
  br label %1228

1228:                                             ; preds = %1210, %1222, %1205, %1199
  %1229 = add nuw nsw i64 %1184, 36
  %1230 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1229)
  %1231 = zext i32 %1230 to i64
  %1232 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1231)
  %1233 = and i64 %1232, -4294967296
  %.not12992 = icmp eq i64 %1233, 17179869184
  br i1 %.not12992, label %1234, label %1270

1234:                                             ; preds = %1228
  %1235 = and i64 %1232, 4294967295
  %1236 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1235)
  %.not12993 = icmp eq i32 %1236, 1953066601
  br i1 %.not12993, label %1237, label %1270

1237:                                             ; preds = %1234
  %1238 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1148)
  %1239 = and i64 %1238, -4294967296
  %.not12994 = icmp eq i64 %1239, 38654705664
  br i1 %.not12994, label %1240, label %1270

1240:                                             ; preds = %1237
  %1241 = trunc i64 %1238 to i32
  %1242 = tail call i32 @w2c_hermes_memcmp(ptr noundef %0, i32 noundef %1241, i32 noundef 55858, i32 noundef 9) #6
  %.not12995 = icmp eq i32 %1242, 0
  br i1 %.not12995, label %1243, label %1270

1243:                                             ; preds = %1240
  %1244 = add nuw nsw i64 %1184, 41
  %1245 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1244)
  %.not12996 = icmp eq i32 %1245, 0
  br i1 %.not12996, label %1246, label %1270

1246:                                             ; preds = %1243
  %1247 = add nuw nsw i64 %1184, 42
  %1248 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1247)
  %.not12997 = icmp eq i32 %1248, 0
  br i1 %.not12997, label %1249, label %1270

1249:                                             ; preds = %1246
  %.not12998 = icmp eq i32 %.212602, 0
  br i1 %.not12998, label %1394, label %1250

1250:                                             ; preds = %1249
  %1251 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1168)
  %1252 = zext i32 %1251 to i64
  %1253 = add nuw nsw i64 %1252, 28
  %1254 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1253)
  %1255 = zext i32 %1254 to i64
  %1256 = add nuw nsw i64 %1255, 72
  %1257 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1256)
  %1258 = add nuw nsw i64 %1184, 16
  %1259 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1258)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1156, i32 noundef 57723)
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %1178, i32 noundef 259)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1179, i64 noundef %1259)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1151, i64 noundef %1259)
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %0, i32 noundef %1257, i32 noundef 0, i32 noundef %1180, i32 noundef %1154, i32 noundef 0)
  %1260 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1168)
  %1261 = zext i32 %1260 to i64
  %1262 = add nuw nsw i64 %1261, 28
  %1263 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1262)
  %1264 = zext i32 %1263 to i64
  %1265 = add nuw nsw i64 %1264, 72
  %1266 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1265)
  %1267 = zext i32 %.212602 to i64
  %1268 = add nuw nsw i64 %1267, 16
  %1269 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1268)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1156, i32 noundef 58340)
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %1178, i32 noundef 259)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1181, i64 noundef %1269)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1151, i64 noundef %1269)
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %0, i32 noundef %1266, i32 noundef 3, i32 noundef %1182, i32 noundef %1154, i32 noundef 0)
  br label %1394

1270:                                             ; preds = %1246, %1243, %1240, %1237, %1234, %1228
  %1271 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1148)
  %1272 = tail call i32 @w2c_hermes_llvh0x3A0x3AStringMap0x3Chermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenObjectExpr0x28hermes0x3A0x3AESTree0x3A0x3AObjectExpressionNode0x2A0x290x3A0x3APropertyValue0x2C0x20llvh0x3A0x3AMallocAllocator0x3E0x3A0x3Aoperator0x5B0x5D0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %1149, i64 noundef %1271) #6
  %1273 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1229)
  %1274 = zext i32 %1273 to i64
  %1275 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1274)
  %1276 = and i64 %1275, -4294967296
  %.not12999 = icmp eq i64 %1276, 12884901888
  br i1 %.not12999, label %1277, label %1301

1277:                                             ; preds = %1270
  %1278 = trunc i64 %1275 to i32
  %1279 = tail call i32 @w2c_hermes_memcmp(ptr noundef %0, i32 noundef %1278, i32 noundef 29638, i32 noundef 3) #6
  %.not13000 = icmp eq i32 %1279, 0
  br i1 %.not13000, label %1280, label %1290

1280:                                             ; preds = %1277
  %1281 = add nuw nsw i64 %1184, 32
  %1282 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1281)
  %1283 = zext i32 %1272 to i64
  %1284 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1283)
  %.not13003 = icmp eq i32 %1284, 0
  br i1 %.not13003, label %1285, label %1288

1285:                                             ; preds = %1280
  %1286 = add nuw nsw i64 %1283, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1286, i32 noundef 0)
  %1287 = add nuw nsw i64 %1283, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1287, i32 noundef 0)
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1283, i32 noundef 1)
  br label %1288

1288:                                             ; preds = %1285, %1280
  %1289 = add nuw nsw i64 %1283, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1289, i32 noundef %1282)
  br label %1307

1290:                                             ; preds = %1277
  %1291 = tail call i32 @w2c_hermes_memcmp(ptr noundef %0, i32 noundef %1278, i32 noundef 28913, i32 noundef 3) #6
  %.not13001 = icmp eq i32 %1291, 0
  br i1 %.not13001, label %1292, label %1301

1292:                                             ; preds = %1290
  %1293 = add nuw nsw i64 %1184, 32
  %1294 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1293)
  %1295 = zext i32 %1272 to i64
  %1296 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1295)
  %.not13002 = icmp eq i32 %1296, 0
  br i1 %.not13002, label %1297, label %1299

1297:                                             ; preds = %1292
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1295, i32 noundef 1)
  %1298 = add nuw nsw i64 %1295, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1298, i64 noundef 0)
  br label %1299

1299:                                             ; preds = %1297, %1292
  %1300 = add nuw nsw i64 %1295, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1300, i32 noundef %1294)
  br label %1307

1301:                                             ; preds = %1290, %1270
  %1302 = add nuw nsw i64 %1184, 32
  %1303 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1302)
  %1304 = zext i32 %1272 to i64
  %1305 = add nuw nsw i64 %1304, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1305, i32 noundef %1303)
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1304, i32 noundef 0)
  %1306 = add nuw nsw i64 %1304, 12
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1306, i64 noundef 0)
  br label %1307

1307:                                             ; preds = %1301, %1299, %1288
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %1150, i32 noundef 1285)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1151, i32 noundef %1273)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1153, i32 noundef %1152)
  tail call void @w2c_hermes_llvh0x3A0x3ATwine0x3A0x3Astr0x280x290x20const(ptr noundef %0, i32 noundef %1154, i32 noundef %1155) #6
  %1308 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1156)
  %1309 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %1157)
  %1310 = icmp slt i32 %1309, 0
  %1311 = select i1 %1310, i32 %1308, i32 %1154
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1158, i32 noundef %1311)
  %1312 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1159)
  %1313 = and i32 %1309, 255
  %1314 = select i1 %1310, i32 %1312, i32 %1313
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1160, i32 noundef %1314)
  %1315 = add nuw nsw i64 %1184, 16
  %1316 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1315)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1151, i64 noundef %1316)
  %1317 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1158)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1161, i64 noundef %1317)
  %1318 = load i32, ptr %5, align 8, !tbaa !5
  %1319 = add i32 %1318, -16
  store i32 %1319, ptr %5, align 8, !tbaa !5
  %1320 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1161)
  %1321 = zext i32 %1319 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1321, i64 noundef %1320)
  %1322 = add nuw nsw i64 %1321, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1322, i64 noundef %1320)
  %1323 = tail call i32 @w2c_hermes_llvh0x3A0x3AStringMapImpl0x3A0x3ALookupBucketFor0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %1162, i32 noundef %1319) #6
  %1324 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1163)
  %1325 = shl i32 %1323, 2
  %1326 = add i32 %1324, %1325
  %1327 = zext i32 %1326 to i64
  %1328 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1327)
  switch i32 %1328, label %.preheader13340 [
    i32 -4, label %1334
    i32 0, label %1337
  ]

.preheader13340:                                  ; preds = %1307, %1329
  %.712631 = phi i32 [ %1333, %1329 ], [ %1326, %1307 ]
  %.112579 = phi i32 [ %1332, %1329 ], [ %1328, %1307 ]
  switch i32 %.112579, label %.loopexit13341 [
    i32 -4, label %1329
    i32 0, label %1329
  ]

1329:                                             ; preds = %.preheader13340, %.preheader13340
  %1330 = zext i32 %.712631 to i64
  %1331 = add nuw nsw i64 %1330, 4
  %1332 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1331)
  %1333 = add i32 %.712631, 4
  br label %.preheader13340

1334:                                             ; preds = %1307
  %1335 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1164)
  %1336 = add i32 %1335, -1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1164, i32 noundef %1336)
  br label %1337

1337:                                             ; preds = %1307, %1334
  %1338 = lshr i64 %1320, 32
  %1339 = trunc nuw i64 %1338 to i32
  %1340 = add i32 %1339, 13
  %1341 = tail call i32 @w2c_hermes_dlmalloc(ptr noundef nonnull %0, i32 noundef %1340) #6
  %.not13004 = icmp eq i32 %1341, 0
  br i1 %.not13004, label %1342, label %1343

1342:                                             ; preds = %1337
  tail call void @w2c_hermes_llvh0x3A0x3Areport_bad_alloc_error0x28char0x20const0x2A0x2C0x20bool0x29(ptr noundef nonnull %0, i32 noundef 54663) #6
  br label %1343

1343:                                             ; preds = %1342, %1337
  %1344 = zext i32 %1341 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1344, i32 noundef %1339)
  %1345 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1151)
  %1346 = add nuw nsw i64 %1344, 4
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1346, i64 noundef %1345)
  %1347 = add i32 %1341, 12
  %.not13005 = icmp ult i64 %1320, 4294967296
  br i1 %.not13005, label %1351, label %1348

1348:                                             ; preds = %1343
  %1349 = trunc i64 %1320 to i32
  %1350 = tail call i32 @w2c_hermes_0x5F_memcpy(ptr noundef nonnull %0, i32 noundef %1347, i32 noundef %1349, i32 noundef %1339) #6
  br label %1351

1351:                                             ; preds = %1348, %1343
  %1352 = add i32 %1347, %1339
  %1353 = zext i32 %1352 to i64
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1353, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1327, i32 noundef %1341)
  %1354 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1165)
  %1355 = add i32 %1354, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1165, i32 noundef %1355)
  %1356 = tail call i32 @w2c_hermes_llvh0x3A0x3AStringMapImpl0x3A0x3ARehashTable0x28unsigned0x20int0x29(ptr noundef nonnull %0, i32 noundef %1162, i32 noundef %1323) #6
  %1357 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1163)
  %1358 = shl i32 %1356, 2
  %1359 = add i32 %1357, %1358
  br label %1360

1360:                                             ; preds = %1363, %1351
  %.812632 = phi i32 [ %1359, %1351 ], [ %1364, %1363 ]
  %1361 = zext i32 %.812632 to i64
  %1362 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1361)
  switch i32 %1362, label %.loopexit13341 [
    i32 -4, label %1363
    i32 0, label %1363
  ]

1363:                                             ; preds = %1360, %1360
  %1364 = add i32 %.812632, 4
  br label %1360

.loopexit13341:                                   ; preds = %1360, %.preheader13340
  %.912633 = phi i32 [ %.712631, %.preheader13340 ], [ %.812632, %1360 ]
  %.912473 = phi i32 [ 0, %.preheader13340 ], [ 1, %1360 ]
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1166, i32 noundef %.912473)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1167, i32 noundef %.912633)
  store i32 %1318, ptr %5, align 8, !tbaa !5
  %1365 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1166)
  %.not13006 = icmp eq i32 %1365, 0
  br i1 %.not13006, label %1366, label %1389

1366:                                             ; preds = %.loopexit13341
  %1367 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1168)
  %1368 = zext i32 %1367 to i64
  %1369 = add nuw nsw i64 %1368, 28
  %1370 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1369)
  %1371 = zext i32 %1370 to i64
  %1372 = add nuw nsw i64 %1371, 72
  %1373 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1372)
  %1374 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1315)
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %1150, i32 noundef 770)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1153, i32 noundef 57782)
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %1169, i32 noundef 1283)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1170, i32 noundef 61497)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1171, i64 noundef %1374)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1151, i32 noundef %1172)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1173, i32 noundef %1152)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1174, i64 noundef %1374)
  %1375 = trunc i64 %1374 to i32
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3AWarning0x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef nonnull %0, i32 noundef %1373, i32 noundef 1, i32 noundef %1375, i32 noundef %1175, i32 noundef %1155, i32 noundef 4, i32 noundef 0)
  %1376 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1168)
  %1377 = zext i32 %1376 to i64
  %1378 = add nuw nsw i64 %1377, 28
  %1379 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1378)
  %1380 = zext i32 %1379 to i64
  %1381 = add nuw nsw i64 %1380, 72
  %1382 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1381)
  %1383 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1167)
  %1384 = zext i32 %1383 to i64
  %1385 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1384)
  %1386 = zext i32 %1385 to i64
  %1387 = add nuw nsw i64 %1386, 4
  %1388 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1387)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1151, i32 noundef 58340)
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %1150, i32 noundef 259)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1176, i64 noundef %1388)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1170, i64 noundef %1388)
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef nonnull %0, i32 noundef %1382, i32 noundef 3, i32 noundef %1177, i32 noundef %1155, i32 noundef 0)
  br label %1389

1389:                                             ; preds = %1366, %.loopexit13341
  %1390 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %1157)
  %1391 = icmp sgt i32 %1390, -1
  br i1 %1391, label %1394, label %1392

1392:                                             ; preds = %1389
  %1393 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1156)
  tail call void @w2c_hermes_dlfree(ptr noundef nonnull %0, i32 noundef %1393) #6
  br label %1394

1394:                                             ; preds = %1249, %1389, %1392, %1250, %1183, %1191
  %.212617 = phi i32 [ %.112616, %1183 ], [ %1192, %1191 ], [ %.112616, %1250 ], [ %.112616, %1392 ], [ %.112616, %1389 ], [ %.112616, %1249 ]
  %.312603 = phi i32 [ %.212602, %1183 ], [ %.212602, %1191 ], [ %.212602, %1250 ], [ %.212602, %1392 ], [ %.212602, %1389 ], [ %.1012501, %1249 ]
  %1395 = add nuw nsw i64 %1184, 4
  %1396 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1395)
  %.not13007 = icmp eq i32 %1396, %1143
  br i1 %.not13007, label %1397, label %1183

1397:                                             ; preds = %1394
  %.not13008 = icmp eq i32 %.312603, 0
  br i1 %.not13008, label %1409, label %1398

1398:                                             ; preds = %1397
  %1399 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1141)
  %.not13009 = icmp eq i32 %.312603, %1399
  %.pre13507 = zext i32 %.312603 to i64
  %.pre13509 = add nuw nsw i64 %.pre13507, 32
  br i1 %.not13009, label %._crit_edge13489, label %1400

1400:                                             ; preds = %1398
  %1401 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre13509)
  %1402 = zext i32 %1401 to i64
  %1403 = add nuw nsw i64 %1402, 8
  %1404 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1403)
  %1405 = add i32 %1404, -34
  %1406 = icmp ult i32 %1405, -4
  br i1 %1406, label %1409, label %._crit_edge13489

._crit_edge13489:                                 ; preds = %1398, %1400
  %1407 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre13509)
  %1408 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1407, i32 noundef 0)
  br label %1409

1409:                                             ; preds = %1397, %1400, %1128, %._crit_edge13489
  %.312618 = phi i32 [ 0, %1128 ], [ %.212617, %1400 ], [ %.212617, %._crit_edge13489 ], [ %.212617, %1397 ]
  %.412604 = phi i32 [ 0, %1128 ], [ %.312603, %1400 ], [ %.312603, %._crit_edge13489 ], [ 0, %1397 ]
  %.012572 = phi i32 [ 0, %1128 ], [ 0, %1400 ], [ %1408, %._crit_edge13489 ], [ 0, %1397 ]
  %1410 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1132)
  %1411 = add i32 %1410, %.312618
  %1412 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocObjectInst0x28unsigned0x20int0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1411, i32 noundef %.012572) #6
  %1413 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1141)
  %1414 = icmp eq i32 %1413, %1143
  br i1 %1414, label %.loopexit13339, label %1415

1415:                                             ; preds = %1409
  %1416 = add i32 %1412, 8
  %.not13010 = icmp eq i32 %1412, 0
  %1417 = select i1 %.not13010, i32 0, i32 %1416
  %1418 = add nuw nsw i64 %1131, 192
  %1419 = add nuw nsw i64 %1131, 140
  %1420 = add nuw nsw i64 %1131, 196
  %1421 = add i32 %1129, -128
  %1422 = add nuw nsw i64 %1131, 136
  %1423 = add nuw nsw i64 %1131, 48
  %1424 = add i32 %1129, -272
  %1425 = zext i32 %20 to i64
  %1426 = add nuw nsw i64 %1131, 228
  %1427 = add i32 %1129, -100
  %1428 = add i32 %1129, -32
  %1429 = add nuw nsw i64 %1131, 124
  %1430 = add nuw nsw i64 %1131, 120
  %1431 = add nuw nsw i64 %1131, 40
  %1432 = add i32 %1129, -280
  %1433 = add nuw nsw i64 %1131, 100
  %1434 = add nuw nsw i64 %1131, 96
  %1435 = add nuw nsw i64 %1131, 32
  %1436 = add i32 %1129, -288
  %1437 = add nuw nsw i64 %1131, 187
  %1438 = add i32 %1129, -144
  %1439 = add nuw nsw i64 %1131, 184
  %1440 = add nuw nsw i64 %1131, 176
  %1441 = add nuw nsw i64 %1131, 180
  %1442 = add nuw nsw i64 %1131, 200
  %1443 = add nuw nsw i64 %1131, 203
  %1444 = add nuw nsw i64 %1131, 112
  %1445 = add nuw nsw i64 %1131, 116
  %1446 = add nuw nsw i64 %1131, 24
  %1447 = add i32 %1129, -296
  %1448 = add nuw nsw i64 %1131, 104
  %1449 = add nuw nsw i64 %1131, 108
  %1450 = add nuw nsw i64 %1131, 16
  %1451 = add i32 %1129, -304
  %.not13038 = icmp eq i32 %.012572, 0
  %1452 = zext i32 %.412604 to i64
  %1453 = add nuw nsw i64 %1452, 32
  %1454 = add nuw nsw i64 %1425, 8
  %1455 = add nuw nsw i64 %1131, 132
  %1456 = add nuw nsw i64 %1131, 128
  %1457 = add nuw nsw i64 %1131, 8
  %1458 = add i32 %1129, -312
  %1459 = add nuw nsw i64 %1425, 4
  br label %1460

1460:                                             ; preds = %1703, %1415
  %.912654 = phi i32 [ 0, %1415 ], [ %.1212657, %1703 ]
  %.112590 = phi i32 [ 0, %1415 ], [ %.212591, %1703 ]
  %.012580 = phi i32 [ 0, %1415 ], [ %.212582, %1703 ]
  %.1112502 = phi i32 [ %1413, %1415 ], [ %1705, %1703 ]
  %.not13011 = icmp eq i32 %.1112502, 0
  br i1 %.not13011, label %._crit_edge13491, label %1461

1461:                                             ; preds = %1460
  %1462 = zext i32 %.1112502 to i64
  %1463 = add nuw nsw i64 %1462, 8
  %1464 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1463)
  %.not13012 = icmp eq i32 %1464, 41
  br i1 %.not13012, label %1465, label %._crit_edge13491

1465:                                             ; preds = %1461
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1418, i32 noundef %1417)
  %1466 = add nuw nsw i64 %1462, 28
  %1467 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1466)
  %1468 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1467, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1419, i32 noundef 2)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1420, i32 noundef %1468)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1422, i32 noundef %1421)
  %1469 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1422)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1423, i64 noundef %1469)
  %1470 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %0, i32 noundef %1, i32 noundef 44, i32 noundef %1424)
  br label %1703

._crit_edge13491:                                 ; preds = %1460, %1461
  %.pre-phi13502 = phi i64 [ %1462, %1461 ], [ 0, %1460 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1138, i32 noundef 0)
  %1471 = add nuw nsw i64 %.pre-phi13502, 28
  %1472 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1471)
  %1473 = add nuw nsw i64 %.pre-phi13502, 40
  %1474 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1473)
  %.not13013 = icmp eq i32 %1474, 0
  br i1 %.not13013, label %1497, label %1475

1475:                                             ; preds = %._crit_edge13491
  %1476 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1472, i32 noundef 0)
  %1477 = add nuw nsw i64 %.pre-phi13502, 32
  %1478 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1477)
  %1479 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1478, i32 noundef 0)
  %1480 = add nuw nsw i64 %.pre-phi13502, 36
  %1481 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1480)
  %1482 = zext i32 %1481 to i64
  %1483 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1482)
  %1484 = and i64 %1483, -4294967296
  %.not13040 = icmp eq i64 %1484, 12884901888
  br i1 %.not13040, label %1485, label %1496

1485:                                             ; preds = %1475
  %1486 = trunc i64 %1483 to i32
  %1487 = tail call i32 @w2c_hermes_memcmp(ptr noundef %0, i32 noundef %1486, i32 noundef 29638, i32 noundef 3) #6
  %.not13041 = icmp eq i32 %1487, 0
  br i1 %.not13041, label %1488, label %1491

1488:                                             ; preds = %1485
  %1489 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1425)
  %1490 = add i32 %1489, 268
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreGetterSetterInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1479, i32 noundef %1490, i32 noundef %1417, i32 noundef %1476)
  br label %1703

1491:                                             ; preds = %1485
  %1492 = tail call i32 @w2c_hermes_memcmp(ptr noundef %0, i32 noundef %1486, i32 noundef 28913, i32 noundef 3) #6
  %.not13042 = icmp eq i32 %1492, 0
  br i1 %.not13042, label %1493, label %1496

1493:                                             ; preds = %1491
  %1494 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1425)
  %1495 = add i32 %1494, 268
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreGetterSetterInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1495, i32 noundef %1479, i32 noundef %1417, i32 noundef %1476)
  br label %1703

1496:                                             ; preds = %1491, %1475
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1479, i32 noundef %1417, i32 noundef %1476)
  br label %1703

1497:                                             ; preds = %._crit_edge13491
  %1498 = zext i32 %1472 to i64
  %1499 = add nuw nsw i64 %1498, 8
  %1500 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1499)
  %.not13014 = icmp ne i32 %1472, 0
  %.not13015 = icmp eq i32 %1500, 32
  %or.cond13280 = select i1 %.not13014, i1 %.not13015, i1 false
  br i1 %or.cond13280, label %1501, label %1508

1501:                                             ; preds = %1497
  %1502 = add nuw nsw i64 %1498, 28
  %1503 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1502)
  %1504 = zext i32 %1503 to i64
  %1505 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1504)
  %1506 = add nuw nsw i64 %1504, 4
  %1507 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1506)
  br label %1534

1508:                                             ; preds = %1497
  %.not13016 = icmp eq i32 %1500, 62
  %or.cond13282 = select i1 %.not13014, i1 %.not13016, i1 false
  br i1 %or.cond13282, label %1509, label %1516

1509:                                             ; preds = %1508
  %1510 = add nuw nsw i64 %1498, 28
  %1511 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1510)
  %1512 = zext i32 %1511 to i64
  %1513 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1512)
  %1514 = add nuw nsw i64 %1512, 4
  %1515 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1514)
  br label %1534

1516:                                             ; preds = %1508
  %.not13017 = icmp eq i32 %1500, 33
  %or.cond13284 = select i1 %.not13014, i1 %.not13017, i1 false
  br i1 %or.cond13284, label %1517, label %1534

1517:                                             ; preds = %1516
  %1518 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1426)
  %1519 = icmp ult i32 %1518, 32
  br i1 %1519, label %1520, label %1523

1520:                                             ; preds = %1517
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %1427, i32 noundef %1139, i32 noundef 32, i32 noundef 1) #6
  %1521 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1138)
  %1522 = icmp eq i32 %1521, 32
  br i1 %1522, label %1528, label %1523

1523:                                             ; preds = %1520, %1517
  %.1012655 = phi i32 [ %1521, %1520 ], [ 0, %1517 ]
  %1524 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1140)
  %1525 = add i32 %1524, %.1012655
  %1526 = sub i32 32, %.1012655
  %1527 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %1525, i32 noundef 0, i32 noundef %1526) #6
  br label %1528

1528:                                             ; preds = %1520, %1523
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1138, i32 noundef 32)
  %1529 = add nuw nsw i64 %1498, 32
  %1530 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %1529)
  %1531 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1140)
  %1532 = tail call i32 @w2c_hermes_hermes0x3A0x3AnumberToString0x28double0x2C0x20char0x2A0x2C0x20unsigned0x20long0x29(ptr noundef %0, double noundef %1530, i32 noundef %1531) #6
  %1533 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1140)
  br label %1534

1534:                                             ; preds = %1516, %1528, %1509, %1501
  %.1112656 = phi i32 [ %.912654, %1516 ], [ %1532, %1528 ], [ %1515, %1509 ], [ %1507, %1501 ]
  %.112581 = phi i32 [ %.012580, %1516 ], [ %1533, %1528 ], [ %1513, %1509 ], [ %1505, %1501 ]
  %1535 = icmp eq i32 %.1112502, %.412604
  br i1 %1535, label %1536, label %1550

1536:                                             ; preds = %1534
  br i1 %.not13038, label %1537, label %1703

1537:                                             ; preds = %1536
  %1538 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1453)
  %1539 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1538, i32 noundef 0)
  %1540 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1454)
  %1541 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %10)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %10, i32 noundef 0)
  %1542 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1471)
  %1543 = zext i32 %1542 to i64
  %1544 = add nuw nsw i64 %1543, 24
  %1545 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1544)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %10, i32 noundef %1545)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1455, i32 noundef 2)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1420, i32 noundef %1539)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1418, i32 noundef %1417)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1456, i32 noundef %1421)
  %1546 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1456)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1457, i64 noundef %1546)
  %1547 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %0, i32 noundef %1, i32 noundef 37, i32 noundef %1458)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1454, i32 noundef %1540)
  %1548 = add i32 %1540, 36
  %.not13039 = icmp eq i32 %1540, 0
  %1549 = select i1 %.not13039, i32 0, i32 %1548
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1459, i32 noundef %1549)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %10, i32 noundef %1541)
  br label %1703

1550:                                             ; preds = %1534
  %1551 = zext i32 %.112581 to i64
  %1552 = zext i32 %.1112656 to i64
  %1553 = shl nuw i64 %1552, 32
  %1554 = or disjoint i64 %1553, %1551
  %1555 = tail call i32 @w2c_hermes_llvh0x3A0x3AStringMap0x3Chermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenObjectExpr0x28hermes0x3A0x3AESTree0x3A0x3AObjectExpressionNode0x2A0x290x3A0x3APropertyValue0x2C0x20llvh0x3A0x3AMallocAllocator0x3E0x3A0x3Aoperator0x5B0x5D0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %1428, i64 noundef %1554) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1429, i32 noundef %.1112656)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1430, i32 noundef %.112581)
  %1556 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1430)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1431, i64 noundef %1556)
  %1557 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1432)
  %1558 = add nuw nsw i64 %.pre-phi13502, 36
  %1559 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1558)
  %1560 = zext i32 %1559 to i64
  %1561 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1560)
  %1562 = and i64 %1561, -4294967296
  %.not13018 = icmp eq i64 %1562, 12884901888
  br i1 %.not13018, label %1563, label %1673

1563:                                             ; preds = %1550
  %1564 = trunc i64 %1561 to i32
  %1565 = tail call i32 @w2c_hermes_memcmp(ptr noundef %0, i32 noundef %1564, i32 noundef 29638, i32 noundef 3) #6
  %.not13019 = icmp eq i32 %1565, 0
  br i1 %.not13019, label %1568, label %1566

1566:                                             ; preds = %1563
  %1567 = tail call i32 @w2c_hermes_memcmp(ptr noundef %0, i32 noundef %1564, i32 noundef 28913, i32 noundef 3) #6
  %.not13020 = icmp eq i32 %1567, 0
  br i1 %.not13020, label %1568, label %1673

1568:                                             ; preds = %1566, %1563
  %1569 = zext i32 %1555 to i64
  %1570 = add nuw nsw i64 %1569, 4
  %1571 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1570)
  %1572 = icmp eq i32 %1571, 2
  br i1 %1572, label %1703, label %1573

1573:                                             ; preds = %1568
  %1574 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1569)
  %.not13021 = icmp eq i32 %1574, 0
  br i1 %.not13021, label %1575, label %1582

1575:                                             ; preds = %1573
  %.not13032 = icmp eq i32 %1571, 0
  br i1 %.not13032, label %1576, label %1703

1576:                                             ; preds = %1575
  %1577 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1425)
  %1578 = add i32 %1577, 296
  %1579 = and i32 %.112590, 255
  %.not13033 = icmp eq i32 %1579, 0
  br i1 %.not13033, label %1581, label %1580

1580:                                             ; preds = %1576
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1578, i32 noundef %1417, i32 noundef %1557)
  br label %1702

1581:                                             ; preds = %1576
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreNewOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1578, i32 noundef %1417, i32 noundef %1557)
  br label %1702

1582:                                             ; preds = %1573
  %1583 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1425)
  %1584 = add i32 %1583, 268
  %1585 = add nuw nsw i64 %1569, 12
  %1586 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1585)
  %.not13022 = icmp eq i32 %1586, 0
  br i1 %.not13022, label %1628, label %1587

1587:                                             ; preds = %1582
  %.not13023 = icmp eq i32 %.112581, 0
  br i1 %.not13023, label %1588, label %1589

1588:                                             ; preds = %1587
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1439, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1440, i64 noundef 0)
  br label %1605

1589:                                             ; preds = %1587
  %1590 = icmp ugt i32 %.1112656, 2147483631
  br i1 %1590, label %1706, label %1591

1591:                                             ; preds = %1589
  %1592 = icmp ugt i32 %.1112656, 10
  br i1 %1592, label %1593, label %1599

1593:                                             ; preds = %1591
  %1594 = or i32 %.1112656, 15
  %1595 = add nuw i32 %1594, 1
  %1596 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1595) #6
  %1597 = or i32 %1595, -2147483648
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1439, i32 noundef %1597)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1440, i32 noundef %1596)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1441, i32 noundef %.1112656)
  %1598 = add i32 %1596, %.1112656
  br label %1601

1599:                                             ; preds = %1591
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1437, i32 noundef %.1112656)
  %1600 = add i32 %.1112656, %1438
  %.not13024 = icmp eq i32 %.1112656, 0
  br i1 %.not13024, label %1603, label %1601

1601:                                             ; preds = %1599, %1593
  %.1012634 = phi i32 [ %1596, %1593 ], [ %1438, %1599 ]
  %.012574 = phi i32 [ %1598, %1593 ], [ %1600, %1599 ]
  %1602 = tail call i32 @w2c_hermes_memmove(ptr noundef %0, i32 noundef %.1012634, i32 noundef %.112581, i32 noundef %.1112656) #6
  br label %1603

1603:                                             ; preds = %1599, %1601
  %.112575 = phi i32 [ %.012574, %1601 ], [ %1600, %1599 ]
  %1604 = zext i32 %.112575 to i64
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1604, i32 noundef 0)
  br label %1605

1605:                                             ; preds = %1603, %1588
  %1606 = tail call i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3A0x3Ainsert0x28unsigned0x20long0x2C0x20char0x20const0x2A0x29(ptr noundef %0, i32 noundef %1438, i32 noundef 61994) #6
  %1607 = zext i32 %1606 to i64
  %1608 = add nuw nsw i64 %1607, 8
  %1609 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1608)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1442, i32 noundef %1609)
  %1610 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1607)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1418, i64 noundef %1610)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1607, i64 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1608, i32 noundef 0)
  %1611 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1418)
  %1612 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1443)
  %sext.mask13025 = and i32 %1612, 128
  %.not13026 = icmp eq i32 %sext.mask13025, 0
  %1613 = select i1 %.not13026, i32 %1421, i32 %1611
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1444, i32 noundef %1613)
  %1614 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1420)
  %1615 = select i1 %.not13026, i32 %1612, i32 %1614
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1445, i32 noundef %1615)
  %1616 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1444)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1446, i64 noundef %1616)
  %1617 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateIdentifier0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1447) #6
  %1618 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1586, i32 noundef %1617)
  %1619 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %1443)
  %1620 = icmp slt i32 %1619, 0
  br i1 %1620, label %1621, label %1623

1621:                                             ; preds = %1605
  %1622 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1418)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1622) #6
  br label %1623

1623:                                             ; preds = %1621, %1605
  %1624 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %1437)
  %1625 = icmp sgt i32 %1624, -1
  br i1 %1625, label %1628, label %1626

1626:                                             ; preds = %1623
  %1627 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1440)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1627) #6
  br label %1628

1628:                                             ; preds = %1623, %1582, %1626
  %.1112635 = phi i32 [ %1584, %1582 ], [ %1618, %1623 ], [ %1618, %1626 ]
  %1629 = add nuw nsw i64 %1569, 16
  %1630 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1629)
  %.not13027 = icmp eq i32 %1630, 0
  br i1 %.not13027, label %1672, label %1631

1631:                                             ; preds = %1628
  %.not13028 = icmp eq i32 %.112581, 0
  br i1 %.not13028, label %1632, label %1633

1632:                                             ; preds = %1631
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1439, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1440, i64 noundef 0)
  br label %1649

1633:                                             ; preds = %1631
  %1634 = icmp ugt i32 %.1112656, 2147483631
  br i1 %1634, label %1706, label %1635

1635:                                             ; preds = %1633
  %1636 = icmp ugt i32 %.1112656, 10
  br i1 %1636, label %1637, label %1643

1637:                                             ; preds = %1635
  %1638 = or i32 %.1112656, 15
  %1639 = add nuw i32 %1638, 1
  %1640 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1639) #6
  %1641 = or i32 %1639, -2147483648
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1439, i32 noundef %1641)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1440, i32 noundef %1640)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1441, i32 noundef %.1112656)
  %1642 = add i32 %1640, %.1112656
  br label %1645

1643:                                             ; preds = %1635
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1437, i32 noundef %.1112656)
  %1644 = add i32 %.1112656, %1438
  %.not13029 = icmp eq i32 %.1112656, 0
  br i1 %.not13029, label %1647, label %1645

1645:                                             ; preds = %1643, %1637
  %.412619 = phi i32 [ %1640, %1637 ], [ %1438, %1643 ]
  %.212576 = phi i32 [ %1642, %1637 ], [ %1644, %1643 ]
  %1646 = tail call i32 @w2c_hermes_memmove(ptr noundef %0, i32 noundef %.412619, i32 noundef %.112581, i32 noundef %.1112656) #6
  br label %1647

1647:                                             ; preds = %1643, %1645
  %.312577 = phi i32 [ %.212576, %1645 ], [ %1644, %1643 ]
  %1648 = zext i32 %.312577 to i64
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1648, i32 noundef 0)
  br label %1649

1649:                                             ; preds = %1647, %1632
  %1650 = tail call i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3A0x3Ainsert0x28unsigned0x20long0x2C0x20char0x20const0x2A0x29(ptr noundef %0, i32 noundef %1438, i32 noundef 61989) #6
  %1651 = zext i32 %1650 to i64
  %1652 = add nuw nsw i64 %1651, 8
  %1653 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1652)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1442, i32 noundef %1653)
  %1654 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1651)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1418, i64 noundef %1654)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1651, i64 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1652, i32 noundef 0)
  %1655 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1418)
  %1656 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1443)
  %sext.mask13030 = and i32 %1656, 128
  %.not13031 = icmp eq i32 %sext.mask13030, 0
  %1657 = select i1 %.not13031, i32 %1421, i32 %1655
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1448, i32 noundef %1657)
  %1658 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1420)
  %1659 = select i1 %.not13031, i32 %1656, i32 %1658
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1449, i32 noundef %1659)
  %1660 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1448)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1450, i64 noundef %1660)
  %1661 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateIdentifier0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1451) #6
  %1662 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1630, i32 noundef %1661)
  %1663 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %1443)
  %1664 = icmp slt i32 %1663, 0
  br i1 %1664, label %1665, label %1667

1665:                                             ; preds = %1649
  %1666 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1418)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1666) #6
  br label %1667

1667:                                             ; preds = %1665, %1649
  %1668 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %1437)
  %1669 = icmp sgt i32 %1668, -1
  br i1 %1669, label %1672, label %1670

1670:                                             ; preds = %1667
  %1671 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1440)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1671) #6
  br label %1672

1672:                                             ; preds = %1667, %1628, %1670
  %.512620 = phi i32 [ %1584, %1628 ], [ %1662, %1667 ], [ %1662, %1670 ]
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreGetterSetterInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %.1112635, i32 noundef %.512620, i32 noundef %1417, i32 noundef %1557)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1570, i32 noundef 2)
  br label %1703

1673:                                             ; preds = %1566, %1550
  %1674 = add nuw nsw i64 %.pre-phi13502, 32
  %1675 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1674)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1433, i32 noundef %.1112656)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1434, i32 noundef %.112581)
  %1676 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1434)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1435, i64 noundef %1676)
  %1677 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateIdentifier0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1436) #6
  %1678 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1675, i32 noundef %1677)
  %1679 = tail call i32 @w2c_hermes_llvh0x3A0x3AStringMap0x3Chermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenObjectExpr0x28hermes0x3A0x3AESTree0x3A0x3AObjectExpressionNode0x2A0x290x3A0x3APropertyValue0x2C0x20llvh0x3A0x3AMallocAllocator0x3E0x3A0x3Aoperator0x5B0x5D0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %1428, i64 noundef %1554) #6
  %1680 = zext i32 %1679 to i64
  %1681 = add nuw nsw i64 %1680, 8
  %1682 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1681)
  %1683 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1674)
  %1684 = icmp eq i32 %1682, %1683
  br i1 %1684, label %1685, label %1692

1685:                                             ; preds = %1673
  %1686 = and i32 %.112590, 255
  %.not13036 = icmp eq i32 %1686, 0
  %1687 = zext i32 %1555 to i64
  %1688 = add nuw nsw i64 %1687, 4
  br i1 %.not13036, label %1689, label %._crit_edge13490

1689:                                             ; preds = %1685
  %1690 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1688)
  %.not13037 = icmp eq i32 %1690, 1
  br i1 %.not13037, label %._crit_edge13490, label %1691

._crit_edge13490:                                 ; preds = %1685, %1689
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1678, i32 noundef %1417, i32 noundef %1557)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1688, i32 noundef 2)
  br label %1703

1691:                                             ; preds = %1689
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreNewOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1678, i32 noundef %1417, i32 noundef %1557)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1688, i32 noundef 2)
  br label %1703

1692:                                             ; preds = %1673
  %1693 = zext i32 %1555 to i64
  %1694 = add nuw nsw i64 %1693, 4
  %1695 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1694)
  %.not13034 = icmp eq i32 %1695, 0
  br i1 %.not13034, label %1696, label %1703

1696:                                             ; preds = %1692
  %1697 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1425)
  %1698 = add i32 %1697, 296
  %1699 = and i32 %.112590, 255
  %.not13035 = icmp eq i32 %1699, 0
  br i1 %.not13035, label %1701, label %1700

1700:                                             ; preds = %1696
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1698, i32 noundef %1417, i32 noundef %1557)
  br label %1702

1701:                                             ; preds = %1696
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreNewOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1698, i32 noundef %1417, i32 noundef %1557)
  br label %1702

1702:                                             ; preds = %1701, %1700, %1581, %1580
  %.pre-phi13478 = phi i64 [ %1694, %1701 ], [ %1694, %1700 ], [ %1570, %1581 ], [ %1570, %1580 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi13478, i32 noundef 1)
  br label %1703

1703:                                             ; preds = %1692, %1575, %1568, %1536, %1702, %1691, %._crit_edge13490, %1672, %1537, %1496, %1493, %1488, %1465
  %.pre-phi13476 = phi i64 [ %.pre-phi13502, %1692 ], [ %.pre-phi13502, %1575 ], [ %.pre-phi13502, %1568 ], [ %.pre-phi13502, %1536 ], [ %.pre-phi13502, %1702 ], [ %.pre-phi13502, %1691 ], [ %.pre-phi13502, %._crit_edge13490 ], [ %.pre-phi13502, %1672 ], [ %.pre-phi13502, %1537 ], [ %.pre-phi13502, %1496 ], [ %.pre-phi13502, %1493 ], [ %.pre-phi13502, %1488 ], [ %1462, %1465 ]
  %.1212657 = phi i32 [ %.1112656, %1692 ], [ %.1112656, %1575 ], [ %.1112656, %1568 ], [ %.1112656, %1536 ], [ %.1112656, %1702 ], [ %.1112656, %1691 ], [ %.1112656, %._crit_edge13490 ], [ %.1112656, %1672 ], [ %.1112656, %1537 ], [ %.912654, %1496 ], [ %.912654, %1493 ], [ %.912654, %1488 ], [ %.912654, %1465 ]
  %.212591 = phi i32 [ %.112590, %1692 ], [ %.112590, %1575 ], [ %.112590, %1568 ], [ %.112590, %1536 ], [ %.112590, %1702 ], [ %.112590, %1691 ], [ %.112590, %._crit_edge13490 ], [ %.112590, %1672 ], [ %.112590, %1537 ], [ 1, %1496 ], [ 1, %1493 ], [ 1, %1488 ], [ 1, %1465 ]
  %.212582 = phi i32 [ %.112581, %1692 ], [ %.112581, %1575 ], [ %.112581, %1568 ], [ %.112581, %1536 ], [ %.112581, %1702 ], [ %.112581, %1691 ], [ %.112581, %._crit_edge13490 ], [ %.112581, %1672 ], [ %.112581, %1537 ], [ %.012580, %1496 ], [ %.012580, %1493 ], [ %.012580, %1488 ], [ %.012580, %1465 ]
  %1704 = add nuw nsw i64 %.pre-phi13476, 4
  %1705 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1704)
  %.not13043 = icmp eq i32 %1705, %1143
  br i1 %.not13043, label %.loopexit13339, label %1460

1706:                                             ; preds = %1633, %1589
  tail call void @w2c_hermes_abort(ptr noundef %0) #6
  tail call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

.loopexit13339:                                   ; preds = %1703, %1409
  %1707 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1140)
  %.not13044 = icmp eq i32 %1139, %1707
  br i1 %.not13044, label %1709, label %1708

1708:                                             ; preds = %.loopexit13339
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1707) #6
  br label %1709

1709:                                             ; preds = %1708, %.loopexit13339
  %1710 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1135)
  %.not13045 = icmp eq i32 %1710, 0
  br i1 %.not13045, label %.loopexit13338, label %1711

1711:                                             ; preds = %1709
  %1712 = add nuw nsw i64 %1131, 268
  %1713 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1712)
  %.not13046 = icmp eq i32 %1713, 0
  br i1 %.not13046, label %.loopexit13338, label %.preheader13337

.preheader13337:                                  ; preds = %1711, %1720
  %.1212503 = phi i32 [ %1721, %1720 ], [ 0, %1711 ]
  %1714 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1136)
  %1715 = shl i32 %.1212503, 2
  %1716 = add i32 %1714, %1715
  %1717 = zext i32 %1716 to i64
  %1718 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1717)
  switch i32 %1718, label %1719 [
    i32 -4, label %1720
    i32 0, label %1720
  ]

1719:                                             ; preds = %.preheader13337
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1718) #6
  br label %1720

1720:                                             ; preds = %.preheader13337, %.preheader13337, %1719
  %1721 = add nuw i32 %.1212503, 1
  %.not13047 = icmp eq i32 %1721, %1713
  br i1 %.not13047, label %.loopexit13338, label %.preheader13337

.loopexit13338:                                   ; preds = %1720, %1711, %1709
  %1722 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1136)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1722) #6
  %1723 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1132)
  %.not13048 = icmp eq i32 %1723, 0
  br i1 %.not13048, label %.loopexit13336, label %1724

1724:                                             ; preds = %.loopexit13338
  %1725 = add nuw nsw i64 %1131, 292
  %1726 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1725)
  %.not13049 = icmp eq i32 %1726, 0
  br i1 %.not13049, label %.loopexit13336, label %.preheader13335

.preheader13335:                                  ; preds = %1724, %1733
  %.1312504 = phi i32 [ %1734, %1733 ], [ 0, %1724 ]
  %1727 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1133)
  %1728 = shl i32 %.1312504, 2
  %1729 = add i32 %1727, %1728
  %1730 = zext i32 %1729 to i64
  %1731 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1730)
  switch i32 %1731, label %1732 [
    i32 -4, label %1733
    i32 0, label %1733
  ]

1732:                                             ; preds = %.preheader13335
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1731) #6
  br label %1733

1733:                                             ; preds = %.preheader13335, %.preheader13335, %1732
  %1734 = add nuw i32 %.1312504, 1
  %.not13050 = icmp eq i32 %1734, %1726
  br i1 %.not13050, label %.loopexit13336, label %.preheader13335

.loopexit13336:                                   ; preds = %1733, %1724, %.loopexit13338
  %1735 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1133)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1735) #6
  store i32 %1129, ptr %5, align 8, !tbaa !5
  %1736 = add i32 %1412, 8
  %.not13051 = icmp eq i32 %1412, 0
  %1737 = select i1 %.not13051, i32 0, i32 %1736
  br label %.loopexit13356

1738:                                             ; preds = %1127
  %.not13052 = icmp eq i32 %16, 57
  %or.cond13286 = select i1 %.not, i1 %.not13052, i1 false
  br i1 %or.cond13286, label %1739, label %1795

1739:                                             ; preds = %1738
  %1740 = load i32, ptr %5, align 8, !tbaa !5
  %1741 = add i32 %1740, -16
  store i32 %1741, ptr %5, align 8, !tbaa !5
  %1742 = add nuw nsw i64 %12, 36
  %1743 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1742)
  %1744 = zext i32 %1743 to i64
  %1745 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1744)
  %1746 = and i64 %1745, -4294967296
  %.not13053 = icmp eq i64 %1746, 8589934592
  br i1 %.not13053, label %1747, label %1753

1747:                                             ; preds = %1739
  %1748 = and i64 %1745, 4294967295
  %1749 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %1748)
  %1750 = icmp eq i32 %1749, 9766
  br i1 %1750, label %1754, label %1751

1751:                                             ; preds = %1747
  %1752 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %1748)
  %.not13054 = icmp eq i32 %1752, 31868
  br i1 %.not13054, label %1754, label %1753

1753:                                             ; preds = %1751, %1739
  br label %1754

1754:                                             ; preds = %1751, %1747, %1753
  %.912550 = phi i32 [ 2, %1753 ], [ 0, %1747 ], [ 1, %1751 ]
  %1755 = add nuw nsw i64 %9, 40
  %1756 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1755)
  %1757 = zext i32 %1741 to i64
  %1758 = add nuw nsw i64 %1757, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1758, i32 noundef 7)
  %1759 = add nuw nsw i64 %1757, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1759, i32 noundef 44242)
  %1760 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1759)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1757, i64 noundef %1760)
  %1761 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AgenAnonymousLabelName0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %1756, i32 noundef %1741)
  %1762 = zext i32 %20 to i64
  %1763 = add nuw nsw i64 %1762, 8
  %1764 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1763)
  %1765 = zext i32 %1764 to i64
  %1766 = add nuw nsw i64 %1765, 44
  %1767 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1766)
  %1768 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1761) #6
  %1769 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1767) #6
  %1770 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1767) #6
  %1771 = add nuw nsw i64 %12, 28
  %1772 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1771)
  %1773 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1772, i32 noundef 0)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1773, i32 noundef %1768)
  switch i32 %.912550, label %default.unreachable13515 [
    i32 0, label %1774
    i32 1, label %1775
    i32 2, label %1776
  ]

1774:                                             ; preds = %1754
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1773, i32 noundef %1769, i32 noundef %1770) #6
  br label %1782

1775:                                             ; preds = %1754
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1773, i32 noundef %1770, i32 noundef %1769) #6
  br label %1782

1776:                                             ; preds = %1754
  %1777 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1762)
  %1778 = add i32 %1777, 296
  %1779 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1773, i32 noundef %1778, i32 noundef 1) #6
  %1780 = add i32 %1779, 8
  %.not13055 = icmp eq i32 %1779, 0
  %1781 = select i1 %.not13055, i32 0, i32 %1780
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1781, i32 noundef %1769, i32 noundef %1770) #6
  br label %1782

default.unreachable13515:                         ; preds = %1754
  unreachable

1782:                                             ; preds = %1776, %1775, %1774
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1763, i32 noundef %1769)
  %1783 = add i32 %1769, 36
  %.not13056 = icmp eq i32 %1769, 0
  %1784 = select i1 %.not13056, i32 0, i32 %1783
  %1785 = add nuw nsw i64 %1762, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1785, i32 noundef %1784)
  %1786 = add nuw nsw i64 %12, 32
  %1787 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1786)
  %1788 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1787, i32 noundef 0)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1788, i32 noundef %1768)
  %1789 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1770) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1763, i32 noundef %1770)
  %1790 = add i32 %1770, 36
  %.not13057 = icmp eq i32 %1770, 0
  %1791 = select i1 %.not13057, i32 0, i32 %1790
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1785, i32 noundef %1791)
  %1792 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadStackInst0x28hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1768) #6
  store i32 %1740, ptr %5, align 8, !tbaa !5
  %1793 = add i32 %1792, 8
  %.not13058 = icmp eq i32 %1792, 0
  %1794 = select i1 %.not13058, i32 0, i32 %1793
  br label %.loopexit13356

1795:                                             ; preds = %1738
  %.not13059 = icmp eq i32 %16, 59
  %or.cond13288 = select i1 %.not, i1 %.not13059, i1 false
  br i1 %or.cond13288, label %1796, label %1922

1796:                                             ; preds = %1795
  %1797 = load i32, ptr %5, align 8, !tbaa !5
  %1798 = add i32 %1797, -48
  store i32 %1798, ptr %5, align 8, !tbaa !5
  %1799 = add nuw nsw i64 %12, 36
  %1800 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1799)
  %1801 = zext i32 %1800 to i64
  %1802 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1801)
  %1803 = and i64 %1802, -4294967296
  %.not13060 = icmp eq i64 %1803, 4294967296
  br i1 %.not13060, label %1804, label %1905

1804:                                             ; preds = %1796
  %1805 = and i64 %1802, 4294967295
  %1806 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1805)
  switch i32 %1806, label %1905 [
    i32 43, label %1807
    i32 45, label %1807
  ]

1807:                                             ; preds = %1804, %1804
  %1808 = zext i32 %1798 to i64
  %1809 = add nuw nsw i64 %1808, 36
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1809, i64 noundef 4294967297)
  %1810 = add i32 %1797, -4
  %1811 = add nuw nsw i64 %1808, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1811, i32 noundef %1810)
  %1812 = add nuw nsw i64 %1808, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1812, i32 noundef %2)
  %1813 = add nuw nsw i64 %12, 28
  %1814 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1813)
  %.not13061 = icmp eq i32 %1814, 0
  br i1 %.not13061, label %.thread, label %1815

1815:                                             ; preds = %1807
  %1816 = zext i32 %1814 to i64
  %1817 = add nuw nsw i64 %1816, 8
  %1818 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1817)
  %.not13062 = icmp eq i32 %1818, 59
  br i1 %.not13062, label %.preheader13345, label %.thread

.preheader13345:                                  ; preds = %1815
  %1819 = add nuw nsw i64 %1808, 40
  %1820 = add i32 %1797, -16
  br label %1821

1821:                                             ; preds = %.preheader13345, %1845
  %.1412505 = phi i32 [ %1842, %1845 ], [ 1, %.preheader13345 ]
  %.15 = phi i32 [ %1844, %1845 ], [ %1814, %.preheader13345 ]
  %1822 = zext i32 %.15 to i64
  %1823 = add nuw nsw i64 %1822, 36
  %1824 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1823)
  %1825 = zext i32 %1824 to i64
  %1826 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1825)
  %.mask13064 = and i64 %1826, -4294967296
  %.not13063 = icmp eq i64 %.mask13064, 4294967296
  br i1 %.not13063, label %1827, label %1851

1827:                                             ; preds = %1821
  %1828 = and i64 %1826, 4294967295
  %1829 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1828)
  %.not13065 = icmp eq i32 %1829, 43
  br i1 %.not13065, label %1832, label %1830

1830:                                             ; preds = %1827
  %1831 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1828)
  %.not13066 = icmp eq i32 %1831, 45
  br i1 %.not13066, label %1832, label %1851

1832:                                             ; preds = %1830, %1827
  %1833 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1819)
  %.not13067 = icmp ugt i32 %1833, %.1412505
  br i1 %.not13067, label %1836, label %1834

1834:                                             ; preds = %1832
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %1820, i32 noundef %1810, i32 noundef 0, i32 noundef 4) #6
  %1835 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1809)
  br label %1836

1836:                                             ; preds = %1834, %1832
  %.1512506 = phi i32 [ %1835, %1834 ], [ %.1412505, %1832 ]
  %1837 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1811)
  %1838 = shl i32 %.1512506, 2
  %1839 = add i32 %1837, %1838
  %1840 = zext i32 %1839 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1840, i32 noundef %.15)
  %1841 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1809)
  %1842 = add i32 %1841, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1809, i32 noundef %1842)
  %1843 = add nuw nsw i64 %1822, 28
  %1844 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1843)
  %.not13068 = icmp eq i32 %1844, 0
  br i1 %.not13068, label %1851, label %1845

1845:                                             ; preds = %1836
  %1846 = zext i32 %1844 to i64
  %1847 = add nuw nsw i64 %1846, 8
  %1848 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1847)
  %1849 = icmp eq i32 %1848, 59
  br i1 %1849, label %1821, label %1851

.thread:                                          ; preds = %1807, %1815
  %1850 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1811)
  br label %1853

1851:                                             ; preds = %1845, %1836, %1830, %1821
  %.1612507 = phi i32 [ %.1412505, %1821 ], [ %.1412505, %1830 ], [ %1842, %1836 ], [ %1842, %1845 ]
  %1852 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1811)
  %.not13069 = icmp eq i32 %.1612507, 0
  br i1 %.not13069, label %1867, label %1853

1853:                                             ; preds = %.thread, %1851
  %1854 = phi i32 [ %1850, %.thread ], [ %1852, %1851 ]
  %.161250713325 = phi i32 [ 1, %.thread ], [ %.1612507, %1851 ]
  %1855 = shl i32 %.161250713325, 2
  %1856 = add i32 %1854, -4
  %1857 = add i32 %1856, %1855
  %.not13070 = icmp ugt i32 %1857, %1854
  br i1 %.not13070, label %.preheader13344, label %1867

.preheader13344:                                  ; preds = %1853, %.preheader13344
  %.1712508 = phi i32 [ %1863, %.preheader13344 ], [ %1857, %1853 ]
  %.16 = phi i32 [ %1862, %.preheader13344 ], [ %1854, %1853 ]
  %1858 = zext i32 %.16 to i64
  %1859 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1858)
  %1860 = zext i32 %.1712508 to i64
  %1861 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1860)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1858, i32 noundef %1861)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1860, i32 noundef %1859)
  %1862 = add i32 %.16, 4
  %1863 = add i32 %.1712508, -4
  %1864 = icmp ult i32 %1862, %1863
  br i1 %1864, label %.preheader13344, label %1865

1865:                                             ; preds = %.preheader13344
  %1866 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1811)
  br label %1867

1867:                                             ; preds = %1853, %1851, %1865
  %.17 = phi i32 [ %1852, %1851 ], [ %1854, %1853 ], [ %1866, %1865 ]
  %1868 = zext i32 %.17 to i64
  %1869 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1868)
  %1870 = zext i32 %1869 to i64
  %1871 = add nuw nsw i64 %1870, 28
  %1872 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1871)
  %1873 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1872, i32 noundef 0)
  %1874 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1811)
  %1875 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1809)
  %.not13071 = icmp eq i32 %1875, 0
  br i1 %.not13071, label %1902, label %1876

1876:                                             ; preds = %1867
  %1877 = shl i32 %1875, 2
  %1878 = add i32 %1877, %1874
  %1879 = add nuw nsw i64 %1808, 8
  %1880 = add nuw nsw i64 %1808, 24
  %1881 = add i32 %1797, -40
  br label %1882

1882:                                             ; preds = %1882, %1876
  %.1812509 = phi i32 [ %1873, %1876 ], [ %1898, %1882 ]
  %.18 = phi i32 [ %1874, %1876 ], [ %1899, %1882 ]
  %1883 = zext i32 %.18 to i64
  %1884 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1883)
  %1885 = zext i32 %1884 to i64
  %1886 = add nuw nsw i64 %1885, 32
  %1887 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1886)
  %1888 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1887, i32 noundef 0)
  %1889 = add nuw nsw i64 %1885, 24
  %1890 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1889)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %10, i32 noundef %1890)
  %1891 = add nuw nsw i64 %1885, 36
  %1892 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1891)
  %1893 = zext i32 %1892 to i64
  %1894 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1893)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1879, i64 noundef %1894)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1880, i64 noundef %1894)
  %1895 = tail call i32 @w2c_hermes_hermes0x3A0x3ABinaryOperatorInst0x3A0x3AparseOperator0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %1881) #6
  %1896 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef %0, i32 noundef %20, i32 noundef %.1812509, i32 noundef %1888, i32 noundef %1895) #6
  %1897 = add i32 %1896, 8
  %.not13072 = icmp eq i32 %1896, 0
  %1898 = select i1 %.not13072, i32 0, i32 %1897
  %1899 = add i32 %.18, 4
  %.not13073 = icmp eq i32 %1899, %1878
  br i1 %.not13073, label %1900, label %1882

1900:                                             ; preds = %1882
  %1901 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1811)
  br label %1902

1902:                                             ; preds = %1900, %1867
  %.1912510 = phi i32 [ %1898, %1900 ], [ %1873, %1867 ]
  %.19 = phi i32 [ %1901, %1900 ], [ %1874, %1867 ]
  %1903 = icmp eq i32 %.19, %1810
  br i1 %1903, label %1921, label %1904

1904:                                             ; preds = %1902
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.19) #6
  br label %1921

1905:                                             ; preds = %1804, %1796
  %1906 = add nuw nsw i64 %12, 28
  %1907 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1906)
  %1908 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1907, i32 noundef 0)
  %1909 = add nuw nsw i64 %12, 32
  %1910 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1909)
  %1911 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1910, i32 noundef 0)
  %1912 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1799)
  %1913 = zext i32 %1912 to i64
  %1914 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1913)
  %1915 = zext i32 %1798 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1915, i64 noundef %1914)
  %1916 = add nuw nsw i64 %1915, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1916, i64 noundef %1914)
  %1917 = tail call i32 @w2c_hermes_hermes0x3A0x3ABinaryOperatorInst0x3A0x3AparseOperator0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %1798) #6
  %1918 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1908, i32 noundef %1911, i32 noundef %1917) #6
  %1919 = add i32 %1918, 8
  %.not13074 = icmp eq i32 %1918, 0
  %1920 = select i1 %.not13074, i32 0, i32 %1919
  br label %1921

1921:                                             ; preds = %1902, %1905, %1904
  %.2012511 = phi i32 [ %1920, %1905 ], [ %.1912510, %1902 ], [ %.1912510, %1904 ]
  store i32 %1797, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

1922:                                             ; preds = %1795
  %.not13075 = icmp eq i32 %16, 51
  %or.cond13290 = select i1 %.not, i1 %.not13075, i1 false
  br i1 %or.cond13290, label %1923, label %2079

1923:                                             ; preds = %1922
  %1924 = load i32, ptr %5, align 8, !tbaa !5
  %1925 = add i32 %1924, -32
  store i32 %1925, ptr %5, align 8, !tbaa !5
  %1926 = add nuw nsw i64 %12, 28
  %1927 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1926)
  %1928 = zext i32 %1927 to i64
  %1929 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1928)
  %1930 = zext i32 %1925 to i64
  %1931 = add nuw nsw i64 %1930, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1931, i64 noundef %1929)
  %1932 = add nuw nsw i64 %1930, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1932, i64 noundef %1929)
  %1933 = add i32 %1924, -24
  %1934 = tail call i32 @w2c_hermes_hermes0x3A0x3AUnaryOperatorInst0x3A0x3AparseOperator0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %1933)
  %1935 = add nuw nsw i64 %12, 32
  %1936 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1935)
  switch i32 %1934, label %2025 [
    i32 0, label %1937
    i32 2, label %2014
  ]

1937:                                             ; preds = %1923
  %1938 = zext i32 %1936 to i64
  %1939 = add nuw nsw i64 %1938, 8
  %1940 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1939)
  %.not13078 = icmp ne i32 %1936, 0
  %.not13079 = icmp eq i32 %1940, 54
  %or.cond13291 = select i1 %.not13078, i1 %.not13079, i1 false
  br i1 %or.cond13291, label %1941, label %1949

1941:                                             ; preds = %1937
  %1942 = add nuw nsw i64 %1938, 28
  %1943 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1942)
  %1944 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1943, i32 noundef 0)
  %1945 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenMemberExpressionProperty0x28hermes0x3A0x3AESTree0x3A0x3AMemberExpressionLikeNode0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1936)
  %1946 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateDeletePropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %1944, i32 noundef %1945) #6
  %1947 = add i32 %1946, 8
  %.not13080 = icmp eq i32 %1946, 0
  %1948 = select i1 %.not13080, i32 0, i32 %1947
  br label %2078

1949:                                             ; preds = %1937
  %.not13081 = icmp eq i32 %1940, 55
  %or.cond13293 = select i1 %.not13078, i1 %.not13081, i1 false
  br i1 %or.cond13293, label %1950, label %1954

1950:                                             ; preds = %1949
  %1951 = add i32 %1924, -16
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalMemberExpression0x28hermes0x3A0x3AESTree0x3A0x3AOptionalMemberExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AMemberExpressionOperation0x29(ptr noundef nonnull %0, i32 noundef %1951, i32 noundef %1, i32 noundef %1936, i32 noundef 0, i32 noundef 1)
  %1952 = add nuw nsw i64 %1930, 16
  %1953 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1952)
  br label %2078

1954:                                             ; preds = %1949
  %.not13082 = icmp eq i32 %1940, 62
  %or.cond13295 = select i1 %.not13078, i1 %.not13082, i1 false
  br i1 %or.cond13295, label %1955, label %2009

1955:                                             ; preds = %1954
  %1956 = add nuw nsw i64 %9, 44
  %1957 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1956)
  %1958 = add nuw nsw i64 %1938, 28
  %1959 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1958)
  %1960 = add nuw nsw i64 %9, 56
  %1961 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1960)
  %.not13083 = icmp eq i32 %1961, 0
  br i1 %.not13083, label %.loopexit13347, label %1962

1962:                                             ; preds = %1955
  %1963 = add i32 %1961, -1
  %1964 = lshr i32 %1959, 4
  %1965 = lshr i32 %1959, 9
  %1966 = xor i32 %1964, %1965
  %1967 = and i32 %1963, %1966
  %1968 = shl nuw nsw i32 %1967, 3
  %1969 = add i32 %1968, %1957
  %1970 = zext i32 %1969 to i64
  %1971 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1970)
  %1972 = icmp eq i32 %1959, %1971
  br i1 %1972, label %.loopexit13348, label %.preheader13346

.preheader13346:                                  ; preds = %1962, %1974
  %.512605 = phi i32 [ %1976, %1974 ], [ 1, %1962 ]
  %.312592 = phi i32 [ %1977, %1974 ], [ %1967, %1962 ]
  %.312583 = phi i32 [ %1981, %1974 ], [ %1971, %1962 ]
  %1973 = icmp eq i32 %.312583, -4
  br i1 %1973, label %.loopexit13347, label %1974

1974:                                             ; preds = %.preheader13346
  %1975 = add i32 %.312592, %.512605
  %1976 = add i32 %.512605, 1
  %1977 = and i32 %1975, %1963
  %1978 = shl i32 %1977, 3
  %1979 = add i32 %1978, %1957
  %1980 = zext i32 %1979 to i64
  %1981 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1980)
  %.not13084 = icmp eq i32 %1959, %1981
  br i1 %.not13084, label %.loopexit13348, label %.preheader13346

.loopexit13347:                                   ; preds = %.preheader13346, %1955
  %1982 = shl i32 %1961, 3
  %1983 = add i32 %1982, %1957
  br label %.loopexit13348

.loopexit13348:                                   ; preds = %1974, %1962, %.loopexit13347
  %.1312658 = phi i32 [ %1983, %.loopexit13347 ], [ %1969, %1962 ], [ %1979, %1974 ]
  %1984 = shl i32 %1961, 3
  %1985 = add i32 %1984, %1957
  %1986 = icmp eq i32 %.1312658, %1985
  br i1 %1986, label %1997, label %1987

1987:                                             ; preds = %.loopexit13348
  %1988 = zext i32 %.1312658 to i64
  %1989 = add nuw nsw i64 %1988, 4
  %1990 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1989)
  %1991 = zext i32 %1990 to i64
  %1992 = add nuw nsw i64 %1991, 4
  %1993 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1992)
  %.not13085 = icmp eq i32 %1993, 0
  br i1 %.not13085, label %1997, label %1994

1994:                                             ; preds = %1987
  %1995 = zext i32 %1993 to i64
  %1996 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1995)
  %.not13086 = icmp eq i32 %1996, 123
  br i1 %.not13086, label %1997, label %2005

1997:                                             ; preds = %1994, %1987, %.loopexit13348
  %1998 = zext i32 %20 to i64
  %1999 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1998)
  %2000 = add i32 %1999, 212
  %2001 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %20, i32 noundef %1959)
  %2002 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateDeletePropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %20, i32 noundef %2000, i32 noundef %2001) #6
  %2003 = add i32 %2002, 8
  %.not13087 = icmp eq i32 %2002, 0
  %2004 = select i1 %.not13087, i32 0, i32 %2003
  br label %2078

2005:                                             ; preds = %1994
  %2006 = add nuw nsw i64 %9, 4
  %2007 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2006)
  %2008 = add i32 %2007, 324
  br label %2078

2009:                                             ; preds = %1954
  %2010 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1936, i32 noundef 0)
  %2011 = add nuw nsw i64 %9, 4
  %2012 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2011)
  %2013 = add i32 %2012, 356
  br label %2078

2014:                                             ; preds = %1923
  %.not13076 = icmp eq i32 %1936, 0
  br i1 %.not13076, label %.sink.split, label %2015

2015:                                             ; preds = %2014
  %2016 = zext i32 %1936 to i64
  %2017 = add nuw nsw i64 %2016, 8
  %2018 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2017)
  %2019 = icmp eq i32 %2018, 62
  br i1 %2019, label %2020, label %.sink.split

2020:                                             ; preds = %2015
  %2021 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenIdentifierExpression0x28hermes0x3A0x3AESTree0x3A0x3AIdentifierNode0x2A0x2C0x20bool0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1936, i32 noundef 1)
  %2022 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateUnaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AUnaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2021, i32 noundef 2)
  %2023 = add i32 %2022, 8
  %.not13077 = icmp eq i32 %2022, 0
  %2024 = select i1 %.not13077, i32 0, i32 %2023
  br label %2078

2025:                                             ; preds = %1923
  %2026 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %1936, i32 noundef 0)
  %.not13088 = icmp eq i32 %1934, 3
  br i1 %.not13088, label %2027, label %2074

2027:                                             ; preds = %2025
  %2028 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 80) #6
  %2029 = zext i32 %2028 to i64
  %2030 = add nuw nsw i64 %2029, 20
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2030, i64 noundef 8589934592)
  %2031 = add nuw nsw i64 %2029, 10
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2031, i32 noundef 459775)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2029, i64 noundef 0)
  %2032 = add nuw nsw i64 %2029, 68
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2032, i64 noundef 0)
  %2033 = add nuw nsw i64 %2029, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2033, i32 noundef 0)
  %2034 = add nuw nsw i64 %2029, 8
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %2034, i32 noundef 19)
  %2035 = add i32 %2028, 28
  %2036 = add nuw nsw i64 %2029, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2036, i32 noundef %2035)
  %2037 = add nuw nsw i64 %2029, 44
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2037, i64 noundef 8589934592)
  %2038 = add i32 %2028, 52
  %2039 = add nuw nsw i64 %2029, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2039, i32 noundef %2038)
  %2040 = add nuw nsw i64 %2029, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2040, i32 noundef 0)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %2028, i32 noundef %2026)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2031, i32 noundef 458784)
  %2041 = add nuw nsw i64 %9, 12
  %2042 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2041)
  %2043 = zext i32 %2042 to i64
  %2044 = add nuw nsw i64 %2043, 44
  %2045 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2044)
  %2046 = zext i32 %2045 to i64
  %2047 = add nuw nsw i64 %2046, 136
  %2048 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2047)
  %2049 = and i64 %2048, 1095216660480
  %.not13089 = icmp eq i64 %2049, 0
  %2050 = add nuw nsw i64 %9, 8
  %2051 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2050)
  br i1 %.not13089, label %2054, label %2052

2052:                                             ; preds = %2027
  %2053 = trunc i64 %2048 to i32
  br label %2061

2054:                                             ; preds = %2027
  %2055 = add i32 %2042, 36
  %2056 = icmp eq i32 %2051, %2055
  br i1 %2056, label %2061, label %2057

2057:                                             ; preds = %2054
  %2058 = zext i32 %2051 to i64
  %2059 = add nuw nsw i64 %2058, 76
  %2060 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2059)
  br label %2061

2061:                                             ; preds = %2054, %2057, %2052
  %.1412659 = phi i32 [ %2053, %2052 ], [ 0, %2054 ], [ %2060, %2057 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2040, i32 noundef %.1412659)
  %2062 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %10)
  %2063 = add nuw nsw i64 %2029, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2063, i32 noundef %2062)
  %2064 = add nuw nsw i64 %9, 20
  %2065 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2064)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2033, i32 noundef %2042)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2032, i32 noundef %2065)
  %2066 = zext i32 %2051 to i64
  %2067 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2066)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2029, i32 noundef %2067)
  %2068 = add nuw nsw i64 %2029, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2068, i32 noundef %2051)
  %2069 = zext i32 %2067 to i64
  %2070 = add nuw nsw i64 %2069, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2070, i32 noundef %2028)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2066, i32 noundef %2028)
  %2071 = add i32 %2028, 8
  %.not13090 = icmp eq i32 %2028, 0
  %2072 = select i1 %.not13090, i32 0, i32 %2071
  br label %2078

.sink.split:                                      ; preds = %2015, %2014
  %.sink = phi i32 [ 0, %2014 ], [ %1936, %2015 ]
  %2073 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %.sink, i32 noundef 0)
  br label %2074

2074:                                             ; preds = %.sink.split, %2025
  %.21 = phi i32 [ %2026, %2025 ], [ %2073, %.sink.split ]
  %2075 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateUnaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AUnaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %.21, i32 noundef %1934)
  %2076 = add i32 %2075, 8
  %.not13091 = icmp eq i32 %2075, 0
  %2077 = select i1 %.not13091, i32 0, i32 %2076
  br label %2078

2078:                                             ; preds = %2074, %2061, %2020, %2009, %2005, %1997, %1950, %1941
  %.1012551 = phi i32 [ %2077, %2074 ], [ %2072, %2061 ], [ %2024, %2020 ], [ %2013, %2009 ], [ %2004, %1997 ], [ %2008, %2005 ], [ %1953, %1950 ], [ %1948, %1941 ]
  store i32 %1924, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

2079:                                             ; preds = %1922
  %2080 = icmp eq i32 %16, 36
  br i1 %2080, label %2081, label %2102

2081:                                             ; preds = %2079
  %2082 = add nuw nsw i64 %9, 40
  %2083 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2082)
  %2084 = zext i32 %2083 to i64
  %2085 = add nuw nsw i64 %2084, 60
  %2086 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2085)
  %2087 = zext i32 %2086 to i64
  %2088 = add nuw nsw i64 %2087, 104
  %2089 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2088)
  %2090 = icmp eq i32 %2089, 2
  br i1 %2090, label %2091, label %2099

2091:                                             ; preds = %2081
  %2092 = add nuw nsw i64 %2084, 92
  %2093 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2092)
  %2094 = add nuw nsw i64 %9, 88
  %2095 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2094)
  %2096 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadFrameInst0x28hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2093, i32 noundef %2095) #6
  %2097 = add i32 %2096, 8
  %.not13243 = icmp eq i32 %2096, 0
  %2098 = select i1 %.not13243, i32 0, i32 %2097
  br label %.loopexit13356

2099:                                             ; preds = %2081
  %2100 = add nuw nsw i64 %2087, 128
  %2101 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2100)
  br label %.loopexit13356

2102:                                             ; preds = %2079
  %.not13092 = icmp eq i32 %16, 64
  %or.cond13297 = select i1 %.not, i1 %.not13092, i1 false
  br i1 %or.cond13297, label %2103, label %2131

2103:                                             ; preds = %2102
  %2104 = add nuw nsw i64 %9, 40
  %2105 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2104)
  %2106 = zext i32 %2105 to i64
  %2107 = add nuw nsw i64 %2106, 60
  %2108 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2107)
  %2109 = zext i32 %2108 to i64
  %2110 = add nuw nsw i64 %2109, 104
  %2111 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2110)
  %2112 = and i32 %2111, -2
  %2113 = icmp eq i32 %2112, 2
  br i1 %2113, label %2114, label %2117

2114:                                             ; preds = %2103
  %2115 = add nuw nsw i64 %2106, 96
  %2116 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2115)
  br label %2121

2117:                                             ; preds = %2103
  %2118 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateGetNewTargetInst0x280x29(ptr noundef nonnull %0, i32 noundef %20) #6
  %2119 = add i32 %2118, 8
  %.not13093 = icmp eq i32 %2118, 0
  %2120 = select i1 %.not13093, i32 0, i32 %2119
  br label %2121

2121:                                             ; preds = %2117, %2114
  %.1112552 = phi i32 [ %2116, %2114 ], [ %2120, %2117 ]
  %2122 = zext i32 %.1112552 to i64
  %2123 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2122)
  %2124 = icmp eq i32 %2123, 124
  br i1 %2124, label %2125, label %.loopexit13356

2125:                                             ; preds = %2121
  %2126 = add nuw nsw i64 %9, 88
  %2127 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2126)
  %2128 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadFrameInst0x28hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %.1112552, i32 noundef %2127) #6
  %2129 = add i32 %2128, 8
  %.not13094 = icmp eq i32 %2128, 0
  %2130 = select i1 %.not13094, i32 0, i32 %2129
  br label %.loopexit13356

2131:                                             ; preds = %2102
  %.not13095 = icmp eq i32 %16, 4
  %or.cond13299 = select i1 %.not, i1 %.not13095, i1 false
  br i1 %or.cond13299, label %2132, label %2426

2132:                                             ; preds = %2131
  %2133 = load i32, ptr %5, align 8, !tbaa !5
  %2134 = add i32 %2133, -64
  store i32 %2134, ptr %5, align 8, !tbaa !5
  %2135 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %9)
  %2136 = zext i32 %2135 to i64
  %2137 = add nuw nsw i64 %2136, 28
  %2138 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2137)
  %2139 = zext i32 %2138 to i64
  %2140 = add nuw nsw i64 %2139, 137
  %2141 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2140)
  %.not13096 = icmp eq i32 %2141, 0
  br i1 %.not13096, label %2142, label %2158

2142:                                             ; preds = %2132
  %2143 = zext i32 %2134 to i64
  %2144 = add nuw nsw i64 %2143, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2144, i32 noundef 0)
  %2145 = add i32 %1, 44
  %2146 = add nuw nsw i64 %2143, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2146, i32 noundef %2145)
  %2147 = add nuw nsw i64 %9, 60
  %2148 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2147)
  %2149 = add nuw nsw i64 %2143, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2149, i32 noundef %2148)
  %.not13098 = icmp eq i32 %2148, 0
  br i1 %.not13098, label %2154, label %2150

2150:                                             ; preds = %2142
  %2151 = zext i32 %2148 to i64
  %2152 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2151)
  %2153 = add i32 %2152, 1
  br label %2154

2154:                                             ; preds = %2142, %2150
  %.112536 = phi i32 [ %2153, %2150 ], [ 0, %2142 ]
  %2155 = add nuw nsw i64 %2143, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2155, i32 noundef %.112536)
  %2156 = add i32 %2133, -44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2147, i32 noundef %2156)
  %2157 = add nuw nsw i64 %2143, 52
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %2157, i32 noundef 1)
  br label %2189

2158:                                             ; preds = %2132
  %2159 = add nuw nsw i64 %9, 40
  %2160 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2159)
  %2161 = zext i32 %2134 to i64
  %2162 = add nuw nsw i64 %2161, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2162, i32 noundef %2160)
  %2163 = zext i32 %2160 to i64
  %2164 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2163)
  %2165 = zext i32 %2164 to i64
  %2166 = add nuw nsw i64 %2165, 84
  %2167 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2166)
  %2168 = add nuw nsw i64 %2161, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2168, i32 noundef %2167)
  %2169 = add nuw nsw i64 %2165, 88
  %2170 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2169)
  %2171 = add nuw nsw i64 %2161, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2171, i32 noundef %2170)
  %2172 = add nuw nsw i64 %2163, 72
  %2173 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2172)
  %2174 = add i32 %2164, 44
  %2175 = add nuw nsw i64 %2161, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2175, i32 noundef %2174)
  %2176 = add nuw nsw i64 %2161, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2176, i32 noundef 0)
  %2177 = add nuw nsw i64 %2161, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2177, i32 noundef %2173)
  %2178 = add nuw nsw i64 %2165, 60
  %2179 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2178)
  %2180 = add nuw nsw i64 %2161, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2180, i32 noundef %2179)
  %.not13097 = icmp eq i32 %2179, 0
  br i1 %.not13097, label %2185, label %2181

2181:                                             ; preds = %2158
  %2182 = zext i32 %2179 to i64
  %2183 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2182)
  %2184 = add i32 %2183, 1
  br label %2185

2185:                                             ; preds = %2158, %2181
  %.212537 = phi i32 [ %2184, %2181 ], [ 0, %2158 ]
  %2186 = add nuw nsw i64 %2161, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2186, i32 noundef %.212537)
  %2187 = add i32 %2133, -28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2178, i32 noundef %2187)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2172, i32 noundef %2187)
  %2188 = add nuw nsw i64 %2161, 52
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %2188, i32 noundef 2)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AnewDeclarativeEnvironment0x280x29(ptr noundef nonnull %0, i32 noundef %1)
  br label %2189

2189:                                             ; preds = %2185, %2154
  %.pre-phi13479 = phi i64 [ %2161, %2185 ], [ %2143, %2154 ]
  %2190 = add nuw nsw i64 %.pre-phi13479, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2190, i32 noundef %3)
  %2191 = add nuw nsw i64 %12, 44
  %2192 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2191)
  %.not13099 = icmp eq i32 %2192, 0
  br i1 %.not13099, label %2375, label %2193

2193:                                             ; preds = %2189
  %2194 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %9)
  %2195 = zext i32 %2194 to i64
  %2196 = add nuw nsw i64 %2195, 28
  %2197 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2196)
  %2198 = zext i32 %2197 to i64
  %2199 = add nuw nsw i64 %2198, 137
  %2200 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2199)
  %.not13100 = icmp eq i32 %2200, 0
  br i1 %.not13100, label %2201, label %2254

2201:                                             ; preds = %2193
  %2202 = add nuw nsw i64 %9, 40
  %2203 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2202)
  %2204 = add nuw nsw i64 %.pre-phi13479, 60
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2204, i32 noundef 7)
  %2205 = add nuw nsw i64 %.pre-phi13479, 56
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2205, i32 noundef 47413)
  %2206 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2205)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %.pre-phi13479, i64 noundef %2206)
  %2207 = add i32 %2203, 80
  %2208 = tail call i32 @w2c_hermes_hermes0x3A0x3AInternalIdentifierMaker0x3A0x3Anext0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %2207, i32 noundef %2134)
  %2209 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2202)
  %2210 = zext i32 %2209 to i64
  %2211 = add nuw nsw i64 %2210, 60
  %2212 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2211)
  %2213 = zext i32 %2212 to i64
  %2214 = add nuw nsw i64 %2213, 44
  %2215 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2214)
  %2216 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateVariable0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20hermes0x3A0x3AJavaScriptDeclKind0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2215, i32 noundef 2, i32 noundef %2208)
  %2217 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2202)
  %2218 = zext i32 %2217 to i64
  %2219 = add nuw nsw i64 %2218, 68
  %2220 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2219)
  %2221 = zext i32 %2216 to i64
  %2222 = add nuw nsw i64 %2221, 32
  %2223 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2222)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2205, i32 noundef %2223)
  %2224 = add i32 %1, 44
  %2225 = add nuw nsw i64 %9, 56
  %2226 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2225)
  %.not13105 = icmp eq i32 %2226, 0
  br i1 %.not13105, label %2309, label %2227

2227:                                             ; preds = %2201
  %2228 = add nuw nsw i64 %9, 44
  %2229 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2228)
  %2230 = add i32 %2226, -1
  %2231 = lshr i32 %2223, 4
  %2232 = lshr i32 %2223, 9
  %2233 = xor i32 %2231, %2232
  %2234 = and i32 %2230, %2233
  %2235 = shl nuw nsw i32 %2234, 3
  %2236 = add i32 %2229, %2235
  %2237 = zext i32 %2236 to i64
  %2238 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2237)
  %2239 = icmp eq i32 %2223, %2238
  br i1 %2239, label %.loopexit13352, label %.preheader13351

.preheader13351:                                  ; preds = %2227, %2243
  %.1212636 = phi i32 [ %2246, %2243 ], [ 0, %2227 ]
  %.612621 = phi i32 [ %2249, %2243 ], [ %2234, %2227 ]
  %.412593 = phi i32 [ %2251, %2243 ], [ %2236, %2227 ]
  %.312522 = phi i32 [ %2248, %2243 ], [ 1, %2227 ]
  %.1012474 = phi i32 [ %2253, %2243 ], [ %2238, %2227 ]
  %2240 = icmp eq i32 %.1012474, -4
  %.not13108 = icmp eq i32 %.1212636, 0
  br i1 %2240, label %2241, label %2243

2241:                                             ; preds = %.preheader13351
  %2242 = select i1 %.not13108, i32 %.412593, i32 %.1212636
  br label %2309

2243:                                             ; preds = %.preheader13351
  %2244 = icmp eq i32 %.1012474, -8
  %2245 = select i1 %2244, i1 %.not13108, i1 false
  %2246 = select i1 %2245, i32 %.412593, i32 %.1212636
  %2247 = add i32 %.312522, %.612621
  %2248 = add i32 %.312522, 1
  %2249 = and i32 %2247, %2230
  %2250 = shl i32 %2249, 3
  %2251 = add i32 %2250, %2229
  %2252 = zext i32 %2251 to i64
  %2253 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2252)
  %.not13107 = icmp eq i32 %2223, %2253
  br i1 %.not13107, label %.loopexit13352, label %.preheader13351

2254:                                             ; preds = %2193
  %2255 = zext i32 %2192 to i64
  %2256 = add nuw nsw i64 %2255, 28
  %2257 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2256)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2190, i32 noundef %2257)
  %2258 = add nuw nsw i64 %9, 40
  %2259 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2258)
  %2260 = zext i32 %2257 to i64
  %2261 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2260)
  %2262 = add nuw nsw i64 %.pre-phi13479, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2262, i64 noundef %2261)
  %2263 = add nuw nsw i64 %.pre-phi13479, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2263, i64 noundef %2261)
  %2264 = add i32 %2259, 80
  %2265 = add i32 %2133, -56
  %2266 = tail call i32 @w2c_hermes_hermes0x3A0x3AInternalIdentifierMaker0x3A0x3Anext0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %2264, i32 noundef %2265)
  %2267 = add nuw nsw i64 %9, 84
  %2268 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2267)
  %2269 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateVariable0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20hermes0x3A0x3AJavaScriptDeclKind0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2268, i32 noundef 0, i32 noundef %2266)
  %2270 = zext i32 %2269 to i64
  %2271 = add nuw nsw i64 %2270, 40
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %2271, i32 noundef 0)
  %2272 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2258)
  %2273 = zext i32 %2272 to i64
  %2274 = add nuw nsw i64 %2273, 72
  %2275 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2274)
  %2276 = add nuw nsw i64 %9, 56
  %2277 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2276)
  %.not13101 = icmp eq i32 %2277, 0
  br i1 %.not13101, label %2305, label %2278

2278:                                             ; preds = %2254
  %2279 = add nuw nsw i64 %9, 44
  %2280 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2279)
  %2281 = add i32 %2277, -1
  %2282 = lshr i32 %2257, 4
  %2283 = lshr i32 %2257, 9
  %2284 = xor i32 %2282, %2283
  %2285 = and i32 %2281, %2284
  %2286 = shl nuw nsw i32 %2285, 3
  %2287 = add i32 %2280, %2286
  %2288 = zext i32 %2287 to i64
  %2289 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2288)
  %2290 = icmp eq i32 %2257, %2289
  br i1 %2290, label %.sink.split13557, label %.preheader13353

.preheader13353:                                  ; preds = %2278, %2294
  %.1512660 = phi i32 [ %2302, %2294 ], [ %2287, %2278 ]
  %.1312637 = phi i32 [ %2297, %2294 ], [ 0, %2278 ]
  %.712622 = phi i32 [ %2299, %2294 ], [ 1, %2278 ]
  %.612606 = phi i32 [ %2304, %2294 ], [ %2289, %2278 ]
  %.512594 = phi i32 [ %2300, %2294 ], [ %2285, %2278 ]
  %2291 = icmp eq i32 %.612606, -4
  %.not13104 = icmp eq i32 %.1312637, 0
  br i1 %2291, label %2292, label %2294

2292:                                             ; preds = %.preheader13353
  %2293 = select i1 %.not13104, i32 %.1512660, i32 %.1312637
  br label %2305

2294:                                             ; preds = %.preheader13353
  %2295 = icmp eq i32 %.612606, -8
  %2296 = select i1 %2295, i1 %.not13104, i1 false
  %2297 = select i1 %2296, i32 %.1512660, i32 %.1312637
  %2298 = add i32 %.512594, %.712622
  %2299 = add i32 %.712622, 1
  %2300 = and i32 %2298, %2281
  %2301 = shl i32 %2300, 3
  %2302 = add i32 %2301, %2280
  %2303 = zext i32 %2302 to i64
  %2304 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2303)
  %.not13103 = icmp eq i32 %2257, %2304
  br i1 %.not13103, label %.sink.split13557, label %.preheader13353

2305:                                             ; preds = %2254, %2292
  %.1612661 = phi i32 [ 0, %2254 ], [ %2293, %2292 ]
  %2306 = add i32 %1, 44
  %2307 = add i32 %2133, -48
  %2308 = tail call i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AIdentifier0x20const0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AIdentifier0x20const0x260x29(ptr noundef %0, i32 noundef %2306, i32 noundef %.1612661, i32 noundef %2307) #6
  br label %.sink.split13557.sink.split

2309:                                             ; preds = %2201, %2241
  %.1212476 = phi i32 [ %2242, %2241 ], [ 0, %2201 ]
  %2310 = add i32 %2133, -8
  %2311 = tail call i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AIdentifier0x20const0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AIdentifier0x20const0x260x29(ptr noundef %0, i32 noundef %2224, i32 noundef %.1212476, i32 noundef %2310) #6
  %2312 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2225)
  %2313 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2205)
  %.pre = zext i32 %2311 to i64
  br label %.loopexit13352

.loopexit13352:                                   ; preds = %2243, %2227, %2309
  %.pre-phi13480 = phi i64 [ %2237, %2227 ], [ %.pre, %2309 ], [ %2252, %2243 ]
  %.1812663 = phi i32 [ %2226, %2227 ], [ %2312, %2309 ], [ %2226, %2243 ]
  %.712607 = phi i32 [ %2223, %2227 ], [ %2313, %2309 ], [ %2223, %2243 ]
  %2314 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 20) #6
  %2315 = zext i32 %2220 to i64
  %2316 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2315)
  %2317 = zext i32 %2314 to i64
  %2318 = add nuw nsw i64 %2317, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2318, i32 noundef %2316)
  %2319 = add nuw nsw i64 %2317, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2319, i32 noundef %2216)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2317, i32 noundef %.712607)
  %2320 = add nuw nsw i64 %.pre-phi13480, 4
  %2321 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2320)
  %2322 = add nuw nsw i64 %2317, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2322, i32 noundef %2321)
  %2323 = add nuw nsw i64 %2315, 4
  %2324 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2323)
  %2325 = add nuw nsw i64 %2317, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2325, i32 noundef %2324)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2323, i32 noundef %2314)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2320, i32 noundef %2314)
  %2326 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2191)
  %2327 = zext i32 %2326 to i64
  %2328 = add nuw nsw i64 %2327, 28
  %2329 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2328)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2190, i32 noundef %2329)
  %2330 = add nuw nsw i64 %9, 60
  %2331 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2330)
  %.not13109 = icmp eq i32 %.1812663, 0
  br i1 %.not13109, label %2359, label %2332

2332:                                             ; preds = %.loopexit13352
  %2333 = add nuw nsw i64 %9, 44
  %2334 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2333)
  %2335 = add i32 %.1812663, -1
  %2336 = lshr i32 %2329, 4
  %2337 = lshr i32 %2329, 9
  %2338 = xor i32 %2336, %2337
  %2339 = and i32 %2338, %2335
  %2340 = shl nuw nsw i32 %2339, 3
  %2341 = add i32 %2334, %2340
  %2342 = zext i32 %2341 to i64
  %2343 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2342)
  %2344 = icmp eq i32 %2329, %2343
  br i1 %2344, label %.sink.split13557, label %.preheader13349

.preheader13349:                                  ; preds = %2332, %2348
  %.1912664 = phi i32 [ %2356, %2348 ], [ %2341, %2332 ]
  %.1412638 = phi i32 [ %2353, %2348 ], [ 1, %2332 ]
  %.812623 = phi i32 [ %2351, %2348 ], [ 0, %2332 ]
  %.812608 = phi i32 [ %2358, %2348 ], [ %2343, %2332 ]
  %.712596 = phi i32 [ %2354, %2348 ], [ %2339, %2332 ]
  %2345 = icmp eq i32 %.812608, -4
  %.not13112 = icmp eq i32 %.812623, 0
  br i1 %2345, label %2346, label %2348

2346:                                             ; preds = %.preheader13349
  %2347 = select i1 %.not13112, i32 %.1912664, i32 %.812623
  br label %2359

2348:                                             ; preds = %.preheader13349
  %2349 = icmp eq i32 %.812608, -8
  %2350 = select i1 %2349, i1 %.not13112, i1 false
  %2351 = select i1 %2350, i32 %.1912664, i32 %.812623
  %2352 = add i32 %.712596, %.1412638
  %2353 = add i32 %.1412638, 1
  %2354 = and i32 %2352, %2335
  %2355 = shl i32 %2354, 3
  %2356 = add i32 %2355, %2334
  %2357 = zext i32 %2356 to i64
  %2358 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2357)
  %.not13111 = icmp eq i32 %2329, %2358
  br i1 %.not13111, label %.sink.split13557, label %.preheader13349

2359:                                             ; preds = %.loopexit13352, %2346
  %.1312477 = phi i32 [ %2347, %2346 ], [ 0, %.loopexit13352 ]
  %2360 = add i32 %2133, -48
  %2361 = tail call i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AIdentifier0x20const0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AIdentifier0x20const0x260x29(ptr noundef %0, i32 noundef %2224, i32 noundef %.1312477, i32 noundef %2360) #6
  br label %.sink.split13557.sink.split

.sink.split13557.sink.split:                      ; preds = %2305, %2359
  %.sink13586 = phi i32 [ %2361, %2359 ], [ %2308, %2305 ]
  %.sink13580.ph = phi i32 [ %2331, %2359 ], [ %2275, %2305 ]
  %.sink13573.ph = phi i32 [ %2216, %2359 ], [ %2269, %2305 ]
  %2362 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2190)
  %.pre13481 = zext i32 %.sink13586 to i64
  br label %.sink.split13557

.sink.split13557:                                 ; preds = %2294, %2348, %.sink.split13557.sink.split, %2332, %2278
  %.sink13580 = phi i32 [ %2275, %2278 ], [ %2331, %2332 ], [ %.sink13580.ph, %.sink.split13557.sink.split ], [ %2331, %2348 ], [ %2275, %2294 ]
  %.sink13573 = phi i32 [ %2269, %2278 ], [ %2216, %2332 ], [ %.sink13573.ph, %.sink.split13557.sink.split ], [ %2216, %2348 ], [ %2269, %2294 ]
  %.1412478.sink = phi i32 [ %2257, %2278 ], [ %2329, %2332 ], [ %2362, %.sink.split13557.sink.split ], [ %2329, %2348 ], [ %2257, %2294 ]
  %.pre-phi13482.sink = phi i64 [ %2288, %2278 ], [ %2342, %2332 ], [ %.pre13481, %.sink.split13557.sink.split ], [ %2357, %2348 ], [ %2303, %2294 ]
  %2363 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 20) #6
  %2364 = zext i32 %.sink13580 to i64
  %2365 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2364)
  %2366 = zext i32 %2363 to i64
  %2367 = add nuw nsw i64 %2366, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2367, i32 noundef %2365)
  %2368 = add nuw nsw i64 %2366, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2368, i32 noundef %.sink13573)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2366, i32 noundef %.1412478.sink)
  %2369 = add nuw nsw i64 %.pre-phi13482.sink, 4
  %2370 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2369)
  %2371 = add nuw nsw i64 %2366, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2371, i32 noundef %2370)
  %2372 = add nuw nsw i64 %2364, 4
  %2373 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2372)
  %2374 = add nuw nsw i64 %2366, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2374, i32 noundef %2373)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2372, i32 noundef %2363)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2369, i32 noundef %2363)
  br label %2375

2375:                                             ; preds = %.sink.split13557, %2189
  %.412584 = phi i32 [ 0, %2189 ], [ %.sink13573, %.sink.split13557 ]
  %.1512479 = phi i32 [ %3, %2189 ], [ %.1412478.sink, %.sink.split13557 ]
  %2376 = add nuw nsw i64 %12, 73
  %2377 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2376)
  %.not13113 = icmp eq i32 %2377, 0
  br i1 %.not13113, label %2380, label %2378

2378:                                             ; preds = %2375
  %2379 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenAsyncFunction0x28hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x29(ptr noundef %0, i32 noundef %1, i32 noundef %.1512479, i32 noundef %.412584, i32 noundef %2)
  br label %2387

2380:                                             ; preds = %2375
  %2381 = add nuw nsw i64 %12, 72
  %2382 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2381)
  %.not13114 = icmp eq i32 %2382, 0
  br i1 %.not13114, label %2385, label %2383

2383:                                             ; preds = %2380
  %2384 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenGeneratorFunction0x28hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x29(ptr noundef %0, i32 noundef %1, i32 noundef %.1512479, i32 noundef %.412584, i32 noundef %2)
  br label %2387

2385:                                             ; preds = %2380
  %2386 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenES5Function0x28hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x2C0x20bool0x29(ptr noundef %0, i32 noundef %1, i32 noundef %.1512479, i32 noundef %.412584, i32 noundef %2, i32 noundef 0)
  br label %2387

2387:                                             ; preds = %2385, %2383, %2378
  %.312538 = phi i32 [ %2379, %2378 ], [ %2384, %2383 ], [ %2386, %2385 ]
  %2388 = add nuw nsw i64 %9, 88
  %2389 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2388)
  %2390 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCreateFunctionInst0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef %0, i32 noundef %20, i32 noundef %.312538, i32 noundef %2389) #6
  %2391 = add i32 %2390, 8
  %.not13115 = icmp eq i32 %2390, 0
  %2392 = select i1 %.not13115, i32 0, i32 %2391
  %.not13116 = icmp eq i32 %.412584, 0
  br i1 %.not13116, label %2394, label %2393

2393:                                             ; preds = %2387
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20bool0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2392, i32 noundef %.412584, i32 noundef 1)
  br label %2394

2394:                                             ; preds = %2393, %2387
  %2395 = add nuw nsw i64 %.pre-phi13479, 52
  %2396 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2395)
  %.not13117 = icmp eq i32 %2396, 255
  br i1 %.not13117, label %2425, label %2397

2397:                                             ; preds = %2394
  %2398 = add i32 %2133, -8
  %2399 = add i32 %2133, -44
  %2400 = shl i32 %2396, 2
  %2401 = add i32 %2400, 111696
  %2402 = zext i32 %2401 to i64
  %2403 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2402)
  %2404 = getelementptr inbounds i8, ptr %0, i64 80
  %2405 = getelementptr inbounds i8, ptr %0, i64 92
  %2406 = load i32, ptr %2405, align 4, !tbaa !15
  %2407 = icmp ult i32 %2403, %2406
  br i1 %2407, label %2408, label %.critedge, !prof !16

2408:                                             ; preds = %2397
  %2409 = load ptr, ptr %2404, align 8, !tbaa !17
  %2410 = zext i32 %2403 to i64
  %2411 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2409, i64 %2410
  %2412 = getelementptr inbounds i8, ptr %2411, i64 8
  %2413 = load ptr, ptr %2412, align 8, !tbaa !18
  %.not13118 = icmp eq ptr %2413, null
  br i1 %.not13118, label %.critedge, label %2414, !prof !20

2414:                                             ; preds = %2408
  %2415 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !21
  %2416 = load ptr, ptr %2411, align 8, !tbaa !22
  %2417 = tail call zeroext i1 @func_types_eq(ptr noundef %2415, ptr noundef %2416)
  br i1 %2417, label %2418, label %.critedge, !prof !16

.critedge:                                        ; preds = %2408, %2397, %2414
  tail call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

2418:                                             ; preds = %2414
  %2419 = load ptr, ptr %2404, align 8, !tbaa !17
  %2420 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2419, i64 %2410
  %2421 = getelementptr inbounds i8, ptr %2420, i64 8
  %2422 = load ptr, ptr %2421, align 8, !tbaa !18
  %2423 = getelementptr inbounds i8, ptr %2420, i64 16
  %2424 = load ptr, ptr %2423, align 8, !tbaa !23
  tail call void %2422(ptr noundef %2424, i32 noundef %2398, i32 noundef %2399) #6
  br label %2425

2425:                                             ; preds = %2418, %2394
  store i32 %2133, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

2426:                                             ; preds = %2131
  %.not13119 = icmp eq i32 %16, 5
  %or.cond13301 = select i1 %.not, i1 %.not13119, i1 false
  br i1 %or.cond13301, label %2427, label %2570

2427:                                             ; preds = %2426
  %2428 = load i32, ptr %5, align 8, !tbaa !5
  %2429 = add i32 %2428, -288
  store i32 %2429, ptr %5, align 8, !tbaa !5
  %2430 = add nuw nsw i64 %12, 73
  %2431 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2430)
  %.not13120 = icmp eq i32 %2431, 0
  br i1 %.not13120, label %2452, label %2432

2432:                                             ; preds = %2427
  %2433 = zext i32 %20 to i64
  %2434 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2433)
  %2435 = zext i32 %2434 to i64
  %2436 = add nuw nsw i64 %2435, 28
  %2437 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2436)
  %2438 = zext i32 %2437 to i64
  %2439 = add nuw nsw i64 %2438, 72
  %2440 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2439)
  %2441 = add nuw nsw i64 %12, 16
  %2442 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2441)
  %2443 = zext i32 %2429 to i64
  %2444 = add nuw nsw i64 %2443, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2444, i32 noundef 53515)
  %2445 = add nuw nsw i64 %2443, 36
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %2445, i32 noundef 259)
  %2446 = add nuw nsw i64 %2443, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2446, i64 noundef %2442)
  %2447 = add nuw nsw i64 %2443, 280
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2447, i64 noundef %2442)
  %2448 = add i32 %2428, -272
  %2449 = add i32 %2428, -260
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef nonnull %0, i32 noundef %2440, i32 noundef 0, i32 noundef %2448, i32 noundef %2449, i32 noundef 0)
  %2450 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2433)
  %2451 = add i32 %2450, 268
  br label %2569

2452:                                             ; preds = %2427
  %2453 = add nuw nsw i64 %9, 84
  %2454 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2453)
  %2455 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 136) #6
  %2456 = zext i32 %2455 to i64
  %2457 = add nuw nsw i64 %2456, 2
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2457, i32 noundef 459775)
  %2458 = add nuw nsw i64 %2456, 132
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %2458, i32 noundef 0)
  %2459 = add nuw nsw i64 %2456, 84
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2459, i32 noundef 0)
  %2460 = add nuw nsw i64 %2456, 76
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2460, i64 noundef 0)
  %2461 = add nuw nsw i64 %2456, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2461, i32 noundef %2454)
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %2456, i32 noundef 120)
  %2462 = add nuw nsw i64 %2456, 12
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2462, i64 noundef 8589934592)
  %2463 = add i32 %2455, 20
  %2464 = add nuw nsw i64 %2456, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2464, i32 noundef %2463)
  %2465 = add nuw nsw i64 %2456, 92
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2465, i64 noundef 34359738368)
  %2466 = add i32 %2455, 100
  %2467 = add nuw nsw i64 %2456, 88
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2467, i32 noundef %2466)
  %2468 = add nuw nsw i64 %2456, 36
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2468, i64 noundef 34359738368)
  %2469 = add i32 %2455, 44
  %2470 = add nuw nsw i64 %2456, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2470, i32 noundef %2469)
  %2471 = zext i32 %2454 to i64
  %2472 = add nuw nsw i64 %2471, 36
  %2473 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2472)
  %2474 = add nuw nsw i64 %2471, 40
  %2475 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2474)
  %.not13121 = icmp ult i32 %2473, %2475
  br i1 %.not13121, label %2480, label %2476

2476:                                             ; preds = %2452
  %2477 = add i32 %2454, 32
  %2478 = add i32 %2454, 44
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %2477, i32 noundef %2478, i32 noundef 0, i32 noundef 4) #6
  %2479 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2472)
  br label %2480

2480:                                             ; preds = %2476, %2452
  %.812597 = phi i32 [ %2479, %2476 ], [ %2473, %2452 ]
  %2481 = add nuw nsw i64 %2471, 32
  %2482 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2481)
  %2483 = shl i32 %.812597, 2
  %2484 = add i32 %2482, %2483
  %2485 = zext i32 %2484 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2485, i32 noundef %2455)
  %2486 = add i32 %.812597, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2472, i32 noundef %2486)
  %2487 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenAnonymousFunctionNameIfNeeded0x28hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3)
  %2488 = add nuw nsw i64 %12, 36
  %2489 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2488)
  %2490 = add nuw nsw i64 %12, 32
  %2491 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2490)
  %2492 = add nuw nsw i64 %12, 16
  %2493 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2492)
  %2494 = zext i32 %2429 to i64
  %2495 = add nuw nsw i64 %2494, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2495, i64 noundef %2493)
  %2496 = add nuw nsw i64 %2494, 272
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2496, i64 noundef %2493)
  %2497 = add i32 %2428, -260
  %2498 = icmp eq i32 %2491, 2
  %2499 = zext i1 %2498 to i32
  %2500 = add i32 %2428, -280
  %2501 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateFunction0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AFunction0x3A0x3ADefinitionKind0x2C0x20bool0x2C0x20hermes0x3A0x3ASourceVisibility0x2C0x20llvh0x3A0x3ASMRange0x2C0x20bool0x2C0x20hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2455, i32 noundef %2487, i32 noundef 2, i32 noundef %2499, i32 noundef %2489, i32 noundef %2500) #6
  %2502 = add nuw nsw i64 %12, 28
  %2503 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2502)
  %2504 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AFunctionContext0x28hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x2A0x2C0x20hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3Asem0x3A0x3AFunctionInfo0x2A0x29(ptr noundef nonnull %0, i32 noundef %2497, i32 noundef %1, i32 noundef %2501, i32 noundef %2503)
  %2505 = add nuw nsw i64 %9, 40
  %2506 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2505)
  %2507 = zext i32 %2506 to i64
  %2508 = add nuw nsw i64 %2507, 8
  %2509 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2508)
  %2510 = zext i32 %2509 to i64
  %2511 = add nuw nsw i64 %2510, 92
  %2512 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2511)
  %2513 = add nuw nsw i64 %2507, 92
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2513, i32 noundef %2512)
  %2514 = add nuw nsw i64 %2510, 96
  %2515 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2514)
  %2516 = add nuw nsw i64 %2507, 96
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2516, i32 noundef %2515)
  %2517 = add nuw nsw i64 %2510, 100
  %2518 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2517)
  %2519 = add nuw nsw i64 %2507, 100
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2519, i32 noundef %2518)
  %2520 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2501) #6
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitFunctionPreamble0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %2520)
  %2521 = add nuw nsw i64 %12, 56
  %2522 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2521)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitTopLevelDeclarations0x28hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3ADoEmitParameters0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %2, i32 noundef %2522, i32 noundef 2)
  %2523 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2521)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenFunctionBody0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %2523)
  %2524 = zext i32 %20 to i64
  %2525 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2524)
  %2526 = add i32 %2525, 268
  %.not13122 = icmp eq i32 %2526, 0
  br i1 %.not13122, label %2543, label %2527

2527:                                             ; preds = %2480
  %2528 = add nuw nsw i64 %9, 12
  %2529 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2528)
  %2530 = zext i32 %2529 to i64
  %2531 = add nuw nsw i64 %2530, 44
  %2532 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2531)
  %2533 = zext i32 %2532 to i64
  %2534 = add nuw nsw i64 %2533, 112
  %2535 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2534)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2494, i64 noundef %2535)
  %2536 = add nuw nsw i64 %2494, 280
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2536, i64 noundef %2535)
  %2537 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2494)
  %2538 = add nuw nsw i64 %2494, 4
  %2539 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2538)
  %2540 = add i32 %2539, -1
  %2541 = icmp eq i32 %2537, %2539
  %2542 = select i1 %2541, i32 %2537, i32 %2540
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %10, i32 noundef %2542)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateReturnInst0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2526)
  br label %2543

2543:                                             ; preds = %2527, %2480
  %2544 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2505)
  %2545 = zext i32 %2544 to i64
  %2546 = add nuw nsw i64 %2545, 88
  %2547 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2546)
  %2548 = zext i32 %2547 to i64
  %2549 = add nuw nsw i64 %2548, 20
  %2550 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2549)
  %.not13123 = icmp eq i32 %2550, 0
  br i1 %.not13123, label %2551, label %2556

2551:                                             ; preds = %2543
  %2552 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2505)
  %2553 = zext i32 %2552 to i64
  %2554 = add nuw nsw i64 %2553, 88
  %2555 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2554)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AeraseFromParent0x280x29(ptr noundef nonnull %0, i32 noundef %2555)
  br label %2556

2556:                                             ; preds = %2551, %2543
  %2557 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2505)
  %2558 = zext i32 %2557 to i64
  %2559 = add nuw nsw i64 %2558, 60
  %2560 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2559)
  %2561 = zext i32 %2560 to i64
  %2562 = add nuw nsw i64 %2561, 136
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2562, i32 noundef 0)
  %2563 = add nuw nsw i64 %2561, 140
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %2563, i32 noundef 0)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3A0x7EFunctionContext0x280x29(ptr noundef nonnull %0, i32 noundef %2504)
  %2564 = add nuw nsw i64 %9, 88
  %2565 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2564)
  %2566 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCreateFunctionInst0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2501, i32 noundef %2565) #6
  %2567 = add i32 %2566, 8
  %.not13124 = icmp eq i32 %2566, 0
  %2568 = select i1 %.not13124, i32 0, i32 %2567
  br label %2569

2569:                                             ; preds = %2556, %2432
  %.1212553 = phi i32 [ %2451, %2432 ], [ %2568, %2556 ]
  store i32 %2428, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

2570:                                             ; preds = %2426
  %.not13125 = icmp eq i32 %16, 52
  %or.cond13303 = select i1 %.not, i1 %.not13125, i1 false
  br i1 %or.cond13303, label %2571, label %2641

2571:                                             ; preds = %2570
  %2572 = load i32, ptr %5, align 8, !tbaa !5
  %2573 = add i32 %2572, -32
  store i32 %2573, ptr %5, align 8, !tbaa !5
  %2574 = add nuw nsw i64 %12, 36
  %2575 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2574)
  %2576 = add nuw nsw i64 %12, 28
  %2577 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2576)
  %2578 = zext i32 %2577 to i64
  %2579 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2578)
  %2580 = and i64 %2579, -4294967296
  %.not13126 = icmp eq i64 %2580, 8589934592
  br i1 %.not13126, label %2581, label %2584

2581:                                             ; preds = %2571
  %2582 = and i64 %2579, 4294967295
  %2583 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %2582)
  %.not13127 = icmp eq i32 %2583, 11051
  br i1 %.not13127, label %2585, label %2584

2584:                                             ; preds = %2581, %2571
  br label %2585

2585:                                             ; preds = %2581, %2584
  %.1312554 = phi i32 [ 8, %2584 ], [ 7, %2581 ]
  %2586 = add i32 %2572, -24
  %2587 = add nuw nsw i64 %12, 32
  %2588 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2587)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AcreateLRef0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20bool0x29(ptr noundef nonnull %0, i32 noundef %2586, i32 noundef %1, i32 noundef %2588, i32 noundef 0)
  %.not13128 = icmp eq i32 %2575, 0
  %2589 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitLoad0x280x29(ptr noundef nonnull %0, i32 noundef %2586) #6
  br i1 %.not13128, label %2590, label %2636

2590:                                             ; preds = %2585
  %2591 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 80) #6
  %2592 = zext i32 %2591 to i64
  %2593 = add nuw nsw i64 %2592, 20
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2593, i64 noundef 8589934592)
  %2594 = add nuw nsw i64 %2592, 10
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2594, i32 noundef 459775)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2592, i64 noundef 0)
  %2595 = add nuw nsw i64 %2592, 68
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2595, i64 noundef 0)
  %2596 = add nuw nsw i64 %2592, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2596, i32 noundef 0)
  %2597 = add nuw nsw i64 %2592, 8
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %2597, i32 noundef 20)
  %2598 = add i32 %2591, 28
  %2599 = add nuw nsw i64 %2592, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2599, i32 noundef %2598)
  %2600 = add nuw nsw i64 %2592, 44
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2600, i64 noundef 8589934592)
  %2601 = add i32 %2591, 52
  %2602 = add nuw nsw i64 %2592, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2602, i32 noundef %2601)
  %2603 = add nuw nsw i64 %2592, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2603, i32 noundef 0)
  tail call void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3ApushOperand0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %2591, i32 noundef %2589)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2594, i32 noundef 458848)
  %2604 = add nuw nsw i64 %9, 12
  %2605 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2604)
  %2606 = zext i32 %2605 to i64
  %2607 = add nuw nsw i64 %2606, 44
  %2608 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2607)
  %2609 = zext i32 %2608 to i64
  %2610 = add nuw nsw i64 %2609, 136
  %2611 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2610)
  %2612 = and i64 %2611, 1095216660480
  %.not13129 = icmp eq i64 %2612, 0
  %2613 = add nuw nsw i64 %9, 8
  %2614 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2613)
  br i1 %.not13129, label %2617, label %2615

2615:                                             ; preds = %2590
  %2616 = trunc i64 %2611 to i32
  br label %2624

2617:                                             ; preds = %2590
  %2618 = add i32 %2605, 36
  %2619 = icmp eq i32 %2614, %2618
  br i1 %2619, label %2624, label %2620

2620:                                             ; preds = %2617
  %2621 = zext i32 %2614 to i64
  %2622 = add nuw nsw i64 %2621, 76
  %2623 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2622)
  br label %2624

2624:                                             ; preds = %2617, %2620, %2615
  %.412523 = phi i32 [ %2616, %2615 ], [ 0, %2617 ], [ %2623, %2620 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2603, i32 noundef %.412523)
  %2625 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %10)
  %2626 = add nuw nsw i64 %2592, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2626, i32 noundef %2625)
  %2627 = add nuw nsw i64 %9, 20
  %2628 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2627)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2596, i32 noundef %2605)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2595, i32 noundef %2628)
  %2629 = zext i32 %2614 to i64
  %2630 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2629)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2592, i32 noundef %2630)
  %2631 = add nuw nsw i64 %2592, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2631, i32 noundef %2614)
  %2632 = zext i32 %2630 to i64
  %2633 = add nuw nsw i64 %2632, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2633, i32 noundef %2591)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2629, i32 noundef %2591)
  %2634 = add i32 %2591, 8
  %.not13130 = icmp eq i32 %2591, 0
  %2635 = select i1 %.not13130, i32 0, i32 %2634
  br label %2636

2636:                                             ; preds = %2585, %2624
  %.412533 = phi i32 [ %2635, %2624 ], [ %2589, %2585 ]
  %2637 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateUnaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AUnaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %.412533, i32 noundef %.1312554)
  %2638 = add i32 %2637, 8
  %.not13131 = icmp eq i32 %2637, 0
  %2639 = select i1 %.not13131, i32 0, i32 %2638
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %2586, i32 noundef %2639) #6
  store i32 %2572, ptr %5, align 8, !tbaa !5
  %2640 = select i1 %.not13128, i32 %.412533, i32 %2639
  br label %.loopexit13356

2641:                                             ; preds = %2570
  %.not13132 = icmp eq i32 %16, 58
  %or.cond13305 = select i1 %.not, i1 %.not13132, i1 false
  br i1 %or.cond13305, label %2642, label %2738

2642:                                             ; preds = %2641
  %2643 = load i32, ptr %5, align 8, !tbaa !5
  %2644 = add i32 %2643, -96
  store i32 %2644, ptr %5, align 8, !tbaa !5
  %2645 = zext i32 %20 to i64
  %2646 = add nuw nsw i64 %2645, 8
  %2647 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2646)
  %2648 = zext i32 %2647 to i64
  %2649 = add nuw nsw i64 %2648, 44
  %2650 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2649)
  %2651 = zext i32 %2644 to i64
  %2652 = add nuw nsw i64 %2651, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2652, i64 noundef 34359738368)
  %2653 = add i32 %2643, -32
  %2654 = add nuw nsw i64 %2651, 52
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2654, i32 noundef %2653)
  %2655 = add nuw nsw i64 %2651, 12
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2655, i64 noundef 34359738368)
  %2656 = add i32 %2643, -76
  %2657 = add nuw nsw i64 %2651, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2657, i32 noundef %2656)
  %2658 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2650) #6
  %2659 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2650) #6
  %2660 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2650) #6
  %2661 = add nuw nsw i64 %12, 28
  %2662 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2661)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpressionBranch0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %2662, i32 noundef %2659, i32 noundef %2658, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2646, i32 noundef %2659)
  %2663 = add i32 %2659, 36
  %.not13133 = icmp eq i32 %2659, 0
  %2664 = select i1 %.not13133, i32 0, i32 %2663
  %2665 = add nuw nsw i64 %2645, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2665, i32 noundef %2664)
  %2666 = add nuw nsw i64 %12, 36
  %2667 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2666)
  %2668 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %2667, i32 noundef 0)
  %2669 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2652)
  %2670 = add nuw nsw i64 %2651, 60
  %2671 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2670)
  %.not13134 = icmp ult i32 %2669, %2671
  br i1 %.not13134, label %2675, label %2672

2672:                                             ; preds = %2642
  %2673 = add i32 %2643, -44
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %2673, i32 noundef %2653, i32 noundef 0, i32 noundef 4) #6
  %2674 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2652)
  br label %2675

2675:                                             ; preds = %2672, %2642
  %.2112666 = phi i32 [ %2674, %2672 ], [ %2669, %2642 ]
  %2676 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2654)
  %2677 = shl i32 %.2112666, 2
  %2678 = add i32 %2676, %2677
  %2679 = zext i32 %2678 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2679, i32 noundef %2668)
  %2680 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2652)
  %2681 = add i32 %2680, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2652, i32 noundef %2681)
  %2682 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2646)
  %2683 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2655)
  %2684 = add nuw nsw i64 %2651, 16
  %2685 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2684)
  %.not13135 = icmp ult i32 %2683, %2685
  br i1 %.not13135, label %2689, label %2686

2686:                                             ; preds = %2675
  %2687 = add i32 %2643, -88
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %2687, i32 noundef %2656, i32 noundef 0, i32 noundef 4) #6
  %2688 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2655)
  br label %2689

2689:                                             ; preds = %2686, %2675
  %.2212667 = phi i32 [ %2688, %2686 ], [ %2683, %2675 ]
  %2690 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2657)
  %2691 = shl i32 %.2212667, 2
  %2692 = add i32 %2690, %2691
  %2693 = zext i32 %2692 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2693, i32 noundef %2682)
  %2694 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2655)
  %2695 = add i32 %2694, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2655, i32 noundef %2695)
  %2696 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2660) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2646, i32 noundef %2658)
  %2697 = add i32 %2658, 36
  %.not13136 = icmp eq i32 %2658, 0
  %2698 = select i1 %.not13136, i32 0, i32 %2697
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2665, i32 noundef %2698)
  %2699 = add nuw nsw i64 %12, 32
  %2700 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2699)
  %2701 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %2700, i32 noundef 0)
  %2702 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2652)
  %2703 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2670)
  %.not13137 = icmp ult i32 %2702, %2703
  br i1 %.not13137, label %2707, label %2704

2704:                                             ; preds = %2689
  %2705 = add i32 %2643, -44
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %2705, i32 noundef %2653, i32 noundef 0, i32 noundef 4) #6
  %2706 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2652)
  br label %2707

2707:                                             ; preds = %2704, %2689
  %.23 = phi i32 [ %2706, %2704 ], [ %2702, %2689 ]
  %2708 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2654)
  %2709 = shl i32 %.23, 2
  %2710 = add i32 %2708, %2709
  %2711 = zext i32 %2710 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2711, i32 noundef %2701)
  %2712 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2652)
  %2713 = add i32 %2712, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2652, i32 noundef %2713)
  %2714 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2646)
  %2715 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2655)
  %2716 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2684)
  %.not13138 = icmp ult i32 %2715, %2716
  %.pre13511 = add i32 %2643, -88
  br i1 %.not13138, label %._crit_edge13488, label %2717

2717:                                             ; preds = %2707
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %.pre13511, i32 noundef %2656, i32 noundef 0, i32 noundef 4) #6
  %2718 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2655)
  br label %._crit_edge13488

._crit_edge13488:                                 ; preds = %2707, %2717
  %.24 = phi i32 [ %2718, %2717 ], [ %2715, %2707 ]
  %2719 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2657)
  %2720 = shl i32 %.24, 2
  %2721 = add i32 %2719, %2720
  %2722 = zext i32 %2721 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2722, i32 noundef %2714)
  %2723 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2655)
  %2724 = add i32 %2723, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2655, i32 noundef %2724)
  %2725 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2660) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2646, i32 noundef %2660)
  %2726 = add i32 %2660, 36
  %.not13139 = icmp eq i32 %2660, 0
  %2727 = select i1 %.not13139, i32 0, i32 %2726
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2665, i32 noundef %2727)
  %2728 = add i32 %2643, -44
  %2729 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreatePhiInst0x28llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3AValue0x2A0x2C0x208u0x3E0x20const0x260x2C0x20llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3ABasicBlock0x2A0x2C0x208u0x3E0x20const0x260x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2728, i32 noundef %.pre13511)
  %2730 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2657)
  %.not13140 = icmp eq i32 %2656, %2730
  br i1 %.not13140, label %2732, label %2731

2731:                                             ; preds = %._crit_edge13488
  tail call void @w2c_hermes_dlfree(ptr noundef nonnull %0, i32 noundef %2730) #6
  br label %2732

2732:                                             ; preds = %2731, %._crit_edge13488
  %2733 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2654)
  %.not13141 = icmp eq i32 %2653, %2733
  br i1 %.not13141, label %2735, label %2734

2734:                                             ; preds = %2732
  tail call void @w2c_hermes_dlfree(ptr noundef nonnull %0, i32 noundef %2733) #6
  br label %2735

2735:                                             ; preds = %2734, %2732
  store i32 %2643, ptr %5, align 8, !tbaa !5
  %2736 = add i32 %2729, 8
  %.not13142 = icmp eq i32 %2729, 0
  %2737 = select i1 %.not13142, i32 0, i32 %2736
  br label %.loopexit13356

2738:                                             ; preds = %2641
  %.not13143 = icmp eq i32 %16, 38
  %or.cond13307 = select i1 %.not, i1 %.not13143, i1 false
  br i1 %or.cond13307, label %2739, label %2750

2739:                                             ; preds = %2738
  %2740 = add nuw nsw i64 %9, 4
  %2741 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2740)
  %2742 = add i32 %2741, 268
  %2743 = add nuw nsw i64 %12, 32
  %2744 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2743)
  %2745 = add i32 %2, 28
  %.not13144 = icmp eq i32 %2744, %2745
  br i1 %.not13144, label %.loopexit13356, label %.preheader13355

.preheader13355:                                  ; preds = %2739, %.preheader13355
  %.1612480 = phi i32 [ %2749, %.preheader13355 ], [ %2744, %2739 ]
  %2746 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %.1612480, i32 noundef 0)
  %2747 = zext i32 %.1612480 to i64
  %2748 = add nuw nsw i64 %2747, 4
  %2749 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2748)
  %.not13145 = icmp eq i32 %2749, %2745
  br i1 %.not13145, label %.loopexit13356, label %.preheader13355

2750:                                             ; preds = %2738
  %.not13146 = icmp eq i32 %16, 69
  %or.cond13309 = select i1 %.not, i1 %.not13146, i1 false
  br i1 %or.cond13309, label %2751, label %2855

2751:                                             ; preds = %2750
  %2752 = load i32, ptr %5, align 8, !tbaa !5
  %2753 = add i32 %2752, -96
  store i32 %2753, ptr %5, align 8, !tbaa !5
  %2754 = add nuw nsw i64 %12, 32
  %2755 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2754)
  %2756 = zext i32 %2755 to i64
  %2757 = add nuw nsw i64 %2756, 32
  %2758 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2757)
  %2759 = zext i32 %2758 to i64
  %2760 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2759)
  %2761 = zext i32 %2753 to i64
  %2762 = add nuw nsw i64 %2761, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2762, i64 noundef %2760)
  %2763 = add nuw nsw i64 %2761, 88
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2763, i64 noundef %2760)
  %2764 = add i32 %2752, -64
  %2765 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %2764)
  %2766 = add nuw nsw i64 %2756, 4
  %2767 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2766)
  %2768 = add i32 %2, 28
  %2769 = icmp eq i32 %2767, %2768
  br i1 %2769, label %2854, label %2770

2770:                                             ; preds = %2751
  %2771 = add nuw nsw i64 %2761, 72
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2771, i64 noundef 8589934592)
  %2772 = add i32 %2752, -16
  %2773 = add nuw nsw i64 %2761, 68
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2773, i32 noundef %2772)
  %2774 = add i32 %2, 40
  %2775 = add nuw nsw i64 %2761, 76
  %2776 = add i32 %2752, -28
  %2777 = add nuw nsw i64 %2761, 24
  %2778 = add nuw nsw i64 %2761, 56
  %2779 = add i32 %2752, -72
  br label %2780

2780:                                             ; preds = %2814, %2770
  %.2312668 = phi i32 [ %2767, %2770 ], [ %2817, %2814 ]
  %.25 = phi i32 [ %2774, %2770 ], [ %2815, %2814 ]
  %2781 = zext i32 %.25 to i64
  %2782 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2781)
  %2783 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2782, i32 noundef 0)
  %2784 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2771)
  %2785 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2775)
  %.not13147 = icmp ult i32 %2784, %2785
  br i1 %.not13147, label %2788, label %2786

2786:                                             ; preds = %2780
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %2776, i32 noundef %2772, i32 noundef 0, i32 noundef 4) #6
  %2787 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2771)
  br label %2788

2788:                                             ; preds = %2786, %2780
  %.26 = phi i32 [ %2787, %2786 ], [ %2784, %2780 ]
  %2789 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2773)
  %2790 = shl i32 %.26, 2
  %2791 = add i32 %2789, %2790
  %2792 = zext i32 %2791 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2792, i32 noundef %2783)
  %2793 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2771)
  %2794 = add i32 %2793, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2771, i32 noundef %2794)
  %2795 = zext i32 %.2312668 to i64
  %2796 = add nuw nsw i64 %2795, 32
  %2797 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2796)
  %2798 = zext i32 %2797 to i64
  %2799 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2798)
  %2800 = icmp ugt i64 %2799, 4294967295
  br i1 %2800, label %2801, label %2814

2801:                                             ; preds = %2788
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2777, i64 noundef %2799)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2778, i64 noundef %2799)
  %2802 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %2779)
  %2803 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2771)
  %2804 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2775)
  %.not13148 = icmp ult i32 %2803, %2804
  br i1 %.not13148, label %2807, label %2805

2805:                                             ; preds = %2801
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %2776, i32 noundef %2772, i32 noundef 0, i32 noundef 4) #6
  %2806 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2771)
  br label %2807

2807:                                             ; preds = %2805, %2801
  %.27 = phi i32 [ %2806, %2805 ], [ %2803, %2801 ]
  %2808 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2773)
  %2809 = shl i32 %.27, 2
  %2810 = add i32 %2808, %2809
  %2811 = zext i32 %2810 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2811, i32 noundef %2802)
  %2812 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2771)
  %2813 = add i32 %2812, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2771, i32 noundef %2813)
  br label %2814

2814:                                             ; preds = %2807, %2788
  %.912609 = phi i32 [ %2813, %2807 ], [ %2794, %2788 ]
  %2815 = add i32 %2782, 4
  %2816 = add nuw nsw i64 %2795, 4
  %2817 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2816)
  %.not13149 = icmp eq i32 %2817, %2768
  br i1 %.not13149, label %2818, label %2780

2818:                                             ; preds = %2814
  %2819 = add nuw nsw i64 %2761, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2819, i32 noundef %.912609)
  %2820 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2773)
  %2821 = add nuw nsw i64 %2761, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2821, i32 noundef %2820)
  %2822 = add nuw nsw i64 %2761, 52
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2822, i32 noundef 6)
  %2823 = add nuw nsw i64 %2761, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2823, i32 noundef 33106)
  %2824 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2821)
  %2825 = add nuw nsw i64 %2761, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2825, i64 noundef %2824)
  %2826 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2823)
  %2827 = add nuw nsw i64 %2761, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2827, i64 noundef %2826)
  %2828 = load i32, ptr %5, align 8, !tbaa !5
  %2829 = add i32 %2828, -48
  store i32 %2829, ptr %5, align 8, !tbaa !5
  %2830 = zext i32 %2829 to i64
  %2831 = add nuw nsw i64 %2830, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2831, i32 noundef 14)
  %2832 = add nuw nsw i64 %2830, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2832, i32 noundef 44147)
  %2833 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2832)
  %2834 = add nuw nsw i64 %2830, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2834, i64 noundef %2833)
  %2835 = add i32 %2828, -32
  %2836 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryLoadGlobalPropertyInst0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %2835)
  %2837 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2827)
  %2838 = add nuw nsw i64 %2830, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2838, i64 noundef %2837)
  %2839 = add nuw nsw i64 %2830, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2839, i64 noundef %2837)
  %2840 = add i32 %2836, 8
  %.not13150 = icmp eq i32 %2836, 0
  %2841 = select i1 %.not13150, i32 0, i32 %2840
  %2842 = add i32 %2828, -40
  %2843 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %2841, i32 noundef %2842) #6
  %2844 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2825)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2830, i64 noundef %2844)
  %2845 = add nuw nsw i64 %2830, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2845, i64 noundef %2844)
  %2846 = add i32 %2843, 8
  %.not13151 = icmp eq i32 %2843, 0
  %2847 = select i1 %.not13151, i32 0, i32 %2846
  %2848 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %0, i32 noundef %20, i32 noundef 0, i32 noundef %2847, i32 noundef %2765, i32 noundef %2829) #6
  store i32 %2828, ptr %5, align 8, !tbaa !5
  %2849 = add i32 %2848, 8
  %.not13152 = icmp eq i32 %2848, 0
  %2850 = select i1 %.not13152, i32 0, i32 %2849
  %2851 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2773)
  %2852 = icmp eq i32 %2851, %2772
  br i1 %2852, label %2854, label %2853

2853:                                             ; preds = %2818
  tail call void @w2c_hermes_dlfree(ptr noundef nonnull %0, i32 noundef %2851) #6
  br label %2854

2854:                                             ; preds = %2818, %2751, %2853
  %.2212513 = phi i32 [ %2765, %2751 ], [ %2850, %2818 ], [ %2850, %2853 ]
  store i32 %2752, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

2855:                                             ; preds = %2750
  %.not13153 = icmp eq i32 %16, 70
  %or.cond13311 = select i1 %.not, i1 %.not13153, i1 false
  br i1 %or.cond13311, label %2856, label %3561

2856:                                             ; preds = %2855
  %2857 = load i32, ptr %5, align 8, !tbaa !5
  %2858 = add i32 %2857, -144
  store i32 %2858, ptr %5, align 8, !tbaa !5
  %2859 = add nuw nsw i64 %12, 32
  %2860 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2859)
  %2861 = zext i32 %2858 to i64
  %2862 = add nuw nsw i64 %2861, 128
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2862, i64 noundef 8589934592)
  %2863 = add i32 %2857, -8
  %2864 = add nuw nsw i64 %2861, 124
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2864, i32 noundef %2863)
  %2865 = add nuw nsw i64 %2861, 120
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2865, i32 noundef 0)
  %2866 = add nuw nsw i64 %2861, 112
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2866, i64 noundef 0)
  %2867 = zext i32 %2860 to i64
  %2868 = add nuw nsw i64 %2867, 32
  %2869 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2868)
  %2870 = add i32 %2860, 28
  %2871 = icmp eq i32 %2869, %2870
  br i1 %2871, label %.loopexit13380, label %.preheader13379

.preheader13379:                                  ; preds = %2856
  %2872 = add nuw nsw i64 %2861, 40
  %2873 = add nuw nsw i64 %2861, 104
  %2874 = add i32 %2857, -104
  %2875 = add nuw nsw i64 %2861, 116
  br label %2876

2876:                                             ; preds = %.preheader13379, %2913
  %.2312514 = phi i32 [ %2915, %2913 ], [ %2869, %.preheader13379 ]
  %2877 = zext i32 %.2312514 to i64
  %2878 = add nuw nsw i64 %2877, 36
  %2879 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2878)
  %2880 = zext i32 %2879 to i64
  %2881 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2880)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2872, i64 noundef %2881)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2873, i64 noundef %2881)
  %2882 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %2874)
  %2883 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2875)
  %2884 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2865)
  %2885 = icmp ult i32 %2883, %2884
  br i1 %2885, label %2886, label %2889

2886:                                             ; preds = %2876
  %2887 = zext i32 %2883 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2887, i32 noundef %2882)
  %2888 = add i32 %2883, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2875, i32 noundef %2888)
  br label %2913

2889:                                             ; preds = %2876
  %2890 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2866)
  %2891 = sub i32 %2883, %2890
  %2892 = ashr i32 %2891, 2
  %2893 = add nsw i32 %2892, 1
  %2894 = icmp ugt i32 %2893, 1073741823
  br i1 %2894, label %2916, label %2895

2895:                                             ; preds = %2889
  %2896 = sub i32 %2884, %2890
  %2897 = ashr i32 %2896, 1
  %2898 = tail call i32 @llvm.umax.i32(i32 %2893, i32 %2897)
  %2899 = icmp ugt i32 %2896, 2147483643
  %2900 = select i1 %2899, i32 1073741823, i32 %2898
  %.not13154 = icmp eq i32 %2900, 0
  br i1 %.not13154, label %._crit_edge13487, label %2901

2901:                                             ; preds = %2895
  %2902 = icmp ugt i32 %2900, 1073741823
  br i1 %2902, label %2917, label %2903

2903:                                             ; preds = %2901
  %2904 = shl nuw i32 %2900, 2
  %2905 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %2904) #6
  br label %._crit_edge13487

._crit_edge13487:                                 ; preds = %2895, %2903
  %.pre-phi13514 = phi i32 [ %2904, %2903 ], [ 0, %2895 ]
  %.1412555 = phi i32 [ %2905, %2903 ], [ 0, %2895 ]
  %2906 = and i32 %2891, -4
  %2907 = add i32 %.1412555, %2906
  %2908 = zext i32 %2907 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2908, i32 noundef %2882)
  %2909 = tail call i32 @w2c_hermes_memmove(ptr noundef %0, i32 noundef %.1412555, i32 noundef %2890, i32 noundef %2891) #6
  %2910 = add i32 %2909, %.pre-phi13514
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2865, i32 noundef %2910)
  %2911 = add i32 %2907, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2875, i32 noundef %2911)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2866, i32 noundef %2909)
  %.not13155 = icmp eq i32 %2890, 0
  br i1 %.not13155, label %2913, label %2912

2912:                                             ; preds = %._crit_edge13487
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2890) #6
  br label %2913

2913:                                             ; preds = %._crit_edge13487, %2912, %2886
  %2914 = add nuw nsw i64 %2877, 4
  %2915 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2914)
  %.not13156 = icmp eq i32 %2915, %2870
  br i1 %.not13156, label %.loopexit13380, label %2876

2916:                                             ; preds = %2889
  tail call void @w2c_hermes_abort(ptr noundef %0) #6
  tail call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

2917:                                             ; preds = %2901
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef %0) #6
  tail call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

.loopexit13380:                                   ; preds = %2913, %2856
  %2918 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %9)
  %2919 = load i32, ptr %5, align 8, !tbaa !5
  %2920 = add i32 %2919, -16
  store i32 %2920, ptr %5, align 8, !tbaa !5
  %2921 = zext i32 %2920 to i64
  %2922 = add nuw nsw i64 %2921, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2922, i32 noundef 0)
  %2923 = add i32 %2857, -32
  %2924 = zext i32 %2923 to i64
  %2925 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2924)
  %2926 = add nuw nsw i64 %2924, 4
  %2927 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2926)
  %2928 = load i32, ptr %5, align 8, !tbaa !5
  %2929 = add i32 %2928, -64
  store i32 %2929, ptr %5, align 8, !tbaa !5
  %2930 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef 138544)
  %2931 = and i32 %2930, 1
  %.not13157 = icmp eq i32 %2931, 0
  br i1 %.not13157, label %2934, label %2932

2932:                                             ; preds = %.loopexit13380
  %2933 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef 138536)
  br label %2937

2934:                                             ; preds = %.loopexit13380
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef 138544, i32 noundef 1)
  %2935 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef 131088)
  %.not13158 = icmp eq i64 %2935, 0
  %2936 = select i1 %.not13158, i64 -49064778989728563, i64 %2935
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef 138536, i64 noundef %2936)
  br label %2937

2937:                                             ; preds = %2934, %2932
  %.012567 = phi i64 [ %2933, %2932 ], [ %2936, %2934 ]
  %2938 = icmp eq i32 %2925, %2927
  br i1 %2938, label %.loopexit13378, label %.preheader13377

.preheader13377:                                  ; preds = %2937, %.preheader13377
  %indvars.iv = phi i64 [ %indvars.iv.next, %.preheader13377 ], [ 0, %2937 ]
  %.512585 = phi i32 [ %2943, %.preheader13377 ], [ %2925, %2937 ]
  %2939 = trunc nuw nsw i64 %indvars.iv to i32
  %.2412515 = add i32 %2929, %2939
  %2940 = zext i32 %.512585 to i64
  %2941 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2940)
  %2942 = zext i32 %.2412515 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2942, i32 noundef %2941)
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 4
  %2943 = add i32 %.512585, 4
  %2944 = icmp ne i32 %2943, %2927
  %2945 = icmp ult i64 %indvars.iv, 57
  %or.cond13312 = select i1 %2944, i1 %2945, i1 false
  br i1 %or.cond13312, label %.preheader13377, label %.loopexit13378.loopexit

.loopexit13378.loopexit:                          ; preds = %.preheader13377
  %2946 = trunc nuw nsw i64 %indvars.iv.next to i32
  br label %.loopexit13378

.loopexit13378:                                   ; preds = %.loopexit13378.loopexit, %2937
  %.612586 = phi i32 [ %2925, %2937 ], [ %2943, %.loopexit13378.loopexit ]
  %.512524 = phi i32 [ 0, %2937 ], [ %2946, %.loopexit13378.loopexit ]
  %2947 = icmp eq i32 %.612586, %2927
  br i1 %2947, label %2948, label %2951

2948:                                             ; preds = %.loopexit13378
  %2949 = tail call i64 @w2c_hermes_llvh0x3A0x3Ahashing0x3A0x3Adetail0x3A0x3Ahash_short0x28char0x20const0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x20long0x29(ptr noundef %0, i32 noundef %2929, i32 noundef %.512524, i64 noundef %.012567) #6
  %2950 = trunc i64 %2949 to i32
  br label %3160

2951:                                             ; preds = %.loopexit13378
  %2952 = zext i32 %2929 to i64
  %2953 = add nuw nsw i64 %2952, 32
  %2954 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2953)
  %2955 = lshr i64 %.012567, 47
  %2956 = xor i64 %2955, %.012567
  %2957 = xor i64 %.012567, -5435081209227447693
  %2958 = mul i64 %2957, -7070675565921424023
  %2959 = lshr i64 %2958, 47
  %2960 = xor i64 %2958, %2959
  %2961 = xor i64 %2960, -5435081209227447693
  %2962 = mul i64 %2961, -7070675565921424023
  %2963 = lshr i64 %2962, 47
  %2964 = xor i64 %2963, %2962
  %2965 = mul i64 %2964, -7070675565921424023
  %2966 = add i64 %2965, %2956
  %2967 = tail call i64 @llvm.fshl.i64(i64 %2966, i64 %2966, i64 31)
  %2968 = mul i64 %2967, -5435081209227447693
  %2969 = mul i64 %.012567, -5435081209227447693
  %2970 = xor i64 %2956, %2969
  %2971 = mul i64 %2970, -7070675565921424023
  %2972 = xor i64 %2971, %.012567
  %2973 = lshr i64 %2972, 47
  %2974 = xor i64 %.012567, %2973
  %2975 = xor i64 %2974, %2971
  %2976 = mul i64 %2975, -7070675565921424023
  %2977 = lshr i64 %2976, 47
  %2978 = xor i64 %2977, %2976
  %2979 = mul i64 %2978, -7070675565921424023
  %2980 = add i64 %2979, %2968
  %2981 = add i64 %2980, %2954
  %2982 = add nuw nsw i64 %2952, 40
  %2983 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2982)
  %2984 = add nuw nsw i64 %2952, 48
  %2985 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2984)
  %2986 = add i64 %2981, %2983
  %2987 = add i64 %2986, %2985
  %2988 = tail call i64 @llvm.fshl.i64(i64 %2987, i64 %2987, i64 20)
  %2989 = add i64 %2988, %2981
  %2990 = add nuw nsw i64 %2952, 56
  %2991 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2990)
  %2992 = tail call i64 @llvm.fshl.i64(i64 %2957, i64 %2957, i64 15)
  %2993 = add i64 %2983, %2992
  %2994 = mul i64 %.012567, -5435081209227447692
  %2995 = add i64 %2985, %2994
  %2996 = tail call i64 @llvm.fshl.i64(i64 %2995, i64 %2995, i64 22)
  %2997 = mul i64 %2996, -5435081209227447693
  %2998 = add i64 %2993, %2997
  %2999 = add nuw nsw i64 %2952, 16
  %3000 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2999)
  %3001 = add i64 %2991, %2981
  %3002 = add i64 %3001, %3000
  %3003 = add i64 %3002, %2998
  %3004 = tail call i64 @llvm.fshl.i64(i64 %3003, i64 %3003, i64 43)
  %3005 = add i64 %2989, %3004
  %3006 = add i64 %2987, %2991
  %3007 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2952)
  %3008 = mul i64 %.012567, -7894485801551159383
  %3009 = add i64 %3007, %3008
  %3010 = add nuw nsw i64 %2952, 8
  %3011 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3010)
  %3012 = add i64 %3011, %3000
  %3013 = add i64 %3012, %3009
  %3014 = tail call i64 @llvm.fshl.i64(i64 %3013, i64 %3013, i64 20)
  %3015 = add i64 %3014, %3009
  %3016 = add nuw nsw i64 %2952, 24
  %3017 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3016)
  %3018 = add i64 %2992, %.012567
  %3019 = add i64 %3018, %3011
  %3020 = tail call i64 @llvm.fshl.i64(i64 %3019, i64 %3019, i64 27)
  %3021 = mul i64 %3020, -5435081209227447693
  %3022 = xor i64 %3021, %2979
  %3023 = add i64 %3009, %2956
  %3024 = add i64 %3023, %3017
  %3025 = add i64 %3024, %3022
  %3026 = tail call i64 @llvm.fshl.i64(i64 %3025, i64 %3025, i64 43)
  %3027 = add i64 %3015, %3026
  %3028 = add i64 %3013, %3017
  br label %3029

3029:                                             ; preds = %.loopexit13374, %2951
  %.712587 = phi i32 [ %.612586, %2951 ], [ %3035, %.loopexit13374 ]
  %.012573 = phi i32 [ 64, %2951 ], [ %3120, %.loopexit13374 ]
  %.012570 = phi i64 [ %2998, %2951 ], [ %3088, %.loopexit13374 ]
  %.012569 = phi i64 [ %3005, %2951 ], [ %3098, %.loopexit13374 ]
  %.112568 = phi i64 [ %3027, %2951 ], [ %3118, %.loopexit13374 ]
  %.012566 = phi i64 [ %3022, %2951 ], [ %3113, %.loopexit13374 ]
  %.012565 = phi i64 [ %3028, %2951 ], [ %3121, %.loopexit13374 ]
  %.012564 = phi i64 [ %3006, %2951 ], [ %3119, %.loopexit13374 ]
  %.012563 = phi i64 [ %2968, %2951 ], [ %3078, %.loopexit13374 ]
  br label %3030

3030:                                             ; preds = %3030, %3029
  %indvars.iv13463 = phi i64 [ %indvars.iv.next13464, %3030 ], [ 4, %3029 ]
  %indvars.iv13460 = phi i64 [ %indvars.iv.next13461, %3030 ], [ 0, %3029 ]
  %.812588 = phi i32 [ %3035, %3030 ], [ %.712587, %3029 ]
  %3031 = trunc nuw nsw i64 %indvars.iv13460 to i32
  %.1112611 = add i32 %2929, %3031
  %3032 = zext i32 %.812588 to i64
  %3033 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3032)
  %3034 = zext i32 %.1112611 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3034, i32 noundef %3033)
  %indvars.iv.next13461 = add nuw nsw i64 %indvars.iv13460, 4
  %3035 = add i32 %.812588, 4
  %3036 = icmp ne i32 %3035, %2927
  %3037 = icmp ult i64 %indvars.iv13460, 57
  %or.cond13313 = select i1 %3036, i1 %3037, i1 false
  %indvars.iv.next13464 = add nuw nsw i64 %indvars.iv13463, 4
  br i1 %or.cond13313, label %3030, label %3038

3038:                                             ; preds = %3030
  %3039 = trunc nuw nsw i64 %indvars.iv.next13461 to i32
  %3040 = add i32 %2929, %3039
  %3041 = and i32 %3039, 2147483580
  %.not13159 = icmp eq i32 %3041, 0
  br i1 %.not13159, label %.loopexit13374, label %3042

3042:                                             ; preds = %3038
  %3043 = sub nuw nsw i32 60, %3031
  %3044 = icmp eq i32 %3043, %3039
  br i1 %3044, label %.preheader13373, label %.preheader13376

.preheader13373:                                  ; preds = %3042, %.preheader13373
  %indvars.iv13465 = phi i64 [ %indvars.iv.next13466, %.preheader13373 ], [ %indvars.iv13463, %3042 ]
  %.1512639 = phi i32 [ %3051, %.preheader13373 ], [ %2929, %3042 ]
  %3045 = zext i32 %.1512639 to i64
  %3046 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3045)
  %3047 = trunc nuw nsw i64 %indvars.iv13465 to i32
  %3048 = add i32 %2929, %3047
  %3049 = zext i32 %3048 to i64
  %3050 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3049)
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %3045, i32 noundef %3050)
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %3049, i32 noundef %3046)
  %3051 = add i32 %.1512639, 1
  %3052 = icmp eq i32 %3051, %3040
  %indvars.iv.next13466 = add nuw nsw i64 %indvars.iv13465, 1
  %.not13163 = icmp eq i64 %indvars.iv.next13466, 64
  %or.cond13314 = select i1 %3052, i1 true, i1 %.not13163
  br i1 %or.cond13314, label %.loopexit13374, label %.preheader13373

.preheader13376:                                  ; preds = %3042, %3055
  %.2512516 = phi i32 [ %3056, %3055 ], [ %3043, %3042 ]
  %.1812482 = phi i32 [ %.2512516, %3055 ], [ %3039, %3042 ]
  %3053 = icmp eq i32 %.2512516, 0
  br i1 %3053, label %3054, label %3055, !prof !20

3054:                                             ; preds = %.preheader13376
  tail call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

3055:                                             ; preds = %.preheader13376
  %3056 = srem i32 %.1812482, %.2512516
  %.not13160 = icmp eq i32 %3056, 0
  br i1 %.not13160, label %3057, label %.preheader13376

3057:                                             ; preds = %3055
  %3058 = add i32 %.2512516, %2929
  br label %3059

3059:                                             ; preds = %3073, %3057
  %.1912483 = phi i32 [ %3058, %3057 ], [ %3060, %3073 ]
  %3060 = add i32 %.1912483, -1
  %3061 = add i32 %3060, %3039
  %3062 = zext i32 %3060 to i64
  %3063 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3062)
  br label %3064

3064:                                             ; preds = %3064, %3059
  %.1612640 = phi i32 [ %3060, %3059 ], [ %.2612517, %3064 ]
  %.2612517 = phi i32 [ %3061, %3059 ], [ %3072, %3064 ]
  %3065 = zext i32 %.2612517 to i64
  %3066 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3065)
  %3067 = zext i32 %.1612640 to i64
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %3067, i32 noundef %3066)
  %3068 = add i32 %.2612517, %3039
  %3069 = sub i32 %2928, %.2612517
  %3070 = sub i32 %3040, %3069
  %3071 = icmp sgt i32 %3069, %3039
  %3072 = select i1 %3071, i32 %3068, i32 %3070
  %.not13161 = icmp eq i32 %3072, %3060
  br i1 %.not13161, label %3073, label %3064

3073:                                             ; preds = %3064
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %3065, i32 noundef %3063)
  %.not13162 = icmp eq i32 %3060, %2929
  br i1 %.not13162, label %.loopexit13374, label %3059

.loopexit13374:                                   ; preds = %3073, %.preheader13373, %3038
  %3074 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2990)
  %3075 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2953)
  %3076 = add i64 %.012564, %.012566
  %3077 = tail call i64 @llvm.fshl.i64(i64 %3076, i64 %3076, i64 31)
  %3078 = mul i64 %3077, -5435081209227447693
  %3079 = add i64 %3078, %.012569
  %3080 = add i64 %3079, %3075
  %3081 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2982)
  %3082 = add i64 %3081, %.012565
  %3083 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2984)
  %3084 = add i64 %.112568, %.012570
  %3085 = add i64 %3084, %3083
  %3086 = tail call i64 @llvm.fshl.i64(i64 %3085, i64 %3085, i64 22)
  %3087 = mul i64 %3086, -5435081209227447693
  %3088 = add i64 %3082, %3087
  %3089 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2999)
  %3090 = add i64 %3080, %3074
  %3091 = add i64 %3090, %3089
  %3092 = add i64 %3091, %3088
  %3093 = tail call i64 @llvm.fshl.i64(i64 %3092, i64 %3092, i64 43)
  %3094 = add i64 %3080, %3081
  %3095 = add i64 %3094, %3083
  %3096 = tail call i64 @llvm.fshl.i64(i64 %3095, i64 %3095, i64 20)
  %3097 = add i64 %3096, %3080
  %3098 = add i64 %3097, %3093
  %3099 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2952)
  %3100 = mul i64 %.112568, -5435081209227447693
  %3101 = add i64 %3099, %3100
  %3102 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3010)
  %3103 = add i64 %3102, %3089
  %3104 = add i64 %3103, %3101
  %3105 = tail call i64 @llvm.fshl.i64(i64 %3104, i64 %3104, i64 20)
  %3106 = add i64 %3105, %3101
  %3107 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3016)
  %3108 = add i64 %.012565, %.012570
  %3109 = add i64 %3108, %.012563
  %3110 = add i64 %3109, %3102
  %3111 = tail call i64 @llvm.fshl.i64(i64 %3110, i64 %3110, i64 27)
  %3112 = mul i64 %3111, -5435081209227447693
  %3113 = xor i64 %3112, %.012569
  %3114 = add i64 %3101, %.012564
  %3115 = add i64 %3114, %3107
  %3116 = add i64 %3115, %3113
  %3117 = tail call i64 @llvm.fshl.i64(i64 %3116, i64 %3116, i64 43)
  %3118 = add i64 %3106, %3117
  %3119 = add i64 %3095, %3074
  %3120 = add i32 %.012573, %3039
  %3121 = add i64 %3104, %3107
  %.not13164 = icmp eq i32 %3035, %2927
  br i1 %.not13164, label %3122, label %3029

3122:                                             ; preds = %.loopexit13374
  %3123 = zext i32 %3120 to i64
  %3124 = add i64 %3077, %3123
  %3125 = mul i64 %3124, -5435081209227447693
  %3126 = xor i64 %3118, %3098
  %3127 = mul i64 %3126, -7070675565921424023
  %3128 = lshr i64 %3127, 47
  %3129 = xor i64 %3098, %3128
  %3130 = xor i64 %3129, %3127
  %3131 = mul i64 %3130, -7070675565921424023
  %3132 = lshr i64 %3131, 47
  %3133 = xor i64 %3132, %3131
  %3134 = mul i64 %3133, -7070675565921424023
  %3135 = add i64 %3134, %3125
  %3136 = lshr i64 %3088, 47
  %3137 = xor i64 %3136, %3088
  %3138 = mul i64 %3137, -5435081209227447693
  %3139 = add i64 %3138, %3113
  %3140 = xor i64 %3121, %3119
  %3141 = mul i64 %3140, -7070675565921424023
  %3142 = lshr i64 %3141, 47
  %3143 = xor i64 %3119, %3142
  %3144 = xor i64 %3143, %3141
  %3145 = mul i64 %3144, -7070675565921424023
  %3146 = lshr i64 %3145, 47
  %3147 = xor i64 %3146, %3145
  %3148 = mul i64 %3147, -7070675565921424023
  %3149 = add i64 %3139, %3148
  %3150 = xor i64 %3135, %3149
  %3151 = mul i64 %3150, -7070675565921424023
  %3152 = lshr i64 %3151, 47
  %3153 = xor i64 %3135, %3152
  %3154 = xor i64 %3153, %3151
  %3155 = mul i64 %3154, -7070675565921424023
  %3156 = lshr i64 %3155, 47
  %3157 = xor i64 %3156, %3155
  %3158 = trunc i64 %3157 to i32
  %3159 = mul i32 %3158, -348639895
  br label %3160

3160:                                             ; preds = %3122, %2948
  %.1512556 = phi i32 [ %2950, %2948 ], [ %3159, %3122 ]
  store i32 %2928, ptr %5, align 8, !tbaa !5
  %3161 = add i32 %2918, 576
  %3162 = zext i32 %3161 to i64
  %3163 = add nuw nsw i64 %3162, 4
  %3164 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3163)
  %.not13165 = icmp eq i32 %3164, 0
  br i1 %.not13165, label %.loopexit13365, label %3165

3165:                                             ; preds = %3160
  %3166 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3162)
  %3167 = add i32 %3164, -1
  %3168 = and i32 %3167, %.1512556
  %3169 = tail call range(i32 0, 33) i32 @llvm.ctpop.i32(i32 %3164)
  %3170 = icmp ult i32 %3169, 2
  br i1 %3170, label %3175, label %3171

3171:                                             ; preds = %3165
  %3172 = icmp ugt i32 %3164, %.1512556
  br i1 %3172, label %3175, label %3173

3173:                                             ; preds = %3171
  %3174 = urem i32 %.1512556, %3164
  br label %3175

3175:                                             ; preds = %3171, %3165, %3173
  %.412539 = phi i32 [ %3168, %3165 ], [ %.1512556, %3171 ], [ %3174, %3173 ]
  %3176 = shl i32 %.412539, 2
  %3177 = add i32 %3176, %3166
  %3178 = zext i32 %3177 to i64
  %3179 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3178)
  %.not13166 = icmp eq i32 %3179, 0
  br i1 %.not13166, label %.loopexit13365, label %3180

3180:                                             ; preds = %3175
  %3181 = zext i32 %3179 to i64
  %3182 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3181)
  %.not13167 = icmp eq i32 %3182, 0
  br i1 %.not13167, label %.loopexit13365, label %3183

3183:                                             ; preds = %3180
  %3184 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2926)
  %3185 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2924)
  %3186 = sub i32 %3184, %3185
  br i1 %3170, label %.preheader13364, label %.preheader13370

.preheader13364:                                  ; preds = %3183, %.loopexit13362
  %.1212612 = phi i32 [ %3209, %.loopexit13362 ], [ %3182, %3183 ]
  %3187 = zext i32 %.1212612 to i64
  %3188 = add nuw nsw i64 %3187, 4
  %3189 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3188)
  %3190 = icmp ne i32 %.1512556, %3189
  %3191 = and i32 %3189, %3167
  %3192 = icmp ne i32 %3191, %.412539
  %3193 = and i1 %3190, %3192
  br i1 %3193, label %.loopexit13365, label %3194

3194:                                             ; preds = %.preheader13364
  %3195 = add nuw nsw i64 %3187, 12
  %3196 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3195)
  %3197 = add nuw nsw i64 %3187, 8
  %3198 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3197)
  %3199 = sub i32 %3196, %3198
  %.not13175 = icmp eq i32 %3199, %3186
  br i1 %.not13175, label %3200, label %.loopexit13362

3200:                                             ; preds = %3194
  %3201 = icmp eq i32 %3198, %3196
  br i1 %3201, label %.loopexit13363, label %.preheader13361

.preheader13361:                                  ; preds = %3200, %3206
  %.712526 = phi i32 [ %3207, %3206 ], [ %3185, %3200 ]
  %.2012484 = phi i32 [ %3208, %3206 ], [ %3198, %3200 ]
  %3202 = zext i32 %.2012484 to i64
  %3203 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3202)
  %3204 = zext i32 %.712526 to i64
  %3205 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3204)
  %.not13176 = icmp eq i32 %3203, %3205
  br i1 %.not13176, label %3206, label %.loopexit13362

3206:                                             ; preds = %.preheader13361
  %3207 = add i32 %.712526, 4
  %3208 = add i32 %.2012484, 4
  %.not13177 = icmp eq i32 %3208, %3196
  br i1 %.not13177, label %.loopexit13363, label %.preheader13361

.loopexit13362:                                   ; preds = %.preheader13361, %3194
  %3209 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3187)
  %.not13178 = icmp eq i32 %3209, 0
  br i1 %.not13178, label %.loopexit13365, label %.preheader13364

.preheader13370:                                  ; preds = %3183, %.loopexit13368
  %.1312613 = phi i32 [ %3232, %.loopexit13368 ], [ %3182, %3183 ]
  %3210 = zext i32 %.1312613 to i64
  %3211 = add nuw nsw i64 %3210, 4
  %3212 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3211)
  %.not13168 = icmp eq i32 %.1512556, %3212
  br i1 %.not13168, label %3217, label %3213

3213:                                             ; preds = %.preheader13370
  %.not13169 = icmp ult i32 %3212, %3164
  br i1 %.not13169, label %3216, label %3214

3214:                                             ; preds = %3213
  %3215 = urem i32 %3212, %3164
  br label %3216

3216:                                             ; preds = %3213, %3214
  %.1612557 = phi i32 [ %3215, %3214 ], [ %3212, %3213 ]
  %.not13170 = icmp eq i32 %.1612557, %.412539
  br i1 %.not13170, label %3217, label %.loopexit13365

3217:                                             ; preds = %3216, %.preheader13370
  %3218 = add nuw nsw i64 %3210, 12
  %3219 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3218)
  %3220 = add nuw nsw i64 %3210, 8
  %3221 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3220)
  %3222 = sub i32 %3219, %3221
  %.not13171 = icmp eq i32 %3222, %3186
  br i1 %.not13171, label %3223, label %.loopexit13368

3223:                                             ; preds = %3217
  %3224 = icmp eq i32 %3221, %3219
  br i1 %3224, label %.loopexit13363, label %.preheader13367

.preheader13367:                                  ; preds = %3223, %3229
  %.812527 = phi i32 [ %3230, %3229 ], [ %3185, %3223 ]
  %.2112485 = phi i32 [ %3231, %3229 ], [ %3221, %3223 ]
  %3225 = zext i32 %.2112485 to i64
  %3226 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3225)
  %3227 = zext i32 %.812527 to i64
  %3228 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3227)
  %.not13172 = icmp eq i32 %3226, %3228
  br i1 %.not13172, label %3229, label %.loopexit13368

3229:                                             ; preds = %.preheader13367
  %3230 = add i32 %.812527, 4
  %3231 = add i32 %.2112485, 4
  %.not13173 = icmp eq i32 %3231, %3219
  br i1 %.not13173, label %.loopexit13363, label %.preheader13367

.loopexit13368:                                   ; preds = %.preheader13367, %3217
  %3232 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3210)
  %.not13174 = icmp eq i32 %3232, 0
  br i1 %.not13174, label %.loopexit13365, label %.preheader13370

.loopexit13365:                                   ; preds = %.loopexit13368, %3216, %.loopexit13362, %.preheader13364, %3180, %3175, %3160
  %.912598 = phi i32 [ 0, %3160 ], [ %.412539, %3175 ], [ %.412539, %3180 ], [ %.412539, %.preheader13364 ], [ %.412539, %.loopexit13362 ], [ %.412539, %3216 ], [ %.412539, %.loopexit13368 ]
  %3233 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 24) #6
  %3234 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2924)
  %3235 = zext i32 %3233 to i64
  %3236 = add nuw nsw i64 %3235, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3236, i32 noundef %3234)
  %3237 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2926)
  %3238 = add nuw nsw i64 %3235, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3238, i32 noundef %3237)
  %3239 = add nuw nsw i64 %2924, 8
  %3240 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3239)
  %3241 = add nuw nsw i64 %3235, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3241, i32 noundef %3240)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3239, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2924, i64 noundef 0)
  %3242 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2922)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3235, i32 noundef 0)
  %3243 = add nuw nsw i64 %3235, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3243, i32 noundef %.1512556)
  %3244 = add nuw nsw i64 %3235, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3244, i32 noundef %3242)
  %3245 = add nuw nsw i64 %3162, 12
  %3246 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3245)
  %3247 = add i32 %3246, 1
  %3248 = uitofp i32 %3247 to float
  %3249 = add nuw nsw i64 %3162, 16
  %3250 = tail call float @f32_load(ptr noundef nonnull %8, i64 noundef %3249)
  %3251 = uitofp i32 %3164 to float
  %3252 = fmul float %3250, %3251
  %3253 = fcmp olt float %3252, %3248
  %.not13179 = or i1 %.not13165, %3253
  br i1 %.not13179, label %3254, label %3332

3254:                                             ; preds = %.loopexit13365
  %3255 = tail call range(i32 0, 33) i32 @llvm.ctpop.i32(i32 %3164)
  %3256 = icmp ugt i32 %3255, 1
  %3257 = icmp ult i32 %3164, 3
  %3258 = or i1 %3257, %3256
  %3259 = zext i1 %3258 to i32
  %3260 = shl i32 %3164, 1
  %3261 = or disjoint i32 %3260, %3259
  %3262 = fdiv float %3248, %3250
  %3263 = tail call float @wasm_ceilf(float noundef %3262)
  %3264 = fcmp olt float %3263, 0x41F0000000000000
  %3265 = fcmp oge float %3263, 0.000000e+00
  %3266 = and i1 %3264, %3265
  br i1 %3266, label %3267, label %3275

3267:                                             ; preds = %3254
  %3268 = fcmp uno float %3263, 0.000000e+00
  br i1 %3268, label %3269, label %3270, !prof !20

3269:                                             ; preds = %3267
  tail call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

3270:                                             ; preds = %3267
  %3271 = fcmp ogt float %3263, -1.000000e+00
  br i1 %3271, label %3273, label %3272, !prof !16

3272:                                             ; preds = %3270
  tail call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

3273:                                             ; preds = %3270
  %3274 = fptoui float %3263 to i32
  br label %3275

3275:                                             ; preds = %3254, %3273
  %.512540 = phi i32 [ %3274, %3273 ], [ 0, %3254 ]
  %3276 = tail call i32 @llvm.umax.i32(i32 %3261, i32 %.512540)
  %3277 = icmp eq i32 %3276, 1
  br i1 %3277, label %3283, label %3278

3278:                                             ; preds = %3275
  %3279 = tail call range(i32 0, 33) i32 @llvm.ctpop.i32(i32 %3276)
  %.not13181 = icmp ult i32 %3279, 2
  br i1 %.not13181, label %3283, label %3280

3280:                                             ; preds = %3278
  %3281 = tail call i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fnext_prime0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %3276) #6
  %3282 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3163)
  br label %3283

3283:                                             ; preds = %3278, %3275, %3280
  %.2712518 = phi i32 [ %3164, %3275 ], [ %3282, %3280 ], [ %3164, %3278 ]
  %.2212486 = phi i32 [ 2, %3275 ], [ %3281, %3280 ], [ %3276, %3278 ]
  %.not13182 = icmp ugt i32 %.2212486, %.2712518
  br i1 %.not13182, label %3318, label %3284

3284:                                             ; preds = %3283
  %.not13183 = icmp ult i32 %.2212486, %.2712518
  br i1 %.not13183, label %3285, label %3319

3285:                                             ; preds = %3284
  %3286 = icmp ult i32 %.2712518, 3
  %3287 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3245)
  %3288 = uitofp i32 %3287 to float
  %3289 = tail call float @f32_load(ptr noundef nonnull %8, i64 noundef %3249)
  %3290 = fdiv float %3288, %3289
  %3291 = tail call float @wasm_ceilf(float noundef %3290)
  %3292 = fcmp olt float %3291, 0x41F0000000000000
  %3293 = fcmp oge float %3291, 0.000000e+00
  %3294 = and i1 %3292, %3293
  br i1 %3294, label %3295, label %3303

3295:                                             ; preds = %3285
  %3296 = fcmp uno float %3291, 0.000000e+00
  br i1 %3296, label %3297, label %3298, !prof !20

3297:                                             ; preds = %3295
  tail call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

3298:                                             ; preds = %3295
  %3299 = fcmp ogt float %3291, -1.000000e+00
  br i1 %3299, label %3301, label %3300, !prof !16

3300:                                             ; preds = %3298
  tail call void @wasm_rt_trap(i32 noundef 2) #7
  unreachable

3301:                                             ; preds = %3298
  %3302 = fptoui float %3291 to i32
  br label %3303

3303:                                             ; preds = %3285, %3301
  %.1712558 = phi i32 [ %3302, %3301 ], [ 0, %3285 ]
  %3304 = tail call range(i32 0, 33) i32 @llvm.ctpop.i32(i32 %.2712518)
  %3305 = icmp ugt i32 %3304, 1
  %or.cond13316 = select i1 %3286, i1 true, i1 %3305
  br i1 %or.cond13316, label %3314, label %3306

3306:                                             ; preds = %3303
  %3307 = add i32 %.1712558, -1
  %3308 = tail call range(i32 0, 33) i32 @llvm.ctlz.i32(i32 %3307, i1 false)
  %3309 = sub nsw i32 0, %3308
  %3310 = and i32 %3309, 31
  %3311 = shl nuw i32 1, %3310
  %3312 = icmp ult i32 %.1712558, 2
  %3313 = select i1 %3312, i32 %.1712558, i32 %3311
  br label %3316

3314:                                             ; preds = %3303
  %3315 = tail call i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fnext_prime0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %.1712558) #6
  br label %3316

3316:                                             ; preds = %3314, %3306
  %.512534 = phi i32 [ %3315, %3314 ], [ %3313, %3306 ]
  %3317 = tail call i32 @llvm.umax.i32(i32 %.2212486, i32 %.512534)
  %.not13185 = icmp ugt i32 %.2712518, %3317
  br i1 %.not13185, label %3318, label %3319

3318:                                             ; preds = %3316, %3283
  %.2312487 = phi i32 [ %3317, %3316 ], [ %.2212486, %3283 ]
  tail call void @w2c_hermes_void0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_table0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Funordered_map_hasher0x3Chermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Ahash0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aequal_to0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20true0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Funordered_map_equal0x3Chermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aequal_to0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Ahash0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20true0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x3E0x3E0x3A0x3A_0x5Fdo_rehash0x3Ctrue0x3E0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %3161, i32 noundef %.2312487) #6
  br label %3319

3319:                                             ; preds = %3316, %3284, %3318
  %3320 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3163)
  %3321 = tail call range(i32 0, 33) i32 @llvm.ctpop.i32(i32 %3320)
  %.not13186 = icmp ult i32 %3321, 2
  br i1 %.not13186, label %3322, label %3325

3322:                                             ; preds = %3319
  %3323 = add i32 %3320, -1
  %3324 = and i32 %3323, %.1512556
  br label %3332

3325:                                             ; preds = %3319
  %3326 = icmp ugt i32 %3320, %.1512556
  br i1 %3326, label %3332, label %3327

3327:                                             ; preds = %3325
  %3328 = icmp eq i32 %3320, 0
  br i1 %3328, label %3329, label %3330, !prof !20

3329:                                             ; preds = %3327
  tail call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

3330:                                             ; preds = %3327
  %3331 = urem i32 %.1512556, %3320
  br label %3332

3332:                                             ; preds = %3325, %.loopexit13365, %3330, %3322
  %.1012599 = phi i32 [ %.912598, %.loopexit13365 ], [ %3324, %3322 ], [ %3331, %3330 ], [ %.1512556, %3325 ]
  %.28 = phi i32 [ %3164, %.loopexit13365 ], [ %3320, %3322 ], [ %3320, %3330 ], [ %3320, %3325 ]
  %3333 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3162)
  %3334 = shl i32 %.1012599, 2
  %3335 = add i32 %3333, %3334
  %3336 = zext i32 %3335 to i64
  %3337 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3336)
  %.not13187 = icmp eq i32 %3337, 0
  br i1 %.not13187, label %3338, label %3363

3338:                                             ; preds = %3332
  %3339 = add i32 %2918, 584
  %3340 = zext i32 %3339 to i64
  %3341 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3340)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3235, i32 noundef %3341)
  %3342 = add nuw nsw i64 %3162, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3342, i32 noundef %3233)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3336, i32 noundef %3339)
  %3343 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3235)
  %.not13188 = icmp eq i32 %3343, 0
  br i1 %.not13188, label %3367, label %3344

3344:                                             ; preds = %3338
  %3345 = zext i32 %3343 to i64
  %3346 = add nuw nsw i64 %3345, 4
  %3347 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3346)
  %3348 = tail call range(i32 0, 33) i32 @llvm.ctpop.i32(i32 %.28)
  %.not13189 = icmp ult i32 %3348, 2
  br i1 %.not13189, label %3349, label %3352

3349:                                             ; preds = %3344
  %3350 = add i32 %.28, -1
  %3351 = and i32 %3347, %3350
  br label %3359

3352:                                             ; preds = %3344
  %3353 = icmp ult i32 %3347, %.28
  br i1 %3353, label %3359, label %3354

3354:                                             ; preds = %3352
  %3355 = icmp eq i32 %.28, 0
  br i1 %3355, label %3356, label %3357, !prof !20

3356:                                             ; preds = %3354
  tail call void @wasm_rt_trap(i32 noundef 3) #7
  unreachable

3357:                                             ; preds = %3354
  %3358 = urem i32 %3347, %.28
  br label %3359

3359:                                             ; preds = %3352, %3357, %3349
  %.2412488 = phi i32 [ %3351, %3349 ], [ %3347, %3352 ], [ %3358, %3357 ]
  %3360 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3162)
  %3361 = shl i32 %.2412488, 2
  %3362 = add i32 %3360, %3361
  %.pre13485 = zext i32 %3362 to i64
  br label %3366

3363:                                             ; preds = %3332
  %3364 = zext i32 %3337 to i64
  %3365 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3364)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3235, i32 noundef %3365)
  br label %3366

3366:                                             ; preds = %3363, %3359
  %.pre-phi13486 = phi i64 [ %3364, %3363 ], [ %.pre13485, %3359 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi13486, i32 noundef %3233)
  br label %3367

3367:                                             ; preds = %3338, %3366
  %3368 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3245)
  %3369 = add i32 %3368, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3245, i32 noundef %3369)
  br label %.loopexit13363

.loopexit13363:                                   ; preds = %3223, %3229, %3200, %3206, %3367
  %.1412614 = phi i32 [ %3233, %3367 ], [ %.1212612, %3206 ], [ %.1212612, %3200 ], [ %.1312613, %3229 ], [ %.1312613, %3223 ]
  %.012571 = phi i32 [ 1, %3367 ], [ 0, %3206 ], [ 0, %3200 ], [ 0, %3229 ], [ 0, %3223 ]
  %3370 = add nuw nsw i64 %2921, 12
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %3370, i32 noundef %.012571)
  %3371 = add nuw nsw i64 %2921, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3371, i32 noundef %.1412614)
  %3372 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3371)
  %3373 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3370)
  %.not13190 = icmp eq i32 %3373, 0
  br i1 %.not13190, label %3374, label %3378

3374:                                             ; preds = %.loopexit13363
  %3375 = zext i32 %3372 to i64
  %3376 = add nuw nsw i64 %3375, 20
  %3377 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3376)
  br label %3385

3378:                                             ; preds = %.loopexit13363
  %3379 = zext i32 %2918 to i64
  %3380 = add nuw nsw i64 %3379, 588
  %3381 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3380)
  %3382 = add i32 %3381, -1
  %3383 = zext i32 %3372 to i64
  %3384 = add nuw nsw i64 %3383, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3384, i32 noundef %3382)
  br label %3385

3385:                                             ; preds = %3378, %3374
  %.912528 = phi i32 [ %3377, %3374 ], [ %3382, %3378 ]
  store i32 %2919, ptr %5, align 8, !tbaa !5
  %3386 = uitofp i32 %.912528 to double
  %3387 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralNumber0x28double0x29(ptr noundef %0, i32 noundef %20, double noundef %3386)
  %3388 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3389 = add nuw nsw i64 %2861, 132
  %3390 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3389)
  %.not13191 = icmp ult i32 %3388, %3390
  br i1 %.not13191, label %3394, label %3391

3391:                                             ; preds = %3385
  %3392 = add i32 %2857, -20
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %3392, i32 noundef %2863, i32 noundef 0, i32 noundef 4) #6
  %3393 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  br label %3394

3394:                                             ; preds = %3391, %3385
  %.29 = phi i32 [ %3393, %3391 ], [ %3388, %3385 ]
  %3395 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2864)
  %3396 = shl i32 %.29, 2
  %3397 = add i32 %3395, %3396
  %3398 = zext i32 %3397 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3398, i32 noundef %3387)
  %3399 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3400 = add i32 %3399, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2862, i32 noundef %3400)
  %3401 = zext i32 %20 to i64
  %3402 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3401)
  %3403 = add i32 %3402, 356
  %3404 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3405 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3389)
  %.not13192 = icmp ult i32 %3404, %3405
  br i1 %.not13192, label %3409, label %3406

3406:                                             ; preds = %3394
  %3407 = add i32 %2857, -20
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %3407, i32 noundef %2863, i32 noundef 0, i32 noundef 4) #6
  %3408 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  br label %3409

3409:                                             ; preds = %3406, %3394
  %.30 = phi i32 [ %3408, %3406 ], [ %3404, %3394 ]
  %3410 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2864)
  %3411 = shl i32 %.30, 2
  %3412 = add i32 %3410, %3411
  %3413 = zext i32 %3412 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3413, i32 noundef %3403)
  %3414 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3415 = add i32 %3414, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2862, i32 noundef %3415)
  %3416 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2868)
  %.not13193 = icmp eq i32 %2870, %3416
  br i1 %.not13193, label %3485, label %.preheader13360

.preheader13360:                                  ; preds = %3409
  %3417 = add nuw nsw i64 %2861, 32
  %3418 = add nuw nsw i64 %2861, 96
  %3419 = add i32 %2857, -112
  %3420 = add i32 %2857, -20
  br label %3421

3421:                                             ; preds = %.preheader13360, %3434
  %.2412669 = phi i32 [ %3436, %3434 ], [ 1, %.preheader13360 ]
  %.31 = phi i32 [ %3444, %3434 ], [ %3416, %.preheader13360 ]
  %3422 = zext i32 %.31 to i64
  %3423 = add nuw nsw i64 %3422, 32
  %3424 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3423)
  %3425 = add nuw nsw i64 %3422, 36
  %3426 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3425)
  %3427 = zext i32 %3426 to i64
  %3428 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3427)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3417, i64 noundef %3428)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3418, i64 noundef %3428)
  %3429 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %3419)
  %3430 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3431 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3389)
  %.not13194 = icmp ult i32 %3430, %3431
  br i1 %.not13194, label %3434, label %3432

3432:                                             ; preds = %3421
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %3420, i32 noundef %2863, i32 noundef 0, i32 noundef 4) #6
  %3433 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  br label %3434

3434:                                             ; preds = %3432, %3421
  %.1712641 = phi i32 [ %3433, %3432 ], [ %3430, %3421 ]
  %3435 = icmp eq i32 %3424, %3426
  %3436 = select i1 %3435, i32 %.2412669, i32 0
  %3437 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2864)
  %3438 = shl i32 %.1712641, 2
  %3439 = add i32 %3437, %3438
  %3440 = zext i32 %3439 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3440, i32 noundef %3429)
  %3441 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3442 = add i32 %3441, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2862, i32 noundef %3442)
  %3443 = add nuw nsw i64 %3422, 4
  %3444 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3443)
  %.not13195 = icmp eq i32 %3444, %2870
  br i1 %.not13195, label %3445, label %3421

3445:                                             ; preds = %3434
  %3446 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2864)
  %3447 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3401)
  %.not13196 = icmp eq i32 %3436, 0
  %3448 = select i1 %.not13196, i32 324, i32 356
  %3449 = add i32 %3447, %3448
  %3450 = zext i32 %3446 to i64
  %3451 = add nuw nsw i64 %3450, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3451, i32 noundef %3449)
  br i1 %.not13196, label %3452, label %3491

3452:                                             ; preds = %3445
  %3453 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2868)
  %3454 = icmp eq i32 %3453, %2870
  br i1 %3454, label %3491, label %.preheader13359

.preheader13359:                                  ; preds = %3452
  %3455 = add nuw nsw i64 %2861, 24
  %3456 = add nuw nsw i64 %2861, 88
  %3457 = add i32 %2857, -120
  br label %3458

3458:                                             ; preds = %.preheader13359, %3474
  %.32 = phi i32 [ %3482, %3474 ], [ %3453, %.preheader13359 ]
  %3459 = zext i32 %.32 to i64
  %3460 = add nuw nsw i64 %3459, 32
  %3461 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3460)
  %.not13197 = icmp eq i32 %3461, 0
  br i1 %.not13197, label %3468, label %3462

3462:                                             ; preds = %3458
  %3463 = zext i32 %3461 to i64
  %3464 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3463)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3455, i64 noundef %3464)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3456, i64 noundef %3464)
  %3465 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %20, i32 noundef %3457)
  %3466 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3467 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3389)
  %.not13199 = icmp ult i32 %3466, %3467
  br i1 %.not13199, label %3474, label %.sink.split13587

3468:                                             ; preds = %3458
  %3469 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3401)
  %3470 = add i32 %3469, 268
  %3471 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3472 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3389)
  %.not13198 = icmp ult i32 %3471, %3472
  br i1 %.not13198, label %3474, label %.sink.split13587

.sink.split13587:                                 ; preds = %3468, %3462
  %.2512670.ph = phi i32 [ %3465, %3462 ], [ %3470, %3468 ]
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %3420, i32 noundef %2863, i32 noundef 0, i32 noundef 4) #6
  %3473 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  br label %3474

3474:                                             ; preds = %.sink.split13587, %3468, %3462
  %.1912643.sink = phi i32 [ %3466, %3462 ], [ %3471, %3468 ], [ %3473, %.sink.split13587 ]
  %.2512670 = phi i32 [ %3465, %3462 ], [ %3470, %3468 ], [ %.2512670.ph, %.sink.split13587 ]
  %3475 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2864)
  %3476 = shl i32 %.1912643.sink, 2
  %3477 = add i32 %3475, %3476
  %3478 = zext i32 %3477 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3478, i32 noundef %.2512670)
  %3479 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3480 = add i32 %3479, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2862, i32 noundef %3480)
  %3481 = add nuw nsw i64 %3459, 4
  %3482 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3481)
  %.not13200 = icmp eq i32 %3482, %2870
  br i1 %.not13200, label %3483, label %3458

3483:                                             ; preds = %3474
  %3484 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2864)
  br label %3491

3485:                                             ; preds = %3409
  %3486 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2864)
  %3487 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3401)
  %3488 = add i32 %3487, 356
  %3489 = zext i32 %3486 to i64
  %3490 = add nuw nsw i64 %3489, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3490, i32 noundef %3488)
  br label %3491

3491:                                             ; preds = %3452, %3445, %3485, %3483
  %.2012644 = phi i32 [ %3446, %3445 ], [ %3446, %3452 ], [ %3484, %3483 ], [ %3486, %3485 ]
  %3492 = add nuw nsw i64 %2861, 80
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3492, i32 noundef %.2012644)
  %3493 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2862)
  %3494 = add nuw nsw i64 %2861, 84
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3494, i32 noundef %3493)
  %3495 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3492)
  %3496 = add nuw nsw i64 %2861, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3496, i64 noundef %3495)
  %3497 = add i32 %2857, -128
  %3498 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %0, i32 noundef %1, i32 noundef 39, i32 noundef %3497)
  %3499 = add nuw nsw i64 %2861, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3499, i32 noundef %3498)
  %3500 = add i32 %2857, -72
  %3501 = add nuw nsw i64 %2861, 60
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3501, i32 noundef %3500)
  %3502 = add nuw nsw i64 %2861, 64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3502, i64 noundef 8589934593)
  %3503 = add nuw nsw i64 %2867, 40
  %3504 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3503)
  %3505 = add i32 %2860, 36
  %.not13201 = icmp eq i32 %3504, %3505
  br i1 %.not13201, label %.loopexit13358, label %.preheader13357

.preheader13357:                                  ; preds = %3491
  %3506 = add nuw nsw i64 %2861, 68
  %3507 = add i32 %2857, -84
  br label %3508

3508:                                             ; preds = %.preheader13357, %3514
  %.33 = phi i32 [ %3523, %3514 ], [ %3504, %.preheader13357 ]
  %3509 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %.33, i32 noundef 0)
  %3510 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3502)
  %3511 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3506)
  %.not13202 = icmp ult i32 %3510, %3511
  br i1 %.not13202, label %3514, label %3512

3512:                                             ; preds = %3508
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %3507, i32 noundef %3500, i32 noundef 0, i32 noundef 4) #6
  %3513 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3502)
  br label %3514

3514:                                             ; preds = %3512, %3508
  %.2612671 = phi i32 [ %3513, %3512 ], [ %3510, %3508 ]
  %3515 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3501)
  %3516 = shl i32 %.2612671, 2
  %3517 = add i32 %3515, %3516
  %3518 = zext i32 %3517 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3518, i32 noundef %3509)
  %3519 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3502)
  %3520 = add i32 %3519, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3502, i32 noundef %3520)
  %3521 = zext i32 %.33 to i64
  %3522 = add nuw nsw i64 %3521, 4
  %3523 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3522)
  %.not13203 = icmp eq i32 %3523, %3505
  br i1 %.not13203, label %.loopexit13358, label %3508

.loopexit13358:                                   ; preds = %3514, %3491
  %3524 = add nuw nsw i64 %12, 28
  %3525 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3524)
  %.not13204 = icmp eq i32 %3525, 0
  br i1 %.not13204, label %3538, label %3526

3526:                                             ; preds = %.loopexit13358
  %3527 = zext i32 %3525 to i64
  %3528 = add nuw nsw i64 %3527, 8
  %3529 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3528)
  %.not13205 = icmp eq i32 %3529, 54
  br i1 %.not13205, label %3530, label %3538

3530:                                             ; preds = %3526
  %3531 = add nuw nsw i64 %3527, 28
  %3532 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3531)
  %3533 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %3532, i32 noundef 0)
  %3534 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenMemberExpressionProperty0x28hermes0x3A0x3AESTree0x3A0x3AMemberExpressionLikeNode0x2A0x29(ptr noundef %0, i32 noundef %1, i32 noundef %3525)
  %3535 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef %0, i32 noundef %20, i32 noundef %3533, i32 noundef %3534) #6
  %3536 = add i32 %3535, 8
  %.not13206 = icmp eq i32 %3535, 0
  %3537 = select i1 %.not13206, i32 0, i32 %3536
  br label %3543

3538:                                             ; preds = %3526, %.loopexit13358
  %3539 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3401)
  %3540 = add i32 %3539, 268
  %3541 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3524)
  %3542 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef %0, i32 noundef %1, i32 noundef %3541, i32 noundef 0)
  br label %3543

3543:                                             ; preds = %3538, %3530
  %.2712672 = phi i32 [ %3540, %3538 ], [ %3533, %3530 ]
  %.1912560 = phi i32 [ %3542, %3538 ], [ %3537, %3530 ]
  %3544 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3501)
  %3545 = add nuw nsw i64 %2861, 52
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3545, i64 noundef %3544)
  %3546 = add nuw nsw i64 %2861, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3546, i64 noundef %3544)
  %3547 = add i32 %2857, -136
  %3548 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef %0, i32 noundef %20, i32 noundef 0, i32 noundef %.1912560, i32 noundef %.2712672, i32 noundef %3547) #6
  %3549 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3501)
  %.not13207 = icmp eq i32 %3500, %3549
  br i1 %.not13207, label %3551, label %3550

3550:                                             ; preds = %3543
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %3549) #6
  br label %3551

3551:                                             ; preds = %3550, %3543
  %3552 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2866)
  %.not13208 = icmp eq i32 %3552, 0
  br i1 %.not13208, label %3555, label %3553

3553:                                             ; preds = %3551
  %3554 = add nuw nsw i64 %2861, 116
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3554, i32 noundef %3552)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %3552) #6
  br label %3555

3555:                                             ; preds = %3553, %3551
  %3556 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2864)
  %.not13209 = icmp eq i32 %2863, %3556
  br i1 %.not13209, label %3558, label %3557

3557:                                             ; preds = %3555
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %3556) #6
  br label %3558

3558:                                             ; preds = %3557, %3555
  store i32 %2857, ptr %5, align 8, !tbaa !5
  %3559 = add i32 %3548, 8
  %.not13210 = icmp eq i32 %3548, 0
  %3560 = select i1 %.not13210, i32 0, i32 %3559
  br label %.loopexit13356

3561:                                             ; preds = %2855
  %.not13211 = icmp eq i32 %16, 43
  %or.cond13318 = select i1 %.not, i1 %.not13211, i1 false
  br i1 %or.cond13318, label %3562, label %3908

3562:                                             ; preds = %3561
  %3563 = add nuw nsw i64 %12, 32
  %3564 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3563)
  %.not13212 = icmp eq i32 %3564, 0
  br i1 %.not13212, label %3897, label %3565

3565:                                             ; preds = %3562
  %3566 = load i32, ptr %5, align 8, !tbaa !5
  %3567 = add i32 %3566, -240
  store i32 %3567, ptr %5, align 8, !tbaa !5
  %3568 = zext i32 %20 to i64
  %3569 = add nuw nsw i64 %3568, 8
  %3570 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3569)
  %3571 = zext i32 %3570 to i64
  %3572 = add nuw nsw i64 %3571, 44
  %3573 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3572)
  %3574 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3573) #6
  %3575 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3573) #6
  %3576 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3573) #6
  %3577 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3573) #6
  %3578 = add nuw nsw i64 %12, 28
  %3579 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3578)
  %3580 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3579, i32 noundef 0)
  %3581 = load i32, ptr %5, align 8, !tbaa !5
  %3582 = add i32 %3581, -96
  store i32 %3582, ptr %5, align 8, !tbaa !5
  %3583 = zext i32 %3582 to i64
  %3584 = add nuw nsw i64 %3583, 92
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3584, i32 noundef 6)
  %3585 = add nuw nsw i64 %3583, 88
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3585, i32 noundef 43324)
  %3586 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3585)
  %3587 = add nuw nsw i64 %3583, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3587, i64 noundef %3586)
  %3588 = add i32 %3581, -48
  %3589 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryLoadGlobalPropertyInst0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3588)
  %3590 = add nuw nsw i64 %3583, 80
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3590, i32 noundef 36863)
  %3591 = add nuw nsw i64 %3583, 84
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3591, i32 noundef 8)
  %3592 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3590)
  %3593 = add nuw nsw i64 %3583, 40
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3593, i64 noundef %3592)
  %3594 = add i32 %3589, 8
  %.not13214 = icmp eq i32 %3589, 0
  %3595 = select i1 %.not13214, i32 0, i32 %3594
  %3596 = add i32 %3581, -56
  %3597 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3595, i32 noundef %3596) #6
  %3598 = add i32 %3597, 8
  %.not13215 = icmp eq i32 %3597, 0
  %3599 = select i1 %.not13215, i32 0, i32 %3598
  %3600 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3580, i32 noundef %3599) #6
  %3601 = add nuw nsw i64 %3583, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3601, i64 noundef 0)
  %3602 = add nuw nsw i64 %3583, 64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3602, i64 noundef 0)
  %3603 = add i32 %3600, 8
  %.not13216 = icmp eq i32 %3600, 0
  %3604 = select i1 %.not13216, i32 0, i32 %3603
  %3605 = add i32 %3581, -64
  %3606 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef 0, i32 noundef %3604, i32 noundef %3580, i32 noundef %3605) #6
  %3607 = add nuw nsw i64 %3583, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3607, i32 noundef 25)
  %3608 = add nuw nsw i64 %3583, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3608, i32 noundef 31264)
  %3609 = add i32 %3606, 8
  %.not13217 = icmp eq i32 %3606, 0
  %3610 = select i1 %.not13217, i32 0, i32 %3609
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3590, i32 noundef %3610)
  %3611 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3608)
  %3612 = add nuw nsw i64 %3583, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3612, i64 noundef %3611)
  %3613 = add i32 %3581, -72
  %3614 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3613)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3591, i32 noundef %3614)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3584, i32 noundef 2)
  %3615 = add i32 %3581, -16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3585, i32 noundef %3615)
  %3616 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3585)
  %3617 = add nuw nsw i64 %3583, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3617, i64 noundef %3616)
  %3618 = add i32 %3581, -80
  %3619 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef 40, i32 noundef %3618) #6
  %3620 = add nuw nsw i64 %3583, 60
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3620, i32 noundef 4)
  %3621 = add nuw nsw i64 %3583, 56
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3621, i32 noundef 18703)
  %3622 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3621)
  %3623 = add nuw nsw i64 %3583, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3623, i64 noundef %3622)
  %3624 = add i32 %3581, -88
  %3625 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3610, i32 noundef %3624) #6
  %3626 = zext i32 %3567 to i64
  %3627 = add nuw nsw i64 %3626, 128
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3627, i32 noundef %3610)
  %3628 = add i32 %3625, 8
  %.not13218 = icmp eq i32 %3625, 0
  %3629 = select i1 %.not13218, i32 0, i32 %3628
  %3630 = add nuw nsw i64 %3626, 132
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3630, i32 noundef %3629)
  store i32 %3581, ptr %5, align 8, !tbaa !5
  %3631 = add nuw nsw i64 %9, 40
  %3632 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3631)
  %3633 = add nuw nsw i64 %3626, 140
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3633, i32 noundef 8)
  %3634 = add nuw nsw i64 %3626, 136
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3634, i32 noundef 53243)
  %3635 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3634)
  %3636 = add nuw nsw i64 %3626, 104
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3636, i64 noundef %3635)
  %3637 = add i32 %3566, -136
  %3638 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AgenAnonymousLabelName0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %3632, i32 noundef %3637)
  %3639 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3638) #6
  %3640 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3568)
  %3641 = add i32 %3640, 268
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3641, i32 noundef %3639)
  %3642 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3631)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3633, i32 noundef 8)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3634, i32 noundef 40450)
  %3643 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3634)
  %3644 = add nuw nsw i64 %3626, 96
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3644, i64 noundef %3643)
  %3645 = add i32 %3566, -144
  %3646 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AgenAnonymousLabelName0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %3642, i32 noundef %3645)
  %3647 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3646) #6
  %3648 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3631)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3633, i32 noundef 6)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3634, i32 noundef 22347)
  %3649 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3634)
  %3650 = add nuw nsw i64 %3626, 88
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3650, i64 noundef %3649)
  %3651 = add i32 %3566, -152
  %3652 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AgenAnonymousLabelName0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %3648, i32 noundef %3651)
  %3653 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3652) #6
  %3654 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3574) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3574)
  %3655 = add i32 %3574, 36
  %.not13219 = icmp eq i32 %3574, 0
  %3656 = select i1 %.not13219, i32 0, i32 %3655
  %3657 = add nuw nsw i64 %3568, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3656)
  %3658 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3627)
  %3659 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3630)
  %3660 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadStackInst0x28hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3639) #6
  %3661 = add nuw nsw i64 %3626, 124
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3661, i32 noundef 1)
  %3662 = add i32 %3660, 8
  %.not13220 = icmp eq i32 %3660, 0
  %3663 = select i1 %.not13220, i32 0, i32 %3662
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3634, i32 noundef %3663)
  %3664 = add i32 %3566, -104
  %3665 = add nuw nsw i64 %3626, 120
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3665, i32 noundef %3664)
  %3666 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3665)
  %3667 = add nuw nsw i64 %3626, 80
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3667, i64 noundef %3666)
  %3668 = add i32 %3566, -160
  %3669 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef 0, i32 noundef %3659, i32 noundef %3658, i32 noundef %3668) #6
  %3670 = add nuw nsw i64 %3626, 116
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3670, i32 noundef 40)
  %3671 = add nuw nsw i64 %3626, 112
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3671, i32 noundef 31418)
  %3672 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3671)
  %3673 = add nuw nsw i64 %3626, 72
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3673, i64 noundef %3672)
  %3674 = add i32 %3669, 8
  %.not13221 = icmp eq i32 %3669, 0
  %3675 = select i1 %.not13221, i32 0, i32 %3674
  %3676 = add i32 %3566, -168
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitEnsureObject0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3675, i32 noundef %3676)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3675, i32 noundef %3653)
  %3677 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitIteratorCompleteSlow0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3675)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3677, i32 noundef %3576, i32 noundef %3575) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3575)
  %3678 = add i32 %3575, 36
  %.not13222 = icmp eq i32 %3575, 0
  %3679 = select i1 %.not13222, i32 0, i32 %3678
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3679)
  %3680 = add nuw nsw i64 %9, 12
  %3681 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3680)
  %3682 = zext i32 %3681 to i64
  %3683 = add nuw nsw i64 %3682, 44
  %3684 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3683)
  %3685 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3684) #6
  br i1 %.not13219, label %3686, label %3688

3686:                                             ; preds = %3565
  %3687 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3684) #6
  br label %3688

3688:                                             ; preds = %3686, %3565
  %.34 = phi i32 [ %3687, %3686 ], [ %3574, %3565 ]
  %3689 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3684) #6
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryStartInst0x28hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3689, i32 noundef %3685)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3689)
  %3690 = add i32 %3689, 36
  %.not13223 = icmp eq i32 %3689, 0
  %3691 = select i1 %.not13223, i32 0, i32 %3690
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3691)
  %3692 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3631)
  %3693 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 20) #6
  %3694 = zext i32 %3693 to i64
  %3695 = add nuw nsw i64 %3694, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3695, i32 noundef %1)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3694, i32 noundef 111668)
  %3696 = add nuw nsw i64 %3694, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3696, i32 noundef %3639)
  %3697 = add nuw nsw i64 %3694, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3697, i32 noundef %3577)
  %3698 = add i32 %3566, -112
  %3699 = add nuw nsw i64 %3694, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3699, i32 noundef %3698)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3634, i32 noundef %3692)
  %3700 = zext i32 %3692 to i64
  %3701 = add nuw nsw i64 %3700, 64
  %3702 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3701)
  %3703 = add nuw nsw i64 %3626, 168
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3703, i32 noundef %3693)
  %3704 = add nuw nsw i64 %3626, 148
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3704, i32 noundef 0)
  %3705 = add nuw nsw i64 %3626, 144
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3705, i32 noundef %2)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3633, i32 noundef %3702)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3701, i32 noundef %3664)
  %3706 = add nuw nsw i64 %3626, 64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3706, i64 noundef 0)
  %3707 = add nuw nsw i64 %3626, 232
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3707, i64 noundef 0)
  %3708 = add i32 %3566, -176
  %3709 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef 43, i32 noundef %3708)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateSaveAndYieldInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3675, i32 noundef %3577)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3577)
  %3710 = add i32 %3577, 36
  %.not13224 = icmp eq i32 %3577, 0
  %3711 = select i1 %.not13224, i32 0, i32 %3710
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3711)
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenResumeGenerator0x28hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AGenFinally0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef 1, i32 noundef %3647, i32 noundef %3574, i32 noundef %3639)
  %3712 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3680)
  %3713 = zext i32 %3712 to i64
  %3714 = add nuw nsw i64 %3713, 44
  %3715 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3714)
  %3716 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3715) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3716)
  %3717 = add i32 %3716, 36
  %.not13225 = icmp eq i32 %3716, 0
  %3718 = select i1 %.not13225, i32 0, i32 %3717
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3718)
  %3719 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3634)
  %3720 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3633)
  %3721 = zext i32 %3719 to i64
  %3722 = add nuw nsw i64 %3721, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3722, i32 noundef %3720)
  %3723 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3703)
  %3724 = add i32 %3566, -88
  %3725 = icmp eq i32 %3723, %3724
  br i1 %3725, label %3726, label %3728

3726:                                             ; preds = %3688
  %3727 = add nuw nsw i64 %3626, 152
  br label %3731

3728:                                             ; preds = %3688
  %.not13226 = icmp eq i32 %3723, 0
  br i1 %.not13226, label %3757, label %3729

3729:                                             ; preds = %3728
  %3730 = zext i32 %3723 to i64
  br label %3731

3731:                                             ; preds = %3729, %3726
  %.sink13585 = phi i64 [ %3730, %3729 ], [ %3727, %3726 ]
  %.sink13584 = phi i32 [ 20, %3729 ], [ 16, %3726 ]
  %3732 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.sink13585)
  %3733 = add i32 %3732, %.sink13584
  %3734 = zext i32 %3733 to i64
  %3735 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3734)
  %3736 = getelementptr inbounds i8, ptr %0, i64 80
  %3737 = getelementptr inbounds i8, ptr %0, i64 92
  %3738 = load i32, ptr %3737, align 4, !tbaa !15
  %3739 = icmp ult i32 %3735, %3738
  br i1 %3739, label %3740, label %.critedge13320, !prof !16

3740:                                             ; preds = %3731
  %3741 = load ptr, ptr %3736, align 8, !tbaa !17
  %3742 = zext i32 %3735 to i64
  %3743 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3741, i64 %3742
  %3744 = getelementptr inbounds i8, ptr %3743, i64 8
  %3745 = load ptr, ptr %3744, align 8, !tbaa !18
  %.not13227 = icmp eq ptr %3745, null
  br i1 %.not13227, label %.critedge13320, label %3746, !prof !20

3746:                                             ; preds = %3740
  %3747 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %3748 = load ptr, ptr %3743, align 8, !tbaa !22
  %3749 = tail call zeroext i1 @func_types_eq(ptr noundef %3747, ptr noundef %3748)
  br i1 %3749, label %3750, label %.critedge13320, !prof !16

.critedge13320:                                   ; preds = %3740, %3731, %3746
  tail call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

3750:                                             ; preds = %3746
  %3751 = load ptr, ptr %3736, align 8, !tbaa !17
  %3752 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3751, i64 %3742
  %3753 = getelementptr inbounds i8, ptr %3752, i64 8
  %3754 = load ptr, ptr %3753, align 8, !tbaa !18
  %3755 = getelementptr inbounds i8, ptr %3752, i64 16
  %3756 = load ptr, ptr %3755, align 8, !tbaa !23
  tail call void %3754(ptr noundef %3756, i32 noundef %3723) #6
  br label %3757

3757:                                             ; preds = %3728, %3750
  %3758 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3684) #6
  %3759 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3758) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3758)
  %3760 = add i32 %3758, 36
  %.not13228 = icmp eq i32 %3758, 0
  %3761 = select i1 %.not13228, i32 0, i32 %3760
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3761)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryEndInst0x280x29(ptr noundef nonnull %0, i32 noundef %20)
  %3762 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %.34) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3685)
  %3763 = add i32 %3685, 36
  %.not13229 = icmp eq i32 %3685, 0
  %3764 = select i1 %.not13229, i32 0, i32 %3763
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3764)
  %3765 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCatchInst0x280x29(ptr noundef nonnull %0, i32 noundef %20) #6
  %3766 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3680)
  %3767 = zext i32 %3766 to i64
  %3768 = add nuw nsw i64 %3767, 44
  %3769 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3768)
  %3770 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3769) #6
  %3771 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3769) #6
  %3772 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3769) #6
  %3773 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3769) #6
  %3774 = add nuw nsw i64 %3626, 228
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3774, i32 noundef 5)
  %3775 = add nuw nsw i64 %3626, 224
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3775, i32 noundef 18189)
  %3776 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3627)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3707, i32 noundef %3776)
  %3777 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3775)
  %3778 = add nuw nsw i64 %3626, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3778, i64 noundef %3777)
  %3779 = add i32 %3566, -184
  %3780 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3779)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3633, i32 noundef 2)
  %3781 = add nuw nsw i64 %3626, 236
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3781, i32 noundef %3780)
  %3782 = add i32 %3566, -8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3634, i32 noundef %3782)
  %3783 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3634)
  %3784 = add nuw nsw i64 %3626, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3784, i64 noundef %3783)
  %3785 = add i32 %3566, -192
  %3786 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef 41, i32 noundef %3785)
  %3787 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3568)
  %3788 = add i32 %3787, 268
  %3789 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCompareBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3786, i32 noundef %3788, i32 noundef 3, i32 noundef %3771, i32 noundef %3770) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3770)
  %3790 = add i32 %3770, 36
  %.not13230 = icmp eq i32 %3770, 0
  %3791 = select i1 %.not13230, i32 0, i32 %3790
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3791)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3781, i32 noundef 1)
  %3792 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3627)
  %3793 = add i32 %3765, 8
  %.not13231 = icmp eq i32 %3765, 0
  %3794 = select i1 %.not13231, i32 0, i32 %3793
  %3795 = add nuw nsw i64 %3626, 208
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3795, i32 noundef %3794)
  %3796 = add i32 %3566, -32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3707, i32 noundef %3796)
  %3797 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3707)
  %3798 = add nuw nsw i64 %3626, 40
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3798, i64 noundef %3797)
  %3799 = add i32 %3566, -200
  %3800 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef 0, i32 noundef %3786, i32 noundef %3792, i32 noundef %3799) #6
  %3801 = add nuw nsw i64 %3626, 220
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3801, i32 noundef 41)
  %3802 = add nuw nsw i64 %3626, 216
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3802, i32 noundef 31376)
  %3803 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3802)
  %3804 = add nuw nsw i64 %3626, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3804, i64 noundef %3803)
  %3805 = add i32 %3800, 8
  %.not13232 = icmp eq i32 %3800, 0
  %3806 = select i1 %.not13232, i32 0, i32 %3805
  %3807 = add i32 %3566, -208
  tail call void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitEnsureObject0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3806, i32 noundef %3807)
  %3808 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitIteratorCompleteSlow0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3806)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3808, i32 noundef %3772, i32 noundef %3773) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3772)
  %3809 = add i32 %3772, 36
  %.not13233 = icmp eq i32 %3772, 0
  %3810 = select i1 %.not13233, i32 0, i32 %3809
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3810)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3806, i32 noundef %3653)
  %3811 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3576) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3773)
  %3812 = add i32 %3773, 36
  %.not13234 = icmp eq i32 %3773, 0
  %3813 = select i1 %.not13234, i32 0, i32 %3812
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3813)
  %3814 = add nuw nsw i64 %3626, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3814, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3795, i64 noundef 0)
  %3815 = add i32 %3566, -216
  %3816 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef 43, i32 noundef %3815)
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateSaveAndYieldInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3806, i32 noundef %3577)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3771)
  %3817 = add i32 %3771, 36
  %.not13235 = icmp eq i32 %3771, 0
  %3818 = select i1 %.not13235, i32 0, i32 %3817
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3818)
  %3819 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3627)
  %3820 = add nuw nsw i64 %3626, 200
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3820, i64 noundef %3819)
  %3821 = add nuw nsw i64 %3626, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3821, i64 noundef %3819)
  %3822 = load i32, ptr %5, align 8, !tbaa !5
  %3823 = add i32 %3822, -96
  store i32 %3823, ptr %5, align 8, !tbaa !5
  %3824 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3680)
  %3825 = zext i32 %3824 to i64
  %3826 = add nuw nsw i64 %3825, 44
  %3827 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3826)
  %3828 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3827) #6
  %3829 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3680)
  %3830 = zext i32 %3829 to i64
  %3831 = add nuw nsw i64 %3830, 44
  %3832 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3831)
  %3833 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3832) #6
  %3834 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3821)
  %3835 = zext i32 %3823 to i64
  %3836 = add nuw nsw i64 %3835, 68
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3836, i32 noundef 6)
  %3837 = add nuw nsw i64 %3835, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3837, i32 noundef 40443)
  %3838 = add nuw nsw i64 %3835, 80
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3838, i32 noundef %3834)
  %3839 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3837)
  %3840 = add nuw nsw i64 %3835, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3840, i64 noundef %3839)
  %3841 = add i32 %3822, -48
  %3842 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3841)
  %3843 = add nuw nsw i64 %3835, 84
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3843, i32 noundef %3842)
  %3844 = add nuw nsw i64 %3835, 92
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3844, i32 noundef 2)
  %3845 = add i32 %3822, -16
  %3846 = add nuw nsw i64 %3835, 88
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3846, i32 noundef %3845)
  %3847 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3846)
  %3848 = add nuw nsw i64 %3835, 40
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3848, i64 noundef %3847)
  %3849 = add i32 %3822, -56
  %3850 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef 41, i32 noundef %3849) #6
  %3851 = add i32 %3850, 8
  %.not13236 = icmp eq i32 %3850, 0
  %3852 = select i1 %.not13236, i32 0, i32 %3851
  %3853 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3568)
  %3854 = add i32 %3853, 268
  %3855 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCompareBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3852, i32 noundef %3854, i32 noundef 3, i32 noundef %3833, i32 noundef %3828) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3828)
  %3856 = add i32 %3828, 36
  %.not13237 = icmp eq i32 %3828, 0
  %3857 = select i1 %.not13237, i32 0, i32 %3856
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3857)
  %3858 = add nuw nsw i64 %3835, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3858, i64 noundef 0)
  %3859 = add nuw nsw i64 %3835, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3859, i64 noundef 0)
  %3860 = add i32 %3822, -64
  %3861 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef 0, i32 noundef %3852, i32 noundef %3834, i32 noundef %3860) #6
  %3862 = add nuw nsw i64 %3835, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3862, i32 noundef 42)
  %3863 = add nuw nsw i64 %3835, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3863, i32 noundef 31459)
  %3864 = add i32 %3861, 8
  %.not13238 = icmp eq i32 %3861, 0
  %3865 = select i1 %.not13238, i32 0, i32 %3864
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3838, i32 noundef %3865)
  %3866 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3863)
  %3867 = add nuw nsw i64 %3835, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3867, i64 noundef %3866)
  %3868 = add i32 %3822, -72
  %3869 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3868)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3843, i32 noundef %3869)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3844, i32 noundef 2)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3846, i32 noundef %3845)
  %3870 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3846)
  %3871 = add nuw nsw i64 %3835, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3871, i64 noundef %3870)
  %3872 = add i32 %3822, -80
  %3873 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef 40, i32 noundef %3872) #6
  %3874 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3833) #6
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3833)
  %3875 = add i32 %3833, 36
  %.not13239 = icmp eq i32 %3833, 0
  %3876 = select i1 %.not13239, i32 0, i32 %3875
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3876)
  store i32 %3822, ptr %5, align 8, !tbaa !5
  %3877 = add nuw nsw i64 %3626, 184
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3877, i32 noundef 43)
  %3878 = add nuw nsw i64 %3626, 180
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3878, i32 noundef 52878)
  %3879 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3878)
  %3880 = add nuw nsw i64 %3626, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3880, i64 noundef %3879)
  %3881 = add i32 %3566, -232
  %3882 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3881)
  %3883 = add nuw nsw i64 %3626, 196
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3883, i32 noundef 1)
  %3884 = add nuw nsw i64 %3626, 188
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3884, i32 noundef %3882)
  %3885 = add i32 %3566, -52
  %3886 = add nuw nsw i64 %3626, 192
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3886, i32 noundef %3885)
  %3887 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3886)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3626, i64 noundef %3887)
  %3888 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef 42, i32 noundef %3567)
  %3889 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3568)
  %3890 = add i32 %3889, 268
  tail call void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateThrowInst0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3890)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3569, i32 noundef %3576)
  %3891 = add i32 %3576, 36
  %.not13240 = icmp eq i32 %3576, 0
  %3892 = select i1 %.not13240, i32 0, i32 %3891
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3892)
  %3893 = tail call i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadStackInst0x28hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef nonnull %0, i32 noundef %20, i32 noundef %3653) #6
  %3894 = add i32 %3893, 8
  %.not13241 = icmp eq i32 %3893, 0
  %3895 = select i1 %.not13241, i32 0, i32 %3894
  %3896 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitIteratorValueSlow0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3895)
  store i32 %3566, ptr %5, align 8, !tbaa !5
  br label %.loopexit13356

3897:                                             ; preds = %3562
  %3898 = add nuw nsw i64 %12, 28
  %3899 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3898)
  %.not13213 = icmp eq i32 %3899, 0
  br i1 %.not13213, label %3903, label %3900

3900:                                             ; preds = %3897
  %3901 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3899, i32 noundef 0)
  %3902 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenYieldOrAwaitExpr0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3901)
  br label %.loopexit13356

3903:                                             ; preds = %3897
  %3904 = add nuw nsw i64 %9, 4
  %3905 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3904)
  %3906 = add i32 %3905, 268
  %3907 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenYieldOrAwaitExpr0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3906)
  br label %.loopexit13356

3908:                                             ; preds = %3561
  %.not13242 = icmp eq i32 %16, 44
  %or.cond13322 = select i1 %.not, i1 %.not13242, i1 false
  br i1 %or.cond13322, label %3909, label %3914

3909:                                             ; preds = %3908
  %3910 = add nuw nsw i64 %12, 28
  %3911 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3910)
  %3912 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpression0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3911, i32 noundef 0)
  %3913 = tail call i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenYieldOrAwaitExpr0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %3912)
  br label %.loopexit13356

3914:                                             ; preds = %3908
  %3915 = zext i32 %20 to i64
  %3916 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3915)
  %3917 = zext i32 %3916 to i64
  %3918 = add nuw nsw i64 %3917, 28
  %3919 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3918)
  %3920 = zext i32 %3919 to i64
  %3921 = add nuw nsw i64 %3920, 72
  %3922 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3921)
  %3923 = add nuw nsw i64 %12, 16
  %3924 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3923)
  %3925 = zext i32 %7 to i64
  %3926 = add nuw nsw i64 %3925, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3926, i32 noundef 54169)
  %3927 = add nuw nsw i64 %3925, 28
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %3927, i32 noundef 259)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3925, i64 noundef %3924)
  %3928 = add nuw nsw i64 %3925, 40
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3928, i64 noundef %3924)
  %3929 = add i32 %6, -28
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMRange0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef nonnull %0, i32 noundef %3922, i32 noundef 0, i32 noundef %7, i32 noundef %3929, i32 noundef 0)
  %3930 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3915)
  %3931 = add i32 %3930, 268
  br label %.loopexit13356

.loopexit13356:                                   ; preds = %.preheader13355, %2739, %2121, %3900, %3903, %2125, %3914, %3909, %3757, %3558, %2854, %2735, %2636, %2569, %2425, %2099, %2091, %2078, %1921, %1782, %.loopexit13336, %1124, %1118, %1105, %1103, %974, %972, %759, %341, %306, %298, %295, %27, %22, %17
  %.2112562 = phi i32 [ %25, %22 ], [ %2098, %2091 ], [ %2101, %2099 ], [ %3931, %3914 ], [ %3913, %3909 ], [ %3896, %3757 ], [ %3902, %3900 ], [ %3907, %3903 ], [ %3560, %3558 ], [ %.2212513, %2854 ], [ %2737, %2735 ], [ %2640, %2636 ], [ %.1212553, %2569 ], [ %2392, %2425 ], [ %2130, %2125 ], [ %.1012551, %2078 ], [ %.2012511, %1921 ], [ %1794, %1782 ], [ %1737, %.loopexit13336 ], [ %1126, %1124 ], [ %1122, %1118 ], [ %1116, %1105 ], [ %.712548, %1103 ], [ %975, %974 ], [ %.512546, %972 ], [ %.712652, %759 ], [ %.412468, %341 ], [ %309, %306 ], [ %304, %298 ], [ %296, %295 ], [ %36, %27 ], [ %18, %17 ], [ %.1112552, %2121 ], [ %2742, %2739 ], [ %2746, %.preheader13355 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %10, i32 noundef %11)
  store i32 %6, ptr %5, align 8, !tbaa !5
  ret i32 %.2112562
}

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenIdentifierExpression0x28hermes0x3A0x3AESTree0x3A0x3AIdentifierNode0x2A0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AModule0x3A0x3AgetLiteralString0x28hermes0x3A0x3AIdentifier0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AconvertUTF16ToUTF8WithSingleSurrogates0x28std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

declare i32 @w2c_hermes_bool0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x3E0x2C0x20llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x3E0x3A0x3ALookupBucketFor0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x3E0x28llvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AArrayRef0x3Cchar16_t0x3E0x2C0x20unsigned0x20int0x3E0x20const0x2A0x260x290x20const(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralNumber0x28double0x29(ptr noundef, i32 noundef, double noundef) local_unnamed_addr #2

; Function Attrs: inlinehint nounwind uwtable
declare hidden i32 @i32_load8_s(ptr noundef, i64 noundef) local_unnamed_addr #0

declare i32 @w2c_hermes_0x5F_memcpy(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateHBCAllocObjectFromBufferInst0x28llvh0x3A0x3ASmallVector0x3Cstd0x3A0x3A_0x5F20x3A0x3Apair0x3Chermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x3E0x2C0x204u0x3E0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallBuiltinInst0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: inlinehint nounwind uwtable
declare hidden double @f64_load(ptr noundef, i64 noundef) local_unnamed_addr #0

declare void @w2c_hermes_llvh0x3A0x3AFoldingSetNodeID0x3A0x3AAddPointer0x28void0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_llvh0x3A0x3AFoldingSetBase0x3A0x3AFindNodeOrInsertPos0x28llvh0x3A0x3AFoldingSetNodeID0x20const0x260x2C0x20void0x2A0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare void @w2c_hermes_llvh0x3A0x3AFoldingSetBase0x3A0x3AInsertNode0x28llvh0x3A0x3AFoldingSetBase0x3A0x3ANode0x2A0x2C0x20void0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AcreateLRef0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsVariable0x280x290x20const(ptr noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AcastAsGlobalObjectProperty0x280x290x20const(ptr noundef, i32 noundef) local_unnamed_addr #1

declare void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_strlen(ptr noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_memcmp(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBasicBlock0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3ALReference0x3A0x3AemitLoad0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #1

declare void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCondBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBinaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateBranchInst0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreatePhiInst0x28llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3AValue0x2A0x2C0x208u0x3E0x20const0x260x2C0x20llvh0x3A0x3ASmallVector0x3Chermes0x3A0x3ABasicBlock0x2A0x2C0x208u0x3E0x20const0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: inlinehint nounwind uwtable
declare hidden void @i32_store16(ptr noundef, i64 noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenMemberExpressionProperty0x28hermes0x3A0x3AESTree0x3A0x3AMemberExpressionLikeNode0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalMemberExpression0x28hermes0x3A0x3AESTree0x3A0x3AOptionalMemberExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AMemberExpressionOperation0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitCall0x28hermes0x3A0x3AESTree0x3A0x3ACallExpressionLikeNode0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenOptionalCallExpr0x28hermes0x3A0x3AESTree0x3A0x3AOptionalCallExpressionNode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenArrayFromElements0x28llvh0x3A0x3Asimple_ilist0x3Chermes0x3A0x3AESTree0x3A0x3ANode0x3E0x260x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenBuiltinCall0x28hermes0x3A0x3ABuiltinMethod0x3A0x3AEnum0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_0x5F_memset(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AnumberToString0x28double0x2C0x20char0x2A0x2C0x20unsigned0x20long0x29(ptr noundef, double noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_llvh0x3A0x3AStringMap0x3Chermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenObjectExpr0x28hermes0x3A0x3AESTree0x3A0x3AObjectExpressionNode0x2A0x290x3A0x3APropertyValue0x2C0x20llvh0x3A0x3AMallocAllocator0x3E0x3A0x3Aoperator0x5B0x5D0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i64 noundef) local_unnamed_addr #1

declare void @w2c_hermes_llvh0x3A0x3ATwine0x3A0x3Astr0x280x290x20const(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_llvh0x3A0x3AStringMapImpl0x3A0x3ALookupBucketFor0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_dlmalloc(ptr noundef, i32 noundef) local_unnamed_addr #1

declare void @w2c_hermes_llvh0x3A0x3Areport_bad_alloc_error0x28char0x20const0x2A0x2C0x20bool0x29(ptr noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_llvh0x3A0x3AStringMapImpl0x3A0x3ARehashTable0x28unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocObjectInst0x28unsigned0x20int0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreGetterSetterInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreNewOwnPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ALiteral0x2A0x2C0x20hermes0x3A0x3AIRBuilder0x3A0x3APropEnumerable0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3A0x3Ainsert0x28unsigned0x20long0x2C0x20char0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateIdentifier0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare void @w2c_hermes_abort(ptr noundef) local_unnamed_addr #1

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

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AgenAnonymousLabelName0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateAllocStackInst0x28hermes0x3A0x3AIdentifier0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateStoreStackInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadStackInst0x28hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3ABinaryOperatorInst0x3A0x3AparseOperator0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AUnaryOperatorInst0x3A0x3AparseOperator0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateDeletePropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AgetLiteralString0x28hermes0x3A0x3AIdentifier0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateUnaryOperatorInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AUnaryOperatorInst0x3A0x3AOpKind0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadFrameInst0x28hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateGetNewTargetInst0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AnewDeclarativeEnvironment0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AInternalIdentifierMaker0x3A0x3Anext0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateVariable0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20hermes0x3A0x3AJavaScriptDeclKind0x2C0x20hermes0x3A0x3AIdentifier0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AIdentifier0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AIdentifier0x20const0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AGlobalObjectProperty0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AIdentifier0x20const0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenAsyncFunction0x28hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenGeneratorFunction0x28hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenES5Function0x28hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AVariable0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCreateFunctionInst0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3AScopeCreationInst0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitStore0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: inlinehint nounwind uwtable
declare hidden zeroext i1 @func_types_eq(ptr noundef, ptr noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenAnonymousFunctionNameIfNeeded0x28hermes0x3A0x3AIdentifier0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateFunction0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20hermes0x3A0x3AIdentifier0x2C0x20hermes0x3A0x3AFunction0x3A0x3ADefinitionKind0x2C0x20bool0x2C0x20hermes0x3A0x3ASourceVisibility0x2C0x20llvh0x3A0x3ASMRange0x2C0x20bool0x2C0x20hermes0x3A0x3AFunction0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3AFunctionContext0x28hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x2A0x2C0x20hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3Asem0x3A0x3AFunctionInfo0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitFunctionPreamble0x28hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitTopLevelDeclarations0x28hermes0x3A0x3AESTree0x3A0x3AFunctionLikeNode0x2A0x2C0x20hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3ADoEmitParameters0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenFunctionBody0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateReturnInst0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AeraseFromParent0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AFunctionContext0x3A0x3A0x7EFunctionContext0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenExpressionBranch0x28hermes0x3A0x3AESTree0x3A0x3ANode0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryLoadGlobalPropertyInst0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateLoadPropertyInst0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCallInst0x28hermes0x3A0x3ALiteralString0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3AValue0x2A0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef) local_unnamed_addr #1

declare i64 @w2c_hermes_llvh0x3A0x3Ahashing0x3A0x3Adetail0x3A0x3Ahash_short0x28char0x20const0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x20long0x29(ptr noundef, i32 noundef, i32 noundef, i64 noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i32 @llvm.ctpop.i32(i32) #4

; Function Attrs: inlinehint nounwind uwtable
declare hidden float @f32_load(ptr noundef, i64 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden float @wasm_ceilf(float noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fnext_prime0x28unsigned0x20long0x29(ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i32 @llvm.ctlz.i32(i32, i1 immarg) #4

declare void @w2c_hermes_void0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_table0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Funordered_map_hasher0x3Chermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Ahash0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aequal_to0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20true0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Funordered_map_equal0x3Chermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aequal_to0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Ahash0x3Chermes0x3A0x3AFunction0x2A0x3E0x2C0x20true0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fhash_value_type0x3Chermes0x3A0x3AFunction0x2A0x2C0x20llvh0x3A0x3ASmallPtrSet0x3Chermes0x3A0x3AFunction0x2A0x2C0x202u0x3E0x3E0x3E0x3E0x3A0x3A_0x5Fdo_rehash0x3Ctrue0x3E0x28unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitEnsureObject0x28hermes0x3A0x3AValue0x2A0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitIteratorCompleteSlow0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryStartInst0x28hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateSaveAndYieldInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenResumeGenerator0x28hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AGenFinally0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3AAllocStackInst0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateTryEndInst0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCatchInst0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateCompareBranchInst0x28hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3AValue0x2A0x2C0x20hermes0x3A0x3ABinaryOperatorInst0x3A0x3AOpKind0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x2C0x20hermes0x3A0x3ABasicBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3AIRBuilder0x3A0x3AcreateThrowInst0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AemitIteratorValueSlow0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Airgen0x3A0x3AESTreeIRGen0x3A0x3AgenYieldOrAwaitExpr0x28hermes0x3A0x3AValue0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

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

attributes #0 = { 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 #1 = { "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 = { 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 = { 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 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #5 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #6 = { nounwind }
attributes #7 = { 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}
!15 = !{!6, !10, i64 92}
!16 = !{!"branch_weights", !"expected", i32 2000, i32 1}
!17 = !{!6, !7, i64 80}
!18 = !{!19, !7, i64 8}
!19 = !{!"", !7, i64 0, !7, i64 8, !7, i64 16}
!20 = !{!"branch_weights", !"expected", i32 1, i32 2000}
!21 = !{!7, !7, i64 0}
!22 = !{!19, !7, i64 0}
!23 = !{!19, !7, i64 16}


; Effective O3 passes: ADCEPass,BDCEPass,CallSiteSplittingPass,CorrelatedValuePropagationPass,DSEPass,EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopSimplifyPass,LoopUnrollPass,LowerExpectIntrinsicPass,ReassociatePass,SCCPPass,SROAPass,SimplifyCFGPass,TailCallElimPass